/* ============================================================
   BAHADIR & SARIGIL HUKUK OFİSİ — "LACİ"
   Kurumsal palet logodan türetildi: lacivert #0E1B39, altın #E3D2AE
   Koyu tema varsayılan; açık tema alternatif.
   ============================================================ */

/* ---- KOYU (varsayılan kimlik) ---- */
:root,
:root[data-tema="koyu"] {
  --zemin:      #0E1B39;
  --zemin-alt:  #0A1429;
  --yuzey:      #142449;
  --yuzey-2:    #1A2C57;
  --rail:       #091223;

  --metin:      #F3F1EA;
  --metin-2:    rgba(243,241,234,.74);
  --metin-3:    rgba(243,241,234,.50);
  --metin-4:    rgba(243,241,234,.30);

  --cizgi:      rgba(243,241,234,.16);
  --cizgi-2:    rgba(243,241,234,.09);

  --altin:      #E3D2AE;
  --altin-2:    #F0E4C8;
  --altin-3:    #A8946E;
  --altin-etiket: #A8946E;   /* altın küçük etiket metni */
  --altin-ince: #A8946E;     /* saf süs tel çizgi */
  --cizgi-form: rgba(243,241,234,.16);  /* form denetimi kenarı */
  --altin-uzeri: #0E1B39;    /* altın dolgu üzerindeki metin */
  --cizgi-koyu:   rgba(243,241,234,.16);  /* lacivert yüzeydeki kenar */
  --cizgi-koyu-2: rgba(243,241,234,.09);
  --hale:       rgba(227,210,174,.13);    /* bulanık köşe ışıması */
  --altin-sis:  rgba(227,210,174,.10);

  --uyari:      #FFB4A8;
  --olumlu:     #8FD9BC;

  --golge:      0 2px 4px rgba(0,0,0,.26), 0 24px 56px -22px rgba(0,0,0,.74);
  --logo-suzgec: none;
  --dip-zemin:  #091223;    /* altbilgi bandı */
  --banner-hale: rgba(26,44,87,.85);
}

/* ---- AÇIK (alternatif) ---- */
:root[data-tema="acik"] {
  --zemin:      #F7F5EF;
  --zemin-alt:  #EFEBE1;
  --yuzey:      #FFFFFF;
  --yuzey-2:    #FBF9F4;
  --rail:       #0E1B39;

  --metin:      #0E1B39;   /* en kötü zemin #EFEBE1 üzerinde 14.29:1 · L*10.4 */
  --metin-2:    #2E3A57;   /*                                9.49:1 · L*24.6 */
  --metin-3:    #3E4A66;   /*                                7.42:1 · L*31.5 */
  --metin-4:    #4F5C7C;   /*                                5.59:1 · L*39.2 */

  --cizgi:      #CFC7B3;   /* zemin üstünde 1.57:1 */
  --cizgi-2:    #DED7C6;   /* kart ızgarası ayracı  1.32:1 */

  --altin:      #826225;   /* metin + düğme zemini · #EFEBE1 üzerinde 4.74:1 */
  --altin-2:    #644919;   /*                                       7.03:1 */
  --altin-3:    #9B7D42;   /* anlamlı grafik: ::marker, şerit, kenar  3.26:1 */
  --altin-etiket: #826225; /* altın küçük etiket metni                4.74:1 */
  --altin-ince: #B79A5E;   /* saf süs tel çizgi — eski değer, muaf */
  --cizgi-form: #79849C;   /* form denetimi kenarı                    3.15:1 */
  --altin-uzeri: #FFFFFF;  /* altın dolgu üzerindeki metin            5.64:1 */
  --cizgi-koyu:   rgba(243,241,234,.16);  /* lacivert yüzey her temada lacivert */
  --cizgi-koyu-2: rgba(243,241,234,.09);
  --hale:       rgba(183,154,94,.05);     /* kremi karartmayan ışıma */
  --altin-sis:  rgba(130,98,37,.09);

  --uyari:      #9B2C1C;
  --olumlu:     #1E6B4F;

  --golge:      0 1px 2px rgba(14,27,57,.08), 0 2px 6px rgba(14,27,57,.06),
                0 22px 44px -18px rgba(14,27,57,.20);
  --logo-suzgec: saturate(1.4) brightness(.58);  /* krem üstünde 3.67–5.12 */
  --dip-zemin:  #EFEBE1;   /* altbilgi bandı — sayfadan bir ton koyu */
  --banner-hale: rgba(255,255,255,.55);
}

* { box-sizing: border-box; }

html { background: var(--zemin); }

body {
  margin: 0;
  background: var(--zemin);
  color: var(--metin);
  font-family: "Figtree", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16.5px;
  font-weight: 400;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

h1, h2, h3, h4 {
  font-family: "Newsreader", Georgia, "Times New Roman", serif;
  font-weight: 300;
  margin: 0;
  text-wrap: balance;
  letter-spacing: -.018em;
  color: var(--metin);
}
p { margin: 0; }
a { color: inherit; }
img { max-width: 100%; display: block; }

[id] { scroll-margin-top: 96px; }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

.js .js-bel { opacity: 0; animation: bel .85s .12s forwards; }
.ustyazi {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--altin);
}

.kap { max-width: 1260px; margin: 0 auto; padding: 0 clamp(20px, 4.4vw, 64px); }

:focus-visible { outline: 3px solid var(--altin); outline-offset: 2px; }
/* Lacivert kalan yüzeylerde (şerit, altbilgi, mobil bar) halka ve vurgu
   sayfa zeminine göre değil o yüzeye göre seçilmeli. */
:root[data-tema="acik"] .rail :focus-visible,
:root[data-tema="acik"] .alt-bar :focus-visible { outline-color: #E3D2AE; }
:root[data-tema="acik"] .rail-yazi.rail-bag:hover { color: #E3D2AE; }

.gizli {
  position: absolute; width: 1px; height: 1px;
  padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0;
}
.atla {
  position: fixed; left: 10px; top: -120px; z-index: 300;
  background: var(--altin); color: var(--altin-uzeri);
  padding: 12px 20px; font-size: 12px; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; text-decoration: none;
  transition: top .2s;
}
.atla:focus { top: 10px; }

/* ---------- Sol rail ---------- */
.rail {
  position: fixed; left: 0; top: 0; bottom: 0;
  width: 62px; z-index: 90;
  display: flex; flex-direction: column; align-items: center; justify-content: space-between;
  padding: 18px 0;
  background: var(--rail);
  border-right: 1px solid var(--cizgi-koyu-2);
}
.rail-sutun { width: 22px; opacity: .95; }
.rail-cizgi { width: 1px; flex: 1; margin: 16px 0; background: linear-gradient(transparent, var(--altin-3), transparent); opacity: .5; }
.rail-yazi {
  writing-mode: vertical-rl; font-size: 9.5px; font-weight: 600;
  letter-spacing: .3em; text-transform: uppercase;
  color: rgba(243,241,234,.45); white-space: nowrap;
}
:root[data-tema="acik"] .rail-yazi { color: rgba(243,241,234,.55); }
.rail-nokta { width: 5px; height: 5px; border-radius: 50%; background: var(--altin); margin-top: 16px; animation: nabiz 3.4s ease-in-out infinite; }
@keyframes nabiz { 0%,100% { opacity: .3; } 50% { opacity: 1; } }

/* ---------- Sağ ilerleme ---------- */
.ilerleme {
  position: fixed; right: 0; top: 0; bottom: 0;
  width: 50px; z-index: 88;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px;
  pointer-events: none;
}
.il-yol { width: 1px; height: 170px; background: var(--cizgi); position: relative; }
.il-dolu { position: absolute; inset: 0 0 auto 0; width: 1px; height: 0; background: var(--altin); transition: height .12s linear; }
.il-ad {
  writing-mode: vertical-rl; font-size: 9px; font-weight: 600;
  letter-spacing: .26em; text-transform: uppercase; color: var(--metin-3);
  white-space: nowrap; transition: opacity .3s;
}
.il-yuzde { font-size: 10px; font-weight: 600; color: var(--metin-4); font-variant-numeric: tabular-nums; letter-spacing: .08em; }

/* ---------- Üst bar ---------- */
.ust {
  position: fixed; top: 0; left: 62px; right: 0; height: 78px; z-index: 80;
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 0 clamp(20px, 4.4vw, 64px);
  background: color-mix(in srgb, var(--zemin) 84%, transparent);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid transparent;
  transition: border-color .4s, background .4s;
}
.ust.ayrik { border-bottom-color: var(--cizgi-2); }
.marka { display: flex; align-items: center; min-height: 44px; text-decoration: none; flex-shrink: 0; }
.marka img {
  height: 38px; width: auto; filter: var(--logo-suzgec);
  /* Tıklanabilir olduğu belli olsun: imleç gelince hafifçe öne çıkar */
  transform-origin: left center;
  transition: transform .35s cubic-bezier(.2,.7,.3,1), opacity .35s;
}
.marka:hover img, .marka:focus-visible img { transform: scale(1.055); }
.marka:active img { transform: scale(1.02); }
/* Açık temada plaka yok: logo şeffaf kalır, mürekkebi --logo-suzgec koyultur. */

.menu { display: flex; gap: clamp(10px, 1.8vw, 28px); align-items: center; }
.menu a {
  font-size: 13.5px; font-weight: 500; color: var(--metin-2);
  text-decoration: none; padding: 8px 0; position: relative;
  transition: color .25s; min-height: 44px; display: inline-flex; align-items: center;
}
.menu a::after {
  content: ""; position: absolute; left: 0; bottom: 6px;
  width: 0; height: 1px; background: var(--altin);
  transition: width .35s cubic-bezier(.2,.7,.3,1);
}
.menu a:hover { color: var(--metin); }
.menu a:hover::after { width: 100%; }

.ust-sag { display: flex; align-items: center; gap: 12px; }
.ust-cta {
  font-size: 11.5px; font-weight: 600; letter-spacing: .13em; text-transform: uppercase;
  text-decoration: none; padding: 13px 22px;
  border: 1px solid var(--altin-3); color: var(--altin);
  transition: background .3s, color .3s, border-color .3s;
  min-height: 44px; display: inline-flex; align-items: center;
}
.ust-cta:hover { background: var(--altin); border-color: var(--altin); color: var(--altin-uzeri); }

/* Tema düğmesi */
.tema-dugme {
  -webkit-appearance: none; appearance: none;
  width: 44px; height: 44px; min-width: 44px;
  display: grid; place-items: center;
  background: transparent; border: 1px solid var(--cizgi);
  color: var(--metin-2); cursor: pointer; padding: 0;
  transition: border-color .25s, color .25s;
}
.tema-dugme:hover { border-color: var(--altin-3); color: var(--altin); }
.tema-dugme svg { width: 19px; height: 19px; }
.tema-dugme .ay { display: none; }
.tema-dugme .gunes { display: block; }
/* Açık temada form denetimlerinin kenarı seçilebilir olsun (WCAG 1.4.11) */
:root[data-tema="acik"] .alanlar-form input,
:root[data-tema="acik"] .alanlar-form textarea,
:root[data-tema="acik"] .alanlar-form select,
:root[data-tema="acik"] input[type="text"],
:root[data-tema="acik"] input[type="email"],
:root[data-tema="acik"] input[type="tel"],
:root[data-tema="acik"] textarea,
:root[data-tema="acik"] select { border-color: var(--cizgi-form); }

:root[data-tema="acik"] .tema-dugme .ay { display: block; }
:root[data-tema="acik"] .tema-dugme .gunes { display: none; }

.menu-dugme {
  display: none; background: none; border: 1px solid var(--cizgi);
  color: var(--metin); padding: 11px 15px; font-family: inherit;
  font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase;
  cursor: pointer; min-height: 44px;
}

.govde { margin-left: 62px; margin-right: 50px; }

/* ---------- Butonlar ---------- */
.btn {
  font-family: "Figtree", sans-serif;
  font-size: 11.5px; font-weight: 600; letter-spacing: .13em; text-transform: uppercase;
  padding: 17px 32px; text-decoration: none; border: 1px solid transparent; cursor: pointer;
  display: inline-flex; align-items: center; gap: 11px; min-height: 52px;
  transition: background .3s, color .3s, border-color .3s, transform .3s, box-shadow .3s;
}
.btn-dolu { background: var(--altin); color: #0E1B39; }
.btn-dolu:hover { background: var(--altin-2); transform: translateY(-2px); box-shadow: 0 12px 28px -12px rgba(227,210,174,.45); }
:root[data-tema="acik"] .btn-dolu { color: #FFFFFF; }
:root[data-tema="acik"] .btn-dolu:hover { box-shadow: 0 12px 28px -14px rgba(138,106,47,.5); }
.btn-cizgi { background: transparent; border-color: var(--cizgi); color: var(--metin); }
.btn-cizgi:hover { border-color: var(--altin); color: var(--altin); transform: translateY(-2px); }
.btn svg { width: 13px; height: 13px; }

/* ---------- GİRİŞ ---------- */
.giris {
  min-height: 100svh; display: flex; align-items: center;
  padding: 126px 0 90px; position: relative; overflow: hidden;
}
.giris::before {
  content: ""; position: absolute;
  left: 4%; top: -20%; width: 60vw; height: 60vw;
  max-width: 880px; max-height: 880px;
  background: radial-gradient(circle, var(--hale), transparent 64%);
  filter: blur(34px); pointer-events: none;
  animation: suzul 28s ease-in-out infinite alternate;
}
@keyframes suzul { to { transform: translate(7%, 9%) scale(1.12); } }
.giris-izgara {
  position: relative; z-index: 1;
  display: grid; grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr);
  gap: clamp(28px, 5vw, 72px); align-items: center; width: 100%;
}
.giris h1 {
  font-size: clamp(38px, 5.6vw, 82px); line-height: 1.04;
  letter-spacing: -.03em; margin-top: 24px; max-width: 15ch;
}
.giris h1 i { font-style: italic; color: var(--altin); font-weight: 300; }
.giris h1 .satir { display: block; }
.giris h1 { max-width: 18ch; }
.js .giris h1 .kelime { opacity: 0; }
.giris h1 .kelime { display: inline-block; transform: translateY(24px); animation: bel .9s cubic-bezier(.16,.9,.28,1) forwards; }
@keyframes bel { to { opacity: 1; transform: none; } }
.giris-metin { margin-top: 28px; font-size: 17px; color: var(--metin-2); max-width: 52ch; }
.js .giris-metin { opacity: 0; animation: bel .95s .8s forwards; }
.giris-eylem { margin-top: 38px; display: flex; flex-wrap: wrap; gap: 13px; }
.js .giris-eylem { opacity: 0; animation: bel .95s .92s forwards; }

/* Giriş görseli — kurucu ortaklar */
.giris-banner { position: relative; align-self: end; }
.js .giris-banner { opacity: 0; animation: bel 1.1s .5s cubic-bezier(.2,.7,.3,1) forwards; }
.giris-banner img {
  width: 100%; height: auto; display: block;
  filter: saturate(.94) contrast(1.02);
}
/* alt kenarı zemine eritir */
.giris-banner::after {
  content: ""; position: absolute; inset: auto 0 -1px 0; height: 22%;
  background: linear-gradient(to top, var(--zemin) 6%, transparent);
  pointer-events: none;
}
/* arkasında yumuşak altın hale */
:root[data-tema="acik"] .giris-banner::before { filter: blur(40px); opacity: .7; }
.giris-banner::before {
  content: ""; position: absolute;
  left: -6%; right: -6%; top: 4%; bottom: -2%;
  background:
    radial-gradient(ellipse 62% 54% at 50% 42%, rgba(227,210,174,.16), transparent 70%),
    radial-gradient(ellipse 78% 68% at 50% 50%, var(--banner-hale), transparent 72%);
  filter: blur(26px);
  pointer-events: none;
}
.giris-banner img { position: relative; z-index: 1; }
.giris-banner::after { z-index: 2; }

/* ---------- Künye şeridi (sayaç değil, düz bilgi) ---------- */
.kunye {
  display: grid; grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--cizgi); border-bottom: 1px solid var(--cizgi);
  position: relative; isolation: isolate;
}
/* İmleç hangi hücredeyse altın blok oraya kayar. Mutlak konumlu olduğu için
   ızgaraya katılmaz; hücre sayısını etkilemez. */
.kunye-imlec {
  position: absolute; top: 0; bottom: 0; left: 0; width: 25%;
  background: var(--altin-sis);
  z-index: -1; opacity: 0; pointer-events: none;
  /* Kayma görülebilsin diye yavaş; sonda hafifçe oturur. */
  transition: transform .82s cubic-bezier(.22,.75,.2,1),
              width .82s cubic-bezier(.22,.75,.2,1), opacity .4s;
}
.kunye.imlecli .kunye-imlec { opacity: 1; }

/* Altın çizgi kayan bloğa değil hücrenin kendisine ait — Ofis kartlarındaki
   .ucler > div::after ile birebir aynı. Böylece her hücrede yerinde,
   yukarıdan aşağı çizilir; blok yanda kayarken çizgi burada iner. */
.kunye > div:not(.kunye-imlec)::after {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 2px;
  background: var(--altin); transform: scaleY(0); transform-origin: top;
  transition: transform .55s cubic-bezier(.2,.7,.3,1);
}
.kunye > div.etkin::after { transform: scaleY(1); }
/* İlk hücrenin sol iç boşluğu yok (metin sayfa kenarına hizalı kalsın diye);
   çizgi metne yapışmasın diye biraz dışarı alınır. */
.kunye > div:not(.kunye-imlec):first-child::after { left: -13px; }
.kunye > div:not(.kunye-imlec) { transition: opacity .5s; }
.kunye.imlecli > div:not(.kunye-imlec) { opacity: .42; }
.kunye.imlecli > div.etkin { opacity: 1; }
.kunye > div.etkin dt { color: var(--altin); }
.kunye dt { transition: color .5s; }
.kunye > div.etkin dd { transform: translateY(-2px); }
.kunye dd { transition: transform .6s cubic-bezier(.22,.75,.2,1); }
.kunye dd[data-sayac] { font-variant-numeric: tabular-nums; }
@media (hover: none) {
  /* Dokunmatik cihazda imleç yok; şerit sade kalsın */
  .kunye.imlecli > div:not(.kunye-imlec) { opacity: 1; }
  .kunye.imlecli .kunye-imlec { opacity: 0; }
}
.kunye > div:not(.kunye-imlec) {
  padding: 24px clamp(14px, 2vw, 30px); border-left: 1px solid var(--cizgi-2);
  position: relative;   /* altın çizgi bu hücreye göre konumlanır */
}
.kunye > div:not(.kunye-imlec):first-child { border-left: 0; padding-left: 0; }
.kunye dt { font-size: 10px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--metin-3); margin-bottom: 9px; }
.kunye dd { margin: 0; font-family: "Newsreader", serif; font-size: clamp(17px, 1.7vw, 22px); font-weight: 400; line-height: 1.25; }

/* ---------- Bölüm ---------- */
.blok { padding: clamp(72px, 8.8vw, 132px) 0; position: relative; }
.blok.derin { background: var(--zemin-alt); }
.blok-bas { max-width: 62ch; }
.blok-bas h2 { font-size: clamp(28px, 4.1vw, 56px); line-height: 1.06; margin-top: 18px; max-width: 17ch; letter-spacing: -.026em; }
.blok-bas h2 i { font-style: italic; color: var(--altin); }
.blok-bas p { margin-top: 20px; color: var(--metin-2); max-width: 56ch; }

.filet { height: 1px; background: var(--cizgi-2); position: relative; margin: clamp(36px, 5vw, 56px) 0; }
.filet::after {
  content: ""; position: absolute; inset: 0 auto 0 0; height: 1px; width: 100%;
  background: linear-gradient(to right, var(--altin), transparent);
  transform: scaleX(0); transform-origin: left;
  transition: transform 1.25s cubic-bezier(.2,.7,.3,1);
}
.filet.cizildi::after { transform: scaleX(1); }

/* ---------- Kurumsal / bireysel ---------- */
.ikiyol { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--cizgi-2); border: 1px solid var(--cizgi-2); }
.yol {
  background: var(--zemin); padding: clamp(26px, 3vw, 40px);
  position: relative; overflow: hidden; transition: background .4s;
  display: flex; flex-direction: column;
}
/* Madde sayısı farklı olsa da alttaki bağlantılar aynı hizada dursun. */
.yol .yol-bag { margin-top: auto; padding-top: 18px; }
.blok.derin .yol { background: var(--zemin-alt); }
.yol::after { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: var(--altin); transform: scaleY(0); transform-origin: top; transition: transform .5s cubic-bezier(.2,.7,.3,1); }
.yol:hover { background: var(--yuzey); }
.yol:hover::after { transform: scaleY(1); }
/* Üst etiket kaldırıldı; başlık onun altın rengini devraldı. */
.yol h3 { font-size: 23px; margin: 0 0 12px; font-weight: 400; color: var(--altin); }
.yol > p { font-size: 15px; color: var(--metin-2); }
.yol ul { margin: 18px 0 22px; padding: 0; list-style: none; display: grid; gap: 7px; }
.yol li { font-size: 14.5px; color: var(--metin-2); padding-left: 18px; position: relative; }
.yol li::before { content: ""; position: absolute; left: 0; top: .72em; width: 8px; height: 1px; background: var(--altin-3); }
.yol-bag { font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--altin); text-decoration: none; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; }
.yol-bag:hover { color: var(--altin-2); }
/* Bağlantılardaki okun aynısı, maske olarak: currentColor'ı alır ve döner. */
:root { --ok-simge: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8"><path d="M5 12h14M13 6l6 6-6 6"/></svg>'); }

/* ---------- İlkeler ---------- */
.ucler { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--cizgi-2); border: 1px solid var(--cizgi-2); }
.ucler > div { background: var(--zemin); padding: clamp(26px, 3vw, 40px); position: relative; overflow: hidden; transition: background .45s; }
.blok.derin .ucler > div { background: var(--zemin-alt); }
.ucler > div::after { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: var(--altin); transform: scaleY(0); transform-origin: top; transition: transform .55s cubic-bezier(.2,.7,.3,1); }
.ucler > div:hover { background: var(--yuzey); }
.ucler > div:hover::after { transform: scaleY(1); }
.ucler .rakam { font-family: "Newsreader", serif; font-size: 13px; letter-spacing: .22em; color: var(--altin); }
.ucler h3 { font-size: 21px; margin: 16px 0 12px; line-height: 1.28; font-weight: 400; }
.ucler p { font-size: 15px; color: var(--metin-2); line-height: 1.76; }

/* ---------- Çalışma alanları sahnesi ---------- */
.sahne { display: grid; grid-template-columns: minmax(0,.76fr) minmax(0,1.24fr); gap: clamp(28px, 5vw, 80px); align-items: start; }
.sahne-sabit { position: sticky; top: 128px; }
.sahne-sabit h2 { font-size: clamp(26px, 3.7vw, 50px); line-height: 1.05; margin-top: 18px; letter-spacing: -.026em; }
.sahne-sabit h2 i { font-style: italic; color: var(--altin); }
.buyuk-no {
  /* Rakam boyu ve kutu yüksekliği tek değişkenden türer ki glif kırpılmasın */
  --no-boy: clamp(84px, 11.5vw, 164px);
  font-family: "Newsreader", serif;
  font-size: var(--no-boy);
  font-weight: 300;
  line-height: 1.06;
  color: var(--altin);
  margin-top: clamp(24px, 3vw, 42px);
  font-variant-numeric: tabular-nums;
  display: block;
  overflow: hidden;
  height: calc(var(--no-boy) * 1.06);
}
.buyuk-no span { display: block; transition: transform .55s cubic-bezier(.2,.7,.3,1); }
.sahne-ad { margin-top: 15px; font-size: 13px; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; color: var(--metin-3); min-height: 3em; }

.alan {
  padding: clamp(28px, 3.8vw, 50px) 0;
  border-top: 1px solid var(--cizgi-2);
  transition: opacity .6s cubic-bezier(.2,.7,.3,1);
}
.js .alan { opacity: .32; }
:root[data-tema="acik"] .js .alan { opacity: .58; }   /* .32 açık zeminde 1.67:1 — metin kayboluyor */
.js .alan.etkin { opacity: 1; }
.alan h3 { font-size: clamp(21px, 2.5vw, 31px); line-height: 1.16; font-weight: 300; letter-spacing: -.022em; }
.alan > p { margin-top: 14px; color: var(--metin-2); font-size: 15.5px; max-width: 56ch; }
.alan .mevzuat { display: block; margin-top: 12px; font-size: 12.5px; color: var(--altin-3); letter-spacing: .02em; }
:root[data-tema="acik"] .alan .mevzuat { color: var(--altin); }
.alan ul { margin: 18px 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.alan li {
  font-size: 12.5px; border: 1px solid var(--cizgi); padding: 7px 13px;
  color: var(--metin-3); transition: color .5s, border-color .5s;
}
.alan.etkin li { color: var(--metin-2); }

/* ---------- Alıntı ---------- */
.soz { padding: clamp(70px, 9vw, 122px) 0; background: var(--zemin-alt); position: relative; overflow: hidden; }
/* Daire panelden seçilir: mühür, kadran, yörünge ya da yok */
.daire-kap {
  position: absolute; right: -110px; top: 50%; transform: translateY(-50%);
  width: 480px; height: 480px; pointer-events: none;
}
@media (max-width: 900px) { .daire-kap { opacity: .32; right: -220px; } }
.soz-svg { width: 100%; height: 100%; display: block; overflow: visible; }
/* İlkeler masaüstünde dairenin içinde yazılı; burada gizli duruyor. */
.soz-ilkeler {
  display: none; flex-wrap: wrap; gap: 10px 22px; list-style: none;
  margin: 26px 0 0; padding: 22px 0 0; border-top: 1px solid var(--cizgi-2);
}
.soz-ilkeler li {
  font-family: "Figtree", sans-serif; font-size: 11px; font-weight: 600;
  letter-spacing: .16em; text-transform: uppercase; color: var(--altin-etiket);
}
.soz-svg circle, .soz-svg line { fill: none; }
.soz-svg .halka { stroke: var(--cizgi-2); }
.soz-svg .halka-sis { stroke: var(--altin-sis); }

/* mühür */
.muhur-yazi {
  fill: var(--altin-etiket); font-family: "Figtree", sans-serif;
  font-size: 10.5px; font-weight: 600; letter-spacing: .34em; text-transform: uppercase;
}
.muhur-amblem { fill: none; stroke: var(--altin-ince); stroke-width: 1.4; opacity: .55; }
.daire-donen, .daire-donen-yavas { transform-origin: 240px 240px; }

/* kadran */
.kadran-cizik { stroke: var(--cizgi-2); stroke-width: 1; }
.kadran-cizik-uzun { stroke: var(--altin-ince); stroke-width: 1.2; }
.kadran-ilke {
  fill: var(--metin-3); font-family: "Figtree", sans-serif;
  font-size: 9.5px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase;
  transition: fill .4s;
}
.kadran-ilke.etkin { fill: var(--altin); }
.kadran-ibre { stroke: var(--altin); stroke-width: 1.4; }
.kadran-nokta { fill: var(--altin); }
[data-ibre] { transform-origin: 240px 240px; }

/* yörünge */
.yorunge-yay {
  stroke: var(--altin); stroke-width: 1.6; stroke-linecap: round;
  transform: rotate(-90deg); transform-origin: 240px 240px;
}
.yorunge-gezgin { fill: var(--altin); }

@media (prefers-reduced-motion: reduce) {
  .daire-donen, .daire-donen-yavas, [data-ibre] { transform: none !important; }
}
.soz .kap { position: relative; z-index: 1; }
.soz blockquote { margin: 0; font-family: "Newsreader", serif; font-size: clamp(24px, 3.8vw, 50px); font-weight: 300; line-height: 1.2; max-width: 21ch; letter-spacing: -.028em; }
.soz blockquote i { font-style: italic; color: var(--altin); }
.soz .kaynak { margin-top: 28px; font-size: 10.5px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; color: var(--metin-3); }

/* ---------- Kurucular ---------- */
.kurucular { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(22px, 3vw, 40px); }
.kurucu { border: 1px solid var(--cizgi-2); background: var(--yuzey); overflow: hidden; transition: transform .55s cubic-bezier(.2,.7,.3,1), box-shadow .55s, border-color .55s; }
.kurucu:hover { transform: translateY(-6px); box-shadow: var(--golge); border-color: var(--cizgi); }
.kurucu-gorsel {
  position: relative; aspect-ratio: 1/1; overflow: hidden;
  background: linear-gradient(160deg, var(--yuzey-2), var(--zemin-alt));
  border-bottom: 1px solid var(--cizgi-2);
}
.kurucu-gorsel img {
  width: 100%; height: 100%;
  object-fit: cover;
  /* Odak ve yakınlık panelden gelir; verilmezse üstten ortalı ve yakınlaştırmasız */
  /* Kare olmayan görselde kırpmayı object-position kaydırır;
     yakınlaştırmada ise ölçek odak noktasından büyür — ikisi tek denetimle yönetilir. */
  object-position: var(--odak-x, 50%) var(--odak-y, 0%);
  transform-origin: var(--odak-x, 50%) var(--odak-y, 0%);
  transform: scale(var(--yakin, 1));
  filter: saturate(.94) contrast(1.02);
  transition: transform .7s cubic-bezier(.2,.7,.3,1);
}
.kurucu:hover .kurucu-gorsel img { transform: scale(calc(var(--yakin, 1) * 1.035)); }
/* alt kenarı karta eritir */
.kurucu-gorsel::after {
  content: ""; position: absolute; inset: auto 0 0 0; height: 18%;
  background: linear-gradient(to top, var(--yuzey) 4%, transparent);
  pointer-events: none;
}
.kurucu-govde { padding: clamp(22px, 2.7vw, 34px); }
.kurucu h3 { font-size: 25px; line-height: 1.18; font-weight: 400; }
.kurucu .rol { margin-top: 8px; font-size: 10.5px; font-weight: 600; letter-spacing: .17em; text-transform: uppercase; color: var(--altin); }
.kurucu .ozet { margin-top: 18px; font-size: 15px; color: var(--metin-2); line-height: 1.76; }
.kurucu dl { margin: 20px 0 0; }
.kurucu dl > div { display: grid; grid-template-columns: 104px 1fr; gap: 14px; padding: 9px 0; border-top: 1px solid var(--cizgi-2); font-size: 14px; }
.kurucu dt { font-size: 10px; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; color: var(--metin-3); padding-top: 4px; }
.kurucu dd { margin: 0; color: var(--metin-2); }
.kurucu .bekleyen { margin-top: 16px; border-left: 2px solid var(--altin-3); padding: 4px 0 4px 12px; font-size: 14px; color: var(--metin-3); }

/* ---------- Süreç ---------- */
.adimlar { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--cizgi-2); border: 1px solid var(--cizgi-2); }
.adim { background: var(--zemin); padding: clamp(26px, 3vw, 40px); position: relative; overflow: hidden; transition: background .45s; }
.blok.derin .adim { background: var(--zemin-alt); }
/* Ofis kartları ve künye şeridiyle aynı dil: sol altın çizgi yukarıdan aşağı iner */
.adim::after {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 2px;
  background: var(--altin); transform: scaleY(0); transform-origin: top;
  transition: transform .55s cubic-bezier(.2,.7,.3,1);
}
.adim:hover { background: var(--yuzey); }
.adim:hover::after { transform: scaleY(1); }
.adim .no { font-family: "Newsreader", serif; font-size: 34px; font-weight: 300; color: var(--altin); line-height: 1; }
.adim h3 { font-size: 20px; margin: 14px 0 11px; font-weight: 400; }
.adim p { font-size: 14.5px; color: var(--metin-2); line-height: 1.74; }

/* ---------- Yazılar ---------- */
.yazilar { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--cizgi-2); border: 1px solid var(--cizgi-2); }
.yazi { background: var(--zemin); padding: clamp(24px, 2.9vw, 38px); text-decoration: none; display: flex; flex-direction: column; gap: 13px; position: relative; overflow: hidden; transition: background .45s; }
.blok.derin .yazi { background: var(--zemin-alt); }
/* Sol altın çizgi — Ofis, künye ve Süreç ile aynı dil.
   Yazı sayfaları üretilmeye başlandığında alttan çizgiye dönmek,
   "tıklanabilir olan tek kart grubu" ayrımı için anlamlı olur. */
.yazi::after { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: var(--altin); transform: scaleY(0); transform-origin: top; transition: transform .55s cubic-bezier(.2,.7,.3,1); }
.yazi:hover { background: var(--yuzey); }
.yazi:hover::after { transform: scaleY(1); }
.yazi time { font-size: 10.5px; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; color: var(--metin-3); }
.yazi h3 { font-size: 19.5px; line-height: 1.32; font-weight: 400; }
.yazi p { font-size: 14.5px; color: var(--metin-2); line-height: 1.7; }
.yazi .oku { margin-top: auto; padding-top: 10px; font-size: 10.5px; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; color: var(--altin); }

/* ---------- İletişim + başvuru ---------- */
.iletisim-izgara { display: grid; grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr); gap: clamp(28px, 4.5vw, 70px); align-items: start; }
.iletisim-sol h2 { font-size: clamp(26px, 3.6vw, 46px); line-height: 1.06; margin: 16px 0 18px; letter-spacing: -.026em; }
.iletisim-sol h2 i { font-style: italic; color: var(--altin); }
.iletisim-sol > p { color: var(--metin-2); }
.satirlar { margin-top: 34px; display: grid; gap: 22px; }
.satir { display: flex; gap: 14px; align-items: flex-start; }
.satir svg { width: 16px; height: 16px; color: var(--altin); margin-top: 5px; flex-shrink: 0; }
.satir dt { font-size: 10px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--metin-3); margin-bottom: 5px; }
.satir dd { margin: 0; }
.satir a, .satir p { font-size: 15.5px; text-decoration: none; line-height: 1.55; color: var(--metin); }
.satir a { display: inline-flex; align-items: center; min-height: 44px; }
.satir a:hover { color: var(--altin); }

.form-kutu { border: 1px solid var(--cizgi); background: var(--yuzey); padding: clamp(24px, 3vw, 42px); box-shadow: var(--golge); }
.form-kutu > h3 { font-size: 23px; font-weight: 400; margin-bottom: 8px; }
.form-kutu > .aciklama { font-size: 14.5px; color: var(--metin-3); margin-bottom: 26px; }

fieldset { border: 0; border-top: 1px solid var(--cizgi-2); margin: 0 0 26px; padding: 20px 0 0; }
fieldset:first-of-type { border-top: 0; padding-top: 0; }
legend {
  padding: 0; margin-bottom: 18px;
  font-size: 10.5px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase;
  color: var(--metin-3); display: flex; align-items: center; gap: 10px;
}
legend b { color: var(--altin); font-weight: 700; }

.alan-satir { margin-bottom: 18px; }
label { display: block; font-size: 14px; font-weight: 600; margin-bottom: 7px; color: var(--metin); }
.zorunlu { font-size: 10px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--metin-3); margin-left: 6px; }
.ipucu { font-size: 12.5px; color: var(--metin-3); margin: 0 0 8px; }
input[type="text"], input[type="tel"], input[type="email"], select, textarea {
  width: 100%; font-family: "Figtree", sans-serif; font-size: 15px; font-weight: 400;
  color: var(--metin); background: var(--zemin);
  border: 1px solid var(--cizgi); border-radius: 0;
  padding: 13px 15px; min-height: 50px;
  transition: border-color .25s, background .25s;
}
:root[data-tema="acik"] input[type="text"],
:root[data-tema="acik"] input[type="tel"],
:root[data-tema="acik"] input[type="email"],
:root[data-tema="acik"] select,
:root[data-tema="acik"] textarea { background: var(--zemin-alt); }

input:disabled, select:disabled, textarea:disabled {
  background: var(--zemin-alt); color: var(--metin-3);
  border-color: var(--cizgi-2); cursor: not-allowed; opacity: 1;
}
input:disabled::placeholder, textarea:disabled::placeholder { color: var(--metin-4); }
textarea { min-height: 118px; resize: vertical; line-height: 1.66; }
input::placeholder, textarea::placeholder { color: var(--metin-4); }
input:hover, select:hover, textarea:hover { border-color: var(--metin-3); }
input:focus, textarea:focus, select:focus { outline: 3px solid var(--altin); outline-offset: 1px; border-color: var(--altin); }
select {
  -webkit-appearance: none; appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
  background-position: calc(100% - 21px) 22px, calc(100% - 15px) 22px;
  background-size: 6px 6px, 6px 6px; background-repeat: no-repeat;
  padding-right: 42px;
}
select option { background: var(--zemin); color: var(--metin); }
[aria-invalid="true"] { border-color: var(--uyari); border-width: 2px; }
.hata { display: none; font-size: 12.5px; color: var(--uyari); margin-top: 8px; border-left: 2px solid var(--uyari); padding-left: 10px; line-height: 1.5; }
.hata.acik { display: block; }
.ikili { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }

.onay-satir { display: flex; gap: 12px; align-items: flex-start; }
.onay-satir input[type="checkbox"] { width: 22px; height: 22px; min-height: 22px; margin: 3px 0 0; accent-color: var(--altin); flex-shrink: 0; cursor: pointer; }
.onay-satir label { font-size: 14px; font-weight: 400; line-height: 1.62; margin: 0; color: var(--metin-2); }
.onay-satir a { color: var(--altin); }

/* ─────────── İKİ ADIMLI BAŞVURU FORMU ─────────── */
.adimli { display: grid; grid-template-columns: 34px 1fr; gap: 20px; }
@media (max-width: 520px) { .adimli { grid-template-columns: 26px 1fr; gap: 14px; } }

.dikey-ray { display: grid; grid-template-rows: auto 1fr auto; justify-items: center; gap: 8px; padding-top: 3px; }
.ray-nokta {
  width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center;
  border: 1px solid var(--cizgi-2); color: var(--metin-4);
  font-family: "Newsreader", Georgia, serif; font-size: 13px; line-height: 1;
  transition: border-color .4s, color .4s, background .4s;
}
@media (max-width: 520px) { .ray-nokta { width: 24px; height: 24px; font-size: 12px; } }
.ray-nokta.etkin { border-color: var(--altin); color: var(--altin); background: var(--altin-sis); }
.ray-nokta.gecti { border-color: var(--altin-etiket); color: var(--zemin); background: var(--altin-etiket); }
.ray-nokta svg { width: 13px; height: 13px; }
.dikey-cizgi { width: 1px; background: var(--cizgi-2); position: relative; overflow: hidden; min-height: 40px; }
.dikey-cizgi::after {
  content: ""; position: absolute; inset: 0; background: var(--altin-3);
  transform: scaleY(0); transform-origin: top;
  transition: transform .55s cubic-bezier(.65, 0, .35, 1);
}
.dikey-cizgi.dolu::after { transform: scaleY(1); }

.adim-sahne { position: relative; min-width: 0; }
.adim-bas {
  font-size: 10.5px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase;
  color: var(--metin-3); margin: 4px 0 20px; display: flex; align-items: center; gap: 9px;
}
.adim-bas span { font-family: "Newsreader", Georgia, serif; font-size: 14px; letter-spacing: 0; color: var(--altin); }

.perde { transition: opacity .4s, transform .45s cubic-bezier(.16, .9, .28, 1); }
.perde[hidden] { display: none; }
.perde.cikan { opacity: 0; transform: scale(.97) translateY(-8px); }
.js .perde.giren { animation: perde-yuksel .5s cubic-bezier(.16, .9, .28, 1) both; }
@keyframes perde-yuksel {
  from { opacity: 0; transform: translateY(26px) scale(.985); }
  to { opacity: 1; transform: none; }
}

.adim-eylem { margin-top: 24px; }
.adim-eylem.ikili-eylem { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.adim-eylem.ikili-eylem .btn-cizgi { flex: 0 0 auto; justify-content: center; }
/* Dar kutuda "Başvurumu İlet" taşmasın: yer kalmayınca alt satıra insin. */
.adim-eylem.ikili-eylem .btn-dolu { flex: 1 1 210px; min-width: 0; justify-content: center; padding-left: 20px; padding-right: 20px; }

/* JavaScript kapalıysa iki adım da açık dursun — form yine doldurulabilir */
html:not(.js) .dikey-ray, html:not(.js) #adimIleri, html:not(.js) #adimGeri { display: none; }
html:not(.js) .adimli { grid-template-columns: 1fr; }
html:not(.js) .perde[hidden] { display: block; }

.form-uyari { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--cizgi-2); display: grid; gap: 8px; }
.form-uyari p { font-size: 12.5px; color: var(--metin-3); line-height: 1.6; padding-left: 14px; position: relative; }
.form-uyari p::before { content: ""; position: absolute; left: 0; top: .68em; width: 7px; height: 1px; background: var(--altin-3); }

.form-sonuc { display: none; text-align: center; padding: 32px 0; }
.form-sonuc.acik { display: block; animation: bel .5s ease both; }
.sonuc-halka {
  width: 66px; height: 66px; margin: 0 auto 24px;
  border: 1px solid var(--altin); border-radius: 50%;
  display: grid; place-items: center; color: var(--altin); position: relative;
}
.sonuc-halka::after { content: ""; position: absolute; inset: -10px; border: 1px solid var(--altin-ince); border-radius: 50%; opacity: .4; animation: hale 2.8s ease-out infinite; }
@keyframes hale { 0% { transform: scale(.94); opacity: .45; } 100% { transform: scale(1.18); opacity: 0; } }
.form-sonuc h3 { font-size: 25px; font-weight: 400; margin-bottom: 12px; }
.form-sonuc p { color: var(--metin-2); font-size: 15px; max-width: 44ch; margin: 0 auto; }
.form-sonuc a { color: var(--altin); }

/* ---------- Footer ---------- */
/* Altbilgi her iki temada da kendi zeminini kullanır: koyuda daha derin
   bir lacivert bant, açıkta sayfadan bir ton koyu krem. İçindeki metin
   renkleri jetonlardan gelir, ayrıca dayatma yok. */
footer { background: var(--dip-zemin); padding: clamp(52px, 6.5vw, 80px) 0 34px; border-top: 1px solid var(--cizgi-2); }
/* Sol şerit iki temada da lacivert kalır; oradaki soluk metin krem tonu ister. */
:root[data-tema="acik"] .rail .bekliyor { color: rgba(243,241,234,.66); }
.dip-izgara { display: grid; grid-template-columns: minmax(0,1.5fr) repeat(3, minmax(0,1fr)); gap: clamp(24px, 3vw, 48px); }
/* Altbilgi açık temada krem olduğu için logo aynı süzgeci ister. */
.dip-logo img { height: 46px; width: auto; margin-bottom: 16px; filter: var(--logo-suzgec); }
.dip-metin { font-size: 14px; color: var(--metin-2); max-width: 34ch; line-height: 1.74; }
.dip-sutun h4 { font-size: 10px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: var(--metin-3); margin: 0 0 18px; }
.dip-sutun ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.dip-sutun a { font-size: 14px; color: var(--metin-2); text-decoration: none; display: inline-flex; align-items: center; min-height: 40px; transition: color .25s; }
.dip-sutun a:hover { color: var(--altin); }
.dip-alt {
  margin-top: clamp(36px, 5vw, 56px); padding-top: 26px; border-top: 1px solid var(--cizgi-2);
  /* Sicil satırları kaldırıldı; kalan çekince ve telif ayırıcı çizginin
     altında ortalanır. Baro ve sicil bilgisi kurucu kartlarında duruyor. */
  display: grid; gap: 10px; justify-items: center; text-align: center;
  font-size: 12.5px; color: var(--metin-3); line-height: 1.65;
}
/* Sicil satırlarıyla aynı hizada dursun; sağa yaslı hâli masaüstünde kopuk duruyordu. */
.dip-not { max-width: 68ch; }

/* ---------- Mobil alt bar ---------- */
.alt-bar { display: none; }

/* ---------- Reveal ---------- */
.js .bel { opacity: 0; transform: translateY(24px); transition: opacity .85s cubic-bezier(.2,.7,.3,1), transform .85s cubic-bezier(.2,.7,.3,1); }
.js .bel.gorundu { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
  .bel { opacity: 1; transform: none; }
  .giris h1 .kelime, .giris-metin, .giris-eylem { opacity: 1; transform: none; }
  .alan { opacity: 1; }
  .filet::after { transform: scaleX(1); }
}

/* ---------- Responsive ---------- */
@media (max-width: 1080px) {
  .giris-izgara { grid-template-columns: 1fr; }
  .giris-portre { max-width: 460px; margin: 0 auto; }
  .ucler, .adimlar { grid-template-columns: 1fr; }
  .ikiyol { grid-template-columns: 1fr; }
  .sahne { grid-template-columns: 1fr; }
  .sahne-sabit { position: static; }
  .buyuk-no, .sahne-ad { display: none; }
  .alan { opacity: 1; }
  .kurucular { grid-template-columns: 1fr; }
  .yazilar { grid-template-columns: 1fr; }
  .iletisim-izgara { grid-template-columns: 1fr; }
  .kunye { grid-template-columns: repeat(2, 1fr); }
  .kunye > div:not(.kunye-imlec):nth-child(3) { border-left: 0; padding-left: 0; }
  .kunye > div:not(.kunye-imlec):nth-child(n+3) { border-top: 1px solid var(--cizgi-2); }
  .ilerleme { display: none; }
  .govde { margin-right: 0; }
}
@media (max-width: 860px) {
  /* Sol dikey şerit mobilde kaldırıldı: 390px'lik ekranda 48px'i (%12) alıyor,
     içindeki telefon bağlantısı zaten alttaki barda var. */
  .rail { display: none; }
  .govde { margin-left: 0; }
  .ust { left: 0; height: 66px; }
  .menu, .ust-cta { display: none; }
  .menu-dugme { display: block; }

  /* Logo, açık temada 52px yüksekliğe + dolguya çıkıyor ve 249px genişleyip
     menü düğmesini ekran dışına itiyordu. */
  .marka img { height: 30px; }
  .ust { padding: 0 16px; gap: 10px; }
  .ust-sag { flex-shrink: 0; }
  .ikili { grid-template-columns: 1fr; }
  .dip-izgara { grid-template-columns: 1fr 1fr; }
  .kurucu dl > div { grid-template-columns: 1fr; gap: 2px; }
  body { padding-bottom: 66px; }
  .alt-bar {
    display: grid; grid-template-columns: repeat(3, 1fr);
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 95;
    background: var(--rail); border-top: 1px solid var(--cizgi-koyu-2);
  }
  .alt-bar a {
    min-height: 66px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px;
    text-decoration: none; color: #F3F1EA;
    font-size: 10.5px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase;
    border-right: 1px solid var(--cizgi-koyu-2);
  }
  .alt-bar a:last-child { border-right: 0; background: var(--altin); color: var(--altin-uzeri); }
  .alt-bar svg { width: 17px; height: 17px; }
  .menu.acik {
    display: flex; flex-direction: column; align-items: stretch; gap: 0;
    position: fixed; left: 0; right: 0; top: 66px; z-index: 79;
    background: var(--zemin); border-bottom: 1px solid var(--cizgi);
    padding: 8px clamp(20px, 4.4vw, 64px) 20px;
  }
  .menu.acik a { border-bottom: 1px solid var(--cizgi-2); min-height: 52px; }
  .menu.acik a::after { display: none; }
}
@media (max-width: 520px) {
  .dip-izgara { grid-template-columns: 1fr; }
  .kunye { grid-template-columns: 1fr; }
  .kunye > div:not(.kunye-imlec) { border-left: 0; padding-left: 0; border-top: 1px solid var(--cizgi-2); }
  .kunye > div:not(.kunye-imlec):first-child { border-top: 0; }
}

/* ============================================================
   ÇALIŞMA ALANI SAYFALARI
   ============================================================ */

/* — Site yolu — */
.iz { padding: 100px 0 0; }
.iz .kap { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; font-size: 12.5px; color: var(--metin-3); }
.iz a { color: var(--metin-3); text-decoration: none; transition: color .25s; }
.iz a:hover { color: var(--altin); }
.iz [aria-current] { color: var(--metin-2); }

/* — Sayfa başlığı — */
.alan-bas { padding: clamp(34px, 5vw, 60px) 0 clamp(20px, 3vw, 36px); position: relative; overflow: hidden; }
.alan-bas::before {
  content: ""; position: absolute; right: 2%; top: -30%;
  width: 44vw; height: 44vw; max-width: 620px; max-height: 620px;
  background: radial-gradient(circle, var(--hale), transparent 66%);
  filter: blur(38px); pointer-events: none;
}
.alan-bas-izgara { position: relative; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: clamp(24px, 4vw, 56px); align-items: center; }
.alan-no { font-family: "Newsreader", serif; font-size: 15px; letter-spacing: .28em; color: var(--altin); }
.alan-bas h1 {
  font-size: clamp(32px, 4.6vw, 62px); line-height: 1.04;
  letter-spacing: -.028em; margin-top: 14px; max-width: 18ch; font-weight: 300;
}
.alan-giris { margin-top: 24px; max-width: 62ch; display: grid; gap: 14px; }
.alan-giris p { color: var(--metin-2); font-size: 16.5px; line-height: 1.78; }
.alan-amblem { color: var(--altin); opacity: .9; }
.alan-amblem .amblem { display: block; }

/* — İlk adımlar — */
.ilk-adimlar {
  border: 1px solid var(--altin-3); background: var(--altin-sis);
  padding: clamp(24px, 3vw, 38px); margin: clamp(20px, 3vw, 32px) 0 0;
  position: relative;
}
.ilk-adimlar::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--altin); }
.ilk-adimlar h2 { font-size: clamp(20px, 2.2vw, 26px); font-weight: 400; margin-bottom: 20px; }
.ilk-adimlar ol { margin: 0; padding: 0; list-style: none; counter-reset: ia; display: grid; gap: 12px; max-width: 74ch; }
.ilk-adimlar li { counter-increment: ia; position: relative; padding-left: 38px; font-size: 15.5px; color: var(--metin-2); line-height: 1.7; }
.ilk-adimlar li::before {
  content: counter(ia); position: absolute; left: 0; top: 1px;
  width: 24px; height: 24px; display: grid; place-items: center;
  border: 1px solid var(--altin-3); color: var(--altin);
  font-family: "Newsreader", serif; font-size: 12.5px;
}
.ilk-eylem { margin-top: 26px; display: flex; flex-wrap: wrap; gap: 12px; }

/* — Kapsam — */
.kapsam { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1px; background: var(--cizgi-2); border: 1px solid var(--cizgi-2); }
.kapsam-grup { background: var(--zemin); padding: clamp(24px, 2.8vw, 36px); transition: background .4s; }
.blok.derin .kapsam-grup { background: var(--zemin-alt); }
.kapsam-grup:hover { background: var(--yuzey); }
.kapsam-grup h3 { font-size: 20px; font-weight: 400; margin-bottom: 16px; line-height: 1.3; }
.kapsam-grup ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 9px; }
.kapsam-grup li { font-size: 14.5px; color: var(--metin-2); line-height: 1.62; padding-left: 18px; position: relative; }
.kapsam-grup li::before { content: ""; position: absolute; left: 0; top: .72em; width: 8px; height: 1px; background: var(--altin-3); }

/* — Mevzuat — */
.mevzuat { border-top: 1px solid var(--cizgi-2); }
.mevzuat-satir {
  display: grid; grid-template-columns: 92px minmax(0,1fr); gap: clamp(16px, 2.5vw, 32px);
  padding: 22px 4px; border-bottom: 1px solid var(--cizgi-2); align-items: start;
}
.mevzuat-no { font-family: "Newsreader", serif; font-size: 26px; font-weight: 300; color: var(--altin); font-variant-numeric: tabular-nums; line-height: 1.1; }
.mevzuat-satir h3 { font-size: 18px; font-weight: 400; line-height: 1.35; }
.mevzuat-satir p { margin-top: 7px; font-size: 14.5px; color: var(--metin-2); line-height: 1.68; max-width: 68ch; }

/* — Süreç — */
.surec { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--cizgi-2); }
.surec-adim {
  display: grid; grid-template-columns: 74px minmax(0,1fr); gap: clamp(16px, 2.5vw, 32px);
  padding: 24px 4px; border-bottom: 1px solid var(--cizgi-2); align-items: start;
}
.surec-no { font-family: "Newsreader", serif; font-size: 30px; font-weight: 300; color: var(--altin); font-variant-numeric: tabular-nums; line-height: 1; }
.surec-adim h3 { font-size: 19px; font-weight: 400; line-height: 1.3; }
.surec-adim p { margin-top: 8px; font-size: 15px; color: var(--metin-2); line-height: 1.72; max-width: 70ch; }

/* — SSS — */
.sss { border-top: 1px solid var(--cizgi-2); }
.sss-oge { border-bottom: 1px solid var(--cizgi-2); }
.sss-oge summary {
  list-style: none; cursor: pointer; padding: 20px 4px;
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
  font-family: "Newsreader", serif; font-size: clamp(17px, 1.8vw, 21px); font-weight: 400;
  line-height: 1.35; color: var(--metin); transition: color .25s; min-height: 44px;
}
.sss-oge summary::-webkit-details-marker { display: none; }
.sss-oge summary:hover { color: var(--altin); }
.sss-isaret { position: relative; width: 15px; height: 15px; flex: none; }
.sss-isaret::before, .sss-isaret::after {
  content: ""; position: absolute; background: var(--altin); transition: transform .32s cubic-bezier(.2,.7,.3,1);
}
.sss-isaret::before { left: 0; right: 0; top: 7px; height: 1px; }
.sss-isaret::after { top: 0; bottom: 0; left: 7px; width: 1px; }
.sss-oge[open] .sss-isaret::after { transform: rotate(90deg); }
.sss-cevap { padding: 0 4px 24px; max-width: 76ch; }
.sss-cevap p { font-size: 15.5px; color: var(--metin-2); line-height: 1.78; }

/* — Kapanış — */
.kapanis { padding-bottom: clamp(56px, 7vw, 92px); }
.kapanis-kutu { border: 1px solid var(--cizgi); background: var(--yuzey); padding: clamp(28px, 4vw, 52px); box-shadow: var(--golge); }
.kapanis-kutu h2 { font-size: clamp(24px, 3.2vw, 40px); line-height: 1.1; font-weight: 300; letter-spacing: -.024em; max-width: 20ch; }
.kapanis-kutu h2 i { font-style: italic; color: var(--altin); }
.kapanis-kutu > p { margin-top: 16px; color: var(--metin-2); max-width: 62ch; }
.kapanis-eylem { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 12px; }
.kapanis-bilgi { margin: 32px 0 0; padding-top: 24px; border-top: 1px solid var(--cizgi-2); display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 20px; }
.kapanis-bilgi dt { font-size: 10px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--metin-3); margin-bottom: 6px; }
.kapanis-bilgi dd { margin: 0; font-size: 14.5px; color: var(--metin-2); line-height: 1.6; }
.kapanis-bilgi a { color: var(--metin); text-decoration: none; }
.kapanis-bilgi a:hover { color: var(--altin); }
.serh { margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--cizgi-2); font-size: 12.5px; color: var(--metin-3); line-height: 1.7; max-width: 84ch; }

/* — Komşu alanlar — */
.komsu { border-top: 1px solid var(--cizgi-2); }
.komsu-izgara { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--cizgi-2); padding: 0; max-width: 1260px; }
.komsu-bag { background: var(--zemin); padding: clamp(22px, 2.6vw, 32px) clamp(18px, 2.4vw, 30px); text-decoration: none; display: grid; gap: 8px; transition: background .35s; }
.komsu-bag:hover { background: var(--yuzey); }

/* .blok.derin .X (0,3,0) özgüllüğü .X:hover (0,2,0) kuralını eziyordu;
   koyu bölümlerdeki kartlarda hover dolgusu hiç uygulanmıyordu. */
.blok.derin .yol:hover,
.blok.derin .ucler > div:hover,
.blok.derin .adim:hover,
.blok.derin .yazi:hover,
.blok.derin .kapsam-grup:hover { background: var(--yuzey); }
.komsu-etiket { font-size: 10px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--altin); }
.komsu-ad { font-family: "Newsreader", serif; font-size: 18px; font-weight: 400; line-height: 1.3; color: var(--metin); }
.komsu-bag.sonraki { text-align: right; }
.komsu-bag.tumu { text-align: center; }

@media (max-width: 900px) {
  .alan-bas-izgara { grid-template-columns: 1fr; }
  .alan-amblem { order: -1; }
  .alan-amblem .amblem { width: 76px; height: 76px; }
  .komsu-izgara { grid-template-columns: 1fr; }
  .komsu-bag.sonraki, .komsu-bag.tumu { text-align: left; }
  .mevzuat-satir, .surec-adim { grid-template-columns: 56px minmax(0,1fr); }
  .iz { padding-top: 88px; }
}

/* Ana sayfadaki alan → detay sayfası bağlantısı */
.alan-bag {
  display: inline-flex; align-items: center; gap: 9px; margin-top: 20px; min-height: 44px;
  font-size: 11px; font-weight: 600; letter-spacing: .15em; text-transform: uppercase;
  color: var(--altin); text-decoration: none; transition: gap .3s, color .25s;
}
.alan-bag:hover { gap: 15px; color: var(--altin-2); }
.js .alan:not(.etkin) .alan-bag { opacity: .5; }

/* Panelden henüz girilmemiş bilgi */
.bekliyor { color: var(--metin-4); font-style: italic; }

/* Footer sosyal medya — yalnızca panelden açılırsa görünür */
.dip-sosyal {
  margin-top: clamp(30px, 4vw, 44px); padding-top: 24px;
  border-top: 1px solid var(--cizgi-2);
  display: flex; align-items: center; gap: 18px; flex-wrap: wrap;
}
.dip-sosyal-etiket {
  font-size: 10px; font-weight: 600; letter-spacing: .2em;
  text-transform: uppercase; color: var(--metin-3);
}
.dip-sosyal-baglar { display: flex; gap: 8px; }
.dip-sosyal-baglar a {
  width: 44px; height: 44px; display: grid; place-items: center;
  border: 1px solid var(--cizgi); color: var(--metin-2);
  transition: border-color .25s, color .25s;
}
.dip-sosyal-baglar a:hover { border-color: var(--altin); color: var(--altin); }
.dip-sosyal-baglar svg { width: 17px; height: 17px; }

/* Sol şerit — üstteki işaret (logo tekrarı kaldırıldı) */
.rail-ust { width: 5px; height: 5px; border-radius: 50%; background: var(--altin-3); opacity: .85; flex: none; }
.rail-yazi.rail-bag { text-decoration: none; transition: color .25s; }
.rail-yazi.rail-bag:hover { color: var(--altin); }

/* Akış kartlarında hedef kitle satırı */
/* İş kalemleri <details open> içinde geliyor. Geniş ekranda summary gizli,
   liste her zaman açık — görünüm değişmiyor. Dar ekranda betik open'ı
   kaldırıyor ve kart "Detaylar" düğmesiyle açılıp kapanıyor. */
.yol-detay > summary { display: none; }
.yol-detay { display: contents; }

.yol-kimler {
  margin-top: 16px; padding: 14px 16px;
  background: var(--altin-sis); border-left: 2px solid var(--altin-3);
  font-size: 13.5px; line-height: 1.7; color: var(--metin-2);
}
.yol-kimler span {
  display: block; font-size: 10px; font-weight: 600; letter-spacing: .18em;
  text-transform: uppercase; color: var(--altin-2); margin-bottom: 6px;
}

/* ============================================================
   YAZI SAYFASI
   ============================================================ */
.yazi-bas { padding: clamp(34px, 5vw, 60px) 0 clamp(18px, 2.4vw, 30px); position: relative; overflow: hidden; }
.yazi-bas::before {
  content: ""; position: absolute; right: 4%; top: -40%;
  width: 40vw; height: 40vw; max-width: 560px; max-height: 560px;
  background: radial-gradient(circle, var(--hale), transparent 66%);
  filter: blur(38px); pointer-events: none;
}
.yazi-bas .kap { position: relative; }
.yazi-bas .ustyazi { font-size: 11px; letter-spacing: .2em; }
.yazi-bas h1 {
  font-size: clamp(30px, 4.1vw, 54px); line-height: 1.07;
  letter-spacing: -.026em; margin-top: 14px; max-width: 22ch; font-weight: 300;
}
.yazi-ozet {
  margin-top: 22px; max-width: 60ch;
  font-size: 17px; line-height: 1.78; color: var(--metin-2);
}

/* Gövde — okunabilirlik için dar sütun */
.yazi-govde { max-width: 68ch; padding: clamp(18px, 2.6vw, 30px) 0 0; }
.yazi-govde > * + * { margin-top: 20px; }
.yazi-govde p { font-size: 16.5px; line-height: 1.85; color: var(--metin-2); }
.yazi-govde h2 {
  font-family: "Newsreader", serif; font-weight: 400;
  font-size: clamp(22px, 2.4vw, 30px); line-height: 1.24; letter-spacing: -.018em;
  color: var(--metin); margin-top: 42px;
}
.yazi-govde h2 + p { margin-top: 14px; }
.yazi-govde ul, .yazi-govde ol { padding-left: 22px; display: grid; gap: 9px; }
.yazi-govde li { font-size: 16px; line-height: 1.75; color: var(--metin-2); }
.yazi-govde li::marker { color: var(--altin-3); }
.yazi-govde blockquote {
  margin: 30px 0; padding: 4px 0 4px 22px; border-left: 2px solid var(--altin-3);
  font-family: "Newsreader", serif; font-size: clamp(19px, 2vw, 24px);
  line-height: 1.55; font-style: italic; color: var(--metin);
}

/* Yasal not + eylem */
.yazi-not {
  margin: clamp(38px, 5vw, 60px) 0 0; max-width: 68ch;
  border-top: 1px solid var(--cizgi-2); padding-top: clamp(22px, 3vw, 32px);
}
.yazi-not > p { font-size: 13.5px; line-height: 1.7; color: var(--metin-3); max-width: 60ch; }
.yazi-not .ilk-eylem { margin-top: 22px; display: flex; flex-wrap: wrap; gap: 12px; }

@media (max-width: 620px) {
  .yazi-govde p, .yazi-govde li { font-size: 15.5px; }
}

/* ============================================================
   TÜM YAZILAR SAYFASI
   ============================================================ */
.liste-bas { padding: clamp(34px, 5vw, 60px) 0 clamp(18px, 2.4vw, 28px); position: relative; overflow: hidden; }
.liste-bas::before {
  content: ""; position: absolute; right: 4%; top: -40%;
  width: 40vw; height: 40vw; max-width: 560px; max-height: 560px;
  background: radial-gradient(circle, var(--hale), transparent 66%);
  filter: blur(38px); pointer-events: none;
}
.liste-bas .kap { position: relative; }
.liste-bas h1 {
  font-size: clamp(30px, 4.3vw, 56px); line-height: 1.06;
  letter-spacing: -.026em; margin-top: 14px; max-width: 20ch; font-weight: 300;
}
.liste-bas h1 i { font-style: italic; color: var(--altin); }
.liste-aciklama { margin-top: 22px; max-width: 62ch; font-size: 16.5px; line-height: 1.78; color: var(--metin-2); }
.liste-sayi {
  margin-top: 18px; font-size: 10.5px; font-weight: 600;
  letter-spacing: .2em; text-transform: uppercase; color: var(--altin-etiket);
}

.suzgec { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 26px; }
.suzgec-dg {
  padding: 9px 16px; min-height: 40px;
  background: transparent; border: 1px solid var(--cizgi-2); border-radius: 2px;
  color: var(--metin-3); cursor: pointer;
  font-family: "Figtree", sans-serif; font-size: 11px; font-weight: 600;
  letter-spacing: .12em; text-transform: uppercase;
  transition: color .25s, border-color .25s, background .25s;
}
.suzgec-dg:hover { color: var(--altin); border-color: var(--altin-3); }
.suzgec-dg.etkin { color: var(--altin); border-color: var(--altin); background: var(--altin-sis); }

.liste-yazilar { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 1000px) { .liste-yazilar { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .liste-yazilar { grid-template-columns: 1fr; } }
.liste-yazilar .yazi[hidden] { display: none; }
.liste-bos { margin: 40px 0; color: var(--metin-3); font-size: 15px; }

/* Ana sayfadaki bölümden tüm yazılara geçiş */
.yazilar-tumu { margin-top: clamp(24px, 3vw, 36px); }
.yazilar-tumu a {
  display: inline-flex; align-items: center; gap: 10px; min-height: 44px;
  font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
  color: var(--altin); text-decoration: none; transition: color .25s, gap .25s;
}
.yazilar-tumu a:hover { color: var(--altin-2); gap: 15px; }
.yazilar-tumu svg { width: 14px; height: 14px; }

/* Bölüm altındaki küçük yasal not */
.bolum-not {
  margin-top: 14px; max-width: 58ch;
  font-size: 12.5px; line-height: 1.65; color: var(--metin-4);
}

/* ============================================================
   YASAL METİNLER  (KVKK · Çerez · Gizlilik)
   ============================================================ */
.yasal-bas { padding: clamp(34px, 5vw, 60px) 0 clamp(18px, 2.4vw, 28px); position: relative; overflow: hidden; }
.yasal-bas::before {
  content: ""; position: absolute; right: 4%; top: -40%;
  width: 40vw; height: 40vw; max-width: 560px; max-height: 560px;
  background: radial-gradient(circle, var(--hale), transparent 66%);
  filter: blur(38px); pointer-events: none;
}
.yasal-bas .kap { position: relative; }
.yasal-bas h1 {
  font-size: clamp(28px, 3.9vw, 48px); line-height: 1.08;
  letter-spacing: -.024em; margin-top: 14px; max-width: 22ch; font-weight: 300;
}
.yasal-ozet { margin-top: 20px; max-width: 62ch; font-size: 16.5px; line-height: 1.78; color: var(--metin-2); }
.yasal-tarih {
  margin-top: 18px; font-size: 10.5px; font-weight: 600;
  letter-spacing: .2em; text-transform: uppercase; color: var(--altin-etiket);
  font-variant-numeric: tabular-nums;
}

/* Dizin + gövde */
.yasal-duzen {
  display: grid; grid-template-columns: 232px minmax(0, 1fr);
  gap: clamp(28px, 4vw, 64px); align-items: start;
  padding-top: clamp(18px, 2.6vw, 30px);
}
.yasal-dizin { position: sticky; top: 104px; }
.yasal-dizin .dizin-bas {
  font-size: 10px; font-weight: 600; letter-spacing: .2em;
  text-transform: uppercase; color: var(--altin-etiket);
  padding-bottom: 12px; border-bottom: 1px solid var(--cizgi-2);
}
.yasal-dizin ol { list-style: none; padding: 0; margin: 14px 0 0; display: grid; gap: 2px; }
.yasal-dizin a {
  display: block; padding: 6px 0 6px 13px; border-left: 1px solid var(--cizgi-2);
  font-size: 13px; line-height: 1.45; color: var(--metin-3); text-decoration: none;
  transition: color .25s, border-color .25s;
}
.yasal-dizin a:hover, .yasal-dizin a:focus-visible { color: var(--metin); border-left-color: var(--altin-3); }

.yasal-govde { max-width: 70ch; }
.yasal-bolum { scroll-margin-top: 100px; }
.yasal-bolum + .yasal-bolum { margin-top: clamp(34px, 4.4vw, 52px); }
.yasal-bolum > * + * { margin-top: 18px; }
.yasal-bolum h2 {
  font-family: "Newsreader", serif; font-weight: 400;
  font-size: clamp(21px, 2.3vw, 28px); line-height: 1.24; letter-spacing: -.018em;
  color: var(--metin);
}
.yasal-bolum h3 {
  font-family: "Figtree", sans-serif; font-weight: 600;
  font-size: 14px; letter-spacing: .04em; color: var(--metin);
  margin-top: 30px;
}
.yasal-bolum p { font-size: 16px; line-height: 1.85; color: var(--metin-2); }
.yasal-bolum h2 + p, .yasal-bolum h3 + p { margin-top: 13px; }
.yasal-bolum ul, .yasal-bolum ol { padding-left: 22px; display: grid; gap: 9px; }
.yasal-bolum li { font-size: 15.5px; line-height: 1.75; color: var(--metin-2); }
.yasal-bolum li::marker { color: var(--altin-3); }
.yasal-bolum strong { color: var(--metin); font-weight: 600; }
.yasal-bolum a { color: var(--altin); text-underline-offset: 3px; }

/* Tablolar — dar ekranda kendi içinde kayar */
.yasal-tablo { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.yasal-bolum table {
  width: 100%; min-width: 480px; border-collapse: collapse;
  font-size: 14px; line-height: 1.6;
}
.yasal-bolum th, .yasal-bolum td {
  text-align: left; vertical-align: top; padding: 12px 16px 12px 0;
  border-bottom: 1px solid var(--cizgi-2);
}
.yasal-bolum th {
  font-family: "Figtree", sans-serif; font-size: 10.5px; font-weight: 600;
  letter-spacing: .14em; text-transform: uppercase; color: var(--altin-etiket);
  border-bottom-color: var(--cizgi);
}
.yasal-bolum td { color: var(--metin-2); }

/* Kapanış */
.yasal-kapan {
  margin: clamp(40px, 5vw, 64px) 0 0;
  border-top: 1px solid var(--cizgi-2); padding-top: clamp(22px, 3vw, 32px);
}
.yasal-kapan > p { font-size: 13.5px; line-height: 1.7; color: var(--metin-3); max-width: 60ch; }
.yasal-kapan .ilk-eylem { margin-top: 20px; display: flex; flex-wrap: wrap; gap: 12px; }
.yasal-diger {
  margin-top: 30px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px;
}
.yasal-diger span {
  font-size: 10px; font-weight: 600; letter-spacing: .2em;
  text-transform: uppercase; color: var(--metin-4);
}
.yasal-diger a { font-size: 13.5px; color: var(--metin-2); text-decoration: none; border-bottom: 1px solid var(--cizgi-2); padding-bottom: 2px; transition: color .25s, border-color .25s; }
.yasal-diger a:hover, .yasal-diger a:focus-visible { color: var(--altin); border-bottom-color: var(--altin-3); }

@media (max-width: 900px) {
  .yasal-duzen { grid-template-columns: minmax(0, 1fr); gap: 26px; }
  .yasal-dizin { position: static; }
  .yasal-dizin ol { grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); }
}
@media (max-width: 620px) {
  .yasal-bolum p { font-size: 15.5px; }
  .yasal-bolum li { font-size: 15px; }
}

/* ============================================================
   MOBİL DÜZELTMELER
   390px'lik gerçek bir ekranda ölçülerek yazıldı.
   ============================================================ */
@media (max-width: 860px) {

  /* — Söz bölümü: 480px'lik daire 386px ekranda 220px taşıyor ve
       kadran yazıları başlığın üstüne biniyordu. Süs olduğu için kalkıyor. — */
  /* — Künye şeridi (Kuruluş / Konum / Diller / Çalışma saatleri) mobilde gizli:
       dört bilgi alt alta dizilince ekranın tamamını yiyor, aynı bilgiler
       zaten İletişim bölümünde ve altbilgide duruyor. — */
  /* — Uzun iş kalemi listesi "Detaylar" arkasına alınıyor.
       Kutu değil: sayfadaki diğer bağlantılarla aynı dil — versal altın
       yazı + ok. Ok kapalıyken aşağı, açıkken yukarı bakar. — */
  .yol-detay { display: block; margin-top: 4px; }
  .yol-detay > summary {
    display: inline-flex; align-items: center; gap: 9px;
    list-style: none; cursor: pointer; min-height: 44px;
    font-family: "Figtree", sans-serif; font-size: 11px; font-weight: 600;
    letter-spacing: .15em; text-transform: uppercase;
    color: var(--altin); transition: gap .3s, color .25s;
  }
  .yol-detay > summary::-webkit-details-marker { display: none; }
  .yol-detay > summary:hover { gap: 15px; color: var(--altin-2); }
  .yol-detay > summary:focus-visible { outline: 3px solid var(--altin); outline-offset: 3px; }
  .yol-detay > summary::after {
    content: ""; width: 14px; height: 14px; flex: none;
    background: currentColor;
    -webkit-mask: var(--ok-simge) center / contain no-repeat;
            mask: var(--ok-simge) center / contain no-repeat;
    transform: rotate(90deg);
    transition: transform .35s cubic-bezier(.2,.7,.3,1);
  }
  .yol-detay[open] > summary::after { transform: rotate(-90deg); }
  .yol-sayi {
    font-variant-numeric: tabular-nums; color: var(--metin-3);
    letter-spacing: .06em; font-weight: 500;
  }
  .yol-detay > ul { margin-top: 18px; }

  .kunye { display: none; }

  .daire-kap { display: none; }
  .soz .kap { position: relative; z-index: 1; }
  .soz-ilkeler { display: flex; }

  /* — Dokunma hedefleri: 44px'in altındakiler parmakla ıskalanıyor — */
  .iz .kap { gap: 6px 12px; }
  .iz a { display: inline-flex; align-items: center; min-height: 44px; }
  .dip-sutun a { min-height: 44px; }
  .yasal-dizin a { padding-top: 11px; padding-bottom: 11px; }
  .yasal-diger a { display: inline-flex; align-items: center; min-height: 44px; }
  .iletisim-liste a,
  .kunye a { display: inline-flex; align-items: center; min-height: 44px; }

  /* — Küçük yazılar: 12.5px telefonda yorucu — */
  .iz .kap,
  .serh,
  .bolum-not,
  .dip-alt,
  .dip-not,
  .yazi-not > p,
  .yasal-kapan > p { font-size: 13.5px; }
  .yasal-tarih, .liste-sayi { font-size: 11px; }
  .alan li { font-size: 13.5px; }
  .ipucu, .form-uyari p { font-size: 13.5px; }

  /* — Geniş tablolar kendi kabında kayıyor; kaydığı belli olsun — */
  .yasal-tablo {
    position: relative;
    /* sağ kenarda soluk bir gölge: daha fazla içerik olduğunu gösterir */
    background:
      linear-gradient(to right, var(--zemin) 30%, transparent),
      linear-gradient(to left,  var(--zemin) 30%, transparent) 100% 0,
      radial-gradient(farthest-side at 0 50%, rgba(14,27,57,.14), transparent),
      radial-gradient(farthest-side at 100% 50%, rgba(14,27,57,.14), transparent) 100% 0;
    background-repeat: no-repeat;
    background-size: 34px 100%, 34px 100%, 14px 100%, 14px 100%;
    background-attachment: local, local, scroll, scroll;
  }
  .yasal-bolum table:not([data-yigin]) { min-width: 0; }

  /* Üç ve daha fazla sütunlu tablolar telefonda satır satır kartlara döner:
     yatay kaydırmak yerine her hücre kendi başlığıyla alt alta okunur. */
  .yasal-bolum table[data-yigin] { min-width: 0; display: block; }
  .yasal-bolum table[data-yigin] thead { display: none; }
  .yasal-bolum table[data-yigin] tbody,
  .yasal-bolum table[data-yigin] tr,
  .yasal-bolum table[data-yigin] td { display: block; }
  .yasal-bolum table[data-yigin] tr {
    border: 1px solid var(--cizgi-2); padding: 4px 14px 12px;
    margin-top: 14px; background: var(--yuzey-2);
  }
  .yasal-bolum table[data-yigin] tr:first-child { margin-top: 0; }
  .yasal-bolum table[data-yigin] td {
    border-bottom: 0; padding: 12px 0 0;
  }
  .yasal-bolum table[data-yigin] td + td { border-top: 1px solid var(--cizgi-2); }
  .yasal-bolum table[data-yigin] td::before {
    content: attr(data-etiket);
    display: block; margin: 0 0 5px;
    font-family: "Figtree", sans-serif; font-size: 10px; font-weight: 600;
    letter-spacing: .14em; text-transform: uppercase; color: var(--altin-etiket);
  }
  .yasal-bolum table[data-yigin] td:empty { display: none; }
  /* yığın kipinde kaydırma gölgesi anlamsız */
  .yasal-tablo:has(table[data-yigin]) { background: none; overflow-x: visible; }
}

@media (max-width: 520px) {
  /* Başlık: logo + tema + menü üçlüsü 390px'e ancak sığıyor */
  .ust { padding: 0 13px; gap: 8px; }
  .marka img { height: 27px; }
  .menu-dugme { padding: 0 13px; }

  /* Altbilgi bağlantıları tek sütunda dururken yan yana sıkışmasın */
  .dip-sutun ul { display: grid; }
}

/* ============================================================
   DAR EKRANDA İLERLEME: KENAR ÇİZGİSİ
   Masaüstündeki 50px'lik sağ ray (ad + çizgi + yüzde) telefonda
   yer yiyor. 1080px altında ray, ekranın en sağ kenarına yapışık
   2 piksellik bir şeride dönüşüyor: hiç genişlik tüketmiyor.
   ============================================================ */

/* Alt sayfalardaki sade sürüm geniş ekranda hiç görünmez —
   masaüstü tasarımı olduğu gibi kalsın. */
.ilerleme-sade { display: none; }

@media (max-width: 1080px) {
  .ilerleme, .ilerleme-sade {
    display: block; left: auto; right: 0; top: 0; bottom: 0;
    width: 3px; padding: 0; gap: 0; z-index: 96; pointer-events: none;
  }
  .il-ad, .il-yuzde { display: none; }
  /* İz görünür olmalı, yoksa çizginin nerede olduğu anlaşılmıyor. */
  .il-yol { width: 3px; height: 100%; background: var(--cizgi); }
  .il-dolu { width: 3px; }
}

/* Açık temada dolgu: --altin (5.17:1) ince şeritte silik kalıyordu;
   bir kademe koyu altın krem zeminde 7.03:1 ile net okunuyor. */
/* Koyu temadaki dolgu soluk şampanya altını (#E3D2AE, S23 V89). Açıkta
   --altin-2 (S75 V39) kahve gibi okunuyordu; aynı tonu daha doygun ve
   parlak tutuyoruz: krem üstünde 4.15:1, grafik eşiği 3:1'in üstünde. */
:root[data-tema="acik"] .il-dolu { background: #94711F; }

/* Mobil alt barın üstünde dursun, barı kesmesin */
@media (max-width: 860px) {
  .ilerleme, .ilerleme-sade { bottom: 66px; }
}

@media (prefers-reduced-motion: reduce) {
  .il-dolu { transition: none; }
}

/* ============================================================
   MOBİL ALTBİLGİ — KISA SÜRÜM (seçenek C)
   Telefonda altbilgi 1424 pikseldi (iki ekrandan fazla). Dokuz
   çalışma alanı bağlantısı tek başına 463 piksel tutuyordu; bunlar
   zaten menüde ve sayfanın kendi bölümünde var. Mobilde sütun
   yapısı bırakılıp yatay bir bağlantı satırına dönülüyor.
   Masaüstü altbilgi olduğu gibi kalır.
   ============================================================ */
.dip-mobil { display: none; }

@media (max-width: 860px) {
  /* Dokuz alanlık sütun mobilde yok; yerine tek bağlantı */
  .dip-s-alanlar { display: none; }
  .dip-mobil { display: block; }

  /* Tanım metninin ikinci cümlesi mobilde fazla */
  .dip-uzun { display: none; }

  /* Ofis sütunu: başlıksız, yatay saran bağlantı satırı */
  .dip-s-ofis h4 { display: none; }
  .dip-s-ofis ul { display: flex; flex-wrap: wrap; gap: 0 20px; }
  .dip-s-ofis li { display: block; }

  /* Yasal: daha sessiz, tek satır hâlinde */
  .dip-s-yasal { margin-top: 4px; }
  .dip-s-yasal h4 { display: none; }
  .dip-s-yasal ul { display: flex; flex-wrap: wrap; gap: 0 18px; }
  .dip-s-yasal a { font-size: 13px; color: var(--metin-3); min-height: 40px; }

  .dip-izgara { gap: 14px; }
  .dip-alt { margin-top: 22px; }
}

/* ─────────────────────────────────────────────────────────────
   404 — bulunamayan adres
   Kendi başına duran sayfa: sol şerit ve üst bar yok, bu yüzden
   .govde'nin şerit payını burada sıfırlıyoruz.
   ───────────────────────────────────────────────────────────── */
.hata-govde { margin: 0; display: flex; align-items: center; min-height: 100svh; }
.hata-kap { text-align: center; padding-top: 48px; padding-bottom: 48px; }
.hata-marka { display: inline-block; margin-bottom: 40px; }
.hata-marka img { height: 44px; width: auto; filter: var(--logo-suzgec); }
.hata-kap .ustyazi { margin-bottom: 14px; }
.hata-kap h1 {
  font-family: "Newsreader", Georgia, "Times New Roman", serif;
  font-size: clamp(28px, 4.6vw, 44px);
  font-weight: 400; line-height: 1.18; text-wrap: balance;
  color: var(--metin); margin: 0 0 18px;
}
.hata-metin {
  max-width: 52ch; margin: 0 auto; color: var(--metin-2);
  font-size: 15.5px; line-height: 1.7;
}
.hata-baglar {
  margin-top: 34px; display: flex; flex-wrap: wrap;
  justify-content: center; gap: 10px 26px;
}
.hata-baglar a {
  color: var(--metin-3); font-size: 13.5px; letter-spacing: .02em;
  text-decoration: none; padding-bottom: 2px;
  border-bottom: 1px solid transparent; transition: color .2s, border-color .2s;
}
.hata-baglar a:hover { color: var(--altin); border-bottom-color: var(--altin-ince); }
.hata-eylem { justify-content: center; margin-top: 32px; }

@media (max-width: 860px) {
  .hata-marka img { height: 34px; }
  .hata-marka { margin-bottom: 30px; }
}
