.hero .hero-visual{isolation:isolate;clip-path:url(#hero-photo-mask);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 23%);mask-image:linear-gradient(90deg,transparent 0%,#000 23%);overflow:hidden}
.hero .hero-visual:before{display:none}
.hero .hero-visual .hero-poster,.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;clip-path:none}
.hero-video{opacity:0;transition:opacity .6s ease}.hero-video.is-playing{opacity:1}
.hero .hero-note{display:none}

@media(min-width:600px){
 .hero{height:720px;min-height:720px;padding:0;display:block;background:#fff}
 .hero .hero-copy{position:relative;width:46%;max-width:none;padding:150px 0 0 5.96%;z-index:2}
 .hero h1{width:100%;max-width:100%;font-size:clamp(30px,3.8vw,55px);line-height:1.08;letter-spacing:-.025em;overflow-wrap:normal}
 .hero-description{width:100%;max-width:100%;font-size:16px;line-height:1.5}
 .hero-description .desktop-break{display:none}
 .hero .hero-visual{position:absolute;left:44%;right:auto;top:0;width:56%;height:680px;aspect-ratio:auto;margin:0}
 .hero .hero-wave{top:auto;bottom:-35px;height:120px}
 .hero .serving-badge{top:auto;bottom:38px;right:36px}
 .hero .hero-photo-phone{display:none}
 .hero-actions{flex-wrap:wrap}
 .hero .trust-list{flex-wrap:wrap;gap:10px}
 .hero .trust-list li{flex:0 1 auto}
}
@media(min-width:1441px){.hero .hero-visual{width:calc(56% + (100vw - 1440px)/2)}}
@media(min-width:2001px){.hero{height:760px;min-height:760px}.hero .hero-visual{height:725px}.hero .hero-copy{padding-top:165px}}
@media(min-width:600px) and (max-width:999px){
 .hero{height:720px;min-height:720px}
 .hero .hero-copy{padding:125px 0 0 28px;width:49%}
 .hero h1{font-size:clamp(29px,4.4vw,40px)}
 .hero .hero-visual{left:47%;width:53%;height:640px;top:38px}
 .hero .hero-actions{gap:10px}.hero-actions .button{min-height:44px}
 .hero .trust-list{display:grid;grid-template-columns:1fr;gap:7px;margin-top:18px}
 .hero .trust-list li{border:0;min-height:30px;font-size:11px;line-height:15px}
 .hero .serving-badge{right:12px;bottom:37px;width:165px;height:125px}
 .hero .serving-badge p{left:34px;top:47px;font-size:9px;line-height:14px}
 .hero .minnesota{width:32px;height:35px;right:15px;top:29px}
 
}
@media(min-width:600px) and (max-width:767px){.site-header{position:absolute;inset:0 0 auto;background:transparent}.hero .hero-copy{padding-top:117px}.hero .hero-actions{flex-direction:column;align-items:flex-start}.hero .eyebrow{font-size:10px;letter-spacing:1.4px}.hero .hero-description{font-size:15px}.hero .hero-visual{height:650px}.hero .leaves-left{top:120px}}
@media(max-width:599px){
 .hero .hero-copy{width:100%;max-width:560px}
 .hero h1{max-width:100%}
 .hero .hero-visual{position:relative;left:auto;right:auto;top:auto;width:100%;height:auto;aspect-ratio:576/454;margin-top:24px;order:1;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 15%);mask-image:linear-gradient(180deg,transparent 0%,#000 15%)}
 .hero .hero-photo-phone{display:none}
 
}
@media(prefers-reduced-motion:reduce){.hero-video{transition:none}}

/* Align the service-area badge with the outer edge of the hero media. */
.hero .serving-badge{right:0;bottom:12px;top:auto;transform:none}
.hero .serving-badge p,.hero .serving-badge .minnesota{transform:none}
@media(min-width:1441px){.hero .serving-badge{right:calc((1440px - 100vw)/2)}}
