/* A scoped hero update; existing typography, navigation and copy remain intact. */
.hero--video .hero__media video { object-fit: cover; }
.hero--video .hero__poster { position:absolute;inset:0;object-fit:cover; }
.hero--video .hero__media video { position:relative; }
.hero--video-error .hero__media video { visibility:hidden; }
.hero--video .hero__tools { left:22px;bottom:22px;gap:8px;align-items:center; }
/* Restore the original reference: small outlined circles with icon-only faces. */
.hero--video .hero__tool { position:relative;width:28px;min-width:28px;height:28px;min-height:28px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.28);color:#fff;cursor:pointer; }
/* Invisible hit slop enlarges each target without changing the 28px circle. */
.hero--video .hero__tool::before { content:"";position:absolute;inset:-4px;border-radius:50%; }
.hero--video .hero__tool span { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.hero--video .hero__tool svg { width:10px;height:10px;flex:none; }
.hero--video .hero__tool:focus-visible { outline:2px solid white;outline-offset:3px; }
.hero--video .hero__tool:disabled { opacity:.5;cursor:default; }
.hero--video [data-video-play][data-playing="true"] .icon-play,
.hero--video [data-video-play][data-playing="false"] .icon-pause,
.hero--video [data-video-sound][data-muted="true"] .icon-sound,
.hero--video [data-video-sound][data-muted="false"] .icon-muted { display:none; }
.hero--video .hero__status {position:absolute;left:22px;bottom:74px;z-index:12;font-size:11px;color:white;text-shadow:0 1px 3px #000;}
@media(max-width:600px) {
  /* Preserve every moving subject and embedded caption in the 2:1 film.
     Remove the inherited off-centre 150% still-photo crop on mobile only. */
  .hero.hero--video { aspect-ratio:2 / 1;height:auto;min-height:0;background:#51483f; }
  .hero--video .hero__media { inset:0;width:100%;height:100%; }
  .hero--video .hero__media video,
  .hero--video .hero__media .hero__poster { width:100%;height:100%;object-fit:contain;object-position:50% 50%; }
  .hero--video .hero__shade { inset:0;height:100%;background:linear-gradient(180deg,transparent 48%,rgba(26,18,12,.08) 62%,rgba(26,18,12,.5)); }
  .hero--video .hero__copy { top:auto;bottom:12px;width:90%; }
  .hero--video .hero__title { margin-bottom:8px; }
  .hero--video .hero__cta { min-height:30px;padding:5px 18px; }
  .hero--video .hero__tools { left:12px;bottom:14px; }
  .hero--video .hero__status { left:12px;bottom:50px;max-width:80px;font-size:10px; }
}
