/* ==========================================================================
   Akkoç Emlak ve İnşaat — Ortak stil dosyası
   Tailwind CDN ile birlikte kullanılır. Koyu tema + altın vurgu.
   ========================================================================== */

:root {
  --gold-300: #dfc277;
  --gold-400: #d4ad52;
  --gold-500: #c5973a;
  --gold-600: #a8792d;
  --ink-950: #07090d;
  --ink-900: #0b0f16;
  --header-h: 80px;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-h) + 16px);
  -webkit-text-size-adjust: 100%;
}

body {
  background-color: var(--ink-950);
  color: #cbd5e1;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img { max-width: 100%; height: auto; }

::selection { background: rgba(197, 151, 58, 0.35); color: #fff; }

/* İnce koyu kaydırma çubuğu */
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: var(--ink-950); }
::-webkit-scrollbar-thumb { background: #273042; border-radius: 10px; border: 2px solid var(--ink-950); }
::-webkit-scrollbar-thumb:hover { background: var(--gold-600); }

/* Dil yüklenirken Türkçe metnin göz kırpmasını engelle (JS çalışmazsa 1.2 sn sonra görünür) */
html.i18n-pending body { opacity: 0; animation: i18nReveal 0s linear 1.2s forwards; }
@keyframes i18nReveal { to { opacity: 1; } }
body { transition: opacity .25s ease; }

/* Erişilebilirlik: içeriğe atla bağlantısı */
.skip-link {
  position: absolute; left: 1rem; top: -100px; z-index: 100;
  background: var(--gold-500); color: #0b0f16; padding: .6rem 1rem; border-radius: .5rem; font-weight: 600;
}
.skip-link:focus { top: 1rem; }

/* ---------- Tipografi yardımcıları ---------- */
.text-gold-gradient {
  background: linear-gradient(135deg, #f5edd5 0%, #dfc277 35%, #c5973a 65%, #a8792d 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.eyebrow {
  display: inline-flex; align-items: center; gap: .6rem;
  font-size: .75rem; letter-spacing: .28em; text-transform: uppercase; font-weight: 600; color: var(--gold-400);
}
.eyebrow::before { content: ""; width: 2rem; height: 1px; background: currentColor; opacity: .7; }

/* ---------- Butonlar ---------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .55rem;
  padding: .9rem 1.6rem; border-radius: 9999px; font-weight: 600; font-size: .95rem; line-height: 1.2;
  transition: transform .2s ease, box-shadow .25s ease, background-color .25s ease, color .25s ease, border-color .25s ease;
  white-space: nowrap;
}
.btn:focus-visible { outline: 2px solid var(--gold-300); outline-offset: 3px; }
.btn-gold {
  color: #0b0f16;
  background: linear-gradient(135deg, #ead9a8 0%, #d4ad52 45%, #a8792d 100%);
  box-shadow: 0 10px 30px -10px rgba(197, 151, 58, .6);
}
.btn-gold:hover { transform: translateY(-2px); box-shadow: 0 16px 40px -10px rgba(197, 151, 58, .75); }
.btn-outline {
  color: #f8fafc; border: 1px solid rgba(255, 255, 255, .25); background: rgba(255, 255, 255, .04);
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.btn-outline:hover { border-color: var(--gold-400); color: var(--gold-300); transform: translateY(-2px); }
.btn-wa {
  background: #25d366 !important;
  color: #07090d !important;
  border-color: #25d366 !important;
  font-weight: 700 !important;
  box-shadow: 0 12px 30px -8px rgba(37, 211, 102, .45);
}
.btn-wa:hover {
  background: #20ba5a !important;
  border-color: #20ba5a !important;
  color: #07090d !important;
  transform: translateY(-2px);
  box-shadow: 0 16px 36px -8px rgba(37, 211, 102, .6);
}

@media (max-width: 400px) {
  .btn { padding: .8rem 1.2rem; font-size: .9rem; white-space: normal; text-align: center; }
}

/* ---------- Header ---------- */
#site-header { transition: background-color .3s ease, box-shadow .3s ease, border-color .3s ease; border-bottom: 1px solid transparent; }
#site-header.is-scrolled, #site-header.is-solid {
  background: rgba(7, 9, 13, .88);
  -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
  border-bottom-color: rgba(255, 255, 255, .06);
  box-shadow: 0 10px 30px -15px rgba(0, 0, 0, .8);
}
.nav-link { position: relative; color: #cbd5e1; font-size: .92rem; font-weight: 500; transition: color .2s ease; }
.nav-link::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -6px; height: 1px; margin: auto;
  width: 0; background: var(--gold-400); transition: width .25s ease;
}
.nav-link:hover, .nav-link.is-active { color: #fff; }
.nav-link:hover::after, .nav-link.is-active::after { width: 100%; }

#mobile-menu { max-height: calc(100vh - var(--header-h)); overflow-y: auto; }

/* Dil seçici */
.lang-btn { transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
.lang-btn[aria-pressed="true"] { background: var(--gold-500); color: #0b0f16; border-color: var(--gold-500); }
#lang-menu[hidden] { display: none; }

/* ---------- Kartlar ---------- */
.card {
  position: relative; border-radius: 1.25rem; padding: 1.75rem;
  background: linear-gradient(180deg, rgba(26, 34, 49, .65) 0%, rgba(11, 15, 22, .9) 100%);
  border: 1px solid rgba(255, 255, 255, .07);
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.card:hover { transform: translateY(-4px); border-color: rgba(197, 151, 58, .45); box-shadow: 0 25px 50px -25px rgba(197, 151, 58, .35); }
.icon-badge {
  display: inline-flex; align-items: center; justify-content: center;
  width: 3.25rem; height: 3.25rem; border-radius: .9rem; color: var(--gold-300);
  background: linear-gradient(135deg, rgba(197, 151, 58, .22), rgba(197, 151, 58, .05));
  border: 1px solid rgba(197, 151, 58, .35);
}
.icon-badge svg { width: 1.5rem; height: 1.5rem; }

.gold-line { height: 1px; background: linear-gradient(90deg, transparent, rgba(197, 151, 58, .6), transparent); }

/* Hero */
.hero-overlay {
  background:
    linear-gradient(180deg, rgba(7, 9, 13, .55) 0%, rgba(7, 9, 13, .35) 40%, rgba(7, 9, 13, .95) 100%),
    linear-gradient(90deg, rgba(7, 9, 13, .85) 0%, rgba(7, 9, 13, .2) 70%);
}
.page-hero {
  background:
    radial-gradient(ellipse at top right, rgba(197, 151, 58, .18), transparent 55%),
    radial-gradient(ellipse at bottom left, rgba(39, 48, 66, .6), transparent 60%),
    var(--ink-950);
}

/* Scroll ile beliren öğeler */
.reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s ease, transform .8s ease; }
.reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { opacity: 1; transform: none; transition: none; }
  .animate-pulse-ring::before { animation: none !important; }
}

/* ---------- Makale / yasal metin içerik stili ---------- */
.prose-dark { color: #cbd5e1; line-height: 1.85; font-size: 1.02rem; }
.prose-dark h2 { font-family: "Playfair Display", Georgia, serif; color: #fff; font-size: 1.6rem; line-height: 1.3; margin: 2.2rem 0 1rem; }
.prose-dark h3 { color: var(--gold-300); font-size: 1.15rem; font-weight: 600; margin: 1.8rem 0 .7rem; }
.prose-dark p { margin: 0 0 1.1rem; }
.prose-dark ul, .prose-dark ol { margin: 0 0 1.2rem; padding-left: 1.3rem; }
.prose-dark ul { list-style: none; padding-left: 0; }
.prose-dark ul li { position: relative; padding-left: 1.6rem; margin-bottom: .55rem; }
.prose-dark ul li::before {
  content: ""; position: absolute; left: .2rem; top: .7em; width: .5rem; height: .5rem; border-radius: 2px;
  transform: rotate(45deg); background: var(--gold-500);
}
.prose-dark ol { list-style: decimal; }
.prose-dark ol li { margin-bottom: .55rem; padding-left: .3rem; }
.prose-dark ol li::marker { color: var(--gold-400); font-weight: 700; }
.prose-dark strong { color: #fff; font-weight: 600; }
.prose-dark a { color: var(--gold-300); text-decoration: underline; text-underline-offset: 3px; }
.prose-dark a:hover { color: #fff; }
.prose-dark blockquote {
  border-left: 3px solid var(--gold-500); background: rgba(197, 151, 58, .07);
  padding: 1rem 1.25rem; border-radius: 0 .75rem .75rem 0; margin: 1.5rem 0; color: #e2e8f0;
}
.prose-dark > *:first-child { margin-top: 0; }

/* ---------- Form ---------- */
.form-field {
  width: 100%; border-radius: .85rem; padding: .85rem 1rem; color: #f1f5f9; font-size: .95rem;
  background: rgba(7, 9, 13, .7); border: 1px solid rgba(255, 255, 255, .1);
  transition: border-color .2s ease, box-shadow .2s ease;
}
.form-field::placeholder { color: #64748b; }
.form-field:focus { outline: none; border-color: var(--gold-500); box-shadow: 0 0 0 3px rgba(197, 151, 58, .2); }
select.form-field option { background: #0b0f16; }
input[type="date"].form-field { color-scheme: dark; }

/* ---------- Sabit hızlı iletişim butonları ---------- */
.quick-contact {
  position: fixed;
  right: 1.25rem;
  bottom: calc(1.25rem + env(safe-area-inset-bottom, 0px));
  z-index: 60;
  display: flex;
  flex-direction: column;
  gap: .65rem;
  pointer-events: none; /* Boşluklar arkadaki tıklamaları engellemesin */
  transition: transform .35s cubic-bezier(0.16, 1, 0.3, 1), opacity .3s ease;
  will-change: transform, opacity;
}
.quick-contact.is-hidden {
  transform: translateY(calc(100% + 2rem));
  opacity: 0;
  pointer-events: none !important;
}
.quick-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  height: 3.15rem;
  padding: 0 1.15rem 0 1rem;
  border-radius: 9999px;
  font-weight: 600;
  font-size: .88rem;
  color: #fff;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, .65), 0 0 0 1px rgba(255, 255, 255, .08);
  transition: transform .2s ease, box-shadow .2s ease;
  pointer-events: auto; /* Yalnızca butonun kendisine tıklanabilir */
  -webkit-tap-highlight-color: transparent;
}
.quick-btn:hover { transform: translateY(-2px) scale(1.02); }
.quick-btn:active { transform: scale(0.96); }
.quick-btn svg { width: 1.35rem; height: 1.35rem; flex-shrink: 0; }
.quick-btn--wa { background: #1fa855; }
.quick-btn--call { background: linear-gradient(135deg, #d4ad52, #a8792d); color: #0b0f16; }
.animate-pulse-ring::before {
  content: ""; position: absolute; inset: 0; border-radius: inherit; border: 2px solid #25d366;
  animation: pulseRing 2.2s ease-out infinite;
}
@keyframes pulseRing { 0% { transform: scale(1); opacity: .8; } 100% { transform: scale(1.35); opacity: 0; } }

/* Mobilde (ekran < 768px): Ultra Kompakt Yuvarlak İkon Modu (Genişlik 180px yerine sadece 44px!) */
@media (max-width: 767px) {
  .quick-contact {
    right: .85rem;
    bottom: calc(.85rem + env(safe-area-inset-bottom, 0px));
    gap: .5rem;
  }
  .quick-btn {
    width: 2.75rem; /* 44px standart ergonomik dokunmatik hedef */
    height: 2.75rem;
    padding: 0;
    box-shadow: 0 8px 20px -4px rgba(0, 0, 0, .7), 0 0 0 1px rgba(255, 255, 255, .12);
  }
  .quick-btn span {
    display: none; /* Metin mobilde gizlenir, ekranı kapatması önlenir */
  }
  .animate-pulse-ring::before {
    display: none; /* Mobilde taşan ve dikkati dağıtan pulse halkasını kaldır */
  }
  .site-footer {
    padding-bottom: 5.5rem;
  }
}

/* Harita */
.map-frame { filter: grayscale(.35) contrast(1.05) brightness(.9); }
.map-frame:hover { filter: none; }

/* Yıldızlar */
.stars { color: var(--gold-400); letter-spacing: .15em; }
