@media (max-width: 1180px) {
  .metric-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .method-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .level-route { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 980px) {
  .hero-grid, .theo-section, .auth-shell, .dashboard-layout, .split-workspace, .campus-overview { grid-template-columns: 1fr; }
  .hero-grid { min-height: auto; }
  .campus-preview { min-height: 380px; }
  .auth-aside { min-height: 340px; }
  .auth-proof { padding-top: 24px; }
  .admin-layout, .campus-layout { grid-template-columns: 1fr; }
  .app-sidebar { position: fixed; z-index: var(--z-drawer); width: min(290px, 86vw); height: 100svh; transform: translateX(-102%); transition: transform 220ms var(--ease-out); box-shadow: var(--shadow-md); }
  .app-sidebar.is-open { transform: translateX(0); }
  .app-drawer-toggle { display: inline-flex; }
  .workspace-topbar { position: sticky; }
  .campus-nav-mobile { display: flex; overflow-x: auto; gap: 4px; padding: 8px clamp(18px, 4vw, 30px); border-bottom: 1px solid var(--line); background: var(--surface); }
  .campus-nav-mobile a { flex: 0 0 auto; padding: 8px 10px; border-radius: var(--radius-sm); color: var(--muted); font-size: var(--text-sm); font-weight: 750; }
  .campus-nav-mobile a.is-active { color: var(--ink); background: var(--yellow-soft); }
}

@media (max-width: 720px) {
  .site-header { min-height: 64px; padding: 9px 16px; }
  .brand-link img { width: 35px; height: 35px; }
  .brand-link strong { font-size: var(--text-base); }
  .nav-toggle { display: inline-grid; place-items: center; }
  .site-nav { position: absolute; top: calc(100% + 1px); right: 10px; left: 10px; display: none; align-items: stretch; padding: 10px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow-md); }
  .site-nav.is-open { display: grid; }
  .site-nav > a, .site-nav form, .site-nav form > button, .language-switcher { width: 100%; }
  .site-nav form > button { justify-content: flex-start; }
  .site-nav .button { margin-left: 0; }
  .language-switcher { margin-left: 0; }
  .hero-grid { gap: 38px; padding: 48px 20px 58px; }
  .hero-copy h1 { font-size: clamp(2.65rem, 13vw, 4.25rem); }
  .campus-preview { min-height: 315px; padding: 14px; }
  .preview-window { grid-template-columns: 58px minmax(0, 1fr); min-height: 285px; }
  .preview-content { gap: 12px; padding: 14px; }
  .preview-row { grid-template-columns: 1fr; }
  .public-section { padding: 58px 20px; }
  .section-intro { grid-template-columns: 1fr; gap: 15px; margin-bottom: 26px; }
  .method-grid, .level-route, .plan-comparison { grid-template-columns: 1fr; }
  .method-grid article { min-height: auto; }
  .method-grid .icon { margin-bottom: 22px; }
  .site-footer { flex-direction: column; padding: 28px 20px; }
  .form-grid, .form-grid-3, .segmented-field { grid-template-columns: 1fr; }
  .filter-bar { grid-template-columns: 1fr; }
  .workspace-topbar { min-height: 64px; padding: 10px 16px; }
  .topbar-date { display: none; }
  .workspace-main, .campus-main { padding: 22px 16px 36px; }
  .dashboard-welcome, .page-intro, .campus-hero { align-items: flex-start; flex-direction: column; }
  .dashboard-welcome .button, .page-intro .button { width: 100%; }
  .metric-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .metric-card { padding: 13px; }
  .metric-card strong { font-size: var(--text-xl); }
  .agenda-list li { grid-template-columns: 50px 1fr; }
  .agenda-list li > .badge { display: none; }
  .calendar-slot { grid-template-columns: 1fr; gap: 7px; }
  .timeline-actions { justify-content: flex-start; }
  .campus-stat-grid { grid-template-columns: 1fr; }
  .student-switcher { width: 100%; }
  .table-wrap { margin-inline: -16px; border-right: 0; border-left: 0; border-radius: 0; }
  .table-actions { justify-content: flex-start; }
}
