@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&display=swap');
:root{--ink:#f3f0e8;--paper:#0e1718;--gold:#d3b57e;--line:#344243;--muted:#b7c3c1;--panel:#182628}
body{background:var(--paper);color:var(--ink);font-size:17px;line-height:1.75}main{overflow:hidden}header{background:#0b1315;border-bottom:1px solid #36423d;padding:18px 5%;min-height:112px;gap:30px}.identity{gap:18px}.logo-art{width:78px;height:78px;mix-blend-mode:normal;background:#faf9f5;border:1px solid #b49b70;padding:6px;object-fit:contain}.identity>span{display:block;border:0;padding:0;color:#cfb789;font-size:10px;letter-spacing:2px}.identity strong{display:block;color:#f5f1e6;font-family:Georgia,serif;font-size:24px;font-weight:400;letter-spacing:3px;margin-bottom:3px}nav{font-size:14px;gap:27px;align-items:center}nav a{color:#d6dcd8}nav a:hover{color:var(--gold)}.nav-contact{border:1px solid #b79c6d;padding:10px 16px;color:#ebd4a9}.hero{padding:70px 6% 62px;max-width:1500px}.eyebrow{color:var(--gold);font-size:12px;letter-spacing:2.6px}.hero h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(52px,6.1vw,88px);line-height:1.02;letter-spacing:-1.8px;margin:27px 0 28px}.hero h1 em{font-family:inherit;color:var(--gold);font-size:1em}.hero-bottom p{color:var(--muted);font-size:17px}.button{border:1px solid #d1b17a;background:#d1b17a;color:#172123;font-weight:600;font-size:14px;min-height:51px;padding:13px 23px;gap:24px}.button:hover{background:#ecd4ab;color:#102022;border-color:#ecd4ab}.button.light{background:#d1b17a;color:#162426;border-color:#d1b17a}.button.light:hover{background:#efdab4}.text-link{color:#e2c58d;font-weight:500;border-color:#7e724f}.home-hero{display:grid;grid-template-columns:1fr 1fr;padding:0;max-width:none;min-height:650px}.hero-content{padding:68px 8% 50px 12%;align-self:center}.home-hero h1{font-size:clamp(60px,5.8vw,88px)}.home-hero .hero-bottom{display:block}.home-hero .hero-bottom p{max-width:420px;margin-bottom:25px}.hero-signature{color:#9da9a6;text-transform:uppercase;letter-spacing:3px;font-size:11px;margin-top:35px}.hero-image{position:relative;margin:0;min-height:650px;overflow:hidden}.hero-image>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 60%}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,17,20,.06) 20%,rgba(5,14,18,.88) 100%)}.hero-image figcaption{position:absolute;z-index:1;bottom:48px;left:9%;right:8%}.hero-image figcaption span{font-size:11px;letter-spacing:3px;color:#dec48e}.hero-image figcaption strong{display:block;font:400 clamp(32px,3.3vw,48px)/1.13 'Cormorant Garamond',Georgia,serif;margin:15px 0 20px}.hero-image figcaption a{display:inline-block;font-size:14px;border-bottom:1px solid #baa779;padding-bottom:5px}.territories{margin:0;padding:23px 6%;background:#172529;border-top:0;border-bottom:1px solid var(--line);font-size:14px;gap:25px}.territories span:first-child{color:#d3bb89}.section{padding:80px 6%}.section-head{gap:45px;align-items:end;margin-bottom:38px}.section-head p{color:var(--muted);font-size:16px}h2{font:400 clamp(36px,4vw,55px)/1.12 'Cormorant Garamond',Georgia,serif;letter-spacing:-.7px;margin-top:15px}h3{font-size:24px;line-height:1.3;font-weight:500;letter-spacing:-.4px}.services{gap:20px;border:0}.service,.service+.service{background:var(--panel);padding:32px;border:1px solid var(--line);border-top:2px solid #ad9361;display:flex;flex-direction:column}.service .number{color:#d6bd8b;margin-bottom:42px}.service p{color:var(--muted);font-size:16px;max-width:none}.service .text-link{align-self:start;margin-top:auto}.stay{background:#1c3030;margin:0 6%;border:1px solid #45524a;min-height:520px}.stay-copy{padding:50px 12%}.stay-copy h2{font-size:clamp(42px,4vw,60px)}.stay-copy p{color:#c4d1ce}.stay img{min-height:520px;object-position:center}.offers{gap:24px}.offer{background:#182729;border:1px solid #3d4c49;padding:32px;position:relative}.offer:before{content:'';display:block;width:36px;height:2px;background:var(--gold);margin-bottom:30px}.offer p{color:#bfcbc7;font-size:16px}.offer h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:33px;letter-spacing:0}.brand-grid{gap:22px}.press-link{color:#b9c5bf;font-size:13px}.page-sejours .hero,.page-night-spa .hero{background:linear-gradient(90deg,rgba(10,22,24,.98),rgba(10,22,24,.84)),url('/assets/night-spa.jpg') center 58%/cover;max-width:none;padding-bottom:64px}.page-sejours .hero h1{max-width:1000px}.page-sejours .hero-bottom p{max-width:700px}.film-section{margin:0 6%;padding-top:34px}.film-frame.youtube-frame{border:1px solid #46544e;box-shadow:0 24px 70px rgba(0,0,0,.35)}.film-copy{padding:36px 0 20px;gap:10px 55px}.film-copy h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:49px;margin-top:7px}.film-copy p{color:var(--muted)}.film-copy .eyebrow{color:var(--gold)}.film-copy .text-link{color:#e0c58f}.film-note{color:#9daba6!important;font-size:13px}.wide-photo{border:1px solid #42504c;object-position:center;height:540px}.back{color:#c3ccbf}.map-section{background:#162326;max-width:none;border-top:1px solid #384743;border-bottom:1px solid #384743}.map-layout{gap:36px}.destination-list{border-color:#46534b}.destination{background:#17292b;color:#f0eee5;border-color:#41504a;padding:17px 18px;transition:background .2s}.destination:hover,.destination[aria-pressed=true]{background:#2a3d3c}.destination[aria-pressed=true]{box-shadow:inset 3px 0 #d3b57e}.destination>span{color:#cdb582}.destination small{color:#b5c2bd}.destination strong{font-weight:500}.map-overview{color:#e1c896;border-color:#9c8b60;font-family:inherit;font-size:14px}#destinations-map{border:1px solid #617168;background:#c9d4cf;box-shadow:0 15px 45px #09121366}.map-caption,.note{color:#b4c2bb}.leaflet-popup-content{color:#152522}.leaflet-control-attribution{color:#152522}.rental-types{gap:20px}.rental-types article{border:1px solid #40504b;background:#1b2d2f;padding:30px 25px}.rental-types h3{font:400 31px/1.2 'Cormorant Garamond',Georgia,serif;margin-top:45px}.rental-types p{color:#bdc8c3;font-size:16px}.page-location .hero{background:#18282c;max-width:none;border-bottom:1px solid #3b4944}.page-location .section[style]{padding-top:45px!important}.contact-band{background:#263a35;border-top:1px solid #697358;padding:50px 6%;gap:30px}.contact-band h2{margin:0;font-size:44px}.contact-layout{grid-template-columns:1fr 1.1fr;gap:8%;margin-top:45px;align-items:start}.contact-layout>div p{color:#c3cec8}.email-link{color:#e5c990;font-size:clamp(18px,2.1vw,29px);overflow-wrap:anywhere}.contact-layout form{background:#1b2a2d;padding:35px;border:1px solid #47564e;border-top:3px solid #b89e70;box-shadow:0 25px 60px #050c1033}form label{color:#e6ece5;font-size:14px}input,select,textarea{background:#0e1b1e;border:1px solid #62736a;color:#faf8ee;font-family:inherit;font-size:16px;padding:13px}input::placeholder,textarea::placeholder{color:#a5b4ac}select option{background:#162527;color:white}form .note{color:#b8c5bd;font-size:13px;line-height:1.7}form .button{width:100%;justify-content:center}footer{background:#091215;border-color:#3d4940;color:#b6c2ba;font-size:13px;padding:32px 6%}footer a{color:#d8c08f}.share{color:#e2cc9c}.skip:focus{background:#e3c990;color:#122023}a:focus-visible,button:focus-visible{outline:3px solid #ecd19a;outline-offset:5px}.contact-layout #form-status{color:#ecdfc2}
@media(min-width:1600px){.hero-content{padding-left:max(12%,calc((100vw - 1400px)/2))}.home-hero h1{font-size:94px}}
@media(max-width:1100px){header{padding:15px 4%;gap:20px}.identity strong{font-size:22px}.identity>span{font-size:9px}nav{gap:16px;font-size:13px}.hero-content{padding:50px 9%}.home-hero h1{font-size:65px}.home-hero,.hero-image{min-height:610px}.service,.service+.service{padding:25px}.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.offer{padding:26px}.offer h3{font-size:29px}.map-layout{grid-template-columns:240px minmax(0,1fr)}}
@media(max-width:850px){header{flex-wrap:wrap;padding:14px 6% 20px}.identity>span{display:block}nav{width:100%;justify-content:space-between;gap:14px}.home-hero{grid-template-columns:1fr 1fr}.home-hero h1{font-size:54px}.hero-content{padding:45px 10%}.home-hero .eyebrow{font-size:10px;letter-spacing:2px}.hero-image figcaption{bottom:35px}.hero-image figcaption strong{font-size:35px}.services{grid-template-columns:1fr}.service .number{margin-bottom:22px}.service,.service+.service{padding:30px}.brand-grid{grid-template-columns:1fr}.brand-grid .offer{padding:30px}.brand-grid .offer h3{font-size:36px}.rental-types{grid-template-columns:repeat(2,1fr)}.stay-copy{padding:35px 10%}.stay img{min-height:470px}.map-layout{grid-template-columns:220px minmax(0,1fr)}.contact-layout{gap:5%}.contact-layout form{padding:25px}}
@media(max-width:600px){body{font-size:16px}header{gap:18px}.logo-art{width:70px;height:70px}.identity strong{font-size:24px}nav{font-size:13px;justify-content:flex-start;gap:14px 20px}.nav-contact{padding:7px 11px}.hero{padding:45px 6%}.hero h1{font-size:54px;letter-spacing:-1px;line-height:1.08}.home-hero{display:flex;flex-direction:column;padding:0;min-height:0}.hero-content{padding:45px 6% 30px}.home-hero h1{font-size:62px}.home-hero .eyebrow{font-size:11px}.hero-signature{margin-bottom:0;margin-top:28px}.hero-image{min-height:370px}.hero-image figcaption{left:6%;bottom:30px}.hero-image figcaption strong{font-size:36px}.hero-image img{object-position:center 65%}.hero-bottom{display:block}.hero-bottom p{font-size:16px}.territories{padding:22px 6%;gap:12px 20px}.territories span:first-child{width:100%}.section{padding:55px 6%}.section-head{display:block;margin-bottom:28px}.section-head h2{font-size:42px}.section-head p{margin-top:20px}.stay{grid-template-columns:1fr;margin:0 6%;min-height:0}.stay-copy{padding:35px 8%}.stay img{min-height:300px;max-height:350px}.offers{grid-template-columns:1fr}.offer{padding:28px}.rental-types{grid-template-columns:1fr 1fr;gap:12px}.rental-types article{padding:23px 18px}.rental-types h3{font-size:27px;margin-top:28px}.rental-types .eyebrow{font-size:10px;letter-spacing:1.5px}.map-layout{grid-template-columns:1fr;gap:24px}.destination-list{display:grid;grid-template-columns:1fr 1fr}.destination{padding:14px 10px;column-gap:8px;grid-template-columns:22px 1fr}.destination strong{font-size:16px}.destination small{font-size:12px}.map-overview{grid-column:span 2;justify-self:start}.film-section{padding-top:23px}.film-copy{display:block;padding-top:25px}.film-copy h2{font-size:42px}.film-copy .text-link{display:inline-block}.contact-layout{grid-template-columns:1fr;gap:24px}.contact-layout form{padding:25px}.contact-band{display:block;padding:35px 6%}.contact-band h2{font-size:40px}.contact-band .button{margin-top:25px}.wide-photo{height:320px}.page-sejours .hero,.page-night-spa .hero{padding:45px 6%}.page-location .hero{padding:45px 6%}footer{display:flex;align-items:start;gap:18px}}
@media(max-width:360px){.home-hero h1,.hero h1{font-size:48px}.rental-types{grid-template-columns:1fr}.destination-list{grid-template-columns:1fr}.map-overview{grid-column:1}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.brand-logo{height:154px;display:flex;align-items:center;justify-content:center;margin:8px 0 25px;background:#0a1114;border:1px solid #46504a;padding:14px}.brand-logo img{width:auto;height:auto;max-width:100%;max-height:126px;object-fit:contain}.offer:has(.brand-logo):before{display:none}.offer:has(.brand-logo)>.eyebrow{display:block;margin-bottom:18px}.brand-grid .offer{display:flex;flex-direction:column}.brand-grid .offer .text-link{align-self:start;margin-top:auto}.video-stage{position:relative;width:100%;aspect-ratio:16/9;min-height:280px;background:#0a1114;border:1px solid #8b7956;overflow:hidden;box-shadow:0 24px 70px #0005}.video-stage>iframe,.video-stage>#youtube-player{position:absolute;inset:0;width:100%;height:100%;border:0}.video-cover{position:absolute;inset:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#f4efe3;background:radial-gradient(ellipse at center,#243637,#0b1417 72%);cursor:pointer;border:0;padding:25px;font-family:inherit}.video-cover[hidden]{display:none}.video-cover img{height:clamp(80px,12vw,155px);width:auto;object-fit:contain}.video-cover strong{font:400 clamp(25px,4vw,42px)/1.1 'Cormorant Garamond',Georgia,serif}.video-cover>span:last-child{font-size:14px;letter-spacing:1px}.video-play-icon{display:grid;place-items:center;background:#d1b17a;color:#132425;border-radius:50%;width:56px;height:56px;font-size:22px;padding-left:3px}.video-cover:hover .video-play-icon{background:#f0d49f}.video-cover:disabled{cursor:wait}.video-status{position:absolute;z-index:2;bottom:0;left:0;right:0;margin:0;padding:10px 18px;background:#101b1fed;font-size:13px;text-align:center;color:#e7d2ad}.video-status:empty{display:none}@media(max-width:600px){.video-cover{gap:8px;padding:15px}.video-stage{min-height:310px}.video-play-icon{width:46px;height:46px;font-size:18px}.brand-logo{height:145px}}
.brand-grid{align-items:stretch;gap:24px}.offer.logo-tile{padding:0;background:#050505;border:1px solid #394542;display:block;overflow:hidden}.offer.logo-tile:before{display:none}.brand-link{display:flex;align-items:center;justify-content:center;width:100%;height:250px;padding:32px;transition:background .2s}.brand-link img{display:block;width:180px;height:180px;max-width:100%;object-fit:contain;filter:grayscale(1) contrast(2);mix-blend-mode:screen}.logo-slr .brand-link img{filter:grayscale(1) invert(1) contrast(2);width:178px;height:178px}.logo-night .brand-link img{width:210px;height:210px}.brand-link:hover{background:#182221}.brand-link:focus-visible{outline:2px solid #d3b57e;outline-offset:-5px}.offers:has(.logo-tile){gap:24px}.brand-grid:has(.logo-tile){grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:850px){.brand-grid .offer.logo-tile{padding:0}.brand-link{height:210px;padding:22px}}@media(max-width:600px){.brand-grid:has(.logo-tile){gap:10px}.brand-link{height:140px;padding:13px}.brand-link img,.logo-slr .brand-link img{width:100%;height:100%}.logo-night .brand-link img{width:100%;height:100%;transform:scale(1.12)}.offers:has(.logo-tile){grid-template-columns:1fr 1fr;gap:12px}}
