/* TV PLAY V1.91 — Documentos informativos.
   Mantiene el contenido legal original y unifica la presentación con
   el sitio principal. También soporta el visor incrustado (?panel=1). */

:root {
  --bg:#091626;
  --panel:#10243e;
  --line:#2a4867;
  --muted:#bed0e5;
  --text:#f5faff;
  --a:#75dfea;
}
html {scroll-padding-top:95px;}
body {
  background:linear-gradient(180deg,#091626 0%,#0a1728 100%);
  color:#f5faff;
  min-height:100svh;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
.shell {
  width:min(1200px,calc(100% - 48px));
  margin-inline:auto;
}
.head {
  border-bottom:1px solid rgba(85,128,176,.22);
  background:rgba(7,13,27,.96);
  backdrop-filter:blur(14px);
  z-index:30;
}
.head .shell {min-height:88px;gap:24px;flex-wrap:nowrap;}
.identity {font-size:24px;gap:12px;flex-shrink:0;font-weight:830;letter-spacing:-.035em;}
.identity img {height:42px;width:42px;object-fit:contain!important;}
.top-nav {display:flex;align-items:center;gap:clamp(15px,2.2vw,34px);flex-wrap:nowrap;}
.top-nav a {font-size:14.5px;font-weight:670;color:#b8cadf;white-space:nowrap;}
.top-nav a:hover,.top-nav a:focus-visible {color:#84e8f3;}
.back-to-site {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-height:43px;
  padding:10px 14px;
  border:1px solid rgba(93,154,200,.56);
  border-radius:10px;
  color:#eefbff;
  background:rgba(30,72,110,.45);
  font-size:12px;
  font-weight:750;
  text-decoration:none;
}
.back-to-site:hover {background:rgba(39,104,159,.48);border-color:#5fddec;}
.breadcrumb {
  padding:34px 0 0;
  color:#8eaac6;
  font-size:13px;
}
.breadcrumb a {color:#80e6ef;text-decoration:none;font-weight:650;}
.breadcrumb a:hover {text-decoration:underline;}
.hero {padding:51px 0 37px;}
.kicker {font-size:12px;letter-spacing:.18em;font-weight:800;color:#62dfee;}
.hero h1 {
  font-size:clamp(37px,4.4vw,57px);
  line-height:1.12;
  max-width:900px;
  font-weight:830;
  letter-spacing:-.05em;
  margin:21px 0 16px;
}
.hero p {max-width:790px;font-size:17px;line-height:1.72;color:#bdd1e6;margin:0;}
.stack {
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(290px,.85fr);
  gap:21px;
  align-items:start;
  padding-bottom:100px;
}
.card {
  min-width:0;
  background:linear-gradient(153deg,#122b49 0%,#0b1d33 93%);
  border:1px solid rgba(69,107,151,.59);
  border-radius:19px;
  padding:36px 34px 40px;
  box-shadow:inset 0 1px 0 rgba(227,246,255,.05);
}
.card h2 {
  font-size:24px;
  font-weight:800;
  letter-spacing:-.032em;
  margin:0 0 16px;
  line-height:1.3;
}
.card h3 {
  color:#f4faff;
  font-size:18px;
  font-weight:770;
  letter-spacing:-.016em;
  margin:31px 0 11px;
}
.card p,.card li {
  font-size:15px;
  line-height:1.84;
  color:#cbdcf0;
}
.card p {margin:13px 0 17px;}
.card ol {padding-left:27px;counter-reset:item;}
.card ul {padding-left:25px;}
.card li+li {margin-top:14px;}
.card strong {color:#f2faff;}
.card a.textlink {color:#8ee8f4;text-decoration:underline;text-underline-offset:4px;font-weight:650;}
.card a.textlink:hover {color:#fff;}
.card .callout {
  border:1px solid rgba(77,148,200,.47);
  background:#0f3150;
  border-radius:13px;
  color:#d6e8f6;
  line-height:1.7;
  padding:18px 20px;
  font-size:14px;
  margin:23px 0;
}
.card .fine {font-size:12.5px!important;line-height:1.65;color:#a8c2da!important;}
.card aside {min-width:0;}
.stack > aside.card {
  position:sticky;
  top:111px;
  padding:28px 27px;
}
.logo-tile {gap:11px;margin-bottom:19px;align-items:center;}
.logo-tile img {
  height:50px!important;
  width:50px!important;
  border-radius:0!important;
  object-fit:contain!important;
}
.logo-tile strong {
  font-size:19px;
  font-weight:800;
  color:#f5faff;
}
.logo-tile p.fine {font-size:12px!important;margin:4px 0!important;}
.stack > aside.card h2 {font-size:21px;margin-bottom:10px;}
.stack > aside.card p {font-size:13.5px;line-height:1.75;color:#bed1e4;}
.cta {
  color:#fff;
  border-radius:11px;
  background:linear-gradient(115deg,#2f79fb,#3f56ed);
  border:1px solid rgba(133,177,248,.52);
  margin:14px 0;
  padding:12px 16px;
  font-size:13.5px;
  min-height:46px;
}
.cta:hover {filter:brightness(1.1);background:#357bfa;}
.related-links {
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(89,134,171,.36);
}
.related-links h3 {font-size:15px;letter-spacing:0;margin:0 0 12px;}
.related-links nav {display:flex;flex-direction:column;gap:5px;}
.related-links a {
  display:block;
  border-radius:8px;
  padding:9px 11px;
  font-size:12.5px;
  line-height:1.4;
  color:#b8d3e5;
  text-decoration:none;
  border:1px solid transparent;
}
.related-links a:hover {background:rgba(51,110,151,.2);color:#ebfbff;}
.related-links a[aria-current="page"] {
  color:#b2f1fc;
  background:#143653;
  border-color:rgba(88,159,200,.35);
  font-weight:750;
}
.field {gap:8px;margin-bottom:19px;}
.field label {font-size:13.5px;}
.field input,.field select,.field textarea {
  padding:13px 14px;
  background:#091b2f;
  border:1px solid #3b6184;
  font-size:14px;
}
.field textarea {min-height:144px;}
#formContacto .cta {margin-top:10px;}

/* Pie compartido por todas las páginas informativas. */
.info-foot {
  border-top:1px solid rgba(85,130,173,.33);
  background:#070e1b;
  padding:28px 0 30px;
}
.info-foot .shell {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px 40px;
  flex-wrap:wrap;
}
.info-foot-brand {
  display:flex;
  align-items:center;
  gap:10px;
}
.info-foot-brand img {width:31px;height:31px;object-fit:contain;}
.info-foot-brand span {color:#e9f6ff;font-size:16px;font-weight:810;}
.info-foot-brand span strong {color:#67e3f3;}
.info-foot .info-foot-links {display:flex;align-items:center;gap:12px 22px;flex-wrap:wrap;}
.info-foot a {margin:0;color:#b4c9dd;font-size:12px;line-height:1.5;text-decoration:none;}
.info-foot a:hover {color:#84e7f1;}
.info-foot .copyright {color:#849eb9;font-size:11px;white-space:nowrap;}

/* En el visor solo mostramos el documento, sin navegación duplicada
   ni sidebar. Las URLs individuales permanecen 100% navegables. */
html.tvplay-legal-embedded {scroll-padding-top:0;}
html.tvplay-legal-embedded body {
  background:#091626;
  margin:0;
}
html.tvplay-legal-embedded .head,
html.tvplay-legal-embedded .info-foot,
html.tvplay-legal-embedded .breadcrumb,
html.tvplay-legal-embedded .stack > aside.card,
html.tvplay-legal-embedded .back-to-site {display:none !important;}
html.tvplay-legal-embedded main.shell {
  width:min(840px,calc(100% - 42px));
  margin:auto;
}
html.tvplay-legal-embedded .hero {padding:34px 0 24px;}
html.tvplay-legal-embedded .hero h1 {
  font-size:clamp(27px,3.4vw,39px);
  line-height:1.15;
  margin:14px 0 11px;
}
html.tvplay-legal-embedded .hero p {font-size:14px;line-height:1.7;}
html.tvplay-legal-embedded .kicker {font-size:11px;}
html.tvplay-legal-embedded .stack {
  grid-template-columns:minmax(0,1fr);
  gap:0;
  padding-bottom:30px;
}
html.tvplay-legal-embedded .stack > article.card {
  background:transparent;
  border:0;
  box-shadow:none;
  border-radius:0;
  padding:0 0 24px;
}
html.tvplay-legal-embedded .card h2 {font-size:22px;}
html.tvplay-legal-embedded .card h3 {font-size:17px;}
html.tvplay-legal-embedded .card p,
html.tvplay-legal-embedded .card li {font-size:14px;line-height:1.8;}

/* Tablet, notebook y móvil. */
@media (max-width:1100px) {
  .shell {width:calc(100% - 44px);}
  .head .shell {gap:17px;}
  .top-nav {gap:15px;}
  .top-nav a {font-size:13px;}
  .card {padding:28px 26px;}
}
@media (max-width:950px) {
  .head .shell {min-height:78px;}
  .top-nav {display:none;}
  .back-to-site {margin-left:auto;}
  .stack {grid-template-columns:minmax(0,1fr);gap:20px;}
  .stack > aside.card {position:static;}
  .related-links nav {display:grid;grid-template-columns:1fr 1fr;gap:5px 10px;}
}
@media (max-width:600px) {
  .shell {width:calc(100% - 32px);}
  .head .shell {min-height:72px;flex-direction:row;align-items:center;gap:13px;padding:0;}
  .identity {font-size:20px;gap:8px;}
  .identity img {width:36px;height:36px;}
  .back-to-site {font-size:11px;min-height:41px;padding:10px 11px;}
  .breadcrumb {padding-top:24px;font-size:12px;}
  .hero {padding:42px 0 27px;}
  .hero h1 {font-size:clamp(32px,9vw,40px);margin:15px 0;}
  .hero p {font-size:14px;line-height:1.7;}
  .stack {gap:16px;padding-bottom:58px;}
  .card {padding:24px 20px 28px;border-radius:16px;}
  .card h2 {font-size:21px;}
  .card h3 {font-size:17px;margin-top:25px;}
  .card p,.card li {font-size:14px;line-height:1.78;}
  .card ol,.card ul {padding-left:20px;}
  .card .callout {padding:15px;font-size:13px;}
  .stack > aside.card {padding:23px 20px;}
  .related-links nav {grid-template-columns:minmax(0,1fr);}
  .info-foot {padding:25px 0 30px;}
  .info-foot .shell {gap:18px;}
  .info-foot .info-foot-links {gap:8px 15px;}
  .info-foot a {font-size:11px;}
  html.tvplay-legal-embedded main.shell {width:calc(100% - 28px);}
  html.tvplay-legal-embedded .hero {padding:25px 0 16px;}
  html.tvplay-legal-embedded .hero h1 {font-size:28px;}
  html.tvplay-legal-embedded .hero p {font-size:13px;}
  html.tvplay-legal-embedded .card p,
  html.tvplay-legal-embedded .card li {font-size:13.5px;line-height:1.75;}
}

/* Ir al contenido accesible por teclado. */
.info-skip {
  position:absolute;
  z-index:80;
  top:-80px;
  left:15px;
  padding:11px 15px;
  border-radius:9px;
  color:#071626;
  background:#e9fcff;
  font-size:13px;
  font-weight:750;
  text-decoration:none;
}
.info-skip:focus {top:12px;}
html.tvplay-legal-embedded .info-skip {display:none;}
