@media (max-width: 1199.98px) {
  .navbar-nav { gap: 0; }
  .nav-link { padding-left: .5rem!important; padding-right: .5rem!important; }
}

@media (max-width: 991.98px) {
  .navbar { background: rgba(8,8,8,.92); border-color: var(--line); padding: 12px 0; }
  .navbar-collapse { background: #0d0d0d; border: 1px solid var(--line); margin-top: 12px; padding: 12px 16px 18px; }
  .navbar-nav { align-items: stretch; }
  .nav-link { border-bottom: 1px solid rgba(255,255,255,.08); padding: .75rem 0!important; }
  .navbar .btn { margin-top: 14px; width: 100%; }
  .hero { min-height: 700px; }
  .hero-note { display: none; }
  .section { padding: 80px 0; }
  .image-frame { margin: 0 18px 18px 0; }
  .floating-card { left: 18px; }
  .map-frame { height: 390px; }
}

@media (max-width: 767.98px) {
  .hero { align-items: center; min-height: 690px; padding: 120px 0 60px; }
  .hero-bg { background-position: 60% center; }
  .hero h1 { font-size: clamp(3.25rem, 16vw, 5rem); }
  .hero-copy { font-size: .98rem; }
  .hero-stat { margin-top: 36px; }
  .section { padding: 68px 0; }
  .section-title { font-size: clamp(2.15rem, 11vw, 3.25rem); }
  .page-hero { min-height: 390px; padding: 125px 0 46px; }
  .image-frame img { min-height: 350px; }
  .course-card { padding: 25px; }
  .faculty-photo { height: 330px; }
  .stats-band { padding: 10px 0; }
  .stat { border-bottom: 1px solid rgba(255,255,255,.22); border-right: 0; padding: 24px 0; }
  .stat:last-child { border-bottom: 0; }
  .gallery-item img { min-height: 235px; }
  .testimonial-card { padding: 30px 25px; }
  .pricing-card.popular { transform: none; }
  .contact-panel { padding: 30px 23px; }
  .contact-detail a, .contact-detail p { font-size: 1.02rem; }
  .footer { padding-top: 58px; }
  .floating-action { bottom: 18px; right: 18px; }
  #to-top { bottom: 78px; }
}

@media (max-width: 399.98px) {
  .navbar-brand { font-size: 1.08rem; }
  .brand-monogram { height: 31px; width: 31px; }
  .hero h1 { font-size: 3.15rem; }
  .btn { padding: 13px 16px; }
  .event-card { grid-template-columns: 77px 1fr; }
  .event-detail { padding: 20px 16px; }
}

@media (max-width: 767.98px){.hero{min-height:720px}.hero h1{max-width:10ch}.page-hero-bg{background-position:center}.page-reviews .page-hero-bg{background-position:center 35%}}
