/* Elementor wrappers around the mockup sections: make them invisible to the layout. */
.sw .elementor .e-con,
.sw .elementor .e-con-inner,
.sw .elementor .elementor-element,
.sw .elementor .elementor-widget-container {
  display: block;
  padding: 0;
  margin: 0;
  max-width: none;
  width: auto;
  min-height: 0;
  gap: 0;
  --padding-top: 0; --padding-right: 0; --padding-bottom: 0; --padding-left: 0;
  --gap: 0; --row-gap: 0; --column-gap: 0; --margin-top: 0; --margin-bottom: 0;
}
/* Elementor's global ".elementor a { text-decoration: none }" (0,1,1) would strip the browser-default underline from
   plain text links. body.sw a (0,1,2) beats it but still loses to every scoped mockup link rule (0,2,0 and up). */
body.sw a { text-decoration: underline; }
/* Elementor zeroes figure margins inside widgets with a 0,4,1 selector; restore the hero photo's full-bleed margin on phones. */
@media (max-width: 820px) {
  .sw .elementor .elementor-widget.elementor-widget-html .hero-photo { margin: 0 calc(-1 * max(16px, env(safe-area-inset-right, 0px))) 0 calc(-1 * max(16px, env(safe-area-inset-left, 0px))); }
}
