/* Reading layout, isolated from the blog listing and commercial pages. */
.reader-hero{background:#000;border-bottom:1px solid var(--line);padding:28px 0 40px}
.reader-breadcrumbs{display:flex;align-items:center;gap:12px;font-size:11px;color:#b6bead;margin-bottom:27px}
.reader-breadcrumbs a{text-decoration:none;color:#d8c4a9!important}.reader-breadcrumbs>span:last-child{color:#adb8a4}
.reader-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:60px;align-items:center}
.single-post .post-header{text-align:left;padding:0;min-width:0}
.single-post .post-meta{display:flex;align-items:center;gap:14px;margin-bottom:18px;font-size:11px;color:#b8c1ae}
.single-post .post-category{color:var(--accent);font-size:10px;letter-spacing:.08em;text-transform:uppercase;border:1px solid #715c40;border-radius:4px;padding:5px 8px}
.single-post .post-header h1{font-size:clamp(33px,3.65vw,49px);line-height:1.12;letter-spacing:-.04em;margin:0 0 22px;max-width:28ch;text-wrap:balance}
.single-post .post-excerpt{font-size:16px;line-height:1.75;max-width:65ch;margin:0;color:#bec8b5}
.single-post .reader-byline{font-size:11px;margin:20px 0 0;color:#aebba1}
.reader-byline strong{color:#e7d9c7}
.single-post .post-cover{margin:0;aspect-ratio:16/10;background:#151b14;border:1px solid #454d3b;border-radius:7px;overflow:hidden;display:grid;place-items:center}
.single-post .post-cover img{display:block;width:100%;height:100%;object-fit:contain}
.single-post .post-cover[data-image-kind=photo] img{object-fit:cover}
.reader-layout{display:grid;grid-template-columns:230px minmax(0,760px);gap:78px;justify-content:space-between;align-items:start;padding-block:50px 60px}
.reader-sidebar{position:sticky;top:100px;min-width:0}
.single-post .reader-toc-panel{border:1px solid #424b38;border-radius:6px;padding:17px;background:#181e15;margin:0}
.single-post .reader-toc-panel>summary{font:500 14px/1.5 var(--font-display);color:#ecebdf;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px}
.reader-toc-panel>summary::-webkit-details-marker{display:none}
.reader-toc-panel>summary>span{font:400 9px var(--font-body);color:#afbaa4;white-space:nowrap}
.reader-toc{margin-top:18px;max-height:calc(100dvh - 250px);overflow:auto;scrollbar-width:thin;scrollbar-color:#59664c transparent}
.reader-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:3px}
.reader-toc a{display:block;font-size:11px;line-height:1.65;padding:7px 8px 7px 12px;border-left:2px solid #38452e;color:#b9c7ad!important;text-decoration:none}
.reader-toc a:hover,.reader-toc a[aria-current=location]{color:#f0d2aa!important;border-color:var(--accent);background:#30291e}
.reader-back{display:inline-block;margin-top:20px;font-size:11px;color:#d1b18b!important;text-decoration:none;padding-block:7px}
.reader-column{min-width:0}
.single-post .post-content{max-width:72ch;font-size:17px;line-height:1.85;color:#ced5c7}
.single-post .post-content p{font-size:17px;line-height:1.85;color:#c7d0bf;margin:0 0 22px;max-width:none;overflow-wrap:break-word}
.single-post .post-content .lead{font-size:18px;line-height:1.8;color:#e4e8dc;border-left:3px solid var(--accent);padding:4px 0 4px 22px;margin-bottom:40px}
.single-post .post-content section{margin-block:38px}
.single-post .post-content h2{font-size:clamp(25px,2.4vw,32px);line-height:1.22;letter-spacing:-.03em;color:#f0f2e7;margin:42px 0 22px;scroll-margin-top:16px;text-wrap:pretty}
.single-post .post-content h3{font-size:22px;line-height:1.3;margin:30px 0 16px;letter-spacing:-.02em;color:#e9eddf}
.single-post .post-content h4{font:500 18px/1.4 var(--font-display);color:#e9eddf;margin:25px 0 14px}
.single-post .post-content strong{font-weight:600;color:#eff1e8}
.single-post .post-content ul,.single-post .post-content ol{padding-left:24px;margin:0 0 25px;color:#c7d0bf;font-size:16px;line-height:1.85}
.single-post .post-content li{padding-left:5px;margin-bottom:10px;overflow-wrap:break-word}
.single-post .post-content li::marker{color:var(--accent)}
.single-post .post-content a{color:#edc18b!important;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;overflow-wrap:anywhere}
.single-post .post-content hr{border:0;border-top:1px solid var(--line);margin:35px 0}
.single-post .post-content blockquote{border-left:3px solid var(--accent);padding:20px 25px;margin:30px 0;background:#22271d;border-radius:0 5px 5px 0;color:#d8dfd0}
.single-post .post-content blockquote p:last-child{margin-bottom:0}
.single-post .post-content code{font:13px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;color:#e7c18e;padding:2px 5px;border:1px solid #4a513e;border-radius:4px;background:#20251c;overflow-wrap:anywhere}
.reader-code-frame{border:1px solid #445044;border-radius:6px;overflow:hidden;background:#131b19;margin:25px 0}
.reader-code-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#252f28;padding:10px 15px;color:#c7d5c1;font-size:10px;min-height:43px}
.reader-copy{background:transparent;border:1px solid #728462;border-radius:4px;padding:6px 9px;min-height:30px;cursor:pointer;color:#e2edd9;font:400 10px var(--font-body)}
.single-post .post-content pre{max-width:100%;overflow:auto;white-space:pre;margin:0;padding:20px;scrollbar-width:thin;border:0;background:#131b19;color:#d4e4d0}
.single-post .post-content pre code{font-size:13px;line-height:1.8;display:block;padding:0;border:0;background:none;color:#d4e4d0;white-space:pre;overflow-wrap:normal}
.single-post .post-content .table-wrap{width:100%;overflow:auto;border:1px solid #4b5540;border-radius:6px;margin:26px 0;scrollbar-width:thin;scrollbar-color:#6b765b transparent}
.single-post .post-content table{width:100%;min-width:590px;border-collapse:collapse;table-layout:auto;font-size:13px;line-height:1.65;background:#171d14}
.single-post .post-content th,.single-post .post-content td{padding:13px 15px;border-bottom:1px solid #3d4833;text-align:left;vertical-align:top;color:#cbd6c1}
.single-post .post-content th{color:#f1e4cf;background:#2f3527;font-weight:600}
.single-post .post-content tbody tr:nth-child(even){background:#1c2417}
.single-post .post-content tr:last-child td{border-bottom:0}
.single-post .post-content .takeaway{padding:25px 28px;background:#252d1e;border:1px solid #66714f;border-left:3px solid var(--accent);border-radius:6px;margin-block:38px}
.single-post .post-content .takeaway h2{margin:0 0 20px;font-size:25px;color:#f2d3a9}
.single-post .post-content .takeaway ul{margin-bottom:0}
.single-post .faq-list{margin:25px 0 35px}
.single-post .post-content .faq-item{background:#1b2317;border:1px solid #4a563e;border-radius:5px;padding:0;margin-bottom:12px}
.single-post .post-content .faq-item summary{padding:18px 20px;font:500 16px/1.5 var(--font-display);color:#e8ebde;cursor:pointer;list-style:revert}
.single-post .post-content .faq-answer{padding:0 20px 20px;font-size:15px;line-height:1.8;color:#c6d0be}
.single-post .post-content .post-cta{border:1px solid #795e3d;background:#292218;border-radius:7px;padding:25px;margin-top:35px}
.single-post .post-content .post-cta p{font-size:15px;line-height:1.8;color:#dacbb8}
.single-post .post-content .cta-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--accent);border-radius:4px;background:var(--accent);color:#17190f!important;text-decoration:none;padding:9px 17px;font-size:13px;font-weight:600;margin:5px 8px 0 0}
.single-post .article-footer{display:flex;flex-direction:column;align-items:flex-start;gap:24px;border-top:1px solid var(--line);padding:30px 0 0;margin-top:42px}
.single-post .article-footer>.back{display:flex;gap:10px;align-items:center;color:var(--accent)!important;font-size:13px;text-decoration:none}
.single-post .article-footer>.back svg{width:16px;height:16px}
.single-post .author-card{display:flex;align-items:center;gap:17px;width:100%;padding:22px;border:1px solid #424b37;background:#1b2216;border-radius:6px}
.single-post .author-card__avatar{width:54px;height:54px;object-fit:cover;border-radius:50%;border:1px solid #687354}
.single-post .author-card h3{font-size:20px;margin:0 0 6px}
.single-post .author-card p{font-size:12px;line-height:1.7;color:#b5c1a9;margin:0}
.reader-copy-status{position:fixed!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.single-post pre:focus-visible,.single-post .table-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.reader-progress{display:none}
@supports(animation-timeline:scroll()){.reader-progress{display:block;position:fixed;top:76px;left:0;width:100%;height:2px;background:var(--accent);transform-origin:left;z-index:21;pointer-events:none;animation:reader-progress linear both;animation-timeline:scroll(root)}@keyframes reader-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}}
@media(max-width:1100px){.reader-hero-grid{grid-template-columns:minmax(0,1fr) 260px;gap:35px}.reader-layout{grid-template-columns:205px minmax(0,1fr);gap:40px}.single-post .post-header h1{font-size:38px}}
@media(max-width:980px){.reader-layout{display:flex;flex-direction:column;gap:30px;padding-top:30px}.reader-sidebar{position:static;width:100%}.reader-column{width:100%}.single-post .post-content{max-width:none}.reader-toc{max-height:330px}.reader-back{display:none}.single-post .reader-toc-panel{padding:16px}.reader-toc-panel>summary:after{content:'+';font-size:20px;color:var(--accent)}.reader-toc-panel[open]>summary:after{content:'−'}.reader-toc-panel>summary>span{margin-left:auto}.reader-hero-grid{grid-template-columns:minmax(0,1fr) 220px}.single-post .post-header h1{font-size:34px}.single-post .post-excerpt{font-size:15px}}
@media(max-width:650px){.reader-hero{padding:22px 0 27px}.reader-breadcrumbs{font-size:10px;gap:9px;margin-bottom:24px}.reader-hero-grid{grid-template-columns:1fr;gap:25px}.single-post .post-header h1{font-size:clamp(29px,7.8vw,38px);max-width:28ch;line-height:1.15;text-wrap:pretty}.single-post .post-excerpt{font-size:15px;line-height:1.75}.single-post .post-cover{width:100%;max-width:430px;aspect-ratio:16/8.8}.single-post .post-content p{font-size:16px;line-height:1.85}.single-post .post-content .lead{font-size:17px;padding-left:16px}.single-post .post-content h2{font-size:26px}.single-post .post-content h3{font-size:21px}.single-post .post-content ul,.single-post .post-content ol{font-size:15px;padding-left:21px}.single-post .post-content .takeaway{padding:21px}.single-post .post-content .post-cta{padding:21px}.single-post .author-card{padding:18px;gap:13px}.single-post .author-card h3{font-size:18px}}
@media(max-width:800px){.reader-progress{top:68px}}
@media(prefers-reduced-motion:reduce){.reader-progress{display:none}.single-post *{scroll-behavior:auto!important;transition:none!important}}
