/* ============================================================================
   VG — Üniversite Vitrini v2 (katalog + detay) — 28 Ağu 2026
   TAMAMEN İZOLE: yalnız .univ2 kökü altında çalışır; canlı sayfalara,
   style.css'e ve uni-deadline.css'e DOKUNMAZ (yalnız kendi kapsamında ezer).
   Marka: lacivert aile (#00284a / #004085 / #005A9E / #0078D7) + nötr zemin,
   açık mavi vurgu (#bfe0ff), altın YALNIZ "Öne Çıkan" ve "Ücretsiz" için.
   Yazı: Playfair Display (vitrin başlıkları) + Montserrat (gövde) — layout yüklü.
   ============================================================================ */

.univ2 {
  --uv-lacivert-koyu: #00284a;
  --uv-lacivert: #004085;
  --uv-mavi: #005A9E;
  --uv-mavi-acik: #0078D7;
  --uv-buz: #bfe0ff;
  --uv-buz-zemin: #eaf4ff;
  --uv-murekkep: #0f1f33;
  --uv-govde: #3C4858;
  --uv-soluk: #66748A;
  --uv-cizgi: #e6eef7;
  --uv-zemin: #f6f9fc;
  --uv-kart: #ffffff;
  --uv-altin: #C9A227;
  --uv-altin-koyu: #9A7420;
  --uv-yesil: #0e8a5f;
  /* 🔴 Sahip kararı 28 Ağu: Playfair YALNIZ yazıda; SAYILAR bu fontla basılmaz.
     Rakamlar tabular (eşit genişlikli) sans ile dizilir ki sütunlar hizalansın. */
  --uv-sayi: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --uv-radius: 24px;
  /* Yumuşatma geçişi (29 Ağu): gölgeler iki katman, geniş ve soluk; sert kenar
     hissi yerine "havada duran kağıt" hissi. Vurgu gölgesi markadan tını alır. */
  --uv-golge: 0 1px 2px rgba(9, 30, 66, .04), 0 12px 32px rgba(9, 30, 66, .07);
  --uv-golge-buyuk: 0 2px 6px rgba(0, 60, 120, .06), 0 22px 48px rgba(0, 90, 158, .16);
  /* Yay eğrisi: mikro etkileşimler ufak bir taşmayla oturur, "canlı" hissettirir.
     prefers-reduced-motion bloğu hepsini zaten kapatıyor. */
  --uv-yay: cubic-bezier(.34, 1.28, .48, 1);
  font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  color: var(--uv-govde);
  background: var(--uv-zemin);
}
.univ2 * { box-sizing: border-box; }
.univ2 .uvx-serif { font-family: 'Playfair Display', Georgia, serif; }
.univ2 .uvx-sayi { font-variant-numeric: tabular-nums; }

/* ---------------------------------------------------------------- HERO ortak */
.univ2 .uvx-hero {
  position: relative;
  overflow: hidden;
  border-radius: 0 0 32px 32px;
  background: linear-gradient(160deg, #00284a 0%, #004085 55%, #0078D7 130%);
  color: #fff;
  padding: 148px 0 64px;
}
.univ2 .uvx-hero::before {
  /* zarif doku: seyrek noktalı ızgara, çok düşük opaklık */
  content: '';
  position: absolute; inset: 0;
  background-image: radial-gradient(rgba(191, 224, 255, .16) 1px, transparent 1.6px);
  background-size: 26px 26px;
  pointer-events: none;
}
.univ2 .uvx-hero-glow {
  position: absolute; border-radius: 50%; filter: blur(70px); pointer-events: none;
  background: radial-gradient(circle, rgba(0, 120, 215, .55), transparent 65%);
}
.univ2 .uvx-hero-glow.g1 { width: 520px; height: 520px; top: -220px; right: -140px; }
.univ2 .uvx-hero-glow.g2 { width: 420px; height: 420px; bottom: -240px; left: -120px; background: radial-gradient(circle, rgba(191, 224, 255, .25), transparent 65%); }
.univ2 .uvx-eyebrow {
  display: inline-flex; align-items: center; gap: .5rem;
  font-size: .74rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase;
  color: var(--uv-buz);
  border: 1px solid rgba(191, 224, 255, .35);
  border-radius: 999px; padding: .45em 1.1em;
  background: rgba(255, 255, 255, .06);
}
.univ2 .uvx-hero h1 {
  font-family: 'Playfair Display', Georgia, serif;
  font-weight: 700; color: #fff;
  letter-spacing: -.01em; line-height: 1.12;
  margin: 1.1rem 0 .9rem;
}
.univ2 .uvx-hero .uvx-hero-alt { color: rgba(255, 255, 255, .85); font-size: 1.06rem; font-weight: 500; max-width: 640px; line-height: 1.65; }
.univ2 .uvx-hero .uvx-vurgu { color: var(--uv-buz); font-style: italic; }

/* hero istatistik şeridi */
.univ2 .uvx-statlar { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 1.9rem; }
.univ2 .uvx-stat {
  min-width: 132px; padding: .85rem 1.25rem;
  background: rgba(255, 255, 255, .07);
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 16px;
}
.univ2 .uvx-stat b {
  display: block; font-family: var(--uv-sayi);
  font-size: 1.65rem; font-weight: 600; color: #fff; line-height: 1.15;
  font-variant-numeric: tabular-nums; letter-spacing: -.02em;
}
.univ2 .uvx-stat span { font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: rgba(255, 255, 255, .72); }

/* ------------------------------------------------------------ LİSTE: filtre */
.uv2-govde { padding: 26px 0 70px; }
.uv2-bar {
  position: sticky; top: 82px; z-index: 50;
  /* 🔴 KASMA DÜZELTMESİ: yapışkan öğede backdrop-filter kaydırma boyunca her
     karede yeniden boya üretir. Buz kaldırıldı, opaklık artırıldı; görünüm
     neredeyse aynı, kaydırma maliyeti sıfırlandı. */
  background: rgba(255, 255, 255, .97);
  border: 1px solid var(--uv-cizgi);
  border-radius: 22px;
  box-shadow: var(--uv-golge);
  padding: 16px;
  margin-top: -46px; /* hero'nun üstüne hafif bindir */
}
.uv2-bar-ara { position: relative; margin-bottom: 10px; }
.uv2-bar-ara i {
  position: absolute; left: 16px; top: 50%; transform: translateY(-50%);
  color: var(--uv-mavi); font-size: .95rem; pointer-events: none;
}
.uv2-bar-ara input {
  width: 100%; height: 48px;
  border: 1.5px solid var(--uv-cizgi); border-radius: 14px;
  padding: 0 16px 0 44px;
  font: inherit; font-weight: 600; color: var(--uv-murekkep);
  background: #fbfdff;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.uv2-bar-ara input { transition: border-color .2s ease, box-shadow .2s ease, transform .25s var(--uv-yay); }
.uv2-bar-ara input:focus {
  outline: none; border-color: var(--uv-mavi-acik);
  box-shadow: 0 0 0 4px rgba(0, 120, 215, .1), 0 8px 24px rgba(0, 90, 158, .08);
  background: #fff; transform: scale(1.004);
}
.uv2-bar-ara input::placeholder { color: #9aa8bd; font-weight: 500; }

/* ülke hapları */
.uv2-ulkeler { display: flex; gap: 8px; overflow-x: auto; padding: 2px 2px 8px; scrollbar-width: thin; }
.uv2-ulke {
  flex: 0 0 auto;
  display: inline-flex; align-items: center; gap: .45em;
  font-size: .82rem; font-weight: 700; color: var(--uv-govde);
  background: #fff; border: 1.5px solid var(--uv-cizgi); border-radius: 999px;
  padding: .5em 1em; cursor: pointer; white-space: nowrap;
  transition: border-color .18s ease, background .18s ease, color .18s ease,
              transform .28s var(--uv-yay), box-shadow .22s ease;
}
.uv2-ulke:active { transform: scale(.96); }
.uv2-ulke .uv2-ulke-adet { font-size: .72rem; font-weight: 700; color: var(--uv-soluk); background: var(--uv-buz-zemin); border-radius: 999px; padding: .12em .55em; font-variant-numeric: tabular-nums; }
.uv2-ulke:hover { border-color: var(--uv-mavi-acik); color: var(--uv-mavi); transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0, 90, 158, .12); }
.uv2-ulke.secili { background: var(--uv-lacivert); border-color: var(--uv-lacivert); color: #fff; box-shadow: 0 8px 20px rgba(0, 40, 74, .22); }
.uv2-ulke.secili .uv2-ulke-adet { background: rgba(255, 255, 255, .18); color: #fff; }

/* seçim kutuları satırı */
.uv2-secimler { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.uv2-secimler select, .uv2-secimler button {
  height: 44px; border: 1.5px solid var(--uv-cizgi); border-radius: 14px;
  background: #fff; font: inherit; font-size: .88rem; font-weight: 600; color: var(--uv-govde);
  padding: 0 12px; cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease;
}
.uv2-secimler select:focus { outline: none; border-color: var(--uv-mavi-acik); box-shadow: 0 0 0 3px rgba(0, 120, 215, .12); }
.uv2-secimler .uv2-temizle { color: var(--uv-mavi); font-weight: 700; }
.uv2-secimler .uv2-temizle:hover { border-color: var(--uv-mavi); background: var(--uv-buz-zemin); }
.uv2-sonuc {
  display: none; margin-top: 10px; font-size: .85rem; font-weight: 700; color: var(--uv-lacivert);
  background: var(--uv-buz-zemin); border: 1px solid rgba(0, 120, 215, .18); border-radius: 10px; padding: .55em .9em;
}

/* ------------------------------------------------------------ LİSTE: ızgara */
.uv2-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(330px, 1fr));
  gap: 22px;
  margin-top: 26px;
}
.uv2-kart-dis { min-width: 0; }
.uv2-kart-dis.gizli { display: none; }
.uv2-kart {
  position: relative;
  height: 100%;
  display: flex; flex-direction: column;
  background: var(--uv-kart);
  border: 1px solid var(--uv-cizgi);
  border-radius: var(--uv-radius);
  padding: 20px 20px 16px;
  box-shadow: 0 1px 3px rgba(9, 30, 66, .04), 0 6px 20px rgba(9, 30, 66, .05);
  /* Hover gölgesi ::before opaklığıyla gelir (kompozit, boya yok);
     box-shadow bilerek geçiş listesinde DEĞİL. */
  transition: transform .32s var(--uv-yay), border-color .28s ease;
  content-visibility: auto;
  contain-intrinsic-size: auto 480px;
}
.uv2-kart::before {
  content: ''; position: absolute; inset: 0; z-index: -1;
  border-radius: var(--uv-radius);
  box-shadow: var(--uv-golge-buyuk);
  opacity: 0; transition: opacity .28s ease;
}
@media (hover: hover) {
  .uv2-kart:hover { transform: translateY(-6px); border-color: #9fd2ff; }
  .uv2-kart:hover::before { opacity: 1; }
  .uv2-kart:hover .uv2-logo { transform: scale(1.07) rotate(-2deg); box-shadow: 0 6px 16px rgba(0, 90, 158, .14); }
  .uv2-kart:hover .uv2-kicker { color: var(--uv-mavi-acik); }
}
.uv2-kart:active { transform: translateY(-2px) scale(.995); }
.uv2-kart-link::after { content: ''; position: absolute; inset: 0; border-radius: var(--uv-radius); }
.uv2-kart a, .uv2-kart button { position: relative; z-index: 2; }
.uv2-kart .uv2-kart-link { position: static; z-index: auto; }

.uv2-kart-ust { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 14px; }
.uv2-logo {
  width: 52px; height: 52px; flex: 0 0 auto;
  display: flex; align-items: center; justify-content: center;
  background: #fff; border: 1px solid var(--uv-cizgi); border-radius: 16px;
  overflow: hidden;
  transition: transform .3s var(--uv-yay), box-shadow .25s ease;
}
.uv2-logo img { width: 40px; height: 40px; object-fit: contain; }
.uv2-logo i { color: #b6c4d8; font-size: 1.2rem; }
.uv2-etiketler { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.uv2-etiket {
  font-size: .64rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase;
  border-radius: 999px; padding: .42em .75em; white-space: nowrap;
}
.uv2-etiket.one-cikan { background: #f7edd2; color: var(--uv-altin-koyu); }
.uv2-etiket.devlet { background: var(--uv-buz-zemin); color: var(--uv-lacivert); }
.uv2-etiket.ozel { background: #f1eefb; color: #5b3fa8; }

/* Künye satırı: editoryal üst başlık. Şehir ve ülke, addan ÖNCE gelir ve
   büyük harf aralıklı dizilir; kart bir katalog kaydı gibi okunur.          */
.uv2-kicker {
  display: block; margin-bottom: .35rem;
  font-size: .66rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
  color: var(--uv-mavi);
}
/* Üniversite adı serif: markanın Playfair'i burada kimlik taşır, kart bir
   bileşen kütüphanesi parçası gibi değil bir künye gibi görünür.            */
.uv2-ad {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.22rem; font-weight: 600; color: var(--uv-murekkep);
  line-height: 1.28; letter-spacing: -.005em; margin: 0 0 3px; overflow-wrap: anywhere;
}
.uv2-ad a { color: inherit; text-decoration: none; }
.uv2-alt-satir .d.uv2-altin { color: var(--uv-altin-koyu); }
.uv2-ad-en { font-size: .78rem; color: var(--uv-soluk); font-weight: 400; font-style: italic; margin: 0; overflow-wrap: anywhere; }

.uv2-ayrac {
  height: 2px; border-radius: 999px; margin: 14px 0 12px;
  background: linear-gradient(90deg, var(--uv-buz-zemin), var(--uv-cizgi) 40%, transparent);
}

/* sıralama + akreditasyon rozetleri */
.uv2-rozetler { display: flex; flex-wrap: wrap; gap: 6px; }
.uv2-rozet {
  display: inline-flex; align-items: baseline; gap: .45em; max-width: 100%;
  font-size: .74rem; font-weight: 500; color: var(--uv-govde);
  background: var(--uv-buz-zemin); border-radius: 999px; padding: .38em .8em;
  transition: transform .25s var(--uv-yay), box-shadow .2s ease;
}
@media (hover: hover) {
  .uv2-rozet:hover { transform: translateY(-1px); box-shadow: 0 4px 10px rgba(0, 90, 158, .1); }
}
.uv2-rozet i { display: none; }   /* sahip kararı: sıralama rozetinde ikon yok */
.uv2-rozet .uv2-rozet-deger {
  font-family: var(--uv-sayi); font-variant-numeric: tabular-nums;
  font-weight: 700; color: var(--uv-lacivert-koyu); white-space: nowrap; letter-spacing: -.01em;
}
.uv2-rozet .uv2-rozet-metin { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.uv2-rozet.akred { color: #0b5c50; background: #eafaf4; }
.uv2-rozet.fazla { background: none; color: var(--uv-mavi); font-weight: 700; padding-left: .2em; }

/* alt bilgi bloğu */
.uv2-alt { margin-top: auto; padding-top: 12px; border-top: 1px solid var(--uv-cizgi); }
.uv2-alt-satir { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-top: 7px; }
.uv2-alt-satir .b { font-size: .66rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; color: var(--uv-soluk); }
.uv2-alt-satir .d {
  font-family: var(--uv-sayi); font-variant-numeric: tabular-nums;
  font-size: .92rem; font-weight: 700; color: var(--uv-murekkep); text-align: right; letter-spacing: -.01em;
}
.uv2-alt-satir .d .eur { display: block; font-size: .74rem; font-weight: 500; color: var(--uv-soluk); }
.uv2-detay-tus {
  display: inline-flex; align-items: center; gap: .5em; min-width: 0;
  font-size: .82rem; font-weight: 700; color: var(--uv-mavi);
}
.uv2-detay-tus i { flex: 0 0 auto; }
.uv2-detay-tus i { transition: transform .18s ease; }
.uv2-kart:hover .uv2-detay-tus i { transform: translateX(4px); }

.uv2-daha-sarma { display: flex; align-items: center; gap: 18px; margin-top: 34px; }
.uv2-daha-sarma::before, .uv2-daha-sarma::after { content: ''; flex: 1; height: 1px; background: var(--uv-cizgi); }
.uv2-daha-tus {
  flex: 0 0 auto; background: none; border: none; padding: .7rem .4rem;
  font: inherit; font-size: .86rem; font-weight: 700; letter-spacing: .04em;
  color: var(--uv-mavi); cursor: pointer;
  display: inline-flex; align-items: center; gap: .55em;
  transition: color .16s ease;
}
.uv2-daha-tus::after {
  content: ''; width: 7px; height: 7px;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translate(-2px, -2px); transition: transform .18s ease;
}
.uv2-daha-tus:hover { color: var(--uv-lacivert-koyu); }
.uv2-daha-tus:hover::after { transform: rotate(45deg) translate(0, 0); }

.uv2-bos { text-align: center; padding: 70px 20px; color: var(--uv-soluk); }
.uv2-bos i { font-size: 2.4rem; color: #c3d2e4; margin-bottom: 12px; display: block; }

/* --------------------------------------------------------------- CTA paneli */
.uvx-cta {
  margin: 60px 0 0;
  background: linear-gradient(160deg, #00284a 0%, #004085 60%, #005A9E 130%);
  border-radius: 28px;
  padding: 52px 40px;
  color: #fff; text-align: center;
  position: relative; overflow: hidden;
}
.uvx-cta::before { content: ''; position: absolute; inset: 0; background-image: radial-gradient(rgba(191, 224, 255, .14) 1px, transparent 1.6px); background-size: 26px 26px; }
.uvx-cta h2 { font-family: 'Playfair Display', Georgia, serif; font-weight: 700; color: #fff; font-size: clamp(1.5rem, 3vw, 2.1rem); margin-bottom: .6rem; position: relative; }
.uvx-cta p { color: rgba(255, 255, 255, .85); max-width: 560px; margin: 0 auto 1.6rem; position: relative; }
.uvx-cta .uvx-cta-tuslar { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; position: relative; }
.uvx-tus-beyaz {
  display: inline-flex; align-items: center; gap: .5em;
  background: #fff; color: #00345f; font-weight: 700; font-size: .95rem;
  border: none; border-radius: 999px; padding: .85em 1.8em; text-decoration: none;
  transition: transform .28s var(--uv-yay), box-shadow .22s ease;
}
.uvx-tus-beyaz:hover { transform: translateY(-3px) scale(1.02); box-shadow: 0 14px 30px rgba(0, 0, 0, .28); color: #00345f; }
.uvx-tus-beyaz:active { transform: translateY(-1px) scale(.98); }
.uvx-tus-cerceve {
  display: inline-flex; align-items: center; gap: .5em;
  background: transparent; color: #fff; font-weight: 700; font-size: .95rem;
  border: 1.5px solid rgba(255, 255, 255, .55); border-radius: 999px; padding: .85em 1.8em; text-decoration: none;
  transition: background .18s ease, border-color .18s ease;
}
.uvx-tus-cerceve:hover { background: rgba(255, 255, 255, .1); border-color: #fff; color: #fff; }

/* ================================================================= DETAY == */
.ud2-hero-ic { position: relative; z-index: 2; }
.ud2-kirinti { display: flex; flex-wrap: wrap; align-items: center; gap: .5em; font-size: .8rem; font-weight: 600; color: rgba(255, 255, 255, .75); margin-bottom: 1.6rem; }
.ud2-kirinti a { color: rgba(255, 255, 255, .85); text-decoration: none; }
.ud2-kirinti a:hover { color: #fff; text-decoration: underline; }
.ud2-kirinti .ayir { color: rgba(255, 255, 255, .4); }
.ud2-hero-baslik { display: flex; align-items: flex-start; gap: 20px; }
.ud2-logo {
  width: 86px; height: 86px; flex: 0 0 auto;
  display: flex; align-items: center; justify-content: center;
  background: #fff; border-radius: 20px; box-shadow: 0 10px 30px rgba(0, 0, 0, .25);
  overflow: hidden;
}
.ud2-logo img { width: 66px; height: 66px; object-fit: contain; }
.ud2-logo i { color: #b6c4d8; font-size: 2rem; }
.ud2-hero-baslik h1 { font-size: clamp(1.7rem, 3.6vw, 2.7rem); margin: 0 0 .35rem !important; }
.ud2-altad { font-size: 1rem; font-weight: 500; font-style: italic; color: rgba(255, 255, 255, .82); margin: 0 0 .4rem; }
.ud2-hero-konum { display: inline-flex; align-items: center; gap: .45em; font-size: .95rem; font-weight: 600; color: rgba(255, 255, 255, .85); }
.ud2-hero-konum i { color: var(--uv-buz); }
.ud2-hero-etiketler { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 1.1rem; }
.ud2-hero-etiket {
  display: inline-flex; align-items: center; gap: .45em;
  font-size: .76rem; font-weight: 700; color: #fff;
  background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px; padding: .45em 1em;
}
.ud2-hero-etiket i { color: var(--uv-buz); }
.ud2-hero-etiket.altin { background: rgba(201, 162, 39, .22); border-color: rgba(201, 162, 39, .5); }
.ud2-hero-etiket.altin i { color: #ecd48a; }

/* hızlı özet şeridi */
.ud2-ozet { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-top: 1.6rem; }
.ud2-ozet-kut { background: rgba(255, 255, 255, .09); border: 1px solid rgba(255, 255, 255, .16); border-radius: 14px; padding: .8rem 1.1rem; }
.ud2-ozet-kut b { display: block; font-family: var(--uv-sayi); font-size: 1.3rem; font-weight: 600; color: #fff; font-variant-numeric: tabular-nums; line-height: 1.25; letter-spacing: -.02em; }
.ud2-ozet-kut span { font-size: .68rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: rgba(255, 255, 255, .7); }

/* bölüm içi yapışkan gezinti */
.ud2-nav {
  position: sticky; top: 78px; z-index: 50;
  background: rgba(255, 255, 255, .97);
  border: 1px solid var(--uv-cizgi); border-radius: 999px;
  box-shadow: var(--uv-golge);
  padding: 8px; margin: -30px auto 30px; max-width: max-content;
  display: flex; gap: 4px; overflow-x: auto; scrollbar-width: none;
}
.ud2-nav::-webkit-scrollbar { display: none; }
.ud2-nav a {
  flex: 0 0 auto; font-size: .8rem; font-weight: 700; color: var(--uv-govde);
  text-decoration: none; border-radius: 999px; padding: .55em 1.05em; white-space: nowrap;
  transition: background .22s ease, color .22s ease, transform .25s var(--uv-yay), box-shadow .2s ease;
}
.ud2-nav a:active { transform: scale(.95); }
.ud2-nav a:hover { background: var(--uv-buz-zemin); color: var(--uv-lacivert); }
.ud2-nav a.aktif { background: var(--uv-lacivert); color: #fff; box-shadow: 0 6px 14px rgba(0, 40, 74, .2); }

/* içerik bölümleri */
.ud2-icerik { padding: 8px 0 70px; }
.ud2-bolum {
  background: var(--uv-kart);
  border: 1px solid var(--uv-cizgi);
  border-radius: var(--uv-radius);
  box-shadow: 0 1px 3px rgba(9, 30, 66, .03), 0 10px 28px rgba(9, 30, 66, .05);
  padding: 2.4rem 2.6rem;
  margin-bottom: 26px;
  scroll-margin-top: 150px;
}
.ud2-kicker { font-size: .72rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--uv-mavi); margin-bottom: .35rem; display: flex; align-items: center; gap: .5em; }
.ud2-bolum h2 { font-family: 'Playfair Display', Georgia, serif; font-size: clamp(1.35rem, 2.4vw, 1.8rem); font-weight: 700; color: var(--uv-murekkep); margin: 0 0 1.1rem; letter-spacing: -.01em; }
.ud2-bolum p { line-height: 1.75; color: var(--uv-govde); }
.ud2-govde-metin p + p { margin-top: .9rem; }

/* sıralama satırları */
.ud2-siralar { display: flex; flex-direction: column; }
.ud2-sira {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 1rem .4rem; border-bottom: 1px solid var(--uv-cizgi);
}
.ud2-sira:last-child { border-bottom: none; }
.ud2-sira .l { font-size: .95rem; font-weight: 600; color: var(--uv-govde); }
.ud2-sira .v { font-family: var(--uv-sayi); font-size: 1.22rem; font-weight: 700; color: var(--uv-lacivert); white-space: nowrap; font-variant-numeric: tabular-nums; letter-spacing: -.01em; }
.ud2-sira.dunya .v { color: var(--uv-mavi-acik); }

/* akreditasyon rozetleri (detay) */
.ud2-akredler { display: flex; flex-wrap: wrap; gap: 8px; }
.ud2-akred {
  display: inline-flex; align-items: center; gap: .5em;
  font-size: .88rem; font-weight: 700; color: #0b5c50;
  background: #eafaf4; border: 1px solid rgba(14, 138, 95, .22);
  border-radius: 999px; padding: .55em 1.1em;
}
.ud2-akred { transition: transform .25s var(--uv-yay), box-shadow .2s ease; }
@media (hover: hover) {
  .ud2-akred:hover { transform: translateY(-2px); box-shadow: 0 6px 14px rgba(14, 138, 95, .14); }
}
.ud2-akred i { color: var(--uv-yesil); }
/* Serbest açıklama cümleleri: rozet değil, okunur metin */
.ud2-akred-notlar { list-style: none; padding: 0; margin: 1rem 0 0; display: grid; gap: .6rem; }
.ud2-akred-notlar li {
  position: relative; padding: .85rem 1.1rem .85rem 2.2rem;
  background: #fbfdff; border: 1px solid var(--uv-cizgi); border-radius: 12px;
  color: var(--uv-govde); font-size: .93rem; line-height: 1.65;
}
.ud2-akred-notlar li::before {
  content: ''; position: absolute; left: 1.05rem; top: 1.45rem;
  width: 6px; height: 6px; border-radius: 50%; background: var(--uv-yesil);
}

/* ---------------------------------------------------- bölüm (program) listesi
   Kutu YOK, sol renk çizgisi YOK (sahip: "tam bir yapay zeka işareti").
   Yerine iyi dizilmiş bir program dizini: ince çizgiyle ayrılmış satırlar,
   solda ad ve künye, sağda hizalı ücret. Satır tıklanabilir gibi davranır ki
   ileride bölüm sayfası açıldığında görünüm değişmesin.                        */
.ud2-deptler { margin-top: 1.4rem; border-top: 1px solid var(--uv-cizgi); }

.ud2-dept {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: baseline;
  gap: 4px 24px;
  padding: 1.05rem 2.2rem 1.05rem 0;
  border-bottom: 1px solid var(--uv-cizgi);
  scroll-margin-top: 160px;
  transition: background-color .16s ease, padding-left .16s ease;
}
.ud2-dept::after {
  /* ileri oku: satırın tıklanabilir olduğunu sezdirir, üzerine gelince belirir */
  content: '';
  position: absolute; right: .6rem; top: 50%;
  width: 7px; height: 7px; margin-top: -4px;
  border-right: 1.5px solid var(--uv-mavi);
  border-bottom: 1.5px solid var(--uv-mavi);
  transform: rotate(-45deg) translateX(-4px);
  opacity: 0; transition: opacity .16s ease, transform .16s ease;
}
.ud2-dept { border-radius: 12px; }
.ud2-dept:hover {
  background: linear-gradient(90deg, var(--uv-buz-zemin), rgba(234, 244, 255, 0));
  padding-left: .9rem;
}
.ud2-dept:hover::after { opacity: 1; transform: rotate(-45deg) translateX(0); }

.ud2-dept-ad {
  grid-column: 1; grid-row: 1;
  margin: 0; min-width: 0;
  font-size: 1rem; font-weight: 600; color: var(--uv-murekkep);
  line-height: 1.4; letter-spacing: -.005em; overflow-wrap: anywhere;
}
/* Fiyat iki satır olabildiği için AD satırını yükseltmesin: iki satırı birden
   kaplar ve üstten hizalanır. Aksi halde ad ile künye arasında boşluk açılıyor. */
.ud2-fiyat {
  grid-column: 2; grid-row: 1 / span 2;
  align-self: start; text-align: right; white-space: nowrap;
}
.ud2-fiyat .asil {
  font-family: var(--uv-sayi); font-variant-numeric: tabular-nums;
  font-size: 1rem; font-weight: 700; color: var(--uv-lacivert); letter-spacing: -.01em;
}
.ud2-fiyat .eur {
  display: block; margin-top: 1px;
  font-family: var(--uv-sayi); font-variant-numeric: tabular-nums;
  font-size: .76rem; font-weight: 500; color: var(--uv-soluk);
}
.ud2-fiyat .ucretsiz {
  font-size: .74rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: var(--uv-altin-koyu);
}
/* künye: rozet değil, ince ayraçlı düz künye satırı */
.ud2-dept .dept-meta {
  grid-column: 1 / -1; grid-row: 2;
  display: flex; flex-wrap: wrap; align-items: center; gap: .1rem .55rem;
  margin-top: 2px;
}
.ud2-dept .dept-meta .dm {
  background: none !important; border: none !important; padding: 0 !important;
  font-size: .8rem; font-weight: 500; color: var(--uv-soluk) !important;
  display: inline-flex; align-items: center; gap: .3em;
}
.ud2-dept .dept-meta .dm + .dm::before {
  content: '·'; margin-right: .55rem; color: #c3d2e4; font-weight: 700;
}
.ud2-dept .dept-meta .dm.dm-prep { color: var(--uv-yesil) !important; font-weight: 600; }
.ud2-dept .dept-meta .dm i { display: none; }   /* ikon yerine sade metin künye */
.ud2-dept .uni-deadline.dept-dl {
  grid-column: 1 / -1; grid-row: 3;
  margin-top: 8px; padding-top: 0; border-top: none;
}
/* Bölüm başvuru tarihi satırı. Bu sınıfların stilleri paylaşılan dosyada
   DEĞİL, canlı detay şablonunun içinde duruyor; burada kendi dilimizde
   yeniden tanımlanır, yoksa satır biçimsiz ve yapışık çıkıyor. */
.univ2 .dept-dl-row {
  display: flex; flex-wrap: wrap; align-items: center;
  gap: 4px 12px; font-size: .78rem; line-height: 1.4;
}
.univ2 .dept-dl-badge {
  font-size: .64rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase;
  padding: .3em .65em; border-radius: 5px;
}
.univ2 .dept-dl-badge.dl-open { background: #e6f6ef; color: var(--uv-yesil); }
.univ2 .dept-dl-badge.dl-soon { background: #fdeceb; color: #c0392b; }
.univ2 .dept-dl-badge.dl-upcoming { background: var(--uv-buz-zemin); color: var(--uv-lacivert); }
.univ2 .dept-dl-win {
  display: inline-flex; align-items: center; gap: .45em;
  color: var(--uv-govde); font-weight: 500; white-space: nowrap;
}
.univ2 .dept-dl-win i { color: var(--uv-mavi-acik); font-size: .72rem; }
.univ2 .dept-dl-count { color: var(--uv-soluk); font-weight: 500; }
.univ2 .dept-dl-count.dl-soon { color: #c0392b; font-weight: 700; }
.univ2 .dept-dl-count.dl-open { color: var(--uv-yesil); font-weight: 600; }

/* bölüm filtre çubuğu (detay) — uni-deadline.css .dept-chip üstüne marka düzeltmesi */
.univ2 .dept-filters { background: #fbfdff; border-color: var(--uv-cizgi); }
.univ2 .dept-chip { border-color: rgba(0, 90, 158, .22); color: var(--uv-govde); }
.univ2 .dept-chip:hover { border-color: var(--uv-mavi); color: var(--uv-mavi); }
.univ2 .dept-chip.active { background: var(--uv-lacivert); border-color: var(--uv-lacivert); color: #fff; }
/* "Daha fazla göster": kalın kutu tuş yerine, iki yana uzanan ince çizgi
   arasında sakin bir metin. Sayfayı bölmez, listeyi sürdürür.               */
.univ2 .dept-more-wrap { display: flex; align-items: center; gap: 16px; margin-top: 0; }
.univ2 .dept-more-wrap::before,
.univ2 .dept-more-wrap::after {
  content: ''; flex: 1; height: 1px; background: var(--uv-cizgi);
}
.univ2 .dept-more-btn {
  flex: 0 0 auto;
  background: none; border: none; border-radius: 0;
  padding: 1.05rem .4rem;
  font-size: .84rem; font-weight: 700; letter-spacing: .04em;
  color: var(--uv-mavi); cursor: pointer;
  display: inline-flex; align-items: center; gap: .5em;
  transition: color .16s ease;
}
.univ2 .dept-more-btn::after {
  content: ''; width: 7px; height: 7px;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translate(-2px, -2px);
  transition: transform .18s ease;
}
.univ2 .dept-more-btn:hover { background: none; color: var(--uv-lacivert-koyu); }
.univ2 .dept-more-btn:hover::after { transform: rotate(45deg) translate(0, 0); }
.univ2 .dept-more-count { opacity: .7; font-weight: 500; margin-left: 0; }

/* galeri / harita / video */
.ud2-galeri { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
.ud2-galeri figure { margin: 0; }
.ud2-galeri a { display: block; border-radius: 14px; overflow: hidden; aspect-ratio: 4 / 3; cursor: zoom-in; box-shadow: 0 4px 14px rgba(9, 30, 66, .1); }
.ud2-galeri img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.ud2-galeri a:hover img { transform: scale(1.05); }
.ud2-galeri figcaption { font-size: .8rem; color: var(--uv-soluk); margin-top: .45rem; line-height: 1.4; }
.ud2-galeri-not { color: #94a3b8; font-size: .78rem; margin-top: 1rem; }
.ud2-harita { border-radius: 16px; overflow: hidden; box-shadow: 0 6px 18px rgba(9, 30, 66, .12); line-height: 0; }
.ud2-harita iframe { display: block; width: 100%; border: 0; }
.ud2-video { position: relative; width: 100%; padding-top: 56.25%; border-radius: 16px; overflow: hidden; box-shadow: 0 6px 18px rgba(9, 30, 66, .12); }
.ud2-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* konaklama */
.ud2-konak { list-style: none; padding: 0; margin: .4rem 0 0; display: grid; gap: .7rem; }
.ud2-konak li { background: #fbfdff; border: 1px solid var(--uv-cizgi); border-radius: 12px; padding: .9rem 1.1rem; }
.ud2-konak .fiyat { color: var(--uv-yesil); font-weight: 800; }
.ud2-konak .not { color: var(--uv-soluk); font-size: .9rem; }

/* SSS — uni-deadline.css .uni-faq üstüne marka düzeltmesi */
.univ2 .uni-faq .faq-item { border-color: var(--uv-cizgi); background: #fbfdff; }
.univ2 .uni-faq .faq-q::after { color: var(--uv-mavi-acik); }

/* ilgili makaleler */
.ud2-makaleler { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }
.ud2-makale {
  display: flex; align-items: flex-start; gap: 12px;
  padding: 14px 16px; border: 1px solid var(--uv-cizgi); border-radius: 12px;
  text-decoration: none; color: var(--uv-murekkep); background: #fff;
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
  min-width: 0; overflow: hidden;
}
.ud2-makale:hover { border-color: var(--uv-mavi-acik); transform: translateY(-2px); box-shadow: 0 4px 14px rgba(0, 120, 215, .12); color: var(--uv-murekkep); }
.ud2-makale i { color: var(--uv-mavi-acik); font-size: 1.05rem; flex: 0 0 auto; margin-top: 2px; }
.ud2-makale span { font-size: .9rem; font-weight: 600; line-height: 1.4; min-width: 0; overflow-wrap: anywhere; }

/* uni-deadline widget: marka uyumu (yalnız .univ2 kapsamında) */
.univ2 .uni-deadline .dl-mini { background: #fbfdff; border-color: var(--uv-cizgi); }
.univ2 .uni-deadline .dl-dates i, .univ2 .uni-deadline .dl-row-win i { color: var(--uv-mavi-acik); }
.univ2 .uni-deadline .dl-badge.dl-upcoming { background: var(--uv-buz-zemin); color: var(--uv-lacivert); border-color: rgba(0, 64, 133, .2); }
.univ2 .uni-deadline .dl-count.dl-upcoming, .univ2 .uni-deadline .dl-row-count.dl-upcoming { color: var(--uv-lacivert); }
.univ2 .uni-deadline .dl-row { background: #fbfdff; border: 1px solid var(--uv-cizgi); }

/* --------------------------------------------- giriş animasyonları (JS'li) */
/* Gizleme YALNIZ kök .univ2-anim sınıfı JS tarafından eklenince uygulanır;
   JS yoksa veya hareket azaltma açıksa içerik daima görünür (ilerlemeli). */
/* Belirme karakteri dil okulları sayfasıyla AYNI (sahip istegi 29 Ağu):
   40px aşağıdan, 0.8s ease, sıra başına 80ms kademe. Kurgu farklı ve güvenli
   kalır: sunucu HTML'i görünür, yalnız ekran altındakiler işaretlenir. */
.univ2-anim .uvx-rv { opacity: 0; transform: translateY(40px); }
.univ2-anim .uvx-rv.gorunur {
  opacity: 1; transform: none;
  transition: opacity .8s ease, transform .8s ease;
  transition-delay: var(--rv-gecikme, 0ms);
}

/* ------------------------------------------------------------- duyarlılık */
@media (max-width: 991px) {
  .univ2 .uvx-hero { padding: 120px 0 52px; }
  .uv2-bar { top: 66px; }
  .ud2-nav { top: 64px; }
  .uv2-secimler { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ud2-bolum { padding: 1.6rem 1.4rem; }
}
@media (max-width: 560px) {
  .univ2 .uvx-hero { padding: 106px 0 44px; border-radius: 0 0 22px 22px; }
  .univ2 .uvx-hero h1 { font-size: 1.75rem; }
  .univ2 .uvx-statlar { gap: 8px; }
  .univ2 .uvx-stat { min-width: calc(50% - 4px); padding: .7rem .9rem; }
  .uv2-bar { margin-top: -34px; padding: 12px; position: static; }
  /* Dokunma hedefi en az 44px: parmakla seçilen her şey rahat tutulmalı.
     Yazı ölçüsünden bağımsız olsun diye yükseklik alt sınırla verilir. */
  .uv2-ulke { padding: .72em 1.05em; min-height: 44px; }
  .uv2-secimler select, .uv2-secimler button { height: 46px; }
  #uv2-temizle { min-height: 44px; }
  /* Karşılaştırma tuşları da parmakla rahat tutulmalı */
  .uv2-kars-tus { min-height: 44px; padding: .5em 1em; }
  .uv2-kars-ac { min-height: 46px; }
  .uv2-kars-temizle { min-height: 44px; display: inline-flex; align-items: center; }
  .uv2-kars-oge button { min-width: 30px; min-height: 30px; }
  .uv2-daha-tus { min-height: 46px; }
  .univ2 .dept-more-btn { min-height: 46px; }
  .uv2-grid { grid-template-columns: 1fr; gap: 16px; }
  .uv2-kart { contain-intrinsic-size: auto 420px; }
  .ud2-hero-baslik { flex-direction: column; gap: 14px; }
  .ud2-logo { width: 72px; height: 72px; }
  .ud2-nav { position: static; margin: -24px 12px 22px; border-radius: 18px; max-width: none; }
  .ud2-bolum { padding: 1.3rem 1.1rem; border-radius: 16px; }
  .ud2-deptler { grid-template-columns: 1fr; }
  .uvx-cta { padding: 40px 22px; border-radius: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  .univ2 *, .univ2 *::before, .univ2 *::after { transition: none !important; animation: none !important; }
  .univ2-anim .uvx-rv { opacity: 1; transform: none; }
}

/* ============================================================================
   KARŞILAŞTIRMA — üç üniversiteye kadar seçip yan yana koyma.
   Danışmanlık görüşmesinde en çok sorulan şey "hangisi bana uyar"; katalog
   bunu tek başına cevaplayamıyordu. Seçim kartta yapılır, altta bir şerit
   birikir, açılan panelde okullar sütun sütun karşılaştırılır.
   ========================================================================= */

/* kart tabanındaki seçim tuşu: detay bağlantısıyla aynı satırı paylaşır,
   mutlak konum kullanılmaz (üst üste binmesin). */
.uv2-kart-son {
  display: flex; align-items: center; justify-content: space-between;
  gap: 10px; margin-top: 14px;
}
.uv2-kars-tus {
  flex: 0 0 auto; z-index: 3;
  display: inline-flex; align-items: center; gap: .4em;
  background: #fff; border: 1px solid var(--uv-cizgi); border-radius: 999px;
  padding: .4em .8em; cursor: pointer;
  font: inherit; font-size: .72rem; font-weight: 700; letter-spacing: .03em;
  color: var(--uv-soluk);
  opacity: 0; transform: translateY(4px);
  transition: opacity .2s ease, transform .28s var(--uv-yay), color .18s ease, border-color .18s ease, background-color .18s ease;
}
.uv2-kars-tus:active { transform: scale(.94); }
.uv2-kart:hover .uv2-kars-tus,
.uv2-kars-tus:focus-visible,
.uv2-kars-tus[aria-pressed="true"] { opacity: 1; transform: none; }
.uv2-kars-tus:hover { border-color: var(--uv-mavi); color: var(--uv-mavi); }
.uv2-kars-tus[aria-pressed="true"] {
  background: var(--uv-lacivert); border-color: var(--uv-lacivert); color: #fff;
}
.uv2-kars-tus .kutu {
  width: 13px; height: 13px; border: 1.5px solid currentColor; border-radius: 4px;
  display: inline-block; position: relative; flex: 0 0 auto;
}
.uv2-kars-tus[aria-pressed="true"] .kutu::after {
  content: ''; position: absolute; left: 3px; top: 0px;
  width: 4px; height: 8px; border-right: 2px solid #fff; border-bottom: 2px solid #fff;
  transform: rotate(45deg);
}
/* dokunmatikte üzerine gelme yok: tuş hep görünür */
@media (hover: none) { .uv2-kars-tus { opacity: 1; transform: none; } }

/* seçili kart belli olsun */
.uv2-kart-dis.secili .uv2-kart { border-color: var(--uv-lacivert); box-shadow: 0 0 0 1px var(--uv-lacivert); }

/* alt şerit */
.uv2-kars-serit {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 1040;
  background: rgba(0, 33, 62, .98);
  color: #fff;
  transform: translateY(110%); transition: transform .28s cubic-bezier(.22,.61,.36,1);
  padding: 14px 0 calc(14px + env(safe-area-inset-bottom, 0px));
  box-shadow: 0 -10px 30px rgba(0, 0, 0, .2);
}
.uv2-kars-serit.acik { transform: none; }
.uv2-kars-ic { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.uv2-kars-liste { display: flex; align-items: center; gap: 10px; flex: 1 1 auto; min-width: 0; flex-wrap: wrap; }
.uv2-kars-oge {
  display: inline-flex; align-items: center; gap: .55em;
  background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 999px; padding: .4em .5em .4em .45em;
  font-size: .8rem; font-weight: 600; max-width: 260px;
}
.uv2-kars-oge img { width: 22px; height: 22px; object-fit: contain; background: #fff; border-radius: 50%; padding: 2px; flex: 0 0 auto; }
.uv2-kars-oge span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.uv2-kars-oge button {
  background: none; border: none; color: rgba(255, 255, 255, .7); cursor: pointer;
  font-size: 1.05rem; line-height: 1; padding: 0 .15em; flex: 0 0 auto;
}
.uv2-kars-oge button:hover { color: #fff; }
.uv2-kars-bos { font-size: .82rem; color: rgba(255, 255, 255, .6); }
.uv2-kars-eylem { display: flex; align-items: center; gap: 10px; flex: 0 0 auto; }
.uv2-kars-ac {
  background: #fff; color: #00345f; border: none; border-radius: 999px;
  padding: .7em 1.5em; font: inherit; font-size: .85rem; font-weight: 700; cursor: pointer;
  transition: transform .16s ease;
}
.uv2-kars-ac:hover { transform: translateY(-1px); }
.uv2-kars-ac:disabled { opacity: .45; cursor: not-allowed; transform: none; }
.uv2-kars-temizle {
  background: none; border: none; color: rgba(255, 255, 255, .75);
  font: inherit; font-size: .82rem; font-weight: 600; cursor: pointer; text-decoration: underline;
}
.uv2-kars-temizle:hover { color: #fff; }

/* Karşılaştırma paneli.
   🔴 KAYDIRMA PANELİN KENDİSİNDE. Önce panel bir "alt tepsi" idi ve kaydırma
   yalnız iç kutudaydı; kutu ekrana sığmadığında hiçbir yere kayamıyordu ve
   tablonun alt satırlarına ulaşılamıyordu (sahip 29 Ağu: "aşağı kaymıyor").
   Blok + otomatik kenar boşluğu deseni: panel uzun içerikte daima kayar,
   kutu yatayda ortalanır, hiçbir tarayıcıda üst kısım kırpılmaz.            */
/* 🔴 DİKEY ORTALAMA + TAŞMADA KAYMA. Kutu blok akışında bırakılınca kısa
   içerikte ekranın üstüne yapışıyor, uzun içerikte aşağı kaçıyordu
   (sahip: "ya çok yukarıda ya çok aşağıda"). Çözüm flex + kutuda `margin:auto`:
   sığdığında ORTALANIR, sığmadığında üstten kırpılmadan kayar. Yalnız
   `align-items:center` kullanmak taşan içeriğin ÜST kısmını erişilemez yapar. */
.uv2-kars-panel {
  position: fixed; inset: 0; z-index: 10000;
  background: rgba(9, 30, 66, .58);
  display: none;
  overflow-y: auto; -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  padding: 24px 16px;
}
.uv2-kars-panel.acik { display: flex; }
.uv2-kars-kutu {
  background: #fff;
  width: 100%; max-width: 1100px;
  margin: auto;                 /* dikeyde ortalar, taşarsa üstü kırpılmaz */
  border-radius: 20px; padding: 26px 26px 32px;
  animation: uv2Yukari .3s cubic-bezier(.22,.61,.36,1);
}
/* Tablo dar ekranda yatayda kaysın; sayfa gövdesi asla yatay kaymaz */
.uv2-kars-sar { overflow-x: auto; -webkit-overflow-scrolling: touch; }
/* 🔴 Açılış animasyonu KUTUNUN YERİNİ OYNATMAZ. Önce translateY(28px) ile
   giriyordu; animasyon donduğunda (arka plan sekmesi, güç tasarrufu, otomasyon)
   kutu 28 px aşağıda kalıyor ve ortalanmış görünmüyordu. Ölçek merkezden
   büyüdüğü için donsa bile kutu ortada kalır. */
@keyframes uv2Yukari { from { transform: scale(.985); opacity: 0; } to { transform: none; opacity: 1; } }
.uv2-kars-baslik {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  margin: -26px -26px 18px; padding: 22px 26px 14px;
  position: sticky; top: -26px; z-index: 2;
  background: #fff; border-radius: 20px 20px 0 0;
  border-bottom: 1px solid var(--uv-cizgi);
}
.uv2-kars-baslik h2 {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.5rem; font-weight: 700; color: var(--uv-murekkep); margin: 0;
}
.uv2-kars-kapat {
  background: none; border: 1px solid var(--uv-cizgi); border-radius: 50%;
  width: 38px; height: 38px; font-size: 1.1rem; line-height: 1; cursor: pointer;
  color: var(--uv-govde); flex: 0 0 auto;
}
.uv2-kars-kapat:hover { border-color: var(--uv-mavi); color: var(--uv-mavi); }

.uv2-kars-tablo { width: 100%; border-collapse: collapse; }
.uv2-kars-tablo th, .uv2-kars-tablo td {
  padding: .85rem .9rem; text-align: left; vertical-align: top;
  border-bottom: 1px solid var(--uv-cizgi); font-size: .88rem;
}
.uv2-kars-tablo thead th { border-bottom: 2px solid var(--uv-lacivert); vertical-align: bottom; }
/* Satır başlıkları yatay kaydırmada kaybolmasın: dar ekranda tablo yana
   kayıyor ve hangi satıra baktığın belirsizleşiyordu. */
.uv2-kars-tablo tbody th {
  font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  color: var(--uv-soluk); width: 168px; white-space: nowrap;
  position: sticky; left: 0; z-index: 1;
  background: #fff; box-shadow: 1px 0 0 var(--uv-cizgi);
}
.uv2-kars-tablo thead th:first-child {
  position: sticky; left: 0; z-index: 1; background: #fff;
}
.uv2-kars-tablo td { color: var(--uv-govde); }
.uv2-kars-tablo td.sayi { font-family: var(--uv-sayi); font-variant-numeric: tabular-nums; font-weight: 700; color: var(--uv-murekkep); }
.uv2-kars-basi { display: flex; flex-direction: column; gap: .5rem; }
.uv2-kars-basi img { width: 42px; height: 42px; object-fit: contain; }
.uv2-kars-basi a {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.02rem; font-weight: 600; color: var(--uv-murekkep); text-decoration: none; line-height: 1.3;
}
.uv2-kars-basi a:hover { color: var(--uv-mavi); text-decoration: underline; }
.uv2-kars-tablo .yok { color: #a9b6c9; }
.uv2-kars-liste-ic { margin: 0; padding: 0; list-style: none; display: grid; gap: .3rem; }
.uv2-kars-liste-ic li { line-height: 1.45; }

@media (max-width: 700px) {
  .uv2-kars-panel { padding: 12px 10px; }
  .uv2-kars-kutu { padding: 18px 14px 24px; border-radius: 16px; }
  .uv2-kars-baslik { margin: -18px -14px 14px; padding: 16px 14px 12px; top: -18px; border-radius: 16px 16px 0 0; }
  .uv2-kars-baslik h2 { font-size: 1.15rem; }
  .uv2-kars-tablo th, .uv2-kars-tablo td { padding: .65rem .5rem; font-size: .82rem; }
  .uv2-kars-tablo tbody th { width: 104px; white-space: normal; font-size: .62rem; }
  .uv2-kars-basi img { width: 32px; height: 32px; }
  .uv2-kars-ic { gap: 10px; }
  .uv2-kars-eylem { width: 100%; justify-content: space-between; }
  .uv2-kars-oge { max-width: 150px; font-size: .74rem; }
}
@media (prefers-reduced-motion: reduce) {
  .uv2-kars-serit { transition: none; }
  .uv2-kars-kutu { animation: none; }
}
/* Euro karşılığı DAİMA kendi satırında: yalnız tabloya kapsanmıştı, yığın
   görünümünde fiyata yapışıyordu. */
.uv2-kars-alt {
  display: block; margin-top: 2px;
  font-size: .78rem; font-weight: 500; color: var(--uv-soluk);
}

/* ----------------------------------------------------------------------------
   Karşılaştırma şeridi ile sitenin yüzen tuşlarının çakışması.
   #vgrandevuFab (sol alt) ve #vgifTrigger (sağ alt) z-index 9998 ile şeridin
   ÜSTÜNDE duruyor ve şerit yazısını kapatıyordu. Şerit açılınca ikisi de
   şeridin üstüne kalkar. Yükseklik JS tarafından ölçülüp değişkene yazılır.
   Bu kural bilerek .univ2 dışındadır: hedef öğeler site kabuğunda; sınıf
   yalnız bu sayfaların JS'i tarafından eklendiği için başka sayfaya sızmaz.
   ------------------------------------------------------------------------- */
body.uv2-kars-acik #vgifTrigger,
body.uv2-kars-acik #vgrandevuFab {
  bottom: calc(20px + var(--uv-kars-yuk, 84px));
}
/* Karşılaştırma PANELİ açıkken yüzen tuşlar tamamen çekilir: modalin üstünde
   işleri yok ve tablonun alt satırlarını kapatıyorlardı. */
body.uv2-kars-panel-acik #vgifTrigger,
body.uv2-kars-panel-acik #vgrandevuFab {
  opacity: 0; pointer-events: none; visibility: hidden;
}
/* Şerit, yüzen tuşların altında kalmasın diye onlarla aynı katmana çıkar */
.uv2-kars-serit { z-index: 9997; }
.uv2-kars-panel { z-index: 10000; }
/* Ücreti bilinmeyen bölüm: boş bırakmak "ücretsiz" gibi okunuyordu, rakam
   uydurmak ise yasak. Kullanıcı ne yapacağını bilsin diye açık yazılır. */
.ud2-fiyat .sorulacak {
  font-size: .78rem; font-weight: 600; color: var(--uv-soluk);
  border-bottom: 1px dotted #c3d2e4; cursor: default;
}

/* Karşılaştırma, dar ekran yığın görünümü: okullar alt alta, her biri kendi
   künyesiyle. 375 px'de üç sütunlu tablo yatayda kayıyor ve ilk okulun yarısı
   görünüyordu; telefonda bu düzen okunur. */
.uv2-kars-yigin { display: grid; gap: 20px; }
.uv2-kars-blok {
  border: 1px solid var(--uv-cizgi); border-radius: 14px;
  padding: 16px 16px 6px; background: #fbfdff;
}
.uv2-kars-blok .uv2-kars-basi { flex-direction: row; align-items: center; gap: .7rem; margin-bottom: 12px; }
.uv2-kars-blok .uv2-kars-basi img { width: 34px; height: 34px; }
.uv2-kars-blok dl { margin: 0; }
.uv2-kars-blok dt {
  font-size: .64rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  color: var(--uv-soluk); margin-top: 12px;
}
.uv2-kars-blok dd {
  margin: 2px 0 0; padding: 0 0 11px; font-size: .92rem; color: var(--uv-govde);
  border-bottom: 1px solid var(--uv-cizgi); line-height: 1.5;
}
.uv2-kars-blok dl > dd:last-of-type { border-bottom: none; }
.uv2-kars-blok dd.sayi { font-family: var(--uv-sayi); font-variant-numeric: tabular-nums; font-weight: 700; color: var(--uv-murekkep); }
.uv2-kars-blok dd.yok { color: #a9b6c9; }

/* ============================================================================
   HERO FOTOĞRAFI — sahibin onayladığı sayfa dilinde "gerçek fotoğraf" şart.
   Üniversitenin kendi kampüs görseli yoksa ülkesinin lisanslı fotoğrafı basılır.
   🔴 Metin okunurluğu pazarlık konusu değil: fotoğrafın üstüne koyu lacivert
   örtü konur, böylece başlık ve künye her fotoğrafta 4.5:1 üstünde kalır.
   ========================================================================= */
.univ2 .uvx-hero-foto {
  position: absolute; inset: 0; z-index: 0; overflow: hidden;
}
.univ2 .uvx-hero-foto img {
  width: 100%; height: 100%; object-fit: cover; object-position: center 42%;
  display: block;
}
/* Örtü iki katman:
   1) SOLDAN sağa: metnin durduğu sol tarafta koyu, sağda fotoğraf nefes alır.
   2) ALTTAN yukarı: alt künye şeridinin okunurluğunu garanti eder.
   Fotoğrafı tamamen boğmak yerine dengelenir; ölçüm: başlık kontrastı 4.5:1 üstü. */
.univ2 .uvx-hero-fotolu::after {
  content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background:
    linear-gradient(100deg,
      rgba(0, 27, 50, .93) 0%,
      rgba(0, 33, 62, .88) 34%,
      rgba(0, 40, 74, .62) 62%,
      rgba(0, 48, 92, .42) 100%),
    linear-gradient(180deg,
      rgba(0, 27, 50, .55) 0%,
      rgba(0, 27, 50, .20) 38%,
      rgba(0, 33, 62, .72) 100%);
}
/* Fotoğraflı hero'da nokta dokusu ve ışık lekeleri geri çekilir, fotoğraf konuşsun */
.univ2 .uvx-hero-fotolu::before { opacity: .22; }
.univ2 .uvx-hero-fotolu .uvx-hero-glow { opacity: .3; }
.univ2 .uvx-hero-fotolu > .container { position: relative; z-index: 2; }

.univ2 .uvx-hero-kaynak {
  position: relative; z-index: 2;
  margin: 1.4rem 0 0; font-size: .72rem; color: rgba(255, 255, 255, .55);
  line-height: 1.5;
}
/* Fotoğraflı hero'da özet kutuları: parlak bir fotoğrafta (kar, beyaz cephe,
   açık gökyüzü) örtü tek başına yetmeyebilir. Kutulara kendi koyu zemini
   verilir, böylece rakam ve etiketler her fotoğrafta okunur kalır. */
.univ2 .uvx-hero-fotolu .ud2-ozet-kut,
.univ2 .uvx-hero-fotolu .uvx-stat {
  background: rgba(0, 27, 50, .6);
  border-color: rgba(255, 255, 255, .22);
}
.univ2 .uvx-hero-fotolu .ud2-ozet-kut span,
.univ2 .uvx-hero-fotolu .uvx-stat span { color: rgba(255, 255, 255, .82); }
.univ2 .uvx-hero-fotolu .ud2-hero-etiket { background: rgba(0, 27, 50, .5); }

/* Katalog hero fotoğrafı: ülke seçilince yumuşak geçişle belirir.
   Arka plan görseli JS tarafından verilir; geçiş opaklık üzerinden olur,
   böylece düzen hiç sarsılmaz ve açılışta hiçbir görsel indirilmez. */
.univ2 #uv2-hero .uvx-hero-foto {
  background-size: cover;
  background-position: center 45%;
  opacity: 0;
  transition: opacity .45s ease;
}
.univ2 #uv2-hero.uvx-hero-fotolu .uvx-hero-foto {
  opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
  .univ2 #uv2-hero .uvx-hero-foto { transition: none; }
}

/* ============================================================================
   YUMUŞATMA GEÇİŞİ, genel tatlandırıcılar (29 Ağu)
   Yapı ve görseller değişmedi; yalnız his: seçim rengi, ince kaydırma çubuğu,
   tutarlı odak halkası, yumuşak sayfa içi kaydırma.
   ========================================================================= */

/* Metin seçimi marka tınısında */
.univ2 ::selection { background: rgba(0, 120, 215, .16); color: var(--uv-lacivert-koyu); }

/* Ülke şeridinin kaydırma çubuğu: kalın gri yerine ince ve yuvarlak */
.uv2-ulkeler { scrollbar-color: #c8d8ea transparent; }
.uv2-ulkeler::-webkit-scrollbar { height: 5px; }
.uv2-ulkeler::-webkit-scrollbar-track { background: transparent; }
.uv2-ulkeler::-webkit-scrollbar-thumb { background: #c8d8ea; border-radius: 999px; }
.uv2-ulkeler::-webkit-scrollbar-thumb:hover { background: var(--uv-mavi-acik); }

/* Tutarlı odak halkası: klavyeyle gezen herkes nerede olduğunu görür */
.univ2 :is(a, button, select, input, summary):focus-visible {
  outline: 2px solid var(--uv-mavi-acik);
  outline-offset: 2px;
  border-radius: 8px;
}

/* Sayfa içi çapa geçişleri yumuşak kayar (bölüm gezintisi zaten JS ile kayıyor,
   bu, tarayıcı varsayılanları için emniyet) */
.univ2 { scroll-behavior: smooth; }

/* SSS: açılırken içerik tatlıca belirir */
.univ2 .uni-faq .faq-item { transition: border-color .2s ease, box-shadow .2s ease; }
.univ2 .uni-faq .faq-item[open] { border-color: rgba(0, 120, 215, .3); box-shadow: 0 6px 18px rgba(0, 90, 158, .07); }
.univ2 .uni-faq .faq-item[open] .faq-a { animation: uv2Belir .28s ease; }
@keyframes uv2Belir { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }

/* Galeri kartları: köşe bir kademe yumuşak, hover'da tatlı yükselme */
.ud2-galeri a { border-radius: 18px; transition: transform .3s var(--uv-yay), box-shadow .25s ease; }
@media (hover: hover) {
  .ud2-galeri a:hover { transform: translateY(-4px); box-shadow: 0 14px 32px rgba(9, 30, 66, .16); }
}

/* Hero istatistik kutuları: üzerine gelince hafifçe canlanır */
.univ2 .uvx-stat { transition: transform .28s var(--uv-yay), background-color .2s ease, border-color .2s ease; }
@media (hover: hover) {
  .univ2 .uvx-stat:hover { transform: translateY(-3px); background: rgba(255, 255, 255, .11); border-color: rgba(255, 255, 255, .28); }
}

/* Boş durum: sevimli, suçlayıcı değil */
.uv2-bos i { transition: transform .3s var(--uv-yay); }
.uv2-bos:hover i { transform: rotate(-8deg) scale(1.06); }

/* Karşılaştırma şeridi öğeleri yay ile girer */
.uv2-kars-oge { transition: transform .28s var(--uv-yay); animation: uv2Belir .25s ease; }

/* Hareket azaltmada yeni animasyonlar da kapanır (genel blok zaten var, emniyet) */
@media (prefers-reduced-motion: reduce) {
  .univ2 { scroll-behavior: auto; }
  .univ2 .uni-faq .faq-item[open] .faq-a,
  .uv2-kars-oge { animation: none; }
}

/* ============================================================================
   FİLTRE ÇUBUĞU v2 (29 Ağu akşam) — "kaba ve demode" geri bildirimi üzerine.
   Yapı: üstte arama + sıralama, ortada ülke hapları, altta KESİM ÇİPLERİ.
   Çipler gerçek <select> öğeleridir (klavye ve ekran okuyucu bozulmaz);
   yalnız görünümleri haptır ve değer seçilince laciverte DOLARLAR.
   ========================================================================= */
.uv2-bar-ust { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.uv2-bar-ust .uv2-bar-ara { flex: 1 1 260px; margin-bottom: 0; }

/* Kesim çipi: hap görünümlü select. Ok işareti gömülü SVG, dolunca beyazı gelir. */
.uv2-cip {
  appearance: none; -webkit-appearance: none;
  height: 44px;
  border: 1.5px solid var(--uv-cizgi); border-radius: 999px;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2366748A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 16px center; background-size: 10px;
  padding: 0 38px 0 18px;
  font: inherit; font-size: .86rem; font-weight: 600; color: var(--uv-govde);
  cursor: pointer;
  transition: border-color .2s ease, background-color .2s ease, color .2s ease,
              transform .28s var(--uv-yay), box-shadow .2s ease;
}
.uv2-cip:hover { border-color: var(--uv-mavi-acik); color: var(--uv-mavi); transform: translateY(-1px); box-shadow: 0 6px 16px rgba(0, 90, 158, .1); }
.uv2-cip:active { transform: scale(.97); }
.uv2-cip:focus-visible { outline: 2px solid var(--uv-mavi-acik); outline-offset: 2px; }
/* DOLU: bir değer seçili. Çip laciverte döner, ok beyazlar; hangi süzgecin
   etkin olduğu tek bakışta görünür. */
.uv2-cip.dolu {
  background-color: var(--uv-lacivert); border-color: var(--uv-lacivert); color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  box-shadow: 0 8px 20px rgba(0, 40, 74, .22);
}
.uv2-cip.dolu:hover { color: #fff; border-color: var(--uv-mavi); }

.uv2-cipler { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.uv2-temizle-cip {
  display: inline-flex; align-items: center; gap: .5em;
  height: 44px; padding: 0 16px; margin-left: auto;
  background: none; border: 1.5px dashed transparent; border-radius: 999px;
  font: inherit; font-size: .84rem; font-weight: 700; color: var(--uv-soluk);
  cursor: pointer;
  transition: color .2s ease, border-color .2s ease, transform .25s var(--uv-yay);
}
.uv2-temizle-cip:hover { color: var(--uv-mavi); border-color: rgba(0, 120, 215, .3); }
.uv2-temizle-cip:active { transform: scale(.95); }

/* Yapışkan halde çubuk kendini belli eder: gölge derinleşir, kenar maviye çalar.
   BOYUT DEĞİŞMEZ (padding oynasa kaydırma sırasında zıplama olur). */
.uv2-bar { transition: box-shadow .3s ease, border-color .3s ease; }
.uv2-bar.yapisik {
  box-shadow: 0 4px 10px rgba(9, 30, 66, .05), 0 18px 44px rgba(0, 60, 120, .14);
  border-color: rgba(0, 120, 215, .22);
}

/* Sonuç satırı: kutu yerine yumuşak bilgi hapı */
.uv2-sonuc {
  border: none; background: var(--uv-buz-zemin);
  border-radius: 999px; padding: .6em 1.2em;
  font-size: .84rem;
}

@media (max-width: 560px) {
  .uv2-cip { min-height: 46px; flex: 1 1 auto; }
  .uv2-cip-sirala { flex: 1 1 100%; }
  .uv2-temizle-cip { margin-left: 0; min-height: 44px; }
}


/* Gövdeye taşınan karşılaştırma öğeleri .univ2 sınıfını jeton çözümü için
   taşır; kök sınıfın sayfa zemini onlara SIZMASIN. */
.univ2.uv2-kars-serit, .univ2.uv2-kars-panel { background-clip: padding-box; }
.univ2.uv2-kars-panel { background: rgba(9, 30, 66, .58); }
.univ2.uv2-kars-serit { background: rgba(0, 33, 62, .98); }


/* Pencere sistemi olmayan okulun tekil son başvuru satırı */
.ud2-tekil-son {
  margin: .35rem 0 0;
  font-size: .95rem;
  color: var(--uv-govde);
}
.ud2-tekil-son strong { font-family: var(--uv-sayi); font-weight: 700; }


/* ================= BÖLÜM GEREKSİNİM SAYFASI (ub-) ================= */
.ub-hero {
  background: linear-gradient(132deg, #00213e 0%, #003263 55%, #004085 100%);
  color: #fff;
  padding: 6.6rem 0 2.6rem;
  border-radius: 0 0 32px 32px;
}
.ub-hero-metin { max-width: 760px; }
.ub-ustbaslik { font-size: .8rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--uv-buz, #9fc9ef); margin: 0 0 .5rem; }
.ub-hero h1 { color: #fff; font-size: clamp(1.7rem, 3.6vw, 2.6rem); margin: 0 0 .4rem; }
.ub-altbaslik { color: rgba(255, 255, 255, .78); font-size: .98rem; margin: 0; }
.ub-hero .ud2-ozet { max-width: 760px; }
@media (max-width: 700px) { .ub-hero { border-radius: 0 0 22px 22px; padding-top: 5.6rem; } }
.ub-icerik { max-width: 880px; }
.ub-vurgu { font-size: 1.06rem; }
.ub-not { color: var(--uv-soluk); font-size: .93rem; }
.ub-liste { padding-left: 1.15rem; display: grid; gap: .45rem; }
.ub-liste a { color: var(--uv-vurgu, #005A9E); font-weight: 600; text-decoration: none; }
.ub-liste a:hover { text-decoration: underline; }
.ub-tablo-sar { overflow-x: auto; margin: .8rem 0 1rem; }
.ub-tablo { width: 100%; border-collapse: collapse; font-size: .95rem; }
.ub-tablo th { text-align: left; font-size: .72rem; letter-spacing: .07em; text-transform: uppercase; color: var(--uv-soluk); padding: .45rem .8rem .45rem 0; border-bottom: 1px solid var(--uv-cizgi); }
.ub-tablo td { padding: .6rem .8rem .6rem 0; border-bottom: 1px solid var(--uv-cizgi); }
.ub-tablo strong { font-family: var(--uv-sayi); }
.ub-uyari { display: flex; gap: .8rem; align-items: flex-start; background: #fff8ef; border: 1px solid #f0dcbd; border-radius: 14px; padding: .9rem 1rem; margin: 1rem 0; }
.ub-uyari i { color: #b97c19; margin-top: .2rem; }
.ub-uyari p { margin: .25rem 0 0; font-size: .93rem; }
.ub-kaynak p { font-size: .95rem; }
/* Gereksinim sayfası olan bölümün SATIRI linktir (sahip: ayrı link okutma) */
a.ud2-dept { color: inherit; text-decoration: none; }
/* Satırın HER noktasında el imleci: içerideki rozet/geri sayım öğeleri kendi
   imlecini dayatmasın (sahip: tuşlardaki gibi el olsun). */
a.ud2-dept, a.ud2-dept * { cursor: pointer; }
.ud2-dept-linkli:hover { background: rgba(0, 120, 215, .045); }

/* Satır içi görünür tuş: satırın tamamı link, tuş görsel çıpadır */
.ud2-dept-tus {
  grid-column: 1 / -1; justify-self: start;
  display: inline-flex; align-items: center; gap: .45em;
  margin-top: .45rem; padding: .42rem 1rem;
  border: 1.5px solid var(--uv-vurgu, #005A9E); border-radius: 999px;
  font-size: .82rem; font-weight: 700; color: var(--uv-vurgu, #005A9E);
  transition: background .25s ease, color .25s ease;
}
.ud2-dept-tus .ok { font-size: 1.1em; line-height: 1; transition: transform .25s var(--uv-yay); }
a.ud2-dept:hover .ud2-dept-tus { background: var(--uv-vurgu, #005A9E); color: #fff; }
a.ud2-dept:hover .ud2-dept-tus .ok { transform: translateX(3px); }

/* Bölüm sayfası hero fotoğrafı: lacivert degrade fotoğrafın üstünde perde olur */
.ub-hero { position: relative; overflow: hidden; }
.ub-hero-foto { position: absolute; inset: 0; z-index: 0; }
.ub-hero-foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ub-hero-fotolu {
  background: none;
}
.ub-hero-fotolu::before {
  content: ''; position: absolute; inset: 0; z-index: 1;
  background: linear-gradient(132deg, rgba(0, 26, 49, .93) 0%, rgba(0, 42, 82, .82) 55%, rgba(0, 64, 133, .66) 100%);
}
.ub-hero .ud2-hero-ic { position: relative; z-index: 2; }
.ub-hero .uvx-hero-kaynak { position: relative; z-index: 2; }


/* Ücret tamamlama katmanından gelen fiyatların yıl etiketi */
.ud2-fiyat .ucret-yil { display: block; font-size: .68rem; color: var(--uv-soluk); }
