/**
 * Royal Pro portfolio slider layout — v2.2.9
 * One photograph per view. Images keep their natural aspect ratio and are
 * constrained inside a stable frame, so no crop, stretch or layout shift occurs.
 */
.rph-photo-slider{
  --rph-slider-frame-height:clamp(620px,72vh,820px);
}
.rph-photo-slider .rph-slider-track{
  align-items:stretch!important;
}
.rph-photo-slider .rph-slide-card{
  flex:0 0 100%!important;
  min-width:100%!important;
}
.rph-photo-slider .rph-slide-image-wrap{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:var(--rph-slider-frame-height)!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  padding:18px!important;
  background:#edf2f7!important;
  isolation:isolate;
}
.rph-photo-slider .rph-slide-image-wrap::before,
.rph-photo-slider .rph-slide-image-wrap::after{
  content:none!important;
  display:none!important;
  background:none!important;
  filter:none!important;
}
.rph-photo-slider .rph-slide-image-wrap>img,
.rph-photo-slider .rph-slide-card img,
.rph-photo-slider img.rph-slider-image{
  position:relative!important;
  inset:auto!important;
  display:block!important;
  flex:none!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  transition:none!important;
  background:transparent!important;
}
.rph-photo-slider .rph-slide-card:hover img,
.rph-photo-slider .rph-slide-card:focus-within img{
  transform:none!important;
}
.rph-photo-slider .rph-slide-card--portrait .rph-slide-image-wrap>img{
  width:auto!important;
  height:auto!important;
}
.rph-photo-slider .rph-slider-control{
  top:calc(var(--rph-slider-frame-height)/2 - 26px)!important;
}
.rph-photo-slider .rph-slide-card figcaption{
  min-height:58px;
  display:flex;
  align-items:center;
}
@media (max-width:900px){
  .rph-photo-slider{
    --rph-slider-frame-height:min(72svh,680px);
  }
  .rph-photo-slider .rph-slide-image-wrap{
    padding:14px!important;
  }
}
@media (max-width:640px){
  .rph-photo-slider{
    --rph-slider-frame-height:min(70svh,600px);
  }
  .rph-photo-slider .rph-slide-image-wrap{
    padding:10px!important;
  }
  .rph-photo-slider .rph-slider-control{
    width:46px;
    height:46px;
  }
}
@media (prefers-reduced-motion:reduce){
  .rph-photo-slider .rph-slider-track{
    transition-duration:0s!important;
  }
}
