/* Homepage refinement. Component hooks remain compatible with the content editor. */
.home-clean { --ink:#172333; --muted:#586575; --line:#e1e6eb; --blue:#245fc2; --max:1120px; }
.home-clean [hidden] { display:none !important; }
html { scroll-padding-top:110px; }
.home-clean :focus-visible { outline:3px solid #e7a82d; outline-offset:5px; }
.home-clean .site-header { background:#fff; border-bottom:1px solid var(--line); box-shadow:none; min-height:84px; }
.home-clean .site-nav { color:var(--ink); font-weight:600; }
.home-clean .brand-mark { border-radius:0; }
.home-clean .header-cta, .home-clean .btn { box-shadow:none; font-weight:650; border-radius:6px; }
.home-clean .hero { min-height:0; padding:156px var(--gutter) 0; background:#102131; }
.home-clean .hero-image { opacity:.35; filter:none; object-position:center; }
.home-clean .hero-scrim { background:linear-gradient(90deg,rgba(12,27,43,.94),rgba(12,27,43,.3)); }
.home-clean .hero-content { gap:56px; }
.home-clean .hero-center { width:100%; margin:0; text-align:left; padding:20px 0; }
.home-clean .hero-kicker { color:#c5d7ed; }
.home-clean .hero-kicker::before,.home-clean .hero-kicker::after { display:none; }
.home-clean h1 { max-width:760px; margin:0; font-size:clamp(42px,5.8vw,76px); line-height:1.06; letter-spacing:-.04em; font-weight:700; text-transform:none; }
.home-clean .hero-copy { max-width:570px; margin:24px 0 0; font-size:18px; font-weight:400; line-height:1.65; color:#d8e2ed; }
.home-clean .hero-review-proof { padding:0; margin-bottom:22px; border:0; background:none; box-shadow:none; backdrop-filter:none; font-size:13px; }
.home-clean .contact-actions { justify-content:flex-start; margin-top:28px; }
.home-clean .contact-help { color:#c5d7ed; margin-top:18px; }
.home-clean .contact-help a { text-decoration:underline; text-underline-offset:4px; }
.home-clean .hero-results { display:none; }
.home-clean .service-area-note { color:#b2c3d4; font-size:13px; margin:26px 0 0; }
.home-clean .hero-stats { background:none; border:0; border-top:1px solid #ffffff30; box-shadow:none; border-radius:0; grid-template-columns:repeat(3,1fr); }
.home-clean .hero-stats article { background:none; border:0; padding:26px 0; min-height:0; gap:14px; }
.home-clean .hero-stat-watermark { display:none; }
.home-clean .hero-stat-icon { width:32px; height:32px; flex-basis:32px; padding:0; background:none; border:0; box-shadow:none; }
.home-clean .hero-stat-copy strong { font-size:20px; font-weight:650; }
.home-clean .hero-stat-copy > span { font-size:12px; color:#bfcedd; font-weight:400; }
.home-clean .section,.home-clean .booking-section { width:min(var(--max),calc(100% - 2 * var(--gutter))); max-width:var(--max); margin:0 auto; padding:80px 0; color:var(--ink); background:none; }
.home-clean .section::before,.home-clean .booking-section::before { display:none; }
.home-clean .section-head { margin-bottom:32px; }
.home-clean .section-head-row { gap:36px; align-items:end; }
.home-clean h2 { color:var(--ink); font-size:clamp(28px,3.4vw,42px); line-height:1.15; font-weight:650; letter-spacing:-.025em; text-transform:none; }
.home-clean h3 { font-weight:650; letter-spacing:-.015em; }
.home-clean .section-head p:not(.kicker),.home-clean .booking-copy > p:not(.kicker) { color:var(--muted); font-size:16px; font-weight:400; line-height:1.65; }
.home-clean .kicker { padding:0; min-height:0; margin-bottom:14px; color:var(--blue); background:none; border-radius:0; font-size:11px; font-weight:700; letter-spacing:.15em; box-shadow:none; }
.home-clean .proof-shell { box-shadow:none; border:1px solid var(--line); border-radius:10px; }
.home-clean .result-slider { border-radius:10px; }
.home-clean .proof-controls,.home-clean .review-controls { justify-content:flex-end; }
.home-clean .proof-controls button,.home-clean .review-controls button { width:44px; height:44px; color:var(--ink); background:#fff; border:1px solid var(--line); box-shadow:none; }
.home-clean .services-section,.home-clean .why-section,.home-clean .faq-section { border-top:1px solid var(--line); }
.home-clean .services-grid { gap:20px; }
.home-clean .service-card { min-height:250px; border:1px solid var(--line); border-radius:8px; padding:26px; background:#f6f8fa; box-shadow:none; }
.home-clean .service-card::before,.home-clean .service-watermark { display:none; }
.home-clean .service-icon { position:static; width:38px; height:38px; padding:0; border-radius:0; }
.home-clean .service-icon img { filter:none; }
.home-clean .service-step { color:var(--muted); background:none; border:0; padding:0; top:30px; right:26px; font-size:11px; }
.home-clean .service-card div { min-height:0; padding-top:26px; }
.home-clean .service-card h3 { color:var(--ink); font-size:22px; text-transform:none; }
.home-clean .service-card p { color:var(--muted); font-size:15px; font-weight:400; line-height:1.65; }
.home-clean .review-shell { background:#f6f8fa; box-shadow:none; border:1px solid var(--line); border-radius:8px; }
.home-clean .review-card { padding:36px; color:var(--ink); background:#f6f8fa; }
.home-clean .review-card-head strong { color:var(--ink); font-size:16px; font-weight:650; }
.home-clean .review-meta { color:var(--muted); font-weight:400; }
.home-clean .review-card p { font-size:clamp(18px,2.2vw,26px); line-height:1.55; font-weight:450; }
.home-clean .review-avatar { color:var(--blue); background:#e5edf8; }
.home-clean .google-review-link { color:var(--blue); border:1px solid var(--line); background:#fff; font-weight:600; }
.home-clean .why-grid { gap:28px; }
.home-clean .why-grid article { min-height:0; padding:0; border:0; box-shadow:none; background:none; }
.home-clean .why-grid article::after { display:none; }
.home-clean .why-icon { width:auto; height:auto; display:block; background:none; margin-bottom:20px; font-size:13px; }
.home-clean .why-grid h3 { font-size:19px; }
.home-clean .why-grid p { font-weight:400; font-size:15px; }
.home-clean .booking-section { border-top:1px solid var(--line); }
.home-clean .booking-frame-wrap { border-radius:8px; box-shadow:none; }
.home-clean .faq-section { display:grid; grid-template-columns:1fr 1.6fr; gap:60px; }
.home-clean .faq-list { gap:0; }
.home-clean .faq-list details { border:0; border-bottom:1px solid var(--line); border-radius:0; background:none; box-shadow:none; backdrop-filter:none; }
.home-clean .faq-list summary { padding:22px 0; color:var(--ink); font-size:17px; font-weight:600; }
.home-clean .faq-list summary::after { color:var(--blue); }
.home-clean .faq-list p { padding:0 24px 24px 0; color:var(--muted); font-size:15px; font-weight:400; }
.home-clean .footer-main { padding:48px 0; }
.home-clean .footer-column a,.home-clean .footer-brand-block p,.home-clean .footer-bottom p { font-weight:400; font-size:14px; }
@media(max-width:1020px) { .home-clean .services-grid { grid-template-columns:repeat(3,1fr); } .home-clean .service-card { padding:20px; } .home-clean .service-step { right:20px; } }
@media(max-width:760px) {
 .home-clean .site-nav { background:#fff; color:var(--ink); }
 .home-clean .site-nav a { font-size:32px; font-weight:600; text-transform:none; }
 .home-clean .menu-toggle { background:#fff; border-color:var(--line); }
 .home-clean .menu-toggle span { background:var(--ink); }
 .home-clean .hero { padding:124px var(--gutter) 0; }
 .home-clean .hero-content { gap:28px; }
 .home-clean .hero-copy { font-size:16px; }
 .home-clean .hero-stats { grid-template-columns:1fr; gap:0; }
 .home-clean .hero-stats article,.home-clean .hero-stats article:nth-child(3) { display:flex; padding:16px 0; border:0; }
 .home-clean .hero-stat-copy { display:flex; align-items:center; gap:12px; }
 .home-clean .hero-stat-copy strong { font-size:17px; }
 .home-clean .section,.home-clean .booking-section { padding:48px 0; }
 .home-clean .services-grid { grid-template-columns:1fr; }
 .home-clean .service-card { min-height:0; padding:24px; }
 .home-clean .service-card div { padding-top:18px; }
 .home-clean .why-grid { grid-template-columns:1fr 1fr; gap:28px 20px; }
 .home-clean .faq-section { display:block; }
 .home-clean .review-card { padding:24px; }
 .home-clean .google-review-link { margin-top:16px; }
 .home-clean .footer-columns { grid-template-columns:1fr 1fr; gap:28px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none !important; } }
.home-clean .services-section::after,.home-clean .proof-section::after,.home-clean .hero-stats article::before,.home-clean .hero-stats article::after { display:none; }
.home-clean .service-icon img { filter:brightness(0) saturate(100%); opacity:.65; }

/* Shared eyebrow treatment across every homepage section. */
.home-clean .hero-kicker,
.home-clean .kicker { display:block; padding:0; min-height:0; margin:0 0 16px; border:0; border-radius:0; background:none; box-shadow:none; font-size:12px; font-weight:700; line-height:1.5; letter-spacing:.14em; text-transform:uppercase; }
