.story-head{padding-block:64px 36px;max-width:760px}.story-head h1{font-size:clamp(40px,5vw,64px);margin-bottom:16px}.story-head .intro{max-width:620px}
.story{display:grid;grid-template-columns:230px minmax(0,1fr);gap:72px;align-items:start;padding-bottom:90px}
.rail{position:sticky;top:20px}.rail ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--line)}
.rail a{display:block;text-decoration:none;padding:9px 0 9px 18px;margin-left:-2px;border-left:2px solid transparent;min-height:44px}
.rail a b{display:block;font-family:var(--serif);font-weight:600;font-size:17px;line-height:1.25}.rail a span{font-size:12px;color:var(--muted);letter-spacing:.04em}
.rail a:hover{color:var(--chestnut)}.rail a[aria-current=true]{border-left-color:var(--chestnut);color:var(--chestnut)}
.chapter{padding-block:8px 70px;scroll-margin-top:24px;border-top:1px solid var(--line)}.chapter:first-of-type{border-top:0}
.chapter-no{font-family:var(--serif);color:var(--chestnut);font-size:15px;margin:34px 0 8px;letter-spacing:.04em}
.chapter h2{font-size:clamp(30px,3.4vw,44px);margin-bottom:22px}
.chapter p{font-size:18px;line-height:1.8;max-width:640px}.chapter p.quiet{color:var(--muted);font-size:15px}
.pull{font-family:var(--serif);font-size:clamp(22px,2.4vw,28px);line-height:1.35;color:var(--navy);border-left:3px solid var(--chestnut);padding:4px 0 4px 22px;margin:30px 0;max-width:620px}
.photos{display:grid;gap:16px;margin:30px 0;grid-template-columns:repeat(6,1fr)}
.photos figure{margin:0}.photos .w2{grid-column:span 2}.photos .w3{grid-column:span 3}.photos .w4{grid-column:span 4}.photos .w6{grid-column:span 6}
.photos img,.slot{width:100%;border-radius:10px;display:block;background:var(--blue);object-fit:cover}
.slot{aspect-ratio:var(--r,4/5);border:1.5px dashed #9FB3CC;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:14px;color:var(--muted);font-size:13px;line-height:1.45;gap:4px}
.slot b{color:var(--navy);font-family:var(--serif);font-size:15px}.slot small{font-size:11px;color:var(--chestnut);font-weight:700;letter-spacing:.06em}
.photos figcaption{font-size:12.5px;color:var(--muted);margin-top:8px;line-height:1.5}
.chapter-nav{display:flex;justify-content:space-between;gap:16px;margin-top:40px;font-size:14px;font-weight:650}.chapter-nav a{min-height:44px;display:inline-flex;align-items:center;text-underline-offset:5px}
.fact-note{background:var(--pale);border:1px solid var(--line);border-radius:10px;padding:16px 20px;font-size:14px!important;color:var(--muted);max-width:640px}
@media(max-width:900px){.story{grid-template-columns:1fr;gap:0}.rail{position:sticky;top:0;z-index:5;background:#fffffff2;backdrop-filter:blur(6px);margin-inline:-20px;padding:6px 20px;border-bottom:1px solid var(--line)}
 .rail ol{display:flex;gap:6px;overflow-x:auto;border:0;scrollbar-width:none}.rail li{flex:none}.rail a{border:0;border-bottom:3px solid transparent;margin:0;padding:8px 12px;min-height:44px}.rail a[aria-current=true]{border-bottom-color:var(--chestnut)}.rail a span{display:none}.rail a b{font-size:15px;white-space:nowrap}
 .photos{grid-template-columns:repeat(2,1fr)}.photos .w2,.photos .w3,.photos .w4{grid-column:span 1}.photos .w6{grid-column:span 2}.chapter p{font-size:17px}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
.story>*{min-width:0}
@media(max-width:900px){.story{grid-template-columns:minmax(0,1fr)}.rail{overflow:hidden}.slot{aspect-ratio:4/3!important}}
.story-head{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);gap:56px;align-items:center;max-width:none;padding-block:56px 40px}
.story-hero{margin:0}.story-hero img{width:100%;height:auto;max-height:560px;object-fit:cover;border-radius:150px 150px 16px 16px;display:block}.story-hero figcaption{font-size:12.5px;color:var(--muted);margin-top:10px;text-align:center}
@media(max-width:900px){.story-head{grid-template-columns:1fr;gap:28px}.story-hero{max-width:340px}.story-hero img{border-radius:120px 120px 14px 14px}}

.photos img{aspect-ratio:var(--ar,auto)}
.photo-group{font-family:var(--serif);color:var(--navy);font-size:20px;margin:40px 0 -14px}
.photo-group+.photos{margin-top:30px}
