.elementor-3734 .elementor-element.elementor-element-3da389a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:0px;--padding-left:25px;--padding-right:25px;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-3734 .elementor-element.elementor-element-0a97950{--grid-columns:1;--grid-row-gap:28px;--grid-column-gap:28px;}@media(max-width:1024px){.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-3734 .elementor-element.elementor-element-0a97950{--grid-columns:1;--grid-row-gap:28px;--grid-column-gap:28px;}}@media(max-width:767px){.elementor-3734 .elementor-element.elementor-element-3da389a{--padding-top:40px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-3734 .elementor-element.elementor-element-0a97950{--grid-columns:1;--grid-row-gap:29px;--grid-column-gap:29px;}}/* Start custom CSS for loop-grid, class: .elementor-element-0a97950 *//* =====================================================
   OPTIONS CARDS — IMAGE FILL + COLLAPSE WHEN EMPTY
   Requires: left column has class "option-media"
===================================================== */

/* Ensure the row container behaves like a row (Elementor containers are usually flex already,
   but this makes it consistent if not). */
.elementor-3734 .elementor-element.elementor-element-0a97950 .option-media{
  display:flex;
  flex-direction:column;
}

/* Make the image widget + its wrappers stretch to fill the column height */
.elementor-3734 .elementor-element.elementor-element-0a97950 .option-media .elementor-widget,
.elementor-3734 .elementor-element.elementor-element-0a97950 .option-media .elementor-widget-container,
.elementor-3734 .elementor-element.elementor-element-0a97950 .option-media .elementor-image,
.elementor-3734 .elementor-element.elementor-element-0a97950 .option-media .elementor-image a{
  height:100%;
}

/* Make the image itself cover */
.elementor-3734 .elementor-element.elementor-element-0a97950 .option-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* If there is no img inside, remove the entire media column */
.elementor-3734 .elementor-element.elementor-element-0a97950 .option-media:not(:has(img)){
  display:none !important;
}

/* When media is removed, force the next column to take full width */
.elementor-3734 .elementor-element.elementor-element-0a97950 .option-media:not(:has(img)) + *{
  width:100% !important;
  max-width:100% !important;
  flex:1 1 100% !important;
}

/* Extra safety: remove any fixed basis Elementor may have set on the content column */
.elementor-3734 .elementor-element.elementor-element-0a97950 .option-media:not(:has(img)) + *{
  flex-basis:100% !important;
}/* End custom CSS */