/* Restrained graphite theme. Layout and interaction hooks remain in the base files. */
:root{--ink:#202226;--muted:#606368;--surface:#f1f0ec;--line:#d4d4d0;--graphite:#191b1e;--dark-line:#3b3e43;--light-text:#f3f2ee;--dark-muted:#bfc1c5}
body{background:var(--graphite);color:var(--light-text)}
h1{font-size:clamp(3rem,5.3vw,4.7rem);line-height:1.01;letter-spacing:-.06em}
h2{font-size:clamp(2.4rem,4.3vw,3.7rem);line-height:1.06;letter-spacing:-.055em}
.section{padding-block:94px}
.section-heading{max-width:780px;margin-bottom:42px}
.section-heading p{color:var(--dark-muted);font-size:1.0625rem}
.section-kicker,.hero-eyebrow{color:#c5c7ca;letter-spacing:.16em}
.hero-eyebrow:before,.section-heading:after{display:none}
.button{border-radius:2px;box-shadow:none;transition:background .15s,color .15s,border-color .15s}
.button:hover{transform:none}
.button-solid{background:var(--light-text);color:var(--ink)}
.button-solid:hover{background:#d9dbdd}
.button-outline{color:var(--light-text);border-color:#777b81;background:transparent}
.button-outline:hover{background:#303338}
:focus-visible{outline:3px solid #ef9f73;outline-offset:4px}
.availability-banner{background:#25272b;color:#d4d6d8;border-bottom:1px solid var(--dark-line);font-size:.75rem;padding-block:11px}
.site-header{background:var(--graphite);color:var(--light-text);border-color:var(--dark-line)}
.header-inner{min-height:100px}
.brand-mark-new{color:var(--light-text)}
.brand small,.footer-brand small{color:#bfc1c5}
.desktop-nav{color:#d4d6d8;font-weight:400}
.desktop-nav a:hover{border-color:#d4d6d8}
.hero{background:var(--graphite);padding-block:72px 88px}
.hero-grid{gap:64px}
.proof-row{color:#c9cbd0;margin-top:28px}
.proof-row i{color:#c9cbd0}
.hero .button-outline{border-color:#777b81}
.hero .button-outline:hover{background:#303338}
.technician-photo,.repair-story-photo{border-radius:2px;background:#25272b}
.technician-photo figcaption{color:#c4c6ca;background:#25272b}
.availability-card{background:var(--surface);border:1px solid #dadad6;border-radius:3px;box-shadow:none;padding:38px;color:var(--ink)}
.form-kicker{color:#606368}
.form-heading h2{font-size:clamp(1.9rem,2.6vw,2.4rem);max-width:none}
.service-form input,.service-form select{border-radius:2px;border-color:#b4b6b8}
.availability-card .button-solid,.picker-problems .button-solid{background:var(--ink);color:#fff}
.availability-card .button-solid:hover,.picker-problems .button-solid:hover{background:#3a3d42}
.repair-picker{background:#202226;border-block:1px solid var(--dark-line)}
.repair-picker #appliances{background:transparent;color:var(--light-text)}
.picker-heading>span{border-radius:0;background:transparent;color:#bfc1c5;border:1px solid #6d7177;font-weight:400}
.picker-heading h3{font-size:1.25rem}
.repair-picker .appliance-card{background:var(--surface);color:var(--ink);border-color:var(--line);border-radius:2px}
.repair-picker .appliance-card:hover{background:#fff;border-color:#999da3}
.repair-picker .appliance-card.is-active{background:#fff;border-color:#b76638}
.appliance-icon,.appliance-card.is-active .appliance-icon{background:transparent;border-radius:0}
.repair-picker #problems{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:3px;padding:28px}
.picker-problems .picker-heading>span{color:#606368;border-color:#a7aaae}
.problem-grid button{border-radius:2px;border-color:#c5c7c9;color:var(--ink)}
.problem-grid i{color:#555b63}
.problem-grid button:hover{border-color:#787e85}
.problem-grid button.is-active{background:#e5e5e1;border-color:#777b81;box-shadow:inset 3px 0 #555b63}
.picker-problems .button-outline{color:var(--ink);border-color:#969ba0}
.picker-problems .button-outline:hover{background:#e1e2df}
.repair-benefits{background:var(--graphite);padding-block:100px}
.repair-story-intro,.repair-story-points p{color:var(--dark-muted)}
.repair-story-points article{border-color:var(--dark-line);padding-block:23px}
.repair-story-points article>span{color:#bfc1c5}
.repair-story-points h3{font-size:1.25rem}
.repair-story-photo:after{background:linear-gradient(transparent,#151719e6)}
#how-it-works{background:#202226;border-block:1px solid var(--dark-line)}
.steps-grid{gap:18px}
.steps-grid article{background:var(--surface);color:var(--ink);border:0;border-radius:2px;padding:30px}
.step-head{margin-bottom:32px}
.step-icon{background:transparent;border-radius:0;width:32px;height:32px}
.step-number{color:#666b71;font-size:3.3rem;font-weight:400}
.step-label,.steps-grid p,.steps-grid ul{color:#606368}
.steps-grid h3{font-size:1.65rem}
.step-link{border-color:#a4a7ab}
.brands-section{background:var(--graphite);padding-block:72px}
.brands-section .section-heading h2{font-size:2rem}
.brand-grid{border-radius:2px;background:#d4d4d0;border-color:#d4d4d0}
.brand-card{background:#f6f5f2;color:var(--ink)}
.brand-more-icon{color:#606368}
.testimonials-section{background:var(--graphite);border-top:1px solid var(--dark-line)}
.testimonials-section .section-kicker{color:#c5c7ca}
.testimonials-section .testimonials-disclosure{color:var(--dark-muted)}
.testimonials-grid{gap:18px}
.testimonial-card{background:var(--surface);color:var(--ink);border:0;border-radius:2px;padding:32px}
.testimonial-type{color:#606368;letter-spacing:.12em}
.testimonial-card blockquote{font-size:1.1875rem;line-height:1.7}
.testimonial-card figcaption{color:#606368;border-color:#c8cbcd}
.faq-section{background:#202226;border-color:var(--dark-line)}
.faq-list{background:var(--surface);color:var(--ink);border:0;border-radius:2px;padding:4px 30px}
.faq-list details{border-color:#c8cbcd}
.faq-list details:last-child{border:0}
.faq-list summary:after{color:#606368}
.final-cta{background:var(--graphite);padding-block:94px;border-bottom:1px solid var(--dark-line)}
.final-cta h2{font-size:clamp(2.6rem,4.4vw,3.7rem)}
.final-cta p{color:var(--dark-muted)}
.final-cta .button-solid{background:var(--light-text);color:var(--ink)}
.final-cta .button-solid:hover{background:#d9dbdd}
.final-cta .button-outline:hover{background:#303338}
.site-footer{background:#141619}
.footer-disclosure,.footer-trademark,.footer-bottom{border-color:#35383d;color:#bfc1c5}
.footer-brand-block>p,.footer-contact>span{color:#bfc1c5}
.footer-ftc-p{color:#f3f2ee}
.mobile-call-bar{background:#202226;border-color:#4b5057;box-shadow:none}
@media(min-width:1500px){.hero-grid{gap:90px}}
@media(max-width:1150px){.hero-grid{gap:38px}.availability-card{padding:28px}.steps-grid article{padding:25px}.steps-grid h3{font-size:1.4rem}}
@media(max-width:900px){h1{font-size:3.1rem}.hero-grid{gap:28px}.section,.repair-benefits{padding-block:68px}.steps-grid{grid-template-columns:1fr}.steps-grid article{padding:30px}.steps-grid h3{max-width:none;font-size:1.7rem}.step-head{margin-bottom:20px}.final-cta{padding-block:68px}}
@media(max-width:640px){h1{font-size:clamp(2.65rem,10vw,3.7rem)}h2{font-size:clamp(2.15rem,8vw,2.8rem)}.hero{padding-block:38px 50px}.header-inner{min-height:80px}.availability-banner{font-size:.6875rem}.hero-grid{gap:30px}.availability-card{padding:26px 22px}.form-heading h2{font-size:1.9rem}.section,.repair-benefits{padding-block:52px}.repair-picker #problems{padding:22px 16px}.section-heading{margin-bottom:30px}.steps-grid article{padding:26px}.testimonial-card{padding:26px}.testimonial-card blockquote{font-size:1.0625rem}.faq-list{padding-inline:20px}.final-cta{padding-block:55px}.final-cta h2{font-size:2.45rem}.brands-section .section-heading h2{font-size:1.8rem}}

.brand-mark-new img{display:block;width:100%;height:100%}
.problem-fallback .button-solid .js-phone-display{color:#fff;margin-top:0;font-size:inherit;line-height:inherit;display:inline}
.zip-status .zip-unconfirmed-contact{margin-top:12px;color:var(--ink)}
.zip-unconfirmed-contact a{color:inherit}
.zip-unconfirmed-contact a:hover{text-decoration:underline;text-underline-offset:3px}

/* One icon grid, consistent strokes, fixed sizing at every breakpoint. */
svg.ui-icon{display:block;width:var(--icon-size,24px);height:var(--icon-size,24px);min-width:var(--icon-size,24px);flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.appliance-icon{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center}
.appliance-icon svg.ui-icon{--icon-size:36px}
.problem-grid i{width:24px;min-width:24px;height:24px;flex:0 0 24px;font-style:normal;align-self:center}
.problem-grid svg.ui-icon{--icon-size:24px}
.step-icon{width:32px;height:32px;flex:0 0 32px}
.step-icon svg.ui-icon{--icon-size:28px}
.proof-row i{display:inline-flex;align-items:center;font-style:normal;flex:0 0 16px}
.proof-row svg.ui-icon{--icon-size:16px}
.zip-status-icon svg.ui-icon{--icon-size:18px}
.step-link{align-items:center}
.step-link svg.ui-icon,.footer-bottom svg.ui-icon{--icon-size:16px}
.footer-bottom a{display:inline-flex;align-items:center;gap:8px}
.steps-grid li{padding-left:25px;position:relative}
.steps-grid li:before{content:none}
.steps-grid li>svg.ui-icon{--icon-size:16px;position:absolute;left:0;top:.25em}
.brand-more-icon{display:inline-flex;align-items:center}
.brand-more-icon svg.ui-icon{--icon-size:20px}
.faq-list summary:after{display:none}
.faq-toggle{position:absolute;right:0;top:50%;transform:translateY(-50%);color:#606368}
.faq-toggle svg.ui-icon{--icon-size:20px}
.faq-open,.faq-list details[open] .faq-closed{display:none}
.faq-list details[open] .faq-open{display:block}
@media(max-width:640px){.appliance-icon svg.ui-icon{--icon-size:32px}.problem-grid svg.ui-icon{--icon-size:22px}.problem-grid i{width:22px;min-width:22px;height:22px;flex-basis:22px}.repair-picker .problem-grid i{flex-basis:22px}}
