:root{--red:#c4161c;--red-d:#9e1015;--ink:#1a1d21;--steel:#e3e7ea;--steel-d:#b9c0c6;--paper:#fbfaf7;--ff-d:'Alfa Slab One',serif;--ff-c:'Barlow Condensed',sans-serif}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:'Barlow',sans-serif;color:var(--ink);background:var(--paper);font-size:1.08rem}
h1,h2{font-family:var(--ff-d);font-weight:400;line-height:1.08}
h2{font-size:clamp(2rem,4.5vw,3.1rem);margin-bottom:1rem}
a{color:inherit}
.utility{background:var(--ink);color:#e9ecef;font-family:var(--ff-c);font-size:1rem;letter-spacing:.04em;padding:.4rem 0}
.utility a{color:#fff;text-decoration:none;font-weight:700}
.navbar{background:var(--paper);border-bottom:3px solid var(--red);padding:.55rem 0}
.navbar-brand{display:flex;align-items:center;gap:.6rem}
.brand-name{font-family:var(--ff-d);font-size:1.5rem;color:var(--red)}
.nav-link{font-family:var(--ff-c);font-weight:600;font-size:1.15rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink)!important}
.nav-link.active,.nav-link:hover{color:var(--red)!important}
.btn-call{background:var(--red);color:#fff;font-family:var(--ff-c);font-weight:700;font-size:1.15rem;letter-spacing:.04em;border-radius:3px}
.btn-call:hover{background:var(--red-d);color:#fff}
.badge-at{display:inline-grid;place-items:center;width:38px;height:38px;position:relative}
.badge-at::before{content:"";position:absolute;inset:4px;background:var(--red);border:2px solid #fff;outline:2px solid var(--red);transform:rotate(45deg)}
.badge-at span{position:relative;color:#fff;font-family:var(--ff-d);font-size:.8rem}
.badge-at.sm{width:30px;height:30px;vertical-align:middle}
.hero{background:var(--red)}
.hero-panel{background:var(--red);color:#fff;padding:3.5rem 0}
.hero-copy{padding:0 1.5rem;max-width:560px;margin-left:auto}
@media(min-width:992px){.hero-copy{padding:0 3rem 0 2rem}}
.hero h1{font-size:clamp(2.3rem,4.6vw,3.6rem);margin:.5rem 0 1rem}
.hero .lead{font-size:1.2rem;margin-bottom:1.6rem}
.eyebrow,.eyebrow-dark{font-family:var(--ff-c);font-weight:700;letter-spacing:.18em;text-transform:uppercase;font-size:1rem;margin:0}
.eyebrow-dark{color:var(--red)}
.btn-hero{color:var(--red)!important;font-weight:700}
.hero .btn-outline-light:hover{color:var(--red)}
.hero-photo{min-height:320px;background:url('img/hero.webp') center/cover no-repeat}
@media(min-width:992px){.hero-photo{min-height:560px}}
.ribs{height:22px;background:repeating-linear-gradient(90deg,#f4f6f7 0 14px,var(--steel-d) 14px 18px,#fff 18px 22px,#8f989f 22px 25px)}
.stats{padding:2.5rem 0;background:var(--paper)}
.stat-n{font-family:var(--ff-d);font-size:clamp(2.2rem,5vw,3.4rem);color:var(--red);line-height:1}
.stat-l{font-family:var(--ff-c);font-size:1.1rem;text-transform:uppercase;letter-spacing:.06em;margin-top:.4rem}
.section{padding:5rem 0}
.section-steel{background:var(--steel)}
.big{font-size:1.25rem}
.plain{font-weight:700;text-decoration:none;color:var(--red)}
.index-list{list-style:none;padding:0;margin:1.8rem 0 0}
.index-list li{display:flex;justify-content:space-between;align-items:center;font-family:var(--ff-c);font-weight:600;font-size:1.6rem;text-transform:uppercase;letter-spacing:.03em;padding:.55rem 0;border-top:2px solid var(--ink)}
.index-list li:last-child{border-bottom:2px solid var(--ink)}
.index-list i{color:var(--red)}
.framed{margin:0;position:relative}
.framed img{width:100%;height:auto;display:block;box-shadow:14px 14px 0 var(--red);border:4px solid #fff}
.advantage{background:var(--ink);color:#fff;padding:4.5rem 0;position:relative}
.advantage::before{content:"";position:absolute;left:0;right:0;top:0;height:22px;background:repeating-linear-gradient(90deg,#2b3036 0 14px,#454c53 14px 18px,#1a1d21 18px 22px,#5a626a 22px 25px)}
.advantage h2{margin-top:1rem}
.adv{font-family:var(--ff-c);font-weight:600;font-size:1.5rem;text-transform:uppercase;letter-spacing:.04em;border:2px solid #4a525a;padding:1rem 1.2rem;height:100%;display:flex;align-items:center;gap:.8rem}
.adv i{color:#ff5b61;font-size:1.6rem}
.towns{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:1.8rem}
.towns span{font-family:var(--ff-c);font-weight:600;font-size:1.4rem;text-transform:uppercase;letter-spacing:.05em;background:var(--steel);border:2px solid var(--ink);padding:.3rem 1.1rem;border-radius:999px}
.contact{background:var(--red);color:#fff}
.info dt{font-family:var(--ff-c);text-transform:uppercase;letter-spacing:.15em;font-size:1rem;margin-top:1rem;opacity:.9}
.info dd{margin:0;font-size:1.2rem}
.info a{color:#fff}
.map{height:100%;min-height:380px;border:4px solid #fff}
.map iframe{width:100%;height:100%;min-height:380px;border:0;display:block}
.site-footer{background:var(--ink);color:#d7dbde;padding:1.6rem 0;font-size:1rem}
.site-footer a{color:#fff}
.pw a{font-weight:600}
@media(max-width:991px){.brand-name{font-size:1.3rem}.section{padding:3.5rem 0}.index-list li{font-size:1.35rem}}
