/* ==========================================================================
   RESHMI EDUCATIONAL INSTITUTIONS — responsive rules
   Breakpoints: 1120px (nav) / 992px (tablet) / 768px / 560px (mobile)
   ========================================================================== */

@media (max-width:1120px) {
  .nav-links {
    display: none
  }

  .nav-toggle {
    display: flex
  }

  .nav-actions .btn {
    display: none
  }

  .site-language label {
    display: none
  }
}

@media (max-width:992px) {
  .split {
    grid-template-columns: 1fr;
    gap: 44px
  }

  .split.reverse>.split-media {
    order: 0
  }

  .inst-grid {
    grid-template-columns: 1fr 1fr
  }

  .prog-grid {
    grid-template-columns: 1fr 1fr
  }

  .values-grid {
    grid-template-columns: 1fr 1fr
  }

  .teacher-grid {
    grid-template-columns: 1fr 1fr
  }

  .support-team-grid {
    grid-template-columns: 1fr 1fr
  }

  .stats-grid {
    grid-template-columns: repeat(3, 1fr)
  }

  .contact-cards {
    grid-template-columns: 1fr 1fr
  }

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

  .footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 36px
  }

  .masonry {
    columns: 3 220px
  }

  .float-card {
    display: none
  }

  .hero-arrow.prev {
    left: 12px
  }

  .hero-arrow.next {
    right: 12px
  }

  .modal-card {
    grid-template-columns: 1fr;
    max-width: 560px
  }

  .modal-photo {
    min-height: 300px
  }
}

@media (max-width:768px) {
  .split-media::before {
    display: none
  }

  .frame-badge {
    left: 0
  }

  .inst-grid,
  .inst-grid.two {
    grid-template-columns: 1fr
  }

  .map-embed iframe {
    height: 300px
  }

  .t-group-head {
    flex-wrap: wrap
  }

  .prog-grid {
    grid-template-columns: 1fr
  }

  .values-grid {
    grid-template-columns: 1fr
  }

  .ach-grid {
    grid-template-columns: 1fr
  }

  .pathway::before {
    left: 30px
  }

  .path-item {
    grid-template-columns: 60px 1fr;
    margin-bottom: 30px
  }

  .path-year {
    grid-column: 1;
    width: 60px;
    height: 60px;
    font-size: .9rem;
    box-shadow: 0 0 0 6px var(--bg)
  }

  .path-item .left,
  .path-item .right {
    grid-column: 2;
    text-align: left
  }

  .path-or {
    text-align: left;
    padding-left: 76px
  }

  .timeline::before {
    left: 26px
  }

  .tl-item {
    grid-template-columns: 52px 1fr;
    margin-bottom: 44px
  }

  .tl-dot {
    grid-column: 1
  }

  .tl-item .left,
  .tl-item .right {
    grid-column: 2
  }

  .filter-bar {
    flex-direction: column;
    align-items: stretch
  }

  .search-box {
    width: 100%
  }

  .chip-row {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 8px;
    -webkit-overflow-scrolling: touch
  }

  .chip {
    flex-shrink: 0
  }

  .form-grid {
    grid-template-columns: 1fr
  }

  .scroll-cue {
    display: none
  }

  .frame-badge {
    left: 12px
  }
}

@media (max-width:560px) {
  .form-status.ok {
    right: 16px;
    bottom: 16px;
    width: calc(100vw - 32px)
  }

  .site-language select {
    min-width: 82px;
    font-size: .7rem
  }

  .teacher-grid {
    grid-template-columns: 1fr
  }

  .support-team-grid {
    grid-template-columns: 1fr
  }

  .stats-grid {
    grid-template-columns: 1fr 1fr
  }

  .contact-cards {
    grid-template-columns: 1fr
  }

  .footer-grid {
    grid-template-columns: 1fr
  }

  .masonry {
    columns: 2 150px
  }

  .hero-content {
    padding: 130px 0 120px
  }

  .hero-btns .btn {
    width: 100%;
    justify-content: center
  }

  .hero-arrow {
    display: none
  }

  .brand-text span {
    display: none
  }

  .footer-bottom {
    justify-content: center;
    text-align: center
  }

  .modal-fields {
    grid-template-columns: 1fr
  }

  #toTop {
    bottom: 18px;
    right: 18px;
    width: 44px;
    height: 44px
  }

  .swap-thumb {
    width: 88px;
    height: 64px
  }
}