/* Hero right-side video window */

.hero-video .video-frame{
 position: relative;
}

.hero-video .video-frame.video-error::after{
 content: attr(data-video-error);
 position:absolute;
 inset:0;
 display:flex;
 align-items:center;
 justify-content:center;
 padding:14px;
 text-align:center;
 font-size:.9rem;
 line-height:1.35;
 background: rgba(0,0,0,.55);
 backdrop-filter: blur(4px);
}

/* Hero layout */

.hero-wrap{
 display:grid;
 grid-template-columns: 1.25fr 0.75fr;
 gap:24px;
 align-items:start;
}

.hero-copy{ min-width:0; }
.hero-video{ min-width:0; }

.hero-video .video-frame{
 width:100%;
 aspect-ratio:1/1;
 border-radius:16px;
 overflow:hidden;
 border:1px solid rgba(255,255,255,.14);
 background: rgba(255,255,255,.04);
 box-shadow:0 10px 30px rgba(0,0,0,.25);
}

.hero-video video{
 width:100%;
 height:100%;
 object-fit:cover;
 display:block;
}

@media (max-width:980px){
 .hero-wrap{ grid-template-columns:1fr; }
 .hero-video{ max-width:560px; }
}