.blog-hero{position:relative;overflow:hidden;background:var(--pine);color:var(--mist)}.blog-hero .topo{-webkit-mask-image:linear-gradient(90deg,transparent 22%,#000 78%);mask-image:linear-gradient(90deg,transparent 22%,#000 78%)}.blog-hero .topo path{stroke:var(--mist);stroke-width:1;opacity:.42}.blog-hero-inner{position:relative;z-index:1;max-width:1160px;margin:0 auto;padding:clamp(36px,5vw,64px) var(--gutter) clamp(44px,6vw,80px)}.blog-hero h1{font-family:var(--serif);font-size:clamp(30px,3.8vw,52px);line-height:1.1;letter-spacing:-.01em;color:var(--paper);max-width:22em;margin-bottom:16px;text-wrap:balance}.blog-hero time{font-size:14px;color:var(--mist)}.blog-hero p{max-width:56ch;color:var(--mist)}.blog-back{font-size:13px;color:var(--mist);display:inline-block;margin-bottom:clamp(24px,3vw,36px)}.blog-back:hover{color:var(--paper);text-decoration:underline;text-underline-offset:3px}.blog-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:clamp(48px,6vw,88px);align-items:start;max-width:1160px;margin:0 auto;padding:clamp(36px,5vw,64px) var(--gutter) clamp(64px,9vw,110px)}.blog-aside{position:sticky;top:96px;max-height:calc(100vh - 120px);overflow-y:auto;font-size:14px;line-height:1.4}.blog-toc h2{font-size:15px;font-weight:700;color:var(--primary);margin-bottom:12px}.blog-toc ul{list-style:none;padding:0;border-left:1px solid var(--rule)}.blog-toc a{display:block;padding:6px 0 6px 14px;color:var(--fg-muted)}.blog-toc a:hover{color:var(--primary)}.blog-aside-cta{margin-top:28px;padding-top:24px;border-top:1px solid var(--rule)}.blog-aside-cta p{color:var(--fg);margin-bottom:14px}.blog-aside-cta .btn{width:100%;justify-content:center}.blog-aside-cta span{display:block;margin-top:10px;color:var(--fg-muted);font-size:13px}.blog-cover{width:100%;height:auto;border-radius:4px;margin:0 0 8px;display:block}.prose{font-size:1.075rem;line-height:1.72;color:var(--fg)}.blog-cover+.prose{margin-top:36px}.prose>*+*{margin-top:1.25em}.prose h2{scroll-margin-top:96px}.prose h2{font-family:var(--serif);font-size:clamp(23px,3vw,30px);line-height:1.18;color:var(--primary);margin-top:1.9em;letter-spacing:-.01em}.prose h3{font-family:var(--serif);font-size:clamp(19px,2.3vw,23px);color:var(--primary);margin-top:1.6em}.prose p{max-width:68ch}.prose a{color:var(--primary);text-decoration:underline;text-underline-offset:2px;text-decoration-color:var(--accent)}.prose a:hover{color:var(--accent)}.prose ul,.prose ol{padding-left:1.4em;max-width:66ch}.prose li{margin-top:.5em}.prose strong{color:var(--graphite);font-weight:600}.prose blockquote{border-left:3px solid var(--accent);padding-left:1.1em;font-style:italic;color:var(--fg-muted)}.prose img{border-radius:4px;margin:1.6em 0}.prose table{display:block;overflow-x:auto;border-collapse:collapse;font-size:.9rem;line-height:1.45}.prose th,.prose td{padding:10px 8px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;min-width:88px}.prose th{color:var(--primary)}.blog-post-foot{margin-top:56px;padding-top:28px;border-top:1px solid var(--rule);display:flex;gap:28px;flex-wrap:wrap}.blog-about{margin-top:56px;padding-top:28px;border-top:1px solid var(--rule);color:var(--fg)}.blog-about a{color:var(--primary);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}.blog-related{margin-top:56px;padding-top:28px;border-top:1px solid var(--rule)}.blog-related h2{font-family:var(--serif);font-size:clamp(20px,2.4vw,24px);color:var(--primary);margin-bottom:14px}.blog-related ul{list-style:none;padding:0}.blog-related li+li{margin-top:10px}.blog-related a{color:var(--fg);text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:3px}.blog-related a:hover{color:var(--primary);text-decoration-color:var(--accent)}.blog-related+.blog-post-foot{margin-top:36px}.blog-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(36px,4vw,56px) clamp(24px,3vw,40px);max-width:1160px;margin:0 auto;padding:clamp(40px,5vw,64px) var(--gutter) clamp(64px,9vw,110px)}.blog-card a{display:block}.blog-card img,.blog-card-topo{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:4px;margin-bottom:14px;display:block}.blog-card-topo{background:var(--pine);overflow:hidden}.blog-card-topo svg{width:100%;height:100%;display:block}.blog-card-topo path{fill:none;stroke:var(--mist);stroke-width:.9;opacity:.4}.blog-card time{font-size:13px;color:var(--fg-muted)}.blog-card h2{font-family:var(--serif);font-size:1.2rem;color:var(--primary);margin:6px 0 8px;line-height:1.25}.blog-card a:hover h2{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}.blog-card p{color:var(--fg-muted);font-size:.95rem;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}.blog-empty{color:var(--fg-muted);max-width:1160px;margin:40px auto;padding:0 var(--gutter)}@media(max-width:1000px){.blog-layout{grid-template-columns:minmax(0,1fr)}.blog-aside{display:none}.blog-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.blog-list{grid-template-columns:minmax(0,1fr)}}
