.blog-post-page{--theme-accent:#ffdf43;--theme-bg:#f7f7f2;--theme-ink:#181818;--theme-muted:#696b61;--theme-line:#cecec5;--theme-soft:#edede7;--container:1280px;background:var(--theme-bg);color:var(--theme-ink)}
.blog-post-page .site-header{z-index:80}
.article-hero{width:min(var(--container),calc(100% - 80px));margin:0 auto;min-height:590px;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(440px,.84fr);align-items:stretch;background:var(--theme-ink);color:#f7f7f2}
.article-hero .hero-copy{display:flex;flex-direction:column;justify-content:center;max-width:none;padding:62px 54px;color:inherit;font-size:inherit;line-height:inherit}
.article-hero h1{max-width:none;font-size:clamp(42px,3.4vw,54px);line-height:.98;letter-spacing:-.035em}
.article-hero h1 span{display:block;white-space:nowrap}
.hero-author{display:flex;align-items:center;gap:13px;margin-top:38px}
.hero-author img{width:48px;height:48px;border-radius:50%;object-fit:cover;object-position:center 25%;filter:grayscale(1)}
.hero-author p{display:flex;flex-direction:column;margin:0;line-height:1.35}
.hero-author span{font-size:10px;letter-spacing:.08em;color:#bdbdb5}
.hero-author strong{font-size:14px}
.hero-figure{height:100%;margin:0;overflow:hidden}
.hero-figure img{width:100%;height:100%;object-fit:cover;object-position:62% center}
.reading-progress{height:3px;position:sticky;top:96px;z-index:29;background:transparent}
.reading-progress span{display:block;width:0;height:100%;background:var(--theme-accent)}
.article-shell{width:min(var(--container),calc(100% - 80px));margin:0 auto;display:grid;grid-template-columns:240px minmax(0,1fr);gap:80px;padding:95px 0 120px;align-items:start}
.toc{position:sticky;top:142px;border-top:3px solid var(--theme-ink);padding-top:20px}
.toc>p{font-size:10px;letter-spacing:.15em;font-weight:700;margin-bottom:20px}
.toc ol{max-height:calc(100vh - 235px);overflow:auto;padding:0 8px 0 0;list-style:none;margin:0}
.toc li{border-top:1px solid var(--theme-line)}
.toc a{display:block;padding:9px 0;font-size:13px;line-height:1.45;color:var(--theme-muted)}
.toc a:hover{color:var(--theme-ink)}
.article-body{min-width:0}
.article-body>.lead{font-size:25px;line-height:1.6;color:var(--theme-ink);padding-bottom:52px;border-bottom:1px solid var(--theme-line)}
.article-body>.lead:first-letter{float:left;font:600 82px/.8 var(--display);padding:9px 12px 0 0;color:var(--theme-ink)}
.article-body section{padding-top:74px;position:relative}
.article-body h2{font-size:clamp(39px,4.3vw,58px);letter-spacing:-.025em;margin-bottom:28px}
.article-body h3{font-size:27px;margin:42px 0 14px}
.article-body p{color:var(--theme-muted);margin:0 0 22px}
.article-body section>p,.article-body section>h3{max-width:700px}
.article-body ul:not(.check-list){margin:4px 0 28px;padding-left:24px;color:var(--theme-muted)}
.article-body li{margin:7px 0}
.article-body a{text-decoration:underline;text-underline-offset:4px}
.article-body code{font:600 .9em var(--body);background:var(--theme-soft);padding:2px 5px}
.article-intro{padding:40px 0 4px;border-bottom:1px solid var(--theme-line)}
.insight-box{border-left:4px solid var(--theme-accent);background:var(--theme-soft);padding:26px 30px;margin:36px 0}
.insight-box span{display:block;font-size:10px;letter-spacing:.14em;font-weight:800;margin-bottom:8px}
.insight-box p{margin:0;color:var(--theme-ink);font-size:16px}
.article-image{margin:70px 0 10px}
.article-image img{width:100%;aspect-ratio:16/9;object-fit:cover}
.article-image figcaption{font-size:11px;color:var(--theme-muted);margin-top:12px}
blockquote{margin:75px 0;padding:50px 70px;background:var(--theme-accent);color:#181818;position:relative}
blockquote:before{content:'“';position:absolute;left:22px;top:7px;font:400 90px/1 Georgia,serif;opacity:.25}
blockquote p{font:500 35px/1.38 var(--display)!important;color:#181818!important;max-width:800px!important}
.check-list{list-style:none;padding-left:0!important}
.check-list li{position:relative;padding:12px 0 12px 38px;border-top:1px solid var(--theme-line)}
.check-list li:before{content:'✓';position:absolute;left:0;top:12px;width:23px;height:23px;display:grid;place-items:center;background:var(--theme-accent);color:var(--theme-ink);font-weight:800}
.article-faq{margin-top:74px;padding-top:86px;border-top:1px solid var(--theme-line)}
.article-faq .faq-label{margin:0 0 18px;font-size:10px;font-weight:800;letter-spacing:.15em;color:var(--theme-ink)}
.article-faq>h2{max-width:760px}
.article-faq .faq-intro{max-width:650px;margin:0 0 36px}
.article-faq .faq-list{border-top:1px solid var(--theme-line)}
.article-faq .faq-list details{border-bottom:1px solid var(--theme-line)}
.article-faq .faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;cursor:pointer;list-style:none}
.article-faq .faq-list summary::-webkit-details-marker{display:none}
.article-faq .faq-list summary h3{max-width:none;margin:0;padding:0;border:0;font:500 22px/1.4 var(--display)}
.article-faq .faq-list summary>span{width:28px;height:28px;display:grid;place-items:center;flex:0 0 28px;transition:transform .2s ease}
.article-faq .faq-list summary svg{width:22px;height:22px}
.article-faq .faq-list details[open] summary>span{transform:rotate(45deg)}
.article-faq .faq-answer{padding:0 48px 25px 0}
.article-faq .faq-answer p{max-width:650px;margin:0 0 12px;font-size:16px;line-height:1.85;color:var(--theme-muted)}
.article-cta{margin-top:85px;background:#181818;color:#f7f7f2;padding:55px}
.article-cta>span{font-size:10px;letter-spacing:.16em;color:var(--theme-accent)}
.article-cta h2{font-size:54px;margin:20px 0}
.article-cta p{color:#b9b9b1;max-width:560px}
.article-cta .nav-cta{display:inline-flex;margin-top:15px;text-decoration:none}
.author-box{width:min(var(--container),calc(100% - 80px));margin:0 auto 120px;background:var(--theme-soft);display:grid;grid-template-columns:260px 1fr 160px;align-items:center;gap:45px;padding:34px}
.author-photo img{width:260px;height:265px;object-fit:cover;object-position:center 25%;filter:grayscale(1)}
.author-copy>span{font-size:10px;letter-spacing:.15em;color:var(--theme-muted)}
.author-copy h2{font-size:41px;margin:10px 0 15px}
.author-copy p{font-size:15px;color:var(--theme-muted)}
.author-copy a{display:inline-block;margin-top:18px;font-size:14px;text-decoration:underline;text-underline-offset:5px}
.author-stat{border-left:1px solid var(--theme-line);padding-left:30px}
.author-stat strong{display:block;font:500 55px var(--display)}
.author-stat span{display:block;font-size:11px;color:var(--theme-muted);line-height:1.4}
@media(max-width:1150px){
  .reading-progress{top:86px}
  .article-hero{grid-template-columns:.9fr 1.1fr}
  .article-hero .hero-copy{padding:58px 42px}
  .article-shell{grid-template-columns:200px minmax(0,1fr);gap:45px}
  .author-box{grid-template-columns:220px 1fr}.author-photo img{width:220px;height:230px}.author-stat{display:none}
}
@media(max-width:760px){
  .reading-progress{top:76px}
  .article-hero{width:calc(100% - 40px);grid-template-columns:1fr;gap:34px;min-height:0;padding:48px 0 58px;background:var(--theme-bg);color:var(--theme-ink);border-bottom:1px solid var(--theme-line)}
  .article-hero .hero-copy{display:block;padding:0}
  .article-hero h1{font-size:40px;line-height:1}
  .article-hero h1 span{display:inline;white-space:normal}.article-hero h1 span+span:before{content:' '}
  .hero-author span{color:var(--theme-muted)}
  .hero-figure{height:auto}.hero-figure img{height:auto;aspect-ratio:16/10;object-position:62% center}
  .article-shell{width:calc(100% - 40px);grid-template-columns:1fr;gap:35px;padding:55px 0 75px}
  .toc{position:static;top:auto}.toc ol{max-height:none;overflow:visible;padding-right:0}
  .article-body>.lead{font-size:21px;padding-bottom:38px}.article-body section{padding-top:55px}.article-body h2{font-size:40px}.article-body h3{font-size:25px}
  blockquote{margin:55px 0;padding:35px 28px}blockquote p{font-size:30px!important}
  .article-faq{margin-top:55px;padding-top:55px}.article-faq .faq-list summary{padding:20px 0}.article-faq .faq-list summary h3{font-size:21px;line-height:1.35}.article-faq .faq-answer{padding-right:15px}
  .article-cta{padding:35px 25px}.article-cta h2{font-size:42px}
  .author-box{width:calc(100% - 40px);grid-template-columns:1fr;margin-bottom:70px;padding:24px}.author-photo img{width:100%;height:320px}.author-copy h2{font-size:37px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
