.article-hero{padding-top:8rem;padding-bottom:2rem;border-bottom:1px solid var(--hair)}.article-hero .crumb{display:flex;align-items:center;flex-wrap:wrap;gap:0 .5rem;font-family:Geist Mono,monospace;font-size:11.5px;color:var(--ink-3);letter-spacing:.12em;text-transform:uppercase}.article-hero .crumb a{color:var(--ink-2);display:inline-flex;align-items:center;min-height:44px}.article-hero .crumb a:hover{color:var(--accent)}.article-hero .tag-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1.5rem}.article-hero .type-tag{font-family:Geist Mono,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);background:#ff4a1c14;border:1px solid rgba(255,74,28,.25);padding:.3rem .6rem;border-radius:999px}.article-hero .topic-tag{font-family:Geist Mono,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);background:#ffffff08;border:1px solid var(--hair);padding:.3rem .6rem;border-radius:999px}.article-hero h1{font-size:clamp(2rem,5vw,4rem);max-width:24ch;margin-top:1.5rem;line-height:1.05}.article-hero .meta-row{display:flex;gap:1.5rem;margin-top:2rem;font-family:Geist Mono,monospace;font-size:12px;color:var(--ink-3);flex-wrap:wrap;padding-top:1.5rem;border-top:1px solid var(--hair)}.article-hero .meta-row .author{color:var(--ink)}.article-hero .meta-row .author a{text-decoration:underline;text-decoration-color:#ff4a1c8c;text-underline-offset:3px}.article-hero .meta-row .author a:hover{color:var(--accent)}.tldr-box{background:#ff4a1c0a;border:1px solid rgba(255,74,28,.2);border-radius:1rem;padding:1.75rem 2rem;margin:2rem 0 3rem;max-width:75ch}.tldr-box .label{font-family:Geist Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem}.tldr-box p{font-size:17px;line-height:1.6;color:var(--ink);margin:0;max-width:none}.article-body{padding:0 0 4rem}.article-body .prose{max-width:72ch;margin:0 auto}.article-body .prose p{font-size:17px;line-height:1.75;color:var(--ink-2);margin-bottom:1.5rem}.article-body .prose h2{font-size:clamp(1.5rem,3vw,2.25rem);margin-top:3rem;margin-bottom:1.25rem;color:var(--ink);letter-spacing:-.025em}.article-body .prose h3{font-size:clamp(1.125rem,2vw,1.5rem);margin-top:2rem;margin-bottom:.75rem;color:var(--ink);letter-spacing:-.02em}.article-body .prose ul,.article-body .prose ol{margin:1rem 0 1.5rem 1.5rem;color:var(--ink-2);font-size:17px;line-height:1.7}.article-body .prose li{margin-bottom:.5rem}.article-body .prose blockquote{border-left:3px solid var(--accent);padding:.5rem 0 .5rem 1.5rem;margin:1.5rem 0;color:var(--ink-2);font-style:italic}.article-body .prose code{font-family:Geist Mono,monospace;font-size:.92em;background:#ffffff0d;padding:.15em .4em;border-radius:4px;color:var(--ink)}.article-body .prose strong{color:var(--ink);font-weight:500}.article-body .prose a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.article-body .prose a:hover{opacity:.8}.article-body .prose a.cta{color:#0b0b0b;text-decoration:none}.article-body .prose a.cta:hover{opacity:1}.article-body .prose .table-wrap{overflow-x:auto;margin:1.75rem 0;max-width:100%}@media(min-width:1100px){.article-body .prose .table-wrap{width:min(1040px,calc(100vw - 6rem));max-width:none;margin-left:50%;transform:translate(-50%)}.article-body .prose .table-wrap table{width:100%}}.article-body .prose h2{scroll-margin-top:6.5rem}.toc{margin:0 0 2.5rem;border:1px solid var(--hair);border-radius:1rem;background:#ffffff04}.toc summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:52px;padding:0 1.25rem;cursor:pointer;list-style:none;font-size:15px;font-weight:500;color:var(--ink)}.toc summary::-webkit-details-marker{display:none}.toc .toc-n{font-family:Geist Mono,monospace;font-size:11.5px;letter-spacing:.06em;color:var(--ink-3);font-weight:400}.toc .toc-n:after{content:"+";display:inline-block;margin-left:.75rem;color:var(--ink-2);transition:transform .3s var(--ease)}.toc[open] .toc-n:after{transform:rotate(45deg)}.article-body .prose .toc ol{list-style:none;margin:0;padding:.25rem 1.25rem 1rem;max-width:none;counter-reset:toc;border-top:1px solid var(--hair)}.article-body .prose .toc li{margin:0;counter-increment:toc}.article-body .prose .toc a{display:flex;gap:.85rem;align-items:baseline;min-height:40px;padding:.45rem 0;color:var(--ink-2);text-decoration:none;font-size:15.5px;line-height:1.4}.article-body .prose .toc a:before{content:counter(toc,decimal-leading-zero);font-family:Geist Mono,monospace;font-size:11.5px;color:var(--ink-3)}.article-body .prose .toc a:hover{color:var(--ink);opacity:1}@media(prefers-reduced-motion:reduce){.toc .toc-n:after{transition:none}}@media(max-width:640px){.article-body .prose .table-wrap{margin-right:-1rem;padding-right:1rem;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 2.5rem),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 2.5rem),transparent)}.article-body .prose .table-wrap table{min-width:34rem}}.article-body .prose table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.5}.article-body .prose th,.article-body .prose td{border:1px solid var(--hair);padding:.6rem .85rem;text-align:left;vertical-align:top;color:var(--ink-2)}.article-body .prose th{color:var(--ink);font-weight:500;background:#ffffff08;white-space:nowrap}.article-body .prose .code-block{background:#ffffff0d;border:1px solid var(--hair);border-radius:8px;padding:1rem 1.25rem;overflow-x:auto;margin:1.5rem 0}.article-body .prose .code-block code{background:none;padding:0}.article-body .prose sup.cite{line-height:0;margin-left:2px}.article-body .prose sup.cite a{font-family:Geist Mono,monospace;font-size:11px;color:var(--accent);text-decoration:none;letter-spacing:0;display:inline-block;padding:.6rem .35rem;margin:-.6rem -.2rem}.article-body .prose sup.cite a:hover{text-decoration:underline}.article-body .prose .sources{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--hair)}.article-body .prose .sources h2{font-family:Geist Mono,monospace;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:0 0 1rem}.article-body .prose .sources ol{font-size:14.5px;line-height:1.6;margin:0 0 0 1.25rem}.article-body .prose .sources li{scroll-margin-top:7rem}.article-body .prose .sources a{color:var(--ink-2)}.article-body .prose .sources a:hover{color:var(--accent)}.article-body .prose hr{border:0;border-top:1px solid var(--hair);margin:3rem 0}.faq-section{border-top:1px solid var(--hair);padding:4rem 0;margin-top:3rem;background:#ffffff03}.faq-section .container{max-width:75ch}.faq-section h2{font-size:clamp(1.5rem,3vw,2.25rem);margin-bottom:2rem}.faq-row{padding:1.5rem 0;border-bottom:1px solid var(--hair);cursor:pointer}.faq-row[open] .faq-q:after{transform:rotate(45deg);background:var(--accent);color:#0b0b0b;border-color:var(--accent)}.faq-q{font-size:18px;font-weight:500;color:var(--ink);letter-spacing:-.015em;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;list-style:none}.faq-q::-webkit-details-marker{display:none}.faq-q:after{content:"+";display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--hair-2);border-radius:999px;color:var(--ink-2);transition:all .4s var(--ease);flex-shrink:0;font-size:18px;line-height:0}.faq-a{font-size:15px;line-height:1.65;color:var(--ink-2);margin-top:1rem;padding-left:.25rem}.article-cta-band{margin:3rem auto;max-width:75ch;padding:2.5rem;background:#ff4a1c0d;border:1px solid rgba(255,74,28,.2);border-radius:1.5rem;text-align:center}.article-cta-band h3{font-size:clamp(1.25rem,2.5vw,1.75rem);max-width:24ch;margin:0 auto 1.5rem}.related{padding:4rem 0;border-top:1px solid var(--hair)}.related h2{font-size:clamp(1.5rem,2.5vw,2rem);margin-bottom:2rem}.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.related-card{padding:1.5rem;background:#ffffff04;border:1px solid var(--hair);border-radius:12px;transition:all .4s var(--ease);text-decoration:none;color:var(--ink-2);display:flex;flex-direction:column;gap:.5rem}.related-card:hover{border-color:#ff4a1c59;background:#ffffff08;transform:translateY(-2px)}.related-card h3{margin:0;font-size:16px;font-weight:500;color:var(--ink);letter-spacing:-.015em;line-height:1.3}.related-card:hover h3{color:var(--accent)}.related-card .summary{font-size:13.5px;color:var(--ink-2)}
