/* Compact portrait presentation directly below the platform carousel. */
.platforms-band .presentation-band {
  width: min(calc(100% - 48px),860px);
  margin: 28px auto 36px;
  background: linear-gradient(125deg,#dceef6,#f8fcff);
  border: 1px solid #c5dce7;
  border-radius: 24px;
  box-shadow: 0 14px 36px -28px #163f5866,inset 0 1px 0 #ffffffb3;
  overflow: hidden;
}
.presentation-band::before,.presentation-band::after { content: none; }
.light-band .presentation-band .presentation {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(0,1fr) 260px;
  align-items: center;
  gap: 32px;
  padding: 28px 32px;
}
.presentation-band .presentation-copy h2 { font-size: clamp(34px,3.2vw,46px); line-height: 1.08; }
.presentation-band .presentation-copy > .eyebrow { font-size: 9px; letter-spacing: .13em; }
.presentation-band .presentation-copy > p { font-size: 15px; max-width: 320px; margin-top: 18px; line-height: 1.7; }
.presentation-band .presentation-copy .vsl-caption { margin-block: 24px; font-size: 12px; }
.presentation-band .presentation-copy > .text-link { font-size: 13px; min-height: 44px; }
.light-band .presentation-band .presentation .vsl-player {
  width: 100%; max-width: 260px; min-height: 0; aspect-ratio: 9/16; justify-self: center;
  background: #06121d; border-radius: 18px; border: 1px solid #789eaf66;
  box-shadow: 0 12px 30px -16px #163f5870;
}
.vsl-player video { display: block; position: relative; width: 100%; height: 100%; object-fit: contain; border-radius: inherit; }
.vsl-start { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 16px; color: white; border: 0; background: linear-gradient(transparent 15%,#020d1a40 55%,transparent); cursor: pointer; font: inherit; }
.vsl-start[hidden] { display: none; }
.vsl-start .vsl-play { width: 64px; height: 64px; background: #07354cdd; border-color: #b1efff; box-shadow: 0 8px 35px #0006; }
.vsl-start .vsl-play svg { fill: #fff; stroke: #fff; }
.vsl-start > strong { border-radius: 999px; padding: 10px 14px; background: #061a2de8; font-size: 12px; font-weight: 650; }
.vsl-start:focus-visible { outline: 3px solid #20c4ed; outline-offset: -6px; border-radius: inherit; }
.vsl-status { position: absolute; bottom: 65px; inset-inline: 16px; margin: 0; padding: 12px; background: #071827ed; border-radius: 12px; color: #fff; font-size: 13px; text-align: center; }
.vsl-status:empty { display: none; }
.vsl-duration { display: block; margin-top: 5px; font-size: 12px; }
@media(max-width:650px) {
  .platforms-band .presentation-band { width: calc(100% - 40px); margin-block: 22px 28px; border-radius: 20px; }
  .light-band .presentation-band .presentation { grid-template-columns: minmax(0,1fr); padding: 24px 20px; gap: 22px; }
  .presentation-band .presentation-copy h2 { font-size: 34px; }
  .presentation-band .presentation-copy h2 br { display: none; }
  .presentation-band .presentation-copy > p { font-size: 14px; margin-top: 14px; }
  .presentation-band .presentation-copy .vsl-caption { margin-block: 18px; }
  .presentation-band .presentation-copy > .text-link { font-size: 12px; }
}

/* A single custom control; no browser timeline, menu or playback-speed picker. */
.vsl-player video { pointer-events: none; user-select: none; -webkit-user-select: none; -webkit-touch-callout: none; }
.vsl-player video::-webkit-media-controls { display: none !important; }
.vsl-start[data-playing="true"] { background: none; place-content: end center; padding-bottom: 14px; gap: 0; }
.vsl-start[data-playing="true"] > strong { display: none; }
.vsl-start[data-playing="true"] .vsl-play { width: 44px; height: 44px; margin: 0; background: #061a2dd9; box-shadow: 0 2px 12px #0004; }
.vsl-start[data-playing="true"] .vsl-play svg { display: none; }
.vsl-start[data-playing="true"] .vsl-play::after { content: ""; width: 13px; height: 17px; border-inline: 4px solid #fff; box-sizing: border-box; }
.vsl-noscript { position: absolute; inset: auto 16px 16px; padding: 12px; background: #061a2ded; color: #fff; border-radius: 10px; font-size: 13px; text-align: center; }
