/* ============================================================
   RESPONSIVE — trontunvulix.pro
   ============================================================ */

@media (max-width: 1100px) {
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; }
  .stats-grid { grid-template-columns: repeat(2, 1fr); }
  .two-col { grid-template-columns: 1fr 260px; }
}

@media (max-width: 900px) {
  .hero-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .hero-img-wrap { max-width: 560px; margin: 0 auto; }
  .grid-3 { grid-template-columns: repeat(2, 1fr); }
  .split-section { grid-template-columns: 1fr; gap: 2.5rem; }
  .contact-grid { grid-template-columns: 1fr; gap: 2rem; }
  .two-col { grid-template-columns: 1fr; }
  .two-col--reverse { grid-template-columns: 1fr; }
  .toc { position: static; }
  .main-nav { display: none; }
  .header-cta { display: none; }
  .hamburger { display: flex; }
}

@media (max-width: 700px) {
  .section { padding: 3rem 0; }
  .section--lg { padding: 4rem 0; }
  .grid-2 { grid-template-columns: 1fr; }
  .grid-3 { grid-template-columns: 1fr; }
  .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 1.25rem; }
  .stat-num { font-size: 1.9rem; }
  .footer-grid { grid-template-columns: 1fr; gap: 1.75rem; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .footer-legal { flex-wrap: wrap; justify-content: center; gap: 1rem; }
  .hero { padding: 3.5rem 0 3rem; }
  .page-hero { padding: 2.5rem 0; }
  .course-card-footer { flex-direction: column; gap: .75rem; align-items: flex-start; }
  .btn-group { flex-direction: column; }
  .btn-group .btn { text-align: center; justify-content: center; }
  .breadcrumb { flex-wrap: wrap; }
  .container { padding: 0 1rem; }
  .back-to-top { bottom: 1rem; right: 1rem; }
  .cookie-banner { left: 1rem; right: 1rem; bottom: 1rem; }
}

@media (max-width: 480px) {
  h1 { font-size: 1.65rem; }
  h2 { font-size: 1.35rem; }
  .stats-grid { grid-template-columns: 1fr 1fr; }
  .page-hero-meta { gap: 1rem; }
  .testimonial-card { padding: 1.25rem; }
  .accordion-toggle { padding: 1rem; font-size: .875rem; }
  .contact-info-card { padding: 1.5rem; }
  .contact-form-box { padding: 1.5rem; }
}
