@font-face{font-family:Cormorant;src:url('assets/fonts/CormorantInfant-variable.ttf')}@font-face{font-family:Outfit;src:url('assets/fonts/Outfit-variable.ttf')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:#f8f8f1;color:#18383b;font:18px/1.7 Outfit,Arial,sans-serif}a{color:inherit;text-underline-offset:4px}a:focus-visible{outline:3px solid #b76c2e;outline-offset:5px}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:white;z-index:5}header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;max-width:1500px;margin:auto;padding:1.5rem 3.5vw;border-bottom:1px solid #c9d5ca}.brand{font:32px/1.05 Cormorant,Georgia,serif;text-decoration:none}.brand em{display:block;color:#2B6970}nav{display:flex;gap:1.5rem;flex-wrap:wrap}header nav a{font-size:15px;text-decoration:none}.location,.kicker,.section-label{font-size:12px;letter-spacing:.15em}.location{color:#2B6970}.panorama{position:relative;margin:1.5rem 2vw 0}.panorama figure{margin:0}.panorama img{height:60vh;min-height:360px;max-height:720px;object-fit:cover;object-position:center 56%}.panorama figcaption{background:#f8f8f1;padding:.6rem 1rem}.panorama-title{position:absolute;top:2.5rem;left:3vw;background:#f8f8f1ed;padding:1.5rem 2.5rem;max-width:90%}h1,h2{font-family:Cormorant,Georgia,serif;font-weight:500;line-height:1.05}h1{font-size:clamp(44px,5.3vw,82px);margin:1rem 0 1.5rem}h2{font-size:36px;margin:1rem 0}img{display:block;max-width:100%;height:auto}figure{margin:0}figcaption{font:12px/1.5 Outfit,Arial,sans-serif;padding:.7rem 0;color:#355459}figcaption a{white-space:nowrap}.intro{max-width:1160px;margin:4rem auto;display:grid;grid-template-columns:1fr 1fr;gap:5vw;padding:0 1.5rem}.intro h2{font-size:48px;margin:0}.intro p{margin:0}.route-index,.listing-title,.route-card{max-width:1160px;margin:2.5rem auto;padding:0 1.5rem}.section-label{display:flex;justify-content:space-between;border-top:1px solid #a0b7ad;padding-top:1rem;gap:1rem}.section-label a{letter-spacing:0;font-size:14px}.route-card{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;background:#e8ede1;padding:2rem;align-items:center}.route-card h2{font-size:48px}.route-card p{max-width:40ch}.route-card figure img{width:100%;aspect-ratio:4/3;object-fit:cover}.text-link{font-size:15px}.listing-title{padding-top:2rem}.listing-title h1{max-width:15ch}.breadcrumb{max-width:1250px;margin:2rem auto;padding:0 2rem;font-size:14px}.article-heading{max-width:1000px;margin:3rem auto;padding:0 2rem}.article-heading p{font-size:22px;max-width:68ch}.article-heading small{font-size:12px;color:#49605f}.guide main>figure{max-width:1250px;margin:2rem auto;padding:0 2rem}.guide main>figure img{width:100%;max-height:620px;object-fit:cover;object-position:center 55%}.reading-grid{display:grid;grid-template-columns:260px minmax(0,720px);max-width:1160px;gap:4rem;margin:3rem auto 5rem;padding:0 2rem}aside{align-self:start;position:sticky;top:1.5rem;background:#D0D9C5;padding:1.5rem}aside h2{font-size:27px;margin-top:0}aside a{display:block;font-size:14px;margin:1rem 0}.reading h2{font-size:38px}.reading p{margin:1.2rem 0 1.7rem}.reading section{margin-bottom:3rem}.sources{border-top:1px solid #a0b7ad;padding-top:1rem;font-size:14px}.sources h2{font-size:26px}.sources li{margin:.7rem 0;overflow-wrap:anywhere}.policy{max-width:860px;padding:1rem 2rem;margin:3rem auto 5rem}.policy h1{font-size:58px}.policy h2{font-size:34px;margin-top:2rem}address{font-style:normal;background:#e5eadf;padding:1.5rem;margin:2rem 0;overflow-wrap:anywhere}.agoda{display:inline-block;background:#F97316;color:#172C29;font-weight:600;padding:.8rem 1.2rem;text-decoration:none}footer{padding:3rem 5vw;border-top:1px solid #9bb7ad;background:#2B6970;color:white;display:grid;grid-template-columns:1fr 1fr;gap:2rem}footer .brand{font-size:32px}footer p{grid-column:1/-1;font-size:13px}footer nav{font-size:14px}@media(max-width:800px){header{padding:1.2rem;align-items:flex-start}.location{display:none}.brand{font-size:27px}header nav{gap:.8rem;font-size:14px;max-width:170px;justify-content:flex-end}.panorama{margin:1rem 0}.panorama-title{top:1.5rem;left:1rem;padding:1rem 1.4rem}.panorama-title h1{font-size:48px}.panorama-title .kicker{font-size:10px}.panorama img{height:520px;min-height:0;object-position:45% 56%}.intro{grid-template-columns:1fr;gap:1rem;margin:2rem auto}.intro h2{font-size:38px}.route-card{grid-template-columns:1fr;gap:1rem;margin:1.2rem;padding:1.2rem}.route-card h2{font-size:40px}.section-label{flex-wrap:wrap}.article-heading{margin:1.5rem auto;padding:0 1.3rem}.article-heading h1{font-size:46px}.article-heading p{font-size:19px}.guide main>figure{padding:0 1.3rem}.reading-grid{grid-template-columns:1fr;padding:0 1.3rem;gap:1.5rem;margin:2rem auto}aside{position:static;padding:1rem 1.2rem}aside a{margin:.5rem 0}.reading h2{font-size:34px}.policy{padding:0 1.3rem}.policy h1{font-size:44px}.policy h2{font-size:30px}footer{grid-template-columns:1fr;padding:2rem 1.3rem;gap:1.5rem}.breadcrumb{padding:0 1.3rem}.sources ul{padding-left:1.2rem}}

.route-switch{max-width:1160px;margin:2rem auto;padding:0 1.5rem;gap:.7rem}.route-switch a{padding:.5rem 1.1rem;border:1px solid #2B6970;border-radius:2rem;text-decoration:none;font-size:15px}.route-group{max-width:1160px;margin:3rem auto;padding:0 1.5rem}.route-group>.section-label h2{font-size:26px;letter-spacing:0;margin:0}.route-group .route-card{padding:1.5rem;margin:1.5rem 0}.reading>figure{margin:1rem 0 2rem}.reading>figure img{width:100%}.related{border-top:1px solid #a0b7ad;padding-top:1rem}.related h2{font-size:26px}@media(max-width:800px){.route-group{padding:0 1.2rem}.route-group .route-card{padding:1rem;gap:1rem}.route-group>.section-label h2{font-size:25px}}

.hotel-portal,.hotel-list{max-width:1160px;margin:4rem auto;padding:0 1.5rem}.hotel-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.hotel-card{background:#e8ede1;padding:1.3rem}.hotel-card h2{font-size:36px}.hotel-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.hotel>main>figure{max-width:900px;margin:2rem auto;padding:0 2rem}.hotel main>figure img{width:100%}.hotel-reading{max-width:790px;margin:3rem auto 5rem;padding:0 2rem}.hotel-reading .reading>figure img{width:100%;max-width:640px;margin:auto}.hotel-reading .reading>figure{max-width:640px;margin:2rem auto}.hotel-opening{max-width:1320px;margin:3rem auto;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:3rem;padding:0 2rem}.hotel-opening .article-heading{padding:0;margin:0}.hotel-opening h1{font-size:clamp(38px,4.6vw,68px)}.hotel-opening img{width:100%}.T14-H3-garden-retreat .article-heading{text-align:center}.T14-H3-garden-retreat .article-heading p{margin-left:auto;margin-right:auto}.disclosure{font-size:13px}.sticky-booking{display:none}.pagination{justify-content:center;margin:2rem}.pagination a{padding:.4rem .9rem;border:1px solid #2b6970}.pagination [aria-current]{background:#2b6970;color:white}
@media(max-width:1023px){body.hotel{padding-bottom:calc(108px + env(safe-area-inset-bottom))}.sticky-booking{display:flex;position:fixed;z-index:10;bottom:0;left:0;right:0;top:auto;max-width:none;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:14px max(16px,env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#18383b;color:white;border-top:1px solid #d0d9c5;box-shadow:0 -3px 20px #18383b22}.sticky-booking strong{font-size:15px;line-height:1.25;max-width:55%;overflow-wrap:anywhere}.sticky-booking a{display:block;margin:0;white-space:nowrap;background:#f97316;color:#172c29;padding:12px 14px;text-decoration:none;font-size:15px;font-weight:600;flex-shrink:0}}
@media(max-width:800px){.hotel-cards{grid-template-columns:1fr}.hotel-opening{display:block;margin:1.5rem auto;padding:0 1.3rem}.hotel-opening h1{font-size:46px}.hotel-opening figure{margin-top:2rem}.hotel-reading{padding:0 1.3rem;margin:2rem auto}.hotel>main>figure{padding:0 1.3rem}.hotel-portal,.hotel-list{padding:0 1.2rem;margin:2rem auto}.hotel-card h2{font-size:34px}.hotel-card{padding:1rem}.hotel-portal>.section-label h2{font-size:30px}}
