/* ==========================================================================
   Patiline — genel site stilleri (TASARIM §4, Yön 1 "Sıcak & sade")
   Bu dosyanın başı (belirteçler + temel) Temel aşamasında yazıldı; Genel
   site ajanı sayfa bileşenlerini dosyanın SONUNA ekler.
   Kural: satır içi stil yok (CSP style-src 'self'); doygun renk blokları,
   kırmızı/yanıp sönen "Acil" rozeti yok (TVHB Uyg. Yön. md. 97).
   ========================================================================== */

/* ---------- 1. Yazı tipleri (kendi sunucumuzdan; latin + latin-ext) ---------- */

@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fontlar/nunito-latin-ext-800-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fontlar/nunito-latin-800-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../fontlar/nunito-latin-ext-900-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../fontlar/nunito-latin-900-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Figtree";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fontlar/figtree-latin-ext-400-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Figtree";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fontlar/figtree-latin-400-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Figtree";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fontlar/figtree-latin-ext-500-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Figtree";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fontlar/figtree-latin-500-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Figtree";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fontlar/figtree-latin-ext-600-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Figtree";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fontlar/figtree-latin-600-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- 2. Tasarım belirteçleri ---------- */

:root {
  /* renkler (TASARIM §4 tablosu birebir) */
  --zemin: #FFFAF4;
  --yuzey: #FFFFFF;
  --yuzey-sicak: #FFF1E2;
  --yuzey-turuncu: #FDE4C6;
  --cizgi: #F0E3D3;
  --metin: #1C1917;
  --metin-ikincil: #57534E;
  --marka: #F17E01;          /* zemin/vurgu; METİN RENGİ OLARAK KULLANILMAZ (2,7:1) */
  --marka-koyu: #A85300;     /* bağlantılar, küçük turuncu metin */
  --marka-cok-koyu: #7A3E00; /* turuncu açık zemin üstündeki metin */
  --koyu: #1C1917;           /* footer zemini */
  --koyu-metin: #E7E0D8;     /* footer metni */
  --basari: #2F7D4F;         /* yalnız "şu an açık" noktası */

  /* yazı */
  --yazi-baslik: "Nunito", ui-rounded, system-ui, sans-serif;
  --yazi-govde: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
  --boy-h1: clamp(2rem, 5vw, 2.9rem);
  --boy-h2: 1.75rem;
  --boy-h3: 1.25rem;
  --boy-govde: 1.0625rem;
  --boy-kucuk: 0.9375rem;
  --satir: 1.65;
  --okuma: 68ch;

  /* biçim ve boşluk */
  --kose: 18px;
  --kose-buyuk: 22px;
  --kose-hap: 999px;
  --kap-genislik: 1180px;
  --kenar: clamp(1rem, 4vw, 2rem);    /* yatay sayfa boşluğu */
  --bosluk-1: 0.5rem;
  --bosluk-2: 1rem;
  --bosluk-3: 1.5rem;
  --bosluk-4: 2.5rem;
  --bosluk-5: 4rem;
  --golge: 0 1px 2px rgba(28, 25, 23, 0.05);
  --dokunma: 44px;                    /* en küçük dokunma hedefi */
  --alt-cubuk-yukseklik: 64px;
}

/* ---------- 3. Sıfırlama ---------- */

*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: var(--bosluk-3);
}
body {
  min-height: 100vh;
  background: var(--zemin);
  color: var(--metin);
  font-family: var(--yazi-govde);
  font-size: var(--boy-govde);
  line-height: var(--satir);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img, svg, video, picture { display: block; max-width: 100%; }
img { height: auto; }
input, button, textarea, select { font: inherit; color: inherit; }
button { cursor: pointer; }
p, li, h1, h2, h3, h4, figcaption { overflow-wrap: break-word; }
ul[class], ol[class] { list-style: none; padding: 0; }
table { border-collapse: collapse; }
address { font-style: normal; }

/* ---------- 4. Tipografi ---------- */

h1, h2, h3, h4 {
  font-family: var(--yazi-baslik);
  line-height: 1.15;
  color: var(--metin);
  text-wrap: balance;
}
h1 { font-size: var(--boy-h1); font-weight: 900; letter-spacing: -0.01em; line-height: 1.08; }
h2 { font-size: var(--boy-h2); font-weight: 800; }
h3 { font-size: var(--boy-h3); font-weight: 800; }
p { text-wrap: pretty; }
strong, b { font-weight: 600; }
small { font-size: var(--boy-kucuk); }

a { color: var(--marka-koyu); text-underline-offset: 0.18em; text-decoration-thickness: 1px; }
a:hover { color: var(--marka-cok-koyu); text-decoration-thickness: 2px; }

.okuma { max-width: var(--okuma); }
.okuma > * + * { margin-top: 1em; }
.okuma h2 { margin-top: 1.8em; }
.okuma h3 { margin-top: 1.5em; }
.okuma ul, .okuma ol { padding-left: 1.3em; }
.okuma li + li { margin-top: 0.35em; }
.okuma blockquote {
  border-left: 4px solid var(--marka);
  padding: 0.25em 0 0.25em 1em;
  color: var(--metin-ikincil);
}
.okuma img { border-radius: var(--kose); }
.okuma figcaption { font-size: var(--boy-kucuk); color: var(--metin-ikincil); margin-top: 0.5em; }
.okuma hr { border: 0; border-top: 1px solid var(--cizgi); margin: 2em 0; }

.ikincil-metin { color: var(--metin-ikincil); }
.ust-baslik { /* başlık üstü küçük etiket ("Blog", "Hizmetler") */
  font-size: var(--boy-kucuk);
  font-weight: 600;
  color: var(--marka-koyu);
}

/* ---------- 5. Erişilebilirlik ---------- */

:focus-visible {
  outline: 3px solid var(--marka-koyu);
  outline-offset: 2px;
  border-radius: 4px;
}
main:focus { outline: none; } /* "İçeriğe geç" hedefi; kendisi halka göstermesin */

.gorunmez { /* ekran okuyucuya açık, görsel olarak gizli */
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0);
  white-space: nowrap; border: 0;
}

.icerige-gec {
  position: absolute;
  left: var(--bosluk-2);
  top: -100px;
  z-index: 100;
  padding: 0.75rem 1.25rem;
  background: var(--metin);
  color: var(--zemin);
  border-radius: var(--kose-hap);
  font-weight: 600;
  text-decoration: none;
}
.icerige-gec:focus { top: var(--bosluk-2); color: var(--zemin); }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* ---------- 6. Yerleşim ---------- */

.kap {
  width: 100%;
  max-width: var(--kap-genislik);
  margin-inline: auto;
  padding-inline: var(--kenar);
}
.bolum { padding-block: var(--bosluk-5); }
.bolum--sicak { background: var(--yuzey-sicak); }
.bolum__baslik { margin-bottom: var(--bosluk-3); }
.izgara {
  display: grid;
  gap: var(--bosluk-2);
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
}
.yigin > * + * { margin-top: var(--bosluk-2); }

/* ---------- 7. Geliştirme şeridi (yalnız PATILINE_GELISTIRME=1) ---------- */

.teyit-seridi {
  background: #FFF3B0;
  color: #3D3200;
  border-bottom: 1px solid #E8D46A;
  font-size: 0.875rem;
  line-height: 1.45;
  padding-block: 0.5rem;
}

/* ---------- 8. Üst bölüm (header) ve menü ---------- */

.ust {
  background: var(--zemin);
  border-bottom: 1px solid var(--cizgi);
}
.ust__ic {
  display: flex;
  align-items: center;
  gap: var(--bosluk-3);
  min-height: 84px;
  padding-block: var(--bosluk-2);
}
.logo { display: inline-flex; flex: none; }
.logo__resim { height: 52px; width: auto; }

.ana-menu { margin-left: auto; }
.ana-menu__liste { display: flex; gap: 0.25rem; }
.ana-menu a {
  display: inline-flex;
  align-items: center;
  min-height: var(--dokunma);
  padding-inline: 0.7rem;
  border-radius: var(--kose-hap);
  color: var(--metin);
  font-weight: 500;
  font-size: var(--boy-kucuk);
  text-decoration: none;
}
.ana-menu a:hover { background: var(--yuzey-sicak); color: var(--metin); }
.ana-menu a[aria-current] { color: var(--marka-cok-koyu); background: var(--yuzey-sicak); }

.ust__tel {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: var(--dokunma);
  font-weight: 600;
  font-size: var(--boy-kucuk);
  color: var(--marka-koyu);
  text-decoration: none;
  white-space: nowrap;
}

/* Mobil menü: JS'siz <details>; masaüstünde gizli */
.menu-mobil { display: none; position: relative; margin-left: auto; }
.menu-mobil__dugme {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: var(--dokunma);
  padding-inline: 1rem;
  border: 1px solid var(--cizgi);
  border-radius: var(--kose-hap);
  background: var(--yuzey);
  font-weight: 600;
  cursor: pointer;
  list-style: none;
}
.menu-mobil__dugme::-webkit-details-marker { display: none; }
.menu-mobil[open] .menu-mobil__dugme { background: var(--yuzey-sicak); }
.menu-mobil__panel {
  position: absolute;
  right: 0;
  top: calc(100% + 0.5rem);
  z-index: 50;
  min-width: 14rem;
  padding: 0.5rem;
  background: var(--yuzey);
  border: 1px solid var(--cizgi);
  border-radius: var(--kose);
  box-shadow: 0 8px 30px rgba(28, 25, 23, 0.08);
}
.menu-mobil__panel ul { list-style: none; padding: 0; }
.menu-mobil__panel a {
  display: flex;
  align-items: center;
  min-height: var(--dokunma);
  padding-inline: 0.85rem;
  border-radius: 12px;
  color: var(--metin);
  font-weight: 500;
  text-decoration: none;
}
.menu-mobil__panel a:hover, .menu-mobil__panel a[aria-current] { background: var(--yuzey-sicak); }

/* ---------- 9. Butonlar ---------- */

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: var(--dokunma);
  padding: 0.7rem 1.4rem;
  border: 2px solid transparent;
  border-radius: var(--kose-hap);
  font-family: var(--yazi-govde);
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
/* turuncu zemin üstünde KOYU metin (6,7:1) — beyaz metin kontrastı yetmez */
.btn--birincil { background: var(--marka); color: var(--metin); }
.btn--birincil:hover { background: #E07400; color: var(--metin); }
.btn--ikincil { background: transparent; border-color: var(--metin); color: var(--metin); }
.btn--ikincil:hover { background: var(--yuzey-sicak); color: var(--metin); }
.btn--sade { background: var(--yuzey); border-color: var(--cizgi); color: var(--metin); }
.btn--sade:hover { border-color: var(--metin-ikincil); color: var(--metin); }
.btn .ikon { flex: none; }
.butonlar { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: var(--bosluk-3); }

/* ---------- 10. Kart, kutu, rozet, durum ---------- */

.kart {
  background: var(--yuzey);
  border: 1px solid var(--cizgi);
  border-radius: var(--kose);
  padding: 1.375rem;
}
.kart__etiket { font-size: 0.8125rem; font-weight: 600; color: var(--marka-koyu); margin-bottom: 0.35rem; }
.kart__baslik { font-size: 1.125rem; line-height: 1.3; margin-bottom: 0.4rem; }
.kart__baslik a { color: inherit; text-decoration: none; }
.kart__baslik a:hover { text-decoration: underline; }
.kart__metin { font-size: var(--boy-kucuk); color: var(--metin-ikincil); line-height: 1.55; }

.kutu { /* "Kısa cevap", bilgi notları: yumuşak sıcak zemin */
  background: var(--yuzey-sicak);
  border: 1px solid var(--cizgi);
  border-radius: var(--kose);
  padding: var(--bosluk-3);
  color: var(--metin);
}
.kutu--uyari { border-left: 4px solid var(--marka); } /* kırmızı yok (reklam yönetmeliği) */

.rozet {
  display: inline-block;
  padding: 0.2rem 0.65rem;
  border-radius: var(--kose-hap);
  background: var(--yuzey-sicak);
  color: var(--marka-cok-koyu);
  font-size: 0.8125rem;
  font-weight: 600;
}

.durum {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.4rem 0.85rem;
  border-radius: var(--kose-hap);
  background: var(--yuzey-sicak);
  color: var(--marka-cok-koyu);
  font-size: 0.875rem;
  font-weight: 500;
}
.durum__nokta { width: 8px; height: 8px; border-radius: 50%; background: var(--metin-ikincil); flex: none; }
.durum--acik .durum__nokta { background: var(--basari); }

.ikon { width: 1.25em; height: 1.25em; }

/* ---------- 11. Tablolar, NAP ---------- */

.saat-tablosu { width: 100%; max-width: 22rem; font-size: var(--boy-kucuk); }
.saat-tablosu th, .saat-tablosu td { padding: 0.3rem 0; text-align: left; font-weight: 400; }
.saat-tablosu td { text-align: right; font-variant-numeric: tabular-nums; }
.saat-tablosu tr + tr { border-top: 1px solid var(--cizgi); }
.saat-tablosu__bugun th, .saat-tablosu__bugun td { font-weight: 600; }

.nap { line-height: 1.6; }
.nap__ad { font-weight: 600; }

/* ---------- 12. Alt bölüm (footer) ---------- */

.alt {
  background: var(--koyu);
  color: var(--koyu-metin);
  margin-top: var(--bosluk-5);
  padding-top: var(--bosluk-4);
  font-size: var(--boy-kucuk);
}
.alt a { color: #FFFFFF; }
.alt a:hover { color: var(--yuzey-turuncu); }
.alt :focus-visible { outline-color: var(--marka); }
.alt__ic {
  display: grid;
  gap: var(--bosluk-4);
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
  padding-bottom: var(--bosluk-4);
}
.alt__logo { height: 48px; width: auto; margin-bottom: var(--bosluk-2); }
.alt__baslik {
  font-family: var(--yazi-govde);
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase; /* lang="tr" sayesinde i→İ doğru */
  color: #FFFFFF;
  margin-bottom: 0.75rem;
}
.alt__baglanti { margin-top: 0.75rem; }
.alt__baglanti a { display: inline-flex; align-items: center; min-height: var(--dokunma); }
.alt__not { margin-top: 0.75rem; color: var(--koyu-metin); }
.alt__ozel-gunler { margin-top: 0.75rem; padding-left: 1.1em; }
.alt .saat-tablosu tr + tr { border-top-color: #3A3430; }
/* Dokunma hedefi ≥ 44 px (TASARIM §4): 32 px + 2 px aralıkla alt alta duran bağlantılarda
   telefonda komşuya basılıyordu. Satır yüksekliği hedefin kendisi; ek aralık gerekmez. */
.alt__liste { display: grid; gap: 0; }
.alt__liste a { display: inline-flex; align-items: center; min-height: var(--dokunma); text-decoration: none; }
.alt__liste a:hover { text-decoration: underline; }
.alt__liste--yasal { margin-top: var(--bosluk-2); padding-top: var(--bosluk-2); border-top: 1px solid #3A3430; }
.alt__dip {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0.5rem 1.5rem;
  padding-block: var(--bosluk-3);
  border-top: 1px solid #3A3430;
  color: #B8AFA6;
  font-size: 0.8125rem;
}

/* ---------- 13. Mobil sabit alt çubuk: Ara · Yol tarifi ---------- */

.alt-cubuk { display: none; }

/* ---------- 14. Sayfalama, hata sayfası ---------- */

.sayfalama {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin-top: var(--bosluk-4);
}
.sayfalama__durum { color: var(--metin-ikincil); font-size: var(--boy-kucuk); }

.hata { padding-block: var(--bosluk-5); }
.hata h1 { margin-bottom: var(--bosluk-2); }
.hata__metin { color: var(--metin-ikincil); max-width: 40rem; }
.hata__metin + .hata__metin { margin-top: 0.5rem; }
.hata__baglantilar { display: flex; flex-wrap: wrap; gap: 0.5rem 1.25rem; margin-top: var(--bosluk-4); }

/* ---------- 15. Duyarlı düzen ---------- */

@media (max-width: 860px) {
  .ust__ic { min-height: 68px; gap: var(--bosluk-2); }
  .logo__resim { height: 42px; }
  .ana-menu, .ust__tel { display: none; }
  .menu-mobil { display: block; }

  html { scroll-padding-bottom: calc(var(--alt-cubuk-yukseklik) + 1rem); }
  body { padding-bottom: calc(var(--alt-cubuk-yukseklik) + env(safe-area-inset-bottom, 0px)); }
  .alt-cubuk {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.5rem;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    padding: 0.5rem var(--kenar) calc(0.5rem + env(safe-area-inset-bottom, 0px));
    background: var(--yuzey);
    border-top: 1px solid var(--cizgi);
  }
  .alt-cubuk__dugme {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-height: 48px;
    border-radius: var(--kose-hap);
    border: 2px solid var(--metin);
    color: var(--metin);
    font-weight: 600;
    text-decoration: none;
  }
  .alt-cubuk__dugme--ara { background: var(--marka); border-color: var(--marka); }
  .alt-cubuk__dugme:hover { color: var(--metin); }

  .bolum { padding-block: var(--bosluk-4); }
}

@media print {
  .alt-cubuk, .menu-mobil, .icerige-gec, .teyit-seridi { display: none !important; }
  body { background: #FFFFFF; padding-bottom: 0; }
  .alt { background: #FFFFFF; color: #000000; }
}

/* ==========================================================================
   Genel site ajanı: sayfa bileşenleri bu satırın altına
   ========================================================================== */

/* ---------- 16. İç sayfa üstü ve genel parçalar ---------- */

.sayfa-ust { padding-block: var(--bosluk-4) var(--bosluk-3); }
.sayfa-ust .ust-baslik { margin-bottom: 0.4rem; }
.sayfa-ust__giris {
  margin-top: 0.85rem;
  max-width: 60ch;
  color: var(--metin-ikincil);
  font-size: 1.125rem;
}

.bolum--ince { padding-block: var(--bosluk-4); }
.bolum__ust {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.25rem 1.5rem;
  margin-bottom: var(--bosluk-3);
}
.ok-baglanti {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  min-height: var(--dokunma);
  font-weight: 600;
  text-decoration: none;
}
.ok-baglanti:hover { text-decoration: underline; }

.rozet--sade { background: var(--yuzey); border: 1px solid var(--cizgi); color: var(--metin-ikincil); }
/* Rozet görünüşte küçük kalır; yalnız tıklama alanı 44 px'e büyür (görünmez ::after). */
a.rozet { position: relative; text-decoration: none; }
a.rozet::after { content: ""; position: absolute; inset: calc((100% - var(--dokunma)) / 2) 0; }
a.rozet:hover { background: var(--yuzey-turuncu); color: var(--marka-cok-koyu); }

/* Tüm karta yayılan bağlantı: tek odak noktası, kart her yerinden tıklanır */
.kart--baglanti { position: relative; transition: border-color 0.15s ease; }
.kart--baglanti:hover { border-color: #E2CDB4; }
.kart--baglanti .kart__baslik a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }

.bos-durum {
  padding: var(--bosluk-5) var(--bosluk-3);
  border-radius: var(--kose-buyuk);
  background: var(--yuzey-sicak);
  text-align: center;
}
.bos-durum p { max-width: 46ch; margin: 0.6rem auto 0; color: var(--metin-ikincil); }
.bos-durum .butonlar { justify-content: center; }

.ozel-gunler { margin-top: 0.75rem; padding-left: 1.1em; font-size: var(--boy-kucuk); }

/* Sayfa sonu iletişim bloğu (_parcalar.html::iletisim_blogu) */
.iletisim-blogu {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--bosluk-3) var(--bosluk-4);
  margin-top: var(--bosluk-5);
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border-radius: var(--kose-buyuk);
  background: var(--yuzey-sicak);
}
.iletisim-blogu__metin > * + * { margin-top: 0.6rem; }
.iletisim-blogu .durum { background: var(--yuzey); }
.iletisim-blogu__butonlar { margin-top: 0; }

/* Görsel yer tutucu: logodaki işaret, soluk; gerçek fotoğraf gelene kadar */
.yer-tutucu {
  position: relative;
  display: flex;
  align-items: flex-end;
  aspect-ratio: 4 / 3.3;
  padding: 1.1rem;
  overflow: hidden;
  border-radius: var(--kose-buyuk);
  background: var(--yuzey-turuncu);
  color: var(--marka-cok-koyu);
  font-size: 0.875rem;
}
.yer-tutucu::before,
.yazi-kart__gorsel--bos::before {
  content: "";
  position: absolute;
  background: url("../img/patiline-isaret.svg") no-repeat center / contain;
  opacity: 0.12;
}
.yer-tutucu::before { right: -8%; top: -6%; width: 62%; aspect-ratio: 1; }
.yer-tutucu span { position: relative; }

/* ---------- 17. Ana sayfa ---------- */

.hero { padding-block: var(--bosluk-4) var(--bosluk-5); }
.hero__ic {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  align-items: center;
  gap: var(--bosluk-4);
}
.hero__ad { margin-top: var(--bosluk-3); }
.hero h1 { margin-top: 0.4rem; }
.hero__alt { margin-top: 1rem; max-width: 34em; font-size: 1.125rem; color: var(--metin-ikincil); }
.hero__tel { margin-top: var(--bosluk-2); font-size: var(--boy-kucuk); color: var(--metin-ikincil); }
.hero__tel a { font-weight: 600; }
.hero__resim { width: 100%; aspect-ratio: 4 / 3.3; object-fit: cover; border-radius: var(--kose-buyuk); }

/* "Hangi durum beklemez?" — sıcak zemin; kırmızı/yanıp sönme YOK (TVHB md. 97) */
.acil-serit__ic {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  align-items: start;
  gap: var(--bosluk-3) var(--bosluk-4);
}
.acil-serit__giris { margin-top: 0.6rem; color: var(--metin-ikincil); }
.acil-serit .butonlar { margin-top: var(--bosluk-2); }
.acil-liste { display: grid; gap: 0.55rem; }
.acil-liste li { position: relative; padding-left: 1.5rem; }
.acil-liste li::before {
  content: "";
  position: absolute;
  left: 0.2rem;
  top: 0.62em;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--marka);
}
.acil-serit__not,
.acil-kutusu__not {
  margin-top: var(--bosluk-2);
  padding: 0.85rem 1.1rem;
  border: 1px solid var(--cizgi);
  border-left: 4px solid var(--marka);
  border-radius: 12px;
  background: var(--yuzey);
  font-weight: 600;
}

.izgara--hizmet { grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); }

.konum {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
  gap: var(--bosluk-4);
}
.konum__blok > * + * { margin-top: var(--bosluk-2); }
.konum__blok--saat { padding: var(--bosluk-3); border: 1px solid var(--cizgi); border-radius: var(--kose); background: var(--yuzey); }
.konum__not { color: var(--metin-ikincil); font-size: var(--boy-kucuk); }

/* ---------- 18. Galeri ---------- */

.galeri-izgara {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr));
}
.galeri-izgara--ana { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.galeri-oge { margin: 0; }
.galeri-oge__baglanti {
  display: block;
  overflow: hidden;
  border-radius: var(--kose);
  background: var(--yuzey-turuncu);
}
.galeri-oge img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform 0.2s ease; }
a.galeri-oge__baglanti:hover img { transform: scale(1.02); }

/* Büyük görsel (site.js, <dialog>) */
.buyuk-gorsel {
  width: min(94vw, 1100px);
  max-width: none;
  max-height: 94vh;
  padding: 0;
  border: 0;
  border-radius: var(--kose);
  background: var(--yuzey);
  color: var(--metin);
}
.buyuk-gorsel::backdrop { background: rgba(28, 25, 23, 0.82); }
.buyuk-gorsel__resim { width: 100%; max-height: 78vh; object-fit: contain; background: var(--koyu); }
.buyuk-gorsel__alt {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
}
.buyuk-gorsel__aciklama { flex: 1 1 14rem; font-size: var(--boy-kucuk); color: var(--metin-ikincil); }
.buyuk-gorsel__dugmeler { display: flex; flex-wrap: wrap; gap: 0.5rem; }

/* ---------- 19. Blog: liste, kartlar, süzgeç ---------- */

.suzgec { margin-bottom: var(--bosluk-3); }
.suzgec__liste,
.sayfa-gezinti ul { display: flex; flex-wrap: wrap; gap: 0.5rem; list-style: none; padding: 0; }
.suzgec a,
.sayfa-gezinti a {
  display: inline-flex;
  align-items: center;
  min-height: var(--dokunma);
  padding-inline: 1.1rem;
  border: 1px solid var(--cizgi);
  border-radius: var(--kose-hap);
  background: var(--yuzey);
  color: var(--metin);
  font-size: var(--boy-kucuk);
  font-weight: 500;
  text-decoration: none;
}
.suzgec a:hover,
.sayfa-gezinti a:hover { border-color: var(--metin-ikincil); color: var(--metin); }
.suzgec a[aria-current] { background: var(--metin); border-color: var(--metin); color: var(--zemin); }

.yazi-izgara {
  display: grid;
  gap: var(--bosluk-3);
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 18rem), 1fr));
}
.yazi-kart {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--cizgi);
  border-radius: var(--kose);
  background: var(--yuzey);
  transition: border-color 0.15s ease;
}
.yazi-kart:hover { border-color: #E2CDB4; }
.yazi-kart__gorsel { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--yuzey-turuncu); }
.yazi-kart__gorsel img { width: 100%; height: 100%; object-fit: cover; }
.yazi-kart__gorsel--bos::before { left: 50%; top: 50%; width: 34%; aspect-ratio: 1; transform: translate(-50%, -50%); }
.yazi-kart__ic { display: flex; flex: 1; flex-direction: column; gap: 0.45rem; padding: 1rem 1.15rem 1.3rem; }
.yazi-kart__ust {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.8125rem;
  color: var(--metin-ikincil);
}
.yazi-kart__baslik { font-size: 1.125rem; line-height: 1.3; }
.yazi-kart__baslik a { color: inherit; text-decoration: none; }
.yazi-kart__baslik a::after { content: ""; position: absolute; inset: 0; }
.yazi-kart__baslik a:hover { text-decoration: underline; }
.yazi-kart__ozet { font-size: var(--boy-kucuk); line-height: 1.55; color: var(--metin-ikincil); }

/* ---------- 20. Blog yazısı ---------- */

.yazi { padding-block: var(--bosluk-3) 0; }
.yazi__ust,
.yazi__kapak,
.kisa-cevap,
.icindekiler,
.acil-kutusu,
.kaynaklar,
.yazi__not { max-width: var(--okuma); }

.kirinti ol {
  display: flex;
  flex-wrap: wrap;
  gap: 0.15rem 0.5rem;
  list-style: none;
  padding: 0;
  font-size: var(--boy-kucuk);
  color: var(--metin-ikincil);
}
.kirinti li + li::before { content: "›"; content: "›" / ""; margin-right: 0.5rem; }
.kirinti a { color: var(--metin-ikincil); display: inline-flex; align-items: center; min-height: var(--dokunma); }
.kirinti a:hover { color: var(--metin); }
.kirinti [aria-current] { color: var(--metin); }

.yazi__etiketler { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: var(--bosluk-3); }
.yazi__etiketler:empty { display: none; }
.yazi h1 { margin-top: 0.75rem; }
.imza { display: grid; gap: 0.2rem; margin-top: 1rem; font-size: var(--boy-kucuk); color: var(--metin-ikincil); }
.imza__yazar { font-weight: 600; color: var(--metin); }

.yazi__kapak { margin: var(--bosluk-3) 0 0; }
.yazi__kapak img { width: 100%; border-radius: var(--kose-buyuk); }

.kisa-cevap { margin-top: var(--bosluk-3); }
.kutu__baslik { margin-bottom: 0.4rem; font-size: 1.125rem; font-weight: 800; }

.icindekiler {
  margin-top: var(--bosluk-3);
  padding: 1.1rem 1.35rem;
  border: 1px solid var(--cizgi);
  border-radius: var(--kose);
  background: var(--yuzey);
}
.icindekiler__baslik { font-size: 1rem; font-weight: 800; }
.icindekiler ol { margin-top: 0.5rem; padding-left: 1.3em; }
.icindekiler li + li { margin-top: 0.3rem; }

.yazi__govde { margin-top: var(--bosluk-4); }
.yazi__govde h2,
.yazi__govde h3 { scroll-margin-top: var(--bosluk-3); }
.yazi__govde figure { margin: 1.5em 0; }

.acil-kutusu { margin-top: var(--bosluk-4); }
.acil-kutusu > * + * { margin-top: 0.75rem; }
.acil-kutusu .butonlar { margin-top: var(--bosluk-2); }

.kaynaklar { margin-top: var(--bosluk-4); font-size: var(--boy-kucuk); }
.kaynaklar h2 { font-size: 1.125rem; }
.kaynaklar ol { margin-top: 0.5rem; padding-left: 1.3em; }
.kaynaklar li { overflow-wrap: anywhere; }
.kaynaklar li + li { margin-top: 0.3rem; }

.yazi__not {
  margin-top: var(--bosluk-3);
  padding-top: var(--bosluk-2);
  border-top: 1px solid var(--cizgi);
  font-size: var(--boy-kucuk);
  color: var(--metin-ikincil);
}
.ilgili { margin-top: var(--bosluk-5); }
.ilgili h2 { margin-bottom: var(--bosluk-3); }

/* ---------- 21. Hizmetler ---------- */

.sayfa-gezinti { margin-bottom: var(--bosluk-3); }
.hizmet {
  display: grid;
  grid-template-columns: minmax(0, 18rem) minmax(0, 1fr);
  gap: var(--bosluk-2) var(--bosluk-4);
  padding-block: var(--bosluk-4);
  border-top: 1px solid var(--cizgi);
  scroll-margin-top: var(--bosluk-2);
}
.hizmet__kisa { margin-top: 0.6rem; color: var(--metin-ikincil); }
.hizmet__ayrinti {
  display: grid;
  gap: var(--bosluk-3);
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
}
.hizmet__ayrinti h3 { margin-bottom: 0.3rem; font-size: 1.0625rem; }
.hizmet__yazilar {
  margin-top: var(--bosluk-3);
  padding: 1rem 1.25rem;
  border-radius: var(--kose);
  background: var(--yuzey-sicak);
}
.hizmet__yazilar h3 { font-size: 1rem; }
.hizmet__yazilar ul { margin-top: 0.4rem; padding-left: 1.2em; }

/* ---------- 22. SSS (<details>) ---------- */

.sss { display: grid; gap: 0.75rem; max-width: var(--okuma); }
.sss__oge { border: 1px solid var(--cizgi); border-radius: var(--kose); background: var(--yuzey); }
.sss__oge[open] { border-color: #E2CDB4; }
.sss__soru {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: var(--dokunma);
  padding: 1rem 1.25rem;
  cursor: pointer;
  list-style: none;
  font-family: var(--yazi-baslik);
  font-size: 1.0625rem;
  font-weight: 800;
  line-height: 1.3;
}
.sss__soru::-webkit-details-marker { display: none; }
.sss__soru::after {
  content: "+";
  content: "+" / "";
  flex: none;
  font-size: 1.5rem;
  line-height: 1;
  color: var(--marka-koyu);
}
.sss__oge[open] .sss__soru::after { content: "–"; content: "–" / ""; }
.sss__cevap { padding: 0 1.25rem 1.2rem; }
.sss__cevap p + p { margin-top: 0.75rem; }

/* ---------- 23. Hakkımızda ---------- */

.hakkimizda {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);
  align-items: start;
  gap: var(--bosluk-4);
}
.hakkimizda__metin p { font-size: 1.125rem; }
.hakkimizda__hekim { color: var(--metin-ikincil); }
.hakkimizda__yan > * + * { margin-top: var(--bosluk-3); }
.hakkimizda__resim { width: 100%; border-radius: var(--kose-buyuk); }
.yan-kart > * + * { margin-top: var(--bosluk-2); }

/* ---------- 24. İletişim ve form ---------- */

.iletisim-duzen {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  align-items: start;
  gap: var(--bosluk-4);
}
.iletisim-bilgi > * + * { margin-top: var(--bosluk-3); }
.bilgi-blok h2 { margin-bottom: 0.75rem; font-size: 1.25rem; }
.bilgi-blok > * + * { margin-top: 0.75rem; }
.bilgi-blok__not { color: var(--metin-ikincil); font-size: var(--boy-kucuk); }
.bilgi-blok .butonlar { margin-top: var(--bosluk-2); }

.form-kutu {
  --alan-cizgi: #8C8279; /* beyaz zeminde ≥3:1 (WCAG 1.4.11) */
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid var(--cizgi);
  border-radius: var(--kose-buyuk);
  background: var(--yuzey);
  scroll-margin-top: var(--bosluk-2);
}
.form-kutu > h2 { font-size: 1.5rem; }
.form-kutu > * + * { margin-top: var(--bosluk-2); }
.form { display: grid; gap: 1.25rem; }
.form__not { font-size: 0.875rem; color: var(--metin-ikincil); }

.alan { display: grid; gap: 0.35rem; }
.alan label { font-weight: 600; }
.alan__ipucu { font-size: 0.875rem; color: var(--metin-ikincil); }
.alan input[type="text"],
.alan input[type="tel"],
.alan textarea {
  width: 100%;
  min-height: var(--dokunma);
  padding: 0.65rem 0.85rem;
  border: 1px solid var(--alan-cizgi);
  border-radius: 12px;
  background: var(--yuzey);
  line-height: 1.4;
}
.alan textarea { min-height: 9rem; resize: vertical; }
.alan input:focus-visible,
.alan textarea:focus-visible { border-color: var(--marka-koyu); }
.alan--hatali input[type="text"],
.alan--hatali input[type="tel"],
.alan--hatali textarea { border: 2px solid var(--marka-cok-koyu); }
.alan__hata { font-size: 0.9375rem; font-weight: 600; color: var(--marka-cok-koyu); }
.alan__sayac { justify-self: end; font-size: 0.8125rem; color: var(--metin-ikincil); font-variant-numeric: tabular-nums; }

.alan--onay { grid-template-columns: auto minmax(0, 1fr); align-items: start; column-gap: 0.75rem; }
.alan--onay input[type="checkbox"] {
  width: 1.375rem;
  height: 1.375rem;
  margin-top: 0.15rem;
  accent-color: var(--marka-koyu);
}
.alan--onay label { font-weight: 500; }
.alan--onay .alan__hata { grid-column: 1 / -1; }
.alan--hatali.alan--onay input[type="checkbox"] { outline: 2px solid var(--marka-cok-koyu); outline-offset: 2px; }

/* Bal küpü: ekran dışında (bazı botlar display:none alanı atlıyor); klavye ve ekran okuyucuya kapalı */
.bal-kupu {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.form-ozet {
  padding: 1rem 1.2rem;
  border: 1px solid var(--cizgi);
  border-left: 4px solid var(--marka-cok-koyu);
  border-radius: 12px;
  background: var(--yuzey-sicak);
}
.form-ozet__baslik { font-weight: 600; }
.form-ozet ul { margin-top: 0.4rem; padding-left: 1.2em; }
.basari-kutusu {
  padding: 1rem 1.2rem;
  border: 1px solid var(--cizgi);
  border-left: 4px solid var(--marka);
  border-radius: 12px;
  background: var(--yuzey-sicak);
}
.basari-kutusu p + p { margin-top: 0.35rem; }
.form__gonder .btn { min-width: 10rem; }
.form__gonder .btn[disabled] { opacity: 0.7; cursor: progress; }

.kunye-blok { margin-top: var(--bosluk-5); padding-top: var(--bosluk-4); border-top: 1px solid var(--cizgi); }
.kunye-blok h2 { margin-bottom: var(--bosluk-2); font-size: 1.25rem; }
.kunye {
  display: grid;
  grid-template-columns: minmax(9rem, max-content) minmax(0, 1fr);
  gap: 0.45rem 1.5rem;
  max-width: 48rem;
  font-size: var(--boy-kucuk);
}
.kunye dt { color: var(--metin-ikincil); }
.kunye dd { margin: 0; }
.teyit-bekliyor { color: var(--metin-ikincil); font-style: italic; }

/* ---------- 25. Hata sayfaları ---------- */

.hata__kod {
  font-family: var(--yazi-baslik);
  font-size: clamp(3.5rem, 12vw, 6rem);
  font-weight: 900;
  line-height: 1;
  color: var(--yuzey-turuncu);
}
.hata__baglantilar a { display: inline-flex; align-items: center; min-height: var(--dokunma); }

/* ---------- 25b. Yasal sayfalar (KVKK, çerez, yayın ilkeleri, künye) ---------- */

.yasal .okuma > * + * { margin-top: 1rem; }
.yasal h2 { margin-top: var(--bosluk-4); font-size: 1.375rem; }
.yasal h3 { margin-top: var(--bosluk-3); font-size: 1.125rem; }
.yasal ul, .yasal ol { padding-left: 1.3em; }
.yasal li + li { margin-top: 0.35rem; }
.yasal code { font-size: 0.9em; overflow-wrap: anywhere; }
.yasal__bas { padding-block: var(--bosluk-2) var(--bosluk-1); }
.yasal__tarih { margin-top: 0.5rem; color: var(--metin-ikincil); font-size: var(--boy-kucuk); }
.yasal__haklar li { padding-left: 0.2em; }
.yasal-not { font-size: var(--boy-kucuk); }

/* İki sütunlu bilgi tablosu: başlık hücresi solda (çerez politikası) */
.yasal-tablo {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--boy-kucuk);
  background: var(--yuzey);
  border: 1px solid var(--cizgi);
  border-radius: var(--kose);
}
.yasal-tablo caption {
  caption-side: top;
  text-align: left;
  font-weight: 600;
  padding-bottom: 0.5rem;
}
.yasal-tablo th, .yasal-tablo td { padding: 0.65rem 0.9rem; text-align: left; vertical-align: top; }
.yasal-tablo th { width: 34%; font-weight: 600; color: var(--metin-ikincil); }
.yasal-tablo tr + tr { border-top: 1px solid var(--cizgi); }

.yasal__diger { margin-top: var(--bosluk-5); padding-top: var(--bosluk-3); border-top: 1px solid var(--cizgi); }
.yasal__diger h2 { margin-top: 0; font-size: 1.125rem; }
.yasal__diger ul { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 0.25rem 1.25rem; }
.yasal__diger li + li { margin-top: 0; }
.yasal__diger a { display: inline-flex; align-items: center; min-height: var(--dokunma); }

/* ---------- 26. Duyarlı düzen (genel sayfalar) ---------- */

@media (max-width: 860px) {
  .hero { padding-block: var(--bosluk-3) var(--bosluk-4); }
  .hero__ic,
  .acil-serit__ic,
  .iletisim-duzen,
  .hakkimizda,
  .hizmet,
  .iletisim-blogu { grid-template-columns: minmax(0, 1fr); }
  .yer-tutucu, .hero__resim { aspect-ratio: 16 / 9; }
  .galeri-izgara,
  .galeri-izgara--ana { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.5rem; }
  .kunye { grid-template-columns: minmax(0, 1fr); gap: 0.1rem; }
  .kunye dd + dt { margin-top: 0.6rem; }
}

@media (max-width: 480px) {
  .butonlar .btn { flex: 1 1 100%; }
  /* Dar ekranda iki sütun sıkışır: başlık hücresi değerin üstüne iner */
  .yasal-tablo th, .yasal-tablo td { display: block; width: auto; }
  .yasal-tablo td { padding-top: 0; }
}

@media print {
  .form-kutu, .iletisim-blogu, .suzgec, .sayfa-gezinti, .yer-tutucu { display: none !important; }
  .sss__oge { break-inside: avoid; }
}
