/* Mobile-first conversion and accessibility refinements. Desktop layout remains unchanged. */
@media (max-width: 767px) {
  html {
    scroll-behavior: smooth;
  }

  body {
    padding-bottom: calc(64px + env(safe-area-inset-bottom));
    overflow-x: hidden;
  }

  header img[alt*="J Martins"] {
    width: auto !important;
    height: 58px !important;
  }

  #top > div {
    padding-top: 24px !important;
    padding-bottom: 36px !important;
    row-gap: 30px !important;
  }

  #top h1 {
    font-size: clamp(2rem, 9vw, 2.6rem) !important;
    line-height: 1.04 !important;
    text-wrap: balance;
  }

  #top p {
    font-size: 1rem !important;
    line-height: 1.55 !important;
  }

  #top a[href^="tel:"],
  #top a[href^="sms:"] {
    width: 100%;
    min-height: 52px;
    font-size: 1rem;
  }

  a[href^="tel:"],
  a[href^="sms:"],
  button {
    min-height: 48px;
  }

  img {
    max-width: 100%;
    height: auto;
  }

  .fixed.bottom-0 {
    padding-bottom: env(safe-area-inset-bottom);
  }

  section[id] {
    scroll-margin-top: 78px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
