/* Call-first contact experience. Keep this sheet after the brand theme. */
html{scroll-padding-bottom:110px}body{padding-bottom:98px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ffd53d;outline-offset:4px}
.header .header-call{display:inline-flex;align-items:center;min-height:48px}
.hero{padding-top:42px;padding-bottom:42px}.hero h1{font-size:clamp(44px,4.6vw,66px);line-height:1.03;letter-spacing:-2.5px}
.hero-copy>p{max-width:510px}.hero-actions{flex-wrap:wrap;gap:20px}.hero-actions .button{min-height:56px;font-size:17px}
.hero .hero-companion{margin-top:22px;max-width:370px}.hero .hero-companion img{width:86px;height:99px}.hero .hero-companion .hero-character{min-width:86px}
.contact-dock{position:fixed;z-index:80;bottom:0;left:0;right:0;background:#071e45;border-top:2px solid #ffd53d;box-shadow:0 -5px 24px #0003;padding:12px 24px calc(12px + env(safe-area-inset-bottom));color:#fff}
.contact-dock-inner{max-width:1180px;margin:auto;display:flex;align-items:center;justify-content:center;gap:24px}.contact-dock p{margin:0;line-height:1.4}.contact-dock p strong,.contact-dock p span{display:block}.contact-dock p span{font-size:13px;color:#cfddf3}.contact-dock a{min-height:54px;display:flex;align-items:center;justify-content:center;text-decoration:none;border-radius:8px}.dock-call{gap:14px;background:#ffd53d;color:#062b68;padding:10px 26px;font-weight:750}.dock-call strong{font-size:20px;white-space:nowrap}.dock-request{color:#fff;border:1px solid #9eb3d5;padding:10px 20px;gap:12px;font-size:15px}.dock-call:hover{background:#ffe477}.dock-request:hover{background:#153969}
#request-service{scroll-margin-top:24px}.callback-intro{grid-column:1/-1;margin-bottom:20px;padding:18px;border:1px solid #789bd0;border-radius:12px;background:#102f61;color:#fff}.callback-intro>strong{font-size:21px}.callback-intro p{line-height:1.6;margin:8px 0 0}.callback-intro a{color:#ffd53d;font-weight:700}
#quote-form input,#quote-form select,#quote-form textarea{font-size:16px;min-height:48px}#quote-form button{min-height:52px}
@media(min-width:761px) and (max-width:1100px){.header .brand small{display:none}.header nav{gap:10px}.header nav a{font-size:12px}.header .header-call{font-size:12px;padding:12px}.hero h1{font-size:52px}}
@media(max-width:760px){
 body{padding-bottom:94px}.header{height:76px}.header .header-call{display:none}.header nav{top:76px;background:#08295c}.header nav a{color:#fff!important;padding:12px;min-height:44px}.menu-toggle{min-width:44px;min-height:44px}
 .hero{padding:26px 0 32px}.hero-grid{gap:28px}.hero h1{font-size:43px;letter-spacing:-1.7px;margin-top:14px;margin-bottom:16px}.hero-copy>p{font-size:16px;line-height:1.55}.hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin-top:22px}.hero-actions .button{text-align:center;justify-content:center;padding:16px 12px;font-size:17px}.hero-actions .text-link{min-height:44px;display:flex;justify-content:center;align-items:center}.hero-notes{margin-top:16px}.hero .hero-companion{margin-top:18px}.hero .hero-companion img{width:72px;height:83px}.hero .hero-companion .hero-character{min-width:72px}
 .contact-dock{padding:10px 12px calc(10px + env(safe-area-inset-bottom))}.contact-dock-inner{gap:8px}.contact-dock p{display:none}.contact-dock .dock-call{flex:1;flex-direction:column;gap:2px;padding:8px 10px;min-height:59px}.dock-call span{font-size:13px}.dock-call strong{font-size:19px}.contact-dock .dock-request{flex:0 1 130px;font-size:13px;text-align:center;padding:8px 10px;min-height:59px}.dock-request span{display:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

#request-service.callback-intro p{color:#e7efff}#request-service{scroll-margin-top:110px}
.contact-dock p strong{color:#fff}.contact-dock .dock-call strong{color:#062b68}
