/* Omega Force Appliance Repair — v2 (matches approved desktop + mobile mockup)
   Layout: midnight utility bar, white header with dropdown nav, photo hero with
   ZIP booking card, midnight stat band, appliance tiles, team row, reviews,
   trust band, compact white footer. Brand Standards v1.0 palette + Inter/Open Sans. */
@font-face{font-family:"Inter";src:url(../fonts/inter.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Open Sans";src:url(../fonts/open-sans.woff2) format("woff2");font-weight:300 800;font-display:swap}

:root{
  --midnight:#182A40; --midnight-2:#13233A; --navy-line:rgba(255,255,255,.16);
  --blue:#40A3ED; --red:#D3382C; --deep-red:#A81A1D;
  --smoke:#41515B; --ash:#C8C8C8; --mist:#F3F6F8; --tile:#F4F7FA; --white:#FFFFFF;
  --rule:#E1E6EB; --link:#1F6FB2; --gold:#F5B400; --on-dark:#D3DCE6;
  --font-head:"Inter","Helvetica Neue",Arial,sans-serif;
  --font-body:"Open Sans","Segoe UI",Arial,sans-serif;
  --wrap:1200px; --gutter:20px; --radius:6px;
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--midnight);font-family:var(--font-body);font-size:16px;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:var(--link);text-underline-offset:3px}
a:hover{color:var(--midnight)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:2px}
h1,h2,h3,h4{font-family:var(--font-head);color:var(--midnight);line-height:1.12;letter-spacing:-.02em;margin:0;text-wrap:balance}
h1{font-size:clamp(2.1rem,4.6vw,3.5rem);font-weight:800}
h2{font-size:clamp(1.55rem,2.8vw,2.2rem);font-weight:800}
h3{font-size:1.15rem;font-weight:700}
p{margin:0}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.eyebrow{font-family:var(--font-head);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--smoke)}
.lead{font-size:1.1rem;color:var(--smoke);max-width:62ch}
.muted{color:var(--smoke)}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:16px;z-index:100;background:#fff;padding:8px 12px}
svg.i{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-head);font-weight:700;font-size:.98rem;padding:13px 22px;border-radius:var(--radius);text-decoration:none;border:2px solid transparent;transition:background-color .15s,border-color .15s,color .15s;white-space:nowrap;cursor:pointer}
.btn-red{background:var(--red);color:#fff}
.btn-red:hover{background:var(--deep-red);color:#fff}
.btn-line{border-color:var(--midnight);color:var(--midnight);background:transparent}
.btn-line:hover{background:var(--midnight);color:#fff}
.on-dark .btn-line{border-color:rgba(255,255,255,.55);color:#fff}
.on-dark .btn-line:hover{background:#fff;color:var(--midnight)}
.btn svg.i{width:18px;height:18px}

/* Utility bar */
.topbar{background:var(--midnight);color:#fff;font-family:var(--font-head);font-size:.74rem}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:8px}
.topbar .tagline{font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.topbar .tb-links{display:flex;gap:22px;align-items:center}
.topbar a{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:7px;font-weight:600}
.topbar a:hover{text-decoration:underline}
.topbar .tb-phone{font-size:.86rem;font-weight:700}
.topbar svg.i{width:15px;height:15px}

/* Header */
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:#fff;box-shadow:0 1px 0 var(--rule)}
.site-header>.wrap{display:flex;align-items:center;gap:28px;padding-block:12px}
.brand{flex:none;display:block}
.brand img{width:240px;height:auto}
@media (max-width:1240px){.brand img{width:195px}.main-nav .nl{padding:10px 8px;font-size:.9rem}.site-header>.wrap{gap:18px}}
.main-nav .nl{white-space:nowrap}
.main-nav{margin-left:auto}
.main-nav>ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;align-items:center}
.main-nav li{position:relative}
.main-nav .nl{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-head);font-weight:600;font-size:.88rem;color:var(--midnight);text-decoration:none;padding:10px 10px;background:none;border:0;cursor:pointer;border-radius:4px}
.main-nav .nl:hover,.main-nav li:focus-within>.nl{color:var(--red)}
.main-nav .nl svg.i{width:13px;height:13px;stroke-width:2.5}
.main-nav .nl[aria-current=page]{color:var(--red)}
.dd{position:absolute;top:100%;left:0;min-width:240px;background:#fff;border:1px solid var(--rule);border-radius:var(--radius);box-shadow:0 18px 40px rgba(24,42,64,.14);padding:8px;display:none;list-style:none;margin:0}
.main-nav li:hover>.dd,.main-nav li:focus-within>.dd{display:block}
.dd a{display:block;padding:8px 12px;border-radius:4px;color:var(--midnight);text-decoration:none;font-family:var(--font-head);font-size:.9rem;font-weight:500}
.dd a:hover{background:var(--mist);color:var(--midnight)}
.menu-btn{display:none;margin-left:auto;background:none;border:0;padding:8px;color:var(--midnight);cursor:pointer}
.menu-btn svg.i{width:30px;height:30px}
.mobile-nav{border-top:1px solid var(--rule);background:#fff;max-height:calc(100vh - 70px);overflow:auto}
.mobile-nav .wrap{display:grid;padding-block:8px 20px}
.mobile-nav a{font-family:var(--font-head);font-weight:600;color:var(--midnight);text-decoration:none;padding:12px 0;border-bottom:1px solid var(--rule)}
.mobile-nav .sub{padding-left:14px;font-weight:500;font-size:.95rem}
.mobile-nav .btn{margin-top:14px;border:0;color:#fff}
@media (max-width:1040px){.main-nav .nl{padding:10px 7px;font-size:.84rem}.site-header>.wrap{gap:16px}.brand img{width:175px}}
@media (max-width:920px){.main-nav,.header-cta{display:none}.menu-btn{display:block}.topbar{display:none}}

/* Hero */
.hero{position:relative;background:var(--midnight);color:#fff;overflow:hidden;isolation:isolate}
.hero-media{position:absolute;inset:0 0 0 38%;z-index:-2}
.hero-media img,.hero-media picture{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--midnight) 0%,var(--midnight) 38%,rgba(24,42,64,.82) 45%,rgba(24,42,64,.35) 52%,rgba(24,42,64,0) 58%)}
.hero .wrap{padding-block:30px 34px}
.hero-copy{max-width:520px;display:grid;gap:16px}
.hero .kicker{font-family:var(--font-head);font-weight:700;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}
.hero h1{color:#fff;font-size:clamp(2.3rem,4.2vw,3.2rem);line-height:1.04;letter-spacing:-.025em}
@media (min-width:921px){.hero h1{width:max-content;max-width:640px}}
@media (min-width:921px){.hero h1 .blue{white-space:normal}}
@media (max-width:920px){.br-d{display:none}}
.hero h1 .blue{color:var(--blue);display:block}
.hero-copy>p{color:#E7EDF3;font-size:1.04rem;max-width:46ch}
.zip-card{background:#fff;color:var(--midnight);border-radius:8px;padding:20px 20px 14px;display:grid;gap:14px;box-shadow:0 18px 40px rgba(0,0,0,.28);max-width:440px}
.zip-card .zc-head{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:center}
.zip-card .zc-head svg.i{width:44px;height:44px;color:var(--red);stroke-width:1.8}
.zip-card h2{font-size:1.18rem;line-height:1.2;letter-spacing:-.01em}
.zip-field{position:relative}
.zip-field svg.i{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--midnight);stroke-width:2.2}
.zip-field input{width:100%;font:500 1rem var(--font-body);color:var(--midnight);padding:12px 14px 12px 42px;border:1px solid #CBD5DF;border-radius:4px;background:#fff}
.zip-field input::placeholder{color:#6F7F8C}
.zip-field input:focus{outline:2px solid var(--blue);outline-offset:0;border-color:var(--blue)}
.zip-card .btn{width:100%;padding:12px 18px}
.zip-card .zc-note{text-align:center;font-size:.8rem;color:var(--smoke)}
.zip-card .zc-err{color:var(--deep-red);font-size:.85rem;font-weight:600}
.ph-tag{position:absolute;right:10px;bottom:10px;z-index:1;font:600 .68rem/1 var(--font-head);letter-spacing:.08em;text-transform:uppercase;background:rgba(24,42,64,.78);color:#fff;padding:6px 8px;border-radius:3px}

/* Stat band */
.stats{background:var(--midnight);color:#fff;border-top:1px solid var(--navy-line)}
.stats ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr)}
.stats li{display:grid;justify-items:center;text-align:center;gap:4px;padding:24px 14px;position:relative}
.stats li+li::before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:1px;background:var(--navy-line)}
.stats svg.i{width:34px;height:34px;color:#fff;stroke-width:1.8;margin-bottom:4px}
.stats b{font-family:var(--font-head);font-weight:800;font-size:1.3rem;letter-spacing:-.01em;line-height:1.15}
.stats span{font-family:var(--font-head);font-size:.92rem;color:#fff;line-height:1.3}

/* Appliance tiles */
.repairs{padding-block:28px 34px}
.repairs h2,.center-title{text-align:center;font-size:clamp(1.35rem,2.2vw,1.6rem)}
.tiles{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.tiles a{display:grid;justify-items:center;gap:10px;padding:18px 10px 14px;background:var(--tile);border:1px solid #E6ECF2;border-radius:6px;text-decoration:none;color:var(--midnight);font-family:var(--font-head);font-size:.85rem;font-weight:500;text-align:center;transition:border-color .15s,background-color .15s,transform .15s}
.tiles a:hover{border-color:var(--blue);background:#fff;transform:translateY(-2px)}
.tiles svg.i{width:38px;height:38px;stroke-width:1.6;color:var(--midnight)}

/* Team row */
.team{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,.95fr);gap:34px;align-items:center}
.team-photo{position:relative;align-self:stretch}
.team-photo img{width:100%;height:100%;min-height:210px;object-fit:cover;object-position:center}
.team-copy{display:grid;gap:14px;justify-items:start;padding-block:16px}
.team-copy h2{font-size:clamp(1.4rem,2.2vw,1.65rem)}
.team-copy p{color:var(--smoke);font-size:.97rem}
.ticks{list-style:none;margin:0;padding:16px var(--gutter) 16px 0;display:grid;gap:10px}
.ticks li{display:flex;gap:10px;align-items:center;font-size:.95rem;color:var(--midnight)}
.ticks svg{width:20px;height:20px;flex:none}
.team-wrap{max-width:var(--wrap);margin-inline:auto}

/* Reviews */
.reviews-sec{padding-block:44px 40px}
.reviews-head{display:grid;justify-items:center;gap:6px;text-align:center;margin-bottom:26px}
.stars{display:inline-flex;gap:2px;color:var(--gold)}
.stars svg{width:18px;height:18px;fill:currentColor}
.reviews-head .stars svg{width:22px;height:22px}
.reviews-head small{font-size:.8rem;color:var(--smoke)}
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.review{border:1px solid var(--rule);border-radius:6px;padding:22px 22px 18px 64px;position:relative;display:grid;gap:12px;align-content:space-between;background:#fff;min-width:0}
.review::before{content:"\201C";position:absolute;left:20px;top:8px;font:800 3.4rem/1 var(--font-head);color:#A9CFEE}
.review blockquote{margin:0;font-size:.92rem;color:var(--midnight)}
.review footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;font-family:var(--font-head);font-size:.82rem;font-weight:700}
.review footer .src{margin-right:auto;font-weight:500;color:var(--smoke)}
.review .stars svg{width:15px;height:15px}

/* Trust band */
.trust{background:var(--midnight);color:#fff}
.trust ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.trust li{display:flex;gap:14px;align-items:center;padding-block:16px;justify-content:center}
.trust svg.i{width:30px;height:30px;stroke-width:1.7;color:#fff}
.trust b{display:block;font-family:var(--font-head);font-size:.92rem;font-weight:700}
.trust span{display:block;font-size:.8rem;color:var(--on-dark);line-height:1.35}

/* Footer */
.site-footer{background:#fff;border-top:1px solid var(--rule)}
.f-main{display:flex;align-items:center;gap:24px;padding-block:22px;flex-wrap:wrap}
@media (min-width:1181px){.f-main{flex-wrap:nowrap}}
.f-main .brand img{width:170px}
.f-nav{display:flex;flex-wrap:wrap;gap:6px 20px;margin-inline:auto;list-style:none;padding:0;margin-block:0}
.f-nav a{font-family:var(--font-head);font-size:.86rem;font-weight:600;color:var(--midnight);text-decoration:none}
.f-nav a:hover{color:var(--red)}
.f-cta{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap}
.f-phone{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-head);font-weight:700;color:var(--midnight);text-decoration:none;white-space:nowrap}
.f-phone svg.i{width:18px;height:18px}
.f-meta{border-top:1px solid var(--rule);padding-block:14px 18px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;font-size:.8rem;color:var(--smoke)}
.f-meta a{color:var(--smoke)}

/* Responsive */
@media (max-width:1000px){
  .tiles{grid-template-columns:repeat(3,1fr)}
  .team{grid-template-columns:1fr 1fr}
  .team-photo{grid-column:1/-1;max-height:320px;overflow:hidden}
  .team-copy{padding-left:var(--gutter)}
  .reviews{grid-template-columns:1fr}
}
@media (max-width:920px){
  /* Mobile/tablet: the photo is a clear band on top (team + building sign crop), text below on midnight */
  .hero-media{position:relative;inset:auto;z-index:0;aspect-ratio:1146/870;max-height:62vh;overflow:hidden}
  .hero-media img,.hero-media picture{object-position:center 40%}
  .hero-media::after{content:"";position:absolute;inset:auto 0 0 0;height:28%;background:linear-gradient(180deg,rgba(24,42,64,0),var(--midnight))}
  .hero::before{display:none}
  .hero .wrap{position:relative;z-index:1;margin-top:-34px;padding-block:0 22px}
  .zip-card{max-width:none}
  .stats ul{grid-template-columns:1fr 1fr}
  .stats li:nth-child(3)::before{display:none}
  .stats li:nth-child(n+3){border-top:1px solid var(--navy-line)}
  .trust ul{grid-template-columns:1fr;gap:0}
  .trust li{justify-content:flex-start;border-top:1px solid var(--navy-line)}
  .trust li:first-child{border-top:0}
  .f-main{justify-content:center;text-align:center}
  .f-cta{width:100%;justify-content:center}
}
@media (max-width:640px){
  .hero .wrap{padding-block:0 18px}
  .hero h1{font-size:2.15rem}
  .tiles{gap:10px}
  .tiles a{padding:14px 6px 10px;font-size:.78rem}
  .tiles svg.i{width:32px;height:32px}
  .team{grid-template-columns:1fr;gap:0}
  .team-copy{padding:20px var(--gutter) 6px}
  .ticks{padding:10px var(--gutter) 24px}
  .stats li{padding:18px 8px}
  .stats b{font-size:1.1rem}
  .stats span{font-size:.82rem}
  .f-nav{justify-content:center}
}
.mobile-bar{display:none}
@media (max-width:640px){
  .mobile-bar{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--rule);padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px))}
  .mobile-bar .btn{padding:11px 10px;font-size:.92rem}
  body{padding-bottom:70px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* ---------- Sections ---------- */
.band { padding-block: 84px; }
.band-mist { background: var(--mist); }
.band-dark { background: var(--midnight); color: var(--white); }
.band-dark h2, .band-dark h3 { color: var(--white); }
.band-dark .lead, .band-dark .muted { color: #C9D3DD; }
.band-dark .eyebrow { color: var(--blue); }
.band-dark a { color: var(--blue); }
.section-head { display: grid; gap: 12px; margin-bottom: 40px; max-width: 760px; }
.section-head.split { max-width: none; grid-template-columns: 1fr auto; align-items: end; gap: 24px; }
@media (max-width: 760px) { .section-head.split { grid-template-columns: 1fr; } .band { padding-block: 60px; } }

.rule-title { display: flex; align-items: center; gap: 16px; }
.rule-title::after { content: ""; flex: 1; height: 1px; background: var(--rule); }

/* ---------- Appliance grid ---------- */
.appliances { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--rule); border-left: 1px solid var(--rule); }
.appliance {
  display: grid; grid-template-columns: 44px 1fr; gap: 4px 16px; align-items: center;
  padding: 22px 20px; text-decoration: none; color: var(--midnight);
  border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); background: var(--white);
  transition: background-color .15s ease;
}
.appliance:hover { background: var(--mist); color: var(--midnight); }
.appliance svg { width: 44px; height: 44px; grid-row: span 2; color: var(--midnight); }
.appliance:hover svg .accent { stroke: var(--red); }
.appliance strong { font-family: var(--font-head); font-weight: 600; font-size: 1.02rem; }
.appliance span { font-size: .86rem; color: var(--smoke); line-height: 1.35; }

.icon { fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.icon .accent { stroke: var(--blue); transition: stroke .15s ease; }

/* ---------- Brands ---------- */
.brands-premium { display: flex; flex-wrap: wrap; gap: 10px 0; margin-top: 8px; }
.brands-premium span {
  font-family: var(--font-head); font-weight: 600; font-size: 1.05rem; letter-spacing: .02em;
  padding: 4px 18px; border-left: 1px solid var(--ash);
}
.brands-premium span:first-child { border-left: 0; padding-left: 0; }
.brand-list { columns: 5 160px; column-gap: 28px; margin: 0; padding: 0; list-style: none; }
.brand-list li { padding: 7px 0; border-bottom: 1px solid var(--rule); break-inside: avoid; font-size: .95rem; }

/* ---------- Feature list (why us) ---------- */
.features { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 48px; }
.feature { padding: 26px 0; border-top: 1px solid var(--rule); display: grid; gap: 8px; align-content: start; min-width: 0; }
.feature svg { width: 30px; height: 30px; color: var(--midnight); margin-bottom: 6px; }
.feature p { color: var(--smoke); font-size: .97rem; }
.band-dark .feature { border-top-color: rgba(255,255,255,.14); }
.band-dark .feature p { color: #C9D3DD; }
.band-dark .feature svg { color: var(--white); }
@media (max-width: 900px) { .features { grid-template-columns: 1fr 1fr; } }
@media (max-width: 760px) { .appliances { grid-template-columns: 1fr 1fr; } }
@media (max-width: 440px) { .appliances { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .features { grid-template-columns: 1fr; } }

/* ---------- Regions ---------- */
.regions { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; border-top: 2px solid var(--midnight); }
.region { padding: 24px 22px 26px 0; display: grid; gap: 10px; align-content: start; min-width: 0; }
.region + .region { padding-left: 22px; border-left: 1px solid var(--rule); }
.region .state { font-family: var(--font-head); font-size: .74rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--smoke); }
.region p { font-size: .94rem; color: var(--smoke); }
.region .tag { justify-self: start; font-family: var(--font-head); font-size: .72rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--white); background: var(--red); padding: 3px 9px; border-radius: 3px; }
.region a { font-family: var(--font-head); font-weight: 600; font-size: .92rem; }
@media (max-width: 900px) {
  .regions { grid-template-columns: 1fr 1fr; }
  .region:nth-child(3) { padding-left: 0; border-left: 0; }
  .region:nth-child(n+3) { border-top: 1px solid var(--rule); }
}
@media (max-width: 520px) {
  .regions { grid-template-columns: 1fr; }
  .region, .region + .region { padding-left: 0; border-left: 0; }
  .region + .region { border-top: 1px solid var(--rule); }
}

/* ---------- Split panels ---------- */
.split-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.panel { border-radius: var(--radius); padding: 38px; display: grid; gap: 16px; align-content: start; min-width: 0; }
.panel-white { background: var(--white); border: 1px solid var(--rule); }
.panel-dark { background: var(--midnight); color: var(--white); }
.panel-dark h3, .panel-dark h2 { color: var(--white); }
.panel-dark p { color: #C9D3DD; }
.panel-dark .eyebrow { color: var(--blue); }
.panel .price { font-family: var(--font-head); font-weight: 700; font-size: 2.4rem; letter-spacing: -.02em; line-height: 1; font-variant-numeric: tabular-nums; }
.panel .price small { font-size: 1rem; font-weight: 500; color: var(--smoke); letter-spacing: 0; }
.panel-dark .price small { color: #9FB0C1; }
.panel .btn { justify-self: start; margin-top: 6px; }
@media (max-width: 800px) { .split-2 { grid-template-columns: 1fr; } .panel { padding: 28px; } }

.checks { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.checks li { display: grid; grid-template-columns: 22px 1fr; gap: 10px; align-items: start; font-size: .97rem; }
.checks svg { width: 20px; height: 20px; margin-top: 3px; color: var(--blue); }

/* ---------- CTA band ---------- */
.cta-band { background: var(--midnight); color: var(--white); position: relative; overflow: hidden; }
.cta-band .wrap { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 32px; align-items: center; padding-block: 60px; }
.cta-band h2 { color: var(--white); }
.cta-band p { color: #C9D3DD; margin-top: 8px; }
.cta-band .arc { position: absolute; right: -220px; top: -300px; width: 560px; max-width: none; pointer-events: none; }
.cta-band .actions { display: flex; flex-wrap: wrap; gap: 14px; }
@media (max-width: 800px) { .cta-band .wrap { grid-template-columns: 1fr; } }

/* ---------- Page hero (interior) ---------- */
.page-hero { background: var(--mist); border-bottom: 1px solid var(--rule); }
.page-hero .wrap { padding-block: 56px 50px; display: grid; gap: 14px; }
.crumbs { font-family: var(--font-head); font-size: .84rem; color: var(--smoke); }
.crumbs a { color: var(--smoke); }

/* ---------- City lists ---------- */
.area-block { padding-block: 34px; border-top: 1px solid var(--rule); display: grid; grid-template-columns: 280px 1fr; gap: 32px; }
.area-block:first-child { border-top: 0; padding-top: 0; }
.area-block > div:first-child { display: grid; gap: 10px; align-content: start; }
.cities { list-style: none; margin: 0; padding: 0; columns: 4 150px; column-gap: 24px; }
.cities li { padding: 4px 0; break-inside: avoid; font-size: .95rem; }
.cities a { color: var(--midnight); text-decoration: none; border-bottom: 1px solid var(--rule); }
.cities a:hover { border-bottom-color: var(--red); }
@media (max-width: 800px) { .area-block { grid-template-columns: 1fr; gap: 18px; } }

/* ---------- Plan table ---------- */
.plans { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; border: 1px solid var(--rule); border-radius: var(--radius); overflow: hidden; background: var(--white); }
.plan { padding: 28px 24px; display: grid; gap: 12px; align-content: start; border-left: 1px solid var(--rule); min-width: 0; }
.plan:first-child { border-left: 0; }
.plan .eyebrow { color: var(--smoke); }
.plan h3 { font-size: 1.15rem; }
.plan .price { font-family: var(--font-head); font-weight: 700; font-size: 2.2rem; letter-spacing: -.02em; line-height: 1; font-variant-numeric: tabular-nums; }
.plan .price small { font-size: .95rem; font-weight: 500; color: var(--smoke); letter-spacing: 0; }
.plan p { font-size: .92rem; color: var(--smoke); }
.plan .btn { justify-self: start; padding: 11px 18px; }
.plan.featured { background: var(--midnight); color: var(--white); }
.plan.featured h3 { color: var(--white); }
.plan.featured p, .plan.featured .price small, .plan.featured .eyebrow { color: #C9D3DD; }
.plan .sale { justify-self: start; font-family: var(--font-head); font-size: .72rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--white); background: var(--red); padding: 3px 9px; border-radius: 3px; }
@media (max-width: 960px) {
  .plans { grid-template-columns: 1fr 1fr; }
  .plan:nth-child(3) { border-left: 0; }
  .plan:nth-child(n+3) { border-top: 1px solid var(--rule); }
}
@media (max-width: 540px) {
  .plans { grid-template-columns: 1fr; }
  .plan { border-left: 0; }
  .plan + .plan { border-top: 1px solid var(--rule); }
}

/* ---------- Reasons list (about) ---------- */
.reasons { list-style: none; margin: 0; padding: 0; counter-reset: r; display: grid; grid-template-columns: 1fr 1fr; gap: 0 56px; }
.reasons li { counter-increment: r; display: grid; grid-template-columns: 48px 1fr; gap: 6px 14px; padding: 24px 0; border-top: 1px solid var(--rule); min-width: 0; }
.reasons li::before { content: counter(r, decimal-leading-zero); font-family: var(--font-head); font-weight: 700; color: var(--red); font-size: 1.05rem; font-variant-numeric: tabular-nums; grid-row: span 2; padding-top: 1px; }
.reasons h3 { font-size: 1.08rem; }
.reasons p { color: var(--smoke); font-size: .96rem; }
@media (max-width: 800px) { .reasons { grid-template-columns: 1fr; } }

.prose { max-width: 68ch; display: grid; gap: 18px; }
.prose p { color: var(--smoke); }


.tiles svg.i{stroke-width:2.4}
.appliance svg{stroke-width:1.6}

/* ===================== v3 additions: templates for the full site ===================== */
.tick{width:20px;height:20px;flex:none}.tick circle{fill:#1F6FB2}.tick path{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.stars svg.off{color:#D5DCE3;fill:#D5DCE3}
.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}
.page-hero .wrap{padding-block:44px 40px}
.page-hero.split .wrap{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:40px;align-items:center}
.page-hero.split .zip-card{box-shadow:0 10px 30px rgba(24,42,64,.12);border:1px solid var(--rule)}
@media (max-width:900px){.page-hero.split .wrap{grid-template-columns:1fr}}
.layout-2{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;align-items:start}
@media (max-width:960px){.layout-2{grid-template-columns:1fr}}
.side{position:sticky;top:96px;display:grid;gap:18px}
.side-card{border:1px solid var(--rule);border-radius:8px;padding:22px;display:grid;gap:12px;background:#fff}
.side-card.dark{background:var(--midnight);border-color:var(--midnight);color:#fff}
.side-card.dark h3{color:#fff}.side-card.dark p{color:var(--on-dark)}
.side-card .btn{width:100%}
.side-card .big-phone{font-family:var(--font-head);font-weight:800;font-size:1.35rem;color:inherit;text-decoration:none}
.prose{display:grid;gap:16px;max-width:72ch}
.prose h2{font-size:1.5rem;margin-top:12px}.prose h3{margin-top:8px}
.prose p,.prose li{color:var(--smoke)}
.prose ul,.prose ol{margin:0;padding-left:1.25rem;display:grid;gap:6px}
.legacy-body{max-width:100%;overflow-wrap:anywhere}
.legacy-body img{max-width:100%;height:auto}
.legacy-body table{display:block;overflow-x:auto;border-collapse:collapse;max-width:100%}
.legacy-body td,.legacy-body th{border:1px solid var(--rule);padding:6px 10px;vertical-align:top}
.legacy-body [class*="x-container"],.legacy-body [class*="x-column"],.legacy-body [class*="x-section"],.legacy-body [class*="x-row"]{width:auto!important;max-width:100%!important;float:none!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;background-image:none!important}
.legacy-body h1{font-size:1.6rem}.legacy-body h1,.legacy-body h2,.legacy-body h3{margin:18px 0 8px}
.legacy-body p{margin:0 0 12px;color:var(--smoke)}
.legacy-body a{word-break:break-word}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.section-title h2{font-size:clamp(1.35rem,2.2vw,1.65rem)}
.jobs{display:grid;gap:14px}
.job{border:1px solid var(--rule);border-radius:8px;padding:16px 18px;display:grid;gap:6px;background:#fff}
.job-top{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline;font-family:var(--font-head);font-size:.85rem;color:var(--smoke)}
.job-top b{color:var(--midnight);font-size:.98rem}
.job p{font-size:.94rem;color:var(--smoke)}
.faq{display:grid;gap:10px}
.faq details{border:1px solid var(--rule);border-radius:8px;background:#fff}
.faq summary{cursor:pointer;list-style:none;padding:16px 46px 16px 18px;font-family:var(--font-head);font-weight:700;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:1.3rem;color:var(--red)}
.faq details[open] summary::after{content:"−"}
.faq details p{padding:0 18px 16px;color:var(--smoke)}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.chips a{display:inline-block;padding:7px 12px;border:1px solid var(--rule);border-radius:999px;font-family:var(--font-head);font-size:.86rem;color:var(--midnight);text-decoration:none;background:#fff}
.chips a:hover{border-color:var(--blue)}
.pager{display:flex;justify-content:space-between;gap:12px;margin-top:28px;flex-wrap:wrap}
.notice{border-radius:8px;padding:14px 16px;font-size:.95rem}
.notice.ok{background:#EAF6EE;border:1px solid #B9DEC5;color:#1D5631}
.notice.err{background:#FDEEEC;border:1px solid #F2C2BC;color:#7A1B14}
/* forms */
.form{display:grid;gap:22px}
.fieldset{border:1px solid var(--rule);border-radius:10px;padding:22px;display:grid;gap:16px;margin:0;background:#fff}
.fieldset legend{font-family:var(--font-head);font-weight:800;font-size:1.05rem;padding:0 6px}
.fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.fgrid .full{grid-column:1/-1}
@media (max-width:640px){.fgrid{grid-template-columns:1fr}}
.field{display:grid;gap:6px;min-width:0}
.field label,.field .lbl{font-family:var(--font-head);font-weight:600;font-size:.9rem}
.field .req{color:var(--red)}
.field .hint{font-size:.82rem;color:var(--smoke)}
.field input[type=text],.field input[type=email],.field input[type=tel],.field select,.field textarea{width:100%;font:400 1rem var(--font-body);color:var(--midnight);padding:11px 12px;border:1px solid #CBD5DF;border-radius:6px;background:#fff}
.field textarea{min-height:120px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--blue);outline-offset:0;border-color:var(--blue)}
.field .bad{border-color:var(--red)!important}
.field .ferr{color:var(--deep-red);font-size:.84rem;font-weight:600}
.opt{display:flex;gap:10px;align-items:flex-start;font-size:.95rem}
.opt input{margin-top:4px;width:18px;height:18px;accent-color:var(--red);flex:none}
.opts{display:grid;gap:10px}
.opts.inline{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.plan-pick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.plan-pick label{border:1px solid var(--rule);border-radius:8px;padding:14px;display:flex;gap:10px;cursor:pointer}
.plan-pick label:has(input:checked){border-color:var(--red);box-shadow:0 0 0 1px var(--red)}
@media (max-width:640px){.plan-pick{grid-template-columns:1fr}}
.total-bar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;background:var(--mist);border-radius:8px;padding:16px 18px;font-family:var(--font-head);font-weight:700}
.steps{counter-reset:s;list-style:none;margin:0;padding:0;display:grid;gap:12px}
.steps li{counter-increment:s;display:grid;grid-template-columns:30px 1fr;gap:10px;font-size:.95rem;color:var(--smoke)}
.steps li::before{content:counter(s);width:26px;height:26px;border-radius:50%;background:var(--midnight);color:#fff;font:700 .8rem/26px var(--font-head);text-align:center}
/* embeds, posts, review summary */
.embed-frame{width:100%;min-height:900px;border:1px solid var(--rule);border-radius:8px;background:#fff}
.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;list-style:none;margin:0;padding:0}
@media (max-width:900px){.posts{grid-template-columns:1fr 1fr}}@media (max-width:560px){.posts{grid-template-columns:1fr}}
.post-card{border:1px solid var(--rule);border-radius:8px;padding:20px;display:grid;gap:8px;height:100%;text-decoration:none;color:var(--midnight);background:#fff}
.post-card:hover{border-color:var(--blue)}
.post-card small{color:var(--smoke);font-family:var(--font-head)}
.review-summary{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;padding:22px;border:1px solid var(--rule);border-radius:10px;background:#fff;margin-bottom:26px}
.review-summary .score{font-family:var(--font-head);font-weight:800;font-size:2.6rem;line-height:1}
.review-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;list-style:none;margin:0;padding:0}
@media (max-width:760px){.review-links{grid-template-columns:1fr 1fr}}@media (max-width:460px){.review-links{grid-template-columns:1fr}}
.review-links a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px;border:1px solid var(--rule);border-radius:8px;font-family:var(--font-head);font-weight:700;color:var(--midnight);text-decoration:none;background:#fff}
.review-links a:hover{border-color:var(--blue)}
.review-links a.primary{background:var(--midnight);color:#fff;border-color:var(--midnight)}
.review-links svg.i{width:18px;height:18px}
.hist-table{width:100%;border-collapse:collapse;font-size:.92rem}
.hist-wrap{overflow-x:auto}
.hist-table th,.hist-table td{border-bottom:1px solid var(--rule);padding:10px 8px;text-align:left;vertical-align:top}
.hist-table th{font-family:var(--font-head);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--smoke)}
.attach-img{border:1px solid var(--rule);border-radius:8px;max-height:70vh;width:auto}
.tiles.tiles-8{grid-template-columns:repeat(4,1fr)}
@media (max-width:1000px){.tiles.tiles-8{grid-template-columns:repeat(4,1fr)}}
@media (max-width:640px){.tiles.tiles-8{grid-template-columns:repeat(2,1fr)}}
.review{margin:0}
.appliance svg.i{stroke-width:2.2}

/* ---- Service Areas mega menu (v4) ---- */
.main-nav li.has-mega{position:static}
.dd.mega{left:50%;transform:translateX(-50%);width:min(1060px,calc(100vw - 32px));padding:20px 22px 14px}
.dd.mega::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px}
.mega-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.mega-col{display:grid;align-content:start;gap:2px;min-width:0}
.mega-col ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:0}
.mega-col li a{padding:4px 0;font-size:.88rem}
.mega-col li a:hover{background:none;color:var(--red)}
.dd .mega-h{padding:0;font-weight:700;font-size:.95rem;color:var(--midnight)}
.dd .mega-h:hover{background:none;color:var(--red)}
.mega-st{font-family:var(--font-head);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--smoke)}
.dd .mega-all{padding:6px 0 0;font-weight:600;font-size:.84rem;color:var(--link)}
.dd .mega-all:hover{background:none}
.dd .mega-foot{display:flex;align-items:center;gap:8px;margin-top:14px;padding:12px 0 0;border-top:1px solid var(--rule);border-radius:0;font-weight:600;color:var(--link)}
.dd .mega-foot:hover{background:none;color:var(--midnight)}
.dd .mega-foot svg.i{width:16px;height:16px}
.f-cities{display:flex;flex-wrap:wrap;gap:6px 16px;padding-block:0 16px;font-size:.84rem}
.f-cities span{font-family:var(--font-head);font-weight:700;color:var(--midnight)}
.f-cities a{color:var(--smoke);text-decoration:none}
.f-cities a:hover{color:var(--red);text-decoration:underline}
.regions{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1100px){.regions{grid-template-columns:repeat(3,minmax(0,1fr))}.region:nth-child(4){padding-left:0;border-left:0}.region:nth-child(n+4){border-top:1px solid var(--rule)}}
@media (max-width:640px){.regions{grid-template-columns:1fr}.region,.region+.region{padding-left:0;border-left:0}.region+.region{border-top:1px solid var(--rule)}}
@media (max-width:640px){.f-cities{justify-content:center}}
@media (max-width:1100px) and (min-width:641px){.region:nth-child(3){padding-left:22px;border-left:1px solid var(--rule);border-top:0}}

/* menu grouped by state (v5) */
.mega-state{display:grid;align-content:start;gap:10px;min-width:0}
.mega-state>.mega-st{display:block;padding-bottom:6px;border-bottom:1px solid var(--rule)}
.mega-cols{display:grid;gap:18px}
.mega-new{justify-self:start;font-family:var(--font-head);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--red);padding:2px 7px;border-radius:3px;margin-top:3px}
/* v6: job records */
.job-model{font-family:var(--font-head);font-size:.8rem;letter-spacing:.02em;color:var(--smoke);margin:0}
.job p{margin:0}
.job-review{margin:6px 0 0;padding:12px 14px;background:var(--mist);border-left:3px solid var(--red);border-radius:4px;display:grid;gap:6px}
.job-review .stars svg{width:15px;height:15px}
.job-review p{font-style:italic;color:var(--midnight)}
.job-review cite{font-style:normal;font-family:var(--font-head);font-weight:600;font-size:.85rem;color:var(--midnight)}
.side-addr{font-size:.9rem;line-height:1.5;margin:0;padding-top:10px;border-top:1px solid var(--navy-line)}
/* v7: contact us */
.contact-quick{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;padding:22px;border:1px solid var(--rule);border-radius:10px;background:var(--mist)}
.contact-quick>div{display:grid;gap:6px}
.contact-quick .big-phone{font-family:var(--font-head);font-weight:800;font-size:1.5rem;color:var(--midnight);text-decoration:none;display:inline-flex;gap:8px;align-items:center}
.contact-quick .contact-btns{display:flex;gap:12px;margin-left:auto}
.locations{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.location{border:1px solid var(--rule);border-radius:10px;padding:20px;display:grid;gap:10px;align-content:start;background:#fff}
.location h3{margin:0;font-size:1.15rem}.location h3 a{color:var(--midnight);text-decoration:none}
.loc-phone{font-family:var(--font-head);font-weight:700;color:var(--midnight);text-decoration:none;display:inline-flex;gap:8px;align-items:center}
.loc-addr{display:flex;gap:8px;margin:0;font-size:.95rem;color:var(--smoke)}.loc-addr .i{flex:none;margin-top:3px}
.loc-links{margin:0;font-size:.9rem}
@media (max-width:640px){.contact-quick .contact-btns{margin-left:0;width:100%;flex-wrap:wrap}.contact-btns .btn{flex:1 1 100%}}
/* v8: live chat (tawk.to, opened by our own buttons) */
.chat-fab{position:fixed;right:20px;bottom:20px;z-index:55;display:inline-flex;align-items:center;gap:9px;padding:12px 18px;border:0;border-radius:999px;background:var(--midnight);color:#fff;font:700 .95rem var(--font-head);box-shadow:0 6px 20px rgba(24,42,64,.28);cursor:pointer}
.chat-fab:hover{background:var(--blue)}
.chat-fab svg.i{width:20px;height:20px}
.chat-unread{min-width:20px;height:20px;border-radius:10px;background:var(--red);color:#fff;font-size:.75rem;display:grid;place-items:center;padding:0 5px}
.chat-unread[hidden]{display:none}
.chat-fab.is-open{display:none}
@media (max-width:640px){
  .chat-fab{display:none}
  .mobile-bar.has-chat{grid-template-columns:1fr 1fr 1fr}
  .mobile-bar .btn svg.i{width:16px;height:16px}
}
/* v9: appliance tips + show more */
.legacy-body ol.tips{padding-left:1.3em;display:grid;gap:8px}
.legacy-body ol.tips li::marker{font-family:var(--font-head);font-weight:700;color:var(--red)}
.tips-cta{font-family:var(--font-head);font-weight:600}
.more-row{margin-top:18px;display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.is-more-hidden{display:none !important}
/* v10: home "Many more" tile */
.tiles a.tile-more{background:#fff;border-style:dashed;border-color:#C9D6E3}
.tiles a.tile-more small{display:block;font-size:.76rem;font-weight:600;color:var(--link);margin-top:-8px;line-height:1.3}
.tiles li{display:flex}.tiles li>a{flex:1;align-content:start}
/* v11: related appliance links on appliance pages */
.related-appl{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:.92rem}
.related-appl span{font-family:var(--font-head);font-weight:600;color:var(--smoke)}
.related-appl a{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--rule);border-radius:999px;background:#fff;color:var(--midnight);text-decoration:none;font-family:var(--font-head);font-weight:600}
.related-appl a:hover{border-color:var(--blue)}
.related-appl svg.i{width:18px;height:18px}

/* v12: technician profiles + team grid */
.tech-stats{background:var(--midnight);color:#fff}
.tech-stats ul{list-style:none;margin:0;padding:18px 0;display:flex;flex-wrap:wrap;gap:12px 48px}
.tech-stats li{display:grid;gap:2px}
.tech-stats b{font:800 1.7rem/1.1 var(--font-head)}
.tech-stats span{color:#C9D6E3;font-size:.86rem}
.team-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.team-grid a{display:grid;justify-items:start;gap:6px;padding:18px;border:1px solid var(--rule);border-radius:8px;background:#fff;color:var(--midnight);text-decoration:none;height:100%}
.team-grid a:hover{border-color:var(--blue);box-shadow:0 6px 18px rgba(24,42,64,.08)}
.team-grid b{font:700 1.08rem/1.2 var(--font-head)}
.price-table{width:100%;border-collapse:collapse;margin:14px 0 8px}
.price-table th,.price-table td{border:1px solid var(--rule);padding:10px 12px;text-align:left;vertical-align:top}
.price-table thead th{background:var(--midnight);color:#fff}
.team-badge{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--midnight);color:#fff;font:800 1.2rem/1 var(--font-head)}
@media (max-width:640px){.tech-stats ul{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tech-stats b{font-size:1.35rem}.tech-stats span{font-size:.74rem}}
.team-role{font-size:.8rem;font-weight:600;color:var(--blue);text-transform:uppercase;letter-spacing:.04em}

/* v13: brand pages */
.brand-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.brand-grid a{display:grid;gap:4px;padding:16px 18px;border:1px solid var(--rule);border-radius:8px;background:#fff;color:var(--midnight);text-decoration:none;height:100%}
.brand-grid a:hover{border-color:var(--blue);box-shadow:0 6px 18px rgba(24,42,64,.08)}
.brand-grid b{font:700 1.08rem/1.2 var(--font-head)}
.brand-grid span{font-size:.86rem}
.common-fixes{margin:0 0 8px;padding-left:22px;display:grid;gap:6px}
.common-fixes li{font-weight:600}
table.codes{width:100%;border-collapse:collapse;margin:8px 0 10px;font-size:.94rem}
table.codes th,table.codes td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--rule);vertical-align:top}
table.codes th{font-family:var(--font-head);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--smoke)}
table.codes td:first-child,table.codes th:first-child{white-space:nowrap;width:1%}
.brand-note{font-size:.78rem;color:var(--smoke);padding-block:18px 26px;margin:0}
.dd.dd-2{display:none;grid-template-columns:240px 220px;gap:6px 18px;padding:12px 14px}
.main-nav li:hover>.dd.dd-2,.main-nav li:focus-within>.dd.dd-2{display:grid}
.dd-2 ul{list-style:none;margin:0;padding:0}
.dd-2 .dd-h{font-family:var(--font-head);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--smoke);padding:6px 12px 4px}
.job-top b a{color:inherit;text-decoration:none;border-bottom:1px solid #C9D3DE}
.job-top b a:hover{color:var(--red);border-color:var(--red)}
.brand-list a{color:var(--midnight);text-decoration:none;border-bottom:1px solid #C9D3DE}
.brand-list a:hover{color:var(--red);border-color:var(--red)}

/* v14: team member profiles and Meet Our Team */
.profile{background:var(--midnight);color:#fff;padding:30px 0 60px}
.profile .crumbs,.profile .crumbs a{color:var(--on-dark)}
.profile-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:56px;align-items:center;margin-top:26px}
.profile-photo{position:relative;margin:0 14px 14px 0}
.profile-photo::before{content:"";position:absolute;inset:14px -14px -14px 14px;background:var(--red);border-radius:10px}
.profile-photo img,.profile-mono{position:relative;width:100%;aspect-ratio:1;object-fit:cover;object-position:50% 30%;border-radius:10px;background:var(--midnight-2)}
.profile-mono{display:grid;place-items:center;font:800 7rem/1 var(--font-head);color:var(--blue);border:1px solid var(--navy-line)}
.profile-photo figcaption{position:absolute;left:-10px;bottom:22px;background:#fff;color:var(--midnight);font:800 .92rem/1 var(--font-head);padding:9px 14px;border-radius:4px;box-shadow:0 6px 16px rgba(0,0,0,.25)}
.profile-role{font:700 1.02rem/1.3 var(--font-head);color:var(--blue)}
.profile h1{color:#fff;margin:8px 0 14px}
.profile .lead{color:var(--on-dark)}
.record{display:flex;flex-wrap:wrap;margin:28px 0 0;padding:0}
.record div{padding-right:30px;margin-right:30px;border-right:1px solid var(--navy-line)}
.record div:last-child{border-right:0;margin-right:0;padding-right:0}
.record dt{font-size:.84rem;color:var(--on-dark)}
.record dd{margin:2px 0 0;font:800 2rem/1.1 var(--font-head)}
.record dd small{display:block;font:400 .8rem/1.4 var(--font-body);color:var(--on-dark);margin-top:2px}
.profile-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.btn-ghost{border-color:rgba(255,255,255,.5);color:#fff;background:transparent}
.btn-ghost:hover{background:#fff;color:var(--midnight)}
@media (max-width:820px){
  .profile{padding-bottom:44px}
  .profile-grid{grid-template-columns:1fr;gap:30px}
  .profile-photo{width:min(220px,58vw)}
  .profile-mono{font-size:5rem}
  .record div{padding-right:18px;margin-right:18px}
  .record dd{font-size:1.6rem}
}
.bio{max-width:68ch}
.bio h2{display:flex;align-items:center;gap:12px;font-size:1.3rem;margin:0 0 12px}
.bio h2::before{content:"";width:22px;height:3px;background:var(--red);flex:none}
.bio h2:not(:first-child){margin-top:36px}
.bio p{font-size:1.04rem;line-height:1.7}
.bio h2~h2~p{border-left:3px solid var(--red);margin:0;padding:0 0 14px 20px;color:var(--midnight)}
.bio-more{margin-top:26px;font-family:var(--font-head);font-weight:600}

.team-intro{padding-block:56px 0}
.team-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 56px}
.team-cols h2{font-size:1.4rem;margin:0 0 10px}
.team-cols p{font-size:1.04rem;line-height:1.7}
@media (max-width:820px){.team-cols{grid-template-columns:1fr}}
.team-band{padding-block:56px}
.team-intro+.team-band{padding-top:48px}
.team-band+.team-band:not(.team-office){padding-top:0}
.team-h{font-size:1.6rem}
.team-sub{color:var(--smoke);margin-top:6px;max-width:60ch}
.leaders{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:18px}
.leaders a{display:grid;grid-template-columns:170px minmax(0,1fr);border:1px solid var(--rule);border-radius:10px;overflow:hidden;background:#fff;color:var(--midnight);text-decoration:none;height:100%}
.leaders a:hover{border-color:var(--blue)}
.leaders img,.leaders .hero-mono{width:100%;height:100%;min-height:170px;object-fit:cover;object-position:50% 30%;border-radius:0}
.leaders .who{display:grid;align-content:center;gap:4px;padding:20px 22px}
.leaders b{font:800 1.4rem/1.15 var(--font-head)}
.leaders .role{font:700 .96rem/1.3 var(--font-head);color:var(--red)}
.leaders .rec{color:var(--smoke);font-size:.9rem}
.leaders .more{margin-top:10px;color:var(--link);font:600 .92rem/1.3 var(--font-head)}
.roster{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:26px 18px}
.roster a{display:grid;gap:3px;color:var(--midnight);text-decoration:none}
.roster img,.roster .hero-mono{width:100%;aspect-ratio:1;object-fit:cover;object-position:50% 30%;border-radius:8px;margin-bottom:9px}
.roster img{background:var(--mist)}
.roster b{font:700 1.1rem/1.2 var(--font-head)}
.roster .rec{font-size:.86rem;color:var(--smoke)}
.roster a:hover b{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.hero-mono{display:grid;place-items:center;background:#E3EBF2;color:#7F97AD;font:800 3.4rem/1 var(--font-head);border-radius:8px}
.team-office{background:var(--mist)}
.office-team{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:30px 40px}
.office-team li{display:grid;grid-template-columns:84px minmax(0,1fr);gap:18px;align-items:start}
.office-team img{width:84px;height:84px;border-radius:50%;object-fit:cover;object-position:50% 22%;background:#fff}
.office-team h3{margin:0;font-size:1.15rem}
.legacy-body .office-team p{margin:6px 0 0}
.office-team .office-role{font:700 .9rem/1.3 var(--font-head);color:var(--red);margin:2px 0 0}
.office-team details{margin-top:6px}
.office-team summary{cursor:pointer;color:var(--link);font:600 .92rem/1.4 var(--font-head);list-style:none}
.office-team summary::-webkit-details-marker{display:none}
.office-team summary::after{content:" +"}
.office-team details[open] summary::after{content:" \2212"}
.team-cta{padding-block:52px}
.team-cta .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 40px}
.team-cta .lead{margin-top:8px}
.team-cta .btn-red{color:#fff}
.team-cta-btns{display:flex;flex-wrap:wrap;gap:12px}

/* v15: About page story */
.about-body{max-width:68ch}
.about-body h2{font-size:clamp(1.4rem,2.4vw,1.8rem);margin:0 0 14px}
.about-body h2:not(:first-child){margin-top:44px}
.about-body p{font-size:1.06rem;line-height:1.75}
.about-body blockquote{margin:30px 0;padding:6px 0 6px 24px;border-left:4px solid var(--red)}
.about-body blockquote p{font:700 clamp(1.25rem,2.2vw,1.55rem)/1.35 var(--font-head);color:var(--midnight);margin:0;letter-spacing:-.01em}
.about-body blockquote cite{display:block;margin-top:10px;font-style:normal;font-family:var(--font-head);font-weight:600;color:var(--smoke)}
.about-body ul.kept{list-style:none;padding:0;margin:8px 0 18px;display:grid;gap:12px}
.about-body ul.kept li{position:relative;padding-left:30px;line-height:1.65}
.about-body ul.kept li::before{content:"";position:absolute;left:4px;top:.55em;width:12px;height:12px;border-radius:50%;background:var(--red)}
.about-body .about-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.about-body .about-ctas .btn-red{color:#fff}
.about-side{display:grid;gap:22px;align-content:start;position:sticky;top:96px}
.founder-card{margin:0;border:1px solid var(--rule);border-radius:10px;overflow:hidden;background:#fff}
.founder-card img{width:100%;aspect-ratio:1;object-fit:cover;object-position:50% 30%}
.founder-card figcaption{display:grid;gap:2px;padding:16px 18px}
.founder-card b{font:800 1.15rem/1.2 var(--font-head)}
.founder-card span{color:var(--red);font:700 .9rem/1.3 var(--font-head)}
.founder-card a{margin-top:8px;font:600 .92rem/1.3 var(--font-head)}
.about-careers{padding:24px;border-radius:10px;display:grid;gap:12px}
.about-careers h3{font-size:1.25rem}
@media (max-width:960px){.about-side{position:static;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}}

/* v16: Why choose us page */
.why-score{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:6px}
.why-score b{font:800 3rem/1 var(--font-head);color:var(--midnight)}
.why-score div{display:grid;gap:2px}
.why-score span{color:var(--smoke);font-size:.92rem}
.why-score a{font:600 .95rem/1.3 var(--font-head)}
.why-promises{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 40px}
.why-promises h3{font-size:1.2rem;margin:0 0 8px;padding-top:16px;border-top:3px solid var(--red)}
.why-promises p{color:var(--smoke);line-height:1.65}
@media (max-width:860px){.why-promises{grid-template-columns:1fr}}
.team-cta .js-tel.btn-line{color:#fff;border-color:rgba(255,255,255,.55)}
.why-score .stars svg{fill:var(--gold);width:20px;height:20px}

@media (max-width:920px){.site-header .brand img{width:215px}}
@media (max-width:360px){.site-header .brand img{width:185px}}
/* Header: hamburger menu below 1100px wide (the full menu no longer fits beside the larger logo) */
@media (max-width:1100px){.main-nav,.header-cta{display:none}.menu-btn{display:block}.site-header .brand img{width:215px}}

/* v17: footer, one-line menu and phone numbers on their own line */
.f-cta{flex-wrap:nowrap}
@media (min-width:1181px){.f-main{gap:20px}.f-nav{flex-wrap:nowrap;gap:6px 18px}.f-nav a{white-space:nowrap}.f-cta{gap:16px}.f-main .brand img{width:160px}}
@media (min-width:1181px) and (max-width:1279px){.f-main .brand img{width:145px}.f-nav a{font-size:.82rem}.f-nav{gap:6px 14px}.f-phone{font-size:.95rem}.f-cta .btn{padding:12px 18px}}
@media (max-width:1180px){.f-main{justify-content:center}.f-nav{order:3;width:100%;justify-content:center}.f-cities{justify-content:center}}
.f-meta{align-items:flex-end}
.f-contact{display:grid;gap:4px}
.f-phones{display:flex;flex-wrap:wrap;gap:2px 18px}
.f-ph{white-space:nowrap}
.f-ph a{color:var(--midnight);font-weight:600;text-decoration:none}
.f-ph a:hover{color:var(--red);text-decoration:underline}
@media (max-width:640px){.f-meta{flex-direction:column;align-items:center;text-align:center}.f-phones{justify-content:center}.f-cta{flex-wrap:wrap;justify-content:center}}
.f-hours b{color:var(--midnight)}
.f-hours a{color:var(--smoke)}
.f-hours{max-width:110ch}
.stats li:first-child svg.i{color:var(--gold)}
.legacy-body table.price-table{display:table;width:100%}.price-table th{white-space:nowrap}

/* Warranty asterisk and footer note */
.wstar{color:inherit;text-decoration:none;font-size:.7em;vertical-align:super;margin-left:2px;line-height:0}
.wstar:hover{color:var(--red)}
.f-wnote{margin:0;padding:12px 0;border-top:1px solid var(--rule);font-size:.78rem;line-height:1.55;color:var(--smoke)}
.f-wnote a{color:var(--smoke)}
.f-wnote:target{background:#FFF6E5}

/* Contact page headquarters photo */
.hq-photo{position:relative;margin:28px 0 0;border-radius:10px;overflow:hidden;background:var(--mist)}
.hq-photo img{width:100%;height:auto;max-height:440px;object-fit:cover;object-position:50% 60%;display:block}
.hq-photo figcaption{position:absolute;left:16px;bottom:16px;display:grid;gap:2px;background:rgba(24,42,64,.88);color:#fff;padding:10px 14px;border-radius:6px;font-size:.88rem}
.hq-photo figcaption b{font:700 1rem/1.2 var(--font-head)}
@media (max-width:600px){.hq-photo img{max-height:240px}.hq-photo figcaption{position:static;border-radius:0;background:var(--midnight)}}

/* v18 404 page: washing machine as the 0, lost sock in the drum */
.nf-hero{background:var(--midnight);color:#fff;padding:48px 0 56px;overflow:hidden}
.nf-hero .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center}
.nf-hero h1{color:#fff;margin:6px 0 12px}
.nf-hero .eyebrow{color:#FF8A80}
.nf-hero .lead{color:var(--on-dark);max-width:34em}
.nf-hero .crumbs a,.nf-hero .crumbs{color:var(--on-dark)}
.nf-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.nf-code{display:flex;align-items:center;justify-content:center;gap:6px}
.nf-code>span{font-family:var(--font-head);font-weight:800;font-size:clamp(96px,14vw,190px);line-height:1;color:#fff;letter-spacing:-.04em}
.nf-washer{width:clamp(130px,17vw,220px);height:auto;flex:none;filter:drop-shadow(0 14px 24px rgba(0,0,0,.35));animation:nf-shake 3s ease-in-out infinite}
.nf-drum{transform-origin:100px 142px;animation:nf-spin 5s linear infinite}
.nf-water{animation:nf-wave 2.4s linear infinite}
.nf-lcd{animation:nf-blink 1.6s steps(2,start) infinite}
.nf-knob{transform-origin:40px 33px;transform:rotate(130deg)}
@keyframes nf-spin{to{transform:rotate(360deg)}}
@keyframes nf-wave{from{transform:translateX(-60px)}to{transform:translateX(0)}}
@keyframes nf-blink{50%{opacity:.25}}
@keyframes nf-shake{0%,70%,100%{transform:translate(0,0) rotate(0)}74%{transform:translate(-2px,0) rotate(-1deg)}78%{transform:translate(2px,0) rotate(1deg)}82%{transform:translate(-2px,0) rotate(-1deg)}86%{transform:translate(1px,0) rotate(.5deg)}}
@media (prefers-reduced-motion:reduce){.nf-washer,.nf-drum,.nf-water,.nf-lcd{animation:none}}
@media (max-width:860px){.nf-hero .wrap{grid-template-columns:1fr;gap:28px}.nf-code{order:-1}}

/* v19 home: brands we service + where we work */
.more-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-head);font-weight:700;color:var(--link);text-decoration:none;white-space:nowrap}
.more-link:hover{text-decoration:underline}.more-link svg.i{width:16px;height:16px}
.home-brands .section-head,.home-areas .section-head{margin-bottom:28px}
.home-brands .section-head .lead,.home-areas .section-head .lead{margin-top:8px}
.brand-rows{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.brand-rows h3{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--smoke);margin:0 0 12px}
.brand-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.brand-chips a{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--rule);border-radius:999px;background:#fff;font:700 .98rem/1.1 var(--font-head);color:var(--midnight);text-decoration:none}
.brand-chips a:hover{border-color:var(--blue);color:var(--link)}
.area-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.area-card{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--rule);border-radius:10px;padding:20px 18px}
.area-card .state{font:600 .72rem/1.2 var(--font-head);letter-spacing:.14em;text-transform:uppercase;color:var(--smoke);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.area-card .tag{font-style:normal;letter-spacing:.08em;color:#fff;background:var(--red);padding:3px 6px;border-radius:3px}
.area-card h3{font-size:1.08rem;line-height:1.25;margin:0}
.area-card h3 a{color:var(--midnight);text-decoration:none}.area-card h3 a:hover{color:var(--link)}
.area-card ul{list-style:none;margin:0;padding:0;display:grid;gap:5px;font-size:.93rem}
.area-card ul a{color:var(--smoke);text-decoration:none}.area-card ul a:hover{color:var(--link);text-decoration:underline}
.area-foot{margin:auto 0 0;padding-top:12px;border-top:1px solid var(--rule);display:grid;gap:4px;font:700 .9rem/1.3 var(--font-head)}
.area-foot a{color:var(--link);text-decoration:none}.area-foot .area-phone{color:var(--midnight)}
@media (max-width:1180px){.area-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.brand-rows{grid-template-columns:1fr;gap:24px}}
@media (max-width:760px){.area-cards{grid-template-columns:1fr 1fr}}
@media (max-width:460px){.area-cards{grid-template-columns:1fr}.area-card ul{grid-template-columns:1fr 1fr}}
/* v20 hero line above the H1 lists every state; give it the H1's width on desktop */
.hero-copy>p.kicker{max-width:none}
@media (min-width:921px){.hero-copy>p.kicker{width:max-content;max-width:640px}}
/* v21 ZIP check: "we don't serve this ZIP yet" panel in the booking card */
.zip-card[hidden]{display:none}
.zc-panel>p{font-size:.95rem;color:var(--smoke);line-height:1.5}
.zc-panel h2:focus{outline:none}
.zc-notify{display:grid;gap:10px}
.zc-notify label{display:grid;gap:4px;font:600 .82rem/1.2 var(--font-head);color:var(--midnight)}
.zc-notify label small{font-weight:500;color:var(--smoke)}
.zc-notify input{border:1px solid #C9D3DE;border-radius:6px;padding:10px 12px;font:inherit;font-weight:400;font-size:1rem;color:var(--midnight);width:100%}
.zc-notify input:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:var(--blue)}
.zc-thanks{background:#EAF6EE;border:1px solid #BFE3CA;border-radius:6px;padding:12px 14px;font-size:.95rem;color:#1E5B34}
.zc-back{background:none;border:0;padding:0;font:inherit;color:var(--link);text-decoration:underline;cursor:pointer}
.zc-panel .zc-sub{font-size:.88rem;margin-top:4px;border-top:1px solid var(--rule);padding-top:12px}
.zc-panel .zc-call{font-weight:700;color:var(--link);white-space:nowrap}
.zip-card .btn-line-dark{background:#fff;color:var(--midnight);border:1.5px solid var(--midnight)}
.zip-card .btn-line-dark:hover{background:var(--midnight);color:#fff}
.zc-notify .zc-fine{font-size:.76rem;color:var(--smoke);text-align:center;margin:0}
.zc-notify .zc-fine a{color:var(--link)}

/* v22 factory-authorized: band on brand pages, list on /brands/ */
.auth-band{background:var(--midnight);color:#fff;padding:44px 0}
.auth-head{display:flex;gap:16px;align-items:center;margin-bottom:24px}
.auth-seal{flex:none;width:56px;height:56px;border-radius:50%;background:var(--red);display:grid;place-items:center}
.auth-seal svg.i{width:28px;height:28px;color:#fff}
.auth-band .eyebrow{color:#FF8A80}
.auth-band h2{color:#fff;margin:4px 0 0}
.auth-points{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.auth-points li{display:grid;gap:6px;padding:18px;border:1px solid var(--navy-line);border-radius:10px;background:rgba(255,255,255,.04)}
.auth-points b{font:700 1.05rem/1.25 var(--font-head)}
.auth-points span{color:var(--on-dark);font-size:.95rem;line-height:1.5}
@media (max-width:860px){.auth-points{grid-template-columns:1fr}}
.auth-list{border-bottom:1px solid var(--rule)}
.auth-list .brand-chips span{display:inline-flex;align-items:center;padding:10px 16px;border:1px solid var(--rule);border-radius:999px;background:var(--mist);font:700 .98rem/1.1 var(--font-head);color:var(--midnight)}
/* v23 */
.auth-points li{align-content:start}

/* v25 warranty asterisk: never underlined; on the dark bands it's a soft white that turns bright white on hover */
a.wstar,a.wstar:hover,a.wstar:focus,a.wstar:visited{text-decoration:none!important}
.stats a.wstar,.trust a.wstar,.side-card.dark a.wstar,.on-dark a.wstar{color:var(--on-dark)}
.stats a.wstar:hover,.trust a.wstar:hover,.side-card.dark a.wstar:hover,.on-dark a.wstar:hover,.stats a.wstar:focus-visible,.trust a.wstar:focus-visible{color:#fff}
/* v26 /brands/: big totals in the hero; authorized list at the bottom on mist */
.brand-totals{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:16px}
.brand-totals li{display:grid;gap:4px;background:#fff;border:1px solid var(--rule);border-left:4px solid var(--red);border-radius:8px;padding:16px 22px;min-width:240px}
.brand-totals b{font:800 clamp(2.2rem,4vw,3rem)/1 var(--font-head);color:var(--midnight);letter-spacing:-.02em}
.brand-totals span{font-family:var(--font-head);font-weight:600;color:var(--smoke)}
.brand-totals a{display:block;margin-top:4px;font-size:.88rem;color:var(--link)}
.auth-list{border-bottom:0}
.band-mist.auth-list .brand-chips span{background:#fff}
/* v27 booking form: "Need help?" next to Model number (opens on hover, tap or keyboard focus) */
.lbl-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.need-help{position:relative;display:inline-block}
.nh-btn{background:none;border:0;padding:0;font:600 .82rem/1.2 var(--font-head);color:var(--link);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.nh-pop{display:none;position:absolute;right:0;top:calc(100% + 8px);z-index:20;width:240px;background:var(--midnight);color:#fff;border-radius:8px;padding:12px 14px;font-size:.85rem;line-height:1.4;box-shadow:0 10px 28px rgba(24,42,64,.25)}
.nh-pop::before{content:"";position:absolute;right:18px;top:-6px;border:6px solid transparent;border-top:0;border-bottom-color:var(--midnight)}
.need-help:hover .nh-pop,.need-help:focus-within .nh-pop{display:block}
.nh-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.nh-acts a,.nh-acts button{font:700 .82rem/1 var(--font-head);padding:8px 10px;border-radius:5px;text-decoration:none;cursor:pointer}
.nh-acts .nh-call{background:var(--red);color:#fff}
.nh-acts .nh-chat{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55)}
.need-help:hover::after{content:"";position:absolute;right:-12px;left:-12px;top:100%;height:12px}
/* v28 home brands: light gray band with tighter spacing (the default 84px band padding read as empty space here) */
.home-brands.band{padding-block:44px 48px;margin-block:10px 28px}
.home-brands .brand-chips a{background:#fff}
/* v29 home team photo: keep the technician in frame when the photo is cropped */
.team-photo img{object-position:38% center}
/* v30 home team photo: rounded corners like the tiles and cards (desktop; on phones it runs edge to edge) */
@media (min-width:921px){.team-photo{border-radius:8px;overflow:hidden}.team-photo img{border-radius:8px}}
/* v31 feature photo inside a page body (e.g. outdoor grill page) */
.legacy-body .body-photo{display:block;margin:6px 0 18px}
.legacy-body .body-photo img{display:block;width:100%;height:auto;border-radius:8px}
/* v32 legal pages: three-column brand list */
.legacy-body ul.cols-3{columns:3;column-gap:24px;padding-left:18px}
@media (max-width:600px){.legacy-body ul.cols-3{columns:2}}
