@media (max-width: 1100px) {
  .kp-hero-inner,
  .kp-about-grid,
  .kp-principal-grid,
  .kp-contact-grid {
    grid-template-columns: 1fr;
  }

  .kp-admissions-card {
    grid-template-columns: 1fr;
  }

  .kp-curriculum-grid,
  .kp-values-grid,
  .kp-feature-grid,
  .kp-gallery-grid,
  .kp-team-grid,
  .kp-day-grid,
  .kp-testimonial-grid,
  .kp-faq-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kp-button {
    width: fit-content;
  }
}

@media (max-width: 820px) {
  .kp-topbar {
    grid-template-columns: 1fr;
    gap: 1rem;
    padding: 1rem 1.2rem;
  }

  .kp-header-actions {
    justify-content: space-between;
  }

  .kp-nav {
    display: none;
  }

  .kp-nav.kp-nav-open {
    display: block;
  }

  .kp-nav-list {
    flex-direction: column;
    align-items: stretch;
    gap: 0.55rem;
  }

  .kp-nav-link {
    width: 100%;
    text-align: center;
  }

  .kp-nav-toggle {
    display: inline-grid;
  }

  .kp-hero {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .kp-section {
    padding: 2rem 1rem;
  }

  .kp-hero-title {
    font-size: 2.1rem;
  }

  .kp-admissions-card {
    padding: 1.5rem;
  }

  .kp-admissions-image {
    min-height: 16rem;
  }

  .kp-curriculum-grid,
  .kp-values-grid,
  .kp-feature-grid,
  .kp-gallery-grid,
  .kp-team-grid,
  .kp-day-grid,
  .kp-testimonial-grid,
  .kp-faq-grid {
    grid-template-columns: 1fr;
  }

  .kp-section-header {
    text-align: left;
    margin: 0 0 1.25rem;
  }

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

@media (max-width: 560px) {
  .kp-topbar,
  .kp-section {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .kp-brand {
    grid-template-columns: 1fr;
    gap: 0.75rem;
  }

  .kp-header-actions {
    justify-content: space-between;
    gap: 0.75rem;
  }

  .kp-button {
    width: 100%;
    justify-content: center;
  }

  .kp-slide-control {
    width: 2.6rem;
    height: 2.6rem;
  }

  .kp-slide-dots {
    gap: 0.5rem;
  }

  .kp-slide-dot {
    width: 0.78rem;
    height: 0.78rem;
  }

  .kp-admissions-card {
    margin-top: 1.5rem;
  }

  .kp-admissions-image {
    min-height: 14rem;
  }

  .kp-gallery-card,
  .kp-team-card,
  .kp-day-card,
  .kp-faq-card,
  .kp-feature-card,
  .kp-value-card,
  .kp-map-card,
  .kp-contact-card {
    padding: 1.2rem;
  }

  .kp-header-actions,
  .kp-badges,
  .kp-hero-actions,
  .kp-special-list-group,
  .kp-contact-row {
    flex-direction: column;
  }

  .kp-contact-row {
    grid-template-columns: 1fr;
  }
}
