/* Kalistack — etkilesimli ve yerlesim odakli widgetlar */

/* ================= Sekmeli icerik ================= */
.ksx-sekme-kap { padding: 44px 20px; }
.ksx-sekme {
  display: grid; grid-template-columns: 280px minmax(0, 1fr);
  max-width: 1120px; margin: 0 auto;
  border-radius: 18px; overflow: hidden;
  border: 1px solid #E2E8F0;
}
.ksx-liste { display: flex; flex-direction: column; background: #083C64; padding: 12px 0; }
.ksx-dugme {
  position: relative;
  display: flex; align-items: center; gap: 11px;
  padding: 15px 22px; border: 0; background: transparent;
  color: #B9CEE0; font-size: 14.5px; font-weight: 600; font-family: inherit;
  text-align: left; cursor: pointer;
  transition: background .15s ease, color .15s ease;
}
.ksx-dugme::before {
  content: ""; position: absolute; left: 0; top: 8px; bottom: 8px; width: 3px;
  background: transparent; border-radius: 0 3px 3px 0;
}
.ksx-dugme:hover { color: #fff; }
.ksx-dugme.ksx-aktif { background: rgba(255, 255, 255, .08); color: #fff; }
.ksx-dugme.ksx-aktif::before { background: #f5821f; }
.ksx-dugme-ikon { font-size: 15px; width: 18px; flex: 0 0 auto; }
.ksx-dugme-ikon svg { width: 1em; height: 1em; fill: currentColor; }

.ksx-paneller { background: #fff; }
.ksx-panel { padding: 36px 38px; }
.ksx-panel[hidden] { display: none; }
.ksx-fiyat {
  display: inline-flex; align-items: center; height: 24px; padding: 0 10px; margin-bottom: 12px;
  border-radius: 6px; background: #FEF0E4; color: #083C64;
  font-size: 12px; font-weight: 800;
}
.ksx-panel-baslik { margin: 0 0 10px; font-size: 26px; font-weight: 800; color: #083C64; letter-spacing: -.02em; line-height: 1.2; }
.ksx-panel-metin { margin: 0 0 18px; font-size: 15px; line-height: 1.7; color: #5A6B7B; }
.ksx-panel-maddeler { list-style: none; margin: 0 0 22px; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 20px; }
.ksx-panel-madde { position: relative; padding-left: 22px; font-size: 14px; line-height: 1.5; color: #2F4356; }
.ksx-panel-madde::before { content: "\2713"; position: absolute; left: 0; top: 0; color: #f5821f; font-weight: 800; }
.ksx-panel .ksp-btn { background: #f5821f; color: #fff !important; }

@media (max-width: 820px) {
  .ksx-sekme { grid-template-columns: minmax(0, 1fr) !important; }
  .ksx-liste { flex-direction: row; overflow-x: auto; padding: 8px; }
  .ksx-dugme { padding: 11px 15px; white-space: nowrap; border-radius: 8px; }
  .ksx-dugme::before { display: none; }
  .ksx-panel { padding: 26px 22px; }
  .ksx-panel-maddeler { grid-template-columns: minmax(0, 1fr); }
}

/* ================= Karsilastirma tablosu ================= */
.ksx-tablo-kap { padding: 40px 20px 44px; }
.ksx-tablo-sar { max-width: 1020px; margin: 0 auto; overflow-x: auto; }
.ksx-tablo { width: 100%; border-collapse: collapse; font-size: 14px; }
.ksx-tablo thead th {
  background: #083C64; color: #fff;
  padding: 14px 16px; text-align: center; font-weight: 700;
  border-top: 3px solid transparent;
}
.ksx-tablo thead th:first-child { text-align: left; border-radius: 12px 0 0 0; }
.ksx-tablo thead th:last-child { border-radius: 0 12px 0 0; }
.ksx-tablo thead th.ksx-vurgu { border-top-color: #f5821f; }
.ksx-sutun-ad { display: block; font-size: 15px; }
.ksx-sutun-alt { display: block; margin-top: 2px; font-size: 11.5px; font-weight: 600; opacity: .75; }
.ksx-tablo tbody tr { border-bottom: 1px solid #EDF1F6; }
.ksx-tablo tbody th {
  padding: 14px 16px; text-align: left; font-weight: 600; color: #2F4356; background: #fff;
}
.ksx-tablo tbody td { padding: 14px 16px; text-align: center; color: #083C64; font-weight: 600; background: #fff; }
.ksx-tablo tbody td.ksx-vurgu { background: #FEF7F0; }
.ksx-var { color: #1B8A5A; font-size: 16px; font-weight: 800; }
.ksx-yok { color: #C3CAD6; font-size: 17px; }
.ksx-tablo-son td { padding-top: 18px; padding-bottom: 20px; }
.ksx-tablo-btn { height: 40px; padding: 0 20px; font-size: 13px; background: #f5821f; color: #fff !important; }

@media (max-width: 640px) {
  .ksx-tablo { font-size: 13px; }
  .ksx-tablo thead th, .ksx-tablo tbody th, .ksx-tablo tbody td { padding: 11px 10px; }
}

/* ================= Indirim hesaplayici ================= */
.ksx-hesap-kap { padding: 40px 20px 44px; }
.ksx-hesap { max-width: 880px; margin: 0 auto; background: #083C64; border-radius: 18px; padding: 34px; }
.ksx-hesap-baslik { margin: 0 0 6px; font-size: 24px; font-weight: 800; color: #fff; letter-spacing: -.02em; }
.ksx-hesap-aciklama { margin: 0 0 26px; font-size: 14px; color: #A9C4D8; }
.ksx-hesap-alan { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 30px; align-items: center; }
.ksx-hesap-etiket {
  display: block; margin-bottom: 9px;
  font-size: 11.5px; font-weight: 800; letter-spacing: .08em;
  color: #7E9DB8; text-transform: uppercase;
}
.ksx-secenekler { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.ksx-secenekler:last-child { margin-bottom: 0; }
.ksx-secenek {
  height: 38px; padding: 0 16px; border: 0; border-radius: 9px;
  background: rgba(255, 255, 255, .08); color: #C3D6E4;
  font-size: 13.5px; font-weight: 700; font-family: inherit; cursor: pointer;
  transition: background .15s ease, color .15s ease;
}
.ksx-secenek:hover { background: rgba(255, 255, 255, .14); color: #fff; }
.ksx-secenek.ksx-aktif { background: #f5821f; color: #fff; }

.ksx-hesap-sag {
  display: flex; flex-direction: column; align-items: flex-start;
  padding: 22px; border-radius: 14px; background: rgba(255, 255, 255, .06);
}
.ksx-eski { font-size: 14px; color: #7E9DB8; text-decoration: line-through; min-height: 20px; }
.ksx-tutar { font-size: 42px; font-weight: 800; color: #fff; line-height: 1.05; letter-spacing: -.03em; }
.ksx-kazanc { margin-top: 4px; font-size: 13px; font-weight: 700; color: #f5821f; min-height: 18px; }
.ksx-hesap-sag .ksp-btn { margin-top: 16px; width: 100%; justify-content: center; background: #f5821f; color: #fff !important; }
.ksx-hesap-dipnot { margin: 20px 0 0; font-size: 11.5px; color: #7E9DB8; }

@media (max-width: 760px) {
  .ksx-hesap-alan { grid-template-columns: minmax(0, 1fr); }
  .ksx-hesap { padding: 24px 20px; }
  .ksx-tutar { font-size: 34px; }
}

/* ================= Bento mozaik ================= */
.ksy-bento-kap { padding: 40px 20px 44px; }
.ksy-bento {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: 168px; gap: 14px;
  max-width: 1160px; margin: 0 auto;
}
.ksy-kutu {
  display: flex; flex-direction: column; justify-content: flex-end;
  background: #fff; border: 1px solid #E2E8F0; border-radius: 16px;
  padding: 22px; overflow: hidden;
  text-decoration: none !important;
}
a.ksy-kutu:hover { border-color: #C7D6E4; }
.ksy-genis { grid-column: span 2; }
.ksy-uzun  { grid-row: span 2; }
.ksy-buyuk { grid-column: span 2; grid-row: span 2; }
.ksy-ikon { font-size: 22px; margin-bottom: auto; color: #5A6B7B; }
.ksy-ikon svg { width: 1em; height: 1em; fill: currentColor; }
.ksy-ust { display: block; font-size: 11.5px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #5A6B7B; margin-bottom: 6px; }
.ksy-kutu > .ksy-buyuk {
  display: block; font-size: 40px; font-weight: 800; line-height: 1;
  letter-spacing: -.03em; color: #083C64; margin-bottom: 6px;
  grid-column: auto; grid-row: auto;
}
.ksy-baslik { display: block; font-size: 17px; font-weight: 800; color: #083C64; line-height: 1.3; }
.ksy-metin { display: block; margin-top: 6px; font-size: 13.5px; line-height: 1.6; color: #5A6B7B; }

@media (max-width: 760px) {
  .ksy-bento { grid-auto-rows: 150px; }
  .ksy-kutu.ksy-buyuk, .ksy-kutu.ksy-genis { grid-column: span 2; }
  .ksy-kutu.ksy-uzun { grid-row: span 1; }
}

/* ================= Kayan serit ================= */
.ksy-serit { overflow: hidden; background: #083C64; padding: 18px 0; }
.ksy-serit-ic {
  display: flex; width: max-content;
  font-size: 18px; font-weight: 700;
  animation: ksy-kay 38s linear infinite;
}
.ksy-serit--sag .ksy-serit-ic { animation-direction: reverse; }
.ksy-serit:hover .ksy-serit-ic { animation-play-state: paused; }
.ksy-serit-grup { display: flex; align-items: center; }
.ksy-kelime { color: #fff; white-space: nowrap; padding: 0 4px; }
.ksy-ayrac { color: #f5821f; padding: 0 20px; }
@keyframes ksy-kay { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
  .ksy-serit-ic { animation: none; }
}

/* ================= Yapiskan anlati ================= */
.ksy-anlati-kap { padding: 50px 20px; }
.ksy-anlati {
  display: grid; grid-template-columns: 40% minmax(0, 1fr);
  gap: 56px; max-width: 1140px; margin: 0 auto;
  align-items: start;
}
.ksy-sabit { position: sticky; top: 90px; }
.ksy-sabit-ust {
  display: block; margin-bottom: 10px;
  font-size: 12px; font-weight: 800; letter-spacing: .1em;
  color: #f5821f; text-transform: uppercase;
}
.ksy-sabit-baslik { margin: 0 0 14px; font-size: 34px; font-weight: 800; color: #083C64; line-height: 1.18; letter-spacing: -.025em; }
.ksy-sabit-metin { margin: 0; font-size: 15px; line-height: 1.75; color: #5A6B7B; }
.ksy-sabit-gorsel { display: block; width: 100%; height: auto; margin-top: 20px; border-radius: 16px; }

.ksy-bolumler { display: flex; flex-direction: column; gap: 44px; }
.ksy-bolum { position: relative; padding-left: 26px; }
.ksy-bolum::before {
  content: ""; position: absolute; left: 0; top: 6px; bottom: 0; width: 2px;
  background: #E2E8F0; border-radius: 2px;
}
.ksy-bolum:last-child::before { bottom: 12px; }
.ksy-bolum-isaret {
  display: block; margin-bottom: 6px;
  font-size: 13px; font-weight: 800; letter-spacing: .04em; color: #f5821f;
}
.ksy-bolum-baslik { margin: 0 0 8px; font-size: 20px; font-weight: 800; color: #083C64; line-height: 1.3; }
.ksy-bolum-metin { margin: 0; font-size: 15px; line-height: 1.75; color: #5A6B7B; }

@media (max-width: 860px) {
  .ksy-anlati { grid-template-columns: minmax(0, 1fr) !important; gap: 30px; }
  .ksy-sabit { position: static; }
  .ksy-sabit-baslik { font-size: 26px; }
}
/* Kalistack — WordPress Kurulumu widgetlari */

/* ============ Once / Sonra ============ */
.ksw-ba-kap { padding: 40px 20px 44px; }
.ksw-ba {
  position: relative; overflow: hidden;
  max-width: 980px; margin: 0 auto;
  height: 380px; border-radius: 18px;
  --ksw-bol: 50%;
}
.ksw-ba-panel { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; }
.ksw-ba-panel img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ksw-ba-sonra { background: #083C64; }
.ksw-ba-once  { background: #5B6B7B; clip-path: inset(0 calc(100% - var(--ksw-bol)) 0 0); }

.ksw-ba-panel-ic {
  display: flex; flex-direction: column; gap: 8px;
  max-width: 46%; padding: 24px; text-align: center; color: #fff;
}
.ksw-ba-panel-ic strong { font-size: 20px; font-weight: 800; letter-spacing: -.01em; }
.ksw-ba-panel-ic em { font-style: normal; font-size: 13.5px; line-height: 1.6; opacity: .82; }
.ksw-ba-once .ksw-ba-panel-ic { margin-right: auto; margin-left: 4%; }
.ksw-ba-sonra .ksw-ba-panel-ic { margin-left: auto; margin-right: 4%; }

.ksw-ba-etiket {
  position: absolute; top: 16px; z-index: 4;
  height: 26px; padding: 0 12px; display: inline-flex; align-items: center;
  border-radius: 7px; background: rgba(0, 0, 0, .45); color: #fff;
  font-size: 11.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
}
.ksw-ba-etiket--sol { left: 16px; }
.ksw-ba-etiket--sag { right: 16px; }

.ksw-ba-kol {
  position: absolute; top: 0; bottom: 0; z-index: 5;
  left: var(--ksw-bol); width: 3px; margin-left: -1.5px;
  background: #f5821f; pointer-events: none;
}
.ksw-ba-tutamak {
  position: absolute; top: 50%; z-index: 6;
  left: var(--ksw-bol); transform: translate(-50%, -50%);
  width: 44px; height: 44px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: #f5821f; color: #fff; font-size: 18px;
  pointer-events: none;
}
.ksw-ba-surgu {
  position: absolute; inset: 0; z-index: 7;
  width: 100%; height: 100%; margin: 0; padding: 0;
  opacity: 0; cursor: ew-resize; appearance: none; background: transparent;
}
.ksw-ba-surgu:focus-visible { outline: 3px solid #f5821f; outline-offset: 3px; }

@media (max-width: 700px) {
  .ksw-ba { height: 300px; }
  .ksw-ba-panel-ic { max-width: 60%; padding: 16px; }
  .ksw-ba-panel-ic strong { font-size: 16px; }
}

/* ============ Hazirlik listesi ============ */
.ksw-hazir-kap { padding: 40px 20px 44px; }
.ksw-hazir {
  max-width: 820px; margin: 0 auto;
  background: #fff; border: 1px solid #E2E8F0; border-radius: 18px; padding: 32px;
}
.ksw-hazir-baslik { margin: 0 0 6px; font-size: 22px; font-weight: 800; color: #083C64; letter-spacing: -.02em; }
.ksw-hazir-aciklama { margin: 0 0 20px; font-size: 14px; line-height: 1.6; color: #5A6B7B; }

.ksw-ilerleme-sar { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; }
.ksw-ilerleme { flex: 1 1 auto; height: 8px; border-radius: 999px; background: #EDF1F6; overflow: hidden; }
.ksw-ilerleme-dolu { display: block; height: 100%; width: 0; border-radius: 999px; background: #f5821f; transition: width .3s ease; }
.ksw-oran { flex: 0 0 auto; font-size: 13px; font-weight: 800; color: #083C64; }

.ksw-maddeler { display: flex; flex-direction: column; gap: 9px; }
.ksw-madde {
  display: flex; align-items: flex-start; gap: 13px;
  width: 100%; padding: 15px 17px; border: 0; border-radius: 12px;
  background: #F7FAFC; font-family: inherit; text-align: left; cursor: pointer;
  transition: background .15s ease;
}
.ksw-madde:hover { background: #EEF3F8; }
.ksw-madde.ksw-secili { background: #FEF0E4; }
.ksw-kutucuk {
  display: inline-flex; align-items: center; justify-content: center;
  width: 22px; height: 22px; flex: 0 0 auto; margin-top: 1px;
  border-radius: 7px; border: 2px solid #CBD8E4; background: transparent;
  color: transparent; font-size: 12px; font-weight: 800; line-height: 1;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.ksw-madde.ksw-secili .ksw-kutucuk { background: #f5821f; border-color: #f5821f; color: #fff; }
.ksw-madde-metin { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ksw-madde-yazi { font-size: 14.5px; font-weight: 700; color: #083C64; line-height: 1.4; }
.ksw-madde.ksw-secili .ksw-madde-yazi { text-decoration: line-through; text-decoration-color: rgba(8, 60, 100, .35); }
.ksw-madde-not { font-size: 12.5px; color: #7A8C9C; line-height: 1.5; }

.ksw-hazir-sonuc {
  margin: 18px 0 0; padding: 13px 16px; border-radius: 11px;
  background: #E6F4ED; color: #1B6B47;
  font-size: 13.5px; font-weight: 700;
}
.ksw-hazir-sonuc[hidden] { display: none; }
.ksw-hazir .ksp-btn { margin-top: 20px; background: #f5821f; color: #fff !important; }

/* --- Bento: arka plan gorseli ve uzerindeki gecisli katman ---
   Katman rengi/yonu/yogunlugu her kutu icin ayri ayarlanir.
   Tam yogunluk --b-bas noktasina kadar surer, --b-bit noktasinda
   tamamen saydam olur; boylece yazinin oldugu taraf okunakli kalir. */
.ksy-kutu { position: relative; }
.ksy-gorselli {
  background-image: var(--b-img, none);
  background-size: cover;
  background-position: var(--b-konum, center center);
  background-repeat: no-repeat;
  border-color: transparent;
}
.ksy-gorselli::before {
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(
    var(--b-yon, 90deg),
    rgba(var(--b-renk, 8, 12, 24), var(--b-op, .55)) 0%,
    rgba(var(--b-renk, 8, 12, 24), var(--b-op, .55)) var(--b-bas, 35%),
    rgba(var(--b-renk, 8, 12, 24), 0) var(--b-bit, 100%)
  );
}
.ksy-ic { position: relative; z-index: 2; display: flex; flex-direction: column; height: 100%; justify-content: flex-end; }
.ksy-ic .ksy-ikon { margin-bottom: auto; }

/* ============ Yonlendirme sihirbazi ============ */
.ksq-kap { padding: 40px 20px 44px; }
.ksq { max-width: 760px; margin: 0 auto; background: #083C64; border-radius: 18px; padding: 34px; }
.ksq-baslik { margin: 0 0 6px; font-size: 24px; font-weight: 800; color: #fff; letter-spacing: -.02em; }
.ksq-aciklama { margin: 0 0 22px; font-size: 14px; color: #A9C4D8; }

.ksq-ust { display: flex; align-items: center; gap: 14px; margin-bottom: 22px; }
.ksq-adim { flex: 0 0 auto; font-size: 12px; font-weight: 800; color: #7E9DB8; letter-spacing: .04em; }
.ksq-cubuk { flex: 1 1 auto; height: 6px; border-radius: 999px; background: rgba(255, 255, 255, .14); overflow: hidden; }
.ksq-cubuk-dolu { display: block; height: 100%; width: 0; border-radius: 999px; background: #f5821f; transition: width .3s ease; }

.ksq-soru { margin: 0 0 18px; font-size: 20px; font-weight: 700; color: #fff; line-height: 1.35; }
.ksq-secenekler { display: flex; flex-direction: column; gap: 10px; }
.ksq-secenek {
  display: block; width: 100%; text-align: left;
  padding: 16px 18px; border: 0; border-radius: 12px;
  background: rgba(255, 255, 255, .08); color: #E6EDF4;
  font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer;
  transition: background .15s ease, color .15s ease;
}
.ksq-secenek:hover { background: #f5821f; color: #fff; }

.ksq-sonuc { padding: 24px; border-radius: 14px; background: rgba(255, 255, 255, .07); }
.ksq-rozet {
  display: inline-flex; align-items: center; height: 22px; padding: 0 10px; margin-bottom: 10px;
  border-radius: 6px; background: #f5821f; color: #fff;
  font-size: 11px; font-weight: 800; letter-spacing: .05em;
}
.ksq-sonuc-baslik { margin: 0 0 8px; font-size: 21px; font-weight: 800; color: #fff; line-height: 1.3; }
.ksq-sonuc-metin { margin: 0 0 18px; font-size: 14.5px; line-height: 1.65; color: #C3D6E4; }
.ksq-sonuc .ksp-btn { background: #f5821f; color: #fff !important; }
.ksq-bastan {
  display: inline-block; margin-top: 14px; padding: 0;
  border: 0; background: transparent; color: #A9C4D8;
  font-size: 13px; font-weight: 600; font-family: inherit;
  text-decoration: underline; cursor: pointer;
}
.ksq-bastan:hover { color: #fff; }

@media (max-width: 640px) {
  .ksq { padding: 24px 20px; }
  .ksq-soru { font-size: 17px; }
}

/* ============ Filtreli galeri ============ */
.ksg-kap { padding: 40px 20px 44px; }
.ksg { max-width: 1160px; margin: 0 auto; }
.ksg-filtreler { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.ksg-filtre {
  height: 36px; padding: 0 16px; border: 0; border-radius: 999px;
  background: #EEF3F8; color: #4A5B6B;
  font-size: 13px; font-weight: 700; font-family: inherit; cursor: pointer;
  transition: background .15s ease, color .15s ease;
}
.ksg-filtre:hover { background: #E0E9F2; }
.ksg-filtre.ksg-aktif { background: #083C64; color: #fff; }

.ksg-izgara { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ksg-kart {
  position: relative; display: block; overflow: hidden;
  height: 230px; border-radius: 14px;
  background-color: #083C64; background-size: cover; background-position: center;
  text-decoration: none !important;
}
.ksg-kart::after {
  content: ""; position: absolute; inset: 0;
  background: rgba(8, 20, 40, .42);
  transition: background .18s ease;
}
a.ksg-kart:hover::after { background: rgba(8, 20, 40, .58); }
.ksg-kart-ic {
  position: absolute; inset: auto 0 0 0; z-index: 2;
  display: flex; flex-direction: column; align-items: flex-start; gap: 5px;
  padding: 18px;
}
.ksg-kart-etiket {
  display: inline-flex; align-items: center; height: 21px; padding: 0 9px; margin-bottom: 3px;
  border-radius: 6px; background: #f5821f; color: #fff;
  font-size: 10.5px; font-weight: 800; letter-spacing: .04em;
}
.ksg-kart-baslik { font-size: 17px; font-weight: 800; color: #fff; line-height: 1.3; }
.ksg-kart-not { font-size: 12.5px; color: #D6E2EC; line-height: 1.5; }
.ksg-kart[hidden] { display: none !important; }

/* ============ Kaynak listesi ============ */
.ksl-kap { padding: 40px 20px 44px; }
.ksl { max-width: 1060px; margin: 0 auto; }
.ksl-ust { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; }
.ksl-arama {
  position: relative; flex: 1 1 auto;
  display: flex; align-items: center;
  background: #fff; border: 1px solid #D8E2EC; border-radius: 12px;
  padding: 0 16px; height: 50px;
}
.ksl-arama:focus-within { border-color: #f5821f; box-shadow: 0 0 0 3px rgba(245, 130, 31, .14); }
.ksl-arama-ikon { color: #8A9BAC; font-size: 15px; margin-right: 11px; }
.ksl-arama input {
  flex: 1 1 auto; border: 0; outline: 0; background: transparent;
  font-size: 14.5px; font-family: inherit; color: #083C64;
}
.ksl-arama input::placeholder { color: #9AABBB; }
.ksl-sayac { flex: 0 0 auto; font-size: 13px; font-weight: 700; color: #7A8C9C; }

.ksl-filtreler { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.ksl-filtre {
  height: 34px; padding: 0 15px; border: 0; border-radius: 999px;
  background: #EEF3F8; color: #4A5B6B;
  font-size: 12.5px; font-weight: 700; font-family: inherit; cursor: pointer;
  transition: background .15s ease, color .15s ease;
}
.ksl-filtre:hover { background: #E0E9F2; }
.ksl-filtre.ksl-aktif { background: #083C64; color: #fff; }

.ksl-liste { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.ksl-kart {
  display: flex; align-items: flex-start; gap: 14px;
  background: #fff; border: 1px solid #E2E8F0; border-radius: 14px;
  padding: 20px 22px; text-decoration: none !important;
  transition: border-color .15s ease;
}
a.ksl-kart:hover { border-color: #C7D6E4; }
.ksl-kart[hidden] { display: none !important; }
.ksl-ikon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; flex: 0 0 auto;
  border-radius: 11px; background: #FEF0E4; color: #f5821f; font-size: 16px;
}
.ksl-ikon svg { width: 1em; height: 1em; fill: currentColor; }
.ksl-govde { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ksl-baslik { font-size: 15.5px; font-weight: 800; color: #083C64; line-height: 1.35; }
.ksl-ozet { font-size: 13.5px; line-height: 1.55; color: #5A6B7B; }
.ksl-meta { margin-top: 3px; font-size: 12px; font-weight: 600; color: #7A8C9C; }
.ksl-meta em { font-style: normal; opacity: .6; }

.ksl-bos {
  margin: 20px 0 0; padding: 22px; border-radius: 14px;
  background: #F5F8FB; border: 1px dashed #CBD8E4;
  font-size: 14px; color: #5A6B7B; text-align: center;
}
.ksl-bos[hidden] { display: none !important; }

@media (max-width: 640px) {
  .ksl-ust { flex-direction: column; align-items: stretch; gap: 10px; }
  .ksl-sayac { text-align: right; }
}

/* ============ Terim sozlugu ============ */
.ksz-kap { padding: 40px 20px 44px; }
.ksz { max-width: 900px; margin: 0 auto; }
.ksz-ust { margin-bottom: 16px; }
.ksz-harfler { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 22px; }
.ksz-harf {
  width: 34px; height: 34px; border: 0; border-radius: 9px;
  background: #EEF3F8; color: #4A5B6B;
  font-size: 13px; font-weight: 800; font-family: inherit; cursor: pointer;
  transition: background .15s ease, color .15s ease;
}
.ksz-harf:hover { background: #E0E9F2; }
.ksz-harf.ksz-aktif { background: #f5821f; color: #fff; }

.ksz-gruplar { display: flex; flex-direction: column; gap: 26px; }
.ksz-grup[hidden] { display: none !important; }
.ksz-grup-harf {
  display: block; margin-bottom: 8px;
  font-size: 20px; font-weight: 800; color: #f5821f; letter-spacing: -.01em;
}
.ksz-terimler { border-top: 1px solid #EDF1F6; }
.ksz-terim {
  display: flex; flex-direction: column; gap: 3px;
  padding: 18px 20px; border-bottom: 1px solid #EDF1F6;
}
.ksz-terim[hidden] { display: none !important; }
.ksz-terim-ad { font-size: 15.5px; font-weight: 800; color: #083C64; }
.ksz-terim-tanim { font-size: 14px; line-height: 1.65; color: #5A6B7B; }

/* ============ Harita + iletisim ============ */
.ksm-kap { padding: 40px 20px 44px; }
.ksm {
  display: grid; grid-template-columns: minmax(0, 1fr) var(--ksm-kart, 380px);
  gap: 20px; max-width: 1120px; margin: 0 auto; align-items: stretch;
}
.ksm--sag { grid-template-columns: var(--ksm-kart, 380px) minmax(0, 1fr); }
.ksm--sag .ksm-harita { order: 2; }
.ksm--sag .ksm-kart { order: 1; }

.ksm-harita { position: relative; min-height: 420px; border-radius: 16px; overflow: hidden; }
.ksm-harita iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; }
.ksm-tutucu {
  position: absolute; inset: 0;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px;
  background: #EEF3F8; color: #7A8C9C;
  font-size: 14px; font-weight: 600; text-align: center; padding: 20px;
}
.ksm-tutucu i { font-size: 32px; opacity: .5; }

.ksm-kart {
  display: flex; flex-direction: column;
  background: #083C64; border-radius: 16px; padding: 30px;
}
.ksm-ust {
  display: block; margin-bottom: 8px;
  font-size: 11.5px; font-weight: 800; letter-spacing: .1em;
  color: #f5821f; text-transform: uppercase;
}
.ksm-baslik { margin: 0 0 22px; font-size: 24px; font-weight: 800; color: #fff; letter-spacing: -.02em; line-height: 1.2; }
.ksm-satirlar { display: flex; flex-direction: column; gap: 18px; }
.ksm-satir { display: flex; align-items: flex-start; gap: 13px; }
.ksm-ikon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 38px; height: 38px; flex: 0 0 auto;
  border-radius: 11px; background: rgba(255, 255, 255, .09); color: #f5821f; font-size: 15px;
}
.ksm-ikon svg { width: 1em; height: 1em; fill: currentColor; }
.ksm-metin { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ksm-etiket { font-size: 11.5px; font-weight: 700; letter-spacing: .06em; color: #7E9DB8; text-transform: uppercase; }
.ksm-deger { font-size: 14.5px; font-weight: 600; color: #fff; line-height: 1.5; text-decoration: none !important; word-break: break-word; }
a.ksm-deger:hover { color: #f5821f; }

@media (max-width: 860px) {
  .ksm, .ksm--sag { grid-template-columns: minmax(0, 1fr) !important; }
  .ksm--sag .ksm-harita, .ksm--sag .ksm-kart { order: 0; }
  .ksm-harita { min-height: 300px; }
}

/* ============ Calisma saatleri ============ */
.ksh-saat-kap { padding: 40px 20px 44px; }
.ksh-saat {
  max-width: 620px; margin: 0 auto;
  background: #fff; border: 1px solid #E2E8F0; border-radius: 16px; padding: 28px 30px;
}
.ksh-saat-ust { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.ksh-saat-baslik { margin: 0; font-size: 19px; font-weight: 800; color: #083C64; letter-spacing: -.01em; }
.ksh-durum {
  display: inline-flex; align-items: center; gap: 7px;
  height: 28px; padding: 0 12px; border-radius: 999px;
  font-size: 12.5px; font-weight: 800;
}
.ksh-durum[hidden] { display: none !important; }
.ksh-durum::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.ksh-durum--acik { background: #E6F4ED; color: #1B8A5A; }
.ksh-durum--kapali { background: #FBEDE9; color: #B4472F; }
.ksh-saat-not { margin: 10px 0 0; font-size: 13px; color: #7A8C9C; }
.ksh-saat-not[hidden] { display: none !important; }

.ksh-gunler { margin-top: 20px; }
.ksh-gun {
  display: flex; align-items: center; justify-content: space-between; gap: 14px;
  padding: 13px 12px; margin: 0 -12px;
  border-bottom: 1px solid #EDF1F6; border-radius: 9px;
}
.ksh-gun:last-child { border-bottom: 0; }
.ksh-gun.ksh-bugun { background: #FEF0E4; }
.ksh-gun-ad { font-size: 14px; font-weight: 600; color: #2F4356; }
.ksh-gun.ksh-bugun .ksh-gun-ad { font-weight: 800; }
.ksh-gun-saat { font-size: 14px; font-weight: 700; color: #083C64; white-space: nowrap; }
