/* ==========================================================================
   BPL Template — Responsive Overrides
   ========================================================================== */

@media (max-width: 991.98px) {
  body {
    padding-top: 68px;
  }

  .navbar-bpl {
    height: 68px;
  }

  .navbar-bpl .navbar-collapse {
    background: var(--bpl-navy);
    margin-top: 0.75rem;
    padding: 1rem;
    border-radius: 0.5rem;
  }

  .navbar-bpl .nav-link.active::after {
    display: none;
  }

  .hero {
    min-height: auto;
    padding: 6rem 0 4rem;
    text-align: center;
  }

  .hero h1 {
    font-size: 2.25rem;
  }

  .hero p.lead {
    margin-left: auto;
    margin-right: auto;
  }

  .page-hero {
    padding: 4.5rem 0 2.5rem;
  }

  .home-slider .slider-img {
    height: 400px;
  }
}

@media (max-width: 767.98px) {
  .section {
    padding: 2.75rem 0;
  }

  .home-slider .slider-img {
    height: 300px;
  }

  .section-title h2 {
    font-size: 1.6rem;
  }

  .form-bpl {
    padding: 1.5rem;
  }

  .certificate-frame {
    padding: 2rem 1rem;
    outline-offset: -12px;
  }

  .certificate-frame .cert-title {
    font-size: 1.5rem;
  }

  .certificate-frame .cert-name {
    font-size: 1.4rem;
  }

  .lightbox-prev,
  .lightbox-next {
    width: 38px;
    height: 38px;
    font-size: 1rem;
  }

  .lightbox-close {
    top: 0.75rem;
    right: 0.75rem;
  }
}

@media (max-width: 575.98px) {
  .hero h1 {
    font-size: 1.85rem;
  }

  .home-slider .slider-img {
    height: 220px;
  }

  .stat-card .stat-number {
    font-size: 2rem;
  }

  .back-to-top {
    right: 1rem;
    bottom: 1rem;
    width: 40px;
    height: 40px;
  }

  .floating-actions {
    left: 1rem;
    bottom: 1rem;
    gap: 0.65rem;
  }

  .fab-item,
  .fab-circle {
    width: 46px;
    height: 46px;
  }

  .fab-circle svg {
    width: 22px;
    height: 22px;
  }
}
