/* =============================================================================
   Biosmyrna — Sayfa kalıpları (PP1–PP9)

   Ana sayfa yapısı: docs/design/HOMEPAGE_UX_REVISION_V2.md  ✅ CURRENT SOURCE OF TRUTH
   11 bölüm · yolculuk 6 durak (03–08)

   🔴 130vh / 70vh / 100vh gibi değerler TOKEN DEĞİLDİR — DÜZEN DAVRANIŞIDIR
      (DESIGN_TOKENS_V1 §9). Bu yüzden burada, sayfa kalıbının içinde durur;
      tokens.css'e girmez ve bileşenlere sabit kodlanmaz.
      Test değerleridir: gerçek fotoğraflar geldiğinde 62vh alternatifi
      denenecektir (UX_REVISION_V2 §12/T3).
   ============================================================================= */

/* =============================================================================
   01 · AÇILIŞ (HERO) — 100vh
   Metin 6/12 sütun · dikeyde %55 · 🔴 gereksiz metin yoğunluğu yok
   ============================================================================= */

.hero {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-block-size: 78svh;
	color: var(--white);
	background: var(--ink-950);
	overflow: hidden;
}
@media (min-width: 768px) {
	.hero { min-block-size: 100svh; align-items: center; }
}

.hero__media { position: absolute; inset: 0; }
.hero__media img,
.hero__media picture,
.hero__media .ph {
	inline-size: 100%;
	block-size: 100%;
	object-fit: cover;
}

/* H-2 — şeffaf header'ın kontrastı için koyu geçiş katmanı.
   Ölçülmemiş bir şeffaflık bırakılmaz: metin alanı üzerinde en az %62 örtü.

   🔴 2026-09-08 · ÖLÇÜLDÜ VE DÜZELTİLDİ (kullanıcı onayı).
   Yatay katman 0.78 → 0.32 iken metin alanı ortalaması %59'du; metin
   sütununun bitiş kenarında (x ≈ %52) toplam örtü %39'a düşüyordu. Yani
   yukarıdaki %62 iddiası ortalamada da kenarda da tutmuyordu.
   Beyaz başlık için ölçülen kontrast: en düşük 3,4:1 · alanın %6,3'ü
   4,5:1'in ALTINDA — erişilebilirlik eşiğinin altında.
   0.85 → 0.58 ile: örtü %74 · en düşük kontrast 6,6:1 · eşik altı %0.
   Ölçüm aracı: tools/img/bio_image_qc.py · kontrol adı `metin_kontrasti`
   (scrim'i birebir uygulayıp WCAG oranını hesaplar). */
.hero__scrim {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(to bottom,
			rgba(14, 21, 18, 0.62) 0%,
			rgba(14, 21, 18, 0.30) 32%,
			rgba(14, 21, 18, 0.72) 100%);
}
@media (min-width: 768px) {
	.hero__scrim {
		background:
			linear-gradient(to bottom, rgba(14, 21, 18, 0.55) 0%, rgba(14, 21, 18, 0.10) 30%, rgba(14, 21, 18, 0.10) 60%, rgba(14, 21, 18, 0.55) 100%),
			linear-gradient(to var(--hero-scrim-dir, right), rgba(14, 21, 18, 0.85) 0%, rgba(14, 21, 18, 0.58) 52%, rgba(14, 21, 18, 0) 78%);
	}
	[dir="rtl"] .hero__scrim { --hero-scrim-dir: left; }
}

.hero__inner {
	position: relative;
	inline-size: 100%;
	padding-block: var(--space-8) var(--space-9);
}
.hero__content {
	max-inline-size: 34ch;
	display: flex;
	flex-direction: column;
	gap: var(--space-5);
}
@media (min-width: 768px) {
	/* 6/12 sütun */
	.hero__content { max-inline-size: min(52%, 620px); }
}

.hero__title { color: var(--white); }
.hero__lead { color: var(--ink-100); }
.hero__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); }

/* Hero'da birincil + ikincil: D1 korunur (tek BİRİNCİL buton) */
.hero__actions .btn--secondary {
	color: var(--white);
	border-color: rgba(255, 255, 255, 0.62);
}
.hero__actions .btn--secondary:hover { background: rgba(255, 255, 255, 0.14); color: var(--white); }

/* 🔄 2026-09-22 · ORTALANMIŞ AÇILIŞ (şirket isteği, referans: Blocksy
   "charity" demosu): başlık, giriş metni ve butonlar ortada; butonlar metnin
   hemen altında. Soldan sağa koyulaşan örtü artık metni takip etmediği için
   örtü de ortalandı: dikey geçiş + metin alanının arkasında merkezî koyuluk.
   Kontrast ölçümü: PHASE_7_KNOWN_ISSUES §38. */
.hero { align-items: center; }
.hero__content {
	max-inline-size: 60rem;
	margin-inline: auto;
	align-items: center;
	text-align: center;
}
.hero__title { text-wrap: balance; }
.hero__lead { max-inline-size: 46rem; }
.hero__lead p { margin-inline: auto; }
.hero__actions { justify-content: center; margin-block-start: var(--space-3); }
.hero__scrim,
[dir="rtl"] .hero__scrim {
	background:
		radial-gradient(70% 60% at 50% 52%, rgba(14, 21, 18, 0.42) 0%, rgba(14, 21, 18, 0) 75%),
		linear-gradient(to bottom, rgba(14, 21, 18, 0.62) 0%, rgba(14, 21, 18, 0.42) 35%, rgba(14, 21, 18, 0.48) 70%, rgba(14, 21, 18, 0.70) 100%);
}
/* Dar ekranda metin görselin daha büyük bölümünü kaplar — örtü koyulaşır */
@media (max-width: 1023px) {
	.hero__scrim,
	[dir="rtl"] .hero__scrim {
		background:
			radial-gradient(90% 60% at 50% 55%, rgba(14, 21, 18, 0.40) 0%, rgba(14, 21, 18, 0) 80%),
			linear-gradient(to bottom, rgba(14, 21, 18, 0.66) 0%, rgba(14, 21, 18, 0.56) 35%, rgba(14, 21, 18, 0.60) 70%, rgba(14, 21, 18, 0.76) 100%);
	}
}

/* =============================================================================
   02 · ORGANİK NEDİR — 90vh · 58/42 bölünmüş
   🔴 B6 — Bilgi Merkezi bağlantısı İKİNCİL seviyededir (belirgin, ama düğme değil)
   ============================================================================= */

.intro-split {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-6);
	align-items: center;
}
@media (min-width: 900px) {
	.intro-split { grid-template-columns: minmax(0, 58fr) minmax(0, 42fr); gap: var(--space-8); }
}
.intro-split__media img,
.intro-split__media .ph { border-radius: var(--radius-md); }
.intro-split__text { display: flex; flex-direction: column; gap: var(--space-4); align-items: flex-start; }

/* X11 · metinsiz kategori girişi — bölünecek metin yokken görsel tek başına
   kalır. 🔴 Üst sınır ŞART: kaynak 3:2 olduğu için sınırsız bırakılırsa
   1440 px genişlikte 960 px yükselir (ölçüldü, ekranın %107'si).
   Kırpma `cover` ile ORTADAN yapılır; kolajın kompozisyonu ortada toplanır. */
.category-collage img,
.category-collage .ph {
	inline-size: 100%;
	block-size: clamp(220px, 38svh, 420px);
	object-fit: cover;
	object-position: center;
	border-radius: var(--radius-md);
}

/* Yolculuk kapısı — "Bir partinin yolunu izleyelim." */
.journey-gate {
	margin-block-start: var(--space-8);
	padding-block-start: var(--space-5);
	border-block-start: var(--border-width) solid var(--divider);
	max-inline-size: 52ch;
	color: var(--text-secondary);
	font-size: var(--text-lead);
}

/* =============================================================================
   03–08 · YOLCULUK DURAKLARI
   Düzen davranışı (test değerleri · B2):
     durak ~130vh · yapışkan görsel ~70vh · header offset ~24px
     ızgara 58/42 (görsel 7/12 · metin 5/12)
   🔴 Mobilde SABİT YÜKSEKLİK YOK — içerik güdümlü (B4)
   🔴 Yapışkan mesafe üç ekranı aşmaz (LAYOUT_SYSTEM §9.2)
   ============================================================================= */

.journey { display: block; }

.stop {
	position: relative;
	border-block-start: var(--border-width) solid var(--divider);
}
.stop--warm { background: var(--surface-warm); }

.stop__inner {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-5);
	padding-block: var(--space-8);
}

/* Mobil sıra — B4 / §6: fotoğraf → durak no → "Ürünlere geç ↓" → başlık → metin → kanıt */
.stop__visual { order: 1; }
.stop__flow   { order: 2; display: flex; flex-direction: column; gap: var(--space-4); align-items: flex-start; }

/* Mobilde görsel 3:2 — masaüstündeki kırpma sorunu burada YOKTUR */
.stop__visual img,
.stop__visual .ph {
	inline-size: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	border-radius: var(--radius-md);
}

/* Katmanlı kompozisyon (06 Üretim) — 🔴 mobilde KATMAN AÇILIR:
   üretim fotoğrafı üstte, Bioyem ambalajı altında AYRI blok.
   ⚠️ Bedeli: "ürün, tesisin önünde duruyor" anlamı mobilde kurulamaz (R5).
      Metin bu ilişkiyi kurar (Faz 8). */
.stop__visual--layered {
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
}
.stop__overlay img {
	aspect-ratio: 3 / 4;
	max-block-size: 340px;
	inline-size: auto;
	margin-inline: auto;
	object-fit: contain;
}

@media (min-width: 900px) {
	.stop { min-block-size: 130vh; }              /* düzen davranışı — token değil */
	.stop--tall { min-block-size: 180vh; }        /* 06 Üretim: iki katman taşır */

	.stop__inner {
		grid-template-columns: minmax(0, 58fr) minmax(0, 42fr);
		gap: var(--space-8);
		align-items: start;
		padding-block: var(--space-9);
	}

	.stop__visual {
		position: sticky;
		inset-block-start: calc(var(--header-height) + var(--space-5));
		block-size: 70vh;                          /* test değeri — T3 ile yeniden ayarlanacak */
		min-block-size: 260px;
	}
	.stop__visual img,
	.stop__visual .ph {
		block-size: 100%;
		aspect-ratio: auto;
	}

	/* Katmanlı: ürün fotoğrafın ÖNÜNDE durur */
	.stop__visual--layered { position: sticky; display: block; }
	.stop__visual--layered .stop__base { position: absolute; inset: 0; }
	.stop__visual--layered .stop__base img,
	.stop__visual--layered .stop__base .ph { block-size: 100%; }
	.stop__visual--layered .stop__overlay {
		position: absolute;
		inset-block: 12% 12%;
		inset-inline: 30% 30%;
		z-index: 2;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.stop__visual--layered .stop__overlay img {
		max-block-size: 100%;
		max-inline-size: 100%;
		inline-size: auto;
		block-size: auto;
		margin: 0;
	}

	.stop__flow {
		min-block-size: calc(130vh - var(--space-9) * 2);
		justify-content: center;
		gap: var(--space-5);
	}
	.stop--tall .stop__flow { min-block-size: calc(180vh - var(--space-9) * 2); }
}

/* 🔄 2026-09-22 · "Belgesel fotoğrafa parallax uygulanmaz" kuralı şirket
   kararıyla kaldırıldı (Canlılık 02 · §34): yolculuk görselleri artık AI
   üretimi, kuralın gerekçesi (gerçek fotoğraf oynatılmaz) ortadan kalktı.
   Kaydırmaya bağlı yakınlaşma motion.css'te. */

.stop__eyebrow { color: var(--text-muted); }
.stop__title { color: var(--heading); }
.stop__body { color: var(--text-secondary); max-inline-size: 46ch; }

/* =============================================================================
   08K · KAPANIŞ — 80vh · koyu bant · container-text
   🔴 Kapanış cümlesi ("Bu yolun tamamı kayıtlıdır.") footer'da TEKRARLANMAZ.
   ============================================================================= */

.closure {
	display: flex;
	align-items: center;
	min-block-size: 60svh;
	padding-block: var(--space-9);
	text-align: center;
}
@media (min-width: 900px) { .closure { min-block-size: 80vh; } }

.closure__inner { display: flex; flex-direction: column; gap: var(--space-5); align-items: center; }
.closure__title { color: var(--band-heading); }
.closure__body { color: var(--band-text); max-inline-size: 54ch; }
.closure .evidence { inline-size: 100%; max-inline-size: 54ch; text-align: start; }

/* 2026-09-25 · sertifika adları — butonun altında, bölüm genişliğine eşit
   dağılır; telefonda alt alta. Yalnız yazı (R3: logo/numara yok). */
.closure__certs {
	list-style: none;
	margin: var(--space-2) 0 0;
	padding: var(--space-5) 0 0;
	inline-size: 100%;
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-3);
	position: relative;
	color: var(--band-heading);
	font-weight: 600;
}
/* Ayırıcı çizgi ayrı katman: halkalar birleşince ortadan iki yana açılır */
/* çizgi GSAP'tan --certs-line (0–1) ile açılır; yoksa tam */
.closure__certs::before {
	transform: scaleX(var(--certs-line, 1));
	content: "";
	position: absolute;
	inset: 0 0 auto;
	block-size: var(--border-width);
	background: var(--band-border);
}
@media (min-width: 640px) {
	.closure__certs { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); }
}
.closure--media .closure__certs { text-shadow: 0 1px 12px rgba(0, 0, 0, 0.35); }

/* 2026-09-28 · Üç sertifika, tek kalite çizgisi — varsayılan = SON HÂL
   (halkalar kenetli, çizgi açık). Hareket yalnız destekleyen tarayıcıda
   ve "hareket azaltılsın" kapalıyken; kaydırmaya eşlik eder, bir kez. */
.certs-rings {
	--cert-gold: #D6BE86;
	display: block;
	inline-size: min(220px, 62%);
	block-size: auto;
	margin-block: var(--space-4) calc(var(--space-2) * -1);
	overflow: visible;
}
.certs-rings__r { fill: none; stroke-width: 3.5; }
.certs-rings__r--1 { stroke: var(--band-heading); }
.certs-rings__r--2 { stroke: var(--band-accent); }
.certs-rings__r--3 { stroke: var(--cert-gold); }
.closure--media .certs-rings { filter: drop-shadow(0 1px 10px rgba(0, 0, 0, 0.35)); }
.certs-rings__check {
	fill: none;
	stroke: var(--band-heading);
	stroke-width: 4;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: 40;
}

@keyframes certs-join {
	from { transform: translateX(calc(var(--off) * 70px)); opacity: .15; }
	60%  { opacity: 1; }
}
@keyframes certs-line { from { transform: scaleX(0); } }
@keyframes certs-check { from { stroke-dashoffset: 40; } }

/* =============================================================================
   09 · KATALOG — 6 kategori ızgarası + Bioyem AYRI öne çıkan üretim bloğu
   🔴 L10 · X5 — Bioyem ızgarada sıradan kart DEĞİLDİR.
   🔴 Taksonomi sırası değişmez; yalnızca Bioyem'in SUNUMU farklıdır.
   ============================================================================= */

.catalog__head {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	justify-content: space-between;
	gap: var(--space-4);
	margin-block-end: var(--space-6);
}

/* Bioyem öne çıkan üretim bloğu — 🔴 kategori kartından BÜYÜK, küçültülmez */
.featured {
	margin-block-start: var(--space-7);
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-6);
	align-items: center;
	padding: var(--space-6);
	background: var(--surface-warm);
	border: var(--border-width-strong) solid var(--surface-warm-line);
	border-radius: var(--radius-lg);
}
@media (min-width: 900px) {
	.featured { grid-template-columns: minmax(0, 42fr) minmax(0, 58fr); gap: var(--space-8); padding: var(--space-8); }
}

.featured__media { display: flex; justify-content: center; }
.featured__media img {
	max-block-size: 420px;
	inline-size: auto;
	object-fit: contain;
	/* 2026-09-21 · şeffaf ambalaj yerine fotoğraf geldi (Bioyem_Genel);
	   köşeler sitedeki diğer fotoğraflarla aynı. Şeffaf PNG'de görünmez. */
	border-radius: var(--radius-md);
}
.featured__body { display: flex; flex-direction: column; gap: var(--space-4); align-items: flex-start; }
.featured__title { color: var(--heading); }
/* 2026-10-15 · kullanıcı: başlık da Bioyem'e gider; görünüm değişmez, yalnız el imleci */
.featured__title-link,
.featured__title-link:hover,
.featured__title-link:visited { color: inherit; text-decoration: none; cursor: pointer; }
.featured__text { color: var(--text-secondary); max-inline-size: 52ch; }

/* 🔴 Bioyem işareti Biosmyrna logosundan büyük gösterilmez — marka sınırı */
.featured__groups {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2);
}
.featured__groups a {
	display: inline-flex;
	align-items: center;
	min-block-size: var(--touch-min);
	padding-inline: var(--space-4);
	border: var(--border-width) solid var(--border);
	border-radius: var(--radius-form);
	font-size: var(--text-body-sm);
	color: var(--text-secondary);
	text-decoration: none;
}
.featured__groups a:hover { border-color: var(--action-secondary-border); color: var(--link); }

/* =============================================================================
   10 · BİLGİ MERKEZİ — 🔴 KOŞULLU
   İçerik yoksa bölüm hiç basılmaz; dummy yazı üretilmez (24).
   ============================================================================= */

/* =============================================================================
   11 · TEKLİF — koyu bant
   ============================================================================= */

.quote-cta {
	display: flex;
	align-items: center;
	min-block-size: 46svh;
	padding-block: var(--space-9);
	text-align: center;

	/* Jüt doku zemini — KB-1 kapatıldı, kullanıcı onayı 2026-09-09.
	   Kaynak: AI_EDITORIAL_ASSET_BRIEF_V1 E3 — "11 Teklif zemini".
	   `position` + `isolation`: dokuyu ::before ile arkaya almak için. */
	position: relative;
	isolation: isolate;
}

/* 🔴 Doku ayrı bir katmanda, opaklığı metni ETKİLEMEZ.
   Doğrudan `background-image` + `opacity` verilse metin de solardı.

   Opaklık %10 — E3'ün verdiği %8–12 aralığının ortası. Ölçülen kontrast
   (beyaz başlık / ink-100 gövde, primary-900 bant üzerinde):
     dokusuz        14,05:1  ·  12,47:1
     %10 dokuyla    11,73:1  ·  10,41:1
     en parlak lif  10,71:1  ·   9,50:1
   WCAG eşiği 4,5:1 — bolca pay var. Ölçüm: tools/img/bio_image_qc.py
   ile aynı yöntem (sRGB bağıl parlaklık).

   Görsel 1000 px / q62: %10 opaklıkta 1400 px sürümden farkı 0,9/255,
   yani görünmez. Ayrıntı burada işe yaramıyor, ağırlık yapıyor. */
.quote-cta::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background-image: image-set(
		url("../assets/texture/jute.webp") type("image/webp"),
		url("../assets/texture/jute.jpg")  type("image/jpeg"));
	background-size: cover;
	background-position: center;
	opacity: 0.10;
	pointer-events: none;
}
.quote-cta__inner {
	display: flex;
	flex-direction: column;
	gap: var(--space-5);
	align-items: center;
	max-inline-size: 620px;
	margin-inline: auto;
}
.quote-cta__title { color: var(--band-heading); }
.quote-cta__text { color: var(--band-text); }
.quote-cta__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); justify-content: center; }

/* =============================================================================
   PP2 · KATALOG SAYFASI
   ============================================================================= */

.catalog-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-6);
	align-items: start;
}
@media (min-width: 900px) {
	.catalog-layout { grid-template-columns: 230px minmax(0, 1fr); gap: var(--space-8); }

	/* 🔴 2026-09-09 · REGRESYON DÜZELTMESİ.
	   Düzen İKİ çocuk bekler: filtre sütunu + ürün sütunu. Filtre paneli
	   koşullu hâle getirilince (KNOWN_ISSUES §12.5/j) geriye kalan tek çocuk
	   230 px'lik FİLTRE sütununa düşüyordu.
	   Ölçüldü: kartlar 61 × 737 px — "ince uzun çerçeveler, hiçbir şey
	   okunamıyor" (kullanıcı bildirimi).
	   Filtre yokken düzen tek sütundur. */
	.catalog-layout--nofilter { grid-template-columns: minmax(0, 1fr); }
}

/* Filtre paneli — masaüstünde yanda sabit, mobilde katmanda açılır */
.filters {
	position: sticky;
	inset-block-start: calc(var(--header-height) + var(--space-5));
}
@media (max-width: 899px) {
	.filters {
		position: static;
		border: var(--border-width) solid var(--divider);
		border-radius: var(--radius-md);
		padding: var(--space-4);
	}
}
.filters__group + .filters__group {
	margin-block-start: var(--space-5);
	padding-block-start: var(--space-5);
	border-block-start: var(--border-width) solid var(--divider);
}
.filters__title {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.09em;
	color: var(--text-muted);
	margin-block-end: var(--space-3);
}

/* =============================================================================
   PP3 / PP4 · ÜRÜN DETAY
   Masaüstü 2 sütun · < 900 px tek sütun, görsel üstte
   ============================================================================= */

.product-head {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-6);
	align-items: start;
}
@media (min-width: 900px) {
	.product-head { grid-template-columns: minmax(0, 45fr) minmax(0, 55fr); gap: var(--space-8); }
}
.product-head__media img { inline-size: 100%; border-radius: var(--radius-md); background: var(--surface-alt); }
.product-head__body { display: flex; flex-direction: column; gap: var(--space-4); align-items: flex-start; }
/* 2026-10-14 · Bioyem ürün başlığı iki satır (kullanıcı): üstte ürün, altında dönem.
   Alt satır bir alt başlık kademesi (h2: 34 px masaüstü / 26 px telefon) ve aynı kalınlıkta
   ("koyu bırakmak daha doğru") — tek başlığın iki parçası olarak okunur. Ayraç " - " görünmez. */
.pd-title__ana, .pd-title__alt { display: block; }
.pd-title__alt { font-size: var(--text-h2); margin-block-start: .15em; }
.product-head__botanical { font-style: italic; color: var(--text-muted); }

/* ── Ambalaj görselleri (Bioyem, 2026-09-21) ──────────────────────────────
   Çuval dikey (~0,62) ve şeffaf PNG. KIRPILMAZ; `contain` ile tamamı görünür,
   yüksekliği ekranla sınırlanır — 45vw genişlikte ~1000 px'e çıkıyordu. */
.product-head__media--pack img {
	inline-size: 100%;
	max-block-size: min(72svh, 760px);
	object-fit: contain;
}
.pack-views__view { margin: 0; }
/* Büyüteç (2026-10-12) — yalnız [data-zoom] (Bioyem ürün görseli), fareli cihaz.
   İşaret ve mercek JS yoksa / dokunmatikte görünmez (.is-zoomable'ı JS ekler). */
.zoom-hint { display: none; }
.pack-views__view.is-zoomable { position: relative; cursor: zoom-in; }
.pack-views__view.is-zoomable .zoom-hint {
	display: grid; place-items: center; position: absolute;
	inset-block-start: var(--space-3); inset-inline-end: var(--space-3);
	inline-size: 36px; block-size: 36px; border-radius: 50%;
	background: var(--surface); border: var(--border-width) solid var(--border);
	color: var(--heading-brand); pointer-events: none; transition: opacity .2s;
}
.pack-views__view.is-zoomable .zoom-hint .icon { inline-size: 18px; block-size: 18px; }
.pack-views__view.is-zooming .zoom-hint { opacity: 0; }
.zoom-lens {
	position: absolute; top: 0; left: 0;   /* fiziksel: konum JS'te piksel olarak verilir */
	inline-size: 200px; block-size: 200px; border-radius: 50%;
	background-color: var(--surface-alt); background-repeat: no-repeat;
	border: 3px solid var(--surface); box-shadow: 0 0 0 1px var(--border), 0 12px 32px rgba(0, 0, 0, .28);
	pointer-events: none; opacity: 0; visibility: hidden; transition: opacity .15s, visibility .15s; z-index: 2;
}
.pack-views__view.is-zooming { cursor: none; }
.pack-views__view.is-zooming .zoom-lens { opacity: 1; visibility: visible; }
.pack-views__thumbs {
	display: flex;
	gap: var(--space-3);
	margin-block-start: var(--space-4);
	justify-content: center;
}
/* 🔴 Görsel <picture> içinde. Sarmalayıcıya boyut verilmezse img'nin
   %100 yüksekliği çözülmüyor, görsel kendi oranıyla uzayıp çerçevenin
   altından taşıyordu (şirket bildirimi, 2026-09-21). Düğme esnek kutu,
   picture blok ve tam boy; görsel ortada `contain`. */
.pack-views__thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	inline-size: 72px;
	block-size: 96px;
	padding: var(--space-1);
	overflow: hidden;
	border: 1px solid var(--border);
	border-radius: var(--radius-sm);
	background: var(--surface-alt);
	cursor: pointer;
}
.pack-views__thumb picture {
	display: block;
	inline-size: 100%;
	block-size: 100%;
}
.pack-views__thumb img {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	max-block-size: none;
	object-fit: contain;
	object-position: center;
	background: none;
	border-radius: 0;
}
.pack-views__thumb:hover { border-color: var(--link); }
.pack-views__thumb:focus-visible { outline: 2px solid var(--link); outline-offset: 2px; }
.pack-views__thumb[aria-pressed="true"] { border-color: var(--link); border-width: 2px; }

/* Grup sayfasındaki dönem kartı: çuval kare karta sığdırılır, kesilmez.
   `overflow: hidden` şart — aspect-ratio kutusu içerikle büyümesin diye;
   yoksa dikey çuval kartı 1:1 yerine ~1:1,6 uzatıyordu (ölçüldü: 436×686). */
.card--pack .card__media { position: relative; background: var(--surface-alt); overflow: hidden; }
/* Mutlak konum: `block-size: 100%` aspect-ratio kutusunda çözülmüyordu,
   görsel 681 px'e uzayıp alttan kırpılıyordu. */
.card--pack .card__img {
	position: absolute;
	inset: 0;
	box-sizing: border-box;
	inline-size: 100%;
	block-size: 100%;
	object-fit: contain;
	padding: var(--space-4);
}
html[lang="ar"] .product-head__botanical { font-style: normal; }

.product-gallery {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--space-2);
	margin-block-start: var(--space-3);
}
.product-gallery img { border-radius: var(--radius-sm); aspect-ratio: 1/1; object-fit: cover; }

.product-section + .product-section { margin-block-start: var(--space-8); }
.product-section__title { margin-block-end: var(--space-4); }

/* Bioyem dönem sayfası: metin | analitik değerler (2026-09-21).
   Ürün başlığından belirgin boşlukla ayrılır; sütunların üst kenarı hizalı.
   `.product-section + .product-section` boşluğu yan yana dururken sıfırlanır. */
.product-detail {
	display: grid;
	gap: var(--space-8);
	margin-block-start: var(--space-8);
	padding-block-start: var(--space-8);
	border-block-start: 1px solid var(--border);
}
@media (min-width: 900px) {
	.product-detail { margin-block-start: var(--space-9); }
	.product-detail--split {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
		gap: var(--space-8);
		align-items: start;
	}
}
.product-detail > .product-section + .product-section { margin-block-start: 0; }
.product-detail__text .rich { max-inline-size: 68ch; }

/* 🔴 2026-09-09 · Ürün gövdesi — teknik tablo DAR sol, açıklama GENİŞ sağ.
   Tablo tam genişlikte basılınca üç sütun arasında okunmayı zorlaştıran
   boşluk kalıyordu; tablo kendi doğal genişliğinde daha okunaklı.
   Tek sütunda (mobil) tablo ÖNCE gelir: teknik alıcı önce sayıya bakar. */
.product-body {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-7);
	align-items: start;
}
@media (min-width: 900px) {
	.product-body { grid-template-columns: minmax(0, 38fr) minmax(0, 62fr); gap: var(--space-8); }
}
.product-body__text .rich { max-inline-size: 68ch; }

/* Sertifikasyon rozetlerinin başlığı — rozet tek başına ne olduğunu söylemiyor */
.product-cert { display: flex; flex-direction: column; gap: var(--space-2); }
.product-cert__label { color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.06em; }

/* =============================================================================
   PP5 · SERTİFİKALAR · PP7 · POLİTİKALAR
   ============================================================================= */

.doc-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-5);
}
@media (min-width: 700px) { .doc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .doc-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

.policy-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-4);
}
@media (min-width: 700px) { .policy-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .policy-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

.policy {
	display: block;
	padding: var(--space-5);
	border: var(--border-width) solid var(--card-border);
	border-radius: var(--radius-md);
	background: var(--surface-raised);
	color: inherit;
	text-decoration: none;
}
.policy:hover { border-color: var(--action-secondary-border); }
.policy__summary { margin-block-start: var(--space-2); color: var(--text-secondary); font-size: var(--text-body-sm); }

/* =============================================================================
   PP6 · İÇERİK BLOKLARI
   ============================================================================= */

.page-head {
	padding-block: var(--space-8);
	background: var(--surface-warm);
	border-block-end: var(--border-width) solid var(--surface-warm-line);
}
.page-head__inner { display: grid; gap: var(--space-7); align-items: center; }
@media (min-width: 900px) {
	.page-head { padding-block: var(--space-9); }
	.page-head--media .page-head__inner { grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: var(--space-8); }
}
.page-head__eyebrow { margin-block-end: var(--space-3); }
.page-head__eyebrow a { color: var(--link); text-decoration: none; }
.page-head__eyebrow a:hover { text-decoration: underline; }
.page-head__title { color: var(--heading); max-inline-size: 20ch; }
.page-head__summary { margin-block-start: var(--space-5); color: var(--text-secondary); max-inline-size: 52ch; }
/* 2026-10-01 · özet birden çok paragrafsa ilki ana mesajdır: büyük, serif */
.page-head__summary > p:first-child:not(:only-child) {
	font-family: var(--font-heading); font-weight: 600; color: var(--heading);
	font-size: clamp(22px, 2.4vw, 30px); line-height: 1.25; text-wrap: balance;
	margin-block-end: var(--space-4);
}
.page-head__summary > p:first-child:not(:only-child) ~ p { font-size: var(--text-body-lg, 18px); }
.page-head__media img {
	display: block;
	inline-size: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: var(--radius-md);
}

.block + .block { margin-block-start: var(--space-8); }
.block__title { margin-block-end: var(--space-4); color: var(--heading); }

/* 🔴 align-items: start — metin görselin ÜST kenarıyla hizalanır.
   Önce `center` idi: 460 px yüksekliğindeki görselin yanında 244 px metin
   dikey ortalanınca alttan ve üstten ~108 px boşluk kalıyor, metin havada
   duruyordu (şirket bildirimi, 2026-09-16). */
.block-split {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-5);
	align-items: start;
}
/* 🔴 Dar ekranda metin sütunu ÖNCE gelir. Başlık artık bu sütunun içinde
   olduğu için, görsel önce gelseydi başlık görselin ALTINA düşerdi ve
   bölümü tanıtmak yerine ona alt yazı gibi okunurdu. */
.block-split__media { order: 2; }
@media (min-width: 900px) {
	.block-split { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-7); }
	/* Masaüstünde görsel `konum` alanına göre: start = başlangıç kenarı (sol),
	   end = bitiş kenarı (sağ). RTL'de kendiliğinden aynalanır.
	   🔴 2026-09-21 · `--start` için order: 0 ŞART. Dar ekran kuralı
	      (.block-split__media { order: 2 }) masaüstüne de sızıyor ve bütün
	      görselleri sağa itiyordu — 16 Eylül'den beri kurumsal ve ürün
	      sayfalarında dönüşüm çalışmıyordu. Bilgi Merkezi yazıları
	      `.article-body` kuralıyla (daha özgül) bilerek sağda kalır. */
	.block-split--start .block-split__media { order: 0; }
	.block-split--end .block-split__media { order: 2; }
}
/* Başlık artık metin sütununun içinde; görselin üst hizasına oturur. */
.block-split__text > .block__title:first-child { margin-block-start: 0; }

/* -----------------------------------------------------------------------------
   SABİT SOL KENAR — Bilgi Merkezi yazıları (şirket kararı, 2026-09-16)
   -----------------------------------------------------------------------------
   Sorun: düz metin bloğu `container-text` (720), görselli blok `container`
   (1280) kullanıyordu. Aynı yazıda metnin sol kenarı bloktan bloğa
   353 → 737 → 353 → 73 → 353 diye zıplıyordu; okurun gözü her blokta yeni
   bir sol kenar arıyordu.

   Çözüm: yazı gövdesindeki BÜTÜN bloklar aynı geniş çerçeveyi paylaşır ve
   içerikleri o çerçevenin SOL kenarına hizalanır. Düz metin okuma ölçüsünde
   (720) kalır, sadece artık ortalanmaz. Görselli blokta metin her zaman
   solda, görsel her zaman sağdadır.

   🔴 Kapsam yalnızca `.article-body`. Ürün ve kurumsal sayfalar Faz 7'de
      donduruldu; oradaki blok yerleşimi değişmez.
   ⚠️ Bedeli: görselin sol/sağ dönüşümlü yerleşimi sona erer. Sol kenarı
      sabitlemek ile görseli dönüşümlü koymak aynı anda mümkün değil.
   ----------------------------------------------------------------------- */
@media (min-width: 900px) {
	/* 1 · Düz metin ve alıntı blokları da geniş çerçeveye girer… */
	.article-body .block > .container-text {
		max-width: calc(var(--container-max) + var(--gutter) * 2);
	}
	/* …ama içerikleri okuma ölçüsünde ve sola hizalı kalır. */
	.article-body .block > .container-text > * {
		max-inline-size: var(--container-text);
		margin-inline: 0;
	}

	/* 2 · Görselli blokta metin solda, görsel sağda — her zaman.
	   `--start` / `--end` ayrımı yazı gövdesinde etkisizleşir; sınıf
	   veri dosyasında kalır, başka bağlamlarda hâlâ çalışır. */
	.article-body .block-split--start .block-split__media,
	.article-body .block-split--end   .block-split__media { order: 2; }
}

/* -----------------------------------------------------------------------------
   YAZI SAYFASI — içerik + konu ağacı (şirket kararı, 2026-09-16)
   -----------------------------------------------------------------------------
   Yazı sayfası liste sayfalarının iki sütunlu çerçevesini (`index-layout`)
   kullanır: solda içerik, sağda konu ağacı. İçerideki kapsayıcılar kendi
   genişlik/boşluklarını bırakır; sütunun kendisi çerçevedir. Böylece sol
   kenar sütunun kenarıdır ve sayfa boyunca değişmez.
   ----------------------------------------------------------------------- */
.article-layout .container,
.article-layout .container-text {
	max-width: none;
	padding-inline: 0;
	margin-inline: 0;
}
.article-layout .index-layout__main > header { max-inline-size: var(--container-text); }

/* Dönüşüm: görselli blokların ikincisi, dördüncüsü… "geniş" basılır —
   başlık, altında sütun genişliğinde görsel, altında metin. Sol kenar
   bozulmaz; ritim görselin yerinden değil genişliğinden gelir.
   `display: contents` metin sütununu çözer, başlık ile paragraf ayrı ayrı
   ızgara öğesi olur ve görsel araya girebilir. */
.block-split--wide { grid-template-columns: minmax(0, 1fr); }
.block-split--wide .block-split__text { display: contents; }
.block-split--wide .block__title { order: 0; margin-block-end: 0; }
.article-body .block-split--wide .block-split__media { order: 1; }
.block-split--wide .rich { order: 2; max-inline-size: var(--container-text); }
/* 4:3 kaynak sütun genişliğinde ~700 px yüksekliğe çıkıp ekranı dolduruyordu;
   16:9'a ortadan kırpılır (üstten ve alttan ~%12,5). */
.block-split--wide .block-split__media img { aspect-ratio: 16 / 9; object-fit: cover; }
@media (min-width: 900px) {
	.article-body .block-split--wide { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
}

/* Ağaçta açık kategorinin kardeş yazıları */
.topic-tree__sub {
	list-style: none;
	margin: var(--space-2) 0 var(--space-2);
	padding-inline-start: var(--space-4);
	border-inline-start: 1px solid var(--border);
}
.topic-tree__subitem + .topic-tree__subitem { margin-block-start: var(--space-1); }
.topic-tree__sublink {
	display: block;
	padding: var(--space-1) var(--space-2);
	border-radius: var(--radius-sm);
	color: var(--text-muted);
	text-decoration: none;
}
.topic-tree__sublink:hover,
.topic-tree__sublink:focus-visible { color: var(--link); background: var(--surface-alt); }
.topic-tree__sublink[aria-current="page"] { color: var(--heading); font-weight: 600; background: var(--surface-alt); }
.block-split__media img { inline-size: 100%; border-radius: var(--radius-md); }
.block-split__media figcaption { margin-block-start: var(--space-2); color: var(--text-muted); }

/* =============================================================================
   PP9 · BİLGİ MERKEZİ / YAZI
   ============================================================================= */

.article-body { padding-block: var(--space-6); }
.article-body > * + * { margin-block-start: var(--space-6); }

/* =============================================================================
   ARAMA SONUÇLARI
   ============================================================================= */

.results__group + .results__group { margin-block-start: var(--space-7); }
.results__list li { border-block-end: var(--border-width) solid var(--divider); }
.results__list a {
	display: block;
	padding-block: var(--space-4);
	text-decoration: none;
	color: inherit;
}
.results__list a:hover .results__title { color: var(--link); }
.results__title { font-weight: 600; }
.results__path { font-size: var(--text-caption); color: var(--text-muted); }

/* ═══════════════════════════════════════════════════════════════════════════
   BİLGİ MERKEZİ / BLOG — şirket brief'i, 2026-09-15

   🔴 Bloga özel TEMA YOKTUR (brief §13). Buradaki her şey mevcut token,
      ızgara ve tipografi ölçeğini kullanır; sayfa bir "haber sitesi" gibi
      görünmez. Yeni renk, yeni yazı tipi, yeni boşluk ölçeği eklenmedi.
   ⚠️ `.article-feature` adı bilerek seçildi: `.featured` ZATEN BAŞKA BİR
      BİLEŞENDİR (ana sayfa ürün vitrini). İkisi karışmasın.
   ═══════════════════════════════════════════════════════════════════════════ */

.article-feature {
	display: grid;
	gap: var(--space-5);
	align-items: center;
}

@media (min-width: 900px) {
	.article-feature {
		grid-template-columns: minmax(0, 58fr) minmax(0, 42fr);
		gap: var(--space-7);
	}
	/* Görsel yoksa metin tüm genişliği alır — boş sütun bırakılmaz. */
	.article-feature:not(:has(.article-feature__media)) { grid-template-columns: minmax(0, 1fr); }
}

.article-feature__media { overflow: hidden; border-radius: var(--radius-lg); }

.article-feature__img {
	inline-size: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	display: block;
}

.article-feature__body {
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
	align-items: flex-start;
}

.article-feature__title { color: var(--heading); }

.article-feature__link { color: inherit; text-decoration: none; }
.article-feature__link:hover,
.article-feature__link:focus-visible { color: var(--link); text-decoration: underline; }

.article-feature__summary { color: var(--text-secondary); max-inline-size: 60ch; }

/* ── Yazı meta satırı — kategori · tarih · okuma süresi ──────────────────── */

.article-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-2);
	color: var(--text-muted);
	margin: 0;
}

.article-meta__sep { color: var(--border); }

/* 2026-09-25 · dokunma alanı 19 → 24 px (WCAG 2.2 · 2.5.8). Satır yüksekliği
   değişmesin diye yalnız dikey iç boşluk; görünüm aynı. */
.article-meta .meta__cat {
	color: var(--link);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	min-block-size: 24px;
}
.article-meta .meta__cat:hover,
.article-meta .meta__cat:focus-visible { text-decoration: underline; }

/* ── Konu kartı — yazı sayısı yalnızca içerik varsa basılır ──────────────── */

.card--topic .card__meta { margin-block-start: auto; padding-block-start: var(--space-3); }

/* ── Paylaşım — üçüncü taraf betiği yok, düz bağlantı ────────────────────── */

.share {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-3) var(--space-4);
	padding-block: var(--space-4);
	border-block: 1px solid var(--border);
}

.share__label { color: var(--text-muted); margin: 0; }

.share__list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-4);
	list-style: none;
	margin: 0;
	padding: 0;
}

.share__link {
	color: var(--link);
	text-decoration: none;
	background: none;
	border: 0;
	padding: 0;
	font: inherit;
	cursor: pointer;
}

.share__link:hover,
.share__link:focus-visible { text-decoration: underline; }

/* ── Bağlantı listesi — ilgili SSS gibi düz listeler ─────────────────────── */

.link-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
}

/* ── Liste düzeni: içerik + sağ konu ağacı ───────────────────────────────────
   🔴 Şirket, 2026-09-15: konular en alttan SAĞ SÜTUNA taşındı.
   🔴 Mobilde tek sütun — ağaç içeriğin ALTINA iner. İçerik her zaman önce
      gelir; sağ sütun bir masaüstü davranışıdır.
   ⚠️ Yeni ızgara sistemi kurulmadı; mevcut `--space-*` ölçeği kullanılıyor. */

.index-layout { display: grid; gap: var(--space-6); }

@media (min-width: 900px) {
	.index-layout {
		grid-template-columns: minmax(0, 1fr) minmax(0, 260px);
		gap: var(--space-7);
		align-items: start;
	}
}

.index-layout__main { min-inline-size: 0; }

/* Sağ sütun daraldığı için kartlar iki sütuna iner; üç sütun sıkışıyordu. */
@media (min-width: 900px) {
	.grid-cards--narrow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ── Konu ağacı ─────────────────────────────────────────────────────────── */

.topic-tree {
	position: sticky;
	inset-block-start: var(--space-6);
	padding: var(--space-5);
	border: 1px solid var(--border);
	border-radius: var(--radius-lg);
	background: var(--surface);
}

@media (max-width: 899px) { .topic-tree { position: static; } }

.topic-tree__title { color: var(--heading); margin-block-end: var(--space-4); }

.topic-tree__list { list-style: none; margin: 0; padding: 0; }

.topic-tree__item + .topic-tree__item { margin-block-start: var(--space-1); }

.topic-tree__item--root {
	padding-block-end: var(--space-3);
	margin-block-end: var(--space-3);
	border-block-end: 1px solid var(--border);
}

.topic-tree__link {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--space-3);
	padding: var(--space-2) var(--space-3);
	border-radius: var(--radius-sm);
	color: var(--text-secondary);
	text-decoration: none;
	border-inline-start: 2px solid transparent;
}

.topic-tree__link:hover,
.topic-tree__link:focus-visible { color: var(--link); background: var(--surface-alt); }

.topic-tree__link[aria-current="page"] {
	color: var(--heading);
	font-weight: 600;
	border-inline-start-color: var(--brand);
	background: var(--surface-alt);
}

.topic-tree__count { color: var(--text-muted); flex: none; }

/* ── Önceki / sonraki — Teknik Bilgiler ──────────────────────────────────── */

.prevnext {
	display: grid;
	gap: var(--space-4);
	padding-block-start: var(--space-5);
	border-block-start: 1px solid var(--border);
}

@media (min-width: 700px) {
	.prevnext { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.prevnext__link {
	display: flex;
	flex-direction: column;
	gap: var(--space-2);
	padding: var(--space-4);
	border: 1px solid var(--border);
	border-radius: var(--radius-lg);
	text-decoration: none;
	color: var(--text-secondary);
}

.prevnext__link:hover,
.prevnext__link:focus-visible { border-color: var(--link); color: var(--link); }

.prevnext__label { color: var(--text-muted); }
.prevnext__title { color: var(--heading); }
.prevnext__link:hover .prevnext__title { color: var(--link); }

/* Sonraki bağlantı sağa yaslanır; RTL'de kendiliğinden aynalanır. */
.prevnext__link--next { text-align: end; }

.prevnext__slot { display: none; }
@media (min-width: 700px) { .prevnext__slot { display: block; } }

/* =============================================================================
   SERTİFİKALAR · giriş + kontrol kuruluşları (2026-09-21)
   Logolar resmîdir: beyaz plaka üzerinde, renkleri değiştirilmez, kırpılmaz.
   ============================================================================= */
.cert-intro { display: grid; gap: var(--space-7); align-items: start; }
@media (min-width: 900px) {
	.cert-intro { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-8); }
}
.cert-intro__text { max-inline-size: 64ch; }
.cert-bodies {
	padding: var(--space-5);
	border: var(--border-width) solid var(--card-border);
	border-radius: var(--radius-md);
	background: var(--surface-raised);
}
.cert-bodies__title { color: var(--heading); margin-block-end: var(--space-4); }
.cert-bodies__list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-4); }
.cert-bodies__item { display: flex; align-items: center; gap: var(--space-4); }
.cert-bodies__logo {
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	inline-size: 132px;
	block-size: 72px;
	padding: var(--space-2);
	background: var(--white);
	border: var(--border-width) solid var(--divider);
	border-radius: var(--radius-sm);
}
.cert-bodies__logo picture { display: contents; }
.cert-bodies__logo img { max-inline-size: 100%; max-block-size: 100%; inline-size: auto; block-size: auto; object-fit: contain; }
.cert-bodies__text { display: flex; flex-direction: column; gap: var(--space-1); }
.cert-bodies__name { color: var(--heading); font-weight: 600; }
.cert-bodies__scope { color: var(--text-muted); }

/* =============================================================================
   İÇERİK AKIŞI — editoryal düzen (2026-09-21 tasarım revizyonu)
   İçerik sayfalarında (content.php) tek düze beyaz sütun yerine: öne çıkan
   giriş → başlık solda / metin sağda → sırayla renkli zemin bantları.
   ============================================================================= */
.content-flow { counter-reset: bolum; }
.content-flow .block { padding-block: var(--space-8); }
.content-flow .block + .block { margin-block-start: 0; }
.content-flow .block--band { background: var(--surface-alt); }

/* Öne çıkan giriş */
.block-lead {
	max-inline-size: 60ch;
	font-family: var(--font-heading);
	font-size: var(--text-quote);
	line-height: var(--lh-h3);
	color: var(--heading);
	padding-inline-start: var(--space-6);
	border-inline-start: 3px solid var(--link);
}
.block-lead p + p { margin-block-start: var(--space-4); }

/* Başlık solda, metin sağda. Başlığın üstünde marka yeşilinde sıra
   numarası (01, 02…) — yapısal işaret, içerik iddiası değil; bölümleri
   okunur kılar ve nötr sayfaya renk getirir. Latin rakam (F3-09). */
.block-edit { display: grid; gap: var(--space-5); }
@media (min-width: 900px) {
	.block-edit { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: var(--space-8); align-items: start; }
	.block-edit__title { position: sticky; inset-block-start: var(--space-9); }
}
.block-edit__title { color: var(--heading); text-wrap: balance; }
/* Aynı sıra görselli bölümlerin başlıklarında da sürer — tek sayfada tutarlı */
.block--editorial .block-edit__title::before,
.content-flow .block--textimage .block__title::before {
	counter-increment: bolum;
	content: counter(bolum, decimal-leading-zero);
	display: block;
	margin-block-end: var(--space-3);
	font-family: var(--font-body);
	font-size: var(--text-body-sm);
	font-weight: 600;
	letter-spacing: 0.08em;
	color: var(--link);   /* temaya göre açılır (koyu temada --d-link) */
	padding-block-end: var(--space-3);
	border-block-end: 2px solid var(--link);
	inline-size: fit-content;
	min-inline-size: 3ch;
}
.block-edit__body { max-inline-size: 64ch; }
.block-edit__body p + p { margin-block-start: var(--space-4); }

/* Görselli blok bantta da aynı ölçüde */
.content-flow .block--textimage .container { max-width: calc(var(--container-max) + var(--gutter) * 2); }

/* =============================================================================
   TEKLİF KARTI — iç sayfalar (2026-09-21). Ana sayfanın koyu bandı ayrı.
   ============================================================================= */
.quote-cta--compact {
	display: block;
	min-block-size: 0;
	padding-block: var(--space-8);
	text-align: start;
	background: none;
}
.quote-cta--compact::before { content: none; }
.quote-card {
	display: grid;
	gap: var(--space-5);
	align-items: center;
	padding: var(--space-7);
	border-radius: var(--radius-lg);
	background: var(--action-soft-bg);
	border: var(--border-width) solid var(--card-border);
}
@media (min-width: 900px) {
	.quote-card { grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-8); padding: var(--space-8); }
}
.quote-card__title { color: var(--heading); margin-block-end: var(--space-3); }
.quote-card__text p { color: var(--text-secondary); max-inline-size: 56ch; }


/* =============================================================================
   İÇERİK BLOKLARI V2 — 2026-10-01 (lib/blocks-v2.php)
   Kalite Yönetimi görsel yeniden düzeni — kullanıcı brifi. Yeni renk yok;
   yalnızca mevcut token'lar. Kutu yerine ince çizgi; ritim tipografi ve
   boşlukla kurulur. Mantıksal özellikler: Arapçada akış aynalanır.
   ============================================================================= */

.block-v2 .v2-title { margin: 0 0 var(--space-4); max-inline-size: 24ch; }
.v2-lede {
	margin: 0;
	font-family: var(--font-heading);
	font-weight: 600;
	font-size: clamp(28px, 4.2vw, 52px);
	line-height: 1.12;
	letter-spacing: -.01em;
	color: var(--heading);
	text-wrap: balance;
	max-inline-size: 22ch;
}
.v2-intro { max-inline-size: 62ch; margin-block-start: var(--space-4); color: var(--text-secondary); }
.v2-intro > :last-child, .v2-outro > :last-child { margin-block-end: 0; }
.v2-outro { max-inline-size: 68ch; margin-block-start: var(--space-7); color: var(--text-secondary); }
.content-flow .block--cont { padding-block-start: 0; }

/* Büyük ifade */
.content-flow .block--statement { padding-block: var(--space-9) var(--space-6); }
.v2-statement { display: grid; gap: var(--space-5); }
.v2-statement__body { max-inline-size: 58ch; color: var(--text-secondary); }

/* Bilgi kartları — kutu değil, üst çizgi */
.content-flow .block--cards:not(.block--cont) { background: var(--surface-alt); }
.v2-cards {
	list-style: none; margin: var(--space-7) 0 0; padding: 0;
	display: grid; gap: var(--space-6) var(--space-5);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (min-width: 1024px) {
	.v2-cards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.v2-cards--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 559px) { .v2-cards { grid-template-columns: minmax(0, 1fr); } }
.v2-card {
	display: grid; align-content: start; gap: var(--space-2);
	padding-block-start: var(--space-4);
	border-block-start: var(--border-width-strong) solid var(--heading-brand);
}
.v2-card__label { margin: 0; color: var(--heading); }
.v2-card__text { margin: 0; color: var(--text-secondary); font-size: var(--text-body-sm, 15px); line-height: 1.6; }

/* Akış — ortak */
.v2-flow { list-style: none; margin: var(--space-7) 0 0; padding: 0; }
.v2-flow__label { font-family: var(--font-heading); font-weight: 600; color: var(--heading); line-height: 1.25; }
.v2-flow__text { color: var(--text-secondary); font-size: var(--text-body-sm, 15px); }
[dir="rtl"] .v2-flow__arrow .icon { transform: scaleX(-1); }

/* Akış — numaralı aşamalar (yatay; telefonda dikey) */
.v2-flow--numara { position: relative; display: grid; gap: var(--space-5); grid-template-columns: repeat(4, minmax(0, 1fr)); }
.v2-flow--numara.v2-flow--n3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.v2-flow--numara.v2-flow--n5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.v2-flow--numara::before {
	content: ""; position: absolute; inset-inline: 22px; inset-block-start: 22px;
	block-size: var(--border-width); background: var(--border);
}
.v2-flow--numara .v2-flow__step { position: relative; display: grid; gap: var(--space-4); align-content: start; }
.v2-flow__num {
	display: inline-grid; place-items: center; position: relative; z-index: 1;
	inline-size: 44px; block-size: 44px; border-radius: 50%;
	border: var(--border-width) solid var(--heading-brand); background: var(--surface);
	color: var(--heading-brand); font-family: var(--font-body); font-weight: 600; font-size: 14px;
	font-variant-numeric: tabular-nums;
}
.v2-flow--numara .v2-flow__label { font-size: clamp(19px, 1.8vw, 24px); }
@media (max-width: 759px) {
	.v2-flow--numara, .v2-flow--numara.v2-flow--n3, .v2-flow--numara.v2-flow--n5 { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
	.v2-flow--numara::before { inset-inline: 22px auto; inset-block: 22px 22px; block-size: auto; inline-size: var(--border-width); }
	.v2-flow--numara .v2-flow__step { grid-template-columns: 44px minmax(0, 1fr); align-items: center; gap: var(--space-4); }
}

/* Akış — dikey adımlar, oklu (başlık solda, akış sağda) */
@media (min-width: 900px) {
	.block--flow-ok > .container { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 0 var(--space-9); align-items: start; }
	.block--flow-ok .v2-title, .block--flow-ok .v2-intro { grid-column: 1; }
	.block--flow-ok .v2-flow--ok { grid-column: 2; grid-row: 1 / span 3; margin-block-start: 0; }
	.block--flow-ok .v2-outro { grid-column: 1 / -1; }
}
.v2-flow--ok { display: grid; max-inline-size: 560px; }
.v2-flow--ok .v2-flow__step {
	position: relative; display: block;
	padding: var(--space-4) var(--space-5);
	border: var(--border-width) solid var(--divider); border-radius: var(--radius-md);
	background: var(--surface);
}
.v2-flow--ok .v2-flow__step:not(:last-child) { margin-block-end: var(--space-7); }
.v2-flow--ok .v2-flow__step:last-child { border-color: var(--heading-brand); }
.v2-flow--ok .v2-flow__label { font-size: clamp(17px, 1.5vw, 20px); }
.v2-flow--ok .v2-flow__arrow {
	position: absolute; inset-inline-start: var(--space-5); inset-block-start: 100%;
	block-size: var(--space-7); display: grid; place-items: center; color: var(--heading-brand);
}

/* Akış — yatay şerit, koyu bant */
.content-flow .block--dark { background: var(--band); color: var(--band-text); }
.block--dark .v2-title {
	font-family: var(--font-body); font-size: var(--text-overline, 13px); font-weight: 600;
	letter-spacing: .12em; text-transform: uppercase; color: var(--band-accent); max-inline-size: none;
}
.block--dark .v2-lede { color: var(--band-heading); max-inline-size: 20ch; }
.block--dark .v2-outro, .block--dark .v2-intro { color: var(--band-text); }
.v2-flow--serit {
	display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3) var(--space-2);
	padding-block: var(--space-5);
	border-block: var(--border-width) solid var(--band-border);
}
.v2-flow--serit .v2-flow__step { display: inline-flex; align-items: center; gap: var(--space-2); }
.v2-flow--serit .v2-flow__label { font-family: var(--font-body); font-size: clamp(15px, 1.4vw, 18px); color: var(--band-heading); }
.v2-flow--serit .v2-flow__arrow { display: inline-grid; color: var(--band-accent); }
@media (max-width: 639px) {
	.v2-flow--serit { flex-direction: column; align-items: flex-start; gap: var(--space-2); }
	.v2-flow--serit .v2-flow__step { flex-direction: column; align-items: flex-start; }
	.v2-flow--serit .v2-flow__arrow .icon { transform: rotate(90deg); }
}

/* Akış — birleşen (girdiler → tek sonuç) */
.content-flow .block--flow-birlesim { background: var(--surface-alt); }
.v2-merge { display: grid; justify-items: center; margin-block-start: var(--space-7); }
.v2-merge__ins { list-style: none; margin: 0; padding: 0; inline-size: 100%; display: grid; gap: var(--space-5); grid-template-columns: repeat(3, minmax(0, 1fr)); }
.v2-merge__ins--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v2-merge__in { padding-block-start: var(--space-4); border-block-start: var(--border-width-strong) solid var(--heading-brand); text-align: center; }
.v2-merge__label { font-family: var(--font-heading); font-weight: 600; font-size: clamp(17px, 1.6vw, 21px); color: var(--heading); }
.v2-merge__join {
	position: relative; inline-size: calc(100% * 2 / 3); block-size: var(--space-6);
	border: var(--border-width) solid var(--border); border-block-start: 0;
	border-end-start-radius: var(--radius-lg); border-end-end-radius: var(--radius-lg);
}
.v2-merge__ins--2 + .v2-merge__join { inline-size: 50%; }
.v2-merge__join::after {
	content: ""; position: absolute; inset-inline-start: 50%; inset-block-start: 100%;
	inline-size: var(--border-width); block-size: var(--space-6); background: var(--border);
}
.v2-merge__out {
	margin: var(--space-6) 0 0; padding: var(--space-4) var(--space-6);
	border: var(--border-width-strong) solid var(--heading-brand); border-radius: var(--radius-md);
	background: var(--surface); color: var(--heading-brand);
	font-family: var(--font-heading); font-weight: 600; font-size: clamp(19px, 1.9vw, 24px); text-align: center;
}
@media (max-width: 759px) {
	.v2-merge__ins, .v2-merge__ins--2 { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
	.v2-merge__join, .v2-merge__ins--2 + .v2-merge__join { inline-size: var(--border-width); border: 0; border-radius: 0; background: var(--border); }
}

/* Vurgu alanı — kartlı bölümün ardından gelirse onun zemininde kalır */
.content-flow .block--callout { padding-block-start: var(--space-4); }
.content-flow .block--cards:not(.block--cont) + .block--callout { background: var(--surface-alt); padding-block-start: 0; }
.v2-callout { display: grid; gap: var(--space-3); padding-inline-start: var(--space-6); border-inline-start: 3px solid var(--heading-brand); }
.v2-callout__text { margin: 0; font-family: var(--font-heading); font-weight: 600; font-size: clamp(22px, 2.6vw, 32px); line-height: 1.25; color: var(--heading); text-wrap: balance; }
.v2-callout__note { color: var(--text-secondary); }

/* Kapanış manifestosu */
.content-flow .block--manifesto {
	position: relative; isolation: isolate; overflow: hidden; overflow: clip;
	padding-block: clamp(88px, 14vw, 168px);
	background: var(--band); color: var(--band-heading); text-align: center;
}
.v2-manifesto__media { position: absolute; inset: 0; z-index: -2; }
.v2-manifesto__media picture, .v2-manifesto__media img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
.block--manifesto-media::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(8, 18, 12, .62), rgba(8, 18, 12, .74)); }
/* Faz 10 (2026-10-19 · kullanıcı): sayfa manifestoyla bitse de alt bilgiyle birleşmez — diğer sayfalardaki
   boşluk korunur (önceki kural footer'ın üst payını sıfırlıyordu). */
.v2-manifesto { display: grid; justify-items: center; gap: var(--space-7); }
.v2-manifesto__text {
	margin: 0; font-family: var(--font-heading); font-weight: 600;
	font-size: clamp(28px, 4.4vw, 52px); line-height: 1.18; letter-spacing: -.01em;
	color: var(--band-heading); text-wrap: balance; max-inline-size: 24ch;
}

/* Akış hareketleri GSAP'ta (scripts/motion-v2.js) — 2026-10-01 */
@keyframes v2-line { from { transform: scaleX(0); } }
@keyframes v2-line-y { from { transform: scaleY(0); } }

/* =============================================================================
   İÇERİK BLOKLARI V2 — HAREKET (2026-10-01, kullanıcı: "hepsini uygula")
   Yalnız sayfadaki çizgi, ok ve kutular; yeni çizim yok. Varsayılan = SON
   HÂL. Kaydırmaya eşlik eder (view timeline), bir kez; metin en düşük
   hâlinde bile okunur (opacity ≥ .35). Hareket azaltma / destek yoksa durağan.
   ============================================================================= */

/* 1 · Omurga — son hâlde halkalar dolu */
.v2-flow--numara .v2-flow__num { background: var(--heading-brand); color: var(--surface); }

@keyframes v2-fill { from { background: var(--surface); color: var(--heading-brand); } }
@keyframes v2-rise { from { opacity: .35; transform: translateY(14px); } }
@keyframes v2-rise-final { from { opacity: .35; transform: translateY(14px); border-color: var(--divider); } 60% { border-color: var(--divider); } }
@keyframes v2-drop { from { transform: scaleY(0); } }
@keyframes v2-meet { from { --v2p: 0%; } }
@keyframes v2-out { from { opacity: .35; transform: scale(.96); } }
@keyframes v2-light { from { opacity: .35; } }

/* =============================================================================
   İZ BİÇİMLERİ — İzlenebilirlik (2026-10-01, kullanıcı brifi)
   Kalite sayfasından ayrı karakter: kare işaret, tek ince iz, büyük harfli
   etiket, iki renkli yön (geri = marka yeşili, ileri = zeytin). Yeni renk yok.
   ============================================================================= */

/* Küçük zeytin yazı: açık temada paletin accent-700'ü (kontrast), koyuda mevcut zeytin */
:root { --v2-accent-ink: var(--accent-700); }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --v2-accent-ink: var(--accent); } }
:root[data-theme="dark"] { --v2-accent-ink: var(--accent); }

.v2-caps { font-family: var(--font-body); font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }

/* Ürünün izi */
.v2-trace { list-style: none; margin: var(--space-8) 0 0; padding: 0; position: relative; display: grid; gap: var(--space-5); grid-template-columns: repeat(6, minmax(0, 1fr)); }
.v2-trace--n4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.v2-trace--n5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.v2-trace::before { content: ""; position: absolute; inset-inline: 0; inset-block-start: 6px; block-size: var(--border-width); background: var(--heading-brand); opacity: .55; }
.v2-trace__stop { position: relative; display: grid; align-content: start; gap: var(--space-2); }
.v2-trace__mark { inline-size: 13px; block-size: 13px; background: var(--surface); border: var(--border-width-strong) solid var(--heading-brand); position: relative; z-index: 1; margin-block-end: var(--space-3); }
.v2-trace__stop:first-child .v2-trace__mark, .v2-trace__stop:last-child .v2-trace__mark { background: var(--heading-brand); }
.v2-trace__num { font-family: var(--font-body); font-size: 13px; font-weight: 600; color: var(--v2-accent-ink); font-variant-numeric: tabular-nums; }
.v2-trace__label { margin: 0; font-family: var(--font-body); font-weight: 600; letter-spacing: .1em; text-transform: uppercase; font-size: 15px; color: var(--heading); }
.v2-trace__text { margin: 0; color: var(--text-secondary); font-size: var(--text-body-sm); line-height: 1.55; }
@media (max-width: 899px) {
	.v2-trace, .v2-trace--n4, .v2-trace--n5 { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); padding-inline-start: var(--space-6); }
	.v2-trace::before { inset-inline: 6px auto; inset-block: 6px 6px; inline-size: var(--border-width); block-size: auto; }
	.v2-trace__mark { position: absolute; inset-inline-start: calc(-1 * var(--space-6)); inset-block-start: 3px; margin: 0; }
}

/* Kısa köprü */
.content-flow .block--cards:not(.block--cont) + .block--flow-geri { background: var(--surface-alt); }
.v2-bridge { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3) var(--space-6); padding-block: var(--space-5); border-block: var(--border-width) solid var(--divider); }
.v2-bridge__tag { margin: 0; font-family: var(--font-body); font-weight: 600; letter-spacing: .12em; text-transform: uppercase; font-size: 13px; color: var(--v2-accent-ink); }
.v2-bridge__chain { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.v2-bridge__chain li { display: inline-flex; align-items: center; gap: var(--space-2); font-family: var(--font-heading); font-weight: 600; font-size: clamp(18px, 1.8vw, 22px); color: var(--heading); }
.v2-bridge__arrow { display: inline-grid; color: var(--heading-brand); }
[dir="rtl"] .v2-bridge__arrow .icon { transform: scaleX(-1); }

/* Kayıt diyagramı */
.v2-record { margin-block-start: var(--space-8); display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; }
.v2-record__side { list-style: none; margin: 0; padding: 0; position: relative; display: grid; gap: var(--space-5); }
.v2-record__field { position: relative; }
.v2-record__field span { display: inline-block; padding: var(--space-2) 0; font-family: var(--font-body); font-weight: 600; font-size: 15px; letter-spacing: .04em; color: var(--heading); }
.v2-record__side--start { text-align: end; padding-inline-end: var(--space-8); }
.v2-record__side--end { padding-inline-start: var(--space-8); }
.v2-record__side--start .v2-record__field::after,
.v2-record__side--end .v2-record__field::before {
	content: ""; position: absolute; inset-block-start: 50%; inline-size: calc(var(--space-8) - 8px);
	block-size: var(--border-width); background: var(--border);
}
.v2-record__side--start .v2-record__field::after { inset-inline-end: calc(-1 * var(--space-8)); }
.v2-record__side--end .v2-record__field::before { inset-inline-start: calc(-1 * var(--space-8) + 8px); }
.v2-record__side::after { content: ""; position: absolute; inset-block: 21px; inline-size: var(--border-width); background: var(--border); }
.v2-record__side--start::after { inset-inline-end: 0; }
.v2-record__side--end::after { inset-inline-start: 0; }
.v2-record__core { position: relative; display: grid; place-items: center; inline-size: clamp(180px, 20vw, 240px); aspect-ratio: 1; border: var(--border-width-strong) solid var(--heading-brand); background: var(--surface); }
.v2-record__core::before, .v2-record__core::after { content: ""; position: absolute; inset-block-start: 50%; inline-size: var(--space-8); block-size: var(--border-width); background: var(--border); }
.v2-record__core::before { inset-inline-end: 100%; }
.v2-record__core::after { inset-inline-start: 100%; }
.v2-record__core-label { font-family: var(--font-body); font-weight: 600; letter-spacing: .12em; text-transform: uppercase; font-size: 15px; color: var(--heading-brand); text-align: center; padding-inline: var(--space-4); }
.v2-record__core-label::before { content: ""; display: block; inline-size: 13px; block-size: 13px; margin: 0 auto var(--space-3); background: var(--heading-brand); }
@media (max-width: 759px) {
	.v2-record { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-4); }
	.v2-record__core { grid-column: 1 / -1; grid-row: 1; justify-self: center; inline-size: 200px; margin-block-end: var(--space-3); }
	.v2-record__core::before, .v2-record__core::after, .v2-record__side::after,
	.v2-record__side--start .v2-record__field::after, .v2-record__side--end .v2-record__field::before { display: none; }
	.v2-record__side--start, .v2-record__side--end { text-align: start; padding: 0; gap: var(--space-3); }
	.v2-record__field { border-block-start: var(--border-width) solid var(--divider); }
}

/* Duraklar + ortak hat */
.v2-line { margin-block-start: var(--space-7); }
.v2-line__stops { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); }
.v2-line__stops--n4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.v2-line__stops--n6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.v2-line__stop { position: relative; display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); padding-block-end: var(--space-6); padding-inline-end: var(--space-3); }
.v2-line__label { font-family: var(--font-heading); font-weight: 600; font-size: clamp(17px, 1.7vw, 22px); color: var(--heading); }
.v2-line__arrow { color: var(--text-muted); display: inline-grid; }
.v2-line__stop::after { content: ""; position: absolute; inset-inline-start: 0; inset-block-end: 0; inline-size: var(--border-width); block-size: var(--space-5); background: var(--heading-brand); }
.v2-line__thread { block-size: var(--border-width-strong); background: var(--heading-brand); }
[dir="rtl"] .v2-line__arrow .icon { transform: scaleX(-1); }
@media (max-width: 759px) {
	.v2-line { display: grid; grid-template-columns: var(--border-width-strong) minmax(0, 1fr); column-gap: var(--space-5); }
	.v2-line__thread { grid-column: 1; grid-row: 1; block-size: auto; }
	.v2-line__stops, .v2-line__stops--n4, .v2-line__stops--n6 { grid-column: 2; grid-row: 1; grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
	.v2-line__stop { padding: 0; }
	.v2-line__stop::after { inset-inline-start: calc(-1 * var(--space-5)); inset-block: 50% auto; inline-size: var(--space-4); block-size: var(--border-width); }
	.v2-line__arrow { display: none; }
}

/* Dikey sakin dizi — kimlik */
.content-flow .block--flow-kimlik { padding-block: var(--space-10, 128px); text-align: center; }
.block--flow-kimlik .v2-title, .block--flow-kimlik .v2-lede, .block--flow-kimlik .v2-outro { margin-inline: auto; }
.block--flow-kimlik .v2-lede { font-size: clamp(22px, 2.6vw, 32px); line-height: 1.3; max-inline-size: 30ch; color: var(--text-secondary); font-weight: 500; margin-block-start: var(--space-4); }
.block--flow-kimlik .v2-outro { max-inline-size: 60ch; }
.v2-ident { list-style: none; margin: var(--space-8) auto 0; padding: 0; display: grid; justify-items: center; }
.v2-ident__step { font-family: var(--font-heading); font-weight: 600; font-size: clamp(26px, 3.4vw, 44px); line-height: 1.1; color: var(--heading); }
.v2-ident__step + .v2-ident__step::before { content: ""; display: block; inline-size: var(--border-width); block-size: var(--space-6); margin: var(--space-3) auto; background: var(--border); }
.v2-ident__step:first-child { font-family: var(--font-body); font-size: 14px; letter-spacing: .16em; text-transform: uppercase; color: var(--v2-accent-ink); }
.v2-ident__step:last-child { color: var(--heading-brand); }

/* İki yönlü akış — ana görsel */
.content-flow .block--flow-iki-yon { background: var(--surface-alt); padding-block: var(--space-9); }
.v2-bidir { margin-block: var(--space-8) var(--space-2); display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; }
.v2-bidir__side { display: grid; gap: var(--space-3); }
.v2-bidir__tag { margin: 0; font-family: var(--font-body); font-weight: 600; letter-spacing: .12em; text-transform: uppercase; font-size: 13px; }
.v2-bidir__side--back .v2-bidir__tag { color: var(--heading-brand); text-align: end; }
.v2-bidir__side--fwd .v2-bidir__tag { color: var(--v2-accent-ink); }
.v2-bidir__side--back .v2-bidir__tag::before { content: "← "; }
.v2-bidir__side--fwd .v2-bidir__tag::after { content: " →"; }
[dir="rtl"] .v2-bidir__side--back .v2-bidir__tag::before { content: "→ "; }
[dir="rtl"] .v2-bidir__side--fwd .v2-bidir__tag::after { content: " ←"; }
.v2-bidir__list { list-style: none; margin: 0; padding: 0; position: relative; display: flex; justify-content: space-around; align-items: center; min-block-size: 64px; }
.v2-bidir__side--back .v2-bidir__list { flex-direction: row-reverse; }
.v2-bidir__list::before { content: ""; position: absolute; inset-inline: 0; inset-block-start: 50%; block-size: var(--border-width-strong); }
.v2-bidir__side--back .v2-bidir__list::before { background: var(--heading-brand); }
.v2-bidir__side--fwd .v2-bidir__list::before { background: var(--accent); }
.v2-bidir__item { position: relative; z-index: 1; padding: var(--space-2) var(--space-4); background: var(--surface-alt); font-family: var(--font-heading); font-weight: 600; font-size: clamp(16px, 1.6vw, 20px); color: var(--heading); text-align: center; }
.v2-bidir__core { display: grid; place-items: center; inline-size: clamp(150px, 15vw, 190px); aspect-ratio: 1; border-radius: 50%; background: var(--heading-brand); color: var(--surface); text-align: center; padding: var(--space-4); }
.v2-bidir__core span { font-family: var(--font-body); font-weight: 600; letter-spacing: .1em; text-transform: uppercase; font-size: 14px; line-height: 1.4; }
@media (max-width: 759px) {
	.v2-bidir { grid-template-columns: minmax(0, 1fr); justify-items: center; gap: 0; }
	.v2-bidir__side { justify-items: center; }
	.v2-bidir__side--back { order: 0; }
	.v2-bidir__core { order: 1; }
	.v2-bidir__side--fwd { order: 2; }
	.v2-bidir__side--back .v2-bidir__tag, .v2-bidir__side--fwd .v2-bidir__tag { text-align: center; }
	.v2-bidir__list, .v2-bidir__side--back .v2-bidir__list { flex-direction: column; gap: var(--space-5); padding-block: var(--space-5); }
	.v2-bidir__side--back .v2-bidir__list { flex-direction: column-reverse; }
	.v2-bidir__list::before { inset-inline: auto; inset-inline-start: 50%; inset-block: 0; inline-size: var(--border-width-strong); block-size: auto; }
	.v2-bidir__side--fwd { padding-block-start: 0; }
}

/* Manifesto — açık zemin (görselsiz) */
.content-flow .block--manifesto-light { background: var(--surface); color: var(--heading); padding-block: clamp(64px, 8vw, 112px); }   /* Faz 10 · kullanıcı: 200 px fazla boş (önceki clamp(112px, 16vw, 200px)) */
.block--manifesto-light .v2-manifesto__text { color: var(--heading); font-weight: 500; }
.v2-manifesto__eyebrow { margin: 0; font-family: var(--font-body); font-weight: 600; letter-spacing: .16em; text-transform: uppercase; font-size: 13px; color: var(--v2-accent-ink); }
.block--manifesto-media .v2-manifesto__eyebrow { color: var(--band-accent); }
.block--manifesto-light .v2-manifesto { gap: var(--space-6); }
.block--manifesto-light .v2-manifesto__eyebrow::after { content: ""; display: block; inline-size: 48px; block-size: var(--border-width); margin: var(--space-4) auto 0; background: var(--heading-brand); }

/* =============================================================================
   İZ BİÇİMLERİ — HAREKET (2026-10-01, kullanıcı: "hepsini uygulayalım")
   Yalnız sayfadaki iz, işaret ve çizgiler; yeni çizim yok. Varsayılan = SON
   HÂL; kaydırmaya eşlik eder, bir kez. Metin en düşük hâlde bile okunur
   (opacity .35). Geri alma: bu bölümün tamamı silinir.
   ============================================================================= */

@keyframes v2-fill-sq { from { background: var(--surface); } }
@keyframes v2-dim { from { opacity: .35; } }
@keyframes v2-slide { from { opacity: .35; transform: translateX(-10px); } }
@keyframes v2-pop { from { opacity: .35; transform: scale(.88); } }

/* =============================================================================
   İZ BİÇİMLERİ V2 — PARTİ KAYDI (lot) ve İKİ YÖN (beam) · 2026-10-01
   Kullanıcı: "daha güncel, yaratıcı, göze hitap eden". Fotoğraf üzerinde cam
   etiketler + ışıkla akan bağlar; koyu sahnede ışıyan merkez + iki yöne akan
   hatlar. Işık noktaları sürekli akar (sakin, 3–4 sn); hareket azaltılınca
   gizlenir. Renkler paletten: primary-300/500/700/900, accent-200/400.
   ============================================================================= */

.v2-ico { width: 20px; height: 20px; stroke-width: 1.6; }

/* ── Parti kaydı ─────────────────────────────────────────────────────────── */
.lot { margin-block-start: var(--space-8); }
.lot__stage {
	position: relative; isolation: isolate; overflow: hidden;
	aspect-ratio: 5 / 3; border-radius: 20px; background: #0B120E;
	box-shadow: 0 40px 80px -36px rgba(4, 51, 27, .55);
}
.lot__media { position: absolute; inset: 0; z-index: -2; }
.lot__media picture, .lot__media img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
.lot__stage::after {
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background:
		radial-gradient(42% 46% at 50% 56%, rgba(6, 20, 12, .05), rgba(6, 20, 12, .62) 78%),
		linear-gradient(180deg, rgba(6, 20, 12, .28), rgba(6, 20, 12, .5));
}
.lot__wires { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; overflow: visible; }
.lot__wire { fill: none; stroke: rgba(239, 242, 240, .5); stroke-width: 1.5; vector-effect: non-scaling-stroke; stroke-dasharray: 1; stroke-dashoffset: 0; }
.lot__dot { fill: #C9DBA0; }
.lot__dots + .lot__dots .lot__dot { fill: #fff; }
.lot__core {
	position: absolute; inset-inline-start: 50%; inset-block-start: 55%; transform: translate(-50%, -50%);
	display: flex; align-items: center; gap: var(--space-3);
	padding: 10px 22px 10px 10px; border-radius: 999px;
	background: rgba(7, 102, 51, .88); color: #fff;
	-webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
	box-shadow: 0 0 0 8px rgba(124, 196, 155, .16), 0 0 48px rgba(124, 196, 155, .5);
}
[dir="rtl"] .lot__core { transform: translate(50%, -50%); }
.lot__core-ico, .lot__chip-ico, .beam__node-ico {
	flex: none; display: grid; place-items: center; inline-size: 38px; block-size: 38px; border-radius: 12px;
}
.lot__core-ico { background: rgba(255, 255, 255, .16); border-radius: 50%; }
.lot__core-label { font-family: var(--font-body); font-weight: 600; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; }
.lot__chips { list-style: none; margin: 0; padding: 0; }
.lot__chip {
	position: absolute; inset-inline-start: var(--x); inset-block-start: var(--y); inline-size: 24%;
	display: flex; align-items: center; gap: var(--space-3);
	padding: 10px 16px 10px 10px; border-radius: 16px;
	background: rgba(255, 255, 255, .12); color: #fff;
	border: 1px solid rgba(255, 255, 255, .24);
	-webkit-backdrop-filter: blur(14px) saturate(140%); backdrop-filter: blur(14px) saturate(140%);
	box-shadow: 0 12px 32px rgba(0, 0, 0, .28);
}
.lot__chip-ico { background: rgba(201, 219, 160, .18); color: #DCEBB4; }
.lot__chip-label { font-family: var(--font-body); font-weight: 600; font-size: clamp(13px, 1.15vw, 16px); line-height: 1.3; }

@media (max-width: 899px) {
	.lot__stage { aspect-ratio: auto; display: grid; }
	.lot__media { position: relative; aspect-ratio: 4 / 3; z-index: -2; }
	.lot__wires { display: none; }
	.lot__core { inset-block-start: calc((100vw - 32px) * .3); }
	.lot__chips { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 14px; }
	.lot__chip { position: static; inline-size: auto; padding: 8px 12px 8px 8px; }
	.lot__chip-ico { inline-size: 32px; block-size: 32px; }
}
@media (max-width: 420px) { .lot__chips { grid-template-columns: minmax(0, 1fr); } }

/* ── İki yön ─────────────────────────────────────────────────────────────── */
.content-flow .block--flow-iki-yon.block--dark {
	background:
		radial-gradient(60% 70% at 50% 64%, rgba(18, 147, 80, .32), transparent 70%),
		var(--band);
	padding-block: var(--space-10, 128px);
}
.beam { position: relative; margin-block-start: var(--space-8); }
.beam__tag { position: absolute; inset-block-start: 0; margin: 0; font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; }
.beam__tag--back { inset-inline-start: 0; color: #9FD9B6; }
.beam__tag--fwd { inset-inline-end: 0; color: #C9DBA0; }
.beam__tag--back::before { content: "← "; }
.beam__tag--fwd::after { content: " →"; }
[dir="rtl"] .beam__tag--back::before { content: "→ "; }
[dir="rtl"] .beam__tag--fwd::after { content: " ←"; }
.beam__stage { position: relative; aspect-ratio: 10 / 3; }
[dir="rtl"] .beam__stage { transform: scaleX(-1); }
[dir="rtl"] .beam__node, [dir="rtl"] .beam__core { transform: translate(-50%, -50%) scaleX(-1); }
.beam__wires { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; overflow: visible; }
.beam__wire { fill: none; stroke-width: 2; vector-effect: non-scaling-stroke; stroke-dasharray: 1; stroke-dashoffset: 0; }
.beam__wire--back { stroke: rgba(124, 196, 155, .55); }
.beam__wire--fwd { stroke: rgba(140, 176, 43, .7); }
.beam__dot--back { fill: #9FD9B6; }
.beam__dot--fwd { fill: #C9DBA0; }
.beam__dots + .beam__dots circle { fill: #fff; }
.beam__core {
	position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 1;
	inline-size: clamp(128px, 13vw, 168px); aspect-ratio: 1; border-radius: 50%;
	display: grid; place-items: center; align-content: center; gap: 6px; text-align: center; color: #fff;
	background: radial-gradient(circle at 34% 28%, #1BA25D, #076633 58%, #04331B);
	box-shadow: 0 0 0 1px rgba(255, 255, 255, .2), 0 0 70px rgba(124, 196, 155, .5), inset 0 -12px 30px rgba(0, 0, 0, .25);
}
.beam__core-ico .v2-ico { width: 26px; height: 26px; }
.beam__core-label { font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; padding-inline: var(--space-3); }
.beam__core-ring { position: absolute; inset: -14px; border-radius: 50%; border: 1px solid rgba(124, 196, 155, .45); pointer-events: none; }
.beam__list { list-style: none; margin: 0; padding: 0; }
.beam__node {
	position: absolute; left: var(--x); top: var(--y); transform: translate(-50%, -50%); z-index: 1;
	display: flex; align-items: center; gap: 10px; white-space: nowrap;
	padding: 8px 18px 8px 8px; border-radius: 999px; color: #fff;
	background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .18);
	-webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
	box-shadow: 0 12px 30px rgba(0, 0, 0, .3);
}
.beam__node-ico { border-radius: 50%; inline-size: 36px; block-size: 36px; }
.beam__node--back .beam__node-ico { background: rgba(124, 196, 155, .2); color: #9FD9B6; }
.beam__node--fwd .beam__node-ico { background: rgba(140, 176, 43, .22); color: #C9DBA0; }
.beam__node-label { font-family: var(--font-heading); font-weight: 600; font-size: clamp(15px, 1.4vw, 18px); }

@media (max-width: 899px) {
	.beam { display: flex; flex-direction: column; align-items: center; gap: var(--space-4); }
	.beam__tag { position: static; }
	.beam__tag--back { order: 0; }
	.beam__stage { order: 1; aspect-ratio: auto; display: flex; flex-direction: column; align-items: center; gap: var(--space-5); padding-block: var(--space-2); }
	.beam__tag--fwd { order: 2; }
	[dir="rtl"] .beam__stage, [dir="rtl"] .beam__node, [dir="rtl"] .beam__core { transform: none; }
	.beam__wires { display: none; }
	.beam__stage::before {
		content: ""; position: absolute; inset-block: 0; inset-inline-start: 50%; inline-size: 2px; transform: translateX(-1px);
		background: linear-gradient(180deg, rgba(124, 196, 155, .1), rgba(124, 196, 155, .6) 45%, rgba(140, 176, 43, .7) 55%, rgba(140, 176, 43, .1));
	}
	.beam__list { display: flex; flex-direction: column; align-items: center; gap: var(--space-5); }
	.beam__list--back { order: 0; flex-direction: column-reverse; }
	.beam__core { order: 1; position: relative; left: auto; top: auto; transform: none; }
	.beam__list--fwd { order: 2; }
	.beam__node { position: relative; left: auto; top: auto; transform: none; }
}

/* ── Hareket ─────────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.lot__dots, .beam__dots { display: none; }
}
@media (prefers-reduced-motion: no-preference) {
	.beam__core-ring { animation: beam-pulse 3.4s ease-out infinite; }
	.beam__core-ring--2 { animation-delay: 1.7s; }
	/* giriş hareketleri GSAP'ta (scripts/motion-v2.js) */
}
@keyframes beam-pulse { from { transform: scale(.92); opacity: .7; } to { transform: scale(1.32); opacity: 0; } }
@keyframes lot-zoom { from { transform: scale(1.12); } }
@keyframes lot-core { from { opacity: .3; transform: translate(-50%, -50%) scale(.82); } }
@keyframes lot-draw { from { stroke-dashoffset: 1; } }
@keyframes lot-chip { from { opacity: 0; transform: translateY(16px) scale(.96); } }
@keyframes beam-core { from { opacity: .3; transform: translate(-50%, -50%) scale(.7); } }
@keyframes beam-core-m { from { opacity: .3; transform: scale(.7); } }
@keyframes beam-node { from { opacity: 0; transform: translate(-50%, -30%); } }
@keyframes beam-node-m { from { opacity: 0; transform: translateY(14px); } }

/* =============================================================================
   METRO HATTI — Ürünün izi (2026-10-01). JS yoksa tam çizili, durağan.
   ============================================================================= */
.metro { margin-block-start: var(--space-8); }
.metro__stage { position: relative; aspect-ratio: 4 / 1; margin-block-end: 110px; }
.metro__svg { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; overflow: visible; }
.metro__bed, .metro__line { fill: none; stroke-width: 14; stroke-linecap: round; stroke-linejoin: round; }
.metro__bed { stroke: var(--divider); }
.metro__line { stroke: url(#metroGrad); }
.metro__st-ring { fill: var(--surface); stroke: var(--heading-brand); stroke-width: 6; }
.metro__st-core { fill: var(--heading-brand); }
.metro__token { opacity: 0; }
.metro__token rect { fill: #04331B; stroke: #7CC49B; stroke-width: 2; }
.metro__token text { fill: #fff; font: 600 13px/1 var(--font-body); letter-spacing: .12em; text-transform: uppercase; }
.metro__labels { list-style: none; margin: 0; padding: 0; }
.metro__label {
	position: absolute; inset-inline-start: var(--x); inset-block-start: var(--y);
	inline-size: 16%; transform: translateX(-50%); text-align: center;
	display: grid; gap: 4px; justify-items: center;
}
[dir="rtl"] .metro__label { transform: translateX(50%); }
.metro__num { font: 600 12px/1 var(--font-body); color: var(--v2-accent-ink, var(--accent)); letter-spacing: .08em; font-variant-numeric: tabular-nums; }
.metro__name { margin: 0; font-family: var(--font-heading); font-weight: 600; font-size: clamp(18px, 1.7vw, 23px); color: var(--heading); line-height: 1.2; }
.metro__text { margin: 0; font-size: 14px; line-height: 1.5; color: var(--text-secondary); max-inline-size: 22ch; }
.metro__rail { display: none; }
[dir="rtl"] .metro__svg { transform: scaleX(-1); }
[dir="rtl"] .metro__token text { transform: scaleX(-1); }

@media (max-width: 899px) {
	.metro__stage { aspect-ratio: auto; margin: 0; padding-inline-start: 52px; }
	.metro__svg { display: none; }
	.metro__rail { display: block; position: absolute; inset-inline-start: 13px; inset-block: 10px; inline-size: 10px; border-radius: 10px; background: var(--divider); overflow: hidden; }
	.metro__rail i { display: block; inline-size: 100%; block-size: 100%; transform-origin: top; background: linear-gradient(180deg, #076633, #129350 55%, #799B22); }
	.metro__labels { display: grid; gap: var(--space-6); }
	.metro__label { position: relative; inset: auto; inline-size: auto; transform: none; text-align: start; justify-items: start; }
	[dir="rtl"] .metro__label { transform: none; }
	.metro__label::before {
		content: ""; position: absolute; inset-inline-start: -48px; inset-block-start: 2px;
		inline-size: 26px; block-size: 26px; border-radius: 50%; box-sizing: border-box;
		background: var(--heading-brand); border: 6px solid var(--heading-brand); box-shadow: inset 0 0 0 5px var(--surface);
	}
	.metro__text { max-inline-size: none; }
}

/* 2026-10-01 · kullanıcı: açık manifesto 6 satırdı → 3 satır; geniş konteyner,
   biraz küçük punto, satırlar dengeli */
.block--manifesto-light .v2-manifesto__text {
	max-inline-size: 60ch;
	font-size: clamp(24px, 2.75vw, 40px);
	line-height: 1.3;
}

/* =============================================================================
   KALİTE YÖNETİMİ — İYİLEŞTİRMELER (2026-10-01, kullanıcı onayı)
   İkonlu kartlar · ikonlu kabul akışı + ışık rayı · renkli, akan birleşim ·
   geniş kapanış cümlesi. Hareketler GSAP'ta (her tarayıcı).
   ============================================================================= */

/* Kart ikonları */
.v2-card--ico { gap: var(--space-3); }
.v2-card__ico {
	display: grid; place-items: center; inline-size: 44px; block-size: 44px; border-radius: 12px;
	background: var(--action-soft-bg); color: var(--heading-brand);
}
.v2-card__ico .v2-ico { width: 22px; height: 22px; }

/* Kabul akışı — ikonlu adımlar, solda ışık rayı */
.v2-flow--ok { position: relative; padding-inline-start: 0; }
.v2-flow--ok .v2-flow__step { display: flex; align-items: center; gap: var(--space-4); padding: var(--space-4); box-shadow: 0 10px 30px -18px rgba(4, 51, 27, .35); }
.v2-flow__ico { flex: none; display: grid; place-items: center; inline-size: 46px; block-size: 46px; border-radius: 12px; background: var(--action-soft-bg); color: var(--heading-brand); }
.v2-flow--ok .v2-flow__step:last-child { background: var(--heading-brand); border-color: var(--heading-brand); }
.v2-flow--ok .v2-flow__step:last-child .v2-flow__label { color: #fff; }
.v2-flow--ok .v2-flow__step:last-child .v2-flow__ico { background: rgba(255, 255, 255, .16); color: #fff; }
.v2-flow--ok .v2-flow__arrow { inset-inline-start: calc(var(--space-4) + 23px); transform: translateX(-50%); }
[dir="rtl"] .v2-flow--ok .v2-flow__arrow { transform: translateX(50%); }

/* Birleşim — renkli eğriler ve akan noktalar */
.v2-merge__join { inline-size: 100%; block-size: 120px; border: 0; border-radius: 0; }
.v2-merge__join::after { display: none; }
.v2-merge__join svg { display: block; inline-size: 100%; block-size: 100%; overflow: visible; }
.v2-merge__wire { fill: none; stroke: url(#mergeGrad); stroke-width: 3; vector-effect: non-scaling-stroke; stroke-linecap: round; }
.v2-merge__dot { fill: #7CC49B; }
.v2-merge__out { margin-block-start: 0; padding: var(--space-5) var(--space-7); background: var(--heading-brand); color: #fff; border-color: var(--heading-brand); box-shadow: 0 0 0 8px rgba(124, 196, 155, .18), 0 18px 40px -18px rgba(4, 51, 27, .6); }
.v2-merge__in { padding: var(--space-4); border: var(--border-width) solid var(--divider); border-block-start: 3px solid var(--heading-brand); border-radius: var(--radius-md); background: var(--surface); }
@media (max-width: 759px) {
	.v2-merge__join { block-size: 56px; inline-size: 100%; background: none; }
	.v2-merge__join svg { display: none; }
	.v2-merge__join::after { display: block; inset-block-start: 0; block-size: 100%; inline-size: 3px; background: linear-gradient(180deg, #129350, #076633); }
}
@media (prefers-reduced-motion: reduce) { .v2-merge__dots { display: none; } }

/* Kapanış — medyalı manifesto da geniş, 2–3 satır */
.block--manifesto-media .v2-manifesto__text { max-inline-size: 56ch; font-size: clamp(26px, 3vw, 44px); line-height: 1.25; }
/* Omurga çizgisi GSAP'tan gelen --v2-line (0–1) ile ilerler; yoksa tam */
.v2-flow--numara::before { transform: scaleX(var(--v2-line, 1)); transform-origin: left; }
[dir="rtl"] .v2-flow--numara::before { transform-origin: right; }
@media (max-width: 759px) { .v2-flow--numara::before { transform: scaleY(var(--v2-line, 1)); transform-origin: top; } }
/* Koyu temada --heading-brand açık yeşile döner; beyaz yazılı vurgu kutuları
   iki temada da sabit marka yeşilinde kalır (kontrast) */
.v2-flow--ok .v2-flow__step:last-child, .v2-merge__out { background: var(--primary-700); border-color: var(--primary-700); }

/* =============================================================================
   POLİTİKALARIMIZ — 2026-10-01 (kullanıcı brifi)
   Büyük yarı saydam numaralar · ince çizgiler · tipografi · köşesi az
   yuvarlatılmış kartlar. Yeni renk yok.
   ============================================================================= */

/* Hero yan grafiği */
.page-head__aside { display: grid; place-items: center; }
.ph-frame { inline-size: min(100%, 360px); block-size: auto; overflow: visible; }
.ph-frame__ring, .ph-frame__pent { fill: none; stroke: var(--heading-brand); stroke-width: 1; opacity: .45; }
.ph-frame__ring--in { opacity: .25; stroke-dasharray: 3 6; }
.ph-frame__pent { opacity: .3; }
.ph-frame__dot { fill: var(--surface); stroke: var(--heading-brand); stroke-width: 2; }
.ph-frame__core { fill: var(--heading-brand); }
/* Saat yönünde sürekli, yavaş dönüş (kullanıcı isteği) */
.ph-frame__spin { transform-box: view-box; transform-origin: 50% 50%; animation: ph-spin 60s linear infinite; }
@keyframes ph-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .ph-frame__spin { animation: none; } }
@media (max-width: 899px) { .page-head__aside { display: none; } }

/* Kart özeti */
.content-flow--ilke .block--ilkeler { padding-block: var(--space-8) var(--space-9); }
.pr-intro { max-inline-size: 62ch; color: var(--text-secondary); margin-block-end: var(--space-7); }
.pr-cards { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-4); grid-template-columns: repeat(5, minmax(0, 1fr)); }
@media (max-width: 1199px) { .pr-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 759px) { .pr-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); } }
.pr-card__link {
	position: relative; display: grid; align-content: start; gap: var(--space-3); block-size: 100%;
	padding: var(--space-6) var(--space-5) var(--space-5); overflow: hidden;
	border: var(--border-width) solid var(--divider); border-radius: 6px; background: var(--surface);
	color: inherit; text-decoration: none;
	transition: border-color .3s, transform .3s var(--motion-ease-out, ease), box-shadow .3s;
}
.pr-card__link::before { content: ""; position: absolute; inset: 0 0 auto; block-size: 2px; background: var(--heading-brand); transform: scaleX(0); transform-origin: left; transition: transform .4s var(--motion-ease-out, ease); }
.pr-card__link:hover, .pr-card__link:focus-visible { border-color: var(--heading-brand); transform: translateY(-4px); box-shadow: 0 18px 40px -26px rgba(4, 51, 27, .45); }
.pr-card__link:hover::before, .pr-card__link:focus-visible::before { transform: scaleX(1); }
.pr-card__num {
	position: absolute; inset-inline-end: var(--space-3); inset-block-start: -6px;
	font-family: var(--font-heading); font-weight: 600; font-size: 76px; line-height: 1; letter-spacing: -.04em;
	color: var(--heading-brand); opacity: .09; pointer-events: none;
}
.pr-card__ico { display: grid; place-items: center; inline-size: 42px; block-size: 42px; border: var(--border-width) solid var(--divider); border-radius: 6px; color: var(--heading-brand); }
.pr-card__title { margin: var(--space-2) 0 0; font-family: var(--font-heading); font-weight: 600; font-size: 19px; line-height: 1.3; color: var(--heading); text-wrap: balance; }
.pr-card__text { margin: 0; font-size: 14px; line-height: 1.55; color: var(--text-secondary); }
.pr-card__go { margin-block-start: auto; color: var(--heading-brand); opacity: .6; }
@media (max-width: 759px) {
	.pr-card__text { display: none; }   /* aynı cümle aşağıdaki bölümde tam metinle var */
	.pr-card__link { padding: var(--space-5) var(--space-4) var(--space-4); }
	.pr-card__num { font-size: 56px; }
	.pr-card__title { font-size: 16px; }
	.pr-cards > :last-child { grid-column: 1 / -1; }
}

/* Süs numaraları metin değil, CSS ile basılır (okunacak içerik değil) */
.pr-card__num::before, .pr-bignum::before { content: attr(data-n); }

/* İlke bölümleri — büyük yarı saydam numara */
.content-flow .block--ilke { position: relative; overflow: hidden; overflow: clip; padding-block: var(--space-9); border-block-start: var(--border-width) solid var(--divider); }
.content-flow--ilke .block--band { background: var(--surface); }
.block--ilke > .container { position: relative; }
/* Numara başlıkla aynı satırda; altındaki içerik onun üstüne binmez */
.pr-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: var(--space-6); align-items: end; }
.pr-head__text > :first-child { margin-block-start: 0; }
.pr-bignum {
	font-family: var(--font-heading); font-weight: 600; font-size: clamp(72px, 11vw, 168px); line-height: .78; letter-spacing: -.05em;
	color: var(--heading-brand); opacity: .07; pointer-events: none; user-select: none;
}
.block--ilke .v2-title { max-inline-size: 18ch; }
.block--ilke .v2-lede { font-size: clamp(26px, 3.4vw, 44px); max-inline-size: 22ch; margin-block-start: var(--space-3); color: var(--heading-brand); }
.block--ilke .v2-outro { margin-block-start: var(--space-7); max-inline-size: 62ch; font-size: var(--text-body-lg, 18px); }

/* İlke akışı — ince çizgi, noktalar */
.pr-chain { list-style: none; margin: var(--space-7) 0 0; padding: 0; position: relative; display: grid; gap: var(--space-4); grid-template-columns: repeat(5, minmax(0, 1fr)); }
.pr-chain--n4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.pr-chain::before { content: ""; position: absolute; inset-inline: 6px; inset-block-start: 6px; block-size: var(--border-width); background: var(--border); transform: scaleX(var(--pr-line, 1)); transform-origin: left; }
[dir="rtl"] .pr-chain::before { transform-origin: right; }
.pr-chain__step { position: relative; display: grid; gap: var(--space-3); }
.pr-chain__dot { inline-size: 13px; block-size: 13px; border-radius: 50%; background: var(--surface); border: 2px solid var(--heading-brand); position: relative; z-index: 1; }
.pr-chain__label { font-family: var(--font-body); font-weight: 600; font-size: 15px; letter-spacing: .02em; color: var(--heading); }
@media (max-width: 759px) {
	.pr-chain, .pr-chain--n4 { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
	.pr-chain::before { inset-inline: 6px auto; inset-block: 6px; inline-size: var(--border-width); block-size: auto; transform: scaleY(var(--pr-line, 1)); transform-origin: top; }
	.pr-chain__step { grid-template-columns: 13px minmax(0, 1fr); align-items: center; gap: var(--space-4); }
}

/* Organik — büyük kelime + bağlı kavramlar (yeşil/doğa görseli yok) */
.pr-org { margin-block-start: var(--space-6); }
.pr-org__word {
	margin: 0; font-family: var(--font-heading); font-weight: 600; text-transform: uppercase;
	font-size: clamp(56px, 11vw, 168px); line-height: .9; letter-spacing: .02em;
	color: transparent; -webkit-text-stroke: 1.5px var(--heading-brand);
}
.pr-org__chain { list-style: none; margin: var(--space-5) 0 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3) var(--space-4); }
.pr-org__chain li { display: inline-flex; align-items: center; gap: var(--space-4); font-family: var(--font-heading); font-weight: 600; font-size: clamp(20px, 2.2vw, 28px); color: var(--heading); }
.pr-org__arrow { display: inline-grid; color: var(--heading-brand); }
[dir="rtl"] .pr-org__arrow .icon { transform: scaleX(-1); }

/* Üç girdi = sonuç */
.pr-sum { margin-block-start: var(--space-7); display: grid; gap: var(--space-5); }
.pr-sum__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr); align-items: stretch; gap: var(--space-3); }
.pr-sum__in { display: grid; align-content: start; gap: var(--space-2); padding: var(--space-5); border: var(--border-width) solid var(--divider); border-radius: 6px; background: var(--surface); }
.pr-sum__k { font-family: var(--font-body); font-weight: 600; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: var(--heading-brand); }
.pr-sum__v { font-family: var(--font-heading); font-weight: 600; font-size: 19px; line-height: 1.3; color: var(--heading); }
.pr-sum__op { align-self: center; font-family: var(--font-heading); font-size: 30px; font-weight: 500; color: var(--text-muted); }
.pr-sum__out { margin: 0; display: flex; align-items: center; gap: var(--space-4); padding-block-start: var(--space-4); border-block-start: var(--border-width) solid var(--divider); font-family: var(--font-heading); font-weight: 600; font-size: clamp(24px, 2.6vw, 34px); color: var(--heading-brand); }
.pr-sum__eq { font-size: 1.2em; color: var(--text-muted); font-weight: 500; }
@media (max-width: 759px) {
	.pr-sum__list { grid-template-columns: minmax(0, 1fr); }
	.pr-sum__op { justify-self: center; line-height: 1; }
}

/* Genişleyen döngü — sürekli iyileştirme */
.pr-spiral { margin-block-start: var(--space-7); display: grid; grid-template-columns: minmax(0, 440px) minmax(0, 1fr); gap: var(--space-8); align-items: center; }
.pr-spiral__svg { inline-size: 100%; block-size: auto; overflow: visible; }
.pr-spiral__track { fill: none; stroke: var(--divider); stroke-width: 1.5; }
.pr-spiral__line { fill: none; stroke: var(--heading-brand); stroke-width: 2.5; stroke-linecap: round; }
.pr-spiral__mark { fill: var(--surface); stroke: var(--heading-brand); stroke-width: 2.5; transition: fill .4s; }
.pr-spiral__mark.is-last { fill: var(--heading-brand); }
.pr-spiral__dot { fill: var(--heading-brand); filter: drop-shadow(0 0 6px rgba(124, 196, 155, .9)); }
.pr-spiral__list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-3); counter-reset: none; }
.pr-spiral__step { display: flex; align-items: baseline; gap: var(--space-4); padding-block: var(--space-4); border-block-end: var(--border-width) solid var(--divider); transition: opacity .4s, transform .4s var(--motion-ease-out, ease); }
.pr-spiral__step:last-child { border-block-end: 0; }
.pr-spiral__no { font-family: var(--font-body); font-weight: 600; font-size: 13px; letter-spacing: .14em; color: var(--heading-brand); }
.pr-spiral__label { font-family: var(--font-heading); font-weight: 600; font-size: clamp(22px, 2.4vw, 32px); line-height: 1.2; color: var(--heading); }
.pr-spiral__step:last-child .pr-spiral__label { color: var(--heading-brand); }
/* Hareket açıkken: henüz ulaşılmamış aşamalar soluk */
.pr-spiral.is-armed .pr-spiral__step:not(.is-on) { opacity: .28; transform: translateX(-6px); }
[dir="rtl"] .pr-spiral.is-armed .pr-spiral__step:not(.is-on) { transform: translateX(6px); }
.pr-spiral.is-armed .pr-spiral__mark:not(.is-on) { fill: var(--surface); stroke: var(--divider); }
[dir="rtl"] .pr-spiral__svg { transform: scaleX(-1); }
@media (max-width: 899px) {
	.pr-spiral { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
	.pr-spiral__svg { max-inline-size: 300px; margin-inline: auto; }
	.pr-spiral__step { padding-block: var(--space-3); }
}

/* İş yapış çerçevesi — birleşen mozaik (ikinci ana görsel odak) */
.pr-whole { margin-block-start: var(--space-7); display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-9, 96px); align-items: center; }
.pr-whole__text .v2-outro { margin-block-start: 0; max-inline-size: 52ch; }
.pr-whole .pr-mosaic { margin-block: 0; grid-auto-rows: minmax(104px, auto); gap: var(--space-2); }
.pr-whole .pr-mosaic__tile > a, .pr-whole .pr-mosaic__tile:not(.is-core) { padding: var(--space-4); gap: var(--space-3); }
.pr-whole .pr-mosaic__label { font-size: 16px; }
.pr-whole .pr-mosaic__core img { inline-size: 150px; block-size: auto; }
@media (max-width: 1099px) { .pr-whole { grid-template-columns: minmax(0, 1fr); gap: var(--space-7); } }
.content-flow .block--cerceve { padding-block: var(--space-10, 128px); background: var(--surface-alt); overflow: hidden; overflow: clip; }
.pr-mosaic { margin-block: var(--space-7); display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: minmax(118px, auto); gap: var(--space-3); }
.pr-mosaic__tiles { display: contents; list-style: none; }
.pr-mosaic__core {
	grid-area: 2 / 2 / 4 / 4; display: grid; place-content: center; justify-items: center; gap: var(--space-3); text-align: center;
	background: var(--surface); border: 1.5px solid var(--heading-brand); border-radius: 6px;
	box-shadow: 0 30px 60px -36px rgba(4, 51, 27, .45);
}
.pr-mosaic__core img { inline-size: 92px; block-size: auto; }
.pr-mosaic__core span { font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--heading-brand); }
.pr-mosaic--n11 .pr-mosaic__tile:nth-child(2) { grid-column: span 2; }
.pr-mosaic__tile { display: grid; }
.pr-mosaic__tile > a, .pr-mosaic__tile:not(.is-core) {
	display: grid; align-content: space-between; gap: var(--space-4); padding: var(--space-5);
	background: var(--surface); border: var(--border-width) solid var(--divider); border-radius: 6px;
	color: inherit; text-decoration: none;
}
.pr-mosaic__tile.is-core > a { transition: border-color .3s, transform .3s var(--motion-ease-out, ease), box-shadow .3s; }
.pr-mosaic__tile.is-core > a:hover, .pr-mosaic__tile.is-core > a:focus-visible { border-color: var(--heading-brand); transform: translateY(-3px); box-shadow: 0 16px 34px -24px rgba(4, 51, 27, .5); }
.pr-mosaic__no { font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .14em; color: var(--heading-brand); min-block-size: 14px; }
.pr-mosaic__no:empty::before { content: ""; display: block; inline-size: 14px; block-size: 2px; margin-block-start: 6px; background: var(--border); }
.pr-mosaic__label { font-family: var(--font-heading); font-weight: 600; font-size: 18px; line-height: 1.3; color: var(--heading); text-wrap: balance; }
@media (max-width: 1023px) { .pr-mosaic__label { font-size: 16px; } .pr-mosaic__tile > a, .pr-mosaic__tile:not(.is-core) { padding: var(--space-4); } }
@media (max-width: 759px) {
	.pr-mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: minmax(96px, auto); gap: var(--space-2); }
	.pr-mosaic__core { grid-area: auto; grid-column: 1 / -1; padding-block: var(--space-6); }
	.pr-mosaic--n11 .pr-mosaic__tile:nth-child(2) { grid-column: auto; }
	.pr-mosaic--n11 .pr-mosaic__tile:last-child { grid-column: 1 / -1; }
	.pr-mosaic__core img { inline-size: 72px; }
}
@media (prefers-reduced-motion: reduce) { .pr-card__link, .pr-mosaic__tile > a, .pr-spiral__step { transition: none; } .pr-card__link:hover, .pr-mosaic__tile > a:hover { transform: none; } }

/* =============================================================================
   SERTİFİKALAR — 2026-10-01 (kullanıcı brifi)
   Belge odaklı, sakin, kurumsal: ince çizgiler, küçük numaralar, kontrollü
   logo kullanımı. Galeri görünümü yok. Yeni renk yok.
   ============================================================================= */

/* Açılış: üç sertifikasyon sistemi */
.page-head__aside--content { display: block; place-items: initial; }
.cs-sys { list-style: none; margin: 0; padding: 0; border-block-start: var(--border-width) solid var(--border); }
.cs-sys__item { border-block-end: var(--border-width) solid var(--border); }
.cs-sys__link { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: baseline; gap: var(--space-4); padding-block: var(--space-5); color: inherit; text-decoration: none; }
.cs-sys__no { font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .14em; color: var(--heading-brand); }
.cs-sys__name { font-family: var(--font-heading); font-weight: 600; font-size: clamp(20px, 2vw, 26px); line-height: 1.25; color: var(--heading); transition: transform .3s var(--motion-ease-out, ease); }
.cs-sys__link:hover .cs-sys__name, .cs-sys__link:focus-visible .cs-sys__name { transform: translateX(4px); }
[dir="rtl"] .cs-sys__link:hover .cs-sys__name { transform: translateX(-4px); }
.cs-sys__state, .cs-cert__state { display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--heading-brand); white-space: nowrap; }
.cs-sys__state.status-valid::before, .cs-cert__state.status-valid::before { content: ""; inline-size: 7px; block-size: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 3px rgba(124, 196, 155, .3); }
@media (max-width: 899px) {
	.page-head__aside--content { display: block; }
	.cs-sys__link { padding-block: var(--space-3); }
	.cs-sys__name { font-size: 18px; }
}

/* Ortak */
.cs-section { padding-block: var(--space-9, 96px); }
.cs-section + .cs-section { border-block-start: var(--border-width) solid var(--divider); }
.cs-h2 { margin: 0; font-family: var(--font-heading); font-weight: 600; font-size: clamp(28px, 3vw, 40px); line-height: 1.2; color: var(--heading); text-wrap: balance; }
.cs-h3 { margin: 0; font-family: var(--font-heading); font-weight: 600; font-size: clamp(22px, 2.2vw, 28px); line-height: 1.25; color: var(--heading); }
.cs-muted { color: var(--text-secondary); }
.cs-muted > p { margin: 0; }
.cs-muted > p + p { margin-block-start: var(--space-3); }

/* Kontrol kuruluşları */
.cs-split { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-9, 96px); align-items: center; }
.cs-split__head { display: grid; gap: var(--space-4); }
.cs-bodies { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.cs-body {
	position: relative; display: grid; align-content: start; gap: var(--space-2); padding: var(--space-6);
	background: var(--surface); border: var(--border-width) solid var(--divider); border-radius: 6px;
}
.cs-body__no { font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .14em; color: var(--heading-brand); }
.cs-body__logo { display: flex; align-items: center; block-size: 76px; margin-block: var(--space-3) var(--space-4); }
.cs-body__logo img { max-block-size: 76px; max-inline-size: 180px; inline-size: auto; block-size: auto; object-fit: contain; }
.cs-body__name { font-family: var(--font-heading); font-weight: 600; font-size: 19px; line-height: 1.3; color: var(--heading); }
.cs-body__scope { font-size: 14px; line-height: 1.5; color: var(--text-secondary); }
/* Koyu tema: kuruluş logoları kendi beyaz zeminiyle okunur */
:root[data-theme="dark"] .cs-body__logo img { background: #fff; padding: 8px 10px; border-radius: 4px; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .cs-body__logo img { background: #fff; padding: 8px 10px; border-radius: 4px; } }

/* Sertifikasyon kapsamı — üç belge kartı */
.cs-scope-sec { background: var(--surface-alt); }
.cs-scope-head { display: grid; gap: var(--space-4); max-inline-size: 60ch; margin-block-end: var(--space-8); }
.cs-certs { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); }
.cs-cert {
	position: relative; display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-6) var(--space-6) var(--space-5);
	background: var(--surface); border: var(--border-width) solid var(--divider); border-radius: 6px; scroll-margin-block-start: 140px;
	transition: border-color .3s, box-shadow .3s;
}
.cs-cert::before { content: ""; position: absolute; inset: -1px -1px auto; block-size: 2px; background: var(--heading-brand); border-radius: 6px 6px 0 0; transform: scaleX(var(--cs-line, 1)); transform-origin: left; }
.cs-cert:hover, .cs-cert:focus-within { border-color: var(--heading-brand); box-shadow: 0 22px 44px -32px rgba(4, 51, 27, .45); }
.cs-cert__top { display: flex; justify-content: space-between; align-items: center; }
.cs-cert__no { font-family: var(--font-heading); font-weight: 600; font-size: 44px; line-height: 1; letter-spacing: -.03em; color: var(--heading-brand); opacity: .18; }
.cs-cert__state { padding: 5px 10px; border: var(--border-width) solid var(--border); border-radius: 999px; }
.cs-cert__logo { display: flex; align-items: center; justify-content: center; block-size: 104px; }   /* ortalı (kullanıcı) */
.cs-cert__logo img { max-block-size: 104px; max-inline-size: 150px; inline-size: auto; block-size: auto; object-fit: contain; }
.cs-cert__title { text-align: center; margin: 0; font-family: var(--font-heading); font-weight: 600; font-size: clamp(18px, 1.45vw, 21px); letter-spacing: -.01em; line-height: 1.3; color: var(--heading); text-wrap: balance; }
/* Geniş ekranda başlık tek satır (kullanıcı); dar ekranda kırılabilir */
/* 2026-10-12 · tek satır yalnız organik kartlarda; yönetim sistemi başlıkları uzun, sarar */
@media (min-width: 1360px) { .cs-cert { padding-inline: var(--space-5); } .cs-certs:not(.cs-certs--other) .cs-cert__title { white-space: nowrap; } }
.cs-cert__text { font-size: 15px; line-height: 1.6; color: var(--text-secondary); }
.cs-cert__text p { margin: 0; }
.cs-cert__text p + p { margin-block-start: var(--space-3); }
.cs-cert__meta { margin: 0; padding-block-start: var(--space-4); border-block-start: var(--border-width) solid var(--divider); display: grid; gap: 2px; }
.cs-cert__meta dt { font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--text-muted); }
.cs-cert__meta dd { margin: 0; font-size: 15px; color: var(--heading); }
.cs-cert__cta {
	margin-block-start: auto; display: flex; align-items: center; gap: var(--space-3); inline-size: 100%; min-block-size: 48px;
	padding: 12px var(--space-4); background: transparent; border: var(--border-width) solid var(--heading-brand); border-radius: 6px;
	font: 600 15px/1.2 var(--font-body); color: var(--heading-brand); cursor: pointer; text-align: start;
	transition: background-color .25s, color .25s;
}
.cs-cert__cta span { flex: 1; }
.cs-cert__cta .icon--directional { transition: transform .25s var(--motion-ease-out, ease); }
.cs-cert__cta:hover, .cs-cert__cta:focus-visible { background: var(--heading-brand); color: var(--surface); }
.cs-cert__cta:hover .icon--directional { transform: translateX(4px); }
[dir="rtl"] .cs-cert__cta:hover .icon--directional { transform: scaleX(-1) translateX(4px); }
@media (max-width: 1023px) {
	.cs-split { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
	.cs-certs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cs-certs:not(.cs-certs--other) > :last-child { grid-column: 1 / -1; }   /* 3 organik kart: sonuncu tam satır; 6 yönetim kartı 2+2+2 */
}
@media (max-width: 679px) {
	.cs-section { padding-block: var(--space-8, 64px); }
	.cs-bodies, .cs-certs { grid-template-columns: minmax(0, 1fr); }
	.cs-body { padding: var(--space-5); }
	.cs-cert { padding: var(--space-5); gap: var(--space-3); }
	.cs-cert__logo { block-size: 88px; }
	.cs-cert__logo img { max-block-size: 88px; }
	.cs-cert__no { font-size: 36px; }
}

/* Şeffaflık — büyük tipografi */
.cs-proof { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: var(--space-9, 96px); align-items: center; }
.cs-proof__words { margin: 0; display: grid; gap: .08em; font-family: var(--font-heading); font-weight: 600; font-size: clamp(40px, 6vw, 88px); line-height: 1; letter-spacing: -.02em; text-transform: uppercase; color: var(--heading); }
.cs-proof__w { display: block; }
.cs-proof__w.is-first { position: relative; justify-self: start; color: var(--text-muted); }
.cs-proof__w.is-first::after { content: ""; position: absolute; inset-inline: -.04em; inset-block-start: 52%; block-size: .06em; background: var(--heading-brand); transform: scaleX(var(--cs-strike, 1)); transform-origin: left; }
[dir="rtl"] .cs-proof__w.is-first::after { transform-origin: right; }
.cs-proof__w:last-child { color: var(--heading-brand); }
.cs-proof__text { display: grid; gap: var(--space-5); }
@media (max-width: 899px) {
	.cs-proof { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
	.cs-proof__words { font-size: clamp(34px, 10vw, 56px); }
}

/* Diğer belgeler — bilgi paneli */
.cs-other { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: var(--space-6); align-items: start; padding: var(--space-7); border: var(--border-width) dashed var(--border); border-radius: 6px; }
.cs-other__ico { display: grid; place-items: center; inline-size: 56px; block-size: 56px; border: var(--border-width) solid var(--divider); border-radius: 6px; color: var(--heading-brand); }
.cs-other__ico .icon { inline-size: 26px; block-size: 26px; }
.cs-other__body { display: grid; gap: var(--space-3); max-inline-size: 62ch; }
.cs-other__note { font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--text-secondary); padding: 6px 12px; border: var(--border-width) solid var(--border); border-radius: 999px; white-space: nowrap; }
@media (max-width: 759px) {
	.cs-other { grid-template-columns: minmax(0, 1fr); padding: var(--space-5); gap: var(--space-4); }
	.cs-other__note { justify-self: start; }
}

/* Kapanış */
.cs-end-sec { padding-block: var(--space-10, 128px); }
.cs-end { display: grid; justify-items: center; gap: var(--space-5); text-align: center; }
.cs-end__title { margin: 0; max-inline-size: 22ch; font-family: var(--font-heading); font-weight: 500; font-size: clamp(30px, 4vw, 52px); line-height: 1.15; color: var(--heading); text-wrap: balance; }
.cs-end__text { max-inline-size: 56ch; color: var(--text-secondary); }
.cs-end__text p { margin: 0; }
@media (prefers-reduced-motion: reduce) { .cs-cert, .cs-cert__cta, .cs-sys__name, .cs-cert__cta .icon--directional { transition: none; } }

/* =============================================================================
   DEĞERLERİMİZ — 2026-10-01 (kullanıcı brifi)
   Değerleri listelemek değil, kararı nasıl yönlendirdiklerini göstermek.
   Tipografi + boşluk + ince çizgi. Her değerin kendi çizimi; yeni renk yok.
   ============================================================================= */

/* Açılış yan alanı — büyük ifade */
.ha-type { margin: 0; display: grid; gap: .12em; font-family: var(--font-heading); font-weight: 600; font-size: clamp(36px, 4.4vw, 66px); line-height: 1.02; letter-spacing: -.02em; text-transform: uppercase; color: var(--heading); }
.ha-type__l:not(.is-last) { color: var(--text-muted); }
.ha-type__l.is-last { color: var(--heading-brand); }
/* 2026-10-12 · büyük ifade kapak görselinin üzerinde (açılış bloğu "bindir" · Değerlerimiz).
   Görsel temadan bağımsız açık bej duvar → renkler temaya göre DEĞİŞMEZ (koyu temada da
   açık zemin üzerinde okunur). Fidenin solundaki boş alana — RTL'de de görselin solu. */
.page-head__media--overlay { position: relative; }
.page-head__overlay { position: absolute; inset-block-start: 9%; left: 7%; right: auto; max-inline-size: 48%; pointer-events: none; }
.page-head__overlay .ha-type { font-size: clamp(22px, 2.5vw, 40px); color: #1d2a22; }
.page-head__overlay .ha-type__l:not(.is-last) { color: #5c574d; }
.page-head__overlay .ha-type__l.is-last { color: #076633; }

/* Açılış yan alanı — adım zinciri */
.ha-chain { display: grid; gap: var(--space-5); }
.ha-chain__list { list-style: none; margin: 0; padding: 0; position: relative; display: grid; gap: 14px; }
.ha-chain__list::before { content: ""; position: absolute; inset-inline-start: 5px; inset-block: 8px; inline-size: 1px; background: var(--border); }
.ha-chain__step { position: relative; display: flex; align-items: center; gap: var(--space-4); }
.ha-chain__dot { position: relative; z-index: 1; inline-size: 11px; block-size: 11px; border-radius: 50%; background: var(--surface); border: 2px solid var(--heading-brand); }
.ha-chain__step:last-child .ha-chain__dot { background: var(--heading-brand); }
.ha-chain__label { font-family: var(--font-heading); font-weight: 600; font-size: clamp(18px, 1.6vw, 22px); color: var(--heading); }
.ha-chain__note { margin: 0; padding-block-start: var(--space-4); border-block-start: var(--border-width) solid var(--border); font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--heading-brand); }

/* İki sütunlu değer bölümleri — asimetrik */
.block--flow-soz > .container, .block--flow-dongu > .container { display: grid; column-gap: var(--space-9, 96px); align-items: center; }
.block--flow-soz > .container { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
.block--flow-soz .pr-head, .block--flow-soz .v2-outro { grid-column: 1; }
.block--flow-soz .vd-stack { grid-column: 2; grid-row: 1 / span 2; }
.block--flow-dongu > .container { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
.block--flow-dongu .pr-head, .block--flow-dongu .v2-outro { grid-column: 2; }
.block--flow-dongu .vd-loop { grid-column: 1; grid-row: 1 / span 2; }
.block--flow-soz .v2-outro, .block--flow-dongu .v2-outro { margin-block-start: var(--space-5); align-self: start; }
@media (max-width: 899px) {
	.block--flow-soz > .container, .block--flow-dongu > .container { grid-template-columns: minmax(0, 1fr); }
	.block--flow-soz .pr-head, .block--flow-soz .v2-outro, .block--flow-soz .vd-stack,
	.block--flow-dongu .pr-head, .block--flow-dongu .v2-outro, .block--flow-dongu .vd-loop { grid-column: 1; grid-row: auto; }
	.block--flow-soz .vd-stack, .block--flow-dongu .vd-loop { margin-block-start: var(--space-6); }
}

/* 01 · Söz ↓ Sorumluluk ↓ Güven */
.vd-stack { list-style: none; margin: 0; padding: 0; display: grid; justify-items: start; }
.vd-stack__w { position: relative; font-family: var(--font-heading); font-weight: 600; font-size: clamp(34px, 4.2vw, 58px); line-height: 1.05; letter-spacing: -.02em; color: var(--heading); }
.vd-stack__w:last-child { color: var(--heading-brand); }
.vd-stack__w + .vd-stack__w { padding-block-start: 68px; }
.vd-stack__w + .vd-stack__w::before { content: ""; position: absolute; inset-inline-start: .32em; inset-block-start: 12px; block-size: 42px; inline-size: 1px; background: var(--border); transform: scaleY(var(--vd-l, 1)); transform-origin: top; }
.vd-stack__w + .vd-stack__w::after { content: ""; position: absolute; inset-inline-start: calc(.32em - 4px); inset-block-start: 45px; inline-size: 9px; block-size: 9px; border-inline-end: 1.5px solid var(--heading-brand); border-block-end: 1.5px solid var(--heading-brand); transform: rotate(45deg); opacity: var(--vd-l, 1); }
@media (max-width: 899px) { .vd-stack__w { font-size: clamp(30px, 9vw, 40px); } .vd-stack__w + .vd-stack__w { padding-block-start: 52px; } .vd-stack__w + .vd-stack__w::before { block-size: 30px; } .vd-stack__w + .vd-stack__w::after { inset-block-start: 33px; } }

/* 02 · Karar noktası — iki yol aynı biçimde */
.vd-fork { position: relative; margin-block-start: var(--space-7); aspect-ratio: 1000 / 300; }
.vd-fork__svg { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; overflow: visible; }
.vd-fork__svg--v { display: none; }
.vd-fork__stem, .vd-fork__br { fill: none; stroke: var(--heading-brand); stroke-width: 2; stroke-linecap: round; }
.vd-fork__stem { stroke: var(--text-muted); }
.vd-fork__node { fill: var(--surface); stroke: var(--heading-brand); stroke-width: 3; }
.vd-fork__labels { list-style: none; margin: 0; padding: 0; }
.vd-fork__lbl { position: absolute; font-family: var(--font-heading); font-weight: 600; font-size: clamp(20px, 2.2vw, 30px); line-height: 1.2; color: var(--heading); white-space: nowrap; }
.vd-fork__lbl--node { left: 42%; top: 50%; transform: translate(-50%, 26px); font-family: var(--font-body); font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--heading-brand); }
.vd-fork__lbl--a { right: 0; top: 16.7%; transform: translateY(calc(-100% - 12px)); }
.vd-fork__lbl--b { right: 0; top: 83.3%; transform: translateY(12px); }
[dir="rtl"] .vd-fork__svg { transform: scaleX(-1); }
[dir="rtl"] .vd-fork__lbl--node { left: 58%; }
[dir="rtl"] .vd-fork__lbl--a, [dir="rtl"] .vd-fork__lbl--b { right: auto; left: 0; }
@media (max-width: 699px) {
	.vd-fork { aspect-ratio: 400 / 520; max-inline-size: 340px; margin-inline: auto; margin-block-end: 56px; }
	.vd-fork__svg--h { display: none; }
	.vd-fork__svg--v { display: block; }
	.vd-fork__lbl { font-size: 20px; }
	.vd-fork__lbl--node, [dir="rtl"] .vd-fork__lbl--node { left: 50%; top: 36.5%; transform: translate(26px, -50%); }
	.vd-fork__lbl--a, [dir="rtl"] .vd-fork__lbl--a { left: 22.5%; right: auto; top: 100%; transform: translate(-50%, 10px); }
	.vd-fork__lbl--b, [dir="rtl"] .vd-fork__lbl--b { left: 77.5%; right: auto; top: 100%; transform: translate(-50%, 10px); }
	[dir="rtl"] .vd-fork__svg { transform: none; }
}

/* 03 · Ufuk — aralıklar açılır, çizgi sayfa kenarını aşıp söner */
.vd-horizon { position: relative; margin-block-start: var(--space-8); block-size: 150px; }
.vd-horizon__line { position: absolute; inset-inline-start: 0; inset-inline-end: calc((100% - 100vw) / 2); inset-block-start: 104px; block-size: 2px; background: linear-gradient(to right, var(--heading-brand) 0%, var(--heading-brand) 55%, transparent 100%); transform: scaleX(var(--vd-l, 1)); transform-origin: left; }
[dir="rtl"] .vd-horizon__line { background: linear-gradient(to left, var(--heading-brand) 0%, var(--heading-brand) 55%, transparent 100%); transform-origin: right; }
.vd-horizon__list { list-style: none; margin: 0; padding: 0; }
.vd-horizon__mark { position: absolute; inset-inline-start: var(--x); inset-block: 0; inline-size: 0; }
.vd-horizon__dot { position: absolute; inset-inline-start: -6px; inset-block-start: 98px; inline-size: 14px; block-size: 14px; border-radius: 50%; background: var(--surface); border: 2px solid var(--heading-brand); }
.vd-horizon__mark.is-last .vd-horizon__dot { background: var(--heading-brand); box-shadow: 0 0 0 7px rgba(124, 196, 155, .22); }
.vd-horizon__label { position: absolute; inset-inline-start: -6px; inset-block-end: calc(100% - 104px + 24px); font-family: var(--font-heading); font-weight: 600; line-height: 1.05; white-space: nowrap; color: var(--heading); }
.vd-horizon__mark--1 .vd-horizon__label { font-size: 20px; color: var(--text-secondary); }
.vd-horizon__mark--2 .vd-horizon__label { font-size: clamp(24px, 2.4vw, 30px); }
.vd-horizon__mark--3 .vd-horizon__label { font-size: clamp(34px, 4vw, 54px); color: var(--heading-brand); letter-spacing: -.02em; }
@media (max-width: 699px) {
	.vd-horizon { block-size: auto; padding-block-end: 48px; }
	.vd-horizon__line, [dir="rtl"] .vd-horizon__line { inset-inline: 6px auto; inset-block: 10px 0; inline-size: 2px; block-size: auto; background: linear-gradient(to bottom, var(--heading-brand) 0%, var(--heading-brand) 60%, transparent 100%); transform: scaleY(var(--vd-l, 1)); transform-origin: top; }
	.vd-horizon__list { display: grid; }
	.vd-horizon__mark { position: relative; inset: auto; inline-size: auto; padding-inline-start: 36px; }
	.vd-horizon__mark--2 { margin-block-start: 28px; }
	.vd-horizon__mark--3 { margin-block-start: 64px; }
	.vd-horizon__dot { inset-inline-start: 0; inset-block-start: .35em; }
	.vd-horizon__label { position: static; }
}

/* 04 · Kapalı döngü */
.vd-loop { position: relative; inline-size: min(100%, 440px); aspect-ratio: 1; margin-inline: auto; }
.vd-loop__svg { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; overflow: visible; }
.vd-loop__ring { fill: none; stroke: var(--heading-brand); stroke-width: 1.5; opacity: .55; }
.vd-loop__chev { fill: none; stroke: var(--heading-brand); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.vd-loop__node { fill: var(--surface); stroke: var(--heading-brand); stroke-width: 2.5; }
.vd-loop__node.is-last { fill: var(--heading-brand); }
.vd-loop__dot { fill: var(--heading-brand); filter: drop-shadow(0 0 6px rgba(124, 196, 155, .9)); opacity: 0; }
.vd-loop__list { list-style: none; margin: 0; padding: 0; }
.vd-loop__step { position: absolute; display: grid; gap: 2px; font-family: var(--font-heading); font-weight: 600; font-size: clamp(15px, 1.4vw, 19px); line-height: 1.2; color: var(--heading); white-space: nowrap; }
.vd-loop__no { font-family: var(--font-body); font-size: 11px; letter-spacing: .14em; color: var(--heading-brand); }
.vd-loop__step--1 { left: 50%; top: 12.5%; transform: translate(-50%, 22px); text-align: center; }
.vd-loop__step--2 { left: 87.5%; top: 50%; transform: translate(calc(-100% - 22px), -50%); text-align: end; }
.vd-loop__step--3 { left: 50%; top: 87.5%; transform: translate(-50%, calc(-100% - 22px)); text-align: center; }
.vd-loop__step--4 { left: 12.5%; top: 50%; transform: translate(22px, -50%); color: var(--heading-brand); }
@media (max-width: 699px) { .vd-loop { inline-size: min(100%, 320px); } .vd-loop__step { font-size: 14px; } }

/* Ortak nokta — merkezde KARAR (görsel zirve) */
.content-flow .block--karar { padding-block: var(--space-10, 128px); background: var(--surface-alt); border-block-start: var(--border-width) solid var(--divider); }
.vd-karar { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-9, 96px); align-items: center; }
.vd-karar__text { display: grid; gap: var(--space-4); }
.vd-karar__body { color: var(--text-secondary); }
.vd-karar__body p { margin: 0; }
.vd-karar__body p + p { margin-block-start: var(--space-3); }
.vd-karar__fig { position: relative; aspect-ratio: 4 / 3; }
.vd-karar__lines { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; }
.vd-karar__lines line { stroke: var(--heading-brand); stroke-width: 1.5; vector-effect: non-scaling-stroke; opacity: .45; }
.vd-karar__list { list-style: none; margin: 0; padding: 0; }
.vd-karar__item { position: absolute; left: var(--x); top: var(--y); transform: translate(-50%, -50%); }
.vd-karar__item a {
	display: grid; justify-items: center; gap: 4px; padding: 12px 14px; inline-size: 172px; text-align: center;
	background: var(--surface); border: var(--border-width) solid var(--divider); border-radius: 6px;
	font-family: var(--font-heading); font-weight: 600; font-size: 16px; line-height: 1.25; color: var(--heading); text-decoration: none;
	transition: border-color .3s, transform .3s var(--motion-ease-out, ease);
}
.vd-karar__item a:hover, .vd-karar__item a:focus-visible { border-color: var(--heading-brand); transform: translateY(-2px); }
.vd-karar__no { font-family: var(--font-body); font-size: 11px; letter-spacing: .14em; color: var(--heading-brand); }
.vd-karar__core { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); margin: 0; display: grid; place-items: center; inline-size: clamp(120px, 12vw, 160px); aspect-ratio: 1; border-radius: 50%; background: var(--heading-brand); box-shadow: 0 0 0 12px rgba(124, 196, 155, .16), 0 24px 48px -24px rgba(4, 51, 27, .55); }
.vd-karar__core span { font-family: var(--font-heading); font-weight: 600; font-size: clamp(24px, 2.4vw, 32px); letter-spacing: .02em; color: var(--surface); }
@media (max-width: 899px) {
	.vd-karar { grid-template-columns: minmax(0, 1fr); gap: var(--space-7); }
	.vd-karar__fig { aspect-ratio: auto; display: grid; justify-items: center; gap: 0; }
	.vd-karar__lines { display: none; }
	.vd-karar__list { display: grid; justify-items: center; gap: 0; }
	.vd-karar__item { position: relative; left: auto; top: auto; transform: none; display: grid; justify-items: center; }
	.vd-karar__item::after { content: ""; display: block; inline-size: 1px; block-size: 22px; background: var(--heading-brand); opacity: .5; }
	.vd-karar__item a { min-inline-size: 240px; }
	.vd-karar__core { position: relative; left: auto; top: auto; transform: none; margin-block-start: 4px; }
}
@media (prefers-reduced-motion: reduce) { .vd-karar__item a { transition: none; } .vd-karar__item a:hover { transform: none; } }

/* =============================================================================
   SÜRDÜRÜLEBİLİRLİK — 2026-10-02 (kullanıcı brifi)
   Doğa klişesi yok: ticari süreçler, ince çizgiler, tek renk ailesi.
   Rakam yok — izlenecek alanlar yalnızca adlarıyla.
   ============================================================================= */

/* 02 · Üretici ↔ Biosmyrna */
.sr-pair { margin-block-start: var(--space-8); display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--space-5); }
.sr-pair__node { margin: 0; display: grid; place-items: center; inline-size: 150px; aspect-ratio: 1; border-radius: 50%; border: 1.5px solid var(--heading-brand); background: var(--surface); font-family: var(--font-heading); font-weight: 600; font-size: 24px; color: var(--heading); }
.sr-pair__node--logo img { inline-size: 92px; block-size: auto; }
.sr-pair__mid { position: relative; display: grid; place-items: center; min-block-size: 200px; }
.sr-pair__arcs { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; overflow: visible; }
.sr-pair__arcs path { fill: none; stroke: var(--heading-brand); stroke-width: 1.5; vector-effect: non-scaling-stroke; opacity: .5; }
.sr-pair__arcs path + path { stroke-dasharray: 4 6; }
.sr-pair__list { list-style: none; margin: 0; padding: 0; position: relative; display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-2); max-inline-size: 520px; }
.sr-pair__c { padding: 8px 16px; background: var(--surface); border: var(--border-width) solid var(--divider); border-radius: 999px; font-family: var(--font-body); font-weight: 600; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--heading-brand); }
@media (max-width: 759px) {
	.sr-pair { grid-template-columns: minmax(0, 1fr); justify-items: center; gap: var(--space-3); }
	.sr-pair__node { inline-size: 112px; font-size: 20px; }
	.sr-pair__node--logo img { inline-size: 70px; }
	.sr-pair__mid { min-block-size: 0; padding-block: var(--space-4); }
	.sr-pair__arcs { display: none; }
	.sr-pair__mid::before, .sr-pair__mid::after { content: ""; position: absolute; inset-inline-start: 50%; inline-size: 1px; block-size: var(--space-4); background: var(--heading-brand); opacity: .5; }
	.sr-pair__mid::before { inset-block-start: 0; }
	.sr-pair__mid::after { inset-block-end: 0; }
}

/* 03 · Korunan iz — tek ürün çizgisi adımlar boyunca kesintisiz */
.sr-guard { position: relative; margin-block-start: var(--space-8); padding-block-start: 0; }
.sr-guard__track { position: absolute; inset-inline: 0; inset-block-start: 58px; block-size: 18px; border-radius: 9px; background: var(--surface-alt); border: var(--border-width) solid var(--divider); }
.sr-guard__line { position: absolute; inset-inline: 8px; inset-block-start: 50%; block-size: 2px; margin-block-start: -1px; background: var(--heading-brand); transform: scaleX(var(--sr-l, 1)); transform-origin: left; }
[dir="rtl"] .sr-guard__line { transform-origin: right; }
.sr-guard__dot { position: absolute; inset-block-start: 50%; inset-inline-start: calc(100% - 14px); inline-size: 10px; block-size: 10px; margin-block-start: -5px; border-radius: 50%; background: var(--heading-brand); box-shadow: 0 0 0 4px rgba(124, 196, 155, .3); }
.sr-guard__list { list-style: none; margin: 0; padding: 0; position: relative; display: grid; grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); }
.sr-guard__step { display: grid; justify-items: start; gap: 18px; }
.sr-guard__label { min-block-size: 40px; display: flex; align-items: flex-end; font-family: var(--font-heading); font-weight: 600; font-size: clamp(17px, 1.6vw, 21px); line-height: 1.2; color: var(--heading); }
.sr-guard__step.is-last .sr-guard__label { color: var(--heading-brand); }
.sr-guard__tick { inline-size: 12px; block-size: 12px; margin-inline-start: 4px; border-radius: 50%; background: var(--surface); border: 2px solid var(--heading-brand); position: relative; z-index: 1; margin-block-start: 3px; }
@media (max-width: 759px) {
	.sr-guard__track { inset-block: 0; inset-inline: 2px auto; inline-size: 18px; block-size: auto; }
	.sr-guard__line { inset-inline: auto; inset-block: 8px; inset-inline-start: 50%; inline-size: 2px; block-size: auto; margin: 0 0 0 -1px; transform: scaleY(var(--sr-l, 1)); transform-origin: top; }
	.sr-guard__dot { inset-inline-start: 50%; inset-block-start: calc(100% - 14px); margin: 0 0 0 -5px; }
	.sr-guard__list { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); padding-block: var(--space-3); }
	.sr-guard__step { grid-template-columns: 22px minmax(0, 1fr); align-items: center; gap: var(--space-4); }
	.sr-guard__tick { order: -1; margin: 0 0 0 3px; }
	.sr-guard__label { min-block-size: 0; }
}

/* 04 · Güçlenen bağ — çizgi adım adım kalınlaşır */
.sr-bond { list-style: none; margin: var(--space-8) 0 0; padding: 0; display: grid; grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); }
.sr-bond__step { position: relative; display: grid; justify-items: start; gap: var(--space-4); }
.sr-bond__step::after { content: ""; position: absolute; inset-inline-start: 0; inset-inline-end: 0; inset-block-start: calc(13px - (1px + var(--k) * 1.25px)); block-size: calc(2px + var(--k) * 2.5px); background: var(--heading-brand); opacity: calc(.35 + var(--k) * .15); border-radius: 4px; transform: scaleX(var(--sr-l, 1)); transform-origin: left; }
.sr-bond__step:last-child::after { display: none; }
.sr-bond__dot { position: relative; z-index: 1; inline-size: calc(14px + var(--k) * 3px); block-size: calc(14px + var(--k) * 3px); margin-block-start: calc(13px - (7px + var(--k) * 1.5px)); border-radius: 50%; background: var(--surface); border: 2px solid var(--heading-brand); }
.sr-bond__step:last-child .sr-bond__dot { background: var(--heading-brand); box-shadow: 0 0 0 8px rgba(124, 196, 155, .22); }
.sr-bond__label { font-family: var(--font-heading); font-weight: 600; font-size: calc(16px + var(--k) * 1.6px); line-height: 1.2; color: var(--heading); padding-inline-end: var(--space-3); }
.sr-bond__step:last-child .sr-bond__label { color: var(--heading-brand); }
[dir="rtl"] .sr-bond__step::after { transform-origin: right; }
@media (max-width: 759px) {
	.sr-bond { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
	.sr-bond__step { grid-template-columns: 34px minmax(0, 1fr); align-items: center; }
	.sr-bond__step::after { inset-inline-start: calc(17px - (1px + var(--k) * 1.25px)); inset-inline-end: auto; inset-block-start: 50%; inset-block-end: calc(-100% - var(--space-5)); inline-size: calc(2px + var(--k) * 2.5px); block-size: auto; transform: scaleY(var(--sr-l, 1)); transform-origin: top; }
	.sr-bond__dot { margin: 0; justify-self: center; }
}

/* 05 · Tesis fotoğrafı + süreç */
.sr-plant { margin-block-start: var(--space-7); display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: var(--space-8); align-items: center; }
.sr-plant--noimg { grid-template-columns: minmax(0, 1fr); }
.sr-plant__media { margin: 0; overflow: hidden; border-radius: 6px; aspect-ratio: 4 / 3; }
.sr-plant__media img { inline-size: 100%; block-size: 100%; object-fit: cover; object-position: 50% 40%; }
.sr-plant__steps { list-style: none; margin: 0; padding: 0; display: grid; }
.sr-plant__step { position: relative; display: flex; align-items: baseline; gap: var(--space-4); padding-block: var(--space-5); border-block-end: var(--border-width) solid var(--divider); }
.sr-plant__step:first-child { border-block-start: var(--border-width) solid var(--divider); }
.sr-plant__no { font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .14em; color: var(--heading-brand); }
.sr-plant__label { font-family: var(--font-heading); font-weight: 600; font-size: clamp(26px, 3vw, 40px); line-height: 1.1; color: var(--heading); }
.sr-plant__step:last-child .sr-plant__label { color: var(--heading-brand); }
@media (max-width: 899px) { .sr-plant { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .sr-plant__label { font-size: 26px; } }

/* 06 · Ölçüm döngüsü + izlenecek alanlar (rakamsız) */
.sr-measure { margin-block-start: var(--space-7); display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: var(--space-8); align-items: center; }
.sr-measure .vd-loop { inline-size: min(100%, 400px); }
.sr-areas { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.sr-areas__item { display: grid; gap: var(--space-4); padding: var(--space-5); background: var(--surface); border: var(--border-width) solid var(--divider); border-radius: 6px; }
.sr-areas__label { font-family: var(--font-heading); font-weight: 600; font-size: 20px; line-height: 1.2; color: var(--heading); }
.sr-areas__rule { block-size: 2px; background: repeating-linear-gradient(to right, var(--border) 0 6px, transparent 6px 12px); }
@media (max-width: 899px) { .sr-measure { grid-template-columns: minmax(0, 1fr); } }

/* Görsel özet — karar diyagramı, altı öğe, metinsiz */
.block--karar-solo .vd-karar { grid-template-columns: minmax(0, 1fr); justify-items: center; }
.block--karar-solo .vd-karar__fig { inline-size: min(100%, 920px); aspect-ratio: 16 / 10; }
.vd-karar--n6 .vd-karar__core { inline-size: clamp(150px, 15vw, 200px); }
.vd-karar--n6 .vd-karar__core span { font-size: clamp(22px, 2.2vw, 28px); text-align: center; line-height: 1.15; padding-inline: var(--space-3); }

/* Kapanış — büyük ifade + onaylı cümle */
.v2-manifesto__big { margin: 0 0 var(--space-5); display: grid; gap: .1em; font-family: var(--font-heading); font-weight: 600; font-size: clamp(36px, 5.4vw, 76px); line-height: 1.02; letter-spacing: -.02em; text-transform: uppercase; color: var(--heading); }
.v2-manifesto__big span:first-child { color: var(--text-muted); }
.v2-manifesto__big span:last-child { color: var(--heading-brand); }
.v2-manifesto__big + .v2-manifesto__text { font-size: clamp(20px, 2vw, 26px); max-inline-size: 40ch; margin-inline: auto; }

/* Uzun büyük ifade (70+ karakter) daha küçük puntoyla — blok ağırlaşmasın */
.block--lede-long .v2-lede { font-size: clamp(22px, 2.3vw, 30px); line-height: 1.3; max-inline-size: 36ch; }

/* Eşitlik vurgusu 3+ girdiyle de çalışır (Organik Ürün Tedariki: dört girdi) */
.pr-sum__list { display: flex; align-items: stretch; }
.pr-sum__in { flex: 1 1 0; min-inline-size: 0; }
.pr-sum__op { flex: none; }
@media (max-width: 759px) { .pr-sum__list { flex-direction: column; } }

/* Başlıksız vurgu satırı, üstündeki bantlı bölümün devamıdır: aynı zemin (2026-10-02) */
.content-flow .block--band + .block--cont { background: var(--surface-alt); padding-block-end: var(--space-8); }

/* =============================================================================
   SAYFA KARAKTERLERİ — 2026-10-02 (kullanıcı: "sayfalar birbirini tekrar
   etmeye başladı"). Her sayfaya tek baskın anlatım aracı + ritim kuralı.
   Yeni renk yok: koyu bant = --band, açık zemin = --surface / --surface-warm.
   ============================================================================= */

/* Büyük soluk bölüm numarası yalnız Politikalarımız'da (kitapçık bölüm no) */
.content-flow:not(.content-flow--ilke) .pr-bignum { display: none; }
.content-flow:not(.content-flow--ilke) .pr-head { display: block; }

/* ── Politikalarımız · kitapçık ─────────────────────────────────────────── */
.pr-book__grid { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: var(--space-9, 96px); align-items: start; }
.pr-book__nav { position: sticky; inset-block-start: 140px; padding-block: var(--space-9, 96px) var(--space-6); }
.pr-book__nav ol { list-style: none; margin: 0; padding: 0; border-block-start: var(--border-width) solid var(--divider); }
.pr-book__nav a { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: var(--space-2); padding: 12px 0 12px 12px; border-block-end: var(--border-width) solid var(--divider); border-inline-start: 2px solid transparent; font-family: var(--font-heading); font-weight: 600; font-size: 15px; line-height: 1.3; color: var(--text-secondary); text-decoration: none; transition: color .25s, border-color .25s; }
.pr-book__nav a span { font-family: var(--font-body); font-size: 11px; letter-spacing: .12em; color: var(--text-muted); padding-block-start: 2px; }
.pr-book__nav a:hover, .pr-book__nav a.is-active { color: var(--heading); border-inline-start-color: var(--heading-brand); }
.pr-book__nav a.is-active span { color: var(--heading-brand); }
.pr-book__chapters > .block { border-block-start: var(--border-width) solid var(--divider); }
.pr-book__chapters > .block:first-child { border-block-start: 0; }
.pr-book__chapters .container { padding-inline: 0; max-inline-size: none; }
.pr-book__chapters .block { scroll-margin-block-start: 120px; }
.ch-book__body { display: grid; gap: var(--space-3); max-inline-size: 62ch; }
.ch-book__body p { margin: 0; }
@media (max-width: 1023px) {
	.pr-book__grid { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.pr-book__nav { display: none; }   /* telefonda üstteki beş kart içindekiler görevini görür */
	.pr-book__chapters .container { padding-inline: var(--container-pad, 16px); }
}
/* Ritim: kapanış koyu bant */
.content-flow--ilke .block--manifesto-light { background: var(--band); }
.content-flow--ilke .block--manifesto-light .v2-manifesto__eyebrow { color: var(--band-accent); }
.content-flow--ilke .block--manifesto-light .v2-manifesto__eyebrow::after { background: var(--band-border); }
.content-flow--ilke .block--manifesto-light .v2-manifesto__text { color: var(--band-heading); }

/* ── Sertifikalar · gerçek belge ─────────────────────────────────────────── */
.cs-cert__doc { position: relative; display: grid; justify-items: center; margin-block: var(--space-2) var(--space-6); }
.cs-cert__paper { display: block; inline-size: min(100%, 260px); aspect-ratio: 4 / 5; overflow: hidden; padding: 0; border: var(--border-width) solid var(--divider); border-radius: 3px; background: #fff; cursor: pointer; box-shadow: 0 1px 2px rgba(0, 0, 0, .06), 0 18px 34px -22px rgba(4, 51, 27, .45); transition: transform .35s var(--motion-ease-out, ease), box-shadow .35s; }
span.cs-cert__paper { cursor: default; }
.cs-cert__paper img { inline-size: 100%; block-size: 100%; object-fit: cover; object-position: top; }
button.cs-cert__paper:hover, button.cs-cert__paper:focus-visible { transform: translateY(-4px) rotate(-.6deg); box-shadow: 0 2px 4px rgba(0, 0, 0, .06), 0 26px 44px -22px rgba(4, 51, 27, .55); }
.cs-cert__badge { position: absolute; inset-block-end: 0; inset-inline-start: 50%; transform: translate(-50%, 50%); display: grid; place-items: center; inline-size: 68px; block-size: 68px; border-radius: 50%; background: #fff; border: var(--border-width) solid var(--divider); box-shadow: 0 6px 16px -8px rgba(0, 0, 0, .3); overflow: hidden; }
.cs-cert__badge img { inline-size: 52px; block-size: 52px; object-fit: contain; }
[dir="rtl"] .cs-cert__badge { transform: translate(50%, 50%); }
/* Ritim: "Logo değil. Belge." koyu bant */
.cs-proof-sec { background: var(--band); color: var(--band-text); }
.cs-proof-sec .cs-h2 { color: var(--band-heading); }
.cs-proof-sec .cs-muted { color: var(--band-text); }
.cs-proof-sec .cs-proof__words { color: var(--band-heading); }
.cs-proof-sec .cs-proof__w.is-first { color: var(--primary-300); }
.cs-proof-sec .cs-proof__w.is-first::after { background: var(--band-heading); }
.cs-proof-sec .cs-proof__w:last-child { color: var(--band-accent); }
.cs-proof-sec + .cs-section { border-block-start: 0; }

/* ── Değerlerimiz · karşıtlık panosu ─────────────────────────────────────── */
.content-flow .block--karsitlik { padding-block: 0 var(--space-9, 96px); }
.ch-pair { position: relative; display: grid; grid-template-columns: 1fr 1fr; min-block-size: clamp(200px, 26vw, 320px); }
.ch-pair__side { display: grid; place-items: center; padding: var(--space-7) var(--space-6); text-align: center; }
.ch-pair__side span { font-family: var(--font-heading); font-weight: 600; font-size: clamp(28px, 3.8vw, 56px); line-height: 1.1; letter-spacing: -.01em; }
.ch-pair__side--a { background: var(--surface-warm); color: var(--text-secondary); }
.ch-pair__side--b { background: var(--band); color: var(--band-heading); }
.block--karsitlik:nth-of-type(even) .ch-pair__side--a { background: var(--band); color: var(--band-heading); }
.block--karsitlik:nth-of-type(even) .ch-pair__side--b { background: var(--surface-warm); color: var(--heading); }
.ch-pair__mid { position: absolute; inset-inline-start: 50%; inset-block-start: 50%; transform: translate(-50%, -50%); display: grid; place-items: center; inline-size: 56px; block-size: 56px; border-radius: 50%; background: var(--surface); color: var(--heading-brand); font-size: 22px; box-shadow: 0 6px 18px -8px rgba(0, 0, 0, .35); }
.ch-split { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-9, 96px); padding-block-start: var(--space-8); align-items: start; }
.ch-split__head { display: grid; gap: var(--space-3); }
.ch-split__no { font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .16em; color: var(--heading-brand); }
.ch-split__title { margin: 0; font-family: var(--font-heading); font-weight: 600; font-size: clamp(28px, 3vw, 40px); line-height: 1.15; color: var(--heading); }
.ch-split__lede { margin: 0; font-family: var(--font-heading); font-weight: 600; font-size: clamp(20px, 1.9vw, 25px); line-height: 1.35; color: var(--heading-brand); }
.ch-split__body { display: grid; gap: var(--space-3); color: var(--text-secondary); }
.ch-split__body p { margin: 0; }
.ch-split__body .vd-loop { margin-block-start: var(--space-6); inline-size: min(100%, 380px); margin-inline: 0; }
@media (max-width: 899px) {
	.ch-pair { grid-template-columns: minmax(0, 1fr); }
	.ch-pair__side { padding: var(--space-6) var(--space-4); }
	.ch-split { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); padding-block-start: var(--space-6); }
	.ch-split__body .vd-loop { margin-inline: auto; }
}

/* 🔄 2026-10-08 · DEĞER KARTI (kullanıcı: "başlıklar ve alt metinler bir bütünlük
   içerisinde değil… hangi metin hangi konuyla ilgili karışıyor"). Ölçüm: karşıtlık
   şeridi kendi başlığına 64 px, önceki bölümün metnine 96 px uzaktaydı ve hepsi aynı
   zemindeydi — şerit iki bölümün arasında askıda kalıyordu. Şimdi her değer TEK
   KARTTIR: şerit kartın başlığıdır (alçak, küçük yazı), metin kartın gövdesi;
   kartlar arasında belirgin boşluk. METİN DEĞİŞMEDİ. */
.content-flow--degerlerimiz .block--karsitlik {
	inline-size: min(100% - 2 * var(--gutter, 24px), var(--container-max));
	margin: 0 auto var(--space-9, 96px);
	padding: 0;
	border: 1px solid var(--divider);
	border-radius: var(--radius-lg);
	overflow: hidden;
	background: var(--surface);
}
.content-flow--degerlerimiz .block--karsitlik:first-child { margin-block-start: var(--space-9, 96px); }
.content-flow--degerlerimiz .ch-pair { min-block-size: clamp(104px, 9vw, 136px); }
.content-flow--degerlerimiz .ch-pair__side { padding: var(--space-5) var(--space-6); }
.content-flow--degerlerimiz .ch-pair__side span { font-size: clamp(22px, 2.2vw, 32px); }
.content-flow--degerlerimiz .ch-pair__mid { inline-size: 44px; block-size: 44px; font-size: 18px; }
.content-flow--degerlerimiz .ch-split {
	inline-size: auto; max-inline-size: none; margin: 0;
	padding: var(--space-8) clamp(var(--space-5), 4vw, var(--space-9, 96px)) var(--space-8);
}
/* 🔄 2026-10-08 · kullanıcı: alttaki iki sütun, üstteki şeridin orta çizgisine hizalansın.
   Şerit 1fr|1fr — gövde de 1fr|1fr, sütun aralığı yok; boşluk orta çizginin İKİ
   YANINA eşit pay olarak verilir. Böylece başlık sütunu şeridin sol yarısının,
   metin sütunu sağ yarısının tam altında başlar. */
@media (min-width: 900px) {
	.content-flow--degerlerimiz .ch-split {
		grid-template-columns: 1fr 1fr; column-gap: 0;
		padding-inline: 0;
	}
	.content-flow--degerlerimiz .ch-split__head { padding-inline: clamp(var(--space-6), 4vw, var(--space-9, 96px)) var(--space-8); }
	.content-flow--degerlerimiz .ch-split__body { padding-inline: var(--space-8) clamp(var(--space-6), 4vw, var(--space-9, 96px)); }
	[dir="rtl"] .content-flow--degerlerimiz .ch-split__head { padding-inline: clamp(var(--space-6), 4vw, var(--space-9, 96px)) var(--space-8); }
}
@media (max-width: 899px) {
	.content-flow--degerlerimiz .block--karsitlik { margin-block-end: var(--space-8); }
	.content-flow--degerlerimiz .block--karsitlik:first-child { margin-block-start: var(--space-8); }
	/* mobilde de YAN YANA: alt alta dizilince ortadaki ↔ yazının üstüne biniyordu */
	.content-flow--degerlerimiz .ch-pair { grid-template-columns: 1fr 1fr; min-block-size: 88px; }
	.content-flow--degerlerimiz .ch-pair__side { padding-block: var(--space-4); }
	.content-flow--degerlerimiz .ch-pair__side--a { padding-inline: 8px 24px; }   /* ortadaki yuvarlaktan uzak dur */
	.content-flow--degerlerimiz .ch-pair__side--b { padding-inline: 24px 8px; }
	.content-flow--degerlerimiz .ch-pair__side span { font-size: 16px; }
	.content-flow--degerlerimiz .ch-pair__mid { inline-size: 26px; block-size: 26px; font-size: 13px; }
	.content-flow--degerlerimiz .ch-split { padding: var(--space-6) var(--space-5); }
}

@media (max-width: 389px) {
	/* "Söylediklerimiz" tek kelime, bölünemiyor — dar telefonda yuvarlağa değmesin */
	.content-flow--degerlerimiz .ch-pair__side span { font-size: 14.5px; }
}

/* ── Sürdürülebilirlik · fotoğraflı bölüm ───────────────────────────────── */
.content-flow .block--foto { padding-block: 0 var(--space-8); }
.ch-photo { position: relative; overflow: hidden; }
.ch-photo__img { display: block; inline-size: 100%; block-size: clamp(360px, 62vh, 640px); object-fit: cover; object-position: 50% 22%; }   /* üstteki konu (kafa, ağız) kesilmesin */
/* 2026-10-12 · kullanıcı: geçiş yeşil tonluydu ("kötü duruyor") → nötr koyu; okunurluk aynı */
.ch-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0, 0, 0, .72) 0%, rgba(0, 0, 0, .30) 42%, rgba(0, 0, 0, 0) 70%); pointer-events: none; }
.ch-photo__cap { position: absolute; inset-inline: 0; inset-block-end: 0; z-index: 1; display: grid; gap: var(--space-3); padding-block-end: var(--space-8); }
.ch-photo__title { margin: 0; max-inline-size: 18ch; font-family: var(--font-heading); font-weight: 600; font-size: clamp(30px, 4vw, 54px); line-height: 1.1; color: #fff; text-wrap: balance; }
.ch-photo__lede { margin: 0; max-inline-size: 44ch; font-size: clamp(17px, 1.5vw, 20px); line-height: 1.5; color: rgba(255, 255, 255, .88); }
.block--foto:nth-of-type(even) .ch-photo__cap { justify-items: end; text-align: end; }
.ch-photo__body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-7); padding-block-start: var(--space-7); color: var(--text-secondary); }
.ch-photo__body p { margin: 0; }
.ch-photo__body p + p { margin-block-start: var(--space-3); }
@media (max-width: 899px) {
	.ch-photo__img { block-size: 420px; }
	.ch-photo__body { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
	.block--foto:nth-of-type(even) .ch-photo__cap { justify-items: start; text-align: start; }
}
/* Ritim: şemasız bölüm (Politikalar dışı) koyu bant olur */
.content-flow:not(.content-flow--ilke) .block--bolum { background: var(--band); color: var(--band-text); padding-block: var(--space-9, 96px); border: 0; }
.content-flow:not(.content-flow--ilke) .block--bolum .v2-title { color: var(--band-heading); }
.content-flow:not(.content-flow--ilke) .block--bolum .v2-lede { color: var(--primary-300); max-inline-size: 30ch; }
.content-flow:not(.content-flow--ilke) .block--bolum .ch-book__body { color: var(--band-text); }
/* Kapanış fotoğraf üstünde: büyük ifade büyük harf değil */
.block--manifesto-media .v2-manifesto__big { text-transform: none; color: #fff; }
.block--manifesto-media .v2-manifesto__big span:first-child { color: rgba(255, 255, 255, .7); }
.block--manifesto-media .v2-manifesto__big span:last-child { color: var(--primary-300); }

/* İçindekiler */
.content-flow .block--toc { padding-block: var(--space-9, 96px); background: var(--surface-warm); }
.ch-toc { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-9, 96px); align-items: start; }
.ch-toc__eyebrow { margin: 0 0 var(--space-3); font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--heading-brand); }
.ch-toc__lede { margin: 0; font-family: var(--font-heading); font-weight: 600; font-size: clamp(34px, 4vw, 56px); line-height: 1.05; color: var(--heading-brand); }
.ch-toc__list { list-style: none; margin: 0; padding: 0; border-block-start: var(--border-width) solid var(--border); }
.ch-toc__link { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: var(--space-3); padding-block: var(--space-4); border-block-end: var(--border-width) solid var(--border); font-family: var(--font-heading); font-weight: 600; font-size: clamp(18px, 1.6vw, 22px); color: var(--heading); text-decoration: none; transition: padding .25s, color .25s; }
.ch-toc__no { font-family: var(--font-body); font-size: 12px; letter-spacing: .14em; color: var(--heading-brand); }
.ch-toc__link .icon { color: var(--heading-brand); }
.ch-toc__link:hover, .ch-toc__link:focus-visible { padding-inline-start: var(--space-3); color: var(--heading-brand); }
@media (max-width: 899px) { .ch-toc { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); } }

/* ── İnsan Kaynakları · fotoğraflı alan kartları ─────────────────────────── */
.ch-cards { list-style: none; margin: var(--space-7) 0 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--space-4); }
.ch-cards__item { display: grid; align-content: start; gap: var(--space-2); }
.ch-cards__media { display: block; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 6px; margin-block-end: var(--space-2); background: var(--surface-alt); }
.ch-cards__media img { inline-size: 100%; block-size: 100%; object-fit: cover; transition: transform .6s var(--motion-ease-out, ease); }
.ch-cards__item:hover .ch-cards__media img { transform: scale(1.04); }
.ch-cards__no { font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .14em; color: var(--heading-brand); }
.ch-cards__label { font-family: var(--font-heading); font-weight: 600; font-size: 18px; line-height: 1.3; color: var(--heading); }
@media (max-width: 1023px) { .ch-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 599px) { .ch-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); } .ch-cards--5 > :last-child { grid-column: 1 / -1; } .ch-cards--5 > :last-child .ch-cards__media { aspect-ratio: 16 / 9; } }
/* Ritim: kültür mesajı koyu bant, normal harf */
.content-flow--ik .block--manifesto-light { background: var(--band); }
.content-flow--ik .v2-manifesto__big { text-transform: none; color: var(--band-heading); }
.content-flow--ik .v2-manifesto__big span:first-child { color: var(--primary-300); }
.content-flow--ik .v2-manifesto__big span:last-child { color: var(--band-heading); }
.content-flow--ik .block--manifesto-light .v2-manifesto__text { color: var(--band-text); }
@media (prefers-reduced-motion: reduce) { .cs-cert__paper, .ch-cards__media img, .ch-toc__link, .pr-book__nav a { transition: none; } }

.ch-cards__media picture, .ch-cards__media img { display: block; inline-size: 100%; block-size: 100%; }

/* İzlenebilirlik: üç beyaz bölüm üst üste geliyordu — ortadaki bant (kullanıcı, 2026-10-03) */
.content-flow .block--flow-hat { background: var(--surface-alt); }

/* =============================================================================
   2026-10-03 · SADELEŞTİRME (kullanıcı): küçük 01–02 numaraları "rapor okuyor"
   hissi veriyordu; akan ışık birçok yerde tekrar ediyordu. Numara yalnız
   Politikalarımız ve Sertifikalar'ın büyük kart numaralarında; ışık yalnız
   İzlenebilirlik metro hattında.
   ============================================================================= */
/* Metin bölümlerinde otomatik 01, 02… yok */
.block--editorial .block-edit__title::before,
.content-flow .block--textimage .block__title::before { content: none; display: none; }
/* Numaralı aşama: rakam yerine nokta (çizgi aynı yerde kalır) */
.v2-flow--numara .v2-flow__num, .v2-flow__num:empty { background: transparent; border: 0; }
.v2-flow__num:empty::after { content: ""; inline-size: 14px; block-size: 14px; border-radius: 50%; background: var(--heading-brand); box-shadow: 0 0 0 5px var(--surface); }
.block--dark .v2-flow__num:empty::after, .block--band .v2-flow__num:empty::after { box-shadow: 0 0 0 5px var(--surface-alt); }

/* İzlenebilirlik · Her Partinin Bir Kaydı Var — İSTİF */
.stack { margin-block-start: var(--space-7); display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: var(--space-8); align-items: center; }
.stack--noimg { grid-template-columns: minmax(0, 1fr); }
.stack__media { margin: 0; overflow: hidden; border-radius: 6px; aspect-ratio: 4 / 5; max-block-size: 560px; }
.stack__media picture, .stack__media img { display: block; inline-size: 100%; block-size: 100%; }
.stack__media img { object-fit: cover; object-position: 50% 60%; }
.stack__body { display: grid; gap: var(--space-4); }
.stack__core { margin: 0; display: inline-flex; align-items: center; gap: var(--space-3); justify-self: start; padding: 8px 16px 8px 8px; border-radius: 999px; background: var(--heading-brand); color: var(--surface); font-family: var(--font-body); font-weight: 600; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; }
.stack__core-ico { display: grid; place-items: center; inline-size: 30px; block-size: 30px; border-radius: 50%; background: rgba(255, 255, 255, .16); }
.stack__core-ico .v2-ico { inline-size: 16px; block-size: 16px; }
.stack__layers { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
/* Katmanlar çuval istifi gibi: hafif kaydırmalı, ince çerçeveli bloklar */
.stack__layer { display: flex; align-items: center; gap: var(--space-4); padding: 14px 18px; background: var(--surface); border: var(--border-width) solid var(--divider); border-radius: 10px; box-shadow: 0 1px 0 rgba(0, 0, 0, .03); }
.stack__layer:nth-child(odd) { margin-inline-end: 28px; }
.stack__layer:nth-child(even) { margin-inline-start: 28px; }
.stack__ico { flex: none; display: grid; place-items: center; inline-size: 36px; block-size: 36px; border-radius: 50%; background: var(--surface-alt); color: var(--heading-brand); }
.stack__ico .v2-ico { inline-size: 18px; block-size: 18px; }
.stack__label { font-family: var(--font-heading); font-weight: 600; font-size: clamp(17px, 1.5vw, 20px); line-height: 1.25; color: var(--heading); }
@media (max-width: 899px) {
	.stack { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
	.stack__media { aspect-ratio: 16 / 10; max-block-size: none; }
	.stack__layer:nth-child(odd) { margin-inline-end: 16px; }
	.stack__layer:nth-child(even) { margin-inline-start: 16px; }
}
.cs-sys__link { grid-template-columns: minmax(0, 1fr) auto; }   /* 2026-10-03 · numara kalktı: iki sütun */
.ch-toc__link { grid-template-columns: minmax(0, 1fr) auto; }   /* 2026-10-03 · numara kalktı: iki sütun */

/* =============================================================================
   Organik Ürün Tedariki · KESİŞİM (2026-10-03, kullanıcı onayı)
   Dört yarı saydam daire; dördünün ortak alanında "Doğru tedarik".
   ============================================================================= */
.content-flow .block--flow-kesisim { padding-block: var(--space-6) var(--space-9, 96px); }
.ks { display: grid; justify-items: center; }
.ks__fig { position: relative; inline-size: min(100%, 560px); aspect-ratio: 1; }
.ks__sets { list-style: none; margin: 0; padding: 0; }
.ks-set { position: absolute; inline-size: 58%; aspect-ratio: 1; border-radius: 50%;
	background: rgba(7, 102, 51, .07); border: 1.5px solid rgba(7, 102, 51, .45); display: flex; }
.ks-set--ust { left: 21%; top: 0; justify-content: center; align-items: flex-start; }
.ks-set--sag { left: 42%; top: 21%; justify-content: flex-end; align-items: center; }
.ks-set--alt { left: 21%; top: 42%; justify-content: center; align-items: flex-end; }
.ks-set--sol { left: 0; top: 21%; justify-content: flex-start; align-items: center; }
.ks-set__label { padding: 14% 9%; font-family: var(--font-heading); font-weight: 600; font-size: clamp(15px, 1.6vw, 20px); line-height: 1.2; color: var(--heading); text-align: center; max-inline-size: 60%; }
.ks-set--ust .ks-set__label, .ks-set--alt .ks-set__label { padding-inline: 0; }
.ks__core { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); margin: 0; display: grid; place-items: center;
	inline-size: 30%; aspect-ratio: 1; border-radius: 50%; background: var(--heading-brand); box-shadow: 0 0 0 8px rgba(124, 196, 155, .22), 0 18px 36px -18px rgba(4, 51, 27, .55); }
.ks__core span { padding-inline: 10%; text-align: center; font-family: var(--font-heading); font-weight: 600; font-size: clamp(15px, 1.7vw, 21px); line-height: 1.15; color: var(--surface); }
:root[data-theme="dark"] .ks-set { background: rgba(124, 196, 155, .08); border-color: rgba(124, 196, 155, .5); }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .ks-set { background: rgba(124, 196, 155, .08); border-color: rgba(124, 196, 155, .5); } }
@media (max-width: 599px) {
	.ks__fig { inline-size: min(100%, 340px); }
	.ks-set__label { font-size: 13px; padding: 12% 7%; }
	.ks__core span { font-size: 13px; }
}

/* Sürdürülebilirlik özeti — düz liste (2026-10-03) */
.ch-toc__item { padding-block: var(--space-4); border-block-end: var(--border-width) solid var(--border); font-family: var(--font-heading); font-weight: 600; font-size: clamp(18px, 1.6vw, 22px); line-height: 1.3; color: var(--heading); }

/* =============================================================================
   ULUSLARARASI TİCARET — 2026-10-03 (kullanıcı brifi)
   Baskın araç: ticaret operasyonu. Koyu rota bandı · pazar kartları ·
   belge düzeni · ambalaj kartları · tek satır sıra · dikey iz hattı.
   Numara yok, akan ışık yok. Sayfaya özel kurallar .content-flow--uluslararasi-ticaret altında.
   ============================================================================= */

/* Açılış bilgi satırı */
.page-head__meta { list-style: none; margin: var(--space-5) 0 0; padding: var(--space-4) 0 0; border-block-start: var(--border-width) solid var(--surface-warm-line); display: flex; flex-wrap: wrap; gap: 6px 0; }
.page-head__meta li { font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--heading-brand); }
.page-head__meta li + li::before { content: "·"; margin-inline: 10px; color: var(--text-muted); }

/* Ticaret rotası — koyu bant */
.content-flow .block--rota { padding-block: var(--space-10, 128px) var(--space-9, 96px); background: var(--band); color: var(--band-text); }
.rt-title { margin: 0 0 var(--space-3); font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--band-accent); }
.rt-lede { margin: 0; max-inline-size: 30ch; font-family: var(--font-heading); font-weight: 500; font-size: clamp(28px, 3.4vw, 46px); line-height: 1.2; color: var(--band-heading); text-wrap: balance; }
.rt { list-style: none; margin: var(--space-9, 96px) 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-5); }
.rt-step { display: grid; align-content: start; gap: var(--space-3); }
.rt-step__rail { position: relative; display: block; block-size: 2px; margin-block-end: var(--space-3); background: rgba(124, 196, 155, .35); transform: scaleX(var(--rt, 1)); transform-origin: left; }
.rt-step__rail::before { content: ""; position: absolute; inset-inline-start: 0; inset-block-start: 50%; inline-size: 12px; block-size: 12px; margin-block-start: -6px; border-radius: 50%; background: var(--band); border: 2px solid var(--primary-300); }
.rt-step:not(.is-last) .rt-step__rail::after { content: ""; position: absolute; inset-inline-end: 0; inset-block-start: 50%; inline-size: 9px; block-size: 9px; margin-block-start: -5px; border-inline-end: 2px solid var(--primary-300); border-block-start: 2px solid var(--primary-300); transform: rotate(45deg); }
[dir="rtl"] .rt-step:not(.is-last) .rt-step__rail::after { transform: rotate(-135deg); }
.rt-step.is-last .rt-step__rail::before { background: var(--primary-300); }
.rt-step__title { font-family: var(--font-heading); font-weight: 600; font-size: clamp(20px, 1.9vw, 26px); line-height: 1.2; color: var(--band-heading); }
.rt-step__text { font-size: 15px; line-height: 1.55; color: var(--band-text); max-inline-size: 30ch; }
[dir="rtl"] .rt-step__rail { transform-origin: right; }
@media (max-width: 899px) {
	.content-flow .block--rota { padding-block: var(--space-8); }
	.rt { grid-template-columns: minmax(0, 1fr); gap: 0; margin-block-start: var(--space-7); }
	.rt-step { position: relative; padding-inline-start: 34px; padding-block-end: var(--space-6); }
	.rt-step__rail { position: absolute; inset-inline-start: 5px; inset-block: 6px 0; inline-size: 2px; block-size: auto; margin: 0; transform: scaleY(var(--rt, 1)); transform-origin: top; }
	.rt-step__rail::before { inset-inline-start: -5px; inset-block-start: 0; margin: 0; }
	.rt-step:not(.is-last) .rt-step__rail::after { display: none; }
	.rt-step.is-last .rt-step__rail { background: transparent; }
}

/* Farklı pazarlar — metin solda, kartlar sağda alt alta */
.content-flow--uluslararasi-ticaret .block--cards > .container { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); column-gap: var(--space-9, 96px); align-items: start; }
.content-flow--uluslararasi-ticaret .block--cards .v2-title, .content-flow--uluslararasi-ticaret .block--cards .v2-intro { grid-column: 1; }
.content-flow--uluslararasi-ticaret .block--cards .v2-cards { grid-column: 2; grid-row: 1 / span 2; grid-template-columns: minmax(0, 1fr); gap: var(--space-3); margin: 0; }
.content-flow--uluslararasi-ticaret .block--cards .v2-card { border-inline-start: 3px solid var(--heading-brand); border-radius: 4px; }
@media (max-width: 899px) {
	.content-flow--uluslararasi-ticaret .block--cards > .container { grid-template-columns: minmax(0, 1fr); }
	.content-flow--uluslararasi-ticaret .block--cards .v2-cards { grid-column: 1; grid-row: auto; margin-block-start: var(--space-6); }
}

/* Dokümantasyon */
.content-flow .block--belge { padding-block: var(--space-9, 96px); background: var(--surface-alt); }
.dk { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: var(--space-9, 96px); align-items: center; }
.dk__media { margin: 0; overflow: hidden; border-radius: 6px; aspect-ratio: 4 / 3; }
.dk__media picture, .dk__media img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
.dk__body { display: grid; gap: var(--space-4); }
.dk__title { margin: 0; font-family: var(--font-heading); font-weight: 600; font-size: clamp(28px, 3vw, 40px); line-height: 1.15; color: var(--heading); }
.dk__lede { margin: 0; font-family: var(--font-heading); font-weight: 600; font-size: clamp(20px, 1.9vw, 25px); line-height: 1.35; color: var(--heading-brand); max-inline-size: 30ch; }
.dk__text { display: grid; gap: var(--space-3); color: var(--text-secondary); }
.dk__text p { margin: 0; }
.dk__docs { list-style: none; margin: var(--space-2) 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2); }
.dk-doc { display: flex; align-items: center; gap: var(--space-3); padding: 10px 14px; background: var(--surface); border: var(--border-width) solid var(--divider); border-radius: 4px; font-size: 15px; font-weight: 600; color: var(--heading); }
.dk-doc__ico { display: grid; place-items: center; color: var(--heading-brand); }
@media (max-width: 899px) { .dk { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .dk__docs { grid-template-columns: minmax(0, 1fr); } }

/* Ambalaj kartları — kare, ad görselin üstünde */
.content-flow--uluslararasi-ticaret .block--fotokart { padding-block-end: var(--space-6); }
.content-flow--uluslararasi-ticaret .ch-cards__item { position: relative; overflow: hidden; border-radius: 6px; }
.content-flow--uluslararasi-ticaret .ch-cards__media { aspect-ratio: 1; margin: 0; border-radius: 0; }
.content-flow--uluslararasi-ticaret .ch-cards__item::after { content: ""; position: absolute; inset: 45% 0 0; background: linear-gradient(to top, rgba(4, 30, 17, .8), rgba(4, 30, 17, 0)); pointer-events: none; }
.content-flow--uluslararasi-ticaret .ch-cards__label { position: absolute; inset-inline: var(--space-4); inset-block-end: var(--space-4); z-index: 1; color: #fff; font-size: clamp(16px, 1.4vw, 19px); }
@media (max-width: 599px) { .content-flow--uluslararasi-ticaret .ch-cards--5 > :last-child .ch-cards__media { aspect-ratio: 16 / 9; } }

/* Tek satır operasyon sırası */
.content-flow .block--sira { padding-block: 0 var(--space-9, 96px); }
.sq { list-style: none; margin: 0; padding: var(--space-5) 0 0; border-block-start: var(--border-width) solid var(--divider); display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2) 0; }
.sq li { font-family: var(--font-heading); font-weight: 600; font-size: clamp(17px, 1.6vw, 21px); color: var(--heading); }
.sq li + li::before { content: "→"; margin-inline: 14px; color: var(--heading-brand); font-family: var(--font-body); }
[dir="rtl"] .sq li + li::before { content: "←"; }

/* İz hattı — büyük ifade + dikey dolan hat */
.content-flow .block--izhat { padding-block: var(--space-10, 128px); background: var(--surface-warm); }
.ih { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: var(--space-9, 96px); align-items: start; }
.ih__head { display: grid; gap: var(--space-5); }
.ih__title { margin: 0; font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--heading-brand); }
.ih__lede { margin: 0; max-inline-size: 22ch; font-family: var(--font-heading); font-weight: 500; font-size: clamp(32px, 4vw, 56px); line-height: 1.12; color: var(--heading); text-wrap: balance; }
.ih__text { display: grid; gap: var(--space-3); max-inline-size: 58ch; color: var(--text-secondary); }
.ih__text p { margin: 0; }
.ih__media { margin: var(--space-3) 0 0; overflow: hidden; border-radius: 6px; aspect-ratio: 16 / 9; }
.ih__media picture, .ih__media img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
.ih__line { list-style: none; margin: 0; padding: 0; position: relative; display: grid; gap: var(--space-5); }
.ih__line::before, .ih__fill { content: ""; position: absolute; inset-inline-start: 7px; inset-block: 10px; inline-size: 2px; background: var(--surface-warm-line); }
.ih__fill { background: var(--heading-brand); transform: scaleY(var(--ih, 1)); transform-origin: top; }
.ih-step { position: relative; display: flex; align-items: center; gap: var(--space-4); font-family: var(--font-heading); font-weight: 600; font-size: clamp(20px, 1.9vw, 26px); color: var(--heading); transition: opacity .3s; }
.ih-step__dot { position: relative; z-index: 1; flex: none; inline-size: 16px; block-size: 16px; border-radius: 50%; background: var(--surface-warm); border: 2px solid var(--heading-brand); transition: background-color .3s; }
.ih-step:last-child .ih-step__dot, .ih-step.is-on .ih-step__dot { background: var(--heading-brand); }
.block--izhat.is-armed .ih-step:not(.is-on) { opacity: .4; }
@media (max-width: 899px) { .content-flow .block--izhat { padding-block: var(--space-8); } .ih { grid-template-columns: minmax(0, 1fr); gap: var(--space-7); } }
@media (prefers-reduced-motion: reduce) { .ih-step, .ih-step__dot { transition: none; } }
/* Uluslararası Ticaret düzeltmeleri */
.content-flow--uluslararasi-ticaret .block--cards { background: var(--surface); }
.content-flow--uluslararasi-ticaret .block--cards .v2-card { padding: var(--space-4) var(--space-5); background: var(--surface); border: var(--border-width) solid var(--divider); border-inline-start: 3px solid var(--heading-brand); display: grid; gap: var(--space-2); }
.content-flow--uluslararasi-ticaret .block--cards .v2-card__label { margin: 0; }
.content-flow--uluslararasi-ticaret .block--cards .v2-card__text { margin: 0; color: var(--text-secondary); }
.dk__text p + p, .ih__text p + p { margin-block-start: var(--space-3); }
.page-head__meta { column-gap: 20px; }
.page-head__meta li + li::before { content: none; }
.page-head__meta li { position: relative; }
.page-head__meta li + li::after { content: ""; position: absolute; inset-inline-start: -12px; inset-block-start: 50%; inline-size: 4px; block-size: 4px; margin-block-start: -2px; border-radius: 50%; background: var(--text-muted); }

/* =============================================================================
   HAKKIMIZDA — 2026-10-05 (kullanıcı brifi)
   Karakter: kimlik · düşünce · güven · gelecek. Tipografi ağırlıklı; fotoğraf
   yalnız açılışta. Uluslararası Ticaret'in operasyon dilinden ayrı.
   ============================================================================= */

/* Açılış — tam genişlik kapak, başlık görselin üstünde */
.page-head--wide { position: relative; overflow: hidden; padding-block: 0; border: 0; min-block-size: clamp(480px, 78vh, 760px); display: grid; align-items: end; }
.page-head--wide .page-head__inner { position: static; display: block; padding-block: var(--space-10, 128px) var(--space-9, 96px); }
.page-head--wide .page-head__media { position: absolute; inset: 0; z-index: 0; margin: 0; border-radius: 0; max-block-size: none; aspect-ratio: auto; }
.page-head--wide .page-head__media picture, .page-head--wide .page-head__media img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; object-position: 50% 35%; border-radius: 0; }
/* 🔄 2026-10-05 · kullanıcı: yeşil perde resmi kötü çekilmiş gösteriyordu → nötr, hafif sıcak koyu; yalnız yazının olduğu sol-alt bölgede */
.page-head--wide::after { content: ""; position: absolute; inset: 0; z-index: 0; background: linear-gradient(90deg, rgba(20, 18, 15, .62) 0%, rgba(20, 18, 15, .34) 38%, rgba(20, 18, 15, 0) 62%), linear-gradient(to top, rgba(20, 18, 15, .38), rgba(20, 18, 15, 0) 40%); pointer-events: none; }
.page-head--wide .page-head__text { position: relative; z-index: 1; max-inline-size: 640px; }
.page-head--wide .page-head__eyebrow a { color: rgba(255, 255, 255, .88); }
.page-head--wide .page-head__title { color: #fff; text-shadow: 0 1px 18px rgba(0, 0, 0, .25); }
.page-head--wide .page-head__summary { color: rgba(255, 255, 255, .92); max-inline-size: 22ch; }
.page-head--wide .page-head__summary > p:only-child { font-family: var(--font-heading); font-weight: 500; font-size: clamp(26px, 3vw, 40px); line-height: 1.2; color: #fff; }
@media (max-width: 899px) { .page-head--wide { min-block-size: 520px; } .page-head--wide::after { background: linear-gradient(to top, rgba(20, 18, 15, .8) 5%, rgba(20, 18, 15, .5) 50%, rgba(20, 18, 15, 0) 85%); } }

/* Giriş — son cümle büyük vurgu */
.content-flow--hakkimizda .block--lead .block-lead { max-inline-size: 64ch; }
.content-flow--hakkimizda .block--lead .block-lead p:last-child { margin-block-start: var(--space-6); font-family: var(--font-heading); font-weight: 500; font-size: clamp(26px, 3vw, 40px); line-height: 1.25; color: var(--heading-brand); max-inline-size: 24ch; }


/* Kuruluş düşüncesi — merkez cümle */
.content-flow .block--merkez { padding-block: var(--space-10, 128px); }
.mk { display: grid; justify-items: center; text-align: center; gap: var(--space-6); }
.mk__title { margin: 0; font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--heading-brand); }
.mk__intro, .mk__outro { max-inline-size: 58ch; color: var(--text-secondary); font-size: var(--text-body-lg, 18px); }
.mk__intro p, .mk__outro p { margin: 0; }
.mk__intro p + p { margin-block-start: var(--space-3); }
.mk__quote { margin: var(--space-5) 0; display: grid; gap: .15em; max-inline-size: 22ch; font-family: var(--font-heading); font-weight: 500; font-size: clamp(32px, 4.6vw, 64px); line-height: 1.12; letter-spacing: -.01em; color: var(--heading); text-wrap: balance; }
.mk__quote span:last-child { color: var(--heading-brand); }
.mk__outro { padding-block-start: var(--space-5); border-block-start: 1px solid var(--heading-brand); }

/* Gelecek — vizyon basamakları */
.content-flow .block--vizyon { padding-block: var(--space-10, 128px); background: var(--band); color: var(--band-text); }
.vz { display: grid; gap: var(--space-7); max-inline-size: 980px; }
.vz__title { margin: 0; font-family: var(--font-heading); font-weight: 600; font-size: clamp(28px, 3vw, 40px); color: var(--band-heading); }
.vz__steps { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-7); }
.vz-step { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: var(--space-6); align-items: baseline; padding-block-start: var(--space-5); border-block-start: var(--border-width) solid rgba(124, 196, 155, .3); }
.vz-step--2 { margin-inline-start: 6%; }
.vz-step--3 { margin-inline-start: 12%; }
.vz-step__label { font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--band-accent); }
.vz-step__text { margin: 0; font-family: var(--font-heading); font-weight: 500; font-size: clamp(22px, 2.4vw, 32px); line-height: 1.3; color: var(--band-heading); }
.vz-step--3 .vz-step__text { color: var(--primary-300); }
.vz__support { margin-inline-start: calc(6% + 200px + var(--space-6)); max-inline-size: 56ch; color: var(--band-text); }
.vz__support p { margin: 0; }
.vz__support p + p { margin-block-start: var(--space-3); }
@media (max-width: 899px) {
	.vz-step { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
	.vz-step--2, .vz-step--3 { margin-inline-start: 0; }
	.vz__support { margin-inline-start: 0; }
}

/* Bugün → Yarın — tek kompozisyon */
.content-flow .block--ikizaman { padding-block: var(--space-10, 128px); }
.tz { display: grid; grid-template-columns: minmax(0, 1fr) 120px minmax(0, 1fr); align-items: start; }
.tz__label { margin: 0 0 var(--space-5); font-family: var(--font-heading); font-weight: 600; font-size: clamp(44px, 5.5vw, 80px); line-height: 1; letter-spacing: -.02em; color: var(--heading); }
.tz__col--yarin .tz__label { color: var(--heading-brand); }
.tz__list { list-style: none; margin: 0; padding: 0; display: grid; border-block-start: var(--border-width) solid var(--divider); }
.tz__list li { padding-block: 12px; border-block-end: var(--border-width) solid var(--divider); font-family: var(--font-heading); font-weight: 600; font-size: clamp(17px, 1.5vw, 20px); color: var(--heading); }
.tz__text { margin-block-start: var(--space-5); color: var(--text-secondary); font-size: 15px; }
.tz__text p { margin: 0; }
.tz__text p + p { margin-block-start: var(--space-3); }
.tz__bridge { position: relative; block-size: 80px; margin-block-start: 30px; }
.tz__bridge span { position: absolute; inset-inline: 16px; inset-block-start: 50%; block-size: 2px; background: linear-gradient(90deg, var(--border), var(--heading-brand)); transform: scaleX(var(--tz, 1)); transform-origin: left; }
.tz__bridge span::after { content: ""; position: absolute; inset-inline-end: -1px; inset-block-start: 50%; inline-size: 10px; block-size: 10px; margin-block-start: -6px; border-inline-end: 2px solid var(--heading-brand); border-block-start: 2px solid var(--heading-brand); transform: rotate(45deg); }
[dir="rtl"] .tz__bridge span { transform-origin: right; background: linear-gradient(-90deg, var(--border), var(--heading-brand)); }
[dir="rtl"] .tz__bridge span::after { transform: rotate(-135deg); inset-inline-end: auto; inset-inline-start: -1px; }
@media (max-width: 899px) {
	.tz { grid-template-columns: minmax(0, 1fr); }
	.tz__bridge { block-size: 56px; margin: var(--space-5) 0; }
	.tz__bridge span { inset-inline: auto; inset-inline-start: 18px; inset-block: 0; inline-size: 2px; block-size: auto; background: linear-gradient(180deg, var(--border), var(--heading-brand)); transform: scaleY(var(--tz, 1)); transform-origin: top; }
	.tz__bridge span::after { inset-block: auto -1px; inset-inline-start: -5px; inset-inline-end: auto; margin: 0; transform: rotate(135deg); }
}

/* Kapanış — proje değil, uzun vadeli bir yapı */
.content-flow .block--yapi { padding-block: clamp(120px, 16vw, 220px); background: var(--surface-warm); }
.yp { display: grid; justify-items: center; text-align: center; gap: var(--space-6); }
.yp__before, .yp__after { max-inline-size: 46ch; font-size: var(--text-body-lg, 18px); color: var(--text-secondary); }
.yp__before p, .yp__after p { margin: 0; }
.yp__main { margin: 0; max-inline-size: 18ch; font-family: var(--font-heading); font-weight: 500; font-size: clamp(38px, 6.2vw, 92px); line-height: 1.06; letter-spacing: -.02em; color: var(--heading); text-wrap: balance; }


/* 2026-10-05 · Hakkımızda açılışı (hk-kapak): telefonda yürüyen kişi kadrajda kalsın;
   Bugün → Yarın sütunları belirmeden önce yana kaymasın */
@media (max-width: 899px) {
	body:has(.content-flow--hakkimizda) .page-head--wide .page-head__media img { object-position: 82% 40%; }
}
.block--ikizaman { overflow-x: clip; }

/* =============================================================================
   İLETİŞİM — 2026-10-05 (kullanıcı brifi)
   Dört unsur ayrışır: hızlı iletişim (açılışta) · adres + konum · ticari
   talep (ortak quote-cta) · geri arama formu. Yeni renk yok; ince çizgi,
   güçlü tipografi, az yuvarlak köşe.
   ============================================================================= */

/* (1) Açılış — hızlı iletişim */
.ct-quick__title { margin: 0 0 var(--space-3); font: 600 12px/1.4 var(--font-body); letter-spacing: .16em; text-transform: uppercase; color: var(--heading-brand); }
.ct-quick__list { list-style: none; margin: 0; padding: 0; border-block-start: var(--border-width) solid var(--border); }
.ct-quick__item { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: "label" "value"; align-items: center; column-gap: var(--space-5); row-gap: var(--space-1); padding-block: var(--space-5); border-block-end: var(--border-width) solid var(--border); }
.ct-quick__label { grid-area: label; display: inline-flex; align-items: center; gap: var(--space-2); font-size: 14px; color: var(--text-secondary); }
.ct-quick__label .icon { color: var(--heading-brand); }
.ct-quick__value { grid-area: value; justify-self: start; font-family: var(--font-heading); font-weight: 600; font-size: clamp(24px, 2.6vw, 36px); line-height: 1.2; color: var(--heading); text-decoration: none; overflow-wrap: anywhere; background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat; transition: background-size .3s var(--motion-ease-out, ease), color .2s; }
.ct-quick__value:hover, .ct-quick__value:focus-visible { color: var(--heading-brand); background-size: 100% 1px; }
.ct-quick__more { margin: var(--space-4) 0 0; }

/* (2) Bizi ziyaret edin — adres solda, konum sağda */
.ct-visit { padding-block: var(--space-10, 128px) var(--space-9, 96px); }
.ct-visit__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-8); align-items: stretch; }
.ct-visit__text { display: flex; flex-direction: column; justify-content: center; }
.ct-visit__label { display: inline-flex; align-items: center; gap: var(--space-2); margin: 0 0 var(--space-4); font: 600 12px/1.4 var(--font-body); letter-spacing: .16em; text-transform: uppercase; color: var(--heading-brand); }
.ct-visit__addr { margin: 0; font-style: normal; font-family: var(--font-heading); font-weight: 500; font-size: clamp(22px, 2.2vw, 30px); line-height: 1.35; color: var(--heading); max-inline-size: 26ch; }
.ct-visit__meta { margin: var(--space-7) 0 0; padding-block-start: var(--space-5); border-block-start: var(--border-width) solid var(--border); display: grid; gap: var(--space-4); }
.ct-visit__meta dt { font-size: 13px; color: var(--text-secondary); }
.ct-visit__meta dd { margin: var(--space-1) 0 0; font-weight: 600; color: var(--heading); }

/* Konum alanı — gömülü harita değil; haritayı yeni sekmede açan bağlantı */
.ct-map { position: relative; display: grid; align-content: end; gap: var(--space-4); min-block-size: 380px; padding: var(--space-7); overflow: hidden; border-radius: 8px; background: var(--band); color: var(--band-text); text-decoration: none; isolation: isolate; }
.ct-map__lines { position: absolute; inset: 0; z-index: -1; inline-size: 100%; block-size: 100%; }
.ct-map__lines path { fill: none; stroke: var(--band-accent); stroke-width: 1; opacity: .22; transition: opacity .4s; }
.ct-map:hover .ct-map__lines path { opacity: .36; }
.ct-map__pin { position: absolute; inset-block-start: 38%; inset-inline-start: 50%; translate: -50% -50%; display: grid; place-items: center; inline-size: 56px; block-size: 56px; border-radius: 50%; background: var(--band-heading); color: var(--primary-700); box-shadow: 0 0 0 10px rgba(124, 196, 155, .18), 0 0 0 22px rgba(124, 196, 155, .08); }
.ct-map__pin .icon { inline-size: 26px; block-size: 26px; }
.ct-map__place { display: grid; gap: var(--space-1); }
.ct-map__district { font-family: var(--font-heading); font-weight: 600; font-size: clamp(36px, 4.4vw, 60px); line-height: 1; color: var(--band-heading); }
.ct-map__city { font-size: 15px; letter-spacing: .14em; text-transform: uppercase; color: var(--band-text); }
.ct-map__cta { display: inline-flex; align-items: center; gap: var(--space-2); justify-self: start; min-block-size: 44px; padding: 0 var(--space-5); border: var(--border-width) solid rgba(255, 255, 255, .45); border-radius: 6px; font-weight: 600; font-size: 15px; color: var(--band-heading); transition: background .2s, border-color .2s; }
.ct-map:hover .ct-map__cta, .ct-map:focus-visible .ct-map__cta { background: rgba(124, 196, 155, .16); border-color: var(--band-accent); }
.ct-map:focus-visible { outline: 3px solid var(--band-accent); outline-offset: 3px; }

/* (4) Sizi arayalım — ana etkileşim alanı */
.ct-call { padding-block: var(--space-10, 128px); background: var(--surface-warm); }
.ct-call__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: var(--space-8); align-items: start; }
.ct-call__icon { display: grid; place-items: center; inline-size: 52px; block-size: 52px; margin-block-end: var(--space-5); border: var(--border-width) solid var(--surface-warm-line, var(--border)); border-radius: 50%; color: var(--heading-brand); }
.ct-call__title { margin: 0 0 var(--space-3); }
.ct-call__text { margin: 0; color: var(--text-secondary); max-inline-size: 30ch; }
.ct-call__panel { padding: var(--space-7); border: var(--border-width) solid var(--border); border-radius: 8px; background: var(--surface); }
.ct-call__panel .notice { margin-block-end: var(--space-5); }
.ct-form__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--space-5); }
.ct-form .textarea { min-block-size: 0; block-size: var(--input-height); }
.ct-form__consent { margin-block-start: var(--space-2); }
.ct-form__submit { margin-block-start: var(--space-5); }

@media (max-width: 899px) {
	.ct-visit { padding-block: var(--space-8) var(--space-7); }
	.ct-visit__grid, .ct-call__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
	.ct-map { min-block-size: 240px; padding: var(--space-5); }
	.ct-map__pin { inset-block-start: 30%; inset-inline-start: 74%; inline-size: 48px; block-size: 48px; }
	.ct-call { padding-block: var(--space-8); }
	.ct-call__panel { padding: var(--space-5); }
	.ct-call__icon { display: none; }
}
@media (max-width: 599px) {
	.ct-form__grid { grid-template-columns: minmax(0, 1fr); }
	.ct-form__submit .btn { inline-size: 100%; justify-content: center; }
	.ct-quick__value { font-size: 22px; }
}
@media (prefers-reduced-motion: reduce) { .ct-quick__value, .ct-map__lines path { transition: none; } }

/* Hakkımızda · merkez bölümü arka plan görseli (2026-10-05, kullanıcı) —
   görsel yazıyla yarışmaz: düşük opaklık, kenarlara doğru söner */
.block--merkez-bg { position: relative; overflow: hidden; isolation: isolate; }
.mk__bg { position: absolute; inset: 0; z-index: -1; opacity: .26; -webkit-mask-image: radial-gradient(ellipse 75% 70% at 50% 50%, rgba(0, 0, 0, .35) 0%, #000 80%); mask-image: radial-gradient(ellipse 75% 70% at 50% 50%, rgba(0, 0, 0, .35) 0%, #000 80%); }
.mk__bg picture, .mk__bg img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
:root[data-theme="dark"] .mk__bg { opacity: .22; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .mk__bg { opacity: .22; } }

/* 2026-10-06 · kullanıcı: açılıştaki bilgi satırı iki satıra kayıyordu.
   Geniş ekranda tek satır (harf aralığı ve boşluk daraltıldı); sığmayan
   genişlikte noktasız, düzenli kayar — satır başında yalnız nokta kalmaz. */
.page-head__meta { flex-wrap: nowrap; column-gap: 14px; }
.page-head__meta li { letter-spacing: .08em; white-space: nowrap; }
.page-head__meta li + li::after { inset-inline-start: -9px; }
@media (max-width: 1199px) {
	.page-head__meta { flex-wrap: wrap; column-gap: 18px; row-gap: 8px; }
	.page-head__meta li + li::after { content: none; }
}

/* 2026-10-06 · ambalaj kartları dörde indi (çuval · kraft · big bag · dökme) */
.content-flow--uluslararasi-ticaret .ch-cards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1023px) { .content-flow--uluslararasi-ticaret .ch-cards--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* =============================================================================
   TEKLİF AL — 2026-10-06 (kullanıcı brifi)
   Ticari giriş + gerçek sevkiyat karesi · süreç akışı · tek görünen form
   (seçim şeridi) · yanda hafif hazırlık listesi · ortak kapanış kartı.
   Yeni renk yok; ince çizgi, sade yüzey, az yuvarlak köşe.
   ============================================================================= */

/* Açılış */
.rq-lead { display: grid; gap: var(--space-4); max-inline-size: 34rem; }
.rq-lead p { margin: 0; }
.rq-lead__main { font-family: var(--font-heading); font-weight: 500; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.25; color: var(--heading); }
.rq-lead__sub { font-size: var(--text-body-lg, 18px); line-height: 1.6; color: var(--text-secondary); }
.rq-lead__cta { padding-block-start: var(--space-2); }

/* Süreç akışı — düğümler ince bir hatla bağlı */
.rq-process { padding-block: var(--space-9, 96px) var(--space-8); }
.rq-process__title { margin: 0 0 var(--space-6); font: 600 12px/1.4 var(--font-body); letter-spacing: .16em; text-transform: uppercase; color: var(--heading-brand); }
.rq-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-5); position: relative; }
.rq-steps::before { content: ""; position: absolute; inset-block-start: 22px; inset-inline: 22px calc(25% - var(--space-5) * .75 - 22px); block-size: 1px; background: var(--heading-brand); opacity: .45; }
.rq-step { position: relative; display: grid; gap: var(--space-3); align-content: start; }
.rq-step__node { position: relative; display: grid; place-items: center; inline-size: 44px; block-size: 44px; border-radius: 50%; border: 1px solid var(--heading-brand); background: var(--surface); font-family: var(--font-heading); font-weight: 600; font-size: 18px; color: var(--heading-brand); }
.rq-step:first-child .rq-step__node { background: var(--primary-700); border-color: var(--primary-700); color: #fff; }
.rq-step__text { font-family: var(--font-heading); font-weight: 500; font-size: clamp(18px, 1.6vw, 21px); line-height: 1.35; color: var(--heading); max-inline-size: 18ch; }

/* Seçim */
.rq-choose { padding-block: var(--space-8) var(--space-10, 128px); scroll-margin-block-start: 140px; }
.rq-choose:focus { outline: none; }
.rq-choose__title { margin: 0 0 var(--space-6); }
.rq-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); margin-block-end: var(--space-6); }
.rq-tabs[hidden] { display: none; }
.rq-tab { display: grid; gap: var(--space-1); align-content: start; text-align: start; min-block-size: 44px; padding: var(--space-5) var(--space-6); border: 1px solid var(--border); border-radius: 8px; background: var(--surface); color: inherit; font: inherit; cursor: pointer; transition: border-color .2s, background-color .2s, box-shadow .2s; }
.rq-tab:hover { border-color: var(--heading-brand); }
.rq-tab:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 3px; }
.rq-tab[aria-selected="true"] { border-color: var(--heading-brand); background: var(--action-soft-bg, var(--surface-alt)); box-shadow: inset 0 3px 0 var(--heading-brand); }
.rq-tab__name { font-family: var(--font-heading); font-weight: 600; font-size: clamp(20px, 1.8vw, 24px); color: var(--heading); }
.rq-tab__text { font-size: 15px; line-height: 1.5; color: var(--text-secondary); }

.rq-work { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: var(--space-8); align-items: start; }
.rq-panels { display: grid; gap: var(--space-6); }
.rq-panels > .notice { margin: 0; }
.rq-panel { padding: var(--space-7); border: 1px solid var(--border); border-radius: 8px; background: var(--surface); }
.rq-panel[hidden] { display: none; }
.rq-panel:focus { outline: none; }
.rq-panel__title { margin: 0 0 var(--space-5); font-family: var(--font-heading); font-weight: 600; font-size: 22px; color: var(--heading); }
/* Seçim şeridi görünürken panel başlığı tekrar etmesin (ekran okuyucuda kalır) */
.rq-tabs:not([hidden]) ~ .rq-work .rq-panel__title { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.rq-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--space-5); }
.rq-consent { margin-block-start: var(--space-3); }
#rq-panel-quick .textarea { min-block-size: 96px; }
.rq-submit { margin-block-start: var(--space-5); }

/* Hazırlık listesi — hafif panel, kart değil */
.rq-ready { position: sticky; inset-block-start: 140px; padding: var(--space-5) 0 var(--space-5) var(--space-6); border-inline-start: 2px solid var(--heading-brand); }
.rq-ready__title { margin: 0 0 var(--space-4); font-family: var(--font-heading); font-weight: 600; font-size: 20px; color: var(--heading); }
.rq-ready__list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-3); }
.rq-ready__list li { position: relative; padding-inline-start: 28px; color: var(--text-secondary); }
.rq-ready__list li::first-letter { text-transform: uppercase; }
.rq-ready__list li::before { content: ""; position: absolute; inset-inline-start: 2px; inset-block-start: .35em; inline-size: 12px; block-size: 7px; border-inline-start: 2px solid var(--heading-brand); border-block-end: 2px solid var(--heading-brand); transform: rotate(-45deg); }
[dir="rtl"] .rq-ready__list li::before { transform: rotate(45deg) scaleX(-1); }

@media (max-width: 1023px) {
	.rq-work { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
	.rq-ready { position: static; order: -1; }
}
@media (max-width: 759px) {
	.rq-process { padding-block: var(--space-7) var(--space-5); }
	.rq-steps { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
	.rq-steps::before { inset-block: 22px 22px; inset-inline-start: 21px; inset-inline-end: auto; inline-size: 1px; block-size: auto; }
	.rq-step { grid-template-columns: 44px minmax(0, 1fr); align-items: center; gap: var(--space-4); }
	.rq-step__text { max-inline-size: none; font-size: 18px; }
	.rq-tabs { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
	.rq-tab { padding: var(--space-4) var(--space-5); }
	.rq-panel { padding: var(--space-5); }
	.rq-grid { grid-template-columns: minmax(0, 1fr); }
	.rq-submit .btn, .rq-lead__cta .btn { inline-size: 100%; justify-content: center; }
	.rq-choose { padding-block: var(--space-6) var(--space-8); }
}
.rq-panel fieldset.field { border: 0; padding: 0; margin-inline: 0; min-inline-size: 0; }
.rq-panel fieldset.field > legend { padding: 0; margin-block-end: var(--space-2); }

/* =============================================================================
   TEŞEKKÜRLER — 2026-10-06 (kullanıcı brifi)
   Sade başarı mesajı · Teklif Al'daki süreç düzeniyle 3 adım · tek eylem.
   ============================================================================= */
.ty-hero { padding-block: var(--space-10, 128px) var(--space-8); text-align: center; background: var(--surface-warm); }
.ty-hero__inner { display: grid; justify-items: center; gap: var(--space-5); max-inline-size: 760px; }
.ty-mark { display: block; inline-size: 56px; block-size: 56px; color: var(--heading-brand); }
.ty-mark svg { inline-size: 100%; block-size: 100%; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.ty-mark circle { opacity: .45; }
.ty-title { margin: 0; color: var(--heading); }
.ty-lead { margin: 0; max-inline-size: 52ch; font-size: var(--text-body-lg, 18px); line-height: 1.65; color: var(--text-secondary); text-wrap: pretty; }
.ty-body { max-inline-size: 60ch; color: var(--text-secondary); }

.ty-next { padding-block: var(--space-9, 96px) var(--space-8); }
.rq-steps--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.rq-steps--3::before { inset-inline: 22px calc(33.333% - var(--space-5) * .6667 - 22px); }
.rq-step__body { display: grid; gap: var(--space-2); }
.rq-step__desc { font-size: 15px; line-height: 1.6; color: var(--text-secondary); max-inline-size: 34ch; }

.ty-cta { padding-block: var(--space-8) var(--space-10, 128px); }
.ty-cta__inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--space-7); padding-block-start: var(--space-7); border-block-start: 1px solid var(--heading-brand); }
.ty-cta__title { margin: 0 0 var(--space-3); }
.ty-cta__text p { margin: 0; max-inline-size: 56ch; color: var(--text-secondary); }

@media (max-width: 759px) {
	.ty-hero { padding-block: var(--space-8) var(--space-7); }
	.ty-mark { inline-size: 48px; block-size: 48px; }
	.ty-next { padding-block: var(--space-7) var(--space-6); }
	.rq-steps--3 { grid-template-columns: minmax(0, 1fr); }
	/* Açıklamalı adımlarda hat her adımın düğümünden bir sonrakine çizilir — son düğümün altına taşmaz */
	.rq-steps--3::before { content: none; }
	.rq-steps--3 .rq-step:not(:last-child)::after { content: ""; position: absolute; inset-inline-start: 21px; inset-block: 44px calc(-1 * var(--space-4)); inline-size: 1px; background: var(--heading-brand); opacity: .45; }
	.rq-steps--3 .rq-step { align-items: start; }
	.ty-cta { padding-block: var(--space-6) var(--space-8); }
	.ty-cta__inner { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
	.ty-cta__action .btn { inline-size: 100%; justify-content: center; }
}

/* =============================================================================
   BIOYEM ONLINE SİPARİŞ — 2026-10-06 (kullanıcı)
   Teklif kartının üstünde ince bant; ürün sayfasında ikinci düğme.
   ============================================================================= */
.by-order { padding-block: var(--space-8) var(--space-9, 96px); }   /* 2026-10-06 · alttaki koyu banda yapışmasın */
.by-order__inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--space-6); padding: var(--space-6) var(--space-7); border: 1px solid var(--heading-brand); border-radius: 8px; background: var(--surface); }
.by-order__title { margin: 0 0 var(--space-2); font-family: var(--font-heading); font-weight: 600; font-size: clamp(20px, 2vw, 26px); color: var(--heading); }
.by-order__text p { margin: 0; color: var(--text-secondary); }
.by-actions { display: flex; flex-wrap: wrap; gap: var(--space-3); }
/* 2026-10-15 · ürün föyü indirme bağlantısı — butonların altında, üçüncül */
.by-foy { display: inline-flex; align-items: center; gap: var(--space-2); margin-block-start: var(--space-4); color: var(--link, var(--heading-brand)); font-weight: 600; font-size: 15px; text-decoration: none; }
.by-foy:hover span { text-decoration: underline; text-underline-offset: 3px; }
.by-foy__boyut { color: var(--text-muted, currentColor); font-weight: 400; font-size: 13px; }  /* Faz 10: opacity kaldırıldı — WCAG kontrastı (3.08 → ≥4.5) */
.featured__order { margin: var(--space-5) 0 0; }
@media (max-width: 759px) {
	.by-order { padding-block: var(--space-7) var(--space-8); }
	.by-order__inner { grid-template-columns: minmax(0, 1fr); padding: var(--space-5); gap: var(--space-4); }
	.by-order__action .btn, .by-actions .btn { inline-size: 100%; justify-content: center; }
}

/* İletişim · konum alanında arazi haritası (2026-10-07, kullanıcı).
   İşaretçi görselin tam ortasında (konum kodu merkezde üretildi). Yazı ve
   düğme alt kenarda, haritanın üstünde okunur kalsın diye koyu geçiş. */
.ct-map--foto { background: var(--surface-alt); }
.ct-map__img { position: absolute; inset: 0; z-index: -2; }
.ct-map__img img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; object-position: 50% 50%; transition: transform .6s var(--motion-ease-out, ease); }
.ct-map--foto:hover .ct-map__img img { transform: scale(1.03); }
.ct-map--foto::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(to top, rgba(4, 30, 17, .86) 0%, rgba(4, 30, 17, .55) 30%, rgba(4, 30, 17, 0) 58%); pointer-events: none; }
/* İşaretçi: yuvarlak gövde + aşağı bakan uç; UCU konum noktasında (gövde 44 + uç 10 px) */
.ct-map--foto .ct-map__pin { inset-block-start: 50%; inset-inline-start: 50%; translate: -50% calc(-100% - 12px); inline-size: 44px; block-size: 44px; border-radius: 50%; background: var(--primary-700); color: #fff; box-shadow: 0 6px 16px rgba(0, 0, 0, .28), 0 0 0 3px rgba(255, 255, 255, .9); }
.ct-map--foto .ct-map__pin::after { content: ""; position: absolute; inset-block-start: 100%; inset-inline-start: 50%; translate: -50% 1px; border: 8px solid transparent; border-block-start: 11px solid var(--primary-700); border-block-end: 0; }
.ct-map--foto .ct-map__pin .icon { inline-size: 20px; block-size: 20px; }
.ct-map--foto .ct-map__district { font-size: clamp(26px, 2.6vw, 34px); }
.ct-map--foto { min-block-size: 420px; }
.ct-map__credit { position: absolute; inset-block-start: 8px; inset-inline-end: 8px; padding: 2px 6px; border-radius: 3px; background: rgba(255, 255, 255, .85); color: #333; font-size: 11px; line-height: 1.4; }
:root[data-theme="dark"] .ct-map__img img { filter: brightness(.82) contrast(1.05); }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .ct-map__img img { filter: brightness(.82) contrast(1.05); } }
@media (max-width: 899px) { .ct-map--foto { min-block-size: 300px; } .ct-map--foto .ct-map__pin { inset-block-start: 50%; inset-inline-start: 50%; inline-size: 38px; block-size: 38px; } .ct-map--foto .ct-map__district { font-size: 24px; } }
@media (prefers-reduced-motion: reduce) { .ct-map--foto .ct-map__img img { transition: none; } }

.product-detail__note { margin-block-start: var(--space-3); }   /* 2026-10-07 · ticari ürün tablosu altı notu */

/* =============================================================================
   REFERANSLAR — logo duvarı (2026-10-08 · references.php)
   Logolar tek renk tonunda, eşit kutularda; üzerine gelince kendi rengine döner.
   Logo yoksa kesikli çerçeveli yer tutucu.
   ============================================================================= */
.ref__intro { display: grid; gap: var(--space-4); max-inline-size: 760px; margin-block-end: var(--space-8); }
.ref__intro-text { display: grid; gap: var(--space-4); align-content: center; }
.ref__intro--media { max-inline-size: none; align-items: center; }
@media (min-width: 900px) { .ref__intro--media { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-9, 96px); } }
.ref__media { overflow: hidden; border-radius: var(--radius-lg); }
.ref__media img { display: block; inline-size: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.ref__title { margin: 0; }
.ref__lead p { margin: 0; color: var(--text-secondary); }
.ref__grid {
	list-style: none; margin: 0; padding: 0;
	display: grid; gap: var(--space-4);
	/* 2026-10-08 · kullanıcı: kutular yatay, geniş ekranda satırda 6 firma */
	grid-template-columns: repeat(6, minmax(0, 1fr));
}
@media (max-width: 1199px) { .ref__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 899px)  { .ref__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.ref__item {
	display: grid; gap: var(--space-2); align-content: start;
	padding: var(--space-3);
	border: var(--border-width) solid var(--divider);
	border-radius: var(--radius-lg);
	background: var(--surface);
	text-align: center;
}
.ref__logo {
	display: grid; place-items: center; position: relative;
	aspect-ratio: 3 / 2;
	border-radius: var(--radius-md);
	/* 2026-10-08 · gerçek logolar beyaz zeminli — iki temada da beyaz plaka */
	background: #fff;
	border: 1px solid var(--border);
	overflow: hidden;
}
.ref__logo img {
	/* görsel her oranda tam sığar, kesilmez */
	position: absolute; inset: 7% 6%;
	inline-size: 88%; block-size: 86%; object-fit: contain;
	/* 2026-10-08 · kullanıcı onayı: logolar kendi renginde (gri + üzerine gelince renk kaldırıldı) */
}
/* 2026-10-08 · kullanıcı: Sertifikalar sayfasındaki belge efekti (.cs-cert__paper) —
   kâğıt gölgesi; üzerine gelince hafif yükselir, çok az eğilir, gölge derinleşir. */
.ref__item {
	box-shadow: 0 1px 2px rgba(0, 0, 0, .06), 0 18px 34px -22px rgba(4, 51, 27, .45);
	transition: transform .35s var(--motion-ease-out, ease), box-shadow .35s;
}
.ref__item:hover, .ref__item:focus-within {
	transform: translateY(-4px) rotate(-.6deg);
	box-shadow: 0 2px 4px rgba(0, 0, 0, .06), 0 26px 44px -22px rgba(4, 51, 27, .55);
}
[dir="rtl"] .ref__item:hover { transform: translateY(-4px) rotate(.6deg); }
.ref__ph {
	display: grid; place-items: center;
	inline-size: 72%; block-size: 62%;
	border: 1.5px dashed var(--border);
	border-radius: var(--radius-md);
	color: var(--text-muted);
	font-size: 13px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
}
.ref__name { margin: var(--space-1) 0 0; font-family: var(--font-heading); font-weight: 600; font-size: 16px; line-height: 1.35; color: var(--heading); }
.ref__meta { margin: 0; color: var(--text-secondary); }
@media (max-width: 599px) {
	.ref__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
	.ref__item { padding: var(--space-3); }
}
@media (prefers-reduced-motion: reduce) { .ref__item { transition: none; } .ref__item:hover { transform: none; } }

/* =============================================================================
   BIOYEM · AYNI GRUBUN DİĞER YEMLERİ (2026-10-08 · bioyem-product.php)
   Dönemler sırasıyla kartlar; bulunulan dönem çerçeveli ve işaretli.
   Dar ekranda yatay kayar (tek satır).
   ============================================================================= */
.by-siblings { margin-block-start: var(--space-8); padding-block-start: var(--space-7); border-block-start: var(--border-width) solid var(--divider); }
/* kullanıcı (2026-10-08): altında çok boşluk kalıyordu — bölümün 96 px alt payı +
   sonraki bandın üst payı. Alan varken bölümün alt payı küçülür. */
.section:has(> .container > .by-siblings) { padding-block-end: var(--space-5); }
.by-siblings__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--space-3); margin-block-end: var(--space-5); }
.by-siblings__title { margin: 0; }
.by-siblings__all { display: inline-flex; align-items: center; gap: var(--space-1); color: var(--link); font-weight: 600; text-decoration: none; }
.by-siblings__all:hover { text-decoration: underline; }
/* 2026-10-12 (kullanıcı): sabit genişlik — ekrana 6 kart (tablet 4); az üründe
   kartlar büyüyüp yayılmaz. Taşarsa yatay kayar; oklar JS ile açılır. */
.by-siblings__strip { --by-n: 6; --by-gap: var(--space-3); position: relative; }
.by-siblings__list {
	list-style: none; margin: 0; padding: 4px 0 var(--space-2);   /* üst 4 px: üzerine gelince kalkan kart kırpılmasın */
	display: grid; gap: var(--by-gap);
	grid-auto-flow: column; grid-template-columns: none;
	grid-auto-columns: calc((100% - (var(--by-n) - 1) * var(--by-gap)) / var(--by-n));
	overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
}
.by-siblings__list::-webkit-scrollbar { display: none; }
.by-siblings__item { scroll-snap-align: start; }
.by-siblings__strip.is-holding .by-siblings__list { scroll-snap-type: none; }   /* basılı tutarken akıcı */
.by-siblings__arrow {
	position: absolute; inset-block-start: calc(4px + 36%); z-index: 2; translate: 0 -50%;
	display: grid; place-items: center; inline-size: 44px; block-size: 44px; padding: 0;
	border-radius: 50%; border: var(--border-width) solid var(--border);
	background: var(--surface); color: var(--heading-brand); cursor: pointer;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .14);
	transition: opacity .2s ease, border-color .2s ease;
	touch-action: none; -webkit-user-select: none; user-select: none;
}
.by-siblings__arrow[hidden] { display: none; }
.by-siblings__arrow--left { left: -22px; }    /* fiziksel: sol ok solda, RTL'de de */
.by-siblings__arrow--right { right: -22px; }
.by-siblings__arrow:hover { border-color: var(--action-primary-bg); }
.by-siblings__arrow:focus-visible { outline: 2px solid var(--link); outline-offset: 2px; }
.by-siblings__arrow[aria-disabled="true"] { opacity: .35; cursor: default; }
.by-siblings__arrow .icon { inline-size: 22px; block-size: 22px; }
.by-siblings__link {
	display: grid; justify-items: center; align-content: start; gap: var(--space-2); block-size: 100%;
	padding: var(--space-3); border: var(--border-width) solid var(--divider); border-radius: var(--radius-lg);
	background: var(--surface); color: var(--heading); text-align: center; text-decoration: none;
	transition: border-color .2s ease, transform .2s ease;
}
.by-siblings__link:hover, .by-siblings__link:focus-visible { border-color: var(--action-primary-bg); transform: translateY(-2px); }
.by-siblings__media { display: grid; place-items: center; inline-size: 100%; aspect-ratio: 1; border-radius: var(--radius-md); background: var(--surface-alt); overflow: hidden; }
.by-siblings__media img { inline-size: 82%; block-size: 82%; object-fit: contain; }
.by-siblings__name { font-weight: 600; font-size: 15px; line-height: 1.35; }
.by-siblings__here { color: var(--heading-brand); font-weight: 600; }
.by-siblings__item.is-current .by-siblings__link { border: 2px solid var(--action-primary-bg); background: var(--surface-alt); }
@media (max-width: 1023px) { .by-siblings__strip { --by-n: 4; } }
@media (max-width: 767px) {
	.by-siblings__list { grid-auto-columns: 148px; }
	.by-siblings__arrow--left { left: -8px; }
	.by-siblings__arrow--right { right: -8px; }
}
@media (prefers-reduced-motion: reduce) { .by-siblings__link { transition: none; } .by-siblings__link:hover { transform: none; } }

/* =============================================================================
   KATALOGLAR · OKUYUCU (2026-10-08, kullanıcı) — catalogs.php · catalog.php
   Kitap sakin bir yüzeyin ortasında; araç çubuğu altında yüzen hap biçimi.
   Kitap her dilde soldan sağa döner (sahne dir="ltr").
   ============================================================================= */

/* ── Kataloglar sayfası ── */
.cat-list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-8); }

/* Vitrin kartı (2026-10-09, kullanıcı: "daha estetik") — sahne + gövde */
.cat-feature {
	display: grid; grid-template-columns: minmax(300px, 5fr) 7fr;
	border: var(--border-width) solid var(--card-border); border-radius: var(--radius-lg);
	background: var(--surface-raised, var(--surface)); box-shadow: var(--elev-1);
}
.cat-feature__stage {
	position: relative; display: grid; place-items: center;
	padding: var(--space-9) var(--space-8);
	border-start-start-radius: var(--radius-lg); border-end-start-radius: var(--radius-lg);
	background:
		radial-gradient(70% 60% at 50% 42%, color-mix(in srgb, var(--surface) 70%, transparent), transparent 72%),
		var(--surface-warm);
	border-inline-end: var(--border-width) solid var(--surface-warm-line, var(--divider));
	overflow: hidden;
}
/* zeminde ince yaprak dokusu yerine tek yumuşak gölge halkası — sakin, şablon hissi vermez */
.cat-feature__stage::after {
	content: ''; position: absolute; inset-inline: 18%; bottom: calc(var(--space-9) - 14px); block-size: 26px;
	border-radius: 50%; background: radial-gradient(closest-side, rgba(4, 51, 27, .28), transparent); filter: blur(4px);
}
.cat-feature__book {
	position: relative; z-index: 1; display: block; inline-size: min(100%, 300px); aspect-ratio: 210 / 297;
	transition: transform .5s var(--motion-ease-out, ease);
}
/* arkada iki sayfa katmanı — kitap/katalog hissi */
.cat-feature__book::before, .cat-feature__book::after {
	content: ''; position: absolute; inset: 0; border-radius: 3px; background: var(--white);
	box-shadow: 0 1px 2px rgba(0, 0, 0, .12); z-index: -1;
}
.cat-feature__book::before { transform: translate(8px, 8px); background: #f7f6f1; }
.cat-feature__book::after { transform: translate(16px, 16px); background: #ecebe3; }
[dir="rtl"] .cat-feature__book::before { transform: translate(-8px, 8px); }
[dir="rtl"] .cat-feature__book::after { transform: translate(-16px, 16px); }
.cat-feature__book img, .cat-feature__book .cat-card__canvas {
	display: block; inline-size: 100%; block-size: 100%; object-fit: cover; border-radius: 3px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, .1), 0 24px 40px -22px rgba(4, 51, 27, .55);
}
.cat-feature__book:hover, .cat-feature__stage:focus-visible .cat-feature__book { transform: translateY(-6px) rotate(-1.2deg); }   /* yalnız kapağın üzerindeyken (kullanıcı, 2026-10-09) */
.cat-card__canvas { opacity: 0; transition: opacity .4s ease; background: var(--white); }
.cat-card__canvas.is-ready { opacity: 1; }

.cat-feature__body { display: flex; flex-direction: column; justify-content: center; gap: var(--space-4); padding: var(--space-8) var(--space-8) var(--space-8) var(--space-8); min-inline-size: 0; }
.cat-feature__eyebrow { display: inline-flex; align-items: center; gap: var(--space-2); margin: 0; color: var(--heading-brand); }
.cat-feature__eyebrow .icon { inline-size: 18px; block-size: 18px; }
.cat-feature__title { margin: 0; font-family: var(--font-heading); font-size: var(--text-h1); line-height: var(--lh-h1); letter-spacing: var(--ls-h1, 0); font-weight: 600; }
.cat-feature__title a { color: var(--heading); text-decoration: none; }
.cat-feature__title a:hover { color: var(--link); }
.cat-feature__summary { margin: 0; color: var(--text-secondary); max-inline-size: 52ch; }

.cat-feature__langs { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3); padding-block-start: var(--space-4); border-block-start: var(--border-width) solid var(--divider); }
.cat-feature__langs-label { color: var(--text-muted); }
.cat-langs { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--space-2); }
.cat-langs__item {
	display: inline-flex; align-items: center; gap: 6px; min-block-size: 36px; padding: 4px 12px;
	border: var(--border-width) solid var(--divider); border-radius: var(--radius-full);
	color: var(--text-secondary); font-size: var(--text-body-sm); font-weight: 600; text-decoration: none;
	transition: border-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease), background var(--motion-fast) var(--motion-ease);
}
.cat-langs__item:hover { border-color: var(--action-secondary-border); color: var(--link); }
.cat-langs__item.is-active { border-color: var(--action-primary-bg); background: var(--action-soft-bg); color: var(--heading-brand); }
.cat-langs__item .flag { inline-size: 18px; block-size: 13px; }

.cat-feature__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3); padding-block-start: var(--space-2); }
.cat-feature__actions .btn, .cat-head__actions .btn { display: inline-flex; align-items: center; gap: var(--space-2); }
.cat-card__share { position: relative; }
.cat-card__share .cat-pop { inset-inline-start: 0; bottom: auto; top: calc(100% + var(--space-2)); }   /* aşağı açılır — başlığı örtmez */

@media (max-width: 899px) {
	.cat-feature { grid-template-columns: 1fr; }
	.cat-feature__stage { padding: var(--space-8) var(--space-6); border-inline-end: 0; border-block-end: var(--border-width) solid var(--surface-warm-line, var(--divider)); border-end-start-radius: 0; border-start-end-radius: var(--radius-lg); }
	.cat-feature__book { inline-size: min(62%, 260px); }
	.cat-feature__body { padding: var(--space-6) var(--space-5); }
	.cat-feature__title { font-size: var(--text-h2); line-height: var(--lh-h2); }
	.cat-langs__item { min-block-size: var(--touch-min, 44px); padding-inline: 14px; }   /* dokunma alanı (proje kuralı 44 px) */
}
@media (max-width: 519px) {
	.cat-feature__actions .btn, .cat-feature__actions .cat-card__share { flex: 1 1 100%; }
	.cat-feature__actions .btn { justify-content: center; }
	.cat-card__share .btn { inline-size: 100%; }
}
@media (prefers-reduced-motion: reduce) { .cat-feature__book { transition: none; } .cat-feature__book:hover { transform: none; } }
.cat-empty { display: grid; justify-items: center; gap: var(--space-3); text-align: center; padding-block: var(--space-8); }
.cat-empty__icon { inline-size: 48px; block-size: 48px; color: var(--heading-brand); }
.cat-empty p { margin: 0; }

/* ── Okuma alanı: başlık bandı ── */
.cat-head { padding-block: var(--space-5); background: var(--surface-warm); border-block-end: var(--border-width) solid var(--surface-warm-line); }
.cat-head__inner { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--space-4); }
.cat-head__eyebrow { margin: 0 0 var(--space-2); }
.cat-head__eyebrow a { color: var(--link); text-decoration: none; }
.cat-head__title { margin: 0; }
.cat-head__summary { margin: var(--space-2) 0 0; color: var(--text-secondary); max-inline-size: 70ch; }
.cat-head__size { color: var(--text-muted); font-weight: 400; }

/* ── Sahne ── */
.cat-reader { position: relative; background: var(--surface-alt); padding-block-end: var(--space-5); }
.cat-reader__stage {
	position: relative; display: grid; place-items: center;
	block-size: clamp(420px, calc(100svh - var(--header-top, 110px) - 150px), 1040px);
	padding: var(--space-4);
	overflow: hidden;
}
.cat-reader.is-full { padding: 0 0 var(--space-4); display: flex; flex-direction: column; }
.cat-reader.is-full .cat-reader__stage { block-size: auto; flex: 1; }
/* tam ekran: tarayıcı desteklemiyorsa okuyucu sayfayı kaplar (iPhone Safari) */
.cat-reader.is-full--sahte { position: fixed; inset: 0; z-index: 1000; background: var(--surface-alt); }
.cat-full-lock, .cat-full-lock body { overflow: hidden; }
/* sağ üstte çıkış düğmesi — yalnız tam ekranda (2026-10-09, kullanıcı) */
.cat-reader__exit {
	display: none; position: absolute; inset-block-start: var(--space-3); inset-inline-end: var(--space-3); z-index: 8;
	align-items: center; gap: var(--space-2); min-block-size: var(--touch-min, 44px); padding: 0 var(--space-4);
	border: var(--border-width) solid var(--divider); border-radius: var(--radius-full);
	background: var(--surface); color: var(--text); box-shadow: var(--elev-2);
	font: inherit; font-size: var(--text-body-sm); font-weight: 600; cursor: pointer;
}
.cat-reader__exit:hover { color: var(--link); border-color: var(--action-secondary-border); }
.cat-reader.is-full .cat-reader__exit { display: inline-flex; }
.cat-head__actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.cat-reader__book { position: relative; transition: opacity .4s ease, transform .6s var(--motion-ease-out, ease); }
.cat-reader:not(.is-ready) .cat-reader__book { opacity: 0; }
.cat-book { filter: drop-shadow(0 22px 30px rgba(20, 30, 20, .28)); }
.cat-page { background: #fff; overflow: hidden; }
.cat-page img { display: block; inline-size: 100%; block-size: 100%; object-fit: contain; user-select: none; -webkit-user-drag: none; }
/* 2026-10-09 · kullanıcı: ilk açılışta "Sayfa 1" + kırık görsel simgesi görünüyordu — sayfa henüz çizilmeden
   <img> kaynaksız duruyor, tarayıcı alt metni ve kırık simgeyi basıyordu. Çizilene kadar görsel gizli,
   yerinde hafif bir yükleniyor parıltısı. */
.cat-page img:not([src]), .cat-zoom img:not([src]) { visibility: hidden; }
.cat-page:has(img:not([src])) { background: linear-gradient(100deg, #fff 30%, #f2f1ec 50%, #fff 70%) 0 0 / 300% 100%; animation: cat-yukleniyor 1.4s linear infinite; }
@keyframes cat-yukleniyor { from { background-position: 100% 0; } to { background-position: 0 0; } }
@media (prefers-reduced-motion: reduce) { .cat-page:has(img:not([src])) { animation: none; background: #fff; } }
/* sırt gölgesi — iki sayfanın birleştiği yerde hafif kıvrım */
.cat-page.--left::after, .cat-page.--right::after { content: ''; position: absolute; top: 0; bottom: 0; width: 7%; pointer-events: none; }
.cat-page.--left::after { right: 0; background: linear-gradient(to left, rgba(0, 0, 0, .14), transparent); }
.cat-page.--right::after { left: 0; background: linear-gradient(to right, rgba(0, 0, 0, .12), transparent); }

.cat-reader__loading { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: var(--space-3); color: var(--text-secondary); font-size: var(--text-body-sm); }
.cat-reader__loading[hidden] { display: none; }
.cat-reader__spinner { inline-size: 34px; block-size: 34px; border-radius: 50%; border: 3px solid var(--divider); border-block-start-color: var(--heading-brand); animation: cat-spin 1s linear infinite; }
@keyframes cat-spin { to { transform: rotate(360deg); } }
.cat-reader__progress { color: var(--text-muted); }
.cat-reader__error { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; gap: var(--space-2); margin: 0; }
.cat-reader__error[hidden] { display: none; }

.cat-reader__arrow {
	position: absolute; top: 50%; translate: 0 -50%; z-index: 3;
	display: grid; place-items: center; inline-size: 48px; block-size: 48px; border-radius: 50%;
	border: var(--border-width) solid var(--divider); background: var(--surface); color: var(--heading);
	box-shadow: var(--elev-1); cursor: pointer; transition: background var(--motion-fast), opacity var(--motion-fast);
}
.cat-reader__arrow:hover { color: var(--link); }
.cat-reader__arrow:disabled { opacity: 0; pointer-events: none; }
.cat-reader__arrow--prev { left: var(--space-4); }
.cat-reader__arrow--next { right: var(--space-4); }
/* yan panel açıkken (geniş ekran) kitap, yakın görünüm ve sol ok panelin sağına */
.cat-reader { --cat-panel-w: 340px; }
.cat-reader.has-panel-side .cat-reader__stage { padding-left: calc(var(--cat-panel-w) + 2 * var(--space-4)); }
.cat-reader.has-panel-side .cat-reader__zoom { left: calc(var(--cat-panel-w) + 2 * var(--space-4)); }
.cat-reader.has-panel-side .cat-reader__arrow--prev { left: calc(var(--cat-panel-w) + 2 * var(--space-4)); }
.cat-reader:not(.is-ready) .cat-reader__arrow, .cat-reader.is-zoomed .cat-reader__arrow { display: none; }
@media (max-width: 719px) { .cat-reader__arrow { display: none; } }

/* ── Yakınlaştırma katmanı ── */
.cat-reader__zoom { position: absolute; inset: 0; z-index: 2; overflow: auto; cursor: grab; overscroll-behavior: contain; }
.cat-reader__zoom[hidden] { display: none; }
.cat-reader__zoom.is-dragging { cursor: grabbing; }
.cat-zoom__row { display: flex; inline-size: max-content; margin: var(--space-5) auto; padding-inline: var(--space-5); }
.cat-zoom__row img { display: block; background: #fff; box-shadow: 0 10px 30px -12px rgba(0, 0, 0, .35); user-select: none; -webkit-user-drag: none; }

/* ── Araç çubuğu ── */
.cat-bar {
	position: relative; z-index: 4;
	display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--space-1);
	inline-size: fit-content; max-inline-size: calc(100% - 2 * var(--space-4)); margin: 0 auto;
	padding: var(--space-1) var(--space-2);
	background: var(--surface); border: var(--border-width) solid var(--divider); border-radius: var(--radius-full);
	box-shadow: var(--elev-2);
}
.cat-bar__group { display: flex; align-items: center; }
.cat-bar__group + .cat-bar__group { padding-inline-start: var(--space-1); border-inline-start: 1px solid var(--divider); }
.cat-bar .icon-btn { inline-size: 40px; block-size: 40px; border-radius: var(--radius-full); }
.cat-bar .icon-btn[hidden] { display: none; }
.cat-bar .icon-btn:hover:not(:disabled) { background: var(--surface-alt); color: var(--link); }
.cat-bar .icon-btn:disabled { opacity: .35; cursor: default; }
.cat-bar .icon-btn[aria-expanded="true"] { background: var(--surface-alt); color: var(--link); }
.cat-bar__page { display: flex; align-items: center; gap: var(--space-1); padding-inline: var(--space-1); font-size: var(--text-body-sm); color: var(--text-secondary); }
.cat-bar__input { inline-size: 6ch; block-size: 32px; padding: 0 var(--space-1); text-align: center; font: inherit; color: var(--heading); background: var(--surface-alt); border: var(--border-width) solid var(--divider); border-radius: var(--radius-sm); }
.cat-bar__input:focus { outline: var(--focus-width) solid var(--focus-ring); outline-offset: 1px; }
.cat-bar__full-off { display: none; }
.cat-reader.is-full .cat-bar__full-on { display: none; }
.cat-reader.is-full .cat-bar__full-off { display: block; }
@media (pointer: coarse) { .cat-bar .icon-btn { inline-size: 44px; block-size: 44px; } }
@media (max-width: 599px) {
	.cat-bar { border-radius: var(--radius-lg); }
	.cat-bar__group + .cat-bar__group { border: 0; padding: 0; }
	.cat-bar .icon-btn { inline-size: 44px; block-size: 44px; }
}

/* açılır menüler (paylaş · diğer) */
.cat-more { position: relative; }
.cat-pop {
	position: absolute; bottom: calc(100% + var(--space-2)); z-index: 6;
	list-style: none; margin: 0; padding: var(--space-2); min-inline-size: 220px;
	background: var(--surface); border: var(--border-width) solid var(--divider); border-radius: var(--radius-md); box-shadow: var(--elev-3);
}
.cat-pop[hidden] { display: none; }
.cat-share { inset-inline-end: var(--space-6); }
.cat-more__list { inset-inline-end: 0; }
.cat-pop button, .cat-pop a {
	display: flex; align-items: center; gap: var(--space-3); inline-size: 100%;
	padding: var(--space-2) var(--space-3); border: 0; border-radius: var(--radius-sm); background: none;
	color: var(--text); font: inherit; font-size: var(--text-body-sm); text-align: start; text-decoration: none; cursor: pointer;
}
.cat-pop button:hover, .cat-pop a:hover { background: var(--surface-alt); color: var(--link); }
.cat-pop [data-cat-sound].is-on { color: var(--link); }

/* ── Yan panel ── */
.cat-panel {
	position: absolute; top: var(--space-4); bottom: var(--space-4); left: var(--space-4); z-index: 5;
	display: flex; flex-direction: column; inline-size: min(var(--cat-panel-w), calc(100% - 2 * var(--space-4)));
	background: var(--surface); border: var(--border-width) solid var(--divider); border-radius: var(--radius-lg); box-shadow: var(--elev-3);
}
[dir="rtl"] .cat-panel { direction: rtl; }
.cat-panel[hidden] { display: none; }
.cat-panel__head { display: flex; align-items: center; justify-content: space-between; padding: var(--space-2) var(--space-2) var(--space-2) var(--space-4); border-block-end: var(--border-width) solid var(--divider); }
.cat-panel__title { margin: 0; }
.cat-panel__body { flex: 1; overflow: auto; padding: var(--space-3); overscroll-behavior: contain; }
.cat-panel__body[hidden] { display: none; }
.cat-toc { list-style: none; margin: 0; padding: 0; }
.cat-toc .cat-toc { padding-inline-start: var(--space-4); }
.cat-toc__link { display: flex; justify-content: space-between; gap: var(--space-3); inline-size: 100%; padding: var(--space-2); border: 0; border-radius: var(--radius-sm); background: none; color: var(--text); font: inherit; font-size: var(--text-body-sm); text-align: start; cursor: pointer; }
.cat-toc__link:hover { background: var(--surface-alt); color: var(--link); }
.cat-toc > li > .cat-toc__link { font-weight: 600; color: var(--heading); }
.cat-toc__page { color: var(--text-muted); font-variant-numeric: tabular-nums; }
.cat-panel__thumbs { display: grid; grid-template-columns: repeat(2, 1fr); grid-auto-rows: max-content; gap: var(--space-3); align-content: start; }
.cat-panel__thumbs[hidden] { display: none; }
.cat-thumb { position: relative; display: block; padding: 0; border: 2px solid transparent; border-radius: var(--radius-sm); background: var(--surface-alt); cursor: pointer; overflow: hidden; }
.cat-thumb img { display: block; inline-size: 100%; block-size: auto; object-fit: contain; background: #fff; }
.cat-thumb img:not([src]) { visibility: hidden; }
.cat-thumb[aria-current] { border-color: var(--heading-brand); }
.cat-thumb:hover { border-color: var(--link); }
.cat-thumb__n { position: absolute; bottom: 4px; right: 4px; padding: 0 6px; border-radius: var(--radius-sm); background: rgba(0, 0, 0, .6); color: #fff; font-size: 12px; }
.cat-search { display: flex; gap: var(--space-1); margin-block-end: var(--space-2); }
.cat-search__input { flex: 1; min-inline-size: 0; }
.cat-search__status { margin: 0 0 var(--space-2); color: var(--text-muted); }
.cat-search__results { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-1); }
.cat-search__hit { display: grid; gap: 2px; inline-size: 100%; padding: var(--space-2); border: 0; border-radius: var(--radius-sm); background: none; text-align: start; font: inherit; cursor: pointer; color: var(--text); }
.cat-search__hit:hover { background: var(--surface-alt); }
.cat-search__page { font-size: var(--text-caption); font-weight: 600; color: var(--link); }
.cat-search__snip { font-size: var(--text-body-sm); color: var(--text-secondary); }
.cat-search__snip mark { background: var(--accent-200); color: var(--ink-900); padding: 0 1px; border-radius: 2px; }
.cat-reader__noscript { text-align: center; padding: var(--space-6); }

.cat-others { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--space-3); }
.cat-others__link { display: inline-flex; align-items: center; gap: var(--space-2); padding: var(--space-3) var(--space-4); border: var(--border-width) solid var(--card-border); border-radius: var(--radius-md); background: var(--surface); color: var(--heading); text-decoration: none; }
.cat-others__link:hover { border-color: var(--link); color: var(--link); }

@media (prefers-reduced-motion: reduce) { .cat-card__cover, .cat-card__canvas, .cat-reader__book { transition: none; } .cat-reader__spinner { animation-duration: 3s; } }
