/* ============================================================
   RESPONSIVE — Mobile, Tablet, Laptop, Desktop, Ultra-wide
   ============================================================ */

/* Ultra-wide */
@media (min-width: 1600px) {
  :root { --max-w: 1280px; }
  .hero-title { font-size: 5.5rem; }
}

/* Laptop / small desktop */
@media (max-width: 1024px) {
  .about-grid { gap: 2rem; }
  .case { gap: 2.5rem; }
  .timeline-wrap { gap: 3rem; }
}

/* Tablet */
@media (max-width: 880px) {
  .nav-links { display: none; }
  .menu-toggle { display: inline-flex; }

  .case { grid-template-columns: 1fr; gap: 1.75rem; }
  .case-reverse .case-media { order: 0; }
  .case-media-portrait { max-width: 100%; }
  .case-media-portrait img { aspect-ratio: 16/10; }

  .case-grid { grid-template-columns: 1fr 1fr; }
  .skills-grid { grid-template-columns: 1fr; }
  .about-grid { grid-template-columns: 1fr; }
  .timeline-wrap { grid-template-columns: 1fr; gap: 3.5rem; }
}

/* Mobile */
@media (max-width: 600px) {
  .container { padding: 0 1.15rem; }
  .hero { padding: 8.5rem 0 4rem; }
  .hero-stats { gap: 1.75rem; }
  .case-grid { grid-template-columns: 1fr; }
  .cert-meta { gap: 1.25rem; }
  .footer-inner { justify-content: center; text-align: center; }
  .modal-close { top: 0.5rem; right: 0.5rem; background: rgba(0,0,0,0.5); color: #fff; border-color: rgba(255,255,255,0.25); }
  .lang-switch { display: none; }
}

@media (max-width: 380px) {
  .hero-cta { flex-direction: column; align-items: stretch; }
  .btn { justify-content: center; }
}
