/* Editorial components are scoped to article pages; the blog listing stays unchanged. */
.blog-article{--article-line:#e3e0e0;--article-soft:#fafafa}
.blog-article .blog-article-hero{padding:142px 32px 64px}
.blog-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:48px;align-items:center}
.blog-hero-grid:not(:has(.blog-hero-illustration)){grid-template-columns:minmax(0,1fr);max-width:900px}
.blog-hero-copy{min-width:0}
.blog-article .blog-article-hero h1{font-size:clamp(44px,4.6vw,66px);line-height:1.06;margin:18px 0 24px}
.blog-hero-perex{font-size:17px;line-height:1.75;color:var(--light);margin-bottom:28px}
.blog-hero-perex p{margin:0}
.blog-hero-perex em{font-style:normal}
.blog-article .blog-hero .blog-back{margin-bottom:28px}
.blog-hero-illustration{margin:0;overflow:hidden;border-radius:8px}
.blog-hero-illustration img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
.blog-article-layout{display:grid;grid-template-columns:240px minmax(0,780px);justify-content:center;gap:56px;max-width:1188px;margin:0 auto;padding:56px 24px 80px}
.blog-article-column{min-width:0}
.blog-contents{align-self:start;position:sticky;top:28px;max-height:calc(100dvh - 56px);overflow-y:auto;scrollbar-width:thin}
.blog-article .blog-toc{padding:18px 0;border:0;border-radius:0;border-top:1px solid var(--article-line);background:none;margin:0;font-size:13px;line-height:1.6}
.blog-article .blog-toc summary{font-size:15px;padding:0 0 14px}
.blog-article .blog-toc ol{padding:0;margin:8px 0 0}
.blog-article .blog-toc li+li{margin-top:8px}
.blog-article .blog-toc a{display:block;padding:7px 12px;border-left:2px solid transparent;transition:color 200ms ease,background-color 200ms ease,border-color 200ms ease}
.blog-article .blog-toc a[aria-current]{color:var(--red);border-color:var(--red);background:var(--article-soft)}
.blog-article .blog-prose{font-size:18px;line-height:1.75}
.blog-article .blog-prose p{margin-bottom:26px}
.blog-chapter{position:relative;padding-top:34px;margin-top:48px;border-top:1px solid var(--article-line)}
.blog-chapter:first-child{margin-top:0;padding-top:0;border:0}
.blog-chapter[data-number]::before{content:attr(data-number);display:block;color:var(--red);font-family:var(--head);font-size:26px;line-height:1;letter-spacing:.08em;margin-bottom:16px}
.blog-article .blog-chapter h2{font-size:clamp(31px,3vw,40px);line-height:1.15;margin:0 0 24px;scroll-margin-top:32px;outline-offset:6px}
.blog-article .blog-chapter h3{font-size:30px;line-height:1.15;text-transform:none}
.blog-article .blog-pullquote{margin:36px 0;padding:28px 32px;border:1px solid var(--article-line);border-left:3px solid var(--red);border-radius:0 8px 8px 0;background:var(--article-soft)}
.blog-article .blog-pullquote p{font-family:var(--head);font-size:clamp(28px,2.7vw,36px);line-height:1.25;color:var(--dark);margin:0;text-transform:none}
.blog-article .blog-pullquote strong{font-weight:500}
.blog-comparison{margin:36px 0 0}
.blog-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.blog-comparison-card{border:1px solid var(--article-line);border-radius:8px;padding:24px;background:var(--article-soft)}
.blog-comparison-card svg{width:28px;height:28px;stroke:var(--red);stroke-width:1.5;fill:none;stroke-linejoin:round;stroke-linecap:round;margin-bottom:18px}
.blog-article .blog-comparison-card h3{font-size:28px;margin:0 0 18px}
.blog-article .blog-comparison-card ul{margin:0;padding-left:18px;font-size:15px;line-height:1.65}
.blog-article .blog-comparison-card li{margin-bottom:10px;padding:0}
.blog-article .blog-comparison-card li:last-child{margin-bottom:0}
.blog-article .blog-comparison>p{font-size:17px;font-weight:500;text-align:center;color:var(--dark);margin:24px 0 0}
.blog-checklist{margin:28px 0;padding:32px;border:1px solid var(--article-line);border-radius:8px;background:var(--article-soft)}
.blog-checklist h3{margin-bottom:22px}
.blog-checklist-progress{margin-bottom:20px}
.blog-article .blog-checklist-progress p{margin:0 0 10px;font-size:14px;color:var(--red)}
.blog-checklist progress{display:block;width:100%;height:5px;border:0;border-radius:3px;overflow:hidden;accent-color:var(--red);background:#e9e5e5}
.blog-checklist progress::-webkit-progress-bar{background:#e9e5e5}
.blog-checklist progress::-webkit-progress-value{background:var(--red);transition:width 200ms ease}
.blog-checklist progress::-moz-progress-bar{background:var(--red)}
.blog-article .blog-checklist ul{list-style:none;padding:0;margin:0 0 24px}
.blog-article .blog-checklist li{padding:0;margin:0;border-top:1px solid var(--article-line)}
.blog-checklist label{display:flex;gap:14px;align-items:flex-start;padding:16px 0;cursor:pointer;font-size:16px;line-height:1.65}
.blog-checklist input{width:19px;height:19px;flex:0 0 19px;margin:4px 0 0;accent-color:var(--red);cursor:pointer}
.blog-checklist input:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.blog-checklist input:checked+span{color:var(--dark)}
.blog-article .blog-checklist-note{font-size:13px;line-height:1.7;margin:20px 0 0;color:var(--text)}
.blog-tool{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #b8b0b0;border-radius:6px;background:var(--white);color:var(--dark);font:400 14px/1.6 var(--body);cursor:pointer;transition:background-color 200ms ease,border-color 200ms ease}
.blog-tool:disabled{cursor:default;color:var(--text)}
.blog-tool:hover:not(:disabled){border-color:var(--red);background:var(--article-soft);color:var(--red)}
.blog-author{display:grid;grid-template-columns:112px minmax(0,1fr);gap:28px;align-items:center;margin-top:48px;padding:32px 0;border-top:1px solid var(--article-line);border-bottom:1px solid var(--article-line)}
.blog-author img{width:112px;height:140px;object-fit:cover;object-position:center 20%;border-radius:8px}
.blog-author-label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin:0 0 12px;color:var(--text)}
.blog-author h2{font-size:34px;text-transform:none;margin:0 0 12px}
.blog-author p:not(.blog-author-label){font-size:15px;line-height:1.75;margin:0 0 12px}
.blog-author a{font-size:14px}
.blog-article-cta{padding:36px;margin-top:36px;border:1px solid var(--article-line);border-radius:8px;background:var(--article-soft)}
.blog-article-cta h2{font-size:36px;line-height:1.1;text-transform:none;margin-bottom:18px}
.blog-article-cta p{font-size:16px;line-height:1.75;margin:0 0 24px}
.blog-cta-links{display:flex;flex-wrap:wrap;gap:14px}
.blog-cta-links .hero-cta{font-size:23px;padding:12px 20px;border-radius:4px}
.blog-cta-secondary{background:var(--white);color:var(--dark);border-color:#b8b0b0}
.blog-cta-secondary:hover{background:var(--white);color:var(--red);border-color:var(--red)}
.blog-article-tools{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.blog-tool-status{flex-basis:100%;font-size:14px;color:var(--text);margin:0}
.blog-copy-fallback{flex-basis:100%;font-size:14px}
.blog-copy-fallback input{display:block;width:100%;font:inherit;padding:10px;margin-top:8px;border:1px solid var(--article-line);border-radius:4px}
.blog-related{margin-top:40px}
.blog-related h2{font-size:32px}
.blog-related ul{padding-left:20px;font-size:16px}
.blog-reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:150;background:transparent;pointer-events:none}
.blog-reading-progress span{display:block;width:100%;height:100%;background:var(--red);transform:scaleX(0);transform-origin:left}
.blog-article [hidden]{display:none!important}
@media(max-width:1199px){.blog-article-layout{display:block;max-width:828px;padding-top:40px}.blog-contents{position:static;max-height:none;margin-bottom:36px;overflow:visible}.blog-article .blog-toc{padding:18px 24px;background:var(--article-soft);border:1px solid var(--article-line);border-radius:8px}.blog-article .blog-toc summary{padding:0}.blog-article .blog-toc ol{margin-top:20px}}
@media(max-width:900px){.blog-hero-grid{grid-template-columns:minmax(0,1fr);gap:32px}.blog-hero-illustration{max-width:720px}.blog-article .blog-article-hero{padding-top:120px}.blog-article .blog-article-hero h1{max-width:780px;font-size:clamp(40px,6vw,56px)}}
@media(max-width:600px){.blog-article .blog-article-hero{padding:112px 24px 40px}.blog-article .blog-article-hero h1{font-size:42px}.blog-hero-perex{font-size:16px;line-height:1.75}.blog-article-layout{padding:32px 24px 56px}.blog-article .blog-prose{font-size:17px;line-height:1.75}.blog-chapter{margin-top:36px;padding-top:28px}.blog-article .blog-chapter h2{font-size:32px}.blog-article .blog-pullquote{padding:22px;margin:28px 0}.blog-article .blog-pullquote p{font-size:29px}.blog-comparison-grid{grid-template-columns:minmax(0,1fr)}.blog-comparison-card{padding:22px}.blog-checklist{padding:24px 20px}.blog-checklist label{font-size:15px;gap:12px}.blog-author{grid-template-columns:80px minmax(0,1fr);gap:20px;align-items:start}.blog-author img{width:80px;height:100px}.blog-author h2{font-size:30px}.blog-article-cta{padding:26px 22px}.blog-article-cta h2{font-size:32px}.blog-cta-links{flex-direction:column}.blog-cta-links .hero-cta{width:100%}.blog-article .blog-bottom-back{margin-top:28px}}
@media(prefers-reduced-motion:reduce){.blog-article .blog-toc a,.blog-tool,.blog-checklist progress::-webkit-progress-value{transition:none}}
