:root{--blog-ground:#20292d;--blog-deep:#172125;--blog-line:#ffffff27;--blog-gold:#D2A66A;--blog-green:#8FA146;--blog-ink:#f5f5f2;--blog-soft:#deded9;--blog-mute:#b9c0bd;--blog-text:19px;--blog-col:720px;--blog-wide:1080px}
.page-blog .post-shell{width:calc(100% - 72px);max-width:var(--blog-wide);margin:0 auto}
.page-blog .blog-intro{padding:72px 0 40px}
.page-blog .blog-eyebrow, .page-blog .post-meta, .page-blog .post-crumb, .page-blog .blog-card-meta{font-size:13px;font-weight:700;line-height:1.4;letter-spacing:.15em;text-transform:uppercase;color:var(--blog-gold);margin:0 0 18px}
.page-blog .blog-intro h1{margin:0 0 20px}
.page-blog .post-standfirst{font-size:22px;line-height:1.5;color:var(--blog-soft);max-width:var(--blog-col);margin:0}
.page-blog .blog-index{padding:0 0 72px}
.page-blog .blog-list{border-top:1px solid var(--blog-line)}
.page-blog .blog-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:20px;padding:36px 0;border-bottom:1px solid var(--blog-line)}
.page-blog .blog-card:has(.blog-card-media){grid-template-columns:minmax(0,1fr) 280px}
.page-blog .blog-card-media{order:2;display:block;align-self:start;aspect-ratio:3/2;overflow:hidden;border-radius:4px;background:var(--blog-deep)}
.page-blog .blog-card-media img{display:block;width:100%;height:100%;object-fit:cover}
.page-blog .blog-card-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-bottom:12px}
.page-blog .blog-card-meta span{color:var(--blog-mute)}
.page-blog .blog-card-title{font-size:30px;line-height:1.2;letter-spacing:-.01em;margin:0 0 12px;max-width:26ch}
.page-blog .blog-card-title a{color:var(--blog-ink);text-decoration:none}
.page-blog .blog-card-title a::after{content:"";position:absolute;inset:0}
.page-blog .blog-card:hover .blog-card-title a, .page-blog .blog-card-title a:focus-visible{color:var(--blog-gold)}
.page-blog .blog-card-title a:focus-visible{outline:2px solid var(--blog-gold);outline-offset:4px}
.page-blog .blog-card-excerpt{color:var(--blog-soft);font-size:17px;line-height:1.6;max-width:62ch;margin:0 0 16px}
.page-blog .blog-card-more{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blog-gold);text-decoration:none}
.page-blog .blog-card-more .icon{width:18px;height:18px;transition:transform .2s ease}
.page-blog .blog-card:hover .blog-card-more .icon{transform:translateX(4px)}
.page-blog .blog-list[data-page="1"]>.blog-card:first-child{grid-template-columns:minmax(0,1fr);padding:44px 0}
.page-blog .blog-list[data-page="1"]>.blog-card:first-child .blog-card-media{order:0;aspect-ratio:21/9}
.page-blog .blog-list[data-page="1"]>.blog-card:first-child .blog-card-title{font-size:44px;line-height:1.1;letter-spacing:-.02em;max-width:22ch}
.page-blog .blog-list[data-page="1"]>.blog-card:first-child .blog-card-excerpt{font-size:19px}
.page-blog .blog-empty{padding:48px 0;font-size:19px;color:var(--blog-soft);margin:0}
.page-blog .blog-pager{display:flex;justify-content:space-between;gap:16px;padding-top:36px}
.page-blog .blog-pager:empty{display:none}
.page-blog .blog-pager .button:only-child{margin-left:auto}
.page-blog .post-head{padding:56px 0 8px}
.page-blog .post-crumb{display:flex;flex-wrap:wrap;gap:6px 18px;margin-bottom:28px}
.page-blog .post-crumb a{color:var(--blog-gold);text-decoration:none;border-bottom:1px solid #d2a66a66}
.page-blog .post-crumb a:hover{border-bottom-color:var(--blog-gold)}
.page-blog .post-crumb span{color:var(--blog-mute)}
.page-blog .post-meta{display:flex;flex-wrap:wrap;gap:6px 18px;color:var(--blog-mute);margin-bottom:16px}
.page-blog .post-head h1{font-size:56px;line-height:1.08;letter-spacing:-.02em;max-width:20ch;margin:0 0 24px}
.page-blog .post-hero{width:calc(100% - 72px);max-width:var(--blog-wide);margin:40px auto 0}
.page-blog .post-hero img{display:block;width:100%;height:auto;border-radius:4px}
.page-blog .post-body{width:calc(100% - 72px);max-width:var(--blog-wide);margin:0 auto;padding:40px 0 64px;font-size:var(--blog-text);line-height:1.72;color:var(--blog-soft)}
.page-blog .post-body>*{max-width:var(--blog-col);margin-left:0;margin-right:auto}
.page-blog .post-body>:is(figure,table,.wide,.table-wrap,svg,.viz,.worked-example){max-width:var(--blog-wide);width:100%}
.page-blog .post-body p{margin:0 0 1.35em}
.page-blog .post-body>p:first-of-type{font-size:21px;color:var(--blog-ink)}
.page-blog .post-body h2{font-size:32px;line-height:1.2;letter-spacing:-.01em;color:var(--blog-ink);margin:2.2em 0 .7em;padding-top:22px;position:relative}
.page-blog .post-body h2::before{content:"";position:absolute;top:0;left:0;width:44px;height:2px;background:var(--blog-gold)}
.page-blog .post-body h3{font-size:22px;line-height:1.3;color:var(--blog-ink);margin:1.8em 0 .5em}
.page-blog .post-body a{color:var(--blog-gold);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.page-blog .post-body a:hover{color:var(--blog-ink)}
.page-blog .post-body strong{color:var(--blog-ink)}
.page-blog .post-body ul, .page-blog .post-body ol{padding-left:1.3em;margin:0 0 1.35em}
.page-blog .post-body ul{list-style:disc}.page-blog .post-body ol{list-style:decimal}
.page-blog .post-body li{margin:0 0 .5em;padding-left:.3em}
.page-blog .post-body li::marker{color:var(--blog-gold)}
.page-blog .post-body blockquote{margin:2em 0;padding:4px 0 4px 26px;border-left:3px solid var(--blog-gold);font-style:italic;color:var(--blog-ink);font-size:21px;line-height:1.6}
.page-blog .post-body blockquote p:last-child{margin-bottom:0}
.page-blog .post-body hr{border:0;border-top:1px solid var(--blog-line);margin:2.5em 0}
.page-blog .post-body img{max-width:100%;height:auto;border-radius:4px}
.page-blog .post-body>ul:last-child, .page-blog .post-body>ol:last-child{font-size:15px;line-height:1.6;color:var(--blog-mute)}
.page-blog .post-body figure{margin:2.6em 0;padding:28px 28px 22px;background:var(--blog-deep);border:1px solid var(--blog-line);border-top:2px solid var(--blog-gold);border-radius:0 0 4px 4px}
.page-blog .post-body figure svg{display:block;width:100%;height:auto;max-width:100%}
.page-blog .post-body figure svg text{font-family:inherit}
.page-blog .post-body figcaption{margin-top:16px;font-size:15px;line-height:1.55;color:var(--blog-soft)}
.page-blog .post-body figcaption strong{display:block;color:var(--blog-ink);margin-bottom:4px}
.page-blog .post-body .source, .page-blog .post-body figcaption .source, .page-blog .post-body figure p:last-child:not(:only-child){font-size:13px;line-height:1.5;color:var(--blog-mute);margin:10px 0 0}
.page-blog .post-body .illustration, .page-blog .post-body .figure-label{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blog-gold);margin-right:8px}
.page-blog .post-body table{display:block;overflow-x:auto;border-collapse:collapse;margin:2.2em 0;font-size:16px;line-height:1.45;font-variant-numeric:tabular-nums;-webkit-overflow-scrolling:touch}
.page-blog .post-body figure table{margin:0}
.page-blog .post-body th, .page-blog .post-body td{padding:14px 18px 14px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--blog-line)}
.page-blog .post-body th{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blog-gold);border-bottom:2px solid var(--blog-gold);white-space:nowrap}
.page-blog .post-body td{color:var(--blog-ink)}
.page-blog .post-body td:first-child{font-weight:700}
.page-blog .post-body :is(td,th)[data-align="right"], .page-blog .post-body td.num, .page-blog .post-body th.num{text-align:right}
.page-blog .post-body caption{caption-side:top;text-align:left;font-size:15px;color:var(--blog-mute);padding-bottom:12px}
.page-blog .post-body .worked-example{margin:2.4em 0;padding:26px 28px;background:var(--blog-deep);border:1px solid var(--blog-line);border-left:3px solid var(--blog-gold);border-radius:0 4px 4px 0}
.page-blog .post-body .worked-example>:last-child{margin-bottom:0}
.page-blog .post-body .worked-example h3{margin-top:0;font-size:13px;letter-spacing:.15em;text-transform:uppercase;color:var(--blog-gold)}
.page-blog .resource-closing{margin-top:0}
@media(max-width:900px){
.page-blog .post-head h1{font-size:44px}
.page-blog .blog-card:has(.blog-card-media){grid-template-columns:minmax(0,1fr) 200px}
.page-blog .blog-list[data-page="1"]>.blog-card:first-child .blog-card-title{font-size:36px}
}
@media(max-width:760px){
.page-blog .post-shell, .page-blog .post-hero, .page-blog .post-body{width:calc(100% - 40px)}
.page-blog .blog-intro{padding:44px 0 28px}
.page-blog .post-standfirst{font-size:19px}
.page-blog .blog-card, .page-blog .blog-list[data-page="1"]>.blog-card:first-child{padding:28px 0;gap:16px}
.page-blog .blog-card:has(.blog-card-media){grid-template-columns:minmax(0,1fr)}
.page-blog .blog-card-media, .page-blog .blog-list[data-page="1"]>.blog-card:first-child .blog-card-media{order:-1;aspect-ratio:3/2}
.page-blog .blog-card-title, .page-blog .blog-list[data-page="1"]>.blog-card:first-child .blog-card-title{font-size:27px;max-width:none}
.page-blog .blog-pager{flex-direction:column}
.page-blog .blog-pager .button{width:100%;justify-content:center}
.page-blog .post-head{padding-top:32px}
.page-blog .post-head h1{font-size:34px;letter-spacing:-.015em}
.page-blog .post-meta, .page-blog .post-crumb{font-size:12px}
.page-blog .post-body{--blog-text:18px;padding-top:28px;padding-bottom:44px}
.page-blog .post-body>p:first-of-type{font-size:19px}
.page-blog .post-body h2{font-size:26px}
.page-blog .post-body h3{font-size:20px}
.page-blog .post-body blockquote{font-size:19px;padding-left:18px}
.page-blog .post-body figure{padding:18px 16px 16px;margin-left:-8px;margin-right:-8px;width:auto}
.page-blog .post-body figcaption{font-size:14px}
.page-blog .post-body td[data-label]{display:block;padding:6px 0;border:0;text-align:left}
.page-blog .post-body td[data-label]::before{content:attr(data-label);display:block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blog-gold)}
.page-blog .post-body tr:has(td[data-label]){display:block;padding:12px 0;border-bottom:1px solid var(--blog-line)}
.page-blog .post-body table:has(td[data-label]) :is(thead){display:none}
.page-blog .post-body table:has(td[data-label]){display:block;overflow:visible}
.page-blog .post-body .worked-example{padding:20px 18px}
}
@media(prefers-reduced-motion:reduce){.page-blog .blog-card-more .icon{transition:none}.page-blog .blog-card:hover .blog-card-more .icon{transform:none}}
@media print{.page-blog .post-body figure, .page-blog .post-body .worked-example{background:#fff;color:#000;border-color:#999}.page-blog .post-body, .page-blog .post-body p{color:#000}}