@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";*{box-sizing:border-box}body{margin:0;font-family:DM Sans,sans-serif;background:#f4f6f7;color:#17232d}.app{min-height:100vh;display:flex}aside{width:245px;background:#111b24;color:#dce5eb;padding:25px 18px;display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;margin-bottom:30px}.mark{width:40px;height:40px;border:1px solid #718492;border-radius:9px;display:grid;place-items:center;font-size:22px;font-weight:800}.brand b,.brand span{display:block}.brand b{font-size:14px;color:#fff}.brand span{font-size:8px;letter-spacing:.08em;color:#92a4b1}nav{display:grid;gap:5px}nav button{background:none;border:0;color:#afbec9;text-align:left;padding:12px;border-radius:8px;cursor:pointer}nav button.active,nav button:hover{background:#22323f;color:#fff}.foot{margin-top:auto;border-top:1px solid #293842;padding:18px 8px;color:#8497a5;font-size:11px;line-height:1.8}.foot b{color:#fff}main{flex:1}header{height:86px;background:#fff;border-bottom:1px solid #e0e6e9;padding:0 40px;display:flex;align-items:center;justify-content:space-between}header small,section small{font-size:10px;letter-spacing:.14em;font-weight:700;color:#758794}h1{font-size:25px;margin:2px 0;font-family:Manrope}section{padding:34px 40px;max-width:1350px}.primary,.secondary{padding:11px 16px;border-radius:7px;font-weight:700;cursor:pointer}.primary{background:#1d5368;color:#fff;border:1px solid #1d5368}.secondary{background:#fff;border:1px solid #cbd5da}.welcome,.upload,.hero{background:#fff;border:1px solid #e0e6e9;border-radius:12px;padding:34px}.welcome{display:flex;justify-content:space-between;align-items:end;gap:25px}.welcome h2,.upload h2,.hero h2{font:800 28px Manrope;max-width:700px;margin:6px 0 10px}.welcome p,.upload p,.hero p{color:#62737e}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:18px}.metric{background:#fff;border:1px solid #e0e6e9;border-radius:10px;padding:20px}.metric strong{display:block;font:800 27px Manrope}.metric span{font-size:12px;color:#73838d}.head{display:flex;justify-content:space-between;align-items:center;gap:15px}.head h2{font:800 18px Manrope}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:18px}.card{background:#fff;border:1px solid #e0e6e9;border-radius:10px;padding:22px}.card h3{font:800 17px Manrope;margin:18px 0 4px}.card p,.card small{color:#73838d;font-size:12px}.table{margin-top:18px;background:#fff;border:1px solid #e0e6e9;border-radius:10px;overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th,td{padding:14px 16px;text-align:left;border-bottom:1px solid #edf0f2}th{font-size:10px;color:#758590;text-transform:uppercase}td small{color:#758590}.head input{padding:10px;border:1px solid #cbd5da;border-radius:7px}.hero{background:#182731;color:#fff}.hero small{color:#a9bcc7}.hero h2{color:#fff}.hero p{color:#c4d1d8}.upload{display:grid;grid-template-columns:1.4fr .6fr;gap:25px}.drop{margin:20px 0 12px;border:2px dashed #cbd5da;border-radius:10px;padding:38px;display:flex;flex-direction:column;align-items:center;gap:7px;cursor:pointer}.drop input{display:none}.drop span{font-size:11px;color:#7a8993}.wide{width:100%}.guard{background:#f0f4f6;border-radius:10px;padding:22px}.guard h3{font:800 16px Manrope}.guard p,.guard li{font-size:12px;color:#61727f}.list{margin-top:18px;background:#fff;border:1px solid #e0e6e9;border-radius:10px;padding:20px}.list b,.list span{display:block;padding:10px}.list span{font-size:12px;color:#74848e}.toast{position:fixed;right:25px;bottom:25px;background:#172731;color:#fff;padding:13px 17px;border-radius:8px;font-size:12px}.menuButton{display:none;background:#fff;border:1px solid #cbd5da;border-radius:8px;padding:9px 11px;font-size:18px;cursor:pointer}.scrim{display:none}@media(max-width:800px){.app{display:block}aside{position:fixed;z-index:30;inset:0 auto 0 0;width:min(82vw,285px);transform:translate(-105%);transition:transform .2s ease;box-shadow:0 0 35px #0000002e}aside.open{transform:translate(0)}main{width:100%;min-width:0}header{height:auto;min-height:78px;padding:14px 16px;gap:12px;position:sticky;top:0;z-index:15}.menuButton{display:block;flex:0 0 auto}.headerTitle{min-width:0;flex:1}.headerTitle small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}header h1{font-size:20px}header .primary{padding:10px 12px;font-size:12px;white-space:nowrap}section{padding:20px 16px;max-width:100%;overflow:hidden}.welcome{align-items:flex-start;flex-direction:column;padding:24px}.welcome h2,.upload h2,.hero h2{font-size:23px}.metrics,.cards{grid-template-columns:1fr 1fr}.upload{grid-template-columns:1fr;padding:22px}.drop{padding:28px 14px;text-align:center}.head{align-items:stretch;flex-direction:column}.head input{width:100%}.table{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}table{min-width:720px}.hero{padding:24px}.scrim{display:block;position:fixed;z-index:20;inset:0;border:0;background:#00000059}.toast{left:16px;right:16px;bottom:16px;text-align:center}}@media(max-width:480px){.metrics,.cards{grid-template-columns:1fr}header .primary{font-size:0;padding:10px 12px}header .primary:after{content:"+ Inspection";font-size:12px}.brand{margin-bottom:18px}nav button{padding:11px}.metric{padding:16px}}.leadSearch{display:flex;gap:12px;margin-top:18px;align-items:center}.leadSearch input{flex:1;min-width:0}.leadList{display:grid;gap:14px;margin-top:18px}.leadCard h3{margin:8px 0}.leadMeta{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:12px;font-size:13px}.leadError{margin-top:14px;font-weight:700}@media(max-width:700px){.leadSearch{flex-direction:column;align-items:stretch}.leadSearch .primary{width:100%}.leadMeta{flex-direction:column;gap:6px}}.serviceSpotlight{margin-top:18px;background:#fff;border:1px solid #e0e6e9;border-radius:12px;padding:30px}.serviceSpotlight h2{font:800 28px Manrope;margin:6px 0 2px}.serviceSpotlight h3{font:700 17px Manrope;margin:0 0 14px;color:#536873}.serviceSpotlight p{max-width:920px;color:#62737e;line-height:1.65}.serviceActions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px}.serviceActions span{font-size:12px;color:#73838d}.serviceLink{display:inline-block;text-decoration:none}.finishingLine{display:block;margin-top:22px;font:800 18px Manrope;color:#1d5368}@media(max-width:800px){.serviceSpotlight{padding:24px}.serviceSpotlight h2{font-size:23px}.serviceActions{align-items:stretch;flex-direction:column}.serviceLink{text-align:center}}.businessPaths{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}.businessPath{border:1px solid #e0e6e9;border-radius:10px;padding:20px;background:#f8fafb}.businessPath h3{margin:8px 0;font:800 17px Manrope;color:#17232d}.businessPath p{font-size:13px}.pricingSeparation{margin-top:18px;padding:14px 16px;border-left:3px solid #1d5368;background:#f0f4f6;border-radius:6px}.contactAnchor{display:block;font-size:12px;color:#73838d;margin-top:10px;scroll-margin-top:100px}@media(max-width:900px){.businessPaths{grid-template-columns:1fr}}.authShell{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f4f6f7}.authCard{width:min(440px,100%);background:#fff;border:1px solid #e0e6e9;border-radius:14px;padding:32px;box-shadow:0 18px 50px #17232d14}.authCard h2{font:800 25px Manrope;margin:8px 0}.authCard p{color:#62737e;line-height:1.55}.authCard input{width:100%;padding:12px 13px;border:1px solid #cbd5da;border-radius:8px;margin:7px 0;font:inherit}.authCard .wide{margin-top:10px}.authSwitch{width:100%;margin-top:10px;border:0;background:transparent;color:#1d5368;font-weight:700;cursor:pointer;padding:9px}.fieldLabel{display:grid;gap:7px;margin:14px 0;font-size:12px;font-weight:700;color:#536873}.fieldLabel select{width:100%;padding:11px 12px;border:1px solid #cbd5da;border-radius:8px;background:#fff;color:#17232d;font:inherit}.primary:disabled{opacity:.6;cursor:wait}.authShell{background:#081722}.authLayout{width:min(1080px,100%);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:clamp(20px,5vw,70px)}.authBrand{min-width:0}.authBrand img{display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 25px 70px #00000047}.authCard{justify-self:stretch}@media(max-width:700px){.authShell{padding:16px}.authLayout{max-width:440px;grid-template-columns:1fr;gap:16px}.authBrand img{width:min(100%,350px);margin:auto}.authCard{padding:24px}}.brandMark{display:block;width:52px;height:52px;object-fit:cover;border-radius:9px;flex:none}.welcomeBrand{display:grid;justify-items:center;gap:14px;flex:0 0 min(25%,220px)}.welcomeBrand img{display:block;width:100%;max-width:220px;height:auto;border-radius:10px}@media(max-width:700px){.welcome{align-items:stretch}.welcomeBrand{width:100%;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:start;gap:16px}.welcomeBrand img{width:min(100%,150px)}.welcomeBrand .primary{white-space:normal}}@media(max-width:400px){.welcomeBrand{grid-template-columns:1fr}.welcomeBrand img{width:140px}}.publicSite{min-height:100vh;background:#f4f6f7}.publicNav{height:auto;min-height:82px;position:sticky;top:0;z-index:50;padding:10px clamp(16px,4vw,54px);display:flex;gap:18px;align-items:center;background:#fffffff7}.logoButton{border:0;background:transparent;cursor:pointer;padding:0}.logoButton img{width:62px;height:62px;object-fit:contain}.publicLinks{display:flex;gap:4px;flex:1;justify-content:center}.publicLinks button,.textButton{border:0;background:transparent;cursor:pointer;padding:10px;font-weight:700;color:#344955}.publicHero{max-width:1350px;margin:auto;padding:70px clamp(20px,6vw,90px);display:grid;grid-template-columns:minmax(220px,380px) 1fr;gap:55px;align-items:center}.publicHero img{width:100%;max-width:360px;border-radius:20px}.publicHero h1{font:800 clamp(34px,5vw,62px)/1.05 Manrope;margin:10px 0 18px}.publicHero p,.publicSection>p{font-size:17px;line-height:1.7;color:#5d707c;max-width:850px}.heroActions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.publicSection{max-width:1250px;margin:22px auto;padding:55px clamp(24px,5vw,65px);background:#fff;border:1px solid #e0e6e9;border-radius:18px}.publicSection h2{font:800 clamp(28px,4vw,44px) Manrope;margin:8px 0 12px}.featureDark{background:#172731;color:#fff}.featureDark>p,.featureDark .finePrint{color:#c6d3da}.featureDark small{color:#9fb5c0}.offer{margin:25px 0;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.offer b{background:#fff;color:#172731;padding:7px 10px;border-radius:6px}.offer span{font-weight:700}.featureDark .textButton{color:#fff;margin-left:10px}.planGrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.planCard{background:#fff;color:#17232d;border-radius:14px;padding:28px}.planCard h3{font:800 24px Manrope;margin:8px 0}.planCard strong{display:block;font:800 28px Manrope;margin-bottom:10px}.planCard p{color:#637580;min-height:50px}.finePrint{font-size:12px!important;margin-top:20px}.quoteCta{text-align:center}.quoteCta p{margin:0 auto 22px}.publicFooter{text-align:center;padding:35px 20px 55px;color:#6d7e88;font-size:12px}@media(max-width:850px){.publicLinks{display:none}.publicNav{justify-content:space-between}.publicHero{grid-template-columns:1fr;padding-top:35px;gap:20px}.publicHero img{max-width:190px}.planGrid{grid-template-columns:1fr}.publicSection{margin:14px 12px}.featureDark .textButton{display:block;margin:10px 0 0}.publicHero h1{font-size:38px}}.envelopeGallery{margin:32px 0 24px}.envelopeGallery h3{font:800 22px Manrope;margin:0 0 8px}.envelopeGallery>p{font-size:15px;line-height:1.55;max-width:780px;color:#536873}.envelopePairs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:20px}.envelopePair{margin:0;border:1px solid #dce5e9;border-radius:12px;overflow:hidden;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:#f8fafb}.envelopePhoto{min-width:0;display:flex;flex-direction:column}.envelopePhoto span{padding:10px 12px;font-size:13px;font-weight:700;color:#223945}.envelopePhoto img{display:block;width:100%;height:260px;object-fit:cover;object-position:center}.envelopePair figcaption{grid-column:1/-1;padding:10px 12px;font-size:12px;color:#637580}@media(max-width:900px){.envelopePairs{grid-template-columns:1fr}}@media(max-width:450px){.envelopePhoto img{height:190px}.envelopeGallery h3{font-size:20px}}.serviceActions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.workNav{justify-content:space-between}.workPage{width:min(1250px,100%);margin:auto;padding:clamp(24px,5vw,64px)}.workPage h1{font:800 clamp(27px,4vw,45px) Manrope;margin:12px 0}.workPage>p{max-width:850px;color:#536873;line-height:1.65}.workPage .envelopePairs{margin-bottom:32px}.caulkingGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0 32px}.caulkingPhoto{margin:0;min-width:0;background:#fff;border:1px solid #dce5e9;border-radius:12px;overflow:hidden}.caulkingPhoto img{display:block;width:100%;height:320px;object-fit:contain;background:#e8edf0}.caulkingPhoto figcaption{padding:12px 14px;font-size:14px;color:#344955}@media(max-width:850px){.caulkingGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.caulkingGrid{grid-template-columns:1fr}.caulkingPhoto img{height:auto;max-height:460px}.workNav .secondary{font-size:13px}}.poolProjects{max-width:none;padding:28px 0 12px;margin:0 0 24px;border-top:1px solid #dce5e9}.poolProjects h2{font:800 clamp(24px,3vw,32px) Manrope;margin:0 0 10px}.poolProjects>p{color:#536873;line-height:1.6;max-width:760px}.poolProjectGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0}.poolProjectGrid article{min-width:0;padding:24px;background:#fff;border:1px solid #dce5e9;border-radius:12px}.poolProjectGrid h3{font:800 20px Manrope;margin:0 0 8px}.poolProjectGrid p{color:#637580;margin:0}@media(max-width:600px){.poolProjectGrid{grid-template-columns:1fr}.poolProjectGrid article{padding:20px}}.quoteForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:820px;margin-top:1.25rem}.quoteForm label{display:grid;gap:.35rem;font-weight:600}.quoteForm label:has(textarea),.quoteForm button,.quoteForm p{grid-column:1 / -1}.quoteForm input,.quoteForm select,.quoteForm textarea{width:100%;box-sizing:border-box;border:1px solid #c9d0d4;border-radius:6px;padding:.7rem;font:inherit}.quoteForm .honeypot{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}@media(max-width:650px){.quoteForm{grid-template-columns:1fr}}
