.hero-background-media_root__iI0DH{position:absolute;inset:0;overflow:hidden;pointer-events:none}.hero-background-media_media__aZhp4{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-background-media_video__8zxe1{opacity:0;transition:opacity .6s ease}.hero-background-media_video__8zxe1[data-loaded=true]{opacity:1}.hero-background-media_motionToggle__dGtL9{position:absolute;z-index:3;right:var(--hero-video-control-right,max(calc(var(--hero-inset, 0px) + 1.5rem),calc((100% - 90rem) / 2)));bottom:var(--hero-video-control-bottom,1.5rem);display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;min-width:44px;min-height:44px;padding:0;border:1px solid rgb(255 255 255/25%);border-radius:999px;background:rgb(0 0 0/65%);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-background-media_motionToggle__dGtL9:hover{background:rgb(0 0 0/80%)}.hero-background-media_motionToggle__dGtL9:focus-visible{outline:2px solid #fff;outline-offset:3px}.hero-background-media_motionToggle__dGtL9 svg{width:1rem;height:1rem;fill:currentColor}@media (min-width:60rem){.hero-background-media_motionToggle__dGtL9{right:max(var(--hero-video-control-right,calc((100% - var(--frame)) / 2)),calc(max(1.25rem, env(safe-area-inset-right)) + 3.5rem + 8px))}}@media (min-width:900px) and (max-width:959.99px){.hero-background-media_motionToggle__dGtL9{right:max(var(--hero-video-control-right,1.5rem),calc(max(1.25rem, env(safe-area-inset-right)) + 3.5rem + 8px))}}@media (prefers-reduced-motion:reduce){.hero-background-media_motionToggle__dGtL9,.hero-background-media_video__8zxe1{display:none;transition:none}}.town-mid-cta_root__J245k{width:min(calc(100% - 2rem),82rem);margin-inline:auto;padding-block:var(--section-pad);color:var(--text)}.town-mid-cta_panel__sogLC{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(1.25rem,2.5vw,2rem);border:1px solid var(--bg-elev-2);border-radius:1.25rem;background:var(--bg-elev-1)}.town-mid-cta_copy__JIjRH{min-width:0}.town-mid-cta_eyebrow__ubg2a{margin-bottom:.85rem;color:var(--text-muted);font:700 var(--eyebrow-size)/1.4 var(--stack-ui);letter-spacing:.14em;text-transform:uppercase}.town-mid-cta_copy__JIjRH h2{max-width:24ch;font:500 clamp(1.75rem,3vw,2.5rem)/1.1 var(--stack-display);letter-spacing:-.035em;text-wrap:balance}.town-mid-cta_description__mCp6r{max-width:60ch;margin-top:1rem;color:var(--text-muted);font-size:.95rem;line-height:1.7}.town-mid-cta_actions__OfjU6{display:flex;flex-shrink:0;flex-wrap:wrap;gap:.75rem}.town-mid-cta_phoneAction__d1slR,.town-mid-cta_primaryAction__Zxg73{display:inline-flex;min-height:3.5rem;align-items:center;justify-content:center;gap:.75rem;padding:.85rem 1.5rem;border:1px solid var(--accent);border-radius:999px;font:600 .95rem/1.3 var(--stack-ui);text-align:center}.town-mid-cta_primaryAction__Zxg73{background:var(--accent);color:var(--bg-elev-1)}.town-mid-cta_phoneAction__d1slR{color:var(--text)}.town-mid-cta_primaryAction__Zxg73 svg{width:1.1rem;height:1.1rem;flex-shrink:0}.town-mid-cta_actions__OfjU6 a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media (min-width:40rem){.town-mid-cta_root__J245k{width:min(calc(100% - 4rem),82rem)}}@media (max-width:63.99rem){.town-mid-cta_panel__sogLC{align-items:flex-start;flex-direction:column}}@media (max-width:39.99rem){.town-mid-cta_actions__OfjU6{width:100%;flex-direction:column}}.project-lightbox_dialog__ksIl7{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;overflow:hidden;border:0;background:transparent;color:var(--text-on-dark)}.project-lightbox_dialog__ksIl7[open]{display:grid;place-items:center}.project-lightbox_dialog__ksIl7::backdrop{background:rgb(8 8 8/92%)}.project-lightbox_figure__N5nKv{width:min(calc((100dvh - 6rem) * 1.6),calc(100vw - 8rem));display:grid;gap:.75rem;margin:0}.project-lightbox_image__v3m1j{width:100%;max-width:calc(100vw - 8rem);height:auto;max-height:calc(100dvh - 6rem);border-radius:.75rem;object-fit:contain}.project-lightbox_caption__IwkRJ{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;font-family:var(--stack-body);font-size:.875rem;line-height:1.5}.project-lightbox_count__MeOPt{flex:0 0 auto}.project-lightbox_close__XpZJG,.project-lightbox_next__u_3Rc,.project-lightbox_previous__XvkQj{position:absolute;z-index:1;width:2.75rem;height:2.75rem;display:grid;place-items:center;padding:0;border:1px solid;border-radius:50%;background:rgb(8 8 8/80%);color:inherit;cursor:pointer}.project-lightbox_close__XpZJG{top:1rem;right:1rem}.project-lightbox_next__u_3Rc,.project-lightbox_previous__XvkQj{top:50%;transform:translateY(-50%)}.project-lightbox_previous__XvkQj{left:1rem}.project-lightbox_next__u_3Rc{right:1rem}.project-lightbox_close__XpZJG svg,.project-lightbox_next__u_3Rc svg,.project-lightbox_previous__XvkQj svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.project-lightbox_close__XpZJG:hover,.project-lightbox_next__u_3Rc:not(:disabled):hover,.project-lightbox_previous__XvkQj:not(:disabled):hover{background:rgb(255 255 255/15%)}.project-lightbox_close__XpZJG:focus-visible,.project-lightbox_next__u_3Rc:focus-visible,.project-lightbox_previous__XvkQj:focus-visible{outline:2px solid currentColor;outline-offset:3px}.project-lightbox_next__u_3Rc:disabled,.project-lightbox_previous__XvkQj:disabled{cursor:not-allowed;opacity:.35}@media (max-width:47.99rem){.project-lightbox_figure__N5nKv,.project-lightbox_image__v3m1j{width:calc(100vw - 2rem);max-width:calc(100vw - 2rem)}.project-lightbox_next__u_3Rc,.project-lightbox_previous__XvkQj{top:auto;bottom:max(1.5rem,env(safe-area-inset-bottom));transform:none}.project-lightbox_previous__XvkQj{left:calc(50% - 3.5rem)}.project-lightbox_next__u_3Rc{right:calc(50% - 3.5rem)}}.weather-widget_compact__kyaJj{padding:.85rem 1.1rem;border:1px solid rgb(255 255 255/35%);border-radius:1rem;background:rgb(0 0 0/45%);color:var(--text-on-dark);font:400 .8rem/1.6 var(--stack-ui);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.weather-widget_compactAlert__DMjI5{margin-top:.4rem}.weather-widget_compact__kyaJj a{text-decoration:underline;text-underline-offset:.2em}.weather-widget_compact__kyaJj a:focus-visible{outline:2px solid var(--text-on-dark);outline-offset:4px}.weather-widget_card__LVDd0{min-width:0;min-height:19rem;padding:clamp(1.25rem,2.5vw,2rem);border:1px solid var(--bg-elev-2);border-radius:1.25rem;background:var(--bg-elev-1);color:var(--text)}.weather-widget_eyebrow__vUEAz{margin-bottom:.6rem;color:var(--text-muted);font:700 var(--eyebrow-size)/1.4 var(--stack-ui);letter-spacing:.14em;text-transform:uppercase}.weather-widget_card__LVDd0 h3{font:500 var(--h3-size)/1.2 var(--stack-display);letter-spacing:-.035em}.weather-widget_periods__n0qzr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1.25rem 0;padding:0;list-style:none}.weather-widget_periods__n0qzr li{min-width:0;padding-left:.65rem;border-left:1px solid var(--sand-2);overflow-wrap:anywhere}.weather-widget_periods__n0qzr span{display:block;color:var(--text-muted);font:400 .7rem/1.5 var(--stack-ui)}.weather-widget_periods__n0qzr .weather-widget_periodName__K4zHY{min-height:2.1rem;color:var(--text);font-weight:500}.weather-widget_periods__n0qzr strong{display:block;margin-block:.4rem;font:500 1.6rem/1.2 var(--stack-display);letter-spacing:-.035em}.weather-widget_indicator__WDGMQ{display:flex;align-items:baseline;gap:.5rem;font:500 .8rem/1.5 var(--stack-ui)}.weather-widget_indicator__WDGMQ>span{width:.45rem;height:.45rem;flex-shrink:0;border-radius:50%;background:currentColor}.weather-widget_planningNote__hTyte,.weather-widget_source__NdTRh{margin-top:.65rem;color:var(--text-muted);font:400 .7rem/1.6 var(--stack-ui)}.weather-widget_inspectionLink__L0YLb,.weather-widget_source__NdTRh a{text-decoration:underline;text-underline-offset:.2em}.weather-widget_card__LVDd0 a:focus-visible{outline:2px solid var(--accent-hi);outline-offset:4px}.weather-widget_alerts__lKDXH{margin-top:1rem;padding:1rem;border-left:3px solid #a64926;border-radius:.5rem;background:color-mix(in srgb,#e4a87a 18%,var(--bg-elev-1))}.weather-widget_alert__myUQD+.weather-widget_alert__myUQD{margin-top:1rem}.weather-widget_alert__myUQD h4{font:600 .95rem/1.4 var(--stack-display)}.weather-widget_alert__myUQD p{margin-top:.35rem;font:400 .8rem/1.6 var(--stack-ui);overflow-wrap:anywhere}.weather-widget_inspectionLink__L0YLb{display:inline-block;margin-top:.75rem;padding-block:.5rem;font:600 .8rem/1.5 var(--stack-ui)}.weather-widget_skeleton__XbyqY{min-height:12rem;padding-top:1.5rem;color:var(--text-muted);font:400 .8rem/1.5 var(--stack-ui)}.weather-widget_skeleton__XbyqY span{display:block;height:1.5rem;margin-top:1rem;border-radius:.5rem;background:var(--sand)}.weather-widget_skeleton__XbyqY span:last-child{width:70%}@media (max-width:39.99rem){.weather-widget_periods__n0qzr{gap:.5rem}.weather-widget_periods__n0qzr li{padding-left:.4rem}.weather-widget_periods__n0qzr strong{font-size:1.35rem}}.logo-marquee-section_root__Bw3cA{--marquee-duration:60s;padding-block:clamp(2.5rem,5vw,4rem);overflow:hidden;background:var(--scrim);color:var(--text-on-dark)}.logo-marquee-section_viewport__pBKLl{width:100%;overflow:hidden;cursor:grab;touch-action:pan-y;user-select:none}.logo-marquee-section_viewport__pBKLl:active{cursor:grabbing}.logo-marquee-section_viewport__pBKLl:focus-visible{outline:2px solid var(--text-on-dark);outline-offset:-4px}.logo-marquee-section_track__vveDZ{-webkit-user-drag:none;user-select:none;width:max-content;display:flex;transform:translateZ(0);will-change:transform}.logo-marquee-section_set__AGAzU{display:flex;flex:0 0 auto;gap:3rem;padding-right:3rem}.logo-marquee-section_badge__8BkCY{display:grid;flex:0 0 auto;place-items:center}.logo-marquee-section_badgeImage__qDTWJ{height:5.5rem;width:auto;object-fit:contain}@media (prefers-reduced-motion:reduce){.logo-marquee-section_track__vveDZ{will-change:auto}}.case-study-template-section_root__bg07g{width:min(calc(100% - 3rem),82rem);margin:7.5rem auto 0}.case-study-template-section_hero__m_daI{position:relative;isolation:isolate;display:grid;place-items:center;min-height:35rem;height:min(75svh,48rem);overflow:hidden;border-radius:1.5rem;background:var(--scrim);color:var(--text-on-dark);text-align:center}.case-study-template-section_heroImage__PrNtF{z-index:-2;object-fit:cover}.case-study-template-section_heroScrim__pN0P3{position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgb(0 0 0/12%),rgb(0 0 0/40%) 40%,rgb(0 0 0/85%))}.case-study-template-section_heroCopy__KOns_{padding:3rem 1rem}.case-study-template-section_eyebrow___JO_W,.case-study-template-section_kicker__h2P4k{font:600 var(--eyebrow-size)/1.4 var(--stack-ui);letter-spacing:.13em;text-transform:uppercase}.case-study-template-section_hero__m_daI h1{margin-top:1rem;font:500 clamp(2.75rem,6.7vw,6rem)/1 var(--stack-display);letter-spacing:-.055em}.case-study-template-section_readStudy__n_yrT{display:inline-flex;min-height:44px;align-items:center;gap:1.5rem;margin-top:2rem;padding:.7rem 1.1rem;border-radius:.5rem;background:var(--bg-elev-1);color:var(--text);font:600 .8rem/1.4 var(--stack-ui)}.case-study-template-section_readStudy__n_yrT:focus-visible{outline-color:var(--text-on-dark)}.case-study-template-section_heroBadge__5cG73{position:absolute;bottom:1.5rem;left:1.5rem;padding:.3rem .75rem;border:1px solid rgb(255 255 255/30%);border-radius:999px;font:500 .7rem/1.5 var(--stack-ui)}.case-study-template-section_facts__tYNxa{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:2rem 0;border-bottom:1px solid var(--sand)}.case-study-template-section_facts__tYNxa>div{min-width:0;padding:.25rem 2rem;border-right:1px solid var(--sand-2)}.case-study-template-section_facts__tYNxa>div:first-child{padding-left:0}.case-study-template-section_facts__tYNxa>div:last-child{padding-right:0;border-right:0}.case-study-template-section_facts__tYNxa dt{margin-bottom:.5rem;font:650 .72rem/1.3 var(--stack-ui);letter-spacing:.06em;text-transform:uppercase}.case-study-template-section_facts__tYNxa dd{margin:0;color:var(--text-muted);font-size:.9rem}.case-study-template-section_previewNotice__KucDJ{margin-top:1.5rem;padding:1rem 1.25rem;border:1px solid var(--sand);border-radius:.75rem;color:var(--text-muted);font-size:.8rem}.case-study-template-section_previewNotice__KucDJ strong{color:var(--text);font-weight:600}.case-study-template-section_section__jGf4B{padding-block:clamp(3rem,6vw,6rem)}.case-study-template-section_background__KXI2D{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:clamp(2rem,6vw,6rem)}.case-study-template-section_background__KXI2D:focus{outline:none}.case-study-template-section_root__bg07g h2:not(.case-study-template-section_kicker__h2P4k){font:500 var(--h2-size)/1.05 var(--stack-display);letter-spacing:-.045em;text-wrap:balance}.case-study-template-section_kicker__h2P4k{margin-bottom:1rem;color:var(--text-muted)}.case-study-template-section_prose__1_LKw>p:not(.case-study-template-section_kicker__h2P4k){margin-top:1.75rem;color:var(--text-muted)}.case-study-template-section_issues__MBUoJ{margin-top:2rem}.case-study-template-section_issues__MBUoJ h3{margin-bottom:.75rem;font:650 .75rem/1.4 var(--stack-ui)}.case-study-template-section_pills__QgbJV{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none}.case-study-template-section_pills__QgbJV li{padding:.4rem .7rem;border:1px solid var(--sand);border-radius:999px;color:var(--text-muted);font:500 .7rem/1.4 var(--stack-ui)}.case-study-template-section_galleryMain__mJoKf{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:1rem;background:var(--sand)}.case-study-template-section_galleryMain__mJoKf img,.case-study-template-section_resultMedia__FXnEU img,.case-study-template-section_thumbnail__B0LBa img{object-fit:cover}.case-study-template-section_thumbnails__cTo1c{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;margin-top:.8rem}.case-study-template-section_thumbnail__B0LBa{position:relative;min-height:44px;aspect-ratio:1;overflow:hidden;padding:0;border:2px solid transparent;border-radius:.55rem;background:var(--sand);cursor:pointer}.case-study-template-section_thumbnail__B0LBa[aria-pressed=true]{border-color:var(--text);outline:2px solid var(--bg-base);outline-offset:-4px}.case-study-template-section_carouselControls__ufzbK button:focus-visible,.case-study-template-section_thumbnail__B0LBa:focus-visible{outline:2px solid var(--text);outline-offset:4px}.case-study-template-section_photoCount__2d7aF{margin-top:.65rem;color:var(--text-muted);font:500 .7rem/1.4 var(--stack-ui)}.case-study-template-section_approach__Iq07p{display:grid;grid-template-columns:.8fr 1.5fr;gap:clamp(2rem,4vw,4rem);padding:clamp(2rem,4vw,4rem);border-radius:1.25rem;background:color-mix(in srgb,var(--sand) 35%,var(--bg-elev-1))}.case-study-template-section_approach__Iq07p>p{align-self:center;color:var(--text-muted)}.case-study-template-section_sectionIntro__LbdMB{margin-bottom:3rem}.case-study-template-section_solutionGrid__Y3kYs{display:grid;grid-template-columns:1.25fr .8fr;gap:clamp(2rem,6vw,6rem);align-items:start}.case-study-template-section_steps__ehYs8{margin:0;padding:0;list-style:none}.case-study-template-section_steps__ehYs8>li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding-block:1.75rem;border-top:1px solid var(--sand)}.case-study-template-section_stepNumber__CitK3{color:var(--text-muted);font:500 1rem/1.5 var(--stack-ui)}.case-study-template-section_steps__ehYs8 h3{font:500 clamp(1.3rem,2vw,1.65rem)/1.2 var(--stack-display);letter-spacing:-.025em}.case-study-template-section_steps__ehYs8 p{margin-block:1rem;color:var(--text-muted);font-size:.95rem}.case-study-template-section_specPanel__ZHNlr{padding:1.75rem;border:1px solid var(--sand);border-radius:1rem;background:var(--bg-elev-1)}.case-study-template-section_specs__jTW7E{width:100%;border-collapse:collapse;text-align:left;font-size:.85rem}.case-study-template-section_specs__jTW7E caption{margin-bottom:1.5rem;text-align:left;font:600 1rem/1.4 var(--stack-ui)}.case-study-template-section_specs__jTW7E td,.case-study-template-section_specs__jTW7E th{padding:1rem 0;border-top:1px solid var(--sand);vertical-align:top}.case-study-template-section_specs__jTW7E th{width:45%;padding-right:1rem;font-weight:500}.case-study-template-section_specs__jTW7E td{color:var(--text-muted)}.case-study-template-section_specNote__pZGaD{margin-top:1rem;color:var(--text-muted);font-size:.75rem}.case-study-template-section_highlights__Z38cw{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin:3rem 0 0;padding-block:2rem;border-top:1px solid var(--sand);border-bottom:1px solid var(--sand)}.case-study-template-section_highlights__Z38cw>div{display:flex;flex-direction:column-reverse;gap:.75rem}.case-study-template-section_highlights__Z38cw dt{color:var(--text-muted);font:500 .8rem/1.4 var(--stack-ui)}.case-study-template-section_highlights__Z38cw dd{margin:0;font:500 clamp(1.8rem,3.8vw,3rem)/1 var(--stack-display);letter-spacing:-.04em}.case-study-template-section_result__tnKUi{padding-top:1rem}.case-study-template-section_resultIntro__3J4St{display:grid;grid-template-columns:.8fr 1.5fr;gap:3rem;margin-bottom:2.5rem}.case-study-template-section_resultIntro__3J4St>p{align-self:center;max-width:44rem;color:var(--text-muted)}.case-study-template-section_carousel__srAxB figure{margin:0}.case-study-template-section_resultMedia__FXnEU{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:1.25rem;background:var(--sand)}.case-study-template-section_resultMedia__FXnEU iframe,.case-study-template-section_resultMedia__FXnEU video{width:100%;height:100%;border:0;object-fit:contain}.case-study-template-section_caption__ZNrB1{max-width:55rem;margin-top:1rem;color:var(--text-muted);font-size:.8rem}.case-study-template-section_carouselControls__ufzbK{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;font:500 .75rem/1 var(--stack-ui)}.case-study-template-section_carouselControls__ufzbK>div{display:flex;gap:.5rem}.case-study-template-section_carouselControls__ufzbK button{width:44px;height:44px;border:1px solid var(--sand-2);border-radius:50%;background:transparent;color:var(--text);cursor:pointer;font-size:1.2rem}.case-study-template-section_testimonial__CIKNF{max-width:58rem;margin:0 auto;padding-block:3rem;text-align:center}.case-study-template-section_testimonial__CIKNF blockquote,.case-study-template-section_testimonial__CIKNF figure{margin:0}.case-study-template-section_testimonial__CIKNF blockquote{font:500 clamp(1.75rem,3vw,2.75rem)/1.25 var(--stack-display);letter-spacing:-.035em}.case-study-template-section_testimonial__CIKNF figcaption{margin-top:1.5rem;color:var(--text-muted);font-size:.85rem}.case-study-template-section_comparison__ciFsI{display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:clamp(2rem,5vw,5rem);border-top:1px solid var(--sand)}@media (max-width:767px){.case-study-template-section_root__bg07g{width:calc(100% - 2rem);margin-top:6.5rem}.case-study-template-section_hero__m_daI{min-height:28rem;height:65svh;border-radius:1rem}.case-study-template-section_hero__m_daI h1{font-size:var(--h1-size)}.case-study-template-section_facts__tYNxa{grid-template-columns:1fr;padding-block:1rem}.case-study-template-section_facts__tYNxa>div,.case-study-template-section_facts__tYNxa>div:first-child,.case-study-template-section_facts__tYNxa>div:last-child{display:grid;grid-template-columns:5rem 1fr;gap:.75rem;padding:1rem 0;border-right:0}.case-study-template-section_facts__tYNxa dt{margin:.25rem 0 0}.case-study-template-section_approach__Iq07p,.case-study-template-section_background__KXI2D,.case-study-template-section_comparison__ciFsI,.case-study-template-section_resultIntro__3J4St,.case-study-template-section_solutionGrid__Y3kYs{grid-template-columns:1fr;gap:2rem}.case-study-template-section_approach__Iq07p{padding:2rem 1.5rem}.case-study-template-section_sectionIntro__LbdMB{margin-bottom:2rem}.case-study-template-section_highlights__Z38cw{gap:1rem}.case-study-template-section_highlights__Z38cw dt{font-size:.7rem}.case-study-template-section_highlights__Z38cw dd{font-size:clamp(1.2rem,5vw,2rem)}.case-study-template-section_resultMedia__FXnEU{aspect-ratio:16/9;border-radius:1rem}.case-study-template-section_steps__ehYs8>li{grid-template-columns:2rem 1fr;gap:.75rem}.case-study-template-section_specPanel__ZHNlr{padding:1.25rem}}.case-study-template-section_solutionGrid__Y3kYs[data-has-specs=false]{grid-template-columns:1fr}.case-study-template-section_videoFacade__HtERS{position:relative;display:block;width:100%;height:100%;padding:0;border:0;background:var(--scrim);color:#fff;cursor:pointer}.case-study-template-section_videoFacade__HtERS>span{position:absolute;inset:50% auto auto 50%;display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border-radius:999px;background:rgb(8 8 8/80%);transform:translate(-50%,-50%);white-space:nowrap;font:600 .85rem/1.4 var(--stack-ui)}.case-study-template-section_videoFacade__HtERS:focus-visible{outline:3px solid var(--text);outline-offset:-5px}.case-study-template-section_booking__Oep3y{display:none}@media (min-width:900px){.case-study-template-section_hero__m_daI[data-has-booking=true]{grid-template-rows:1fr auto;height:auto;padding-bottom:4rem}.case-study-template-section_booking__Oep3y{display:block;width:calc(100% - 4rem);margin-inline:auto;text-align:left}}.case-study-template-section_hero__m_daI[data-has-booking=true] .case-study-template-section_readStudy__n_yrT{padding-inline:0;border-radius:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:.2em}.certification-showcase-section_root__o3795{width:min(calc(100% - 2rem),82rem);margin-inline:auto;padding-block:var(--section-pad);color:var(--text)}.certification-showcase-section_showcase__RRAzx{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(2rem,5vw,5rem);padding:clamp(1.25rem,4vw,4rem);border-radius:1.5rem;background:var(--bg-elev-1)}.certification-showcase-section_copy__Q__bX,.certification-showcase-section_visual__la5xb{min-width:0}.certification-showcase-section_showcase__RRAzx[data-text-only]{grid-template-columns:minmax(0,1fr)}.certification-showcase-section_logo__2WZnb{display:grid;place-items:center;aspect-ratio:4/3;padding:1rem;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:1.5rem}.certification-showcase-section_image__uVTqj{display:block;width:min(100%,24rem);height:auto;max-height:100%;object-fit:contain}.certification-showcase-section_controls__8Mxzy{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1.25rem}.certification-showcase-section_arrow__5KwKS{display:grid;place-items:center;flex:0 0 auto;width:2.75rem;height:2.75rem;border:1px solid color-mix(in srgb,var(--text) 24%,transparent);border-radius:50%;background:transparent;color:var(--text);cursor:pointer;transition:background-color .18s ease,scale .14s ease-out}.certification-showcase-section_arrow__5KwKS svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.certification-showcase-section_arrow__5KwKS:hover{background:var(--bg-elev-2)}.certification-showcase-section_arrow__5KwKS:disabled{cursor:default;opacity:.4}.certification-showcase-section_pagination__qtcAx{display:flex;flex-wrap:wrap;justify-content:center}.certification-showcase-section_dot__puP3s{display:grid;place-items:center;width:2rem;height:2.75rem;padding:0;border:0;border-radius:.5rem;background:transparent;color:var(--text-muted);cursor:pointer}.certification-showcase-section_dot__puP3s:before{width:.5rem;height:.5rem;border-radius:50%;background:currentColor;content:""}.certification-showcase-section_dot__puP3s[aria-current=true]{color:var(--text)}.certification-showcase-section_dot__puP3s[aria-current=true]:before{outline:1px solid currentColor;outline-offset:3px}.certification-showcase-section_eyebrow__bD6lP{margin-bottom:1rem;color:var(--text-muted);font-family:var(--stack-ui);font-size:var(--eyebrow-size);font-weight:700;letter-spacing:.14em;text-transform:uppercase}.certification-showcase-section_heading__VU__X:is(h2,h3){font-family:var(--stack-display);font-size:var(--h2-size);font-weight:500;letter-spacing:-.04em;line-height:1.02;text-wrap:balance;overflow-wrap:anywhere}.certification-showcase-section_description__cd6ym{margin-top:1.5rem;color:var(--text-muted);font-family:var(--stack-ui);font-size:var(--lead-size);line-height:1.6}.certification-showcase-section_cta__jSW4C{display:inline-flex;align-items:center;gap:1rem;min-height:2.75rem;margin-top:1.75rem;font-family:var(--stack-ui);font-size:.9rem;font-weight:650;line-height:1.5;text-decoration:underline;text-underline-offset:.25em}.certification-showcase-section_cta__jSW4C svg{flex:0 0 auto}.certification-showcase-section_arrow__5KwKS:focus-visible,.certification-showcase-section_cta__jSW4C:focus-visible,.certification-showcase-section_dot__puP3s:focus-visible{outline:2px solid var(--text);outline-offset:4px}.certification-showcase-section_pending__nrQKz{color:var(--text-muted);font-family:var(--stack-ui)}@media (min-width:40rem){.certification-showcase-section_root__o3795{width:min(calc(100% - 4rem),82rem)}}@media (min-width:64rem){.certification-showcase-section_showcase__RRAzx{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}}@media (prefers-reduced-motion:reduce){.certification-showcase-section_arrow__5KwKS{transition:none}}html[data-theme=dark] img:is([src*="/partners/brava/logo"],[src*="%2Fpartners%2Fbrava%2Flogo"],[src*="/brand/certifications/brava-authorized-contractor-on-light"],[src*="%2Fbrand%2Fcertifications%2Fbrava-authorized-contractor-on-light"]){padding:.4rem;border-radius:.375rem;background:#fff;filter:none!important;mix-blend-mode:normal!important}.hero-scroll-inset_frame__C07an{container-type:inline-size;background:var(--bg-base)}@media (prefers-reduced-motion:no-preference){.hero-scroll-inset_root__wEg2D{--hero-panel-width:min(calc(100cqw - 30px),1440px);--hero-end-inset:calc((100cqw - var(--hero-panel-width)) / 2);--hero-inset:calc(var(--hero-inset-progress, 0) * var(--hero-end-inset));--hero-radius:calc(var(--hero-inset-progress, 0) * 1.5rem);clip-path:inset(0 var(--hero-inset) round var(--hero-radius))}}@media (min-width:1280px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.hero-scroll-inset_root__wEg2D{--hero-panel-width:min(calc(100cqw - 32px),1440px)}}.review-trust-badge_root__QM2vy{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;color:var(--text);font-family:var(--stack-body)}.review-trust-badge_ratingPill__N0P40{max-width:100%;flex-wrap:wrap;min-height:2.5rem;display:flex;align-items:center;gap:.7rem;padding:.35rem .9rem;border-radius:999px;background:color-mix(in srgb,var(--text) 5%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text)}.review-trust-badge_platforms__ZjHJH{display:flex;isolation:isolate}.review-trust-badge_platform__GEjl3{position:relative;z-index:1;width:28px;height:28px;display:inline-grid;flex-shrink:0;overflow:hidden;place-items:center;border:1px solid color-mix(in srgb,var(--text) 14%,transparent);border-radius:50%;background:var(--bg-elev-1);color:var(--text-muted);font-family:var(--stack-ui);font-size:.62rem;font-weight:750;line-height:1}.review-trust-badge_platform__GEjl3+.review-trust-badge_platform__GEjl3{margin-left:-7px}.review-trust-badge_platform__GEjl3:first-child{z-index:3}.review-trust-badge_platform__GEjl3:nth-child(2){z-index:2}.review-trust-badge_logo__kebub{display:block;width:100%;height:100%;object-fit:contain}.review-trust-badge_star__v3BO2{display:block;width:1rem;height:1rem;flex-shrink:0}.review-trust-badge_ratingPill__N0P40 strong{font-size:.95rem;font-weight:750;line-height:1}.review-trust-badge_onDark__xiEO6 .review-trust-badge_ratingPill__N0P40{background:rgba(255,255,255,.14);color:var(--text-on-dark)}.review-trust-badge_visuallyHidden__7dPxo{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.logo-marquee-bottom-section_root__ztG2b{position:relative;overflow:hidden;width:100%;min-height:100vh;min-height:100svh;background:var(--scrim);color:var(--text-on-dark)}.logo-marquee-bottom-section_background__7SlY0{object-fit:cover;opacity:1}.logo-marquee-bottom-section_root__ztG2b[data-has-background-video=true]{--hero-video-control-right:calc(var(--hero-inset, 0px) + 1rem);--hero-video-control-bottom:calc(var(--hero-strip-height, 10rem) + 1rem)}.logo-marquee-bottom-section_root__ztG2b[data-has-background-video=true] .logo-marquee-bottom-section_heroContent__xCt9B{padding-bottom:max(clamp(11rem,16vh,13rem),calc(var(--hero-strip-height, 10rem) + 4.75rem))}@media (prefers-reduced-motion:no-preference){.logo-marquee-bottom-section_insetContent__Uimy3 .logo-marquee-bottom-section_heroBooking__FevEn,.logo-marquee-bottom-section_insetContent__Uimy3 .logo-marquee-bottom-section_heroContent__xCt9B{width:calc(min(calc(100% - 2rem), 82rem) - 2rem)}}@media (min-width:40rem) and (prefers-reduced-motion:no-preference){.logo-marquee-bottom-section_insetContent__Uimy3 .logo-marquee-bottom-section_heroBooking__FevEn,.logo-marquee-bottom-section_insetContent__Uimy3 .logo-marquee-bottom-section_heroContent__xCt9B{width:calc(min(calc(100% - 4rem), 82rem) - 2rem)}}.logo-marquee-bottom-section_root__ztG2b:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,var(--scrim) 0,color-mix(in srgb,var(--scrim) 82%,transparent) 43%,transparent 78%),linear-gradient(0deg,color-mix(in srgb,var(--scrim) 76%,transparent) 0,transparent 45%),linear-gradient(180deg,color-mix(in srgb,var(--scrim) 50%,transparent) 0,transparent 34%);pointer-events:none}.logo-marquee-bottom-section_heroContent__xCt9B{position:relative;z-index:2;width:min(calc(100% - 2rem),82rem);min-height:inherit;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;margin-inline:auto;padding-top:clamp(9rem,16vh,13rem);padding-bottom:clamp(11rem,16vh,13rem)}.logo-marquee-bottom-section_heroTrust__RN_cR{margin-bottom:1.5rem}.logo-marquee-bottom-section_heroBooking__FevEn{display:none;position:relative;z-index:2;width:min(calc(100% - 2rem),82rem);margin:24px auto 0}.logo-marquee-bottom-section_heroEyebrow__R6J6u{margin-bottom:1rem;font-family:var(--stack-ui);font-size:var(--eyebrow-size);font-weight:700;letter-spacing:.14em;line-height:1.4;text-transform:uppercase}.logo-marquee-bottom-section_heroText__1I2qf{position:relative;min-width:0;width:100%}.logo-marquee-bottom-section_heroAside__d_Rmz{min-width:0;width:100%;margin-top:2rem}.logo-marquee-bottom-section_heroHeading__7ecX0{max-width:14ch;margin:0;font-family:var(--stack-display);font-size:var(--h1-size);font-weight:500;letter-spacing:-.04em;line-height:.98;text-wrap:balance}.logo-marquee-bottom-section_heroCopy__Tp_1D{max-width:36rem;margin-top:2rem;padding-left:1rem;border-left:2px solid rgba(255,255,255,.7);color:var(--text-muted-on-dark);font-family:var(--stack-body);font-size:1.1rem;line-height:1.55}.logo-marquee-bottom-section_heroActions__QMVuK{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:2.25rem}.logo-marquee-bottom-section_heroCta__Aa2Mt{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;min-height:3.5rem;padding:1rem 2rem;border:1px solid var(--bg-elev-1);border-radius:999px;background:var(--bg-elev-1);color:var(--text);font-family:var(--stack-ui);font-size:1rem;font-weight:600;line-height:1}.logo-marquee-bottom-section_heroCta__Aa2Mt:focus-visible{outline:2px solid var(--text-on-dark);outline-offset:3px}.logo-marquee-bottom-section_heroCtaSecondary__kvuct{border-color:rgba(255,255,255,.4);background:transparent;color:var(--text-on-dark)}.logo-marquee-bottom-section_scrollCue__znDFK{display:inline-flex;align-items:center;gap:.75rem;margin-top:1.5rem;color:var(--text-on-dark);font-family:var(--stack-ui);font-size:.75rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase}.logo-marquee-bottom-section_scrollCue__znDFK svg{transform:rotate(90deg)}.logo-marquee-bottom-section_scrollCue__znDFK:focus-visible{outline:2px solid var(--text-on-dark);outline-offset:4px}.logo-marquee-bottom-section_strip__bqRPC{position:absolute;z-index:2;inset:auto 0 0 0;padding-block:1.5rem 2rem;background:linear-gradient(0deg,rgba(15,15,15,.9),rgba(15,15,15,0))}.logo-marquee-bottom-section_strip__bqRPC[data-background=light]{--badge-mono-filter:grayscale(1) contrast(1.05)}.logo-marquee-bottom-section_label__eF_Uj{margin:0 0 1.25rem;color:var(--text-muted-on-dark);font-family:var(--stack-ui);font-size:.9rem;font-weight:600;text-align:center}.logo-marquee-bottom-section_viewport__xHvrj{overflow:hidden;width:100vw;margin-inline:calc(50% - 50vw);-webkit-mask-image:linear-gradient(90deg,transparent,black 12%,black 88%,transparent);mask-image:linear-gradient(90deg,transparent,black 12%,black 88%,transparent)}.logo-marquee-bottom-section_root__ztG2b .logo-marquee-bottom-section_viewport__xHvrj{width:var(--hero-panel-width,100%);margin-inline:auto}.logo-marquee-bottom-section_viewport__xHvrj:focus-visible{outline:2px solid var(--text-on-dark);outline-offset:-4px}.logo-marquee-bottom-section_track__aWpbL{display:flex;align-items:center;gap:4rem;width:max-content;margin:0;padding:0 4rem 0 0;list-style:none;animation:logo-marquee-bottom-section_marqueeBottom__yrZR_ 40s linear infinite}.logo-marquee-bottom-section_viewport__xHvrj:focus-visible .logo-marquee-bottom-section_track__aWpbL,.logo-marquee-bottom-section_viewport__xHvrj:hover .logo-marquee-bottom-section_track__aWpbL{animation-play-state:paused}.logo-marquee-bottom-section_badge__eQEtV{flex:0 0 auto}.logo-marquee-bottom-section_badgeImage__6jNS9{display:block;height:3.25rem;width:auto;object-fit:contain;filter:var(--badge-mono-filter,grayscale(1) contrast(1.05) brightness(1.1));opacity:.85}.logo-marquee-bottom-section_root__ztG2b[data-tone=color] .logo-marquee-bottom-section_badgeImage__6jNS9{filter:none;opacity:1}@keyframes logo-marquee-bottom-section_marqueeBottom__yrZR_{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@media (min-width:40rem){.logo-marquee-bottom-section_heroBooking__FevEn,.logo-marquee-bottom-section_heroContent__xCt9B{width:min(calc(100% - 4rem),82rem)}}@media (min-width:60rem){.logo-marquee-bottom-section_insetContent__Uimy3 .logo-marquee-bottom-section_heroBooking__FevEn,.logo-marquee-bottom-section_insetContent__Uimy3 .logo-marquee-bottom-section_heroContent__xCt9B{width:var(--frame)}.logo-marquee-bottom-section_root__ztG2b[data-has-background-video=true]{--hero-video-control-right:calc((100% - var(--frame)) / 2)}}@media (min-width:900px){.logo-marquee-bottom-section_heroBooking__FevEn{display:block;padding-bottom:calc(var(--hero-strip-height, 10rem) + 1.5rem)}.logo-marquee-bottom-section_root__ztG2b:has(.logo-marquee-bottom-section_heroBooking__FevEn) .logo-marquee-bottom-section_heroContent__xCt9B{min-height:calc(100svh - 18rem);padding-bottom:0}}@media (max-width:47.99rem){.logo-marquee-bottom-section_root__ztG2b:before{background:linear-gradient(90deg,var(--scrim) 0,color-mix(in srgb,var(--scrim) 68%,transparent) 78%,transparent 100%),linear-gradient(0deg,color-mix(in srgb,var(--scrim) 84%,transparent) 0,transparent 60%)}}@media (min-width:64rem){.logo-marquee-bottom-section_heroContent__xCt9B[data-has-widget=true]{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,24rem);align-items:end;column-gap:clamp(2rem,4vw,5rem)}.logo-marquee-bottom-section_heroAside__d_Rmz{margin-top:0}.logo-marquee-bottom-section_heroContent__xCt9B[data-has-widget=true] .logo-marquee-bottom-section_scrollCue__znDFK{position:absolute;top:100%;left:0}}@media (prefers-reduced-motion:reduce){.logo-marquee-bottom-section_track__aWpbL{animation:none}.logo-marquee-bottom-section_badge__eQEtV[aria-hidden=true]{display:none}}.logo-marquee-bottom-section_imageCard__JuKkL{position:relative;overflow:hidden;aspect-ratio:4/3;margin-bottom:1.25rem;border-radius:1.5rem;background:var(--bg-elev-2)}.logo-marquee-bottom-section_imageCard__JuKkL img{object-fit:cover}.logo-marquee-bottom-section_root__ztG2b[data-surface=solid]{background:var(--bg-base);color:var(--text)}.logo-marquee-bottom-section_root__ztG2b[data-surface=solid]:before{content:none}.logo-marquee-bottom-section_root__ztG2b[data-surface=solid] .logo-marquee-bottom-section_heroCopy__Tp_1D{border-color:var(--text-muted);color:var(--text-muted)}.logo-marquee-bottom-section_root__ztG2b[data-surface=solid] .logo-marquee-bottom-section_heroCta__Aa2Mt{border-color:var(--text);background:var(--text);color:var(--bg-elev-1)}.logo-marquee-bottom-section_root__ztG2b[data-surface=solid] .logo-marquee-bottom-section_heroCtaSecondary__kvuct{background:transparent;color:var(--text)}.logo-marquee-bottom-section_root__ztG2b[data-surface=solid] .logo-marquee-bottom-section_scrollCue__znDFK{color:var(--text)}.logo-marquee-bottom-section_root__ztG2b[data-surface=solid] :is(.logo-marquee-bottom-section_heroCta__Aa2Mt,.logo-marquee-bottom-section_scrollCue__znDFK,.logo-marquee-bottom-section_viewport__xHvrj):focus-visible{outline-color:var(--text)}.logo-marquee-bottom-section_root__ztG2b[data-surface=solid] .logo-marquee-bottom-section_strip__bqRPC{background:var(--bg-base)}.logo-marquee-bottom-section_root__ztG2b[data-surface=solid] .logo-marquee-bottom-section_label__eF_Uj{color:var(--text-muted)}.logo-marquee-bottom-section_lightStrip__RTSCa{position:relative;inset:auto;background:transparent;color:var(--text)}.logo-marquee-bottom-section_lightStrip__RTSCa .logo-marquee-bottom-section_label__eF_Uj{color:var(--text-muted)}.logo-marquee-bottom-section_lightStrip__RTSCa .logo-marquee-bottom-section_viewport__xHvrj:focus-visible{outline-color:var(--text)}.logo-marquee-bottom-section_lightStrip__RTSCa .logo-marquee-bottom-section_badgeImage__6jNS9{filter:none;opacity:1}@media (min-width:64rem){.logo-marquee-bottom-section_root__ztG2b[data-surface=solid] .logo-marquee-bottom-section_heroContent__xCt9B[data-has-widget=true]{grid-template-columns:minmax(0,1.15fr) minmax(0,32rem);align-items:center}}@media (min-width:900px){.logo-marquee-bottom-section_scrollCue__znDFK[data-behind-booking=true]{display:none}}