/* V30: diseño responsive de la web pública. No modifica el portal privado. */
@media (max-width: 760px) {
  html { scroll-padding-top: 78px; }
  body { overflow-x: clip; }
  .youtube-section { padding: 58px 0 64px !important; overflow: hidden; }
  .youtube-section .wrap { width: min(100% - 36px, 540px); max-width: 100%; }
  .youtube-layout { display: grid; grid-template-columns: minmax(0,1fr) !important; gap: 24px !important; }
  .youtube-copy, .youtube-card { min-width: 0; max-width: 100%; }
  .youtube-copy h2 { font-size: clamp(2rem, 8vw, 2.9rem) !important; line-height: 1.1; overflow-wrap: break-word; }
  .youtube-copy > p:not(.eyebrow) { font-size: 1rem !important; line-height: 1.65; }
  .youtube-actions { display: grid !important; grid-template-columns: 1fr; gap: 10px; margin-top: 22px; }
  .youtube-actions .btn { display: flex; align-items: center; justify-content: center; width: 100%; min-width: 0; min-height: 52px; padding: 12px 14px !important; font-size: .98rem; line-height: 1.35; text-align: center; white-space: normal; }
  .youtube-card { border-radius: 22px; padding: 26px 23px 30px !important; box-shadow: 0 16px 34px #0b387021; }
  .youtube-card::after { content: none !important; display: none !important; }
  .youtube-icon { width: 60px; height: 54px; margin-bottom: 22px; border-radius: 15px; font-size: 25px; }
  .youtube-card-label { font-size: .68rem; letter-spacing: .14em; }
  .youtube-card h3 { font-size: clamp(1.65rem, 7vw, 2.2rem) !important; line-height: 1.15; margin: 12px 0; overflow-wrap: break-word; }
  .youtube-card p { font-size: .98rem; line-height: 1.5; }
  .youtube-card a { font-size: .98rem; line-height: 1.5; overflow-wrap: break-word; }
  .next-service { overflow: hidden; }
  .next-service-inner { min-width: 0; }
  .next-service h2 { overflow-wrap: break-word; }
  .next-service-actions { min-width: 0 !important; }
  .next-service-actions a { text-align: center; }
  #actividades, #galeria, #transmisiones, #horarios { overflow-x: clip; }
  .footgrid { gap: 28px; }
}
@media (max-width: 390px) {
  .youtube-section .wrap { width: calc(100% - 28px); }
  .youtube-card { padding: 24px 19px !important; }
  .youtube-actions .btn { font-size: .91rem; }
}
