@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--green:#193d30;--green2:#275944;--cream:#f8f6ee;--sand:#e8dfcc;--ink:#18332a;--muted:#6b756c;--gold:#e3bd69;--ldg-psb-background:#fff;--ldg-psb-border-radius:12px;--ldg-psb-box-shadow:none;--ldg-psb-padding:14px;--ldg-psb-input-background:#fff;--ldg-psb-button-border-radius:40px;--ldg-psb-color-primary:#214c3a;--ldg-psb-color-primary-lighter:#b6d1bd;--ldg-psb-color-primary-darker:#123a2a;--ldg-psb-color-primary-contrast:#fff;--ldg-semantic-color-primary:#214c3a;--ldg-semantic-color-primary-lighter:#b6d1bd;--ldg-semantic-color-primary-darker:#123a2a;--ldg-semantic-color-primary-contrast:#fff;--ldg-component-modal-z-index:9999}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.container{width:min(1180px,calc(100% - 42px));margin:auto}.eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:#8b916d}.serif,h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1{font-size:clamp(52px,7vw,110px);line-height:1.03;letter-spacing:-.045em;margin:18px 0}h2{font-size:clamp(38px,4.6vw,66px);line-height:1.13;letter-spacing:-.035em;margin:12px 0 22px}h3{font-size:30px;margin:12px 0}p{line-height:1.75}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 25px;border-radius:100px;background:var(--green);color:white;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:.2s}.btn:hover{background:#376f54;transform:translateY(-2px)}.btn.light{background:#fff;color:var(--green)}.btn.outline{background:transparent;border:1px solid #c7c8bb;color:var(--green)}header{height:82px;position:absolute;top:0;left:0;width:100%;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100vw - 1280px)/2));color:white;border-bottom:1px solid #ffffff40}header .brand{display:flex;align-items:center;gap:12px}.brand img{width:142px;max-height:57px;object-fit:contain}.brand-fallback{font-size:13px;font-weight:700;letter-spacing:.14em;line-height:1.25}.nav{display:flex;gap:30px;align-items:center}.nav a{font-size:12px;font-weight:600}.nav a:hover{color:#e8d5a1}.nav .btn{color:var(--green)}.menu-toggle{display:none;background:none;border:0;color:white;font-size:25px}.hero{min-height:790px;height:94vh;max-height:1100px;background:linear-gradient(90deg,rgba(10,35,27,.72),rgba(10,35,27,.08)),linear-gradient(0deg,rgba(10,35,27,.45),transparent 50%),url(https://images.unsplash.com/photo-1514282401047-d79a71a590e8?auto=format&fit=crop&w=2000&q=85) center/cover;display:flex;align-items:center;color:white}.hero-content{width:min(1180px,calc(100% - 42px));margin:auto;padding-top:85px}.hero .eyebrow{color:#f2dba5}.hero p{max-width:520px;font-size:16px;color:#f3f3ed}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-note{position:absolute;bottom:28px;right:6%;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.intro{padding:110px 0;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.intro p{max-width:480px}.intro-image{height:550px;width:100%;object-fit:cover;border-radius:160px 160px 5px 5px}.stay{padding:100px 0 110px;background:#eaece3}.section-top{text-align:center;max-width:710px;margin:0 auto 42px}.section-top p{color:#6b756c}.properties{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.property{background:#fff;overflow:hidden;border-radius:7px;box-shadow:0 12px 28px #1c362016}.property img{height:285px;width:100%;object-fit:cover}.property-body{padding:25px}.property-body h3{font-size:29px}.property-body p{font-size:13px;color:var(--muted);min-height:65px}.property .meta{font-size:10px;letter-spacing:.15em;color:#788770;text-transform:uppercase;font-weight:700}.property .arrow{display:inline-block;margin-top:15px;font-size:12px;font-weight:700;border-bottom:1px solid var(--green);padding-bottom:6px}.booking{margin-top:26px;background:white;border:1px solid #dfe3d7;border-radius:10px;padding:28px 30px 32px;box-shadow:0 15px 35px #203c2d0b}.booking-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.booking-heading h3{font-size:30px;margin:3px 0}.booking-heading p{font-size:12px;color:var(--muted);margin:0}.booking-pill{font-size:10px;text-transform:uppercase;letter-spacing:.1em;background:#edf4ea;padding:10px 14px;border-radius:30px;color:#376348;font-weight:700}#lodgify-search-bar{width:100%;min-height:70px}.widget-fallback{font-size:12px;color:var(--muted);margin-top:12px}.widget-fallback a{text-decoration:underline}.feature{display:grid;grid-template-columns:1fr 1fr;min-height:600px}.feature-image{min-height:540px;background-size:cover;background-position:center}.feature-copy{padding:90px max(35px,calc((100vw - 1180px)/2)) 90px 75px;display:flex;flex-direction:column;justify-content:center;background:var(--green);color:white}.feature-copy .eyebrow{color:#e3c889}.feature-copy p{color:#d7e2d8;max-width:500px}.feature.reverse .feature-copy{order:1;background:#eee9db;color:var(--ink);padding:90px 75px 90px max(35px,calc((100vw - 1180px)/2))}.feature.reverse .feature-copy p{color:var(--muted)}.feature.reverse .feature-image{order:2}.feature .btn{align-self:flex-start;margin-top:18px}.feature-copy h2{max-width:520px}.statement{text-align:center;padding:115px 20px}.statement h2{max-width:850px;margin:15px auto 20px}.footer{background:#122c22;color:#e8eee8;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer p,.footer a{color:#d3ded5;font-size:13px}.footer-links{display:flex;flex-direction:column;gap:12px}.footer-bottom{border-top:1px solid #ffffff20;margin-top:65px;padding-top:22px;color:#a4b5aa;font-size:11px}.page-hero{height:420px;background:linear-gradient(90deg,#143629e0,#14362960),var(--bg) center/cover;display:flex;align-items:end;color:white;padding:150px 0 60px}.page-hero h1{font-size:clamp(50px,6vw,78px)}.page-main{padding:85px 0}.page-main .lead{font-size:18px;max-width:760px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.contact-box{background:#fff;padding:38px;border-radius:8px}.contact-box a{color:var(--green);text-decoration:underline}.cards-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin:40px 0}.cards-2 img{width:100%;height:300px;object-fit:cover}.cards-2 .info{padding:20px 0}.mobile-book{display:none}@media(max-width:900px){.nav{display:none;position:absolute;top:82px;left:0;right:0;background:#173c2d;padding:24px;flex-direction:column;align-items:stretch}.nav.open{display:flex}.menu-toggle{display:block}.intro{grid-template-columns:1fr;gap:35px}.intro-image{height:420px}.properties{grid-template-columns:1fr 1fr}.feature{grid-template-columns:1fr}.feature-image{min-height:400px}.feature-copy,.feature.reverse .feature-copy{order:2;padding:60px 35px}.feature.reverse .feature-image{order:1}.footer-grid{grid-template-columns:1fr 1fr}.mobile-book{display:block;position:fixed;bottom:14px;left:16px;right:16px;z-index:80;text-align:center;box-shadow:0 8px 20px #0004}}@media(max-width:600px){header{padding:0 20px}.hero{min-height:700px;height:85vh}.hero-note{display:none}.intro{padding:65px 0}.stay{padding:70px 0}.properties,.cards-2,.contact-grid,.footer-grid{grid-template-columns:1fr}.property img{height:270px}.property-body p{min-height:0}.booking{padding:20px 15px}.booking-heading{align-items:flex-start;flex-direction:column}.booking-pill{display:none}.statement{padding:80px 20px}.footer{padding-bottom:95px}.page-hero{height:360px}.page-main{padding:55px 0}}

/* Immersive landing pages */
.landing-hero{min-height:83vh;position:relative;display:flex;align-items:end;color:white;background:linear-gradient(0deg,rgba(10,35,27,.85),rgba(10,35,27,.10) 75%),var(--landing-photo) center/cover;padding:180px 0 95px}.landing-hero .container{position:relative;z-index:1}.landing-hero h1{max-width:900px;font-size:clamp(54px,8vw,112px)}.landing-hero p{max-width:590px;color:#f4f2e9;font-size:18px}.landing-hero .eyebrow{color:#f4d995}.landing-hero .btn{margin-top:16px;background:#e6ca8a;color:#193d30}.story-intro{text-align:center;padding:110px 0 80px}.story-intro h2{max-width:850px;margin:14px auto}.story-intro p{max-width:750px;margin:auto;font-size:18px;color:#667367}.chapter{display:grid;grid-template-columns:1fr 1fr;min-height:560px;align-items:stretch}.chapter .chapter-photo{min-height:520px;background:var(--chapter-photo) center/cover}.chapter .chapter-copy{padding:90px max(32px,7vw);display:flex;flex-direction:column;justify-content:center}.chapter:nth-child(even){background:#e9ebdf}.chapter:nth-child(even) .chapter-photo{order:2}.chapter h2{font-size:clamp(36px,4vw,59px)}.chapter p{max-width:510px;color:#5b6d61}.chapter .eyebrow{color:#8a875f}.chapter .btn{align-self:flex-start;margin-top:18px}.chapter-icons{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.chapter-icons span{border:1px solid #bec8b7;padding:9px 14px;border-radius:40px;font-size:12px}.quote-band{padding:100px 24px;text-align:center;background:#193d30;color:#fff}.quote-band h2{max-width:850px;margin:0 auto}.quote-band .eyebrow{color:#e9d19a}.conversion{padding:105px 0;background:#e8e9df;text-align:center}.conversion h2{max-width:800px;margin:15px auto}.conversion p{max-width:650px;margin:0 auto 30px;color:#59685d}.conversion .btn{margin:7px}.conversion .booking{text-align:left;max-width:1080px;margin:32px auto 0}.landing-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:45px 0}.landing-cards article{background:#fff;border-radius:10px;overflow:hidden;text-align:left;box-shadow:0 16px 40px #122c2212}.landing-cards img{height:245px;width:100%;object-fit:cover}.landing-cards .card-content{padding:23px}.landing-cards h3{font-size:27px}.landing-cards p{font-size:13px;color:#5c6b60}.details-strip{display:flex;gap:24px;flex-wrap:wrap;justify-content:center;margin:25px 0 0}.details-strip span{font-size:12px;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #b6c3b5;padding-bottom:10px}.decorative-rule{width:85px;height:2px;background:#c6a869;margin:25px auto}.faq{padding:80px 0}.faq details{border-bottom:1px solid #d1d8ce;padding:22px 0;max-width:820px;margin:auto}.faq summary{cursor:pointer;font-weight:700}.faq p{color:#667367}.landing-hero .btn:hover{background:white}.chapter-photo{position:relative}.chapter-photo:after{content:'✦';position:absolute;bottom:25px;right:30px;font-size:32px;color:#fff8;pointer-events:none}
@media(max-width:850px){.chapter{grid-template-columns:1fr}.chapter .chapter-photo{min-height:340px}.chapter:nth-child(even) .chapter-photo{order:0}.chapter .chapter-copy{padding:60px 28px}.landing-cards{grid-template-columns:1fr}.landing-hero{min-height:690px;padding:170px 0 80px}.story-intro{padding:75px 0}.conversion{padding:70px 0}.quote-band{padding:70px 20px}}

/* Test booking boxes inside property cards */
.rental-test-widget{padding:14px 18px 20px;background:#f4f7f1;border-top:1px solid #d9e4d7}.rental-widget-heading{font-size:13px;font-weight:700;color:#214734;margin:0 0 10px}.lodgify-rental-frame{display:block;width:100%;height:370px;border:0;background:#fff;border-radius:8px}.rental-widget-note{font-size:11px!important;line-height:1.5!important;color:#7c6541!important;margin:10px 0 0!important;min-height:0!important}.property .property-body p{min-height:0}.property{display:flex;flex-direction:column}.property .rental-test-widget{margin-top:auto}.landing-cards article{display:flex;flex-direction:column}.landing-cards article .rental-test-widget{margin-top:auto}@media(max-width:600px){.lodgify-rental-frame{height:420px}}


/* Improved high-contrast navigation */
header{position:sticky;top:0;left:0;width:100%;height:88px;z-index:1000;background:#12382e;color:#fff;border-bottom:1px solid rgba(255,255,255,.22);box-shadow:0 6px 24px rgba(8,30,22,.19);padding-left:max(24px,calc((100vw - 1280px)/2));padding-right:max(24px,calc((100vw - 1280px)/2));}
header .brand{display:flex;align-items:center;min-width:0}header .brand img{max-height:67px;width:auto;object-fit:contain}header .brand-fallback{font-weight:700;letter-spacing:.08em;line-height:1.15;color:#fff}
header .nav{gap:clamp(12px,2.1vw,30px)}
header .nav>a:not(.btn){font-size:14px;font-weight:700;letter-spacing:.02em;color:#fff;opacity:1;padding:12px 2px;border-bottom:2px solid transparent;transition:border-color .2s,color .2s}
header .nav>a:not(.btn):hover,header .nav>a:not(.btn):focus-visible,header .nav>a[aria-current="page"]:not(.btn){color:#ffe4a4;border-bottom-color:#e3bd69}
header .nav .btn.light{background:#f5e9ce!important;color:#153b2f!important;font-weight:800!important;white-space:nowrap}
header .nav .btn.light:hover{background:#fff!important}
.menu-toggle{width:48px;height:48px;align-items:center;justify-content:center;flex-direction:column;gap:6px;border:1px solid rgba(255,255,255,.5);border-radius:10px;background:rgba(255,255,255,.08);cursor:pointer;padding:10px;color:#fff}
.menu-line{display:block;width:25px;height:2.5px;border-radius:3px;background:currentColor;transform-origin:center;transition:transform .28s ease,opacity .18s ease}
.menu-toggle[aria-expanded="true"] .menu-line:nth-child(1){transform:translateY(8.5px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-line:nth-child(2){opacity:0;transform:scaleX(.1)}
.menu-toggle[aria-expanded="true"] .menu-line:nth-child(3){transform:translateY(-8.5px) rotate(-45deg)}
.menu-toggle:focus-visible,header a:focus-visible{outline:3px solid #f2cb7b;outline-offset:4px}
@media(max-width:900px){header{height:76px;padding:0 18px}.menu-toggle{display:flex}.nav{display:none!important;position:absolute;top:76px;left:0;right:0;background:#12382e!important;padding:16px 22px 26px!important;box-shadow:0 18px 26px rgba(0,0,0,.22);flex-direction:column;align-items:stretch;gap:5px!important;max-height:calc(100dvh - 76px);overflow:auto}.nav.open{display:flex!important}.nav a:not(.btn){font-size:16px!important;padding:14px 8px!important}.nav .btn{margin-top:12px}.brand img{max-height:57px!important}}
@media(prefers-reduced-motion:reduce){.menu-line{transition:none}}

/* Enlarged logo and wordmark across all pages */
header{min-height:102px;height:102px}
header .brand{gap:16px;flex-shrink:0;max-width:48%;text-decoration:none}
header .brand img{height:78px;max-height:78px;width:auto;max-width:145px;object-fit:contain}
header .brand-name{display:flex;flex-direction:column;gap:2px;color:#fff;font-family:Georgia,'Times New Roman',serif;font-size:clamp(19px,2vw,27px);line-height:1.02;letter-spacing:.012em;white-space:nowrap;font-weight:400}
header .brand-name strong{font-weight:700}
@media(max-width:1100px){header .brand{gap:10px}header .brand img{height:65px;max-height:65px}header .brand-name{font-size:21px}header .nav{gap:12px}}
@media(max-width:900px){header{height:86px;min-height:86px}header .brand{max-width:calc(100% - 68px)}header .brand img{height:62px;max-height:62px!important}header .brand-name{font-size:22px}.nav{top:86px!important;max-height:calc(100dvh - 86px)!important}}
@media(max-width:420px){header .brand{gap:8px}header .brand img{height:53px;max-height:53px!important;max-width:90px}header .brand-name{font-size:18px}}

/* Espiritu Santo experiences */
.santo-experiences{padding:95px 0;background:#f5f4eb;color:#193d30}.santo-heading{max-width:810px;margin:0 auto 42px;text-align:center}.santo-heading h2{font-size:clamp(32px,4.5vw,58px);line-height:1.12;margin:12px 0 20px}.santo-heading p{font-size:17px;line-height:1.8;color:#4c6255}.santo-experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.santo-place{background:white;border-radius:12px;overflow:hidden;box-shadow:0 9px 28px rgba(22,58,39,.08)}.santo-photo{height:205px;display:flex;align-items:end;padding:14px;background-size:cover;background-position:center}.santo-blue{background:linear-gradient(140deg,#043c53,#1fabb5 65%,#b0e4d1)}.santo-beach{background:linear-gradient(140deg,#087d98,#65cbd5 60%,#e7d8a6)}.santo-millennium{background:linear-gradient(140deg,#142e26,#3e6e4e 60%,#91a67b)}.santo-reef{background:linear-gradient(140deg,#06456d,#1786a5 60%,#55c5b9)}.santo-waterfall{background:linear-gradient(140deg,#254b38,#79a99a 65%,#c6e2d8)}.santo-aore{background:linear-gradient(140deg,#295b43,#7eaf70 65%,#e5c68d)}.photo-slot{display:inline-block;background:rgba(15,43,35,.78);color:white;padding:8px 12px;border-radius:5px;font-size:12px;letter-spacing:.04em}.santo-place-copy{padding:26px}.santo-place-copy h3{font-size:24px;line-height:1.2;margin:10px 0}.santo-place-copy p{color:#52645a;line-height:1.65;margin:0}.santo-planning{margin-top:40px;background:#193d30;color:white;border-radius:12px;padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:30px}.santo-planning>div{max-width:690px}.santo-planning h3{font-size:30px;line-height:1.2;margin:10px 0}.santo-planning p{color:#dce9df;line-height:1.7}.santo-planning .btn{white-space:nowrap}@media(max-width:900px){.santo-experience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.santo-planning{flex-direction:column;align-items:flex-start}}@media(max-width:580px){.santo-experiences{padding:65px 0}.santo-experience-grid{grid-template-columns:1fr}.santo-photo{height:220px}.santo-planning{padding:26px}.santo-planning h3{font-size:26px}}

/* Getting Here landing page */
.arrival-hero{min-height:540px;background:linear-gradient(105deg,rgba(13,49,39,.96),rgba(19,61,48,.68)),url('https://images.unsplash.com/photo-1500375592092-40eb2168fd21?auto=format&fit=crop&w=1800&q=80') center/cover;color:white;display:flex;align-items:center;padding:90px 0}.arrival-hero h1{font-size:clamp(48px,6.4vw,90px);max-width:950px}.arrival-hero p{max-width:640px;font-size:18px;color:#e2ebe5}.arrival-hero .eyebrow,.arrival-cta .eyebrow{color:#e8d29c}.arrival-intro{text-align:center;padding:95px 0 85px;max-width:840px}.arrival-intro p{font-size:17px;color:#58695f}.arrival-steps{background:#eaece3;padding:40px 0}.arrival-step{display:grid;grid-template-columns:65px minmax(0,1fr) minmax(260px,.9fr);gap:28px;align-items:center;padding:46px 0;border-bottom:1px solid #cbd4ca}.arrival-step:last-child{border-bottom:0}.arrival-num{font-family:Georgia,serif;font-size:40px;color:#ad9969;align-self:start}.arrival-step h2{font-size:clamp(32px,3.8vw,54px)}.arrival-step p{max-width:530px;color:#56675b}.arrival-illustration{height:220px;border-radius:12px;display:flex;align-items:end;padding:20px;color:white;box-shadow:0 12px 30px #17382920}.arrival-illustration span{font-weight:700;text-shadow:0 1px 8px #102e29}.arrival-illustration.airport{background:linear-gradient(160deg,#3d695e,#9fc1b4)}.arrival-illustration.road{background:linear-gradient(150deg,#244b39,#94a96c)}.arrival-illustration.boat{background:linear-gradient(140deg,#14616f,#76c7c8)}.arrival-illustration.island{background:linear-gradient(140deg,#2b5e43,#b7c18c)}.arrival-route{text-align:center;padding:90px 0}.arrival-route h2{max-width:1000px;margin:14px auto 22px;font-size:clamp(32px,4vw,52px)}.arrival-route h2 span{color:#b59c5f}.arrival-route p{color:#58695f}.arrival-map-placeholder{margin:38px auto 0;min-height:260px;border:2px dashed #b8c6b8;border-radius:14px;background:linear-gradient(140deg,#e2e8dc,#c4d6cd);display:grid;place-items:center;padding:25px}.arrival-map-placeholder>div{max-width:460px}.arrival-map-placeholder strong{font-size:18px}.arrival-faq{padding:30px 0 100px}.arrival-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:38px}.arrival-faq-grid>div{background:#fff;padding:30px;border-radius:10px}.arrival-faq-grid h3{font-size:25px}.arrival-faq-grid p{color:#56675b}.arrival-cta{background:#193d30;color:white;text-align:center;padding:95px 0}.arrival-cta p{max-width:630px;margin:0 auto 28px;color:#dbe9df}.arrival-cta .btn{margin:6px}.arrival-cta .btn.outline{border-color:#c8d7cb;color:white}@media(max-width:850px){.arrival-step{grid-template-columns:50px 1fr}.arrival-illustration{grid-column:2}.arrival-faq-grid{grid-template-columns:1fr}}@media(max-width:540px){.arrival-hero{min-height:520px}.arrival-step{grid-template-columns:1fr;gap:12px}.arrival-illustration{grid-column:1}.arrival-num{font-size:30px}.arrival-intro,.arrival-route{padding:65px 0}.arrival-faq{padding-bottom:65px}}
/* Updated navigation and plantation presentation */
.menu-toggle{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:10px!important}
.menu-toggle:hover,.menu-toggle:focus-visible{background:transparent!important;box-shadow:none!important}
.home-stay-cta{text-align:center;margin:35px auto 0}
#lodgify-search-bar{width:100%;min-height:75px}
:root{--ldg-psb-background:#fff;--ldg-psb-border-radius:.42em;--ldg-psb-box-shadow:0 14px 34px rgba(0,0,0,.10);--ldg-psb-padding:14px;--ldg-psb-input-background:#fff;--ldg-psb-button-border-radius:3.58em;--ldg-psb-color-primary:#193d30;--ldg-psb-color-primary-lighter:#dce8df;--ldg-psb-color-primary-darker:#102b20;--ldg-psb-color-primary-contrast:#fff;--ldg-semantic-color-primary:#193d30;--ldg-semantic-color-primary-lighter:#dce8df;--ldg-semantic-color-primary-darker:#102b20;--ldg-semantic-color-primary-contrast:#fff;--ldg-component-modal-z-index:999}
.plantation-detail{background:#f3f3e9;padding:95px 0}.plantation-detail h2{margin:15px 0 35px}.plantation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.plantation-grid article{background:#fff;padding:28px;border-radius:10px}.plantation-grid h3{font-size:25px;margin:0 0 12px}.plantation-grid p{color:#52665a;line-height:1.65}@media(max-width:800px){.plantation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.plantation-grid{grid-template-columns:1fr}.plantation-detail{padding:65px 0}}

/* Homepage accommodation: three cards on desktop, swipe carousel on mobile */
.home-properties .property-body{display:flex;flex-direction:column;flex:1}
.home-properties .property-body p{min-height:0}
.carousel-hint{display:none}
@media(max-width:600px){
 .home-properties{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:4px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding:4px 4px 18px;scrollbar-width:thin;scrollbar-color:#73927e transparent}
 .home-properties .property{flex:0 0 min(84vw,340px);scroll-snap-align:start;scroll-snap-stop:always}
 .home-properties .property img{height:245px}
 .carousel-hint{display:block;text-align:center;font-size:12px;color:#526a58;margin:0 0 14px}
}

/* Accommodation widget directly beneath the three stays */
.stay-booking-inline{padding:12px 0 85px;background:#f5f4eb}.stay-booking-intro{text-align:center;max-width:740px;margin:0 auto 26px}.stay-booking-intro h2{font-size:clamp(30px,4vw,48px);margin:8px 0}.stay-booking-intro p{color:#53685b;line-height:1.7}.stay-booking-inline .booking{max-width:1100px;margin:0 auto}.mobile-swipe-hint{display:none!important}
@media(max-width:650px){
.mobile-swipe-hint{display:block!important;font-size:13px!important;font-weight:700!important;letter-spacing:.04em;color:#426e56!important;margin-top:20px!important}
/* Native touch scroll with momentum and snap */
.santo-experience-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:18px;gap:15px;padding:4px 18px 20px;margin:0 -18px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.santo-experience-grid .santo-place{flex:0 0 86%;max-width:86%;scroll-snap-align:start;align-self:stretch}
.santo-photo{height:215px!important;background-size:cover!important;background-position:center!important}
.arrival-steps{overflow:hidden;padding:28px 0!important}
.arrival-steps-track{display:flex!important;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:20px;padding:0 20px 20px!important;max-width:none!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.arrival-step-slide{display:flex!important;flex-direction:column;flex:0 0 87%;max-width:87%;padding:26px!important;border:0!important;border-radius:14px;background:#fff;scroll-snap-align:start;gap:14px!important;align-items:stretch!important;box-shadow:0 8px 25px rgba(20,50,35,.08)}
.arrival-step-slide .arrival-illustration{height:170px;grid-column:auto!important}
.arrival-step-slide h2{font-size:32px}.arrival-step-slide p{font-size:15px;line-height:1.65}
.stay-booking-inline{padding:15px 0 62px}.stay-booking-inline .booking{padding:18px!important}
}

/* Stay page: integrated carousel and direct booking */
.stay-selection-section{padding:34px 0 85px;background:#f5f4eb}
.stay-selection-box{background:#fff;border:1px solid #e1e8df;border-radius:18px;padding:clamp(16px,3vw,34px);box-shadow:0 18px 48px rgba(20,49,34,.08)}
.stay-selection-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}
.stay-selection-heading h2{font-size:clamp(28px,3.8vw,43px);margin:0}
.stay-carousel-controls{display:flex;gap:8px;flex-shrink:0}
.stay-carousel-arrow{background:#193d30;color:#fff;border:0;border-radius:50%;width:42px;height:42px;cursor:pointer;font-size:29px;line-height:1}
.stay-carousel-arrow:focus-visible{outline:3px solid #c1a85b;outline-offset:3px}
.stay-carousel-track{display:flex!important;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:2px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding:2px 2px 16px;scrollbar-width:thin;scrollbar-color:#a7b6a8 transparent}
.stay-carousel-track article{flex:0 0 calc((100% - 36px)/3);min-width:0;scroll-snap-align:start;border-radius:12px;overflow:hidden;background:#f7f8f4}
.stay-carousel-track article img{width:100%;height:215px;object-fit:cover}
.stay-carousel-track .card-content{padding:16px 18px 18px}
.stay-carousel-track h3{font-size:25px;margin:0 0 6px}
.stay-carousel-track p{font-size:13px;line-height:1.5;margin:0;color:#53665b}
.stay-search-embedded{margin-top:14px;padding:22px 18px 10px;background:#f0f4ed;border:1px solid #e0e8df;border-radius:12px}
.stay-search-heading h3{font-size:23px;margin:0 0 10px}
.stay-carousel-hint{display:none}
@media(max-width:900px){.stay-carousel-track article{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:600px){.stay-selection-section{padding:22px 0 55px}.stay-selection-box{padding:15px 12px}.stay-selection-heading h2{font-size:28px}.stay-carousel-track article{flex:0 0 88%}.stay-carousel-track article img{height:230px}.stay-carousel-hint{display:block;color:#4b6c55;font-size:12px;margin:-7px 0 12px}.stay-search-embedded{padding:16px 10px 6px}.stay-search-heading h3{font-size:21px}.stay-carousel-arrow{width:36px;height:36px}}

/* Homepage stays: a real carousel at every screen size */
.home-properties{display:flex!important;gap:20px!important;overflow-x:auto!important;scroll-snap-type:x mandatory;scroll-padding-inline:3px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding:5px 3px 20px!important;scrollbar-width:thin}
.home-properties .property{flex:0 0 calc((100% - 40px)/3)!important;min-width:0;scroll-snap-align:start}
.home-carousel-controls{display:flex;gap:10px;margin:20px 0 4px}
.home-carousel-arrow{width:44px;height:44px;border:0;border-radius:50%;background:#193d30;color:white;font-size:30px;cursor:pointer}
.home-carousel-arrow:focus-visible{outline:3px solid #d0ae68;outline-offset:3px}
.photo-credit{display:block;font-size:11px;color:#6c7e70;margin-top:14px;line-height:1.4}
@media(min-width:901px){.home-properties .property{flex-basis:calc((100% - 20px)/2)!important}}
@media(min-width:1300px){.home-properties .property{flex-basis:calc((100% - 40px)/3)!important}}
@media(max-width:900px){.home-properties .property{flex-basis:calc((100% - 20px)/2)!important}}
@media(max-width:600px){.home-properties .property{flex:0 0 min(84vw,340px)!important}.home-carousel-controls{justify-content:center}}

@media(min-width:901px){.home-properties .property{flex:0 0 calc((100% - 20px)/2)!important}}

/* Featured accommodation: one immersive card per slide on all devices. */
#home-accommodation-carousel{display:flex!important;gap:0!important;overflow-x:auto!important;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-padding:0!important;padding:0!important;border-radius:12px;max-width:920px;margin:0 auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
#home-accommodation-carousel::-webkit-scrollbar{display:none}
#home-accommodation-carousel .property{display:block;flex:0 0 100%!important;width:100%!important;min-width:100%!important;scroll-snap-align:center;scroll-snap-stop:always;position:relative;isolation:isolate;overflow:hidden;border-radius:12px;box-shadow:none;min-height:510px;background:#173c2d}
#home-accommodation-carousel .property img{height:510px!important;width:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1);will-change:transform}
@media(hover:hover) and (pointer:fine){#home-accommodation-carousel .property:hover img{transform:scale(1.095)}}
#home-accommodation-carousel .property:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,31,23,.87),rgba(8,31,23,.12) 70%);pointer-events:none}
#home-accommodation-carousel .property-body{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:40px 46px;color:white;max-width:740px}
#home-accommodation-carousel .property-body h3{font-size:clamp(32px,4vw,51px);margin:8px 0}
#home-accommodation-carousel .property-body .meta{color:#e4d6b0}
#home-accommodation-carousel .property-body p{color:#f1f5ef;font-size:15px;line-height:1.6;margin:6px 0 0;min-height:0}
.home-carousel-controls{justify-content:center}
#home-accommodation-carousel:focus-visible{outline:3px solid #a6b998;outline-offset:4px}
@media(max-width:600px){#home-accommodation-carousel .property{min-height:430px}#home-accommodation-carousel .property img{height:430px!important}#home-accommodation-carousel .property-body{padding:25px}#home-accommodation-carousel .property-body p{font-size:13px}}
@media(prefers-reduced-motion:reduce){#home-accommodation-carousel .property img{transition:none}#home-accommodation-carousel{scroll-behavior:auto}}

/* October 2026: authentic new photography and simplified primary navigation */
.hero{background:linear-gradient(90deg,rgba(7,36,38,.55),rgba(7,36,38,.06) 80%),linear-gradient(0deg,rgba(7,36,38,.42),transparent 52%),url('assets/photos/hero-tropical-bay.jpg') center center/cover!important}
.restaurant-photo-gallery{width:min(1180px,calc(100% - 42px));margin:16px auto 76px;display:grid;grid-template-columns:1.25fr 1fr;gap:20px}
.restaurant-photo-gallery img{width:100%;height:410px;object-fit:cover;border-radius:14px;display:block}
.restaurant-photo-gallery img:nth-child(2){object-position:center 30%}
@media(max-width:700px){.hero{background-position:58% center!important}.restaurant-photo-gallery{grid-template-columns:1fr;gap:14px;margin-bottom:44px}.restaurant-photo-gallery img{height:290px}.restaurant-photo-gallery img:nth-child(2){height:370px;object-fit:contain;background:#f3f0e8}}

/* Restaurant: focused hero and three authentic-feel dining photos */
.restaurant-clean-hero{background:linear-gradient(115deg,#193d30,#376c52)!important;min-height:420px!important;padding:150px 0 80px!important}.restaurant-clean-hero h1{font-size:clamp(44px,6vw,78px)!important}.restaurant-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-top:15px;padding-bottom:85px}.restaurant-gallery figure{margin:0;min-width:0}.restaurant-gallery img{display:block;width:100%;height:330px;object-fit:cover;border-radius:7px}.restaurant-gallery figcaption{font-size:14px;color:#486153;margin-top:12px}.restaurant-text-chapter{display:block!important;padding:60px max(7vw,24px)!important;background:#f7f5ee}.restaurant-text-chapter:nth-of-type(even){background:#e9ede3}.restaurant-text-chapter .chapter-copy{max-width:850px;margin:0 auto;padding:0!important}.restaurant-text-chapter .chapter-photo{display:none!important}@media(max-width:760px){.restaurant-gallery{grid-template-columns:1fr;gap:28px}.restaurant-gallery img{height:auto;aspect-ratio:4/3}.restaurant-clean-hero{min-height:350px!important;padding-top:120px!important}}

/* Restaurant booking modal */
.table-booking-trigger{cursor:pointer;border:0;font:inherit}.table-modal{display:none;position:fixed;inset:0;z-index:10000;align-items:center;justify-content:center;padding:18px}.table-modal.is-open{display:flex}.table-modal-shade{position:absolute;inset:0;background:rgba(8,32,23,.75)}.table-modal-panel{position:relative;background:#faf9f3;border-radius:16px;padding:30px;max-width:620px;width:100%;max-height:92vh;overflow-y:auto;box-shadow:0 18px 80px #0006;outline:none}.table-modal-panel h2{font-size:34px;margin:12px 0}.table-modal-panel p{line-height:1.5}.table-modal-close{position:absolute;top:12px;right:16px;background:transparent;border:0;font-size:32px;cursor:pointer;color:#173d30}.table-modal label{display:block;font-size:13px;font-weight:600;margin:12px 0;color:#234336}.table-modal input,.table-modal select,.table-modal textarea{display:block;width:100%;padding:12px;margin-top:7px;border:1px solid #bfcfc2;border-radius:7px;background:#fff;font:inherit;font-size:15px}.table-form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:14px}.table-modal .btn{margin-top:12px}.table-form-note{font-size:12px;color:#4e6357}.table-modal-open{overflow:hidden}@media(max-width:540px){.table-form-grid{grid-template-columns:1fr}.table-modal-panel{padding:22px}.table-modal-panel h2{font-size:29px}}

/* Booking dialogs: prevent any horizontal scrolling on narrow screens */
.table-modal,.table-modal *{box-sizing:border-box}.table-modal{width:100%;max-width:100vw;overflow-x:hidden}.table-modal-panel{min-width:0;max-width:min(620px,100%);overflow-x:hidden}.table-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;min-width:0}.table-form-grid>label{min-width:0}.table-modal input,.table-modal select,.table-modal textarea{min-width:0;max-width:100%;box-sizing:border-box}.table-modal .btn{max-width:100%;white-space:normal}.table-modal h2,.table-modal p{overflow-wrap:anywhere}@media(max-width:600px){.table-modal{padding:10px}.table-modal-panel{padding:20px 16px;max-height:calc(100dvh - 20px);border-radius:12px}.table-form-grid{grid-template-columns:minmax(0,1fr);gap:0}.table-modal input,.table-modal select,.table-modal textarea{font-size:16px}}

/* Consistent booking form field dimensions, including native date/time controls */
.table-modal .table-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;width:100%;min-width:0}
.table-modal .table-form-grid>label{width:100%;min-width:0}
.table-modal .table-form-grid input{display:block;inline-size:100%;width:100%;min-width:0;max-width:100%;height:48px;min-height:48px;box-sizing:border-box;padding:10px 12px;line-height:24px;border-radius:7px;-webkit-appearance:none;appearance:none}
.table-modal .table-form-grid input[type=date],.table-modal .table-form-grid input[type=time]{-webkit-appearance:auto;appearance:auto;min-inline-size:0}
.table-modal .table-form-grid input::-webkit-date-and-time-value{min-height:24px;text-align:left}
@media(max-width:640px){.table-modal .table-form-grid{grid-template-columns:minmax(0,1fr);gap:0}}

/* Slim, aligned booking inputs: date/time cannot extend beyond their column */
.table-modal .table-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:14px; width:100%; max-width:100%; }
.table-modal .table-form-grid > label { display:block; width:100%; min-width:0; max-width:100%; overflow:hidden; }
.table-modal .table-form-grid input, .table-modal .table-form-grid select { display:block; box-sizing:border-box; width:100%; min-width:0; max-width:100%; height:40px; min-height:0; padding:7px 10px; margin:6px 0 0; border:1px solid #bfcfc2; border-radius:7px; font-size:15px; line-height:22px; background:#fff; }
.table-modal .table-form-grid input[type="date"], .table-modal .table-form-grid input[type="time"] { -webkit-appearance:none; appearance:none; min-width:0; max-width:100%; overflow:hidden; }
.table-modal .table-form-grid input::-webkit-date-and-time-value { min-height:0; line-height:22px; text-align:left; }
.table-modal .table-form-grid input::-webkit-datetime-edit { min-width:0; padding:0; }
.table-modal .table-form-grid input::-webkit-calendar-picker-indicator { margin:0 0 0 2px; padding:0; flex-shrink:0; }
@media (max-width:640px) { .table-modal .table-form-grid { grid-template-columns:minmax(0,1fr); } .table-modal .table-form-grid input { font-size:16px; } }

/* Booking buttons and inline delivery status */
.tour-booking-trigger,.table-booking-trigger{cursor:pointer;border:0;font-family:inherit;line-height:1.4;-webkit-appearance:none;appearance:none}
.enquiry-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.enquiry-status{font-size:14px;min-height:1.4em;margin:12px 0 0;color:#285a3b}
.enquiry-status.is-error{color:#9b3027}.enquiry-status.is-success{color:#285a3b}
.table-modal button[type=submit]:disabled{opacity:.6;cursor:wait}
@media(max-width:640px){.tour-booking-trigger,.table-booking-trigger{display:inline-flex!important;align-items:center;justify-content:center;width:auto;max-width:100%;padding:15px 25px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;border-radius:100px;white-space:normal;text-align:center}}

/* October 2026 site refinements */
header .brand-name,header .brand-name strong{font-weight:600!important}
header .brand-name{gap:2px}
.header-social{display:flex;align-items:center;gap:9px;flex-shrink:0;margin-left:15px}
.social-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;color:#fff!important;font:700 21px Arial,sans-serif!important;line-height:1!important;transition:transform .18s ease,filter .18s ease}
.social-icon:hover{transform:translateY(-2px);filter:brightness(1.12)}
.social-icon svg{width:19px;height:19px}
.social-icon.facebook{background:#1877f2}
.social-icon.instagram{background:linear-gradient(35deg,#ffbd44,#f56040 32%,#c13584 65%,#833ab4)}
.social-icon.whatsapp{background:#25d366}
.social-icon.maps{background:#e8f4ee;color:#176d49!important}
.menu-line{height:1.5px!important;width:25px!important;border-radius:0!important}
.menu-toggle{gap:6px!important}
.menu-toggle[aria-expanded="true"] .menu-line:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-line:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
.getting-here-hero{height:420px;min-height:420px;background:linear-gradient(90deg,rgba(12,45,35,.55),rgba(12,45,35,.12)),var(--bg) center 45%/cover!important;align-items:flex-end;padding:130px 0 52px}
.getting-here-hero h1{font-size:clamp(42px,5.5vw,76px);line-height:1.08}
.getting-here-hero p{max-width:660px;color:#fff;font-size:16px}
.arrival-map-section{padding:85px 0 100px;background:#f3f4ec;text-align:center}
.arrival-map-section h2{font-size:clamp(32px,4vw,54px);margin:13px 0}
.arrival-map-section p{max-width:740px;margin:0 auto 28px;color:#4e6255}
.arrival-map-image{display:block;width:100%;height:auto;border-radius:12px;box-shadow:0 12px 38px #143b2b18}
@media(max-width:1180px){header .nav{gap:11px!important}.header-social{gap:5px;margin-left:6px}.social-icon{width:26px;height:26px}}
@media(max-width:900px){.header-social{margin-left:auto;margin-right:10px}.social-icon{width:27px;height:27px}.getting-here-hero{height:380px;min-height:380px}}
@media(max-width:550px){header .brand-name{font-size:17px!important}.header-social{gap:4px;margin-right:5px}.social-icon{width:23px;height:23px;font-size:17px!important}.social-icon svg{width:16px;height:16px}.getting-here-hero{height:360px;min-height:360px;padding:95px 0 38px}.getting-here-hero h1{font-size:40px}.getting-here-hero p{font-size:14px}.arrival-map-section{padding:55px 0 65px}}
@media(max-width:390px){.header-social{gap:3px}.social-icon{width:21px;height:21px}header .brand img{max-width:55px!important}header .brand-name{font-size:15px!important}}

/* Footer social icons, balanced two-line wordmark, matching full-height hero */
header .brand-name{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:0!important;font-weight:400!important;letter-spacing:.09em!important;line-height:1.13!important;font-size:17px!important;text-transform:uppercase!important}
header .brand-name span{font-weight:400!important;display:block!important}
.footer-social{display:flex;align-items:center;gap:15px;margin-top:32px;padding-top:22px;border-top:1px solid #ffffff22}
.footer-social .social-icon{background:transparent!important;color:#c9aa6c!important;width:35px;height:35px;border:1px solid #c9aa6c88;border-radius:50%;font-size:22px!important}
.footer-social .social-icon:hover{color:#f4d995!important;border-color:#f4d995;filter:none}
.footer-social .social-icon svg{width:20px;height:20px}
.getting-here-hero.landing-hero{height:auto!important;min-height:83vh!important;max-height:none!important;background:linear-gradient(0deg,rgba(10,35,27,.78),rgba(10,35,27,.06) 76%),var(--landing-photo) center center/cover no-repeat!important;align-items:flex-end!important;padding:180px 0 95px!important}
.getting-here-hero.landing-hero h1{font-size:clamp(54px,8vw,112px)!important;line-height:1.05!important}
@media(max-width:850px){.getting-here-hero.landing-hero{min-height:76vh!important;padding:145px 0 75px!important;background-position:54% center!important}}
@media(max-width:550px){header .brand-name{font-size:13px!important;letter-spacing:.05em!important}.getting-here-hero.landing-hero{min-height:74vh!important;padding:125px 0 55px!important}.getting-here-hero.landing-hero h1{font-size:clamp(46px,12vw,70px)!important}.footer-social{justify-content:center}}

/* Refined, larger stacked plantation wordmark */
header .brand-name{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:clamp(22px,2.2vw,30px)!important;letter-spacing:.065em!important;font-weight:400!important;line-height:.94!important;gap:3px!important}
header .brand-name span{font-weight:400!important}
@media(max-width:550px){header .brand-name{font-size:20px!important;letter-spacing:.045em!important}}
@media(max-width:390px){header .brand-name{font-size:18px!important}}
/* Concise Getting Here page */
.arrival-simple{padding:75px 0 65px;max-width:1080px}.arrival-simple>h2{max-width:820px}.arrival-simple>p{max-width:790px;color:#526457;font-size:17px}.arrival-simple-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:46px}.arrival-simple-grid>div{border-top:1px solid #b8b99d;padding-top:26px}.arrival-simple-grid h3{font-size:30px}.arrival-simple-grid p{color:#526457}.arrival-disclaimer{font-size:13px!important}.arrival-simple-grid .btn{margin-top:12px}.arrival-map-section{padding:55px 0 80px}.arrival-map-section .container{max-width:860px}.arrival-map-image{width:100%;max-width:760px;margin:24px auto 0}
@media(max-width:720px){.arrival-simple{padding:55px 0 40px}.arrival-simple-grid{grid-template-columns:1fr;gap:28px;margin-top:32px}.arrival-map-section .container{max-width:100%}.arrival-map-image{max-width:100%}}

/* Refined header typography inspired by the reference Stay page. */
header .brand-name {
  font-family: 'DM Sans', Arial, sans-serif !important;
  font-size: clamp(17px, 1.65vw, 23px) !important;
  font-weight: 400 !important;
  letter-spacing: .105em !important;
  line-height: 1.13 !important;
  text-transform: uppercase !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 1px !important;
}
header .brand-name span { display:block !important; font-weight:400 !important; }
header .nav>a:not(.btn) { font-weight: 400 !important; letter-spacing: .035em !important; }
@media (max-width:550px) {header .brand-name {font-size: 16px !important; letter-spacing:.055em !important;}}
@media (max-width:390px) {header .brand-name {font-size: 14px !important;}}

/* Consistent full-size heroes */
.getting-here-hero.landing-hero{height:83vh!important;min-height:640px!important;max-height:none!important;background-image:linear-gradient(0deg,rgba(10,35,27,.8),rgba(10,35,27,.08) 75%),var(--landing-photo)!important;background-size:cover!important;background-position:center center!important;padding:180px 0 95px!important;}
@media(max-width:850px){.getting-here-hero.landing-hero{height:76vh!important;min-height:550px!important}}
@media(max-width:550px){.getting-here-hero.landing-hero{height:74vh!important;min-height:490px!important}}
.social-icon.messenger{color:#c8a96b!important}

/* Unified CTA typography and refined home/contact details */
a.btn,button.btn,input.btn,.santo-planning .btn,.landing-hero .btn{font-family:'DM Sans',Arial,sans-serif!important;font-size:12px!important;font-weight:700!important;line-height:1.35!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.statement-logo{display:block;width:150px;max-width:40vw;height:auto;margin:30px auto 0;object-fit:contain}
.santo-planning .btn.gold-cta{background:var(--gold)!important;color:var(--green)!important;border-color:var(--gold)!important}
.santo-planning .btn.gold-cta:hover{background:#f1d394!important}
.contact-phone-number{display:inline-block;font-size:clamp(19px,2vw,24px);font-weight:700;color:var(--green);margin-top:4px}
.getting-here-hero.hero-two-line h1{max-width:1120px!important;font-size:clamp(45px,6.1vw,84px)!important;line-height:1.08!important}
.getting-here-hero.hero-two-line{padding-top:120px!important;padding-bottom:65px!important}
@media(max-width:650px){.getting-here-hero.hero-two-line h1{font-size:clamp(37px,9vw,58px)!important}.getting-here-hero.hero-two-line{padding-top:95px!important;padding-bottom:38px!important}}

/* Refined plantation-inspired readable wordmark */
@import url('https://fonts.googleapis.com/css2?family=Marcellus&display=swap');
header .brand-name,header .brand-name span {
  font-family:'Marcellus',Georgia,serif!important;
  font-weight:400!important;
  text-transform:uppercase!important;
}
header .brand-name {
  font-size:clamp(15px,1.42vw,20px)!important;
  line-height:1.1!important;
  letter-spacing:.085em!important;
  gap:2px!important;
}
@media(max-width:550px){header .brand-name{font-size:15px!important;letter-spacing:.055em!important}}
@media(max-width:390px){header .brand-name{font-size:13px!important}}
/* Homepage logo shares the green of the heading and is intentionally discreet */
.statement-logo{width:112px!important;max-width:32vw!important;margin:22px auto 0!important}
/* Same title typography as other landing heroes; allow natural wrapping on phones */
.getting-here-hero.landing-hero h1,
.getting-here-hero.hero-two-line h1{
  font-family:'Playfair Display',Georgia,serif!important;
  font-size:clamp(54px,8vw,112px)!important;
  line-height:1.03!important;
  letter-spacing:-.045em!important;
  max-width:900px!important;
}
@media(max-width:650px){
 .getting-here-hero.landing-hero h1, .getting-here-hero.hero-two-line h1{
   font-size:clamp(52px,11.5vw,72px)!important;
   line-height:1.05!important;
   overflow-wrap:normal;
 }
 .getting-here-hero.landing-hero{height:auto!important;min-height:85vh!important;padding-bottom:65px!important}
}
/* Consistent arrow on mobile and desktop, slightly stronger at touch sizes */
.btn .button-arrow{display:inline-block;flex:0 0 auto;font-size:1.35em;font-weight:700;line-height:1;vertical-align:middle;margin-left:8px}
@media(max-width:650px){.btn .button-arrow{font-size:1.6em;font-weight:800;margin-left:9px}}

/* Align contact form controls, including select */
#enquiry input,#enquiry select{display:block;width:100%!important;height:48px!important;min-height:48px!important;box-sizing:border-box!important;padding:10px 13px!important;border-radius:6px!important;font:inherit!important;font-size:16px!important;line-height:24px!important;background:#fff;color:#193d30}
#enquiry select{appearance:auto!important;-webkit-appearance:menulist!important}
#enquiry textarea{box-sizing:border-box!important;font:inherit!important;font-size:16px!important;border-radius:6px!important}

/* Identical fine-line diagonal CTA arrows on desktop and mobile. */
.btn .button-arrow{display:inline-flex!important;align-items:center!important;justify-content:center!important;margin-left:9px!important;font-size:inherit!important;font-weight:400!important;line-height:1!important;vertical-align:middle!important}
.btn .button-arrow .thin-arrow-icon{display:block!important;width:18px!important;height:18px!important;stroke-width:1.5!important;flex-shrink:0!important}
@media(max-width:650px){.btn .button-arrow{font-size:inherit!important;font-weight:400!important;margin-left:9px!important}.btn .button-arrow .thin-arrow-icon{width:18px!important;height:18px!important;stroke-width:1.5!important}}

/* Slightly smaller homepage statement logo */
.statement-logo{width:125px!important;max-width:35vw!important}
/* Keep the Getting Here heading balanced across two lines on desktop */
@media(min-width:851px){.getting-here-hero h1{max-width:1100px!important}}

/* Explicit two-line Getting Here headline at the same size as the other heroes. */
@media (min-width:851px){
 .getting-here-hero.landing-hero h1{max-width:none!important;width:max-content!important;max-width:100%!important;}
 .getting-here-hero h1 .getting-line-one,.getting-here-hero h1 .getting-line-two{white-space:nowrap!important;}
}
@media (max-width:850px){
 .getting-here-hero h1 .getting-desktop-break{display:none!important;}
 .getting-here-hero h1 .getting-line-one,.getting-here-hero h1 .getting-line-two{white-space:normal!important;}
}

/* Two intentional desktop lines; preserve the existing hero type scale. */
@media(min-width:851px){.getting-here-hero h1 .getting-line-one,.getting-here-hero h1 .getting-line-two{display:inline-block;white-space:nowrap!important}.getting-here-hero h1 .getting-desktop-break{display:block!important}.getting-here-hero.landing-hero h1{max-width:none!important}}

/* Align Getting Here hero heading, supporting text and CTA baseline with other landing-page heroes. */
@media (min-width:851px) {
 .getting-here-hero.landing-hero {height:auto!important;min-height:83vh!important;padding:180px 0 95px!important;align-items:flex-end!important;}
}
@media (min-width:651px) and (max-width:850px) {
 .getting-here-hero.landing-hero {height:auto!important;min-height:83vh!important;padding:170px 0 80px!important;align-items:flex-end!important;}
}
@media (max-width:650px) {
 .getting-here-hero.landing-hero {height:auto!important;min-height:83vh!important;padding:170px 0 80px!important;align-items:flex-end!important;}
}

/* Dedicated plantation story page */
.plantation-story-hero{background-position:center 52%!important}
.plantation-growing,.plantation-cave-gallery{padding-top:100px;padding-bottom:105px}
.plantation-growing>h2,.plantation-cave-gallery>h2{margin:14px 0 20px;font-family:Georgia,serif;font-size:clamp(35px,4vw,58px);font-weight:400;color:#193d30}
.plantation-growing>p,.plantation-cave-gallery>p{max-width:740px;line-height:1.8;color:#536459}
.plantation-crop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:42px}
.plantation-crop-grid article img{width:100%;aspect-ratio:1.25;object-fit:cover;border-radius:3px}
.plantation-crop-grid h3{font-family:Georgia,serif;font-size:27px;font-weight:400;color:#193d30;margin:20px 0 8px}
.plantation-crop-grid p{line-height:1.75;color:#536459}
.plantation-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:36px}
.plantation-photo-grid figure{margin:0}.plantation-photo-grid img{display:block;width:100%;height:390px;object-fit:cover;border-radius:3px}
.plantation-photo-grid figcaption{font-size:13px;letter-spacing:.05em;color:#536459;margin-top:12px}
@media(max-width:750px){.plantation-growing,.plantation-cave-gallery{padding-top:65px;padding-bottom:70px}.plantation-crop-grid,.plantation-photo-grid{grid-template-columns:1fr}.plantation-photo-grid img{height:auto;max-height:480px}}

.plantation-story-link{display:inline-block;margin-top:20px;color:#193d30;font-weight:600;text-decoration:underline;text-underline-offset:5px}

/* Homepage hero: clear link to plantation story */
.hero .hero-plantation-cta{background:#e6ca8a!important;color:#193d30!important;border:1px solid #e6ca8a!important}
.hero .hero-plantation-cta:hover{background:#f4dfb0!important;border-color:#f4dfb0!important}

/* Plantation story: four editorial chapters with touch-friendly swipe galleries */
.plantation-intro{max-width:900px}
.plantation-chapter{padding:90px 0;border-top:1px solid rgba(25,61,48,.13)}
.plantation-chapter:nth-of-type(even){background:#f7f7f0}
.plantation-chapter-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(30px,5vw,90px)}
.plantation-chapter:nth-of-type(odd) .plantation-chapter-copy{order:2}
.plantation-chapter:nth-of-type(odd) .plantation-gallery-wrap{order:1}
.plantation-chapter-copy h2{font-size:clamp(32px,3.6vw,54px);line-height:1.14;margin:16px 0 25px}
.plantation-chapter-copy p{font-size:clamp(15px,1.2vw,17px);line-height:1.85;margin:0 0 19px;max-width:65ch}
.plantation-gallery-wrap{min-width:0}
.plantation-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;gap:12px;scrollbar-width:thin;scrollbar-color:#b9a375 transparent;-webkit-overflow-scrolling:touch;border-radius:8px}
.plantation-gallery-slide{flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always;margin:0;aspect-ratio:4/3;overflow:hidden;border-radius:8px}
.plantation-gallery-slide img{display:block;width:100%;height:100%;object-fit:cover}
.gallery-hint{font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:#68756b;text-align:center;margin:13px 0 0}
.plantation-story-link .button-arrow{display:inline-flex!important;vertical-align:middle;align-items:center;margin-left:7px;font-size:inherit!important;font-weight:400!important}
.plantation-story-link .thin-arrow-icon{width:18px!important;height:18px!important;stroke-width:1.5!important}
@media(max-width:850px){.plantation-chapter{padding:56px 0}.plantation-chapter-inner{grid-template-columns:1fr;gap:25px}.plantation-chapter .plantation-chapter-copy,.plantation-chapter .plantation-gallery-wrap{order:initial!important}.plantation-gallery-slide{aspect-ratio:5/4}}

/* Mobile headline: preserve the space between “part” and “of”. */
@media(max-width:850px){.getting-here-hero .getting-line-one::after{content:" ";white-space:pre;}}
/* Use the same CTA dimensions and typography as all other landing heroes. */
.getting-here-hero .btn{font-family:'DM Sans',Arial,sans-serif!important;font-size:12px!important;font-weight:700!important;line-height:1.35!important;letter-spacing:.08em!important;padding:15px 25px!important;min-height:48px!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;}
@media(max-width:650px){.getting-here-hero .btn{font-size:12px!important;padding:15px 25px!important;min-height:48px!important;}}

/* Boutique concept preview — original website preserved separately */
:root{--boutique-cream:#f6f3e9;--boutique-ink:#193d30;--boutique-gold:#c8a96b}
.boutique-preview{background:var(--boutique-cream)}
.boutique-preview h1,.boutique-preview h2,.boutique-preview h3{letter-spacing:-.022em}
.boutique-preview p{line-height:1.8}
.boutique-preview .hero{min-height:88svh;background-position:center center}
.boutique-preview .hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,34,27,.58),rgba(12,34,27,.10) 85%);pointer-events:none}
.boutique-preview .hero-content{position:relative;z-index:1}
.boutique-preview .hero-content p{max-width:590px}
.boutique-preview .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}
.boutique-preview .hero-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:50px}
.boutique-preview .hero-actions .btn-outline{background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.8)!important}
.boutique-preview .hero-actions .btn-outline:hover{background:rgba(255,255,255,.12)!important}
.boutique-preview .boutique-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:32px;margin-bottom:38px;border-top:1px solid #d9d9ce;border-bottom:1px solid #d9d9ce}
.boutique-facts>div{padding:25px 24px;border-right:1px solid #d9d9ce;display:flex;flex-direction:column;gap:7px}
.boutique-facts>div:last-child{border-right:0}
.boutique-facts strong{font-family:Georgia,serif;font-weight:500;font-size:21px;color:#193d30}
.boutique-facts span{font-size:13px;color:#657368;line-height:1.5}
.boutique-preview .feature-image{background-size:cover;background-position:center}
.boutique-preview .property,.boutique-preview .stay-card{overflow:hidden;border-radius:5px}
.boutique-preview .property img,.boutique-preview .stay-card img{transition:transform .5s ease}
@media(hover:hover){.boutique-preview .property:hover img,.boutique-preview .stay-card:hover img{transform:scale(1.035)}}
.boutique-last-cta{background:#193d30;color:#f6f3e9;padding:90px 20px;text-align:center}
.boutique-last-cta .container{max-width:730px}
.boutique-last-cta h2{color:#fff;font-size:clamp(38px,5vw,68px);line-height:1.15;margin:18px 0}
.boutique-last-cta p{color:#e0e6df;margin:0 auto 24px;max-width:580px}
.boutique-last-cta .btn{display:inline-flex;gap:14px;align-items:center}
.boutique-stay-features{font-size:13px!important;color:#5d6e60;letter-spacing:.02em;margin:8px 0 13px!important}
.boutique-card-link{display:inline-flex;align-items:center;gap:12px;color:#193d30;font-size:13px;font-weight:700;text-decoration:none;border-bottom:1px solid #c8a96b;padding-bottom:6px;margin-top:12px}
.boutique-card-link span{font-size:19px;font-weight:400}
.boutique-arrival-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:34px auto 22px;max-width:1100px}
.boutique-arrival-steps>div{padding:25px;background:#f6f3e9;border:1px solid #e1e3d8;display:flex;flex-direction:column;gap:12px}
.boutique-arrival-steps b{font-size:13px;color:#a48854}
.boutique-arrival-steps strong{font-family:Georgia,serif;font-size:22px;color:#193d30;font-weight:500}
.boutique-arrival-steps span{font-size:14px;line-height:1.65;color:#53665a}
.boutique-mobile-enquire{display:none}
@media(max-width:750px){
 .boutique-preview .hero{min-height:82svh}
 .boutique-preview .hero-actions{flex-direction:column;align-items:flex-start}
 .boutique-preview .hero-actions .btn{min-height:49px}
 .boutique-preview .boutique-facts{grid-template-columns:1fr;margin-top:15px}
 .boutique-facts>div{padding:18px 12px;border-right:0;border-bottom:1px solid #d9d9ce}
 .boutique-facts>div:last-child{border-bottom:0}
 .boutique-arrival-steps{grid-template-columns:1fr}
 .boutique-last-cta{padding:68px 18px}
 .boutique-preview .footer{padding-bottom:70px}
 .boutique-mobile-enquire{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:1000;min-height:54px;align-items:center;justify-content:center;gap:16px;background:#c8a96b;color:#193d30;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;text-decoration:none;box-shadow:0 -5px 18px rgba(0,0,0,.12)}
 .boutique-mobile-enquire span{font-size:20px;font-weight:400}
}

/* Boutique refinement: identical fine-line diagonal arrows at every breakpoint. */
.boutique-preview .btn .button-arrow, .boutique-preview .boutique-card-link .button-arrow, .boutique-preview .plantation-story-link .button-arrow {display:inline-flex!important;align-items:center!important;justify-content:center!important;margin-left:9px!important;font-size:inherit!important;font-weight:400!important;line-height:1!important;flex-shrink:0!important;}
.boutique-preview .thin-arrow-icon {display:block!important;width:18px!important;height:18px!important;stroke-width:1.5!important;flex-shrink:0!important;}
.boutique-preview .boutique-mobile-enquire {display:none!important;}
@media(max-width:750px){.boutique-preview .footer{padding-bottom:25px!important;} .boutique-preview .btn .button-arrow,.boutique-preview .boutique-card-link .button-arrow,.boutique-preview .plantation-story-link .button-arrow{font-weight:400!important;} .boutique-preview .thin-arrow-icon{width:18px!important;height:18px!important;stroke-width:1.5!important;}}

/* Three bespoke narrow-line icons under the homepage hero */
.boutique-facts>div{display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;gap:6px}
.boutique-facts .boutique-fact-icon{display:block;width:82px;height:82px;object-fit:contain;margin:0 auto 10px;flex:none}
.statement-logo{width:112px!important;max-width:32vw!important;height:auto!important}
@media(max-width:700px){.boutique-facts .boutique-fact-icon{width:74px;height:74px;margin-bottom:8px}}

/* Consistent hero photography and CTA placement across destination pages */
.landing-hero:not(.getting-here-hero){height:83vh!important;min-height:640px!important;max-height:none!important;display:flex!important;align-items:flex-end!important;padding:180px 0 95px!important;background-position:center center!important;background-size:cover!important;}
.getting-here-hero.landing-hero{height:83vh!important;min-height:640px!important;max-height:none!important;display:flex!important;align-items:flex-end!important;padding:180px 0 95px!important;}
.landing-hero .container{width:min(1180px,calc(100% - 42px));margin-left:auto;margin-right:auto;}
.landing-hero .btn,.boutique-preview .hero-actions .btn{min-height:50px!important;box-sizing:border-box!important;padding:15px 25px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;}
/* The homepage's final invitation should use the site's signature gold CTA. */
.boutique-last-cta .btn{background:#c8a96b!important;border-color:#c8a96b!important;color:#193d30!important;}
.boutique-last-cta .btn:hover{background:#e0bd7b!important;border-color:#e0bd7b!important;color:#193d30!important;}
/* Uniform narrow diagonal arrows across all buttons */
.btn .button-arrow{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:none!important;}
.btn .thin-arrow-icon{width:18px!important;height:18px!important;stroke-width:1.5!important;}
@media(max-width:850px){
 .landing-hero:not(.getting-here-hero),.getting-here-hero.landing-hero{height:76vh!important;min-height:550px!important;padding:145px 0 75px!important;}
}
@media(max-width:550px){
 .landing-hero:not(.getting-here-hero),.getting-here-hero.landing-hero{height:74vh!important;min-height:490px!important;padding:125px 0 55px!important;}
}

/* Complete circle icons: SVG has a full closed vector ring, no decorative overlay */
.boutique-fact-icon{object-fit:contain!important;border:0!important;box-shadow:none!important;background:transparent!important;}
.boutique-fact-icon::before,.boutique-fact-icon::after{display:none!important;}

/* Palm-leaf plantation green: header and footer only (October 2026) */
:root { --palm-header-footer: #204832; }
header { background-color: var(--palm-header-footer) !important; border-bottom-color: rgba(255,255,255,.16) !important; }
.footer, footer.footer, footer { background-color: var(--palm-header-footer) !important; }
@media (max-width:900px) {
  header .nav, header .nav.open { background-color: var(--palm-header-footer) !important; }
}

/* Boutique coastal-blue palette: header/footer and coordinated accents.
   Blue is a close visual interpretation, not a sampled source-site hex. */
:root {
 --coastal-blue:#173F53;
 --coastal-blue-deep:#103344;
 --lagoon:#427D82;
 --palm-accent:#345A48;
 --warm-ivory:#F8F6F0;
 --soft-sand:#E9E2D5;
 --muted-copy:#687776;
 --sunlit-gold:#D6B46B;
 --palm-header-footer:var(--coastal-blue);
 --cream:var(--warm-ivory);
 --sand:var(--soft-sand);
 --muted:var(--muted-copy);
 --gold:var(--sunlit-gold);
}
header, .footer, footer.footer, footer {
 background-color:var(--coastal-blue)!important;
}
header {border-bottom-color:rgba(255,255,255,.2)!important;}
@media(max-width:900px){
 header .nav, header .nav.open {background-color:var(--coastal-blue)!important;}
}
.footer a:hover, footer a:hover, header .nav a:hover {color:#E9CE92!important;}
/* Restrained lagoon/plantation accents, keeping legible body text. */
.eyebrow {color:var(--palm-accent);}
.btn:hover {background:var(--coastal-blue-deep);}

/* Pastel palm plantation treatment — header/footer only */
:root { --pastel-palm:#A9C4AC; --palm-ink:#173D30; --palm-deep:#28543D; }
header, .footer, footer.footer, footer {background-color:var(--pastel-palm)!important;color:var(--palm-ink)!important;}
header {border-bottom-color:rgba(23,61,48,.22)!important;box-shadow:0 5px 20px rgba(23,61,48,.12)!important;}
header .brand-name,header .brand-name span,header .brand-fallback,header .nav>a:not(.btn),header .menu-toggle {color:var(--palm-ink)!important;}
header .nav>a:not(.btn):hover,header .nav>a:not(.btn):focus-visible,header .nav>a[aria-current="page"]:not(.btn){color:#245A3E!important;border-bottom-color:#245A3E!important;}
.footer p,.footer a,footer p,footer a,.footer-bottom {color:var(--palm-ink)!important;}
.footer h2,.footer h3,.footer h4,footer h2,footer h3,footer h4{color:var(--palm-ink)!important;}
.footer-bottom,.footer-social{border-top-color:rgba(23,61,48,.22)!important;}
.footer-social .social-icon{color:var(--palm-ink)!important;border-color:rgba(23,61,48,.5)!important;}
.footer-social .social-icon:hover{color:#245A3E!important;border-color:#245A3E!important;}
.header-social .social-icon{color:var(--palm-ink)!important;}
@media(max-width:900px){header .nav,header .nav.open,.nav.open{background-color:var(--pastel-palm)!important;}}

/* October photographic refresh: soft pastel sage header and grounded hero overlay */
:root{--pastel-palm:#D7E6D5;--palm-ink:#244534;--palm-deep:#345C43}
header,.footer,footer.footer,footer{background-color:#D7E6D5!important;color:#244534!important}
@media(max-width:900px){header .nav,header .nav.open,.nav.open{background-color:#D7E6D5!important}}
.boutique-preview .hero::before{background:linear-gradient(to bottom,rgba(12,34,27,0) 0%,rgba(12,34,27,.04) 30%,rgba(12,34,27,.36) 65%,rgba(12,34,27,.72) 100%)!important}
.boutique-preview .hero{display:flex!important;align-items:flex-end!important;padding-bottom:clamp(45px,8vh,105px)!important;box-sizing:border-box!important}
.boutique-preview .hero-content{padding-top:0!important;margin-top:auto!important}
.new-photo-section{padding-top:60px;padding-bottom:70px}.new-photo-section h2{margin-bottom:24px}.new-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.new-photo-grid figure{margin:0;overflow:hidden;border-radius:4px}.new-photo-grid img{width:100%;height:350px;object-fit:cover;display:block}
@media(max-width:650px){.boutique-preview .hero{padding-bottom:42px!important}.new-photo-grid{grid-template-columns:1fr}.new-photo-grid img{height:270px}}

/* October 2026: softer muted pastel green, editorial photo carousels and aerial hero */
:root{--pastel-palm:#93B6A0;--palm-ink:#173D30;--palm-deep:#28543D}
header,.footer,footer.footer,footer{background-color:#93B6A0!important}
@media(max-width:900px){header .nav,header .nav.open,.nav.open{background-color:#93B6A0!important}}
.boutique-preview .hero,.hero{background-image:linear-gradient(0deg,rgba(8,30,25,.62) 0%,rgba(8,30,25,.22) 34%,rgba(8,30,25,0) 70%),url('assets/photos/home-hero-aerial-rotated.webp')!important;background-position:center center!important;background-size:cover!important}
.boutique-preview .hero::before{background:linear-gradient(to bottom,transparent 0%,rgba(8,30,25,.03) 40%,rgba(8,30,25,.62) 100%)!important}
.photo-carousel{position:relative;max-width:100%;margin:1.5rem auto 0}
.photo-carousel-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:0 0 8px}
.photo-carousel-track::-webkit-scrollbar{display:none}
.photo-carousel-track figure{flex:0 0 min(72%,640px);scroll-snap-align:center;margin:0;overflow:hidden;border-radius:4px;aspect-ratio:4/3}
.photo-carousel-track img{width:100%;height:100%;object-fit:cover;display:block}
.photo-carousel-controls{display:flex;justify-content:center;gap:12px;margin:16px 0 28px}
.photo-carousel-controls button{background:#f8f6f0;color:#173D30;border:1px solid #93B6A0;border-radius:50%;width:44px;height:44px;font-size:24px;cursor:pointer}
.photo-carousel-controls button:hover{background:#93B6A0}
@media(max-width:700px){.photo-carousel-track figure{flex-basis:88%}}


/* Final refinements: richer dusty-sage pastel, desktop original hero, mobile aerial */
:root{--pastel-palm:#779B84;--palm-ink:#103A2B;--palm-deep:#204D37}
header,.footer,footer.footer,footer{background-color:#779B84!important;color:#103A2B!important}
@media(max-width:900px){header .nav,header .nav.open,.nav.open{background-color:#779B84!important}}
.boutique-preview .hero,.hero{
 background-image:linear-gradient(to bottom,rgba(8,30,25,.08) 0%,rgba(8,30,25,.08) 34%,rgba(8,30,25,.36) 68%,rgba(8,30,25,.76) 100%),url('assets/photos/hero-tropical-bay.jpg')!important;
 background-position:center center!important;background-size:cover!important;
}
.boutique-preview .hero::before{inset:0!important;background:linear-gradient(to bottom,transparent 0%,rgba(8,30,25,.06) 40%,rgba(8,30,25,.25) 68%,rgba(8,30,25,.50) 100%)!important}
@media(max-width:700px){
 .boutique-preview .hero,.hero{background-image:linear-gradient(to bottom,rgba(8,30,25,.06) 0%,rgba(8,30,25,.13) 40%,rgba(8,30,25,.73) 100%),url('assets/photos/home-hero-aerial-mobile.webp')!important;background-position:50% 48%!important}
}
@media(min-width:850px){
 .plantation-chapter-inner{align-items:center!important}
 .plantation-chapter-copy{align-self:center!important}
 .plantation-chapter-copy p{max-width:44ch!important;line-height:1.65!important}
}

/* October update: hero image and overlay share the same full-height background box. */
.boutique-preview .hero {position:relative!important;isolation:isolate!important;min-height:max(760px,95svh)!important;background-image:linear-gradient(to bottom,rgba(8,30,25,.07) 0%,rgba(8,30,25,.11) 30%,rgba(8,30,25,.37) 63%,rgba(8,30,25,.84) 100%),url('assets/photos/hero-tropical-bay.jpg')!important;background-size:cover!important;background-position:center center!important;}
.boutique-preview .hero::before{background:none!important;inset:0!important;}
@media(max-width:700px){.boutique-preview .hero{min-height:82svh!important;background-image:linear-gradient(to bottom,rgba(8,30,25,.06) 0%,rgba(8,30,25,.13) 35%,rgba(8,30,25,.82) 100%),url('assets/photos/home-hero-aerial-mobile.webp')!important;background-position:50% 48%!important;}}
/* Plantation: static images, balanced story copy. */
.plantation-static-photo{margin:0;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:8px}
.plantation-static-photo img{display:block;width:100%;height:100%;object-fit:cover}
@media(min-width:851px){.plantation-chapter-inner{align-items:stretch!important}.plantation-chapter-copy{align-self:stretch!important;display:flex;flex-direction:column;justify-content:center}.plantation-chapter-copy p{max-width:unset!important;font-size:clamp(14px,1.05vw,16px)!important;line-height:1.56!important;margin-bottom:0!important}.plantation-chapter-copy h2{font-size:clamp(28px,3vw,43px)!important;margin:10px 0 16px!important}.plantation-gallery-wrap{align-self:center!important}}
.redistributed-gallery{padding-bottom:38px}
.redistributed-gallery .photo-carousel-track{scroll-padding:0 10px}
.redistributed-gallery .photo-carousel-track figure{flex:0 0 min(70%,700px);aspect-ratio:4/3}
.redistributed-gallery .photo-carousel-track img{object-fit:cover}
.gallery-introduction{font-size:14px;color:#52685a}
@media(max-width:700px){.redistributed-gallery .photo-carousel-track figure{flex-basis:90%}}

/* Dark palm-leaf pastel: muted forest-sage, consistent on desktop and mobile. */
:root{--pastel-palm:#557963;--palm-ink:#F7F6EE;--palm-deep:#244C37}
header,.footer,footer.footer,footer{background-color:#557963!important;color:#F7F6EE!important}
header .brand-name,header .brand-name span,header .brand-fallback,header .nav>a:not(.btn),header .menu-toggle,header .header-social .social-icon,.footer p,.footer a,footer p,footer a,.footer-bottom,.footer h2,.footer h3,.footer h4,footer h2,footer h3,footer h4,.footer-social .social-icon{color:#F7F6EE!important}
header .nav>a:not(.btn):hover,header .nav>a:not(.btn):focus-visible,header .nav>a[aria-current="page"]:not(.btn),.footer a:hover,footer a:hover{color:#F0D9A0!important}
header{border-bottom-color:rgba(255,255,255,.18)!important}
.footer-bottom,.footer-social{border-top-color:rgba(255,255,255,.23)!important}
.footer-social .social-icon{border-color:rgba(255,255,255,.65)!important}
@media(max-width:900px){header .nav,header .nav.open,.nav.open{background-color:#557963!important}}

/* Darker palm-leaf pastel: October final refinement */
:root{--pastel-palm:#385D47;--palm-deep:#183D2B;--palm-ink:#F7F6EE}
header,.footer,footer.footer,footer{background-color:#385D47!important;color:#F7F6EE!important}
@media(max-width:900px){header .nav,header .nav.open,.nav.open{background-color:#385D47!important}}

/* Home waterfront slider, immediately before the closing statement */
.home-water-gallery{padding-top:70px;padding-bottom:54px;text-align:center}.home-water-gallery>p{max-width:620px;margin:12px auto 30px}.home-water-gallery .photo-carousel-track figure{flex-basis:min(78%,850px);aspect-ratio:16/9}@media(max-width:700px){.home-water-gallery .photo-carousel-track figure{flex-basis:92%;aspect-ratio:4/3}}

/* Cohesive plantation palette, matched to deep muted palm header and footer. */
:root{--green:#244D37;--green2:#385D47;--cream:#F8F7F0;--sand:#E6E9DC;--ink:#203B2D;--muted:#53685A;--gold:#D6B775;--boutique-cream:#F8F7F0;--boutique-ink:#203B2D;--boutique-gold:#D6B775;--coastal-blue-deep:#244D37;--ldg-psb-color-primary:#244D37;--ldg-psb-color-primary-lighter:#C8D9C9;--ldg-psb-color-primary-darker:#183D2B;--ldg-psb-color-primary-contrast:#FFFFFF;--ldg-semantic-color-primary:#244D37;--ldg-semantic-color-primary-lighter:#C8D9C9;--ldg-semantic-color-primary-darker:#183D2B;--ldg-semantic-color-primary-contrast:#FFFFFF}
body{background:#F8F7F0;color:#203B2D}
.eyebrow,.chapter .eyebrow{color:#55715A}
.stay,.chapter:nth-child(even),.conversion,.feature.reverse .feature-copy,.stay-booking-inline,.stay-selection-section,.plantation-detail{background:#E9EEE5;color:#203B2D}
.feature-copy,.quote-band,.arrival-cta{background:#244D37;color:#FFFFFF}
.feature-copy p,.arrival-cta p{color:#E5EEE5}
.chapter p,.story-intro p,.conversion p,.feature.reverse .feature-copy p,.section-top p{color:#4B6253}
.btn,button.btn,a.btn,.stay-carousel-arrow{background:#244D37;color:#FFFFFF;border:1px solid #244D37;cursor:pointer}
.btn:hover,button.btn:hover,a.btn:hover,.stay-carousel-arrow:hover{background:#386A4D;color:#FFFFFF;border-color:#386A4D}
.btn:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #B58B3D;outline-offset:3px}
.btn.light{background:#FFFFFF;color:#244D37;border-color:#FFFFFF}
.btn.outline{background:transparent;color:#244D37;border-color:#244D37}
.btn.outline:hover{background:#244D37;color:#FFFFFF}
.landing-hero .btn,.landing-hero button.btn{background:#E7D3A4;color:#183D2B;border-color:#E7D3A4}
.landing-hero .btn:hover,.landing-hero button.btn:hover{background:#F4E4BF;color:#183D2B;border-color:#F4E4BF}
.feature-copy .btn,.quote-band .btn,.arrival-cta .btn{background:#E7D3A4;color:#183D2B;border-color:#E7D3A4}
.feature-copy .btn:hover,.quote-band .btn:hover,.arrival-cta .btn:hover{background:#F4E4BF;color:#183D2B}
header,.footer,footer.footer,footer{background:#385D47!important;color:#F8F7F0!important}
header .nav>a:not(.btn),header .brand-name,header .brand-name span,.footer a,.footer p,.footer-bottom,.footer b,.footer .eyebrow,.footer h3{color:#F8F7F0!important}
header .nav>a:hover,.footer a:hover{color:#F1D79E!important}
.footer .footer-links span{color:#E6EEDF!important}
.footer-social .social-icon{color:#F8F7F0!important;border-color:rgba(255,255,255,.6)!important}
.photo-carousel-controls button{background:#F8F7F0;color:#244D37;border-color:#8FAE95}
.photo-carousel-controls button:hover{background:#DDE8DA;color:#183D2B}
input,select,textarea{color:#203B2D;background:#FFFFFF}
@media(max-width:900px){header .nav,header .nav.open,.nav.open{background:#385D47!important}}

/* Gold accents under navigation labels and booking-search inputs */
header .nav>a:not(.btn):hover,header .nav>a:not(.btn):focus-visible,header .nav>a[aria-current="page"]:not(.btn){border-bottom-color:#D6B46B!important;}
#lodgify-search-bar input:focus,#lodgify-search-bar select:focus,.stay-search-embedded input:focus,.stay-search-embedded select:focus{border-bottom-color:#D6B46B!important;outline-color:#D6B46B!important;}

/* Tripadvisor review widget — centered and responsive in footer */
.tripadvisor-footer-widget{display:flex;justify-content:center;align-items:center;max-width:100%;padding:22px 12px;margin:12px auto 18px;overflow:visible}
.tripadvisor-footer-widget .TA_cdswritereviewnew{max-width:100%}
.tripadvisor-footer-widget ul{list-style:none;margin:0;padding:0}
.tripadvisor-footer-widget img{max-width:100%;height:auto}

/* Tripadvisor widget: visually integrated into the plantation-green footer. */
.footer .tripadvisor-footer-widget{background:#385D47!important;color:#F8F7F0!important;padding:8px 8px 5px!important;margin:3px auto 4px!important;min-height:0!important;line-height:1.25!important}
.footer .tripadvisor-footer-widget .TA_cdswritereviewnew,.footer .tripadvisor-footer-widget .TA_links,.footer .tripadvisor-footer-widget li{background:transparent!important;color:#F8F7F0!important;border:0!important;box-shadow:none!important;margin:0!important;padding:0!important;line-height:1.25!important}
.footer .tripadvisor-footer-widget a,.footer .tripadvisor-footer-widget span,.footer .tripadvisor-footer-widget p,.footer .tripadvisor-footer-widget div{color:#F8F7F0!important}
.footer .tripadvisor-footer-widget img{max-height:38px;width:auto;object-fit:contain}
.footer .footer-social{margin-bottom:3px!important;padding-bottom:0!important}
.footer .footer-bottom{margin-top:5px!important;padding-top:12px!important}
@media(max-width:600px){.footer .tripadvisor-footer-widget{padding:5px 4px!important;margin:2px auto!important}.footer .footer-bottom{margin-top:3px!important;padding-top:10px!important}}

/* Tripadvisor social link matches the other footer social icons. */
.social-icon.tripadvisor{color:#c9aa6c!important;}
.social-icon.tripadvisor:hover{color:#f4d995!important;}

/* Cleaner footer: social icons sit freely beneath footer columns; only one bottom divider. */
.footer .footer-social{border-top:0!important;border-bottom:0!important;margin-top:22px!important;margin-bottom:17px!important;padding-top:0!important;padding-bottom:0!important;}
.footer .footer-bottom{border-top:1px solid rgba(255,255,255,.23)!important;margin-top:0!important;padding-top:17px!important;}
@media(max-width:600px){.footer .footer-social{margin-top:18px!important;margin-bottom:15px!important}.footer .footer-bottom{margin-top:0!important;padding-top:15px!important}}


/* Freshwater: deep forest green announcement strip + white navigation,
   matched to Starfish Beach Bar's two-tone header treatment. */
.plantation-topbar{
  background:#12382e!important;color:#fff!important;
  min-height:32px;display:flex;align-items:center;justify-content:center;
  padding:8px 20px;text-align:center;
  font-size:10px;font-weight:650;letter-spacing:.18em;line-height:1.5;
}
header,body>header{
  position:sticky!important;top:0!important;
  background:#fff!important;color:#12382e!important;
  border-bottom:1px solid rgba(18,56,46,.12)!important;
  box-shadow:0 3px 16px rgba(18,56,46,.08)!important;
}
header .brand-name,header .brand-name span,header .brand-fallback,
header .nav>a:not(.btn),header .menu-toggle,
header .header-social .social-icon{
  color:#12382e!important;
}
header .nav>a:not(.btn):hover,header .nav>a:not(.btn):focus-visible,
header .nav>a[aria-current="page"]:not(.btn){color:#2b6a4a!important}
header .menu-line{background:#12382e!important}
header .brand img{width:58px!important;max-width:58px!important;max-height:64px!important;object-fit:contain!important}
.footer,footer.footer{background:#12382e!important;color:#f7f6ee!important}
.footer .tripadvisor-footer-widget{background:#12382e!important}
.footer .footer-social{border-top:0!important;border-bottom:0!important}
.footer .footer-bottom{border-top:1px solid rgba(255,255,255,.23)!important}
@media(max-width:900px){
 header .nav,header .nav.open,.nav.open{
  background:#fff!important;color:#12382e!important;
  border-top:1px solid rgba(18,56,46,.12)!important;
 }
 header .nav a:not(.btn){color:#12382e!important}
}
@media(max-width:600px){
 .plantation-topbar{font-size:9px;letter-spacing:.10em;min-height:29px;padding:7px 12px}
 header .brand img{width:48px!important;max-width:48px!important}
}

/* Match the website’s existing boutique cream in the header. */
header,body>header{background:#f6f3e9!important;}
@media(max-width:900px){header .nav,header .nav.open,.nav.open{background:#f6f3e9!important;}}

/* Contact hero: show lantern-lit pathway, keeping only a narrow sunset band */
.page-hero.contact-hero{background-position:center,center 92%;}

/* Restored internal navigation CTAs only; no form or booking links */
.hero-actions .btn,.home-stay-cta .btn,.feature-copy .btn{margin-top:18px}
.santo-planning .gold-eyebrow{color:#e6ca8a!important}
/* Contact: balance pathway lanterns with a glimpse of the sunset */
.page-hero.contact-hero{background-position:center,center 60%!important}
@media(max-width:700px){.page-hero.contact-hero{background-position:center,center 56%!important}}
