/* =====================================================================
   Av. Aksel Kaan Akansel — Tasarım Sistemi ve Düzen
   Bölümler:
     01 Değişkenler        06 Hakkında
     02 Sıfırlama/Temel    07 Çalışma Alanları
     03 Yardımcılar        08 Eğitim
     04 Üst Bar / Menü     09 Galeri · Süreç · SSS
     05 Hero               10 İletişim · Footer · Lightbox
   ===================================================================== */

/* ------------------------- 01 DEĞİŞKENLER ------------------------- */
:root {
  /* Renkler */
  --lacivert:        #0F1C2E;
  --lacivert-koyu:   #0A1421;
  --lacivert-acik:   #17293F;
  --lacivert-cizgi:  #23374F;

  --altin:           #B08D57;
  --altin-acik:      #C9A87A;
  --altin-soluk:     rgba(176, 141, 87, .14);

  --krem:            #F8F6F3;
  --krem-koyu:       #EFEBE5;
  --beyaz:           #FFFFFF;

  --metin:           #24303D;
  --metin-soluk:     #5E6975;
  --metin-acik:      rgba(248, 246, 243, .74);

  /* Tipografi */
  --yazi-baslik: "Cormorant Garamond", "Times New Roman", Georgia, serif;
  --yazi-govde:  "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  --olcek-h1: clamp(2.75rem, 7.5vw, 6rem);
  --olcek-h2: clamp(2rem, 4.2vw, 3.25rem);
  --olcek-h3: clamp(1.35rem, 2.2vw, 1.75rem);
  --olcek-govde: clamp(1rem, 1.05vw, 1.0625rem);

  /* Ölçü */
  --kapsayici: 1220px;
  --kapsayici-dar: 820px;
  --bolum-bosluk: clamp(5rem, 10vw, 9rem);
  --yan-bosluk: clamp(1.25rem, 5vw, 3rem);

  --yuvarlak: 4px;
  --yuvarlak-buyuk: 10px;

  /* Gölge */
  --golge-yumusak: 0 2px 8px rgba(15, 28, 46, .06), 0 12px 32px rgba(15, 28, 46, .07);
  --golge-guclu:  0 8px 20px rgba(15, 28, 46, .12), 0 24px 60px rgba(15, 28, 46, .14);

  /* Geçiş */
  --gecis: 420ms cubic-bezier(.22, .68, .32, 1);
  --gecis-hizli: 220ms cubic-bezier(.22, .68, .32, 1);
}

/* ---------------------- 02 SIFIRLAMA / TEMEL ---------------------- */
*, *::before, *::after { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  scroll-padding-top: 96px;
}

body {
  margin: 0;
  font-family: var(--yazi-govde);
  font-size: var(--olcek-govde);
  line-height: 1.75;
  color: var(--metin);
  background: var(--krem);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

body.kilitli { overflow: hidden; }

h1, h2, h3, h4 {
  font-family: var(--yazi-baslik);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -.015em;
  margin: 0;
}

p { margin: 0 0 1.15em; }
p:last-child { margin-bottom: 0; }

img { max-width: 100%; display: block; height: auto; }

a { color: inherit; text-decoration: none; }

button { font: inherit; cursor: pointer; border: 0; background: none; color: inherit; }

ul, ol { margin: 0; padding: 0; list-style: none; }

::selection { background: var(--altin); color: var(--beyaz); }

:focus-visible {
  outline: 2px solid var(--altin);
  outline-offset: 3px;
  border-radius: 2px;
}

.atlama-linki {
  position: absolute;
  left: -9999px;
  top: 0;
  z-index: 999;
  background: var(--altin);
  color: var(--beyaz);
  padding: .75rem 1.25rem;
}
.atlama-linki:focus { left: 1rem; top: 1rem; }

.noscript-uyari {
  background: var(--lacivert);
  color: var(--krem);
  padding: 2.5rem var(--yan-bosluk);
  text-align: center;
}
.noscript-uyari strong {
  display: block;
  font-family: var(--yazi-baslik);
  font-size: 1.5rem;
  color: var(--altin);
  margin-bottom: .75rem;
}
.noscript-uyari p { max-width: 60ch; margin-inline: auto; font-size: .95rem; }

/* -------------------------- 03 YARDIMCILAR ------------------------ */
.kapsayici {
  width: 100%;
  max-width: var(--kapsayici);
  margin-inline: auto;
  padding-inline: var(--yan-bosluk);
}
.kapsayici--dar { max-width: var(--kapsayici-dar); }

.bolum { padding-block: var(--bolum-bosluk); position: relative; }
.bolum--ince { padding-block: calc(var(--bolum-bosluk) * .7); }
.bolum--acik { background: var(--krem); color: var(--metin); }
.bolum--koyu { background: var(--lacivert); color: var(--krem); }

.bolum--koyu .bolum-aciklama,
.bolum--koyu .alt-aciklama { color: var(--metin-acik); }

.bolum-basligi {
  max-width: 62ch;
  margin-bottom: clamp(2.5rem, 5vw, 4rem);
}

.ust-baslik {
  font-family: var(--yazi-govde);
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--altin);
  margin-bottom: .9rem;
  display: flex;
  align-items: center;
  gap: .75rem;
}
.ust-baslik::before {
  content: "";
  width: 32px;
  height: 1px;
  background: var(--altin);
  flex: none;
}

.bolum-baslik { font-size: var(--olcek-h2); margin-bottom: .75rem; }
.bolum-aciklama { color: var(--metin-soluk); font-size: 1.0625rem; max-width: 58ch; }

.alt-baslik {
  font-size: var(--olcek-h3);
  margin-bottom: .6rem;
}
.alt-baslik--kucuk { font-size: 1.2rem; }
.alt-aciklama { color: var(--metin-soluk); max-width: 60ch; margin-bottom: 2rem; }

.alt-bolum { margin-top: clamp(3.5rem, 7vw, 6rem); }

/* Düğmeler */
.dugme {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .6rem;
  padding: .95rem 1.9rem;
  font-size: .8125rem;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  border-radius: var(--yuvarlak);
  position: relative;
  overflow: hidden;
  transition: color var(--gecis-hizli), background var(--gecis-hizli),
              border-color var(--gecis-hizli), transform var(--gecis-hizli),
              box-shadow var(--gecis-hizli);
  white-space: nowrap;
}
.dugme--kucuk { padding: .7rem 1.35rem; font-size: .75rem; }
.dugme--tam { width: 100%; }

.dugme--dolu {
  background: var(--altin);
  color: var(--beyaz);
  box-shadow: 0 4px 14px rgba(176, 141, 87, .28);
}
.dugme--dolu:hover {
  background: var(--altin-acik);
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(176, 141, 87, .36);
}

.dugme--cerceve {
  border: 1px solid rgba(248, 246, 243, .38);
  color: var(--krem);
}
.dugme--cerceve:hover {
  border-color: var(--altin);
  color: var(--altin-acik);
  transform: translateY(-2px);
}

.bolum--acik .dugme--cerceve { border-color: rgba(36, 48, 61, .25); color: var(--metin); }
.bolum--acik .dugme--cerceve:hover { border-color: var(--altin); color: var(--altin); }

/* ----------------------- 04 ÜST BAR / MENÜ ------------------------ */
.ust-bar {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 100;
  transition: background var(--gecis), box-shadow var(--gecis), padding var(--gecis);
  padding-block: 1.35rem;
}
.ust-bar__ic {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.ust-bar.kucuk {
  padding-block: .7rem;
  background: rgba(15, 28, 46, .9);
  -webkit-backdrop-filter: saturate(160%) blur(14px);
  backdrop-filter: saturate(160%) blur(14px);
  box-shadow: 0 1px 0 rgba(255, 255, 255, .07), 0 10px 30px rgba(10, 20, 33, .3);
}

.ust-bar__ilerleme {
  position: absolute;
  left: 0; bottom: 0;
  height: 2px;
  width: 0;
  background: linear-gradient(90deg, var(--altin), var(--altin-acik));
  transition: width 120ms linear;
}

.marka { display: flex; align-items: center; gap: .8rem; margin-right: auto; }
.marka__monogram {
  width: 42px; height: 42px;
  display: grid; place-items: center;
  border: 1px solid var(--altin);
  color: var(--altin);
  font-family: var(--yazi-baslik);
  font-size: .95rem;
  font-weight: 600;
  letter-spacing: .06em;
  border-radius: var(--yuvarlak);
  flex: none;
  transition: background var(--gecis-hizli), color var(--gecis-hizli);
}
.marka:hover .marka__monogram { background: var(--altin); color: var(--lacivert); }

.marka__yazi { display: flex; flex-direction: column; line-height: 1.25; color: var(--krem); }
.marka__yazi strong {
  font-family: var(--yazi-baslik);
  font-size: 1.15rem;
  font-weight: 600;
  letter-spacing: .01em;
}
.marka__yazi small {
  font-size: .68rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--altin);
}

.ana-menu__liste { display: flex; align-items: center; gap: 2rem; }
.ana-menu__liste a {
  position: relative;
  font-size: .82rem;
  font-weight: 500;
  letter-spacing: .06em;
  color: rgba(248, 246, 243, .82);
  padding-block: .35rem;
  transition: color var(--gecis-hizli);
}
.ana-menu__liste a::after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 100%; height: 1px;
  background: var(--altin);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform var(--gecis);
}
.ana-menu__liste a:hover,
.ana-menu__liste a.etkin { color: var(--altin-acik); }
.ana-menu__liste a:hover::after,
.ana-menu__liste a.etkin::after { transform: scaleX(1); transform-origin: left; }

.menu-dugmesi {
  display: none;
  width: 44px; height: 44px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  gap: 6px;
  flex: none;
}
.menu-dugmesi span {
  display: block;
  height: 1.5px;
  background: var(--krem);
  transition: transform var(--gecis), opacity var(--gecis-hizli), width var(--gecis);
}
.menu-dugmesi span:nth-child(1) { width: 26px; }
.menu-dugmesi span:nth-child(2) { width: 20px; }
.menu-dugmesi span:nth-child(3) { width: 26px; }
.menu-dugmesi[aria-expanded="true"] span:nth-child(1) { transform: translateY(7.5px) rotate(45deg); width: 26px; }
.menu-dugmesi[aria-expanded="true"] span:nth-child(2) { opacity: 0; width: 0; }
.menu-dugmesi[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7.5px) rotate(-45deg); width: 26px; }

/* Mobil menü */
.mobil-menu {
  position: fixed;
  inset: 0;
  z-index: 99;
  background: var(--lacivert-koyu);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 3rem;
  padding: 6rem var(--yan-bosluk) 3rem;
  transform: translateX(100%);
  transition: transform var(--gecis);
}
.mobil-menu[hidden] { display: none; }
.mobil-menu.acik { transform: translateX(0); }

.mobil-menu__liste { display: flex; flex-direction: column; gap: .35rem; }
.mobil-menu__liste li { overflow: hidden; }
.mobil-menu__liste a {
  display: block;
  font-family: var(--yazi-baslik);
  font-size: clamp(1.9rem, 8vw, 2.6rem);
  color: var(--krem);
  padding-block: .3rem;
  transform: translateY(110%);
  transition: transform 520ms cubic-bezier(.22,.68,.32,1), color var(--gecis-hizli);
}
.mobil-menu.acik .mobil-menu__liste a { transform: translateY(0); }
.mobil-menu__liste a:hover, .mobil-menu__liste a:focus-visible { color: var(--altin-acik); }
.mobil-menu__alt { display: flex; }
.mobil-menu__alt .dugme { flex: 1; }

/* ----------------------------- 05 HERO ---------------------------- */
.hero {
  position: relative;
  min-height: 100svh;
  display: flex;
  align-items: center;
  background: var(--lacivert);
  color: var(--krem);
  overflow: hidden;
  isolation: isolate;
}

.hero__gorsel {
  position: absolute;
  inset: -8% 0 0 0;
  height: 116%;
  background-size: cover;
  background-position: center 35%;
  z-index: -2;
}
.hero__gorsel::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(10,20,33,.86) 0%, rgba(15,28,46,.78) 45%, rgba(10,20,33,.94) 100%),
    radial-gradient(120% 80% at 20% 30%, rgba(176,141,87,.16), transparent 60%);
}

/* Hero arka planı yer tutucuya düşerse yazı gösterilmez */
.hero__gorsel.yer-tutucu::before { content: none; }

.hero__desen {
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .5;
  pointer-events: none;
}
.hero__desen svg { width: 100%; height: 100%; }

.hero__ic { position: relative; padding-block: 8rem 6rem; max-width: 900px; }

.hero__ust {
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--altin);
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.6rem;
}
.hero__ust .cizgi {
  width: 48px; height: 1px;
  background: var(--altin);
  display: block;
  transform-origin: left;
}

.hero__ad {
  font-size: var(--olcek-h1);
  font-weight: 500;
  line-height: 1.02;
  margin-bottom: 1.6rem;
  letter-spacing: -.02em;
}
.hero__ad span { display: block; overflow: hidden; }
.hero__ad span > i { font-style: normal; display: inline-block; }

.hero__slogan {
  font-size: clamp(1.05rem, 1.6vw, 1.25rem);
  color: var(--metin-acik);
  max-width: 54ch;
  margin-bottom: 2.6rem;
  line-height: 1.7;
}

.hero__butonlar { display: flex; flex-wrap: wrap; gap: 1rem; }

.hero__asagi {
  position: absolute;
  left: 50%;
  bottom: 2.25rem;
  transform: translateX(-50%);
  width: 24px; height: 56px;
  display: grid;
  place-items: start center;
}
.hero__asagi-cizgi {
  width: 1px; height: 100%;
  background: rgba(248,246,243,.25);
  position: relative;
  overflow: hidden;
  display: block;
}
.hero__asagi-cizgi::after {
  content: "";
  position: absolute;
  left: 0; top: -60%;
  width: 100%; height: 60%;
  background: var(--altin);
  animation: kaydirIpucu 2.2s cubic-bezier(.7,0,.3,1) infinite;
}

/* --------------------------- 06 HAKKINDA -------------------------- */
.hakkinda {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: clamp(2.5rem, 6vw, 5.5rem);
  align-items: center;
}

.hakkinda__gorsel { position: relative; }
.cerceve-gorsel {
  position: relative;
  aspect-ratio: 4 / 5;
  border-radius: var(--yuvarlak-buyuk);
  overflow: hidden;
  background: var(--lacivert-acik) center/cover no-repeat;
  box-shadow: var(--golge-guclu);
}
.cerceve-gorsel::after {
  content: "";
  position: absolute;
  inset: 12px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: calc(var(--yuvarlak-buyuk) - 3px);
  pointer-events: none;
}
.hakkinda__gorsel::before {
  content: "";
  position: absolute;
  inset: auto -18px -18px auto;
  width: 62%; height: 62%;
  border: 1px solid var(--altin);
  border-radius: var(--yuvarlak-buyuk);
  z-index: -1;
}

.hakkinda__rozet {
  position: absolute;
  left: -22px;
  bottom: 32px;
  width: 78px; height: 78px;
  display: grid; place-items: center;
  background: var(--lacivert);
  color: var(--altin);
  font-family: var(--yazi-baslik);
  font-size: 1.15rem;
  letter-spacing: .08em;
  border-radius: 50%;
  border: 1px solid var(--altin);
  box-shadow: var(--golge-yumusak);
}

.hakkinda__paragraflar { color: var(--metin-soluk); margin-bottom: 2.25rem; }
.hakkinda__paragraflar p { font-size: 1.05rem; }

.kunye {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 1px;
  background: var(--krem-koyu);
  border: 1px solid var(--krem-koyu);
  border-radius: var(--yuvarlak);
  overflow: hidden;
  margin: 0;
}
.kunye > div { background: var(--beyaz); padding: 1.15rem 1.25rem; }
.kunye dt {
  font-size: .68rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--altin);
  margin-bottom: .3rem;
  font-weight: 600;
}
.kunye dd {
  margin: 0;
  font-size: .95rem;
  font-weight: 500;
  overflow-wrap: anywhere;
}

/* ---------------------- 07 ÇALIŞMA ALANLARI ----------------------- */
.alan-izgara {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 1.5rem;
}

.alan-kart {
  position: relative;
  padding: 2.25rem 1.9rem 2rem;
  background: var(--lacivert-acik);
  border: 1px solid var(--lacivert-cizgi);
  border-radius: var(--yuvarlak-buyuk);
  overflow: hidden;
  transition: transform var(--gecis), border-color var(--gecis), box-shadow var(--gecis);
}
.alan-kart::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 2px;
  background: linear-gradient(90deg, var(--altin), transparent);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--gecis);
}
.alan-kart:hover {
  transform: translateY(-6px);
  border-color: rgba(176,141,87,.55);
  box-shadow: 0 20px 44px rgba(5, 12, 22, .42);
}
.alan-kart:hover::before { transform: scaleX(1); }

.alan-kart__ikon {
  width: 52px; height: 52px;
  margin-bottom: 1.5rem;
  color: var(--altin);
}
.alan-kart__ikon svg { width: 100%; height: 100%; }
.alan-kart__ikon svg path,
.alan-kart__ikon svg line,
.alan-kart__ikon svg circle,
.alan-kart__ikon svg rect,
.alan-kart__ikon svg polyline {
  stroke-dasharray: 220;
  stroke-dashoffset: 220;
}
.alan-kart.gorunur .alan-kart__ikon svg path,
.alan-kart.gorunur .alan-kart__ikon svg line,
.alan-kart.gorunur .alan-kart__ikon svg circle,
.alan-kart.gorunur .alan-kart__ikon svg rect,
.alan-kart.gorunur .alan-kart__ikon svg polyline {
  animation: cizgiCiz 1.4s cubic-bezier(.5,0,.2,1) forwards;
}

.alan-kart h3 { font-size: 1.5rem; margin-bottom: .7rem; color: var(--krem); }
.alan-kart__ozet { color: var(--metin-acik); font-size: .95rem; margin-bottom: 1.35rem; }

.alan-kart__maddeler { display: flex; flex-direction: column; gap: .55rem; }
.alan-kart__maddeler li {
  position: relative;
  padding-left: 1.15rem;
  font-size: .875rem;
  color: rgba(248,246,243,.66);
  line-height: 1.55;
}
.alan-kart__maddeler li::before {
  content: "";
  position: absolute;
  left: 0; top: .62em;
  width: 5px; height: 5px;
  border: 1px solid var(--altin);
  transform: rotate(45deg);
}

/* ---------------------------- 08 EĞİTİM --------------------------- */
.bolum--egitim { background: linear-gradient(180deg, var(--krem) 0%, var(--krem-koyu) 100%); }

/* Zaman çizelgesi */
.zaman-cizelgesi { position: relative; padding-left: clamp(2rem, 5vw, 3.5rem); }
.zaman-cizelgesi__ray {
  position: absolute;
  left: clamp(.5rem, 1.4vw, 1rem);
  top: .5rem; bottom: .5rem;
  width: 2px;
  background: rgba(36,48,61,.12);
  border-radius: 2px;
  overflow: hidden;
}
.zaman-cizelgesi__dolgu {
  width: 100%;
  height: 0;
  background: linear-gradient(180deg, var(--altin), var(--altin-acik));
  transition: height 140ms linear;
}

.zaman-cizelgesi__liste { display: flex; flex-direction: column; gap: clamp(2rem, 4vw, 3rem); }

.cizelge-oge { position: relative; }
.cizelge-oge__nokta {
  position: absolute;
  left: calc(clamp(2rem, 5vw, 3.5rem) * -1 + clamp(.5rem, 1.4vw, 1rem) - 6px);
  top: .55rem;
  width: 14px; height: 14px;
  border-radius: 50%;
  background: var(--krem);
  border: 2px solid rgba(36,48,61,.2);
  transition: border-color var(--gecis), background var(--gecis), box-shadow var(--gecis);
}
.cizelge-oge.gorunur .cizelge-oge__nokta {
  border-color: var(--altin);
  background: var(--altin);
  box-shadow: 0 0 0 6px var(--altin-soluk);
}

.cizelge-oge__kart {
  background: var(--beyaz);
  border: 1px solid rgba(36,48,61,.08);
  border-radius: var(--yuvarlak-buyuk);
  padding: 1.75rem 1.9rem;
  box-shadow: var(--golge-yumusak);
  transition: transform var(--gecis), box-shadow var(--gecis);
}
.cizelge-oge:hover .cizelge-oge__kart {
  transform: translateX(6px);
  box-shadow: var(--golge-guclu);
}

.cizelge-oge__ust {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .75rem;
  margin-bottom: .6rem;
}
.cizelge-oge__yil {
  font-family: var(--yazi-baslik);
  font-size: 1.35rem;
  font-weight: 600;
  color: var(--altin);
  letter-spacing: .01em;
}
.etiket {
  font-size: .65rem;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  padding: .3rem .65rem;
  border-radius: 999px;
  background: var(--altin-soluk);
  color: #8a6c3c;
  white-space: nowrap;
}
.cizelge-oge h4 {
  font-family: var(--yazi-baslik);
  font-size: 1.45rem;
  font-weight: 600;
  margin-bottom: .2rem;
}
.cizelge-oge__program {
  font-size: .82rem;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--metin-soluk);
  margin-bottom: .8rem;
}
.cizelge-oge__detay { color: var(--metin-soluk); font-size: .96rem; margin: 0; }

/* Sertifikalar */
.sertifika-izgara {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 1.15rem;
}
.sertifika-kart {
  display: flex;
  gap: 1.1rem;
  align-items: flex-start;
  padding: 1.4rem 1.5rem;
  background: var(--beyaz);
  border: 1px solid rgba(36,48,61,.08);
  border-left: 3px solid var(--altin);
  border-radius: var(--yuvarlak);
  transition: transform var(--gecis-hizli), box-shadow var(--gecis-hizli);
}
.sertifika-kart:hover { transform: translateY(-3px); box-shadow: var(--golge-yumusak); }
.sertifika-kart__ikon { color: var(--altin); flex: none; margin-top: .15rem; }
.sertifika-kart strong { display: block; font-weight: 600; font-size: 1rem; line-height: 1.45; margin-bottom: .25rem; }
.sertifika-kart span { display: block; font-size: .85rem; color: var(--metin-soluk); }
.sertifika-kart .yil {
  font-size: .7rem;
  letter-spacing: .14em;
  color: var(--altin);
  font-weight: 600;
  margin-top: .35rem;
}

/* Seminer sekmeleri */
.sekmeler {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-bottom: 2rem;
  border-bottom: 1px solid rgba(36,48,61,.1);
  padding-bottom: 1rem;
}
/* hidden özniteliği display:flex'i yenebilsin diye */
.sekmeler[hidden] { display: none; }

.sekme {
  padding: .55rem 1.25rem;
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .08em;
  border-radius: 999px;
  border: 1px solid rgba(36,48,61,.14);
  color: var(--metin-soluk);
  transition: all var(--gecis-hizli);
}
.sekme:hover { border-color: var(--altin); color: var(--altin); }
.sekme.etkin {
  background: var(--lacivert);
  border-color: var(--lacivert);
  color: var(--krem);
}

.seminer-liste { display: flex; flex-direction: column; gap: .75rem; }
.seminer-oge {
  display: grid;
  grid-template-columns: 78px 1fr auto;
  align-items: center;
  gap: 1.25rem;
  padding: 1.15rem 1.5rem;
  background: var(--beyaz);
  border: 1px solid rgba(36,48,61,.08);
  border-radius: var(--yuvarlak);
  transition: transform var(--gecis-hizli), border-color var(--gecis-hizli), box-shadow var(--gecis-hizli);
}
.seminer-oge:hover {
  transform: translateX(5px);
  border-color: rgba(176,141,87,.5);
  box-shadow: var(--golge-yumusak);
}
/* Yıl bilgisi girilmemiş kayıtlarda sol sütun hiç yer kaplamaz */
.seminer-oge--yilsiz { grid-template-columns: 1fr auto; }

.seminer-oge__yil {
  font-family: var(--yazi-baslik);
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--altin);
  border-right: 1px solid rgba(36,48,61,.1);
  padding-right: 1rem;
}
.seminer-oge__ad { font-weight: 500; line-height: 1.45; }
.seminer-oge__not { display: block; font-size: .85rem; color: var(--metin-soluk); margin-top: .2rem; }
.seminer-oge__kurum {
  font-size: .72rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--metin-soluk);
  text-align: right;
  max-width: 22ch;
  line-height: 1.5;
}

/* ------------------- 09 GALERİ · SÜREÇ · SSS ---------------------- */
.galeri-gruplari { display: flex; flex-direction: column; gap: clamp(2.5rem, 5vw, 4rem); }
.galeri-grup__baslik {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--altin);
}
.galeri-grup__baslik::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--lacivert-cizgi);
}

/* Sütunlu (masonry) düzen: dikey ve yatay fotoğraflar yan yana,
   hiçbiri kırpılmadan durabilsin diye. */
.galeri-izgara {
  columns: 250px 4;
  column-gap: 1rem;
}
.galeri-oge {
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 1rem;
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  aspect-ratio: 4 / 3;   /* varsayılan; gerçek oran JS ile gelir */
  border-radius: var(--yuvarlak);
  overflow: hidden;
  background: var(--lacivert-acik) center/cover no-repeat;
  cursor: zoom-in;
  border: 1px solid var(--lacivert-cizgi);
  transition: transform var(--gecis), border-color var(--gecis);
}
.galeri-oge::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 45%, rgba(10,20,33,.72));
  opacity: 0;
  transition: opacity var(--gecis);
}
.galeri-oge:hover { transform: scale(1.02); border-color: rgba(176,141,87,.5); }
.galeri-oge:hover::after { opacity: 1; }
.galeri-oge__yazi {
  position: absolute;
  left: 1rem; bottom: 1rem;
  right: 1rem;
  z-index: 1;
  font-size: .85rem;
  color: var(--krem);
  opacity: 0;
  transform: translateY(8px);
  transition: opacity var(--gecis), transform var(--gecis);
}
.galeri-oge:hover .galeri-oge__yazi { opacity: 1; transform: translateY(0); }

/* Süreç */
.surec-izgara {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 2rem 1.5rem;
  counter-reset: adim;
}
.surec-oge { position: relative; padding-top: 2.75rem; }
.surec-oge::before {
  counter-increment: adim;
  content: "0" counter(adim);
  position: absolute;
  top: 0; left: 0;
  font-family: var(--yazi-baslik);
  font-size: 2.6rem;
  font-weight: 600;
  color: var(--altin);
  opacity: .35;
  line-height: 1;
}
.surec-oge::after {
  content: "";
  position: absolute;
  top: 1.1rem; left: 3.4rem; right: -1.5rem;
  height: 1px;
  background: rgba(36,48,61,.14);
}
.surec-oge:last-child::after { display: none; }
.surec-oge h3 { font-size: 1.35rem; margin-bottom: .55rem; }
.surec-oge p { color: var(--metin-soluk); font-size: .95rem; }

/* SSS */
.sss-liste { border-top: 1px solid rgba(36,48,61,.12); }
.sss-oge { border-bottom: 1px solid rgba(36,48,61,.12); }
.sss-oge__dugme {
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.5rem;
  text-align: left;
  padding: 1.5rem 0;
  font-family: var(--yazi-baslik);
  font-size: clamp(1.1rem, 2vw, 1.35rem);
  font-weight: 600;
  color: var(--metin);
  transition: color var(--gecis-hizli);
}
.sss-oge__dugme:hover { color: var(--altin); }
.sss-oge__isaret {
  flex: none;
  width: 22px; height: 22px;
  position: relative;
  margin-top: .35rem;
}
.sss-oge__isaret::before,
.sss-oge__isaret::after {
  content: "";
  position: absolute;
  left: 50%; top: 50%;
  background: var(--altin);
  transform: translate(-50%, -50%);
  transition: transform var(--gecis), opacity var(--gecis-hizli);
}
.sss-oge__isaret::before { width: 14px; height: 1.5px; }
.sss-oge__isaret::after  { width: 1.5px; height: 14px; }
.sss-oge.acik .sss-oge__isaret::after { transform: translate(-50%, -50%) rotate(90deg); opacity: 0; }

.sss-oge__cevap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows var(--gecis);
}
.sss-oge.acik .sss-oge__cevap { grid-template-rows: 1fr; }
.sss-oge__cevap > div { overflow: hidden; }
.sss-oge__cevap p {
  color: var(--metin-soluk);
  padding-bottom: 1.5rem;
  max-width: 68ch;
  margin: 0;
}

/* ------------- 10 İLETİŞİM · FOOTER · LIGHTBOX -------------------- */
.iletisim {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: clamp(2.5rem, 5vw, 4.5rem);
  align-items: start;
}

.iletisim__kartlar { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 2.5rem; }
.iletisim-kart {
  display: flex;
  gap: 1.1rem;
  padding: 1.35rem 1.5rem;
  background: var(--lacivert-acik);
  border: 1px solid var(--lacivert-cizgi);
  border-radius: var(--yuvarlak);
  transition: border-color var(--gecis-hizli), transform var(--gecis-hizli);
}
.iletisim-kart:hover { border-color: rgba(176,141,87,.55); transform: translateY(-2px); }
.iletisim-kart__ikon { color: var(--altin); flex: none; margin-top: .2rem; }
.iletisim-kart dt {
  font-size: .68rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--altin);
  font-weight: 600;
  margin-bottom: .25rem;
}
.iletisim-kart dd { margin: 0; font-size: 1rem; line-height: 1.6; color: var(--krem); }
.iletisim-kart dd a:hover { color: var(--altin-acik); }

.iletisim__saatler { margin-bottom: 2rem; }
.iletisim__saatler dl { display: flex; flex-direction: column; gap: .55rem; margin: 0; }
.iletisim__saatler dl > div {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: .55rem;
  border-bottom: 1px dashed var(--lacivert-cizgi);
  font-size: .92rem;
}
.iletisim__saatler dt { color: var(--metin-acik); }
.iletisim__saatler dd { margin: 0; color: var(--krem); font-weight: 500; }

.iletisim__sosyal { display: flex; gap: .75rem; }
.sosyal-dugme {
  width: 44px; height: 44px;
  display: grid; place-items: center;
  border: 1px solid var(--lacivert-cizgi);
  border-radius: var(--yuvarlak);
  color: var(--metin-acik);
  transition: all var(--gecis-hizli);
}
.sosyal-dugme:hover { border-color: var(--altin); color: var(--altin); transform: translateY(-2px); }

/* Form */
.iletisim__form {
  background: var(--lacivert-acik);
  border: 1px solid var(--lacivert-cizgi);
  border-radius: var(--yuvarlak-buyuk);
  padding: clamp(1.75rem, 3.5vw, 2.75rem);
}
.alan { margin-bottom: 1.25rem; }
.alan-ikili { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.alan label {
  display: block;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--altin);
  margin-bottom: .55rem;
}
.alan input,
.alan select,
.alan textarea {
  width: 100%;
  padding: .9rem 1rem;
  font: inherit;
  font-size: .95rem;
  color: var(--krem);
  background: rgba(10, 20, 33, .55);
  border: 1px solid var(--lacivert-cizgi);
  border-radius: var(--yuvarlak);
  transition: border-color var(--gecis-hizli), background var(--gecis-hizli);
}
.alan textarea { resize: vertical; min-height: 120px; }
.alan select { appearance: none; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23B08D57' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  padding-right: 2.5rem;
}
.alan select option { background: var(--lacivert); color: var(--krem); }
.alan input::placeholder, .alan textarea::placeholder { color: rgba(248,246,243,.35); }
.alan input:focus, .alan select:focus, .alan textarea:focus {
  border-color: var(--altin);
  background: rgba(10, 20, 33, .8);
  outline: none;
}
.alan input[aria-invalid="true"],
.alan textarea[aria-invalid="true"] { border-color: #d9736a; }

.alan-hata {
  margin: .45rem 0 0;
  font-size: .8rem;
  color: #e7938b;
  min-height: 0;
}
.alan-hata:empty { display: none; }

.alan--onay { margin-top: 1.5rem; }
.onay { display: flex; gap: .85rem; align-items: flex-start; cursor: pointer; }
.onay input { position: absolute; opacity: 0; width: 0; height: 0; }
.onay__kutu {
  flex: none;
  width: 20px; height: 20px;
  margin-top: .18rem;
  border: 1px solid var(--lacivert-cizgi);
  border-radius: 3px;
  position: relative;
  transition: all var(--gecis-hizli);
}
.onay__kutu::after {
  content: "";
  position: absolute;
  left: 6px; top: 2px;
  width: 5px; height: 10px;
  border: solid var(--lacivert);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg) scale(0);
  transition: transform var(--gecis-hizli);
}
.onay input:checked + .onay__kutu { background: var(--altin); border-color: var(--altin); }
.onay input:checked + .onay__kutu::after { transform: rotate(45deg) scale(1); }
.onay input:focus-visible + .onay__kutu { outline: 2px solid var(--altin); outline-offset: 3px; }
.onay__wrapper { flex: 1; }
.onay__yazi {
  font-size: .875rem;
  line-height: 1.6;
  color: var(--metin-acik);
  text-transform: none;
  letter-spacing: 0;
  font-weight: 400;
}
.onay__yazi a { color: var(--altin-acik); text-decoration: underline; text-underline-offset: 3px; }

/* Spam tuzağı — görünmez ama ekran okuyucudan da gizli değil ki
   yanlışlıkla dolduran olursa fark edilsin. */
.tuzak-alan { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.form-durum { margin: 1rem 0 0; font-size: .9rem; }
.form-durum.basarili { color: #7fc9a3; }
.form-durum.hata { color: #e7938b; }
.form-not {
  margin-top: 1.25rem;
  font-size: .78rem;
  line-height: 1.65;
  color: rgba(248,246,243,.5);
}

.harita {
  margin-top: clamp(2.5rem, 5vw, 4rem);
  border-radius: var(--yuvarlak-buyuk);
  overflow: hidden;
  border: 1px solid var(--lacivert-cizgi);
  min-height: 340px;
  background: var(--lacivert-acik);
}
.harita iframe { width: 100%; height: 420px; border: 0; display: block; filter: grayscale(.35) contrast(1.05); }
.harita__bos {
  min-height: 340px;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 2rem;
  color: var(--metin-acik);
  font-size: .9rem;
}

/* Footer */
.alt-bilgi {
  background: var(--lacivert-koyu);
  color: var(--metin-acik);
  padding-top: clamp(3.5rem, 6vw, 5rem);
  border-top: 1px solid var(--lacivert-cizgi);
}
.alt-bilgi__ic {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1.3fr);
  gap: clamp(2rem, 5vw, 4rem);
  padding-bottom: 3rem;
}
.alt-bilgi__marka { display: flex; align-items: center; gap: .9rem; }
.alt-bilgi__marka strong {
  display: block;
  font-family: var(--yazi-baslik);
  font-size: 1.15rem;
  color: var(--krem);
}
.alt-bilgi__marka small {
  font-size: .68rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--altin);
}
.alt-bilgi__menu ul { display: flex; flex-direction: column; gap: .6rem; }
.alt-bilgi__menu a { font-size: .875rem; transition: color var(--gecis-hizli); }
.alt-bilgi__menu a:hover { color: var(--altin-acik); }
.alt-bilgi__notlar p { font-size: .85rem; line-height: 1.7; }
.alt-bilgi__notlar .kucuk { font-size: .78rem; color: rgba(248,246,243,.45); }
.alt-bilgi__notlar a { color: var(--altin); text-decoration: underline; text-underline-offset: 3px; }

.alt-bilgi__telif {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-block: 1.5rem;
  border-top: 1px solid var(--lacivert-cizgi);
  font-size: .8rem;
  color: rgba(248,246,243,.45);
}

.yukari-dugme {
  width: 42px; height: 42px;
  border: 1px solid var(--lacivert-cizgi);
  border-radius: var(--yuvarlak);
  color: var(--altin);
  font-size: 1.1rem;
  transition: all var(--gecis-hizli);
}
.yukari-dugme:hover { border-color: var(--altin); background: var(--altin); color: var(--lacivert); transform: translateY(-2px); }

/* Lightbox */
.lightbox {
  position: fixed;
  inset: 0;
  z-index: 200;
  background: rgba(6, 12, 20, .95);
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 1rem;
  padding: clamp(1rem, 4vw, 3rem);
  opacity: 0;
  transition: opacity var(--gecis);
}
.lightbox[hidden] { display: none; }
.lightbox.acik { opacity: 1; }

.lightbox__ic { margin: 0; display: flex; flex-direction: column; gap: 1rem; align-items: center; min-width: 0; }
.lightbox__gorsel {
  /* Kutu, fotoğrafın kendi oranını alır (oran JS ile verilir);
     böylece dikey kareler de ekranı verimli kullanır. */
  height: 78vh;
  width: auto;
  aspect-ratio: 4 / 3;
  max-width: min(1100px, 100%);
  max-height: 78vh;
  background: var(--lacivert-acik) center/contain no-repeat;
  border-radius: var(--yuvarlak);
  transform: scale(.96);
  transition: transform var(--gecis);
}
.lightbox.acik .lightbox__gorsel { transform: scale(1); }
.lightbox figcaption { color: var(--metin-acik); font-size: .9rem; text-align: center; }

.lightbox__kapat {
  position: absolute;
  top: 1.25rem; right: 1.5rem;
  width: 48px; height: 48px;
  font-size: 1.75rem;
  color: var(--krem);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: var(--yuvarlak);
  transition: all var(--gecis-hizli);
}
.lightbox__kapat:hover { border-color: var(--altin); color: var(--altin); }

.lightbox__ok {
  width: 52px; height: 52px;
  font-size: 2rem;
  line-height: 1;
  color: var(--krem);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;
  transition: all var(--gecis-hizli);
  flex: none;
}
.lightbox__ok:hover { border-color: var(--altin); color: var(--altin); background: rgba(176,141,87,.12); }

/* Yer tutucu görsel deseni (fotoğraf yokken) */
.yer-tutucu {
  background:
    repeating-linear-gradient(45deg, rgba(176,141,87,.08) 0 12px, transparent 12px 24px),
    linear-gradient(135deg, var(--lacivert-acik), var(--lacivert));
  display: grid;
  place-items: center;
  position: relative;
}
.yer-tutucu::before {
  content: attr(data-etiket);
  font-size: .72rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(248, 246, 243, .42);
  text-align: center;
  white-space: pre-line;
  padding: 1rem;
  line-height: 1.7;
  max-width: 90%;
}

/* --------------------------- RESPONSIVE --------------------------- */
@media (max-width: 1080px) {
  .ana-menu__liste { gap: 1.35rem; }
  .ana-menu__liste a { font-size: .78rem; }
}

@media (max-width: 940px) {
  .ana-menu, .ust-bar__cta { display: none; }
  .menu-dugmesi { display: flex; }
  .marka__yazi strong { font-size: 1.02rem; }

  .hakkinda, .iletisim { grid-template-columns: 1fr; }
  .hakkinda__gorsel { max-width: 420px; }
  .alt-bilgi__ic { grid-template-columns: 1fr 1fr; }
  .alt-bilgi__notlar { grid-column: 1 / -1; }
  .surec-oge::after { display: none; }
}

@media (max-width: 700px) {
  html { scroll-padding-top: 80px; }
  .seminer-oge { grid-template-columns: 62px 1fr; gap: 1rem; }
  .seminer-oge--yilsiz { grid-template-columns: 1fr; }
  .seminer-oge__kurum { grid-column: 2; text-align: left; max-width: none; }
  .alan-ikili { grid-template-columns: 1fr; gap: 0; }
  .hakkinda__rozet { width: 64px; height: 64px; font-size: 1rem; left: -14px; }
  .lightbox { grid-template-columns: 1fr; grid-template-areas: "ic"; }
  .lightbox__ic { grid-area: ic; }
  .lightbox__ok { position: absolute; bottom: 1.5rem; }
  .lightbox__ok--sol { left: calc(50% - 60px); }
  .lightbox__ok--sag { left: calc(50% + 8px); }
  .alt-bilgi__ic { grid-template-columns: 1fr; }
}

@media (max-width: 460px) {
  .hero__butonlar .dugme { flex: 1 1 100%; }
  .kunye { grid-template-columns: 1fr 1fr; }
}

/* --------------------------- YAZDIRMA ----------------------------- */
@media print {
  .ust-bar, .mobil-menu, .hero__asagi, .yukari-dugme, .lightbox, .iletisim__form { display: none !important; }
  body { background: #fff; color: #000; }
  .bolum--koyu { background: #fff !important; color: #000 !important; }
  .bolum { padding-block: 1.5rem; }
}
