/* Public frame: deliberately separate from the operational app. */
body:not(.js-team-app-page) .site-header{height:70px;background:linear-gradient(180deg,rgba(4,11,20,.9),rgba(4,11,20,.12));border:0}
body:not(.js-team-app-page) .site-header.is-scrolled,body:not(.js-team-app-page) .site-header.menu-open{height:62px;background:rgba(7,17,31,.86);border-bottom:1px solid rgba(214,179,106,.28);box-shadow:0 14px 45px rgba(0,0,0,.18)}
body:not(.js-team-app-page) .header-inner{gap:1rem}
body:not(.js-team-app-page) .primary-nav{margin:auto}.site-header .primary-nav a{font-size:.64rem!important;letter-spacing:.14em}
body:not(.js-team-app-page) .header-cta{background:#d6b36a;border:1px solid #d6b36a;color:#07111f;min-height:38px;padding:.65rem 1rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.1em}
body:not(.js-team-app-page) .header-contact{border-bottom:1px solid rgba(214,179,106,.55);padding-bottom:.25rem;font-size:.64rem!important}
body:not(.js-team-app-page) .mobile-menu{background:rgba(7,17,31,.97);backdrop-filter:blur(24px)}
body:not(.js-team-app-page) .mobile-menu__inner{max-width:680px;margin:auto}
body:not(.js-team-app-page) .mobile-menu a{font-size:clamp(2rem,7vw,3rem);padding:.65rem 0}
body:not(.js-team-app-page) .mobile-menu__contact a{font-size:.7rem}
body:not(.js-team-app-page) .site-footer{position:relative;padding:3rem 0 1.5rem;background:#050c15;border-top:1px solid rgba(214,179,106,.3)}
body:not(.js-team-app-page) .footer-top{grid-template-columns:2fr 1fr 1fr;gap:2rem}
body:not(.js-team-app-page) .footer-statement>p{font:italic 400 clamp(2rem,3vw,3rem)/1.02 'Instrument Serif',Georgia,serif;margin:1.5rem 0}
body:not(.js-team-app-page) .footer-links a,body:not(.js-team-app-page) .footer-contact a{font-size:.72rem;padding:.25rem 0}
body:not(.js-team-app-page) .footer-base{border-top:1px solid rgba(245,241,232,.12);margin-top:2rem;padding-top:1rem;color:#8d99a6;font-size:.65rem}
@media(max-width:1150px){body:not(.js-team-app-page) .site-header{height:62px}body:not(.js-team-app-page) .site-header.is-scrolled{height:58px}}
@media(max-width:700px){body:not(.js-team-app-page) .mobile-bottom-nav{left:8px;right:8px;bottom:calc(7px + env(safe-area-inset-bottom));padding:5px 4px 4px;border-radius:9px;background:rgba(7,17,31,.91);border:1px solid rgba(214,179,106,.34);box-shadow:0 12px 35px rgba(0,0,0,.4),inset 0 1px rgba(255,255,255,.09)}body:not(.js-team-app-page) .mobile-bottom-nav a,body:not(.js-team-app-page) .mobile-bottom-nav button{min-height:47px;font-size:.54rem;gap:1px}body:not(.js-team-app-page) .mobile-bottom-nav i{font-size:1rem}body:not(.js-team-app-page) .mobile-bottom-nav .mobile-book{transform:translateY(-3px)}body:not(.js-team-app-page) .mobile-bottom-nav .mobile-book i{width:31px;height:31px;border-radius:6px;font-size:1.3rem}body:not(.js-team-app-page) .site-footer{padding-bottom:6rem}body:not(.js-team-app-page) .footer-top{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}body:not(.js-team-app-page) .footer-statement{grid-column:1/-1}body:not(.js-team-app-page) .footer-statement>p{font-size:2rem;margin:.6rem 0}body:not(.js-team-app-page) .footer-links,body:not(.js-team-app-page) .footer-contact{margin:0}body:not(.js-team-app-page) .footer-base{display:flex;gap:1rem;flex-wrap:wrap}}
@media(max-width:520px){body:not(.js-team-app-page) .rebuild-service-hero{min-height:700px}body:not(.js-team-app-page) .rebuild-service-hero__inner{padding-block:12rem 6.5rem}}
@media(prefers-reduced-motion:reduce){.site-header{transition:none!important}}

/* Public UI rescue: solid navigation layers and a calm photographic hero. */
body:not(.js-team-app-page) .site-header .brand{display:flex;align-items:center;gap:8px;text-decoration:none;flex-shrink:0}
.rescue-brand-name{color:#f5f1e8;font:600 10px/1.4 Manrope,sans-serif;letter-spacing:.12em;max-width:100px}
body:not(.js-team-app-page) .site-header{height:86px;background:linear-gradient(#07111ff2,#07111f85);z-index:100}
body:not(.js-team-app-page) .site-header.is-scrolled{height:76px;background:#07111ff5}
body:not(.js-team-app-page) .site-header .brand-logo,body:not(.js-team-app-page) .site-header .custom-logo{height:66px!important;width:auto;max-width:210px!important;object-fit:contain}
body:not(.js-team-app-page) .primary-nav a{font-size:12px!important;letter-spacing:.055em}
body:not(.js-team-app-page) .header-inner{gap:22px}
body:not(.js-team-app-page) .header-cta{background:transparent;color:#f5f1e8;border-color:#d6b36a80;min-height:42px;font-size:11px}
body:not(.js-team-app-page) .mobile-menu[hidden]{display:none!important}
body:not(.js-team-app-page) .mobile-menu{position:fixed;inset:0;z-index:10000;height:100dvh;overflow-y:auto;overscroll-behavior:contain;background:#07111f!important;backdrop-filter:none;padding:calc(80px + env(safe-area-inset-top)) 24px calc(32px + env(safe-area-inset-bottom));color:#f5f1e8}
body:not(.js-team-app-page) .mobile-menu__inner{padding:0;max-width:540px}
body:not(.js-team-app-page) .mobile-menu ul{margin:20px 0;padding:0;list-style:none}
body:not(.js-team-app-page) .mobile-menu li{border-top:1px solid #ffffff24}
body:not(.js-team-app-page) .mobile-menu a{font-size:clamp(24px,6vw,34px);line-height:1.2;padding:16px 0;color:#f5f1e8}
body:not(.js-team-app-page) .mobile-menu__contact{border-top:1px solid #d6b36a55;padding-top:18px;gap:28px}
body:not(.js-team-app-page) .mobile-menu__contact a{font:600 13px/1.5 Manrope,sans-serif}
.mobile-menu__close{position:absolute;right:24px;top:calc(20px + env(safe-area-inset-top));min-height:44px;padding:8px 16px;background:#122439;color:#f5f1e8;border:1px solid #d6b36a66;border-radius:3px;font:600 13px Manrope,sans-serif}
body.public-menu-open{position:fixed;width:100%;overflow:hidden!important}
body:not(.js-team-app-page) :is(a,button,input,select,textarea):focus-visible{outline:2px solid #d6b36a;outline-offset:4px}
body:not(.js-team-app-page) .rebuild-hero{min-height:720px;max-height:none}
body:not(.js-team-app-page) .rebuild-hero__vessel,body:not(.js-team-app-page) .rebuild-hero__water{display:none}
body:not(.js-team-app-page) .rebuild-hero__horizon{transform:none;animation:rescue-camera 24s ease-in-out infinite alternate}
body:not(.js-team-app-page) .rebuild-hero__horizon img{filter:brightness(.85) saturate(.88);object-position:62% 48%}
body:not(.js-team-app-page) .rebuild-hero__horizon:after{background:linear-gradient(90deg,#07111fed 0%,#07111f80 43%,#07111f12 78%),linear-gradient(0deg,#07111f,transparent 35%)}
body:not(.js-team-app-page) .rebuild-hero__content{padding-block:180px 120px}
body:not(.js-team-app-page) .rebuild-hero__content[data-reveal]{opacity:1;transform:none;clip-path:none}
body:not(.js-team-app-page) .rebuild-hero h1{font-size:clamp(54px,6.2vw,88px);line-height:.98;max-width:760px}
body:not(.js-team-app-page) .rebuild-hero__aura{opacity:.45;animation:rescue-light 18s ease-in-out infinite alternate}
body:not(.js-team-app-page) .tilt-surface:hover,body:not(.js-team-app-page) .tilt-surface:hover img{transform:none}
body:not(.js-team-app-page) .rebuild-glass-note{background:#0c1b2af2;border-color:#d6b36a55}
@keyframes rescue-camera{from{transform:scale(1)}to{transform:scale(1.045)}}
@keyframes rescue-light{from{opacity:.2;transform:translateX(-12px)}to{opacity:.45;transform:translateX(12px)}}
@media(max-width:1150px){body:not(.js-team-app-page) .primary-nav{display:none}body:not(.js-team-app-page) .nav-toggle{display:flex;margin-left:auto;align-items:center;gap:10px;color:#f5f1e8;min-height:44px}body:not(.js-team-app-page) .header-contact{display:none}}
@media(max-width:700px){
 body:not(.js-team-app-page) .site-header,body:not(.js-team-app-page) .site-header.is-scrolled{height:72px;background:#07111fe8}
 body:not(.js-team-app-page) .site-header .brand-logo,body:not(.js-team-app-page) .site-header .custom-logo{height:56px!important;max-width:160px!important}
 body:not(.js-team-app-page) .header-inner{gap:12px}
 body:not(.js-team-app-page) .header-cta{padding:9px 12px;font-size:10px;min-height:38px;margin-left:auto}
 body:not(.js-team-app-page) .nav-toggle{margin-left:auto;font-size:12px}
 body:not(.js-team-app-page) .rebuild-hero{min-height:660px;max-height:none;align-items:end}
 body:not(.js-team-app-page) .rebuild-hero__horizon img{object-position:58% 25%}
 body:not(.js-team-app-page) .rebuild-hero__horizon:after{background:linear-gradient(0deg,#07111f 0%,#07111fee 18%,#07111f65 58%,#07111f15 78%)}
 body:not(.js-team-app-page) .rebuild-hero__content{padding:300px 0 70px}
 body:not(.js-team-app-page) .rebuild-hero h1{font-size:46px;line-height:1.02}
 body:not(.js-team-app-page) .rebuild-hero__facts{font-size:11px!important;letter-spacing:.02em;line-height:1.8!important}
 body:not(.js-team-app-page) .rebuild-hero__seal{display:none}
 body:not(.js-team-app-page) .rebuild-kicker>span{display:none}
 body:not(.js-team-app-page) :is(.rebuild-home h2,.rebuild-service-hero h1,.contact-hero h1,.editorial-hero h1){font-size:clamp(34px,9vw,44px);line-height:1.08}
 body:not(.js-team-app-page) :is(.rebuild-marina-chapter,.rebuild-route,.rebuild-ocean,.rebuild-yachts,.rebuild-guides,.rebuild-final){padding-block:52px}
 body:not(.js-team-app-page) .rebuild-service-hero{min-height:580px}
 body:not(.js-team-app-page) .rebuild-service-hero__inner{padding-block:150px 70px}
 body:not(.js-team-app-page) .mobile-bottom-nav{z-index:90;left:12px;right:12px;bottom:calc(8px + env(safe-area-inset-bottom));border-radius:5px;background:#0c1b2af7;border:1px solid #d6b36a40;box-shadow:0 6px 28px #0008;padding:4px 6px;backdrop-filter:blur(12px)}
 body:not(.js-team-app-page) .mobile-bottom-nav :is(a,button){min-height:48px;gap:4px;font-size:10px;color:#c7d0d8;border-radius:2px;background:transparent}
 body:not(.js-team-app-page) .mobile-bottom-nav i{font-size:17px;font-style:normal;height:20px;line-height:20px}
 body:not(.js-team-app-page) .mobile-bottom-nav .mobile-book{transform:none;color:#d6b36a}
 body:not(.js-team-app-page) .mobile-bottom-nav .mobile-book i{background:transparent;color:inherit;border-radius:0;width:20px;height:20px;font-size:20px}
 body:not(.js-team-app-page) .mobile-bottom-nav [aria-current=page]{color:#d6b36a;background:#d6b36a10}
 body:not(.js-team-app-page):has(.js-service-form :focus) .mobile-bottom-nav,body:not(.js-team-app-page):has(.js-public-booking input:focus) .mobile-bottom-nav{visibility:hidden}
 body:not(.js-team-app-page) main{padding-bottom:20px}
}
@media(prefers-reduced-motion:reduce){body:not(.js-team-app-page) .rebuild-hero__horizon,body:not(.js-team-app-page) .rebuild-hero__aura{animation:none}}
