:root{--ink:#14211a;--muted:#4f5b53;--page:#f7f5ef;--paper:#fff;--soft:#eaf0ea;--line:#d2d9d2;--green:#185e3c;--warm:#a85e29}
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  [id]{scroll-margin-top:84px}
  body{margin:0;background:var(--page);color:var(--ink);font:18px/1.6 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
  a{color:inherit}
  a:focus-visible{outline:3px solid var(--green);outline-offset:3px}
  h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;text-wrap:balance}
  p{text-wrap:pretty}
  .wrap{max-width:1100px;margin:0 auto;padding:0 36px}
  .btn{display:inline-flex;min-height:48px;padding:0 22px;align-items:center;justify-content:center;background:var(--green);color:#fff;text-decoration:none;border-radius:6px;font-size:16px;font-weight:500}
  .btn:hover{background:#124a2f}
  .btn-2{background:transparent;color:var(--ink);border:1px solid #b9c2ba}
  .btn-2:hover{background:#fff}
  .kicker{margin:0 0 14px!important;color:var(--green);font-size:14px;font-weight:600;letter-spacing:.06em}
  .hero{padding:88px 0 44px}
  #decisions{padding-top:0}
  .proof{margin-bottom:8px}
  .hero h1{margin:0;max-width:960px;font-size:clamp(32px,3.9vw,48px);line-height:1.06;letter-spacing:-.03em}
  .hero h1 span{display:block;margin-top:.35em;color:var(--green)}
  .lede{margin:26px 0 0;max-width:780px;font-size:clamp(19px,1.7vw,22px);line-height:1.55;color:#2c3a31}
  .for-whom{margin:18px 0 0;max-width:780px;padding-left:14px;border-left:3px solid var(--green);font-size:18px;color:#2c3a31}
  .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
  .proof{display:grid;grid-template-columns:.8fr 2.2fr;gap:30px;align-items:center;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .proof strong{font:500 19px/1.3 Georgia,serif}
  .proof p{margin:0}.sectors{font-size:18px;color:#2c3a31}.clients{margin-top:6px!important;font-size:16px;color:var(--muted)}
  .section{padding:76px 0}
  .heading{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:end;margin-bottom:36px}
  .heading h2,.section>h2,.benefit h2,.engage h2{margin:0;font-size:clamp(30px,3.4vw,40px);line-height:1.13;letter-spacing:-.02em}
  .heading p:not(.kicker){margin:0;color:var(--muted);font-size:18px}
  .decisions{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .decision{padding:26px 22px}
  .decision:first-child{padding-left:0}
  .decision+.decision{border-left:1px solid var(--line)}
  .decision h3{margin:0 0 10px;font-size:23px;line-height:1.2}
  .decision p{margin:0;color:var(--muted);font-size:17px;line-height:1.5}
  .try{margin-top:44px;padding:28px 30px;background:var(--paper);border:1px solid var(--line);border-radius:10px}
  .try h3{margin:0 0 6px;font-size:24px}
  .try p{margin:0;color:var(--muted);font-size:17px}
  .try-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}
  .try-links .btn{min-height:56px;text-align:center;line-height:1.3}
  .roles-band{padding:72px 0;background:var(--soft)}
  .roles-band h2{margin:0 0 36px;max-width:780px;font-size:clamp(30px,3.4vw,40px);line-height:1.15;letter-spacing:-.02em}
  .roles-band h2{margin-bottom:12px}.roles-lead{margin:0 0 32px;font-size:19px;color:#2c3a31}
  .roles{display:grid;grid-template-columns:repeat(3,1fr)}
  .role{padding:24px 30px 8px 0}
  .role+.role{padding-left:30px;border-left:1px solid var(--line)}
  .role-label{display:block;margin-bottom:10px;color:var(--green);font-size:14px;font-weight:600;letter-spacing:.06em}
  .role h3{margin:0 0 10px;font-size:25px;line-height:1.2}
  .role p{margin:0;color:var(--muted);font-size:17px;line-height:1.55}
  .gets h2{margin:0;max-width:760px;font-size:clamp(30px,3.4vw,40px);line-height:1.13;letter-spacing:-.02em}
  .gets-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:34px}
  .gets-grid article{padding-top:16px;border-top:2px solid var(--green)}
  .gets-grid h3{margin:0 0 8px;font-size:22px;line-height:1.2}
  .gets-grid p{margin:0;color:var(--muted);font-size:17px;line-height:1.5}
  @media(max-width:880px){.gets-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:620px){.gets-grid{grid-template-columns:1fr}}
  .benefit{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
  .benefit>div:first-child p:not(.kicker){margin:18px 0 0;color:var(--muted);font-size:18px}
  .benefit-item{padding:20px 0;border-top:1px solid var(--line)}
  .benefit-item:last-child{border-bottom:1px solid var(--line)}
  .benefit-item h3{margin:0 0 6px;font-size:22px}
  .benefit-item p{margin:0;color:var(--muted);font-size:17px;line-height:1.5}
  .engage{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center;padding:80px 0}
  .engage p:not(.kicker){margin:16px 0 0;color:var(--muted);font-size:18px}
  .facts{display:grid;grid-template-columns:1fr 1fr;gap:24px 28px}
  .fact{padding-top:14px;border-top:1px solid var(--line)}
  .fact strong{display:block;margin-bottom:6px;font:500 23px/1.2 Georgia,serif}
  .fact span{color:var(--muted);font-size:16px;line-height:1.45}
  .about{padding:56px 0 72px;border-top:1px solid var(--line)}
  .about p:not(.kicker){margin:0;max-width:860px;font-size:18px;color:#2c3a31}
  .about a{display:inline-block;margin-top:14px;color:var(--green);font-weight:600;text-decoration:none}
  footer{border-top:1px solid var(--line)}
  footer .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-block:28px;color:var(--muted);font-size:15px}
  footer nav{display:flex;gap:24px}footer a{text-decoration:none}
  @media(max-width:880px){
    .heading,.benefit,.engage,.proof{grid-template-columns:1fr;gap:24px}
    .decisions{grid-template-columns:1fr 1fr}
    .decision:nth-child(3){border-left:0;padding-left:0}
    .decision{border-bottom:1px solid var(--line)}
    .try-links{grid-template-columns:1fr}
  }
  @media(max-width:620px){
    .wrap{padding:0 20px}
    .hero{padding:56px 0 48px}
    .decisions,.roles,.facts{grid-template-columns:1fr}
    .decision,.decision:first-child{padding:22px 0}
    .decision+.decision,.role+.role{border-left:0;padding-left:0;border-top:1px solid var(--line)}
      .actions .btn{width:100%}
  }
  @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

  /* ---- shared page furniture ---- */
  .page-head{padding:72px 0 36px}
  .page-head h1{margin:0;max-width:900px;font-size:clamp(34px,4.4vw,52px);line-height:1.08;letter-spacing:-.025em}
  .page-head .lede{margin-top:20px}
  .section h2{margin:0 0 14px;font-size:clamp(28px,3.2vw,38px);line-height:1.15;letter-spacing:-.02em}
  .section>p:not(.kicker){max-width:780px;color:#2c3a31}
  .jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
  .jump a{padding:8px 14px;border:1px solid #b9c2ba;border-radius:6px;text-decoration:none;font-size:16px}
  .jump a:hover{background:#fff}
  .engine{padding:56px 0;border-top:1px solid var(--line)}
  .engine-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:22px}
  .engine h2{margin:0 0 10px;font-size:clamp(28px,3.2vw,38px);line-height:1.15}
  .engine .intro{margin:0;max-width:760px;font-size:19px;color:#2c3a31}
  .engine h3{margin:0 0 12px;font-size:21px}
  .engine ul{margin:0;padding-left:20px}
  .engine li{margin:0 0 8px;font-size:17px;color:#2c3a31}
  .engine .produces p,.engine .source{margin:0;font-size:17px;color:#2c3a31}
  .engine .source{margin-top:18px;padding-left:14px;border-left:3px solid var(--green);color:var(--muted)}
  .engine .produces .source{margin-top:18px}
  .more{display:inline-block;margin-top:16px;color:var(--green);font-weight:600;text-decoration:none}
  .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:30px}
  .card{padding-top:16px;border-top:2px solid var(--green)}
  .card h3{margin:0 0 8px;font-size:22px;line-height:1.2}
  .card p{margin:0 0 8px;color:var(--muted);font-size:17px}
  .card .used{font-size:15px;color:var(--green)}
  .steps-list{display:grid;gap:0;margin:26px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}
  .steps-list li{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:18px 0;border-bottom:1px solid var(--line)}
  .steps-list .n{color:var(--green);font-weight:700}
  .steps-list strong{display:block;font:500 21px/1.25 Georgia,serif;margin-bottom:4px}
  .steps-list p{margin:0;color:var(--muted);font-size:17px}
  .compare{width:100%;border-collapse:collapse;margin-top:26px;font-size:17px;background:var(--paper)}
  .compare th,.compare td{padding:14px 16px;border:1px solid var(--line);text-align:left;vertical-align:top}
  .compare thead th{background:var(--soft);font-weight:600}
  .compare tr.us td,.compare tr.us th{background:#f1f6f1;font-weight:600}
  .table-scroll{overflow-x:auto}
  .principle{margin:36px 0 0;padding-left:18px;border-left:3px solid var(--green);font:500 clamp(22px,2.4vw,28px)/1.3 Georgia,serif;max-width:800px}
  .cta-band{margin:24px 0 72px;padding:36px;background:var(--soft);border-radius:12px;display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
  .cta-band h2{margin:0;font-size:clamp(24px,2.6vw,32px);max-width:640px}
  .bio{display:grid;grid-template-columns:260px 1fr;gap:44px;align-items:start}
  .bio img{width:100%;border-radius:10px;display:block}
  .bio p{margin:0 0 16px;font-size:18px;color:#2c3a31}
  .bio .quote,.quote{margin:28px 0;padding-left:18px;border-left:3px solid var(--green);font:500 23px/1.35 Georgia,serif}
  .advisors{display:grid;grid-template-columns:1fr 1fr;gap:34px 44px;margin-top:30px}
  .advisor h3{margin:0 0 2px;font-size:24px}
  .advisor .role{margin:0 0 10px;color:var(--green);font-weight:600;font-size:16px}
  .advisor p{margin:0 0 10px;font-size:17px;color:#2c3a31}
  .tags{display:flex;flex-wrap:wrap;gap:6px}
  .tags span{padding:3px 10px;border:1px solid var(--line);border-radius:20px;font-size:14px;color:var(--muted)}
  .form{max-width:760px;margin-top:10px}
  .form label{display:block;margin:0 0 6px;font-weight:600;font-size:16px}
  .form input,.form textarea{width:100%;padding:12px 14px;border:1px solid #b9c2ba;border-radius:6px;font:inherit;font-size:17px;background:#fff}
  .form textarea{min-height:170px}
  .form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
  .form>div{margin-bottom:18px}
  .form .hp{display:none}
  .submit-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
  .submit-note{margin:0;color:var(--muted);font-size:16px}
  .form button{min-height:50px;padding:0 26px;border:0;border-radius:6px;background:var(--green);color:#fff;font:inherit;font-size:17px;font-weight:500;cursor:pointer}
  .form button:hover{background:#124a2f}
  /* ---- long-form document pages (engagement, cases) ---- */
  main.doc{max-width:860px;margin:0 auto;padding:64px 36px 80px}
  main.doc.wide{max-width:960px}
  .doc .eyebrow,.doc .kicker,.doc .num{display:block;margin:0 0 12px;color:var(--green);font-size:14px;font-weight:600;letter-spacing:.06em}
  .doc h1{margin:0 0 18px;font-size:clamp(34px,4.4vw,52px);line-height:1.08;letter-spacing:-.025em}
  .doc h2{margin:48px 0 14px;font-size:clamp(26px,3vw,34px);line-height:1.18}
  .doc h3{margin:0 0 12px;font-size:25px;line-height:1.22}
  .doc p,.doc li{font-size:18px;color:#2c3a31}
  .doc .lede{font-size:clamp(19px,1.7vw,22px);color:#2c3a31}
  .doc a{color:var(--green)}
  .doc .steps{border-top:1px solid var(--line);margin-top:10px}
  .doc .steps>div{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}
  .doc .steps .n{color:var(--green);font-weight:700}
  .doc .steps strong{font:500 21px/1.25 Georgia,serif}
  .doc .steps p{margin:4px 0 0;color:var(--muted);font-size:17px}
  .doc .pull{margin:32px 0;padding-left:18px;border-left:3px solid var(--green)}
  .doc .pull p{font:500 clamp(21px,2.2vw,26px)/1.35 Georgia,serif;color:var(--ink)}
  .doc .engine-head{margin:64px 0 18px;padding-top:28px;border-top:2px solid var(--green)}
  .doc .engine-head h2{margin:0 0 6px}
  .doc .engine-head p{margin:0;color:var(--muted)}
  .doc .caseblock{margin:0 0 26px;padding:30px;background:var(--paper);border:1px solid var(--line);border-radius:12px}
  .doc .outcome{margin-top:16px;padding:14px 18px;background:var(--soft);border-radius:8px}
  .doc .outcome p{margin:0;font-weight:600;color:var(--ink)}
  .doc .note{margin-top:36px;font-size:16px;color:var(--muted)}
  .doc .backlink{display:inline-block;margin-top:30px;font-weight:600;text-decoration:none}
  .site-footer{border-top:1px solid var(--line)}
  .site-footer .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-block:28px;color:var(--muted);font-size:15px}
  .footer-links{display:flex;flex-wrap:wrap;gap:22px}.footer-links a{text-decoration:none}.footer-links a:hover{color:var(--ink)}
  header.site-nav{height:70px;background:var(--page);border-bottom:1px solid var(--line)}
  @media(max-width:880px){.engine-grid,.bio,.advisors,.form-row{grid-template-columns:1fr}.cards{grid-template-columns:1fr}}
