/* =====================================================================
   Kibele'nin Kızları — proje sayfası (3 dil, ortak stil) · kb- prefix
   · Marka paleti + Cinzel / Cormorant Garamond italic / Inter.
   · Tipografi sınıflarına position/transform YOK (hover yalnız kart/galeri
     konteynerlerinde). Mobil 375px: tek sütun, yatay taşma yok.
   ===================================================================== */
:root {
  --kb-ink:#05080D; --kb-navy:#0D305E; --kb-teal:#5AB6B7; --kb-gold:#F0BB3D; --kb-parch:#F1F0EB;
  --kb-ease:cubic-bezier(0.22,0.61,0.36,1); --kb-col:900px;
}
*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;}
html{background:var(--kb-ink);color:var(--kb-parch);font-family:"Cormorant Garamond",Georgia,serif;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scroll-behavior:smooth;}
body{min-height:100vh;min-height:100dvh;overflow-x:hidden;-webkit-tap-highlight-color:transparent;
  font-size:clamp(16px,1.05vw + 12px,19px);line-height:1.5;}
a{color:inherit;}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;}
:where(a,button,[tabindex]):focus-visible{outline:2px solid var(--kb-teal);outline-offset:3px;border-radius:4px;}

/* Zemin */
.kb-bg{position:fixed;inset:0;z-index:-2;background:
  radial-gradient(120% 80% at 50% 0%,rgba(13,48,94,0.42),transparent 60%),
  linear-gradient(180deg,#0d305e 0%,#081427 44%,#05080D 100%);}

/* Bölüm iskeleti */
.kb-root{position:relative;z-index:1;display:block;}
.kb-section{display:flex;flex-direction:column;align-items:center;text-align:center;
  padding:clamp(48px,7vh,90px) max(22px,env(safe-area-inset-left)) clamp(48px,7vh,90px) max(22px,env(safe-area-inset-right));}
.kb-section > *{width:100%;max-width:var(--kb-col);}
.kb-section--tint{background:rgba(13,48,94,0.20);border-top:1px solid rgba(90,182,183,0.10);border-bottom:1px solid rgba(90,182,183,0.10);}

/* 1 · HERO — tam genişlik sahne fotoğrafı */
.kb-hero{position:relative;min-height:72vh;min-height:72dvh;display:flex;flex-direction:column;
  align-items:center;justify-content:flex-end;overflow:hidden;
  padding:clamp(48px,8vh,110px) max(22px,env(safe-area-inset-left)) clamp(48px,8vh,90px) max(22px,env(safe-area-inset-right));}
.kb-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;max-width:none;}
.kb-hero-shade{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(5,8,13,0.45) 0%,rgba(5,8,13,0.15) 45%,rgba(5,8,13,0.88) 100%);}
.kb-hero-inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;max-width:var(--kb-col);}
.kb-eyebrow{margin:0 0 14px;}
.kb-title{margin:0;font-size:clamp(2rem,5.5vw,3.6rem);line-height:1.12;text-shadow:0 2px 18px rgba(0,0,0,0.8);}
.kb-tagline{margin:14px 0 0;font-style:italic;color:var(--kb-teal);-webkit-text-fill-color:var(--kb-teal);
  font-size:clamp(1.05rem,1.2vw + 0.7rem,1.4rem);letter-spacing:.03em;text-shadow:0 1px 8px rgba(0,0,0,0.8);}
.kb-byline{margin:16px 0 0;font-family:"Inter",system-ui,sans-serif;font-size:12px;font-weight:500;
  letter-spacing:0.14em;text-transform:uppercase;color:rgba(241,240,235,0.72);text-shadow:0 1px 6px rgba(0,0,0,0.8);}

/* Genel bölüm gövdesi (Neden bu oyun / Yöntemle bağı / Kimin için) */
.kb-body{margin:0 auto;max-width:58ch;font-style:italic;text-align:center;
  font-size:clamp(1.02rem,0.8vw + 0.8rem,1.25rem);line-height:1.6;color:rgba(241,240,235,0.92);}

/* 2 · Tanıtım */
.kb-intro{margin:0 auto;max-width:62ch;font-style:italic;text-align:center;
  font-size:clamp(1.1rem,1vw + 0.85rem,1.4rem);line-height:1.6;color:rgba(241,240,235,0.94);}

/* 3 · Sahneleme blokları — yan yana, mobilde alt alta */
.kb-stagings{display:grid;grid-template-columns:1fr;gap:22px;width:100%;max-width:var(--kb-col);}
@media (min-width:720px){ .kb-stagings{grid-template-columns:1fr 1fr;} }
.kb-staging{display:flex;flex-direction:column;align-items:center;text-align:center;
  padding:26px 22px 24px;border:1px solid rgba(90,182,183,0.24);border-radius:16px;
  background:rgba(8,20,39,0.45);}
.kb-staging-year{margin:0 0 8px;color:var(--kb-gold);-webkit-text-fill-color:var(--kb-gold);}
.kb-staging-venue{margin:0 0 10px;font-size:clamp(1.2rem,1.6vw,1.6rem);line-height:1.25;}
.kb-staging-note{margin:0 0 18px;font-style:italic;color:rgba(241,240,235,0.8);
  font-size:clamp(0.98rem,0.6vw + 0.8rem,1.15rem);}
.kb-staging-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;width:100%;}
.kb-staging-img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;
  border:1px solid rgba(240,187,61,0.22);}

/* 4 · Galeri (React island) */
.kb-gallery-section{display:flex;flex-direction:column;align-items:center;text-align:center;
  padding:clamp(48px,7vh,90px) max(22px,env(safe-area-inset-left)) clamp(48px,7vh,90px) max(22px,env(safe-area-inset-right));}
.kb-gallery-section > *{width:100%;max-width:var(--kb-col);}
.kb-h2{margin:0 auto 26px;max-width:28ch;font-size:clamp(1.4rem,3vw,2.1rem);line-height:1.22;}
.kb-gallery{display:grid;grid-template-columns:1fr;gap:14px;width:100%;}
@media (min-width:560px){ .kb-gallery{grid-template-columns:1fr 1fr;} }
@media (min-width:880px){ .kb-gallery{grid-template-columns:1fr 1fr 1fr;} }
.kb-gal-item{position:relative;display:block;padding:0;overflow:hidden;border-radius:12px;
  border:1px solid rgba(90,182,183,0.26);background:#0a1730;}
.kb-gal-img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;}

/* Lightbox */
.kb-lightbox{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;
  background:rgba(5,8,13,0.92);padding:4vh 4vw;cursor:zoom-out;}
.kb-lightbox-img{max-width:100%;max-height:100%;border-radius:10px;box-shadow:0 24px 80px rgba(0,0,0,0.7);}
.kb-lightbox-close{position:absolute;top:calc(env(safe-area-inset-top,0px) + 16px);right:calc(env(safe-area-inset-right,0px) + 18px);
  width:44px;height:44px;border-radius:999px;background:rgba(8,16,30,0.7);border:1px solid rgba(241,240,235,0.25);
  color:var(--kb-parch);font-size:18px;line-height:1;}
.kb-lightbox-close:hover{border-color:var(--kb-gold);color:#fff;}

/* 6 · Kapanış CTA */
.kb-section--cta{padding-bottom:clamp(64px,10vh,120px);}
.kb-cta-line{margin:0 auto 26px;max-width:46ch;font-style:italic;text-align:center;
  font-size:clamp(1.1rem,1vw + 0.85rem,1.4rem);line-height:1.55;color:rgba(241,240,235,0.94);}
.kb-cta{text-decoration:none;}

/* Hareket azalt */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
}

/* ============ 9-bölüm yapı ekleri (26 Ağustos) ============ */
/* Hero: tarih satırı + bilet */
.kb-dateline{margin:14px 0 0;font-family:"Cinzel",serif;font-weight:600;letter-spacing:0.06em;
  color:var(--kb-gold);-webkit-text-fill-color:var(--kb-gold);
  font-size:clamp(1rem,1.2vw + 0.7rem,1.35rem);text-shadow:0 1px 10px rgba(0,0,0,0.85);}
.kb-ticket{margin-top:26px;text-decoration:none;}

/* Sekiz Kadın */
.kb-women{margin:0 auto;padding:0;list-style:none;width:100%;max-width:760px;
  display:grid;grid-template-columns:1fr;gap:12px;}
@media (min-width:640px){ .kb-women{grid-template-columns:1fr 1fr;} }
.kb-woman{display:flex;flex-direction:column;gap:4px;padding:16px 18px;text-align:left;
  border:1px solid rgba(90,182,183,0.22);border-radius:12px;background:rgba(8,20,39,0.4);}
.kb-woman-name{font-size:clamp(1rem,0.6vw + 0.85rem,1.15rem);color:var(--kb-parch);}
.kb-woman-line{font-family:"Cormorant Garamond",serif;font-style:italic;
  font-size:clamp(0.92rem,0.4vw + 0.78rem,1.02rem);color:rgba(241,240,235,0.75);}

/* Fotoğraf kredisi */
.kb-credit{margin:-28px auto 24px;text-align:center;font-family:"Inter",system-ui,sans-serif;
  font-size:11px;letter-spacing:0.08em;color:rgba(241,240,235,0.45);}

/* Geçmiş */
.kb-past{margin:0 auto;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;}
.kb-past-item{font-family:"Inter",system-ui,sans-serif;font-size:clamp(0.9rem,0.4vw + 0.78rem,1rem);
  letter-spacing:0.06em;color:rgba(241,240,235,0.82);}

/* CTA satırı + ikincil link */
.kb-cta-row{display:flex;justify-content:center;align-items:center;gap:22px;flex-wrap:wrap;}
.kb-cta-2nd{display:inline-block;font-family:"Inter",system-ui,sans-serif;font-size:13px;font-weight:500;
  letter-spacing:0.08em;text-transform:uppercase;color:var(--kb-gold);text-decoration:none;
  border-bottom:1px solid rgba(240,187,61,0.4);padding-bottom:3px;transition:color 180ms,border-color 180ms;}
.kb-cta-2nd:hover{color:#ffd979;border-color:#ffd979;}

/* Hero: gösterim/fiyat satırı */
.kb-screening{margin:8px 0 0;font-family:"Inter",system-ui,sans-serif;font-size:13px;font-weight:500;
  letter-spacing:0.1em;color:rgba(241,240,235,0.85);text-shadow:0 1px 8px rgba(0,0,0,0.85);}

/* Yolculuk — dikey zaman çizelgesi */
.kb-journey{margin:0 auto;padding:0;list-style:none;max-width:640px;width:100%;text-align:left;
  border-left:1px solid rgba(240,187,61,0.35);}
.kb-stop{position:relative;padding:0 0 26px 26px;}
.kb-stop:last-child{padding-bottom:0;}
.kb-stop::before{content:"";position:absolute;left:-5px;top:8px;width:9px;height:9px;border-radius:999px;
  background:var(--kb-gold);box-shadow:0 0 10px rgba(240,187,61,0.6);}
.kb-stop-year{display:block;font-size:clamp(1.1rem,0.8vw + 0.9rem,1.3rem);color:var(--kb-gold);
  -webkit-text-fill-color:var(--kb-gold);margin-bottom:4px;}
.kb-stop-body{display:block;font-family:"Inter",system-ui,sans-serif;
  font-size:clamp(0.9rem,0.4vw + 0.78rem,1rem);line-height:1.55;color:rgba(241,240,235,0.85);}
.kb-stop-date,.kb-stop-venue{color:rgba(241,240,235,0.85);}
.kb-stop-venue::after{content:" — ";color:rgba(241,240,235,0.5);}
.kb-stop-event{font-style:italic;font-family:"Cormorant Garamond",serif;
  font-size:clamp(0.98rem,0.5vw + 0.82rem,1.1rem);color:rgba(241,240,235,0.75);}
.kb-stop-ticket{margin-left:12px;font-size:11px;}

/* Ard arda paragraflar (tanıtım/neden/yöntem çok paragraflı oldu) */
.kb-intro + .kb-intro, .kb-body + .kb-body { margin-top: 16px; }
