@import url('/_fonts/fonts.css');
:root{color-scheme:light;--ink:#242631;--muted:#5b6070;--line:#dfe2eb;--accent:#6377f5;--bg:#fff;--soft:#f6f7fb;font-family:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg)}a{color:#4057cf}a:hover{text-decoration:underline}.skip-link{position:absolute;top:-100px;left:20px;background:#fff;padding:10px;z-index:5}.skip-link:focus{top:8px}
.site-header{background:#22232d;color:#fff}.header-inner{max-width:1180px;margin:auto;padding:24px 28px;display:flex;justify-content:space-between;align-items:center;gap:24px}.wordmark{font-size:1.24rem;letter-spacing:.19em;font-weight:700;text-decoration:none;color:inherit}.wordmark span{color:#9eaaff}.site-header nav{display:flex;gap:28px}.site-header nav a{color:#eef0ff;text-decoration:none;font-size:.94rem}.site-header nav a:hover{text-decoration:underline}
.editorial-article{max-width:1180px;margin:auto;padding:52px 28px 100px}.breadcrumb{display:flex;gap:12px;color:var(--muted);font-size:.86rem}.breadcrumb a{color:inherit}.eyebrow{margin:38px 0 14px;color:#5265d5;font-size:.75rem;letter-spacing:.16em;font-weight:700}.editorial-article h1{max-width:900px;font-size:clamp(2.25rem,5vw,4.1rem);line-height:1.08;letter-spacing:-.045em;margin:0 0 20px}.article-meta{color:var(--muted);font-size:.89rem;margin:0 0 58px}
.editorial-body{display:grid;grid-template-columns:minmax(0,760px) minmax(180px,250px);gap:68px;align-items:start}.prose{min-width:0;font-size:1.075rem;line-height:1.76}.prose p{margin:0 0 22px}.prose h2{font-size:1.75rem;line-height:1.25;letter-spacing:-.025em;margin:52px 0 18px;scroll-margin-top:30px}.prose h3{font-size:1.2rem;line-height:1.35;margin:32px 0 12px;scroll-margin-top:30px}.prose strong{font-weight:700}.prose a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.editorial-toc{position:sticky;top:24px;border-left:2px solid var(--line);padding-left:20px;max-height:calc(100vh - 48px);overflow:auto;font-size:.88rem}.editorial-toc strong{display:block;margin:0 0 14px}.editorial-toc a{display:block;color:var(--muted);text-decoration:none;padding:6px 0;line-height:1.36}.editorial-toc a:hover{color:#4057cf;text-decoration:underline}
.editorial-table-scroll{width:100%;overflow-x:auto;border:1px solid var(--line);margin:28px 0 36px}.editorial-table-scroll table{border-collapse:collapse;width:100%;min-width:620px;font-size:.9rem;line-height:1.5}.editorial-table-scroll th,.editorial-table-scroll td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:13px 14px}.editorial-table-scroll th{background:#e9ecfb;color:#242b55}.editorial-table-scroll tr:last-child td{border-bottom:0}.editorial-table-scroll tbody tr:nth-child(even){background:var(--soft)}
.site-footer{background:#22232d;color:#d7d9e2}.footer-inner{max-width:1180px;margin:auto;padding:42px 28px;display:flex;align-items:center;gap:26px;flex-wrap:wrap}.footer-inner p{margin:0}.footer-inner>a:last-child{color:#d7d9e2;margin-left:auto}
.blog-index{max-width:1180px;margin:auto;padding:58px 28px 100px;min-height:65vh}.blog-index h1{font-size:clamp(2.6rem,6vw,4.8rem);letter-spacing:-.05em;margin:36px 0 12px}.blog-lead{max-width:650px;font-size:1.2rem;line-height:1.6;color:var(--muted);margin:0 0 48px}.blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.blog-card{border:1px solid var(--line);padding:32px;background:var(--soft)}.blog-card p:first-child{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#5265d5;margin:0 0 14px}.blog-card h2{font-size:1.55rem;line-height:1.25;margin:0 0 16px}.blog-card h2 a{color:var(--ink);text-decoration:none}.blog-card h2 a:hover{color:#4057cf;text-decoration:underline}.blog-card p:last-child{line-height:1.6;color:var(--muted);margin:0}
@media(max-width:850px){.editorial-article{padding:32px 22px 70px}.editorial-body{display:block}.editorial-toc{position:static;margin-top:42px;max-height:none}.prose{font-size:1rem}.prose h2{font-size:1.48rem}.header-inner{padding:20px 22px}.site-header nav{gap:18px}}
@media(max-width:650px){.blog-index{padding:36px 22px 72px}.blog-grid{grid-template-columns:1fr}.blog-card{padding:25px}}
