
:root{--ink:#18342d;--muted:#62716c;--paper:#fbfaf6;--card:#ffffff;--sage:#dfe9df;--leaf:#2f6b52;--warm:#b87946;--line:#d9dfda;--shadow:0 14px 40px rgba(24,52,45,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.65}
a{color:var(--leaf)}.wrap{width:min(1120px,92%);margin:auto}.topbar{background:var(--ink);color:#fff;font-size:.9rem;padding:.5rem 0;text-align:center}.site-header{position:sticky;top:0;background:rgba(251,250,246,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);z-index:20}.nav{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:1rem 0}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--ink);font-weight:800;letter-spacing:-.02em}.brand svg{width:34px;height:34px}.links{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.links a{text-decoration:none;color:var(--ink);font-weight:650;font-size:.95rem}.links a:hover{color:var(--leaf)}
.hero{padding:5.5rem 0 3.5rem}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:800;color:var(--leaf)}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.5rem,6vw,5rem);margin:.5rem 0 1.2rem}h2{font-size:clamp(1.7rem,3vw,2.5rem);margin-top:2.7rem}h3{font-size:1.25rem}.lede{font-size:1.18rem;color:#42534d;max-width:760px}.button{display:inline-block;background:var(--leaf);color:white;text-decoration:none;font-weight:800;padding:.9rem 1.15rem;border-radius:999px}.button:hover{filter:brightness(.92)}
.hero-card,.cta-card,.card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:1.5rem;box-shadow:var(--shadow)}.hero-card{background:linear-gradient(160deg,#eef5ec,#fff)}.latex-stack{display:grid;gap:.55rem;margin:1rem 0}.latex-stack div{border-radius:16px;padding:1rem;font-weight:800}.soft{background:#f4dfba}.medium{background:#d8c498}.firm{background:#b18f62;color:#fff}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.card h3{margin:.2rem 0}.card p{color:var(--muted)}.card a{font-weight:800}.section{padding:2.5rem 0}.article{display:grid;grid-template-columns:minmax(0,760px) 290px;gap:3rem;padding:3.5rem 0}.article main{min-width:0}.article p{font-size:1.04rem}.article .meta{color:var(--muted);font-size:.92rem}.toc{position:sticky;top:100px;align-self:start}.toc a{display:block;padding:.45rem 0;text-decoration:none;border-bottom:1px solid var(--line);font-size:.92rem}.cta-card{margin:2.2rem 0;background:linear-gradient(145deg,#e7f0e5,#fff)}.cta-card small{display:block;margin-top:.7rem;color:var(--muted)}.note{border-left:4px solid var(--warm);padding:1rem 1.2rem;background:#fff6ec;border-radius:0 14px 14px 0}.pill{display:inline-block;background:var(--sage);padding:.35rem .65rem;border-radius:999px;font-size:.82rem;font-weight:750;margin:.2rem}.footer{border-top:1px solid var(--line);padding:2.5rem 0;margin-top:3rem;color:var(--muted);font-size:.92rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}.footer a{display:block;margin:.35rem 0}.breadcrumbs{font-size:.9rem;color:var(--muted);padding-top:1.2rem}.breadcrumbs a{text-decoration:none}.disclosure{font-size:.88rem;background:#f2f4f1;padding:.8rem 1rem;border-radius:12px}
@media(max-width:860px){.hero-grid,.article,.grid,.footer-grid{grid-template-columns:1fr}.links{display:none}.hero{padding-top:3.5rem}.toc{position:static;order:-1}.article{gap:1rem}}

.header-cta{display:inline-flex;align-items:center;justify-content:center;background:var(--leaf);color:#fff!important;text-decoration:none;font-weight:800;padding:.66rem .9rem;border-radius:999px;white-space:nowrap;font-size:.9rem}
.sidebar-offer{margin-top:1rem;background:linear-gradient(145deg,#e7f0e5,#fff);border:1px solid var(--line);border-radius:20px;padding:1rem;box-shadow:var(--shadow)}
.sidebar-offer strong{display:block;font-size:1.08rem;margin:.2rem 0}.sidebar-offer p{font-size:.9rem;line-height:1.45;color:var(--muted);margin:.45rem 0 .8rem}.sidebar-offer small{display:block;color:var(--muted);margin-top:.45rem}.button.compact{font-size:.88rem;padding:.65rem .8rem}
@media(max-width:860px){.nav{gap:.65rem}.brand{font-size:.92rem}.header-cta{font-size:.8rem;padding:.58rem .7rem}.topbar{font-size:.8rem}}
@media(max-width:520px){.brand{max-width:180px;line-height:1.05}.brand img{width:30px;height:30px}.header-cta{font-size:.74rem;padding:.55rem .62rem}}
