@media (max-width: 1180px) {
  .bc-page .bc-hero-grid,
  .bc-page .bc-brand-panel,
  .bc-page .bc-map-panel,
  .bc-page .bc-split-panel,
  .bc-page .bc-contact-grid,
  .bc-page .bc-simple-grid {
    grid-template-columns: 1fr;
  }

  .bc-page .bc-feature-grid,
  .bc-page .bc-metric-grid,
  .bc-page .bc-process-grid,
  .bc-page .bc-proof-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bc-page .bc-course-grid,
  .bc-page .bc-team-grid,
  .bc-page .bc-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bc-page .bc-piIl-list,
  .bc-page .bc-pill-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 960px) {
  .bc-page .bc-container {
    width: min(calc(100% - 32px), var(--bc-container));
  }

  .bc-page .bc-section {
    padding: 72px 0;
  }

  .bc-page .bc-title {
    font-size: clamp(2rem, 8vw, 3rem);
  }

  .bc-page .bc-hero {
    padding-top: 34px;
  }

  .bc-page .bc-hero-copy {
    order: 2;
  }

  .bc-page .bc-hero-visual {
    order: 1;
  }

  .bc-page .bc-media-card {
    min-height: 500px;
  }

  .bc-page .bc-contact-grid {
    grid-template-columns: 1fr;
  }

  .bc-page .bc-pill-list,
  .bc-page .bc-feature-grid,
  .bc-page .bc-metric-grid,
  .bc-page .bc-process-grid,
  .bc-page .bc-proof-grid,
  .bc-page .bc-course-grid,
  .bc-page .bc-team-grid,
  .bc-page .bc-footer-grid {
    grid-template-columns: 1fr;
  }

  .bc-page .bc-hero-badges {
    grid-template-columns: 1fr;
  }

  .bc-page .bc-button-row {
    flex-direction: column;
    align-items: stretch;
  }

  .bc-page .bc-button {
    width: 100%;
  }

  .bc-page details.bc-accordion summary {
    padding: 16px 18px;
  }

  .bc-page .bc-accordion-content {
    padding: 16px 18px 20px;
  }
}

@media (max-width: 640px) {
  .bc-page .bc-section {
    padding: 58px 0;
  }

  .bc-page .bc-hero {
    padding-top: 22px;
  }

  .bc-page .bc-kicker {
    font-size: 12px;
  }

  .bc-page .bc-kicker::before,
  .bc-page .bc-kicker::after {
    width: 28px;
  }

  .bc-page .bc-media-card {
    min-height: 380px;
  }

  .bc-page .bc-media-contact {
    left: 16px;
    right: 16px;
    bottom: 16px;
    width: auto;
  }

  .bc-page .bc-media-contact span {
    font-size: 28px;
  }

  .bc-page .bc-contact-map {
    min-height: 240px;
  }
}


/* =====================================================
   HERO FULL-BLEED — NM2 MOBILE RESPONSIVE
   ===================================================== */

@media (max-width: 960px) {
  .bc-hero--fullbleed {
    min-height: unset;
    flex-direction: column;
    align-items: stretch;
  }

  .bc-hero--fullbleed .bc-hero-photo {
    position: relative;
    inset: auto;
    height: 380px;
    flex-shrink: 0;
  }

  /* No darkening overlay on mobile photo */
  .bc-hero--fullbleed .bc-hero-overlay {
    display: none;
  }

  /* Dark card overlaps photo by 44px with rounded top corners */
  .bc-hero-copy--fullbleed {
    position: relative;
    z-index: 2;
    width: 100%;
    margin-left: 0;
    margin-top: -44px;
    padding: 32px 24px 28px;
    border-radius: 24px 24px 0 0;
    background: #06121C;
    gap: 14px;
    align-content: start;
    min-height: unset;
  }

  .bc-hero--fullbleed .bc-title {
    font-size: 30px;
    letter-spacing: -0.02em;
  }

  .bc-hero--fullbleed .bc-subtitle {
    font-size: 14px;
  }

  .bc-hero--fullbleed .bc-hero-body {
    font-size: 14px;
  }

  /* Remove kicker decorative lines on mobile */
  .bc-hero--fullbleed .bc-kicker::before,
  .bc-hero--fullbleed .bc-kicker::after {
    display: none;
  }

  /* WhatsApp bar — full-width strip at bottom of flex column */
  .bc-hero--fullbleed .bc-hero-wacard {
    position: relative;
    inset: auto;
    width: 100%;
    border-radius: 0;
    padding: 16px 20px;
    background: rgba(12, 25, 39, 0.88);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: none;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    bottom: auto;
    right: auto;
  }

  .bc-hero--fullbleed .bc-button-row {
    flex-direction: column;
  }

  .bc-hero--fullbleed .bc-button {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .bc-hero--fullbleed .bc-hero-photo {
    height: 340px;
  }
}

/* Fix: old .bc-hero-copy { order: 2 } was causing wacard to appear before copy card */
@media (max-width: 960px) {
  .bc-hero--fullbleed .bc-hero-copy.bc-hero-copy--fullbleed {
    order: 1;
  }
  .bc-hero--fullbleed .bc-hero-wacard {
    order: 2;
  }
}

/* ── Fix: badge cards single-column on mobile dark card */
@media (max-width: 960px) {
  .bc-page .bc-hero--fullbleed .bc-hero-badges {
    grid-template-columns: 1fr;
  }
  .bc-page .bc-hero--fullbleed .bc-hero-badge {
    min-height: unset;
    padding: 10px 14px;
  }
}

/* ── 5-card grid responsive overrides ── */
@media (max-width: 1180px) {
  #catalogo-electricidad .bc-course-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #catalogo-electricidad .bc-course-grid .bc-card {
    grid-column: span 1;
  }
  #catalogo-electricidad .bc-course-grid .bc-card:nth-child(4) {
    grid-column: span 1;
  }
}

@media (max-width: 960px) {
  #catalogo-electricidad .bc-course-grid {
    grid-template-columns: 1fr;
  }
}
