body{color:#fff;background:#123d4b url('hawaii-coast.jpg') center/cover fixed}body:before{content:'';position:fixed;inset:0;pointer-events:none;background:#052b3c77;z-index:-1}header{background:transparent;color:#fff;height:105px}header .brand{font-size:32px}header nav>a:not(.button):hover{color:#e8efdf}header .button,.button{background:#ffffffeb;color:#143b49;border-radius:40px;border:1px solid #ffffff80}.button:hover{background:#e5eee7;color:#143b49}.button.gold{background:#fff;color:#143b49}.hero{height:calc(100svh - 105px);min-height:550px;border-radius:0 0 35px 35px}.hero-shade{background:linear-gradient(90deg,#062a3a70,#062a3a10),linear-gradient(0deg,#05253699,transparent)}.hero .eyebrow{color:#fff}.hero h1{font-weight:600}.hero h1 em{font-family:inherit;font-style:normal;color:white}.hero-content{padding-top:100px;max-width:1100px}.hero .intro{color:#f2f7f4}.hero-bottom{border-color:#ffffff60}.island-strip{width:90%;margin:30px auto 0;border:1px solid #ffffff65;border-radius:35px;background:#ffffff18;backdrop-filter:blur(18px);padding:20px 30px}.island-strip i{color:#e9f3d3}.section,.destinations{width:90%;max-width:1440px;margin:30px auto;padding:55px 45px;border:1px solid #ffffff65;border-radius:30px;background:linear-gradient(135deg,#ffffff24,#ffffff10);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 15px 50px #001f2d18}.section-head>p,.approach-copy>p:not(.eyebrow),.group p,.trade p:not(.eyebrow),.service-row p,.steps p,.booking-heading>p:not(.eyebrow),.faq details p{color:#edf4f1}.eyebrow,.destinations .eyebrow{color:#e6efd7}h2 em{font-family:inherit;font-style:normal;color:#fff}.group-grid{border-color:#ffffff50;gap:14px;border:0}.group,.group+.group,.group:nth-child(3),.group:nth-child(4){border:1px solid #ffffff65;border-radius:25px;background:#ffffff10;padding:25px 20px}.group:hover{background:#ffffff2e}.number{color:#e2ebd7}.trade{border:1px solid #ffffff65;border-radius:25px;background:#ffffff12;padding:30px}.text-link{border-color:#ffffff80}.approach{background:#ffffff18}.approach-photo{height:570px}.approach-photo img{border-radius:22px}.service-row{border-color:#ffffff50}.service-row>span{color:#e5efcf}.destinations{background:#ffffff15}.destinations h2 em{font-family:inherit;font-style:normal;color:white}.destinations .section-head>p{color:#edf4f1}.island-layout>img{border-radius:22px}.island-list button{color:#fff;border-color:#ffffff55;border-radius:0}.island-list button[aria-pressed=true]{color:#e5f2ca}.island-list button span:first-child{color:#e5efcf}#island-info p{color:#e8f1ed}.steps article{border-color:#ffffff60}.steps article>span{color:#e9f3d5}.booking{background:#ffffff18}.booking h2 em{font-family:inherit;font-style:normal;color:#fff}.calendar{border-radius:23px;overflow:hidden;border:1px solid #ffffff90;padding:10px}#group-context{color:#e6efd7!important}.faq{max-width:1100px}.faq details,.faq details:last-child{border-color:#ffffff50}.faq summary:after{color:#f1f6e4}footer{background:#082f3b66;border-top:1px solid #ffffff40;margin-top:35px;border-radius:30px 30px 0 0;backdrop-filter:blur(20px)}.footer-top>p,.footer-top>div span,.footer-bottom{color:#e0ebe6}.menu{color:white;border-color:#ffffff80;background:#ffffff15;border-radius:30px}.section a:focus-visible,.section button:focus-visible,.destinations button:focus-visible,header a:focus-visible{outline-color:#edf4ce}.destinations .island-layout>img{height:485px}@media(max-width:1000px){.section,.destinations{padding:40px 30px}.group,.group+.group{padding:23px 15px}.group-grid{gap:10px}.approach-photo{height:620px}}@media(max-width:760px){body{background-image:url('hawaii-coast-wide.jpg')}header{height:85px}header .brand{font-size:25px}header nav{top:85px;background:#174653ed;backdrop-filter:blur(20px);border-bottom:1px solid #ffffff55;border-radius:0 0 25px 25px}.hero{height:calc(100svh - 85px);min-height:570px}.hero-content{padding-top:85px}.hero>img{content:url('hawaii-coast-wide.jpg')}.island-strip{padding:20px;border-radius:25px}.section,.destinations{width:88%;padding:32px 22px;margin:24px auto;border-radius:25px}.group-grid{gap:12px}.group,.group+.group,.group:nth-child(3),.group:nth-child(4){padding:22px 15px;border:1px solid #ffffff65;border-radius:22px}.group h3{font-size:21px}.group-link{font-size:9px}.trade{padding:24px 20px;border-radius:22px}.approach-photo{height:350px}.destinations .island-layout>img{height:290px}.island-strip p{font-size:17px}.section h2,.destinations h2{font-size:34px}.calendar{border-radius:18px;margin-left:-4%;margin-right:-4%}.footer-top>p{color:#e0ebe6}.steps{gap:20px}.contact-line{font-size:11px}.hero h1{font-size:48px}.faq summary{font-size:13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Comfortable spacing across the Explore headings. */
.section h2,.destinations h2{letter-spacing:0;word-spacing:.06em;line-height:1.25}.section-head{align-items:flex-start;gap:45px}.section-head>div{min-width:0}.section-head>p{flex-shrink:0;padding-top:36px}.destinations .section-head>div{max-width:610px}.island-list button{justify-content:flex-start;gap:18px;text-align:left;line-height:1.35;padding:18px 10px;font-size:27px}.island-list button span:last-child{margin:0;font-size:inherit}.island-icon{width:48px;height:42px;flex-shrink:0;fill:#ffffff24;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round}.island-list button[aria-pressed=true]{background:#ffffff12;border-radius:15px}.steps article>span{font-family:'Urbanist',sans-serif;font-size:34px;font-weight:500;letter-spacing:1px}.island-strip p{font-family:'Urbanist',sans-serif;letter-spacing:.5px}.booking-heading{max-width:850px}.booking-heading h2{font-size:clamp(32px,3.4vw,49px);line-height:1.3;letter-spacing:0;word-spacing:.06em}.booking-heading>p:not(.eyebrow){max-width:610px;line-height:1.95;margin-bottom:28px}.booking-heading .button{margin-top:5px}.approach-photo img{object-position:center}.island-layout>img{object-position:center 60%}@media(max-width:1000px){.section-head>p{max-width:290px}.island-list button{font-size:24px}}@media(max-width:760px){.section h2,.destinations h2{font-size:32px;line-height:1.3;letter-spacing:0;word-spacing:.04em}.section-head>p{padding-top:0;max-width:none}.island-list button{font-size:25px;gap:15px;padding:16px 7px}.island-icon{width:45px;height:40px}.booking-heading h2{font-size:32px}.steps article>span{font-size:31px}.booking-heading>p:not(.eyebrow){font-size:13px}}

.brand-credentials{display:flex;flex-wrap:wrap;gap:8px 18px;font:11px/1.7 "DM Sans",sans-serif;letter-spacing:.02em;color:#e4eee7}.brand-credentials span{display:block}.footer-top .brand-credentials{grid-column:1/-1;border-top:1px solid #ffffff35;padding-top:18px}.service-footer .brand-credentials{flex-direction:column;gap:5px;margin-top:18px}#island-photo{filter:saturate(.85);transition:opacity .2s ease}#island-photo.is-loading{opacity:.65}@media(prefers-reduced-motion:reduce){#island-photo{transition:none}}

.footer-story>p{margin:0 0 16px;font-size:13px}.footer-top .footer-story{max-width:310px}.footer-story .brand-credentials{font-size:11px;gap:5px}@media(max-width:600px){.footer-top .footer-story{margin:25px 0}}

/* Explore refinements: square hero, island names, and handheld carousel. */
.hero{border-radius:0}
.island-strip{flex-wrap:wrap}.island-strip .island-names{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin:0;line-height:1.4}.island-name{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.island-name .island-icon{width:29px;height:26px;fill:#ffffff12;stroke-width:1.6}
.group-swipe-hint{display:none}.approach-photo img{object-position:42% center}
@media(max-width:900px){
 .group-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;gap:16px;padding:3px 3px 15px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#dce8d3 #ffffff12}
 .group-grid>.group{flex:0 0 80%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;padding:26px 24px}
 .group-grid>.group h3{font-size:27px}.group-grid>.group p{font-size:14px;line-height:1.8}.group-grid>.group .group-link{font-size:12px}
 .group-swipe-hint{display:block;margin:12px 3px 0;font-size:11px;color:#e4eee7;letter-spacing:.025em}
 .island-strip .island-names{gap:12px 18px;justify-content:center}.island-strip{justify-content:center}
}
@media(max-width:480px){.island-strip .island-names{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;font-size:16px;text-align:left}.island-name .island-icon{width:25px;height:23px}.group-grid>.group{flex-basis:88%;padding:24px 20px}.group-grid>.group h3{font-size:25px}}

/* Preserve the helicopter and volcanic landscape in the supplied wide composition. */
#island-photo.is-helicopter{aspect-ratio:4/3;height:auto;object-fit:contain;align-self:center}

/* Full Molokini composition, including boats and source credit. */
#island-photo.is-molokini{width:100%;height:auto;aspect-ratio:1122/909;object-fit:cover;object-position:center;filter:none}

/* Supporting photography stays within the existing glass service panels. */
.group .service-image{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:16px;margin:0 0 24px;background:#153b48}
.trade:has(.service-image){display:grid;grid-template-columns:minmax(160px,.7fr) minmax(0,2fr);gap:16px 28px;align-items:center}
.trade>.service-image{grid-column:1;grid-row:1/3;display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:17px;background:#153b48}
.trade:has(.service-image)>div{grid-column:2;min-width:0}
.trade:has(.service-image)>.text-link{grid-column:2;justify-self:start;margin:0}
footer .footer-top{flex-wrap:wrap}
footer .footer-top>.brand{font-size:40px;letter-spacing:6px}
footer .footer-top>.brand span{font-size:8px;letter-spacing:1.3px;margin-top:10px}
@media(max-width:900px){
 .island-strip{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}
 .island-strip>span{width:100%;text-align:center}
 .island-strip .island-names{justify-content:center}
}
@media(max-width:760px){
 .trade:has(.service-image){display:flex;flex-direction:column;align-items:stretch;gap:20px}
 .trade>.service-image{aspect-ratio:16/9}
 .trade:has(.service-image)>.text-link{align-self:flex-start;margin:0}
}
@media(max-width:480px){
 .island-strip .island-names{grid-template-columns:auto auto;justify-content:center;text-align:center;gap:14px 20px}
 .island-name{justify-content:center}
}

/* Follow the program from its purpose and setting through the final transfer. */
.process .steps{margin-top:35px}
.program-journey .trade{margin-top:30px}
.program-journey .trade p:not(.eyebrow){font-size:14px;line-height:1.9}
.program-stage .service-image{aspect-ratio:4/3}
.partner-section>.trade{margin:0}
.group-context{font-size:14px;margin:28px 0 0;color:#edf4f1}
.group-context a{text-decoration:underline;text-underline-offset:4px}
.island-strip .island-name{min-height:44px}
.island-strip a:hover{color:#e6efd7}
#island-learn-more{display:inline-flex;min-height:44px;align-items:center;font-size:15px;margin-top:18px;border-bottom:1px solid #ffffff80}
.island-page-links{display:flex;position:static;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:30px;padding:0;background:transparent;box-shadow:none;font-size:15px}
.island-page-links span{color:#e0ebe7;font-size:13px}
.island-page-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px}
@media(max-width:760px){.program-stage .service-image{aspect-ratio:auto}.program-journey .section-head>p{font-size:14px}.island-page-links{gap:8px 18px}.island-page-links span{width:100%}}

@media(min-width:901px){.group-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
