/* =====================================================
   mainul.bd — Semantic homepage modules
   Loads AFTER style.css. Re-uses its tokens (--bg, --accent, --panel, --line …).
   Every class is prefixed .sx- so nothing collides with existing pages.
   ===================================================== */

/* ---------- shared ---------- */
.sx-light{background:var(--light);color:var(--ink)}
.sx-light .muted,.sx-light .sx-lead{color:#5b606c}
.sx-amber{background:var(--accent);color:var(--ink);
    background-image:radial-gradient(rgba(0,0,0,.07) 1.2px,transparent 1.2px);background-size:18px 18px}
.sx-head{max-width:820px;margin:0 auto 54px;text-align:center}
.sx-head.left{margin-left:0;text-align:left}
.sx-h2{font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(2rem,4.6vw,3.3rem);line-height:1;letter-spacing:-.02em;margin:.35em 0 .45em}
.sx-lead{color:var(--muted);font-size:1.05rem;max-width:720px;margin:0 auto}
.sx-head.left .sx-lead{margin-left:0}
.sx-note{font-size:.78rem;color:var(--muted-2);margin-top:22px}
.sx-light .sx-note{color:#8a8f9c}
.sx-src{font-size:.72rem;color:var(--muted-2);letter-spacing:.02em}
.sx-src a{border-bottom:1px dotted currentColor}
.sx-light .sx-src{color:#8a8f9c}
.sx-tag{display:inline-block;font-family:'Archivo',sans-serif;font-weight:800;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:5px;white-space:nowrap}
.sx-tag.critical{background:#ff5b5b;color:#1a0505}
.sx-tag.high{background:#ff9b3d;color:#1f0e00}
.sx-tag.moderate{background:#3a3c42;color:#e9eaee}
.sx-tag.found{background:#1a2a5c;color:#9fb6ff}
.sx-tag.grow{background:var(--accent);color:var(--ink)}
.sx-tag.auth{background:#173d2c;color:#7ff0b4}
.sx-tag.ymyl{background:#3d1730;color:#ff9fd6}
.sx-link{font-family:'Archivo',sans-serif;font-weight:800;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;border-bottom:2px solid var(--accent);padding-bottom:3px;display:inline-block}
.sx-link:hover{color:var(--accent)}
.sx-light .sx-link:hover{color:var(--accent-d)}
.sx-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:28px;transition:border-color .25s,transform .25s}
.sx-card:hover{border-color:var(--accent)}
.sx-light .sx-card{background:#fff;border-color:var(--light-2)}
.sx-light .sx-card:hover{border-color:var(--accent);box-shadow:0 18px 40px rgba(0,0,0,.07)}
.sx-card h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.2rem;line-height:1.2;margin-bottom:10px}
.sx-card p{color:var(--muted);font-size:.95rem}
.sx-light .sx-card p{color:#5b606c}
.sx-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.sx-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.sx-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.sx-center-cta{text-align:center;margin-top:46px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ---------- hero additions ---------- */
.hero-title .accent.sm{font-size:.62em;display:inline-block;line-height:1.05}
.sx-hero-ctas{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.btn-ghost{background:transparent;color:var(--white);box-shadow:inset 0 0 0 1.5px var(--line)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--accent)}
.sx-trustline{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:26px;font-family:'Archivo',sans-serif;font-weight:700;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sx-trustline span::before{content:"\2713";color:var(--accent);margin-right:7px}

/* ---------- on-page jump nav ---------- */
.sx-jump{position:sticky;top:64px;z-index:50;background:rgba(17,17,19,.92);backdrop-filter:blur(10px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sx-jump .container{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-top:10px;padding-bottom:10px}
.sx-jump .container::-webkit-scrollbar{display:none}
.sx-jump a{flex:0 0 auto;font-family:'Archivo',sans-serif;font-weight:700;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:8px 14px;border-radius:30px;border:1px solid transparent;transition:.2s}
.sx-jump a:hover,.sx-jump a.on{color:var(--accent);border-color:var(--line);background:var(--panel)}

/* ---------- benefits ---------- */
.sx-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.sx-benefit{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:26px 24px;position:relative}
.sx-benefit:first-child{grid-column:span 2;background:linear-gradient(150deg,var(--accent),var(--accent-d));color:var(--ink);border:none}
.sx-benefit:first-child p{color:rgba(0,0,0,.75)}
.sx-benefit .ico{width:40px;height:40px;border-radius:10px;background:var(--bg);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.sx-benefit:first-child .ico{background:var(--ink)}
.sx-benefit .ico svg{width:20px;height:20px}
.sx-benefit h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.08rem;margin-bottom:8px}
.sx-benefit p{color:var(--muted);font-size:.92rem}

/* ---------- results snapshot ---------- */
.sx-results{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid rgba(0,0,0,.15);border-radius:16px;overflow:hidden;background:rgba(255,255,255,.35)}
.sx-result{padding:30px 26px;border-right:1px solid rgba(0,0,0,.12)}
.sx-result:last-child{border-right:none}
.sx-result b{display:block;font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(2.2rem,4vw,3.1rem);line-height:.95;letter-spacing:-.02em}
.sx-result span{display:block;font-family:'Archivo',sans-serif;font-weight:800;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;margin:10px 0 6px}
.sx-result small{color:rgba(0,0,0,.65);font-size:.86rem;line-height:1.45;display:block}
.sx-creds{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:36px 0 0}
.sx-cred{display:flex;align-items:center;gap:10px;background:var(--ink);color:#fff;border-radius:40px;padding:9px 18px 9px 9px;font-family:'Archivo',sans-serif;font-weight:700;font-size:.78rem}
.sx-cred i{width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--ink);display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:900;font-size:.72rem}
.sx-audit{margin-top:40px;background:var(--ink);color:#fff;border-radius:18px;padding:30px 34px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.sx-audit h3{font-family:'Archivo',sans-serif;font-weight:900;font-size:1.5rem;text-transform:uppercase}
.sx-audit p{color:var(--muted);max-width:560px}

/* ---------- testimonials heading tweak (h3 names) ---------- */
.testi-card h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.1rem}

/* ---------- services grid ---------- */
.sx-service{display:flex;flex-direction:column;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:28px;transition:.25s;position:relative;overflow:hidden}
.sx-service::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--accent);transition:width .35s var(--ease)}
.sx-service:hover{transform:translateY(-4px);border-color:#3a3c42}
.sx-service:hover::after{width:100%}
.sx-service .num{font-family:'Archivo',sans-serif;font-weight:900;font-size:.8rem;color:var(--accent);letter-spacing:.12em}
.sx-service h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.18rem;line-height:1.2}
.sx-service p{color:var(--muted);font-size:.92rem;flex:1}
.sx-service ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.sx-service li{font-size:.7rem;font-weight:700;letter-spacing:.04em;padding:4px 9px;border-radius:5px;background:var(--bg);color:#c9ccd4;border:1px solid var(--line)}

/* ---------- expert profile ---------- */
.sx-profile{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:40px;margin-bottom:26px}
.sx-profile-photo{aspect-ratio:4/5;border-radius:16px;background:#1a1b1f center top/cover no-repeat;border:1px solid var(--line);position:relative}
.sx-profile-photo::after{content:"";position:absolute;inset:auto -12px -12px auto;width:60%;height:60%;border-radius:14px;background:var(--accent);z-index:-1}
.sx-profile h3{font-family:'Archivo',sans-serif;font-weight:900;font-size:2rem;line-height:1}
.sx-role{color:var(--accent);font-family:'Archivo',sans-serif;font-weight:700;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;margin:10px 0 18px}
.sx-profile p{color:var(--muted);margin-bottom:14px}
.sx-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 22px;margin:22px 0 26px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sx-facts div{font-size:.88rem}
.sx-facts dt{font-family:'Archivo',sans-serif;font-weight:700;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2)}
.sx-facts dd{color:#e9eaee;font-weight:600}
.sx-team{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.sx-member{display:flex;gap:16px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px}
.sx-member .av{flex:0 0 52px;height:52px;border-radius:50%;background:var(--bg);border:2px solid var(--accent);display:flex;align-items:center;justify-content:center;font-family:'Archivo',sans-serif;font-weight:900;color:var(--accent)}
.sx-member h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1rem}
.sx-member p{color:var(--muted);font-size:.82rem}

/* ---------- advantages ---------- */
.sx-adv-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:start}
.sx-adv-feature{position:sticky;top:140px;border-radius:20px;overflow:hidden;background:var(--ink);color:#fff}
.sx-adv-feature .img{aspect-ratio:16/11;background:#1a1b1f center 20%/cover no-repeat}
.sx-adv-feature .txt{padding:28px}
.sx-adv-feature h3{font-family:'Archivo',sans-serif;font-weight:900;font-size:1.5rem;margin-bottom:10px}
.sx-adv-feature p{color:var(--muted)}
.sx-adv-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.sx-adv{background:#fff;border:1px solid var(--light-2);border-radius:14px;padding:22px}
.sx-adv h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.02rem;margin-bottom:6px;display:flex;gap:10px;align-items:flex-start}
.sx-adv h3::before{content:"";flex:0 0 10px;height:10px;margin-top:6px;border-radius:2px;background:var(--accent)}
.sx-adv p{color:#5b606c;font-size:.9rem}

/* ---------- deliverables (numbered cards) ---------- */
.sx-callout{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:14px;padding:26px 30px;margin-bottom:34px}
.sx-callout h3{font-family:'Archivo',sans-serif;font-weight:900;font-size:1.3rem;margin-bottom:6px}
.sx-callout p{color:var(--muted);max-width:640px}
.sx-deliv{display:flex;flex-direction:column;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:26px;transition:.25s}
.sx-deliv:hover{border-color:var(--accent)}
.sx-deliv-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.sx-deliv-top .n{font-family:'Archivo',sans-serif;font-weight:900;font-size:2rem;line-height:1;color:var(--line)}
.sx-deliv:hover .n{color:var(--accent)}
.sx-deliv h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.12rem;line-height:1.2}
.sx-range{display:flex;gap:8px;align-items:baseline;font-family:'Archivo',sans-serif}
.sx-range b{font-weight:900;font-size:1.05rem;color:var(--accent)}
.sx-range small{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}
.sx-deliv p{color:var(--muted);font-size:.9rem;flex:1}

/* ---------- problems (injury-card analogue) ---------- */
.sx-problems{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.sx-problem{background:#fff;border:1px solid var(--light-2);border-radius:16px;overflow:hidden}
.sx-problem summary{list-style:none;cursor:pointer;padding:24px 26px;display:grid;grid-template-columns:1fr auto;gap:8px 16px}
.sx-problem summary::-webkit-details-marker{display:none}
.sx-problem summary h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.15rem;line-height:1.2}
.sx-problem summary .meta{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.sx-problem summary .meta em{font-style:normal;font-size:.8rem;color:#5b606c}
.sx-problem summary .plus{width:30px;height:30px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:900;transition:transform .3s var(--ease)}
.sx-problem[open] summary .plus{transform:rotate(45deg)}
.sx-problem .desc{padding:0 26px;color:#5b606c;font-size:.94rem}
.sx-problem .body{padding:18px 26px 26px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.sx-problem h4{font-family:'Archivo',sans-serif;font-weight:800;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-d);margin-bottom:8px}
.sx-problem ul{padding-left:18px;color:#3a3d45;font-size:.88rem}
.sx-problem li{margin-bottom:4px}
.sx-problem .cta{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;background:var(--light);border-radius:10px;padding:14px 16px}
.sx-problem .cta strong{font-family:'Archivo',sans-serif;font-size:.92rem}
.sx-problem .cta a{color:var(--ink)}

/* ---------- tabs (stats + causes) ---------- */
.sx-tabs{display:flex;gap:6px;flex-wrap:wrap;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:6px;margin:0 auto 34px;max-width:max-content}
.sx-tabs button{background:none;border:none;cursor:pointer;padding:12px 18px;border-radius:8px;font-family:'Archivo',sans-serif;font-weight:700;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sx-tabs button[aria-selected="true"]{background:var(--bg);color:var(--accent);box-shadow:inset 0 0 0 1px var(--line)}
.sx-tabpanel[hidden]{display:none}
.sx-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.sx-stat{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:26px}
.sx-stat b{display:block;font-family:'Archivo',sans-serif;font-weight:900;font-size:2.6rem;line-height:1;color:var(--accent);letter-spacing:-.02em}
.sx-stat h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1rem;margin:12px 0 6px}
.sx-stat p{color:var(--muted);font-size:.88rem;margin-bottom:12px}
.sx-bar{height:6px;background:var(--bg);border-radius:6px;overflow:hidden;margin-bottom:12px}
.sx-bar i{display:block;height:100%;background:var(--accent);border-radius:6px}
.sx-compare-bars{display:grid;gap:10px;margin:8px 0 12px}
.sx-compare-bars div{display:grid;grid-template-columns:120px 1fr 44px;gap:10px;align-items:center;font-size:.78rem;color:var(--muted)}
.sx-compare-bars .sx-bar{margin:0}
.sx-compare-bars strong{color:#fff;font-family:'Archivo',sans-serif;text-align:right}

/* ---------- steps ---------- */
.sx-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;counter-reset:st;border:1px solid rgba(0,0,0,.14);border-radius:18px;overflow:hidden}
.sx-step{padding:30px 28px;border-right:1px solid rgba(0,0,0,.12);border-bottom:1px solid rgba(0,0,0,.12);background:rgba(255,255,255,.4)}
.sx-step:nth-child(3n){border-right:none}
.sx-step:nth-last-child(-n+3){border-bottom:none}
.sx-step::before{counter-increment:st;content:"0" counter(st);display:inline-flex;width:42px;height:42px;border-radius:10px;background:var(--ink);color:var(--accent);font-family:'Archivo',sans-serif;font-weight:900;align-items:center;justify-content:center;margin-bottom:16px}
.sx-step h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.12rem;margin-bottom:8px}
.sx-step p{color:rgba(0,0,0,.72);font-size:.92rem}

/* ---------- industries ---------- */
.sx-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:34px}
.sx-chips button{cursor:pointer;background:var(--panel);border:1px solid var(--line);color:var(--muted);border-radius:30px;padding:9px 16px;font-family:'Archivo',sans-serif;font-weight:700;font-size:.74rem;letter-spacing:.06em;transition:.2s}
.sx-chips button:hover{color:#fff}
.sx-chips button[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:var(--ink)}
.sx-ind{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:14px}
.sx-ind[hidden]{display:none}
.sx-ind-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.sx-ind h3{font-family:'Archivo',sans-serif;font-weight:900;font-size:1.3rem;line-height:1.1}
.sx-ind .kv{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:14px}
.sx-ind .kv dt{font-family:'Archivo',sans-serif;font-weight:700;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2)}
.sx-ind .kv dd{font-weight:700;font-size:.88rem;color:var(--accent)}
.sx-ind p{color:var(--muted);font-size:.92rem}
.sx-ind h4{font-family:'Archivo',sans-serif;font-weight:800;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2)}
.sx-ind ul{padding-left:18px;color:#c9ccd4;font-size:.88rem}
.sx-ind .proof{font-size:.82rem;color:#e9eaee;border-top:1px solid var(--line);padding-top:12px}
.sx-ind .proof b{color:var(--accent)}

/* ---------- policies (laws analogue) ---------- */
.sx-policy{background:#fff;border:1px solid var(--light-2);border-radius:16px;margin-bottom:14px;overflow:hidden}
.sx-policy summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 26px}
.sx-policy summary::-webkit-details-marker{display:none}
.sx-policy summary h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.12rem}
.sx-policy summary small{display:block;color:#8a8f9c;font-size:.8rem;margin-top:3px;font-family:'Inter',sans-serif;font-weight:500}
.sx-policy .plus{flex:0 0 30px;height:30px;border-radius:50%;background:var(--ink);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:900;transition:transform .3s var(--ease)}
.sx-policy[open] .plus{transform:rotate(45deg)}
.sx-policy .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--light-2)}
.sx-policy .grid>div{padding:20px 22px;border-right:1px solid var(--light-2)}
.sx-policy .grid>div:last-child{border-right:none;background:#fffaf0}
.sx-policy h4{font-family:'Archivo',sans-serif;font-weight:800;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-d);margin-bottom:8px}
.sx-policy ul{padding-left:16px;font-size:.86rem;color:#3a3d45}
.sx-policy li{margin-bottom:5px}

/* ---------- two column lists ---------- */
.sx-split{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.sx-panel{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:34px}
.sx-panel h3{font-family:'Archivo',sans-serif;font-weight:900;font-size:1.5rem;margin-bottom:20px}
.sx-ol{list-style:none;counter-reset:o}
.sx-ol li{counter-increment:o;position:relative;padding:14px 0 14px 48px;border-bottom:1px solid var(--line)}
.sx-ol li:last-child{border-bottom:none}
.sx-ol li::before{content:counter(o);position:absolute;left:0;top:14px;width:32px;height:32px;border-radius:8px;background:var(--bg);border:1px solid var(--line);color:var(--accent);font-family:'Archivo',sans-serif;font-weight:900;display:flex;align-items:center;justify-content:center;font-size:.85rem}
.sx-ol strong{display:block;font-family:'Archivo',sans-serif;font-size:1rem;margin-bottom:3px}
.sx-ol span{color:var(--muted);font-size:.9rem}

/* ---------- causes ---------- */
.sx-cause{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;background:#fff;border:1px solid var(--light-2);border-radius:20px;padding:36px}
.sx-cause h3{font-family:'Archivo',sans-serif;font-weight:900;font-size:1.7rem;line-height:1.05;margin-bottom:12px}
.sx-cause p{color:#5b606c}
.sx-cause h4{font-family:'Archivo',sans-serif;font-weight:800;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-d);margin:0 0 8px}
.sx-cause ul{padding-left:18px;color:#3a3d45;font-size:.92rem;margin-bottom:16px}
.sx-light .sx-tabs{background:#fff;border-color:var(--light-2)}
.sx-light .sx-tabs button{color:#5b606c}
.sx-light .sx-tabs button[aria-selected="true"]{background:var(--ink);color:var(--accent);box-shadow:none}

/* ---------- glossary ---------- */
.sx-gloss{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.sx-term{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}
.sx-term h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1rem;margin-bottom:8px;color:var(--accent)}
.sx-term p{color:var(--muted);font-size:.86rem;line-height:1.55}
.sx-quote{margin:56px auto 0;max-width:900px;text-align:center;font-family:'Archivo',sans-serif;font-weight:800;font-size:clamp(1.3rem,2.6vw,1.9rem);line-height:1.25}
.sx-quote::before{content:"\201C";display:block;font-size:4rem;line-height:.6;color:var(--accent)}
.sx-quote cite{display:block;margin-top:16px;font-style:normal;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}

/* ---------- comparison table ---------- */
.sx-table-wrap{overflow-x:auto;border-radius:16px;border:1px solid var(--light-2);background:#fff}
.sx-table{width:100%;border-collapse:collapse;min-width:720px;font-size:.92rem}
.sx-table th,.sx-table td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--light-2);vertical-align:top}
.sx-table thead th{font-family:'Archivo',sans-serif;font-weight:800;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:#fff}
.sx-table thead th:last-child{background:var(--accent);color:var(--ink)}
.sx-table tbody th{font-family:'Archivo',sans-serif;font-weight:800;width:22%}
.sx-table td:last-child{background:#fffaf0;font-weight:600}
.sx-table tr:last-child>*{border-bottom:none}

/* ---------- FAQ (re-uses .faq-* from style.css, adds light variant) ---------- */
.sx-light .faq-item{background:#fff;border-color:var(--light-2)}
.sx-light .faq-q{color:var(--ink)}
.sx-light .faq-a p{color:#5b606c}

/* ---------- service areas ---------- */
.sx-areas{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.sx-area{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px;transition:.25s}
.sx-area:hover{border-color:var(--accent)}
.sx-area .pin{color:var(--accent);font-size:.66rem;font-family:'Archivo',sans-serif;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.sx-area h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.02rem;margin:8px 0 6px;line-height:1.2}
.sx-area p{color:var(--muted);font-size:.82rem}
.sx-areas-label{font-family:'Archivo',sans-serif;font-weight:800;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);margin:34px 0 14px}

/* ---------- library ---------- */
.sx-library{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--light-2);border-radius:16px;overflow:hidden;background:#fff;margin-top:40px}
.sx-library a{display:flex;flex-direction:column;gap:6px;padding:22px 24px;border-right:1px solid var(--light-2);border-bottom:1px solid var(--light-2);transition:background .2s}
.sx-library a:hover{background:#fffaf0}
.sx-library small{font-family:'Archivo',sans-serif;font-weight:700;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-d)}
.sx-library strong{font-family:'Archivo',sans-serif;font-weight:800;font-size:1rem;line-height:1.25}

/* ---------- CTA band ---------- */
.sx-band{background:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}
.sx-band .container{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.sx-band p{font-family:'Archivo',sans-serif;font-weight:800;font-size:.86rem;letter-spacing:.12em;text-transform:uppercase;color:#e9eaee}
.sx-band p span{color:var(--accent);margin:0 10px}

/* ---------- expanded footer ---------- */
.sx-footer-top{background:var(--bg-2);border-top:1px solid var(--line);padding:70px 0 50px;position:relative;z-index:1}
.sx-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.sx-footer-grid h4{font-family:'Archivo',sans-serif;font-weight:800;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.sx-footer-grid ul{list-style:none}
.sx-footer-grid li{margin-bottom:10px}
.sx-footer-grid li a{color:var(--muted);font-size:.92rem}
.sx-footer-grid li a:hover{color:#fff}
.sx-footer-grid address{font-style:normal;color:var(--muted);font-size:.92rem;line-height:1.8}
.sx-footer-grid address strong{color:#fff;font-family:'Archivo',sans-serif;font-size:1.1rem;display:block;margin-bottom:6px}

/* ---------- responsive ---------- */
@media(max-width:1100px){
    .sx-areas{grid-template-columns:repeat(3,1fr)}
    .sx-gloss{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:1024px){
    .sx-benefits,.sx-grid-4{grid-template-columns:repeat(2,1fr)}
    .sx-grid-3,.sx-stat-grid,.sx-team,.sx-library{grid-template-columns:repeat(2,1fr)}
    .sx-results{grid-template-columns:repeat(2,1fr)}
    .sx-result:nth-child(2){border-right:none}
    .sx-result:nth-child(-n+2){border-bottom:1px solid rgba(0,0,0,.12)}
    .sx-profile,.sx-adv-wrap,.sx-cause{grid-template-columns:1fr}
    .sx-adv-feature{position:static}
    .sx-policy .grid{grid-template-columns:1fr 1fr}
    .sx-policy .grid>div{border-bottom:1px solid var(--light-2)}
    .sx-steps{grid-template-columns:repeat(2,1fr)}
    .sx-step,.sx-step:nth-child(3n){border-right:1px solid rgba(0,0,0,.12);border-bottom:1px solid rgba(0,0,0,.12)}
    .sx-step:nth-child(2n){border-right:none}
    .sx-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
    .sx-jump{top:56px}
    .sx-benefits,.sx-grid-2,.sx-grid-3,.sx-grid-4,.sx-stat-grid,.sx-team,.sx-problems,.sx-split,.sx-adv-list,.sx-library,.sx-results,.sx-steps{grid-template-columns:1fr}
    .sx-benefit:first-child{grid-column:auto}
    .sx-result{border-right:none;border-bottom:1px solid rgba(0,0,0,.12)}
    .sx-result:last-child{border-bottom:none}
    .sx-step{border-right:none!important}
    .sx-step:nth-last-child(-n+3){border-bottom:1px solid rgba(0,0,0,.12)}
    .sx-step:last-child{border-bottom:none}
    .sx-gloss,.sx-areas{grid-template-columns:1fr 1fr}
    .sx-problem .body,.sx-policy .grid,.sx-facts{grid-template-columns:1fr}
    .sx-policy .grid>div{border-right:none}
    .sx-profile{padding:24px}
    .sx-panel,.sx-cause{padding:24px}
    .sx-tabs{max-width:100%;overflow-x:auto;flex-wrap:nowrap}
    .sx-tabs button{flex:0 0 auto}
    .sx-compare-bars div{grid-template-columns:96px 1fr 40px}
    .sx-footer-grid{grid-template-columns:1fr}
    .sx-band .container{justify-content:center;text-align:center}
}
@media(max-width:480px){
    .sx-gloss,.sx-areas{grid-template-columns:1fr}
}
.sx-term dfn{font-style:normal}
.testi-card figcaption small{color:var(--accent);font-size:.72rem;letter-spacing:.1em;font-weight:700}
.sx-panel-title{font-family:"Archivo",sans-serif;font-weight:900;font-size:1.5rem;line-height:1.15;margin:8px 0 20px}
/* grid children must be allowed to shrink (fixes testimonial track widening the page on mobile) */
.testi-grid>*,.sx-adv-wrap>*,.sx-split>*,.sx-profile>*{min-width:0}
.sx-cred i{width:auto;min-width:28px;padding:0 7px;border-radius:14px}
/* keep the floating metric badge from covering case-study headlines */
.cs-feature h3{padding-right:0;margin-top:56px}
@media(max-width:768px){.cs-client{margin-bottom:18px}.cs-metric{position:static;display:table;margin:0 0 18px}.cs-feature h3{margin-top:0}}
