  :root{
    --bg:#0c0e12;
    --bg-elev:#11141a;
    --bg-card:#13171e;
    --line:rgba(255,255,255,.08);
    --line-strong:rgba(255,255,255,.16);
    --text:#e8e6e0;
    --text-dim:#a8a39a;
    --muted:#6f6b62;
    --accent:#2e90ff;
    --accent-soft:rgba(46,144,255,.10);
    --accent-line:rgba(46,144,255,.30);
    --primary:#5cbf95;
    --primary-soft:rgba(92,191,149,.10);
    --primary-line:rgba(92,191,149,.30);
    --warn:#c9a04a;
    --ok:#7ea888;
    --display:'Playfair Display', Georgia, serif;
    --ui:'Inter', system-ui, sans-serif;
    --mono:'JetBrains Mono', ui-monospace, Menlo, monospace;
  }
  *{box-sizing:border-box}
  html,body{margin:0;padding:0}
  body{
    background:var(--bg);
    color:var(--text);
    font-family:var(--ui);
    font-weight:300;
    line-height:1.55;
    font-size:16px;
    -webkit-font-smoothing:antialiased;
    background-image:
      radial-gradient(1200px 700px at 80% -10%, rgba(46,144,255,.06), transparent 60%),
      linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
    background-size:auto, 56px 56px, 56px 56px;
    background-position:0 0, 0 0, 0 0;
  }
  a{color:inherit;text-decoration:none}
  h1,h2,h3,h4{font-family:var(--display);font-weight:300;letter-spacing:-.01em;margin:0}
  h1{font-size:clamp(40px,5.8vw,84px);line-height:1.02}
  h2{font-size:clamp(28px,3.6vw,46px);line-height:1.08}
  h3{font-size:clamp(20px,2vw,26px);line-height:1.2}
  h4{font-size:18px;line-height:1.3}
  p{margin:0 0 1em 0;color:var(--text)}
  .container{max-width:1240px;margin:0 auto;padding:0 28px}
  .narrow{max-width:880px;margin:0 auto;padding:0 28px}
  .eyebrow{
    font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:.22em;
    text-transform:uppercase;color:var(--accent);
  }
  .eyebrow.muted{color:var(--text-dim)}
  .lead{font-size:19px;line-height:1.6;color:var(--text-dim);font-weight:300}
  .kicker{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
  hr.rule{border:0;border-top:1px solid var(--line);margin:80px 0}

  /* Nav */
  .nav{
    position:sticky;top:0;z-index:50;
    backdrop-filter:saturate(120%) blur(14px);
    background:rgba(12,14,18,.78);
    border-bottom:1px solid var(--line);
  }
  .nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px;gap:24px}
  .brand{display:flex;align-items:center;gap:12px;font-family:var(--display);font-size:20px}
  .brand .logo{width:28px;height:28px;display:inline-block;flex-shrink:0}
  .brand .logo svg{width:100%;height:100%;display:block}
  .brand small{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--muted);text-transform:uppercase;margin-left:10px}
  .nav-links{display:flex;align-items:center;gap:26px;font-size:14px;color:var(--text-dim)}
  .nav-links a:hover{color:var(--text)}
  .nav-links .group{position:relative}
  .nav-links .group > span{cursor:default}
  .menu{
    position:absolute;top:30px;left:-18px;min-width:260px;
    background:var(--bg-elev);border:1px solid var(--line);border-radius:6px;
    padding:14px;display:none;flex-direction:column;gap:10px;
  }
  .nav-links .group:hover .menu{display:flex}
  .menu a{font-size:13.5px;color:var(--text);padding:6px 8px;border-radius:4px}
  .menu a small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
  .menu a:hover{background:rgba(255,255,255,.04);color:var(--accent)}
  .btn{
    display:inline-flex;align-items:center;gap:10px;
    padding:11px 18px;border:1px solid var(--accent-line);border-radius:2px;
    color:var(--text);background:var(--accent-soft);
    font-size:13.5px;letter-spacing:.02em;cursor:pointer;
    transition:all .18s ease;
  }
  .btn:hover{background:var(--accent);border-color:var(--accent);color:#0c0e12}
  .btn.ghost{background:transparent;border-color:var(--line-strong)}
  .btn.ghost:hover{background:rgba(255,255,255,.04);color:var(--text);border-color:var(--text-dim)}
  .btn .arrow{font-family:var(--mono);transition:transform .2s}
  .btn:hover .arrow{transform:translateX(3px)}
  .burger{display:none;background:none;border:0;color:var(--text);font-size:22px;cursor:pointer}

  /* Hero */
  .hero{padding:120px 0 100px 0;position:relative;overflow:hidden}
  .hero-tag{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--line-strong);padding:6px 12px;border-radius:99px;margin-bottom:28px}
  .hero-tag .pulse{width:7px;height:7px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 0 rgba(46,144,255,.6);animation:pulse 2s infinite}
  @keyframes pulse{
    0%{box-shadow:0 0 0 0 rgba(46,144,255,.6)}
    70%{box-shadow:0 0 0 10px rgba(46,144,255,0)}
    100%{box-shadow:0 0 0 0 rgba(46,144,255,0)}
  }
  .hero h1{max-width:1100px}
  .hero h1 em, h1 em, h2 em, .section-head h2 em, .deep-dive .head h2 em{font-style:italic;color:var(--primary);font-weight:400}

  /* Drucker epigraph (replaces hero meta strip) */
  .epigraph{margin-top:64px;padding-top:48px;border-top:1px solid var(--line);max-width:780px}
  .epigraph .quote{font-family:var(--display);font-style:italic;font-weight:400;font-size:clamp(20px,2vw,26px);line-height:1.5;color:var(--text);max-width:720px}
  .epigraph .quote::before{content:'\201C';font-family:var(--display);color:var(--primary);font-size:1.1em;margin-right:.05em}
  .epigraph .quote::after{content:'\201D';font-family:var(--display);color:var(--primary);font-size:1.1em;margin-left:.05em}
  .epigraph .attrib{margin-top:20px;font-family:var(--mono);font-size:11px;color:var(--accent);text-transform:uppercase;letter-spacing:.22em}

  /* Category Topology Diagram (What We Are Not) */
  .topology-wrap{display:flex;justify-content:center;margin:48px auto 12px auto}
  .topology{max-width:480px;width:100%;height:auto;display:block}
  .topology text{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase}

  /* 5-Act Cycle small loop diagram */
  .cycle-loop-wrap{display:flex;justify-content:center;margin-top:48px}
  .cycle-loop{max-width:300px;width:100%;height:auto;display:block;opacity:.95}
  .cycle-loop text{font-family:var(--mono);font-size:8.5px;letter-spacing:.14em;text-transform:uppercase}

  /* Public ESI Application — replaces anonymized case */
  .public-app .head .anon{color:var(--primary)}
  .public-app .frame-note{padding:24px 32px;background:var(--primary-soft);border-left:2px solid var(--primary);font-size:14px;line-height:1.65;color:var(--text);font-family:var(--display);font-style:italic;font-weight:400;margin-bottom:0}
  .public-app .frame-note small{display:block;margin-top:10px;font-family:var(--mono);font-style:normal;font-size:10.5px;color:var(--muted);letter-spacing:.16em;text-transform:uppercase}
  .public-app .sources{padding:24px 40px;border-top:1px solid var(--line);background:rgba(255,255,255,.015);font-size:12.5px;line-height:1.7;color:var(--text-dim)}
  .public-app .sources h5{font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-weight:400;margin:0 0 10px 0}

  /* How we work — three modes (replaces priced ladder) */
  .modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:36px}
  .mode{padding:34px 30px;border:1px solid var(--line);background:var(--bg-card);border-radius:2px;display:flex;flex-direction:column}
  .mode .tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;color:var(--accent);text-transform:uppercase;margin-bottom:18px}
  .mode h3{font-family:var(--display);font-size:30px;color:var(--text);margin-bottom:14px;font-weight:400;line-height:1.15}
  .mode p{font-size:14.5px;color:var(--text-dim);line-height:1.65;margin:0}
  .pricing-note{margin-top:36px;padding:24px 30px;border:1px dashed var(--line-strong);font-size:13.5px;color:var(--text-dim);line-height:1.65;font-style:italic;max-width:800px;border-radius:2px}

  /* Manifest long-form chapters */
  .manifest-body{margin-top:48px;max-width:760px}
  .manifest-body .chap{padding:32px 0;border-bottom:1px solid var(--line)}
  .manifest-body .chap:last-child{border-bottom:0}
  .manifest-body .chap .ch-n{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.22em}
  .manifest-body .chap h3{font-family:var(--display);font-size:28px;color:var(--text);margin:10px 0 18px 0;font-weight:400;line-height:1.2}
  .manifest-body .chap p{font-size:16px;line-height:1.75;color:var(--text-dim);margin:0 0 16px 0}
  .manifest-body .chap p strong{color:var(--text);font-weight:400}
  .manifest-byline{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:36px;padding-top:28px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.14em}
  .manifest-byline span{color:var(--text-dim)}
  .hero .sub{margin-top:32px;max-width:780px;font-size:21px;line-height:1.55;color:var(--text-dim)}
  .hero-meta{display:flex;flex-wrap:wrap;gap:36px;margin-top:56px;padding-top:36px;border-top:1px solid var(--line)}
  .hero-meta div{flex:1;min-width:180px}
  .hero-meta .k{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--muted);text-transform:uppercase;margin-bottom:8px}
  .hero-meta .v{font-family:var(--display);font-size:22px;color:var(--text)}
  .hero-cta{margin-top:40px;display:flex;gap:14px;flex-wrap:wrap}
  .hero-microproof{
    margin-top:22px;display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;
    font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.14em;
    text-transform:uppercase;max-width:760px;
  }
  .hero-microproof .mp-item{display:inline-flex;align-items:center;gap:6px}
  .hero-microproof .mp-item::before{content:'';width:4px;height:4px;background:var(--accent);border-radius:50%;display:inline-block}
  .hero-microproof .mp-item:first-child{color:var(--text-dim)}
  .hero-microproof .mp-item:first-child::before{background:var(--primary);width:6px;height:6px}

  /* You-may-need-ESI symptom block (right after hero) */
  #symptoms{padding:80px 0 96px 0;border-top:1px solid var(--line);background:linear-gradient(180deg, rgba(46,144,255,.025), transparent 70%)}
  .symptoms-head{display:flex;align-items:baseline;gap:24px;flex-wrap:wrap;margin-bottom:36px;max-width:920px}
  .symptoms-head .eyebrow{flex-shrink:0}
  .symptoms-lead{
    font-family:var(--display);font-size:clamp(22px,2.4vw,30px);font-weight:400;
    line-height:1.35;color:var(--text);max-width:880px;
  }
  .symptoms-lead em{font-style:italic;color:var(--primary);font-weight:400}
  .symptoms-grid{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:0;border-top:1px solid var(--line);margin-top:8px;
  }
  .symptoms-grid .symptom{
    padding:24px 30px 24px 0;border-bottom:1px solid var(--line);
    display:flex;gap:16px;align-items:flex-start;
  }
  .symptoms-grid .symptom .num{
    font-family:var(--mono);font-size:11px;color:#ff5b5b;
    letter-spacing:.18em;flex-shrink:0;min-width:30px;padding-top:2px;
    animation:symptomPulse 2.6s ease-in-out infinite;
  }
  .symptoms-grid .symptom .txt{font-size:15.5px;color:var(--text-dim);line-height:1.6}
  .symptoms-grid .symptom .txt strong{
    color:#ff5b5b;font-weight:400;
    animation:symptomPulse 2.6s ease-in-out infinite;
  }
  /* Stagger the pulse across the six symptoms so they don't all flash in sync */
  .symptoms-grid .symptom:nth-child(1) .num,
  .symptoms-grid .symptom:nth-child(1) .txt strong{animation-delay:0s}
  .symptoms-grid .symptom:nth-child(2) .num,
  .symptoms-grid .symptom:nth-child(2) .txt strong{animation-delay:.4s}
  .symptoms-grid .symptom:nth-child(3) .num,
  .symptoms-grid .symptom:nth-child(3) .txt strong{animation-delay:.8s}
  .symptoms-grid .symptom:nth-child(4) .num,
  .symptoms-grid .symptom:nth-child(4) .txt strong{animation-delay:1.2s}
  .symptoms-grid .symptom:nth-child(5) .num,
  .symptoms-grid .symptom:nth-child(5) .txt strong{animation-delay:1.6s}
  .symptoms-grid .symptom:nth-child(6) .num,
  .symptoms-grid .symptom:nth-child(6) .txt strong{animation-delay:2.0s}
  @keyframes symptomPulse{
    0%,100%{text-shadow:0 0 0 rgba(255,91,91,0);color:#ff5b5b}
    50%    {text-shadow:0 0 14px rgba(255,91,91,.55), 0 0 28px rgba(255,91,91,.22);color:#ff7d7d}
  }
  @media (prefers-reduced-motion: reduce){
    .symptoms-grid .symptom .num,
    .symptoms-grid .symptom .txt strong{animation:none}
  }
  .symptoms-foot{
    margin-top:28px;font-family:var(--mono);font-size:12px;color:var(--muted);
    letter-spacing:.1em;line-height:1.6;max-width:680px;
  }
  .symptoms-foot a{color:var(--accent);border-bottom:1px solid var(--accent-line)}
  @media (max-width:760px){
    #symptoms{padding:56px 0 64px 0}
    .symptoms-grid{grid-template-columns:1fr}
  }

  /* What you get in 3 weeks — concrete deliverables grid */
  .deliverables{margin-top:48px}
  .deliverables-head{display:flex;align-items:baseline;gap:22px;flex-wrap:wrap;margin-bottom:24px}
  .deliverables-head .tag{
    font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;
    color:var(--primary);text-transform:uppercase;
    padding:4px 10px;border:1px solid var(--primary-line);border-radius:2px;
  }
  .deliverables-head h3{
    font-family:var(--display);font-size:28px;color:var(--text);font-weight:400;
    line-height:1.2;margin:0;
  }
  .deliverables-grid{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:0;border:1px solid var(--line);background:var(--bg-card);border-radius:2px;
    overflow:hidden;
  }
  .deliverables-grid .deliv{
    padding:24px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);
    display:flex;flex-direction:column;gap:8px;background:var(--bg-card);
  }
  .deliverables-grid .deliv .d-num{
    font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--accent);
  }
  .deliverables-grid .deliv h4{
    font-family:var(--display);font-size:19px;font-weight:400;color:var(--text);
    line-height:1.25;margin:0;
  }
  .deliverables-grid .deliv p{
    font-size:13.5px;color:var(--text-dim);line-height:1.55;margin:4px 0 0 0;
  }
  /* Linkable deliverable card (deep-links into Pattern Library) */
  a.deliv{
    color:inherit;text-decoration:none;
    border-top:1px solid transparent;
    transition:background .2s ease,border-color .2s ease;
    position:relative;
  }
  a.deliv:hover{background:rgba(46,144,255,.05)}
  a.deliv:hover h4{color:var(--accent)}
  a.deliv .deliv-link{
    margin-top:auto;padding-top:14px;
    font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;
    text-transform:uppercase;color:var(--accent);
    display:inline-flex;align-items:center;gap:6px;
  }
  a.deliv .deliv-link::after{content:'→';transition:transform .2s ease}
  a.deliv:hover .deliv-link::after{transform:translateX(3px)}
  .deliverables-foot{
    margin-top:18px;font-family:var(--mono);font-size:11.5px;color:var(--muted);
    letter-spacing:.1em;line-height:1.65;max-width:760px;
  }
  @media (max-width:760px){
    .deliverables-grid{grid-template-columns:1fr}
    .deliverables-grid .deliv{border-right:0}
  }

  /* Commercial bridge CTA — used after Pattern Library, Public App, Diagnostic Mirror, Manifest */
  .bridge-cta{
    margin-top:64px;padding:32px 40px;border:1px solid var(--accent-line);
    background:linear-gradient(180deg, rgba(46,144,255,.05), rgba(46,144,255,.01));
    border-radius:2px;display:flex;align-items:center;justify-content:space-between;
    gap:32px;flex-wrap:wrap;
  }
  .bridge-cta .bc-text{flex:1;min-width:260px}
  .bridge-cta .bc-text .bc-eyebrow{
    font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;
    color:var(--accent);text-transform:uppercase;margin-bottom:8px;
  }
  .bridge-cta .bc-text .bc-line{
    font-family:var(--display);font-style:italic;font-size:21px;color:var(--text);
    line-height:1.4;font-weight:400;margin:0;
  }
  .bridge-cta .bc-cta{flex-shrink:0}
  @media (max-width:760px){
    .bridge-cta{padding:24px 22px;flex-direction:column;align-items:flex-start;gap:18px}
  }

  /* Section base */
  section{padding:96px 0;border-top:1px solid var(--line)}
  .section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:56px;flex-wrap:wrap}
  .section-head h2{max-width:680px}
  .section-head .meta{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.18em;text-transform:uppercase;text-align:right;min-width:200px}

  /* 5-act cycle */
  .cycle{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:32px}
  .cycle .act{padding:28px 22px;border:1px solid var(--line);border-radius:2px;background:var(--bg-card);position:relative}
  .cycle .act .n{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.18em}
  .cycle .act h3{margin-top:14px;margin-bottom:10px;font-family:var(--display);font-size:24px}
  .cycle .act p{font-size:14px;color:var(--text-dim);margin:0}
  .cycle .act::after{
    content:'→';position:absolute;right:-15px;top:50%;transform:translateY(-50%);
    color:var(--muted);font-family:var(--mono);font-size:18px;z-index:2;
  }
  .cycle .act:last-child::after{display:none}

  /* Workflow code */
  .workflow{
    margin-top:48px;padding:32px;border:1px solid var(--line);
    background:var(--bg-elev);font-family:var(--mono);font-size:13px;
    line-height:1.9;color:var(--text-dim);border-radius:2px;overflow-x:auto;
  }
  .workflow .step{display:flex;gap:18px;padding:6px 0}
  .workflow .step .n{color:var(--accent);width:30px;flex-shrink:0}
  .workflow .step .name{color:var(--text);width:120px;flex-shrink:0}
  .workflow .step .desc{color:var(--text-dim)}
  .workflow .comment{color:var(--muted);font-style:italic}

  /* Comparison table */
  .compare{margin-top:36px;border:1px solid var(--line);border-radius:2px;overflow:hidden}
  .compare table{width:100%;border-collapse:collapse;font-size:14px}
  .compare th,.compare td{padding:18px 20px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
  .compare th{
    font-family:var(--mono);font-weight:400;font-size:11px;letter-spacing:.16em;
    text-transform:uppercase;color:var(--muted);background:rgba(255,255,255,.02);
  }
  .compare th.us{color:var(--accent)}
  .compare td{color:var(--text-dim);line-height:1.5}
  .compare td.us{color:var(--text);background:rgba(46,144,255,.04);border-left:1px solid var(--accent-line);border-right:1px solid var(--accent-line)}
  .compare tr:last-child td{border-bottom:0}
  .compare tr:last-child td.us{border-bottom:1px solid var(--accent-line)}
  .compare td.label{color:var(--text);font-weight:400}

  /* What we are not */
  .negation{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:36px}
  .negation .x{padding:20px;border:1px solid var(--line);border-left:2px solid #6f3a3a;border-radius:2px;background:var(--bg-card)}
  .negation .x .not{font-family:var(--mono);font-size:11px;color:#c97a7a;letter-spacing:.18em;text-transform:uppercase}
  .negation .x h4{margin:8px 0;color:var(--text);font-size:16px;font-family:var(--ui);font-weight:400}
  .negation .x p{font-size:13px;color:var(--text-dim);margin:0;line-height:1.55}

  /* Product ladder */
  .ladder{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:36px}
  .product{
    padding:30px 26px;border:1px solid var(--line);background:var(--bg-card);
    border-radius:2px;display:flex;flex-direction:column;min-height:340px;position:relative;
  }
  .product.primary{border-color:var(--accent-line);background:linear-gradient(180deg,rgba(46,144,255,.08),rgba(46,144,255,.02))}
  .product.primary::before{content:'PRIMARY PRODUCT';position:absolute;top:-9px;left:24px;background:var(--accent);color:#0c0e12;font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;padding:3px 8px;border-radius:2px}
  .product .tier{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;color:var(--muted);text-transform:uppercase;margin-bottom:14px}
  .product h3{font-family:var(--display);font-size:24px;color:var(--text);margin-bottom:8px}
  .product .duration{font-family:var(--mono);font-size:12px;color:var(--accent);margin-bottom:14px}
  .product .price{
    font-family:var(--display);font-size:28px;color:var(--text);margin:14px 0;
    padding-bottom:14px;border-bottom:1px solid var(--line);
  }
  .product .price small{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.1em;display:block;margin-top:4px;text-transform:uppercase}
  .product ul{list-style:none;padding:0;margin:0 0 18px 0;font-size:13.5px;color:var(--text-dim)}
  .product ul li{padding:5px 0;padding-left:18px;position:relative}
  .product ul li::before{content:'→';position:absolute;left:0;color:var(--accent);font-family:var(--mono)}
  .product .not-this{margin-top:auto;font-size:12px;color:var(--muted);padding-top:14px;border-top:1px dashed var(--line);font-style:italic}

  /* Pattern brief — replaces Ukrainian card */
  .pattern-brief{margin-top:48px;border:1px solid var(--line);border-radius:2px;background:var(--bg-card);overflow:hidden}
  .pattern-brief .header{padding:36px 40px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(46,144,255,.06),transparent)}
  .pattern-brief .header .badge{display:inline-block;font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;color:var(--accent);text-transform:uppercase;border:1px solid var(--accent-line);padding:3px 8px;border-radius:2px;margin-bottom:18px}
  .pattern-brief .header h3{font-size:34px;margin-bottom:14px}
  .pattern-brief .header .tldr{font-size:17px;color:var(--text-dim);max-width:680px;line-height:1.55}
  .pattern-brief .body{display:grid;grid-template-columns:repeat(2,1fr);gap:0}
  .pattern-brief .body > div{padding:30px 40px;border-top:1px solid var(--line)}
  .pattern-brief .body > div:nth-child(odd){border-right:1px solid var(--line)}
  .pattern-brief .body h4{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--accent);text-transform:uppercase;margin-bottom:14px;font-weight:400}
  .pattern-brief .body p, .pattern-brief .body li{font-size:14px;color:var(--text-dim);line-height:1.6}
  .pattern-brief .body ul{padding-left:18px;margin:0}

  /* Architecture diagram — English replacement */
  .arch-diagram{padding:40px;background:radial-gradient(circle at 50% 100%, rgba(46,144,255,.08), transparent 70%);border-top:1px solid var(--line)}
  .arch-diagram .pyramid{max-width:520px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:6px}
  .arch-diagram .layer{
    color:var(--text);font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;
    padding:14px 28px;text-align:center;border:1px solid var(--line-strong);
    background:rgba(255,255,255,.02);border-radius:2px;width:100%;position:relative
  }
  .arch-diagram .layer.visible{width:30%;background:rgba(46,144,255,.12);border-color:var(--accent-line);color:var(--accent)}
  .arch-diagram .layer.l2{width:50%}
  .arch-diagram .layer.l3{width:70%}
  .arch-diagram .layer.l4{width:88%}
  .arch-diagram .layer.l5{width:100%}
  .arch-diagram .caption{text-align:center;margin-top:24px;font-size:13px;color:var(--muted);font-style:italic;max-width:520px;margin-left:auto;margin-right:auto}
  .arch-diagram .annot{font-family:var(--mono);font-size:10px;color:var(--muted);letter-spacing:.12em;margin-top:6px;text-align:center}

  /* Intelligence essays */
  .essays{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;margin-top:36px}
  .essay{
    padding:30px 28px;border:1px solid var(--line);background:var(--bg-card);
    border-radius:2px;display:flex;flex-direction:column;transition:all .2s;cursor:pointer;
  }
  .essay:hover{border-color:var(--accent-line);background:linear-gradient(180deg,rgba(46,144,255,.04),var(--bg-card))}
  .essay .meta{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.12em;margin-bottom:20px}
  .essay .meta .read{color:var(--accent)}
  .essay h3{font-family:var(--display);font-size:22px;color:var(--text);margin-bottom:14px;line-height:1.25}
  .essay .excerpt{font-size:14px;color:var(--text-dim);line-height:1.6;margin-bottom:auto}
  .essay .terms{margin-top:20px;padding-top:18px;border-top:1px dashed var(--line);display:flex;gap:8px;flex-wrap:wrap}
  .essay .term{font-family:var(--mono);font-size:10px;color:var(--accent);letter-spacing:.08em;padding:2px 8px;border:1px solid var(--accent-line);border-radius:2px}
  .essay .more{margin-top:18px;font-family:var(--mono);font-size:12px;color:var(--accent);letter-spacing:.06em}

  /* Deep-dive essay panel */
  .deep-dive{margin-top:48px;border:1px solid var(--line);border-radius:2px;background:var(--bg-card);padding:0;scroll-margin-top:90px}
  .deep-dive .head{padding:40px 48px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(46,144,255,.06),transparent)}
  .deep-dive .head .crumbs{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.16em;margin-bottom:18px}
  .deep-dive .head h2{font-family:var(--display);font-size:38px;margin-bottom:14px;max-width:780px}
  .deep-dive .head .standfirst{font-size:18px;color:var(--text-dim);line-height:1.6;max-width:720px}
  .deep-dive .head .byline{margin-top:24px;font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.1em;display:flex;gap:24px;flex-wrap:wrap}
  .deep-dive .body{padding:44px 48px}
  .deep-dive .body p{font-size:16px;line-height:1.75;color:var(--text-dim);max-width:680px;margin-bottom:22px}
  .deep-dive .body h3{font-family:var(--display);font-size:26px;color:var(--text);margin:36px 0 16px 0}
  .deep-dive .body h4{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin:28px 0 12px 0;font-weight:400}
  .deep-dive .pullquote{
    margin:36px 0;padding:24px 28px;border-left:2px solid var(--accent);
    background:rgba(46,144,255,.04);font-family:var(--display);font-size:22px;
    color:var(--text);line-height:1.4;font-style:italic;max-width:760px;
  }
  .deep-dive .pullquote .source{
    display:block;margin-top:14px;font-family:var(--mono);font-size:11px;
    letter-spacing:.18em;color:var(--accent);text-transform:uppercase;font-style:normal;
  }
  /* Banner-style quote — larger, full-bleed feel, used for category-defining one-liners */
  .deep-dive .banner-quote{
    margin:48px 0;padding:36px 44px;max-width:820px;
    background:linear-gradient(180deg,rgba(46,144,255,.07),rgba(46,144,255,.01));
    border-top:1px solid var(--accent-line);border-bottom:1px solid var(--accent-line);
    font-family:var(--display);font-style:italic;font-size:26px;line-height:1.4;color:var(--text);
  }
  .deep-dive .banner-quote::before{content:'\201C';color:var(--primary);font-size:1.05em;margin-right:.05em}
  .deep-dive .banner-quote::after{content:'\201D';color:var(--primary);font-size:1.05em;margin-left:.05em}
  @media (max-width:760px){
    .deep-dive .banner-quote{padding:24px 22px;font-size:20px}
  }
  .deep-dive .body ul{font-size:16px;color:var(--text-dim);line-height:1.7;max-width:680px}
  .deep-dive .body ul li{margin-bottom:8px}

  /* Essay clickable-card variant + tighter card link reset */
  a.essay{color:inherit;text-decoration:none}
  a.essay:hover .more{color:var(--text)}
  a.essay:hover h3{color:var(--accent)}

  /* Clickable-essay glow indicator — slow pulsing light marking essays that open a full deep-dive */
  a.essay.is-live{position:relative;border-color:rgba(46,144,255,.28);animation:essayPulse 3.4s ease-in-out infinite}
  a.essay.is-live .meta .read{color:var(--accent)}
  a.essay.is-live .live-dot{
    position:absolute;top:18px;right:20px;display:inline-flex;align-items:center;gap:8px;
    font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;color:var(--accent);
    text-transform:uppercase;
  }
  a.essay.is-live .live-dot::before{
    content:'';width:7px;height:7px;border-radius:50%;background:var(--accent);
    box-shadow:0 0 0 0 rgba(46,144,255,.55);animation:dotPulse 1.8s ease-in-out infinite;
  }
  a.essay.is-live:hover{animation-play-state:paused;border-color:var(--accent)}
  a.essay.is-live:hover .live-dot::before{animation-play-state:paused;box-shadow:0 0 0 6px rgba(46,144,255,.12)}
  @keyframes essayPulse{
    0%,100%{box-shadow:0 0 0 0 rgba(46,144,255,.0),inset 0 0 0 0 rgba(46,144,255,.0)}
    50%    {box-shadow:0 0 22px -6px rgba(46,144,255,.35),inset 0 0 0 1px rgba(46,144,255,.18)}
  }
  @keyframes dotPulse{
    0%   {box-shadow:0 0 0 0 rgba(46,144,255,.55)}
    70%  {box-shadow:0 0 0 10px rgba(46,144,255,0)}
    100% {box-shadow:0 0 0 0 rgba(46,144,255,0)}
  }
  @media (prefers-reduced-motion: reduce){
    a.essay.is-live,a.essay.is-live .live-dot::before{animation:none}
  }

  /* In-essay figures (illustrations + numbered captions) */
  .deep-dive .body .figure{
    margin:40px 0;padding:36px 40px 30px 40px;
    background:rgba(255,255,255,.018);border:1px solid var(--line);
    border-radius:2px;max-width:760px;
  }
  .deep-dive .body .figure .fig-eyebrow{
    font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;
    text-transform:uppercase;color:var(--accent);margin-bottom:18px;
  }
  .deep-dive .body .figure svg{width:100%;height:auto;display:block;max-width:680px;margin:0 auto}
  .deep-dive .body .figure .fig-caption{
    margin-top:18px;font-family:var(--display);font-style:italic;font-size:14px;
    color:var(--text-dim);text-align:center;line-height:1.5;
  }
  .deep-dive .body .figure text{font-family:var(--mono)}

  /* Inline cadenced list — used for "It is not X" and "A weak signal" enumerations */
  .deep-dive .body .cadenced{
    list-style:none;padding:0;margin:24px 0 28px 0;max-width:720px;
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  }
  .deep-dive .body .cadenced li{
    padding:14px 0 14px 28px;border-bottom:1px dashed var(--line);position:relative;
    font-size:16px;color:var(--text);line-height:1.55;margin:0;
  }
  .deep-dive .body .cadenced li:last-child{border-bottom:0}
  .deep-dive .body .cadenced li::before{
    content:'';position:absolute;left:4px;top:24px;width:14px;height:1px;background:var(--accent);
  }
  .deep-dive .body .cadenced li em{font-style:italic;color:var(--primary)}

  /* Closing card at the end of the essay */
  .deep-dive .body .essay-close{
    margin:48px 0 0 0;padding:36px 40px;
    background:linear-gradient(180deg,rgba(46,144,255,.06),transparent);
    border:1px solid var(--accent-line);border-radius:2px;max-width:760px;
  }
  .deep-dive .body .essay-close .punch{
    font-family:var(--display);font-size:24px;color:var(--text);font-style:italic;
    line-height:1.4;margin:0 0 8px 0;
  }
  .deep-dive .body .essay-close .punch strong{font-style:normal;color:var(--accent);font-weight:400}
  .deep-dive .body .essay-close p{margin:0;color:var(--text-dim);font-size:15px}

  @media (max-width:760px){
    .deep-dive .head{padding:28px 24px}
    .deep-dive .body{padding:28px 24px}
    .deep-dive .body .figure{padding:24px 16px;margin:28px 0}
    .deep-dive .body .essay-close{padding:24px 22px}
  }

  /* Case study */
  .case{margin-top:36px;border:1px solid var(--line);background:var(--bg-card);border-radius:2px;overflow:hidden}
  .case .head{padding:36px 40px;border-bottom:1px solid var(--line)}
  .case .head .anon{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;color:var(--accent);text-transform:uppercase;margin-bottom:14px}
  .case .head h3{font-size:30px;margin-bottom:10px}
  .case .head .desc{font-size:15px;color:var(--text-dim);max-width:680px;line-height:1.6}
  .case .stages{display:block}
  .case .stages > div{padding:36px 44px;border-top:1px solid var(--line)}
  .case .stages h4{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--accent);text-transform:uppercase;margin-bottom:18px;font-weight:400}
  .case .stages p, .case .stages li{font-size:14.5px;color:var(--text-dim);line-height:1.7;margin:0 0 14px 0;max-width:880px}
  .case .stages p:last-child{margin-bottom:0}
  .case .stages ul{padding-left:18px;margin:0}
  .case .stages ul li{margin-bottom:8px}
  .case .stages ul li:last-child{margin-bottom:0}
  @media (max-width:760px){
    .case .stages > div{padding:26px 22px}
  }
  .case .effect{padding:32px 40px;border-top:1px solid var(--line);background:linear-gradient(180deg,rgba(46,144,255,.04),transparent);display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px}
  .case .effect .metric h5{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;color:var(--muted);text-transform:uppercase;margin:0 0 6px 0;font-weight:400}
  .case .effect .metric .v{font-family:var(--display);font-size:34px;color:var(--accent);line-height:1}
  .case .effect .metric .v small{font-size:14px;color:var(--text-dim);margin-left:6px}
  .case .effect .metric p{font-size:13px;color:var(--text-dim);margin:8px 0 0 0}

  /* Confidence tags inline with bullets / claims */
  .conf{
    display:inline-flex;align-items:center;gap:6px;
    font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;
    padding:2px 7px;border-radius:2px;margin-left:8px;vertical-align:middle;
    border:1px solid var(--line);background:rgba(255,255,255,.02);color:var(--text-dim);
    white-space:nowrap;
  }
  .conf::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--muted)}
  .conf.high{color:var(--ok);border-color:rgba(126,168,136,.4)}
  .conf.high::before{background:var(--ok)}
  .conf.med{color:var(--warn);border-color:rgba(201,160,74,.4)}
  .conf.med::before{background:var(--warn)}
  .conf.low{color:var(--muted);border-color:var(--line)}
  .conf.low::before{background:var(--muted)}

  /* Facts / Signals / Interpretations / Hypotheses — within a stage */
  .case .evidence{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:14px;max-width:none}
  .case .evidence .ev-block{padding:20px 22px;border-left:2px solid var(--line);background:rgba(255,255,255,.022)}
  .case .evidence .ev-block.facts{border-left-color:var(--ok)}
  .case .evidence .ev-block.interp{border-left-color:var(--warn)}
  .case .evidence .ev-block.hyp{border-left-color:var(--muted);background:rgba(255,255,255,.012)}
  .case .evidence .ev-block h6{
    font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;
    margin:0 0 12px 0;font-weight:400;color:var(--text);
  }
  .case .evidence .ev-block.facts h6{color:var(--ok)}
  .case .evidence .ev-block.interp h6{color:var(--warn)}
  .case .evidence .ev-block.hyp h6{color:var(--text-dim)}
  .case .evidence ul{padding-left:18px;margin:0}
  .case .evidence li{font-size:13.5px;color:var(--text-dim);line-height:1.65;margin-bottom:10px}
  .case .evidence li:last-child{margin-bottom:0}
  @media (max-width:880px){
    .case .evidence{grid-template-columns:1fr}
  }

  /* Signal → Meaning → Trigger table (Adaptation Loop) */
  .case .watch-table{margin-top:18px;border:1px solid var(--line);border-radius:2px;overflow:hidden;width:100%}
  .case .watch-table .row{
    display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(220px,1.3fr) minmax(220px,1.6fr);
    border-top:1px solid var(--line);font-size:13.5px;
  }
  .case .watch-table .row:first-child{border-top:0;background:rgba(255,255,255,.03)}
  .case .watch-table .row:first-child .cell{
    font-family:var(--mono);font-size:10px;color:var(--muted);
    letter-spacing:.18em;text-transform:uppercase;font-weight:400;
  }
  .case .watch-table .cell{
    padding:18px 20px;border-right:1px solid var(--line);
    color:var(--text-dim);line-height:1.6;
  }
  .case .watch-table .cell:last-child{border-right:0}
  .case .watch-table .cell strong{color:var(--text);font-weight:400}
  @media (max-width:880px){
    .case .watch-table .row{grid-template-columns:1fr}
    .case .watch-table .cell{border-right:0;border-bottom:1px dashed var(--line)}
    .case .watch-table .cell:last-child{border-bottom:0}
  }

  /* Pattern activation table */
  .case .pattern-table{margin-top:18px;border:1px solid var(--line);border-radius:2px;overflow:hidden;width:100%}
  .case .pattern-table .row{
    display:grid;grid-template-columns:minmax(200px,220px) 1fr minmax(120px,140px);
    border-top:1px solid var(--line);font-size:13.5px;
  }
  .case .pattern-table .row:first-child{border-top:0;background:rgba(255,255,255,.03)}
  .case .pattern-table .row:first-child .cell{
    font-family:var(--mono);font-size:10px;color:var(--muted);
    letter-spacing:.18em;text-transform:uppercase;
  }
  .case .pattern-table .cell{
    padding:18px 20px;border-right:1px solid var(--line);
    color:var(--text-dim);line-height:1.6;
  }
  .case .pattern-table .cell:last-child{border-right:0;text-align:center}
  .case .pattern-table .pid{
    font-family:var(--mono);font-size:11.5px;color:var(--accent);letter-spacing:.06em;
  }
  @media (max-width:880px){
    .case .pattern-table .row{grid-template-columns:1fr}
    .case .pattern-table .cell{border-right:0;border-bottom:1px dashed var(--line)}
    .case .pattern-table .cell:last-child{text-align:left}
    .case .pattern-table .cell:last-child{border-bottom:0}
  }

  /* Counter-reading block */
  .case .counter-read{
    margin:0;padding:28px 40px;border-top:1px solid var(--line);
    background:linear-gradient(180deg, rgba(92,191,149,.04), transparent);
  }
  .case .counter-read .cr-eyebrow{
    font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;
    color:var(--primary);text-transform:uppercase;margin-bottom:12px;
  }
  .case .counter-read p{
    font-family:var(--display);font-style:italic;font-size:18px;
    color:var(--text);line-height:1.55;margin:0;max-width:760px;font-weight:400;
  }

  /* Schematic mini-diagrams within stages */
  .case .mini-fig{margin-top:22px;padding:24px 28px 20px;background:rgba(255,255,255,.018);border:1px solid var(--line);border-radius:2px;max-width:880px}
  .case .mini-fig svg{width:100%;height:auto;display:block;max-width:760px;margin:0 auto}
  .case .mini-fig .mf-cap{
    margin-top:14px;font-family:var(--mono);font-size:10.5px;
    color:var(--muted);letter-spacing:.14em;text-transform:uppercase;text-align:center;
  }

  /* Maturity self-assessment */
  .maturity{margin-top:36px;border:1px solid var(--line);background:var(--bg-card);border-radius:2px;overflow:hidden}
  .maturity .head{padding:36px 40px;border-bottom:1px solid var(--line)}
  .maturity .head .intro{font-size:15px;color:var(--text-dim);max-width:720px;line-height:1.6;margin-top:14px}
  .maturity .quiz{padding:32px 40px}
  .maturity .q{padding:24px 0;border-bottom:1px solid var(--line)}
  .maturity .q:last-of-type{border-bottom:0}
  .maturity .q .qhead{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}
  .maturity .q .qn{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.18em;flex-shrink:0;padding-top:3px}
  .maturity .q .qt{font-family:var(--display);font-size:18px;color:var(--text);line-height:1.4}
  .maturity .opts{display:flex;flex-direction:column;gap:8px;margin-left:34px}
  .maturity .opt{display:flex;align-items:center;gap:12px;padding:11px 14px;border:1px solid var(--line);border-radius:2px;cursor:pointer;font-size:13.5px;color:var(--text-dim);transition:all .15s}
  .maturity .opt:hover{border-color:var(--accent-line);color:var(--text)}
  .maturity .opt input{accent-color:var(--accent);margin:0}
  .maturity .opt.selected{border-color:var(--accent);background:rgba(46,144,255,.06);color:var(--text)}
  .maturity .score{padding:32px 40px;border-top:1px solid var(--line);background:rgba(46,144,255,.04);display:none}
  .maturity .score.visible{display:block}
  .maturity .score .level{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.18em;text-transform:uppercase}
  .maturity .score h3{font-size:32px;margin:10px 0 16px 0}
  .maturity .score p{font-size:15px;color:var(--text-dim);line-height:1.6;max-width:680px}
  .maturity .score .rec{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}
  .maturity-cta{padding:24px 40px;text-align:center;border-top:1px solid var(--line)}
  .maturity-cta button{cursor:pointer;font-family:var(--ui)}

  /* Trust layer */
  .trust{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:start;margin-top:36px}
  @media (max-width:880px){.trust{grid-template-columns:1fr}}
  .founder{padding:32px;border:1px solid var(--line);background:var(--bg-card);border-radius:2px}
  .founder .ph{
    width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#7a3a0c);
    display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:24px;color:#0c0e12;margin-bottom:20px;
  }
  .founder h4{font-family:var(--ui);font-size:16px;font-weight:500;color:var(--text);margin-bottom:4px}
  .founder .role{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px}
  .founder p{font-size:14px;color:var(--text-dim);line-height:1.65}
  .founder .cred{margin-top:18px;padding-top:18px;border-top:1px dashed var(--line);font-size:12.5px;color:var(--muted);line-height:1.6}
  .principles{display:grid;grid-template-columns:1fr;gap:14px}
  .principle{padding:20px 22px;border:1px solid var(--line);background:var(--bg-card);border-radius:2px}
  .principle .n{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.16em}
  .principle h4{font-family:var(--ui);font-weight:400;font-size:15px;color:var(--text);margin:6px 0}
  .principle p{font-size:13px;color:var(--text-dim);margin:0;line-height:1.55}

  /* Templates / lead magnets */
  .templates{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:36px}
  .template{padding:28px 26px;border:1px solid var(--line);background:var(--bg-card);border-radius:2px;display:flex;flex-direction:column}
  .template .icon{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px}
  .template h4{font-family:var(--display);font-size:22px;color:var(--text);margin-bottom:10px}
  .template p{font-size:13.5px;color:var(--text-dim);margin-bottom:auto;line-height:1.6}
  .template .dl{margin-top:20px;font-family:var(--mono);font-size:12px;color:var(--accent);letter-spacing:.06em;border-top:1px dashed var(--line);padding-top:14px}

  /* State of ESI placeholder */
  .state-card{
    margin-top:36px;padding:48px 40px;border:1px dashed var(--accent-line);background:rgba(46,144,255,.03);
    border-radius:2px;display:flex;align-items:center;gap:36px;flex-wrap:wrap;
  }
  .state-card .left{flex:2;min-width:280px}
  .state-card .right{flex:1;min-width:200px;text-align:right;font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.18em}
  .state-card .tag{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.18em;margin-bottom:12px}
  .state-card h3{font-size:28px;margin-bottom:10px}
  .state-card p{font-size:14px;color:var(--text-dim);margin:0;line-height:1.6}
  .state-card .countdown{font-family:var(--display);font-size:42px;color:var(--accent);line-height:1}

  /* Contact form */
  .form-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start;margin-top:36px}
  @media (max-width:880px){.form-wrap{grid-template-columns:1fr}}
  .form{padding:36px;border:1px solid var(--line);background:var(--bg-card);border-radius:2px}
  .field{margin-bottom:20px}
  .field label{display:block;font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px}
  .field input,.field select,.field textarea{
    width:100%;padding:12px 14px;background:transparent;border:1px solid var(--line);
    color:var(--text);font-family:var(--ui);font-size:14px;border-radius:2px;outline:none;
  }
  .field textarea{min-height:90px;resize:vertical;font-family:var(--ui)}
  .field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent)}
  .field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
  .field select option{background:var(--bg-elev)}
  .next-steps{padding:32px;border:1px solid var(--line);background:var(--bg-card);border-radius:2px}
  .next-steps h4{font-family:var(--display);font-size:22px;margin-bottom:18px}
  .next-steps ol{list-style:none;padding:0;margin:0;counter-reset:steps}
  .next-steps li{counter-increment:steps;padding:14px 0;padding-left:42px;position:relative;border-bottom:1px solid var(--line);font-size:14px;color:var(--text-dim);line-height:1.55}
  .next-steps li:last-child{border-bottom:0}
  .next-steps li::before{
    content:counter(steps,decimal-leading-zero);position:absolute;left:0;top:14px;
    font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.1em;
  }
  .next-steps li strong{color:var(--text);font-weight:400;display:block;margin-bottom:4px}

  /* Footer */
  footer{padding:64px 0 40px 0;border-top:1px solid var(--line);background:#0a0c10}
  .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
  @media (max-width:760px){.footer-grid{grid-template-columns:1fr 1fr}}
  footer h5{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--muted);text-transform:uppercase;margin:0 0 16px 0;font-weight:400}
  footer a{display:block;color:var(--text-dim);font-size:13.5px;padding:5px 0}
  footer a:hover{color:var(--accent)}
  .cycle-sig{
    margin-top:36px;padding-top:24px;border-top:1px solid var(--line);
    display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;
    font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.18em;
  }
  .cycle-sig .acts{color:var(--accent)}
  .cycle-sig .acts span{margin:0 6px;color:var(--text-dim)}

  /* Helpers / reveal */
  .reveal{opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}
  .reveal.in{opacity:1;transform:translateY(0)}
  /* Deep-dive essays must always be visible — they live deep in the page and are reached via anchor jump.
     The reveal-fade is intentionally disabled for them so they show immediately regardless of observer timing. */
  .deep-dive.reveal{opacity:1;transform:none}
  .deep-dive:target{outline:none}
  @media (max-width:880px){
    .nav-links{display:none}
    .burger{display:block}
    .cycle{grid-template-columns:1fr;gap:12px}
    .cycle .act::after{display:none}
    .pattern-brief .body{grid-template-columns:1fr}
    .pattern-brief .body > div:nth-child(odd){border-right:0}
    .hero{padding:80px 0 60px 0}
    section{padding:64px 0}
  }
  .nav-mobile{display:none;position:fixed;top:64px;left:0;right:0;background:var(--bg-elev);border-bottom:1px solid var(--line);padding:24px 28px;z-index:49}
  .nav-mobile.open{display:flex;flex-direction:column;gap:14px}
  .nav-mobile a{font-size:15px;color:var(--text);padding:8px 0;border-bottom:1px solid var(--line)}

  /* Pattern Library — class grouping & matrix */
  .pl-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin:36px 0 0 0}
  .pl-stat{padding:18px 20px;border:1px solid var(--line);background:var(--bg-card);border-radius:2px}
  .pl-stat .v{font-family:var(--display);font-size:30px;color:var(--accent);line-height:1}
  .pl-stat .k{font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin-top:6px}

  .pl-class-head{margin-top:64px;margin-bottom:24px;display:flex;align-items:baseline;gap:18px;flex-wrap:wrap}
  .pl-class-head .tag{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.18em;text-transform:uppercase;padding:4px 10px;border:1px solid var(--accent-line);border-radius:2px}
  .pl-class-head h3{font-family:var(--display);font-size:28px;color:var(--text)}
  .pl-class-head .meta{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.12em;margin-left:auto}

  /* Compact pattern card (visible top patterns) */
  .pcard{
    padding:24px 22px;border:1px solid var(--line);background:var(--bg-card);
    border-radius:2px;display:flex;flex-direction:column;height:100%;
  }
  .pcard .pid{font-family:var(--mono);font-size:10.5px;color:var(--accent);letter-spacing:.16em;margin-bottom:8px;display:flex;justify-content:space-between}
  .pcard .pid .freq{color:var(--text-dim)}
  .pcard h4{font-family:var(--display);font-size:20px;color:var(--text);margin-bottom:12px;line-height:1.25;font-weight:400}
  .pcard .mech{font-size:13px;color:var(--text-dim);line-height:1.55;margin-bottom:14px}
  .pcard .row{display:flex;gap:18px;padding-top:14px;border-top:1px dashed var(--line);margin-top:auto}
  .pcard .row > div{flex:1;min-width:0}
  .pcard .row .label{font-family:var(--mono);font-size:9.5px;color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin-bottom:4px}
  .pcard .row .val{font-size:12px;color:var(--text-dim);line-height:1.5}

  /* ===== Compact locked wall + expandable plan selector ===== */
  .pl-locked-wrap{position:relative;margin-top:48px;border:1px solid var(--line);border-radius:2px;overflow:hidden;background:var(--bg-card)}

  /* Compact blurred teaser strip — fixed short height with hard fade */
  .pl-teaser{position:relative;height:170px;overflow:hidden}
  .pl-teaser-grid{
    display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;padding:18px;
    filter:blur(6px) saturate(.55);-webkit-filter:blur(6px) saturate(.55);
    pointer-events:none;user-select:none;
  }
  .pl-teaser-grid .pcard{padding:14px;min-height:120px}
  .pl-teaser-grid .pcard h4{font-size:14px;margin-bottom:8px}
  .pl-teaser-grid .pcard .mech{font-size:11px;line-height:1.45}
  .pl-teaser-grid .pcard .row{display:none}
  .pl-teaser::after{
    content:'';position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(180deg,
      rgba(19,23,30,0) 0%,
      rgba(19,23,30,0.55) 50%,
      rgba(19,23,30,0.95) 90%,
      rgba(19,23,30,1) 100%);
  }

  /* Always-visible CTA panel — graphic + slogan + toggle button */
  .pl-cta-panel{
    position:relative;padding:28px 32px 30px 32px;border-top:1px solid var(--line);
    display:grid;grid-template-columns:240px 1fr;gap:32px;align-items:center;
    background:linear-gradient(180deg, rgba(46,144,255,0.03), transparent 70%);
  }
  .pl-cta-graphic{width:100%;max-width:240px;aspect-ratio:1 / 0.85}
  .pl-cta-graphic svg{width:100%;height:auto;display:block}
  .pl-cta-text .lock-tag{
    display:inline-flex;align-items:center;gap:10px;
    font-family:var(--mono);font-size:10.5px;color:var(--accent);
    letter-spacing:.22em;text-transform:uppercase;margin-bottom:14px;
  }
  .pl-cta-text .lock-tag::before{content:'';width:6px;height:6px;background:var(--accent);border-radius:50%}
  .pl-cta-text h3.slogan{
    font-family:var(--display);font-size:clamp(22px,2.5vw,30px);font-weight:400;
    font-style:italic;line-height:1.2;margin-bottom:14px;color:var(--text);max-width:600px;
  }
  .pl-cta-text .copy{
    font-size:14px;color:var(--text-dim);line-height:1.6;margin-bottom:22px;max-width:560px;
  }
  .pl-toggle{
    display:inline-flex;align-items:center;gap:14px;
    padding:13px 22px;background:var(--accent);color:#0c0e12;border:0;
    font-family:var(--ui);font-size:13.5px;letter-spacing:.02em;cursor:pointer;
    border-radius:2px;transition:all .2s ease;
  }
  .pl-toggle:hover{background:#1e7fee}
  .pl-toggle .chev{font-family:var(--mono);transition:transform .35s ease;display:inline-block}
  .pl-toggle.open .chev{transform:rotate(180deg)}

  /* Collapsing plan panel */
  .pl-plans{max-height:0;overflow:hidden;transition:max-height .55s cubic-bezier(.2,.7,.2,1);border-top:0;background:rgba(255,255,255,0.015)}
  .pl-plans.open{max-height:1400px;border-top:1px solid var(--line)}
  .pl-plans-inner{padding:36px 32px;display:grid;grid-template-columns:minmax(0,560px);justify-content:center;gap:18px}

  .pl-plan{
    padding:30px 26px;border:1px solid var(--line);background:var(--bg-card);
    border-radius:2px;display:flex;flex-direction:column;position:relative;min-height:480px;
  }
  .pl-plan.pro{
    border-color:var(--accent-line);
    background:linear-gradient(180deg,rgba(46,144,255,0.08),rgba(46,144,255,0.02));
  }
  .pl-plan .plan-badge{
    position:absolute;top:-9px;left:24px;background:var(--accent);color:#0c0e12;
    font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;padding:3px 10px;border-radius:2px;
  }
  .pl-plan .plan-kind{
    font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.18em;
    text-transform:uppercase;margin-bottom:14px;
  }
  .pl-plan.pro .plan-kind{color:var(--accent)}
  .pl-plan h4{font-family:var(--display);font-size:26px;font-weight:400;margin-bottom:12px;line-height:1.2}
  .pl-plan .plan-price{
    display:flex;align-items:baseline;gap:8px;font-family:var(--display);
    font-size:44px;font-weight:400;color:var(--text);margin-bottom:4px;line-height:1;
  }
  .pl-plan .plan-price small{font-size:14px;color:var(--text-dim);font-family:var(--ui);font-weight:300}
  .pl-plan .plan-intro{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.06em;margin-bottom:18px;text-transform:uppercase}
  .pl-plan.free .plan-intro{color:var(--text-dim)}
  .pl-plan .plan-divider{height:1px;background:var(--line);margin:8px 0 18px 0}
  .pl-plan ul{list-style:none;padding:0;margin:0 0 18px 0;font-size:13.5px;color:var(--text-dim)}
  .pl-plan ul li{padding:5px 0;padding-left:24px;position:relative;line-height:1.55}
  .pl-plan ul li::before{content:'✓';position:absolute;left:0;color:var(--accent);font-family:var(--mono);font-size:13px}
  .pl-plan .plan-bonus{
    background:rgba(46,144,255,0.07);border:1px dashed var(--accent-line);
    padding:14px 16px;margin:0 0 18px 0;font-size:12.5px;color:var(--text-dim);
    line-height:1.5;border-radius:2px;
  }
  .pl-plan .plan-bonus strong{color:var(--accent);font-weight:500;display:block;margin-bottom:4px;letter-spacing:.02em}
  .pl-plan .plan-form{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:14px}
  .pl-plan .plan-form input{
    flex:1;min-width:160px;padding:11px 14px;background:rgba(12,14,18,0.6);
    border:1px solid var(--line-strong);color:var(--text);font-family:var(--ui);
    font-size:14px;border-radius:2px;outline:none;
  }
  .pl-plan .plan-form input:focus{border-color:var(--accent)}
  .pl-plan .plan-btn{
    padding:11px 18px;cursor:pointer;border:0;font-family:var(--ui);font-size:13.5px;
    border-radius:2px;white-space:nowrap;letter-spacing:.02em;transition:all .2s;
  }
  .pl-plan.free .plan-btn{background:transparent;border:1px solid var(--text-dim);color:var(--text)}
  .pl-plan.free .plan-btn:hover{border-color:var(--accent);color:var(--accent)}
  .pl-plan.pro .plan-btn{background:var(--accent);color:#0c0e12}
  .pl-plan.pro .plan-btn:hover{background:#1e7fee}
  .pl-plan .plan-tag{font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.06em;margin-top:14px;line-height:1.5}

  @media (max-width:880px){
    .pl-cta-panel{grid-template-columns:1fr;gap:24px;padding:24px}
    .pl-cta-graphic{max-width:200px;margin:0 auto}
    .pl-plans-inner{grid-template-columns:1fr;padding:24px}
    .pl-plan{min-height:auto}
  }

  /* ===================================================================
     GLOSSARY — ESI & Decision OS Categorical Language
     Re-skinned to site design system. Four-stage immersion funnel.
     Layer palette: L1 accent-orange, L2 primary-blue, L3 warm-gold, L4 ok-green
     =================================================================== */
  #glossary{position:relative}
  .gl-funnel{
    display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:48px;
    counter-reset:funnel;
  }
  @media (max-width:880px){.gl-funnel{grid-template-columns:1fr 1fr}}
  @media (max-width:520px){.gl-funnel{grid-template-columns:1fr}}
  .gl-stage{
    counter-increment:funnel;
    padding:26px 22px;border:1px solid var(--line);background:var(--bg-card);
    border-radius:2px;position:relative;cursor:pointer;
    transition:border-color .2s ease,background .2s ease,transform .2s ease;
  }
  .gl-stage:hover{border-color:var(--text-dim);transform:translateY(-2px);background:rgba(255,255,255,.02)}
  .gl-stage::before{
    content:counter(funnel,decimal-leading-zero);
    font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.18em;
  }
  .gl-stage .dot{
    display:inline-block;width:8px;height:8px;border-radius:50%;
    vertical-align:middle;margin-left:8px;
  }
  .gl-stage[data-stage="1"] .dot{background:var(--accent)}
  .gl-stage[data-stage="2"] .dot{background:var(--primary)}
  .gl-stage[data-stage="3"] .dot{background:var(--warn)}
  .gl-stage[data-stage="4"] .dot{background:var(--ok)}
  .gl-stage h4{
    font-family:var(--display);font-size:22px;font-weight:400;color:var(--text);
    margin:12px 0 8px 0;line-height:1.2;
  }
  .gl-stage .gl-stage-lead{
    font-family:var(--display);font-style:italic;font-size:14px;
    color:var(--text);margin-bottom:10px;line-height:1.45;
  }
  .gl-stage[data-stage="1"] .gl-stage-lead{color:var(--accent)}
  .gl-stage[data-stage="2"] .gl-stage-lead{color:var(--primary)}
  .gl-stage[data-stage="3"] .gl-stage-lead{color:var(--warn)}
  .gl-stage[data-stage="4"] .gl-stage-lead{color:var(--ok)}
  .gl-stage p{font-size:13px;color:var(--text-dim);line-height:1.6;margin:0 0 14px 0}
  .gl-stage .gl-stage-cta{
    font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;
    color:var(--muted);text-transform:uppercase;
  }
  .gl-stage:hover .gl-stage-cta{color:var(--accent)}

  /* Picture-of-the-category SVG framing */
  .gl-picture{
    margin-top:56px;padding:36px 32px;border:1px solid var(--line);
    background:var(--bg-elev);border-radius:2px;
  }
  .gl-picture .gl-picture-title{
    font-family:var(--mono);font-size:11px;color:var(--accent);
    letter-spacing:.22em;text-transform:uppercase;margin-bottom:24px;
  }
  .gl-picture svg{width:100%;height:auto;display:block;max-width:980px;margin:0 auto}
  .gl-picture text{font-family:var(--mono)}
  .gl-picture .gl-picture-caption{
    margin-top:20px;text-align:center;font-family:var(--display);
    font-style:italic;font-size:14px;color:var(--text-dim);
  }

  /* Kairos 8-layer stack — re-skinned */
  .gl-stack{
    margin-top:32px;padding:32px;border:1px solid var(--line);
    background:var(--bg-elev);border-radius:2px;
  }
  .gl-stack-title{
    font-family:var(--mono);font-size:11px;color:var(--accent);
    letter-spacing:.22em;text-transform:uppercase;margin-bottom:24px;
  }
  .gl-stack-row{
    display:grid;grid-template-columns:60px 1fr;gap:18px;
    padding:14px 16px;border:1px solid var(--line);background:var(--bg-card);
    border-radius:2px;margin-bottom:8px;align-items:baseline;
    transition:border-color .2s ease,background .2s ease;
  }
  .gl-stack-row:hover{border-color:var(--text-dim);background:rgba(255,255,255,.03)}
  .gl-stack-row .gl-l{
    font-family:var(--mono);font-size:13px;font-weight:500;letter-spacing:.04em;
  }
  .gl-stack-row .gl-l-name{font-family:var(--display);font-size:17px;color:var(--text);font-weight:400}
  .gl-stack-row .gl-l-desc{font-size:13px;color:var(--text-dim);margin-top:3px;line-height:1.55}
  .gl-stack-row[data-l="0"] .gl-l{color:var(--accent)}
  .gl-stack-row[data-l="0"]{border-color:var(--accent-line);background:rgba(46,144,255,.04)}
  .gl-stack-row[data-l="1"] .gl-l,.gl-stack-row[data-l="2"] .gl-l{color:var(--primary)}
  .gl-stack-row[data-l="3"] .gl-l,.gl-stack-row[data-l="4"] .gl-l{color:var(--warn)}
  .gl-stack-row[data-l="5"] .gl-l,.gl-stack-row[data-l="6"] .gl-l{color:var(--ok)}
  .gl-stack-row[data-l="7"] .gl-l{color:var(--text)}

  /* Glossary controls — mode tabs, search, layer filter */
  .gl-controls{
    position:sticky;top:64px;z-index:30;
    margin:56px 0 32px 0;padding:14px 18px;
    background:rgba(12,14,18,.92);backdrop-filter:saturate(120%) blur(12px);
    border:1px solid var(--line);border-radius:2px;
    display:flex;flex-wrap:wrap;gap:14px;align-items:center;
  }
  .gl-modes{display:flex;gap:0;border:1px solid var(--line);border-radius:2px;padding:3px;background:var(--bg-card)}
  .gl-mode{
    padding:8px 16px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;
    text-transform:uppercase;color:var(--text-dim);cursor:pointer;border-radius:1px;
    transition:all .2s ease;user-select:none;
  }
  .gl-mode:hover{color:var(--text)}
  .gl-mode.active{background:var(--accent);color:#0c0e12}
  .gl-search{flex:1;min-width:200px;max-width:420px;position:relative}
  .gl-search input{
    width:100%;padding:10px 14px 10px 36px;background:var(--bg-card);
    border:1px solid var(--line);color:var(--text);font-family:var(--ui);
    font-size:13.5px;border-radius:2px;outline:none;transition:border-color .2s;
  }
  .gl-search input:focus{border-color:var(--accent)}
  .gl-search::before{
    content:'⌕';position:absolute;left:12px;top:50%;transform:translateY(-50%);
    color:var(--muted);font-family:var(--mono);font-size:16px;pointer-events:none;
  }
  .gl-layer-filter{display:flex;gap:6px;flex-wrap:wrap}
  .gl-chip{
    padding:6px 12px;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;
    text-transform:uppercase;border:1px solid var(--line);background:var(--bg-card);
    color:var(--text-dim);cursor:pointer;border-radius:2px;user-select:none;
    transition:all .15s;
  }
  .gl-chip:hover{color:var(--text);border-color:var(--text-dim)}
  .gl-chip.active{color:#0c0e12;border-color:transparent}
  .gl-chip.active[data-layer="all"]{background:var(--text)}
  .gl-chip.active[data-layer="1"]{background:var(--accent)}
  .gl-chip.active[data-layer="2"]{background:var(--primary)}
  .gl-chip.active[data-layer="3"]{background:var(--warn)}
  .gl-chip.active[data-layer="4"]{background:var(--ok)}

  /* Layer section header */
  .gl-layer-section{margin-bottom:64px}
  .gl-layer-head{
    display:flex;align-items:baseline;gap:22px;
    padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:28px;
  }
  .gl-layer-num{font-family:var(--display);font-size:54px;color:var(--text-dim);font-weight:300;line-height:1}
  .gl-layer-info{flex:1}
  .gl-layer-title{font-family:var(--display);font-size:26px;color:var(--text);font-weight:400;line-height:1.2}
  .gl-layer-desc{font-size:14px;color:var(--text-dim);margin-top:6px;line-height:1.55}
  .gl-layer-dot{width:14px;height:14px;border-radius:50%}

  /* Terms grid */
  .gl-grid{
    display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));
    gap:18px;
  }
  .gl-card{
    position:relative;padding:24px 24px 22px 28px;
    border:1px solid var(--line);background:var(--bg-card);
    border-radius:2px;cursor:pointer;transition:all .2s ease;
  }
  .gl-card:hover{border-color:var(--text-dim);transform:translateY(-2px);background:rgba(255,255,255,.025)}
  .gl-card.expanded{background:var(--bg-elev);border-color:var(--text-dim)}
  .gl-card::before{
    content:'';position:absolute;top:0;bottom:0;left:0;width:3px;
    border-top-left-radius:2px;border-bottom-left-radius:2px;
  }
  .gl-card[data-layer="1"]::before{background:var(--accent)}
  .gl-card[data-layer="2"]::before{background:var(--primary)}
  .gl-card[data-layer="3"]::before{background:var(--warn)}
  .gl-card[data-layer="4"]::before{background:var(--ok)}
  .gl-card-head{
    display:flex;align-items:flex-start;justify-content:space-between;
    gap:14px;margin-bottom:10px;
  }
  .gl-card-name{
    font-family:var(--display);font-size:19px;font-weight:400;color:var(--text);
    line-height:1.25;
  }
  .gl-card-tier{
    font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;
    text-transform:uppercase;padding:3px 8px;border:1px solid var(--line);
    color:var(--muted);white-space:nowrap;border-radius:2px;
  }
  .gl-card-plain{
    font-family:var(--display);font-style:italic;font-size:14.5px;
    color:var(--text-dim);line-height:1.55;
  }
  .gl-card-details{display:none;padding-top:20px;margin-top:18px;border-top:1px solid var(--line)}
  .gl-card.expanded .gl-card-details{display:block}
  .gl-detail-section{margin-bottom:18px}
  .gl-detail-label{
    font-family:var(--mono);font-size:10.5px;color:var(--accent);
    letter-spacing:.18em;text-transform:uppercase;margin-bottom:6px;
  }
  .gl-detail-text{font-size:14px;color:var(--text);line-height:1.65}
  .gl-case{
    border-left:2px solid var(--text-dim);padding:12px 14px;margin-top:8px;
    background:rgba(255,255,255,.02);font-size:13px;color:var(--text-dim);line-height:1.65;
  }
  .gl-case.crossdata{border-left-color:var(--accent);background:rgba(46,144,255,.04)}
  .gl-case .gl-case-label{
    font-family:var(--mono);font-size:9.5px;color:var(--muted);
    letter-spacing:.18em;text-transform:uppercase;margin-bottom:6px;
  }
  .gl-case.crossdata .gl-case-label{color:var(--accent)}
  .gl-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
  .gl-link{
    padding:5px 10px;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;
    border:1px solid var(--line);background:var(--bg-card);color:var(--text-dim);
    cursor:pointer;border-radius:2px;transition:all .15s;
  }
  .gl-link:hover{border-color:var(--accent);color:var(--accent)}

  /* Concept map mode */
  .gl-map-wrap{
    padding:32px;border:1px solid var(--line);background:var(--bg-elev);
    border-radius:2px;overflow-x:auto;
  }
  .gl-map-intro{
    font-size:14px;color:var(--text-dim);max-width:680px;margin-bottom:24px;line-height:1.6;
  }
  .gl-map-svg{width:100%;max-width:880px;height:auto;display:block;margin:0 auto}
  .gl-map-node{cursor:pointer;transition:opacity .2s}
  .gl-map-node:hover{opacity:.85}
  .gl-map-node-label{font-family:var(--mono);font-size:9.5px;fill:var(--text);text-anchor:middle;pointer-events:none;letter-spacing:.04em}
  .gl-map-link{stroke:var(--line-strong);stroke-width:1;fill:none;opacity:.5}
  .gl-map-link.active{stroke:var(--accent);stroke-width:1.5;opacity:1}

  .gl-results-info{
    font-family:var(--mono);font-size:11px;color:var(--muted);
    letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px;
  }
  .gl-no-results{
    text-align:center;padding:60px 0;color:var(--text-dim);
    font-family:var(--display);font-style:italic;font-size:18px;
  }
  .gl-hidden{display:none !important}

  /* Glossary closing invitation block */
  .gl-invitation{
    margin-top:64px;padding:36px 40px;border:1px solid var(--line);
    background:linear-gradient(180deg, rgba(46,144,255,.04), transparent);
    border-radius:2px;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;
  }
  @media (max-width:760px){.gl-invitation{grid-template-columns:1fr}}
  .gl-invitation .gl-inv-eyebrow{
    font-family:var(--mono);font-size:11px;color:var(--accent);
    letter-spacing:.22em;text-transform:uppercase;margin-bottom:12px;
  }
  .gl-invitation h3{font-family:var(--display);font-size:26px;color:var(--text);font-weight:400;line-height:1.2;margin-bottom:10px}
  .gl-invitation p{font-size:14.5px;color:var(--text-dim);line-height:1.65;margin:0;max-width:620px}

  @media (max-width:880px){
    .gl-controls{position:relative;top:0;padding:12px}
    .gl-grid{grid-template-columns:1fr}
    .gl-layer-num{font-size:38px}
    .gl-picture,.gl-stack{padding:22px 16px}
  }

/* ============================================================
   MULTI-PAGE NAV — grouped dropdowns + dual CTAs
   ============================================================ */
.nav-links .group-multi{position:relative}
.nav-links .group-multi > span,
.nav-links .group-multi > a.methodology-link{
  cursor:pointer;color:var(--text-dim);font-size:13px;letter-spacing:.04em;
  display:inline-flex;align-items:center;gap:4px;text-decoration:none;
}
.nav-links .group-multi > span:hover,
.nav-links .group-multi > a.methodology-link:hover{color:var(--text)}
.nav-links .group-multi > a.methodology-link.nav-current{color:var(--accent)}
.nav-links .group-multi .menu{
  position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);
  min-width:260px;background:var(--bg-elev);border:1px solid var(--line);border-radius:2px;
  padding:14px 0;opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s;
  z-index:90;box-shadow:0 12px 36px rgba(0,0,0,.4);
}
.nav-links .group-multi:hover .menu,
.nav-links .group-multi:focus-within .menu{
  opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);
}
.nav-links .group-multi .menu a{
  display:flex;flex-direction:column;padding:10px 22px;font-size:13px;color:var(--text);
  border-radius:0;background:transparent;
}
.nav-links .group-multi .menu a:hover{background:rgba(46,144,255,.06);color:var(--accent)}
.nav-links .group-multi .menu a small{
  font-family:var(--mono);font-size:10px;color:var(--muted);letter-spacing:.04em;
  margin-top:4px;font-weight:300;
}
.nav-links .group-multi .menu a.active{color:var(--accent)}
.nav-links .btn-ghost{
  font-family:var(--ui);font-size:12px;letter-spacing:.06em;padding:9px 18px;
  border:1px solid var(--line-2);color:var(--text);background:transparent;border-radius:2px;
  text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:all .18s;
}
.nav-links .btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
.nav-links .nav-current{color:var(--accent)}

/* ============================================================
   COLLAPSIBLE CARDS — used in Intelligence + Pattern Library
   ============================================================ */
.collapsible{
  border:1px solid var(--line);background:var(--bg-card);border-radius:2px;
  margin-bottom:14px;overflow:hidden;transition:border-color .2s;
}
.collapsible:hover{border-color:var(--line-2)}
.collapsible.is-open{border-color:var(--accent-line)}
.collapsible .col-head{
  padding:24px 28px;display:flex;justify-content:space-between;align-items:flex-start;
  gap:24px;cursor:pointer;background:transparent;border:0;width:100%;text-align:left;color:inherit;
}
.collapsible .col-head:hover{background:rgba(46,144,255,.02)}
.collapsible .col-head .meta-line{
  font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.16em;
  text-transform:uppercase;margin-bottom:10px;display:flex;gap:14px;flex-wrap:wrap;
}
.collapsible .col-head h3{
  font-family:var(--display);font-size:22px;line-height:1.25;color:var(--text);margin-bottom:10px;
}
.collapsible .col-head .col-excerpt{
  font-size:14px;color:var(--text-dim);line-height:1.55;max-width:680px;font-weight:300;
}
.collapsible .col-head .col-toggle{
  flex-shrink:0;font-family:var(--mono);font-size:11px;letter-spacing:.14em;
  color:var(--accent);text-transform:uppercase;padding:8px 14px;border:1px solid var(--accent-line);
  border-radius:2px;white-space:nowrap;align-self:flex-start;
}
.collapsible.is-open .col-head .col-toggle{background:rgba(46,144,255,.06)}
.collapsible .col-body{
  max-height:0;opacity:0;overflow:hidden;
  transition:max-height .5s ease, opacity .35s ease, padding .35s ease;
  padding:0 28px;
}
.collapsible.is-open .col-body{
  max-height:none;opacity:1;padding:8px 28px 32px 28px;border-top:1px solid var(--line);
}
.collapsible .col-body .figure{margin-left:0;margin-right:0;max-width:none}
.collapsible .col-body .figure svg{max-width:100%}
.collapsible .col-head .col-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.collapsible .col-head .col-tags .tag{
  font-family:var(--mono);font-size:10px;color:var(--accent);letter-spacing:.08em;
  padding:2px 8px;border:1px solid var(--accent-line);border-radius:2px;text-transform:uppercase;
}
@media (max-width:760px){
  .collapsible .col-head{flex-direction:column;align-items:flex-start;padding:20px 18px}
  .collapsible.is-open .col-body{padding:8px 18px 24px 18px}
}

/* ============================================================
   ACCORDION GROUPS — used on About / Methodology page
   ============================================================ */
.acc-group{margin-top:32px}
.acc-group .acc-item{border-top:1px solid var(--line)}
.acc-group .acc-item:last-child{border-bottom:1px solid var(--line)}
.acc-group .acc-item .acc-head{
  padding:24px 0;display:flex;justify-content:space-between;align-items:center;
  cursor:pointer;background:transparent;border:0;width:100%;text-align:left;color:inherit;
}
.acc-group .acc-item .acc-head h3{
  font-family:var(--display);font-size:24px;color:var(--text);
}
.acc-group .acc-item .acc-head .acc-toggle{
  font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.14em;
  text-transform:uppercase;flex-shrink:0;
}
.acc-group .acc-item .acc-body{
  max-height:0;opacity:0;overflow:hidden;
  transition:max-height .5s ease, opacity .35s ease, padding .35s ease;
  padding:0;
}
.acc-group .acc-item.is-open .acc-body{
  max-height:none;opacity:1;padding:0 0 32px 0;
}

/* ============================================================
   GLOBAL FOOTER · CONTACTS · LINKEDIN
   ============================================================ */
.site-footer{
  padding:80px 0 56px 0;border-top:1px solid var(--line);
  background:linear-gradient(180deg, rgba(46,144,255,.02), transparent 60%);
}
.site-footer .container{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px}
.site-footer .col h5{
  font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.18em;
  text-transform:uppercase;margin-bottom:18px;font-weight:400;
}
.site-footer .col p{
  font-size:14px;color:var(--text-dim);line-height:1.6;margin-bottom:18px;max-width:380px;
}
.site-footer .col a{
  display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;
  font-size:13.5px;padding:8px 0;border-bottom:1px solid var(--line);
  transition:color .18s;
}
.site-footer .col a:last-child{border-bottom:0}
.site-footer .col a:hover{color:var(--accent)}
.site-footer .col a svg{width:16px;height:16px;flex-shrink:0;opacity:.8}
.site-footer .col a small{
  display:block;font-family:var(--mono);font-size:10px;color:var(--muted);letter-spacing:.06em;margin-top:2px;
}
.site-footer .col .linkedin-link{
  display:inline-flex;align-items:center;gap:10px;border:1px solid var(--accent-line);
  padding:12px 18px;border-radius:2px;border-bottom:1px solid var(--accent-line);margin-bottom:14px;
}
.site-footer .col .linkedin-link:hover{background:rgba(46,144,255,.05)}
.site-footer .col .linkedin-link svg{color:var(--accent)}
.site-footer .legal{
  grid-column:1/-1;margin-top:48px;padding-top:32px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;
  font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;
}
.site-footer .legal a{color:var(--muted);text-decoration:none;border:0;padding:0;display:inline}
.site-footer .legal a:hover{color:var(--accent)}
@media (max-width:760px){
  .site-footer{padding:48px 0 32px 0}
  .site-footer .container{grid-template-columns:1fr;gap:32px}
  .site-footer .legal{flex-direction:column;align-items:flex-start;gap:8px}
}

/* ============================================================
   PAGE HERO (compact hero for inner pages)
   ============================================================ */
.page-hero{
  padding:120px 0 48px 0;border-bottom:1px solid var(--line);
  background:linear-gradient(180deg, rgba(46,144,255,.04), transparent 80%);
}
.page-hero .crumbs{
  font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.18em;
  text-transform:uppercase;margin-bottom:18px;
}
.page-hero .crumbs a{color:var(--muted);text-decoration:none}
.page-hero .crumbs a:hover{color:var(--accent)}
.page-hero h1{
  font-family:var(--display);font-size:54px;line-height:1.05;color:var(--text);
  margin-bottom:18px;letter-spacing:-0.5px;max-width:880px;
}
.page-hero h1 em{font-style:italic;color:var(--primary);font-weight:400}
.page-hero .lead{
  font-family:var(--display);font-style:italic;font-size:20px;color:var(--text-dim);
  max-width:720px;line-height:1.5;
}
@media (max-width:760px){
  .page-hero{padding:84px 0 32px 0}
  .page-hero h1{font-size:36px}
  .page-hero .lead{font-size:16px}
}

/* Collapsibles must remain visible regardless of IO timing */
.collapsible.reveal{opacity:1;transform:none}
.acc-item.reveal{opacity:1;transform:none}

/* ============================================================
   ACCESSIBILITY — skip-link, focus-visible, sr-only
   ============================================================ */
.skip-link{
  position:absolute;left:8px;top:-40px;z-index:1000;
  background:var(--accent);color:#0c0e12;
  padding:10px 16px;border-radius:2px;text-decoration:none;
  font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;
  transition:top .2s ease;
}
.skip-link:focus{top:8px;outline:2px solid var(--accent);outline-offset:2px}

.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Visible focus for keyboard users */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:2px solid var(--accent);outline-offset:2px;border-radius:2px;
}

/* Honour reduced motion */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important}
}

/* main landmark should not break existing layout */
main{display:block}

/* ============================================================
   COLLAPSIBLE LIVE INDICATOR — slow pulsing glow on live essays
   ============================================================ */
.collapsible.is-live{
  border-color:rgba(46,144,255,.28);
  animation:essayCardPulse 3.4s ease-in-out infinite;
}
.collapsible.is-live .col-head .live-pulse{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--mono);font-size:10px;letter-spacing:.18em;
  color:var(--accent);text-transform:uppercase;
}
.collapsible.is-live .col-head .live-pulse::before{
  content:'';width:7px;height:7px;border-radius:50%;background:var(--accent);
  box-shadow:0 0 0 0 rgba(46,144,255,.55);
  animation:liveDotPulse 1.8s ease-in-out infinite;
}
.collapsible.is-live:hover,
.collapsible.is-live.is-open{
  animation-play-state:paused;
  border-color:var(--accent);
}
.collapsible.is-live:hover .live-pulse::before,
.collapsible.is-live.is-open .live-pulse::before{
  animation-play-state:paused;
  box-shadow:0 0 0 6px rgba(46,144,255,.14);
}
@keyframes essayCardPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(46,144,255,0), inset 0 0 0 0 rgba(46,144,255,0)}
  50%    {box-shadow:0 0 24px -8px rgba(46,144,255,.38), inset 0 0 0 1px rgba(46,144,255,.16)}
}
@keyframes liveDotPulse{
  0%   {box-shadow:0 0 0 0 rgba(46,144,255,.6)}
  70%  {box-shadow:0 0 0 11px rgba(46,144,255,0)}
  100% {box-shadow:0 0 0 0 rgba(46,144,255,0)}
}
@media (prefers-reduced-motion: reduce){
  .collapsible.is-live,.collapsible.is-live .live-pulse::before{animation:none}
}

/* ============================================================
   CATEGORY DEFINITION — "A new category. Two disciplines."
   ============================================================ */
.category-def{padding:96px 0;border-top:1px solid var(--line);background:linear-gradient(180deg, rgba(46,144,255,.02), transparent 60%)}
.category-def .catdef-head{text-align:center;margin-bottom:56px}
.category-def .catdef-head .eyebrow{
  font-family:var(--mono);font-size:11px;letter-spacing:.42em;color:var(--accent);
  text-transform:uppercase;
}
.category-def .catdef-head h2{
  font-family:var(--display);font-size:48px;line-height:1.05;color:var(--text);
  letter-spacing:-0.5px;max-width:920px;margin:0 auto;
}
.category-def .catdef-head h2 em{font-style:italic;color:var(--primary);font-weight:400}

.catdef-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:56px}
.catdef-card{
  padding:42px 44px;border:1px solid var(--line);background:var(--bg-card);
  border-radius:2px;display:flex;flex-direction:column;gap:18px;
  position:relative;overflow:hidden;
}
.catdef-card::before{
  content:'';position:absolute;top:0;left:0;width:3px;height:100%;
  background:var(--accent);opacity:.7;
}
.catdef-card.cd-kairos::before{background:var(--primary)}
.catdef-card .cd-tag{
  font-family:var(--mono);font-size:11px;letter-spacing:.32em;color:var(--accent);
  text-transform:uppercase;
}
.catdef-card.cd-kairos .cd-tag{color:var(--primary)}
.catdef-card h3{
  font-family:var(--display);font-size:34px;line-height:1.1;color:var(--text);
  letter-spacing:-0.3px;margin:0;
}
.catdef-card h3 em{font-style:italic;color:var(--accent);font-weight:400}
.catdef-card.cd-kairos h3 em{color:var(--primary)}
.catdef-card .cd-body{
  font-size:15.5px;line-height:1.65;color:var(--text-dim);max-width:540px;margin:0;
}
.catdef-card .cd-list{
  list-style:none;padding:0;margin:8px 0 0 0;
  display:flex;flex-direction:column;gap:10px;
}
.catdef-card .cd-list li{
  padding-left:22px;position:relative;font-size:14px;line-height:1.5;color:var(--text);
}
.catdef-card .cd-list li::before{
  content:'';position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:50%;
  background:var(--accent);opacity:.9;
}
.catdef-card.cd-kairos .cd-list li::before{background:var(--primary)}

.catdef-thesis{
  max-width:920px;margin:0 auto;padding:42px 48px;
  border:1px solid var(--accent-line);border-radius:2px;
  background:linear-gradient(180deg, rgba(46,144,255,.04), rgba(92,191,149,.025));
  text-align:center;
}
.catdef-thesis .ct-eyebrow{
  font-family:var(--mono);font-size:11px;letter-spacing:.32em;color:var(--accent);
  text-transform:uppercase;margin-bottom:18px;
}
.catdef-thesis .ct-text{
  font-family:var(--display);font-size:21px;line-height:1.55;color:var(--text-dim);
  font-style:italic;max-width:760px;margin:0 auto;
}
.catdef-thesis .ct-text em{font-style:italic;color:var(--text);font-weight:400}
.catdef-thesis .ct-text strong{font-style:normal;font-weight:500;color:var(--primary)}

@media (max-width:760px){
  .category-def{padding:64px 0}
  .category-def .catdef-head h2{font-size:32px}
  .catdef-grid{grid-template-columns:1fr;gap:18px;margin-bottom:36px}
  .catdef-card{padding:28px 24px}
  .catdef-card h3{font-size:26px}
  .catdef-thesis{padding:28px 24px}
  .catdef-thesis .ct-text{font-size:16px}
}

/* ============================================================
   SERVICES PAGE — three pulsing-frame tiers
   ============================================================ */
.services-grid-wrap{padding:64px 0 96px 0}
.services-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:stretch;
}
.service-card{
  position:relative;display:flex;flex-direction:column;gap:18px;
  padding:36px 32px;border-radius:2px;
  background:var(--bg-card);
  border:1.5px solid var(--line);
  overflow:hidden;
  transition:transform .25s ease, border-color .25s ease;
}
.service-card:hover{transform:translateY(-2px)}

.service-card .svc-head{
  display:flex;justify-content:space-between;align-items:baseline;gap:14px;
  padding-bottom:14px;border-bottom:1px solid var(--line);
}
.service-card .svc-tier{
  font-family:var(--mono);font-size:11px;letter-spacing:.32em;
  text-transform:uppercase;font-weight:500;
}
.service-card .svc-meta{
  font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:var(--muted);
  text-transform:uppercase;text-align:right;
}
.service-card h2.svc-name{
  font-family:var(--display);font-size:34px;line-height:1.1;color:var(--text);
  letter-spacing:-0.3px;margin:0;
}
.service-card h2.svc-name em{font-style:italic;font-weight:400}
.service-card .svc-pitch{
  font-size:15px;line-height:1.6;color:var(--text-dim);margin:0;
}
.service-card .svc-block{margin-top:8px}
.service-card .svc-block-title{
  font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;
  text-transform:uppercase;margin-bottom:10px;color:var(--text);
}
.service-card .svc-block-light .svc-block-title{color:var(--muted)}
.service-card .svc-list{
  list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;
}
.service-card .svc-list li{
  font-size:13.5px;line-height:1.55;color:var(--text-dim);
  padding-left:18px;position:relative;
}
.service-card .svc-list li::before{
  content:'';position:absolute;left:0;top:9px;width:7px;height:1px;
  background:currentColor;opacity:.8;
}
.service-card .svc-list li strong{color:var(--text);font-weight:500}
.service-card .svc-block-light p{
  font-size:13.5px;line-height:1.6;color:var(--text-dim);margin:0;font-style:italic;
}
.service-card .svc-cta{
  margin-top:auto;display:inline-flex;align-items:center;gap:8px;
  padding:11px 18px;border:1px solid;border-radius:2px;
  text-decoration:none;font-family:var(--ui);font-size:13px;letter-spacing:.04em;
  align-self:flex-start;transition:background .18s ease, color .18s ease;
}
.service-card .svc-cta .arrow{font-family:var(--mono);transition:transform .2s}
.service-card .svc-cta:hover .arrow{transform:translateX(3px)}

/* ---- STARTER (blue / Diagnostic) ---- */
.svc-starter{
  border-color:rgba(46,144,255,.5);
  animation:svcPulseBlue 3.6s ease-in-out infinite;
}
.svc-starter .svc-tier{color:var(--accent)}
.svc-starter h2.svc-name em{color:var(--accent)}
.svc-starter .svc-cta{
  border-color:rgba(46,144,255,.5);color:var(--accent);background:transparent;
}
.svc-starter .svc-cta:hover{background:rgba(46,144,255,.08);color:#a4cfff}

/* ---- BUSINESS (green / Decision Pack) ---- */
.svc-business{
  border-color:rgba(92,191,149,.5);
  animation:svcPulseGreen 3.6s ease-in-out infinite;
  animation-delay:1.2s;
}
.svc-business .svc-tier{color:var(--primary)}
.svc-business h2.svc-name em{color:var(--primary)}
.svc-business .svc-cta{
  border-color:rgba(92,191,149,.5);color:var(--primary);background:transparent;
}
.svc-business .svc-cta:hover{background:rgba(92,191,149,.08);color:#9fe1c2}

/* ---- ADVANCED (red-amber / Kairos) ---- */
.svc-advanced{
  border-color:rgba(255,91,91,.5);
  animation:svcPulseRed 3.6s ease-in-out infinite;
  animation-delay:2.4s;
}
.svc-advanced .svc-tier{color:#ff7d7d}
.svc-advanced h2.svc-name em{color:#ff7d7d}
.svc-advanced .svc-cta{
  border-color:rgba(255,91,91,.5);color:#ff7d7d;background:transparent;
}
.svc-advanced .svc-cta:hover{background:rgba(255,91,91,.08);color:#ffa3a3}

/* Pulse keyframes */
@keyframes svcPulseBlue{
  0%,100%{box-shadow:0 0 0 0 rgba(46,144,255,0), inset 0 0 0 0 rgba(46,144,255,0)}
  50%    {box-shadow:0 0 26px -6px rgba(46,144,255,.35), inset 0 0 0 1px rgba(46,144,255,.18)}
}
@keyframes svcPulseGreen{
  0%,100%{box-shadow:0 0 0 0 rgba(92,191,149,0), inset 0 0 0 0 rgba(92,191,149,0)}
  50%    {box-shadow:0 0 26px -6px rgba(92,191,149,.35), inset 0 0 0 1px rgba(92,191,149,.18)}
}
@keyframes svcPulseRed{
  0%,100%{box-shadow:0 0 0 0 rgba(255,91,91,0), inset 0 0 0 0 rgba(255,91,91,0)}
  50%    {box-shadow:0 0 26px -6px rgba(255,91,91,.32), inset 0 0 0 1px rgba(255,91,91,.18)}
}
.service-card:hover{animation-play-state:paused}

@media (prefers-reduced-motion: reduce){
  .service-card{animation:none}
}

.svc-foot{
  margin-top:48px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;
  color:var(--muted);line-height:1.7;max-width:760px;
}

@media (max-width:1080px){
  .services-grid{grid-template-columns:1fr;gap:18px}
  .service-card{padding:28px 24px}
}

/* ============================================================
   VALIDATED PREDICTION HIGHLIGHT — used on the MacPaw case to
   mark ESI readings that were subsequently confirmed by MacPaw's
   own CSR 2025 publication (Cross-Walk analysis · May 2026).
   ============================================================ */
.validated{
  position:relative;
  background:linear-gradient(90deg, rgba(92,191,149,.08), rgba(92,191,149,.02) 60%, transparent);
  border-left:2px solid var(--primary);
  padding-left:14px !important;
}
.validated .v-mark{
  display:inline-flex;align-items:center;gap:6px;
  font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;
  color:var(--primary);text-transform:uppercase;
  margin-left:8px;padding:2px 8px;border:1px solid rgba(92,191,149,.4);border-radius:2px;
  background:rgba(92,191,149,.06);white-space:nowrap;
}
.validated .v-mark::before{
  content:'';width:6px;height:6px;border-radius:50%;background:var(--primary);
  box-shadow:0 0 0 0 rgba(92,191,149,.55);
  animation:validatedPulse 2.6s ease-in-out infinite;
}
/* For table rows, apply to the .cell (since the row already grids) */
.pattern-table .row.validated,
.watch-table .row.validated{
  background:linear-gradient(90deg, rgba(92,191,149,.07), rgba(92,191,149,.02));
  border-left:2px solid var(--primary);
}
@keyframes validatedPulse{
  0%   {box-shadow:0 0 0 0 rgba(92,191,149,.55)}
  70%  {box-shadow:0 0 0 8px rgba(92,191,149,0)}
  100% {box-shadow:0 0 0 0 rgba(92,191,149,0)}
}
@media (prefers-reduced-motion: reduce){
  .validated .v-mark::before{animation:none}
}

/* Legend block explaining the validated highlight */
.validated-legend{
  margin:24px 40px;padding:18px 24px;
  border:1px dashed rgba(92,191,149,.35);border-radius:2px;
  background:rgba(92,191,149,.025);
  display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap;
}
.validated-legend .vl-tag{
  font-family:var(--mono);font-size:9.5px;letter-spacing:.22em;
  color:var(--primary);text-transform:uppercase;padding:4px 10px;
  border:1px solid rgba(92,191,149,.4);border-radius:2px;
  background:rgba(92,191,149,.08);flex-shrink:0;
}
.validated-legend .vl-text{
  font-size:13px;line-height:1.55;color:var(--text-dim);flex:1;min-width:280px;
}
.validated-legend .vl-text strong{color:var(--text);font-weight:500}
@media (max-width:760px){
  .validated-legend{margin:18px 18px}
}
