:root{
  /* Backgrounds */
  --bg: #050816;                  /* deep navy-violet */
  --surface: #070b1f;             /* header/footer */
  --surface-soft: #0b1028;        /* cards */

  /* Text */
  --text: #fdfcff;
  --muted: rgba(225,232,255,.82);
  --border: rgba(148,163,255,.35);

  /* Brand gradient (teal + violet + coral accent) */
  --brand: #22d3ee;               /* cyan */
  --brand-2: #a855f7;             /* violet */

  /* Extra accents (use sparingly in components) */
  --accent-warm: #fb7185;         /* soft coral */
  --accent-soft: #fef3c7;         /* warm highlight */

  --radius-lg: 20px;
  --radius-md: 14px;
  --shadow-lg: 0 22px 60px rgba(15,23,42,.8);

  --font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --max: 1160px;
}

body{
  margin: 0;
  font-family: var(--font);
  color: var(--text);
  background:
    radial-gradient(1100px 700px at 10% 0%, rgba(34,211,238,.18), transparent 60%),
    radial-gradient(900px 650px at 80% 0%, rgba(168,85,247,.22), transparent 60%),
    radial-gradient(800px 500px at 50% 100%, rgba(251,113,133,.18), transparent 60%),
    var(--bg);
}


*,
*::before,
*::after{ box-sizing: border-box; }

html,body{ height: 100%; }

body{
  margin: 0;
  font-family: var(--font);
  color: var(--text);
  background:
    radial-gradient(1200px 700px at 20% 0%, rgba(110,231,255,.15), transparent 60%),
    radial-gradient(900px 600px at 80% 10%, rgba(167,139,250,.16), transparent 55%),
    var(--bg);
}

a{
  color: inherit;
  text-decoration-color: rgba(255,255,255,.45);
}
a:hover{
  text-decoration-color: rgba(255,255,255,.9);
}

.container{
  width: min(var(--max), calc(100% - 40px));
  margin: 0 auto;
}

.skip-link{
  position: absolute;
  left: -999px;
  top: 10px;
  background: var(--surface);
  color: var(--text);
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid var(--border);
}
.skip-link:focus{
  left: 10px;
}
