/* TV PLAY V1.15 — acceso a presentación oficial VIVA Player.
 * Video de TV PLAY: producción original. La demo VIVA se reproduce en el sitio oficial.
 * La maqueta del celular es original y no copia capturas promocionales de terceros. */
.viva-official-promo{
  margin-top:27px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:9px;
  padding:18px 19px 17px;
  border-radius:15px;
  border:1px solid #2e5b7d;
  background:linear-gradient(120deg,rgba(17,55,91,.65),rgba(8,28,54,.5));
}
.viva-official-promo-kicker{
  color:#74dce9;
  font-weight:800;
  font-size:10px;
  line-height:1.35;
  letter-spacing:1.45px;
}
.viva-official-promo-link{
  display:flex;
  align-items:center;
  gap:11px;
  text-decoration:none;
  color:#f5fbff;
  font-weight:790;
  font-size:14px;
  line-height:1.4;
  width:100%;
  transition:color .15s;
}
.viva-official-promo-link:hover{color:#77e8f7}
.viva-official-promo-link:focus-visible{outline:3px solid #73e4f7;outline-offset:6px;border-radius:6px}
.viva-official-promo-play{
  width:40px;
  height:40px;
  flex-shrink:0;
  display:grid;
  place-items:center;
  border-radius:50%;
  font-size:17px;
  font-weight:750;
  color:#fff;
  background:linear-gradient(130deg,#24b4e5,#3c60ff);
  box-shadow:0 5px 22px rgba(36,148,238,.22);
}
.viva-official-promo-arrow{color:#85e8f2;margin-left:auto;font-size:20px;flex-shrink:0}
.viva-official-promo small{
  color:#a0bbd2;
  font-size:11px;
  line-height:1.7;
  padding-left:51px;
  max-width:100%;
}
.hero-video-visual{isolation:isolate}
.tvplay-phone-mock{
  position:absolute;
  z-index:4;
  left:-38px;
  top:41%;
  transform:rotate(-5deg);
  width:116px;
  height:206px;
  background:linear-gradient(140deg,#385578,#101e33);
  border:5px solid #263d5b;
  border-radius:20px;
  box-shadow:0 24px 44px rgba(0,0,0,.5),0 0 0 1px #7294ad,0 0 26px rgba(43,154,239,.15);
  padding:4px;
  pointer-events:none;
  overflow:hidden;
}
.tvplay-phone-notch{
  width:30px;
  height:6px;
  position:absolute;
  top:7px;left:50%;
  transform:translateX(-50%);
  border-radius:0 0 6px 6px;
  background:#071222;
  z-index:1;
}
.tvplay-phone-screen{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  height:100%;
  gap:9px;
  padding:15px 9px 8px;
  border-radius:14px;
  background:radial-gradient(ellipse at 75% 37%,rgba(77,171,239,.42),transparent 59%),linear-gradient(155deg,#12416d,#101a39 80%);
  overflow:hidden;
}
.tvplay-phone-brand{
  font-size:12px;
  color:#fff;
  font-weight:870;
  letter-spacing:-.5px;
}
.tvplay-phone-brand b{color:#63e0f1}
.tvplay-phone-eyebrow{font-size:7px;color:#96e9f4;font-weight:830;letter-spacing:.75px}
.tvplay-phone-screen strong{color:#f6fbff;font-size:17px;line-height:1.13;letter-spacing:-.04em}
.tvplay-phone-categories{display:flex;gap:4px;flex-wrap:wrap}
.tvplay-phone-categories span{
  background:rgba(59,140,206,.34);
  border:1px solid rgba(112,198,246,.24);
  color:#d3f6ff;
  border-radius:4px;
  font-size:6px;
  padding:5px 4px;
  font-weight:750;
}
@media(min-width:1440px){
  .tvplay-phone-mock{left:-55px;top:38%;width:125px;height:218px}
}
@media(max-width:1100px){
  .tvplay-phone-mock{display:none}
}
@media(max-width:600px){
  .viva-official-promo{margin-top:22px;padding:15px;gap:8px}
  .viva-official-promo-kicker{font-size:9px}
  .viva-official-promo-link{font-size:13px;gap:10px}
  .viva-official-promo-play{width:36px;height:36px;font-size:15px}
  .viva-official-promo small{padding-left:46px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){.viva-official-promo-link{transition:none}}
