/* Shared booking action, readable on every contact background. */
.booking-action,.landing-contact-copy .booking-action{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:54px;padding:15px 24px;border:1px solid #213246;border-radius:100px;background:#213246;color:#fff;font:500 15px/1.4 var(--sans);text-decoration:none;text-align:center;letter-spacing:0}
.booking-action:hover{background:#344d66;color:#fff}
.booking-action:focus-visible{outline:3px solid #557897;outline-offset:4px}
.booking-help{font-size:13px;line-height:1.6;color:#43566b;margin:12px 0 24px}
@media(max-width:760px){.booking-action{width:100%;padding-inline:18px}}

/* Campaign pages use the same cool, light palette as the homepage. */
.landing-page{--soft:#f3f5f7;--paper:#e3e8ed;--serif:var(--sans);background:var(--soft);color:#182638}
.landing-page .announcement{position:relative;height:auto;min-height:38px;padding:10px 20px;background:#f3f5f7;color:#34495c;font-size:12px;line-height:1.5;text-align:center}
.landing-page .announcement a{display:inline;text-wrap:balance;color:#34495c}
.landing-page .announcement span{white-space:nowrap}
.landing-page .landing-header,.landing-page .landing-header.scrolled{top:60px;background:rgba(234,239,243,.95);color:#182638;border:0;border-radius:18px;box-shadow:none}
.landing-header-note{color:#43566b}
.landing-page .brand img{filter:none}
.landing-page .header-cta{border-radius:100px;background:#213246;color:#fff;border:1px solid #213246}
.landing-page .landing-hero{margin:12px 24px 0;border-radius:28px;min-height:720px;background:#e3e8ed;color:#182638;align-items:center}
.landing-page .landing-hero-shade{background:linear-gradient(90deg,#e3e8ed 0%,rgba(227,232,237,.97) 28%,rgba(227,232,237,.82) 48%,rgba(227,232,237,.08) 78%)}
.landing-page .landing-hero-image{filter:saturate(.45);object-position:70% center}
.landing-page .landing-hero-content{padding:160px 0 90px}
.landing-page .landing-hero h1{max-width:780px;font-family:var(--sans);font-size:clamp(46px,5.2vw,78px);line-height:1.06;letter-spacing:-.055em;font-weight:400;text-wrap:balance}
.landing-page .landing-hero-lead{max-width:610px;color:#34495c;font-size:18px;line-height:1.65}
.landing-page .landing-hero .overline,.landing-page .landing-assurance{color:#43566b}
.landing-page .button,.landing-page .form-submit{border-radius:100px;background:#213246;color:white;border-color:#213246}
.landing-page .landing-hero-actions .text-link{color:#213246;border-color:#728295}
.landing-page .landing-proof{margin:0 24px;background:#e3e8ed;color:#182638;border-radius:0 0 24px 24px}
.landing-page .landing-proof span{color:#43566b;font-size:13px}
.landing-page .landing-proof div{border-color:#b9c5cf}
.landing-page .landing-heading h2,.landing-page .scope-panel h2,.landing-page .landing-contact-copy h2,.landing-page .faq-intro h2{font-family:var(--sans);font-size:clamp(34px,3.6vw,54px);line-height:1.12;letter-spacing:-.045em}
.landing-page .signal-grid,.landing-page .landing-process-grid{border:0;gap:18px}
.landing-page .signal-grid article,.landing-page .landing-process-grid li{background:#e9eef3;border:0;border-radius:20px;min-height:190px;justify-content:flex-start}
.landing-page .signal-grid h3{margin:0 0 18px}
.landing-page .signal-grid p,.landing-page .landing-process-grid p{font-size:15px;line-height:1.6;color:#43566b}
.landing-page .landing-scope{margin:0 24px;border-radius:24px;overflow:hidden}
.landing-page .scope-panel-dark{background:#213246}
.landing-page .scope-panel-list li{display:block;font-size:15px}
.landing-page .scope-panel-dark .scope-panel-list li{color:#e3eaf1}
.landing-page .landing-boundary{background:#e3e8ed;color:#182638}
.landing-page .landing-boundary strong,.landing-page .landing-boundary p{color:#43566b}
.landing-page .audit-form{border-radius:24px;background:#e9eef3}
.landing-page .audit-form input:not([type=checkbox]),.landing-page .audit-form textarea{background:#fafbfc;border:1px solid #a5b0bb;border-radius:10px;font-size:16px;padding:13px 15px}
.landing-page .audit-form input:focus-visible,.landing-page .audit-form textarea:focus-visible{outline:2px solid #415b76;outline-offset:3px}
.landing-page .landing-contact-note span,.landing-page .field-help,.landing-page .form-confirmation{color:#43566b}
.landing-page .landing-footer{background:#e3e8ed;color:#34495c;font-size:13px}
.landing-page .landing-footer a:hover{color:#182638;text-decoration:underline}
@media(max-width:760px){
 .landing-page .landing-header,.landing-page .landing-header.scrolled{top:64px;width:calc(100% - 48px);min-height:64px;padding:14px 16px}
 .landing-page .landing-hero{margin:12px 12px 0;border-radius:24px;min-height:0;display:block}
 .landing-page .landing-hero-image{height:430px;object-position:65% center}
 .landing-page .landing-hero-shade{background:linear-gradient(180deg,rgba(227,232,237,.1),rgba(227,232,237,.1) 230px,#e3e8ed 420px,#e3e8ed)}
 .landing-page .landing-hero-content{width:auto;padding:365px 24px 32px}
 .landing-page .landing-hero h1{font-size:clamp(38px,10vw,48px);line-height:1.08}
 .landing-page .landing-hero-lead{font-size:16px}
 .landing-page .landing-proof{margin:0 12px;border-radius:0 0 24px 24px}
 .landing-page .landing-proof div{min-height:76px}
 .landing-page .landing-section{padding:54px 22px}
 .landing-page .landing-scope{margin:0 12px}.landing-page .scope-panel{padding:40px 24px}
 .landing-page .signal-grid article,.landing-page .landing-process-grid li{min-height:0;padding:24px}
 .landing-page .audit-form{padding:24px 18px}
 .landing-page .landing-mobile-cta{background:rgba(234,239,243,.98);border-color:#b9c5cf;color:#182638;padding-bottom:max(10px,env(safe-area-inset-bottom))}
 .landing-page .landing-mobile-cta span{color:#43566b}
 .landing-page .landing-mobile-cta a{border-radius:100px;background:#213246;color:white}
}
