/* ==========================================================================
   TMU TECHNOLOGIES — RESPONSIVE OVERRIDES
   Breakpoints follow Bootstrap 5.3: 1200 / 992 / 768 / 576
   ========================================================================== */

/* --------------------------------------------------------------------------
   Large desktops / laptops (<=1200px)
   -------------------------------------------------------------------------- */
@media (max-width: 1200px){
  .hero{ padding-top: 10rem; }
  .section-pad{ padding: 5.5rem 0; }
}

/* --------------------------------------------------------------------------
   Tablets (<=991px)
   -------------------------------------------------------------------------- */
@media (max-width: 991px){
  .hero{ padding: 9rem 0 4rem; text-align: center; }
  .hero-lead{ margin-left: auto; margin-right: auto; }
  .hero-actions{ justify-content: center; }
  .hero-stats-strip{ justify-content: center; }
  .signal-grid-wrap{ margin-top: 3rem; max-width: 380px; }

  .tmu-nav{
    background: rgba(11,17,32,0.98);
    border: 1px solid var(--c-border);
    border-radius: var(--r-md);
    padding: 1.2rem;
    margin-top: 1rem;
  }
  .tmu-nav .nav-link::after{ display: none; }
  .tmu-nav .nav-link{ padding: .65rem 1rem !important; }
  .nav-cta-wrap{ margin-top: .5rem; padding-top: .8rem; border-top: 1px solid var(--c-border); }

  .section-pad{ padding: 4.5rem 0; }
  .cta-band{ padding: 3rem 1.75rem; }

  .legal-toc{ position: static; margin-bottom: 2rem; }

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

/* --------------------------------------------------------------------------
   Mobile landscape / small tablets (<=767px)
   -------------------------------------------------------------------------- */
@media (max-width: 767px){
  .hero{ padding: 8rem 0 3.5rem; }
  .hero-title{ font-size: clamp(2.1rem, 8vw, 2.8rem); }
  .hero-stats-strip{ gap: 1.6rem; }

  .section-title{ font-size: clamp(1.6rem, 6vw, 2.1rem); }
  .section-lead{ max-width: 100%; }

  .floating-badge{ display: none; }

  .tmu-card{ padding: 1.6rem; }

  .page-header{ padding: 7.5rem 0 3rem; text-align: center; }
  .breadcrumb-trail{ justify-content: center; display: flex; }

  .stat-block{ padding: .6rem; }
  .stat-value{ font-size: 1.7rem; }

  .job-card{ flex-direction: column; align-items: flex-start; }
  .job-card .btn{ width: 100%; justify-content: center; }

  .footer-desc{ max-width: 100%; }
  .tmu-footer{ text-align: center; }
  .tmu-footer .footer-desc{ margin-left: auto; margin-right: auto; }
  .social-row{ justify-content: center; }
}

/* --------------------------------------------------------------------------
   Mobile portrait (<=575px)
   -------------------------------------------------------------------------- */
@media (max-width: 575px){
  .container{ padding-left: 1.15rem; padding-right: 1.15rem; }

  .hero-actions{ flex-direction: column; width: 100%; }
  .hero-actions .btn{ width: 100%; justify-content: center; }

  .hero-stats-strip{ gap: 1.2rem 1.8rem; }

  .cta-band{ padding: 2.2rem 1.25rem; }
  .cta-band .hero-actions{ margin-top: 1.5rem; }

  .error-code{ font-size: 4.5rem; }

  .partner-row{ gap: 1.2rem; }
  .partner-chip{ font-size: .8rem; padding: .5rem 1rem; }
}
