/* P1 public surface: scoped to pages migrated to the shared static shell. */
body[data-public-shell]{--navy:#071b2e;--ink:#102336;--muted:#475b6b;--amber:#ffb21a;--line:#d6e0e7;margin:0;background:#fff;color:var(--ink);font:1rem/1.65 'DM Sans',system-ui,sans-serif;padding:0!important}
body[data-public-shell] *{box-sizing:border-box}body[data-public-shell] [hidden]{display:none!important}body[data-public-shell] .wrap{width:min(1160px,calc(100% - 40px));margin-inline:auto}body[data-public-shell] a{color:inherit}body[data-public-shell] h1,body[data-public-shell] h2,body[data-public-shell] h3{font-family:Manrope,system-ui,sans-serif;line-height:1.15;letter-spacing:-.035em}body[data-public-shell] h1{font-size:clamp(2.3rem,4.8vw,4rem)}body[data-public-shell] h2{font-size:clamp(1.6rem,3vw,2.3rem)}body[data-public-shell] h3{font-size:1.18rem}body[data-public-shell] p{max-width:68ch}body[data-public-shell] .btn{min-height:48px;font-size:1rem;white-space:normal;text-align:center;border-radius:8px;padding:12px 20px;line-height:1.35;font-weight:700}body[data-public-shell] .btn-primary{background:var(--amber);color:var(--navy)}body[data-public-shell] :focus-visible{outline:3px solid #09658c;outline-offset:4px}body[data-public-shell] :is(input,textarea,select):focus-visible{outline-offset:2px}body[data-public-shell] [id]{scroll-margin-top:105px}
.public-skip{position:fixed;top:8px;left:12px;z-index:1000;background:#fff;padding:12px 18px;transform:translateY(-150%)}.public-skip:focus{transform:none}.public-header{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--line)}body[data-public-shell] .public-header nav{display:flex;min-height:88px;height:auto;gap:18px;padding-block:12px}body[data-public-shell] .brand{display:flex;align-items:center;gap:10px;line-height:1.15;font-size:.875rem;font-weight:800;text-decoration:none;flex-shrink:0}body[data-public-shell] .brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--navy);color:#fff;border-radius:9px;font-size:1.4rem}body[data-public-shell] .navlinks{display:flex;gap:20px;font-size:.875rem;margin-right:auto}body[data-public-shell] .navlinks a,.public-signin{display:inline-flex;align-items:center;min-height:44px;font-weight:700;text-decoration:none}body[data-public-shell] header .brand{margin-right:18px}body[data-public-shell] .fpa-search-trigger{display:inline-flex;min-height:44px;gap:6px;color:var(--navy);font-size:.875rem}body[data-public-shell] .site-menu-button{display:grid;font-size:.875rem;width:auto;flex-basis:auto;min-width:58px;padding:8px}body[data-public-shell] .site-menu-button span{height:auto;background:none}body[data-public-shell] .site-menu-button span:not(:first-child){display:none}body[data-public-shell] .site-menu-button span:first-child::after{content:'Menu'}body[data-public-shell] .quiet-contact{display:none}
.clarity-hero{padding:58px 0 48px;background:#f2f6f9}.clarity-hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:52px;align-items:center}.clarity-hero h1{margin:15px 0 22px;max-width:12ch}.clarity-hero p{font-size:1.125rem;color:var(--muted)}.clarity-eyebrow{font-size:.875rem;font-weight:800;color:#334f63;letter-spacing:.06em;text-transform:uppercase}.clarity-hero img{width:100%;height:100%;object-fit:cover;display:block;border-radius:12px}.clarity-hero picture{display:block;aspect-ratio:1.1}.clarity-actions{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin-top:26px}.clarity-actions>a:not(.btn){min-height:44px;display:inline-flex;align-items:center;text-underline-offset:4px;font-weight:700}.clarity-note{font-size:.875rem!important}.returning-strip{padding:24px 0;border-bottom:1px solid var(--line)}.returning-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:22px}.returning-strip p{margin:3px 0 0;color:var(--muted)}.clarity-section{padding:64px 0}.clarity-section .section-intro{max-width:660px;margin-bottom:30px}.clarity-steps{list-style:none;counter-reset:steps;display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:0;margin-top:30px}.clarity-steps li{border-top:2px solid var(--line);padding-top:22px;counter-increment:steps}.clarity-steps li:before{content:'0' counter(steps);font-weight:800;color:#506b80}.clarity-steps p{color:var(--muted)}.clarity-learning{background:var(--navy);color:#fff}.clarity-learning .wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.clarity-learning .clarity-eyebrow{color:var(--amber)}.clarity-learning p{color:#dce6ed}.clarity-resources{display:grid;gap:0;border-top:1px solid #516373}.clarity-resources a{padding:20px 0;border-bottom:1px solid #516373;text-decoration:none;display:grid;gap:4px}.clarity-resources small{font-size:.875rem;color:#cedae3}.clarity-coverage{background:#f2f6f9}.clarity-coverage .wrap{display:grid;grid-template-columns:1fr 1fr;gap:50px}.public-footer{background:var(--navy);color:#e5edf3;padding:44px 0!important}body[data-public-shell] .public-footer .footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px;align-items:start}body[data-public-shell] .public-footer nav{display:grid;height:auto;gap:8px;min-height:0;padding:0;margin:0;border:0;font-size:.875rem;color:#e5edf3}body[data-public-shell] .public-footer a{min-height:32px;align-content:center}.public-footer p{font-size:.875rem;color:#c2d0da}.public-footer .fine{color:#c2d0da}.public-footer .brand{color:#fff}
body[data-public-shell] .hero{background:#f2f6f9;color:var(--navy);padding:52px 0}body[data-public-shell] .hero p{color:var(--muted)}body[data-public-shell] .hero .btn-outline{background:#fff;color:var(--navy);border-color:#8a9baa}body[data-public-shell] .kicker{color:#425b6f;font-size:.875rem}body[data-public-shell] .process .kicker{color:var(--amber)}body[data-public-shell] .lesson-number,body[data-public-shell] .price small,body[data-public-shell] .upgrade-note{font-size:.875rem}body[data-public-shell] .lesson-card.featured{box-shadow:none;border:1px solid var(--line)}body[data-public-shell] .lesson-card.featured .lesson-number{background:#eef5fa}body[data-public-shell] .topbar{display:none}body[data-public-shell] .booking-main{padding:42px 0}body[data-public-shell] .booking-intro h1{font-size:clamp(2rem,3.5vw,3rem)}body[data-public-shell] .booking-card{box-shadow:none;border:1px solid var(--line)}body[data-public-shell] .booking-trust{display:none}body[data-public-shell] .step-heading p,body[data-public-shell] .package-copy,body[data-public-shell] .package-note,body[data-public-shell] .privacy-line{font-size:.875rem;color:var(--muted)}body[data-public-shell] .package-badge{font-size:.875rem}body[data-public-shell] .step-error{color:#a31823;font-size:1rem}.booking-error-summary{padding:16px;border:2px solid #a31823;margin:14px 0;background:#fff5f5}.booking-error-summary a{display:block;text-decoration:underline}.booking-send-status{border:2px solid #415e74!important;background:#f2f6f9!important;color:var(--navy)!important}body[data-public-shell] input,body[data-public-shell] textarea{font-size:1rem}body[data-public-shell] .learn-page{width:min(900px,calc(100% - 40px));padding:48px 0;margin:auto}.search-destinations{padding-left:22px}.search-destinations li{padding:8px}.public-header .navlinks a[aria-current]{text-decoration:underline;text-underline-offset:6px}
@media(max-width:1180px){body[data-public-shell] .navlinks{display:none!important}body[data-public-shell] .public-header .brand{margin-right:auto}body[data-public-shell] .public-header nav{gap:12px}}
@media(max-width:760px){body[data-public-shell] .wrap{width:calc(100% - 32px)}body[data-public-shell] .public-header nav{min-height:72px!important;height:auto!important;gap:10px!important}body[data-public-shell] header .brand{font-size:.8125rem!important}body[data-public-shell] header .brand>span:last-child{display:block!important}body[data-public-shell] header .site-book-cta,body[data-public-shell] .public-signin{display:none!important}body[data-public-shell] .fpa-search-trigger span{display:none}body[data-public-shell] .fpa-search-trigger{min-width:44px;justify-content:center}.clarity-hero{padding:32px 0}.clarity-hero-grid{grid-template-columns:1fr;gap:28px}.clarity-hero h1{max-width:16ch;margin-top:12px}.clarity-hero picture{aspect-ratio:1.8;max-height:260px}.clarity-section{padding:42px 0}.clarity-steps,.clarity-learning .wrap,.clarity-coverage .wrap{grid-template-columns:1fr;gap:24px}.returning-strip .wrap{align-items:flex-start;flex-direction:column;gap:12px}body[data-public-shell] .public-footer .footer-grid{grid-template-columns:1fr 1fr}body[data-public-shell] .public-footer .footer-grid>div{grid-column:1/-1}body[data-public-shell] .booking-layout{display:block}.booking-intro{margin-bottom:24px}body[data-public-shell] .booking-main{padding:28px 0}body[data-public-shell] .hero{padding:36px 0}body[data-public-shell] .hero h1{font-size:2.3rem}body[data-public-shell] .site-menu-main{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body[data-public-shell]{scroll-behavior:auto}body[data-public-shell] *{scroll-behavior:auto!important;transition:none!important}}
@media(min-width:761px){body[data-public-shell] .public-header nav>.site-book-cta{display:inline-flex!important;font-size:.875rem!important;padding:12px!important}}
/* Keep usable navigation when enhancement is unavailable. */
@media(max-width:1180px){html:not(.has-site-menu) body[data-public-shell] .public-header nav{flex-wrap:wrap}html:not(.has-site-menu) body[data-public-shell] .navlinks{display:flex!important;flex-wrap:wrap;order:5;width:100%;gap:10px 18px}html:not(.has-site-menu) body[data-public-shell] .public-signin{display:inline-flex!important}}
@media(max-width:680px){body[data-public-shell] .step-actions{position:static}body[data-public-shell] footer{display:block}body[data-public-shell] .booking-progress li b{font-size:.875rem}body[data-public-shell] .fpa-search-row button{width:auto;flex:1}}
/* Explicit contrast for dark action surfaces; do not inherit surrounding body ink. */
body[data-public-shell] a.site-menu-primary,body[data-public-shell] a.btn-dark{color:#fff}
