:root{--paper:#f8fbfb;--sand:#e8f2f1;--sun:#e79160}
body{font-family:"DM Sans",system-ui,sans-serif}h1,h2,h3{line-height:1.12}h2{font-size:clamp(2.1rem,4.7vw,3.7rem)}.eyebrow{font-size:.8rem}.note{font-size:.92rem}a,button,input,select,summary,textarea{touch-action:manipulation}button,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #ef8b57;outline-offset:5px}.skip-link{position:absolute;left:14px;top:-100px;z-index:20;background:white;color:var(--ink);padding:12px}.skip-link:focus{top:12px}section[id]{scroll-margin-top:95px}
.topbar{position:sticky;top:0;padding:14px 0;background:var(--night);color:white;z-index:10}.topbar .wrap{justify-content:space-between;gap:25px}.wordmark{width:132px;flex-shrink:0}.wordmark img{width:100%;height:auto}.nav a{font-size:.9rem}.nav{gap:22px}.menu-toggle{display:none;border:1px solid #bedbd9;color:white;background:none;border-radius:5px;padding:9px 14px;min-height:44px}.hero{height:620px;min-height:0;max-height:none}.hero-photo img{object-position:50% 45%;filter:none}.hero:after{background:linear-gradient(90deg,rgba(3,31,37,.85),rgba(3,31,37,.35) 68%,rgba(3,31,37,.1)),linear-gradient(0deg,rgba(3,31,37,.45),transparent 65%)}.hero-copy{position:relative;left:auto;bottom:auto;transform:none;margin:auto;height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:27px}.hero-logo img{width:300px}.hero-intro{max-width:610px;font-size:1.1rem;padding:0}.hero-intro strong{font-size:clamp(2rem,4vw,3.2rem);line-height:1.13}.hero-kicker{font-size:.86rem}.hero-actions a{font-size:1rem;padding:11px 20px;min-height:46px}.sun,.marquee{display:none}
.quick-facts{padding:24px 0;background:white;border-bottom:1px solid var(--line)}.quick-facts .wrap{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:.95rem}.quick-facts b{color:var(--sea)}.journeys{padding:80px 0}.journeys-head{margin-bottom:35px;gap:5vw}.planner-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:30px;align-items:start}.trip-controls{border:1px solid #507274;padding:26px;background:#103e44;border-radius:8px}.trip-controls label{display:block;font-weight:600;margin-bottom:8px}.trip-controls select{width:100%;background:white;color:var(--ink);padding:12px 36px 12px 13px;border:1px solid #bdcfce;border-radius:5px;min-height:48px;font-size:1rem;margin-bottom:24px}.trip-controls p{color:#d2e5e2;font-size:.95rem}.trip-controls .pill{display:block;text-align:center;background:var(--aqua);color:var(--night);border:0;margin-top:24px;text-decoration:none;font-weight:600;padding:12px}.route-preview{border-top:1px solid #507274}.route-head{padding:25px 0 20px}.route-head h3{font-size:clamp(1.7rem,3vw,2.3rem);margin:12px 0}.route-head p{font-size:.92rem;color:#c6dcda}.itinerary{list-style:none;padding:0;margin:0}.itinerary li{display:grid;grid-template-columns:68px 1fr;gap:20px;padding:18px 0;border-top:1px solid #31565b}.day-number{color:var(--aqua);font-size:.9rem;font-weight:600}.itinerary h4{margin:0 0 7px;font:600 1.25rem/1.3 "Fraunces",serif}.itinerary p{font-size:.95rem;color:#c7dcda}.planner-caveat{margin-top:24px;color:#c7dcda;font-size:.92rem}.island-explorer{margin-top:64px;border-top:1px solid #507274;padding-top:35px}.island-explorer h3{margin-bottom:20px}.island-buttons{display:flex;gap:9px;flex-wrap:wrap}.island-buttons button{padding:10px 17px;min-height:44px;border:1px solid #759694;background:none;border-radius:99px;color:white;font-size:.95rem}.island-buttons button[aria-pressed=true]{background:var(--aqua);color:var(--night);border-color:var(--aqua);font-weight:600}.island-detail{display:grid;grid-template-columns:.65fr 1.35fr;gap:35px;background:#103e44;margin-top:22px;padding:28px;border-radius:8px}.island-detail h4{font:600 1.7rem/1.2 "Fraunces",serif;margin:10px 0 0}.island-detail p{color:#d2e5e2}.island-detail .note{color:var(--aqua)}
.welcome,.local,.food,.boat,.crew,.faq{padding:80px 0}.welcome-grid,.section-head,.crew-grid{gap:6vw}.welcome .proof{margin-top:28px}.visual-break{padding:10px}.photo-strip{height:320px}.possibilities{display:none}.local .places{gap:18px;border:0}.place{border:1px solid var(--line);border-radius:7px;overflow:hidden;min-height:0}.place p,.activity p{font-size:1rem}.place i{color:#a44a19}.place h3{margin-top:13px}.photo-credit{font-size:.75rem}.food-gallery{grid-template-rows:200px 200px}.food .quote{display:none}.menu p{font-size:.98rem}.boat-photos{height:470px}.crew-gallery img{height:330px}.facts .fact{font-size:.95rem}.boat-copy .cabin-detail{margin-top:20px}.activities{padding:80px 0}.activity-grid{grid-template-columns:repeat(3,1fr)}.activity{min-height:0}.activity-photo{height:auto;aspect-ratio:4/3}.activity h3{margin-top:14px;font-size:1.5rem}.activity-copy{padding:23px}.activity small{font-size:.9rem}.day-aboard{padding:80px 0;background:white}.day-head{max-width:700px;margin-bottom:35px}.day-head h2{margin:15px 0 22px}.day-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.day-grid article{border-top:2px solid var(--sea);padding-top:20px}.day-grid h3{font-size:1.35rem;margin:12px 0}.day-grid p{font-size:1rem;color:var(--muted)}.day-grid .eyebrow{font-size:.8rem}.invite{padding:75px 0;background:var(--sand)}.invite .wrap{max-width:900px}.enquiry-box{max-width:650px;margin:28px auto 0;text-align:left}.enquiry-box label{display:block;font-weight:600;margin-bottom:10px}.enquiry-box textarea{display:block;width:100%;padding:15px;border:1px solid #799b9b;background:white;color:var(--ink);border-radius:6px;font-size:.95rem;line-height:1.55;resize:vertical;min-height:255px}.enquiry-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:20px}.enquiry-actions .pill{margin:0;font-size:1rem;border-radius:99px;min-height:48px}.enquiry-actions button.pill{background:white;color:var(--ink);border:1px solid var(--sea)}.copy-status{min-height:48px;margin-top:14px!important;font-size:.92rem;color:var(--sea)}.footer .wordmark{width:130px}.footer small{font-size:.9rem}
@media(max-width:1000px){.nav{gap:16px}.nav a{font-size:.86rem}.activity-grid{grid-template-columns:1fr 1fr}.day-grid{grid-template-columns:1fr 1fr}.welcome-grid,.crew-grid,.boat-grid{gap:35px}.boat-photos{height:400px}.hero-copy{display:flex;max-width:none}}
@media(max-width:760px){.menu-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--night);padding:15px 20px 25px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 10px 20px #0003}.nav.open{display:flex}.nav a,.nav a:not(.pill){display:block;font-size:1rem;padding:12px}.nav .pill{margin-top:10px;text-align:center}.hero{height:auto;min-height:580px}.hero-copy{height:auto;min-height:580px;padding:45px 0;gap:25px}.hero-photo img{object-position:65% center}.hero-logo img{width:240px;margin:0}.hero-intro{max-width:500px}.hero-intro strong{font-size:2.3rem}.quick-facts .wrap{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:.9rem}.planner-layout,.journeys-head,.island-detail{grid-template-columns:1fr;gap:25px}.trip-controls{padding:22px}.route-head{padding-top:23px}.island-detail{padding:24px;gap:20px}.day-aboard,.welcome,.local,.food,.boat,.crew,.faq,.journeys,.activities{padding:60px 0}.welcome-grid,.section-head,.crew-grid,.boat-grid,.food-intro,.faq-grid{grid-template-columns:1fr;gap:28px}.welcome .fit{margin-top:30px}.fit{grid-template-columns:1fr 1fr}.fit div{padding:17px 12px}.fit div:nth-child(2){border-right:0}.fit div:nth-child(-n+2){border-bottom:1px solid var(--line)}.places{grid-template-columns:1fr 1fr}.place-photo{height:190px}.boat-photos{height:400px}.crew-gallery img{height:300px}.crew-gallery figure:first-child{transform:none}.activities-head{display:block}.activities-head p{margin-top:25px}.hero-actions{gap:10px}.hero-actions a{font-size:.95rem;padding:10px 17px}.footer .wrap{align-items:flex-start}.island-buttons button{flex-grow:1}}
@media(max-width:480px){.wrap,.hero-copy{width:calc(100% - 32px)}.hero{min-height:580px}.hero-copy{min-height:580px}.hero-intro strong{font-size:2.1rem}.hero-intro{font-size:1rem}.hero-kicker{font-size:.82rem;letter-spacing:.1em}.places,.activity-grid,.day-grid{grid-template-columns:1fr}.day-grid{gap:25px}.photo-strip{height:230px;grid-template-columns:1.3fr .7fr}.photo-strip figure:last-child{display:none}.photo-strip figcaption{font-size:.82rem}.food-gallery{grid-template-rows:180px 180px}.menu-grid{grid-template-columns:1fr}.menu{border-right:0;border-bottom:1px solid var(--line);padding:20px 0}.menu:last-child{border-bottom:0}.boat-photos{height:330px}.crew-gallery img{height:230px}.crew-gallery figcaption{font-size:.9rem;padding-left:12px}.enquiry-actions{flex-direction:column}.enquiry-actions .pill{width:100%;text-align:center}.footer .wrap{flex-direction:column}.itinerary li{grid-template-columns:54px 1fr;gap:15px}.route-head h3{font-size:1.8rem}.booking-trust{padding:18px 0}.quick-facts .wrap{gap:10px}.hero-actions a{flex-grow:1;text-align:center}.activity-photo{height:auto;aspect-ratio:4/3}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.nav a:not(.pill){display:block}.planner-layout>*{min-width:0}.photo-strip{overflow:hidden}.photo-strip figure{min-width:0;min-height:0}.place-photo img,.activity-photo img{filter:none}
@media(max-width:760px){.photo-strip{height:250px;grid-template-columns:1.3fr .7fr;grid-template-rows:1fr}.photo-strip figure,.photo-strip figure:first-child{height:100%;grid-column:auto}.photo-strip figure:last-child{display:none}}
@media(max-width:480px){.photo-strip{height:230px}}

body{font-size:1.0625rem}@media(max-width:680px){body{font-size:1rem}}

body{overflow-wrap:break-word}.topbar .nav{flex-wrap:wrap;justify-content:flex-end}.hero{height:auto;min-height:620px}.hero-copy{height:auto;min-height:620px;padding:60px 0}
@media(max-width:760px){.hero,.hero-copy{min-height:580px}.hero-copy{padding:45px 0}.topbar .nav{justify-content:flex-start}}

.hero-title{font:600 clamp(2.2rem,4vw,3.2rem)/1.13 "Fraunces",serif;margin:0 0 18px;max-width:560px}.hero-location{max-width:520px;margin:-6px 0 18px;color:#d7f7f2;font-size:clamp(.9rem,1.3vw,1rem);font-weight:400;line-height:1.5}.hero-photo img{object-position:50% 60%;transform:scale(1.04)}.hero-intro{max-width:560px}.itinerary li{display:block}.route-label{font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--aqua);margin-bottom:8px}.route-head #route-pace{margin-top:12px}.southbound-note{padding-top:20px;margin-top:20px;border-top:1px solid #507274;font-size:.92rem;color:#d2e5e2}.island-intro{max-width:850px;margin-bottom:23px;color:#d2e5e2}.island-detail #island-text p+p{margin-top:18px}.island-detail .note{margin-top:18px}.place-text{background:var(--paper);border-top:3px solid var(--sea)}.place-text .place-copy{padding-top:28px}.food .quote{display:block}.food .quote cite{display:block;margin-top:15px;line-height:1.6}.footer-name{color:white;text-decoration:none;font:600 1.8rem "Fraunces",serif}
.boat-grid>*,.crew-grid>*,.welcome-grid>*,.food-intro>*,.faq-grid>*{min-width:0}.skip-link{top:0;transform:translateY(-200%);max-width:calc(100% - 28px)}.skip-link:focus{transform:none}
@media(max-width:760px){.hero{--mobile-photo-height:clamp(240px,75vw,380px);min-height:0;background:var(--night)}.hero-photo{bottom:auto;height:var(--mobile-photo-height)}.hero:after{background:linear-gradient(to bottom,transparent calc(var(--mobile-photo-height) - 85px),var(--night) var(--mobile-photo-height))}.hero-copy{min-height:0;padding:calc(var(--mobile-photo-height) + 20px) 0 40px}.hero-title{font-size:2.4rem}.hero-photo img{object-position:50% 60%}.hero-intro{max-width:500px}}
@media(max-width:480px){.hero-title{font-size:2.1rem}.hero-intro{max-width:100%}.food .quote{padding:24px}.route-label{font-size:.8rem}}

.hero-photo{left:auto;width:min(78%,1040px);-webkit-mask-image:linear-gradient(to right,transparent,#000 14%);mask-image:linear-gradient(to right,transparent,#000 14%)}.hero-photo img{object-position:50% 100%;transform:none}
@media(max-width:760px){.hero-photo{width:100%;-webkit-mask-image:none;mask-image:none}.hero-photo img{object-position:50% 100%}.hero:after{background:linear-gradient(to bottom,transparent calc(var(--mobile-photo-height) - 40px),var(--night) var(--mobile-photo-height))}}

.food-gallery .salad-photo{object-fit:cover;object-position:50% 55%}
@media(max-width:480px){.food-gallery .salad-photo{transform:scale(1.4);object-position:center}}

/* A real island moment between planning and exploring. */
.island-moment{width:min(100%,390px);margin:52px auto 0}.island-moment img{display:block;width:100%;height:auto;border-radius:7px}.island-moment+.island-explorer{margin-top:48px}
.visual-break .photo-strip{grid-template-columns:1.325fr .75fr 1.325fr}
@media(max-width:760px){.island-moment{width:min(100%,360px);margin-top:40px}.island-moment+.island-explorer{margin-top:40px}.visual-break .photo-strip{height:auto;grid-template-columns:1fr;grid-template-rows:none}.visual-break .photo-strip figure,.visual-break .photo-strip figure:first-child,.visual-break .photo-strip figure:last-child{display:block;grid-column:auto;height:230px}}

@media(max-width:760px){.visual-break .photo-strip figure:nth-child(2){height:auto;aspect-ratio:3/4}.visual-break .photo-strip figure:nth-child(2) img{object-fit:contain}}

/* Wider island-photo framing on tablet and desktop; full portrait on phones. */
@media(min-width:681px){.island-moment{width:min(100%,820px)}.island-moment img{height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center 86%}}

/* Fill the Relax card, retaining the guests and float while cropping spare water above. */
.relax-photo{background:var(--night);display:flex;align-items:center}.relax-photo img{object-fit:cover;object-position:center bottom}.activity:hover .relax-photo img{transform:none}

/* Real views of life aboard: retain full photographs and enlarge on request. */
.boat-intro{display:grid;grid-template-columns:1.6fr 1fr;gap:7vw;align-items:center}.boat-intro .facts{margin-top:0}.boat-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:26px 18px;margin-top:42px}.boat-view{margin:0;grid-column:span 2;min-width:0}.boat-view-1,.boat-view-2,.boat-view-6,.boat-view-7{grid-column:span 3}.boat-photo-open{display:block;border:0;padding:0;background:none;width:100%;cursor:zoom-in}.boat-photo-open img{width:100%;height:auto;display:block}.boat-photo-open:focus-visible{outline:3px solid var(--teal);outline-offset:4px}.boat-view figcaption{font-size:.95rem;margin-top:10px;color:var(--night);line-height:1.5}.boat-lightbox{width:min(1100px,94vw);max-height:94dvh;padding:16px;background:var(--paper);border:0;color:var(--night)}.boat-lightbox::backdrop{background:rgba(3,25,29,.85)}.boat-lightbox-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.boat-lightbox-bar p{margin:0;font-size:1rem}.boat-photo-close{font:inherit;padding:8px 18px;border:1px solid currentColor;border-radius:24px;background:transparent;color:inherit;cursor:pointer}.boat-lightbox>img{display:block;max-width:100%;max-height:calc(94dvh - 90px);width:auto;height:auto;margin:auto;object-fit:contain}body.photo-modal-open{overflow:hidden}
@media(max-width:800px){.boat-intro{grid-template-columns:1fr;gap:24px}.boat-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.boat-gallery .boat-view{grid-column:span 1}.boat-view:last-child{grid-column:1/-1;max-width:none}}
@media(max-width:480px){.boat-gallery{grid-template-columns:1fr;gap:26px;margin-top:30px}.boat-gallery .boat-view,.boat-view:last-child{grid-column:auto;max-width:none}.boat-lightbox{padding:12px}.boat-lightbox-bar p{font-size:.9rem}}

.boat-copy .cabin-detail{margin-bottom:18px}

/* A day aboard: owner photograph with a readable, quiet overlay. */
.day-aboard{background-color:#0c2b30;background-image:linear-gradient(180deg,rgba(4,23,27,.56),rgba(4,23,27,.76)),url('assets/groovy-sunset-day-aboard.webp');background-size:cover;background-position:center 49%;color:#fff;padding:90px 0}.day-aboard h2,.day-aboard h3,.day-aboard p{color:#fff}.day-aboard .eyebrow{color:#e0f1ee}.day-aboard .day-grid p{color:#fff}.day-aboard .day-grid article{border-color:rgba(255,255,255,.45)}.day-aboard .day-head{max-width:700px;margin-bottom:48px}.day-aboard .day-head p{max-width:600px}
@media(max-width:680px){.day-aboard{padding:65px 0;background-size:100% 100%,auto 660px;background-position:top center;background-repeat:no-repeat}.day-aboard .day-head{margin-bottom:35px}.day-aboard .day-grid{gap:28px}}

/* Genuine crew portrait, with room for both hosts on every screen. */
.crew-gallery.crew-together{display:block;align-self:center}.crew-gallery.crew-together figure:first-child{transform:none}.crew-gallery.crew-together img{display:block;width:100%;height:auto;object-fit:contain}

/* Site-wide photographic balance: source files and hero remain intact.
   Per-image grading also applies to the enlarged boat-gallery views. */
img[src$="assets/tobago-cays-aerial.webp"]{filter:brightness(1.02) saturate(0.86) contrast(0.97) !important;}
img[src$="assets/groovy-snorkeling.webp"]{filter:brightness(1.04) saturate(0.92) contrast(0.97) !important;}
img[src$="assets/grenadines-beach.webp"]{filter:brightness(0.98) saturate(0.88) contrast(0.96) !important;}
img[src$="assets/activity-snorkel.webp"]{filter:brightness(1.01) saturate(0.87) contrast(0.97) !important;}
img[src$="assets/walk-palm-path-polished.webp"]{filter:brightness(1.02) saturate(0.91) contrast(0.97) !important;}
img[src$="assets/activity-scuba.webp"]{filter:brightness(1.06) saturate(0.93) contrast(0.98) !important;}
img[src$="assets/activity-kitesurf.webp"]{filter:brightness(1.1) saturate(1.04) contrast(0.97) !important;}
img[src$="assets/sup-over-clear-water.webp"]{filter:brightness(1.16) saturate(0.97) contrast(0.94) !important;}
img[src$="assets/relax-flamingo-original-polished.webp"]{filter:brightness(1.03) saturate(0.91) contrast(0.97) !important;}
img[src$="assets/groovy-prawn-salad-polished.webp"]{filter:brightness(1.01) saturate(0.93) contrast(0.98) !important;}
img[src$="assets/groovy-fruit-platter-polished.webp"]{filter:brightness(1.03) saturate(0.86) contrast(0.98) !important;}
img[src$="assets/monika-colourful-salad.webp"]{filter:brightness(1.0) saturate(0.87) contrast(0.96) !important;}
img[src$="assets/romeo-juliet-rj7.webp"]{filter:brightness(0.95) saturate(0.79) contrast(0.95) !important;}
img[src$="assets/black-boys-bb2-edited.webp"]{filter:brightness(1.06) saturate(0.88) contrast(0.96) !important;}
img[src$="assets/windward-mayreau-guests-polished.webp"]{filter:brightness(1.0) saturate(0.9) contrast(0.97) !important;}
img[src$="assets/tenuta-poolside-terrace.jpg"]{filter:brightness(1.01) saturate(0.85) contrast(0.96) !important;}
img[src$="assets/sparrows-beach-polished.webp"]{filter:brightness(1.0) saturate(0.89) contrast(0.96) !important;}
img[src$="assets/basils-family-evening-polished.webp"]{filter:brightness(1.09) saturate(0.83) contrast(0.94) !important;}
img[src$="assets/shenanigans-evening-toast-polished.webp"]{filter:brightness(1.11) saturate(0.91) contrast(0.95) !important;}
img[src$="assets/paradise-beach-club-sunset-polished.webp"]{filter:brightness(1.05) saturate(0.85) contrast(0.95) !important;}
img[src$="assets/jacks-beach-lunch-polished.webp"]{filter:brightness(1.03) saturate(0.88) contrast(0.96) !important;}
img[src$="assets/groovy-queen-cabin-natural.webp"]{filter:brightness(1.06) saturate(0.91) contrast(0.96) !important;}
img[src$="assets/groovy-twin-cabin.jpeg"]{filter:brightness(1.1) saturate(0.92) contrast(0.95) !important;}
img[src$="assets/groovy-aft-lunch.webp"]{filter:brightness(1.03) saturate(0.89) contrast(0.97) !important;}
img[src$="assets/groovy-forward-lunch-wine.webp"]{filter:brightness(1.0) saturate(0.91) contrast(0.97) !important;}
img[src$="assets/groovy-bow-sunset.webp"]{filter:brightness(1.06) saturate(0.89) contrast(0.95) !important;}
img[src$="assets/groovy-saloon-evening.webp"]{filter:brightness(1.07) saturate(0.9) contrast(0.95) !important;}
img[src$="assets/groovy-galley.webp"]{filter:brightness(1.06) saturate(0.9) contrast(0.96) !important;}
img[src$="assets/groovy-crew-together-natural.webp"]{filter:brightness(1.01) saturate(0.94) contrast(0.98) !important;}
/* Grade only the day-aboard photograph, preserving its readable overlay and text. */
.day-aboard{position:relative;isolation:isolate;background-image:none}
.day-aboard::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(180deg,rgba(4,23,27,.56),rgba(4,23,27,.76)),url('assets/groovy-sunset-day-aboard.webp');background-size:inherit;background-position:inherit;background-repeat:inherit;filter:saturate(.88) brightness(1.03)}

/* Lighter trip explorer, with the stronger dark teal reserved for the final enquiry. */
.journeys{background:var(--sand);color:var(--ink)}
.journeys-head p,.route-head p,.itinerary p,.planner-caveat,.southbound-note,.island-intro{color:var(--muted)}
.route-preview,.itinerary li,.southbound-note,.island-explorer{border-color:var(--line)}
.route-preview .eyebrow,.route-preview .route-label{color:var(--sea)!important}
.island-buttons button{border-color:#799b9b;color:var(--ink)}
.trip-controls,.island-detail{color:white}
.pricing-section{padding:72px 0 0}.charter-pricing{margin:0;padding:clamp(28px,4vw,44px);border:1px solid var(--line);border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(255,255,255,.54));box-shadow:0 18px 44px rgba(8,44,50,.08)}
.pricing-head{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:end}.pricing-head h3{margin:10px 0 0;font-size:clamp(2.1rem,4vw,3.4rem)}.pricing-head p{max-width:650px;margin:0;color:var(--muted);font-size:1.04rem}
.pricing-rates{display:grid;grid-template-columns:1fr 1fr;margin:34px 0 28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pricing-rate{padding:28px 30px}.pricing-rate:first-child{border-right:1px solid var(--line)}.pricing-rate span{display:block;color:var(--ink);font-size:.92rem;font-weight:600;letter-spacing:.02em}.pricing-rate strong{display:block;margin-top:9px;color:var(--sea);font:600 clamp(2rem,4.1vw,3.4rem)/1.05 "Fraunces",serif;letter-spacing:-.025em}
.pricing-note{max-width:780px;margin:0;color:var(--muted);font-size:.95rem;line-height:1.65}.pricing-action{margin-top:28px}.pricing-action .pill{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid var(--night);border-radius:99px;background:var(--night);color:white;font:600 .95rem "DM Sans",sans-serif;cursor:pointer}.pricing-action .pill:hover,.pricing-action .pill:focus-visible{background:var(--sea);border-color:var(--sea)}
.charter-pricing+.island-explorer{margin-top:64px}
.invite{background:var(--night);color:white}
.invite h2,.invite>div>p,.invite .enquiry-box label,.invite .booking-trust{color:white}
.invite .eyebrow,.invite .copy-status{color:var(--aqua)}
.invite .booking-trust{border-color:rgba(255,255,255,.28)}
.invite .enquiry-actions a.pill{background:var(--aqua);color:var(--night);border-color:var(--aqua)}
.invite .enquiry-actions button.pill{background:white;color:var(--ink);border-color:white}

.testimonials{padding:110px 0;background:#f1ece2;color:var(--night);overflow:hidden}.testimonials-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:38px}.testimonials-head h2{margin:10px 0 8px}.testimonials-head p{margin:0;color:var(--muted);font-size:1.06rem}.testimonial-controls{display:flex;gap:10px;flex:0 0 auto}.testimonial-arrow{width:46px;height:46px;border:1px solid rgba(8,44,50,.3);border-radius:50%;background:transparent;color:var(--night);font:500 1.25rem/1 "DM Sans",sans-serif;cursor:pointer;transition:background .2s,color .2s,border-color .2s,opacity .2s}.testimonial-arrow:hover,.testimonial-arrow:focus-visible{background:var(--night);border-color:var(--night);color:white}.testimonial-arrow:disabled{opacity:.3;cursor:default;background:transparent;color:var(--night);border-color:rgba(8,44,50,.3)}.testimonial-viewport{overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:rgba(8,44,50,.34) transparent;padding:2px 0 18px}.testimonial-viewport:focus-visible{outline:2px solid var(--aqua);outline-offset:5px}.testimonial-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);gap:20px}.testimonial-card{scroll-snap-align:start;display:flex;flex-direction:column;min-height:360px;margin:0;padding:34px 30px;background:rgba(255,255,255,.72);border:1px solid rgba(8,44,50,.12);border-radius:5px;box-shadow:0 14px 36px rgba(8,44,50,.06)}.testimonial-card::before{content:"“";height:42px;font:600 4.6rem/.8 "Fraunces",serif;color:var(--sun)}.testimonial-card blockquote{margin:14px 0 28px}.testimonial-card blockquote p{margin:0;font:500 clamp(1.03rem,1.45vw,1.18rem)/1.65 "DM Sans",sans-serif;color:var(--night)}.testimonial-card figcaption{display:flex;flex-direction:column;gap:4px;margin-top:auto;padding-top:18px;border-top:1px solid rgba(8,44,50,.18)}.testimonial-card figcaption strong{font:600 .95rem/1.35 "DM Sans",sans-serif}.testimonial-card figcaption span{color:var(--muted);font-size:.84rem}
@media(max-width:980px) and (min-width:761px){.testimonial-track{grid-auto-columns:calc((100% - 20px)/2)}}
@media(max-width:760px){.testimonials{padding:76px 0}.testimonials-head{align-items:flex-end;margin-bottom:28px}.testimonials-head h2{font-size:clamp(2.55rem,12vw,4.2rem)}.testimonials-head p{max-width:230px}.testimonial-controls{gap:8px}.testimonial-arrow{width:42px;height:42px}.testimonial-track{grid-auto-columns:100%;gap:14px}.testimonial-card{min-height:0;padding:28px 24px}.testimonial-card blockquote p{font-size:1.03rem;line-height:1.6}}

/* Final charter enquiry, footer and long-page controls. */
.trip-controls button.pill{display:inline-flex;align-items:center;justify-content:center;width:100%;margin-top:24px;border:1px solid var(--aqua);background:var(--aqua);color:var(--night);font:600 .9rem "DM Sans",sans-serif;cursor:pointer}
.trip-instruction{margin-top:14px;color:#d9e7e5;font-size:.88rem;line-height:1.55}
.plan-instruction{width:min(720px,100%);margin:22px auto 0!important;color:#d9e7e5}
.enquiry-dialog{width:min(760px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:0;border-radius:12px;background:var(--paper);color:var(--ink);padding:30px;box-shadow:0 24px 80px rgba(3,31,37,.35)}
.enquiry-dialog::backdrop{background:rgba(3,31,37,.78);backdrop-filter:blur(3px)}
.enquiry-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.enquiry-dialog h2{font-size:clamp(2rem,6vw,3.4rem);margin-top:8px}.dialog-intro{margin:20px 0;color:var(--muted)}
.dialog-close,.text-button{font:inherit;color:var(--sea);background:transparent;border:0;padding:8px;cursor:pointer}.dialog-close{border:1px solid var(--line);border-radius:99px;padding:8px 14px}
.charter-enquiry-form{display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.charter-enquiry-form label>span:first-child{display:block;font-weight:600;font-size:.9rem;margin-bottom:6px}.charter-enquiry-form input,.charter-enquiry-form select,.charter-enquiry-form textarea{display:block;width:100%;min-height:48px;padding:11px 12px;border:1px solid #9db1b2;border-radius:6px;background:white;color:var(--ink);font:inherit}.charter-enquiry-form textarea{line-height:1.5;resize:vertical}.charter-enquiry-form input:focus,.charter-enquiry-form select:focus,.charter-enquiry-form textarea:focus{outline:3px solid rgba(68,198,190,.3);border-color:var(--sea)}
.charter-enquiry-form label>small{display:block;margin-top:6px;color:var(--muted);font-size:.78rem}.form-consent{display:grid!important;grid-template-columns:22px 1fr;gap:10px;align-items:start;font-size:.86rem;color:var(--muted)}.form-consent input{width:18px;min-height:18px;margin-top:4px}.form-consent span{font-weight:400!important;margin:0!important}.form-consent a{color:var(--sea)}.form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.form-actions .pill{border:0;background:var(--night);color:white;font:600 1rem "DM Sans",sans-serif;cursor:pointer;min-height:48px}.form-actions .pill:disabled{opacity:.55;cursor:wait}.form-status{min-height:1.6em;color:var(--sea);font-weight:600}.form-status.is-error{color:#a33a32}body.enquiry-open{overflow:hidden}
.footer{padding:46px 0}.footer .footer-grid{display:grid;grid-template-columns:180px minmax(0,1fr) auto;align-items:center;gap:42px}.footer-logo{display:block;width:155px}.footer-logo img{width:100%;height:auto}.footer-copy p{max-width:650px;color:#d9e7e5;font-size:.95rem}.footer-links{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:16px}.footer-links a{color:#b9d0ce;text-decoration:none;font-size:.88rem}.footer-links a:hover,.footer-links a:focus-visible{color:white}.social-link{display:inline-flex;align-items:center;gap:7px}.social-link svg{width:20px;height:20px;fill:currentColor}.social-link svg rect,.social-link svg circle{fill:none;stroke:currentColor;stroke-width:1.8}.social-link svg .social-dot{fill:currentColor;stroke:none}.footer-enquire{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 20px;border:1px solid var(--aqua);border-radius:99px;background:var(--aqua);color:var(--night);font:600 .95rem "DM Sans",sans-serif;text-decoration:none;white-space:nowrap;cursor:pointer}.footer-enquire:hover,.footer-enquire:focus-visible{background:white;border-color:white}
.back-to-top{position:fixed;z-index:7;right:18px;bottom:18px;display:inline-flex;align-items:center;gap:5px;min-width:48px;min-height:42px;padding:8px 12px;border:1px solid rgba(255,255,255,.55);border-radius:99px;background:rgba(8,44,50,.92);color:white;box-shadow:0 8px 24px rgba(3,31,37,.2);font:600 .78rem "DM Sans",sans-serif;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .2s,transform .2s}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:none}.mobile-header-actions{display:flex;align-items:center;gap:8px}.mobile-enquire{display:none}
.privacy-page{background:var(--sand)}.privacy-header{background:var(--night);padding:18px 0}.privacy-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}.privacy-header .wordmark{width:135px}.privacy-back{color:white;text-decoration:none;border:1px solid rgba(255,255,255,.55);border-radius:99px;padding:8px 14px}.privacy-main{padding:70px 20px}.privacy-card{width:min(760px,100%);margin:auto;background:var(--paper);padding:clamp(28px,6vw,64px);border-radius:12px;box-shadow:0 20px 55px rgba(3,31,37,.09)}.privacy-card h1{font:600 clamp(2.8rem,8vw,5rem)/1 "Fraunces",serif;margin:14px 0}.privacy-card h2{font-size:1.55rem;letter-spacing:0;margin:34px 0 10px}.privacy-card p{color:var(--muted)}.privacy-updated{font-size:.9rem}.privacy-cta{display:inline-block;margin-top:36px;padding:12px 19px;border-radius:99px;background:var(--night);color:white;text-decoration:none;font-weight:600}
@media(max-width:900px){.footer .footer-grid{grid-template-columns:150px minmax(0,1fr);gap:28px}.footer-action{grid-column:2}.nav a[href="#reviews"]{display:none}}
@media(max-width:760px){.enquiry-dialog{padding:22px}.form-grid{grid-template-columns:1fr}.footer .footer-grid{grid-template-columns:1fr;gap:24px}.footer-action{grid-column:auto;justify-self:start}.mobile-enquire{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border:1px solid rgba(255,255,255,.65);border-radius:99px;background:transparent;color:white;font:600 .86rem "DM Sans",sans-serif;cursor:pointer}.back-to-top{right:10px;bottom:max(15px,env(safe-area-inset-bottom));padding:8px 10px}.back-to-top span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}body.enquiry-open .back-to-top{display:none}.privacy-page .mobile-enquire{display:none}}
@media(max-width:760px){.pricing-section{padding-top:52px}.pricing-head{grid-template-columns:1fr;gap:18px}.pricing-head{align-items:start}.pricing-rates{grid-template-columns:1fr;margin-top:28px}.pricing-rate{padding:24px 0}.pricing-rate:first-child{border-right:0;border-bottom:1px solid var(--line)}.charter-pricing+.island-explorer{margin-top:48px}}
@media(max-width:420px){.enquiry-dialog-head{display:block}.dialog-close{margin-top:16px}.footer-links{gap:14px}.footer-copy p{font-size:.9rem}}
@media(max-width:480px){.charter-pricing{padding:24px 20px}.pricing-action .pill{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.back-to-top{transition:none}}
