/* Isolated pilot. No changes to the published static hero. */
.hero.hero--video { position: relative; isolation: isolate; background: #08183a; color: #fff; }
.hero--video .hero-film, .hero--video .hero-film-shade { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.hero--video .hero-film { object-fit: cover; object-position: 65% center; z-index: -2; }
.hero--video .hero-film-shade { z-index: -1; background: linear-gradient(90deg, rgba(5,19,47,.94) 0%, rgba(6,23,54,.82) 38%, rgba(6,23,54,.32) 100%), linear-gradient(0deg, rgba(5,19,47,.7), transparent 45%); }
.hero--video .hero-grid { display: block; min-height: 630px; }
.hero--video .hero-copy { max-width: 820px; padding: 72px 0 36px; transform: none; }
.hero--video .eyebrow { color: #ebc887; letter-spacing: .2em; }
.hero--video h1 { max-width: 800px; color: #fff; font-size: clamp(2.7rem, 4.6vw, 4.25rem); line-height: 1.08; text-wrap: balance; }
.hero--video .short-rule { background: #d3a562; margin-block: 25px; }
.hero--video .hero-subtitle { max-width: 650px; color: #e3eaf6; font-size: clamp(1.05rem, 1.5vw, 1.3rem); }
.hero--video .hero-meta { gap: 24px 36px; }
.hero--video .hero-meta > div { width: auto; min-width: 0; }
.hero--video .meta-icon { color: #e8c485; }
.hero--video .hero-meta small { color: #c0cce0; }
.hero--video .hero-meta b { color: #fff; }
.hero--video .button-gold { background: #d3a562; border-color: #d3a562; color: #08183a; }
.hero--video .button-gold:hover { background: #ebc887; border-color: #ebc887; }
.hero--video .button-outline { color: #fff; border-color: #8190aa; background: rgba(8,24,58,.28); }
.hero--video .button-outline:hover { background: rgba(255,255,255,.12); border-color: #fff; }
.hero--video .hero-note { max-width: 590px; margin-top: 25px; color: #dce4f1; border-color: #d3a562; }
.hero-film-tools { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-block: 0 24px; }
.hero-film-tools a { color: #c8d3e5; font-size: .75rem; text-underline-offset: 4px; text-decoration: underline; }
.hero-film-tools button { display: inline-flex; align-items: center; gap: 9px; min-height: 40px; padding: 8px 15px; border: 1px solid #8190aa; border-radius: 2px; color: #fff; background: rgba(8,24,58,.65); font: inherit; font-size: .75rem; cursor: pointer; }
.hero-film-tools button::before { content: '▶'; font-size: .65rem; }
.hero-film-tools button[data-playing="true"]::before { content: 'Ⅱ'; }
.hero-film-tools button[hidden] { display: none; }
.hero--video :focus-visible { outline: 3px solid #ebc887; outline-offset: 5px; }
@media (max-width: 820px) {
  .hero--video .hero-grid { min-height: 0; padding-inline: 24px; }
  .hero--video .hero-copy { padding: 56px 0 30px; }
  .hero--video .hero-film-shade { background: linear-gradient(90deg, rgba(5,19,47,.89), rgba(5,19,47,.63)), linear-gradient(0deg, rgba(5,19,47,.7), transparent); }
  .hero--video h1 { font-size: clamp(2.5rem, 6vw, 3.5rem); }
  .hero-film-tools { padding-inline: 24px; }
}
@media (max-width: 480px) {
  .hero--video .hero-grid, .hero-film-tools { padding-inline: 20px; }
  .hero--video .hero-copy { padding-top: 40px; }
  .hero--video h1 { font-size: clamp(2rem, 9vw, 2.7rem); }
  .hero--video .eyebrow { font-size: .65rem; line-height: 1.8; }
  .hero--video .hero-meta { display: grid; gap: 18px; }
  .hero--video .hero-subtitle { margin-bottom: 24px; }
  .hero--video .button-row { display: grid; }
  .hero--video .button-row .button { justify-content: center; }
  .hero-film-tools { flex-wrap: wrap; gap: 14px; }
}
