/* ============================================================
   BLINDSPOT — consolidated design system stylesheet
   One file for the whole kit. Page-family scopes on <body>:
   fA home · fB request-media-plan · fC studies/about/careers
   fD case detail pages · fE cost guide + city + guide pages

   THE SCOPING RULE — read before editing:
   If you scope a base selector to a family (body.fX .thing),
   you MUST scope its state classes (.thing.active, .thing.hide),
   its media-query overrides, AND its descendant rules
   (.thing p, .thing h3) identically — otherwise the scoped
   base outranks the unscoped variant and silently wins.
   Corollary: every .btn variant on a dark surface must
   explicitly declare its ::before fill state (scaleY 0 or 1);
   never rely on the default. Six bugs in this file came from
   violating these two rules. Don't be the seventh.
   ============================================================ */
:root{
  --ink:#020A0A;
  --ink-2:#0F1616;
  --paper:#FFFFFF;
  --mist:#F7F1F0;
  --line:rgba(2,10,10,.12);
  --line-strong:rgba(2,10,10,.85);
  --muted:rgba(2,10,10,.58);
  --red:#E25C5C;
  --red-deep:#B23434;
  --red-soft:#FBE9E9;
  --coral:#F68D8D;
  --w-line:rgba(255,255,255,.14);
  --w-muted:rgba(255,255,255,.64);
  --max:1280px;
  --ease:cubic-bezier(.22,.8,.2,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body.fA{
  font-family:'Archivo',system-ui,sans-serif;
  background:var(--paper);color:var(--ink);
  line-height:1.55;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
.wrap{max-width:var(--max);margin:0 auto;padding:0 32px}
a{color:inherit}
body.fA img{max-width:100%}
::selection{background:var(--coral);color:var(--ink)}
:focus-visible{outline:3px solid var(--red);outline-offset:3px;border-radius:2px}
/* ===== skip link (WCAG 2.4.1 bypass blocks · all families) ===== */
.skip-link{position:fixed;top:-100px;left:16px;z-index:400;background:var(--ink);color:#fff;
  font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:.06em;text-decoration:none;
  padding:12px 20px;border-radius:0 0 12px 12px;transition:top .25s var(--ease)}
.skip-link:focus{top:0}
.display{font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.005em;line-height:.94}
.serif-acc{font-family:'Instrument Serif',serif;font-style:italic;text-transform:none;letter-spacing:0;line-height:inherit}
.mono{font-family:'IBM Plex Mono',monospace}
body.fA .eyebrow{
  font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted);display:inline-flex;align-items:center;gap:12px;
}
.eyebrow::before{content:"";width:26px;height:1.5px;background:var(--red)}
.dark .eyebrow{color:var(--w-muted)}
.dark .eyebrow::before{background:var(--coral)}
.rv{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}
.rv-d1{transition-delay:.08s}
.rv-d2{transition-delay:.16s}
.rv-d3{transition-delay:.24s}
.rv-d4{transition-delay:.32s}
.line-mask{display:block;overflow:hidden}
.line-mask>span{display:block;transform:translateY(110%);transition:transform 1s var(--ease)}
body.loaded .line-mask>span{transform:none}
.line-mask:nth-child(1)>span{transition-delay:.15s}
.line-mask:nth-child(2)>span{transition-delay:.27s}
.line-mask:nth-child(3)>span{transition-delay:.39s}
@media(prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none}
  .line-mask>span{transform:none;transition:none}
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
.btn{
  position:relative;display:inline-flex;align-items:center;gap:10px;text-decoration:none;
  font-weight:600;font-size:15.5px;padding:15px 28px;border-radius:999px;
  border:1.5px solid var(--ink);overflow:hidden;isolation:isolate;
  transition:color .35s var(--ease),border-color .35s var(--ease),transform .2s var(--ease);
  cursor:pointer;background:transparent;color:var(--ink);
}
.btn::before{
  content:"";position:absolute;inset:0;z-index:-1;background:var(--ink);
  transform:scaleY(1);transform-origin:top;transition:transform .4s var(--ease);
}
.btn-ghost::before{transform:scaleY(0);transform-origin:bottom}
.btn-primary{color:var(--paper)}
.btn-primary:hover::before{background:var(--red)}
.btn-primary:hover{border-color:var(--red);transform:translateY(-2px)}
.btn-ghost:hover{color:var(--paper);transform:translateY(-2px)}
.btn-ghost:hover::before{transform:scaleY(1)}
.btn .arr{transition:transform .3s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}
.btn-coral{border-color:var(--coral);color:var(--ink)}
.btn-coral::before{background:var(--coral)}
.btn-coral:hover{border-color:#fff}
.btn-coral:hover::before{background:#fff}
.btn-sm{padding:10px 20px;font-size:14px}
.btn-onDark{border-color:rgba(255,255,255,.5);color:#fff}
.btn-onDark::before{transform:scaleY(0);transform-origin:bottom;background:#fff}
.btn-onDark:hover{color:var(--ink);border-color:#fff;transform:translateY(-2px)}
.btn-onDark:hover::before{transform:scaleY(1)}
body.fA nav{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .4s,box-shadow .4s,border-color .4s;border-bottom:1px solid transparent}
nav.scrolled{background:rgba(255,255,255,.86);backdrop-filter:blur(16px);border-color:var(--line)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo{font-family:'Anton',sans-serif;font-size:21px;text-transform:uppercase;letter-spacing:.02em;text-decoration:none;display:flex;align-items:center;gap:8px}
body.fA .logo i, body.fB .logo i{width:10px;height:10px;border-radius:50%;background:var(--red);display:inline-block;animation:blink 3.4s infinite}
@keyframes blink{0%,92%,100%{transform:scaleY(1)}96%{transform:scaleY(.08)}}
.nav-links{display:flex;gap:30px;list-style:none}
.nav-links a{text-decoration:none;font-size:14.5px;font-weight:500;color:var(--muted);position:relative;padding:4px 0}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;height:1.5px;width:100%;background:var(--red);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}
.nav-links a:hover{color:var(--ink)}
.nav-links a:hover::after{transform:scaleX(1);transform-origin:left}
.nav-cta{display:flex;gap:14px;align-items:center}
.nav-login{text-decoration:none;font-size:14.5px;font-weight:500;color:var(--muted)}
.nav-login:hover{color:var(--ink)}
@media(max-width:920px){.nav-links,.nav-login{display:none}}
@media(max-width:640px){#nav .nav-req{display:none}}
.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:130px 0 40px;position:relative}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:center}
.hero h1{font-size:clamp(52px,7vw,104px);margin:22px 0 26px}
.hero h1 .serif-acc{color:var(--red);font-size:.96em}
.hero .lede{font-size:clamp(17px,1.4vw,20px);color:var(--muted);max-width:50ch;margin-bottom:36px}
.hero .lede strong{color:var(--ink);font-weight:600}
.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.hero-note{margin-top:22px;font-size:13.5px;color:var(--muted)}
.hero-note .mono{font-size:12px;color:var(--red)}
body.fA .scroll-hint{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.2em;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:8px}
.scroll-hint::after{content:"";width:1px;height:34px;background:linear-gradient(var(--red),transparent);animation:drip 1.8s var(--ease) infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}55%{transform:scaleY(1);transform-origin:top}56%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media(max-height:760px){body.fA .scroll-hint,body.fC .scroll-hint{display:none}}
.billboard{perspective:1100px}
.bb-tilt{transition:transform .25s ease-out;transform-style:preserve-3d}
.bb-frame{
  background:linear-gradient(#23292b,#0c1112);border-radius:5px;padding:16px;
  box-shadow:0 40px 80px -28px rgba(2,10,10,.5),0 0 110px rgba(246,141,141,.20);
  position:relative;border:1px solid rgba(255,255,255,.06);
}
.bb-frame::after{content:"";position:absolute;inset:9px;border-radius:3px;border:1px solid rgba(255,255,255,.12);pointer-events:none;z-index:4}
.bb-screen{
  border-radius:3px;aspect-ratio:16/9;position:relative;overflow:hidden;
  display:flex;flex-direction:column;justify-content:flex-end;padding:7%;
  transition:background 1s var(--ease);
}
.bb-kicker{font-family:'IBM Plex Mono',monospace;font-size:clamp(9px,.8vw,11px);letter-spacing:.22em;color:rgba(255,255,255,.75);text-transform:uppercase;margin-bottom:10px;transition:opacity .4s}
.bb-creative{font-family:'Anton',sans-serif;text-transform:uppercase;line-height:.98;font-size:clamp(24px,2.6vw,38px);color:#fff;transition:opacity .4s;text-wrap:balance}
.bb-creative .hl{color:var(--coral)}
.bb-brand{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.16em;margin-top:16px;color:rgba(255,255,255,.6);text-transform:uppercase;display:flex;justify-content:space-between;gap:10px;transition:opacity .4s}
.bb-orb{position:absolute;width:65%;aspect-ratio:1;border-radius:50%;filter:blur(70px);opacity:.55;top:-30%;right:-18%;transition:background 1s var(--ease);pointer-events:none}
.bb-screen::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px)}
.bb-live{position:absolute;top:7%;left:7%;display:flex;align-items:center;gap:7px;font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.18em;color:#fff;text-transform:uppercase}
.bb-live i{width:7px;height:7px;border-radius:50%;background:#FF4D4D;animation:pulse 1.6s infinite}
@keyframes pulse{50%{opacity:.25}}
.bb-catwalk{position:relative;height:7px;margin:5px 6% 0;background:linear-gradient(180deg,#3a4244,#10171a);border-radius:1px;box-shadow:0 5px 12px -7px rgba(2,10,10,.5)}
.bb-catwalk::before{content:"";position:absolute;left:1%;right:1%;bottom:7px;height:13px;background:
  repeating-linear-gradient(90deg,rgba(2,10,10,.5) 0 1.5px,transparent 1.5px 26px);
  border-top:1.5px solid rgba(2,10,10,.42)}
.bb-catwalk::after{content:"";position:absolute;inset:0 0 auto 0;height:1.5px;background:rgba(255,255,255,.18)}
.bb-pole{position:relative;display:flex;justify-content:center;height:150px;-webkit-mask:linear-gradient(#000 78%,transparent);mask:linear-gradient(#000 78%,transparent)}
.bb-pole i{display:block;width:26px;height:100%;background:linear-gradient(90deg,#050a0a 0%,#454d4d 42%,#222a2a 56%,#050a0a 100%)}
.bb-context{display:flex;gap:8px;justify-content:center;margin-top:6px;flex-wrap:wrap}
.chip{
  font-family:'IBM Plex Mono',monospace;font-size:12px;border:1.5px solid var(--line);
  background:transparent;padding:9px 16px;border-radius:999px;cursor:pointer;color:var(--muted);
  transition:all .3s var(--ease);
}
.chip:hover{border-color:var(--ink);color:var(--ink)}
.chip.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.bb-caption{text-align:center;margin-top:14px;font-size:13px;color:var(--muted)}
.bb-caption b{color:var(--red);font-weight:600}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr;gap:48px}.hero{min-height:auto;padding:120px 0 60px}body.fA .scroll-hint,body.fC .scroll-hint{display:none}}
.ticker{background:var(--ink);color:var(--paper);overflow:hidden;padding:13px 0;border-block:1px solid var(--ink)}
.ticker-track{display:flex;gap:56px;width:max-content;animation:scroll 30s linear infinite}
.ticker-track span{font-family:'IBM Plex Mono',monospace;font-size:12.5px;letter-spacing:.06em;white-space:nowrap;display:flex;gap:10px;align-items:center;color:var(--w-muted)}
.ticker-track b{color:var(--coral);font-weight:500}
.ticker-track i{font-style:normal;color:var(--red);font-size:9px}
@keyframes scroll{to{transform:translateX(-50%)}}
.logos{padding:64px 0 70px;border-bottom:1px solid var(--line)}
.logos .label{text-align:center;margin-bottom:34px}
.marquee-mask{overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.marquee{display:flex;gap:72px;width:max-content;animation:scroll 40s linear infinite}
.marquee span{font-weight:700;font-size:21px;color:var(--ink);opacity:.4;white-space:nowrap;transition:opacity .3s}
.marquee:hover{animation-play-state:paused}
.marquee span:hover{opacity:1}
@media(prefers-reduced-motion:reduce){.marquee,.ticker-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center;gap:24px}}
section{padding:130px 0}
.sec-head h2{font-size:clamp(38px,5vw,72px);margin:20px 0 18px;max-width:16ch}
.sec-head h2 .serif-acc{color:var(--red)}
.sec-head p{font-size:18px;color:var(--muted);max-width:56ch}
.sec-head{margin-bottom:64px}
.statement{padding:150px 0;border-bottom:1px solid var(--line)}
.statement p{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(30px,4.6vw,64px);line-height:1.06;max-width:21ch}
.statement p .dim{color:rgba(2,10,10,.22);transition:color .6s var(--ease)}
.statement p .serif-acc{color:var(--red)}
.statement .statement-sub{font-family:'Archivo',system-ui,sans-serif;text-transform:none;letter-spacing:0;font-weight:400;font-size:clamp(17px,1.5vw,21px);line-height:1.5;color:var(--muted);max-width:58ch;margin-top:30px}
.statement .statement-sub b{color:var(--ink);font-weight:600}
.perf{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:54px}
.perf-card{border:1.5px solid var(--line-strong);border-radius:18px;padding:30px 26px;display:flex;flex-direction:column;min-height:200px;transition:background .4s var(--ease),transform .3s var(--ease)}
.perf-card:hover{background:var(--ink);transform:translateY(-5px)}
.perf-card .k{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--red);transition:color .35s}
.perf-card .pv{font-family:'Anton',sans-serif;font-size:clamp(42px,3.8vw,58px);line-height:1;color:var(--ink);margin-top:auto;transition:color .35s}
.perf-card .pl{font-size:13.5px;color:var(--muted);margin-top:9px;padding-top:13px;border-top:1px dashed var(--line);transition:color .35s,border-color .35s}
.perf-card .pl b{color:var(--ink);font-weight:600;transition:color .35s}
.perf-card:hover .k{color:var(--coral)}
.perf-card:hover .pv{color:#fff}
.perf-card:hover .pl{color:var(--w-muted);border-color:var(--w-line)}
.perf-card:hover .pl b{color:#fff}
@media(max-width:980px){.perf{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.perf{grid-template-columns:1fr}.perf-card{min-height:auto}}
.ways{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1.5px solid var(--line-strong);border-radius:20px;overflow:hidden}
.way{padding:54px 48px;position:relative;display:flex;flex-direction:column;gap:18px;transition:background .45s var(--ease);min-height:430px}
.way+.way{border-left:1.5px solid var(--line-strong)}
.way .num{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.18em;color:var(--red);text-transform:uppercase}
.way h3{font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(26px,2.4vw,34px);line-height:1}
.way p{color:var(--muted);font-size:16.5px;max-width:42ch}
.way .who{margin-top:auto;padding-top:18px;border-top:1px dashed var(--line);font-size:14.5px;color:var(--muted)}
.way .who b{color:var(--ink)}
.way:hover{background:var(--mist)}
.way.way-dark{background:var(--ink);color:var(--paper)}
.way.way-dark .num{color:var(--coral)}
.way.way-dark p,.way.way-dark .who{color:var(--w-muted)}
.way.way-dark .who{border-color:var(--w-line)}
.way.way-dark .who b{color:#fff}
.way.way-dark:hover{background:var(--ink-2)}
.way .btn{margin-top:22px;align-self:flex-start}
.way .ghost-icon{position:absolute;right:28px;top:30px;font-family:'Anton',sans-serif;font-size:120px;line-height:1;color:rgba(2,10,10,.05);user-select:none;pointer-events:none}
.way-dark .ghost-icon{color:rgba(255,255,255,.05)}
@media(max-width:860px){.ways{grid-template-columns:1fr}.way+.way{border-left:none;border-top:1.5px solid var(--line-strong)}.way{min-height:auto}}
.steps{display:flex;flex-direction:column}
body.fA .step{
  display:grid;grid-template-columns:140px 1fr 1.2fr;gap:40px;align-items:baseline;
  padding:44px 0;border-top:1px solid var(--line);transition:padding .35s var(--ease);
}
body.fA .step:last-child{border-bottom:1px solid var(--line)}
body.fA .step .n{font-family:'Anton',sans-serif;font-size:clamp(40px,4vw,60px);color:transparent;-webkit-text-stroke:1.5px var(--ink);transition:color .4s var(--ease)}
body.fA .step:hover .n{color:var(--red);-webkit-text-stroke-color:var(--red)}
body.fA .step h3{font-size:clamp(20px,2vw,26px);font-weight:700}
body.fA .step p{color:var(--muted);font-size:16.5px}
@media(max-width:820px){body.fA .step{grid-template-columns:1fr;gap:10px;padding:34px 0}}
.blinky{background:var(--ink);color:var(--paper);border-radius:28px;margin:0 18px;padding:120px 0;position:relative;overflow:hidden}
.blinky::before{content:"";position:absolute;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(226,92,92,.28),transparent 65%);top:-25%;left:-15%;pointer-events:none}
.blinky .wrap{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;position:relative}
.blinky h2{font-size:clamp(38px,4.6vw,62px);margin:18px 0 20px;color:#fff;max-width:13ch}
.blinky h2 .serif-acc{color:var(--coral)}
.blinky .lede{color:var(--w-muted);font-size:17.5px;max-width:48ch}
.blinky-feats{list-style:none;margin-top:30px;display:flex;flex-direction:column}
.blinky-feats li{display:flex;gap:16px;align-items:flex-start;font-size:15.5px;color:var(--w-muted);padding:15px 0;border-top:1px solid var(--w-line)}
.blinky-feats li:last-child{border-bottom:1px solid var(--w-line)}
.blinky-feats li::before{content:"→";color:var(--coral);font-family:'IBM Plex Mono',monospace;flex-shrink:0;transition:transform .3s var(--ease)}
.blinky-feats li:hover::before{transform:translateX(5px)}
.blinky-feats b{color:#fff}
.blinky .btn-coral{margin-top:32px}
.chat{
  background:rgba(255,255,255,.04);border:1px solid var(--w-line);border-radius:18px;padding:26px;
  display:flex;flex-direction:column;gap:14px;font-size:14.5px;backdrop-filter:blur(6px);
}
.chat-head{display:flex;justify-content:space-between;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.18em;color:var(--w-muted);text-transform:uppercase;padding-bottom:14px;border-bottom:1px solid var(--w-line)}
.chat-head .on{color:var(--coral)}
.chat .msg{padding:14px 17px;border-radius:13px;max-width:92%;line-height:1.5;opacity:0;transform:translateY(14px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.chat.in .msg{opacity:1;transform:none}
.chat.in .msg:nth-child(2){transition-delay:.15s}
.chat.in .msg:nth-child(3){transition-delay:.55s}
.chat.in .msg:nth-child(4){transition-delay:1s}
.chat.in .msg:nth-child(5){transition-delay:1.4s}
.chat .user{background:var(--red);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.chat .bot{background:rgba(255,255,255,.07);color:rgba(255,255,255,.92);align-self:flex-start;border-bottom-left-radius:4px}
.chat .bot .tag{color:var(--coral);font-family:'IBM Plex Mono',monospace;font-size:11.5px;display:block;margin-bottom:7px;letter-spacing:.1em}
.chat .plan{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.chat .plan div{background:rgba(255,255,255,.06);border:1px solid var(--w-line);border-radius:9px;padding:11px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--w-muted)}
.chat .plan b{display:block;color:#fff;font-size:15px;font-family:'Archivo',sans-serif;margin-bottom:2px}
.chat-head .demo-tag{color:rgba(255,255,255,.38);letter-spacing:.1em}
.try-console{background:rgba(2,10,10,.5);border:1.5px solid rgba(246,141,141,.6);border-radius:20px;padding:24px 24px 20px;text-align:left;animation:ctaGlow 2.8s ease-in-out infinite;backdrop-filter:blur(4px)}
@keyframes ctaGlow{0%,100%{box-shadow:0 0 0 0 rgba(246,141,141,.08)}50%{box-shadow:0 0 44px -4px rgba(246,141,141,.45)}}
.try-console .lbl{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--coral);display:flex;align-items:center;gap:12px;margin-bottom:15px}
.try-console .lbl::after{content:"";flex:1;height:1px;background:rgba(246,141,141,.35)}
.try-console .lbl i{font-style:normal;animation:caret 1.1s steps(1) infinite}
@keyframes caret{50%{opacity:0}}
.chat-form{display:flex;gap:10px}
.chat-form input{flex:1;min-width:0;background:#fff;border:2px solid #fff;border-radius:999px;padding:17px 22px;color:var(--ink);font-family:'Archivo',system-ui,sans-serif;font-size:16px;outline:none;transition:border-color .25s,box-shadow .25s}
.chat-form input::placeholder{color:rgba(2,10,10,.45)}
.chat-form input:focus{border-color:var(--coral);box-shadow:0 0 0 4px rgba(246,141,141,.25)}
.chat-form button{flex-shrink:0;font-family:'Archivo',system-ui,sans-serif;font-weight:700;font-size:15.5px;padding:17px 28px;border-radius:999px;border:2px solid var(--coral);background:var(--coral);color:var(--ink);cursor:pointer;transition:background .25s,border-color .25s,transform .2s var(--ease)}
.chat-form button:hover{background:#fff;border-color:#fff;transform:translateY(-2px)}
.chat-hint{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.08em;color:rgba(255,255,255,.72);margin-top:12px}
.chat-hint b{color:var(--coral);font-weight:500}
@media(max-width:560px){.chat-form{flex-direction:column}.chat-form button{width:100%}}
.try-egs{margin-top:20px;padding-top:17px;border-top:1px dashed rgba(255,255,255,.14)}
.eg-lbl{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.42);display:block;margin-bottom:10px}
.eg-row{display:flex;flex-wrap:wrap;gap:8px}
.chat-eg{font-family:'Archivo',system-ui,sans-serif;font-size:12px;text-align:left;background:transparent;border:1px solid rgba(255,255,255,.13);color:rgba(255,255,255,.52);padding:7px 13px;border-radius:999px;cursor:pointer;transition:border-color .25s,color .25s,background .25s}
.chat-eg:hover{border-color:var(--coral);color:#fff;background:rgba(246,141,141,.1)}
@media(max-width:980px){.blinky .wrap{grid-template-columns:1fr;gap:50px}.blinky{margin:0;border-radius:0}}
.try{padding:24px 0 130px}
.try-inner{background:var(--ink);color:#fff;border-radius:28px;margin:0 18px;padding:100px 32px;text-align:center;position:relative;overflow:hidden}
.try-inner::before{content:"";position:absolute;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(246,141,141,.18),transparent 60%);top:-32%;right:-12%;pointer-events:none}
.try-inner::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px)}
.try-box{max-width:660px;margin:0 auto;position:relative;z-index:1}
.try h2{font-size:clamp(36px,5vw,64px);color:#fff;margin:18px 0 18px}
.try h2 .serif-acc{color:var(--coral)}
.try .lede{color:var(--w-muted);font-size:17.5px;max-width:44ch;margin:0 auto 30px}
@media(max-width:980px){.try-inner{margin:0;border-radius:0;padding:80px 24px}}
.planex-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start}
.planex-feats{list-style:none;margin-top:30px;display:flex;flex-direction:column}
.planex-feats li{display:flex;gap:16px;align-items:flex-start;font-size:15.5px;color:var(--muted);padding:15px 0;border-top:1px solid var(--line)}
.planex-feats li:last-child{border-bottom:1px solid var(--line)}
.planex-feats li::before{content:"→";color:var(--red);font-family:'IBM Plex Mono',monospace;flex-shrink:0;transition:transform .3s var(--ease)}
.planex-feats li:hover::before{transform:translateX(5px)}
.planex-feats b{color:var(--ink)}
.planex .btn{margin-top:32px}
.mp{border:1.5px solid var(--line-strong);border-radius:20px;overflow:hidden;background:var(--paper);box-shadow:0 36px 70px -34px rgba(2,10,10,.3)}
.mp-head{background:var(--ink);color:#fff;padding:17px 26px;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.mp-head .t{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.mp-head .t small{display:block;color:var(--w-muted);letter-spacing:.1em;margin-top:4px;font-size:10px}
.mp-status{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--coral);border:1px solid rgba(246,141,141,.45);padding:7px 13px;border-radius:999px;white-space:nowrap}
.mp-body{padding:24px 26px 26px}
.mp-lbl{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.mp-bar{display:flex;height:36px;border-radius:9px;overflow:hidden;border:1.5px solid var(--line-strong)}
.mp-bar span{display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.06em;white-space:nowrap;overflow:hidden}
.mp-bar .s1{width:42%;background:var(--ink);color:#fff}
.mp-bar .s2{width:22%;background:var(--red);color:#fff}
.mp-bar .s3{width:36%;background:var(--red-soft);color:var(--ink)}
.mp-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:9px;font-size:12px;color:var(--muted)}
.mp-legend i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:6px;vertical-align:baseline}
.mp-rows{margin-top:22px}
.mp-row{display:flex;justify-content:space-between;gap:16px;padding:15px 0;border-top:1px dashed var(--line);transition:background .25s}
.mp-row:hover{background:var(--mist)}
.mp-name{font-weight:700;font-size:15px}
.mp-sig{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--red);margin-top:5px}
.mp-meta{text-align:right;flex-shrink:0}
.mp-meta .h{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--muted)}
.mp-meta .p{font-weight:700;font-size:15px;margin-top:4px}
.mp-rule{margin-top:16px;background:var(--red-soft);border-radius:10px;padding:12px 16px;font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.04em;color:var(--red-deep)}
.mp-total{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px;padding-top:20px;border-top:1.5px solid var(--line-strong)}
.mp-total div{font-size:12px;color:var(--muted)}
.mp-total b{display:block;font-family:'Anton',sans-serif;font-weight:400;font-size:clamp(20px,1.9vw,26px);color:var(--ink);margin-bottom:3px}
@media(max-width:980px){.planex-grid{grid-template-columns:1fr;gap:44px}}
@media(max-width:560px){.mp-total{grid-template-columns:1fr 1fr}.mp-bar span{font-size:9px}}
.caps{display:grid;grid-template-columns:repeat(3,1fr);border:1.5px solid var(--line-strong);border-radius:20px;overflow:hidden}
.cap{padding:42px 36px;border-right:1.5px solid var(--line-strong);border-bottom:1.5px solid var(--line-strong);position:relative;overflow:hidden;isolation:isolate;min-height:240px;display:flex;flex-direction:column}
.cap:nth-child(3n){border-right:none}
.cap:nth-child(n+4){border-bottom:none}
.cap::before{content:"";position:absolute;inset:0;background:var(--ink);transform:translateY(101%);transition:transform .45s var(--ease);z-index:-1}
.cap:hover::before{transform:none}
.cap .k{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--red);text-transform:uppercase;margin-bottom:auto;transition:color .35s}
.cap h3{font-size:20px;font-weight:700;margin:26px 0 9px;transition:color .35s}
.cap p{font-size:15px;color:var(--muted);transition:color .35s}
.cap:hover .k{color:var(--coral)}
.cap:hover h3{color:#fff}
.cap:hover p{color:var(--w-muted)}
@media(max-width:980px){.caps{grid-template-columns:1fr 1fr}.cap:nth-child(3n){border-right:1.5px solid var(--line-strong)}.cap:nth-child(2n){border-right:none}.cap:nth-child(n+4){border-bottom:1.5px solid var(--line-strong)}.cap:nth-child(n+5){border-bottom:none}}
@media(max-width:640px){.caps{grid-template-columns:1fr}.cap{border-right:none!important;border-bottom:1.5px solid var(--line-strong)!important;min-height:auto}.cap:last-child{border-bottom:none!important}}
.proof{background:var(--mist);border-radius:28px;margin:0 18px}
.cases{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.case{
  background:var(--paper);border-radius:18px;padding:30px 26px;border:1.5px solid var(--line);
  display:flex;flex-direction:column;text-decoration:none;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s;
}
.case:hover{transform:translateY(-6px);box-shadow:0 26px 50px -22px rgba(178,52,52,.28);border-color:var(--red)}
.case .brand{font-weight:700;font-size:15px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}
.case .brand::after{content:"→";font-weight:400;color:var(--red);transition:transform .3s var(--ease)}
.case:hover .brand::after{transform:translateX(4px)}
.case .big{font-family:'Anton',sans-serif;font-size:clamp(38px,3.4vw,48px);color:var(--red);line-height:1}
.case .what{font-size:13.5px;color:var(--muted);margin:8px 0 20px;min-height:2.6em}
.case ul{list-style:none;display:flex;flex-direction:column;gap:8px;font-size:13.5px;color:var(--muted);margin-top:auto;padding-top:16px;border-top:1px dashed var(--line)}
.case ul b{color:var(--ink)}
@media(max-width:980px){.cases{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.cases{grid-template-columns:1fr}}
.compare-scroll{overflow-x:auto;border:1.5px solid var(--line-strong);border-radius:20px}
.compare table{width:100%;border-collapse:collapse;font-size:15px;min-width:760px}
.compare th,.compare td{padding:19px 22px;text-align:left;border-bottom:1px solid var(--line)}
.compare tbody tr:last-child td{border-bottom:none}
.compare tbody tr{transition:background .25s}
.compare tbody tr:hover{background:var(--mist)}
.compare thead th{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:var(--mist)}
.compare th.us,.compare td.us{background:var(--ink);color:#fff;font-weight:600}
.compare thead th.us{color:var(--coral)}
.compare td.us .yes{color:var(--coral);margin-right:8px}
.compare td .no{color:var(--muted)}
.nos{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.no-card{
  border:1.5px solid var(--line-strong);border-radius:20px;padding:46px 34px;background:var(--paper);
  transition:background .4s var(--ease),transform .3s var(--ease);position:relative;overflow:hidden;
}
.no-card:hover{background:var(--red);transform:translateY(-5px)}
.no-card .big-no{font-family:'Anton',sans-serif;font-size:clamp(50px,5vw,72px);line-height:1;transition:color .35s}
.no-card .big-no span{color:var(--red);transition:color .35s}
.no-card h4{font-size:19px;font-weight:700;margin:14px 0 6px;transition:color .35s}
.no-card p{font-size:15px;color:var(--muted);transition:color .35s}
.no-card:hover .big-no,.no-card:hover h4{color:#fff}
.no-card:hover .big-no span{color:var(--coral)}
.no-card:hover p{color:rgba(255,255,255,.78)}
@media(max-width:820px){.nos{grid-template-columns:1fr}}
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.faq-grid .sec-head{position:sticky;top:110px;margin:0}
body.fA details, body.fE details{border-bottom:1px solid var(--line)}
body.fA details summary, body.fE details summary{
  cursor:pointer;font-size:clamp(17px,1.6vw,20px);font-weight:600;list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;
  transition:color .25s;
}
body.fA details summary:hover, body.fE details summary:hover{color:var(--red)}
body.fA details summary::-webkit-details-marker, body.fE details summary::-webkit-details-marker{display:none}
body.fA details summary::after, body.fE details summary::after{content:"+";font-family:'Anton',sans-serif;font-size:26px;color:var(--red);transition:transform .35s var(--ease);flex-shrink:0}
body.fA details[open] summary::after, body.fE details[open] summary::after{transform:rotate(45deg)}
body.fA details .a, body.fE details .a{overflow:hidden;max-height:0;transition:max-height .45s var(--ease)}
body.fA details[open] .a, body.fE details[open] .a{max-height:300px}
body.fA details .a p{padding:0 0 26px;color:var(--muted);font-size:16px;max-width:62ch}
@media(max-width:920px){.faq-grid{grid-template-columns:1fr;gap:30px}.faq-grid .sec-head{position:static}}
body.fA .final{padding:20px 18px 110px}
body.fA .final-inner{
  background:var(--ink);border-radius:28px;padding:120px 32px;text-align:center;
  position:relative;overflow:hidden;
}
.final-inner::before{content:"";position:absolute;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(246,141,141,.16),transparent 60%);bottom:-50%;left:15%;pointer-events:none}
.final-inner::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px)}
body.fA .final h2{font-size:clamp(44px,6.4vw,92px);color:#fff;max-width:13ch;margin:18px auto 22px}
.final h2 .serif-acc{color:var(--coral)}
body.fA .final p, body.fC .final p{color:var(--w-muted);margin-bottom:40px;font-size:17.5px}
.final .hero-ctas{justify-content:center;position:relative;z-index:1}
.final-req{position:relative;z-index:1;max-width:600px;margin:56px auto 0;padding-top:40px;border-top:1px solid var(--w-line)}
.final-req .fr-k{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--coral);margin-bottom:14px}
.final-req p{color:var(--w-muted);font-size:15.5px;max-width:46ch;margin:0 auto 24px}
.final-req p b{color:#fff;font-weight:600}
body.fA footer, body.fC footer, body.fD footer, body.fE footer{padding:80px 0 0;overflow:hidden}
.foot-grid{display:flex;justify-content:space-between;gap:48px;flex-wrap:wrap;padding-bottom:64px}
.foot-grid .logo{font-size:19px}
.foot-about{max-width:30ch;margin-top:14px;font-size:14.5px;color:var(--muted)}
.foot-cities{margin-top:18px;font-size:11.5px;letter-spacing:.14em;color:var(--red)}
.foot-cols{display:flex;gap:70px;flex-wrap:wrap;font-size:14.5px}
.foot-cols h4{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:16px;color:var(--ink)}
.foot-cols ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.foot-cols a{text-decoration:none;color:var(--muted);transition:color .25s}
.foot-cols a:hover{color:var(--red)}
.foot-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--muted);padding:22px 0;border-top:1px solid var(--line)}
.foot-bottom a{color:inherit}
body.fA .foot-mega, body.fB .foot-mega{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(64px,13vw,196px);line-height:.84;letter-spacing:.01em;text-align:center;color:var(--ink);user-select:none;white-space:nowrap;transform:translateY(.12em)}
body.fA .foot-mega span, body.fB .foot-mega span{color:var(--red)}
body.fB, body.fC{font-family:'Archivo',system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.fB img, body.fC img, body.fD img, body.fE img{max-width:100%;display:block}
body.fB .eyebrow, body.fC .eyebrow, body.fD .eyebrow, body.fE .eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:12px}
@media(prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none}
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
.btn[disabled]{opacity:.4;pointer-events:none}
body.fB nav, body.fC nav, body.fD nav, body.fE nav{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .4s,border-color .4s;border-bottom:1px solid transparent}
.req{padding:138px 0 90px}
.req-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:60px;align-items:start}
@media(max-width:980px){.req-grid{grid-template-columns:1fr;gap:46px}}
.req-intro h1{font-size:clamp(40px,5vw,72px);margin:20px 0 22px;max-width:12ch}
.req-intro h1 .serif-acc{color:var(--red)}
.req-intro .lede{font-size:17.5px;color:var(--muted);max-width:42ch}
.req-intro .lede strong{color:var(--ink);font-weight:600}
.req-points{list-style:none;margin-top:32px;display:flex;flex-direction:column}
.req-points li{display:flex;gap:15px;align-items:flex-start;font-size:15px;color:var(--muted);padding:16px 0;border-top:1px solid var(--line)}
.req-points li:last-child{border-bottom:1px solid var(--line)}
.req-points li::before{content:"→";color:var(--red);font-family:'IBM Plex Mono',monospace;flex-shrink:0;transition:transform .3s var(--ease)}
.req-points li:hover::before{transform:translateX(5px)}
.req-points b{color:var(--ink)}
.intake{background:var(--ink);color:#fff;border-radius:24px;overflow:hidden;position:relative;box-shadow:0 44px 90px -42px rgba(2,10,10,.55),0 0 120px rgba(246,141,141,.12)}
.intake::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px);z-index:0}
.intake-head{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 26px;border-bottom:1px solid var(--w-line);font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.intake-head .who{display:flex;align-items:center;gap:10px}
.intake-head .who b{font-weight:500;color:#fff}
.intake-head .who i{width:8px;height:8px;border-radius:50%;background:var(--coral);display:inline-block;animation:pulse 1.6s infinite;font-style:normal}
@keyframes pulse{50%{opacity:.3}}
.intake-head .count{color:var(--w-muted)}
.intake-prog{position:relative;z-index:1;height:3px;background:rgba(255,255,255,.08)}
.intake-prog i{display:block;height:100%;width:25%;background:var(--coral);transition:width .5s var(--ease)}
.intake-body{position:relative;z-index:1;padding:32px 32px 34px}
@media(max-width:560px){.intake-body{padding:26px 22px 28px}}
body.fB .step{display:none}
body.fA .step.active,body.fB .step.active{display:block;animation:stepIn .5s var(--ease)}
@keyframes stepIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.q-kicker{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--coral);display:block;margin-bottom:14px}
.q{font-size:clamp(21px,2.5vw,28px);font-weight:700;line-height:1.18;letter-spacing:-.01em}
.q .serif-acc{color:var(--coral);font-weight:400}
.q-help{color:var(--w-muted);font-size:14.5px;margin-top:11px;max-width:46ch}
.opts{display:flex;flex-direction:column;gap:11px;margin-top:26px}
.opt{position:relative;display:flex;align-items:center;gap:15px;padding:16px 18px;border:1.5px solid var(--w-line);border-radius:14px;cursor:pointer;transition:border-color .25s,background .25s,transform .15s var(--ease)}
.opt:hover{border-color:rgba(246,141,141,.55);background:rgba(255,255,255,.03)}
.opt input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.opt .box{width:23px;height:23px;border-radius:7px;border:1.5px solid var(--w-line);flex-shrink:0;display:grid;place-items:center;transition:border-color .2s}
.opt .box::after{content:"";width:11px;height:11px;border-radius:3px;background:var(--coral);transform:scale(0);transition:transform .2s var(--ease)}
.opt input:checked~.box{border-color:var(--coral)}
.opt input:checked~.box::after{transform:scale(1)}
.opt.sel{border-color:var(--coral);background:rgba(246,141,141,.1)}
.opt .lab{flex:1}
.opt .t{font-weight:600;font-size:15.5px}
.opt .s{display:block;color:var(--w-muted);font-size:12.5px;margin-top:2px;font-weight:400;font-family:'IBM Plex Mono',monospace;letter-spacing:.02em}
.req-label{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--w-muted);display:block;margin:0 0 9px}
.req-label .req-star{color:var(--coral)}
.field{width:100%;background:rgba(255,255,255,.05);border:1.5px solid var(--w-line);border-radius:13px;padding:15px 18px;color:#fff;font-family:'Archivo',system-ui,sans-serif;font-size:15px;outline:none;transition:border-color .25s,background .25s}
.field::placeholder{color:rgba(255,255,255,.4)}
.field:focus{border-color:var(--coral);background:rgba(255,255,255,.08)}
.field.invalid{border-color:#FF7A7A;background:rgba(255,122,122,.06)}
textarea.field{min-height:104px;resize:vertical;line-height:1.5}
.fieldset{margin-top:24px}
.fieldset+.fieldset{margin-top:18px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.field-row{grid-template-columns:1fr}}
.err{color:#FF9A9A;font-size:13px;margin-top:10px;display:none;font-family:'IBM Plex Mono',monospace;letter-spacing:.02em}
.err.show{display:block}
.brief-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:12px;flex-wrap:wrap}
.eg-toggle{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--coral);background:none;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:4px 0;transition:color .25s}
.eg-toggle:hover{color:#fff}
.eg-toggle .chev{transition:transform .3s var(--ease);display:inline-block}
.eg-toggle[aria-expanded="true"] .chev{transform:rotate(90deg)}
.brief-count{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.06em;color:rgba(255,255,255,.45)}
.brief-count.ok{color:var(--coral)}
.eg-panel{overflow:hidden;max-height:0;transition:max-height .5s var(--ease)}
.eg-panel.open{max-height:760px;margin-top:16px}
.eg-intro{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--w-muted);margin-bottom:12px}
.eg-item{display:block;width:100%;text-align:left;background:rgba(255,255,255,.04);border:1.5px solid var(--w-line);border-radius:12px;padding:14px 16px;color:var(--w-muted);font-size:13.5px;line-height:1.55;cursor:pointer;transition:border-color .25s,color .25s,background .25s;font-family:inherit}
.eg-item+.eg-item{margin-top:10px}
.eg-item:hover{border-color:var(--coral);color:#fff;background:rgba(246,141,141,.08)}
.eg-item .eg-use{display:block;font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--coral);margin-top:10px}
.step-nav{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:30px}
.btn-back{background:none;border:none;color:var(--w-muted);cursor:pointer;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:8px 4px;transition:color .25s}
.btn-back:hover{color:#fff}
.btn-back[hidden]{visibility:hidden}
.verdict{display:none}
.verdict.active{display:block;animation:stepIn .5s var(--ease)}
.verdict .vk{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;display:flex;align-items:center;gap:10px;margin-bottom:16px}
.verdict .vk i{width:8px;height:8px;border-radius:50%;display:inline-block;font-style:normal}
.verdict.fit .vk{color:var(--coral)}
.verdict.fit .vk i{background:var(--coral)}
.verdict.selfserve .vk{color:#fff}
.verdict.selfserve .vk i{background:#fff}
.verdict h3{font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(28px,3.4vw,42px);line-height:1.02;margin-bottom:18px}
.verdict h3 .serif-acc{color:var(--coral)}
.verdict p{color:var(--w-muted);font-size:16px;max-width:50ch;margin-bottom:16px}
.verdict p b{color:#fff;font-weight:600}
.verdict .threshold{background:rgba(246,141,141,.1);border:1.5px solid rgba(246,141,141,.4);border-radius:13px;padding:15px 18px;font-family:'IBM Plex Mono',monospace;font-size:12.5px;letter-spacing:.02em;color:var(--coral);margin:6px 0 22px}
.verdict .recap{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 26px}
.verdict .recap span{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.06em;color:var(--w-muted);border:1px solid var(--w-line);border-radius:999px;padding:7px 13px}
.verdict .recap b{color:#fff;font-weight:500}
.v-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}
body.fB footer{padding:80px 0 0;overflow:hidden;border-top:1px solid var(--line);margin-top:40px}
body.fC .logo i, body.fD .logo i, body.fE .logo i{width:10px;height:10px;border-radius:50%;background:var(--coral);display:inline-block;animation:blink 3.4s infinite}
.nav-links a.active{color:var(--ink)}
.nav-links a.active::after{transform:scaleX(1)}
.cs-hero{padding:170px 0 120px;position:relative}
body.fC .scroll-hint{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.2em;color:var(--muted);text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:8px}
@media(max-width:980px){body.fA .scroll-hint,body.fC .scroll-hint{display:none}.cs-hero{padding-bottom:70px}}
.cs-hero h1{font-size:clamp(54px,8vw,118px);margin:22px 0 24px;max-width:11ch}
.cs-hero h1 .serif-acc{color:var(--red)}
.cs-hero .lede{font-size:clamp(17px,1.4vw,20px);color:var(--muted);max-width:54ch}
.cs-hero .lede strong{color:var(--ink);font-weight:600}
.statbar{display:grid;grid-template-columns:repeat(4,1fr);border-block:1.5px solid var(--line-strong);margin-top:64px}
.statbar .stat{padding:34px 28px;border-right:1px solid var(--line)}
.statbar .stat:last-child{border-right:none}
.statbar .big{font-family:'Anton',sans-serif;font-size:clamp(34px,3.6vw,52px);line-height:1;color:var(--ink)}
.statbar .big .u{color:var(--red);font-size:.6em}
.statbar .lbl{font-size:13.5px;color:var(--muted);margin-top:8px}
@media(max-width:880px){.statbar{grid-template-columns:1fr 1fr}.statbar .stat:nth-child(2){border-right:none}.statbar .stat:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:480px){.statbar{grid-template-columns:1fr}.statbar .stat{border-right:none!important;border-bottom:1px solid var(--line)}.statbar .stat:last-child{border-bottom:none}}
.featured{padding:90px 0}
.feat-board{display:block;text-decoration:none;perspective:1400px}
.feat-frame{background:#060606;border-radius:14px;padding:15px;box-shadow:0 50px 100px -34px rgba(2,10,10,.55),0 0 130px rgba(246,141,141,.18);transition:transform .25s ease-out;transform-style:preserve-3d;position:relative}
.feat-frame::after{content:"";position:absolute;inset:0;border-radius:14px;border:1px solid rgba(255,255,255,.1);pointer-events:none}
.feat-screen{border-radius:7px;aspect-ratio:21/9;position:relative;overflow:hidden;background:linear-gradient(150deg,#140404,#3A0E0E)}
.feat-screen img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55;transition:opacity .5s,transform .8s var(--ease)}
.feat-board:hover .feat-screen img{opacity:.68;transform:scale(1.03)}
.feat-screen::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(2,6,6,.92) 18%,rgba(2,6,6,.25) 60%,rgba(2,6,6,.55));z-index:1}
.feat-screen::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px);z-index:3}
.feat-content{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding:5% 6%}
.feat-live{position:absolute;top:6%;left:6%;display:flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;color:#fff;text-transform:uppercase}
.feat-live i{width:7px;height:7px;border-radius:50%;background:#FF4D4D;animation:pulse 1.6s infinite}
.feat-tag{position:absolute;top:6%;right:6%;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase;border:1px solid rgba(246,141,141,.4);padding:7px 13px;border-radius:999px}
.feat-kicker{font-family:'IBM Plex Mono',monospace;font-size:clamp(10px,.9vw,12px);letter-spacing:.2em;color:var(--coral);text-transform:uppercase;margin-bottom:14px}
.feat-stat{font-family:'Anton',sans-serif;text-transform:uppercase;color:#fff;font-size:clamp(44px,7vw,110px);line-height:.9}
.feat-stat .serif-acc{color:var(--coral);font-size:.55em;display:block;margin-top:10px}
.feat-meta{display:flex;gap:34px;margin-top:24px;flex-wrap:wrap}
.feat-meta div{font-size:13px;color:var(--w-muted)}
.feat-meta b{display:block;font-family:'IBM Plex Mono',monospace;font-size:16px;color:#fff;font-weight:500}
.feat-read{margin-top:26px;display:inline-flex;align-items:center;gap:10px;color:#fff;font-weight:600;font-size:15px}
.feat-read .arr{color:var(--coral);transition:transform .3s var(--ease)}
.feat-board:hover .feat-read .arr{transform:translateX(5px)}
.feat-catwalk{position:relative;height:8px;margin:6px 5% 0;background:linear-gradient(180deg,#3a4244,#10171a);border-radius:1px;box-shadow:0 6px 14px -8px rgba(2,10,10,.5)}
.feat-catwalk::before{content:"";position:absolute;left:1%;right:1%;bottom:8px;height:15px;background:repeating-linear-gradient(90deg,rgba(2,10,10,.5) 0 1.5px,transparent 1.5px 30px);border-top:1.5px solid rgba(2,10,10,.42)}
.feat-catwalk::after{content:"";position:absolute;inset:0 0 auto 0;height:1.5px;background:rgba(255,255,255,.18)}
.feat-pole{position:relative;display:flex;justify-content:center;height:130px;-webkit-mask:linear-gradient(#000 76%,transparent);mask:linear-gradient(#000 76%,transparent)}
.feat-pole i{display:block;width:30px;height:100%;background:linear-gradient(90deg,#050a0a 0%,#454d4d 42%,#222a2a 56%,#050a0a 100%)}
@media(max-width:900px){.feat-screen{aspect-ratio:16/10}}
@media(max-width:760px){.feat-screen{aspect-ratio:4/5}.feat-meta{gap:20px}}
.filters{position:sticky;top:72px;z-index:60;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border-block:1px solid var(--line);padding:16px 0}
.filters .wrap{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.filters .lbl{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-right:8px}
.fbtn{font-family:'IBM Plex Mono',monospace;font-size:12.5px;border:1.5px solid var(--line);background:transparent;padding:9px 17px;border-radius:999px;cursor:pointer;color:var(--muted);transition:all .3s var(--ease)}
.fbtn:hover{border-color:var(--ink);color:var(--ink)}
.fbtn.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.fbtn .ct{color:var(--coral);margin-left:6px}
.fbtn:not(.active) .ct{color:var(--red)}
.cs-grid-sec{padding:70px 0 110px}
.cs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
body.fC .cs-card{display:flex;flex-direction:column;text-decoration:none;transition:opacity .45s var(--ease),transform .45s var(--ease)}
body.fC .cs-card.hide,body.fD .cs-card.hide,body.fE .cs-card.hide{opacity:0;transform:scale(.94);pointer-events:none;position:absolute;visibility:hidden}
.cc-frame{background:#060606;border-radius:10px;padding:9px;box-shadow:0 22px 44px -20px rgba(2,10,10,.4);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
body.fC .cs-card:hover .cc-frame{transform:translateY(-7px) rotateX(1.5deg);box-shadow:0 36px 64px -24px rgba(178,52,52,.45),0 0 70px rgba(246,141,141,.14)}
.cc-screen{border-radius:5px;aspect-ratio:16/10;position:relative;overflow:hidden;background:linear-gradient(150deg,#120404,#2E0C0C)}
.cc-screen img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5;transition:opacity .45s,transform .7s var(--ease)}
.cs-card:hover .cc-screen img{opacity:.66;transform:scale(1.05)}
.cc-screen::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,6,6,.25),rgba(2,6,6,.82) 78%);z-index:1}
.cc-screen::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 3px);z-index:3}
.cc-on{position:absolute;z-index:2;inset:0;padding:18px;display:flex;flex-direction:column;justify-content:flex-end}
.cc-brand{position:absolute;top:16px;left:18px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.85)}
.cc-cat{position:absolute;top:14px;right:16px;font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--coral);border:1px solid rgba(246,141,141,.4);padding:5px 10px;border-radius:999px}
body.fC .cc-stat{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(34px,3vw,44px);line-height:.95;color:#fff}
.cc-stat em{font-style:normal;color:var(--coral)}
.cc-what{font-size:12.5px;color:var(--w-muted);margin-top:7px}
.cc-legs{display:flex;justify-content:center;gap:32%;height:26px}
.cc-legs i{width:6px;background:linear-gradient(var(--ink),transparent);display:block;opacity:.5}
.cc-body{padding:4px 6px 0}
body.fC .cc-title{font-size:18.5px;font-weight:700;line-height:1.32;transition:color .25s}
.cs-card:hover .cc-title{color:var(--red)}
.cc-sub{display:flex;gap:22px;margin-top:12px;padding-top:12px;border-top:1px dashed var(--line)}
.cc-sub div{font-size:12.5px;color:var(--muted)}
.cc-sub b{display:block;font-family:'IBM Plex Mono',monospace;font-size:14.5px;color:var(--ink);font-weight:500}
.cc-link{margin-top:14px;font-size:14px;font-weight:600;color:var(--red);display:inline-flex;align-items:center;gap:8px}
.cc-link .arr{transition:transform .3s var(--ease)}
.cs-card:hover .cc-link .arr{transform:translateX(4px)}
.cs-empty{display:none;text-align:center;padding:80px 0;color:var(--muted);font-size:17px}
@media(max-width:980px){.cs-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.cs-grid{grid-template-columns:1fr}}
.measure{background:var(--ink);color:#fff;border-radius:28px;margin:0 18px;padding:110px 0;position:relative;overflow:hidden}
.measure::before{content:"";position:absolute;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(246,141,141,.16),transparent 62%);top:-30%;right:-12%;pointer-events:none}
.measure h2{font-size:clamp(36px,4.6vw,62px);margin:18px 0 16px;max-width:16ch}
.measure h2 .serif-acc{color:var(--coral)}
.measure .lede{color:var(--w-muted);font-size:17.5px;max-width:56ch;margin-bottom:56px}
.m-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--w-line);border-radius:18px;overflow:hidden}
.m-step{padding:38px 34px;border-right:1px solid var(--w-line);transition:background .35s var(--ease)}
.m-step:last-child{border-right:none}
.m-step:hover{background:rgba(255,255,255,.04)}
.m-step .k{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase;display:block;margin-bottom:18px}
.m-step h3{font-size:19px;font-weight:700;margin-bottom:9px;color:#fff}
.m-step p{font-size:14.5px;color:var(--w-muted)}
@media(max-width:880px){.m-steps{grid-template-columns:1fr}.m-step{border-right:none;border-bottom:1px solid var(--w-line)}.m-step:last-child{border-bottom:none}}
body.fC .final{padding:90px 18px 110px}
body.fC .final-inner{background:var(--ink);border-radius:28px;padding:110px 32px;text-align:center;position:relative;overflow:hidden}
body.fC .final h2{font-size:clamp(40px,6vw,84px);color:#fff;max-width:15ch;margin:18px auto 22px}
.final .ctas{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;position:relative;z-index:1}
body.fC .foot-mega, body.fD .foot-mega, body.fE .foot-mega{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(64px,13vw,196px);line-height:.84;text-align:center;color:var(--ink);user-select:none;white-space:nowrap;transform:translateY(.12em)}
body.fC .foot-mega span, body.fD .foot-mega span, body.fE .foot-mega span{color:var(--coral)}
.ab-hero{padding:170px 0 90px;position:relative}
.ab-hero h1{font-size:clamp(48px,6.8vw,100px);margin:22px 0 24px;max-width:14ch}
.ab-hero h1 .serif-acc{color:var(--red)}
.ab-hero .lede{font-size:clamp(17px,1.4vw,20px);color:var(--muted);max-width:56ch;margin-bottom:34px}
.ab-hero .lede strong{color:var(--ink)}
.ab-ctas{display:flex;gap:16px;flex-wrap:wrap}
.ab-story{padding:30px 0 110px}
.st-row{display:grid;grid-template-columns:140px 1fr 1.2fr;gap:40px;align-items:baseline;padding:44px 0;border-top:1px solid var(--line)}
.st-row:last-child{border-bottom:1px solid var(--line)}
.st-row .n{font-family:'Anton',sans-serif;font-size:clamp(40px,4vw,60px);color:transparent;-webkit-text-stroke:1.5px var(--ink);transition:color .4s var(--ease),-webkit-text-stroke-color .4s}
.st-row:hover .n{color:var(--red);-webkit-text-stroke-color:var(--red)}
.st-row h3{font-size:clamp(20px,2vw,26px);font-weight:700}
.st-row p{color:var(--muted);font-size:16.5px}
@media(max-width:820px){.st-row{grid-template-columns:1fr;gap:10px;padding:34px 0}}
.reddit{padding:0 0 110px}
.rd-frame{background:#060606;border-radius:14px;padding:15px;box-shadow:0 50px 100px -34px rgba(2,10,10,.55),0 0 130px rgba(246,141,141,.18);position:relative}
.rd-frame::after{content:"";position:absolute;inset:0;border-radius:14px;border:1px solid rgba(255,255,255,.1);pointer-events:none}
.rd-screen{border-radius:7px;aspect-ratio:21/8;position:relative;overflow:hidden;background:linear-gradient(150deg,#140404,#3A0E0E);display:flex;flex-direction:column;justify-content:center;padding:5% 6%}
.rd-screen::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px)}
.rd-k{font-family:'IBM Plex Mono',monospace;font-size:clamp(10px,.9vw,12px);letter-spacing:.2em;color:var(--coral);text-transform:uppercase;margin-bottom:14px}
.rd-t{font-family:'Anton',sans-serif;text-transform:uppercase;color:#fff;font-size:clamp(28px,4.6vw,64px);line-height:.95}
.rd-t em{font-style:normal;color:var(--coral)}
.rd-s{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.14em;color:var(--w-muted);text-transform:uppercase;margin-top:18px}
@media(max-width:760px){.rd-screen{aspect-ratio:4/3}}
.team{padding:0 0 110px}
.lead-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:22px}
.lead{border:1.5px solid var(--line-strong);border-radius:18px;padding:30px 28px;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.lead:hover{transform:translateY(-5px);box-shadow:0 24px 48px -22px rgba(178,52,52,.3)}
.lead .av{position:relative;width:84px;height:84px;border-radius:50%;background:var(--ink);color:var(--coral);display:flex;align-items:center;justify-content:center;font-family:'Anton',sans-serif;font-size:26px;letter-spacing:.04em;margin-bottom:18px;overflow:hidden;border:2px solid var(--line)}
.lead .av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lead:hover .av{border-color:var(--coral)}
.lead h3{font-size:19px;font-weight:700}
.lead .role{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin:4px 0 14px;display:block}
.lead .soc{display:flex;gap:8px}
.lead .soc a{font-family:'IBM Plex Mono',monospace;font-size:11.5px;border:1.5px solid var(--line);border-radius:999px;padding:6px 13px;text-decoration:none;color:var(--muted);transition:all .25s}
.lead .soc a:hover{border-color:var(--ink);color:var(--ink)}
@media(max-width:920px){.lead-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.lead-grid{grid-template-columns:1fr}}
.crew{border-top:1px solid var(--line);padding-top:34px}
.crew h4{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:20px}
.crew ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.crew li{font-size:14.5px;font-weight:600;border:1.5px solid var(--line);border-radius:999px;padding:9px 18px;transition:all .25s}
.crew li span{color:var(--muted);font-weight:400}
.crew li:hover{border-color:var(--red);color:var(--red)}
.mission{background:var(--ink);color:#fff;border-radius:28px;margin:0 18px 110px;padding:110px 0;position:relative;overflow:hidden}
.mission::before{content:"";position:absolute;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(246,141,141,.16),transparent 62%);top:-28%;left:-12%;pointer-events:none}
.mission h2{font-size:clamp(36px,4.8vw,64px);margin:18px 0 18px;max-width:15ch;color:#fff}
.mission h2 .serif-acc{color:var(--coral)}
.mission .lede{color:var(--w-muted);font-size:18px;max-width:56ch;margin-bottom:54px}
.mission .lede b{color:#fff}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--w-line);border-radius:18px;overflow:hidden;margin-bottom:64px}
.pillar{padding:38px 34px;border-right:1px solid var(--w-line);transition:background .35s}
.pillar:last-child{border-right:none}
.pillar:hover{background:rgba(255,255,255,.04)}
.pillar .k{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase;display:block;margin-bottom:18px}
.pillar h3{font-size:19px;font-weight:700;margin-bottom:9px;color:#fff}
.pillar p{font-size:14.5px;color:var(--w-muted)}
@media(max-width:880px){.pillars{grid-template-columns:1fr}.pillar{border-right:none;border-bottom:1px solid var(--w-line)}.pillar:last-child{border-bottom:none}}
.jargon h4{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--w-muted);margin-bottom:22px}
.jx{display:grid;grid-template-columns:1fr 56px 1fr;gap:0 22px;align-items:center;padding:20px 0;border-top:1px solid var(--w-line)}
.jx:last-of-type{border-bottom:1px solid var(--w-line)}
.jx .old{font-family:'Anton',sans-serif;font-size:clamp(18px,2vw,26px);text-transform:uppercase;color:rgba(255,255,255,.34);text-decoration:line-through;text-decoration-color:rgba(246,141,141,.7);text-decoration-thickness:2.5px}
.jx .arr2{font-family:'IBM Plex Mono',monospace;color:var(--coral);text-align:center;font-size:18px}
.jx .new b{font-family:'Anton',sans-serif;font-weight:400;font-size:clamp(18px,2vw,26px);text-transform:uppercase;color:#fff;display:block}
.jx .new span{font-size:13px;color:var(--w-muted)}
.jx:hover .old{color:rgba(255,255,255,.5)}
@media(max-width:700px){.jx{grid-template-columns:1fr;gap:6px}.jx .arr2{text-align:left}}
.mission .proof-link{margin-top:46px}
.offices{background:var(--ink);color:#fff;border-radius:28px;margin:0 18px;padding:80px 0;position:relative;overflow:hidden}
.offices::before{content:"";position:absolute;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(246,141,141,.14),transparent 62%);top:-30%;right:-12%;pointer-events:none}
.offices h2{font-size:clamp(30px,4vw,52px);margin:16px 0 34px;color:#fff}
.offices h2 .serif-acc{color:var(--coral)}
.city-row{display:flex;flex-wrap:wrap;gap:12px}
.city-row span{font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--w-line);border-radius:999px;padding:12px 22px;color:rgba(255,255,255,.85);transition:all .25s}
.city-row span:hover{border-color:var(--coral);color:var(--coral)}
.hire{background:var(--ink);color:#fff;border-radius:28px;margin:0 18px 90px;padding:90px 0;position:relative;overflow:hidden}
.hire::before{content:"";position:absolute;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(246,141,141,.14),transparent 62%);top:-30%;right:-12%;pointer-events:none}
.hire h2{font-size:clamp(32px,4.2vw,54px);margin:16px 0 16px;color:#fff;max-width:16ch}
.hire h2 .serif-acc{color:var(--coral)}
.hire .lede{color:var(--w-muted);font-size:16.5px;max-width:54ch;margin-bottom:46px}
.hire-steps{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--w-line);border-radius:18px;overflow:hidden}
.hire-step{padding:36px 32px;border-right:1px solid var(--w-line);transition:background .35s}
.hire-step:last-child{border-right:none}
.hire-step:hover{background:rgba(255,255,255,.04)}
.hire-step .k{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase;display:block;margin-bottom:16px}
.hire-step h3{font-size:18.5px;font-weight:700;margin-bottom:8px;color:#fff}
.hire-step p{font-size:14.5px;color:var(--w-muted)}
@media(max-width:880px){.hire-steps{grid-template-columns:1fr}.hire-step{border-right:none;border-bottom:1px solid var(--w-line)}.hire-step:last-child{border-bottom:none}}
.cr-hero{padding:170px 0 70px}
.cr-hero h1{font-size:clamp(48px,6.8vw,100px);margin:22px 0 24px;max-width:13ch}
.cr-hero h1 .serif-acc{color:var(--red)}
.cr-hero .lede{font-size:clamp(17px,1.4vw,20px);color:var(--muted);max-width:54ch}
.why{display:grid;grid-template-columns:repeat(4,1fr);border-block:1.5px solid var(--line-strong);margin-top:60px}
.why div{padding:30px 26px;border-right:1px solid var(--line)}
.why div:last-child{border-right:none}
.why b{display:block;font-family:'Anton',sans-serif;font-weight:400;font-size:21px;text-transform:uppercase;margin-bottom:6px}
.why p{font-size:13.5px;color:var(--muted)}
@media(max-width:880px){.why{grid-template-columns:1fr 1fr}.why div:nth-child(2){border-right:none}.why div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:480px){.why{grid-template-columns:1fr}.why div{border-right:none!important;border-bottom:1px solid var(--line)}.why div:last-child{border-bottom:none}}
.jobs-sec{padding:90px 0 110px}
.job{border:1.5px solid var(--line-strong);border-radius:18px;overflow:hidden;margin-bottom:18px;transition:opacity .4s var(--ease),transform .4s var(--ease)}
.job.hide{display:none}
.job summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr auto auto auto;gap:26px;align-items:center;padding:26px 30px;transition:background .25s}
.job summary::-webkit-details-marker{display:none}
.job summary:hover{background:var(--mist)}
.job .jt h3{font-size:21px;font-weight:700}
.job .jt .dept{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);display:block;margin-top:4px}
.job .meta{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--muted);white-space:nowrap}
.job .plus{font-family:'Anton',sans-serif;font-size:26px;color:var(--red);transition:transform .35s var(--ease)}
.job[open] .plus{transform:rotate(45deg)}
.job-body{padding:6px 30px 34px;border-top:1px dashed var(--line)}
.job-body h4{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin:26px 0 10px}
.job-body p{font-size:16px;color:rgba(2,10,10,.78);margin-bottom:12px;max-width:70ch}
.job-body ul{list-style:none;display:flex;flex-direction:column;gap:9px;max-width:70ch}
.job-body li{font-size:15.5px;color:rgba(2,10,10,.78);display:flex;gap:12px}
.job-body li::before{content:"→";color:var(--red);font-family:'IBM Plex Mono',monospace;flex-shrink:0}
.job-body .btn{margin-top:28px}
@media(max-width:760px){.job summary{grid-template-columns:1fr auto}.job .meta{display:none}}
.jobs-empty{display:none;text-align:center;padding:60px 0;color:var(--muted);font-size:17px}
.jobs-empty a{color:var(--red)}
body.fD, body.fE{font-family:'Archivo',system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.progress{position:fixed;top:0;left:0;height:3px;width:100%;z-index:120;background:transparent}
.progress i{display:block;height:100%;width:0;background:var(--red);transition:width .1s linear}
.cd-hero{padding:120px 0 0}
.crumb{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;display:inline-flex;gap:10px;align-items:center;text-decoration:none;margin-bottom:30px}
.crumb:hover{color:var(--red)}
.hero-board{perspective:1400px}
.hb-frame{background:#060606;border-radius:14px;padding:15px;box-shadow:0 50px 100px -34px rgba(2,10,10,.55),0 0 130px rgba(246,141,141,.18);transition:transform .25s ease-out;transform-style:preserve-3d;position:relative}
.hb-frame::after{content:"";position:absolute;inset:0;border-radius:14px;border:1px solid rgba(255,255,255,.1);pointer-events:none}
.hb-screen{border-radius:7px;aspect-ratio:21/9;position:relative;overflow:hidden;background:linear-gradient(150deg,#140404,#3A0E0E)}
.hb-screen img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.hb-screen::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(2,6,6,.93) 22%,rgba(2,6,6,.3) 64%,rgba(2,6,6,.55));z-index:1}
.hb-screen::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px);z-index:3}
.hb-content{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding:5% 6%}
.hb-live{position:absolute;top:6%;left:6%;display:flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;color:#fff;text-transform:uppercase}
.hb-live i{width:7px;height:7px;border-radius:50%;background:#FF4D4D;animation:pulse 1.6s infinite}
.hb-tags{position:absolute;top:6%;right:6%;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.hb-tags span{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.14em;color:var(--coral);text-transform:uppercase;border:1px solid rgba(246,141,141,.4);padding:6px 12px;border-radius:999px}
.hb-kicker{font-family:'IBM Plex Mono',monospace;font-size:clamp(10px,.9vw,12px);letter-spacing:.2em;color:var(--coral);text-transform:uppercase;margin-bottom:14px}
.hb-stat{font-family:'Anton',sans-serif;text-transform:uppercase;color:#fff;font-size:clamp(40px,6.6vw,102px);line-height:.9}
.hb-stat .serif-acc{color:var(--coral);font-size:.52em;display:block;margin-top:12px}
.hb-catwalk{position:relative;height:8px;margin:6px 5% 0;background:linear-gradient(180deg,#3a4244,#10171a);border-radius:1px;box-shadow:0 6px 14px -8px rgba(2,10,10,.5)}
.hb-catwalk::before{content:"";position:absolute;left:1%;right:1%;bottom:8px;height:15px;background:repeating-linear-gradient(90deg,rgba(2,10,10,.5) 0 1.5px,transparent 1.5px 30px);border-top:1.5px solid rgba(2,10,10,.42)}
.hb-catwalk::after{content:"";position:absolute;inset:0 0 auto 0;height:1.5px;background:rgba(255,255,255,.18)}
.hb-pole{position:relative;display:flex;justify-content:center;height:130px;-webkit-mask:linear-gradient(#000 76%,transparent);mask:linear-gradient(#000 76%,transparent)}
.hb-pole i{display:block;width:30px;height:100%;background:linear-gradient(90deg,#050a0a 0%,#454d4d 42%,#222a2a 56%,#050a0a 100%)}
@media(max-width:900px){.hb-screen{aspect-ratio:16/10}}
@media(max-width:760px){.hb-screen{aspect-ratio:4/5}.hb-live{display:none}.hb-tags{left:6%;right:6%;justify-content:flex-start}}
.article{padding:40px 0 110px}
.art-grid{display:grid;grid-template-columns:330px 1fr;gap:80px;align-items:start}
@media(max-width:980px){.art-grid{grid-template-columns:1fr;gap:48px}}
.facts{position:sticky;top:104px;display:flex;flex-direction:column;gap:26px}
@media(max-width:980px){.facts{position:static}}
.fact-card{border:1.5px solid var(--line-strong);border-radius:18px;overflow:hidden}
.fact-card .fc-head{background:var(--ink);color:#fff;padding:18px 24px;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;display:flex;justify-content:space-between}
.fact-card .fc-head span:last-child{color:var(--coral)}
.fact-rows{padding:8px 24px 18px}
.fact-row{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px dashed var(--line);font-size:14px}
.fact-row:last-child{border-bottom:none}
.fact-row .k{color:var(--muted)}
.fact-row .v{font-weight:600;text-align:right}
.toc{border:1.5px solid var(--line);border-radius:18px;padding:22px 24px}
.toc h4{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
body.fD .toc ol, body.fE .toc ol{list-style:none;display:flex;flex-direction:column;gap:2px;counter-reset:toc}
.toc a{counter-increment:toc;display:flex;gap:12px;padding:9px 0;text-decoration:none;font-size:14.5px;font-weight:500;color:var(--muted);transition:color .25s;border-left:2px solid transparent}
.toc a::before{content:counter(toc,decimal-leading-zero);font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--red)}
.toc a:hover,.toc a.now{color:var(--ink)}
.share{display:flex;gap:10px}
.share a{flex:1;text-align:center;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.08em;border:1.5px solid var(--line);border-radius:999px;padding:10px 0;text-decoration:none;color:var(--muted);transition:all .25s}
.share a:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-2px)}
body.fD .story, body.fE .story{max-width:680px}
.chapter{padding:34px 0 44px;border-top:1px solid var(--line);scroll-margin-top:100px}
.chapter:first-child{border-top:none;padding-top:0}
.ch-label{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--red);display:block;margin-bottom:14px}
.chapter h2{font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(28px,3vw,40px);line-height:1;margin-bottom:20px}
.chapter h2 .serif-acc{color:var(--red)}
.chapter p{font-size:17px;color:rgba(2,10,10,.78);margin-bottom:18px}
.chapter p b{color:var(--ink)}
.chapter p:last-child{margin-bottom:0}
.spec{background:var(--ink);color:#fff;border-radius:16px;padding:26px 28px;margin:26px 0 6px;position:relative;overflow:hidden}
.spec::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.02) 0 1px,transparent 1px 3px)}
.spec-head{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--coral);display:flex;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--w-line);margin-bottom:6px}
.spec-row{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px dashed var(--w-line);font-size:14px}
.spec-row:last-child{border-bottom:none}
.spec-row .k{color:var(--w-muted);font-family:'IBM Plex Mono',monospace;font-size:12.5px}
.spec-row .v{font-weight:600;text-align:right;color:#fff}
.r-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0 8px}
.r-stat{border:1.5px solid var(--line-strong);border-radius:16px;padding:26px 24px;transition:background .35s var(--ease)}
.r-stat:hover{background:var(--red-soft)}
body.fE .r-stat .big{font-family:'Anton',sans-serif;font-size:clamp(36px,3.4vw,50px);line-height:1;color:var(--red)}
.r-stat .lbl{font-size:13.5px;color:var(--muted);margin-top:8px}
@media(max-width:560px){.r-stats{grid-template-columns:1fr}}
.pull{margin:36px 0 8px}
.pull .pq-frame{background:#060606;border-radius:12px;padding:11px;box-shadow:0 30px 60px -26px rgba(2,10,10,.5),0 0 90px rgba(246,141,141,.15)}
.pull .pq-screen{border-radius:6px;background:linear-gradient(150deg,#140404,#3A0E0E);padding:9% 8%;position:relative;overflow:hidden}
.pull .pq-screen::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px)}
.pull .pq-text{font-family:'Anton',sans-serif;text-transform:uppercase;color:#fff;font-size:clamp(26px,3.2vw,42px);line-height:1.02}
.pull .pq-text em{font-style:normal;color:var(--coral)}
.pull .pq-src{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--w-muted);text-transform:uppercase;margin-top:16px}
.pull .pq-legs{display:flex;justify-content:center;gap:32%;height:30px}
.pull .pq-legs i{width:7px;background:linear-gradient(var(--ink),transparent);display:block;opacity:.6}
.replicate{background:var(--ink);color:#fff;border-radius:28px;margin:0 18px;padding:100px 0;position:relative;overflow:hidden}
.replicate::before{content:"";position:absolute;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(246,141,141,.16),transparent 62%);top:-30%;right:-12%;pointer-events:none}
.replicate h2{font-size:clamp(34px,4.4vw,58px);margin:18px 0 16px;max-width:17ch;color:#fff}
.replicate h2 .serif-acc{color:var(--coral)}
.replicate .lede{color:var(--w-muted);font-size:17px;max-width:54ch;margin-bottom:50px}
.rep-steps{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--w-line);border-radius:18px;overflow:hidden;margin-bottom:44px}
.rep-step{padding:36px 32px;border-right:1px solid var(--w-line);transition:background .35s}
.rep-step:last-child{border-right:none}
.rep-step:hover{background:rgba(255,255,255,.04)}
.rep-step .k{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase;display:block;margin-bottom:16px}
.rep-step h3{font-size:18.5px;font-weight:700;margin-bottom:8px;color:#fff}
.rep-step p{font-size:14.5px;color:var(--w-muted)}
@media(max-width:880px){.rep-steps{grid-template-columns:1fr}.rep-step{border-right:none;border-bottom:1px solid var(--w-line)}.rep-step:last-child{border-bottom:none}}
.more{padding:110px 0}
.more .sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:48px}
.more h2{font-size:clamp(32px,4vw,52px)}
.more h2 .serif-acc{color:var(--red)}
.more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
body.fD .cs-card, body.fE .cs-card{display:flex;flex-direction:column;text-decoration:none}
body.fD .cs-card:hover .cc-frame, body.fE .cs-card:hover .cc-frame{transform:translateY(-7px);box-shadow:0 36px 64px -24px rgba(178,52,52,.45),0 0 70px rgba(246,141,141,.14)}
body.fD .cc-stat, body.fE .cc-stat{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(32px,2.8vw,42px);line-height:.95;color:#fff}
body.fD .cc-title, body.fE .cc-title{font-size:18px;font-weight:700;line-height:1.32;padding:14px 6px 0;transition:color .25s}
@media(max-width:980px){.more-grid{grid-template-columns:1fr}}
body.fD .final, body.fE .final{padding:0 18px 110px}
body.fD .final-inner, body.fE .final-inner{background:var(--ink);border-radius:28px;padding:100px 32px;text-align:center;position:relative;overflow:hidden}
body.fD .final h2, body.fE .final h2{font-size:clamp(38px,5.6vw,76px);color:#fff;max-width:15ch;margin:18px auto 22px}
body.fD .final p, body.fE .final p{color:var(--w-muted);margin-bottom:38px;font-size:17px}
.art-grid > *{min-width:0}
body.fE .story{min-width:0}
.g-hero{padding:150px 0 40px}
.g-hero h1{font-size:clamp(40px,5.6vw,80px);margin:20px 0 20px;max-width:18ch}
.g-hero h1 .serif-acc{color:var(--red)}
.g-hero .lede{font-size:clamp(16.5px,1.3vw,19px);color:var(--muted);max-width:60ch}
.g-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}
.g-meta b{color:var(--red)}
.quick{border:1.5px solid var(--line-strong);border-radius:18px;overflow:hidden;margin:44px 0 0}
.quick .q-head{background:var(--ink);color:#fff;padding:16px 26px;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;display:flex;justify-content:space-between}
.quick .q-head span:last-child{color:var(--coral)}
body.fE .quick .q-body{padding:24px 26px}
.quick p{font-size:16.5px;color:rgba(2,10,10,.82);max-width:75ch}
.quick p+p{margin-top:10px}
.quick b{color:var(--ink)}
.ctab{width:100%;border-collapse:collapse;font-size:15px;margin:22px 0 8px;border:1.5px solid var(--line-strong);border-radius:14px;overflow:hidden}
.ctab th,.ctab td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--line)}
.ctab tbody tr:last-child td{border-bottom:none}
.ctab thead th{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:var(--mist)}
.ctab td b{font-family:'IBM Plex Mono',monospace;font-weight:500;color:var(--red)}
.ctab tbody tr:hover{background:var(--mist)}
.tab-wrap{overflow-x:auto;border-radius:14px}
.calc{background:var(--ink);color:#fff;border-radius:18px;padding:30px;margin:26px 0 8px;position:relative;overflow:hidden}
.calc::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.02) 0 1px,transparent 1px 3px)}
.calc .c-head{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--coral);display:flex;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--w-line);margin-bottom:22px;position:relative;z-index:1}
.calc .grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;position:relative;z-index:1}
.calc label{display:block;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--w-muted);margin-bottom:8px}
.calc input{width:100%;background:rgba(255,255,255,.06);border:1px solid var(--w-line);border-radius:10px;color:#fff;font-family:'IBM Plex Mono',monospace;font-size:17px;padding:12px 14px;outline:none;transition:border-color .25s}
.calc input:focus{border-color:var(--coral)}
.calc .out{margin-top:24px;padding-top:20px;border-top:1px dashed var(--w-line);display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;position:relative;z-index:1}
.calc .out div b{display:block;font-family:'Anton',sans-serif;font-weight:400;font-size:clamp(24px,2.6vw,36px);color:var(--coral)}
.calc .out div span{font-size:12px;color:var(--w-muted)}
.calc .note{margin-top:18px;font-size:12px;color:var(--w-muted);position:relative;z-index:1}
@media(max-width:680px){.calc .grid,.calc .out{grid-template-columns:1fr}}
.keyfacts{border:1.5px solid var(--line-strong);border-radius:18px;padding:28px 30px;margin:26px 0 8px;background:var(--red-soft)}
.keyfacts h3{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin-bottom:16px}
.keyfacts ul{list-style:none;display:flex;flex-direction:column;gap:11px}
.keyfacts li{font-size:15.5px;line-height:1.55;color:rgba(2,10,10,.85);position:relative;padding-left:26px}
.keyfacts li::before{content:"¶";color:var(--red);font-family:'IBM Plex Mono',monospace;position:absolute;left:0;top:1px}
.keyfacts li b{color:var(--ink)}
.chapter h3{font-size:19px;font-weight:700;margin:22px 0 8px}
.chapter ul.plain{list-style:none;display:flex;flex-direction:column;gap:9px;margin:10px 0 14px;max-width:70ch}
.chapter ul.plain li{font-size:16px;color:rgba(2,10,10,.78);display:flex;gap:12px}
.chapter ul.plain li::before{content:"→";color:var(--red);font-family:'IBM Plex Mono',monospace;flex-shrink:0}
body.fE .toc ol{max-height:none}
@media(max-width:560px){
  .g-hero{padding:130px 0 30px}
  .g-hero h1{font-size:clamp(32px,10vw,80px)}
  .g-meta{gap:8px 14px;font-size:10.5px}
  .quick .q-head{padding:13px 18px;font-size:10px}
  .quick .q-body{padding:18px}
  .quick p{font-size:15px}
  .ctab th,.ctab td{padding:10px 12px;font-size:13px}
  .calc{padding:22px 16px;border-radius:14px}
  .calc .grid{gap:14px}
  .calc input{font-size:16px;padding:11px 12px}
  .calc .out{grid-template-columns:1fr;gap:12px;margin-top:18px;padding-top:16px}
  .calc .out div{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
  .calc .out div b{font-size:24px}
  .keyfacts{padding:20px 16px;border-radius:14px}
  .keyfacts li{font-size:14px}
  .chapter h2{font-size:clamp(24px,7.4vw,40px)}
}
body.fE details .a p{padding:0 40px 24px 0;color:var(--muted);font-size:16px;max-width:65ch}
body.fD .r-stat .big{font-family:'Anton',sans-serif;font-size:clamp(36px,3.4vw,50px);line-height:1;color:var(--red-deep)}
body.fE .rel-grid{grid-template-columns:repeat(3,1fr)}
.intel-grid > *{min-width:0;overflow-x:auto}
.flow-grid > *{min-width:0}
.rank-grid > *{min-width:0}
.city-hero{padding:150px 0 50px}
.city-hero h1{font-size:clamp(38px,5.4vw,76px);margin:20px 0 18px;max-width:17ch}
.city-hero h1 .serif-acc{color:var(--red)}
.city-hero .lede{font-size:clamp(16.5px,1.3vw,19px);color:var(--muted);max-width:58ch;margin-bottom:28px}
.city-ctas{display:flex;gap:14px;flex-wrap:wrap}
.ranks{padding:80px 0}
.rank-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:44px}
.rank{border:1.5px solid var(--line-strong);border-radius:18px;padding:26px 26px 22px;position:relative;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.rank:hover{transform:translateY(-4px);box-shadow:0 26px 50px -24px rgba(178,52,52,.32)}
.rank .no{position:absolute;top:20px;right:22px;font-family:'Anton',sans-serif;font-size:40px;color:transparent;-webkit-text-stroke:1.5px var(--red);line-height:1}
.rank h3{font-size:20px;font-weight:700;max-width:80%;line-height:1.25}
.rank .gf{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin:6px 0 12px;display:block}
.rank p{font-size:14px;color:var(--muted);margin-bottom:16px}
.scores{display:flex;flex-direction:column;gap:8px}
.score{display:grid;grid-template-columns:86px 1fr 28px;gap:12px;align-items:center}
.score .sk{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.score .bar{height:6px;background:var(--mist);border-radius:99px;overflow:hidden}
.score .bar i{display:block;height:100%;background:linear-gradient(90deg,var(--coral),var(--red-deep));border-radius:99px;width:0;transition:width 1s var(--ease)}
.in .score .bar i{width:var(--w)}
.score .sv{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--red);text-align:right}
@media(max-width:880px){.rank-grid{grid-template-columns:1fr}}
.flow{padding:30px 0 90px}
.flow-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;margin-top:44px;align-items:start}
@media(max-width:980px){.flow-grid{grid-template-columns:1fr}}
.heat-panel{border:1.5px solid var(--line-strong);border-radius:18px;overflow:hidden}
.heat-head{background:var(--ink);color:#fff;padding:14px 22px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;display:flex;justify-content:space-between}
.heat-head span:last-child{color:var(--coral)}
.heat-cells{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;padding:14px;background:#fff}
.hc{aspect-ratio:1.25;border-radius:6px;display:flex;align-items:flex-end;padding:7px;transition:transform .25s var(--ease)}
.hc:hover{transform:scale(1.05)}
.hc span{font-family:'IBM Plex Mono',monospace;font-size:8.5px;letter-spacing:.04em;text-transform:uppercase;line-height:1.25;color:var(--ink)}
.h0{background:var(--mist)}
.h1{background:#FBE9E9}
.h2{background:#F8CFCB}
.h3{background:#F6ADA6}
.h4{background:#EE7E74}
.h5{background:#D14A41}
.h4 span,.h5 span{color:#fff}
.heat-legend{display:flex;align-items:center;gap:8px;padding:0 16px 16px;font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;background:#fff}
.heat-legend i{width:26px;height:8px;border-radius:99px;display:inline-block}
.rhythm{border:1.5px solid var(--line-strong);border-radius:18px;padding:22px;background:#fff}
.rhythm h4{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}
.rh-row{margin-bottom:16px}
.rh-row:last-of-type{margin-bottom:8px}
.rh-row .rl{font-size:12.5px;font-weight:600;margin-bottom:6px;display:flex;justify-content:space-between}
.rh-row .rl span{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--red);font-weight:400;letter-spacing:.06em}
.rh-bars{display:flex;align-items:flex-end;gap:2.5px;height:40px}
.rh-bars i{flex:1;background:var(--coral);border-radius:2px 2px 0 0;opacity:.55;min-width:2px}
.rh-bars i.pk{background:var(--red-deep);opacity:1}
.rh-axis{display:flex;justify-content:space-between;font-family:'IBM Plex Mono',monospace;font-size:9px;color:var(--muted);margin-top:8px;letter-spacing:.06em}
.flow-notes{margin-top:26px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fnote{border-left:2.5px solid var(--coral);padding:4px 0 4px 16px}
.fnote b{display:block;font-size:14.5px;margin-bottom:3px}
.fnote p{font-size:13px;color:var(--muted)}
@media(max-width:880px){.flow-notes{grid-template-columns:1fr}}
.intel{background:var(--ink);color:#fff;border-radius:28px;margin:0 18px;padding:100px 0;position:relative;overflow:hidden}
.intel::before{content:"";position:absolute;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(246,141,141,.15),transparent 62%);top:-28%;right:-12%;pointer-events:none}
.intel h2{font-size:clamp(32px,4.4vw,56px);margin:18px 0 16px;color:#fff;max-width:18ch}
.intel h2 .serif-acc{color:var(--coral)}
.intel .lede{color:var(--w-muted);font-size:17px;max-width:72ch;margin-bottom:44px}
.intel-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:start}
@media(max-width:920px){.intel-grid{grid-template-columns:1fr}}
.itable{width:100%;border-collapse:collapse;font-size:14px;border:1px solid var(--w-line);border-radius:14px;overflow:hidden}
.itable th,.itable td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--w-line);color:var(--w-muted)}
.itable thead th{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--coral);background:rgba(255,255,255,.04)}
.itable td b{color:#fff;font-weight:600}
.itable tbody tr:last-child td{border-bottom:none}
.ipoints{display:flex;flex-direction:column;gap:18px}
.ipoint{border-left:2.5px solid var(--coral);padding:2px 0 2px 18px}
.ipoint b{display:block;font-size:15.5px;color:#fff;margin-bottom:4px}
.ipoint p{font-size:14px;color:var(--w-muted)}
.intel .btn{margin-top:40px}
@media(max-width:560px){
  .city-hero{padding:128px 0 36px}
  .city-hero h1{font-size:clamp(30px,9.4vw,76px)}
  .rank{padding:20px 18px 18px}
  .hc span{font-size:7.5px}
  .heat-cells{gap:3px;padding:10px}
}
.sec-duo{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:end;margin-bottom:8px}
.sec-duo>*{min-width:0}
.sec-duo .intro{color:var(--muted);font-size:16.5px;padding-bottom:8px}
@media(max-width:880px){.sec-duo{grid-template-columns:1fr;gap:14px}}
.faq-grid>*{min-width:0}
.faq-grid .fg-head{position:sticky;top:110px}
@media(max-width:980px){.faq-grid{grid-template-columns:1fr;gap:18px}.faq-grid .fg-head{position:static}}
h2.display .serif-acc{color:var(--red)}
.intel h2 .serif-acc,.final h2 .serif-acc,.final .display .serif-acc{color:var(--coral)}
body.fE .quick .q-body{display:grid;grid-template-columns:1.5fr 1fr;gap:34px;align-items:start}
.quick .q-text p+p{margin-top:10px}
.qfacts{border:1.5px solid var(--line-strong);border-radius:14px;overflow:hidden}
.qfacts .qf{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:13px 18px;border-bottom:1px dashed var(--line)}
.qfacts .qf:last-child{border-bottom:none}
.qfacts .qk{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.qfacts .qv{font-family:'IBM Plex Mono',monospace;font-size:13px;font-weight:500;color:var(--red);text-align:right}
@media(max-width:880px){body.fE .quick .q-body{grid-template-columns:1fr;gap:22px}}
body.fE .rel-grid{grid-template-columns:repeat(3,1fr)!important;gap:14px}
.rel-grid .rank h3{font-size:clamp(14px,1.6vw,19px)}
.rel-grid .rank{padding:20px 18px 18px}
@media(max-width:640px){body.fE .rel-grid{grid-template-columns:1fr!important}}
.pfig{margin:34px 0 8px}
.pfig .pf-frame{background:#060606;border-radius:14px;padding:12px;box-shadow:0 40px 80px -30px rgba(2,10,10,.5),0 0 90px rgba(246,141,141,.14);position:relative}
.pfig .pf-frame::after{content:"";position:absolute;inset:0;border-radius:14px;border:1px solid rgba(255,255,255,.1);pointer-events:none}
.pfig img{display:block;width:100%;border-radius:7px;aspect-ratio:16/9;object-fit:cover}
.pfig figcaption{display:flex;justify-content:space-between;gap:18px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:12px 6px 0}
.pfig figcaption b{color:var(--red);font-weight:500}
.pfig.wide{margin:50px 0 10px}
.tsq-sec{padding:70px 0 10px}
.tsq-sec h2{font-size:clamp(28px,4vw,50px);max-width:20ch;margin:14px 0 18px}
.tsq-sec p{font-size:16.5px;color:rgba(2,10,10,.78);max-width:78ch;margin-bottom:14px}
.tsq-sec p b{color:var(--ink)}
.rule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:26px 0 8px}
.rule-grid>*{min-width:0}
.rule{border:1.5px solid var(--line-strong);border-radius:16px;padding:24px 22px}
.rule .k{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);display:block;margin-bottom:10px}
.rule h3{font-size:17px;font-weight:700;margin-bottom:8px}
.rule p{font-size:13.5px;color:var(--muted);margin:0}
@media(max-width:880px){.rule-grid{grid-template-columns:1fr}}
.howto{counter-reset:hstep;border:1.5px solid var(--line-strong);border-radius:18px;overflow:hidden;margin:26px 0 8px}
.hstep{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}
.hstep:last-child{border-bottom:none}
.hstep::before{counter-increment:hstep;content:"0" counter(hstep);font-family:'Anton',sans-serif;font-size:30px;color:transparent;-webkit-text-stroke:1.3px var(--red)}
.hstep b{display:block;font-size:16px;margin-bottom:2px}
.hstep p{font-size:13.5px;color:var(--muted);margin:0;max-width:none}
.proof-tip{background:var(--red-soft);border:1.5px solid var(--line-strong);border-radius:14px;padding:18px 22px;margin:18px 0;font-size:15px}
.proof-tip b{color:var(--red)}
.tsq-sec .wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start}
.tsq-sec .wrap>*{min-width:0}
.tsq-sec .ts-head{position:sticky;top:110px}
.tsq-sec .ts-head h2{max-width:14ch}
@media(max-width:980px){.tsq-sec .wrap{grid-template-columns:1fr;gap:18px}.tsq-sec .ts-head{position:static}}

/* ===== homepage photo wall (In the wild) ===== */
.wild{padding:110px 0}
.wild-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto;gap:18px;margin-top:54px}
.wild-grid>*{min-width:0}
.wfig{position:relative;margin:0;background:#060606;border-radius:16px;padding:10px;overflow:hidden;
  box-shadow:0 30px 60px -28px rgba(2,10,10,.45);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.wfig:hover{transform:translateY(-6px);box-shadow:0 40px 80px -30px rgba(178,52,52,.4),0 0 80px rgba(246,141,141,.18)}
.wfig::after{content:"";position:absolute;inset:0;border-radius:16px;border:1px solid rgba(255,255,255,.1);pointer-events:none}
.wfig img{display:block;width:100%;height:100%;border-radius:9px;object-fit:cover;aspect-ratio:4/3;transition:transform .5s var(--ease)}
.wfig:hover img{transform:scale(1.03)}
.wfig.feature{grid-row:1/3;grid-column:1}
.wfig.feature img{aspect-ratio:4/5;height:100%}
.wfig.wide{grid-column:2/4}
.wfig.wide img{aspect-ratio:21/9}
.wfig figcaption{position:absolute;left:10px;right:10px;bottom:10px;display:flex;justify-content:space-between;align-items:baseline;gap:14px;
  padding:26px 16px 12px;border-radius:0 0 9px 9px;background:linear-gradient(transparent,rgba(2,6,6,.88) 55%);
  font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.wfig figcaption b{color:var(--coral);font-weight:500;white-space:nowrap}
.wfig figcaption span{text-align:right}
.wild-note{margin-top:30px;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.06em;color:var(--muted)}
.wild-note a{color:var(--red)}
@media(max-width:880px){
  .wild{padding:80px 0}
  .wild-grid{grid-template-columns:1fr;grid-template-rows:none}
  .wfig.feature{grid-row:auto;grid-column:auto}
  .wfig.feature img{aspect-ratio:4/3;height:auto}
  .wfig.wide{grid-column:auto}
  .wfig.wide img{aspect-ratio:16/9}
}

/* ===== rho case gallery ===== */
.rho-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px}
.rho-gallery>*{min-width:0}
.rho-gallery .wfig img{aspect-ratio:auto;height:100%;min-height:100%}
.rg-a{grid-row:1/3;grid-column:1}
.rg-b{grid-column:2/4}
.rg-c{grid-column:4}
.rg-d{grid-column:2}
.rg-e{grid-column:3/5}
.rg-b img,.rg-e img{aspect-ratio:2/1}
.rg-c img,.rg-d img{aspect-ratio:1/1}
.rg-a img{aspect-ratio:2/3}
@media(max-width:880px){
  .rho-gallery{grid-template-columns:1fr}
  .rg-a,.rg-b,.rg-c,.rg-d,.rg-e{grid-row:auto;grid-column:auto}
  .rho-gallery .wfig img{aspect-ratio:16/10;height:auto}
  .rg-a img{aspect-ratio:3/4}
}
.rho-gallery .wfig figcaption{flex-direction:column;align-items:flex-start;gap:3px;font-size:9.5px}
.rho-gallery .wfig figcaption span{text-align:left}

/* ===== nav: browse billboards dropdown ===== */
.nav-dd{position:relative}
.nav-dd > a .dd-c{display:inline-block;margin-left:6px;font-size:10px;transition:transform .3s var(--ease);color:var(--red)}
.nav-dd:hover > a .dd-c,.nav-dd:focus-within > a .dd-c{transform:rotate(180deg)}
.nav-dd-panel{position:absolute;top:calc(100% + 16px);left:50%;transform:translate(-50%,10px);
  background:#fff;border:1.5px solid var(--line-strong);border-radius:18px;padding:24px 28px 20px;
  display:grid;grid-template-columns:auto auto;gap:4px 44px;min-width:460px;
  box-shadow:0 36px 70px -24px rgba(2,10,10,.3);
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s var(--ease),transform .3s var(--ease),visibility .3s}
.nav-dd-panel::before{content:"";position:absolute;top:-18px;left:0;right:0;height:18px}
.nav-dd:hover .nav-dd-panel,.nav-dd:focus-within .nav-dd-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.nav-dd-panel h6{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin:0 0 8px;font-weight:500}
.nav-dd-panel div + div{}
.nav-dd-panel a{display:block;padding:5px 0;font-size:14px;color:var(--ink);white-space:nowrap}
.nav-dd-panel a::after{display:none}
.nav-dd-panel a:hover{color:var(--red)}
.nav-dd-panel .dd-foot{grid-column:1/-1;border-top:1px dashed var(--line);margin-top:12px;padding-top:12px;
  font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.nav-dd-panel .dd-foot:hover{color:var(--red)}
.nav-dd-panel .dd-foot span{color:var(--red)}
@media(max-width:1280px){.nav-links{gap:18px}.nav-links a{font-size:13.5px}}
@media(max-width:1120px){.nav-aux{display:none}.nav-login{display:none}.nav-links{gap:16px}}
@media(max-width:1010px){#nav .nav-req{display:none}.nav-links{gap:14px}}


/* ===== mobile menu ===== */
.nav-burger{display:none;width:42px;height:42px;border:1.5px solid var(--line-strong);border-radius:999px;background:transparent;cursor:pointer;position:relative;flex-shrink:0;z-index:210}
.nav-burger i{position:absolute;left:12px;right:12px;height:1.8px;background:var(--ink);border-radius:2px;transition:transform .35s var(--ease),opacity .25s,top .35s var(--ease)}
.nav-burger i:nth-child(1){top:15px}.nav-burger i:nth-child(2){top:20px}.nav-burger i:nth-child(3){top:25px}
body.menu-open .nav-burger i:nth-child(1){top:20px;transform:rotate(45deg)}
body.menu-open .nav-burger i:nth-child(2){opacity:0}
body.menu-open .nav-burger i:nth-child(3){top:20px;transform:rotate(-45deg)}
@media(max-width:920px){.nav-burger{display:block}}
.mmenu{position:fixed;inset:0;z-index:200;background:var(--ink);color:#fff;padding:96px 28px 40px;overflow-y:auto;
  opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .35s var(--ease),transform .35s var(--ease),visibility .35s}
body.menu-open .mmenu{opacity:1;visibility:visible;transform:none}
body.menu-open{overflow:hidden}
body.menu-open #nav{background:var(--ink)}
body.menu-open #nav .logo{color:#fff}
body.menu-open .nav-burger{border-color:rgba(255,255,255,.35)}
body.menu-open .nav-burger i{background:#fff}
.mmenu .mm-eyebrow{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--coral);margin:26px 0 10px}
.mmenu a.mm-big{display:block;font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(28px,8vw,40px);line-height:1.15;color:#fff;text-decoration:none;padding:4px 0}
.mmenu a.mm-big:active,.mmenu a.mm-big:hover{color:var(--coral)}
.mmenu .mm-cities{display:grid;grid-template-columns:1fr 1fr;gap:2px 22px}
.mmenu .mm-cities a{display:block;color:rgba(255,255,255,.85);text-decoration:none;font-size:16.5px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.mmenu .mm-cities a:active{color:var(--coral)}
.mmenu .mm-ctas{display:flex;flex-direction:column;gap:12px;margin-top:34px}
.mmenu .mm-ctas .btn{justify-content:center;border-color:#fff;color:#fff}
.mmenu .mm-ctas .btn::before{background:#fff;transform:scaleY(0)}
.mmenu .mm-ctas .btn:hover,.mmenu .mm-ctas .btn:active{color:var(--ink)}
.mmenu .mm-ctas .btn:hover::before,.mmenu .mm-ctas .btn:active::before{transform:scaleY(1)}
body.menu-open #nav{z-index:300}
.mmenu .mm-ctas .btn-coral{color:var(--ink);border-color:var(--coral)}
.mmenu .mm-ctas .btn-coral::before{background:var(--coral);transform:scaleY(1)}
.mmenu .mm-foot{margin-top:36px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.1em;color:rgba(255,255,255,.45);text-transform:uppercase}

/* ===== 404 ===== */
.nf-hero{min-height:100vh;display:flex;align-items:center;padding:140px 0 80px}
.nf-board{background:#060606;border-radius:22px;padding:clamp(22px,4vw,46px);position:relative;
  box-shadow:0 60px 120px -40px rgba(2,10,10,.6),0 0 120px rgba(246,141,141,.16)}
.nf-board::after{content:"";position:absolute;inset:0;border-radius:22px;border:1px solid rgba(255,255,255,.12);pointer-events:none}
.nf-screen{border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:clamp(28px,5vw,64px) clamp(20px,4vw,54px);
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.022) 0 1px,transparent 1px 3px),radial-gradient(120% 140% at 50% 0%,#101616,#050808);position:relative;overflow:hidden}
.nf-live{display:flex;justify-content:space-between;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:34px}
.nf-live i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--coral);margin-right:8px;animation:blink 1.4s infinite}
.nf-code{font-family:'Anton',sans-serif;font-size:clamp(90px,18vw,240px);line-height:.95;color:transparent;-webkit-text-stroke:2px var(--coral);text-align:center}
.nf-msg{font-family:'Anton',sans-serif;text-transform:uppercase;color:#fff;font-size:clamp(20px,3.4vw,40px);line-height:1.15;text-align:center;margin:18px 0 8px}
.nf-msg em{font-family:'Instrument Serif',serif;font-style:italic;text-transform:none;color:var(--coral)}
.nf-sub{text-align:center;color:rgba(255,255,255,.62);font-size:15.5px;max-width:54ch;margin:0 auto}
.nf-price{position:absolute;right:18px;bottom:14px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:rgba(255,255,255,.4);text-transform:uppercase}
.nf-legs{display:flex;justify-content:center;gap:120px;margin-top:-2px}
.nf-legs i{width:14px;height:90px;background:linear-gradient(180deg,#1a1a1a,#000);border-radius:0 0 5px 5px}
.nf-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:44px}
.nf-chips{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:26px}
.nf-chip{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;border:1.5px solid var(--line-strong);border-radius:999px;padding:8px 16px;color:var(--muted);text-decoration:none;transition:all .25s}
.nf-chip:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}
@media(max-width:560px){.nf-legs{gap:60px}.nf-legs i{height:60px}}

/* ===== related cards (guide pages) — base; col overrides exist above ===== */
body.fE .rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:36px}
body.fE .rel-card{display:flex;flex-direction:column;gap:8px;background:#fff;border:1.5px solid var(--line-strong);border-radius:18px;padding:24px 22px 20px;text-decoration:none;color:var(--ink);transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s}
body.fE .rel-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px -22px rgba(2,10,10,.28);border-color:var(--red)}
body.fE .rel-card .k{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
body.fE .rel-card h3{font-size:18.5px;font-weight:700;line-height:1.25}
body.fE .rel-card p{color:var(--muted);font-size:14.5px;flex:1}
body.fE .rel-card .go{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);margin-top:6px;transition:color .25s}
body.fE .rel-card:hover .go{color:var(--red)}
@media(max-width:880px){body.fE .rel-grid{grid-template-columns:1fr}}

/* ===== product pages: blinky-ai + book-a-billboard (pgProduct · family fE) =====
   Scoped per THE SCOPING RULE: every base, state, descendant and
   media override below carries the body.pgProduct prefix. */
body.pgProduct .pfig img{aspect-ratio:auto 3348/1972;height:auto;object-fit:cover}
body.pgProduct .bk-steps{padding:10px 0 30px}
body.pgProduct .bk-step{display:grid;grid-template-columns:400px 1fr;gap:64px;align-items:start;padding:60px 0;border-top:1px solid var(--line);scroll-margin-top:100px}
body.pgProduct .bk-step>*{min-width:0}
body.pgProduct .bk-step:first-child{border-top:none;padding-top:34px}
body.pgProduct .bk-lbl{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--red);display:block;margin-bottom:12px}
body.pgProduct .bk-step h3{font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.005em;font-size:clamp(26px,2.7vw,38px);line-height:1.02;margin-bottom:16px}
body.pgProduct .bk-step h3 .serif-acc{color:var(--red)}
body.pgProduct .bk-step p{font-size:16.5px;color:rgba(2,10,10,.78);margin-bottom:14px}
body.pgProduct .bk-step p b{color:var(--ink)}
body.pgProduct .bk-step p:last-child{margin-bottom:0}
body.pgProduct .bk-step .pfig{margin:0}
body.pgProduct .bk-step .pfig + .pfig{margin-top:26px}
body.pgProduct .bk-sig{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;list-style:none}
body.pgProduct .bk-sig li{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--line-strong);border-radius:999px;padding:7px 13px;color:var(--ink)}
body.pgProduct .bk-shots{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:34px}
body.pgProduct .bk-shots>*{min-width:0}
body.pgProduct .bk-shots .pfig{margin:0}
body.pgProduct .bk-mini{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:30px 0 8px}
body.pgProduct .bk-mini>div{border:1.5px solid var(--line-strong);border-radius:16px;padding:22px 20px;transition:background .35s var(--ease)}
body.pgProduct .bk-mini>div:hover{background:var(--red-soft)}
body.pgProduct .bk-mini .k{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--red);display:block;margin-bottom:10px}
body.pgProduct .bk-mini h3{font-size:16.5px;font-weight:700;line-height:1.3;margin-bottom:8px}
body.pgProduct .bk-mini p{font-size:13.5px;color:var(--muted);line-height:1.5}
@media(max-width:980px){
  body.pgProduct .bk-step{grid-template-columns:1fr;gap:28px;padding:44px 0}
  body.pgProduct .bk-mini{grid-template-columns:1fr 1fr}
}
@media(max-width:880px){
  body.pgProduct .bk-shots{grid-template-columns:1fr;gap:20px}
}
@media(max-width:560px){
  body.pgProduct .bk-mini{grid-template-columns:1fr}
}

/* ===== contact page (pgContact · family fE) =====
   Scoped per THE SCOPING RULE. Form fields reuse the global dark-surface
   .field / .req-label / .field-row / .err kit from the request form. */
body.pgContact .ct-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:start}
body.pgContact .ct-grid>*{min-width:0}
body.pgContact .ct-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}
body.pgContact .ct-card{display:flex;flex-direction:column;gap:8px;border:1.5px solid var(--line-strong);border-radius:16px;padding:22px 20px;text-decoration:none;color:var(--ink);transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s,background .3s}
body.pgContact .ct-card:hover{transform:translateY(-4px);border-color:var(--red);background:var(--red-soft);box-shadow:0 24px 50px -22px rgba(2,10,10,.22)}
body.pgContact .ct-card .k{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
body.pgContact .ct-card h3{font-size:17px;font-weight:700;line-height:1.3}
body.pgContact .ct-card p{font-size:13.5px;color:var(--muted);line-height:1.5;flex:1}
body.pgContact .ct-card .go{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:lowercase;color:var(--ink);margin-top:4px;transition:color .25s;word-break:break-all}
body.pgContact .ct-card:hover .go{color:var(--red)}
body.pgContact .ct-aside{margin-top:22px;font-size:13.5px;color:var(--muted);line-height:1.6}
body.pgContact .ct-aside a{color:var(--red)}
body.pgContact .ct-soc{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
body.pgContact .ct-soc a{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;border:1.5px solid var(--line);border-radius:999px;padding:9px 16px;text-decoration:none;color:var(--muted);transition:all .25s}
body.pgContact .ct-soc a:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-2px)}
body.pgContact .ct-form{background:var(--ink);border-radius:22px;padding:36px 34px;position:relative;overflow:hidden}
body.pgContact .ct-form::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.02) 0 1px,transparent 1px 3px)}
body.pgContact .ct-form>*{position:relative;z-index:1}
body.pgContact .ct-form .fc-head{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--coral);display:flex;justify-content:space-between;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--w-line);margin-bottom:8px}
body.pgContact .ct-form select.field{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--coral) 50%),linear-gradient(135deg,var(--coral) 50%,transparent 50%);background-position:calc(100% - 24px) 50%,calc(100% - 18px) 50%;background-size:6px 6px;background-repeat:no-repeat;cursor:pointer}
body.pgContact .ct-form select.field option{color:var(--ink);background:#fff}
body.pgContact .ct-form .btn-coral{margin-top:24px;justify-content:center;width:100%}
body.pgContact .ct-form .fine{margin-top:16px;font-size:12px;color:rgba(255,255,255,.45);line-height:1.55}
body.pgContact .ct-form .fine a{color:var(--coral)}
body.pgContact .ct-ok{display:none;margin-top:18px;border:1.5px solid rgba(246,141,141,.5);background:rgba(246,141,141,.1);border-radius:13px;padding:15px 18px;color:#fff;font-size:14px;line-height:1.55}
body.pgContact .ct-ok.show{display:block}
body.pgContact .ct-ok b{color:var(--coral)}
body.pgContact .ct-offices{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px}
body.pgContact .ct-office{display:flex;flex-direction:column;gap:8px;border:1.5px solid var(--line-strong);border-radius:16px;padding:22px 20px;text-decoration:none;color:var(--ink);transition:transform .3s var(--ease),border-color .3s,background .3s}
body.pgContact .ct-office:hover{transform:translateY(-4px);border-color:var(--red);background:var(--red-soft)}
body.pgContact .ct-office .k{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
body.pgContact .ct-office h3{font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;font-size:22px;line-height:1}
body.pgContact .ct-office p{font-size:13.5px;color:var(--muted);line-height:1.55;flex:1}
body.pgContact .ct-office .go{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);transition:color .25s}
body.pgContact .ct-office:hover .go{color:var(--red)}
@media(max-width:980px){
  body.pgContact .ct-grid{grid-template-columns:1fr;gap:40px}
  body.pgContact .ct-offices{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  body.pgContact .ct-cards{grid-template-columns:1fr}
  body.pgContact .ct-offices{grid-template-columns:1fr}
  body.pgContact .ct-form{padding:28px 22px}
}
