/* ==========================================================================
   Prime Used Engines — Responsive Stylesheet
   ========================================================================== */

/* ---------- Large Desktop (below 1399px) ---------- */
@media (max-width: 1399.98px) {
  .hero-stats { max-width: 700px; }
}

/* ---------- Laptop / Small Desktop (below 1199px) ---------- */
@media (max-width: 1199.98px) {
  .section-padding { padding: 80px 0; }
  .timeline-steps::before { left: 40px; right: 40px; }
  .step-circle { width: 80px; height: 80px; font-size: 26px; }
  .search-parts-card { margin-top: -80px; }
}

/* ---------- Tablet (below 991px) ---------- */
@media (max-width: 991.98px) {
  .section-padding { padding: 64px 0; }
  .section-padding-sm { padding: 44px 0; }

  .topbar .d-lg-block,
  .topbar-hide-md { display: none !important; }

  .main-nav {
    background: #fff;
    padding: 20px;
    border-radius: 14px;
    margin-top: 14px;
    box-shadow: var(--shadow-md);
  }

  .main-nav .nav-link::after { display: none; }
  .header-actions .btn-primary-brand { display: none; }

  .hero-section { min-height: auto; padding: 160px 0 80px; }
  .hero-stats { grid-template-columns: repeat(2, 1fr); }

  .search-parts-card { margin-top: 30px; padding: 30px; }

  .timeline-steps { flex-wrap: wrap; row-gap: 40px; }
  .timeline-steps::before { display: none; }
  .step-item { flex: 0 0 50%; }

  .legal-sidebar { position: static; margin-bottom: 30px; }

  .floating-badge-card { position: static; margin-top: -40px; margin-left: 20px; width: fit-content; }

  .footer-about, .footer-links-col { margin-bottom: 40px; }
}

/* ---------- Mobile (below 767px) ---------- */
@media (max-width: 767.98px) {
  .section-padding { padding: 50px 0; }
  .hero-title { font-size: 34px; }
  .hero-subtitle { font-size: 15.5px; }
  .hero-btns .btn { width: 100%; text-align: center; }
  .hero-btns { flex-direction: column; }

  .hero-stats { grid-template-columns: repeat(2, 1fr); gap: 18px 14px; }
  .hero-stat-item .stat-num { font-size: 24px; }

  .page-hero { padding: 140px 0 60px; }

  .step-item { flex: 0 0 100%; margin-bottom: 20px; }

  .search-parts-card { padding: 22px; }

  .cta-section .text-lg-end { text-align: left !important; margin-top: 20px; }

  .floating-call-btn { display: flex; }

  #backToTop { bottom: 100px; }

  .contact-form-wrap { padding: 26px; }

  .error-code { font-size: 90px; }
}

/* ---------- Small Mobile (below 575px) ---------- */
@media (max-width: 575.98px) {
  .hero-stats { grid-template-columns: repeat(2, 1fr); }
  .navbar-brand-logo .logo-text { font-size: 17px; }
  .navbar-brand-logo .logo-icon { width: 40px; height: 40px; font-size: 17px; }
  .section-tag { font-size: 11.5px; padding: 7px 16px; }
  .popup-box { padding: 26px; }
  .product-meta { grid-template-columns: 1fr; }
}
