/* Aplan — birleşik stil dosyası.
 *
 * ÜRETİLMİŞ DOSYADIR — ELLE DÜZENLEMEYİN.
 * Kaynak: assets/build/css/*.css
 * Yeniden üretmek için: php scripts/build_css.php
 */

/* ==== 01-temel.css ====================================================== */
/* ============================================================================
 * 01 · TEMEL — token'lar, sıfırlama, yardımcı sınıflar, buton/form/kart ilkelleri,
 * metin biçimleri ve ortak sayfa iskeleti. Sonraki parçalar yalnız bu token'ları kullanır.
 * Tasarım dili: beyaz · vurgu (--apl-accent, panelden) · antrasit; keskin köşe (0–3px),
 * bulanık gölge yok; Archivo + Inter + JetBrains Mono.
 * ========================================================================= */

/* ============================================================ 1 · TOKEN'LAR */
/* body.aplan-site kapsamı: token'lar tek yerde tanımlanır, admin panelini
   etkilemesin diye :root yerine site gövdesine bağlanır. */
.aplan-site {
  /* --- Vurgu ------------------------------------------------------------ */
  /* Varsayılan nötr lacivert. Panelde theme.accent_color değiştirilirse
     master_header.php aynı türetme formülüyle bu token'ların üzerine yazar. */
  --apl-accent: #1f3a5f;
  --apl-accent-dark: #192e4c;
  --apl-accent-light: rgba(31, 58, 95, .08);
  --apl-accent-line: rgba(31, 58, 95, .28);
  --apl-accent-soft: #c7ced7;  /* koyu zeminde vurgu (açık ton) */

  /* --- Vurgu parıltısı (metalik) ---------------------------------------- */
  /* Göreli parlaklık tavanı L<=.13 (beyazla 5.83:1), koyu uç %62, orta %80,
     parlak uç aynı tavana kadar beyazla karışım. Vurgu zemini her renkte
     beyaz metin taşır; parlak seçimler (altın, turkuaz) kendi ailesinde koyulur. */
  --apl-accent-deep: #13243b;  /* gradyanın koyu ucu */
  --apl-accent-hi: #526683;    /* gradyanın parlak ucu — tavana oturur */
  --apl-accent-ink: #ffffff;   /* vurgu zemini üstündeki metin */
  --apl-accent-ink-soft: rgba(255, 255, 255, .86);
  --apl-accent-ghost: rgba(255, 255, 255, .14); /* vurgu zeminindeki dev filigran */
  --apl-accent-sheen: linear-gradient(118deg, #13243b 0%, #192e4c 24%, #526683 47%, #192e4c 68%, #13243b 100%);

  /* --- Antrasit / siyah -------------------------------------------------- */
  --apl-ink: #0e1013;          /* ana metin ve koyu bloklar */
  --apl-ink-2: #16191d;        /* koyu blok içi kırılım */
  --apl-ink-3: #23272d;        /* koyu zeminde ayırıcı yüzey */

  /* --- Nötr -------------------------------------------------------------- */
  --apl-white: #ffffff;
  --apl-surface: #f2f3f5;      /* soğuk nötr gri; bej DEĞİL, seyrek kullanılır */
  --apl-muted: #565c64;        /* gövde metni */
  --apl-muted-soft: #8a9099;   /* ikincil / meta metin */

  /* --- Çizgiler ---------------------------------------------------------- */
  --apl-line: rgba(14, 16, 19, .14);
  --apl-line-soft: rgba(14, 16, 19, .08);
  --apl-line-dark: rgba(255, 255, 255, .14);

  /* --- Biçim ------------------------------------------------------------- */
  --apl-radius: 3px;
  --apl-radius-sm: 2px;
  --apl-pad-section: clamp(64px, 6.5vw, 104px);

  /* --- Tipografi --------------------------------------------------------- */
  --font-display: "IBM Plex Sans", "Segoe UI", sans-serif;
  --font-body: "IBM Plex Sans", "Segoe UI", sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", monospace;

  /* --- Hareket ----------------------------------------------------------- */
  --dur-fast: 140ms;
  --dur-base: 240ms;
  --dur-slow: 420ms;
  --dur-reveal: 760ms;
  --ease-out: cubic-bezier(.16, 1, .3, 1);
  --ease-sharp: cubic-bezier(.77, 0, .18, 1);

  /* --- Katman sırası ----------------------------------------------------- */
  --z-dropdown: 10;
  --z-sticky: 20;
  --z-fixed: 30;
  --z-overlay: 50;
  --z-modal: 100;

  /* --- Geriye dönük takma adlar -----------------------------------------
     Eski dosyalardan taşınmış olabilecek isimler yeni palete bağlanır; böylece
     gözden kaçan bir kural krem/yeşil zemin üretmez. Yeni kod bunları
     KULLANMAZ. */
  --apl-black: var(--apl-ink);
  --apl-paper: var(--apl-white);
  --apl-cream: var(--apl-surface);
  --apl-green: var(--apl-ink);
  --apl-shadow-card: none;
  --apl-shadow-lift: none;
  --duration-fast: var(--dur-fast);
  --duration-base: var(--dur-base);
  --duration-slow: var(--dur-slow);
  --duration-reveal: var(--dur-reveal);

  background: var(--apl-white);
  color: var(--apl-ink);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: -.005em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: clip;            /* yatay taşmaya karşı güvenlik ağı */
}

/* ========================================================= 2 · SIFIRLAMA */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 110px;   /* yapışkan başlık altında kalmasın */
}

body.aplan-site {
  margin: 0;
  background: var(--apl-white);
  color: var(--apl-ink);
}

.aplan-site *,
.aplan-site *::before,
.aplan-site *::after { box-sizing: border-box; }

/* :where ile 0 özgüllük: sonraki bölümler tek sınıfla kolayca ezebilsin. */
.aplan-site :where(h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd) { margin: 0; }
.aplan-site :where(ul, ol) { margin: 0; padding: 0; list-style: none; }

.aplan-site :where(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-display);
  font-weight: 600;
  font-style: normal;
  letter-spacing: -.02em;
  line-height: 1.15;
  text-wrap: balance;
}

/* İki tonlu başlık: aynı ağırlıkta, düz vurgu rengiyle kırılım (degrade metin yok).
   2026-10-03: --apl-accent-sheen düz renge çevrildiği için background-clip:text
   vurguyu şeffaf bırakıyordu; düz renk kullanılır. Beyaz zeminde okunurluk için
   koyu mavi ton (--atl-signal-deep) tercih edilir. */
.aplan-site :where(h1, h2, h3) strong {
  color: var(--atl-signal-deep, var(--apl-accent));
  font-weight: inherit;
  font-style: normal;
}

/* Aşağıdaki eleman sıfırlamaları :where() ile 0 özgüllüğe indirilir; aksi
   halde ".aplan-site a" gibi bir kural .apl-text-link'i ezerdi. */
:where(.aplan-site img, .aplan-site svg) { display: block; max-width: 100%; }
:where(.aplan-site img) { height: auto; }

:where(.aplan-site button, .aplan-site input, .aplan-site select, .aplan-site textarea) {
  font: inherit;
  color: inherit;
}

:where(.aplan-site button) {
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

:where(.aplan-site a) {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

/* Lucide ikonları <i data-lucide> içine svg basar; hizalama tabanda çözülür. */
.aplan-site [data-lucide] {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
}

/* Erişilebilirlik odak halkası — projedeki tek !important istisnası.
   Beyaz dış halka açık zeminde görünmez, koyu blokta vurgu halkayı ayırır. */
.aplan-site :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 2px solid var(--apl-accent) !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 5px rgba(255, 255, 255, .85);
  border-radius: var(--apl-radius-sm);
}

/* ==================================================== 3 · YARDIMCI SINIFLAR */
.sr-only {
  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;
}

/* Bot tuzağı: ekranda ve okuyucuda yer kaplamamalı. */
.apl-honeypot {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.apl-container {
  width: min(1320px, calc(100% - 64px));
  margin-inline: auto;
}

/* Gövde kaydırmasını kilitleyen açılır katmanlar (menü, lightbox) için. */
.apl-overlay-open { overflow: hidden; }

/* ============================================================= 4 · KICKER */
/* Mono, vurgu, önünde 26px hairline çizgi — bölümlerin ortak imzası. */
.apl-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--apl-accent);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.apl-kicker::before {
  content: "";
  flex: 0 0 auto;
  width: 11px;
  height: 11px;
  background:
    linear-gradient(currentColor, currentColor) center / 11px 1px no-repeat,
    linear-gradient(currentColor, currentColor) center / 1px 11px no-repeat;
}

/* ============================================================ 5 · BUTONLAR */
/* Keskin: dolgu ya da hairline. Hover'da yalnızca RENK değişir; taşıma/ölçek
   yok, böylece dizilimler oynamaz. */
.apl-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 48px;
  padding: 0 26px;
  border: 1px solid transparent;
  border-radius: var(--apl-radius-sm);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -.005em;
  text-align: center;
  cursor: pointer;
  transition: background var(--dur-fast) var(--ease-sharp),
              color var(--dur-fast) var(--ease-sharp),
              border-color var(--dur-fast) var(--ease-sharp);
}
.apl-btn svg { width: 16px; height: 16px; }

/* Birincil eylem */
.apl-btn--accent { background: var(--apl-accent-sheen); border-color: var(--apl-accent-deep); color: var(--apl-accent-ink); }
.apl-btn--accent:hover,
.apl-btn--accent:focus-visible { background: var(--apl-ink); border-color: var(--apl-ink); color: var(--apl-white); }

/* İkincil eylem — açık zeminde koyu blok */
.apl-btn--dark { background: var(--apl-ink); border-color: var(--apl-ink); color: var(--apl-white); }
.apl-btn--dark:hover,
.apl-btn--dark:focus-visible { background: var(--apl-accent); border-color: var(--apl-accent); }

/* Hairline — açık zemin */
.apl-btn--outline { background: transparent; border-color: var(--apl-line); color: var(--apl-ink); }
.apl-btn--outline:hover,
.apl-btn--outline:focus-visible { background: var(--apl-ink); border-color: var(--apl-ink); color: var(--apl-white); }

/* Hairline — koyu/vurgu zemin */
.apl-btn--ghost { background: transparent; border-color: rgba(255, 255, 255, .5); color: var(--apl-white); }
.apl-btn--ghost:hover,
.apl-btn--ghost:focus-visible { background: var(--apl-white); border-color: var(--apl-white); color: var(--apl-ink); }

/* Vurgu zeminde beyaz dolgu, vurgu yazı */
.apl-btn--light { background: var(--apl-white); border-color: var(--apl-white); color: var(--apl-accent); }
.apl-btn--light:hover,
.apl-btn--light:focus-visible { background: var(--apl-ink); border-color: var(--apl-ink); color: var(--apl-white); }

/* Koyu zeminde beyaz dolgu, antrasit yazı */

.apl-btn--lg { min-height: 56px; padding: 0 34px; font-size: 15px; }

/* =================================================== 7 · BÖLÜM BAŞLIK BLOĞU */
/* Başlık solda, açıklama sağda; alt hizalı iki sütun. */
.apl-head {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
  align-items: end;
  gap: 12px 56px;
  margin-bottom: clamp(32px, 3.5vw, 48px);
}
.apl-head h2 {
  margin-top: 12px;
  font-size: clamp(22px, 2.2vw, 30px);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -.02em;
}
.apl-head h2 strong { font-weight: 600; }
.apl-head__desc {
  max-width: 52ch;
  margin-bottom: 2px;
  color: var(--apl-muted);
  font-size: 15px;
  line-height: 1.65;
}

/* Bölüm altındaki tek birincil eylem. */
.apl-section-action {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: clamp(36px, 4vw, 56px);
}

/* =============================================================== 8 · METİN */

/* --- CKEditor çıktısı ------------------------------------------------------
   .apl-prose / .apl-richtext / .apl-editorial-content editörden gelen serbest
   HTML'i biçimler. Sıfırlamada kaldırılan boşluklar burada geri verilir.
   Üçlü :is() ile tek kural yazılır; özgüllük tek sınıf düzeyinde kalır. */
.apl-prose,
.apl-richtext,
.apl-editorial-content {
  max-width: 78ch;
  color: var(--apl-muted);
  font-size: 15px;
  line-height: 1.7;
  overflow-wrap: anywhere;
}
:is(.apl-prose, .apl-richtext, .apl-editorial-content) > :first-child { margin-top: 0; }
:is(.apl-prose, .apl-richtext, .apl-editorial-content) > :last-child { margin-bottom: 0; }

:is(.apl-prose, .apl-richtext, .apl-editorial-content) h2 {
  margin: 2em 0 .5em;
  color: var(--apl-ink);
  font-size: clamp(22px, 2.2vw, 30px);
  line-height: 1.15;
}
:is(.apl-prose, .apl-richtext, .apl-editorial-content) :is(h3, h4) {
  margin: 1.7em 0 .5em;
  color: var(--apl-ink);
  font-size: 19px;
  letter-spacing: -.015em;
  line-height: 1.3;
}
:is(.apl-prose, .apl-richtext, .apl-editorial-content) p { margin: 0 0 1.15em; }

/* Sıfırlamada list-style kaldırıldığı için editör listeleri geri açılır. */
:is(.apl-prose, .apl-richtext, .apl-editorial-content) :is(ul, ol) {
  margin: 0 0 1.2em;
  padding-left: 1.35em;
  list-style: revert;
}
:is(.apl-prose, .apl-richtext, .apl-editorial-content) li { margin-bottom: .45em; }
:is(.apl-prose, .apl-richtext, .apl-editorial-content) li::marker { color: var(--apl-accent); }

/* Alıntı: krem kutu değil, solda vurgu kalın çizgi. */
:is(.apl-prose, .apl-richtext, .apl-editorial-content) blockquote {
  margin: 1.8em 0;
  padding: 4px 0 4px 22px;
  border-left: 3px solid var(--apl-accent);
  color: var(--apl-ink);
  font-size: 17px;
  line-height: 1.55;
}

:is(.apl-prose, .apl-richtext, .apl-editorial-content) a {
  color: var(--apl-accent);
  border-bottom: 1px solid var(--apl-accent-line);
  transition: border-color var(--dur-fast) var(--ease-sharp);
}
:is(.apl-prose, .apl-richtext, .apl-editorial-content) a:is(:hover, :focus-visible) {
  border-bottom-color: var(--apl-accent);
}

:is(.apl-prose, .apl-richtext, .apl-editorial-content) img {
  width: auto;
  height: auto;
  margin: 1.8em 0;
  border: 1px solid var(--apl-line-soft);
  border-radius: var(--apl-radius-sm);
}

:is(.apl-prose, .apl-richtext, .apl-editorial-content) strong {
  color: var(--apl-ink);
  font-weight: 600;
}

:is(.apl-prose, .apl-richtext, .apl-editorial-content) hr {
  margin: 2.2em 0;
  border: 0;
  border-top: 1px solid var(--apl-line);
}

/* Tablo: hairline kılavuz, dolgu yok. Dar ekranda kendi içinde kayar. */
:is(.apl-prose, .apl-richtext, .apl-editorial-content) table {
  width: 100%;
  display: block;
  overflow-x: auto;
  margin: 1.6em 0;
  border-collapse: collapse;
  font-size: 14px;
}
:is(.apl-prose, .apl-richtext, .apl-editorial-content) :is(th, td) {
  min-width: 150px;
  padding: 12px 14px;
  border: 1px solid var(--apl-line);
  text-align: left;
  vertical-align: top;
}
:is(.apl-prose, .apl-richtext, .apl-editorial-content) th {
  background: var(--apl-surface);
  color: var(--apl-ink);
  font-weight: 600;
  white-space: nowrap;
}

/* Editör bloklarının kendi arası boşluğu ve açılır başlıklar. */
.apl-editorial-content :is(article, section) { margin: 0 0 24px; }
.apl-editorial-content :is(article, section) > :last-child { margin-bottom: 0; }
.apl-editorial-content details {
  margin: 12px 0;
  padding: 4px 16px;
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius-sm);
}
.apl-editorial-content summary {
  display: flex;
  align-items: center;
  min-height: 44px;
  color: var(--apl-ink);
  font-weight: 600;
}

/* ======================================================= 9 · FORM İLKELLERİ */
.apl-form-layout {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
  align-items: start;
  gap: clamp(40px, 5vw, 76px);
}

.apl-form-intro h2 {
  margin: 14px 0 16px;
  font-size: clamp(22px, 2.2vw, 30px);
  line-height: 1.2;
}
.apl-form-intro > p {
  color: var(--apl-muted);
  font-size: 15px;
  line-height: 1.7;
}
.apl-form-intro ul {
  display: grid;
  gap: 12px;
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--apl-line);
}
.apl-form-intro li {
  display: flex;
  gap: 10px;
  color: var(--apl-ink);
  font-size: 14px;
  line-height: 1.5;
}
.apl-form-intro li svg { width: 17px; height: 17px; margin-top: 2px; color: var(--apl-accent); }

/* Panel: krem kutu değil; beyaz zemin, hairline çerçeve, üstte vurgu bant. */
.apl-form-panel {
  padding: clamp(22px, 3vw, 36px);
  border: 1px solid var(--apl-line);
  border-top: 2px solid var(--apl-accent);
  border-radius: var(--apl-radius-sm);
  background: var(--apl-white);
}

.apl-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.apl-form-grid label { display: grid; gap: 7px; min-width: 0; }
.apl-form-grid label > span { color: var(--apl-ink); font-size: 12px; font-weight: 600; letter-spacing: -.005em; }
.apl-form-grid label b { color: var(--apl-accent); }
.apl-form-grid__wide { grid-column: 1 / -1; }

.apl-form2-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.apl-form2-field { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.apl-form2-field label { color: var(--apl-ink); font-size: 12px; font-weight: 600; letter-spacing: -.005em; }
.apl-form2-field--full { grid-column: 1 / -1; }

.apl-required { color: var(--apl-accent); }

/* --- Alan ilkelleri --------------------------------------------------------
   İki form ailesi (.apl-form-grid ve .apl-form2-field) tek :is() kapsamında
   toplanır; onay kutuları hariç tüm girdiler aynı ölçüyü kullanır.
   Kenarlık token'dan bir tık koyu — alan sınırı beyaz zeminde görünür olmalı. */
:is(.apl-form-grid, .apl-form2-field) :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
  width: 100%;
  min-width: 0;
  min-height: 52px;
  padding: 14px 15px;
  border: 1px solid rgba(14, 16, 19, .24);
  border-radius: var(--apl-radius-sm);
  background: var(--apl-white);
  color: var(--apl-ink);
  font-size: 15px;
  line-height: 1.4;
  transition: border-color var(--dur-fast) var(--ease-sharp),
              box-shadow var(--dur-fast) var(--ease-sharp);
}
:is(.apl-form-grid, .apl-form2-field) textarea { min-height: 132px; resize: vertical; }

:is(.apl-form-grid, .apl-form2-field) :is(input, textarea)::placeholder { color: var(--apl-muted-soft); }

/* Odak: vurgu kenarlık + 3px açık vurgu halka (bulanıklık yok). */
:is(.apl-form-grid, .apl-form2-field) :is(input, select, textarea):focus {
  outline: none;
  border-color: var(--apl-accent);
  box-shadow: 0 0 0 3px var(--apl-accent-light);
}

:is(.apl-form-grid, .apl-form2-field) [aria-invalid="true"] { border-color: var(--apl-accent); }

/* Yerel ok yerine keskin chevron; select yüksekliği inputla eşitlenir. */
:is(.apl-form-grid, .apl-form2-field) select {
  appearance: none;
  -webkit-appearance: none;
  padding-right: 42px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%230e1013' stroke-width='1.6'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 12px 8px;
}

/* --- Onay kutusu -----------------------------------------------------------
   .apl-form-grid label grid olduğu için kapsamlı seçici ile ezilir; böylece
   !important gerekmez. */
.apl-consent,
.apl-form-grid .apl-consent,
.apl-consent2 {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-height: 44px;
  padding: 6px 0;
  color: var(--apl-muted);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.55;
  cursor: pointer;
}
.apl-consent input[type="checkbox"],
.apl-consent2 input[type="checkbox"] {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  margin-top: 1px;
  accent-color: var(--apl-accent);
  cursor: pointer;
}
.apl-consent > span,
.apl-consent2 > span {
  color: var(--apl-muted);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.55;
}
.apl-consent b { color: var(--apl-accent); }

/* --- Geri bildirim --------------------------------------------------------- */
.apl-field-error {
  display: block;
  color: var(--apl-accent);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.45;
}

/* Başarı ve hata blokları: renk lekesi yerine kalın sol bant. */
:is(.apl-form-success, .apl-form-errors) {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
  padding: 15px 16px;
  border: 1px solid var(--apl-line);
  border-left-width: 3px;
  border-radius: var(--apl-radius-sm);
  background: var(--apl-white);
  font-size: 14px;
  line-height: 1.5;
}
.apl-form-success { border-left-color: var(--apl-ink); color: var(--apl-ink); }
.apl-form-success > :is(svg, [data-lucide]) { flex: 0 0 auto; width: 22px; height: 22px; }
.apl-form-success strong { display: block; font-weight: 600; }
.apl-form-success p { margin: 4px 0 0; color: var(--apl-muted); font-size: 13px; }

.apl-form-errors { border-left-color: var(--apl-accent); color: var(--apl-accent); }
.apl-form-errors strong { font-weight: 600; }
.apl-form-errors ul { margin: 6px 0 0; padding-left: 18px; list-style: disc; font-size: 13px; }
.apl-form-errors a { color: inherit; border-bottom: 1px solid currentColor; }

/* Satır içi durum metni (bülten aboneliği vb.). */
.apl-form-status {
  margin: 8px 0 0;
  min-height: 16px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .06em;
}

/* ================================================ 10 · ORTAK SAYFA İSKELETİ */
.apl-public-page {
  background: var(--apl-white);
  color: var(--apl-ink);
  overflow-x: clip;
}

.apl-public-section {
  padding: var(--apl-pad-section) 0;
  background: var(--apl-white);
}

/* --- Boş durum ------------------------------------------------------------- */
.apl-public-empty {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 10px;
  min-height: 240px;
  padding: 48px 32px;
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius-sm);
  background: var(--apl-white);
  text-align: center;
}
.apl-public-empty svg { width: 30px; height: 30px; color: var(--apl-accent); }
.apl-public-empty :is(h2, h3) { font-size: 21px; letter-spacing: -.02em; }
.apl-public-empty p { max-width: 52ch; color: var(--apl-muted); font-size: 15px; line-height: 1.7; }
.apl-public-empty .apl-btn { margin-top: 14px; }

/* 404 ve boş galeri: sayfa boyu blok. */
.apl-public-empty--large { min-height: 460px; }
.apl-public-empty--large h1 {
  margin: 12px 0 4px;
  font-size: clamp(48px, 9vw, 96px);
  font-weight: 800;
  letter-spacing: -.045em;
  line-height: 1;
}

/* ================================================== 11 · KIRILMA NOKTALARI */
@media (max-width: 1200px) {
  .apl-container { width: min(1320px, calc(100% - 56px)); }
  
}

@media (max-width: 1024px) {
  .apl-container { width: calc(100% - 48px); }
  
  .apl-form-layout { grid-template-columns: minmax(0, 1fr); gap: 40px; }
}

@media (max-width: 860px) {
  /* Tek sütun: başlık ve açıklama alt alta, sol hizalı. */
  .apl-head {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 14px;
  }
  .apl-head__desc { margin-bottom: 0; }
  
}

@media (max-width: 640px) {
  html { scroll-padding-top: 84px; }
  .apl-container { width: calc(100% - 32px); }
  
  .apl-public-empty { min-height: 200px; padding: 36px 20px; }
  .apl-public-empty--large { min-height: 340px; }
  /* Bölüm başlıkları mobilde de sola dayalı; içerikle aynı eksende durur. */
  body.aplan-site { --apl-pad-section: 64px; } /* mobilde tüm bölümler aynı dikey ritim */
  .apl-head { justify-items: start; text-align: left; margin-bottom: 32px; }
  .apl-form-grid,
.apl-form2-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .apl-form-grid__wide,
.apl-form2-field--full { grid-column: auto; }
  .apl-form-panel { padding: 20px; }
  :is(.apl-prose, .apl-richtext, .apl-editorial-content) table { font-size: 13px; }
  /* Dar ekranda butonlar tam genişlik: 44px hedefi korunur, taşma olmaz. */
  .apl-section-action .apl-btn { width: 100%; }
}

@media (max-width: 420px) {
  .apl-container { width: calc(100% - 24px); }
  .apl-btn { padding: 0 18px; font-size: 13px; }
  .apl-btn--lg { min-height: 52px; padding: 0 22px; font-size: 14px; }
  
  
  
  .apl-kicker { font-size: 10px; letter-spacing: .14em; }
  .apl-kicker::before { width: 18px; }
}

/* --- Özel ikon seti (assets/icons.svg) -------------------------------- */
.apl-icon { display: inline-block; width: 1em; height: 1em; vertical-align: -.125em; flex: 0 0 auto; }
.apl-icon-pending { display: inline-block; width: 1em; height: 1em; }

/* ==== 02-kabuk.css ====================================================== */
/* ============================================================================
 * 02 · KABUK — atlama bağlantısı, preloader, üst şerit, header/menü, footer,
 * çerez çubuğu, hızlı eylem rayı ve mobil eylem çubuğu.
 * ========================================================================= */

/* --------------------------------------------------------------------------
   1. ATLAMA BAĞLANTISI
   Klavye kullanıcısı için; odaklanana dek görünür alanın dışında bekler.
   -------------------------------------------------------------------------- */
.apl-skip-link {
  position: fixed;
  top: -100px;
  left: 16px;
  z-index: var(--z-modal);
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 18px;
  background: var(--apl-accent-sheen);
  color: var(--apl-accent-ink);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -.01em;
  border-radius: var(--apl-radius-sm);
  transition: top var(--dur-base) var(--ease-sharp);
}

.apl-skip-link:focus,
.apl-skip-link:focus-visible {
  top: 16px;
  outline: 2px solid var(--apl-ink) !important; /* erişilebilirlik: tek izinli istisna */
  outline-offset: 2px;
}

/* --------------------------------------------------------------------------
   2. PRELOADER (yalnızca yapı; giriş/çıkış animasyonu Bölüm 05'te)
   Beyaz zemin + tek vurgu ilerleme çizgisi. Amblem gizli: yazı kimliği esas.
   -------------------------------------------------------------------------- */
.apl-preloader {
  position: fixed;
  inset: 0;
  z-index: var(--z-modal);
  display: grid;
  place-items: center;
  background: var(--apl-white);
}

.apl-preloader__inner {
  display: grid;
  justify-items: center;
  gap: 22px;
  text-align: center;
}

/* Amblem header'da olduğu gibi burada da gizli — kullanıcı yazı logoyu seçti. */
.apl-preloader__logo {
  display: none;
}

/* Çizginin kendisi ray, ::after ise koşan parça (hareketi 05 tanımlar). */
.apl-preloader__line {
  position: relative;
  display: block;
  width: 140px;
  height: 2px;
  overflow: hidden;
  background: var(--apl-line-soft);
}

.apl-preloader__line::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  display: block;
  width: 42%;
  background: var(--apl-accent);
}

/* --------------------------------------------------------------------------
   3. HEADER KABUĞU
   Sticky beyaz bar; alt kenarda tek hairline. Gölge yok.
   -------------------------------------------------------------------------- */
.site-header {
  position: relative;
  width: 100%;
}

.apl-header {
  position: sticky;
  top: 0;
  z-index: var(--z-fixed);
  background: var(--apl-white);
  border-bottom: 1px solid var(--apl-line);
}

/* --------------------------------------------------------------------------
   4. TOPLINE — antrasit şerit, 12px
   -------------------------------------------------------------------------- */
.apl-topline {
  background: var(--apl-ink);
  color: rgba(255, 255, 255, .68);
  font-size: 12px;
  line-height: 1;
  border-bottom: 1px solid var(--apl-line-dark);
}

.apl-topline__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 44px;
}

.apl-topline a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  color: inherit;
  text-decoration: none;
  transition: color var(--dur-fast) var(--ease-out);
}

.apl-topline a:hover,
.apl-topline a:focus-visible {
  color: var(--apl-white);
}

.apl-topline i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  color: var(--apl-accent);
}

.apl-topline svg {
  display: block;
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
}

.apl-topline__contact {
  display: flex;
  align-items: center;
  gap: 22px;
  min-width: 0;
}

.apl-topline__utility {
  display: flex;
  align-items: center;
  gap: 22px;
}

/* Ayırıcı olarak dikey hairline — nokta/çizgi karakteri yerine gerçek kenarlık. */
.apl-topline__social {
  display: flex;
  align-items: center;
  gap: 2px;
  margin-left: 6px;
  padding-left: 12px;
  border-left: 1px solid var(--apl-line-dark);
}

.apl-topline__social a {
  justify-content: center;
  width: 44px;
  min-width: 44px;
  height: 44px;
  gap: 0;
}

.apl-topline__social i {
  color: inherit;
}

/* --------------------------------------------------------------------------
   5. NAVBAR
   -------------------------------------------------------------------------- */
.apl-navbar {
  background: var(--apl-white);
}

.apl-navbar__inner {
  display: flex;
  align-items: center;
  gap: 32px;
  min-height: 84px;
}

.apl-navbar__actions {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: 4px;
}

/* Header CTA'sı: dolu vurgu blok, keskin köşe, gölgesiz. */
.apl-navbar__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  padding: 0 20px;
  background: var(--apl-accent-sheen);
  color: var(--apl-accent-ink);
  border: 1px solid var(--apl-accent-deep);
  border-radius: var(--apl-radius-sm);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -.01em;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  transition: background var(--dur-fast) var(--ease-out),
              border-color var(--dur-fast) var(--ease-out);
}

.apl-navbar__cta:hover,
.apl-navbar__cta:focus-visible {
  background: var(--apl-accent-dark);
  border-color: var(--apl-accent-dark);
  color: var(--apl-white);
}

.apl-navbar__cta svg {
  width: 15px;
  height: 15px;
}

/* --------------------------------------------------------------------------
   6. MARKA (amblem + yazı logo)
   Panelden yüklenen amblem yazı kimliğinin solunda durur; görsel yoksa
   (site.logo boş) <img> hiç basılmaz ve yalnız yazı kimliği kalır.
   -------------------------------------------------------------------------- */
.apl-brand {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  min-height: 44px;
  color: var(--apl-ink);
  text-decoration: none;
}

.apl-brand img {
  display: block;
  flex: 0 0 auto;
  height: 48px;
  width: auto;
  margin-right: 10px;
}

.apl-brand span {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

/* Marka adı — Archivo 800, sıkı tracking, düz hat. */
.apl-brand > span {
  font-family: var(--font-display);
  font-size: 23px;
  font-weight: 800;
  letter-spacing: .02em;
  line-height: 1;
  text-transform: uppercase;
}

/* Alt satır: mono, vurgu, geniş harf aralığı — teknik ve keskin. */
.apl-brand strong {
  font-family: var(--font-mono);
  font-size: 8.5px;
  font-weight: 500;
  letter-spacing: .2em;
  line-height: 1;
  color: var(--apl-accent);
  text-transform: uppercase;
}

/* --------------------------------------------------------------------------
   7. ANA MENÜ
   -------------------------------------------------------------------------- */
.apl-primary-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 26px;
  margin-left: auto;
}

.apl-primary-nav > a,
.apl-nav-group > button {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 44px;
  padding: 0;
  background: transparent;
  border: 0;
  color: var(--apl-ink);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -.01em;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: color var(--dur-fast) var(--ease-out);
}

/* Hover işareti: altta 2px vurgu çizgi, ortadan açılır. */
.apl-primary-nav > a::after,
.apl-nav-group > button::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 8px;
  left: 0;
  height: 2px;
  background: var(--apl-accent);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform var(--dur-base) var(--ease-sharp);
}

.apl-primary-nav > a:hover::after,
.apl-primary-nav > a:focus-visible::after,
.apl-primary-nav > a.is-active::after,
.apl-nav-group > button:hover::after,
.apl-nav-group > button:focus-visible::after {
  transform: scaleX(1);
}

.apl-primary-nav > a:hover,
.apl-nav-group > button:hover {
  color: var(--apl-accent);
}

.apl-nav-group {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.apl-nav-group > button svg {
  width: 14px;
  height: 14px;
  transition: transform var(--dur-base) var(--ease-out);
}

.apl-nav-group.is-open > button svg {
  transform: rotate(180deg);
}

/* Alt menü: beyaz blok + hairline + sıfır-blur ofset çerçeve (bulanık gölge yok). */
.apl-submenu {
  position: absolute;
  top: calc(100% + 14px);
  left: -16px;
  z-index: var(--z-dropdown);
  display: grid;
  gap: 1px;
  width: 236px;
  padding: 8px;
  background: var(--apl-white);
  border: 1px solid var(--apl-line);
  border-top: 2px solid var(--apl-accent);
  border-radius: 0;
  box-shadow: 5px 5px 0 var(--apl-line-soft);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity var(--dur-fast) var(--ease-out),
              transform var(--dur-base) var(--ease-out),
              visibility var(--dur-base) linear;
}

.apl-nav-group:hover .apl-submenu,
.apl-nav-group:focus-within .apl-submenu,
.apl-nav-group.is-open .apl-submenu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.apl-submenu a {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 0 12px;
  color: var(--apl-muted);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -.01em;
  text-decoration: none;
  transition: background var(--dur-fast) var(--ease-out),
              color var(--dur-fast) var(--ease-out);
}

.apl-submenu a:hover,
.apl-submenu a:focus-visible {
  background: var(--apl-accent-light);
  color: var(--apl-accent);
}

/* Hamburger: yalnız 1024px altında görünür (aşağıdaki medya sorgusunda). */
.apl-nav-toggle {
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: 44px;
  height: 44px;
  margin-left: 0;
  padding: 0;
  background: transparent;
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius-sm);
  cursor: pointer;
}

.apl-nav-toggle span {
  display: block;
  width: 18px;
  height: 2px;
  background: var(--apl-ink);
  transition: transform var(--dur-base) var(--ease-sharp),
              opacity var(--dur-fast) linear;
}

/* Menü açıkken hamburger çarpıya döner (JS body'ye .apl-menu-open ekler). */
.apl-menu-open .apl-nav-toggle {
  border-color: var(--apl-accent);
}

.apl-menu-open .apl-nav-toggle span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.apl-menu-open .apl-nav-toggle span:nth-child(2) {
  opacity: 0;
}

.apl-menu-open .apl-nav-toggle span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* --------------------------------------------------------------------------
   10. FOOTER — antrasit gövde
   -------------------------------------------------------------------------- */
.site-footer {
  position: relative;
  width: 100%;
}

.apl-footer-v2 {
  background: var(--apl-ink);
  color: var(--apl-white);
}

/* 10.1 Çağrı bandı ------------------------------------------------------
   Açık pafta zemini (ince ızgara), solda başlık, sağda telefon + iki eylem. */
.apl-ftv2__cta {
  position: relative;
  background-color: #f4f6f8;
  background-image:
    linear-gradient(rgba(13, 27, 38, .045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(13, 27, 38, .045) 1px, transparent 1px);
  background-size: 48px 48px;
  border-top: 1px solid var(--apl-line-soft);
  color: var(--apl-ink);
}

.apl-ftv2__cta-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  align-items: end;
  gap: 32px 72px;
  padding: clamp(48px, 5vw, 72px) 0;
}

.apl-ftv2__cta-content .apl-kicker { color: var(--atl-signal-deep, var(--apl-accent)); }

.apl-ftv2__cta-content h2 {
  margin: 14px 0 0;
  max-width: 22ch;
  font-family: var(--font-display);
  font-size: clamp(24px, 2.4vw, 32px);
  font-weight: 600;
  letter-spacing: -.02em;
  line-height: 1.2;
  color: var(--apl-ink);
}

.apl-ftv2__cta-content h2 strong {
  font-weight: 600;
  color: var(--atl-signal-deep, var(--apl-accent));
  background-image: none;
  -webkit-text-fill-color: currentColor;
}

.apl-ftv2__cta-content p {
  margin: 14px 0 0;
  max-width: 54ch;
  color: var(--apl-muted);
  font-size: 15px;
  line-height: 1.65;
}

.apl-ftv2__cta-side {
  display: grid;
  gap: 14px;
  padding-left: 32px;
  border-left: 1px solid var(--apl-line);
}

.apl-ftv2__cta-phone {
  display: grid;
  gap: 4px;
  color: var(--apl-ink);
  text-decoration: none;
}
.apl-ftv2__cta-phone span {
  color: var(--apl-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.apl-ftv2__cta-phone strong {
  font-family: var(--font-mono);
  font-size: clamp(20px, 1.8vw, 24px);
  font-weight: 500;
  letter-spacing: -.01em;
  font-variant-numeric: tabular-nums;
  transition: color var(--dur-fast) var(--ease-out);
}
.apl-ftv2__cta-phone:hover strong,
.apl-ftv2__cta-phone:focus-visible strong { color: var(--atl-signal-deep, var(--apl-accent)); }

.apl-ftv2__cta-address {
  margin: 0;
  max-width: 44ch;
  color: var(--apl-muted);
  font-size: 13px;
  line-height: 1.6;
}

.apl-ftv2__cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 6px;
}

.apl-ftv2__cta-actions .apl-btn {
  min-height: 46px;
  padding: 0 20px;
  font-size: 14px;
  white-space: nowrap;
}
.apl-ftv2__cta-actions .apl-btn svg { width: 16px; height: 16px; flex: 0 0 auto; }
.apl-ftv2__cta-actions .apl-btn--outline { background: #ffffff; }

@media (max-width: 991px) {
  .apl-ftv2__cta-inner { grid-template-columns: minmax(0, 1fr); align-items: start; }
  .apl-ftv2__cta-side { padding-left: 0; padding-top: 24px; border-left: 0; border-top: 1px solid var(--apl-line); }
}

/* 10.2 Bülten şeridi ----------------------------------------------------- */
.apl-ftv2__newsletter {
  background: var(--apl-ink-2);
  border-bottom: 1px solid var(--apl-line-dark);
}

.apl-ftv2__newsletter-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  min-height: 76px;
  padding: 18px 0;
}

.apl-ftv2__newsletter-text {
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(255, 255, 255, .74);
  font-size: 14px;
  line-height: 1.5;
}

.apl-ftv2__newsletter-text svg {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  color: var(--apl-accent);
}

.apl-ftv2__newsletter form {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  width: min(400px, 100%);
}

.apl-ftv2__newsletter input {
  flex: 1;
  min-width: 0;
  height: 48px;
  padding: 0 14px;
  background: transparent;
  border: 1px solid var(--apl-line-dark);
  border-right: 0;
  border-radius: 0;
  color: var(--apl-white);
  font-family: var(--font-body);
  font-size: 14px;
  outline: 0;
  transition: border-color var(--dur-fast) var(--ease-out);
}

.apl-ftv2__newsletter input::placeholder {
  color: var(--apl-muted-soft);
}

.apl-ftv2__newsletter input:focus {
  border-color: var(--apl-accent);
}

.apl-ftv2__newsletter button {
  flex: 0 0 auto;
  min-height: 48px;
  padding: 0 22px;
  background: var(--apl-accent-sheen);
  border: 1px solid var(--apl-accent-deep);
  border-radius: 0;
  color: var(--apl-accent-ink);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
  cursor: pointer;
  transition: background var(--dur-fast) var(--ease-out);
}

.apl-ftv2__newsletter button:hover,
.apl-ftv2__newsletter button:focus-visible {
  background: var(--apl-accent-dark);
}

.apl-ftv2__newsletter button[disabled] {
  opacity: .55;
  cursor: wait;
}

.apl-ftv2__newsletter form.is-error input {
  border-color: var(--apl-accent);
}

/* Durum metni formun altında akışta; boşken yer kaplamaz. */
.apl-ftv2__newsletter .apl-form-status {
  flex: 0 0 100%;
  width: 100%;
  margin: 0;
  color: rgba(255, 255, 255, .7);
  font-size: 11px;
  line-height: 1.4;
}

/* 10.3 Ana ızgara -------------------------------------------------------- */
.apl-ftv2__main {
  padding: clamp(52px, 6vw, 84px) 0 clamp(44px, 5vw, 68px);
}

.apl-ftv2__grid {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1.35fr;
  gap: 44px;
}

.apl-ftv2__brand {
  min-width: 0;
}

.apl-brand--footer {
  color: var(--apl-white);
}

.apl-brand--footer strong {
  color: var(--apl-accent);
}

.apl-ftv2__brand > p {
  max-width: 30ch;
  margin: 20px 0 26px;
  color: var(--apl-muted-soft);
  font-size: 15px;
  line-height: 1.7;
}

.apl-ftv2__column {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
}

/* Sütun başlığı: mono kicker mantığı, üstünde kısa vurgu işaret. */
.apl-ftv2__column h3 {
  margin: 0 0 14px;
  padding-bottom: 12px;
  color: var(--apl-white);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .16em;
  line-height: 1;
  text-transform: uppercase;
  border-bottom: 1px solid var(--apl-line-dark);
  width: 100%;
}

/* :not() ile iletişim satırları dışarıda tutuluyor — onların kendi düzeni var. */
.apl-ftv2__column > a:not(.apl-ftv2__contact-item) {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--apl-muted-soft);
  font-size: 15px;
  line-height: 1.5;
  text-decoration: none;
  transition: color var(--dur-fast) var(--ease-out),
              transform var(--dur-fast) var(--ease-out);
}

.apl-ftv2__column > a:not(.apl-ftv2__contact-item):hover,
.apl-ftv2__column > a:not(.apl-ftv2__contact-item):focus-visible {
  color: var(--apl-white);
  transform: translateX(4px);
}

.apl-ftv2__contact {
  min-width: 0;
}

.apl-ftv2__contact-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-height: 44px;
  padding: 8px 0;
  color: var(--apl-muted-soft);
  font-size: 14px;
  line-height: 1.6;
  text-decoration: none;
  transition: color var(--dur-fast) var(--ease-out);
}

.apl-ftv2__contact-item:hover,
.apl-ftv2__contact-item:focus-visible {
  color: var(--apl-white);
}

.apl-ftv2__contact-item svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin-top: 3px;
  color: var(--apl-accent);
}

/* Sosyal: kare kutular, hairline kenar — daire yok. */
.apl-ftv2__social {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.apl-ftv2__social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background: transparent;
  border: 1px solid var(--apl-line-dark);
  border-radius: var(--apl-radius-sm);
  color: rgba(255, 255, 255, .72);
  transition: background var(--dur-fast) var(--ease-out),
              border-color var(--dur-fast) var(--ease-out),
              color var(--dur-fast) var(--ease-out);
}

.apl-ftv2__social a:hover,
.apl-ftv2__social a:focus-visible {
  background: var(--apl-accent);
  border-color: var(--apl-accent);
  color: var(--apl-white);
}

/* 10.4 Alt bar ----------------------------------------------------------- */
.apl-ftv2__bottom {
  padding: 18px 0;
  border-top: 1px solid var(--apl-line-dark);
}

.apl-ftv2__bottom .apl-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}

.apl-ftv2__bottom span {
  color: var(--apl-muted-soft);
  font-size: 12px;
  line-height: 1.5;
}

.apl-ftv2__bottom-links {
  display: flex;
  align-items: center;
  gap: 6px;
}

.apl-ftv2__bottom-links a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 10px;
  color: var(--apl-muted-soft);
  font-size: 12px;
  text-decoration: none;
  transition: color var(--dur-fast) var(--ease-out);
}

.apl-ftv2__bottom-links a:hover,
.apl-ftv2__bottom-links a:focus-visible {
  color: var(--apl-white);
}

/* Yukarı çık: sabit değil, alt barın içinde KARE buton.
   Bağlam kapsamı, kardeş link kuralının padding'ini geçmek için gerekli. */
.apl-ftv2__bottom-links .apl-ftv2__totop {
  justify-content: center;
  width: 44px;
  min-width: 44px;
  height: 44px;
  padding: 0;
  margin-left: 4px;
  border: 1px solid var(--apl-line-dark);
  border-radius: var(--apl-radius-sm);
  transition: background var(--dur-fast) var(--ease-out),
              border-color var(--dur-fast) var(--ease-out),
              color var(--dur-fast) var(--ease-out);
}

.apl-ftv2__bottom-links .apl-ftv2__totop:hover,
.apl-ftv2__bottom-links .apl-ftv2__totop:focus-visible {
  background: var(--apl-accent);
  border-color: var(--apl-accent);
  color: var(--apl-white);
}

/* ==========================================================================
   KIRILMA NOKTALARI
   ========================================================================== */

/* 1200px — menü aralıkları daralır, ızgara sıkışır. */
@media (max-width: 1200px) {
  .apl-navbar__inner {
    gap: 22px;
  }

  .apl-primary-nav {
    gap: 18px;
  }

  .apl-ftv2__grid {
    grid-template-columns: 1.5fr 1fr 1fr 1.3fr;
    gap: 32px;
  }
}

/* 1024px — masaüstü menü kapanır, sağdan açılan antrasit panel devreye girer. */
@media (max-width: 1024px) {
  .apl-navbar__inner {
    min-height: 72px;
    gap: 10px;
    justify-content: flex-start; /* marka sola, hesap + hamburger sağa yapışık */
  }

  .apl-brand {
    margin-right: auto;
  }

  .apl-nav-toggle {
    display: flex;
    order: 3;
  }

  .apl-navbar__actions {
    order: 2;
    margin-left: 0;
    gap: 8px;
  }

  .apl-navbar__cta {
    display: none; /* mobil çubuktaki "Bilgi al" ile aynı işi görüyor */
  }

  /* Panel header'ın ALTINDA kalır; hamburger her zaman erişilebilir olsun diye
     menü açıkken header örtünün üstüne çıkarılır. */
  .apl-menu-open .apl-header {
    z-index: calc(var(--z-overlay) + 1);
  }
  /* Panel header'ın içinde (fixed) olduğu için marka, Hesabım ve hamburger panelin üstüne çıkarılır. */
  .apl-menu-open .apl-brand,
.apl-menu-open .apl-navbar__actions,
.apl-menu-open .apl-nav-toggle {
    position: relative;
    z-index: calc(var(--z-overlay) + 2);
  }

  .apl-primary-nav {
    /* Tam ekran beyaz panel; soldan açılır. Header üstte kalır (z-index), panel onun altından başlar. */
    position: fixed;
    inset: 0;
    top: 64px; /* header (64px) görünür kalır; panel hemen altından başlar */
    z-index: var(--z-overlay);
    width: 100%;
    margin-left: 0;
    padding: 12px 26px 40px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    overflow-y: auto;
    background: var(--apl-white);
    border-top: 3px solid var(--apl-accent);
    transform: translateX(-100%);
    visibility: hidden;
    transition: transform var(--dur-base) var(--ease-sharp),
                visibility var(--dur-base) linear;
  }

  .apl-primary-nav.is-open {
    transform: translateX(0);
    visibility: visible;
  }

  .apl-primary-nav > a,
.apl-nav-group > button {
    width: 100%;
    min-height: 56px;
    justify-content: space-between;
    padding: 0;
    border-bottom: 1px solid var(--apl-line);
    color: var(--apl-ink);
    font-size: 17px;
    font-weight: 600;
    text-align: left;
  }

  .apl-primary-nav > a:hover,
.apl-nav-group > button:hover {
    color: var(--apl-accent);
  }

  /* Panelde alt çizgi soldan açılır; kenarlığın üstüne biner. */
  .apl-primary-nav > a::after,
.apl-nav-group > button::after {
    bottom: -1px;
    transform-origin: left;
  }

  .apl-nav-group {
    display: block;
    width: 100%;
  }

  .apl-submenu {
    position: static;
    display: none;
    width: 100%;
    padding: 4px 0 10px 14px;
    background: transparent;
    border: 0;
    border-left: 1px solid var(--apl-accent-line);
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
  }

  .apl-nav-group.is-open .apl-submenu {
    display: grid;
  }

  .apl-submenu a { color: var(--apl-muted); }
  .apl-submenu a:hover,
.apl-submenu a:focus-visible {
    background: transparent;
    color: var(--apl-accent);
  }

  .apl-ftv2__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 36px 32px;
  }

  .apl-ftv2__brand {
    grid-column: 1 / -1;
  }
}

/* 860px — CTA ve bülten şeritleri dikeye döner. */
@media (max-width: 860px) {
  .apl-topline__contact,
.apl-topline__utility {
    gap: 14px;
  }

  /* Dar ekranda e-posta kalır; taşmaması için kısaltılır. */
  .apl-topline__contact a {
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .apl-brand > span {
    font-size: 20px;
  }

  .apl-ftv2__cta-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 26px;
  }

  .apl-ftv2__cta-actions {
    width: 100%;
  }

  .apl-ftv2__newsletter-inner {
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
  }

  .apl-ftv2__newsletter form {
    width: 100%;
  }

  
}

/* 640px — tek sütun footer + alttaki sabit hızlı eylem çubuğu. */
@media (max-width: 640px) {
  .apl-topline {
    font-size: 11px;
  }

  .apl-topline__inner {
    justify-content: center;
  }

  .apl-topline__contact {
    justify-content: center;
    gap: 16px;
    width: 100%;
  }

  .apl-topline__utility,
.apl-topline__social {
    display: none; /* mobilde telefon + e-posta kalır */
  }

  .apl-navbar__inner {
    min-height: 64px;
  }

  .apl-brand img {
    height: 38px;
    margin-right: 8px;
  }

  .apl-brand > span {
    font-size: 18px;
  }

  .apl-brand strong {
    font-size: 7.5px;
    letter-spacing: .16em;
  }

  

  

  

  

  .apl-ftv2__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
  }

  .apl-ftv2__brand {
    grid-column: auto;
  }

  .apl-ftv2__cta-actions .apl-btn {
    flex: 1 1 auto;
    justify-content: center;
  }

  .apl-ftv2__bottom .apl-container {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }
}

/* 420px — en dar ekranda marka ve butonlar bir kademe daha küçülür. */
@media (max-width: 420px) {
  .apl-brand > span {
    font-size: 16px;
  }

  .apl-primary-nav {
    width: 100%;
    border-left: 0;
  }

  .apl-navbar__actions {
    gap: 6px;
  }

  

  .apl-ftv2__cta-actions {
    flex-direction: column;
  }

  .apl-ftv2__cta-actions .apl-btn {
    width: 100%;
  }

  .apl-ftv2__newsletter form {
    flex-direction: column;
    flex-wrap: nowrap; /* sütun + wrap Chrome'da satırları eziyor */
  }
  .apl-ftv2__newsletter .apl-form-status:empty { display: none; }
  .apl-ftv2__newsletter .apl-form-status { flex-basis: auto; margin-top: 8px; } /* sütun düzeninde %100 basis yüksekliği yutuyordu */

  .apl-ftv2__newsletter input {
    flex: 0 0 auto;
    height: 52px;
    border-right: 1px solid var(--apl-line-dark);
    border-bottom: 0;
  }
  .apl-ftv2__newsletter button { min-height: 52px; }

  .apl-ftv2__bottom-links {
    flex-wrap: wrap;
  }
}

/* --------------------------------------------------------------------------
   Sağ kenar hızlı eylem çubuğu: Bilgi al · WhatsApp · Ara (alt alta, sağa yapışık).
   860px altında gizlenir (mobilde yüzen Ara butonu var).
   -------------------------------------------------------------------------- */
.apl-rail { position: fixed; top: 50%; right: 0; z-index: var(--z-fixed); display: flex; flex-direction: column; transform: translateY(-50%); }
.apl-rail__btn { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; width: 72px; min-height: 72px; padding: 10px 6px; background: var(--apl-white); color: var(--apl-ink); border: 1px solid var(--apl-line); border-right: 0; text-decoration: none; transition: background-color var(--dur-fast) var(--ease-sharp), color var(--dur-fast) var(--ease-sharp), width var(--dur-fast) var(--ease-sharp); }
.apl-rail__btn + .apl-rail__btn { border-top: 0; }
.apl-rail__btn svg { width: 20px; height: 20px; }
.apl-rail__btn span { font-family: var(--font-mono); font-size: 9px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; line-height: 1; white-space: nowrap; }
.apl-rail__btn:hover, .apl-rail__btn:focus-visible { background: var(--apl-ink); color: var(--apl-white); border-color: var(--apl-ink); }
.apl-rail__btn--primary { background: var(--apl-accent-sheen); color: var(--apl-accent-ink); border-color: var(--apl-accent-deep); }
.apl-rail__btn--primary:hover, .apl-rail__btn--primary:focus-visible { background: var(--apl-accent-dark); border-color: var(--apl-accent-dark); }
.apl-rail__btn--dark { background: var(--apl-ink); color: var(--apl-white); border-color: var(--apl-ink); }
.apl-rail__btn--dark:hover, .apl-rail__btn--dark:focus-visible { background: var(--apl-accent); border-color: var(--apl-accent); }
@media (max-width: 860px) { .apl-rail { display: none; } }

/* --------------------------------------------------------------------------
   Çerez onay çubuğu: alt kenarda antrasit şerit; onay localStorage'da tutulur.
   -------------------------------------------------------------------------- */
.apl-cookie { position: fixed; left: 0; right: 0; bottom: 0; z-index: calc(var(--z-fixed) + 1); background: var(--apl-ink); color: rgba(255,255,255,.82); border-top: 3px solid var(--apl-accent); border-image: var(--apl-accent-sheen) 1; transform: translateY(100%); transition: transform var(--dur-base) var(--ease-sharp); }
.apl-cookie.is-visible { transform: translateY(0); }
.apl-cookie[hidden] { display: none; }
.apl-cookie__inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 64px; padding: 12px 0; }
.apl-cookie__text { margin: 0; font-size: 13px; line-height: 1.55; }
.apl-cookie__text a { color: var(--apl-white); text-decoration: underline; text-underline-offset: 3px; }
.apl-cookie__text a:hover { color: var(--apl-accent-soft); }
.apl-cookie__actions { display: flex; flex: 0 0 auto; gap: 8px; }
@media (max-width: 640px) {
  .apl-cookie__inner { flex-direction: column; align-items: stretch; gap: 12px; padding: 14px 0; }
  .apl-cookie__actions .apl-btn { width: 100%; justify-content: center; }
}

/* Görsel logo (site.logo / site.logo_footer dolu): metin markası basılmaz, yalnız görsel. */
.apl-brand--logo img { height: 46px; margin-right: 0; }
.apl-brand--footer.apl-brand--logo img { height: 52px; }
@media (max-width: 760px) {
  .apl-brand--logo img { height: 38px; }
}

/* ==== 03-anasayfa.css =================================================== */
/* ============================================================================
 * BÖLÜM 03 · ANASAYFA BÖLÜMLERİ
 *
 * homepage_content.php içindeki 12 bölümün düzeni.
 * Dil: beyaz + vurgu + antrasit. Krem yok, serif yok, bulanık gölge yok.
 * Derinlik 1px hairline, kontrast blok ve ofset çerçeveyle kurulur.
 *
 * Ritim: hero (antrasit) → finder (vurgu) → beyaz bölümler dizisi →
 *        stats (antrasit) → beyaz bölümler → enroll (beyaz + antrasit kart).
 * Beyaz bölümler birbirinden 1px üst hairline ile ayrılır.
 *
 * Token'lar Bölüm 01'de tanımlıdır; burada yalnızca kullanılır.
 * ========================================================================= */

/* Yatay taşma kilidi: hero ölçeklenen görsel ve finder hayalet yazısı için. */
.apl-homepage {
  display: block;
  overflow-x: clip;
}

/* ===========================================================================
 * 1 · HERO
 * Antrasit zemin, görselin üzerinde soldan sağa açılan koyu veil.
 * ======================================================================== */
.apl-hero {
  position: relative;
  min-height: min(760px, calc(100vh - 116px));
  background: var(--apl-ink);
  color: var(--apl-white);
  overflow: hidden;
}

.apl-hero__slides {
  position: relative;
  min-height: inherit;
}

/* Slaytlar üst üste yığılır; geçiş yalnızca opaklıkla (kayma/zoom yok). */
.apl-hero__slide {
  position: absolute;
  inset: 0;
  min-height: inherit;
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--dur-slow) var(--ease-sharp),
              visibility 0s linear var(--dur-slow);
}
.apl-hero__slide.is-active {
  opacity: 1;
  visibility: visible;
  transition: opacity var(--dur-slow) var(--ease-sharp), visibility 0s linear 0s;
}

.apl-hero__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: var(--apl-ink-2);
}
.apl-hero__media img,
.apl-hero__media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Veil soldan sağa açılır: metin tarafı koyu, görsel tarafı okunur kalır. */
.apl-hero__veil {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(14, 16, 19, .92) 0%, rgba(14, 16, 19, .74) 42%, rgba(14, 16, 19, .30) 100%),
    linear-gradient(0deg, rgba(14, 16, 19, .55) 0%, rgba(14, 16, 19, 0) 45%);
}

.apl-hero__content {
  position: relative;
  z-index: 2;
  min-height: inherit;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(32px, 4vw, 64px);
  padding-top: clamp(72px, 9vw, 120px);
  padding-bottom: clamp(96px, 10vw, 140px);
}

.apl-hero__copy {
  width: min(660px, 100%);
}
.apl-hero__copy .apl-kicker {
  color: var(--apl-white);
}
.apl-hero__copy h1,
.apl-hero__copy h2 {
  margin: 18px 0 16px;
  font-family: var(--font-display);
  font-size: clamp(28px, 3vw, 40px);
  font-weight: 700;
  line-height: 1.06;
  letter-spacing: -.04em;
  text-wrap: balance;
}
.apl-hero__copy p {
  max-width: 52ch;
  margin: 0;
  color: rgba(255, 255, 255, .78);
  font-size: 16px;
  line-height: 1.7;
}

.apl-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 30px;
}

/* Sağdaki kayıt kartı: kare vurgu blok, gölgesiz, üstte beyaz hairline. */
.apl-hero__register {
  flex: 0 0 250px;
  width: 250px;
  align-self: center;
  padding: 26px 24px 24px;
  background: var(--apl-accent-sheen);
  border: 1px solid var(--apl-accent-deep);
  border-radius: var(--apl-radius-sm);
  color: var(--apl-accent-ink);
}
.apl-hero__register strong {
  display: block;
  font-family: var(--font-display);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1.2;
}
.apl-hero__register p {
  margin: 10px 0 18px;
  color: var(--apl-accent-ink-soft);
  font-size: 13px;
  line-height: 1.6;
}
.apl-hero__register a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  color: var(--apl-accent-ink);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
  border-bottom: 1px solid var(--apl-accent-ink-soft);
  transition: border-color var(--dur-fast) var(--ease-sharp);
}
.apl-hero__register a:hover,
.apl-hero__register a:focus-visible {
  border-bottom-color: var(--apl-accent-ink);
}
.apl-hero__register a svg { width: 15px; height: 15px; }

/* Slayt göstergeleri: 44px dokunma hedefi, içinde 34x2 çubuk. */
.apl-hero__controls {
  position: absolute;
  z-index: 3;
  left: 50%;
  bottom: 28px;
  display: flex;
  gap: 6px;
  transform: translateX(-50%);
}
.apl-hero__controls button {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.apl-hero__controls button::before {
  content: "";
  width: 34px;
  height: 2px;
  background: rgba(255, 255, 255, .40);
  transition: background var(--dur-base) var(--ease-sharp);
}
.apl-hero__controls button[aria-current="true"]::before { background: var(--apl-accent); }
.apl-hero__controls button:hover::before { background: rgba(255, 255, 255, .8); }

.apl-hero__video-toggle {
  position: absolute;
  z-index: 4;
  top: 24px;
  right: 24px;
  display: inline-flex;
  width: 48px;
  height: 48px;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: rgba(14, 16, 19, .55);
  border: 1px solid var(--apl-line-dark);
  border-radius: var(--apl-radius-sm);
  color: var(--apl-white);
  cursor: pointer;
  transition: background var(--dur-fast) var(--ease-sharp),
              color var(--dur-fast) var(--ease-sharp),
              border-color var(--dur-fast) var(--ease-sharp);
}
.apl-hero__video-toggle:hover,
.apl-hero__video-toggle:focus-visible {
  background: var(--apl-white);
  border-color: var(--apl-white);
  color: var(--apl-ink);
}
.apl-hero__video-toggle svg { width: 18px; height: 18px; }
.apl-hero__video-toggle [hidden] { display: none; }

/* ================================================ 3 · FAALİYET ALANLARI
 * Fotoğraflı kartlar; JS ile kart kart adımlayan yatay şerit (keskin ease),
 * altta ilerleme çizgisi. Hover'da durur; reduced-motion'da elle kaydırılır.
 * ------------------------------------------------------------------------- */
.apl-areas { padding: var(--apl-pad-section) 0; background: var(--apl-white); border-top: 1px solid var(--apl-line-soft); overflow: hidden; }
.apl-areas__head { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 24px; }
.apl-areas__head .apl-head { margin-bottom: 36px; }
.apl-areas__nav { display: flex; gap: 8px; margin-bottom: 40px; }
.apl-areas__btn { width: 48px; height: 48px; border: 1px solid var(--apl-ink); background: var(--apl-white); color: var(--apl-ink); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; transition: background var(--dur-fast) var(--ease-sharp), color var(--dur-fast) var(--ease-sharp); }
.apl-areas__btn svg { width: 18px; height: 18px; }
.apl-areas__btn:hover, .apl-areas__btn:focus-visible { background: var(--apl-accent); border-color: var(--apl-accent); color: var(--apl-white); }
.apl-areas__viewport { position: relative; width: 100%; overflow: hidden; padding-left: max(32px, calc((100vw - 1320px) / 2)); cursor: grab; touch-action: pan-y; }
.apl-areas__track { display: flex; gap: 16px; width: max-content; margin: 0; padding: 0 0 26px; list-style: none; transition: transform 720ms var(--ease-sharp); will-change: transform; }
.apl-area { flex: 0 0 auto; width: 380px; }
.apl-area a { display: block; color: var(--apl-ink); border: 1px solid var(--apl-line); background: var(--apl-white); transition: border-color var(--dur-fast) var(--ease-sharp); }
.apl-area a:hover, .apl-area a:focus-visible { border-color: var(--apl-accent); }
.apl-area__media { position: relative; display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--apl-ink); }
.apl-area__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 900ms var(--ease-out), filter 900ms var(--ease-out); }
.apl-area a:hover .apl-area__media img { transform: scale(1.06); }
.apl-area__num { position: absolute; left: 0; top: 0; padding: 6px 10px; background: var(--apl-accent-sheen); color: var(--apl-accent-ink); font-family: var(--font-mono); font-size: 11px; letter-spacing: .1em; }
.apl-area__body { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 4px 12px; padding: 18px 20px 20px; }
.apl-area__body > svg { grid-row: span 2; width: 22px; height: 22px; margin-top: 2px; color: var(--apl-accent); }
.apl-area__title { font-size: 17px; font-weight: 600; letter-spacing: -.012em; line-height: 1.3; }
.apl-area__desc { color: var(--apl-muted); font-size: 13.5px; line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.apl-areas__progress { height: 2px; width: calc(100% - max(32px, calc((100vw - 1320px) / 2))); background: var(--apl-line); }
.apl-areas__progress span { display: block; height: 100%; width: 0; background: var(--apl-accent); transition: width 720ms var(--ease-sharp); }
/* Aktif kart vurgusu: JS .is-current ekler; görsel renklenir, diğerleri hafif soluk. */
.apl-areas__viewport.is-playing .apl-area:not(.is-current) .apl-area__media img { filter: saturate(.6); }
.apl-area.is-current a { border-color: var(--apl-ink); }

/* ===================================================== 8 · GALERİ ŞERİDİ
 * Yatay kayan fotoğraf şeridi; her üçüncü kare daha uzun (ritim).
 * ------------------------------------------------------------------------- */
.apl-gallery2 { padding: var(--apl-pad-section) 0; background: var(--apl-white); border-top: 1px solid var(--apl-line-soft); overflow: hidden; }
.apl-gallery2 .apl-head { margin-bottom: 36px; }
.apl-gallery2__viewport { width: 100%; overflow: hidden; }
.apl-gallery2__track { display: flex; align-items: center; gap: 12px; width: max-content; margin: 0; padding: 0; list-style: none; animation: apl-marquee-left 70s linear infinite; }
.apl-gallery2__viewport:hover .apl-gallery2__track { animation-play-state: paused; }
.apl-gallery2__item { flex: 0 0 auto; width: 300px; height: 220px; overflow: hidden; border: 1px solid var(--apl-line); }
.apl-gallery2__item--tall { height: 300px; width: 240px; }
.apl-gallery2__item a { display: block; width: 100%; height: 100%; }
.apl-gallery2__item img { width: 100%; height: 100%; object-fit: cover; transition: transform 800ms var(--ease-out); }
.apl-gallery2__item:hover img { transform: scale(1.05); }

@media (max-width: 640px) {
  .apl-area { width: 280px; }
  .apl-areas__head { grid-template-columns: minmax(0, 1fr); }
  .apl-areas__nav { display: none; } /* mobilde parmakla kaydırma yeter */
  .apl-gallery2__item { width: 220px; height: 160px; }
  .apl-gallery2__item--tall { width: 180px; height: 220px; }
  /* Mobilde marquee yerine parmakla kaydırılan şerit; tekrar kopyası gizlenir. */
  .apl-gallery2__viewport { overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: 16px; scrollbar-width: none; }
  .apl-gallery2__viewport::-webkit-scrollbar { display: none; }
  .apl-gallery2__track { animation: none; width: max-content; padding: 0 16px; }
  .apl-gallery2__item { scroll-snap-align: start; }
  .apl-gallery2__item[aria-hidden="true"] { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .apl-gallery2__track { animation: none; width: auto; }
  .apl-gallery2__viewport, .apl-areas__viewport { overflow-x: auto; }
}

/* ===========================================================================
 * 4 · HİZMETLER
 * ======================================================================== */
.apl-services {
  padding: var(--apl-pad-section) 0;
  background: var(--apl-white);
  border-top: 1px solid var(--apl-line-soft);
}

.apl-services__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.apl-service {
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--apl-white);
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius);
  overflow: hidden;
  transition: border-color var(--dur-base) var(--ease-sharp);
}
.apl-service:hover,
.apl-service:focus-within { border-color: var(--apl-accent); }

.apl-service__media {
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: var(--apl-surface);
  border-bottom: 1px solid var(--apl-line-soft);
}
.apl-service__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform var(--dur-slow) var(--ease-out);
}
.apl-service:hover .apl-service__media img { transform: scale(1.04); }

.apl-service__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 12px;
  padding: 26px 24px 26px;
}
.apl-service__body h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: 21px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -.015em;
}
.apl-service__body h3 a:hover,
.apl-service__body h3 a:focus-visible { color: var(--apl-accent); }
.apl-service__body > p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  margin: 0;
  min-height: calc(1.7em * 4); /* açıklama 4 satır: özellik listesi her kartta aynı yükseklikten başlar */
  overflow: hidden;
  color: var(--apl-muted);
  font-size: 15px;
  line-height: 1.7;
}
.apl-service__body h3 { min-height: calc(1.3em * 1); }

.apl-service__features {
  margin: 2px 0 0;
  padding: 14px 0 0;
  list-style: none;
  display: grid;
  gap: 8px;
  border-top: 1px solid var(--apl-line-soft);
}
.apl-service__features li {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 26px; /* sabit satır: kartlar arasında özellikler aynı hizada */
  font-size: 14px;
  line-height: 1.4;
}
.apl-service__features li span { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.apl-service__features svg {
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  color: var(--apl-accent);
}

.apl-service__cta {
  margin-top: auto;
  align-self: flex-start;
}

/* ===========================================================================
 * 5 · AVANTAJLAR
 * ======================================================================== */
.apl-advantages {
  padding: var(--apl-pad-section) 0;
  background: var(--apl-white);
  border-top: 1px solid var(--apl-line-soft);
}

.apl-advantages__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.apl-advantage {
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--apl-white);
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius);
  overflow: hidden;
  transition: border-color var(--dur-base) var(--ease-sharp);
}
.apl-advantage:hover { border-color: var(--apl-accent); }

.apl-advantage__media {
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: var(--apl-surface);
}
.apl-advantage__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform var(--dur-slow) var(--ease-out);
}
.apl-advantage:hover .apl-advantage__media img { transform: scale(1.04); }

.apl-advantage__body {
  position: relative;
  flex: 1;
  padding: 26px 24px 26px;
}

/* Görselin alt kenarına binen kare vurgu blok — gölgesiz, sol üstte. */

.apl-advantage__body h3 {
  margin: 0 0 8px;
  font-family: var(--font-display);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -.015em;
}
.apl-advantage__body p {
  margin: 0;
  color: var(--apl-muted);
  font-size: 15px;
  line-height: 1.7;
}

/* ===========================================================================
 * 6 · RAKAMLARLA antrasit blok, ritmi kırar
 * ======================================================================== */
.apl-stats {
  position: relative;
  padding: var(--apl-pad-section) 0;
  background: var(--apl-ink);
  color: var(--apl-white);
  overflow: hidden;
  isolation: isolate;
}
.apl-stats__media {
  position: absolute;
  inset: 0;
  z-index: -2;
}
.apl-stats__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: .14;
}
/* Görselin üstüne koyu degrade: metin kontrastı garanti altına alınır. */
.apl-stats::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(100deg, rgba(14, 16, 19, .94) 30%, rgba(14, 16, 19, .58) 100%);
}

.apl-stats__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 44px 64px;
}

.apl-stats__copy h2 {
  margin: 16px 0 18px;
  font-family: var(--font-display);
  font-size: clamp(22px, 2.2vw, 30px);
  font-weight: 700;
  line-height: 1.06;
  letter-spacing: -.035em;
  text-wrap: balance;
}
.apl-stats__copy h2 strong { color: var(--apl-accent); font-weight: 700; }
.apl-stats__copy .apl-kicker { color: var(--apl-white); }
.apl-stats__copy p {
  margin: 0 0 28px;
  max-width: 46ch;
  color: rgba(255, 255, 255, .74);
  font-size: 15px;
  line-height: 1.7;
}

/* Sayaç ızgarası: paylaşılan hairline hücreler, zemin şeffaf. */
.apl-stats__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid var(--apl-line-dark);
  border-left: 1px solid var(--apl-line-dark);
}
.apl-stat {
  padding: 28px 24px;
  background: transparent;
  border-right: 1px solid var(--apl-line-dark);
  border-bottom: 1px solid var(--apl-line-dark);
}
.apl-stat strong {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(24px, 2.4vw, 32px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.04em;
}
.apl-stat span {
  display: block;
  margin-top: 10px;
  color: rgba(255, 255, 255, .70);
  font-size: 13px;
  line-height: 1.5;
}

/* ========================================================== 10 · SSS
 * Tek sütun akordiyon + kapsam filtresi + yardım kartı.
 * Kart yığını yerine hairline satırlar: 25+ soruda hafif kalır; tek sütun
 * olduğu için açılan cevap komşu sütunda boşluk bırakmaz.
 * ------------------------------------------------------------------------- */
.apl-faq2 { padding: var(--apl-pad-section) 0; background: var(--apl-white); border-top: 1px solid var(--apl-line-soft); }
.apl-faq2__grid { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 56px; align-items: start; }
.apl-faq2__main { min-width: 0; }
.apl-faq2__main .apl-head { grid-template-columns: minmax(0, 1fr); margin-bottom: 28px; }

.apl-faq2__list { border-top: 1px solid var(--apl-ink); }
.apl-faq2__item { border-bottom: 1px solid var(--apl-line); }
.apl-faq2__item[hidden] { display: none; }
.apl-faq2__summary {
  display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: start; gap: 18px;
  min-height: 64px; padding: 20px 0; list-style: none; cursor: pointer;
}
.apl-faq2__summary::-webkit-details-marker { display: none; }
.apl-faq2__num { padding-top: 4px; color: var(--apl-accent); font-family: var(--font-mono); font-size: 12px; font-weight: 500; letter-spacing: .06em; }
.apl-faq2__q { margin: 0; color: var(--apl-ink); font-family: var(--font-body); font-size: 17px; font-weight: 600; line-height: 1.45; letter-spacing: -.012em; transition: color var(--dur-fast) var(--ease-sharp); }
.apl-faq2__summary:hover .apl-faq2__q,
.apl-faq2__item[open] .apl-faq2__q { color: var(--apl-accent); }
/* Artı/eksi ikonu: iki hairline çizgi; açıkken dikey çizgi kaybolur. */
.apl-faq2__icon { position: relative; width: 28px; height: 28px; margin-top: 1px; border: 1px solid var(--apl-line); flex: 0 0 28px; transition: border-color var(--dur-fast) var(--ease-sharp), background var(--dur-fast) var(--ease-sharp); }
.apl-faq2__icon::before, .apl-faq2__icon::after { content: ""; position: absolute; left: 50%; top: 50%; background: currentColor; transform: translate(-50%, -50%); transition: transform var(--dur-base) var(--ease-sharp), opacity var(--dur-fast); }
.apl-faq2__icon::before { width: 12px; height: 1.5px; }
.apl-faq2__icon::after { width: 1.5px; height: 12px; }
.apl-faq2__item[open] .apl-faq2__icon { background: var(--apl-ink); border-color: var(--apl-ink); color: var(--apl-white); }
.apl-faq2__item[open] .apl-faq2__icon::after { transform: translate(-50%, -50%) scaleY(0); opacity: 0; }
.apl-faq2__a { padding: 0 46px 24px 34px; color: var(--apl-muted); font-size: 15px; line-height: 1.75; max-width: 72ch; }

.apl-faq2__aside { position: sticky; top: 120px; }
.apl-faq2__help { display: grid; gap: 14px; padding: 30px 28px; background: var(--apl-ink); color: var(--apl-white); }
.apl-faq2__help .apl-kicker { color: var(--apl-accent-soft); }
.apl-faq2__help .apl-kicker::before { background: var(--apl-accent-soft); }
.apl-faq2__help h3 { margin: 0; font-size: 19px; font-weight: 600; line-height: 1.2; letter-spacing: -.02em; }
.apl-faq2__help p { margin: 0; color: rgba(255, 255, 255, .72); font-size: 14.5px; line-height: 1.7; }
.apl-faq2__phone { display: inline-flex; align-items: center; gap: 10px; color: var(--apl-white); font-family: var(--font-display); font-size: 22px; font-weight: 700; letter-spacing: -.02em; }
.apl-faq2__phone svg { width: 18px; height: 18px; color: var(--apl-accent); }
.apl-faq2__help .apl-btn { justify-content: center; }

@media (max-width: 1080px) { .apl-faq2__grid { grid-template-columns: minmax(0, 1fr); gap: 32px; } .apl-faq2__aside { position: static; } }
@media (max-width: 640px) { .apl-faq2__summary { gap: 12px; } .apl-faq2__a { padding: 0 0 22px 30px; } .apl-faq2__q { font-size: 16px; } }

/* ===========================================================================
 * 11 · BLOG
 * ======================================================================== */
.apl-blog {
  padding: var(--apl-pad-section) 0;
  background: var(--apl-white);
  border-top: 1px solid var(--apl-line-soft);
}

.apl-blog__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.apl-post {
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--apl-white);
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius);
  overflow: hidden;
  transition: border-color var(--dur-base) var(--ease-sharp);
}
.apl-post:hover,
.apl-post:focus-within { border-color: var(--apl-accent); }

.apl-post__media {
  display: block;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: var(--apl-surface);
  border-bottom: 1px solid var(--apl-line-soft);
}
.apl-post__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform var(--dur-slow) var(--ease-out);
}
.apl-post:hover .apl-post__media img { transform: scale(1.04); }

.apl-post__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 10px;
  padding: 24px 22px 24px;
}
.apl-post__body time {
  color: var(--apl-muted-soft);
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.apl-post__body h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -.015em;
}
.apl-post__body h3 a:hover,
.apl-post__body h3 a:focus-visible { color: var(--apl-accent); }
.apl-post__body p {
  margin: 0;
  color: var(--apl-muted);
  font-size: 15px;
  line-height: 1.7;
}

.apl-post__more {
  margin-top: auto;
  padding-top: 8px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--apl-accent);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.apl-post__more svg {
  width: 15px;
  height: 15px;
  transition: transform var(--dur-fast) var(--ease-sharp);
}
.apl-post:hover .apl-post__more svg { transform: translate(2px, -2px); }

/* ===========================================================================
 * 12 · TALEP BANDI — beyaz zemin, antrasit kontrast kart
 * ======================================================================== */
.apl-cta-band {
  padding: var(--apl-pad-section) 0;
  background: var(--apl-white);
  border-top: 1px solid var(--apl-line-soft);
}

.apl-cta-band__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  align-items: center;
  gap: 40px clamp(40px, 5vw, 72px);
}

.apl-cta-band__copy h2 {
  margin: 16px 0 16px;
  font-family: var(--font-display);
  font-size: clamp(22px, 2.2vw, 30px);
  font-weight: 700;
  line-height: 1.06;
  letter-spacing: -.035em;
  text-wrap: balance;
}
.apl-cta-band__copy p {
  margin: 0 0 24px;
  max-width: 46ch;
  color: var(--apl-muted);
  font-size: 15px;
  line-height: 1.7;
}

.apl-cta-band__phone {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding: 0 18px 0 16px;
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius-sm);
  color: var(--apl-ink);
  font-family: var(--font-display);
  font-size: clamp(20px, 2.2vw, 28px);
  font-weight: 700;
  letter-spacing: -.03em;
  transition: border-color var(--dur-fast) var(--ease-sharp),
              color var(--dur-fast) var(--ease-sharp);
}
.apl-cta-band__phone svg { width: 20px; height: 20px; color: var(--apl-accent); }
.apl-cta-band__phone:hover,
.apl-cta-band__phone:focus-visible { border-color: var(--apl-accent); color: var(--apl-accent); }

/* Antrasit blok: sayfanın son vurgusu, gölge yerine tam kontrast. */
.apl-cta-band__card {
  display: grid;
  gap: 12px;
  padding: 34px 30px 32px;
  background: var(--apl-ink);
  border: 1px solid var(--apl-ink);
  border-radius: var(--apl-radius);
  color: var(--apl-white);
}
.apl-cta-band__card h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: 21px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.02em;
}
.apl-cta-band__card p {
  margin: 0 0 6px;
  color: rgba(255, 255, 255, .72);
  font-size: 15px;
  line-height: 1.7;
}
.apl-cta-band__card .apl-btn {
  width: 100%;
  justify-content: center;
}

/* ===========================================================================
 * KIRILMA NOKTALARI
 * ======================================================================== */

@media (max-width: 1024px) {
  .apl-hero { min-height: 660px; }
  .apl-hero__content { align-items: flex-end; }
  .apl-hero__register { flex-basis: 220px; width: 220px; }
  .apl-services__grid,
.apl-advantages__grid,
.apl-blog__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  
  
  .apl-stats__inner { gap: 40px 44px; }
}

@media (max-width: 860px) {
  .apl-hero { min-height: 600px; }
  .apl-hero__content { padding-bottom: 100px; }
  .apl-hero__register { display: none; }  /* dar ekranda ana CTA butonları yeter */
  
  .apl-hero__video-toggle { top: 16px; right: 16px; }

  .apl-stats__inner,
.apl-cta-band__inner { grid-template-columns: minmax(0, 1fr); }

  
  
  
}

@media (max-width: 640px) {
  .apl-hero { min-height: 540px; }
  /* Slider: ortalı metin, bir kademe küçük başlık, iki buton yan yana. */
  .apl-hero__content { justify-content: center; }
  .apl-hero__copy { margin: 0 auto; text-align: center; }
  .apl-hero__copy .apl-kicker { justify-content: center; }
  .apl-hero__copy h1,
.apl-hero__copy h2 { margin: 16px 0 14px; font-size: clamp(30px, 8.4vw, 38px); }
  .apl-hero__copy p { margin: 0 auto; font-size: 15px; }
  .apl-hero__actions { flex-wrap: nowrap; gap: 8px; margin-top: 24px; }
  .apl-hero__actions .apl-btn { flex: 1 1 0; min-width: 0; padding-left: 10px; padding-right: 10px; justify-content: center; }
  /* Rakamlar + talep bandı: ortalı kopya. */
  .apl-stats__copy, .apl-cta-band__copy { text-align: center; }
  .apl-stats__copy .apl-kicker, .apl-cta-band__copy .apl-kicker { justify-content: center; }
  .apl-stats__copy p, .apl-cta-band__copy p { margin-left: auto; margin-right: auto; }
  .apl-stat { text-align: center; }
  .apl-faq2__help { text-align: center; justify-items: center; }
  .apl-faq2__help .apl-kicker { justify-content: center; }

  
  
  

  
  
  
  

  .apl-advantages__grid,
.apl-blog__grid { grid-template-columns: minmax(0, 1fr); }

  /* Hizmetler: yan yana kaydırmalı şerit (scroll-snap), her kart ekranın ~%82'si. */
  .apl-services__grid { display: flex; align-items: stretch; gap: 14px; margin: 0; padding: 0; overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .apl-services__grid::-webkit-scrollbar { display: none; }
  .apl-service { flex: 0 0 82%; scroll-snap-align: start; }

  .apl-stats__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  
  .apl-cta-band__card { padding: 28px 22px; }
}

@media (max-width: 420px) {
  .apl-hero { min-height: 500px; }
  .apl-hero__controls { bottom: 18px; }
  
  
  
  
  .apl-service__body,
.apl-advantage__body,
.apl-post__body { padding-left: 18px; padding-right: 18px; }
}

/* Blog kartı alt satırı: tarih solda, "devamını oku" sağda aynı hizada. */
.apl-post__foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 12px; border-top: 1px solid var(--apl-line-soft); }
.apl-post__foot .apl-post__more { margin-top: 0; padding-top: 0; }

/* Talep kartı: koyu zemindeki ikincil buton görünür hairline (önceden koyu üstüne koyuydu). */
.apl-cta-band__card .apl-btn--outline { border-color: rgba(255, 255, 255, .34); color: var(--apl-white); }
.apl-cta-band__card .apl-btn--outline:hover, .apl-cta-band__card .apl-btn--outline:focus-visible { background: var(--apl-white); border-color: var(--apl-white); color: var(--apl-ink); }

/* ===========================================================================
 * Şablon ekleri — referans logoları, ekip kartları, güven bandı, avantaj numarası
 * Tasarım dili aynı: hairline kenarlık, keskin köşe, hover'da yalnız kenarlık rengi.
 * ======================================================================== */
.apl-service__meta,
.apl-advantage__num {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--apl-accent);
}
.apl-advantage--plain .apl-advantage__body { padding-top: 30px; }

/* Referanslar: logo ızgarası */
.apl-refs {
  padding: var(--apl-pad-section) 0;
  background: var(--apl-white);
  border-top: 1px solid var(--apl-line-soft);
}
.apl-refs__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.apl-ref {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-height: 112px;
  padding: 20px;
  background: var(--apl-white);
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius);
  transition: border-color var(--dur-base) var(--ease-sharp);
}
a.apl-ref:hover,
a.apl-ref:focus-visible { border-color: var(--apl-accent); }
.apl-ref__logo {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 64px;
  object-fit: contain;
  filter: grayscale(1);
  opacity: .82;
  transition: filter var(--dur-base) var(--ease-sharp), opacity var(--dur-base) var(--ease-sharp);
}
a.apl-ref:hover .apl-ref__logo,
a.apl-ref:focus-visible .apl-ref__logo { filter: none; opacity: 1; }
.apl-ref__name {
  font-family: var(--font-display);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.01em;
  text-align: center;
}
.apl-refs__note {
  margin: 22px 0 0;
  color: var(--apl-muted);
  font-size: 13px;
  text-align: center;
}

/* Ekip: kişi kartları (anasayfa + /ekibimiz) */
.apl-team {
  padding: var(--apl-pad-section) 0;
  background: var(--apl-surface);
  border-top: 1px solid var(--apl-line-soft);
}
.apl-team__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.apl-person {
  display: flex;
  flex-direction: column;
  background: var(--apl-white);
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius);
  overflow: hidden;
  transition: border-color var(--dur-base) var(--ease-sharp);
}
.apl-person:hover { border-color: var(--apl-accent); }
.apl-person__photo {
  aspect-ratio: 6 / 7;
  overflow: hidden;
  background: var(--apl-surface);
  border-bottom: 1px solid var(--apl-line-soft);
}
.apl-person__photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.apl-person__body { display: grid; gap: 8px; padding: 22px 22px 24px; }
.apl-person__body h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: 19px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.015em;
}
.apl-person__role {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--apl-accent);
}
.apl-person__body p { margin: 4px 0 0; color: var(--apl-muted); font-size: 14px; line-height: 1.7; }
.apl-person__contact {
  display: grid;
  gap: 4px;
  margin-top: 8px;
  padding-top: 12px;
  border-top: 1px solid var(--apl-line-soft);
  font-size: 14px;
}
.apl-person__contact a { color: var(--apl-ink); overflow-wrap: anywhere; }
.apl-person__contact a:hover,
.apl-person__contact a:focus-visible { color: var(--apl-accent); }

/* Güven bandı: solda bölüm başlığı, sağda numaralı maddeler */
.apl-trust {
  padding: var(--apl-pad-section) 0;
  background: var(--apl-white);
  border-top: 1px solid var(--apl-line-soft);
}
.apl-trust__inner {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: 56px;
  align-items: start;
}
.apl-trust__copy .apl-head { grid-template-columns: minmax(0, 1fr); margin-bottom: 20px; }
.apl-trust__list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--apl-line); }
.apl-trust__item {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 16px;
  padding: 22px 0;
  border-bottom: 1px solid var(--apl-line);
}
.apl-trust__num {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: .1em;
  color: var(--apl-accent);
  padding-top: 4px;
}
.apl-trust__item h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: 19px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.015em;
}
.apl-trust__item h3 a:hover,
.apl-trust__item h3 a:focus-visible { color: var(--apl-accent); }
.apl-trust__item p { margin: 6px 0 0; color: var(--apl-muted); font-size: 15px; line-height: 1.7; }

@media (max-width: 1199px) {
  .apl-refs__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .apl-team__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
  .apl-trust__inner { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .apl-team__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
  .apl-refs__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .apl-ref { min-height: 96px; padding: 14px; }
  .apl-team__grid { grid-template-columns: minmax(0, 1fr); }
}

/* Ekip — sade liste (anasayfa, $compact): küçük kare portre + ad + unvan, tek satırda dört kişi. */
.apl-team__grid--compact {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid var(--apl-line);
}
.apl-team__grid--compact .apl-person {
  flex-direction: row;
  align-items: center;
  gap: 14px;
  padding: 18px 20px 18px 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--apl-line);
}
.apl-team__grid--compact .apl-person + .apl-person { padding-left: 20px; border-left: 1px solid var(--apl-line-soft); }
.apl-team__grid--compact .apl-person__photo {
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  aspect-ratio: 1;
  border: 0;
  border-radius: var(--apl-radius-sm);
}
.apl-team__grid--compact .apl-person__photo img { filter: grayscale(1); }
.apl-team__grid--compact .apl-person__body { gap: 4px; padding: 0; min-width: 0; }
.apl-team__grid--compact .apl-person__body h3 { font-size: 15px; font-weight: 600; letter-spacing: -.005em; }
.apl-team__grid--compact .apl-person__role { font-size: 10.5px; letter-spacing: .08em; color: var(--apl-muted); }
@media (max-width: 1199px) {
  .apl-team__grid--compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .apl-team__grid--compact .apl-person:nth-child(odd) { padding-left: 0; border-left: 0; }
}
@media (max-width: 575px) {
  .apl-team__grid--compact { grid-template-columns: minmax(0, 1fr); }
  .apl-team__grid--compact .apl-person { padding-left: 0; border-left: 0; }
}

/* ==== 04-ic-sayfalar.css ================================================ */
/* ============================================================================
 * 04 · İÇ SAYFALAR — SSS, koleksiyon (hizmet/referans/ekip), detay, form,
 * iletişim, konum, galeri, arama, blog, kurumsal ve yasal sayfalar.
 * ========================================================================= */

/* -------------------------------------------------- 2.10 SSS -------- */
.apl-faq-layout {
  display: grid;
  gap: 36px;
}

.apl-faq-list {
  display: grid;
  border-top: 1px solid var(--apl-line);
}

.apl-faq-row {
  border-bottom: 1px solid var(--apl-line);
}

.apl-faq-row summary {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 64px;
  padding: 18px 0;
  cursor: pointer;
  list-style: none;
  color: var(--apl-ink);
}

.apl-faq-row summary::-webkit-details-marker {
  display: none;
}

.apl-faq-row summary > span {
  flex: 0 0 auto;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .12em;
  color: var(--apl-accent);
}

.apl-faq-row summary strong {
  flex: 1 1 auto;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: -.015em;
}

.apl-faq-row summary svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  color: var(--apl-accent);
  transition: transform var(--dur-base) var(--ease-sharp);
}

.apl-faq-row[open] summary svg {
  transform: rotate(45deg);
}

.apl-faq-row__answer {
  padding: 0 0 24px 34px;
  max-width: 72ch;
  font-size: 15px;
  line-height: 1.7;
  color: var(--apl-muted);
}

/* ------------------------------ 2.11 Hakkımızda/standart kırılımlar -- */

@media (max-width: 640px) {
  

  

  

  

  

  /* Dokunmatikte hover yok; ok kalıcı görünür. */
  

  

  .apl-faq-row__answer {
    padding-left: 0;
  }
}

/* --------------------------------------------- 3.2 Izgara alanı ------ */
.apl-coll-grid-section {
  padding: var(--apl-pad-section) 0;
  background: var(--apl-white);
}

/* Üç koleksiyon ızgarası da 1px hairline ile bölünür. */
.apl-coll-services {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: var(--apl-line);
  border: 1px solid var(--apl-line);
}

.apl-coll-empty {
  display: grid;
  justify-items: start;
  gap: 10px;
  padding: 56px 32px;
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius);
  background: var(--apl-surface);
}

.apl-coll-empty svg {
  width: 26px;
  height: 26px;
  color: var(--apl-accent);
}

.apl-coll-empty h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: -.015em;
  color: var(--apl-ink);
}

.apl-coll-empty p {
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: var(--apl-muted);
}

/* ---------------------------------------------- 3.3 Hizmet kartı ----- */
.apl-service-card {
  display: flex;
  flex-direction: column;
  background: var(--apl-white);
  transition: background var(--dur-base) var(--ease-out);
}

.apl-service-card:hover {
  background: var(--apl-surface);
}

/* İlk kart iki sütun kaplar: ızgarada hiyerarşi kurar. */

.apl-service-card__media {
  position: relative;
  display: block;
  overflow: hidden;
}

.apl-service-card__media img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  transition: transform var(--dur-slow) var(--ease-out);
}

.apl-service-card:hover .apl-service-card__media img {
  transform: scale(1.03);
}

.apl-service-card__body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 24px 22px 26px;
}

.apl-service-card__tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  align-self: flex-start;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--apl-accent);
}

.apl-service-card__tag svg {
  width: 14px;
  height: 14px;
}

.apl-service-card__body h2 {
  margin: 12px 0 10px;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -.015em;
}

.apl-service-card__body h2 a {
  color: var(--apl-ink);
  text-decoration: none;
}

.apl-service-card__body h2 a:hover {
  color: var(--apl-accent);
}

.apl-service-card__body p {
  margin: 0 0 20px;
  font-size: 15px;
  line-height: 1.7;
  color: var(--apl-muted);
}

/* ------------------------------------ 3.7 Koleksiyon kırılımları ----- */
@media (max-width: 1024px) {
  .apl-coll-services {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  
}

@media (max-width: 640px) {
  .apl-coll-services {
    grid-template-columns: minmax(0, 1fr);
  }

  

  
}

/* ==========================================================================
   4) DETAY SAYFALARI — hizmet / blog yazısı
   ========================================================================== */
.apl-dtl-content {
  padding: var(--apl-pad-section) 0;
  background: var(--apl-white);
}

.apl-dtl-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  align-items: start;
  gap: clamp(36px, 4vw, 64px);
}

.apl-dtl-main {
  min-width: 0;
}

.apl-dtl-cover {
  margin: 0 0 28px;
  overflow: hidden;
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius);
}

.apl-dtl-cover img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

/* Meta çipleri: mono, hairline kutu. */
.apl-dtl-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 22px;
}

.apl-dtl-meta span,
.apl-dtl-meta time {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 11px;
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius-sm);
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--apl-muted);
}

.apl-dtl-section {
  margin: 0 0 30px;
  padding-top: 26px;
  border-top: 1px solid var(--apl-line);
}

.apl-dtl-section h2 {
  margin: 0 0 14px;
  font-family: var(--font-display);
  font-size: clamp(20px, 2.2vw, 28px);
  font-weight: 700;
  line-height: 1.16;
  letter-spacing: -.03em;
  color: var(--apl-ink);
}

.apl-dtl-section p {
  margin: 0;
  max-width: 68ch;
  font-size: 15px;
  line-height: 1.7;
  color: var(--apl-muted);
}

.apl-dtl-features {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: var(--apl-line);
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius-sm);
}

.apl-dtl-feature {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 15px 14px;
  background: var(--apl-white);
  font-size: 14px;
  line-height: 1.4;
  color: var(--apl-ink-3);
}

.apl-dtl-feature svg {
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  color: var(--apl-accent);
}

/* Yan sütun: antrasit kontrast bloğu, yapışkan. */
.apl-dtl-aside {
  position: sticky;
  top: 104px;
}

.apl-dtl-aside__card {
  padding: 28px 24px 26px;
  background: var(--apl-ink);
  border-radius: var(--apl-radius);
  color: var(--apl-white);
}

.apl-dtl-aside__card .apl-kicker {
  color: rgba(255, 255, 255, .55);
}

.apl-dtl-aside__card h3 {
  margin: 12px 0 10px;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -.015em;
  color: var(--apl-white);
}

.apl-dtl-aside__card p {
  margin: 0 0 22px;
  font-size: 15px;
  line-height: 1.7;
  color: rgba(255, 255, 255, .70);
}

.apl-dtl-aside__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  margin-top: 14px;
  padding-top: 14px;
  width: 100%;
  border-top: 1px solid var(--apl-line-dark);
  font-size: 14px;
  font-weight: 600;
  color: rgba(255, 255, 255, .82);
  text-decoration: none;
  transition: color var(--dur-fast) var(--ease-out);
}

.apl-dtl-aside__link:hover {
  color: var(--apl-white);
}

.apl-dtl-aside__link svg {
  width: 16px;
  height: 16px;
  color: var(--apl-accent);
}

/* --------------------------------------- 4.1 Detay kırılımları ------- */
@media (max-width: 1024px) {
  .apl-dtl-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .apl-dtl-aside {
    position: static;
  }
}

@media (max-width: 860px) {
  .apl-dtl-features {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .apl-dtl-features {
    grid-template-columns: minmax(0, 1fr);
  }

  
}

/* ------------------------------------------------- 5.3 Lightbox ------ */
.apl-lightbox {
  position: fixed;
  inset: 0;
  z-index: var(--z-modal);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.apl-lightbox[hidden] {
  display: none;
}

.apl-lightbox__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(14, 16, 19, .96);
}

.apl-lightbox__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: min(1180px, 100%);
  max-height: 100%;
}

.apl-lightbox__figure {
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  min-height: 0;
}

.apl-lightbox__img {
  display: block;
  max-width: 100%;
  max-height: 74vh;
  object-fit: contain;
  border: 1px solid var(--apl-line-dark);
}

.apl-lightbox__caption {
  max-width: 66ch;
  text-align: center;
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255, 255, 255, .74);
}

.apl-lightbox__counter {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .18em;
  color: var(--apl-accent);
}

/* Keskin kare kontroller; hepsi 48px dokunma hedefi. */
.apl-lightbox__content button {
  position: absolute;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border: 1px solid var(--apl-line-dark);
  border-radius: var(--apl-radius-sm);
  background: var(--apl-ink-2);
  color: var(--apl-white);
  cursor: pointer;
  transition: background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);
}

.apl-lightbox__content button:hover {
  background: var(--apl-accent);
  border-color: var(--apl-accent);
}

.apl-lightbox__content button svg {
  width: 20px;
  height: 20px;
}

.apl-lightbox__close {
  top: -8px;
  right: 0;
}

.apl-lightbox__prev {
  top: 50%;
  left: -8px;
  transform: translateY(-50%);
}

.apl-lightbox__next {
  top: 50%;
  right: -8px;
  transform: translateY(-50%);
}

/* ------------------------------------- 5.4 Galeri kırılımları -------- */

@media (max-width: 640px) {

  /* Dokunmatikte örtü kalıcı: zoom hedefi görünür olmalı. */

  .apl-lightbox {
    padding: 16px;
  }

  .apl-lightbox__close {
    top: 0;
    right: 0;
  }

  .apl-lightbox__prev {
    top: auto;
    bottom: 0;
    left: 0;
    transform: none;
  }

  .apl-lightbox__next {
    top: auto;
    bottom: 0;
    right: 0;
    transform: none;
  }

  .apl-lightbox__img {
    max-height: 60vh;
  }
}

@media (max-width: 420px) {

  .apl-gallery-bento__item--hero,

}

/* ==========================================================================
   6) İLETİŞİM SAYFASI
   Mevcut düzen korunur (harita hero, hero'ya binen bilgi karoları,
   iki sütunlu form); yalnızca keskin dile uyarlanır.
   ========================================================================== */

.apl-contact-hero2 {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: clamp(420px, 58vh, 560px);
  padding-top: 112px;
  overflow: hidden;
  background: var(--apl-ink);
  border-bottom: 3px solid var(--apl-accent);
}

.apl-contact-hero2__map {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.apl-contact-hero2__map iframe {
  width: 100%;
  height: 100%;
  border: 0;
  /* Harita antrasit paletle uyumlansın diye doygunluğu düşürülür. */
  filter: grayscale(.55) contrast(1.05) brightness(.82);
}

.apl-contact-hero2__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(14,16,19,.34) 0%, rgba(14,16,19,.62) 48%, rgba(14,16,19,.95) 100%);
}

.apl-contact-hero2__content {
  position: relative;
  z-index: 2;
  padding: 72px 0 88px;
  color: var(--apl-white);
}

.apl-contact-hero2__content .apl-kicker {
  color: rgba(255, 255, 255, .62);
}

.apl-contact-hero2__content h1 {
  margin: 16px 0 14px;
  font-family: var(--font-display);
  font-size: clamp(28px, 3.2vw, 42px);
  font-weight: 800;
  line-height: 1.02;
  letter-spacing: -.04em;
  color: var(--apl-white);
}

.apl-contact-hero2__content > p {
  margin: 0 0 26px;
  max-width: 54ch;
  font-size: 15px;
  line-height: 1.7;
  color: rgba(255, 255, 255, .74);
}

.apl-contact-hero2__directions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 24px;
  background: var(--apl-accent);
  border-radius: var(--apl-radius-sm);
  color: var(--apl-white);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -.01em;
  text-decoration: none;
  transition: background var(--dur-fast) var(--ease-out);
}

.apl-contact-hero2__directions:hover {
  background: var(--apl-accent-dark);
}

.apl-contact-hero2__directions svg {
  width: 16px;
  height: 16px;
}

/* --------------------------------- 6.1 Bilgi karoları (hero'ya biner) */
.apl-contact-strip {
  position: relative;
  z-index: 3;
  margin-top: -52px;
  padding: 0;
}

.apl-contact-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  background: var(--apl-line);
  border: 1px solid var(--apl-line);
}

.apl-contact-tile {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 92px;
  padding: 20px 18px;
  background: var(--apl-white);
  color: var(--apl-ink);
  text-decoration: none;
  transition: background var(--dur-base) var(--ease-out);
}

.apl-contact-tile:hover {
  background: var(--apl-surface);
}

/* Vurgu kare ikon karosu — kullanıcının beğendiği detay, köşe 2px'e iner. */
.apl-contact-tile__icon {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  background: var(--apl-accent);
  border-radius: var(--apl-radius-sm);
  color: var(--apl-white);
}

.apl-contact-tile__icon svg {
  width: 20px;
  height: 20px;
}

.apl-contact-tile__text {
  min-width: 0;
}

.apl-contact-tile__text span {
  display: block;
  margin-bottom: 4px;
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--apl-muted);
}

.apl-contact-tile__text strong {
  display: block;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -.01em;
  overflow-wrap: anywhere;
}

.apl-contact-tile__arrow {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin-left: auto;
  color: var(--apl-accent);
  opacity: 0;
  transition: opacity var(--dur-fast) var(--ease-out);
}

.apl-contact-tile:hover .apl-contact-tile__arrow {
  opacity: 1;
}

/* ------------------------------------------------ 6.2 Form alanı ----- */
.apl-contact-form2 {
  padding: var(--apl-pad-section) 0;
  background: var(--apl-white);
}

.apl-contact-form2__wrapper {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  align-items: start;
  gap: clamp(40px, 5vw, 72px);
}

.apl-contact-form2__sidebar h2 {
  margin: 14px 0 16px;
  font-family: var(--font-display);
  font-size: clamp(22px, 2.4vw, 30px);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -.035em;
  color: var(--apl-ink);
}

.apl-contact-form2__sidebar h2 strong {
  font-weight: inherit;
  font-style: normal;
  color: var(--apl-accent);
}

.apl-contact-form2__sidebar > p {
  margin: 0 0 30px;
  max-width: 44ch;
  font-size: 15px;
  line-height: 1.7;
  color: var(--apl-muted);
}

.apl-contact-form2__info {
  display: grid;
  margin-bottom: 34px;
  border-top: 1px solid var(--apl-line);
}

.apl-contact-form2__info-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 13px 0;
  border-bottom: 1px solid var(--apl-line);
  font-size: 14px;
  line-height: 1.5;
  color: var(--apl-ink-3);
}

.apl-contact-form2__info-item svg {
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  color: var(--apl-accent);
}

.apl-contact-form2__social > span {
  display: block;
  margin-bottom: 12px;
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--apl-muted);
}

.apl-contact-form2__social-links {
  display: flex;
  gap: 8px;
}

.apl-contact-form2__social-links a {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius-sm);
  background: var(--apl-white);
  color: var(--apl-ink);
  transition: background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);
}

.apl-contact-form2__social-links a:hover {
  background: var(--apl-accent);
  border-color: var(--apl-accent);
  color: var(--apl-white);
}

.apl-contact-form2__social-links a svg {
  width: 18px;
  height: 18px;
}

/* Form paneli: beyaz kart, gölge yerine hairline çerçeve. */
.apl-contact-form2__panel {
  padding: clamp(24px, 3vw, 40px);
  background: var(--apl-white);
  border: 1px solid var(--apl-line);
  border-top: 3px solid var(--apl-accent);
  border-radius: var(--apl-radius);
}

/* ------------------------------------ 6.3 İletişim kırılımları ------- */
@media (max-width: 1200px) {
  .apl-contact-strip__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1024px) {
  .apl-contact-form2__wrapper {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 640px) {
  .apl-contact-hero2 {
    min-height: 0;
  }

  .apl-contact-hero2__content {
    padding: 56px 0 76px;
  }

  .apl-contact-strip {
    margin-top: -40px;
  }

  .apl-contact-strip__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  /* Dokunmatikte hover yok; ok kalıcı görünür. */
  .apl-contact-tile__arrow {
    opacity: 1;
  }
}

@media (max-width: 420px) {
  .apl-contact-hero2__directions {
    width: 100%;
    justify-content: center;
  }
}

/* ==========================================================================
   7) HARİTA SAYFASI
   ========================================================================== */

.apl-map-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, .9fr);
  align-items: start;
  gap: clamp(32px, 4vw, 56px);
}

.apl-map-card {
  display: grid;
  border: 1px solid var(--apl-line);
  border-radius: var(--apl-radius);
  overflow: hidden;
  background: var(--apl-white);
}

.apl-map-card__heading {
  padding: 28px 26px 30px;
  border-bottom: 1px solid var(--apl-line);
}

.apl-map-card__heading h2 {
  margin: 12px 0 12px;
  font-family: var(--font-display);
  font-size: clamp(20px, 2.2vw, 28px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.03em;
  color: var(--apl-ink);
}

.apl-map-card__heading p {
  margin: 0 0 22px;
  max-width: 52ch;
  font-size: 15px;
  line-height: 1.7;
  color: var(--apl-muted);
}

.apl-map-card__embed {
  height: clamp(320px, 42vh, 460px);
  background: var(--apl-surface);
}

.apl-map-card__embed iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  filter: grayscale(.4) contrast(1.04);
}

@media (max-width: 1024px) {
  .apl-map-layout {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* ==========================================================================
   8) ARAMA SAYFASI — filtre bloğu
   ========================================================================== */

/* ==== Hizmet kartı: madde listesi ve eylem satırı ======================= */
.apl-service-card__meta { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; }
.apl-service-card__features { margin: 12px 0 0; padding: 0; list-style: none; display: grid; gap: 7px; }
.apl-service-card__features li { display: flex; align-items: center; gap: 8px; color: var(--apl-muted); font-size: 13.5px; }
.apl-service-card__features svg { width: 14px; height: 14px; color: var(--apl-accent); flex: 0 0 14px; }
.apl-service-card__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: auto; padding-top: 20px; }
.apl-service-card__actions .apl-btn { flex: 1 1 auto; justify-content: center; min-height: 46px; padding: 0 18px; font-size: 13.5px; }

/* ==== Hizmet detayı: galeri ============================================== */
.apl-dtl-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.apl-dtl-gallery figure { margin: 0; aspect-ratio: 4 / 3; overflow: hidden; border: 1px solid var(--apl-line); }
.apl-dtl-gallery img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 640px) {
  
  .apl-dtl-gallery { grid-template-columns: minmax(0, 1fr); }
}

/* ==========================================================================
   Alt bilgi ikon ölçüleri — satır içi SVG yerine lucide ile çizilen ikonlar.
   ========================================================================== */
.apl-ftv2__social svg { width: 18px; height: 18px; }
.apl-ftv2__bottom-links .apl-ftv2__totop svg { width: 14px; height: 14px; }

/* ==== Galeri: albümler ve albüm görselleri ================================ */
.apl-galx { padding: var(--apl-pad-section) 0; background: var(--apl-white); }
.apl-galx__albums { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.apl-galx__albums--compact { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.apl-album { display: flex; flex-direction: column; color: var(--apl-ink); border: 1px solid var(--apl-line); background: var(--apl-white); transition: border-color var(--dur-fast) var(--ease-sharp); }
.apl-album:hover, .apl-album:focus-visible { border-color: var(--apl-accent); }
.apl-album__media { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--apl-ink); }
.apl-album__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 800ms var(--ease-out); }
.apl-album:hover .apl-album__media img { transform: scale(1.05); }
.apl-album__body { display: grid; gap: 6px; padding: 18px 20px 20px; }
.apl-album__count { font-family: var(--font-mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--apl-accent); }
.apl-album__body strong { font-size: 20px; font-weight: 700; letter-spacing: -.02em; line-height: 1.2; }
.apl-album__desc { color: var(--apl-muted); font-size: 14px; line-height: 1.6; }
.apl-album__cta { display: inline-flex; align-items: center; gap: 6px; margin-top: 6px; font-size: 13px; font-weight: 600; color: var(--apl-ink); }
.apl-album__cta svg { width: 14px; height: 14px; }
.apl-galx__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 220px; grid-auto-flow: dense; gap: 12px; }
.apl-galx__item { margin: 0; overflow: hidden; border: 1px solid var(--apl-line); }
.apl-galx__item:nth-child(5n+1) { grid-column: span 2; grid-row: span 2; }
.apl-galx__open { position: relative; display: block; width: 100%; height: 100%; padding: 0; border: 0; background: var(--apl-ink); cursor: zoom-in; }
.apl-galx__open img { width: 100%; height: 100%; object-fit: cover; transition: transform 800ms var(--ease-out); }
.apl-galx__open:hover img { transform: scale(1.05); }
.apl-galx__zoom { position: absolute; right: 10px; bottom: 10px; display: inline-flex; width: 36px; height: 36px; align-items: center; justify-content: center; background: var(--apl-accent); color: var(--apl-white); opacity: 0; transition: opacity var(--dur-fast); }
.apl-galx__zoom svg { width: 16px; height: 16px; }
.apl-galx__open:hover .apl-galx__zoom, .apl-galx__open:focus-visible .apl-galx__zoom { opacity: 1; }
.apl-galx__others { margin-top: clamp(48px, 6vw, 80px); padding-top: 32px; border-top: 1px solid var(--apl-ink); }
.apl-galx__others h2 { margin: 0 0 20px; font-size: 22px; }
@media (max-width: 1080px) { .apl-galx__albums { grid-template-columns: repeat(2, minmax(0, 1fr)); } .apl-galx__albums--compact { grid-template-columns: repeat(2, minmax(0, 1fr)); } .apl-galx__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: 180px; } }
@media (max-width: 640px) { .apl-galx__albums, .apl-galx__albums--compact { grid-template-columns: minmax(0, 1fr); } .apl-galx__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 140px; } .apl-galx__item:nth-child(5n+1) { grid-column: span 2; grid-row: span 1; } }

/* ==== Blog listesi: öne çıkan yazı + ızgara ============================== */
.apl-blogx { padding: var(--apl-pad-section) 0; background: var(--apl-white); }
.apl-blogx__featured { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); border: 1px solid var(--apl-ink); margin-bottom: 20px; color: var(--apl-ink); }
.apl-blogx__featured-media { display: block; min-height: 380px; background: var(--apl-ink); overflow: hidden; }
.apl-blogx__featured-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 900ms var(--ease-out); }
.apl-blogx__featured:hover .apl-blogx__featured-media img { transform: scale(1.04); }
.apl-blogx__featured-body { display: grid; align-content: center; gap: 14px; padding: clamp(28px, 4vw, 56px); }
.apl-blogx__featured-body h2 { margin: 0; font-size: clamp(22px, 2.4vw, 30px); line-height: 1.2; }
.apl-blogx__featured-body p { margin: 0; color: var(--apl-muted); font-size: 15.5px; line-height: 1.75; }
.apl-blogx__meta { display: flex; flex-wrap: wrap; gap: 14px; font-family: var(--font-mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--apl-muted); }
.apl-blogx__meta strong { color: var(--apl-accent); font-weight: 500; }
.apl-blogx__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.apl-blogx__card { display: flex; flex-direction: column; color: var(--apl-ink); border: 1px solid var(--apl-line); transition: border-color var(--dur-fast) var(--ease-sharp); }
.apl-blogx__card:hover, .apl-blogx__card:focus-visible { border-color: var(--apl-accent); }
.apl-blogx__card-media { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--apl-ink); }
.apl-blogx__card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 800ms var(--ease-out); }
.apl-blogx__card:hover .apl-blogx__card-media img { transform: scale(1.05); }
.apl-blogx__card-body { display: grid; gap: 10px; padding: 20px 22px 22px; }
.apl-blogx__card-body h3 { margin: 0; font-size: 19px; line-height: 1.3; }
.apl-blogx__card-body p { margin: 0; color: var(--apl-muted); font-size: 14.5px; line-height: 1.65; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.apl-blogx__more { display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; font-size: 13px; font-weight: 600; color: var(--apl-accent); }
.apl-blogx__more svg { width: 14px; height: 14px; }
@media (max-width: 1080px) { .apl-blogx__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 860px) { .apl-blogx__featured { grid-template-columns: minmax(0, 1fr); } .apl-blogx__featured-media { min-height: 240px; } }
@media (max-width: 640px) { .apl-blogx__grid { grid-template-columns: minmax(0, 1fr); } }

/* ==== Sayfa başlığı: tüm iç sayfalarda tek bileşen ========================
   Koyu antrasit blok, altında vurgu şerit. İsteğe bağlı: arka plan görseli
   (--image), geri bağlantısı, meta satırı ve dekoratif kayıt sayacı. */
.apl-page-head { position: relative; display: flex; align-items: flex-end; min-height: 320px; padding: clamp(56px, 7vw, 88px) 0 clamp(40px, 5vw, 60px); overflow: hidden; background: var(--apl-ink); color: var(--apl-white); border-bottom: 3px solid var(--apl-accent); }

.apl-page-head__overlay { position: absolute; inset: 0; background-image: linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,0) 60%), repeating-linear-gradient(-45deg, rgba(255,255,255,.05) 0 1px, transparent 1px 16px); }

.apl-page-head__inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 32px; }
.apl-page-head__content { max-width: 780px; }
.apl-page-head__back { display: flex; width: fit-content; align-items: center; gap: 8px; min-height: 44px; margin-bottom: 8px; font-family: var(--font-mono); font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,255,255,.62); text-decoration: none; transition: color var(--dur-fast) var(--ease-out); }
.apl-page-head__back:hover { color: var(--apl-white); }
.apl-page-head__back svg { width: 15px; height: 15px; color: var(--apl-accent); }
.apl-page-head__content .apl-kicker { color: rgba(255,255,255,.62); }
.apl-page-head__content .apl-kicker::before { background: var(--apl-accent); }
.apl-page-head__content h1 { margin: 16px 0 14px; font-family: var(--font-display); font-size: clamp(28px, 3vw, 40px); font-weight: 600; line-height: 1.15; letter-spacing: -.02em; color: var(--apl-white); overflow-wrap: anywhere; }
.apl-page-head__content p { margin: 0; max-width: 60ch; font-size: 15px; line-height: 1.7; color: rgba(255,255,255,.72); }
.apl-page-head__meta { display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; font-family: var(--font-mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.6); }
.apl-page-head__meta svg { width: 14px; height: 14px; color: var(--apl-accent); }
.apl-page-head__count span { display: block; font-family: var(--font-mono); font-size: clamp(36px, 4vw, 56px); font-weight: 500; line-height: .9; letter-spacing: -.04em; color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.34); }
@media (max-width: 860px) { .apl-page-head { min-height: 264px; } .apl-page-head__inner { grid-template-columns: minmax(0, 1fr); gap: 20px; } .apl-page-head__count { display: none; } }
@media (max-width: 640px) { .apl-page-head { min-height: 220px; } }

/* ==== Yasal / politika sayfaları (pages tablosu) ========================== */
.apl-legal { padding: var(--apl-pad-section) 0; background: var(--apl-white); }
.apl-legal__layout { display: grid; grid-template-columns: 272px minmax(0, 1fr); gap: 64px; align-items: start; }
.apl-legal__nav { position: sticky; top: 96px; border: 1px solid var(--apl-line); background: var(--apl-white); }
.apl-legal__nav-title { display: block; padding: 14px 18px; font-family: var(--font-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--apl-muted-soft); border-bottom: 1px solid var(--apl-line); }
.apl-legal__nav a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 50px; padding: 0 18px; font-size: 14px; font-weight: 600; color: var(--apl-ink); border-bottom: 1px solid var(--apl-line-soft); transition: color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out); }
.apl-legal__nav a:last-child { border-bottom: 0; }
.apl-legal__nav a svg { width: 14px; height: 14px; color: var(--apl-accent); opacity: 0; transition: opacity var(--dur-fast) var(--ease-out); }
.apl-legal__nav a:hover { color: var(--apl-accent); }
.apl-legal__nav a:hover svg, .apl-legal__nav a.is-active svg { opacity: 1; }
.apl-legal__nav a.is-active { color: var(--apl-accent); background: var(--apl-accent-light); }
.apl-legal__body { max-width: 760px; }

.apl-legal__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--apl-line); }
.apl-legal__foot strong { display: block; margin-bottom: 4px; font-family: var(--font-display); font-size: 16px; }
.apl-legal__foot p { margin: 0; font-size: 14px; color: var(--apl-muted); }
@media (max-width: 960px) { .apl-legal__layout { grid-template-columns: minmax(0, 1fr); gap: 36px; } .apl-legal__nav { position: static; } }

/* Politika tabloları dar ekranda kendi içinde kayar; sayfa yatay taşmaz. */
.apl-legal__body .apl-prose table { display: block; max-width: 100%; overflow-x: auto; }

/* ============================================================ ARAMA (/arama) */
.apl-search { padding: clamp(48px, 6vw, 80px) 0 var(--apl-pad-section); }
.apl-search__form { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr) auto; gap: 10px; align-items: end; padding: 20px; border: 1px solid var(--apl-line); background: var(--apl-white); }
.apl-search__field { display: grid; gap: 6px; min-width: 0; }
.apl-search__field span { font-family: var(--font-mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--apl-muted-soft); }
.apl-search__field input, .apl-search__field select { width: 100%; min-height: 48px; padding: 0 14px; border: 1px solid var(--apl-line); border-radius: var(--apl-radius-sm); background: var(--apl-white); color: var(--apl-ink); font: 500 14px/1.2 var(--font-body); }
.apl-search__field input:focus-visible, .apl-search__field select:focus-visible { outline: none; border-color: var(--apl-accent); box-shadow: 0 0 0 3px var(--apl-accent-light); }

.apl-search__count { display: flex; align-items: center; gap: 10px; margin: 40px 0 0; font-size: 15px; color: var(--apl-muted); }
.apl-search__count strong { color: var(--apl-ink); font-family: var(--font-mono); font-size: 18px; }
.apl-search__empty { margin-top: 40px; padding: 40px; border: 1px solid var(--apl-line); text-align: center; }
.apl-search__empty h2 { margin: 0 0 8px; font-family: var(--font-display); font-size: 26px; font-weight: 700; letter-spacing: -.03em; }
.apl-search__empty p { margin: 0 auto 20px; max-width: 52ch; color: var(--apl-muted); }
.apl-search__group { margin-top: 40px; }
.apl-search__group-title { display: flex; align-items: baseline; gap: 10px; margin: 0 0 16px; padding-bottom: 12px; border-bottom: 1px solid var(--apl-line); font-family: var(--font-display); font-size: 22px; font-weight: 700; letter-spacing: -.025em; }
.apl-search__group-title span { font-family: var(--font-mono); font-size: 12px; color: var(--apl-accent); }
.apl-search__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.apl-search__card { display: grid; grid-template-rows: auto 1fr; border: 1px solid var(--apl-line); background: var(--apl-white); color: var(--apl-ink); text-decoration: none; transition: border-color var(--dur-fast) var(--ease-out); }
.apl-search__card:hover, .apl-search__card:focus-visible { border-color: var(--apl-accent); }
.apl-search__thumb { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--apl-surface); }
.apl-search__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.apl-search__body { display: grid; gap: 8px; padding: 18px 20px 20px; }
.apl-search__body strong { font-family: var(--font-display); font-size: 17px; font-weight: 700; line-height: 1.3; letter-spacing: -.02em; }
.apl-search__text { font-size: 14px; line-height: 1.6; color: var(--apl-muted); }
.apl-search__open { display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; font-size: 13px; font-weight: 600; color: var(--apl-accent); }
.apl-search__open svg { width: 14px; height: 14px; }
@media (max-width: 960px) { .apl-search__form { grid-template-columns: repeat(2, minmax(0, 1fr)); } .apl-search__form .apl-btn { grid-column: span 2; } .apl-search__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .apl-search__form { grid-template-columns: minmax(0, 1fr); } .apl-search__form .apl-btn { grid-column: auto; } .apl-search__grid { grid-template-columns: minmax(0, 1fr); } }

/* ===================================================== KURUMSAL SAYFALAR (corporate.php) */
/* Hakkımızda ile aynı bölüm dili (apl-about4-*); burada yalnız kurumsal sayfalara özgü parçalar. */
.apl-vec-accent { color: var(--apl-accent); }
.apl-corp__figure-svg { display: block; width: 100%; height: auto; }
.apl-corp-figure { padding: 24px; background: var(--apl-surface); }
.apl-corp-subnav { border-bottom: 1px solid var(--apl-line); background: var(--apl-white); }
.apl-corp-subnav__inner { display: flex; gap: 4px; overflow-x: auto; scrollbar-width: none; }
.apl-corp-subnav__inner::-webkit-scrollbar { display: none; }
.apl-corp-subnav a { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 52px; padding: 0 16px; border-bottom: 2px solid transparent; font-size: 13.5px; font-weight: 600; color: var(--apl-muted); text-decoration: none; white-space: nowrap; transition: color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out); }
.apl-corp-subnav a:hover, .apl-corp-subnav a:focus-visible { color: var(--apl-ink); }
.apl-corp-subnav a.is-active { color: var(--apl-accent); border-bottom-color: var(--apl-accent); }
.apl-corp-intro p { margin: 0 0 14px; max-width: 58ch; color: var(--apl-muted); font-size: 16px; line-height: 1.75; }
.apl-corp-intro p:last-child { margin-bottom: 0; }
.apl-corp-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 28px; }
.apl-corp-card { display: flex; flex-direction: column; gap: 10px; padding: 28px; background: var(--apl-white); border: 1px solid var(--apl-line); transition: border-color var(--dur-fast) var(--ease-out); }
.apl-corp-card:hover { border-color: var(--apl-accent); }
.apl-corp-card h3 { margin: 0; font-family: var(--font-display); font-size: 19px; font-weight: 700; line-height: 1.25; letter-spacing: -.02em; }
.apl-corp-card .apl-prose p, .apl-corp-timeline__card .apl-prose p { margin: 0 0 10px; color: var(--apl-muted); font-size: 14.5px; line-height: 1.65; }
.apl-corp-card .apl-prose ul, .apl-corp-timeline__card .apl-prose ul { margin: 6px 0 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.apl-corp-card .apl-prose li, .apl-corp-timeline__card .apl-prose li { position: relative; padding-left: 22px; color: var(--apl-muted); font-size: 14.5px; line-height: 1.55; }
.apl-corp-card .apl-prose li::before, .apl-corp-timeline__card .apl-prose li::before { content: ""; position: absolute; left: 0; top: 7px; width: 9px; height: 9px; border: 1.75px solid var(--apl-accent); }
.apl-corp-card .apl-prose img { display: block; max-width: 160px; height: auto; border: 1px solid var(--apl-line); }
.apl-corp-timeline { list-style: none; margin: 28px 0 0; padding: 0; display: grid; gap: 0; }
.apl-corp-timeline__item { position: relative; display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 24px; padding: 0 0 32px; }
.apl-corp-timeline__item::before { content: ""; position: absolute; left: 47px; top: 34px; bottom: 0; width: 1px; background: var(--apl-accent-line); }
.apl-corp-timeline__item:last-child::before { display: none; }
.apl-corp-timeline__num { position: relative; z-index: 1; display: grid; place-items: center; width: 96px; height: 34px; font-family: var(--font-mono); font-size: 13px; letter-spacing: .14em; color: var(--apl-accent); background: var(--apl-surface); }
.apl-corp-timeline__num::after { content: ""; position: absolute; left: 41px; top: 11px; width: 12px; height: 12px; border-radius: 50%; background: var(--apl-white); border: 3px solid var(--apl-accent); }
.apl-corp-timeline__num { justify-items: start; padding-left: 62px; width: auto; }
.apl-corp-timeline__card { padding: 24px 28px; background: var(--apl-white); border: 1px solid var(--apl-line); }
.apl-corp-timeline__card h3 { margin: 0 0 8px; font-family: var(--font-display); font-size: 22px; font-weight: 700; letter-spacing: -.025em; }

.apl-corp-contact { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 40px; }
.apl-corp-contact__actions { display: flex; flex-wrap: wrap; gap: 12px; }
@media (max-width: 960px) { .apl-corp-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .apl-corp-contact { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 640px) { .apl-corp-cards { grid-template-columns: minmax(0, 1fr); } .apl-corp-timeline__item { grid-template-columns: minmax(0, 1fr); gap: 10px; } .apl-corp-timeline__item::before { display: none; } .apl-corp-timeline__num { padding-left: 0; } .apl-corp-timeline__num::after { display: none; } }

/* ===================================================== HAKKIMIZDA v4 (vektörel) */
.apl-about4-section { padding: var(--apl-pad-section) 0; }
.apl-about4-section--tight { padding-top: 0; }
.apl-about4-section--surface { background: var(--apl-surface); }
.apl-about4-section--ink { background: var(--apl-ink); color: var(--apl-white); }
.apl-about4-two { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 72px; align-items: center; }
.apl-about4-title { margin: 14px 0 18px; font-family: var(--font-display); font-size: clamp(22px, 2.4vw, 30px); font-weight: 600; line-height: 1.2; letter-spacing: -.02em; text-wrap: balance; }
.apl-about4-title strong { color: var(--apl-accent); font-weight: 700; }
.apl-about4-section--ink .apl-about4-title strong { color: rgba(255, 255, 255, .55); background-image: none; -webkit-text-fill-color: currentColor; }
.apl-about4-lead { margin: 0; max-width: 58ch; color: var(--apl-muted); font-size: 16px; line-height: 1.75; }
.apl-about4-section--ink .apl-about4-lead { color: rgba(255, 255, 255, .72); }

.apl-about4-figure { margin: 0; border: 1px solid var(--apl-line); overflow: hidden; color: var(--apl-ink); }
.apl-about4-figure svg { display: block; width: 100%; height: auto; }

.apl-about4-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--apl-line); border-bottom: 1px solid var(--apl-line); }
.apl-about4-stat { display: flex; flex-direction: column; gap: 6px; padding: 32px 28px; border-right: 1px solid var(--apl-line); }
.apl-about4-stat:last-child { border-right: 0; }
.apl-about4-stat strong { font-family: var(--font-mono); font-size: clamp(24px, 2.4vw, 32px); font-weight: 500; line-height: 1; letter-spacing: -.04em; color: var(--apl-ink); }
.apl-about4-stat span { font-size: 13px; color: var(--apl-muted); }

.apl-about4-card { display: flex; flex-direction: column; gap: 10px; padding: 24px; background: var(--apl-white); border: 1px solid var(--apl-line); color: var(--apl-ink); text-decoration: none; transition: border-color var(--dur-fast) var(--ease-out); }
.apl-about4-card:hover, .apl-about4-card:focus-visible { border-color: var(--apl-accent); }
.apl-about4-card svg { width: 24px; height: 24px; color: var(--apl-accent); }
.apl-about4-card time, .apl-about4-card .apl-about4-card__num { font-family: var(--font-mono); font-size: 11px; letter-spacing: .14em; color: var(--apl-accent); }
.apl-about4-card h3 { margin: 0; font-family: var(--font-display); font-size: 18px; font-weight: 700; line-height: 1.25; letter-spacing: -.02em; }
.apl-about4-card p { margin: 0; color: var(--apl-muted); font-size: 14.5px; line-height: 1.6; }
.apl-about4-values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 40px; border-top: 1px solid var(--apl-line-dark); }
.apl-about4-value { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 20px; padding: 32px 32px 32px 0; border-bottom: 1px solid var(--apl-line-dark); }
.apl-about4-value span { font-family: var(--font-mono); font-size: 13px; letter-spacing: .14em; color: var(--apl-accent); }
.apl-about4-value h3 { margin: 0 0 6px; font-family: var(--font-display); font-size: 20px; font-weight: 700; letter-spacing: -.025em; }
.apl-about4-value p { margin: 0; color: rgba(255, 255, 255, .7); font-size: 14.5px; }
.apl-about4-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 32px; }
.apl-about4-cta { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 40px; padding: 48px; border: 1px solid var(--apl-line); }
.apl-about4-cta h3 { margin: 6px 0 0; font-family: var(--font-display); font-size: clamp(22px, 2.6vw, 28px); font-weight: 700; letter-spacing: -.03em; }
.apl-about4-cta__actions { display: flex; flex-wrap: wrap; gap: 12px; }

@media (max-width: 860px) { .apl-about4-two { grid-template-columns: minmax(0, 1fr); gap: 36px; } .apl-about4-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } .apl-about4-stat:nth-child(2) { border-right: 0; } .apl-about4-stat:nth-child(-n+2) { border-bottom: 1px solid var(--apl-line); } .apl-about4-values { grid-template-columns: minmax(0, 1fr); } .apl-about4-links { grid-template-columns: minmax(0, 1fr); } .apl-about4-cta { grid-template-columns: minmax(0, 1fr); } }

/* ==========================================================================
   Şablon ekleri — hizmet detayı madde listesi, referans sayfası, Hakkımızda gövdesi
   ========================================================================== */
ul.apl-dtl-features { margin: 0; padding: 0; list-style: none; }
.apl-refs__grid--page { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.apl-ref--labelled { flex-direction: column; gap: 14px; min-height: 176px; }
.apl-ref--labelled .apl-ref__name { font-size: 14px; color: var(--apl-muted); text-align: center; }
.apl-about-body { max-width: 78ch; }
@media (max-width: 991px) {
  .apl-refs__grid--page { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
  .apl-refs__grid--page { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ==== 05-hareket.css ==================================================== */
/* ============================================================================
 * 05 · HAREKET — reveal, sayfa geçişi, preloader, marquee ve imleç katmanı.
 * prefers-reduced-motion altında tüm hareket kapanır.
 * ========================================================================= */

/* --------------------------------------------------------------------------
   01. REVEAL — bölüm/kart/görsel giriş animasyonu
   -------------------------------------------------------------------------- */

/* Görünür varsayılan: JS yoksa .apl-reveal hiçbir şey yapmaz, içerik açıktır. */
.apl-reveal {
  /* Reveal sırasında alt öğe taşmasın diye sadece kompozit ipucu bırakıyoruz. */
  backface-visibility: hidden;
}

/* Gizleme YALNIZCA motion sınıfı varken devreye girer. */
/* 2026-10-03: kaydırmada beliren (fade-up) efekt kapatıldı — hazır tema hissi veriyordu.
   Sınıf işaretleri görünümlerde kalır; içerik doğrudan görünür. */
html.apl-motion .apl-reveal {
  opacity: 1;
  transform: none;
}

/* Kademe: 80ms adım. 60-90ms aralığı sıra hissini verir, beklemeye dönüşmez. */
html.apl-motion .apl-reveal--delay-1 { transition-delay: 80ms; }
html.apl-motion .apl-reveal--delay-2 { transition-delay: 160ms; }
html.apl-motion .apl-reveal--delay-3 { transition-delay: 240ms; }
html.apl-motion .apl-reveal--delay-4 { transition-delay: 320ms; }

/* Tetiklenmiş son durum: tüm varyantlar buraya iner. */
html.apl-motion .apl-reveal.is-visible {
  opacity: 1;
  transform: none;
  clip-path: inset(0 0 0 0);
  will-change: auto;
}

/* Küçük ekranda mesafeyi kısalt — dar viewport'ta uzun kayma yorucu olur. */
@media (max-width: 640px) {
  html.apl-motion .apl-reveal { transform: none; }
  
  
  html.apl-motion .apl-reveal--delay-1 { transition-delay: 50ms; }
  html.apl-motion .apl-reveal--delay-2 { transition-delay: 100ms; }
  html.apl-motion .apl-reveal--delay-3 { transition-delay: 150ms; }
  html.apl-motion .apl-reveal--delay-4 { transition-delay: 200ms; }
}

/* --------------------------------------------------------------------------
   02. SPLIT — satır/kelime bölerek başlık girişi
   JS başlığı .apl-split__line > .apl-split__word yapısına böler.
   Bölünmemiş haliyle de okunabilir kalması için taban kurallar nötrdür.
   -------------------------------------------------------------------------- */

.apl-split {
  display: block;
}

/* --------------------------------------------------------------------------
   03. SAYFA GEÇİŞİ — iki panelli wipe (vurgu önde, antrasit arkada)
   -------------------------------------------------------------------------- */

.apl-page-transition {
  position: fixed;
  inset: 0;
  z-index: var(--z-modal);
  pointer-events: none;
  /* Perde varsayılan olarak yoktur; sadece durum sınıfıyla görünür. */
  visibility: hidden;
}

/* Ayrılış ve giriş fazlarında perde tıklamayı yutar (çift tık engeli). */
.apl-page-transition.is-leaving,
.apl-page-transition.is-entering {
  visibility: visible;
  pointer-events: auto;
}

.apl-page-transition__panel {
  position: absolute;
  inset: 0;
  /* Başlangıçta ekran dışında: alt kenardan kırpılmış. */
  clip-path: inset(100% 0 0 0);
  will-change: clip-path;
}

.apl-page-transition__panel--red {
  background: var(--apl-accent);
}

.apl-page-transition__panel--ink {
  background: var(--apl-ink);
}

/* Ayrılış: vurgu önce kapatır, antrasit 90ms sonra üstüne biner. */
.apl-page-transition.is-leaving .apl-page-transition__panel--red {
  animation: apl-curtain-in var(--dur-slow) var(--ease-sharp) both;
}

.apl-page-transition.is-leaving .apl-page-transition__panel--ink {
  animation: apl-curtain-in var(--dur-slow) var(--ease-sharp) 90ms both;
}

/* Giriş: ters sıra — antrasit önce sıyrılır, vurgu bir ince şerit gibi kalır. */
.apl-page-transition.is-entering .apl-page-transition__panel--ink {
  animation: apl-curtain-out var(--dur-slow) var(--ease-sharp) both;
}

.apl-page-transition.is-entering .apl-page-transition__panel--red {
  animation: apl-curtain-out var(--dur-slow) var(--ease-sharp) 90ms both;
}

/* View Transitions API varsa perdeye gerek kalmaz; aynı keskin wipe'ı
   tarayıcı kendi anlık görüntüsüyle yapar. Token yerine sabit değer
   kullanıyoruz: bu pseudo'lar belge ağacının dışında yaşar. */
@supports (view-transition-name: none) {
  ::view-transition-old(root) {
    animation: apl-vt-out 300ms cubic-bezier(.77, 0, .18, 1) both;
  }

  ::view-transition-new(root) {
    animation: apl-vt-in 420ms cubic-bezier(.77, 0, .18, 1) both;
  }
}

/* --------------------------------------------------------------------------
   04. PRELOADER — yapı Bölüm 02'de; burada YALNIZCA hareket durumları
   Antrasit tam ekran, ortada vurgu çizgi soldan sağa dolar,
   biterken perde yukarı sıyrılır.
   -------------------------------------------------------------------------- */

html.apl-motion .apl-preloader {
  clip-path: inset(0 0 0 0);
  transition:
    clip-path var(--dur-slow) var(--ease-sharp),
    visibility 0s linear var(--dur-slow);
  will-change: clip-path;
}

html.apl-motion .apl-preloader.is-hidden {
  clip-path: inset(0 0 100% 0);
  visibility: hidden;
  pointer-events: none;
}

/* Çizgi dolumu — sadece animation özelliği; ölçü/renk Bölüm 02'nin işi. */
html.apl-motion .apl-preloader:not(.is-hidden) .apl-preloader__line::after {
  animation: apl-preloader-fill 1600ms var(--ease-out) both;
}

/* İçerik perdeyle birlikte kalkmasın; önce sönsün, sonra perde sıyrılsın. */
html.apl-motion .apl-preloader__inner {
  transition: opacity var(--dur-fast) linear, transform var(--dur-base) var(--ease-sharp);
}

html.apl-motion .apl-preloader.is-hidden .apl-preloader__inner {
  opacity: 0;
  transform: translate3d(0, -8px, 0);
}

/* --------------------------------------------------------------------------
   05. SAYAÇ — JS sayıyı basar, CSS yalnızca oturma hareketini verir
   -------------------------------------------------------------------------- */

.apl-counter {
  display: inline-block;
}

/* --------------------------------------------------------------------------
   08. PROGRESS — sayfa üstü okuma/yüklenme çubuğu
   -------------------------------------------------------------------------- */

.apl-progress {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  z-index: var(--z-fixed);
  background: var(--apl-line-soft);
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--dur-fast) linear;
}

.apl-progress.is-active {
  opacity: 1;
}

.apl-progress__bar {
  display: block;
  height: 100%;
  width: 100%;
  background: var(--apl-accent);
  transform: scaleX(0);
  transform-origin: 0 50%;
  transition: transform var(--dur-fast) linear;
}

/* --------------------------------------------------------------------------
   11. KEYFRAMES
   -------------------------------------------------------------------------- */

/* Perde iner: alttan yukarı doğru ekranı kapatır. */
@keyframes apl-curtain-in {
  from { clip-path: inset(100% 0 0 0); }
  to   { clip-path: inset(0 0 0 0); }
}

/* Perde sıyrılır: üstten yukarı çıkar. */
@keyframes apl-curtain-out {
  from { clip-path: inset(0 0 0 0); }
  to   { clip-path: inset(0 0 100% 0); }
}

/* Preloader çizgisi: soldan sağa dolar, sonda hız keser. */
@keyframes apl-preloader-fill {
  from { transform-origin: 0 50%; transform: scaleX(0); }
  62%  { transform-origin: 0 50%; transform: scaleX(0.72); }
  to   { transform-origin: 0 50%; transform: scaleX(1); }
}

/* View Transitions: eski sayfa yukarı sıyrılır, yeni sayfa alttan girer. */
@keyframes apl-vt-out {
  from { clip-path: inset(0 0 0 0); }
  to   { clip-path: inset(0 0 100% 0); }
}

@keyframes apl-vt-in {
  from { clip-path: inset(100% 0 0 0); }
  to   { clip-path: inset(0 0 0 0); }
}

/* --------------------------------------------------------------------------
   12. HAREKET AZALTMA — dosyanın sonu, kapsamlı ve kesin
   Kullanıcı sistem düzeyinde hareket istemiyorsa hiçbir şey oynamaz;
   ama HİÇBİR içerik gizli kalmaz.
   -------------------------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
  /* Reveal ve split: doğrudan son duruma sabitlenir. */
  html.apl-motion .apl-reveal,
html.apl-motion .apl-reveal.is-visible {
    opacity: 1;
    transform: none;
    clip-path: none;
    transition-delay: 0s;
  }

  html.apl-motion .apl-reveal--delay-1,
html.apl-motion .apl-reveal--delay-2,
html.apl-motion .apl-reveal--delay-3,
html.apl-motion .apl-reveal--delay-4 {
    transition-delay: 0s;
  }

  /* Perde ve preloader: anında geçer, ekranda takılı kalmaz. */
  html.apl-motion .apl-preloader,
html.apl-motion .apl-preloader__inner,
.apl-page-transition__panel,
.apl-progress__bar {
    transition: none;
    animation: none;
  }

  html.apl-motion .apl-preloader.is-hidden {
    clip-path: none;
    opacity: 0;
  }

  .apl-page-transition.is-leaving .apl-page-transition__panel--red,
.apl-page-transition.is-leaving .apl-page-transition__panel--ink,
.apl-page-transition.is-entering .apl-page-transition__panel--red,
.apl-page-transition.is-entering .apl-page-transition__panel--ink {
    animation: none;
    clip-path: none;
    opacity: 0;
  }

  

  /* Sonsuz döngüler tamamen kapanır. */
  html.apl-motion .apl-preloader:not(.is-hidden) .apl-preloader__line::after {
    animation: none;
  }

  /* İskelet parlaması tamamen kalkar; sabit gri zemin yeterlidir. */
  

  ::view-transition-old(root),
::view-transition-new(root) {
    animation: none;
  }
}

/* ==========================================================================
   JS KANCALARI — Bölüm 06 bu sözleşmeye dayanır
   --------------------------------------------------------------------------
   html.apl-motion
     JS'in ilk işi: <html> üzerine eklenir. Yoksa hiçbir reveal gizlenmez.
     matchMedia('(prefers-reduced-motion: reduce)') doğruysa yine EKLENİR
     (CSS zaten hareketi kapatır),
ama observer'lar kurulmayabilir.

   .apl-reveal → .is-visible
     IntersectionObserver (threshold ~0.15) görünürlükte ekler,
animationend
     (en geç 520ms) sonrasında navigasyon yapılır.
     Yeni sayfa açılışında: .is-entering eklenir,
bitince iki sınıf da
     temizlenir. View Transitions API destekleniyorsa bu perde hiç
     kullanılmaz,
document.startViewTransition() tercih edilir.

   .apl-counter → .is-counting → .is-counted
     Görünürlükte .is-counting eklenir,
pointerdown'da .is-down,
yarı genişlik kadar kayar. */
@keyframes apl-marquee-left { from { transform: translate3d(0, 0, 0); } to { transform: translate3d(-50%, 0, 0); } }

/* Mobilde reveal mesafesi büyür; kartlar sırayla gelir. */
@media (max-width: 640px) {
  html.apl-motion .apl-reveal { transform: translate3d(0, 40px, 0); }
  html.apl-motion .apl-reveal--delay-3 { transition-delay: 120ms; }
  html.apl-motion .apl-reveal--delay-4 { transition-delay: 160ms; }
}

/* Sürüklenebilir şeritler (fare + dokunmatik) */
.apl-areas__viewport.is-dragging { cursor: grabbing; }
.apl-areas__viewport.is-dragging,
.apl-areas__viewport img { user-select: none; -webkit-user-drag: none; }
html.is-drag-scrolling,
html.is-drag-scrolling * { cursor: grabbing !important; user-select: none !important; }

/* ==== 06-atlas.css ====================================================== */
/* ============================================================================
 * 06 · ATLAS — anasayfa (parsel sorgu konsepti, 2026-10-03).
 * Harita paftası metaforu: koyu lacivert zemin, logo mavisi yalnız işaret rengi,
 * mono koordinat etiketleri, ince pafta çizgileri. Canlı öğeler (arazi modeli,
 * eş yükselti eğrileri, poligon hattı) assets/aplan-atlas.js tarafından çizilir;
 * JS yoksa bütün içerik yine okunur.
 * Seçiciler .atl- önekiyle ayrıktır; önceki parçaları ezmez.
 * ========================================================================= */

.aplan-site {
  --atl-ink: #07141f;          /* pafta zemini (en koyu) */
  --atl-ink-2: #0c1e2c;        /* koyu yüzey */
  --atl-ink-3: #143046;        /* koyu zeminde kenar / ayırıcı yüzey */
  --atl-signal: #1cb6e2;       /* logo mavisi — işaret rengi */
  --atl-signal-ink: #ffffff;   /* işaret zemini üstündeki metin (kullanıcı tercihi: beyaz) */
  --atl-signal-deep: #0a7090;  /* beyaz zeminde mavi metin (4.8:1) */
  --atl-paper: #f4f6f8;        /* açık pafta zemini, soğuk gri */
  --atl-text: #0d1b26;
  --atl-muted: #4a5a67;        /* beyaz üstünde 7:1 */
  --atl-muted-dark: #9db2c2;   /* koyu zemin üstünde 8:1 */
  --atl-line: rgba(13, 27, 38, .12);
  --atl-line-dark: rgba(157, 178, 194, .16);
  --atl-grid: rgba(28, 182, 226, .07);
}

.atl-mono {
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  letter-spacing: .02em;
}

/* Kicker — mono etiket, önünde koordinat işareti (+). */
.atl-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--atl-signal);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .14em;
  line-height: 1.3;
}
.atl-kicker::before {
  content: "";
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
  background:
    linear-gradient(currentColor, currentColor) center / 12px 1px no-repeat,
    linear-gradient(currentColor, currentColor) center / 1px 12px no-repeat;
}

/* ------------------------------------------------------------ Butonlar */
.atl-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 52px;
  padding: 0 24px;
  border: 1px solid transparent;
  border-radius: 2px;
  font-family: var(--font-body);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transition: background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);
}
.atl-btn svg { width: 16px; height: 16px; transition: transform var(--dur-base) var(--ease-out); }
.atl-btn:hover svg,
.atl-btn:focus-visible svg { transform: translate(2px, -2px); }
.atl-btn--signal { background: var(--atl-signal); border-color: var(--atl-signal); color: var(--atl-signal-ink); }
.atl-btn--signal:hover,
.atl-btn--signal:focus-visible { background: var(--atl-text); border-color: var(--atl-text); color: #ffffff; }
.atl-btn--line { background: rgba(255, 255, 255, .6); border-color: rgba(13, 27, 38, .28); color: var(--atl-text); }
.atl-btn--line:hover,
.atl-btn--line:focus-visible { background: var(--atl-text); border-color: var(--atl-text); color: #ffffff; }
.atl-btn:focus-visible { outline: 2px solid var(--atl-signal); outline-offset: 3px; }

/* Panel butonlarının vurgu türü: marka mavisi üstünde beyaz yazı. */
.aplan-site .apl-btn--accent,
.aplan-site .apl-navbar__cta { color: var(--atl-signal-ink); }
.aplan-site .apl-btn--accent:hover,
.aplan-site .apl-btn--accent:focus-visible,
.aplan-site .apl-navbar__cta:hover,
.aplan-site .apl-navbar__cta:focus-visible { color: #ffffff; }

/* ================================================================= HERO
   Sol: başlık + parsel sorgu formu. Sağ: saha fotoğrafı ekran kenarına kadar.
   Süs öğesi yok; hiyerarşi tipografi, boşluk ve tek vurgu rengiyle kurulur. */
.atl-hero {
  --atl-edge: max(32px, calc((100vw - 1320px) / 2));
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  grid-template-areas: "copy media" "stats media";
  grid-template-rows: 1fr auto;
  min-height: min(calc(100svh - 96px), 820px);
  background: #ffffff;
  border-bottom: 1px solid var(--atl-line);
}
.atl-hero__copy { grid-area: copy; align-self: center; padding: 56px 64px 48px var(--atl-edge); }
.atl-hero .apl-kicker { color: var(--atl-signal-deep); }
.atl-hero__title {
  max-width: 16ch;
  margin: 16px 0 0;
  color: var(--atl-text);
  font-size: clamp(30px, 3.2vw, 46px);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -.02em;
}
.atl-hero__lede { max-width: 48ch; margin: 16px 0 0; color: var(--atl-muted); font-size: 16px; line-height: 1.6; }

.atl-hero__media { grid-area: media; position: relative; margin: 0; min-height: 360px; background: #dfe7ec; }
.atl-hero__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.atl-hero__media figcaption {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 8px 12px;
  background: #ffffff;
  color: var(--atl-text);
  font-size: 12px;
  letter-spacing: .02em;
}

.atl-hero__stats { grid-area: stats; display: flex; margin: 0; padding: 0 64px 0 var(--atl-edge); border-top: 1px solid var(--atl-line); }
.atl-hero__stats > div { padding: 16px 32px 20px 0; }
.atl-hero__stats > div + div { padding-left: 32px; border-left: 1px solid var(--atl-line); }
.atl-hero__stats dt { color: var(--atl-muted); font-size: 13px; }
.atl-hero__stats dd { margin: 4px 0 0; color: var(--atl-text); font-family: var(--font-mono); font-size: 24px; font-weight: 500; font-variant-numeric: tabular-nums; }

/* Parsel sorgu formu */
.atl-query { max-width: 560px; margin-top: 32px; padding: 24px; background: var(--atl-paper); border: 1px solid var(--atl-line); }
.atl-query__title { margin: 0 0 16px; color: var(--atl-text); font-size: 15px; font-weight: 600; }
.atl-query__grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
.atl-query__field { display: grid; gap: 6px; margin: 0; }
.atl-query__field--service { grid-column: 1 / -1; }
.atl-query__field span { color: var(--atl-muted); font-size: 12px; font-weight: 500; }
.atl-query__field input,
.atl-query__field select {
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  background: #ffffff;
  border: 1px solid rgba(13, 27, 38, .22);
  border-radius: 2px;
  color: var(--atl-text);
  font: inherit;
  font-size: 15px;
}
.atl-query__field input:focus,
.atl-query__field select:focus { outline: 2px solid var(--atl-signal); outline-offset: 0; border-color: var(--atl-signal); }
.atl-query__foot { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-top: 16px; }
.atl-query__foot .apl-btn { min-height: 48px; }
.atl-query__call { color: var(--atl-muted); font-size: 14px; text-decoration: none; }
.atl-query__call b { color: var(--atl-text); font-family: var(--font-mono); font-weight: 500; }
.atl-query__call:hover b,
.atl-query__call:focus-visible b { color: var(--atl-signal-deep); }
.atl-query__hint { margin: 12px 0 0; color: var(--atl-muted); font-size: 12px; }

/* ==================================================== HİZMETLER: KATEGORİ SÜTUNLARI
   Düz metin sütunları; hiyerarşi yalnız ağırlık ve renkle. */
.atl-cats { padding-block: var(--apl-pad-section); background: #ffffff; }
.atl-cats__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 12px 32px; margin-bottom: 40px; }
.atl-cats__head h2 { margin: 0; color: var(--atl-text); font-size: clamp(22px, 2.2vw, 30px); }
.atl-cats__all { color: var(--atl-signal-deep); font-size: 15px; font-weight: 500; text-decoration: underline; text-underline-offset: 4px; }
.atl-cats__all:hover,
.atl-cats__all:focus-visible { color: var(--atl-text); }
.atl-cats__grid { display: grid; grid-template-columns: repeat(var(--atl-cols, 4), minmax(0, 1fr)); gap: 40px 32px; }
.atl-cats__col h3 { margin: 0 0 16px; padding-bottom: 12px; border-bottom: 1px solid var(--atl-text); color: var(--atl-text); font-size: 16px; font-weight: 600; letter-spacing: 0; }
.atl-cats__col ul { margin: 0; padding: 0; list-style: none; }
.atl-cats__col li + li { margin-top: 4px; }
.atl-cats__col a { display: inline-block; padding: 6px 0; color: var(--atl-muted); font-size: 15px; line-height: 1.4; text-decoration: none; }
.atl-cats__col a:hover,
.atl-cats__col a:focus-visible { color: var(--atl-signal-deep); text-decoration: underline; text-underline-offset: 3px; }

/* =========================================================== REFERANSLAR */
.atl-refs { padding-block: var(--apl-pad-section); background: var(--atl-paper); }
.atl-refs__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--atl-line);
  border-left: 1px solid var(--atl-line);
}
.atl-refs__grid > li { border-right: 1px solid var(--atl-line); border-bottom: 1px solid var(--atl-line); }
.atl-ref {
  position: relative;
  display: grid;
  place-items: center;
  height: 144px;
  padding: 24px 32px;
  background: #ffffff;
  color: var(--atl-text);
  text-decoration: none;
  transition: background-color var(--dur-base) var(--ease-out);
}
.atl-ref__logo { max-width: 100%; max-height: 64px; width: auto; height: auto; object-fit: contain; filter: grayscale(1) contrast(1.05); opacity: .72; transition: filter var(--dur-base), opacity var(--dur-base); }
.atl-ref__name { font-weight: 600; text-align: center; }
.atl-ref::after {
  content: "";
  position: absolute;
  inset: -1px;
  border: 1px solid var(--atl-signal);
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--dur-fast);
}
.atl-ref:hover .atl-ref__logo,
.atl-ref:focus-visible .atl-ref__logo { filter: none; opacity: 1; }
.atl-ref:hover::after,
.atl-ref:focus-visible::after { opacity: 1; }

/* ======================================================= POLİGON HATTI */
.atl-traverse {
  padding-block: var(--apl-pad-section);
  background:
    linear-gradient(var(--atl-grid) 1px, transparent 1px) 0 0 / 64px 64px,
    linear-gradient(90deg, var(--atl-grid) 1px, transparent 1px) 0 0 / 64px 64px,
    #ffffff;
}
.atl-traverse__head { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 24px; margin-bottom: 48px; }
.atl-traverse__head .apl-head { margin-bottom: 0; grid-template-columns: minmax(0, 1fr); }
.atl-traverse__head .apl-section-action { margin-top: 0; }
.atl-traverse__track { position: relative; }
.atl-traverse__line { position: absolute; top: 0; left: 0; width: 100%; height: 100px; overflow: visible; fill: none; }
.atl-traverse__base { stroke: var(--atl-line); stroke-width: 1; stroke-dasharray: 4 6; vector-effect: non-scaling-stroke; }
.atl-traverse__draw { stroke: var(--atl-signal); stroke-width: 2; vector-effect: non-scaling-stroke; stroke-dasharray: 1; stroke-dashoffset: var(--atl-draw, 0); }
html.apl-motion .atl-traverse__draw { stroke-dashoffset: var(--atl-draw, 1); }
.atl-traverse__list {
  display: grid;
  grid-template-columns: repeat(var(--atl-stations, 4), minmax(0, 1fr));
  gap: 32px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.atl-station { position: relative; padding-top: 136px; text-align: center; }
.atl-station__mark {
  position: absolute;
  top: calc(var(--atl-y, 50px) - 14px);
  left: 50%;
  width: 28px;
  height: 28px;
  margin-left: -14px;
  color: var(--atl-text);
  transition: color var(--dur-base), transform var(--dur-slow) var(--ease-out);
}
.atl-station__mark svg { width: 100%; height: 100%; fill: #ffffff; stroke: currentColor; stroke-width: 1.5; }
.atl-station__mark circle { fill: currentColor; stroke: none; }
.atl-station.is-reached .atl-station__mark { color: var(--atl-signal-deep); transform: scale(1.15); }
.atl-station__num { display: block; color: var(--atl-signal-deep); font-size: 12px; }
.atl-station h3 { margin: 8px 0 0; color: var(--atl-text); font-size: 17px; font-weight: 600; line-height: 1.3; letter-spacing: -.01em; }
.atl-station h3 a { color: inherit; text-decoration: none; }
.atl-station p { max-width: 36ch; margin: 8px auto 0; color: var(--atl-muted); font-size: 15px; line-height: 1.6; }

/* ============================================================ DUYARLILIK */
@media (max-width: 1080px) {
  .atl-refs__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .atl-cats__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
  .atl-hero { grid-template-columns: minmax(0, 1fr); grid-template-areas: "copy" "media" "stats"; grid-template-rows: auto; min-height: 0; }
  .atl-hero { --atl-edge: 24px; }
  .atl-hero__copy { padding: 40px var(--atl-edge) 40px; }
  .atl-hero__media { min-height: 0; aspect-ratio: 16 / 10; }
  .atl-hero__stats { padding: 0 var(--atl-edge); }
}
@media (max-width: 860px) {
  .atl-traverse__head { grid-template-columns: minmax(0, 1fr); }
  .atl-traverse__line { display: none; }
  .atl-traverse__list { grid-template-columns: minmax(0, 1fr); gap: 0; border-left: 1px dashed var(--atl-line); margin-left: 14px; }
  .atl-station { padding: 0 0 32px 32px; text-align: left; }
  .atl-station__mark { top: 0; left: -14px; margin-left: 0; }
  .atl-station p { margin-left: 0; }
}
@media (max-width: 640px) {
  .atl-hero { --atl-edge: 16px; }
  .atl-query { padding: 16px; }
  .atl-query__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .atl-query__field--district { grid-column: 1 / -1; }
  .atl-query__foot .apl-btn { flex: 1 1 100%; }
  .atl-hero__stats > div { padding-right: 16px; }
  .atl-hero__stats > div + div { padding-left: 16px; }
  .atl-hero__stats dd { font-size: 20px; }
  .atl-refs__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .atl-cats__grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .atl-ref { height: 112px; padding: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  html.apl-motion .atl-traverse__draw { stroke-dashoffset: 0; }
}

/* ======================================================= HAKKIMIZDA + EKİP AĞACI
   Solda bölüm başlığı ve açıklama, sağda kök (kurucu) ve dallar (ekip) olarak
   çizilmiş bir organizasyon ağacı. Bağlantılar 1px pafta çizgisi. */
.atl-about { padding-block: var(--apl-pad-section); background: #ffffff; border-top: 1px solid var(--atl-line); }
.atl-about__grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: start; gap: 48px 72px; }
.atl-about .apl-head { grid-template-columns: minmax(0, 1fr); margin-bottom: 0; }
.atl-about .apl-kicker { color: var(--atl-signal-deep); }
.atl-about .apl-head__desc { margin-top: 4px; }
.atl-about__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.atl-about__points { margin: 24px 0 0; border-top: 1px solid var(--atl-line); }
.atl-about__points > div { display: grid; grid-template-columns: minmax(0, 18ch) minmax(0, 1fr); gap: 4px 24px; padding: 12px 0; border-bottom: 1px solid var(--atl-line); }
.atl-about__points dt { color: var(--atl-text); font-size: 14px; font-weight: 600; }
.atl-about__points dd { margin: 0; color: var(--atl-muted); font-size: 14px; line-height: 1.55; }

.atl-tree { --atl-gap: 28px; display: grid; justify-items: center; }
.atl-tree__node {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: 240px;
  padding: 10px 14px 10px 10px;
  background: #ffffff;
  border: 1px solid var(--atl-line);
  border-radius: 2px;
  transition: border-color var(--dur-fast) var(--ease-out);
}
.atl-tree__node:hover { border-color: var(--atl-signal); }
.atl-tree__node img { flex: 0 0 48px; width: 48px; height: 48px; object-fit: cover; border-radius: 2px; filter: grayscale(1); }
.atl-tree__node span { display: grid; gap: 3px; min-width: 0; }
.atl-tree__node strong { color: var(--atl-text); font-size: 14px; font-weight: 600; line-height: 1.3; }
.atl-tree__node em { color: var(--atl-muted); font-family: var(--font-mono); font-size: 10.5px; font-style: normal; letter-spacing: .08em; text-transform: uppercase; }
.atl-tree__node--root { position: relative; border-color: var(--atl-signal); }
.atl-tree__node--root::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: 1px;
  height: var(--atl-gap);
  background: var(--atl-signal);
}
.atl-tree__branches {
  position: relative;
  display: grid;
  grid-template-columns: repeat(var(--atl-branches), minmax(0, 1fr));
  gap: 12px;
  width: 100%;
  margin: var(--atl-gap) 0 0;
  padding: var(--atl-gap) 0 0;
  list-style: none;
}
/* Yatay bağlantı: ilk dalın ortasından son dalın ortasına. */
.atl-tree__branches::before {
  content: "";
  position: absolute;
  top: 0;
  left: calc(50% / var(--atl-branches));
  right: calc(50% / var(--atl-branches));
  height: 1px;
  background: var(--atl-signal);
}
.atl-tree__branches > li { position: relative; display: flex; justify-content: center; }
.atl-tree__branches > li::before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  width: 1px;
  height: var(--atl-gap);
  background: var(--atl-signal);
}
.atl-tree__branches .atl-tree__node { flex-direction: column; align-items: flex-start; gap: 10px; max-width: none; padding: 10px; }
.atl-tree__branches .atl-tree__node img { width: 100%; height: auto; aspect-ratio: 1; flex-basis: auto; }

@media (max-width: 991px) {
  .atl-about__grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 575px) {
  /* Dar ekranda ağaç dikey liste olur: dallar kökün altında, soldan çizgiyle bağlı. */
  .atl-tree { justify-items: stretch; }
  .atl-about__points > div { grid-template-columns: minmax(0, 1fr); }
  .atl-tree__node--root { max-width: none; }
  .atl-tree__node--root::after { left: 24px; }
  .atl-tree__branches { grid-template-columns: minmax(0, 1fr); gap: 10px; margin-top: 0; padding: 14px 0 0 24px; }
  .atl-tree__branches::before { top: 0; bottom: 30px; left: 24px; right: auto; width: 1px; height: auto; }
  .atl-tree__branches > li { justify-content: stretch; padding-left: 18px; }
  .atl-tree__branches > li::before { bottom: auto; top: 50%; left: 0; width: 18px; height: 1px; }
  .atl-tree__branches .atl-tree__node { flex-direction: row; align-items: center; }
  .atl-tree__branches .atl-tree__node img { width: 48px; height: 48px; flex: 0 0 48px; }
}

/* ==== 07-v4-temel.css =================================================== */
/* ============================================================================
 * 07 · V4 TEMEL — renkli kategori konsepti (2026-10-04, referans
 * docs/tasarim/gpt-konsept/yon2/v4.png). Yalnız token + ortak ilkeller.
 * Anasayfa bileşenleri 08-v4-anasayfa.css, kabuk + kurumsal iç sayfalar
 * 09-v4-kabuk.css, diğer iç sayfalar 10-v4-ic.css içindedir.
 * Kategori sırası her yerde aynı: mavi (Harita) · sarı (Kadastro) ·
 * turuncu (İmar) · yeşil (Şantiye). Sarı zeminde koyu yazı, diğerlerinde beyaz.
 * ========================================================================= */

:root {
  --v4-blue: #1cb6e2;        /* logo mavisi, Harita */
  --v4-blue-deep: #0a7090;   /* beyaz zeminde mavi metin (4.8:1) */
  --v4-blue-strong: #0b95c7; /* mavi zeminde hover */
  --v4-yellow: #f9d25c;      /* Kadastro — üstünde --v4-ink */
  --v4-orange: #f26b4f;      /* İmar */
  --v4-green: #2fb35f;       /* Şantiye */
  --v4-mint: #ebfaf5;        /* hero / ekip zemini */
  --v4-mint-2: #e3f6f1;      /* hero geçişi */
  --v4-sky: #eef9fc;         /* süreç zemini */
  --v4-ink: #0f1d2b;         /* başlık */
  --v4-text: #2c3a47;        /* gövde */
  --v4-muted: #5b6875;       /* ikincil metin, beyaz üstünde 5.9:1 */
  --v4-line: #e3e9ee;
  --v4-field-line: #cdd8e0;  /* form alanı kenarı */
  --v4-placeholder: #7a8794;
  --v4-on-deep-soft: #dff4fb; /* koyu mavi zeminde ikincil metin */
  --v4-white: #ffffff;
  --v4-radius: 10px;         /* kart köşesi (v4: yumuşak) */
  --v4-pill: 999px;          /* hap buton */
  /* 2026-10-05: Montserrat → Plus Jakarta Sans (kurumsal/SaaS tipi, dar, Türkçe latin-ext). Başlık ağırlığı 800 → 700, ölçek bir kademe küçük. */
  --v4-font: "Plus Jakarta Sans", "Segoe UI", system-ui, sans-serif;
  --v4-h1: clamp(28px, 2.9vw, 42px);
  --v4-h2: clamp(22px, 2.2vw, 32px);
  --v4-h3: 17px;
  --v4-card-title: clamp(19px, 1.3vw + 4px, 24px); /* anasayfa kategori kartı başlığı */
  --v4-body: 15px;
  --v4-small: 14px;
  --v4-eyebrow: 12.5px;
  --v4-num: clamp(38px, 4.4vw, 64px); /* sayaç rakamı, tek kademe */
  --v4-container: 1380px;
  --v4-gutter: clamp(16px, 4vw, 32px);
  --v4-section: var(--section-y); /* eski ad, tek kaynak --section-y */
  /* Boşluk ölçeği (2026-10-04 FAZ A, docs/tools/bosluk-denetim.py baseline: 165 sapma) — 4/8 tabanlı */
  --sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px; --sp-5: 24px;
  --sp-6: 32px; --sp-7: 48px; --sp-8: 64px; --sp-9: 80px; --sp-10: 96px;
  --section-y: clamp(40px, 2vw + 32px, 64px);   /* bölüm üst/alt padding: ~58 masaüstü / 40 mobil */
  --head-gap: clamp(24px, 1vw + 20px, 32px);    /* başlık bloğu → içerik */
  --grid-gap: clamp(16px, 1.25vw + 12px, 24px); /* kart ızgarası */
}

.v4-eyebrow {
  display: block;
  margin-bottom: var(--sp-2);
  font: 700 var(--v4-eyebrow)/1.2 var(--v4-font);
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--v4-blue-deep);
}

.v4-title {
  font: 700 var(--v4-h2)/1.2 var(--v4-font);
  letter-spacing: -.02em;
  color: var(--v4-ink);
}

.v4-lead {
  font: 400 var(--v4-body)/1.65 var(--v4-font);
  color: var(--v4-muted);
}

.v4-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 44px;
  min-height: 44px;
  padding: 0 24px;
  border: 0;
  border-radius: var(--v4-pill);
  background: var(--v4-blue);
  color: var(--v4-white);
  font: 700 var(--v4-small)/1 var(--v4-font);
  text-decoration: none;
  cursor: pointer;
  transition: background-color .15s ease;
}
.v4-btn:hover,
.v4-btn:focus-visible { background: var(--v4-blue-strong); color: var(--v4-white); }
.v4-btn--light { background: var(--v4-white); color: var(--v4-blue-deep); }
.v4-btn--light:hover,
.v4-btn--light:focus-visible { background: var(--v4-sky); color: var(--v4-blue-deep); }
.v4-btn :where(i, svg) { width: 16px; height: 16px; }

/* Kategori renk yardımcıları — data-cat ile seçilir */
.v4-cat { --cat: var(--v4-blue); --cat-ink: var(--v4-white); }
.v4-cat[data-cat="kadastro"] { --cat: var(--v4-yellow); --cat-ink: var(--v4-ink); }
.v4-cat[data-cat="imar"] { --cat: var(--v4-orange); --cat-ink: var(--v4-white); }
.v4-cat[data-cat="santiye"] { --cat: var(--v4-green); --cat-ink: var(--v4-white); }

/* ==== 08-v4-anasayfa.css ================================================ */
/* ============================================================================
 * 08 · V4 ANASAYFA — bölümler (referans docs/tasarim/gpt-konsept/yon2/v4.png).
 * Sıra: hero · uzmanlık kartları · süreç oku · rakamlar · ekip · referanslar ·
 * iletişim. Token ve ilkeller 07-v4-temel.css'ten gelir (renk, yazı ölçeği,
 * .v4-eyebrow/.v4-title/.v4-lead/.v4-btn/.v4-cat). Önek: .v4h-
 * Kırılımlar: 1024 (kartlar 2x2) · 860 (süreç dikey, ekip/rakam üst üste) · 640 (tek sütun).
 * ========================================================================= */

.v4h {
  display: block;
  overflow-x: clip;
  background: var(--v4-white);
  color: var(--v4-text);
  font-family: var(--v4-font);
  font-size: var(--v4-body);
  line-height: 1.6;
}

.v4h img { display: block; max-width: 100%; }
.v4h .apl-icon { width: 1em; height: 1em; }

.v4h-wrap {
  width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter)));
  margin-inline: auto;
}

/* Bölüm kenar boşluğu: tam genişlikli zeminlerde içerik yine 1200px sütununa oturur. */
.v4h {
  --v4h-edge: max(var(--v4-gutter), calc((100% - var(--v4-container)) / 2));
}

/* ------------------------------------------------------------------ 1 · HERO */
.v4h-hero {
  position: relative;
  display: flex;
  align-items: stretch;
  min-height: clamp(500px, 44vw, 640px);
  /* Zemin hero görselinin sol kenar rengi (#e2fbf0, 2026-10-07 ölçüldü); gradyan görselle ton farkı yaratıyordu. */
  --v4h-hero-bg: #e2fbf0;
  background: var(--v4h-hero-bg);
}

.v4h-hero__copy {
  position: relative;
  z-index: 2;
  width: min(100%, 46%);
  padding: var(--section-y) 0 var(--section-y) var(--v4h-edge);
  display: flex;
  flex-direction: column;
  justify-content: center; /* metin bloğu hero yüksekliğinde dikey ortalı */
  align-items: flex-start;
}

.v4h-hero__title {
  display: flex;
  flex-direction: column;
  font: 700 var(--v4-h1)/1.08 var(--v4-font);
  letter-spacing: -.015em;
  color: var(--v4-ink);
}

.v4h-hero__lead {
  max-width: 470px;
  margin-top: 20px;
  font: 400 var(--v4-body)/1.65 var(--v4-font);
  color: var(--v4-text);
}

.v4h-hero__cta { margin-top: var(--sp-6); }

.v4h-hero__art {
  position: absolute;
  inset: 0 0 0 auto;
  z-index: 1;
  width: 66%;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 24%);
  mask-image: linear-gradient(90deg, transparent 0, #000 24%);
}
.v4h-hero__art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: left center;
}

/* --------------------------------------------------------- 2 · UZMANLIK ALANLARI */
.v4h-areas { padding: var(--section-y) 0; }

.v4h-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px 48px;
  margin-bottom: var(--head-gap);
}
.v4h-head__lead { max-width: 430px; }

.v4h-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.v4h-card {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border-radius: var(--v4-radius);
  background: var(--cat);
  color: var(--cat-ink);
  transition: transform .18s ease;
}
.v4h-card:hover { transform: translateY(-3px); }

.v4h-card__link {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: clamp(340px, 31vw, 392px);
  padding: 20px 20px 0;
  color: inherit;
  text-decoration: none;
}
.v4h-card__link:focus-visible { outline: 3px solid var(--v4-ink); outline-offset: -3px; }

.v4h-card__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.v4h-card__name { font: 700 var(--v4-card-title)/1.15 var(--v4-font); letter-spacing: -.02em; }
.v4h-card__top .apl-icon { font-size: 26px; transition: transform .18s ease; }
.v4h-card:hover .v4h-card__top .apl-icon { transform: translate(3px, -3px); }

.v4h-card__text { margin-top: 8px; max-width: 24ch; font: 500 var(--v4-small)/1.5 var(--v4-font); opacity: .95; }

.v4h-card .v4h-card__art { /* .v4h img (max-width:100%) ile ezilmesin */
  width: calc(100% + 40px);
  max-width: none;
  margin: auto -20px 0;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  object-position: center bottom;
}

/* ------------------------------------------------------------------ 3 · SÜREÇ */
.v4h-process { background: var(--v4-sky); padding: var(--section-y) 0; }

.v4h-process__inner { display: grid; grid-template-columns: minmax(200px, 25%) minmax(0, 1fr); align-items: center; gap: 24px 32px; }
.v4h-process__head .v4-title { max-width: 12ch; }

.v4h-flow { --tip: 28px; display: flex; }

.v4h-step {
  position: relative;
  display: flex;
  flex: 1 1 0;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 132px;
  padding: 18px calc(var(--tip) + 8px) 18px calc(var(--tip) + 12px);
  margin-left: calc(var(--tip) * -1 + 3px);
  background: var(--cat);
  color: var(--cat-ink);
  clip-path: polygon(0 0, calc(100% - var(--tip)) 0, 100% 50%, calc(100% - var(--tip)) 100%, 0 100%, var(--tip) 50%);
}
.v4h-step:first-child {
  margin-left: 0;
  padding-left: 22px;
  clip-path: polygon(0 0, calc(100% - var(--tip)) 0, 100% 50%, calc(100% - var(--tip)) 100%, 0 100%);
}
.v4h-step > .apl-icon { flex: 0 0 auto; font-size: 36px; }
.v4h-step h3 { font: 700 var(--v4-small)/1.3 var(--v4-font); }
.v4h-step p {
  margin-top: 4px;
  font: 400 var(--v4-small)/1.45 var(--v4-font);
}

/* ---------------------------------------------------------------- 4 · RAKAMLAR */
.v4h-stats { padding: var(--section-y) 0; background: var(--v4-white); }
.v4h-stats__inner { display: flex; align-items: center; gap: 28px 0; }

.v4h-stats__list { display: flex; flex: 1 1 auto; }
.v4h-stats__list > div {
  display: flex;
  flex: 1 1 0;
  flex-direction: column-reverse;
  align-items: center;
  gap: 2px;
  padding-inline: 16px;
  border-left: 1px solid var(--v4-line);
  text-align: center;
}
.v4h-stats__list > div:first-child { border-left: 0; }
.v4h-stats__list dd { font: 700 var(--v4-num)/1 var(--v4-font); letter-spacing: -.02em; color: var(--v4-blue); }
.v4h-stats__list dt { font: 500 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }

.v4h-stats__note {
  flex: 0 0 min(28%, 300px);
  margin-left: 24px;
  padding-left: 28px;
  border-left: 1px solid var(--v4-line);
  font: 500 var(--v4-small)/1.6 var(--v4-font);
  color: var(--v4-text);
}

/* ------------------------------------------------------------------- 5 · EKİP */
.v4h-team { background: var(--v4-mint); padding: var(--section-y) 0; }
.v4h-team__inner { display: grid; grid-template-columns: minmax(220px, 34%) minmax(0, 1fr); align-items: start; gap: 28px clamp(24px, 4vw, 56px); }
.v4h-team__head .v4-title { max-width: 14ch; margin-bottom: var(--sp-3); }

.v4h-people { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--grid-gap); }
.v4h-person { display: flex; flex-direction: column; gap: 2px; font: 400 var(--v4-small)/1.45 var(--v4-font); color: var(--v4-muted); }
.v4h-person img {
  width: 100%;
  aspect-ratio: 1;
  margin-bottom: 10px;
  object-fit: cover;
  border-radius: 6px;
  background: var(--cat);
}
.v4h-person__name { font: 700 var(--v4-h3)/1.35 var(--v4-font); color: var(--v4-ink); }
.v4h-person__role { font: 600 var(--v4-small)/1.4 var(--v4-font); color: var(--v4-blue-deep); }

/* -------------------------------------------------------------- 6 · REFERANSLAR */
.v4h-refs { padding: var(--section-y) 0; background: var(--v4-white); }
.v4h-refs__inner { display: flex; align-items: center; gap: 24px 0; }
.v4h-refs__head { flex: 0 0 min(42%, 560px); padding-right: 28px; }
.v4h-refs__head .v4-title { max-width: 22ch; }

.v4h-refs__list {
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 28px;
  padding-left: 32px;
  font: 700 clamp(16px, 1.4vw, 20px)/1.3 var(--v4-font);
  color: var(--v4-ink);
}

/* ------------------------------------------------------------------ 7 · İLETİŞİM */
.v4h-contact {
  position: relative;
  display: flex;
  min-height: clamp(340px, 28vw, 380px);
  background: var(--v4-blue);
  overflow: hidden;
  color: var(--v4-white);
}

.v4h-contact__copy {
  position: relative;
  z-index: 2;
  width: min(100%, 54%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--section-y) 0 var(--section-y) var(--v4h-edge);
}
.v4h-contact__eyebrow { display: block; margin-bottom: 8px; font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: rgba(255, 255, 255, .9); }
.v4h-contact h2 { font: 700 var(--v4-h2)/1.18 var(--v4-font); letter-spacing: -.02em; color: var(--v4-white); }
.v4h-contact__lead { max-width: 500px; margin-top: var(--sp-3); font: 400 var(--v4-body)/1.6 var(--v4-font); color: var(--v4-white); }

.v4h-contact__facts { display: flex; flex-wrap: wrap; gap: 10px 32px; margin-top: var(--sp-5); font: 600 var(--v4-h3)/1.3 var(--v4-font); }
.v4h-contact__facts li { display: flex; align-items: center; gap: 10px; }
.v4h-contact__facts .apl-icon { font-size: 24px; }
.v4h-contact__facts a { color: inherit; text-decoration: none; }
.v4h-contact__facts a:hover, .v4h-contact__facts a:focus-visible { text-decoration: underline; }

.v4h-contact__art {
  position: absolute;
  inset: 0 0 0 auto;
  z-index: 1;
  width: 54%;
  overflow: hidden; /* GSAP parallax scale(1.14) görseli bölüm dışına taşırmasın */
  clip-path: polygon(0 0, 100% 0, 100% 100%, 22% 100%);
}
.v4h-contact__art img { width: 100%; height: 100%; object-fit: cover; object-position: center; }

/* ---------------------------------------------------------------- Kırılımlar */
@media (max-width: 1100px) {
  .v4h-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v4h-card__link { min-height: 340px; }
  .v4h-step { min-height: 150px; }
  .v4h-process__inner { grid-template-columns: 1fr; }
  .v4h-process__head .v4-title { max-width: none; }
}

@media (max-width: 860px) {
  .v4h-hero { flex-direction: column; min-height: 0; }
  .v4h-hero__copy { width: 100%; padding: var(--section-y) var(--v4-gutter); }
  .v4h-hero__art { position: relative; inset: auto; width: 100%; height: clamp(240px, 64vw, 380px); -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 22%); mask-image: linear-gradient(180deg, transparent 0, #000 22%); }

  .v4h-head { flex-direction: column; align-items: flex-start; }

  /* Süreç oku dikey: her adım aşağı bakan chevron. */
  .v4h-flow { --tip: 20px; flex-direction: column; }
  .v4h-step {
    flex: 0 0 auto; /* sütunda flex-basis 0 adımı padding yüksekliğine indiriyordu (2026-10-04) */
    min-height: 0;
    margin-left: 0;
    margin-top: calc(var(--tip) * -1 + 3px);
    padding: calc(var(--tip) + 12px) 20px calc(var(--tip) + 10px);
    clip-path: polygon(0 0, 50% var(--tip), 100% 0, 100% calc(100% - var(--tip)), 50% 100%, 0 calc(100% - var(--tip)));
  }
  .v4h-step:first-child {
    margin-top: 0;
    padding-top: 18px;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--tip)), 50% 100%, 0 calc(100% - var(--tip)));
  }
  .v4h-step:last-child { padding-bottom: 22px; clip-path: polygon(0 0, 50% var(--tip), 100% 0, 100% 100%, 0 100%); }

  .v4h-stats__inner { flex-wrap: wrap; }
  .v4h-stats__list { flex: 1 1 100%; }
  .v4h-stats__note { flex: 1 1 100%; margin: 4px 0 0; padding: 20px 0 0; border-left: 0; border-top: 1px solid var(--v4-line); }

  .v4h-team__inner { grid-template-columns: 1fr; }
  .v4h-team__head .v4-title { max-width: none; }

  .v4h-refs__inner { flex-direction: column; align-items: flex-start; }
  .v4h-refs__head { flex: none; padding-right: 0; }
  .v4h-refs__head .v4-title { max-width: none; }
  .v4h-refs__list { justify-content: flex-start; gap: 10px 24px; padding-left: 0; border-left: 0; }

  .v4h-contact { flex-direction: column; min-height: 0; }
  .v4h-contact__copy { width: 100%; padding: var(--sp-6) var(--v4-gutter) var(--sp-4); }
  .v4h-contact__art { position: relative; inset: auto; width: 100%; height: clamp(120px, 38vw, 170px); clip-path: polygon(0 18%, 100% 0, 100% 100%, 0 100%); margin-top: calc(var(--sp-2) * -1); }
}

@media (max-width: 640px) {
  .v4h-hero__copy { padding-top: 32px; }

  /* Mobilde 2+2 küçük kart (2026-10-07). */
  .v4h-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .v4h-card__link { min-height: 0; padding: 14px 14px 0; }
  .v4h-card__name { font-size: 17px; }
  .v4h-card__top .apl-icon { font-size: 20px; }
  .v4h-card__text { margin-top: 6px; font-size: 12.5px; line-height: 1.45; }
  .v4h-card .v4h-card__art { width: calc(100% + 28px); margin: 10px -14px 0; }

  .v4h-stats__list > div { padding-inline: 6px; }
  .v4h-stats__list dt { font-size: var(--v4-eyebrow); }

  .v4h-people { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v4h-contact__facts { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  .v4h-card, .v4h-card__top .apl-icon { transition: none; }
  .v4h-card:hover { transform: none; }
  .v4h-card:hover .v4h-card__top .apl-icon { transform: none; }
}

/* ------------------------------------------------ 8 · REFERANS KARUSELİ (.v4h-refs__*) */
.v4h-refs__carousel { position: relative; display: flex; flex: 1 1 auto; align-items: center; gap: 8px; min-width: 0; padding-left: 24px; }
.v4h-refs__track {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  gap: 16px;
  min-width: 0;
  margin: 0;
  padding: 4px 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
  list-style: none;
  cursor: grab;
  touch-action: pan-x pan-y;
}
.v4h-refs__track::-webkit-scrollbar { display: none; }
.v4h-refs__track.is-flowing { scroll-snap-type: none; }
.v4h-refs__track.is-dragging { cursor: grabbing; scroll-snap-type: none; user-select: none; }
.v4h-refs__item { display: flex; flex: 0 0 auto; align-items: center; justify-content: center; width: clamp(120px, 12vw, 160px); height: 80px; padding: 8px 12px; scroll-snap-align: start; border: 1px solid var(--v4-line); border-radius: 10px; background: var(--v4-white); }
.v4h-refs__logo { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; pointer-events: none; }
.v4h-refs__name { font: 700 15px/1.3 var(--v4-font); color: var(--v4-ink); text-align: center; }

@media (max-width: 960px) {
  .v4h-refs__carousel { width: 100%; padding-left: 0; border-left: 0; }
}

/* Sarı kartlar (Kadastro): zemin token'daki --v4-yellow kalır, yazı/ikon beyaz. */
.v4h-card[data-cat="kadastro"],
.v4h-step[data-cat="kadastro"] { --cat-ink: var(--v4-white); }

/* Hero harita etiketi (2026-10-04): görselde yazı yok; "GEBZE / Kent Meydanı" metni dil dosyasından
   (home.v4.hero.map_*) HTML katmanı olarak meydanın üstüne oturur. Konum görseldeki meydan noktasına göre. */
.v4h-maptag {
  position: absolute;
  left: 62%;
  bottom: 47%;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 6px 12px 7px;
  transform: translateX(-50%);
  border-radius: 8px;
  background: var(--v4-white);
  box-shadow: 0 1px 2px rgba(16, 32, 40, .18);
  color: var(--v4-ink);
  text-align: center;
  pointer-events: none;
}
.v4h-maptag::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: 0;
  height: 0;
  margin-left: -6px;
  border: 6px solid transparent;
  border-top-color: var(--v4-white);
}
.v4h-maptag__name { font: 700 15px/1.1 var(--v4-font); letter-spacing: .14em; }
.v4h-maptag__sub { margin-top: 2px; font: 600 var(--v4-eyebrow)/1.2 var(--v4-font); color: var(--v4-blue-deep); }

@media (max-width: 600px) {
  .v4h-maptag { padding: 4px 9px 5px; }
  .v4h-maptag__name { font-size: var(--v4-eyebrow); }
  .v4h-maptag__sub { font-size: var(--v4-eyebrow); }
}

/* Hero dönen hizmet adı (2026-10-07): kelimeler aynı hücrede üst üste; genişlik en uzun kelimeden gelir, satır zıplamaz.
   Alt çizgi bandı kategori rengi (--cat), yazı koyu kalır (sarıda da okunur). JS: aplan-site.js initHeroWords. */
.v4h-rot { display: grid; justify-items: start; }
.v4h-rot__word {
  grid-area: 1 / 1;
  padding: 0 .06em;
  background: linear-gradient(transparent 62%, var(--cat) 62%, var(--cat) 92%, transparent 92%);
  color: var(--v4-ink);
  opacity: 0;
  transform: translateY(.35em);
  transition: opacity .45s ease, transform .45s ease;
}
.v4h-rot__word.is-active { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .v4h-rot__word { transition: none; transform: none; }
}

/* ==== 09-v4-kabuk.css =================================================== */
/* ============================================================================
 * 09 · V4 KABUK + KURUMSAL İÇ SAYFALAR (2026-10-04)
 * Önekler: .v4s- site kabuğu (header, iletişim bloğu, alt bilgi) · .v4-ph2 iç sayfa
 * başı (partial v4_page_head.php) · .v4c- kurumsal sayfa bileşenleri.
 * Token'lar 07-v4-temel.css'te (--v4-*). Kategori rengi `.v4-cat[data-cat]` ile
 * --cat / --cat-ink olarak gelir: harita mavi · kadastro sarı · imar turuncu · şantiye yeşil.
 * ========================================================================= */

/* Eski tipografi değişkenleri v4 fontuna bağlanır. */
.aplan-site {
  --font-display: var(--v4-font);
  --font-body: var(--v4-font);
  /* Header v2 (Varyant A) token'ları */
  --v4s-top-h: 44px;
  --v4s-head-h: 76px;
  --v4s-tiny: 14px;
  --v4s-wa: #25d366;          /* WhatsApp marka yeşili */
  --v4s-row: 44px;            /* dropdown hizmet satırı: sabit */
  --v4s-col: 256px;           /* dropdown sütun genişliği */
  --v4s-shadow-dd: 0 16px 40px rgba(15, 29, 43, .14), 0 2px 6px rgba(15, 29, 43, .06);
  --v4s-shadow-stuck: 0 6px 18px rgba(15, 29, 43, .07);
  --v4s-shadow-float: 0 4px 12px rgba(15, 29, 43, .18);
  --v4s-ease: cubic-bezier(.2, .8, .2, 1);
  --v4s-dur: 160ms;
}

/* -------------------------------------------------------------------------
   1. HEADER v2 — koyu topbar (kayar) + beyaz yapışkan header, kart dropdown
   ----------------------------------------------------------------------- */
.v4s-site { position: sticky; top: calc(-1 * var(--v4s-top-h)); z-index: var(--z-sticky, 20); font-family: var(--v4-font); }
.v4s-site--notop { top: 0; }
.v4s-wrap { width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter))); margin-inline: auto; }
.v4s-site .apl-icon { flex: none; }

.v4s-top { height: var(--v4s-top-h); background: var(--v4-ink); color: var(--v4-white); font: 500 var(--v4s-tiny)/1 var(--v4-font); }
.v4s-top__in { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-5); height: 100%; }
.v4s-top__info { display: flex; align-items: center; gap: var(--sp-5); min-width: 0; }
.v4s-top__item { display: inline-flex; align-items: center; gap: var(--sp-2); min-height: 44px; color: inherit; text-decoration: none; white-space: nowrap; }
.v4s-top__item .apl-icon { width: 16px; height: 16px; color: var(--v4-blue); }
a.v4s-top__item:hover { text-decoration: underline; text-underline-offset: 3px; }
.v4s-top__adres { overflow: hidden; text-overflow: ellipsis; }
.v4s-top__social { display: flex; margin-right: calc(-1 * var(--sp-3)); }
.v4s-top__soc { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: var(--v4-pill); color: inherit; }
.v4s-top__soc .apl-icon { width: 18px; height: 18px; }
.v4s-top__soc:hover { background: var(--v4-text); }
.v4s-top :focus-visible { outline: 2px solid var(--v4-blue); outline-offset: 2px; }

.v4s-head { background: var(--v4-white); border-bottom: 1px solid var(--v4-line); transition: box-shadow var(--v4s-dur) var(--v4s-ease); }
.v4s-site.is-stuck .v4s-head { box-shadow: var(--v4s-shadow-stuck); }
.v4s-head__in { display: flex; align-items: center; gap: var(--sp-7); height: var(--v4s-head-h); }
.v4s-logo { display: inline-flex; align-items: center; flex: none; min-height: 44px; color: var(--v4-ink); font: 700 16px/1.1 var(--v4-font); text-decoration: none; }
.v4s-logo img { display: block; width: auto; height: 44px; }
.v4s-logo__text small { display: block; margin-top: 3px; font: 600 var(--v4-eyebrow)/1 var(--v4-font); color: var(--v4-muted); }

.v4s-nav__list, .v4s-dd__list, .v4s-m, .v4s-m__panel, .v4s-m__list { margin: 0; padding: 0; list-style: none; }
.v4s-nav__list { display: flex; align-items: center; gap: var(--sp-2); }
.v4s-nav__item { position: relative; }
.v4s-nav__btn,
.v4s-nav__link {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: var(--sp-2);
  height: 44px;
  padding: 0 var(--sp-4);
  border: 0;
  border-radius: var(--v4-pill);
  background: none;
  color: var(--v4-ink);
  font: 600 var(--v4-body)/1 var(--v4-font);
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: color var(--v4s-dur) var(--v4s-ease), background-color var(--v4s-dur) var(--v4s-ease);
}
.v4s-nav__btn .apl-icon { width: 16px; height: 16px; transition: transform var(--v4s-dur) var(--v4s-ease); }
.v4s-nav__btn[aria-expanded="true"] .apl-icon { transform: rotate(180deg); }
/* Gösterge: alt çizgi yerine yumuşak hap zemin (kullanıcı 2026-10-04: alt çizgi efekti beğenilmedi) */
.v4s-nav__btn:hover,
.v4s-nav__link:hover { background: var(--v4-sky); color: var(--v4-blue-deep); }
.v4s-nav__btn[aria-expanded="true"] { background: var(--v4-sky); color: var(--v4-blue-deep); }
.v4s-nav__item.is-current > .v4s-nav__btn,
.v4s-nav__link[aria-current="page"] { background: rgba(28, 182, 226, .14); color: var(--v4-blue-deep); }
.v4s-nav__btn:focus-visible,
.v4s-nav__link:focus-visible,
.v4s-dd a:focus-visible,
.v4s-phone:focus-visible,
.v4s-head__cta:focus-visible,
.v4s-burger:focus-visible,
.v4s-drawer a:focus-visible,
.v4s-drawer button:focus-visible,
.v4s-float__btn:focus-visible { outline: 2px solid var(--v4-blue-deep); outline-offset: 2px; }

.v4s-actions { display: flex; align-items: center; gap: var(--sp-5); margin-left: auto; }
.v4s-phone { display: inline-flex; align-items: center; gap: var(--sp-2); min-height: 44px; color: var(--v4-ink); font: 700 var(--v4-body)/1 var(--v4-font); font-variant-numeric: tabular-nums; text-decoration: none; white-space: nowrap; }
.v4s-phone .apl-icon { width: 20px; height: 20px; color: var(--v4-blue-deep); }
.v4s-phone:hover { color: var(--v4-blue-deep); }
.v4s-head__cta { display: inline-flex; align-items: center; justify-content: center; height: 44px; padding: 0 var(--sp-5); border-radius: var(--v4-pill); background: var(--v4-blue-deep); color: var(--v4-white); font: 700 var(--v4-small)/1 var(--v4-font); text-decoration: none; white-space: nowrap; transition: background-color var(--v4s-dur) var(--v4s-ease); }
.v4s-head__cta:hover { background: var(--v4-ink); color: var(--v4-white); }
.v4s-burger { display: none; align-items: center; gap: var(--sp-2); height: 44px; padding: 0 var(--sp-4); border: 1px solid var(--v4-line); border-radius: var(--v4-pill); background: var(--v4-white); color: var(--v4-ink); font: 700 var(--v4-small)/1 var(--v4-font); cursor: pointer; }
.v4s-burger .apl-icon { width: 20px; height: 20px; }

/* Dropdown: sekmenin sol kenarına hizalı kart; JS ekrana sığmazsa --dd-shift ile içeri kaydırır */
.v4s-dd {
  position: absolute;
  top: calc(100% + (var(--v4s-head-h) - 44px) / 2 + var(--sp-2));
  left: 0;
  z-index: 60;
  --v4s-bridge: calc((var(--v4s-head-h) - 44px) / 2 + var(--sp-2) + 1px);
  padding: var(--sp-4);
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  box-shadow: var(--v4s-shadow-dd);
  visibility: hidden;
  opacity: 0;
  transform: translate(var(--dd-shift, 0px), -6px);
  transition: opacity var(--v4s-dur) var(--v4s-ease), transform var(--v4s-dur) var(--v4s-ease), visibility 0s linear var(--v4s-dur);
}
.v4s-dd::before { content: ""; position: absolute; right: 0; bottom: 100%; left: 0; height: var(--v4s-bridge); } /* köprü alanı */
.is-open > .v4s-dd { visibility: visible; opacity: 1; transform: translate(var(--dd-shift, 0px), 0); transition-delay: 0s; }
.v4s-dd--hiz { padding: var(--sp-4) var(--sp-4) var(--sp-3); }
/* Hizmetler: 4 sütun; görsel/ad, açıklama ve liste satırları subgrid ile sütunlar arası hizalı */
.v4s-dd__grid { display: grid; grid-template-columns: repeat(4, var(--v4s-col)); grid-template-rows: auto auto auto; column-gap: var(--sp-5); }
.v4s-dd__col { display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 0; min-width: 0; }
.v4s-dd__head { display: grid; row-gap: var(--sp-2); border-radius: var(--v4-radius); color: var(--v4-ink); text-decoration: none; }
.v4s-dd__img { width: 100%; height: 48px; object-fit: cover; object-position: center 55%; border-radius: var(--v4-radius); background: var(--v4-sky); }
.v4s-dd__name { display: flex; align-items: center; gap: var(--sp-2); font: 700 var(--v4-body)/1.2 var(--v4-font); letter-spacing: -.01em; }
.v4s-dd__dot { flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--cat, var(--v4-blue)); }
.v4s-dd__count { margin-left: auto; color: var(--v4-muted); font: 500 var(--v4s-tiny)/1 var(--v4-font); font-variant-numeric: tabular-nums; }
.v4s-dd__head:hover .v4s-dd__name { color: var(--v4-blue-deep); }
.v4s-dd__text { display: -webkit-box; margin: 0; padding: var(--sp-1) 0 var(--sp-2); border-bottom: 1px solid var(--v4-line); overflow: hidden; color: var(--v4-muted); font: 400 var(--v4s-tiny)/1.5 var(--v4-font); -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.v4s-dd__list { align-self: start; margin: var(--sp-1) 0 0; }
.v4s-dd__link { display: flex; align-items: center; height: var(--v4s-row); margin: 0 calc(-1 * var(--sp-3)); padding: 0 var(--sp-3); border-radius: 6px; color: var(--v4-text); font: 500 var(--v4-small)/1.3 var(--v4-font); text-decoration: none; }
.v4s-dd__link span { display: -webkit-box; overflow: hidden; text-wrap: balance; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.v4s-dd__link:hover,
.v4s-dd__link:focus-visible,
.v4s-dd__link[aria-current="page"] { background: var(--v4-sky); color: var(--v4-ink); }
.v4s-dd__cta { display: flex; align-items: center; gap: var(--sp-4); min-height: 48px; margin-top: var(--sp-3); padding: 0 var(--sp-2) 0 var(--sp-4); border-radius: var(--v4-radius); background: var(--v4-mint); }
.v4s-dd__cta-text { margin: 0 auto 0 0; color: var(--v4-ink); font: 700 var(--v4-small)/1.3 var(--v4-font); }
.v4s-dd__all { display: inline-flex; align-items: center; gap: var(--sp-2); min-height: 44px; padding: 0 var(--sp-3); border-radius: var(--v4-pill); color: var(--v4-blue-deep); font: 700 var(--v4-small)/1 var(--v4-font); text-decoration: none; white-space: nowrap; }
.v4s-dd__all:hover { text-decoration: underline; text-underline-offset: 4px; }
.v4s-dd__all .apl-icon { width: 16px; height: 16px; }
.v4s-dd__tel { display: inline-flex; align-items: center; gap: var(--sp-2); height: 44px; padding: 0 var(--sp-5); border-radius: var(--v4-pill); background: var(--v4-blue-deep); color: var(--v4-white); font: 700 var(--v4-small)/1 var(--v4-font); font-variant-numeric: tabular-nums; text-decoration: none; white-space: nowrap; }
.v4s-dd__tel .apl-icon { width: 18px; height: 18px; }
.v4s-dd__tel-no { padding-left: var(--sp-2); border-left: 1px solid currentColor; font-weight: 500; }
.v4s-dd__tel:hover { background: var(--v4-ink); color: var(--v4-white); }

/* Kurumsal: ad + sağda ikon + en çok iki satır açıklama (özet boşsa açıklama basılmaz) */
.v4s-dd--tek { width: 400px; padding: var(--sp-2); }
.v4s-dd__corp { margin: 0; padding: 0; list-style: none; }
.v4s-cl { display: grid; align-content: center; gap: var(--sp-1); min-height: 56px; padding: var(--sp-2) var(--sp-3); border-radius: 6px; color: var(--v4-ink); text-decoration: none; }
.v4s-cl:hover,
.v4s-cl:focus-visible,
.v4s-cl[aria-current="page"] { background: var(--v4-sky); }
.v4s-cl__name { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-3); font: 700 var(--v4-small)/1.3 var(--v4-font); }
.v4s-cl__ico { width: 20px; height: 20px; color: var(--v4-muted); }
.v4s-cl:hover .v4s-cl__ico { color: var(--v4-blue-deep); }
.v4s-cl__text { display: -webkit-box; overflow: hidden; color: var(--v4-muted); font: 400 var(--v4s-tiny)/1.45 var(--v4-font); -webkit-line-clamp: 2; -webkit-box-orient: vertical; }

/* Mobil çekmece */
.v4s-drawer { position: fixed; inset: 0; z-index: 100; display: flex; flex-direction: column; background: var(--v4-white); font-family: var(--v4-font); }
.v4s-drawer[hidden] { display: none; }
.v4s-drawer__bar { display: flex; flex: none; align-items: center; justify-content: space-between; height: 64px; padding: 0 var(--v4-gutter); border-bottom: 1px solid var(--v4-line); }
.v4s-drawer__bar .v4s-logo img { height: 36px; }
.v4s-drawer__bar .v4s-burger { display: inline-flex; }
.v4s-drawer__body { flex: 1; overflow-y: auto; overscroll-behavior: contain; padding: var(--sp-2) var(--v4-gutter) var(--sp-5); }
.v4s-m > li { border-bottom: 1px solid var(--v4-line); }
.v4s-m__top { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-3); width: 100%; min-height: 56px; padding: 0; border: 0; background: none; color: var(--v4-ink); font: 700 var(--v4-h3)/1.2 var(--v4-font); text-align: left; text-decoration: none; cursor: pointer; }
.v4s-m__top .apl-icon, .v4s-m__sub .apl-icon { width: 18px; height: 18px; transition: transform var(--v4s-dur) var(--v4s-ease); }
.v4s-m__top[aria-expanded="true"] .apl-icon, .v4s-m__sub[aria-expanded="true"] .apl-icon { transform: rotate(180deg); }
.v4s-m__panel { padding-bottom: var(--sp-3); }
.v4s-m__panel[hidden], .v4s-m__list[hidden] { display: none; }
.v4s-m__sub { display: flex; align-items: center; gap: var(--sp-3); width: 100%; min-height: 56px; padding: var(--sp-1) 0; border: 0; background: none; color: var(--v4-ink); font: 700 var(--v4-body)/1.2 var(--v4-font); text-align: left; cursor: pointer; }
.v4s-m__sub .apl-icon { margin-left: auto; }
.v4s-m__dot { flex: none; width: 10px; height: 10px; border-radius: 50%; background: var(--cat, var(--v4-blue)); }
.v4s-m__img { flex: none; width: 64px; height: 32px; border-radius: 8px; object-fit: cover; }
.v4s-m__subname { display: grid; gap: var(--sp-1); }
.v4s-m__count { color: var(--v4-muted); font: 500 var(--v4s-tiny)/1 var(--v4-font); }
.v4s-m__list { margin-bottom: var(--sp-2); padding-left: var(--sp-5); }
.v4s-m__link { display: flex; align-items: center; min-height: 44px; padding: var(--sp-2) var(--sp-1); color: var(--v4-text); font: 500 var(--v4-body)/1.35 var(--v4-font); text-decoration: none; }
.v4s-m__link--all { color: var(--v4-blue-deep); font-weight: 700; }
.v4s-m__contact { display: grid; gap: var(--sp-1); padding-top: var(--sp-4); color: var(--v4-muted); font-size: var(--v4-small); }
.v4s-m__contact a { display: inline-flex; align-items: center; gap: var(--sp-2); min-height: 44px; color: var(--v4-ink); font-weight: 700; text-decoration: none; }
.v4s-m__contact a .apl-icon { color: var(--v4-blue-deep); }
.v4s-m__social { display: flex; gap: var(--sp-2); margin-left: calc(-1 * var(--sp-3)); }
.v4s-m__soc { justify-content: center; width: 44px; }
.v4s-drawer__foot { flex: none; padding: var(--sp-3) var(--v4-gutter) calc(var(--sp-3) + env(safe-area-inset-bottom)); border-top: 1px solid var(--v4-line); }
.v4s-drawer__foot .v4s-head__cta { width: 100%; height: 48px; font-size: var(--v4-body); }
html.v4s-lock, html.v4s-lock body { overflow: hidden; }

/* Float butonlar (WhatsApp yalnız ayar doluysa basılır) */
.v4s-float {
  position: fixed;
  z-index: 40;
  right: calc(var(--sp-4) + env(safe-area-inset-right));
  bottom: calc(var(--sp-4) + env(safe-area-inset-bottom));
  display: flex;
  flex-direction: column;
  gap: var(--sp-3);
  transition: opacity var(--v4s-dur) var(--v4s-ease), transform var(--v4s-dur) var(--v4s-ease), visibility 0s linear 0s;
}
.v4s-float__btn { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; color: var(--v4-white); box-shadow: var(--v4s-shadow-float); text-decoration: none; transition: transform var(--v4s-dur) var(--v4s-ease); }
.v4s-float__btn .apl-icon { width: 26px; height: 26px; color: var(--v4-white); fill: currentColor; }
.v4s-float__btn--wa .apl-icon { width: 30px; height: 30px; }
.v4s-float__btn:hover { transform: translateY(-2px); }
.v4s-float__btn--wa { background: var(--v4s-wa); }
.v4s-float__btn--tel { background: var(--v4-blue-deep); }
.v4s-float-off .v4s-float, .v4s-lock .v4s-float { visibility: hidden; opacity: 0; transform: translateY(8px); pointer-events: none; transition: opacity var(--v4s-dur), transform var(--v4s-dur), visibility 0s linear var(--v4s-dur); }

@media (max-width: 1279px) { .aplan-site { --v4s-col: 224px; } }
/* 2026-10-05: menü 6 öğeye çıktı (Güncel, Yararlı Linkler) — telefon üst şeritte de olduğu için 1440 altında header'dan düşer, çekmece 1199'a kadar */
@media (min-width: 1200px) and (max-width: 1439px) { .v4s-phone { display: none; } .v4s-head__in { gap: var(--sp-5); } .v4s-nav__btn, .v4s-nav__link { padding: 0 var(--sp-3); } }
@media (max-width: 1199px) {
  .aplan-site { --v4s-head-h: 64px; }
  .v4s-nav, .v4s-phone { display: none; }
  .v4s-head__in { gap: var(--sp-3); }
  .v4s-actions { gap: var(--sp-3); }
  .v4s-burger { display: inline-flex; }
  .v4s-logo img { height: 36px; }
}
@media (max-width: 767px) { .v4s-top__mail { display: none; } .v4s-top__info { gap: var(--sp-3); } }
@media (max-width: 599px) { .v4s-actions .v4s-head__cta { display: none; } }

@media (prefers-reduced-motion: reduce) {
  .v4s-site *, .v4s-site *::before, .v4s-site *::after, .v4s-drawer *, .v4s-float, .v4s-float * { transition-duration: 0s !important; transition-delay: 0s !important; animation: none !important; }
  .v4s-float__btn:hover { transform: none; }
}
html.apl-reduced .v4s-site *, html.apl-reduced .v4s-site *::before, html.apl-reduced .v4s-site *::after,
html.apl-reduced .v4s-drawer *, html.apl-reduced .v4s-float, html.apl-reduced .v4s-float * { transition-duration: 0s !important; transition-delay: 0s !important; animation: none !important; }
@media print { .v4s-float, .v4s-top, .v4s-burger, .v4s-drawer, .v4s-dd { display: none !important; } .v4s-site { position: static; } }

/* -------------------------------------------------------------------------
   2. İÇ SAYFA BAŞI (.v4-ph2) — tek bileşen, üç ton: mint (kurumsal/liste, topografya dokulu) ·
   cat (kategori sayfası: kategori zemini + sağda görsel) · white (blog/galeri/arama/404).
   Onaylı tasarım: docs/tasarim/page-header-v2/varyant-a.html. Partial v4_page_head.php.
   ----------------------------------------------------------------------- */
.v4-ph2 {
  --v4-crumb: 13px;
  --topo-on-mint: #b9e3d5;
  --topo-on-cat: #d9b23f;
  position: relative;
  overflow: hidden;
  background: var(--v4-mint);
  color: var(--v4-ink);
  font-family: var(--v4-font);
}
.v4-ph2[data-tone="white"] { background: var(--v4-white); border-bottom: 1px solid var(--v4-line); }
.v4-ph2[data-tone="cat"] { background: var(--cat); color: var(--cat-ink); }
.v4-ph2__topo {
  position: absolute;
  inset: 0 0 0 auto;
  width: 52%;
  height: 100%;
  color: var(--topo-on-mint);
  pointer-events: none;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 45%);
  mask-image: linear-gradient(90deg, transparent, #000 45%);
}
.v4-ph2[data-tone="cat"] .v4-ph2__topo { color: var(--topo-on-cat); }
.v4-ph2[data-tone="cat"][data-cat="harita"] .v4-ph2__topo,
.v4-ph2[data-tone="cat"][data-cat="imar"] .v4-ph2__topo,
.v4-ph2[data-tone="cat"][data-cat="santiye"] .v4-ph2__topo { color: rgba(255, 255, 255, .28); }
.v4-ph2__in {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 340px);
  align-items: center;
  gap: var(--sp-7);
  width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter)));
  min-height: 232px;
  margin-inline: auto;
  padding: var(--sp-6) 0 var(--sp-7);
}
.v4-ph2__in:not(:has(.v4-ph2__visual)) { grid-template-columns: minmax(0, 1fr); }
.v4-ph2__copy { max-width: 720px; }
.v4-ph2__crumbs ol { display: flex; flex-wrap: wrap; gap: var(--sp-2); font: 500 var(--v4-crumb)/20px var(--v4-font); color: var(--v4-muted); }
.v4-ph2__crumbs li + li::before { content: "/"; margin-right: var(--sp-2); color: var(--v4-muted); }
.v4-ph2__crumbs a { display: inline-block; padding: 12px 0; margin: -12px 0; color: var(--v4-blue-deep); text-decoration: none; } /* 44px'e yakın dokunma alanı, düzen değişmez */
.v4-ph2__crumbs a:hover,
.v4-ph2__crumbs a:focus-visible { text-decoration: underline; }
.v4-ph2 a:focus-visible { outline: 2px solid var(--v4-blue-deep); outline-offset: 3px; }
.v4-ph2__crumbs [aria-current] { color: var(--v4-ink); }
.v4-ph2[data-tone="cat"] .v4-ph2__crumbs ol,
.v4-ph2[data-tone="cat"] .v4-ph2__crumbs a,
.v4-ph2[data-tone="cat"] .v4-ph2__crumbs [aria-current],
.v4-ph2[data-tone="cat"] .v4-ph2__crumbs li + li::before { color: var(--cat-ink); }
.v4-ph2[data-tone="cat"] .v4-ph2__crumbs a { text-decoration: underline; text-underline-offset: 3px; }
.v4-ph2[data-tone="cat"] a:focus-visible { outline-color: var(--cat-ink); }
.v4-ph2__title { margin-top: var(--sp-4); font: 700 var(--v4-h1)/1.1 var(--v4-font); letter-spacing: -.02em; color: var(--v4-ink); }
.v4-ph2__lead { margin-top: var(--sp-3); max-width: 60ch; font: 400 var(--v4-body)/1.6 var(--v4-font); color: var(--v4-text); }
.v4-ph2[data-tone="cat"] .v4-ph2__title,
.v4-ph2[data-tone="cat"] .v4-ph2__lead,
.v4-ph2[data-tone="cat"] .v4-ph2__fact { color: var(--cat-ink); }
.v4-ph2__side { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-4); margin-top: var(--sp-4); }
.v4-ph2__fact { padding-right: var(--sp-4); border-right: 1px solid var(--v4-line); font: 600 var(--v4-small)/20px var(--v4-font); color: var(--v4-ink); }
.v4-ph2__fact:last-child { padding-right: 0; border-right: 0; }
.v4-ph2__act {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-2);
  height: 44px;
  padding: 0 var(--sp-5);
  border-radius: var(--v4-pill);
  background: var(--v4-blue-deep);
  color: var(--v4-white);
  font: 600 var(--v4-small)/1 var(--v4-font);
  text-decoration: none;
  white-space: nowrap;
}
.v4-ph2__act .apl-icon { width: 18px; height: 18px; }
.v4-ph2__act--ghost { background: var(--v4-white); color: var(--v4-ink); border: 1px solid var(--v4-line); }
.v4-ph2__visual img { display: block; width: 100%; height: 200px; object-fit: cover; border-radius: var(--v4-radius); }

@media (max-width: 859px) {
  .v4-ph2__in { grid-template-columns: minmax(0, 1fr); min-height: 0; gap: 0; padding: var(--sp-4) 0 var(--sp-5); }
  .v4-ph2__visual { display: none; }
  .v4-ph2__topo { width: 70%; }
  .v4-ph2__title { margin-top: var(--sp-2); font-size: 28px; }
  .v4-ph2__lead { margin-top: var(--sp-2); font-size: var(--v4-small); line-height: 1.5; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; }
  .v4-ph2__side { margin-top: var(--sp-2); }
  .v4-ph2__act--ghost { display: none; }
  .v4-ph2__act { height: auto; min-height: 44px; margin: -12px 0; padding: 0; background: none; color: var(--v4-blue-deep); text-decoration: underline; text-underline-offset: 3px; }
}

/* -------------------------------------------------------------------------
   3. KURUMSAL SAYFA İSKELETİ (.v4c-)
   ----------------------------------------------------------------------- */
.v4c-page {
  font: 400 var(--v4-body)/1.6 var(--v4-font);
  color: var(--v4-text);
  background: var(--v4-white);
}
.v4c-container { width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter))); margin-inline: auto; }
.v4c-section { padding-block: var(--v4-section); }
.v4c-section--tight { padding-block: var(--section-y); }
.v4c-section--mint { background: var(--v4-mint); }
.v4c-section--sky { background: var(--v4-sky); }
.v4c-heading { margin-bottom: var(--head-gap); font: 700 var(--v4-h2)/1.2 var(--v4-font); letter-spacing: -.01em; color: var(--v4-ink); }

/* Kurumsal alt gezinme: hap sekmeler */
.v4c-subnav { border-bottom: 1px solid var(--v4-line); background: var(--v4-white); }
.v4c-subnav__inner { display: flex; gap: 8px; padding-block: 14px; overflow-x: auto; }
.v4c-subnav a {
  flex: none;
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 16px;
  border-radius: var(--v4-pill);
  color: var(--v4-text);
  font: 600 var(--v4-small)/1 var(--v4-font);
  text-decoration: none;
  transition: background-color .15s ease, color .15s ease;
}
.v4c-subnav a:hover,
.v4c-subnav a:focus-visible { background: var(--v4-sky); color: var(--v4-blue-deep); }
.v4c-subnav a.is-active { background: var(--v4-blue); color: var(--v4-white); }

/* Zengin metin */
.v4c-prose { max-width: 70ch; font: 400 var(--v4-body)/1.75 var(--v4-font); color: var(--v4-text); }
.v4c-prose > * + * { margin-top: 14px; }
.v4c-prose h2 { margin-top: 28px; font: 700 var(--v4-h2)/1.25 var(--v4-font); color: var(--v4-ink); }
.v4c-prose h3 { margin-top: 22px; font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4c-prose ul { padding-left: 20px; list-style: disc; }
.v4c-prose ol { padding-left: 20px; list-style: decimal; }
.v4c-prose li + li { margin-top: 6px; }
.v4c-prose a { color: var(--v4-blue-deep); text-decoration: underline; text-underline-offset: 2px; }
.v4c-prose strong { color: var(--v4-ink); }
.v4c-prose img { max-width: 100%; height: auto; border-radius: var(--v4-radius); }

.v4c-empty { padding: 40px 24px; border: 1px dashed var(--v4-line); border-radius: var(--v4-radius); background: var(--v4-white); text-align: center; }
.v4c-empty h2 { font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4c-empty p { margin-top: 6px; color: var(--v4-muted); }

/* Metin + vektör figürü */
.v4c-two { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 48px; align-items: center; }
.v4c-figure { margin: 0; padding: 24px; border-radius: var(--v4-radius); background: var(--v4-sky); color: var(--v4-ink); }
.v4c-figure__svg { display: block; width: 100%; height: auto; }
.v4c-vec-accent { color: var(--v4-blue); }

/* Blok kartları (süs şerit yok; kategori zemin/etiketle okunur) */
.v4c-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: var(--grid-gap); }
.v4c-block {
  padding: 22px;
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-radius);
  background: var(--v4-white);
}
.v4c-block__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 28px;
  margin-bottom: 12px;
  padding: 0 8px;
  border-radius: var(--v4-pill);
  background: var(--cat);
  color: var(--cat-ink);
  font: 700 var(--v4-eyebrow)/1 var(--v4-font);
}
.v4c-block h3 { margin-bottom: 8px; font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4c-block .v4c-prose { font-size: var(--v4-small); line-height: 1.65; }

/* Zaman çizgisi */
.v4c-timeline { position: relative; display: grid; gap: 16px; }
.v4c-timeline::before { content: ""; position: absolute; top: 8px; bottom: 8px; left: 17px; width: 2px; background: var(--v4-line); }
.v4c-timeline__item { position: relative; display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 20px; align-items: start; }
.v4c-timeline__num {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--cat);
  color: var(--cat-ink);
  font: 700 var(--v4-eyebrow)/1 var(--v4-font);
}
.v4c-timeline__card { padding: 20px 22px; border: 1px solid var(--v4-line); border-radius: var(--v4-radius); background: var(--v4-white); }
.v4c-timeline__card h3 { margin-bottom: 8px; font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4c-timeline__card .v4c-prose { font-size: var(--v4-small); line-height: 1.65; }

/* Diğer sayfalara bağlantı kartları */
.v4c-links { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
.v4c-links a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  color: var(--v4-ink);
  font: 700 15px/1.3 var(--v4-font);
  text-decoration: none;
  transition: border-color .15s ease;
}
.v4c-links a:hover,
.v4c-links a:focus-visible { border-color: var(--cat); }
.v4c-links .apl-icon { flex: none; color: var(--v4-blue-deep); }

/* -------------------------------------------------------------------------
   4. HİZMETLER — kategori sekmeleri + kart ızgarası
   ----------------------------------------------------------------------- */
.v4c-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.v4c-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-pill);
  background: var(--v4-white);
  color: var(--v4-ink);
  font: 600 var(--v4-small)/1 var(--v4-font);
  text-decoration: none;
  transition: background-color .15s ease, border-color .15s ease;
}
.v4c-tab::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--cat); box-shadow: inset 0 0 0 1px rgba(15, 29, 43, .12); }
.v4c-tab:hover,
.v4c-tab:focus-visible { border-color: var(--cat); }
.v4c-tab.is-active { border-color: var(--cat); background: var(--cat); color: var(--cat-ink); }
.v4c-tab.is-active::before { background: var(--cat-ink); box-shadow: none; }
.v4c-tab__count { font-weight: 700; opacity: .7; }

.v4c-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--grid-gap); }
.v4c-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  transition: border-color .15s ease, transform .15s ease;
}
.v4c-card:hover { border-color: var(--cat); transform: translateY(-2px); }
.v4c-card__media { margin: 0; aspect-ratio: 16 / 10; background: var(--v4-sky); }
.v4c-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.v4c-card__body { display: flex; flex: 1; flex-direction: column; gap: 10px; padding: 18px 20px 20px; }
.v4c-card__tag {
  align-self: flex-start;
  padding: 5px 10px;
  border-radius: var(--v4-pill);
  background: var(--cat);
  color: var(--cat-ink);
  font: 700 var(--v4-eyebrow)/1 var(--v4-font);
  letter-spacing: .02em;
}
.v4c-card__title { font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4c-card__title a { color: inherit; text-decoration: none; }
.v4c-card__title a::after { content: ""; position: absolute; inset: 0; }
.v4c-card__text {
  font-size: var(--v4-small);
  line-height: 1.6;
  color: var(--v4-muted);
}
.v4c-card__more { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 4px; color: var(--v4-blue-deep); font: 700 var(--v4-small)/1 var(--v4-font); }
.v4c-card__more .apl-icon { font-size: 15px; transition: transform .15s ease; }
.v4c-card:hover .v4c-card__more .apl-icon { transform: translateX(3px); }

/* -------------------------------------------------------------------------
   5. HİZMET DETAYI — galeri + maddeler + mavi kutu
   ----------------------------------------------------------------------- */
.v4c-detail { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 40px; align-items: start; }
.v4c-detail__main > * + * { margin-top: 32px; }
.v4c-cover { margin: 0; overflow: hidden; border-radius: var(--v4-radius); background: var(--v4-sky); }
.v4c-cover img { display: block; width: 100%; height: auto; }
.v4c-detail__meta { display: flex; flex-wrap: wrap; gap: 14px; color: var(--v4-muted); font: 600 var(--v4-eyebrow)/1 var(--v4-font); }

.v4c-feats { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 10px; }
.v4c-feats li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  font: 600 var(--v4-small)/1.45 var(--v4-font);
  color: var(--v4-ink);
}
.v4c-feats .apl-icon { flex: none; margin-top: 2px; font-size: 16px; color: var(--v4-blue-deep); }

.v4c-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.v4c-gallery figure { margin: 0; overflow: hidden; border-radius: var(--v4-radius); background: var(--v4-sky); }
.v4c-gallery img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }

.v4c-aside {
  position: sticky;
  top: 96px;
  padding: 24px;
  border-radius: var(--v4-radius);
  background: var(--v4-blue);
  color: var(--v4-white);
}
.v4c-aside__eyebrow { display: block; margin-bottom: 8px; font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; }
.v4c-aside h3 { font: 700 18px/1.3 var(--v4-font); color: var(--v4-white); }
.v4c-aside p { margin-top: 8px; font-size: var(--v4-small); line-height: 1.6; }
.v4c-aside .v4-btn { margin-top: 18px; }
.v4c-aside__link { display: inline-flex; align-items: center; gap: 8px; margin-top: 16px; color: var(--v4-white); font: 600 var(--v4-small)/1.3 var(--v4-font); text-decoration: underline; text-underline-offset: 3px; }
.v4c-aside__link .apl-icon { font-size: 15px; }

/* -------------------------------------------------------------------------
   6. EKİP + REFERANSLAR
   ----------------------------------------------------------------------- */
.v4c-team { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: var(--grid-gap); }
.v4c-team--compact { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 16px; }
.v4c-person__photo {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin: 0 0 14px;
  aspect-ratio: 4 / 4.4;
  overflow: hidden;
  border-radius: var(--v4-radius);
  background: var(--cat);
}
.v4c-person__photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.v4c-person__photo--art img { width: 82%; height: 92%; object-fit: contain; object-position: center bottom; }
.v4c-person__name { font: 700 16px/1.3 var(--v4-font); color: var(--v4-ink); }
.v4c-person__role { display: block; margin-top: 4px; font: 600 var(--v4-eyebrow)/1.4 var(--v4-font); color: var(--v4-muted); }
.v4c-person__bio { margin-top: 8px; font-size: var(--v4-small); line-height: 1.6; color: var(--v4-muted); }
.v4c-person__contact { display: flex; flex-direction: column; gap: 4px; margin-top: 10px; font: 600 var(--v4-eyebrow)/1.4 var(--v4-font); }
.v4c-person__contact a { color: var(--v4-blue-deep); text-decoration: none; overflow-wrap: anywhere; }
.v4c-person__contact a:hover { text-decoration: underline; }

.v4c-refs { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: var(--grid-gap); }
.v4c-ref {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 124px;
  padding: 20px;
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  color: var(--v4-ink);
  text-align: center;
  text-decoration: none;
}
a.v4c-ref:hover,
a.v4c-ref:focus-visible { border-color: var(--v4-blue); }
.v4c-ref img { display: block; width: auto; max-width: 100%; height: auto; max-height: 52px; object-fit: contain; }
.v4c-ref__name { font: 700 var(--v4-small)/1.3 var(--v4-font); }
.v4c-ref--logo .v4c-ref__name { font-size: var(--v4-eyebrow); font-weight: 600; color: var(--v4-muted); }

/* -------------------------------------------------------------------------
   7. HAKKIMIZDA — rakam şeridi, renkli değer maddeleri
   ----------------------------------------------------------------------- */
.v4c-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
.v4c-stat { padding: 8px 24px; text-align: center; }
.v4c-stat + .v4c-stat { border-left: 1px solid var(--v4-line); }
.v4c-stat strong { display: block; font: 700 clamp(30px, 4vw, 40px)/1.1 var(--v4-font); color: var(--v4-blue); }
.v4c-stat span { display: block; margin-top: 6px; font: 600 15px/1.3 var(--v4-font); color: var(--v4-ink); }

.v4c-values { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--grid-gap); }
.v4c-value { padding: 22px; border-radius: var(--v4-radius); background: var(--cat); color: var(--cat-ink); }
.v4c-value__num { display: block; margin-bottom: 14px; font: 700 var(--v4-eyebrow)/1 var(--v4-font); letter-spacing: .06em; opacity: .85; }
.v4c-value h3 { font: 700 var(--v4-h3)/1.3 var(--v4-font); color: inherit; }
.v4c-value p { margin-top: 8px; font-size: var(--v4-small); line-height: 1.6; }

/* -------------------------------------------------------------------------
   8. SSS + YASAL SAYFA
   ----------------------------------------------------------------------- */
.v4c-faq { display: grid; gap: 10px; max-width: 820px; }
.v4c-faq__item { border: 1px solid var(--v4-line); border-radius: var(--v4-radius); background: var(--v4-white); }
.v4c-faq__item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  font: 700 15px/1.4 var(--v4-font);
  color: var(--v4-ink);
  cursor: pointer;
  list-style: none;
}
.v4c-faq__item summary::-webkit-details-marker { display: none; }
.v4c-faq__item summary .apl-icon { flex: none; color: var(--v4-blue-deep); transition: transform .15s ease; }
.v4c-faq__item[open] summary .apl-icon { transform: rotate(45deg); }
.v4c-faq__answer { padding: 0 18px 18px; }

.v4c-legal { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 40px; align-items: start; }
.v4c-legal__nav { display: flex; flex-direction: column; gap: 4px; position: sticky; top: 96px; }
.v4c-legal__nav-title { margin-bottom: 6px; font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: var(--v4-blue-deep); }
.v4c-legal__nav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 8px;
  color: var(--v4-text);
  font: 600 var(--v4-small)/1.3 var(--v4-font);
  text-decoration: none;
}
.v4c-legal__nav a:hover,
.v4c-legal__nav a:focus-visible { background: var(--v4-sky); color: var(--v4-blue-deep); }
.v4c-legal__nav a.is-active { background: var(--v4-blue); color: var(--v4-white); }
.v4c-legal__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-top: 40px; padding: 20px 22px; border-radius: var(--v4-radius); background: var(--v4-sky); }
.v4c-legal__foot p { margin-top: 4px; font-size: var(--v4-small); color: var(--v4-muted); }
.v4c-legal__foot a:not(.v4-btn) { color: var(--v4-blue-deep); }

@media (max-width: 959px) {
  .v4c-two,
  .v4c-detail,
  .v4c-legal { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .v4c-aside,
  .v4c-legal__nav { position: static; }
  .v4c-legal__nav { flex-direction: row; flex-wrap: wrap; }
  .v4c-legal__nav-title { flex-basis: 100%; }
}
@media (max-width: 599px) {
  .v4c-stat { padding: 8px 10px; }
  .v4c-stat + .v4c-stat { border-left: 0; }
  .v4c-timeline__item { grid-template-columns: 30px minmax(0, 1fr); gap: 14px; }
  .v4c-timeline::before { left: 14px; }
  .v4c-timeline__num { width: 30px; height: 30px; }
}

/* -------------------------------------------------------------------------
   9. İLETİŞİM BLOĞU (iç sayfalar) + TEK SATIR ALT BİLGİ
   ----------------------------------------------------------------------- */
.v4s-footer { font-family: var(--v4-font); }

.v4s-cta { position: relative; overflow: hidden; background: var(--v4-blue); color: var(--v4-white); }
.v4s-cta__inner {
  position: relative;
  z-index: 1;
  width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter)));
  margin-inline: auto;
  padding: var(--section-y) 0;
}
.v4s-cta__body { max-width: 520px; }
.v4s-cta__eyebrow { color: var(--v4-white); opacity: .92; }
.v4s-cta__title { font: 700 var(--v4-h2)/1.15 var(--v4-font); letter-spacing: -.015em; color: var(--v4-white); }
.v4s-cta__text { margin-top: 12px; font: 400 var(--v4-body)/1.65 var(--v4-font); color: var(--v4-white); }
.v4s-cta__contact { display: flex; flex-wrap: wrap; gap: 10px 28px; margin-top: 22px; font: 600 15px/1.4 var(--v4-font); }
.v4s-cta__contact li { display: flex; align-items: flex-start; gap: 8px; }
.v4s-cta__contact a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-block: -12px; color: var(--v4-white); text-decoration: none; }
.v4s-cta__contact .apl-icon { flex: none; margin-top: 2px; font-size: 18px; }
.v4s-cta__art { position: absolute; inset: 0 0 0 auto; width: min(54%, 760px); clip-path: polygon(0 0, 100% 0, 100% 100%, 22% 100%); }
/* Ofis pini görselin içinde %62 / %50 noktasında (media_assets.caption); kırpmada pin görünür kalsın diye aynı nokta odak. */
.v4s-cta__art img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 62% 50%; }
.v4s-cta__maptag {
  position: absolute; right: var(--sp-5); bottom: var(--sp-4);
  padding: var(--sp-1) var(--sp-3); border-radius: 999px;
  background: var(--v4-white); color: var(--v4-ink);
  font: 700 13px/1.4 var(--v4-font); box-shadow: 0 2px 8px rgba(20, 50, 70, .14);
}

/* Bant: başlık + kısa metin + telefon/adres; buton yok. Masaüstünde 360px taban, metin dikeyde ortada. */
@media (min-width: 860px) {
  .v4s-cta__inner { position: static; display: flex; align-items: center; min-height: 360px; }
  .v4s-cta__body { position: relative; z-index: 1; } /* harita yarısı bant kenarına (iç kapsayıcıya değil) yaslanır */
}
@media (max-width: 859px) {
  .v4s-cta__inner { padding-bottom: 0; }
  .v4s-cta__art { position: relative; width: calc(100% + 2 * var(--v4-gutter)); height: 170px; margin: var(--sp-5) calc(-1 * var(--v4-gutter)) 0; clip-path: none; }
  .v4s-cta__body { max-width: none; }
}

.v4s-foot { background: var(--v4-sky); }
.v4s-foot__inner {
  width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter)));
  margin-inline: auto;
  padding: var(--section-y) 0 20px;
}
.v4s-foot__grid { display: grid; grid-template-columns: 1fr; gap: 32px; }
.v4s-foot__col { min-width: 0; }
.v4s-foot__brand { display: inline-block; color: var(--v4-ink); font: 700 18px/1.1 var(--v4-font); text-decoration: none; }
.v4s-foot__brand img { display: block; width: auto; height: 44px; }
.v4s-foot__about { max-width: 340px; margin-top: 16px; font: 400 var(--v4-small)/1.65 var(--v4-font); color: var(--v4-text); }
.v4s-foot__title { margin: 0 0 16px; font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: var(--v4-ink); }
.v4s-foot__list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.v4s-foot__list a { display: inline-block; padding: 10px 0; color: var(--v4-text); font: 500 var(--v4-small)/1.4 var(--v4-font); text-decoration: none; }
.v4s-foot__list a:hover,
.v4s-foot__list a:focus-visible,
.v4s-foot__contact a:hover,
.v4s-foot__contact a:focus-visible { color: var(--v4-blue-deep); text-decoration: underline; text-underline-offset: 3px; }
.v4s-foot__contact { display: grid; gap: 12px; margin: 0; }
.v4s-foot__contact dt { font: 700 var(--v4-eyebrow)/1.3 var(--v4-font); color: var(--v4-muted); }
.v4s-foot__contact dd { margin: 2px 0 0; font: 500 var(--v4-small)/1.5 var(--v4-font); color: var(--v4-ink); overflow-wrap: anywhere; }
.v4s-foot__contact a { display: inline-block; padding: 10px 0; margin: -10px 0; color: var(--v4-ink); text-decoration: none; }
.v4s-foot__social { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.v4s-foot__social a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; color: var(--v4-blue-deep); font-size: 20px; }
.v4s-foot__social a:hover,
.v4s-foot__social a:focus-visible { background: var(--v4-white); }
.v4s-foot__bottom { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; margin-top: 40px; padding-top: 20px; border-top: 1px solid var(--v4-line); }
.v4s-foot__copy { margin: 0; font: 400 var(--v4-small)/1.5 var(--v4-font); color: var(--v4-muted); }
.v4s-foot__legal { display: flex; flex-wrap: wrap; gap: 4px 20px; margin: 0; padding: 0; list-style: none; }
.v4s-foot__legal a,
.v4s-foot__top { color: var(--v4-muted); font: 500 var(--v4-small)/1.5 var(--v4-font); text-decoration: none; }
.v4s-foot__legal a:hover,
.v4s-foot__legal a:focus-visible,
.v4s-foot__top:hover,
.v4s-foot__top:focus-visible { color: var(--v4-blue-deep); text-decoration: underline; text-underline-offset: 3px; }
.v4s-foot__top { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; margin-left: auto; }

@media (min-width: 600px) {
  .v4s-foot__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  .v4s-foot__grid { gap: 40px; grid-template-columns: 1.3fr 1fr 1fr 1.2fr; }
  .v4s-foot__grid[data-cols="3"] { grid-template-columns: 1.3fr 1fr 1.2fr; }
  .v4s-foot__grid[data-cols="2"] { grid-template-columns: 1.3fr 1fr; }
  .v4s-foot__grid[data-cols="1"] { grid-template-columns: 1fr; }
}
@media (max-width: 859px) {
  .v4s-foot__inner { padding-bottom: 88px; /* sabit mobil eylem çubuğunun payı */ }
  .v4s-foot__top { margin-left: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .v4c-card, .v4c-card__more .apl-icon,
  .v4c-subnav a, .v4c-tab, .v4c-links a, .v4c-faq__item summary .apl-icon { transition: none; }
  .v4c-card:hover { transform: none; }
}

/* 2026-10-05 mobil denetim: footer bağlantı sütunları yan yana (uzunluk ~%35 kısalır), yazı sayfasında uzun son halka gizlenir (başlık zaten h1) */
@media (max-width: 599px) {
  .v4s-foot__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; row-gap: 28px; }
  .v4s-foot__col--brand, .v4s-foot__grid > .v4s-foot__col:last-child { grid-column: 1 / -1; }
  .v4-ph2__crumbs li[aria-current] { display: none; }
}

/* ==== 10-v4-ic.css ====================================================== */
/* ============================================================================
 * 10 · V4 İÇ SAYFALAR — iletişim (v5 pafta dili), konum, SSS (blog/galeri/arama/404/bülten
 * 13-v4-icerik.css'e taşındı). Önek .v4p-; token'lar 07-v4-temel.css'ten. Sayfa başı (.v4-ph)
 * 09-v4-kabuk.css'tedir, burada yazılmaz.
 * ========================================================================= */

.v4p-page {
  --v4p-danger: #b93a1f;
  --v4p-ring: 0 0 0 3px rgba(28, 182, 226, .28);
  background: var(--v4-white);
  color: var(--v4-text);
  font: 400 var(--v4-body)/1.6 var(--v4-font);
  overflow-x: clip;
}

.v4p-wrap {
  width: min(var(--v4-container), 100%);
  margin: 0 auto;
  padding: var(--section-y) var(--v4-gutter);
}



/* ---- Boş durum, eylemler ------------------------------------------------ */
.v4p-empty { display: grid; gap: 10px; justify-items: start; max-width: 560px; padding: 28px; border-radius: var(--v4-radius); background: var(--v4-sky); }
.v4p-empty .v4-title, .v4p-empty .v4-lead { margin: 0; }
.v4p-btn--ghost { background: var(--v4-white); color: var(--v4-blue-deep); box-shadow: inset 0 0 0 1.5px var(--v4-blue); }
.v4p-btn--ghost:hover, .v4p-btn--ghost:focus-visible { background: var(--v4-sky); color: var(--v4-blue-deep); }

/* ---- Ortak: tam genişlikli şeritler ------------------------------------- */
.v4p-place, .v4p-visit, .v4p-fq {
  --v4p-edge: max(var(--v4-gutter), calc((100% - var(--v4-container)) / 2));
}
.v4p-visit__inner, .v4p-fq__inner {
  width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter)));
  margin-inline: auto;
}
.v4p-fq [hidden] { display: none !important; }

/* ---- /konum ------------------------------------------------------------- */
.v4p-place { padding: var(--section-y) 0 var(--v4-section); background: var(--v4-mint); }
.v4p-place__stage { position: relative; width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter))); margin-inline: auto; }
.v4p-place__map { overflow: hidden; border: 4px solid var(--v4-white); border-radius: var(--v4-radius); background: var(--v4-sky); }
.v4p-place__map iframe { display: block; width: 100%; height: clamp(440px, 50vw, 560px); border: 0; }
.v4p-place__map--art img { display: block; width: 100%; height: clamp(440px, 50vw, 560px); object-fit: cover; object-position: right center; }
.v4p-place__card {
  position: absolute;
  top: 50%;
  left: clamp(16px, 3vw, 32px);
  z-index: 2;
  display: grid;
  gap: 16px;
  width: min(380px, calc(100% - 32px));
  padding: 24px;
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  box-shadow: 0 16px 40px rgba(15, 29, 43, .16);
  transform: translateY(-50%);
}
.v4p-place__card .v4-eyebrow { margin: 0; }
.v4p-place__card h2 { font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4p-place__note { display: grid; gap: 4px; padding-left: 0; font-size: var(--v4-small); }
.v4p-place__note strong { color: var(--v4-ink); }
.v4p-place__note p { margin: 0; color: var(--v4-muted); }
.v4p-place__facts { display: grid; gap: 8px; margin: 0; font-size: var(--v4-small); }
.v4p-place__facts > div { display: flex; justify-content: space-between; gap: 16px; }
.v4p-place__facts dt { color: var(--v4-muted); }
.v4p-place__facts dd { margin: 0; font-weight: 700; color: var(--v4-ink); text-align: right; }
.v4p-place__facts a { color: var(--v4-blue-deep); text-decoration: none; }
.v4p-place__facts a:hover { text-decoration: underline; }
.v4p-place__routes { display: grid; gap: 8px; }
.v4p-place__routes > span { font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: var(--v4-blue-deep); }
.v4p-place__btns { display: flex; flex-wrap: wrap; gap: 8px; }
.v4p-visit { padding: var(--section-y) 0; background: var(--v4-white); }
.v4p-visit__inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px; }
.v4p-visit__btns { display: flex; flex-wrap: wrap; gap: 12px; }

/* ---- /sss --------------------------------------------------------------- */
.v4p-fq { padding: var(--section-y) 0 var(--v4-section); background: var(--v4-mint); }
.v4p-fq__inner { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: clamp(24px, 4vw, 48px); align-items: start; }
.v4p-fq__side { position: sticky; top: 96px; display: grid; gap: 24px; }
.v4p-fq__search { display: grid; gap: 8px; }
.v4p-fq__search label { font: 700 var(--v4-small)/1.2 var(--v4-font); color: var(--v4-ink); }
.v4p-fq__search input {
  width: 100%;
  min-height: 44px;
  padding: 0 16px;
  border: 1px solid var(--v4-field-line);
  border-radius: var(--v4-pill);
  background: var(--v4-white);
  color: var(--v4-ink);
  font: 400 var(--v4-body)/1.4 var(--v4-font);
}
.v4p-fq__search input:focus { outline: none; border-color: var(--v4-blue); box-shadow: var(--v4p-ring); }
.v4p-fq__index { display: grid; gap: 8px; }
.v4p-fq__index-title { font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: var(--v4-blue-deep); }
.v4p-fq__index-title small { margin-left: 4px; font-size: inherit; color: var(--v4-muted); }
.v4p-fq__index ol { display: grid; gap: 0; max-height: 38vh; margin: 0; padding: 0; overflow: auto; list-style: none; }
.v4p-fq__index a { display: flex; align-items: flex-start; gap: 12px; padding: 8px 0; color: var(--v4-ink); font: 600 var(--v4-small)/1.4 var(--v4-font); text-decoration: none; }
.v4p-fq__index a:hover, .v4p-fq__index a:focus-visible { color: var(--v4-blue-deep); text-decoration: underline; }
.v4p-fq__dot { flex: 0 0 auto; width: 12px; height: 12px; margin-top: 5px; border-radius: var(--v4-pill); background: var(--cat); }
.v4p-fq__help { display: grid; gap: 8px; justify-items: start; padding: 24px; border-radius: var(--v4-radius); background: var(--v4-blue-deep); color: #dff4fb; }
.v4p-fq__help-eyebrow { font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: #bfeaf7; }
.v4p-fq__help h2 { font: 700 var(--v4-h3)/1.25 var(--v4-font); color: var(--v4-white); }
.v4p-fq__help p { margin: 0 0 8px; font-size: var(--v4-small); }
.v4p-fq__list { display: grid; gap: var(--grid-gap); min-width: 0; }
.v4p-fq__item {
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  box-shadow: inset 0 0 0 1px var(--v4-line);
  scroll-margin-top: 96px;
}
.v4p-fq__item[open] { box-shadow: inset 0 0 0 1px var(--v4-ink); }
.v4p-fq__item summary { display: flex; align-items: center; gap: 16px; padding: 16px 24px 16px 24px; cursor: pointer; list-style: none; }
.v4p-fq__item summary::-webkit-details-marker { display: none; }
.v4p-fq__item summary strong { flex: 1 1 auto; font: 700 var(--v4-body)/1.4 var(--v4-font); color: var(--v4-ink); }
.v4p-fq__item summary i { flex: 0 0 auto; width: 18px; height: 18px; color: var(--v4-blue-deep); transition: transform .2s ease; }
.v4p-fq__item[open] summary i { transform: rotate(45deg); }
.v4p-fq__item summary:focus-visible { outline: none; border-radius: var(--v4-radius); box-shadow: var(--v4p-ring); }
.v4p-fq__answer { padding: 0 24px 20px; font-size: var(--v4-small); color: var(--v4-text); }
.v4p-fq__answer > :last-child { margin-bottom: 0; }
.v4p-fq__none { margin: 0; padding: 24px; border-radius: var(--v4-radius); background: var(--v4-white); color: var(--v4-muted); }

/* ---- Duyarlı ------------------------------------------------------------ */
@media (max-width: 1000px) {
  .v4p-place__card { position: relative; top: auto; left: auto; margin: -64px 16px 0; width: auto; transform: none; }
  .v4p-fq__inner { grid-template-columns: minmax(0, 1fr); }
  .v4p-fq__side { display: contents; }
  .v4p-fq__search { order: 1; }
  .v4p-fq__list { order: 2; }
  .v4p-fq__help { order: 3; }
  .v4p-fq__index { display: none; }
}
@media (max-width: 600px) {
  .v4p-fq__item summary { padding: 16px; gap: 12px; }
  .v4p-fq__answer { padding: 0 16px 16px; }
  .v4p-place__facts > div { flex-direction: column; gap: 2px; }
  .v4p-place__facts dd { text-align: left; }
}
@media (prefers-reduced-motion: reduce) {
  .v4p-fq__item summary i { transition: none; }
}

/* ---- /iletisim · v5 "pafta" dili ------------------------------------------
 * Hero (topo + parsel çizimi) · çerçeveli form + doğrudan kanallar · adımlar + künyeli harita.
 * Kategori renkleri bu sayfada hep koyu yazıyla (AA): --cat-ink = --v4-ink.
 * --------------------------------------------------------------------------- */
.v4p-ct-hero { position: relative; overflow: hidden; background: var(--v4-mint); }
.v4p-ct-hero__topo {
  position: absolute; inset: 0 0 0 auto; width: 52%; height: 100%; color: #b9e3d5; pointer-events: none;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 45%); mask-image: linear-gradient(90deg, transparent, #000 45%);
}
.v4p-ct-hero__in {
  position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 400px); align-items: center; gap: var(--sp-7);
  width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter))); margin-inline: auto; padding: var(--sp-6) 0 var(--sp-7);
}
.v4p-ct-hero__copy { max-width: 640px; }
.v4p-ct-hero__title { margin-top: var(--sp-4); font: 700 var(--v4-h1)/1.1 var(--v4-font); letter-spacing: -.02em; color: var(--v4-ink); }
.v4p-ct-hero__lead { margin-top: var(--sp-3); max-width: 56ch; font: 400 var(--v4-body)/1.6 var(--v4-font); color: var(--v4-text); }
.v4p-ct-hero__coord { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: var(--sp-2) var(--sp-3); margin-top: var(--sp-5); padding: var(--sp-2) var(--sp-4); border: 1px solid var(--v4-ink); border-radius: var(--v4-pill); background: var(--v4-white); font: 500 var(--v4-small)/1.4 var(--v4-font); color: var(--v4-muted); }
.v4p-ct-hero__coord strong { font-weight: 700; font-variant-numeric: tabular-nums; color: var(--v4-ink); }
.v4p-ct-hero__art { display: block; width: 100%; height: auto; }
.v4p-ct-art__grid { fill: none; stroke: #b9e3d5; stroke-width: 1; stroke-dasharray: 3 5; }
.v4p-ct-art__p { stroke: var(--v4-white); stroke-width: 5; stroke-linejoin: round; }
.v4p-ct-art__p--1 { fill: var(--v4-blue); }
.v4p-ct-art__p--2 { fill: var(--v4-yellow); }
.v4p-ct-art__p--3 { fill: var(--v4-orange); }
.v4p-ct-art__p--4 { fill: var(--v4-green); }
.v4p-ct-art__cross { fill: none; stroke: var(--v4-ink); stroke-width: 1.5; }
.v4p-ct-art__pin { fill: var(--v4-white); stroke: var(--v4-ink); stroke-width: 2; }
.v4p-ct-art__dot { fill: var(--v4-ink); }

/* Çerçeveli sayfa: cetvel şeridi + çift çizgi (pafta kenarı) */
.v4p-ct-sheet { padding: var(--section-y) 0; background: var(--v4-white); }
.v4p-ct-sheet__in { width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter))); margin-inline: auto; }
.v4p-ct-frame {
  display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
  border: 1.5px solid var(--v4-ink); border-radius: var(--v4-radius); outline: 1px solid var(--v4-field-line); outline-offset: 5px;
  background: var(--v4-white); overflow: hidden;
}
.v4p-ct-ruler {
  grid-column: 1 / -1; height: 12px; border-bottom: 1px solid var(--v4-ink);
  background: repeating-linear-gradient(90deg, var(--v4-ink) 0 1px, transparent 1px 16px) 0 100% / 100% 6px no-repeat,
              repeating-linear-gradient(90deg, var(--v4-ink) 0 1px, transparent 1px 80px) 0 100% / 100% 12px no-repeat;
}
.v4p-ct-form { padding: var(--sp-6); min-width: 0; scroll-margin-top: 96px; }
.v4p-ct-h2 { margin: 0; font: 700 var(--v4-h2)/1.2 var(--v4-font); letter-spacing: -.02em; color: var(--v4-ink); }
.v4p-ct-h2--on { color: var(--v4-white); }
.v4p-ct-note { margin: var(--sp-2) 0 0; max-width: 56ch; color: var(--v4-muted); }
.v4p-ct-fields { display: grid; gap: var(--sp-5); margin-top: var(--sp-5); }
.v4p-ct-label { display: block; margin-bottom: var(--sp-2); font: 700 var(--v4-small)/1.3 var(--v4-font); color: var(--v4-ink); }

/* Konu çipleri: yalnız JS varken (body.apl-ready) görünür */
.v4p-ct-topics { display: none; }
.apl-ready .v4p-ct-topics { display: block; }
.v4p-ct-topics__row { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
.v4p-ct-chip {
  --cat-ink: var(--v4-ink);
  display: inline-flex; align-items: center; gap: var(--sp-2); min-height: 44px; padding: 0 var(--sp-4);
  border: 1.5px solid var(--v4-field-line); border-radius: var(--v4-pill); background: var(--v4-white); color: var(--v4-ink);
  font: 600 var(--v4-small)/1 var(--v4-font); cursor: pointer; transition: background-color .15s ease, border-color .15s ease;
}
.v4p-ct-chip::before { content: ""; width: 12px; height: 12px; border-radius: var(--v4-pill); background: var(--cat); }
.v4p-ct-chip:hover { border-color: var(--cat); }
.v4p-ct-chip[aria-pressed="true"] { border-color: var(--v4-ink); background: var(--cat); color: var(--cat-ink); }
.v4p-ct-chip[aria-pressed="true"]::before { background: var(--v4-ink); }
.v4p-ct-chip:focus-visible, .v4p-ct-btn:focus-visible, .v4p-ct-direct a:focus-visible, .v4p-ct-step a:focus-visible { outline: 2px solid var(--v4-ink); outline-offset: 3px; }

.v4p-ct-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-4) var(--sp-4); }
.v4p-ct-field { display: grid; gap: var(--sp-2); align-content: start; min-width: 0; }
.v4p-ct-field--full { grid-column: 1 / -1; }
.v4p-ct-field label { font: 700 var(--v4-small)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4p-ct-opt { font-weight: 500; color: var(--v4-muted); }
.v4p-ct-field input[type="text"], .v4p-ct-field input[type="tel"], .v4p-ct-field input[type="email"], .v4p-ct-field textarea {
  width: 100%; min-height: 48px; padding: 0 var(--sp-4); border: 1px solid var(--v4-field-line); border-radius: var(--v4-radius);
  background: var(--v4-white); color: var(--v4-ink); font: 400 var(--v4-body)/1.4 var(--v4-font);
}
.v4p-ct-field textarea { min-height: 128px; padding: var(--sp-3) var(--sp-4); resize: vertical; }
.v4p-ct-field input::placeholder, .v4p-ct-field textarea::placeholder { color: var(--v4-placeholder); }
.v4p-ct-field input:focus, .v4p-ct-field textarea:focus { outline: none; border-color: var(--v4-blue-deep); box-shadow: var(--v4p-ring); }
.v4p-ct-field [aria-invalid="true"] { border-color: var(--v4p-danger); }
.v4p-ct-error { font: 600 var(--v4-small)/1.4 var(--v4-font); color: var(--v4p-danger); }
.v4p-ct-field .v4p-ct-consent { display: flex; align-items: flex-start; gap: var(--sp-3); font: 400 var(--v4-small)/1.5 var(--v4-font); color: var(--v4-text); cursor: pointer; }
.v4p-ct-consent input { flex: 0 0 auto; width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--v4-blue-deep); }
.v4p-ct-consent a { color: var(--v4-blue-deep); font-weight: 600; }
.v4p-ct-submit { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-3) var(--sp-5); }
.v4p-ct-btn { height: 48px; min-height: 48px; }
.v4p-ct-req { margin: 0; font-size: var(--v4-small); color: var(--v4-muted); }
.v4p-ct-errors { padding: var(--sp-4); border-radius: var(--v4-radius); background: #fdf0ec; box-shadow: inset 4px 0 0 var(--v4p-danger); margin-top: var(--sp-5); color: var(--v4-ink); }
.v4p-ct-errors ul { margin: var(--sp-2) 0 0; padding-left: var(--sp-5); }
.v4p-ct-errors a { color: var(--v4p-danger); font-weight: 600; }
.v4p-ct-done { display: grid; gap: var(--sp-2); padding: var(--sp-6) 0; }
.v4p-ct-done::before { content: ""; width: 56px; height: 6px; margin-bottom: var(--sp-3); border-radius: var(--v4-pill); background: linear-gradient(90deg, var(--v4-blue) 25%, var(--v4-yellow) 0 50%, var(--v4-orange) 0 75%, var(--v4-green) 0); }

/* Doğrudan kanallar: koyu mavi pafta sağ şeridi */
.v4p-ct-direct { position: relative; overflow: hidden; display: flex; flex-direction: column; gap: var(--sp-4); padding: var(--sp-6); border-left: 1px solid var(--v4-ink); background: var(--v4-blue-deep); color: var(--v4-on-deep-soft); min-width: 0; }
.v4p-ct-direct > :not(.v4p-ct-direct__topo) { position: relative; }
.v4p-ct-direct__topo { position: absolute; inset: 40% 0 0 0; width: 100%; height: 60%; color: rgba(255, 255, 255, .16); pointer-events: none; }
.v4p-ct-direct__eyebrow { font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: #bfeaf7; }
.v4p-ct-direct__phone { font: 700 clamp(26px, 2.2vw, 32px)/1.1 var(--v4-font); letter-spacing: -.01em; color: var(--v4-white); text-decoration: none; white-space: nowrap; font-variant-numeric: tabular-nums; }
.v4p-ct-direct__phone:hover { text-decoration: underline; }
.v4p-ct-direct__btns { display: grid; gap: var(--sp-2); justify-items: start; }
.v4p-ct-btn--line { background: transparent; color: var(--v4-white); box-shadow: inset 0 0 0 1.5px var(--v4-white); }
.v4p-ct-btn--line:hover, .v4p-ct-btn--line:focus-visible { background: rgba(255, 255, 255, .14); color: var(--v4-white); }
.v4p-ct-direct__list { display: grid; gap: var(--sp-2); margin: auto 0 0; padding: var(--sp-4) 0 0; border-top: 1px dashed rgba(255, 255, 255, .4); list-style: none; font: 600 var(--v4-small)/1.4 var(--v4-font); }
.v4p-ct-direct__list a { color: var(--v4-white); overflow-wrap: anywhere; }

/* Nasıl ulaşırsınız: adımlar + künyeli harita */
.v4p-ct-way { padding: var(--section-y) 0 var(--sp-8); background: var(--v4-mint); }
.v4p-ct-way__in { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(24px, 4vw, 56px); align-items: start; width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter))); margin-inline: auto; }
.v4p-ct-steps { margin: var(--sp-5) 0 0; padding: 0; list-style: none; counter-reset: step; }
.v4p-ct-step { --cat-ink: var(--v4-ink); position: relative; display: grid; gap: var(--sp-2); justify-items: start; padding: 0 0 var(--sp-5) 56px; counter-increment: step; }
.v4p-ct-step::before {
  content: counter(step); position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 36px; height: 36px;
  border-radius: var(--v4-pill); background: var(--cat); color: var(--cat-ink); font: 700 var(--v4-body)/1 var(--v4-font);
}
.v4p-ct-step:not(:last-child)::after { content: ""; position: absolute; left: 17px; top: 44px; bottom: var(--sp-2); border-left: 2px dashed var(--v4-field-line); }
.v4p-ct-step h3 { margin: 0; font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4p-ct-step p, .v4p-ct-step address { margin: 0; font-style: normal; color: var(--v4-text); }
.v4p-ct-step address { font-weight: 600; color: var(--v4-ink); }
.v4p-ct-btn--ghost { background: var(--v4-white); color: var(--v4-blue-deep); box-shadow: inset 0 0 0 1.5px var(--v4-blue-deep); }
.v4p-ct-btn--ghost:hover, .v4p-ct-btn--ghost:focus-visible { background: var(--v4-sky); color: var(--v4-blue-deep); }
.v4p-ct-step__tel { display: inline-flex; align-items: center; min-height: 44px; font: 700 var(--v4-body)/1 var(--v4-font); color: var(--v4-blue-deep); }
.v4p-ct-map { position: relative; overflow: hidden; border: 1.5px solid var(--v4-ink); border-radius: var(--v4-radius); outline: 1px solid var(--v4-field-line); outline-offset: 5px; background: var(--v4-white); }
.v4p-ct-map iframe { display: block; width: 100%; height: clamp(360px, 40vw, 520px); border: 0; }
.v4p-ct-north { position: absolute; top: var(--sp-3); right: var(--sp-3); width: 52px; height: 52px; padding: 2px; border-radius: var(--v4-pill); background: var(--v4-white); pointer-events: none; }
.v4p-ct-north__ring { fill: none; stroke: var(--v4-ink); stroke-width: 1.5; }
.v4p-ct-north__arrow { fill: var(--v4-ink); }
.v4p-ct-north__n { fill: var(--v4-ink); font: 700 9px/1 var(--v4-font); }
.v4p-ct-cart { position: absolute; left: var(--sp-4); bottom: var(--sp-4); width: min(340px, calc(100% - 2 * var(--sp-4))); border: 1.5px solid var(--v4-ink); background: var(--v4-white); font-size: var(--v4-small); }
.v4p-ct-cart__head { margin: 0; padding: var(--sp-2) var(--sp-3); background: var(--v4-ink); font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: var(--v4-white); }
.v4p-ct-cart dl { margin: 0; }
.v4p-ct-cart__row { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: var(--sp-3); padding: var(--sp-2) var(--sp-3); }
.v4p-ct-cart__row + .v4p-ct-cart__row { border-top: 1px solid var(--v4-line); }
.v4p-ct-cart dt { color: var(--v4-muted); }
.v4p-ct-cart dd { margin: 0; font-weight: 600; color: var(--v4-ink); overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.v4p-ct-cart dd a { color: var(--v4-blue-deep); }

@media (max-width: 1000px) {
  .v4p-ct-frame { grid-template-columns: minmax(0, 1fr); }
  .v4p-ct-direct { border-left: 0; border-top: 1px solid var(--v4-ink); }
  .v4p-ct-way__in { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
  .v4p-ct-hero__in { grid-template-columns: minmax(0, 1fr); padding-bottom: var(--sp-6); }
  .v4p-ct-hero__art { display: none; }
  .v4p-ct-hero__topo { width: 100%; opacity: .6; }
  .v4p-ct-hero__coord { border-radius: var(--v4-radius); }
}
@media (max-width: 600px) {
  .v4p-ct-form, .v4p-ct-direct { padding: var(--sp-5) var(--sp-4); }
  .v4p-ct-grid { grid-template-columns: minmax(0, 1fr); }
  .v4p-ct-submit .v4-btn, .v4p-ct-direct__btns .v4-btn { width: 100%; justify-content: center; }
  .v4p-ct-direct__btns { justify-items: stretch; }
  .v4p-ct-cart { position: static; width: auto; border-width: 1.5px 0 0; }
  .v4p-ct-cart__row { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .v4p-ct-map iframe { height: 300px; }
}
@media (prefers-reduced-motion: reduce) {
  .v4p-ct-chip { transition: none; }
}

/* ==== 11-v4-kurumsal.css ================================================ */
/* ============================================================================
 * 11 · V4 KURUMSAL — Hakkımızda, Tarihçe, Kalite, İnsan Kaynakları, Logo, serbest sayfa
 * (referans docs/tasarim/gpt-konsept/yon2/v4.png). Önek: .v4k-
 * Bölüm şeritleri mint / beyaz / açık mavi sırayla değişir; kartlar anasayfadaki dört renk dizisini izler
 * (07-v4-temel.css token'ları, .v4-cat[data-cat] → --cat / --cat-ink). 08 ve 09 parçalarına dokunmaz.
 * Kırılımlar: 1024 · 860 (tek sütun) · 640 (dar).
 * ========================================================================= */

.v4k {
  display: block;
  overflow-x: clip;
  background: var(--v4-white);
  color: var(--v4-text);
  font: 400 var(--v4-body)/1.6 var(--v4-font);
}
.v4k img { display: block; max-width: 100%; }

/* Kategori rengine bağlı pastel zemin (kart gövdeleri) */
.v4k .v4-cat { --tint: rgba(28, 182, 226, .11); }
.v4k .v4-cat[data-cat="kadastro"] { --tint: rgba(249, 210, 92, .26); }
.v4k .v4-cat[data-cat="imar"] { --tint: rgba(242, 107, 79, .11); }
.v4k .v4-cat[data-cat="santiye"] { --tint: rgba(47, 179, 95, .12); }

.v4k-wrap { width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter))); margin-inline: auto; }
.v4k-band { padding-block: var(--v4-section); background: var(--v4-white); }
.v4k-band--mint { background: var(--v4-mint); }
.v4k-band--sky { background: var(--v4-sky); }
.v4k-band--tight { padding-block: var(--section-y); }

/* İkili başlık: eyebrow + başlık solda, açıklama sağda */
.v4k-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px 48px; margin-bottom: var(--head-gap); }
.v4k-head__lead { max-width: 430px; }

.v4k-link { display: inline-flex; align-items: center; gap: 6px; margin-top: 16px; color: var(--v4-blue-deep); font: 700 var(--v4-small)/1.3 var(--v4-font); text-decoration: none; }
.v4k-link:hover, .v4k-link:focus-visible { text-decoration: underline; text-underline-offset: 3px; }
.v4k-link .apl-icon { width: 16px; height: 16px; }

/* Okuma metni: sol renkli çizgi, 720px */
.v4k-story { max-width: 720px; margin-top: 16px; padding-left: 0; font: 400 var(--v4-body)/1.75 var(--v4-font); }
.v4k-story:empty { display: none; }
.v4k-story > * + *, .v4k-text > * + * { margin-top: 14px; }
.v4k-story ul, .v4k-text ul { padding-left: 20px; list-style: disc; }
.v4k-story li + li, .v4k-text li + li { margin-top: 6px; }
.v4k-story a, .v4k-text a { color: var(--v4-blue-deep); text-decoration: underline; text-underline-offset: 2px; }
.v4k-text { font-size: var(--v4-small); line-height: 1.65; }

/* ------------------------------------------------------------ HAKKIMIZDA · açılış (sayfa başı + büromuzu tanıyın) */
.v4k-open { position: relative; overflow: hidden; background: var(--v4-mint); }
.v4k-open::after { content: ""; position: absolute; inset: auto 0 0; height: 6px; background: linear-gradient(90deg, var(--v4-blue) 0 25%, var(--v4-yellow) 25% 50%, var(--v4-orange) 50% 75%, var(--v4-green) 75% 100%); }
.v4k-open__topo { position: absolute; inset: 0 0 0 auto; width: 56%; height: 100%; color: #b9e3d5; pointer-events: none; -webkit-mask-image: linear-gradient(90deg, transparent, #000 45%); mask-image: linear-gradient(90deg, transparent, #000 45%); }
.v4k-open__in { position: relative; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); align-items: center; gap: var(--sp-7); padding-block: var(--sp-6) var(--sp-8); }
.v4k-open__copy { max-width: 640px; }
.v4k-open__copy .v4-ph2__crumbs ol { display: flex; flex-wrap: wrap; gap: var(--sp-2); font: 500 13px/20px var(--v4-font); color: var(--v4-muted); }
.v4k-open__copy .v4-ph2__crumbs li + li::before { content: "/"; margin-right: var(--sp-2); color: var(--v4-muted); }
.v4k-open__copy .v4-ph2__crumbs a { color: var(--v4-blue-deep); text-decoration: none; }
.v4k-open__copy .v4-ph2__crumbs a:hover, .v4k-open__copy .v4-ph2__crumbs a:focus-visible { text-decoration: underline; }
.v4k-open__copy .v4-ph2__crumbs [aria-current] { color: var(--v4-ink); }
.v4k-open__title { display: flex; flex-direction: column; gap: var(--sp-2); margin-top: var(--sp-5); font: 700 var(--v4-h1)/1.1 var(--v4-font); letter-spacing: -.02em; color: var(--v4-ink); }
.v4k-open__kicker { font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: var(--v4-blue-deep); }
.v4k-open__story { margin-top: var(--sp-5); font: 400 var(--v4-body)/1.75 var(--v4-font); color: var(--v4-text); }
.v4k-open__story > * + * { margin-top: var(--sp-3); }
.v4k-open__story > :first-child { font: 600 var(--v4-h3)/1.6 var(--v4-font); color: var(--v4-ink); }
.v4k-open__act { margin-top: var(--sp-5); }
.v4k-open__act:focus-visible { outline: 2px solid var(--v4-blue-deep); outline-offset: 3px; }
.v4k-open__visual { position: relative; padding: 0 0 var(--sp-6) var(--sp-6); }
.v4k-open__art { aspect-ratio: 4 / 5; max-height: 460px; width: 100%; margin: 0; overflow: hidden; border-radius: var(--v4-radius); background: var(--v4-white); }
.v4k-open__art img { width: 100%; height: 100%; object-fit: cover; object-position: 60% 50%; }
.v4k-open__year { position: absolute; top: var(--sp-5); left: 0; display: flex; flex-direction: column; gap: var(--sp-1); padding: var(--sp-3) var(--sp-5); border-radius: var(--v4-radius); background: var(--v4-yellow); color: var(--v4-ink); }
.v4k-open__year strong { font: 700 var(--v4-num)/1 var(--v4-font); letter-spacing: -.02em; }
.v4k-open__year span { font: 600 var(--v4-small)/1.2 var(--v4-font); }
.v4k-open__founder { position: absolute; left: 0; bottom: 0; display: flex; align-items: center; gap: var(--sp-3); padding: var(--sp-3) var(--sp-4) var(--sp-3) var(--sp-3); border-radius: var(--v4-radius); background: var(--v4-white); box-shadow: 0 8px 24px rgba(15, 29, 43, .12); }
.v4k-open__founder img { width: 56px; height: 56px; object-fit: cover; border-radius: 8px; background: var(--v4-sky); }
.v4k-open__founder p { display: flex; flex-direction: column; gap: 2px; }
.v4k-open__founder strong { font: 700 var(--v4-body)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4k-open__founder span { font: 600 var(--v4-small)/1.3 var(--v4-font); color: var(--v4-blue-deep); }

/* ------------------------------------------------------------ çalışma alanları (gövde liste + h3 blokları + kategori şeridi) */
.v4k-scope { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: start; gap: var(--sp-7); }
.v4k-jobs { margin-top: var(--sp-5); }
.v4k-jobs ul { display: grid; list-style: none; border-top: 1px solid rgba(15, 29, 43, .14); }
.v4k-jobs li { position: relative; padding: var(--sp-3) 0 var(--sp-3) var(--sp-5); border-bottom: 1px solid rgba(15, 29, 43, .14); color: var(--v4-ink); font: 600 var(--v4-body)/1.45 var(--v4-font); }
.v4k-jobs li::before { content: ""; position: absolute; left: 0; top: 20px; width: 8px; height: 8px; border-radius: 2px; background: var(--v4-blue); }
.v4k-jobs p { font-size: var(--v4-small); }
.v4k-disc { display: grid; gap: var(--sp-4); list-style: none; counter-reset: disc; }
.v4k-disc__item { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: var(--sp-4); padding: var(--sp-5); border: 1px solid var(--v4-line); border-radius: var(--v4-radius); background: var(--v4-white); counter-increment: disc; }
.v4k-disc__item::before { content: counter(disc, decimal-leading-zero); font: 700 32px/1 var(--v4-font); letter-spacing: -.02em; color: var(--v4-blue); }
.v4k-disc__item h3 { margin-bottom: var(--sp-2); font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4k-cats { margin-top: var(--sp-7); padding-top: var(--sp-6); border-top: 1px solid rgba(15, 29, 43, .14); }
.v4k-cats--alone { margin-top: 0; padding-top: 0; border-top: 0; }
.v4k-cats__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--sp-2) var(--sp-6); margin-bottom: var(--sp-5); }
.v4k-cats__title { font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4k-cats__lead { max-width: 52ch; font: 400 var(--v4-small)/1.6 var(--v4-font); color: var(--v4-muted); }
.v4k-cats__list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--grid-gap); list-style: none; }
.v4k-cat { overflow: hidden; border-radius: var(--v4-radius); background: var(--cat); color: var(--cat-ink); transition: transform .18s ease; }
.v4k-cat:hover { transform: translateY(-3px); }
.v4k-cat__link { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 120px; align-items: stretch; min-height: 112px; color: inherit; text-decoration: none; }
.v4k-cat__link:focus-visible { outline: 3px solid var(--v4-ink); outline-offset: -3px; }
.v4k-cat__text { display: flex; flex-direction: column; justify-content: center; gap: var(--sp-1); padding: var(--sp-4) 0 var(--sp-4) var(--sp-5); }
.v4k-cat__name { font: 700 var(--v4-h3)/1.25 var(--v4-font); }
.v4k-cat__count { font: 600 var(--v4-small)/1.3 var(--v4-font); }
.v4k-cat__link > .apl-icon { position: absolute; right: var(--sp-3); top: var(--sp-3); width: 18px; height: 18px; padding: 3px; box-sizing: content-box; border-radius: 50%; background: var(--v4-white); color: var(--v4-ink); transition: transform .18s ease; }
.v4k-cat:hover .v4k-cat__link > .apl-icon { transform: translate(2px, -2px); }
.v4k-cat__art { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; grid-column: 2; grid-row: 1; }

/* ------------------------------------------------------------ kilometre taşları */
.v4k-miles { position: relative; display: flex; gap: 24px; list-style: none; }
.v4k-miles::before { content: ""; position: absolute; top: 9px; left: 0; right: 0; height: 2px; background: rgba(15, 29, 43, .14); }
.v4k-mile { position: relative; display: flex; flex: 1 1 0; flex-direction: column; gap: 4px; min-width: 0; padding-top: 36px; }
.v4k-mile__dot { position: absolute; top: 0; left: 0; width: 20px; height: 20px; border-radius: 50%; background: var(--cat); box-shadow: 0 0 0 4px var(--v4-mint); }
.v4k-mile strong { font: 700 26px/1.1 var(--v4-font); letter-spacing: -.01em; color: var(--v4-blue-deep); }
.v4k-mile__title { font: 700 var(--v4-body)/1.35 var(--v4-font); color: var(--v4-ink); }
.v4k-mile__text { max-width: 36ch; font: 400 var(--v4-small)/1.55 var(--v4-font); color: var(--v4-muted); }

/* ------------------------------------------------------------ rakamlar */
.v4k-stats { display: flex; }
.v4k-stats > div { display: flex; flex: 1 1 0; flex-direction: column-reverse; align-items: center; gap: 2px; padding-inline: 16px; border-left: 1px solid rgba(15, 29, 43, .14); text-align: center; }
.v4k-stats > div:first-child { border-left: 0; }
.v4k-stats dd { font: 700 var(--v4-num)/1.05 var(--v4-font); letter-spacing: -.02em; color: var(--v4-blue); }
.v4k-stats dt { font: 500 16px/1.3 var(--v4-font); color: var(--v4-ink); }

/* ------------------------------------------------------------ avantajlar */
.v4k-values { display: grid; gap: var(--grid-gap); list-style: none; }
.v4k-values--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.v4k-values--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.v4k-value { padding: 24px; border-radius: var(--v4-radius); background: var(--tint); }
.v4k-value h3 { margin-top: 18px; }
.v4k-value p { font: 400 var(--v4-small)/1.65 var(--v4-font); color: var(--v4-text); }

/* ------------------------------------------------------------ ekip önizlemesi */
.v4k-team { display: grid; grid-template-columns: minmax(220px, 34%) minmax(0, 1fr); align-items: start; gap: 28px clamp(24px, 4vw, 56px); }
.v4k-team__head .v4-title { max-width: 14ch; margin-bottom: var(--sp-3); }
.v4k-people { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--grid-gap); list-style: none; }
.v4k-person { display: flex; flex-direction: column; gap: 2px; font: 400 var(--v4-small)/1.45 var(--v4-font); color: var(--v4-muted); }
.v4k-person img { width: 100%; aspect-ratio: 1; margin-bottom: 10px; object-fit: cover; border-radius: var(--v4-radius); background: var(--cat); }
.v4k-person__name { font: 700 var(--v4-h3)/1.35 var(--v4-font); color: var(--v4-ink); }
.v4k-person__role { font: 600 var(--v4-small)/1.4 var(--v4-font); color: var(--v4-blue-deep); }

/* ------------------------------------------------------------ KURUMSAL · iki sütun */
.v4k-corp { display: grid; grid-template-columns: 232px minmax(0, 1fr); align-items: start; gap: clamp(28px, 4vw, 56px); }
.v4k-corp__side { position: sticky; top: 96px; }
.v4k-corp__main { min-width: 0; }
.v4k-corp__intro { display: grid; gap: 28px; }
.v4k-corp__intro.has-figure { grid-template-columns: minmax(0, 1fr) minmax(200px, 280px); align-items: center; gap: 32px; }
.v4k-corp__intro + * { margin-top: 40px; }

/* Yapışkan yan menü (kurumsal + yasal sayfalar) */
.v4k-side__title { display: block; margin-bottom: 10px; font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: var(--v4-blue-deep); }
.v4k-side ul { display: grid; gap: 2px; list-style: none; }
.v4k-side a { display: flex; align-items: center; gap: 12px; min-height: 44px; padding: 8px 12px; border-radius: 8px; color: var(--v4-text); font: 600 var(--v4-small)/1.35 var(--v4-font); text-decoration: none; transition: background-color .15s ease; }
.v4k-side a::before { content: ""; flex: none; width: 10px; height: 10px; border-radius: 50%; background: var(--cat); box-shadow: inset 0 0 0 1px rgba(15, 29, 43, .16); opacity: .45; transition: opacity .15s ease; }
.v4k-side a:hover, .v4k-side a:focus-visible { background: var(--v4-sky); }
.v4k-side a:hover::before, .v4k-side a:focus-visible::before { opacity: 1; }
.v4k-side a.is-active { background: var(--v4-sky); color: var(--v4-ink); font-weight: 700; }
.v4k-side a.is-active::before { opacity: 1; box-shadow: 0 0 0 3px var(--v4-white), 0 0 0 5px var(--cat); }

.v4k-figure { margin: 0; padding: 16px; border-radius: var(--v4-radius); background: var(--v4-sky); color: var(--v4-ink); }
.v4k-figure__svg { display: block; width: 100%; height: auto; }
.v4k-vec-accent { color: var(--v4-blue); }

/* Numaralı renkli kartlar */
.v4k-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--grid-gap); list-style: none; }
.v4k-card { padding: 22px; border-radius: var(--v4-radius); background: var(--tint); }
.v4k-card h3 { margin-top: 14px; }

/* Dikey zaman çizgisi (tarihçe) */
.v4k-vt { position: relative; display: grid; gap: 16px; padding-left: 36px; list-style: none; }
.v4k-vt::before { content: ""; position: absolute; top: 12px; bottom: 12px; left: 8px; width: 2px; background: var(--v4-line); }
.v4k-vt__item { position: relative; }
.v4k-vt__dot { position: absolute; top: 22px; left: -36px; width: 18px; height: 18px; border-radius: 50%; background: var(--cat); box-shadow: 0 0 0 4px var(--v4-white); }
.v4k-vt__card { padding: 18px 22px; border-radius: var(--v4-radius); background: var(--tint); }

/* Dört renkli ilke kartı (kalite) */
.v4k-principles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--grid-gap); list-style: none; }
.v4k-principle { padding: 24px; border-radius: var(--v4-radius); background: var(--cat); color: var(--cat-ink); }
.v4k-principle h3 { margin-top: 0; margin-bottom: 8px; font: 700 var(--v4-h3)/1.3 var(--v4-font); color: inherit; }
.v4k-principle .v4k-text { color: inherit; }
.v4k-principle .v4k-text a { color: inherit; }

/* Başvuru çağrısı (insan kaynakları) */
.v4k-cta { display: flex; align-items: center; justify-content: space-between; gap: 20px 32px; margin-top: 40px; padding: 28px 32px; border-radius: var(--v4-radius); background: var(--v4-blue); color: var(--v4-white); }
.v4k-cta h2 { font: 700 var(--v4-h3)/1.2 var(--v4-font); letter-spacing: -.01em; color: var(--v4-white); }
.v4k-cta p { max-width: 46ch; margin-top: 8px; color: var(--v4-white); }
.v4k-cta__actions { display: flex; flex: none; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.v4k-cta__link { color: var(--v4-white); font: 700 var(--v4-small)/1.3 var(--v4-font); text-decoration: underline; text-underline-offset: 3px; }

/* Logo panelleri */
.v4k-logos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--grid-gap); margin-bottom: 24px; }
.v4k-logos__tile { display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 20px; min-height: 200px; margin: 0; padding: 32px 24px 16px; border: 1px solid var(--v4-line); border-radius: var(--v4-radius); background: var(--v4-white); }
.v4k-logos__tile img { width: min(260px, 100%); height: auto; margin-block: auto; }
.v4k-logos__tile figcaption { font: 600 var(--v4-small)/1.3 var(--v4-font); color: var(--v4-muted); }
.v4k-logos__tile--dark { border-color: var(--v4-ink); background: var(--v4-ink); }
.v4k-logos__tile--dark figcaption { color: var(--v4-white); }

.v4k-empty { padding: 40px 24px; border: 1px dashed var(--v4-line); border-radius: var(--v4-radius); text-align: center; }
.v4k-empty h2 { font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4k-empty p { margin-top: 6px; color: var(--v4-muted); }

/* ------------------------------------------------------------ SERBEST SAYFA · okuma düzeni */
.v4k-doc { display: grid; grid-template-columns: minmax(0, 720px) 272px; align-items: start; justify-content: center; gap: var(--sp-6); }
.v4k-doc.has-nav { grid-template-columns: 200px minmax(0, 720px) 260px; gap: 32px; }
.v4k-doc__nav { position: sticky; top: 96px; }
.v4k-read { min-width: 0; }
.v4k-aside { position: sticky; top: 96px; padding: 24px; border-radius: var(--v4-radius); background: var(--v4-blue); color: var(--v4-white); }
.v4k-aside h2 { font: 700 var(--v4-h3)/1.25 var(--v4-font); color: var(--v4-white); }
.v4k-aside p { margin-top: 8px; font-size: var(--v4-small); line-height: 1.6; color: var(--v4-white); }
.v4k-aside__facts { display: grid; gap: 10px; margin: 18px 0; list-style: none; font: 600 var(--v4-small)/1.3 var(--v4-font); }
.v4k-aside__facts li { display: flex; align-items: center; gap: 10px; min-width: 0; overflow-wrap: anywhere; }
.v4k-aside__facts .apl-icon { flex: none; width: 18px; height: 18px; }
.v4k-aside__facts a { color: inherit; text-decoration: none; }
.v4k-aside__facts a:hover, .v4k-aside__facts a:focus-visible { text-decoration: underline; }

.v4k-prose { max-width: 720px; font: 400 var(--v4-body)/1.8 var(--v4-font); color: var(--v4-text); }
.v4k-prose > * + * { margin-top: 16px; }
.v4k-prose h2 { margin-top: 40px; font: 700 var(--v4-h2)/1.25 var(--v4-font); letter-spacing: -.01em; color: var(--v4-ink); }
.v4k-prose > h2:first-child { margin-top: 0; }
.v4k-prose h3 { margin-top: 28px; font: 700 var(--v4-h3)/1.35 var(--v4-font); color: var(--v4-ink); }
.v4k-prose ul { padding-left: 20px; list-style: disc; }
.v4k-prose ol { padding-left: 22px; list-style: decimal; }
.v4k-prose li + li { margin-top: 6px; }
.v4k-prose li::marker { color: var(--v4-blue); }
.v4k-prose a { color: var(--v4-blue-deep); text-decoration: underline; text-underline-offset: 2px; }
.v4k-prose strong { color: var(--v4-ink); }
.v4k-prose blockquote { padding: 4px 0 4px 20px; border-left: 2px solid var(--v4-line); color: var(--v4-ink); }
.v4k-prose table { width: 100%; border-collapse: collapse; font-size: var(--v4-small); }
.v4k-prose th, .v4k-prose td { padding: 10px 12px; border-bottom: 1px solid var(--v4-line); text-align: left; vertical-align: top; }
.v4k-prose th { background: var(--v4-sky); color: var(--v4-ink); font-weight: 700; }
.v4k-prose img { max-width: 100%; height: auto; border-radius: var(--v4-radius); }

/* ------------------------------------------------------------ kırılımlar */
@media (max-width: 1024px) {
  .v4k-cats__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v4k-values--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v4k-corp { grid-template-columns: 196px minmax(0, 1fr); }
  .v4k-doc.has-nav { grid-template-columns: 188px minmax(0, 1fr); }
  .v4k-doc.has-nav .v4k-aside { grid-column: 2; position: static; }
  .v4k-doc:not(.has-nav) { grid-template-columns: minmax(0, 1fr); }
  .v4k-doc:not(.has-nav) .v4k-aside { position: static; max-width: 720px; }
}

@media (max-width: 860px) {
  .v4k-head { flex-direction: column; align-items: flex-start; }
  .v4k-open__in, .v4k-scope, .v4k-team { grid-template-columns: minmax(0, 1fr); }
  .v4k-open__in { gap: var(--sp-6); padding-block: var(--sp-5) var(--sp-7); }
  .v4k-open__art { aspect-ratio: 4 / 3; max-height: none; }
  .v4k-team__head .v4-title { max-width: none; }
  .v4k-values--3 { grid-template-columns: minmax(0, 1fr); }
  .v4k-stats { flex-wrap: wrap; row-gap: 24px; }
  .v4k-stats > div { flex: 1 1 40%; }
  .v4k-stats > div:nth-child(odd) { border-left: 0; }
  .v4k-miles { flex-direction: column; gap: 20px; padding-left: 36px; }
  .v4k-miles::before { top: 8px; bottom: 8px; left: 9px; right: auto; width: 2px; height: auto; }
  .v4k-mile { padding-top: 0; }
  .v4k-mile__dot { top: 2px; left: -36px; }
  .v4k-corp, .v4k-doc.has-nav { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .v4k-corp__side, .v4k-doc__nav { position: static; }
  .v4k-doc.has-nav .v4k-aside { grid-column: auto; }
  .v4k-side ul { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px; }
  .v4k-side li { flex: none; }
  .v4k-side a { border: 1px solid var(--v4-line); border-radius: var(--v4-pill); white-space: nowrap; }
  .v4k-corp__intro.has-figure { grid-template-columns: minmax(0, 1fr); }
  .v4k-cta { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 640px) {
  .v4k-cats__list, .v4k-cards, .v4k-principles, .v4k-values--4, .v4k-logos { grid-template-columns: minmax(0, 1fr); }
  .v4k-disc__item { grid-template-columns: minmax(0, 1fr); gap: var(--sp-2); padding: var(--sp-4); }
  .v4k-open__visual { padding-left: var(--sp-4); }
  .v4k-open__year { top: var(--sp-4); }
  .v4k-people { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v4k-stats > div { flex: 1 1 100%; padding-block: 0; border-left: 0; }
  .v4k-cta { padding: 24px 20px; }
  .v4k-story { padding-left: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .v4k-cat, .v4k-cat__link > .apl-icon, .v4k-side a, .v4k-side a::before { transition: none; }
  .v4k-cat:hover { transform: none; }
}

/* ==== 12-v4-hizmet.css ================================================== */
/* ============================================================================
 * 12 · V4 HİZMET / EKİP / REFERANS GÖVDELERİ — /hizmetler, /hizmetler/<slug>,
 * /ekibimiz, /referanslar (referans docs/tasarim/gpt-konsept/yon2/v4.png).
 * Token ve ilkeller 07'den (--v4-*, .v4-eyebrow/.v4-title/.v4-btn/.v4-cat).
 * Sayfa başı 09'daki .v4-ph. Önek: .v4z-
 * Kırılımlar: 1100 (yan kutu alta, ızgaralar 2'li) · 860 (chevron dikey) · 640 (tek sütun).
 * ========================================================================= */

.v4z { display: block; overflow-x: clip; }
.v4z img { display: block; max-width: 100%; }
.v4z .apl-icon { width: 1em; height: 1em; }
.v4z-wrap { width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter))); margin-inline: auto; }

/* ------------------------------------------------------------- Sekmeler */
.v4z-tabbar { padding: var(--sp-5) 0; background: var(--v4-white); }
.v4z-tabs { margin-bottom: 0; }

/* ---------------------------------------------------------------- Bantlar */
.v4z-band { padding: var(--section-y) 0; background: var(--v4-white); }
.v4z-band--tint { background: var(--v4-sky); }
.v4z-band--mint { background: var(--v4-mint); }
.v4z-band--team { padding-top: var(--section-y); }

/* Kategori başlık kartı: kendi renginde, solda metin, sağda düz illüstrasyon */
.v4z-bandhead {
  position: relative;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  overflow: hidden;
  min-height: 200px;
  margin-bottom: var(--grid-gap);
  border-radius: var(--v4-radius);
  background: var(--cat);
  color: var(--cat-ink);
}
.v4z-bandhead__copy { position: relative; z-index: 1; display: flex; flex: 1 1 auto; flex-direction: column; align-items: flex-start; max-width: 560px; padding: 24px 28px; }
.v4z-bandhead__eyebrow { margin-bottom: 8px; font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; opacity: .92; }
.v4z-bandhead__title { font: 700 var(--v4-h2)/1.18 var(--v4-font); letter-spacing: -.01em; }
.v4z-bandhead__text { max-width: 44ch; margin-top: 8px; font: 500 var(--v4-small)/1.55 var(--v4-font); }
.v4z-bandhead__count {
  margin-top: auto;
  padding: 6px 12px;
  border-radius: var(--v4-pill);
  background: var(--v4-white);
  color: var(--v4-ink);
  font: 700 var(--v4-eyebrow)/1 var(--v4-font);
}
.v4z-bandhead__copy > .v4z-bandhead__text + .v4z-bandhead__count { margin-top: 16px; }
.v4z-bandhead__art { position: absolute; top: 0; right: 0; bottom: 0; width: 56%; max-width: none; height: 100%; object-fit: cover; object-position: right center; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 22%); mask-image: linear-gradient(90deg, transparent 0, #000 22%); }

/* ----------------------------------------------------------- Hizmet kartı */
.v4z-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--grid-gap); }
.v4z-cards--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.v4z-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  transition: transform .18s ease, box-shadow .18s ease;
}
.v4z-card:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(15, 29, 43, .09); }
.v4z-card:focus-within { outline: 3px solid var(--v4-ink); outline-offset: 2px; }
.v4z-card__media { margin: 0; aspect-ratio: 16 / 10; background: var(--v4-sky); }
.v4z-card__media img { width: 100%; height: 100%; object-fit: cover; }
.v4z-card__body { display: flex; flex: 1 1 auto; flex-direction: column; align-items: flex-start; gap: 8px; padding: var(--sp-4) var(--sp-4) var(--sp-3); }
.v4z-card__tag { padding: 4px 10px; border-radius: var(--v4-pill); background: var(--cat); color: var(--cat-ink); font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .02em; }
.v4z-card__title { font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4z-card__title a { color: inherit; text-decoration: none; }
.v4z-card__title a::after { content: ""; position: absolute; inset: 0; }
.v4z-card__title a:focus-visible { outline: 0; }
.v4z-card__text {
  font: 400 var(--v4-small)/1.55 var(--v4-font);
  color: var(--v4-muted);
}
.v4z-card__more { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 4px; font: 700 var(--v4-small)/1 var(--v4-font); color: var(--v4-blue-deep); }
.v4z-card__more .apl-icon { font-size: 15px; }

/* ----------------------------------------------------- Süreç chevron şeridi */
.v4z-process { padding: var(--section-y) 0; background: var(--v4-sky); }
.v4z-process__inner { display: grid; grid-template-columns: minmax(180px, 21%) minmax(0, 1fr); align-items: start; gap: 24px 32px; }
.v4z-process__head .v4-title { max-width: 12ch; }

.v4z-flow { --tip: 28px; display: flex; }
.v4z-step {
  position: relative;
  display: flex;
  flex: 1 1 0;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 132px;
  padding: 18px calc(var(--tip) + 8px) 18px calc(var(--tip) + 12px);
  margin-left: calc(var(--tip) * -1 + 3px);
  background: var(--cat);
  color: var(--cat-ink);
  clip-path: polygon(0 0, calc(100% - var(--tip)) 0, 100% 50%, calc(100% - var(--tip)) 100%, 0 100%, var(--tip) 50%);
}
.v4z-step:first-child {
  margin-left: 0;
  padding-left: 22px;
  clip-path: polygon(0 0, calc(100% - var(--tip)) 0, 100% 50%, calc(100% - var(--tip)) 100%, 0 100%);
}
.v4z-step > .apl-icon { flex: 0 0 auto; font-size: 28px; }
.v4z-step h3 { font: 700 var(--v4-small)/1.3 var(--v4-font); }
.v4z-step p {
  margin-top: var(--sp-1);
  font: 400 var(--v4-eyebrow)/1.45 var(--v4-font);
}

/* ---------------------------------------------------------------- Rakamlar */
.v4z-stats { padding: var(--section-y) 0; background: var(--v4-white); }
.v4z-stats__list { display: flex; gap: var(--grid-gap); }
.v4z-stats__list > div {
  display: flex;
  flex: 1 1 0;
  flex-direction: column-reverse;
  align-items: center;
  gap: 2px;
  padding-inline: 0;
  border-left: 1px solid var(--v4-line);
  text-align: center;
}
.v4z-stats__list > div:first-child { border-left: 0; }
.v4z-stats__list dd { font: 700 var(--v4-num)/1.05 var(--v4-font); letter-spacing: -.02em; color: var(--v4-blue); }
.v4z-stats__list > div:nth-child(2) dd { color: var(--v4-orange); }
.v4z-stats__list > div:nth-child(3) dd { color: var(--v4-green); }
.v4z-stats__list > div:nth-child(4) dd { color: var(--v4-ink); }
.v4z-stats__list dt { font: 500 15px/1.3 var(--v4-font); color: var(--v4-ink); }

/* --------------------------------------------------------- Referans logoları */
.v4z-logos { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--grid-gap); }
.v4z-logo {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 100%;
  min-height: 112px;
  padding: var(--sp-4);
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  color: var(--v4-ink);
  text-align: center;
  text-decoration: none;
  transition: transform .18s ease;
}
.v4z-logo img { width: 100%; max-width: 140px; height: 48px; object-fit: contain; filter: grayscale(1); opacity: .78; transition: filter .18s ease, opacity .18s ease; }
.v4z-logo:hover, .v4z-logo:focus-visible { transform: translateY(-2px); }
.v4z-logo:hover img, .v4z-logo:focus-visible img { filter: none; opacity: 1; }
.v4z-logo:focus-visible { outline: 3px solid var(--v4-ink); outline-offset: 2px; }
.v4z-logo__name { font: 700 var(--v4-small)/1.35 var(--v4-font); }
.v4z-logo__name--sub { font-weight: 500; font-size: var(--v4-eyebrow); color: var(--v4-muted); }

/* ------------------------------------------------------------------- Ekip */
.v4z-team { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--grid-gap); }
.v4z-person { display: flex; flex-direction: column; min-width: 0; }
.v4z-person__photo { position: relative; overflow: hidden; margin: 0; aspect-ratio: 1; border-radius: var(--v4-radius); background: var(--cat); }
.v4z-person__photo img { width: 100%; height: 100%; object-fit: cover; object-position: center 22%; filter: grayscale(1) brightness(1.3) contrast(1.05); mix-blend-mode: multiply; }
.v4z-person__photo--art img { filter: none; mix-blend-mode: normal; object-position: center; }
.v4z-person__body { display: flex; flex: 1 1 auto; flex-direction: column; padding: 14px 2px 0; }
.v4z-person__name { font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4z-person__role { margin-top: 2px; font: 700 var(--v4-eyebrow)/1.3 var(--v4-font); letter-spacing: .06em; text-transform: uppercase; color: var(--v4-blue-deep); }
.v4z-person__bio { margin-top: 8px; font: 400 var(--v4-small)/1.55 var(--v4-font); color: var(--v4-text); }
.v4z-person__contact { display: flex; flex-direction: column; gap: 6px; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--v4-line); font: 500 var(--v4-eyebrow)/1.4 var(--v4-font); }
.v4z-person__contact li { display: flex; align-items: flex-start; gap: 8px; min-width: 0; }
.v4z-person__contact .apl-icon { flex: 0 0 auto; margin-top: 1px; font-size: 14px; color: var(--v4-blue-deep); }
.v4z-person__contact a { min-width: 0; color: var(--v4-ink); text-decoration: none; overflow-wrap: anywhere; }
.v4z-person__contact a:hover, .v4z-person__contact a:focus-visible { color: var(--v4-blue-deep); text-decoration: underline; }
.v4z-team--compact .v4z-person__body { padding-top: 10px; }

/* "Bizimle çalışın" mavi kart */
.v4z-join {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px 32px;
  padding: clamp(24px, 3vw, 36px);
  border-radius: var(--v4-radius);
  background: var(--v4-blue);
  color: var(--v4-white);
}
.v4z-join__eyebrow { display: block; margin-bottom: 8px; font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; }
.v4z-join h2 { font: 700 var(--v4-h2)/1.18 var(--v4-font); letter-spacing: -.01em; }
.v4z-join p { max-width: 52ch; margin-top: 8px; font: 400 var(--v4-body)/1.6 var(--v4-font); }
.v4z-join .v4-btn { flex: 0 0 auto; }

/* -------------------------------------------------- Hizmet detayı: tanıtım */
.v4z-intro { padding: var(--section-y) 0; background: var(--cat); color: var(--v4-ink); }
.v4z-intro__inner { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 20px; align-items: stretch; }
.v4z-intro__inner--single { grid-template-columns: minmax(0, 1fr); }
.v4z-intro__card { padding: clamp(20px, 3vw, 32px); border-radius: var(--v4-radius); background: var(--v4-white); }
.v4z-intro__sub { margin: 20px 0 14px; font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4z-prose { margin-top: 4px; font: 400 var(--v4-body)/1.7 var(--v4-font); color: var(--v4-text); }
.v4z-prose > * + * { margin-top: 12px; }
.v4z-ticks { display: grid; gap: 10px; }
.v4z-ticks li { display: flex; align-items: flex-start; gap: 12px; font: 600 var(--v4-body)/1.45 var(--v4-font); color: var(--v4-ink); }
.v4z-tick { display: inline-flex; flex: 0 0 24px; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 50%; background: var(--cat); color: var(--cat-ink); font-size: 14px; }
.v4z-intro__media { position: relative; overflow: hidden; min-height: 300px; margin: 0; border-radius: var(--v4-radius); background: rgba(255, 255, 255, .22); }
.v4z-intro__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.v4z-intro__media--art img { object-fit: contain; object-position: center bottom; }

/* ---------------------------------------------- Hizmet detayı: gövde + yan kutu */
.v4z-detail { padding: var(--section-y) 0; background: var(--v4-white); }
.v4z-detail__inner { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 32px; align-items: start; }
.v4z-detail__main { display: grid; gap: clamp(32px, 4vw, 48px); min-width: 0; }
.v4z-block__title { margin-bottom: 16px; font: 700 var(--v4-h2)/1.2 var(--v4-font); letter-spacing: -.01em; color: var(--v4-ink); }
.v4z-block > .v4-eyebrow + .v4z-block__title { margin-top: 0; }

.v4z-shots { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.v4z-shot { overflow: hidden; margin: 0; border-radius: var(--v4-radius); background: var(--v4-sky); }
.v4z-shot img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.v4z-shots--scroll { display: flex; overflow-x: auto; padding-bottom: 8px; scroll-snap-type: x mandatory; }
.v4z-shots--scroll .v4z-shot { flex: 0 0 calc((100% - 24px) / 3); scroll-snap-align: start; }

.v4z-detail .v4z-flow { margin-top: 4px; }
.v4z-detail .v4z-step { min-height: 124px; }

.v4z-aside {
  position: sticky;
  top: 96px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: 24px;
  border-radius: var(--v4-radius);
  background: var(--v4-blue);
  color: var(--v4-white);
}
.v4z-aside__eyebrow { font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; }
.v4z-aside h3 { font: 700 var(--v4-h3)/1.25 var(--v4-font); letter-spacing: -.005em; }
.v4z-aside p { font: 400 var(--v4-small)/1.6 var(--v4-font); }
.v4z-aside .v4-btn { margin-top: 4px; }
.v4z-aside__link { display: inline-flex; align-items: center; gap: 8px; font: 600 var(--v4-small)/1.3 var(--v4-font); color: var(--v4-white); }
.v4z-aside__link:hover, .v4z-aside__link:focus-visible { text-decoration: underline; }

/* ------------------------------------------------------------- Kırılımlar */
@media (max-width: 1100px) {
  .v4z-cards, .v4z-cards--three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v4z-team { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v4z-logos { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .v4z-process__inner { grid-template-columns: 1fr; }
  .v4z-process__head .v4-title { max-width: none; }
  .v4z-detail__inner { grid-template-columns: 1fr; }
  .v4z-aside { position: static; }
  .v4z-intro__inner { grid-template-columns: 1fr; }
  .v4z-intro__media { min-height: 0; aspect-ratio: 16 / 10; }
}

@media (max-width: 860px) {
  .v4z-bandhead__art { width: 48%; }
  .v4z-flow { --tip: 20px; flex-direction: column; }
  .v4z-step,
  .v4z-detail .v4z-step {
    flex: 0 0 auto;
    min-height: 0;
    margin-left: 0;
    margin-top: calc(var(--tip) * -1 + 3px);
    padding: calc(var(--tip) + 12px) 20px calc(var(--tip) + 10px);
    clip-path: polygon(0 0, 50% var(--tip), 100% 0, 100% calc(100% - var(--tip)), 50% 100%, 0 calc(100% - var(--tip)));
  }
  .v4z-step:first-child {
    margin-top: 0;
    padding-top: 18px;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--tip)), 50% 100%, 0 calc(100% - var(--tip)));
  }
  .v4z-step:last-child { padding-bottom: 22px; clip-path: polygon(0 0, 50% var(--tip), 100% 0, 100% 100%, 0 100%); }
  .v4z-step p { display: block; }
  .v4z-logos { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .v4z-join { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 640px) {
  .v4z-bandhead { flex-direction: column; min-height: 0; }
  .v4z-bandhead__copy { max-width: none; padding: 20px; }
  .v4z-bandhead__copy { padding-bottom: 16px; }
  .v4z-bandhead__art { position: static; order: -1; width: 100%; height: 120px; -webkit-mask-image: none; mask-image: none; }
  .v4z-cards, .v4z-cards--three { grid-template-columns: 1fr; gap: 10px; }
  /* 2026-10-05 mobil: 30 fotoğraflı kart 15.800px'lik sayfa yapıyordu → yatay kompakt kart (küçük görsel + başlık + 2 satır özet) */
  .v4z-card { display: grid; grid-template-columns: 96px minmax(0, 1fr); align-items: stretch; }
  .v4z-card:not(:has(.v4z-card__media)) { grid-template-columns: minmax(0, 1fr); }
  .v4z-card__media { aspect-ratio: auto; height: 100%; min-height: 96px; }
  .v4z-card__body { gap: 4px; padding: 12px 40px 12px 14px; }
  .v4z-card__title { font-size: 15.5px; }
  .v4z-card__text { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: 13.5px; }
  .v4z-card__more { position: absolute; top: 50%; right: 14px; margin: 0; padding: 0; font-size: 0; transform: translateY(-50%); }
  .v4z-card__more .apl-icon { font-size: 18px; color: var(--v4-muted); }
  .v4z-band { padding-block: var(--sp-6); }
  .v4z-bandhead { margin-bottom: var(--sp-4); }
  .v4z-bandhead__art { height: 96px; }
  .v4z-team { grid-template-columns: 1fr; gap: 28px; }
  .v4z-person__photo { aspect-ratio: 4 / 3; }
  .v4z-person__photo img { object-position: center 18%; }
  .v4z-logos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v4z-stats__list { flex-wrap: wrap; row-gap: 20px; }
  .v4z-stats__list > div { flex: 1 1 calc(50% - var(--grid-gap)); }
  .v4z-stats__list > div:nth-child(odd) { border-left: 0; }
  .v4z-shots { grid-template-columns: 1fr; }
  .v4z-shots--scroll .v4z-shot { flex-basis: 78%; }
}

@media (prefers-reduced-motion: reduce) {
  .v4z-card, .v4z-logo, .v4z-logo img { transition: none; }
  .v4z-card:hover, .v4z-logo:hover { transform: none; }
}

/* ===== v4d: hizmet detay (2026-10-04, artboard docs/tasarim/hizmet-detay/) =====
   Bölüm sırası: crumb · hero · ne zaman · süreç · teslim · belgeler · SSS · ilgili (CTA bandı footer'dan).
   Hero metni --cat-ink (07: sarı → koyu, diğerleri → beyaz). Sütun sayısı .v4d-n1..4 sınıfıyla. */
.v4d { --cat-soft: var(--v4-sky); }
.v4d[data-cat="kadastro"] { --cat-soft: #fdf6dc; }
.v4d[data-cat="imar"] { --cat-soft: #fdeeea; }
.v4d[data-cat="santiye"] { --cat-soft: #eaf7ee; }
.v4d-crumb { display: flex; flex-wrap: wrap; gap: var(--sp-2); padding: var(--sp-4) 0; font: 500 var(--v4-small)/1.3 var(--v4-font); color: var(--v4-muted); }
.v4d-crumb a { color: var(--v4-blue-deep); text-decoration: none; }
.v4d-crumb a:hover { text-decoration: underline; }
.v4d-sec { padding: var(--section-y) 0; }
.v4d-sec--tint { background: var(--cat-soft); }
.v4d-head { max-width: 640px; margin-bottom: var(--head-gap); }
.v4d-lead { margin-top: var(--sp-3); max-width: 56ch; font: 400 var(--v4-body)/1.6 var(--v4-font); color: var(--v4-muted); }
.v4d-head:only-child .v4d-lead, .v4d-when > .v4d-head:last-child { margin-bottom: 0; }
.v4d-when > .v4d-head:only-child { margin-bottom: 0; }
.v4d-when > .v4d-head:only-child .v4d-lead { margin-top: 0; font-size: var(--v4-h3); line-height: 1.5; color: var(--v4-ink); }

.v4d-hero { background: var(--cat); color: var(--cat-ink); overflow: hidden; }
.v4d-hero__inner { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: var(--sp-7); align-items: center; padding: var(--sp-8) 0; }
.v4d-hero__inner--single { grid-template-columns: minmax(0, 1fr); }
.v4d-hero--flip .v4d-hero__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); }
.v4d-hero--flip .v4d-hero__art { order: -1; }
.v4d-hero__eyebrow { display: inline-block; margin-bottom: var(--sp-4); padding: var(--sp-2) var(--sp-4); border-radius: var(--v4-pill); background: var(--v4-white); color: var(--v4-ink); font: 700 var(--v4-eyebrow)/1 var(--v4-font); letter-spacing: .06em; text-transform: uppercase; }
.v4d-hero__title { margin: 0; color: inherit; font: 700 var(--v4-h1)/1.08 var(--v4-font); letter-spacing: -.015em; overflow-wrap: anywhere; }
.v4d-hero__text { margin-top: var(--sp-4); max-width: 46ch; color: inherit; font: 500 18px/1.55 var(--v4-font); }
.v4d-hero__cta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-4) var(--sp-5); margin-top: var(--sp-6); }
.v4d-hero__btn { background: var(--v4-ink); color: var(--v4-white); }
.v4d-hero__btn:hover { background: var(--v4-text); color: var(--v4-white); }
.v4d-hero__tel { padding-bottom: var(--sp-1); border-bottom: 2px solid currentColor; color: inherit; font: 700 var(--v4-h3)/1 var(--v4-font); text-decoration: none; }
.v4d-hero__art { margin: 0; aspect-ratio: 16 / 10; overflow: hidden; border-radius: var(--v4-radius); background: var(--v4-white); }
.v4d-hero__art img { display: block; width: 100%; height: 100%; object-fit: cover; }

.v4d-when__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--sp-4); margin: 0; padding: 0; list-style: none; }
.v4d-when__grid.v4d-n1 { grid-template-columns: minmax(0, 1fr); }
.v4d-when__grid.v4d-n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v4d-when__grid.v4d-n3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.v4d-when__item { padding: var(--sp-5); border: 1px solid var(--v4-line); border-radius: var(--v4-radius); background: var(--v4-white); color: var(--v4-ink); font: 700 var(--v4-h3)/1.3 var(--v4-font); }

.v4d-steps__list { display: grid; gap: var(--sp-5); margin: 0; padding: 0; list-style: none; }
.v4d-step { position: relative; display: flex; gap: var(--sp-4); }
.v4d-step__no { position: relative; z-index: 1; flex: none; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: var(--cat); color: var(--cat-ink); font: 700 var(--v4-h3)/1 var(--v4-font); font-variant-numeric: tabular-nums; }
.v4d-step h3 { margin: 0; color: var(--v4-ink); font: 700 var(--v4-h3)/1.3 var(--v4-font); }
.v4d-step p { margin-top: var(--sp-2); color: var(--v4-text); font: 400 var(--v4-small)/1.55 var(--v4-font); }
.v4d-step__tags { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin: var(--sp-3) 0 0; padding: 0; list-style: none; }
.v4d-step__tags li { padding: var(--sp-2) var(--sp-3); border: 1px solid var(--v4-line); border-radius: var(--v4-pill); background: var(--v4-white); color: var(--v4-ink); font: 600 var(--v4-small)/1.2 var(--v4-font); }
.v4d-steps--row .v4d-steps__list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--sp-6); }
.v4d-steps--row.v4d-n1 .v4d-steps__list { grid-template-columns: minmax(0, 1fr); }
.v4d-steps--row.v4d-n2 .v4d-steps__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v4d-steps--row.v4d-n3 .v4d-steps__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.v4d-steps--row .v4d-step { flex-direction: column; gap: var(--sp-5); }
.v4d-steps--row .v4d-step::before { content: ""; position: absolute; top: 23px; left: 48px; right: calc(-1 * var(--sp-6)); height: 2px; background: var(--v4-ink); opacity: .18; }
.v4d-steps--row .v4d-step:last-child::before { display: none; }
.v4d-steps--col .v4d-steps__list { gap: 0; }
.v4d-steps--col .v4d-step { padding-bottom: var(--sp-6); }
.v4d-steps--col .v4d-step:last-child { padding-bottom: 0; }
.v4d-steps--col .v4d-step::before { content: ""; position: absolute; top: 48px; bottom: 0; left: 23px; width: 2px; background: var(--v4-ink); opacity: .18; }
.v4d-steps--col .v4d-step:last-child::before { display: none; }
.v4d-steps--col .v4d-step > div { padding-top: var(--sp-3); }
.v4d-steps--split { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--sp-6) var(--sp-8); align-items: start; }
.v4d-steps--split .v4d-head { margin-bottom: 0; }
.v4d-steps--split .v4d-steps__list:only-child { grid-column: 1 / -1; max-width: 820px; }

.v4d-outputs__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap); margin: 0; padding: 0; list-style: none; }
.v4d-outputs__item { padding: var(--sp-5); border-radius: var(--v4-radius); background: var(--cat); color: var(--cat-ink); font: 700 var(--v4-h3)/1.35 var(--v4-font); }
.v4d-outputs--rows .v4d-outputs__list { grid-template-columns: minmax(0, 1fr); gap: 0; max-width: 820px; }
.v4d-outputs--rows .v4d-outputs__item { display: flex; align-items: baseline; gap: var(--sp-4); padding: var(--sp-5) 0; border-top: 1px solid var(--v4-ink); border-radius: 0; background: none; color: var(--v4-ink); }
.v4d-outputs--rows .v4d-outputs__item:last-child { border-bottom: 1px solid var(--v4-ink); }
.v4d-outputs--rows .v4d-outputs__item::before { content: ""; flex: none; width: 12px; height: 12px; border-radius: 50%; background: var(--cat); outline: 1px solid var(--v4-ink); transform: translateY(1px); }

.v4d-docs__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-3) var(--sp-6); margin: 0; padding: 0; list-style: none; }
.v4d-docs__list li { padding: var(--sp-4) 0; border-bottom: 1px solid var(--v4-line); color: var(--v4-ink); font: 600 var(--v4-small)/1.45 var(--v4-font); }

.v4d-faq__item { border-bottom: 1px solid var(--v4-line); }
.v4d-faq__item summary { display: flex; justify-content: space-between; gap: var(--sp-4); padding: var(--sp-4) 0; color: var(--v4-ink); font: 700 var(--v4-h3)/1.4 var(--v4-font); list-style: none; cursor: pointer; }
.v4d-faq__item summary::-webkit-details-marker { display: none; }
.v4d-faq__item summary::after { content: "+"; font-weight: 700; }
.v4d-faq__item[open] summary::after { content: "\2212"; }
.v4d-faq__item p { max-width: 64ch; padding: 0 0 var(--sp-4); color: var(--v4-text); }

.v4d-related__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap); margin: 0; padding: 0; list-style: none; }
.v4d-related__card { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: var(--sp-2); padding: var(--sp-5); border: 1px solid var(--v4-line); border-radius: var(--v4-radius); background: var(--v4-white); }
.v4d-related__tag { padding: var(--sp-1) var(--sp-3); border-radius: var(--v4-pill); background: var(--cat); color: var(--cat-ink); font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); }
.v4d-related__title { margin: 0; color: var(--v4-ink); font: 700 var(--v4-h3)/1.3 var(--v4-font); }
.v4d-related__title a { color: inherit; text-decoration: none; }
.v4d-related__title a::after { content: ""; position: absolute; inset: 0; }
.v4d-related__card:hover .v4d-related__title a, .v4d-related__title a:focus-visible { color: var(--v4-blue-deep); }
.v4d-related__text { margin: 0; color: var(--v4-muted); font: 400 var(--v4-small)/1.55 var(--v4-font); }

@media (max-width: 1100px) {
  .v4d-when__grid, .v4d-when__grid.v4d-n3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v4d-outputs__list, .v4d-related__grid { grid-template-columns: minmax(0, 1fr); }
  .v4d-steps--split { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 860px) {
  .v4d-hero__inner, .v4d-hero--flip .v4d-hero__inner { grid-template-columns: minmax(0, 1fr); gap: var(--sp-6); padding: var(--sp-7) 0; }
  .v4d-hero--flip .v4d-hero__art { order: 0; }
  .v4d-steps--row .v4d-steps__list, .v4d-steps--row.v4d-n2 .v4d-steps__list, .v4d-steps--row.v4d-n3 .v4d-steps__list { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .v4d-steps--row .v4d-step { flex-direction: row; gap: var(--sp-4); padding-bottom: var(--sp-6); }
  .v4d-steps--row .v4d-step:last-child { padding-bottom: 0; }
  .v4d-steps--row .v4d-step > div { padding-top: var(--sp-3); }
  .v4d-steps--row .v4d-step::before { top: 48px; bottom: 0; left: 23px; right: auto; width: 2px; height: auto; }
  .v4d-docs__list { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .v4d-when__grid, .v4d-when__grid.v4d-n2, .v4d-when__grid.v4d-n3 { grid-template-columns: minmax(0, 1fr); }
  .v4d-hero__cta .v4-btn { width: 100%; justify-content: center; }
}

/* ==== 13-v4-icerik.css ================================================== */
/* ============================================================================
 * 13 · V4 İÇERİK SAYFALARI — blog, blog yazısı, galeri, arama, 404, bülten.
 * Önek .v4i-; token'lar 07-v4-temel.css'ten. Sayfa başı (.v4-ph) 09'da.
 * Dil: mint/açık mavi şeritler, dört renkli kategori (data-cat → --cat/--cat-ink),
 * 10px köşe, hap buton, küçük yazı. Kategori rengi her yerde .v4-cat ile gelir.
 * ========================================================================= */

.v4i-page {
  background: var(--v4-white);
  color: var(--v4-text);
  font: 400 var(--v4-body)/1.6 var(--v4-font);
  overflow-x: clip;
}
.v4i-page img { display: block; max-width: 100%; }

.v4i-wrap {
  width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter)));
  margin: 0 auto;
  padding: var(--section-y) 0;
}
.v4i-wrap--band { padding-block: var(--v4-section); }
.v4i-band--sky { background: var(--v4-sky); }
.v4i-band--white { background: var(--v4-white); }

.v4i-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--sp-4) var(--sp-6);
  margin-bottom: var(--head-gap);
}
.v4i-more-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font: 700 var(--v4-small)/1.4 var(--v4-font);
  color: var(--v4-blue-deep);
  text-decoration: none;
}
.v4i-more-link i { width: 16px; height: 16px; }
.v4i-more-link:hover { text-decoration: underline; }

.v4i-btn--ghost { background: var(--v4-white); color: var(--v4-blue-deep); box-shadow: inset 0 0 0 1.5px var(--v4-blue); }
.v4i-btn--ghost:hover,
.v4i-btn--ghost:focus-visible { background: var(--v4-sky); color: var(--v4-blue-deep); }

/* ---- Kategori rozeti ---------------------------------------------------- */
.v4i-badge {
  position: absolute;
  left: 12px;
  bottom: 12px;
  padding: 4px 12px;
  border-radius: var(--v4-pill);
  background: var(--cat);
  color: var(--cat-ink);
  font: 700 var(--v4-eyebrow)/1.4 var(--v4-font);
}
.v4i-badge--solid { position: static; display: inline-block; }

/* ---- Blog: öne çıkan yazı ---------------------------------------------- */
.v4i-feature {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  overflow: hidden;
  border-radius: var(--v4-radius);
  background: var(--v4-mint);
  color: inherit;
  text-decoration: none;
  transition: box-shadow .18s ease;
}
.v4i-feature:hover { box-shadow: 0 0 0 2px var(--cat); }
.v4i-feature__media { display: block; min-height: 320px; overflow: hidden; background: var(--v4-mint-2); }
.v4i-feature__media img { width: 100%; height: 100%; object-fit: cover; }
.v4i-feature__body { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 12px; padding: var(--sp-5); }
.v4i-feature__media + .v4i-feature__body { padding: clamp(24px, 3.5vw, 48px); } /* geniş iç boşluk yalnız görselli kartta; görselsizde bölüm padding'i ile çift olmasın */
.v4i-wrap:has(> .v4i-feature:not(:has(.v4i-feature__media))),
.v4i-wrap:has(> .v4i-empty) { padding-block: var(--sp-5); } /* kart kendi iç boşluğunu taşır; bölüm padding'iyle çift sayılmasın */
.v4i-feature__tags { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.v4i-feature__tags .v4-eyebrow { margin: 0; }
.v4i-feature__title { margin: 0; font: 700 var(--v4-h2)/1.2 var(--v4-font); letter-spacing: -.01em; color: var(--v4-ink); }
.v4i-feature__text { color: var(--v4-muted); }

/* ---- Kategori çipleri --------------------------------------------------- */
.v4i-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.v4i-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 0 16px;
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-pill);
  background: var(--v4-white);
  color: var(--v4-ink);
  font: 700 var(--v4-eyebrow)/1 var(--v4-font);
  text-decoration: none;
  transition: border-color .15s ease;
}
.v4i-chip:hover { border-color: var(--cat, var(--v4-ink)); }
.v4i-chip__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--cat); }
.v4i-chip.is-active { border-color: transparent; background: var(--cat, var(--v4-ink)); color: var(--cat-ink, var(--v4-white)); }
.v4i-chip.is-active .v4i-chip__dot { background: currentColor; }
.v4i-chip:focus-visible { outline: 3px solid var(--v4-ink); outline-offset: 2px; }

/* ---- Yazı kartı --------------------------------------------------------- */
.v4i-posts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap); }
.v4i-post {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  color: inherit;
  text-decoration: none;
  transition: border-color .15s ease, transform .15s ease;
}
.v4i-post:hover { border-color: var(--cat); transform: translateY(-2px); }
.v4i-post__media { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--v4-sky); }
.v4i-post__media img { width: 100%; height: 100%; object-fit: cover; }
.v4i-post__body { display: flex; flex: 1 1 auto; flex-direction: column; gap: 8px; padding: 20px; }
.v4i-post__title { margin: 0; font: 700 var(--v4-h3)/1.35 var(--v4-font); color: var(--v4-ink); }
.v4i-post:hover .v4i-post__title { color: var(--v4-blue-deep); }
.v4i-post__text {
  font-size: var(--v4-small);
  color: var(--v4-muted);
}
.v4i-post__meta { display: flex; flex-wrap: wrap; gap: 4px 12px; margin-top: auto; padding-top: 8px; font-size: var(--v4-small); color: var(--v4-muted); }
.v4i-post__meta > * + *::before { content: "·"; margin-right: 12px; }
.v4i-feature .v4i-post__meta { margin-top: 0; padding-top: 0; }

/* ---- Blog yazısı -------------------------------------------------------- */
.v4i-article { display: grid; grid-template-columns: minmax(0, 720px); justify-content: space-between; gap: 32px 64px; align-items: start; }
.v4i-article--aside { grid-template-columns: minmax(0, 720px) 320px; }
.v4i-article__main { min-width: 0; }
.v4i-cover { margin: 0 0 32px; overflow: hidden; border-radius: var(--v4-radius); background: var(--v4-sky); }
.v4i-cover img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }

.v4i-prose { font-size: 16px; line-height: 1.8; color: var(--v4-text); overflow-wrap: anywhere; }
.v4i-prose > :first-child { margin-top: 0; }
.v4i-prose h2 { margin: 2em 0 .6em; font: 700 clamp(19px, .6vw + 14px, 22px)/1.3 var(--v4-font); letter-spacing: -.005em; color: var(--v4-ink); scroll-margin-top: 96px; }
.v4i-prose h3 { margin: 1.6em 0 .4em; font: 700 18px/1.3 var(--v4-font); color: var(--v4-ink); }
.v4i-prose p, .v4i-prose ul, .v4i-prose ol { margin: 0 0 1.1em; }
.v4i-prose ul, .v4i-prose ol { padding-left: 24px; }
.v4i-prose ul { list-style: disc; }
.v4i-prose ol { list-style: decimal; }
.v4i-prose li { margin-bottom: .35em; }
.v4i-prose li::marker { color: var(--v4-blue); font-weight: 700; }
.v4i-prose strong { color: var(--v4-ink); }
.v4i-prose a { color: var(--v4-blue-deep); text-decoration: underline; text-underline-offset: 3px; }
.v4i-prose img { max-width: 100%; height: auto; border-radius: var(--v4-radius); }
.v4i-prose blockquote { margin: 1.6em 0; padding: 20px 24px; border-radius: var(--v4-radius); background: var(--v4-mint); color: var(--v4-ink); font-size: 17px; font-weight: 600; line-height: 1.6; }
.v4i-prose blockquote > :last-child { margin-bottom: 0; }
.v4i-prose table { width: 100%; border-collapse: collapse; font-size: var(--v4-small); }
.v4i-prose th,
.v4i-prose td { padding: 8px 12px; border: 1px solid var(--v4-line); text-align: left; }
.v4i-prose th { background: var(--v4-sky); color: var(--v4-ink); }

.v4i-side { position: sticky; top: 96px; display: grid; gap: 16px; }
.v4i-toc { padding: 20px; border: 1px solid var(--v4-line); border-radius: var(--v4-radius); background: var(--v4-white); }
.v4i-toc .v4-eyebrow { margin-bottom: 8px; }
.v4i-toc__list { margin: 0; padding: 0; list-style: none; }
.v4i-toc__list li + li { border-top: 1px solid var(--v4-line); }
.v4i-toc__list a { display: block; padding: 8px 0; font: 600 var(--v4-small)/1.4 var(--v4-font); color: var(--v4-text); text-decoration: none; }
.v4i-toc__list a:hover,
.v4i-toc__list a:focus-visible { color: var(--v4-blue-deep); text-decoration: underline; }

.v4i-cta { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 24px; border-radius: var(--v4-radius); background: var(--v4-blue); color: var(--v4-white); }
.v4i-cta__eyebrow { font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; }
.v4i-cta__title { margin: 0; font: 700 var(--v4-h3)/1.25 var(--v4-font); color: var(--v4-white); }
.v4i-cta__text { margin: 0 0 8px; font-size: var(--v4-small); font-weight: 500; color: var(--v4-white); }

/* ---- Galeri: albüm kartları -------------------------------------------- */
.v4i-albums { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap); }
.v4i-album {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  color: inherit;
  text-decoration: none;
  transition: transform .15s ease, border-color .15s ease;
}
.v4i-album:hover { border-color: var(--cat); transform: translateY(-2px); }
.v4i-album__media { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--v4-sky); }
.v4i-album__media img { width: 100%; height: 100%; object-fit: cover; }
.v4i-album__strip { display: block; height: 8px; background: var(--cat); }
.v4i-album__body { display: grid; gap: 4px; padding: 16px 20px 20px; }
.v4i-album__title { font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4i-album__meta { display: flex; align-items: center; justify-content: space-between; font-size: var(--v4-small); font-weight: 600; color: var(--v4-muted); }
.v4i-album__meta i { width: 16px; height: 16px; color: var(--v4-blue-deep); }

/* ---- Galeri: albüm sayfası (mozaik ızgara) ------------------------------ */
.v4i-shots { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: clamp(160px, 18vw, 232px); grid-auto-flow: dense; gap: var(--grid-gap); }
.v4i-shot { margin: 0; min-width: 0; }
.v4i-shot:nth-child(6n + 1) { grid-column: span 2; grid-row: span 2; }
.v4i-shot__open {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: var(--v4-radius);
  background: var(--v4-sky);
  cursor: zoom-in;
}
.v4i-shot__open img { width: 100%; height: 100%; object-fit: cover; }
.v4i-shot__open:focus-visible { outline: 3px solid var(--v4-blue); outline-offset: 2px; }
.v4i-shot__zoom {
  position: absolute;
  right: 12px;
  bottom: 12px;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: var(--v4-pill);
  background: var(--v4-white);
  color: var(--v4-blue-deep);
}
.v4i-shot__zoom i { width: 16px; height: 16px; }

/* ---- Boş durum ---------------------------------------------------------- */
.v4i-empty {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  align-items: center;
  gap: 32px;
  padding: clamp(24px, 4vw, 48px);
  border-radius: var(--v4-radius);
  background: var(--v4-mint);
}
.v4i-empty__copy { display: grid; justify-items: start; gap: 12px; }
.v4i-empty__copy .v4-title,
.v4i-empty__copy .v4-lead { margin: 0; }
.v4i-empty__copy .v4-btn { margin-top: 8px; }
.v4i-empty__art { width: 100%; max-height: 220px; object-fit: contain; }

/* ---- Arama -------------------------------------------------------------- */
.v4i-wrap--search { padding-top: var(--section-y); }
.v4i-find {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 56px;
  padding: 6px 6px 6px 52px;
  border: 1.5px solid var(--v4-field-line);
  border-radius: var(--v4-pill);
  background: var(--v4-white);
  transition: border-color .15s ease, box-shadow .15s ease;
}
.v4i-find:focus-within { border-color: var(--v4-blue); box-shadow: 0 0 0 3px rgba(28, 182, 226, .28); }
.v4i-find__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.v4i-find__icon { position: absolute; left: 20px; top: 50%; width: 20px; height: 20px; margin-top: -10px; color: var(--v4-blue-deep); pointer-events: none; }
.v4i-find__input {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--v4-ink);
  font: 500 16px/1.4 var(--v4-font);
  -webkit-appearance: none;
  appearance: none;
}
.v4i-find__input:focus { outline: none; }
.v4i-find__input::placeholder { color: var(--v4-placeholder); }
.v4i-find__btn { flex: 0 0 auto; min-height: 44px; padding: 0 24px; }
.v4i-find--compact { max-width: 480px; min-height: 48px; margin-top: 28px; }
.v4i-find--compact .v4i-find__btn { min-height: 36px; padding: 0 20px; }

.v4i-summary { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 24px; margin-top: 24px; }
.v4i-summary__text { margin: 0; font-size: 15px; color: var(--v4-muted); }
.v4i-summary__text strong { color: var(--v4-ink); }
.v4i-tabs { display: flex; flex-wrap: wrap; gap: 8px; }
.v4i-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 0 8px 0 16px;
  border-radius: var(--v4-pill);
  background: var(--cat);
  color: var(--cat-ink);
  font: 700 var(--v4-eyebrow)/1 var(--v4-font);
  text-decoration: none;
  transition: transform .15s ease;
}
.v4i-tab:hover { transform: translateY(-1px); }
.v4i-tab:focus-visible { outline: 3px solid var(--v4-ink); outline-offset: 2px; }
.v4i-tab__n { display: grid; place-items: center; min-width: 24px; height: 24px; padding: 0 6px; border-radius: var(--v4-pill); background: rgba(255, 255, 255, .85); color: var(--v4-ink); font-size: 12px; }

.v4i-group { margin-top: 40px; scroll-margin-top: 96px; }
.v4i-group__title { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; font: 700 var(--v4-h3)/1.3 var(--v4-font); color: var(--v4-ink); }
.v4i-group__dot { width: 12px; height: 12px; border-radius: 50%; background: var(--cat); }
.v4i-group__count { font-size: var(--v4-small); font-weight: 600; color: var(--v4-muted); }
.v4i-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--grid-gap); margin: 0; padding: 0; list-style: none; }
.v4i-result {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  border: 1px solid var(--v4-line);
  border-radius: var(--v4-radius);
  background: var(--v4-white);
  color: inherit;
  text-decoration: none;
  transition: border-color .15s ease;
}
.v4i-result:hover { border-color: var(--cat); }
.v4i-result__thumb { flex: 0 0 auto; width: 96px; height: 72px; overflow: hidden; border-radius: 8px; background: var(--v4-sky); }
.v4i-result__thumb img { width: 100%; height: 100%; object-fit: cover; }
.v4i-result__body { display: grid; flex: 1 1 auto; gap: 4px; min-width: 0; }
.v4i-result__title { font: 700 16px/1.4 var(--v4-font); color: var(--v4-ink); }
.v4i-result__text { font-size: var(--v4-small); color: var(--v4-muted); }
.v4i-result mark { padding: 0 2px; border-radius: 3px; background: rgba(249, 210, 92, .6); color: inherit; }
.v4i-result > i { flex: 0 0 auto; width: 18px; height: 18px; color: var(--v4-blue-deep); }

.v4i-note { display: grid; justify-items: start; gap: 12px; margin-top: 32px; padding: clamp(24px, 3vw, 32px); border-radius: var(--v4-radius); background: var(--v4-mint); }
.v4i-note .v4-title,
.v4i-note .v4-lead { margin: 0; }
.v4i-note .v4-btn { margin-top: 8px; }

/* ---- Kategori kısayolları (arama önerileri, 404) ------------------------ */
.v4i-cats { margin-top: var(--sp-6); }
.v4i-band .v4i-cats { margin-top: 0; }
.v4i-cats__head { margin-bottom: var(--head-gap); }
.v4i-cats__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--grid-gap); margin: 0; padding: 0; list-style: none; }
.v4i-cat { overflow: hidden; border-radius: var(--v4-radius); background: var(--cat); color: var(--cat-ink); transition: transform .18s ease; }
.v4i-cat:hover { transform: translateY(-3px); }
.v4i-cat__link { display: flex; flex-direction: column; min-height: 232px; padding: 20px 20px 0; color: inherit; text-decoration: none; }
.v4i-cat__link:focus-visible { outline: 3px solid var(--v4-ink); outline-offset: -3px; }
.v4i-cat__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.v4i-cat__name { font: 700 var(--v4-h3)/1.2 var(--v4-font); }
.v4i-cat__top i { width: 20px; height: 20px; }
.v4i-cat__text { margin-top: 8px; max-width: 24ch; font: 500 var(--v4-small)/1.5 var(--v4-font); }
.v4i-cat__art { width: calc(100% + 40px); max-width: none; height: 112px; margin: auto -20px 0; object-fit: cover; object-position: center bottom; }

/* ---- 404 ---------------------------------------------------------------- */
.v4i-nf { position: relative; background: var(--v4-mint); }
.v4i-nf__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  align-items: center;
  gap: 48px;
  width: min(var(--v4-container), calc(100% - 2 * var(--v4-gutter)));
  margin: 0 auto;
  padding: var(--section-y) 0;
}
.v4i-nf__code { color: var(--v4-blue-deep); }
.v4i-nf__title { margin: 0; font: 700 var(--v4-h2)/1.15 var(--v4-font); letter-spacing: -.015em; color: var(--v4-ink); }
.v4i-nf__lead { max-width: 46ch; margin: 12px 0 0; color: var(--v4-muted); }
.v4i-nf__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.v4i-nf__art { position: relative; aspect-ratio: 4 / 3; overflow: hidden; border-radius: var(--v4-radius); background: var(--v4-mint-2); }
.v4i-nf__art img { width: 100%; height: 100%; max-width: none; object-fit: cover; transform: scale(1.5); transform-origin: 72% 52%; }

/* ---- Bülten ayrılma ----------------------------------------------------- */
.v4i-notice { position: relative; display: grid; place-items: center; min-height: clamp(360px, 52vh, 520px); padding: 48px var(--v4-gutter); background: var(--v4-mint); }
.v4i-notice__card { width: min(560px, 100%); padding: clamp(24px, 4vw, 40px); border: 1px solid var(--v4-line); border-radius: var(--v4-radius); background: var(--v4-white); }
.v4i-notice__eyebrow::before { content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 8px; border-radius: 50%; background: var(--cat); vertical-align: 1px; }
.v4i-notice__title { margin: 0; font: 700 var(--v4-h3)/1.25 var(--v4-font); letter-spacing: -.01em; color: var(--v4-ink); }
.v4i-notice__text { margin: 12px 0 0; color: var(--v4-muted); }
.v4i-notice__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }

/* ---- Duyarlı ------------------------------------------------------------ */
@media (max-width: 1100px) {
  .v4i-article--aside { grid-template-columns: minmax(0, 720px); }
  .v4i-side { position: static; }
  .v4i-toc { display: none; }
}
@media (max-width: 1024px) {
  .v4i-cats__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 960px) {
  .v4i-feature { grid-template-columns: minmax(0, 1fr); }
  .v4i-feature__media { min-height: 0; aspect-ratio: 16 / 10; }
  .v4i-posts, .v4i-albums { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v4i-shots { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; }
  .v4i-shot:nth-child(6n + 1) { grid-column: auto; grid-row: auto; }
  .v4i-shot__open { aspect-ratio: 4 / 3; height: auto; }
  .v4i-results { grid-template-columns: minmax(0, 1fr); }
  .v4i-empty { grid-template-columns: minmax(0, 1fr); }
  .v4i-empty__art { max-height: 160px; }
  .v4i-nf__inner { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .v4i-nf__art { aspect-ratio: 16 / 9; }
}
@media (max-width: 600px) {
  .v4i-posts, .v4i-albums { grid-template-columns: minmax(0, 1fr); }
  .v4i-shots { gap: 8px; }
  .v4i-result__thumb { width: 72px; height: 54px; }
  .v4i-result { padding: 12px 16px; gap: 12px; }
  .v4i-find { padding-left: 44px; }
  .v4i-find__icon { left: 16px; }
  .v4i-find__btn { padding: 0 16px; }
  .v4i-cats__grid { grid-template-columns: minmax(0, 1fr); }
  .v4i-cat__link { min-height: 192px; }
  .v4i-cat__art { height: 88px; }
}
@media (prefers-reduced-motion: reduce) {
  .v4i-post, .v4i-album, .v4i-cat, .v4i-tab, .v4i-shot__open img, .v4i-feature { transition: none; }
  .v4i-post:hover, .v4i-album:hover, .v4i-cat:hover, .v4i-tab:hover { transform: none; }
  .v4i-shot__open:hover img { transform: none; }
}

/* ==== 14-v4-hareket.css ================================================= */
/* ==========================================================================
   14 · V4 HAREKET — anasayfa GSAP başlangıç durumları
   Yalnız yeni selector adları: .v4m-* (hareket).
   Gizleme kapısı: hareket tercihi + html.apl-motion + not(.apl-reduced).
   .v4m-ready aplan-scroll.js çalışınca eklenir; JS hiç gelmezse
   v4m-failsafe 2.5 sn sonra içeriği kendiliğinden açar.
   ========================================================================== */

@media (prefers-reduced-motion: no-preference) {
  html.apl-motion:not(.apl-reduced):not(.v4m-ready) .v4h-hero__title,
  html.apl-motion:not(.apl-reduced):not(.v4m-ready) .v4h-hero__lead,
  html.apl-motion:not(.apl-reduced):not(.v4m-ready) .v4h-hero__cta {
    opacity: 0;
    animation: v4m-failsafe 0.01s linear 2.5s forwards;
  }
}

@keyframes v4m-failsafe {
  to { opacity: 1; }
}

/* ==== 15-v5-moduller.css ================================================ */
/* ============================================================================
 * 15 · V5 MODÜLLER (2026-10-05) — /yararli-linkler (.v5l-), hizmet rehberi
 * bölümleri (.v5g-). Token ve ilkeller 07'den; kategori rengi .v4-cat[data-cat] → --cat/--cat-ink.
 * Kırılımlar: 1100 (yan sütun üstte) · 640 (tek sütun).
 * ========================================================================= */

/* ------------------------------------------------------ Yararlı linkler */
.v5l-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: var(--sp-7); align-items: start; padding: var(--sp-6) 0 var(--section-y); }
.v5l-side { position: sticky; top: 96px; }
.v5l-side__in { display: grid; gap: var(--sp-5); }
.v5l-search { display: grid; gap: var(--sp-2); }
.v5l-search__label { font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: var(--v4-blue-deep); }
.v5l-search__field { position: relative; display: block; }
.v5l-search__field .apl-icon { position: absolute; left: 14px; top: 50%; width: 18px; height: 18px; transform: translateY(-50%); color: var(--v4-muted); }
.v5l-search__field input { width: 100%; height: 46px; padding: 0 14px 0 42px; border: 1px solid var(--v4-field-line); border-radius: var(--v4-radius); background: var(--v4-white); font: 500 var(--v4-small)/1 var(--v4-font); color: var(--v4-ink); }
.v5l-search__field input:focus { outline: 2px solid var(--v4-blue); outline-offset: 1px; border-color: var(--v4-blue); }
.v5l-search__empty { font: 500 var(--v4-small)/1.5 var(--v4-font); color: var(--v4-muted); }
.v5l-toc ol { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.v5l-toc a { display: grid; grid-template-columns: 10px minmax(0, 1fr) auto; align-items: center; gap: var(--sp-3); padding: 10px 12px; border-radius: 8px; color: var(--v4-text); font: 600 var(--v4-small)/1.3 var(--v4-font); text-decoration: none; }
.v5l-toc a:hover { background: var(--v4-sky); color: var(--v4-ink); }
.v5l-toc__dot { width: 10px; height: 10px; border-radius: 50%; background: var(--cat); }
.v5l-toc__count { min-width: 26px; padding: 2px 8px; border-radius: var(--v4-pill); background: var(--v4-sky); font: 700 12px/1.4 var(--v4-font); text-align: center; color: var(--v4-muted); }
.v5l-note { padding-top: var(--sp-4); border-top: 1px solid var(--v4-line); font: 400 13px/1.6 var(--v4-font); color: var(--v4-muted); }

.v5l-main { display: grid; gap: var(--sp-7); }
.v5l-group { scroll-margin-top: 110px; }
.v5l-group__head { display: flex; align-items: flex-start; gap: var(--sp-4); margin-bottom: var(--sp-5); padding-bottom: var(--sp-4); border-bottom: 2px solid var(--cat); }
.v5l-group__icon { display: inline-flex; flex: none; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: var(--cat); color: var(--cat-ink); }
.v5l-group__icon .apl-icon { width: 22px; height: 22px; }
.v5l-group__title { font: 700 clamp(20px, 1.4vw + 10px, 26px)/1.2 var(--v4-font); letter-spacing: -.015em; color: var(--v4-ink); }
.v5l-group__text { margin-top: var(--sp-1); max-width: 64ch; font: 400 var(--v4-small)/1.6 var(--v4-font); color: var(--v4-muted); }
.v5l-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-3); margin: 0; padding: 0; list-style: none; }
.v5l-link { position: relative; display: grid; gap: 6px; height: 100%; padding: 16px 48px 16px 18px; border: 1px solid var(--v4-line); border-radius: var(--v4-radius); background: var(--v4-white); color: var(--v4-text); text-decoration: none; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.v5l-link:hover { border-color: var(--cat); box-shadow: 0 10px 24px -18px rgba(15, 29, 43, .45); transform: translateY(-1px); }
.v5l-link:focus-visible { outline: 2px solid var(--v4-blue-deep); outline-offset: 2px; }
.v5l-link__title { font: 700 15px/1.35 var(--v4-font); color: var(--v4-ink); }
.v5l-link__text { font: 400 13.5px/1.5 var(--v4-font); color: var(--v4-muted); }
.v5l-link__meta { display: flex; flex-wrap: wrap; gap: 4px 12px; margin-top: 2px; font: 500 12px/1.4 var(--v4-font); color: var(--v4-muted); }
.v5l-link__host { color: var(--v4-blue-deep); }
.v5l-link__go { position: absolute; top: 16px; right: 16px; width: 18px; height: 18px; color: var(--v4-muted); transition: color .18s ease, transform .18s ease; }
.v5l-link:hover .v5l-link__go { color: var(--v4-ink); transform: translate(2px, -2px); }
.v5l-group[hidden], .v5l-links li[hidden] { display: none; }

/* Yazı sayfası: ilgili hizmetler (.v5p-) */
.v5p-services { margin-top: var(--sp-7); padding-top: var(--sp-5); border-top: 1px solid var(--v4-line); }
.v5p-services ul { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin: var(--sp-3) 0 0; padding: 0; list-style: none; }
.v5p-services a { display: inline-flex; align-items: center; gap: 10px; min-height: 40px; padding: 8px 16px; border: 1px solid var(--v4-line); border-radius: var(--v4-pill); color: var(--v4-ink); font: 600 var(--v4-small)/1.3 var(--v4-font); text-decoration: none; }
.v5p-services a:hover { border-color: var(--cat); background: var(--v4-sky); }
.v5p-services a .apl-icon { width: 14px; height: 14px; color: var(--v4-muted); }
.v5p-services__dot { width: 9px; height: 9px; border-radius: 50%; background: var(--cat); }

/* Teslim kartı: başlık + açıklama (v5 içerikte her çıktının bir cümlelik açıklaması var) */
.v4d-outputs__name { display: block; }
.v4d-outputs__text { display: block; margin-top: var(--sp-2); font: 500 var(--v4-small)/1.55 var(--v4-font); opacity: .92; }

/* ------------------------------------------------ Hizmet rehberi (.v5g) */
.v5g__inner { display: grid; grid-template-columns: minmax(0, 760px); justify-content: center; }
.v5g__inner--toc { grid-template-columns: 260px minmax(0, 760px); gap: var(--sp-8); justify-content: space-between; }
.v5g__side { position: sticky; top: 96px; align-self: start; display: grid; gap: var(--sp-5); }
.v5g__toc ol { display: grid; gap: 2px; margin: var(--sp-2) 0 0; padding: 0; list-style: none; counter-reset: v5g; border-left: 2px solid var(--v4-line); }
.v5g__toc li { counter-increment: v5g; }
.v5g__toc a { display: block; margin-left: -2px; padding: 8px 0 8px 16px; border-left: 2px solid transparent; color: var(--v4-muted); font: 500 var(--v4-small)/1.4 var(--v4-font); text-decoration: none; }
.v5g__toc a:hover { border-left-color: var(--cat); color: var(--v4-ink); }
.v5g__stamp { display: flex; align-items: center; gap: var(--sp-2); font: 500 13px/1.4 var(--v4-font); color: var(--v4-muted); }
.v5g__stamp .apl-icon { width: 16px; height: 16px; }
.v5g__title { margin-bottom: var(--sp-5); }
.v5g__prose { font: 400 16px/1.8 var(--v4-font); color: var(--v4-text); overflow-wrap: anywhere; }
.v5g__prose > :first-child { margin-top: 0; }
.v5g__prose h2 { margin: 2em 0 .6em; padding-top: var(--sp-5); border-top: 1px solid var(--v4-line); font: 700 clamp(19px, .6vw + 14px, 22px)/1.3 var(--v4-font); letter-spacing: -.01em; color: var(--v4-ink); scroll-margin-top: 110px; }
.v5g__prose > h2:first-child { padding-top: 0; border-top: 0; }
.v5g__prose h3 { margin: 1.6em 0 .4em; font: 700 17px/1.35 var(--v4-font); color: var(--v4-ink); }
.v5g__prose p, .v5g__prose ul, .v5g__prose ol { margin: 0 0 1.1em; }
.v5g__prose ul, .v5g__prose ol { padding-left: 22px; }
.v5g__prose ul { list-style: disc; }
.v5g__prose ol { list-style: decimal; }
.v5g__prose li { margin-bottom: .4em; padding-left: 4px; }
.v5g__prose li::marker { color: var(--cat); font-weight: 700; }
.v5g__prose strong { color: var(--v4-ink); }
.v5g__prose a { color: var(--v4-blue-deep); text-decoration: underline; text-underline-offset: 3px; }

.v5g-docs__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-3); margin: 0; padding: 0; list-style: none; }
.v5g-doc { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--sp-2) var(--sp-4); align-content: start; padding: 20px; border-radius: var(--v4-radius); background: var(--v4-white); box-shadow: 0 1px 0 var(--v4-line); }
.v5g-doc__no { font: 700 13px/1.6 var(--v4-font); color: var(--v4-muted); font-variant-numeric: tabular-nums; }
.v5g-doc__title { font: 700 15px/1.4 var(--v4-font); color: var(--v4-ink); }
.v5g-doc__text { margin-top: var(--sp-1); font: 400 var(--v4-small)/1.6 var(--v4-font); color: var(--v4-muted); }
.v5g-doc__link { grid-column: 2; justify-self: start; display: inline-flex; align-items: center; gap: 6px; margin-top: var(--sp-1); color: var(--v4-blue-deep); font: 700 13px/1.4 var(--v4-font); text-decoration: none; }
.v5g-doc__link:hover { text-decoration: underline; text-underline-offset: 3px; }
.v5g-doc__link .apl-icon { width: 14px; height: 14px; }

.v5g-src__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-3); margin: 0; padding: 0; list-style: none; }
.v5g-src__item { position: relative; display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: var(--sp-4); height: 100%; padding: 18px 48px 18px 18px; border: 1px solid var(--v4-line); border-radius: var(--v4-radius); color: var(--v4-text); text-decoration: none; transition: border-color .18s ease; }
.v5g-src__item:hover { border-color: var(--cat); }
.v5g-src__ico { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 10px; border-radius: 10px; background: var(--cat-soft, var(--v4-sky)); color: var(--v4-ink); }
.v5g-src__copy { display: grid; gap: 4px; }
.v5g-src__title { font: 700 15px/1.4 var(--v4-font); color: var(--v4-ink); }
.v5g-src__text { font: 400 13.5px/1.55 var(--v4-font); color: var(--v4-muted); }
.v5g-src__meta { display: flex; flex-wrap: wrap; gap: 4px 12px; font: 500 12px/1.4 var(--v4-font); color: var(--v4-muted); }
.v5g-src__host { color: var(--v4-blue-deep); }
.v5g-src__go { position: absolute; top: 18px; right: 16px; width: 18px; height: 18px; color: var(--v4-muted); }

/* Mobil "Bu sayfada": masaüstünde yan sütun var, bu kutu yalnız ≤1100px'te görünür */
.v5g__mtoc { display: none; margin-bottom: var(--sp-5); border: 1px solid var(--v4-line); border-radius: var(--v4-radius); background: var(--v4-white); }
.v5g__mtoc summary { display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 16px; cursor: pointer; list-style: none; font: 700 var(--v4-small)/1.2 var(--v4-font); color: var(--v4-ink); }
.v5g__mtoc summary::-webkit-details-marker { display: none; }
.v5g__mtoc summary .apl-icon { width: 18px; height: 18px; color: var(--v4-blue-deep); }
.v5g__mtoc-n { padding: 2px 8px; border-radius: var(--v4-pill); background: var(--v4-sky); color: var(--v4-muted); font: 700 12px/1.4 var(--v4-font); }
.v5g__mtoc .v5g__mtoc-chev { margin-left: auto; color: var(--v4-muted); transition: transform .2s ease; }
.v5g__mtoc[open] .v5g__mtoc-chev { transform: rotate(180deg); }
.v5g__mtoc ol { margin: 0; padding: 4px 16px 12px 36px; border-top: 1px solid var(--v4-line); list-style: decimal; }
.v5g__mtoc li::marker { color: var(--cat); font-weight: 700; }
.v5g__mtoc a { display: block; padding: 9px 0; color: var(--v4-text); font: 500 var(--v4-small)/1.4 var(--v4-font); text-decoration: none; }
@media (max-width: 1100px) {
  .v5g__mtoc { display: block; }
  .v5g__inner--toc { grid-template-columns: minmax(0, 1fr); gap: var(--sp-5); }
  .v5g__side { position: static; }
  .v5g__toc { display: none; }
  .v5l-layout { grid-template-columns: minmax(0, 1fr); gap: var(--sp-6); }
  .v5l-side { position: static; }
  .v5l-toc ol { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
  .v5l-toc a { grid-template-columns: 10px auto auto; border: 1px solid var(--v4-line); border-radius: var(--v4-pill); padding: 8px 14px; }
  .v5l-note { display: none; }
}
@media (max-width: 760px) {
  .v5g-docs__list, .v5g-src__list { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .v5l-links { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .v5l-link, .v5l-link__go { transition: none; }
  .v5l-link:hover, .v5l-link:hover .v5l-link__go { transform: none; }
}

/* ------------------------------------------- Gündem listesi (.v5n-, 2026-10-05) */
/* Kart duvarı yerine taranabilir liste: tarih sütunu · etiket + başlık + 2 satır özet · ok. */
.v5n-bar { position: sticky; top: var(--v4s-head-h, 76px); z-index: 5; border-bottom: 1px solid var(--v4-line); background: rgba(255, 255, 255, .96); backdrop-filter: blur(6px); }
.v5n-tabs { display: flex; gap: var(--sp-2); padding-block: var(--sp-3); overflow-x: auto; scrollbar-width: none; }
.v5n-tabs::-webkit-scrollbar { display: none; }
.v5n-tab { display: inline-flex; flex: none; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border: 1px solid var(--v4-line); border-radius: var(--v4-pill); background: var(--v4-white); color: var(--v4-text); font: 600 var(--v4-small)/1 var(--v4-font); text-decoration: none; }
.v5n-tab:hover { border-color: var(--cat, var(--v4-ink)); color: var(--v4-ink); }
.v5n-tab.is-active { border-color: var(--v4-ink); background: var(--v4-ink); color: var(--v4-white); }
.v5n-tab__dot { flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--cat, var(--v4-muted)); }
.v5n-tab__n { min-width: 22px; padding: 2px 7px; border-radius: var(--v4-pill); background: var(--v4-sky); color: var(--v4-muted); font: 700 12px/1.3 var(--v4-font); text-align: center; }
.v5n-tab.is-active .v5n-tab__n { background: rgba(255, 255, 255, .16); color: var(--v4-white); }
.v5n-tab:focus-visible { outline: 3px solid var(--v4-blue); outline-offset: 2px; }

.v5n-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: var(--sp-8); align-items: start; padding: var(--sp-6) 0 var(--section-y); }
.v5n-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--v4-line); }
.v5n-row { position: relative; display: grid; grid-template-columns: 76px minmax(0, 1fr) 24px; gap: var(--sp-5); align-items: start; padding: var(--sp-5) var(--sp-2) var(--sp-5) 0; border-bottom: 1px solid var(--v4-line); transition: background-color .15s ease; }
.v5n-row:hover { background: linear-gradient(90deg, transparent, var(--v4-sky) 30%); }
.v5n-row__date { display: grid; justify-items: start; padding-left: 14px; border-left: 3px solid var(--cat); line-height: 1.1; }
.v5n-row__day { font: 700 26px/1 var(--v4-font); color: var(--v4-ink); font-variant-numeric: tabular-nums; }
.v5n-row__mon { margin-top: 4px; font: 500 12px/1.3 var(--v4-font); color: var(--v4-muted); }
.v5n-row__body { min-width: 0; }
.v5n-row__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; font: 500 12.5px/1.4 var(--v4-font); color: var(--v4-muted); }
.v5n-tag { display: inline-flex; align-items: center; height: 22px; padding: 0 9px; border-radius: 6px; background: var(--cat); color: var(--cat-ink); font: 700 12px/1 var(--v4-font); letter-spacing: .02em; }
.v5n-row__title { margin-top: 8px; font: 700 clamp(16.5px, .4vw + 13px, 19px)/1.35 var(--v4-font); letter-spacing: -.01em; color: var(--v4-ink); }
.v5n-row__title a { color: inherit; text-decoration: none; }
.v5n-row__title a::after { content: ""; position: absolute; inset: 0; }
.v5n-row__title a:focus-visible { outline: none; }
.v5n-row:focus-within { outline: 3px solid var(--v4-blue); outline-offset: -3px; }
.v5n-row__text { display: -webkit-box; margin-top: 6px; max-width: 68ch; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font: 400 var(--v4-small)/1.6 var(--v4-font); color: var(--v4-muted); }
.v5n-row__go { align-self: center; width: 20px; height: 20px; color: var(--v4-line); transition: color .15s ease, transform .15s ease; }
.v5n-row:hover .v5n-row__go { color: var(--v4-ink); transform: translateX(3px); }

.v5n-side { position: sticky; top: calc(var(--v4s-head-h, 76px) + 80px); display: grid; gap: var(--sp-4); }
.v5n-side__title { font: 700 var(--v4-eyebrow)/1.2 var(--v4-font); letter-spacing: .08em; text-transform: uppercase; color: var(--v4-blue-deep); }
.v5n-guide { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.v5n-guide a { display: grid; gap: 4px; padding: 12px 14px; border-radius: var(--v4-radius); color: var(--v4-text); text-decoration: none; }
.v5n-guide a:hover, .v5n-guide a[aria-current="page"] { background: var(--v4-sky); }
.v5n-guide__name { display: inline-flex; align-items: center; gap: 8px; font: 700 var(--v4-small)/1.3 var(--v4-font); color: var(--v4-ink); }
.v5n-guide__text { padding-left: 16px; font: 400 13px/1.5 var(--v4-font); color: var(--v4-muted); }
.v5n-promo { display: flex; align-items: flex-start; gap: var(--sp-3); padding: var(--sp-4); border: 1px solid var(--v4-line); border-radius: var(--v4-radius); color: var(--v4-text); text-decoration: none; }
.v5n-promo:hover { border-color: var(--v4-blue); }
.v5n-promo .apl-icon { flex: none; width: 20px; height: 20px; margin-top: 2px; color: var(--v4-blue-deep); }
.v5n-promo strong { display: block; font: 700 var(--v4-small)/1.3 var(--v4-font); color: var(--v4-ink); }
.v5n-promo span span { display: block; margin-top: 2px; font: 400 13px/1.5 var(--v4-font); color: var(--v4-muted); }

@media (max-width: 1100px) {
  .v5n-layout { grid-template-columns: minmax(0, 1fr); gap: var(--sp-6); }
  .v5n-side { position: static; }
  .v5n-guide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .v5n-row { grid-template-columns: minmax(0, 1fr); gap: var(--sp-2); padding-right: 0; }
  .v5n-row__date { display: flex; gap: 6px; align-items: baseline; padding-left: 10px; }
  .v5n-row__day { font-size: 15px; }
  .v5n-row__mon { margin-top: 0; font-size: 13px; }
  .v5n-row__go { display: none; }
  .v5n-row:hover { background: none; }
  .v5n-guide { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .v5n-row, .v5n-row__go { transition: none; }
  .v5n-row:hover .v5n-row__go { transform: none; }
}

/* ------------------------------------------------ SSS grupları (.v5f-, 2026-10-05) */
.v5f-nav { display: grid; gap: 2px; }
.v5f-nav__link { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 12px; border-radius: 8px; color: var(--v4-text); font: 600 var(--v4-small)/1.2 var(--v4-font); text-decoration: none; }
.v5f-nav__link:hover { background: var(--v4-white); color: var(--v4-ink); }
.v5f-nav__dot { flex: none; width: 10px; height: 10px; border-radius: 50%; background: var(--cat, var(--v4-ink)); }
.v5f-nav__n { margin-left: auto; min-width: 26px; padding: 2px 8px; border-radius: var(--v4-pill); background: var(--v4-white); color: var(--v4-muted); font: 700 12px/1.4 var(--v4-font); text-align: center; }
.v5f-groups { gap: var(--sp-4); }
.v5f-group { border-radius: calc(var(--v4-radius) + 4px); background: rgba(255, 255, 255, .55); box-shadow: inset 0 0 0 1px var(--v4-line); scroll-margin-top: 110px; }
.v5f-group__head { display: flex; align-items: center; gap: 12px; min-height: 60px; padding: 0 20px; cursor: pointer; list-style: none; }
.v5f-group__head::-webkit-details-marker { display: none; }
.v5f-group__head:focus-visible { outline: 3px solid var(--v4-blue); outline-offset: -3px; border-radius: calc(var(--v4-radius) + 4px); }
.v5f-group__title { font: 700 clamp(17px, .5vw + 14px, 20px)/1.25 var(--v4-font); color: var(--v4-ink); }
.v5f-group__head .v5f-nav__n { background: var(--v4-sky); }
.v5f-group__head .apl-icon { flex: none; width: 20px; height: 20px; color: var(--v4-muted); transition: transform .2s ease; }
.v5f-group[open] > .v5f-group__head .apl-icon { transform: rotate(180deg); }
.v5f-group[open] > .v5f-group__head { border-bottom: 2px solid var(--cat, var(--v4-ink)); }
.v5f-group__body { display: grid; gap: 8px; padding: 12px; }
.v5f-service { display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; color: var(--v4-blue-deep); font: 700 13px/1.4 var(--v4-font); text-decoration: none; }
.v5f-service:hover { text-decoration: underline; text-underline-offset: 3px; }
.v5f-service .apl-icon { width: 14px; height: 14px; }
@media (max-width: 1000px) {
  .v5f-nav { order: 1; display: flex; gap: 8px; margin-inline: calc(-1 * var(--v4-gutter)); padding-inline: var(--v4-gutter); overflow-x: auto; scrollbar-width: none; }
  .v5f-nav::-webkit-scrollbar { display: none; }
  .v5f-nav__link { flex: none; border: 1px solid var(--v4-line); border-radius: var(--v4-pill); background: var(--v4-white); }
  .v5f-nav__n { background: var(--v4-sky); }
}
@media (max-width: 600px) {
  .v5f-group__head { padding: 0 14px; }
  .v5f-group__body { padding: 8px; }
}
@media (prefers-reduced-motion: reduce) { .v5f-group__head .apl-icon { transition: none; } }

/* ==== 16-v6-hizmet-detay.css ============================================ */
/* ============================================================================
 * 16 · V6 HİZMET DETAYI — /hizmetler/<slug> (2026-10-07, "çok yoğun yoruyor").
 * Görünüm aplan_pages/service_detail.php. Token ve ilkeller 07'den (--v4-*, --sp-*, .v4-cat → --cat/--cat-ink),
 * kapsayıcı 12'deki .v4z-wrap. Uzun rehber kapalı akordeonda; açık duran yalnız o hizmete özgü notlar. Önek: .v6d-
 * ========================================================================== */

.v6d-sec { padding: var(--section-y) 0; background: var(--v4-white); }
.v6d-sec--tint { background: var(--v4-sky); }
.v6d-sec--join { padding-bottom: 0; } /* uyarı kutusu ardındaki beyaz bölümle tek blok */
.v6d-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--sp-2) var(--sp-5); margin-bottom: var(--head-gap); }

/* ------------------------------------------------------------------ Hero */
.v6d-hero { background: var(--cat); color: var(--cat-ink); }
.v6d-hero { overflow: hidden; }
.v6d-hero__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--sp-7); align-items: center; min-height: 360px; padding: var(--sp-6) 0; }
/* Çizimin zemini hero rengiyle aynı (#kategori); çerçeve, köşe, gölge yok, sağ kenara taşar. */
.v6d-hero__art { align-self: stretch; margin: calc(var(--sp-6) * -1) calc((min(var(--v4-container), 100vw - 2 * var(--v4-gutter)) - 100vw) / 2) calc(var(--sp-6) * -1) 0; }
.v6d-hero__art img { display: block; width: 100%; height: 100%; min-height: 360px; object-fit: cover; object-position: center; }
.v6d-hero__inner--single { grid-template-columns: minmax(0, 1fr); }
.v6d-crumb { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2); margin-bottom: var(--sp-4); font: 600 var(--v4-small)/1.4 var(--v4-font); }
.v6d-crumb a { color: inherit; text-decoration: none; }
.v6d-crumb a:hover, .v6d-crumb a:focus-visible { text-decoration: underline; }
.v6d-hero__title { margin: 0; max-width: 20ch; color: inherit; font: 700 var(--v4-h1)/1.1 var(--v4-font); letter-spacing: -.02em; overflow-wrap: anywhere; }
.v6d-hero__lead { max-width: 56ch; margin-top: var(--sp-4); color: inherit; font: 500 16px/1.6 var(--v4-font); }
.v6d-hero__cta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-3) var(--sp-5); margin-top: var(--sp-5); }
.v6d-btn { background: var(--v4-ink); color: var(--v4-white); }
.v6d-btn:hover, .v6d-btn:focus-visible { background: #1d3246; color: var(--v4-white); }
.v6d-link { display: inline-flex; align-items: center; gap: var(--sp-2); min-height: 44px; color: inherit; font: 600 var(--v4-small)/1 var(--v4-font); text-decoration: underline; text-underline-offset: 4px; }
.v6d-link .apl-icon { font-size: 18px; }

.v6d-when__inner { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.6fr); gap: var(--sp-5) var(--sp-7); align-items: start; }
.v6d-when__lead { margin-top: var(--sp-3); max-width: 42ch; color: var(--v4-muted); font: 400 var(--v4-body)/1.6 var(--v4-font); }
.v6d-when__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-4) var(--sp-6); margin: 0; padding: 0; list-style: none; }
.v6d-when__list li { display: flex; align-items: flex-start; gap: var(--sp-3); font: 500 var(--v4-body)/1.5 var(--v4-font); color: var(--v4-text); }
.v6d-when__list .apl-icon { flex: 0 0 auto; width: 20px; height: 20px; margin-top: 1px; padding: 3px; border-radius: 50%; background: var(--cat); color: var(--cat-ink); }


/* ------------------------------------------------- Bu hizmete özgü notlar */
.v6d-notes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap); align-items: start; }
.v6d-notes--c2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v6d-note { display: block; padding: var(--sp-5); border-radius: var(--v4-radius); background: var(--v4-white); }
.v6d-note > summary { display: block; cursor: pointer; list-style: none; }
.v6d-note > summary::-webkit-details-marker { display: none; }
.v6d-note > summary:focus-visible { outline: 3px solid var(--v4-blue-deep); outline-offset: 4px; border-radius: 4px; }
.v6d-note__title { margin: 0; color: var(--v4-ink); font: 700 var(--v4-h3)/1.35 var(--v4-font); }
.v6d-note__teaser { display: -webkit-box; margin-top: var(--sp-3); overflow: hidden; color: var(--v4-text); font: 400 var(--v4-body)/1.65 var(--v4-font); -webkit-line-clamp: 4; -webkit-box-orient: vertical; }
.v6d-note__more { display: inline-flex; align-items: center; gap: var(--sp-1); min-height: 32px; margin-top: var(--sp-2); color: var(--v4-blue-deep); font: 600 var(--v4-small)/1 var(--v4-font); }
.v6d-note__more .apl-icon { font-size: 16px; transition: transform .2s ease; }
.v6d-note__close { display: none; }
.v6d-note[open] .v6d-note__teaser, .v6d-note[open] .v6d-note__open { display: none; }
.v6d-note[open] .v6d-note__close { display: inline; }
.v6d-note[open] .v6d-note__more { order: 3; }
.v6d-note[open] .v6d-note__more .apl-icon { transform: rotate(180deg); }
.v6d-note__body { margin-top: var(--sp-3); }
.v6d-note--more .v6d-note__body { margin-top: 0; }
.v6d-note--more[open] > summary { margin-bottom: var(--sp-3); }

/* Rehber metni (veritabanından gelen HTML) */
.v6d-prose { color: var(--v4-text); font: 400 var(--v4-body)/1.7 var(--v4-font); }
.v6d-prose > * + * { margin-top: var(--sp-3); }
.v6d-prose ul, .v6d-prose ol { padding-left: 20px; }
.v6d-prose li + li { margin-top: var(--sp-1); }
.v6d-prose a { color: var(--v4-blue-deep); text-decoration: underline; text-underline-offset: 3px; }
.v6d-prose strong { color: var(--v4-ink); font-weight: 600; }

/* ------------------------------------------------------------------ Süreç */
.v6d-steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--grid-gap); margin: 0; padding: 0; list-style: none; counter-reset: none; }
.v6d-steps--long { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.v6d-step { display: flex; align-items: flex-start; gap: var(--sp-3); padding: var(--sp-4); border-radius: var(--v4-radius); background: var(--v4-sky); }
.v6d-step__no { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; background: var(--cat); color: var(--cat-ink); font: 700 var(--v4-small)/1 var(--v4-font); font-variant-numeric: tabular-nums; }
.v6d-step__title { margin: 4px 0 0; color: var(--v4-ink); font: 700 var(--v4-body)/1.4 var(--v4-font); }
.v6d-step__text { margin-top: var(--sp-1); color: var(--v4-muted); font: 400 var(--v4-small)/1.55 var(--v4-font); }

/* ------------------------------------------- Sizden istenenler / Teslim */
.v6d-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--grid-gap); align-items: start; }
.v6d-pair--single { grid-template-columns: minmax(0, 880px); }
.v6d-box { padding: var(--sp-5); border-radius: var(--v4-radius); background: var(--v4-white); }
.v6d-box__sum { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-3); cursor: pointer; list-style: none; }
.v6d-box__sum::-webkit-details-marker { display: none; }
.v6d-box__sum:focus-visible { outline: 3px solid var(--v4-blue-deep); outline-offset: 4px; border-radius: 4px; }
.v6d-box__chev { flex: 0 0 auto; font-size: 18px; color: var(--v4-muted); transition: transform .2s ease; }
.v6d-box[open] .v6d-box__chev { transform: rotate(180deg); }
.v6d-box:not([open]) .v6d-box__title { margin-bottom: 0; }
.v6d-box__title { display: flex; align-items: center; gap: var(--sp-2); margin: 0 0 var(--sp-2); color: var(--v4-ink); font: 700 var(--v4-h3)/1.3 var(--v4-font); }
.v6d-box__title .apl-icon { font-size: 22px; color: var(--v4-blue-deep); }
.v6d-list { margin: 0; padding: 0; list-style: none; }
.v6d-list__item { display: grid; gap: var(--sp-1); padding: var(--sp-3) 0; border-top: 1px solid var(--v4-line); }
.v6d-list__item:first-child { border-top: 0; }
.v6d-list__name { color: var(--v4-ink); font: 600 var(--v4-body)/1.45 var(--v4-font); }
.v6d-list__text { color: var(--v4-muted); font: 400 var(--v4-small)/1.55 var(--v4-font); }
.v6d-list__link { display: inline-flex; align-items: center; gap: var(--sp-1); justify-self: start; min-height: 32px; color: var(--v4-blue-deep); font: 600 var(--v4-small)/1 var(--v4-font); text-decoration: none; }
.v6d-list__link:hover, .v6d-list__link:focus-visible { text-decoration: underline; }

/* ------------------------------------------------- Sık yapılan hatalar */
.v6d-warn { padding: var(--sp-5); border-radius: var(--v4-radius); background: #fff6e0; }
.v6d-warn__title { display: flex; align-items: center; gap: var(--sp-2); margin: 0 0 var(--sp-3); color: var(--v4-ink); font: 700 var(--v4-h3)/1.3 var(--v4-font); }
.v6d-warn__title .apl-icon { font-size: 22px; color: #a3620a; }
.v6d-warn__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-2) var(--sp-6); margin: 0; padding: 0; list-style: none; }
.v6d-warn__list li { position: relative; padding-left: var(--sp-4); color: var(--v4-text); font: 400 var(--v4-small)/1.6 var(--v4-font); }
.v6d-warn__list li::before { content: ""; position: absolute; left: 0; top: .65em; width: 6px; height: 6px; border-radius: 50%; background: #e0a43a; }

/* ------------------------------------------- Ayrıntılı bilgi + kaynaklar */
.v6d-guide { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(280px, 1fr); gap: var(--sp-7); align-items: start; }
.v6d-guide--single { grid-template-columns: minmax(0, 880px); }
.v6d-stamp { display: inline-flex; align-items: center; gap: var(--sp-2); color: var(--v4-muted); font: 500 var(--v4-small)/1.4 var(--v4-font); }
.v6d-acc { border-top: 1px solid var(--v4-line); }
.v6d-acc__item { border-bottom: 1px solid var(--v4-line); }
.v6d-acc__item > summary { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-4); min-height: 56px; padding: var(--sp-3) 0; cursor: pointer; list-style: none; color: var(--v4-ink); font: 600 16px/1.4 var(--v4-font); }
.v6d-acc__item > summary::-webkit-details-marker { display: none; }
.v6d-acc__item > summary:focus-visible { outline: 3px solid var(--v4-blue-deep); outline-offset: 2px; border-radius: 4px; }
.v6d-acc__item > summary .apl-icon { flex: 0 0 auto; font-size: 18px; color: var(--v4-muted); transition: transform .2s ease; }
.v6d-acc__item[open] > summary .apl-icon { transform: rotate(180deg); }
.v6d-acc__body { max-width: 72ch; padding-bottom: var(--sp-5); }

.v6d-src { position: sticky; top: calc(var(--v4s-head-h, 88px) + var(--sp-4)); padding: var(--sp-5); border-radius: var(--v4-radius); background: var(--v4-sky); }
.v6d-src__title { display: flex; align-items: center; gap: var(--sp-2); margin: 0 0 var(--sp-3); color: var(--v4-ink); font: 700 var(--v4-body)/1.3 var(--v4-font); }
.v6d-src__title .apl-icon { font-size: 20px; color: var(--v4-blue-deep); }
.v6d-src__list { margin: 0; padding: 0; list-style: none; }
.v6d-src__list li + li { border-top: 1px solid #d6eaf1; }
.v6d-src__list a { display: grid; gap: var(--sp-1); padding: var(--sp-3) 0; color: var(--v4-ink); text-decoration: none; }
.v6d-src__name { font: 600 var(--v4-small)/1.45 var(--v4-font); }
.v6d-src__host { display: inline-flex; align-items: center; gap: var(--sp-1); color: var(--v4-muted); font: 500 var(--v4-eyebrow)/1.3 var(--v4-font); }
.v6d-src__list a:hover .v6d-src__name, .v6d-src__list a:focus-visible .v6d-src__name { text-decoration: underline; }

/* ------------------------------------------------------------------ SSS */
.v6d-faq .v6d-acc { max-width: 880px; }
.v6d-faq .v6d-acc { border-top-color: #d6eaf1; }
.v6d-faq .v6d-acc__item { border-bottom-color: #d6eaf1; }

/* --------------------------------------------------------- İlgili hizmetler */
.v6d-rel { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap); margin: 0; padding: 0; list-style: none; }
.v6d-rel__link { display: grid; align-content: start; gap: var(--sp-2); height: 100%; padding: var(--sp-5); border-radius: var(--v4-radius); background: var(--v4-sky); color: var(--v4-ink); text-decoration: none; transition: background-color .18s ease; }
.v6d-rel__link:hover { background: #e1f3f9; }
.v6d-rel__link:focus-visible { outline: 3px solid var(--v4-blue-deep); outline-offset: 2px; }
.v6d-rel__cat { display: inline-flex; align-items: center; gap: var(--sp-2); color: var(--v4-muted); font: 700 var(--v4-eyebrow)/1 var(--v4-font); letter-spacing: .06em; text-transform: uppercase; }
.v6d-rel__title { font: 700 var(--v4-h3)/1.35 var(--v4-font); }
.v6d-rel__text { display: -webkit-box; overflow: hidden; color: var(--v4-muted); font: 400 var(--v4-small)/1.55 var(--v4-font); -webkit-line-clamp: 3; -webkit-box-orient: vertical; }

/* ---------------------------------------------------------------- Kırılımlar */
@media (max-width: 1100px) {
  .v6d-notes, .v6d-steps--long, .v6d-rel { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v6d-guide { grid-template-columns: minmax(0, 1fr); gap: var(--sp-6); }
  .v6d-src { position: static; }
}

@media (max-width: 860px) {
  .v6d-hero__inner { grid-template-columns: minmax(0, 1fr); gap: var(--sp-5); min-height: 0; padding: var(--sp-6) 0 0; }
  .v6d-hero__art { margin: 0 calc(var(--v4-gutter) * -1); }
  .v6d-hero__art img { min-height: 0; height: auto; aspect-ratio: 4 / 3; }
  .v6d-when__inner { grid-template-columns: minmax(0, 1fr); }
  .v6d-when__list { grid-template-columns: minmax(0, 1fr); }
  .v6d-notes, .v6d-notes--c2, .v6d-steps, .v6d-steps--long, .v6d-pair, .v6d-rel, .v6d-warn__list { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 640px) {
  .v6d-hero__lead { font-size: var(--v4-body); }
  /* Süreç mobilde kartsız zaman çizelgesi. */
  .v6d-steps, .v6d-steps--long { gap: 0; }
  .v6d-step { position: relative; padding: 0 0 var(--sp-4); border-radius: 0; background: none; }
  .v6d-step:not(:last-child)::before { content: ""; position: absolute; left: 15px; top: 36px; bottom: 4px; width: 2px; background: #cfe7ef; }
  .v6d-note, .v6d-box, .v6d-warn, .v6d-src, .v6d-rel__link { padding: var(--sp-4); }
  .v6d-step { padding: var(--sp-3) var(--sp-4); }
}

@media (prefers-reduced-motion: reduce) {
  .v6d-note__more .apl-icon, .v6d-acc__item > summary .apl-icon, .v6d-rel__link { transition: none; }
}

.v6d-rel__cat::before { content: ""; width: 8px; height: 8px; border-radius: 2px; background: var(--cat); }
