:root{--ink:#26312e;--gold:#ad9261;--paper:#fff;--soft:#f4f2ed}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.75 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b79855;outline-offset:5px}header{height:108px;display:flex;align-items:center;justify-content:space-between;padding:20px 6%;background:#fff} .brand{font:26px/1.2 Georgia,serif;letter-spacing:5px;white-space:nowrap}.brand span{display:block;font:10px/2.5 Arial,sans-serif;letter-spacing:3.6px;text-align:center}nav{display:flex;align-items:center;gap:34px;font-size:14px}nav a{padding:10px 0}.nav-book{border:1px solid #a18d66;padding:10px 22px}.hero{height:min(780px,calc(100svh - 108px));min-height:560px;position:relative;isolation:isolate;overflow:hidden;background:#68756a;color:#fff}.hero-photo,.shade,.video-wrap{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-photo{object-position:50% 54%}.shade{background:linear-gradient(90deg,rgba(10,24,20,.58),rgba(10,24,20,.08)),linear-gradient(0deg,rgba(10,24,20,.45),transparent 35%);z-index:1}.video-wrap{opacity:0;pointer-events:none;overflow:hidden;transition:opacity 1s}.video-wrap.playing{opacity:1}.video-wrap iframe{position:absolute;left:50%;top:50%;width: max(100vw,177.78vh);height:max(56.25vw,100vh);transform:translate(-50%,-50%);border:0}.hero-copy{position:absolute;top:48%;left:8%;transform:translateY(-50%);z-index:2}.eyebrow{font-size:12px;letter-spacing:3px;font-weight:500;margin:0 0 24px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.14;margin:0}h1{font-size:clamp(48px,5.3vw,82px);letter-spacing:-2px}h1 em,h2 em{font-weight:400}h2{font-size:clamp(38px,3.8vw,58px);letter-spacing:-1.6px}h3{font-size:28px;margin-bottom:28px}.hero-copy>p:not(.eyebrow){margin:26px 0 32px;font-size:18px}.outline{display:inline-block;border:1px solid #ffffffa6;padding:13px 26px;font-size:14px;transition:background .2s}.outline:hover{background:#ffffff20}.hero-bottom{position:absolute;bottom:28px;left:6%;right:6%;z-index:2;display:flex;align-items:center;gap:24px;font-size:14px}.hero-bottom>span{margin-right:auto;font-size:12px;letter-spacing:2px}.hero-bottom button{border:0;border-bottom:1px solid #fff8;color:white;background:transparent;padding:5px 0;font-size:14px}.section{padding:110px 8%;max-width:1600px;margin:auto}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.intro-text p,.feature-copy p,.stay p{color:#5b645e;margin-top:0}.intro-text p:first-child{font-size:20px;color:var(--ink)}.text-link{display:block;margin-top:25px;border-bottom:1px solid #b8b8aa;padding-bottom:12px;font-size:14px}.text-link span{float:right}.feature{padding-top:0;display:grid;grid-template-columns:1.2fr 1fr;align-items:stretch}.feature>img{width:100%;height:650px;object-fit:cover}.feature-copy{padding:70px 12%;display:flex;flex-direction:column;justify-content:center;background:var(--soft)}.feature-copy h2{margin-bottom:28px}.rule{width:45px;height:1px;background:var(--gold);margin:22px 0}.smallcaps{font-size:12px;letter-spacing:1px}.interior{padding-top:10px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section-heading>p{color:#667069;margin:0}.interior-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:26px}figure{margin:0}.interior-grid img{width:100%;height:430px;object-fit:cover}.interior-grid figure:nth-child(2){margin-top:55px}figcaption{font-size:12px;letter-spacing:1.4px;margin-top:18px}figcaption span{display:block;font:22px/1.4 Georgia,serif;letter-spacing:0;margin-top:6px}.complex{display:grid;grid-template-columns:1fr 1fr;background:#26312e;color:white}.complex>div{padding:100px 16%;align-self:center}.complex h2{margin-bottom:28px}.complex p:not(.eyebrow){color:#d4d9d3}.complex img{width:100%;height:650px;object-fit:cover;object-position:center 65%}.video-note{font-size:12px}.filters{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:30px}.filters button{font-size:14px;border:1px solid #d8d9d2;background:white;padding:8px 19px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery button{padding:0;border:0;background:#eee;overflow:hidden;aspect-ratio:3/4}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery button:hover img{transform:scale(1.04)}.dark-button{display:inline-block;background:var(--ink);color:#fff;border:1px solid var(--ink);padding:14px 26px;font-size:14px}.gallery-section>#more{display:block;margin:36px auto 0}.stay{background:var(--soft);max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.stay h2{margin-bottom:25px}.stay-card{padding:38px;background:white;border:1px solid #e5e1d8}.date-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:22px}label{font-size:14px}input{display:block;width:100%;max-width:100%;min-width:0;background:white;border:1px solid #b9bdb7;padding:10px;color:var(--ink);margin-top:8px}.stay-card .fineprint{font-size:13px;margin:20px 0 0}.stay-card .dark-button{width:100%}#date-result:not(:empty){margin-top:24px;padding-top:20px;border-top:1px solid #dcded8}footer{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:60px 8%;font-size:14px}footer p{color:#606a63}.skip{position:absolute;top:-100px;z-index:20;padding:12px;background:white}.skip:focus{top:0}dialog{border:0;padding:50px 70px;background:#131b18;color:white;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh}dialog::backdrop{background:#131b18}dialog[open]{display:flex;align-items:center;justify-content:center}dialog figure{max-width:100%;text-align:center}dialog img{max-height:78dvh;max-width:100%;object-fit:contain}dialog button{position:absolute;background:transparent;border:0;color:white;font-size:44px;width:55px;height:55px}.close{right:18px;top:15px;font-size:24px}.previous{left:5px;top:47%}.next{right:5px;top:47%}dialog figcaption{font-size:14px;letter-spacing:0}button[hidden]{display:none!important}
@media(min-width:1800px){.hero{height:820px}}@media(max-width:900px){header{padding:16px 5%;height:95px}nav{gap:18px}nav a:not(.nav-book){display:none}.hero{min-height:600px;height:calc(90svh - 95px)}.hero-copy{left:7%;right:6%}.hero-bottom{flex-wrap:wrap;gap:12px 24px}.hero-bottom>span{width:100%}.section{padding:75px 6%}.intro{gap:6%}.feature{padding-top:0;grid-template-columns:1fr 1fr}.feature>img{height:550px}.feature-copy{padding:40px 10%}.interior-grid{gap:16px}.interior-grid img{height:320px}.complex>div{padding:60px 12%}.complex img{height:580px}.gallery{grid-template-columns:repeat(3,1fr)}.stay{gap:5%}.stay-card{padding:25px}.date-row{grid-template-columns:1fr;gap:10px}.section-heading>p{font-size:14px}}
@media(max-width:600px){header{height:90px}.brand{font-size:22px;letter-spacing:3px}.brand span{font-size:9px;letter-spacing:2.6px}.nav-book{padding:8px 12px}h1{font-size:48px;letter-spacing:-1.5px}.hero{min-height:570px}.hero-photo{object-position:43% center}.hero .eyebrow{font-size:10px;letter-spacing:2px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-bottom{font-size:12px}.hero-bottom button{font-size:12px}.hero-bottom>span{font-size:10px}.intro,.feature,.complex,.stay{grid-template-columns:1fr;gap:35px}.intro-text{margin-top:5px}.feature{gap:0}.feature>img{height:420px}.feature-copy{padding:45px 30px}.interior{padding-top:0}.section-heading{display:block}.section-heading>p{margin-top:20px}.interior-grid{grid-template-columns:1fr;gap:35px}.interior-grid figure:nth-child(2){margin-top:0}.interior-grid img{height:430px}.complex{gap:0}.complex>div{padding:60px 8%}.complex img{height:420px}.gallery{grid-template-columns:repeat(2,1fr);gap:10px}.filters{gap:8px}.filters button{padding:7px 11px}.stay-card{padding:26px 20px}.date-row{grid-template-columns:1fr 1fr;gap:12px}footer{flex-direction:column;align-items:start;padding:45px 8%;gap:20px}dialog{padding:55px 40px}dialog button{width:38px}.section{padding-top:65px;padding-bottom:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.video-wrap{display:none}}

/* Hide end cards immediately; fade in only when footage resumes. */
.video-wrap{transition:none}.video-wrap.playing{transition:opacity .6s}


/* Refined Mediterranean direction inspired by the supplied resort reference. */
:root{--ink:#303532;--gold:#945462;--soft:#f6f5f2;--accent:#864452}
body{font-family:'Helvetica Neue',Arial,sans-serif;font-weight:400}html{scroll-padding-top:100px}
header{position:fixed;top:0;left:0;right:0;height:100px;z-index:10;background:linear-gradient(#17251d70,transparent);color:white;padding:18px 5%;transition:background .25s,color .25s,height .25s;gap:24px}
header.scrolled{background:#fffffff5;color:var(--ink);height:82px;box-shadow:0 1px 0 #2221;backdrop-filter:blur(12px)}
header .brand{font-family:'Helvetica Neue',Arial,sans-serif;font-size:26px;font-weight:300;letter-spacing:5px}header .brand span{font-size:10px;letter-spacing:3px;line-height:2.4}
nav{gap:30px;letter-spacing:.5px;font-size:14px}nav a{transition:opacity .2s}nav a:hover{opacity:.7}.nav-book{background:var(--accent);color:white;border:1px solid var(--accent);padding:12px 22px;font-size:13px;text-transform:uppercase;letter-spacing:1px}
.hero{height:100svh;min-height:640px;max-height:none}.hero-copy{top:51%;left:8%;right:6%}.hero h1{font-size:clamp(48px,5.3vw,82px)}.hero .outline{padding:12px 24px}.hero-bottom{bottom:33px}.hero-photo{object-position:50% 54%}.hero .shade{background:linear-gradient(90deg,#0f201a66,transparent),linear-gradient(0deg,#14281b66,transparent 28%)}
.eyebrow{font-size:12px;letter-spacing:2px;font-weight:500}
h2{font-family:'Helvetica Neue',Arial,sans-serif;font-weight:300;letter-spacing:-1px;font-size:clamp(34px,3vw,48px);line-height:1.25}h2 em{font-style:normal}h3{font-family:'Helvetica Neue',Arial,sans-serif;font-size:26px;font-weight:400}
.residence{padding:100px 0 0;background:white;color:var(--ink)}
.residence-intro{text-align:center;max-width:930px;padding:0 35px 80px;margin:auto}.residence-intro .eyebrow{color:var(--accent);margin-bottom:22px;letter-spacing:2.2px}.residence-intro h2{margin-bottom:27px;font-size:clamp(34px,3.2vw,50px)}.residence-intro>p:not(.eyebrow){max-width:770px;margin:0 auto 28px;font-size:17px;line-height:1.95;color:#69706a}.residence-link{display:inline-flex;align-items:center;gap:34px;border-bottom:1px solid #b7949d;padding:4px 0 9px;color:var(--accent);font-size:14px;letter-spacing:.4px}.residence-link:hover{border-color:var(--accent)}
.residence-images{display:grid;grid-template-columns:1.7fr 1fr;gap:4.5%;margin:0 7%;align-items:center}.residence-images img{width:100%;display:block;object-fit:cover}.residence-wide img{height:640px;object-position:center 48%}.residence-close{padding-top:110px}.residence-close img{height:440px}.residence-images figcaption{font:14px/1.5 'Helvetica Neue',Arial,sans-serif;letter-spacing:.5px;color:#737970;margin-top:16px}.residence-wide figcaption{text-align:left}.residence-close figcaption{text-align:right}
.residence+.feature{padding:100px 0 0;max-width:none;display:grid;grid-template-columns:1.4fr 1fr;gap:0;margin:0 7%;align-items:center}
.feature>img{height:650px;object-position:center}.feature-copy{background:white;padding:60px 0 60px 16%}.feature-copy h2{font-size:clamp(34px,3.5vw,52px);margin-bottom:30px}.feature-copy p{line-height:1.95}.feature-copy .eyebrow{color:var(--accent)}.feature-copy .rule{background:var(--accent)}.feature-copy .smallcaps{font-size:12px;letter-spacing:1.4px}
.interior{max-width:none;padding:110px 7% 100px;background:white}.section-heading{margin-bottom:45px}.section-heading .eyebrow{color:var(--accent)}.section-heading>p{font-size:16px}.interior-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.interior-grid figure:nth-child(2){margin-top:0}.interior-grid img{height:460px}.interior-grid figcaption{color:var(--accent);font-size:12px;letter-spacing:1.8px}.interior-grid figcaption span{font:23px/1.4 'Helvetica Neue',Arial,sans-serif;color:var(--ink);margin-top:10px}
.complex{margin:0;position:relative;display:block;background:#273b30;min-height:650px;isolation:isolate;overflow:hidden}.complex>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%;z-index:-2}.complex:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#132219cc,#13221966 60%,#13221922);z-index:-1}.complex>div{padding:120px 8%;max-width:800px}.complex h2{font-size:clamp(38px,4vw,60px)}.complex p:not(.eyebrow){color:#f0f1eb;max-width:420px}.complex .eyebrow{color:white}.complex .outline{margin-top:14px}
.gallery-section{padding:100px 7%;max-width:none}.gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.gallery button{aspect-ratio:4/5}.filters{gap:26px;margin-bottom:35px;border-bottom:1px solid #e4e4de}.filters button{border:0;border-bottom:2px solid transparent;padding:9px 0 13px;color:#646963;background:none}.filters button.active{background:none;color:var(--accent);border-color:var(--accent)}.dark-button{background:var(--accent);border-color:var(--accent);font-size:14px;padding:14px 26px;transition:background .2s}.dark-button:hover{background:#6b3440;border-color:#6b3440}
.stay{padding:90px 8%;background:#f5f4f1;gap:10%}.stay .eyebrow{color:var(--accent)}.stay-card{border:0;padding:40px}.stay h2{font-size:clamp(36px,3.4vw,52px)}input{border-color:#d6d5cf;padding:12px;font-size:16px}.stay .fineprint{font-size:13px;line-height:1.7}
footer{padding:65px 8%;background:white}footer .brand{font-family:'Helvetica Neue',Arial,sans-serif;font-weight:300;color:var(--accent)}footer>a:last-child{font-size:13px;letter-spacing:.5px}
@media(min-width:1700px){.residence-images,.residence+.feature{max-width:1450px;margin-left:auto;margin-right:auto}.residence-wide img{height:700px}.residence-intro{padding-top:20px;padding-bottom:100px}}
@media(max-width:1000px){nav{gap:18px}header{height:95px}.residence-images{gap:25px;margin:0 6%}.residence-wide img{height:520px}.residence-close img{height:350px}.residence-close{padding-top:70px}.residence+.feature{margin:0 6%;padding-top:80px;grid-template-columns:1fr 1fr}.feature>img{height:540px}.feature-copy{padding-left:12%}.interior{padding:85px 6%}.interior-grid{gap:20px}.interior-grid img{height:350px}.gallery-section{padding:85px 6%}.gallery{gap:14px}.complex>div{padding:100px 7%}.stay{gap:5%;padding:80px 6%}}
@media(max-width:600px){header{height:88px;padding:16px 6%;gap:10px}header.scrolled{height:76px}header .brand{font-size:20px;letter-spacing:3px}header .brand span{font-size:9px;letter-spacing:2px}.nav-book{padding:10px 12px;font-size:11px;letter-spacing:.6px}.hero{height:100svh;min-height:630px}.hero h1{font-size:47px}.hero-copy{top:48%;left:7%;right:6%}.hero-copy .eyebrow{font-size:10px;line-height:1.7}.hero-bottom{bottom:25px}.residence{padding-top:65px}.residence-intro{padding:0 7% 50px}.residence-intro .eyebrow{font-size:10px;letter-spacing:1.8px}.residence-intro h2{font-size:35px;letter-spacing:-.7px}.residence-intro>p:not(.eyebrow){font-size:16px;line-height:1.9}.residence-images{grid-template-columns:1fr;gap:30px;margin:0 7%}.residence-wide img{height:430px}.residence-close{padding-top:0;width:70%;margin-left:auto}.residence-close img{height:300px}.residence-images figcaption{font-size:13px}.residence+.feature{grid-template-columns:1fr;margin:0;padding-top:65px;gap:0}.feature>img{height:450px}.feature-copy{padding:42px 8% 10px}.feature-copy h2{font-size:37px}.interior{padding:65px 7%}.interior-grid{grid-template-columns:1fr;gap:35px}.interior-grid img{height:430px}.section-heading h2{font-size:35px}.section-heading>p{font-size:15px}.complex{min-height:540px}.complex>div{padding:75px 8%}.complex h2{font-size:41px}.complex>img{height:100%}.gallery-section{padding:65px 7%}.gallery{grid-template-columns:1fr 1fr;gap:12px}.filters{gap:9px 20px}.filters button{font-size:13px}.stay{padding:60px 7%;gap:28px}.stay-card{padding:28px 22px}.stay-card h3{font-size:24px}.date-row{grid-template-columns:1fr;gap:14px}footer{padding:45px 8%}.hero-photo{object-position:43% center}}

/* Warm anthracite presentation. */
:root{--ink:#eeeae3;--soft:#292b2b;--accent:#ccb58c;--gold:#ccb58c;--paper:#222424}
body{background:#222424;color:#eeeae3}
header.scrolled{background:#222424f5;color:#eeeae3;box-shadow:0 1px 0 #ffffff14}
.nav-book,.dark-button{background:#cbb58e;border-color:#cbb58e;color:#242626}
.dark-button:hover{background:#decbaa;border-color:#decbaa}
.residence,.interior,.gallery-section,footer{background:#222424;color:#eeeae3}
.residence-intro>p:not(.eyebrow),.section-heading>p{color:#c1c2bd}
.residence-intro .eyebrow,.section-heading .eyebrow,.feature-copy .eyebrow,.stay .eyebrow{color:#cbb58e}
.residence-link{color:#d6c19e;border-bottom-color:#8c7b60}.residence-link:hover{color:#f4ead7;border-color:#d6c19e}
.residence-frame{background:#303232;border-color:#897b65;box-shadow:0 16px 38px -25px #0009}
.residence-images .residence-frame img{outline-color:#ffffff12}
.residence-images figcaption{color:#c9c4ba}.residence-images figcaption:before{background:#aa9470}
.feature-copy{background:#222424}.feature-copy p,.feature-copy .smallcaps{color:#c1c2bd}.feature-copy .rule{background:#baa27b}
.interior-grid figcaption{color:#cbb58e}.interior-grid figcaption span{color:#eeeae3}
.filters{border-bottom-color:#ffffff26}.filters button{color:#c1c2bd}.filters button.active{color:#e1caa0;border-color:#cbb58e}
.gallery button{background:#303232}
.stay{background:#292b2b}.stay p{color:#c1c2bd}.stay-card{background:#323434;color:#eeeae3;border:1px solid #ffffff14}
input{background:#292b2b;color:#f1eee8;border-color:#747570;color-scheme:dark}
#date-result:not(:empty){border-top-color:#ffffff26}
footer{border-top:1px solid #ffffff17}footer p{color:#c1c2bd}footer .brand{color:#d0b991}
.skip{background:#222424;color:white}

/* Architectural photo pair: wide images and offset champagne contours. */
.residence-images{grid-template-columns:repeat(2,minmax(0,1fr));width:82%;max-width:1020px;gap:clamp(48px,7vw,100px);margin:0 auto;align-items:start;padding:22px 0 35px}
.residence-images figure{width:100%;min-width:0;padding:0;margin:0}
.residence-frame{--photo-radius:100px 100px 3px 3px;position:relative;padding:0;border:0;background:transparent;box-shadow:none;isolation:isolate}
.residence-frame:before{content:'';position:absolute;inset:0;border:1px solid #b9a078;transform:translate(12px,-12px);border-radius:var(--photo-radius);pointer-events:none;z-index:-1}
.residence-images .residence-frame img{display:block;width:100%;height:auto;aspect-ratio:6/5;object-fit:cover;object-position:center;position:relative;border-radius:var(--photo-radius);outline:none;box-shadow:0 22px 36px -27px #000b}
.residence-images .residence-wide img{object-position:center 51%}
.residence-images .residence-close img{object-position:center 47%}
.residence-images figcaption{display:flex;align-items:center;justify-content:center;gap:14px;text-align:center;font:italic 20px/1.55 Georgia,serif;letter-spacing:0;color:#d7cbb7;margin:26px 0 0}
.residence-images figcaption:before{content:'';flex:0 0 26px;width:26px;height:1px;background:#a88f67;margin:0}
@media(max-width:1000px){.residence-images{width:82%;gap:48px;margin:0 auto}.residence-frame{--photo-radius:75px 75px 3px 3px}}
@media(max-width:600px){.residence-images{grid-template-columns:1fr;width:78%;max-width:390px;gap:50px;padding:18px 0 15px;margin:0 auto}.residence-images figure{width:100%;margin:0;padding:0}.residence-frame{--photo-radius:80px 80px 3px 3px}.residence-frame:before{transform:translate(9px,-9px)}.residence-images figcaption{font-size:18px;margin-top:23px;gap:12px}}

/* Plain, equal rectangular photographs. */
.residence-frame{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.residence-frame:before{content:none}
.residence-images .residence-frame img{border-radius:0;outline:none;box-shadow:none;aspect-ratio:6/5}

.location{max-width:none;background:#292b2b;padding:95px 8%}.location-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #ccb58c40;border-bottom:1px solid #ccb58c40;padding:32px 0;gap:25px}.location-facts strong{display:block;font:42px/1.2 Georgia,serif;color:#dbc6a3;margin-bottom:14px}.location-facts span{display:block;font-size:16px;color:#eeeae3}.location-facts small{display:block;font-size:13px;color:#bfc2bb;margin-top:5px}.location-note{font-size:13px;color:#bfc2bb;line-height:1.7;margin:18px 0 0}.location a{color:#dbc6a3;text-underline-offset:5px}.location a:hover{text-decoration:underline}.location-stories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:65px}.location-stories .eyebrow,.location-golf .eyebrow{color:#ccb58c;font-size:12px}.location h3{font:28px/1.3 Georgia,serif;margin:0 0 20px}.location-stories p:not(.eyebrow),.location-golf p:not(.eyebrow){color:#c5c7c1;font-size:16px;line-height:1.9}.location-stories a,.location-golf>div>a{font-size:14px}.location-golf{display:grid;grid-template-columns:1fr 1fr;gap:65px;border-top:1px solid #ffffff24;padding-top:50px;margin-top:55px}.location-golf ul{list-style:none;padding:0;margin:0}.location-golf li{border-bottom:1px solid #ffffff24;padding:18px 0}.location-golf li:first-child{padding-top:0}.location-golf li strong{font-size:18px;font-weight:400}.location-golf li span{display:block;color:#c5c7c1;font-size:14px;margin-top:8px}.location-golf li a{display:block}
@media(max-width:1000px){.location{padding:75px 6%}.location-facts{grid-template-columns:1fr 1fr;gap:28px}.location-stories{gap:25px;grid-template-columns:1fr}.location-golf{gap:35px}}
@media(max-width:600px){.location{padding:65px 7%}.location .section-heading h2{font-size:33px}.location-facts{gap:25px 16px}.location-facts strong{font-size:32px}.location-facts small{font-size:12px}.location-facts span{font-size:14px}.location-stories{margin-top:40px;gap:35px}.location-golf{grid-template-columns:1fr;gap:30px;margin-top:40px;padding-top:35px}.location h3{font-size:26px}}

/* Two immersive images with captions treated like the complex photograph. */
.residence-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:100%}
.residence-panels figure{position:relative;isolation:isolate;overflow:hidden;min-height:580px;margin:0;display:flex;align-items:flex-end;background:#29332d}
.residence-panels figure>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.residence-panels figure:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(15,25,20,.8),transparent 55%)}
.residence-panels figcaption{padding:55px clamp(28px,4.5vw,72px);margin:0;color:#fff;letter-spacing:0;text-align:left;width:100%}
.residence-panels figcaption .eyebrow{display:block;font:12px/1.6 'Helvetica Neue',Arial,sans-serif;letter-spacing:2px;color:#fff;margin:0 0 22px}
.residence-panels h3{font-family:'Helvetica Neue',Arial,sans-serif;font-weight:300;font-size:clamp(34px,3.5vw,54px);line-height:1.2;letter-spacing:-1px;margin:0;color:#fff}
@media(min-width:1700px){.residence-panels figure{min-height:680px}}
@media(max-width:1000px){.residence-panels figure{min-height:470px}.residence-panels{gap:12px}.residence-panels figcaption{padding:40px 28px}}
@media(max-width:600px){.residence-panels{grid-template-columns:1fr;gap:14px}.residence-panels figure{min-height:450px}.residence-panels figcaption{padding:40px 8%}.residence-panels h3{font-size:39px}}

.bedrooms{padding:18px 0 0;background:#222424}.bedrooms .residence-panels figure>img{object-position:center 56%}
@media(max-width:1000px){.bedrooms{padding-top:12px}}
@media(max-width:600px){.bedrooms{padding-top:14px}}

.bedrooms-capacity{text-align:center;color:#d9c5a4;font-size:17px;line-height:1.7;letter-spacing:.5px;padding:24px 7%;margin:0}
@media(max-width:600px){.bedrooms-capacity{font-size:16px;padding:22px 8%}}

.bathrooms{padding:18px 0 0;background:#222424}.bathroom-single{grid-template-columns:1fr}.bathroom-single figure>img{object-position:center 56%}
@media(max-width:1000px){.bathrooms{padding-top:12px}}
@media(max-width:600px){.bathrooms{padding-top:14px}}

.terrace{padding:18px 0 0;background:#222424}.terrace .residence-panels figure>img{object-position:center}
@media(max-width:1000px){.terrace{padding-top:12px}}
@media(max-width:600px){.terrace{padding-top:14px}}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px}.gallery-page main{padding-top:130px}.gallery-intro{max-width:1200px;margin:auto;padding:25px 6% 20px}.gallery-intro h1{font-family:'Helvetica Neue',Arial,sans-serif;font-size:clamp(34px,4vw,54px);letter-spacing:-1px;font-weight:300}.gallery-intro>p:not(.eyebrow){color:#c1c2bd}.gallery-intro .eyebrow{color:#ccb58c;margin-top:35px}.gallery-back{font-size:14px;color:#ccb58c}.gallery-intro .filters{margin:30px 0 0}.gallery-open{position:absolute;inset:0;width:100%;height:100%;background:transparent;border:0;z-index:1;cursor:zoom-in}.gallery-open:focus-visible{outline:3px solid #e1caa0;outline-offset:-8px}.gallery-pagination{display:flex;justify-content:center;align-items:center;gap:30px;padding:30px 6% 55px;font-size:14px;flex-wrap:wrap}.gallery-pagination button{padding:10px 20px;border:1px solid #ccb58c70;color:#dfcaa7;background:none}.gallery-pagination button:disabled{opacity:.35;cursor:default}.gallery-pagination p{margin:0}.gallery-page .residence-panels figure{min-height:490px}.gallery-page .residence-panels h3{font-size:clamp(28px,3vw,43px)}
@media(max-width:600px){.gallery-page main{padding-top:100px}.gallery-pagination{gap:14px}.gallery-pagination p{order:-1;width:100%;text-align:center}.gallery-page .residence-panels figure{min-height:400px}.hero-actions .outline{font-size:13px;padding:10px 16px}}

/* Quiet amenity overview, aligned with the apartment introduction. */
.amenities{max-width:1320px;margin:0 auto;padding:0 6% 70px}.amenities>.eyebrow{text-align:center;color:#ccb58c;font-size:12px;letter-spacing:2px;margin:0 0 28px}.amenities ul{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:0}.amenities li{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:25px 14px;min-width:0;text-align:center;border:1px solid #ccb58c40;border-radius:2px;color:#eeeae3;font-size:14px;line-height:1.5}.amenities svg{width:30px;height:30px;flex-shrink:0;color:#ccb58c}.amenities span{overflow-wrap:break-word}@media(max-width:900px){.amenities ul{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.amenities{padding:0 7% 45px}.amenities ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.amenities li{padding:22px 12px;gap:12px}}

.residence-trio{grid-template-columns:repeat(3,minmax(0,1fr))}.residence-trio figcaption{padding:42px clamp(22px,2.6vw,48px)}.residence-trio h3{font-size:clamp(28px,2.6vw,46px);overflow-wrap:break-word}.residence-trio figure{min-width:0}@media(max-width:760px){.residence-trio{grid-template-columns:1fr}.residence-trio figure{min-height:450px}.residence-trio figcaption{padding:40px 8%}.residence-trio h3{font-size:39px}}

.terrace .residence-panels .terrace-full-photo{background:#222424;align-items:flex-end}.terrace .residence-panels .terrace-full-photo>img{object-fit:cover;object-position:center bottom}.terrace .residence-panels figure:before{background:linear-gradient(0deg,rgba(15,25,20,.8),transparent 55%)}

/* Refined photo captions and clearer separators on the homepage. */
body:not(.gallery-page) .residence-panels h3{font-size:clamp(28px,2.8vw,44px)}
body:not(.gallery-page) .residence-trio h3{font-size:clamp(26px,2.15vw,38px)}
body:not(.gallery-page) .residence-panels figcaption .eyebrow{font-size:14px;letter-spacing:1.7px}
.bedrooms-capacity{font-size:20px}
@media(max-width:760px){body:not(.gallery-page) .residence-panels h3{font-size:32px}.bedrooms-capacity{font-size:18px}}

footer .footer-map{display:inline-block;color:#d9c5a4;margin-top:10px;text-decoration:underline;text-underline-offset:4px}

#date-result>p{margin:0 0 10px}.quote-total{display:block;font-size:22px;margin:18px 0}.request-email{text-align:center;margin:5px 0 15px}
.booking-section{display:block}.booking-intro{max-width:780px;margin:0 auto 36px;text-align:center}.booking-surface{max-width:780px;margin:auto;padding:32px;background:#292c2b;border:1px solid #ccb58c55}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.calendar-toolbar h3{margin:0;font-size:25px;text-transform:capitalize}.calendar-toolbar button{background:none;border:1px solid #ccb58c77;color:#eeeae3;font-size:26px;width:42px;height:42px}.calendar-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:14px}.calendar-legend span{display:flex;gap:8px;align-items:center}.calendar-legend i{width:17px;height:17px;display:inline-block;border-radius:2px}.available{background:#315b45!important;color:#fff!important}.booked{background:#743e42!important;color:#fff!important}.pending{background:repeating-linear-gradient(135deg,#655b40 0px,#655b40 5px,#a18b55 5px,#a18b55 8px)!important;color:#fff!important}.unknown{background:#414443!important;color:#ddd!important}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.weekday{text-align:center;font-size:14px;color:#ccb58c;padding:8px}.calendar-day{min-height:48px;border:1px solid transparent;border-radius:3px;font-size:16px}.calendar-day.chosen{outline:3px solid #f5dab0;outline-offset:-3px;font-weight:bold}.calendar-day.in-range{box-shadow:inset 0 0 0 2px #ccb58c}.calendar-day.past{background:#333;color:#777}.calendar-help,#calendar-status{font-size:14px!important;color:#d1cabe!important;margin:15px 0!important}.text-button{border:0;background:none;color:#d9c5a4;text-decoration:underline;font-size:14px;padding:0}.booking-surface .date-row{margin-top:24px}.booking-surface #request-booking{width:100%}.booking-surface [hidden]{display:none!important}.booking-dialog-content{position:relative;width:100%;max-width:720px;margin:auto;padding:35px;background:#292c2b}.booking-dialog-content h2{font-size:32px;margin-bottom:20px}#booking-dialog{width:min(820px,96vw);height:auto;max-height:94dvh;overflow:auto;padding:0;background:#292c2b}#booking-dialog[open]{display:block}#booking-dialog button{position:static;width:auto;height:auto;font-size:16px}#booking-dialog #booking-close{position:absolute;right:15px;top:10px;font-size:28px}#request-summary{border-block:1px solid #ccb58c44;padding:16px 0;margin-bottom:20px}#request-summary p{margin:0 0 5px;color:#eeeae3}.booking-dialog-content select,.booking-dialog-content textarea{display:block;width:100%;padding:10px;margin:8px 0 16px;background:#222424;color:#eeeae3;border:1px solid #8d938d;font:inherit}.consent{display:flex;align-items:flex-start;gap:10px;margin:18px 0}.consent input{width:18px;min-width:18px;margin-top:5px}.form-trap{position:absolute;left:-10000px}.booking-dialog-content .dark-button{width:100%!important;padding:14px}#form-error{color:#ffb6b6}.calendar-toolbar button:disabled{opacity:.35}@media(max-width:600px){.booking-surface{padding:18px}.calendar-legend{gap:10px;font-size:12px}.calendar-grid{gap:4px}.calendar-day{min-height:40px}.booking-dialog-content{padding:30px 20px}}
.admin-page .section{max-width:1100px;padding-top:55px}.admin-page h1{font-size:42px;margin:22px 0}.admin-page h2{font-size:28px;margin-bottom:20px}.admin-page h3{font-size:24px;margin-bottom:15px}.admin-card{padding:28px;margin:25px 0;background:#292c2b;border:1px solid #ccb58c44}.admin-card input{margin-bottom:18px}.admin-actions{display:flex;gap:20px;flex-wrap:wrap;align-items:center}.admin-card p{overflow-wrap:anywhere}.admin-page #admin-message{color:#e6cc9f}.admin-page .consent input{margin-bottom:0}.admin-page .eyebrow{margin-top:30px}

.admin-card pre{white-space:pre-wrap;font:14px/1.7 Arial,sans-serif;padding:18px;border:1px solid #ccb58c44}.admin-card details{margin:20px 0}.admin-card summary{cursor:pointer;color:#d9c5a4}.admin-card button:disabled{opacity:.45;cursor:not-allowed}

.booking-terms{margin:24px 0;padding:22px 0;border-top:1px solid #ccb58c55}.booking-terms h3{font:normal 22px/1.3 Georgia,serif;margin:0 0 14px;color:#d9c5a4}.booking-terms p,.booking-dialog-content .booking-terms{font-size:14px!important;line-height:1.8;color:#d3d4ce!important}.booking-terms strong{color:#eeeae3}

.footer-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.footer-actions .admin-login{font-size:14px;color:#d9c5a4;border-bottom:1px solid #ccb58c66;padding-bottom:3px}

.communication-event{border-top:1px solid #ccb58c44;padding:18px 0}.communication-event>p:first-child{color:#d9c5a4;font-size:14px}.communication-event>p{font-size:14px}

/* Booking workflow timeline */
.booking-timeline{margin:30px 0 24px;padding:26px 24px 22px;border:1px solid #ccb58c55;border-radius:8px;background:#232625}
.timeline-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.timeline-heading .eyebrow{margin:0 0 7px!important;font-size:11px}.timeline-heading h3{margin:0!important;font:400 25px/1.3 Georgia,serif}.timeline-booking-status{flex:none;padding:7px 11px;border:1px solid #ccb58c55;border-radius:999px;color:#d9c5a4;font-size:13px}.timeline-loading,.timeline-legend{color:#b9bbb4;font-size:13px!important}.timeline-list{display:grid}.timeline-item{display:grid;grid-template-columns:32px minmax(0,1fr);gap:14px;min-width:0}.timeline-rail{display:flex;flex-direction:column;align-items:center}.timeline-rail:after{content:'';width:1px;min-height:28px;flex:1;background:#ccb58c44}.timeline-item:last-child .timeline-rail:after{display:none}.timeline-marker{display:grid;width:29px;height:29px;place-items:center;border:1px solid #777b73;border-radius:50%;background:#292c2b;color:#c9cbc4;font:600 14px/1 Arial,sans-serif}.timeline-done .timeline-marker{border-color:#6f9c7e;background:#315b45;color:#fff}.timeline-attention .timeline-marker{border-color:#d7a575;background:#704840;color:#fff}.timeline-active .timeline-marker{border-color:#d9c5a4;color:#d9c5a4}.timeline-content{min-width:0;padding:2px 0 25px}.timeline-item-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px}.timeline-item-head strong{color:#f0ede7;font-size:16px;line-height:1.5}.timeline-status{color:#c8b38e;font-size:13px;white-space:nowrap}.timeline-attention .timeline-status{color:#ffb7ad}.timeline-dates{margin:5px 0 0!important;color:#d9c5a4;font-size:13px!important;font-variant-numeric:tabular-nums}.timeline-detail{margin:5px 0 0!important;color:#bfc1ba;font-size:14px!important;line-height:1.6}.timeline-legend{margin:2px 0 0!important;padding-top:16px;border-top:1px solid #ccb58c33;line-height:1.6}
@media(max-width:600px){.booking-timeline{margin:24px 0 20px;padding:21px 16px}.timeline-heading{display:grid;gap:12px}.timeline-booking-status{justify-self:start}.timeline-item{grid-template-columns:29px minmax(0,1fr);gap:11px}.timeline-item-head{display:block}.timeline-status{display:block;margin-top:3px}.timeline-content{padding-bottom:22px}}

/* Clear, full-width controls in the owner forms, including long guest information. */
.admin-page form>label:not(.consent){display:block;margin:18px 0;font-size:16px}
.admin-page textarea,.admin-page select,.admin-page input:not([type=checkbox]){display:block;width:100%;max-width:100%;margin:8px 0 0;padding:12px 14px;background:#202322;color:#eeeae3;border:1px solid #8d938d;border-radius:3px;font:16px/1.6 Arial,sans-serif}
.admin-page textarea{resize:vertical;min-height:100px}
.admin-page textarea:focus-visible,.admin-page select:focus-visible{outline:3px solid #d9c5a4;outline-offset:3px}
.admin-page form .consent{display:flex;align-items:flex-start;gap:12px;margin:22px 0}
.admin-page form .consent input{flex:0 0 18px;width:18px;height:18px;margin:5px 0 0}
#arrival-settings{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}
#arrival-settings>button{justify-self:start}#process-arrivals{margin-top:18px}

/* Focus the homepage wardrobe panel on the shelving and folded towels. */
.bedrooms .residence-panels .wardrobe-focus>img{object-position:left center;transform:scale(1.1);transform-origin:left center}

#key-safe-choice[hidden]{display:none!important}

/* Compact booking overview; native details supports keyboard and touch. */
#requests .booking-row{padding:0;margin-bottom:12px}
#requests .booking-summary{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(130px,auto) 18px;align-items:center;gap:18px;padding:20px 24px;cursor:pointer;list-style:none;font-size:16px;line-height:1.5}
#requests .booking-summary::-webkit-details-marker{display:none}
#requests .booking-summary::after{content:'▸';color:var(--gold,#cbb78f);text-align:right}
#requests .booking-row[open]>.booking-summary::after{content:'▾'}
#requests .booking-summary:hover{background:rgba(203,183,143,.06)}
#requests .booking-summary:focus-visible{outline:2px solid #cbb78f;outline-offset:-3px}
#requests .booking-name{font-weight:600;overflow-wrap:anywhere;color:#f4f1ea}
#requests .booking-period{font-variant-numeric:tabular-nums;color:#e7e3db}
#requests .booking-status{color:#d5c29b}
#requests .booking-content{padding:4px 28px 28px;border-top:1px solid rgba(203,183,143,.25)}
@media(max-width:760px){#requests .booking-summary{grid-template-columns:minmax(0,1fr) 18px;gap:4px 12px;padding:16px}#requests .booking-name{grid-column:1;grid-row:1}#requests .booking-period{grid-column:1;grid-row:2;font-size:14px}#requests .booking-status{grid-column:1;grid-row:3;font-size:14px}#requests .booking-summary::after{grid-column:2;grid-row:1 / 4}#requests .booking-content{padding:4px 16px 20px}}

.amenities .amenity-detail{display:block;margin-top:8px;font-size:13px;line-height:1.6;color:#d2d0c9}

.contact-launch{position:fixed;right:24px;bottom:24px;z-index:40;display:flex;align-items:center;gap:10px;border:1px solid #ad9261;border-radius:28px;padding:12px 19px;background:#eeeae3;color:#303532;font-size:14px;box-shadow:0 4px 18px #0002}.contact-launch:hover{background:#e2dbcf;color:#303532}/* Contact dialog: independent of the full-screen gallery dialog. */
#contact-dialog{position:fixed;inset:0;width:min(540px,calc(100vw - 32px));height:auto;max-width:540px;max-height:calc(100dvh - 40px);margin:auto;padding:36px;border:1px solid #ccb58c80;border-radius:16px;background:#262929;color:#eeeae3;overflow-y:auto;overflow-x:hidden;box-shadow:0 24px 90px #0008;text-align:left;color-scheme:dark}
#contact-dialog[open]{display:block}
#contact-dialog::backdrop{background:#101414b3;backdrop-filter:blur(5px)}
#contact-dialog .eyebrow{margin:0 48px 16px 0;color:#ccb58c;font:500 12px/1.5 Arial,sans-serif;letter-spacing:2.5px}
#contact-dialog #contact-title{max-width:380px;margin:0 34px 14px 0;color:#eeeae3;font:400 32px/1.2 'Helvetica Neue',Arial,sans-serif;letter-spacing:-.7px}
#contact-dialog>p:not(.eyebrow){margin:0 0 24px;color:#c9cac4;font:400 16px/1.65 Arial,sans-serif}
#contact-dialog button{position:static;width:auto;height:auto;font:500 16px/1.4 Arial,sans-serif}
#contact-dialog .contact-close{position:absolute;inset:16px 16px auto auto;display:grid;place-items:center;float:none;width:40px;height:40px;margin:0;padding:0;border:1px solid #ccb58c45;border-radius:50%;background:transparent;color:#eeeae3;font:400 27px/1 Arial,sans-serif}
#contact-dialog .contact-close:hover{background:#ffffff0d;border-color:#ccb58c}
#contact-form{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;width:100%;min-width:0;margin:0}
#contact-form label{display:block;min-width:0;margin:0;color:#e3ded4;font:400 14px/1.5 Arial,sans-serif}
#contact-form input,#contact-form textarea{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:7px 0 0;padding:11px 13px;border:1px solid #73756b;border-radius:6px;background:#1e2121;color:#f4f0e8;font:400 16px/1.5 Arial,sans-serif;color-scheme:dark}
#contact-form input{min-height:48px}
#contact-form textarea{min-height:118px;resize:vertical}
#contact-form input:focus-visible,#contact-form textarea:focus-visible{border-color:#ccb58c;outline:2px solid #ccb58c;outline-offset:2px}
#contact-form .date-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%;margin:0}
#contact-form .date-row label{min-width:0;margin:0}
#contact-form .fineprint{margin:0;color:#b9bbb4;font:400 13px/1.6 Arial,sans-serif}
#contact-form .form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);left:0;white-space:nowrap}
#contact-dialog #contact-form button[type=submit]{position:static;display:block;width:100%;height:auto;min-height:50px;margin:0;padding:13px 20px;border:1px solid #ccb58c;border-radius:6px;background:#ccb58c;color:#242626;font:600 15px/1.5 Arial,sans-serif;letter-spacing:.2px}
#contact-dialog #contact-form button[type=submit]:hover{background:#decbaa;border-color:#decbaa}
#contact-dialog #contact-form button[type=submit]:disabled{opacity:.65;cursor:wait}
#contact-dialog #contact-status{margin:20px 0 0;padding:14px 16px;border-left:2px solid #ccb58c;background:#ffffff08;color:#eeeae3;font:400 14px/1.6 Arial,sans-serif;overflow-wrap:anywhere}
#contact-dialog #contact-status:empty{display:none}
@media(max-width:520px){#contact-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:28px 22px;border-radius:12px}#contact-dialog #contact-title{font-size:28px}#contact-dialog>p:not(.eyebrow){font-size:15px}#contact-form{gap:16px}}
@media(max-width:380px){#contact-form .date-row{grid-template-columns:minmax(0,1fr)}}
.contact-message{border-top:1px solid #ddd;padding:18px 0}.contact-message p{white-space:pre-wrap;overflow-wrap:anywhere}.contact-message a{text-decoration:underline}@media(max-width:520px){.contact-launch{right:14px;bottom:max(14px,env(safe-area-inset-bottom));padding:11px 15px}#contact-dialog{padding:22px}footer{padding-bottom:100px}}

/* Mobile navigation */
.mobile-menu-toggle,.mobile-home,.nav-contact{display:none}
@media(max-width:1000px){
  header{overflow:visible}
  header.menu-open{background:#222424f5;color:#eeeae3;backdrop-filter:blur(12px)}
  .mobile-menu-toggle{display:grid;width:46px;height:46px;flex:0 0 46px;margin-left:auto;padding:12px;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;place-content:center;gap:5px;z-index:2}
  .mobile-menu-toggle span{display:block;width:20px;height:1.5px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
  header.menu-open .mobile-menu-toggle span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
  header.menu-open .mobile-menu-toggle span:nth-child(2){opacity:0}
  header.menu-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
  header nav{position:absolute;top:100%;left:0;right:0;display:none;max-height:calc(100dvh - 76px);overflow-y:auto;padding:12px 6% max(24px,env(safe-area-inset-bottom));background:#222424f5;color:#eeeae3;border-top:1px solid #ffffff1f;box-shadow:0 18px 35px #0003;backdrop-filter:blur(12px)}
  header.menu-open nav{display:flex;flex-direction:column;align-items:stretch;gap:0}
  header nav a,header nav a:not(.nav-book){display:block;padding:14px 4px;border-bottom:1px solid #ffffff1a;font-size:16px;line-height:1.4}
  header nav .mobile-home,header nav .nav-contact{display:block}
  header nav .nav-book{margin-top:14px;padding:13px 18px;border:1px solid #cbb58e;text-align:center}
}
@media(max-width:600px){.mobile-menu-toggle{width:44px;height:44px;flex-basis:44px}.contact-launch{z-index:9}}

/* Grouped management and employee sign-in */
.admin-page main.section{width:100%;max-width:1080px;padding:55px 28px 90px}.admin-page main>h1{font:400 clamp(30px,4vw,44px)/1.2 'Helvetica Neue',Arial,sans-serif;letter-spacing:-1px;margin:12px 0 18px}.admin-page main>.eyebrow{margin:32px 0 8px;color:#ccb58c}.admin-intro{max-width:700px;color:#c5c7be;font-size:16px}.admin-userbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:22px 0 30px;padding:15px 0;border-block:1px solid #ccb58c33;font-size:14px}.admin-userbar span{overflow-wrap:anywhere}.admin-group{border:1px solid #ccb58c55;background:#292c2b;border-radius:10px;margin:0 0 16px;overflow:hidden}.admin-group[hidden]{display:none}.admin-group>summary{list-style:none;cursor:pointer;padding:23px 25px;display:flex;align-items:center;justify-content:space-between;gap:18px}.admin-group>summary::-webkit-details-marker{display:none}.admin-group>summary:after{content:'+';color:#ccb58c;font-size:28px;font-weight:300;flex:none}.admin-group[open]>summary:after{content:'−'}.admin-group>summary:hover{background:#ffffff04}.admin-group>summary:focus-visible{outline:2px solid #ccb58c;outline-offset:-4px}.group-title{display:block;color:#eeeae3;font-size:20px;line-height:1.4;font-weight:400}.group-hint{display:block;color:#b7b9af;font-size:14px;line-height:1.5;margin-top:5px}.admin-group[open]>summary{border-bottom:1px solid #ccb58c33}.admin-group-body{padding:6px 25px 24px}.admin-group-body>.admin-card,.admin-group-body>section{padding:23px 0;margin:0;border:0;background:transparent;box-shadow:none}.admin-group-body>section+section{border-top:1px solid #ccb58c33}.admin-group-body h2{font:400 23px/1.35 'Helvetica Neue',Arial,sans-serif;letter-spacing:-.4px;margin:0 0 16px}.admin-page .admin-group-body p{font-size:15px;line-height:1.7;overflow-wrap:anywhere}.admin-page .admin-group-body input,.admin-page .admin-group-body textarea{font-size:16px}.admin-page .admin-group-body .fineprint{font-size:14px;color:#b9bcb1}.staff-notice{padding:15px 18px;border-left:2px solid #ccb58c;background:#ffffff05}.staff-row{border-top:1px solid #ccb58c33;padding:20px 0}.staff-row p{margin:4px 0}.staff-row strong{font-size:17px}.staff-row .admin-actions{margin-top:12px;display:flex;flex-wrap:wrap;gap:16px}.staff-preview{border-top:1px solid #ccb58c33;margin-top:20px;padding-top:18px}.staff-preview>summary{cursor:pointer;color:#dcc6a0;font-size:15px}.staff-preview h3{font:400 20px/1.4 Arial,sans-serif;margin:25px 0 12px}.staff-mail-frame{display:block;width:100%;height:720px;border:0;background:#f1eee8}.staff-login-page{min-height:100dvh;display:grid;place-items:center;padding:32px 18px;background:#222424}.staff-login-card{width:100%;max-width:460px;padding:36px;background:#292c2b;border:1px solid #ccb58c66;border-radius:12px;box-shadow:0 20px 70px #0003}.staff-wordmark{display:block;font:25px/1.5 Georgia,serif;letter-spacing:4px;color:#eeeae3;margin-bottom:35px}.staff-wordmark span{display:block;font:10px/1.8 Arial,sans-serif;color:#ccb58c;letter-spacing:3px}.staff-login-card .eyebrow{color:#ccb58c;font-size:12px;letter-spacing:2px;margin:0 0 12px}.staff-login-card h1{font:400 32px/1.2 Arial,sans-serif;letter-spacing:-.7px}.staff-login-card p{font-size:15px;color:#c4c7bc;line-height:1.7}.staff-login-card label{display:block;font-size:14px;color:#eeeae3}.staff-login-card input{display:block;width:100%;min-width:0;padding:12px;margin:8px 0 20px;background:#202322;color:#eeeae3;border:1px solid #7b806e;border-radius:5px;font-size:16px}.staff-login-card .dark-button{width:100%;font-size:16px;padding:13px 18px;border-radius:5px}.staff-login-card .text-button{margin-top:20px}.staff-login-card .fineprint{font-size:13px}.staff-login-card #otp{text-align:center;letter-spacing:8px;font:600 30px/1.5 Arial,sans-serif;letter-spacing:8px;background:#eeeae3;color:#242626;border-color:#ccb58c;padding:15px 8px}.staff-login-card [hidden]{display:none!important}.staff-login-card #login-status{margin:22px 0 0;padding:12px 0;color:#dcc6a0}.owner-login{border-top:1px solid #ccb58c33;margin-top:24px;padding-top:20px;font-size:14px}.staff-back{display:block;font-size:13px;color:#c4c7bc;margin-top:20px}.staff-login-card button:disabled{opacity:.6;cursor:wait}@media(max-width:600px){.admin-page main.section{padding:30px 16px 65px}.admin-group>summary{padding:19px}.admin-group-body{padding:4px 19px 18px}.group-title{font-size:18px}.group-hint{font-size:14px}.admin-group-body .date-row{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.staff-login-card{padding:28px 22px}.staff-mail-frame{height:800px}}

footer .footer-instagram{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:14px;color:#d9c5a4}footer .footer-instagram svg{flex-shrink:0}footer .footer-instagram:hover span{text-decoration:underline;text-underline-offset:4px}

.admin-actions .delete-booking{color:#ffb7ad;border:1px solid #c67e75;padding:10px 16px}.admin-actions .delete-booking:hover{background:#532e2b}
.notification-options{margin:18px 0 22px;padding:18px;border:1px solid #ccb58c44;border-radius:8px}.notification-options legend{padding:0 8px;color:#dcc6a0}.notification-options label{display:block;margin:10px 0;color:#eeeae3}.notification-options input{width:auto!important;margin-right:8px!important}

/* Casa Perca: herkenbare aanklikbare uitklapteksten */
.admin-page summary{list-style:none!important;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.admin-page summary::-webkit-details-marker{display:none}
.admin-page summary::marker{content:''}
.admin-page summary::after{display:none!important;content:none!important}
.admin-page summary:focus-visible{outline:2px solid #ccb58c;outline-offset:4px}
.email-delivery-statuses{display:flex;flex-wrap:wrap;gap:.45rem .8rem;margin-top:.65rem}.email-delivery-statuses p{margin:0;padding:.28rem .55rem;border:1px solid #ffffff24;border-radius:999px;font-size:.82rem}.email-delivery-ok{color:#d9ead8}.email-delivery-warning{color:#f2d49b}.email-delivery-error{color:#f1aaa4}

/* Betalingen per boeking. */
.payment-panel{margin:30px 0;padding:26px;border:1px solid #ccb58c55;border-radius:12px;background:#252827}
.payment-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.payment-heading .eyebrow{margin:0 0 6px!important;font-size:10px}.payment-heading h3{margin:0!important;font:400 27px/1.25 Georgia,serif}.payment-status{flex:none;padding:7px 12px;border:1px solid #ccb58c66;border-radius:999px;color:#ddc8a3;font-size:13px;line-height:1.35}.payment-status-paid{border-color:#6f9c7e;color:#b9e0c3;background:#315b453d}.payment-status-overpaid{border-color:#d7a575;color:#ffd1a6;background:#7048403d}
.payment-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.payment-metric{min-width:0;padding:15px 14px;border:1px solid #ffffff17;border-radius:8px;background:#2d302f}.payment-metric span{display:block;min-height:38px;color:#b9bcb5;font-size:12px;line-height:1.45}.payment-metric strong{display:block;margin-top:7px;color:#eeeae3;font-size:18px;line-height:1.25;overflow-wrap:anywhere}.payment-metric-accent strong{color:#e0c99f}
.payment-progress{height:7px;margin:17px 0 28px;overflow:hidden;border-radius:99px;background:#171918}.payment-progress span{display:block;height:100%;border-radius:inherit;background:#ccb58c}.payment-warning{padding:12px 15px;border-left:3px solid #d7a575;background:#70484030;color:#f1cfad}
.payment-history{margin:8px 0 26px}.payment-history h4{margin:0 0 12px;color:#eeeae3;font-size:17px}.payment-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;padding:15px 0;border-top:1px solid #ffffff17}.payment-entry>div:first-child{min-width:0}.payment-entry strong{color:#eeeae3}.payment-entry p{margin:3px 0!important;color:#b9bcb5;font-size:13px!important;line-height:1.5;overflow-wrap:anywhere}.payment-entry-amount{font-size:17px;white-space:nowrap}.payment-entry-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:16px}.payment-entry-actions .text-button{margin:0}.payment-entry-void{opacity:.58}.payment-entry-void>div:first-child,.payment-entry-void>.payment-entry-amount{text-decoration:line-through}.payment-receipt-status{color:#d9c5a4!important}.payment-undo{color:#e3aaa2!important}
.payment-add{margin-top:24px;border-top:1px solid #ccb58c40;padding-top:20px}.payment-add>summary{color:#e0c99f;font-size:16px;text-decoration:none!important}.payment-add form{margin-top:20px}.payment-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px}.payment-add select{display:block;width:100%;margin:8px 0 0;padding:12px 14px;background:#202322;color:#eeeae3;border:1px solid #8d938d;border-radius:3px;font-size:16px}.payment-add [hidden]{display:none!important}.payment-rule{margin:24px 0 0!important;padding:14px 16px;border-left:2px solid #ccb58c;background:#ffffff05;color:#c5c7be;font-size:13px!important;line-height:1.65}.payment-loading,.payment-error{color:#c7c9c2}.payment-error{color:#ffc2ba}
@media(max-width:900px){.payment-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-metric:last-child{grid-column:1/-1}.payment-metric span{min-height:0}}
@media(max-width:600px){.payment-panel{margin:24px -4px;padding:20px 15px}.payment-heading{display:block}.payment-status{display:inline-block;margin-top:14px}.payment-metrics{grid-template-columns:1fr 1fr}.payment-metric{padding:13px 11px}.payment-metric strong{font-size:16px}.payment-form-grid{grid-template-columns:1fr}.payment-entry{grid-template-columns:minmax(0,1fr) auto;column-gap:12px}.payment-entry-actions{gap:12px}.payment-entry-actions .text-button{font-size:13px}}


/* Casa Perca rounded photos 20261012 */

:root{--site-photo-radius:10px}
.hero,.complex,.residence-panels figure,.gallery button{
  border-radius:var(--site-photo-radius);
  overflow:hidden;
}
.hero-photo,.complex>img,.feature>img,.interior-grid img,
.residence-panels figure>img,.residence-images .residence-frame img,
.gallery img,#lightbox-img{
  border-radius:var(--site-photo-radius);
}
.residence-frame{--photo-radius:var(--site-photo-radius)}
