/* Lemon Image and native Image Enhancements — layout only.
 * Image animations are owned by LT Elementor Animations.
 */

.lemon-responsive-image-wrapper {
  position: relative;
  display: block;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

.lemon-responsive-image {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.lemon-responsive-image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: var(--lt-image-object-fit, cover);
  object-position: center center;
}

.lemon-responsive-image.has-aspect-ratio {
  width: 100%;
  overflow: hidden;
}

.lemon-responsive-image.has-aspect-ratio > a,
.lemon-responsive-image.has-aspect-ratio > picture,
.lemon-responsive-image.has-aspect-ratio > a picture {
  position: static;
  inset: auto;
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
}

.lemon-responsive-image.has-aspect-ratio img {
  position: static;
  inset: auto;
  display: block;
  width: 100%;
  height: auto;
  min-width: 0;
  min-height: 0;
  max-width: 100%;
  max-height: none;
  object-fit: var(--lt-image-object-fit, cover);
  object-position: center center;
}

/* Native Elementor Image extension: final stable v1.16.9 model. */
.elementor-widget-image.lt-image-enhanced-yes,
.elementor-widget-image.lemon-image-enhanced {
  position: relative;
}

.elementor-widget-image.lt-image-enhanced-yes.lt-image-ar-yes,
.elementor-widget-image.lemon-image-enhanced.has-lemon-image-aspect-ratio {
  height: auto !important;
  min-height: 0 !important;
}

.elementor-widget-image.lt-image-enhanced-yes.lt-image-ar-yes > .elementor-widget-container,
.elementor-widget-image.lemon-image-enhanced.has-lemon-image-aspect-ratio > .elementor-widget-container {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}

.elementor-widget-image.lt-image-enhanced-yes.lt-image-ar-yes > .elementor-widget-container > a,
.elementor-widget-image.lt-image-enhanced-yes.lt-image-ar-yes > .elementor-widget-container > picture,
.elementor-widget-image.lt-image-enhanced-yes.lt-image-ar-yes > .elementor-widget-container > a picture,
.elementor-widget-image.lemon-image-enhanced.has-lemon-image-aspect-ratio > .elementor-widget-container > a,
.elementor-widget-image.lemon-image-enhanced.has-lemon-image-aspect-ratio > .elementor-widget-container > picture,
.elementor-widget-image.lemon-image-enhanced.has-lemon-image-aspect-ratio > .elementor-widget-container > a picture {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
}

.elementor-widget-image.lt-image-enhanced-yes.lt-image-ar-yes > .elementor-widget-container img,
.elementor-widget-image.lemon-image-enhanced.has-lemon-image-aspect-ratio > .elementor-widget-container img {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: none !important;
  aspect-ratio: var(--lt-image-aspect-ratio-desktop, auto) !important;
  object-fit: var(--lt-image-object-fit, cover) !important;
  object-position: center center !important;
}

@media (max-width: 1024px) {
  .elementor-widget-image.lt-image-enhanced-yes.lt-image-ar-yes > .elementor-widget-container img,
  .elementor-widget-image.lemon-image-enhanced.has-lemon-image-aspect-ratio > .elementor-widget-container img {
    aspect-ratio: var(--lt-image-aspect-ratio-tablet, var(--lt-image-aspect-ratio-desktop, auto)) !important;
  }
}

@media (max-width: 767px) {
  .elementor-widget-image.lt-image-enhanced-yes.lt-image-ar-yes > .elementor-widget-container img,
  .elementor-widget-image.lemon-image-enhanced.has-lemon-image-aspect-ratio > .elementor-widget-container img {
    aspect-ratio: var(--lt-image-aspect-ratio-mobile, var(--lt-image-aspect-ratio-tablet, var(--lt-image-aspect-ratio-desktop, auto))) !important;
  }
}

/* Respect Elementor's widget width/max-width controls. */
.elementor-widget-image.lt-native-image-enhanced,
.elementor-widget-image.lt-image-enhanced-yes.lt-image-ar-yes,
.elementor-widget-image.lemon-responsive-image-wrapper.lt-image-enhanced-yes,
.elementor-widget-image.lemon-responsive-image-wrapper.lemon-image-enhanced {
  width: auto;
  max-width: 100%;
  align-self: flex-start;
}

.elementor-widget-image.lt-native-image-enhanced.lt-image-ar-yes > .elementor-widget-container,
.elementor-widget-image.lt-image-enhanced-yes.lt-image-ar-yes > .elementor-widget-container,
.elementor-widget-image.lemon-responsive-image-wrapper.lt-image-enhanced-yes.lt-image-ar-yes > .elementor-widget-container,
.elementor-widget-image.lemon-responsive-image-wrapper.lemon-image-enhanced.has-lemon-image-aspect-ratio > .elementor-widget-container,
.elementor-widget-image.lt-native-image-enhanced.lt-image-ar-yes > .elementor-widget-container img,
.elementor-widget-image.lt-image-enhanced-yes.lt-image-ar-yes > .elementor-widget-container img,
.elementor-widget-image.lemon-responsive-image-wrapper.lt-image-enhanced-yes.lt-image-ar-yes > .elementor-widget-container img,
.elementor-widget-image.lemon-responsive-image-wrapper.lemon-image-enhanced.has-lemon-image-aspect-ratio > .elementor-widget-container img {
  width: 100% !important;
  max-width: 100% !important;
}

/* Elementor 4 Atomic Image (`e-image`).
 * Attributes are written on the actual <img> through the Atomic attributes
 * prop; no classic `.elementor-widget-container` or `_wrapper` is assumed.
 */
[data-lt-image-enhanced^="atomic"][data-lt-image-aspect="yes"] {
  height: auto !important;
  aspect-ratio: var(--lt-image-aspect-ratio-desktop, auto) !important;
  object-fit: var(--lt-image-object-fit, cover) !important;
}

@media (max-width: 1024px) {
  [data-lt-image-enhanced^="atomic"][data-lt-image-aspect="yes"] {
    aspect-ratio: var(--lt-image-aspect-ratio-tablet, var(--lt-image-aspect-ratio-desktop, auto)) !important;
  }
}

@media (max-width: 767px) {
  [data-lt-image-enhanced^="atomic"][data-lt-image-aspect="yes"] {
    aspect-ratio: var(--lt-image-aspect-ratio-mobile, var(--lt-image-aspect-ratio-tablet, var(--lt-image-aspect-ratio-desktop, auto))) !important;
  }
}
