/* UI fixes for product cards */

/* Clamp product titles to a single line with ellipsis */
.js-product-card .card-body .h6 {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.25;
}

/* Keep descriptions to two lines height (already set elsewhere; ensure consistency) */
.js-product-card .product-desc {
  min-height: 48px;
}

/* Make thumbnails fill the thumb area consistently */
.js-product-card .product-thumb img {
  object-fit: cover !important;
  object-position: center;
  width: 100%;
  height: 100%;
  display: block;
}

/* Sabit thumbnail yüksekliği: tüm ürün kartlarını aynı boyuta getir */
.js-product-card .product-thumb {
  width: 100%;
  height: clamp(200px, 26vw, 240px); /* ambalajdaki gibi biraz daha yüksek kapak alanı */
  overflow: hidden;
  border-radius: .25rem;
  background: #fff;
}

/* Hero merkezleme ve font ayarları */
.hero .carousel-item { align-items: center; }
.hero .carousel-item.active,
.hero .carousel-item-next,
.hero .carousel-item-prev { display: flex; }
.hero .carousel-item .stretched-link { position: absolute; inset: 0; z-index: 1; display: block; }
.hero .carousel-item .btn,
.hero .carousel-item h1,
.hero .carousel-item h2,
.hero .carousel-item p { position: relative; z-index: 2; }
.hero .hero-title { font-weight: 800; letter-spacing: .01em; font-size: clamp(28px, 4vw, 44px); }
.hero .hero-desc { font-size: clamp(16px, 1.6vw, 20px); }
.hero .carousel-item .row { width: 100%; }
/* Tüm slayt yüzeyini tıklanabilir yap ve görsel geri bildirim ver */
.hero .carousel-item { cursor: pointer; }

/* Primary navbar alignment: keep items on one line */
.main-header .nav-primary { display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0; }
.main-header .nav-primary .nav-link { white-space: nowrap; }
/* Slight left shift of menu relative to logo */
@media (min-width: 768px) {
}

/* Auto slider for product rows (kesintisiz) */
.row.js-auto-slider {
  overflow: hidden; /* track ile akış yönetiliyor */
  position: relative;
}
.row.js-auto-slider .auto-track { display: flex; will-change: transform; }
.row.js-auto-slider .auto-seg { display: flex; }
/* Bootstrap gutter'larını seg içindeki çocuklara uygula */
.row.js-auto-slider .auto-seg > [class*="col-"] {
  flex: 0 0 auto;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
  min-width: 340px; /* tek tip kart tabanı genişliği */
}

/* Predictable widths & minimums: doğrudan seg içindeki kolonları hedefle */
@media (min-width: 992px) {
  .row.js-auto-slider .auto-seg > .col-lg-3 { width: 25%; min-width: 320px; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .row.js-auto-slider .auto-seg > .col-md-4 { width: 33.3333%; min-width: 340px; }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  .row.js-auto-slider .auto-seg > .col-sm-6 { width: 50%; min-width: 340px; }
}
@media (max-width: 768px) {
  /* Mobil ve küçük tabletlerde doğal kaydırma ve snap */
  .row.js-auto-slider { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; scroll-snap-type: x mandatory; }
  .row.js-auto-slider .auto-track { display: inline-flex; width: max-content; gap: .5rem; }
  .row.js-auto-slider .auto-seg { display: inline-flex; }
  .row.js-auto-slider .auto-seg > [class*="col-"] { scroll-snap-align: start; flex: 0 0 auto; }
  .row.js-auto-slider .auto-seg > .col-12 { width: 100%; min-width: 100%; }
}

/* Kereste satırını ambalaj ölçülerine sabitle: sabit kart genişliği ve kapak yüksekliği */
.row.js-auto-slider.cat-kereste .auto-seg > [class*="col-"] {
  flex: 0 0 340px;
  width: 340px;
  min-width: 340px;
}
.row.js-auto-slider.cat-kereste .auto-seg > .col-lg-3,
.row.js-auto-slider.cat-kereste .auto-seg > .col-md-4,
.row.js-auto-slider.cat-kereste .auto-seg > .col-sm-6,
.row.js-auto-slider.cat-kereste .auto-seg > .col-12 {
  flex: 0 0 340px;
  width: 340px;
}
.row.js-auto-slider.cat-kereste .js-product-card .product-thumb {
  height: clamp(200px, 26vw, 240px);
}

/* Hırdavat satırını ambalaj ölçülerine sabitle: sabit kart genişliği ve kapak yüksekliği */
.row.js-auto-slider.cat-hirdavat .auto-seg > [class*="col-"] {
  flex: 0 0 340px;
  width: 340px;
  min-width: 340px;
}
.row.js-auto-slider.cat-hirdavat .auto-seg > .col-lg-3,
.row.js-auto-slider.cat-hirdavat .auto-seg > .col-md-4,
.row.js-auto-slider.cat-hirdavat .auto-seg > .col-sm-6,
.row.js-auto-slider.cat-hirdavat .auto-seg > .col-12 {
  flex: 0 0 340px;
  width: 340px;
}
.row.js-auto-slider.cat-hirdavat .js-product-card .product-thumb {
  height: clamp(200px, 26vw, 240px);
}

/* Ürünlerimiz ref-slider kartlarını eşitle (yeni slider yapısı) */
[id^="productsSlider"] .ref-card { width: 260px; }
[id^="productsSlider"] .ref-img { height: 160px; object-fit: contain; background: #f8f9fa; }
[id^="productsSlider"] .ref-card .small.fw-semibold {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
/* Açıklamayı 2 satıra sabitle, kısa olanlarda da eşit boşluk olsun */
[id^="productsSlider"] .ref-card .ref-desc {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.3;
  min-height: calc(1.3em * 2);
}
