/* Candidate 01: photographic scale, restrained type, alternating tonal fields. */
.has-home-hero{background:#121619;color:#f0f2f1;--pilothouse-color-link:#f0f2f1;--pilothouse-color-link-hover:#b9d4df;--pilothouse-color-focus:#b9d4df}
.has-home-hero .site-main{padding:0}.has-home-hero .wrap{max-width:1360px;padding-inline:clamp(24px,5vw,80px)}
.has-home-hero h1,.has-home-hero h2{font-weight:500;letter-spacing:-.055em;line-height:1.05}.has-home-hero h2{font-size:clamp(38px,4.7vw,66px)}
.has-home-hero h2 span{color:#8f9da6}.has-home-hero p{line-height:1.65}.ph-eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#b8c5cc;margin-bottom:24px}
.ph-section{padding-block:110px}.ph-hero{background:#121619;overflow:hidden}.ph-hero__intro{text-align:center;padding-top:70px;position:relative;z-index:2}.ph-hero h1{font-size:clamp(48px,6.4vw,90px);margin:0 0 25px}.ph-hero h1 span{color:#c6cfd4}.ph-hero__summary{font-size:17px;color:#c6cbd0;max-width:700px;margin:0 auto 26px}.ph-actions{display:flex;justify-content:center;align-items:center;gap:30px}.ph-button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:13px 23px;background:#dce7ec;color:#14212a!important;text-decoration:none;font-size:14px;font-weight:600;min-height:48px}.ph-button:hover{background:#fff}.ph-text-link{display:inline-flex;align-items:center;gap:22px;text-decoration:none;font-size:14px;padding-block:12px;border-bottom:1px solid #778790}.ph-text-link:hover{border-color:currentColor}
.ph-hero__photo{max-width:1600px;margin:20px auto 0;position:relative;height:clamp(370px,48vw,690px)}.ph-hero__photo:after{content:"";position:absolute;inset:0;background:linear-gradient(#121619 0%,transparent 26%,transparent 85%,#121619 100%);pointer-events:none}.ph-hero__photo img{width:100%;height:100%;object-fit:cover;object-position:center 64%;display:block}.ph-hero__caption{display:flex;justify-content:space-between;gap:24px;padding-block:24px 35px;font-size:12px;color:#b6c1c8}.ph-hero__caption a{color:inherit;text-decoration:none}.ph-hero__caption a:hover{text-decoration:underline}
.ph-credentials{background:#20282e;border-block:1px solid #354047}.ph-credentials .wrap{display:grid;grid-template-columns:1fr 1.1fr 1.1fr;gap:35px;padding-block:23.2px}.ph-credentials p{margin:0}.ph-credentials strong{font-weight:500;font-size:15px}.ph-credentials span{display:block;font-size:12px;color:#bbc5cb;margin-top:3px}
.ph-section-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:end;margin-bottom:64px}.ph-section-heading p:not(.ph-eyebrow){color:#bac2c7;font-size:17px;max-width:470px}.ph-services{background:#15191c}.ph-services__grid{display:grid;grid-template-columns:1fr 1fr;column-gap:64px}.ph-service{display:grid;grid-template-columns:22px 1fr 20px;gap:20px;border-top:1px solid #485158;padding:32px 0;text-decoration:none}.ph-service__number{font-size:11px;color:#99acb8;padding-top:8px}.ph-service h3{font-size:25px;font-weight:500;line-height:1.2;margin-bottom:14px}.ph-service p{font-size:15px;color:#bac2c7;margin:0;max-width:430px}.ph-service__arrow{font-size:23px}.ph-service:hover h3{text-decoration:underline;text-underline-offset:5px}
.ph-approach{position:relative;min-height:730px;display:flex;align-items:flex-end;overflow:hidden;background:#11171b}.ph-approach__visual{position:absolute;inset:0;overflow:hidden}.ph-parallax-image{position:absolute;inset:-50px 0;will-change:transform}.ph-parallax-image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.ph-approach:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,11,16,.85),rgba(4,11,16,.25) 75%),linear-gradient(0deg,rgba(4,11,16,.8),transparent 75%);pointer-events:none}.ph-approach__copy{position:relative;z-index:1;width:100%;padding-block:90px}.ph-approach__copy h2{max-width:740px}.ph-approach__copy>p:not(.ph-eyebrow){max-width:490px;color:#e0e5e8;margin-top:25px}
.ph-detail{background:#20282e}.ph-detail__grid{display:grid;grid-template-columns:.85fr 1.2fr;align-items:center;gap:85px}.ph-detail h2{margin-bottom:28px}.ph-detail p:not(.ph-eyebrow){font-size:16px;color:#c0c9cf}.ph-detail figure{margin:0}.ph-detail img{width:100%;display:block;aspect-ratio:1.06;object-fit:cover}.ph-detail figcaption{color:#b8c5cc;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding-top:15px}
.ph-report{background:#edf0ef;color:#1b242b;--pilothouse-color-focus:#22596e}.ph-report .ph-eyebrow{color:#4a626e}.ph-report .ph-section-heading p:not(.ph-eyebrow){color:#4a565e}.ph-report__layout{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:start}.ph-report figure{margin:0}.ph-report img{width:100%;aspect-ratio:1.15;object-fit:cover;display:block}.ph-report figcaption{font-size:11px;color:#5a656c;padding-top:12px}.ph-report dl{margin:0}.ph-report dl>div{border-top:1px solid #bbc4c8;padding:21px 0}.ph-report dt{font-size:21px;letter-spacing:-.025em;font-weight:500}.ph-report dd{margin:8px 0 0;color:#4a565e;font-size:15px}.ph-report__note{font-size:12px;color:#54616a;border-left:2px solid #8da3af;padding-left:16px;margin-top:22px}
.ph-guides{background:#dce2e3;color:#25333e;border-top:1px solid #bfcacc;padding-block:50px}.ph-guides .wrap{display:grid;grid-template-columns:1fr 1.1fr;column-gap:80px;align-items:center}.ph-guides .ph-eyebrow{grid-column:1/-1;color:#48606c;margin-bottom:15px}.has-home-hero .ph-guides h2{font-size:32px}.ph-guides p:not(.ph-eyebrow){font-size:15px;margin:0;color:#4a5c66}.ph-status{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#48606c;margin-top:16px}
.ph-inquiry{background:#182127}.ph-inquiry__grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.ph-inquiry h2{margin-bottom:27px}.ph-inquiry p:not(.ph-eyebrow){max-width:530px;color:#c0cbd1}.ph-inquiry .ph-button{margin-top:14px}.ph-contact{border-left:1px solid #46525a;padding-left:50px}.ph-contact p{font-size:20px;color:#f0f2f1!important}.ph-contact p span{display:block;font-size:12px;color:#b6c3cb;margin-top:5px}.ph-contact a{display:block;width:fit-content;font-size:15px;text-underline-offset:5px;overflow-wrap:anywhere}.ph-contact a.ph-contact__phone{font-size:32px;text-decoration:none;margin-bottom:16px;letter-spacing:-.03em}.ph-contact .ph-contact__location{font-size:13px!important;color:#b6c3cb!important;margin-top:30px;margin-bottom:0}
@media(max-width:899px){.ph-section{padding-block:72px}.ph-section-heading{gap:40px}.ph-detail__grid,.ph-report__layout{gap:40px}.ph-inquiry__grid{gap:35px}.ph-contact{padding-left:25px}.ph-services__grid{column-gap:30px}.ph-approach{min-height:640px}}
@media(max-width:650px){.ph-hero__intro{padding-top:46px}.ph-eyebrow{font-size:10px;letter-spacing:.11em;margin-bottom:20px}.ph-hero h1{font-size:clamp(40px,10vw,64px)}.ph-hero__summary{font-size:15px}.ph-desktop-break{display:none}.ph-actions{gap:20px;flex-wrap:wrap}.ph-button{gap:25px}.ph-hero__photo{height:auto;margin-top:28px}.ph-hero__photo img{height:auto;object-fit:contain}.ph-hero__photo:after{background:linear-gradient(#121619,transparent 18%,transparent 85%,#121619)}.ph-hero__caption{display:block;padding-block:12px 26px}.ph-hero__caption span{display:block}.ph-hero__caption a{display:inline-block;padding-top:12px}.ph-hero__caption a span{display:inline}.ph-credentials .wrap{grid-template-columns:1fr;gap:19px;padding-block:21.6px}.ph-credentials p{border-bottom:1px solid #3b464e;padding-bottom:17px}.ph-credentials p:last-child{border:0;padding-bottom:0}.ph-section{padding-block:60px}.ph-section-heading,.ph-detail__grid,.ph-report__layout,.ph-inquiry__grid{grid-template-columns:1fr;gap:28px}.ph-section-heading{margin-bottom:32px}.ph-section-heading p:not(.ph-eyebrow){font-size:16px;margin:0}.ph-services__grid{grid-template-columns:1fr}.ph-service{padding-block:26px;gap:14px}.ph-service h3{font-size:23px}.ph-approach{min-height:650px;display:block}.ph-approach__visual{position:relative;height:300px}.ph-parallax-image{inset:0;will-change:auto}.ph-approach:after{display:none}.ph-approach__copy{padding-block:38px 50px}.ph-approach__copy h2{font-size:38px}.ph-approach__copy>p:not(.ph-eyebrow){font-size:16px}.ph-detail img{aspect-ratio:1.3}.ph-report img{aspect-ratio:1.3}.ph-report__layout{gap:32px}.ph-report__note{margin-bottom:0}.ph-guides .wrap{grid-template-columns:1fr;gap:10px}.ph-guides .ph-eyebrow{margin-bottom:5px}.ph-guides h2{margin-bottom:7px}.ph-status{margin-top:8px}.ph-contact{border-left:0;border-top:1px solid #46525a;padding:30px 0 0;margin-top:15px}.ph-contact a.ph-contact__phone{font-size:30px}}
@media(prefers-reduced-motion:reduce){.ph-parallax-image{transform:none!important;will-change:auto}}
/* Keep the opening photograph prominent on larger screens. */
@media(min-width:900px){.ph-hero__intro{padding-top:44px}.ph-hero h1{font-size:clamp(56px,5vw,72px);margin-bottom:20px}.ph-hero .ph-eyebrow{margin-bottom:18px}.ph-hero__summary{margin-bottom:20px}.ph-hero__photo{margin-top:10px;height:clamp(500px,44vw,640px)}}

/* Yacht presentation inspired by the PYXIS image / identity / introduction sequence. */
.has-home-hero .home-hero{background:#0b0c0e;color:#f5f5f3;overflow:hidden}
.home-hero__stage{position:relative;isolation:isolate;height:clamp(360px,49vw,650px);background:#0b0c0e}
.home-hero__media{position:absolute;top:-2%;left:50%;width:min(1100px,96%);margin:0;transform:translateX(-50%);mix-blend-mode:normal}
.home-hero__media picture{display:block;mask-image:linear-gradient(0deg,transparent 20%,#000 28%,#000 85%,transparent 100%);-webkit-mask-image:linear-gradient(0deg,transparent 20%,#000 28%,#000 85%,transparent 100%)}
.home-hero__image{display:block;width:100%;height:auto;mask-image:linear-gradient(90deg,transparent,#000 9%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 92%,transparent)}
.home-hero__identity{position:absolute;bottom:0;left:0;right:0;padding-bottom:32px}
.has-home-hero .home-hero__brand{margin:0;font-size:clamp(48px,6.8vw,92px);line-height:.95;font-weight:600;letter-spacing:-.055em;color:#f7f7f5}
.home-hero__brand span{display:block;font-size:clamp(16px,2vw,25px);font-weight:400;letter-spacing:.19em;line-height:1.4;margin-top:12px;text-transform:uppercase;color:#b8babc}
.has-home-hero .home-hero__intro{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(40px,7vw,110px);padding-block:40px 64px;position:relative}
.home-hero__intro:before{content:"";position:absolute;top:0;left:clamp(24px,5vw,80px);right:clamp(24px,5vw,80px);height:1px;background:#343638}
.has-home-hero .home-hero__title{margin:0;font-size:clamp(32px,3.7vw,52px);line-height:1.08;font-weight:550;letter-spacing:-.04em;color:#f7f7f5}
.has-home-hero .home-hero__lead{margin:0 0 24px;max-width:440px;font-size:clamp(17px,1.5vw,20px);line-height:1.6;color:#bec0c2}
.home-hero__actions{display:flex;flex-wrap:wrap;gap:12px 28px}
.home-hero__actions a{display:inline-flex;gap:14px;align-items:center;min-height:44px;color:#f5f5f3;font-size:14px;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#696d70}
.home-hero__actions a:hover{color:#fff;text-decoration-color:#fff}
.home-hero__actions a:focus-visible{outline:2px solid #fff;outline-offset:5px}
@media(max-width:650px){.home-hero__stage{height:350px}.home-hero__media{top:6px;width:110%}.home-hero__identity{padding-bottom:26px}.has-home-hero .home-hero__brand{font-size:48px}.home-hero__brand span{font-size:15px}.has-home-hero .home-hero__intro{grid-template-columns:1fr;gap:24px;padding-block:30px 42px}.has-home-hero .home-hero__title{font-size:35px}.has-home-hero .home-hero__lead{font-size:17px}.home-hero__actions{gap:6px 24px}}
@media(min-width:651px) and (max-width:900px){.home-hero__stage{height:440px}}

/* Existing page sections remain independent of the hero presentation. */
.ph-credentials { background:#dce2e3;color:#25333e;border-color:#c1cccf; }
.ph-credentials span { color:#4d616c; }
.ph-services { background:#edf0ef;color:#202c33;--pilothouse-color-link:#202c33;--pilothouse-color-link-hover:#315d70;--pilothouse-color-focus:#315d70; }
.ph-services .ph-eyebrow,.ph-services .ph-service__number { color:#526976; }
.ph-services .ph-section-heading { grid-template-columns:1fr 1.1fr;align-items:start;gap:80px;margin-bottom:45px; }
.has-home-hero .ph-services h2 { font-size:clamp(34px,3.5vw,48px);letter-spacing:-.035em; }
.ph-services .ph-section-heading p:not(.ph-eyebrow),.ph-services .ph-service p { color:#4b5b64; }
.ph-services .ph-service { border-color:#aebdc4; }
.ph-approach:after { background:linear-gradient(90deg,rgba(4,11,16,.88) 0%,rgba(4,11,16,.8) 29%,rgba(4,11,16,.48) 47%,rgba(4,11,16,.08) 69%,transparent 100%); }
.ph-approach__copy h2 { max-width:610px; }
.ph-detail { padding-block:85px; }
.has-home-hero .ph-detail h2 { font-size:clamp(30px,3vw,40px);letter-spacing:-.035em;line-height:1.15; }
.ph-detail__grid { grid-template-columns:.95fr 1.2fr;gap:70px; }
.ph-detail img { aspect-ratio:1.35; }
.ph-report { background:#e4e9e9; }
.ph-report__layout { grid-template-columns:1.3fr 1fr;gap:65px;align-items:center; }
.ph-report-preview { background:#fafbf8;color:#26343c;border-top:4px solid #45616e;padding:clamp(24px,3.3vw,48px);box-shadow:0 14px 35px #243b4610; }
.ph-report-preview__masthead { display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #cad3d4;padding-bottom:24px;margin-bottom:32px;font-size:13px;letter-spacing:.13em;line-height:1.2; }
.ph-report-preview__masthead small { font-size:8px;letter-spacing:.19em; }
.ph-report-preview__masthead>span:last-child { font-size:9px;letter-spacing:.12em;text-align:right;max-width:110px; }
.ph-report-preview .ph-eyebrow { font-size:10px;margin-bottom:16px; }
.ph-report-preview h3 { font-size:clamp(24px,2.4vw,34px);font-weight:500;line-height:1.2;letter-spacing:-.03em;margin-bottom:22px; }
.ph-report-preview>p:not(.ph-eyebrow) { font-size:15px;color:#53636b; }
.ph-report-preview__pending { display:flex;gap:15px;background:#eaf0ef;padding:20px;margin-top:30px;border-left:2px solid #69858f; }
.ph-report-preview__pending>span { font-size:22px;line-height:1; }
.ph-report-preview__pending strong { font-size:14px;font-weight:600; }
.ph-report-preview__pending p { font-size:13px;color:#53636b;margin:8px 0 0; }
.ph-report-preview .ph-report-preview__foot { font-size:10px!important;margin:25px 0 0;padding-top:20px;border-top:1px solid #cad3d4; }
@media(max-width:899px){.ph-services .ph-section-heading{gap:35px}.ph-detail__grid{gap:35px}.ph-report__layout{gap:35px}.ph-approach:after{background:linear-gradient(90deg,rgba(4,11,16,.9),rgba(4,11,16,.75) 40%,rgba(4,11,16,.25) 80%,rgba(4,11,16,.1))}}
@media(max-width:650px){.ph-credentials p{border-color:#bbc8cd}.ph-services .ph-section-heading,.ph-detail__grid,.ph-report__layout{grid-template-columns:1fr;gap:28px}.ph-detail{padding-block:60px}.ph-approach:after{display:none}.ph-report-preview__masthead{margin-bottom:26px}.ph-report-preview{padding:24px}}

/* Keep the decision headline in the first desktop viewport; reserve space beside the hull. */
@media(min-width:901px){
 .home-hero__stage{height:clamp(380px,calc(100svh - 300px),580px)}
 .home-hero__media{top:0;left:62%;width:min(1000px,76vw,calc((100svh - 300px)*1.8))}
 .home-hero__identity{padding-bottom:34px}
 .has-home-hero .home-hero__brand{font-size:clamp(56px,5vw,72px)}
 .home-hero__brand span{font-size:clamp(16px,1.5vw,21px);margin-top:14px}
 .has-home-hero .home-hero__intro{padding-top:28px}
}

/* Professional affiliations: original artwork on an intentional white field. */
.ph-affiliations{background:#fff;color:#26343c;padding:76px 0 80px;border-top:1px solid #d5dddd}
.has-home-hero .ph-affiliations h2{font-size:clamp(25px,2.5vw,34px);font-weight:500;letter-spacing:-.025em;text-align:center;margin:0 0 48px}
.ph-affiliations__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px;list-style:none;padding:0;margin:0}
.ph-affiliations__item{text-align:center;min-width:0}
.ph-affiliations__logo{height:180px;display:flex;align-items:center;justify-content:center;margin-bottom:25px}
.ph-affiliations__logo a{display:inline-flex;align-items:center;justify-content:center;padding:8px}
.ph-affiliations__logo a:focus-visible{outline:3px solid #285d78;outline-offset:5px}
.ph-affiliations__logo img{display:block;object-fit:contain;max-width:100%;height:auto}
.ph-affiliations__logo--sams img{width:160px}
.ph-affiliations__logo--abyc img{width:224px}
.ph-affiliations__logo--nfpa img{width:142px}
.ph-affiliations__item p{font-size:14px;line-height:1.65;color:#43545d;max-width:310px;margin:0 auto}
@media(max-width:700px){.ph-affiliations{padding:58px 0 64px}.has-home-hero .ph-affiliations h2{margin-bottom:35px}.ph-affiliations__grid{grid-template-columns:1fr;gap:42px}.ph-affiliations__logo{margin-bottom:18px}.ph-affiliations__item p{max-width:300px;font-size:15px}}

/* Full-composition vessel experience montage. */
.ph-experience{background:#dce7ec;color:#25333e;padding-block:80px}
.ph-experience__intro{max-width:850px;margin-bottom:36px}
.ph-experience h2{font-size:clamp(30px,3vw,44px);line-height:1.15;letter-spacing:-.035em;margin:0 0 22px}
.ph-experience__intro p{font-size:var(--pv-body,18px);line-height:var(--pv-leading,1.65);color:#425965;margin:0}
.ph-experience__visual{margin:0}
.ph-experience__visual img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border:0;box-shadow:none}
.ph-experience__labels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-top:24px;font-size:14px;line-height:1.5;font-weight:500;text-align:center;color:#25333e}
@media(max-width:899px){.ph-experience{padding-block:64px}.ph-experience__labels{gap:16px;font-size:13px}}
@media(max-width:650px){.ph-experience{padding-block:48px}.ph-experience__intro{margin-bottom:26px}.ph-experience__intro p{font-size:16px}.ph-experience__labels{grid-template-columns:1fr;gap:12px;padding-top:22px;font-size:14px}}

/* Edge-to-edge montage with compact, content-aligned text bands. */
.ph-experience{padding-block:0}
.ph-experience__heading-band{padding-block:53px 24px}
.ph-experience__intro{margin-bottom:0}
.ph-experience__labels{padding-top:20px;padding-bottom:53px}
.ph-experience__labels span:first-child{text-align:left}
.ph-experience__labels span:last-child{text-align:right}
@media(max-width:899px){.ph-experience__heading-band{padding-block:43px 24px}.ph-experience__labels{padding-bottom:43px}}
@media(max-width:650px){.ph-experience__heading-band{padding-block:32px 18px}.ph-experience__labels{padding-top:18px;padding-bottom:32px;gap:10px}.ph-experience__labels span:first-child,.ph-experience__labels span:last-child{text-align:center}}

/* Three primary service destinations. */
@media(min-width:1000px){.ph-services__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.ph-service{grid-template-columns:minmax(0,1fr) auto}.ph-service__number{display:none}.ph-service h3{font-size:26px}}
@media(min-width:651px) and (max-width:999px){.ph-services__grid{grid-template-columns:1fr}}
.ph-services .ph-service{grid-template-columns:minmax(0,1fr) 20px}
.ph-services .ph-service__number{display:none}
.ph-services .ph-service>div{min-width:0}

/* Coverage note within the existing service introduction. */
.ph-services .ph-services-intro p{margin:0 0 16px}.ph-services .ph-services-intro p:last-child{margin-bottom:0}.ph-services-intro a{font-weight:600;text-underline-offset:4px}

/* Compact coverage statement after the three services. */
.ph-services.ph-section{padding-block:88px}.ph-services-coverage{margin-top:20px}.ph-services-coverage p{font-size:var(--pv-body,17px);line-height:var(--pv-leading,1.75);color:#4b5b64;margin:0 0 8px}.ph-services-coverage p:last-child{margin:0}.ph-services-coverage a{font-weight:600;text-underline-offset:4px}@media(max-width:899px){.ph-services.ph-section{padding-block:57.6px}}@media(max-width:650px){.ph-services.ph-section{padding-block:48px}.ph-services-coverage{margin-top:16px}}
