:root{--green:#173a32;--deep:#102c27;--cream:#f5f1e7;--paper:#fbf9f3;--gold:#b69b68;--text:#233b32}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:'DM Sans',sans-serif;font-size:16px}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}button,select{font:inherit}button{cursor:pointer}.wrap{width:min(1340px,88%);margin:auto}.sr{position:absolute;left:-9999px}.nav{height:92px;position:absolute;z-index:10;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 6%;color:#fff;border-bottom:1px solid #ffffff40}.brand{display:flex;align-items:center;gap:10px;letter-spacing:.16em;font-size:15px;font-weight:400;line-height:1}.brand b{font-weight:700}.brand small{display:block;font-size:8px;letter-spacing:.22em;margin-top:8px}.brand-mark{font-size:35px;font-family:serif;color:#d5c79d}.nav nav{display:flex;gap:36px;font-size:12px;letter-spacing:.05em}.nav nav a{transition:opacity .2s}.nav nav a:hover{opacity:.65}.nav-right{display:flex;align-items:center;gap:20px}.nav select{border:0;color:#fff;background:transparent;font-size:11px;letter-spacing:.1em;cursor:pointer}.nav select option{color:#173a32}.nav-cta{background:#fff;color:var(--deep);padding:17px 22px;font-size:11px;font-weight:700;letter-spacing:.03em}.nav-cta span{padding-left:20px}.menu-toggle{display:none;background:none;border:0;color:white;font-size:24px}.hero{height:min(920px,100svh);min-height:680px;color:#fff;position:relative;overflow:hidden}.hero-bg,.quote-bg,.closing-bg{position:absolute;inset:0;background-size:cover;background-position:center}.hero{background:#173a32 url('assets/2772.jpg') center 65%/cover no-repeat}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%}.hero-bg{background-image:linear-gradient(90deg,rgba(10,25,21,.71),rgba(12,24,20,.23) 65%,rgba(12,24,20,.16)),linear-gradient(0deg,rgba(8,25,21,.38),transparent 50%);pointer-events:none}.video-toggle{position:absolute;z-index:2;right:6%;bottom:78px;color:white;background:#102b2588;border:1px solid #ffffff75;padding:10px 14px;font-size:10px;letter-spacing:.07em}.video-toggle:hover{background:#102b25}.video-toggle span:first-child{margin-right:5px}.video-label{white-space:nowrap}@media(max-width:680px){.video-toggle{right:6%;bottom:70px}.hero-video{object-position:center 62%}}@media(prefers-reduced-motion:reduce){.hero-video{display:none}.video-toggle{display:none}}@keyframes slowZoom{from{transform:scale(1.07)}to{transform:scale(1)}}.hero-content{position:absolute;left:8%;top:52%;transform:translateY(-45%);max-width:800px}.eyebrow{display:flex;align-items:center;gap:13px;font-size:10px;font-weight:700;letter-spacing:.19em;color:#8f7853}.eyebrow.light{color:#e8dfc7}.line{width:35px;height:1px;background:currentColor;display:block}.hero h1,h2,.quote p{font-family:'Playfair Display',Georgia,serif;font-weight:400;letter-spacing:-.045em}.hero h1{font-size:clamp(58px,7.2vw,112px);line-height:1.03;margin:27px 0}.hero h1 em,h2 em,.quote em{font-weight:400}.hero-content p{font-size:16px;line-height:1.8;max-width:430px;color:#f2f0e9}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:20px 24px;font-size:11px;font-weight:700;letter-spacing:.04em}.button.white{background:#f7f4eb;color:var(--deep)}.button:hover,.nav-cta:hover{background:#d9caa8}.text-link{font-size:12px;border-bottom:1px solid #ffffff80;padding:10px 0}.text-link span+span{margin-left:24px}.hero-bottom{position:absolute;bottom:34px;left:6%;right:6%;display:flex;justify-content:space-between;color:#e9e8dc;font-size:9px;letter-spacing:.18em}.vertical-note{position:absolute;right:3%;top:48%;writing-mode:vertical-rl;font-size:9px;letter-spacing:.2em}.ticker{height:62px;background:var(--deep);color:#e3dcc9;display:flex;align-items:center;justify-content:space-around;gap:35px;overflow:hidden;white-space:nowrap;font-size:9px;letter-spacing:.24em}.ticker i{color:#b8a578;font-style:normal;font-size:17px}.intro,.spaces,.gallery{padding:125px 0}.intro-head,.section-top{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:65px}h2{font-size:clamp(42px,5vw,72px);line-height:1.1;margin:22px 0 0}.intro-copy,.section-top>p{max-width:420px;font-size:15px;line-height:1.9;color:#5b6b60}.intro-copy p{margin:0 0 30px}.arrow-link{display:inline-flex;gap:60px;align-items:center;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.13em;border-bottom:1px solid #9aab9d;padding:0 0 13px;color:var(--green)}.arrow-link span:last-child{font-size:17px}.intro-grid{display:grid;grid-template-columns:1.28fr .8fr .48fr;gap:20px;align-items:end}.image-card{margin:0;position:relative;overflow:hidden}.image-card img{transition:transform .6s}.image-card:hover img,.space-img:hover img{transform:scale(1.035)}.image-card.tall{height:530px}.image-card.small{height:390px}.image-card:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#10251da8);pointer-events:none}.image-card figcaption{position:absolute;z-index:1;bottom:22px;left:22px;right:22px;display:flex;justify-content:space-between;color:white;font-size:9px;letter-spacing:.14em}.intro-note{padding:0 0 25px 25px}.sun{font-size:32px;color:#b39362}.intro-note p{font:24px/1.5 'Playfair Display',serif}.smallcaps{font-size:9px;letter-spacing:.16em;color:#9a957f}.suites{display:grid;grid-template-columns:1fr 1fr;background:#eae7d9;min-height:690px}.suites-image{position:relative;min-height:650px}.suites-image img{position:absolute;inset:0}.image-stamp{position:absolute;bottom:40px;right:35px;border:1px solid #fff9;color:#fff;width:115px;height:115px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:10px;letter-spacing:.2em}.image-stamp i{font:italic 22px 'Playfair Display',serif;letter-spacing:0}.image-stamp small{font-size:7px;letter-spacing:.1em;margin-top:8px}.suites-copy{padding:100px clamp(45px,8vw,135px);display:flex;flex-direction:column;justify-content:center}.suites-copy>p{font-size:15px;line-height:1.9;color:#657368;max-width:480px}.suite-facts{display:flex;gap:60px;border-top:1px solid #bbc2b5;border-bottom:1px solid #bbc2b5;padding:24px 0;margin:20px 0}.suite-facts div{display:flex;align-items:center;gap:15px}.suite-facts strong{font:42px 'Playfair Display',serif;font-weight:400}.suite-facts span{font-size:9px;letter-spacing:.13em;max-width:115px;line-height:1.6}.suites-copy .detail-note{font:italic 18px 'Playfair Display',serif;color:#54695b}.suites-copy .arrow-link{align-self:flex-start;margin-top:15px}.space-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.space-img{height:400px;overflow:hidden}.space-img img,.gallery-item img{transition:transform .6s}.space-index{margin-top:24px;font-size:9px;letter-spacing:.16em;color:#a58e69}.space-grid h3{font:26px 'Playfair Display',serif;margin:16px 0 8px}.space-grid p{font-size:13px;color:#718075;line-height:1.7}.quote{height:550px;position:relative;color:#fff;display:grid;place-items:center;text-align:center}.quote-bg{background-image:linear-gradient(#132a2488,#132a2488),url('assets/2721.jpg');background-position:center 50%}.quote-inner{position:relative}.quote-symbol{font-size:25px;color:#ddc99e}.quote p{font-size:clamp(34px,4vw,62px);line-height:1.25;margin:30px 0}.quote-inner>span:last-child{font-size:9px;letter-spacing:.2em}.amenities{padding:120px 0;display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.amen-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #cdd4c9}.amen-grid div{display:flex;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid #cdd4c9;font-size:13px}.amen-grid b{font-size:22px;color:#a28a61;font-weight:400}.gallery{padding-top:30px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:270px;gap:10px}.gallery-item{padding:0;border:0;overflow:hidden;position:relative;background:#e8e6da}.gallery-item.wide{grid-column:span 2}.gallery-item span{position:absolute;right:15px;bottom:15px;width:34px;height:34px;border:1px solid #fff8;border-radius:50%;display:grid;place-items:center;color:#fff;background:#1d302a55}.location{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:#f8f6ed}.location-copy{padding:120px 12% 120px 13%;align-self:center}.location-copy p{color:#c9d3c7;line-height:1.9;font-size:15px;max-width:450px;margin:28px 0 35px}.button.outline{border:1px solid #b1bfb3;color:white}.button.outline:hover{background:#fff;color:var(--green)}.location-image{min-height:600px;position:relative}.location-image img{position:absolute;inset:0}.location-label{position:absolute;bottom:28px;left:28px;background:#f8f6ed;color:#203a30;padding:19px 25px}.location-label span{font-size:9px;letter-spacing:.15em;display:block;margin-bottom:8px;color:#96825e}.location-label b{font:20px 'Playfair Display',serif}.faq{padding:130px 0;display:grid;grid-template-columns:1fr 1fr;gap:100px}.faq>div>p{font-size:14px;line-height:1.8;color:#748076;max-width:340px}.faq-list{border-top:1px solid #c6cfc4}.faq details{border-bottom:1px solid #c6cfc4}.faq summary{list-style:none;padding:23px 0;font-size:14px;display:flex;justify-content:space-between;gap:10px;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:22px;color:#a48e6b}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{margin:0 0 24px;color:#718075;font-size:13px;line-height:1.8}.closing{height:580px;position:relative;display:grid;place-items:center;text-align:center;color:white}.closing-bg{background-image:linear-gradient(#0d2720a8,#0d2720a8),url('assets/2817.jpg');background-position:center 55%}.closing-inner{position:relative}.centered{justify-content:center}.closing h2{font-size:clamp(60px,7vw,100px);line-height:1;margin:26px}.closing p{font-size:14px;color:#e8ebe2;margin:0 0 30px}footer{background:#102b25;color:#d6ded5}.footer-main{padding:75px 0;display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px}.footer-main p{max-width:270px;color:#a6b6a9;font-size:13px;line-height:1.8}.footer-main>div:not(:first-child){display:flex;flex-direction:column;gap:13px;font-size:12px}.footer-head{font-size:9px;letter-spacing:.18em;color:#aa9c7d;margin-bottom:10px}.footer-bottom{border-top:1px solid #ffffff26;padding:24px 0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.16em;color:#91a497}dialog p{text-align:center;font-size:12px}.menu-toggle:focus-visible,a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #d2b57a;outline-offset:4px}@media(max-width:900px){.nav nav{gap:16px}.nav{padding:0 5%}.intro-grid{grid-template-columns:1fr 1fr}.intro-note{display:none}.suites-copy{padding:70px 7%}.suite-facts{gap:20px}.space-img{height:300px}.amenities,.faq{gap:40px}.location-copy{padding:70px 9%}}@media(max-width:680px){.nav{height:76px}.brand{font-size:12px}.brand-mark{font-size:30px}.brand small{font-size:7px}.nav nav{display:none;position:absolute;top:76px;left:0;width:100%;background:#173a32;padding:25px;flex-direction:column;gap:22px}.nav nav.open{display:flex}.nav-right{margin-left:auto;gap:10px}.nav-cta{display:none}.menu-toggle{display:block;margin-left:15px}.hero{min-height:680px;height:92svh}.hero-bg{background-position:58% center}.hero-content{left:7%;right:7%;top:49%;transform:translateY(-38%)}.hero h1{font-size:clamp(50px,11vw,74px)}.hero-content p{font-size:14px;max-width:320px}.hero-actions{gap:20px}.button{padding:17px 19px;gap:25px}.hero-bottom span:first-child{display:none}.hero-bottom{justify-content:flex-end}.vertical-note{display:none}.ticker{justify-content:flex-start;padding-left:20px}.wrap{width:88%}.intro,.spaces,.gallery{padding:80px 0}.intro-head,.section-top{display:block;margin-bottom:35px}.intro-copy,.section-top>p{margin-top:25px}.intro-grid{gap:10px}.image-card.tall{height:320px}.image-card.small{height:250px}.image-card figcaption{font-size:8px;left:12px;right:12px;bottom:14px}.suites{grid-template-columns:1fr}.suites-image{min-height:370px}.suites-copy{padding:70px 6%}.suite-facts{justify-content:space-between}.space-grid{grid-template-columns:1fr;gap:32px}.space-img{height:300px}.space-grid h3{margin-top:10px}.quote{height:400px}.amenities{padding:80px 0;grid-template-columns:1fr;gap:40px}.amen-grid{grid-template-columns:1fr 1fr}.amen-grid div{font-size:11px;gap:10px}.gallery{padding-top:0}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:190px}.gallery-item.wide{grid-column:span 2}.location{grid-template-columns:1fr}.location-copy{padding:80px 6%}.location-image{min-height:370px}.faq{grid-template-columns:1fr;gap:40px;padding:80px 0}.closing{height:500px}.footer-main{grid-template-columns:1fr 1fr;gap:40px;padding:60px 0}.footer-main>div:first-child{grid-column:span 2}.footer-bottom{gap:15px;font-size:8px}.eyebrow{font-size:9px}.quote p{font-size:36px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.enquiry{padding:115px 0;display:grid;grid-template-columns:1fr 1.05fr;gap:100px}.enquiry>div>p{max-width:410px;color:#718075;line-height:1.8;font-size:14px}.enquiry form{background:#eeede2;padding:35px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:flex;flex-direction:column;gap:9px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.form-grid input,.form-grid select,.enquiry textarea{width:100%;background:#fbf9f3;border:1px solid #cbd3c9;padding:13px;color:#243a31;font:14px 'DM Sans',sans-serif;border-radius:0}.form-button{background:#173a32;color:white;border:0;margin-top:22px}.form-button:hover{background:#315b4d;color:white}.enquiry textarea{margin-top:10px;resize:vertical}.enquiry #message-result{margin-top:25px;font-size:12px}.message-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.message-actions button{background:transparent;border:1px solid #789184;padding:15px;font-size:11px}.message-actions .button{margin:0}#copy-status{color:#285744}@media(max-width:680px){.enquiry{grid-template-columns:1fr;gap:30px;padding:70px 0}.enquiry form{padding:22px}.form-grid{gap:12px}}

/* Suites interiors */
.rooms{padding:110px 0 90px}.rooms .section-top{margin-bottom:45px}.rooms-grid{display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:300px 300px;gap:20px}.room-photo{position:relative;display:block;overflow:hidden;border:0;padding:0;background:var(--deep);text-align:left;color:white;min-width:0}.room-main{grid-row:span 2}.room-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(8,29,23,.72));pointer-events:none}.room-main img{object-position:center 63%}.room-key img{object-position:center 37%}.room-bath img{object-position:center 53%}.room-photo .room-caption{position:absolute;z-index:1;left:28px;right:48px;bottom:27px;display:flex;flex-direction:column;gap:9px}.room-caption small{font-size:9px;letter-spacing:.16em}.room-caption strong{font:normal 27px 'Playfair Display',Georgia,serif}.room-photo .room-expand{position:absolute;z-index:2;right:25px;bottom:27px;font-size:22px}.rooms-bottom{padding-top:27px}.room-features{display:flex;flex-wrap:wrap;gap:12px 24px;border-bottom:1px solid #d9dace;padding-bottom:22px}.room-features span{font-size:12px;color:#435e50}.room-features span:before{content:"✳";color:#a48c60;margin-right:9px}.rooms-bottom p{font-size:12px;line-height:1.8;color:#718075;margin:19px 0 0;max-width:650px}.closing-bg{background-image:linear-gradient(#0d272084,#0d2720a3),url('assets/villa-cataventos.jpg');background-position:center 43%}.suites-image img{object-position:38% center}@media(max-width:680px){.rooms{padding:75px 0 55px}.rooms-grid{grid-template-columns:1fr 1fr;grid-template-rows:410px 270px;gap:12px}.room-main{grid-column:span 2;grid-row:auto}.room-photo .room-caption{left:17px;right:20px;bottom:20px}.room-caption small{font-size:8px;letter-spacing:.09em}.room-caption strong{font-size:21px}.room-photo .room-expand{right:12px;bottom:14px;font-size:16px}.room-key img{object-position:center 32%}.room-bath img{object-position:center}.room-features{gap:15px}.room-features span{font-size:11px}.closing-bg{background-position:43% center}.suites-image{min-height:530px}.suites-image img{object-position:35% center}}

.rooms-facade{display:block;position:relative;width:100%;height:350px;border:0;padding:0;margin:0 0 20px;overflow:hidden;background:#102c27;color:white;text-align:left}.rooms-facade img{object-position:center 65%}.rooms-facade:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 60%,#0a231ac4)}.facade-caption{position:absolute;z-index:1;bottom:25px;left:28px;right:55px;font-size:12px;letter-spacing:.03em}.facade-expand{position:absolute;z-index:1;bottom:24px;right:25px;font-size:22px}@media(max-width:680px){.rooms-facade{height:220px}.rooms-facade img{object-fit:contain}.facade-caption{font-size:10px;bottom:17px;left:17px}.facade-expand{bottom:15px;right:15px}}
.room-photo .room-caption,.rooms-facade .facade-caption{width:auto;height:auto;border:0;border-radius:0;background:none;place-items:initial;color:white}.room-photo .room-caption{display:flex}.rooms-facade .facade-caption{display:block}.room-photo .room-expand,.rooms-facade .facade-expand{display:grid;place-items:center;width:34px;height:34px;border:1px solid #fff8;border-radius:50%;background:#1d302a55}

figure.gallery-item{margin:0;cursor:default} .rooms-facade .facade-caption{right:28px} .room-photo .room-caption{right:28px}

/* Static room photographs */
.rooms-facade.gallery-item{margin-bottom:20px}.rooms-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto;gap:20px}.room-photo{aspect-ratio:3/4;min-height:0}.room-main{grid-row:auto;grid-column:auto}.room-main img{object-position:65% center}.room-key img{object-position:center 37%}.room-bath img{object-position:center center}.room-photo .room-caption{left:23px;right:23px;bottom:25px}.room-caption strong{font-size:clamp(22px,2.1vw,29px)}.room-caption small{font-size:8px;line-height:1.6}@media(max-width:680px){.rooms-grid{grid-template-columns:1fr;grid-template-rows:auto;gap:18px}.room-photo{aspect-ratio:4/5}.room-main{grid-column:auto;grid-row:auto}.room-main img{object-position:65% center}.room-bath img{object-position:center}.room-photo .room-caption{left:23px;right:23px;bottom:25px}.room-caption strong{font-size:29px}.room-caption small{font-size:9px}}

/* Property photo story */
.rooms-facade.gallery-item{height:300px;margin-bottom:24px}.rooms-primary{display:grid;grid-template-columns:1fr 1fr;gap:24px}.room-scene{margin:0;position:relative;overflow:hidden;height:600px;background:#eae7d9}.room-scene img{object-position:center 56%}.room-scene:nth-child(2) img{object-position:center 58%}.room-scene:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0c251dcc)}.room-scene figcaption{position:absolute;z-index:1;left:28px;right:28px;bottom:30px;color:#fff;display:flex;flex-direction:column;gap:10px}.room-scene small{font-size:9px;letter-spacing:.17em}.room-scene strong{font:normal clamp(25px,2.5vw,37px)/1.15 'Playfair Display',Georgia,serif;max-width:420px}.room-details-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:24px}.room-details-grid figure{margin:0}.room-details-grid img{height:270px;object-position:center}.room-details-grid figure:nth-child(3) img{object-position:center 35%}.room-details-grid figcaption{font-size:12px;line-height:1.6;color:#657368;padding-top:13px}.rooms-bottom{padding-top:28px}.kitchen{padding:105px 0;background:#eeece0}.kitchen-lead{display:grid;grid-template-columns:1fr 1.05fr;gap:90px;align-items:center}.kitchen-copy h2{font-size:clamp(43px,4.8vw,69px)}.kitchen-copy>p{font-size:15px;line-height:1.9;color:#657368;margin:27px 0 25px;max-width:420px}.kitchen-features{list-style:none;margin:0 0 32px;padding:0;display:grid;gap:13px}.kitchen-features li{font-size:12px;line-height:1.5;color:#435e50;display:flex;align-items:center;gap:12px}.kitchen-features li:before{content:'✳';color:#a18b62;font-size:15px}.kitchen-overview{margin:0;position:relative;height:620px;overflow:hidden}.kitchen-overview img{object-position:center 52%}.kitchen-overview:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0c251dcc)}.kitchen-overview figcaption{position:absolute;z-index:1;left:25px;right:25px;bottom:25px;color:white;font-size:12px;line-height:1.6}.kitchen-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:45px}.kitchen-detail-grid figure{margin:0}.kitchen-detail-photo{height:380px;overflow:hidden}.kitchen-detail-photo img{object-position:center 59%}.kitchen-detail-grid figure:nth-child(2) img{object-position:center 47%}.kitchen-detail-grid figcaption{padding-top:20px}.kitchen-detail-grid figcaption>span{font:26px 'Playfair Display',Georgia,serif}.kitchen-detail-grid figcaption p{font-size:13px;line-height:1.8;color:#657368;margin:10px 0 0;max-width:420px}.gallery-grid{grid-auto-rows:290px}.gallery-grid figure:last-child img{object-position:center 62%}.gallery-grid figure:nth-child(4) img{object-position:center 63%}.gallery-grid figure:nth-child(5) img{object-position:center 55%}@media(max-width:1000px){.room-scene{height:490px}.room-details-grid img{height:220px}.kitchen-lead{gap:45px}.kitchen-overview{height:560px}.kitchen-detail-photo{height:330px}}@media(max-width:680px){.rooms-facade.gallery-item{height:220px}.rooms-primary{grid-template-columns:1fr;gap:18px}.room-scene{height:490px}.room-scene figcaption{left:23px;right:23px;bottom:25px}.room-scene strong{font-size:29px}.room-details-grid{grid-template-columns:1fr 1fr;gap:22px 14px;margin-top:22px}.room-details-grid img{height:230px}.room-details-grid figcaption{font-size:11px;padding-top:10px}.kitchen{padding:75px 0}.kitchen-lead{grid-template-columns:1fr;gap:35px}.kitchen-copy h2{font-size:49px}.kitchen-overview{height:480px}.kitchen-detail-grid{gap:24px;grid-template-columns:1fr;margin-top:28px}.kitchen-detail-photo{height:370px}.kitchen-detail-grid figcaption>span{font-size:25px}.gallery-grid{grid-auto-rows:220px}}

/* Instagram, regional experiences and arrival */
.social-section{padding:85px 0 110px}.instagram-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.social-post{min-width:0}.social-media{background:#fff;border:1px solid #e2e4dc;min-height:430px;border-radius:3px;overflow:hidden}.social-media .instagram-media{margin:0!important;min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important;border:0!important;box-shadow:none!important}.social-media blockquote{display:grid;place-items:center;min-height:430px;background:#fff}.social-media blockquote>a{display:flex;flex-direction:column;gap:18px;align-items:center;text-align:center;padding:30px;color:#173a32;font-size:12px}.ig-fallback-mark{font-size:38px;color:#ac8b64}.social-post-caption{padding-top:18px}.social-post-caption h3{font:24px/1.3 'Playfair Display',Georgia,serif;margin:0 0 12px}.social-post-caption>a{display:inline-block;font-size:10px;letter-spacing:.07em;border-bottom:1px solid #bbc7bb;padding-bottom:6px;color:#5d7061}.instagram-profile{margin-top:32px}.destination{padding:100px 0;background:#eeece0}.destination-photos{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:250px 250px;gap:18px}.destination-photos figure{margin:0;position:relative;overflow:hidden;background:#173a32}.destination-kite{grid-row:span 2}.destination-kite img{object-position:52% center}.destination-lagoon img{object-position:center 65%}.destination-sunset img{object-position:center 78%}.destination-photos figure:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0b2922b5)}.destination-photos figcaption{position:absolute;z-index:1;bottom:24px;left:25px;right:25px;color:#fff;font-size:9px;letter-spacing:.15em;line-height:1.6}.destination-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.destination-notes article>span{font-size:10px;letter-spacing:.12em;color:#a58e69}.destination-notes h3{font:27px/1.25 'Playfair Display',Georgia,serif;margin:14px 0 10px}.destination-notes p{font-size:13px;line-height:1.9;color:#657368;margin:0}.destination-credits{font-size:9px;line-height:1.8;color:#69786a;margin-top:25px}.destination-credits a{text-decoration:underline;text-underline-offset:2px}.destination-films{margin-top:85px;padding-top:65px;border-top:1px solid #cfd2c4}.destination-films-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:35px}.destination-films-head h3{font:clamp(30px,3.2vw,43px)/1.2 'Playfair Display',Georgia,serif;margin:20px 0 0;letter-spacing:-.03em}.destination-films-head p{font-size:13px;line-height:1.9;color:#657368;max-width:350px;margin:0}.regional-posts{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:930px;margin:0 auto}.destination-guide{margin-top:36px}.map-location{grid-template-columns:.9fr 1.1fr}.map-location .location-copy{padding:90px 12% 90px 14%}.map-location .location-copy>p{margin-bottom:25px}.location-copy address{font-style:normal;display:flex;flex-direction:column;gap:9px;font-size:13px;line-height:1.8;color:#c9d3c7}.location-copy address strong{font-size:16px;color:#fbf9f3;font-weight:500}.map-actions{display:flex;align-items:flex-start;flex-direction:column;gap:20px;margin-top:30px}.map-place-link{font-size:11px;color:#d4ddcf;border-bottom:1px solid #9bac9a;padding-bottom:6px}.map-panel{position:relative;background:#dce3d6;min-height:650px}.map-panel iframe{display:block;border:0;width:100%;height:100%;position:absolute;inset:0}@media(max-width:1050px){.instagram-grid{grid-template-columns:1fr 1fr}.instagram-grid .social-post:last-child{grid-column:1/-1;max-width:480px;width:100%;justify-self:center}.destination-photos{grid-template-rows:230px 230px}.destination-notes{gap:25px}.map-location .location-copy{padding:75px 10%}}@media(max-width:680px){.social-section{padding:50px 0 75px}.instagram-grid{grid-template-columns:1fr;gap:35px}.instagram-grid .social-post:last-child{grid-column:auto;max-width:none}.social-post-caption h3{font-size:24px}.destination{padding:75px 0}.destination-photos{grid-template-columns:1fr 1fr;grid-template-rows:350px 210px;gap:12px}.destination-kite{grid-row:auto;grid-column:span 2}.destination-photos figcaption{left:15px;right:15px;bottom:17px;font-size:8px;letter-spacing:.08em}.destination-notes{grid-template-columns:1fr;gap:28px;margin-top:30px}.destination-notes h3{font-size:27px;margin-top:10px}.destination-credits{font-size:8px}.destination-films{margin-top:55px;padding-top:45px}.destination-films-head{display:block;margin-bottom:28px}.destination-films-head p{margin-top:20px}.regional-posts{grid-template-columns:1fr;gap:35px}.map-location{grid-template-columns:1fr}.map-location .location-copy{padding:75px 7%}.map-panel{min-height:430px}}

/* Quiet opening: original Villa artwork over the property film. */
.hero{height:100svh;min-height:600px;max-height:none}
.hero-bg{background:linear-gradient(180deg,rgba(9,23,21,.30),rgba(9,23,21,.18) 35%,rgba(9,23,21,.22) 70%,rgba(9,23,21,.33))}
.nav .brand{display:flex;align-items:center;width:58px;flex-shrink:0}
.nav .nav-sun{display:block;width:42px;height:38px;object-fit:contain}
.hero-identity{position:absolute;inset:92px 24px 92px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;pointer-events:none}
.hero-emblem{width:104px;height:auto;margin-bottom:18px}
.hero-wordmark{margin:0;line-height:0;font-size:0;width:282px}
.hero-wordmark img{display:block;width:100%;height:auto}
.hero-location{margin:22px 0 0;font-size:10px;font-weight:500;line-height:1.8;letter-spacing:.22em;color:#fff}
.video-toggle{right:5%;bottom:28px;width:36px;height:36px;display:grid;place-items:center;padding:0;border:1px solid #ffffff70;border-radius:50%;background:transparent}
.video-toggle span:first-child{margin:0;font-size:13px}
.video-label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:680px){.hero{height:100svh;min-height:560px}.hero-identity{inset:76px 20px 76px}.hero-emblem{width:92px;margin-bottom:18px}.hero-wordmark{width:250px}.hero-location{font-size:8px;letter-spacing:.17em;margin-top:20px}.nav .brand{width:42px}.nav .nav-sun{width:34px;height:32px}.video-toggle{bottom:24px;right:6%}}
.nav-cta{border-radius:40px;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:680px){.nav-cta{display:inline-flex;padding:12px 17px;font-size:10px}.nav-right{gap:12px}.menu-toggle{margin-left:14px}}
.hero .hero-wordmark{margin:0;font-size:0;line-height:0}

/* Sharp sun symbol with a balanced clickable area. */
.nav .brand{width:58px;min-height:52px;justify-content:flex-start}
.nav .nav-sun{width:46px;height:38px;object-fit:contain;filter:drop-shadow(0 1px 3px #102c2740)}
@media(max-width:680px){.nav .brand{width:44px;min-height:44px}.nav .nav-sun{width:38px;height:32px}}
