[hidden]{display:none!important}
:root{--ink:#1d1d1f;--mut:#6e6e73;--line:#e3e3e8;--bg:#fff;--soft:#f5f5f7;--g:#1f5c3f;--g2:#e8f1ec}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 -apple-system,BlinkMacSystemFont,"SF Pro Text","Inter","Segoe UI",Roboto,Helvetica,Arial,sans-serif}
a{color:var(--g)}img{max-width:100%;height:auto}.wrap{max-width:1080px;margin:0 auto;padding-inline:20px}
.bh{position:sticky;top:0;z-index:10;background:rgba(22,22,24,.92);backdrop-filter:saturate(1.8) blur(14px);-webkit-backdrop-filter:saturate(1.8) blur(14px)}
.bh .in{max-width:1180px;margin:0 auto;padding:10px 20px;display:flex;align-items:center;gap:22px}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:600;font-size:16px;line-height:1.1}.brand small{display:block;font-size:9px;letter-spacing:.14em;opacity:.7;font-weight:500}
.bh nav{display:flex;gap:20px;margin-left:auto}.bh nav a{color:#e8e8ed;text-decoration:none;font-size:14px}.bh nav a[aria-current=page]{color:#fff;font-weight:600}
.cta{background:#fff;color:#111;text-decoration:none;border-radius:999px;padding:8px 16px;font-size:14px;font-weight:600;white-space:nowrap}
main{padding-block:26px 56px}.crumbs{font-size:13px;color:var(--mut);margin-bottom:22px}.crumbs a{color:var(--mut);text-decoration:none}.crumbs span{margin-inline:4px}
h1{font-size:clamp(32px,4.6vw,52px);line-height:1.06;letter-spacing:-.025em;margin:6px 0 16px;text-wrap:balance}
h2{font-size:clamp(23px,2.6vw,30px);letter-spacing:-.015em;line-height:1.15;margin:44px 0 12px;text-wrap:balance}h3{font-size:19px;line-height:1.25;margin:8px 0 6px}
.lead{font-size:clamp(19px,2vw,22px);color:#3a3a3c;line-height:1.5;max-width:44em}.kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--g);font-weight:600;margin:0}
.post{max-width:780px}.post.car,.post:has(.g50){max-width:none}.post p,.post li{max-width:42em}.muted,.fine{color:var(--mut)}.fine{font-size:13px}
.hero img,.post img.hero{border-radius:22px;background:var(--soft);margin:10px 0 4px}
table{border-collapse:collapse;width:100%;font-size:15px;font-variant-numeric:tabular-nums}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}thead th{font-size:13px;color:var(--mut);font-weight:600}
.tw{overflow-x:auto;border:1px solid var(--line);border-radius:16px;margin:10px 0}.tw table th:first-child,.tw table td:first-child{padding-left:16px}
table.vs tbody th{font-weight:500;color:var(--mut);width:34%}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0}.stats div{background:var(--soft);border-radius:16px;padding:14px 16px}.stats b{display:block;font-size:22px;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.stats span{font-size:13px;color:var(--mut)}
.chips{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none}.chips li a,.chips li{background:var(--g2);border-radius:999px;padding:6px 14px;font-size:15px;text-decoration:none}
.actions,.btns{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.btn{display:inline-block;background:var(--g);color:#fff;text-decoration:none;border-radius:999px;padding:12px 20px;font-weight:600;font-size:15px}.btn.ghost{background:transparent;color:var(--g);border:1px solid var(--g)}
.faq details{border-bottom:1px solid var(--line);padding:14px 0}.faq summary{cursor:pointer;font-weight:600;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:16px}.faq summary::after{content:"+";color:var(--g);font-size:22px;line-height:1}.faq details[open] summary::after{content:"–"}.faq p{margin:10px 0 0;color:#3a3a3c}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 18px}.filters button{font:inherit;font-size:14px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer}.filters button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.g50{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.c50 a{display:block;height:100%;border:1px solid var(--line);border-radius:20px;padding:16px;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s;position:relative}
.c50 a:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(0,0,0,.08)}.c50 .rk{position:absolute;top:14px;left:16px;font-size:12px;font-weight:700;color:var(--mut)}.c50 img{display:block;margin:10px auto 4px;transition:transform .35s}.c50 a:hover img{transform:scale(1.04)}
.c50 p{font-size:14px;color:#3a3a3c;margin:4px 0}.c50 dl{display:grid;grid-template-columns:1fr auto;gap:2px 10px;font-size:13px;margin:10px 0 6px}.c50 dt{color:var(--mut)}.c50 dd{margin:0;font-weight:600;text-align:right;font-variant-numeric:tabular-nums}.c50 .vs{font-size:12px;color:var(--mut)}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.duo a{background:var(--soft);border-radius:18px;padding:12px;text-align:center;text-decoration:none;color:var(--ink)}.duo b{display:block;margin-top:4px}
.list{padding-left:1.1em}.list li{margin:6px 0}.list.cols{columns:3 240px;column-gap:28px}
.hero{padding-block:10px 16px}.pillar{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;align-items:center;background:var(--soft);border-radius:26px;padding:22px;text-decoration:none;color:inherit;margin:18px 0}
.pillar h2{margin:6px 0}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.pc{display:block;border:1px solid var(--line);border-radius:20px;padding:20px;text-decoration:none;color:inherit;transition:box-shadow .25s,transform .25s}.pc:hover{box-shadow:0 14px 34px rgba(0,0,0,.07);transform:translateY(-2px)}.pc p{font-size:15px;color:#3a3a3c}
h2.sec{margin-top:52px}.note{background:var(--g2);border-radius:14px;padding:14px 16px;font-size:15px}.src{margin-top:40px;font-size:14px;color:var(--mut)}.src h2{font-size:18px}.back{margin-top:30px}
.band{background:#111;color:#fff;padding-block:48px}.band h2{margin-top:0}.band p{color:#c7c7cc;max-width:40em}.band .btn{background:#fff;color:#111}.band .btn.ghost{background:transparent;color:#fff;border-color:#fff}
.bf{background:var(--soft);padding-block:40px 30px;font-size:14px}.bf .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:24px}.bf a{display:block;color:var(--ink);text-decoration:none;margin:5px 0}.bf strong{display:block;margin-bottom:6px}.bf p{color:var(--mut)}
@media(max-width:760px){body{font-size:16px}.bh nav{display:none}.bh .in{gap:12px}.cta{margin-left:auto}.stats{grid-template-columns:1fr 1fr}.pillar{grid-template-columns:1fr}.duo{grid-template-columns:1fr 1fr}.bf .cols{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.steps{counter-reset:s;list-style:none;padding:0;display:grid;gap:10px}.steps li{counter-increment:s;display:grid;grid-template-columns:40px 1fr;gap:4px 12px;background:var(--soft);border-radius:16px;padding:14px 16px}.steps li::before{content:counter(s);grid-row:1/3;width:32px;height:32px;border-radius:50%;background:var(--g);color:#fff;display:grid;place-items:center;font-weight:700}.steps span{color:#3a3a3c;font-size:15px}
