.post-list{display:grid;gap:28px}.blog-feature-card{display:grid;grid-template-columns:1.15fr 1fr;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--white)}.blog-feature-image{display:flex;align-items:center;min-width:0;background:#110e19;overflow:hidden}.blog-feature-image img{display:block;width:100%;height:auto;transition:transform .25s}.blog-feature-image:hover img{transform:scale(1.025)}.blog-feature-copy{align-self:center;padding:clamp(24px,3vw,40px)}.blog-feature-copy h2,.blog-feature-copy h3{margin:14px 0;font:500 clamp(1.5rem,2.5vw,2.1rem)/1.13 'Libre Franklin';letter-spacing:-.045em}.blog-feature-copy>p:not(.pub-meta){margin-bottom:20px;color:#526058;font-size:.94rem}.blog-feature-copy>.text-link{display:inline-block;margin-top:24px}.post-topics{display:flex;flex-wrap:wrap;gap:8px}.post-topics span{padding:5px 10px;border:1px solid var(--line);border-radius:100px;font-size:.68rem;font-weight:500;letter-spacing:.02em}.research-notes-label{margin:56px 0 24px;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.blog-grid a{overflow-wrap:anywhere}.blog-page{padding:80px 0 110px}.blog-page-header{max-width:880px;margin-bottom:48px}.blog-page h1{font-size:clamp(3rem,6.5vw,6rem);line-height:1.02;overflow-wrap:break-word}.blog-page h1 em{color:var(--rust)}.blog-page-header .lead{max-width:680px}.back-link{display:inline-block;margin-bottom:40px;font-size:.82rem;font-weight:600;border-bottom:1px solid}.topic-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.topic-filter{padding:10px 16px;border:1px solid var(--line);border-radius:100px;background:transparent;color:var(--ink);font:500 .8rem 'DM Sans',sans-serif;cursor:pointer}.topic-filter[aria-pressed=true]{background:var(--ink);color:var(--white);border-color:var(--ink)}.post-count{margin-bottom:24px;color:#526058;font-size:.8rem}.blog-page a:focus-visible,.blog-page button:focus-visible,.post-list a:focus-visible{outline:3px solid var(--rust);outline-offset:5px}.article-header{max-width:950px;margin-bottom:44px}.article-header h1{margin:20px 0 24px}.article-header .lead{max-width:750px}.article-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin:25px 0;color:#526058;font-size:.78rem}.article-figure{margin:44px 0 58px}.article-figure>a{display:block;background:#110e19;border-radius:8px;overflow:hidden}.article-figure img{display:block;width:100%;height:auto}.article-figure figcaption{max-width:780px;margin:14px auto 0;color:#526058;font-size:.8rem;line-height:1.6}.article-body{max-width:740px;margin-inline:auto;font-size:1.05rem;line-height:1.8}.article-body h2{margin:48px 0 18px;font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.12;letter-spacing:-.045em;scroll-margin-top:30px}.article-body p{margin-bottom:22px}.article-body a:not(.button){text-decoration:underline;text-underline-offset:3px}.article-body ul{padding-left:22px}.article-body li{padding-left:6px;margin-bottom:14px}.article-body strong{font-weight:600}.article-contents{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:30px;padding-top:20px;border-top:1px solid var(--line);font-size:.78rem;font-weight:600}.article-contents a{border-bottom:1px solid var(--line)}.article-callout{margin-top:48px;padding:36px;border-radius:8px;background:var(--sage)}.article-callout h2{margin-top:0}.article-callout .button{margin-top:5px}.article-sources{margin-top:44px;padding-top:24px;border-top:1px solid var(--line);color:#526058;font-size:.83rem}.article-end-link{margin-top:44px}.article-end-link a{font-size:.85rem;font-weight:600}.blog-footer{padding-top:35px}.blog-footer .footer-small{padding-top:0;border:0}
.article-repository{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;margin:25px 0 0}.article-repository span{color:#526058;font-size:.75rem}
@media(max-width:760px){.blog-feature-card{grid-template-columns:1fr}.blog-feature-copy{padding:26px}.blog-feature-copy h2,.blog-feature-copy h3{font-size:1.65rem}.blog-page{padding:45px 0 75px}.blog-page h1{font-size:clamp(2.5rem,10vw,4rem);letter-spacing:-.055em}.blog-page-header{margin-bottom:35px}.back-link{margin-bottom:30px}.article-header{margin-bottom:30px}.article-figure{margin:30px 0 40px}.article-body{font-size:1rem}.article-callout{padding:25px}.article-meta{gap:6px 14px}.article-contents{gap:12px 20px}}
@media(prefers-reduced-motion:reduce){.blog-feature-image img{transition:none}.blog-feature-image:hover img{transform:none}}
