/* Imported from: ../../sub-components/MobileScroll/styles.css */
/* Yatay şerit düzenleri — ızgaraları kaydırılabilir bir şeride çevirir.
 *
 *   .vt-mscroll  → yalnızca dar ekranda şerit, masaüstünde ızgara kalır
 *   .vt-hscroll  → her ekranda şerit; masaüstünde bir bakışta kaç kart
 *                  görüneceği `--vt-hs-cols` ile belirlenir
 *
 * NOT: Renderer kullanan düzenlerde kart genişliği BU DOSYADAN verilemez —
 * ebeveynin seçicisi çocuğun scope'una ulaşamıyor. Orada kart, kendi
 * CSS'inde `--vt-mscroll-w` değişkenini okur (bkz. FeatureItem).
 *
 * Ayarlar: `--vt-mscroll-w` (mobil kart genişliği, yüzde),
 *          `--vt-hs-cols` + `--vt-hs-gap` (masaüstü).
 *
 * ⚠️ Neden global.css'te değil: derleyici yalnızca ikas.config.json'daki
 * `styles` yolunu bileşen paketine katıyor. global.css tema düzeyinde ayrı
 * yükleniyor ve dev sunucusu bileşen paketlerini iterken oradaki değişikliği
 * taşımıyor — kural tarayıcıya hiç ulaşmıyordu.
 *
 * ⚠️ Sınıf adları BİLEREK iki kez yazılmıştır. Bileşenlerdeki
 * `.vt-x__grid { display: grid }` ile aynı ağırlıkta olurlardı ve bu dosya
 * @import ile EN ÜSTE geldiği için ızgara kuralı kazanırdı.
 */

.cc_lqof57t2_RjGjIDq86I .vt-hscroll.vt-hscroll {
  display: flex;
  flex-wrap: nowrap;
  gap: var(--vt-hs-gap, 12px);
  overflow-x: auto;
  /* Bir eksen `auto` olunca diğerindeki `visible` da `auto`ya döner ve
     şeritte gereksiz bir dikey kaydırma çubuğu belirir. */
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
  /* Şerit sayfa kenarına kadar uzanır ama ilk/son kart kenara yapışmaz.
     `max-width` olmadan negatif kenar boşluğu sayfayı yatayda kaydırıyor. */
  padding-inline: var(--page-margin);
  margin-inline: calc(var(--page-margin) * -1);
  max-width: 100vw;
  scroll-padding-inline: var(--page-margin);
}

.cc_lqof57t2_RjGjIDq86I .vt-hscroll.vt-hscroll::-webkit-scrollbar {
  display: none;
}

/* ⚠️ Genişlik kuralı DOĞRUDAN ÇOCUĞA yazılır.
   Bir alt katmana da yazmak (`> * > *`) yanlıştı: gerçek kartların İÇİNDEKİ
   ögelere de kart genişliği dayatıyor, kart düzenini bozuyor ve şeritte
   dikey taşma yaratıyordu.

   IkasComponentRenderer kullanan yerlerde durum farklı: her çocuk satır içi
   `display: contents` taşıyan bir sarmalayıcıya sarılıyor ve böyle bir
   eleman kutu ağacında olmadığı için ESNEK ÖGE OLAMAZ. Orada gerçek öge bir
   alttadır — o düzenler `--nested` değişkesini kullanır. */
.cc_lqof57t2_RjGjIDq86I .vt-hscroll.vt-hscroll > * {
  flex: 0 0 var(--vt-mscroll-w, 62%);
  scroll-snap-align: start;
}

@media (min-width: 768px) {
  .cc_lqof57t2_RjGjIDq86I .vt-hscroll.vt-hscroll {
    gap: var(--vt-hs-gap, 24px);
  }

  /* Bir bakışta tam `--vt-hs-cols` kart görünür: aradaki boşluklar
     düşülüp kalan genişlik sütun sayısına bölünür. */
  .cc_lqof57t2_RjGjIDq86I .vt-hscroll.vt-hscroll > * {
    flex: 0 0
      calc(
        (100% - (var(--vt-hs-cols, 4) - 1) * var(--vt-hs-gap, 24px)) /
          var(--vt-hs-cols, 4)
      );
  }
}

/* ─── Yalnızca mobil şerit ─────────────────────────────────── */

@media (max-width: 768px) {
  .cc_lqof57t2_RjGjIDq86I .vt-mscroll.vt-mscroll {
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
      padding-inline: var(--page-margin);
    margin-inline: calc(var(--page-margin) * -1);
    max-width: 100vw;
    scroll-padding-inline: var(--page-margin);
  }

  .cc_lqof57t2_RjGjIDq86I .vt-mscroll.vt-mscroll::-webkit-scrollbar {
    display: none;
  }

  .cc_lqof57t2_RjGjIDq86I .vt-mscroll.vt-mscroll > * {
    flex: 0 0 var(--vt-mscroll-w, 62%);
    scroll-snap-align: start;
  }

}

/* End import: ../../sub-components/MobileScroll/styles.css */

/* Vuvito özellik ızgarası
 * Breakpoint: md = 768px 768px
 */

.cc_lqof57t2_RjGjIDq86I .vt-fgrid {
  width: 100%;
  background: var(--color-bg);
}

/* ─── Başlık satırı ─────────────────────────────────────── */

/* Baslik satiri ProductGrid ile ayni: metin solda, oklar sagda. */
.cc_lqof57t2_RjGjIDq86I .vt-fgrid__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin: 0 0 32px;
  text-align: left;
}

@media (min-width: 768px) {
  .cc_lqof57t2_RjGjIDq86I .vt-fgrid__head {
    margin-bottom: 56px;
  }
}

.cc_lqof57t2_RjGjIDq86I .vt-fgrid__eyebrow {
  color: var(--vt-fg-eyebrow-color, var(--color-accent));
  font-size: var(--vt-fg-eyebrow-m, 11px);
  text-transform: uppercase;
}

.cc_lqof57t2_RjGjIDq86I .vt-fgrid__title {
  margin: 0;
  color: var(--color-text-primary);
  font-size: var(--vt-fg-title-m, 26px);
  text-wrap: balance;
}

@media (min-width: 768px) {
  .cc_lqof57t2_RjGjIDq86I .vt-fgrid__eyebrow { font-size: var(--vt-fg-eyebrow-d, 12px); }
  .cc_lqof57t2_RjGjIDq86I .vt-fgrid__title { font-size: var(--vt-fg-title-d, 36px); }
}

/* ─── Izgara ────────────────────────────────────────────── */

.cc_lqof57t2_RjGjIDq86I .vt-fgrid__grid {
  display: grid;
  grid-template-columns: repeat(var(--vt-fg-cols-m, 1), minmax(0, 1fr));
  gap: var(--vt-fg-gap, 48px);
}

/* 768–1023 arasi ARA BASAMAK: tam sutun sayisina gecmek erken oluyor.
   Bu genislikte 4 kart yan yana ~140px'e dusuyor ve metin kelime kelime
   kiriliyor; ikiser gosterilir. */
@media (min-width: 768px) {
  .cc_lqof57t2_RjGjIDq86I .vt-fgrid__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
}

@media (min-width: 1024px) {
  .cc_lqof57t2_RjGjIDq86I .vt-fgrid__grid {
    grid-template-columns: repeat(var(--vt-fg-cols-d, 4), minmax(0, 1fr));
    gap: var(--vt-fg-gap, 48px);
  }
}

/* Baslik blogu solda, oklar sagda. */
.cc_lqof57t2_RjGjIDq86I .vt-fgrid__heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
}

.cc_lqof57t2_RjGjIDq86I .vt-fgrid__arrows {
  display: flex;
  flex: none;
  gap: 6px;
}

.cc_lqof57t2_RjGjIDq86I .vt-fgrid__arrow {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  background: var(--color-surface);
  color: var(--color-text-primary);
  font-size: 17px;
  cursor: pointer;
  transition: background-color 180ms ease;
}

.cc_lqof57t2_RjGjIDq86I .vt-fgrid__arrow:hover, .cc_lqof57t2_RjGjIDq86I .vt-fgrid__arrow:focus-visible {
  background: var(--color-surface-alt);
}

/* Masaustunde izgaraya donuldugu icin oklar anlamsiz. */
@media (min-width: 768px) {
  .cc_lqof57t2_RjGjIDq86I .vt-fgrid__arrows { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .cc_lqof57t2_RjGjIDq86I .vt-fgrid__arrow { transition: none; }
}

/* Ozellik ogeleri KUTULU. Serit haline gelince cizgisiz sutunlar birbirine
   karisiyor, nerede bittikleri anlasilmiyordu. Kutu ayni zamanda esit
   yukseklik verir: en uzun metin diger kartlari da o boya cikarir. */
.cc_lqof57t2_RjGjIDq86I .vt-fgrid__grid .vt-feat {
  height: 100%;
  box-sizing: border-box;
  padding: 28px 20px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
}

/* Serit modunda kartlar ayni hizada baslasin ve ayni boyda bitsin. */
.cc_lqof57t2_RjGjIDq86I .vt-fgrid__grid.vt-mscroll {
  align-items: stretch;
}

@media (min-width: 768px) {
  .cc_lqof57t2_RjGjIDq86I .vt-fgrid__grid .vt-feat {
    padding: 32px 24px;
  }
}

/* Serit modunda TEK kutu gorunur, komsularin kenarlari hafifce sizar.
   `center` hizalamasi sagda ve solda ayni payi birakir; `start` olsaydi
   yalnizca sagdaki komsu gorunurdu. */
@media (max-width: 768px) {
  .cc_lqof57t2_RjGjIDq86I .vt-fgrid__grid.vt-mscroll > * > * {
    scroll-snap-align: center;
  }

  /* Metin dar sutunda kelime kelime kirilmasin. */
  .cc_lqof57t2_RjGjIDq86I .vt-fgrid__grid .vt-feat {
    padding: 26px 22px;
  }

  .cc_lqof57t2_RjGjIDq86I .vt-fgrid__grid .vt-feat__text {
    max-width: none;
    line-height: 1.65;
  }
}
