body,.page{max-width:none;width:100%}
.page>section:not(.hero):not(.project-planner){max-width:1400px;margin-inline:auto}
.page .services,.page .work,.page .faq{padding-inline:clamp(16px,5vw,70px)}
.page .footer:before{background-size:cover}
.page .hero-main{max-width:1400px;margin-inline:auto;width:100%}
body:not(:has(.page)) .header.site-header,.page .header.site-header{max-width:1400px;margin-inline:auto;padding-inline:clamp(16px,5vw,70px)}
body:not(:has(.page)) .wrap,.wide-wrap{width:min(1260px,90%)}
body:not(:has(.page)) main>.section.wrap{width:min(1400px,100%);margin-inline:auto;padding-inline:clamp(16px,5vw,70px)}
.page .project-planner,.page .footer{padding-inline:max(5%,calc((100% - 1260px)/2))}
.page .hero{display:block;height:700px;min-height:700px;background:#fff;isolation:isolate}
.page .hero-main{position:relative;z-index:2;padding:55px 0 70px;pointer-events:none}
.page .hero-content{width:36%;max-width:440px;margin-left:5%;padding:0;pointer-events:auto}
.page .hero-content h1{max-width:100%;width:100%;font-size:clamp(32px,3.85vw,54px);line-height:1.06;letter-spacing:-.8px}
.page .hero-description{width:100%;max-width:100%;font-size:16px;line-height:1.5;margin-top:18px}
.page .hero-content .eyebrow{font-size:15px;line-height:1.5}.page .hero-call{margin-top:22px}.page .hours{font-size:15px;line-height:1.5}.page .hero-signature{max-width:100%}
.page .hero-photo,.page-hero .hero-image{position:absolute;inset:98px 0 0 auto;width:70%;height:auto;margin:0;aspect-ratio:auto;background:#edf2ee url('assets/hero-poster.jpg') center/cover no-repeat;mask:url('assets/hero-window.svg') center/100% 100% no-repeat;-webkit-mask:url('assets/hero-window.svg') center/100% 100% no-repeat;z-index:0;overflow:hidden}
.hero-video{display:block;width:100%;height:100%;object-fit:cover;object-position:60% center}
.page .hero-wave,.page .hero:after{display:none}

.page-hero{background:#fff;padding:72px 0 80px;min-height:600px;isolation:isolate}
.page-hero .hero-grid{display:block;min-height:440px}.page-hero .hero-copy{width:40%;max-width:480px;position:relative;z-index:2}.page-hero .hero-copy>p:not(.eyebrow){width:100%;max-width:100%;font-size:17px;line-height:1.65}.page-hero .hero-copy h1{width:100%;max-width:100%;font-size:clamp(32px,4vw,58px);line-height:1.1;overflow-wrap:break-word}
.page-hero .hero-image{inset:0 0 0 auto;background:none;width:70%}.page-hero .hero-image img{width:100%;height:100%;object-fit:cover;object-position:65% center}.page-hero:after{display:none}
@media(min-width:1400px){.page .hero-photo,.page-hero .hero-image{width:calc(64.102564% + 82.564px)}.page .copyright{left:max(5%,calc((100% - 1260px)/2));right:max(5%,calc((100% - 1260px)/2))}}
@media(min-width:2001px){.page .hero{height:760px;min-height:760px}.page-hero{min-height:760px;padding-top:100px}.page-hero .hero-grid{min-height:580px}}
@media(min-width:600px) and (max-width:950px){.page .hero{height:auto;min-height:700px}.page .hero-main{padding:40px 0 75px}.page .hero-content{width:38%;max-width:440px}.page .hero-content h1{font-size:clamp(32px,4.6vw,43px)}.page .hero-signature,.page .hero-signature>img:first-child{width:100%;height:auto}.page .signature-underline{max-width:76%;left:16%;top:100%}.page-hero{padding:48px 0 70px;min-height:650px}.page-hero .hero-copy{width:42%;max-width:480px}.page-hero .hero-copy h1{font-size:clamp(32px,4.5vw,43px)}.page-hero .hero-grid{min-height:510px}.page .hero-description,.page-hero .hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.55}}
@media(max-width:599px){.page .hero{display:flex;flex-direction:column;height:auto;min-height:0}.page .hero>.header{order:0}.page .hero-main{order:1;padding:18px 0 16px}.page .hero-content{width:90%;max-width:440px;margin-inline:5%}.page .hero-content h1{font-size:clamp(34px,8vw,44px)}.page .hero-photo{order:2;position:relative;inset:auto;width:100%;height:auto;aspect-ratio:16/10;margin:0;mask-image:url('assets/hero-window-mobile.svg');-webkit-mask-image:url('assets/hero-window-mobile.svg')}.hero-video{object-position:60% center}.page-hero{padding:28px 0 0;min-height:0}.page-hero .hero-grid{min-height:0}.page-hero .hero-copy{width:100%;max-width:none}.page-hero .hero-copy h1{font-size:clamp(34px,8vw,44px)}.page-hero .hero-image{position:relative;inset:auto;width:111.11112%;height:auto;aspect-ratio:16/10;margin:10px -5.55556% 0;mask-image:url('assets/hero-window-mobile.svg');-webkit-mask-image:url('assets/hero-window-mobile.svg')}.page-hero .hero-copy>p:not(.eyebrow){font-size:16px}.page-hero .hero-image img{position:absolute;inset:0}}
