/* sitemap-to-pumpkin responsive overlay — mobile-first
   Prefer site CSS; only fill gaps at ~375 / ~768 / ~1280.
   Do not invent layout; keep existing structure usable. */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
}

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

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

table {
  display: block;
  max-width: 100%;
  overflow-x: auto;
}

/* Comfortable tap targets without rewriting layout */
a,
button,
input,
select,
textarea,
[role="button"] {
  min-height: 44px;
}

/* Base: ~375px phones */
.elementor-section,
.elementor-container,
.e-con,
.panel,
#content,
#pp-homepage,
main,
article {
  max-width: 100%;
}

.elementor-section.elementor-section-boxed > .elementor-container {
  padding-left: 16px;
  padding-right: 16px;
}

/* ~768px tablets */
@media (min-width: 768px) {
  .elementor-section.elementor-section-boxed > .elementor-container {
    padding-left: 24px;
    padding-right: 24px;
  }
}

/* ~1280px desktops */
@media (min-width: 1280px) {
  .elementor-section.elementor-section-boxed > .elementor-container {
    padding-left: 32px;
    padding-right: 32px;
  }
}

figure {
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}
