/* MGPLITKA Solution Media Sync 1.0.0
   One canonical 3:2 image frame everywhere. The frame may responsively scale,
   but image crop and point coordinate space never change. */
:root{--mg-solution-frame-ratio:3/2}

/* Homepage Smart Studio */
#solutions .mg-smart-gallery-main,
.mg-smart-studio .mg-smart-gallery-main{
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:var(--mg-solution-frame-ratio)!important;
  overflow:hidden!important;
}
#solutions .mg-smart-gallery-main>img,
.mg-smart-studio .mg-smart-gallery-main>img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:50% 50%!important;
  transform:none!important;
}
#solutions .mg-smart-gallery-main .mg-hotspot-wrap,
.mg-smart-studio .mg-smart-gallery-main .mg-hotspot-wrap{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
#solutions .mg-smart-gallery-thumbs .mg-smart-view img,
.mg-smart-studio .mg-smart-gallery-thumbs .mg-smart-view img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:var(--mg-solution-frame-ratio)!important;
  object-fit:cover!important;
  object-position:50% 50%!important;
}

/* /solutions/ detail */
.mgsp-main-image{
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:var(--mg-solution-frame-ratio)!important;
  overflow:hidden!important;
}
.mgsp-main-image>img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:50% 50%!important;
  transform:none!important;
}
.mgsp-hotspots{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
.mgsp-thumb img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:var(--mg-solution-frame-ratio)!important;
  object-fit:cover!important;
  object-position:50% 50%!important;
}

/* /solutions/ catalog cards - no different hero crop anymore */
.mgsp-card-img,
.mgsp-card--hero .mgsp-card-img{
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:var(--mg-solution-frame-ratio)!important;
  overflow:hidden!important;
}
.mgsp-card-img img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:50% 50%!important;
  transform:none!important;
}

/* Responsive rule is intentionally identical. Never switch to 4:3/1:1. */
@media(max-width:1100px){
  #solutions .mg-smart-gallery-main,.mg-smart-studio .mg-smart-gallery-main,.mgsp-main-image,.mgsp-card-img,.mgsp-card--hero .mgsp-card-img{aspect-ratio:var(--mg-solution-frame-ratio)!important;height:auto!important;min-height:0!important}
}
@media(max-width:767px){
  #solutions .mg-smart-gallery-main,.mg-smart-studio .mg-smart-gallery-main,.mgsp-main-image,.mgsp-card-img,.mgsp-card--hero .mgsp-card-img{aspect-ratio:var(--mg-solution-frame-ratio)!important;height:auto!important;min-height:0!important}
  #solutions .mg-smart-gallery-thumbs .mg-smart-view img,.mg-smart-studio .mg-smart-gallery-thumbs .mg-smart-view img,.mgsp-thumb img{aspect-ratio:var(--mg-solution-frame-ratio)!important;height:auto!important}
}
