/* ==========================================================================
   prozon-tokens.css — Prozon Tasarım Sistemi v1.0
   Kurulum: GeneratePress child temasının style.css dosyasının EN ÜSTÜNE
            veya ayrı dosya olarak /css/prozon-tokens.css + wp_enqueue_style
   Onay tarihi: 30.08.2026
   --------------------------------------------------------------------------
   KURAL: Bu dosyanın dışında hiçbir yerde ham renk kodu (#xxxxxx) veya
   ham piksel boşluğu yazılmaz. Her şey aşağıdaki değişkenlerden okunur.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. FONTLAR — yerel barındırma (KVKK: Google'a istek gitmez)
   Kurulum: Archivo ve Inter dosyalarını google-webfonts-helper'dan indirip
   child tema içinde /fonts/ klasörüne koyun. Yalnız gereken ağırlıkları alın.
   -------------------------------------------------------------------------- */
/* GEÇİCİ OLARAK DEVRE DIŞI — font dosyaları /fonts/ klasörüne konunca bu yorumu kaldırın
@font-face{
  font-family:"Archivo"; font-style:normal; font-weight:600;
  src:url("../fonts/archivo-v19-latin_latin-ext-600.woff2") format("woff2");
  font-display:swap; unicode-range:U+0000-00FF,U+0100-024F,U+0131,U+0152-0153,U+02BB-02BC;
}
@font-face{
  font-family:"Archivo"; font-style:normal; font-weight:700;
  src:url("../fonts/archivo-v19-latin_latin-ext-700.woff2") format("woff2");
  font-display:swap; unicode-range:U+0000-00FF,U+0100-024F,U+0131,U+0152-0153,U+02BB-02BC;
}
@font-face{
  font-family:"Inter"; font-style:normal; font-weight:400;
  src:url("../fonts/inter-v18-latin_latin-ext-400.woff2") format("woff2");
  font-display:swap; unicode-range:U+0000-00FF,U+0100-024F,U+0131,U+0152-0153,U+02BB-02BC;
}
@font-face{
  font-family:"Inter"; font-style:normal; font-weight:600;
  src:url("../fonts/inter-v18-latin_latin-ext-600.woff2") format("woff2");
  font-display:swap; unicode-range:U+0000-00FF,U+0100-024F,U+0131,U+0152-0153,U+02BB-02BC;
}
@font-face{
  font-family:"Inter"; font-style:normal; font-weight:700;
  src:url("../fonts/inter-v18-latin_latin-ext-700.woff2") format("woff2");
  font-display:swap; unicode-range:U+0000-00FF,U+0100-024F,U+0131,U+0152-0153,U+02BB-02BC;
}


*/

/* --------------------------------------------------------------------------
   2. JETONLAR
   -------------------------------------------------------------------------- */
:root{
  /* --- Renk: mürekkep ve nötrler --- */
  --pz-ink:#17203A;          /* başlık, koyu zemin, footer */
  --pz-ink-2:#4B586E;        /* gövde metni */
  --pz-muted:#5F6B7E;        /* üstveri, tarih, dipnot — 9 Eylül 2026: 7A8699 (3,69:1) → 5F6B7E (5,4:1), WCAG AA, denetim E-02/AX-01 */
  --pz-line:#E1E7F0;         /* kart kenarı, tablo ayracı */
  --pz-line-strong:#CBD5E3;  /* çerçeveli buton kenarı */
  --pz-canvas:#F4F6FA;       /* sayfa zemini */
  --pz-surface:#FFFFFF;      /* kart, tablo, form zemini */
  --pz-surface-2:#EDF1F7;    /* tablo başlığı, ikincil blok */

  /* --- Renk: marka --- */
  --pz-teal:#00758E;         /* TEK eylem rengi: buton, link, aktif durum */
  --pz-teal-deep:#00566B;    /* hover, açık zeminde küçük metin */
  --pz-teal-wash:#E6F4F8;    /* rozet ve bilgi kutusu zemini */
  --pz-on-teal:#FFFFFF;      /* teal üstündeki metin */

  /* --- Renk: anlam taşıyanlar --- */
  --pz-amber:#F2B705;        /* vurgu, alıntı çizgisi, "yeni" rozeti — ASLA buton */
  --pz-alert:#C6482A;        /* mevzuat riski, son başvuru, ceza uyarısı */

  /* --- Tipografi: aileler --- */
  --pz-ff-display:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
  --pz-ff-text:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;

  /* --- Tipografi: ölçek --- */
  --pz-fs-display:clamp(40px,6vw,60px);
  --pz-fs-h1:clamp(32px,4.4vw,44px);
  --pz-fs-h2:clamp(25px,3.4vw,32px);
  --pz-fs-h3:22px;
  --pz-fs-lede:19px;
  --pz-fs-body:17px;
  --pz-fs-small:14px;
  --pz-fs-eyebrow:11px;

  /* --- Tipografi: harf aralığı (sistemin imzası) --- */
  --pz-ls-display:-.04em;
  --pz-ls-h1:-.032em;
  --pz-ls-h2:-.026em;
  --pz-ls-h3:-.015em;
  --pz-ls-eyebrow:.16em;

  /* --- Boşluk: 4px tabanlı, ara değer YOK --- */
  --pz-1:4px;  --pz-2:8px;  --pz-3:12px; --pz-4:16px; --pz-5:24px;
  --pz-6:32px; --pz-7:48px; --pz-8:64px; --pz-9:96px; --pz-10:128px;

  /* --- Geometri --- */
  --pz-r-chip:8px;
  --pz-r-btn:10px;
  --pz-r-card:16px;
  --pz-max:1120px;        /* kart/ızgara içeren bölümler */
  --pz-max-text:720px;    /* sirküler, bilgi bankası, politika */
  --pz-gutter:20px;       /* mobil kenar boşluğu */
  --pz-shadow:0 1px 2px rgba(23,32,58,.05), 0 10px 28px rgba(23,32,58,.06);
}

/* --------------------------------------------------------------------------
   3. TEMEL TİPOGRAFİ
   -------------------------------------------------------------------------- */
body{
  font-family:var(--pz-ff-text);
  font-size:var(--pz-fs-body);
  line-height:1.65;
  color:var(--pz-ink-2);
  background:var(--pz-canvas);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,h5,h6{
  font-family:var(--pz-ff-display);
  color:var(--pz-ink);
  text-wrap:balance;
}
h1{font-size:var(--pz-fs-h1); font-weight:700; letter-spacing:var(--pz-ls-h1); line-height:1.08}
h2{font-size:var(--pz-fs-h2); font-weight:700; letter-spacing:var(--pz-ls-h2); line-height:1.15}
h3{font-size:var(--pz-fs-h3); font-weight:600; letter-spacing:var(--pz-ls-h3); line-height:1.3}
h4{font-size:18px; font-weight:600; letter-spacing:-.01em; line-height:1.35}
p{max-width:68ch}
a{color:var(--pz-teal); text-underline-offset:2px}
a:hover{color:var(--pz-teal-deep)}

/* Yalnızca hero'da kullanılır */
.pz-display{
  font-family:var(--pz-ff-display); font-size:var(--pz-fs-display); font-weight:700;
  letter-spacing:var(--pz-ls-display); line-height:1.02; color:var(--pz-ink);
}
.pz-lede{font-size:var(--pz-fs-lede); line-height:1.68; color:var(--pz-ink-2); max-width:62ch}
.pz-small{font-size:var(--pz-fs-small); line-height:1.55; color:var(--pz-muted)}

/* Bölüm üstü etiket */
.pz-eyebrow{
  font-family:var(--pz-ff-text); font-size:var(--pz-fs-eyebrow); font-weight:700;
  letter-spacing:var(--pz-ls-eyebrow); text-transform:uppercase; color:var(--pz-teal);
  display:flex; align-items:center; gap:var(--pz-3);
}
.pz-eyebrow::before{content:""; width:22px; height:2px; background:var(--pz-teal)}

/* Tüm sayı, tutar, tarih ve tabloda ZORUNLU */
.pz-num, table td, .pz-stat__n{font-variant-numeric:tabular-nums}

/* --------------------------------------------------------------------------
   4. IZGARA VE BÖLÜM RİTMİ
   -------------------------------------------------------------------------- */
.pz-section{padding-block:var(--pz-9)}
.pz-section--tight{padding-block:var(--pz-8)}
.pz-container{max-width:var(--pz-max); margin-inline:auto; padding-inline:var(--pz-5)}
.pz-container--text{max-width:var(--pz-max-text)}
.pz-grid{display:grid; gap:var(--pz-5)}
.pz-grid--2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.pz-grid--3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.pz-grid--4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.pz-stack{display:flex; flex-direction:column; gap:var(--pz-4)}

@media (max-width:768px){
  .pz-section{padding-block:56px}
  .pz-section--tight{padding-block:var(--pz-7)}
  .pz-container{padding-inline:var(--pz-gutter)}
}

/* --------------------------------------------------------------------------
   5. BUTONLAR — bir ekranda TEK birincil buton
   -------------------------------------------------------------------------- */
.pz-btn{
  display:inline-flex; align-items:center; gap:var(--pz-2);
  font-family:var(--pz-ff-text); font-size:15px; font-weight:600; letter-spacing:-.005em;
  padding:13px 22px; border-radius:var(--pz-r-btn); border:1px solid transparent;
  text-decoration:none; cursor:pointer; transition:background-color .15s ease, color .15s ease;
}
.pz-btn--primary{background:var(--pz-teal); color:var(--pz-on-teal)}
.pz-btn--primary:hover{background:var(--pz-teal-deep); color:var(--pz-on-teal)}
.pz-btn--secondary{background:transparent; color:var(--pz-teal); border-color:var(--pz-line-strong)}
.pz-btn--secondary:hover{border-color:var(--pz-teal); color:var(--pz-teal-deep)}
.pz-btn--ghost{background:transparent; color:var(--pz-ink-2); padding-inline:0}
.pz-btn--ghost:hover{color:var(--pz-teal)}
.pz-btn:focus-visible{outline:2px solid var(--pz-teal); outline-offset:3px}

/* --------------------------------------------------------------------------
   6. BİLEŞENLER
   -------------------------------------------------------------------------- */
.pz-card{
  background:var(--pz-surface); border:1px solid var(--pz-line);
  border-radius:var(--pz-r-card); padding:var(--pz-5);
}
.pz-card--raised{box-shadow:var(--pz-shadow)}

.pz-chip{
  display:inline-block; background:var(--pz-teal-wash); color:var(--pz-teal-deep);
  border-radius:var(--pz-r-chip); padding:6px 11px; font-size:11.5px; font-weight:700;
}
.pz-chip--new{background:color-mix(in srgb,var(--pz-amber) 18%,transparent); color:var(--pz-ink)}
.pz-chip--alert{background:color-mix(in srgb,var(--pz-alert) 14%,transparent); color:var(--pz-alert)}

/* Sayısal kanıt — her rakam bir vaka çalışmasına bağlanır */
.pz-stat{border-top:2px solid var(--pz-teal); padding-top:var(--pz-4)}
.pz-stat__n{font-size:38px; font-weight:700; letter-spacing:-.03em; line-height:1; color:var(--pz-ink)}
.pz-stat__c{font-size:14px; color:var(--pz-ink-2); margin-top:var(--pz-2); max-width:28ch}

/* Referans */
.pz-quote{border-left:3px solid var(--pz-amber); padding-left:var(--pz-5)}
.pz-quote p{
  font-family:var(--pz-ff-display); font-size:19px; font-weight:500;
  line-height:1.5; letter-spacing:-.012em; color:var(--pz-ink);
}
.pz-quote cite{display:block; margin-top:var(--pz-4); font-style:normal; font-size:13px; color:var(--pz-muted)}
.pz-quote cite b{display:block; color:var(--pz-ink); font-weight:600; font-size:13.5px}

/* Numaralı akış — YALNIZCA gerçek bir sıra varsa */
.pz-steps__row{
  display:grid; grid-template-columns:34px 1fr; gap:var(--pz-4);
  padding-block:var(--pz-4); border-bottom:1px solid var(--pz-line);
}
.pz-steps__row:last-child{border-bottom:none}
.pz-steps__k{font-size:12px; font-weight:700; color:var(--pz-teal); font-variant-numeric:tabular-nums}

/* Kapanış CTA bandı */
.pz-cta{
  background:var(--pz-ink); border-radius:var(--pz-r-card); padding:var(--pz-7) var(--pz-6);
  display:flex; flex-wrap:wrap; gap:var(--pz-5); align-items:center; justify-content:space-between;
}
.pz-cta h2,.pz-cta h3{color:#FFFFFF}
.pz-cta p{color:#B9C3D6; max-width:46ch}

/* SSS — JS gerekmez */
.pz-faq details{border-bottom:1px solid var(--pz-line)}
.pz-faq summary{
  cursor:pointer; list-style:none; padding-block:var(--pz-4);
  font-family:var(--pz-ff-display); font-weight:600; font-size:17px; color:var(--pz-ink);
  display:flex; justify-content:space-between; gap:var(--pz-4);
}
.pz-faq summary::-webkit-details-marker{display:none}
.pz-faq summary::after{content:"+"; color:var(--pz-teal); font-weight:700}
.pz-faq details[open] summary::after{content:"–"}
.pz-faq details > div{padding-bottom:var(--pz-5); color:var(--pz-ink-2); max-width:70ch}

/* Tablo */
.pz-table-wrap{overflow-x:auto; border:1px solid var(--pz-line); border-radius:var(--pz-r-card); background:var(--pz-surface)}
.pz-table{width:100%; border-collapse:collapse; font-size:15px}
.pz-table th,.pz-table td{text-align:left; padding:13px 18px; border-bottom:1px solid var(--pz-line); vertical-align:top}
.pz-table th{
  font-family:var(--pz-ff-text); font-size:11px; font-weight:700; letter-spacing:.1em;
  text-transform:uppercase; color:var(--pz-muted); background:var(--pz-surface-2);
}
.pz-table tbody tr:last-child td{border-bottom:none}

/* Ürün ekran görüntüsü — stok fotoğraf yerine bu kullanılır */
.pz-shot{
  aspect-ratio:16/10; width:100%; object-fit:cover;
  border-radius:var(--pz-r-card); box-shadow:var(--pz-shadow); background:var(--pz-surface-2);
}

/* --------------------------------------------------------------------------
   7. GÖRSEL DİSİPLİNİ
   Bütçe: sayfa ≤1,5 MB · tek görsel ≤200 KB · WebP · ≤1600px · lazy zorunlu
   -------------------------------------------------------------------------- */
img{max-width:100%; height:auto}

/* --------------------------------------------------------------------------
   8. ERİŞİLEBİLİRLİK
   -------------------------------------------------------------------------- */
:where(a,button,summary,input,select,textarea):focus-visible{
  outline:2px solid var(--pz-teal); outline-offset:3px; border-radius:4px;
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important}
}

/* --------------------------------------------------------------------------
   9. GENERATEPRESS KÖPRÜLERİ
   Customizer'da renk seçmek yerine tema sınıflarını jetonlara bağlıyoruz.
   -------------------------------------------------------------------------- */
.site-content,.entry-content{color:var(--pz-ink-2)}
.grid-container{max-width:var(--pz-max)}
.single-post .entry-content,
.post-type-archive .entry-content{max-width:var(--pz-max-text)}
.main-navigation a{font-family:var(--pz-ff-text); font-weight:600; font-size:15px; letter-spacing:-.005em}
.main-navigation .current-menu-item > a{color:var(--pz-teal)}
.site-footer{background:var(--pz-ink); color:#B9C3D6}
.site-footer a{color:#FFFFFF}

/* --------------------------------------------------------------------------
   10. YAPILMAYACAKLAR — kod incelemesinde bunlar reddedilir
   --------------------------------------------------------------------------
   ✗ Amber (--pz-amber) buton zemini olarak
   ✗ Bir ekranda ikinci bir .pz-btn--primary
   ✗ Ölçek dışı boşluk (30px, 45px, 70px...)
   ✗ Ham renk kodu (#313B77, #E55934, #30BCED, #FCBA04 dahil)
   ✗ Stok fotoğraf: dünya haritası, el sıkışma, cam bina, gülümseyen ekip
   ✗ Google Fonts'a doğrudan istek (KVKK)
   ✗ loading="lazy" olmayan görsel (hero hariç)
   ✗ alt metni olmayan görsel
   ========================================================================== */
