/* Practical local-service improvements, within the restored first design. */
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}.hero-copy,.hero-visual{min-width:0}.hero-visual{width:100%}
.js-motion .service-card.reveal.is-visible:hover{transform:translateY(-5px)}
:root{--navy:#102f40;--teal:#52dcc0;--teal-dark:#087e6b}
.button-purple{background:var(--teal);color:var(--navy)}.button-purple:hover{background:#7ce5cd}.button-outline{border-color:#a8c0c6;background:transparent;color:var(--ink)}.button-outline:hover{background:#e7f4f1}.site-header{background:#f7fafbf7}.desktop-nav{gap:19px;margin-inline-start:15px;margin-inline-end:0}.header-actions{gap:17px}.languages{display:flex;align-items:center;gap:10px;font-size:10px;white-space:nowrap}.languages a{padding-block:6px;color:var(--muted);border-bottom:2px solid transparent}.languages a[aria-current]{color:var(--purple);border-color:var(--purple);font-weight:700}.phone-link{font-size:12px}.hero h1 .serif-word{font-size:.8em;letter-spacing:-2px}.hero-buttons{gap:13px;flex-wrap:wrap}.hero-buttons .button{gap:12px}.hero-buttons .button .icon{width:19px;height:19px}.hero-facts{margin-top:23px;max-width:520px}.hero-facts>span{display:flex;align-items:center;gap:7px;font-size:9px;color:var(--muted);line-height:1.8;flex-wrap:wrap}.hero-facts>span .icon{height:14px;width:14px}.hero-facts>div{display:flex;flex-wrap:wrap;gap:12px 25px;margin-top:8px}.hero-facts .text-link{font-size:10px;gap:8px}.hero-facts .text-link .icon{width:15px;height:15px}.visual-label,.visual-bottom{color:#28574f}.guarantee-symbol{background:#d7f0e8}.floating-guarantee{background:#fffffff0}.service-card{scroll-margin-top:130px}.service-card>p.service-send{font-size:10px;min-height:0;margin:0 0 19px;line-height:1.75;color:var(--muted)}.service-send strong{display:block;font-size:9px;font-weight:700;color:var(--ink);margin-bottom:4px}.service-card .price-on-request{font-size:21px;letter-spacing:-.4px}.service-card .service-note{margin-top:5px;min-height:38px}.service-card .price-list{min-height:140px}.section-heading>p{max-width:350px}.reviews-section{border-top:1px solid var(--line);overflow-x:clip;overflow-clip-margin:20px;padding-block:70px}.reviews-widget{width:100%;min-height:330px}.provider-note{font-size:9px;color:var(--muted);margin:20px 0 0}.reviews-profile{white-space:nowrap}.issue-panel[hidden]{display:none}.issue-tabs button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:white}.issue-panel p{color:var(--muted)}.issue-section{margin-top:30px}.project-carousel .gallery-toolbar{margin-bottom:23px}.work-filters{display:flex;flex-wrap:wrap;gap:8px}.work-filters button{font-size:10px;border:1px solid var(--line);border-radius:24px;padding:9px 16px;background:transparent;color:var(--muted)}.work-filters button[aria-pressed="true"]{background:var(--ink);color:white;border-color:var(--ink)}.gallery-ready .gallery-viewport{overflow:hidden;touch-action:pan-y;cursor:grab}.gallery-ready .gallery-viewport:active{cursor:grabbing}.gallery-ready .gallery-track{will-change:transform;backface-visibility:hidden;contain:layout style;user-select:none}.gallery-ready .project-image{touch-action:pan-y}.gallery-ready .project-image img{-webkit-user-drag:none}.gallery-ready .project-image:hover img{transform:none}.carousel-controls[hidden]{display:none}.carousel-controls button:disabled{opacity:.5;cursor:default}.video-frame>video{display:none;background:var(--ink)}.video-frame.is-playing>video{display:block}.video-frame.is-playing .video-play,.video-frame.is-playing .video-backdrop{display:none}.video-options button[aria-pressed="true"]{background:var(--soft);border-color:#86bcb0;color:var(--purple)}.video-choices button{font-size:10px}.area-section{padding-bottom:25px}.area-card{display:grid;grid-template-columns:1.3fr 1fr;gap:65px;background:var(--soft);border-radius:var(--radius);padding:38px 42px}.area-card>div>.icon{color:var(--purple);margin-bottom:16px;width:27px;height:27px}.area-card h3{font-size:22px;margin:0 0 16px;letter-spacing:-.5px}.area-card p{font-size:12px;line-height:1.85;color:var(--muted);margin:0 0 12px}.area-card button{background:none;border:0;padding:6px 0;color:var(--purple)}.area-hours{border-inline-start:1px solid #bcd9d3;padding-inline-start:38px;align-self:center}.area-hours h3{font-size:19px}.area-hours p{padding-bottom:10px;border-bottom:1px solid #c7dfd9;font-size:12px}.area-hours small{display:block;font-size:10px;color:var(--muted);margin-top:17px;line-height:1.7}.contact-form label small{font-size:9px;color:#75848b;margin-inline-start:6px}.contact-form input[aria-invalid="true"],.contact-form textarea[aria-invalid="true"]{border-color:#bf4e4e}.contact-form #prepared-message{width:100%;margin-top:12px}.contact-form #prepared-message[hidden]{display:none}.contact-form .form-status:empty{display:none}.contact-form .form-status{font-size:12px;line-height:1.7}.contact-form .service-options input{accent-color:var(--purple)}.footer .motion-toggle{font-size:10px;color:var(--muted);background:none;border:0;text-decoration:underline;text-underline-offset:4px}.mobile-contact{display:none}bdi{unicode-bidi:isolate}.js-motion .reveal{opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s}.js-motion .reveal.is-visible{opacity:1;transform:none}.motion-reduced,.motion-reduced *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.motion-reduced .reveal{opacity:1!important;transform:none!important}
[dir="rtl"] body{font-family:Rubik,Arial,sans-serif}[dir="rtl"] .serif-word{font-family:Rubik,Arial,sans-serif;font-style:normal;font-weight:450;letter-spacing:-1px}[dir="rtl"] .eyebrow{letter-spacing:.7px}[dir="rtl"] .desktop-nav{font-size:13px;margin-inline-start:15px}[dir="rtl"] .service-action{text-align:start}[dir="rtl"] .hero h1{letter-spacing:-1.8px}[dir="rtl"] .icon:has(use[href="#i-arrow"]){transform:scaleX(-1)}[dir="rtl"] .carousel-controls [data-prev],[dir="rtl"] .carousel-controls [data-next]{transform:scaleX(-1)}[dir="rtl"] .floating-guarantee{left:auto;right:29px}[dir="rtl"] .visual-label{left:auto;right:28px}[dir="rtl"] .visual-bottom{direction:rtl}[dir="rtl"] .trust-strip>div{padding-left:0;border-left:0;padding-inline-start:25px;border-inline-start:1px solid var(--line)}[dir="rtl"] .trust-strip>div:first-child{padding:0;border:0}[dir="rtl"] .hero .small-dot{margin:0 0 1px 8px}[dir="rtl"] .video-launch{text-align:start}[dir="rtl"] .service-card>p.service-send{font-size:12px}[dir="rtl"] .service-send strong{font-size:11px}[dir="rtl"] .service-note{font-size:12px}[dir="rtl"] .issue-panel p{font-size:13px}[dir="rtl"] .area-card p{font-size:14px}[dir="rtl"] .area-hours small{font-size:12px}[dir="rtl"] .project-meta span{letter-spacing:0}[dir="rtl"] .contact-facts p{font-size:13px}[dir="rtl"] .footer .back-top{margin-left:0;margin-inline-start:auto}
@media(max-width:1180px){.desktop-nav{display:none}.menu-toggle{display:block}.header-actions{gap:22px}.header-inner{min-height:94px}.hero-buttons .button{font-size:12px;padding-inline:17px}.hero-facts>span{font-size:9px}}
@media(max-width:900px){.languages{font-size:10px;gap:9px}.hero h1{font-size:56px}.hero h1 .serif-word{font-size:.76em}.hero-buttons{gap:10px}.hero-buttons .button{font-size:11px;gap:8px;padding-inline:13px}.hero-buttons .button>.icon:has(use[href="#i-arrow"]){display:none}.hero-facts .text-link{font-size:9px}.service-card>p.service-send{font-size:10px}.service-card .price-on-request{font-size:17px}.area-card{gap:35px;padding:30px}.area-hours{padding-inline-start:27px}.footer .motion-toggle{font-size:9px}}
@media(max-width:640px){.header-inner{min-height:83px;gap:15px}.header-actions{gap:8px}.languages{font-size:9px;gap:9px}.hero h1{font-size:51px;line-height:1.04;letter-spacing:-2.5px}.hero h1 .serif-word{font-size:.77em;letter-spacing:-1.3px}.hero-buttons{display:grid;grid-template-columns:1.3fr 1fr;gap:10px;width:100%}.hero-buttons .button{font-size:11px;padding:12px 10px;min-height:49px;gap:8px}.hero-buttons .button>.icon:has(use[href="#i-arrow"]){display:none}.hero-facts{margin-top:21px}.hero-facts>span{font-size:8px;gap:5px}.hero-facts>div{gap:9px 22px;margin-top:6px}.hero-facts .text-link{font-size:10px}.hero-visual{min-height:360px}.service-card>p.service-send{font-size:11px;margin-bottom:17px;min-height:0}.service-card .price-on-request{font-size:20px}.service-card .price-list{min-height:0}.service-card .service-note{min-height:0;margin:13px 0 17px}.section-heading>p{max-width:none}.reviews-section{padding-block:55px}.reviews-section .section-heading{display:block}.reviews-profile{margin-top:18px;font-size:12px}.reviews-widget{min-height:350px}.provider-note{font-size:8px}.issue-section{margin-top:15px}.issue-tabs button{font-size:10px}.issue-panel p{font-size:11px}.work-filters{gap:6px}.work-filters button{font-size:9px;padding:8px 11px}.project-carousel .gallery-toolbar{margin-bottom:19px}.video-options button{font-size:9px}.area-card{grid-template-columns:1fr;gap:26px;padding:28px 25px}.area-card h3{font-size:24px}.area-card p{font-size:12px}.area-hours{border-inline-start:0;border-top:1px solid #bcd9d3;padding:25px 0 0}.area-hours h3{font-size:21px}.contact-form label small{font-size:8px;display:block;margin:2px 0 0}.contact-form .form-status{font-size:11px}.footer .motion-toggle{order:5;padding:0}.footer .back-top{margin-inline-start:auto}.mobile-contact{position:fixed;bottom:15px;left:20px;right:20px;display:grid;grid-template-columns:.9fr 1.1fr;gap:9px;z-index:30;background:transparent;padding:0;box-shadow:none;border-radius:0;min-height:0}.mobile-contact a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px;border-radius:11px;border:1px solid #a9c3c8;background:var(--paper);color:var(--ink);box-shadow:0 5px 20px #102f4015;font-size:11px}.mobile-contact a:last-child{background:var(--teal);border-color:var(--teal);color:var(--navy)}.mobile-contact .icon{margin:0;width:18px;height:18px}.mobile-contact a .icon:has(use[href="#i-arrow"]){display:none}[dir="rtl"] .floating-guarantee{right:23px}[dir="rtl"] .visual-label{right:23px}[dir="rtl"] .trust-strip>div{padding-inline-start:0;border:0}[dir="rtl"] .hero h1{font-size:61px;letter-spacing:-1.6px}[dir="rtl"] .hero h1 .serif-word{font-size:.84em}[dir="rtl"] .hero-description{font-size:15px}[dir="rtl"] .service-card>p.service-send{font-size:13px}[dir="rtl"] .issue-panel p{font-size:13px}[dir="rtl"] .contact-facts p{font-size:12px}}
@media(max-width:360px){.languages{font-size:8px;gap:7px}.header-actions{gap:3px}.hero h1{font-size:45px}.hero h1 .serif-word{font-size:.76em}.hero-buttons .button{font-size:10px;padding:12px 8px;gap:6px}.hero-buttons .button .icon{width:16px;height:16px}.hero-facts>span{font-size:7px}.hero-facts .text-link{font-size:9px}.hero-visual{min-height:320px}.floating-guarantee{padding:13px}.visual-bottom{font-size:8px}.form-row{grid-template-columns:1fr}.contact-form{padding:26px 21px}.carousel-footer{gap:9px}.carousel-footer>p{max-width:112px}.carousel-pause{padding-inline:10px}[dir="rtl"] .hero h1{font-size:57px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js-motion .reveal{opacity:1;transform:none}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:640px){.hero{grid-template-columns:minmax(0,1fr)}.hero-visual{aspect-ratio:auto}.languages{font-size:10px}}
@media(max-width:360px){.header-actions .phone-link{display:none}.languages{font-size:10px;gap:10px}.header-actions{gap:15px}}


/* Gallery captions name the work; extra explanatory copy is omitted. */
.carousel-footer{justify-content:flex-end}.carousel-track .project-meta{min-height:92px}.carousel-track .project-meta h3{margin-top:0}

.project-image img[src$="project-replacement.png"],.project-image img[src$="project-added.png"]{object-fit:contain!important}

.project-card:has(img[src*='project-replacement']),.project-card:has(img[src*='project-added']){width:var(--slide-width)!important;flex-basis:var(--slide-width)!important}.project-image img[src*='project-replacement'],.project-image img[src*='project-added']{object-fit:cover!important;object-position:center top!important}
.gallery-track .project-card,.gallery-track .project-card.is-wide{width:clamp(360px,40vw,520px)!important;flex:0 0 clamp(360px,40vw,520px)!important}.gallery-track .project-image,.gallery-track .project-visual{width:100%;height:auto!important;aspect-ratio:3/4!important}.gallery-track .project-image img{width:100%;height:100%;object-fit:cover!important;object-position:center top!important}@media(max-width:640px){.gallery-track .project-card,.gallery-track .project-card.is-wide{width:84vw!important;flex-basis:84vw!important}}
.form-submit:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}
