:root{--green:#173e32;--ink:#233b30;--gold:#dbc28a;--cream:#f6f3eb;--muted:#6d776f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--cream);font-family:Tahoma,Arial,sans-serif;line-height:1.9}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b38b3c;outline-offset:5px}header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;gap:30px;background:var(--cream)}.brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:bold;line-height:1.4}.brand small{display:block;font-size:11px;letter-spacing:2px;font-weight:normal;margin-top:6px}.seal{width:48px;height:55px;border:1px solid #af9868;border-radius:40px 40px 3px 3px;display:grid;place-items:center;font-family:Georgia,serif;font-size:35px;color:#9a7c42}nav{display:flex;gap:30px;font-size:13px}nav a:hover{color:#9a7c42}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:13px 25px;font-size:14px;border:1px solid transparent;cursor:pointer;transition:.2s}.button:hover{transform:translateY(-2px);filter:brightness(.96)}.gold{background:var(--gold);color:#203d30}.small{padding:10px 20px}.hero{height:680px;min-height:560px;position:relative;color:white;margin:0 22px;overflow:hidden}.hero-bg,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-bg{object-position:center 65%}.hero-shade{background:linear-gradient(270deg,rgba(5,29,22,.88),rgba(7,32,23,.35) 60%,rgba(7,32,23,.06)),linear-gradient(0deg,rgba(7,26,19,.6),transparent 40%)}.hero-content{position:relative;padding:85px 7%;z-index:1}.eyebrow{font-size:12px;letter-spacing:1px;color:#e1d5b7;display:flex;align-items:center;gap:9px}.eyebrow span{width:6px;height:6px;background:var(--gold);border-radius:50%}h1,h2,h3,p{margin:0}h1{font-family:Georgia,'Times New Roman',serif;font-size:86px;line-height:1.22;font-weight:400;margin:25px 0}h2{font-family:Georgia,'Times New Roman',serif;font-size:45px;font-weight:400;line-height:1.4;margin:15px 0 22px}h3{font-size:23px;font-weight:500}.hero-content p{color:#eeeadd;font-size:17px;line-height:1.9}.actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:30px}.text-link{font-size:13px;display:flex;gap:24px;align-items:center}.hero-bottom{position:absolute;bottom:22px;right:7%;left:7%;border-top:1px solid #ffffff40;display:flex;justify-content:space-between;padding-top:17px;font-size:11px;letter-spacing:1px;color:#e5e5d5}.hero-note{position:absolute;left:7%;bottom:110px;background:#f6f3eb;color:var(--ink);display:flex;align-items:center;padding:8px;gap:18px;font-size:15px;width:265px}.hero-note img{width:86px;height:107px;object-fit:cover}.hero-note b{display:block;font-weight:400}.ribbon{display:flex;align-items:center;justify-content:center;gap:50px;padding:27px 20px;border-bottom:1px solid #dddcd1;font-size:12px}.ribbon i{color:#a18a54;font-style:normal}.section{max-width:1280px;margin:auto;padding:100px 6%}.kicker{font-size:11px;letter-spacing:1px;color:#80734f;display:block}.story{display:grid;grid-template-columns:1fr 1fr;gap:70px}.story-copy{padding-top:30px}.lead{font-size:20px;line-height:1.9}.story-copy>p+p,.location p+p{font-size:14px;color:var(--muted);margin:20px 0 27px}.inline-link{font-size:12px;border-bottom:1px solid #ad9969;padding-bottom:8px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.section-heading>p{font-size:13px;color:var(--muted);padding-bottom:24px}.spaces{padding-top:25px}.space-grid{display:grid;grid-template-columns:1.2fr 1fr;grid-template-rows:255px 255px;gap:20px}.space-card{position:relative;overflow:hidden;color:white}.space-card.tall{grid-row:span 2}.space-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.space-card:hover img{transform:scale(1.035)}.space-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0a2019e8,transparent 85%)}.card-content{position:absolute;bottom:25px;right:28px;left:28px;z-index:1}.card-content>span{font-size:10px;color:var(--gold)}.card-content h3{margin:7px 0}.card-content p{font-size:12px;color:#e1e6df;max-width:340px}.quote{background:var(--green);color:var(--cream);text-align:center;padding:65px 20px}.quote>span{color:var(--gold);font-size:28px}.quote p{font-family:Georgia,'Times New Roman',serif;font-size:37px;line-height:1.7;margin:15px 0 20px}.quote small{font-size:10px;letter-spacing:3px;color:var(--gold)}.filters{display:flex;gap:4px;padding-bottom:25px}.filters button{border:1px solid #d8d9cd;background:transparent;padding:7px 17px;font-size:12px;cursor:pointer;color:var(--ink)}.filters button.active{background:var(--green);color:white;border-color:var(--green)}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.photo{position:relative;height:310px;border:0;padding:0;background:var(--green);cursor:zoom-in;overflow:hidden}.photo.wide{grid-column:span 2}.photo[hidden]{display:none}.photo img{width:100%;height:100%;object-fit:cover;transition:.5s}.photo:hover img{transform:scale(1.04)}.photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#102c25b5,transparent 50%)}.photo>span{position:absolute;bottom:17px;left:20px;right:20px;z-index:1;color:white;font-size:13px;display:flex;justify-content:space-between}.photo b{font-weight:normal}.gallery-hint{font-size:11px;color:var(--muted);text-align:center;margin-top:22px}.location{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center;padding-top:20px}.location-art{position:relative;height:510px;padding-left:35px}.location-art img{width:100%;height:100%;object-fit:cover;border-radius:200px 200px 0 0}.distance{position:absolute;bottom:28px;left:0;background:var(--gold);padding:20px 32px;text-align:center}.distance strong{font-size:35px;display:block;font-weight:normal;line-height:1.3}.distance strong small{font-size:12px}.distance>span{font-size:11px}.outline{border:1px solid #ad9969;font-size:12px;padding:12px 19px}.booking{max-width:none;background:var(--green);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:85px max(6%,calc((100vw - 1120px)/2))}.light{color:var(--gold)}.booking h2{font-size:56px}.booking p{font-size:13px;color:#cbd7cd}.phone{display:inline-block;font-size:31px;margin-top:25px;letter-spacing:2px}.phone span{color:var(--gold);font-size:23px}.booking form{padding:30px 35px;border:1px solid #ffffff30;background:#ffffff05}.booking form h3{font-size:22px}.booking form p{font-size:11px;margin:7px 0 20px}label{display:block;font-size:11px;margin:13px 0 5px}label small{color:#b7c6bb}input,select,textarea{display:block;width:100%;border:1px solid #ffffff30;background:#224a3d;color:var(--cream);padding:9px 12px;border-radius:0;font-size:13px;color-scheme:dark}textarea{resize:vertical}textarea::placeholder{color:#b8c7be}.booking form .button{width:100%;margin:20px 0 11px}.booking form>small{font-size:10px;color:#b9ccbe;display:block}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:80px}details{border-bottom:1px solid #d4d8cc;padding:17px 0}summary{font-size:14px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+';color:#8e7c50}details[open] summary:after{content:'−'}details p{font-size:13px;color:var(--muted);margin-top:15px}footer{border-top:1px solid #dadfd3;padding:40px 6%;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}footer p{font-size:13px;color:var(--muted)}footer>a:not(.brand){font-size:14px}footer>small{width:100%;font-size:10px;color:var(--muted);padding-top:20px}.floating{position:fixed;bottom:20px;left:22px;z-index:8;display:flex;align-items:center;gap:7px;padding:10px 16px;background:var(--green);color:white;border:1px solid #c9d4bc;box-shadow:0 3px 18px #0002;border-radius:30px;font-size:12px}.floating svg{width:25px;height:25px}dialog{padding:45px 55px 25px;width:min(95vw,1100px);max-height:95vh;border:0;background:#132d25;color:white}dialog::backdrop{background:#03150de8}dialog figure{margin:0;text-align:center}dialog figure img{display:block;max-height:75vh;max-width:100%;margin:auto;object-fit:contain}figcaption{font-size:13px;padding-top:10px}dialog>button{position:absolute;cursor:pointer;border:0;color:white;background:#ffffff15;width:35px;height:35px;font-size:25px}#close-lightbox{top:5px;left:10px}#prev-photo{top:50%;right:8px}#next-photo{top:50%;left:8px}@media(min-width:1500px){.hero{height:760px}.hero-content{padding-top:110px}}@media(max-width:900px){nav{gap:17px;font-size:11px}.hero-note{left:5%;width:220px}.hero-content{padding:80px 6%}h1{font-size:72px}.section{padding:70px 6%}.story,.location,.booking,.faq{gap:35px}h2{font-size:36px}.ribbon{gap:22px}.booking{padding:65px 6%}.photo{height:260px}.spaces{padding-top:15px}.location{padding-top:10px}.location-art{height:440px}}@media(max-width:640px){html{scroll-padding-top:20px}header{height:85px;padding:0 5%;gap:10px}.brand{font-size:17px}.brand small{font-size:9px}.seal{height:45px;width:38px;font-size:29px}nav{display:none}.small{font-size:11px;padding:9px 13px;gap:15px}.hero{margin:0 10px;height:730px;min-height:0}.hero-bg{object-position:48% center}.hero-shade{background:linear-gradient(270deg,#082a21cc,#082a2144),linear-gradient(0deg,#082a21cc,transparent)}.hero-content{padding:65px 7%}.eyebrow{font-size:10px}h1{font-size:66px;margin:25px 0}.hero-content p{font-size:15px}.actions{gap:23px;margin-top:25px}.button{font-size:12px;padding:12px 18px;gap:15px}.hero-note{bottom:85px;left:7%;width:225px;font-size:12px}.hero-note img{height:80px;width:70px}.hero-bottom{bottom:15px;font-size:8px;right:7%;left:7%}.ribbon{display:grid;grid-template-columns:1fr 1fr;text-align:center;font-size:10px;gap:10px;padding:23px}.ribbon i{display:none}.section{padding:60px 7%}.story,.location,.faq,.booking{grid-template-columns:1fr;gap:20px}.story-copy{padding-top:0}h2{font-size:37px}.lead{font-size:18px}.story-copy>p+p{font-size:13px}.section-heading{align-items:start;flex-direction:column;gap:0;margin-bottom:22px}.section-heading>p{padding-bottom:0}.spaces{padding-top:0}.space-grid{grid-template-columns:1fr;grid-template-rows:390px 300px 300px;gap:14px}.space-card.tall{grid-row:span 1}.card-content{right:24px;left:24px}.card-content h3{font-size:23px}.card-content p{font-size:12px}.quote{padding:42px 20px}.quote p{font-size:28px}.filters{padding:0}.filters button{font-size:11px;padding:6px 14px}.photo-grid{grid-template-columns:1fr 1fr;gap:10px}.photo{height:240px}.photo.wide{height:245px}.photo>span{right:12px;left:12px;font-size:11px}.gallery-hint{font-size:9px}.location{padding-top:0}.location-art{height:425px;margin-bottom:20px;padding-left:25px}.distance{padding:15px 25px}.booking{padding:55px 7%;gap:40px}.booking h2{font-size:48px}.booking form{padding:25px}.phone{font-size:29px}.faq{gap:5px}.faq h2{margin-bottom:5px}summary{font-size:13px}.questions{width:100%}footer{padding:35px 7% 85px;gap:25px}footer p{width:100%;order:2}footer>small{order:3;padding-top:0}.floating{left:15px;bottom:15px;padding:9px 13px}.floating span{font-size:11px}dialog{padding:40px 38px 20px}#prev-photo,#next-photo{width:30px}#prev-photo{right:2px}#next-photo{left:2px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.contact-options{margin-top:30px;scroll-margin-top:30px}.contact-options h3{font-size:17px;margin-bottom:16px}.contact-icons{display:flex;gap:18px}.contact-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;width:90px;min-height:92px;border:1px solid #dbc28a80;border-radius:12px;color:var(--gold);background:#ffffff05;transition:background .2s,transform .2s}.contact-icon:hover{background:#ffffff12;transform:translateY(-2px)}.contact-icon svg{width:29px;height:29px}.contact-icon span{font-size:12px}.whatsapp-icon{color:#d3e8d0;border-color:#b5d3b880}

.contact-icons{flex-wrap:wrap}.contact-icon{width:auto;min-width:132px;min-height:122px;padding:16px 20px;gap:7px}.contact-number{font-size:17px;font-weight:500;letter-spacing:1px;line-height:1.5}.contact-icon svg{pointer-events:none}.whatsapp-icon{background:#25d36618;color:#dcfce7}.whatsapp-icon:hover{background:#25d36630}

/* Earth, palm green and woven heritage details. */
:root{--cream:#f5efe3;--gold:#dfc18b;--heritage:#813e32;--sand:#b3976b}
nav{gap:22px}.brand small{margin:0 0 5px}.heritage-band{position:relative;border-block:7px solid var(--heritage)}.heritage-band:before,.heritage-band:after{content:"";position:absolute;right:0;left:0;height:13px;background:linear-gradient(135deg,transparent 40%,var(--gold) 40% 60%,transparent 60%) 0 0/24px 13px,linear-gradient(45deg,transparent 40%,var(--gold) 40% 60%,transparent 60%) 0 0/24px 13px;opacity:.7}.heritage-band:before{top:9px}.heritage-band:after{bottom:9px}
.gallery{max-width:1400px}.filters{flex-wrap:wrap;gap:7px}.filters button{border-radius:25px}.photo-grid{gap:20px}.photo{height:360px;border-radius:4px}.photo.wide{height:420px}.photo>span{align-items:center}.photo>span>span{font-size:15px}.photo b{border:1px solid #ffffff80;border-radius:50%;width:29px;height:29px;display:grid;place-items:center}.photo:after{background:linear-gradient(0deg,#102c25d9,transparent 55%)}
.film-section{display:grid;grid-template-columns:1fr 0.8fr;gap:90px;align-items:center;padding-top:30px}.film-copy>p{max-width:470px}.film-copy>p:not(.lead){font-size:14px;color:var(--muted);margin-top:15px}.film-details{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0}.film-details span{padding:5px 12px;border:1px solid #cab99b;font-size:11px;border-radius:25px}.film-frame{margin:0;max-width:360px;width:100%;justify-self:center;background:#203c30;padding:12px 12px 0;box-shadow:18px 18px 0 #e9decb;border-radius:140px 140px 5px 5px;overflow:hidden}.film-frame video{display:block;width:100%;aspect-ratio:512/910;object-fit:contain;border-radius:130px 130px 0 0;background:#12261d}.film-frame figcaption{color:#eadfc8;text-align:center;padding:14px 7px;font-size:10px}
.harvest{display:grid;grid-template-columns:0.75fr 1fr;align-items:center;gap:80px;border-top:1px solid #d4c7b1;padding-top:65px}.harvest>img{width:100%;max-height:420px;object-fit:cover;object-position:center 55%;border-radius:140px 140px 3px 3px}.harvest p{font-size:15px;color:var(--muted);max-width:490px;margin-bottom:25px}.location{padding-top:40px}.booking{border-top:7px solid var(--heritage)}
@media(max-width:900px){nav{gap:13px}.film-section,.harvest{gap:40px}.photo{height:300px}.photo.wide{height:350px}}
@media(max-width:640px){.gallery .section-heading{gap:16px}.photo-grid{gap:12px}.photo{height:270px}.photo.wide{height:290px}.photo>span>span{font-size:11px}.photo b{width:23px;height:23px}.film-section{grid-template-columns:1fr;gap:32px;padding-top:10px}.film-frame{max-width:310px;box-shadow:10px 10px 0 #e9decb}.film-copy h2{font-size:36px}.harvest{grid-template-columns:1fr;gap:32px}.harvest>img{max-height:330px;width:75%;justify-self:center}.harvest h2{font-size:36px}.hero-note{width:245px}.filters button{padding:6px 13px}}

/* Soft silhouettes, inspired by the curves of the oasis. */
.button{border-radius:999px;gap:18px;padding:13px 27px}
.gold{background:linear-gradient(120deg,#f1dfba,#dfc18b);border-color:#f7e9cb66;box-shadow:0 5px 18px #172f2512}
header .button{background:transparent;border:1px solid #b79b68;box-shadow:none;padding:10px 21px}
header .button span{width:27px;height:27px;display:grid;place-items:center;background:#e9ddc6;border-radius:50%;font-size:17px}
.hero .actions .gold{box-shadow:0 8px 25px #051d2240}
.hero-note{border-radius:70px 14px 70px 14px;padding:10px 14px;box-shadow:0 12px 35px #061b222b}
.hero-note img{border-radius:52px 8px 52px 8px}
.contact-icons{gap:22px;align-items:flex-start}
.contact-icon{border:0;border-radius:0;background:transparent!important;padding:0;min-width:90px;min-height:0;gap:12px;color:#f0dfbe}
.contact-icon svg{box-sizing:content-box;width:30px;height:30px;padding:20px;border:1px solid #dfc18b90;border-radius:50%;background:#ffffff08;transition:background .2s,transform .2s;pointer-events:none}
.contact-icon:hover svg{background:#ffffff16;transform:translateY(-3px)}
.contact-icon.whatsapp-icon{color:#dcfce7}
.whatsapp-icon svg{background:#25d366;border-color:#25d366;color:#fff;box-shadow:0 5px 20px #001e1230}
.whatsapp-icon:hover svg{background:#1db85a}
.contact-icon span{pointer-events:none;font-size:12px}
@media(max-width:640px){header .button{padding:7px 12px;gap:8px;font-size:11px}header .button span{height:24px;width:24px}.hero .actions .gold{padding:12px 20px}.hero-note{width:245px}.contact-icon svg{padding:18px}}

.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.video-card{margin:0;min-width:0;padding:10px;background:#173e32;border-radius:24px;overflow:hidden;color:#f5efe3}.video-card video{display:block;width:100%;aspect-ratio:9/16;object-fit:contain;background:#10271f;border-radius:16px}.video-card figcaption{text-align:center;padding:16px 6px 8px;font-size:13px}.videos{padding-top:20px}.photo img{object-position:center 60%}@media(max-width:900px){.video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}@media(max-width:640px){.video-grid{grid-template-columns:1fr;gap:24px;max-width:380px;margin:auto}.video-card{padding:8px}.video-card figcaption{font-size:12px}.hero-bg{object-position:55% center}}

/* Keep the garden and warm lighting prominent in the night photograph. */
.photo.night-garden img{object-position:center 65%}.photo.night-garden{height:360px}@media(max-width:900px){.photo.night-garden{height:300px}}@media(max-width:640px){.photo.night-garden{height:290px}}

.facilities{padding-top:35px}.facilities-intro{color:var(--muted);font-size:15px;margin:-10px 0 28px}.facilities-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.facility-photo{position:relative;display:block;padding:0;border:0;background:var(--green);color:white;cursor:pointer;border-radius:20px;overflow:hidden;text-align:right;min-width:0}.facility-photo img{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;transition:transform .4s}.facility-photo:hover img{transform:scale(1.025)}.facility-photo>span{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 16px;font-size:13px;line-height:1.6}.facility-photo b{font-size:18px;font-weight:400;color:var(--gold)}@media(max-width:900px){.facilities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.facilities .section-heading{display:block}.facilities .section-heading>p{padding-bottom:12px}.facilities-grid{grid-template-columns:1fr;max-width:380px;margin:auto}.facilities-intro{font-size:14px;margin:0 0 24px}.facility-photo>span{font-size:14px}}


.facilities-toggle{padding:0;border:1px solid #baa16d70;border-radius:22px;background:#eee5d540;overflow:hidden}.facilities-toggle>summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:25px 30px;list-style:none;cursor:pointer;border:0}.facilities-toggle>summary::-webkit-details-marker{display:none}.facilities-toggle>summary:after{content:none}.facilities-label{display:block}.facilities-title{display:block;font-size:25px;line-height:1.5;margin:6px 0;color:var(--green)}.facilities-hint{display:block;font-size:12px;color:var(--muted)}.facilities-arrow{flex:none;width:40px;height:40px;border:1px solid #baa16d70;border-radius:50%;display:grid;place-items:center;color:var(--green);font-size:26px;line-height:1;transition:transform .2s}.facilities-toggle[open] .facilities-arrow{transform:rotate(180deg)}.facilities-toggle[open]>summary{border-bottom:1px solid #baa16d40}.facilities-content{padding:26px 24px}.facilities-description{font-size:16px;margin:0 0 12px}.facilities-content .facilities-intro{margin:0 0 24px}@media(max-width:640px){.facilities-toggle>summary{padding:20px;gap:12px}.facilities-title{font-size:20px}.facilities-arrow{width:34px;height:34px}.facilities-content{padding:20px 16px}.facilities-description{font-size:14px}}
