  :root{--coral:#FF6B68}

  [data-theme="midnight"]{--paper:#0A0D12;--card:#0F172A;--ink:#F6F7F5;--muted:#9AA6BC;--muted2:#8794AE;
    --blue:#1756FF;--cyan:#00E1FF;--teal:#2FE0BE;--coral:#FF8A87;
    --line:rgba(255,255,255,.12);--line2:rgba(255,255,255,.07)}
  section{position:relative}.act{padding:clamp(60px,10vh,110px) 0}
  .eyebrow.c{justify-content:center}.eyebrow.c::before{display:none}
  .muted{color:var(--muted)}

  /* HERO — evidence-led, big numbers */
  .chero{position:relative;padding:clamp(130px,20vh,210px) 0 clamp(30px,5vh,56px);text-align:center;overflow:hidden;
    background:radial-gradient(60% 55% at 50% 24%,rgba(37,99,235,.10),transparent 70%),var(--paper)}
  .chero .dots{position:absolute;inset:0;z-index:0;opacity:.5;
    background-image:radial-gradient(currentColor 1px,transparent 1.4px);background-size:26px 26px;color:color-mix(in srgb,var(--ink) 8%,transparent);
    -webkit-mask-image:radial-gradient(70% 60% at 50% 30%,#000,transparent 75%);mask-image:radial-gradient(70% 60% at 50% 30%,#000,transparent 75%)}
  .chero .in{position:relative;z-index:1;max-width:960px;margin:0 auto;padding:0 clamp(24px,5vw,64px)}
  .chero .eyebrow{margin-bottom:22px}
  .chero h1{font-size:clamp(32px,5.4vw,72px);max-width:16ch;margin:0 auto;letter-spacing:-.03em}
  .chero h1 .k{color:var(--blue)}
  .chero .sub{margin:22px auto 0;max-width:52ch;color:var(--muted);font-size:clamp(15px,1.3vw,18px)}
  .bignums{margin-top:clamp(34px,6vh,60px);display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  .bn .n{font-family:var(--display);font-weight:600;font-size:clamp(38px,6vw,76px);line-height:1;letter-spacing:-.03em;color:var(--ink)}
  .bn .n .s{color:var(--blue)}
  .bn .l{margin-top:10px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
  @media(max-width:720px){.bignums{grid-template-columns:1fr;gap:30px}}

  /* case study modules */
  .cs{border-top:1px solid var(--line2)}
  .cs .grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(30px,5vw,72px)}
  @media(max-width:860px){.cs .grid{grid-template-columns:1fr;gap:28px}}
  .cs .side{position:relative}
  .cs .tag{font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
  .cs .name{font-size:clamp(30px,4vw,52px);margin-top:14px;letter-spacing:-.02em}
  .cs .meta{margin-top:12px;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted2)}
  .cs .chip{margin-top:20px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:100px;padding:8px 14px;font-size:13px;text-decoration:none;transition:border-color .3s}
  .cs .chip:hover{border-color:var(--blue)}.cs .chip b{color:var(--blue)}
  .cs .chip .d{width:7px;height:7px;border-radius:50%;background:var(--cyan)}
  .cs .csimg{margin-top:24px;position:relative;border-radius:18px;overflow:hidden;aspect-ratio:4/3;border:1px solid var(--line2);display:grid;place-items:center;
    background:radial-gradient(120% 120% at 24% 18%,rgba(37,99,235,.16),transparent 55%),linear-gradient(160deg,#e6f0fc,var(--card))}
  [data-theme="midnight"] .cs .csimg{background:radial-gradient(120% 120% at 24% 18%,#2563EB,transparent 55%),linear-gradient(160deg,#0C2A5E,#0B1220)}
  .cs .csimg .cap{text-align:center;padding:0 16px}
  .cs .csimg .cap .t{font-family:var(--display);font-weight:600;font-size:15px;color:var(--ink)}[data-theme="midnight"] .cs .csimg .cap .t{color:#fff}
  .cs .csimg .cap .n{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;margin-top:7px;color:var(--muted)}
  .cs .csimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;display:block}
  .cs h3.res-h{font-size:clamp(22px,2.6vw,32px);max-width:20ch}
  .cs .sum{margin-top:16px;color:var(--muted);font-size:clamp(15px,1.2vw,18px);max-width:54ch}
  .cs .stats{margin-top:26px;display:flex;flex-wrap:wrap;gap:14px}
  .cs .stat{flex:1 1 130px;background:var(--card);border:1px solid var(--line2);border-radius:16px;padding:18px 18px}
  .cs .stat .n{font-family:var(--display);font-weight:600;font-size:clamp(24px,2.8vw,34px);line-height:1;color:var(--ink)}
  .cs .stat .n .s{color:var(--blue)}
  .cs .stat .l{margin-top:8px;font-size:12px;color:var(--muted)}
  .cs .results{margin-top:26px;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line2);border:1px solid var(--line2);border-radius:16px;overflow:hidden}
  .cs .res{background:var(--card);padding:20px 20px}
  .cs .res .rt{font-family:var(--display);font-weight:600;font-size:15px;display:flex;align-items:center;gap:9px}
  .cs .res .rt::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--blue)}
  .cs .res p{margin-top:7px;font-size:13.5px;color:var(--muted)}
  @media(max-width:520px){.cs .results{grid-template-columns:1fr}}

  /* testimonial full-bleed */
  .quote{position:relative;left:50%;transform:translateX(-50%);width:100vw;background:var(--ink);color:var(--paper);text-align:center;padding:clamp(80px,14vh,150px) 24px;margin:clamp(30px,6vh,70px) 0}
  [data-theme="midnight"] .quote{background:#05070b}
  .quote .qm{font-family:var(--display);font-size:60px;line-height:0;color:var(--blue);opacity:.6}
  .quote blockquote{margin:18px auto 0;max-width:24ch;font-family:var(--display);font-weight:500;font-size:clamp(24px,3.4vw,44px);color:#fff;letter-spacing:-.02em;line-height:1.15}
  .quote blockquote .k{color:var(--cyan)}
  .quote .by{margin-top:24px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#AEB6C4}

  /* roster */
  .roster{text-align:center}
  .roster .row{margin-top:30px;display:flex;flex-wrap:wrap;justify-content:center;gap:14px}
  .roster .lg{min-width:150px;height:64px;border:1px solid var(--line2);border-radius:14px;display:grid;place-items:center;background:#fff;padding:12px 20px}
  .roster .lg img{max-width:124px;max-height:34px;object-fit:contain;filter:grayscale(1);opacity:.72;transition:filter .35s,opacity .35s}
  .roster .lg:hover img{filter:none;opacity:1}
  .roster .lg.ghost{color:var(--muted2);font-weight:500;font-size:12px;letter-spacing:.14em;text-transform:uppercase;background:var(--card)}

  h2.big{font-size:clamp(28px,4.4vw,56px);max-width:20ch}h2.big .g{color:var(--blue)}

  .final{text-align:center;padding:clamp(90px,14vh,150px) 0;background:radial-gradient(46% 60% at 50% 50%,rgba(37,99,235,.09),transparent 70%),var(--paper)}
  .final h2{font-size:clamp(32px,5vw,66px);max-width:16ch;margin:0 auto}.final h2 .k{color:var(--blue)}
  .final .cta{margin-top:30px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
  [data-theme="midnight"] .cs .csimg{border-color:transparent;background:#0B1220}
