:root{--ink:#062d3a;--navy:#042532;--lagoon:#08a6a0;--aqua:#62d9cf;--sand:#f5eee1;--sun:#f4b84a;--paper:#fbfcfa;--muted:#667a7e;--line:#dce7e5}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button,a{transition:.25s ease}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{overflow-wrap:anywhere}
.site-nav{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:#fff;position:relative;z-index:30}.brand{display:flex;align-items:center;gap:11px;font-weight:800;font-size:21px;line-height:1}.brand-mark{width:44px;height:44px;border-radius:14px 14px 14px 4px;background:var(--lagoon);color:#fff;display:grid;place-items:center;font-size:18px}.brand small{display:block;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#708589;margin-top:6px}.site-nav nav{display:flex;align-items:center;gap:31px;font-size:14px;font-weight:700}.site-nav nav>a:not(.nav-cta):hover,.site-nav nav>a.active{color:var(--lagoon)}.nav-cta{border:1px solid #c8d6d6;border-radius:100px;padding:12px 19px}.nav-cta:hover{background:var(--ink);color:#fff}.menu-toggle{display:none}
.hero{height:680px;position:relative;background:linear-gradient(90deg,rgba(1,26,36,.92),rgba(2,30,40,.46) 56%,rgba(2,30,40,.08)),url('../images/hero.jpg') center 55%/cover;color:#fff;overflow:hidden}.hero-content{position:relative;z-index:2;padding:104px 7vw 80px;max-width:800px}.eyebrow{font-size:11px;letter-spacing:.23em;font-weight:800;margin:0 0 20px;color:#a8eee7}.eyebrow.dark{color:#168e8b}.hero h1,.page-hero h1,.detail-hero h1{font:500 70px/.99 Georgia,serif;letter-spacing:-.04em;margin:0 0 25px}.hero h1 em{font-weight:400;color:#84e1d7}.hero-content>p:not(.eyebrow){font-size:18px;line-height:1.7;max-width:620px;color:#d5e2e2}.hero-actions{display:flex;gap:14px;margin-top:31px}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 23px;border-radius:100px;font-size:14px;font-weight:800}.button.sun{background:var(--sun);color:#15323a}.button.sun:hover{background:#ffd079;transform:translateY(-2px)}.button.outline{border:1px solid rgba(255,255,255,.45);color:#fff}.button.outline:hover{background:#fff;color:var(--ink)}.button.teal{background:var(--lagoon);color:#fff}.button.pale{background:#e6f1ef;color:var(--ink)}.trust{display:flex;align-items:center;gap:12px;margin-top:34px;font-size:12px;color:#d2dede}.trust span{color:#f9bd4d;letter-spacing:2px}.trust i{height:15px;border-left:1px solid rgba(255,255,255,.35)}.hero-badge{position:absolute;right:5vw;bottom:55px;background:rgba(255,255,255,.92);color:var(--ink);padding:19px 23px;border-radius:18px;display:flex;align-items:center;gap:14px;box-shadow:0 12px 40px #001c}.hero-badge b{font:600 35px Georgia;color:var(--lagoon)}.hero-badge span{font-size:11px;line-height:1.5;text-transform:uppercase;letter-spacing:.09em;font-weight:800}
.search-panel{width:min(1120px,90vw);margin:-42px auto 0;position:relative;z-index:10}.search-tabs{display:flex;gap:4px;padding-left:20px}.search-tabs>*{border:0;border-radius:12px 12px 0 0;background:#d8e6e4;color:#587274;padding:12px 22px;font-size:12px;font-weight:800}.search-tabs b{background:#fff;color:var(--lagoon)}.availability-form{display:grid;grid-template-columns:1fr 1fr 1.25fr auto;background:#fff;padding:16px;border-radius:18px;box-shadow:0 18px 65px rgba(4,37,50,.14)}.availability-form label{padding:8px 20px;border-right:1px solid #e0e8e8}.availability-form label span{display:block;font-size:9px;letter-spacing:.17em;font-weight:800;color:#829397;margin-bottom:7px}.availability-form input,.availability-form select{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-weight:700}.availability-form>button,.filter-bar button,.booking-box button,.lookup-form button{border:0;border-radius:13px;background:var(--lagoon);color:#fff;padding:0 24px;font-weight:800}.availability-form>button:hover,.filter-bar button:hover,.booking-box button:hover{background:#067f7b;transform:translateY(-2px)}
.setup-note{width:min(1120px,90vw);margin:28px auto -55px;padding:17px 20px;border-radius:13px;background:#fff4d8;border:1px solid #f1d99e;font-size:13px}.setup-note a{text-decoration:underline;font-weight:800}.content-section{padding:100px 6vw}.page-content{padding-top:70px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:34px;gap:30px}.section-heading h2,.why-section h2,.final-cta h2,.detail-copy h2,.story h2,.contact-layout h2,.main-form h2{font:500 43px/1.12 Georgia,serif;letter-spacing:-.025em;margin:0}.section-heading>a{font-size:13px;font-weight:800;color:var(--lagoon)}.section-heading>p{max-width:390px;color:var(--muted);line-height:1.7}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.stay-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 8px 34px rgba(10,45,54,.08);transition:.3s}.stay-card:hover{transform:translateY(-8px);box-shadow:0 18px 45px rgba(10,45,54,.14)}.card-photo{height:245px;position:relative;overflow:hidden;display:block}.card-photo img{width:100%;height:100%;object-fit:cover;transition:.5s}.stay-card:hover .card-photo img{transform:scale(1.055)}.card-photo>span,.tour-card>span{position:absolute;left:15px;top:15px;background:#fff;color:var(--ink);padding:8px 12px;border-radius:100px;font-size:10px;font-weight:800}.card-body{display:flex;justify-content:space-between;align-items:end;padding:22px 20px 17px}.card-body h3,.tour-card h3,.experience-card h3{font:600 22px Georgia,serif;margin:0 0 7px}.card-body p{margin:0;color:var(--muted);font-size:12px}.price{text-align:right}.price b{display:block;font-size:17px;color:var(--ink)}.price small{font-size:10px}.card-link{display:block;border-top:1px solid #edf0ef;background:#fff;padding:15px 20px;color:var(--lagoon);font-size:12px;font-weight:800}.card-link span{float:right}
.tour-section{background:var(--navy);padding:95px 6vw 105px;color:#fff}.section-heading.light>p{color:#aac0c3}.tour-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:20px}.tour-card{min-height:420px;border-radius:24px;background-position:center;background-size:cover;position:relative;overflow:hidden;transition:.35s}.tour-card:hover{transform:translateY(-8px)}.tour-card>div{position:absolute;left:22px;right:22px;bottom:22px}.tour-card p{font-size:11px;color:#b7d4d4;text-transform:uppercase;letter-spacing:.08em}.tour-card footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.22);padding-top:14px}.tour-card footer a{background:var(--sun);color:var(--ink);padding:9px 13px;border-radius:100px;font-size:10px;font-weight:800}.tour-card b{font-size:13px}
.why-section{display:grid;grid-template-columns:1fr 1.1fr;gap:9vw;padding:110px 7vw}.why-section>div>p:not(.eyebrow){color:var(--muted);line-height:1.8;max-width:520px}.feature-list>div{display:grid;grid-template-columns:58px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.feature-list b{font:500 25px Georgia;color:#80c9c3}.feature-list strong,.feature-list small{display:block}.feature-list strong{font:600 20px Georgia;margin-bottom:7px}.feature-list small{color:var(--muted);font-size:13px}
.final-cta{margin:0 5vw 70px;padding:55px 5vw;border-radius:28px;background:linear-gradient(110deg,#087c78,#0ca7a1);color:#fff;display:flex;justify-content:space-between;align-items:center;overflow:hidden;position:relative}.final-cta:after{content:"";position:absolute;width:300px;height:300px;border:60px solid rgba(255,255,255,.08);border-radius:50%;right:15%;top:-120px}.final-cta .button{position:relative;z-index:2}.site-footer{display:flex;align-items:center;justify-content:space-between;padding:36px 5vw;background:#031d27;color:#d8e4e4}.site-footer .brand-mark{background:#0b8d88}.site-footer p{font-size:11px;color:#8ba5aa}.site-footer a:hover{color:#fff}.flash{position:fixed;z-index:100;right:25px;bottom:25px;max-width:420px;background:#fff;border-left:5px solid var(--lagoon);border-radius:12px;padding:17px 20px;box-shadow:0 10px 40px #0014;font-size:13px;font-weight:800}.flash.error{border-color:#d85b5b}.flash.success{border-color:#1aa889}
.page-hero{min-height:400px;background:linear-gradient(90deg,rgba(2,31,42,.94),rgba(2,31,42,.38)),url('../images/hero.jpg') center/cover;color:#fff;display:flex;align-items:center;padding:65px 8vw}.page-hero>div{max-width:700px}.page-hero h1{font-size:61px}.page-hero p:not(.eyebrow){font-size:17px;line-height:1.7;color:#d2e1e1}.page-hero.compact{min-height:360px}.page-hero.mini{min-height:245px}.page-hero.mini h1{font-size:50px}.tours-hero{background-image:linear-gradient(90deg,rgba(2,31,42,.94),rgba(2,31,42,.32)),url('../images/sandbank.jpg')}.contact-hero{background-image:linear-gradient(90deg,rgba(2,31,42,.94),rgba(2,31,42,.35)),url('../images/dolphin.jpg')}.about-hero{background-image:linear-gradient(90deg,rgba(2,31,42,.94),rgba(2,31,42,.28)),url('../images/hero.jpg')}
.filter-bar{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;padding:17px;background:#fff;border:1px solid var(--line);border-radius:18px;margin-bottom:35px}.filter-bar label,.main-form label,.booking-box label,.lookup-form label{font-size:11px;font-weight:800;color:#667a7e}.filter-bar input,.filter-bar select,.main-form input,.main-form select,.main-form textarea,.booking-box input,.booking-box select,.lookup-form input{width:100%;margin-top:7px;padding:13px;border:1px solid #d6e2e0;border-radius:10px;background:#fff;color:var(--ink);outline:none}.filter-bar input:focus,.main-form input:focus,.main-form textarea:focus,.booking-box input:focus{border-color:var(--lagoon);box-shadow:0 0 0 3px rgba(8,166,160,.1)}
.detail-hero{height:520px;position:relative;color:#fff;overflow:hidden}.detail-hero>img{width:100%;height:100%;object-fit:cover}.detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,30,41,.91),rgba(3,30,41,.06) 70%)}.detail-hero>div{position:absolute;z-index:2;left:7vw;bottom:55px;max-width:760px}.detail-hero h1{font-size:58px}.detail-hero>div>p:not(.eyebrow){color:#d7e5e4;font-size:17px}.detail-layout{display:grid;grid-template-columns:1fr 390px;gap:8vw;padding:85px 7vw}.detail-copy>p:not(.eyebrow){line-height:1.9;color:var(--muted)}.detail-copy h3{font:600 24px Georgia,serif;margin-top:35px}.facts{display:flex;flex-wrap:wrap;gap:11px;margin:27px 0}.facts span{padding:10px 13px;border-radius:100px;background:#eaf2f0;font-size:12px;font-weight:700}.tick-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.tick-list li:before{content:"✓";color:var(--lagoon);font-weight:900;margin-right:8px}.booking-box{position:sticky;top:24px;height:max-content;border-radius:22px;background:#fff;padding:27px;box-shadow:0 15px 55px rgba(6,45,58,.14)}.booking-box>p{margin:0;color:var(--muted);font-size:12px}.booking-box>h3{font:600 28px Georgia;margin:5px 0 24px}.booking-box>h3 small{font:400 12px Arial;color:var(--muted)}.booking-box label{display:block;margin:13px 0}.booking-box button{width:100%;padding:16px;margin:9px 0 16px}.booking-box>small{display:block;text-align:center;line-height:1.5;color:var(--muted)}
.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.experience-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 8px 35px rgba(4,45,55,.09);transition:.3s}.experience-card:hover{transform:translateY(-7px)}.experience-card>a{height:260px;display:block;overflow:hidden}.experience-card img{width:100%;height:100%;object-fit:cover;transition:.5s}.experience-card:hover img{transform:scale(1.05)}.experience-card>div{padding:22px}.experience-card>div>span{font-size:9px;letter-spacing:.15em;color:var(--lagoon);font-weight:900;text-transform:uppercase}.experience-card>div>p{font-size:13px;line-height:1.7;color:var(--muted);min-height:45px}.experience-card footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:16px}.experience-card footer b{font-size:14px}.experience-card footer small{font-weight:400}.experience-card footer a{font-size:11px;font-weight:800;color:var(--lagoon)}
.form-layout{display:grid;grid-template-columns:1fr 350px;gap:6vw;padding:75px 8vw;align-items:start}.main-form{background:#fff;border-radius:22px;padding:32px;box-shadow:0 10px 40px rgba(4,45,55,.08)}.main-form>label{display:block;margin:18px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.check{display:flex!important;align-items:flex-start;gap:9px}.check input{width:auto;margin:2px 0}.submit-button{border:0;border-radius:13px;background:var(--lagoon);color:#fff;padding:16px 22px;font-weight:800}.summary-card{background:#fff;border-radius:22px;padding:18px;box-shadow:0 10px 40px rgba(4,45,55,.1)}.summary-card img{width:100%;height:185px;object-fit:cover;border-radius:14px}.summary-card h3{font:600 23px Georgia;margin:19px 0 6px}.summary-card p,.summary-card small{color:var(--muted);font-size:12px;line-height:1.6}.summary-card>div{display:flex;justify-content:space-between;gap:20px;font-size:12px}.success-page,.lookup-page{max-width:850px;margin:auto;padding:100px 5vw;text-align:center}.success-icon{margin:auto;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:#d8f2ec;color:#15977c;font-size:30px}.success-page h1{font:500 48px Georgia;margin:20px 0}.success-page>p:not(.eyebrow){color:var(--muted);line-height:1.8}.reference{margin:25px auto;padding:17px;background:#eaf4f2;border-radius:13px}.success-page>div:last-child{display:flex;justify-content:center;gap:12px}.lookup-form{display:grid;grid-template-columns:1fr auto;gap:12px;text-align:left}.lookup-form button{padding:0 22px}.empty-state{margin-top:25px;padding:20px;background:#fff2f0;border-radius:12px}.booking-result{text-align:left;background:#fff;margin-top:35px;padding:28px;border-radius:20px;box-shadow:0 10px 40px rgba(4,45,55,.09);position:relative}.booking-result h2{font:600 28px Georgia;margin:0}.booking-result>div>p:not(.eyebrow){color:var(--muted)}.booking-result>.status{position:absolute;right:25px;top:25px}.status,.pill{display:inline-block;padding:7px 10px;border-radius:100px;background:#fff0d4;color:#9a6c18;font-size:10px;text-transform:uppercase;font-weight:900}.status.confirmed,.pill.confirmed,.status.checked_in,.pill.checked_in{background:#d8f3ed;color:#167762}.booking-result footer{display:flex;gap:40px;border-top:1px solid var(--line);padding-top:18px}.booking-result footer span{font-size:12px;color:var(--muted)}.booking-result footer b{display:block;color:var(--ink);font-size:16px;margin-top:4px}
.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;padding:85px 7vw}.contact-layout>div>p:not(.eyebrow){color:var(--muted);line-height:1.8}.contact-cards{display:grid;gap:10px;margin-top:30px}.contact-cards div{padding:15px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.contact-cards span{font-size:13px;color:var(--muted)}.story{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:95px 7vw}.story>div:last-child{color:var(--muted);line-height:1.9}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:0 7vw 100px}.values article{background:#fff;padding:30px;border-radius:20px}.values b{color:var(--lagoon)}.values h3{font:600 25px Georgia}.values p{font-size:13px;line-height:1.7;color:var(--muted)}
.reveal{opacity:0;transform:translateY(24px)}.reveal.visible{opacity:1;transform:none;transition:opacity .7s ease,transform .7s ease}
@media(max-width:900px){.site-nav{height:70px}.menu-toggle{display:block;border:0;background:var(--ink);color:#fff;border-radius:10px;padding:9px 12px}.site-nav nav{display:none;position:absolute;left:0;right:0;top:70px;background:#fff;padding:22px;flex-direction:column;box-shadow:0 15px 30px #0012}.site-nav nav.open{display:flex}.hero{height:650px}.hero-content{padding:75px 7vw}.hero h1,.page-hero h1{font-size:49px}.hero-badge{display:none}.trust{flex-wrap:wrap}.availability-form{grid-template-columns:1fr}.availability-form label{border:0;border-bottom:1px solid #e5eceb;padding:13px}.availability-form>button{padding:17px;margin-top:7px}.content-section,.tour-section{padding:75px 5vw}.section-heading{align-items:start}.section-heading h2,.why-section h2,.final-cta h2,.detail-copy h2,.story h2,.contact-layout h2{font-size:35px}.card-grid,.tour-grid,.experience-grid,.values{grid-template-columns:1fr}.tour-card{min-height:380px}.why-section,.story,.contact-layout{grid-template-columns:1fr;padding:75px 6vw}.final-cta{flex-direction:column;align-items:start;gap:25px}.site-footer{flex-direction:column;gap:22px;text-align:center}.filter-bar,.detail-layout,.form-layout{grid-template-columns:1fr}.detail-layout,.form-layout{padding:55px 5vw}.booking-box{position:static}.form-grid{grid-template-columns:1fr}.detail-hero{height:430px}.detail-hero h1{font-size:44px}.lookup-form{grid-template-columns:1fr}.lookup-form button{padding:15px}.page-hero.mini h1{font-size:39px}.values{padding:0 6vw 70px}.success-page h1{font-size:38px}}
.site-nav{height:88px;padding:0 3vw;background:rgba(255,255,255,.97);box-shadow:0 6px 24px rgba(2,29,41,.06)}
.logo-brand img{width:105px;height:58px;object-fit:cover;border-radius:12px;object-position:center}
.logo-brand>span{display:none}.footer-logo img{width:90px;height:58px}
.discovery-values{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.site-nav{height:72px}.logo-brand img{width:86px;height:50px}.discovery-values{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.discovery-values{grid-template-columns:1fr}}
.site-nav nav{font-size:12px;gap:27px}.market-utility{font-size:9px}.hero h1,.page-hero h1,.detail-hero h1{font-size:64px}.hero-content>p:not(.eyebrow),.page-hero p:not(.eyebrow),.detail-hero>div>p:not(.eyebrow){font-size:16px}.section-heading h2,.why-section h2,.final-cta h2,.detail-copy h2,.story h2,.contact-layout h2,.main-form h2{font-size:39px}.card-body h3,.tour-card h3,.experience-card h3{font-size:20px}.content-section p,.why-section p,.story p,.values p,.detail-copy p{font-size:12px}.site-footer{padding-top:28px;padding-bottom:28px}.site-footer p{font-size:10px}.site-copyright span,.site-copyright small{display:block;margin-top:5px}.site-copyright small{font-size:8px;letter-spacing:.04em;color:#6f9298}.site-copyright b{color:#91d7d0}
@media(max-width:900px){.hero h1,.page-hero h1{font-size:44px}.section-heading h2,.why-section h2,.final-cta h2,.detail-copy h2,.story h2,.contact-layout h2{font-size:32px}}
.detail-hero>img{transition:opacity .18s ease}.room-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;width:min(1180px,92vw);margin:18px auto 0}.room-gallery button{height:130px;padding:0;border:3px solid transparent;border-radius:14px;overflow:hidden;background:#fff;cursor:pointer;box-shadow:0 6px 20px rgba(4,45,55,.08)}.room-gallery button.active{border-color:var(--lagoon)}.room-gallery img{width:100%;height:100%;object-fit:cover;transition:.25s}.room-gallery button:hover img{transform:scale(1.05)}@media(max-width:700px){.room-gallery{grid-template-columns:repeat(3,1fr)}.room-gallery button{height:90px}}
.section-heading .eyebrow{font-size:10px}.section-heading h2{font-size:36px}
.hotel-photo-gallery{padding:0 7vw 90px}.hotel-photo-gallery>.section-heading{margin-bottom:22px}.hotel-photo-gallery>div:last-child{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px;gap:12px}.hotel-photo-gallery button{padding:0;border:0;border-radius:18px;overflow:hidden;background:#dce9e7;cursor:pointer}.hotel-photo-gallery button:first-child{grid-row:1/3}.hotel-photo-gallery button:last-child{grid-column:2/4}.hotel-photo-gallery img{width:100%;height:100%;object-fit:cover;transition:.45s}.hotel-photo-gallery button:hover img{transform:scale(1.04)}@media(max-width:700px){.hotel-photo-gallery>div:last-child{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:220px 150px 150px}.hotel-photo-gallery button:first-child{grid-column:1/3;grid-row:auto}.hotel-photo-gallery button:last-child{grid-column:auto}}
.tourism-photo-gallery>div:last-child{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tourism-photo-gallery figure{height:230px;margin:0;border-radius:18px;overflow:hidden;background:#dce9e7}.tourism-photo-gallery img{width:100%;height:100%;object-fit:cover;transition:.45s}.tourism-photo-gallery figure:hover img{transform:scale(1.05)}@media(max-width:900px){.tourism-photo-gallery>div:last-child{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.tourism-photo-gallery>div:last-child{grid-template-columns:1fr}.tourism-photo-gallery figure{height:240px}}
