/* One homepage-sized video stage for home, service and geo heroes. */
.hero,.cluster-hero{height:min(78vh,720px);min-height:540px}
.cluster-hero>.wrap{height:100%;min-height:0;padding:2rem 0}
.cluster-poster,.cluster-video,.geo-still{object-position:65% center}
@media(max-width:1060px){
 .hero,.cluster-hero{height:560px;min-height:560px}
 .hero .wrap{height:100%}
 .cluster-hero>.wrap{height:100%;min-height:0;align-items:center;padding:1.5rem 0 3.5rem}
 .cluster-hero h1{font-size:clamp(2.35rem,5.7vw,4.5rem);margin-bottom:.6rem}
 .cluster-tagline{font-size:1.8rem;margin-bottom:.8rem}
 .cluster-intro{font-size:1rem;margin-bottom:1rem}
 .cluster-hero .row{gap:.7rem}
 .cluster-hero .row .btn{font-size:.9rem;padding:.85rem .9rem}
 .hero-warranty{padding:.55rem .8rem;margin-bottom:1rem}
 .hero-warranty strong{font-size:1.15rem}
}
@media(max-width:760px){
 .cluster-hero h1{font-size:clamp(2.35rem,10vw,3.4rem)}
 .cluster-tagline{font-size:1.7rem;line-height:1.12;margin-bottom:.8rem}
 .cluster-intro{font-size:.97rem;line-height:1.55}
 .cluster-hero .kick{font-size:.76rem;margin-bottom:.6rem}
}
@media(max-width:380px){
 .cluster-hero>.wrap{padding:1.25rem 0 3.5rem}
 .cluster-tagline{font-size:1.55rem}
 .cluster-intro{font-size:.92rem;line-height:1.5}
 .cluster-hero .row{gap:.55rem}
 .cluster-hero .row .btn{font-size:.84rem;padding:.8rem .75rem}
 .hero-warranty strong{font-size:1.05rem}
 .hero-warranty span{font-size:.7rem}
}
