/* ==========================================================================
   SmartHire — Responsive rules
   ========================================================================== */
@media (max-width: 1080px){
  .grid--4{ grid-template-columns: repeat(3, 1fr); }
  .footer__top{ grid-template-columns: 1.3fr 1fr 1fr; }
  .footer__top .footer-col--social{ grid-column: span 3; }
}

@media (max-width: 900px){
  .split{ grid-template-columns: 1fr; }
  .split.split--reverse{ display:flex; flex-direction:column-reverse; }
  .grid--3{ grid-template-columns: repeat(2, 1fr); }
  .grid--4{ grid-template-columns: repeat(2, 1fr); }
  .grid--6{ grid-template-columns: repeat(3, 1fr); }
  .dashboard-layout{ grid-template-columns: 1fr; }
  .dashboard-nav{ position:static; display:flex; overflow-x:auto; gap:.3rem; }
  .dashboard-nav a{ white-space:nowrap; }
  .auth-shell{ grid-template-columns: 1fr; }
  .auth-shell__visual{ display:none; }
}

@media (max-width: 760px){
  .nav-links{
    display:none;
    position:fixed; top: var(--nav-height); left:0; right:0; bottom:0;
    background:#fff; flex-direction:column; align-items:flex-start; padding: var(--sp-lg);
    gap: var(--sp-md); overflow-y:auto; z-index:600;
  }
  .nav-links.is-open{ display:flex; animation: fadeIn var(--dur-med) var(--ease-out); }
  .nav-toggle{ display:block; z-index:601; }
  .nav-toggle.is-active span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
  .nav-toggle.is-active span:nth-child(2){ opacity:0; }
  .nav-toggle.is-active span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }
  .nav-toggle span{ transition: transform var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out); }
  .nav-links a{ font-size:1.05rem; width:100%; }
  h1{ font-size: var(--fs-h2); }
  .footer__top{ grid-template-columns: 1fr 1fr; }
  .footer__top .footer-col--brand{ grid-column: span 2; }
}


@media (max-width: 480px){
  .navbar__inner{ padding-inline: var(--sp-sm); gap:.5rem; }
  .brand__name{ font-size:1.05rem; }
  .nav-actions{ gap:.4rem; }
  .user-chip{ padding:.3rem; gap:0; }
  .user-chip__name, .user-chip__role{ display:none; }
  .btn--sm{ padding:.5rem .7rem; font-size:.78rem; }
}

@media (max-width: 600px){
  .grid--2, .grid--3, .grid--4, .grid--6{ grid-template-columns: repeat(2, 1fr); }
  .field-row-2col{ grid-template-columns: 1fr; }
  .role-select{ grid-template-columns: 1fr; }
  .container{ padding-inline: var(--sp-md); }
  .footer__top{ grid-template-columns: 1fr; }
  .footer__top .footer-col--brand{ grid-column: span 1; }
  table{ font-size:.82rem; }
}
