/* =====================================================================
   1105 EĞİTİM KÜLTÜR SANAT DERNEĞİ — SİTE BİÇEMİ
   Kaynak biçem dosyası. `_uret/kur.py` bunu yayın klasörüne kopyalar.

   RENK: hepsi kimlik hattının karar.py dosyasından gelir (ölçülmüş değerler).
     · Mor #642D92 amblemden ÖLÇÜLDÜ. Beyazda 9,00:1 — açık zeminde serbest.
     · ⚠️ Aynı mor SİYAHTA 2,33:1. Koyu zeminde ASLA kullanılmaz; onun yerine
       hesaplanmış merdiven: #863CC3 grafik · #9E64CF metin · #B98FDC güçlü.

   TİPOGRAFİ: Anybody (başlık, genişlik ekseni 150) + Inter (gövde) — ikisi de
   SIL OFL. ⭐ Buğra 12.08.2026: "Arz'ın yazı tipleri çok iyiydi. YSM, 1105, Ana,
   Kooperatiflerde bu tipler kullanılsın."
   ⛔ Önceki hat (Literata + IBM Plex Sans) yürürlükten kalktı.
   ⚠️ Anybody'nin Türkçe "İ" noktası genişlik 150'de bozuktu; onarımı
      `_arac/font-uret.py` içindeki `nokta_onar()` yapıyor (kanıt:
      `_kanit/turkce-harf-sinavi.png` — gözle bakıldı, nokta yuvarlak).
   ⛔ 12 punto altına inilmez.

   ⚠️ TÜRKÇE BÜYÜK HARF TUZAĞI: tarayıcı `text-transform:uppercase` ile
      "İ"yi "I" yapar. Bu yüzden BAŞLIKLAR KAYNAKTA BÜYÜK YAZILIR ve bu
      dosyada hiçbir yerde text-transform:uppercase YOKTUR.

   MOBİL ÖNCE: temel düzen tek sütun; genişlik arttıkça sütun eklenir.
   ⛔ JavaScript YOK — menü, galeri, her şey saf CSS.
   ===================================================================== */

@font-face{
  font-family:"Anybody"; font-style:normal; font-weight:400 700;
  font-display:swap; src:url("/varlik/font/anybody-genis.woff2?s=cc2ab4126e") format("woff2");
}
@font-face{
  font-family:"Inter"; font-style:normal; font-weight:400 700;
  font-display:swap; src:url("/varlik/font/inter.woff2?s=e1ad203438") format("woff2");
}

:root{
  --mor:#642D92;        /* amblem mürekkebi — YALNIZ açık zeminde */
  --mor-ak:#863CC3;     /* koyu zeminde grafik (3,01:1) */
  --mor-yazi:#9E64CF;   /* koyu zeminde metin  (4,52:1) */
  --mor-guc:#B98FDC;    /* koyu zeminde güçlü  (7,00:1) */
  --metin:#241D2E;
  --sonuk:#5A5164;
  --gece:#17131C;
  --krem:#F6F1E7;
  --krem2:#EDE5D3;
  --beyaz:#FFFFFF;
  --cizgi:#DCD2BE;
  --cizgi-gece:#332A3D;
  --pay:20px;
  --en:1180px;
  /* ⭐ OVALLİK (Buğra, 07.09.2026): "Arz'ın sitesindeki ovallikleri bu sitede
     de her yerde görmek istiyorum." Arz'ın VARLIKLARI değil YÖNTEMİ taşındı:
     tek `--oval` değişkeni, kart/görsel/düğme/galeri/bölüm kenarında AYNI dil. */
  --oval: clamp(12px, 2vw, 28px);
}

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--krem); color:var(--metin);
  font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:17px; line-height:1.68; letter-spacing:.005em;
  -webkit-font-smoothing:antialiased;
  overflow-wrap:break-word;
}
img{ max-width:100%; height:auto; display:block; }
a{ color:var(--mor); text-decoration-thickness:1px; text-underline-offset:3px; }
a:hover{ color:var(--metin); }

h1,h2,h3,h4{
  font-family:"Anybody","Inter",system-ui,sans-serif; font-weight:700;
  line-height:1.12; letter-spacing:.005em; margin:0;
  overflow-wrap:break-word; hyphens:none;
}
h1{ font-size:clamp(30px,7.4vw,60px); }
h2{ font-size:clamp(24px,4.6vw,38px); }
h3{ font-size:clamp(19px,2.6vw,24px); }
p{ margin:0 0 1.05em; }
p:last-child{ margin-bottom:0; }

.kus{ width:100%; max-width:var(--en); margin:0 auto; padding:0 var(--pay); }
.dar{ max-width:760px; }

/* ── ÜST ÇUBUK ──────────────────────────────────────────────────────── */
.ust{
  background:var(--gece); color:var(--krem);
  border-bottom:3px solid var(--mor-ak);
  position:relative; z-index:5;
}
/* ⭐ 07.09.2026 (Buğra, birebir): "en üstteki logo ve ismin olduğu yerin
   sağına Çepni tamgası koyacaksın; o en üst bilgiyi tam ortala." Üç öge
   (amblem · ad · tamga) TEK grup, header'ın ortasında — mobilde de. */
.ust .kus{ display:flex; flex-direction:column; align-items:center; gap:12px; padding-top:16px; padding-bottom:14px; }
.marka-grup{ display:flex; align-items:center; gap:16px; }
.marka{ display:flex; align-items:center; gap:12px; text-decoration:none; color:inherit; }
.tamga{ display:flex; align-items:center; color:var(--mor-guc); flex:0 0 auto; }
.tamga svg{ width:48px; height:48px; display:block; }
/* ⛔ 48px ASGARİ — pazarlık yok. Amblemin üst yayında 7 ışın var; 48px altında
   ışınlar birleşip tanınmaz bir lekeye dönüyor (ÖLÇÜLDÜ, sayıldı:
   16px→1 ışın · 40px→4 · 48px→5 · 128px→7).
   Kanıt: sosyal/marka/1105-dernegi/_olcum/ASGARI-OLCU.md + bak-kucuk-olcu.png
   ⚠️ 38px'te basılmıştı, gözle bakılınca ışınlar bulanık bir tarama gibi
      çıkıyordu ve içindeki "1105" rakamları okunmuyordu. 48'e çıkarıldı. */
.marka svg{ width:48px; height:48px; flex:0 0 48px; color:var(--mor-guc); }
.marka b{
  font-family:"Anybody","Inter",system-ui,sans-serif; font-size:17px; font-weight:700;
  line-height:1.2; letter-spacing:-.01em; display:block;
}
.marka span{ display:block; font-size:12.5px; color:var(--mor-guc); letter-spacing:.06em; }
.gezinti ul{
  list-style:none; margin:0; padding:0;
  display:flex; flex-wrap:wrap; gap:4px 16px;
}
.gezinti a{
  display:inline-block; padding:5px 0; font-size:13.5px; font-weight:600;
  letter-spacing:.06em; color:var(--krem); text-decoration:none;
  border-bottom:2px solid transparent;
}
.gezinti a:hover{ color:var(--mor-guc); border-bottom-color:var(--mor-ak); }
.gezinti a[aria-current="page"]{ color:var(--mor-guc); border-bottom-color:var(--mor-ak); }

@media (min-width:900px){
  .ust .kus{ gap:16px; }  /* dikey/ortalı düzen KORUNUYOR — Buğra: "o en üst bilgiyi tam ortala" */
  .marka-grup{ gap:22px; }
  .marka svg{ width:56px; height:56px; flex:0 0 56px; }  /* geniş ekran — 48 asgarisinin üstünde */
  .tamga svg{ width:56px; height:56px; }  /* amblemle AYNI boy — Buğra'nın şartı */
  .marka b{ font-size:19px; }
  .gezinti ul{ justify-content:center; gap:0 22px; }
  .gezinti a{ font-size:14px; }
}

/* ── HERO ───────────────────────────────────────────────────────────── */
.hero{ position:relative; background:var(--gece); color:var(--krem); overflow:hidden; }
.hero-resim{ border-radius:0; }  /* alttaki .yay kavis veriyor, köşe ayrı gerekmez */
/* ⭐ 07.09.2026 (Buğra): "düz yatay çizgi kalmasın." Bölüm altını kesen yumuşak
   yay — Arz'ın YÖNTEMİ (SVG ile bölüm kenarını yay kesmek), kendi jenerik
   eğrisiyle (Arz'ın yıldız-türevi eğrisi KULLANILMADI, yalnız teknik taşındı). */
.yay{ display:block; width:100%; height:auto; margin-top:-1px; }
.hero-resim{
  position:absolute; inset:0; background-size:cover; background-position:50% 42%;
  opacity:.40;
}
.hero-perde{
  position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(23,19,28,.55) 0%,rgba(23,19,28,.80) 62%,rgba(23,19,28,.96) 100%);
}
.hero .kus{ position:relative; padding-top:56px; padding-bottom:52px; }
.hero .ustyazi{
  font-size:12.5px; font-weight:600; letter-spacing:.18em;
  color:var(--mor-guc); margin:0 0 14px;
}
.hero h1{ max-width:16ch; color:var(--krem); }
.hero .giris{
  margin-top:18px; max-width:56ch; font-size:17.5px; color:#DCD4E0;
}
@media (min-width:900px){
  .hero .kus{ padding-top:104px; padding-bottom:96px; }
  .hero .giris{ font-size:19px; }
}

/* ── DÜĞME ──────────────────────────────────────────────────────────── */
.dugmeler{ display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.dug{
  display:inline-block; padding:12px 22px; border-radius:var(--oval);
  font-size:14px; font-weight:600; letter-spacing:.05em;
  text-decoration:none; border:2px solid transparent;
}
.dug-dolu{ background:var(--mor-ak); color:#FFFFFF; }
.dug-dolu:hover{ background:var(--mor-guc); color:var(--gece); }
.dug-bos{ border-color:var(--mor-guc); color:var(--mor-guc); }
.dug-bos:hover{ background:var(--mor-guc); color:var(--gece); }
/* ⚠️ TUZAK — ÇÖZÜLDÜ (12.08.2026, kontrast denetimi yakaladı):
   Bu kurallar önce YALNIZ `.acik .dug-bos` (torun seçici) biçimindeydi.
   Ama `acik` sınıfı bazı yerlerde ÜST öğede değil, DÜĞMENİN KENDİSİNDE
   duruyor — o zaman kural hiç eşleşmiyordu ve düğme koyu zemin rengiyle
   (`--mor-guc` #B98FDC) açık krem zeminin üstüne basılıyordu:
   ölçülen kontrast **2,32:1** (eşik 4,5). Yani açık zeminde okunmuyordu.
   ⭐ Çözüm: iki durumu da kapsa — hem torun (`.acik .dug-bos`) hem
      aynı öğe (`.dug-bos.acik`). Düzeltme sonrası: #642D92 / #F6F1E7 = 8,00:1.
   Kanıt: `_arac/kontrast.js` · `_kanit/kontrast-sonuc.json` */
.acik .dug-dolu, .dug-dolu.acik{ background:var(--mor); color:#FFFFFF; }
.acik .dug-dolu:hover, .dug-dolu.acik:hover{ background:var(--metin); }
.acik .dug-bos, .dug-bos.acik{ border-color:var(--mor); color:var(--mor); }
.acik .dug-bos:hover, .dug-bos.acik:hover{ background:var(--mor); color:#FFFFFF; }

/* ── BÖLÜM ──────────────────────────────────────────────────────────── */
.bolum{ padding:48px 0; }
.bolum-gece{ background:var(--gece); color:var(--krem); }
.bolum-gece h2,.bolum-gece h3{ color:var(--krem); }
.bolum-krem2{ background:var(--krem2); }
@media (min-width:900px){ .bolum{ padding:76px 0; } }

.bolum-bas{ margin-bottom:28px; }
.etiket{
  font-size:12px; font-weight:700; letter-spacing:.18em;
  color:var(--mor); margin:0 0 10px;
}
.bolum-gece .etiket{ color:var(--mor-guc); }
.bolum-bas p{ margin-top:12px; max-width:62ch; color:var(--sonuk); }
.bolum-gece .bolum-bas p{ color:#C9C0D2; }

/* ── KART IZGARASI ──────────────────────────────────────────────────── */
.izgara{ display:grid; gap:22px; grid-template-columns:1fr; }
@media (min-width:640px){ .izgara{ grid-template-columns:repeat(2,1fr); } }
@media (min-width:1000px){ .izgara-3{ grid-template-columns:repeat(3,1fr); } }

.kart{
  display:flex; flex-direction:column; background:var(--beyaz);
  border:1px solid var(--cizgi); text-decoration:none; color:inherit;
  border-radius:var(--oval); overflow:hidden;
  transition:border-color .15s ease;
}
.kart:hover{ border-color:var(--mor); color:inherit; }
.kart-resim{
  aspect-ratio:3/2; background:var(--krem2) center/cover no-repeat;
  border-bottom:1px solid var(--cizgi);
}
/* kart kendi köşesini `overflow:hidden` ile kırpıyor — resmin ayrı köşesi gerekmez */
.kart-resim-afis{ aspect-ratio:3/2; background-size:contain; background-color:var(--gece); }
.kart-yok{
  aspect-ratio:3/2; border-bottom:1px solid var(--cizgi);
  background:var(--gece); display:flex; align-items:center; justify-content:center;
}
.kart-yok svg{ width:44%; max-width:120px; height:auto; color:var(--mor-ak); opacity:.5; }
.kart-govde{ padding:20px; display:flex; flex-direction:column; gap:8px; flex:1; }
.kart-ust{ font-size:12px; font-weight:700; letter-spacing:.12em; color:var(--mor); }
.kart h3{ margin:0; }
.kart p{ margin:0; font-size:15.5px; color:var(--sonuk); }
.kart-alt{
  margin-top:auto; padding-top:12px; font-size:13.5px; font-weight:600;
  color:var(--mor); letter-spacing:.04em;
}

/* ── YAZI GÖVDESİ ───────────────────────────────────────────────────── */
.yazi{ max-width:68ch; }
.yazi p{ font-size:17.5px; }
.yazi h3{ margin:32px 0 12px; }
.yazi ul{ margin:0 0 1.1em; padding-left:1.15em; }
.yazi li{ margin-bottom:.5em; }
@media (min-width:900px){ .yazi p{ font-size:18px; } }

.alinti{
  margin:32px 0; padding:22px 24px; background:var(--gece); color:var(--krem);
  border-left:4px solid var(--mor-ak);
}
.alinti p{
  margin:0; font-family:"Anybody","Inter",system-ui,sans-serif; font-size:19px;
  line-height:1.5; color:var(--krem);
}
.alinti cite{
  display:block; margin-top:12px; font-family:"Inter",system-ui,sans-serif;
  font-size:13px; font-style:normal; letter-spacing:.06em; color:var(--mor-guc);
}

.not{
  margin:26px 0 0; padding:14px 16px; background:var(--krem2);
  border-left:3px solid var(--cizgi); font-size:14.5px; color:var(--sonuk);
}

/* ── KÜNYE / TANIM LİSTESİ ──────────────────────────────────────────── */
.kunye{ margin:0; display:grid; gap:0; grid-template-columns:1fr; }
.kunye>div{ padding:14px 0; border-bottom:1px solid var(--cizgi); }
.kunye dt{ font-size:12px; font-weight:700; letter-spacing:.12em; color:var(--mor); }
.kunye dd{ margin:5px 0 0; font-size:16.5px; }
@media (min-width:700px){
  .kunye{ grid-template-columns:repeat(2,1fr); column-gap:36px; }
}

/* ── ZAMAN ÇİZGİSİ ──────────────────────────────────────────────────── */
.yol{ list-style:none; margin:0; padding:0; }
.yol li{
  padding:0 0 26px 22px; border-left:2px solid var(--cizgi-gece); position:relative;
}
.yol li:last-child{ padding-bottom:0; }
.yol li::before{
  content:""; position:absolute; left:-7px; top:6px; width:12px; height:12px;
  background:var(--mor-ak); border-radius:50%;
}
.yol b{
  display:block; font-family:"Anybody","Inter",system-ui,sans-serif; font-size:24px;
  color:var(--mor-guc); line-height:1;
}
.yol p{ margin:8px 0 0; font-size:16px; color:#C9C0D2; max-width:60ch; }

/* ── TURNE ŞERİDİ (ilçe ilçe) ───────────────────────────────────────── */
.turne{ display:grid; gap:26px; grid-template-columns:1fr; }
@media (min-width:700px){ .turne{ grid-template-columns:repeat(2,1fr); } }
@media (min-width:1060px){ .turne{ grid-template-columns:repeat(3,1fr); } }
.durak{ background:var(--beyaz); border:1px solid var(--cizgi); display:flex; flex-direction:column; }
.durak .kapak{ aspect-ratio:4/3; background:var(--krem2) center/cover no-repeat; }
.durak-govde{ padding:18px 20px 20px; }
.durak .tarih{
  font-size:12px; font-weight:700; letter-spacing:.14em; color:var(--mor);
  display:block; margin-bottom:4px;
}
.durak h3{ font-size:21px; margin:0 0 8px; }
.durak p{ margin:0; font-size:15.5px; color:var(--sonuk); }
.durak .ek{
  display:grid; grid-template-columns:repeat(2,1fr); gap:2px;
  border-top:1px solid var(--cizgi);
}
.durak .ek span{ aspect-ratio:4/3; background:var(--krem2) center/cover no-repeat; display:block; }

/* ── GALERİ ─────────────────────────────────────────────────────────── */
.galeri{ display:grid; gap:12px; grid-template-columns:repeat(2,1fr); }
@media (min-width:700px){ .galeri{ grid-template-columns:repeat(3,1fr); gap:16px; } }
@media (min-width:1060px){ .galeri{ grid-template-columns:repeat(4,1fr); } }
.galeri a,.galeri span{
  display:block; aspect-ratio:4/3; background:var(--krem2) center/cover no-repeat;
  border:1px solid var(--cizgi); border-radius:var(--oval); overflow:hidden;
}

/* ── AFİŞ ───────────────────────────────────────────────────────────── */
.afis{
  background:var(--gece); border:1px solid var(--cizgi-gece); padding:20px;
  display:flex; justify-content:center; border-radius:var(--oval);
}
.afis img{ max-height:620px; width:auto; border-radius:calc(var(--oval) * 0.6); }


/* ── İLETİŞİM ───────────────────────────────────────────────────────── */
.iletisim-kut{ display:grid; gap:26px; grid-template-columns:1fr; }
@media (min-width:860px){ .iletisim-kut{ grid-template-columns:1.1fr .9fr; gap:46px; } }
.form-alan{ display:block; margin-bottom:16px; }
.form-alan span{ display:block; font-size:13px; font-weight:600; letter-spacing:.08em; color:var(--mor); margin-bottom:6px; }
.form-alan input,.form-alan textarea{
  width:100%; padding:11px 13px; font:inherit; font-size:16px;
  background:var(--beyaz); color:var(--metin);
  border:1px solid var(--cizgi); border-radius:var(--oval);
}
.form-alan textarea{ min-height:130px; resize:vertical; }
.form-uyari{
  margin-top:14px; padding:13px 15px; background:var(--krem2);
  border-left:3px solid var(--mor); font-size:14.5px; color:var(--sonuk);
}

/* ⭐ 07.09.2026 — bal küpü botlara görünür, insana görünmez. */
.gizli-alan{ position:absolute; width:1px; height:1px; overflow:hidden;
  left:-9999px; top:auto; clip:rect(0 0 0 0); white-space:nowrap; }


/* ── ALT BİLGİ ──────────────────────────────────────────────────────── */
.alt{ background:var(--gece); color:#C9C0D2; padding:44px 0 28px; font-size:15px; }
.alt-kut{ display:grid; gap:26px; grid-template-columns:1fr; }
@media (min-width:820px){ .alt-kut{ grid-template-columns:1.4fr 1fr 1fr; gap:40px; } }
.alt h4{ font-size:13px; letter-spacing:.14em; color:var(--mor-guc); margin:0 0 12px; font-family:"Inter",system-ui,sans-serif; }
.alt a{ color:#C9C0D2; }
.alt a:hover{ color:var(--mor-guc); }
.alt ul{ list-style:none; margin:0; padding:0; }
.alt li{ margin-bottom:7px; }
.alt-son{
  margin-top:34px; padding-top:18px; border-top:1px solid var(--cizgi-gece);
  font-size:13px; color:#8C8296;
  display:flex; flex-wrap:wrap; gap:8px 22px;
}
.alt-amblem{ width:54px; height:54px; color:var(--mor-guc); margin-bottom:14px; }

/* ── ATLA BAĞLANTISI (erişilebilirlik) ──────────────────────────────── */
.atla{
  position:absolute; left:-9999px; top:0; background:var(--mor); color:#FFF;
  padding:10px 16px; z-index:99;
}
.atla:focus{ left:8px; top:8px; }

/* ── SAYFA BAŞLIĞI ──────────────────────────────────────────────────── */
.sayfa-bas{ background:var(--gece); color:var(--krem); padding:40px 0 36px; }
.sayfa-bas h1{ color:var(--krem); max-width:20ch; }
.sayfa-bas .ustyazi{ font-size:12px; font-weight:700; letter-spacing:.18em; color:var(--mor-guc); margin:0 0 12px; }
.sayfa-bas .giris{ margin:16px 0 0; max-width:60ch; color:#C9C0D2; font-size:17px; }
@media (min-width:900px){ .sayfa-bas{ padding:66px 0 60px; } }

/* ── İZ (breadcrumb) ────────────────────────────────────────────────── */
.iz{ font-size:13.5px; color:var(--sonuk); padding:16px 0 0; }
.iz a{ color:var(--sonuk); }
.iz a:hover{ color:var(--mor); }

/* ── PROJE ÜST BİLGİ ────────────────────────────────────────────────── */
.proje-bilgi{
  display:grid; gap:2px; grid-template-columns:1fr; background:var(--cizgi-gece);
  border:1px solid var(--cizgi-gece); margin:0 0 32px;
}
.proje-bilgi div{ background:var(--gece); padding:14px 16px; }
.proje-bilgi dt{ font-size:11.5px; font-weight:700; letter-spacing:.14em; color:var(--mor-guc); }
.proje-bilgi dd{ margin:5px 0 0; font-size:15.5px; color:var(--krem); }
@media (min-width:700px){ .proje-bilgi{ grid-template-columns:repeat(3,1fr); } }

/* ── SIRADAKİ / GERİ ────────────────────────────────────────────────── */
.gezingec{
  display:flex; flex-wrap:wrap; gap:14px; justify-content:space-between;
  padding-top:28px; border-top:1px solid var(--cizgi); margin-top:40px;
}
.gezingec a{ font-size:14.5px; font-weight:600; }

/* ── KAYNAK SATIRI ──────────────────────────────────────────────────── */
.kaynak-satir{
  margin-top:34px; padding-top:16px; border-top:1px solid var(--cizgi);
  font-size:13.5px; color:var(--sonuk);
}
.kaynak-satir b{ color:var(--metin); letter-spacing:.06em; font-size:12px; }
