/* ===================================================
   FINBA 2026 — Responsive Styles
   Mobile: ≤768px  |  Tablet: 769px–1024px
   =================================================== */

/* ── NAV ── */
.r-nav-links { display: flex; }
.r-nav-btn { }

@media (max-width: 1024px) {
  .r-nav { padding: 0 28px !important; }
}
@media (max-width: 768px) {
  .r-nav  { padding: 0 18px !important; height: 68px !important; }
  .r-nav-links { display: none !important; }
  .r-nav-logo img { height: 58px !important; }
  .r-nav-btn { font-size: 13px !important; padding: 9px 16px !important; }
}

/* ── HERO HOME ── */
@media (max-width: 1024px) {
  .r-hero { height: 700px !important; }
  .r-hero-title { font-size: 86px !important; }
  .r-hero-dancers { height: 85% !important; }
}
@media (max-width: 768px) {
  .r-hero { height: auto !important; min-height: 560px !important; padding-bottom: 48px; }
  .r-hero-title { font-size: 56px !important; line-height: .88 !important; }
  .r-hero-sub  { font-size: 16px !important; }
  .r-hero-date { font-size: 15px !important; padding: 12px 18px !important; }
  .r-hero-headline { left: 18px !important; top: 80px !important; right: 18px !important; }
  .r-hero-ctas { left: 18px !important; bottom: 32px !important; right: 18px !important; }
  .r-hero-ctas > div { flex-direction: column !important; gap: 10px !important; }
  .r-hero-btn  { font-size: 15px !important; padding: 14px 24px !important; width: 100% !important; text-align: center !important; display: block !important; }
  .r-hero-dancers { height: 65% !important; right: -10% !important; opacity: .6; }
}

/* ── SECTION PADDING ── */
@media (max-width: 1024px) {
  .r-section { padding-left: 32px !important; padding-right: 32px !important; }
}
@media (max-width: 768px) {
  .r-section { padding-left: 18px !important; padding-right: 18px !important;
                padding-top: 48px !important; padding-bottom: 52px !important; }
}

/* ── COUNTDOWN ── */
@media (max-width: 1024px) {
  .r-countdown { padding: 44px 32px 0 !important; }
}
@media (max-width: 768px) {
  .r-countdown { padding: 36px 18px 0 !important; }
  .r-cd-boxes  { gap: 8px !important; }
  .r-cd-box    { width: 132px !important; padding: 16px 4px 12px !important; }
  .r-cd-num    { font-size: 64px !important; }
}

/* ── STATS 4-COL GRID ── */
@media (max-width: 1024px) {
  .r-stats-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 768px) {
  .r-stats-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .r-stats-grid > div { padding: 32px 20px !important; }
  .r-stats-num { font-size: 60px !important; }
}

/* ── INTRO ── */
@media (max-width: 1024px) {
  .r-intro-logo { height: 200px !important; }
}
@media (max-width: 768px) {
  .r-intro-logo { height: 160px !important; margin-bottom: 28px !important; }
  .r-intro h2 { font-size: 38px !important; }
  .r-intro p  { font-size: 16px !important; }
}

/* ── SECTION HEADERS (title + link row) ── */
@media (max-width: 768px) {
  .r-section-header { flex-direction: column !important; align-items: flex-start !important; gap: 10px !important; margin-bottom: 24px !important; }
  .r-section-h2     { font-size: 44px !important; }
}

/* ── COMPANIES FEATURED CARD ── */
@media (max-width: 1024px) {
  .r-companies-hero { height: 300px !important; }
}
@media (max-width: 768px) {
  .r-companies-hero { height: 240px !important; }
  .r-companies-hero-content { left: 22px !important; right: 22px !important; }
  .r-companies-hero-content h3 { font-size: 48px !important; }
  .r-companies-hero-content p  { font-size: 14px !important; }
  .r-companies-hero-content .r-hero-inner-badge { font-size: 11px !important; }
}

/* ── COMPANIES 4-COL GRID ── */
@media (max-width: 1024px) {
  .r-companies-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 768px) {
  .r-companies-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; }
  .r-companies-grid h3 { font-size: 18px !important; }
}

/* ── FEATURED EVENT ROWS ── */
@media (max-width: 768px) {
  .r-event-row  { flex-direction: column !important; gap: 8px !important; padding: 18px !important; }
  .r-event-date { width: auto !important; border-right: none !important; padding-right: 0 !important;
                  border-bottom: 1px solid #e4ebf4; padding-bottom: 10px !important;
                  display: flex !important; flex-direction: row !important; align-items: center !important; gap: 10px !important; }
  .r-event-date .r-day-num { font-size: 36px !important; }
  .r-event-time { text-align: left !important; min-width: auto !important; }
  .r-event-time > div:first-child { font-size: 20px !important; justify-content: flex-start !important; }
}

/* ── EDUCATIONAL 2-COL GRID ── */
@media (max-width: 1024px) {
  .r-edu-grid { grid-template-columns: 1fr !important; }
}

/* ── NEWS 3-COL GRID ── */
@media (max-width: 1024px) {
  .r-news-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 768px) {
  .r-news-grid { grid-template-columns: 1fr !important; }
}

/* ── CTA SECTION ── */
@media (max-width: 768px) {
  .r-cta-inner { flex-direction: column !important; gap: 28px !important; }
  .r-cta-h2 { font-size: 44px !important; }
}

/* ── FOOTER ── */
@media (max-width: 1024px) {
  .r-footer-grid  { grid-template-columns: 1fr 1fr !important; }
  .r-footer-inner { padding: 48px 32px 32px !important; }
}
@media (max-width: 768px) {
  .r-footer-grid  { grid-template-columns: 1fr !important; }
  .r-footer-inner { padding: 36px 18px 24px !important; }
}

/* ── PROGRAMACION PAGE ── */
@media (max-width: 1024px) {
  .r-prog-header { padding: 40px 32px 32px !important; }
  .r-prog-filters { padding: 14px 32px !important; }
}
@media (max-width: 768px) {
  .r-prog-header { padding: 32px 18px 28px !important; }
  .r-prog-header h1 { font-size: 50px !important; }
  .r-prog-header p  { font-size: 15px !important; }
  .r-prog-filters { padding: 14px 18px !important; top: 62px !important; }
  .r-prog-filters > div { flex-wrap: wrap !important; gap: 10px !important; }
  .r-prog-list-grid { grid-template-columns: 1fr !important; }
  .r-lista-row { flex-direction: column !important; gap: 8px !important; }
  .r-lista-row .r-event-time { text-align: left !important; min-width: auto !important; }
}

/* ── UN CHANCE PAGE ── */
@media (max-width: 1024px) {
  .r-uc-hero-content { padding: 40px 32px 36px !important; }
  .r-uc-form-outer { padding: 36px 32px 64px !important; }
  .r-uc-form-section { padding: 28px 28px !important; }
}
@media (max-width: 768px) {
  .r-uc-hero h1 { font-size: 54px !important; }
  .r-uc-hero-content { padding: 32px 18px 32px !important; }
  .r-uc-form-outer { padding: 24px 18px 48px !important; }
  .r-uc-form-section { padding: 22px 18px !important; }
  .r-form-grid-2 { grid-template-columns: 1fr !important; }
  .r-form-grid-3 { grid-template-columns: repeat(2, 1fr) !important; }
  .r-uc-dates-strip { padding: 16px 18px !important; }
}

/* ── LARREAL PAGE ── */
@media (max-width: 1024px) {
  .r-larreal-hero { height: 420px !important; }
  .r-larreal-hero-content { left: 32px !important; right: 32px !important; }
  .r-larreal-content { grid-template-columns: 1fr !important; padding: 56px 32px !important; }
  .r-larreal-credits { grid-template-columns: 1fr !important; padding: 48px 32px !important; }
  .r-larreal-info-bar { padding: 24px 32px !important; }
  .r-larreal-repertorio { padding: 60px 32px !important; }
}
@media (max-width: 768px) {
  .r-larreal-hero { height: 340px !important; }
  .r-larreal-hero-content { left: 18px !important; right: 18px !important; bottom: 28px !important; }
  .r-larreal-hero-content h1 { font-size: 68px !important; }
  .r-larreal-hero-content p  { font-size: 15px !important; }
  .r-larreal-info-bar { padding: 20px 18px !important; }
  .r-larreal-info-bar > div { gap: 20px !important; }
  .r-larreal-info-bar .r-info-divider { display: none !important; }
  .r-larreal-info-bar .r-info-links { margin-left: 0 !important; width: 100% !important; }
  .r-larreal-content { grid-template-columns: 1fr !important; padding: 40px 18px !important; gap: 28px !important; }
  .r-larreal-sticky { position: static !important; }
  .r-larreal-repertorio { padding: 48px 18px !important; }
  .r-larreal-obra { padding: 22px 18px !important; grid-template-columns: 48px 1fr !important; gap: 16px !important; }
  .r-larreal-obra-num { font-size: 32px !important; }
  .r-larreal-obra h3 { font-size: 26px !important; }
  .r-larreal-credits { grid-template-columns: 1fr !important; padding: 40px 18px !important; }
  .r-larreal-cta { padding: 36px 18px !important; }
  .r-larreal-gallery-outer { padding: 48px 18px !important; }
  .r-larreal-gallery { grid-template-columns: 1fr !important; grid-template-rows: 220px 220px !important; }
  .r-larreal-gallery > div:first-child { grid-row: auto !important; }
}

/* ── MODAL EVENTO ── */
#ev-modal > div {
  max-width: calc(100vw - 32px);
}
@media (max-width: 768px) {
  #ev-modal { padding: 12px !important; align-items: flex-end !important; }
  #ev-modal > div { border-radius: 20px 20px 0 0 !important; max-height: 92vh !important; }
  #ev-modal h2 { font-size: 32px !important; }
  #ev-modal-img { height: 180px !important; }
}
