:root{--ink:#183e42;--teal:#0d5358;--paper:#f5f6f0;--gold:#e9bd72;--muted:#657675;--line:#d4ddda;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;font-size:16px;line-height:1.75}a{color:inherit;text-decoration:none}button,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #ba7329;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.3}h2{font-size:32px;font-weight:600}p{overflow-wrap:anywhere}img{max-width:100%;display:block}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 max(6vw,24px);border-bottom:1px solid var(--line);background:var(--paper)}.brand{font-weight:600;letter-spacing:2px}.brand-mark{display:inline-grid;place-items:center;background:var(--teal);color:var(--paper);width:31px;height:34px;margin-right:9px;font-family:"Songti SC",serif;border-radius:50% 50% 0 0}.topbar>a:last-child{font-size:14px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.06fr 1fr;background:var(--teal);color:#f7efd9;min-height:650px}.hero-copy{padding:76px 4vw 50px 7vw;display:flex;align-items:flex-start;flex-direction:column}.small{font-size:13px;letter-spacing:2px;margin-bottom:20px}.hero h1{font-family:"Songti SC","SimSun",serif;font-size:clamp(48px,5.2vw,78px);font-weight:600;letter-spacing:3px;line-height:1.25}.intro{margin:28px 0 32px;color:#d3e1d9;line-height:1.9}.primary{padding:12px 23px;display:inline-flex;gap:35px;background:var(--gold);color:#173f42;border-radius:3px;font-weight:600}.hero-route{margin-top:auto;padding-top:48px;display:flex;align-items:center;gap:12px;font-size:12px;white-space:nowrap}.hero-route i{height:1px;background:#84a5a0;width:25px}.hero-art{position:relative;overflow:hidden;min-height:560px}.hero-art>img{width:100%;height:100%;object-fit:cover}.art-stamp{position:absolute;right:32px;top:38px;border:1px solid #ead4a7;padding:12px 14px;font-family:"Songti SC",serif;line-height:1.5;font-size:18px;transform:rotate(5deg)}.art-caption{position:absolute;bottom:20px;right:24px;color:#dae5dc;font-size:11px}.journey-map,.journal,.poster-teaser,.ending{max-width:1180px;margin:auto;padding:70px 40px}.journey-map{display:grid;grid-template-columns:1fr 1.5fr;gap:50px;border-bottom:1px solid var(--line)}.journey-map h2{font-size:25px}.route-list{padding:12px 0 0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);list-style:none}.route-list li{position:relative;border-top:1px solid #8ba5a2;padding:24px 8px 0 0}.route-list li:before{content:"";width:8px;height:8px;position:absolute;top:-5px;background:var(--teal);border-radius:50%}.route-list span,.route-list b,.route-list small{display:block}.route-list span{font-size:12px;color:#657675}.route-list b{margin:8px 0;font-weight:600}.route-list small{font-size:11px;color:#657675}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:32px}.section-head .small{margin-bottom:10px}.section-head>span{font-size:13px;color:var(--muted)}.day-tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:30px}.day-tabs button{border:1px solid var(--line);background:transparent;padding:12px 5px;color:var(--ink);border-radius:4px}.day-tabs button span{font-size:12px;display:block;margin-top:3px}.day-tabs button[aria-selected=true]{background:var(--teal);color:white;border-color:var(--teal)}.day-layout{display:grid;grid-template-columns:.8fr 1.2fr;background:white;border:1px solid var(--line)}.day-visual{position:relative;background:var(--teal);min-height:480px}.day-visual img{width:100%;height:100%;object-fit:cover}.day-visual .visual-caption{position:absolute;top:28px;left:28px;color:#f7efd9}.visual-caption span{font-size:13px}.visual-caption h3{font-family:"Songti SC",serif;font-size:36px;margin-top:10px}.day-content{padding:32px}.day-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:20px}.day-heading h3{font-size:22px}.day-heading span{font-size:12px;color:var(--muted);white-space:nowrap}.venue-list{padding:0;margin:0 0 20px;list-style:none;counter-reset:venue}.venue-list li{position:relative;padding:8px 0 8px 29px;border-bottom:1px solid #edf0ed;font-size:14px;counter-increment:venue}.venue-list li:before{content:counter(venue,decimal-leading-zero);position:absolute;left:0;top:11px;font-size:10px;color:#6d8883}.logistics{display:flex;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:12px;margin-bottom:22px}.prompt{background:#edf3ef;padding:16px 18px;border-left:3px solid #b99a5d;font-size:14px;line-height:1.8}.prompt b{display:block;font-size:12px;margin-bottom:5px;color:var(--teal)}.note-label{display:flex;justify-content:space-between;align-items:center;font-size:14px;margin:22px 0 8px}.note-label span{font-size:11px;color:var(--muted)}textarea{display:block;width:100%;min-height:115px;padding:12px;border:1px solid var(--line);border-radius:3px;font-size:14px;line-height:1.8;resize:vertical;color:var(--ink);background:#fff}textarea::placeholder{color:#7b8886}.note-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:11px;color:var(--muted)}.note-actions button,.outline{background:transparent;border:1px solid var(--teal);color:var(--teal);border-radius:3px;padding:8px 16px;font-size:13px}.pager{display:flex;align-items:center;justify-content:space-between;margin-top:20px}.pager button{border:0;background:transparent;padding:10px;color:var(--teal);font-size:14px}.pager button:disabled{opacity:.35;cursor:default}.pager span{font-size:12px;color:var(--muted)}.poster-teaser{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:center}.poster-teaser h2{font-size:27px;margin-bottom:20px}.poster-teaser p:not(.small){color:var(--muted);font-size:14px}.text-link{display:inline-block;border-bottom:1px solid var(--teal);margin-top:28px;padding:4px 0;font-size:14px}.mini-posters{display:flex;align-items:center;gap:12px;padding:20px 0}.mini-posters img{width:calc((100% - 24px)/3);box-shadow:0 10px 20px #24413a20}.mini-posters img:first-child{transform:rotate(-7deg)}.mini-posters img:last-child{transform:rotate(7deg)}.ending{text-align:center;padding-top:20px;padding-bottom:60px}.ending>p:first-child{font-family:"Songti SC",serif;font-size:28px;margin-bottom:20px}.fine{font-size:11px;color:var(--muted);margin-top:14px}footer{border-top:1px solid var(--line);padding:25px 6vw;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);max-width:90vw;width:max-content;background:#173f42;color:white;padding:12px 20px;border-radius:5px;font-size:14px;z-index:10;display:none}#toast.show{display:block}.poster-page{max-width:1300px;margin:auto;padding:60px 40px}.poster-page h1{font-family:"Songti SC",serif;font-size:46px;margin-bottom:18px}.poster-page>.description{color:var(--muted);max-width:42em}.poster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:42px}.poster-item img{width:100%;box-shadow:0 8px 25px #183e4215}.poster-item h2{font-size:22px;margin:22px 0 7px}.poster-item p{font-size:13px;color:var(--muted)}.downloads{display:flex;gap:14px;flex-wrap:wrap;margin-top:15px}.downloads a{font-size:12px;border-bottom:1px solid var(--teal);padding:5px 0}.print-bar{margin-top:45px;padding:25px 0;border-top:1px solid var(--line)}
@media(min-width:1440px){.hero-copy{padding-left:90px}}
@media(max-width:760px){html{scroll-padding-top:20px}.topbar{height:64px;padding:0 22px}.hero{display:block;min-height:0;position:relative;overflow:hidden}.hero-copy{position:relative;z-index:1;padding:39px 28px 30px;min-height:600px;pointer-events:none}.hero-copy a{pointer-events:auto}.hero .small{font-size:11px;margin-bottom:18px}.hero h1{font-size:48px;letter-spacing:1px}.intro{font-size:14px;margin-top:18px;margin-bottom:24px;text-shadow:0 1px 4px #0d5358}.primary{font-size:14px;gap:25px;padding:11px 18px}.hero-art{position:absolute;inset:0;min-height:0}.hero-art>img{height:100%;width:100%;object-fit:cover;object-position:center;opacity:.95}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0d5358 0%,#0d5358ed 24%,#0d535833 58%,transparent 80%)}.art-stamp{display:none}.art-caption{z-index:1;font-size:9px;bottom:12px;right:15px}.hero-route{padding-top:180px;font-size:11px;gap:9px;text-shadow:0 1px 3px #173f42}.hero-route i{width:20px}.journey-map,.journal,.poster-teaser,.ending{padding:40px 22px}.journey-map{display:block}.journey-map h2{font-size:24px}.journey-map .small{margin-bottom:12px}.route-list{margin-top:30px}.route-list b{font-size:13px}.route-list small{font-size:10px;max-width:65px}.section-head{margin-bottom:24px}.section-head h2{font-size:27px}.section-head>span{font-size:11px}.section-head .small{font-size:11px}.day-tabs{gap:5px;margin-bottom:18px}.day-tabs button{font-size:13px;padding:10px 2px}.day-tabs button span{font-size:10px}.day-layout{display:block}.day-visual{height:220px;min-height:0;overflow:hidden}.day-visual img{object-position:center 53%}.day-visual .visual-caption{top:20px;left:22px}.visual-caption h3{font-size:30px}.day-content{padding:24px 20px}.day-heading{display:block}.day-heading h3{font-size:21px;margin-bottom:5px}.venue-list li{font-size:14px}.logistics{gap:8px 18px}.poster-teaser{display:block}.poster-teaser h2{font-size:26px}.mini-posters{margin-top:26px;padding:12px 7px}.ending>p:first-child{font-size:25px}footer{display:block;text-align:center;padding:22px}footer span{display:block;margin-top:5px}.poster-page{padding:36px 22px}.poster-page h1{font-size:35px}.poster-grid{grid-template-columns:1fr;gap:42px;max-width:480px;margin:32px auto}.poster-page>.description{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{@page{size:A3 portrait;margin:0}.topbar,.poster-page>h1,.poster-page>.small,.poster-page>.description,.print-bar,footer,.poster-item h2,.poster-item p,.downloads{display:none}.poster-page{padding:0;max-width:none}.poster-grid{display:block;margin:0;max-width:none}.poster-item{break-after:page;width:297mm;height:420mm}.poster-item:last-child{break-after:auto}.poster-item img{width:297mm;height:420mm;box-shadow:none}body{background:white}}
