@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Instrument+Serif:ital@0;1&display=swap');
:root{--paper:#faf9f6;--ink:#242a26;--muted:#73776f;--line:#dedfd6;--green:#24796c;--amber:#b67930;--red:#b05443;--blue:#4e6fa5;--wash:#f0f1eb;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:var(--green)}button,input,select{font:inherit}button,select{cursor:pointer}button{color:var(--ink)}button:disabled{cursor:default;opacity:.5}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--amber);outline-offset:5px}img,video,svg{max-width:100%;display:block}button{border:1px solid var(--line);border-radius:5px;background:var(--paper);padding:7px 15px;font-size:13px;font-weight:550;transition:background .2s}button:hover{background:var(--wash)}button.primary{background:var(--ink);color:white;border-color:var(--ink)}button[aria-pressed=true]{background:var(--ink);color:white}input[type=range]{accent-color:var(--green);cursor:pointer}select{border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);padding:6px 10px;font-size:13px}.skip{position:absolute;top:-80px;left:20px;background:var(--paper);padding:12px;z-index:30}.skip:focus{top:8px}.site-header{max-width:1180px;margin:auto;padding:32px 30px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:25px}.brand{font-weight:600;font-size:19px;letter-spacing:-.5px;text-decoration:none;display:flex;gap:13px;align-items:center}.brand-mark{width:28px;height:28px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:20px;transform:rotate(-16deg)}.site-nav{display:flex;gap:28px;font-size:13px}.site-nav a{text-decoration:none;color:var(--muted)}.site-nav a[aria-current=page],.site-nav a:hover{color:var(--ink)}.site-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}.site-footer{max-width:1120px;margin:100px auto 0;padding:25px 0 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:12px;gap:20px}.site-footer a{text-decoration:none}.eyebrow{font-family:var(--sans);font-size:11px;letter-spacing:1.7px;text-transform:uppercase;color:var(--muted);font-weight:600}.dot{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:9px}h1,h2,h3{line-height:1.13;font-weight:400}h1,h2{font-family:var(--serif)}h1{font-size:clamp(46px,6vw,76px);letter-spacing:-1.8px;margin:18px 0 25px}h2{font-size:39px;letter-spacing:-.6px;margin:0 0 25px}h3{font-size:18px;font-weight:600;line-height:1.4}p{margin:0 0 22px}.home{max-width:1120px;margin:0 auto}.home-intro{padding:83px 0 74px;display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:end}.home-intro h1{max-width:650px;margin-bottom:0}.home-intro .intro-copy{font-size:18px;max-width:390px;color:#63695f;padding-bottom:6px}.text-link{font-size:14px;font-weight:550}.section-rule{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:22px 0;margin-top:18px}.featured{display:grid;grid-template-columns:1.1fr 1fr;gap:54px;align-items:center;margin:18px 0 70px}.feature-scene{position:relative;overflow:hidden;background:#e5e5db;border-radius:6px;aspect-ratio:1.4}.feature-scene video{width:100%;height:100%;object-fit:cover;object-position:center 48%}.scene-tag{position:absolute;left:18px;bottom:18px;background:rgba(250,249,246,.95);font-size:11px;line-height:1.5;padding:7px 12px;border-radius:3px}.scene-pause{position:absolute;right:15px;top:15px;background:rgba(250,249,246,.95)}.feature-copy h2{font-size:48px;margin:14px 0 20px}.feature-copy h2 a{text-decoration:none}.feature-copy p{color:#63695f;font-size:16px;max-width:450px}.feature-number{font-family:var(--serif);font-size:28px;color:var(--green)}.areas{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin:0 0 50px}.areas h3{font-family:var(--serif);font-size:27px;font-weight:400;margin:10px 0}.areas p{font-size:14px;color:var(--muted)}.simple-page{max-width:760px;margin:80px auto 0}.simple-page .lede{font-size:24px;line-height:1.6;color:#61695f}.simple-page h2{margin-top:50px}.post-list{border-top:1px solid var(--line);margin-top:40px}.post-item{padding:30px 0;border-bottom:1px solid var(--line)}.post-item h2{font-size:35px;margin:10px 0}.post-item h2 a{text-decoration:none}.post-item p{font-size:15px;color:var(--muted)}.search-box{width:100%;padding:12px 15px;border:1px solid var(--line);border-radius:4px;background:white;margin:15px 0}.empty-state{display:none;color:var(--muted)}
.post-header{max-width:940px;margin:72px auto 45px;text-align:center}.post-header h1{font-size:clamp(46px,6vw,78px);margin:20px 0}.post-subtitle{max-width:690px;margin:0 auto 24px;font-size:21px;line-height:1.5;color:#656b61;font-weight:400}.post-meta{display:flex;gap:10px;align-items:center;justify-content:center;font-size:12px;color:var(--muted);flex-wrap:wrap}.post-actions{display:flex;gap:12px;justify-content:center;margin-top:25px}.post-actions a{font-size:12px;text-decoration:none;border-bottom:1px solid var(--line)}.post-layout{max-width:1120px;margin:auto;display:grid;grid-template-columns:minmax(0,830px) 180px;gap:70px;align-items:start}.post-body{min-width:0}.post-body>section{margin:65px 0}.post-body>section:first-child{margin-top:25px}.prose{max-width:700px;margin-left:auto;margin-right:auto}.prose p,.prose li{font-size:16px;line-height:1.85}.prose p a{color:var(--green)}.section-no{display:block;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:1.5px;color:var(--muted);text-transform:uppercase;margin-bottom:15px}.prose h2{font-size:39px}.prose .lead{font-size:20px;line-height:1.65}.prose strong{font-weight:600}.prose ul,.prose ol{padding-left:22px}.prose li{margin-bottom:18px}.side-nav{position:sticky;top:40px;padding-top:40px}.side-nav a{display:block;text-decoration:none;font-size:12px;color:var(--muted);padding:6px 0 6px 13px;border-left:1px solid var(--line);line-height:1.4}.side-nav a.active{color:var(--green);border-left:2px solid var(--green);font-weight:600}.side-nav .eyebrow{font-size:9px;margin-bottom:18px}.side-nav .code-link{margin-top:20px;border-left:0;padding-left:13px;color:var(--ink)}.mobile-toc{display:none}.pull-quote{font-family:var(--serif);font-size:31px;line-height:1.3;padding:25px 0 25px 25px;border-left:2px solid var(--green);margin:35px 0;color:#345d4f}.figure{margin:36px 0 45px}.figure-panel{background:#fff;border:1px solid var(--line);border-radius:7px;padding:25px 26px 20px;overflow:hidden}.figure-heading{display:flex;justify-content:space-between;gap:18px;align-items:start;margin-bottom:15px}.figure-title{font-size:17px;font-weight:600;line-height:1.4}.figure-kicker{font-size:11px;color:var(--muted);margin-top:3px}.figure-index{font-family:var(--serif);font-size:24px;color:#969b90;line-height:1}.figure figcaption{max-width:700px;margin:14px auto 0;font-size:12px;line-height:1.7;color:#72776e}.figure figcaption b{color:var(--ink);font-weight:550}.figure figcaption a{color:var(--green)}.chart{width:100%;height:auto;overflow:visible}.chart text{font-family:var(--sans);fill:var(--muted);font-size:13px}.chart .axis-label{fill:var(--ink);font-size:14px}.chart .tick-line{stroke:#ebeee7}.chart .strong-label{font-weight:600;fill:var(--ink)}.chart-controls{display:flex;align-items:center;gap:18px;flex-wrap:wrap;border-top:1px solid #eceee7;margin-top:15px;padding-top:16px;font-size:12px}.chart-controls input{flex:1;min-width:110px}.chart-controls output{min-width:76px;text-align:right;font-variant-numeric:tabular-nums;font-size:13px}.legend{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;line-height:1.5}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:7px;height:7px;display:inline-block;border-radius:50%;flex-shrink:0}.figure-note{font-size:12px;color:var(--muted);margin:15px 0 0;line-height:1.6}.data-link{font-size:10px;text-decoration:none;color:var(--muted);display:inline-block;margin-top:12px}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.video-box{min-width:0}.video-box video{width:100%;aspect-ratio:1;object-fit:contain;background:#e8e9df;border-radius:4px}.video-label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.video-label select{max-width:75%}.video-label .small-label{font-size:10px;color:var(--muted)}.video-detail{font-size:12px;line-height:1.55;margin:11px 0 0;min-height:58px;color:var(--muted)}.video-detail strong{font-weight:600;color:var(--ink)}.video-status{font-size:11px}.success{color:var(--green)}.failure{color:var(--red)}.counts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:25px;padding-top:20px}.count{border-right:1px solid var(--line);text-align:center}.count:last-child{border-right:0}.count strong{display:block;font-family:var(--serif);font-size:33px;line-height:1.2;font-weight:400}.count span{font-size:10px;color:var(--muted)}.condition-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:25px 0}.prompt{background:var(--wash);border-left:2px solid var(--green);padding:18px;font-size:14px;line-height:1.6}.prompt .eyebrow{font-size:9px;display:block;margin-bottom:8px}.method-chain{display:grid;grid-template-columns:1fr 25px 1fr 25px 1fr;align-items:center;gap:8px;margin:25px 0}.method-node{padding:17px 10px;border:1px solid var(--line);border-radius:4px;font-size:12px;line-height:1.5;text-align:center;background:#fff}.method-node span{display:block;color:var(--muted);font-size:10px;margin-top:5px}.arrow{text-align:center;color:var(--green)}.metrics{border-left:2px solid var(--line);padding:5px 0 5px 22px;margin:30px 0}.metrics p{font-size:13px;margin:8px 0}.formula{font-family:Georgia,serif;font-size:17px;letter-spacing:.2px;display:block;margin-bottom:12px}.references{border-top:1px solid var(--line);padding-top:30px}.references li{font-size:13px;line-height:1.6}.related{border-top:1px solid var(--line);padding-top:30px;margin-top:40px}.related a{color:var(--green)}.geometry-legend{gap:7px 16px;margin-top:15px}.tooltip{font-size:12px;color:var(--muted);min-height:23px;margin:8px 0 0}.noscript-img{width:100%}[hidden]{display:none!important}.readout{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.readout h3{font-size:12px;font-weight:550;margin:12px 0}.readout svg{width:100%;height:auto}.badge{font-size:10px;color:var(--green);letter-spacing:.5px}.geometry-caption-extra{font-size:11px;color:var(--muted)}.print-only{display:none}
@media(min-width:1400px){.post-layout{max-width:1240px;grid-template-columns:920px 180px;gap:80px}.post-header{max-width:1060px}.figure-panel{padding:28px 34px 22px}}
@media(max-width:1180px){.home,.site-footer{margin-left:30px;margin-right:30px}.post-layout{margin:0 30px;grid-template-columns:minmax(0,1fr) 155px;gap:35px}.simple-page{padding:0 30px}.home-intro{gap:40px}.post-header{padding:0 30px}}
@media(max-width:850px){.side-nav{display:none}.post-layout{display:block;max-width:800px}.mobile-toc{display:block;margin:0 30px 30px;padding:13px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px}.mobile-toc summary{cursor:pointer}.mobile-toc nav{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:15px}.home-intro{padding-top:55px;grid-template-columns:1fr;gap:25px}.home-intro .intro-copy{max-width:550px}.featured{gap:30px}.feature-copy h2{font-size:39px}.post-header{margin-top:50px}.post-subtitle{font-size:18px}.figure-panel{padding:20px}.areas{gap:25px}}
@media(max-width:580px){body{font-size:16px}.site-header{padding:22px 20px}.brand{font-size:17px;gap:8px}.brand-mark{width:24px;height:24px;font-size:17px}.site-nav{gap:17px;font-size:12px}.site-nav .external{display:none}.home,.site-footer{margin-left:20px;margin-right:20px}.home-intro{padding:48px 0 42px}.home-intro h1{font-size:55px}.featured{grid-template-columns:1fr;gap:25px;margin-bottom:45px}.feature-copy h2{font-size:42px}.areas{grid-template-columns:1fr;gap:10px}.areas p{max-width:350px}.section-rule{font-size:12px}.simple-page{margin-top:50px;padding:0 22px}.simple-page .lede{font-size:21px}.post-header{padding:0 22px;margin:44px 0 30px}.post-header h1{font-size:53px;line-height:1.04}.post-subtitle{font-size:16px}.post-layout{margin:0 20px}.post-body>section{margin:48px 0}.prose h2{font-size:34px}.prose p,.prose li{font-size:15px}.prose .lead{font-size:18px}.figure{margin:30px -6px}.figure-panel{padding:15px 10px}.figure-title{font-size:15px}.figure-kicker{font-size:10px}.figure-index{font-size:21px}.figure figcaption{padding:0 6px;font-size:11px}.figure-heading{margin-bottom:10px}.chart-controls{gap:10px;margin-top:8px;padding-top:12px}.chart-controls button{font-size:11px;padding:7px 10px}.chart-controls output{font-size:11px;min-width:60px}.video-grid{gap:9px}.video-label{display:block}.video-label select{max-width:100%;width:100%;font-size:11px;padding:5px}.video-label .small-label{display:none}.video-detail{font-size:10px;min-height:65px}.count strong{font-size:28px}.count span{font-size:9px}.condition-grid{grid-template-columns:1fr}.readout{grid-template-columns:1fr}.readout svg{max-height:275px}.method-chain{gap:3px;grid-template-columns:1fr 14px 1fr 14px 1fr}.method-node{padding:12px 5px;font-size:11px}.method-node span{font-size:9px}.figure-note{font-size:11px}.site-footer{margin-top:65px;font-size:11px}.post-meta{font-size:11px}.mobile-toc{margin:0 20px 25px}.pull-quote{font-size:27px}.geometry-legend{font-size:10px}.chart text{font-size:16px}.chart .axis-label{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{body{background:white;color:black}.site-header,.side-nav,.mobile-toc,.chart-controls,.site-footer,.post-actions{display:none}.post-layout{display:block;margin:0}.post-header{margin:0}.figure{break-inside:avoid}.video-box video{display:none}.print-only{display:block}.post-body>section{margin:30px 0}.prose{max-width:none}.post-header h1{font-size:40px}}
/* A research blog: narrow text, unboxed plots, quiet captions. */
:root{--paper:#fff;--ink:#303632;--line:#e9ece6;--muted:#777e77}
h1,h2{font-family:var(--sans);font-weight:650;letter-spacing:-.7px}h1{font-size:36px}h2,.prose h2{font-size:29px}
.site-header{max-width:940px;padding:28px 20px}.brand{font-size:24px;font-weight:450}.brand-mark{width:43px;height:43px;font-size:32px;border-color:var(--green);color:var(--green)}.brand-sub{display:block;font-size:13px;font-weight:400;letter-spacing:0;color:var(--muted);line-height:1.6}.site-nav{font-size:15px;gap:24px}.site-footer{max-width:900px}.post-header{max-width:820px;margin:40px auto 35px}.post-header h1{font-size:36px;letter-spacing:-.8px;margin:0 0 12px}.post-subtitle{font-size:18px;margin-bottom:18px}.post-meta{font-size:13px;letter-spacing:.3px}.tags{display:flex;justify-content:center;gap:9px;margin:18px 0}.tags a{font-size:11px;text-decoration:none;background:#e9f2eb;border-radius:14px;padding:1px 12px;color:var(--green)}.post-actions{margin-top:16px}.post-layout{max-width:1120px;grid-template-columns:minmax(0,850px) 150px;gap:50px;padding-left:70px}.prose{max-width:760px}.prose p,.prose li{font-size:16px;line-height:1.8}.prose .lead{font-size:19px}.figure-panel{border:0;border-radius:0;padding:15px 5px}.figure-title{font-size:16px}.figure-index{font-family:var(--sans);font-size:11px}.figure figcaption{max-width:760px;font-size:12px;text-align:center;margin-top:12px}.figure{margin:30px 0}.section-no{display:none}.post-body>section{margin:48px 0}.home{max-width:840px}.home-note{font-size:15px;color:var(--muted);padding:35px 0 10px}.home-post{margin-top:20px}.home-post header{text-align:center}.home-post h1{font-size:32px;margin-bottom:14px;line-height:1.2}.home-post h1 a{text-decoration:none}.home-post>p{font-size:16px}.home-feature-media{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px;align-items:center}.home-video{position:relative}.home-video video{width:100%;aspect-ratio:1;object-fit:contain}.home-plot img{width:100%}.home-caption{font-size:12px!important;text-align:center;color:var(--muted);margin-top:12px}.read-more{color:var(--green);font-size:15px}.simple-page{max-width:800px;margin-top:50px}.simple-page h1{font-size:34px}.simple-page .lede{font-size:20px}.simple-page h2{font-size:26px}.four-videos{gap:24px}.four-videos .figure{margin:5px 0 12px}.video-label{font-size:13px}.video-label strong{font-weight:550}.video-label span{font-size:11px}.rollout-lab{margin:30px 0}.rollout-lab>.figure-heading{padding-bottom:8px}.four-videos figcaption{text-align:left;font-size:11px}.video-box video{border-radius:2px}.figure-note{font-size:11px}.appendix-details>summary{font-size:14px;cursor:pointer;color:var(--green);padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}code{font-size:12px;overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.geometry-controls{border:0;margin-top:0;padding-top:0}.legend button{border:0;padding:2px 0;font-size:11px;background:transparent;display:flex;align-items:center;gap:6px}.legend button.dim{opacity:.35}
@media(min-width:1400px){.post-layout{max-width:1180px;grid-template-columns:900px 150px;gap:50px;padding-left:40px}}
@media(max-width:1100px){.post-layout{display:block;max-width:850px;padding:0;margin:0 auto}.side-nav{display:none}.mobile-toc{display:block;max-width:820px;margin:0 auto 30px}.mobile-toc nav{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:14px}.home{margin:0 auto;padding:0 25px}.post-header{padding:0 25px}.post-body{padding:0 25px}.site-footer{margin-left:25px;margin-right:25px}}
@media(max-width:580px){.brand{font-size:19px}.brand-mark{width:40px;height:40px;font-size:24px}.brand-sub{font-size:10px}.site-nav{font-size:12px;gap:14px}.site-header{padding:20px 18px}.post-header h1{font-size:30px;line-height:1.15}.post-subtitle{font-size:15px}.post-body{padding:0 19px}.post-meta{font-size:12px}.mobile-toc{margin:0 19px 25px}.figure-panel{padding:10px 0}.figure-title{font-size:14px}.figure-kicker{font-size:10px}.four-videos{gap:13px}.four-videos figcaption{font-size:10px;line-height:1.65}.video-label{display:flex;font-size:11px;gap:4px}.video-label span{font-size:9px}.chart-controls label[for=video-speed]{display:none}.chart-controls select{font-size:11px}.prose h2{font-size:25px}.figure figcaption{font-size:11px}.home-post h1{font-size:28px}.home-feature-media{grid-template-columns:1fr}.home-plot{display:none}.home-note{font-size:14px}.simple-page{padding:0 22px}.post-list h2{font-size:27px}.figure-index{font-size:10px}}
/* The opening is footage-first; explanations live outside the frame. */
.opening-film video{display:block;width:min(100%,620px);aspect-ratio:1;margin:auto;background:#eee}
.code-callout{max-width:760px;margin:24px auto 48px;padding:14px 20px;border-left:4px solid #d6dfd8;background:#f5f7f5;font-size:17px}
.code-callout a{color:#267453}
.opening-film video{width:min(100%,480px);max-width:480px}
.four-videos{max-width:640px;margin-left:auto;margin-right:auto;grid-template-columns:repeat(2,minmax(0,300px))!important;justify-content:center}
.four-videos video{max-width:300px;width:100%;cursor:pointer}
.readout{grid-template-columns:1fr 1fr!important;gap:20px}
.readout svg{width:100%;height:auto}
.readout h3,.figure .legend{font-size:14px!important}
@media(max-width:600px){.readout{grid-template-columns:1fr!important}.four-videos{grid-template-columns:minmax(0,300px)!important}}
/* Center the reading column independently of the contents rail. */
@media(min-width:1101px){.post-layout{display:grid;max-width:1180px;grid-template-columns:150px minmax(0,800px) 150px;gap:40px;padding:0;margin:0 auto}.post-body{grid-column:2;grid-row:1}.side-nav{grid-column:3;grid-row:1;padding-top:12px}}
.post-header{margin-bottom:24px}
.opening-film{margin:12px 0 32px}
.post-body>section{margin:36px 0}
.context-diagram img{display:block;width:100%;height:auto}
.context-diagram a{display:block;border:0}
@media(max-width:1300px) and (min-width:1101px){.post-layout{grid-template-columns:110px minmax(0,760px) 110px;gap:24px;max-width:1050px}.side-nav a{font-size:11px}}
.home-feature-media{grid-template-columns:300px minmax(0,1fr);gap:28px;align-items:center}
.home-video{width:300px;max-width:100%;justify-self:center}
.home-video video{display:block;width:100%;max-width:300px;cursor:pointer}
.home-plot{display:block;min-width:0}
.home-plot svg{display:block;width:100%;height:auto}
@media(max-width:700px){.home-feature-media{grid-template-columns:minmax(0,1fr);gap:24px}.home-plot{display:block;width:100%;max-width:500px;justify-self:center}}
.home-feature-media{max-width:758px;margin:24px auto 0;grid-template-columns:300px minmax(0,430px);gap:28px;align-items:center}
.home-plot{max-width:430px}
.home-post{margin-top:12px}
.home-post header{margin-bottom:18px}
.home-caption{max-width:730px;margin:14px auto 24px;line-height:1.6}
@media(max-width:700px){.home-feature-media{grid-template-columns:minmax(0,1fr);gap:16px}.home-plot{max-width:430px}}
/* Article layout: one column, one set of margins at every desktop width. */
.post-layout{display:block;max-width:800px;width:100%;padding:0;margin:0 auto}
.post-body{padding:0 20px}
.side-nav{display:none}
.post-header{max-width:800px;padding:0 20px;margin:28px auto 18px}
.post-header .post-subtitle{margin-bottom:12px}
.post-header .tags{margin:12px 0}
.post-header .post-actions{margin-top:10px}
.mobile-toc{display:block;max-width:760px;margin:0 auto 20px;padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px}
.mobile-toc nav{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px}
.opening-film{margin:0 0 24px}
.post-body>section{margin:32px 0}
.post-body .prose h2{font-size:27px;line-height:1.25;margin:0 0 18px}
.post-body .prose p{margin:0 0 18px}
@media(max-width:800px){.mobile-toc{margin:0 20px 20px}.post-header h1{font-size:30px}.post-body .prose h2{font-size:25px}}
.site-header{max-width:1140px;padding-top:18px;padding-bottom:18px}
.post-header{max-width:1100px;margin:20px auto 12px}
.post-header .post-meta{gap:8px}
.post-header .tags{margin:8px 0}
.post-layout{max-width:1140px}
.post-body .prose{max-width:100%;margin-left:0;margin-right:0}
.mobile-toc{max-width:1100px;margin-bottom:16px;padding:7px 0}
.article-intro{display:grid;grid-template-columns:300px minmax(0,1fr);gap:36px;align-items:start;margin:20px 0 28px}
.article-intro .opening-film,.article-intro #question{margin:0}
.post-body .figure{max-width:100%;margin-top:24px;margin-bottom:24px}
.post-body .prose p{line-height:1.7}
@media(max-width:800px){.article-intro{grid-template-columns:1fr;gap:20px}.article-intro .opening-film{justify-self:center}.mobile-toc{margin-left:20px;margin-right:20px}}
/* Use the available desktop width rather than a narrow centered page. */
@media(min-width:801px){
 .site-header,.post-layout,.post-header,.home,.site-footer{max-width:none;width:calc(100% - 64px);margin-left:auto;margin-right:auto}
 .site-header,.post-header,.post-body{padding-left:0;padding-right:0}
 .mobile-toc{max-width:none;width:calc(100% - 64px);margin-left:auto;margin-right:auto}
 .post-body .prose,.post-body .figure figcaption{max-width:none}
 .home-note,.home-post>p{max-width:none}
}
/* Balanced desktop scale: wider canvas, bounded text and figures. */
@media(min-width:801px){
 .site-header,.post-layout,.post-header,.home,.site-footer{width:calc(100% - 96px);max-width:1280px}
 .mobile-toc{width:calc(100% - 96px);max-width:1280px}
 .post-body .prose{max-width:960px;margin-left:auto;margin-right:auto}
 .article-intro{max-width:1140px;margin:20px auto 28px;grid-template-columns:300px minmax(0,1fr);gap:32px}
 .article-intro .prose{max-width:none}
 .post-body .figure:not(.video-box):not(.opening-film){max-width:960px;margin-left:auto;margin-right:auto}
 .post-body .figure figcaption{max-width:900px;margin-left:auto;margin-right:auto}
 .home-note,.home-post>p{max-width:960px;margin-left:auto;margin-right:auto}
}
/* Restore the original stacked opening without changing later sections. */
.article-intro{display:block;max-width:960px;margin:20px auto 28px}
.article-intro .opening-film{margin:0 auto 28px}
.article-intro .opening-film video{display:block;margin:0 auto}
.article-intro #question{margin:0}
.article-intro .prose{max-width:960px;margin-left:auto;margin-right:auto}
/* Keep the article centered, with the original sticky contents rail on its right. */
@media(min-width:1101px){
 .post-layout{display:grid;grid-template-columns:140px minmax(0,960px) 140px;gap:20px;align-items:start}
 .post-body{grid-column:2;grid-row:1;min-width:0}
 .side-nav{display:block;grid-column:3;grid-row:1;position:sticky;top:28px;align-self:start;padding-top:20px}
.mobile-toc{display:none}
}
.social-links{display:inline-flex;gap:14px;align-items:center;flex-wrap:wrap}.social-links a{color:inherit;text-decoration:none;display:inline-flex}.social-links a:hover,.social-links a:focus-visible{opacity:.65}.social-links img{width:19px;height:19px;display:block}.brand-mark{width:52px;height:52px;border:0;border-radius:0;transform:none}.brand-mark img{width:100%;height:100%;object-fit:cover;border-radius:0;display:block}
.about-photo{width:min(100%,350px);height:auto;margin:0 0 32px;border-radius:4px}
