.hero__art--video{height:auto;display:block}
.hero__art--video .hero__video-frame{position:relative;inset:auto;right:auto;top:auto;width:100%;height:auto;aspect-ratio:16/9;
  border:1px solid rgba(255,255,255,.21);border-radius:76px 14px 76px 14px;background:#0b2a2d;box-shadow:0 30px 56px rgba(0,0,0,.28);overflow:hidden;
  isolation:isolate;container-type:inline-size}
.hero__art--video .hero__video-frame:after{display:none}
.hero__video{display:block;width:100%;height:100%;object-fit:cover;background:#0b2a2d;transition:opacity .35s ease}
.hero__endcta{position:absolute;left:50%;top:74%;z-index:2;display:inline-flex;align-items:center;gap:.6em;max-width:92%;
  padding:.9em 1.25em .9em 1.4em;border-radius:999px;background:var(--green-deep,#177a3c);color:#fff;text-decoration:none;white-space:nowrap;
  font-family:Manrope,Arial,sans-serif;font-size:clamp(9.5px,1.78cqi,15px);font-weight:800;letter-spacing:-.005em;line-height:1.15;
  box-shadow:0 10px 26px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.16);
  opacity:0;visibility:hidden;transform:translate(-50%,-50%) translateY(10px);
  transition:opacity .45s ease,transform .45s ease,visibility 0s linear .45s,background-color .2s ease}
.hero__endcta:after{content:"";position:absolute;inset:-9px -4px}
.hero__endcta svg{flex:none;width:1.15em;height:1.15em;transition:transform .2s ease}
.hero__endcta:hover{background:#1f9149}
.hero__endcta:hover svg{transform:translateX(3px)}
.hero__endcta:focus-visible{outline:3px solid #83dc9d;outline-offset:3px}
.is-endcard .hero__endcta{opacity:1;visibility:visible;transform:translate(-50%,-50%);transition:opacity .45s ease,transform .45s ease,visibility 0s,background-color .2s ease}
@container (max-width:480px){.hero__endcta{top:78%;padding:.85em 1.1em .85em 1.25em}}
.hero__grid--video{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:4.5%}
.hero__grid--video .hero__copy{container-type:inline-size}
.hero__grid--video h1{font-size:clamp(34px,10.5cqi,67px);max-width:none}
@media (max-width:1100px){
  .hero__grid--video{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:3.5%}
  .hero__grid--video .hero__actions{gap:16px 18px}
}
@media (max-width:960px){
  .hero__grid--video{display:flex;flex-direction:column;align-items:stretch;gap:22px}
  .hero__grid--video h1{font-size:clamp(38px,8.6cqi,60px)}
  .hero__art--video{max-width:none;margin:8px 0 0}
}
@media (max-width:650px){
  .hero__art--video{max-width:none;margin:12px 0 0}
  .hero__art--video .hero__video-frame{border-radius:44px 10px 44px 10px}
}
