/* Scoped to the current customer pages; protected documents keep their original layout. */
.modern-site .service-no{color:#52663e}
.modern-site h1,.modern-site h2,.modern-site h3,.modern-site .button,.modern-site .text-link {overflow-wrap:anywhere;hyphens:auto}
.modern-site .home-page h1 em{hyphens:none;overflow-wrap:normal;word-break:normal}
.modern-site main>*,.modern-site .new-hero>*,.modern-site .section-heading>*,.modern-site .process-grid>*{min-width:0}
.mobile-menu-toggle{display:none}
.callback-form fieldset{border:0;padding:0;margin:0;min-width:0}
.callback-form legend{padding:0;margin-bottom:22px;font-size:21px;font-weight:700;line-height:1.4}
.callback-form [hidden],.welcome-mobile[hidden]{display:none!important}
.callback-form .form-progress{margin:0 0 16px;color:var(--muted);font-size:14px}
.callback-form .step-actions{display:flex;gap:12px;align-items:center;margin-top:24px}
.callback-form .step-actions button{width:auto;min-height:48px}
.callback-form .step-actions .step-next{flex:1}
.callback-form .step-back{background:white;color:var(--ink);border:1px solid #a8b9c3;padding:12px 18px;border-radius:4px}
.callback-form .optional-fields{margin-top:24px;border-top:1px solid var(--line);padding-top:12px}
.callback-form .optional-fields summary{padding:12px 0;min-height:44px;cursor:pointer;font-weight:600;line-height:1.5}
.callback-form .optional-fields .form-grid{margin-top:18px}
.callback-form .submit-row{margin-top:24px}
.callback-form .submit-row .step-back{margin-bottom:16px;width:auto}
.callback-form .form-step+.form-step{margin-top:26px}
.callback-form.form-enhanced .form-step{margin-top:0}
.welcome-mobile{position:fixed;z-index:20;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));max-width:460px;margin-left:auto;padding:18px 56px 18px 18px;background:white;color:var(--ink);border:1px solid var(--line);border-top:3px solid var(--brand-teal);border-radius:8px;box-shadow:0 8px 32px #102b3c30}
.welcome-mobile p{font-size:15px;line-height:1.5;margin:0 0 12px}
.welcome-mobile .button{min-height:44px;font-size:14px;padding:10px 14px;width:100%;gap:12px}
.welcome-mobile-close{position:absolute;top:5px;right:5px;width:44px;height:44px;border:0;border-radius:4px;background:white;color:var(--ink);font-size:28px;cursor:pointer}
.welcome-close{width:44px;height:44px}
.welcome-mobile :focus-visible{outline:3px solid #527b20;outline-offset:3px}
@media(max-width:720px){
 .modern-site header{padding:10px 6%;gap:10px;display:flex;flex-wrap:wrap}
 .modern-site header .supplied-brand{order:0;margin-right:auto}
 .modern-site header .supplied-brand img{width:64px;height:64px}
 .modern-site .header-end{order:1;margin-left:0;gap:0}
 .modern-site .header-phone{display:none}
 .modern-site .language-switch a{min-width:44px;min-height:44px;padding:0}
 .modern-site .mobile-menu-toggle{order:2;border:1px solid var(--line);background:white;border-radius:4px;min-height:44px;padding:9px 10px;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
 .modern-site .navigation-ready .mobile-menu-toggle{display:inline-flex;align-items:center;gap:7px}
 .modern-site header nav{order:3;width:100%;padding:10px 0 0;gap:0;flex-direction:column;align-items:stretch;font-size:16px}
 .modern-site .navigation-ready nav:not(.is-open){display:none}
 .modern-site header nav>a,.modern-site .service-menu summary{display:flex!important;align-items:center;min-height:48px;padding:10px 12px;font-size:16px;white-space:normal;line-height:1.5}
 .modern-site .service-menu>div{position:static;min-width:0;margin:0 0 8px 12px;padding:0;border:0;border-left:2px solid var(--brand-teal);box-shadow:none}
 .modern-site .service-menu>div a{min-height:48px;white-space:normal;overflow-wrap:anywhere;padding:12px;font-size:15px}
 .modern-site .mobile-menu-toggle:focus-visible{outline:3px solid #527b20;outline-offset:3px}
 .modern-site .customer-site .new-hero{padding-top:28px;padding-bottom:32px;gap:24px}
 .modern-site .customer-site h1{font-size:clamp(30px,8.2vw,40px);letter-spacing:-1px}
 .modern-site .customer-site h1 em{letter-spacing:-1px}
 .modern-site .customer-site .lead{font-size:17px;line-height:1.65;margin-bottom:24px}
 .modern-site .eyebrow{margin-bottom:18px}
 .modern-site .hero-facts{margin-top:20px}
 .modern-site .start-plan{padding:24px}
 .modern-site .start-plan h2{font-size:27px}
 .modern-site .quick-paths{margin-top:18px}
 .modern-site .quick-paths a{min-height:48px;padding:15px 0;font-size:16px}
 .modern-site .section{padding-top:36px;padding-bottom:36px}
 .modern-site .section-heading{margin-bottom:27px;gap:18px}
 .modern-site .customer-site .section-heading h2{font-size:29px}
 .modern-site .outcome-grid{gap:24px}
 .modern-site .outcome-grid article{padding-top:18px}
 .modern-site .outcome-grid h3{font-size:21px;margin:10px 0}
 .modern-site .process-grid{grid-template-columns:1fr;gap:20px}
 .modern-site .process-grid li{padding-left:40px;position:relative}
 .modern-site .process-grid .process-no{position:absolute;top:0;left:0}
 .modern-site .process-grid h3{margin:0 0 8px;font-size:19px}
 .modern-site .process-grid p{margin:0;font-size:16px}
 .modern-site .text-link,.modern-site .footer-links a{display:inline-flex;align-items:center;min-height:44px;line-height:1.5}
 .modern-site .faq summary{padding-block:10px;min-height:44px}
 .modern-site .faq details{padding-block:6px}
 .modern-site .callback-section{gap:20px}
 .modern-site .callback-intro>p{margin:16px 0}
 .modern-site .callback-form{padding:20px}
 .modern-site .callback-form legend{font-size:20px;margin-bottom:18px}
 .modern-site .callback-form .form-grid{gap:18px}
 .modern-site .callback-form .form-privacy{font-size:14px;line-height:1.65}
 .modern-site .callback-form select{min-height:48px}
 .modern-site .customer-site .compact-note{padding:26px 20px}
}
@media(max-height:450px) and (max-width:900px){.welcome-mobile{max-width:350px;padding-top:12px;padding-bottom:12px}.welcome-mobile p{margin-bottom:8px}}
/* Funding invitation: an accessible dialog and compact mobile hint. */
.funding-dialog{width:min(920px,calc(100vw - 36px))}
.funding-dialog .welcome-layout{grid-template-columns:300px minmax(0,1fr)}
.funding-dialog .welcome-aside{justify-content:flex-start;padding:32px 26px}
.funding-dialog .welcome-image{width:248px;height:330px;margin:26px auto 8px;object-fit:cover;object-position:center 28%}
.funding-dialog .welcome-copy{padding:36px 32px 20px}
.funding-dialog .welcome-copy h2{font-size:30px;line-height:1.18;margin:14px 0 18px;hyphens:none;overflow-wrap:normal}
.funding-amount{display:block;font-size:52px;line-height:1.15;letter-spacing:-1px;margin:4px 0;color:#344f18;white-space:nowrap}
.funding-benefits{list-style:none;padding:0;margin:22px 0;font-size:14px;line-height:1.5}
.funding-benefits li{position:relative;padding-left:28px}
.funding-benefits li:before{content:'✓';position:absolute;left:0;color:#527b20;font-size:19px;font-weight:700}
.funding-benefits strong{font-size:16px}
.funding-benefits li+li{margin-top:14px}
.funding-dialog .welcome-copy .funding-invite{font-size:15px;line-height:1.5;margin:0 0 16px}
.funding-dialog .welcome-copy .funding-note{font-size:12px;line-height:1.5;margin:12px 0 0}
.funding-dialog .welcome-later{margin-top:4px;min-height:44px}
.funding-mobile{max-height:calc(100dvh - 24px);overflow-y:auto;padding:18px 46px 12px 18px}
.funding-mobile-heading{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.funding-mobile-heading img{width:58px;height:74px;object-fit:cover;border-radius:5px;flex-shrink:0}
.funding-mobile .funding-mobile-title{font-size:18px;font-weight:600;margin:0;line-height:1.25}
.funding-mobile-title strong{color:#344f18;white-space:nowrap;font-size:24px}
.funding-mobile p{font-size:13px;line-height:1.5}
.funding-mobile .funding-note{font-size:11px;line-height:1.45;margin:10px 0 0}
@media(max-width:720px){.funding-dialog .welcome-layout{grid-template-columns:1fr}.funding-dialog .welcome-aside{display:none}.funding-dialog .welcome-copy{padding:44px 24px 24px}.funding-mobile .button{font-size:13px}}
