:root{--brand: #019eff;--brand-accent: #02c2ff;--brand-dark: #0178cc;--ink: #1a1a1a;--muted: #5c5c5c;--bg: #fafafa;--white: #ffffff;--header-h: 4.25rem;--font-bold: "Helvetica Neue", Helvetica, Arial, sans-serif}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:var(--font-bold);font-weight:700;line-height:1.45;color:var(--ink);background:var(--bg)}#root{min-height:100vh}a{color:inherit}.layout{position:relative;isolation:isolate;min-height:100vh;display:flex;flex-direction:column}.layoutWatermark{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;display:flex;align-items:center;justify-content:center;pointer-events:none;overflow:hidden}.layoutWatermark__img{width:min(220vw,160rem);height:min(125vh,100rem);object-fit:contain;object-position:center;opacity:.055;filter:grayscale(.15)}.siteHeader,.siteMain,.siteFooter{position:relative;z-index:1}.siteHeader{position:sticky;top:0;z-index:20;background:var(--white);border-bottom:3px solid var(--brand);box-shadow:0 1px #0000000f}.headerInner{max-width:72rem;margin:0 auto;padding:.75rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:var(--header-h)}.logoLink{display:flex;align-items:center;text-decoration:none;flex-shrink:0}.siteLogo{display:block;height:3rem;width:auto;max-width:min(220px,52vw);object-fit:contain}.siteNav{display:flex;align-items:center;gap:.25rem}.navLink{text-decoration:none;font-size:.95rem;letter-spacing:.02em;text-transform:uppercase;padding:.5rem .85rem;border-radius:6px;color:var(--ink);transition:background .15s ease,color .15s ease}.navLink:hover{background:#019eff2e}.navLinkActive{background:var(--brand);color:var(--white)}.siteMain{flex:1}.constructionPage{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.25rem}.constructionPage__line{margin:0;font-family:var(--font-bold);font-weight:700;color:var(--ink);text-align:center}.hero{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-accent) 100%);color:var(--white);padding:clamp(1.35rem,3.2vw,2.25rem) 1.25rem}.heroInner{max-width:42rem;margin:0 auto}.heroTitle{margin:0 0 .5rem;font-size:clamp(2rem,5vw,2.75rem);line-height:1.1;letter-spacing:-.02em}.heroLead{margin:0;font-size:1.125rem;font-weight:700;opacity:.92}.heroActions{display:flex;flex-wrap:wrap;gap:.75rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.25rem;border-radius:8px;font-family:inherit;font-weight:700;font-size:.95rem;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .15s ease}.btn:active{transform:scale(.98)}.btnPrimary{background:var(--ink);color:var(--white);box-shadow:0 4px 14px #0003}.btnPrimary:hover{background:#000}.btnGhost{background:#ffffff59;color:var(--ink);border-color:#1a1a1a59}.btnGhost:hover{background:#ffffff8c}.section{padding:clamp(2.5rem,5vw,4rem) 1.25rem}.sectionInner{max-width:48rem;margin:0 auto}.sectionInnerWide{max-width:72rem}.sectionTitle{margin:0 0 .5rem;font-size:1.5rem;letter-spacing:-.02em}.sectionLead{margin:0 0 1.5rem;color:var(--muted);font-size:1rem;font-weight:700;max-width:52ch}.quoteAppShell{min-height:280px;border-radius:12px;border:2px dashed rgba(26,26,26,.2);background:var(--white);display:flex;align-items:center;justify-content:center;padding:2rem}.quoteAppShellText{margin:0;font-size:.9rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.page{padding:clamp(2rem,4vw,3rem) 1.25rem}.pageInner{max-width:48rem;margin:0 auto}.pageInner.narrow{max-width:32rem}.pageTitle{margin:0 0 .5rem;font-size:clamp(1.75rem,4vw,2.25rem)}.pageLead{margin:0 0 2rem;color:var(--muted);font-weight:700}.emptyState{display:flex;flex-direction:column;gap:.75rem;padding:2rem 0}.emptyStateLine{display:block;height:10px;border-radius:6px;background:linear-gradient(90deg,var(--brand),rgba(1,158,255,.35));max-width:100%}.emptyStateLine.short{max-width:65%}.contactList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.25rem}.contactList li{display:flex;flex-direction:column;gap:.25rem}.contactLabel{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.contactValue{font-size:1.1rem;text-decoration:underline;text-underline-offset:3px}a.contactValue:hover{color:var(--brand-dark)}.contactPlaceholder{text-decoration:none;color:var(--muted);cursor:default}.reviewsGoogleLink{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.reviewsGoogleLink:hover{color:var(--brand-dark)}.reviewList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.5rem}.reviewCard{background:var(--white);border-radius:12px;border:2px solid rgba(26,26,26,.08);padding:1.35rem 1.5rem;box-shadow:0 2px 10px #0000000a}.reviewCardHeader{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:.85rem;padding-bottom:.85rem;border-bottom:2px solid rgba(1,158,255,.45)}.reviewRating{margin:0;display:flex;align-items:center;gap:.4rem;font-size:.95rem}.reviewScore{font-variant-numeric:tabular-nums}.reviewStars{color:var(--brand);letter-spacing:.02em}.reviewBody{margin:0 0 1rem}.reviewBody p{margin:0 0 .75rem;font-weight:600;line-height:1.55;color:var(--ink)}.reviewBody p:last-child{margin-bottom:0}.reviewSourceLink{display:inline-flex;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;text-decoration:underline;text-underline-offset:3px;color:var(--muted)}.reviewSourceLink:hover{color:var(--brand-dark)}.siteFooter{margin-top:auto;padding:1.25rem;border-top:1px solid rgba(0,0,0,.08);background:var(--white)}.footerText{margin:0;text-align:center;font-size:.8rem;font-weight:700;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}@media(max-width:520px){.headerInner{flex-wrap:wrap;justify-content:center}.siteNav{width:100%;justify-content:center}}@media print{.layoutWatermark,.siteHeader,.siteFooter,.hero{display:none!important}body{background:#fff!important;-webkit-print-color-adjust:economy;print-color-adjust:economy}#root,.layout,.siteMain{min-height:0!important;height:auto!important;display:block!important}.section,.sectionQuote{padding:0!important}.sectionInner,.sectionInnerWide{max-width:none!important;margin:0!important;padding:0!important}}
