:root{--ink:#071c2c;--navy:#092a42;--blue:#0c78b8;--ice:#eaf6fb;--amber:#f5a623;--paper:#fff;--muted:#5b6b77;--line:#dbe4e9;--shadow:0 18px 45px rgba(5,29,44,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:'Manrope',sans-serif;line-height:1.08;margin:0 0 1rem}h1{font-size:clamp(2.6rem,6vw,5.8rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.04em}h3{font-size:1.2rem}p{margin:.4rem 0 1.3rem}.topline{background:#03121d;color:#d5e7f0;padding:.45rem 5vw;display:flex;justify-content:space-between;font-size:.84rem}.topline a{color:white}header{height:82px;padding:0 5vw;display:flex;align-items:center;gap:2rem;background:white;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.65rem;font:800 1.25rem/1 'Manrope';letter-spacing:.08em}.brand small{display:block;font:600 .55rem/1.4 'DM Sans';letter-spacing:.18em;color:var(--blue)}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(145deg,var(--blue),var(--navy));color:white;font-size:1.3rem;letter-spacing:0}nav{display:flex;align-items:center;gap:1.25rem;margin-left:auto;font-size:.9rem;font-weight:600}nav a:hover{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--amber);color:#1b1608;border:0;border-radius:8px;padding:.95rem 1.35rem;font-weight:800;min-height:48px;box-shadow:0 8px 18px rgba(245,166,35,.25)}.btn:hover{transform:translateY(-1px)}.btn-outline{background:transparent;color:white;border:1px solid rgba(255,255,255,.5);box-shadow:none;margin-left:.6rem}.btn-small{padding:.72rem 1rem;min-height:42px}.hero{min-height:690px;display:grid;align-items:center;color:white;background:linear-gradient(90deg,rgba(3,18,29,.96) 0%,rgba(3,18,29,.74) 42%,rgba(3,18,29,.05) 72%),url('/assets/haven-hero.webp') center/cover}.hero-inner{width:min(1200px,90vw);margin:auto;padding:6rem 0}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;color:#8ad3f1;text-transform:uppercase;letter-spacing:.13em;font-weight:700;font-size:.78rem;margin-bottom:1.25rem}.eyebrow:before{content:'';width:30px;height:2px;background:var(--amber)}.hero h1{max-width:780px}.hero p{max-width:600px;font-size:1.18rem;color:#d9e7ee}.proof{display:flex;gap:2rem;margin-top:2rem;font-size:.9rem;font-weight:600}.proof span:before{content:'✓';color:var(--amber);margin-right:.45rem}.section{padding:6rem 5vw}.wrap{width:min(1200px,100%);margin:auto}.section-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.5rem}.section-head p{max-width:540px;color:var(--muted)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.card{border:1px solid var(--line);border-radius:14px;padding:1.7rem;background:white;transition:.2s}.card:hover{box-shadow:var(--shadow);transform:translateY(-3px);border-color:transparent}.icon{width:45px;height:45px;border-radius:10px;background:var(--ice);display:grid;place-items:center;margin-bottom:1.4rem;color:var(--blue);font-weight:800;font-size:1.15rem}.card p{color:var(--muted)}.card-link{font-weight:800;color:var(--blue)}.band{background:var(--ink);color:white}.why{display:grid;grid-template-columns:.9fr 1.1fr;gap:5rem;align-items:center}.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.stat{padding:1.5rem;border:1px solid rgba(255,255,255,.16);border-radius:12px}.stat strong{display:block;color:var(--amber);font:800 2rem 'Manrope'}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.review{background:#f5f9fb;border-radius:14px;padding:1.6rem}.stars{color:#e89709;letter-spacing:.15em}.review cite{font-style:normal;font-weight:700}.note{font-size:.78rem;color:var(--muted);margin-top:1rem}.projects{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:1rem}.project{min-height:290px;border-radius:16px;display:flex;align-items:end;padding:1.5rem;background:linear-gradient(145deg,#dcebf1,#f4f8fa);border:1px dashed #91aab7;color:var(--navy)}.project:first-child{grid-row:span 2;min-height:600px}.project span{background:white;padding:.55rem .8rem;border-radius:7px;font-weight:700;box-shadow:var(--shadow)}.cta{background:linear-gradient(120deg,var(--blue),#07517b);color:white;border-radius:18px;padding:3rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.inner-hero{background:linear-gradient(110deg,#061b2b,#0b3a58);color:white;padding:6rem 5vw}.inner-hero .wrap{max-width:1000px;margin-left:0}.inner-hero h1{font-size:clamp(2.6rem,5vw,4.6rem)}.inner-hero p{max-width:690px;font-size:1.15rem;color:#d4e5ed}.split{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.checklist{list-style:none;padding:0}.checklist li{padding:.7rem 0;border-bottom:1px solid var(--line)}.checklist li:before{content:'✓';color:var(--blue);font-weight:900;margin-right:.7rem}.process{counter-reset:step;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.process .card:before{counter-increment:step;content:'0' counter(step);display:block;color:var(--blue);font:800 1.6rem 'Manrope';margin-bottom:1rem}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem}.form{background:white;padding:2rem;border-radius:16px;box-shadow:var(--shadow)}label{display:block;font-weight:700;margin:.9rem 0 .35rem}input,select,textarea{width:100%;border:1px solid #bfcdd5;border-radius:8px;padding:.85rem;font:inherit}textarea{min-height:120px;resize:vertical}.form .btn{width:100%;margin-top:1rem}.success{display:none;background:#e7f7ee;color:#145b34;padding:1rem;border-radius:8px;margin-top:1rem}.menu,.mobile-bar{display:none}footer{background:#03121d;color:#c7d4da;padding:4rem 5vw 6rem;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:3rem}footer .brand{color:white}footer a{display:block;margin:.45rem 0}footer h3{color:white}footer>small{grid-column:1/-1;border-top:1px solid #274050;padding-top:1.5rem}.light .brand-mark{background:var(--blue)}
@media(max-width:1050px){nav{display:none}.menu{display:block;margin-left:auto;border:0;background:var(--ice);padding:.65rem .9rem;border-radius:7px;font-weight:700}header.open nav{display:flex;position:absolute;left:0;right:0;top:81px;background:white;padding:1rem 5vw;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.services{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){body{padding-bottom:64px}.topline span{display:none}.topline{justify-content:center}.btn-small{display:none}header{height:68px}.hero{min-height:650px;background-position:62% center}.hero-inner{padding:4.5rem 0}.hero p{font-size:1.05rem}.hero .btn{width:100%}.hero .btn-outline{margin:.6rem 0 0}.proof{flex-direction:column;gap:.4rem}.section{padding:4rem 5vw}.section-head,.why,.split,.contact-grid{display:block}.services,.reviews,.process{grid-template-columns:1fr}.why-grid{margin-top:2rem}.projects{grid-template-columns:1fr 1fr}.project:first-child{grid-row:auto;grid-column:1/-1;min-height:330px}.project{min-height:210px}.cta{display:block;padding:2rem}.cta .btn{width:100%;margin-top:1rem}.mobile-bar{position:fixed;display:grid;grid-template-columns:1fr 1fr;bottom:0;left:0;right:0;z-index:30;background:white;box-shadow:0 -8px 25px rgba(0,0,0,.12);padding:.55rem}.mobile-bar a{display:grid;place-items:center;padding:.7rem;font-weight:800}.mobile-bar a:last-child{background:var(--amber);border-radius:7px}footer{grid-template-columns:1fr 1fr;gap:2rem}footer>div:first-child{grid-column:1/-1}.inner-hero{padding:4.5rem 5vw}}
.brand{display:block;width:188px;height:52px;overflow:hidden;position:relative}.brand img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.brand.light{width:230px;height:70px}nav{gap:1.05rem;font-size:.86rem}
.reviews-real{grid-template-columns:repeat(2,1fr)}.review cite{display:block}.review small{display:block;color:var(--muted);margin-top:.15rem}.review-link{display:inline-block;margin-top:1.5rem}
@media(max-width:700px){.reviews-real{grid-template-columns:1fr}}
.brand-band{background:linear-gradient(180deg,#f4f9fc 0%,#fff 100%)}.brand-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:4rem;align-items:end}.brand-intro p{color:var(--muted);font-size:1.05rem;margin-bottom:1rem}.brand-list{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem;margin-top:2.25rem}.brand-card{position:relative;overflow:hidden;min-height:150px;margin:0;display:flex;flex-direction:column;justify-content:space-between;text-align:center;background:white;border:1px solid var(--line);border-radius:14px;padding:1.25rem;box-shadow:0 10px 25px rgba(5,29,44,.055)}.brand-card:before{content:'';position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--blue),#59b9df)}.brand-logo{height:78px;display:grid;place-items:center}.brand-logo img{display:block;width:100%;height:100%;object-fit:contain}.brand-card.payne .brand-logo img{max-width:78px}.brand-card figcaption{color:var(--muted);font-size:.82rem;font-weight:700;padding-top:.7rem;border-top:1px solid var(--line)}.brand-guidance{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:1.4rem;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--line)}.brand-guidance>div{display:grid;grid-template-columns:auto 1fr;column-gap:.85rem;padding:1.25rem;background:#fff;text-align:left}.brand-guidance span{grid-row:1/3;color:var(--blue);font:800 1rem Manrope,sans-serif}.brand-guidance strong{font:800 1rem Manrope,sans-serif}.brand-guidance small{color:var(--muted);line-height:1.4;margin-top:.2rem}.brand-note{margin:1rem 0 0;color:var(--muted);font-size:.8rem;text-align:center}@media(max-width:900px){.brand-intro{grid-template-columns:1fr;gap:.5rem}.brand-list{grid-template-columns:repeat(3,1fr)}.brand-guidance{grid-template-columns:1fr}.brand-guidance>div+div{border-top:1px solid var(--line)}}@media(max-width:600px){.brand-list{grid-template-columns:1fr 1fr}.brand-card{min-height:135px}}
.social-section{background:var(--ink);color:white}.social-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:4rem;align-items:center}.social-actions{display:flex;gap:.8rem;flex-wrap:wrap}.social-btn{display:flex;align-items:center;gap:.8rem;padding:1rem 1.2rem;border-radius:10px;background:white;color:var(--ink);font-weight:800}.social-btn span{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--ice);color:var(--blue)}.social-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.social-post{aspect-ratio:1;border:1px dashed #668293;border-radius:12px;display:flex;align-items:end;padding:1rem;background:linear-gradient(145deg,#143a52,#082236)}.social-post strong{font-size:.85rem}.trust-line{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}.trust-pill{border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:.45rem .8rem;font-size:.85rem}.social-mini{margin-top:1rem}.mobile-bar{grid-template-columns:repeat(3,1fr)}@media(max-width:700px){.social-layout{display:block}.social-posts{margin-top:2rem}.social-actions{display:grid}.social-btn{justify-content:center}}
.intent-strip{background:white;box-shadow:0 12px 30px rgba(5,29,44,.1);position:relative;z-index:3}.intent-grid{display:grid;grid-template-columns:1fr 1fr}.intent-grid a{padding:1.5rem 2rem;display:flex;flex-direction:column}.intent-grid a:first-child{border-right:1px solid var(--line)}.intent-grid small{color:var(--muted)}.intent-grid strong{font:800 1.15rem 'Manrope';color:var(--blue)}.choice-tabs{display:flex;margin-top:2rem;gap:.5rem}.choice-tabs a{padding:.75rem 1rem;border:1px solid #6f8795;border-radius:8px}.choice-tabs .active{background:white;color:var(--ink);border-color:white}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-aside{position:sticky;top:110px}.quick-action{display:flex;flex-direction:column;padding:1.2rem;border:1px solid var(--line);border-radius:10px;margin-bottom:.75rem}.quick-action strong{color:var(--blue)}.trust-stack{display:flex;flex-direction:column;gap:.6rem;margin-top:1.5rem}.privacy-note{font-size:.78rem;color:var(--muted);margin:.8rem 0 0}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}.faq-grid details{border:1px solid var(--line);border-radius:12px;padding:1.2rem;background:white}.faq-grid summary{font-weight:800;cursor:pointer}.faq-grid p{color:var(--muted);margin-top:1rem}.local-card{background:var(--ink);color:white;padding:2rem;border-radius:16px;display:flex;flex-direction:column;gap:.8rem}.local-card strong{font:800 1.5rem 'Manrope';color:var(--amber)}@media(max-width:700px){.intent-grid,.form-row,.faq-grid{grid-template-columns:1fr}.intent-grid a:first-child{border-right:0;border-bottom:1px solid var(--line)}.choice-tabs{flex-direction:column}.contact-aside{position:static;margin-bottom:2rem}}
.social-proof,.capability-panel{background:linear-gradient(145deg,#0d3854,#061b2b);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:2rem;display:flex;flex-direction:column;gap:1rem}.social-proof strong{font:800 clamp(1.25rem,2vw,1.8rem) 'Manrope';padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.15)}.capability-panel{color:white;min-height:300px;justify-content:center}.capability-panel .card-link{color:var(--amber)}.area-links{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.area-links a{border:1px solid var(--line);border-radius:12px;padding:1.25rem;font-weight:800;display:flex;justify-content:space-between}.area-links a:hover{border-color:var(--blue);color:var(--blue)}.legal{max-width:820px}.legal h2{font-size:1.65rem;margin-top:2.25rem}.legal a{color:var(--blue);text-decoration:underline}.compact-hero{padding-top:4rem;padding-bottom:4rem}.success.pending{background:#fff2d6;color:#634500}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--amber);outline-offset:3px}@media(max-width:700px){.area-links{grid-template-columns:1fr 1fr}.social-proof{margin-top:2rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card,.btn{transition:none}}
.services .card{position:relative;display:flex;flex-direction:column;min-height:248px;padding:1.5rem 1.55rem;overflow:hidden}.services .card:before{content:'INSTALL • SERVICE';color:#71838e;font-size:.7rem;font-weight:800;letter-spacing:.1em;position:absolute;right:1.4rem;top:1.25rem}.services .card:nth-child(12):before{content:'PLANNED CARE'}.services .card:nth-child(13):before{content:'DIAGNOSIS • REPAIR'}.services .card:nth-child(-n+3){border-top:3px solid var(--amber)}.services .card h3{font-size:1.32rem;margin-bottom:.65rem}.services .card p{line-height:1.45;margin-bottom:1rem}.services .card-link{margin-top:auto;display:flex;align-items:center;gap:.35rem}.services .icon{width:52px;height:52px;border-radius:13px;background:linear-gradient(145deg,#eaf6fb,#dceff7);color:var(--blue);margin-bottom:1.25rem}.services .icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.services .card:hover .icon{background:var(--blue);color:white}.services .card:hover .card-link{color:#075f91}@media(max-width:700px){.services .card{min-height:225px}.services .card:before{right:1.1rem}}
.hero{background-image:linear-gradient(90deg,rgba(3,18,29,.96) 0%,rgba(3,18,29,.74) 42%,rgba(3,18,29,.05) 72%),url('/assets/haven-hero.webp')}.nav-services{position:relative}.nav-services summary{cursor:pointer;list-style:none}.nav-services summary::-webkit-details-marker{display:none}.nav-services summary:after{content:'⌄';margin-left:.35rem;color:var(--blue)}.nav-panel{position:absolute;top:2.2rem;left:50%;transform:translateX(-50%);width:min(920px,80vw);display:grid;grid-template-columns:repeat(4,1fr);gap:.2rem;padding:.75rem;background:white;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.nav-panel a{padding:.65rem .75rem;border-radius:9px;display:flex;flex-direction:column}.nav-panel a:hover{background:var(--ice)}.nav-panel strong{color:var(--ink)}.nav-panel small{color:var(--muted);font-size:.8rem;font-weight:500}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.decision-card{padding:2rem;border:1px solid var(--line);border-radius:14px;background:white}.decision-card.highlight{background:var(--ice);border-color:#b8dce9}.decision-card h3{font-size:1.5rem}.decision-card p{color:var(--muted)}@media(max-width:1050px){.nav-services{width:100%}.nav-services summary{padding:.25rem 0}.nav-panel{position:static;transform:none;width:100%;grid-template-columns:1fr 1fr;box-shadow:none;border:0;padding:.75rem 0 0}.nav-panel a{padding:.6rem .75rem}}@media(max-width:700px){.nav-panel,.decision-grid{grid-template-columns:1fr}.nav-panel small{display:none}}
.workmanship{padding-top:2rem;padding-bottom:2rem}.workmanship-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:3rem;align-items:center;padding:3rem;background:linear-gradient(120deg,#061b2b,#0b3a58);color:white;border-radius:18px}.workmanship-card p{color:#d4e5ed}.workmanship-card p:last-child{margin-bottom:0}.thank-you{min-height:520px;display:grid;align-items:center}.thank-actions{margin-top:2rem}footer{grid-template-columns:1.35fr repeat(4,1fr)}@media(max-width:1050px){footer{grid-template-columns:1.2fr repeat(2,1fr)}footer>div:first-child{grid-row:span 2}}@media(max-width:700px){.workmanship-card{grid-template-columns:1fr;padding:2rem;gap:1rem}footer{grid-template-columns:1fr 1fr}footer>div:first-child{grid-row:auto}}
.service-section{background:linear-gradient(180deg,#fff 0%,#f7fbfd 100%)}.core-services .card{min-height:235px}.more-services{margin-top:1.25rem;padding:2rem;border-radius:18px;background:linear-gradient(125deg,#071c2c,#0b3d5c);color:white;display:grid;grid-template-columns:.7fr 1.3fr;gap:2.5rem;align-items:start;position:relative;overflow:hidden}.more-services:after{content:'';position:absolute;width:260px;height:260px;border:64px solid rgba(39,153,210,.08);border-radius:50%;right:-125px;bottom:-145px}.more-services-head{position:relative;z-index:1}.more-services-head h3{font-size:clamp(1.5rem,2.4vw,2.1rem);max-width:260px}.service-links{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;position:relative;z-index:1}.service-links a{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(255,255,255,.045);transition:.2s}.service-links a:hover{background:white;color:var(--ink);transform:translateX(3px)}.service-links span{display:flex;flex-direction:column}.service-links strong{font-family:'Manrope',sans-serif;font-size:.98rem}.service-links small{color:#a9c5d3}.service-links a:hover small{color:var(--muted)}.service-links b{color:var(--amber)}.haven-standard{position:relative;background:linear-gradient(120deg,#041725 0%,#092f48 70%,#0c5074 100%);overflow:hidden}.haven-standard:after{content:'';position:absolute;inset:auto -8vw -18vw auto;width:38vw;height:38vw;border-radius:50%;border:8vw solid rgba(64,177,225,.055)}.haven-standard .wrap{position:relative;z-index:1}.review-section{background:#fff}.review-heading{align-items:center}.google-rating{display:flex;align-items:center;gap:.85rem;padding:.85rem 1.1rem;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 12px 30px rgba(5,29,44,.08)}.google-rating:hover{border-color:#a9cfdf}.google-rating>span:last-child{display:flex;flex-direction:column}.google-rating strong{font:800 1.25rem 'Manrope'}.google-rating small{color:var(--muted)}.google-g{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#4285f4 0 35%,#34a853 35% 55%,#fbbc05 55% 75%,#ea4335 75%);color:#fff;font:800 1.2rem 'Manrope';box-shadow:inset 0 0 0 5px white}.review{border:1px solid #e0e9ed;background:#f8fbfc;display:flex;flex-direction:column;min-height:250px}.review-top{display:flex;justify-content:space-between;align-items:center}.review-source{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}.review p{font-size:1.02rem;color:#263b47;flex:1}.review footer{display:block;background:transparent;color:inherit;padding:1rem 0 0;border-top:1px solid var(--line)}
@media(max-width:1050px){.more-services{grid-template-columns:1fr}.more-services-head h3{max-width:none}}
.core-services .card:nth-child(3):before{content:'HEAT • COOL'}.core-services .card:nth-child(4):before{content:'TANK • TANKLESS'}.core-services .card:nth-child(5):before{content:'HYDRONIC HEAT'}.core-services .card:nth-child(6):before{content:'24/7 SERVICE'}
.booking-section{background:#f5f9fb}.highlevel-card{background:white;border:1px solid var(--line);border-radius:18px;padding:1rem;box-shadow:var(--shadow);min-width:0}.booking-label{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem .65rem 1rem;border-bottom:1px solid var(--line)}.booking-label span{color:var(--blue);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.booking-label strong{font:800 1.05rem 'Manrope'}.highlevel-frame{display:block;width:100%;border:0;background:white}.calendar-frame{min-height:820px}.form-frame{min-height:1040px}
.booking-helper{margin:.8rem .65rem 0;padding:.75rem .9rem;border-radius:10px;background:#f5faff;color:#496174;font-size:.9rem;line-height:1.5}
@media(max-width:700px){header.open nav{top:67px;max-height:calc(100vh - 108px);overflow-y:auto}.section{padding-top:3.5rem;padding-bottom:3.5rem}.core-services .card{min-height:210px}.more-services{padding:1.4rem;margin-top:1rem;gap:1.1rem}.service-links{grid-template-columns:1fr}.service-links a{padding:.8rem .9rem}.review-heading{display:flex;align-items:flex-start}.google-rating{width:100%;margin-top:.25rem}.review{min-height:0}.review p{font-size:1rem}.proof{display:grid;grid-template-columns:1fr 1fr}.proof span:last-child{grid-column:1/-1}}
@media(max-width:700px){.booking-section{padding-left:3vw;padding-right:3vw}.booking-section .contact-aside{padding:0 2vw}.highlevel-card{padding:.4rem;border-radius:12px}.booking-label{align-items:flex-start;flex-direction:column;gap:.2rem;padding:.8rem}.calendar-frame{min-height:900px}.form-frame{min-height:1120px}}
nav a[aria-current]{color:var(--blue);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.skip-link{position:fixed;left:1rem;top:1rem;z-index:1000;padding:.8rem 1rem;background:var(--amber);color:#1b1608;border-radius:8px;font-weight:800;transform:translateY(-180%);transition:transform .15s}.skip-link:focus{transform:translateY(0)}
.booking-fallback{display:flex;align-items:center;justify-content:center;gap:.35rem;flex-wrap:wrap;margin:1rem 1.25rem 0;padding:.8rem 1rem;border:1px solid #cfe1ed;border-radius:12px;background:#f5faff;color:#496174;font-size:.9rem;text-align:center}.booking-fallback a{color:#006cae;font-weight:800;text-decoration:underline;text-underline-offset:3px}.noscript-content{min-height:65vh;display:grid;place-items:center;padding:7rem 1.25rem 3rem;background:#f5f9fc;color:#092644}.noscript-content>div{width:min(720px,100%);padding:2rem;border:1px solid #d6e3ec;border-radius:20px;background:#fff;box-shadow:0 18px 50px rgba(3,42,76,.1)}.noscript-content h1{font:800 clamp(2rem,6vw,3.5rem)/1.05 Manrope,Arial,sans-serif;margin:.5rem 0 1rem}.noscript-content p{font-size:1.05rem;line-height:1.7}.noscript-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}.noscript-actions a{display:inline-flex;padding:.85rem 1.1rem;border-radius:10px;background:#0878ba;color:#fff;font-weight:800;text-decoration:none}.noscript-actions a:first-child{background:#ef4a23}
.next-steps-section{background:#fff}.compact-head{margin-bottom:2rem}.next-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.next-steps article{position:relative;padding:1.7rem;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fff,#f7fbfd)}.next-steps article>span{display:block;color:var(--blue);font:800 1.65rem/1 Manrope,sans-serif;margin-bottom:1rem}.next-steps h3{font-size:1.25rem}.next-steps p{color:var(--muted);margin-bottom:0}.booking-assurance{max-width:900px;margin:1.5rem auto 0;padding:1rem 1.2rem;border-left:3px solid var(--amber);background:#fff8e9;color:#4e4a3b;font-size:.9rem}@media(max-width:700px){.next-steps{grid-template-columns:1fr}.compact-head{display:block}.next-steps article{padding:1.4rem}}
.guide-layout{display:grid;grid-template-columns:300px 1fr;gap:3rem;align-items:start}.guide-nav{position:sticky;top:110px;display:flex;flex-direction:column;padding:1.25rem;border:1px solid var(--line);border-radius:14px;background:#f7fbfd}.guide-nav strong{font:800 1.05rem Manrope,sans-serif;margin-bottom:.7rem}.guide-nav a{padding:.65rem 0;border-top:1px solid var(--line);color:var(--blue);font-size:.9rem;font-weight:700}.guide-answers{display:flex;flex-direction:column;gap:1rem}.guide-answers article{scroll-margin-top:110px;padding:2rem;border:1px solid var(--line);border-radius:16px;background:white}.guide-answers article>span{color:var(--blue);font:800 1rem Manrope,sans-serif}.guide-answers h2{font-size:clamp(1.45rem,3vw,2rem);margin-top:.45rem}.guide-answers p{max-width:760px;color:var(--muted);font-size:1.05rem;margin-bottom:0}@media(max-width:800px){.guide-layout{grid-template-columns:1fr}.guide-nav{position:static}.guide-answers article{padding:1.4rem}}
.related-section{background:#f5f9fb}.text-link{color:var(--blue);font-weight:800}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.related-grid>a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.4rem;border:1px solid var(--line);border-radius:14px;background:white;transition:.2s}.related-grid>a:hover{border-color:#9acde2;box-shadow:0 12px 28px rgba(5,29,44,.08);transform:translateY(-2px)}.related-grid span{display:flex;flex-direction:column}.related-grid strong{font:800 1.05rem Manrope,sans-serif}.related-grid small{color:var(--muted);margin-top:.25rem}.related-grid b{color:var(--blue);font-size:1.25rem}.area-helper{margin:1.4rem 0 0;color:var(--muted);font-size:.92rem}.area-helper a{color:var(--blue);font-weight:800;text-decoration:underline;text-underline-offset:3px}@media(max-width:700px){.related-grid{grid-template-columns:1fr}.related-grid>a{padding:1.2rem}.text-link{display:inline-block;margin-top:.5rem}}
.privacy-banner{position:fixed;z-index:100;left:50%;bottom:1rem;transform:translateX(-50%);width:min(920px,calc(100% - 2rem));display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.2rem 1.35rem;border:1px solid #cbdde6;border-radius:16px;background:white;box-shadow:0 20px 60px rgba(3,18,29,.24)}.privacy-banner strong{display:block;font:800 1rem Manrope,sans-serif}.privacy-banner p{margin:.25rem 0 0;color:var(--muted);font-size:.9rem;line-height:1.45}.privacy-banner a{color:var(--blue);font-weight:700;text-decoration:underline}.privacy-actions{display:flex;gap:.6rem;flex-shrink:0}.privacy-actions button,.privacy-choice-link{border:1px solid #b8ccd7;border-radius:8px;background:white;color:var(--ink);padding:.7rem .9rem;font:700 .85rem DM Sans,sans-serif;cursor:pointer}.privacy-actions .accept{border-color:var(--blue);background:var(--blue);color:white}.privacy-choice-link{display:block;margin:.5rem 0 0;padding:0;border:0;border-radius:0;background:transparent;color:#c7d4da;text-align:left;font-weight:400}.privacy-choice-link:hover{text-decoration:underline}@media(max-width:700px){.privacy-banner{bottom:74px;display:block;padding:1rem}.privacy-actions{margin-top:.9rem}.privacy-actions button{flex:1}.privacy-actions{display:flex}}
.review-hero h1{max-width:850px}.review-summary{display:grid;grid-template-columns:220px 1fr;gap:2rem;align-items:center;margin-bottom:2rem;padding:2rem;border-radius:18px;background:var(--ink);color:white}.review-summary>div{display:grid;grid-template-columns:auto 1fr;column-gap:.8rem;align-items:center}.review-summary strong{grid-row:1/3;font:800 4rem/1 Manrope,sans-serif;color:var(--amber)}.review-summary .stars{font-size:1.1rem}.review-summary small{color:#b9ccd6}.review-summary p{max-width:650px;margin:0;color:#d4e5ed;font-size:1.1rem}.reviews-full{grid-template-columns:repeat(2,1fr)}.reviews-full .review{min-height:290px}.reviews-action{margin-top:2rem;padding:2rem;border:1px solid var(--line);border-radius:16px;display:flex;align-items:center;gap:1.2rem}.reviews-action p{margin:0 auto 0 0;font:800 1.2rem Manrope,sans-serif}@media(max-width:700px){.review-summary{grid-template-columns:1fr;padding:1.5rem}.reviews-full{grid-template-columns:1fr}.reviews-action{display:block}.reviews-action .btn{width:100%;margin:.8rem 0}.reviews-action .text-link{display:block;text-align:center}}
/* Conversion and accessibility polish */
.nav-services summary{min-height:44px;display:flex;align-items:center}.nav-services summary[aria-current]{color:var(--blue);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}.nav-services summary:focus-visible{outline:3px solid var(--amber);outline-offset:4px;border-radius:4px}nav>a{min-height:44px;display:flex;align-items:center}.quick-action,.social-btn,.area-links a,.service-links a,.related-grid>a{min-height:52px}footer a{min-height:32px}.btn,.card,.quick-action,.social-btn,.area-links a,.service-links a,.related-grid>a{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease}
@media(max-width:1050px){body.menu-open{overflow:hidden}header.open nav{overscroll-behavior:contain}.nav-services summary{width:100%}.nav-panel a{min-height:52px}}
@media(max-width:700px){body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.mobile-bar{padding-bottom:calc(.55rem + env(safe-area-inset-bottom))}.mobile-bar a{min-height:48px;font-size:.88rem}.privacy-banner{bottom:calc(74px + env(safe-area-inset-bottom))}.menu{min-height:44px;min-width:66px}.choice-tabs a{min-height:48px;display:flex;align-items:center;justify-content:center}}
@media(hover:hover){.quick-action:hover,.social-btn:hover,.area-links a:hover,.related-grid>a:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(5,29,44,.1)}}
.highlevel-card{position:relative}.booking-loader{min-height:320px;display:grid;place-items:center;align-content:center;gap:.55rem;padding:2rem;text-align:center;color:var(--muted)}.booking-loader span{width:42px;height:42px;border:4px solid #d7e7ef;border-top-color:var(--blue);border-radius:50%;animation:booking-spin .8s linear infinite}.booking-loader strong{font:800 1.05rem Manrope,sans-serif;color:var(--ink)}.booking-loader p{margin:0;font-size:.9rem}.highlevel-card:not(.booking-ready) .highlevel-frame{position:absolute;visibility:hidden;pointer-events:none}.highlevel-card.booking-ready .booking-loader{display:none}.booking-slow .booking-loader span{display:none}@keyframes booking-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.booking-loader span{animation:none;border-top-color:#d7e7ef;box-shadow:inset 0 0 0 5px white,inset 0 0 0 8px var(--blue)}}
.emergency-hero{background:linear-gradient(120deg,#2b110b 0%,#6f210f 55%,#a93417 100%)}.emergency-hero .proof span{border-color:rgba(255,255,255,.25)}.emergency-action{padding-top:2.5rem;padding-bottom:2.5rem;background:#fff5ed}.emergency-action .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:1rem}.emergency-call,.emergency-safety{padding:2rem;border-radius:18px}.emergency-call{background:white;border:1px solid #f0c8b9}.emergency-call h2{max-width:660px}.emergency-call p{max-width:720px;color:var(--muted)}.emergency-safety{background:#30120c;color:white;border-left:5px solid var(--amber)}.emergency-safety strong{font:800 1.35rem Manrope,sans-serif;color:var(--amber)}.emergency-safety p{margin:.75rem 0 0;color:#f4ddd5}.emergency-call .btn-outline{border-color:#9c361f;color:#74220f}@media(max-width:800px){.emergency-action .wrap{grid-template-columns:1fr}.emergency-call,.emergency-safety{padding:1.5rem}}
.area-hub-section{background:#f5f9fb}.area-hub-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.area-hub-card{display:flex;flex-direction:column;min-height:300px;padding:2rem;border:1px solid var(--line);border-radius:18px;background:white;transition:.2s}.area-hub-card:hover{border-color:#9acde2;box-shadow:0 14px 34px rgba(5,29,44,.1);transform:translateY(-3px)}.area-hub-card .eyebrow{margin-bottom:.75rem}.area-hub-card h2{font-size:clamp(1.7rem,3vw,2.35rem)}.area-hub-card p{color:var(--muted)}.area-hub-card small{margin-top:auto;padding-top:1rem;border-top:1px solid var(--line);color:#546b78}.area-hub-card b{margin-top:.9rem;color:var(--blue)}.band .area-service-list li{border-color:rgba(255,255,255,.18)}.band .area-service-list li:before{color:var(--amber)}@media(max-width:700px){.area-hub-grid{grid-template-columns:1fr}.area-hub-card{min-height:0;padding:1.5rem}}
.faq-hub-section{background:#f5f9fb}.faq-hub-layout{display:grid;grid-template-columns:340px 1fr;gap:3rem;align-items:start}.faq-hub-aside{position:sticky;top:120px;padding:2rem;border-radius:18px;background:white;border:1px solid var(--line)}.faq-hub-aside h2{font-size:2rem}.faq-hub-grid{display:flex;flex-direction:column;gap:.8rem}.faq-hub-grid details{padding:1.35rem 1.5rem;border:1px solid var(--line);border-radius:14px;background:white}.faq-hub-grid details[open]{border-color:#a8d1e2;box-shadow:0 10px 25px rgba(5,29,44,.06)}.faq-hub-grid summary{cursor:pointer;font:800 1.05rem Manrope,sans-serif}.faq-hub-grid p{margin:1rem 0 0;color:var(--muted)}@media(max-width:800px){.faq-hub-layout{grid-template-columns:1fr}.faq-hub-aside{position:static}.faq-hub-grid details{padding:1.2rem}}
.maintenance-hero{background:linear-gradient(110deg,#041725 0%,#0a3d5e 72%,#0b628f 100%)}.maintenance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.maintenance-grid article{padding:2rem;border:1px solid var(--line);border-radius:16px;background:#fff;display:flex;flex-direction:column;min-height:285px}.maintenance-grid article.featured{background:var(--ice);border-color:#9ecfe2}.maintenance-grid article>span{color:var(--blue);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.maintenance-grid h3{font-size:1.45rem;margin-top:1rem}.maintenance-grid p{color:var(--muted);flex:1}.maintenance-grid a{color:var(--blue);font-weight:800}.maintenance-visit .checklist li{border-color:rgba(255,255,255,.18)}.maintenance-visit .checklist li:before{color:var(--amber)}.season-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.season-grid article{padding:1.6rem;border-left:4px solid var(--blue);background:#f5f9fb;border-radius:0 12px 12px 0}.season-grid strong{font:800 1.12rem Manrope,sans-serif}.season-grid p{color:var(--muted);margin-bottom:0}@media(max-width:800px){.maintenance-grid,.season-grid{grid-template-columns:1fr}.maintenance-grid article{min-height:0}}
.commercial-hero{background:linear-gradient(115deg,#03121d 0%,#092f48 58%,#145d78 100%)}.commercial-hero h1{max-width:950px}.commercial-services{background:#f5f9fb}.commercial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.commercial-grid article{min-height:235px;padding:1.7rem;border:1px solid var(--line);border-radius:14px;background:#fff}.commercial-grid article>span{display:block;color:var(--blue);font:800 1.35rem/1 Manrope,sans-serif;margin-bottom:1.2rem}.commercial-grid p,.property-grid p{color:var(--muted);margin-bottom:0}.commercial-process{display:grid;gap:.75rem}.commercial-process article{padding:1.25rem;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.04)}.commercial-process strong{font:800 1.05rem Manrope,sans-serif;color:var(--amber)}.commercial-process p{margin:.4rem 0 0;color:#d5e4eb}.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.property-grid article{padding:1.7rem;border-top:4px solid var(--blue);border-radius:0 0 12px 12px;background:#f5f9fb}@media(max-width:800px){.commercial-grid,.property-grid{grid-template-columns:1fr}.commercial-grid article{min-height:0}}
.furnace-hero{background:linear-gradient(115deg,#2a1209 0%,#733016 52%,#b24b1e 100%)}.furnace-help{background:#f5f9fb}.furnace-signs{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.furnace-signs article{padding:1.5rem;border:1px solid var(--line);border-radius:14px;background:white}.furnace-signs h3{font-size:1.08rem}.furnace-signs p{color:var(--muted);margin-bottom:0}.furnace-decision .decision-card{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.18);color:white}.furnace-decision .decision-card.highlight{background:white;color:var(--ink);border-color:white}.furnace-decision .checklist li{border-color:rgba(255,255,255,.18)}.furnace-decision .highlight .checklist li{border-color:var(--line)}.furnace-decision .card-link{display:inline-block;margin-top:1rem;color:var(--amber)}.furnace-decision .highlight .card-link{color:var(--blue)}.furnace-brand-panel{padding:2rem;border-radius:18px;background:linear-gradient(145deg,#e9f6fb,#fff);border:1px solid #b9dce9}.furnace-brand-panel h3{font-size:1.6rem}.furnace-brand-panel p{color:var(--muted)}@media(max-width:800px){.furnace-signs{grid-template-columns:1fr}}
.cooling-decision .section-head p{color:#d5e4eb}.cooling-decision .decision-card{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.18);color:white}.cooling-decision .decision-card.highlight{background:white;color:var(--ink);border-color:white}.cooling-decision .checklist li{border-color:rgba(255,255,255,.18)}.cooling-decision .highlight .checklist li{border-color:var(--line)}.cooling-decision .card-link{display:inline-block;margin-top:1rem;color:var(--amber)}.cooling-decision .highlight .card-link{color:var(--blue)}
.cooling-hero{background:linear-gradient(115deg,#031d31 0%,#075985 58%,#0b8dbd 100%)}.cooling-issues{background:#f5f9fb}.comfort-issue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.comfort-issue-grid article{padding:1.5rem;border:1px solid var(--line);border-radius:14px;background:white}.comfort-issue-grid h3{font-size:1.08rem}.comfort-issue-grid p{color:var(--muted);margin-bottom:0}.comfort-brand-panel{padding:2rem;border-radius:18px;background:linear-gradient(145deg,#e7f7fc,#fff);border:1px solid #acdbe9}.comfort-brand-panel h3{font-size:1.55rem}.comfort-brand-panel p{color:var(--muted)}.heatpump-hero{background:linear-gradient(115deg,#042137 0%,#0b536d 54%,#268e86 100%)}.heatpump-options{background:#f5f9fb}.heatpump-grid,.heatpump-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.heatpump-grid article,.heatpump-service-grid article{padding:1.7rem;border:1px solid var(--line);border-radius:14px;background:white}.heatpump-grid article>span{display:block;color:var(--blue);font:800 1.35rem/1 Manrope,sans-serif;margin-bottom:1.1rem}.heatpump-grid p,.heatpump-service-grid p{color:var(--muted)}.heatpump-service-grid a{color:var(--blue);font-weight:800}.heatpump-planning .checklist li{border-color:rgba(255,255,255,.18)}.heatpump-planning .checklist li:before{color:var(--amber)}@media(max-width:800px){.comfort-issue-grid,.heatpump-grid,.heatpump-service-grid{grid-template-columns:1fr}}
.band>.wrap>.section-head p{color:#d5e4eb}.band .process .card{color:var(--ink)}.review footer small{display:block;padding:0;border:0;color:var(--muted)}@media(max-width:700px){.inner-hero .btn{width:100%}.inner-hero .btn-outline{margin:.65rem 0 0}}
.waterheater-hero{background:linear-gradient(115deg,#06213a 0%,#0b5f8e 56%,#1aa7b8 100%)}.boiler-hero{background:linear-gradient(115deg,#241109 0%,#6f2b16 54%,#a84d22 100%)}.mechanical-options{background:#f5f9fb}.equipment-options-grid,.service-signs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.equipment-options-grid article,.service-signs-grid article{padding:1.65rem;border:1px solid var(--line);border-radius:14px;background:white}.equipment-options-grid article>span{display:block;color:var(--blue);font:800 1.35rem/1 Manrope,sans-serif;margin-bottom:1.1rem}.equipment-options-grid h3,.service-signs-grid h3{font-size:1.12rem}.equipment-options-grid p,.service-signs-grid p{color:var(--muted);margin-bottom:0}.mechanical-plan .checklist li{border-color:rgba(255,255,255,.18)}.mechanical-plan .checklist li:before{color:var(--amber)}@media(max-width:800px){.equipment-options-grid,.service-signs-grid{grid-template-columns:1fr}}
.ductless-hero{background:linear-gradient(115deg,#04223a 0%,#09627c 55%,#1a9a91 100%)}.generator-hero{background:linear-gradient(115deg,#151b20 0%,#39434a 55%,#a44720 100%)}.zone-options,.generator-priority{background:#f5f9fb}.ductless-planning .checklist li,.generator-planning .checklist li{border-color:rgba(255,255,255,.18)}.ductless-planning .checklist li:before,.generator-planning .checklist li:before{color:var(--amber)}
.gasline-hero{background:linear-gradient(115deg,#111a21 0%,#354651 58%,#8a4a24 100%)}.gasline-uses{background:#f5f9fb}.gasline-planning .checklist li{border-color:rgba(255,255,255,.18)}.gasline-planning .checklist li:before{color:var(--amber)}.gas-safety{background:#fff5ed}.safety-callout{display:grid;grid-template-columns:1.25fr .75fr;gap:2rem;align-items:center;padding:2rem;border:1px solid #efc7b5;border-left:6px solid var(--amber);border-radius:16px;background:#fff}.safety-callout h2{margin-bottom:.7rem}.safety-callout p{margin:0;color:var(--muted)}.safety-callout strong{display:block;font:800 1.2rem Manrope,sans-serif;color:#7b2813;margin-bottom:.5rem}.safety-callout a{color:var(--blue);font-weight:800}@media(max-width:700px){.safety-callout{grid-template-columns:1fr;padding:1.4rem}}
.repair-hero{background:linear-gradient(115deg,#21100a 0%,#873018 55%,#d94f22 100%)}.ductwork-hero{background:linear-gradient(115deg,#071925 0%,#16495f 55%,#4f7f8f 100%)}.repair-systems,.ductwork-symptoms,.ductwork-types{background:#f5f9fb}.repair-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.repair-steps article{padding:1.5rem;border:1px solid rgba(255,255,255,.17);border-radius:14px;background:rgba(255,255,255,.05)}.repair-steps span{display:block;color:var(--amber);font:800 1.3rem Manrope,sans-serif}.repair-steps h3{color:#fff;font-size:1.08rem;margin:.8rem 0 .5rem}.repair-steps p{color:#d5e4eb;margin:0}.urgent-guidance{background:#fff5ed}.ductwork-planning .checklist li{border-color:rgba(255,255,255,.18)}.ductwork-planning .checklist li:before{color:var(--amber)}@media(max-width:800px){.repair-steps{grid-template-columns:1fr 1fr}}@media(max-width:520px){.repair-steps{grid-template-columns:1fr}}
.iaq-hero{background:linear-gradient(115deg,#052239 0%,#17627a 54%,#2d948d 100%)}.hrv-hero{background:linear-gradient(115deg,#072037 0%,#246b82 58%,#63a493 100%)}.humidity-hero{background:linear-gradient(115deg,#09223a 0%,#176a99 55%,#44a6c7 100%)}.purification-hero{background:linear-gradient(115deg,#061b2c 0%,#164f75 55%,#287fab 100%)}.iaq-solutions,.humidity-options,.purification-options,.ventilation-compare{background:#f5f9fb}.iaq-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.iaq-paths a{display:flex;flex-direction:column;min-height:270px;padding:1.7rem;border:1px solid var(--line);border-radius:16px;background:#fff}.iaq-paths span{color:var(--blue);font:800 1.3rem Manrope,sans-serif}.iaq-paths h3{font-size:1.25rem}.iaq-paths p{color:var(--muted)}.iaq-paths b{margin-top:auto;color:var(--blue)}.iaq-planning .checklist li,.ventilation-planning .checklist li,.humidity-planning .checklist li,.purification-planning .checklist li{border-color:rgba(255,255,255,.18)}.iaq-planning .checklist li:before,.ventilation-planning .checklist li:before,.humidity-planning .checklist li:before,.purification-planning .checklist li:before{color:var(--amber)}.iaq-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.iaq-facts article{padding:1.5rem;border-top:4px solid var(--blue);background:#f5f9fb}.iaq-facts strong{font:800 1.08rem Manrope,sans-serif}.iaq-facts p{margin:.6rem 0 0;color:var(--muted)}@media(max-width:800px){.iaq-paths,.iaq-facts{grid-template-columns:1fr}.iaq-paths a{min-height:0}.ventilation-compare .decision-grid{grid-template-columns:1fr}}
@media(max-width:1050px){header.open nav{max-height:calc(100dvh - 81px);overflow-y:auto}}@media(max-width:700px){header.open nav{top:67px;max-height:calc(100dvh - 67px);padding-bottom:calc(5rem + env(safe-area-inset-bottom))}h1,.inner-hero h1{font-size:clamp(2.25rem,11vw,3rem);letter-spacing:-.045em}.hero{min-height:auto}.hero-inner{padding:3.75rem 0 4.25rem}.inner-hero{padding-top:3.75rem;padding-bottom:3.75rem}.highlevel-card{overflow:hidden}}@media(max-width:420px){footer{grid-template-columns:1fr}footer>div:first-child{grid-column:auto}.mobile-bar a{padding:.65rem .2rem;font-size:.8rem}.proof{grid-template-columns:1fr}.proof span:last-child{grid-column:auto}.privacy-actions{flex-direction:column}.privacy-actions button{width:100%}}
.eyebrow{color:#006cae;font-size:.875rem}.hero .eyebrow,.inner-hero .eyebrow,.band .eyebrow,.social-section .eyebrow,.haven-standard .eyebrow{color:#8ad3f1}.social-btn span{color:#006cae}main:focus{outline:none}
.booking-selection{margin:0 0 1rem;padding:1rem;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.07)}
.booking-selection span,.booking-selection small{display:block}
.booking-selection span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;opacity:.78}
.booking-selection strong{display:block;margin:.2rem 0;font-size:1.2rem}
.booking-selection small{opacity:.82}

/* Draft mobile brand-card containment fix. Original logo artwork is unchanged. */
.brand-band .brand-list{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.brand-band .brand-card{min-width:0;gap:1rem;justify-content:flex-start}
.brand-band .brand-logo{display:flex;align-items:center;justify-content:center;width:100%;height:78px;min-height:78px;min-width:0;flex:0 0 78px;overflow:hidden}
.brand-band .brand-logo img{position:static;display:block;flex:none;width:auto;height:auto;max-width:min(100%,220px);max-height:78px;object-fit:contain;object-position:center}
.brand-band .brand-card figcaption{flex:0 0 auto;width:100%;margin:0;min-height:2.6em}
@media(max-width:900px){.brand-band .brand-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.brand-band .brand-list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Unpublished offers route. All selectors are scoped to new offers elements. */
.haven-offers-hero h1{max-width:850px}.haven-offers-hero p{max-width:660px}
.haven-offers-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:stretch}
.haven-offer-card{display:flex;flex-direction:column;min-width:0;padding:1.65rem;background:#fff;border:1px solid #d6e3e8;border-top:5px solid var(--blue,#0c78b8);border-radius:18px;box-shadow:0 14px 35px #071c2c0a;color:var(--ink,#071c2c);overflow-wrap:anywhere}
.haven-offer-heading{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem}.haven-offer-heading .eyebrow{font-size:.76rem;letter-spacing:.08em}
.haven-offer-state{display:inline-flex;background:#eef3f5;color:#425560;border-radius:100px;padding:.3rem .65rem;font-size:.76rem;font-weight:700}.haven-offer-state.is-expired{background:#f5ece5;color:#744729}
.haven-offer-card h2{font-size:clamp(2.6rem,3.4vw,3.7rem);line-height:1.06;margin:1.1rem 0;letter-spacing:-.045em}
.haven-offer-sub{font-size:1.1rem;line-height:1.4}.haven-offer-card>p{margin:1rem 0}.haven-offer-card .checklist{margin:1rem 0}
.haven-offer-card .checklist li{line-height:1.5}.haven-offer-note{font-size:.9rem;color:#4b606c;line-height:1.6}
.haven-offer-date{border-top:1px solid #e4ebee;padding-top:1rem;font-size:.86rem;font-weight:700;color:#173b45}
.haven-offer-booking{margin-top:auto;padding-top:.75rem}.haven-offer-card .btn{width:100%;white-space:normal;text-align:center;min-height:48px;font-size:.93rem;font-family:inherit;line-height:1.4}
.haven-offer-card button:disabled{background:#dce4e8;color:#40515d;box-shadow:none;opacity:1;cursor:not-allowed;transform:none}
.haven-offer-status{margin:.7rem 0 0;font-size:.82rem;line-height:1.5;color:#546671}
.haven-offer-terms{margin-top:1.3rem;border-top:1px solid #d6e3e8;padding-top:.6rem;font-size:.9rem;line-height:1.65}
.haven-offer-terms summary{font-weight:800;cursor:pointer;min-height:44px;align-content:center;padding:.4rem 0}.haven-offer-terms summary:focus-visible{outline:3px solid #0c78b8;outline-offset:4px;border-radius:3px}.haven-offer-terms ul{padding-left:1.1rem}.haven-offer-terms li{margin:.85rem 0}
.haven-offers-one{text-align:center;padding:1.1rem;margin:1.8rem 0 0;background:#eaf3f4;border-radius:10px;color:#173b45}
.haven-offers-empty .wrap{max-width:850px;text-align:center}.haven-offers-empty h2{font-size:clamp(2rem,4vw,3rem)}
.haven-offer-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.6rem}.haven-offer-actions .btn-outline{color:#173b45;border-color:#7b929e;margin-left:0}
.haven-offers-review{padding:1rem 5%;background:#fff1cc;color:#483715;display:flex;gap:1rem;align-items:center;font-size:.9rem;line-height:1.55;overflow-wrap:anywhere}
.haven-offers-review strong{flex-shrink:0;max-width:16rem}.haven-offers-review a{text-decoration:underline;color:inherit}
@media(max-width:1100px){.haven-offers-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.haven-offer-card:last-child:nth-child(odd){grid-column:1/-1}.haven-offer-card h2{font-size:3.1rem}}
@media(max-width:760px){.haven-offers-grid{grid-template-columns:1fr}.haven-offer-card{padding:1.5rem}.haven-offer-card:last-child:nth-child(odd){grid-column:auto}.haven-offers-review{display:block}.haven-offers-review strong{display:block;max-width:none;margin-bottom:.5rem}.haven-offers-hero h1{font-size:3rem}}
@media(max-width:420px){.haven-offer-actions{flex-direction:column}.haven-offer-actions .btn{width:100%}.haven-offer-card{padding:1.2rem}.haven-offer-card h2{font-size:2.65rem}}

/* Single approved offer stays centered without empty desktop columns. */
.haven-offers-grid>.haven-offer-card:only-child{grid-column:1/-1;max-width:640px;width:100%;justify-self:center}
