@font-face{font-family:Barlow;src:url('/assets/heading.woff2') format('woff2');font-weight:700;font-display:swap}@font-face{font-family:Manrope;src:url('/assets/body.woff2') format('woff2');font-weight:400 800;font-display:swap}
:root{--paper:#f3f1e7;--ink:#22291f;--orange:#fb683e;--muted:#626858;--olive:#d9ddbd;--line:#c8cbb9;--display:Barlow,'Arial Narrow',Impact,sans-serif;--sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b13816;outline-offset:5px}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:.96;font-family:var(--display);letter-spacing:-.015em}p{max-width:60ch}button{border:0}::selection{background:var(--orange);color:var(--ink)}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}.eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:.13em;line-height:1.6}.header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;border-bottom:1px solid var(--line);position:relative;z-index:10;background:var(--paper)}.brand{font-family:var(--display);font-size:49px;line-height:.85;display:flex;align-items:center;letter-spacing:-.04em}.brand-dot{color:var(--orange)}.brand-sub{font-family:var(--sans);font-size:9px;font-weight:800;letter-spacing:.12em;line-height:1.55;margin-left:19px;padding-left:19px;border-left:1px solid var(--line)}.desktop-nav{display:flex;align-items:center;gap:36px;font-size:12px;font-weight:700}.desktop-nav>a:not(.button){position:relative}.desktop-nav>a:not(.button):after{content:'';position:absolute;left:0;bottom:-4px;height:2px;width:0;background:var(--orange);transition:width .2s}.desktop-nav>a:hover:after{width:100%}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;background:var(--orange);padding:19px 25px;font-size:13px;line-height:1.3;font-weight:800;border:1px solid transparent;transition:background .2s,transform .2s,box-shadow .2s}.button span{font-size:22px;font-weight:500;line-height:1}.button:hover{background:#ff7a52;transform:translateY(-2px);box-shadow:0 6px 0 rgba(34,41,31,.12)}.button.small{padding:14px 20px;gap:26px}.menu-toggle,.mobile-nav{display:none}.hero{display:grid;grid-template-columns:.96fr 1.04fr;max-width:1600px;margin:auto;padding:58px 4.5% 64px;gap:32px;align-items:center}.hero-copy{padding:7px 0 4px}.hero .eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:24px}.status-dot{height:7px;width:7px;border-radius:100%;background:var(--orange)}h1{font-size:clamp(76px,7.6vw,116px);line-height:.92;letter-spacing:-.025em;margin-left:-3px}h1>span{color:var(--orange)}.hero-intro{font-size:15px;max-width:380px;margin-top:25px;line-height:1.8}.hero-copy>.button{margin-top:28px}.hero-phone{display:block;font-size:11px;margin-top:17px;color:var(--muted)}.hero-phone strong{color:var(--ink);margin-left:4px;font-weight:700}.home-explorer{background:#e6e8d5;border:1px solid #c8ceaf;position:relative;margin-left:12px}.scene-top{display:flex;align-items:center;justify-content:space-between;padding:18px 21px 0;font-size:9px;font-weight:800;letter-spacing:.12em}.crosshair{font-size:24px;line-height:1}.house-stage{position:relative;aspect-ratio:720/530;isolation:isolate}.house{width:100%;height:100%;display:block;transition:filter .4s;overflow:visible}.blueprint-label{position:absolute;left:17px;top:35%;writing-mode:vertical-rl;transform:rotate(180deg);font-size:7px;letter-spacing:.15em;color:#59654b}.hotspot{position:absolute;display:grid;place-items:center;background:var(--ink);color:white;border:2px solid var(--paper);box-shadow:0 3px 8px #22291f22;border-radius:50%;width:34px;height:34px;padding:0;font-size:10px;font-weight:800;transition:background .2s,transform .2s,box-shadow .2s}.hotspot:hover,.hotspot.active{background:var(--orange);color:var(--ink);transform:scale(1.12);box-shadow:0 0 0 7px #fb683e25}.hotspot-tip{position:absolute;left:50%;bottom:calc(100% + 13px);transform:translateX(-50%);color:var(--paper);background:var(--ink);padding:4px 9px;white-space:nowrap;font-size:9px;opacity:0;pointer-events:none;transition:opacity .2s}.hotspot:hover .hotspot-tip,.hotspot:focus-visible .hotspot-tip{opacity:1}.hp-paint{left:52%;top:53%}.hp-trim{left:31%;top:58%}.hp-deck{left:29%;top:77%}.hp-fence{left:81%;top:77%}.hp-air{left:84%;top:65%}.hp-electric{left:68%;top:62%}.scene-caption{font-size:10px;display:flex;align-items:center;gap:10px;padding:6px 20px 17px;color:#505943}.cue{font-size:20px}.scene-detail{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--ink);color:var(--paper);padding:22px 24px;min-height:149px}.scene-detail>div{max-width:360px}.scene-detail #scene-number{font-size:8px;font-weight:800;letter-spacing:.14em;color:#c1caa8}.scene-detail h2{font-size:31px;margin:7px 0 8px;line-height:1}.scene-detail p{font-size:10px;line-height:1.7;color:#d2d5c6}.circle-arrow{background:var(--orange);border-radius:50%;width:42px;height:42px;flex:none;font-size:27px;transition:transform .2s}.circle-arrow:hover{transform:rotate(45deg)}.service-band{background:var(--ink);color:#e4e6d6;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 4.5%;overflow:hidden;white-space:nowrap;font-family:var(--display);font-size:24px;letter-spacing:.025em}.service-band i{font-style:normal;color:var(--orange);font-size:23px}.section-pad{padding:98px 6.8%;max-width:1600px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:48px}.section-heading .eyebrow{margin-bottom:21px}h2{font-size:clamp(45px,5.1vw,76px)}h2>span{color:#72795e}.section-heading>p{font-size:13px;max-width:290px;padding-bottom:4px;line-height:1.9}.service-builder{display:grid;grid-template-columns:1.65fr 1fr;gap:54px;align-items:start}.service-row{display:flex;align-items:center;text-align:left;gap:27px;width:100%;padding:24px 2px;border-top:1px solid var(--line);background:transparent;transition:padding .25s,background .25s}.service-row:last-child{border-bottom:1px solid var(--line)}.row-no{font-size:10px;color:#747c64;align-self:flex-start;margin-top:6px}.service-row strong{font-family:var(--display);font-size:31px;font-weight:700;line-height:1.15;display:block}.service-row small{display:block;font-size:11px;margin-top:6px;color:var(--muted)}.add-icon{margin-left:auto;font-size:26px;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;line-height:1;flex:none;transition:background .2s,transform .2s}.service-row:hover{padding-left:12px;background:#e9ebdb}.service-row[aria-pressed=true] .add-icon{background:var(--orange);border-color:var(--orange);transform:rotate(45deg)}.project-card{background:var(--olive);padding:30px 31px 32px;position:sticky;top:25px}.card-icon{font-size:46px;line-height:1;display:block;padding-bottom:37px}.project-card .eyebrow{font-size:9px}.project-card h3{font-size:45px;margin:15px 0 23px}.project-card p{font-size:11px;line-height:1.8;max-width:225px}.project-card .button{margin-top:28px;width:100%}.button.light{background:var(--ink);color:var(--paper)}.button.light:hover{background:#3b4831}.project-card>small{font-size:9px;display:block;margin-top:12px;opacity:.8}.project-card ul{list-style:none;padding:0;margin:0;min-height:0}.project-card li{border-bottom:1px solid #b4bc9a;font-size:12px;padding:8px 0;display:flex;align-items:center;gap:6px;justify-content:space-between}.remove-service{font-size:20px;background:transparent;line-height:1;width:30px;height:30px;display:grid;place-items:center}.local{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:#e5e7d7;align-items:center;max-width:none;padding-top:80px;padding-bottom:80px}.profile-photo{position:relative;overflow:hidden;max-width:620px}.profile-photo:before{content:'';position:absolute;z-index:1;inset:13px;border:1px solid #f1f0e844;pointer-events:none}.profile-photo img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}.photo-label{position:absolute;bottom:20px;left:20px;background:var(--paper);padding:9px 12px;font-size:8px;font-weight:800;letter-spacing:.05em}.local-copy{max-width:500px}.local-copy>.eyebrow{margin-bottom:22px}.local-copy h2{font-size:clamp(52px,5.2vw,79px)}.local-copy .large-copy{font-size:18px;line-height:1.65;margin-top:25px;font-weight:600;max-width:300px}.local-copy>p:not(.large-copy){font-size:12px;line-height:1.9;margin-top:16px;max-width:350px}.local-details{margin:27px 0 20px;border-top:1px solid #bdc4a9}.local-details>div{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #bdc4a9;font-size:10px}.local-details span{letter-spacing:.08em;font-size:8px;font-weight:700}.local-details strong,.local-details a{font-weight:700}.text-link{font-size:11px;font-weight:800;display:inline-flex;gap:25px;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:5px;background:transparent}.text-link:hover{color:#a63d20}.process{padding-top:96px;padding-bottom:96px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.process-grid article{border-top:1px solid var(--line);padding-top:20px}.process-grid article>span{font-size:11px;color:#747c64}.process-grid h3{font-size:32px;margin:25px 0 15px;line-height:1.1}.process-grid p{font-size:12px;line-height:1.9;max-width:300px}.contact{background:var(--ink);color:var(--paper);max-width:none;display:grid;grid-template-columns:1fr 1.2fr;gap:9%;padding-top:85px;padding-bottom:85px}.contact-copy>.eyebrow{color:#c6cdad;margin-bottom:25px}.contact-copy h2{font-size:clamp(57px,5.5vw,83px)}.contact-copy h2>span{color:var(--orange)}.contact-copy>p{font-size:13px;margin-top:22px}.preview-note{border-top:1px solid #59634d;border-bottom:1px solid #59634d;padding:20px 0;margin-top:37px;display:flex;gap:13px;max-width:350px}.preview-note>span{color:var(--orange)}.preview-note p{font-size:10px;line-height:1.9;color:#ccd2bf}.preview-note strong{font-weight:700;color:var(--paper)}.contact-phone{font-family:var(--display);font-size:37px;display:flex;justify-content:space-between;align-items:center;gap:18px;max-width:350px;margin-top:28px}.contact-phone>span{font-size:26px;color:var(--orange)}.call-caption{font-size:9px;color:#c3cbb5}.quote-form{font-size:11px;max-width:660px}.quote-form fieldset{border:0;margin:0 0 24px;padding:0}.quote-form legend{padding:0;margin-bottom:14px;font-weight:700}.quote-form label{display:block;font-weight:700}.quote-form legend>span,.quote-form label>span{font-weight:400;color:#bac3aa}.form-services{display:flex;gap:7px;flex-wrap:wrap}.form-services label{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:500;border:1px solid #59654a;padding:8px 10px;cursor:pointer}.form-services label:has(input:checked){background:#465438;border-color:#bdc9a5}.form-services input{width:13px!important;height:13px;margin:0!important;accent-color:var(--orange)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}.quote-form input:not([type=checkbox]),.quote-form textarea,.quote-form select{display:block;background:#2c3527;color:var(--paper);border:1px solid #606a51;border-radius:0;padding:13px 12px;width:100%;margin-top:9px;margin-bottom:22px;font-weight:400;font-size:12px;line-height:1.4}.quote-form textarea{resize:vertical;min-height:110px}.quote-form input::placeholder,.quote-form textarea::placeholder{color:#b8c0a9;opacity:1}.quote-form select{appearance:auto}.quote-form [aria-invalid=true]{border-color:#ff9d80!important}.quote-form>.button{width:100%;margin-top:5px}.form-caption{font-size:9px;text-align:center;margin-top:12px;color:#bfc7b0}.form-error{background:#693522;padding:12px 15px;margin-bottom:20px}.preview-result{margin-top:24px;padding:22px;background:#404e34;border-left:3px solid var(--orange)}.preview-result strong{font-size:14px;line-height:1.6}.preview-result p{margin:12px 0 18px;font-size:11px}.preview-result .text-link{color:var(--paper);border-color:var(--paper)}footer{display:flex;align-items:center;gap:33px;padding:36px 4.5%;font-size:10px;flex-wrap:wrap}.footer-brand{font-size:41px}footer>p{font-size:8px;letter-spacing:.1em}footer>a:not(.brand){margin-left:auto;font-weight:800}footer>span{font-size:8px;color:#6b735e}.footer-privacy{background:transparent;font-size:8px;text-decoration:underline;text-underline-offset:3px}.reveal{opacity:1;transform:none}.js-motion .reveal.pending{opacity:0;transform:translateY(20px)}.js-motion .reveal{transition:opacity .6s,transform .6s}dialog{border:0;max-width:540px;width:calc(100% - 40px);padding:42px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#15200ed9}dialog h2{font-size:42px;margin:16px 0 20px}dialog p{font-size:12px;margin-top:15px;line-height:1.9}#privacy-close{position:absolute;right:15px;top:10px;font-size:28px;background:transparent;min-width:35px;min-height:35px}
@media(min-width:1500px){.hero{gap:80px}.local{padding-left:max(6.8%,calc((100vw - 1382px)/2));padding-right:max(6.8%,calc((100vw - 1382px)/2))}.contact{padding-left:max(6.8%,calc((100vw - 1382px)/2));padding-right:max(6.8%,calc((100vw - 1382px)/2))}}
@media(max-width:1050px){.hero{gap:18px;padding-top:40px}h1{font-size:8.5vw}.hero-intro{font-size:13px}.hero .eyebrow{font-size:9px}.home-explorer{margin-left:0}.scene-detail{padding:19px;min-height:155px}.scene-detail h2{font-size:26px}.scene-detail p{font-size:9px}.hotspot{width:30px;height:30px}.scene-top{font-size:7px}.scene-caption{font-size:8px}.service-band{font-size:19px;gap:13px}.service-band i{font-size:18px}.section-pad{padding:72px 5%}.service-builder{gap:30px;grid-template-columns:1.4fr 1fr}.project-card{padding:26px}.project-card h3{font-size:37px}.service-row{gap:18px}.service-row strong{font-size:28px}.service-row small{font-size:10px}.local{gap:6%}.local-copy>.eyebrow{font-size:9px}.local-copy .large-copy{font-size:16px}.local-copy>p:not(.large-copy){font-size:11px}.process-grid{gap:30px}.contact{gap:6%}.quote-form{font-size:10px}.form-grid{gap:13px}.contact-phone{font-size:31px}.desktop-nav{gap:25px}}
@media(max-width:760px){html{scroll-padding-top:30px}.header{height:84px;padding:0 6%}.brand{font-size:43px}.brand-sub{font-size:7px;margin-left:13px;padding-left:13px}.desktop-nav{display:none}.menu-toggle{display:flex;align-items:center;gap:12px;background:transparent;font-size:11px;font-weight:800;padding:12px 0}.menu-toggle>span{font-size:19px}.mobile-nav:not([hidden]){display:flex;flex-direction:column;background:var(--ink);color:var(--paper);padding:20px 6%;gap:0}.mobile-nav a{padding:13px 0;border-bottom:1px solid #5c664e;font-size:13px}.hero{grid-template-columns:1fr;padding:38px 6% 38px;gap:37px}.hero-copy{padding:0}.hero .eyebrow{font-size:9px;margin-bottom:23px}h1{font-size:clamp(52px,15vw,100px);line-height:.92}.hero-intro{font-size:13px;line-height:1.8;margin-top:22px;max-width:400px}.hero-copy>.button{margin-top:22px;padding:17px 22px}.hero-phone{font-size:10px;margin-top:14px}.home-explorer{width:100%;max-width:620px}.scene-top{font-size:8px;padding-top:18px}.scene-caption{font-size:9px;padding-left:18px}.hotspot{width:33px;height:33px;font-size:9px}.house-stage{aspect-ratio:720/525}.scene-detail{min-height:148px;padding:21px}.scene-detail h2{font-size:31px}.scene-detail p{font-size:10px;max-width:300px}.scene-detail #scene-number{font-size:8px}.service-band{gap:25px;justify-content:flex-start;padding:21px 6%;font-size:23px}.service-band i{font-size:22px}.section-pad{padding:61px 6%}.section-heading{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:30px}.section-heading .eyebrow{font-size:9px;margin-bottom:17px}h2{font-size:55px}.section-heading>p{font-size:12px;max-width:370px}.service-builder{grid-template-columns:1fr;gap:28px}.service-row{gap:19px;padding:22px 0}.service-row strong{font-size:30px}.service-row small{font-size:10px}.row-no{font-size:9px}.project-card{position:static;padding:27px}.card-icon{font-size:34px;padding-bottom:20px}.project-card h3{font-size:43px;margin:12px 0 17px}.project-card p{max-width:none}.project-card .button{margin-top:22px}.project-card>small{font-size:9px}.local{grid-template-columns:1fr;gap:34px;padding-top:45px;padding-bottom:52px}.profile-photo{max-width:none}.local-copy h2{font-size:59px}.local-copy .large-copy{font-size:17px;margin-top:24px}.local-copy>p:not(.large-copy){font-size:12px;max-width:none}.local-details>div{font-size:11px}.local-details span{font-size:8px}.text-link{font-size:12px}.process-grid{grid-template-columns:1fr;gap:27px}.process-grid article{display:grid;grid-template-columns:35px 1fr;column-gap:15px;row-gap:13px;padding-top:22px}.process-grid article>span{grid-row:1/3;font-size:11px;margin-top:3px}.process-grid h3{font-size:32px;margin:0}.process-grid p{font-size:12px;max-width:none}.contact{grid-template-columns:1fr;gap:40px}.contact-copy h2{font-size:65px}.contact-copy>.eyebrow{font-size:9px;margin-bottom:19px}.preview-note{max-width:none;margin-top:25px}.preview-note p{font-size:11px}.contact-phone{font-size:36px;max-width:none}.quote-form{max-width:none;font-size:11px}.quote-form legend{font-size:12px}.form-services label{font-size:10px;padding:9px 11px}.form-services{gap:8px}.form-grid{gap:14px}.quote-form input:not([type=checkbox]),.quote-form textarea,.quote-form select{font-size:16px;padding:12px 10px}.quote-form input::placeholder,.quote-form textarea::placeholder{font-size:12px}.quote-form .button{font-size:13px}.form-caption{font-size:10px}.preview-result p{font-size:12px}footer{padding:30px 6%;gap:20px;display:grid;grid-template-columns:1fr 1fr}.footer-brand{font-size:43px}footer>a:not(.brand){margin-left:0;font-size:11px;grid-column:1/3}footer>span{font-size:9px}.footer-privacy{justify-self:end;font-size:9px}.photo-label{font-size:7px;left:18px;bottom:18px}}
@media(max-width:380px){.brand-sub{font-size:6px;margin-left:10px;padding-left:10px}h1{font-size:15vw}.hero{padding-left:5%;padding-right:5%}.section-pad{padding-left:5%;padding-right:5%}.scene-top{font-size:7px}.scene-caption{font-size:8px}.scene-detail{padding:19px 16px}.scene-detail h2{font-size:27px}.scene-detail p{font-size:9px}.hotspot{width:30px;height:30px}.service-row strong{font-size:28px}.service-row small{font-size:9px}.service-row{gap:13px}h2{font-size:51px}.contact-copy h2{font-size:59px}.form-grid{grid-template-columns:1fr;gap:0}.contact-phone{font-size:33px}}
/* Comfortable reading sizes throughout the customer journey. */
.button{color:var(--ink)}.hotspot:before{content:'';position:absolute;inset:-6px;border-radius:50%}.remove-service{position:relative;min-width:36px;min-height:36px}.remove-service:before{content:'';position:absolute;inset:-4px}
.scene-detail p{font-size:12px}.scene-caption{font-size:11px}.section-heading>p{font-size:15px}.service-row small{font-size:13px}.project-card p{font-size:14px}.project-card li{font-size:14px}.project-card>small{font-size:11px}.local-copy>p:not(.large-copy){font-size:14px}.local-details>div{font-size:12px}.process-grid p{font-size:14px}.contact-copy>p{font-size:15px}.preview-note p{font-size:13px}.quote-form{font-size:13px}.form-services label{font-size:12px}.quote-form input:not([type=checkbox]),.quote-form textarea,.quote-form select{font-size:14px}.form-caption{font-size:11px}.preview-result p{font-size:13px}dialog p{font-size:14px}.text-link{font-size:13px}
@media(max-width:760px){.hero-intro{font-size:15px}.scene-detail{min-height:168px}.scene-detail p{font-size:12px}.section-heading>p{font-size:14px}.service-row small{font-size:12px;line-height:1.7}.local-copy>p:not(.large-copy){font-size:14px}.process-grid p{font-size:14px}.quote-form input:not([type=checkbox]),.quote-form textarea,.quote-form select{font-size:16px}.quote-form input::placeholder,.quote-form textarea::placeholder{font-size:13px}.form-services label{font-size:12px}.preview-note p{font-size:13px}.form-caption{font-size:11px}.contact{gap:36px}}
@media(max-width:380px){.service-row small{font-size:11px}.scene-detail p{font-size:11px}.scene-caption{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal.pending{opacity:1;transform:none}}
