/* =====================================================================
   ALTIN ORAN (φ = 1,618) ÖLÇÜ SİSTEMİ + AURA
   Bütün yazı boyutları, boşluklar, sütun oranları ve köşe yarıçapları
   φ ve √φ (1,272) adımlarından türetilir. stil.css ve hareket.css'ten SONRA yüklenir.
   Ölçek (rem): 0,382 · 0,618 · 1 · 1,272 · 1,618 · 2,058 · 2,618 · 3,330 · 4,236 · 5,388 · 6,854
   ===================================================================== */
:root {
  --phi: 1.618;
  --o-3: .382rem; --o-2: .618rem; --o-1: 1rem; --o-1b: 1.272rem; --o1: 1.618rem; --o1b: 2.058rem;
  --o2: 2.618rem; --o2b: 3.33rem; --o3: 4.236rem; --o3b: 5.388rem; --o4: 6.854rem;
  --radius: 16px;                 /* 10 × φ */
  --radius-k: 10px;               /* 16 ÷ φ */
  --max: 1236px;                  /* 764 × φ */
  --aura-1: rgba(111,168,216,.20);
  --aura-2: rgba(59,106,145,.14);
  --aura-3: rgba(230,167,0,.07);
}

/* ---------- Yazı ölçeği ---------- */
body { line-height: 1.618; }
h1 { font-size: clamp(var(--o2), 5.2vw, var(--o3)); line-height: 1.09; }       /* 41,9 → 67,8 px */
h2 { font-size: clamp(var(--o1b), 3.4vw, var(--o2)); line-height: 1.17; }      /* 32,9 → 41,9 px */
h3 { font-size: var(--o-1b); line-height: 1.272; }                              /* 20,4 px */
p { margin: 0 0 var(--o-1); }
.ust-etiket { font-size: .786rem; margin-bottom: var(--o-1); }                  /* 1 ÷ √φ */
.ust-etiket::before { width: var(--o1b); }
.sayfa-bas h1 { font-size: clamp(var(--o1b), 4.2vw, var(--o2b)); }            /* 32,9 → 53,3 px */
.sayfa-bas p, .hero p.giris, .bolum-bas p { font-size: var(--o-1b); line-height: 1.618; }
.sayfa-bas p { font-size: 1.118rem; }

/* ---------- Ritim: boşluklar ---------- */
.kap { width: min(var(--max), 100% - 2 * var(--o-1)); }
.bolum { padding: clamp(var(--o2b), 8vw, var(--o3b)) 0; }                       /* 53 → 86 px */
.bolum.sik { padding: clamp(var(--o2), 5vw, var(--o2b)) 0; }
.bolum-bas { margin-bottom: var(--o2); max-width: 61.8%; }
.bolum-bas.orta { max-width: 61.8%; }
.izgara { gap: var(--o1); }
.sayfa-bas { padding: var(--o3) 0 var(--o2b); }
.hero .kap { padding: var(--o4) 0 var(--o3b); gap: var(--o3); }

/* ---------- Altın bölüm: sütun oranları 1,618 : 1 ---------- */
.hero .kap { grid-template-columns: 1.618fr 1fr; }
.iki { grid-template-columns: 1.618fr 1fr; gap: var(--o3); }
.iki.teklif-duzen { grid-template-columns: 1.618fr 1fr; }
.hizmet-blok { grid-template-columns: 1.618fr 1fr; gap: var(--o3); padding: var(--o2b) 0; }
.hizmet-blok:nth-child(even) { grid-template-columns: 1fr 1.618fr; }
.ozellik-blok { grid-template-columns: 1fr 1.618fr; }
.ozellik-blok:nth-child(even) { grid-template-columns: 1.618fr 1fr; }
.foto-serit { grid-template-columns: 1.618fr 1fr 1fr; gap: var(--o1); }
.foto.genis { aspect-ratio: 1.618 / 1; }       /* altın dikdörtgen */
.foto-serit .foto { height: auto; aspect-ratio: 1.618 / 1; }
.foto-serit .foto:not(:first-child) { aspect-ratio: 1 / 1; }
.foto-serit .foto:first-child { aspect-ratio: auto; }

/* ---------- Kartlar, düğmeler, köşeler ---------- */
.kart { padding: var(--o1); gap: var(--o-2); border-radius: var(--radius); }
.kart .ikon { width: var(--o2); height: var(--o2); border-radius: var(--radius-k); }
.proje-kart, .tezgah, .foto, .gorsel-kutu, .tablo-kap, .form-kap, .ozellik-blok, .sayaclar { border-radius: var(--radius); }
.proje-kart .govde { padding: var(--o-1) var(--o1) var(--o1); gap: var(--o-3); }
.proje-kart .resim { aspect-ratio: 1.618 / 1; }
.btn { padding: var(--o-2) var(--o1); border-radius: var(--radius-k); }
.btn.buyuk { padding: var(--o-1) var(--o1b); font-size: 1.05rem; }
.cta { padding: var(--o2) var(--o2b); border-radius: calc(var(--radius) * 1.272); }
.sayac { padding: var(--o1) var(--o-1); }

/* ---------- Logo: biraz daha büyük, yazı yüksekliği = amblem ÷ φ ---------- */
.baslik .kap { min-height: 84px; }                     /* 52 × φ ≈ 84 */
.logo img { height: 52px; }
.logo-ad { font-size: 2rem; }                          /* 52 ÷ φ ≈ 32 px */
.altbilgi .logo-kutu img { height: 48px; }
.altbilgi .logo-ad { font-size: 1.854rem; }            /* 48 ÷ φ ≈ 29,7 px */
@media (max-width: 1420px) { .logo img { height: 46px; } .logo-ad { font-size: 1.777rem; } }
@media (max-width: 1300px) and (min-width: 1101px) { .logo img { height: 40px; } .logo-ad { font-size: 1.545rem; } .menu a { padding: 9px 7px; font-size: .87rem; } }
@media (max-width: 1100px) { .baslik .kap { min-height: 72px; } .logo img { height: 44px; } .logo-ad { font-size: 1.7rem; } }
@media (max-width: 600px) { .logo img { height: 38px; } .logo-ad { font-size: 1.468rem; } }

/* =====================================================================
   AURA: sayfanın arkasında, altın oran noktalarında (61,8 % / 38,2 %)
   yavaşça nefes alan yumuşak ışık alanları
   ===================================================================== */
body { position: relative; isolation: isolate; }
body::before {
  content: ""; position: fixed; inset: -20%; z-index: -1; pointer-events: none;
  background:
    radial-gradient(38.2vmax 38.2vmax at 61.8% 38.2%, var(--aura-1), transparent 61.8%),
    radial-gradient(30vmax 30vmax at 23.6% 76.4%, var(--aura-2), transparent 61.8%),
    radial-gradient(23.6vmax 23.6vmax at 85.4% 85.4%, var(--aura-3), transparent 61.8%);
  animation: auraNefes 21s ease-in-out infinite alternate;      /* 21: Fibonacci */
}
@keyframes auraNefes {
  0%   { transform: translate3d(0, 0, 0) scale(1); }
  50%  { transform: translate3d(-3.82%, 2.36%, 0) scale(1.0618); }
  100% { transform: translate3d(2.36%, -1.46%, 0) scale(1.1618); }
}
/* açık bölümler aurayı hafifçe geçirsin */
.bolum.beyaz { background: rgba(255,255,255,.786); }

/* koyu yüzeylerde ışık halesi (hero, sayfa başlıkları, koyu bölüm, CTA) */
.hero::after {
  background:
    radial-gradient(38.2vmax 30vmax at 61.8% 38.2%, rgba(111,168,216,.30), transparent 61.8%),
    radial-gradient(30vmax 23.6vmax at 23.6% 85.4%, rgba(230,167,0,.12), transparent 61.8%);
}
.sayfa-bas::after, .bolum.koyu::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0;
  background: radial-gradient(38.2vmax 23.6vmax at 61.8% 38.2%, rgba(111,168,216,.22), transparent 61.8%);
  animation: auraNefes 13s ease-in-out infinite alternate;
}
.hero-gorsel::before {
  content: ""; position: absolute; inset: -14.6%; z-index: -1; pointer-events: none; border-radius: 50%;
  background: radial-gradient(circle at 50% 50%, rgba(111,168,216,.42), rgba(111,168,216,0) 61.8%);
  filter: blur(var(--o1)); animation: haleNabiz 8s ease-in-out infinite alternate;    /* 8: Fibonacci */
}
@keyframes haleNabiz { from { opacity: .618; transform: scale(.946); } to { opacity: 1; transform: scale(1.0618); } }

/* logo ve etkileşimlerde ışıltı */
.logo img { transition: filter .382s ease; }
.logo:hover img { filter: drop-shadow(0 0 var(--o-2) rgba(111,168,216,.618)); }
.kart:hover, .proje-kart:hover, .tezgah:hover, .ref-logo:hover {
  box-shadow: 0 var(--o1) var(--o2) calc(-1 * var(--o1)) rgba(28,46,66,.382),
              0 0 0 1px rgba(111,168,216,.382),
              0 0 var(--o2) calc(-1 * var(--o-2)) rgba(111,168,216,.382);
}
.btn:hover { box-shadow: 0 var(--o-2) var(--o1) calc(-1 * var(--o-2)) rgba(59,106,145,.618), 0 0 var(--o1) rgba(111,168,216,.382); }

@media (max-width: 1024px) {
  .hero .kap { grid-template-columns: 1fr; padding: var(--o3) 0 var(--o3b); }
  .bolum-bas, .bolum-bas.orta { max-width: 100%; }
}
@media (max-width: 900px) {
  .iki, .iki.teklif-duzen, .hizmet-blok, .hizmet-blok:nth-child(even), .ozellik-blok, .ozellik-blok:nth-child(even) { grid-template-columns: 1fr; gap: var(--o1b); }
  .foto-serit { grid-template-columns: 1fr 1fr; }
  .foto-serit .foto:first-child { grid-column: 1 / -1; aspect-ratio: 1.618 / 1; }
  .cta { padding: var(--o1b) var(--o1); }
}
@media (prefers-reduced-motion: reduce) {
  body::before, .sayfa-bas::after, .bolum.koyu::after, .hero-gorsel::before { animation: none !important; }
}

/* Düzeltme: hero başlığı bir basamak küçük (3,33 rem = 53 px) — "ve" tek satıra düşmesin */
.hero h1 { font-size: clamp(var(--o2), 3.6vw, var(--o2b)); }
/* Fotoğraf şeridi: kareler belirler, büyük kare aynı yükseklikte altın dikdörtgen olur (1,618 : 1) */
.foto-serit .foto:first-child { aspect-ratio: auto; height: auto; position: relative; }
.foto-serit .foto:first-child img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 900px) { .foto-serit .foto:first-child { aspect-ratio: 1.618 / 1; } }


/* =====================================================================
   WHATSAPP ve MOBİL HIZLI İLETİŞİM (ölçüler φ'den)
   ===================================================================== */
:root { --wa: #25d366; --wa-koyu: #1da851; }
.wa-serit svg { width: 14px; height: 14px; vertical-align: -2px; color: var(--wa); }
.wa-yuzen {
  position: fixed; right: var(--o1); bottom: var(--o1); z-index: 900; display: flex; align-items: center; gap: var(--o-2);
  height: 56px; padding: 0 var(--o1) 0 14px; border-radius: 999px; background: var(--wa); color: #fff !important; font-weight: 700;
  box-shadow: 0 var(--o-2) var(--o1) rgba(0,0,0,.2), 0 0 0 0 rgba(37,211,102,.55); animation: waNabiz 2.618s ease-out infinite;
  transition: transform .236s ease, background .236s ease;
}
.wa-yuzen svg { width: 28px; height: 28px; flex-shrink: 0; }
.wa-yuzen span { font-size: .95rem; white-space: nowrap; }
.wa-yuzen:hover { background: var(--wa-koyu); transform: translateY(-3px); }
@keyframes waNabiz { 0% { box-shadow: 0 var(--o-2) var(--o1) rgba(0,0,0,.2), 0 0 0 0 rgba(37,211,102,.55); } 61.8% { box-shadow: 0 var(--o-2) var(--o1) rgba(0,0,0,.2), 0 0 0 var(--o1) rgba(37,211,102,0); } 100% { box-shadow: 0 var(--o-2) var(--o1) rgba(0,0,0,.2), 0 0 0 0 rgba(37,211,102,0); } }
body.perde-acik .wa-yuzen, body.perde-acik .mobil-cubuk { display: none; }

.mobil-cubuk { display: none; }
@media (max-width: 900px) {
  .wa-yuzen { display: none; }
  .mobil-cubuk {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 900; display: grid; grid-template-columns: 1fr 1.618fr; gap: var(--o-2);
    padding: var(--o-2) var(--o-1) calc(var(--o-2) + env(safe-area-inset-bottom));
    background: rgba(255,255,255,.94); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
    border-top: 1px solid var(--cizgi); box-shadow: 0 calc(-1 * var(--o-2)) var(--o1) rgba(0,0,0,.06);
  }
  .mobil-cubuk a {
    display: flex; align-items: center; justify-content: center; gap: var(--o-2); height: 48px; border-radius: var(--radius-k);
    font-weight: 700; font-size: 1rem; color: #fff !important;
  }
  .mobil-cubuk .ara { background: var(--lacivert); }
  .mobil-cubuk .wa { background: var(--wa); }
  .mobil-cubuk svg { width: 22px; height: 22px; }
  body { padding-bottom: calc(48px + 2 * var(--o-2) + env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) { .wa-yuzen { animation: none; } }
@media print { .wa-yuzen, .mobil-cubuk { display: none !important; } }

/* Telefon: hero ritmi sıkılaştırıldı (φ ölçeğinde bir-iki basamak aşağı) */
@media (max-width: 600px) {
  .hero .kap { padding: var(--o2) 0 var(--o2b); gap: var(--o1b); }
  .hero .dugmeler { display: grid; grid-template-columns: 1fr 1fr; gap: var(--o-2); }
  .hero .dugmeler .btn { justify-content: center; padding: var(--o-2) var(--o-1); }
  .hero .rozetler { margin-top: var(--o1); }
  .bolum { padding: var(--o2b) 0; }
  .sayfa-bas { padding: var(--o2b) 0 var(--o2); }
  .sayac b { font-size: var(--o1b); }
}

/* =====================================================================
   Dil seçici: sol kenarda dikey bayrak şeridi; üstüne gelince dil adları açılır.
   Dar ekranda tek bayraklı düğme listeyi açar (alt iletişim çubuğunun üstünde).
   ===================================================================== */
.dil-secici { position: fixed; left: 0; top: 50%; transform: translateY(-50%); z-index: 880; font-family: var(--font); direction: ltr; }
.dil-secici ul { list-style: none; margin: 0; padding: var(--o-3) 0; background: rgba(255,255,255,.96); border: 1px solid var(--cizgi); border-left: 0; border-radius: 0 var(--radius-k, 10px) var(--radius-k, 10px) 0; box-shadow: var(--golge); }
.dil-secici a { display: flex; align-items: center; gap: var(--o-2); padding: 6px 8px 6px 7px; color: var(--lacivert) !important; text-decoration: none; font-weight: 600; font-size: .9rem; white-space: nowrap; }
.dil-secici img { width: 28px; height: 20px; object-fit: cover; border-radius: 3px; box-shadow: 0 0 0 1px rgba(22,33,44,.16); flex: none; }
.dil-secici a span { max-width: 0; overflow: hidden; opacity: 0; transition: max-width .236s ease, opacity .236s ease; }
.dil-secici:hover a span, .dil-secici:focus-within a span { max-width: 140px; opacity: 1; padding-right: 6px; }
.dil-secici a:hover { background: #eef3f8; }
.dil-secici a[aria-current] { background: #e3ecf5; }
.dil-secici a[aria-current] img { box-shadow: 0 0 0 2px var(--mavi); }
.dil-dugme { display: none; }
body.perde-acik .dil-secici { display: none; }
/* Şeridin içeriğe binmediği genişlikte tam şerit; altında sol alt köşede tek bayraklı düğme (WhatsApp düğmesinin karşısı) */
@media (max-width: 1359px) {
  .dil-secici { top: auto; transform: none; bottom: var(--o1); }
  .dil-dugme { display: flex; align-items: center; gap: 6px; padding: 8px 9px 8px 8px; background: rgba(255,255,255,.96); border: 1px solid var(--cizgi); border-left: 0; border-radius: 0 10px 10px 0; box-shadow: var(--golge); color: var(--lacivert); font: 700 .78rem/1 var(--font); cursor: pointer; }
  .dil-secici ul { display: none; position: absolute; left: 0; bottom: calc(100% + 8px); }
  .dil-secici.acik ul { display: block; }
  .dil-secici a span { max-width: 140px; opacity: 1; padding-right: 6px; }
  .dil-secici a { padding: 9px 12px 9px 10px; }
  .dil-dugme { height: 56px; padding: 0 12px 0 10px; }
}
@media (max-width: 900px) {
  .dil-secici { bottom: calc(48px + 2 * var(--o-2) + var(--o-1) + env(safe-area-inset-bottom)); }
  .dil-dugme { height: auto; padding: 8px 9px 8px 8px; }
}
@media print { .dil-secici { display: none !important; } }

/* Dil sürümleri: Arapça için uygun yazı tipi, Arapçada sağdan sola düzen */
html[lang="ar"] { --font: "Segoe UI", Tahoma, "Noto Sans Arabic", "Geeza Pro", system-ui, sans-serif; }
html[lang="ar"] h1, html[lang="ar"] h2, html[lang="ar"] h3 { letter-spacing: 0; }
html[dir="rtl"] .logo, html[dir="rtl"] .logo-kutu, html[dir="rtl"] .ust-serit .sag a { direction: ltr; }
/* Telefon numarası ve e-posta Arapça metin içinde de soldan sağa okunsun */
html[dir="rtl"] :is(a[href^="tel:"], a[href^="mailto:"], a[href*="wa.me"]):not(.mobil-cubuk a, .wa-yuzen, .wa-serit) { direction: ltr; unicode-bidi: isolate; }

/* Ana sayfa süreç bölümü: entegre dijital imalat sistemi ve izlenebilirlik notu */
.dijital-not { display: flex; gap: var(--o-1); align-items: flex-start; max-width: 860px; margin: var(--o2) auto 0; padding: var(--o-1) var(--o1);
  background: linear-gradient(160deg, var(--lacivert), var(--lacivert-2)); color: #d6e1ec; border-radius: var(--radius); box-shadow: var(--golge); }
.dijital-not b { display: block; color: #fff; margin-bottom: 4px; letter-spacing: .01em; }
.dijital-not .nokta { flex: none; width: 10px; height: 10px; margin-top: 6px; border-radius: 50%; background: #3ee59a; box-shadow: 0 0 0 4px rgba(62,229,154,.18); animation: nabiz 1.6s ease-out infinite; }
