/* A1's supplied logo sets the palette: black, red, blue, white. */
:root{
  --navy:#111111;
  --navy2:#1b1b1b;
  --ink:#151515;
  --orange:#ed1525;
  --orange2:#ff3746;
  --cream:#f5f9fb;
  --line:#dce6eb;
  --muted:#4c5a62;
}
.topbar{background:#111;color:#e8eff2}
.site-header{border-bottom:0}
.site-header:after{content:"";display:block;height:4px;background:linear-gradient(90deg,#ed1525 0 42%,#111 42% 56%,#149fda 56% 100%)}
.header-inner{height:100px}
.brand{gap:12px}
.brand-logo{width:72px;height:80px;object-fit:contain;flex:none}
.brand-name{font-size:1.18rem;line-height:1;color:#111}
.brand-name em{color:#ed1525}
.brand-name small{font-size:.61rem;color:#088cc9;letter-spacing:.13em;margin-top:7px}
.desktop-nav a:hover,.desktop-nav a[aria-current],.header-contact:hover{color:#cf0e1d}
.button-primary,.header-call{background:#ed1525;color:#fff}
.button-primary:hover,.header-call:hover{background:#c90c1a;color:#fff}
.button-outline{border-color:#111;color:#111}
.button-outline:hover{background:#111;color:#fff}
.menu-toggle span{background:#111}
.home-hero{background:#111}
.hero-image{filter:grayscale(1);opacity:.88}
.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.97) 0%,rgba(0,0,0,.82) 35%,rgba(0,0,0,.35) 70%,rgba(0,0,0,.08) 100%)}
.eyebrow{color:#cc1525}
.eyebrow-light{color:#71d1fa}
.eyebrow-rule{background:#ed1525}
.home-hero p:not(.eyebrow){color:#f1f4f6}
.hero-foot{color:#e1edf2}
.quick-help{background:#eef8fc;border-top:5px solid #139dd8}
.quick-help-grid>div{border-right-color:#cbdfe8}
.quick-help .index,.service-number{color:#d41020}
.quick-help a,.card-link{color:#c51020}
.service-card{background:#fff;border:1px solid #dce7ec;border-top:4px solid #139dd8}
.service-card:hover{background:#f5fbfe;border-top-color:#ed1525}
.process-section{background:#edf7fb}
.process-list li{border-color:#c8dde7}
.process-list span{color:#e11525}
.area-map{border-color:#c6dde7;background:radial-gradient(circle at 48% 48%,rgba(20,159,218,.14) 0 8%,transparent 8.3%),repeating-linear-gradient(0deg,transparent 0 39px,#d9eaf2 40px),repeating-linear-gradient(90deg,transparent 0 39px,#d9eaf2 40px),#f5fbfe}
.area-map:before,.area-map:after{border-color:#bddae7}
.map-center{background:#ed1525;color:#fff}
.map-city{border-left:3px solid #159ed9}
.faq-list summary span{color:#dc1425}
.text-link{border-color:#159ed9}
.final-cta{background:#139bd6;color:#fff}
.final-cta .eyebrow{color:#fff}
.final-cta .button{background:#111;color:#fff}
.final-cta .button:hover{background:#ed1525}
.site-footer{background:#111;color:#f6f8f9}
.footer-main p{color:#c1cdd3}
.footer-main h2{color:#6acaf3}
.footer-main a:hover{color:#6acaf3}
.brand-footer .brand-logo{width:93px;height:100px;background:#fff}
.brand-footer .brand-name{color:#fff}
.brand-footer .brand-name em{color:#f64451}
.footer-bottom{border-color:#363b3d;color:#b7c2c7}
.inner-hero{background:#111}
.inner-hero:after{background:repeating-linear-gradient(135deg,transparent 0 35px,#454c50 36px,#454c50 37px,transparent 38px 72px)}
.hero-aside{border-color:#159ed9}
.hero-aside .aside-top{color:#74d2f8}
.dark-section{background:#171717}
.dark-section .eyebrow-light{color:#6acaf3}
.list-panel,.detail-card,.contact-card{background:#f3f9fc}
.list-panel li:before,.detail-card li:before{background:#159ed9}
.quote-panel{border-color:#ed1525}
.city-grid>div{border-color:#159ed9;background:#f3f9fc}
.mobile-call{background:#ed1525;color:#fff}
.home-hero{min-height:670px}
.hero-content{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(390px,.82fr);gap:6%;align-items:center;padding:46px 0}
.hero-copy{max-width:640px}
.home-hero h1{font-size:clamp(3.35rem,5.4vw,5.4rem)}
.hero-foot{margin-top:50px}
.request-form{background:#fff;color:#111;padding:25px 27px 22px;border-top:6px solid #139bd6;box-shadow:0 20px 55px rgba(0,0,0,.2)}
.request-form .honey-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-heading>span{font-size:.68rem;font-weight:800;letter-spacing:.18em;color:#d01020}
.form-heading h2{font:600 2rem/1.08 var(--display);text-transform:uppercase;margin:4px 0 7px}
.request-form .form-heading p{font:400 .78rem/1.4 var(--body);color:#41515a;margin:0 0 14px}
.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.form-fields label{display:block;font-size:.66rem;font-weight:800;letter-spacing:.08em;color:#26343b}
.form-fields .form-wide{grid-column:1/-1}
.form-fields input,.form-fields select,.form-fields textarea{display:block;width:100%;min-height:42px;border:1px solid #b7c6ce;background:#fff;color:#111;border-radius:0;padding:8px 10px;margin-top:4px;font:400 .92rem var(--body)}
.form-fields textarea{min-height:56px;resize:vertical}
.form-fields :is(input,select,textarea):focus{outline:3px solid #139bd6;outline-offset:1px}
.form-submit{width:100%;margin-top:14px;cursor:pointer}
.home-hero .request-form .form-note,.request-form-contact .form-note{font:400 .69rem/1.4 var(--body);color:#57636a;margin:9px 0 0}
.form-note a{color:#a60817}
.request-form-contact{border:1px solid #dce6eb;border-top:6px solid #139bd6;box-shadow:none}
.inner-hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(390px,.9fr);gap:6%;align-items:center}
.inner-hero .request-form{position:relative;z-index:2}
.inner-hero .request-form .form-note{color:#57636a}
.inner-hero h1{font-size:clamp(3.1rem,4.5vw,4.6rem)}
.inner-hero .breadcrumbs{margin-bottom:35px}
.contact-tips .button{margin-bottom:30px}
@media(max-width:1100px){.hero-content{gap:3%;grid-template-columns:minmax(0,1fr) minmax(370px,.9fr)}.home-hero h1{font-size:clamp(3rem,5vw,4.7rem)}}
@media(max-width:900px){.header-inner{height:85px}}
@media(max-width:900px){.hero-content{grid-template-columns:1fr;max-width:700px;gap:25px}.home-hero{min-height:0}.hero-foot{display:none}.hero-copy{max-width:none}.request-form-hero{max-width:620px}}
@media(max-width:900px){.inner-hero-grid{grid-template-columns:1fr;gap:24px;max-width:700px}.inner-hero .request-form{max-width:620px}}
@media(max-width:650px){
  .header-inner{height:75px}
  .brand-logo{width:51px;height:57px}
  .brand-name{font-size:1rem}
  .brand-name small{font-size:.51rem;margin-top:5px}
  .hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.96),rgba(0,0,0,.70))}
  .quick-help-grid>div,.quick-help-grid>div:first-child,.quick-help-grid>div:last-child{border-top-color:#c9dfe9}
  .hero-content{padding:31px 0 35px;gap:17px}
  .home-hero h1{font-size:clamp(2.65rem,10vw,3.8rem);line-height:1.05;margin-bottom:12px}
  .home-hero .eyebrow{font-size:.58rem;margin-bottom:12px}
  .home-hero p:not(.eyebrow){font-size:.87rem;line-height:1.4}
  .home-hero .request-form .form-heading p{font-size:.72rem;line-height:1.35}
  .home-hero .request-form .form-note{font-size:.68rem;line-height:1.35}
  .home-hero .hero-actions{display:none}
  .request-form{padding:17px 17px 16px}
  .form-heading h2{font-size:1.6rem}
  .request-form .form-heading p{font-size:.72rem;margin-bottom:11px}
  .form-fields{gap:8px}
  .form-fields label{font-size:.6rem}
  .form-fields input,.form-fields select{min-height:40px;font-size:.85rem}
  .form-fields textarea{min-height:48px}
  .form-submit{min-height:46px;margin-top:11px}
  .inner-hero{padding:20px 0 38px}
  .inner-hero .breadcrumbs{margin-bottom:23px}
  .inner-hero h1{font-size:clamp(2.55rem,9vw,3.5rem)}
  .inner-hero .hero-actions{display:none}
}
.a1-chat{position:fixed;left:20px;bottom:20px;z-index:80;font-family:var(--body);color:#171717}
.a1-chat *{box-sizing:border-box}
.a1-chat-panel{width:min(390px,calc(100vw - 32px));max-height:min(620px,calc(100dvh - 100px));display:flex;flex-direction:column;background:#fff;border:1px solid #d4e0e6;border-top:5px solid #139bd6;box-shadow:0 16px 50px rgba(0,0,0,.28);margin-bottom:10px}
.a1-chat-panel[hidden]{display:none}
.a1-chat-header{display:flex;align-items:center;justify-content:space-between;background:#111;color:#fff;padding:14px 17px}
.a1-chat-header span{display:block;color:#78d3f8;font-size:.6rem;font-weight:800;letter-spacing:.16em}
.a1-chat-header strong{display:block;font:600 1.45rem/1.1 var(--display);text-transform:uppercase;margin-top:4px}
.a1-chat-close{border:0;background:transparent;color:#fff;font-size:1.8rem;line-height:1;cursor:pointer;padding:4px 7px}
.a1-chat-scroll{min-height:0;overflow-y:auto;padding:16px;background:#f5f9fb}
.a1-chat-messages{display:flex;flex-direction:column;gap:11px}
.a1-chat-message{max-width:91%;padding:11px 13px;font-size:.87rem;line-height:1.45;white-space:pre-wrap}
.a1-chat-message-agent{align-self:flex-start;background:#fff;border:1px solid #dce6eb}
.a1-chat-message-visitor{align-self:flex-end;background:#dff3fc;border:1px solid #b9e2f3}
.a1-chat-suggestions{display:flex;flex-direction:column;gap:7px;margin-top:15px}
.a1-chat-suggestions button{border:1px solid #139bd6;background:#fff;text-align:left;padding:9px 11px;color:#064763;font-size:.8rem;font-weight:700;cursor:pointer}
.a1-chat-suggestions button:hover,.a1-chat-suggestions button:focus-visible{background:#e6f7ff}
.a1-chat-ask{display:flex;gap:7px;border-top:1px solid #dce6eb;padding:10px;background:#fff}
.a1-chat-ask input{min-width:0;flex:1;border:1px solid #b9cbd4;padding:9px 10px;font:400 .87rem var(--body)}
.a1-chat-ask button{border:0;background:#111;color:#fff;font-size:.75rem;font-weight:800;text-transform:uppercase;padding:0 14px;cursor:pointer}
.a1-chat-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:0 10px 10px;background:#fff}
.a1-chat-actions a{display:grid;place-items:center;min-height:42px;text-align:center;text-decoration:none;font-size:.72rem;font-weight:800;line-height:1.2;padding:5px}
.a1-chat-actions a:first-child{background:#ed1525;color:#fff}
.a1-chat-actions a:last-child{border:1px solid #111;color:#111}
.a1-chat-note{background:#fff;color:#5e6970;font-size:.65rem;line-height:1.35;margin:0;padding:0 11px 11px}
.a1-chat-launcher{border:0;background:#111;color:#fff;box-shadow:0 6px 22px rgba(0,0,0,.28);padding:13px 17px;font:800 .82rem var(--body);cursor:pointer}
.a1-chat-launcher span{color:#58c7f5;font-size:.7rem;margin-right:6px}
.a1-chat :is(button,a,input):focus-visible{outline:3px solid #139bd6;outline-offset:2px}
.a1-chat .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body:has(.request-form:focus-within) .a1-chat-launcher{display:none}
@media(max-width:650px){
  .a1-chat{left:12px;right:12px;bottom:70px}
  .a1-chat-panel{width:100%;max-height:calc(100dvh - 142px);margin-bottom:8px}
  .a1-chat-launcher{padding:11px 14px;font-size:.75rem}
  .a1-chat-scroll{padding:12px}
  .a1-chat-message{font-size:.82rem}
}
