@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;600;700&family=Source+Serif+4:wght@600;700&display=swap');
:root{--paper:#fbfaf7;--ink:#232c33;--muted:#5c6770;--navy:#1d3a5f;--deep:#16293f;--wash:#e7edf4;--line:#d5dde5;--serif:'Source Serif 4',Georgia,serif;--sans:'Source Sans 3',Arial,sans-serif;--space:clamp(2rem,6vw,5rem)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 var(--sans)}a{color:inherit}a:focus-visible{outline:3px solid #ef8c45;outline-offset:3px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:3px solid #ef8c45;outline-offset:3px}a[href^="tel:"],a[href^="sms:"]{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}.wrap{max-width:1180px;padding:0 20px;margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;z-index:10;background:#fff;padding:1rem}header{background:#fff;border-bottom:1px solid var(--line)}.bar{max-width:1180px;margin:auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.brand{font:600 1.15rem var(--serif);color:var(--navy);text-decoration:none}.nav{display:flex;flex-wrap:wrap}.nav a{padding:10px;min-height:44px;text-decoration:none;font-weight:600}.nav a:hover{text-decoration:underline;text-underline-offset:4px;color:var(--navy)}.quick{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.quick a{font-weight:700;color:var(--navy);text-decoration:none;min-width:0;overflow-wrap:anywhere}.quick a.btn{color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 18px;background:var(--navy);color:#fff;text-decoration:none;font-weight:700;border-radius:4px;transition:background .15s}.btn:hover{background:var(--deep)}.btn.light{background:#fff;color:var(--navy)}.hero,.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,60px);align-items:center}.hero{padding:clamp(36px,6vw,80px) 0}.hero img,.photo{width:100%;height:100%;min-height:310px;object-fit:cover}.hero h1,.page-hero h1{font:600 clamp(2.2rem,5vw,4rem)/1.08 var(--serif);color:var(--navy);margin:.35rem 0 1rem;max-width:17ch}.eyebrow,.label{font-size:.77rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:var(--navy);margin:0 0 .45rem}.lead{font-size:1.15rem;max-width:52ch;color:#364652}.actions,.phones{display:flex;gap:12px;flex-wrap:wrap;margin:1.2rem 0}.phones a{font-weight:700;color:var(--navy);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}.section{padding:var(--space) 0}.white{background:white}.wash{background:var(--wash)}.dark{background:var(--deep);color:#fff}.section h2{font:600 clamp(1.8rem,3.8vw,3rem)/1.15 var(--serif);color:var(--navy);margin:.2rem 0 1rem}.dark h2,.dark .label{color:#fff}.trust,.grid,.cities{display:grid;gap:14px}.trust{grid-template-columns:repeat(4,1fr)}.trust div{padding:18px;background:#fff;border-top:4px solid var(--navy);font-weight:700;color:var(--navy)}.grid{grid-template-columns:repeat(3,1fr)}.card,.city{background:#fff;padding:22px;border:1px solid var(--line);border-top:4px solid var(--navy)}.card h3,.city h3,.service h3,.service h2{font:600 1.5rem/1.2 var(--serif);color:var(--navy);margin:.2rem 0 .5rem}.service h2{font-size:1.55rem}.cities{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.service{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:28px;padding:20px 0;border-bottom:1px solid var(--line)}.service:nth-child(even) img{order:2}.service img{width:100%;height:270px;object-fit:cover}.visual-break{position:relative;margin:0}.visual-break img{width:100%;height:420px;object-fit:cover}.visual-break figcaption{position:absolute;bottom:15px;left:20px;background:#fff;padding:10px;color:var(--navy);font-weight:700}.page-hero{padding:48px 0 28px}.page-hero img{width:100%;height:320px;object-fit:cover}.cta{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.small{color:var(--muted);font-size:.94rem}.chips span{display:inline-block;background:var(--wash);padding:8px 12px;color:var(--navy);font-weight:600;margin:4px}.badge{position:fixed;right:12px;bottom:12px;padding:7px 10px;background:#fff;border:1px solid var(--line);color:var(--navy);text-decoration:none;font-size:12px;z-index:5;box-shadow:0 2px 8px #0002}footer{background:var(--deep);color:#fff;padding:32px 0 64px}footer a{color:#fff}footer .foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}#wixheadless-banner-container{display:none!important}
.offer-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin:1.2rem 0;padding:14px 18px;background:var(--wash);border-left:4px solid var(--navy)}.offer-price .was{color:var(--muted);text-decoration:line-through;font-weight:600}.offer-price .now{font:600 clamp(1.6rem,4vw,2.3rem)/1.1 var(--serif);color:var(--navy)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.num{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--navy);color:#fff;font:600 1.3rem var(--serif)}.terms{padding-left:1.2rem;margin:0}.terms li{margin:.5rem 0}.home-offer{margin:.4rem 0 0}.home-offer a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:var(--navy)}.offer-hero .split img{width:100%;height:100%;min-height:310px;max-height:460px;object-fit:cover}
footer .nav a:hover{color:#fff}.hero h1,.page-hero h1,.label,.lead{overflow-wrap:anywhere}.offer-hero .split>div{min-width:0}@media(max-width:850px){.hero,.split{grid-template-columns:1fr}.quick{margin-left:auto}.grid{grid-template-columns:repeat(2,1fr)}.trust{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.steps{grid-template-columns:1fr}}@media(max-width:560px){.offer-hero .split img{min-height:230px}body{font-size:16px}.wrap{padding:0 16px}.bar{padding:10px 16px}.quick{width:100%;justify-content:space-between}.quick a{font-size:.86rem}.nav{width:100%;justify-content:space-between}.nav a{font-size:.86rem;padding:8px}.hero{padding:32px 0}.hero img{min-height:250px;max-height:380px}.grid,.cities{grid-template-columns:1fr}.trust{grid-template-columns:1fr 1fr}.trust div{padding:12px;font-size:.92rem}.service{grid-template-columns:1fr}.service:nth-child(even) img{order:0}.service img{height:230px}.section{padding:40px 0}.visual-break img{height:300px}.page-hero{padding:32px 0 20px}.page-hero img{height:250px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.rail-wrap{position:relative}.rail{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 0 14px;-webkit-overflow-scrolling:touch}.rail:focus-visible{outline:3px solid #ef8c45;outline-offset:3px}.rail figure{margin:0;flex:0 0 min(78%,420px);scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-top:4px solid var(--navy)}.rail img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}.rail-nav{display:flex;gap:10px;margin-top:6px}.rail-nav button{min-width:48px;min-height:48px;border:0;border-radius:4px;background:var(--navy);color:#fff;font:700 1.3rem var(--sans);cursor:pointer;transition:background .15s}.rail-nav button:hover{background:var(--deep)}.rail-nav button:focus-visible{outline:3px solid #ef8c45;outline-offset:3px}
.reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.rev{margin:0;padding:22px;background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--navy);display:flex;flex-direction:column;justify-content:space-between;gap:14px}.rev blockquote{margin:0}.rev p{margin:0}.rev figcaption{font-weight:700;color:var(--navy);display:flex;flex-direction:column}.rev figcaption span{font-weight:400;color:var(--muted);font-size:.9rem}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.facts .city p{margin:.4rem 0}.city h3 a{color:var(--navy)}.page-hero .actions{margin:1.2rem 0 .6rem}
.mbar{display:none}.pick{position:relative;flex:1;min-width:0}.pick summary{list-style:none;cursor:pointer}.pick summary::-webkit-details-marker{display:none}.pick .menu{position:absolute;bottom:calc(100% + 8px);left:0;min-width:230px;background:#fff;border:1px solid var(--line);box-shadow:0 4px 16px #0003;padding:6px}.pick .menu a{display:flex;align-items:center;min-height:48px;padding:8px 12px;color:var(--navy);font-weight:700;text-decoration:none}.pick .menu a:hover{background:var(--wash)}
.mbtn{display:flex;align-items:center;justify-content:center;flex:1;min-height:48px;padding:8px 10px;background:var(--navy);color:#fff;font-weight:700;text-decoration:none;border-radius:4px;border:0;font-size:1rem;font-family:var(--sans)}.mbtn:hover{background:var(--deep)}.mbtn.est{background:#fff;color:var(--navy);border:2px solid var(--navy)}.mbtn:focus-visible{outline:3px solid #ef8c45;outline-offset:2px}
footer p{margin:.4rem 0}
@media(max-width:850px){.rail figure{flex-basis:min(78%,380px)}.reviews,.facts{grid-template-columns:1fr}.mbar{display:flex;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:9;padding:8px 10px;background:#fff;border-top:1px solid var(--line);box-shadow:0 -2px 10px #0002}body{padding-bottom:72px}.badge,a[data-symphony-badge]{bottom:80px!important}.pick:last-of-type .menu{left:auto;right:0}}
@media(min-width:851px){.rail figure{flex-basis:calc((100% - 28px)/3)}}
main p>a:not(.btn),main li>a:not(.btn){display:inline-flex;align-items:center;min-height:44px}.city h3 a{display:inline-flex;align-items:center;min-height:44px}.lead a,.small a{min-height:0}

.brand{display:inline-flex;align-items:center;min-height:44px}.logo{display:block;height:96px;width:auto;max-width:100%}.foot-logo{height:110px}@media(max-width:560px){.logo{height:76px}.foot-logo{height:96px}}
/* Wix Forms mount: estimate + after-photo pages */
.aform{max-width:640px;margin:0 auto;background:#fff;border:1px solid var(--line);border-top:4px solid var(--navy);padding:clamp(20px,3vw,34px)}
.aform,.ffields{display:grid;gap:18px}
.ffield{display:grid;gap:8px}
.flabel{font-weight:600;color:var(--navy)}
.flabel.clabel{font-weight:400;color:var(--muted)}
.fctl{width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid var(--line);border-radius:4px;font:400 1rem var(--sans);color:var(--ink);background:#fff}
.fctl:focus-visible{outline:3px solid #ef8c45;outline-offset:2px}
textarea.fctl{resize:vertical;min-height:110px}
.ffile{padding:10px;border:1px dashed var(--line);background:var(--wash)}
.ferr{font-size:.92rem;color:#b33;min-height:1.2rem}
.ferr:not(.on){display:none}
.fmsg{font-weight:600;color:var(--navy)}
.fskel{color:var(--muted)}
.fsubmit{min-height:48px;padding:10px 22px;border:0;border-radius:4px;background:var(--navy);color:#fff;font:700 1rem var(--sans);cursor:pointer}
.fsubmit:hover{background:var(--deep)}
.fsubmit:disabled{opacity:.6;cursor:default}
.fthanks{background:var(--wash);border-left:4px solid var(--navy);padding:16px 20px}
.fthanks p{margin:.4rem 0}
.fcheck-row{display:flex;gap:10px;align-items:flex-start;background:var(--wash);padding:12px}
.fcheck{width:44px;height:44px;min-width:44px;min-height:44px;flex:0 0 44px;margin:0;cursor:pointer}
.fcheck-row .clabel{min-height:44px;display:flex;align-items:center}
@media(max-width:560px){.aform{padding:18px 14px}}

.markets-photo{display:block;width:100%;max-height:340px;object-fit:cover;margin:18px 0 24px;border:1px solid var(--line)}
.fnudge{margin:.35rem 0 0;color:var(--muted);font-size:.94rem}.fnudge:empty{display:none}

.dist{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-top:4px solid var(--navy);margin:1rem 0}.dist caption{caption-side:top;text-align:left;padding:0 0 .6rem;font-weight:700;color:var(--navy)}.dist th,.dist td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line)}.dist th{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);background:var(--wash)}.dist tr.beyond td{color:var(--muted)}.dist tbody tr:last-child td{border-bottom:0}@media(max-width:560px){.dist th,.dist td{padding:10px 8px;font-size:.94rem}}
.dist th,.dist td,.dist caption{overflow-wrap:anywhere;word-break:normal}.dist{table-layout:fixed}.dist th:first-child,.dist td:first-child{width:38%}
