:root{--navy:#162640;--cream:#f8f5ef;--sand:#eee6d9;--ink:#28303a;--muted:#707176;--serif:'Italiana',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}button,a{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #c79757;outline-offset:4px}.skip{position:absolute;top:-100px;z-index:200;background:white;padding:12px}.skip:focus{top:10px}.site-header{height:88px;position:fixed;top:0;left:0;right:0;background:rgba(251,249,245,.96);backdrop-filter:blur(14px);display:flex;justify-content:space-between;align-items:center;padding:0 clamp(24px,5vw,88px);z-index:50;border-bottom:1px solid rgba(20,38,64,.09)}.brand{display:flex;align-items:center;gap:12px;color:var(--navy)}.brand .fleur{font-size:38px;line-height:1}.brandtext{font:22px var(--serif);letter-spacing:2px;white-space:nowrap}.brandtext small{display:block;text-align:center;font:9px var(--sans);letter-spacing:3px;margin-top:6px}.desktop-nav,.header-right{display:flex;align-items:center;gap:clamp(15px,2.25vw,34px)}.desktop-nav a{font-size:12px;letter-spacing:1px;text-transform:uppercase;transition:opacity .2s}.desktop-nav a:hover,.footer-links a:hover{opacity:.55}.header-right{gap:21px}.lang{border:0;background:none;cursor:pointer;color:var(--navy);font-size:12px;font-weight:700;letter-spacing:1px}.lang span{font-weight:400}.btn{display:inline-flex;justify-content:center;align-items:center;gap:20px;padding:18px 29px;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:1.6px;line-height:1.2;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-dark{background:var(--navy);color:white}.btn-cream{background:var(--cream);color:var(--navy)}.hamburger{display:none;background:transparent;border:0;padding:10px;cursor:pointer}.hamburger span{display:block;width:24px;height:1px;margin:6px;background:var(--navy)}.mobile-nav{display:none}.hero{min-height:720px;height:min(900px,92svh);position:relative;margin-top:88px;color:#fff;overflow:hidden}.hero-img{width:100%;height:100%;object-fit:cover;object-position:center 57%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,20,25,.74) 0%,rgba(10,25,29,.36) 55%,rgba(8,20,23,.13)),linear-gradient(0deg,rgba(4,17,22,.3),transparent 35%)}.hero-content{position:absolute;top:50%;left:clamp(26px,9vw,160px);transform:translateY(-48%);max-width:830px}.eyebrow{display:block;font-size:11px;letter-spacing:3px;text-transform:uppercase;font-weight:700;color:#8a7862}.eyebrow.light{color:#e6ddcf}.hero h1{font:clamp(58px,6.6vw,110px)/1.05 var(--serif);letter-spacing:-1.4px;margin:26px 0}.hero h1 em,h2 em{font-weight:400}.hero-content p{max-width:440px;font-size:16px;line-height:1.8;color:#f4f0e8}.hero-actions{display:flex;align-items:center;gap:33px;margin-top:35px}.inline-arrow{font-size:12px;letter-spacing:1px}.inline-arrow span{margin-left:8px}.hero-bottom{position:absolute;bottom:36px;left:clamp(26px,9vw,160px);right:clamp(26px,7vw,130px);display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px}.booking-strip{background:#efe8dd;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:36px clamp(25px,8vw,140px)}.booking-strip h2{font:clamp(23px,2.5vw,36px) var(--serif);margin:10px 0 0}.section-pad{padding:clamp(76px,10vw,154px) clamp(25px,9vw,156px)}.intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,10vw,180px);align-items:center}.section-num{font-size:10px;letter-spacing:2px;margin-bottom:80px;color:#7e7c75}.intro h2,.split-title h2,.gallery-heading h2,.location h2,.faq h2{font:clamp(50px,5.1vw,85px)/1.12 var(--serif);letter-spacing:-1px;margin:25px 0}.intro-copy p,.split-title p,.gallery-heading p,.location-copy p{font-size:15px;line-height:2;color:#66645f;max-width:470px}.text-link{display:inline-block;border-bottom:1px solid var(--navy);padding-bottom:12px;font-size:11px;font-weight:700;letter-spacing:1.4px;margin-top:28px}.intro-image{position:relative}.intro-image>img{width:100%;height:630px;object-fit:cover}.photo-caption{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.7px;margin-top:16px}.statement{text-align:center;background:#e8e0d4;padding:110px 20px 120px}.fleur.small{display:block;font-size:32px;color:var(--navy);margin-bottom:32px}.statement h2{font:clamp(65px,7vw,120px)/1.03 var(--serif);margin:24px 0}.statement p{color:#6f6b65;font-size:14px;letter-spacing:1px}.split-title,.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:47px}.split-title>div,.gallery-heading>div{max-width:690px}.split-title p,.gallery-heading p{max-width:290px}.room-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.room-card{position:relative;overflow:hidden;min-height:650px;background:#ddd}.room-card>img{height:650px;width:100%;object-fit:cover;transition:transform .6s}.room-card:hover>img{transform:scale(1.035)}.room-card:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(9,17,23,.72));pointer-events:none}.room-detail{position:absolute;z-index:1;bottom:37px;left:38px;right:25px;color:#fff}.room-detail span{font-size:10px;letter-spacing:2px}.room-detail h3{font:clamp(32px,3.4vw,55px) var(--serif);margin:12px 0 24px}.room-detail a{font-size:10px;letter-spacing:1.5px;border-bottom:1px solid #fff;padding-bottom:10px}.room-disclaimer{color:#777;font-size:12px;margin-top:20px}.pool-panel{position:relative;height:700px;color:#fff}.pool-panel>img{width:100%;height:100%;object-fit:cover}.pool-panel:after{content:"";position:absolute;inset:0;background:rgba(5,32,37,.32)}.pool-overlay{position:absolute;z-index:1;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;width:min(90%,730px)}.pool-overlay h2{font:clamp(65px,7vw,110px)/1.05 var(--serif);margin:28px 0}.pool-overlay p{font-size:15px;line-height:1.8;margin:0 auto 35px;max-width:450px}.gallery-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-template-rows:260px 260px;gap:14px}.gallery-item{border:0;padding:0;overflow:hidden;cursor:zoom-in;background:#ddd;position:relative}.gallery-item:hover img{transform:scale(1.055)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.g1{grid-row:span 2}.g2{grid-column:span 2}.g2 img{object-position:center 48%}.location{background:#eee8df;display:grid;grid-template-columns:1fr 1.15fr;gap:9vw;align-items:center}.location address{font-style:normal;font-size:15px;line-height:2.1;margin-top:30px}.location iframe{width:100%;height:510px;border:0;filter:grayscale(.35)}.faq{max-width:1050px;margin:auto}.faq details{border-bottom:1px solid #c9c1b6;padding:25px 0}.faq summary{cursor:pointer;font-size:17px;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:16px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:24px;font-weight:400}.faq details[open] summary:after{content:'−'}.faq details p{max-width:720px;line-height:1.8;color:#666}.final-cta{background:var(--navy);color:white;text-align:center;padding:104px 20px 120px}.final-cta .fleur{font-size:46px;display:block;margin-bottom:24px}.final-cta h2{font:clamp(65px,7vw,111px) var(--serif);margin:24px 0}.final-cta p{font-size:15px;color:#d4dbe0;margin-bottom:34px}footer{background:#f8f5ef;padding:54px clamp(25px,9vw,156px) 25px}.footer-top{display:flex;justify-content:space-between;gap:32px;align-items:center;padding-bottom:60px}.footer-links{display:flex;gap:22px;flex-wrap:wrap;font-size:12px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ddd7cd;padding-top:24px;font-size:11px;color:#777}.gallery-item:focus-visible{outline-offset:-5px}dialog#lightbox{border:0;background:rgba(10,18,28,.96);padding:55px 15px 20px;max-width:100vw;max-height:100vh;width:100vw;height:100vh;color:white}dialog::backdrop{background:rgba(0,0,0,.85)}#lightboxImage{height:100%;max-width:100%;object-fit:contain;margin:auto}.close-lightbox{position:absolute;right:22px;top:12px;background:none;color:white;font-size:40px;border:0;cursor:pointer}@media(max-width:1100px){.desktop-nav{display:none}.hamburger{display:block}.mobile-nav{position:fixed;z-index:45;top:88px;left:0;right:0;background:var(--cream);padding:24px 6%;box-shadow:0 10px 22px #0002;flex-direction:column;gap:20px}.mobile-nav.open{display:flex}.mobile-nav a{font-size:14px;text-transform:uppercase;letter-spacing:1.4px}.intro{gap:45px}.intro-image>img{height:510px}.room-card,.room-card>img{min-height:520px;height:520px}}@media(max-width:700px){.site-header{height:72px;padding:0 17px}.brand{gap:7px}.brand .fleur{font-size:30px}.brandtext{font-size:16px;letter-spacing:1.3px}.brandtext small{font-size:7px;letter-spacing:2px}.headbook{display:none}.header-right{gap:5px}.mobile-nav{top:72px}.hero{margin-top:72px;height:calc(90svh - 72px);min-height:600px}.hero-img{object-position:57% center}.hero-content{left:24px;right:22px;top:50%;transform:translateY(-45%)}.hero h1{font-size:clamp(52px,13.1vw,76px)}.hero-content p{font-size:14px}.hero-actions{flex-wrap:wrap;gap:22px}.hero-bottom{left:24px;right:24px;bottom:20px;font-size:9px}.booking-strip{flex-direction:column;align-items:flex-start;padding:35px 24px}.section-pad{padding:80px 24px}.intro,.location{grid-template-columns:1fr;gap:42px}.section-num{margin-bottom:40px}.intro h2,.split-title h2,.gallery-heading h2,.location h2,.faq h2{font-size:54px}.intro-image>img{height:470px}.statement{padding:86px 20px}.statement h2{font-size:70px}.split-title,.gallery-heading{display:block}.split-title p,.gallery-heading p{max-width:100%}.room-grid{grid-template-columns:1fr;gap:20px}.room-card,.room-card>img{height:540px;min-height:540px}.room-detail{left:24px}.pool-panel{height:650px}.pool-overlay h2{font-size:70px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:310px 180px 180px;gap:9px}.g1{grid-column:span 2;grid-row:span 1}.g2{grid-column:span 2}.g3,.g4{grid-column:span 1}.g5{display:none}.location iframe{height:340px}.final-cta h2{font-size:65px}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start;gap:25px}.footer-links{gap:18px}.footer-bottom{gap:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
