/* Plaza Safir - Custom Hero Slider (no-crop, mobile-safe) */
.ps-hero-media{
  position: relative;
  width: 100%;
  background: #000; /* shows behind letterboxing if any */
  overflow: hidden;
}

.ps-slider{
  position: relative;
  width: 100%;
}

.ps-slide{
  display: none;
  width: 100%;
}
.ps-slide.is-active{ display:block; }

.ps-slide picture,
.ps-slide img{
  display:block;
  width:100%;
  height:auto;       /* key: never crop */
}

.ps-slide img{
  object-fit: contain;        /* defensive */
  object-position: top center;/* remove top gap when contain is applied */
  max-width: 100%;
}

/* Nav arrows */
.ps-nav{
  position:absolute;
  top:50%;
  transform: translateY(-50%);
  width:44px;
  height:44px;
  border:0;
  border-radius: 999px;
  background: rgba(0,0,0,.45);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index: 5;
  cursor:pointer;
}
.ps-prev{ left:12px; }
.ps-next{ right:12px; }
.ps-nav:active{ transform: translateY(-50%) scale(.98); }

.ps-nav svg{ width:18px; height:18px; }

/* Dots */
.ps-dots{
  position:absolute;
  left:0;
  right:0;
  bottom:14px;
  display:flex;
  gap:10px;
  justify-content:center;
  z-index: 5;
}
.ps-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  border:0;
  background: rgba(255,255,255,.35);
  cursor:pointer;
}
.ps-dot.is-active{ background: rgba(255,255,255,.9); }

/* Make sure section doesn't force height on mobile */
@media (max-width: 991px){
  /* Header is fixed and overlays the hero. Add top padding so the image doesn't sit under the menu. */
  #section-hero{ padding-top: var(--ps-header-h, 76px) !important; }
  .mh-800{ min-height: unset !important; }
}
