/* Vuvito kategori kartı (Grid32 içinde kullanılır)
 *
 * En-boy oranı, karartma ve yakınlaşma ebeveynden CSS değişkeniyle iner:
 *   --vt-cat-ratio  : 4/5 (dikey) veya 16/9 (yatay)
 *   --vt-cat-ratio-m: kartın kendi "Mobil Oran" seçimi (yalnızca <768px)
 *   --vt-cat-scrim  : 0 kapalı, 1 açık
 *   --vt-cat-zoom   : hover ölçeği (1 = kapalı)
 * Yazı boyutları da ebeveynin --vt-cat-title-* / --vt-cat-link-* değerlerini
 * kullanır; verilmezse buradaki yedekler devreye girer.
 */

.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card {
  height: 100%;
}

/* Yükseklik SADECE en-boy oranından gelir.
 * Buraya ayrıca `height: 100%` yazmak aspect-ratio'yu geçersiz kılabiliyor
 * (kesin bir yükseklik varsa oran yok sayılır) — o yüzden yok. */
.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__frame {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: var(--vt-cat-ratio, 4 / 5);
  overflow: hidden;
  isolation: isolate;
  border-radius: var(--radius-xl);
  background: var(--color-surface-alt);
  text-decoration: none;
  color: inherit;
}

/* Karta özel mobil oran — bir kategoriyi öne çıkarmak için. Yalnızca dar
   ekranda geçerli; masaüstünde ızgaranın 3-2 deseni tekrar devralır. */
@media (max-width: 768px) {
  .cc_lqof57t2_DNyjz0Ks38 .vt-cat-card--m-ratio .vt-cat-card__frame {
    aspect-ratio: var(--vt-cat-ratio-m);
  }
}

.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__media, .cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__placeholder {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__placeholder {
  background: var(--color-surface-alt);
}

.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__frame:hover .vt-cat-card__media {
  transform: scale(var(--vt-cat-zoom, 1));
}

/* Başlık açık görsellerin üstünde de okunur kalsın diye alttan hafif
   karartma. Kapalıyken opaklık 0 olur, katman DOM'da kalır. */
.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__scrim {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: var(--vt-cat-scrim, 0);
  background: linear-gradient(
    to top,
    rgba(20, 22, 20, 0.55),
    rgba(20, 22, 20, 0) 60%
  );
  transition: opacity 300ms ease;
}

.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__content {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: flex-start;
}

@media (min-width: 768px) {
  .cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__content {
    left: 32px;
    right: 32px;
    bottom: 32px;
  }
}

.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__title {
  margin: 0;
  color: var(--brand-cream);
  font-size: var(--vt-cat-title-m, 20px);
}

.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--brand-cream);
  font-size: var(--vt-cat-link-m, 11px);
  text-transform: uppercase;
  opacity: 0.92;
}

@media (min-width: 768px) {
  .cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__title { font-size: var(--vt-cat-title-d, 24px); }
  .cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__link { font-size: var(--vt-cat-link-d, 12px); }
}

/* Ok, bağlantı yazısıyla orantılı büyür ve hover'da öne kayar. */
.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__arrow {
  font-size: 1.3em;
  transition: transform 300ms ease;
}

.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__frame:hover .vt-cat-card__arrow {
  transform: translateX(4px);
}

.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__frame:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  .cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__media, .cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__arrow, .cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__scrim {
    transition: none;
  }

  .cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__frame:hover .vt-cat-card__media, .cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__frame:hover .vt-cat-card__arrow {
    transform: none;
  }
}

/* <picture> yalnizca kaynak secimi icin var; kendi kutusu olmasin ki
   icindeki mutlak konumlu gorsel dogrudan cerceveye gore yerlessin. */
.cc_lqof57t2_DNyjz0Ks38 .vt-cat-card__picture {
  display: contents;
}
