/* WHITE THEME (preview) — loaded after redesign.css on index + Newnan only */
:root{--w-bg:#ffffff;--w-soft:#f7f5fb;--w-ink:#1a1a2e;--w-body:#3d3d55;--w-muted:#55556d;--w-line:#e7e3ef;--w-purple:#7a219e;--w-plum:#4a1268;--w-green:#15803d;--w-green-h:#166534;--w-green-tint:#ecf8ef;
 --bg-dark:#fff;--bg-card:#fff;--text-primary:#1a1a2e;--text-secondary:#3d3d55;--text-muted:#55556d;color-scheme:light}
html,body{background:#fff!important;color:var(--w-ink)!important}
body{background:#fff!important}
::selection{background:#ead7f5;color:#1a1a2e}

/* headings */
h1,h2{color:var(--w-plum)!important}
h3,h4,summary{color:var(--w-ink)}
h1 [class~="text-[#7a219e]"],h2 [class~="text-[#7a219e]"]{color:var(--w-purple)!important}

/* text tokens */
[class~="text-white"]{color:var(--w-ink)!important}
[class~="text-[#9a9ab0]"]{color:var(--w-body)!important}
[class~="text-[#5c5c72]"]{color:var(--w-muted)!important}
[class~="text-[#7a219e]"],[class*="text-[#7a219e]"]{color:var(--w-purple)!important}
[class*="text-[#7a219e]"]:hover,[class*="hover:text-[#9b3cbf]"]:hover{color:var(--w-plum)!important}
[class*="hover:text-white"]:hover{color:var(--w-purple)!important}
[class~="text-[#2fed2c]"]{color:var(--w-green)!important}
[class*="hover:text-[#2fed2c]"]:hover,.group:hover [class*="group-hover:text-[#2fed2c]"]{color:var(--w-green)!important}
main [class*="text-neutral-9"]{color:var(--w-ink)!important}
main [class*="text-neutral-6"],main [class*="text-neutral-7"],main [class*="text-neutral-8"]{color:var(--w-body)!important}
strong,b{color:var(--w-ink)}

/* backgrounds: white + soft alternating */
main section,main section:nth-of-type(even){background-image:none}
[class~="bg-[#09090f]"],[class~="bg-[#060609]"]{background:#fff!important}
main section[class~="bg-[#0f0f1a]"]{background:var(--w-soft)!important}
main section+section{border-top:1px solid var(--w-line)}
section[class*="from-[#0f0f1a]"]{background:linear-gradient(180deg,var(--w-soft),#fff)!important}

/* cards */
main div[class~="bg-[#0f0f1a]"],main div[class*="bg-[#0f0f1a]/60"],main a[class~="bg-[#0f0f1a]"],main details,main [class~="bg-white/[0.04]"],main [class~="bg-white/[0.02]"],main [class~="bg-white/[0.03]"]{background:#fff!important;border:1px solid var(--w-line)!important;box-shadow:0 1px 2px rgba(26,26,46,.04),0 12px 32px -18px rgba(74,18,104,.18)!important}
main section[class~="bg-[#0f0f1a]"] div[class~="bg-[#0f0f1a]"],main section[class~="bg-[#0f0f1a]"] details{background:#fff!important}
main div[class*="border-[#7a219e]/15"]{border-color:#e2d3ec!important;border-top:3px solid var(--w-purple)!important}
main div[class~="bg-[#0f0f1a]"]:hover{transform:translateY(-2px);box-shadow:0 2px 4px rgba(26,26,46,.05),0 22px 40px -20px rgba(74,18,104,.28)!important}
[class*="border-white/"]{border-color:var(--w-line)!important}
[class*="bg-[#7a219e]/10"]{background:#f3e8f9!important}
main a[class*="rounded-full"]{background:#fff!important;border:1px solid var(--w-line)!important;color:var(--w-ink)!important;font-weight:600}
main a[class*="rounded-full"]:hover{border-color:var(--w-purple)!important;color:var(--w-purple)!important;background:#faf5fd!important}
main details summary{color:var(--w-ink)!important}

/* header */
header[class*="fixed"]{background:rgba(255,255,255,.88)!important;border-bottom:1px solid var(--w-line)!important;box-shadow:0 1px 0 rgba(26,26,46,.02),0 8px 24px -18px rgba(26,26,46,.25)}
header [class~="text-[#9a9ab0]"]{color:#3d3d55!important}
header button[class*="lg:hidden"]{color:var(--w-plum)!important}
header nav [class*="absolute"],header [class*="bg-[#0f0f1a]"],header [class*="bg-[#09090f]"]:not(header){background:#fff!important;border-color:var(--w-line)!important}

/* hero (home) */
div.absolute.inset-0:has(> img[src*="ac-condenser"])::after{background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.93) 52%,rgba(255,255,255,.72) 100%),linear-gradient(0deg,#fff 0%,rgba(255,255,255,0) 35%)!important}
[class*="from-[#09090f]"]{--tw-gradient-from:#fff var(--tw-gradient-from-position)!important;--tw-gradient-to:rgba(255,255,255,0) var(--tw-gradient-to-position)!important;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)!important}
[class*="via-[#09090f]/95"]{--tw-gradient-stops:var(--tw-gradient-from),rgba(255,255,255,.95) var(--tw-gradient-via-position),var(--tw-gradient-to)!important}
[class*="to-[#09090f]/50"]{--tw-gradient-to:rgba(255,255,255,.55) var(--tw-gradient-to-position)!important}
main section:first-of-type img[src*="ac-condenser"]{filter:saturate(.7)}
main [class*="shadow-[#7a219e]"]{box-shadow:0 30px 60px -28px rgba(74,18,104,.45)!important}
main img:not([src*="logo"]){box-shadow:0 24px 48px -28px rgba(26,26,46,.45);outline:1px solid rgba(26,26,46,.06)}

/* promo band under hero */
main > div[class~="bg-[#2fed2c]"]{background:var(--w-plum)!important;color:#fff!important}
main > div[class~="bg-[#2fed2c]"] [class*="text-black/30"]{color:rgba(255,255,255,.6)!important}

/* PRIMARY GREEN BUTTONS */
a[class~="bg-[#2fed2c]"],button[class~="bg-[#2fed2c]"]{background:var(--w-green)!important;color:#fff!important;box-shadow:0 10px 24px -10px rgba(21,128,61,.6)!important}
a[class~="bg-[#2fed2c]"]:hover,button[class~="bg-[#2fed2c]"]:hover{background:var(--w-green-h)!important;box-shadow:0 14px 28px -10px rgba(21,128,61,.7)!important}
/* purple button */
[class~="bg-[#7a219e]"]{background:var(--w-purple)!important;color:#fff!important}
[class~="bg-[#7a219e]"]:hover{background:var(--w-plum)!important}
/* outline/secondary buttons */
main button[class*="border-white/[0.08]"],main a[class*="border-white/15"]{background:#fff!important;color:var(--w-plum)!important;border:2px solid #d9c6e6!important}
main button[class*="border-white/[0.08]"]:hover,main a[class*="border-white/15"]:hover{border-color:var(--w-purple)!important;background:#faf5fd!important}

/* purple CTA band: keep purple, text white */
section[class*="from-[#7a219e]"]{background:linear-gradient(135deg,#7a219e,#4a1268)!important}
section[class*="from-[#7a219e]"] h2{color:#fff!important}
section[class*="from-[#7a219e]"] [class*="text-white/"]{color:rgba(255,255,255,.88)!important}
section[class*="from-[#7a219e]"] a[class~="bg-white"]{background:#fff!important;color:var(--w-plum)!important}
section[class*="from-[#7a219e]"] a[class~="bg-white"]:hover{background:#f3e8f9!important}
section[class*="from-[#7a219e]"] button[class*="border-white/20"]{border-color:rgba(255,255,255,.6)!important;color:#fff!important}
section[class*="from-[#7a219e]"] button[class*="border-white/20"]:hover{background:rgba(255,255,255,.12)!important}

/* injected photo/trust sections */
.rd-strip{background:#fff}
.rd-strip h2{color:var(--w-plum)!important}
.rd-grid figcaption{color:var(--w-muted)}
.rd-trust{background:linear-gradient(120deg,#f6effa 0%,#f9f7fc 55%,var(--w-green-tint) 100%)!important;border-top:1px solid var(--w-line)!important;border-bottom:1px solid var(--w-line)}
.rd-stars{color:var(--w-ink)!important}
.rd-stars:first-letter{color:#d97706}
.rd-sub{color:var(--w-body)!important}.rd-sub a{color:var(--w-green)!important}
.yt-strip a{color:var(--w-ink)!important;border:1px solid var(--w-line)!important;background:#fff;box-shadow:0 8px 20px -14px rgba(26,26,46,.3)}
.yt-strip a:hover{border-color:#e11d2a!important}
.yt-strip svg{fill:#e11d2a}

/* footer: soft off-white */
footer,footer[class]{background:var(--w-soft)!important;border-top:1px solid var(--w-line)!important;color:var(--w-body)}
footer [class~="text-white"]{color:var(--w-ink)!important}
footer [class~="text-[#5c5c72]"],footer [class*="text-[#5c5c72]"]{color:var(--w-muted)!important}
footer h3,footer [class~="text-[#7a219e]"]{color:var(--w-purple)!important}
footer ul a{color:var(--w-body)}

/* sticky mobile call bar */
@media (max-width:1023px){
 div[class*="fixed"][class*="bottom-0"]{background:rgba(255,255,255,.94)!important;border-top:1px solid var(--w-line)!important;box-shadow:0 -10px 30px -14px rgba(26,26,46,.35)!important}
 div[class*="fixed"][class*="bottom-0"] a[href^="sms:"]{background:#fff!important;color:var(--w-plum)!important;border:2px solid #d9c6e6!important}
}
a:focus-visible,button:focus-visible{outline:2px solid var(--w-purple);outline-offset:3px}
a[href^="sms:"][class*="bg-"]{box-shadow:none!important}

/* ===== v2: site-wide rollout ===== */
/* type scale + rhythm */
main h1{font-size:clamp(2.1rem,1.2rem + 3.6vw,3.75rem)!important;line-height:1.06!important}
main h2{font-size:clamp(1.6rem,1.1rem + 1.9vw,2.4rem)!important}
main .vd-title,main .rd-grid h2{font-size:1.05rem!important}
main p{max-width:68ch}
main [class*="text-center"] p,main .text-center p{margin-left:auto;margin-right:auto}
main section[class*="py-28"]{padding-top:clamp(3.5rem,7vw,6rem)!important;padding-bottom:clamp(3rem,6vw,5rem)!important}

/* legacy accent purple (#BC3CFF) -> brand purple */
[class*="text-[#BC3CFF]"]{color:var(--w-purple)!important}
[class*="bg-[#BC3CFF]/"]{background:#f3e8f9!important}
[class~="bg-[#BC3CFF]"]{background:var(--w-purple)!important;color:#fff!important}
[class~="bg-[#BC3CFF]"]:hover{background:var(--w-plum)!important}
[class*="border-[#BC3CFF]"]{border-color:#e2d3ec!important}
[class*="from-[#BC3CFF]"]{background:linear-gradient(135deg,#7a219e,#4a1268)!important;color:#fff!important}
[class*="shadow-[0_0_30px_rgba(188,60,255"]{box-shadow:0 18px 40px -22px rgba(74,18,104,.35)!important}
[class*="bg-[#7a219e]/"]:not([class*="bg-[#7a219e]/10"]){background:#faf5fd!important}
[class*="border-[#7a219e]/"]{border-color:#e2d3ec!important}
[class*="hover:border-[#7a219e]"]:hover{border-color:#c9a6dd!important}
[class~="text-[#a102b6]"]{color:#8a1a9f!important}

/* orange (specials) -> accessible orange on white */
[class*="text-orange-4"]{color:#c2410c!important}
[class~="bg-orange-500"]{background:#c2410c!important;color:#fff!important}
[class~="bg-orange-500"]:hover{background:#9a3412!important}
[class*="bg-orange-500/"]{background:#fff7ed!important}
[class*="border-orange-500/"]{border-color:#fed7aa!important}
[class*="shadow-orange-500"],[class*="rgba(249,115,22"]{box-shadow:0 18px 40px -24px rgba(194,65,12,.35)!important}

/* green tints */
[class*="bg-[#2fed2c]/"]{background:var(--w-green-tint)!important}
[class*="border-[#2fed2c]/"]{border-color:#bfe6c9!important}
[class~="bg-[#2fed2c]"]:not(a):not(button){background:var(--w-green)!important;color:#fff!important}

/* white/opacity text on white -> readable */
[class*="text-white/"]{color:var(--w-muted)!important}
[class~="text-gray-300"],[class~="text-gray-400"],[class~="text-gray-500"]{color:var(--w-muted)!important}
[class~="text-gray-600"],[class~="text-gray-700"]{color:var(--w-body)!important}
[class~="text-gray-800"],[class~="text-gray-900"]{color:var(--w-ink)!important}
[class~="text-black"]{color:var(--w-ink)}

/* light-template blocks (Fairburn, Union City, quiz) */
main :is(div,section,article)[class~="bg-white"]:not(a),main :is(div,section,article)[class*="bg-neutral-50"],main [class~="bg-gray-50"]{background:#fff!important;border:1px solid var(--w-line)!important;color:var(--w-ink)!important}
main [class*="border-neutral-2"],main [class~="border-gray-200"]{border-color:var(--w-line)!important}
main [class~="bg-black"]{background:var(--w-ink)!important;color:#fff!important}
main [class~="bg-black"] *{color:#fff!important}
main [class~="border-black"]{border-color:var(--w-ink)!important}
[class~="bg-gray-100"]{background:#f3f1f7!important}

/* dark cards elsewhere */
main [class*="bg-[#0d0d1a]"],main [class*="bg-[#141425]"],main [class*="bg-[#13131d]"],main div[class*="bg-[#0f0f1a]"]{background:#fff!important;border:1px solid var(--w-line)!important;box-shadow:0 1px 2px rgba(26,26,46,.04),0 12px 32px -18px rgba(74,18,104,.18)!important}
main section[class*="bg-[#0f0f1a]"]{background:var(--w-soft)!important}
main [class*="from-[#0f0f1a]"],main [class*="from-[#09090f]"]:not(.absolute){background:linear-gradient(180deg,var(--w-soft),#fff)!important}
main [class*="bg-[#09090f]"]{background-color:#fff!important}

/* forms */
main input:not([type=checkbox]):not([type=radio]):not([type=range]),main select,main textarea{background:#fff!important;color:var(--w-ink)!important;border:1.5px solid #cfc6dd!important;border-radius:12px;box-shadow:none!important}
main input::placeholder,main textarea::placeholder{color:#6b6b80!important;opacity:1}
main input:focus,main select:focus,main textarea:focus{outline:none!important;border-color:var(--w-purple)!important;box-shadow:0 0 0 4px rgba(122,33,158,.14)!important}
main label{color:var(--w-ink)}
main input[type=range]{accent-color:var(--w-purple)}
main input[type=checkbox],main input[type=radio]{accent-color:var(--w-purple)}
main button[class*="border"]:not([class*="bg-[#"]):not(.vd-facade){background:#fff;color:var(--w-ink)}
main button[class*="border"][class*="bg-[#7a219e]/"],main button[aria-pressed="true"]{color:var(--w-plum)!important}

/* button states (all) */
main a[class*="rounded-xl"][class*="font-bold"],main button[class*="rounded-xl"][class*="font-bold"]{transition:transform .15s ease,box-shadow .2s ease,background-color .15s ease}
main a[class*="rounded-xl"][class*="font-bold"]:hover{transform:translateY(-1px)}

/* iframes (booking / maps) */
main iframe{border-radius:16px;border:1px solid var(--w-line)!important;background:#fff}

/* footer layout */
footer .max-w-7xl.grid{gap:2.5rem 2rem!important}
@media (max-width:767px){
 footer .max-w-7xl.grid{grid-template-columns:1fr 1fr!important}
 footer .max-w-7xl.grid > div:first-child{grid-column:1/-1}
 footer .max-w-7xl.grid > div:last-child{grid-column:1/-1}
}
footer ul a{min-height:32px}
footer img[src*="logo"]{box-shadow:none;outline:none}

/* floating desktop "Book Online" pill: keep clear of hero copy */
button[class*="fixed"][class*="bottom-6"][class*="left-6"]{left:auto!important;right:24px!important;bottom:96px!important;background:var(--w-purple)!important;color:#fff!important;box-shadow:0 14px 30px -12px rgba(74,18,104,.55)!important;padding:.7rem 1.1rem!important}
button[class*="fixed"][class*="bottom-6"][class*="left-6"]:hover{background:var(--w-plum)!important}

/* ===== /videos ===== */
.vd-wrap{max-width:76rem;margin:0 auto;padding:0 1.25rem}
@media(min-width:768px){.vd-wrap{padding:0 2rem}}
.vd-hero{padding:clamp(3.5rem,7vw,6rem) 0 clamp(2.5rem,5vw,4rem)!important;background:linear-gradient(180deg,var(--w-soft),#fff)!important}
.vd-eyebrow{display:inline-block;color:var(--w-purple);font-size:.75rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
.vd-h1{margin-top:.9rem;font-weight:800;letter-spacing:-.035em}
.vd-lead{color:var(--w-body);font-size:1.125rem;line-height:1.7;margin-top:1.1rem;max-width:40rem!important}
.vd-ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.vd-center{justify-content:center}
.vd-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:52px;padding:.9rem 1.6rem;border-radius:999px;font-weight:800;font-size:1rem;text-decoration:none;transition:transform .15s ease,box-shadow .2s ease,background-color .15s ease}
.vd-btn:hover{transform:translateY(-1px)}
.vd-btn-yt{background:#c4161c;color:#fff;box-shadow:0 10px 24px -12px rgba(196,22,28,.6)}
.vd-btn-yt:hover{background:#a51217}
.vd-yt{width:22px;height:22px;fill:#fff}
.vd-btn-call{background:var(--w-green);color:#fff;box-shadow:0 10px 24px -10px rgba(21,128,61,.6)}
.vd-btn-call:hover{background:var(--w-green-h)}
.vd-btn-ghost{background:#fff;color:var(--w-plum);border:2px solid #d9c6e6}
.vd-btn-ghost:hover{border-color:var(--w-purple);background:#faf5fd}
.vd-btn-white{background:#fff;color:var(--w-plum)}
.vd-btn-white:hover{background:#f3e8f9}
.vd-btn-outline{color:#fff;border:2px solid rgba(255,255,255,.6)}
.vd-btn-outline:hover{background:rgba(255,255,255,.12)}
.vd-list{padding:clamp(2.5rem,5vw,4rem) 0 clamp(4rem,8vw,6rem)!important;background:#fff}
.vd-grid{display:grid;gap:1.5rem;grid-template-columns:1fr}
@media(min-width:640px){.vd-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.vd-grid{grid-template-columns:repeat(3,1fr);gap:1.75rem}}
.vd-card{background:#fff;border:1px solid var(--w-line);border-radius:20px;overflow:hidden;box-shadow:0 1px 2px rgba(26,26,46,.04),0 14px 34px -20px rgba(74,18,104,.25);transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column}
.vd-card:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(26,26,46,.05),0 24px 44px -22px rgba(74,18,104,.35)}
.vd-media{position:relative;aspect-ratio:16/9;background:#1a1a2e}
.vd-facade{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;cursor:pointer;background:#1a1a2e;display:block}
.vd-facade img{width:100%;height:100%;object-fit:cover;border-radius:0!important;box-shadow:none!important;outline:none!important;display:block;transition:transform .35s ease,filter .2s ease}
.vd-facade:hover img{transform:scale(1.03);filter:brightness(.92)}
.vd-play{position:absolute;left:50%;top:50%;width:68px;height:48px;transform:translate(-50%,-50%);filter:drop-shadow(0 6px 14px rgba(0,0,0,.35))}
.vd-play svg{width:100%;height:100%;fill:rgba(26,26,46,.82);transition:fill .15s ease}
.vd-play .vd-tri{fill:#fff}
.vd-facade:hover .vd-play svg,.vd-facade:focus-visible .vd-play svg{fill:#c4161c}
.vd-facade:hover .vd-play .vd-tri{fill:#fff}
.vd-facade:focus-visible{outline:3px solid var(--w-purple);outline-offset:-3px}
.vd-frame{position:absolute;inset:0;width:100%;height:100%;border:0!important;border-radius:0!important}
.vd-body{padding:1.1rem 1.25rem 1.3rem}
.vd-title{color:var(--w-ink)!important;font-weight:750;line-height:1.35!important;letter-spacing:-.01em!important;text-wrap:pretty}
.vd-date{color:var(--w-muted);font-size:.85rem;margin-top:.45rem}
.vd-more{display:flex;justify-content:center;margin-top:2.5rem}
.vd-cta{padding:clamp(3.5rem,7vw,5rem) 0!important;background:linear-gradient(135deg,#7a219e,#4a1268)!important;text-align:center}
.vd-cta h2{color:#fff!important;font-weight:800}
.vd-cta p{color:rgba(255,255,255,.88);font-size:1.1rem;margin:.8rem auto 0}

/* ===== v2 fixes ===== */
header nav a,header nav button{white-space:nowrap}
@media (min-width:1024px) and (max-width:1535px){
 header nav a,header nav button{padding-left:.55rem!important;padding-right:.55rem!important}
 header nav a[href^="tel:"]{margin-left:.5rem!important;padding-left:1rem!important;padding-right:1rem!important}
}
@media (min-width:1024px) and (max-width:1199px){
 header a[href="/"] > span{display:none!important}
 header nav a,header nav button{font-size:12.5px!important;padding-left:.4rem!important;padding-right:.4rem!important}
}
/* nav fit with Around the House link */
@media (min-width:1280px){
 header nav a,header nav button{font-size:12.5px!important;padding-left:.4rem!important;padding-right:.4rem!important}
 header nav a[href^="tel:"]{margin-left:.4rem!important;padding-left:.9rem!important;padding-right:.9rem!important}
}
@media (min-width:1024px) and (max-width:1279px){
 header a[href="/"] > span{display:none!important}
 header > div:has(> nav){padding-left:1rem!important;padding-right:1rem!important}
 header nav{gap:0!important}
 header nav a,header nav button{font-size:12px!important;padding-left:.32rem!important;padding-right:.32rem!important}
 header nav a[href^="tel:"]{margin-left:.35rem!important;padding-left:.75rem!important;padding-right:.75rem!important}
}
main h1[class~="text-white"],main h2[class~="text-white"]{color:var(--w-plum)!important}
[class*="hover:text-[#9a9ab0]"]:not([class~="text-[#9a9ab0]"]){color:inherit!important}
main [class*="text-5xl"][class*="opacity-20"]{opacity:1!important;color:#9a4fc0!important}
/* white text must stay white on purple / dark / colored fills */
:is([class*="bg-purple-5"],[class*="bg-purple-6"],[class*="bg-purple-7"],[class~="bg-[#7a219e]"],[class~="bg-[#BC3CFF]"],[class~="bg-orange-500"],[class*="from-[#7a219e]"],[class*="from-[#BC3CFF]"],.vd-cta,[class~="bg-black"])[class~="text-white"],
:is([class*="bg-purple-6"],[class*="bg-purple-7"],[class~="bg-[#7a219e]"],[class~="bg-[#BC3CFF]"],[class*="from-[#7a219e]"],[class*="from-[#BC3CFF]"],.vd-cta) :is([class~="text-white"],h1,h2,h3){color:#fff!important}
:is([class~="bg-[#7a219e]"],[class~="bg-[#BC3CFF]"],[class*="from-[#7a219e]"],[class*="from-[#BC3CFF]"],.vd-cta) [class*="text-white/"]{color:rgba(255,255,255,.88)!important}
[class*="bg-purple-6"],[class*="bg-purple-7"]{background:var(--w-purple)!important}
[class*="bg-purple-6"]:hover,[class*="hover:bg-purple-7"]:hover{background:var(--w-plum)!important}
main iframe[src*="housecallpro"]{min-height:720px}
main > main{padding-top:calc(68px + clamp(2.5rem,6vw,4.5rem))!important}
main > div.min-h-screen{padding-top:68px}
button[class*="fixed"][class*="bottom-6"][class*="left-6"]{white-space:nowrap}

/* ===== pass20 (Oct 20) — 20 design improvements ===== */
/* 1 smoother font rendering + balanced headings */
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth;scroll-padding-top:84px}
h1,h2,h3{text-wrap:balance}
/* 2 hero H1 hierarchy: tighter tracking, fluid size */
main h1{letter-spacing:-.03em!important;line-height:1.08!important}
/* 3 body copy readability */
main p{text-wrap:pretty}
/* 4 consistent section headers: purple accent rule under section H2s */
main section h2{position:relative}
main section > div > h2::after,main section > div > div > h2::after{content:"";display:block;width:56px;height:4px;border-radius:4px;margin-top:.7rem;background:linear-gradient(90deg,var(--w-purple),var(--w-green))}
main section [class*="text-center"] > h2::after,main section h2[class*="text-center"]::after{margin-left:auto;margin-right:auto}
/* 5 call buttons: high-contrast green with white text + lift */
main a[href^="tel:"][class*="bg-[#2fed2c]"],header a[href^="tel:"][class*="bg-[#2fed2c]"]{background:var(--w-green)!important;color:#fff!important;box-shadow:0 10px 24px -10px rgba(21,128,61,.55)!important}
main a[href^="tel:"][class*="bg-[#2fed2c]"]:hover,header a[href^="tel:"][class*="bg-[#2fed2c]"]:hover{background:var(--w-green-h)!important;transform:translateY(-1px)}
/* 6 tap targets ≥48px for buttons/CTAs */
main a[class*="px-8"][class*="py-4"],main a[href^="sms:"][class*="px-"],main a[href^="tel:"][class*="px-"],main button[class*="px-"]{min-height:52px;display:inline-flex;align-items:center;justify-content:center}
/* 7 phone icon-free pulse ring on primary call CTA (subtle, once) */
@keyframes w-ring{0%{box-shadow:0 0 0 0 rgba(21,128,61,.45)}100%{box-shadow:0 0 0 14px rgba(21,128,61,0)}}
main section:first-of-type a[href^="tel:"][class*="bg-[#2fed2c]"]{animation:w-ring 1.6s ease-out 1.2s 2}
/* 8 visible keyboard focus everywhere */
:focus-visible{outline:3px solid var(--w-purple)!important;outline-offset:3px!important;border-radius:8px}
a[href^="tel:"]:focus-visible,a[href^="sms:"]:focus-visible{outline-color:var(--w-green)!important}
/* 9 card focus state matches hover */
main a[class~="bg-[#0f0f1a]"]:focus-visible,main a[class~="bg-[#0f0f1a]"]:hover{border-color:#cdb3de!important;transform:translateY(-2px)}
/* 10 card transitions smoother */
main div[class~="bg-[#0f0f1a]"],main a[class~="bg-[#0f0f1a]"],main details{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important}
/* 11 images: consistent rounded corners, no layout shift */
main img{max-width:100%;height:auto}
main section img[class*="object-cover"]{border-radius:16px}
/* 12 FAQ polish: roomy summaries with purple marker */
main details summary{cursor:pointer;min-height:48px;padding-top:.25rem;padding-bottom:.25rem}
main details[open]{border-color:#d9c6e6!important}
main details summary::marker{color:var(--w-purple)}
/* 13 list readability */
main li{line-height:1.6}
/* 14 links in body copy: clear underline */
main p a:not([class*="px-"]){text-decoration:underline;text-decoration-color:#cdb3de;text-underline-offset:3px;text-decoration-thickness:2px}
main p a:not([class*="px-"]):hover{text-decoration-color:var(--w-purple)}
/* 15 header: frosted glass */
header[class*="fixed"]{-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px)}
/* 16 mobile nav links: big tap targets */
@media(max-width:1023px){header nav a,header [class*="lg:hidden"] a{min-height:48px;display:flex;align-items:center}}
/* 17 footer polish: soft background, comfortable link spacing */
footer{background:var(--w-soft)!important;border-top:1px solid var(--w-line)!important}
footer a{display:inline-block;padding:.2rem 0;min-height:24px}
footer a:hover{color:var(--w-purple)!important}
/* 18 sticky bottom bar: safe-area padding + shadow */
[class*="fixed"][class*="bottom-0"]{padding-bottom:max(env(safe-area-inset-bottom),0px);box-shadow:0 -8px 24px -12px rgba(26,26,46,.25)}
/* 19 section rhythm on mobile */
@media(max-width:640px){main section{scroll-margin-top:80px}main h2{line-height:1.15!important}}
/* 20 respect reduced motion */
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}html{scroll-behavior:auto}}
/* tune1025 */
html{scroll-padding-top:96px}
h1,h2,h3{text-wrap:balance}
p,li{text-wrap:pretty}
a:focus-visible,button:focus-visible{outline:3px solid #1d4ed8;outline-offset:2px;border-radius:4px}
@media (max-width:480px){footer a{display:inline-block;padding:6px 0}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* furnace sale 1025 */
.ccfi-fbar{display:block;text-align:center;background:#f97316;color:#111;font-weight:700;font-size:13px;line-height:1.25;padding:6px 12px;text-decoration:none}
.ccfi-fbar:hover{text-decoration:underline}
main{padding-top:30px}
html{scroll-padding-top:126px}
.ccfi-fs{background:#fff7ed;color:#1c1917;padding:40px 20px;border-bottom:1px solid #fed7aa}
.ccfi-fs-in{max-width:56rem;margin:0 auto;text-align:center}
.ccfi-fs-k{font-size:13px;font-weight:700;color:#9a3412;text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px}
.ccfi-fs h2{font-size:clamp(26px,5vw,40px);font-weight:800;line-height:1.15;margin:0 0 12px;color:#1c1917}
.ccfi-fs p{color:#44403c;max-width:40rem;margin:0 auto}
.ccfi-fs-b{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:20px}
.ccfi-fs-call{background:#16a34a;color:#fff!important;font-weight:700;padding:14px 24px;border-radius:12px;text-decoration:none}
.ccfi-fs-more{color:#9a3412!important;font-weight:700;padding:14px 8px;text-decoration:underline}
.ccfi-inline-fs{color:#f97316;font-weight:700;text-decoration:underline}
/* mascot 1025 */
.ccfi-fbar{display:flex;align-items:center;justify-content:center;gap:8px;padding:2px 12px}
.ccfi-fbar-j{width:48px;height:48px;flex:none;margin:-4px 0}
main{padding-top:44px}
html{scroll-padding-top:140px}
.ccfi-fs-wrap{max-width:60rem;margin:0 auto;display:flex;align-items:center;gap:24px;justify-content:center}
.ccfi-fs-j{width:auto;height:160px;flex:none}
@media (max-width:640px){.ccfi-fs-wrap{flex-direction:column;gap:8px}.ccfi-fs-j{height:120px}}
.ccfi-inline-fs{color:#c2410c}
.ccfi-fs-j,.ccfi-fbar-j{border:0!important;box-shadow:none!important;background:none!important;border-radius:0!important;padding:0!important;max-width:none}
.ccfi-fs-call{background:#15803d!important}
.ccfi-fs-j,.ccfi-fbar-j{outline:none!important}
/* weekly tune-up 2026-10-25 */
section[class*="from-[#7a219e]"] button[class*="border-white/20"]{background:transparent!important}
section[class*="from-[#7a219e]"] button[class*="border-white/20"]:hover{background:rgba(255,255,255,.12)!important}
#furnace-special{scroll-margin-top:56px}
