/* ============================================================
   DSP ADVERTISER - DESIGN SYSTEM  (Blueprint rebuild)
   Brand: #0372E2 blue · light base · Bricolage Grotesque
   All brand values in :root. Blueprint design rules applied:
   darker muted text, varied section rhythm, restrained accent.
   ============================================================ */
:root{
  /* BRAND CORE (brand guide) */
  --blue:#0372E2;
  --blue-deep:#003C78;
  --blue-400:#70B7FF;
  --blue-200:#B2D8FF;
  --blue-100:#D9ECFF;
  --ink:#0A0A0A;
  --paper:#F5F5F5;
  --white:#FFFFFF;

  /* NEUTRALS (blueprint: darker muted text for contrast) */
  --ink-2:#15181C;
  --ink-3:#242A31;
  --slate:#3F4650;      /* primary body on light */
  --slate-2:#5A636E;    /* muted, blueprint-safe floor for small text */
  --line:#E4E7EC;
  --line-2:#D3D8E0;
  --line-dark:#242B34;

  /* GRADIENTS (brand guide pairs) */
  --grad-blue:linear-gradient(135deg,#0372E2,#003C78);
  --grad-ink:linear-gradient(135deg,#003C78,#0A0A0A);
  --grad-soft:linear-gradient(135deg,#F5F5F5,#B2D8FF);
  --grad-pop:linear-gradient(135deg,#70B7FF,#0372E2);

  --display:"Bricolage Grotesque",sans-serif;
  --body:Arial,"Helvetica Neue",Helvetica,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
  --maxw:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--slate);font-family:var(--body);font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
::selection{background:var(--blue);color:#fff}

/* TYPE */
h1,h2,h3,h4{font-family:var(--display);color:var(--ink);line-height:1.05;font-weight:800;letter-spacing:-.03em}
h1{font-size:clamp(34px,5.1vw,60px)}
h2{font-size:clamp(27px,3.8vw,44px);font-weight:700}
h3{font-size:clamp(21px,2.5vw,29px);font-weight:700;letter-spacing:-.02em}
h4{font-size:19px;font-weight:600;letter-spacing:-.01em}
p{max-width:64ch}
.lead{font-size:clamp(17px,2vw,20px);line-height:1.55;color:var(--slate)}
strong,b{color:var(--ink);font-weight:700}
.hl{color:var(--blue)}

/* LAYOUT */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.narrow{max-width:820px;margin:0 auto}
section{padding:82px 0;position:relative}
@media(max-width:640px){section{padding:56px 0}}
.sec-ink{background:var(--ink);color:#AEB7C4}
.sec-ink h1,.sec-ink h2,.sec-ink h3,.sec-ink h4{color:#fff}
.sec-ink strong{color:#fff}
.sec-tint{background:var(--blue-100)}
.sec-white{background:var(--white)}
.sec-paper{background:var(--paper)}

/* EYEBROW */
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--blue);display:inline-flex;align-items:center;gap:9px;font-weight:500}
.eyebrow::before{content:"";width:18px;height:2px;background:var(--blue);border-radius:2px}
.sec-ink .eyebrow{color:var(--blue-400)}
.sec-ink .eyebrow::before{background:var(--blue-400)}

/* SECTION HEAD */
.sec-head{max-width:760px;margin-bottom:48px}
.sec-head.ctr{margin-left:auto;margin-right:auto;text-align:center}
.sec-head.ctr .lead{margin-left:auto;margin-right:auto}
.sec-head h2{margin:16px 0 16px}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--body);font-weight:700;font-size:16px;padding:15px 26px;border-radius:10px;cursor:pointer;border:2px solid transparent;transition:transform .16s ease,box-shadow .16s ease,background .16s ease;white-space:nowrap}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 8px 22px -8px rgba(3,114,226,.55)}
.btn-primary:hover{background:#0264c6;transform:translateY(-2px);box-shadow:0 14px 30px -10px rgba(3,114,226,.65)}
.btn-ghost{border-color:var(--line-2);color:var(--ink);background:transparent}
.btn-ghost:hover{border-color:var(--blue);color:var(--blue)}
.sec-ink .btn-ghost{border-color:#33404d;color:#fff}
.sec-ink .btn-ghost:hover{border-color:var(--blue-400);color:var(--blue-400)}
.btn-lg{font-size:17px;padding:17px 30px}
.btn .arw{transition:transform .16s ease}
.btn:hover .arw{transform:translateX(4px)}
.sublabel{font-family:var(--mono);font-size:12.5px;color:var(--slate-2);margin-top:14px;letter-spacing:.01em}
.sec-ink .sublabel{color:#7E8794}

/* NAV */
header{position:sticky;top:0;z-index:60;background:rgba(245,245,245,.85);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:74px}
.nav-logo img{height:38px;width:auto}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{font-size:15px;color:var(--slate);font-weight:400;transition:color .15s}
.nav-links a:hover,.nav-links a.on{color:var(--ink)}
.nav-links a.on{color:var(--blue);font-weight:700}
.nav-cta{display:flex;align-items:center;gap:14px}
.menu-btn{display:none;background:none;border:1.5px solid var(--line-2);color:var(--ink);width:44px;height:40px;border-radius:8px;font-size:20px;cursor:pointer}

/* HERO */
.hero{padding:74px 0 60px;position:relative;overflow:hidden}
.hero-bg{position:absolute;top:-220px;right:-160px;width:700px;height:660px;background:radial-gradient(circle,rgba(3,114,226,.10),transparent 62%);pointer-events:none;z-index:0}
.hero .wrap{position:relative;z-index:1}
.hero-2col{display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:center}
.pill{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--slate);background:var(--white);border:1px solid var(--line-2);border-radius:100px;padding:8px 15px;margin-bottom:22px;text-transform:uppercase}
.pill b{color:var(--blue);font-weight:700}
.hero h1{margin:0 0 20px}
.hero .lead{margin-bottom:30px;max-width:60ch}
.hero-cta{display:flex;gap:13px;flex-wrap:wrap;align-items:center}
.hero-stats{display:flex;gap:26px;margin-top:32px;flex-wrap:wrap;padding-top:26px;border-top:1px solid var(--line)}
.hero-stats .s{display:flex;flex-direction:column;gap:3px}
.hero-stats .s b{font-family:var(--display);font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.02em}
.hero-stats .s span{font-family:var(--mono);font-size:11.5px;color:var(--slate-2);letter-spacing:.02em}

/* CONSOLE (illustrative, labeled per blueprint) */
.console{background:var(--ink);border-radius:16px;overflow:hidden;box-shadow:0 40px 90px -44px rgba(3,58,120,.5),0 0 0 1px rgba(255,255,255,.04)}
.console-top{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line-dark)}
.console-top .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#7E8794}
.console-top .tag{font-family:var(--mono);font-size:10px;color:#7E8794;border:1px solid var(--line-dark);border-radius:4px;padding:3px 8px;letter-spacing:.08em}
.console-tiles{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-dark)}
.console-tile{background:var(--ink);padding:18px}
.console-tile .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#7E8794}
.console-tile .v{font-family:var(--display);font-size:26px;font-weight:700;color:#fff;margin-top:7px;letter-spacing:-.02em}
.console-tile .v .u{font-size:15px;color:#7E8794;font-weight:400}
.console-tile .d{font-family:var(--mono);font-size:11px;margin-top:4px;color:var(--blue-400)}
.console-chart{padding:16px 18px 20px;border-top:1px solid var(--line-dark)}
.console-chart .crow{display:flex;justify-content:space-between;margin-bottom:8px}
.console-chart .t{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#7E8794}
.spark{width:100%;height:64px}
.spark .line{fill:none;stroke:var(--blue);stroke-width:2.5;stroke-linecap:round}
.spark .area{fill:url(#gf);opacity:.55}
.console-foot{font-family:var(--mono);font-size:10px;color:#5A6572;padding:11px 18px;border-top:1px solid var(--line-dark);letter-spacing:.05em}

/* TRUST / EXPERIENCE STRIP */
.trust{padding:34px 0;background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.trust .lab{font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--slate-2);text-align:center;margin-bottom:20px}
.exp-logos{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 20px;align-items:center;max-width:1000px;margin:0 auto}
.exp-logos .xl{font-family:var(--display);font-weight:700;font-size:16px;color:#9AA2AD;padding:8px 16px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}
.disclosure{font-family:var(--body);font-size:12.5px;color:var(--slate-2);text-align:center;margin-top:20px;max-width:70ch;margin-left:auto;margin-right:auto;font-style:italic}
.badge-verified{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;color:var(--slate);border:1px solid var(--line-2);border-radius:100px;padding:7px 14px;margin:16px auto 0}
.badge-verified .vb{color:var(--blue);font-weight:700}

/* CARDS */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:28px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s}
.card.lift:hover{transform:translateY(-4px);box-shadow:0 20px 40px -26px rgba(10,10,10,.18);border-color:var(--line-2)}
.sec-ink .card{background:var(--ink-2);border-color:var(--line-dark)}
.sec-tint .card{background:var(--white);border-color:transparent}
.card h4{margin-bottom:9px}
.card p{font-size:15px;color:var(--slate);max-width:none}
.sec-ink .card p{color:#AEB7C4}
.card .ic{width:42px;height:42px;border-radius:11px;background:var(--blue-100);display:flex;align-items:center;justify-content:center;margin-bottom:16px;color:var(--blue)}
.card .ic svg{width:21px;height:21px}
.card .klabel{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);font-weight:500;margin-bottom:8px}

/* USE-CASE (One DSP, different jobs) */
.usecases{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.usecase{background:var(--white);padding:32px 30px}
.usecase .uc-k{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);font-weight:500;margin-bottom:12px}
.usecase h3{font-size:22px;margin-bottom:10px}
.usecase p{font-size:15px;color:var(--slate);max-width:none}

/* PROOF CARDS (real anonymized) */
.proof-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.proof{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:28px;transition:.18s;display:flex;flex-direction:column}
.proof:hover{border-color:var(--blue-200);transform:translateY(-3px);box-shadow:0 18px 40px -28px rgba(3,114,226,.3)}
.proof .pcat{font-family:var(--mono);font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--slate-2);margin-bottom:14px}
.proof .phead{font-family:var(--display);font-size:23px;font-weight:700;color:var(--ink);letter-spacing:-.02em;line-height:1.15;margin-bottom:14px}
.proof .phead .hl{color:var(--blue)}
.proof .pmetrics{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}
.proof .pm{font-family:var(--mono);font-size:11px;color:var(--slate);background:var(--paper);border-radius:6px;padding:5px 9px}

/* WHAT WE OWN (7 steps) */
.own{display:grid;gap:14px}
.own-row{background:var(--white);border:1px solid var(--line);border-radius:13px;padding:24px 26px;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;transition:.16s}
.own-row:hover{border-color:var(--blue-200)}
.own-row .on{font-family:var(--display);font-size:15px;font-weight:800;color:#fff;background:var(--blue);width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.own-row .oq{font-family:var(--display);font-size:19px;font-weight:700;color:var(--ink);letter-spacing:-.01em}
.own-row .oout{font-size:14.5px;color:var(--slate-2);max-width:44ch;text-align:right}
@media(max-width:760px){.own-row{grid-template-columns:auto 1fr;gap:16px}.own-row .oout{grid-column:2;text-align:left;margin-top:4px}}

/* COMPARISON TABLE (blueprint: factual, no all-checks-vs-all-crosses) */
.cmp{border:1px solid var(--line-2);border-radius:14px;overflow:hidden;overflow-x:auto}
.cmp table{width:100%;border-collapse:collapse;min-width:640px}
.cmp th,.cmp td{padding:15px 18px;text-align:left;border-bottom:1px solid var(--line);font-size:14.5px;vertical-align:top}
.cmp thead th{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--slate-2);background:var(--paper);font-weight:500}
.cmp thead th.us{color:var(--blue)}
.cmp td:first-child{font-weight:600;color:var(--ink)}
.cmp td.us{background:var(--blue-100);color:var(--ink);font-weight:600}
.cmp td{color:var(--slate)}
.cmp tr:last-child td{border-bottom:none}
.cmp-note{font-size:12.5px;color:var(--slate-2);margin-top:14px;font-style:italic}

/* PULL QUOTE / DATA-QA STORY */
.pullquote{max-width:820px;margin:0 auto;text-align:center}
.pullquote .big{font-family:var(--display);font-size:clamp(24px,3.4vw,36px);font-weight:700;color:#fff;letter-spacing:-.02em;line-height:1.2}
.pullquote .big .hl{color:var(--blue-400)}
.statline{font-family:var(--display);font-size:clamp(40px,7vw,72px);font-weight:800;color:var(--blue-400);letter-spacing:-.03em;line-height:1}

/* OFFERS */
.offers{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.offer{background:var(--white);border:1px solid var(--line-2);border-radius:16px;padding:34px;display:flex;flex-direction:column}
.offer.feat{border-color:var(--blue);box-shadow:0 20px 50px -30px rgba(3,114,226,.4)}
.offer .otag{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);font-weight:500;margin-bottom:12px}
.offer h3{font-size:26px;margin-bottom:8px}
.offer .oprice{font-family:var(--display);font-size:34px;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin:10px 0 4px}
.offer .oprice .per{font-size:15px;color:var(--slate-2);font-weight:400;font-family:var(--mono)}
.offer .odesc{font-size:15px;color:var(--slate);margin-bottom:18px}
.offer ul{list-style:none;margin:6px 0 24px}
.offer li{font-size:14.5px;color:var(--slate);padding:9px 0 9px 26px;position:relative;border-top:1px solid var(--line)}
.offer li::before{content:"✓";position:absolute;left:0;color:var(--blue);font-family:var(--mono);font-weight:700}
.offer .ofoot{margin-top:auto}
.offer .ofoot .btn{width:100%;justify-content:center}

/* FIT (yes/no) */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.fit-col{border-radius:14px;padding:30px}
.fit-col.yes{background:var(--blue-100);border:1px solid var(--blue-200)}
.fit-col.no{background:var(--white);border:1px solid var(--line)}
.fit-col h3{font-size:20px;display:flex;align-items:center;gap:10px;margin-bottom:16px}
.fit-col ul{list-style:none}
.fit-col li{font-size:15px;color:var(--slate);padding:11px 0 11px 26px;position:relative;border-top:1px solid rgba(0,0,0,.06)}
.fit-col li:first-child{border-top:none}
.fit-col.yes li::before{content:"✓";position:absolute;left:0;color:var(--blue);font-family:var(--mono);font-weight:700}
.fit-col.no li::before{content:"•";position:absolute;left:1px;color:var(--slate-2);font-family:var(--mono);font-weight:700}

/* FAQ */
.faq{max-width:840px;margin:0 auto}
.q{border-top:1px solid var(--line)}
.q:last-child{border-bottom:1px solid var(--line)}
.q summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 0;font-family:var(--display);font-size:17.5px;font-weight:700;color:var(--ink);cursor:pointer;letter-spacing:-.01em}
.q summary::-webkit-details-marker{display:none}
.q summary .ic{font-family:var(--mono);color:var(--blue);font-size:22px;transition:transform .2s;flex-shrink:0;font-weight:400}
.q[open] summary .ic{transform:rotate(45deg)}
.q .a{padding:0 0 23px;color:var(--slate);font-size:16px;max-width:74ch}
.q .a b{color:var(--ink)}

/* ROUTER */
.router{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.router-card{border-radius:16px;padding:38px;position:relative;overflow:hidden}
.router-card.brand{background:var(--grad-blue);color:#fff}
.router-card.agency{background:var(--white);border:1px solid var(--line)}
.router-card h3{margin:14px 0 10px}
.router-card.brand h3{color:#fff}
.router-card p{max-width:40ch;margin-bottom:24px}
.router-card.brand p{color:rgba(255,255,255,.9)}
.router-card.brand .eyebrow{color:rgba(255,255,255,.92)}
.router-card.brand .eyebrow::before{background:rgba(255,255,255,.92)}
.router-card.agency .eyebrow{color:var(--blue)}

/* CTA BAND */
.cta-band{background:var(--ink);border-radius:20px;padding:58px;text-align:center;position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;top:-120px;left:50%;transform:translateX(-50%);width:520px;height:400px;background:radial-gradient(circle,rgba(3,114,226,.26),transparent 62%)}
.cta-band>*{position:relative}
.cta-band h2{color:#fff;margin-bottom:16px}
.cta-band .lead{color:#AEB7C4;margin:0 auto 28px;max-width:60ch}
.cta-band .btn-row{display:flex;gap:13px;justify-content:center;flex-wrap:wrap}

/* FOOTER */
footer{background:var(--ink);color:#8892A0;padding:60px 0 34px}
.foot-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:44px}
.foot-brand img{height:40px;margin-bottom:16px}
.foot-brand .desc{font-size:14px;color:#8892A0;max-width:34ch}
.foot-brand .tagline{font-family:var(--mono);font-size:11px;color:#6B7480;letter-spacing:.08em;margin-top:14px;text-transform:uppercase}
.foot-col h5{font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#6B7480;margin-bottom:16px;font-weight:500}
.foot-col a{display:block;font-size:14.5px;color:#B4BCC6;padding:6px 0;transition:color .15s}
.foot-col a:hover{color:var(--blue-400)}
.foot-bot{padding-top:26px;border-top:1px solid var(--line-dark);font-family:var(--mono);font-size:12px;color:#6B7480;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
.foot-entity{font-size:12.5px;color:#8892A0;margin-bottom:8px}

/* RESPONSIVE */
@media(max-width:960px){
  .hero-2col,.offers,.router,.fit,.grid-4{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr 1fr}
  .proof-grid{grid-template-columns:1fr}
  .usecases{grid-template-columns:1fr}
  .foot-top{grid-template-columns:1fr 1fr}
  .nav-links{display:none}
  .menu-btn{display:block}
  .nav-links.open{display:flex;position:absolute;top:74px;left:0;right:0;flex-direction:column;background:var(--white);border-bottom:1px solid var(--line);padding:20px 24px;gap:16px;align-items:flex-start;box-shadow:0 20px 30px -20px rgba(0,0,0,.2)}
}
@media(max-width:640px){
  .grid-2,.grid-3{grid-template-columns:1fr}
  .cta-band{padding:38px 22px}
  .foot-top{grid-template-columns:1fr;gap:26px}
  .foot-bot{flex-direction:column}
  .hero-stats{gap:18px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:4px}

/* ---- MEDIA INVENTORY PANEL (hero, replaces console) ---- */
.inventory{background:var(--ink);border-radius:16px;overflow:hidden;box-shadow:0 40px 90px -44px rgba(3,58,120,.5),0 0 0 1px rgba(255,255,255,.04)}
.inv-top{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--line-dark)}
.inv-top .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#7E8794}
.inv-top .tag{font-family:var(--mono);font-size:10px;color:var(--blue-400);border:1px solid #1e3a5c;background:rgba(3,114,226,.12);border-radius:4px;padding:3px 9px;letter-spacing:.06em}
.inv-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-dark)}
.inv-item{background:var(--ink);padding:16px 18px;display:flex;align-items:center;gap:12px;transition:background .16s}
.inv-item:hover{background:var(--ink-2)}
.inv-item svg{width:22px;height:22px;color:var(--blue-400);flex-shrink:0}
.inv-item span{font-family:var(--body);font-size:14px;color:#DCE1E8;font-weight:400}
.inv-foot{font-family:var(--mono);font-size:10px;color:#5A6572;padding:12px 18px;border-top:1px solid var(--line-dark);letter-spacing:.05em;line-height:1.5}
@media(max-width:640px){.inv-grid{grid-template-columns:1fr}.inv-item span{font-size:13.5px}}

/* ---- BRAND MARQUEE (rotating strip) ---- */
.marquee{overflow:hidden;width:100%;padding:6px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex;gap:14px;width:max-content;animation:marquee 42s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee .xl{font-family:var(--display);font-weight:700;font-size:16px;color:#9AA2AD;padding:9px 18px;border:1px solid var(--line);border-radius:8px;background:var(--paper);white-space:nowrap;flex-shrink:0}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}.marquee{mask-image:none;-webkit-mask-image:none}}

/* ---- BUTTON ON DARK BAND ---- */
.btn-on-dark{border:2px solid rgba(255,255,255,.28);color:#fff;background:transparent}
.btn-on-dark:hover{border-color:var(--blue-400);color:var(--blue-400);transform:translateY(-2px)}

/* ---- TESTIMONIALS (chat-style) ---- */
.tst-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tst{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;flex-direction:column}
.tst-head{margin-bottom:12px}
.tst-ch{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;padding:4px 10px;border-radius:100px;display:inline-block}
.tst-whatsapp .tst-ch{background:#DCF8C6;color:#1B7A3D}
.tst-slack .tst-ch{background:#F0E6F6;color:#6B2E86}
.tst-email .tst-ch{background:var(--blue-100);color:var(--blue-deep)}
.tst-bubble{background:var(--white);border:1px solid var(--line);border-radius:14px;border-top-left-radius:4px;padding:16px 18px;font-size:14.5px;line-height:1.55;color:var(--slate);flex:1}
.tst-who{display:flex;align-items:center;gap:11px;margin-top:16px}
.tst-av{width:38px;height:38px;border-radius:50%;background:var(--grad-pop);color:#fff;font-family:var(--display);font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tst-nm{font-family:var(--display);font-size:14.5px;font-weight:700;color:var(--ink)}
.tst-rl{font-family:var(--mono);font-size:11px;color:var(--slate-2)}
@media(max-width:960px){.tst-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.tst-grid{grid-template-columns:1fr}}

/* ============================================================
   FOR BRANDS PAGE + FIT EXPLORER
   ============================================================ */

/* SIX DSP JOBS */
.jobs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.job-card{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:26px;transition:.16s}
.job-card:hover{border-color:var(--blue-200);transform:translateY(-3px);box-shadow:0 18px 40px -28px rgba(3,114,226,.28)}
.job-card .ic{width:42px;height:42px;border-radius:11px;background:var(--blue-100);display:flex;align-items:center;justify-content:center;margin-bottom:15px;color:var(--blue)}
.job-card .ic svg{width:21px;height:21px}
.job-card h4{margin-bottom:8px}
.job-card p{font-size:14.5px;color:var(--slate);max-width:none}
@media(max-width:960px){.jobs-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.jobs-grid{grid-template-columns:1fr}}

/* CREATIVE LIST */
.creative-list{display:grid;gap:14px}
.cre-row{background:var(--white);border:1px solid var(--line);border-radius:13px;padding:22px 26px;display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:start}
.cre-row .cre-tag{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;padding:6px 12px;border-radius:100px;white-space:nowrap;height:fit-content}
.cre-row .cre-tag.inc{background:var(--blue-100);color:var(--blue-deep)}
.cre-row .cre-tag.scope{background:var(--paper);color:var(--slate-2);border:1px solid var(--line-2)}
.cre-row h4{margin-bottom:5px}
.cre-row p{font-size:14.5px;color:var(--slate);max-width:none}
@media(max-width:640px){.cre-row{grid-template-columns:1fr;gap:10px}}

/* DAY-60 OUTPUT (SCALE/REFINE/STOP) */
.decision{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px}
.dec-card{border-radius:14px;padding:26px;border:1px solid var(--line)}
.dec-card .dv{font-family:var(--display);font-size:22px;font-weight:800;letter-spacing:-.02em;margin-bottom:8px}
.dec-card.scale{background:var(--blue-100);border-color:var(--blue-200)}
.dec-card.scale .dv{color:var(--blue-deep)}
.dec-card.refine{background:var(--white)}
.dec-card.refine .dv{color:var(--ink)}
.dec-card.stop{background:var(--ink);border-color:var(--ink)}
.dec-card.stop .dv{color:#fff}
.dec-card.stop p{color:#AEB7C4}
.dec-card p{font-size:14.5px;color:var(--slate);max-width:none}
@media(max-width:760px){.decision{grid-template-columns:1fr}}

/* BEFORE / AFTER */
.beforeafter{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ba-col{border-radius:16px;padding:30px}
.ba-col.before{background:var(--white);border:1px solid var(--line)}
.ba-col.after{background:var(--grad-blue);color:#fff}
.ba-col h3{font-size:20px;margin-bottom:16px}
.ba-col.after h3{color:#fff}
.ba-col ul{list-style:none}
.ba-col li{font-size:15px;padding:10px 0 10px 26px;position:relative;border-top:1px solid var(--line)}
.ba-col.before li{color:var(--slate)}
.ba-col.after li{color:rgba(255,255,255,.92);border-top-color:rgba(255,255,255,.15)}
.ba-col li:first-child{border-top:none}
.ba-col.before li::before{content:"•";position:absolute;left:2px;color:var(--slate-2);font-family:var(--mono);font-weight:700}
.ba-col.after li::before{content:"✓";position:absolute;left:0;color:#fff;font-family:var(--mono);font-weight:700}

/* THREE-STEP CLOSE */
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step3{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:28px}
.step3 .s3n{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--blue);letter-spacing:.1em;margin-bottom:14px}
.step3 h4{margin-bottom:8px}
.step3 p{font-size:14.5px;color:var(--slate);max-width:none}
@media(max-width:760px){.steps3{grid-template-columns:1fr}}

/* ============ FIT EXPLORER ============ */
.explorer{background:var(--white);border:1px solid var(--line-2);border-radius:20px;padding:38px;box-shadow:0 30px 70px -44px rgba(10,10,10,.22)}
.exp-intro{text-align:center;margin-bottom:32px}
.exp-intro h3{font-size:clamp(24px,3vw,32px);margin:12px 0 10px}
.exp-intro p{font-size:15px;color:var(--slate-2);max-width:56ch;margin:0 auto}
.exp-group{margin-bottom:30px}
.exp-glabel{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);font-weight:500;margin-bottom:6px}
.exp-ghint{font-size:14px;color:var(--slate-2);margin-bottom:16px}
.exp-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.exp-opt input{position:absolute;opacity:0;width:0;height:0}
.exp-opt label{display:flex;gap:13px;align-items:flex-start;padding:16px 18px;border:1.5px solid var(--line-2);border-radius:12px;background:var(--white);cursor:pointer;transition:border-color .15s,background .15s,transform .1s;font-size:15px;line-height:1.4;color:var(--slate)}
.exp-opt label:hover{border-color:var(--blue-200)}
.exp-opt label:active{transform:scale(.99)}
.exp-opt .tick{width:22px;height:22px;border-radius:7px;border:1.5px solid var(--line-2);flex-shrink:0;display:flex;align-items:center;justify-content:center;color:transparent;font-size:13px;font-weight:700;transition:.15s;margin-top:1px}
.exp-opt input:checked + label{border-color:var(--blue);background:var(--blue-100);color:var(--ink)}
.exp-opt input:checked + label .tick{background:var(--blue);border-color:var(--blue);color:#fff}
.exp-opt input:focus-visible + label{outline:3px solid var(--blue);outline-offset:2px}
.exp-actions{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:8px}
.exp-actions .btn[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none}
.exp-actions .hint{font-family:var(--mono);font-size:12px;color:var(--slate-2)}
@media(max-width:640px){.explorer{padding:24px 18px}.exp-cards{grid-template-columns:1fr}}

/* EXPLORER RESULT */
.exp-result{display:none;margin-top:8px}
.exp-result.show{display:block;animation:reveal .45s ease}
@keyframes reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.result-band{border-radius:16px;padding:30px;margin-bottom:20px;text-align:center}
.result-band.strong{background:var(--grad-blue);color:#fff}
.result-band.good{background:var(--blue-100);border:1px solid var(--blue-200)}
.result-band.emerging{background:var(--white);border:1px solid var(--line-2)}
.result-band.not_yet{background:var(--ink);color:#fff}
.result-band .rlabel{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;margin-bottom:10px;opacity:.85}
.result-band h3{font-size:clamp(22px,3vw,30px);margin-bottom:12px}
.result-band.strong h3,.result-band.not_yet h3{color:#fff}
.result-band p{font-size:16px;max-width:60ch;margin:0 auto}
.result-band.strong p{color:rgba(255,255,255,.92)}
.result-band.not_yet p{color:#AEB7C4}
.result-detail{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}
.result-box{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:24px}
.result-box .rb-k{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--slate-2);margin-bottom:14px}
.opp-chips{display:flex;flex-direction:column;gap:12px}
.opp-chip{border:1px solid var(--blue-200);background:var(--blue-100);border-radius:11px;padding:14px 16px}
.opp-chip.secondary{border-color:var(--line-2);background:var(--paper)}
.opp-chip .oc-rank{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);font-weight:500}
.opp-chip .oc-label{font-family:var(--display);font-size:17px;font-weight:700;color:var(--ink);margin:4px 0 5px}
.opp-chip .oc-mean{font-size:13.5px;color:var(--slate);max-width:none}
.constraint-card .cc-title{font-family:var(--display);font-size:18px;font-weight:700;color:var(--ink);margin-bottom:8px}
.constraint-card .cc-exp{font-size:14.5px;color:var(--slate);max-width:none}
.result-cta{text-align:center;margin-top:6px}
.result-cta .btn{margin-top:4px}
.result-reset{display:inline-block;margin-top:14px;font-family:var(--mono);font-size:12px;color:var(--slate-2);text-decoration:underline;cursor:pointer;background:none;border:none}
@media(max-width:640px){.result-detail{grid-template-columns:1fr}}

/* ============================================================
   FOR AGENCIES PAGE + REVENUE CALCULATOR
   ============================================================ */

/* WHITE-LABEL PROOF BAND */
.wl-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-dark);border-radius:16px;overflow:hidden;border:1px solid var(--line-dark)}
.wl-proof .wl{background:var(--ink);padding:34px 28px;text-align:center}
.wl-proof .wl .wv{font-family:var(--display);font-size:clamp(30px,4vw,44px);font-weight:800;color:var(--blue-400);letter-spacing:-.03em;line-height:1}
.wl-proof .wl .wl-l{font-size:14px;color:#AEB7C4;margin-top:10px}
@media(max-width:760px){.wl-proof{grid-template-columns:1fr}}

/* PLUG US IN capability chips */
.plug{background:var(--grad-blue);border-radius:20px;padding:44px;text-align:center;color:#fff;position:relative;overflow:hidden}
.plug h2{color:#fff;margin-bottom:8px}
.plug .plead{color:rgba(255,255,255,.9);font-size:17px;max-width:52ch;margin:0 auto 26px}
.cap-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;max-width:800px;margin:0 auto 26px}
.cap-chips span{font-family:var(--mono);font-size:12.5px;color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);border-radius:100px;padding:7px 14px}
.plug .plug-foot{font-family:var(--display);font-size:19px;font-weight:700;color:#fff}

/* DELIVERY LAYER (7 items) */
.delivery{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.del-row{background:var(--white);border:1px solid var(--line);border-radius:13px;padding:22px 24px}
.del-row .dk{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);font-weight:500;margin-bottom:8px}
.del-row p{font-size:14.5px;color:var(--slate);max-width:none}
@media(max-width:640px){.delivery{grid-template-columns:1fr}}

/* BUILD VS BUY (3-col comparison) */
.cmp3 table{min-width:720px}
.cmp3 thead th.dspa{color:var(--blue);background:var(--blue-100)}
.cmp3 td.dspa{background:var(--blue-100);color:var(--ink);font-weight:600}

/* ============ REVENUE CALCULATOR ============ */
.calc{background:var(--white);border:1px solid var(--line-2);border-radius:20px;padding:38px;box-shadow:0 30px 70px -44px rgba(10,10,10,.22)}
.calc-intro{text-align:center;margin-bottom:30px}
.calc-intro h3{font-size:clamp(24px,3vw,32px);margin:12px 0 10px}
.calc-intro p{font-size:15px;color:var(--slate-2);max-width:60ch;margin:0 auto}
.calc-grid{display:grid;grid-template-columns:0.92fr 1.08fr;gap:28px;align-items:start}
.calc-inputs{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:26px}
.calc-field{margin-bottom:20px}
.calc-field:last-child{margin-bottom:0}
.calc-field label{display:block;font-size:14px;font-weight:700;color:var(--ink);margin-bottom:4px}
.calc-field .cf-hint{font-size:12.5px;color:var(--slate-2);margin-bottom:10px}
.calc-field input[type=number],.calc-field select{width:100%;background:var(--white);border:1.5px solid var(--line-2);border-radius:9px;padding:12px 14px;color:var(--ink);font-family:var(--body);font-size:16px;transition:border .15s,box-shadow .15s}
.calc-field input[type=number]:focus,.calc-field select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(3,114,226,.12)}
.calc-field select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path d='M2 4l4 4 4-4' stroke='%235A636E' stroke-width='1.5' fill='none'/></svg>");background-repeat:no-repeat;background-position:right 14px center}
.cf-money{position:relative}
.cf-money::before{content:"$";position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--slate-2);font-size:16px;pointer-events:none}
.cf-money input{padding-left:28px!important}
.cf-slider{display:flex;align-items:center;gap:14px}
.cf-slider input[type=range]{flex:1;-webkit-appearance:none;appearance:none;height:6px;border-radius:6px;background:linear-gradient(90deg,var(--blue) 0%,var(--blue) var(--pct,40%),var(--line-2) var(--pct,40%),var(--line-2) 100%);outline:none}
.cf-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--blue);cursor:pointer;border:3px solid #fff;box-shadow:0 2px 6px rgba(3,114,226,.4)}
.cf-slider input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--blue);cursor:pointer;border:3px solid #fff}
.cf-slider .cf-val{font-family:var(--display);font-size:20px;font-weight:800;color:var(--blue);min-width:52px;text-align:right}

/* results */
.calc-results{display:flex;flex-direction:column;gap:18px}
.range-hero{background:var(--grad-blue);border-radius:16px;padding:28px;color:#fff;text-align:center}
.range-hero .rh-k{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.8);margin-bottom:8px}
.range-hero .rh-v{font-family:var(--display);font-size:clamp(28px,4vw,40px);font-weight:800;letter-spacing:-.02em}
.range-hero .rh-sub{font-family:var(--mono);font-size:12px;color:rgba(255,255,255,.85);margin-top:8px}
.calc-scenarios{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.scn{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:16px;text-align:center}
.scn.base{background:var(--blue-100);border-color:var(--blue-200)}
.scn .scn-k{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--slate-2);margin-bottom:6px}
.scn .scn-v{font-family:var(--display);font-size:19px;font-weight:800;color:var(--ink);letter-spacing:-.02em}
.calc-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.met{border:1px solid var(--line);border-radius:12px;padding:16px;text-align:center;background:var(--white)}
.met .met-v{font-family:var(--display);font-size:22px;font-weight:800;color:var(--blue);letter-spacing:-.02em}
.met .met-l{font-size:12px;color:var(--slate-2);margin-top:5px;line-height:1.3}
.oppcost{background:var(--ink);border-radius:14px;padding:22px 24px;color:#fff}
.oppcost .oc-v{font-family:var(--display);font-size:clamp(20px,2.6vw,26px);font-weight:800;color:var(--blue-400);letter-spacing:-.02em;margin-bottom:8px}
.oppcost .oc-note{font-size:13px;color:#AEB7C4;max-width:none}
/* in-house toggle */
.inhouse{border:1px solid var(--line);border-radius:14px;padding:20px 22px}
.inhouse-top{display:flex;align-items:center;justify-content:space-between;gap:14px}
.inhouse-top .ih-title{font-size:14.5px;font-weight:700;color:var(--ink)}
.switch{position:relative;width:46px;height:26px;flex-shrink:0}
.switch input{opacity:0;width:0;height:0}
.switch .track{position:absolute;inset:0;background:var(--line-2);border-radius:100px;transition:.2s;cursor:pointer}
.switch .track::before{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.switch input:checked + .track{background:var(--blue)}
.switch input:checked + .track::before{transform:translateX(20px)}
.switch input:focus-visible + .track{outline:3px solid var(--blue);outline-offset:2px}
.inhouse-body{display:none;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.inhouse-body.show{display:block}
.inhouse-body .calc-field{margin-bottom:14px}
.ih-result{background:var(--paper);border-radius:11px;padding:16px;margin-top:6px}
.ih-result .ih-diff{font-family:var(--display);font-size:20px;font-weight:800;letter-spacing:-.02em}
.ih-result .ih-diff.pos{color:var(--blue)}
.ih-result .ih-diff.neg{color:var(--ink)}
.ih-result .ih-exp{font-size:13px;color:var(--slate);margin-top:6px}
/* cta */
.calc-cta{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px;text-align:center}
.calc-cta .cc-msg{font-size:14.5px;color:var(--slate);margin-bottom:14px}
.calc-cta .btn{width:100%;justify-content:center}
.calc-foot{font-family:var(--mono);font-size:11.5px;color:var(--slate-2);text-align:center;margin-top:18px;line-height:1.6}
@media(max-width:900px){.calc-grid{grid-template-columns:1fr}}
@media(max-width:640px){.calc{padding:24px 18px}.calc-scenarios,.calc-metrics{grid-template-columns:1fr}}

/* ============================================================
   CASE STUDIES PAGE
   ============================================================ */
.filter-bar{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:40px}
.filter-btn{font-family:var(--mono);font-size:13px;padding:9px 18px;border-radius:100px;border:1.5px solid var(--line-2);background:var(--white);color:var(--slate);cursor:pointer;transition:border-color .15s,background .15s,color .15s}
.filter-btn:hover{border-color:var(--blue-200);color:var(--ink)}
.filter-btn.active{background:var(--blue);border-color:var(--blue);color:#fff}
.filter-btn:focus-visible{outline:3px solid var(--blue);outline-offset:2px}

.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.case-card{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:30px;display:flex;flex-direction:column;transition:border-color .18s,box-shadow .18s,transform .18s}
.case-card:hover{border-color:var(--blue-200);box-shadow:0 20px 44px -30px rgba(3,114,226,.28);transform:translateY(-3px)}
.case-card.hide{display:none}
.case-cat{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--slate-2);margin-bottom:12px}
.case-title{font-family:var(--display);font-size:21px;font-weight:700;color:var(--ink);letter-spacing:-.02em;margin-bottom:16px}
.case-headline{font-family:var(--display);font-size:clamp(24px,2.8vw,32px);font-weight:800;color:var(--blue);letter-spacing:-.03em;line-height:1.12;margin-bottom:20px}
.case-block{margin-bottom:13px}
.case-block .cb-k{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);font-weight:500;margin-bottom:5px}
.case-block p{font-size:14.5px;color:var(--slate);max-width:none;line-height:1.55}
.case-metrics{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 4px}
.case-metrics .cm{font-family:var(--mono);font-size:11px;color:var(--slate);background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:5px 9px}
.case-takeaway{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font-size:15px;color:var(--ink);font-weight:700;letter-spacing:-.01em}
.case-takeaway .tk-k{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);font-weight:500;display:block;margin-bottom:6px}
.case-empty{grid-column:1/-1;text-align:center;padding:40px;color:var(--slate-2);font-family:var(--mono);font-size:14px}

/* proof governance band */
.gov{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px}
.gov-item{background:var(--white);border:1px solid var(--line);border-radius:13px;padding:24px}
.gov-item .gk{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);font-weight:500;margin-bottom:8px}
.gov-item p{font-size:14px;color:var(--slate);max-width:none}
@media(max-width:900px){.case-grid{grid-template-columns:1fr}.gov{grid-template-columns:1fr}}

/* ============================================================
   CASE STUDIES PAGE
   ============================================================ */
.cs-filter{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:40px}
.cs-filter button{font-family:var(--mono);font-size:13px;letter-spacing:.02em;color:var(--slate);background:var(--white);border:1.5px solid var(--line-2);border-radius:100px;padding:9px 18px;cursor:pointer;transition:.15s}
.cs-filter button:hover{border-color:var(--blue-200);color:var(--ink)}
.cs-filter button.active{background:var(--blue);border-color:var(--blue);color:#fff}
.cases-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.case-card{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:28px;display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s,border-color .18s}
.case-card:hover{transform:translateY(-3px);box-shadow:0 20px 44px -28px rgba(3,114,226,.28);border-color:var(--blue-200)}
.case-card.hide{display:none}
.case-card .cc-cat{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--slate-2);margin-bottom:12px}
.case-card .cc-title{font-family:var(--display);font-size:20px;font-weight:700;color:var(--ink);letter-spacing:-.01em;margin-bottom:14px}
.case-card .cc-headline{font-family:var(--display);font-size:clamp(22px,2.6vw,28px);font-weight:800;color:var(--blue);letter-spacing:-.02em;line-height:1.12;margin-bottom:6px}
.case-card .cc-est{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#9A6A00;background:#FFF3D6;border:1px solid #F1DFA8;border-radius:100px;padding:4px 10px;margin-bottom:12px}
.case-card .cc-metrics{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}
.case-card .cc-m{font-family:var(--mono);font-size:11px;color:var(--slate);background:var(--paper);border-radius:6px;padding:5px 9px}
.case-card .cc-brief{font-size:14px;color:var(--slate);max-width:none;margin-bottom:14px}
.case-card .cc-brief b{color:var(--ink)}
.case-card .cc-take{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);font-size:14px;color:var(--ink);font-style:italic}
.case-card .cc-take::before{content:"Takeaway: ";font-style:normal;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--blue)}
.case-card.operator{background:var(--ink);border-color:var(--ink)}
.case-card.operator .cc-cat{color:#7E8794}
.case-card.operator .cc-title,.case-card.operator .cc-headline{color:#fff}
.case-card.operator .cc-headline{color:var(--blue-400)}
.case-card.operator .cc-brief{color:#AEB7C4}
.case-card.operator .cc-brief b{color:#fff}
.case-card.operator .cc-m{background:var(--ink-2);color:#AEB7C4}
.case-card.operator .cc-take{border-top-color:var(--line-dark);color:#fff}
@media(max-width:760px){.cases-grid{grid-template-columns:1fr}}

/* ============================================================
   ABOUT PAGE
   ============================================================ */
.principles{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.principle{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:28px;transition:.16s}
.principle:hover{border-color:var(--blue-200)}
.principle .pn{font-family:var(--mono);font-size:13px;font-weight:500;color:var(--blue);letter-spacing:.08em;margin-bottom:14px}
.principle h4{margin-bottom:9px;font-size:19px}
.principle p{font-size:14.5px;color:var(--slate);max-width:none}
.sec-ink .principle{background:var(--ink-2);border-color:var(--line-dark)}
.sec-ink .principle p{color:#AEB7C4}
@media(max-width:640px){.principles{grid-template-columns:1fr}}

.built-list{display:grid;gap:14px;max-width:800px}
.built-row{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;padding:18px 0;border-top:1px solid var(--line)}
.built-row:first-child{border-top:none}
.built-row .bi{width:40px;height:40px;border-radius:11px;background:var(--blue-100);display:flex;align-items:center;justify-content:center;color:var(--blue);flex-shrink:0}
.built-row .bi svg{width:20px;height:20px}
.built-row h4{margin-bottom:5px}
.built-row p{font-size:15px;color:var(--slate);max-width:none}

.founder-card{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;align-items:center;background:var(--white);border:1px solid var(--line);border-radius:20px;padding:40px}
.founder-photo{aspect-ratio:4/5;background:var(--grad-soft);border-radius:16px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line)}
.founder-photo span{font-family:var(--mono);font-size:12px;color:var(--slate-2);letter-spacing:.08em;text-align:center;padding:20px}
.founder-cred{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.founder-cred .fc{font-family:var(--mono);font-size:11.5px;color:var(--slate);background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:6px 11px}
@media(max-width:760px){.founder-card{grid-template-columns:1fr;gap:28px;padding:28px}.founder-photo{aspect-ratio:3/2;max-width:280px}}

/* ============================================================
   INSIGHTS HUB + ARTICLE (PROSE)
   ============================================================ */
/* Featured guide */
.feat-guide{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--ink);border-radius:20px;overflow:hidden;margin-bottom:40px}
.feat-guide .fg-art{background:var(--grad-ink);padding:44px;display:flex;flex-direction:column;justify-content:center;min-height:280px}
.feat-guide .fg-k{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--blue-400);margin-bottom:14px}
.feat-guide .fg-art h3{font-size:clamp(24px,3vw,32px);color:#fff;margin-bottom:12px;line-height:1.1}
.feat-guide .fg-art p{color:#AEB7C4;font-size:15.5px;max-width:none;margin-bottom:20px}
.feat-guide .fg-art .btn{align-self:flex-start}
.feat-guide .fg-visual{background:var(--grad-blue);display:flex;align-items:center;justify-content:center;padding:40px;position:relative}
.feat-guide .fg-visual .fg-big{font-family:var(--display);font-size:clamp(60px,10vw,120px);font-weight:800;color:rgba(255,255,255,.16);letter-spacing:-.04em;line-height:.9;text-align:center}
@media(max-width:760px){.feat-guide{grid-template-columns:1fr}.feat-guide .fg-visual{min-height:160px}}

.insights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.guide-card{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:26px;display:flex;flex-direction:column;transition:.16s;position:relative}
.guide-card.live:hover{transform:translateY(-3px);box-shadow:0 20px 44px -28px rgba(3,114,226,.28);border-color:var(--blue-200)}
.guide-card .gc-k{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);font-weight:500;margin-bottom:12px}
.guide-card h4{margin-bottom:8px;line-height:1.25}
.guide-card p{font-size:14px;color:var(--slate);max-width:none;flex:1}
.guide-card .gc-link{margin-top:16px;font-family:var(--mono);font-size:12.5px;color:var(--blue);font-weight:500}
.guide-card.soon{background:var(--paper);border-style:dashed}
.guide-card.soon .gc-k{color:var(--slate-2)}
.guide-card .gc-soon{position:absolute;top:20px;right:20px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--slate-2);background:var(--white);border:1px solid var(--line-2);border-radius:100px;padding:4px 10px}
@media(max-width:960px){.insights-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.insights-grid{grid-template-columns:1fr}}

/* Article prose */
.prose{max-width:740px;margin:0 auto}
.prose p{margin-bottom:20px;font-size:18px;color:var(--slate);max-width:none;line-height:1.65}
.prose h2{margin:44px 0 16px;font-size:clamp(24px,3vw,32px)}
.prose h3{margin:32px 0 12px;font-size:22px}
.prose ul{margin:0 0 22px 4px;list-style:none}
.prose li{position:relative;padding:8px 0 8px 28px;font-size:17px;color:var(--slate);line-height:1.55}
.prose li::before{content:"→";position:absolute;left:0;color:var(--blue);font-weight:700}
.prose .callout{background:var(--blue-100);border-radius:12px;padding:22px 26px;margin:28px 0;border-left:3px solid var(--blue)}
.prose .callout p{margin:0;font-size:16.5px;color:var(--ink)}
.prose .callout p b{color:var(--ink)}
.prose .callout.dark{background:var(--ink);border-left-color:var(--blue-400)}
.prose .callout.dark p{color:#fff}
.article-toc{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:24px 28px;margin-bottom:36px}
.article-toc .toc-k{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--slate-2);margin-bottom:12px}
.article-toc ul{list-style:none;margin:0}
.article-toc li{padding:6px 0}
.article-toc a{font-size:15px;color:var(--slate);transition:color .15s}
.article-toc a:hover{color:var(--blue)}
.article-meta{font-family:var(--mono);font-size:12.5px;color:var(--slate-2);margin-top:14px}

/* ============================================================
   LEGAL / UTILITY PAGES + COOKIE BANNER
   ============================================================ */
.legal{max-width:800px;margin:0 auto}
.legal h2{margin:38px 0 14px;font-size:24px}
.legal h3{margin:26px 0 10px;font-size:18px}
.legal p{margin-bottom:16px;font-size:16px;color:var(--slate);max-width:none;line-height:1.62}
.legal ul{margin:0 0 18px 4px;list-style:none}
.legal li{position:relative;padding:6px 0 6px 24px;font-size:16px;color:var(--slate);line-height:1.55}
.legal li::before{content:"•";position:absolute;left:2px;color:var(--blue);font-weight:700}
.legal .updated{font-family:var(--mono);font-size:13px;color:var(--slate-2);margin-bottom:6px}
.legal a{color:var(--blue);text-decoration:underline}
.legal-toc{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:20px 24px;margin:24px 0 32px}
.legal-toc a{display:inline-block;margin:4px 14px 4px 0;font-size:14px}

/* 404 / thank-you center */
.center-stage{min-height:66vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 24px}
.center-stage .big404{font-family:var(--display);font-size:clamp(80px,16vw,160px);font-weight:800;color:var(--blue-100);letter-spacing:-.04em;line-height:.9}
.center-stage .tickbig{width:72px;height:72px;border-radius:50%;background:var(--blue);color:#fff;font-size:36px;display:flex;align-items:center;justify-content:center;margin-bottom:22px}
.center-stage h1{margin-bottom:16px}
.center-stage p{max-width:52ch;margin:0 auto 26px}
.center-stage .btn-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}

/* Cookie banner */
.cookie-banner{position:fixed;bottom:18px;left:18px;right:18px;max-width:560px;margin:0 auto;background:var(--ink);color:#DCE1E8;border-radius:14px;padding:20px 22px;box-shadow:0 24px 60px -24px rgba(0,0,0,.6);z-index:200;display:none}
.cookie-banner.show{display:block}
.cookie-banner p{font-size:14px;color:#AEB7C4;margin-bottom:14px;max-width:none}
.cookie-banner a{color:var(--blue-400);text-decoration:underline}
.cookie-banner .cb-actions{display:flex;gap:10px;flex-wrap:wrap}
.cookie-banner .btn{font-size:14px;padding:10px 18px}
.cookie-banner .btn-decline{background:transparent;border:1.5px solid #33404d;color:#fff}
.cookie-banner .btn-decline:hover{border-color:#4a5866}

/* ============================================================
   PLATFORM ECOSYSTEM SECTION (reach / inventory cloud)
   ============================================================ */
.platform-eco{background:radial-gradient(ellipse 90% 70% at 50% 46%,#EAF2FF 0%,#F5F5F5 60%,#FFFFFF 100%);overflow:hidden}
.eco-head{max-width:720px;margin:0 auto 12px;text-align:center}
.eco-head h2{margin-bottom:12px}
.eco-head .eco-sub{font-family:var(--display);font-size:clamp(17px,2.2vw,22px);font-weight:700;color:var(--blue);letter-spacing:-.01em;margin-bottom:16px}
.eco-head p{font-size:16px;color:var(--slate);max-width:60ch;margin:0 auto}
.eco-cloud{position:relative;max-width:1000px;margin:18px auto 0;padding:30px 10px 10px;min-height:520px;display:flex;align-items:center;justify-content:center}
.eco-bg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.eco-bg .orbit{fill:none;stroke:#C9DCF5;stroke-width:1;stroke-dasharray:2 7;opacity:.7}
.eco-bg .node{fill:#8FB8F0}
.eco-bg .node.b{fill:var(--blue)}
.eco-chips{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px 18px;max-width:860px}
.eco-chip{background:#fff;border-radius:16px;box-shadow:0 10px 30px -12px rgba(20,50,90,.18),0 0 0 1px rgba(20,50,90,.04);display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease;animation:ecoFloat 6s ease-in-out infinite}
.eco-chip:hover{transform:translateY(-4px) scale(1.03);box-shadow:0 18px 40px -14px rgba(20,50,90,.28)}
.eco-chip img{max-width:100%;max-height:100%;object-fit:contain;display:block}
/* placeholder state (no logo file yet) */
.eco-chip.ph{background:linear-gradient(180deg,#fff,#F3F7FF)}
.eco-chip.ph::after{content:attr(data-name);font-family:var(--display);font-weight:700;color:#8A97A8;letter-spacing:-.01em;text-align:center;padding:0 8px;line-height:1.1}
/* tiers: size by importance (stronger hierarchy) */
.eco-chip.t1{width:264px;height:128px;padding:26px 34px}
.eco-chip.t1.ph::after{font-size:28px}
.eco-chip.t2{width:198px;height:104px;padding:20px 28px}
.eco-chip.t2.ph::after{font-size:22px}
.eco-chip.t3{width:158px;height:84px;padding:16px 22px}
.eco-chip.t3.ph::after{font-size:17px}
.eco-chip.t4{width:120px;height:66px;padding:13px 16px}
.eco-chip.t4.ph::after{font-size:14px}
.eco-chip.t5{width:150px;height:62px;padding:13px 18px}
.eco-chip.t5.ph::after{font-size:13px}
/* Amazon (t1) sits alone, centered on its own row for emphasis.
   The ::after break forces the flex row to wrap right after it. */
.eco-chip.t1{margin:0 auto}
.eco-chips::after{content:"";flex-basis:100%;height:0;order:1}
.eco-chip.t1{order:0}
.eco-chip:not(.t1){order:2}
.eco-chip.t1{animation-delay:0s}
.eco-chip.t2{animation-delay:.6s}
.eco-chip.t3{animation-delay:1.2s}
.eco-chip.t4{animation-delay:1.8s}
.eco-chip.t5{animation-delay:2.4s}
@keyframes ecoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.eco-caption{text-align:center;margin-top:26px;font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--slate-2);font-weight:500}
.eco-avail{text-align:center;margin-top:14px;font-size:12.5px;color:var(--slate-2);font-style:italic;max-width:60ch;margin-left:auto;margin-right:auto}
@media(max-width:640px){
  .eco-cloud{min-height:0;padding:16px 4px}
  .eco-chips{gap:12px}
  .eco-chip.t1{width:170px;height:84px}.eco-chip.t1.ph::after{font-size:20px}
  .eco-chip.t2{width:140px;height:72px}.eco-chip.t2.ph::after{font-size:16px}
  .eco-chip.t3{width:120px;height:62px}.eco-chip.t3.ph::after{font-size:14px}
  .eco-chip.t4{width:96px;height:52px}.eco-chip.t4.ph::after{font-size:12px}
  .eco-chip.t5{width:118px;height:50px}.eco-chip.t5.ph::after{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.eco-chip{animation:none}}
