/* Home hero (desktop only, 761px and wider): short LED light cove installation video on the right, full-width compact estimator banner below.
   Phones keep the original hero (coffered-ceiling photo and the original banner): none of these rules apply there and the video figure is not shown. */
@media (min-width:761px){
.home-page .hero.hero--est{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);grid-template-rows:auto auto;column-gap:32px;row-gap:14px;align-items:stretch;padding-top:14px;padding-bottom:6px}
.home-page .hero.hero--est>div:first-child{grid-column:1;grid-row:1;align-self:center}
.home-page .hero.hero--est h1{margin:8px 0 10px}
.home-page .hero.hero--est .lead{font-size:clamp(15px,1.3vw,17px);line-height:1.45;max-width:640px}
.home-page .hero.hero--est .actions{margin-top:14px}
.home-page .hero.hero--est .hero-video{grid-column:2;grid-row:1;position:relative;min-height:0;margin:0;display:flex;flex-direction:column;min-width:0;align-self:stretch}
.home-page .hero.hero--est .hero-video__frame{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);flex:1 1 0;min-height:240px;contain:size;overflow:hidden;border-radius:16px;background:#d9dccf}
.home-page .hero.hero--est .hero-video .hero-video__poster,.home-page .hero.hero--est .hero-video .hero-video__el{position:static;grid-area:1/1;display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:none;max-height:none;align-self:stretch;justify-self:stretch;object-fit:cover;border-radius:0}
.home-page .hero.hero--est .hero-video .hero-video__el{opacity:0;transition:opacity .5s ease}
.home-page .hero.hero--est .hero-video .hero-video__frame.is-playing .hero-video__el{opacity:1}
.hero-video figcaption{margin:8px 2px 0;font-size:12.5px;line-height:1.4;color:var(--muted)}
/* estimator banner: full width under text and video, edges aligned with them, text left, button right, short */
.home-page .hero.hero--est>.est-banner{grid-column:1 / -1;grid-row:2;position:relative;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:24px;margin:0;padding:16px 28px;border-radius:12px;overflow:hidden;background:#173536;min-height:0}
.home-page .hero.hero--est>.est-banner::before{display:none}
.home-page .hero.hero--est>.est-banner .est-banner__media{position:absolute;inset:0;z-index:0;height:auto;border-radius:0;opacity:.28}
.home-page .hero.hero--est>.est-banner .est-banner__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.home-page .hero.hero--est>.est-banner .est-banner__copy{position:relative;z-index:1;flex:1 1 auto;width:100%;max-width:none;padding:0;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px;align-items:center}
.home-page .hero.hero--est>.est-banner .est-banner__copy>*:not(.est-banner__button){grid-column:1}
.home-page .hero.hero--est>.est-banner .est-banner__eyebrow{margin:0 0 4px}
.home-page .hero.hero--est>.est-banner h2{margin:0 0 3px;font-size:clamp(19px,1.7vw,24px);line-height:1.15}
.home-page .hero.hero--est>.est-banner .est-banner__sub{margin:0;font-size:14px}
.home-page .hero.hero--est>.est-banner .est-banner__button{grid-column:2;grid-row:1 / span 3;position:relative;z-index:1;width:auto;margin:0;min-height:44px;white-space:nowrap}
.service-strip{padding:14px 0}
@media (max-width:900px){.home-page .hero.hero--est{column-gap:20px}.home-page .hero.hero--est .hero-video__frame{min-height:200px}}
.home-page .hero.hero--est .hero-photo{display:none}
}
@media (max-width:760px){.home-page .hero.hero--est .hero-video{display:none}}
@media (prefers-reduced-motion:reduce){.hero-video__el{display:none}}
