/* Mobile fixes — injected on top of Tailwind v4 dist */
@media (max-width: 767px) {
  /* ----- NAV ----- */
  nav, nav * { display: flex; flex-wrap: wrap; }
  nav { flex-direction: column; align-items: flex-start; gap: 0.25rem; }
  nav a, nav button { padding: 0.5rem 0; font-size: 0.9375rem; min-height: 44px; display: flex; align-items: center; }

  /* ----- GRIDS to single column ----- */
  [class*="grid-cols-"],
  [class*="lg:grid-cols-"],
  [class*="md:grid-cols-"] { grid-template-columns: 1fr !important; }
  [class*="flex-row"] { flex-direction: column !important; }

  /* ----- TYPE ----- */
  h1, [class*="text-6xl"], [class*="text-5xl"], [class*="text-4xl"] { font-size: 1.75rem !important; line-height: 1.15 !important; }
  h2, [class*="text-3xl"] { font-size: 1.375rem !important; line-height: 1.2 !important; }
  h3 { font-size: 1.125rem !important; }
  p, li, span:not(.icon):not([class*="flex"]) { font-size: 0.9375rem !important; line-height: 1.5 !important; }

  /* ----- SPACING ----- */
  section, .section, [class*="py-2"] { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
  section, .section, [class*="px-"] { padding-left: 1rem !important; padding-right: 1rem !important; }

  /* ----- IMAGES ----- */
  img, svg, video { max-width: 100% !important; height: auto !important; }

  /* ----- CARDS ----- */
  [class*="card"], article, [class*="rounded"] { margin-bottom: 1rem; overflow: visible; }

  /* ----- TAP TARGETS ----- */
  button, a[href], [role="button"], [class*="btn"], [class*="button"] { min-height: 44px; min-width: 44px; padding: 0.625rem 1rem; }

  /* ----- PREVENT OVERLAP ----- */
  [class*="absolute"] { position: relative !important; }
  [class*="sticky"], [class*="fixed"]:not(.floating) { position: relative !important; }
  [class*="overflow-hidden"] { overflow: visible !important; }

  /* ----- TESTIMONIALS & STORIES ----- */
  .testimonial, [class*="testimonial"], [class*="story"] { margin-bottom: 1.5rem; }

  /* ----- MAP / FLEET ----- */
  [class*="map"], [class*="fleet"] { max-width: 100%; }
  .swiper, .carousel, [class*="carousel"] { max-width: 100vw; overflow: hidden; }

  /* ----- FORM ----- */
  form, [class*="form"] { width: 100%; }
  input, textarea, select { font-size: 16px !important; width: 100%; box-sizing: border-box; }

  /* ----- HERO ----- */
  [class*="hero"], [class*="Hero"] { min-height: 60vh; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; }
}