:root{--ink:#171814;--paper:#f3f2ec;--muted:#74746d;--line:#d2d1c9;--lime:#d9ff63;--forest:#14251e;--warm:#e9e1d4}
*{box-sizing:border-box}
.blog-page{background:var(--paper);color:var(--ink)}
.blog-page main{overflow:hidden}
.blog-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:6vw;align-items:end;padding:clamp(5rem,10vw,9rem) max(5vw,28px) clamp(4rem,7vw,7rem);border-bottom:1px solid var(--line)}
.blog-hero h1,.article-hero h1{font-size:clamp(4rem,9vw,9.5rem);line-height:.86;letter-spacing:-.075em;margin:1.3rem 0 2rem;max-width:11ch}
.blog-hero h1 em,.article-hero h1 em{font-family:Georgia,serif;font-weight:400}
.blog-hero-copy>p:last-child{max-width:720px;font-size:clamp(1.05rem,1.5vw,1.35rem);line-height:1.7;color:var(--muted)}
.blog-index{border-left:1px solid var(--line);padding-left:clamp(2rem,4vw,5rem)}
.blog-index>span,.feature-story-copy>span,.post-card>span,.article-meta,.article-kicker,.toc strong,.article-aside strong,.related-head p{font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}
.blog-index ol{list-style:none;padding:0;margin:2rem 0 0}
.blog-index li{border-top:1px solid var(--line)}
.blog-index a{display:flex;justify-content:space-between;gap:1rem;padding:1.15rem 0;color:inherit;text-decoration:none}
.blog-index a:hover{text-decoration:underline;text-underline-offset:.3rem}
.blog-index small{color:var(--muted)}
.featured-story{display:grid;grid-template-columns:1.05fr .95fr;min-height:620px;border-bottom:1px solid var(--line)}
.feature-story-visual{position:relative;min-height:520px;background:var(--forest);overflow:hidden;padding:3rem}
.feature-story-visual:before{content:"";position:absolute;width:66%;aspect-ratio:1;border:1px solid rgba(217,255,99,.65);border-radius:50%;right:-12%;top:-20%}
.feature-story-visual:after{content:"MI / GUIDE";position:absolute;left:3rem;bottom:3rem;color:var(--lime);font-family:'DM Mono',monospace;letter-spacing:.18em;font-size:.8rem}
.feature-grid{position:absolute;inset:12% 10% 18%;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:end}
.feature-grid i{display:block;background:var(--lime);opacity:.92}
.feature-grid i:nth-child(1){height:35%}.feature-grid i:nth-child(2){height:67%}.feature-grid i:nth-child(3){height:100%}
.feature-story-copy{padding:clamp(3rem,7vw,7rem);display:flex;flex-direction:column;justify-content:center}
.feature-story-copy h2{font-size:clamp(2.7rem,5vw,5.6rem);line-height:.95;letter-spacing:-.06em;margin:1.5rem 0 2rem}
.feature-story-copy p{font-size:1.08rem;line-height:1.75;color:var(--muted);max-width:620px}
.story-meta{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1rem;color:var(--muted);font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.08em}
.story-link{margin-top:2.2rem;display:flex;justify-content:space-between;border-bottom:1px solid var(--ink);padding:1rem 0;color:inherit;text-decoration:none;font-weight:700}
.story-link:hover{background:var(--ink);color:white;padding-inline:1rem}
.blog-library{padding:clamp(4rem,8vw,8rem) max(5vw,28px)}
.library-head{display:grid;grid-template-columns:1fr 1fr;gap:4rem;margin-bottom:4rem;align-items:end}
.library-head h2,.related-head h2{font-size:clamp(2.8rem,6vw,6.5rem);letter-spacing:-.065em;line-height:.9;margin:1rem 0 0}
.library-head>p{font-size:1.08rem;line-height:1.7;color:var(--muted);max-width:630px}
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.post-card{display:flex;flex-direction:column;min-height:430px;padding:2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:inherit;text-decoration:none;transition:background .2s,color .2s}
.post-card:hover{background:var(--ink);color:#fff}
.post-card h2{font-size:clamp(1.8rem,3vw,3.1rem);letter-spacing:-.05em;line-height:1.02;margin:2.3rem 0 1.2rem}
.post-card p{line-height:1.7;color:var(--muted)}
.post-card:hover p,.post-card:hover small{color:#c9c9c2}
.post-card footer{margin-top:auto;display:flex;justify-content:space-between;align-items:end;border:0;padding:2rem 0 0;background:transparent;color:inherit}
.post-card footer small{font-family:'DM Mono',monospace;font-size:.7rem;line-height:1.6;color:var(--muted)}
.post-card footer b{font-size:1.6rem}
.blog-topic-strip{display:grid;grid-template-columns:.8fr 1.2fr;background:var(--lime);padding:clamp(3rem,6vw,6rem) max(5vw,28px);gap:5vw}
.blog-topic-strip h2{font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.06em;line-height:.95;margin:0}
.topic-links{display:grid;grid-template-columns:1fr 1fr}
.topic-links a{color:inherit;text-decoration:none;padding:1.2rem 0;border-top:1px solid rgba(0,0,0,.35);display:flex;justify-content:space-between}
.topic-links a:nth-child(odd){margin-right:2rem}
.topic-links a:hover{text-decoration:underline}
.article-hero{padding:clamp(5rem,9vw,9rem) max(5vw,28px) 4rem;border-bottom:1px solid var(--line)}
.breadcrumbs{font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;display:flex;gap:.75rem;flex-wrap:wrap;color:var(--muted)}
.breadcrumbs a{color:inherit}.breadcrumbs span{color:var(--ink)}
.article-hero h1{font-size:clamp(3.5rem,8vw,8.5rem);max-width:13ch;margin-top:3rem}
.article-standfirst{max-width:850px;font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.6;color:var(--muted);margin:0 0 3rem}
.article-meta{display:flex;gap:1.5rem;flex-wrap:wrap;color:var(--muted)}
.article-layout{display:grid;grid-template-columns:minmax(230px,.28fr) minmax(0,.72fr);gap:clamp(3rem,7vw,8rem);padding:clamp(3rem,7vw,7rem) max(5vw,28px);align-items:start}
.toc{position:sticky;top:2rem;border-top:1px solid var(--ink);padding-top:1.2rem}
.toc ol{list-style:none;padding:0;margin:1.5rem 0}
.toc li{border-top:1px solid var(--line)}
.toc a{display:block;padding:.85rem 0;color:var(--muted);text-decoration:none;font-size:.9rem;line-height:1.4}
.toc a:hover{color:var(--ink)}
.article-body{max-width:900px}
.article-body h2{font-size:clamp(2.3rem,4.5vw,4.5rem);letter-spacing:-.055em;line-height:1;margin:5rem 0 1.5rem;scroll-margin-top:2rem}
.article-body h3{font-size:clamp(1.35rem,2vw,1.8rem);letter-spacing:-.025em;margin:2.7rem 0 1rem}
.article-body p,.article-body li{font-size:1.08rem;line-height:1.85;color:#40413c}
.article-body a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.2rem}
.article-body ul,.article-body ol{padding-left:1.35rem}
.article-body li{margin:.55rem 0;padding-left:.35rem}
.article-body blockquote{margin:3rem 0;padding:2rem 2.5rem;border-left:4px solid var(--lime);background:#fff;font-size:clamp(1.4rem,2.5vw,2rem);line-height:1.45;letter-spacing:-.03em}
.article-summary{background:var(--forest);color:#fff;padding:clamp(2rem,4vw,4rem);margin:0 0 4rem}
.article-summary p{color:#d7dbd8;margin:1rem 0 0}
.article-summary strong{color:var(--lime);font-family:'DM Mono',monospace;font-size:.75rem;letter-spacing:.12em}
.check-table{margin:2.5rem 0;border-top:1px solid var(--ink)}
.check-row{display:grid;grid-template-columns:minmax(150px,.35fr) 1fr;gap:2rem;padding:1.2rem 0;border-bottom:1px solid var(--line)}
.check-row b{font-size:.95rem}.check-row span{color:var(--muted);line-height:1.6}
.article-aside{margin:4rem 0;background:var(--lime);padding:2.5rem}
.article-aside h3{font-size:2rem;margin:1rem 0}.article-aside p{color:#35362f}.article-aside a{display:inline-flex;margin-top:1rem;font-weight:800}
.faq-list{margin:2rem 0 4rem}
.faq-list details{border-top:1px solid var(--line);padding:1.3rem 0}
.faq-list details:last-child{border-bottom:1px solid var(--line)}
.faq-list summary{cursor:pointer;font-weight:700;font-size:1.05rem}
.faq-list p{font-size:1rem;margin-bottom:0}
.related-posts{padding:clamp(4rem,7vw,7rem) max(5vw,28px);border-top:1px solid var(--line)}
.related-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3rem}
.related-head h2{font-size:clamp(2.5rem,5vw,5rem)}
.article-cta{display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center;background:var(--ink);color:white;padding:clamp(3rem,6vw,6rem) max(5vw,28px)}
.article-cta h2{font-size:clamp(2.4rem,5vw,5rem);letter-spacing:-.06em;line-height:.95;margin:0}.article-cta p{color:#bdbdb6;max-width:630px;line-height:1.7}
@media(max-width:900px){.header nav a:nth-child(1),.header nav a:nth-child(2){display:none}.blog-hero,.featured-story,.blog-topic-strip,.article-layout{grid-template-columns:1fr}.blog-index{border-left:0;border-top:1px solid var(--line);padding:2rem 0 0}.feature-story-visual{min-height:420px}.library-head{grid-template-columns:1fr;gap:1.5rem}.post-grid{grid-template-columns:1fr 1fr}.toc{position:static}.toc ol{columns:2}.article-cta{grid-template-columns:1fr}.related-head{align-items:start;flex-direction:column}}
@media(max-width:620px){.blog-hero h1,.article-hero h1{font-size:3.65rem}.post-grid,.topic-links{grid-template-columns:1fr}.post-card{min-height:360px}.topic-links a:nth-child(odd){margin-right:0}.toc ol{columns:1}.check-row{grid-template-columns:1fr;gap:.4rem}.article-body p,.article-body li{font-size:1rem}.article-body blockquote{padding:1.5rem;margin-inline:0}.article-meta{gap:.75rem 1rem}}
