/* Prominent trailer feature early in the homepage story. */
.home-trailer-section{position:relative;padding:48px 0;background:linear-gradient(115deg,#f5f3f8 0%,#f8f7fb 58%,#f0f1f8 100%);border-block:1px solid rgba(45,46,95,.08)}
.home-trailer-section>.wrap{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:24px;max-width:1440px}
.home-trailer-heading{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:760px;text-align:center}
.home-trailer-heading .eyebrow{margin:0}
.home-trailer-heading h2{margin:0;color:#2D2E5F;font-size:34px;font-weight:400;line-height:1.2}
.home-trailer-heading p{margin:0;color:#55587A;font-size:18px;line-height:1.5}
.home-trailer-slot{width:100%;min-width:0;margin:0 auto}
.tvt{position:relative;width:100%;padding:2px;border:1px solid rgba(45,46,95,.16);border-radius:16px;background:#101226;box-shadow:0 18px 40px -28px rgba(45,46,95,.52);overflow:hidden}
.tvt video{display:block;width:100%;aspect-ratio:16/9;border-radius:13px;background:#101226;object-fit:contain}
.tvt-snd{position:absolute;right:16px;bottom:16px;display:grid;width:44px;height:44px;place-items:center;padding:0;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(255,255,255,.94);color:#2D2E5F;box-shadow:0 4px 16px rgba(15,23,42,.2);cursor:pointer;transition:transform .18s ease,background .18s ease}
.tvt-snd:hover{background:#fff;transform:translateY(-1px)}
.tvt-snd:focus-visible{outline:3px solid #E91E63;outline-offset:3px}
.tvt-snd svg{width:20px;height:20px}
.tvt .tvt-pp{right:70px}
.tvt .tvt-expand{right:124px}
.tvt:fullscreen,.tvt.is-expanded{position:fixed;inset:0;z-index:10000;display:grid;width:100vw;height:100vh;max-width:none;place-items:center;padding:0;border:0;border-radius:0;background:#080914;box-shadow:none}
.tvt:fullscreen video,.tvt.is-expanded video{width:100%;height:100%;aspect-ratio:auto;border-radius:0;object-fit:contain}
.tvt:fullscreen .tvt-snd,.tvt.is-expanded .tvt-snd{top:18px;bottom:auto}
.tvt:fullscreen .tvt-expand,.tvt.is-expanded .tvt-expand{right:16px}
.tvt:fullscreen .tvt-pp,.tvt.is-expanded .tvt-pp{right:70px}
.tvt:fullscreen .tvt-snd:not(.tvt-pp):not(.tvt-expand):not(.tvt-share),.tvt.is-expanded .tvt-snd:not(.tvt-pp):not(.tvt-expand):not(.tvt-share){right:124px}
@media(max-width:760px){.home-trailer-section{padding:28px 0}.home-trailer-section>.wrap{gap:18px}.home-trailer-heading{max-width:100%;gap:8px}.home-trailer-heading h2{font-size:25px}.home-trailer-heading p{font-size:16px}}
@media(max-width:480px){.home-trailer-section{padding:24px 0}.home-trailer-heading h2{font-size:23px}.tvt{border-radius:13px}.tvt video{border-radius:10px}.tvt-snd{right:12px;bottom:12px;width:48px;height:48px;touch-action:manipulation}.tvt .tvt-pp{right:68px}.tvt .tvt-expand{right:124px}.tvt:fullscreen .tvt-snd,.tvt.is-expanded .tvt-snd{top:12px;bottom:auto}.tvt:fullscreen .tvt-expand,.tvt.is-expanded .tvt-expand{right:12px}.tvt:fullscreen .tvt-pp,.tvt.is-expanded .tvt-pp{right:68px}.tvt:fullscreen .tvt-snd:not(.tvt-pp):not(.tvt-expand):not(.tvt-share),.tvt.is-expanded .tvt-snd:not(.tvt-pp):not(.tvt-expand):not(.tvt-share){right:124px}}
@media(prefers-reduced-motion:reduce){.tvt-snd{transition:none}}

/* ---- Watch in landscape (mobile) ----
   Offered only on a touch phone, where it earns its place; it takes the
   Expand slot rather than adding a fourth control to a narrow bar. */
.tvt .tvt-rotate{display:none;right:124px}
@media (max-width:900px) and (pointer:coarse){
  .tvt .tvt-expand{display:none}
  .tvt .tvt-rotate{display:grid}
}
.tvt .tvt-rotate[aria-pressed="true"]{background:#2D2E5F;color:#fff;border-color:rgba(255,255,255,.4)}

/* Fallback for browsers that cannot lock orientation: rotate the player
   ourselves, but only while the device is actually being held upright. */
@media (orientation:portrait){
  .tvt.is-landscape{
    position:fixed;
    top:50%;
    left:50%;
    z-index:10000;
    display:grid;
    width:100vh;
    height:100vw;
    max-width:none;
    place-items:center;
    padding:0;
    border:0;
    border-radius:0;
    background:#080914;
    box-shadow:none;
    transform:translate(-50%,-50%) rotate(90deg);
    transform-origin:center center;
  }
  .tvt.is-landscape video{
    width:100%;
    height:100%;
    aspect-ratio:auto;
    border-radius:0;
    object-fit:contain;
  }
  .tvt.is-landscape .tvt-snd{top:18px;bottom:auto}
  .tvt.is-landscape .tvt-rotate{right:16px}
  .tvt.is-landscape .tvt-pp{right:70px}
  .tvt.is-landscape .tvt-snd:not(.tvt-pp):not(.tvt-expand):not(.tvt-share):not(.tvt-rotate){right:124px}
}

/* ---- Share ----
   A fourth control opening a small menu: copy the link, or hand it to
   Facebook, X or LinkedIn. The menu sits above the control bar, so the
   player drops its clipping while it is open. */
.tvt .tvt-share{right:178px}
.tvt.has-share-open{overflow:visible}
.tvt-share-menu{position:absolute;right:16px;bottom:72px;z-index:6;min-width:208px;padding:8px;border:1px solid rgba(45,46,95,.14);border-radius:14px;background:rgba(255,255,255,.98);box-shadow:0 18px 44px -20px rgba(15,23,42,.6)}
.tvt-share-title{margin:4px 8px 6px;color:#55587A;font-size:11px;font-weight:600;letter-spacing:.09em;line-height:1.2;text-transform:uppercase}
.tvt-share-item{display:flex;width:100%;align-items:center;gap:10px;padding:9px 10px;border:0;border-radius:10px;background:none;color:#2D2E5F;font:inherit;font-size:14px;line-height:1.2;text-align:left;text-decoration:none;cursor:pointer;transition:background .18s ease}
.tvt-share-item:hover{background:#F2F1F8}
.tvt-share-item:focus-visible{outline:3px solid #E91E63;outline-offset:-1px}
.tvt-share-item svg{width:18px;height:18px;flex:none}
.tvt-share-item.is-done{color:#167A4B;font-weight:600}
.tvt:fullscreen .tvt-share,.tvt.is-expanded .tvt-share{top:18px;bottom:auto;right:178px}
.tvt:fullscreen .tvt-share-menu,.tvt.is-expanded .tvt-share-menu{top:72px;bottom:auto}
@media (orientation:portrait){
  .tvt.is-landscape .tvt-share{top:18px;bottom:auto;right:178px}
  .tvt.is-landscape .tvt-share-menu{top:72px;bottom:auto}
}
@media(max-width:480px){
  .tvt .tvt-share{right:180px}
  .tvt-share-menu{right:12px;bottom:76px}
  .tvt:fullscreen .tvt-share,.tvt.is-expanded .tvt-share{top:12px;right:180px}
  .tvt:fullscreen .tvt-share-menu,.tvt.is-expanded .tvt-share-menu{top:68px}
}
@media(prefers-reduced-motion:reduce){.tvt-share-item{transition:none}}
