:root{--c-bg:#ffffff;--c-surface:#eeeff1;--c-surface-2:#e0e2e4;--c-ink:#0f172a;--c-muted:#6a6f7b;--c-line:#e2e3e5;--c-brand:#233b35;--c-on-brand:#ffffff;--c-brand-text:#233b35;--c-accent:#f29e38;--c-on-accent:#0b1220;--c-dark:#0d1618;--c-on-dark:#f5f7fa;--c-muted-on-dark:#afb4b6;--c-accent-on-dark:#f29e38;--c-card:var(--c-bg);--c-card-2:var(--c-bg);--c-band:var(--c-surface);--c-chip:var(--c-surface);--c-chip-2:var(--c-surface);--c-muted-card:var(--c-muted);--c-muted-band:var(--c-ink);--c-link:var(--c-brand-text);--c-link-card:var(--c-brand-text);--c-link-band:var(--c-brand-text);--c-link-chip:var(--c-brand-text);--c-link-chip-2:var(--c-brand-text);--c-star:var(--c-accent);--c-field:var(--c-muted);--c-fill:var(--c-brand);--c-on-fill:var(--c-on-brand);--c-fill-icon:var(--c-accent);--c-act:var(--c-accent);--c-on-act:var(--c-on-accent);--c-act-dark:var(--c-accent);--c-on-act-dark:var(--c-on-accent);--c-hero:var(--c-brand);--p:var(--c-brand-text);--pd:var(--c-dark);--a:var(--c-accent);--ink:var(--c-ink);--soft:var(--c-surface);--line:var(--c-line);--muted:var(--c-muted);--f-body:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--f-head:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--fs-base:17px;--lh-body:1.62;--fw-body:400;--fw-med:500;--fw-semi:700;--fw-bold:700;--fw-black:800;--fw-head:800;--fw-h3:700;--ls-head:-.03em;--lh-head:1.04;--case-head:none;--fs-h1:clamp(33px,3.587vw + 20.09px,66px);--fs-h2:clamp(28px,1.522vw + 22.52px,42px);--fs-h3:21px;--fs-h1p:clamp(30px,1.522vw + 24.52px,44px);--fs-h2p:clamp(24px,0.543vw + 22.04px,29px);--case-btn:none;--ls-btn:normal;--fs-btn:1rem;--ls-label:.1em;--w-max:1200px;--w-text:58ch;--gutter:20px;--r-sm:16px;--r-md:24px;--r-lg:32px;--r-img:28px;--r-in:14px;--r-btn:999px;--sp-section:88px;--sp-block:40px;--gap:22px;--sp-hero:110px;--sp-hero-b:90px;--sp-phero:64px;--sp-phero-b:56px;--hdr-h:70px;--sh-card:0 14px 34px -26px rgba(0,0,0,.35);--sh-lift:0 18px 40px -22px rgba(0,0,0,.35);--sh-photo:0 30px 60px -30px rgba(0,0,0,.45);--sh-form:0 30px 60px -30px rgba(0,0,0,.5);--step--1:15.1px;--step-0:clamp(17px,0vw + 17px,17px);--step-1:clamp(19px,0.217vw + 18.22px,21px);--step-2:clamp(21px,0.652vw + 18.65px,27px);--step-3:clamp(24px,0.978vw + 20.48px,33px);--step-4:clamp(26px,1.739vw + 19.74px,42px);--step-5:clamp(30px,2.5vw + 21px,53px);--step-6:clamp(33px,3.587vw + 20.09px,66px);--w-head:800;--track-head:-.03em;--wrap:1200px;--measure:58ch;--r-s:16px;--r-m:24px;--r-l:32px;--sec-y:88px;--density:1}
@media (max-width:900px){:root{--sp-section:64px;--sec-y:64px;--sp-hero:80px;--sp-hero-b:70px;--sp-phero:64px;--sp-phero-b:56px}}
body{--r:var(--r-md)}
body,.tone-base,.mnav-panel,.th-doorstep .hero.has-photo{background-color:var(--c-bg);background-image:none;color:var(--c-ink);--t-fg:var(--c-ink);--t-fg-2:var(--c-muted);--t-link:var(--c-link);--t-glass:var(--c-band);--t-glass-line:var(--c-line);--t-outline:var(--c-line);--t-star:var(--c-star);--t-star-off:var(--c-line);--t-edge:var(--c-ink);--t-act:var(--c-act);--t-on-act:var(--c-on-act);--t-fill:var(--c-fill);--t-on-fill:var(--c-on-fill);--t-fill-icon:var(--c-fill-icon)}
.sec-soft,.tone-band,.tone-tint,.side-call{background-color:var(--c-band);background-image:none;color:var(--c-ink);--t-fg:var(--c-ink);--t-fg-2:var(--c-muted-band);--t-link:var(--c-link-band);--t-glass:var(--c-card-2);--t-glass-line:var(--c-line);--t-outline:var(--c-line);--t-star:var(--c-star);--t-star-off:var(--c-line);--t-edge:var(--c-ink);--t-act:var(--c-act);--t-on-act:var(--c-on-act);--t-fill:var(--c-fill);--t-on-fill:var(--c-on-fill);--t-fill-icon:var(--c-fill-icon)}
.card,.form,.area-card,.side-card,.faq,.review.light,.stat,.dd-menu{background-color:var(--c-card);background-image:none;color:var(--c-ink);--t-fg:var(--c-ink);--t-fg-2:var(--c-muted-card);--t-link:var(--c-link-card);--t-glass:var(--c-chip);--t-glass-line:var(--c-line);--t-outline:var(--c-line);--t-star:var(--c-star);--t-star-off:var(--c-line);--t-edge:var(--c-ink);--t-act:var(--c-act);--t-on-act:var(--c-on-act);--t-fill:var(--c-fill);--t-on-fill:var(--c-on-fill);--t-fill-icon:var(--c-fill-icon)}
.sec-soft .card,.sec-soft .form,.sec-soft .area-card,.sec-soft .side-card,.sec-soft .faq,.sec-soft .review.light,.sec-soft .stat,.sec-soft .dd-menu,.tone-band .card,.tone-band .form,.tone-band .area-card,.tone-band .side-card,.tone-band .faq,.tone-band .review.light,.tone-band .stat,.tone-band .dd-menu,.tone-tint .card,.tone-tint .form,.tone-tint .area-card,.tone-tint .side-card,.tone-tint .faq,.tone-tint .review.light,.tone-tint .stat,.tone-tint .dd-menu{background-color:var(--c-card-2);background-image:none;color:var(--c-ink);--t-fg:var(--c-ink);--t-fg-2:var(--c-muted);--t-link:var(--c-link);--t-glass:var(--c-chip-2);--t-glass-line:var(--c-line);--t-outline:var(--c-line);--t-star:var(--c-star);--t-star-off:var(--c-line);--t-edge:var(--c-ink);--t-act:var(--c-act);--t-on-act:var(--c-on-act);--t-fill:var(--c-fill);--t-on-fill:var(--c-on-fill);--t-fill-icon:var(--c-fill-icon)}
.sec-dark,.tone-deep,.foot{background-color:var(--c-dark);background-image:none;color:var(--c-on-dark);--t-fg:var(--c-on-dark);--t-fg-2:var(--c-muted-on-dark);--t-link:var(--c-accent-on-dark);--t-glass:rgba(255,255,255,.07);--t-glass-line:rgba(255,255,255,.16);--t-outline:rgba(255,255,255,.7);--t-star:var(--c-accent-on-dark);--t-star-off:rgba(255,255,255,.3);--t-edge:var(--c-on-dark);--t-act:var(--c-act-dark);--t-on-act:var(--c-on-act-dark);--t-fill:var(--c-act-dark);--t-on-fill:var(--c-on-act-dark);--t-fill-icon:var(--c-on-act-dark)}
.hero,.phero,.sec-cta{background-color:var(--c-dark);background-image:none;color:var(--c-on-dark);--t-fg:var(--c-on-dark);--t-fg-2:var(--c-on-dark);--t-link:var(--c-on-dark);--t-glass:rgba(255,255,255,.12);--t-glass-line:rgba(255,255,255,.24);--t-outline:rgba(255,255,255,.7);--t-star:var(--c-accent-on-dark);--t-star-off:rgba(255,255,255,.3);--t-edge:var(--c-on-dark);--t-act:var(--c-act-dark);--t-on-act:var(--c-on-act-dark);--t-fill:var(--c-act-dark);--t-on-fill:var(--c-on-act-dark);--t-fill-icon:var(--c-on-act-dark)}
.tone-brand,.th-doorstep .foot{background-color:var(--c-brand);background-image:none;color:var(--c-on-brand);--t-fg:var(--c-on-brand);--t-fg-2:var(--c-on-brand);--t-link:var(--c-on-brand);--t-glass:transparent;--t-glass-line:var(--c-on-brand);--t-outline:var(--c-on-brand);--t-star:var(--c-on-brand);--t-star-off:transparent;--t-edge:var(--c-on-brand);--t-act:var(--c-on-brand);--t-on-act:var(--c-brand);--t-fill:var(--c-on-brand);--t-on-fill:var(--c-brand);--t-fill-icon:var(--c-brand)}
.tone-accent{background-color:var(--c-accent);background-image:none;color:var(--c-on-accent);--t-fg:var(--c-on-accent);--t-fg-2:var(--c-on-accent);--t-link:var(--c-on-accent);--t-glass:transparent;--t-glass-line:var(--c-on-accent);--t-outline:var(--c-on-accent);--t-star:var(--c-on-accent);--t-star-off:transparent;--t-edge:var(--c-on-accent);--t-act:var(--c-on-accent);--t-on-act:var(--c-accent);--t-fill:var(--c-on-accent);--t-on-fill:var(--c-accent);--t-fill-icon:var(--c-accent)}
.hero,.phero,.sec-cta{background-image:linear-gradient(135deg,var(--c-hero),var(--c-dark))}.sec-cta{--t-fg-2:var(--c-muted-on-dark);--t-link:var(--c-accent-on-dark)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--hdr-h);-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--f-body);font-size:var(--fs-base);line-height:var(--lh-body);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}a{color:inherit}:focus-visible{outline:2px solid var(--t-link);outline-offset:2px}
h1,h2,h3,h4{font-family:var(--f-head);line-height:var(--lh-head);margin:0 0 .5em;letter-spacing:var(--ls-head);font-weight:var(--fw-head);text-transform:var(--case-head);text-wrap:balance}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);font-weight:var(--fw-h3)}h4{font-weight:var(--fw-h3)}p{text-wrap:pretty}
.wrap{max-width:var(--w-max);margin:0 auto;padding:0 var(--gutter)}.narrow{max-width:820px}.center{text-align:center}.nw{white-space:nowrap}
.ic{flex:none}
.preview-bar{background:#111;color:#fff;text-align:center;font:.85rem/1.5 system-ui,sans-serif;padding:8px 14px}.preview-bar a{color:#ffd66b}
.top{position:sticky;top:0;z-index:40;background:var(--c-bg);border-bottom:1px solid var(--c-line)}
@supports (backdrop-filter:blur(8px)) and (background:color-mix(in srgb,red 50%,blue)){.top{background:color-mix(in srgb,var(--c-bg) 94%,transparent);backdrop-filter:saturate(1.4) blur(8px)}}
.top-in{display:flex;align-items:center;gap:22px;min-height:70px;position:relative}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:var(--fw-black);font-size:1.08rem;min-width:0}
.brand-name{font-family:var(--f-head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logo{height:42px;width:auto}.mark{display:grid;place-items:center;width:38px;height:38px;border-radius:var(--r-sm);background:var(--t-fill);color:var(--t-fill-icon);flex:none}
.nav{display:flex;align-items:center;gap:22px;margin-left:auto;font-weight:var(--fw-semi);font-size:.95rem}.nav>a,.dd>a{text-decoration:none;color:var(--t-fg-2);display:inline-flex;align-items:center;gap:4px;padding:24px 0}
.nav>a:hover,.dd>a:hover,.nav>a[aria-current],.dd>a[aria-current]{color:var(--t-link)}.nav>a[aria-current]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}
.dd{position:relative}.dd-menu{display:none;position:absolute;top:100%;left:-18px;min-width:280px;border:1px solid var(--c-line);border-radius:var(--r-md);box-shadow:0 24px 50px -20px rgba(0,0,0,.35);padding:8px}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{display:block}.dd-menu a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--r-sm);text-decoration:none;font-weight:var(--fw-semi)}.dd-menu a:hover{background:var(--c-chip);color:var(--c-link-chip)}.dd-menu .ic{color:var(--t-link)}.dd-menu .dd-all{border-top:1px solid var(--c-line);border-radius:0 0 var(--r-sm) var(--r-sm);margin-top:4px;color:var(--t-link)}
.mnav{display:none}.mnav summary{list-style:none;cursor:pointer;display:grid;place-items:center;width:44px;height:44px;border-radius:var(--r-sm);border:1px solid var(--t-glass-line)}.mnav summary::-webkit-details-marker{display:none}
.mnav-panel{position:absolute;left:0;right:0;top:100%;border-bottom:1px solid var(--c-line);box-shadow:0 24px 40px -24px rgba(0,0,0,.4);padding:10px var(--gutter) 18px;display:grid;max-height:75vh;overflow:auto}
.mnav-panel a{padding:12px 0;text-decoration:none;font-weight:var(--fw-bold);border-bottom:1px solid var(--c-line)}.mnav-panel a[aria-current]{color:var(--t-link)}.mnav-sub{display:grid;padding-left:14px}.mnav-sub a{font-weight:var(--fw-med);color:var(--t-fg-2)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:var(--r-btn);padding:11px 20px;min-height:44px;text-decoration:none;border:2px solid transparent;cursor:pointer;font:inherit;font-size:var(--fs-btn);font-weight:var(--fw-bold);text-transform:var(--case-btn);letter-spacing:var(--ls-btn);transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px)}.btn-lg{padding:15px 26px;font-size:calc(var(--fs-btn) * 1.05)}.btn-block{width:100%}
.btn-call{background:var(--t-fill);color:var(--t-on-fill)}.btn-accent{background:var(--t-act);color:var(--t-on-act);box-shadow:0 10px 24px -10px var(--t-act)}.btn-ghost{border-color:var(--t-outline);color:var(--t-fg)}.btn-outline{border-color:var(--t-outline);color:var(--t-fg);background:transparent}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}
.hero,.phero{position:relative;background-size:cover;background-position:center;overflow:hidden}.hero{padding:calc(var(--sp-hero) + var(--hdr-over,0px)) 0 var(--sp-hero-b)}.phero{padding:calc(var(--sp-phero) + var(--hdr-over,0px)) 0 var(--sp-phero-b)}
.hero-shade{position:absolute;inset:0;background:radial-gradient(circle at 85% 20%,rgba(255,255,255,.1),transparent 45%)}
.has-photo>.hero-shade{background:linear-gradient(100deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.72) 55%,rgba(0,0,0,.66) 100%)}.phero.has-photo>.hero-shade{background:linear-gradient(100deg,rgba(0,0,0,.88),rgba(0,0,0,.74))}
.has-photo>.hero-shade::after{content:"";position:absolute;inset:0;background:var(--c-dark);opacity:.35}
.hero-in{position:relative}.hero h1{max-width:15ch}.phero h1{font-size:var(--fs-h1p);max-width:24ch}.kicker{display:inline-flex;align-items:center;gap:7px;background:var(--t-glass);border:1px solid var(--t-glass-line);padding:6px 13px;border-radius:999px;font-weight:var(--fw-semi);font-size:.9rem;margin:0 0 18px}
.lead{font-size:clamp(1.05rem,1.8vw,1.25rem);max-width:60ch;color:var(--t-fg-2);margin:0 0 28px}.phero .lead{margin-bottom:20px}.hero-cta{display:flex;flex-wrap:wrap;gap:12px}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.88rem;margin:0 0 14px;color:var(--t-fg-2)}.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}
.chips{list-style:none;padding:0;margin:34px 0 0;display:flex;flex-wrap:wrap;gap:10px}.chips li{display:flex;align-items:center;gap:8px;background:var(--t-glass);border:1px solid var(--t-glass-line);padding:8px 14px;border-radius:var(--r-sm);font-size:.92rem}
.chips-list{display:grid;gap:8px;max-width:640px;margin:0 0 28px}.chips-list li{justify-content:flex-start;font-size:1rem}
.is-funnel .hero{padding:calc(80px + var(--hdr-over,0px)) 0 70px}.is-funnel .foot{padding:28px 0 40px}
.stars{color:var(--t-star-off);letter-spacing:1px;white-space:nowrap}.stars .on{color:var(--t-star)}
.sec{padding:var(--sp-section) 0}.sec-dark a:not(.btn),.tone-deep a:not(.btn){color:var(--t-link)}
.sec-head{max-width:720px;margin:0 0 var(--sp-block)}.sec-head p{color:var(--t-fg-2);font-size:1.08rem;margin:0}
.row-head{max-width:none;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}.row-head>div{max-width:720px}
.more{display:inline-flex;align-items:center;gap:6px;font-weight:var(--fw-bold);color:var(--t-link);text-decoration:none}.more:hover{text-decoration:underline}.more-line{margin:22px 0 0}
.grid{display:grid;gap:var(--gap)}.cards{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}
.card{border:1px solid var(--c-line);border-radius:var(--r);padding:26px;transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column}.card:hover{box-shadow:var(--sh-lift);transform:translateY(-3px)}
.card-link{text-decoration:none}.card p{color:var(--t-fg-2);margin:0 0 16px}.card-more{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-weight:var(--fw-bold);color:var(--t-link);font-size:.95rem}
.card-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:var(--r);background:var(--c-chip);color:var(--c-link-chip);margin-bottom:16px}.sec-soft .card-ic,.tone-band .card-ic{background:var(--c-chip-2);color:var(--c-link-chip-2)}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.split-top{align-items:start}.split-text p{color:var(--t-fg-2);font-size:1.05rem}.split-photo{margin:0}.split-photo img{border-radius:var(--r-img);box-shadow:var(--sh-photo);aspect-ratio:4/3;object-fit:cover;width:100%}
.why{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:16px}.split.solo{grid-template-columns:1fr}.split.solo .split-text{max-width:820px}.split.solo .why{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px}.why li{display:flex;gap:14px}.why-ic{display:grid;place-items:center;width:38px;height:38px;border-radius:var(--r-sm);background:var(--c-fill);color:var(--c-fill-icon);flex:none}.why strong{display:block}.why span{color:var(--t-fg-2);font-size:.95rem}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}.stat{border:1px solid var(--c-line);border-radius:var(--r);padding:26px;text-align:center}.stat strong{display:block;font-family:var(--f-head);font-size:2.2rem;font-weight:var(--fw-head);color:var(--t-link);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat span{color:var(--t-fg-2);font-weight:var(--fw-semi)}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery figure{margin:0}.gallery img{border-radius:var(--r-sm);aspect-ratio:1/1;object-fit:cover;width:100%}
.rating-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.rating-line.big{font-size:1.1rem;margin:0}.reviews{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}
.review{margin:0;background:var(--t-glass);border:1px solid var(--t-glass-line);border-radius:var(--r);padding:24px}.review p{margin:12px 0 16px;font-size:1.02rem}.review footer{font-weight:var(--fw-bold)}.review footer span{font-weight:var(--fw-body)}
.review.light{box-shadow:var(--sh-card);border-color:var(--c-line)}.wall{columns:3 300px;column-gap:22px;margin-bottom:36px}.wall .review{break-inside:avoid;margin:0 0 22px}
.towns{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:8px}.towns li{display:flex;align-items:center;gap:6px;background:var(--t-glass);color:var(--t-fg);border-radius:999px;padding:6px 12px;font-size:.9rem;font-weight:var(--fw-semi)}
.towns li a{display:flex;align-items:center;gap:6px;text-decoration:none}.towns li:has(a):hover{background:var(--c-fill);color:var(--c-on-fill)}.towns-big li{font-size:1rem;padding:9px 16px}
.area-card{border:1px solid var(--c-line);border-radius:var(--r-lg);padding:30px;box-shadow:var(--sh-card)}.area-line{display:flex;gap:10px;align-items:flex-start;margin:0 0 12px;font-weight:var(--fw-semi)}.area-line a{text-decoration:none}.area-line .ic{color:var(--t-link)}
.hours{width:100%;border-collapse:collapse;margin-top:14px;font-size:.95rem;font-variant-numeric:tabular-nums}.hours th{text-align:left;font-weight:var(--fw-semi);padding:6px 0;color:var(--t-fg-2)}.hours td{text-align:right;padding:6px 0}.hours tr+tr{border-top:1px solid var(--c-line)}
.faq{border:1px solid var(--c-line);border-radius:var(--r-sm);padding:0 20px;margin:0 0 10px}.faq summary{cursor:pointer;font-weight:var(--fw-bold);padding:18px 0;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";float:right;font-size:1.3rem;line-height:1.2;color:var(--t-link)}.faq[open] summary::after{content:"–"}.faq p{margin:0 0 18px;color:var(--t-fg-2)}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
.prose{font-size:1.07rem}.prose p{margin:0 0 1.1em}.prose h2{font-size:var(--fs-h2p);margin-top:0}.prose .faq-head{margin-top:44px}.prose a{color:var(--t-link);font-weight:var(--fw-semi)}.prose-photo{margin:0 0 30px}.prose-photo img{border-radius:var(--r-img);aspect-ratio:16/9;object-fit:cover;width:100%}
.side{position:sticky;top:96px;display:grid;gap:18px}.side-card{border:1px solid var(--c-line);border-radius:var(--r-lg);padding:24px;display:grid;gap:12px;box-shadow:var(--sh-card)}.side-card h3{margin:0}
.side-links{list-style:none;padding:0;margin:0;display:grid}.side-links a{display:flex;align-items:center;gap:10px;padding:9px 0;text-decoration:none;font-weight:var(--fw-semi);border-top:1px solid var(--c-line)}.side-links li:first-child a{border-top:0}.side-links .ic{color:var(--t-link)}.side-links a:hover{color:var(--t-link)}
.sec-cta .split-text p{color:var(--t-fg-2)}
.form{border-radius:var(--r-lg);padding:30px;display:grid;gap:14px;box-shadow:var(--sh-form)}.form-light{border:1px solid var(--c-line);box-shadow:var(--sh-card)}.form label{display:grid;gap:6px;font-weight:var(--fw-semi);font-size:.92rem}.form label span{font-weight:var(--fw-body);color:var(--t-fg-2)}
.form input,.form textarea{font:inherit;font-size:1rem;font-weight:var(--fw-body);color:var(--c-ink);border:1px solid var(--c-field);border-radius:var(--r-in);padding:12px 14px;background:var(--c-bg);min-height:48px}.form input:focus,.form textarea:focus{outline:2px solid var(--t-link);outline-offset:1px;border-color:transparent}
.form-note{margin:0;font-size:.88rem;color:var(--c-muted-band);background:var(--c-band);border-radius:var(--r-in);padding:10px 12px}.form-msg{margin:0;font-weight:var(--fw-semi)}.hp{position:absolute;left:-9999px}
.pay-line{display:flex;gap:10px;align-items:flex-start;font-weight:var(--fw-med);color:var(--t-fg-2)}.pay-line strong{color:var(--t-fg)}.pay-line .ic{color:var(--t-link);margin-top:3px}
.social-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.foot{padding:64px 0 0;color:var(--t-fg-2)}.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px}.foot strong{display:block;color:var(--t-fg);font-size:1.1rem;margin-bottom:8px}.foot h4{color:var(--t-fg);font-size:.95rem;margin:0 0 14px}
.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}.foot a{text-decoration:none}.foot a:hover{color:var(--t-fg);text-decoration:underline}.foot-brand p{margin:0 0 16px}.foot-contact li{display:flex;gap:9px;align-items:flex-start}
.social{display:flex;gap:14px}.social a{color:var(--t-fg)}.foot-base{border-top:1px solid var(--t-glass-line);margin-top:44px;padding-top:22px;padding-bottom:40px}.made{margin:0;font-size:.85rem}.made a{color:var(--t-link)}.legal{margin:0 0 12px;font-size:.8rem;line-height:1.55;max-width:var(--measure,72ch);color:var(--t-fg-2)}
.callbar{display:none}
@media (max-width:980px){.layout{grid-template-columns:1fr}.side{position:static}.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:900px){.split.solo .why{grid-template-columns:1fr}.nav{display:none}.btn-call{margin-left:auto}.mnav{display:block}.split{grid-template-columns:1fr;gap:36px}.gallery{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.btn-call span{display:none}.btn-call{padding:11px}.callbar{display:flex;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:50;justify-content:center;align-items:center;gap:10px;background:var(--c-act);color:var(--c-on-act);font-weight:var(--fw-black);text-decoration:none;border-radius:var(--r-btn);padding:15px;min-height:52px;box-shadow:0 14px 30px -12px rgba(0,0,0,.45)}.foot-grid{grid-template-columns:1fr}.foot-base{padding-bottom:100px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}html{scroll-behavior:auto}}
body{font-synthesis:none}
.th-doorstep .hero.has-photo{display:grid;grid-template-columns:minmax(var(--gutter),1fr) minmax(0,calc(var(--w-max) * .5 - var(--gutter))) minmax(0,calc(var(--w-max) * .5 - var(--gutter))) minmax(var(--gutter),1fr);padding:0;background-size:0 0;background-repeat:no-repeat}.th-doorstep .hero.has-photo::before{content:"";grid-column:3/5;grid-row:1;background-image:inherit;background-size:cover;background-position:center;min-height:clamp(440px,62vh,660px)}.th-doorstep .hero.has-photo>.hero-shade{display:none}.th-doorstep .hero.has-photo .hero-in{grid-column:2;grid-row:1;align-self:center;max-width:none;margin:0;padding:calc(var(--sp-hero) * .6) 56px calc(var(--sp-hero-b) * .6) 0}@media (max-width:900px){.th-doorstep .hero.has-photo{grid-template-columns:minmax(0,1fr)}.th-doorstep .hero.has-photo::before{grid-column:1;min-height:0;aspect-ratio:4/3}.th-doorstep .hero.has-photo .hero-in{grid-column:1;grid-row:2;padding:34px var(--gutter) 48px}}
.th-doorstep .hero.has-photo::before{border-radius:var(--r-img) 0 0 var(--r-img);margin:32px 0}@media (max-width:900px){.th-doorstep .hero.has-photo::before{border-radius:var(--r-img);margin:16px var(--gutter) 0}}
/* imported */
.s-imported{position:relative;padding:var(--sec-y,clamp(64px,8vw,112px)) 0;color:var(--t-fg,var(--c-ink))}.s-imported:not([class*="tone-"]){background:var(--c-bg)}.s-imported .s-head{max-width:760px;margin:0 0 clamp(32px,4vw,52px)}.s-imported .s-head--row{max-width:none;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 40px}.s-imported .s-head--row .s-head-in{max-width:720px}.s-imported .s-head--center{margin-inline:auto;text-align:center}.s-imported .s-head--center .s-eyebrow{justify-content:center}.s-imported .s-head h2{margin:0;text-wrap:balance}.s-imported .s-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:var(--step--1,.8125rem);font-weight:var(--fw-semi,600);letter-spacing:.12em;text-transform:uppercase;color:var(--t-link,var(--c-brand-text))}.s-imported .s-eyebrow::before{content:"";width:22px;height:2px;background:currentColor;flex:none}.s-imported .s-lead{margin:16px 0 0;font-size:var(--step-1,1.125rem);line-height:1.6;color:var(--t-fg-2,var(--c-muted));max-width:var(--measure,62ch);text-wrap:pretty}.s-imported .s-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:var(--fw-semi,600);color:var(--t-link,var(--c-brand-text));text-decoration:none;text-underline-offset:4px}.s-imported .s-link:hover{text-decoration:underline}.s-imported .s-link .ic{transition:transform .2s}.s-imported .s-link:hover .ic{transform:translateX(3px)}.s-imported .s-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.s-imported .s-num{font-variant-numeric:tabular-nums}.s-imported p{text-wrap:pretty}.s-imported img{display:block;max-width:100%}@media (prefers-reduced-motion:reduce){.s-imported *{transition:none!important}}.s-imported .s-im-in{max-width:var(--measure,68ch)}.s-imported--wide .s-im-in{max-width:none}.s-imported .s-im-t{margin:0 0 clamp(16px,2.4vw,28px);font-size:var(--step-5,clamp(2rem,1.2rem + 2.6vw,3.2rem));line-height:1.1;text-wrap:balance}.s-imported .s-im-h{margin:clamp(26px,3.2vw,40px) 0 12px;font-size:var(--step-2,1.45rem);line-height:1.25}.s-imported p{margin:0 0 16px;line-height:1.7}.s-imported .s-im-list{margin:0 0 18px;padding-left:1.2em}.s-imported .s-im-list li{margin:0 0 8px;line-height:1.6}.s-imported .s-im-fig{margin:clamp(20px,2.6vw,32px) 0}.s-imported .s-im-fig img{width:100%;height:auto;border-radius:var(--r-img,var(--r-md,12px))}.s-imported .s-im-do{margin:clamp(24px,3vw,36px) 0 0}.s-imported .s-im-hero{margin:0 0 clamp(28px,3.4vw,44px);padding:0 0 clamp(24px,3vw,36px);border-bottom:1px solid var(--line,#e3e7ee)}.s-imported .s-im-hero p{font-size:var(--step-1,1.15rem);line-height:1.6;max-width:60ch}.s-imported .s-im-hero .s-im-do{margin:clamp(18px,2.2vw,26px) 0 0}.s-imported .s-im-rated{margin:0 0 4px;font-weight:600}.s-imported .s-im-call{display:inline-flex;align-items:center}.s-imported .s-im-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:clamp(10px,1.4vw,16px);margin:clamp(20px,2.6vw,32px) 0}.s-imported .s-im-grid figure{margin:0}.s-imported .s-im-grid img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-img,var(--r-md,12px));display:block}
/* services */

/* reviews */

/* contact_band */

/* gallery */

/* area */

@media (max-width:640px){.top .btn-go{display:none}.top .btn-go+.mnav{margin-left:auto}}
@media (max-width:640px){.callbar--go{background:none;padding:0;box-shadow:none;gap:8px}.callbar-go{flex:1;display:flex;justify-content:center;align-items:center;gap:8px;min-height:52px;border-radius:var(--r-btn);background:var(--c-act);color:var(--c-on-act);text-decoration:none;font-weight:var(--fw-black);box-shadow:0 14px 30px -12px rgba(0,0,0,.45)}.callbar-tel{display:grid;place-items:center;width:52px;min-height:52px;border-radius:var(--r-btn);background:var(--c-surface,#fff);color:var(--c-ink,#111);border:1px solid var(--c-line);box-shadow:0 14px 30px -12px rgba(0,0,0,.35)}}
:root{--f-head:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--f-body:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--f-accent:var(--f-head)}
body{font-family:var(--f-body)}h1,h2,h3,h4,.brand-name,.stat strong{font-family:var(--f-head)}
.th-doorstep{--ds-line:color-mix(in srgb,var(--c-ink) 11%,transparent);--ds-card:0 30px 60px -34px color-mix(in srgb,var(--c-dark) 60%,transparent)}
.th-doorstep h1,.th-doorstep h2{letter-spacing:-.03em}

/* ── the top ── */
.th-doorstep .top{background:var(--c-bg);border-bottom-color:var(--ds-line)}
.th-doorstep .top-in{min-height:78px}
.th-doorstep .top .brand-name{font-weight:800;font-size:1.24rem;letter-spacing:-.025em}
.th-doorstep .top .mark{background:var(--c-brand);color:var(--c-on-brand);border-radius:14px}
.th-doorstep .nav{gap:26px;font-weight:600;font-size:.95rem}
.th-doorstep .nav>a,.th-doorstep .dd>a{color:var(--c-muted)}
.th-doorstep .nav>a:hover,.th-doorstep .nav>a[aria-current]{color:var(--c-ink)}
.th-doorstep .top .btn-call{background:var(--t-act);color:var(--t-on-act);box-shadow:none;font-weight:700}

/* ── the hero: the brand field, the form card white on it, the tiles on its edge ── */
.th-doorstep .s-hero--quote{--quote-field:var(--c-brand);--quote-card-bg:var(--c-bg);--quote-card-ink:var(--c-ink);--quote-card-r:var(--r-lg,20px);--quote-card-shadow:var(--ds-card);--quote-stat-bg:var(--c-bg);--quote-stat-ink:var(--c-ink);--quote-stat-overlap:clamp(28px,4vw,56px);--quote-chip-r:999px}
.th-doorstep .s-hero--quote .s-hero-big{font-size:var(--step-6);line-height:1}
.th-doorstep .s-hero--quote .s-hero-what{font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem}
.th-doorstep .s-hero--quote .s-hero-stat-v{font-weight:800;letter-spacing:-.02em}
.th-doorstep .s-hero--quote .btn{font-weight:700}

/* ── the rest: soft cards, one accent ── */
.th-doorstep .s-trust--strip{--trust-chip-bg:var(--c-surface);--trust-chip-radius:999px}
.th-doorstep .s-services--tiles{--svc-tile-bg:var(--c-surface);--svc-tile-line:var(--ds-line);--svc-ic-bg:color-mix(in srgb,var(--c-brand) 12%,var(--c-bg));--svc-ic-fg:var(--c-brand-text);--svc-radius:var(--r-lg,20px);--svc-ic-radius:14px}
.th-doorstep .s-services--tiles .s-svc-tile:hover{box-shadow:var(--ds-card);transform:translateY(-2px)}
.th-doorstep .s-steps--cards .s-steps-item{border-radius:var(--r-lg,20px);background:var(--c-bg);border:1px solid var(--ds-line)}
.th-doorstep .s-steps--cards .s-steps-n{background:var(--c-brand);color:var(--c-on-brand);border-radius:999px}
.th-doorstep .s-reviews--scroll_row .s-reviews-card:not([class*="tone-"]){border-radius:var(--r-lg,20px);border:1px solid var(--ds-line);background:var(--c-surface)}
.th-doorstep .s-offers--coupons{--offer-radius:var(--r-lg,20px)}
.th-doorstep .s-area--grid{--area-chip-bg:var(--c-surface);--area-chip-line:var(--ds-line);--area-radius:999px;--area-home-bg:var(--c-brand);--area-home-fg:var(--c-on-brand)}
.th-doorstep .s-faq details{border-radius:var(--r-md)}

/* ── the end: a call band, never a second form ── */
.th-doorstep .s-cta_band--split{background:var(--c-dark);color:var(--c-on-dark)}
.th-doorstep .s-cta_band--split h2{font-size:var(--step-5)}
.th-doorstep .foot h4{letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}
.th-doorstep .callbar{font-weight:700}

@media (max-width:899px){.th-doorstep .s-hero--quote .s-hero-big{font-size:var(--step-5)}.th-doorstep .s-hero--quote{--quote-stat-overlap:0px}}
@media (max-width:639px){.th-doorstep .top-in{min-height:64px}}
/* ── bands the design re-tones (a theme's own rule wins over the section's page ground) ── */
.th-doorstep .s-steps--cards,.th-doorstep .s-faq{background:var(--c-band);--t-fg-2:var(--c-muted-band);--t-link:var(--c-link-band)}
.tone-base.tone-base{background-color:var(--c-bg);background-image:none;color:var(--c-ink);--t-fg:var(--c-ink);--t-fg-2:var(--c-muted);--t-link:var(--c-link);--t-glass:var(--c-band);--t-glass-line:var(--c-line);--t-outline:var(--c-line);--t-star:var(--c-star);--t-star-off:var(--c-line);--t-edge:var(--c-ink);--t-act:var(--c-act);--t-on-act:var(--c-on-act);--t-fill:var(--c-fill);--t-on-fill:var(--c-on-fill);--t-fill-icon:var(--c-fill-icon)}
.tone-band.tone-band{background-color:var(--c-band);background-image:none;color:var(--c-ink);--t-fg:var(--c-ink);--t-fg-2:var(--c-muted-band);--t-link:var(--c-link-band);--t-glass:var(--c-card-2);--t-glass-line:var(--c-line);--t-outline:var(--c-line);--t-star:var(--c-star);--t-star-off:var(--c-line);--t-edge:var(--c-ink);--t-act:var(--c-act);--t-on-act:var(--c-on-act);--t-fill:var(--c-fill);--t-on-fill:var(--c-on-fill);--t-fill-icon:var(--c-fill-icon)}
.tone-brand.tone-brand{background-color:var(--c-brand);background-image:none;color:var(--c-on-brand);--t-fg:var(--c-on-brand);--t-fg-2:var(--c-on-brand);--t-link:var(--c-on-brand);--t-glass:transparent;--t-glass-line:var(--c-on-brand);--t-outline:var(--c-on-brand);--t-star:var(--c-on-brand);--t-star-off:transparent;--t-edge:var(--c-on-brand);--t-act:var(--c-on-brand);--t-on-act:var(--c-brand);--t-fill:var(--c-on-brand);--t-on-fill:var(--c-brand);--t-fill-icon:var(--c-brand)}
.tone-deep.tone-deep{background-color:var(--c-dark);background-image:none;color:var(--c-on-dark);--t-fg:var(--c-on-dark);--t-fg-2:var(--c-muted-on-dark);--t-link:var(--c-accent-on-dark);--t-glass:rgba(255,255,255,.07);--t-glass-line:rgba(255,255,255,.16);--t-outline:rgba(255,255,255,.7);--t-star:var(--c-accent-on-dark);--t-star-off:rgba(255,255,255,.3);--t-edge:var(--c-on-dark);--t-act:var(--c-act-dark);--t-on-act:var(--c-on-act-dark);--t-fill:var(--c-act-dark);--t-on-fill:var(--c-on-act-dark);--t-fill-icon:var(--c-on-act-dark)}
.tone-accent.tone-accent{background-color:var(--c-accent);background-image:none;color:var(--c-on-accent);--t-fg:var(--c-on-accent);--t-fg-2:var(--c-on-accent);--t-link:var(--c-on-accent);--t-glass:transparent;--t-glass-line:var(--c-on-accent);--t-outline:var(--c-on-accent);--t-star:var(--c-on-accent);--t-star-off:transparent;--t-edge:var(--c-on-accent);--t-act:var(--c-on-accent);--t-on-act:var(--c-accent);--t-fill:var(--c-on-accent);--t-on-fill:var(--c-accent);--t-fill-icon:var(--c-accent)}
.o-size-sm{--fs-base:15.3px;--step--1:13.6px;--step-0:clamp(15px,0vw + 15px,15px);--step-1:clamp(17px,0.217vw + 16.22px,19px);--step-2:clamp(19px,0.543vw + 17.04px,24px);--step-3:clamp(21px,0.978vw + 17.48px,30px);--step-4:clamp(24px,1.522vw + 18.52px,38px);--step-5:clamp(27px,2.174vw + 19.17px,47px);--step-6:clamp(30px,3.152vw + 18.65px,59px)}.o-size-sm.o-size-sm h1{font-size:calc(var(--fs-h1) * .9)}.o-size-sm.o-size-sm h2{font-size:calc(var(--fs-h2) * .9)}.o-size-sm.o-size-sm h3{font-size:calc(var(--fs-h3) * .9)}.o-size-lg{--fs-base:19.6px;--step--1:17.4px;--step-0:clamp(20px,0vw + 20px,20px);--step-1:clamp(22px,0.326vw + 20.83px,25px);--step-2:clamp(24px,0.761vw + 21.26px,31px);--step-3:clamp(27px,1.304vw + 22.3px,39px);--step-4:clamp(30px,1.957vw + 22.96px,48px);--step-5:clamp(34px,2.935vw + 23.43px,61px);--step-6:clamp(38px,4.13vw + 23.13px,76px)}.o-size-lg.o-size-lg h1{font-size:calc(var(--fs-h1) * 1.15)}.o-size-lg.o-size-lg h2{font-size:calc(var(--fs-h2) * 1.15)}.o-size-lg.o-size-lg h3{font-size:calc(var(--fs-h3) * 1.15)}.o-size-xl{--fs-base:22.4px;--step--1:20px;--step-0:clamp(22px,0vw + 22px,22px);--step-1:clamp(25px,0.326vw + 23.83px,28px);--step-2:clamp(28px,0.761vw + 25.26px,35px);--step-3:clamp(31px,1.413vw + 25.91px,44px);--step-4:clamp(35px,2.174vw + 27.17px,55px);--step-5:clamp(39px,3.261vw + 27.26px,69px);--step-6:clamp(44px,4.674vw + 27.17px,87px)}.o-size-xl.o-size-xl h1{font-size:calc(var(--fs-h1) * 1.32)}.o-size-xl.o-size-xl h2{font-size:calc(var(--fs-h2) * 1.32)}.o-size-xl.o-size-xl h3{font-size:calc(var(--fs-h3) * 1.32)}
.o-space-tight{--sec-y:48px;--sp-section:48px}.o-space-roomy{--sec-y:128px;--sp-section:128px}@media (max-width:900px){.o-space-tight{--sec-y:38px;--sp-section:38px}.o-space-roomy{--sec-y:86px;--sp-section:86px}}
.o-wide{--w-max:1420px}.o-full{--w-max:100%}
.o-align-center.o-align-center{text-align:center}.o-align-center.o-align-center h1,.o-align-center.o-align-center h2,.o-align-center.o-align-center h3,.o-align-center.o-align-center h4,.o-align-center.o-align-center p,.o-align-center.o-align-center li,.o-align-center.o-align-center .s-lead,.o-align-center.o-align-center .s-eyebrow,.o-align-center.o-align-center .s-head,.o-align-center.o-align-center .sec-head,.o-align-center.o-align-center .s-head-in{text-align:center}.o-align-center.o-align-center .s-head,.o-align-center.o-align-center .sec-head,.o-align-center.o-align-center .s-lead,.o-align-center.o-align-center .s-head-in{margin-inline:auto}.o-align-center.o-align-center .s-eyebrow{justify-content:center}.o-align-center.o-align-center .s-eyebrow::before{display:none}
.o-align-left.o-align-left{text-align:left}.o-align-left.o-align-left h1,.o-align-left.o-align-left h2,.o-align-left.o-align-left h3,.o-align-left.o-align-left h4,.o-align-left.o-align-left p,.o-align-left.o-align-left li,.o-align-left.o-align-left .s-lead,.o-align-left.o-align-left .s-eyebrow,.o-align-left.o-align-left .s-head,.o-align-left.o-align-left .sec-head,.o-align-left.o-align-left .s-head-in{text-align:left}.o-align-left.o-align-left .s-head,.o-align-left.o-align-left .sec-head,.o-align-left.o-align-left .s-lead,.o-align-left.o-align-left .s-head-in{margin-inline:0}.o-align-left.o-align-left .s-eyebrow{justify-content:flex-start}

