:root{--ink:#222F52;--paper:#EDE5DA;--gold:#D4B589;--line:#D4B589;--muted:#555B6C;--serif:'Forum',serif;--sans:'Montserrat Variable',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.15}button{color:inherit}section{scroll-margin-top:84px}.skip-link{position:fixed;top:-80px;left:16px;padding:12px;background:white;z-index:200}.skip-link:focus{top:12px}.site-header{position:absolute;top:0;left:0;width:100%;z-index:30;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:23px 3.3%;color:white;border-bottom:1px solid #ffffff38;transition:background .25s,color .25s}.site-header.fixed{position:fixed;background:var(--paper);color:var(--ink);border-color:var(--line);padding-top:14px;padding-bottom:14px}.brand{text-align:center;display:flex;flex-direction:column;line-height:1.15;justify-self:center}.brand>span{font-family:var(--serif);font-size:39px;letter-spacing:.15em;padding-left:.15em}.brand small{font-size:10px;letter-spacing:.27em;margin-top:7px}.menu-toggle{border:0;background:transparent;display:grid;grid-template-columns:27px auto;gap:6px 14px;width:max-content;align-items:center;padding:8px 0;min-height:44px}.menu-toggle>span:not(.menu-word){height:1px;background:currentColor;width:26px;grid-column:1}.menu-word{grid-column:2;grid-row:1/3;font-size:14px}.header-actions{display:flex;align-items:center;gap:24px;justify-self:end}.languages{display:flex;gap:12px}.languages button{background:none;border:0;border-bottom:1px solid transparent;padding:8px 0;font-size:13px;opacity:.7;min-height:42px}.languages button[aria-pressed=true]{border-bottom-color:currentColor;opacity:1}.reserve-link{font-size:13px;background:white;color:var(--ink);padding:10px 20px;white-space:nowrap}.fixed .reserve-link{background:var(--ink);color:white}.navigation{position:fixed;inset:0;z-index:25;background:var(--ink);color:white;padding:130px 8% 45px;overflow-y:auto}.navigation[hidden]{display:none}.nav-inner{max-width:1050px;margin:auto;display:flex;flex-direction:column;gap:22px}.nav-inner>a{font-family:var(--serif);font-size:clamp(27px,5vw,60px);line-height:1.2;width:max-content;max-width:100%;border-bottom:1px solid #ffffff26;padding-bottom:8px}.nav-note{opacity:.6;margin-top:22px}.menu-open{overflow:hidden}.menu-open .site-header,.menu-open .site-header.fixed{background:var(--ink);color:white;border-color:#ffffff28}.hero{min-height:760px;height:96svh;position:relative;color:white;display:flex;align-items:center;background:#222F52;overflow:hidden}.hero-image,.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0000007d 0%,#222F5240 53%,#00000008),linear-gradient(0deg,#0000007a 0%,transparent 30%,transparent 78%,#222F5246)}.hero-content{position:relative;z-index:2;margin:100px 8% 68px;width:min(850px,84%)}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.2em;line-height:1.6}.hero h1{font-size:clamp(46px,5.9vw,90px);letter-spacing:-.025em;margin:24px 0}.hero-description{font-size:17px;line-height:1.7;margin-bottom:37px}.light-button,.dark-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 25px;line-height:1.4;font-size:14px;border:1px solid #ffffff85;background:#ffffff06;transition:background .2s,color .2s}.light-button:hover{background:white;color:var(--ink)}.dark-button{background:var(--ink);color:white;border-color:var(--ink)}.dark-button:hover{background:#34436D}.hero-bottom{position:absolute;bottom:30px;left:3.3%;right:3.3%;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.08em}.scroll-link{display:flex;align-items:center;gap:12px}.scroll-link:before{content:'';display:block;width:1px;height:29px;background:#ffffff88}.hero-index{letter-spacing:.15em}.section{padding:105px 7%}.intro{text-align:center;max-width:930px;margin:auto}.intro h2{font-size:clamp(35px,4vw,58px);margin:25px 0}.intro>p:last-of-type{max-width:630px;margin:auto;color:var(--muted);font-size:17px;line-height:1.9}.intro-line{display:block;height:40px;width:1px;background:var(--gold);margin:35px auto 0}@media(min-width:1600px){.hero-content{margin-left:12%}.section{padding-left:12%;padding-right:12%}}@media(max-width:900px){.site-header{padding:18px 5%;grid-template-columns:1fr auto 1fr}.brand>span{font-size:31px}.brand small{font-size:8px}.header-actions{gap:0}.reserve-link{display:none}.languages{gap:11px}.menu-word{display:none}.hero{min-height:690px;height:90svh}.hero-content{margin-left:7%;width:86%}.hero-bottom{left:5%;right:5%}.hero-bottom>span:first-child{display:none}.section{padding:76px 6%}.hero h1{font-size:clamp(45px,7vw,69px)}}@media(max-width:540px){html{scroll-padding-top:80px}.site-header{padding:17px 5%;gap:12px}.brand>span{font-size:27px;letter-spacing:.1em}.brand small{font-size:7px;letter-spacing:.15em}.languages{gap:8px}.languages button{font-size:12px;min-width:24px}.hero{height:88svh;min-height:620px}.hero-content{margin-top:88px;margin-bottom:38px}.hero .eyebrow{font-size:11px;letter-spacing:.15em}.hero h1{font-size:45px;line-height:1.18;margin:22px 0}.hero-description{font-size:16px;max-width:290px;margin-bottom:29px}.hero-image,.hero-video{object-position:61% center}.hero-shade{background:linear-gradient(90deg,#00000093,#222F524a),linear-gradient(0deg,#00000062,transparent 40%,#222F5225)}.hero-bottom{font-size:11px;letter-spacing:.04em;bottom:22px}.hero-index{display:none}.intro h2{font-size:37px}.intro>p:last-of-type{font-size:16px}.navigation{padding:112px 7% 35px}.nav-inner{gap:22px}.section{padding:66px 6%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
.hero-video{opacity:0;transition:opacity 1s}.hero-video.is-playing{opacity:1}.hotels{background:#E9E5E2}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}.section-heading h2{font-size:clamp(38px,4vw,58px);margin-top:18px}.section-heading>p{color:var(--muted);max-width:365px;line-height:1.8}.hotel-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 32px}.hotel-image-button{display:block;width:100%;padding:0;border:0;position:relative;overflow:hidden;background:var(--ink)}.hotel-image-button img{height:auto;aspect-ratio:1.7;transition:transform .7s}.hotel-image-button:hover img{transform:scale(1.035)}.hotel-image-label{position:absolute;bottom:18px;left:23px;color:white;font-size:11px;letter-spacing:.2em;text-shadow:0 1px 4px #000}.hotel-card-content{padding-top:24px}.hotel-card h3{font-size:34px;margin:10px 0 15px}.hotel-card .eyebrow{font-size:11px;color:#555B6C}.hotel-description{color:var(--muted);max-width:460px;min-height:60px}.hotel-card-bottom{border-top:1px solid #D4B589;margin-top:24px;padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:18px}.hotel-card-bottom>span{font-size:13px;color:var(--muted)}.text-link{background:none;border:0;border-bottom:1px solid var(--gold);padding:0 0 4px;font-size:14px;width:max-content;max-width:100%;line-height:1.7;color:inherit;cursor:pointer}.text-link:hover{border-color:var(--ink)}.experience{display:grid;grid-template-columns:1.15fr 1fr;min-height:615px}.experience-photo{min-height:100%;overflow:hidden}.experience-photo img{height:100%;min-height:615px}.experience-copy{padding:82px 13%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.experience-copy h2{font-size:clamp(32px,3.3vw,50px);margin:24px 0}.experience-copy>p:not(.eyebrow){color:var(--muted);line-height:1.9;max-width:420px}.experience-copy .text-link{margin-top:29px}.experience-number{margin-top:58px;font-size:10px;letter-spacing:.15em;color:var(--gold)}.wellness{grid-template-columns:1fr 1.15fr;background:#E9E5E2}.film-section{text-align:center}.film-section>h2{font-size:clamp(36px,4vw,58px);margin:22px 0}.film-intro{color:var(--muted);margin-bottom:44px}.film-poster{display:block;position:relative;width:100%;border:0;padding:0;color:white;overflow:hidden}.film-poster>img{aspect-ratio:2.1;transition:transform .8s}.film-poster:hover>img{transform:scale(1.025)}.film-shade{position:absolute;inset:0;background:#222F5240}.film-button{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;font-size:15px}.play-icon{display:flex;align-items:center;justify-content:center;width:70px;height:70px;border:1px solid #ffffffa1;border-radius:50%;font-size:21px;padding-left:4px;background:#ffffff08}.film-button small{font-size:11px;letter-spacing:.17em}.contact-section{background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.contact-intro h2{font-size:clamp(36px,4vw,56px);margin:20px 0 26px}.contact-intro>p:last-child{opacity:.75;max-width:350px;line-height:1.9}.contact-row{padding:23px 0;border-bottom:1px solid #ffffff26;display:flex;align-items:center;justify-content:space-between;gap:22px}.contact-row:first-child{padding-top:0}.contact-row h3{font-size:25px;margin-bottom:9px}.contact-row>div>a{font-size:14px;color:#E9E5E2}.contact-phone{font-size:14px;white-space:nowrap}.contact-phone:hover{text-decoration:underline}footer{background:#18213D;color:white;padding:50px 7% 24px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-bottom:35px}.footer-brand{align-items:flex-start;text-align:left}.footer-brand>span{font-size:32px}.footer-top>p{font-family:var(--serif);font-size:21px;color:#EDE5DA}.footer-nav{display:flex;gap:24px;font-size:13px}.footer-bottom{border-top:1px solid #ffffff21;padding-top:22px;display:flex;gap:24px;justify-content:space-between;align-items:flex-start;font-size:11px;color:#E9E5E2}dialog{padding:0;border:0;color:var(--ink);background:var(--paper);max-height:90svh;overflow-y:auto;overscroll-behavior:contain}dialog::backdrop{background:#000000b3;backdrop-filter:blur(5px)}.dialog-open{overflow:hidden}.hotel-dialog{width:min(970px,92vw)}.dialog-close{position:absolute;right:18px;top:15px;width:44px;height:44px;display:grid;place-items:center;border:1px solid #D4B589;background:var(--paper);font-family:'Montserrat Variable';font-size:28px;line-height:1;z-index:2}.dialog-photo{height:310px;object-position:center}.dialog-copy{padding:35px 45px 40px}.dialog-copy h2{font-size:43px;margin:14px 0 18px}.dialog-copy>p:not(.eyebrow){color:var(--muted)}.dialog-address{margin-top:18px}.amenities-label{margin-top:30px}.amenities{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:14px 0 27px;gap:10px}.amenities>li{font-size:13px;padding:7px 12px;background:#E9E5E2}.dialog-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.dialog-contact-line{margin-top:26px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:14px}.film-dialog{width:min(1150px,94vw);background:#18213D;color:white}.film-dialog-heading{display:flex;align-items:center;justify-content:space-between;padding:22px 26px}.film-dialog-heading h2{font-size:28px;margin-right:40px}.film-dialog .dialog-close{position:static;flex-shrink:0;background:transparent;color:white;border-color:#ffffff44}.film-dialog video{display:block;width:100%;height:auto;max-height:68svh}.film-caption{padding:15px 26px 20px;font-size:13px;color:#E9E5E2}
@media(max-width:1000px){.section-heading{gap:25px}.section-heading>p{max-width:290px}.experience-copy{padding:60px 9%}.experience,.experience-photo img{min-height:545px}.contact-section{gap:35px}.contact-row{display:block}.contact-phone{display:inline-block;margin-top:9px}.footer-top>p{max-width:210px}.footer-nav{flex-direction:column;gap:10px}}
@media(max-width:700px){.section-heading{display:block}.section-heading>p{margin-top:23px;max-width:100%}.hotel-grid{grid-template-columns:1fr;gap:36px}.hotel-card h3{font-size:32px}.hotel-description{min-height:0}.hotel-card-bottom{gap:12px;flex-wrap:wrap}.hotel-card-bottom>span{font-size:13px}.experience,.wellness{display:flex;flex-direction:column;min-height:0}.experience-photo img{min-height:0;height:auto;aspect-ratio:1.3}.experience-copy{padding:49px 7%}.experience-copy h2{font-size:37px}.experience-number{margin-top:35px}.wellness .experience-photo{order:-1}.film-poster>img{aspect-ratio:1.25}.film-button .play-icon{width:62px;height:62px}.contact-section{grid-template-columns:1fr;gap:35px}.contact-intro>p:last-child{max-width:440px}.contact-row{display:flex;flex-wrap:wrap;gap:15px}.contact-row h3{font-size:24px}.contact-phone{margin-top:0}.footer-top{flex-direction:column;align-items:flex-start;gap:25px}.footer-top>p{max-width:none;font-size:20px}.footer-nav{flex-direction:row;gap:25px}.footer-bottom{flex-wrap:wrap;gap:12px 25px}.dialog-photo{height:230px}.dialog-copy{padding:27px 23px}.dialog-copy h2{font-size:34px}.dialog-contact-line{flex-wrap:wrap}.dialog-actions{gap:21px}.dialog-actions .dark-button{width:100%}.hotel-dialog{width:94vw}.film-dialog-heading{padding:16px}.film-dialog-heading h2{font-size:23px}.film-caption{padding:14px 16px}.hotel-image-label{left:18px;bottom:15px}}
@media(max-width:380px){.hero h1{font-size:39px}.brand>span{font-size:24px}.languages{gap:5px}.contact-phone{font-size:13px}.hotel-card-bottom{display:block}.hotel-card-bottom>.text-link{display:block;margin-top:15px}}
.languages button{font-size:14px}.reserve-link{font-size:14px}@media(max-width:540px){.site-header{grid-template-columns:auto 1fr auto}.languages button{font-size:14px}.brand{justify-self:center}}
.hotel-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.hotel-card h3{font-size:30px}.hotel-image-button img{aspect-ratio:1.4}.hotel-card-bottom{align-items:flex-start;flex-direction:column;gap:10px}.hotel-description{min-height:90px}.upcoming{margin-top:65px;border-top:1px solid #D4B589;padding-top:40px;display:grid;grid-template-columns:1fr 2fr;gap:50px}.upcoming-heading h3{font-size:29px;margin-top:14px}.upcoming-hotels{display:grid;grid-template-columns:1fr 1fr;gap:30px}.upcoming-hotels h4{font-family:var(--serif);font-size:25px;font-weight:400;line-height:1.25;margin:0 0 15px}.upcoming-hotels span{font-size:13px;display:inline-block;color:var(--muted);border:1px solid #D4B589;padding:6px 12px}@media(max-width:1000px){.hotel-grid{gap:25px}.hotel-card h3{font-size:27px}.hotel-description{min-height:116px}.upcoming{grid-template-columns:1fr;gap:30px}}@media(max-width:700px){.hotel-grid{grid-template-columns:1fr;gap:39px}.hotel-card h3{font-size:32px}.hotel-image-button img{aspect-ratio:1.6}.hotel-description{min-height:0}.hotel-card-bottom{flex-direction:row;align-items:center}.upcoming{margin-top:42px;padding-top:30px}.upcoming-hotels{grid-template-columns:1fr;gap:28px}.upcoming-hotels h4{margin-bottom:12px;font-size:26px}}@media(max-width:380px){.hotel-card-bottom{flex-direction:column;align-items:flex-start}}

.network-logo{width:141px;height:65px;object-fit:contain;filter:brightness(0) invert(1)}.site-header.fixed .network-logo{filter:none}.menu-open .site-header .network-logo{filter:brightness(0) invert(1)}.property-logo{display:flex;align-items:center;height:100px!important;margin:10px 0 18px!important}.property-logo img{width:124px;height:86px;object-fit:contain;object-position:left center}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dialog-copy .property-logo{height:100px!important}.hotel-card .hotel-description{min-height:90px}@media(max-width:540px){.network-logo{width:112px;height:52px}.site-header{padding-top:10px;padding-bottom:10px}.hotel-card .hotel-description{min-height:0}.property-logo{margin-bottom:15px!important}}

.booking-section{background:#fff;display:grid;grid-template-columns:.9fr 1.6fr;gap:7%;align-items:start}.booking-intro h2{font-size:clamp(35px,4vw,58px);margin:18px 0 20px}.booking-intro>p:last-child{color:var(--muted);max-width:440px}.booking-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;padding:28px;background:#E9E5E2}.booking-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.booking-form input,.booking-form select{height:52px;width:100%;border:1px solid #D4B589;border-radius:0;background:white;color:var(--ink);padding:0 14px;font-size:15px;letter-spacing:0;text-transform:none;min-width:0}.booking-form .dark-button{width:100%;font-size:15px}.booking-status{align-self:center;color:#222F52;font-size:13px;line-height:1.5}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.news-section{background:#EDE5DA}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.news-card{background:white;border:1px solid #D4B589}.news-card img{aspect-ratio:1.7}.news-card-copy{padding:25px}.news-card time{font-size:11px;letter-spacing:.12em;color:var(--gold)}.news-card h3{font-size:28px;margin:11px 0}.news-card p{color:var(--muted);font-size:15px}.news-card details{margin-top:17px}.news-card summary{cursor:pointer;color:var(--ink);font-size:14px;text-decoration:underline;text-underline-offset:4px}.news-card details p{white-space:pre-line;margin-top:13px}.news-empty{font-family:var(--serif);font-size:24px;color:var(--muted)}.news-empty[hidden]{display:none}.mobile-dock{display:none}
@media(max-width:900px){.booking-section{grid-template-columns:1fr;gap:28px}.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){body{padding-bottom:70px}.site-header{grid-template-columns:auto 1fr auto}.header-actions .languages{gap:6px}.header-actions .languages button{min-width:27px}.hero{height:calc(100svh - 68px);min-height:580px}.hero-content{margin-left:6%;width:88%}.hero .light-button{min-height:52px}.booking-section{padding-top:64px}.booking-form{padding:18px;grid-template-columns:1fr 1fr;gap:13px}.booking-form label:nth-of-type(1),.booking-form label:nth-of-type(5),.booking-form label:nth-of-type(6),.booking-form .dark-button,.booking-status{grid-column:1/-1}.booking-form input,.booking-form select{height:52px}.booking-form .dark-button{min-height:54px}.news-grid{grid-template-columns:1fr}.news-card img{aspect-ratio:1.55}.mobile-dock{position:fixed;z-index:31;display:grid;grid-template-columns:repeat(4,1fr);bottom:0;left:0;right:0;min-height:68px;padding-bottom:env(safe-area-inset-bottom);background:#FEFFFF;box-shadow:0 -5px 25px #222F521b;border-top:1px solid #D4B589}.mobile-dock a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1px;min-height:68px;color:var(--ink);text-align:center}.mobile-dock span{font-size:25px;line-height:1}.mobile-dock small{font-size:11px;line-height:1.2}.mobile-dock .dock-book{background:var(--ink);color:white}.navigation{padding-bottom:calc(95px + env(safe-area-inset-bottom))}.hotel-dialog{max-height:calc(100svh - 90px);margin-bottom:80px}.contact-section{padding-bottom:80px}footer{padding-bottom:85px}}
@media(max-width:380px){.booking-form{grid-template-columns:1fr}.booking-form label{grid-column:1/-1}.site-header{gap:4px}.network-logo{width:96px}}
@media(max-width:700px){body{padding-bottom:calc(70px + env(safe-area-inset-bottom))}}
.language-picker{position:relative}.language-trigger{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:transparent;border:0;color:inherit}.language-trigger svg{flex:none}.language-menu{position:absolute;top:calc(100% + 12px);right:0;z-index:40;display:grid;width:188px;padding:7px;background:#fff;color:var(--ink);box-shadow:0 16px 38px #222F5233;border:1px solid #D4B589}.language-menu[hidden]{display:none}.language-menu button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;text-align:left;padding:9px 11px;background:transparent;border:0;font-size:14px}.language-menu button:hover,.language-menu button[aria-pressed=true]{background:#E9E5E2}@media(max-width:700px){.language-trigger{width:44px}.language-trigger svg{width:20px;height:20px}.language-menu{right:-3px;top:calc(100% + 7px)}}

/* Renion palette: Silk, Marble, Champagne, Pearl, Velvet and Onyx. */
:root{--silk:#EDE5DA;--marble:#E9E5E2;--champagne:#D4B589;--pearl:#FEFFFF;--velvet:#222F52;--onyx:#000000}
.site-header.fixed,.language-menu,.reserve-link,.booking-section,.news-card,dialog{background:var(--pearl)}
.site-header.fixed .reserve-link,.dark-button,.mobile-dock .dock-book{background:var(--velvet);color:var(--pearl)}
.hotels,.wellness,.booking-form{background:var(--marble)}
.intro,.film-section,.news-section{background:var(--silk)}
.hotel-card{background:var(--pearl);border:1px solid var(--champagne)}
.hotel-card-content{padding:22px 22px 25px}
.hotel-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;background:var(--champagne);border-bottom:4px solid var(--champagne)}
.hotel-preview button{border:0;padding:0;overflow:hidden;background:var(--marble)}
.hotel-preview img{height:78px;transition:transform .35s}
.hotel-preview button:hover img{transform:scale(1.08)}
.hotel-preview a{display:block;overflow:hidden;background:var(--marble)}
.hotel-preview a:hover img{transform:scale(1.08)}
.hotel-service-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:15px}
.hotel-service-tags span{padding:5px 9px;background:var(--silk);font-size:11px;line-height:1.2;color:var(--velvet);letter-spacing:.02em}
.hotel-card-bottom{border-color:var(--champagne)}
.dialog-gallery{background:var(--velvet)}
.dialog-gallery .dialog-photo{width:100%;height:380px;object-fit:cover}
.dialog-thumbs{display:flex;gap:6px;overflow-x:auto;padding:7px;scrollbar-width:thin;scrollbar-color:var(--champagne) var(--velvet)}
.dialog-thumbs button{flex:0 0 116px;padding:0;border:2px solid transparent;background:transparent;opacity:.7}
.dialog-thumbs button.active,.dialog-thumbs button:hover{border-color:var(--champagne);opacity:1}
.dialog-thumbs img{width:100%;height:75px;object-fit:cover}
.hotel-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:26px;border-top:1px solid var(--champagne);border-bottom:1px solid var(--champagne)}
.hotel-detail{padding:22px 16px 22px 0}
.hotel-detail+.hotel-detail{border-left:1px solid var(--champagne);padding-left:16px}
.hotel-detail:nth-child(3){border-left:0;padding-left:0}
.hotel-detail:nth-child(n+3){border-top:1px solid var(--champagne)}
.hotel-detail .eyebrow{font-size:10px;color:var(--velvet);margin-bottom:10px}
.hotel-detail p:last-child{font-size:14px;line-height:1.65;color:var(--muted)}
.hotel-dialog{background:var(--pearl)}
.dialog-close{background:var(--pearl);border-color:var(--champagne)}
.amenities>li{background:var(--silk)}
.experience-photo img{object-fit:cover}
.meetings{background:var(--pearl)}
@media(max-width:700px){
  .hotel-card{border-radius:15px;overflow:hidden;box-shadow:0 14px 32px #222F5218}
  .hotel-card-content{padding:20px}
  .hotel-preview img{height:72px}
  .hotel-dialog{width:100vw;max-width:100vw;max-height:calc(100svh - 76px);margin:0 0 76px;border-radius:18px 18px 0 0}
  .dialog-gallery .dialog-photo{height:260px}
  .dialog-thumbs button{flex-basis:92px}
  .dialog-thumbs img{height:65px}
  .dialog-copy{padding:24px 20px 38px}
  .hotel-detail-grid{grid-template-columns:1fr}
  .hotel-detail,.hotel-detail+.hotel-detail{padding:17px 0;border-left:0}
  .hotel-detail+.hotel-detail{border-top:1px solid var(--champagne)}
  .hotel-detail p:last-child{font-size:15px}
  .mobile-dock{background:var(--pearl);border-color:var(--champagne)}
}
.made-in-rox{border-bottom:1px solid #D4B589;padding-bottom:2px;white-space:nowrap}.made-in-rox:hover{color:#D4B589}@media(max-width:700px){.footer-bottom .made-in-rox{width:100%;margin-top:4px}}
.booking-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(1120px,96vw);height:min(92svh,900px);max-height:none;overflow:hidden;background:var(--pearl)}
.booking-dialog-heading{display:flex;align-items:center;justify-content:space-between;padding:17px 72px 15px 26px;border-bottom:1px solid var(--champagne);min-height:86px}
.booking-dialog-heading h2{font-size:29px;margin-top:4px}
.booking-dialog .dialog-close{top:19px;right:20px}
.booking-dialog iframe{display:block;width:100%;height:100%;min-height:0;border:0;background:var(--pearl)}
.booking-dialog-footer{display:flex;justify-content:flex-end;border-top:1px solid var(--champagne);padding:9px 24px;font-size:12px}
.booking-dialog-footer a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.booking-dialog[open]{position:fixed;inset:0;width:100vw;max-width:100vw;height:100svh;max-height:100svh;margin:0;border-radius:0}.booking-dialog-heading{min-height:69px;padding:12px 64px 10px 16px}.booking-dialog-heading .eyebrow{font-size:9px}.booking-dialog-heading h2{font-size:23px}.booking-dialog .dialog-close{top:13px;right:14px;width:40px;height:40px}.booking-dialog-footer{padding:8px 14px calc(8px + env(safe-area-inset-bottom))}}
.network-logo{width:184px;height:42px;filter:none}.site-header .network-logo-on-light{display:none}.site-header.fixed .network-logo-on-dark{display:none}.site-header.fixed .network-logo-on-light{display:block}.menu-open .site-header .network-logo-on-dark{display:block}.menu-open .site-header .network-logo-on-light{display:none}.menu-open .site-header .network-logo,.footer-brand .network-logo{filter:none}
.upcoming-hotels h4 img{width:170px;height:100px;object-fit:contain;object-position:left center}
@media(max-width:540px){.network-logo{width:130px;height:31px}}@media(max-width:380px){.network-logo{width:112px;height:27px}}

/* Rounded controls throughout the public site. */
.reserve-link,.light-button,.dark-button{border-radius:12px}
.language-trigger,.dialog-close{border-radius:50%}
.language-menu{border-radius:12px}
.language-menu button{border-radius:8px}
.hotel-card{border-radius:16px;overflow:hidden}
.hotel-card-bottom .text-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 17px;
  border:1px solid var(--velvet);
  border-radius:12px;
  background:transparent;
  color:var(--velvet);
  line-height:1.3;
  text-align:center;
  transition:background .2s,color .2s,border-color .2s;
}
.hotel-card-bottom .text-link:hover{background:var(--velvet);color:var(--pearl);border-color:var(--velvet)}
.hotel-preview a,.dialog-thumbs button{border-radius:8px}
.film-poster{border-radius:16px}
.booking-form input,.booking-form select{border-radius:10px}
@media(max-width:700px){
  .mobile-dock .dock-book{margin:6px 5px;min-height:56px;border-radius:12px}
}
@media(max-width:900px){
  .booking-section{grid-template-columns:minmax(0,1fr)}
  .booking-intro,.booking-form,.booking-form label{min-width:0}
}

/* Compact, consistent actions across the guest-facing experience. */
.reserve-link,.light-button,.dark-button,.text-link,.news-card summary,.contact-phone,.booking-dialog-footer a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:8px 18px;
  border:1px solid currentColor;
  border-radius:999px;
  font-family:var(--sans);
  font-size:12px;
  font-weight:500;
  line-height:1.25;
  letter-spacing:.045em;
  text-align:center;
  text-decoration:none;
  transition:background .2s,border-color .2s,color .2s,box-shadow .2s;
}
.reserve-link:hover,.light-button:hover,.dark-button:hover,.text-link:hover,.news-card summary:hover,.contact-phone:hover,.booking-dialog-footer a:hover{box-shadow:0 6px 18px #222f5224}
.reserve-link{background:#07122a33;color:var(--pearl);border-color:#ffffffb8;white-space:nowrap}
.reserve-link:hover{background:#ffffff26;color:var(--pearl);border-color:#fff}
.site-header.fixed .reserve-link{background:transparent;color:var(--velvet);border-color:var(--velvet)}
.site-header.fixed .reserve-link:hover{background:var(--velvet);color:var(--pearl)}
.menu-open .site-header .reserve-link{background:transparent;color:var(--pearl);border-color:#ffffffb8}
.menu-open .site-header .reserve-link:hover{background:#ffffff26}
.light-button{background:#07122a33;color:var(--pearl);border-color:#ffffffb8}
.light-button:hover{background:var(--pearl);color:var(--velvet);border-color:var(--pearl)}
.dark-button{background:var(--velvet);color:var(--pearl);border-color:var(--velvet)}
.dark-button:hover{background:#34436d;border-color:#34436d;color:var(--pearl)}
.text-link,.news-card summary,.booking-dialog-footer a{width:max-content;max-width:100%;background:transparent;color:var(--velvet);border-color:var(--velvet)}
.text-link:hover,.news-card summary:hover,.booking-dialog-footer a:hover{background:var(--velvet);color:var(--pearl);border-color:var(--velvet)}
.hotel-card-bottom .text-link{min-height:42px;padding:8px 18px;border-radius:999px;font-size:12px;font-weight:500;letter-spacing:.045em}
.news-card summary{list-style:none;cursor:pointer}
.news-card summary::-webkit-details-marker{display:none}
.contact-phone{width:max-content;max-width:100%;background:transparent;color:var(--pearl);border-color:#ffffffa6;white-space:nowrap}
.contact-phone:hover{background:#ffffff1f;color:var(--pearl);border-color:#fff;text-decoration:none}
.booking-dialog-footer a{min-height:40px}
.film-button>span:nth-child(2){display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 18px;border:1px solid #ffffffb8;border-radius:999px;background:#07122a33;font-size:12px;font-weight:500;letter-spacing:.045em;line-height:1.25;transition:background .2s,border-color .2s}
.film-poster:hover .film-button>span:nth-child(2){background:#ffffff26;border-color:#fff}
@media(max-width:700px){
  .hero .light-button,.booking-form .dark-button{min-height:42px}
  .dialog-actions .dark-button{width:100%}
}

/* Editorial news feed. The leading story has room to breathe; later cards form a
   compact archive and remain readable on a narrow screen. */
.news-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.news-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #d6c4aa;border-radius:18px;background:var(--pearl)}
.news-card.news-featured{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);min-height:380px}
.news-card-image{display:block;overflow:hidden;min-height:230px;background:var(--velvet);text-decoration:none}
.news-card-image img{display:block;width:100%;height:100%;aspect-ratio:1.75;object-fit:cover;transition:transform .45s ease}
.news-card:hover .news-card-image img{transform:scale(1.035)}
.news-featured .news-card-image img{aspect-ratio:auto;min-height:380px}
.news-image-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:230px;color:var(--champagne);font-family:var(--serif);font-size:27px;letter-spacing:.08em}
.news-card-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:30px}
.news-featured .news-card-copy{justify-content:center;padding:clamp(30px,4vw,62px)}
.news-card time{font-size:11px;letter-spacing:.15em;color:#8a704e;text-transform:uppercase}
.news-card h3{margin:16px 0 13px;font-family:var(--serif);font-size:clamp(25px,2.7vw,37px);font-weight:400;line-height:1.16}
.news-featured h3{font-size:clamp(34px,4vw,55px)}
.news-card h3 a{color:var(--velvet);text-decoration:none}
.news-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.news-card-copy>p{margin:0 0 26px;color:var(--muted);font-size:14px;line-height:1.7}
.news-featured .news-card-copy>p{font-size:16px}
.news-read,.news-feed-actions button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:42px;padding:8px 18px;border:1px solid var(--velvet);border-radius:999px;background:transparent;color:var(--velvet);font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.04em;text-decoration:none;cursor:pointer;transition:background .2s,color .2s}
.news-read{margin-top:auto}
.news-read:hover,.news-feed-actions button:hover{background:var(--velvet);color:var(--pearl)}
.news-feed-actions{display:flex;justify-content:center;margin-top:28px}
.news-feed-actions button[hidden]{display:none}

/* Keep the remaining useful labels legible after removing decorative microcopy. */
.section-heading h2,.experience-copy h2,.booking-intro h2,.contact-intro h2{margin-top:0}
.hero h1{margin-top:0}
.news-card time{font-size:13px;letter-spacing:.04em;text-transform:none}
.news-card-copy>p{font-size:16px}
.news-read{font-size:14px}
.booking-form label{font-size:14px;letter-spacing:0;text-transform:none}
.footer-bottom{font-size:13px}
@media(max-width:700px){.mobile-dock small{font-size:12px}}
@media(max-width:700px){.news-grid{grid-template-columns:1fr;gap:18px}.news-card.news-featured{grid-column:auto;display:flex;min-height:0}.news-featured .news-card-image img{aspect-ratio:1.55;min-height:0}.news-card-copy,.news-featured .news-card-copy{padding:22px}.news-featured h3{font-size:32px}.news-featured .news-card-copy>p{font-size:14px}}

.hotel-rate{margin:12px 0 18px;color:var(--velvet);font-size:15px;font-weight:600;letter-spacing:.01em}
.contact-row{align-items:flex-start}
.contact-hotel{min-width:165px}
.contact-hotel h3{margin:0 0 7px}
.contact-hotel .contact-address{color:#e9e5e2;font-size:13px;line-height:1.5;text-decoration:underline;text-underline-offset:3px}
.contact-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 18px;flex:1;min-width:0}
.contact-method{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}
.contact-label{color:#d2b68a;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.contact-values{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.contact-method .contact-phone{min-height:35px;padding:6px 11px;margin:0;font-size:11px;letter-spacing:0}
.contact-whatsapp,.contact-email{color:#fefeff;font-size:12px;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.contact-whatsapp:hover,.contact-email:hover{color:#d2b68a}
.dialog-copy .contact-methods{margin:20px 0;grid-template-columns:repeat(2,minmax(0,1fr))}
.dialog-copy .contact-label{color:#8a704e}
.dialog-copy .contact-method .contact-phone{color:var(--velvet);border-color:var(--velvet)}
.dialog-copy .contact-email,.dialog-copy .contact-whatsapp{color:var(--velvet)}
.dialog-rates{margin:24px 0}
.dialog-rates ul{list-style:none;margin:10px 0 0;padding:0}
.dialog-rates li{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid #d4b589;font-size:13px}
.dialog-rates strong{white-space:nowrap;font-weight:600}
@media(max-width:1100px){.contact-row{display:block}.contact-methods{margin-top:20px}}
@media(max-width:700px){.contact-methods,.dialog-copy .contact-methods{grid-template-columns:1fr 1fr}.contact-method .contact-phone{font-size:11px}}
@media(max-width:440px){.contact-methods,.dialog-copy .contact-methods{grid-template-columns:1fr}}
@media(max-width:700px){.site-header .reserve-link{display:none}}

/* Official Phosphor Light SVGs, shared by desktop and mobile controls. */
.ph-icon{display:inline-block;width:20px;height:20px;flex:none;fill:currentColor;vertical-align:middle;pointer-events:none}
.menu-toggle{display:inline-flex;align-items:center;gap:14px}
.menu-toggle .ph-icon{width:26px;height:26px}
.menu-toggle .ph-menu-close{display:none}
.menu-toggle[aria-expanded=true] .ph-menu-icon{display:none}
.menu-toggle[aria-expanded=true] .ph-menu-close{display:block}
.language-trigger .ph-icon{width:23px;height:23px}
.mobile-dock .ph-icon{display:block;width:24px;height:24px}
.dialog-close .ph-icon{width:24px;height:24px}
.news-read .ph-icon,.booking-dialog-footer .ph-icon,.contact-whatsapp .ph-icon{width:18px;height:18px}
.booking-dialog-footer a,.contact-whatsapp{display:inline-flex;align-items:center;gap:8px}
.booking-form select{appearance:none;background-image:url('/assets/icons/caret-down-light.svg');background-repeat:no-repeat;background-position:right 14px center;background-size:18px;padding-right:42px}
.booking-form input[type=date]::-webkit-calendar-picker-indicator{background-image:url('/assets/icons/calendar-check-light.svg');background-size:20px;background-position:center;background-repeat:no-repeat;width:20px;height:20px}

/* Full-width mobile fields also keep Safari's native date controls inside the form. */
@media(max-width:700px){
  .booking-form{grid-template-columns:minmax(0,1fr);gap:16px;padding:18px}
  .booking-form>label,.booking-form>.dark-button,.booking-form>.booking-status{grid-column:1/-1;min-width:0;max-width:100%}
  .booking-form input,.booking-form select{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:52px;font-size:16px}
  .booking-form input[type=date]{-webkit-appearance:none;appearance:none;min-inline-size:0;text-align:left}
  .booking-form input[type=date]::-webkit-date-and-time-value{min-width:0;text-align:left}
  .booking-form input[type=date]::-webkit-datetime-edit{min-width:0;padding:0}
  .booking-status:empty{display:none}
}
