@font-face{font-family:Noto;src:url(assets/NotoSansTC.woff2)}@font-face{font-family:Inter;src:url(assets/InterVariable.woff2)}:root{--ink:#25313e;--yellow:#ffc832;--mint:#d8e6dc;--cream:#faf8f1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,Noto,sans-serif;font-size:15px;line-height:1.8}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer;color:inherit}button{border:0;background:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #087a78;outline-offset:5px}img{display:block;width:100%;object-fit:cover}svg{width:24px;height:24px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.25;letter-spacing:-.045em}h1{font-size:clamp(48px,6.6vw,96px);font-weight:850}h2{font-size:clamp(32px,3.5vw,52px);font-weight:800}h3{font-size:24px}p{margin-top:22px}.wrap{max-width:1240px;margin:auto;padding-left:48px;padding-right:48px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;margin:0 0 24px;line-height:1.5}.quiet{display:block;font-size:11px;color:#66716f;margin-top:22px}.skip{position:fixed;left:12px;top:-80px;background:white;z-index:200;padding:12px}.skip:focus{top:10px}header{height:88px;display:flex;align-items:center;gap:32px;padding:0 4%;background:var(--cream);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:25px;letter-spacing:.12em;line-height:1.2}.brand svg{width:34px;height:34px;color:#bb8400}.brand small{display:block;font-size:8px;letter-spacing:.2em;margin-top:6px}nav{display:flex;gap:30px;margin-left:auto;font-size:13px}nav a[aria-current]{border-bottom:2px solid #d89900}.nav-cta{font-size:12px;background:var(--yellow);padding:10px 20px}.motion{border:1px solid #bec3bb;border-radius:50%;width:33px;height:33px;font-size:13px}.dark-button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ink);color:white;padding:14px 24px;font-size:13px;transition:transform .25s,box-shadow .25s}.dark-button:hover{transform:translateY(-3px);box-shadow:0 10px 20px #25313e25}.line-link{display:inline-block;border-bottom:1px solid #8c9389;padding:8px 0;font-size:13px;font-weight:600}.hero{height:690px;position:relative;margin-bottom:180px}.hero-image{height:100%;object-position:center 54%}.hero-wedge{position:absolute;inset:0;background:linear-gradient(100deg,#ffc832f7,#ffc832dd);clip-path:polygon(0 0,36% 0,63% 100%,0 100%)}.hero-copy{position:absolute;left:7%;top:70px;z-index:2}.hero-copy p:not(.eyebrow){margin:22px 0}.hero-ticket{position:absolute;right:7%;top:100px;width:255px;background:var(--cream);padding:24px;box-shadow:10px 20px 40px #192a3440;transform:rotate(4deg);z-index:3;transition:transform .5s}.hero-ticket:hover{transform:rotate(0) translateY(-8px)}.ticket-top{display:flex;justify-content:space-between;font-size:10px;border-bottom:1px dashed #9ba39a;padding-bottom:15px;margin-bottom:25px;letter-spacing:.1em}.hero-ticket h2{font-size:30px}.hero-ticket ol{list-style:none;padding:0}.hero-ticket li{display:flex;gap:12px;margin:20px 0;font-size:12px}.hero-ticket li>span{border:1px solid #c3c8bc;border-radius:50%;width:30px;height:30px;text-align:center}.hero-ticket small{display:block;font-size:9px;color:#6d7872}.hero-ticket>a{font-size:11px;border-top:1px dashed #9ba39a;display:block;padding-top:15px}.hero-bike{position:absolute;width:490px;bottom:-125px;left:11%;z-index:5;filter:drop-shadow(0 20px 12px #28352a22)}.hero-bike img{object-fit:contain;height:310px}.bike-stamp{position:absolute;right:-12px;top:70px;background:var(--ink);color:white;border-radius:50%;width:93px;height:93px;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(12deg);font-size:12px}.bike-stamp b{font-size:17px}.hero-coordinate{position:absolute;right:7%;bottom:23px;color:white;font-size:10px;letter-spacing:.2em}.intro{padding-top:35px;padding-bottom:140px;text-align:center;position:relative}.intro>p:not(.eyebrow){color:#64716b}.service-icons{display:flex;justify-content:center;gap:50px;margin-top:45px;font-size:12px}.service-icons span{display:flex;align-items:center;gap:10px}.service-icons svg{width:34px;height:34px}.room-section{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;align-items:center;padding-bottom:160px}.room-stage{position:relative;padding:0 0 80px;min-height:560px}.room-yellow{width:72%;background:var(--yellow);padding:48px 35px 225px;position:relative}.giant-number{position:absolute;right:22px;top:16px;font-size:85px;color:#fff6;line-height:1}.room-yellow .eyebrow{position:relative;font-size:9px;margin:30px 0 15px}.room-yellow h3{position:relative}.room-yellow dl{font-size:12px;margin:24px 0}.room-yellow dl div{display:flex;gap:16px;margin:6px 0}.room-yellow dd{margin:0;font-weight:650}.room-photo{position:absolute;left:45px;right:-18px;bottom:0;box-shadow:0 25px 35px #23312620}.room-photo img{aspect-ratio:1.35}.room-photo span{position:absolute;bottom:14px;left:20px;color:white;background:#25313ecc;padding:5px 12px;font-size:9px;letter-spacing:.1em}.room-arrows{position:absolute;right:20px;top:15px;display:flex;gap:15px;z-index:2}.room-arrows button{font-size:22px}.room-copy>p{color:#61706b}.room-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0 18px}.room-tabs button{font-size:11px;border:1px solid #c9cec5;padding:9px}.room-tabs button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.wander{display:grid;grid-template-columns:.85fr 1.3fr;gap:65px;align-items:center;padding-bottom:150px}.wander-copy>p{color:#64716b}.bike-note{display:flex;gap:15px;align-items:center;margin-top:35px}.bike-note svg{width:40px;height:40px}.bike-note strong{font-size:12px}.bike-note small{display:block;font-size:9px}.map-scene{position:relative;padding:40px 0 30px;min-height:530px}.city-map{width:115%;height:420px;position:absolute;left:-8%;top:70px;transform:rotate(-4deg)}.day-ticket{position:relative;margin-left:30%;width:265px;background:var(--yellow);padding:32px 24px;box-shadow:12px 22px 35px #28382b25}.day-ticket h3{font-size:30px}.route-tabs{display:flex;gap:5px;margin-top:22px}.route-tabs button{font-size:10px;padding:6px;border-bottom:1px solid #8c721c}.route-tabs button[aria-pressed=true]{background:var(--ink);color:white}.day-ticket #route-copy{min-height:150px;font-size:12px}.day-ticket #route-copy small{display:block;margin:13px 0;font-size:10px}.day-ticket .dark-button{width:100%;font-size:11px;padding:12px}.map-note{position:absolute;bottom:0;right:15px;font-size:10px;color:#637068}.taste{background:var(--mint);display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:8%;padding:90px 8% 100px;position:relative}.taste:before{content:'';position:absolute;top:-35px;left:0;width:100%;height:70px;background:var(--mint);transform:skewY(-2deg)}.taste-photo{position:relative;transform:rotate(-3deg)}.taste-photo img{aspect-ratio:1.1;box-shadow:0 18px 35px #253b2520}.food-label{position:absolute;bottom:-28px;right:-30px;background:var(--cream);padding:20px 30px;font-size:12px;transform:rotate(5deg);box-shadow:0 7px 15px #253b2515}.taste-copy{position:relative}.taste-copy>p{font-size:13px}.menu-notes{margin:25px 0}.menu-notes span{display:block;padding:10px 0;border-bottom:1px solid #b9cbbd;font-size:12px}.menu-notes b{margin-right:20px;font-family:Inter;color:#6a7d6e}.escapes{display:grid;grid-template-columns:1.1fr 1fr;gap:65px 45px;padding-top:150px;padding-bottom:130px}.escape-title{align-self:center;padding:30px}.escape{position:relative}.escape img{height:350px;transition:transform .7s,filter .7s}.escape:hover img{transform:translateY(-8px);filter:saturate(1.1)}.escape.sea{margin-top:0}.escape.mountain{margin-top:-25px}.escape.mountain img{height:450px}.escape-label{position:relative;margin:-35px 20px 0 0;background:var(--cream);display:flex;align-items:center;gap:20px;padding:20px 0;z-index:2}.escape-label>b{font-size:64px;line-height:1;color:#e5ae16;font-weight:500}.escape-label h3{font-size:17px;margin-top:6px}.escape-label small{font-size:9px;letter-spacing:.1em}.escape-label button{margin-left:auto;font-size:25px}.escape-foot{align-self:center;padding:30px;color:#6e7870;font-size:12px}.heart{position:absolute;right:16px;top:16px;background:var(--cream);border-radius:50%;width:40px;height:40px;z-index:4;font-size:24px;box-shadow:0 3px 15px #0001}.heart[aria-pressed=true]{color:#ba4b31;background:#fff0d0}.seasons{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;padding-bottom:140px}.season-list{border-top:1px solid #a5ada2}.season-list details{border-bottom:1px solid #a5ada2;padding:24px 0}.season-list summary{display:flex;gap:18px;align-items:center;cursor:pointer;list-style:none}.season-list summary span{color:#a17b14;font-size:12px}.season-list summary b{font-size:17px}.season-list summary small{font-size:9px;margin-left:auto;letter-spacing:.12em}.season-list summary i{font-style:normal;font-size:22px}.season-list details[open] summary i{transform:rotate(45deg)}.season-list p{font-size:13px;color:#637269}.season-list details>a{font-size:11px;border-bottom:1px solid #8d9a8f;display:inline-block;margin-top:12px}footer{background:var(--ink);color:var(--cream);padding:100px 7% 25px;position:relative}footer:before{content:'';position:absolute;inset:-30px 0 auto;height:70px;background:var(--ink);transform:skewY(-2deg)}.footer-main{display:grid;grid-template-columns:1.2fr 1fr .7fr;gap:60px;position:relative}.footer-main h2{font-size:45px}.footer-main p{font-size:12px;color:#b6c0ba}.footer-main>div:last-child a{display:block;font-size:12px;margin:15px 0}.footer-bottom{border-top:1px solid #ffffff25;display:flex;justify-content:space-between;gap:25px;margin-top:75px;padding-top:20px;font-size:9px;color:#bbc2bd}.footer-bottom p{margin:0}.page-hero{display:grid;grid-template-columns:1fr 1fr;position:relative;background:var(--yellow);align-items:center;min-height:480px}.page-hero>div{padding:65px 12%}.page-hero img{height:480px;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)}.vertical-word{position:absolute;right:20px;top:20px;writing-mode:vertical-rl;font-size:11px;color:white;letter-spacing:.2em}.city-content{padding-top:60px;padding-bottom:120px}.activity-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-bottom:55px}.category-tabs{display:flex;gap:5px;flex-wrap:wrap}.category-tabs button{padding:9px 15px;border:1px solid #b8c2b7;font-size:12px}.category-tabs button[aria-pressed=true]{background:var(--ink);color:white}.activity-toolbar>p{font-size:11px;margin:0}.activity-toolbar>a{margin-left:auto}.activity-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px 55px;align-items:start}.activity-card{position:relative}.activity-card:nth-child(even){margin-top:70px}.activity-card img{height:310px;transition:transform .5s}.activity-card:hover img{transform:translateY(-7px)}.activity-card .card-copy{position:relative;background:var(--cream);margin:-30px 25px 0 0;padding:24px 0 0}.activity-card .eyebrow{margin-bottom:12px}.activity-card h2{font-size:25px}.activity-card p{font-size:12px;color:#627066}.card-actions{display:flex;gap:22px;margin-top:15px}.sources{margin-top:100px;border-top:1px solid #b9c4b8;padding-top:40px}.sources h2{font-size:25px}.sources p{font-size:12px;max-width:800px}.sources div{display:flex;flex-wrap:wrap;gap:22px;margin:20px 0;font-size:12px}.sources small{font-size:10px}.stay-heading{padding-top:60px;padding-bottom:65px;display:grid;grid-template-columns:1.4fr 1fr;gap:0 70px}.stay-heading .eyebrow{grid-column:1/-1}.stay-heading>p:last-child{align-self:end;color:#637267}.planner{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;padding-bottom:140px}.planner form{border-top:2px solid var(--ink);padding-top:30px}.planner label{display:block;font-size:12px;margin-bottom:20px}.planner input,.planner select,.planner textarea{display:block;width:100%;border:1px solid #bfc7bc;background:#fffdf8;padding:13px 10px;margin-top:8px;color:var(--ink);border-radius:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field-note,#form-status{font-size:11px;color:#6b776b;margin:0 0 20px}.form-actions{display:flex;flex-wrap:wrap;gap:18px;margin:25px 0}.plan-ticket{background:var(--yellow);padding:25px;align-self:start;box-shadow:12px 18px 30px #243a2920;transform:rotate(1deg)}.plan-ticket>img{height:240px}.plan-ticket-inner{padding:25px 10px}.plan-ticket h2{font-size:29px}#estimate{font-size:32px;font-weight:700;margin:20px 0 0}#estimate-detail{font-size:10px;display:block;min-height:35px}.plan-ticket hr{border:0;border-top:1px dashed #8f802c;margin:25px 0}.plan-list-heading{display:flex;justify-content:space-between;align-items:center}.plan-list-heading h3{font-size:17px}.plan-list-heading a{font-size:10px}#plan-items{padding-left:20px;font-size:12px}#plan-items li{padding:10px 0;border-bottom:1px solid #b99a3160}#plan-items button{float:right;font-size:12px}dialog{padding:0;border:0;background:var(--cream);color:var(--ink);max-width:780px;width:calc(100% - 40px);max-height:88vh;box-shadow:0 30px 90px #0005}dialog::backdrop{background:#17282dcc;backdrop-filter:blur(5px)}dialog .close{position:absolute;right:12px;top:12px;background:var(--cream);border-radius:50%;width:36px;height:36px;font-size:25px;z-index:3}.dialog-photo{height:290px}.dialog-body{padding:35px}.dialog-body h2{font-size:32px}.dialog-body p{font-size:13px}.dialog-body .tip{padding:15px;background:var(--mint);font-size:11px}.dialog-actions{display:flex;align-items:center;gap:25px;margin-top:25px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,30px);background:var(--ink);color:white;padding:12px 25px;font-size:12px;z-index:100;opacity:0;pointer-events:none;transition:.25s}#toast.show{opacity:1;transform:translate(-50%,0)}.js-motion .reveal{opacity:0;transform:translateY(35px);transition:opacity .8s,transform .8s}.js-motion .reveal.visible{opacity:1;transform:none}.motion-off *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-off .reveal{opacity:1!important;transform:none!important}
@media(min-width:1000px){.hero-bike{animation:bikefloat 7s ease-in-out infinite}@keyframes bikefloat{50%{transform:translateY(-9px)}}}.empty-state{grid-column:1/-1;padding:60px;border:1px dashed #abb7a7;text-align:center}
@media(max-width:1000px){header{gap:18px}nav{gap:16px}.wrap{padding-left:30px;padding-right:30px}.hero-ticket{right:4%;width:230px}.hero-copy{left:5%}.hero-bike{left:4%;width:430px}.room-section,.wander{gap:45px}.room-yellow{width:90%;padding-left:25px}.room-photo{left:20px;right:0}.day-ticket{margin-left:15%}.taste{gap:6%;padding-left:5%;padding-right:5%}.planner{gap:45px}.seasons{gap:45px}}
@media(max-width:700px){header{height:76px;padding:0 20px;gap:12px;flex-wrap:wrap}.brand{font-size:22px}.brand svg{width:28px}header nav{order:5;width:100%;justify-content:center;background:var(--cream);padding:10px 0;margin:0;font-size:11px;position:absolute;top:76px;left:0}header .motion{margin-left:auto}.nav-cta{font-size:10px;padding:9px 12px}main{padding-top:42px}.wrap{padding-left:24px;padding-right:24px}.hero{height:770px;margin-bottom:150px}.hero-image{object-position:63% 50%;height:430px;position:absolute;top:340px}.hero-wedge{clip-path:polygon(0 0,100% 0,100% 48%,0 61%);background:var(--yellow)}.hero-copy{top:32px;left:25px}.hero-copy h1{font-size:56px}.hero-copy .eyebrow{font-size:9px;margin-bottom:15px}.hero-copy>p:not(.eyebrow){font-size:12px;margin:15px 0}.hero-copy .dark-button{font-size:11px;padding:11px 17px}.hero-ticket{top:490px;right:22px;width:180px;padding:18px;transform:rotate(4deg)}.hero-ticket .eyebrow{display:none}.hero-ticket h2{font-size:25px}.hero-ticket ol{margin:12px 0}.hero-ticket li{margin:10px 0;font-size:10px;gap:7px}.hero-ticket li>span{width:23px;height:23px}.hero-ticket small{font-size:8px}.hero-ticket>a{font-size:9px}.ticket-top{margin-bottom:15px;font-size:8px}.hero-bike{width:280px;left:-22px;bottom:-130px}.hero-bike img{height:200px}.bike-stamp{width:70px;height:70px;right:25px;top:105px;font-size:9px}.bike-stamp b{font-size:13px}.hero-coordinate{display:none}.intro{padding-top:30px;padding-bottom:85px}.intro h2{font-size:29px}.intro>p{font-size:12px}.service-icons{gap:16px;flex-wrap:wrap;margin-top:28px}.service-icons span{font-size:9px;gap:6px}.service-icons svg{width:25px}.room-section,.wander{grid-template-columns:1fr;gap:40px;padding-bottom:95px}.room-stage{min-height:490px;padding-bottom:70px}.room-yellow{width:80%;padding:35px 25px 220px}.room-photo{left:35px;right:0}.room-photo img{aspect-ratio:1.35}.room-copy h2{font-size:38px}.room-copy>p{font-size:13px}.room-copy .eyebrow{font-size:10px}.wander-copy h2{font-size:36px}.wander-copy>p{font-size:13px}.map-scene{min-height:500px;margin-top:-15px}.city-map{left:-5%;width:108%;height:350px;top:95px}.day-ticket{width:225px;margin-left:auto;margin-right:12px;padding:25px 20px}.day-ticket h3{font-size:27px}.map-note{font-size:8px;right:0}.taste{grid-template-columns:1fr;padding:65px 25px 70px;gap:70px}.taste-photo{margin:0 10px}.food-label{right:-10px;font-size:10px;padding:15px 20px}.taste-copy h2{font-size:37px}.escapes{padding-top:85px;padding-bottom:80px;gap:35px;grid-template-columns:1fr}.escape-title{padding:0 0 10px}.escape-title h2{font-size:37px}.escape img,.escape.mountain img{height:310px}.escape.mountain{margin:0 0 0 25px}.escape-label{margin-right:0;gap:13px}.escape-label>b{font-size:50px}.escape-label h3{font-size:14px}.escape-label small{font-size:8px}.escape-foot{padding:0;margin:0;font-size:10px}.seasons{grid-template-columns:1fr;gap:40px;padding-bottom:85px}.season-list summary{gap:10px}.season-list summary b{font-size:15px}.season-list summary small{font-size:8px}.footer-main{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-main>div:first-child{grid-column:1/-1}.footer-main h2{font-size:39px}.footer-main .brand{font-size:20px}.footer-main p,.footer-main>div:last-child a{font-size:10px}.footer-bottom{display:block;margin-top:45px;font-size:8px}.footer-bottom a{display:block;margin-top:15px}footer{padding:65px 25px 25px}.page-hero{grid-template-columns:1fr}.page-hero>div{padding:40px 25px}.page-hero h1{font-size:50px}.page-hero p{font-size:12px}.page-hero img{height:260px;clip-path:polygon(0 8%,100% 0,100% 100%,0 100%)}.vertical-word{top:auto;bottom:20px}.city-content{padding-top:35px;padding-bottom:80px}.activity-toolbar{gap:15px;margin-bottom:35px}.category-tabs button{font-size:10px;padding:7px 12px}.activity-toolbar>a{font-size:11px}.activity-grid{grid-template-columns:1fr;gap:45px}.activity-card:nth-child(even){margin-top:0;margin-left:18px}.activity-card img{height:270px}.activity-card h2{font-size:23px}.sources{margin-top:65px}.sources h2{font-size:23px}.stay-heading{display:block;padding-top:40px;padding-bottom:40px}.stay-heading h1{font-size:49px}.stay-heading>p:last-child{font-size:12px}.planner{grid-template-columns:1fr;gap:40px;padding-bottom:85px}.plan-ticket{transform:none;padding:20px}.form-row{gap:12px}.planner input,.planner select,.planner textarea{font-size:14px}.form-actions{gap:13px}.form-actions .line-link{font-size:11px}.dialog-photo{height:210px}.dialog-body{padding:25px}.dialog-body h2{font-size:26px}.dialog-actions{gap:15px;flex-wrap:wrap}#toast{width:max-content;max-width:90%;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}
/* Keep the room facts clear while the photograph overlaps only the empty colour field. */
.room-stage{padding-bottom:0}.room-yellow{padding-bottom:100px}.room-photo{position:relative;left:45px;right:auto;bottom:auto;margin-top:-65px;width:calc(100% - 27px)}
@media(max-width:1000px){.room-photo{left:20px;width:calc(100% - 20px)}}
@media(max-width:700px){.room-stage{min-height:0}.room-yellow{padding-bottom:95px}.room-photo{left:35px;width:calc(100% - 35px)}}
