/* TOP174 v99: единое правило — реальные фото и карточки показываем без обрезки */

/* Внутренние страницы: hero, галереи, карточки, схемы, портфолио */
main .page-hero-grid .media img,
main .photo-card img,
main .portfolio-item img,
main .schema-card img,
main .service-media img,
main .opory-gallery-card img,
main .card > img,
main .photo-grid img,
main .schema-grid img,
main [data-lightbox-group] {
  object-fit: contain !important;
  object-position: center center !important;
  background: #080c12;
}

/* Фон контейнеров, чтобы при contain не было белых/рваных пустот */
main .page-hero-grid .media,
main .photo-card,
main .portfolio-item,
main .schema-card,
main .service-media,
main .opory-gallery-card,
main .card:has(> img) {
  background:
    radial-gradient(circle at 18% 86%, rgba(242,118,22,.10), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.016)),
    #080c12;
}

/* Галереи: не режем вертикальные и горизонтальные фото, но держим аккуратную высоту */
main .photo-card {
  display:flex;
  flex-direction:column;
}
main .photo-card img,
main .schema-card img {
  width:100% !important;
  height:auto !important;
  max-height: 560px;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  display:block;
}
main .photo-card.large img {
  max-height: 620px;
}

/* Карточки портфолио: изображение остается фоном карточки, но целиком */
main .portfolio-item img {
  padding: 10px;
  box-sizing: border-box;
}

/* Скользящие опоры: горизонтальная галерея без кадрирования */
main .opory-gallery-card {
  min-height: 360px;
  display:flex;
  align-items:center;
  justify-content:center;
}
main .opory-gallery-card img {
  width:100% !important;
  height:100% !important;
  min-height: 0 !important;
  padding: 8px;
  box-sizing:border-box;
}
main .opory-gallery-card:hover img {
  transform: none !important;
}

/* Главная: карточки направлений без обрезания изделий */
.service-card .card-image,
.direction-card,
.direction-card .image,
.metal-card .card-image {
  background:#080c12;
}
.service-card .card-image img,
.direction-card img,
.metal-card .card-image img {
  width:100% !important;
  height:auto !important;
  max-height: 220px;
  object-fit: contain !important;
  object-position:center center !important;
  background:#080c12;
}

/* Мобильная версия: не возвращаем cover через старые media-правила */
@media (max-width: 780px) {
  main .page-hero-grid .media img,
  main .photo-card img,
  main .portfolio-item img,
  main .schema-card img,
  main .service-media img,
  main .opory-gallery-card img,
  .service-card .card-image img,
  .direction-card img,
  .metal-card .card-image img {
    object-fit: contain !important;
  }
}
