  :root {
    --font-sans: 'Geist', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    --font-serif: 'Source Serif 4', ui-serif, Georgia, Cambria, "Times New Roman", serif;
    --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  }
  /* small inline-spacing nudge around bold so "Post it!" reads with breathing room */
  strong{padding:0 .04em}

  /* ==================== TOKENS (light only) ==================== */
  :root{
    --bg:#FFFFFF; --bg-2:#F4F3F0; --bg-3:#EBE8DF;
    --ink:#0A0A0A; --ink-soft:#5E5C58; --ink-faint:#696560;
  }
  /* CLS reservations: JS-populated regions hold their height before mount */
  .pm-rail{min-height:108px}
  #teamGrid{min-height:260px}
  /* iPad / phone: prevent sticky CTA bar from hiding the footer */
  @media(max-width:768px){ body{padding-bottom:140px} }
  .skip-link{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;z-index:1000}
  .skip-link:focus{position:fixed;left:16px;top:16px;width:auto;height:auto;background:var(--ink);color:#fff;padding:10px 16px;font-family:var(--font-sans);font-size:13px;font-weight:600;border-radius:6px;text-decoration:none;outline:3px solid var(--accent);outline-offset:2px}
  :root{
    --rule:#E3E1DA; --rule-hi:#D2CFC4;
    --accent:#047857; --accent-2:#FF5A1F; --accent-3:#3F6B3F;
    --warn:#B45309;
    --selected:rgba(4,120,87,.06);
    --grain:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence baseFrequency='0.65' numOctaves='2' seed='5'/><feColorMatrix values='0 0 0 0 0.3 0 0 0 0 0.22 0 0 0 0 0.10 0 0 0 0.06 0'/></filter><rect width='200' height='200' filter='url(%23n)'/></svg>");
    --scanline:none;
  }
  *{box-sizing:border-box}
  ::selection{background:var(--accent);color:var(--bg)}
  html{scroll-behavior:smooth}
  html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:13.5px;line-height:1.55;
    transition:background .24s cubic-bezier(.22,1,.36,1),color .24s}
  body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:99;background:var(--grain);mix-blend-mode:multiply;opacity:.6}
  body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:100;background:var(--scanline);mix-blend-mode:overlay}
  a{color:inherit;text-decoration:none}
  button{font-family:inherit;cursor:pointer}
  :focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
  img{max-width:100%;display:block}

  /* ==================== NAV ==================== */
  nav.top{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:14px 24px;border-bottom:1px solid var(--rule);background:color-mix(in srgb,var(--bg-2) 88%,transparent);backdrop-filter:blur(10px);font-family:var(--font-sans);font-size:11px;letter-spacing:.06em}
  .lockup{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;min-width:0}
  .lockup .logo-img{height:34px;width:auto;display:block}
  .pills{display:flex;gap:6px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;justify-self:start;margin-left:8px;flex-wrap:nowrap}
  .pills a{color:var(--ink);padding:6px 11px;border:1px solid var(--rule);border-radius:6px;transition:all .16s;white-space:nowrap}
  .pills a:hover{border-color:var(--accent);color:var(--accent)}
  .pills a.active{background:var(--accent);color:var(--bg);border-color:var(--accent);font-weight:600}
  .nav-dl{background:var(--accent);color:var(--bg);padding:9px 16px;border:none;border-radius:6px;font-family:var(--font-sans);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:10.5px;cursor:pointer;transition:filter .14s,transform .14s;white-space:nowrap}
  .nav-dl:hover{filter:brightness(1.08);transform:translateX(2px)}
  /* responsive nav: at <900px, drop pills to a 2nd row so the logo + download still fit on the top row */
  @media(max-width:900px){
    nav.top{grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:10px 14px;padding:12px 18px 0}
    nav.top .lockup{grid-row:1;grid-column:1}
    nav.top .pills{grid-row:2;grid-column:1 / -1;justify-self:stretch;margin:0 -18px;padding:8px 18px;border-top:1px solid var(--rule);overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;scrollbar-width:none}
    nav.top .pills::-webkit-scrollbar{display:none}
    nav.top .pills a{padding:5px 10px;border:none;font-weight:500;color:var(--ink-soft);font-size:10.5px}
    nav.top .pills a:hover{background:transparent;color:var(--accent)}
    nav.top .nav-dl{grid-row:1;grid-column:3}
  }
  @media(max-width:480px){.lockup .logo-img{height:28px}.nav-dl{padding:9px 12px;font-size:10px;letter-spacing:.08em}nav.top{padding:12px 14px 0}}
  @keyframes b{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.85)}}


  .sub-nav{display:flex;gap:0;padding:0 24px;border-bottom:1px solid var(--rule);background:var(--bg-2);font-family:var(--font-sans);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;overflow-x:auto}
  .sub-nav a{color:var(--ink-soft);padding:11px 16px;border-right:1px solid var(--rule);white-space:nowrap;transition:color .16s,background .16s}
  .sub-nav a:hover{color:var(--accent);background:var(--bg)}
  .sub-nav a.on{color:var(--accent);background:var(--bg)}

  /* ==================== HERO 3-PANE GRID ==================== */
  .grid{display:grid;grid-template-columns:minmax(360px,400px) 1fr 380px;position:relative;z-index:2}
  @media(max-width:1280px){.grid{grid-template-columns:minmax(340px,400px) 1fr}.grid .upcol{grid-column:1/-1;border-left:none;border-top:1px solid var(--rule)}}
  @media(max-width:1024px){.grid{grid-template-columns:1fr;min-height:auto}.grid .upcol{grid-column:1}}

  /* ==================== HERO RIGHT · "WHAT PEOPLE USE SOURCE FOR" PREVIEW ==================== */
  .upcol{background:var(--bg);border-left:1px solid var(--rule);display:flex;flex-direction:column;min-width:0;font-size:15px}
  .upcol-head{padding:22px 26px 14px}
  .upcol-kicker{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;margin-bottom:8px}
  .upcol-h{font-family:var(--font-serif);font-size:24px;font-weight:600;letter-spacing:-.015em;line-height:1.15;color:var(--ink)}
  .upcol-h em{font-family:var(--font-serif);font-style:italic;color:var(--accent);font-weight:400}
  .upcol-list{border-top:1px solid var(--rule);display:flex;flex-direction:column}
  .upcol-li{display:grid;grid-template-columns:96px 1fr 14px;column-gap:14px;padding:15px 26px;border-bottom:1px solid var(--rule);text-decoration:none;transition:background .14s,box-shadow .14s;align-items:start;cursor:pointer;color:inherit}
  .upcol-li:hover{background:color-mix(in srgb,var(--accent) 6%,transparent);box-shadow:inset 3px 0 0 var(--accent)}
  .upcol-li:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
  .upcol-li .upcol-disc{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:700;padding-top:3px}
  .upcol-li .upcol-body{display:flex;flex-direction:column;gap:4px;min-width:0}
  .upcol-li .upcol-ttl{font-family:var(--font-serif);font-size:17px;font-weight:600;letter-spacing:-.012em;line-height:1.2;color:var(--ink)}
  .upcol-li .upcol-ttl em{font-family:var(--font-serif);font-style:italic;color:var(--accent);font-weight:400}
  .upcol-li .upcol-scope{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.02em;color:var(--ink-soft);line-height:1.45}
  .upcol-li .upcol-ar{font-family:var(--font-sans);color:var(--accent);font-weight:700;font-size:13px;opacity:.35;transition:opacity .14s,transform .14s;align-self:start;padding-top:3px}
  .upcol-li:hover .upcol-ar{opacity:1;transform:translateX(3px)}
  .upcol-hint{padding:14px 26px 22px;font-family:var(--font-serif);font-style:italic;font-size:13px;color:var(--ink-soft);line-height:1.5}
  .upcol-hint a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;font-style:normal}
  .upcol-hint a:hover{text-decoration-thickness:2px}

  /* ==================== HERO SCROLL CUE ==================== */
  /* explicit text + arrow at the bottom of the hero · fades on first scroll */
  .scrollcue{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:5;display:inline-flex;align-items:center;gap:11px;padding:10px 18px;background:rgba(255,255,255,.94);border:1px solid var(--rule);border-radius:99px;font-family:var(--font-sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);font-weight:600;backdrop-filter:blur(6px);box-shadow:0 6px 18px rgba(10,10,10,.08);transition:opacity .4s,transform .4s;pointer-events:none}
  .scrollcue.gone{opacity:0;transform:translateX(-50%) translateY(8px)}
  .scrollcue .ch{color:var(--accent);font-size:14px;animation:scrollbob 1.8s ease-in-out infinite;display:inline-block;line-height:1}
  @keyframes scrollbob{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}
  /* keep scroll cue visible on mobile too · that's where 'I didn't know to scroll' hurts most */
  @media(max-width:768px){.scrollcue{position:static;display:flex;justify-content:center;margin:18px auto 0;transform:none;box-shadow:none;background:transparent;border:1px dashed var(--rule);padding:9px 14px}.scrollcue.gone{opacity:0;transform:translateY(8px)}}

  .left{padding:32px 26px;border-right:1px solid var(--rule);position:relative;overflow:hidden;background:var(--bg)}
  .ascii-bg{position:absolute;inset:0;font-family:var(--font-sans);font-size:11.5px;color:color-mix(in srgb,var(--accent) 15%,transparent);line-height:1.1;white-space:pre;overflow:hidden;pointer-events:none;padding:32px 26px}
  .left .pos{position:relative;z-index:2}
  .prompt{font-family:var(--font-sans);font-size:11px;color:var(--ink-soft);margin-bottom:16px;letter-spacing:.16em;text-transform:uppercase;font-weight:500}
  .reveal{opacity:0;transform:translateY(8px);animation:reveal .8s cubic-bezier(.22,1,.36,1) forwards}
  .reveal.d1{animation-delay:.05s}.reveal.d2{animation-delay:.15s}.reveal.d3{animation-delay:.25s}.reveal.d4{animation-delay:.4s}.reveal.d5{animation-delay:.55s}
  @keyframes reveal{to{opacity:1;transform:translateY(0)}}
  h1.hero{font-family:var(--font-serif);font-weight:600;font-size:50px;line-height:.96;letter-spacing:-.025em;margin:0 0 16px;color:var(--ink)}
  h1.hero em{font-family:var(--font-serif);font-style:italic;font-weight:400;color:var(--accent);letter-spacing:-.015em}
  .deck{font-family:var(--font-serif);font-style:italic;font-size:17px;line-height:1.45;color:var(--ink-soft);margin:0 0 22px}

  /* hero CTA (replaces the interactive search box) */
  .hero-cta{margin-bottom:18px}
  .hero-cta-btn{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--accent);color:var(--bg);padding:18px 24px;border-radius:6px;font-family:var(--font-sans);font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;text-decoration:none;transition:filter .14s,transform .14s}
  .hero-cta-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}
  .hero-cta-note{font-family:var(--font-serif);font-style:italic;font-size:13px;color:var(--ink-soft);margin:10px 2px 0;line-height:1.5}
  .input-box{margin-bottom:18px;border:1.5px solid var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent);padding:14px 16px;border-radius:6px;transition:box-shadow .24s,border-color .24s}
  .input-box:focus-within{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%,transparent)}
  .input-box .lab{font-family:var(--font-sans);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;display:flex;justify-content:space-between}
  .input-box .lab .hint{color:var(--ink-faint);letter-spacing:.04em;text-transform:none;font-style:italic}
  .input-box input{width:100%;background:transparent;border:none;outline:none;font-family:var(--font-serif);font-size:17px;color:var(--ink);font-style:italic}
  .input-box input::placeholder{color:var(--ink-faint);font-style:italic}
  .input-box .submit{margin-top:10px;background:var(--accent);color:var(--bg);border:none;padding:10px 14px;font-family:var(--font-sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;width:100%;border-radius:4px;transition:transform .12s,filter .12s}
  .input-box .submit:hover{filter:brightness(1.1)}
  .input-box .submit:active{transform:translateY(1px)}

  .autocomplete{margin-top:8px;background:var(--bg-2);border:1px solid var(--rule);border-radius:4px;max-height:220px;overflow-y:auto;display:none}
  .autocomplete.open{display:block}
  .autocomplete .ac{padding:9px 14px;font-family:var(--font-sans);font-size:11px;color:var(--ink);cursor:pointer;border-bottom:1px solid var(--rule)}
  .autocomplete .ac:last-child{border-bottom:none}
  .autocomplete .ac:hover,.autocomplete .ac.k{background:var(--selected);color:var(--accent)}
  .autocomplete .ac em{color:var(--accent);font-style:normal;font-weight:600;background:color-mix(in srgb,var(--accent) 18%,transparent);padding:0 2px}
  .autocomplete .ac .city{color:var(--ink-soft);float:right;font-size:10px}

  .doors{display:grid;gap:8px;margin-top:18px}
  .door{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:1px solid var(--rule);text-decoration:none;color:var(--ink);font-size:12px;border-radius:4px;background:var(--bg);transition:all .18s cubic-bezier(.22,1,.36,1)}
  .door:hover{border-color:var(--accent);color:var(--accent);background:var(--selected);transform:translateX(2px)}
  .door .l{display:flex;flex-direction:column;gap:3px}
  .door .l .t{font-weight:500;letter-spacing:.06em;text-transform:uppercase;font-family:var(--font-sans)}
  .door .l .s{font-family:var(--font-serif);font-style:italic;color:var(--ink-soft);font-size:13px;text-transform:none;letter-spacing:0;font-weight:400}
  .door:hover .l .s{color:var(--ink)}

  .center{display:flex;flex-direction:column;background:var(--bg)}
  .center-head{padding:13px 22px;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;background:var(--bg-2);flex-wrap:wrap;gap:12px}
  .center-head h2{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-family:var(--font-sans);font-weight:500}
  .center-head h2 strong{color:var(--accent)}
  .filters{display:flex;gap:6px;flex-wrap:wrap}
  .chip{padding:5px 11px;border:1px solid var(--rule);border-radius:6px;font-family:var(--font-sans);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);background:transparent;cursor:pointer;transition:all .14s}
  .chip:hover{border-color:var(--accent);color:var(--accent)}
  .chip.on{background:var(--accent);color:var(--bg);border-color:var(--accent);font-weight:600}

  .feed{overflow-y:auto;overflow-x:hidden;position:relative;scrollbar-width:thin;scrollbar-color:var(--rule) transparent}
  .feed::-webkit-scrollbar{width:8px}
  .feed::-webkit-scrollbar-track{background:transparent}
  .feed::-webkit-scrollbar-thumb{background:var(--rule);border-radius:4px}
  .feed::-webkit-scrollbar-thumb:hover{background:var(--ink-soft)}
  .feed-track{display:flex;flex-direction:column}
  .feed-empty{padding:32px 22px;color:var(--ink-soft);font-style:italic;font-family:var(--font-serif);font-size:15px;text-align:center}
  /* post-a-request CTA fills the leftover space so short lists never look empty */
  .feed-cta{flex:1 1 auto;min-height:200px;display:flex;align-items:center;justify-content:center;padding:32px 22px;text-decoration:none;border-top:1px dashed var(--rule);background:repeating-linear-gradient(135deg,transparent,transparent 9px,color-mix(in srgb,var(--accent) 3%,transparent) 9px,color-mix(in srgb,var(--accent) 3%,transparent) 10px);transition:background .18s}
  .feed-cta:hover{background:var(--selected)}
  .feed-cta-in{max-width:420px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
  .feed-cta-h{font-family:var(--font-serif);font-size:22px;font-weight:600;color:var(--ink);letter-spacing:-.01em}
  .feed-cta-p{font-family:var(--font-serif);font-style:italic;font-size:14px;color:var(--ink-soft);line-height:1.5}
  .feed-cta-btn{margin-top:6px;font-family:var(--font-sans);font-size:11px;letter-spacing:.14em;font-weight:700;color:var(--ink);background:var(--bg);border:1px solid var(--rule);padding:11px 18px;border-radius:6px;transition:border-color .14s,color .14s}
  .feed-cta:hover .feed-cta-btn{border-color:var(--accent);color:var(--accent)}
  /* compact single-line feed CTA (replaces the big empty-state card) */
  .feed-cta-line{display:block;padding:18px 22px;border-top:1px solid var(--rule);font-family:var(--font-serif);font-style:italic;font-size:14.5px;line-height:1.45;color:var(--ink-soft);text-decoration:none;transition:background .14s,color .14s}
  .feed-cta-line strong{font-style:normal;color:var(--accent);font-weight:600}
  .feed-cta-line:hover{background:color-mix(in srgb,var(--accent) 6%,transparent);color:var(--ink)}
  .row{display:grid;grid-template-columns:76px 1fr 116px 78px 64px 18px;gap:12px;padding:13px 22px;border-bottom:1px solid var(--rule);align-items:center;font-size:11.5px;background:var(--bg);cursor:pointer;transition:background .14s}
  /* always-visible chevron column at the right so older / touch users see the row is tappable */
  .row .row-ar{color:var(--accent);font-weight:700;font-size:20px;line-height:1;opacity:.7;text-align:right;transition:opacity .14s,transform .14s}
  .row:hover .row-ar{opacity:1;transform:translateX(3px)}
  @media(max-width:768px){
    .row{display:grid;grid-template-columns:auto auto auto 1fr auto;grid-template-rows:auto auto;column-gap:10px;row-gap:6px;padding:14px 18px;align-items:baseline}
    .row .id{grid-row:1;grid-column:1;align-self:baseline}
    .row .city{grid-row:1;grid-column:2;font-size:10.5px;max-width:none}
    .row .status{grid-row:1;grid-column:3;font-size:9.5px}
    .row .price{grid-row:1;grid-column:4;justify-self:end;font-weight:600;font-size:12px}
    .row .row-ar{grid-row:1;grid-column:5;align-self:center;padding-left:4px}
    .row .desc{grid-row:2;grid-column:1 / -1;line-height:1.35;font-size:11px}
    .row .desc .doc{font-size:13.5px;margin-top:2px}
  }
  .row:nth-child(even){background:color-mix(in srgb,var(--bg-2) 50%,var(--bg))}
  .row:hover,.row.sel{background:var(--selected);outline:1px solid color-mix(in srgb,var(--accent) 30%,transparent);outline-offset:-1px}
  .row.sel{background:color-mix(in srgb,var(--accent) 8%,var(--bg))}
  .row .id{color:var(--ink-soft);font-weight:500;font-family:var(--font-sans);font-size:10.5px;display:flex;align-items:center;justify-content:flex-start}
  .row .id strong{color:var(--accent);font-weight:700}
  .row .id .type-ico{width:22px;height:22px;color:var(--accent);opacity:.8;display:inline-flex}
  .row .id .type-ico svg{width:100%;height:100%}
  .row .desc{color:var(--ink);font-family:var(--font-sans);font-size:10.5px;letter-spacing:.04em}
  .row .desc .doc{font-family:var(--font-serif);font-style:italic;color:var(--ink);display:block;font-size:13.5px;margin-top:2px;letter-spacing:0;font-weight:400}
  .row .city{color:var(--ink);font-family:var(--font-sans);font-size:10px;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .row .status{font-family:var(--font-sans);font-weight:500;text-transform:uppercase;letter-spacing:.08em;font-size:10px;color:var(--accent-3)}
  .row .status.open{color:#B23A0A;font-weight:600;animation:pulseStatus 2s ease-in-out infinite}
  .row .status.offer{color:var(--warn);font-weight:600}
  .row .status.claimed{color:var(--accent);font-weight:600}
  .row .status.closed{color:var(--ink-soft)}
  @keyframes pulseStatus{0%,100%{opacity:1}50%{opacity:.6}}
  .row .price{text-align:right;color:var(--ink);font-weight:500;font-family:var(--font-sans);font-size:11px}

  .stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .stat{padding:11px 12px;border:1px solid var(--rule);background:var(--bg);border-radius:4px;transition:border-color .14s}
  .stat:hover{border-color:var(--accent)}
  .stat .n{font-family:var(--font-serif);font-weight:600;font-size:28px;line-height:1;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
  .stat .n em{font-family:var(--font-serif);font-style:italic;color:var(--accent);font-weight:400}
  .stat .l{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-top:6px;font-family:var(--font-sans)}

  .heat{display:grid;grid-template-columns:repeat(20,1fr);gap:2px}
  .heat .d{aspect-ratio:1;background:var(--bg-3);border-radius:1.5px;transition:transform .12s}
  .heat .d:hover{transform:scale(1.4);z-index:2}
  /* heatmap colors retained in case map reuse later */
  .heat .d.a1{background:#C2D6CB}
  .heat .d.a2{background:#86A89A}
  .heat .d.a3{background:#3D8A6F}
  .heat .d.a4{background:var(--accent)}

  .quote{font-family:var(--font-serif);font-style:italic;font-size:14px;line-height:1.45;color:var(--ink);border-left:2px solid var(--accent);padding-left:14px;margin:0}
  .quote cite{display:block;margin-top:8px;font-style:normal;font-family:var(--font-sans);font-size:9.5px;letter-spacing:.1em;color:var(--ink-soft);text-transform:uppercase}

  .detail{padding:18px 22px;border-bottom:1px solid var(--rule);background:var(--bg)}
  .detail.empty{color:var(--ink-soft);font-style:italic;font-family:var(--font-serif);font-size:13px}
  .detail .src{font-family:var(--font-sans);font-size:10px;letter-spacing:.06em;color:var(--ink-soft)}
  .detail .src .id{color:var(--accent);font-weight:bold}
  .detail h4{font-family:var(--font-serif);font-weight:600;font-size:18px;line-height:1.2;margin:6px 0 10px;color:var(--ink);font-style:italic}
  .detail .meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;border-top:1px dashed var(--rule);padding-top:10px;font-family:var(--font-sans);font-size:10.5px}
  .detail .meta-grid div span{color:var(--ink-soft);font-size:9px;letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:2px}
  .detail .meta-grid div strong{color:var(--ink);font-weight:500}
  .detail .meta-grid .accent strong{color:var(--accent)}

  /* ==================== SEEKER PITCH BAND ==================== */
  .seeker-band{padding:72px 24px;border-bottom:1px solid var(--rule);background:var(--bg-2)}
  .seeker-band .inner{max-width:860px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:26px}
  .seeker-band .seeker-eye{align-self:center;margin-bottom:0}
  .seeker-band .seeker-cta{align-self:center;margin-top:6px}
  .seeker-band .seeker-card{width:100%;max-width:768px;align-self:center}
  .seeker-band .bespoke-bar{width:100%;max-width:860px;margin-top:14px}
  @media(max-width:560px){.seeker-band{padding:52px 18px}.seeker-band .inner{gap:22px}}
  .seeker-left h2{font-family:var(--font-serif);font-weight:600;font-size:42px;line-height:1.04;letter-spacing:-.02em;margin:0 0 14px;max-width:620px}
  .seeker-left h2 em{font-family:var(--font-serif);font-style:italic;font-weight:400;color:var(--accent)}
  .seeker-left .lede{font-family:var(--font-serif);font-style:italic;font-size:17px;line-height:1.5;color:var(--ink-soft);max-width:560px;margin:0 0 22px}
  .seeker-points{list-style:none;padding:0;margin:0 0 26px;display:flex;flex-direction:column;gap:10px;font-family:var(--font-sans);font-size:11.5px;letter-spacing:.04em;color:var(--ink-soft);max-width:580px}
  .seeker-points li{padding:12px 16px;background:var(--bg-2);border:1px solid var(--rule);border-radius:6px;line-height:1.5;transition:border-color .14s}
  .seeker-points li:hover{border-color:var(--accent)}
  .seeker-points li strong{display:block;color:var(--ink);font-family:var(--font-serif);font-size:15px;font-weight:600;letter-spacing:-.005em;margin-bottom:2px}
  .seeker-cta{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:var(--bg);padding:16px 22px;font-family:var(--font-sans);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;border-radius:6px;transition:filter .14s,transform .14s}
  .seeker-cta:hover{filter:brightness(1.08);transform:translateX(3px)}
  .seeker-fineprint{font-family:var(--font-sans);font-size:10px;color:var(--ink-faint);margin-top:10px;letter-spacing:.04em;max-width:520px;line-height:1.55}
  /* reusable mono // eyebrow (the cohesion label rhythm) */
  .fold-eyebrow{font-family:var(--font-sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:16px;font-weight:500}
  /* cost comparison card with relative-cost bar visualization */
  .seeker-card{background:var(--bg-2);border:1px solid var(--rule);border-radius:8px;padding:22px 22px 20px;font-family:var(--font-sans)}
  .cmp-head{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:6px;font-weight:600}
  .cmp-sub{font-size:9.5px;letter-spacing:.04em;color:var(--ink-faint);margin-bottom:16px;font-family:var(--font-serif);font-style:italic}
  .cmp-rows{display:flex;flex-direction:column;gap:4px}
  .cmp-row{padding:12px 14px;border:1px solid transparent;border-radius:6px;transition:background .14s}
  .cmp-row+.cmp-row{border-top:1px solid var(--rule);border-radius:0}
  .cmp-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}
  .cmp-approach{font-size:12px;color:var(--ink);letter-spacing:.02em}
  .cmp-cost{font-size:12px;color:var(--ink-soft);white-space:nowrap;font-variant-numeric:tabular-nums}
  .cmp-track{height:6px;background:var(--bg-3);border-radius:3px;overflow:hidden;position:relative}
  .cmp-fill{height:100%;border-radius:3px}
  .cmp-fill.warn{background:var(--accent-2)}
  .cmp-fill.mid{background:var(--warn)}
  .cmp-fill.dead{background:repeating-linear-gradient(90deg,var(--ink-faint),var(--ink-faint) 3px,transparent 3px,transparent 7px);opacity:.5}
  .cmp-time{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-top:6px}
  /* winning row */
  .cmp-row.cmp-win{background:color-mix(in srgb,var(--accent) 9%,transparent);border:1px solid color-mix(in srgb,var(--accent) 32%,transparent);border-radius:8px;margin-top:6px}
  .cmp-row.cmp-win+.cmp-row,.cmp-row.cmp-win{border-top:1px solid color-mix(in srgb,var(--accent) 32%,transparent)}
  .cmp-win .cmp-approach{color:var(--accent);font-weight:700;display:flex;align-items:center;gap:7px}
  .cmp-win .cmp-approach .cmp-check{width:16px;height:16px;border-radius:50%;background:var(--accent);color:var(--bg);display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700}
  .cmp-win .cmp-cost{color:var(--accent);font-weight:700;font-family:var(--font-serif);font-size:16px;letter-spacing:-.01em}
  .cmp-win .cmp-fill{background:var(--accent)}
  .cmp-win .cmp-time{color:var(--accent)}
  .seeker-card-foot{font-size:10px;color:var(--ink-faint);margin-top:14px;padding-top:11px;border-top:1px dashed var(--rule);line-height:1.55;letter-spacing:.02em}

  /* ==================== STORE BADGES (hero right /download panel) ==================== */

  /* ==================== DOWNLOAD-APP MODAL ==================== */
  .dl-overlay{position:fixed;inset:0;background:rgba(10,10,10,.62);backdrop-filter:blur(6px);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;animation:dlFade .18s ease-out}
  @keyframes dlFade{from{opacity:0}to{opacity:1}}
  .dl-box{position:relative;background:var(--bg);border:1px solid var(--rule);border-radius:8px;max-width:480px;width:100%;padding:36px 32px 32px;font-family:var(--font-serif);animation:dlPop .26s cubic-bezier(.22,1,.36,1)}
  @keyframes dlPop{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
  .dl-x{position:absolute;top:10px;right:12px;background:transparent;border:none;color:var(--ink-soft);font-size:24px;line-height:1;cursor:pointer;padding:6px 10px;border-radius:6px}
  .dl-x:hover{color:var(--accent);background:var(--selected)}
  .dl-eyebrow{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:10px;font-weight:600}
  .dl-h{font-family:var(--font-serif);font-size:26px;font-weight:600;line-height:1.1;margin:0 0 12px;color:var(--ink);letter-spacing:-.015em}
  .dl-p{font-family:var(--font-serif);font-style:italic;font-size:14px;color:var(--ink-soft);line-height:1.5;margin:0 0 22px}
  .dl-foot-note{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.02em;color:var(--ink-soft);margin:16px 0 0;line-height:1.5}
  .dl-foot-note a{color:var(--accent);border-bottom:1px solid var(--accent)}
  /* Bespoke + Partner modal forms */
  .dl-box.ff-box{max-width:540px;max-height:90vh;overflow-x:hidden;overflow-y:auto;padding:32px 32px 28px;-webkit-overflow-scrolling:touch}
  .ff-form{display:flex;flex-direction:column;gap:12px;width:100%;min-width:0}
  .ff-row{display:flex;flex-direction:column;gap:5px;width:100%;min-width:0}
  .ff-label{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:600}
  .ff-form input[type=text],.ff-form input[type=email],.ff-form select,.ff-form textarea{font-family:var(--font-serif);font-size:16px;color:var(--ink);background:var(--bg-2);border:1px solid var(--rule);border-radius:6px;padding:11px 12px;outline:none;width:100%;max-width:100%;box-sizing:border-box;min-width:0;display:block}
  .ff-form select{font-family:var(--font-sans);font-size:14px;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-soft) 50%),linear-gradient(135deg,var(--ink-soft) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:34px}
  .ff-form textarea{resize:vertical;min-height:84px;font-family:var(--font-serif);line-height:1.5}
  .ff-form input:focus,.ff-form select:focus,.ff-form textarea:focus{border-color:var(--accent);background:var(--bg);box-shadow:0 0 0 3px rgba(4,120,87,.12)}
  .ff-form input:focus-visible,.ff-form select:focus-visible,.ff-form textarea:focus-visible{outline:none}
  .ff-submit{align-self:stretch;background:var(--accent);color:var(--bg);border:none;padding:13px 18px;font-family:var(--font-sans);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;cursor:pointer;border-radius:6px;margin-top:6px;transition:filter .14s;width:100%}
  .ff-submit:hover{filter:brightness(1.08)}
  .ff-submit:disabled{opacity:.6;cursor:not-allowed}
  .ff-note{background:rgba(4,120,87,.06);border:1px solid rgba(4,120,87,.18);border-radius:6px;padding:11px 14px;font-family:var(--font-serif);font-size:13.5px;color:var(--ink-soft);line-height:1.5;margin:6px 0 4px}
  .ff-note b{color:var(--ink);font-weight:600}
  /* Success confirmation card */
  .ff-success-box{text-align:center}
  .ff-success{display:flex;flex-direction:column;align-items:center;padding:14px 0 6px}
  .ff-success-icon{width:72px;height:72px;border-radius:50%;background:rgba(4,120,87,.1);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:20px;animation:successPop .42s cubic-bezier(.22,1.2,.36,1.1)}
  .ff-success-icon svg{width:36px;height:36px}
  @keyframes successPop{0%{transform:scale(.3);opacity:0}60%{transform:scale(1.12);opacity:1}100%{transform:scale(1)}}
  .ff-success-msg{font-family:var(--font-serif);font-size:15.5px;color:var(--ink-soft);line-height:1.6;margin:14px 0 22px;max-width:420px}
  .ff-success-msg b{color:var(--ink);font-weight:600}
  .ff-close-success{align-self:stretch !important;max-width:240px;margin:0 auto 4px !important}
  /* Side-by-side field pair */
  .ff-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%;min-width:0}
  .ff-pair .ff-row{width:100%;min-width:0}
  @media(max-width:480px){ .ff-pair{grid-template-columns:1fr} }
  /* Intro cards above the form (Bespoke modal) */
  .ff-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 18px}
  .ff-card{background:var(--bg-2);border:1px solid var(--rule);border-radius:8px;padding:14px 12px;text-align:center}
  .ff-card-icon{width:28px;height:28px;color:var(--accent);margin:0 auto 8px}
  .ff-card-icon svg{width:100%;height:100%}
  .ff-card-title{font-family:var(--font-serif);font-size:13px;font-weight:600;color:var(--ink);line-height:1.2;margin-bottom:4px}
  .ff-card-desc{font-family:var(--font-serif);font-size:11px;color:var(--ink-soft);line-height:1.45}
  @media(max-width:480px){ .ff-cards{grid-template-columns:1fr;gap:8px}.ff-card{display:flex;align-items:center;gap:10px;text-align:left;padding:10px 12px}.ff-card-icon{margin:0;flex-shrink:0;width:22px;height:22px}.ff-card-title{font-size:13px;margin-bottom:2px}.ff-card-desc{font-size:11.5px} }
  @media(max-width:520px){ .dl-box.ff-box{padding:26px 20px 22px;max-height:92vh}.ff-form input[type=text],.ff-form input[type=email],.ff-form select,.ff-form textarea{font-size:16px;padding:10px 11px} }
  /* store badges used in modals (was deleted during cleanup; restored) */
  .store-badges{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .store-badge{display:flex;align-items:center;gap:9px;padding:10px 12px;background:var(--bg);color:var(--ink);border:1px solid var(--rule);border-radius:6px;text-decoration:none;transition:border-color .14s,background .14s}
  .store-badge:hover{border-color:var(--accent);background:var(--selected)}
  .store-badge svg{flex-shrink:0;color:var(--accent)}
  .store-badge span{display:flex;flex-direction:column;line-height:1.05}
  .store-badge .sb-h{font-family:var(--font-sans);font-size:7.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}
  .store-badge strong{font-family:var(--font-serif);font-size:14px;font-weight:600;letter-spacing:-.005em;margin-top:1px}
  @media(max-width:1100px){.store-badges{grid-template-columns:1fr}}
  .dl-stores{display:grid;gap:10px}
  .dl-store{display:flex;flex-direction:column;gap:2px;padding:14px 18px;background:var(--accent);color:var(--bg);border-radius:6px;font-family:var(--font-sans);transition:filter .14s,transform .14s}
  .dl-store:hover{filter:brightness(1.08);transform:translateX(2px)}
  .dl-store .h{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;opacity:.78}
  .dl-store strong{font-family:var(--font-serif);font-size:16px;font-weight:600;letter-spacing:-.005em}

  /* ==================== TRUST BAND ==================== */
  .trust-band{padding:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--bg)}

  /* archive world map: institutions plotted on a stippled world (global-reach pattern) */
  .archive-map{position:relative;max-width:1000px;margin:30px auto 0;aspect-ratio:1000/410;background:url('logos/worldmap-dots2.svg') center/contain no-repeat}
  .amap-pt{position:absolute;transform:translate(-50%,-50%);width:9px;height:9px}
  .amap-pt .dot{position:absolute;inset:0;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2.5px var(--bg),0 1px 5px rgba(10,10,10,.4);animation:amapBreathe 3.6s ease-in-out infinite}
  @keyframes amapBreathe{0%,100%{filter:brightness(.95);transform:scale(.95)}50%{filter:brightness(1.2);transform:scale(1.08)}}
  /* travelling-ping arc layer */
  .amap-ping-layer{position:absolute;inset:0;pointer-events:none}
  .amap-ping-layer svg{width:100%;height:100%;overflow:visible}
  .amap-ping-layer path.trail{stroke:var(--accent);stroke-width:1.4;fill:none;stroke-linecap:round;opacity:.85}
  .amap-ping-layer circle.head{r:3.6;fill:var(--accent);filter:drop-shadow(0 0 4px color-mix(in srgb,var(--accent) 70%,transparent))}
  .amap-ping-label{position:absolute;transform:translate(-50%,-100%);background:var(--ink);color:var(--bg);font-family:var(--font-sans);font-size:9px;letter-spacing:.08em;text-transform:uppercase;padding:3px 7px;border-radius:4px;white-space:nowrap;opacity:0;transition:opacity .25s;pointer-events:none;margin-top:-14px;z-index:5}
  .amap-ping-label.live{opacity:1}
  .amap-ping-label b{font-family:var(--font-serif);font-weight:600;text-transform:none;letter-spacing:0;font-size:11px;margin-right:5px;color:#fff}
  .amap-pt.hit .dot{animation:amapHit 1s ease-out 1, amapBreathe 3.6s ease-in-out infinite}
  @keyframes amapHit{0%{box-shadow:0 0 0 2.5px var(--bg),0 0 0 0 color-mix(in srgb,var(--accent) 70%,transparent)}100%{box-shadow:0 0 0 2.5px var(--bg),0 0 0 16px transparent}}
  @media (prefers-reduced-motion:reduce){.amap-pt .dot{animation:none}.amap-ping-layer{display:none}}
  .statline{display:grid;grid-template-columns:repeat(5,1fr);margin:28px auto 0;max-width:800px;border:1px solid var(--rule);border-radius:8px;overflow:hidden}
  .statline div{padding:14px 10px;border-right:1px solid var(--rule);text-align:center}
  .statline div:last-child{border-right:none}
  @media(max-width:768px){.statline{grid-template-columns:repeat(3,1fr)}.statline div:nth-child(3){border-right:none}.statline div:nth-child(n+4){border-top:1px solid var(--rule)}.statline div:nth-child(4){border-right:1px solid var(--rule)}}
  @media(max-width:440px){.statline{grid-template-columns:repeat(2,1fr)}.statline div{border-right:1px solid var(--rule)!important;border-top:1px solid var(--rule)!important}.statline div:nth-child(odd){border-right:1px solid var(--rule)}.statline div:nth-child(even){border-right:none!important}.statline div:nth-child(-n+2){border-top:none!important}.statline div:nth-child(5){grid-column:1/-1;border-right:none!important}}
  .statline b{display:block;font-family:var(--font-serif);font-size:22px;font-weight:600}
  .statline span{font-family:var(--font-sans);font-size:8.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}
  .amap-pt .lbl{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);background:var(--ink);color:var(--bg);font-family:var(--font-sans);font-size:9px;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .14s;z-index:8}
  .amap-pt .lbl b{font-family:var(--font-serif);font-weight:600;text-transform:none;font-size:11px;display:block;letter-spacing:0}
  .amap-pt:hover{z-index:9}
  .amap-pt:hover .lbl{opacity:1}
  .amap-cap{text-align:center;font-family:var(--font-serif);font-size:19px;line-height:1.4;color:var(--ink);max-width:640px;margin:30px auto 0}
  .amap-cap strong{color:var(--accent);font-weight:600}
  .creds-label{max-width:1000px;margin:32px auto 0;padding-top:18px;border-top:1px dashed var(--rule);font-family:var(--font-sans);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);text-align:center;margin-bottom:12px}

  .institutions{padding:48px 24px 40px;border-bottom:1px solid var(--rule);background:var(--bg-2)}
  .institutions h2 em{font-family:var(--font-serif);font-style:italic;color:var(--accent);font-weight:400}
  .institutions .inner{max-width:1280px;margin:0 auto;text-align:center}
  .institutions .eyebrow{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:4px}
  .institutions .sub{font-family:var(--font-serif);font-style:italic;font-size:13px;color:var(--ink-soft);margin-bottom:20px;max-width:680px;margin-left:auto;margin-right:auto;line-height:1.45}
  .logo-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--bg-2)}
  .lg{flex:1 1 auto;min-width:160px;padding:14px 18px;border-right:1px solid var(--rule);text-align:center;display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center;transition:background .2s}
  .lg:last-child{border-right:none}
  .lg:hover{background:color-mix(in srgb,var(--accent) 5%,transparent)}
  .lg .name{font-family:var(--font-serif);font-size:13.5px;font-weight:600;letter-spacing:-.005em;color:var(--ink);line-height:1.18}
  .lg .name em{font-style:italic;font-weight:500}
  .lg .name.mono{font-family:var(--font-sans);font-size:10.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
  .lg .name.smcp{font-variant:small-caps;letter-spacing:.06em;font-weight:500}
  .lg .city{font-family:var(--font-sans);font-size:9px;color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase}
  @media(max-width:980px){.lg{flex:1 1 33%;min-width:33%;border-bottom:1px solid var(--rule)}.lg:nth-child(3n){border-right:none}}
  @media(max-width:560px){.lg{flex:1 1 50%;min-width:50%}.lg:nth-child(3n){border-right:1px solid var(--rule)}.lg:nth-child(2n){border-right:none}}

  /* credentials as real reader-pass cards in an auto-sliding marquee */
  .cred-rail{overflow:hidden;position:relative;margin:6px -24px 0;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
  .cred-track{display:flex;gap:16px;width:max-content;padding:16px 24px;animation:credSlide 52s linear infinite}
  .cred-rail:hover .cred-track{animation-play-state:paused}
  @keyframes credSlide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  @media (prefers-reduced-motion:reduce){.cred-track{animation:none}}
  /* photo-led institution cards: the real reading-room photo is the visual */
  .reader-pass{flex:0 0 auto;width:248px;border-radius:10px;border:1px solid var(--rule);background:var(--bg);overflow:hidden;box-shadow:0 2px 12px -7px rgba(10,10,10,.22);transition:transform .18s,box-shadow .18s}
  /* compact reader-pass cards on mobile so 2 fit side-by-side and the marquee feels alive */
  @media(max-width:768px){.reader-pass{width:200px}.rp-photo{height:112px}.cred-track{animation-duration:38s}}
  .reader-pass:hover{transform:translateY(-4px);box-shadow:0 12px 26px -12px rgba(10,10,10,.28)}
  .rp-photo{height:140px;background-size:cover;background-position:center;position:relative}
  .rp-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,10,10,.42))}
  .rp-photo .rp-type{position:absolute;left:11px;bottom:9px;z-index:1;color:#fff;font-family:var(--font-sans);font-size:8px;letter-spacing:.16em;text-transform:uppercase;background:color-mix(in srgb,var(--accent) 88%,#000);padding:3px 7px;border-radius:5px}
  .rp-body{padding:11px 13px 13px}
  .rp-issuer{font-family:var(--font-serif);font-size:14px;font-weight:600;color:var(--ink);line-height:1.18;letter-spacing:-.005em}
  .rp-meta{display:flex;align-items:center;gap:7px;margin-top:6px;font-family:var(--font-sans);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}
  .rp-meta .rp-no{color:var(--ink-faint)}
  /* text-only credential card: same dimensions as photo card, typographic treatment */
  .rp-photo--text{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14px 16px;background:linear-gradient(165deg,var(--bg-2) 0%,var(--bg-3) 100%);position:relative;border-bottom:1px solid var(--rule)}
  .rp-photo--text::before{content:"";position:absolute;inset:9px;border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);border-radius:4px;pointer-events:none}
  .rp-photo--text .rp-mono{font-family:var(--font-serif);font-style:italic;font-size:32px;font-weight:500;color:color-mix(in srgb,var(--accent) 78%,var(--ink) 22%);line-height:1;letter-spacing:-.01em}
  .rp-photo--text .rp-kicker{margin-top:8px;font-family:var(--font-sans);font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft)}
  .credentials .ck{color:var(--ink)}
  .credentials .ck::before{content:'✓ ';color:var(--accent);font-weight:600}

  .coverage-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
  .cv{padding:28px 28px;border-right:1px solid var(--rule);text-align:left}
  .cv:last-child{border-right:none}
  .cv .n{font-family:var(--font-serif);font-size:32px;font-weight:600;letter-spacing:-.02em;color:var(--ink);line-height:1}
  .cv .n em{font-style:italic;color:var(--accent)}
  .cv .l{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-top:8px}
  @media(max-width:768px){.coverage-inner{grid-template-columns:repeat(2,1fr)}.cv:nth-child(2){border-right:none}.cv:nth-child(1),.cv:nth-child(2){border-bottom:1px solid var(--rule)}}

  .partners-band{padding:64px 24px 56px;border-bottom:1px solid var(--rule);background:var(--bg-2)}
  .partners-band .inner{max-width:1280px;margin:0 auto;text-align:center}
  .partners-band .eyebrow{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px}
  .partners-band h2{font-family:var(--font-serif);font-size:34px;font-weight:600;letter-spacing:-.015em;color:var(--ink);margin:0 auto 8px;max-width:none;line-height:1.1}
  .partners-band h2 em{font-style:italic;color:var(--accent);font-weight:500}
  .partners-band .sub{font-family:var(--font-serif);font-style:italic;font-size:15px;color:var(--ink-soft);max-width:620px;margin:0 auto 36px;line-height:1.5}
  /* partners: slow auto-scrolling colour marquee */
  .pm-rail{position:relative;margin:6px -24px 0;overflow:hidden;
    -webkit-mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
  .pm-track{display:flex;align-items:center;gap:74px;width:max-content;padding:14px 37px;animation:pmSlide 46s linear infinite}
  .pm-rail:hover .pm-track{animation-play-state:paused}
  @keyframes pmSlide{to{transform:translateX(-50%)}}
  @media (prefers-reduced-motion:reduce){.pm-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto;gap:40px}}
  .pm-logo{flex:0 0 auto;display:flex;align-items:center;justify-content:center;height:80px;text-decoration:none}
  .pm-logo img{width:auto;max-width:190px;object-fit:contain;transition:transform .22s cubic-bezier(.22,1,.36,1)}
  .pm-logo:hover img{transform:scale(1.08)}
  /* benefits band: mono eyebrow + one bordered grid card */
  .trust-band{padding:28px 24px !important}
  .trust-eyebrow{max-width:1280px;margin:0 auto 16px;font-family:var(--font-sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);font-weight:500}
  .trust-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--rule);border-radius:8px;overflow:hidden;background:var(--bg)}
  @media(max-width:1024px){.trust-inner{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:560px){.trust-inner{grid-template-columns:1fr}}
  .trust{padding:30px 28px 32px;border-right:1px solid var(--rule);display:flex;flex-direction:column;align-items:flex-start}
  .trust:last-child{border-right:none}
  @media(max-width:1024px){.trust:nth-child(2){border-right:none}.trust:nth-child(1),.trust:nth-child(2){border-bottom:1px solid var(--rule)}}
  @media(max-width:560px){.trust{border-right:none;border-bottom:1px solid var(--rule)}.trust:last-child{border-bottom:none}}
  .trust .trust-top{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:18px}
  .trust .trust-ic{width:38px;height:38px;border-radius:50%;background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--accent);display:flex;align-items:center;justify-content:center}
  .trust .trust-num{font-family:var(--font-sans);font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--ink-faint)}
  .trust strong{display:block;font-family:var(--font-serif);font-size:18px;font-weight:600;margin-bottom:7px;color:var(--ink);letter-spacing:-.01em;line-height:1.2}
  .trust span{font-size:13px;color:var(--ink-soft);line-height:1.55}

  /* ==================== TESTIMONIALS ==================== */
  .proof{padding:96px 24px;border-bottom:1px solid var(--rule)}
  .proof .inner{max-width:1280px;margin:0 auto}
  .testimonial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:40px;max-width:920px;margin-left:auto;margin-right:auto}
  @media(max-width:768px){.testimonial-grid{grid-template-columns:1fr}}
  .t-portrait.t-initials{display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,var(--bg-3),var(--bg-2));color:var(--ink-soft);font-family:var(--font-serif);font-style:italic;font-size:20px;font-weight:500;letter-spacing:.02em}
  /* testimonials: photo-portrait header + quote + outcome stats (cohesive with the photo cards) */
  .testimonial{padding:0;background:var(--bg);border:1px solid var(--rule);border-radius:8px;margin:0;display:flex;flex-direction:column;overflow:hidden}
  .t-head{display:flex;align-items:center;gap:13px;padding:18px 22px}
  .t-portrait{width:54px;height:54px;border-radius:50%;flex-shrink:0;background-size:cover;background-position:center;border:1px solid var(--rule)}
  .t-id{display:flex;flex-direction:column;gap:4px;min-width:0}
  .t-id .t-name{font-family:var(--font-serif);font-size:15px;font-weight:600;color:var(--ink);letter-spacing:-.005em;line-height:1.1}
  .t-id .t-tag{font-family:var(--font-sans);font-size:8.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);font-weight:600}
  .testimonial blockquote{font-family:var(--font-serif);font-size:15px;line-height:1.55;margin:0;padding:0 22px 18px;color:var(--ink);font-weight:400;font-style:italic;flex:1}
  .t-out{display:flex;border-top:1px solid var(--rule);font-family:var(--font-sans)}
  .t-out div{flex:1;padding:12px 22px;border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:3px}
  .t-out div:last-child{border-right:none}
  .t-out dt{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}
  .t-out dd{margin:0;font-size:13px;color:var(--ink);font-weight:600;font-family:var(--font-serif);letter-spacing:-.005em}
  .t-out dd.hi{color:var(--accent)}
  .t-by{padding:11px 22px;border-top:1px dashed var(--rule);font-family:var(--font-sans);font-size:9px;letter-spacing:.07em;color:var(--ink-soft);text-transform:uppercase}
  .t-by .t-sr{color:var(--accent);font-weight:700}
  .proof-foot{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.08em;color:var(--ink-faint);text-align:center;margin:32px 0 0;text-transform:uppercase}

  /* ==================== STATS BAND BELOW THE FOLD ==================== */
  section.fold{position:relative;z-index:2}
  .stats-band{padding:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--bg-2)}
  .stats-band .grid-s{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
  .stats-band .s{padding:36px 32px;border-right:1px solid var(--rule)}
  .stats-band .s:last-child{border-right:none}
  .stats-band .n{font-family:var(--font-serif);font-weight:600;font-size:48px;line-height:1;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
  .stats-band .n em{font-family:var(--font-serif);font-style:italic;color:var(--accent);font-weight:400}
  .stats-band .l{font-family:var(--font-sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-top:10px}

  /* ==================== HOW IT WORKS · compact strip ==================== */
  /* unified clean section label (matches hero/benefits/seeker; no dash line, ink-soft) */
  .eyebrow{font-family:var(--font-sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:16px;font-weight:500}
  h2{font-family:var(--font-serif);font-weight:600;font-size:54px;line-height:1.02;letter-spacing:-.025em;margin:0 0 18px;max-width:800px;text-wrap:balance}
  h2 em{font-family:var(--font-serif);font-style:italic;font-weight:400;color:var(--accent)}
  .lede{font-family:var(--font-serif);font-style:italic;font-size:19px;line-height:1.5;color:var(--ink-soft);max-width:680px;margin:0 0 56px}
  /* how it works: one token rides a curved route and transforms at each stage (no boxes, minimal text) */
  .how-strip{padding:84px 24px;border-bottom:1px solid var(--rule);background:var(--bg)}
  .how-strip .inner{max-width:1120px;margin:0 auto}
  .how-journey{margin-top:24px}
  .how-svg{display:block;width:100%;height:auto;overflow:visible}
  .how-route-base{fill:none;stroke:var(--rule);stroke-width:2}
  .how-route-flow{fill:none;stroke:var(--accent);stroke-width:2.4;stroke-linecap:round;stroke-dasharray:1 13;opacity:.45;animation:howFlow 1s linear infinite}
  @keyframes howFlow{to{stroke-dashoffset:-14}}
  .how-node-c{fill:var(--bg);stroke:var(--accent);stroke-width:2.4}
  .how-node-n{fill:var(--accent);font-family:var(--font-serif);font-weight:600;font-size:19px;text-anchor:middle}
  .how-lbl{fill:var(--ink);font-family:var(--font-serif);font-weight:600;font-size:17px;letter-spacing:-.01em;text-anchor:middle}
  .how-sub{fill:var(--ink-faint);font-family:var(--font-sans);font-size:10px;letter-spacing:.14em;text-anchor:middle}
  .how-tok-disc{fill:var(--bg);stroke:var(--accent);stroke-width:2;filter:drop-shadow(0 2px 5px rgba(4,120,87,.22))}
  .how-tok-ico path,.how-tok-ico circle{stroke:var(--accent);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  @media (prefers-reduced-motion:reduce){.how-route-flow{animation:none}}
  .how-list{display:none}
  @media(max-width:768px){
    .how-svg{display:none}
    .how-journey{margin-top:30px}
    .how-list{display:block}
    .how-li{display:flex;align-items:center;gap:15px;padding:13px 0;border-bottom:1px solid var(--rule)}
    .how-li:last-child{border-bottom:none}
    .how-li-n{flex-shrink:0;width:40px;height:40px;border-radius:50%;border:2px solid var(--accent);color:var(--accent);display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-weight:600;font-size:16px}
    .how-li-t{display:block;font-family:var(--font-serif);font-weight:600;font-size:16px;color:var(--ink);line-height:1.2}
    .how-li-s{display:block;font-family:var(--font-sans);font-size:9.5px;letter-spacing:.12em;color:var(--ink-faint);text-transform:uppercase;margin-top:4px;line-height:1.4}
  }

  /* ==================== WEDGES ==================== */
  .wedges{padding:96px 24px;border-bottom:1px solid var(--rule);background:var(--bg-2)}
  .wedges .inner{max-width:1280px;margin:0 auto}
  .wedge-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:40px}
  @media(max-width:768px){.wedge-grid{grid-template-columns:1fr}}
  .wedge{padding:32px;background:var(--bg);border:1px solid var(--rule);border-radius:8px;transition:border-color .2s}
  .wedge:hover{border-color:var(--accent)}
  .wedge .tag{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
  .wedge h3{font-family:var(--font-serif);font-size:24px;font-weight:600;margin:0 0 10px;letter-spacing:-.01em}
  .wedge h3 em{font-family:var(--font-serif);font-style:italic;color:var(--accent);font-weight:400}
  .wedge p{margin:0 0 14px;color:var(--ink-soft);font-size:14px;line-height:1.6}
  .wedge ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--ink-soft);font-family:var(--font-sans);letter-spacing:.04em}
  .wedge ul li{padding-left:14px;position:relative;line-height:1.5}
  .wedge ul li::before{content:"→";position:absolute;left:0;color:var(--accent)}

  /* ==================== INSTITUTIONAL + BESPOKE ==================== */
  .partnerships{padding:96px 24px;border-bottom:1px solid var(--rule)}
  .partnerships .inner{max-width:1280px;margin:0 auto}
  .pgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:32px}
  @media(max-width:768px){.pgrid{grid-template-columns:1fr}}
  .pcard{padding:36px;background:var(--accent);color:var(--bg);border-radius:8px;display:flex;flex-direction:column;gap:14px;transition:filter .14s}
  .pcard:hover{filter:brightness(1.08)}
  .pcard .tag{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;opacity:.7}
  .pcard h3{font-family:var(--font-serif);font-size:32px;font-weight:600;margin:0;letter-spacing:-.015em;line-height:1.05}
  .pcard p{margin:0;font-family:var(--font-serif);font-style:italic;font-size:16px;line-height:1.5;opacity:.92}
  .pcard .arrow{display:inline-flex;align-items:center;gap:8px;margin-top:8px;font-family:var(--font-sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}

  /* ==================== EARN ==================== */
  .earn{padding:54px 24px;border-bottom:1px solid var(--rule);background:radial-gradient(820px 360px at 14% 0,#FBF7EC,transparent 60%),var(--bg)}
  .earn .inner{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1fr 1.04fr;gap:48px;align-items:center}
  @media(max-width:900px){.earn .inner{grid-template-columns:1fr;gap:32px}}
  .earn .e-eyebrow{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-weight:500}
  .earn h2{font-size:36px;max-width:none;margin:10px 0 0;line-height:1.08}
  .earn h2 em{font-family:var(--font-serif);font-style:italic;color:var(--accent);font-weight:400}
  .earn .e-lede{font-family:var(--font-serif);font-style:italic;font-size:15px;color:var(--ink-soft);margin:12px 0 0;line-height:1.5;max-width:380px}
  .earn .perks{margin:18px 0 0;display:flex;flex-direction:column;gap:9px;list-style:none;padding:0}
  .earn .perk{display:flex;align-items:center;gap:11px;font-size:13.5px;color:var(--ink-soft)}
  .earn .perk .pi{width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--accent);display:flex;align-items:center;justify-content:center;flex:none}
  .earn .perk .pi svg{width:14px;height:14px}
  .earn .earn-cta{display:inline-flex;align-items:center;gap:9px;background:var(--accent);color:var(--bg);font-family:var(--font-sans);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;border-radius:6px;padding:15px 24px;text-decoration:none;margin-top:24px;transition:filter .14s,transform .14s}
  /* Source Scholar callout (student incentive) */
  .scholar{margin-top:20px;padding:16px 18px 14px 22px;background:var(--bg-2);border-left:3px solid var(--accent);border-radius:0 6px 6px 0;position:relative}
  .scholar .sc-eye{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:8px}
  .scholar .sc-eye svg{width:13px;height:13px}
  .scholar .sc-h{font-family:var(--font-serif);font-size:18px;font-weight:600;color:var(--ink);letter-spacing:-.01em;margin-top:5px;line-height:1.25}
  .scholar .sc-h em{font-style:italic;color:var(--accent);font-weight:500}
  .scholar .sc-body{font-family:var(--font-serif);font-size:13.5px;color:var(--ink-soft);margin-top:6px;line-height:1.5}
  .scholar .sc-mech{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}
  .scholar .sc-step{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:var(--bg);border:1px solid var(--rule);padding:5px 9px;border-radius:4px}
  .scholar .sc-step b{font-family:var(--font-serif);font-weight:600;color:var(--accent);font-size:12px;letter-spacing:0;text-transform:none}
  .scholar .sc-arrow{color:var(--ink-faint);font-family:var(--font-mono);font-size:11px}
  .scholar .sc-tag{font-family:var(--font-serif);font-style:italic;font-size:13.5px;color:var(--accent);margin-top:6px;line-height:1.4;letter-spacing:0}
  .scholar .sc-cta{display:inline-block;margin-top:14px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 30%,transparent);padding-bottom:1px;transition:border-color .15s}
  .scholar .sc-cta:hover{border-bottom-color:var(--accent)}
  .earn .earn-cta:hover{filter:brightness(1.08);transform:translateX(3px)}
  .earn .est{background:var(--bg);border:1px solid var(--rule);border-radius:12px;padding:22px 26px 24px;box-shadow:0 24px 56px -34px rgba(40,32,16,.45)}
  .earn .est-h{font-family:var(--font-sans);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);display:flex;justify-content:space-between;align-items:center}
  .earn .est-live{display:inline-flex;align-items:center;gap:6px;color:var(--accent)}
  .earn .est-live .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:estpulse 1.8s infinite}
  @keyframes estpulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 50%,transparent)}70%{box-shadow:0 0 0 7px transparent}100%{box-shadow:0 0 0 0 transparent}}
  .earn .est-num{font-family:var(--font-serif);font-weight:600;font-size:46px;letter-spacing:-.03em;line-height:1;margin:8px 0 2px;color:var(--ink);font-variant-numeric:tabular-nums}
  .earn .est-unit{font-family:var(--font-sans);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}
  .earn .est-sliderwrap{margin:16px 0 6px}
  .earn .est-labels{display:flex;justify-content:space-between;font-family:var(--font-sans);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:12px}
  .earn .est-labels b{color:var(--ink);font-size:13px}
  .earn input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:var(--bg-3);outline:none;cursor:pointer}
  .earn input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:var(--accent);border:3px solid var(--bg);box-shadow:0 2px 8px -1px rgba(4,120,87,.5);cursor:grab}
  .earn input[type=range]::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--accent);border:3px solid var(--bg);box-shadow:0 2px 8px -1px rgba(4,120,87,.5);cursor:grab}
  .earn .est-break{display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px;border-top:1px solid var(--rule);padding-top:14px}
  .earn .est-b{text-align:center;border-right:1px solid var(--rule)}
  .earn .est-b:last-child{border-right:none}
  .earn .est-b b{display:block;font-family:var(--font-serif);font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}
  .earn .est-b span{font-family:var(--font-sans);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}
  .earn .est-foot{font-family:var(--font-sans);font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-top:12px;text-align:center}

  /* ==================== CITIES ==================== */
  .cities{padding:96px 24px;border-bottom:1px solid var(--rule)}
  .cities .inner{max-width:1280px;margin:0 auto}

  /* ==================== TEAM ==================== */
  .team{padding:58px 24px;border-bottom:1px solid var(--rule);background:var(--bg-2)}
  .team .inner{max-width:1180px;margin:0 auto}
  .team-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;margin:48px auto 0;max-width:1080px}
  @media(max-width:900px){.team-grid{grid-template-columns:repeat(3,1fr);max-width:680px}}
  @media(max-width:520px){.team-grid{grid-template-columns:repeat(2,1fr);max-width:420px;gap:20px}}
  .team-member.team-card-btn{display:flex;flex-direction:column;align-items:center;text-align:center;background:transparent;border:1px solid transparent;border-radius:12px;padding:18px 12px 16px;cursor:pointer;font-family:inherit;transition:border-color .18s,background .18s,transform .18s}
  .team-member.team-card-btn:hover{border-color:var(--rule);background:var(--bg-2);transform:translateY(-2px)}
  .team-member.team-card-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
  .team-portrait{width:108px;height:108px;border-radius:50%;margin:0 auto;overflow:hidden;border:1px solid var(--rule);background:linear-gradient(160deg,var(--bg-3),var(--bg-2));display:flex;align-items:flex-end;justify-content:center;box-shadow:0 8px 22px -12px rgba(10,10,10,.18);transition:box-shadow .18s}
  .team-member.team-card-btn:hover .team-portrait{box-shadow:0 12px 28px -10px rgba(10,10,10,.22)}
  .team-portrait svg{width:60%;color:color-mix(in srgb,var(--ink) 22%,var(--bg-3));margin-bottom:-3%}
  .team-portrait img{width:100%;height:100%;object-fit:cover}
  .team-name{font-family:var(--font-serif);font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--ink);margin-top:14px;line-height:1.2}
  .team-role{font-family:var(--font-sans);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-top:4px;font-weight:600}
  .team-readmore{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-top:8px;transition:color .18s}
  .team-member.team-card-btn:hover .team-readmore{color:var(--accent)}
  /* Team bio modal */
  .dl-box.team-bio-box{max-width:600px;max-height:88vh;overflow-y:auto;padding:36px 36px 32px}
  .team-bio-head{display:flex;gap:22px;align-items:center;margin-bottom:18px}
  .team-portrait-lg{width:96px;height:96px;flex-shrink:0;margin:0}
  .team-bio-meta{flex:1;min-width:0;text-align:left}
  .team-bio-meta .dl-h{font-size:24px;margin:0 0 4px}
  .team-bio-role{font-family:var(--font-sans);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:8px}
  .team-bio-li{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);font-size:11px;letter-spacing:.06em;color:var(--ink-soft);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--ink-soft) 25%,transparent);padding-bottom:1px;transition:color .14s}
  .team-bio-li:hover{color:var(--accent);border-bottom-color:var(--accent)}
  .team-bio-body{font-family:var(--font-serif);font-size:15px;color:var(--ink);line-height:1.62;border-top:1px solid var(--rule);padding-top:18px}
  .team-bio-body p{margin:0 0 12px}
  .team-bio-body p:last-child{margin-bottom:0}
  @media(max-width:560px){.dl-box.team-bio-box{padding:28px 22px 26px;max-height:92vh}.team-bio-head{flex-direction:column;text-align:center;gap:14px;align-items:center}.team-portrait-lg{width:104px;height:104px}.team-bio-meta{text-align:center}.team-bio-body{font-size:14.5px}}

  /* ==================== FAQ ==================== */
  .faq{padding:96px 24px;border-bottom:1px solid var(--rule);background:var(--bg)}
  .faq .inner{max-width:880px;margin:0 auto}
  .qa{border-bottom:1px solid var(--rule)}
  .qa:last-child{border-bottom:none}
  .qa summary{padding:22px 0;font-family:var(--font-serif);font-size:20px;font-weight:500;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;letter-spacing:-.005em;transition:color .14s}
  .qa summary::-webkit-details-marker{display:none}
  .qa summary:hover{color:var(--accent)}
  .qa summary::after{content:"+";font-family:var(--font-sans);color:var(--accent);font-size:22px;transition:transform .2s}
  .qa[open] summary::after{transform:rotate(45deg)}
  .qa .a{padding:0 0 22px;color:var(--ink-soft);font-size:15px;line-height:1.7;font-family:var(--font-serif);max-width:768px}


  /* newsletter form (used in footer) */
  .nl-form{display:flex;gap:0;border:1.5px solid var(--accent);border-radius:6px;overflow:hidden;background:var(--bg)}
  .nl-form input{flex:1;border:none;outline:none;padding:14px 16px;font-family:var(--font-serif);font-size:15px;color:var(--ink);background:transparent}
  .nl-form button{background:var(--accent);color:var(--bg);border:none;padding:14px 20px;font-family:var(--font-sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:filter .14s}
  .nl-form button:hover{filter:brightness(1.08)}
  .nl-foot{font-family:var(--font-sans);font-size:10px;color:var(--ink-faint);margin-top:8px;letter-spacing:.04em}
  .nl-mailto{font-family:var(--font-serif);font-style:italic;font-size:12px;color:var(--ink-faint);margin-top:6px;line-height:1.4}
  .nl-mailto a{color:var(--accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}
  .nl-mailto a:hover{border-bottom-color:var(--accent)}
  /* GDPR consent checkbox (shared across all 4 newsletter forms) */
  .nl-consent{display:flex;align-items:flex-start;gap:8px;margin-top:10px;font-family:var(--font-serif);font-size:12px;line-height:1.45;color:var(--ink-soft);cursor:pointer}
  .nl-consent input[type="checkbox"]{flex-shrink:0;width:14px;height:14px;margin-top:2px;accent-color:var(--accent);cursor:pointer}
  .nl-consent > span{flex:1;min-width:0}
  .nl-consent a{color:var(--accent);text-decoration:none;white-space:nowrap;border-bottom:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}
  .nl-consent a:hover{border-bottom-color:var(--accent)}
  /* tighter variant for the cramped Marginalia card + top sticky */
  .marg-card .nl-consent,.topnl-row .nl-consent,.exitm-card .nl-consent{font-size:11px;margin-top:8px}
  .topnl-row .nl-consent{margin-top:0;font-size:11px;color:var(--ink-faint)}
  @media(max-width:768px){.topnl-row .nl-consent{margin-top:4px}}

  /* ==================== FOOTER ==================== */
  footer.bot{padding:64px 24px 28px;background:var(--bg);border-top:1px solid var(--rule);font-family:var(--font-sans);font-size:13px;letter-spacing:0;color:var(--ink-soft)}
  footer.bot .inner{max-width:1280px;margin:0 auto}
  .ftop{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;padding-bottom:40px;border-bottom:1px solid var(--rule);align-items:start}
  @media(max-width:860px){.ftop{grid-template-columns:1fr;gap:36px}}
  .fbrand .logo-img{height:30px}
  .fbrand p{font-family:var(--font-serif);font-style:italic;font-size:15px;line-height:1.55;color:var(--ink-soft);margin:16px 0 0;max-width:420px}
  .fsocial{display:flex;gap:10px;margin-top:20px}
  .fsocial a{width:38px;height:38px;border:1px solid var(--rule);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);transition:border-color .14s,color .14s,background .14s}
  .fsocial a:hover{border-color:var(--accent);color:var(--accent);background:var(--selected)}
  .fsocial svg{width:17px;height:17px}
  .fnl h4{font-family:var(--font-sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin:0 0 4px;font-weight:600}
  .fnl .nlsub{font-family:var(--font-serif);font-style:italic;font-size:14px;color:var(--ink-soft);margin-bottom:14px}
  .fcols{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding:40px 0}
  @media(max-width:860px){.fcols{grid-template-columns:1fr 1fr;gap:32px 24px}}
  .fcol h4{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin:0 0 14px;font-weight:600}
  .fcol ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px}
  .fcol a{color:var(--ink-soft);text-decoration:none;transition:color .14s}
  .fcol a:hover{color:var(--accent)}
  .fbase{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;padding-top:24px;border-top:1px solid var(--rule);font-family:var(--font-sans);font-size:10.5px;letter-spacing:.06em;color:var(--ink-faint)}
  .fbase .legal{display:flex;gap:20px}
  .fbase .legal a{color:var(--ink-faint);text-decoration:none}
  .fbase .legal a:hover{color:var(--accent)}

  @media (prefers-reduced-motion:reduce){
    *,*::before,*::after{animation-duration:.01ms !important;transition-duration:.01ms !important}
    html{scroll-behavior:auto}
    .feed-track{animation:none}
  }
  @media(max-width:1024px){
    .left,.center{border-right:none;border-bottom:1px solid var(--rule)}
    h1.hero{font-size:42px}
    h2{font-size:36px}
  }

  /* ==================== USE-CASES GALLERY (rare documents + antique loupe) ==================== */
  .uc-gallery{--brass1:#F0D89A;--brass2:#B7902f;--brass3:#7a5d22;--brass4:#5a4318;
    margin-top:40px;border:1px solid var(--rule);border-radius:14px;overflow:hidden;background:var(--bg);
    box-shadow:0 40px 90px -50px rgba(30,22,8,.5)}
  .uc-gallery .viewer{display:flex;overflow:hidden;height:404px;background:var(--bg-3)}
  @media(max-width:768px){.uc-gallery .viewer{flex-direction:column;height:auto}}
  .uc-gallery .stage{position:relative;flex:1.95;overflow:hidden;perspective:1600px;min-height:260px;background:var(--bg-3)}
  @media(max-width:768px){.uc-gallery .stage{height:300px}}
  .uc-gallery .plate{position:absolute;inset:0;transform-origin:left center;backface-visibility:hidden}
  .uc-gallery .plate.flip{animation:ucbFlip .34s cubic-bezier(.4,0,.2,1)}
  @keyframes ucbFlip{0%{transform:rotateY(-70deg);filter:brightness(.7)}100%{transform:rotateY(0);filter:brightness(1)}}
  .uc-gallery .docimg{position:absolute;inset:0;background-size:cover;background-position:center}
  .uc-gallery .spine{position:absolute;left:0;top:0;bottom:0;width:46px;z-index:4;pointer-events:none;
    background:linear-gradient(90deg,rgba(20,14,4,.5),rgba(20,14,4,.16) 45%,transparent)}
  .uc-gallery .frameln{position:absolute;inset:14px;border:1px solid rgba(10,10,10,.10);border-radius:4px;z-index:5;pointer-events:none}
  .uc-gallery .hint{position:absolute;top:16px;left:16px;z-index:7;display:flex;align-items:center;gap:7px;pointer-events:none;
    font-family:var(--font-sans);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);
    background:rgba(255,255,255,.86);border:1px solid var(--rule);border-radius:6px;padding:5px 9px}
  .uc-gallery .hint svg{width:12px;height:12px;color:var(--accent)}
  .uc-gallery .label{flex:1;min-width:248px;padding:32px;display:flex;flex-direction:column;justify-content:center;
    background:var(--bg-2);border-left:1px solid var(--rule);color:var(--ink)}
  .uc-gallery .label .tag{font-family:var(--font-sans);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
  .uc-gallery .label .nm{font-family:var(--font-serif);font-size:26px;font-weight:600;letter-spacing:-.01em;color:var(--ink);margin-top:7px;line-height:1.08}
  .uc-gallery .label .nm em{font-family:var(--font-serif);font-style:italic;font-weight:400;color:var(--accent)}
  .uc-gallery .label .one{color:var(--ink-soft);font-size:13px;line-height:1.5;margin-top:9px}
  .uc-gallery .ilist{list-style:none;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:11px}
  .uc-gallery .ilist li{display:flex;align-items:center;gap:12px;font-size:12.5px;line-height:1.35;color:var(--ink-soft)}
  .uc-gallery .ilist .lic{flex:none;width:28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--accent) 9%,transparent);
    color:var(--accent);display:flex;align-items:center;justify-content:center}
  .uc-gallery .ilist .lic svg{width:15px;height:15px}
  .uc-gallery .loupe{position:absolute;left:0;top:0;z-index:9;pointer-events:none;width:176px;height:176px;opacity:0;transition:opacity .3s}
  .uc-gallery .loupe.show{opacity:1}
  .uc-gallery .loupe .float{position:absolute;inset:0}
  .uc-gallery .handle{position:absolute;left:120px;top:120px;width:132px;height:24px;transform-origin:6px 12px;transform:rotate(38deg);z-index:1}
  .uc-gallery .handle .ferrule{position:absolute;left:0;top:1px;width:34px;height:22px;border-radius:6px;
    background:linear-gradient(180deg,var(--brass1),var(--brass2) 52%,var(--brass4));
    box-shadow:inset 0 1px 2px rgba(255,255,255,.55),inset 0 -2px 3px rgba(0,0,0,.3),0 3px 6px rgba(0,0,0,.4)}
  .uc-gallery .handle .wood{position:absolute;left:30px;top:3px;width:102px;height:18px;border-radius:4px 10px 10px 4px;
    background:linear-gradient(180deg,#8a5026,#5e3315 52%,#3f230f);
    box-shadow:inset 0 2px 3px rgba(255,210,160,.3),inset 0 -3px 5px rgba(0,0,0,.45),0 6px 12px -4px rgba(0,0,0,.5)}
  .uc-gallery .handle .wood::after{content:"";position:absolute;inset:0;border-radius:4px 10px 10px 4px;
    background:repeating-linear-gradient(91deg,transparent 0 8px,rgba(0,0,0,.08) 9px 11px)}
  .uc-gallery .lens{position:absolute;left:0;top:0;width:176px;height:176px;border-radius:50%;overflow:hidden;z-index:2;
    background-color:#efe7d4;background-repeat:no-repeat;
    box-shadow:inset 0 0 26px rgba(30,20,6,.4),inset 0 8px 16px rgba(255,255,255,.4),inset 0 -10px 18px rgba(0,0,0,.18)}
  .uc-gallery .glare{position:absolute;left:0;top:0;width:176px;height:176px;border-radius:50%;z-index:3;pointer-events:none;
    background:radial-gradient(110px 80px at 32% 24%,rgba(255,255,255,.6),rgba(255,255,255,.1) 40%,transparent 62%)}
  .uc-gallery .rim{position:absolute;left:-7px;top:-7px;width:190px;height:190px;border-radius:50%;z-index:4;pointer-events:none;
    background:conic-gradient(from 210deg,var(--brass4),var(--brass1) 16%,var(--brass2) 34%,var(--brass1) 52%,var(--brass3) 70%,var(--brass1) 86%,var(--brass4));
    -webkit-mask:radial-gradient(transparent 0 88px,#000 89px);mask:radial-gradient(transparent 0 88px,#000 89px);box-shadow:0 10px 26px -6px rgba(0,0,0,.6)}
  .uc-gallery .rim::after{content:"";position:absolute;inset:11px;border-radius:50%;border:1px solid rgba(50,34,8,.4)}
  .uc-gallery .strip{display:grid;grid-template-columns:repeat(4,1fr);background:var(--bg-2);border-top:1px solid var(--rule)}
  @media(max-width:768px){.uc-gallery .strip{grid-template-columns:repeat(2,1fr)}}
  .uc-gallery .film{display:grid;grid-template-columns:54px 1fr;gap:14px;align-items:center;cursor:pointer;text-align:left;
    padding:18px 20px;font:inherit;background:none;border:none;border-right:1px solid var(--rule);position:relative;transition:background .18s}
  .uc-gallery .film:last-child{border-right:none}
  @media(max-width:768px){.uc-gallery .film:nth-child(2){border-right:none}.uc-gallery .film:nth-child(-n+2){border-bottom:1px solid var(--rule)}}
  .uc-gallery .film:hover{background:rgba(4,120,87,.05)}
  .uc-gallery .film::before{content:"";position:absolute;left:0;right:0;top:-1px;height:3px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .22s}
  .uc-gallery .film[aria-current="true"]::before{transform:scaleX(1)}
  .uc-gallery .film[aria-current="true"]{background:var(--bg)}
  .uc-gallery .film .th{width:54px;height:70px;border-radius:5px;overflow:hidden;position:relative;flex:none;
    box-shadow:0 6px 14px -7px rgba(40,30,12,.6);border:1px solid var(--rule-hi)}
  .uc-gallery .film .th i{position:absolute;inset:0;background-size:cover;background-position:center top}
  .uc-gallery .film .th::after{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(90deg,rgba(20,14,4,.4),transparent)}
  .uc-gallery .film .code{font-family:var(--font-sans);font-size:9px;letter-spacing:.12em;color:var(--ink-faint)}
  .uc-gallery .film .tag{font-family:var(--font-sans);font-size:8.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);display:block;margin-top:3px}
  .uc-gallery .film .nm{font-family:var(--font-serif);font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--ink);margin-top:2px;line-height:1.15}
  .uc-gallery .film[aria-current="true"] .nm{color:var(--accent)}
  @media (prefers-reduced-motion:no-preference){.uc-gallery .loupe.idle .float{animation:ucbBob 5s ease-in-out infinite}}
  @keyframes ucbBob{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(-1deg)}}
  /* dissolved institutional + bespoke CTAs */
  .ib-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;border-radius:6px;padding:13px 20px;text-decoration:none;transition:filter .14s,border-color .14s,color .14s;white-space:nowrap}
  .ib-btn.solid{background:var(--accent);color:var(--bg)}
  .ib-btn.solid:hover{filter:brightness(1.08)}
  .ib-btn.ghost{border:1px solid var(--rule);color:var(--ink);background:var(--bg)}
  .ib-btn.ghost:hover{border-color:var(--accent);color:var(--accent)}
  .inst-attach{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;text-align:left;margin-top:30px;padding-top:24px;border-top:1px solid var(--rule)}
  .inst-attach .ia-txt{font-family:var(--font-serif);font-size:17px;color:var(--ink);max-width:640px}
  .bespoke-bar{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:8px;padding:22px 26px;background:var(--bg-2);border:1px solid var(--rule);border-radius:8px}
  .bespoke-bar .bb-txt{font-family:var(--font-serif);font-style:italic;font-size:16px;color:var(--ink-soft);max-width:600px}
  /* closing CTA (get the app) */
  .closing-cta{padding:72px 24px;background:var(--accent);color:#fff;text-align:center;border-bottom:1px solid var(--rule)}
  .closing-cta .inner{max-width:720px;margin:0 auto}
  .closing-cta .cc-eyebrow{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.75)}
  .closing-cta h2{font-family:var(--font-serif);font-size:40px;font-weight:600;letter-spacing:-.022em;line-height:1.05;margin:12px auto 0;color:#fff;max-width:none}
  .closing-cta h2 em{font-family:var(--font-serif);font-style:italic;font-weight:400;color:#cdeede}
  .closing-cta .cc-sub{font-family:var(--font-serif);font-style:italic;font-size:16px;color:rgba(255,255,255,.9);margin:14px auto 0;line-height:1.5;max-width:520px}
  .closing-cta .cc-stores{display:flex;gap:14px;justify-content:center;margin-top:28px;flex-wrap:wrap}
  .closing-cta .cc-store{display:inline-flex;align-items:center;gap:11px;background:#fff;color:var(--ink);border-radius:9px;padding:10px 20px;text-decoration:none;box-shadow:0 1px 0 rgba(0,0,0,.05);transition:transform .14s,box-shadow .14s}
  .closing-cta .cc-store:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.16)}
  .closing-cta .cc-store svg{width:24px;height:24px;color:var(--ink);flex:none}
  .closing-cta .cc-store-l{display:flex;flex-direction:column;line-height:1.08;text-align:left}
  .closing-cta .cc-store-h{font-family:var(--font-sans);font-size:10px;font-weight:500;letter-spacing:.01em;color:var(--ink-soft)}
  .closing-cta .cc-store-l strong{font-family:var(--font-sans);font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}

  /* === CRO: scroll-depth newsletter card (The Paper Trails) === */
  .marg-card{position:fixed;right:24px;bottom:24px;width:340px;max-width:calc(100vw - 32px);background:var(--bg);border:1px solid var(--rule-hi);border-left:3px solid var(--accent);border-radius:8px;padding:18px 18px 16px;box-shadow:0 16px 40px -16px rgba(10,10,10,.28);z-index:90;transform:translateY(140%);opacity:0;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .35s;font-family:var(--font-sans)}
  .marg-card.live{transform:translateY(0);opacity:1}
  .marg-card .marg-x{position:absolute;top:8px;right:9px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--ink-faint);font-size:18px;line-height:1;cursor:pointer;border-radius:4px}
  .marg-card .marg-x:hover{color:var(--ink);background:var(--bg-2)}
  .marg-card .marg-h{font-family:var(--font-serif);font-style:italic;font-size:22px;font-weight:500;color:var(--ink);letter-spacing:-.01em;line-height:1}
  .marg-card .marg-sub{font-family:var(--font-serif);font-size:13.5px;color:var(--ink-soft);margin-top:8px;line-height:1.5}
  .marg-card .marg-form{display:flex;margin-top:14px;border:1px solid var(--accent);border-radius:5px;overflow:hidden}
  .marg-card .marg-form input{flex:1;border:none;outline:none;padding:10px 12px;font-family:var(--font-serif);font-size:14px;color:var(--ink);background:transparent;min-width:0}
  .marg-card .marg-form button{background:var(--accent);color:#fff;border:none;padding:10px 14px;font-family:var(--font-sans);font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;cursor:pointer}
  .marg-card .marg-foot{margin-top:8px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;color:var(--ink-faint)}
  @media(max-width:1024px){.marg-card{bottom:calc(120px + env(safe-area-inset-bottom))}}
  @media(max-width:640px){.marg-card{right:12px;left:12px;width:auto}}
  @media (prefers-reduced-motion:reduce){.marg-card{transition:none}}

  /* === CRO: D · slim top-of-page sticky === */
  /* topnl is a fixed overlay · does NOT push body content, so it cannot cause CLS */
  .topnl{position:fixed;left:0;right:0;top:0;z-index:95;display:block;background:var(--bg);border-bottom:1px solid var(--rule);font-family:var(--font-sans);transform:translateY(-100%);transition:transform .35s cubic-bezier(.22,1,.36,1);visibility:hidden}
  .topnl.live{transform:translateY(0);visibility:visible}
  .topnl-row{display:flex;align-items:center;justify-content:center;gap:14px;padding:9px 56px 9px 18px;max-width:980px;margin:0 auto;position:relative}
  .topnl-text{font-family:var(--font-serif);font-size:13.5px;color:var(--ink);line-height:1.2}
  .topnl-text em{font-style:italic;color:var(--accent);font-weight:500}
  .topnl-mailto{color:var(--ink-faint);text-decoration:none;font-size:12.5px;margin-left:4px;border-bottom:1px solid color-mix(in srgb,var(--ink-faint) 30%,transparent)}
  .topnl-mailto:hover{color:var(--accent);border-bottom-color:var(--accent)}
  .topnl-form{display:flex;border:1px solid var(--accent);border-radius:5px;overflow:hidden;background:var(--bg);width:280px;max-width:280px;flex:0 0 auto;min-width:0}
  .topnl-form input{flex:1 1 auto;min-width:0;border:none;outline:none;padding:6px 10px;font-family:var(--font-serif);font-size:13px;color:var(--ink);background:transparent}
  .topnl-form button{background:var(--accent);color:#fff;border:none;padding:6px 14px;font-family:var(--font-sans);font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;cursor:pointer;flex:0 0 auto;white-space:nowrap}
  .topnl-x{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--ink-faint);font-size:18px;line-height:1;cursor:pointer;border-radius:4px}
  .topnl-x:hover{color:var(--ink);background:var(--bg-2)}
  .topnl-row .nl-consent{flex:1 1 auto;min-width:0;white-space:normal;line-height:1.3}
  .topnl-text{flex:1 1 auto;min-width:0}
  @media(max-width:1100px){.topnl-mailto{display:none}}
  @media(max-width:980px){.topnl-row{flex-wrap:wrap;justify-content:flex-start;gap:10px 14px}.topnl-text{flex-basis:100%;text-align:left}}
  @media(max-width:640px){.topnl-row{flex-direction:column;align-items:stretch;gap:8px;padding:10px 44px 10px 14px}.topnl-text{text-align:center}.topnl-form{max-width:none;width:100%}}
  @media (prefers-reduced-motion:reduce){.topnl{transition:none}}

  /* === CRO: B · centred exit-intent modal (desktop) === */
  .exitm{position:fixed;inset:0;z-index:120;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(10,10,10,.55);opacity:0;transition:opacity .25s}
  .exitm.live{display:flex;opacity:1}
  .exitm-card{background:var(--bg);border:1px solid var(--rule-hi);border-radius:10px;padding:34px 36px 28px;width:460px;max-width:100%;box-shadow:0 30px 60px -22px rgba(10,10,10,.5);position:relative;transform:translateY(12px);transition:transform .35s cubic-bezier(.22,1,.36,1);font-family:var(--font-sans)}
  .exitm.live .exitm-card{transform:translateY(0)}
  .exitm-x{position:absolute;top:10px;right:12px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--ink-faint);font-size:20px;line-height:1;cursor:pointer;border-radius:4px}
  .exitm-x:hover{color:var(--ink);background:var(--bg-2)}
  .exitm-eyebrow{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
  .exitm-h{font-family:var(--font-serif);font-size:28px;font-weight:600;letter-spacing:-.015em;line-height:1.1;color:var(--ink);margin-top:8px}
  .exitm-h em{font-style:italic;font-weight:400;color:var(--accent)}
  .exitm-sub{font-family:var(--font-serif);font-size:15px;color:var(--ink-soft);margin-top:12px;line-height:1.55}
  .exitm-form{display:flex;margin-top:18px;border:1px solid var(--accent);border-radius:6px;overflow:hidden}
  .exitm-form input{flex:1;border:none;outline:none;padding:12px 14px;font-family:var(--font-serif);font-size:15px;color:var(--ink);background:transparent;min-width:0}
  .exitm-form button{background:var(--accent);color:#fff;border:none;padding:12px 18px;font-family:var(--font-sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;cursor:pointer;white-space:nowrap}
  .exitm-foot{margin-top:10px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;color:var(--ink-faint)}
  @media (prefers-reduced-motion:reduce){.exitm,.exitm-card{transition:none}}

  /* === CRO: sticky bottom CTA bar (all viewports) === */
  .mcta{position:fixed;left:0;right:0;bottom:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--rule-hi);box-shadow:0 -8px 24px -16px rgba(10,10,10,.18);display:block;z-index:80;font-family:var(--font-sans);transform:translateY(100%);transition:transform .35s ease-out}
  .mcta.live{transform:translateY(0)}
  .mcta-row{display:flex;align-items:center;gap:14px;max-width:920px;margin:0 auto}
  .mcta-msg{font-family:var(--font-serif);font-size:14px;color:var(--ink);line-height:1.3;flex:1;min-width:0}
  .mcta-msg em{font-style:italic;color:var(--accent);font-weight:500}
  .mcta-btns{display:flex;gap:10px;flex-shrink:0}
  .mcta-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:6px;font-size:13px;font-weight:600;letter-spacing:.01em;text-decoration:none;transition:filter .14s,transform .14s;white-space:nowrap}
  .mcta-btn.primary{background:var(--accent);color:#fff;border:1px solid var(--accent)}
  .mcta-btn.ghost{background:var(--bg);color:var(--ink);border:1px solid var(--rule-hi)}
  .mcta-btn:hover{filter:brightness(1.04);transform:translateY(-1px)}
  .mcta-btn:active{filter:brightness(.94);transform:translateY(0)}
  @media(max-width:768px){.mcta-row{flex-direction:column;align-items:stretch;gap:8px}.mcta-msg{text-align:center;font-size:13px}.mcta-btns{width:100%}.mcta-btn{flex:1;padding:11px 10px}}
  @media (prefers-reduced-motion:reduce){.mcta,.mcta-btn{transition:none}}

  /* ==================== shared utilities + secondary-page polish ==================== */
  .vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;margin:-1px}
  /* footer headings at correct semantic levels, styled like the original h4 labels */
  .fnl h2{font-family:var(--font-sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin:0 0 4px;font-weight:600}
  .fcol h3{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin:0 0 14px;font-weight:600}
  /* FAQ accordion: visible focus + gentle open animation */
  .qa summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
  .qa[open] .a{animation:faqopen .26s cubic-bezier(.22,1,.36,1)}
  @keyframes faqopen{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
  @media (prefers-reduced-motion:reduce){.qa[open] .a{animation:none}}

  /* ==================== spreadsheet chrome (secondary pages) ==================== */
  .sheetbar{display:flex;align-items:stretch;border-bottom:1px solid var(--rule);background:var(--bg-2);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);position:sticky;top:51px;z-index:40}
  .sheetbar .cellref{padding:9px 14px;border-right:1px solid var(--rule);color:var(--accent);font-weight:600;background:var(--bg);min-width:84px}
  .sheetbar .fx{display:flex;align-items:center;gap:8px;padding:9px 14px;flex:1;min-width:0;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .sheetbar .fx b{color:var(--ink);font-weight:600}
  .sheetbar .count{padding:9px 14px;border-left:1px solid var(--rule);color:var(--ink-faint)}
  @media(max-width:600px){.sheetbar .count{display:none}}
  /* worksheet tabs */
  .xltabs{display:flex;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--bg-2);font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;overflow-x:auto}
  .xltabs a{padding:11px 18px;border-right:1px solid var(--rule);color:var(--ink-soft);white-space:nowrap;transition:background .15s,color .15s;display:flex;align-items:center;gap:7px}
  .xltabs a::before{content:"";width:7px;height:7px;border-radius:1px;background:var(--rule-hi)}
  .xltabs a:hover{background:var(--bg);color:var(--ink);text-decoration:none}
  .xltabs a.on{background:var(--bg);color:var(--ink);font-weight:600;box-shadow:inset 0 2px 0 var(--accent)}
  .xltabs a.on::before{background:var(--accent)}
  /* cell grid + hatch fill for empty/placeholder cells */
  .hatch{background:repeating-linear-gradient(135deg,transparent,transparent 8px,color-mix(in srgb,var(--accent) 4%,transparent) 8px,color-mix(in srgb,var(--accent) 4%,transparent) 9px)}
  .xlnum{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink-faint)}
