html,
body {
  width: 100%;
  overflow-x: hidden;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

img,
svg,
video,
canvas {
  max-width: 100%;
  height: auto;
}

input,
textarea,
select,
button {
  font-size: 16px;
}

@media (max-width: 1024px) {
  .max-w-\[1200px\],
  .max-w-\[1400px\],
  .max-w-\[900px\] {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}

@media (max-width: 768px) {
  section.relative.pt-32.pb-20 .absolute.inset-0.overflow-hidden.pointer-events-none.hidden.md\:block {
    display: block !important;
    opacity: 0.75;
  }

  section.relative.pt-32.pb-20 .absolute.inset-0.overflow-hidden.pointer-events-none.hidden.md\:block > * {
    transform: scale(0.82);
    transform-origin: center;
  }

  .min-h-screen {
    min-height: 100dvh;
  }

  .text-7xl {
    font-size: 2.25rem !important;
    line-height: 1.1 !important;
  }

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

  .text-5xl {
    font-size: 1.75rem !important;
    line-height: 1.2 !important;
  }

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

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

  .h-40 {
    height: 6rem !important;
  }
}

@media (max-width: 480px) {
  .px-6 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .py-24 {
    padding-top: 3.5rem !important;
    padding-bottom: 3.5rem !important;
  }
}
