:root{
  --void:#020408; --panel:#060d18; --raised:#0c1a2e;
  --cyan:#14d7f2; --bright:#06fbfc; --indigo:#6366f1; --magenta:#ff4fd8;
  --text:#e2e8f0; --muted:#94a3b8; --dim:#64748b; --line:rgba(20,215,242,.18);
  --font-display:"Rajdhani",sans-serif; --font-head:"Space Grotesk",sans-serif; --font-mono:"JetBrains Mono",monospace;
  --glow:0 0 10px rgba(20,215,242,.5),0 0 20px rgba(20,215,242,.3),0 0 30px rgba(20,215,242,.2);
  --signal:linear-gradient(120deg,var(--bright) 0%,var(--indigo) 52%,var(--magenta) 100%);
}
*{box-sizing:border-box}
html{background:var(--void);color:var(--text);font-family:var(--font-head);scroll-behavior:smooth}
body{margin:0;min-width:320px;line-height:1.55;
  background:
    radial-gradient(ellipse 80% 50% at 82% -8%,rgba(20,215,242,.12),transparent 60%),
    radial-gradient(ellipse 70% 60% at 0% 45%,rgba(99,102,241,.08),transparent 55%),
    linear-gradient(180deg,#03070d 0%,#020408 55%,#04090f 100%);
}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.12;
  background-image:linear-gradient(rgba(20,215,242,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(20,215,242,.04) 1px,transparent 1px);
  background-size:46px 46px;mask-image:linear-gradient(to bottom,black,transparent 80%)}

.signal-rail{position:fixed;top:0;left:0;width:3px;height:100%;z-index:5;pointer-events:none;background:var(--signal);opacity:.9;box-shadow:0 0 16px rgba(20,215,242,.4)}
@media(max-width:640px){.signal-rail{width:2px}}

.mono{font-family:var(--font-mono);letter-spacing:.1em}
.shell{max-width:1120px;margin:0 auto;padding:26px clamp(20px,5vw,64px) 30px;position:relative;z-index:1}

.topbar{height:60px;border:1px solid var(--line);border-radius:6px;background:rgba(5,8,16,.7);backdrop-filter:blur(10px);
  display:flex;align-items:center;justify-content:space-between;padding:0 20px;box-shadow:0 0 40px rgba(20,215,242,.07)}
.wordmark{font:700 1.5rem/1 var(--font-display);letter-spacing:.16em;color:var(--cyan);text-shadow:var(--glow)}
.wordmark b{color:var(--text)}
.wordmark sup{font:600 .38em var(--font-head);color:var(--text);opacity:.55;margin-left:.25em;top:-.9em;position:relative}
.tag{font-size:.55rem;color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:6px 9px}

main{padding-top:64px}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--font-display);text-transform:uppercase}
h1{font-size:clamp(2.8rem,6vw,5.4rem);line-height:.9;letter-spacing:.03em;margin:20px 0 26px;text-shadow:var(--glow)}
h2{font-size:clamp(1.8rem,3.2vw,3rem);line-height:.98;letter-spacing:.04em;text-shadow:0 0 18px rgba(20,215,242,.26)}
h3{font-size:.98rem;letter-spacing:.06em}
.eyebrow,.section-kicker{font-size:.58rem;letter-spacing:.2em;color:var(--cyan)}
.lede{font-family:var(--font-head);font-size:clamp(1.05rem,1.5vw,1.35rem);line-height:1.6;color:#c6dce4;max-width:64ch;font-weight:500}
.lede b{color:var(--text)}

/* hero */
.ref-hero{max-width:900px}
.ref-hero .primary-cta{margin-top:36px}

/* section rhythm */
.block{margin-top:92px;padding-top:32px;border-top:1px solid var(--line)}
.section-head{display:flex;justify-content:space-between;gap:36px;align-items:end;margin-bottom:30px}
.section-head>p{max-width:46ch;color:var(--muted);font-size:.9rem;line-height:1.6}

/* about — media (shared with other pages) */
.media-frame{position:relative;overflow:hidden;border:1px solid rgba(20,215,242,.28);border-radius:8px;background:#000;box-shadow:0 20px 60px rgba(0,0,0,.55),0 0 46px rgba(20,215,242,.1)}
.media-frame:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:8px;box-shadow:inset 0 0 60px rgba(2,4,8,.5);mix-blend-mode:multiply}
.media-frame video,.media-frame img{display:block;width:100%;height:auto}
.about-film{max-width:920px;margin:0 auto}
.about-film video{aspect-ratio:16/9;object-fit:cover}
.media-tag{position:absolute;left:12px;bottom:11px;z-index:3;color:var(--bright);font-size:.52rem;background:rgba(2,4,8,.72);padding:6px 9px;border-radius:3px}
.worlds-sub{margin:34px 0 14px;color:var(--dim);font-size:.54rem;letter-spacing:.16em;text-align:center}
.worlds-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.world-card{margin:0}
.world-card video{aspect-ratio:16/9;object-fit:cover}
.world-card .media-caption{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:11px 13px;border-top:1px solid rgba(20,215,242,.14);background:rgba(5,8,16,.55)}
.world-card .media-caption b{color:var(--cyan);font-size:.62rem;letter-spacing:.12em}
.world-card .media-caption span{color:var(--dim);font-size:.5rem}
.worlds-note{margin-top:16px;color:var(--dim);font-size:.52rem;text-align:center;letter-spacing:.14em}
.studio-shot{margin:30px 0 0}
.studio-shot .media-caption{padding:11px 13px;border-top:1px solid rgba(20,215,242,.14)}
.media-caption{font-size:.52rem;color:var(--muted)}

/* offer cards */
.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.offer-card{border:1px solid var(--line);border-radius:10px;padding:24px;background:linear-gradient(155deg,rgba(20,215,242,.06),rgba(99,102,241,.04));display:grid;gap:12px;align-content:start;min-height:210px}
.offer-label{font-size:.52rem;color:var(--cyan);letter-spacing:.14em}
.offer-card h3{font-size:1.12rem;margin-top:4px}
.offer-card p{color:var(--muted);font-size:.86rem;line-height:1.6}

/* who list */
.who-list{display:grid;gap:0;max-width:960px}
.who-list article{display:grid;grid-template-columns:56px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid rgba(20,215,242,.12)}
.who-index{font-size:.62rem;color:var(--cyan);padding-top:3px}
.who-list h3{font-size:1rem;margin-bottom:8px}
.who-list p{color:var(--muted);font-size:.86rem;line-height:1.55;max-width:64ch}

/* steps — deliberately not cards, to contrast with the offer grid */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.steps article{padding-top:18px;border-top:2px solid rgba(20,215,242,.35)}
.steps b{font:700 2.6rem/1 var(--font-display);color:var(--cyan);opacity:.45;letter-spacing:.02em}
.steps h3{margin:14px 0 10px}
.steps p{color:var(--muted);font-size:.84rem;line-height:1.55;max-width:34ch}

/* apply form */
.apply{margin-top:92px;padding-top:32px;border-top:1px solid var(--line);
  border:1px solid var(--line);border-radius:14px;padding:clamp(24px,4vw,44px);
  background:linear-gradient(160deg,rgba(20,215,242,.06),rgba(99,102,241,.04));box-shadow:0 0 60px rgba(20,215,242,.06)}
.apply-head{max-width:60ch;margin-bottom:30px}
.apply-head h2{margin:12px 0 12px}
.apply-head p{color:var(--muted);font-size:.92rem;line-height:1.6}
.apply-head a{color:var(--cyan);text-decoration:none;border-bottom:1px solid rgba(20,215,242,.4);transition:color .2s ease,border-color .2s ease}
.apply-head a:hover,.apply-head a:focus-visible{color:var(--bright);border-bottom-color:var(--bright);outline:none;text-shadow:0 0 12px rgba(6,251,252,.5)}
.apply-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:grid;gap:8px}
.field-wide{grid-column:1/-1}
.social-head{margin:6px 0 -4px;padding-top:12px;border-top:1px solid rgba(20,215,242,.12)}
.social-head span{font-size:.52rem;letter-spacing:.16em;color:var(--dim)}
.field label{font-size:.55rem;color:var(--cyan);letter-spacing:.12em}
.field input,.field textarea{
  width:100%;background:rgba(2,4,8,.6);border:1px solid var(--line);border-radius:6px;color:var(--text);
  font:400 .95rem var(--font-head);padding:13px 14px;transition:border-color .2s ease,box-shadow .2s ease}
.field textarea{resize:vertical;min-height:110px;line-height:1.55}
.field input::placeholder,.field textarea::placeholder{color:var(--dim)}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 1px rgba(20,215,242,.4),0 0 22px rgba(20,215,242,.15)}
.apply-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:6px}
.apply-note{font-size:.5rem;color:var(--dim);letter-spacing:.12em}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.apply-status{grid-column:1/-1;margin:2px 0 0;min-height:1em;font-size:.6rem;letter-spacing:.08em;color:var(--cyan)}
.apply-status.is-error{color:#ff8a8a}
.apply-success{grid-column:1/-1;border:1px solid rgba(20,215,242,.35);border-radius:10px;padding:26px;background:linear-gradient(160deg,rgba(20,215,242,.1),rgba(99,102,241,.05))}
.apply-success p.mono{color:var(--bright);font-size:.62rem;letter-spacing:.18em;margin:0 0 10px;text-shadow:var(--glow)}
.apply-success p{color:var(--text);font-size:.98rem;line-height:1.6;margin:0}

.primary-cta{display:inline-flex;align-items:center;flex-shrink:0;min-height:52px;padding:14px 34px;border:1px solid var(--cyan);border-radius:5px;
  color:var(--void);background:var(--cyan);font:600 .82rem var(--font-head);letter-spacing:.1em;text-decoration:none;cursor:pointer;
  box-shadow:0 0 30px rgba(20,215,242,.28);transition:transform .2s ease,box-shadow .4s ease}
.primary-cta:hover{transform:translateY(-2px);box-shadow:0 0 44px rgba(20,215,242,.5)}

/* terms */
.terms{margin-top:64px;border-top:1px solid var(--line);padding-top:22px}
.terms .section-kicker{display:block;margin-bottom:14px}
.terms ul{margin:0;padding:0;list-style:none;display:grid;gap:9px;max-width:80ch}
.terms li{position:relative;padding-left:18px;color:var(--muted);font-size:.64rem;line-height:1.6;letter-spacing:.02em}
.terms li:before{content:"";position:absolute;left:0;top:.5em;width:5px;height:5px;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}

.footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:40px;padding-top:18px;color:var(--muted);font-size:.52rem}

@media(max-width:820px){
  .worlds-grid{grid-template-columns:1fr}
  .offer-grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .apply-form{grid-template-columns:1fr}
}
@media(max-width:640px){
  .shell{padding:14px 15px 24px}
  .topbar{height:auto;min-height:60px;flex-direction:column;align-items:flex-start;gap:11px;padding:14px 13px}
  main{padding-top:44px}
  h1{font-size:2.8rem}
  .section-head{display:block}.section-head>p{margin-top:16px}
  .who-list article{grid-template-columns:1fr;gap:8px}
  .footer{display:block;line-height:1.9}.footer span{display:block}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.primary-cta{transition:none}}
@media print{body{background:#fff;color:#111}.signal-rail{display:none}h1,h2{text-shadow:none}}
