html,
body {
  overflow-x: hidden;
}

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

.elementor-sticky--active,
[style*="width: 1920px"] {
  width: 100% !important;
  max-width: 100% !important;
}

.e-n-menu-wrapper {
  max-width: 100vw !important;
}

@media (max-width: 1024px) {
  html {
    font-size: 16px !important;
  }

  .ast-container,
  .e-con-inner,
  .elementor-section .elementor-container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .swiper-slide {
    width: min(82vw, 360px) !important;
  }

  .ays-pb-modal {
    width: min(92vw, 400px) !important;
    height: auto !important;
    max-height: 88vh !important;
    overflow: auto !important;
  }
}

@media (max-width: 767px) {
  h1,
  .entry-content :where(h1),
  .elementor-widget-heading h1 {
    font-size: clamp(34px, 9vw, 52px) !important;
    line-height: 1.15 !important;
  }

  h2,
  .entry-content :where(h2),
  .elementor-widget-heading h2 {
    font-size: clamp(24px, 7.2vw, 38px) !important;
    line-height: 1.2 !important;
  }

  h3,
  .entry-content :where(h3),
  .elementor-widget-heading h3 {
    font-size: clamp(20px, 5.8vw, 30px) !important;
    line-height: 1.25 !important;
  }

  p,
  .elementor-widget-text-editor,
  .elementor-widget-text-editor p {
    font-size: 15px !important;
    line-height: 1.6 !important;
  }

  .elementor-button,
  .ast-button,
  .button {
    min-height: 42px;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}
