:root{--ink:#18283d;--muted:#546477;--line:#d9e1ea;--paper:#fff;--wash:#f1f5fa;--accent:#174fbd;--serif:"Hiragino Mincho ProN","Yu Mincho",serif;--sans:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:.25em}a:hover{color:var(--accent)}a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.5}h1,h2{font-family:var(--serif);font-weight:600}h1{font-size:clamp(2.15rem,4.1vw,3.75rem);letter-spacing:.055em}h2{font-size:1.7rem}h3{font-size:1.13rem}p{margin-bottom:1.4em}ul,ol{padding-left:1.5em}li{padding-left:.2em;margin:.5em 0}strong{font-weight:650}.wrap{max-width:1140px;margin:auto;padding:0 36px}.skip{position:absolute;top:-100px;left:20px;background:white;z-index:10;padding:10px}.skip:focus{top:12px}.site-header{border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:106px}.brand{text-decoration:none;font-family:var(--serif);font-size:1.7rem;letter-spacing:.12em;font-weight:650;white-space:nowrap}.brand span{color:var(--accent)}.nav{display:flex;gap:30px;font-size:.875rem}.nav a{text-decoration:none}.nav a[aria-current=page]{color:var(--accent);text-decoration:underline}.hero{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:70px;padding:70px 0 62px;align-items:center}.eyebrow{font-size:.875rem;letter-spacing:.14em;color:var(--accent);margin-bottom:22px}.hero h1{margin-bottom:26px}.intro{max-width:37em;color:var(--muted)}.lead-note{border-left:3px solid var(--accent);padding:16px 0 16px 28px}.lead-note h2{font-family:var(--sans);font-size:1.1rem}.lead-note p{font-size:.94rem;color:var(--muted);margin:0 0 24px}.text-link{font-size:.95rem;color:var(--accent)}.section-label{display:flex;align-items:baseline;gap:25px;border-bottom:2px solid var(--ink);padding-bottom:15px;margin-bottom:0}.section-label h2{font-size:1.35rem;margin:0}.section-label p{font-size:.875rem;color:var(--muted);margin:0}.story{display:grid;grid-template-columns:160px 1fr 38px;gap:35px;padding:35px 0;border-bottom:1px solid var(--line);text-decoration:none}.story .category{font-size:.875rem;color:var(--accent);padding-top:5px}.story h3{font-family:var(--serif);font-size:1.5rem;margin-bottom:12px}.story p{max-width:46em;color:var(--muted);font-size:.95rem;margin:0}.story .arrow{font-size:1.55rem;align-self:center;color:var(--accent)}.afterword{display:grid;grid-template-columns:1fr 2fr;gap:65px;padding:50px 0 65px}.afterword h2{font-size:1.4rem}.afterword p{font-size:.95rem;color:var(--muted)}.site-footer{background:var(--wash);padding:34px 0;color:var(--muted);font-size:.875rem}.footer-top{display:flex;justify-content:space-between;gap:24px;margin-bottom:18px}.footer-links{display:flex;gap:25px;flex-wrap:wrap}.site-footer p{margin-bottom:.65em}.copyright{font-size:.8rem}.breadcrumb{display:flex;gap:10px;flex-wrap:wrap;font-size:.875rem;color:var(--muted);padding-top:25px}.article-layout{display:grid;grid-template-columns:minmax(0,720px) 230px;gap:75px;padding:42px 0 75px}.article-head h1{font-size:clamp(1.9rem,3vw,2.7rem);letter-spacing:.035em;margin-bottom:24px}.article-head .eyebrow{margin-bottom:16px}.article-lead{font-size:1.06rem;color:var(--muted)}.meta{font-size:.8rem;color:var(--muted);margin:25px 0 40px}.article-body h2{font-size:1.4rem;margin:42px 0 20px;padding-bottom:12px;border-bottom:1px solid var(--line)}.article-body h3{margin:28px 0 12px}.article-body p{line-height:2}.callout{background:var(--wash);padding:25px 28px;margin:28px 0;border-left:3px solid var(--accent)}.callout p:last-child{margin-bottom:0}.comparison{overflow:auto;margin:28px 0}.comparison table{width:100%;border-collapse:collapse;min-width:520px;font-size:.95rem;text-align:left}.comparison th{padding:15px;background:var(--wash);font-weight:600}.comparison td{padding:18px 15px;vertical-align:top;border-bottom:1px solid var(--line)}.sources{font-size:.875rem;color:var(--muted);border-top:1px solid var(--line);margin-top:38px;padding-top:25px}.sources h2{border:0;font-family:var(--sans);font-size:1rem;margin:0}.sources li{margin-bottom:12px}.sources a{overflow-wrap:anywhere}.sidebar{font-size:.875rem;padding-top:10px}.sidebar-inner{position:sticky;top:30px}.sidebar h2{font-family:var(--sans);font-size:.94rem;padding-bottom:12px;border-bottom:1px solid var(--line)}.sidebar ul{list-style:none;padding:0}.sidebar li{margin:15px 0}.sidebar a{text-decoration:none;color:var(--muted)}.sidebar .small-note{margin-top:35px;padding-top:22px;border-top:1px solid var(--line);font-size:.81rem;color:var(--muted)}.related{border-top:2px solid var(--ink);margin-top:45px;padding-top:22px}.related p{font-size:.875rem;color:var(--muted);margin-bottom:7px}.simple-page{max-width:770px;padding:50px 0 70px}.simple-page h1{font-size:2.5rem}.simple-page h2{font-size:1.4rem;margin-top:35px}.simple-page .eyebrow{margin-bottom:16px}details{margin-top:25px;background:var(--wash);padding:20px 25px}summary{cursor:pointer;font-weight:600}details p{margin-top:20px}.tagline{font-size:.8rem;letter-spacing:.04em}.article-body a{color:var(--accent)}
@media(max-width:800px){.wrap{padding:0 22px}.header-inner{min-height:90px;gap:20px}.brand{font-size:1.35rem}.nav{gap:15px;font-size:.8rem}.hero{grid-template-columns:1fr;gap:20px;padding:40px 0}.hero h1{font-size:2.6rem}.hero .lead-note{padding:12px 0 12px 20px}.lead-note p{margin-bottom:12px}.story{grid-template-columns:1fr 24px;gap:8px 15px;padding:26px 0}.story .category{grid-column:1/-1}.story h3{font-size:1.25rem}.story .arrow{grid-column:2;grid-row:2}.afterword{grid-template-columns:1fr;gap:10px;padding:36px 0}.section-label{gap:12px;flex-wrap:wrap}.section-label p{font-size:.8rem}.article-layout{grid-template-columns:1fr;gap:35px;padding-top:30px}.sidebar-inner{position:static}.article-head h1{font-size:2rem}.article-body h2{font-size:1.3rem}.footer-top{flex-direction:column;gap:14px}.simple-page h1{font-size:2rem}.callout{padding:20px}.simple-page{padding-top:35px}}
@media(max-width:400px){.header-inner{align-items:flex-start;flex-direction:column;gap:8px;padding-top:16px;padding-bottom:16px}.nav{gap:22px}.hero h1{font-size:2.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
