:root{--ink:#14161f;--muted:#5a6072;--bg:#fbfbfd;--card:#fff;--line:#e6e8ef;--acc:#4f46e5;--acc2:#0ea5a4;--soft:#eef0ff}
*{box-sizing:border-box}body{margin:0;font:17px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--acc)}.wrap{max-width:1140px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px}
.top{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.bar{display:flex;align-items:center;gap:20px;min-height:64px;flex-wrap:wrap}
.logo{font-weight:600;color:var(--ink);text-decoration:none;font-size:1.1rem;display:flex;align-items:center;gap:8px}.logo b{color:var(--acc)}
.dot{width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--acc),var(--acc2))}
#nav{margin-left:auto}#nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;flex-wrap:wrap}
#nav a{display:block;padding:6px 10px;border-radius:8px;text-decoration:none;color:var(--muted);font-size:.92rem}
#nav a:hover,#nav a[aria-current]{background:var(--soft);color:var(--acc)}
.menu-btn{display:none;margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 12px;font:inherit}
.hero{padding:56px 0 24px}.hero h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.15;margin:.2em 0;letter-spacing:-.02em}
.hero.small{padding:28px 0 8px}.hero.small h1{font-size:clamp(1.8rem,4vw,2.5rem)}
.kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;color:var(--acc2);font-weight:700;margin:0}
.lede{font-size:1.15rem;color:var(--muted);max-width:720px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;margin:28px 0 56px}
.card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;text-decoration:none;color:var(--ink);transition:.15s}
.card:hover{border-color:var(--acc);transform:translateY(-2px);box-shadow:0 8px 24px rgba(79,70,229,.08)}
.card h3{margin:0 0 6px;font-size:1.1rem}.card p{margin:0 0 12px;color:var(--muted);font-size:.95rem;flex:1}.more{color:var(--acc);font-weight:600;font-size:.9rem}
.crumbs{font-size:.85rem;color:var(--muted);padding-top:18px}.crumbs a{color:var(--muted)}
.article-wrap{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:48px;padding:12px 0 56px}
.prose{max-width:740px}.prose h1{font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.2;letter-spacing:-.01em;margin:.2em 0}
.prose h2{margin-top:2em;font-size:1.45rem}.prose h3{margin-top:1.5em}
.callout{background:var(--soft);border-left:4px solid var(--acc);padding:14px 18px;border-radius:0 10px 10px 0;margin:1.5em 0}
.callout.view{background:#fff7ed;border-color:#f59e0b}.callout.honest{background:#ecfdf5;border-color:var(--acc2)}
.side{position:sticky;top:84px;align-self:start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.side h2{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 8px}.side ul{list-style:none;padding:0;margin:0}
.side a{display:block;padding:5px 0;text-decoration:none;color:var(--ink);font-size:.93rem}.side a[aria-current]{color:var(--acc);font-weight:600}
.pn{display:flex;justify-content:space-between;gap:12px;margin-top:40px;border-top:1px solid var(--line);padding-top:18px;font-size:.95rem}
.src{font-size:.88rem;color:var(--muted);border-top:1px solid var(--line);margin-top:2.5em;padding-top:10px}
table{border-collapse:collapse;width:100%;font-size:.95rem}td,th{border:1px solid var(--line);padding:8px;text-align:left;vertical-align:top}th{background:var(--soft)}
.foot{border-top:1px solid var(--line);background:#fff;color:var(--muted);font-size:.88rem;padding:24px 0}.credit{font-size:.8rem}.credit a{color:var(--muted)}
@media (max-width:860px){.article-wrap{grid-template-columns:1fr}.side{position:static}.menu-btn{display:block}#nav{display:none;width:100%;margin:0 0 10px}#nav.open{display:block}#nav ul{flex-direction:column}.hero{padding:32px 0 12px}}
