/* Performance overrides (reduce CLS / layout shifts) */

/* Reserve space for homepage slider before images load */
#box-slides .swiffy-slider .slider-container {
  aspect-ratio: 16 / 9;
  min-height: clamp(180px, 30vw, 420px);
  background: #f2f2f2;
  overflow: hidden;
}

@media (max-width: 767px) {
  #box-slides .swiffy-slider .slider-container {
    aspect-ratio: 4 / 3;
    min-height: clamp(160px, 52vw, 320px);
  }
}

#box-slides .swiffy-slider .slider-container > .item {
  height: 100%;
}

#box-slides .swiffy-slider .slider-container img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Reserve space for right-side banner images on homepage */
.slod img,
.slad img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  min-height: clamp(120px, 18vw, 220px);
  object-fit: cover;
  background: #f2f2f2;
}

@media (max-width: 767px) {
  .slod img,
  .slad img {
    aspect-ratio: 4 / 3;
    min-height: clamp(120px, 40vw, 200px);
  }
}

/* About section images (reserve space to reduce CLS) */
.about img.img-responsive {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  background: #f2f2f2;
}

/* Prevent logo layout shift while loading */
.logotype img {
  display: block;
  width: 150px;
  height: auto;
}

