@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700&family=Noto+Serif+SC:wght@500;600;700&display=swap');
:root{--paper:#f3eee3;--pale:#faf7ef;--ink:#252b27;--muted:#6e736c;--red:#9f332e;--gold:#b88f50;--line:#d8d0c1}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 'Noto Sans SC','Microsoft YaHei',sans-serif}body:before{content:'';position:fixed;inset:0;z-index:-1;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.2'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.section-wrap{max-width:1340px;margin:auto;padding-left:6vw;padding-right:6vw}.topbar{height:72px;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;background:rgba(248,244,235,.95);backdrop-filter:blur(15px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:14px}.brand-mark{display:grid;place-items:center;width:32px;height:32px;background:var(--red);color:white;border-radius:50%;font-family:serif}.topbar nav{display:flex;gap:34px;font-size:13px}.topbar nav a:hover{color:var(--red)}.topbar-note{font-size:12px;color:#948b7d}
.hero{min-height:calc(100svh - 72px);position:relative;overflow:hidden;background:radial-gradient(circle at 80% 30%,#c25c47,#9f332e 30%,#57201e 100%);color:#fff}.hero:before{content:'';position:absolute;inset:0;background:repeating-radial-gradient(circle at 80% 40%,transparent 0 65px,rgba(255,238,203,.11) 66px 67px)}.hero-inner{position:relative;z-index:1;max-width:1200px;margin:auto;padding:clamp(90px,15vh,180px) 6vw 120px}.eyebrow,.kicker{font-size:12px;font-weight:700;letter-spacing:.2em}.eyebrow{color:#f5d0a3}.kicker{color:var(--red)}.hero h1{font:700 clamp(48px,7.5vw,108px)/1.25 'Noto Serif SC',serif;margin:25px 0}.hero h1 em{font-style:normal;color:#f0d8ab}.hero-lead{max-width:540px;font-size:17px;line-height:2;color:#f8e9d8}.primary-link{display:inline-flex;gap:34px;align-items:center;margin-top:25px;padding:12px 22px;background:#f1d6ad;color:#632421;font-weight:700;font-size:14px}.primary-link:hover{background:white}.hero-stamp{position:absolute;right:14%;top:30%;width:150px;height:150px;border:2px solid #e8c89f;border-radius:50%;display:grid;place-items:center;transform:rotate(16deg);font:24px/1.2 'Noto Serif SC',serif;color:#f3d8af;text-align:center;opacity:.65}.hero-bottom{position:absolute;bottom:30px;left:6vw;right:6vw;display:flex;justify-content:space-between;color:#f4d6b6;font-size:11px;letter-spacing:.2em}
.prologue{padding-top:120px;padding-bottom:120px}.section-head{max-width:820px}.section-head h2,.photo-comparison h2,.ending h2{font:700 clamp(32px,3.8vw,53px)/1.35 'Noto Serif SC',serif;margin:18px 0}.section-head p{color:var(--muted)}.stat-feature{margin-top:50px;padding:48px 6%;background:#26332e;color:white;display:flex;align-items:end;justify-content:space-between}.stat-caption{display:block;color:#cab99a;font-size:13px}.stat-feature strong{display:block;font:700 clamp(72px,10vw,140px) Georgia,serif;line-height:1.1;letter-spacing:-.05em;color:#f2d9a8}.stat-feature strong small{font-size:.35em;margin-left:10px}.stat-feature p{font:600 25px/1.65 'Noto Serif SC',serif}.stat-years{display:flex;align-items:center;gap:15px;color:#d3c2a4;font:14px Georgia,serif}.stat-years i{height:1px;width:70px;background:#a88c65}.timeline{display:grid;grid-template-columns:repeat(6,1fr);margin:46px 0 32px}.timeline button{background:none;border:0;border-top:2px solid #d2c9b9;text-align:left;padding:18px 8px 0 0;position:relative;color:var(--ink)}.timeline button:before{content:'';position:absolute;top:-6px;left:0;width:10px;height:10px;background:var(--red);border-radius:50%}.timeline span{display:block;color:#806f5c;font-size:12px}.timeline strong{display:block;font:700 25px Georgia,serif}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.stat-card{padding:28px;background:rgba(255,255,255,.5);border:1px solid var(--line)}.stat-card>span,.stat-card p{font-size:12px;color:var(--muted)}.stat-card strong{display:block;font:700 39px Georgia,serif;color:var(--red);margin:8px 0}.stat-card small{font:600 14px 'Noto Sans SC',sans-serif;margin-left:5px}.stat-card p{margin:0}
.chapter-intro{padding-top:120px;padding-bottom:55px;display:grid;grid-template-columns:240px 1fr;gap:35px;border-top:1px solid var(--line)}.chapter-no{font:700 12px Georgia,serif;color:var(--red)}.chapter-intro h2{font:700 clamp(38px,5vw,66px)/1.15 'Noto Serif SC',serif;margin:0 0 20px}.chapter-intro p{max-width:680px;color:var(--muted);margin:0}.atlas-panel{padding-top:35px;padding-bottom:45px;background:var(--pale);border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 18px 60px rgba(43,35,26,.08)}.panel-top{display:flex;justify-content:space-between;align-items:end;gap:20px}.panel-top h3{font:700 clamp(25px,3vw,38px) 'Noto Serif SC',serif;margin:10px 0 0}.panel-badge{border:1px solid #c9b28c;padding:6px 10px;color:#8c6b36;font-size:11px;white-space:nowrap}.map-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:28px 0 17px;color:var(--muted);font-size:12px}.segmented{display:flex;gap:3px;flex-wrap:wrap;background:#eee8dd;padding:4px}.segmented button{background:transparent;border:0;padding:8px 15px;font-size:12px;color:#666}.segmented button.active{background:#74231f;color:#fff}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px}.map-shell{height:530px;position:relative;background:radial-gradient(circle at 45% 45%,#f5f0e6,#e9e6dc);border:1px solid var(--line);overflow:hidden}.map{width:100%;height:100%}.map .ol-viewport{cursor:grab}.map-corner{position:absolute;top:18px;right:20px;font:700 14px Georgia,serif;color:#8f7d64;pointer-events:none}.map-corner span{display:block;text-align:center;font-size:18px}.map-legend{position:absolute;bottom:14px;left:17px;background:rgba(250,247,239,.93);padding:8px 12px;font-size:11px;color:#6f6b62}.map-legend span{margin:0 5px}.legend-line{display:inline-block;width:24px;border-top:2px dashed var(--red);vertical-align:middle;margin-right:5px}.info-card{background:#fff;border:1px solid var(--line);padding:27px 23px;min-width:0}.info-overline{font-size:11px;color:var(--red);letter-spacing:.18em}.info-card h4{font:700 23px 'Noto Serif SC',serif;margin:14px 0}.info-card p{font-size:12px;color:var(--muted);line-height:1.85}.info-divider{height:1px;background:var(--line);margin:25px 0}.info-number{font:700 37px Georgia,'Noto Sans SC',sans-serif;color:#74231f;line-height:1.3}.info-number-caption{font-size:11px;color:var(--muted)}.split-bar{height:10px;margin-top:22px;background:#d8c9ad}.split-bar span{display:block;height:100%;background:var(--red)}.split-label{font-size:11px!important}.cluster-detail{margin-top:26px!important}.year-control{max-width:740px;margin:30px auto 0}.year-control label{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.year-control label strong{font:700 23px Georgia,serif;color:var(--red)}.year-control input{width:100%;accent-color:var(--red);margin:13px 0 2px}.year-marks{display:flex;justify-content:space-between;font:12px Georgia,serif;color:#827e75}.map-note{margin:28px 0 0;padding-top:15px;border-top:1px solid var(--line);font-size:11px;color:#838078}
.story-image{padding-top:115px;padding-bottom:125px;display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.story-copy h3{font:700 clamp(30px,3.7vw,50px)/1.4 'Noto Serif SC',serif}.story-copy p{max-width:400px;color:var(--muted);font-size:14px}.photo-credit{display:block;margin-top:35px;color:#9b8060;font-size:11px}.story-image figure,.compare-grid figure{margin:0;position:relative}.story-image img{display:block;width:100%;height:420px;object-fit:cover;filter:sepia(.15)}figcaption{font-size:11px;color:#817968;margin-top:10px}.photo-comparison{padding-top:120px;padding-bottom:125px}.section-head.compact{margin-bottom:32px}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.compare-grid img{width:100%;height:330px;object-fit:cover;display:block}.photo-year{position:absolute;top:16px;left:16px;z-index:1;background:#74231f;color:white;padding:5px 13px;font:700 18px Georgia,serif}.final-compare{padding-bottom:160px}.ending{background:#25332e;color:white;padding:100px 0}.ending .kicker{color:#e7c58b}.ending p{max-width:630px;color:#d0d8d0}.ending a{display:inline-block;margin-top:25px;border-bottom:1px solid #d4b375;color:#e7c58b;padding-bottom:4px;font-size:13px}footer{display:flex;justify-content:space-between;padding:25px 6vw;background:#1d2824;color:#9eaaa1;font-size:11px}.ol-control button{background:rgba(116,35,31,.8)!important}
@media(max-width:900px){.topbar-note{display:none}.hero-stamp{right:6%;opacity:.3}.chapter-intro{grid-template-columns:1fr;gap:14px}.map-layout{grid-template-columns:1fr}.map-shell{height:480px}.story-image{gap:30px}.stat-feature p{font-size:18px}}
@media(max-width:620px){.topbar{height:60px;padding:0 5vw}.brand{font-size:11px}.brand-mark{width:27px;height:27px}.topbar nav{gap:10px;font-size:10px}.topbar nav a:first-child{display:none}.hero{min-height:690px}.hero-inner{padding:135px 7vw 80px}.hero-lead{font-size:14px}.hero-stamp{display:none}.section-wrap{padding-left:5vw;padding-right:5vw}.prologue,.photo-comparison{padding-top:75px;padding-bottom:80px}.stat-feature{padding:30px 25px;display:block}.stat-feature strong{font-size:70px}.stat-feature p{font-size:17px;margin-bottom:0}.timeline{grid-template-columns:repeat(3,1fr);row-gap:26px}.timeline strong{font-size:20px}.stat-grid{grid-template-columns:1fr}.chapter-intro{padding-top:80px}.panel-top{display:block}.panel-badge{display:inline-block;margin-top:15px}.map-toolbar{display:block}.map-toolbar>span{display:block;margin-top:10px}.segmented button{padding:7px 10px}.map-shell{height:385px}.story-image{grid-template-columns:1fr;padding-top:75px;padding-bottom:85px}.story-image img{height:300px}.compare-grid{grid-template-columns:1fr}.compare-grid img{height:270px}.final-compare{padding-bottom:90px}footer{display:block}footer span{display:block;margin:5px 0}}
.segmented button:disabled{opacity:.32;cursor:not-allowed}
