@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--text:#f0f5f6;--muted:#9aafb9;--accent:#8de4ee}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{margin:0;color:var(--text);background:#070e14;font-family:'DM Sans',Arial,sans-serif;-webkit-text-size-adjust:100%}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:7px}.skip{position:fixed;left:20px;top:-100px;z-index:100;background:#fff;color:#09151c;padding:16px}.skip:focus{top:10px}header{position:fixed;inset:0 0 auto;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:30px 5%}.brand{display:flex;align-items:center;gap:9px;font:800 22px/1.1 Manrope,Arial,sans-serif;letter-spacing:-.8px}.brand svg{width:22px;height:29px;color:var(--accent)}.brand small{display:block;font:500 8px/1.5 'DM Sans',sans-serif;letter-spacing:2px;margin-top:4px}.concept{font-size:10px;letter-spacing:2px;color:#7b939f}.header-link{font-size:13px;min-height:44px;display:flex;align-items:center;border-bottom:1px solid #ffffff30}.stage{position:fixed;inset:0;overflow:hidden;background:radial-gradient(ellipse at 69% 54%,#18313e 0%,#0a1721 43%,#070d13 75%)}#scene{position:absolute;inset:0}canvas{display:block;width:100%;height:100%}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#040a10bb,transparent 23%,transparent 80%,#040a1077),linear-gradient(90deg,#070e1440,transparent 70%)}.ambient-word{position:absolute;bottom:5%;left:29%;font:700 clamp(130px,22vw,360px)/1 Manrope,sans-serif;letter-spacing:-20px;color:#ffffff025;opacity:.035;pointer-events:none}.scroll-space{height:680svh;min-height:4100px}.chapter{position:absolute;left:8%;top:50%;width:39%;max-width:650px;transform:translateY(-45%);opacity:0;pointer-events:none;will-change:opacity,transform}.chapter.active{pointer-events:auto}.kicker{font-size:11px;letter-spacing:2.3px;color:#a6bec7;margin-bottom:30px;line-height:1.6;display:flex;gap:10px;align-items:center}.kicker>span{width:5px;height:5px;background:#8de4ee;border-radius:50%;box-shadow:0 0 14px #8de4ee}h1,h2{font:500 clamp(58px,6.6vw,104px)/1.04 Manrope,Arial,sans-serif;letter-spacing:-4.6px;margin:0 0 30px;text-wrap:balance}em{font-family:Georgia,serif;font-weight:400;color:#b7dee5}p{font-size:18px;line-height:1.75;color:var(--muted);margin:0;max-width:39ch}.chapter-tag{font-size:13px;color:#7ca3b0;margin-top:35px}.detail-tag{display:block;font-size:10px;line-height:1.7;letter-spacing:1.5px;color:#78929f;margin-top:35px}.cta{display:inline-flex;align-items:center;justify-content:center;min-height:54px;background:#d5f0ef;border:1px solid #fff5;color:#102e36;padding:16px 25px;border-radius:100px;font-size:16px;font-weight:600;margin-top:28px;transition:background .2s}.cta:hover{background:white}.scene-label{position:absolute;right:8%;bottom:21%;display:flex;gap:14px;align-items:center;font-size:9px;letter-spacing:1.5px;color:#9fbbc6;pointer-events:none}.label-line{width:42px;height:1px;background:#5d8292}.chapters{position:fixed;right:25px;top:50%;transform:translateY(-50%);z-index:15;display:grid;gap:9px}.chapters button{border:0;background:none;display:flex;align-items:center;gap:10px;min-width:44px;min-height:44px;color:#718b97;font-size:10px;padding:5px}.chapters i{width:6px;height:6px;border:1px solid #72919e;border-radius:50%;transition:.3s}.chapters .selected i{background:#a9eef3;border-color:#a9eef3;box-shadow:0 0 14px #a9eef388}.chapters .selected{color:#cdebf1}.chapters b{position:absolute;right:50px;white-space:nowrap;font-size:11px;font-weight:400;opacity:0;pointer-events:none}.chapters button:hover b,.chapters button:focus-visible b{opacity:1}footer{position:fixed;bottom:0;left:0;right:0;padding:24px 5%;display:flex;align-items:center;gap:25px;z-index:15;font-size:9px;letter-spacing:1.7px;color:#849ea9;background:linear-gradient(transparent,#070e1490)}#scroll-cue{width:155px;flex-shrink:0}.track{width:140px;height:1px;background:#7896a43b}.track span{display:block;background:#b4eced;height:1px;transform-origin:left;transform:scaleX(0)}.prototype-note{margin-left:auto;font-size:8px;letter-spacing:1.1px}#percentage{font-variant-numeric:tabular-nums;color:#b8d3dd;font-size:12px;min-width:28px}.loading{position:absolute;right:25%;top:48%;font-size:12px;color:#9eb9c4;line-height:2;transition:opacity .6s}.loading>span{display:block;width:120px;height:1px;background:#8de4ee;margin:12px auto;animation:load 1.3s infinite;transform-origin:left}.ready .loading{opacity:0;pointer-events:none}.fallback{display:none}.no-webgl .fallback{display:block;position:absolute;right:7%;width:40%;top:25%;text-align:center}.fallback img{width:70%;max-height:50svh;object-fit:contain}.fallback p{font-size:14px;margin:20px auto}.no-webgl .loading{display:none}@keyframes load{50%{transform:scaleX(.2);opacity:.3}}
@media(min-width:1700px){.chapter{left:max(8%,calc((100% - 1450px)/2))}}
@media(max-width:1100px){.concept{display:none}h1,h2{font-size:clamp(52px,6.8vw,78px);letter-spacing:-3px}.chapter{left:6%;width:40%}p{font-size:17px}.chapters{right:12px}.scene-label{right:6%;max-width:220px;line-height:1.7}.prototype-note{font-size:7px}.track{width:90px}}
@media(max-width:700px), (max-width:900px) and (orientation:portrait){header{padding:20px 6%;gap:18px}.brand{font-size:19px}.brand svg{width:19px}.brand small{font-size:7px;letter-spacing:1.5px}.header-link{font-size:11px}.chapter{left:7%;right:7%;width:auto;max-width:none;top:125px;transform:none}.kicker{font-size:9px;letter-spacing:1.6px;margin-bottom:17px}h1,h2{font-size:clamp(42px,11.6vw,65px);letter-spacing:-2.3px;line-height:1.03;margin-bottom:18px}p{font-size:16px;line-height:1.6;max-width:32ch}.chapter-tag{margin-top:18px;font-size:12px}.detail-tag{font-size:8px;letter-spacing:1px;margin-top:18px}.cta{font-size:15px;min-height:48px;margin-top:18px;padding:13px 23px}.chapter[data-chapter="4"] p{max-width:27ch}.chapter[data-chapter="4"] .detail-tag{display:none}.chapters{right:4px;top:auto;bottom:90px;transform:none;gap:0}.chapters button{min-height:34px;min-width:34px;justify-content:center;gap:0}.chapters button span{display:none}.chapters button b{display:none}.chapters i{width:5px;height:5px}footer{padding:20px 6%;gap:18px;min-height:70px}#scroll-cue{width:auto;font-size:8px;letter-spacing:1.2px}.track{flex:1;max-width:110px}.prototype-note{display:none}#percentage{margin-left:auto}.scene-label{bottom:13%;right:13%;font-size:8px;letter-spacing:.8px}.label-line{width:24px}.ambient-word{left:8%;bottom:12%;font-size:170px;letter-spacing:-12px}.loading{right:20%;top:65%;font-size:10px}.scroll-space{height:630svh;min-height:3600px}.no-webgl .fallback{right:20%;width:60%;top:48%}.fallback p{font-size:11px}}
@media(max-width:360px){.chapter{top:115px}h1,h2{font-size:40px}.chapter p{font-size:15px}.chapter-tag{display:none}}
@media(max-height:650px) and (min-width:701px){header{padding-top:15px}.chapter{top:47%}h1,h2{font-size:55px;margin-bottom:20px}.kicker{margin-bottom:15px}p{font-size:16px}.detail-tag{margin-top:20px}.chapters button{min-height:32px}footer{padding:15px 5%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.chapter{will-change:auto}}

[hidden]{display:none!important}
@media(max-width:700px), (max-width:900px) and (orientation:portrait){.scene-label{display:none}.chapters button{min-height:44px;min-width:36px}.chapters{bottom:85px}}

@media(max-width:700px) and (max-height:700px){.chapter{top:104px}.kicker{font-size:8px;margin-bottom:12px}h1,h2{font-size:36px;margin-bottom:14px}.chapter p{font-size:15px}.detail-tag,.chapter-tag{display:none}.cta{min-height:44px;font-size:14px;margin-top:13px}header{padding-top:12px}footer{min-height:50px;padding-top:12px;padding-bottom:12px}}
/* Chat call-to-action buttons */
button.header-link{color:inherit;background:none;border:0;border-bottom:1px solid #ffffff30;font-family:inherit;cursor:pointer;padding:0;font-size:14px}
button.cta{font-family:inherit;cursor:pointer}
@media(max-width:600px){button.header-link{font-size:13px;min-height:44px}}
/* A clear offer first, then a readable homeowner guide. */
#story{position:relative;height:600svh;min-height:3600px}
#story .stage{position:sticky;inset:auto;top:0;height:100svh;width:100%}
#story .scroll-space{display:none}
header{background:linear-gradient(#070e14c9,transparent);padding-top:20px;padding-bottom:20px}
.header-nav{display:flex;gap:26px;font-size:14px;color:#c4d7df}.header-nav a{min-height:44px;display:flex;align-items:center}
button.header-link{border:1px solid #b0e1e14a!important;border-radius:100px;padding:12px 19px!important;background:#d5f0ef!important;color:#123440!important;font-size:14px!important;min-height:46px}
.chapter h1,.chapter h2{font-size:clamp(54px,5.7vw,88px);letter-spacing:-3.6px;line-height:1.08}
.chapter p{font-size:18px;max-width:37ch;line-height:1.7}
.chapter .kicker{font-size:10px;letter-spacing:1.7px;margin-bottom:24px}
.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.hero-actions .cta{margin-top:25px}
.secondary-link{font-size:14px;color:#c1dce3;text-decoration:underline;text-underline-offset:5px;display:inline-flex;align-items:center;min-height:44px}
.hero-trust{font-size:12px;color:#a1bdc7;line-height:1.6;margin-top:12px}
.chapter-cta{border:0;border-bottom:1px solid #7fbdc17a;background:none;color:#c4eff1;font:500 15px/1.4 'DM Sans',sans-serif;min-height:44px;padding:10px 0;margin-top:20px}
.chapter-phone{display:block;font-size:13px;line-height:1.6;color:#a9c5cf;margin-top:18px;min-height:44px;max-width:30ch}
.chapter .detail-tag{font-size:9px;line-height:1.7;margin-top:22px;max-width:40ch;letter-spacing:1px}
body.past-story .progress-footer,body.past-story>.chapters{display:none}
body.past-story>header{background:#0a1821f5;backdrop-filter:blur(15px);border-bottom:1px solid #ffffff12}
.home-content{position:relative;z-index:3;background:#f5f8f7;color:#153b47;font-size:18px}
.home-content .content-section{padding:100px max(7%,calc((100% - 1280px)/2));scroll-margin-top:105px}
.home-content .section-eyebrow{font-size:11px;font-weight:600;line-height:1.65;letter-spacing:1.6px;color:#48717d;margin-bottom:27px}
.home-content h2{font:500 clamp(38px,4.4vw,65px)/1.13 Manrope,Arial,sans-serif;letter-spacing:-2.3px;color:#163e49;margin:0;text-wrap:balance}
.home-content em{color:#2e7380}
.home-content p{font-size:18px;line-height:1.75;color:#4d6973;max-width:58ch}
.section-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:end;margin-bottom:50px}
.concern-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.info-card{border-top:1px solid #b7cdd1;padding:24px 0 0}.info-card>span{font-size:11px;letter-spacing:1.3px;color:#4e7883}
.home-content h3{font:500 24px/1.3 Manrope,Arial,sans-serif;letter-spacing:-.65px;margin:23px 0 15px;color:#153f4a;text-wrap:pretty}
.info-card p{font-size:17px}.home-content .context-note{font-size:15px;max-width:90ch;margin:35px 0 0;padding:20px 24px;background:#e9f0f0;border-radius:8px}
.visit{background:#e9f1f1}.visit-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding:0;margin:0}
.visit-steps>li{padding-top:21px;border-top:1px solid #afc7ce}.visit-steps>li>span{font-size:14px;color:#4e7f8b}.visit-steps h3{margin-top:25px}.visit-steps p{font-size:17px}
.content-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:40px}.content-cta{border:0;border-radius:100px;min-height:54px;padding:17px 26px;background:#153e49;color:white;font:500 16px/1.3 'DM Sans',sans-serif;cursor:pointer;max-width:100%}.content-cta:hover{background:#276c7e}.content-actions>a{font-size:15px;min-height:44px;display:inline-flex;align-items:center;color:#315d6b}
.local-team{display:grid;grid-template-columns:1.1fr .9fr;gap:85px;align-items:center}.local-copy p{margin-top:25px;max-width:45ch}.contact-card{border:1px solid #bad1d6;background:#edf3f3;border-radius:14px;padding:35px}.contact-card>span{font-size:10px;line-height:1.7;letter-spacing:1.4px;color:#487683}.contact-card h3{font-size:27px}.contact-card p{font-size:17px}.contact-card button{font:500 16px 'DM Sans',sans-serif;color:#174f61;background:none;border:0;border-bottom:1px solid #6b9ca5;min-height:48px;cursor:pointer;padding:12px 0;margin-top:20px}.contact-lines{display:grid;gap:5px;border-top:1px solid #c9dadd;padding-top:20px;margin-top:20px}.contact-lines a{font-size:16px;min-height:44px;display:flex;align-items:center;overflow-wrap:anywhere}
.questions{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;border-top:1px solid #d8e3e5}.faq-list details{border-bottom:1px solid #c7d9dd}.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:24px 0;font-size:18px;line-height:1.5;min-height:65px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:25px;color:#5c818b;flex-shrink:0}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{font-size:17px;padding-bottom:25px}
.home-content .final-invite{background:#dcebed;text-align:center}.final-invite p{margin:25px auto}.final-invite .section-eyebrow{margin-bottom:25px}.final-phone{font-size:15px;min-height:44px;display:flex;justify-content:center;align-items:center;margin-top:20px;color:#345d67}
.site-footer{position:relative;inset:auto;background:#0b1b24;color:#a7c2cd;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:35px 7%;letter-spacing:0;font-size:14px;gap:25px}.site-footer .brand{color:#e1eef0;font-size:23px}.site-footer .brand small{font-size:12px;letter-spacing:1px;margin:0}.site-footer>div{display:flex;gap:25px}.site-footer a{min-height:44px;display:flex;align-items:center}.site-footer>small{flex-basis:100%;font-size:12px;color:#94b0bb;padding-top:20px;border-top:1px solid #ffffff18}
.home-content :focus-visible{outline:3px solid #267a91;outline-offset:5px}
.home-content .reveal{opacity:0;transform:translateX(-26px);transition:opacity .65s ease,transform .75s cubic-bezier(.22,1,.36,1)}.home-content .in-view{opacity:1;transform:none}.concern-grid>:nth-child(2),.visit-steps>:nth-child(2){transition-delay:.1s}.concern-grid>:nth-child(3),.visit-steps>:nth-child(3){transition-delay:.2s}
@media(max-width:1100px){.header-nav{gap:18px;font-size:13px}.chapter h1,.chapter h2{font-size:clamp(48px,5.8vw,65px);letter-spacing:-2.6px}.chapter p{font-size:17px}.hero-trust{max-width:25ch}.chapter .kicker{font-size:9px}.section-heading{gap:40px}.local-team{gap:40px}.questions{gap:40px}}
@media(max-width:900px){.home-content .content-section{padding:75px 6%}.section-heading{grid-template-columns:1fr;gap:27px;margin-bottom:35px}.section-heading p{max-width:60ch}.concern-grid{grid-template-columns:1fr;gap:30px}.info-card{display:grid;grid-template-columns:1fr 1.3fr;gap:10px 30px}.info-card>span{grid-column:1}.info-card h3{grid-column:1;margin:8px 0}.info-card p{grid-column:2;grid-row:1/3}.local-team,.questions{grid-template-columns:1fr;gap:35px}.local-copy p{max-width:60ch}.contact-card{max-width:600px}.visit-steps{gap:25px}.home-content h3{font-size:22px}.visit-steps p{font-size:16px}}
@media(max-width:700px), (max-width:900px) and (orientation:portrait){
 .header-nav{display:none}header{padding:13px 6%}button.header-link{font-size:11px!important;max-width:155px;line-height:1.4;padding:10px 15px!important}.chapter[data-chapter="0"]{top:112px}.chapter h1,.chapter h2{font-size:clamp(40px,11.5vw,61px);letter-spacing:-2.1px;line-height:1.08}.chapter .kicker{font-size:8px;line-height:1.6;letter-spacing:1.2px;margin-bottom:17px}.chapter p{font-size:16px;line-height:1.65;max-width:34ch}.hero-actions .cta{font-size:15px;margin-top:19px;min-height:48px;padding:14px 22px}.hero-actions{gap:2px}.secondary-link{font-size:13px;min-height:40px}.hero-trust{font-size:11px;margin-top:7px;max-width:none}.chapter-cta{margin-top:10px;font-size:14px}.chapter .detail-tag{font-size:8px;margin-top:15px;line-height:1.6}.chapter-phone{font-size:12px;margin-top:10px}.chapter[data-chapter="4"] .cta{margin-top:18px}.chapter[data-chapter="4"] p{max-width:33ch}
}
@media(max-width:600px){
 .home-content .content-section{padding:62px 6%;scroll-margin-top:88px}.home-content .section-eyebrow{font-size:10px;margin-bottom:22px;letter-spacing:1.3px}.home-content h2{font-size:clamp(34px,9.7vw,48px);letter-spacing:-1.6px}.home-content p{font-size:17px;line-height:1.75}.info-card{display:block;padding-top:20px}.home-content h3{font-size:23px;line-height:1.3}.info-card h3{margin:17px 0 12px}.info-card>span{font-size:10px}.home-content .context-note{font-size:14px;padding:18px;margin-top:30px}.visit-steps{grid-template-columns:1fr;gap:27px}.visit-steps>li{display:grid;grid-template-columns:27px 1fr;gap:14px}.visit-steps>li>span{padding-top:5px}.visit-steps h3{margin:0 0 12px;font-size:22px}.visit-steps p{font-size:17px}.content-actions{gap:15px;margin-top:30px}.content-cta{font-size:15px;padding:16px 22px;min-height:52px}.content-actions>a{font-size:14px}.contact-card{padding:26px}.contact-card h3{font-size:25px}.contact-card p{font-size:17px}.contact-card button{font-size:15px}.contact-lines a{font-size:15px}.faq-list summary{font-size:17px;padding:22px 0}.faq-list p{font-size:17px}.site-footer{padding:30px 6%;gap:20px}.site-footer>div{font-size:14px;flex-wrap:wrap;gap:15px}.site-footer>span{font-size:13px}.site-footer>small{font-size:11px}.final-phone{font-size:14px}.final-invite p{margin:22px auto}.home-content .reveal{transform:translateX(-15px)}.home-content .in-view{transform:none}
}
@media(max-width:700px) and (max-height:700px){.chapter[data-chapter="0"]{top:96px}.chapter h1,.chapter h2{font-size:35px;margin-bottom:13px}.chapter p{font-size:14px;line-height:1.55;max-width:36ch}.chapter .kicker{font-size:7px;margin-bottom:12px}.hero-actions .cta{font-size:14px;min-height:44px;padding:12px 20px;margin-top:15px}.secondary-link{min-height:36px;font-size:12px}.hero-trust{font-size:10px;margin-top:4px}.chapter[data-chapter="4"] .cta{min-height:44px;font-size:14px;padding:12px 19px}.chapter-phone{font-size:11px;margin-top:5px}}
@media(prefers-reduced-motion:reduce){.home-content .reveal{opacity:1;transform:none;transition:none}}

.customer-note{margin:30px 0 0;padding:22px 24px;border-left:2px solid #5d939e;background:#e9f1f1}.customer-note p{margin:0;font-size:19px;color:#244f5c}.customer-note cite{display:block;font-style:normal;font-size:13px;color:#526f78;margin-top:17px}.customer-note a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;color:#3d6f7b;text-decoration:underline;text-underline-offset:3px}
