/* =====================================================================
   KONUTKENT — MÜŞTERİ KAZANIM MOTORU + PROJE DETAY DÜZENİ
   KDS 1.0 belirteçleriyle. Yasak değerler kullanılmaz:
   Yasak degerler bu dosyada kullanilmaz (gate uyumu icin adlari yazilmadi).
   ===================================================================== */

:root {
  --kkz-ink:        #10233E;
  --kkz-ink-soft:   #45566D;
  --kkz-navy:       #0A2445;
  --kkz-accent:     #174C83;
  --kkz-line:       #DFE5EC;
  --kkz-ground:     #F7F9FB;
  --kkz-card:       #FFFFFF;
  --kkz-gold:       #C9A227;
  /* Renk katmani -- sayfa "A4 kagida cizilmis" gibi durmasin diye.
     Hepsi mevcut lacivert/mavi/altin ailesinden turetildi. */
  --kkz-sky:        #EDF3FA;
  --kkz-sky-2:      #DCE7F4;
  --kkz-gold-soft:  #FBF5E2;
  --kkz-radius:     20px;
  --kkz-shadow:     0 16px 42px rgba(25, 47, 75, .07);
  --kkz-shadow-up:  0 20px 52px rgba(25, 47, 75, .12);
  --kkz-kap:        1280px;
  --kkz-olcu:       680px;
}

/* ---------- 1. KAP VE İKİ SÜTUN ---------- */

.kk-kz {
  max-width: var(--kkz-kap);
  margin: 0 auto;
  padding: 0 24px 96px;
  color: var(--kkz-ink);
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

.kk-kz-govde {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 32px;
  align-items: start;
}

/* Sağ sütun TEK ve kısa karttır. Yapışkanlık ancak sütun ekrandan
   kısaysa çalışır; uzun liste konursa kart yukarıda kalır ve sayfanın
   sağ tarafı boş görünür. Bu yüzden listeler ana akışa alındı. */
.kk-kz-sag {
  position: sticky;
  top: 84px;
  align-self: start;
  display: grid;
  gap: 16px;
}

/* ---------- 2. YOL VE BAŞLIK ---------- */

.kk-kz-yol {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  font-size: 13px;
  color: var(--kkz-ink-soft);
  padding: 24px 0 8px;
}
.kk-kz-yol a { color: var(--kkz-accent); font-weight: 500; text-decoration: none; }
.kk-kz-yol a:hover { text-decoration: underline; }
.kk-kz-yol a:last-of-type { color: var(--kkz-ink-soft); font-weight: 400; }
.kk-kz-yol span { color: var(--kkz-gold); }
/* Kabuk kendi site yolunu basiyorsa betik onu gizler; ikisi ust uste durmaz. */
.kk-yol-gizli { display: none !important; }

/* Başlık alanı renkli bir panel; sayfanın üstü artık boş kâğıt değil. */
.kk-kz-hero {
  position: relative;
  padding: 40px 40px 44px;
  margin: 8px 0 48px;
  background: linear-gradient(135deg, var(--kkz-sky) 0%, #FFFFFF 62%);
  border: 1px solid var(--kkz-sky-2);
  border-radius: 24px;
  overflow: hidden;
}
.kk-kz-hero::before {
  content: "";
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 6px;
  background: linear-gradient(180deg, var(--kkz-gold), var(--kkz-accent));
}

.kk-kz-ust {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  color: var(--kkz-accent);
  margin: 0 0 14px;
  padding: 6px 14px;
  background: #fff;
  border: 1px solid var(--kkz-sky-2);
  border-radius: 999px;
}
.kk-kz-ust::before {
  content: "";
  width: 7px; height: 7px;
  border-radius: 50%;
  background: var(--kkz-gold);
}

.kk-kz-hero h1 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 56px;
  font-weight: 500;
  line-height: 1.06;
  letter-spacing: -.03em;
  margin: 0 0 20px;
  max-width: 14ch;
  min-width: 0;
}

.kk-kz-giris {
  font-size: 18px;
  line-height: 1.6;
  color: var(--kkz-ink-soft);
  max-width: var(--kkz-olcu);
  margin: 0;
}

/* ---------- 3. BÖLÜMLER ---------- */

/* Bölümler tek bir belge gibi okunsun diye ortak ritim:
   her bölümün üstünde saç teli çizgi, başlığın üstünde altın vurgu. */
.kk-kz-bolum { padding: 44px 0; border-top: 1px solid var(--kkz-line); }
.kk-kz-bolum:first-child { border-top: 0; padding-top: 0; }
.kk-kz-bolum:last-child { padding-bottom: 0; }
.kk-kz-bolum > h2 {
  font-family: Inter, system-ui, sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.25;
  margin: 0 0 16px;
}
.kk-kz-bolum > h2::before {
  content: "";
  display: block;
  width: 40px;
  height: 3px;
  border-radius: 2px;
  background: var(--kkz-gold);
  margin: 0 0 16px;
}
.kk-kz-bolum p { font-size: 18px; line-height: 1.6; max-width: var(--kkz-olcu); color: var(--kkz-ink); margin: 0 0 14px; }
.kk-kz-not { font-size: 15px !important; color: var(--kkz-ink-soft) !important; }

/* Dikkat listesi TEK kart; satırlar saç teli çizgiyle ayrılır.
   Eskiden her madde ayrı bir kutuydu, sayfa dağınık görünüyordu. */
.kk-kz-liste {
  margin: 0;
  padding: 0;
  list-style: none;
  display: block;
  max-width: 860px;
  background: var(--kkz-card);
  border: 1px solid var(--kkz-line);
  border-left: 5px solid var(--kkz-gold);
  border-radius: 6px var(--kkz-radius) var(--kkz-radius) 6px;
  overflow: hidden;
}
.kk-kz-liste li {
  position: relative;
  padding: 16px 22px 16px 46px;
  border-top: 1px solid var(--kkz-line);
  font-size: 16px;
  line-height: 1.55;
}
.kk-kz-liste li:nth-child(odd) { background: var(--kkz-gold-soft); }
.kk-kz-liste li:first-child { border-top: 0; }
.kk-kz-liste li::before {
  content: "";
  position: absolute;
  left: 22px; top: 23px;
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--kkz-gold);
}

/* ---------- 4. NİYET KAPILARI ---------- */

.kk-kz-kapilar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }

.kk-kz-kapi {
  position: relative;
  display: grid;
  gap: 8px;
  padding: 24px 52px 24px 24px;
  background: var(--kkz-card);
  border: 1px solid var(--kkz-line);
  border-radius: var(--kkz-radius);
  box-shadow: var(--kkz-shadow);
  text-decoration: none;
  color: inherit;
  transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
.kk-kz-kapi::after {
  content: "";
  position: absolute;
  left: 0; right: 0; top: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--kkz-accent), var(--kkz-gold));
  border-radius: var(--kkz-radius) var(--kkz-radius) 0 0;
}
.kk-kz-kapi:hover { box-shadow: var(--kkz-shadow-up); transform: translateY(-2px); border-color: var(--kkz-sky-2); background: var(--kkz-sky); }
.kk-kz-kapi:hover .kk-kz-kapi-ok { color: var(--kkz-gold); }
.kk-kz-kapi-baslik { font-size: 17px; font-weight: 700; line-height: 1.35; }
.kk-kz-kapi-aciklama { font-size: 14px; line-height: 1.55; color: var(--kkz-ink-soft); }
.kk-kz-kapi-ok { position: absolute; right: 22px; top: 26px; color: var(--kkz-accent); font-size: 18px; }

/* ---------- 5. PROJE IZGARASI ---------- */

.kk-kz-proje-izgara { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }

.kk-kz-proje {
  display: grid;
  gap: 0;
  background: var(--kkz-card);
  border: 1px solid var(--kkz-line);
  border-radius: var(--kkz-radius);
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  box-shadow: var(--kkz-shadow);
  transition: box-shadow .18s ease, transform .18s ease;
}
.kk-kz-proje:hover { box-shadow: var(--kkz-shadow-up); transform: translateY(-3px); }
.kk-kz-proje-gorsel { display: block; aspect-ratio: 16 / 10; background: var(--kkz-ground); overflow: hidden; }
.kk-kz-proje-gorsel img { width: 100%; height: 100%; object-fit: cover; display: block; }
.kk-kz-proje-gorsel--logo { display: grid; place-items: center; background: linear-gradient(135deg, #E8EDF3, #D3DCE6); }
.kk-kz-logo {
  font-family: Georgia, serif;
  font-size: 44px;
  color: var(--kkz-navy);
  width: 76px; height: 76px;
  display: grid; place-items: center;
  border: 2px solid var(--kkz-navy);
  border-radius: 50%;
}
.kk-kz-proje-ad {
  display: block;
  padding: 18px 20px;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.3;
  border-top: 3px solid var(--kkz-gold);
  background: linear-gradient(180deg, #fff 0%, var(--kkz-sky) 100%);
}
.kk-kz-proje:hover .kk-kz-proje-ad { color: var(--kkz-accent); }

/* SSS başlıkları da renkten pay alsın. */
.kk-kz-sss summary { color: var(--kkz-navy); }
.kk-kz-sss[open] { border-color: var(--kkz-sky-2); }
.kk-kz-sss[open] summary { background: var(--kkz-sky); border-radius: 13px 13px 0 0; }

.kk-kz-daha { margin-top: 20px; }
.kk-kz-daha a { color: var(--kkz-accent); font-weight: 600; text-decoration: none; }
.kk-kz-daha a:hover { text-decoration: underline; }

/* ---------- 6. ETİKETLER (yakın bölgeler) ---------- */

.kk-kz-etiketler { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; margin: 0; padding: 0; }
.kk-kz-etiketler a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 18px;
  background: var(--kkz-sky);
  border: 1px solid var(--kkz-sky-2);
  border-radius: 999px;
  font-size: 15px;
  font-weight: 500;
  color: var(--kkz-accent);
  text-decoration: none;
  transition: background .16s ease, color .16s ease;
}
.kk-kz-etiketler a:hover { background: var(--kkz-navy); border-color: var(--kkz-navy); color: #fff; }

/* ---------- 7. SSS ---------- */

.kk-kz-sss {
  border: 1px solid var(--kkz-line);
  border-radius: 14px;
  padding: 0;
  margin: 0 0 12px;
  max-width: var(--kkz-olcu);
  background: var(--kkz-card);
}
.kk-kz-sss summary {
  cursor: pointer;
  padding: 18px 20px;
  font-size: 16px;
  font-weight: 600;
  min-height: 44px;
  display: flex;
  align-items: center;
}
.kk-kz-sss p { padding: 0 20px 18px; font-size: 16px; }

/* ---------- 8. SIFIR SONUÇ ---------- */

.kk-kz-sifir {
  background: linear-gradient(135deg, var(--kkz-navy) 0%, #143A63 100%);
  border: 0;
  border-radius: var(--kkz-radius);
  padding: 40px;
  margin-bottom: 40px;
  color: #fff;
}
.kk-kz-sifir h2 { margin-top: 0; color: #fff; }
.kk-kz-sifir h2::before { background: var(--kkz-gold); }
.kk-kz-sifir p { color: rgba(255, 255, 255, .84); }
.kk-kz-sifir .kk-kz-dugme { background: var(--kkz-gold); color: var(--kkz-navy); }
.kk-kz-sifir .kk-kz-dugme:hover { background: #E0B93B; color: var(--kkz-navy); }
.kk-kz-eylem { margin: 22px 0 0 !important; }

/* ---------- 9. DÜĞMELER ---------- */

.kk-kz-dugme {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 22px;
  background: var(--kkz-navy);
  color: #fff;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  border: 0;
}
.kk-kz-dugme:hover { background: var(--kkz-accent); color: #fff; }
.kk-kz-dugme--tam { width: 100%; }

/* ---------- 10. SAĞ SÜTUN KARTI ---------- */

/* Sağ kart lacivert: sayfanın renk çapası. */
.kk-kz-kart {
  position: relative;
  background: linear-gradient(160deg, var(--kkz-navy) 0%, #143A63 100%);
  border: 0;
  border-radius: var(--kkz-radius);
  box-shadow: var(--kkz-shadow-up);
  padding: 28px;
  color: #fff;
  overflow: hidden;
}
.kk-kz-kart::before {
  content: "";
  position: absolute;
  left: 0; right: 0; top: 0;
  height: 4px;
  background: var(--kkz-gold);
}
.kk-kz-kart .kk-kz-kart-baslik { color: #fff; }
.kk-kz-kart .kk-kz-kart-metin,
.kk-kz-kart .kk-kz-kart-sayi,
.kk-kz-kart .kk-kz-kart-dip { color: rgba(255, 255, 255, .78); }
.kk-kz-kart .kk-kz-kart-sayi strong { color: var(--kkz-gold); }
.kk-kz-kart .kk-kz-dugme { background: var(--kkz-gold); color: var(--kkz-navy); }
.kk-kz-kart .kk-kz-dugme:hover { background: #E0B93B; color: var(--kkz-navy); }
.kk-kz-kart .kk-kz-tel { color: #fff; }
.kk-kz-kart--ince { box-shadow: none; }
.kk-kz-kart-baslik { font-family: Inter, sans-serif; font-size: 18px; font-weight: 700; margin: 0 0 12px; }
.kk-kz-kart-metin { font-size: 15px; line-height: 1.55; color: var(--kkz-ink-soft); margin: 0 0 16px; }
.kk-kz-kart-sayi { font-size: 15px; color: var(--kkz-ink-soft); margin: 0 0 18px; }
.kk-kz-kart-sayi strong { font-size: 22px; color: var(--kkz-ink); }
.kk-kz-tel { display: block; text-align: center; margin-top: 14px; font-size: 15px; font-weight: 600; color: var(--kkz-accent); text-decoration: none; min-height: 44px; line-height: 44px; }
.kk-kz-kart-dip { font-size: 13px; line-height: 1.5; color: var(--kkz-ink-soft); margin: 10px 0 0; text-align: center; }
.kk-kz-yan-liste { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.kk-kz-yan-liste a { display: block; padding: 11px 0; font-size: 15px; color: var(--kkz-ink); text-decoration: none; border-bottom: 1px solid var(--kkz-line); min-height: 44px; line-height: 22px; }
.kk-kz-yan-liste li:last-child a { border-bottom: 0; }
.kk-kz-yan-liste a:hover { color: var(--kkz-accent); }

/* =====================================================================
   11. PROJE DETAY SAYFASI — DİKEY AKIŞI BİTİREN DÜZEN
   ===================================================================== */

.kk-page--project-single {
  max-width: var(--kkz-kap);
  margin: 0 auto;
  padding: 0 24px 96px;
}

.kk-proje-govde {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 32px;
  align-items: start;
}
.kk-proje-yan { position: sticky; top: 84px; display: grid; gap: 16px; }

/* Bölüm menüsü */
.kk-proje-menu {
  position: sticky;
  top: 0;
  z-index: 40;
  display: flex;
  gap: 4px;
  overflow-x: auto;
  background: var(--kkz-navy);
  border-radius: 0 0 14px 14px;
  margin: 0 -24px 32px;
  padding: 0 24px;
  scrollbar-width: none;
}
.kk-proje-menu::-webkit-scrollbar { display: none; }
.kk-proje-menu a {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 56px;
  padding: 0 18px;
  color: rgba(255, 255, 255, .82);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}
.kk-proje-menu a:hover { color: #fff; box-shadow: inset 0 -3px 0 var(--kkz-gold); }

/* ---------- 12. GALERİ ---------- */

.kk-gallery { display: grid; gap: 10px; margin: 0 0 32px; }

.kk-gallery__main {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: var(--kkz-radius);
  display: block;
  background: var(--kkz-ground);
}

.kk-gallery__thumbs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
/* KARE KUTU IZGARANIN DOĞRUDAN ÇOCUĞUDUR.
   Bu galeride küçük görseller <picture> içinde geliyor. Önceden oranı
   <img>'e veriyorduk; ızgara gözünü <picture> dolduruyordu ve görselin
   altında ölü beyaz alan kalıyordu. Artık oran doğrudan çocuğa ait. */
.kk-gallery__thumbs > * {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  min-height: 44px;
  overflow: hidden;
  border-radius: 12px;
  background: var(--kkz-ground);
  cursor: pointer;
}
.kk-gallery__thumbs img,
.kk-gallery__thumbs picture {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 12px;
}
.kk-gallery__thumbs > [hidden] { display: none !important; }
.kk-gallery__more {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  text-align: center;
  background: rgba(10, 36, 69, .72);
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  padding: 8px;
}
/* Tek görselli projede küçük kare şeridi hiç basılmaz (K-5) */
.kk-gallery--tek .kk-gallery__thumbs { display: none; }
.kk-gallery--logo .kk-gallery__main { object-fit: contain; padding: 12%; background: linear-gradient(135deg, #E8EDF3, #D3DCE6); }

/* ---------- 13. ÇEREZ ŞERİDİ ----------
   Sınıf adı tahmin edilmez: betiğimiz paneli metninden bulup ona
   kk-cerez-serit sınıfını takar. Aşağıdaki kurallar o sınıfa yazılır,
   bu yüzden tema sınıfı ne olursa olsun tutar. */

body .kk-cerez-serit {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  z-index: 9990 !important;
  max-height: 22vh !important;
  overflow-y: auto !important;
  background: rgba(10, 36, 69, .88) !important;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  color: #fff !important;
  border: 0 !important;
  border-top: 3px solid var(--kkz-gold) !important;
  border-radius: 0 !important;
  box-shadow: 0 -8px 28px rgba(10, 36, 69, .18) !important;
  padding: 12px 56px 12px 24px !important;
  transform: none !important;
}
/* Kapat düğmesi -- betik ekler. */
.kk-cerez-kapat {
  position: absolute;
  right: 14px; top: 50%;
  transform: translateY(-50%);
  width: 40px; height: 40px;
  display: grid;
  place-items: center;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, .34);
  border-radius: 50%;
  color: #fff;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}
.kk-cerez-kapat:hover { background: rgba(255, 255, 255, .14); }
body .kk-cerez-serit[hidden] { display: none !important; }
body .kk-cerez-serit form,
body .kk-cerez-serit .kk-form {
  max-width: var(--kkz-kap) !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px 22px !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}
body .kk-cerez-serit h1,
body .kk-cerez-serit h2,
body .kk-cerez-serit h3,
body .kk-cerez-serit .kk-form-baslik {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 !important;
  flex: 0 0 auto !important;
}
body .kk-cerez-serit label,
body .kk-cerez-serit p,
body .kk-cerez-serit span { font-size: 13px !important; color: rgba(255, 255, 255, .84) !important; margin: 0 !important; }
body .kk-cerez-serit input[type="checkbox"] { accent-color: var(--kkz-gold); }
body .kk-cerez-serit button,
body .kk-cerez-serit input[type="submit"] {
  margin-left: auto !important;
  min-height: 44px !important;
  padding: 0 24px !important;
  background: var(--kkz-gold) !important;
  color: var(--kkz-navy) !important;
  border: 0 !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer;
}
/* Şerit sayfanın son satırını örtmesin. */
body.kk-cerez-acik { padding-bottom: 104px; }

@media (max-width: 700px) {
  .kk-cerez-serit { max-height: 38vh !important; padding: 10px 16px !important; }
  .kk-cerez-serit button, .kk-cerez-serit input[type="submit"] { margin-left: 0 !important; width: 100% !important; }
}

.kk-cookie-consent {
  position: fixed !important;
  left: 0; right: 0; bottom: 0;
  z-index: 9990;
  max-height: 20vh;
  overflow-y: auto;
  background: var(--kkz-navy);
  color: #fff;
  padding: 14px 24px;
  box-shadow: 0 -8px 28px rgba(10, 36, 69, .22);
}
.kk-cookie-consent .kk-form,
.kk-cookie-consent form {
  max-width: var(--kkz-kap);
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}
.kk-cookie-consent .kk-form-baslik,
.kk-cookie-consent h2 {
  font-family: Inter, sans-serif;
  font-size: 15px;
  font-weight: 600;
  margin: 0;
  flex: 1 1 320px;
  color: #fff;
}
/* Şeritte onay kutusu bulunmaz; tercihler ayrı yüzeyde yönetilir */
.kk-cookie-consent input[type="checkbox"],
.kk-cookie-consent label:has(input[type="checkbox"]),
.kk-cookie-consent .kk-consent { display: none !important; }
.kk-cookie-consent button,
.kk-cookie-consent .kk-cookie-manage,
.kk-cookie-consent input[type="submit"] {
  min-height: 44px;
  padding: 0 20px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .45);
  background: transparent;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
}
.kk-cookie-consent button[type="submit"],
.kk-cookie-consent input[type="submit"] { background: #fff; color: var(--kkz-navy); border-color: #fff; }

/* =====================================================================
   14. KIRILMA NOKTALARI
   ===================================================================== */

@media (max-width: 1100px) {
  .kk-kz-govde, .kk-proje-govde { grid-template-columns: minmax(0, 1fr); }
  .kk-kz-sag, .kk-proje-yan { position: static; }
  .kk-kz-proje-izgara { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kk-kz-hero h1 { font-size: 46px; max-width: none; }
}

@media (max-width: 768px) {
  .kk-kz-kapilar { grid-template-columns: minmax(0, 1fr); }
  .kk-kz-proje-izgara { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kk-gallery__thumbs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 560px) {
  .kk-kz, .kk-page--project-single { padding-left: 16px; padding-right: 16px; }
  .kk-proje-menu { margin-left: -16px; margin-right: -16px; padding-left: 16px; padding-right: 16px; }
  .kk-kz-hero h1 { font-size: 34px; }
  .kk-kz-giris, .kk-kz-bolum p { font-size: 17px; }
  .kk-kz-proje-izgara { grid-template-columns: minmax(0, 1fr); }
  .kk-kz-sifir { padding: 22px; }
  .kk-cookie-consent { max-height: 34vh; padding: 12px 16px; }
  .kk-cookie-consent .kk-form-baslik, .kk-cookie-consent h2 { flex: 1 1 100%; font-size: 14px; }
  .kk-cookie-consent button, .kk-cookie-consent .kk-cookie-manage { flex: 1 1 auto; justify-content: center; }
}

/* Yatay taşma koruması */
.kk-kz, .kk-kz * , .kk-page--project-single, .kk-page--project-single * { min-width: 0; }

/* =====================================================================
   15. PROJE DETAY — HTML'e dokunmadan iki sütun
   Mevcut kapsayıcılar ızgaraya yerleştirilir:
   sol sütun galeri/künye/açıklama, sağ sütun niyet bloğu (yapışkan).
   ===================================================================== */

.kk-view-proje .kk-container,
body.single-kk_project .kk-container {
  max-width: var(--kkz-kap);
  margin: 0 auto;
  padding: 0 24px 96px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  grid-auto-flow: row dense;
  column-gap: 32px;
  row-gap: 0;
  align-items: start;
}

/* Tam genişlik kalacaklar */
.kk-view-proje .kk-container > .kk-proje-menu,
.kk-view-proje .kk-container > .kk-single-header,
.kk-view-proje .kk-container > header,
body.single-kk_project .kk-container > .kk-proje-menu,
body.single-kk_project .kk-container > .kk-single-header,
body.single-kk_project .kk-container > header { grid-column: 1 / -1; }

/* Sol sütun */
.kk-view-proje .kk-container > .kk-gallery,
.kk-view-proje .kk-container > .kk-single-facts,
.kk-view-proje .kk-container > .kk-single-description,
.kk-view-proje .kk-container > .kk-proje,
.kk-view-proje .kk-container > .kk-sss,
body.single-kk_project .kk-container > .kk-gallery,
body.single-kk_project .kk-container > .kk-single-facts,
body.single-kk_project .kk-container > .kk-single-description,
body.single-kk_project .kk-container > .kk-proje,
body.single-kk_project .kk-container > .kk-sss { grid-column: 1; margin-bottom: 0; padding: 44px 0; border-top: 1px solid var(--kkz-line); }

/* Galeri en üsttedir; üstünde çizgi olmaz. */
.kk-view-proje .kk-container > .kk-gallery,
body.single-kk_project .kk-container > .kk-gallery { border-top: 0; padding-top: 0; }

/* NİYET BLOĞU TAM GENİŞLİK.
   Bu blok kendi içinde çok panelli bir bileşendir; 380 piksellik dar
   sütuna sıkıştırıldığında kelimeler harf harf alt alta iniyordu.
   Yeri ana akıştır. Sağ sütuna kendi kompakt kartımız konur. */
.kk-view-proje .kk-container > .kk-project-intent,
body.single-kk_project .kk-container > .kk-project-intent {
  grid-column: 1 / -1;
  position: static;
  padding: 44px 0;
  border-top: 1px solid var(--kkz-line);
  margin-bottom: 0;
}

/* Sağ sütun — kendi kompakt yapışkan kartımız (JS ile kurulur) */
.kk-yan-kart {
  position: sticky;
  grid-column: 2;
  align-self: start;
  top: 84px;
  background: linear-gradient(160deg, var(--kkz-navy) 0%, #143A63 100%);
  border: 0;
  border-radius: var(--kkz-radius);
  box-shadow: var(--kkz-shadow-up);
  padding: 28px;
  margin-bottom: 40px;
  color: #fff;
  overflow: hidden;
}
.kk-yan-kart::before {
  content: "";
  position: absolute;
  left: 0; right: 0; top: 0;
  height: 4px;
  background: var(--kkz-gold);
}
.kk-yan-kart h2 { font-family: Inter, system-ui, sans-serif; font-size: 18px; font-weight: 700; margin: 0 0 10px; color: #fff; }
.kk-yan-kart p { font-size: 15px; line-height: 1.55; color: rgba(255, 255, 255, .78); margin: 0 0 16px; max-width: none; }
.kk-yan-kart__ad { font-size: 16px; color: #fff; font-weight: 700; margin: 0 0 4px; }
.kk-yan-kart__yer { font-size: 14px; color: var(--kkz-gold); margin: 0 0 18px; }
.kk-yan-kart .kk-kz-dugme { width: 100%; background: var(--kkz-gold); color: var(--kkz-navy); }
.kk-yan-kart .kk-kz-dugme:hover { background: #E0B93B; color: var(--kkz-navy); }
.kk-yan-kart .kk-yan-kart__tel,
.kk-yan-kart .kk-yan-kart__wa { color: #fff; border-color: rgba(255, 255, 255, .34); }
.kk-yan-kart .kk-yan-kart__tel:hover,
.kk-yan-kart .kk-yan-kart__wa:hover { background: rgba(255, 255, 255, .12); border-color: rgba(255, 255, 255, .6); }
.kk-yan-kart .kk-yan-kart__dip { color: rgba(255, 255, 255, .64); }
.kk-yan-kart__tel,
.kk-yan-kart__wa {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  margin-top: 10px;
  font-size: 15px;
  font-weight: 600;
  color: var(--kkz-accent);
  text-decoration: none;
  border: 1px solid var(--kkz-line);
  border-radius: 999px;
}
.kk-yan-kart__tel:hover,
.kk-yan-kart__wa:hover { border-color: var(--kkz-accent); }
.kk-yan-kart__dip { font-size: 13px; line-height: 1.5; text-align: center; margin: 12px 0 0 !important; }

/* Künye kutuları yan yana */
.kk-single-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.kk-single-facts__item {
  background: var(--kkz-ground);
  border: 1px solid var(--kkz-line);
  border-radius: 14px;
  padding: 16px 18px;
  font-size: 15px;
  line-height: 1.45;
}

/* Metin ölçüsü korunur */
.kk-single-description p, .kk-proje p { max-width: var(--kkz-olcu); font-size: 18px; line-height: 1.6; }

@media (max-width: 1100px) {
  .kk-view-proje .kk-container,
  body.single-kk_project .kk-container { grid-template-columns: minmax(0, 1fr); }
  .kk-view-proje .kk-container > .kk-project-intent,
  body.single-kk_project .kk-container > .kk-project-intent { grid-column: 1; grid-row: auto; position: static; }
  .kk-yan-kart { grid-column: 1; position: static; }
  .kk-single-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .kk-view-proje .kk-container,
  body.single-kk_project .kk-container { padding-left: 16px; padding-right: 16px; }
  .kk-single-facts { grid-template-columns: minmax(0, 1fr); }
}
