@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;600;700&display=swap');
:root{--paper:#f8f8f3;--ink:#253c31;--green:#315943;--muted:#6e786f;--line:#dde1d7;--serif:'Noto Serif SC','Songti SC',SimSun,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.7 'Microsoft YaHei',system-ui,sans-serif}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b8772c;outline-offset:4px}button:disabled{opacity:.45;cursor:default}[hidden]{display:none!important}.wrapper{max-width:1240px;margin:auto;padding-left:36px;padding-right:36px}.nav{height:86px;padding:0 4.4%;display:flex;align-items:center;justify-content:space-between;gap:25px;background:var(--paper)}.brand{display:flex;align-items:center;gap:11px;font:600 25px var(--serif);white-space:nowrap}.brand-icon{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:white;width:34px;height:34px;border-radius:50%;font:26px serif}.brand-en{font:9px/1.5 system-ui;letter-spacing:2px;max-width:100px;white-space:normal;margin-left:8px}.nav nav{display:flex;gap:38px;font-size:13px}.nav nav a:hover{color:#9f5a28}.btn{display:inline-flex;align-items:center;justify-content:center;gap:30px;border:1px solid transparent;border-radius:4px;padding:13px 23px;transition:transform .2s,background .2s;font-size:13px}.btn:hover{transform:translateY(-2px)}.primary{background:var(--green);color:#fff}.primary:hover{background:#214430}.small{padding:10px 19px}.cream{background:#f4f4e8;color:#253c31}.outline{background:transparent;border-color:#c9d1c5}.full{width:100%}.hero{position:relative;min-height:570px;height:calc(85vh - 86px);max-height:800px;margin:0 22px;overflow:hidden;border-radius:7px;color:white;background:#547464}.hero-img,.hero-shade{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}.hero-img{object-position:50% 55%}.hero-shade{background:linear-gradient(90deg,rgba(12,33,24,.7),rgba(12,33,24,.08)),linear-gradient(0deg,rgba(12,33,24,.55),transparent 35%)}.hero-copy{position:relative;padding:72px 6.4%}.eyebrow{font-size:10px;letter-spacing:2.8px;font-weight:500;margin:0 0 20px}.hero h1{font:500 clamp(44px,5.5vw,80px)/1.4 var(--serif);letter-spacing:5px;margin:20px 0}.hero h1 span{color:#e5e9c8}.hero-desc{font-size:14px;line-height:2.1;opacity:.9;margin:24px 0 30px}.hero-bottom{position:absolute;bottom:26px;left:6.4%;right:6.4%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px;opacity:.85}.hero-stamp{position:absolute;right:8%;top:85px;border:1px solid #ffffff7a;border-radius:50%;width:132px;height:132px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);font-size:9px;line-height:1.5;letter-spacing:2px}.hero-stamp b{font:26px Georgia;letter-spacing:4px}.green{color:#60775d}.intro{display:flex;justify-content:space-between;align-items:center;padding-top:55px;padding-bottom:55px;border-bottom:1px solid var(--line);gap:30px}.intro .eyebrow{margin-bottom:10px}.intro p{font:23px var(--serif);margin:10px 0}.intro em,.closing em{font-style:normal;color:#68815a}.muted{color:var(--muted);font-size:12px}.stats{display:flex;gap:48px}.stat b{display:block;font:40px Georgia;color:#314f38}.stat span{font-size:11px;color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.section-head .eyebrow{margin-bottom:11px}h2{font:500 30px/1.5 var(--serif);margin:0}h2 span{color:#8a9a65}.section-note{font-size:12px;color:var(--muted);line-height:1.9;margin:0}.map-section{padding-top:68px}.map-layout{display:grid;grid-template-columns:280px 1fr;border:1px solid var(--line);border-radius:7px;overflow:hidden;min-height:460px;background:#edf0e7}.map-sidebar{padding:25px 22px;background:#fffef9}.sidebar-heading{display:flex;align-items:center;font-weight:600;gap:8px}.live-dot{width:6px;height:6px;background:#739555;border-radius:50%}.pill{font-size:9px;background:#edf0e6;color:#67795b;padding:3px 7px;margin-left:auto;font-weight:400;border-radius:3px}.map-sidebar>.muted{margin:10px 0 16px}.map-stop{border:0;border-left:1px solid #d8dfce;background:none;padding:10px 0 10px 18px;display:flex;gap:13px;align-items:center;text-align:left;width:100%;position:relative}.map-stop:before{content:'';position:absolute;left:-4px;width:7px;height:7px;border-radius:50%;background:#a4b197}.map-stop:hover,.map-stop.active{background:#eff1e8}.map-stop.active:before{background:#315943}.map-stop .num{font:11px Georgia;color:#98a08f}.map-stop strong{font-size:13px;font-weight:500}.map-stop small{display:block;font-size:10px;color:#85907e}.map-stop .arrow{margin-left:auto;color:#798770;padding-right:5px}#map-list{max-height:286px;overflow:auto;margin-bottom:20px}.tiny{font-size:10px;color:#798474;line-height:1.8}.map-sidebar>.tiny{text-align:center;margin-bottom:0}.map-wrap{position:relative;min-width:0}#map{height:100%;min-height:460px;background:#e6ebdf}.map-reset{position:absolute;right:17px;top:17px;z-index:500;border:1px solid #d9dfd2;background:#fffef7;padding:9px 13px;border-radius:4px;font-size:11px;box-shadow:0 2px 10px #24382312}.map-fallback{position:absolute;bottom:40px;left:25px;right:25px;background:#fffef5;padding:12px;z-index:500;font-size:12px}.pin{border:3px solid #fff;background:#315943;color:#fff;border-radius:50%;box-shadow:0 2px 9px #20342344;display:grid;place-items:center;font-size:10px}.leaflet-popup-content{font-family:inherit}.journal{padding-top:72px;padding-bottom:72px}.text-btn{border:0;background:none;font-size:12px;padding:9px 0;border-bottom:1px solid #89967d}.toolbar{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.filters{display:flex;gap:7px;flex-wrap:wrap}.filter{background:transparent;border:0;padding:7px 15px;border-radius:3px;font-size:12px;color:#727d6c}.filter.active{background:var(--green);color:white}.search{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:white;padding:4px 12px;border-radius:4px}.search>span{font-size:22px}.search input{border:0;background:none;outline:none;font-size:11px;width:185px;color:var(--ink)}.result-line{display:flex;justify-content:space-between;padding:18px 0;color:#7b8475;font-size:10px}.result-line select{background:none;border:0;color:#52624b;font-size:11px}.trip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 24px}.trip{background:#fffef9;border:1px solid var(--line);border-radius:5px;overflow:hidden;transition:transform .25s,box-shadow .25s}.trip:hover{transform:translateY(-5px);box-shadow:0 12px 25px #283b2810}.trip-cover{height:220px;position:relative;overflow:hidden;display:block;width:100%;padding:0;border:0;text-align:left}.trip-cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.trip:hover img{transform:scale(1.04)}.trip-badge{position:absolute;top:15px;left:15px;padding:4px 10px;font-size:9px;background:#fffef4ee;border-radius:3px}.trip-location{position:absolute;left:17px;bottom:15px;color:white;font-size:12px;text-shadow:0 1px 5px #000}.trip-cover:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0006)}.trip-location{z-index:1}.trip-body{padding:21px}.trip-date{font-size:10px;letter-spacing:1px;color:#7c866f}.trip h3{font:500 20px/1.6 var(--serif);margin:10px 0}.trip p{font-size:12px;color:#7b8175;line-height:1.9;margin:8px 0 18px}.trip-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px dashed #d6ddcc;padding-top:14px;font-size:10px;color:#7e8a70}.trip-footer button{border:0;background:none;color:#3a573c;font-size:11px}.empty{text-align:center;padding:50px}.moments{padding:64px 0;background:#eef0e7;border-block:1px solid #dfe3d6}.moment-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px}.moment{position:relative;height:300px;overflow:hidden;border:0;border-radius:4px;padding:0;color:white;text-align:left;background:#415a47}.moment img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.moment:hover img{transform:scale(1.04)}.moment:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#0009)}.moment span{position:absolute;left:22px;bottom:22px;z-index:1;font:19px var(--serif)}.moment small{display:block;font:9px system-ui;letter-spacing:2px;margin-bottom:10px}.closing{text-align:center;padding-top:70px;padding-bottom:75px}.compass{color:#829472;font-size:42px}.closing .eyebrow{margin-top:12px}.closing h2{font-size:36px}.closing .btn{margin-top:15px}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px;padding-top:30px;padding-bottom:30px}footer .brand{font-size:19px}footer p{font-size:11px;color:#7a8672}footer>span{font-size:8px;letter-spacing:1.3px;color:#7a8672}dialog{border:0;border-radius:10px;padding:36px;width:min(580px,94vw);max-height:90vh;color:var(--ink);background:var(--paper);box-shadow:0 25px 100px #13251955}dialog::backdrop{background:#10291e99;backdrop-filter:blur(4px)}.close{position:absolute;right:12px;top:12px;background:#fffef4e8;border:0;border-radius:50%;height:32px;width:32px;font-size:22px;z-index:1}#detail{padding:0;overflow:auto}#detail img{width:100%;height:270px;object-fit:cover}.detail-body{padding:30px}.detail-body p{white-space:pre-wrap;color:#68735f}.detail-body .btn{margin-top:10px}#trip-form{margin-top:24px}#trip-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;margin-bottom:14px}#trip-form input,#trip-form textarea{border:1px solid #d6ddce;border-radius:4px;padding:10px;background:#fffef9;color:var(--ink);width:100%;min-width:0}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,25px);background:#294a37;color:white;padding:12px 22px;z-index:2000;opacity:0;pointer-events:none;transition:.25s;border-radius:5px;max-width:90vw;font-size:12px}.toast.show{opacity:1;transform:translate(-50%,0)}.skip{position:fixed;top:-70px;left:20px;background:white;padding:10px;z-index:2000}.skip:focus{top:10px}
@media(min-width:1600px){.hero-copy{padding-top:100px}}@media(max-width:900px){.brand-en{display:none}.stats{gap:25px}.map-layout{grid-template-columns:235px 1fr}.trip-cover{height:180px}.trip-grid{gap:18px}.trip-body{padding:16px}.trip h3{font-size:18px}.hero-stamp{right:6%;width:110px;height:110px}.wrapper{padding-left:24px;padding-right:24px}.moment{height:240px}}@media(max-width:640px){.nav{height:72px;padding:0 20px;gap:10px}.brand{font-size:23px}.nav nav{display:none}.nav .small{font-size:11px;padding:9px 13px}.hero{margin:0 10px;min-height:560px;height:75vh;max-height:680px}.hero-copy{padding:68px 25px}.hero .eyebrow{font-size:8px;letter-spacing:2px}.hero h1{font-size:50px}.hero-desc{font-size:12px}.hero-stamp{top:auto;bottom:86px;right:25px;width:89px;height:89px;font-size:6px}.hero-stamp b{font-size:21px}.hero-bottom{left:25px;right:25px;font-size:8px}.hero-bottom span:last-child{display:none}.intro{align-items:start;flex-direction:column;padding-top:35px;padding-bottom:30px;gap:25px}.intro p{font-size:21px}.stats{width:100%;justify-content:space-between;padding-right:25px}.stat b{font-size:33px}.section-head{align-items:start;flex-direction:column;gap:12px}h2{font-size:25px}.section-head .eyebrow{font-size:9px}.section-note br{display:none}.map-section,.journal{padding-top:45px}.map-layout{display:flex;flex-direction:column-reverse}.map-sidebar{padding:18px}#map{height:330px;min-height:330px}#map-list{display:flex;overflow:auto;margin:15px 0;max-height:none}.map-stop{min-width:135px;border-left:0;border-bottom:1px solid #d8dfce;padding:8px}.map-stop:before,.map-stop .arrow{display:none}.map-sidebar>.muted{display:none}.map-sidebar>.tiny{font-size:9px}.map-sidebar .full{padding:9px}.toolbar{flex-direction:column;gap:12px}.search input{width:100%;font-size:12px;padding:6px 0}.filter{padding:7px 12px}.trip-grid{grid-template-columns:1fr;gap:22px}.trip-cover{height:235px}.trip-body{padding:21px}.trip h3{font-size:21px}.journal{padding-bottom:45px}.moment-grid{grid-template-columns:1fr 1fr;gap:12px}.moment:first-child{grid-column:span 2;height:240px}.moment{height:205px}.moment span{font-size:16px;left:15px;bottom:18px}.moments{padding:40px 0}.closing{padding-top:45px;padding-bottom:50px}.closing h2{font-size:28px}footer{flex-wrap:wrap}footer>span{width:100%}footer p{font-size:10px}dialog{padding:25px}.form-row{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
