/* Editorial layouts are scoped to the blog; shared studio pages keep their own presentation. */
.blog-page{--blog-ink:#edece7;--blog-muted:#a0a09c;--blog-line:#ffffff24;background:#080808;color:var(--blog-ink)}
.blog-page .blog-shell{width:100%;max-width:1600px;margin-inline:auto;padding-inline:4%;box-sizing:border-box}
.blog-page .blog-hero{padding-top:156px;padding-bottom:60px}
.blog-page .blog-kicker{display:flex;align-items:center;gap:12px;font:10px/1.6 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--blog-muted)}
.blog-page .blog-kicker:before{content:'';width:6px;height:6px;background:#b6a1e7;border-radius:50%;flex-shrink:0}
.blog-page .blog-hero-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:8%;align-items:end;margin-top:30px}
.blog-page .blog-hero h1{margin:0;font:400 clamp(60px,7.3vw,116px)/.98 'Bitcount Grid Single',monospace;letter-spacing:-.065em;color:var(--blog-ink)}
.blog-page .blog-hero-copy{padding-bottom:4px;max-width:400px}
.blog-page .blog-hero-copy>p{font:16px/1.8 'DM Sans',sans-serif;color:#bbbcb6;margin:0 0 28px}
.blog-page .blog-hero-copy>span{font:10px/1.6 'DM Sans',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--blog-muted)}
.blog-page .blog-topics{display:flex;align-items:center;gap:8px 30px;flex-wrap:wrap;border-block:1px solid var(--blog-line);padding-block:8px;margin-bottom:48px}
.blog-page .blog-topics a{position:relative;display:flex;align-items:center;gap:12px;min-height:44px;font:12px/1.4 'DM Sans',sans-serif;color:var(--blog-muted);transition:color .2s}
.blog-page .blog-topics a>span{font-size:9px;color:#77786f;font-variant-numeric:tabular-nums}
.blog-page .blog-topics a[aria-current=page],.blog-page .blog-topics a:hover{color:var(--blog-ink)}
.blog-page .blog-topics a[aria-current=page]:after{content:'';position:absolute;bottom:-9px;left:0;right:0;height:2px;background:#b6a1e7}
.blog-page .blog-section-label{display:flex;justify-content:space-between;gap:16px;font:10px/1.6 'DM Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--blog-muted);margin:0 0 22px}
.blog-page .blog-feature{display:grid;grid-template-columns:1.2fr 1fr;gap:6%;align-items:center;padding-bottom:64px;border-bottom:1px solid var(--blog-line);color:inherit}
.blog-page .blog-feature-visual{position:relative;display:block;min-width:0;overflow:hidden;aspect-ratio:1.45;background:#141414}
.blog-page .blog-feature-visual>img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .65s cubic-bezier(.2,.6,.3,1)}
.blog-page .blog-feature-visual>span{position:absolute;left:20px;bottom:18px;padding:6px 8px;background:#080808b8;font:9px/1.4 'DM Sans',sans-serif;letter-spacing:.1em;color:var(--blog-ink)}
.blog-page .blog-feature:hover .blog-feature-visual>img{transform:none}
.blog-page .blog-meta{display:flex;align-items:center;gap:10px 20px;flex-wrap:wrap;font:10px/1.6 'DM Sans',sans-serif;letter-spacing:.04em;color:var(--blog-muted)}
.blog-page .blog-meta>span:first-child{color:#c2b3db;text-transform:uppercase;letter-spacing:.08em}
.blog-page .blog-feature-copy h2{margin:20px 0;font:400 clamp(28px,3vw,48px)/1.1 'DM Sans',sans-serif;letter-spacing:-.045em;max-width:600px}
.blog-page .blog-feature-copy>p{margin:0;font:15px/1.8 'DM Sans',sans-serif;color:var(--blog-muted);max-width:440px}
.blog-page .blog-read{display:flex;align-items:center;justify-content:space-between;gap:24px;width:fit-content;min-width:155px;min-height:44px;border-bottom:1px solid #ffffff40;margin-top:28px;font:10px/1.5 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.08em}
.blog-page .blog-read>span{font-size:24px;transition:transform .2s}
.blog-page a:hover .blog-read>span{transform:translate(3px,-3px)}
.blog-page .blog-catalogue{padding-block:54px 96px}
.blog-page .blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 3%;align-items:start}
.blog-page .blog-card{display:block;min-width:0;color:inherit}
.blog-page .blog-card-visual{position:relative;display:block;aspect-ratio:1.6;overflow:hidden;background:#141414;margin-bottom:22px}
.blog-page .blog-card-visual>img{display:block;width:100%;height:100%;object-fit:contain}
.blog-page .blog-card-visual>span{position:absolute;left:14px;bottom:12px;background:#080808b8;padding:5px 7px;font:9px/1.4 'DM Sans',sans-serif;letter-spacing:.08em}
.blog-page .blog-card h2{font:400 clamp(22px,1.9vw,30px)/1.2 'DM Sans',sans-serif;letter-spacing:-.035em;margin:14px 0 12px;overflow-wrap:break-word}
.blog-page .blog-card>p{font:14px/1.8 'DM Sans',sans-serif;color:var(--blog-muted);margin:0}
.blog-page .blog-card .blog-read{margin-top:18px;min-width:0;width:100%;font-size:9px;color:#c6c5bf}
.blog-page .blog-note{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;border-top:1px solid var(--blog-line);padding-block:42px 80px}
.blog-page .blog-note h2{font:400 clamp(28px,3.4vw,52px)/1.1 'DM Sans',sans-serif;letter-spacing:-.04em;margin:0 0 14px}
.blog-page .blog-note p{font:14px/1.8 'DM Sans',sans-serif;color:var(--blog-muted);margin:0;max-width:550px}
.blog-page .blog-note .blog-read{margin:0}
.blog-page .blog-breadcrumbs{display:flex;gap:8px 14px;align-items:center;flex-wrap:wrap;font:11px/1.6 'DM Sans',sans-serif;color:var(--blog-muted);margin-bottom:36px}
.blog-page .blog-breadcrumbs>span{color:#77776f}
.blog-page .blog-breadcrumbs a:hover{color:var(--blog-ink)}
.blog-page .blog-article-header{padding-top:145px;padding-bottom:46px;border-bottom:1px solid var(--blog-line)}
.blog-page .blog-article-header h1{max-width:1170px;font:400 clamp(40px,5.1vw,82px)/1.07 'DM Sans',sans-serif;letter-spacing:-.055em;margin:0 0 28px;overflow-wrap:break-word}
.blog-page .blog-article-deck{max-width:750px;font:18px/1.8 'DM Sans',sans-serif;color:#b4b5ad;margin:0 0 30px}
.blog-page .blog-byline{display:flex;gap:12px 28px;flex-wrap:wrap;font:10px/1.6 'DM Sans',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--blog-muted)}
.blog-page .blog-byline>span:first-child{color:#c2b3db}
.blog-page .blog-article-cover{width:100%;height:clamp(240px,31vw,470px);margin:0;overflow:hidden;background:#141414}
.blog-page .blog-article-cover>img{width:100%;height:100%;display:block;object-fit:contain}
.blog-page .blog-reading-layout{display:grid;grid-template-columns:240px minmax(0,760px);gap:7%;align-items:start;justify-content:center;padding-block:70px 90px}
.blog-page .blog-toc{position:sticky;top:112px;border-top:1px solid var(--blog-line);border-bottom:1px solid var(--blog-line);font:12px/1.6 'DM Sans',sans-serif;color:var(--blog-muted);max-height:calc(100svh - 144px);overflow-y:auto;scrollbar-width:thin}
.blog-page .blog-toc summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;cursor:pointer;color:var(--blog-ink);font-size:10px;letter-spacing:.08em;text-transform:uppercase;list-style:none}
.blog-page .blog-toc summary::-webkit-details-marker{display:none}
.blog-page .blog-toc summary:after{content:'+';font-size:18px}
.blog-page .blog-toc[open] summary:after{content:'−'}
.blog-page .blog-toc nav{display:flex;flex-direction:column;gap:0;padding:0 10px 16px 0}
.blog-page .blog-toc a{display:block;padding:8px 0;color:var(--blog-muted);border-left:1px solid transparent;transition:color .2s}
.blog-page .blog-toc a:hover,.blog-page .blog-toc a[aria-current=location]{color:var(--blog-ink)}
.blog-page .blog-article-body{min-width:0;max-width:760px;font:17px/1.9 'DM Sans',sans-serif;color:#bebfb7;overflow-wrap:anywhere}
.blog-page .blog-article-body p{font:inherit;margin:0 0 26px;color:inherit}
.blog-page .blog-article-body strong,.blog-page .blog-article-body b{color:var(--blog-ink);font-weight:600}
.blog-page .blog-article-body h2{font:400 clamp(27px,2.6vw,38px)/1.2 'DM Sans',sans-serif;color:var(--blog-ink);letter-spacing:-.035em;margin:60px 0 24px;scroll-margin-top:116px}
.blog-page .blog-article-body h3{font:500 23px/1.3 'DM Sans',sans-serif;color:var(--blog-ink);letter-spacing:-.02em;margin:38px 0 18px;scroll-margin-top:116px}
.blog-page .blog-article-body h2 strong,.blog-page .blog-article-body h3 strong{font-weight:inherit}
.blog-page .blog-article-body>div:first-child>p:first-child{font-size:19px;color:#d0d0c7}
.blog-page .blog-article-body ul,.blog-page .blog-article-body ol{padding-left:1.4em;margin:22px 0 30px}
.blog-page .blog-article-body li{padding-left:6px;margin-bottom:12px}
.blog-page .blog-article-body li::marker{color:#b6a1e7}
.blog-page .blog-article-body a{color:var(--blog-ink);text-decoration:underline;text-decoration-color:#b6a1e77a;text-underline-offset:4px}
.blog-page .blog-article-body a:hover{text-decoration-color:#b6a1e7}
.blog-page .blog-article-body code{font:13px/1.6 monospace;background:#161616;color:#d6c4ef;padding:2px 5px;border-radius:2px}
.blog-page .blog-article-body pre{max-width:100%;overflow-x:auto;padding:20px;background:#111;border:1px solid var(--blog-line)}
.blog-page .blog-article-body figure{margin:32px 0;max-width:100%}
.blog-page .blog-article-body img{display:block;max-width:100%;width:auto;height:auto;margin:28px auto}
.blog-page .blog-article-body iframe{max-width:100%;aspect-ratio:16/9;border:0}
.blog-page .blog-article-body figure:has(table){overflow-x:auto;overscroll-behavior-inline:contain}
.blog-page .blog-article-body table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.6;margin:20px 0 30px}
.blog-page .blog-article-body th,.blog-page .blog-article-body td{padding:14px 16px;border:1px solid var(--blog-line);text-align:left;vertical-align:top}
.blog-page .blog-article-body th{color:var(--blog-ink);background:#141414;font-weight:500}
.blog-page .blog-related{border-top:1px solid var(--blog-line);padding-block:48px 80px}
.blog-page .blog-related .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1040px}
.blog-page :is(.blog-card,.blog-feature,.blog-topics a,.blog-toc a):focus-visible{outline:2px solid #b6a1e7;outline-offset:5px}
@media(max-width:1100px){
 .blog-page .blog-hero-grid{grid-template-columns:1.2fr .8fr;gap:6%}
 .blog-page .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 5%}
 .blog-page .blog-reading-layout{grid-template-columns:200px minmax(0,1fr);gap:5%}
}
@media(max-width:900px){
 .blog-page .blog-reading-layout{grid-template-columns:minmax(0,1fr);gap:32px;max-width:820px}
 .blog-page .blog-toc{position:relative;top:auto;max-height:320px}
 .blog-page .blog-hero-grid{grid-template-columns:1fr;gap:26px}
 .blog-page .blog-hero-copy{max-width:600px}
 .blog-page .blog-hero-copy>p{margin-bottom:18px}
 .blog-page .blog-feature{gap:5%}
}
@media(max-width:600px){
 .blog-page .blog-shell{padding-inline:5%}
 .blog-page .blog-hero{padding-top:128px;padding-bottom:32px}
 .blog-page .blog-hero h1{font-size:clamp(40px,11.5vw,66px);line-height:1.03}
 .blog-page .blog-hero-grid{margin-top:24px;gap:24px}
 .blog-page .blog-hero-copy>p{font-size:14px;line-height:1.8}
 .blog-page .blog-hero-copy>span{font-size:9px}
 .blog-page .blog-topics{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin-bottom:30px;padding-block:4px}
 .blog-page .blog-topics a{min-height:44px;justify-content:space-between;font-size:11px}
 .blog-page .blog-topics a[aria-current=page]:after{bottom:0}
 .blog-page .blog-feature{grid-template-columns:minmax(0,1fr);gap:26px;padding-bottom:34px}
 .blog-page .blog-feature-visual{aspect-ratio:1.6}
 .blog-page .blog-feature-copy h2{font-size:30px;margin:14px 0 16px}
 .blog-page .blog-feature-copy>p{font-size:14px}
 .blog-page .blog-read{margin-top:20px}
 .blog-page .blog-catalogue{padding-block:34px 52px}
 .blog-page .blog-grid,.blog-page .blog-related .blog-grid{grid-template-columns:minmax(0,1fr);gap:38px}
 .blog-page .blog-card h2{font-size:25px}
 .blog-page .blog-card-visual{margin-bottom:18px}
 .blog-page .blog-card>p{font-size:14px}
 .blog-page .blog-note{grid-template-columns:1fr;gap:24px;padding-block:32px 50px}
 .blog-page .blog-note h2{font-size:32px}
 .blog-page .blog-note .blog-read{width:fit-content}
 .blog-page .blog-article-header{padding-top:120px;padding-bottom:32px}
 .blog-page .blog-breadcrumbs{font-size:10px;margin-bottom:28px}
 .blog-page .blog-article-header h1{font-size:clamp(34px,9.4vw,52px);line-height:1.12;letter-spacing:-.045em;margin-bottom:24px}
 .blog-page .blog-article-deck{font-size:15px;line-height:1.8;margin-bottom:24px}
 .blog-page .blog-byline{font-size:9px;gap:8px 18px}
 .blog-page .blog-article-cover{height:220px}
 .blog-page .blog-reading-layout{padding-block:32px 48px;gap:28px}
 .blog-page .blog-article-body{font-size:16px;line-height:1.85}
 .blog-page .blog-article-body>div:first-child>p:first-child{font-size:17px}
 .blog-page .blog-article-body h2{font-size:28px;margin-top:44px}
 .blog-page .blog-article-body h3{font-size:22px}
 .blog-page .blog-article-body table{min-width:500px}
 .blog-page .blog-article-body table:not(figure table){display:block;max-width:100%;min-width:0;overflow-x:auto}
 .blog-page .blog-related{padding-block:32px 48px}
}
@media(prefers-reduced-motion:reduce){.blog-page :is(.blog-card-visual>img,.blog-feature-visual>img,.blog-read>span){transition:none}}
