/* XMS v1.3.80 — immediate video-first homepage. A poster is shown only if
   autoplay fails or reduced motion is requested, not for a fixed 5.2s. */
.xms-main > .xms-top-video {
  position:relative;
  grid-column:1/-1;
  isolation:isolate;
  width:100vw;
  max-width:none;
  flex-shrink:0;
  overflow:hidden;
  --xms-video-h:clamp(480px,54vw,750px);
  height:var(--xms-video-h);
  background:#0d223f;
  color:#fff;
  border:0;
  border-radius:0;
}
.xms-home-study .xms-main > .xms-top-video {
  margin-left:calc(50% - 50vw);
  margin-top:-14px;
}
body:not(.xms-home-study) .xms-main > .xms-top-video {
  width:100%;
  --xms-video-h:clamp(460px,52vw,740px);
}
.xms-top-video-frame {
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  background:#0d223f;
}
/* Make the YouTube embed cover the hero at any aspect ratio. */
.xms-top-video-frame iframe.xms-top-video-embed {
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:max(100vw,calc(var(--xms-video-h) * 1.77777778))!important;
  height:max(var(--xms-video-h),calc(100vw * .5625))!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:16 / 9;
  border:0!important;
  transform:translate(-50%,-50%)!important;
  pointer-events:none!important;
  z-index:0;
  opacity:0;
  transition:opacity .25s ease;
}
.xms-top-video-frame video.xms-top-video-native {
  position:absolute;
  inset:0;
  z-index:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  pointer-events:none;
  border:0;
  background:#0d223f;
  opacity:0;
  transition:opacity .25s ease;
}
.xms-top-video-frame video.xms-top-video-native::-webkit-media-controls {display:none!important}
.xms-top-video-is-playing .xms-top-video-frame iframe.xms-top-video-embed,
.xms-top-video-is-playing .xms-top-video-frame video.xms-top-video-native {
  opacity:1;
}
/* Still artwork is strictly a fallback, never the default entrance view. */
.xms-top-video-frame .xms-top-video-fallback {
  position:absolute;
  inset:0;
  z-index:1;
  background:#e4f3ff var(--xms-video-poster) center / cover no-repeat;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.xms-top-video-is-still .xms-top-video-frame .xms-top-video-fallback {
  opacity:1;
  visibility:visible;
}
/* Small, non-clickable loading indicator instead of a misleading play button. */
.xms-top-video-loading-mark {
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  z-index:2;
  display:flex;
  align-items:center;
  gap:7px;
  pointer-events:none;
  opacity:0;
  visibility:hidden;
}
.xms-top-video-is-loading .xms-top-video-loading-mark {opacity:.92;visibility:visible}
.xms-top-video-loading-mark span {
  display:block;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#e5f5ff;
  box-shadow:0 0 15px rgba(92,183,255,.8);
  animation:xms-video-pulse 1s ease-in-out infinite alternate;
}
.xms-top-video-loading-mark span:nth-child(2) {animation-delay:.2s}
.xms-top-video-loading-mark span:nth-child(3) {animation-delay:.4s}
@keyframes xms-video-pulse {from{opacity:.35;transform:scale(.8)}to{opacity:1;transform:scale(1.15)}}
.xms-top-video-shade {
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(8,24,51,.14),rgba(8,24,51,0) 32%,rgba(8,24,51,0) 67%,rgba(8,24,51,.23));
}
/* Keep existing approved floating navigation and home section spacing. */
body.xms-home-study.xms-has-home-video .xms-site-header {
  background:rgba(247,251,255,.93)!important;
  border:1px solid rgba(255,255,255,.7);
  border-radius:22px;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  box-shadow:0 12px 40px rgba(4,28,53,.15);
  padding:2px 13px;
}
body.xms-has-home-video.xms-transparent .xms-site-header:not(.xms-home-study) {
  background:rgba(247,251,255,.94);
  color:#0c2348;
  box-shadow:0 12px 32px rgba(4,28,53,.1);
}
body.xms-has-home-video.xms-transparent .xms-site-header .xms-logo-img {filter:none}
body.home .xms-main > .xms-top-video {margin-bottom:clamp(36px,4vw,56px)}
@media(max-width:800px) {
  .xms-main > .xms-top-video {--xms-video-h:440px}
  body.home .xms-main > .xms-top-video {margin-bottom:34px}
}
@media(max-width:480px) {
  .xms-main > .xms-top-video {--xms-video-h:390px}
  body.home .xms-main > .xms-top-video {margin-bottom:25px}
}
@media(prefers-reduced-motion:reduce) {
  .xms-top-video-frame iframe.xms-top-video-embed,
  .xms-top-video-frame video.xms-top-video-native {display:none!important}
  .xms-top-video-frame .xms-top-video-fallback{opacity:1!important;visibility:visible!important}
  .xms-top-video-loading-mark {display:none!important}
}
