/* conductor-live.com v3. Components are rebuilt from the handoff's
   reference/components/**.jsx as classes; every value reads a token from
   tokens.css. Behaviour lives in js/site.js. */

html,body{margin:0;padding:0}
*{box-sizing:border-box}
body{overflow-x:hidden}
::-webkit-scrollbar{width:9px}
::-webkit-scrollbar-thumb{background:var(--surface-2);border-radius:5px}
video{transition:opacity .25s}
img{max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;padding:0;margin:0;cursor:pointer;text-align:inherit}
:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ── Type helpers ─────────────────────────────────────────────── */
.mono{font-family:var(--font-mono);font-size:var(--size-mono-xs);letter-spacing:.16em;text-transform:uppercase}
.mono--8{font-size:8px}
.mono--75{font-size:var(--size-mono-xxs)}
.mono--7{font-size:var(--size-mono-micro)}
.ink-dim{color:var(--ink-dim)}
.ink-body{color:var(--text-body)}
.ink-cyan{color:var(--cyan)}
.eyebrow{font-family:var(--font-mono);font-size:var(--size-mono-sm);letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--cyan)}
.eyebrow--ai{color:var(--magenta-ink)}
.kicker{font-family:var(--font-mono);font-size:var(--size-mono-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--cyan)}
.kicker--ai{color:var(--magenta-ink)}
.h2{font-family:var(--font-display);font-size:var(--size-h2);font-weight:200;letter-spacing:var(--track-h2);line-height:var(--leading-h2);margin:18px 0 0}
.h2--quiet{font-size:clamp(24px,2.8vw,36px);line-height:1.15;margin-top:16px}
.h2 b,.h3 b,.pull b,.h1 b{font-weight:600}
.body{font-family:var(--font-display);font-weight:300;font-size:var(--size-body);line-height:var(--leading-body);color:var(--text-body);max-width:var(--measure-body);margin:0}
.body-sm{font-family:var(--font-display);font-weight:300;font-size:var(--size-body-sm);line-height:var(--leading-body);color:var(--text-body);margin:0}
.muted{color:var(--text-muted)}
.small{font-family:var(--font-display);font-weight:300;font-size:12px;line-height:1.55;color:var(--text-muted)}
.pull{font-family:var(--font-display);font-weight:300;letter-spacing:-.02em;color:var(--ink-bright);line-height:1.34;margin:44px 0 0}
.dot{width:6px;height:6px;border-radius:50%;display:block;flex:0 0 auto}
.dot--cyan{background:var(--cyan)}
.dot--red{background:var(--red)}
.arrow-list{display:flex;flex-direction:column;gap:11px}
.arrow-list>div{display:flex;gap:11px;font-family:var(--font-display);font-weight:300;line-height:1.5}
.arrow-list>div>span:first-child{color:var(--cyan);font-family:var(--font-mono);font-size:10px;flex:0 0 auto}
a.link-mono{font-family:var(--font-mono);font-size:8px;letter-spacing:.16em;text-transform:uppercase}

/* ── Layout ───────────────────────────────────────────────────── */
.section{position:relative;padding:var(--section-pad-y) var(--page-gutter);border-top:1px solid var(--border-line);scroll-margin-top:62px}
.wrap{max-width:var(--wrap-max);margin:0 auto}
.split{display:flex;flex-wrap:wrap;gap:var(--grid-gap-wide);align-items:flex-end}
.bleed{width:min(1400px,calc(100vw - 2 * var(--page-gutter)));margin-left:calc((100% - min(1400px,calc(100vw - 2 * var(--page-gutter)))) / 2)}
/* Old anchors (#platform, #industries, #ai) still land: blog posts link to them. */
.alias{position:absolute;top:0;left:0;width:1px;height:1px;pointer-events:none;scroll-margin-top:62px}

/* ── Ambient: vignette, Tally, StatePill, nav ─────────────────── */
.vignette{position:fixed;inset:0;pointer-events:none;z-index:900;
  box-shadow:inset 0 0 0 1px var(--st-line,rgba(38,60,85,.55)),inset 0 0 26px -6px var(--st-glow,rgba(0,229,255,.05)),inset 0 0 200px 40px var(--st-vig,rgba(0,0,0,.5));
  transition:box-shadow var(--dur-ambient) var(--ease-drive)}

/* Tally (broadcast/Tally.jsx) */
.tally{position:fixed;top:0;left:0;right:0;height:2px;background:var(--red);z-index:950;pointer-events:none;transform-origin:50% 50%;
  opacity:0;transform:scaleX(0);box-shadow:none;transition:opacity var(--dur-cut),transform .7s var(--ease-drive)}
.tally.is-on{opacity:1;transform:scaleX(1);box-shadow:var(--glow-tally)}

/* StatePill (broadcast/StatePill.jsx) */
.state-pill{position:fixed;top:76px;right:var(--page-gutter);z-index:960;display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:var(--radius-pill);
  border:1px solid var(--ghost-line);background:rgba(7,11,17,.72);backdrop-filter:var(--blur-pill);-webkit-backdrop-filter:var(--blur-pill);
  font-family:var(--font-mono);font-size:var(--size-mono-sm);letter-spacing:.18em;text-transform:uppercase;color:rgba(240,246,255,.8);white-space:nowrap;transition:all var(--dur-slow)}
.state-pill i{width:7px;height:7px;border-radius:50%;background:var(--ink-dim);transition:all var(--dur-slow);display:block}
.state-pill[data-state="on deck"] i{background:var(--cyan);box-shadow:0 0 10px var(--cyan)}
.state-pill[data-state="stand by"]{border-color:var(--amber-line);background:var(--amber-fill);color:var(--amber-ink)}
.state-pill[data-state="stand by"] i{background:var(--amber);box-shadow:0 0 10px var(--amber)}
.state-pill[data-state="on air"]{border-color:var(--red);background:rgba(255,59,48,.16);color:var(--red-ink);box-shadow:0 0 26px -6px rgba(255,59,48,.8)}
.state-pill[data-state="on air"] i{background:var(--red);box-shadow:0 0 10px var(--red)}

.nav{position:fixed;top:0;left:0;right:0;height:62px;z-index:970;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 var(--page-gutter)}
.nav::before{content:"";position:absolute;inset:0;background:transparent;border-bottom:1px solid transparent;transition:background var(--dur-fade),border-color var(--dur-fade)}
.nav.is-scrolled::before{background:rgba(7,11,17,.82);backdrop-filter:var(--blur-chrome);-webkit-backdrop-filter:var(--blur-chrome);border-bottom-color:var(--surface-2)}
.nav>*{position:relative}
.nav__right{display:flex;align-items:center;gap:14px}
/* NavLink (controls/NavLink.jsx) */
.nav-link{font-family:var(--font-display);font-size:12.5px;white-space:nowrap;color:rgba(240,246,255,.6);transition:color var(--dur-fast)}
.nav-link:hover{color:var(--ink-bright)}
.motion-toggle{font-family:var(--font-mono);font-size:var(--size-mono-xs);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;color:var(--ink-dim);
  border:1px solid var(--ghost-line);border-radius:var(--radius);padding:8px 11px;transition:all var(--dur-fast)}
.motion-toggle:hover{border-color:var(--ghost-line-hover);color:var(--ink-bright)}

/* Lockup (brand/Lockup.jsx), CMark (brand/CMark.jsx) */
.lockup{display:flex;align-items:center;gap:9px;color:var(--ink-bright)}
.lockup:hover{color:var(--ink-bright)}
.lockup i{width:19px;height:19px;border-radius:5px;background:var(--brand-gradient);display:block}
.lockup span{font-family:var(--font-display);font-size:14px;font-weight:600;letter-spacing:-.01em;color:var(--ink-bright)}
.lockup b{font-family:var(--font-mono);font-size:9px;font-weight:500;letter-spacing:.22em;color:var(--cyan)}
.lockup--stacked{flex-direction:column;gap:18px}
.lockup--stacked span{font-weight:500;font-size:22px;text-transform:uppercase;white-space:nowrap}
.cmark{display:block;width:96px;height:96px}

/* Button (controls/Button.jsx): broadcast tone, lg and md */
.btn{display:inline-block;font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;padding:14px 26px;border-radius:var(--radius-md);white-space:nowrap;cursor:pointer;
  border:1px solid var(--cyan-line);color:var(--cyan);background:var(--cyan-fill);transition:all var(--dur-fast)}
.btn:hover{background:var(--cyan-fill-hover);box-shadow:var(--glow-cyan);color:var(--cyan)}
.btn--md{font-size:var(--size-mono-sm);padding:9px 17px;border-radius:var(--radius)}
.btn--ghost{border-color:var(--ghost-line);color:rgba(240,246,255,.75);background:transparent}
.btn--ghost:hover{border-color:var(--ghost-line-hover);color:var(--ink-bright);background:transparent;box-shadow:none}
.btn[disabled]{opacity:.4;cursor:default;box-shadow:none}

/* ── Hero #top ────────────────────────────────────────────────── */
#top{min-height:100vh;display:flex;align-items:center;padding:112px var(--page-gutter) 72px;overflow:hidden;border-top:0}
#top::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 50% at 78% 70%,rgba(0,229,255,.06),transparent 70%),radial-gradient(50% 40% at 15% 20%,rgba(255,59,48,.04),transparent 70%)}
#top .wrap{position:relative;width:100%}
.sentinel{position:absolute;top:0;left:0;width:1px;height:60px;pointer-events:none}
.hero__row{display:flex;flex-wrap:wrap;gap:22px var(--grid-gap-wide);align-items:flex-end;justify-content:space-between}
.hero__copy{flex:1 1 520px;min-width:0}
.h1{font-family:var(--font-display);font-size:clamp(36px,5.4vw,76px);font-weight:200;letter-spacing:var(--track-display);line-height:var(--leading-display);margin:0;max-width:15ch}
.h1 b{background:var(--display-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}
.lede{font-family:var(--font-display);font-weight:300;font-size:var(--size-lede);line-height:var(--leading-lede);color:var(--text-body);max-width:var(--measure-lede);margin:22px 0 0}
.hero__actions{flex:0 1 auto;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.hero__buttons{display:flex;flex-wrap:wrap;gap:11px}
.proof{display:flex;gap:9px;align-items:center}
.proof i{width:5px;height:5px;border-radius:50%;background:var(--cyan);display:block}
.hero__frame-wrap{margin-top:40px}
.hero__frame{position:relative;aspect-ratio:1728/852;border-radius:12px;overflow:hidden;background:var(--navy);
  box-shadow:0 0 0 1px rgba(0,229,255,.35);transition:box-shadow 1s var(--ease-drive)}
.hero__frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:brightness(.5) saturate(.55);transition:filter 1.2s var(--ease-drive),opacity .25s}
.hero__bar{position:absolute;top:0;left:0;right:0;height:3px;background:var(--red);box-shadow:0 0 26px 3px rgba(255,59,48,.75);transform-origin:left;transform:scaleX(0);transition:transform .6s var(--ease-drive);z-index:2}
.hero__chip{position:absolute;left:14px;top:14px;z-index:2;font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;padding:5px 11px;border-radius:var(--radius-pill);white-space:nowrap;
  border:1px solid var(--cyan-line);background:rgba(7,11,17,.7);color:var(--cyan);transition:all .6s}
[data-hero][data-state="on-air"] .hero__frame{box-shadow:0 0 0 1px rgba(255,59,48,.6),0 0 80px -16px rgba(255,59,48,.5)}
[data-hero][data-state="on-air"] .hero__frame video{filter:none}
[data-hero][data-state="on-air"] .hero__bar{transform:scaleX(1)}
[data-hero][data-state="on-air"] .hero__chip{border-color:var(--red);background:rgba(255,59,48,.2);color:var(--red-ink)}
.hero--split{display:none}
[data-hero-mode="split"] .hero--tally{display:none}
[data-hero-mode="split"] .hero--split{display:block}
.split-hero{display:flex;flex-wrap:wrap;align-items:center;gap:var(--grid-gap)}
.split-hero figure{flex:1 1 380px;min-width:0;margin:0}
.split-hero .frame{border:0;border-radius:11px}
.split-hero .frame--red{box-shadow:0 0 0 1px var(--red-line),0 20px 60px -24px rgba(255,59,48,.35)}
.split-hero .frame--cyan{box-shadow:0 0 0 1px var(--cyan-line),0 20px 60px -24px rgba(0,229,255,.3)}
.split-hero__join{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 4px}
.split-hero__join i{width:44px;height:1px;background:linear-gradient(90deg,var(--red),var(--cyan));display:block}

/* ── Frames and figures ───────────────────────────────────────── */
figure{margin:0}
.frame{position:relative;border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--border-line);background:var(--navy)}
.frame--seat{box-shadow:var(--video-seat)}
.frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.figcap{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-top:10px}
.figcap--between{gap:11px;justify-content:space-between}
.figcap--stack{flex-direction:column;align-items:flex-start;gap:5px}
.text-btn{font-family:var(--font-mono);font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);cursor:pointer;white-space:nowrap}
.text-btn:hover{color:var(--ink-bright)}

/* VideoFrame (surfaces/VideoFrame.jsx). autoPlay/loop dropped: the
   video policy governs playback, not the component. */
.video-frame{cursor:zoom-in}
.video-frame__seat{position:relative;border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-page);box-shadow:var(--video-seat);aspect-ratio:16/9}
.video-frame__seat video{display:block;width:100%;height:100%;object-fit:contain}
.video-frame__seat::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(178deg,rgba(255,255,255,.05),transparent 22%)}
.video-frame__cap{font-family:var(--font-mono);font-size:var(--size-mono-xs);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-dim);margin-top:11px;display:flex;align-items:center;gap:8px}
.video-frame__cap i{width:5px;height:5px;border-radius:50%;background:var(--red);box-shadow:0 0 7px var(--red);display:block}

/* ── The room #cut and the switcher ───────────────────────────── */
#cut{padding:104px var(--page-gutter) 110px}
#cut .split{margin-bottom:44px}
.switcher{margin-top:64px}
.switcher__head{display:flex;flex-wrap:wrap;gap:16px var(--grid-gap-wide);align-items:flex-end;justify-content:space-between;margin-bottom:22px}
.h3{font-family:var(--font-display);font-size:clamp(22px,2.4vw,32px);font-weight:200;letter-spacing:-.025em;line-height:1.2;margin:14px 0 0;max-width:22ch}
.kbd{font-family:var(--font-mono);font-weight:500;font-size:11px;color:var(--ink-bright)}
.console{background:var(--surface-0);border:1px solid var(--border-line);border-radius:12px;padding:14px;box-shadow:var(--video-seat)}
.console__bar{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;padding:2px 2px 14px;border-bottom:1px solid var(--border-line);margin-bottom:14px}
.live-chip{font-family:var(--font-mono);font-size:var(--size-mono-xs);letter-spacing:.16em;text-transform:uppercase;padding:4px 10px;border-radius:var(--radius-pill);border:1px solid var(--red-line);background:rgba(255,59,48,.14);color:var(--red-ink);white-space:nowrap}
.timecode{font-family:var(--font-mono);font-weight:500;font-size:15px;letter-spacing:.04em;color:var(--ink-bright);min-width:104px;font-variant-numeric:tabular-nums}
.show-name{font-family:var(--font-display);font-size:13px;color:var(--text-body);white-space:nowrap}
.grow{flex:1}
.last-cut b{font-family:var(--font-mono);font-weight:500;font-size:11px;letter-spacing:.04em;color:var(--cyan);margin-left:6px}
.monitors{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--grid-gap)}

/* Monitor (broadcast/Monitor.jsx) */
.monitor{position:relative;aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-page);transition:box-shadow var(--dur-state);box-shadow:var(--ring-cyan)}
.monitor[data-bus="pgm"]{box-shadow:var(--ring-red)}
.monitor__pic{position:absolute;inset:0;background:var(--navy) center/cover no-repeat}
.monitor__bus{position:absolute;left:8px;top:7px;z-index:4;font-family:var(--font-mono);font-size:var(--size-mono-xxs);letter-spacing:.15em;padding:3px 8px;border-radius:var(--radius-xs);background:var(--cyan);color:var(--bg-page)}
.monitor[data-bus="pgm"] .monitor__bus{background:var(--red)}
.monitor__who{position:absolute;left:9px;bottom:7px;z-index:4;font-family:var(--font-display);font-size:11px;color:rgba(255,255,255,.92);white-space:nowrap;text-shadow:0 1px 5px rgba(0,0,0,.9)}
.l3{position:absolute;left:6%;bottom:16%;display:flex;align-items:stretch;z-index:3;opacity:0;transform:translateX(-10px);transition:opacity .35s var(--ease-drive),transform .35s var(--ease-drive)}
.l3.is-on{opacity:1;transform:none}
.l3 i{width:3px;background:linear-gradient(180deg,var(--magenta),var(--cyan));display:block}
.l3 div{background:rgba(7,11,17,.86);padding:7px 14px 8px 11px}
.l3 strong{display:block;font-family:var(--font-display);font-size:clamp(11px,1.3vw,15px);font-weight:600;color:var(--ink-bright);white-space:nowrap}
.l3 small{display:block;font-family:var(--font-mono);font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);margin-top:3px}

.controls{display:flex;flex-wrap:wrap;gap:var(--grid-gap);align-items:flex-start;margin-top:14px}
.rail{flex:2 1 420px;min-width:0;display:flex;gap:7px}
.rail__slot{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:5px;text-align:center}

/* SourceTile (broadcast/SourceTile.jsx) */
.source-tile{position:relative;display:block;width:100%;aspect-ratio:16/9;border-radius:6px;overflow:hidden;cursor:pointer;
  box-shadow:0 0 0 1px rgba(240,246,255,.12);opacity:.62;filter:saturate(.7);transition:all var(--dur-fade)}
.source-tile:hover{opacity:.9}
.source-tile[data-state="selected"]{box-shadow:var(--ring-select);opacity:1;filter:none}
.source-tile[data-state="live"]{box-shadow:var(--ring-live);opacity:1;filter:none}
.source-tile__label{position:absolute;left:4px;bottom:3px;font-family:var(--font-mono);font-size:6.5px;letter-spacing:.08em;color:rgba(255,255,255,.85);text-align:left}

.take-col{flex:1 1 220px;min-width:200px;display:flex;flex-direction:column;gap:8px}
/* TakeButton (broadcast/TakeButton.jsx) */
.take-btn{display:block;width:100%;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-align:center;padding:13px;border-radius:var(--radius-md);cursor:pointer;user-select:none;
  border:1px solid var(--red-line);color:var(--red-ink);background:var(--red-fill);transition:all var(--dur-instant)}
.take-btn:hover{background:var(--red-fill-hover);box-shadow:var(--glow-red)}
.take-btn:active{transform:scale(.985)}
.l3-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:var(--radius-md);cursor:pointer;user-select:none;
  border:1px solid var(--border-line);background:transparent;transition:all var(--dur-fast)}
.l3-toggle:hover{border-color:var(--cyan)}
.l3-toggle span:first-child{font-family:var(--font-display);font-size:12px;color:var(--text-body);white-space:nowrap}
.l3-toggle span:last-child{color:var(--ink-dim)}
.l3-toggle[aria-pressed="true"]{border-color:var(--red-line);background:rgba(255,59,48,.1)}
.l3-toggle[aria-pressed="true"] span:last-child{color:var(--red-ink)}
.take-log{display:flex;flex-direction:column;margin-top:14px;border-top:1px solid var(--border-line)}
.take-log>div{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:12px;padding:8px 2px;border-bottom:1px solid rgba(240,246,255,.05)}
.take-log>div>span:first-child{color:var(--text-body)}
.take-log>div>span:last-child{color:var(--cyan)}
.source-menu{display:flex;flex-wrap:wrap;gap:var(--grid-gap-wide);align-items:center;margin-top:56px}
.source-menu figure{flex:1 1 380px;min-width:0}
.source-menu>div{flex:1 1 300px;min-width:0}

/* ── Architecture #flow ───────────────────────────────────────── */
#flow,#compare{padding:80px var(--page-gutter)}
.flow__head{display:flex;flex-wrap:wrap;gap:18px var(--grid-gap-wide);align-items:flex-end;justify-content:space-between}
.flow__head .h2{max-width:18ch}
.flow__head p{flex:0 1 440px}
.paths{display:flex;flex-wrap:wrap;gap:var(--grid-gap-wide);margin-top:40px}
.path{flex:1 1 480px;min-width:0}
.path__label{display:flex;align-items:center;gap:9px;margin-bottom:16px}
.path__label span+span{color:var(--text-faint)}
.path>p{max-width:44ch;margin:18px 0 22px}

/* SignalChain (broadcast/SignalChain.jsx) */
.chain{display:flex;align-items:center;flex-wrap:wrap}
.chain__wire{flex:1;min-width:22px;height:1px;position:relative;margin:0 3px;background:var(--cyan);box-shadow:0 0 10px -1px var(--cyan)}
.chain__wire span{position:absolute;left:50%;top:-8px;transform:translateX(-50%);font-family:var(--font-mono);font-size:var(--size-mono-xxs);letter-spacing:.1em;color:var(--ink-dim);background:var(--bg-page);padding:0 6px}
.chain__node{padding:11px 15px;border-radius:var(--radius-md);border:1px solid var(--border-line);background:var(--surface-0);min-width:104px}
.chain__node b{display:block;font-family:var(--font-display);font-weight:400;font-size:12px;margin-bottom:3px;color:var(--ink-bright)}
.chain__node small{display:block;font-family:var(--font-mono);font-size:var(--size-mono-xxs);letter-spacing:.1em;color:var(--text-body)}

.stats{display:flex;flex-wrap:wrap;gap:var(--grid-gap)}
.stat{border-top:1px solid var(--border-line);padding-top:16px;flex:1 1 150px;min-width:0}
.stat__n{font-family:var(--font-mono);font-weight:500;font-size:var(--size-stat-sm);letter-spacing:var(--track-stat);line-height:1;color:var(--ink-bright)}
.stat__n em{font-style:normal;font-size:13px;color:var(--ink-dim);margin-left:2px}
.stat__k{color:var(--cyan);margin:10px 0 6px}
.stat__d{font-family:var(--font-display);font-weight:300;font-size:var(--size-caption);line-height:1.5;color:var(--text-muted)}
.pull--rule{font-size:clamp(19px,2vw,26px);max-width:40ch;border-top:1px solid var(--border-line);padding-top:28px}
.providers{margin-top:40px;border-top:1px solid var(--border-line);padding-top:24px;scroll-margin-top:80px}
.providers__head{display:flex;flex-wrap:wrap;gap:9px 18px;align-items:baseline;justify-content:space-between;margin-bottom:18px}
.providers__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:18px var(--grid-gap-wide)}
.providers__grid>div{display:flex;flex-direction:column;gap:4px;min-width:0}
.providers__grid b{font-family:var(--font-display);font-size:13.5px;font-weight:500;color:var(--ink-bright)}
.providers__grid span{font-family:var(--font-display);font-weight:300;font-size:12px;line-height:1.5;color:var(--text-muted)}

/* ── Before the show #prep ────────────────────────────────────── */
#prep{padding:88px var(--page-gutter)}
.cells{display:grid;grid-template-columns:repeat(auto-fit,minmax(188px,1fr));gap:1px;background:var(--border-line);border:1px solid var(--border-line);border-radius:var(--radius-xl);overflow:hidden;margin-top:34px}
.cells>div{background:var(--bg-page);padding:20px}
.cells .mono{color:var(--cyan);margin-bottom:9px}
.one-line{margin-top:52px;border-top:1px solid var(--border-line);padding-top:34px}
.one-line h3{font-family:var(--font-display);font-size:var(--size-h4);font-weight:400;letter-spacing:var(--track-tight);color:var(--ink-dim);margin:0}
.one-line p{font-size:clamp(22px,2.6vw,34px);line-height:1.3;letter-spacing:-.025em;max-width:30ch;margin:18px 0 0}

/* ── Guest #guest · Tab (controls/Tab.jsx, guest variant) ──────── */
#guest .split{margin-bottom:40px}
.g-tabs{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:13px}
.g-tab{position:relative;overflow:hidden;font-family:var(--font-mono);font-size:var(--size-mono-xs);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;padding:7px 11px;border-radius:var(--radius-sm);cursor:pointer;user-select:none;
  transition:all var(--dur-fast);border:1px solid var(--border-line);color:var(--ink-dim);background:transparent}
.g-tab:hover{border-color:var(--surface-3);color:var(--text-muted)}
.g-tab[aria-selected="true"]{border-color:var(--cyan);color:var(--cyan);background:var(--cyan-tint)}
.g-tab i{position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--cyan);display:block}
.g-stage{position:relative;aspect-ratio:1920/1080;transition:aspect-ratio .5s var(--ease-drive)}
.g-stage[data-asp="wide"]{aspect-ratio:1920/848}
.g-stage video[hidden]{display:none}
.g-cap{display:flex;flex-wrap:wrap;gap:11px;align-items:baseline;justify-content:space-between;margin-top:11px}
.g-cap>div{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1 1 360px}
.g-cap>span{flex:0 1 auto}

/* ── Watch #watch · Ledger (data/Ledger.jsx) ──────────────────── */
#watch .split{margin-bottom:44px}
.watch__row{display:flex;flex-wrap:wrap;gap:var(--grid-gap-wide);margin-top:52px;align-items:flex-start}
.watch__detail{flex:0 1 330px;min-width:0;max-width:442px}
.watch__ledger{flex:1 1 330px;min-width:0}
.ledger{border:1px solid var(--border-line);border-radius:var(--radius-lg);overflow:hidden;margin-top:18px}
.ledger>div{display:flex;align-items:center;gap:10px;padding:9px 13px;border-bottom:1px solid var(--border-line);font-family:var(--font-mono);font-size:9px}
.ledger>div:last-child{border-bottom:0}
.ledger__t{color:var(--ink-dim);min-width:52px}
.ledger__e{color:rgba(240,246,255,.85)}
.ledger__tag{margin-left:auto;font-size:var(--size-mono-xxs);letter-spacing:.12em;padding:2px 7px;border-radius:9px;border:1px solid var(--green-line);color:var(--green)}

/* ── Intelligence #intel · AICard (surfaces/AICard.jsx) ────────── */
.lens{display:flex;flex-wrap:wrap;gap:var(--grid-gap-wide);align-items:center;margin-top:44px;padding:22px;border:1px solid var(--magenta-line);border-radius:12px}
.lens figure{flex:0 1 380px;min-width:0;max-width:380px}
.lens figure div{border-radius:var(--radius-lg);overflow:hidden;background:var(--navy)}
.lens figure img{display:block;width:100%;height:auto}
.lens>div{flex:1 1 320px;min-width:0}
.lens blockquote{font-family:var(--font-display);font-weight:300;font-size:clamp(17px,1.7vw,21px);line-height:1.45;letter-spacing:-.01em;color:var(--ink-bright);max-width:40ch;margin:14px 0 0;padding:0}
.ai-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:var(--grid-gap);margin-top:var(--grid-gap)}
.ai-card{border:1px solid var(--border-line);border-radius:10px;background:var(--ai-panel);padding:18px 18px 20px;position:relative;overflow:hidden;transition:all var(--dur-fade)}
.ai-card:hover{border-color:var(--magenta-line)}
.ai-card__status{position:absolute;top:14px;right:14px;font-family:var(--font-mono);font-size:7px;letter-spacing:.13em;padding:3px 7px;border-radius:9px;white-space:nowrap;border:1px solid var(--green-line);color:var(--green)}
.ai-card__status--pending{border-color:rgba(255,149,0,.35);color:var(--amber)}
.ai-card__name{font-family:var(--font-mono);font-size:var(--size-mono-sm);letter-spacing:.16em;text-transform:uppercase;color:var(--magenta-ink);margin-bottom:9px}
.ai-card__h{font-family:var(--font-display);font-size:15px;font-weight:400;margin-bottom:8px;max-width:22ch;color:var(--ink-bright)}
.ai-card__b{font-family:var(--font-display);font-size:12px;line-height:1.55;font-weight:300;color:rgba(240,246,255,.5)}
/* A visible footnote for a card that mixes live and in-development capability. */
.ai-card__note{margin-top:12px;padding-top:10px;border-top:1px solid var(--border-line);font-family:var(--font-display);font-size:var(--size-caption);line-height:1.5;font-weight:300;color:var(--ink-dim)}
.pull--ai{font-size:clamp(20px,2.2vw,30px);max-width:32ch;border-top:1px solid var(--magenta-line);padding-top:34px}

/* ── Compare #compare ─────────────────────────────────────────── */
.compare{display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--grid-gap);margin-top:36px}
.cmp{flex:1 1 210px;min-width:0;display:flex;flex-direction:column;background:var(--bg-page);border:1px solid var(--border-line);border-radius:var(--radius-xl);padding:24px 20px}
.cmp--us{flex:2.3 1 400px;display:block;background:var(--cyan-tint);border-color:var(--cyan-line);padding:26px 24px 28px}
.cmp__name{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:14px}
.cmp__name i{width:7px;height:7px;border-radius:50%;background:var(--surface-3);display:block;flex:0 0 auto}
.cmp__name .mono{letter-spacing:.2em;white-space:nowrap}
.cmp--us .cmp__name{margin-bottom:8px}
.cmp--us .cmp__name i{background:var(--cyan);box-shadow:0 0 9px var(--cyan)}
.cmp__body{font-family:var(--font-display);font-weight:300;font-size:13.5px;line-height:1.6;color:var(--text-muted)}
.cmp__lede{font-family:var(--font-display);font-weight:300;font-size:14.5px;line-height:1.55;color:var(--ink-bright);margin-bottom:20px;max-width:46ch}
.cmp__foot{margin-top:auto;padding-top:20px;display:flex;flex-direction:column;gap:7px}
.cmp .arrow-list>div{font-size:13px;line-height:1.55;color:rgba(240,246,255,.88)}
.pull--cmp{font-size:clamp(20px,2.2vw,30px);max-width:38ch}

/* ── Industries #ind · Tab (controls/Tab.jsx) ─────────────────── */
#ind{padding:56px var(--page-gutter)}
.ind__head{display:flex;flex-wrap:wrap;gap:14px var(--grid-gap-wide);align-items:center;justify-content:space-between}
.tabs{display:flex;flex-wrap:wrap;gap:5px}
.tab{font-family:var(--font-mono);font-size:9px;letter-spacing:.13em;text-transform:uppercase;padding:9px 15px;border-radius:var(--radius);white-space:nowrap;cursor:pointer;user-select:none;
  border:1px solid var(--border-line);color:var(--ink-dim);background:transparent;transition:all var(--dur-fast)}
.tab:hover{border-color:var(--border-strong);color:var(--ink-hover)}
.tab[aria-selected="true"]{border-color:var(--cyan);color:var(--ink-bright);background:color-mix(in srgb,var(--cyan) 10%,transparent)}
.ind__body{display:flex;flex-wrap:wrap;gap:10px var(--grid-gap-wide);align-items:baseline;margin-top:22px;min-height:66px}
.ind__line{flex:1 1 340px;font-family:var(--font-display);font-weight:300;font-size:clamp(18px,1.9vw,24px);line-height:1.3;letter-spacing:-.02em;color:var(--ink-bright);margin:0;max-width:26ch}
.ind__text{flex:1.4 1 380px;max-width:60ch;color:var(--text-muted)}

/* ── Products + access #end · StatusChip (surfaces/StatusChip.jsx) */
#end{padding:96px var(--page-gutter) 104px}
.products{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--grid-gap);margin-top:32px}
.product{background:var(--bg-page);border:1px solid var(--border-line);border-radius:10px;padding:20px 20px 22px;transition:border-color var(--dur-fast)}
.product:hover{border-color:var(--border-strong)}
.product--lead,.product--lead:hover{border-color:var(--cyan-line)}
.product__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:9px;margin-bottom:11px}
.product__head b{font-family:var(--font-display);font-size:15px;font-weight:500;white-space:nowrap;min-width:0;color:var(--ink-bright)}
.product p{font-family:var(--font-display);font-weight:300;font-size:12.5px;line-height:1.6;color:var(--text-body);margin:0}
.status-chip{display:inline-block;font-family:var(--font-mono);font-size:var(--size-mono-xxs);letter-spacing:.13em;text-transform:uppercase;padding:3px 8px;border-radius:10px;white-space:nowrap;border:1px solid rgba(0,229,255,.45);color:var(--cyan)}
.access{display:flex;flex-direction:column;align-items:center;text-align:center;margin-top:88px}
.access .h2{margin:0}

/* ── Security & privacy #security (footer) ────────────────────── */
#security{padding:48px var(--page-gutter) 56px;background:var(--bg-raised)}
.sec__head{display:flex;flex-wrap:wrap;gap:9px 18px;align-items:baseline;justify-content:space-between;margin-bottom:22px}
.sec__head>span:first-child{font-family:var(--font-display);font-size:var(--size-h4);font-weight:400;color:var(--ink-bright)}
.sec__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px var(--grid-gap-wide)}
.sec__grid .mono{color:var(--cyan);margin-bottom:8px}
.sec__grid p{font-family:var(--font-display);font-weight:300;font-size:12px;line-height:1.6;color:var(--text-muted);margin:0}
.sec__foot{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;margin-top:36px;padding-top:18px;border-top:1px solid var(--border-line);color:var(--ink-dim)}
.sec__foot nav{display:flex;gap:18px}

/* ── Lightbox ─────────────────────────────────────────────────── */
.lightbox{position:fixed;inset:0;z-index:990;background:rgba(7,11,17,.93);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:44px var(--page-gutter)}
.lightbox.is-open{display:flex}
.lightbox__inner{width:100%;max-width:1100px;max-height:100%}
.lightbox__head{display:flex;flex-wrap:wrap;gap:11px;align-items:center;justify-content:space-between;margin-bottom:14px}
.close-btn{font-family:var(--font-mono);font-size:var(--size-mono-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);white-space:nowrap;border:1px solid var(--ghost-line);border-radius:var(--radius);padding:7px 13px}
.close-btn:hover{border-color:var(--ghost-line-hover);color:var(--ink-bright)}
.lightbox__stage{position:relative;aspect-ratio:16/9;border-radius:var(--radius-xl);overflow:hidden;background:var(--navy);box-shadow:var(--video-seat)}
.lightbox__stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.lightbox__cap{max-width:var(--measure-body);margin-top:14px}

/* ── Waitlist modal (carries the existing Formspree form) ─────── */
.modal{position:fixed;inset:0;z-index:995;background:rgba(7,11,17,.93);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:24px var(--page-gutter)}
.modal.is-open{display:flex}
.modal__card{position:relative;width:100%;max-width:420px;background:var(--surface-0);border:1px solid var(--border-line);border-radius:12px;padding:28px 26px 26px;box-shadow:var(--video-seat)}
.modal__card .close-btn{position:absolute;top:14px;right:14px}
.modal__card h2{font-family:var(--font-display);font-size:var(--size-h3);font-weight:300;letter-spacing:var(--track-tight);margin:16px 0 0;color:var(--ink-bright)}
.modal__card p{margin-top:12px}
.modal form{display:flex;flex-direction:column;gap:9px;margin-top:20px}
.field{width:100%;font-family:var(--font-display);font-weight:300;font-size:14px;color:var(--ink-bright);background:var(--bg-page);border:1px solid var(--border-line);border-radius:var(--radius-md);padding:12px 13px;transition:border-color var(--dur-fast)}
.field::placeholder{color:var(--text-muted)}
.field:focus{outline:none;border-color:var(--cyan)}
.field[aria-invalid="true"]{border-color:var(--red)}
.modal form .btn{margin-top:6px;text-align:center}
.form-error{color:var(--red-ink);margin-top:4px}
.form-error a{color:var(--red-ink);text-decoration:underline}
.modal__done{display:none;text-align:center;padding:10px 0 4px}
.modal.is-done .modal__done{display:block}
.modal.is-done .modal__form{display:none}
.modal__check{width:48px;height:48px;border-radius:50%;margin:0 auto;display:flex;align-items:center;justify-content:center;border:2px solid var(--green);background:rgba(0,229,160,.1);color:var(--green);font-size:20px}

/* ── Narrow screens ───────────────────────────────────────────── */
@media (max-width:560px){
  .nav-link--wide{display:none}
  .nav__right{gap:8px}
  .motion-toggle{letter-spacing:.1em;padding:8px 8px}
  .nav .btn--md{letter-spacing:.08em;padding:9px 11px;font-size:9px}
}
@media (max-width:360px){
  .lockup b{display:none}
}
