/* ============================================================
   THEGSEVEN — design tokens + base + system components
   ============================================================ */
:root{
  /* Base */
  --bg:#0B0D12;
  --bg-dim:#0F1117;
  --ink:#FFFFFF;
  --ink-dim:rgba(255,255,255,.62);
  --ink-dimmer:rgba(255,255,255,.4);
  --line:rgba(255,255,255,.08);
  --line-bright:rgba(255,255,255,.18);

  /* Apple Liquid Glass */
  --glass-bg:rgba(28,32,42,.24);
  --glass-bg-light:rgba(255,255,255,.10);
  --glass-border:rgba(255,255,255,.24);
  --glass-border-bright:rgba(255,255,255,.44);
  --glass-highlight:inset 0 1px 0 rgba(255,255,255,.30), inset 0 -1px 0 rgba(0,0,0,.28);
  --glass-shadow:0 18px 60px rgba(0,0,0,.55);
  --glass-blur:blur(56px) saturate(230%);

  /* Brand gradient */
  --grad:linear-gradient(95deg,#C18FFF 0%,#B4ABFF 28%,#56E4D5 64%,#5BC97B 100%);

  /* Acid accents */
  --brand-acid:#5BC97B;
  --brand-coral:#FF6B5C;
  --brand-yellow:#FFD93D;
  --brand-mint:#56E4D5;
  --brand-purple:#C18FFF;

  /* Coral palette (sales) */
  --coral:#FF4F4F;
  --coral-deep:#E63946;
  --coral-glow:rgba(230,57,70,.35);

  /* The fixed logo bar (anchor — governs the whole design) */
  --tgs-white-h:54px;
  --tgs-band-h:58px;
  --tgs-gray-h:30px;
  --tgs-logo-w:208px;
  --tgs-nudge:0px;
  --tgs-nudge:-6px;
  --nav-h:calc(var(--tgs-white-h) + var(--tgs-band-h) + var(--tgs-gray-h));

  --sans:"Inter",system-ui,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;
  --maxw:1240px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:clip}
body{
  font-family:var(--sans);
  background:var(--bg);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  overflow-x:clip;
}

/* colored mesh behind everything — makes glass visible */
body::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(42% 32% at 18% 16%, rgba(193,143,255,.46), transparent 60%),
    radial-gradient(38% 28% at 82% 26%, rgba(91,201,123,.40), transparent 60%),
    radial-gradient(36% 34% at 52% 62%, rgba(86,228,213,.36), transparent 60%),
    radial-gradient(30% 30% at 8% 82%, rgba(255,107,92,.32), transparent 60%),
    radial-gradient(32% 32% at 92% 88%, rgba(230,57,70,.30), transparent 60%);
  filter:blur(46px);
}
main,nav,footer{position:relative;z-index:1}

/* ---- gradient accent word ---- */
.grad{
  background:var(--grad);
  background-size:200% auto;
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  font-style:italic;font-weight:900;
  animation:gradShift 8s ease-in-out infinite;
}
@keyframes gradShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}

/* ---- shared type ---- */
.kicker{
  font-family:var(--mono);font-size:12px;font-weight:500;
  letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);
  display:inline-flex;align-items:center;gap:9px;
}
.kicker::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--brand-acid);box-shadow:0 0 12px var(--brand-acid)}
h1,h2,h3,h4{font-weight:900;letter-spacing:-.04em;line-height:.98;text-wrap:balance}
.section{max-width:var(--maxw);margin:0 auto;padding:148px clamp(40px,5vw,72px)}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:56px;flex-wrap:wrap}
.section-head h2{font-size:clamp(24px,3vw,40px)}
.see-all{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);text-decoration:none;border-bottom:1px solid var(--line-bright);padding-bottom:4px;transition:.25s}
.see-all:hover{color:var(--ink);border-color:var(--brand-acid)}

/* ---- glass card ---- */
.glass{
  background:var(--glass-bg);
  -webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);
  box-shadow:var(--glass-shadow),var(--glass-highlight);
  border-radius:20px;
  transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s;
}
.glass:hover{border-color:var(--glass-border-bright);transform:translateY(-5px)}

/* ============================================================
   FIXED LOGO BAR — the anchor (white / black / gray + overflow logo)
   ============================================================ */
.tgs-header{position:fixed;top:0;left:0;right:0;z-index:1000}
.tgs-white{height:var(--tgs-white-h);background:#fff;position:relative}
.tgs-band{height:var(--tgs-band-h);background:#000;position:relative;display:flex;align-items:center}
.tgs-gray{height:var(--tgs-gray-h);background:linear-gradient(180deg,#000 0%,rgba(0,0,0,.55) 45%,var(--bg) 100%);position:relative}
.tgs-gray::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent)}
.lang-switch{position:absolute;right:30px;top:50%;transform:translateY(-50%);display:flex;gap:2px;align-items:center}
.lang-switch button{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:#9a9a9a;background:none;border:none;cursor:pointer;padding:5px 9px;border-radius:7px;transition:.2s}
.lang-switch button:hover{color:#000}
.lang-switch button.active{color:#000;background:#000;color:#fff}
@media(max-width:560px){.lang-switch{right:14px}.lang-switch button{padding:5px 6px;font-size:10px}}
.tgs-logo{
  position:fixed;left:50%;top:calc(var(--tgs-white-h) + var(--tgs-band-h)/2);
  transform:translate(-50%,calc(-50% + var(--tgs-nudge)));
  width:var(--tgs-logo-w);z-index:1100;display:block;
  filter:drop-shadow(5px 9px 7px rgba(0,0,0,.32));
}
.tgs-logo img{width:100%;height:auto;display:block}
.nav-links{
  position:absolute;right:34px;top:0;height:var(--tgs-band-h);
  display:flex;align-items:center;gap:22px;
  font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
}
.nav-links a{color:rgba(255,255,255,.7);text-decoration:none;transition:.2s}
.nav-links a:hover{color:#fff}
/* ★ THE SEVEN PORTAL — solid acid pill, primary CTA */
.nav-links .portal-link{
  font-family:var(--mono);
  font-weight:700;
  font-size:11px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#06270f;
  background:var(--brand-acid);
  padding:8px 15px;
  border-radius:999px;
  transition:transform .2s,filter .2s;
  white-space:nowrap;
}
.nav-links .portal-link:hover{
  filter:brightness(1.08);
  color:#06270f;
  transform:translateY(-1px);
}
.nav-cta{
  position:absolute;left:34px;top:0;height:var(--tgs-band-h);
  display:flex;align-items:center;gap:28px;
  font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.55);
}
.nav-cta a{color:rgba(255,255,255,.7);text-decoration:none;transition:.2s;white-space:nowrap}
.nav-cta a:hover{color:#fff}
.nav-cta a + a{position:relative}
.nav-cta a + a::before{content:"·";position:absolute;left:-16px;color:rgba(255,255,255,.32);font-weight:400;pointer-events:none}
.nav-cta a.cur,.nav-links a.cur{color:#fff;font-weight:700}
@media(max-width:760px){.nav-links a:nth-child(2),.nav-links a:nth-child(3){display:none}}
@media(max-width:600px){.nav-links,.nav-cta{display:none}}

/* page content offset so it isn't hidden under the fixed bar */
.page{padding-top:var(--nav-h)}
