/* Ajustes mobile - compactação de espaçamento entre seções e redução de títulos */
@media (max-width: 768px) {
  html,
  body {
    overflow-x: hidden !important;
  }

  /* Ritmo vertical mais compacto entre blocos */
  section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .py-24,
  .py-20,
  .py-16 {
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important;
  }

  .pt-24,
  .pt-20,
  .pt-16 {
    padding-top: 2.25rem !important;
  }

  .pb-24,
  .pb-20,
  .pb-16 {
    padding-bottom: 2.25rem !important;
  }

  .mt-20 {
    margin-top: 4.5rem !important;
  }

  .mt-16,
  .mb-16,
  .my-16 {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }

  .mb-12,
  .mt-12 {
    margin-bottom: 1.5rem !important;
    margin-top: 1.5rem !important;
  }

  .gap-12 {
    gap: 2rem !important;
  }

  .gap-10,
  .gap-8 {
    gap: 1.5rem !important;
  }

  .space-y-12 > :not([hidden]) ~ :not([hidden]) {
    margin-top: 2rem !important;
  }

  .space-y-8 > :not([hidden]) ~ :not([hidden]) {
    margin-top: 1.5rem !important;
  }

  .p-8 {
    padding: 1.5rem !important;
  }

  .px-8 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .container,
  .container-fluid {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  /* Títulos menores no mobile */
  h1,
  .text-5xl {
    font-size: 1.875rem !important;
    line-height: 2.2rem !important;
  }

  h2,
  .text-4xl {
    font-size: 1.625rem !important;
    line-height: 1.95rem !important;
  }

  h3,
  .text-3xl {
    font-size: 1.25rem !important;
    line-height: 1.6rem !important;
  }

  .text-2xl {
    font-size: 1.25rem !important;
    line-height: 1.6rem !important;
  }

  .text-xl {
    font-size: 1.125rem !important;
    line-height: 1.5rem !important;
  }

  .text-lg {
    font-size: 1rem !important;
    line-height: 1.45rem !important;
  }

  /* Hero e chamadas principais */
  section h1,
  .hero h1,
  [class*="hero"] h1 {
    max-width: 100% !important;
    word-break: break-word;
  }

  /* Corrige áreas vazias em carrosséis e hero no mobile */
  section[class*="h-[600px]"] {
    height: 28.75rem !important;
  }

  section[class*="h-[600px]"] > .relative,
  section[class*="h-[600px]"] .overflow-hidden,
  section[class*="h-[600px]"] [class*="h-full"] {
    height: 100% !important;
  }

  .h-96 {
    height: 18rem !important;
  }

  .h-96 > .relative,
  .h-96 .overflow-hidden,
  .h-96 [class*="h-full"] {
    height: 100% !important;
  }

  .h-64 {
    height: 13rem !important;
  }

  /* Cards e grids mais compactos */
  .rounded-lg.shadow-lg,
  .rounded-xl.shadow-lg {
    margin-bottom: 0 !important;
  }

  /* Ajuste do botão no menu mobile */
  header nav button,
  header div[role="dialog"] button,
  .mobile-menu button,
  [class*="menu"] button {
    margin-bottom: 20px !important;
    margin-top: 10px !important;
    min-height: 44px !important;
  }

  header div[role="dialog"] > div,
  [class*="mobile-nav"],
  [class*="MobileNav"] {
    padding-bottom: 32px !important;
    overflow-y: auto !important;
  }
}
