/*!
 * Clean Home-Service Stylesheet
 *
 * White and light-gray surfaces, near-black text, one brand blue.
 * Calm, trustworthy, Apple-like: generous space, soft shadows.
 *
 * Typography: Apple system font (SF Pro) with Inter fallback
 * Palette: White + #f5f5f7 + brand blue (PRIMARY_COLOR)
 *
 * Token names are historical: "--color-teal*" is the brand accent,
 * "--color-white" is strong text, "--color-black" is text on accent.
 */
:root{--color-primary:#0071E3;--color-secondary:#F5F5F7;--color-accent:#0071E3;--color-black:#ffffff;--color-void:#ffffff;--color-surface-0:#ffffff;--color-surface-1:#f5f5f7;--color-surface-2:#ffffff;--color-surface-3:#f5f5f7;--color-surface-4:#e5e5ea;--color-teal:var(--color-primary);--color-teal-bright:color-mix(in srgb,var(--color-primary) 85%,white);--color-teal-dim:color-mix(in srgb,var(--color-primary) 85%,black);--color-teal-glow:color-mix(in srgb,var(--color-primary) 15%,transparent);--color-teal-ghost:color-mix(in srgb,var(--color-primary) 6%,transparent);--color-white:#1d1d1f;--color-gray-100:#1d1d1f;--color-gray-200:#333336;--color-gray-300:#424245;--color-gray-400:#6e6e73;--color-gray-500:#86868b;--color-gray-600:#a1a1a6;--color-gray-700:#d2d2d7;--color-success:#22c55e;--color-warning:#f59e0b;--color-error:#ef4444;--font-display:-apple-system,BlinkMacSystemFont,'SF Pro Display','Inter','Helvetica Neue',Helvetica,Arial,sans-serif;--font-body:-apple-system,BlinkMacSystemFont,'SF Pro Text','Inter','Helvetica Neue',Helvetica,Arial,sans-serif;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.75rem;--text-5xl:3.75rem;--text-6xl:5rem;--text-hero:clamp(3rem,8vw,6.5rem);--weight-light:300;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:600;--weight-extrabold:600;--weight-black:700;--leading-tight:1.05;--leading-snug:1.2;--leading-normal:1.5;--leading-relaxed:1.7;--tracking-tight:-0.022em;--tracking-normal:-0.01em;--tracking-wide:0.04em;--tracking-wider:0.08em;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.25rem;--radius-full:9999px;--shadow-sm:0 1px 3px rgba(0,0,0,0.06);--shadow-md:0 4px 16px rgba(0,0,0,0.08);--shadow-lg:0 12px 40px rgba(0,0,0,0.10);--shadow-teal:0 8px 24px var(--color-teal-glow);--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--duration-fast:150ms;--duration-normal:300ms;--duration-slow:500ms;--container-max:1200px;--container-narrow:720px;--container-padding:clamp(1.25rem,4vw,2rem);--header-height:4.5rem;--z-sticky:200;--z-modal:500;}*,*::before,*::after{box-sizing:border-box;}*{margin:0;padding:0;}html{scroll-behavior:smooth;}body{font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-normal);line-height:var(--leading-normal);color:var(--color-gray-300);background-color:var(--color-surface-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;display:flex;flex-direction:column;}body.nav-open{overflow:hidden;}#main-content{flex:1;}img,picture,video,svg{display:block;max-width:100%;height:auto;}input,button,textarea,select{font:inherit;}a{color:var(--color-teal);text-decoration:none;transition:color var(--duration-fast) var(--ease-out);}a:hover{color:var(--color-teal-bright);}ul,ol{list-style:none;}address{font-style:normal;}::selection{background:var(--color-teal);color:var(--color-black);}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-extrabold);line-height:var(--leading-tight);color:var(--color-white);letter-spacing:var(--tracking-tight);}h1{font-size:var(--text-hero);margin-bottom:var(--space-6);font-weight:var(--weight-black);}h2{font-size:clamp(var(--text-3xl),4.5vw,var(--text-5xl));margin-bottom:var(--space-4);}h2 em{font-style:normal;color:var(--color-teal);}h3{font-size:var(--text-xl);margin-bottom:var(--space-3);}h4{font-size:var(--text-lg);margin-bottom:var(--space-2);}p{margin-bottom:var(--space-4);color:var(--color-gray-400);line-height:var(--leading-relaxed);}p:last-child{margin-bottom:0;}strong{font-weight:var(--weight-semibold);color:var(--color-gray-200);}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding);}.content-narrow{max-width:var(--container-narrow);margin:0 auto;}.section{padding:var(--space-20) 0;}@media (min-width:768px){.section{padding:var(--space-24) 0;}}.section-header{text-align:center;margin-bottom:var(--space-12);}.section-intro{font-size:var(--text-lg);color:var(--color-gray-500);max-width:550px;margin:0 auto var(--space-8);}.section-cta{margin-top:var(--space-10);text-align:center;}.section-tag{display:inline-block;font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-teal);margin-bottom:var(--space-3);padding:var(--space-1) var(--space-3);border:1px solid var(--color-teal-glow);border-radius:var(--radius-full);background:var(--color-teal-ghost);}.bg-light{background-color:var(--color-surface-1);}.grid{display:grid;gap:var(--space-6);}.grid-cols-2{grid-template-columns:repeat(2,1fr);}.grid-cols-3{grid-template-columns:repeat(3,1fr);}.grid-cols-4{grid-template-columns:repeat(4,1fr);}@media (max-width:640px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr;}}@media (min-width:641px) and (max-width:1024px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr);}}.flex{display:flex;}.flex-col{flex-direction:column;}.items-center{align-items:center;}.justify-center{justify-content:center;}.justify-between{justify-content:space-between;}.gap-2{gap:var(--space-2);}.gap-4{gap:var(--space-4);}.gap-6{gap:var(--space-6);}.gap-8{gap:var(--space-8);}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-decoration:none;letter-spacing:var(--tracking-wide);border:1.5px solid transparent;border-radius:var(--radius-full);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);white-space:nowrap;position:relative;overflow:hidden;}.btn:hover{text-decoration:none;}.btn:active{transform:scale(0.97);}.btn:focus{outline:none;box-shadow:0 0 0 2px var(--color-teal-glow);}.btn-primary{background:var(--color-teal);color:var(--color-black);border-color:var(--color-teal);}.btn-primary:hover{background:var(--color-teal-bright);border-color:var(--color-teal-bright);box-shadow:var(--shadow-teal);color:var(--color-black);}.btn-secondary{background:transparent;color:var(--color-white);border-color:var(--color-gray-600);}.btn-secondary:hover{border-color:var(--color-teal);color:var(--color-teal);}.btn-ghost{background:transparent;color:var(--color-gray-400);border-color:transparent;padding-left:0;}.btn-ghost:hover{color:var(--color-teal);}.btn-outline{background:transparent;color:var(--color-teal);border-color:var(--color-teal);}.btn-outline:hover{background:var(--color-teal);color:var(--color-black);}.btn-nav{padding:var(--space-2) var(--space-5);font-size:var(--text-xs);background:var(--color-teal);color:var(--color-black);font-weight:var(--weight-bold);}.btn-nav:hover{background:var(--color-teal-bright);box-shadow:var(--shadow-teal);color:var(--color-black);}.btn-large,.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base);}.btn-full{width:100%;}.btn svg{transition:transform var(--duration-normal) var(--ease-out);}.btn:hover svg{transform:translateX(3px);}.card{background:var(--color-surface-2);border-radius:var(--radius-xl);border:1px solid var(--color-surface-4);overflow:hidden;transition:all var(--duration-normal) var(--ease-out);}.card:hover{border-color:var(--color-teal-dim);box-shadow:var(--shadow-lg);transform:translateY(-2px);}.card-body{padding:var(--space-6);}.card-title{font-size:var(--text-xl);margin-bottom:var(--space-2);color:var(--color-white);}.card-text{color:var(--color-gray-400);}.site-header{position:sticky;top:0;z-index:var(--z-sticky);background:rgba(255,255,255,0.8);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--color-surface-3);}.site-header.is-scrolled{background:rgba(255,255,255,0.95);border-bottom-color:var(--color-surface-4);}.site-header .container{display:flex;align-items:center;justify-content:space-between;height:var(--header-height);}.main-nav{display:flex;align-items:center;justify-content:space-between;width:100%;}.logo{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-extrabold);color:var(--color-white);text-decoration:none;letter-spacing:var(--tracking-tight);}.logo:hover{color:var(--color-teal);}.nav-menu{display:flex;align-items:center;gap:var(--space-1);}.nav-menu li{list-style:none;}.nav-menu a{display:block;padding:var(--space-2) var(--space-3);color:var(--color-gray-400);font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);border-radius:var(--radius-md);transition:all var(--duration-fast) var(--ease-out);}.nav-menu a:hover{color:var(--color-teal);background:var(--color-teal-ghost);}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:var(--space-2);background:none;border:none;cursor:pointer;border-radius:var(--radius-md);}.nav-toggle:hover{background:var(--color-surface-3);}.nav-toggle-icon,.nav-toggle-icon::before,.nav-toggle-icon::after{display:block;width:20px;height:2px;background:var(--color-teal);border-radius:var(--radius-full);transition:all var(--duration-normal) var(--ease-out);}.nav-toggle-icon{position:relative;}.nav-toggle-icon::before,.nav-toggle-icon::after{content:'';position:absolute;left:0;}.nav-toggle-icon::before{top:-6px;}.nav-toggle-icon::after{top:6px;}.nav-toggle[aria-expanded="true"] .nav-toggle-icon{background:transparent;}.nav-toggle[aria-expanded="true"] .nav-toggle-icon::before{top:0;transform:rotate(45deg);}.nav-toggle[aria-expanded="true"] .nav-toggle-icon::after{top:0;transform:rotate(-45deg);}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}@media (max-width:768px){.nav-toggle{display:flex;}.nav-menu{display:none;position:absolute;top:var(--header-height);left:0;right:0;flex-direction:column;padding:var(--space-4);background:var(--color-surface-1);border-bottom:1px solid var(--color-teal-dim);box-shadow:var(--shadow-lg);}.nav-menu.is-open{display:flex;}.nav-menu a{padding:var(--space-3) var(--space-4);font-size:var(--text-base);}.nav-menu .btn-nav{text-align:center;margin-top:var(--space-2);}}.nav-menu a.btn-nav{color:var(--color-black);background:var(--color-teal);}.nav-menu a.btn-nav:hover{color:var(--color-black);background:var(--color-teal-dim);}.site-footer{background:var(--color-void);color:var(--color-gray-500);padding:var(--space-16) 0 var(--space-8);margin-top:auto;border-top:1px solid var(--color-surface-3);}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:var(--space-8);}@media (max-width:768px){.footer-grid{grid-template-columns:1fr;gap:var(--space-6);}}.footer-section h3,.footer-section h4{color:var(--color-white);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wider);margin-bottom:var(--space-4);}.footer-section p{color:var(--color-gray-500);font-size:var(--text-sm);margin-bottom:var(--space-4);}.footer-section address{color:var(--color-gray-500);font-size:var(--text-sm);line-height:var(--leading-relaxed);}.footer-section ul li{margin-bottom:var(--space-2);}.footer-section a{color:var(--color-gray-500);font-size:var(--text-sm);}.footer-section a:hover{color:var(--color-teal);}.footer-social{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4);}.footer-section .footer-social li{margin-bottom:0;}.footer-section a.footer-social-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:2.5rem;padding:var(--space-1) var(--space-3);border:1px solid var(--color-surface-4);border-radius:var(--radius-full);color:var(--color-gray-300);font-size:var(--text-sm);font-weight:var(--weight-medium);transition:border-color var(--duration-fast),color var(--duration-fast),background var(--duration-fast);}.footer-section a.footer-social-link:hover{color:var(--color-teal);border-color:var(--color-teal);background:var(--color-teal-ghost);text-decoration:none;}.footer-section a.footer-social-link:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-teal-glow);}.footer-social-icon{flex-shrink:0;color:var(--color-teal);}.footer-bottom{margin-top:var(--space-10);padding-top:var(--space-6);border-top:1px solid var(--color-surface-3);text-align:center;}.footer-bottom p{color:var(--color-gray-600);font-size:var(--text-sm);margin-bottom:var(--space-1);}.footer-bottom .license{font-size:var(--text-xs);color:var(--color-gray-600);}.hero{background:var(--color-surface-0);color:var(--color-white);min-height:85vh;display:flex;align-items:center;position:relative;overflow:hidden;}.hero::before{content:'';position:absolute;top:-50%;right:-20%;width:800px;height:800px;background:radial-gradient(circle,var(--color-teal-ghost) 0%,transparent 60%);pointer-events:none;}.hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-teal-dim),transparent);}.hero-content{position:relative;z-index:1;padding:var(--space-32) 0 var(--space-20);}.hero-text{max-width:700px;}.hero h1{color:var(--color-white);margin-bottom:var(--space-6);font-weight:var(--weight-black);line-height:0.95;}.hero-subtitle{font-size:var(--text-lg);color:var(--color-gray-200);max-width:480px;margin-bottom:var(--space-8);line-height:var(--leading-relaxed);}.hero-cta{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center;}.hero-video{min-height:90vh;}.hero-bg-video{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:100%;min-height:100%;object-fit:cover;z-index:0;}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,0.94) 0%,rgba(255,255,255,0.85) 45%,rgba(255,255,255,0.35) 100%);z-index:1;}.hero-video .hero-content{z-index:2;}.hero-badge{display:inline-block;padding:var(--space-2) var(--space-5);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-teal);border:1px solid var(--color-teal-glow);border-radius:var(--radius-full);margin-bottom:var(--space-6);background:var(--color-teal-ghost);}@media (max-width:768px){.hero{min-height:70vh;}.hero-content{padding:var(--space-24) 0 var(--space-16);}}.hero:not(.hero-video) .container{position:relative;z-index:1;}.trust-bar{background:var(--color-surface-1);padding:var(--space-5) 0;border-bottom:1px solid var(--color-surface-3);}.trust-items{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:stretch;max-width:52rem;margin:0 auto;}.trust-item{text-align:center;padding:var(--space-1) var(--space-3);min-width:0;}.trust-item+.trust-item{border-left:1px solid var(--color-surface-4);}.trust-number{display:block;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-extrabold);color:var(--color-teal);line-height:1.1;white-space:nowrap;}.trust-label{display:block;font-size:var(--text-xs);color:var(--color-gray-500);text-transform:uppercase;letter-spacing:var(--tracking-wider);margin-top:var(--space-1);}@media (max-width:640px){.trust-bar{padding:var(--space-4) 0;}.trust-items{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr));row-gap:var(--space-4);}.trust-item{padding:0 var(--space-2);}.trust-item:nth-child(3n+1){border-left:0;}.trust-number{font-size:var(--text-xl);}.trust-label{font-size:0.625rem;letter-spacing:0.06em;line-height:1.3;}}.page-header{background:var(--color-surface-0);padding:var(--space-16) 0 var(--space-12);text-align:center;position:relative;}.page-header::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-teal-dim),transparent);}.page-header h1{color:var(--color-white);margin-bottom:var(--space-3);}.page-intro{font-size:var(--text-lg);color:var(--color-gray-400);max-width:550px;margin:0 auto;}.breadcrumbs{background:var(--color-surface-1);border-bottom:1px solid var(--color-surface-3);padding:var(--space-3) 0;font-size:var(--text-sm);color:var(--color-gray-500);}.breadcrumb-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);}.breadcrumb-list li{display:flex;align-items:center;gap:var(--space-1);}.breadcrumb-list li:not(:last-child)::after{content:'/';color:var(--color-gray-600);}.breadcrumbs a{color:var(--color-gray-400);}.breadcrumbs a:hover{color:var(--color-teal);}.breadcrumbs [aria-current="page"]{color:var(--color-gray-500);}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6);}.service-card{background:var(--color-surface-2);border-radius:var(--radius-xl);padding:var(--space-8) var(--space-6);border:1px solid var(--color-surface-4);transition:all var(--duration-normal) var(--ease-out);position:relative;overflow:hidden;}.service-card::before{content:'';position:absolute;top:0;left:0;width:0;height:2px;background:var(--color-teal);transition:width var(--duration-slow) var(--ease-out);}.service-card:hover{border-color:var(--color-teal-dim);transform:translateY(-4px);box-shadow:var(--shadow-lg);}.service-card:hover::before{width:100%;}.service-card h3{margin-bottom:var(--space-2);}.service-card h3 a{color:var(--color-white);}.service-card h3 a:hover{color:var(--color-teal);}.service-card p{color:var(--color-gray-500);font-size:var(--text-sm);margin-bottom:var(--space-4);}.card-arrow{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-full);background:var(--color-surface-4);color:var(--color-teal);transition:all var(--duration-normal) var(--ease-out);}.service-card:hover .card-arrow{background:var(--color-teal);color:var(--color-black);}.service-card-icon{width:56px;height:56px;margin-bottom:var(--space-4);background:var(--color-surface-3);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--color-teal);font-size:var(--text-2xl);}.service-brands{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4);}.brand-tag{display:inline-block;padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-teal);background:var(--color-teal-ghost);border-radius:var(--radius-full);border:1px solid var(--color-teal-glow);transition:all var(--duration-fast);}.brand-tag:hover{background:var(--color-teal-glow);}.services-grid-large{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6);}.service-card-large{display:flex;flex-direction:column;justify-content:space-between;}.service-card-large h2{font-size:var(--text-xl);margin-bottom:var(--space-2);}.service-card-large h2 a{color:var(--color-white);}.service-card-large h2 a:hover{color:var(--color-teal);}.service-card-large h4{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-white);margin:var(--space-3) 0 var(--space-2);}.service-card-content{flex:1;}.service-issues{list-style:none;padding:0;margin:0 0 var(--space-3);}.service-issues li{display:flex;align-items:center;gap:var(--space-2);color:var(--color-gray-400);font-size:var(--text-sm);padding:3px 0;}.service-issues li::before{content:'';flex:none;width:14px;height:14px;background:var(--color-teal);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;}.service-brands-line{font-size:var(--text-xs);color:var(--color-gray-500);letter-spacing:0.01em;margin:var(--space-3) 0 0;}.link-arrow{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-teal);}.link-arrow span{display:inline-block;transition:transform var(--duration-fast) var(--ease-out);}.link-arrow:hover span{transform:translateX(3px);}.service-card-large .service-brands{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-3);}.service-card-large .service-brands strong{color:var(--color-gray-400);font-size:var(--text-sm);}.brand-more{font-size:var(--text-xs);color:var(--color-gray-500);}.service-card-footer{margin-top:var(--space-5);}.section>.container>h2{text-align:center;margin-bottom:var(--space-10);}.expertise-grid,.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-6);}.expertise-item,.trust-grid .trust-item{text-align:center;padding:var(--space-8) var(--space-6);background:var(--color-surface-2);border:1px solid var(--color-surface-4);border-radius:var(--radius-xl);}.expertise-item h3,.trust-grid .trust-item h3{font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--weight-semibold);margin-bottom:var(--space-2);}.expertise-item p,.trust-grid .trust-item p{font-size:var(--text-sm);color:var(--color-gray-500);margin:0;}.values-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4);}.values-list li{padding:var(--space-5) var(--space-6);background:var(--color-surface-2);border:1px solid var(--color-surface-4);border-radius:var(--radius-lg);color:var(--color-gray-400);font-size:var(--text-sm);}.values-list strong{display:block;color:var(--color-white);font-size:var(--text-base);margin-bottom:var(--space-1);}.city-fact{display:inline-flex;align-items:center;gap:6px;}.city-fact .icon{color:var(--color-teal);}.feature-icon .icon,.disclosure-icon .icon{display:block;}.city-card{display:block;background:var(--color-surface-2);border-radius:var(--radius-lg);padding:var(--space-5);border:1px solid var(--color-surface-4);transition:all var(--duration-normal) var(--ease-out);}.city-card:hover{border-color:var(--color-teal-dim);transform:translateY(-2px);text-decoration:none;}.city-card h3{font-size:var(--text-lg);margin-bottom:var(--space-2);}.city-card h3 a{color:var(--color-white);}.city-card h3 a:hover{color:var(--color-teal);}.city-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--text-sm);color:var(--color-gray-500);margin-bottom:var(--space-2);}.city-phone{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-teal);margin-top:var(--space-2);}.city-phone:hover{color:var(--color-teal-bright);}.nearby-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-3);}.nearby-item{display:block;padding:var(--space-3);background:var(--color-surface-2);border:1px solid var(--color-surface-4);border-radius:var(--radius-md);text-align:center;transition:all var(--duration-fast);}.nearby-item:hover{border-color:var(--color-teal-dim);background:var(--color-surface-3);}.nearby-item .city-name{display:block;font-weight:var(--weight-medium);color:var(--color-white);margin-bottom:var(--space-1);}.nearby-item .distance{font-size:var(--text-sm);color:var(--color-gray-500);}.locations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6);}.state-group{background:var(--color-surface-2);border-radius:var(--radius-lg);padding:var(--space-5);border:1px solid var(--color-surface-4);}.state-group h3{font-size:var(--text-lg);padding-bottom:var(--space-3);margin-bottom:var(--space-3);border-bottom:1px solid var(--color-surface-4);}.state-group h3 a{color:var(--color-teal);}.state-group h3 a:hover{color:var(--color-teal-bright);}.city-list{display:flex;flex-direction:column;gap:var(--space-2);}.city-list li a{color:var(--color-gray-400);font-size:var(--text-sm);}.city-list li a:hover{color:var(--color-teal);}.more-link{color:var(--color-teal) !important;font-weight:var(--weight-medium);}.zip-checker{background:var(--color-surface-2);border:1px solid var(--color-surface-4);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-5);text-align:left;}.zc-label{display:block;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-white);margin-bottom:var(--space-3);}.zc-row{display:flex;gap:var(--space-2);}.zc-input{flex:1;min-width:0;font-size:var(--text-lg);letter-spacing:var(--tracking-wide);}.zc-submit{flex:0 0 auto;}.zc-result{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-gray-300);background:var(--color-surface-1);}.zc-result--ok{background:color-mix(in srgb,var(--color-success) 10%,white);border:1px solid color-mix(in srgb,var(--color-success) 35%,white);}.zc-result--no{background:color-mix(in srgb,var(--color-warning) 10%,white);border:1px solid color-mix(in srgb,var(--color-warning) 35%,white);}.zc-result--error{background:color-mix(in srgb,var(--color-error) 8%,white);border:1px solid color-mix(in srgb,var(--color-error) 30%,white);}.zc-msg{margin:0;font-weight:var(--weight-medium);color:var(--color-white);}.zc-msg a{color:var(--color-teal);}.zc-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3);}.zc-actions .btn{flex:1 1 auto;}.sa-home{display:grid;grid-template-columns:1.6fr 1fr;gap:var(--space-6);align-items:start;}.sa-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);}.sa-card{display:flex;flex-direction:column;gap:var(--space-1);background:var(--color-surface-2);border:1px solid var(--color-surface-4);border-radius:var(--radius-xl);padding:var(--space-5);color:var(--color-gray-300);transition:border-color var(--duration-fast),box-shadow var(--duration-fast);}.sa-card:hover{text-decoration:none;border-color:var(--color-teal);box-shadow:var(--shadow-md);}.sa-card-name{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-white);}.sa-card-count{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-teal);}.sa-card-places{font-size:var(--text-sm);color:var(--color-gray-400);line-height:var(--leading-normal);}@media (max-width:960px){.sa-home{grid-template-columns:1fr;}}@media (max-width:640px){.sa-cards{grid-template-columns:1fr;gap:var(--space-3);}.sa-card{padding:var(--space-4);}}.sa-checker{max-width:520px;margin:var(--space-8) auto 0;}.sa-counties{padding-top:var(--space-12);}.sa-county{border:1px solid var(--color-surface-4);border-radius:var(--radius-xl);background:var(--color-surface-2);margin-bottom:var(--space-4);}.sa-county summary{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);cursor:pointer;list-style:none;}.sa-county summary::-webkit-details-marker{display:none;}.sa-county summary::after{content:'+';font-size:var(--text-xl);color:var(--color-teal);line-height:1;}.sa-county[open] summary::after{content:'\2212';}.sa-county-name{font-size:var(--text-xl);margin:0;flex:1;}.sa-county-count{font-size:var(--text-sm);color:var(--color-gray-500);white-space:nowrap;}.sa-places{list-style:none;margin:0;padding:0 var(--space-5) var(--space-5);columns:4 12rem;column-gap:var(--space-6);font-size:var(--text-sm);color:var(--color-gray-300);}.sa-places li{padding:var(--space-1) 0;break-inside:avoid;}.sa-places a{color:var(--color-teal);font-weight:var(--weight-medium);}.sa-note{font-size:var(--text-sm);color:var(--color-gray-500);text-align:center;margin-top:var(--space-6);}.sa-note a{color:var(--color-teal);}@media (max-width:480px){.sa-places{columns:2;}.zc-row{flex-direction:column;}}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-6);}.feature{text-align:center;padding:var(--space-8) var(--space-5);background:var(--color-surface-2);border-radius:var(--radius-xl);border:1px solid var(--color-surface-4);transition:all var(--duration-normal) var(--ease-out);}.feature:hover{border-color:var(--color-teal-dim);transform:translateY(-2px);}.feature-icon{width:52px;height:52px;margin:0 auto var(--space-4);background:var(--color-teal-ghost);border:1px solid var(--color-teal-glow);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--color-teal);}.feature h3{font-size:var(--text-lg);font-family:var(--font-body);font-weight:var(--weight-semibold);margin-bottom:var(--space-2);}.feature p{font-size:var(--text-sm);color:var(--color-gray-500);margin-bottom:0;}.cta-section{background:linear-gradient(135deg,var(--color-teal-dim) 0%,var(--color-teal) 50%,var(--color-teal-bright) 100%);padding:var(--space-16) 0;text-align:center;position:relative;}.cta-section .container{position:relative;}.cta-section h2{color:var(--color-black);}.cta-section h2 em{color:var(--color-black);}.cta-section p{color:rgba(255,255,255,0.85);font-size:var(--text-lg);max-width:550px;margin:0 auto var(--space-6);}.cta-section .btn-primary{background:var(--color-black);color:var(--color-teal);border-color:var(--color-black);}.cta-section .btn-primary:hover{background:var(--color-surface-1);box-shadow:0 8px 30px rgba(0,0,0,0.15);}.cta-section .btn-secondary,.cta-section .btn-large:not(.btn-primary){background:transparent;color:var(--color-black);border-color:rgba(255,255,255,0.5);}.cta-section .btn-secondary:hover,.cta-section .btn-large:not(.btn-primary):hover{border-color:var(--color-black);}.cta-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4);}.faq-section{background:transparent;}.faq-list{max-width:800px;margin:0 auto;}.faq-item{background:var(--color-surface-2);border:1px solid var(--color-surface-4);border-radius:var(--radius-lg);margin-bottom:var(--space-3);overflow:hidden;transition:border-color var(--duration-fast);}.faq-item.is-open{border-color:var(--color-teal-dim);}.faq-question{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--space-4) var(--space-5);background:none;border:none;cursor:pointer;text-align:left;font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-white);transition:color var(--duration-fast);}.faq-question:hover{color:var(--color-teal);}.faq-icon{font-size:var(--text-lg);color:var(--color-teal);transition:transform var(--duration-normal) var(--ease-out);}.faq-item.is-open .faq-icon{transform:rotate(45deg);}.faq-answer{max-height:0;overflow:hidden;transition:max-height var(--duration-slow) var(--ease-out);padding:0 var(--space-5);}.faq-item.is-open .faq-answer{padding-bottom:var(--space-4);}.faq-answer p{color:var(--color-gray-400);}.form-group{margin-bottom:var(--space-4);}.form-label{display:block;font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-gray-300);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:var(--tracking-wider);}.form-input,.form-textarea,.form-select{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--color-white);background:var(--color-surface-2);border:1px solid var(--color-surface-4);border-radius:var(--radius-md);transition:all var(--duration-fast);}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-teal);box-shadow:0 0 0 2px var(--color-teal-glow);}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-gray-600);}.form-textarea{min-height:150px;resize:vertical;}.form-help{font-size:var(--text-sm);color:var(--color-gray-500);margin-top:var(--space-1);}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-12);align-items:start;}@media (max-width:768px){.contact-grid{grid-template-columns:1fr;gap:var(--space-8);}}.contact-details h2,.contact-form-wrapper h2{margin-bottom:var(--space-6);}.contact-item{display:flex;gap:var(--space-4);margin-bottom:var(--space-6);align-items:flex-start;}.contact-icon{flex-shrink:0;width:48px;height:48px;background:var(--color-surface-3);border:1px solid var(--color-surface-4);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--color-teal);}.contact-text h3{font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-gray-500);margin-bottom:var(--space-1);}.contact-text a{color:var(--color-teal);font-weight:var(--weight-medium);font-size:var(--text-lg);}.contact-text a:hover{color:var(--color-teal-bright);}.contact-text p,.contact-text address{color:var(--color-gray-400);font-size:var(--text-base);line-height:var(--leading-relaxed);}.emergency-note{display:flex;gap:var(--space-3);align-items:flex-start;background:var(--color-teal-ghost);border:1px solid var(--color-teal-glow);padding:var(--space-5);border-radius:var(--radius-lg);margin-top:var(--space-4);}.emergency-note svg{flex-shrink:0;color:var(--color-teal);margin-top:2px;}.emergency-note h3{font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-teal);margin-bottom:var(--space-1);}.emergency-note p{color:var(--color-gray-300);font-size:var(--text-sm);margin:0;}.contact-form-wrapper{background:var(--color-surface-2);padding:var(--space-8);border-radius:var(--radius-xl);border:1px solid var(--color-surface-4);}.contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);}@media (max-width:480px){.contact-form .form-row{grid-template-columns:1fr;}}.form-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;}.form-captcha{min-height:65px;}.contact-form .btn:disabled,.contact-form .btn[aria-busy="true"]{opacity:0.6;cursor:not-allowed;transform:none;}.form-consent{font-size:var(--text-sm);color:var(--color-gray-500);margin:var(--space-3) 0 0;text-align:center;}.form-status{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:var(--leading-relaxed);}.form-status--error{color:color-mix(in srgb,var(--color-error) 80%,black);background:color-mix(in srgb,var(--color-error) 8%,white);border:1px solid color-mix(in srgb,var(--color-error) 30%,white);}.form-status a{color:var(--color-teal);font-weight:var(--weight-medium);}.form-success{text-align:center;padding:var(--space-8) var(--space-4);}.form-success:focus{outline:none;}.form-success svg{margin:0 auto var(--space-4);display:block;color:var(--color-teal);}.form-success h3{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-white);margin-bottom:var(--space-3);}.form-success p{color:var(--color-gray-300);margin-bottom:var(--space-6);line-height:1.6;}.form-success-contacts{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap;margin-bottom:var(--space-4);}.btn-text{background:none;border:none;color:var(--color-gray-400);cursor:pointer;font-size:var(--text-sm);text-decoration:underline;text-underline-offset:2px;}.btn-text:hover{color:var(--color-teal);}.form-error{background:rgba(239,68,68,0.1);border:1px solid rgba(239,68,68,0.3);color:var(--color-error);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-4);font-size:var(--text-sm);}.form-error a{color:var(--color-teal);text-decoration:underline;}.content-section{padding:var(--space-12) 0;}.content-section h2{margin-bottom:var(--space-6);}.content-section h3{margin-top:var(--space-6);}.content-section ul,.content-section ol{margin:var(--space-4) 0;padding-left:var(--space-6);}.content-section li{margin-bottom:var(--space-2);color:var(--color-gray-400);}.content-section ul li{list-style:disc;}.content-section ol li{list-style:decimal;}.testimonial{background:var(--color-surface-2);border-radius:var(--radius-xl);padding:var(--space-8);border:1px solid var(--color-surface-4);position:relative;}.testimonial::before{content:'';position:absolute;top:0;left:var(--space-6);right:var(--space-6);height:2px;background:linear-gradient(90deg,var(--color-teal),transparent);border-radius:0 0 2px 2px;}.testimonial-text{font-size:var(--text-lg);color:var(--color-gray-300);line-height:var(--leading-relaxed);margin-bottom:var(--space-4);font-style:italic;}.testimonial-text::before{content:'\201C';color:var(--color-teal);font-size:var(--text-4xl);font-family:var(--font-display);line-height:0;vertical-align:-0.4em;margin-right:var(--space-1);}.testimonial-author{display:flex;align-items:center;gap:var(--space-3);}.testimonial-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-surface-3);display:flex;align-items:center;justify-content:center;color:var(--color-teal);font-weight:var(--weight-bold);}.testimonial-info strong{display:block;color:var(--color-white);}.testimonial-info span{font-size:var(--text-sm);color:var(--color-gray-500);}.animate-on-scroll{opacity:0;transform:translateY(24px);transition:opacity 0.7s var(--ease-out),transform 0.7s var(--ease-out);}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0);}.services-grid .animate-on-scroll:nth-child(2){transition-delay:0.08s;}.services-grid .animate-on-scroll:nth-child(3){transition-delay:0.16s;}.services-grid .animate-on-scroll:nth-child(4){transition-delay:0.24s;}.features-grid .animate-on-scroll:nth-child(2){transition-delay:0.08s;}.features-grid .animate-on-scroll:nth-child(3){transition-delay:0.16s;}.features-grid .animate-on-scroll:nth-child(4){transition-delay:0.24s;}.text-center{text-align:center;}.text-left{text-align:left;}.text-right{text-align:right;}.text-primary{color:var(--color-primary);}.text-teal{color:var(--color-teal);}.text-muted{color:var(--color-gray-500);}.mb-0{margin-bottom:0;}.mb-4{margin-bottom:var(--space-4);}.mb-8{margin-bottom:var(--space-8);}.mt-4{margin-top:var(--space-4);}.mt-8{margin-top:var(--space-8);}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}.experience-stats{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-6);}.stat-card{flex:1 1 150px;background:var(--color-surface-2);border-radius:var(--radius-lg);padding:var(--space-5);text-align:center;border:1px solid var(--color-surface-4);}.stat-number{display:block;font-family:var(--font-display);font-size:2rem;font-weight:var(--weight-extrabold);color:var(--color-teal);line-height:1.2;}.stat-label{display:block;font-size:var(--text-sm);color:var(--color-gray-500);margin-top:var(--space-1);}.common-issues{margin-bottom:var(--space-6);}.common-issues ul{list-style:disc;padding-left:var(--space-5);}.common-issues li{margin-bottom:var(--space-2);color:var(--color-gray-400);}.local-notes{background:var(--color-surface-2);border-left:3px solid var(--color-teal);padding:var(--space-4);border-radius:0 var(--radius-md) var(--radius-md) 0;margin-bottom:var(--space-6);}.local-notes p{margin:0;color:var(--color-gray-400);font-style:italic;}.technician-spotlight{margin-bottom:var(--space-6);}.tech-card{background:var(--color-surface-2);border:1px solid var(--color-surface-4);border-radius:var(--radius-lg);padding:var(--space-5);}.tech-card strong{display:block;font-size:var(--text-lg);color:var(--color-white);margin-bottom:var(--space-1);}.tech-card span{display:block;font-size:var(--text-sm);color:var(--color-gray-500);margin-bottom:var(--space-2);}.tech-card p{color:var(--color-gray-400);margin-bottom:var(--space-2);}.tech-card blockquote{border-left:3px solid var(--color-teal);padding-left:var(--space-3);margin:var(--space-3) 0 0;color:var(--color-gray-400);font-style:italic;}.recent-jobs{margin-bottom:var(--space-6);}.job-card{background:var(--color-surface-2);border:1px solid var(--color-surface-4);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-3);}.job-meta{font-size:var(--text-sm);color:var(--color-gray-500);margin-bottom:var(--space-1);}.job-detail{color:var(--color-gray-300);margin-bottom:var(--space-1);}.job-resolution{font-size:var(--text-sm);color:var(--color-gray-500);}.local-pricing{margin-bottom:var(--space-6);}.pricing-grid{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-3);}.price-item{flex:1 1 180px;background:var(--color-surface-2);border:1px solid var(--color-surface-4);border-radius:var(--radius-md);padding:var(--space-4);text-align:center;}.price-label{display:block;font-size:var(--text-sm);color:var(--color-gray-500);margin-bottom:var(--space-1);}.price-value{display:block;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-teal);}.pricing-note{font-size:var(--text-sm);color:var(--color-gray-500);font-style:italic;}.ai-disclosure{display:none;}.footer-disclosure{display:none;}.quick-quote{background:var(--color-surface-0);border:1px solid var(--color-surface-4);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);padding:var(--space-6);color:var(--color-gray-300);scroll-margin-top:calc(var(--header-height) + var(--space-4));text-align:left;}.quick-quote [hidden]{display:none !important;}.qq-head{margin-bottom:var(--space-4);}.qq-title{font-size:var(--text-2xl);line-height:var(--leading-snug);color:var(--color-white);margin-bottom:var(--space-1);}.qq-sub{font-size:var(--text-sm);color:var(--color-gray-400);margin:0;}.qq-sub a{color:var(--color-teal);font-weight:var(--weight-medium);white-space:nowrap;}.qq-proof{display:inline-flex;align-items:center;gap:var(--space-1);margin:var(--space-2) 0 0;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-gray-300);}.qq-proof-star{color:#f5a623;font-size:var(--text-sm);line-height:1;}.qq-progress-wrap{margin:0 0 var(--space-4);}.qq-step-count{margin:0 0 var(--space-1);font-size:0.6875rem;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-teal);}.qq-progress{display:flex;gap:var(--space-2);list-style:none;margin:0;padding:0;}.qq-progress li{flex:1;display:flex;align-items:center;gap:var(--space-2);padding-top:var(--space-2);border-top:3px solid var(--color-surface-4);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-gray-500);transition:border-color var(--duration-normal) var(--ease-out),color var(--duration-normal);}.qq-progress li.is-active,.qq-progress li.is-done{border-top-color:var(--color-teal);color:var(--color-white);}.qq-progress-num{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:var(--radius-full);background:var(--color-surface-3);font-size:0.6875rem;}.qq-progress li.is-active .qq-progress-num,.qq-progress li.is-done .qq-progress-num{background:var(--color-teal);color:var(--color-black);}.qq-form{position:relative;}.qq-step{border:0;padding:0;margin:0;min-width:0;}.qq-legend{display:block;width:100%;font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-white);margin-bottom:var(--space-3);padding:0;}.qq-legend:focus{outline:none;}.qq-appliances{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);}.qq-appliances--more{margin-top:var(--space-3);}.qq-appliance{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-height:6.25rem;padding:var(--space-3) var(--space-2);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:1.2;text-align:center;color:var(--color-white);background:var(--color-surface-0);border:1.5px solid var(--color-surface-4);border-radius:var(--radius-lg);box-shadow:0 1px 2px rgba(0,0,0,0.04);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color var(--duration-fast),background var(--duration-fast),box-shadow var(--duration-fast),transform var(--duration-fast);}.qq-appliances--more .qq-appliance{min-height:5.25rem;font-weight:var(--weight-medium);}.qq-appliance .qq-icon{color:var(--color-teal);flex-shrink:0;}.qq-appliance:hover{border-color:var(--color-teal);background:var(--color-teal-ghost);box-shadow:0 4px 14px var(--color-teal-glow);}.qq-appliance:focus-visible{outline:none;border-color:var(--color-teal);box-shadow:0 0 0 3px var(--color-teal-glow);}.qq-appliance:active{transform:scale(0.97);}.qq-appliance[aria-pressed="true"]{border-color:var(--color-teal);background:var(--color-teal-ghost);box-shadow:0 0 0 1px var(--color-teal);}.qq-check{position:absolute;top:var(--space-2);right:var(--space-2);display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:var(--radius-full);background:var(--color-teal);color:var(--color-black);opacity:0;transform:scale(0.4);transition:opacity var(--duration-fast),transform var(--duration-fast) var(--ease-out);}.qq-appliance[aria-pressed="true"] .qq-check{opacity:1;transform:scale(1);}.qq-more-toggle{display:flex;align-items:center;justify-content:center;gap:var(--space-1);width:100%;margin-top:var(--space-3);padding:var(--space-2) var(--space-3);min-height:2.75rem;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-teal);background:transparent;border:1.5px dashed var(--color-surface-4);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--duration-fast),background var(--duration-fast);}.qq-more-toggle:hover{border-color:var(--color-teal);background:var(--color-teal-ghost);}.qq-more-toggle:focus-visible{outline:none;border-color:var(--color-teal);box-shadow:0 0 0 3px var(--color-teal-glow);}.qq-more-toggle svg{transition:transform var(--duration-fast);}.qq-more-toggle[aria-expanded="true"] svg{transform:rotate(180deg);}.qq-reassure{margin:var(--space-3) 0 0;font-size:var(--text-xs);color:var(--color-gray-400);text-align:center;}@keyframes qq-wave{0%{transform:translateY(0);border-color:var(--color-surface-4);box-shadow:0 1px 2px rgba(0,0,0,0.04);}35%{transform:translateY(-3px);border-color:var(--color-teal);box-shadow:0 6px 18px var(--color-teal-glow);}100%{transform:translateY(0);border-color:var(--color-surface-4);box-shadow:0 1px 2px rgba(0,0,0,0.04);}}@keyframes qq-nudge{0%{border-color:var(--color-surface-4);box-shadow:0 0 0 0 color-mix(in srgb,var(--color-teal) 35%,transparent);}40%{border-color:color-mix(in srgb,var(--color-teal) 60%,white);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-teal) 14%,transparent);}100%{border-color:var(--color-surface-4);box-shadow:0 0 0 0 color-mix(in srgb,var(--color-teal) 0%,transparent);}}.qq-wave .qq-appliance[aria-pressed="false"]{animation:qq-wave 0.7s var(--ease-out) both;animation-delay:calc(var(--qq-i,0) * 80ms);}.qq-nudge .qq-appliance[aria-pressed="false"]{animation:qq-nudge 1.4s ease-in-out both;animation-delay:calc(var(--qq-i,0) * 60ms);}@media (prefers-reduced-motion:reduce){.qq-wave .qq-appliance,.qq-nudge .qq-appliance{animation:none !important;}.qq-appliance,.qq-check,.qq-more-toggle svg{transition:none;}.qq-appliance:active{transform:none;}}.qq-optional{text-transform:none;letter-spacing:0;font-weight:var(--weight-normal);color:var(--color-gray-500);}.qq-form .form-textarea.qq-textarea{min-height:5.5rem;}.qq-form .qq-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);}@media (max-width:480px){.qq-form .qq-row{grid-template-columns:1fr;gap:0;}}.qq-form .form-input[aria-invalid="true"]{border-color:var(--color-error);}.qq-field-error{font-size:var(--text-sm);color:color-mix(in srgb,var(--color-error) 80%,black);margin:var(--space-1) 0 0;}.qq-zip-note{font-size:var(--text-sm);color:var(--color-gray-300);background:color-mix(in srgb,var(--color-warning) 10%,white);border:1px solid color-mix(in srgb,var(--color-warning) 35%,white);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);margin:var(--space-2) 0 0;}.qq-zip-note a{color:var(--color-teal);font-weight:var(--weight-medium);}.qq-zip-note--ok{background:color-mix(in srgb,var(--color-success) 10%,white);border-color:color-mix(in srgb,var(--color-success) 35%,white);}.qq-captcha:not(:empty){margin-bottom:var(--space-4);}.qq-nav{display:flex;gap:var(--space-3);margin-top:var(--space-2);}.qq-nav .btn{flex:1;}.qq-nav .qq-back{flex:0 0 auto;}.qq-form .btn:disabled,.qq-form .btn[aria-busy="true"]{opacity:0.6;cursor:not-allowed;transform:none;}.qq-success{padding:var(--space-6) var(--space-2);}.hero-content.hero-has-quote{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--space-12);align-items:center;}.hero-has-quote .quick-quote{max-width:34rem;justify-self:end;width:100%;}.hero-content.hero-has-quote{padding-left:var(--container-padding);padding-right:var(--container-padding);}.hero-video:has(.hero-has-quote){min-height:0;}@media (min-width:961px){.hero-content.hero-has-quote{padding-top:var(--space-24);padding-bottom:var(--space-16);}}.hero-has-quote .hero-subtitle{margin-bottom:0;}@media (max-width:960px){.hero-content.hero-has-quote{grid-template-columns:1fr;gap:var(--space-8);padding-top:var(--space-12);padding-bottom:var(--space-12);}.hero-has-quote .quick-quote{justify-self:stretch;max-width:none;}}.section-quote{padding-top:var(--space-8);padding-bottom:var(--space-8);}.section-quote .quick-quote{max-width:40rem;margin:0 auto;}@media (max-width:480px){.quick-quote{padding:var(--space-5) var(--space-4);border-radius:var(--radius-xl);}.qq-appliances{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);}.qq-appliance{flex-direction:row;justify-content:flex-start;gap:var(--space-3);min-height:4rem;padding:var(--space-3);text-align:left;font-size:var(--text-base);}.qq-appliances--more .qq-appliance{min-height:3.5rem;font-size:var(--text-sm);}.qq-appliance .qq-icon{width:28px;height:28px;}.qq-check{top:50%;right:var(--space-2);margin-top:-0.625rem;}.qq-progress-label{font-size:0.6875rem;}}.sticky-actions{display:none;}@media (max-width:768px){body{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0px));}.sticky-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);position:fixed;left:0;right:0;bottom:0;z-index:var(--z-sticky);padding:var(--space-2) var(--space-3) calc(var(--space-2) + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,0.92);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--color-surface-4);transition:transform var(--duration-normal) var(--ease-out);}.sticky-actions--single{grid-template-columns:1fr;}.sticky-action{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:3rem;border-radius:var(--radius-full);font-size:var(--text-base);font-weight:var(--weight-semibold);text-decoration:none;border:1.5px solid var(--color-teal);}.sticky-action:hover{text-decoration:none;}.sticky-action:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-teal-glow);}.sticky-action--call{background:var(--color-teal);color:var(--color-black);animation:call-pulse 2.4s ease-out infinite;}.sticky-action--call svg{animation:call-ring 2.4s ease-in-out infinite;}.sticky-action--quote{background:var(--color-surface-0);color:var(--color-teal);}body.nav-open .sticky-action--call,body.is-typing .sticky-action--call{animation:none;}}@keyframes call-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--color-teal) 55%,transparent);}70%{box-shadow:0 0 0 12px color-mix(in srgb,var(--color-teal) 0%,transparent);}100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--color-teal) 0%,transparent);}}@keyframes call-ring{0%,60%,100%{transform:rotate(0);}64%{transform:rotate(-14deg);}68%{transform:rotate(12deg);}72%{transform:rotate(-10deg);}76%{transform:rotate(8deg);}80%{transform:rotate(0);}}@media (prefers-reduced-motion:reduce){.sticky-action--call,.sticky-action--call svg{animation:none;}}@media (max-width:768px){body.nav-open .sticky-actions,body.is-typing .sticky-actions{transform:translateY(110%);}}.reviews-section{scroll-margin-top:var(--header-height);}.reviews-section .section-header{margin-bottom:var(--space-8);}.stars{position:relative;display:inline-block;font-size:1rem;line-height:1;letter-spacing:0.05em;color:var(--color-gray-700);white-space:nowrap;}.stars::before{content:"\2605\2605\2605\2605\2605";}.stars-fill{position:absolute;top:0;left:0;bottom:0;overflow:hidden;color:#fbbc04;}.stars-fill::before{content:"\2605\2605\2605\2605\2605";}.stars-lg{font-size:1.5rem;}.reviews-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-8);}.reviews-score{display:flex;align-items:center;gap:var(--space-4);min-height:4rem;}.reviews-rating{font-family:var(--font-display);font-size:var(--text-5xl);font-weight:var(--weight-semibold);line-height:1;color:var(--color-white);letter-spacing:-0.02em;min-width:2ch;}.reviews-score-meta{display:flex;flex-direction:column;gap:var(--space-2);}.reviews-count{font-size:var(--text-sm);color:var(--color-gray-400);}.reviews-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);}.reviews-section.is-loading .reviews-score{visibility:hidden;}.reviews-section.is-failed .reviews-score,.reviews-section.is-failed .reviews-track,.reviews-section.is-failed .reviews-attribution{display:none;}.reviews-section.is-failed .reviews-summary{justify-content:center;margin-bottom:0;}.reviews-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(16.5rem,85%);gap:var(--space-4);overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:var(--space-1) var(--space-1) var(--space-4);margin:0 calc(-1 * var(--space-1));min-height:16rem;scrollbar-width:thin;}@media (min-width:769px){.reviews-track{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));overflow:visible;scroll-snap-type:none;}}@media (min-width:1100px){.reviews-track{grid-template-columns:repeat(3,minmax(0,1fr));}}.review-card{scroll-snap-align:start;display:flex;flex-direction:column;gap:var(--space-3);background:var(--color-surface-0);border:1px solid var(--color-surface-4);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-5);min-width:0;}.review-head{display:flex;align-items:center;gap:var(--space-3);min-width:0;}.review-avatar{flex:0 0 auto;width:2.5rem;height:2.5rem;border-radius:50%;object-fit:cover;background:var(--color-surface-1);}.review-avatar--initial{display:inline-flex;align-items:center;justify-content:center;background:var(--color-teal);color:var(--color-black);font-weight:var(--weight-semibold);}.review-who{display:flex;flex-direction:column;gap:0.2rem;min-width:0;}.review-author{font-weight:var(--weight-semibold);color:var(--color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}a.review-author:hover{color:var(--color-teal);}.review-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-gray-400);}.review-meta .stars{font-size:0.875rem;}.review-text{margin:0;font-size:var(--text-sm);line-height:1.55;color:var(--color-gray-300);white-space:pre-line;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;line-clamp:5;overflow:hidden;}.review-card.is-expanded .review-text{display:block;-webkit-line-clamp:unset;line-clamp:none;overflow:visible;}.review-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);}.review-more{background:none;border:0;padding:0;font:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-teal);cursor:pointer;}.review-more:hover{text-decoration:underline;}.review-link{font-size:var(--text-xs);color:var(--color-gray-400);margin-left:auto;}.review-link:hover{color:var(--color-teal);}.review-card--skeleton{min-height:14rem;}.review-card--skeleton span{display:block;height:0.75rem;border-radius:var(--radius-full);background:var(--color-surface-1);}.review-card--skeleton span:first-child{width:45%;height:1rem;}.review-card--skeleton span:nth-child(2){width:90%;}.review-card--skeleton span:nth-child(3){width:70%;}.reviews-attribution{margin:var(--space-4) 0 0;font-size:var(--text-xs);color:var(--color-gray-400);text-align:center;}@media (max-width:640px){.reviews-summary{flex-direction:column;align-items:flex-start;gap:var(--space-4);}.reviews-rating{font-size:var(--text-4xl);}.reviews-actions{width:100%;}.reviews-actions .btn{flex:1 1 auto;}}@media print{body{background:white;color:black;}.site-header,.site-footer,.btn,.nav-toggle,.sticky-actions,.quick-quote,.reviews-section{display:none !important;}.hero{background:none;color:black;padding:var(--space-4) 0;min-height:auto;}h1,h2,h3,h4,h5,h6{color:black;}a{color:black;text-decoration:underline;}}#city-areas p,.city-local p,.city-services-intro p{color:var(--color-gray-300);line-height:var(--leading-relaxed,1.7);margin-bottom:var(--space-4);}.city-services-intro{margin-bottom:var(--space-8);}.city-areas-label{font-size:var(--text-base);margin:var(--space-6) 0 var(--space-3);color:var(--color-white);}.city-neighborhoods{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);color:var(--color-gray-300);}.city-neighborhoods li::before{content:'\2022';color:var(--color-teal);margin-right:var(--space-2);}.zip-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2);}.zip-chip{padding:var(--space-1) var(--space-3);border:1px solid var(--color-surface-4);border-radius:999px;background:var(--color-surface-2);font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--color-gray-300);}.city-areas-more{margin-top:var(--space-6);font-size:var(--text-sm);color:var(--color-gray-400);}.city-areas-more a,.city-local a{color:var(--color-teal);}.city-local h3{font-size:var(--text-lg);margin:var(--space-8) 0 var(--space-3);color:var(--color-white);}.city-local ul,.city-local ol{color:var(--color-gray-300);padding-left:var(--space-6);margin-bottom:var(--space-4);}.city-local li{margin-bottom:var(--space-2);}.sa-card a.sa-card-name{color:var(--color-white);}.sa-card a.sa-card-name:hover{color:var(--color-teal);}.sa-card-places a{color:var(--color-teal);}#nearby-cities .city-areas-more{text-align:center;}.jobs-section .section-header,.work-section .section-header{margin-bottom:var(--space-8);}.jobs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));gap:var(--space-5);}.job-card{display:flex;flex-direction:column;gap:var(--space-4);background:var(--color-surface-0);border:1px solid var(--color-surface-4);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-6);min-width:0;}.job-head{display:flex;flex-direction:column;gap:var(--space-1);}.job-title{font-size:var(--text-xl);margin:0;color:var(--color-white);}.job-meta{font-size:var(--text-sm);color:var(--color-gray-400);}.job-badge{align-self:flex-start;display:inline-block;padding:0.1rem 0.55rem;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-success) 14%,transparent);color:#15803d;font-weight:var(--weight-semibold);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;}.job-badge--pending{background:color-mix(in srgb,var(--color-warning) 18%,transparent);color:#92400e;}.job-photo{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-lg);background:var(--color-surface-1);}.job-steps{margin:0;display:grid;gap:var(--space-1);}.job-steps dt{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-teal);margin-top:var(--space-2);}.job-steps dt:first-child{margin-top:0;}.job-steps dd{margin:0;color:var(--color-gray-300);line-height:var(--leading-normal);}.job-quote{margin:0;padding:var(--space-3) var(--space-4);border-left:3px solid var(--color-teal);background:var(--color-surface-1);border-radius:0 var(--radius-md) var(--radius-md) 0;}.job-quote p{margin:0;font-style:italic;color:var(--color-gray-200);}.job-quote footer{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--color-gray-400);}.job-link{margin-top:auto;font-size:var(--text-sm);font-weight:var(--weight-medium);}.work-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);}@media (min-width:769px){.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);}}@media (min-width:1100px){.work-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}.work-item figure{margin:0;display:flex;flex-direction:column;gap:var(--space-2);}.work-link{display:block;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface-4);}.work-link img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;transition:transform var(--duration-fast) var(--ease-out);}.work-link:hover img{transform:scale(1.03);}.work-link:focus-visible{outline:3px solid var(--color-teal);outline-offset:2px;}.work-item figcaption{font-size:var(--text-sm);color:var(--color-gray-400);line-height:var(--leading-snug);}.work-note{margin-top:var(--space-4);font-size:var(--text-sm);color:var(--color-gray-400);}.work-lightbox{border:0;padding:0;background:transparent;max-width:min(96vw,1200px);max-height:96vh;}.work-lightbox::backdrop{background:rgba(0,0,0,0.85);}.work-lightbox img{display:block;max-width:100%;max-height:calc(96vh - 4rem);width:auto;height:auto;margin:0 auto;border-radius:var(--radius-lg);}.work-lightbox-caption{color:#fff;text-align:center;margin:var(--space-3) 0 0;font-size:var(--text-sm);}.work-lightbox-close{position:absolute;top:var(--space-2);right:var(--space-2);width:2.75rem;height:2.75rem;border:0;border-radius:50%;background:rgba(0,0,0,0.6);color:#fff;font-size:1.75rem;line-height:1;cursor:pointer;}@media (prefers-reduced-motion:reduce){.work-link img{transition:none;}.work-link:hover img{transform:none;}}