/* TGMI Radio Buenas Nuevas — hoja de estilos
   Paleta tomada del logotipo: degradado naranja, torres azul marino, letras negras y blancas.
   Concepto: el aire de la radio. Torres, ondas y un dial de frecuencias real (102.1 FM / 4,800 kHz). */

@font-face{font-family:"Young Serif";src:url(../fonts/young-serif.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Figtree";src:url(../fonts/figtree.woff2) format("woff2");font-weight:300 900;font-display:swap}

:root{
  --naranja:#F85400;        /* esquina intensa del logo */
  --naranja-medio:#F7792F;
  --naranja-claro:#F7A068;  /* esquina suave del logo */
  --naranja-texto:#B93F07;  /* naranja legible sobre blanco */
  --durazno:#FEF0E5;        /* fondo cálido para secciones alternas */
  --marino:#1D2255;         /* torres del logo */
  --marino-2:#2B3275;
  --noche:#151940;          /* banda del dial y pie */
  --blanco:#FFFFFF;
  --texto:#1F2340;
  --texto-suave:#5A5F7D;
  --linea:#ECE1D8;
  --serif:"Young Serif",Georgia,"Times New Roman",serif;
  --sans:"Figtree",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --ancho:1180px;
  --gutter:clamp(16px,4vw,40px);
  --player-h:76px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:var(--blanco);color:var(--texto);font-family:var(--sans);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
a{color:var(--naranja-texto);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{color:var(--marino)}
:focus-visible{outline:3px solid var(--marino);outline-offset:3px;border-radius:4px}
.aire :focus-visible,.cabecera :focus-visible,.objetivo :focus-visible,.pie :focus-visible,.dial :focus-visible,.reproductor :focus-visible,.visor :focus-visible,.menu :focus-visible{outline-color:var(--naranja-claro)}
h1,h2,h3{font-family:var(--serif);font-weight:400;color:var(--marino);line-height:1.12;margin:0 0 .5em;letter-spacing:-.005em}
h2{font-size:clamp(1.9rem,3.6vw,2.75rem);text-wrap:balance}
h3{font-size:1.35rem}
p{margin:0 0 1em}
.envoltura{max-width:var(--ancho);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.oculto{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.saltar{position:absolute;left:12px;top:-60px;background:var(--marino);color:#fff;padding:10px 14px;z-index:100;border-radius:6px}
.saltar:focus{top:12px}

/* Torre de transmisión del logo (símbolo SVG reutilizable) */
.torre{display:block;overflow:visible}
.torre .onda{transform-box:view-box;transform-origin:50px 20px}
body.sonando .torre .onda{animation:emitir 1.6s ease-out infinite}
body.sonando .torre .onda.o2{animation-delay:.25s}
body.sonando .torre .onda.o3{animation-delay:.5s}
@keyframes emitir{0%{opacity:.25}35%{opacity:1}100%{opacity:.25}}

/* ---------- Encabezado ---------- */
.cabecera{position:absolute;inset:0 0 auto;z-index:20;color:#fff}
.cabecera .envoltura{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:88px}
.marca{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}
.marca:hover{color:inherit}
.marca .torre{width:40px;height:50px}
.marca-texto{display:flex;flex-direction:column;line-height:1}
.marca-texto b{font-family:var(--sans);font-weight:900;font-size:1.75rem;letter-spacing:.02em}
.marca-texto small{font-family:var(--serif);font-size:.8rem;letter-spacing:.06em;margin-top:4px}
.menu ul{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.menu a{display:block;color:#fff;text-decoration:none;font-weight:600;font-size:.98rem;padding:8px 13px;border-radius:999px}
.menu a:hover{background:rgba(255,255,255,.12);color:#fff}
.menu a[aria-current="page"]{background:#fff;color:var(--marino)}
.boton-menu{display:none;background:none;border:0;color:inherit;padding:10px;margin-right:-10px;cursor:pointer}
.boton-menu svg{width:28px;height:28px}

/* Cabecera sólida para páginas internas */
.cabecera--solida{position:relative;background:var(--marino);border-bottom:3px solid var(--naranja-medio)}

/* ---------- Portada ---------- */
/* Cielo de madrugada (la radio sale al aire a las 04:00) con el amanecer naranja del logo en el horizonte */
.aire{position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(ellipse 72% 82% at 76% 100%,rgba(248,84,0,.92) 0%,rgba(247,121,47,.6) 38%,rgba(247,121,47,0) 72%),
    linear-gradient(180deg,#10143A 0%,#1A1F52 26%,#2C2D68 46%,#5C3A6A 62%,#C4573A 78%,#F7792F 91%,#F7A068 100%)}
.aire-contenido{position:relative;z-index:2;padding-top:clamp(124px,13vw,150px);padding-bottom:clamp(170px,15vw,200px)}
.aire h1{color:#fff;font-size:clamp(2.5rem,5.4vw,4.4rem);line-height:1.04;max-width:16ch;margin-bottom:.38em;text-wrap:balance}
.aire .bajada{font-size:clamp(1.06rem,1.45vw,1.2rem);max-width:35rem;color:#DDE0F2;margin-bottom:2rem}
.acciones{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.boton{display:inline-flex;align-items:center;gap:10px;font:700 1rem/1 var(--sans);padding:16px 24px;border-radius:999px;border:0;cursor:pointer;text-decoration:none}
.boton svg{width:18px;height:18px}
.boton--escuchar{background:var(--naranja-medio);color:var(--noche);box-shadow:0 10px 30px -10px rgba(248,84,0,.7)}
.boton--escuchar:hover{background:var(--naranja-claro);color:var(--noche)}
.boton--borde{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.55);padding:14px 22px}
.boton--borde:hover{background:#fff;color:var(--marino)}

.aire-torres{position:absolute;z-index:1;right:max(var(--gutter),calc((100vw - var(--ancho))/2 + var(--gutter)));bottom:clamp(60px,8.5vw,118px);display:flex;align-items:flex-end;gap:clamp(20px,4vw,56px);color:var(--noche)}
.aire-torres .torre:first-child{width:clamp(150px,18vw,250px);height:auto;aspect-ratio:100/124}
.aire-torres .torre:last-child{width:clamp(90px,10vw,140px);height:auto;aspect-ratio:100/124;color:#2A2560}
.montanas{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:clamp(110px,15vw,210px);z-index:1}

/* ---------- Dial de frecuencias ---------- */
.dial{background:var(--noche);color:#C9CDEA;position:relative}
.dial .envoltura{display:grid;grid-template-columns:auto 1fr;gap:clamp(16px,3vw,40px);align-items:center;padding-top:26px;padding-bottom:30px}
.dial-titulo{font-family:var(--serif);color:#fff;font-size:1.15rem;line-height:1.25;margin:0}
.dial-titulo span{display:block;font-family:var(--sans);font-size:.85rem;color:#A3A8CF;margin-top:4px}
.escala{position:relative;padding:4px 0}
.fila{display:grid;grid-template-columns:52px 1fr;align-items:end;gap:10px}
.fila + .fila{margin-top:14px}
.banda{font-size:.8rem;font-weight:700;color:#A3A8CF;padding-bottom:2px}
.regla{position:relative;height:34px;background-image:repeating-linear-gradient(90deg,rgba(201,205,234,.5) 0 1px,transparent 1px 2.5%);background-size:100% 9px;background-repeat:no-repeat;background-position:bottom}
.regla::after{content:"";position:absolute;inset:auto 0 0;height:16px;background-image:repeating-linear-gradient(90deg,rgba(201,205,234,.9) 0 1.5px,transparent 1.5px 12.5%);background-repeat:no-repeat}
.regla span{position:absolute;top:0;transform:translateX(-50%);font-size:.74rem;font-variant-numeric:tabular-nums;color:#9095BF}
.regla .estacion{color:var(--naranja-claro);font-weight:700;font-size:.9rem;top:-4px}
.aguja{position:absolute;top:-6px;bottom:-6px;left:calc(62px + (100% - 62px) * var(--pos,.705));width:2px;background:var(--naranja-medio);box-shadow:0 0 14px 2px rgba(247,121,47,.6);border-radius:2px}
.aguja::before{content:"";position:absolute;top:-4px;left:50%;width:10px;height:10px;border-radius:50%;background:var(--naranja-medio);transform:translateX(-50%)}
@media (prefers-reduced-motion:no-preference){
  .aguja{animation:sintonizar 1.8s cubic-bezier(.3,.1,.2,1) .4s both}
  @keyframes sintonizar{0%{left:calc(62px + (100% - 62px) * .04)}70%{left:calc(62px + (100% - 62px) * .74)}100%{left:calc(62px + (100% - 62px) * var(--pos,.705))}}
}

/* ---------- Al aire ---------- */
.al-aire{background:#fff;border-bottom:1px solid var(--linea)}
.al-aire .envoltura{display:grid;grid-template-columns:repeat(3,1fr)}
.dato{padding:30px 28px 32px;border-left:1px solid var(--linea)}
.dato:first-child{border-left:0;padding-left:0}
.dato h3{font-family:var(--sans);font-weight:700;font-size:.92rem;color:var(--naranja-texto);margin-bottom:6px;letter-spacing:.01em}
.dato p{font-family:var(--serif);font-size:1.3rem;color:var(--marino);line-height:1.3;margin:0}
.dato small{display:block;font-size:.92rem;color:var(--texto-suave);margin-top:4px}

/* ---------- Secciones ---------- */
.seccion{padding:clamp(64px,9vw,120px) 0}
.intro{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,6vw,88px);align-items:center}
.intro > *{min-width:0}
.entrada{font-family:var(--serif);font-size:clamp(1.3rem,2.1vw,1.6rem);line-height:1.42;color:var(--marino);margin-bottom:1.1em}
.texto p{max-width:62ch}
.foto-marco{margin:0}
.foto-marco picture{position:relative;display:block;isolation:isolate}
.foto-marco picture::before{content:"";position:absolute;inset:18px -18px -18px 18px;background:linear-gradient(135deg,var(--naranja-medio),var(--naranja-claro));border-radius:6px;z-index:-1}
.foto-marco img{width:100%;border-radius:6px;aspect-ratio:484/259;object-fit:cover}
.foto-marco figcaption{font-size:.88rem;color:var(--texto-suave);margin-top:30px}
.enlace-mas{font-weight:700;text-decoration:none;border-bottom:2px solid var(--naranja-medio);padding-bottom:2px;color:var(--marino)}
.enlace-mas:hover{border-color:var(--marino);color:var(--marino)}

/* Historia: línea de tiempo (es una secuencia real) y el óvalo del logo de siempre */
.historia{background:var(--durazno)}
.historia-cab{display:grid;grid-template-columns:1fr auto;gap:24px 40px;align-items:center;margin-bottom:48px}
.historia-cab p{max-width:34rem;margin:0;color:var(--texto-suave)}
.ovalo{width:clamp(180px,20vw,230px);transform:rotate(-6deg);filter:drop-shadow(0 12px 18px rgba(185,63,7,.18))}
.linea-tiempo{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);position:relative}
.linea-tiempo::before{content:"";position:absolute;left:0;right:0;top:15px;height:2px;background:linear-gradient(90deg,var(--marino),var(--naranja))}
.linea-tiempo li{position:relative;padding:44px 22px 0 0}
.linea-tiempo li::before{content:"";position:absolute;top:8px;left:0;width:16px;height:16px;border-radius:50%;background:var(--durazno);border:3px solid var(--marino)}
.linea-tiempo li:last-child::before{background:var(--naranja);border-color:var(--naranja)}
.anio{font-family:var(--serif);font-size:clamp(1.7rem,2.3vw,2.1rem);white-space:nowrap;color:var(--marino);line-height:1;display:block;margin-bottom:10px}
.linea-tiempo p{font-size:.98rem;margin:0}

/* Objetivo: la frase del ministerio a gran tamaño */
.objetivo{background:var(--marino);color:#fff;position:relative;overflow:hidden}
.objetivo .envoltura{position:relative;z-index:1}
.objetivo blockquote{margin:0;max-width:22em;font-family:var(--serif);font-size:clamp(1.7rem,3.6vw,2.8rem);line-height:1.22;text-wrap:pretty}
.objetivo cite{display:block;font-style:normal;font-family:var(--sans);font-size:1rem;margin-top:1.4rem;color:var(--naranja-claro);font-weight:600}
.objetivo .torre{position:absolute;right:-30px;bottom:-40px;width:340px;height:auto;aspect-ratio:100/124;color:#fff;opacity:.07}

/* Galería en tira */
.galeria-cab{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:36px}
.galeria-cab h2{margin:0}
.mosaico{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.mosaico a{position:relative;display:block;overflow:hidden;border-radius:6px;background:var(--durazno)}
.mosaico img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s ease}
.mosaico a:hover img{transform:scale(1.04)}

/* Apoyo y oyentes en EE. UU. */
.apoyo{display:block}
.apoyo > *{min-width:0}
.bloque{border-radius:10px;padding:clamp(28px,4vw,44px)}
.bloque--ofrenda{background:var(--durazno);border-left:6px solid var(--naranja);display:grid;grid-template-columns:1.25fr 1fr;gap:24px clamp(32px,5vw,72px);align-items:center}
.bloque--ofrenda > *{min-width:0}
.bloque--ofrenda p{margin:0;max-width:56ch}
.bloque h2{font-size:clamp(1.6rem,2.6vw,2.1rem)}
.cuenta{display:flex;flex-direction:column;align-items:flex-start;gap:14px;background:#fff;border-radius:8px;padding:24px 26px}
.cuenta dl{margin:0;display:grid;grid-template-columns:auto auto;gap:2px 14px;font-size:.95rem}
.cuenta dt{color:var(--texto-suave)}
.cuenta dd{margin:0;font-weight:700;color:var(--marino)}
.numero{display:block;margin-bottom:6px;font-family:var(--serif);font-size:clamp(1.6rem,2.6vw,2rem);color:var(--marino);font-variant-numeric:tabular-nums}
.copiar{font:700 .9rem var(--sans);padding:9px 14px;border-radius:999px;border:1px solid var(--linea);background:#fff;color:var(--marino);cursor:pointer}
.copiar:hover{border-color:var(--naranja-medio)}

/* ---------- Pie ---------- */
.pie{background:var(--noche);color:#B9BDDC;padding:64px 0 calc(40px + var(--player-h));font-size:.96rem}
.pie a{color:#fff}
.pie-rejilla{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.pie-logo{display:flex;gap:18px;align-items:center}
.pie-logo picture{flex:none;display:block;width:96px;height:96px;border-radius:22.5%;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.14),0 10px 24px -8px rgba(0,0,0,.55)}
.pie-logo img{width:100%;height:100%;object-fit:cover;border-radius:0}
.pie-logo p{margin:0;max-width:22rem}
.pie-logo b{display:block;color:#fff;font-family:var(--serif);font-weight:400;font-size:1.2rem;margin-bottom:4px}
.pie h3{color:#fff;font-family:var(--sans);font-size:.95rem;font-weight:700;margin-bottom:10px}
.pie ul{list-style:none;margin:0;padding:0}
.pie li{margin-bottom:6px}
.pie li a{text-decoration:none}
.pie li a:hover{text-decoration:underline}
.pie-base{border-top:1px solid rgba(255,255,255,.12);margin-top:48px;padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.86rem;color:#9095BF}

/* ---------- Reproductor fijo ---------- */
.reproductor{position:fixed;left:0;right:0;bottom:0;z-index:50;height:calc(var(--player-h) + env(safe-area-inset-bottom,0px));background:rgba(21,25,64,.97);color:#fff;border-top:3px solid var(--naranja-medio);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding-bottom:env(safe-area-inset-bottom,0px)}
.reproductor .envoltura{height:var(--player-h);display:flex;align-items:center;gap:16px}
.play{flex:none;width:52px;height:52px;border-radius:50%;border:0;background:var(--naranja-medio);color:var(--noche);display:grid;place-items:center;cursor:pointer;transition:transform .15s}
.play:hover{transform:scale(1.05)}
.play svg{width:20px;height:20px}
.play .i-pausa,.play .i-carga{display:none}
.reproductor[data-estado="sonando"] .i-play{display:none}
.reproductor[data-estado="sonando"] .i-pausa{display:block}
.reproductor[data-estado="cargando"] .i-play{display:none}
.reproductor[data-estado="cargando"] .i-carga{display:block;animation:girar 1s linear infinite}
@keyframes girar{to{transform:rotate(360deg)}}
.rep-info{min-width:0;flex:1;display:flex;flex-direction:column;line-height:1.25}
.rep-info b{font-family:var(--serif);font-weight:400;font-size:1.08rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rep-estado{font-size:.84rem;color:#A3A8CF;display:flex;align-items:center;gap:8px;min-width:0}
.rep-estado [data-mensaje]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.en-vivo{display:inline-flex;align-items:center;gap:6px;color:#fff;font-weight:700;flex:none}
.en-vivo::before{content:"";width:8px;height:8px;border-radius:50%;background:#FF4D4D;box-shadow:0 0 0 3px rgba(255,77,77,.25)}
.ondas{display:flex;gap:3px;align-items:end;height:22px;margin-left:auto}
.ondas i{width:3px;height:30%;background:var(--naranja-claro);border-radius:2px;opacity:.35}
.reproductor[data-estado="sonando"] .ondas i{opacity:1;animation:onda 1s ease-in-out infinite}
.ondas i:nth-child(2){animation-delay:-.3s!important}.ondas i:nth-child(3){animation-delay:-.6s!important}.ondas i:nth-child(4){animation-delay:-.15s!important}.ondas i:nth-child(5){animation-delay:-.45s!important}
@keyframes onda{0%,100%{height:25%}50%{height:100%}}
.volumen{display:flex;align-items:center;gap:8px;color:#A3A8CF}
.volumen svg{width:20px;height:20px}
.volumen input{width:110px;accent-color:var(--naranja-medio)}
.rep-frec{font-size:.84rem;color:#A3A8CF;text-align:right;line-height:1.3;border-left:1px solid rgba(255,255,255,.14);padding-left:16px}
.rep-frec b{color:#fff;font-weight:700}

/* ---------- Visor de fotos ---------- */
.visor{position:fixed;inset:0;z-index:80;background:rgba(14,17,44,.95);display:none;align-items:center;justify-content:center;padding:56px 16px calc(var(--player-h) + 16px)}
.visor.abierto{display:flex}
.visor figure{margin:0;max-width:min(1000px,100%);text-align:center}
.visor img{max-height:calc(100vh - var(--player-h) - 150px);width:auto;margin:0 auto;border-radius:4px}
.visor figcaption{color:#DDE0F3;margin-top:14px;font-size:.98rem}
.visor button{position:absolute;background:rgba(255,255,255,.1);border:0;color:#fff;width:48px;height:48px;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.visor button:hover{background:rgba(255,255,255,.2)}
.visor button svg{width:22px;height:22px}
.visor .cerrar{top:14px;right:14px}
.visor .ant{left:14px;top:50%;transform:translateY(-50%)}
.visor .sig{right:14px;top:50%;transform:translateY(-50%)}

/* ---------- Responsive ---------- */
@media (max-width:980px){
  .menu{position:fixed;inset:0 0 0 auto;width:min(320px,86vw);background:var(--noche);padding:90px 24px 24px;transform:translateX(100%);visibility:hidden;transition:transform .25s ease,visibility 0s .25s;z-index:30}
  .menu.abierto{transform:none;visibility:visible;transition:transform .25s ease;box-shadow:-20px 0 60px rgba(0,0,0,.3)}
  .menu ul{flex-direction:column;gap:2px}
  .menu a{color:#fff;font-size:1.15rem;padding:12px 14px;border-radius:8px}
  .menu a:hover{background:rgba(255,255,255,.1);color:#fff}
  .menu a[aria-current="page"]{background:var(--naranja-medio);color:var(--noche)}
  .boton-menu{display:block;position:relative;z-index:31}
  .boton-menu[aria-expanded="true"]{color:#fff}
  .intro,.bloque--ofrenda{grid-template-columns:1fr}
  .pie-rejilla{grid-template-columns:1fr 1fr}
  .pie-rejilla > :first-child{grid-column:1/-1}
  .rep-frec{display:none}
}
@media (max-width:760px){
  :root{--player-h:70px}
  .aire-contenido{padding-bottom:clamp(230px,62vw,290px)}
  .aire-torres{right:var(--gutter);bottom:clamp(64px,17vw,96px)}
  .aire-torres .torre:first-child{width:clamp(120px,34vw,160px)}
  .aire-torres .torre:last-child{width:clamp(70px,19vw,96px)}
  .dial .envoltura{grid-template-columns:1fr;gap:14px}
  .al-aire .envoltura{grid-template-columns:1fr}
  .dato{border-left:0;border-top:1px solid var(--linea);padding:22px 0}
  .dato:first-child{border-top:0}
  .foto-marco picture::before{inset:12px -10px -12px 10px}
  .historia-cab{grid-template-columns:1fr}
  .ovalo{justify-self:start;width:190px}
  .linea-tiempo{grid-template-columns:1fr}
  .linea-tiempo::before{left:7px;right:auto;top:0;bottom:0;width:2px;height:auto;background:linear-gradient(180deg,var(--marino),var(--naranja))}
  .linea-tiempo li{padding:0 0 30px 40px}
  .linea-tiempo li::before{top:4px}
  .mosaico{grid-template-columns:1fr 1fr;gap:10px}
  .regla span.menor{display:none}
  .regla .estacion{left:calc(70.5% - 10px)!important;transform:translateX(-100%)}
  .volumen{display:none}
  .pie-rejilla{grid-template-columns:1fr}
  .pie-logo{align-items:flex-start}
  .pie-logo picture{width:76px;height:76px}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* =================== Páginas internas =================== */
.pagina-cab{position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(ellipse 60% 120% at 80% 100%,rgba(248,84,0,.85) 0%,rgba(247,121,47,.45) 40%,rgba(247,121,47,0) 72%),
    linear-gradient(180deg,#10143A 0%,#1C2156 40%,#3A3270 66%,#B9563F 90%,#F7792F 100%)}
.pagina-cab-contenido{position:relative;z-index:2;padding-top:clamp(130px,14vw,170px);padding-bottom:clamp(96px,10vw,130px)}
.pagina-cab h1{color:#fff;font-size:clamp(2.4rem,5vw,3.9rem);line-height:1.05;margin-bottom:.3em;text-wrap:balance}
.pagina-cab .bajada{font-size:clamp(1.05rem,1.4vw,1.2rem);color:#DDE0F2;max-width:38rem;margin:0}
.pagina-cab .acciones{margin-top:28px}
.montanas--baja{height:clamp(56px,7vw,96px)}
.seccion--durazno{background:var(--durazno)}
.boton--marino{background:var(--marino);color:#fff}
.boton--marino:hover{background:var(--marino-2);color:#fff}
.boton--whatsapp{background:#1F8F4E;color:#fff}
.boton--whatsapp:hover{background:#17773F;color:#fff}
.boton[hidden],a[hidden]{display:none!important}
.intro--invertida{grid-template-columns:.95fr 1.05fr}

/* Ficha de datos (Quiénes somos) */
.ficha{margin:28px 0 0;display:grid;grid-template-columns:repeat(2,1fr);gap:0 clamp(32px,5vw,72px)}
.ficha > div{padding:22px 0;border-top:1px solid #E8D3C3;min-width:0}
.ficha dt{font-weight:700;font-size:.92rem;color:var(--naranja-texto);margin-bottom:6px}
.ficha dd{margin:0;font-size:1.06rem;color:var(--texto)}
.ficha strong{color:var(--marino)}

/* Filas de texto (Historia) */
.filas{display:grid}
.fila-texto{display:grid;grid-template-columns:minmax(200px,.7fr) 1.3fr;gap:16px clamp(32px,6vw,96px);padding:clamp(32px,4vw,48px) 0;border-top:1px solid var(--linea)}
.fila-texto:first-child{border-top:0;padding-top:0}
.fila-texto h2{font-size:clamp(1.6rem,2.6vw,2.1rem);margin:0}
.fila-texto > *{min-width:0}
.fila-texto p{max-width:62ch}
.fila-texto .entrada{margin:0;max-width:30em}
.creencias{list-style:none;margin:0 0 4px;padding:0;display:grid;gap:10px}
.creencias li{position:relative;padding-left:28px;max-width:60ch}
.creencias li::before{content:"";position:absolute;left:0;top:.62em;width:12px;height:2px;background:var(--naranja-medio)}
.historia-cab p{max-width:46rem}

/* Horario (Programación) */
.horario{display:grid;gap:40px}
.horario-cab h2{margin-bottom:.2em}
.horario-grande{font-family:var(--serif);font-size:clamp(2.8rem,7vw,5rem);color:var(--marino);line-height:1;margin:0 0 .15em;font-variant-numeric:tabular-nums}
.horario-grande span[aria-hidden]{font-size:.45em;color:var(--naranja-texto);margin:0 .2em;vertical-align:middle}
.horario-dias{color:var(--texto-suave);margin:0}
.dia-barra{position:relative;height:18px;border-radius:999px;background:#E9E3F0}
.dia-aire{position:absolute;top:0;bottom:0;left:calc(var(--ini) * 100%);right:calc((1 - var(--fin)) * 100%);border-radius:999px;background:linear-gradient(90deg,var(--marino),var(--naranja-medio) 55%,var(--naranja))}
.dia-ahora{position:absolute;top:-10px;bottom:-10px;left:calc(var(--ahora,0) * 100%);width:2px;background:var(--marino)}
.dia-ahora i{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);font-style:normal;font-size:.8rem;white-space:nowrap;color:var(--marino);font-weight:600;padding-bottom:4px}
.dia-horas{display:flex;justify-content:space-between;margin-top:10px;font-size:.8rem;color:var(--texto-suave);font-variant-numeric:tabular-nums}
.frecuencias{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,56px)}
.frecuencias h3{font-size:1.8rem;margin-bottom:.25em}
.frecuencias p{margin:0;color:var(--texto)}
.aviso{max-width:760px}
.aviso p{color:var(--texto-suave);margin-bottom:24px}

/* Galería */
.galeria-grande{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(14px,2vw,24px)}
.galeria-grande a{display:block;text-decoration:none;color:var(--marino);min-width:0}
.galeria-grande picture{display:block;overflow:hidden;border-radius:8px;background:var(--durazno)}
.galeria-grande img{width:100%;aspect-ratio:484/259;object-fit:cover;transition:transform .5s ease}
.galeria-grande a:hover img{transform:scale(1.03)}
.pie-foto{display:block;font-weight:600;margin-top:10px}
.nota-galeria{color:var(--texto-suave);font-size:.92rem;margin:28px 0 0}

/* Contacto */
.contacto{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(32px,6vw,88px);align-items:start}
.contacto > *{min-width:0}
.correo{display:block;font-family:var(--serif);font-size:clamp(1.25rem,2.2vw,1.75rem);color:var(--marino);text-decoration:none;overflow-wrap:anywhere;margin:4px 0 24px}
.correo:hover{color:var(--naranja-texto)}
.contacto-principal .copiar{padding:15px 20px;font-size:.95rem}
.contacto-datos{margin:0;display:grid}
.contacto-datos > div{padding:18px 0;border-top:1px solid var(--linea)}
.contacto-datos > div:first-child{border-top:0;padding-top:6px}
.contacto-datos dt{font-weight:700;font-size:.92rem;color:var(--naranja-texto);margin-bottom:4px}
.contacto-datos dd{margin:0}
.contacto-datos a{font-weight:600}

@media (max-width:980px){
  .intro--invertida{grid-template-columns:1fr}
  .intro--invertida .foto-marco{order:2}
  .contacto{grid-template-columns:1fr}
}
@media (max-width:760px){
  .ficha{grid-template-columns:1fr}
  .fila-texto{grid-template-columns:1fr}
  .frecuencias{grid-template-columns:1fr}
  .galeria-grande{grid-template-columns:1fr}
  .dia-horas span:nth-child(even){visibility:hidden}
}

/* Paisanos en Estados Unidos / instalar como app */
.lejos{background:var(--marino);color:#DDE0F2;position:relative;overflow:hidden}
.lejos::before{content:"";position:absolute;inset:auto -10% -60% 30%;height:120%;background:radial-gradient(ellipse at 60% 100%,rgba(248,84,0,.55),rgba(247,121,47,0) 62%);pointer-events:none}
.lejos .envoltura{position:relative}
.lejos h2{color:#fff}
.lejos .entrada{color:#fff}
.lejos-rejilla{display:grid;grid-template-columns:1.4fr .6fr;gap:clamp(32px,6vw,88px);align-items:center}
.lejos-rejilla > *{min-width:0}
.pasos-app{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:10px;max-width:60ch}
.pasos-app li{padding-left:28px;position:relative}
.pasos-app li::before{content:"";position:absolute;left:0;top:.62em;width:12px;height:2px;background:var(--naranja-medio)}
.pasos-app b{color:#fff}
.boton--borde-claro{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.55);padding:14px 22px}
.boton--borde-claro:hover{background:#fff;color:var(--marino)}
.lejos-icono{justify-self:center;text-align:center;color:#fff;font-size:.95rem;font-weight:600}
.lejos-icono img{width:clamp(120px,14vw,170px);height:auto;border-radius:22.5%;box-shadow:0 0 0 1px rgba(255,255,255,.18),0 24px 40px -14px rgba(0,0,0,.6);margin:0 auto 12px}
@media (max-width:760px){
  .lejos-rejilla{grid-template-columns:1fr}
  .lejos-icono{justify-self:start;display:flex;align-items:center;gap:14px}
  .lejos-icono img{width:84px;margin:0}
}

/* Insignias de Google Play y TuneIn */
.tiendas{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.tienda{display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 18px 0 14px;border-radius:12px;background:#000;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.32);transition:border-color .15s,transform .15s}
.tienda:hover{color:#fff;border-color:#fff;transform:translateY(-1px)}
.tienda span{display:flex;flex-direction:column;line-height:1.05}
.tienda small{font-size:.68rem;letter-spacing:.02em;opacity:.85}
.tienda b{font-size:1.18rem;font-weight:600;letter-spacing:-.005em}
.tienda-play{width:24px;height:26px}
.tienda-tunein{width:72px;height:32px;color:#fff}
.tienda:has(.tienda-tunein){background:#1C203C;padding:0 16px}
.lejos .tiendas{margin-top:8px}
.aire h1 span{display:block;font-size:.5em;line-height:1.2;margin-top:.35em;color:#E4E6F5}
@media (max-width:420px){
  .tiendas{gap:8px}
  .tienda{height:48px;padding:0 12px 0 10px;gap:8px;border-radius:10px}
  .tienda small{font-size:.6rem}
  .tienda b{font-size:1.02rem}
  .tienda-play{width:20px;height:22px}
  .tienda-tunein{width:58px;height:26px}
  .tienda:has(.tienda-tunein){padding:0 12px}
}
