@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Open+Sans:wght@400;600;700&family=Oswald:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--ink:#171918;--paper:#f1f0eb;--orange:#ff5a1f;--muted:#9c9e99;--line:#343735;--white:#fffdfa}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}.topline{display:flex;justify-content:space-between;padding:10px 5vw;border-bottom:1px solid var(--line);color:var(--muted);font-size:10px;letter-spacing:.15em}.site-header{align-items:center;display:flex;gap:32px;justify-content:space-between;padding:22px 5vw;position:relative}.brand{align-items:center;display:flex;font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700;line-height:.9;letter-spacing:.04em}.brand small{font-size:7px;letter-spacing:.2em}.brand-mark{align-items:center;background:var(--orange);border-radius:50%;color:var(--ink);display:flex;font-size:24px;height:38px;justify-content:center;margin-right:10px;width:38px}.main-nav{display:flex;gap:32px;margin-left:auto}.main-nav a{color:#b6b8b3;font-size:13px}.main-nav a:hover,.phone-link:hover,.text-link:hover{color:var(--orange)}.phone-link{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700;text-align:right}.phone-link span{color:var(--orange);display:block;font-size:9px;letter-spacing:.13em}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:580px;padding:64px 5vw 90px}.hero-copy{align-self:center;max-width:590px}.eyebrow{color:var(--orange);font-size:10px;font-weight:700;letter-spacing:.2em;margin:0 0 25px}.hero h1,.section h2,.process h2,.about h2,.contact h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(48px,6.8vw,94px);letter-spacing:-.07em;line-height:.9;margin:0}.hero h1{max-width:560px}.hero em,h2 em{color:var(--orange);font-style:normal}.lede{color:#b7b9b4;font-size:18px;line-height:1.55;margin:30px 0;max-width:450px}.actions{display:flex;flex-wrap:wrap;gap:14px}.button{border:1px solid var(--orange);display:inline-block;font-size:12px;font-weight:700;letter-spacing:.05em;padding:16px 22px}.button-primary{background:var(--orange);color:var(--ink)}.button-primary:hover{background:#ff7748}.button-quiet{color:var(--paper)}.button-quiet span{color:var(--orange);font-size:18px;margin-left:8px}.hero-visual{background:linear-gradient(145deg,#252a27 0%,#101211 70%);min-height:460px;overflow:hidden;position:relative}.hero-visual:before{background:repeating-linear-gradient(90deg,transparent 0 42px,#363b37 43px 44px);content:'';inset:0;opacity:.4;position:absolute}.visual-label{color:var(--orange);font-size:11px;letter-spacing:.14em;position:absolute;right:30px;top:30px}.visual-label strong{color:var(--paper);font-size:20px}.cabinet{background:linear-gradient(135deg,#515a55,#252b28);border:2px solid #69736b;box-shadow:14px 20px 0 rgba(0,0,0,.35);position:absolute}.cabinet:after{border:1px solid var(--orange);content:'';height:7px;position:absolute;right:13px;top:50%;width:7px}.cabinet-a{height:240px;left:17%;top:31%;transform:skewY(4deg);width:48%}.cabinet-b{height:170px;right:4%;top:46%;transform:skewY(-5deg);width:25%}.floor-line{background:var(--orange);bottom:72px;height:3px;left:0;position:absolute;transform:rotate(-7deg);width:100%}.section{background:var(--paper);color:var(--ink);padding:110px 5vw}.section-heading{display:grid;gap:25px;grid-template-columns:1fr 1fr;margin-bottom:60px}.section-heading h2{font-size:clamp(50px,6vw,82px)}.section-heading>p:last-child{align-self:end;color:#676b65;line-height:1.6;max-width:330px}.solution-grid{display:grid;gap:1px;grid-template-columns:repeat(4,1fr)}.solution-card{background:#d8d8d1;min-height:320px;padding:24px;position:relative;transition:transform .2s}.solution-card:hover{transform:translateY(-6px)}.solution-card:before{background:linear-gradient(135deg,rgba(22,26,24,.1),rgba(22,26,24,.65));content:'';inset:0;position:absolute}.solution-card>*{position:relative}.solution-card span{font-size:11px}.solution-card h3{font-family:'Space Grotesk',sans-serif;font-size:27px;letter-spacing:-.05em;margin-top:160px}.solution-card p{color:#d9d9d3;font-size:13px;line-height:1.4;max-width:190px}.solution-card b{bottom:24px;color:var(--orange);font-size:11px;position:absolute}.card-floor{background:linear-gradient(135deg,#9c7754,#242824)}.card-cabinet{background:linear-gradient(135deg,#778179,#252a27)}.card-wall{background:linear-gradient(135deg,#b66e42,#28221e)}.card-lift{background:linear-gradient(135deg,#687277,#212426)}.process{background:#252a27;display:grid;gap:80px;grid-template-columns:1fr 1fr;padding:110px 5vw}.process-list{border-top:1px solid #4a4f4b}.process-list>div{border-bottom:1px solid #4a4f4b;display:grid;gap:20px;grid-template-columns:45px 1fr 1fr;padding:27px 0}.process-list span{color:var(--orange);font-size:12px}.process-list h3{font-family:'Space Grotesk',sans-serif;font-size:24px;margin:0}.process-list p{color:#aeb2ad;font-size:13px;margin:3px 0}.about{align-items:center;background:var(--orange);color:var(--ink);display:grid;gap:60px;grid-template-columns:1fr 1fr;padding:100px 5vw}.about .eyebrow{color:var(--ink)}.about h2{font-size:clamp(48px,6vw,80px)}.about p{line-height:1.6;max-width:400px}.about-number{font-family:'Space Grotesk';font-size:clamp(160px,27vw,390px);font-weight:700;letter-spacing:-.15em;line-height:.7}.about-number span{font-size:.25em;letter-spacing:-.1em}.text-link{border-bottom:1px solid var(--ink);display:inline-block;font-weight:700;margin-top:10px;padding-bottom:6px}.contact{background:var(--paper);color:var(--ink);padding:110px 5vw;text-align:center}.contact h2{font-size:clamp(52px,8vw,110px)}.contact p:not(.eyebrow){color:#676b65;margin:28px auto;max-width:390px}.site-footer{color:#aeb2ad;display:grid;font-size:12px;gap:30px;grid-template-columns:2fr 2fr 1fr 1fr;padding:50px 5vw}.site-footer .brand{color:var(--paper)}.site-footer p{line-height:1.6;margin:0}.site-footer a{color:var(--orange)}.site-footer small{font-size:10px}@media(max-width:800px){.topline{font-size:8px}.site-header{flex-wrap:wrap}.menu-toggle{background:none;border:1px solid var(--line);color:var(--paper);display:block;padding:9px 12px}.main-nav{background:var(--ink);display:none;flex-basis:100%;flex-direction:column;gap:0;order:4}.main-nav.open{display:flex}.main-nav a{border-bottom:1px solid var(--line);padding:15px 0}.phone-link{font-size:12px;margin-left:auto}.hero{grid-template-columns:1fr;padding-top:45px}.hero-visual{margin-top:60px;min-height:330px}.section-heading,.process,.about{grid-template-columns:1fr}.solution-grid{grid-template-columns:1fr 1fr}.solution-card{min-height:260px}.solution-card h3{font-size:22px;margin-top:105px}.site-footer{grid-template-columns:1fr 1fr}.site-footer .brand{grid-column:1/-1}}@media(max-width:500px){.topline{gap:10px}.topline span:last-child{display:none}.hero{padding-bottom:60px}.hero h1{font-size:58px}.lede{font-size:16px}.solution-grid{grid-template-columns:1fr}.solution-card{min-height:270px}.process-list>div{grid-template-columns:35px 1fr}.process-list p{grid-column:2}.about-number{font-size:180px}.site-footer{grid-template-columns:1fr}}
:root{--ink:#171918;--paper:#f1f0eb;--orange:#ff5a1f;--muted:#9c9e99;--line:#343735;--white:#fffdfa}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}.topline{display:flex;justify-content:space-between;padding:10px 5vw;border-bottom:1px solid var(--line);color:var(--muted);font-size:10px;letter-spacing:.15em}.site-header{align-items:center;display:flex;gap:32px;justify-content:space-between;padding:22px 5vw;position:relative}.brand{align-items:center;display:flex;font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700;line-height:.9;letter-spacing:.04em}.brand small{font-size:7px;letter-spacing:.2em}.brand-mark{align-items:center;background:var(--orange);border-radius:50%;color:var(--ink);display:flex;font-size:24px;height:38px;justify-content:center;margin-right:10px;width:38px}.brand-logo{display:block;height:auto;max-height:72px;max-width:176px;width:auto}.main-nav{align-items:center;display:flex;flex-wrap:wrap;gap:22px;margin-left:auto}.main-nav a,.main-nav summary{color:#b6b8b3;cursor:pointer;font-size:12px;list-style:none}.main-nav a:hover,.main-nav summary:hover,.phone-link:hover,.text-link:hover{color:var(--orange)}.main-nav details{position:relative}.main-nav summary::-webkit-details-marker{display:none}.main-nav summary:after{color:var(--orange);content:'⌄';font-size:12px;margin-left:5px}.nav-menu{background:var(--ink);border:1px solid var(--line);display:grid;gap:0;left:-12px;min-width:190px;padding:8px;position:absolute;top:25px;z-index:5}.nav-menu a{border-bottom:1px solid var(--line);padding:10px 8px}.nav-menu a:last-child{border-bottom:0}.phone-link{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700;text-align:right}.phone-link span{color:var(--orange);display:block;font-size:9px;letter-spacing:.13em}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:580px;padding:64px 5vw 90px}.hero-copy{align-self:center;max-width:590px}.eyebrow{color:var(--orange);font-size:10px;font-weight:700;letter-spacing:.2em;margin:0 0 25px}.hero h1,.section h2,.process h2,.about h2,.contact h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(48px,6.8vw,94px);letter-spacing:-.07em;line-height:.9;margin:0}.hero h1{max-width:560px}.hero em,h2 em{color:var(--orange);font-style:normal}.lede{color:#b7b9b4;font-size:18px;line-height:1.55;margin:30px 0;max-width:450px}.actions{display:flex;flex-wrap:wrap;gap:14px}.button{border:1px solid var(--orange);display:inline-block;font-size:12px;font-weight:700;letter-spacing:.05em;padding:16px 22px}.button-primary{background:var(--orange);color:var(--ink)}.button-primary:hover{background:#ff7748}.button-quiet{color:var(--paper)}.button-quiet span{color:var(--orange);font-size:18px;margin-left:8px}.hero-carousel{background:#252a27;min-height:460px;overflow:hidden;position:relative}.carousel-slides,.carousel-slide{height:100%;width:100%}.carousel-slide{display:none;object-fit:cover}.carousel-slide.active{display:block}.carousel-control{background:rgba(23,25,24,.72);border:0;color:var(--paper);cursor:pointer;font-size:38px;height:50px;line-height:1;position:absolute;top:calc(50% - 25px);width:42px}.carousel-control:hover{background:var(--orange);color:var(--ink)}.carousel-control.prev{left:15px}.carousel-control.next{right:15px}.carousel-dots{bottom:18px;display:flex;gap:7px;justify-content:center;left:0;position:absolute;right:0}.carousel-dots button{background:rgba(255,255,255,.55);border:0;border-radius:50%;cursor:pointer;height:8px;padding:0;width:8px}.carousel-dots button.active{background:var(--orange);transform:scale(1.35)}.section{background:var(--paper);color:var(--ink);padding:110px 5vw}.section-heading{display:grid;gap:25px;grid-template-columns:1fr 1fr;margin-bottom:60px}.section-heading h2{font-size:clamp(50px,6vw,82px)}.section-heading>p:last-child{align-self:end;color:#676b65;line-height:1.6;max-width:330px}.solution-grid{display:grid;gap:1px;grid-template-columns:repeat(4,1fr)}.solution-card{background:#d8d8d1;min-height:320px;padding:24px;position:relative;transition:transform .2s}.solution-card:hover{transform:translateY(-6px)}.solution-card:before{background:linear-gradient(135deg,rgba(22,26,24,.1),rgba(22,26,24,.65));content:'';inset:0;position:absolute}.solution-card>*{position:relative}.solution-card span{font-size:11px}.solution-card h3{font-family:'Space Grotesk',sans-serif;font-size:27px;letter-spacing:-.05em;margin-top:160px}.solution-card p{color:#d9d9d3;font-size:13px;line-height:1.4;max-width:190px}.solution-card b{bottom:24px;color:var(--orange);font-size:11px;position:absolute}.card-floor{background:linear-gradient(135deg,#9c7754,#242824)}.card-cabinet{background:linear-gradient(135deg,#778179,#252a27)}.card-wall{background:linear-gradient(135deg,#b66e42,#28221e)}.card-lift{background:linear-gradient(135deg,#687277,#212426)}.process{background:#252a27;display:grid;gap:80px;grid-template-columns:1fr 1fr;padding:110px 5vw}.process-list{border-top:1px solid #4a4f4b}.process-list>div{border-bottom:1px solid #4a4f4b;display:grid;gap:20px;grid-template-columns:45px 1fr 1fr;padding:27px 0}.process-list span{color:var(--orange);font-size:12px}.process-list h3{font-family:'Space Grotesk',sans-serif;font-size:24px;margin:0}.process-list p{color:#aeb2ad;font-size:13px;margin:3px 0}.about{align-items:center;background:var(--orange);color:var(--ink);display:grid;gap:60px;grid-template-columns:1fr 1fr;padding:100px 5vw}.about .eyebrow{color:var(--ink)}.about h2{font-size:clamp(48px,6vw,80px)}.about p{line-height:1.6;max-width:400px}.about-number{font-family:'Space Grotesk';font-size:clamp(160px,27vw,390px);font-weight:700;letter-spacing:-.15em;line-height:.7}.about-number span{font-size:.25em;letter-spacing:-.1em}.text-link{border-bottom:1px solid var(--ink);display:inline-block;font-weight:700;margin-top:10px;padding-bottom:6px}.contact{background:var(--paper);color:var(--ink);padding:110px 5vw;text-align:center}.contact h2{font-size:clamp(52px,8vw,110px)}.contact p:not(.eyebrow){color:#676b65;margin:28px auto;max-width:390px}.site-footer{color:#aeb2ad;display:grid;font-size:12px;gap:30px;grid-template-columns:2fr 2fr 1fr 1fr;padding:50px 5vw}.site-footer .brand{color:var(--paper)}.site-footer p{line-height:1.6;margin:0}.site-footer a{color:var(--orange)}.site-footer small{font-size:10px}@media(max-width:1100px){.main-nav{gap:12px}.main-nav a,.main-nav summary{font-size:10px}}@media(max-width:800px){.topline{font-size:8px}.site-header{flex-wrap:wrap}.menu-toggle{background:none;border:1px solid var(--line);color:var(--paper);display:block;padding:9px 12px}.main-nav{background:var(--ink);display:none;flex-basis:100%;flex-direction:column;gap:0;order:4}.main-nav.open{display:flex}.main-nav a,.main-nav summary{border-bottom:1px solid var(--line);padding:15px 0;width:100%}.main-nav details{width:100%}.nav-menu{border:0;display:grid;position:static;padding:0 0 0 15px}.nav-menu a{border-bottom:1px solid var(--line);padding:10px 0}.phone-link{font-size:12px;margin-left:auto}.hero{grid-template-columns:1fr;padding-top:45px}.hero-carousel{margin-top:60px;min-height:330px}.section-heading,.process,.about{grid-template-columns:1fr}.solution-grid{grid-template-columns:1fr 1fr}.solution-card{min-height:260px}.solution-card h3{font-size:22px;margin-top:105px}.site-footer{grid-template-columns:1fr 1fr}.site-footer .brand{grid-column:1/-1}}@media(max-width:500px){.topline{gap:10px}.topline span:last-child{display:none}.hero{padding-bottom:60px}.hero h1{font-size:58px}.lede{font-size:16px}.solution-grid{grid-template-columns:1fr}.solution-card{min-height:270px}.process-list>div{grid-template-columns:35px 1fr}.process-list p{grid-column:2}.about-number{font-size:180px}.site-footer{grid-template-columns:1fr}}
/* Typography cleanup: a calmer, more legible pairing closer to the original site. */
body{font-family:'Open Sans',Arial,sans-serif}.brand,.phone-link,.hero h1,.section h2,.process h2,.about h2,.contact h2,.solution-card h3,.process-list h3{font-family:Oswald,'Arial Narrow',Arial,sans-serif;font-weight:600;letter-spacing:-.03em}.hero h1,.section h2,.process h2,.about h2,.contact h2{letter-spacing:-.045em}.brand-logo{background:transparent;display:block;max-height:72px;max-width:176px;object-fit:contain}
.brand:has(.brand-mark){display:block;height:72px;width:176px}.brand:has(.brand-mark) .brand-mark,.brand:has(.brand-mark)>span:not(.brand-mark){display:none}.brand:has(.brand-mark)::after{background:url('/assets/1st-choice-garage-logo-transparent.png') center/contain no-repeat;content:'';display:block;height:72px;width:176px}
.hero h1{font-size:clamp(38px,4.8vw,68px);line-height:.96;max-width:520px}@media(max-width:500px){.hero h1{font-size:46px}}
.solution-card{background-position:center;background-size:cover}.card-floor{background-image:url('/assets/hero/2.jpg')}.card-cabinet{background-image:url('/assets/hero/5.jpg')}.card-wall{background-image:url('/assets/hero/3.jpg')}.card-lift{background-image:url('/assets/hero/1.png')}
.solution-card{background-position:center top;background-repeat:no-repeat;background-size:100% 165px;background-color:#202421;display:flex;flex-direction:column;min-height:320px;padding:190px 24px 24px}.solution-card:before{background:linear-gradient(180deg,rgba(23,25,24,.08) 0 165px,transparent 165px);z-index:0}.solution-card>*{position:relative;z-index:1}.solution-card span{display:none}.solution-card h3{color:var(--paper);margin:0 0 10px;text-transform:uppercase}.solution-card p{color:#c8ccc5;margin:0 0 16px}.solution-card b{margin-top:auto;position:static}
.process-call{grid-column:2/-1;justify-self:start;margin-top:6px;padding:12px 16px}
.process h2{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(42px,5vw,72px);font-weight:500;letter-spacing:-.055em;line-height:.96}.process h2 em{font-weight:700}.process-sketch{margin-top:42px;max-width:620px;opacity:.92;transform:rotate(-.6deg)}.process-sketch svg{display:block;height:auto;overflow:visible;width:100%}.sketch-line{fill:none;stroke:var(--paper);stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.sketch-light{opacity:.35;stroke-width:1}.sketch-accent{opacity:.9;stroke:var(--orange)}.sketch-dashed{stroke:var(--orange);stroke-dasharray:7 8;opacity:.8}.sketch-label{fill:#aeb2ad;font-family:'Courier New',monospace;font-size:10px;letter-spacing:1.5px}.process-call{background:transparent;border-color:var(--orange);color:var(--paper);font-size:10px;letter-spacing:.12em;margin-top:10px;padding:10px 12px;text-transform:uppercase}.process-call:hover{background:var(--orange);color:var(--ink)}@media(max-width:800px){.process-sketch{margin-top:30px;max-width:620px}.process-call{grid-column:2}}
.process-sketch{border:0;margin:42px 0 0;max-width:620px;opacity:1;transform:none}.process-sketch img{display:block;filter:saturate(.82) contrast(1.03);height:auto;mix-blend-mode:screen;width:100%}@media(max-width:800px){.process-sketch{margin-top:30px}}
.trust-note{border-left:2px solid var(--ink);font-size:14px;line-height:1.55;margin-top:22px;padding-left:16px}.trust-note strong{display:block;font-size:16px;margin-bottom:4px}
.solution-card:before{background:linear-gradient(135deg,rgba(22,26,24,.04),rgba(22,26,24,.48))}
.contact-actions{justify-content:center;margin-bottom:30px}.contact-form{background:#e5e4dd;margin:36px auto 0;max-width:760px;padding:28px;text-align:left}.contact-form>input[name="website"]{height:1px;left:-9999px;opacity:0;position:absolute;width:1px}.form-grid{display:grid;gap:16px;grid-template-columns:1fr 1fr}.contact-form label{color:#343735;display:grid;font-size:11px;font-weight:700;gap:7px;letter-spacing:.05em;text-transform:uppercase}.contact-form label span{font-weight:400;letter-spacing:0;text-transform:none}.contact-form input,.contact-form select,.contact-form textarea{background:var(--white);border:1px solid #c4c5bd;border-radius:0;color:var(--ink);font:inherit;font-size:14px;font-weight:400;letter-spacing:0;padding:12px;text-transform:none;width:100%}.contact-form textarea{resize:vertical}.contact-form .form-message{grid-column:1/-1}.contact-form button{border:0;cursor:pointer;margin-top:20px}.contact-form button:hover{background:#ff7748}@media(max-width:600px){.contact-form{padding:20px}.form-grid{grid-template-columns:1fr}.contact-form .form-message{grid-column:auto}}
.process-list>div{grid-template-columns:1fr 1fr}.process-list .process-call{grid-column:1/-1;justify-self:start}
.about-number{display:none}.about{grid-template-columns:1fr}.about>div:last-child{max-width:620px}body:has(.original-hero) .phone-link{min-width:150px;white-space:nowrap}
.hero-copy .eyebrow{font-size:14px}
/* Taller category imagery for clearer service previews. */
.solution-card{background-size:100% 210px;padding-top:235px}
.solution-card:before{background:linear-gradient(180deg,rgba(23,25,24,.08) 0 210px,transparent 210px)}
@media(max-width:800px){.solution-card{background-size:100% 185px;padding-top:210px}}
@media(max-width:500px){.solution-card{background-size:100% 185px;padding-top:210px}}

/* Subtle keyline keeps the dark logo corners visible against the header. */
.brand-logo{filter:drop-shadow(0 0 1px rgba(255,255,255,.95))}
.brand-logo{max-height:84px;max-width:205px}
.brand:has(.brand-mark){height:84px;width:205px}
.brand:has(.brand-mark)::after{height:84px;width:205px;filter:drop-shadow(0 0 1px rgba(255,255,255,.95))}
.site-header .brand-logo{margin-left:26px}
.brand:has(.brand-mark)::after{background-position:left center}
.site-header .brand{display:block;flex:0 0 205px;height:84px;width:205px}
.site-header .brand-logo{display:none;margin-left:0}
.site-header .brand::after{background:url('/assets/1st-choice-garage-logo-transparent.png') left center/contain no-repeat;content:'';display:block;height:84px;width:205px;filter:drop-shadow(0 0 1px rgba(255,255,255,.95))}
.service-hero,.service-content,.service-cta,.service-gallery,.testimonial-grid,.testimonial-intro,.testimonial-trust{padding-left:5vw!important;padding-right:5vw!important}
a[href$="services/heaters/"],a[href$="../heaters/"],a[href$="heaters/"],option[value="Heaters"]{display:none!important}
