:root{--navy:#123c49;--deep:#092d38;--gold:#c7a373;--ink:#173a46;--muted:#576d75;--sea:#edf4f5;--paper:#f5f5f0;--line:#dbe4e5;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:white;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,.menu-heading{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1;letter-spacing:-.035em;margin:0 0 1rem}h1{font-size:clamp(3.5rem,6.8vw,6.8rem)}h2{font-size:clamp(2.5rem,4.6vw,4.6rem)}h3{font-size:1.8rem;line-height:1.2}p{margin:0 0 1.3rem}figure{margin:0}strong{font-weight:600}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #bf9048;outline-offset:5px}[hidden]{display:none!important}.container{width:min(1280px,88vw);margin-inline:auto}.content-narrow{width:min(900px,88vw);margin:auto}.eyebrow{font-size:.875rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;margin-bottom:1.4rem}.section{padding:7rem 0}.section-soft{background:var(--sea)}.section-sand{background:var(--paper)}.section-dark{background:var(--navy);color:white}.section-head{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:3rem}.section-head>div{max-width:800px}.section-head p{color:var(--muted)}.section-head .eyebrow{color:var(--ink)}.section-head .text-link{white-space:nowrap;margin-bottom:.8rem}.section-intro{max-width:350px;margin-bottom:.8rem}.lead{font-size:1.5rem;line-height:1.45}.text-link{display:inline-block;border-bottom:1px solid #8b6a39;padding-bottom:.25rem;font-size:1rem}.text-link:hover{color:#816034}.text-link.light{border-color:var(--gold);color:white}.btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 1.5rem;border:1px solid transparent;border-radius:1px;font-size:.875rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;min-height:50px;transition:background .2s,color .2s}.btn-primary{background:var(--navy);color:white}.btn-primary:hover{background:var(--deep)}.btn-gold{background:var(--gold);color:var(--deep)}.btn-gold:hover{background:#dab98b}.btn-outline{background:transparent;border-color:currentColor}.btn-outline:hover{background:var(--ink);color:white}
/* Clear, fixed-height navigation */
.topbar{background:var(--deep);color:#dce9ec;padding:.4rem 0;font-size:.875rem}.topbar .container{display:flex;align-items:center;gap:1.5rem}.topbar span{margin-right:auto}.topbar a{white-space:nowrap}.hotel-header{position:sticky;top:0;z-index:30;background:white;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;gap:2rem;height:96px}.brand{display:block;flex:none}.brand-logo{height:78px;width:148px;object-fit:contain}.primary-nav{display:flex;gap:1.8rem;margin-left:auto;align-items:center}.primary-nav a{white-space:nowrap;font-size:.9375rem;padding:.5rem 0;border-bottom:1px solid transparent}.primary-nav a:hover,.primary-nav a[aria-current=page]{border-color:var(--gold)}.header-actions{display:flex;align-items:center;gap:1.5rem}.header-book{white-space:nowrap}.menu-toggle{display:flex;gap:.7rem;align-items:center;padding:.8rem 0;color:var(--navy);background:none;border:0;min-height:44px;min-width:70px;font-size:.875rem}.menu-lines{width:22px;height:12px;border-top:1px solid;border-bottom:1px solid;transition:transform .25s}.menu-toggle[aria-expanded=true] .menu-lines{transform:rotate(-45deg)}.full-menu{position:absolute;top:100%;left:0;right:0;background:var(--deep);color:white;max-height:calc(100dvh - 96px);overflow:auto;box-shadow:0 20px 50px #0003}.menu-inner{padding:3rem 0;display:grid;grid-template-columns:1fr 1.6fr;gap:4rem}.menu-heading{font-size:3rem}.full-menu ul{display:grid;grid-template-columns:1fr 1fr;gap:0 2rem;padding:0;margin:0;list-style:none}.full-menu li{border-bottom:1px solid #ffffff25}.full-menu li a{display:block;padding:.9rem 0;font-size:1.2rem}.full-menu li a:hover,.full-menu li a[aria-current=page]{color:#e3c399}.skip-link{position:fixed;left:1rem;top:-100px;z-index:100;background:white;padding:1rem}.skip-link:focus{top:1rem}
/* The coast takes centre stage */
.hero{position:relative;min-height:660px;height:calc(100svh - 130px);max-height:920px;display:flex;align-items:center;color:white;isolation:isolate;overflow:hidden}.hero-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#082b37b5,#082b3720 80%),linear-gradient(0deg,#082b374d,transparent 45%);z-index:-1}.hero-content{padding:4rem 0 6rem}.hero h1{max-width:920px;line-height:1.06;margin-bottom:1.6rem}.hero-content>p:not(.eyebrow){font-size:1.15rem;line-height:1.7;color:#f1f5f5}.hero-actions{display:flex;align-items:center;gap:2rem;margin-top:2rem;flex-wrap:wrap}.hero-link{border-bottom:1px solid #fff9;padding:.4rem 0;font-size:1rem}.hero-caption{position:absolute;bottom:2rem;right:6vw;letter-spacing:.15em;text-transform:uppercase;font-size:.875rem}.welcome-layout{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.welcome-layout>div:last-child{max-width:560px}.welcome-layout>div:last-child>p:not(.lead){color:var(--muted)}.coast-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:4rem;padding-top:2rem;border-top:1px solid var(--line)}.coast-facts span{font-size:.875rem;letter-spacing:.06em;text-transform:uppercase}.stays-section{background:var(--paper)}.stay-pair{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.image-story{display:block}.image-story:nth-child(2){padding-top:4.5rem}.story-image{position:relative;overflow:hidden}.story-image img{height:540px;width:100%;object-fit:cover;transition:transform .7s}.image-story:first-child .story-image img{object-position:center 52%}.image-story:nth-child(2) .story-image img{height:440px}.image-story:hover img{transform:scale(1.03)}.image-label{position:absolute;bottom:1.5rem;left:1.5rem;color:white;background:#092d38b5;padding:.4rem .7rem;font-size:.875rem;letter-spacing:.1em;text-transform:uppercase}.story-copy{padding:1.7rem 0 0;max-width:530px}.story-copy p{color:var(--muted)}.dining-feature{display:grid;grid-template-columns:1.05fr 1fr;background:var(--deep);color:white;min-height:660px}.feature-photo img{width:100%;height:100%;object-fit:cover}.feature-copy{padding:5rem clamp(2rem,6vw,6rem);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.feature-copy h2{font-size:clamp(2.5rem,4vw,4.1rem)}.feature-copy p:not(.eyebrow){color:#d7e5e8;max-width:490px}.feature-actions{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;margin-top:1rem}.sea-layout{display:grid;grid-template-columns:.8fr 1.25fr;gap:6rem;align-items:center}.sea-layout p:not(.eyebrow){color:var(--muted);max-width:420px}.sea-layout img{height:420px;object-fit:cover;width:100%}.sea-layout figcaption{color:var(--muted);font-size:.875rem;margin-top:.8rem}.occasion-row{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}.occasion-row>a{border-top:1px solid #afc3c9;padding-top:1.4rem}.number{display:block;color:#8c6c3f;font-size:.875rem;margin-bottom:2rem}.occasion-row h3{max-width:300px}.occasion-row p{color:var(--muted)}.explore-feature{text-align:center;max-width:850px}.explore-feature>p:not(.eyebrow){max-width:650px;margin:0 auto 1.5rem;color:var(--muted)}.place-tags{display:flex;justify-content:center;gap:1rem 2rem;flex-wrap:wrap;padding:1rem 0 2rem;font-size:.875rem;text-transform:uppercase;letter-spacing:.06em}.booking-finale{background:var(--deep);color:white;padding:4rem 0;border-bottom:1px solid #ffffff25}.finale-layout{display:flex;justify-content:space-between;align-items:center;gap:3rem}.finale-layout h2{font-size:3.3rem}.finale-layout p{color:#d7e5e8}.finale-layout p:last-child{margin:0}
/* Inner pages */
.page-hero{min-height:440px;color:white;display:flex;align-items:center;padding:5rem 0;background:linear-gradient(90deg,#082b37df,#082b3760),var(--page-image,url('assets/hero.webp')) center/cover}.page-hero h1{font-size:clamp(3rem,6vw,5.7rem);max-width:1050px}.page-hero p:not(.eyebrow){font-size:1.15rem;max-width:690px;color:#e5edef}.page-hero p:last-child{margin:0}.grid-4,.functions-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.card{background:white;overflow:hidden;border-bottom:1px solid var(--line)}.card img{height:280px;width:100%;object-fit:cover}.card-body{padding:1.6rem}.card p{color:var(--muted)}.card .btn{margin-top:.6rem}.badge{display:inline-block;font-size:.875rem;color:#846339;letter-spacing:.05em;margin-bottom:1rem}.room-grid{grid-template-columns:1fr 1fr;gap:3rem}.room-grid .card img{height:380px}.room-grid .card-body{padding:2rem}.room-grid .card-body p{max-width:500px}.room-grid h3{font-size:2.1rem}.function{padding:2rem;background:white;border-top:2px solid var(--gold)}.function h3{font-size:1.6rem}.function p{color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;min-height:500px}.split-media img{width:100%;height:100%;object-fit:cover}.split-copy{background:var(--navy);color:white;padding:clamp(2rem,5vw,5rem);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.split-copy h2{font-size:clamp(2.5rem,4vw,4rem)}.split-copy p{color:#d7e5e8}.split-copy .btn{margin-top:1rem}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:1rem 2rem;list-style:none;padding:0;margin:2rem 0}.feature-list li{border-bottom:1px solid var(--line);padding:.6rem 0}.notice{background:var(--paper);border-left:3px solid var(--gold);padding:1.3rem 1.6rem}.cta{padding:5rem 0;background:var(--deep);color:white;text-align:center}.cta h2{max-width:820px;margin-inline:auto}.cta p:not(.eyebrow){color:#d7e5e8}.cta .btn{margin-top:1rem}.contact-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:5rem}.contact-grid h2{font-size:2.6rem}.form{display:grid;gap:1.4rem}.form .two{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}.form label{display:block;margin-bottom:.5rem;font-size:.9375rem}.form input,.form textarea,.form select{display:block;width:100%;border:1px solid #b8cacf;border-radius:1px;background:white;color:var(--ink);padding:.85rem}.form .btn{justify-self:start}.form small{font-size:.875rem;color:var(--muted)}
/* Photograph gallery, with a working full-size viewer */
.accommodation-gallery{gap:2rem}.gallery-item figcaption{font-size:.875rem;color:var(--muted);margin-top:.75rem}.gallery-open{display:block;width:100%;padding:0;border:0;position:relative;background:var(--deep);overflow:hidden;text-align:left}.gallery-open img{height:330px;width:100%;object-fit:cover;transition:transform .6s}.gallery-open:hover img{transform:scale(1.04)}.gallery-open span{position:absolute;bottom:1rem;right:1rem;color:white;background:#092d38df;padding:.4rem .8rem;font-size:.875rem}.photo-dialog{padding:0;background:var(--deep);color:white;border:0;width:min(1000px,94vw);max-height:94dvh;overflow:auto}.photo-dialog::backdrop{background:#031a23eb}.photo-dialog>img{width:100%;height:min(65dvh,680px);object-fit:contain;background:#061e28}.photo-close{display:block;margin-left:auto;background:none;color:white;border:0;padding:.75rem 1.2rem;min-height:44px}.photo-caption{margin:1rem 1.5rem}.photo-controls{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1.5rem 1.5rem;gap:1rem}.photo-controls button{background:transparent;color:white;border:1px solid #ffffff70;padding:.6rem 1rem;min-height:44px}.photo-count{font-size:.875rem}
/* Footer */
footer{background:var(--deep);color:#d8e6e9;padding:4rem 0 1.5rem}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1.2fr 1.2fr;gap:2rem}footer .brand{background:white;padding:1rem;width:fit-content}footer .brand-tagline{display:block;color:var(--muted);font-size:.75rem;letter-spacing:.03em;margin-top:.5rem}footer h4{font-weight:500;color:white;font-size:1rem;margin:0 0 1rem}footer p,footer a{font-size:.9375rem}footer a:hover{text-decoration:underline;text-underline-offset:5px}footer .btn{font-size:.875rem}.footer-bottom{font-size:.875rem;color:#a0bac3;border-top:1px solid #ffffff25;padding-top:1.2rem;margin-top:3rem}
@media(max-width:1100px){.nav{gap:1.5rem}.primary-nav{gap:1.2rem}.header-actions{gap:1.2rem}.container{width:90vw}.grid-4,.functions-grid{grid-template-columns:repeat(2,1fr)}.welcome-layout,.sea-layout{gap:3rem}.occasion-row{gap:2rem}.footer-grid{grid-template-columns:1fr 1fr}.stay-pair{gap:2rem}}
@media(max-width:900px){.primary-nav{display:none}.header-actions{margin-left:auto}.section{padding:5rem 0}.hero{min-height:600px}.story-image img{height:460px}.image-story:nth-child(2) .story-image img{height:380px}.feature-copy{padding:3rem}.dining-feature{min-height:570px}.menu-inner{grid-template-columns:1fr 1.7fr;gap:2rem}.menu-heading{font-size:2.4rem}.full-menu ul{grid-template-columns:1fr}.grid-3{grid-template-columns:repeat(2,1fr)}.contact-grid{gap:3rem}.occasion-row{grid-template-columns:1fr}.occasion-row>a{display:grid;grid-template-columns:60px 1fr 1fr;gap:1rem;align-items:start}.occasion-row .number{grid-row:1/3}.occasion-row .text-link{grid-column:2;width:fit-content}.occasion-row p{margin:0}.coast-facts{gap:1rem}}
@media(max-width:680px){html{scroll-padding-top:90px}.topbar{display:none}.nav{height:84px;gap:.75rem}.brand-logo{width:110px;height:66px}.header-actions{gap:.8rem}.header-book{font-size:.75rem;letter-spacing:.03em;padding:.8rem .75rem;min-height:44px}.menu-toggle{min-width:44px;justify-content:center}.menu-toggle>span:first-child{display:none}.full-menu{max-height:calc(100dvh - 84px)}.menu-inner{display:block;padding:1.2rem 0}.menu-inner>div{display:none}.full-menu ul{display:block}.full-menu li a{font-size:1.15rem;padding:.7rem 0}.hero{height:calc(100svh - 84px);min-height:590px;max-height:820px}.hero-photo{object-position:52% center}.hero-shade{background:linear-gradient(90deg,#082b37a8,#082b374d),linear-gradient(0deg,#082b3766,transparent 50%)}.hero-content{padding:3rem 0 5rem}.hero h1{font-size:clamp(3.3rem,11vw,4.6rem)}.hero .eyebrow{font-size:.8rem;letter-spacing:.11em}.hero-content>p:not(.eyebrow){font-size:1rem}.hero-actions{gap:1.2rem}.hero-actions .btn{padding:1rem 1.1rem;font-size:.8rem}.hero-link{font-size:.9375rem}.hero-caption{left:5vw;right:auto;bottom:1.8rem;font-size:.75rem}.section{padding:3.8rem 0}h2{font-size:2.7rem}.welcome-layout,.sea-layout,.stay-pair,.dining-feature,.split,.contact-grid{grid-template-columns:1fr;gap:2rem}.welcome-layout{gap:1.5rem}.welcome-layout h2 br{display:none}.lead{font-size:1.3rem}.coast-facts{grid-template-columns:1fr 1fr;margin-top:2.5rem;padding-top:1.5rem;gap:1.2rem}.coast-facts span{font-size:.8rem;letter-spacing:.03em}.section-head{display:block;margin-bottom:2rem}.section-head .text-link,.section-head .btn{margin-top:.5rem}.section-head h2{margin-bottom:1.3rem}.image-story:nth-child(2){padding-top:.5rem}.story-image img,.image-story:nth-child(2) .story-image img{height:410px}.story-copy{padding-top:1.4rem}.story-copy h3{font-size:1.9rem}.dining-feature{gap:0}.feature-photo img{height:330px}.feature-copy{padding:3rem 5vw}.feature-copy h2{font-size:2.8rem}.feature-actions{gap:1.3rem}.sea-layout{gap:2.5rem}.sea-layout img{height:320px}.occasion-row>a{display:block}.occasion-row .number{margin-bottom:1.1rem}.occasion-row p{margin-bottom:1.2rem}.occasion-row{gap:2rem}.place-tags{gap:.75rem 1rem;font-size:.8rem}.finale-layout{display:block}.finale-layout h2{font-size:2.7rem}.finale-layout .btn{margin-top:1.5rem}.booking-finale{padding:3rem 0}.page-hero{min-height:340px;padding:3rem 0}.page-hero h1{font-size:clamp(2.8rem,9vw,4rem)}.page-hero p:not(.eyebrow){font-size:1rem}.room-grid,.grid-3,.grid-4,.functions-grid{grid-template-columns:1fr;gap:2rem}.room-grid .card img{height:340px}.room-grid .card-body{padding:1.5rem}.room-grid h3{font-size:1.9rem}.split{gap:0}.split-media img{height:330px}.split-copy{padding:2.5rem 5vw}.split-copy h2{font-size:2.7rem}.feature-list,.form .two{grid-template-columns:1fr}.feature-list{gap:.4rem}.form{gap:1.2rem}.contact-grid{gap:2.5rem}.gallery-open img{height:310px}.accommodation-gallery{grid-template-columns:1fr 1fr;gap:1rem}.accommodation-gallery .gallery-open img{height:210px}.gallery-open span{bottom:.5rem;right:.5rem;font-size:.75rem;padding:.3rem .5rem}.gallery-item figcaption{font-size:.8rem;line-height:1.5}.photo-controls{padding-inline:.75rem}.photo-controls button{font-size:.875rem;padding:.5rem .65rem}.cta{padding:3.5rem 0}.cta h2{font-size:2.6rem}.footer-grid{grid-template-columns:1fr 1fr;gap:2rem 1rem}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{margin-top:2rem}footer{padding:3rem 0 1.3rem}}
@media(max-width:360px){.header-book{font-size:.7rem;padding:.7rem .55rem}.brand-logo{width:98px}.header-actions{gap:.5rem}.hero h1{font-size:3.2rem}.accommodation-gallery{grid-template-columns:1fr}.gallery-open img{height:310px!important}.photo-controls{gap:.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.image-story:hover img,.gallery-open:hover img{transform:none}}
/* Classic hotel presentation: centred identity, separate navigation and room-led pages. */
.classic-header .nav{height:104px;position:relative;display:grid;grid-template-columns:1fr auto 1fr;gap:2rem}.classic-header .brand-logo{width:166px;height:92px}.header-location span{display:block;font-family:Georgia,serif;font-size:1.2rem}.header-location small{display:block;color:var(--muted);font-size:.875rem}.classic-header .header-actions{justify-self:end}.classic-header .menu-toggle{display:none}.classic-nav{border-top:1px solid #e6ecee;background:white}.classic-nav>.container{display:flex;justify-content:center;align-items:center;gap:1.35rem;min-height:52px}.classic-nav a{font-size:.8125rem;letter-spacing:.015em;padding:.9rem 0;white-space:nowrap;position:relative}.classic-nav a:hover,.classic-nav a[aria-current=page]{color:#79582c}.classic-nav a[aria-current=page]::after{content:'';position:absolute;bottom:.6rem;left:0;right:0;height:1px;background:var(--gold)}
.hotel-hero{height:560px;min-height:520px;max-height:720px;text-align:center}.hotel-hero .hero-content{padding:4rem 0 5rem}.hotel-hero h1{font-size:clamp(4rem,6.5vw,6.7rem);letter-spacing:-.03em}.hotel-hero .hero-shade{background:linear-gradient(#092d3855,#092d3866)}.hotel-hero .hero-content>p:not(.eyebrow){font-size:1.2rem;max-width:700px;margin:0 auto 1.8rem}.hotel-booking-bar{background:var(--deep);color:white;position:relative;margin-top:-38px;z-index:3;display:grid;grid-template-columns:1fr 1fr 1.3fr;align-items:center;padding:1.6rem 2.2rem;box-shadow:0 12px 35px #092d381c;gap:2rem}.hotel-booking-bar>div+div{border-left:1px solid #ffffff30;padding-left:2rem}.hotel-booking-bar .eyebrow{display:block;font-size:.75rem;letter-spacing:.1em;margin-bottom:.3rem;color:#d8c3a6}.hotel-booking-bar strong{display:block;font-family:Georgia,serif;font-size:1.3rem;font-weight:400}.hotel-booking-bar .btn{width:100%}.hotel-booking-bar small{display:block;text-align:center;color:#c5d8de;font-size:.75rem;margin-top:.5rem}.hotel-welcome{text-align:center;padding:5rem 0}.hotel-welcome .container{max-width:850px}.hotel-welcome h2{font-size:clamp(2.5rem,4vw,3.8rem)}.hotel-welcome p:not(.eyebrow){color:var(--muted);max-width:710px;margin:1.5rem auto}.hotel-rooms .section-head{align-items:center}.hotel-rooms .card{box-shadow:0 5px 20px #092d3806}.hotel-rooms .card>a{display:block;overflow:hidden}.hotel-rooms .card img{height:280px;transition:transform .6s}.hotel-rooms .card:hover img{transform:scale(1.035)}.hotel-rooms .card-body{padding:1.5rem}.hotel-rooms h3{font-size:1.6rem;letter-spacing:-.025em}.hotel-rooms .badge{font-size:.75rem;line-height:1.5;min-height:2.3em}.hotel-rooms .card-body p{font-size:.9375rem}.hotel-rooms .text-link{font-size:.9375rem}.hotel-packages .section-head p{max-width:740px}.package-card{border:1px solid #cbd9dd;background:var(--sea);padding:2.3rem}.package-number{color:#8b6a3c;display:block;font-size:.875rem;margin-bottom:2rem}.package-card h3{font-size:1.8rem}.package-card p{color:var(--muted)}.package-note{margin:1.5rem 0 0;color:var(--muted);font-size:.875rem}.finale-layout h2{font-size:2.8rem;max-width:730px}.classic-header~main .page-hero{min-height:380px}
@media(max-width:1250px){.classic-nav>.container{gap:1rem}.classic-nav a{font-size:.75rem;letter-spacing:0}.hotel-rooms .grid-4{grid-template-columns:1fr 1fr}.hotel-rooms .card img{height:330px}}
@media(max-width:1100px){.classic-header .nav{height:96px;display:flex;gap:2rem}.header-location{display:none}.classic-header .brand-logo{height:80px;width:146px}.classic-header .header-actions{margin-left:auto}.classic-header .menu-toggle{display:flex}.classic-nav{display:none}.hotel-hero{height:560px}.hotel-booking-bar{gap:1.5rem;padding:1.5rem}.hotel-booking-bar>div+div{padding-left:1.5rem}.hotel-booking-bar strong{font-size:1.1rem}}
@media(max-width:680px){.classic-header .nav{height:84px;gap:.8rem}.classic-header .brand-logo{width:112px;height:68px}.classic-header .header-actions{gap:.65rem}.hotel-hero{height:520px;min-height:480px}.hotel-hero .hero-content{padding:3rem 0 4rem}.hotel-hero h1{font-size:3.8rem}.hotel-hero .hero-content>p:not(.eyebrow){font-size:1rem;max-width:320px}.hotel-booking-bar{margin-top:-30px;grid-template-columns:1fr;padding:1.4rem;gap:1.2rem;text-align:center}.hotel-booking-bar>div+div{border:0;padding-left:0}.hotel-booking-bar>div:nth-child(2){display:none}.hotel-booking-bar strong{font-size:1.3rem}.hotel-booking-bar small{font-size:.8rem}.hotel-welcome{padding:3.5rem 0}.hotel-welcome h2{font-size:2.65rem}.hotel-welcome h2 br{display:none}.hotel-rooms .grid-4{grid-template-columns:1fr}.hotel-rooms .card img{height:340px}.hotel-rooms .badge{min-height:0;font-size:.8rem}.hotel-rooms h3{font-size:1.9rem}.hotel-rooms .card-body{padding:1.6rem}.package-card{padding:1.8rem}.package-number{margin-bottom:1.2rem}.finale-layout h2{font-size:2.55rem}.classic-header~main .page-hero{min-height:320px}}

/* Preserve the supplied logo artwork while strengthening its presentation. */
.classic-header .nav{height:118px}.classic-header .brand-signature{padding:.25rem 1rem;background:#fff;isolation:isolate}.classic-header .brand-logo{width:190px;height:105px;filter:brightness(.78) contrast(1.1) drop-shadow(0 0 .25px #092d3870)}
.classic-header .classic-nav a{font-size:.875rem;letter-spacing:.01em}.classic-header .classic-nav>.container{gap:1.15rem}.header-location small{font-size:.875rem}.hotel-rooms .badge,.gallery-item figcaption,.hotel-booking-bar small{font-size:.875rem}.hotel-booking-bar .eyebrow{font-size:.875rem;letter-spacing:.06em}
footer .brand-signature{border:1px solid #c7a373;padding:1.25rem 1.5rem;box-shadow:0 6px 24px #0002}footer .brand-logo{width:190px;height:105px;filter:brightness(.78) contrast(1.1) drop-shadow(0 0 .25px #092d3870)}footer .brand-tagline{text-align:center;font-size:.875rem;line-height:1.5;letter-spacing:0}.form .two input{min-width:0}.form input::placeholder{color:#617780;font-size:.875rem}
@media(max-width:1250px){.classic-header .classic-nav>.container{gap:.95rem}}
@media(max-width:1100px){.classic-header .nav{height:110px}.classic-header .brand-logo{width:180px;height:99px}.classic-header .brand-signature{padding:0}}
@media(max-width:680px){.classic-header .nav{height:94px;gap:.6rem}.classic-header .brand-logo{width:144px;height:79px}.classic-header .header-actions{gap:.5rem}.classic-header .header-book{padding:.8rem .65rem;font-size:.75rem}.classic-header .menu-toggle{min-width:44px}.full-menu{max-height:calc(100dvh - 94px)}.hotel-rooms .badge{font-size:.875rem}.hotel-booking-bar .eyebrow{font-size:.8rem}.hotel-booking-bar small{font-size:.875rem}}
@media(max-width:360px){.classic-header .brand-logo{width:124px;height:68px}.classic-header .header-book{font-size:.7rem;padding:.75rem .5rem}}

/* Language choice remains available on every screen. */
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.topbar{padding:0}.topbar .container{min-height:46px;gap:1.25rem}.language-control{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.language-control label{font-size:.8125rem;color:#d8c3a6}.language-control select{min-height:40px;max-width:145px;border:1px solid #ffffff40;border-radius:0;padding:.25rem .5rem;background:var(--deep);color:white;font-size:.875rem;cursor:pointer}.language-control select:disabled{opacity:.6}.language-control option{background:var(--deep);color:white}
.hotel-hero h1{margin-inline:auto}.hotel-hero .hero-shade{background:linear-gradient(#092d3870,#092d3890)}.hotel-welcome .welcome-photo{max-width:1100px;margin-top:3rem}.welcome-photo img{width:100%;height:380px;object-fit:cover;object-position:center 48%}.stay-details details{padding:1.3rem 0;border-top:1px solid #c2d1d5}.stay-details details:last-child{border-bottom:1px solid #c2d1d5}.stay-details summary{cursor:pointer;font-size:1.15rem;font-weight:600;padding-right:1rem}.stay-details details p{margin:1rem 0 0;color:var(--muted)}.stay-details details .text-link{margin-top:1rem}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.footer-policy{display:flex;gap:1.5rem;flex-wrap:wrap}.footer-policy a{font-size:.875rem}
html:not([lang=en]) .classic-nav>.container{gap:.85rem}html:not([lang=en]) .classic-nav a{font-size:.8125rem;white-space:normal;text-align:center;line-height:1.35;max-width:160px}
@media(max-width:1300px){html:not([lang=en]) .classic-nav{display:none}html:not([lang=en]) .classic-header .menu-toggle{display:flex}.topbar .container{gap:1rem}.language-control label{display:none}}
@media(max-width:900px){.topbar .container>span{display:none}.topbar .container>a:first-of-type{margin-right:auto}.welcome-photo img{height:320px}.section-head>*{min-width:0}.section-head .btn{flex-shrink:0;max-width:250px}}
@media(max-width:680px){.topbar{display:block}.topbar .container{min-height:46px;gap:.7rem}.topbar .container>a[href^="mailto:"]{display:none}.topbar .container>a{font-size:.875rem}.language-control{margin-left:auto}.language-control select{font-size:16px;min-height:40px;max-width:135px}.classic-header .header-book{white-space:normal;text-align:center;max-width:142px;letter-spacing:.025em;line-height:1.35}.classic-header .nav{gap:.3rem}.classic-header .header-actions{gap:.25rem}.hotel-hero .hero-photo{object-position:48% center}.hotel-hero h1{font-size:clamp(3.25rem,10.5vw,4rem)}.hotel-hero .hero-content>p:not(.eyebrow){max-width:350px}.full-menu{max-height:calc(100dvh - 94px)}.welcome-photo img{height:240px}.hotel-welcome .welcome-photo{margin-top:2rem}.stay-details summary{font-size:1rem}.section-head .btn{max-width:100%}.footer-bottom{display:block}.footer-policy{margin-top:.8rem;gap:1rem}.hero .eyebrow{letter-spacing:.08em}}
@media(max-width:360px){.classic-header .header-book{max-width:122px}.classic-header .brand-logo{width:124px;height:68px}.topbar .container{width:92vw}}

/* CJK fallback fonts and spacing keep the Chinese edition readable. */
html[lang=zh-Hans] body{font-family:Arial,'PingFang SC','Microsoft YaHei','Noto Sans SC',sans-serif;line-height:1.8}
html[lang=zh-Hans] h1,html[lang=zh-Hans] h2,html[lang=zh-Hans] h3,html[lang=zh-Hans] .menu-heading{font-family:Georgia,'Noto Serif SC','Songti SC',SimSun,serif;letter-spacing:0;line-height:1.25}
html[lang=zh-Hans] .hotel-hero h1{line-height:1.1}
html[lang=zh-Hans] .eyebrow,html[lang=zh-Hans] .btn,html[lang=zh-Hans] .badge{letter-spacing:.025em}

/* An interactive coastal stay planner, styled as part of the hotel. */
.welcome-actions{display:flex;justify-content:center;gap:1rem 2rem;flex-wrap:wrap}
.escape-section{background:#e9f0f1;scroll-margin-top:100px}.escape-section .section-head{margin-bottom:2.5rem}.escape-section .section-head>div{max-width:850px}.escape-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:2.5rem;align-items:start}.escape-controls{background:white;border:1px solid #c8d8dc;padding:2.2rem;display:grid;gap:1.5rem}.escape-controls label,.escape-controls legend{font-size:1rem;font-weight:500}.escape-controls>div>label,.escape-counts label{display:block;margin-bottom:.5rem}.escape-controls select,.escape-counts input{width:100%;min-width:0;border:1px solid #a9bec5;background:white;color:var(--ink);padding:.85rem;font-size:1rem;border-radius:0;min-height:50px}.escape-counts{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.escape-controls fieldset{border:0;margin:0;padding:0}.escape-controls legend{padding:0;margin-bottom:.75rem}.escape-choice{display:flex;align-items:center;gap:.8rem;min-height:50px;padding:.6rem .8rem;border:1px solid #d3dfe2;cursor:pointer;margin-top:.5rem}.escape-choice input{width:20px;height:20px;accent-color:var(--navy);flex:none;margin:0}.escape-choice input:checked+span{color:var(--navy);font-weight:600}.escape-choice:has(input:checked){background:#edf4f5;border-color:#afc5cd}.escape-controls .btn{width:100%}.escape-preview{background:white;border:1px solid #b7cbd1;box-shadow:0 12px 36px #092d3810}.escape-preview:focus-visible{outline:3px solid #bf9048;outline-offset:5px}.escape-preview-top{padding:2rem;background:linear-gradient(90deg,#092d38f5,#092d38d9),url('assets/pier.webp') center/cover;color:white}.escape-preview-top .eyebrow{color:#e7cfaf;font-size:.875rem;margin-bottom:.7rem;letter-spacing:.08em}.escape-preview-top h3{font-size:2.3rem;margin-bottom:1.5rem}.escape-totals{display:flex;gap:2.5rem}.escape-totals>div{display:flex;align-items:baseline;gap:.6rem}.escape-totals strong{font-family:Georgia,serif;font-size:2rem;font-weight:400;line-height:1}.escape-totals span{font-size:.9375rem;color:#d5e4e8}.escape-timeline{list-style:none;margin:0;padding:2rem}.escape-timeline li{display:grid;grid-template-columns:30px 1fr;gap:1rem;padding-bottom:1.4rem}.escape-timeline li+li{border-top:1px solid #dbe4e5;padding-top:1.4rem}.escape-timeline li:last-child{padding-bottom:0}.escape-step{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #b08a53;color:#76532b;font-size:.75rem;line-height:1}.escape-timeline h4{font-family:Georgia,serif;font-weight:400;font-size:1.4rem;line-height:1.3;margin:0 0 .6rem}.escape-timeline p{font-size:.9375rem;color:var(--muted);margin-bottom:.8rem;line-height:1.65}.escape-timeline .text-link{font-size:.9375rem}.escape-plan-actions{padding:0 2rem;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.escape-copy{background:none;border:0;border-bottom:1px solid #8b6a39;color:var(--ink);padding:.5rem 0;min-height:44px;font-size:.9375rem;cursor:pointer}.escape-note{margin:1.4rem 2rem 2rem;font-size:.875rem;color:var(--muted);line-height:1.65}.planner-enquiry-note{margin-bottom:2.5rem}
@media(max-width:1000px){.escape-layout{grid-template-columns:1fr 1.15fr;gap:1.5rem}.escape-controls,.escape-preview-top,.escape-timeline{padding:1.5rem}.escape-preview-top h3{font-size:2rem}.escape-plan-actions{padding:0 1.5rem;gap:1rem}.escape-note{margin-inline:1.5rem}.escape-totals{gap:1.5rem}.escape-totals>div{display:block}.escape-totals span{display:block;margin-top:.3rem}}
@media(max-width:740px){.escape-layout{grid-template-columns:1fr;gap:1.5rem}.escape-section{scroll-margin-top:94px}.escape-controls{padding:1.5rem}.escape-preview-top h3{font-size:1.9rem}.escape-totals>div{display:flex;gap:.6rem}.escape-totals span{display:inline;margin:0}.escape-timeline{padding:1.5rem}.escape-timeline li{grid-template-columns:28px 1fr;gap:.75rem}.escape-step{width:28px;height:28px}.escape-plan-actions{align-items:flex-start;flex-direction:column}.escape-plan-actions .btn{width:100%}.escape-note{margin-bottom:1.5rem}.escape-section .section-head{margin-bottom:1.7rem}.escape-controls .btn{white-space:normal}.escape-copy{text-align:left}.escape-counts{gap:1rem}}

/* A photographic mood experience, controlled by the guest. */
/* A quiet invitation for short-notice stays, with confirmed offers only. */
.late-teaser{background:var(--deep);color:white;padding:3rem 0}.late-teaser-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3rem;align-items:center}.late-teaser h2{font-size:clamp(2rem,3.2vw,3rem);max-width:700px}.late-teaser .eyebrow{color:#e7cfaf}.late-teaser p:not(.eyebrow){color:#e2edf0;max-width:730px;margin:0}.late-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.2rem 1.8rem;margin-top:1.8rem}.late-teaser .late-actions{margin:0;flex-direction:column;align-items:flex-start}.late-actions .btn{white-space:normal;text-align:center}.late-coastal{background:var(--sea)}.late-offers-intro{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.65fr);gap:5rem;align-items:center}.late-offers-intro h2{max-width:760px;font-size:clamp(2.8rem,4.6vw,4.6rem)}.late-offers-intro>div>p:not(.eyebrow){max-width:680px}.late-photo img{width:100%;height:350px;object-fit:cover;object-position:center 55%}.late-booking-note{font-size:.875rem;line-height:1.7;color:var(--muted);margin:1.5rem 0 0}.late-offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-top:3rem}.late-offer-card{background:white;border:1px solid #c7d7dc;padding:2rem;display:flex;flex-direction:column;align-items:flex-start}.late-offer-card h3{font-size:1.8rem}.late-offer-card p,.late-offer-card li{font-size:1rem;color:var(--muted)}.late-offer-card .late-offer-rate{font:400 2.2rem/1.3 Georgia,serif;color:var(--ink);margin-bottom:.3rem}.late-offer-card .late-offer-basis{margin-bottom:1.5rem;font-size:.875rem}.late-offer-card h4{font-weight:500;margin:0}.late-offer-card ul{padding-left:1.1rem;margin:.6rem 0 1.3rem}.late-offer-card .late-offer-expiry{color:#785b32}.late-offer-card .late-offer-terms{font-size:.875rem;line-height:1.65}.late-offer-card .btn{margin-top:auto;white-space:normal;text-align:center}
@media(max-width:1050px){.late-offers-intro{gap:2.5rem;grid-template-columns:minmax(0,1.3fr) minmax(220px,.7fr)}.late-teaser-inner{gap:2rem}.late-offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.late-photo img{height:330px}}
@media(max-width:740px){.late-teaser{padding:2.2rem 0}.late-teaser-inner{grid-template-columns:1fr;gap:1.5rem}.late-teaser .late-actions{gap:1.2rem;width:100%}.late-teaser .btn{width:100%}.late-offers-intro{grid-template-columns:1fr;gap:2rem}.late-offers-intro h2{font-size:2.9rem}.late-actions{align-items:flex-start;flex-direction:column}.late-actions .btn{width:100%}.late-photo img{height:260px;object-position:center 65%}.late-offer-grid{grid-template-columns:1fr;margin-top:2rem}.late-offer-card{padding:1.5rem}}
/* Surf stays keep the calm hotel palette and use real local operator links. */
.surf-welcome{display:grid;grid-template-columns:1.35fr 1fr;gap:4rem;background:var(--deep);color:white;padding:3.5rem}.surf-welcome .eyebrow{color:#e7cfaf}.surf-welcome h2{font-size:clamp(2.7rem,4.4vw,4.4rem)}.surf-welcome p{color:#edf4f5}.surf-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.2rem 1.7rem;margin-top:1.7rem}.surf-actions .btn{white-space:normal;text-align:center}.surf-after{border-left:1px solid #c7a37366;padding-left:3rem}.surf-after h3{font-size:2rem}.surf-after .surf-coming{font-size:.875rem;color:#eed6b4}.surf-schools-head{margin-top:4rem}.surf-school-links{margin-top:auto;display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.surf-school-links .text-link{margin:0}.surf-plan{margin-top:2.5rem;border-block:1px solid var(--line);padding:2.2rem 0;display:flex;justify-content:space-between;gap:2rem;align-items:center}.surf-plan>div:first-child{max-width:560px}.surf-plan h3{font-size:1.8rem}.surf-plan p{margin-bottom:0;color:var(--muted)}.surf-plan .surf-actions{margin:0;justify-content:flex-end;max-width:420px;flex:none}
@media(max-width:1000px){.surf-welcome{gap:2.5rem;padding:2.5rem}.surf-after{padding-left:2rem}.surf-plan{display:block}.surf-plan .surf-actions{margin-top:1.5rem;max-width:none;justify-content:flex-start}.surf-schools-head{margin-top:3rem}}
@media(max-width:740px){.surf-welcome{grid-template-columns:1fr;padding:2rem 1.5rem;gap:2rem}.surf-after{border-left:0;border-top:1px solid #c7a37366;padding:1.8rem 0 0}.surf-welcome h2{font-size:2.8rem}.surf-actions{align-items:flex-start;flex-direction:column}.surf-actions .btn{width:100%}.surf-plan .surf-actions{display:grid;grid-template-columns:1fr}.surf-schools-head{margin-top:2.7rem}.surf-plan h3{font-size:1.7rem}}
/* Curated itineraries and an official-source regional guide. */
.escape-controls textarea{width:100%;resize:vertical;border:1px solid #a9bec5;padding:.85rem;background:white;color:var(--ink);min-height:96px;border-radius:0}.field-help{font-size:.8125rem;line-height:1.6;color:var(--muted);margin:.5rem 0 0}.interest-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.interest-chip{display:flex;align-items:center;gap:.55rem;border:1px solid #d3dfe2;padding:.7rem;min-height:56px;cursor:pointer;line-height:1.4}.interest-chip input{width:18px;height:18px;margin:0;accent-color:var(--navy);flex:none}.interest-chip span{font-size:.875rem}.interest-chip:has(input:checked){border-color:var(--navy);background:var(--sea)}.interest-fieldset .field-help{margin:0 0 1rem}.itinerary-intro{padding:2rem 2rem 1rem}.itinerary-intro h4,.at-hotel-title{font:400 1.65rem/1.2 Georgia,serif;margin:0 0 1rem}.itinerary-intro>[data-plan-interests]{color:#70552f;font-size:.875rem;line-height:1.6;margin-bottom:.7rem}.travel-summary{font-size:.875rem;margin-bottom:1rem}.itinerary-transport{font-size:.875rem;margin-top:1rem}.itinerary-transport-link{font-size:.875rem;margin-top:1rem;display:inline-block}.itinerary-days{list-style:none;margin:0;padding:0 2rem 2rem}.itinerary-days li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:1rem;padding:1.5rem 0;border-bottom:1px solid var(--line)}.itinerary-day{font-size:.75rem;line-height:1.5;text-transform:uppercase;letter-spacing:.07em;color:#785b32;padding-top:.3rem}.itinerary-days h4{font:400 1.45rem/1.3 Georgia,serif;margin:0 0 .6rem}.itinerary-days p{color:var(--muted);font-size:.9375rem;line-height:1.65;margin:0 0 .8rem}.itinerary-days .itinerary-caution{font-size:.8125rem;padding-left:.8rem;border-left:2px solid var(--gold)}.itinerary-days .text-link{font-size:.875rem}.at-hotel-title{margin:0 2rem;padding-top:1rem;border-top:1px solid var(--line)}.guide-jumps{display:flex;flex-wrap:wrap;gap:.65rem 1.8rem;padding:1.5rem 0;border-block:1px solid var(--line);margin-top:2rem}.guide-jumps a{min-height:44px;display:flex;align-items:center;border-bottom:1px solid #b08a53;font-size:.9375rem}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.guide-card{padding:2rem;background:white;border:1px solid #d6e2e4;display:flex;flex-direction:column;align-items:flex-start}.guide-card h3{font-size:1.7rem;overflow-wrap:anywhere}.guide-area{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#785b32;line-height:1.6;margin:0 0 1rem}.guide-card>p:not(.guide-area){font-size:.9375rem;color:var(--muted)}.guide-card .text-link{margin-top:auto;min-height:44px;padding-top:.5rem;font-size:.875rem}.guide-note{font-size:.875rem;color:var(--muted);line-height:1.7;margin:1.7rem 0}.guide-card .route-note{font-size:.8125rem;border-left:2px solid var(--gold);padding-left:.8rem}.guide-grid+.btn{margin-top:2rem}
@media(max-width:1050px){.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-card{padding:1.6rem}.itinerary-intro{padding:1.5rem 1.5rem 1rem}.itinerary-days{padding:0 1.5rem 1.5rem}.at-hotel-title{margin-inline:1.5rem}.interest-grid{grid-template-columns:1fr}.itinerary-days li{grid-template-columns:54px minmax(0,1fr);gap:.75rem}}
@media(max-width:740px){.interest-grid{grid-template-columns:1fr 1fr}.guide-grid{grid-template-columns:1fr}.guide-card{padding:1.5rem}.guide-jumps{gap:.4rem 1.2rem}.itinerary-days li{grid-template-columns:1fr;gap:.5rem}.itinerary-day{padding:0}.itinerary-intro h4,.at-hotel-title{font-size:1.5rem}.guide-card h3{font-size:1.65rem}}
@media(max-width:380px){.interest-grid{grid-template-columns:1fr}}
.coastal-mood{padding-top:1rem;padding-bottom:6rem;scroll-margin-top:100px}.coastal-mood .section-head{margin-bottom:2.5rem}.coastal-mood .section-head>div{max-width:820px}.mood-stage{position:relative;min-height:620px;display:flex;align-items:center;overflow:hidden;background:var(--deep);isolation:isolate}.mood-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}.mood-stage::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#061f2aeb 0%,#082c38b8 45%,#082c3838 100%)}.mood-content{position:relative;z-index:2;color:white;padding:4rem;max-width:880px}.mood-content .eyebrow{color:#eed6b4;margin-bottom:1.2rem}.mood-content h3{font-size:clamp(3rem,4.5vw,4.8rem);line-height:1.08;max-width:790px;margin-bottom:1.7rem}.mood-content>p:not(.eyebrow){font-size:1.1rem;line-height:1.75;max-width:590px;color:#f0f5f6}.mood-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.2rem 2rem;margin-top:2rem}.mood-tabs{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #c2d1d7;border-bottom:0;background:white}.mood-tabs button{background:white;color:var(--ink);border:0;border-top:4px solid transparent;padding:1.5rem 1.2rem;min-height:104px;font-size:1rem;line-height:1.5;text-align:left;transition:background .2s,color .2s}.mood-tabs button+button{border-left:1px solid #d8e3e7}.mood-tabs button span{display:block;font-size:.75rem;letter-spacing:.1em;color:#846339;margin-bottom:.5rem}.mood-tabs button[aria-selected=true]{background:var(--deep);color:white;border-top-color:var(--gold)}.mood-tabs button[aria-selected=true] span{color:#e7cbab}.mood-tabs button:hover{border-top-color:var(--gold)}.escape-pace{font-size:.875rem;color:#e2edf0;margin-top:-.5rem;margin-bottom:1.5rem}.escape-pace strong{font-weight:400}.mood-planner-note{font-size:.875rem;line-height:1.65;margin:0}.mood-planner-note[hidden]{display:none}
@media(max-width:1000px){.mood-stage{min-height:570px}.mood-content{padding:3rem;max-width:800px}.mood-tabs{grid-template-columns:1fr 1fr}.mood-tabs button{min-height:90px;padding:1.2rem 1.5rem}.mood-tabs button:nth-child(3){border-left:0;border-top-width:4px}.mood-tabs button:nth-child(n+3){border-bottom:0;border-top:4px solid transparent;box-shadow:inset 0 1px #d8e3e7}.mood-tabs button:nth-child(n+3)[aria-selected=true]{border-top-color:var(--gold)}}
@media(max-width:680px){.coastal-mood{padding-top:0;padding-bottom:3.8rem;scroll-margin-top:94px}.coastal-mood .section-head{margin-bottom:1.8rem}.mood-stage{min-height:560px}.mood-content{padding:2rem 1.5rem}.mood-content h3{font-size:2.9rem;line-height:1.12}.mood-content>p:not(.eyebrow){font-size:1rem;line-height:1.7}.mood-stage::after{background:linear-gradient(90deg,#061f2ade,#082c3895),linear-gradient(0deg,#061f2a80,transparent 70%)}.mood-actions{gap:1.3rem;margin-top:1.6rem}.mood-actions .btn{width:100%}.mood-tabs button{min-height:96px;padding:1.1rem .85rem;font-size:.9375rem}.mood-tabs button span{margin-bottom:.3rem}.mood-content .eyebrow{font-size:.875rem;letter-spacing:.06em}.escape-pace{font-size:.875rem}}

/* Hotel refinement: clear identity, generous photography and a calm editorial rhythm. */
:root{--paper:#f7f4ee;--gold:#d1b184}
.classic-header{box-shadow:0 3px 18px #092d3808}
.classic-header .nav{height:100px}
.classic-header .brand-signature{padding:0 1.3rem;border-inline:1px solid #c7a37342}
.classic-header .brand-logo{width:176px;height:94px}
.classic-nav>.container{min-height:48px}
.classic-nav a{padding:.85rem 0}
.header-location span{letter-spacing:.015em}
.header-book{border-color:#123c49;box-shadow:inset 0 0 0 3px white}
.hotel-hero{height:650px;min-height:570px;text-align:left;max-height:none}
.hotel-hero .hero-photo{object-position:center 55%}
.hotel-hero .hero-shade{background:linear-gradient(90deg,#061f2ae8 0%,#092d38b8 38%,#092d3830 75%,#092d3818 100%)}
.hotel-hero .hero-content{padding:5rem 0 6rem}
.hotel-hero h1{font-size:clamp(4rem,6.7vw,7.1rem);max-width:760px;margin:0 0 1.7rem;line-height:1.03}
.hotel-hero .eyebrow{color:#f2d9b5;letter-spacing:.13em}
.hotel-hero .hero-content>p:not(.eyebrow){margin:0 0 2rem;max-width:510px;font-size:1.15rem;line-height:1.75}
.hotel-hero .hero-actions{justify-content:flex-start;align-items:center;gap:1.7rem}
.hotel-hero .hero-actions .text-link{font-size:1rem;letter-spacing:0;text-transform:none;min-height:44px;display:inline-flex;align-items:center}
.hotel-booking-bar{border-top:2px solid var(--gold);padding:1.7rem 2.2rem;box-shadow:0 16px 36px #092d3820}
.hotel-welcome{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5rem;width:min(1280px,88vw);margin-inline:auto;padding:7rem 0;text-align:left}
.hotel-welcome .container{width:100%;max-width:none;margin:0}
.hotel-welcome h2{font-size:clamp(2.7rem,3.8vw,4rem);max-width:560px}
.hotel-welcome h2 br{display:none}
.hotel-welcome p:not(.eyebrow){margin:1.7rem 0;max-width:510px;font-size:1.05rem;line-height:1.85}
.hotel-welcome .welcome-photo{margin:0;max-width:none;position:relative}
.welcome-photo img{height:540px;object-position:55% center}
.welcome-photo::after{content:'';position:absolute;inset:1rem;border:1px solid #ffffff70;pointer-events:none}
.welcome-actions{display:flex;gap:1.7rem;flex-wrap:wrap}
.hotel-rooms .card{border:0;border-bottom:1px solid #c7a37380;box-shadow:none;background:transparent}
.hotel-rooms .card-body{padding:1.6rem 0}
.hotel-rooms .card img{height:310px}
.hotel-rooms .card-body p{max-width:32ch}
.hotel-rooms .card-body .text-link{min-height:44px;display:inline-flex;align-items:center}
.package-card{background:white;border-color:#c7a37370}
.guide-card{border-top:2px solid #c7a37380}
.escape-controls{border-top:3px solid var(--gold)}
.escape-preview{box-shadow:0 14px 35px #092d380c}
.interest-chip{transition:background .15s,border-color .15s}
.interest-chip:has(input:checked){box-shadow:inset 3px 0 var(--navy)}
html[lang=zh-Hans] h1,html[lang=zh-Hans] h2,html[lang=zh-Hans] h3{line-height:1.3;letter-spacing:0}
html[lang=zh-Hans] .eyebrow,html[lang=zh-Hans] .btn{letter-spacing:.04em}
@media(max-width:1100px){.classic-header .nav{height:96px}.classic-header .brand-logo{height:86px;width:160px}.classic-header .brand-signature{padding:0;border:0}.hotel-welcome{gap:3rem}.welcome-photo img{height:490px}.hotel-hero{height:610px}.hotel-rooms .card img{height:350px}}
@media(max-width:740px){.hotel-welcome{grid-template-columns:1fr;gap:2.5rem;padding:4rem 0}.hotel-welcome h2{font-size:2.8rem}.hotel-welcome p:not(.eyebrow){margin:1.3rem 0}.welcome-photo img{height:380px}.hotel-hero{height:auto;min-height:560px}.hotel-hero .hero-content{padding:4rem 0 5rem}.hotel-hero h1{font-size:clamp(3.5rem,11vw,4.8rem)}.hotel-hero .hero-content>p:not(.eyebrow){font-size:1rem;max-width:360px}.hotel-hero .hero-shade{background:linear-gradient(90deg,#061f2ad9,#092d3870),linear-gradient(0deg,#092d3860,transparent)}.hotel-hero .hero-photo{object-position:60% center}.hotel-hero .hero-actions{flex-wrap:wrap;gap:1rem 1.5rem}.hotel-booking-bar{padding:1.4rem}.hotel-rooms .card img{height:340px}.classic-header .nav{height:90px}.classic-header .brand-logo{height:78px;width:140px}.classic-header .header-book{max-width:145px;white-space:normal;text-align:center;line-height:1.4}.full-menu{max-height:calc(100dvh - 90px)}}
@media(max-width:380px){.classic-header .brand-logo{width:116px;height:70px}.classic-header .header-book{max-width:120px}.hotel-hero .eyebrow{font-size:.75rem;letter-spacing:.08em}.welcome-photo img{height:310px}}

/* The YouTube coastal film is decorative; the supplied photograph stays beneath it. */
.hero-video{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;pointer-events:none;transition:opacity .6s}
.hero-video.is-playing{opacity:1}
.hero-video-control{position:absolute;right:6vw;bottom:64px;z-index:2;min-height:44px;max-width:calc(100% - 12vw);padding:.6rem 1rem;border:1px solid #ffffff85;background:#092d38d9;color:white;font-size:.8125rem;line-height:1.5;letter-spacing:.02em;text-align:center}
.hero-video-control:hover{background:var(--deep);border-color:white}
@media(max-width:740px){.hero-video{object-position:42% center}.hotel-hero .hero-content{padding-bottom:8rem}.hero-video-control{bottom:55px;left:6vw;right:auto;text-align:left}}

.hero-video{overflow:hidden}.hero-video iframe{position:absolute;border:0;max-width:none;pointer-events:none}

/* Homepage prices and confirmed late escapes. No estimated prices. */
.home-rates{padding:4.5rem 0 0;scroll-margin-top:2rem}.home-rates .section-head{margin-bottom:2rem}.home-rates h2{font-size:clamp(2.3rem,3.6vw,3.6rem)}.home-rate-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}.home-rate-panel{display:flex;flex-direction:column;align-items:flex-start;background:white;border:1px solid var(--line);border-top:3px solid var(--gold);padding:2.5rem;gap:1rem}.home-rate-panel .badge{font-size:.8rem;letter-spacing:.04em}.home-rate-panel h3{font-size:clamp(1.9rem,2.5vw,2.5rem);margin:0}.home-rate-panel p{color:var(--muted);max-width:470px;margin:0 0 .5rem;line-height:1.75}.home-rate-panel .btn{margin-top:auto;white-space:normal;text-align:center}.home-rate-late{background:var(--deep);color:white;border-color:var(--deep);border-top-color:var(--gold)}.home-rate-late .badge{background:transparent;color:#ead4b8;padding:0}.home-rate-late p{color:#dfebee}.home-rate-late h3{color:white}.home-rate-note{font-size:.875rem;line-height:1.7;color:var(--muted);max-width:870px;margin:1.5rem 0 0}.home-rates .late-offer-grid[hidden]{display:none}@media(max-width:740px){.home-rates{padding:3rem 0 0}.home-rate-panels{grid-template-columns:1fr}.home-rate-panel{padding:1.7rem}.home-rate-panel .btn{width:100%}.home-rate-note{font-size:.875rem}}

.home-guide-prices{margin:0 0 2rem}.late-offer-card>.badge{font-size:.75rem;color:#725329;background:#f4ebde;margin:0 0 1.1rem}.home-guide-prices .late-offer-card{border-top:3px solid var(--gold)}
