/* ==========================================================================
   Leadership Impact Collective — Responsive Enhancements
   Breakpoints: 320, 375, 480, 576, 768, 991, 1024, 1200, 1440, 1920
   ========================================================================== */

@media (max-width: 1199px) {
  .nav-link {
    padding: 0.6rem 0.65rem;
    font-size: 0.88rem;
  }

  .dropdown {
    min-width: 250px;
  }
}

@media (max-width: 1024px) {
  .home-hero-grid {
    gap: 2rem;
  }

  .credentials-strip {
    grid-template-columns: repeat(2, 1fr);
  }

  .process-steps {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 991px) {
  :root {
    --header-height: 76px;
  }

  .logo-text {
    font-size: 1.15rem;
  }

  .logo-tagline {
    font-size: 0.62rem;
  }

  .mobile-book-bar {
    display: block;
  }

  body.has-mobile-book-bar {
    padding-bottom: 76px;
  }

  .scroll-top {
    bottom: 5.5rem;
  }

  .page-hero,
  .home-hero {
    padding-top: 2.25rem;
  }

  .hero-media {
    max-width: 420px;
    margin-inline: auto;
    aspect-ratio: 5 / 6;
  }
}

@media (max-width: 767px) {
  .container {
    width: min(100% - 1.5rem, var(--max-width));
  }

  h1 {
    font-size: clamp(2rem, 9vw, 2.6rem);
  }

  h2 {
    font-size: clamp(1.65rem, 7vw, 2.1rem);
  }

  .section {
    padding: 3rem 0;
  }

  .btn {
    width: 100%;
  }

  .btn-group {
    flex-direction: column;
  }

  .btn-group .btn {
    width: 100%;
  }

  .credentials-strip {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  .credential-item {
    text-align: left;
    display: flex;
    flex-direction: column;
    padding: 0.75rem 0.5rem;
    border-bottom: 1px solid var(--color-border);
  }

  .credential-item:last-child {
    border-bottom: none;
  }

  .process-step {
    padding: 1.25rem 1.25rem 1.25rem 4.25rem;
  }

  .process-steps {
    grid-template-columns: 1fr;
  }

  .cta-banner {
    padding: 2rem 1.25rem;
    border-radius: var(--radius-md);
  }

  .footer-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .form-actions {
    flex-direction: column-reverse;
  }

  .form-actions .btn {
    width: 100%;
  }

  .timeline {
    padding-left: 1.15rem;
  }

  .card {
    padding: 1.35rem;
  }

  .card-media {
    margin: -1.35rem -1.35rem 1rem;
  }
}

@media (max-width: 575px) {
  .logo-tagline {
    display: none;
  }

  .header-inner {
    min-height: 68px;
  }

  :root {
    --header-height: 68px;
  }

  .audience-grid,
  .stats-grid,
  .value-grid,
  .credential-grid {
    grid-template-columns: 1fr;
  }

  .filter-bar {
    gap: 0.5rem;
  }

  .filter-btn {
    font-size: 0.8rem;
    padding: 0.5rem 0.85rem;
  }

  .breadcrumbs {
    font-size: 0.8rem;
  }
}

@media (max-width: 479px) {
  body {
    font-size: 1rem;
  }

  .section-header {
    margin-bottom: 1.75rem;
  }

  .stat-number {
    font-size: 2rem;
  }

  .path-option label {
    padding: 0.95rem 1rem;
    font-size: 0.95rem;
  }
}

@media (max-width: 374px) {
  .container {
    width: min(100% - 1.15rem, var(--max-width));
  }

  .logo-text {
    font-size: 1.05rem;
    max-width: 11rem;
  }

  .btn {
    font-size: 0.9rem;
    padding: 0.75rem 1.15rem;
  }
}

@media (min-width: 1200px) {
  .home-hero-grid {
    gap: 4rem;
  }

  .credentials-strip {
    grid-template-columns: repeat(5, 1fr);
  }
}

@media (min-width: 1440px) {
  .container {
    width: min(100% - 3rem, var(--max-width));
  }
}

@media (min-width: 1920px) {
  body {
    font-size: 1.075rem;
  }
}

/* Prevent horizontal overflow */
html,
body {
  overflow-x: hidden;
  max-width: 100%;
}

img,
svg,
video,
iframe {
  max-width: 100%;
}
