:root{--navy:#0a2f4a;--blue:#1473b8;--sun:#f5b50a;--ink:#14212b;--mist:#eef4f8;--line:#d5e2ea}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{font-family:'Barlow',system-ui,sans-serif;color:var(--ink);font-size:1.05rem;line-height:1.65}
h1,h2,h3,h4,.navbar-brand{font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:.01em;line-height:1.05}
.navbar{background:var(--navy);padding:.55rem 0}
.navbar-brand{color:#fff!important;font-size:1.6rem;text-transform:uppercase}
.navbar-brand span{color:var(--sun)}
.navbar .nav-link{color:#d9e6ef;font-weight:600;text-transform:uppercase;font-size:.9rem;letter-spacing:.06em}
.navbar .nav-link:hover{color:var(--sun)}
.navbar-toggler{border-color:rgba(255,255,255,.4)}
.navbar-toggler-icon{filter:invert(1)}
.btn-sun{background:var(--sun);color:var(--navy);font-weight:700;border:0;border-radius:3px;padding:.7rem 1.5rem;text-transform:uppercase;letter-spacing:.05em}
.btn-sun:hover{background:#ffc928;color:var(--navy)}
.btn-line{border:2px solid #fff;color:#fff;font-weight:700;border-radius:3px;padding:.62rem 1.5rem;text-transform:uppercase;letter-spacing:.05em}
.btn-line:hover{background:#fff;color:var(--navy)}
/* hero: split panel */
.hero{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - 62px);background:var(--navy)}
.hero-panel{background:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:4rem clamp(1.5rem,5vw,5rem);position:relative}
.hero-panel:before{content:"";position:absolute;left:0;top:0;bottom:0;width:10px;background:repeating-linear-gradient(45deg,var(--sun) 0 14px,var(--navy) 14px 28px)}
.hero-eyebrow{color:var(--sun);font-weight:700;letter-spacing:.18em;text-transform:uppercase;font-size:.85rem}
.hero-title{font-size:clamp(3rem,6.5vw,5.8rem);text-transform:uppercase;margin:.6rem 0 1rem}
.hero-title em{font-style:normal;color:var(--sun);display:block}
.hero-sub{font-size:1.2rem;max-width:30rem;color:#d9e6ef}
.hero-photo{background:url('img/hero.webp') 85% center/cover no-repeat;min-height:320px}
.hero-phone{font-family:'Barlow Condensed',sans-serif;font-size:2rem;font-weight:700;color:#fff;text-decoration:none}
section{padding:6rem 0}
.sec-label{color:var(--blue);font-weight:700;text-transform:uppercase;letter-spacing:.16em;font-size:.85rem}
h2{font-size:clamp(2.3rem,4.5vw,3.5rem);text-transform:uppercase;color:var(--navy);margin:.4rem 0 1.2rem}
.about{background:#fff}
.about img{max-width:100%;height:auto;border-radius:4px}
.fleet{display:flex;gap:1rem;margin-top:1rem}
.fleet img{width:188px;height:auto;border-radius:3px}
.est{font-family:'Barlow Condensed',sans-serif;font-size:1.3rem;font-weight:700;color:var(--navy);border-left:6px solid var(--sun);padding-left:1rem;margin-top:1.5rem}
.services{background:var(--mist)}
.svc{background:#fff;border-top:5px solid var(--blue);padding:2rem 1.7rem;height:100%;box-shadow:0 2px 0 var(--line)}
.svc i{font-size:2rem;color:var(--blue)}
.svc h3{font-size:1.7rem;margin:.7rem 0 0;color:var(--navy);text-transform:uppercase}
.svc.emergency{border-top-color:var(--sun)}
.banner{display:block;width:100%;height:auto;border-radius:4px;margin-top:2.5rem}
.clients-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.clients-grid div{background:var(--navy);color:#fff;padding:1.1rem 1rem;text-align:center;font-family:'Barlow Condensed',sans-serif;font-size:1.3rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-bottom:4px solid var(--sun)}
.faq{background:var(--navy);color:#fff}
.faq h2{color:#fff}.faq .sec-label{color:var(--sun)}
.faq details{border-bottom:1px solid rgba(255,255,255,.2);padding:1rem 0}
.faq summary{font-weight:700;cursor:pointer;font-size:1.1rem;list-style:none;position:relative;padding-right:2rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:0;color:var(--sun);font-size:1.5rem;line-height:1}
.faq details[open] summary:after{content:"\2212"}
.faq details p{margin:.7rem 0 0;color:#cfdde8}
.faq img{max-width:100%;height:auto;border-radius:4px;margin-top:2rem}
.contact{background:#fff}
.info-card{background:var(--mist);padding:2rem;border-left:6px solid var(--sun);height:100%}
.info-card i{color:var(--blue);margin-right:.6rem}
.info-card a{color:var(--navy);font-weight:700}
.map{width:100%;height:100%;min-height:340px;border:0;border-radius:4px}
footer{background:#06202f;color:#b6c8d6;padding:3rem 0 1.5rem}
footer a{color:#fff}
.powered{display:inline-block;margin-top:1rem;padding:.5rem 1rem;border:1px solid rgba(255,255,255,.25);border-radius:30px;font-size:.9rem;text-decoration:none;color:#fff}
.powered b{color:var(--sun)}
@media(max-width:991px){
 .hero{grid-template-columns:1fr;min-height:0}
 .hero-photo{order:-1;min-height:260px}
 .hero-panel:before{width:100%;height:8px;bottom:auto}
 section{padding:4rem 0}
}
@media(max-width:575px){
 .clients-grid{grid-template-columns:1fr 1fr 1fr;gap:.5rem}
 .clients-grid div{font-size:1rem;padding:.8rem .3rem}
 .fleet img{width:calc(50% - .5rem)}
 .navbar-brand{font-size:1.35rem}
}
