@font-face{
  font-family:'Blair ITC';
  src:url('fonts/BlairITC-Medium.woff2') format('woff2'),
      url('fonts/BlairITC-Medium.woff') format('woff');
  font-weight:500;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'Inter';
  src:url('fonts/Inter-latin-var.woff2') format('woff2');
  font-weight:400 600;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'IBM Plex Mono';
  src:url('fonts/IBMPlexMono-Regular-latin.woff2') format('woff2');
  font-weight:400;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'IBM Plex Mono';
  src:url('fonts/IBMPlexMono-Medium-latin.woff2') format('woff2');
  font-weight:500;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
:root{
  --paper:#F7F9FB;--paper-2:#EEF2F6;--surface:#FFFFFF;--ink:#12202F;--navy:#0B1B2B;--muted:#5A6B7E;
  --hairline:rgba(11,27,43,.14);--hairline-soft:rgba(11,27,43,.08);
  --magenta:#D3248D;--berry:#A81C71;--violet:#5B34C7;--holo:#2B8FD9;--holo-text:#1E6FAE;--white:#fff;
  --grad:linear-gradient(95deg,var(--magenta),var(--violet));
  --grad-saber:linear-gradient(95deg,var(--magenta),var(--violet) 48%,var(--holo) 96%);
  --radius:16px;--radius-sm:12px;
  --shadow:0 1px 2px rgba(11,27,43,.04),0 12px 32px -16px rgba(11,27,43,.14);
  --glow-magenta:0 0 10px rgba(211,36,141,.35),0 0 26px rgba(211,36,141,.14);
  --glow-holo:0 0 10px rgba(43,143,217,.3),0 0 24px rgba(43,143,217,.12);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
html,body{margin:0;padding:0}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);background:var(--paper);line-height:1.7;font-size:16px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3{font-family:'Blair ITC','Inter',sans-serif;color:var(--navy);margin:0;letter-spacing:.01em;line-height:1.14}
h1{font-size:clamp(2.3rem,5vw,4.1rem);font-weight:500}
h2{font-size:clamp(1.75rem,3vw,2.7rem);font-weight:500}
h3{font-size:1.12rem;font-weight:500;line-height:1.32;letter-spacing:.02em}
p{margin:0 0 1rem}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
::selection{background:var(--magenta);color:var(--white)}
a:focus-visible,button:focus-visible{outline:2px solid var(--holo);outline-offset:3px}
.container{max-width:1200px;margin:0 auto;padding:0 32px}
section{padding:130px 0;position:relative}
body{counter-reset:episode}
.kicker{font-family:'IBM Plex Mono',monospace;font-size:.66rem;letter-spacing:.3em;text-transform:uppercase;color:var(--berry);font-weight:500;margin-bottom:1.4rem;display:inline-flex;align-items:center;gap:.8rem;counter-increment:episode}
.kicker::before{content:"";width:18px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--magenta),transparent);box-shadow:0 0 6px rgba(211,36,141,.5);display:inline-block}
.kicker::after{content:"— " counter(episode,upper-roman);color:var(--muted);opacity:.75}
.lead{font-size:clamp(1rem,1.2vw,1.15rem);color:var(--muted);max-width:680px;font-weight:400}
.section-header{margin-bottom:64px;max-width:840px}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;backdrop-filter:saturate(160%) blur(18px);background:rgba(247,249,251,.82);border-bottom:1px solid var(--hairline-soft)}
.nav-progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--grad-saber);transform:scaleX(0);transform-origin:left;box-shadow:0 0 8px rgba(211,36,141,.45)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;max-width:1360px;margin:0 auto}
.nav .brand img{height:24px;width:auto}
.nav-links{display:flex;gap:32px;font-size:.72rem;color:var(--muted);font-weight:500;letter-spacing:.1em;text-transform:uppercase}
.nav-links a{position:relative;padding:6px 0;transition:color .25s}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;border-radius:2px;background:var(--grad-saber);box-shadow:0 0 6px rgba(211,36,141,.4);transition:width .3s}
.nav-links a:hover,.nav-links a.active{color:var(--navy)}
.nav-links a:hover::after,.nav-links a.active::after{width:100%}
.nav-actions{display:flex;align-items:center;gap:20px;flex-shrink:0}
.lang-switch{display:inline-flex;gap:2px;font-size:.68rem;font-weight:600;letter-spacing:.1em;border:1px solid var(--hairline);border-radius:999px;padding:3px}
.lang-switch a{color:var(--muted);padding:4px 12px;border-radius:999px;transition:.25s}
.lang-switch a.active{color:var(--white);background:var(--navy)}
.lang-switch a:not(.active):hover{color:var(--navy)}
.cta-pill{color:var(--white);padding:12px 26px;border-radius:999px;font-weight:600;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;background:var(--navy);transition:background .3s,transform .3s,box-shadow .3s}
.cta-pill:hover,.cta-pill:focus-visible{background:var(--berry);transform:translateY(-1px);box-shadow:0 10px 24px -10px rgba(168,28,113,.5),var(--glow-magenta)}
.nav-burger{display:none;width:42px;height:42px;border:1px solid var(--hairline);border-radius:12px;background:rgba(255,255,255,.7);cursor:pointer;padding:0;flex-direction:column;align-items:center;justify-content:center;gap:5px;flex-shrink:0}
.nav-burger span{display:block;width:16px;height:2px;border-radius:2px;background:var(--navy);transition:transform .3s ease,opacity .3s ease,background .3s ease}
.nav.menu-open .nav-burger span:nth-child(1){transform:translateY(7px) rotate(45deg);background:var(--magenta)}
.nav.menu-open .nav-burger span:nth-child(2){opacity:0}
.nav.menu-open .nav-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);background:var(--magenta)}
.mobile-menu{display:none}
@media(max-width:1020px){
  .nav-links{display:none}
  .nav-burger{display:flex}
  .mobile-menu{display:block;max-height:0;overflow:hidden;transition:max-height .4s ease}
  .nav.menu-open .mobile-menu{max-height:320px}
  .mobile-menu a{display:block;padding:15px 32px;font-family:'IBM Plex Mono',monospace;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink);font-weight:500;border-top:1px solid var(--hairline-soft);transition:color .25s,padding-left .25s}
  .mobile-menu a:hover{color:var(--berry);padding-left:42px}
}
@media(max-width:560px){.nav-inner{padding:14px 20px}.nav .brand img{height:20px}.cta-pill{display:none}.nav-actions{gap:12px}.mobile-menu a{padding:14px 20px}.mobile-menu a:hover{padding-left:30px}}

/* HERO — targeting grid + faint star chart */
.hero{min-height:92vh;display:flex;align-items:center;padding:190px 0 90px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background-image:
  radial-gradient(1.5px 1.5px at 14% 24%,rgba(11,27,43,.32),transparent 100%),
  radial-gradient(1px 1px at 30% 62%,rgba(11,27,43,.22),transparent 100%),
  radial-gradient(2px 2px at 39% 14%,rgba(168,28,113,.3),transparent 100%),
  radial-gradient(1px 1px at 48% 44%,rgba(11,27,43,.2),transparent 100%),
  radial-gradient(1.5px 1.5px at 60% 76%,rgba(11,27,43,.24),transparent 100%),
  radial-gradient(2px 2px at 68% 28%,rgba(43,143,217,.35),transparent 100%),
  radial-gradient(1px 1px at 76% 58%,rgba(11,27,43,.2),transparent 100%),
  radial-gradient(1.5px 1.5px at 84% 16%,rgba(11,27,43,.3),transparent 100%),
  radial-gradient(2px 2px at 90% 66%,rgba(168,28,113,.24),transparent 100%),
  radial-gradient(1px 1px at 8% 80%,rgba(11,27,43,.22),transparent 100%),
  radial-gradient(1.5px 1.5px at 22% 10%,rgba(11,27,43,.26),transparent 100%),
  radial-gradient(1px 1px at 55% 8%,rgba(11,27,43,.2),transparent 100%),
  radial-gradient(2px 2px at 72% 84%,rgba(43,143,217,.28),transparent 100%),
  radial-gradient(1px 1px at 93% 88%,rgba(11,27,43,.2),transparent 100%),
  radial-gradient(1.5px 1.5px at 44% 68%,rgba(168,28,113,.22),transparent 100%),
  radial-gradient(1px 1px at 96% 12%,rgba(11,27,43,.28),transparent 100%);
  -webkit-mask-image:radial-gradient(1250px 880px at 70% 20%,rgba(0,0,0,.75),transparent 82%);
  mask-image:radial-gradient(1250px 880px at 70% 20%,rgba(0,0,0,.75),transparent 82%);
  animation:twinkle 6s ease-in-out infinite alternate}
@keyframes twinkle{from{opacity:.7}to{opacity:1}}
.hero .container{position:relative}
.hero .container::before{content:"";position:absolute;top:-11%;right:4%;width:150px;height:1.5px;border-radius:2px;background:linear-gradient(90deg,transparent,rgba(43,143,217,.75) 60%,rgba(255,255,255,.9));box-shadow:0 0 6px rgba(43,143,217,.5);opacity:0;pointer-events:none;animation:shooting 11s ease-in 3s infinite}
@keyframes shooting{0%{transform:translate(0,0) rotate(-24deg);opacity:0}2%{opacity:.75}9%{transform:translate(-300px,134px) rotate(-24deg);opacity:0}100%{transform:translate(-300px,134px) rotate(-24deg);opacity:0}}
.hero .container.fire::before{animation:shooting 1.5s ease-in 0s 1}
.hero::after{content:"";position:absolute;inset:0;background:
  radial-gradient(950px 560px at 90% -5%,rgba(211,36,141,.07) 0,transparent 60%),
  radial-gradient(760px 480px at -6% 105%,rgba(91,52,199,.06) 0,transparent 60%),
  radial-gradient(620px 420px at 50% 118%,rgba(43,143,217,.05) 0,transparent 60%);pointer-events:none}
.hero-inner{position:relative;max-width:960px;z-index:1}
.hero-tagline{font-family:'IBM Plex Mono',monospace;font-size:.66rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:32px;display:inline-flex;align-items:center;gap:12px;padding:9px 18px;border:1px solid var(--hairline);border-radius:999px;background:rgba(255,255,255,.65)}
.hero-tagline::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--magenta);box-shadow:0 0 0 4px rgba(211,36,141,.15),0 0 10px rgba(211,36,141,.55);animation:ignite 2.8s ease-in-out infinite}
@keyframes ignite{0%,100%{box-shadow:0 0 0 4px rgba(211,36,141,.15),0 0 10px rgba(211,36,141,.55)}50%{box-shadow:0 0 0 4px rgba(211,36,141,.08),0 0 4px rgba(211,36,141,.3)}}
.hero h1{margin-bottom:34px}
.hero h1 em{font-style:normal;background:var(--grad-saber);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .sub{font-size:clamp(1.02rem,1.3vw,1.2rem);color:var(--muted);max-width:620px;margin-bottom:48px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:10px;padding:17px 34px;border-radius:999px;font-weight:600;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;transition:.3s;border:0;cursor:pointer;font-family:'Inter',sans-serif;position:relative;overflow:hidden}
.btn::before{content:"";position:absolute;top:0;bottom:0;left:-70%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-18deg);transition:left .55s ease}
.btn:hover::before,.btn:focus-visible::before{left:125%}
.btn-primary{color:var(--white);background:linear-gradient(95deg,var(--berry),var(--magenta));box-shadow:0 12px 28px -12px rgba(168,28,113,.55)}
.btn-primary:hover,.btn-primary:focus-visible{transform:translateY(-2px);box-shadow:0 18px 36px -12px rgba(168,28,113,.6),var(--glow-magenta)}
.btn-ghost{background:rgba(255,255,255,.7);border:1px solid var(--hairline);color:var(--navy)}
.btn-ghost:hover,.btn-ghost:focus-visible{border-color:var(--holo);color:var(--holo-text);transform:translateY(-2px);box-shadow:var(--glow-holo)}
.hero-foot{position:relative;margin-top:92px;padding-top:26px;border-top:1px solid var(--hairline-soft);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-family:'IBM Plex Mono',monospace;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:500;z-index:1}
.hero-foot em{font-style:normal;color:var(--magenta);text-shadow:0 0 8px rgba(211,36,141,.35)}
@media(max-width:640px){.hero{padding-top:150px}.hero-foot{display:none}}

/* VISION */
.alt-bg{background:var(--paper-2)}
.vision-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:start}
.vision-copy p{color:var(--muted);font-size:1.02rem;margin-bottom:1.4rem}
.vision-copy p strong{color:var(--navy);font-weight:600}
.pillars{display:grid;gap:16px}
.pillar{position:relative;padding:26px 28px 30px;background:var(--surface);border:1px solid var(--hairline-soft);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.pillar:hover{transform:translateY(-3px);border-color:rgba(211,36,141,.3);box-shadow:0 2px 4px rgba(11,27,43,.04),0 20px 44px -18px rgba(11,27,43,.18),0 0 20px -6px rgba(211,36,141,.18)}
.pillar::after,.principle::after,.std::after,.tm::after{content:"";position:absolute;top:0;left:24px;right:24px;height:2px;border-radius:2px;background:var(--grad-saber);box-shadow:0 0 8px rgba(211,36,141,.5);opacity:0;transform:scaleX(.4);transition:opacity .35s ease,transform .45s ease;pointer-events:none}
.pillar:hover::after,.principle:hover::after,.std:hover::after,.tm:hover::after{opacity:1;transform:scaleX(1)}
.pillar .num{font-family:'IBM Plex Mono',monospace;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--berry);margin-bottom:12px;font-weight:500}
.pillar h3{margin-bottom:8px}
.pillar p{color:var(--muted);font-size:.92rem;margin:0;max-width:420px}
@media(max-width:900px){.vision-grid{grid-template-columns:1fr;gap:56px}}

/* FIGURES */
.figure{margin:84px auto 0;max-width:1000px}
.figure img{width:100%;display:block;background-color:var(--surface);background-image:
  linear-gradient(rgba(43,143,217,.4),rgba(43,143,217,.4)),linear-gradient(rgba(43,143,217,.4),rgba(43,143,217,.4)),
  linear-gradient(rgba(43,143,217,.4),rgba(43,143,217,.4)),linear-gradient(rgba(43,143,217,.4),rgba(43,143,217,.4)),
  linear-gradient(rgba(43,143,217,.4),rgba(43,143,217,.4)),linear-gradient(rgba(43,143,217,.4),rgba(43,143,217,.4)),
  linear-gradient(rgba(43,143,217,.4),rgba(43,143,217,.4)),linear-gradient(rgba(43,143,217,.4),rgba(43,143,217,.4));
  background-repeat:no-repeat;
  background-position:12px 12px,12px 12px,calc(100% - 12px) 12px,calc(100% - 12px) 12px,12px calc(100% - 12px),12px calc(100% - 12px),calc(100% - 12px) calc(100% - 12px),calc(100% - 12px) calc(100% - 12px);
  background-size:18px 1.5px,1.5px 18px,18px 1.5px,1.5px 18px,18px 1.5px,1.5px 18px,18px 1.5px,1.5px 18px;
  border:1px solid var(--hairline-soft);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(16px,3vw,40px)}
.figure figcaption{margin-top:22px;font-size:.8rem;color:var(--muted);line-height:1.7;max-width:760px;padding-left:16px;border-left:2px solid var(--magenta);box-shadow:inset 3px 0 8px -5px rgba(211,36,141,.45)}

/* LASERTIGHT SECTION */
.concept{background:var(--paper);border-top:1px solid var(--hairline-soft);padding:150px 0}
.lt-logo{height:38px;width:auto;margin-bottom:56px}
.lt-intro{max-width:860px;margin-bottom:80px}
.lt-heading{font-size:.95rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 20px}
.lt-intro .statement{font-family:'Inter',sans-serif;font-size:clamp(1.3rem,2.1vw,1.75rem);font-weight:400;line-height:1.5;color:var(--navy);letter-spacing:-.02em}
.lt-intro .statement em{font-style:normal;background:var(--grad-saber);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:500}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:80px}
.principle{position:relative;padding:30px 28px 32px;background:var(--surface);border:1px solid var(--hairline-soft);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.principle:hover{transform:translateY(-3px);border-color:rgba(211,36,141,.3);box-shadow:0 2px 4px rgba(11,27,43,.04),0 20px 44px -18px rgba(11,27,43,.18),0 0 20px -6px rgba(211,36,141,.18)}
.principle .glyph{margin-bottom:20px;width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,rgba(211,36,141,.1),rgba(43,143,217,.09));display:flex;align-items:center;justify-content:center}
.principle .glyph svg{width:20px;height:20px;stroke:var(--holo);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px rgba(43,143,217,.4))}
.principle h3{font-size:1.12rem;margin-bottom:10px}
.principle p{color:var(--muted);font-size:.88rem;margin:0;line-height:1.7}
.lt-note{margin-top:80px;padding:26px 30px;border:1px solid var(--hairline-soft);border-radius:var(--radius-sm);background:var(--paper-2);font-size:.78rem;color:var(--muted);max-width:900px;line-height:1.8}
@media(max-width:940px){.principles{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.principles{grid-template-columns:1fr}}

/* INTERLUDE — saber beam + faint crawl tilt */
.interlude{padding:140px 0;border-top:1px solid var(--hairline-soft);text-align:center;overflow:hidden;perspective:900px}
.interlude::before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);width:2px;height:64px;border-radius:2px;background:linear-gradient(var(--magenta),transparent);box-shadow:var(--glow-magenta);animation:beam 3.6s ease-in-out infinite}
@keyframes beam{0%,100%{box-shadow:0 0 10px rgba(211,36,141,.35),0 0 26px rgba(211,36,141,.14)}50%{box-shadow:0 0 16px rgba(211,36,141,.55),0 0 44px rgba(211,36,141,.28)}}
.interlude-line{font-family:'Blair ITC','Inter',sans-serif;font-weight:500;font-size:clamp(1.6rem,3.1vw,2.7rem);line-height:1.34;color:var(--navy);letter-spacing:.012em;margin:0 auto;max-width:880px}
.interlude-line em{font-style:normal;background:var(--grad-saber);-webkit-background-clip:text;background-clip:text;color:transparent}
.interlude-line.reveal{transform:translateY(44px) rotateX(14deg);transition:opacity 1.8s ease .1s,transform 1.8s cubic-bezier(.2,.6,.2,1) .1s}
.interlude-line.reveal.in{opacity:1;transform:translateY(0) rotateX(8deg)}

/* EXIGENCE / STANDARDS */
.std-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.std{position:relative;padding:34px 32px 38px;background:var(--surface);border:1px solid var(--hairline-soft);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.std:hover{transform:translateY(-3px);border-color:rgba(43,143,217,.35);box-shadow:0 2px 4px rgba(11,27,43,.04),0 20px 44px -18px rgba(11,27,43,.18),0 0 20px -6px rgba(43,143,217,.16)}
.std .idx{font-family:'IBM Plex Mono',monospace;font-size:.8rem;letter-spacing:.14em;color:var(--holo-text);margin-bottom:16px;line-height:1;font-weight:500}
.std h3{margin-bottom:12px}
.std p{color:var(--muted);font-size:.93rem;margin:0;max-width:460px}
@media(max-width:760px){.std-grid{grid-template-columns:1fr}}

/* TEAM */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tm{position:relative;background:var(--surface);border:1px solid var(--hairline-soft);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;transition:transform .35s ease,box-shadow .35s ease}
.tm:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(11,27,43,.04),0 20px 44px -18px rgba(11,27,43,.18)}
.tm-media{overflow:hidden}
.tm img{width:100%;aspect-ratio:1/1;object-fit:cover;filter:grayscale(1) contrast(1.04);transition:filter .6s ease,transform 1s cubic-bezier(.2,.6,.2,1)}
.tm:hover img{filter:grayscale(0) contrast(1);transform:scale(1.04)}
.tm-body{padding:22px 24px 26px}
.tm-name{font-family:'Blair ITC','Inter',sans-serif;font-weight:500;color:var(--navy);font-size:1.1rem;letter-spacing:.03em}
.tm-cred{font-family:'IBM Plex Mono',monospace;font-size:.6rem;letter-spacing:.18em;color:var(--holo-text);font-weight:500;margin:6px 0 10px}
.tm-role{font-size:.9rem;color:var(--ink);font-weight:500}
.tm-bio{font-size:.8rem;color:var(--muted);margin-top:6px;line-height:1.6}
@media(max-width:940px){.team-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.team-grid{grid-template-columns:1fr}}

/* CONTACT — the one deep-space moment */
.contact{background:var(--paper);padding:130px 0}
.contact-inner{position:relative;text-align:center;max-width:840px;margin:0 auto;background:var(--navy);border-radius:24px;padding:clamp(60px,8vw,96px) clamp(28px,6vw,80px);overflow:hidden;box-shadow:var(--shadow),0 0 50px -18px rgba(91,52,199,.3)}
.contact-inner::before{content:"";position:absolute;inset:0;background:
  radial-gradient(1.5px 1.5px at 12% 20%,rgba(255,255,255,.7),transparent 100%),
  radial-gradient(1px 1px at 26% 70%,rgba(255,255,255,.4),transparent 100%),
  radial-gradient(1.5px 1.5px at 38% 36%,rgba(255,255,255,.5),transparent 100%),
  radial-gradient(1px 1px at 52% 82%,rgba(255,255,255,.45),transparent 100%),
  radial-gradient(1.5px 1.5px at 64% 18%,rgba(255,255,255,.6),transparent 100%),
  radial-gradient(1px 1px at 78% 58%,rgba(255,255,255,.4),transparent 100%),
  radial-gradient(1.5px 1.5px at 90% 30%,rgba(255,255,255,.55),transparent 100%),
  radial-gradient(1px 1px at 8% 50%,rgba(255,255,255,.35),transparent 100%),
  radial-gradient(1px 1px at 33% 12%,rgba(255,255,255,.4),transparent 100%),
  radial-gradient(1.5px 1.5px at 46% 60%,rgba(255,255,255,.35),transparent 100%),
  radial-gradient(1px 1px at 70% 86%,rgba(255,255,255,.4),transparent 100%),
  radial-gradient(1px 1px at 94% 74%,rgba(255,255,255,.35),transparent 100%),
  radial-gradient(600px 340px at 85% -10%,rgba(211,36,141,.22) 0,transparent 60%),
  radial-gradient(520px 320px at 0% 110%,rgba(43,143,217,.18) 0,transparent 60%);
  animation:twinkle 5s ease-in-out infinite alternate}
.contact-inner::after{content:"";position:absolute;width:640px;height:640px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-220px;top:-380px;transform:rotate(-16deg) scaleY(.62);box-shadow:0 0 30px -12px rgba(43,143,217,.35);pointer-events:none}
.contact-inner>*{position:relative}
.contact .kicker{color:rgba(255,255,255,.7)}
.contact .kicker::after{color:rgba(255,255,255,.5)}
.contact .kicker::before{background:linear-gradient(90deg,var(--magenta),transparent);box-shadow:0 0 8px rgba(211,36,141,.7)}
.contact h2{margin-bottom:20px;color:var(--white)}
.contact p{color:rgba(255,255,255,.72);margin:0 auto 44px;font-size:1rem;max-width:560px}
.contact .btn{color:var(--white);background:linear-gradient(95deg,var(--berry),var(--magenta));box-shadow:0 12px 28px -12px rgba(211,36,141,.5)}
.contact .btn:hover,.contact .btn:focus-visible{transform:translateY(-2px);box-shadow:0 18px 36px -12px rgba(211,36,141,.6),var(--glow-magenta)}
.contact-email{margin-top:20px;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.copy-email{display:inline-flex;align-items:center;gap:10px;font-family:'IBM Plex Mono',monospace;font-size:.72rem;letter-spacing:.08em;color:rgba(255,255,255,.65);background:transparent;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:11px 22px;cursor:pointer;transition:border-color .3s,color .3s,box-shadow .3s}
.copy-email svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.copy-email:hover,.copy-email:focus-visible{border-color:var(--holo);color:var(--white);box-shadow:var(--glow-holo)}
.copy-email .label-done{display:none;color:var(--holo)}
.copy-email.copied{border-color:var(--holo)}
.copy-email.copied .label-default{display:none}
.copy-email.copied .label-done{display:inline}

/* FOOTER */
footer{background:var(--paper);border-top:1px solid var(--hairline);padding:80px 0 36px;color:var(--muted)}
.foot-sign{font-family:'Blair ITC','Inter',sans-serif;font-weight:500;font-size:clamp(1.2rem,1.9vw,1.55rem);color:var(--navy);margin:0 0 56px;letter-spacing:.03em}
.foot-sign em{font-style:normal;background:var(--grad-saber);-webkit-background-clip:text;background-clip:text;color:transparent}
.foot-top{display:flex;justify-content:space-between;align-items:flex-start;gap:48px;flex-wrap:wrap;margin-bottom:56px}
.foot-top img{height:26px;width:auto;margin-bottom:18px}
.foot-top p{font-size:.82rem;max-width:360px;line-height:1.8;margin:0}
.foot-links{display:flex;gap:80px;flex-wrap:wrap}
.foot-links h4{font-family:'IBM Plex Mono',monospace;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--navy);margin:0 0 16px;font-weight:500}
.foot-links a{display:block;font-size:.82rem;color:var(--muted);line-height:2.2;transition:color .25s}
.foot-links a:hover{color:var(--holo-text)}
.foot-disclaimer{font-size:.72rem;color:var(--muted);line-height:1.85;border-top:1px solid var(--hairline-soft);padding-top:28px}
.foot-bottom{display:flex;justify-content:space-between;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:24px;flex-wrap:wrap;gap:10px}
.made-by{display:inline-flex;align-items:center;gap:10px;letter-spacing:.04em;text-transform:none}
.made-by img{width:22px;height:22px;border-radius:6px;display:block}
.made-by strong{font-weight:600;color:var(--navy)}

/* REVEAL */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.2,.6,.2,1),transform .9s cubic-bezier(.2,.6,.2,1)}
.reveal.in{opacity:1;transform:none}
.reveal-d1{transition-delay:.1s}.reveal-d2{transition-delay:.2s}.reveal-d3{transition-delay:.3s}.reveal-d4{transition-delay:.4s}.reveal-d5{transition-delay:.5s}
.figure figcaption{opacity:0;transition:opacity .9s ease .45s}
.figure.in figcaption{opacity:1}
.figure.reveal img{transform:scale(1.015)}
.figure.reveal img{transition:transform 1.6s cubic-bezier(.2,.6,.2,1),box-shadow .35s ease}
.figure.reveal.in img{transform:none}
@media(prefers-reduced-motion:reduce){.reveal,.interlude-line.reveal,.interlude-line.reveal.in{opacity:1;transform:none;transition:none}.figure figcaption{opacity:1;transition:none}.figure.reveal img{transform:none;transition:none}.hero-tagline::before,.hero::before,.hero .container::before,.hero .container.fire::before,.interlude::before,.contact-inner::before{animation:none}.btn::before{display:none}}
