/* Approved composition, integrated in Build 11. */
.film-toolbar{bottom:18px}
.film-caption:before,.film-caption:after{display:none!important;content:none!important;background:none!important}
.film-caption,.reef-caption{background:none!important;box-shadow:none!important;backdrop-filter:none!important;filter:none!important;font-size:clamp(30px,3vw,44px);line-height:1.18;letter-spacing:-.035em;max-width:11ch;text-shadow:0 1px 2px #082533;-webkit-text-stroke:.5px #0e2a3a;paint-order:stroke fill;color:white;left:7%;top:12%}
.reef-caption{max-width:15ch;top:10%;font-size:clamp(29px,2.8vw,41px)}
/* Continuous composition after the cinematic opening. */
.editorial-site .p-space{scroll-margin-top:100px}
.editorial-site .p-space h2{font-size:clamp(42px,4.6vw,66px);line-height:1.12;letter-spacing:-.045em;font-weight:400}
.editorial-site .p-space h3{font-weight:400}
.editorial-site .p-space .eyebrow{font-size:11px;letter-spacing:.1em;margin-bottom:25px}
.p-selection{padding:96px 0 70px}
.p-opening{display:grid;grid-template-columns:1.6fr 1fr;align-items:end;gap:12%;margin-bottom:60px}
.p-opening>p{max-width:30ch;font-size:18px;line-height:1.7;padding-bottom:4px}
.p-discovery{display:grid;grid-template-columns:1.8fr 1fr;gap:8%;align-items:center}
.p-landscape{min-width:0;position:relative}
.p-landscape img{width:100%;height:550px;object-fit:cover;object-position:48% 70%}
.p-landscape figcaption,.p-portrait figcaption{font-size:11px;line-height:1.6;color:var(--muted);margin-top:14px}
.p-services article+article{margin-top:44px}
.p-services h3{font-size:30px;margin-bottom:16px;letter-spacing:-.035em}
.p-services p{font-size:16px;max-width:35ch;line-height:1.8}
.p-services .p-separate{font-size:13px;color:var(--muted);margin-top:18px}
.p-services .booking-details{font-size:13px;margin-top:12px}
.p-services .booking-details summary{min-height:44px;cursor:pointer;line-height:1.6;padding-block:10px}
.p-services .booking-details p{font-size:13px;line-height:1.75;padding-top:12px}
.p-example{margin-top:88px;padding:44px 0 0;border-top:1px solid var(--line)}
.p-example-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:36px}
.p-example-heading .eyebrow{font-size:10px;margin-bottom:18px}
.p-example-heading h3{font-size:32px;line-height:1.25}
.p-example-heading>p{font-size:14px;max-width:40ch;line-height:1.75}
.p-example-heading small{display:block;font-size:11px;color:var(--muted);margin-top:12px}
.p-options{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:7%}
.p-options article{padding-top:26px;border-top:1px solid var(--line)}
.p-options .p-chosen{border-top:2px solid var(--teal);padding-top:25px}
.p-option-label{display:block;font-size:11px;margin-bottom:18px;color:var(--muted)}
.p-chosen .p-option-label{font-weight:700;color:var(--teal)}
.p-options h4{font-size:27px;margin-bottom:20px}
.p-options ul{list-style:none;padding:0;margin:0;display:grid;gap:7px}
.p-options li{font-size:14px;line-height:1.6}
.p-options article>p{font-size:12px;color:var(--muted);margin-top:18px}
.p-reason{font-size:14px;line-height:1.8;max-width:84ch;margin-top:36px;color:var(--muted)}
.p-reason strong{color:var(--ink);margin-right:6px}
.p-personal{padding:150px 0 160px}
.p-personal-layout{max-width:1100px;display:grid;grid-template-columns:1.35fr .9fr;gap:13%;align-items:center}
.p-personal-copy>p{font-size:16px;color:var(--muted);line-height:1.85;max-width:43ch;margin-top:25px}
.p-personal-copy .p-personal-lead{font-size:20px;color:var(--ink);line-height:1.7;margin-top:32px}
.editorial-site .p-personal h2{font-size:clamp(40px,3.8vw,56px)}
.p-personal-copy .p-signature{font-size:14px;color:var(--ink);font-weight:700;margin-top:34px}
.p-signature span{display:block;font-weight:400;font-size:12px;margin-top:3px}
.p-portrait{margin-top:65px;min-width:0;max-width:390px}
.p-portrait img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:60% center}
.p-portrait figcaption{max-width:33ch}
.p-offer{padding:20px 0 130px}
.p-offer-surface{background:var(--ink);color:#fff;padding:72px 76px 42px}
.p-offer-surface>header{margin-bottom:54px}
.editorial-site .p-offer h2{font-size:clamp(40px,4vw,58px)}
.p-offer-surface .eyebrow{color:#c1d4da}
.p-inclusions{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:7%;padding:0;margin:0}
.p-inclusions h3{font-size:22px;line-height:1.4;letter-spacing:-.025em;margin-bottom:12px}
.p-inclusions p{font-size:15px;color:#c1d4da;line-height:1.8;max-width:26ch}
.p-booking-row{border-top:1px solid #49616e;margin-top:44px;padding-top:30px;display:flex;justify-content:space-between;align-items:start;gap:36px}
.p-investment>p{font-size:36px;line-height:1.3;letter-spacing:-.025em;font-weight:400}
.p-investment span{display:block;font-size:12px;letter-spacing:0;color:#c1d4da;margin-top:10px}
.p-inquiry{min-width:300px}
.p-inquiry .button{font-size:13px;min-height:56px;padding:18px 26px;border-radius:8px}
.p-inquiry>p{font-size:11px;line-height:1.7;color:#c1d4da;margin-top:12px}
.p-delivery{font-size:12px;line-height:1.75;color:#c1d4da;margin-top:32px;max-width:80ch}
.p-after-offer{display:grid;grid-template-columns:1.4fr 1fr;gap:15%;padding:66px 76px 0}
.p-after-offer h3{font-size:26px;margin-bottom:30px}
.p-process ol{list-style:none;display:grid;gap:24px;padding:0;margin:0}
.p-process li{display:grid;grid-template-columns:25px 1fr;gap:20px}
.p-process li>span{font-size:11px;line-height:2.4;color:var(--teal)}
.p-process h4{font-size:17px;line-height:1.5;margin-bottom:3px}
.p-process p,.p-refund>p{font-size:14px;line-height:1.8;color:var(--muted);max-width:40ch}
.p-refund details{margin-top:18px;font-size:13px;line-height:1.8}
.p-refund summary{padding-block:12px;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:5px}
.p-refund details p{font-size:13px;color:var(--muted);line-height:1.8;margin-top:12px}
/* Keep the coast and its existing interaction as the next large visual moment. */
.editorial-site .chapter-coast{padding-top:55px}
.editorial-site .chapter-coast>.section-heading{margin-bottom:66px}
.editorial-site .faq{display:block;width:min(calc(100% - var(--gutter)*2),820px);padding-block:140px 160px}
.editorial-site .faq>div:first-child{margin-bottom:46px;text-align:left}
.editorial-site .faq h2{font-size:48px}
.editorial-site .faq summary{font-size:17px;line-height:1.6;padding-block:25px}
.editorial-site .faq details p{font-size:15px;line-height:1.8}
.editorial-site .closing{min-height:680px}
.editorial-site .closing h2{font-size:clamp(50px,5.8vw,84px);max-width:12ch}
/* One-time, restrained entrances. All content is visible without script or motion. */
.motion .p-animate{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.motion .p-animate.p-inview{opacity:1;transform:none}
.motion .p-image-reveal img{clip-path:inset(0 0 5% 0);transition:clip-path 1s cubic-bezier(.2,.7,.2,1)}
.motion .p-image-reveal.p-inview img{clip-path:inset(0)}
@media(min-width:721px) and (max-width:1050px){
 .p-opening{gap:8%;grid-template-columns:1.3fr 1fr}.p-opening>p{font-size:16px}
 .p-discovery{grid-template-columns:1.25fr 1fr;gap:7%}.p-landscape img{height:530px}
 .p-personal-layout{gap:8%;grid-template-columns:1.2fr .9fr}.p-personal-copy .p-personal-lead{font-size:18px}
 .p-offer-surface{padding:50px 40px 36px}.p-inclusions{gap:5%}.p-inclusions h3{font-size:20px}
 .p-after-offer{padding:54px 30px 0;gap:9%}.p-inquiry{min-width:0}
}
@media(max-width:720px){
 .film-toolbar{bottom:18px}.film-caption,.reef-caption{left:8%;top:8%;font-size:28px;line-height:1.2;max-width:13ch}.reef-caption{font-size:27px;max-width:15ch}
 .editorial-site .p-space h2{font-size:38px;line-height:1.16}
 .p-selection{padding:70px 0 36px}.p-opening{display:block;margin-bottom:34px}.p-opening>p{margin-top:24px;font-size:17px;max-width:30ch}
 .p-discovery{display:block}.p-landscape img{height:360px;object-position:46% center}.p-landscape figcaption{font-size:10px;max-width:33ch}
 .p-services{margin-top:40px}.p-services article+article{margin-top:32px}.p-services h3{font-size:27px;margin-bottom:13px}.p-services p{font-size:16px}
 .p-services .p-separate,.p-services .booking-details{font-size:13px}
 .p-example{margin-top:62px;padding-top:30px}.p-example-heading{display:block;margin-bottom:24px}.p-example-heading h3{font-size:29px}.p-example-heading>p{font-size:15px;margin-top:20px}
 .p-options{grid-template-columns:1fr;gap:30px}.p-options article{padding-top:22px}.p-options .p-chosen{padding-top:21px}.p-option-label{font-size:12px;margin-bottom:14px}.p-options h4{font-size:26px;margin-bottom:16px}.p-options li{font-size:16px}.p-options article>p{font-size:13px;margin-top:14px}
 .p-reason{font-size:15px;margin-top:30px}
 .p-personal{padding:72px 0 100px}.p-personal-layout{display:flex;flex-direction:column;align-items:start;gap:36px}
 .p-personal-copy .p-personal-lead{font-size:19px;margin-top:25px}.p-personal-copy>p{font-size:16px}.p-portrait{width:85%;max-width:320px;margin:0 0 0 auto}.p-portrait figcaption{font-size:10px}
 .p-offer{padding:0 0 80px}.p-offer>.wrap{width:100%}
 .p-offer-surface{padding:48px var(--gutter) 36px}.p-offer-surface>header{margin-bottom:34px}
 .p-inclusions{grid-template-columns:1fr;gap:26px}.p-inclusions h3{font-size:22px;margin-bottom:8px}.p-inclusions p{font-size:16px;max-width:29ch}
 .p-booking-row{display:block;margin-top:34px;padding-top:26px}.p-investment>p{font-size:34px}.p-investment span{font-size:13px}
 .p-inquiry{margin-top:26px;min-width:0}.p-inquiry .button{font-size:12px;padding:18px 20px;max-width:100%}.p-inquiry>p{font-size:12px;max-width:32ch}
 .p-delivery{font-size:13px;margin-top:25px;max-width:36ch}
 .p-after-offer{display:block;padding:44px var(--gutter) 0}.p-after-offer h3{font-size:27px;margin-bottom:24px}.p-process p,.p-refund>p{font-size:16px}.p-process h4{font-size:19px}
 .p-refund{margin-top:48px}.p-refund summary,.p-refund details p{font-size:14px}
 .editorial-site .chapter-coast{padding-top:36px}.editorial-site .chapter-coast>.section-heading{margin-bottom:40px}
 .editorial-site .faq{padding-block:85px 100px}.editorial-site .faq h2{font-size:36px}.editorial-site .faq summary{font-size:16px}.editorial-site .faq details p{font-size:16px}
 .editorial-site .closing{min-height:580px}.editorial-site .closing h2{font-size:54px}
}
@media(max-width:360px){.editorial-site .p-space h2{font-size:34px}.p-landscape img{height:310px}.film-caption,.reef-caption{font-size:25px}.p-inquiry .button{font-size:11px;padding-inline:17px}}
@media(prefers-reduced-motion:reduce){
.motion:not(.site-motion-opt-in) .p-animate{opacity:1;transform:none;transition:none}
.motion:not(.site-motion-opt-in) .p-image-reveal img{clip-path:none;transition:none}}
