/* ===== RUNHOME — Programa de Asistencia de Compra ===== */

/* Figtree, autoalojada. Avenir Next viene con macOS pero NO es fuente web:
   en Windows o Android el sitio caía a una tipografía cualquiera y la marca se
   desarmaba. Figtree es abierta y comparte la proporción geométrica y cálida de
   Avenir. El logo no depende de esto: va en curvas. */
@font-face{font-family:Figtree;src:url(brand/fonts/Figtree-400.woff2) format("woff2");
  font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Figtree;src:url(brand/fonts/Figtree-600.woff2) format("woff2");
  font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Figtree;src:url(brand/fonts/Figtree-800.woff2) format("woff2");
  font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:Figtree;src:url(brand/fonts/Figtree-900.woff2) format("woff2");
  font-weight:900;font-style:normal;font-display:swap}

:root{
  /* papel cálido: la marca sigue siendo navy + oro, pero el sitio respira en crema */
  --paper:#FBF7F1;
  --sand:#F3E9DA;
  --ink:#17293B;
  --ink-deep:#0B1B2B;
  --muted:#6C7A88;
  --line:rgba(23,41,59,.14);

  --gold:#F5A623;        /* rellenos: botones, subrayados */
  --gold-ink:#8F5406;    /* oro legible como texto sobre crema */
  --gold-soft:#FCEBCC;

  --wrap:1180px;
  --r:18px;
  --font:Figtree,"Avenir Next","Avenir",system-ui,-apple-system,"Segoe UI",sans-serif;
  --shadow:0 20px 50px rgba(23,41,59,.13);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--font);font-size:17px;line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
h1,h2,h3{margin:0;line-height:1.12;letter-spacing:-.02em}
p{margin:0}
a{color:inherit}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 24px}

.skip{position:absolute;left:-9999px}
.skip:focus{left:24px;top:12px;z-index:100;background:var(--gold);color:var(--ink-deep);
  padding:10px 16px;border-radius:8px;font-weight:800}
:focus-visible{outline:3px solid var(--gold-ink);outline-offset:3px;border-radius:6px}

/* ---------- botones ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:14px 26px;border-radius:999px;border:1.5px solid transparent;
  font-weight:800;font-size:15.5px;text-decoration:none;cursor:pointer;
  transition:transform .15s ease, background .15s ease, border-color .15s ease;
}
.btn:active{transform:translateY(1px)}
.btn-gold{background:var(--gold);color:var(--ink-deep);box-shadow:0 8px 22px rgba(245,166,35,.32)}
.btn-gold:hover{background:#FFB63C}
.btn-plain{border-color:var(--line);color:var(--ink)}
.btn-plain:hover{border-color:var(--ink);background:rgba(23,41,59,.04)}
.btn-lg{padding:17px 32px;font-size:17px}
.btn-block{width:100%}

/* ---------- nav ---------- */
.nav{position:sticky;top:0;z-index:50;background:rgba(251,247,241,.82);
  backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:.2s}
.nav.stuck{border-bottom-color:var(--line);background:rgba(251,247,241,.95)}
.nav-in{display:flex;align-items:center;gap:28px;height:74px}
.nav-logo{flex:none;display:flex}
.nav-logo img{height:34px;width:auto}
.nav-links{display:flex;gap:26px;margin-left:auto;font-size:15px;font-weight:600}
.nav-links a{text-decoration:none;color:var(--muted);transition:color .15s}
.nav-links a:hover{color:var(--ink)}
.nav-cta{flex:none}

/* ---------- hero ---------- */
.hero{padding:76px 0 92px;background:
  radial-gradient(80% 60% at 12% 0%, #FFF9EE 0%, rgba(255,249,238,0) 60%), var(--paper);}
.hero-in{display:grid;grid-template-columns:1.06fr .94fr;gap:64px;align-items:center}

.eyebrow{font-size:13px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink)}
.title{margin-top:18px;line-height:0}
.title img{width:100%;max-width:540px;height:auto}

.lede{margin-top:28px;font-size:19.5px;color:#39485A;max-width:33em}
/* subrayado a mano alzada, no un highlight de marcador cuadrado */
mark{background:none;color:inherit;font-weight:800;box-shadow:inset 0 -.5em 0 rgba(245,166,35,.42)}

.hero-cta{margin-top:34px;display:flex;gap:12px;flex-wrap:wrap}
.hero-foot{margin-top:20px;font-size:14.5px;color:var(--muted)}

.hero-photo{position:relative}
.hero-photo>img{
  width:100%;height:auto;border-radius:var(--r);
  transform:rotate(1.1deg);            /* leve inclinación: menos "plantilla" */
  box-shadow:var(--shadow);
}
.hero-photo::before{ /* bloque de color detrás, como una foto pegada sobre papel */
  content:"";position:absolute;inset:22px -18px -18px 22px;border-radius:var(--r);
  background:var(--gold-soft);transform:rotate(-1.6deg);z-index:-1;
}
.photo-card{
  position:absolute;left:-22px;bottom:-24px;
  background:#fff;border-radius:14px;padding:15px 20px;
  box-shadow:0 14px 34px rgba(23,41,59,.18);
  display:flex;flex-direction:column;gap:2px;max-width:82%;
}
.pc-name{font-weight:900;font-size:15.5px;color:var(--ink-deep)}
.pc-role{font-size:13.5px;color:var(--muted)}

/* ---------- secciones ---------- */
.sec{padding:96px 0}
.sec-sand{background:var(--sand)}
.sec-dark{background:var(--ink-deep);color:#F7F4EF}
.sec-head{max-width:640px;margin:0 auto 54px;text-align:center}
.kicker{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink)}
.sec-dark .kicker{color:var(--gold)}
.sec-head h2{margin-top:12px;font-size:clamp(30px,4.2vw,44px);font-weight:900}
.sec-sub{margin-top:16px;color:var(--muted);font-size:17.5px}
.sec-dark .sec-sub{color:#9BB0C4}

/* ---------- mitos ---------- */
.myths{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.myths li{background:var(--paper);border-radius:var(--r);padding:30px 28px;
  border:1px solid rgba(23,41,59,.07)}
.myth{color:var(--muted);font-size:16.5px;font-style:italic;
  text-decoration:line-through;text-decoration-color:rgba(108,122,136,.5)}
.truth{margin-top:14px;font-size:17px;font-weight:600;color:var(--ink)}
.fuente{margin-top:26px;font-size:13.5px;color:var(--muted);text-align:center;
  max-width:70ch;margin-inline:auto;line-height:1.55}

/* ---------- grid de videos ---------- */
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.card{background:#fff;border:1px solid rgba(23,41,59,.08);border-radius:var(--r);
  overflow:hidden;display:flex;flex-direction:column;
  transition:transform .2s ease, box-shadow .2s ease}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.player{position:relative;aspect-ratio:9/16;background:var(--ink-deep);cursor:pointer}
.player video{width:100%;height:100%;object-fit:cover;display:block}
.player::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg, rgba(11,27,43,.06) 0%, rgba(11,27,43,0) 42%, rgba(11,27,43,.5) 100%);
  transition:opacity .2s}
.player.playing::after{opacity:0}
.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:64px;height:64px;border:none;border-radius:50%;background:var(--gold);
  color:var(--ink-deep);cursor:pointer;display:grid;place-items:center;
  box-shadow:0 10px 26px rgba(0,0,0,.3);transition:transform .18s ease, opacity .18s ease}
.play:hover{transform:translate(-50%,-50%) scale(1.08)}
.play svg{width:23px;height:23px;margin-left:3px}
.player.playing .play{opacity:0;pointer-events:none}
.dur{position:absolute;right:10px;bottom:10px;padding:4px 9px;border-radius:6px;
  background:rgba(11,27,43,.8);font-size:12px;font-weight:700;color:#F7F4EF;transition:opacity .2s}
.player.playing .dur{opacity:0}
.card-body{padding:18px 18px 22px}
.card-tag{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink)}
.card-body h3{margin-top:9px;font-size:18px;font-weight:800}
.card-body p{margin-top:8px;font-size:14.5px;color:var(--muted);line-height:1.55}

/* ---------- servicios ---------- */
.servs{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.serv{background:var(--paper);border-radius:var(--r);padding:32px 30px;
  border:1px solid rgba(23,41,59,.07);position:relative}
.serv h3{font-size:20px;font-weight:800;padding-left:20px;position:relative}
.serv h3::before{content:"";position:absolute;left:0;top:.15em;width:5px;height:1.05em;
  border-radius:3px;background:var(--gold)}
.serv p{margin-top:12px;color:var(--muted);font-size:15.5px;line-height:1.62}

/* ---------- quiénes somos ---------- */
.nos-in{display:grid;grid-template-columns:1.35fr .65fr;gap:56px;align-items:start}
.nos-copy h2{margin-top:12px;font-size:clamp(28px,4vw,42px);font-weight:900}
.nos-p{margin-top:18px;color:#39485A;font-size:17px;line-height:1.7;max-width:60ch}
.porque{margin-top:44px;padding-top:36px;border-top:1px solid var(--line)}
.mision{margin:18px 0 0;padding:0 0 0 22px;border-left:3px solid var(--gold);
  font-size:21px;font-weight:700;line-height:1.5;color:var(--ink);max-width:34ch}

.nos-datos{background:var(--sand);border-radius:var(--r);padding:30px 28px;
  position:sticky;top:96px}
.nos-datos dl{margin:0;display:flex;flex-direction:column;gap:20px}
.nos-datos dt{font-size:11.5px;font-weight:800;letter-spacing:.14em;
  text-transform:uppercase;color:var(--gold-ink)}
.nos-datos dd{margin:5px 0 0;font-size:15.5px;color:var(--ink);font-weight:600;line-height:1.5}
.nos-datos .btn{margin-top:28px;width:100%}

/* ---------- reseñas ---------- */
.resenas{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.resena{background:var(--paper);border-radius:var(--r);padding:30px 28px;
  border:1px solid rgba(23,41,59,.07);display:flex;flex-direction:column;gap:14px}
.res-txt{font-size:16.5px;line-height:1.65;color:var(--ink)}
.res-txt::before{content:"“";font-size:44px;line-height:0;color:var(--gold);
  vertical-align:-.22em;margin-right:4px}
.res-quien{margin-top:auto;padding-top:8px;border-top:1px solid rgba(23,41,59,.09)}
.res-nom{font-size:15px;font-weight:800;color:var(--ink)}
.res-det{font-size:13.5px;color:var(--muted);margin-top:2px}

/* ---------- pasos ---------- */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.steps li{background:var(--paper);border-radius:var(--r);padding:34px 28px 30px;
  border:1px solid rgba(23,41,59,.07)}
.step-n{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;
  background:var(--gold);color:var(--ink-deep);font-weight:900;font-size:18px}
.steps h3{margin-top:20px;font-size:21px;font-weight:800}
.steps p{margin-top:10px;color:var(--muted);font-size:15.5px}

/* ---------- formulario ---------- */
.form-wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.ticks{list-style:none;margin:30px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.ticks li{position:relative;padding-left:32px;color:#39485A;font-size:15.5px}
.ticks li::before{content:"";position:absolute;left:0;top:6px;width:19px;height:19px;border-radius:50%;
  background:var(--gold);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6L9 17l-5-5' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/13px no-repeat,
          linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask-composite:exclude;}
.form{background:#fff;border:1px solid rgba(23,41,59,.08);border-radius:var(--r);
  padding:34px;box-shadow:var(--shadow)}
.field{margin-bottom:18px}
.field label{display:block;font-size:14px;font-weight:800;color:var(--ink);margin-bottom:8px}
.field input,.field select{width:100%;padding:14px 15px;border-radius:11px;font:inherit;font-size:16px;
  background:var(--paper);border:1.5px solid var(--line);color:var(--ink);
  transition:border-color .15s;appearance:none}
.field select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%236C7A88' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 13px center;background-size:19px;padding-right:44px}
.field input:focus,.field select:focus{border-color:var(--gold-ink);outline:none}
.field.bad input,.field.bad select{border-color:#C6303A}
.err{margin-top:7px;font-size:13px;color:#C6303A;font-weight:600}
.form-note{margin-top:16px;font-size:12.5px;color:var(--muted);text-align:center;line-height:1.5}
.form-ok{margin-top:18px;padding:15px 18px;border-radius:11px;font-size:15px;font-weight:700;
  background:var(--gold-soft);border:1px solid rgba(245,166,35,.5);color:#7A4705}
.form-ok.mal{background:#FBE9E9;border-color:rgba(198,48,58,.4);color:#8E1F26}
/* trampa de spam: fuera de pantalla, pero no display:none — los bots ignoran eso */
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- canales ---------- */
.canales{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.canal{display:flex;flex-direction:column;gap:9px;padding:28px;border-radius:var(--r);
  background:rgba(255,255,255,.05);border:1px solid rgba(155,176,196,.2);
  text-decoration:none;transition:border-color .2s, transform .2s, background .2s}
.canal:hover{border-color:rgba(245,166,35,.55);transform:translateY(-3px);background:rgba(255,255,255,.08)}
.c-red{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.c-arr{font-size:19px;font-weight:800;color:#F7F4EF}
.c-txt{font-size:14.5px;color:#9BB0C4;line-height:1.55}
.c-dur{margin-top:auto;padding-top:8px;font-size:12.5px;font-weight:700;color:#7C93A9;
  font-variant-numeric:tabular-nums}
.sec-dark .pbtns{justify-content:center;margin-top:28px}
.sec-dark .pbtn{padding:13px 24px;font-size:14.5px;color:#F7F4EF;
  border-color:rgba(155,176,196,.4)}
.sec-dark .pbtn:hover{border-color:var(--gold);color:var(--gold)}

/* ---------- podcast (heredado) ---------- */
.pods{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pod{display:flex;flex-direction:column;gap:14px;padding:28px;border-radius:var(--r);
  background:rgba(255,255,255,.05);border:1px solid rgba(155,176,196,.2);
  text-decoration:none;transition:border-color .2s, transform .2s, background .2s}
.pod:hover{border-color:rgba(245,166,35,.55);transform:translateY(-3px);background:rgba(255,255,255,.08)}
.pod-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pod-ep{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.pod-dur{font-size:12px;color:#7C93A9;font-weight:700}
.pod h3{font-size:19px;font-weight:800;color:#F7F4EF}
.pod p{font-size:14.5px;color:#9BB0C4;line-height:1.55}
.pod-guest{margin-top:auto;padding-top:6px;font-size:13px;color:#7C93A9;font-weight:700}

/* ---------- footer ---------- */
.foot{background:var(--ink-deep);color:#F7F4EF;padding:76px 0 0}
.foot-in{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:56px;padding-bottom:56px}
.foot-logo{width:190px;margin-bottom:22px}
.foot-tag{color:#9BB0C4;font-size:15px;max-width:380px}
.social{display:flex;gap:10px;margin-top:24px}
.social a{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;
  border:1px solid rgba(155,176,196,.28);color:#9BB0C4;
  text-decoration:none;transition:color .15s, border-color .15s, transform .15s}
.social a svg{width:19px;height:19px;display:block}
.social a:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
.foot-col h3{font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  color:#F7F4EF;margin-bottom:22px}
.clist,.plist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:15px}
.clist li{display:flex;flex-direction:column;gap:3px}
.clab{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#7C93A9}
.clist a,.clist span:not(.clab){font-size:15.5px;color:#D6E1EB;text-decoration:none}
.clist a:hover{color:var(--gold)}
.plist a{font-size:15px;color:#D6E1EB;text-decoration:none;display:flex;gap:9px;line-height:1.45}
.plist a:hover{color:var(--gold)}
.plist .n{color:var(--gold);font-weight:800;flex:none}
.pbtns{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.pbtn{padding:9px 15px;border:1px solid rgba(155,176,196,.28);border-radius:999px;font-size:13px;
  font-weight:700;color:#9BB0C4;text-decoration:none;transition:.15s}
.pbtn:hover{border-color:var(--gold);color:var(--gold)}

/* marca los datos que faltan por llenar */
.todo{border-bottom:1.5px dashed rgba(245,166,35,.6)}

.foot-legal{border-top:1px solid rgba(155,176,196,.18);padding-top:26px;padding-bottom:36px;
  display:flex;flex-direction:column;gap:12px}
.foot-legal p{font-size:13px;color:#7C93A9}
.fine{max-width:900px;line-height:1.6}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .hero-in{grid-template-columns:1fr;gap:56px}
  .hero-photo{max-width:460px;margin:0 auto}
  .grid{grid-template-columns:repeat(2,1fr)}
  .myths,.pods,.steps,.canales,.servs,.resenas{grid-template-columns:1fr}
  .nos-in{grid-template-columns:1fr;gap:36px}
  .nos-datos{position:static}
  .form-wrap{grid-template-columns:1fr;gap:40px}
  .foot-in{grid-template-columns:1fr 1fr;gap:40px}
  .foot-brand{grid-column:1/-1}
  .nav-links{display:none}
}
@media (max-width:620px){
  body{font-size:16px}
  .sec{padding:70px 0}
  .hero{padding:52px 0 72px}
  .grid{grid-template-columns:1fr;max-width:380px;margin:0 auto}
  .foot-in{grid-template-columns:1fr}
  .nav-cta{display:none}
  .hero-cta .btn{width:100%}
  .form{padding:24px}
  .photo-card{left:0;right:0;max-width:none}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

/* ===================== PÁGINAS INTERNAS ===================== */

/* ---------- nav: página activa + menú móvil ---------- */
.nav-links a.on{color:var(--ink);font-weight:800}
.nav-links a.on::after{content:"";display:block;height:2px;border-radius:2px;
  background:var(--gold);margin-top:3px}
.nav-burger{display:none;flex-direction:column;gap:5px;background:none;border:0;
  padding:10px;cursor:pointer;margin-left:auto}
.nav-burger span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;
  transition:transform .2s, opacity .2s}
.nav-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav-movil{display:none;flex-direction:column;border-top:1px solid var(--line);
  background:var(--paper)}
.nav-movil a{padding:15px 24px;text-decoration:none;font-weight:700;color:var(--ink);
  border-bottom:1px solid rgba(23,41,59,.07)}
.nav-movil a:last-child{color:var(--gold-ink);border-bottom:0}
.nav-movil.abierto{display:flex}

/* ---------- cabecera de página ---------- */
.cabecera{padding:74px 0 52px;background:
  radial-gradient(70% 60% at 12% 0%, #FFF9EE 0%, rgba(255,249,238,0) 62%), var(--paper)}
.cabecera h1{margin-top:14px;font-size:clamp(36px,6vw,64px);font-weight:900;
  letter-spacing:-.035em;line-height:1.06;max-width:16ch}
.cab-sub{margin-top:24px;font-size:19px;color:#39485A;max-width:56ch;line-height:1.65}

/* ---------- puertas (home) ---------- */
.puertas{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.puerta{display:flex;flex-direction:column;gap:9px;padding:28px 24px 24px;
  background:var(--paper);border:1px solid rgba(23,41,59,.08);border-radius:var(--r);
  text-decoration:none;transition:transform .18s, box-shadow .18s, border-color .18s}
.puerta:hover{transform:translateY(-4px);box-shadow:var(--shadow);
  border-color:rgba(245,166,35,.55)}
.p-num{font-size:12px;font-weight:800;letter-spacing:.14em;color:var(--gold-ink)}
.p-tit{font-size:19px;font-weight:800;color:var(--ink);line-height:1.2}
.p-txt{font-size:14.5px;color:var(--muted);line-height:1.55}
.p-ir{margin-top:auto;padding-top:10px;font-size:14px;font-weight:800;color:var(--gold-ink)}

/* ---------- servicios: lista numerada ---------- */
.serv-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.serv-item{display:grid;grid-template-columns:88px 1fr;gap:26px;padding:36px 0;
  border-top:1px solid var(--line)}
.serv-item:first-child{border-top:0;padding-top:0}
.s-num{font-size:40px;font-weight:900;color:var(--sand);letter-spacing:-.03em;line-height:1}
.s-cuerpo h2{font-size:clamp(23px,3vw,30px);font-weight:900}
.s-lede{margin-top:10px;font-size:17.5px;font-weight:700;color:var(--gold-ink)}
.s-cuerpo p{margin-top:14px;font-size:16.5px;line-height:1.7;color:#39485A;max-width:62ch}
.s-lista{margin:16px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:9px;
  max-width:62ch}
.s-lista li{font-size:16px;line-height:1.6;color:#39485A}
.s-nota{background:var(--gold-soft);border-radius:10px;padding:14px 18px;
  font-size:15.5px!important;color:#7A4705!important;max-width:60ch}

/* ---------- lo que no hacemos ---------- */
.nohacemos{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.nh{background:var(--paper);border-radius:var(--r);padding:26px 24px;
  border:1px solid rgba(23,41,59,.07)}
.nh h3{font-size:17.5px;font-weight:800;color:var(--ink)}
.nh p{margin-top:9px;font-size:15px;color:var(--muted);line-height:1.6}

/* ---------- quiénes somos ---------- */
.nos-primera{font-size:19.5px!important;color:var(--ink)!important;font-weight:600}
.nos-h2{margin-top:48px;font-size:clamp(24px,3.2vw,32px);font-weight:900}
.valores{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:24px}
.valor{background:var(--sand);border-radius:var(--r);padding:24px 22px}
.valor h3{font-size:17px;font-weight:800;color:var(--ink)}
.valor p{margin-top:9px;font-size:15px;color:#4A5A68;line-height:1.6}
.nos-datos dd a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
.nos-datos dd a:hover{color:var(--gold-ink)}

/* ---------- canales en claro ---------- */
.canales-luz{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.canal-l{display:flex;flex-direction:column;gap:6px;padding:28px 24px;background:var(--paper);
  border:1px solid rgba(23,41,59,.08);border-radius:var(--r);text-decoration:none;
  transition:transform .18s, border-color .18s}
.canal-l:hover{transform:translateY(-3px);border-color:rgba(245,166,35,.55)}
.cl-tit{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-ink)}
.cl-num{font-size:30px;font-weight:900;color:var(--ink);letter-spacing:-.02em;line-height:1.1}
.cl-txt{font-size:14.5px;color:var(--muted);line-height:1.55;margin-top:4px}

/* ---------- porqué: texto largo ---------- */
.estrecho{max-width:720px}
.mision-grande{margin:0;padding-left:26px;border-left:4px solid var(--gold);
  font-size:clamp(22px,3.4vw,30px);font-weight:800;line-height:1.4;color:var(--ink)}
.txt{margin-top:20px;font-size:17.5px;line-height:1.75;color:#39485A}
.txt-h2{margin-top:46px;font-size:clamp(23px,3vw,29px);font-weight:900;color:var(--ink)}
.txt-lista{margin:20px 0 0;padding-left:22px;display:flex;flex-direction:column;gap:13px}
.txt-lista li{font-size:17px;line-height:1.7;color:#39485A}
.txt-fuente{margin-top:44px;padding-top:22px;border-top:1px solid var(--line);
  font-size:13.5px;color:var(--muted);line-height:1.6}

/* ---------- reseñas: pruebas e invitados ---------- */
.pruebas{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.prueba{display:flex;flex-direction:column;gap:7px;padding:30px 26px;background:var(--paper);
  border:1px solid rgba(23,41,59,.08);border-radius:var(--r);text-decoration:none;
  transition:transform .18s, border-color .18s}
.prueba:hover{transform:translateY(-3px);border-color:rgba(245,166,35,.55)}
.pr-num{font-size:38px;font-weight:900;color:var(--gold-ink);letter-spacing:-.03em;line-height:1}
.pr-tit{font-size:16px;font-weight:800;color:var(--ink)}
.pr-txt{font-size:14.5px;color:var(--muted);line-height:1.55;margin-top:4px}
.pr-ir{margin-top:auto;padding-top:12px;font-size:13.5px;font-weight:800;color:var(--gold-ink)}

.invitados{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.inv{display:flex;flex-direction:column;gap:5px;padding:24px 22px;background:var(--paper);
  border:1px solid rgba(23,41,59,.08);border-radius:var(--r);text-decoration:none;
  transition:transform .18s, border-color .18s}
.inv:hover{transform:translateY(-3px);border-color:rgba(245,166,35,.55)}
.i-ep{font-size:11.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;
  color:var(--gold-ink)}
.i-nom{font-size:17px;font-weight:800;color:var(--ink);line-height:1.25}
.i-rol{font-size:14px;color:var(--muted)}

.invita{background:var(--sand);border-radius:var(--r);padding:44px 40px;text-align:center}
.invita h2{font-size:clamp(24px,3.4vw,32px);font-weight:900}
.invita p{margin-top:16px;font-size:17px;line-height:1.7;color:#39485A;
  max-width:52ch;margin-inline:auto}
.invita-cta{margin-top:28px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.invita-nota{margin-top:26px!important;font-size:14.5px!important;color:var(--muted)!important}

/* ---------- cierre de página ---------- */
.cierre{background:var(--ink-deep);color:#F7F4EF;text-align:center}
.cierre-in{display:flex;flex-direction:column;align-items:center;gap:14px}
.cierre h2{font-size:clamp(26px,4vw,38px);font-weight:900;color:#F7F4EF}
.cierre p{color:#9BB0C4;font-size:17px}
.cierre .btn{margin-top:12px}

@media (max-width:1000px){
  .puertas{grid-template-columns:repeat(2,1fr)}
  .pruebas,.canales-luz{grid-template-columns:1fr}
  .invitados{grid-template-columns:repeat(2,1fr)}
  .nohacemos,.valores{grid-template-columns:1fr}
  .nav-burger{display:flex}
}
@media (max-width:620px){
  .puertas,.invitados{grid-template-columns:1fr}
  .serv-item{grid-template-columns:1fr;gap:10px}
  .s-num{font-size:30px}
  .cabecera{padding:52px 0 40px}
  .invita{padding:32px 22px}
  .invita-cta .btn{width:100%}
}

/* ---------- aviso de privacidad ---------- */
  .legal{max-width:760px;margin:0 auto;padding:56px 24px 90px}
  .legal h1{font-size:clamp(30px,4.6vw,42px);font-weight:900;margin-bottom:10px}
  .legal .fecha{color:var(--muted);font-size:14.5px;margin-bottom:38px}
  .legal h2{font-size:20px;font-weight:800;margin:38px 0 12px}
  .legal p,.legal li{color:#39485A;font-size:16.5px;line-height:1.7}
  .legal ul{margin:12px 0 0;padding-left:22px;display:flex;flex-direction:column;gap:9px}
  .legal a{color:var(--gold-ink)}
  .legal .volver{display:inline-flex;margin-top:44px}
  .aviso{background:var(--gold-soft);border:1px solid rgba(245,166,35,.5);
    border-radius:12px;padding:18px 22px;margin:30px 0;font-size:15.5px;color:#7A4705}

/* ===================== RUNHOME PROGRAM (2026-09) ===================== */

/* ---------- cifras abiertas hoy ---------- */
.sec-cifras{padding:84px 0}
.cifras{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.cifras li{display:flex;flex-direction:column;gap:6px;padding:28px 24px;border-radius:var(--r);
  background:rgba(255,255,255,.05);border:1px solid rgba(155,176,196,.2)}
.cf-num{font-size:clamp(30px,3.4vw,40px);font-weight:900;color:var(--gold);letter-spacing:-.03em;
  line-height:1;font-variant-numeric:tabular-nums}
.cf-tit{margin-top:6px;font-size:16px;font-weight:800;color:#F7F4EF}
.cf-txt{font-size:14.5px;color:#9BB0C4;line-height:1.55}
.fuente-dark{color:#7C93A9}

/* ---------- pilares ---------- */
.pilares{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pilar{display:flex;flex-direction:column;gap:9px;padding:30px 26px 26px;
  background:#fff;border:1px solid rgba(23,41,59,.08);border-radius:var(--r);
  text-decoration:none;transition:transform .18s, box-shadow .18s, border-color .18s}
a.pilar:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(245,166,35,.55)}
.pl-num{font-size:12px;font-weight:800;letter-spacing:.14em;color:var(--gold-ink)}
.pl-tit{font-size:21px;font-weight:900;color:var(--ink);line-height:1.15;letter-spacing:-.01em}
.pl-txt{font-size:15px;color:#4A5A68;line-height:1.6}
.pl-tag{margin-top:auto;padding-top:14px;font-size:13px;font-weight:800;color:var(--gold-ink)}
.pilar-cta{background:var(--ink-deep);border-color:transparent}
.pilar-cta .pl-tit{color:#F7F4EF}
.pilar-cta .pl-txt{color:#9BB0C4}
.pilar-cta .btn{margin-top:auto;align-self:flex-start}
.pl-link{font-size:14px;font-weight:800;color:var(--gold);text-decoration:none;margin-top:4px}
.pl-link:hover{text-decoration:underline}

/* ---------- precio de la escuela ---------- */
.precio{margin-top:22px;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;
  background:var(--sand);border-radius:var(--r);padding:22px 26px;max-width:62ch}
.precio-num{display:flex;align-items:baseline;gap:2px}
.precio-usd{font-size:44px;font-weight:900;color:var(--ink);letter-spacing:-.04em;line-height:1}
.precio-mes{font-size:16px;font-weight:700;color:var(--muted)}
.precio-txt{font-size:14.5px!important;color:#4A5A68!important;line-height:1.55;margin:0!important;max-width:none!important}
.precio .btn{white-space:nowrap}
.pbtn-luz{color:var(--ink);border-color:var(--line)}
.pbtn-luz:hover{border-color:var(--gold-ink);color:var(--gold-ink)}
.s-cuerpo .pbtns{margin-top:18px}
.s-cuerpo .btn{margin-top:6px}

@media (max-width:1000px){
  .cifras{grid-template-columns:repeat(2,1fr)}
  .pilares{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:620px){
  .cifras,.pilares{grid-template-columns:1fr}
  .precio{grid-template-columns:1fr;gap:14px}
  .precio .btn{width:100%}
}

/* ===================== RUNHOME PROGRAM · sitio único (2026-09-17) ===================== */

/* ---------- qué es ---------- */
.quees{display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:start}
.quees-copy h2{margin-top:12px;font-size:clamp(28px,4vw,42px);font-weight:900}
.quees-datos{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.quees-datos li{background:var(--paper);border-radius:14px;padding:18px 22px;
  border:1px solid rgba(23,41,59,.07);display:flex;flex-direction:column;gap:3px}
.qd-num{font-size:30px;font-weight:900;color:var(--gold-ink);letter-spacing:-.03em;line-height:1.05}
.qd-txt{font-size:14.5px;color:#4A5A68;line-height:1.5}

/* ---------- qué hacemos ---------- */
.hacemos{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hc{background:#fff;border:1px solid rgba(23,41,59,.08);border-radius:var(--r);padding:28px 26px}
.hc-num{font-size:12px;font-weight:800;letter-spacing:.14em;color:var(--gold-ink)}
.hc h3{margin-top:10px;font-size:20px;font-weight:900;letter-spacing:-.01em}
.hc p{margin-top:10px;font-size:15px;color:#4A5A68;line-height:1.6}
.hacemos-mas{margin:22px auto 0;max-width:760px;background:var(--gold-soft);border-radius:14px;
  padding:18px 24px;font-size:15.5px;color:#5A3B05;line-height:1.6;text-align:center}

/* ---------- programas ---------- */
.filtros{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:-22px 0 30px}
.filtro{border:1.5px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;
  padding:9px 18px;font:inherit;font-size:14px;font-weight:800;cursor:pointer;transition:.15s}
.filtro:hover{border-color:var(--ink)}
.filtro.on{background:var(--ink-deep);border-color:var(--ink-deep);color:#F7F4EF}
.programas{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.prog{background:var(--paper);border:1px solid rgba(23,41,59,.08);border-radius:var(--r);padding:22px 22px 20px;
  display:flex;flex-direction:column;gap:5px}
.prog-no{opacity:.6}
.prog-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}
.prog-zona{font-size:11.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.prog-estado{font-size:11.5px;font-weight:800;padding:4px 10px;border-radius:999px;white-space:nowrap}
.prog-estado.ok{background:#E3F3E8;color:#1D6B3A}
.prog-estado.med{background:var(--gold-soft);color:#7A4705}
.prog-estado.no{background:#F1E9E9;color:#8E1F26}
.prog h3{font-size:17.5px;font-weight:900;line-height:1.2}
.prog-monto{font-size:24px;font-weight:900;color:var(--gold-ink);letter-spacing:-.02em;line-height:1.1;margin-top:2px}
.prog-tipo{font-size:13.5px;font-weight:700;color:var(--ink)}
.prog-para{font-size:14px;color:#4A5A68;line-height:1.55}
.prog-nota{font-size:13px;color:var(--gold-ink);font-weight:700;margin-top:4px}
.sub-h3{margin:54px 0 18px;text-align:center;font-size:22px;font-weight:900}
.prestamos{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.prestamo{background:var(--paper);border:1px solid rgba(23,41,59,.08);border-radius:14px;padding:18px 18px}
.prestamo h4{margin:0;font-size:17px;font-weight:900}
.pr-dato{margin-top:4px;font-size:13.5px;font-weight:800;color:var(--gold-ink)}
.pr-txt{margin-top:6px;font-size:13.5px;color:#4A5A68;line-height:1.5}

/* ---------- equipo ---------- */
.p-foto{width:100%;aspect-ratio:1;object-fit:cover;object-position:center top;border-radius:16px;
  display:grid;place-items:center;background:var(--sand);color:var(--ink);font-weight:900;font-size:34px}
.direccion{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:960px;margin:0 auto}
.dir{display:grid;grid-template-columns:150px 1fr;gap:22px;align-items:start;background:#fff;
  border:1px solid rgba(23,41,59,.08);border-radius:var(--r);padding:24px}
.dir .p-foto{border-radius:14px}
.dir-cargo{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink)}
.dir h3{margin-top:6px;font-size:23px;font-weight:900;letter-spacing:-.01em}
.dir-bio{margin-top:10px;font-size:14.5px;color:#4A5A68;line-height:1.6}
.equipos{margin-top:54px;display:grid;gap:34px}
.equipo{border-top:1px solid var(--line);padding-top:30px;display:grid;grid-template-columns:260px 1fr;gap:32px;align-items:start}
.eq-head h3{font-size:24px;font-weight:900}
.eq-head p{margin-top:8px;font-size:14.5px;color:#4A5A68;line-height:1.55}
.eq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.miembro{display:grid;grid-template-columns:78px 1fr;gap:14px;align-items:center;background:#fff;
  border:1px solid rgba(23,41,59,.08);border-radius:14px;padding:14px}
.miembro .p-foto{border-radius:12px;font-size:22px}
.miembro h4{margin:0;font-size:16px;font-weight:900;line-height:1.2}
.m-cargo{margin-top:3px;font-size:13.5px;color:var(--muted);font-weight:600}
.m-nota{margin-top:5px;font-size:13px;color:#4A5A68;line-height:1.45}
.m-tel{display:inline-block;margin-top:5px;font-size:13px;font-weight:800;color:var(--gold-ink);text-decoration:none}
.eq-vacio{grid-column:1/-1;background:var(--sand);border-radius:14px;padding:18px 22px;font-size:14.5px;
  color:#4A5A68;line-height:1.55;border:1.5px dashed rgba(23,41,59,.18)}
.eq-vacio a{color:var(--gold-ink);font-weight:800}

/* ---------- casos ---------- */
.casos{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.caso{position:relative;background:var(--paper);border:1px solid rgba(23,41,59,.08);border-radius:var(--r);
  padding:26px 24px;display:flex;flex-direction:column;gap:8px}
.caso-ej{border:1.5px dashed rgba(245,166,35,.7)}
.caso-badge{align-self:flex-start;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  background:var(--gold-soft);color:#7A4705;padding:4px 9px;border-radius:6px;margin-bottom:4px}
.caso-prog{font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-ink)}
.caso h3{font-size:20px;font-weight:900;line-height:1.2}
.caso-datos{margin:8px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 0;
  border-top:1px solid rgba(23,41,59,.09);border-bottom:1px solid rgba(23,41,59,.09)}
.caso-datos div{display:flex;flex-direction:column;gap:2px}
.caso-datos dt{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.caso-datos dd{margin:0;font-size:15px;font-weight:900;color:var(--ink);letter-spacing:-.01em}
.caso-hist{font-size:14.5px;color:#4A5A68;line-height:1.6}

.pbtns-centro{justify-content:center;margin-top:30px}

@media (max-width:1000px){
  .quees{grid-template-columns:1fr;gap:32px}
  .quees-datos{grid-template-columns:repeat(2,1fr)}
  .hacemos,.programas,.casos{grid-template-columns:repeat(2,1fr)}
  .prestamos{grid-template-columns:repeat(2,1fr)}
  .direccion{grid-template-columns:1fr}
  .equipo{grid-template-columns:1fr;gap:16px}
  .eq-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:620px){
  .quees-datos,.hacemos,.programas,.casos,.prestamos,.eq-grid{grid-template-columns:1fr}
  .dir{grid-template-columns:110px 1fr;gap:16px;padding:18px}
  .filtros{margin-top:-10px}
}

.filtros-top{margin-top:0}
.cabecera+.sec{padding-top:40px}

/* ---------- popups ---------- */
.dlg{border:0;padding:0;background:transparent;max-width:min(96vw,1040px);width:100%;
  max-height:92vh;overflow:visible}
.dlg::backdrop{background:rgba(11,27,43,.62);backdrop-filter:blur(3px)}
.dlg-in{position:relative;background:var(--paper);border-radius:22px;padding:40px;
  box-shadow:0 30px 80px rgba(0,0,0,.35);max-height:92vh;overflow:auto}
.dlg-form{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:start}
.dlg-form .form{box-shadow:none}
.dlg-form h2{margin-top:10px;font-size:clamp(26px,3.4vw,36px);font-weight:900}
.dlg-x{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:50%;border:0;
  background:var(--sand);color:var(--ink);font-size:26px;line-height:1;cursor:pointer;z-index:2}
.dlg-x:hover{background:var(--gold)}
.dlg-head{text-align:center;max-width:640px;margin:0 auto 22px}
.dlg-head h2{margin-top:8px;font-size:clamp(24px,3.2vw,34px);font-weight:900}
.dlg-ancho .programas{grid-template-columns:repeat(3,1fr)}
.dlg-ancho .prog{background:#fff}
.dlg-pie{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:26px;
  padding-top:22px;border-top:1px solid var(--line)}
body.dlg-abierto{overflow:hidden}
.centro{text-align:center;margin-top:34px}
@media (max-width:1000px){
  .dlg-form{grid-template-columns:1fr;gap:20px}
  .dlg-ancho .programas{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:620px){
  .dlg{max-width:100vw;max-height:100vh}
  .dlg-in{border-radius:18px 18px 0 0;padding:24px 18px;max-height:96vh}
  .dlg-ancho .programas{grid-template-columns:1fr}
  .dlg-form .dlg-copy .ticks{display:none}
}

/* ---------- casos: foto o video corto ---------- */
.caso-top{display:flex;gap:16px;align-items:flex-start}
.caso-tit{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.caso-media{position:relative;flex:none;width:96px;aspect-ratio:3/4;border-radius:12px;overflow:hidden;
  background:var(--ink-deep);cursor:pointer}
.caso-media img,.caso-media video{width:100%;height:100%;object-fit:cover;display:block}
.caso-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:38px;height:38px;
  border:0;border-radius:50%;background:var(--gold);color:var(--ink-deep);display:grid;place-items:center;
  cursor:pointer;box-shadow:0 6px 16px rgba(0,0,0,.3);pointer-events:none}
.caso-play svg{width:16px;height:16px;margin-left:2px}
.caso-media.playing .caso-play{opacity:0}

.caso-vacio{background:var(--sand);border:1.5px dashed rgba(23,41,59,.25);cursor:default;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--muted)}
.caso-vacio svg{width:26px;height:26px}
.caso-vacio span{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:center;line-height:1.2}

/* ---------- cinta de casos (home) ---------- */
.sec-cinta{padding:84px 0 64px;background:var(--ink-deep);color:#F7F4EF;overflow:hidden}
.sec-cinta .sec-head{margin-bottom:34px}
.sec-cinta .kicker{color:var(--gold)}
.cinta{position:relative;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;
  -webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.cinta::-webkit-scrollbar{display:none}
.cinta-pista{display:flex;gap:16px;width:max-content;padding:6px 24px;
  animation:cinta calc(var(--n,4) * 6s) linear infinite}
.cinta-pista.pausa{animation-play-state:paused}
@keyframes cinta{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ct{flex:none;width:300px;display:grid;grid-template-columns:86px 1fr;gap:14px;align-items:center;
  padding:14px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(155,176,196,.2);
  text-decoration:none;color:#F7F4EF;transition:transform .2s, border-color .2s, background .2s}
.ct:hover{transform:translateY(-4px);border-color:rgba(245,166,35,.6);background:rgba(255,255,255,.1)}
.ct-media{display:block;width:86px;aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:var(--sand);
  display:grid;place-items:center}
.ct-media img,.ct-media video{width:100%;height:100%;object-fit:cover;display:block}
.ct-ini{font-size:26px;font-weight:900;color:var(--ink)}
.ct-txt{display:flex;flex-direction:column;gap:4px;min-width:0}
.ct-prog{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-tit{font-size:16px;font-weight:900;line-height:1.2}
.ct-dato{font-size:13px;color:#9BB0C4;margin-top:2px}
.ct-dato b{color:#F7F4EF;font-size:15px}
.cinta-pie{text-align:center;margin-top:30px}
.sec-cinta .btn-plain{color:#F7F4EF;border-color:rgba(155,176,196,.4)}
.sec-cinta .btn-plain:hover{border-color:var(--gold);color:var(--gold);background:transparent}
@media (prefers-reduced-motion:reduce){.cinta-pista{animation:none}}
@media (max-width:620px){.ct{width:260px;grid-template-columns:72px 1fr}.ct-media{width:72px}}

/* ---------- popup de programa ---------- */
.prog[data-prog]{cursor:pointer;transition:transform .18s, box-shadow .18s, border-color .18s}
.prog[data-prog]:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:rgba(245,166,35,.55)}
.prog-ver{margin-top:auto;padding-top:10px;font-size:13px;font-weight:800;color:var(--gold-ink)}
.dlg-prog{max-width:960px}
.prog-head{padding-right:44px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:22px}
.prog-head h2{margin-top:6px;font-size:clamp(24px,3.2vw,34px);font-weight:900;line-height:1.1}
.prog-head .prog-monto{font-size:28px;margin-top:6px}
.prog-head .prog-tipo{margin-top:4px;font-size:15px}
.prog-estado-linea{margin-top:10px}
.prog-cols{display:grid;grid-template-columns:1fr 1.15fr;gap:26px}
.prog-sec h3{font-size:17px;font-weight:900;margin:0 0 10px}
.prog-lista{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}
.prog-lista li{font-size:14.5px;line-height:1.55;color:#2A3A4C}
.prog-porque{grid-column:1/-1;background:var(--gold-soft);border-radius:14px;padding:18px 22px}
.prog-porque h3,.prog-porque li{color:#5A3B05}
.timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;position:relative}
.timeline li{position:relative;padding:0 0 14px 22px;display:flex;flex-direction:column;gap:2px}
.timeline li::before{content:"";position:absolute;left:5px;top:7px;width:8px;height:8px;border-radius:50%;background:var(--gold)}
.timeline li::after{content:"";position:absolute;left:8.5px;top:17px;bottom:-2px;width:1.5px;background:rgba(23,41,59,.15)}
.timeline li:last-child::after{display:none}
.tl-cuando{font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink)}
.tl-tit{font-size:15px;font-weight:800;color:var(--ink)}
.tl-det{font-size:13.5px;color:#4A5A68;line-height:1.5}
.tl-aviso{background:var(--sand);border-radius:10px;padding:10px 12px!important;font-size:13.5px;font-weight:700;color:var(--ink);margin-bottom:12px}
.tl-aviso::before,.tl-aviso::after{display:none}
@media (max-width:1000px){.prog-cols{grid-template-columns:1fr}}
