.home-hero-video-surface { position:relative; }
.home-intro-trigger {
  position:absolute;
  inset-inline-start:20px;
  bottom:20px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:44px;
  padding:9px 13px;
  border:1px solid color-mix(in srgb,var(--navy) 15%,transparent);
  border-radius:999px;
  background:rgba(255,255,255,.86);
  color:var(--navy);
  font-family:inherit;
  font-size:11px;
  font-weight:500;
  line-height:1.3;
  cursor:pointer;
}
.home-intro-trigger:hover { background:var(--white); }
.home-intro-trigger:focus-visible,.home-intro-close:focus-visible {
  outline:2px solid var(--cyan);
  outline-offset:4px;
}
.home-intro-trigger svg,.home-intro-close svg { flex:none; }
body.home-intro-is-open { overflow:hidden; }
.home-intro-dialog {
  width:min(960px,calc(100vw - 32px));
  max-width:calc(100vw - 32px);
  max-height:calc(100dvh - 32px);
  margin:auto;
  padding:0;
  overflow:auto;
  border:0;
  border-radius:12px;
  background:var(--white);
  color:var(--navy);
  box-shadow:0 20px 70px rgba(0,0,0,.2);
}
.home-intro-dialog::backdrop { background:rgba(15,25,52,.76); }
.home-intro-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 12px 8px 20px;
}
.home-intro-header h2 { margin:0; color:var(--navy); font-size:15px; font-weight:500; }
.home-intro-close {
  display:flex;
  align-items:center;
  justify-content:center;
  flex:none;
  width:44px;
  height:44px;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:var(--navy);
  cursor:pointer;
}
.home-intro-close:hover { background:var(--gray-white); }
.home-intro-player { display:block; width:100%; aspect-ratio:16/9; background:var(--white); }
.home-intro-notice { margin:0; padding:12px 20px; color:var(--navy); font-size:13px; }
.home-intro-notice[hidden] { display:none; }
@media (max-width:767px) {
  .home-intro-trigger { inset-inline-start:16px; bottom:16px; }
  .home-intro-dialog { border-radius:8px; }
}
