/* ════════════════════════════════════════════════════════════════════════════
   Fractional CMOZ · Spruce dark (v7, 2026-10-14)
   The whole site's stylesheet. Replaces the legacy layers (assets/*.css, site.css)
   on every Fractional CMOZ page. Sections:
     1. Fonts and tokens     2. Base             3. Logo, header, mega menu, mobile menu
     4. Homepage             5. Shared closing CTA and footer
     6. Inner pages (pg-*)   7. Forms, calculator, notify    8. Book pop-up    9. Responsive
   ════════════════════════════════════════════════════════════════════════════ */

/* ---------- 1. Fonts (self-hosted, Fontshare) and tokens ---------- */
@font-face{font-family:'Cabinet Grotesk';font-weight:500;font-style:normal;font-display:swap;src:url(fonts/CabinetGrotesk-500.woff2) format('woff2')}
@font-face{font-family:'Cabinet Grotesk';font-weight:700;font-style:normal;font-display:swap;src:url(fonts/CabinetGrotesk-700.woff2) format('woff2')}
@font-face{font-family:'Cabinet Grotesk';font-weight:800;font-style:normal;font-display:swap;src:url(fonts/CabinetGrotesk-800.woff2) format('woff2')}
@font-face{font-family:'Satoshi';font-weight:400;font-style:normal;font-display:swap;src:url(fonts/Satoshi-400.woff2) format('woff2')}
@font-face{font-family:'Satoshi';font-weight:400;font-style:italic;font-display:swap;src:url(fonts/Satoshi-400i.woff2) format('woff2')}
@font-face{font-family:'Satoshi';font-weight:500;font-style:normal;font-display:swap;src:url(fonts/Satoshi-500.woff2) format('woff2')}
@font-face{font-family:'Satoshi';font-weight:600 700;font-style:normal;font-display:swap;src:url(fonts/Satoshi-700.woff2) format('woff2')}

:root{color-scheme:dark;
  --bg:#0F2620;--bg2:#0B1E19;--surface:rgba(241,238,229,.045);--surface2:#16392F;
  --line:rgba(241,238,229,.13);--line2:rgba(241,238,229,.24);--line3:rgba(241,238,229,.45);
  --ink:#F1EEE5;--ink2:#BFCDC4;--ink3:#93A79B;--ac:#8FDDA0;--acFill:#8FDDA0;--acInk:#0F2620;
  --btn:#8FDDA0;--btnInk:#0F2620;--focus:#8FDDA0;--shadow:rgba(0,0,0,.55);--hdrBg:rgba(15,38,32,.84);
  --navHover:rgba(241,238,229,.07);--scrim:rgba(4,12,10,.5);--rollInk:#8FDDA0;--rollHl:transparent;
  --plOnLine:#8FDDA0;--plOnBg:rgba(143,221,160,.09);--dotOn:#8FDDA0;--dotInk:#0F2620;--chip:rgba(143,221,160,.14);
  --osBg:#123129;--osGlow:radial-gradient(60% 55% at 50% 45%,rgba(143,221,160,.10),transparent 70%);
  --track:rgba(241,238,229,.1);--barFill:#8FDDA0;--barLow:#F4A08F;--good:#8FDDA0;--wire:rgba(241,238,229,.2);
  --phInk:#BFCDC4;--phBg:rgba(241,238,229,.05);--phLine:rgba(241,238,229,.38);
  --featBg:#8FDDA0;--featInk:#0F2620;--featInk2:#25473B;--featLine:rgba(15,38,32,.2);--featChip:rgba(15,38,32,.1);
  --cv1:#8FDDA0;--cvInk1:#0F2620;--cv2:#F1EEE5;--cvInk2:#0F2620;--cv3:#1E4A3D;--cvInk3:#F1EEE5;--cv4:#081713;--cvInk4:#8FDDA0;
  --finBg:#8FDDA0;--finInk:#0F2620;--finInk2:#25473B;--finAc:#0F2620;--finBtn:#0F2620;--finBtnInk:#F1EEE5;
  --finLine:rgba(15,38,32,.4);--finMarkOp:.1;--logoAc:#8FDDA0;--logoLine:#8FDDA0;--r:16px;--rp:999px;
  --field:rgba(241,238,229,.06);--bad:#F4A08F;
  /* theme-dependent extras (2026-10-14b) */
  --heroGlow:radial-gradient(60% 55% at 50% 0%,rgba(143,221,160,.12),transparent 70%);
  --pgGlow:radial-gradient(55% 70% at 18% 0%,rgba(143,221,160,.10),transparent 70%);
  --qOff:rgba(241,238,229,.07);--qOffInk:#F1EEE5;--pgQ:rgba(241,238,229,.06);--pgQ4:rgba(143,221,160,.24);--pgQR:rgba(241,238,229,.11);
  --ring:rgba(143,221,160,.2);--optBg:#0F2620;--optInk:#F1EEE5;--popShadow:rgba(0,0,0,.8);--backdrop:rgba(4,12,10,.66);
  --chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M1.5 3.5 5 7l3.5-3.5' fill='none' stroke='%23BFCDC4' stroke-width='1.6'/%3E%3C/svg%3E");
  --stage:radial-gradient(70% 70% at 50% 40%,rgba(143,221,160,.12),transparent 70%),#0C211B;--stageLine:rgba(241,238,229,.1);
  --bkShadow:rgba(0,0,0,.6)}
/* Spruce light: same structure, light tokens (cmoz-home-mockups/_shared/build.py SPRUCE_LIGHT). Set by the head script. */
:root[data-theme=light]{color-scheme:light;
  --bg:#F3F4EE;--bg2:#E8EBE1;--surface:#FFFFFF;--surface2:#FFFFFF;
  --line:rgba(15,38,32,.12);--line2:rgba(15,38,32,.24);--line3:rgba(15,38,32,.45);
  --ink:#0F2620;--ink2:#3B5047;--ink3:#55675E;--ac:#17703F;--acFill:#17703F;--acInk:#FFFFFF;
  --btn:#0F2620;--btnInk:#F3F4EE;--focus:#17703F;--shadow:rgba(15,38,32,.28);--hdrBg:rgba(243,244,238,.86);
  --navHover:rgba(15,38,32,.06);--scrim:rgba(15,38,32,.22);--rollInk:#17703F;--rollHl:transparent;
  --plOnLine:#17703F;--plOnBg:#E4F1E6;--dotOn:#17703F;--dotInk:#FFFFFF;--chip:#E2F0E4;
  --osBg:#FFFFFF;--osGlow:none;
  --track:rgba(15,38,32,.08);--barFill:#17703F;--barLow:#B5412F;--good:#17703F;--wire:rgba(15,38,32,.2);
  --phInk:#55675E;--phBg:#F7F8F3;--phLine:rgba(15,38,32,.38);
  --featBg:#0F2620;--featInk:#F1EEE5;--featInk2:#BFCDC4;--featLine:rgba(241,238,229,.16);--featChip:rgba(241,238,229,.1);
  --cv1:#0F2620;--cvInk1:#F1EEE5;--cv2:#17703F;--cvInk2:#FFFFFF;--cv3:#DCEBDD;--cvInk3:#0F2620;--cv4:#FFFFFF;--cvInk4:#0F2620;
  --finBg:#0F2620;--finInk:#F1EEE5;--finInk2:#BFCDC4;--finAc:#8FDDA0;--finBtn:#8FDDA0;--finBtnInk:#0F2620;
  --finLine:rgba(241,238,229,.32);--finMarkOp:.1;--logoAc:#17703F;--logoLine:#17703F;
  --field:#FFFFFF;--bad:#B5412F;
  --heroGlow:radial-gradient(70% 60% at 50% 0%,#E4F1E6,transparent 70%);
  --pgGlow:radial-gradient(55% 70% at 18% 0%,#E4F1E6,transparent 70%);
  --qOff:rgba(15,38,32,.06);--qOffInk:#0F2620;--pgQ:rgba(15,38,32,.07);--pgQ4:rgba(23,112,63,.22);--pgQR:rgba(15,38,32,.13);
  --ring:rgba(23,112,63,.18);--optBg:#FFFFFF;--optInk:#0F2620;--popShadow:rgba(15,38,32,.35);--backdrop:rgba(15,38,32,.4);
  --chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M1.5 3.5 5 7l3.5-3.5' fill='none' stroke='%233B5047' stroke-width='1.6'/%3E%3C/svg%3E");
  --stage:radial-gradient(70% 70% at 50% 40%,#E4F1E6,transparent 72%),#FFFFFF;--stageLine:rgba(15,38,32,.1);
  --bkShadow:rgba(15,38,32,.42)}

/* ---------- 2. Base ---------- */
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-padding-top:88px}
html,body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{background:var(--bg);color:var(--ink);font-family:var(--fb);font-size:17px;line-height:1.55;font-weight:400;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;text-align:inherit}
img,svg{display:block}
ul{list-style:none}
:focus-visible{outline:2.5px solid var(--focus);outline-offset:3px;border-radius:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:16px;top:-60px;z-index:100;background:var(--btn);color:var(--btnInk);padding:10px 16px;border-radius:8px;font-weight:700}
.skip:focus{top:12px}
:root{--fh:'Cabinet Grotesk',system-ui,sans-serif;--fb:'Satoshi',system-ui,sans-serif;--wrap:1312px;--gut:64px;--rad:var(--r,14px);--pill:var(--rp,999px)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
h1,h2,h3,h4{font-family:var(--fh);font-weight:800;letter-spacing:-.03em;line-height:1.02;color:var(--ink)}
h2{font-size:60px;letter-spacing:-.035em}
h3{font-size:24px;letter-spacing:-.02em;line-height:1.12;font-weight:700}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--fb);font-weight:700;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--ac)}
.lede{font-size:21px;line-height:1.5;color:var(--ink2);max-width:46ch}
.sec{padding:128px 0}
.sec-h{display:flex;flex-direction:column;gap:20px;margin-bottom:56px}
.sec-h.c{align-items:center;text-align:center}
.sec-h.c .lede{margin:0 auto}
.sec-h.row{flex-direction:row;justify-content:space-between;align-items:flex-end;gap:48px}
.sec-h.row>div{display:flex;flex-direction:column;gap:20px}
.alt{background:var(--bg2)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--btn);color:var(--btnInk);font-weight:700;font-size:17px;padding:18px 30px;border-radius:var(--pill);white-space:nowrap;transition:transform .15s,box-shadow .15s,background-color .15s;border:1.5px solid var(--btn)}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px -10px var(--shadow)}
.btn.sm{font-size:15px;padding:11px 18px}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line2)}
.btn.ghost:hover{border-color:var(--ink)}
.tl{font-weight:700;color:var(--ink);display:inline-flex;align-items:center;gap:8px;text-decoration:underline;text-decoration-color:var(--line2);text-underline-offset:6px;text-decoration-thickness:1.5px;transition:text-decoration-color .15s}
.tl:hover{text-decoration-color:currentColor}
.arr{display:inline-block;transition:transform .15s}
a:hover .arr{transform:translateX(3px)}
.ph{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--phInk);background:var(--phBg);border:1px dashed var(--phLine);padding:3px 8px;border-radius:6px;white-space:nowrap}

/* ---------- 3. Logo, header, mega menu, mobile menu ---------- */
/* Logo */
.logo{display:inline-flex;align-items:center;gap:11px;color:var(--ink);flex:none}
.logo svg{width:40px;height:40px;flex:none}
.logo .q4{fill:var(--logoAc)}
/* The Split + the one-weight wordmark (Cabinet Grotesk 700, title case), Zach 2026-10-15 */
.logo-w{font-family:var(--fh);font-weight:700;font-size:24px;letter-spacing:-.035em;line-height:1;white-space:nowrap}

/* ---------- Header + mega menu ---------- */
.hdr{position:sticky;top:0;z-index:50;background:var(--hdrBg);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .2s,background-color .2s}
.hdr.scrolled,.hdr.open{border-bottom-color:var(--line)}
.hdr.open{background:var(--bg)}
.hdr-bar{display:flex;align-items:center;height:80px;gap:18px}
.nav{display:flex;align-items:center;gap:0;margin-left:8px;flex:1}
.nav-i{position:static}
.nav-t{display:inline-flex;align-items:center;gap:5px;font-size:15px;font-weight:500;color:var(--ink);padding:10px 9px;border-radius:8px;white-space:nowrap;transition:background-color .15s}
.nav-t:hover,.nav-t[aria-expanded=true]{background:var(--navHover)}
.nav-t .chev{width:10px;height:10px;transition:transform .2s;opacity:.7}
.nav-t[aria-expanded=true] .chev{transform:rotate(180deg)}
.hdr-r{display:flex;align-items:center;gap:20px;margin-left:auto}
.hdr-r .call{font-size:15.5px;font-weight:500;white-space:nowrap;display:none}
@media (min-width:1361px){.hdr-r .call{display:inline}}
.hdr-r .call:hover{text-decoration:underline;text-underline-offset:5px}
.burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;margin-left:auto}
.burger span{display:block;width:22px;height:2px;background:var(--ink);position:relative;transition:background-color .2s}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:22px;height:2px;background:var(--ink);transition:transform .2s,top .2s}
.burger span::before{top:-7px}.burger span::after{top:7px}
.burger[aria-expanded=true] span{background:transparent}
.burger[aria-expanded=true] span::before{top:0;transform:rotate(45deg)}
.burger[aria-expanded=true] span::after{top:0;transform:rotate(-45deg)}

.mega{position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 30px 60px -30px var(--shadow);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .16s,transform .16s,visibility 0s .16s}
.mega.on{opacity:1;visibility:visible;transform:none;transition:opacity .16s,transform .16s}
.mega-in{display:grid;gap:40px;padding-top:40px;padding-bottom:44px}
.mg-k{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin-bottom:14px}
.mg-l{display:flex;flex-direction:column;gap:2px}
.mg-a{display:block;padding:10px 12px;margin:0 -12px;border-radius:10px;transition:background-color .12s}
.mg-a:hover{background:var(--navHover)}
.mg-a b{display:block;font-weight:700;font-size:16px;color:var(--ink)}
.mg-a span{display:block;font-size:14.5px;line-height:1.45;color:var(--ink2);margin-top:2px}
.mg-s{display:block;padding:7px 0;font-size:15.5px;color:var(--ink);font-weight:500}
.mg-s:hover{color:var(--ac);text-decoration:underline;text-underline-offset:4px}
.mg-feat{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:26px}
.mg-feat .big{font-family:var(--fh);font-weight:800;font-size:46px;letter-spacing:-.03em;line-height:1}
.mg-feat p:not(.mg-k){font-size:15px;color:var(--ink2);margin-top:8px;line-height:1.5}
.mg-mission h3{font-size:30px;line-height:1.08;margin-bottom:14px}
.mg-mission p:not(.mg-k){font-size:16px;color:var(--ink2);line-height:1.55;margin-bottom:18px}
.mg-foot{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 32px;padding-top:22px;border-top:1px solid var(--line);font-size:15px}
.mg-foot a{font-weight:600}
.mg-foot a:hover{text-decoration:underline;text-underline-offset:4px}
.mg-ind h4{font-size:20px;letter-spacing:-.015em;margin-bottom:6px}
.mg-ind h4 a:hover{color:var(--ac)}
.mg-ind p{font-size:14px;color:var(--ink2);line-height:1.45;margin-bottom:10px}
.mg-ind .mg-s{padding:5px 0;font-size:15px}
.scrim{position:fixed;inset:80px 0 0;background:var(--scrim);opacity:0;visibility:hidden;transition:opacity .16s;z-index:40}
.scrim.on{opacity:1;visibility:visible}

/* Mobile menu */
.mnav{position:fixed;inset:80px 0 0;background:var(--bg);z-index:49;overflow-y:auto;overscroll-behavior:contain;padding:8px 20px 28px;display:none}
.mnav.on{display:block}
.mnav-g{border-bottom:1px solid var(--line)}
.mnav-t{display:flex;width:100%;justify-content:space-between;align-items:center;padding:18px 0;font-family:var(--fh);font-weight:700;font-size:22px;letter-spacing:-.015em}
.mnav-t .chev{width:14px;height:14px;transition:transform .2s}
.mnav-t[aria-expanded=true] .chev{transform:rotate(180deg)}
.mnav-p{display:none;padding:0 0 18px}
.mnav-p.on{display:block}
.mnav-p a{display:block;padding:10px 0;font-size:17px;color:var(--ink2);font-weight:500}
.mnav-p .mis{font-family:var(--fh);font-weight:700;font-size:20px;letter-spacing:-.015em;line-height:1.2;color:var(--ink);margin:6px 0 2px}
.mnav-p .k{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin:12px 0 2px}
.mnav-cta{display:flex;flex-direction:column;gap:12px;margin-top:24px}
.mnav-cta .btn{width:100%;white-space:normal;text-align:center}
body.lock{overflow:hidden}

/* ---------- 4. Homepage ---------- */
/* Hero (centered) */
.hero{padding:84px 0 64px;text-align:center;position:relative;background:var(--heroGlow)}
.hero .wrap{display:flex;flex-direction:column;align-items:center}
.hero h1{font-size:112px;letter-spacing:-.045em;line-height:.98;width:100%}
.hero h1 .lead{display:block}
.roll{display:block;overflow:hidden;position:relative;margin-bottom:-.16em}
.roll-in{display:block;transition:transform .72s cubic-bezier(.7,0,.2,1);will-change:transform}
.roll-in.still{transition:none}
.roll-w{display:block;width:max-content;white-space:nowrap;padding:0 .05em .16em;margin:0 auto .5em}
.roll-w .w{color:var(--rollInk);background:var(--rollHl);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.roll-w .p{color:var(--ink)}
.hero-sub{font-size:23px;line-height:1.45;color:var(--ink2);max-width:36ch;margin-top:30px}
.nw{white-space:nowrap}
.hero-cta{display:flex;align-items:center;justify-content:center;gap:28px;margin-top:40px}
.hero-cta .btn{font-size:18px;padding:20px 34px}
.proof{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 28px;margin-top:40px;font-size:15.5px;color:var(--ink2)}
.proof b{color:var(--ink);font-weight:700}
.proof .sep{width:4px;height:4px;border-radius:50%;background:var(--line2)}
.proof a{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--ink)}
.proof a:hover{text-decoration:underline;text-underline-offset:4px}
.upw{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--acFill);color:var(--acInk);flex:none}
.upw svg{width:12px;height:12px}

/* ---------- OS visual ---------- */
.os-col-k{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin-bottom:16px}
.os-chip{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-size:15px;font-weight:600;color:var(--ink);position:relative;z-index:1}
.os-chip svg{width:18px;height:18px;flex:none;color:var(--ink2)}
.os-chip small{margin-left:auto;font-size:12.5px;font-weight:500;color:var(--ink3)}
.os-av{width:44px;height:44px;border-radius:50%;background:var(--acFill);color:var(--acInk);display:grid;place-items:center;font-family:var(--fh);font-weight:800;font-size:16px;flex:none}
.bars{display:flex;flex-direction:column;gap:7px}
.bar-r{display:grid;grid-template-columns:104px 1fr 30px;align-items:center;gap:10px;font-size:13.5px;color:var(--ink2)}
.bar-r .t{height:7px;border-radius:4px;background:var(--track);overflow:hidden}
.bar-r .t i{display:block;height:100%;border-radius:4px;background:var(--barFill)}
.bar-r b{font-weight:700;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums}
.bar-r.low{color:var(--ink)}
.bar-r.low .t i{background:var(--barLow)}
.loop{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:16px;padding:4px;border-radius:12px;background:var(--track)}
.loop span{text-align:center;font-size:13.5px;font-weight:700;padding:8px 4px;border-radius:9px;color:var(--ink2);transition:none}
.loop span.on{background:var(--acFill);color:var(--acInk);border-color:var(--acFill)}
@keyframes wire{from{offset-distance:0%}to{offset-distance:100%}}

/* ---------- Theme toggle (header + mobile menu) ---------- */
.theme-t{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line2);color:var(--ink);flex:none;transition:border-color .15s,background-color .15s}
.theme-t:hover{border-color:var(--ink);background:var(--navHover)}
.theme-t svg{width:19px;height:19px}
:root[data-theme=dark] .theme-t .i-moon,:root:not([data-theme]) .theme-t .i-moon,:root[data-theme=light] .theme-t .i-sun{display:none}
.mnav-theme{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.mnav-theme>span{font-family:var(--fh);font-weight:700;font-size:22px;letter-spacing:-.015em}
.seg{display:inline-flex;padding:3px;border-radius:var(--pill);border:1.5px solid var(--line2)}
.seg button{display:inline-flex;align-items:center;gap:7px;font-size:15px;font-weight:700;padding:8px 14px;border-radius:var(--pill);color:var(--ink2)}
.seg button svg{width:16px;height:16px}
.seg button[aria-pressed=true]{background:var(--acFill);color:var(--acInk)}

/* ---------- Hero proof row: four items, no separators ---------- */
.proof4{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 32px;width:100%;max-width:1040px;margin:44px auto 0}
.proof4 li{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}
.proof4 li>a{display:flex;flex-direction:column;align-items:center;gap:4px}
.proof4 b{display:inline-flex;align-items:center;gap:8px;font-family:var(--fh);font-weight:800;font-size:25px;letter-spacing:-.02em;line-height:1.1;color:var(--ink)}
.proof4 span:not(.upw){font-size:15px;line-height:1.4;color:var(--ink2);max-width:24ch}
.proof4 a:hover span:not(.upw){color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.pg-proof .sep,.proof .sep{display:none}

/* ---------- Jump tiles: one per industry section ---------- */
.jump{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%;max-width:1040px;margin:40px auto 0}
.jt{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;background:var(--surface);border:1.5px solid var(--line);border-radius:14px;padding:15px 44px 15px 18px;transition:border-color .18s,background-color .18s,transform .18s}
.jt b{font-family:var(--fh);font-weight:800;font-size:19px;letter-spacing:-.015em;line-height:1.15;color:var(--ink)}
.jt span{font-size:14px;color:var(--ink2);line-height:1.35}
.jt-a{position:absolute;right:15px;top:50%;width:16px;height:16px;margin-top:-8px;color:var(--ink2);transition:transform .18s}
.jt:hover{border-color:var(--line3);transform:translateY(-2px)}
.jt:hover .jt-a{transform:translateY(2px);color:var(--ink)}
.jt.is-on{border-color:var(--plOnLine);background:var(--plOnBg)}
.jt.is-on .jt-a{color:var(--ac)}

/* ---------- Industry sections (homepage), each with its own OS visual ---------- */
.indsec{padding:104px 0;scroll-margin-top:-64px}
.ind-g{display:grid;grid-template-columns:minmax(0,4.3fr) minmax(0,7.7fr);gap:64px;align-items:center}
.ind-c{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.ind-c h2{font-size:46px;letter-spacing:-.032em;max-width:16ch}
.ind-c .lede{font-size:19px;max-width:34ch}
.ind-n{font-family:var(--fh);font-weight:800;letter-spacing:.02em;color:var(--ink3);margin-right:2px}
.ind-dl{width:100%;margin-top:4px;border-top:1px solid var(--line)}
.ind-dl>div{padding:14px 0;border-bottom:1px solid var(--line)}
.ind-dl dt{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-bottom:5px}
.ind-dl dd{font-size:15.5px;line-height:1.5;color:var(--ink)}
.ind-subs{color:var(--ink2)!important}
.ind-subs a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line2);text-underline-offset:3px}
.ind-subs a:hover{text-decoration-color:currentColor}
.ind-kpi{font-family:var(--fh);font-weight:800;font-size:20px!important;letter-spacing:-.015em}
.indsec .tl{margin-top:4px}

.ios{position:relative;margin:0;background:var(--osBg);border:1px solid var(--line);border-radius:calc(var(--rad) + 8px);padding:20px 22px 22px;overflow:hidden;box-shadow:0 30px 60px -44px var(--shadow)}
.ios::before{content:"";position:absolute;inset:0;background:var(--osGlow);pointer-events:none}
.ios-h{position:relative;display:flex;align-items:center;gap:10px;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--line)}
.ios-q svg{width:22px;height:22px;color:var(--ink)}
.ios-q .q4{fill:var(--ac)}
.ios-h b{font-family:var(--fh);font-weight:800;font-size:17px;letter-spacing:-.015em}
.ios-for{font-size:14.5px;color:var(--ink2)}
.ios-h .ph{margin-left:auto}
.ios-g{position:relative;display:grid;grid-template-columns:166px minmax(0,1fr) 166px;gap:0 40px;align-items:stretch}
.ios-col{position:relative;z-index:1;display:flex;flex-direction:column}
.ios-col .os-col-k{margin-bottom:12px}
.ios-in{list-style:none;display:flex;flex-direction:column;gap:8px;margin:auto 0}
.ios .os-chip{padding:8px 11px;gap:10px;border-radius:11px;font-size:14px;line-height:1.2}
.ios .os-chip svg{width:17px;height:17px}
.ios .os-chip>span{display:flex;flex-direction:column;min-width:0}
.ios .os-chip b{font-weight:700;font-size:14px}
.ios .os-chip small{margin:2px 0 0;font-size:12px;color:var(--ink3);line-height:1.2}
.ios-rule{display:flex;align-items:center;gap:7px;margin-top:10px;font-size:12.5px;font-weight:700;line-height:1.3;color:var(--ac)}
.ios-rule svg{width:16px;height:16px;flex:none}
.ios-mid{justify-content:center;padding-top:28px}
.ios-core{background:var(--surface2);border:1px solid var(--line2);border-radius:16px;padding:16px;box-shadow:0 24px 50px -34px var(--shadow)}
.ios-score{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.ios-score svg{width:58px;height:58px;flex:none}
.ios-score text{font-family:var(--fh);font-weight:800;font-size:31px;letter-spacing:-1px}
.ios-score small{font-size:12.5px;color:var(--ink2);line-height:1.3;max-width:9ch}
.ios .bars{gap:5px}
.ios .bar-r{grid-template-columns:90px 1fr 24px;gap:8px;font-size:12.5px}
.ios .bar-r .t{height:6px}
.ios-fix{margin-top:12px;padding:8px 10px;border-radius:9px;background:var(--chip);font-size:12.5px;line-height:1.4;color:var(--ink)}
.ios .loop{margin-top:10px;padding:3px;gap:3px;border-radius:10px}
.ios .loop span{font-size:11.5px;padding:6px 2px;border-radius:7px}
.ios-out{display:flex;flex-direction:column;gap:8px;margin:auto 0}
.ios-win{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:13px 14px}
.ios-win>b{display:block;font-family:var(--fh);font-weight:800;font-size:17px;letter-spacing:-.015em;line-height:1.15;margin-bottom:8px}
.ios-kpi small{display:block;font-size:12px;color:var(--ink2);line-height:1.3}
.ios-kpi .v{display:flex;align-items:baseline;gap:7px;font-family:var(--fh);font-weight:800;font-size:28px;letter-spacing:-.03em;line-height:1.1;color:var(--ink)}
.ios-kpi .v.sm{font-size:21px}
.ios-kpi .v i{font-family:var(--fb);font-style:normal;font-size:12.5px;font-weight:700;letter-spacing:0;color:var(--good)}
.ios-spark{width:100%;height:30px;margin:6px 0 8px;color:var(--ac)}
.ios-spark path{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.ios-o{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:9px 12px;font-size:13.5px;font-weight:700;color:var(--ink)}
.ios-wires{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.ios-wires path{fill:none;stroke:var(--wire);stroke-width:1.3}
.ios-wires circle{fill:var(--ac)}

/* ---------- The book: a 3D hardcover in pure HTML/CSS (book page, pop-up, homepage) ---------- */
.bk3{--bk:10px;font-size:var(--bk);position:relative;width:38em;height:45em;margin:0 auto;perspective:200em;perspective-origin:50% 30%}
.bk-shadow{position:absolute;left:3em;right:3em;bottom:1.4em;height:5em;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,var(--bkShadow),transparent 72%);filter:blur(.7em)}
.bk{position:absolute;width:26em;height:37em;transform-style:preserve-3d;transform:rotateX(-7deg) rotateY(28deg)}
.bk--os{left:10.5em;top:5.6em}
.bk--wb{font-size:.86em;left:1.4em;top:3em;transform:rotateX(-7deg) rotateY(28deg) translateZ(-5em)}
.bk>div{position:absolute;backface-visibility:hidden}
.bk-front{inset:0;transform:translateZ(1.75em);display:flex;flex-direction:column;align-items:flex-start;overflow:hidden;
  padding:2.5em 2.3em 2.3em 3.1em;border-radius:.2em .55em .55em .2em;
  background:linear-gradient(160deg,#1A4436 0%,#0F2620 52%,#0A1B16 100%);color:#F1EEE5}
.bk-front::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(0,0,0,.42) 0,rgba(255,255,255,.07) .45em,rgba(0,0,0,.22) .9em,rgba(255,255,255,.03) 1.4em,transparent 2.2em),
             linear-gradient(118deg,rgba(255,255,255,.09) 0%,transparent 38%,transparent 70%,rgba(0,0,0,.18) 100%)}
.bk-front>*{position:relative}
.bk-k{display:block;align-self:stretch;padding-bottom:.9em;border-bottom:1px solid rgba(241,238,229,.2);font-family:var(--fb);font-size:1em;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#8FDDA0}
.bk-q{width:9.6em;height:9.6em;margin-top:2.4em;overflow:visible}
.bk-q .o{fill:none;stroke:rgba(241,238,229,.42);stroke-width:.55}
.bk-q .l{fill:#8FDDA0}
.bk-t{display:block;margin-top:auto;font-family:var(--fh);font-weight:800;font-size:4.15em;letter-spacing:-.045em;line-height:.9;color:#F1EEE5}
.bk-t span{display:block;font-weight:500;font-size:.42em;letter-spacing:-.01em;line-height:1.2;color:#BFCDC4;margin-bottom:.15em}
.bk-t em{font-style:normal;color:#8FDDA0}
.bk-s{display:block;margin-top:1.1em;max-width:19ch;font-family:var(--fb);font-size:1.18em;line-height:1.35;color:#BFCDC4}
.bk-by{display:block;align-self:stretch;margin-top:1.6em;padding-top:1em;border-top:1px solid rgba(241,238,229,.2);font-family:var(--fb);font-weight:700;font-size:1.2em;letter-spacing:.01em}
.bk-spine{top:0;left:calc(50% - 1.75em);width:3.5em;height:100%;transform:rotateY(-90deg) translateZ(13em);
  display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:1.6em 0 1.7em;border-radius:.3em 0 0 .3em;
  background:linear-gradient(90deg,#06120F 0%,#0E241E 30%,#123129 55%,#081713 100%);color:#F1EEE5}
.bk-sq svg{width:1.7em;height:1.7em;color:#F1EEE5}
.bk-sq .l{fill:#8FDDA0}
.bk-st{writing-mode:vertical-rl;font-family:var(--fh);font-weight:800;font-size:1.3em;letter-spacing:-.005em;white-space:nowrap}
.bk-sa{writing-mode:vertical-rl;font-family:var(--fb);font-weight:700;font-size:.95em;letter-spacing:.16em;text-transform:uppercase;color:#8FDDA0}
.bk-top{left:0;top:calc(50% - 1.75em);width:100%;height:3.5em;transform:rotateX(90deg) translateZ(18.5em);
  background:linear-gradient(90deg,#0A1B16 0 .35em,transparent .35em),
             linear-gradient(180deg,#0A1B16 0 .28em,transparent .28em calc(100% - .28em),#0A1B16 calc(100% - .28em)),
             repeating-linear-gradient(180deg,#EFEADC 0 .14em,#D8D2C1 .14em .2em),#EFEADC}
.bk-edge{top:.35em;left:calc(50% - 1.6em);width:3.2em;height:calc(100% - .7em);transform:rotateY(90deg) translateZ(12.8em);
  background:repeating-linear-gradient(90deg,#EFEADC 0 .14em,#D8D2C1 .14em .2em)}
/* the workbook: cream cover, forest accent */
.bk--wb .bk-front{background:linear-gradient(160deg,#FBF9F3 0%,#F1EEE5 55%,#E4DFD1 100%);color:#0F2620}
.bk--wb .bk-front::before{background:linear-gradient(90deg,rgba(15,38,32,.22) 0,rgba(255,255,255,.5) .45em,rgba(15,38,32,.1) .9em,transparent 2em),
  linear-gradient(118deg,rgba(255,255,255,.5) 0%,transparent 40%,transparent 70%,rgba(15,38,32,.08) 100%)}
.bk--wb .bk-k{color:#17703F}
.bk--wb .bk-q .o{stroke:rgba(15,38,32,.42)}
.bk--wb .bk-q .l,.bk--wb .bk-sq .l{fill:#17703F}
.bk--wb .bk-t{color:#0F2620}
.bk--wb .bk-t span{color:#3B5047}
.bk--wb .bk-t em,.bk--wb .bk-sa{color:#17703F}
.bk--wb .bk-by,.bk--wb .bk-k{border-color:rgba(15,38,32,.2)}
.bk--wb .bk-spine{background:linear-gradient(90deg,#CFC9B8 0%,#E6E1D3 35%,#EFEBDF 60%,#D9D3C3 100%);color:#0F2620}
.bk--wb .bk-sq svg{color:#0F2620}
.bk--wb .bk-top{background:linear-gradient(90deg,#D9D3C3 0 .35em,transparent .35em),
  linear-gradient(180deg,#D9D3C3 0 .28em,transparent .28em calc(100% - .28em),#D9D3C3 calc(100% - .28em)),
  repeating-linear-gradient(180deg,#FBF8EF 0 .14em,#E2DCCB .14em .2em),#FBF8EF}
.pg-showcase-art .bk3{--bk:11px}
.pop-art .bk3{--bk:8.4px}
/* homepage: the book beside the reports */
.bkf{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;margin-top:16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);overflow:hidden}
.bkf-art{background:var(--stage);border-right:1px solid var(--stageLine);padding:22px 0 12px}
.bkf-art .bk3{--bk:8px}
.bkf-t{padding:40px 48px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.bkf-t h3{font-size:40px;letter-spacing:-.03em;line-height:1.02}
.bkf-t p{font-size:17px;line-height:1.55;color:var(--ink2);max-width:40ch}
.bkf:hover .tl{text-decoration-color:currentColor}
.pg-showcase-art{background:var(--stage);border:1px solid var(--line);border-radius:calc(var(--rad) + 10px);padding:28px 0 16px}

/* ---------- Why ---------- */
.why-g{display:grid;grid-template-columns:5fr 7fr;gap:80px;align-items:start}
.why-l{position:sticky;top:120px;display:flex;flex-direction:column;gap:22px}
.why-l .lede{font-size:20px}
.why-l h2{font-size:54px}
.why-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.why-c{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:30px 28px}
.why-c .n{font-family:var(--fh);font-weight:800;font-size:15px;color:var(--ac);letter-spacing:.02em}
.why-c h3{font-size:25px;margin:14px 0 10px}
.why-c p{font-size:16px;color:var(--ink2);line-height:1.55}
.vs{grid-column:1/-1;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:8px 28px}
.vs-r{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);font-size:15px;color:var(--ink2);align-items:center}
.vs-r:last-child{border-bottom:0}
.vs-r>:first-child{font-weight:600;color:var(--ink)}
.vs-h{font-weight:700;color:var(--ink);font-size:14px}
.vs-h .us{color:var(--ink);background:var(--chip);border-radius:6px;padding:3px 8px;display:inline-block}
.vs-r .us-c{color:var(--ink);font-weight:600}

/* ---------- See it in action ---------- */
.act{display:grid;grid-template-columns:400px minmax(0,1fr);gap:56px;align-items:stretch}
.act-tabs{display:flex;flex-direction:column;gap:10px}
.act-t{display:block;width:100%;padding:24px 26px;border-radius:var(--rad);border:1.5px solid var(--line);background:transparent;transition:background-color .18s,border-color .18s}
.act-t:hover{border-color:var(--line3)}
.act-t[aria-selected=true]{background:var(--surface);border-color:var(--plOnLine)}
.act-t .s{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ac)}
.act-t b{display:block;font-family:var(--fh);font-weight:800;font-size:25px;letter-spacing:-.02em;margin-top:6px}
.act-t span{display:block;font-size:15.5px;color:var(--ink2);margin-top:6px;line-height:1.5}
.act-p{background:var(--osBg);border:1px solid var(--line);border-radius:calc(var(--rad) + 10px);padding:40px;display:flex;align-items:center;justify-content:center;min-height:560px}
.act-p[hidden]{display:none}
.ui{width:100%;max-width:640px;background:var(--surface2);border:1px solid var(--line2);border-radius:18px;box-shadow:0 30px 60px -36px var(--shadow);overflow:hidden}
.ui-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;border-bottom:1px solid var(--line)}
.ui-h b{font-weight:700;font-size:15.5px}
.ui-h span{font-size:13.5px;color:var(--ink2)}
.ui-b{padding:22px}
.ui .bars{gap:10px}
.ui .bar-r{grid-template-columns:130px 1fr 34px;font-size:14.5px}
.ui .bar-r .t{height:9px}
.ui-call{display:flex;gap:14px;align-items:flex-start;margin-top:20px;padding:16px;border-radius:12px;background:var(--chip)}
.ui-call .os-av{width:38px;height:38px;font-size:14px}
.ui-call p{font-size:15px;line-height:1.5;color:var(--ink)}
.ui-call p small{display:block;color:var(--ink2);font-size:13px;margin-bottom:2px}
.rm{width:100%;border-collapse:collapse;font-size:14.5px}
.rm th{text-align:left;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);padding:0 10px 10px;border-bottom:1px solid var(--line)}
.rm td{padding:13px 10px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink2)}
.rm tr:last-child td{border-bottom:0}
.rm td:first-child,.rm th:first-child{padding-left:0}
.rm td.m{color:var(--ink);font-weight:600}
.rm .n{font-family:var(--fh);font-weight:800;color:var(--ac)}
.pill{display:inline-block;font-size:12.5px;font-weight:700;padding:3px 8px;border-radius:6px;background:var(--chip);color:var(--ink);white-space:nowrap}
.kpis{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.kpi{border:1px solid var(--line);border-radius:12px;padding:16px}
.kpi small{display:block;font-size:13px;color:var(--ink2)}
.kpi .v{display:flex;align-items:baseline;gap:10px;margin-top:6px}
.kpi .v b{font-family:var(--fh);font-weight:800;font-size:34px;letter-spacing:-.03em;line-height:1}
.kpi .d{font-size:13.5px;font-weight:700;color:var(--good)}
.kpi svg{width:100%;height:34px;margin-top:10px;color:var(--ac)}
.ships{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}

/* ---------- Results ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line2);border-bottom:1px solid var(--line);margin-bottom:56px}
.stat{padding:34px 28px 32px 0}
.stat+.stat{padding-left:28px;border-left:1px solid var(--line)}
.stat .v{font-family:var(--fh);font-weight:800;font-size:58px;letter-spacing:-.04em;line-height:1;color:var(--ink)}
.stat .v.sm{font-size:40px;line-height:1.05}
.stat p{font-size:15.5px;color:var(--ink2);margin-top:12px;line-height:1.45}
.stat a{font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line2)}
.cases{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:16px}
.case{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:30px 28px;display:flex;flex-direction:column;gap:14px;min-height:300px}
.case .ind{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.case .big{font-family:var(--fh);font-weight:800;font-size:58px;letter-spacing:-.04em;line-height:1}
.case h3{font-size:24px}
.case p{font-size:15.5px;color:var(--ink2);line-height:1.55}
.case .go{margin-top:auto;font-weight:700;font-size:15px;display:inline-flex;gap:8px}
.case .go:hover{text-decoration:underline;text-underline-offset:4px}
.case.ghost{background:transparent;border:1.5px dashed var(--phLine)}
.case.ghost .big{color:var(--ink3)}
.case.feat{background:var(--featBg);border-color:var(--featBg);color:var(--featInk)}
.case.feat .ind,.case.feat p{color:var(--featInk2)}
.case.feat .big,.case.feat h3,.case.feat .go{color:var(--featInk)}
.names{margin-top:56px;display:grid;grid-template-columns:200px 1fr;gap:0 40px}
.names-k{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);padding:20px 0;border-top:1px solid var(--line)}
.names-v{display:flex;flex-wrap:wrap;gap:8px 30px;padding:16px 0 18px;border-top:1px solid var(--line);font-family:var(--fh);font-weight:700;font-size:23px;letter-spacing:-.015em;color:var(--ink);line-height:1.3}
.names-v.muted{color:var(--ink2);font-weight:500;font-size:20px}

/* ---------- Work with us ---------- */
.path{display:grid;grid-template-columns:1fr auto 1fr auto 1.4fr;align-items:stretch;gap:0;margin-bottom:20px}
.step{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:24px 24px 22px}
.step .s{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ac)}
.step b{display:block;font-family:var(--fh);font-weight:800;font-size:23px;letter-spacing:-.02em;margin-top:6px}
.step span{display:block;font-size:15px;color:var(--ink2);margin-top:6px;line-height:1.5}
.step .or{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:4px}
.step .or>div{border-top:1px solid var(--line);padding-top:10px}
.step .or b{font-size:19px}
.step a:hover b{text-decoration:underline;text-underline-offset:4px}
.join{display:grid;place-items:center;width:44px;color:var(--ink3)}
.join svg{width:20px;height:20px}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tier{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:32px 30px 28px;display:flex;flex-direction:column}
.tier .k{display:flex;align-items:center;justify-content:space-between}
.tier .k span{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.tier .k i{font-style:normal;font-family:var(--fh);font-weight:800;font-size:15px;padding:4px 10px;border-radius:6px;background:var(--chip);color:var(--ink)}
.tier h3{font-size:32px;margin:18px 0 10px}
.tier>p{font-size:16px;color:var(--ink2);line-height:1.55}
.tier ul{margin:22px 0 26px;border-top:1px solid var(--line)}
.tier li a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-weight:600;font-size:16px}
.tier li a:hover{color:var(--ac)}
.tier .note{margin-top:auto;font-size:14px;color:var(--ink2)}
.tier.feat{background:var(--featBg);border-color:var(--featBg)}
.tier.feat h3,.tier.feat li a,.tier.feat .k i{color:var(--featInk)}
.tier.feat>p,.tier.feat .note,.tier.feat .k span{color:var(--featInk2)}
.tier.feat ul,.tier.feat li a{border-color:var(--featLine)}
.tier.feat .k i{background:var(--featChip)}
.tier.feat li a:hover{color:var(--featInk);text-decoration:underline;text-underline-offset:4px}

/* ---------- Reports ---------- */
.rep-g{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.rep{display:flex;flex-direction:column;gap:18px}
.cover{aspect-ratio:4/5;border-radius:var(--rad);padding:24px 22px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;background:var(--cv);color:var(--cvInk);border:1px solid var(--line);transition:transform .18s}
.rep:hover .cover{transform:translateY(-4px)}
.cover .y{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.cover .t{font-family:var(--fh);font-weight:800;font-size:30px;letter-spacing:-.03em;line-height:1.02}
.cover .ticks{display:flex;gap:5px}
.cover .ticks i{flex:1;height:5px;border-radius:3px;background:currentColor;opacity:.28}
.cover .ticks i.on{opacity:1}
.cover .ck{display:flex;justify-content:space-between;align-items:flex-end;font-size:13px;font-weight:600;opacity:.85}
.rep-t b{font-family:var(--fh);font-weight:800;font-size:21px;letter-spacing:-.015em;line-height:1.15;display:block}
.rep-t span{font-size:15px;color:var(--ink2);display:block;margin-top:4px;line-height:1.5}
.rep-t .go{font-weight:700;font-size:15px;margin-top:8px;display:inline-flex;gap:8px}
.rep:hover .go{text-decoration:underline;text-underline-offset:4px}
.topics{display:flex;flex-wrap:wrap;gap:10px;margin-top:48px;align-items:center}
.topics .k{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-right:8px}
.topics a{font-size:15px;font-weight:600;padding:9px 16px;border-radius:var(--pill);border:1.5px solid var(--line2);transition:border-color .15s,background-color .15s}
.topics a:hover{border-color:var(--ink);background:var(--navHover)}

/* ---------- 5. Shared closing CTA and footer ---------- */
/* Final CTA */
.final{padding:128px 0;text-align:center;background:var(--finBg);color:var(--finInk);position:relative;overflow:hidden}
.final h2{color:var(--finInk);font-size:76px;max-width:20ch;margin:0 auto}
.final p{font-size:21px;color:var(--finInk2);max-width:46ch;margin:22px auto 0;line-height:1.5}
.final .k-win{color:var(--finAc)}
.final .hero-cta{margin-top:40px}
.final .btn{background:var(--finBtn);color:var(--finBtnInk);border-color:var(--finBtn)}
.final .tl{color:var(--finInk);text-decoration-color:var(--finLine)}
.final .bgq{position:absolute;right:-90px;bottom:-130px;width:420px;height:420px;opacity:var(--finMarkOp);color:var(--finInk)}
.final .bgq .q4{fill:var(--finAc)}

/* ---------- Footer ---------- */
.ftr{padding:80px 0 40px;border-top:1px solid var(--line);background:var(--bg)}
.ftr-g{display:grid;grid-template-columns:1.5fr repeat(5,1fr);gap:40px}
.ftr-b p{font-size:16px;color:var(--ink2);margin-top:18px;max-width:28ch;line-height:1.5}
.ftr-b .btn{margin-top:24px}
.ftr h4{font-family:var(--fb);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin-bottom:14px}
.ftr li a{display:block;padding:6px 0;font-size:15px;color:var(--ink)}
.ftr li a:hover{text-decoration:underline;text-underline-offset:4px}
.ftr-bot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:64px;padding-top:24px;border-top:1px solid var(--line);font-size:14px;color:var(--ink2)}
.ftr-bot nav{display:flex;gap:22px;flex-wrap:wrap}
.ftr-bot a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}

/* ---------- 6. Inner pages (pg-*): generated by tools/build_site.py and tools/pages_custom.py ---------- */
.pg-k{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin-bottom:14px}
.pg-sec{padding:104px 0}
.pg-sec.alt{background:var(--bg2)}
.pg-sec--tight{padding:64px 0}
.pg-sec .sec-h h2{font-size:52px;max-width:22ch}
.pg-sec .sec-h.c h2{margin:0 auto}

/* Hero */
.pg-hero{position:relative;overflow:hidden;padding:48px 0 96px;background:var(--pgGlow)}
.pg-hero .wrap{position:relative}
.pg-hero-q{position:absolute;right:max(64px,calc(50% - 592px));top:150px;width:330px;height:330px;pointer-events:none}
.pg-hero-q path{fill:var(--pgQ)}
.pg-hero-q path.q4{fill:var(--pgQ4)}
.pg-hero-q path.rg{fill:var(--pgQR)}
.pg-crumbs{margin-bottom:40px}
.pg-crumbs ol{display:flex;flex-wrap:wrap;gap:4px 0;list-style:none;font-size:14.5px;color:var(--ink3)}
.pg-crumbs li+li::before{content:"/";margin:0 10px;color:var(--line3)}
.pg-crumbs a{color:var(--ink2)}
.pg-crumbs a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.pg-crumbs [aria-current]{color:var(--ink3)}
.pg-hero h1{font-size:88px;letter-spacing:-.045em;line-height:.98;max-width:15ch;margin-top:20px}
.pg-hero h1 .pg-ac{display:block;color:var(--ac);font-size:.6em;letter-spacing:-.035em;line-height:1.04;max-width:22ch;margin-top:.3em}
.pg-hero-sub{font-size:21px;line-height:1.5;color:var(--ink2);max-width:54ch;margin-top:30px}
.pg-hero-cta{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px;margin-top:38px}
.pg-proof{justify-content:flex-start;margin-top:44px}

/* Problems (seven dimensions) and installation rows */
.pg-probs{list-style:none;border-bottom:1px solid var(--line)}
.pg-probs>li{display:grid;grid-template-columns:300px minmax(0,1fr);gap:48px;padding:36px 0;border-top:1px solid var(--line)}
.pg-prob-dim span{display:block;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ac)}
.pg-prob-dim b{display:block;font-family:var(--fh);font-weight:800;font-size:24px;letter-spacing:-.02em;line-height:1.15;margin-top:8px}
.pg-prob-txt h3{font-size:28px}
.pg-prob-txt p{font-size:17px;line-height:1.6;color:var(--ink2);max-width:64ch;margin:12px 0 18px}
.pg-probs--short>li{padding:24px 0;align-items:center}
.pg-probs--short .pg-prob-txt p{color:var(--ink);font-size:18px;margin:0}
.pg-probs--links .pg-prob-txt p{margin:0 0 10px}
.why-c .n+p{margin-top:14px}
.why-c p a,.pg-fit li a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line2)}
.pg-loop .sec-h .tl{margin-top:4px}

/* Panel with steps (the OS loop, how a service works, the 90-day timeline) */
.pg-panel{position:relative;overflow:hidden;background:var(--osBg);border:1px solid var(--line);border-radius:calc(var(--rad) + 10px);padding:56px}
.pg-panel::before{content:"";position:absolute;inset:0;background:var(--osGlow);pointer-events:none}
.pg-panel>*{position:relative}
.pg-panel-h{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:44px}
.pg-panel-h .sec-h{margin-bottom:0}
.pg-panel-h .tl{flex:none}
.pg-steps{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.pg-steps>li{background:var(--surface2);border:1px solid var(--line2);border-radius:var(--rad);padding:26px 24px 28px}
.pg-step-n{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--acFill);color:var(--acInk);font-family:var(--fh);font-weight:800;font-size:16px;flex:none}
.pg-step-n svg{width:20px;height:20px}
.pg-step-k{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin:20px 0 6px}
.pg-steps h3{font-size:23px}
.pg-steps li>p:last-child{font-size:15.5px;line-height:1.55;color:var(--ink2);margin-top:10px}

/* Chips */
.pg-chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none}
.pg-chips li{font-size:15.5px;font-weight:600;padding:10px 18px;border-radius:var(--pill);border:1.5px solid var(--line2);color:var(--ink)}

/* Cards */
.pg-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pg-cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pg-cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pg-cards--1{grid-template-columns:minmax(0,1fr);max-width:520px}
.pg-cards--auto{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.pg-stack{display:flex;flex-direction:column;gap:12px}
.pg-card{position:relative;display:flex;flex-direction:column;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:28px 26px 22px;transition:border-color .18s,transform .18s,box-shadow .18s}
.pg-card:hover{border-color:var(--line3);transform:translateY(-3px);box-shadow:0 18px 40px -26px var(--shadow)}
.pg-card-k{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ac)}
.pg-card b{font-family:var(--fh);font-weight:800;font-size:23px;letter-spacing:-.02em;line-height:1.12;color:var(--ink)}
.pg-card-t{font-size:15.5px;line-height:1.5;color:var(--ink2)}
.pg-card-go{margin-top:auto;padding-top:8px;font-size:20px;line-height:1;color:var(--ink);transition:transform .15s}
.pg-card:hover .pg-card-go{transform:translateX(4px)}
.pg-group+.pg-group{margin-top:56px}

/* Split, prose, clients */
.pg-split{display:grid;grid-template-columns:5fr 7fr;gap:80px;align-items:start}
.pg-split--lead{grid-template-columns:1fr 1fr;align-items:start}
.pg-split--lead .sec-h{margin-bottom:0}
.pg-prose{font-size:18px;line-height:1.6;color:var(--ink2);margin-bottom:26px;max-width:58ch}
.pg-prose--lead{font-size:22px;line-height:1.55;color:var(--ink);margin:0}
.pg-clients{margin-top:44px;padding-top:28px;border-top:1px solid var(--line)}
.pg-clients ul{display:flex;flex-wrap:wrap;gap:6px 24px;list-style:none}
.pg-clients li{font-family:var(--fh);font-weight:700;font-size:20px;letter-spacing:-.015em}

/* FAQ */
.pg-faq-g{display:grid;grid-template-columns:4fr 8fr;gap:80px;align-items:start}
.pg-faq-g .sec-h h2{font-size:44px}
.pg-faq{border-bottom:1px solid var(--line)}
.pg-faq-i{border-top:1px solid var(--line)}
.pg-faq-i summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;cursor:pointer;list-style:none}
.pg-faq-i summary::-webkit-details-marker{display:none}
.pg-faq-i summary h3{font-size:22px;line-height:1.25}
.pg-faq-i summary:hover h3{color:var(--ac)}
.pg-faq-x{position:relative;flex:none;width:32px;height:32px;border-radius:50%;border:1.5px solid var(--line2);transition:transform .2s,background-color .2s,border-color .2s}
.pg-faq-x::before,.pg-faq-x::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.8px;background:var(--ink);transform:translate(-50%,-50%)}
.pg-faq-x::after{transform:translate(-50%,-50%) rotate(90deg)}
.pg-faq-i[open] .pg-faq-x{transform:rotate(45deg);background:var(--acFill);border-color:var(--acFill)}
.pg-faq-i[open] .pg-faq-x::before,.pg-faq-i[open] .pg-faq-x::after{background:var(--acInk)}
.pg-faq-i p{font-size:17px;line-height:1.65;color:var(--ink2);max-width:68ch;padding:0 56px 30px 0}

/* Prose pages (about, legal, hubs) */
.pg-prose-wrap{border-bottom:1px solid var(--line)}
.pg-prose-b{display:grid;grid-template-columns:4fr 8fr;gap:64px;padding:48px 0;border-top:1px solid var(--line)}
.pg-prose-b h2{font-size:34px;letter-spacing:-.025em;line-height:1.08}
.pg-prose-b p,.pg-art p{font-size:18px;line-height:1.7;color:var(--ink2);max-width:68ch}
.pg-prose-b p+p,.pg-art p+p{margin-top:16px}
.pg-prose-b ul,.pg-art ul,.pg-takeaways ul{list-style:none;margin-top:14px}
.pg-prose-b li,.pg-art li,.pg-takeaways li{position:relative;padding-left:28px;font-size:17.5px;line-height:1.6;color:var(--ink2);margin-top:10px;max-width:68ch}
.pg-prose-b li::before,.pg-art li::before,.pg-takeaways li::before{content:"";position:absolute;left:4px;top:.62em;width:9px;height:9px;border-radius:2px 2px 2px 9px;background:var(--ac)}

/* Author */
.pg-author{display:flex;gap:22px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:28px;margin-top:56px}
.pg-author-q{flex:none;width:56px;height:56px;color:var(--ink)}
.pg-author-q svg{width:56px;height:56px}
.pg-author-q .q4,.pg-loop-art .q4{fill:var(--ac)}
.pg-author-n{font-family:var(--fh);font-weight:800;font-size:22px;letter-spacing:-.02em;color:var(--ink)}
.pg-author p:not(.pg-author-n){font-size:16px;color:var(--ink2);margin:4px 0 14px}
.pg-author p.pg-k{font-size:13px;color:var(--ink3);margin:0 0 6px}.pg-author .tl{margin-right:22px}
.pg-byline{margin-top:18px;font-size:15.5px;color:var(--ink2)}
.pg-byline a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line2)}

/* Service pages */
.pg-deliv{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pg-deliv li{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:28px 26px}
.pg-deliv-n{font-family:var(--fh);font-weight:800;font-size:15px;color:var(--ac)}
.pg-deliv b{display:block;font-family:var(--fh);font-weight:800;font-size:22px;letter-spacing:-.02em;line-height:1.15;margin:14px 0 8px}
.pg-deliv p{font-size:15.5px;line-height:1.55;color:var(--ink2)}
.pg-fitcols{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pg-fit{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:36px 34px}
.pg-fit h2{font-size:32px;margin-bottom:18px}
.pg-fit ul{list-style:none}
.pg-fit li{position:relative;padding:14px 0 14px 40px;border-top:1px solid var(--line);font-size:16.5px;line-height:1.5;color:var(--ink2)}
.pg-fit li::before{content:"";position:absolute;left:0;top:14px;width:24px;height:24px;border-radius:50%;background:var(--acFill)}
.pg-fit li::after{content:"";position:absolute;left:8px;top:20px;width:8px;height:5px;border-left:2px solid var(--acInk);border-bottom:2px solid var(--acInk);transform:rotate(-45deg)}
.pg-fit--no li::before{background:transparent;border:1.5px solid var(--barLow)}
.pg-fit--no li::after{left:7px;top:25px;width:10px;height:0;border:0;border-top:2px solid var(--barLow);transform:none}
.pg-inc{margin-top:56px}

/* Insight articles */
.pg-article{display:grid;grid-template-columns:270px minmax(0,1fr);gap:80px;align-items:start}
.pg-toc{position:sticky;top:112px}
.pg-toc ol{list-style:none;border-left:1.5px solid var(--line)}
.pg-toc a{display:block;padding:8px 0 8px 18px;margin-left:-1.5px;border-left:1.5px solid transparent;font-size:15px;line-height:1.4;color:var(--ink2)}
.pg-toc a:hover{color:var(--ink);border-left-color:var(--ac)}
.pg-art{max-width:780px}
.pg-takeaways{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--ac);border-radius:var(--rad);padding:28px 30px}
.pg-takeaways .pg-k{color:var(--ac);margin-bottom:4px}
.pg-art section{margin-top:56px;scroll-margin-top:110px}
.pg-art h2{font-size:38px;letter-spacing:-.03em;line-height:1.08;margin-bottom:20px}
.pg-pn{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}
.pg-pn a{display:block;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:22px 24px;font-family:var(--fh);font-weight:800;font-size:21px;letter-spacing:-.02em;line-height:1.2;transition:border-color .15s}
.pg-pn a:hover{border-color:var(--line3)}
.pg-pn span{display:block;font-family:var(--fb);font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-bottom:8px}
.pg-pn-next{grid-column:2;text-align:right}

/* About and results */
.pg-stats{margin-bottom:0}
.pg-names{display:flex;flex-wrap:wrap;gap:10px;list-style:none}
.pg-names li{font-family:var(--fh);font-weight:700;font-size:18px;letter-spacing:-.01em;padding:10px 18px;border-radius:var(--pill);border:1px solid var(--line2)}

/* Book, report covers, showcase */
.pg-showcase{display:grid;grid-template-columns:5fr 6fr;gap:72px;align-items:center}
.pg-showcase-copy .lede{margin-top:20px}
.pg-showcase-copy h2{margin-top:16px}
.pg-reports{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pg-report{display:flex;flex-direction:column;gap:22px}
.pg-report .cover{aspect-ratio:4/5}
.pg-report-t{display:flex;flex-direction:column;align-items:flex-start;flex:1}
.pg-report-t .btn{margin-top:auto}
.pg-report-t h3{margin:2px 0 10px}
.pg-report-t p:not(.pg-k){font-size:15.5px;line-height:1.55;color:var(--ink2);margin-bottom:18px}
.pg-report .pg-k{margin-bottom:8px}

/* The four I's (Marketing Impact OS page) */
.pg-loop{display:grid;grid-template-columns:5fr 6fr;gap:80px;align-items:center}
.pg-loop-q{width:100%;max-width:460px;margin:0 auto;display:block}
.pg-loop-q .q{fill:var(--qOff);stroke:var(--line2);stroke-width:1;animation:qlit 8s infinite}
.pg-loop-q .q:nth-of-type(2){animation-delay:2s}.pg-loop-q .q:nth-of-type(3){animation-delay:4s}.pg-loop-q .q:nth-of-type(4){animation-delay:6s}
.pg-loop-q .q.on{fill:var(--ac)}
.pg-loop-q text{font-family:var(--fh);font-weight:700;font-size:17px;fill:var(--ink);animation:qtx 8s infinite}
.pg-loop-q text:nth-of-type(1){fill:var(--acInk)}
.pg-loop-q text:nth-of-type(2){animation-delay:2s}.pg-loop-q text:nth-of-type(3){animation-delay:4s}.pg-loop-q text:nth-of-type(4){animation-delay:6s}
.pg-loop-q .goal{fill:var(--bg);stroke:var(--line2)}
.pg-loop-q text.g1{font-family:var(--fb);font-size:12px;font-weight:700;fill:var(--ink2);animation:none;letter-spacing:.06em;text-transform:uppercase}
@keyframes qlit{0%,22%{fill:var(--ac)}25%,100%{fill:var(--qOff)}}
@keyframes qtx{0%,22%{fill:var(--acInk)}25%,100%{fill:var(--qOffInk)}}
.pg-loop-steps{list-style:none;border-bottom:1px solid var(--line)}
.pg-loop-steps li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:20px;padding:22px 0;border-top:1px solid var(--line)}
.pg-loop-steps p{font-size:16.5px;line-height:1.55;color:var(--ink2);margin-top:6px}

/* How to start (Marketing Impact OS page): the homepage's path, step and tier components */
.pg-stage{display:flex;align-items:center;gap:14px;font-family:var(--fh);font-weight:700;font-size:21px;letter-spacing:-.015em;margin:56px 0 18px}
.pg-stage span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1.5px solid var(--line2);font-family:var(--fb);font-size:13px;font-weight:700;color:var(--ac)}
.sec-h+.pg-stage{margin-top:0}
.pg-path2{grid-template-columns:1fr auto 1fr;margin-bottom:0}
.pg-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pg-opt{display:flex;flex-direction:column;transition:border-color .15s}
.pg-opt:hover{border-color:var(--line3)}
.pg-opt--hi{border-color:var(--plOnLine);background:var(--plOnBg)}
.step .pg-opt-go{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:18px;font-weight:700;color:var(--ink)}
.step .pg-opt-go .arr{display:inline-block;margin:0;color:inherit}
a.step:hover b{text-decoration:underline;text-underline-offset:4px}

/* Assessment band */
.pg-assess .qz{margin:0 auto}

/* ---------- 7. Forms, calculator, notify ---------- */
.pg-form{display:grid;gap:20px}
.pg-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.pg-form label,.pg-calc label{display:grid;gap:8px;font-size:15px;font-weight:600;color:var(--ink)}
.pg-form input,.pg-form select,.pg-form textarea,.pg-notify input,.pop-form input{width:100%;font:inherit;font-size:17px;font-weight:400;color:var(--ink);background:var(--field);border:1.5px solid var(--line2);border-radius:12px;padding:14px 16px;transition:border-color .15s,box-shadow .15s}
.pg-form textarea{resize:vertical;min-height:140px;line-height:1.5}
.pg-form select{-webkit-appearance:none;appearance:none;padding-right:44px;background-image:var(--chev);background-repeat:no-repeat;background-position:right 16px center;background-size:12px}
.pg-form option{background:var(--optBg);color:var(--optInk)}
input::placeholder,textarea::placeholder{color:var(--ink3);opacity:1}
.pg-form input:focus,.pg-form select:focus,.pg-form textarea:focus,.pg-notify input:focus,.pop-form input:focus{outline:0;border-color:var(--ac);box-shadow:0 0 0 3px var(--ring)}
.pg-form .btn{justify-self:start}
.pg-form-note,.pg-notify-note{font-size:15.5px;color:var(--ac)}
.pg-form-note:empty,.pg-notify-note:empty{display:none}
.pg-form-note.bad,.pg-notify-note.bad{color:var(--bad)}
.pg-form-fine{font-size:14px;color:var(--ink3)}
.pg-form-fine a{color:var(--ink2);text-decoration:underline;text-underline-offset:3px}
.pg-split--contact{grid-template-columns:7fr 5fr;gap:56px}
.pg-contact-side{display:flex;flex-direction:column;gap:16px}
.pg-contact-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:32px}
.pg-contact-card--feat{background:var(--featBg);border-color:var(--featBg);color:var(--featInk)}
.pg-contact-card--feat .eyebrow{color:var(--featInk2)}
.pg-contact-card--feat h2{color:var(--featInk);font-size:32px;margin:12px 0 10px}
.pg-contact-card--feat p{color:var(--featInk2);font-size:16px;line-height:1.55;margin-bottom:22px}
.pg-contact-card--feat .btn{background:var(--finBtn);color:var(--finBtnInk);border-color:var(--finBtn)}
.pg-contact-list{list-style:none}
.pg-contact-list li{display:flex;flex-direction:column;gap:2px;padding:14px 0;border-top:1px solid var(--line)}
.pg-contact-list span{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.pg-contact-list a{font-weight:600;font-size:17px;overflow-wrap:anywhere}
.pg-contact-list a:hover{color:var(--ac);text-decoration:underline;text-underline-offset:4px}

.pg-calc{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch}
.pg-calc-in{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:36px}
.pg-calc-in label+label{margin-top:18px}
.pg-calc-field{display:flex;align-items:center;gap:6px;background:var(--field);border:1.5px solid var(--line2);border-radius:12px;padding:0 16px;transition:border-color .15s,box-shadow .15s}
.pg-calc-field:focus-within{border-color:var(--ac);box-shadow:0 0 0 3px var(--ring)}
.pg-calc-field i{font-style:normal;font-size:17px;color:var(--ink3)}
.pg-calc-field input{flex:1;min-width:0;background:transparent;border:0;outline:0;font:inherit;font-size:18px;font-weight:500;color:var(--ink);padding:13px 4px;font-variant-numeric:tabular-nums}
.pg-calc-fine{font-size:14px;color:var(--ink3);margin-top:22px}
.pg-calc-out{position:relative;overflow:hidden;background:var(--osBg);border:1px solid var(--line);border-radius:var(--rad);padding:36px;display:flex;flex-direction:column}
.pg-calc-row{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.pg-calc-row span{font-size:16px;color:var(--ink2)}
.pg-calc-row b{font-family:var(--fh);font-weight:800;font-size:26px;letter-spacing:-.02em;text-align:right;font-variant-numeric:tabular-nums}
.pg-calc-row #o-months{font-family:var(--fb);font-size:17px;font-weight:700;letter-spacing:0}
.pg-calc-row--big b{font-size:52px;color:var(--ac);letter-spacing:-.04em}
.pg-calc-row--big span{color:var(--ink);font-weight:700}
.pg-calc-note{font-size:15.5px;line-height:1.55;color:var(--ink2);margin:22px 0 26px}
.pg-calc-out .btn{align-self:flex-start;margin-top:auto;white-space:normal;text-align:center}

.pg-notify-card{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;position:relative;overflow:hidden;background:var(--osBg);border:1px solid var(--line);border-radius:calc(var(--rad) + 10px);padding:52px}
.pg-notify-card h2{font-size:42px;margin-top:14px}
.pg-notify-card>div>p{font-size:17px;line-height:1.55;color:var(--ink2);margin-top:14px;max-width:46ch}
.pg-notify{display:grid;gap:14px}
.pg-notify-pick{border:0;display:flex;flex-wrap:wrap;gap:8px}
.pg-notify-pick label{position:relative;cursor:pointer}
.pg-notify-pick input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0}
.pg-notify-pick span{display:inline-block;font-size:15px;font-weight:600;padding:9px 16px;border-radius:var(--pill);border:1.5px solid var(--line2);color:var(--ink2);transition:background-color .15s,border-color .15s}
.pg-notify-pick input:checked+span{background:var(--chip);border-color:var(--ac);color:var(--ink)}
.pg-notify-pick input:focus-visible+span{outline:2.5px solid var(--focus);outline-offset:3px}
.pg-notify-row{display:flex;gap:10px}
.pg-notify-row[hidden]{display:none}
.pg-notify-row input{flex:1;min-width:0}

/* ---------- 8. Book pop-up ---------- */
.pop{margin:auto;border:1px solid var(--line2);padding:0;background:var(--bg);color:var(--ink);border-radius:24px;width:calc(100% - 32px);max-width:900px;max-height:calc(100% - 32px);box-shadow:0 40px 90px -30px var(--popShadow);overflow:auto}
.pop[open]{display:grid;grid-template-columns:1fr 1.15fr}
.pop::backdrop{background:var(--backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.pop-art{display:flex;align-items:center;justify-content:center;background:var(--osBg);padding:40px 20px;border-right:1px solid var(--line)}
.pop-copy{padding:52px 44px 44px;display:flex;flex-direction:column;align-items:flex-start}
.pop-copy h2{font-size:36px;letter-spacing:-.03em;line-height:1.04;margin:14px 0 12px}
.pop-lead{font-size:17px;line-height:1.55;color:var(--ink2)}
.pop-form{display:flex;flex-direction:column;gap:10px;width:100%;margin:24px 0 14px}
.pop-form[hidden]{display:none}
.pop-error{color:var(--bad);font-size:15px;margin-bottom:12px}
.pop-done{font-size:16.5px;color:var(--ink2);margin:20px 0 16px}
.pop-done b{color:var(--ac)}
.pop-x{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;z-index:2}
.pop-x:hover{background:var(--navHover)}
.pop-x span::before,.pop-x span::after{content:"";position:absolute;left:50%;top:50%;width:18px;height:1.8px;background:var(--ink);transform:translate(-50%,-50%) rotate(45deg)}
.pop-x span::after{transform:translate(-50%,-50%) rotate(-45deg)}
html.pop-open{overflow:hidden}

/* ---------- Inner pages: responsive ---------- */
@media (max-width:1280px){
  .pg-reports{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pg-report .cover{aspect-ratio:5/4}
  .pg-hero-q{width:260px;height:260px}
  .pg-hero h1{font-size:76px}
}
@media (max-width:1140px){
  .pg-hero-q{display:none}
  .pg-cards,.pg-cards--4,.pg-deliv{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pg-split,.pg-split--lead,.pg-split--contact,.pg-faq-g,.pg-showcase,.pg-loop,.pg-notify-card{grid-template-columns:1fr;gap:40px}
  .pg-split--lead{align-items:start}
  .pg-prose-b{grid-template-columns:1fr;gap:14px}
  .pg-probs>li{grid-template-columns:220px minmax(0,1fr);gap:32px}
  .pg-article{grid-template-columns:1fr;gap:40px}
  .pg-toc{position:static}
  .pg-calc{grid-template-columns:1fr}
  .pg-opts{grid-template-columns:1fr}
  .pg-panel-h{flex-direction:column;align-items:flex-start;gap:20px}
}
@media (max-width:900px){
  .pg-reports{grid-template-columns:1fr;max-width:520px}
  .pg-fitcols{grid-template-columns:1fr}
}
@media (max-width:760px){
  .pg-sec{padding:72px 0}
  .pg-sec--tight{padding:48px 0}
  .pg-sec .sec-h h2,.pg-faq-g .sec-h h2{font-size:36px}
  .pg-hero{padding:24px 0 64px}
  .pg-crumbs{margin-bottom:28px}
  .pg-crumbs ol{font-size:13.5px}
  .pg-hero h1{font-size:46px;line-height:1}
  .pg-hero h1 .pg-ac{font-size:.66em}
  .pg-hero-sub{font-size:18px;margin-top:22px}
  .pg-hero-cta{flex-direction:column;align-items:stretch;gap:18px;margin-top:30px}
  .pg-hero-cta .btn{white-space:normal;text-align:center;font-size:17px;padding:18px 20px}
  .pg-prose--lead{font-size:19px}
  .pg-hero-cta .tl{align-self:flex-start}
  .pg-proof{align-items:flex-start;margin-top:32px}
  .pg-cards,.pg-cards--4,.pg-cards--2,.pg-deliv{grid-template-columns:1fr}
  .pg-card{padding:24px 22px 20px}
  .pg-probs>li{grid-template-columns:1fr;gap:12px;padding:28px 0}
  .pg-prob-txt h3{font-size:23px}
  .pg-panel{padding:28px 18px;border-radius:20px}
  .pg-panel-h{margin-bottom:28px}
  .pg-steps{grid-template-columns:1fr}
  .pg-faq-i summary h3{font-size:19px}
  .pg-faq-i p{padding-right:0}
  .pg-prose-b{padding:36px 0}
  .pg-prose-b h2{font-size:28px}
  .pg-prose-b p,.pg-art p{font-size:17px}
  .pg-art h2{font-size:30px}
  .pg-pn{grid-template-columns:1fr}.pg-pn-next{grid-column:auto}
  .pg-fit{padding:28px 22px}
  .pg-form-row{grid-template-columns:1fr}
  .pg-form .btn{justify-self:stretch}
  .pg-calc-in,.pg-calc-out{padding:24px 20px}
  .pg-calc-row #o-months{font-family:var(--fb);font-size:17px;font-weight:700;letter-spacing:0}
.pg-calc-row--big b{font-size:40px}
  .pg-calc-row{flex-wrap:wrap}
  .pg-notify-card{padding:28px 20px;border-radius:20px}
  .pg-notify-card h2{font-size:32px}
  .pg-notify-row{flex-direction:column}
  .pg-notify-row .btn{white-space:normal}
  .pg-contact-card{padding:26px 22px}
  .pg-names li{font-size:16px;padding:8px 14px}
  .pg-path2{grid-template-columns:1fr}.pg-path2 .join{width:100%;height:36px}.pg-path2 .join svg{transform:rotate(90deg)}
  .pg-stage{font-size:19px;margin-top:44px}
  .pg-author{flex-direction:column;padding:24px 22px}
  .pop[open]{grid-template-columns:1fr}
  .pop-art{display:none}
  .pop-copy{padding:56px 22px 28px}
  .pop-copy h2{font-size:30px}
}


/* ---------- 9. Responsive (homepage and shell) ---------- */
@media (max-width:1280px){
  .nav-t{padding:10px 9px;font-size:15px}
}
@media (max-width:1140px){
  .nav,.hdr-r .call,.hdr-r .btn{display:none}
  .hdr-r{gap:8px}
  .burger{display:flex;margin-left:4px}
  .mega,.scrim{display:none}
  .why-g{grid-template-columns:1fr;gap:40px}.why-l{position:static}
  .act{grid-template-columns:minmax(0,1fr)}
  .stats{grid-template-columns:repeat(2,1fr)}
  .stat:nth-child(3){padding-left:0;border-left:0}
  .stat:nth-child(n+3){border-top:1px solid var(--line)}
  .cases{grid-template-columns:1fr 1fr}
  .ftr-g{grid-template-columns:repeat(3,1fr)}.ftr-b{grid-column:1/-1}
  .path{grid-template-columns:1fr;gap:0}.join{width:100%;height:36px}.join svg{transform:rotate(90deg)}
}
@media (max-width:760px){
  :root{--gut:20px}
  body{font-size:16px}
  .hdr-bar{height:72px}
  .mnav{inset:72px 0 0}
  .logo svg{width:35px;height:35px}.logo-w{font-size:20px}
  .scrim{display:none}
  h2{font-size:38px;letter-spacing:-.03em}
  .lede{font-size:18px}
  .sec{padding:80px 0}
  .sec-h{margin-bottom:36px;gap:16px}
  .sec-h.row{flex-direction:column;align-items:flex-start;gap:20px}
  .hero{padding:52px 0 56px}
  .hero h1{font-size:54px;line-height:1}
  .roll-w{white-space:normal;width:auto;max-width:100%}
  .hero-sub{font-size:18.5px;margin-top:20px}
  .nw{white-space:normal}
  .hero-cta{flex-direction:column;align-items:stretch;gap:18px;margin-top:30px;width:100%}
  .hero-cta .btn{white-space:normal;font-size:17px;padding:18px 20px}
  .hero-cta .tl{align-self:center}
  .proof{flex-direction:column;gap:12px;margin-top:30px}
  .os-chip{padding:9px 11px;font-size:14px;gap:9px}.os-chip small{display:none}
  .bar-r{grid-template-columns:96px 1fr 26px;font-size:13px}
  .loop span{font-size:12px;padding:8px 2px}
  .why-cards{grid-template-columns:1fr}
  .why-c{padding:24px 22px}
  .vs{padding:4px 18px;overflow:hidden}
  .vs-r{grid-template-columns:1fr 1fr 1fr;font-size:14px;gap:10px}
  .vs-r>:first-child{grid-column:1/-1}
  .vs-h>:first-child{display:none}
  .act-p{padding:16px;min-height:0;border-radius:20px}
  .act-t{padding:18px 20px}.act-t b{font-size:21px}
  .ui-b{padding:16px}
  .ui .bar-r{grid-template-columns:100px 1fr 28px;font-size:13.5px}
  .rm{font-size:13.5px}.rm .hide-s{display:none}
  .kpis{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr}
  .stat,.stat+.stat{padding:24px 0;border-left:0}
  .stat+.stat{border-top:1px solid var(--line)}
  .stat .v{font-size:48px}
  .cases{grid-template-columns:1fr}
  .case{min-height:0}
  .names{grid-template-columns:1fr;margin-top:40px}
  .names-k{padding:16px 0 0}
  .names-v{border-top:0;padding-top:8px;font-size:20px;gap:4px 20px}
  .names-v.muted{font-size:17px}
  .step .or{grid-template-columns:1fr}
  .tiers{grid-template-columns:1fr}
  .tier{padding:26px 22px 22px}
  .tier h3{font-size:28px}
  .rep-g{grid-template-columns:1fr 1fr;gap:20px 12px}
  .cover{padding:16px 14px}.cover .t{font-size:21px}
  .rep-t b{font-size:17px}.rep-t span{font-size:14px}
  .final{padding:88px 0}
  .final .bgq{display:none}
  .cover .ck span+span{display:none}
  .final h2{font-size:44px}
  .final p{font-size:18px}
  .ftr-g{grid-template-columns:1fr 1fr;gap:32px 20px}
  .ftr-bot{flex-direction:column;align-items:flex-start}
}
/* Header fit (2026-10-15, five top items): the nav tightens below 1360 and hands over to the burger at 1140 (block above) */
@media (max-width:1360px){
  .hdr-bar{gap:12px}
  .nav{margin-left:2px}
  .nav-t{padding:10px 6px;font-size:14.5px;gap:4px}
  .logo-w{font-size:21px}.logo svg{width:36px;height:36px}.logo{gap:9px}
  .hdr-r{gap:10px}
  .hdr-r .btn.sm{padding:10px 15px;font-size:14.5px}
}
/* ---------- 2026-10-14b responsive: proof row, jump tiles, industry sections, book ---------- */
@media (max-width:1280px){
  .ios-g{grid-template-columns:156px minmax(0,1fr) 156px;gap:0 30px}
  .ind-g{gap:48px}
}
@media (max-width:1140px){
  .ind-g{grid-template-columns:1fr;gap:40px}
  .ind-c h2{max-width:22ch}
  .ind-c .lede{max-width:46ch}
  .ios-g{grid-template-columns:180px minmax(0,1fr) 180px;gap:0 48px}
}
@media (max-width:1000px){
  .jump{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .bkf{grid-template-columns:1fr}
  .bkf-art{border-right:0;border-bottom:1px solid var(--stageLine)}
  .bkf-t{padding:28px 26px 30px}
}
@media (max-width:760px){
  .proof4{grid-template-columns:1fr 1fr;gap:22px 14px;margin-top:34px}
  .proof4 b{font-size:21px}
  .proof4 span:not(.upw){font-size:14px}
  .jump{grid-template-columns:1fr 1fr;gap:10px;margin-top:30px}
  .jt{padding:13px 34px 13px 14px}
  .jt b{font-size:17px}
  .jt span{font-size:13px}
  .jt-a{right:11px}
  .indsec{padding:72px 0;scroll-margin-top:-40px}
  .ind-c{gap:16px}
  .ind-c h2{font-size:34px}
  .ind-c .lede{font-size:17.5px}
  .ios{padding:16px 14px 16px;border-radius:20px}
  .ios-for,.ios .bars{display:none}
  .ios-score{margin-bottom:0}
  .ios-spark{height:24px;margin:4px 0 6px}
  .ios-g{grid-template-columns:1fr;gap:18px}
  .ios-wires{display:none}
  .ios-in{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .ios .os-chip{padding:8px 10px}
  .ios .os-chip small{display:block}
  .ios-mid{padding-top:0}
  .ios .bar-r{grid-template-columns:100px 1fr 26px;font-size:13px}
  .ios-out{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .ios-win{grid-column:1/-1}
  .bkf-art .bk3,.pg-showcase-art .bk3{--bk:8.2px}
  .bkf-t h3{font-size:32px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* ════════════════════════════════════════════════════════════════════════════
   Round 3 (2026-10-15): industries jump nav + alternating sections, OS illustration without
   sample numbers, See it in action as three steps, client marquee, the way in, 3D report PDFs,
   insights by area, one book, two-button closing CTA, footer groups with Follow icons, About Follow
   block, Contact without a form.
   ════════════════════════════════════════════════════════════════════════════ */
/* Industries: the jump nav opens the block */
.indnav{padding:112px 0 8px;scroll-margin-top:0}
.indnav-h{display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px}
.indnav-h h2{font-size:52px;max-width:20ch}
.indnav .jump{margin-top:44px;max-width:1120px}
.indsec{scroll-margin-top:0}
.ind-g.flip{grid-template-columns:minmax(0,7.7fr) minmax(0,4.3fr)}
.ind-g.flip .ind-c{order:2}
.ind-c .ind-n{font-family:var(--fb);font-size:13px;font-weight:700;letter-spacing:.14em;color:var(--ac);margin:0}
.ind-c h2{font-size:48px;max-width:13ch}
.ind-sub{font-family:var(--fh);font-weight:700;font-size:23px;letter-spacing:-.015em;line-height:1.2;color:var(--ink);margin-top:-4px}
/* OS illustration: a level, bars on a 1 to 5 scale, trend lines with months */
.ios-lv{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:14px}
.ios-lv-k{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.ios-lv-d{display:flex;gap:4px}
.ios-lv-d i{width:14px;height:14px;border-radius:4px;background:var(--track);border:1px solid var(--line2)}
.ios-lv-d i.on{background:var(--acFill);border-color:var(--acFill)}
.ios-lv b{flex-basis:100%;font-family:var(--fh);font-weight:800;font-size:17px;letter-spacing:-.015em}
.ios .bar-r,.f3 .bar-r{grid-template-columns:96px 1fr}
.bar-ax{display:grid;grid-template-columns:96px 1fr;gap:8px;margin-top:2px}
.bar-ax .ax{display:flex;justify-content:space-between;font-size:10.5px;font-weight:700;color:var(--ink3);padding:0 1px}
.bar-ax .ax i{font-style:normal;width:12px;text-align:center}
.bar-ax .ax i:first-child{text-align:left}.bar-ax .ax i:last-child{text-align:right}
.ios-tr{margin-top:8px}
.ios-tr+.ios-tr{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.ios-tr small{display:block;font-size:12px;font-weight:600;color:var(--ink2);line-height:1.3}
.ios-tr svg{width:100%;height:34px;margin-top:6px;overflow:visible}
.ios-tr path{fill:none;stroke:var(--ac);stroke-width:2.4;stroke-linecap:round;vector-effect:non-scaling-stroke}
.ios-tr path.g{stroke:var(--line2);stroke-width:1}
.ios-mo{display:flex;justify-content:space-between;margin-top:3px}
.ios-mo i{font-style:normal;font-size:10.5px;font-weight:600;color:var(--ink3)}

/* See it in action: three steps side by side */
.f3{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;counter-reset:f3}
.f3-i{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--rad) + 6px);overflow:hidden}
.f3-art{height:318px;display:grid;place-items:center;background:var(--stage);border-bottom:1px solid var(--stageLine);padding:22px;overflow:hidden}
.f3-t{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:28px 28px 30px;flex:1}
.f3-t h3{font-size:26px}
.f3-t p:not(.f3-k){font-size:16px;line-height:1.55;color:var(--ink2)}
.f3-t .tl{margin-top:auto;padding-top:6px}
.f3-k{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ac)}
.f3-n{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--acFill);color:var(--acInk);font-family:var(--fh);font-weight:800;font-size:15px;letter-spacing:0}
.f3-score{width:100%;max-width:330px;background:var(--surface2);border:1px solid var(--line2);border-radius:14px;padding:16px;box-shadow:0 20px 44px -30px var(--shadow)}
.f3-sh{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:12px}
.f3-sh b{font-size:14px;font-weight:700}.f3-sh span{font-size:12px;color:var(--ink3);font-weight:600}
.f3 .bars{gap:6px}.f3 .bar-r{font-size:12.5px}.f3 .bar-r .t{height:7px}
.f3 .ios-fix{margin-top:12px}
/* the Roadmap as pages: a fanned stack, the front page shows its contents by the four I's */
.f3-doc{position:relative;width:250px;height:274px}
.f3-pg{position:absolute;inset:0;background:#FBFAF6;color:#0F2620;border-radius:5px;border:1px solid rgba(15,38,32,.12);box-shadow:0 18px 34px -20px rgba(0,0,0,.55);padding:16px 16px 14px;overflow:hidden}
.f3-pg--3{transform:translate(26px,10px) rotate(7deg);background:#F1EEE5}
.f3-pg--2{transform:translate(13px,4px) rotate(3.5deg);background:#F6F4EC}
.f3-pg--1{transform:translate(-8px,0) rotate(-2deg)}
.f3-pk{display:block;font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#17703F;text-align:right}
.f3-grid{position:absolute;right:12px;bottom:14px;display:grid;grid-template-columns:repeat(3,28px);gap:5px}
.f3-grid i{height:22px;border-radius:3px;background:#DCEBDD}
.f3-fun{position:absolute;right:12px;bottom:14px;display:flex;flex-direction:column;align-items:flex-end;gap:3px}
.f3-fun i{display:block;height:9px;border-radius:2px;background:#8FDDA0}
.f3-fun i:nth-child(1){width:90px}.f3-fun i:nth-child(2){width:70px}.f3-fun i:nth-child(3){width:50px}.f3-fun i:nth-child(4){width:30px;background:#17703F}
.f3-ph{display:flex;align-items:center;gap:8px;padding-bottom:10px;border-bottom:1px solid rgba(15,38,32,.14)}
.f3-ph svg{width:18px;height:18px;color:#0F2620;flex:none}.f3-ph .q4{fill:#17703F}
.f3-ph b{font-family:var(--fh);font-weight:800;font-size:14px;letter-spacing:-.01em;line-height:1.1}
.f3-toc{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.f3-toc div{display:grid;grid-template-columns:62px 1fr;gap:8px;align-items:baseline}
.f3-toc span{font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#17703F}
.f3-toc p{font-size:11.5px;line-height:1.35;color:#25473B}
/* running the OS: the quadrant loop and a report */
.f3-run{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%}
.f3 .f3-q{width:200px;height:200px;max-width:none;margin:0}
.f3 .f3-q text{font-size:21px}
.f3 .f3-q text.g1{font-size:14px}
.f3-rep{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;background:var(--surface2);border:1px solid var(--line2);border-radius:12px;padding:8px 10px}
.f3-rep b{font-size:12.5px;font-weight:700;margin-right:2px}
.f3-rep span{font-size:12px;font-weight:700;padding:3px 8px;border-radius:6px;background:var(--chip);color:var(--ink)}

/* Client marquee: every name, one style */
.mq{margin-top:64px;padding-top:28px;border-top:1px solid var(--line)}
.mq-k{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-bottom:18px}
.mq-v{display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.mq-t{display:flex;flex:none;list-style:none;animation:mq 90s linear infinite}
.mq-t li{display:flex;align-items:center;white-space:nowrap;font-family:var(--fh);font-weight:700;font-size:26px;letter-spacing:-.015em;line-height:1.3;color:var(--ink)}
.mq-t li::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--ac);margin:0 28px;opacity:.7}
.mq:hover .mq-t,.mq.mq-off .mq-t{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-100%)}}
.mq--pg{margin-top:8px;padding-top:0;border-top:0}
@media (prefers-reduced-motion:reduce){
  .mq-v{-webkit-mask-image:none;mask-image:none}
  .mq-t{flex-wrap:wrap;row-gap:6px;flex:1}
  .mq-dup{display:none}
}

/* How to work with us: the way in, one compact row */
.way{list-style:none;display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:12px;max-width:1080px;margin:0 auto 28px}
.way>li>a,.way-or{display:flex;align-items:center;gap:14px;height:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:18px 20px;transition:border-color .15s}
.way>li>a:hover{border-color:var(--line3)}
.way-n{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;background:var(--acFill);color:var(--acInk);font-family:var(--fh);font-weight:800;font-size:15px}
.way b{display:block;font-family:var(--fh);font-weight:800;font-size:19px;letter-spacing:-.015em;line-height:1.2}
.way b a{text-decoration:underline;text-decoration-color:var(--line2);text-underline-offset:4px}
.way b a:hover{text-decoration-color:currentColor}
.way small{display:block;font-size:14px;color:var(--ink2);margin-top:3px;line-height:1.4}

/* Reports as physical PDFs: a tilted cover, page edges, a soft shadow */
.pdf{position:relative;display:block;padding:8px 26px 34px 12px;perspective:1400px}
.pdf-3d{position:relative;display:block;aspect-ratio:1/1.32;transform:rotateY(-17deg) rotateX(4deg);transform-origin:40% 50%;transform-style:preserve-3d;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
a:hover .pdf-3d,.pdf:hover .pdf-3d{transform:rotateY(-9deg) rotateX(3deg) translateY(-4px)}
.pdf-pages{position:absolute;inset:2px 0 0 2px;border-radius:2px 6px 6px 2px;background:#EFEADC;transform:translateZ(-14px);
  box-shadow:2px 2px 0 #D9D3C3,4px 3px 0 #F5F1E6,6px 4px 0 #D9D3C3,8px 5px 0 #F2EEE2,10px 6px 0 #CFC9B8}
.pdf-cover{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:9% 9% 8%;border-radius:2px 6px 6px 2px;background:var(--cv);color:var(--cvInk);overflow:hidden;
  box-shadow:inset 7px 0 10px -6px rgba(0,0,0,.35),inset 0 0 0 1px rgba(0,0,0,.08)}
.pdf-cover::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.18) 0,rgba(255,255,255,.12) 3%,transparent 8%),linear-gradient(125deg,rgba(255,255,255,.16) 0%,transparent 42%)}
.pdf-cover>*{position:relative}
.pdf-cover .y{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.pdf-cover .t{font-family:var(--fh);font-weight:800;font-size:clamp(19px,2.05vw,29px);letter-spacing:-.03em;line-height:1.02}
.pdf-f{display:block}
.pdf-cover .ticks{display:flex;gap:4px}
.pdf-cover .ticks i{flex:1;height:4px;border-radius:2px;background:currentColor}
.pdf-cover .ck{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;font-size:11.5px;font-weight:700;opacity:.9}
.pdf-b{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.pdf-b svg{width:13px;height:13px}
.pdf-sh{position:absolute;left:8%;right:4%;bottom:12px;height:30px;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,var(--bkShadow),transparent 70%);filter:blur(6px)}
.rep-g{gap:28px 20px}
.rep{gap:6px}
.rep .cover{display:none}
.rep-t{display:flex;flex-direction:column}
.pg-report .pdf{max-width:360px}
.pg-report{scroll-margin-top:100px}

/* Insights by area */
.areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.area{position:relative;display:flex;flex-direction:column;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:24px 24px 22px;transition:border-color .15s,transform .15s}
.area:hover{border-color:var(--line3);transform:translateY(-2px)}
.area-n{font-family:var(--fh);font-weight:800;font-size:14px;color:var(--ac)}
.area b{font-family:var(--fh);font-weight:800;font-size:23px;letter-spacing:-.02em;line-height:1.1}
.area-t{font-size:15px;line-height:1.5;color:var(--ink2)}
.area-go{margin-top:auto;padding-top:6px;font-size:19px;transition:transform .15s}
.area:hover .area-go{transform:translateX(4px)}
.area--cta{background:var(--featBg);border-color:var(--featBg);color:var(--featInk)}
.area--cta .area-n,.area--cta b,.area--cta .area-go{color:var(--featInk)}
.area--cta .area-t{color:var(--featInk2)}
#action .bkf{margin-top:48px}
.pg-sec .areas{margin-top:0}

/* One book */
.bk3.one{width:36em;height:44em}
.bk3.one .bk--os{left:6em;top:4.2em}
.bk3.one .bk-front{justify-content:flex-start}
.bk3.one .bk-q{margin-top:.6em}

/* Closing CTA: two buttons */
.final .btn.fin2{background:transparent;color:var(--finInk);border-color:var(--finInk)}
.final .btn.fin2:hover{background:rgba(15,38,32,.06)}
:root[data-theme=light] .final .btn.fin2:hover{background:rgba(241,238,229,.08)}
.final p{max-width:52ch}

/* Follow: brand icons with names */
.follow{list-style:none;display:flex;flex-direction:column;gap:2px}
.follow a{display:inline-flex;align-items:center;gap:10px;padding:6px 0;font-size:15px;font-weight:500;color:var(--ink)}
.follow svg{width:18px;height:18px;flex:none;color:var(--ink2);transition:color .15s}
.follow a:hover{text-decoration:underline;text-underline-offset:4px}
.follow a:hover svg{color:var(--ac)}
.follow--mega a{font-size:15.5px;padding:7px 0}
.follow--card{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.follow--card a{width:100%;gap:10px;padding:11px 14px;border:1.5px solid var(--line2);border-radius:12px;font-weight:700}
.follow--card a:hover{border-color:var(--ink);text-decoration:none}
.follow--card svg{width:19px;height:19px;color:var(--ink)}

/* Footer: brand, then seven groups */
.ftr-g{grid-template-columns:minmax(0,1fr) minmax(0,3.4fr);gap:56px}
.ftr-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:44px 32px}
.ftr-b p{max-width:26ch}

/* About: the Follow block in the hero */
.pg-hero--aside .wrap{min-height:0}
.pg-follow{position:absolute;right:var(--gut);top:120px;width:320px;background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--rad) + 4px);padding:24px;box-shadow:0 24px 50px -36px var(--shadow)}
.pg-follow .pg-k{margin-bottom:14px}
.pg-hero--aside h1,.pg-hero--aside .pg-hero-sub{max-width:min(15ch,100%)}
.pg-hero--aside .pg-hero-sub{max-width:50ch}
@media (min-width:1141px){.pg-hero--aside .pg-hero-sub,.pg-hero--aside h1 .pg-ac{max-width:calc(100% - 380px)}}
.pg-prose-team .pg-prose{color:var(--ink2)}

/* Contact: book, score, follow */
.pg-contact3{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:16px;align-items:stretch}
.pg-contact3 .pg-contact-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.pg-contact3 .pg-contact-card h2{font-size:30px;margin:0}
.pg-contact3 .pg-contact-card p{font-size:16px;line-height:1.55;color:var(--ink2);margin:0}
.pg-contact3 .pg-contact-card--feat p{color:var(--featInk2)}
.pg-contact3 .pg-contact-card--feat h2{color:var(--featInk)}
.pg-contact3 .btn{margin-top:auto;white-space:normal;text-align:center}
.pg-contact3 .follow--card{width:100%;margin-top:auto}
.pg-contact3 #book-a-call{scroll-margin-top:110px}
.mg-2{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;margin-top:6px}
.why-p{font-size:17px;line-height:1.6;color:var(--ink2);max-width:46ch}

@media (max-width:1280px){
  .ftr-cols{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pdf-cover .t{font-size:clamp(17px,2.2vw,26px)}
}
@media (max-width:1140px){
  .ind-g.flip{grid-template-columns:1fr}
  .ind-g.flip .ind-c{order:0}
  .f3{grid-template-columns:1fr;max-width:640px;margin:0 auto}
  .areas{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ftr-g{grid-template-columns:1fr;gap:44px}
  .pg-follow{position:static;width:auto;max-width:420px;margin-top:32px}
  .pg-contact3{grid-template-columns:1fr 1fr}
  .pg-contact3 .pg-contact-card--feat{grid-column:1/-1}
  .rep-g{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pdf-cover .t{font-size:clamp(20px,3.4vw,30px)}
}
@media (max-width:900px){
  .way{grid-template-columns:1fr}
}
@media (max-width:760px){
  .indnav{padding:72px 0 0}
  .indnav-h h2{font-size:34px}
  .indnav .jump{margin-top:28px}
  .ind-c h2{font-size:36px}
  .ind-sub{font-size:20px}
  .ios .bar-r{grid-template-columns:100px 1fr}
  .f3-art{height:auto;min-height:280px;padding:22px 16px}
  .f3-t{padding:22px 20px 24px}
  .f3-t h3{font-size:23px}
  .mq{margin-top:44px}
  .mq-t li{font-size:21px}
  .mq-t li::after{margin:0 18px}
  .rep-g{grid-template-columns:1fr 1fr;gap:20px 12px}
  .pdf{padding:4px 14px 24px 4px}
  .pdf-cover .t{font-size:16px}
  .pdf-cover .ck .pdf-b{display:none}
  .pdf-cover .y{font-size:9.5px}
  .areas{grid-template-columns:1fr}
  .ftr-cols{grid-template-columns:1fr 1fr;gap:32px 20px}
  .pg-contact3{grid-template-columns:1fr}
  .follow--card{grid-template-columns:1fr 1fr}
  .final .hero-cta .btn{width:100%}
}
/* round 3 fixes */
.indnav{padding:104px 0 0}
.indnav+.indsec{padding-top:88px}
.f3-doc{width:268px}
.f3-toc div{grid-template-columns:70px 1fr}
.rep-t .go{display:block}
.rep-t .go .arr{margin-left:6px}
.areas-k{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-bottom:16px}
.ftr .follow a{display:inline-flex;padding:6px 0}
.ftr h4{line-height:1.35}
.f3-art{height:352px}
@media (max-width:760px){.f3-art{height:auto;min-height:300px}}
.f3-gantt{margin-top:14px;padding-top:10px;border-top:1px solid rgba(15,38,32,.12);display:flex;flex-direction:column;gap:5px}
.f3-gantt span{font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#17703F;margin-bottom:2px}
.f3-gantt i{display:block;height:8px;border-radius:3px;margin-left:var(--a);width:var(--b);background:#8FDDA0}
.f3-gantt i:nth-of-type(2){background:#17703F;opacity:.75}.f3-gantt i:nth-of-type(3){background:#0F2620;opacity:.8}
.f3-rep{flex-wrap:nowrap;gap:5px;padding:8px}
.f3-rep span{font-size:11.5px;padding:3px 7px;white-space:nowrap}
.pg-report-t .btn{white-space:normal;text-align:center;line-height:1.3}
/* report covers scale with their own width */
.pdf-cover{container-type:inline-size}
.pdf-cover .t,.pdf-cover .t[class]{font-size:11.6cqw}
.pdf-cover .y{font-size:max(9px,4.4cqw)}
.pdf-cover .ck{font-size:max(9px,4.6cqw)}
.pdf-b svg{width:1.15em;height:1.15em}
@media (max-width:760px){.pdf-cover .ck .pdf-b{display:inline-flex}.pg-report .pdf{max-width:300px}}
@media (max-width:420px){.rep .pdf-cover .ck .pdf-b{display:none}}
.pdf-cover .t,.pdf-cover .t[class]{font-size:13.6cqw}
.rep-t .go .arr{margin-left:0}
.rep-t .go .arr{display:inline-block;margin-top:0;font-size:inherit;color:inherit}

/* ───── round 4 (2026-10-15) ───── */
/* Footer: brand and Follow on top, then six even columns */
.ftr-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:48px;align-items:start;padding-bottom:48px;margin-bottom:48px;border-bottom:1px solid var(--line)}
.ftr-top .ftr-b p{margin-top:16px;max-width:34ch}
.ftr-top .ftr-b .btn{margin-top:22px}
.ftr-follow{justify-self:end;width:100%;max-width:640px}
.ftr-follow h4{margin-bottom:14px}
.ftr .follow--ftr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ftr .follow--ftr a{display:flex;width:100%;align-items:center;gap:10px;padding:11px 14px;border:1px solid var(--line2);border-radius:12px;font-size:14.5px;font-weight:600;line-height:1.25}
.ftr .follow--ftr a:hover{border-color:var(--ink);text-decoration:none}
.ftr .follow--ftr svg{color:var(--ink)}
.ftr-cols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:40px 28px}
.ftr-cols h4{margin-bottom:12px}
.ftr-cols li a{padding:5px 0;font-size:14.5px;line-height:1.35}
.ftr-bot{margin-top:56px}
@media (max-width:1280px){.ftr-cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1140px){.ftr-top{grid-template-columns:1fr;gap:36px}.ftr-follow{justify-self:start;max-width:none}}
@media (max-width:760px){
  .ftr-top{padding-bottom:36px;margin-bottom:36px}
  .ftr .follow--ftr{grid-template-columns:1fr 1fr}
  .ftr-cols{grid-template-columns:1fr 1fr;gap:32px 20px}
}

/* Profiles whose link is coming: shown, with a visible tooltip */

/* Contact: the booking card sits in the hero */
.pg-book{position:absolute;right:var(--gut);top:112px;width:380px;background:var(--featBg);color:var(--featInk);border-radius:calc(var(--rad) + 4px);padding:30px 30px 32px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;scroll-margin-top:110px}
.pg-book .eyebrow{color:var(--featInk2)}
.pg-book h2{color:var(--featInk);font-size:32px;margin:0}
.pg-book p{color:var(--featInk2);font-size:16px;line-height:1.55;margin:0}
.pg-book .pg-book-note{font-size:14.5px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--featInk) 18%,transparent)}
.pg-book .btn{margin-top:8px;background:var(--finBtn);color:var(--finBtnInk);border-color:var(--finBtn);white-space:normal;text-align:center}
@media (min-width:1141px){.pg--page .pg-hero--aside:has(.pg-book) .pg-hero-sub,.pg-hero--aside:has(.pg-book) h1 .pg-ac{max-width:calc(100% - 440px)}}
.follow--card3{grid-template-columns:repeat(3,minmax(0,1fr))}
#follow .pg-split{align-items:center}

/* The book page: the cover in the hero */
.pg-hero-book{position:absolute;right:var(--gut);top:72px;width:380px;background:var(--stage);border:1px solid var(--line);border-radius:calc(var(--rad) + 10px);padding:22px 0 10px}
.pg-hero-book .bk3{--bk:8.6px}
@media (min-width:1141px){.pg-hero--aside:has(.pg-hero-book) .pg-hero-sub,.pg-hero--aside:has(.pg-hero-book) h1 .pg-ac{max-width:calc(100% - 440px)}.pg-hero--aside:has(.pg-hero-book) .wrap{min-height:520px}}
.pg-wb-ed{margin-top:28px;font-size:16px;line-height:1.55;color:var(--ink2);max-width:70ch}
.pg-probs--wb .pg-prob-txt p{font-size:17px;line-height:1.5}
.pg-steps--6{grid-template-columns:repeat(3,minmax(0,1fr))}
#workbook,#inside{scroll-margin-top:90px}

/* Report covers: the author line */
.pdf-by{white-space:nowrap}

@media (max-width:1140px){
  .pg-book,.pg-hero-book{position:static;width:auto;max-width:460px;margin-top:32px}
  .pg-steps--6{grid-template-columns:1fr 1fr}
  .follow--card3{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .pg-book{padding:24px 22px 26px}
  .pg-book h2{font-size:28px}
  .pg-steps--6{grid-template-columns:1fr}
}
@media (min-width:1141px){.pg-hero--aside:has(.pg-book) h1,.pg-hero--aside:has(.pg-hero-book) h1{max-width:calc(100% - 440px)}}
@media (min-width:1141px){.pg-hero--aside:has(.pg-book) h1 .pg-ac,.pg-hero--aside:has(.pg-hero-book) h1 .pg-ac{max-width:none}}
.follow--card{grid-template-columns:repeat(2,minmax(0,1fr))}
.follow--card li{min-width:0}
.follow--card a{box-sizing:border-box;min-width:0}
.pg-follow{width:340px}
#follow .follow--card{max-width:520px;margin-left:auto}
@media (max-width:1140px){#follow .follow--card{margin-left:0}}
@media (min-width:1141px){.pg-hero--aside:has(.pg-follow) h1{max-width:calc(100% - 420px)}.pg-hero--aside:has(.pg-follow) h1 .pg-ac{max-width:none}}
.ftr .follow--ftr li{display:flex}

/* The Marketing Impact OS series (2026-10-15): edition covers share the core cover, with a "for ..." line */
.bk-ed{display:block;margin-top:.55em;font-family:var(--fh);font-weight:800;font-size:2.05em;letter-spacing:-.03em;line-height:1;color:#8FDDA0;max-width:11ch}
.bk--ed .bk-q{width:7.6em;height:7.6em}
.bk--ed .bk-st{font-size:1.1em}
.series{margin-top:48px}
.ser-g{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:16px}
.ser-ed{display:flex;flex-direction:column;align-items:flex-start;gap:6px;height:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);overflow:hidden;padding-bottom:20px}
.ser-art{display:block;align-self:stretch;background:var(--stage);border-bottom:1px solid var(--stageLine);padding:14px 0 4px;margin-bottom:12px}
.ser-art .bk3{--bk:5.4px}
.ser-ed b{padding:0 20px;font-family:var(--fh);font-weight:800;font-size:18px;letter-spacing:-.015em;line-height:1.2}
.ser-ed>span:last-child{padding:0 20px;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.ser-ed:hover{border-color:var(--line2)}
.ser-ed:hover b{text-decoration:underline;text-underline-offset:4px}
.pg-eds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pg-ed{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);overflow:hidden;scroll-margin-top:90px}
.pg-ed-art{background:var(--stage);border-right:1px solid var(--stageLine);display:flex;align-items:center;padding:12px 0}
.pg-ed-art .bk3{--bk:5.6px}
.pg-ed-t{padding:28px 28px 30px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.pg-ed-t .pg-k{margin:0}
.pg-ed-t h3{font-size:24px;line-height:1.12}
.pg-ed-t p:not(.pg-k){font-size:15.5px;line-height:1.55;color:var(--ink2)}
.pg-ed-t p b{color:var(--ink)}
.pg-ed-t .tl{margin-top:auto}
.bkf--ed{margin-top:0}
@media (max-width:1140px){.ser-g{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-eds{grid-template-columns:1fr}}
@media (max-width:760px){.pg-ed{grid-template-columns:1fr}.pg-ed-art{border-right:0;border-bottom:1px solid var(--stageLine)}.pg-ed-art .bk3{--bk:6.4px}.ser-art .bk3{--bk:3.9px}.ser-ed b{font-size:15.5px;padding:0 14px}.ser-ed>span:last-child{padding:0 14px;font-size:11.5px}}
.ser-art .bk3{--bk:5.6px}
.pg-ed-art .bk3{--bk:6.2px}
@media (max-width:760px){.ser-art .bk3{--bk:4px}.pg-ed-art .bk3{--bk:6.4px}}
.bk-t{white-space:nowrap}

/* ---------- 10. Round 5 (2026-10-15): books, reports, menus, blog cards, booking calendar ---------- */
/* Profiles without a URL yet: same look as the rest, the link just goes nowhere */
.follow a[data-pending]{cursor:default}

/* Header: Marketing Impact OS menu = the OS page + the four books */
.mega-os{grid-template-columns:minmax(0,1fr) minmax(0,2.2fr)}
.mega-co{grid-template-columns:minmax(0,1.05fr) minmax(0,1.6fr) minmax(0,1fr)}
.mega-co .mg-k2{margin-top:30px}
.mega-co .follow{flex-direction:row;flex-wrap:wrap;gap:0 28px}
.mega-co .mg-feat{align-self:start}
.mg-l2{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px}
.mg-books{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 28px}
.mg-bk{display:flex;align-items:center;gap:16px;padding:10px 12px;margin:0 -12px;border-radius:10px;transition:background-color .12s}
.mg-bk:hover{background:var(--navHover)}
.mg-bk .ebk3{width:52px;flex:none}
.mg-bk b{display:block;font-weight:700;font-size:16px;color:var(--ink)}
.mg-bk span>span{display:block;font-size:14px;line-height:1.4;color:var(--ink2);margin-top:2px}
/* Header: Resources in four labeled groups */
.mega-res{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1.1fr);gap:0}
.mega-res .mg-k{white-space:nowrap}
.mega-res .mg-grp{padding:0 32px;border-left:1px solid var(--line)}
.mega-res .mg-grp:first-child{padding-left:0;border-left:0}
.mega-res .mg-grp:last-child{padding-right:0}
.mg-sub{font-size:13.5px;color:var(--ink2);margin:-8px 0 8px}
.mg-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--dot);margin-right:11px;vertical-align:1px;box-shadow:0 0 0 1px var(--line)}

/* ---- The book cover: Edge to Edge placeholder (build_site.book_cover). Sized by its own width. ---- */
.ebk3{position:relative;display:block;width:100%;padding:0 6% 8% 0}
.ebk-in{position:relative;display:block;aspect-ratio:2/3;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
a:hover .ebk-in{transform:translateY(-4px)}
.ebk-pg{position:absolute;inset:1.4% -2.2% 1.4% 2%;border-radius:2px 5px 5px 2px;background:repeating-linear-gradient(90deg,#EFEADC 0 1px,#D8D2C1 1px 2px);box-shadow:0 18px 30px -16px var(--bkShadow)}
.ebk-sh{position:absolute;left:6%;right:0;bottom:2%;height:9%;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,var(--bkShadow),transparent 72%);filter:blur(6px)}
.ebk{position:absolute;inset:0;display:block;overflow:hidden;border-radius:2px 5px 5px 2px;container-type:inline-size;color:#F3EEE2;
  background:radial-gradient(130% 90% at 72% 18%,var(--bgHi) 0,var(--bg) 52%,var(--bgLo) 100%);box-shadow:0 1px 0 rgba(255,255,255,.06) inset}
.ebk::before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.3) 0,rgba(255,255,255,.14) 1.6%,rgba(0,0,0,.08) 3.4%,transparent 7%,transparent 62%,rgba(255,255,255,.06) 82%,rgba(0,0,0,.1) 100%)}
/* woven cloth, from the designer's board */
.ebk::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(0,0,0,.1) 0 1px,transparent 1px 3px),
  url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .07 0'/></filter><rect width='180' height='180' filter='url(%23n)'/></svg>")}
.ebk-c{position:relative;z-index:1;display:flex;flex-direction:column;height:100%;padding:6.67cqw 4.24cqw}
.ebk .fo{background:var(--foil);-webkit-background-clip:text;background-clip:text;color:transparent}
.ebk-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ebk-top{display:flex;justify-content:space-between;align-items:flex-start;gap:4.2cqw;padding:0 3cqw}
.ebk-proof{font:italic 500 3.79cqw/1.42 var(--fb);color:var(--acSoft);padding-top:.9cqw}
.ebk-seal{width:18.2cqw;height:18.2cqw;flex:none;color:var(--ac)}
.ebk-l1{display:block;font:800 10.77cqw/1 var(--fh);letter-spacing:.02em;white-space:nowrap;margin:6.67cqw 3cqw 0}
.ebk-l2{display:block;font:800 27.7cqw/.86 var(--fh);letter-spacing:-.045em;white-space:nowrap;margin-top:1.8cqw;align-self:flex-start;padding-right:.08em}
.ebk-row{display:flex;align-items:center;gap:4.2cqw}
.ebk-os{font:800 27.7cqw/.86 var(--fh);letter-spacing:-.045em;padding-right:.06em}
.ebk-for{font:800 7.58cqw/1 var(--fh);text-transform:uppercase;letter-spacing:.01em;color:#F3EEE2;padding-top:1.2cqw}
.ebk-for.two{font-size:6.36cqw}
.ebk-for small{display:block;font-size:3.03cqw;letter-spacing:.32em;color:var(--ac);margin-bottom:1.5cqw}
.ebk-rule{display:block;width:13.3cqw;height:.6cqw;background:var(--ac);opacity:.9;margin:6cqw 3cqw 0}
.ebk-sub{display:block;font:500 4.24cqw/1.4 var(--fb);margin:3.9cqw 3cqw 0;max-width:85cqw;color:#F3EEE2}
.ebk-by{display:block;margin:auto 3cqw 0;font:800 5.15cqw/1 var(--fh);letter-spacing:.2em;align-self:flex-start}
.ebk--mini .ebk-c{padding:9cqw 6cqw 8cqw}
.ebk--mini .ebk-l2{font-size:25cqw;margin-top:6cqw}
.ebk--mini .ebk-os{font-size:25cqw}
.ebk--mini .ebk-by{font-size:7cqw;letter-spacing:.06em;margin:auto 0 0;white-space:nowrap}
.ebk--mini .ebk-in{transform:none}
.ebk--mini{padding:0}
.ebk--mini .ebk-sh,.ebk--mini .ebk-pg{display:none}
.ebk--mini .ebk{box-shadow:0 6px 14px -8px var(--shadow)}

/* ---- The report cover: The Quarterly placeholder (build_site.report_cover). US Letter. ---- */
.qr3{position:relative;display:block;width:100%;padding:0 6% 8% 0}
.qr-in{position:relative;display:block;aspect-ratio:1200/1553;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
a:hover .qr-in{transform:translateY(-4px)}
.qr-pg{position:absolute;inset:1.2% -2% 1.2% 1.6%;border-radius:2px 5px 5px 2px;background:repeating-linear-gradient(90deg,#F7F4EC 0 1px,#DCD6C6 1px 2px);box-shadow:0 18px 30px -16px var(--bkShadow)}
.qr-sh{position:absolute;left:6%;right:0;bottom:2%;height:9%;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,var(--bkShadow),transparent 72%);filter:blur(6px)}
.qr{position:absolute;inset:0;display:flex;flex-direction:column;overflow:hidden;border-radius:2px 5px 5px 2px;container-type:inline-size;background:var(--ink);color:#F3EEE2;padding:7.65% 8.2% 6.5%}
.qr::before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.28) 0,rgba(255,255,255,.12) 1.4%,transparent 6%),linear-gradient(125deg,rgba(255,255,255,.07) 0%,transparent 40%)}
.qr::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .055 0'/></filter><rect width='160' height='160' filter='url(%23n)'/></svg>")}
.qr-art{position:absolute;right:-27cqw;top:36.5cqw;width:97cqw;height:auto}
.qr-fade{position:absolute;left:0;right:0;bottom:0;height:47.7%;background:linear-gradient(color-mix(in srgb,var(--ink) 0%,transparent),var(--ink) 52%)}
.qr-m,.qr-b{position:relative;z-index:1;display:block}
.qr-y{display:block;font:700 3.09cqw/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--small)}
.qr-n{display:block;font:800 10.6cqw/.92 var(--fh);letter-spacing:-.025em;margin-top:2.06cqw}
.qr-i{display:block;font:700 5cqw/1.1 var(--fh);margin-top:2.65cqw;color:var(--ac)}
.qr-b{margin-top:auto}
.qr-tag{display:block;font:500 4.41cqw/1.32 var(--fb);max-width:73.5cqw;margin-bottom:4.7cqw}
.qr-f{display:flex;justify-content:space-between;align-items:flex-end;padding-top:3.2cqw;border-top:1px solid var(--line);font:500 2.65cqw/1 var(--fb);letter-spacing:.14em;text-transform:uppercase}
.qr-f span{opacity:.65}
.qr-f b{font:700 3.82cqw/1 var(--fb);letter-spacing:0;text-transform:none}

/* final cover art (round 6): the flat image inside the 3D frame; the art carries its own cloth and paper texture */
.ebk--art .ebk::after,.qr--art .qr::after{display:none}
.ebk--art .ebk{background:var(--bg)}
.qr--art .qr{padding:0;background:var(--ink)}
.qr-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ebk--art .ebk::before{background:linear-gradient(90deg,rgba(0,0,0,.26) 0,rgba(255,255,255,.12) 1.4%,rgba(0,0,0,.06) 3%,transparent 6%,transparent 70%,rgba(255,255,255,.04) 86%,rgba(0,0,0,.08) 100%)}
.ebk--mini.ebk--art .ebk::before{display:none}
:root[data-theme=light] .mg-dot{background:var(--dotL,var(--dot))}
.bkc .bkc-t{margin-top:14px}

/* ---- Book and report pages: each wears its book's colors (main.ind-page, tokens from build_site.accent_vars) ---- */
.ind-page{--ac:var(--indAc);--acFill:var(--indAc);--acInk:var(--indBg);--btn:var(--indAc);--btnInk:var(--indBg);--focus:var(--indAc);
  --pgGlow:radial-gradient(55% 70% at 18% 0%,color-mix(in srgb,var(--indAc) 13%,transparent),transparent 70%)}
:root[data-theme=light] .ind-page{--ac:var(--indAcL);--acFill:var(--indAcL);--acInk:#FFFFFF;--btn:var(--indBg);--btnInk:#F3F4EE;--focus:var(--indAcL);
  --pgGlow:radial-gradient(55% 70% at 18% 0%,var(--indTint),transparent 70%)}
.ind-page{background:var(--bg);--bg:color-mix(in srgb,var(--indBg) 74%,#000);--bg2:color-mix(in srgb,var(--indBg) 56%,#000);
  --surface:rgba(241,238,229,.05);--surface2:color-mix(in srgb,var(--indBg) 82%,#000);--stage:radial-gradient(70% 70% at 50% 40%,color-mix(in srgb,var(--indAc) 12%,transparent),transparent 70%),color-mix(in srgb,var(--indBg) 64%,#000)}
:root[data-theme=light] .ind-page{--bg:#F3F4EE;--bg2:var(--indTint);--surface:#FFFFFF;--surface2:#FFFFFF;--stage:radial-gradient(70% 70% at 50% 40%,var(--indTint),transparent 72%),#FFFFFF}
.ind-page .final{--finBg:var(--indBg);--finInk:#F1EEE5;--finInk2:color-mix(in srgb,#F1EEE5 78%,var(--indBg));--finAc:var(--indAc);--finBtn:var(--indAc);--finBtnInk:var(--indBg);--finLine:rgba(241,238,229,.32)}
.ind-page .final .fin2{background:transparent;color:#F1EEE5;border-color:rgba(241,238,229,.5)}
/* the book hero is the book's own material, in both themes */
.ind-hero:not(.ind-hero--report){--ink:#F1EEE5;--ink2:color-mix(in srgb,#F1EEE5 80%,var(--indBg));--ink3:color-mix(in srgb,#F1EEE5 68%,var(--indBg));
  --ac:var(--indAc);--btn:var(--indAc);--btnInk:var(--indBg);--focus:var(--indAc);--line:rgba(241,238,229,.16);--line2:rgba(241,238,229,.34);--line3:rgba(241,238,229,.45);
  background:radial-gradient(70% 90% at 78% 30%,var(--indHi) 0,transparent 70%),linear-gradient(180deg,var(--indBg),var(--indLo));color:#F1EEE5}
.ind-hero .pg-crumbs a,.ind-hero .pg-crumbs span{color:var(--ink2)}
.ind-hero h1{max-width:13ch}
.ind-hero h1 .pg-ac{color:var(--ac)}
.ind-art{position:absolute;right:var(--gut);top:56px;width:360px}
.ind-art--report{width:350px}
@media (min-width:1141px){
  .pg-hero--aside:has(.ind-art) h1,.pg-hero--aside:has(.ind-art) .pg-hero-sub,.pg-hero--aside:has(.ind-art) .ind-status,.pg-hero--aside:has(.ind-art) .rpf{max-width:calc(100% - 430px)}
  .pg-hero--aside:has(.ind-art) h1 .pg-ac{max-width:none}
  .pg-hero--aside:has(.ind-art) .wrap{min-height:560px}}
.ind-status{display:flex;align-items:center;gap:10px;margin-top:22px;font-size:15.5px;font-weight:600;color:var(--ink2)}
.ind-dot{width:9px;height:9px;border-radius:50%;background:var(--ac);box-shadow:0 0 0 4px color-mix(in srgb,var(--ac) 22%,transparent);flex:none}
.ind-parts{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:8px}
.ind-parts li{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:28px 28px 30px;border-top:3px solid var(--ac)}
.ind-n{display:block;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ac);margin-bottom:12px}
.ind-parts h3{font-size:24px;letter-spacing:-.02em;line-height:1.12;margin-bottom:10px}
.ind-parts p{font-size:16px;line-height:1.55;color:var(--ink2)}
.ind-author p{font-size:16.5px;line-height:1.6;color:var(--ink2);margin-bottom:18px}
.ind-author .tl{margin:6px 24px 6px 0}
/* the workbook block */
.wb-g{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:64px;align-items:start}
.wb-l{position:sticky;top:110px}
.wb-art{background:var(--stage);border:1px solid var(--line);border-radius:calc(var(--rad) + 6px);padding:40px 0 34px;display:flex;justify-content:center}
.wbk{position:relative;width:62%;aspect-ratio:8.5/11;transform:rotate(-2deg)}
.wbk::before{content:"";position:absolute;inset:0;border-radius:2px 4px 4px 2px;background:#E9E4D6;transform:translate(5px,4px);
  box-shadow:0 30px 50px -28px var(--bkShadow)}
.wbk-img{position:relative;display:block;width:100%;height:100%;border-radius:2px 4px 4px 2px;box-shadow:0 1px 2px rgba(0,0,0,.18)}
.wb-facts{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.wb-facts li{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:16px 18px}
.wb-facts b{display:block;font:800 34px/1 var(--fh);letter-spacing:-.03em;color:var(--ink)}
.wb-facts span{font-size:14px;color:var(--ink2)}
.wb-line{font-size:17px;line-height:1.6;color:var(--ink);margin:-6px 0 22px;max-width:62ch}
.wb-areas{list-style:none;border-top:1px solid var(--line)}
.wb-areas li{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;padding:16px 0;border-bottom:1px solid var(--line)}
.wb-areas--short{display:flex;flex-wrap:wrap;gap:8px;border:0}
.wb-areas--short li{display:block;padding:9px 16px;border:1.5px solid var(--line2);border-radius:var(--pill)}
.wb-a b{display:block;font-family:var(--fh);font-size:19px;letter-spacing:-.01em}
.wb-a span{font-size:13.5px;color:var(--ac);font-weight:700}
.wb-areas p{font-size:15.5px;line-height:1.55;color:var(--ink2)}
.wb-k{margin:30px 0 12px}
.wb-parts{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.wb-parts li{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:baseline;align-content:start;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.wb-parts li>span{grid-row:span 2;font:800 18px/1 var(--fh);color:var(--ac)}
.wb-parts b{font-size:15.5px}
.wb-parts small{font-size:13.5px;color:var(--ink2);line-height:1.4}
/* the report form: the only form on the site */
.rpf{margin-top:34px;max-width:620px}
.rpf-row{display:flex;gap:10px;flex-wrap:wrap}
.rpf input[type=email]{flex:1 1 260px;min-width:0;height:60px;padding:0 22px;border-radius:var(--pill);border:1.5px solid var(--line2);background:var(--field);color:var(--ink);font:500 17px var(--fb)}
.rpf input[type=email]::placeholder{color:var(--ink3);opacity:1}
.rpf input[type=email]:focus{outline:none;border-color:var(--ac);box-shadow:0 0 0 4px color-mix(in srgb,var(--ac) 22%,transparent)}
.rpf input[aria-invalid=true]{border-color:var(--bad)}
.rpf .btn{height:60px;padding:0 28px}
.rpf-note{font-size:14px;color:var(--ink2);margin-top:12px}
.rpf-note a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.rpf-err{font-size:14.5px;font-weight:600;color:var(--bad);margin-top:8px}
.rpf-ok{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:18px 22px;border-radius:var(--rad);background:var(--surface);border:1.5px solid var(--ac);font-size:17px;color:var(--ink)}
.rpf-ok b{color:var(--ac)}
.rpf.done .rpf-row,.rpf.done .rpf-note{display:none}

/* ---- Homepage and OS page: the four books ---- */
.bks{margin-top:56px;padding-top:48px;border-top:1px solid var(--line)}
.bks-h{max-width:640px;margin-bottom:28px}
.bks-h h3{font-size:36px;letter-spacing:-.03em;line-height:1.05;margin-top:12px}
.bks-h p{font-size:17px;color:var(--ink2);margin-top:12px;line-height:1.55}
.bkg{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.bkc{display:flex;flex-direction:column;height:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:28px 24px 24px;transition:border-color .15s}
.bkc:hover{border-color:var(--line3)}
.bkc .ebk3{width:78%;margin:0 auto 6px}
.bkc-t{display:flex;flex-direction:column;gap:6px;margin-top:auto}
.bkc-k{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3)}
.bkc b{font-family:var(--fh);font-size:20px;letter-spacing:-.015em;line-height:1.15}
.bkc-wb{font-size:14.5px;color:var(--ink2)}
/* industry hubs: the book feature */
.bkf--ed .bkf-art{display:flex;justify-content:center;align-items:center;padding:40px 0 34px}
.bkf--ed .bkf-art .ebk3{width:min(270px,62%)}
.bkf--ed h3 a:hover{text-decoration:underline;text-underline-offset:5px}
.bkf--ed .tl+.tl{margin-top:-4px}

/* ---- Marketing Insights: blog cards ---- */
.posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}
.post{display:flex;flex-direction:column;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:28px 26px 26px;transition:border-color .15s,transform .15s}
.post:hover{border-color:var(--line3);transform:translateY(-2px)}
.post-k{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ac)}
.post b{font-family:var(--fh);font-size:23px;letter-spacing:-.02em;line-height:1.12;color:var(--ink)}
.post-t{font-size:15.5px;line-height:1.55;color:var(--ink2)}
.post-by{margin-top:auto;padding-top:12px;font-size:14px;font-weight:600;color:var(--ink)}

/* ---- Contact: the stand-in booking calendar (pages_custom.booking_card). An iframe of BOOKING_URL replaces it. ---- */
.pg-cal{position:absolute;right:var(--gut);top:84px;width:600px;background:var(--surface2);border:1px solid var(--line2);border-radius:calc(var(--rad) + 6px);
  box-shadow:0 40px 80px -48px var(--popShadow);scroll-margin-top:110px;overflow:hidden}
:root[data-theme=light] .pg-cal{background:#FFFFFF}
.pg-cal--live{height:720px}
.pg-cal--live iframe{width:100%;height:100%;border:0}
.cal-h{display:flex;gap:16px;align-items:center;padding:22px 26px;border-bottom:1px solid var(--line)}
.cal-av{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--acFill);color:var(--acInk);font:800 17px var(--fh)}
.cal-who{font-size:14px;color:var(--ink2);font-weight:600}
.cal-t{font-size:26px;letter-spacing:-.02em;margin:2px 0 6px}
.cal-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;color:var(--ink2)}
.cal-meta span{display:inline-flex;align-items:center;gap:6px}
.cal-meta svg,.cal-tz svg{width:16px;height:16px;flex:none}
.cal-b{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}
.cal-m{padding:20px 22px 22px 26px}
.cal-mh{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.cal-mh b{font-family:var(--fh);font-size:18px;letter-spacing:-.01em}
.cal-nav{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--ink);border:1px solid var(--line2)}
.cal-nav svg{width:16px;height:16px}
.cal-nav:disabled{opacity:.35;cursor:default}
.cal-nav:not(:disabled):hover{border-color:var(--ink)}
.cal-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.cal-w{font-size:12px;font-weight:700;letter-spacing:.06em;text-align:center;color:var(--ink3);padding:4px 0 6px}
.cal-d{aspect-ratio:1;border-radius:50%;font:600 15px var(--fb);color:var(--ink);display:grid;place-items:center;
  background:color-mix(in srgb,var(--ac) 14%,transparent)}
.cal-d:not(:disabled):hover{box-shadow:inset 0 0 0 1.5px var(--ac)}
.cal-d:disabled{background:none;color:var(--ink3);font-weight:500;cursor:default}
.cal-d[aria-pressed=true]{background:var(--acFill);color:var(--acInk)}
.cal-d.today:disabled{text-decoration:underline;text-underline-offset:4px}
.cal-s{padding:20px 26px 22px 18px;border-left:1px solid var(--line);display:flex;flex-direction:column;min-height:0}
.cal-day{font-weight:700;font-size:15.5px;margin:6px 0 14px;min-height:22px}
.cal-slots{display:flex;flex-direction:column;gap:8px;max-height:292px;overflow:auto;padding-right:4px;scrollbar-width:thin}
.cal-slot{display:flex;align-items:center;justify-content:center;height:44px;border-radius:10px;border:1.5px solid color-mix(in srgb,var(--ac) 55%,var(--line2));color:var(--ink);font:700 15px var(--fb);flex:none}
.cal-slot:hover{border-color:var(--ac)}
.cal-slot[aria-pressed=true]{background:var(--acFill);border-color:var(--acFill);color:var(--acInk)}
.cal-empty{font-size:14.5px;color:var(--ink2);line-height:1.5}
.cal-f{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 26px;border-top:1px solid var(--line)}
.cal-tz{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink2);min-width:0}
.cal-tz span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cal-f .btn:disabled{opacity:.45;cursor:default;transform:none;box-shadow:none}
.cal-note{padding:0 26px 20px;font-size:15px;line-height:1.5;color:var(--ink)}
.cal-note a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media (min-width:1141px){
  .pg-hero--aside:has(.pg-cal) h1,.pg-hero--aside:has(.pg-cal) .pg-hero-sub{max-width:calc(100% - 650px)}
  .pg-hero--aside:has(.pg-cal) h1 .pg-ac{max-width:none}
  .pg-hero--aside:has(.pg-cal) .wrap{min-height:640px}}

/* ---- Round 5 responsive ---- */
@media (max-width:1280px){
  .mega-res .mg-grp{padding:0 22px}
  .bkg{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ind-parts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:1140px){
  .ind-art,.pg-cal{position:static;margin-top:36px}
  .ind-art{width:min(340px,80%)}
  .pg-cal{width:auto;max-width:620px}
  .wb-g{grid-template-columns:1fr;gap:36px}
  .wb-l{position:static;max-width:520px}}
@media (max-width:760px){
  .ind-parts{grid-template-columns:1fr}
  .ind-parts li{padding:24px 22px}
  .wb-areas li{grid-template-columns:1fr;gap:6px}
  .wb-parts{grid-template-columns:1fr 1fr}
  .bkg{gap:12px}
  .bkc{padding:20px 16px 18px}
  .bkc b{font-size:17px}
  .bks-h h3{font-size:28px}
  .cal-b{grid-template-columns:1fr}
  .cal-s{border-left:0;border-top:1px solid var(--line);padding:18px 20px 20px}
  .cal-m{padding:18px 18px 20px}
  .cal-h,.cal-f{padding-left:20px;padding-right:20px}
  .cal-slots{flex-direction:row;flex-wrap:wrap;max-height:none}
  .cal-slot{flex:1 1 calc(33.33% - 8px);min-width:92px}
  .cal-note{padding:0 20px 18px}
  .rpf .btn{width:100%}
  .ind-art{width:min(300px,78%)}}
@media (max-width:420px){
  .bkg{grid-template-columns:1fr 1fr}
  .wb-facts b{font-size:28px}}
.ind-hero h1 .pg-ac{font-size:.5em;line-height:1.08;max-width:24ch;text-wrap:balance}
.ind-hero--report h1{font-size:68px}
.ind-hero--report h1 .pg-ac{font-size:.56em}
@media (max-width:760px){.ind-hero--report h1{font-size:44px}.ind-hero h1 .pg-ac{font-size:.56em}}
.rpf [hidden],.pg-cal [hidden]{display:none!important}
@media (max-width:1140px){
  .ind-hero .wrap{display:flex;flex-direction:column;align-items:flex-start}
  .ind-hero .pg-crumbs{order:-2}
  .ind-hero .ind-art{order:-1;margin:0 0 28px;width:min(260px,62%)}
  .ind-hero .pg-hero-sub,.ind-hero .rpf{align-self:stretch}}
@media (max-width:760px){.ind-hero .ind-art{width:min(200px,56%);margin-bottom:22px}}
.follow--card li:nth-last-child(-n+2){grid-column:1/-1}

/* The mark's ring is the Marketing Impact OS loop: it turns clockwise, forward only (Zach, 2026-10-15).
   Big marks turn slowly all the time; the header logo turns once on load and again on hover, so the nav stays calm. */
@keyframes cmoz-loop{to{transform:rotate(360deg)}}
svg .rg{transform-box:view-box;transform-origin:24px 24px}
.pg-hero-q .rg,.final .bgq .rg,.pg-author-q .rg,.ios-q .rg,.pg-loop-art .rg,.f3-ph .rg{animation:cmoz-loop 24s linear infinite}
.pg-author-q .rg,.ios-q .rg,.f3-ph .rg{animation-duration:12s}
.logo .rg{animation:cmoz-loop 1.4s cubic-bezier(.6,0,.2,1) .3s 1}
.logo:hover .rg{animation:cmoz-loop 1.4s cubic-bezier(.6,0,.2,1) 1}
@media (prefers-reduced-motion:reduce){svg .rg{animation:none!important}}

/* ---------- Marketing Insights: article page, cards, hub (2026-10-15) ----------
   Article order: breadcrumb, H1, byline, key takeaways, the article. One CTA at the end, author, FAQ, related.
   Reading column about 68ch; figures are light cards (media/insights) that read on both themes. */
.art-head{background:var(--pgGlow);padding:44px 0 0}
.art-head .wrap,.art-sec .wrap{max-width:calc(780px + 2 * var(--gut))}
.art-head .pg-crumbs{margin-bottom:28px}
.art-head h1{font-size:56px;line-height:1.04;letter-spacing:-.035em;max-width:24ch;text-wrap:balance}
.art-head .pg-byline{margin-top:22px}
.art-sec.pg-sec{padding:40px 0 104px}
.art{max-width:780px}
.art-tk{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--ac);border-radius:var(--rad);padding:24px 28px}
.art-tk-k,.art-week-k,.art-cta-k{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ac)}
.art-tk ul{list-style:none;margin-top:8px}
.art-tk li{position:relative;padding-left:24px;font-size:17px;line-height:1.55;color:var(--ink);margin-top:8px}
.art-tk li::before{content:"";position:absolute;left:2px;top:.6em;width:8px;height:8px;border-radius:2px 2px 2px 8px;background:var(--ac)}
.art-body{margin-top:44px}
.art-body>p{font-size:19.5px;line-height:1.75;color:var(--ink2);max-width:68ch;margin-top:1.2em}
.art-body>p:first-child{margin-top:0;color:var(--ink);font-size:21px}
.art-body strong{color:var(--ink);font-weight:700}
.art-body a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--ac);text-decoration-thickness:2px;text-underline-offset:4px}
.art-body a:hover{color:var(--ac)}
.art-body h2{font-size:34px;line-height:1.12;letter-spacing:-.025em;margin-top:2.1em;max-width:26ch;text-wrap:balance}
.art-body h2+p{margin-top:.8em}
.art-steps{list-style:none;margin-top:1.4em;max-width:68ch;display:grid;gap:18px}
.art-steps li{counter-increment:st;position:relative;padding-left:56px;font-size:19px;line-height:1.7;color:var(--ink2)}
.art-steps li::before{content:counter(st);position:absolute;left:0;top:-1px;width:38px;height:38px;border-radius:50%;background:var(--chip);color:var(--ac);
  font-family:var(--fh);font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center}
.art-steps li strong{display:block;font-family:var(--fh);font-weight:800;font-size:21px;letter-spacing:-.015em;color:var(--ink);margin-bottom:2px}
.art-fig{margin:2.4em 0}
.art-fig img{display:block;width:100%;height:auto;border-radius:var(--rad);border:1px solid var(--line);background:#F3F4EE}
.art-fig figcaption{font-size:15px;line-height:1.5;color:var(--ink3);margin-top:12px;max-width:68ch}
.art-fig figcaption a{color:var(--ink2)}
.art-week{margin-top:2.6em;background:var(--surface);border:1px solid var(--line2);border-radius:var(--rad);padding:26px 30px}
.art-week p:not(.art-week-k){font-size:19px;line-height:1.7;color:var(--ink);margin-top:10px}
.art-cta{margin-top:56px;background:var(--surface2);border:1px solid var(--line);border-radius:calc(var(--rad) + 4px);padding:32px 34px}
.art-cta p:not(.art-cta-k){font-size:18px;line-height:1.6;color:var(--ink2);margin-top:10px;max-width:56ch}
.art-cta-b{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-top:22px}
.art .pg-author{margin-top:28px}
/* cards with the article's number card */
.post--img{padding:0;overflow:hidden;gap:0}
.post-img{display:block;width:100%;height:auto;aspect-ratio:1200/630;border-bottom:1px solid var(--line);background:#0F2620}
.post-in{display:flex;flex-direction:column;gap:10px;padding:22px 24px 26px;flex:1}
.post--img b{font-size:22px}
/* hub */
.ins-hub.pg-sec{padding-top:24px}
.ins-jump{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:8px}
.ins-jump a{border:1px solid var(--line2);border-radius:999px;padding:9px 16px;font-size:15px;font-weight:600;color:var(--ink)}
.ins-jump a:hover{border-color:var(--ac);color:var(--ac)}
.ins-grp{margin-top:64px;scroll-margin-top:100px}
.ins-grp-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px 24px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:24px}
.ins-grp-h h2{font-size:36px;letter-spacing:-.03em}
.posts--hub{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.posts--hub .post--img b{font-size:26px}
.pg--page:has(.ins-hub) .pg-hero{padding-bottom:40px}
@media (max-width:860px){
  .art-head h1{font-size:44px}
}
@media (max-width:600px){
  .art-head{padding-top:24px}
  .art-head h1{font-size:34px;line-height:1.08}
  .art-sec.pg-sec{padding:28px 0 72px}
  .art-tk{padding:20px 20px}
  .art-body{margin-top:32px}
  .art-body>p{font-size:17.5px;line-height:1.72}
  .art-body>p:first-child{font-size:19px}
  .art-body h2{font-size:27px}
  .art-steps li{padding-left:46px;font-size:17.5px}
  .art-steps li::before{width:32px;height:32px;font-size:16px}
  .art-steps li strong{font-size:19px}
  .art-week,.art-cta{padding:22px 20px}
  .art-cta-b{flex-direction:column;align-items:stretch}
  .art-cta .btn{white-space:normal;text-align:center;justify-content:center}
  .art-cta .tl{align-self:flex-start}
  .art-week p:not(.art-week-k){font-size:17.5px}
  .art-fig{margin:2em 0}
  .art-fig img{border-radius:12px}
  .posts--hub{grid-template-columns:1fr}
  .ins-grp{margin-top:48px}
  .ins-grp-h h2{font-size:28px}
}

/* ════════════════════════════════════════════════════════════════════════════
   Marketing Impact OS views (2026-10-15, tools/impact_views.py)
   One data story per industry, four views: attribution, ranked plan, the work, 90 days later + review.
   .iv = the card frame (homepage: tabbed; step rows: .iv--one). .isteps = one row per step on niche/OS pages.
   ════════════════════════════════════════════════════════════════════════════ */
.iv{position:relative;margin:0;min-width:0;background:var(--osBg);border:1px solid var(--line);border-radius:calc(var(--rad) + 8px);padding:18px 20px 20px;box-shadow:0 30px 60px -44px var(--shadow);font-variant-numeric:tabular-nums;color:var(--ink)}
.iv::before{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--osGlow);pointer-events:none}
.iv>*{position:relative}
.iv-h{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--line)}
.iv-q svg{display:block;width:22px;height:22px;color:var(--ink)}
.iv-q .q4{fill:var(--ac)}
.iv-h>b{font-family:var(--fh);font-weight:800;font-size:16.5px;letter-spacing:-.015em}
.iv-for{font-size:14px;color:var(--ink2)}
.iv-stp{margin-left:auto;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ac);background:var(--chip);padding:4px 10px;border-radius:999px}
/* tabs */
.iv-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;border-radius:12px;background:var(--track);margin-bottom:16px}
.iv-t{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;gap:1px;border:0;background:transparent;color:var(--ink2);font:inherit;padding:8px 4px 10px;border-radius:9px;cursor:pointer;min-height:44px;justify-content:center}
.iv-t b{font-size:14px;font-weight:700;line-height:1.2}
.iv-t small{font-size:11.5px;font-weight:600;color:var(--ink3);line-height:1.2;white-space:nowrap}
.iv-t:hover{color:var(--ink)}
.iv-t.on{background:var(--surface2);color:var(--ink);box-shadow:0 1px 0 var(--line2),0 6px 14px -10px var(--shadow)}
.iv-t.on small{color:var(--ac)}
.iv-t:focus-visible{outline:2px solid var(--focus);outline-offset:1px}
.iv-pr{position:absolute;left:10px;right:10px;bottom:3px;height:2px;border-radius:2px;transform:scaleX(0);transform-origin:left;background:var(--ac)}
.iv-t.on .iv-pr{animation:ivp 6s linear forwards}
.iv-hold .iv-pr,.iv-off .iv-pr{animation-play-state:paused!important}
.iv-man .iv-pr{display:none}
@keyframes ivp{to{transform:scaleX(1)}}
.iv-ps{display:grid}
.iv-ps>.iv-p{grid-area:1/1;min-width:0}
.iv-ps>.iv-p[hidden]{display:block;visibility:hidden}
.iv-ps>.iv-p:not([hidden]){animation:ivf .35s ease}
.iv-p:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:6px}
@keyframes ivf{from{opacity:0;transform:translateY(4px)}}
/* view heading */
.iv-vh{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 12px;margin-bottom:12px}
.iv-vh b{font-family:var(--fh);font-weight:800;font-size:18px;letter-spacing:-.015em}
.iv-vh span{font-size:12.5px;font-weight:600;color:var(--ink3)}
.iv-d{font-size:12px;font-weight:700;white-space:nowrap}
.iv-d.g{color:var(--good)}.iv-d.b{color:var(--bad)}.iv-d.n{color:var(--ink3)}
/* Inspect */
.iv-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:14px}
.iv-k{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:10px 12px}
.iv-k small{font-size:11.5px;font-weight:600;line-height:1.25;color:var(--ink2);min-height:2.5em}
.iv-k b{font-family:var(--fh);font-weight:800;font-size:22px;letter-spacing:-.02em;line-height:1.1;margin:4px 0 2px}
.iv-k.main{background:var(--chip);border-color:var(--line2)}
.iv-tb{width:100%;border-collapse:collapse;font-size:13px;line-height:1.3}
.iv-tb th,.iv-tb td{padding:7px 8px;text-align:right;white-space:nowrap}
.iv-tb th:first-child{text-align:left;padding-left:2px}
.iv-tb td:last-child,.iv-tb th:last-child{padding-right:2px}
.iv-tb thead th{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink3);border-bottom:1px solid var(--line2);padding-top:2px}
.iv-tb tbody th{font-weight:600;color:var(--ink)}
.iv-tb tbody td{color:var(--ink2)}
.iv-tb tbody tr{border-bottom:1px solid var(--line)}
.iv-tb tfoot th,.iv-tb tfoot td{font-weight:700;color:var(--ink)}
.iv-tb .c span{display:inline-block;padding:2px 7px;border-radius:6px;font-weight:700;color:var(--ink)}
.iv-tb tr.best .c span{background:var(--chip);color:var(--good)}
.iv-tb tr.worst .c span{background:color-mix(in srgb,var(--bad) 15%,transparent);color:var(--bad)}
.iv-rule{margin-top:10px;font-size:12px;font-weight:700;color:var(--ac)}
/* Ideate */
.iv-plan{list-style:none;display:flex;flex-direction:column;gap:7px}
.iv-plan li{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:10px 12px}
.iv-plan li:first-child{background:var(--chip);border-color:var(--line2)}
.iv-n{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--acFill);color:var(--acInk);font-family:var(--fh);font-weight:800;font-size:13px}
.iv-m{min-width:0}
.iv-m b{display:block;font-size:14px;font-weight:700;line-height:1.3}
.iv-m small{display:block;font-size:12.5px;line-height:1.35;color:var(--ink2);margin-top:2px}
.iv-g{text-align:right}
.iv-g b{display:block;font-family:var(--fh);font-weight:800;font-size:15.5px;letter-spacing:-.01em;color:var(--good);white-space:nowrap}
.iv-g small{display:block;font-size:11.5px;font-weight:600;color:var(--ink3);white-space:nowrap;margin-top:1px}
.iv-sum{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:10px;padding:10px 12px 0;border-top:1px dashed var(--line2);font-size:13px;font-weight:600;color:var(--ink2)}
.iv-sum b{font-family:var(--fh);font-weight:800;font-size:16px;color:var(--good)}
/* Implement */
.iv-bar{height:6px;border-radius:3px;background:var(--track);overflow:hidden;margin-bottom:14px}
.iv-bar i{display:block;height:100%;border-radius:3px;background:var(--acFill)}
.iv-wh,.iv-work li{display:grid;grid-template-columns:minmax(0,1fr) 116px 58px 94px;gap:10px;align-items:center}
.iv-wh{padding:0 12px 6px;font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink3)}
.iv-work{list-style:none;display:flex;flex-direction:column;gap:7px}
.iv-work li{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:11px 12px}
.iv-work .iv-m small{display:none}
.iv-o,.iv-w{font-size:13px;color:var(--ink2)}
.iv-st{justify-self:start;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap}
.iv-st.done{background:var(--chip);color:var(--good)}
.iv-st.prog{box-shadow:inset 0 0 0 1.5px var(--ac);color:var(--ac)}
.iv-st.next{background:var(--track);color:var(--ink2)}
/* Iterate */
.iv-ba{list-style:none}
.iv-ba li{display:grid;grid-template-columns:minmax(0,1fr) auto 16px auto 64px;gap:10px;align-items:baseline;padding:8px 2px;border-bottom:1px solid var(--line)}
.iv-ba li:first-child{padding-top:2px}
.iv-bl{font-size:13.5px;font-weight:600;color:var(--ink2)}
.iv-b0{font-size:14px;color:var(--ink3)}
.iv-ar{font-size:13px;color:var(--ink3);text-align:center}
.iv-b1{font-family:var(--fh);font-weight:800;font-size:19px;letter-spacing:-.015em}
.iv-ba .iv-d{text-align:right}
.iv-ch{margin:12px 0 14px}
.iv-ch small{display:block;font-size:12px;font-weight:600;color:var(--ink2)}
.iv-ch svg{display:block;width:100%;height:50px;margin-top:6px;overflow:visible}
.iv-ch .l{fill:none;stroke:var(--ac);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.iv-ch .g{stroke:var(--line2);stroke-width:1;vector-effect:non-scaling-stroke}
.iv-ch .s{stroke:var(--line3);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}
.iv-ch .af{fill:var(--chip);opacity:.6}
.iv-chx{display:grid;grid-template-columns:1fr 1fr;margin-top:4px}
.iv-chx i{font-style:normal;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink3)}
.iv-chx i+i{padding-left:8px;color:var(--ac)}
.iv-note{display:flex;gap:12px;align-items:flex-start;background:var(--surface2);border:1px solid var(--line2);border-radius:12px;padding:12px 14px;box-shadow:0 14px 30px -24px var(--shadow)}
.iv-av{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--acFill);color:var(--acInk);font-family:var(--fh);font-weight:800;font-size:15px;flex:none}
.iv-note b{display:block;font-size:12.5px;font-weight:700;color:var(--ink2)}
.iv-note p{font-size:14px;line-height:1.5;color:var(--ink);margin-top:2px}
/* step rows: what we do, what you get, how long, beside that step's view */
.isx-pick{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:999px;background:var(--track);margin-bottom:44px}
.isx-pick button{border:0;background:transparent;font:inherit;font-size:14px;font-weight:700;color:var(--ink2);padding:9px 16px;border-radius:999px;cursor:pointer;min-height:40px}
.isx-pick button[aria-selected=true]{background:var(--acFill);color:var(--acInk)}
.isx-pick button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.isx[data-ind=law-firms] .iv[data-for]:not([data-for=law-firms]),.isx[data-ind=home-services] .iv[data-for]:not([data-for=home-services]),
.isx[data-ind=healthcare-practices] .iv[data-for]:not([data-for=healthcare-practices]),.isx[data-ind=dtc-brands] .iv[data-for]:not([data-for=dtc-brands]){display:none}
.isteps{list-style:none;display:flex;flex-direction:column;gap:96px}
.istep{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:center}
.istep.flip{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.istep.flip .istep-c{order:2}
.istep-k{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.istep-when{font-size:13px;font-weight:700;color:var(--ac);background:var(--chip);padding:6px 12px;border-radius:999px}
.istep-c h3{font-size:36px;letter-spacing:-.025em;margin-bottom:14px}
.istep-c>p{font-size:17px;line-height:1.6;color:var(--ink2);max-width:46ch}
.istep-c>p+p{margin-top:12px}
.istep-get{margin-top:22px;border-left:3px solid var(--acFill);padding:2px 0 2px 16px;max-width:46ch}
.istep-get small{display:block;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ac)}
.istep-get p{font-size:16px;font-weight:600;line-height:1.45;color:var(--ink);margin-top:4px}
.istep-v{min-width:0}
.pg-sec .isx{margin-top:8px}
@media (max-width:1280px){
  .iv-wh,.iv-work li{grid-template-columns:minmax(0,1fr) 104px 54px 90px}
}
@media (max-width:1140px){
  .istep,.istep.flip{grid-template-columns:1fr;gap:28px}
  .istep.flip .istep-c{order:0}
  .isteps{gap:72px}
}
@media (max-width:760px){
  .iv{padding:14px 12px 14px;border-radius:18px}
  .iv-h{padding-bottom:12px;margin-bottom:12px}
  .iv-h>b{font-size:15px}.iv-for{font-size:13px}
  .iv-tabs{margin-bottom:14px}
  .iv-t{padding:9px 2px 10px}
  .iv-t b{font-size:13.5px}
  .iv-kpis{grid-template-columns:1fr 1fr}
  .iv-k b{font-size:20px}
  .iv-tb .m{display:none}
  .iv-tb{font-size:13px}
  .iv-plan li{grid-template-columns:26px minmax(0,1fr);row-gap:6px}
  .iv-g{grid-column:2;text-align:left;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px}
  .iv-wh{display:none}
  .iv-work li{grid-template-columns:minmax(0,1fr) auto}
  .iv-work .iv-m small{display:block}
  .iv-o,.iv-w{display:none}
  .iv-ba li{grid-template-columns:auto 14px auto minmax(0,1fr);row-gap:2px}
  .iv-bl{grid-column:1/-1}
  .iv-ch{margin:10px 0 12px}
  .iv-note p{font-size:13.5px}
  .isx-pick{margin-bottom:32px;border-radius:16px}
  .isx-pick button{padding:8px 12px;font-size:13.5px}
  .isteps{gap:60px}
  .istep{gap:22px}
  .istep-c h3{font-size:29px}
  .istep-c>p{font-size:16.5px}
}
@media (max-width:520px){.iv-t small{display:none}}
@media (prefers-reduced-motion:reduce){.iv-pr{display:none}.iv-ps>.iv-p:not([hidden]){animation:none}}
.iv-foot{margin-top:12px;padding:10px 12px;border-radius:11px;border:1px dashed var(--line2);font-size:12.5px;line-height:1.45;color:var(--ink2)}
.iv-foot b{color:var(--ink);font-weight:700;margin-right:4px}
@media (max-width:760px){.iv--one .iv-stp{display:none}}
