@font-face{font-family:Cormorant;src:url(/assets/fonts/cormorant-garamond-normal-latin.woff2)format("woff2");font-style:normal;font-weight:300 700;font-display:swap}@font-face{font-family:Cormorant;src:url(/assets/fonts/cormorant-garamond-normal-latin-ext.woff2)format("woff2");font-style:normal;font-weight:300 700;font-display:swap;unicode-range:U+100-2FF,U+1E??}@font-face{font-family:Montserrat;src:url(/assets/fonts/montserrat-normal-latin.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Montserrat;src:url(/assets/fonts/montserrat-normal-latin-ext.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+100-2FF,U+1E??}:root{--ink:#281b27;--muted:#665961;--paper:#f7f1eb;--white:#fffaf7;--plum:#4d203e;--deep:#2d1829;--pink:#bd789b;--line:#d8c9cf;--serif:Cormorant, Georgia, serif;--sans:Montserrat, Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);margin:0;font-size:15px;line-height:1.7}img{width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,select,input{font:inherit}button,a,summary,select{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible,button:focus-visible{outline-offset:4px;outline:3px solid #b16d90}[hidden]{display:none!important}.wrap{width:min(100% - 80px,1360px);margin-inline:auto}.skip-link{z-index:100;background:var(--white);padding:12px 18px;position:absolute;top:-100px;left:20px}.skip-link:focus{top:12px}.site-header{z-index:20;background:var(--white);border-bottom:1px solid #eadfe1;position:relative}.header-inner{align-items:center;gap:38px;min-height:90px;display:flex}.brand{min-height:44px;color:var(--deep);flex:none;align-items:center;line-height:1;display:flex}.brand-lockup{align-items:center;gap:9px;display:flex}.brand img{width:33px;height:32px}.brand-fashion{letter-spacing:-.03em;font-size:16px;font-weight:700}.brand-rule{background:var(--pink);width:1px;height:27px;margin-inline:16px}.brand-resort{letter-spacing:.23em;max-width:55px;font-size:9px;font-weight:700;line-height:1.15}.desktop-nav{align-items:center;gap:clamp(15px,2vw,31px);margin-inline-start:auto;display:flex}.nav-disclosure,.nav-disclosure summary{display:none}.nav-disclosure nav{align-items:center;gap:clamp(15px,2vw,31px);display:flex}.desktop-nav>a,.nav-disclosure nav>a{letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border-bottom:1px solid #0000;padding-block:12px;font-size:11px;font-weight:650;line-height:1.4}.desktop-nav>a:hover,.desktop-nav>a[aria-current=page],.nav-disclosure nav>a:hover,.nav-disclosure nav>a[aria-current=page]{border-color:var(--plum)}.desktop-nav .nav-book,.nav-disclosure .nav-book{display:none}.header-tools{align-items:center;gap:16px;display:flex}.visually-hidden,.language-label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}select[data-language]{min-width:44px;min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:12px 3px;font-size:11px;font-weight:700}.header-book,.button{background:var(--plum);color:#fff;text-transform:uppercase;letter-spacing:.16em;white-space:nowrap;justify-content:center;align-items:center;min-height:47px;padding:12px 25px;font-size:10px;font-weight:750;transition:background .18s,transform .18s;display:inline-flex}.header-book:hover,.button:hover{background:#713657;transform:translateY(-2px)}.button-light{background:var(--white);color:var(--deep)}.button-light:hover{color:var(--deep);background:#eddddf}.eyebrow{letter-spacing:.24em;text-transform:uppercase;color:#874f70;font-size:10px;font-weight:700;line-height:1.5}.section{padding-block:clamp(80px,9vw,150px)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);letter-spacing:-.035em;font-weight:500;line-height:.98}h1{font-size:clamp(66px,8vw,144px)}h2{font-size:clamp(52px,6vw,98px)}h3{font-size:clamp(34px,3.5vw,56px)}.text-link{letter-spacing:.13em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:10px;padding-bottom:6px;font-size:11px;font-weight:700;line-height:1.4;display:inline-flex}.text-link:hover{color:#aa587f}.hero{background:var(--deep);color:#fff;align-items:stretch;min-height:min(720px,100svh - 90px);display:flex;position:relative;overflow:hidden}.hero-photo{position:absolute;inset:0 0 0 40%;overflow:hidden}.hero-photo:after{content:"";background:linear-gradient(90deg, var(--deep) 0%, #2d1829db 13%, #2d182912 53%), linear-gradient(0deg, #2d182929, transparent 40%);position:absolute;inset:0}.hero-photo img{object-fit:cover;object-position:center;height:100%}.hero-content{justify-content:space-between;align-items:center;padding-block:80px;display:flex;position:relative}.hero-copy{max-width:720px}.hero .eyebrow{color:#e7b5cb}.hero h1{max-width:700px;margin:32px 0 27px}.hero-copy>p:not(.eyebrow){color:#eee5eb;max-width:470px;font-size:16px;line-height:1.9}.hero-actions{align-items:center;gap:36px;margin-top:40px;display:flex}.hero .text-link{color:#fff}.hero .button{color:var(--deep);background:#f2dde6}.hero .button:hover{background:var(--white)}.hero-side-note{writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.22em;color:#fff;align-self:end;margin:0 0 15px;font-size:10px}.reservation-band{border-block-start:5px solid var(--pink);background:#eadfe3;scroll-margin-top:20px}.reservation-inner{grid-template-columns:minmax(190px,.75fr) minmax(0,4fr);align-items:end;gap:17px 38px;padding-block:32px 27px;display:grid}.reservation-intro .eyebrow{margin-bottom:6px}.reservation-intro h2{margin:0;font-size:clamp(31px,2.9vw,44px);line-height:.98}.reservation-form{grid-template-columns:minmax(155px,1.25fr) minmax(155px,1.25fr) minmax(92px,.75fr) minmax(92px,.75fr) minmax(155px,1.25fr);align-items:end;gap:12px;min-width:0;display:grid}.reservation-field{min-width:0}.reservation-field label{color:var(--deep);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:12px;font-weight:750;display:block}.reservation-field input,.reservation-field select{background:var(--white);width:100%;min-width:0;min-height:51px;color:var(--ink);color-scheme:light;border:1px solid #8b7783;border-radius:0;padding:10px 11px;font-size:16px;font-weight:600}.reservation-field input[type=date]{direction:ltr}.reservation-submit{cursor:pointer;letter-spacing:.08em;white-space:normal;border:0;width:100%;min-height:51px;padding-inline:16px;line-height:1.4}.reservation-note{color:#51404c;grid-column:2;margin:0;font-size:12px;line-height:1.5}.intro-section{border-bottom:1px solid var(--line)}.intro-grid{grid-template-columns:1.1fr .9fr;align-items:end;gap:9vw;display:grid}.intro-grid h2{max-width:680px;margin:12px 0 0}.lead{font-family:var(--serif);color:#3a2937;margin-bottom:34px;font-size:clamp(25px,2.25vw,38px);line-height:1.2}.section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:46px;display:flex}.section-heading h2{margin:10px 0 0}.feature-pair{grid-template-columns:1fr 1fr;gap:24px;display:grid}.feature-card{background:var(--white);display:block;overflow:hidden}.feature-card img{object-fit:cover;height:clamp(280px,33vw,485px);transition:transform .45s}.feature-card:hover img{transform:scale(1.035)}.feature-card>div{min-height:175px;padding:27px 35px 34px;position:relative}.feature-card .eyebrow{margin-bottom:12px}.feature-card h3{margin:0 0 8px}.feature-card p{max-width:390px;color:var(--muted);margin:0;line-height:1.55}.feature-arrow{color:var(--plum);font-size:25px;position:absolute;top:45px;right:35px}.editorial-band{background:#eadfe3}.editorial-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(50px,10vw,170px);display:grid}.editorial-image{max-width:490px}.editorial-image img{object-fit:cover;height:clamp(500px,60vw,670px)}.editorial-text{max-width:520px}.editorial-text h2{margin:18px 0 30px}.editorial-text>p:not(.eyebrow){color:#594452;margin-bottom:35px;font-size:17px;line-height:1.9}.image-statement{grid-template-columns:1fr .9fr;align-items:center;gap:9vw;display:grid}.image-statement>div{max-width:550px}.image-statement h2{margin:20px 0 28px}.image-statement p:not(.eyebrow){color:var(--muted);margin-bottom:35px;font-size:17px;line-height:1.8}.image-statement img{object-fit:cover;height:620px}.booking-callout{background:var(--plum);color:#fff;padding-block:70px}.booking-callout-inner{justify-content:space-between;align-items:center;gap:35px;display:flex}.booking-callout .eyebrow{color:#e5b6cb}.booking-callout h2{margin:0;font-size:clamp(48px,5vw,76px)}.site-footer{background:var(--deep);color:#f7ebef;padding:85px 0 30px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:70px;display:grid}.site-footer .eyebrow{color:#d6a5be}.footer-title{font-family:var(--serif);max-width:520px;margin:15px 0 32px;font-size:clamp(50px,5vw,78px);line-height:1}.footer-info{flex-direction:column;justify-self:end;align-items:flex-start;gap:10px;min-width:0;max-width:100%;display:flex}.footer-info p{margin-bottom:14px}.footer-info a,.footer-info p{overflow-wrap:anywhere;max-width:100%}.footer-info a:hover{color:#e3afca}.footer-bottom{color:#cfbfc8;letter-spacing:.03em;border-top:1px solid #62465b;justify-content:space-between;gap:30px;margin-top:80px;padding-top:22px;font-size:10px;display:flex}.page-head{border-bottom:1px solid var(--line);padding-top:clamp(80px,9vw,140px);padding-bottom:clamp(55px,7vw,105px)}.page-head h1{max-width:1000px;margin:20px 0 22px}.page-intro{max-width:660px;color:var(--muted);margin-bottom:0;font-size:16px;line-height:1.9}.page-head-action{margin-top:28px}.jump-links{border-bottom:1px solid var(--line);gap:40px;display:flex}.jump-links a{text-transform:uppercase;letter-spacing:.14em;gap:20px;padding:24px 0;font-size:11px;font-weight:700;display:inline-flex}.jump-links a:hover{color:#9e5c81}.stay-section{scroll-margin-top:20px}.stay-overview{grid-template-columns:1fr 1fr;align-items:center;gap:8vw;margin-bottom:58px;display:grid}.stay-overview>div{max-width:530px}.stay-overview h2{margin:16px 0 22px}.stay-overview p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.9}.stay-overview img{object-fit:cover;height:410px}.room-list{border-top:1px solid var(--line)}.room-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 120px minmax(145px,auto);align-items:center;gap:25px;padding:25px 0;display:grid}.room-row h3{margin:0;font-size:clamp(30px,3.1vw,44px)}.room-row span{font-variant-numeric:tabular-nums;color:var(--muted);font-size:14px;font-weight:600}.room-row a{text-transform:uppercase;letter-spacing:.08em;text-align:end;min-height:44px;color:var(--plum);justify-self:end;align-items:center;font-size:12px;font-weight:750;line-height:1.3;display:inline-flex}.room-row a:hover{text-decoration:underline}.stay-alt{background:#efe5e8}.stay-note{align-items:center;gap:35px;max-width:750px;margin:65px 0 0;display:flex}.stay-note img{object-fit:cover;width:40%;height:180px}.stay-note p{color:var(--muted);max-width:390px;line-height:1.75}.experience-grid{grid-template-columns:1fr 1fr;gap:70px 24px;display:grid}.experience-card{background:var(--white)}.experience-card img{object-fit:cover;height:clamp(330px,35vw,500px)}.experience-card:nth-child(2) img{object-position:center 34%}.experience-card>div{padding:32px 35px 40px}.experience-card h2{margin:12px 0 15px;font-size:clamp(44px,4.5vw,68px)}.experience-card p:last-child{max-width:450px;color:var(--muted);margin:0}.gallery-grid{grid-template-columns:1fr 1fr;gap:55px 24px;display:grid}.gallery-grid figure{margin:0}.gallery-grid img{object-fit:cover;height:520px}.gallery-grid .gallery-wide{grid-column:1/-1}.gallery-grid .gallery-wide img{height:650px}.gallery-grid figcaption{text-transform:uppercase;letter-spacing:.18em;padding-top:14px;font-size:10px;font-weight:700}.visit-grid{grid-template-columns:1.1fr .9fr;align-items:start;gap:9vw;display:grid}.visit-grid>img{object-fit:cover;height:630px}.visit-details{padding-top:25px}.visit-details h2{margin:20px 0 28px;font-size:clamp(46px,5vw,72px)}.visit-details address{margin-bottom:25px;font-size:17px;font-style:normal;line-height:1.8}.visit-contact{flex-direction:column;align-items:flex-start;gap:8px;margin-top:70px;display:flex}.visit-contact h3{margin:0 0 8px;font-size:38px}.visit-contact a:hover{color:#945076}.small-note{color:var(--muted);max-width:390px;margin-top:55px;font-size:12px}.booking-options{grid-template-columns:1fr;display:grid}.page-head:has(+.booking-review:not([hidden])) .page-head-action{display:none}.booking-review{border-inline-start:5px solid var(--plum);background:#eadfe3;margin-top:40px;padding:clamp(28px,4vw,56px);scroll-margin-top:24px}.booking-review h2{margin:8px 0 30px;font-size:clamp(42px,4vw,64px)}.booking-review p:not(.eyebrow){max-width:770px;margin-bottom:22px}.review-book{margin-block:0 24px;margin-inline:0 25px}.review-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0 0 27px;display:grid}.review-grid div{border-top:1px solid #c5afb9;padding-top:11px}.review-grid dt{color:#674459;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700}.review-grid dd{font-family:var(--serif);margin:6px 0 0;font-size:28px;line-height:1.1}.booking-noscript{margin-top:30px}.booking-panel{padding:clamp(35px,4vw,70px)}.booking-panel.secondary{background:#eadfe3}.booking-panel h2{margin:20px 0 25px;font-size:clamp(45px,4vw,68px)}.booking-panel p:not(.eyebrow){max-width:440px;margin-bottom:32px;line-height:1.8}.booking-panel.secondary .text-link{text-transform:none;letter-spacing:0;margin-bottom:22px;font-size:13px}.booking-panel.secondary .text-link:last-child{overflow-wrap:anywhere;max-width:100%}[dir=rtl] .hero-photo:after{transform:scaleX(-1)}[dir=rtl] .hero-copy{text-align:right}[dir=rtl] .footer-info{justify-self:start}[dir=rtl] .feature-arrow{left:35px;right:auto}[dir=rtl] .room-row a{justify-self:start}@media (width<=1120px){.reservation-inner{grid-template-columns:1fr}.reservation-note{grid-column:1}.header-inner{gap:22px}.desktop-nav{gap:14px}.header-book{display:none}.desktop-nav .nav-book,.nav-disclosure .nav-book{display:inline-block}}@media (width<=900px){.wrap{width:min(100% - 48px,1360px)}.header-inner{flex-wrap:wrap;gap:0;min-height:74px}.brand{margin-inline-end:auto}.desktop-nav{display:none}.nav-disclosure{order:3;width:100%;margin:0;display:block}.nav-disclosure summary{inset-inline-end:90px;cursor:pointer;text-transform:uppercase;letter-spacing:.13em;justify-content:center;align-items:center;min-height:44px;padding:8px 10px;font-size:11px;font-weight:700;list-style:none;display:flex;position:absolute;top:15px}.nav-disclosure summary::-webkit-details-marker{display:none}.nav-disclosure nav{flex-direction:column;align-items:stretch;gap:0;padding:10px 0 24px;display:flex}.nav-disclosure nav>a{border-top:1px solid #eadfe1;border-bottom:0;padding:13px 0}.header-tools{margin-inline-end:0;padding-inline-end:0}.hero{min-height:660px}.hero-photo{inset:0}.hero-photo:after{background:linear-gradient(90deg,#2d1829eb,#2d182959),linear-gradient(#0000,#2d182966)}.hero-content{padding-block:70px}.hero h1{font-size:clamp(68px,11vw,105px)}.intro-grid,.editorial-grid,.image-statement,.stay-overview,.visit-grid{gap:45px}.editorial-image img,.image-statement img,.visit-grid>img{height:520px}}@media (width<=820px){.reservation-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.reservation-submit{grid-column:1/-1}}@media (width<=700px){.reservation-inner{gap:20px;padding-block:29px 26px}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wrap{width:min(100% - 38px,1360px)}.brand-fashion{font-size:15px}.brand-rule{height:22px;margin-inline:10px}.brand-resort{font-size:8px}.nav-disclosure summary{inset-inline-end:74px}.hero{min-height:0;display:block}.hero-photo{height:300px;position:relative;inset:auto}.hero-photo:after{display:none}.hero-photo img{object-position:center 42%}.hero-content{padding-block:38px 50px;display:block}.hero h1{margin:19px 0 20px;font-size:clamp(60px,14vw,88px)}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-actions{flex-wrap:wrap;gap:22px;margin-top:28px}.hero-side-note{display:none}.section{padding-block:80px}.intro-grid,.feature-pair,.editorial-grid,.image-statement,.stay-overview,.experience-grid,.gallery-grid,.visit-grid,.booking-options,.footer-grid{grid-template-columns:1fr}.intro-grid{gap:25px}.section-heading{flex-direction:column;align-items:start;gap:22px}.feature-card img{height:310px}.feature-card>div{padding:25px}.editorial-grid,.image-statement{gap:42px}.editorial-image img,.image-statement img{height:420px}.booking-callout-inner{flex-direction:column;align-items:start}.booking-callout h2{font-size:56px}.footer-info{justify-self:start}.footer-bottom{flex-direction:column;margin-top:60px}.page-head{padding-top:75px}.page-head h1{font-size:clamp(63px,14vw,88px)}.stay-overview{gap:28px}.stay-overview img{height:300px}.room-row{grid-template-columns:minmax(0,1fr) minmax(0,auto);gap:5px 15px}.room-row h3{grid-column:1/-1}.room-row a{justify-self:start}.stay-note{flex-direction:column;align-items:start}.stay-note img{width:100%;height:200px}.experience-grid{gap:24px}.experience-card img{height:320px}.gallery-grid .gallery-wide{grid-column:auto}.gallery-grid img,.gallery-grid .gallery-wide img{height:440px}.visit-grid>img{height:350px}.visit-contact{margin-top:45px}.booking-panel{min-height:auto}.booking-panel h2{font-size:54px}}@media (width<=420px){.reservation-field:nth-of-type(-n+2){grid-column:1/-1}.brand-fashion{font-size:13px}.brand-rule{margin-inline:7px}.nav-disclosure summary{inset-inline-end:70px;top:15px}.hero h1{font-size:57px}.hero-actions .text-link{font-size:10px}.room-row h3{font-size:31px}}@media (width<=359px){.brand-resort,.brand-rule{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
