/* Ravi Park — site stilleri
   Renkler renderlardan: beyaz cephe, koyu tuğla, bronz-vizon zemin kat, sıcak ahşap iç mekân. */

:root {
  --zemin: #f4efe7;
  --kagit: #fbf8f3;
  --beyaz: #fff;
  --murekkep: #1e1915;
  --ikincil: #5c534b;
  --cizgi: #e0d6c8;
  --tugla: #2f221e;
  --tugla-2: #3d2c27;
  --tugla-cizgi: rgba(232, 214, 192, .16);
  --bronz: #7a5b3e;
  --bronz-koyu: #634831;
  --bronz-acik: #d4b591;
  --satilik: #4f7a4a;
  --opsiyon: #b07a22;
  --satildi: #9b8f84;
  --whatsapp: #177a42;

  --serif: "Cormorant Garamond", "Iowan Old Style", Georgia, serif;
  --sans: "Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;

  --kap: 1240px;
  --bosluk: clamp(72px, 10vw, 140px);
  --r: 12px;
  --r-kart: 16px;
  --golge: 0 24px 60px -24px rgba(30, 20, 14, .35);
  --gecis: cubic-bezier(.2, .7, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 84px; }
body {
  margin: 0;
  background: var(--zemin);
  color: var(--murekkep);
  font: 400 16px/1.65 var(--sans);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}
img { display: block; max-width: 100%; height: auto; }
picture { display: contents; }
a { color: inherit; }
button { font: inherit; color: inherit; cursor: pointer; }
h1, h2, h3 { font-family: var(--serif); font-weight: 500; line-height: 1.05; letter-spacing: -.01em; margin: 0; }
p { margin: 0 0 1em; }
:focus-visible { outline: 2px solid var(--bronz); outline-offset: 3px; }

.kap { width: min(100% - 32px, var(--kap)); margin-inline: auto; }
@media (min-width: 700px) { .kap { width: min(100% - 64px, var(--kap)); } }

.atla { position: absolute; left: 16px; top: -60px; z-index: 100; background: var(--murekkep); color: #fff; padding: 10px 16px; }
.atla:focus { top: 16px; }

.ust-baslik {
  font: 600 12px/1.4 var(--sans);
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--bronz);
  margin-bottom: 18px;
  display: flex; align-items: center; gap: 12px;
}
.ust-baslik::before { content: ""; width: 28px; height: 1px; background: currentColor; }
.ust-baslik--acik { color: var(--bronz-acik); }

/* ---------- Düğmeler ---------- */
.dugme {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 48px; padding: 0 26px;
  background: var(--bronz); color: #fff;
  border: 1px solid var(--bronz); border-radius: var(--r);
  font: 600 15px/1 var(--sans); letter-spacing: .01em;
  text-decoration: none; white-space: nowrap;
  transition: background .25s, border-color .25s, color .25s, transform .25s var(--gecis);
}
.dugme:hover { background: var(--bronz-koyu); border-color: var(--bronz-koyu); }
.dugme:active { transform: translateY(1px); }
.dugme--buyuk { min-height: 56px; padding: 0 32px; font-size: 16px; }
.dugme--kucuk { min-height: 40px; padding: 0 18px; font-size: 14px; }
.dugme--tam { width: 100%; min-height: 56px; font-size: 16px; }
.dugme--seffaf { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.55); backdrop-filter: blur(6px); }
.dugme--seffaf:hover { background: #fff; color: var(--murekkep); border-color: #fff; }
.dugme--cizgi { background: transparent; color: var(--murekkep); border-color: var(--murekkep); }
.dugme--cizgi:hover { background: var(--murekkep); color: #fff; border-color: var(--murekkep); }
.dugme--whatsapp { background: var(--whatsapp); border-color: var(--whatsapp); }
.dugme--whatsapp:hover { background: #125f33; border-color: #125f33; }
.dugme svg { width: 20px; height: 20px; fill: currentColor; flex: none; }

.bag-ok {
  display: inline-flex; align-items: center; gap: 10px;
  font-weight: 600; text-decoration: none;
  border-bottom: 1px solid currentColor; padding-bottom: 4px;
}
.bag-ok::after { content: "→"; transition: transform .25s var(--gecis); }
.bag-ok:hover::after { transform: translateX(4px); }

/* ---------- Üst bar ---------- */
.ilerleme { position: fixed; inset: 0 0 auto; height: 2px; z-index: 70; pointer-events: none; }
.ilerleme i { display: block; height: 100%; background: var(--bronz-acik); transform-origin: left; transform: scaleX(var(--k, 0)); }

.ust { position: fixed; inset: 0 0 auto; z-index: 50; color: var(--murekkep); transition: transform .5s var(--gecis); }
.ust--gizli { transform: translateY(calc(-100% - 8px)); }

.duyuru {
  background: var(--tugla); color: rgba(243, 235, 225, .85);
  font-size: 12.5px; letter-spacing: .02em;
  overflow: hidden; max-height: 38px;
  transition: max-height .45s var(--gecis), opacity .3s;
}
.duyuru__ic { display: flex; align-items: center; justify-content: space-between; gap: 20px; height: 38px; }
.duyuru__canli { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: #fff; }
.duyuru__canli i { width: 7px; height: 7px; border-radius: 50%; background: #6fbf68; box-shadow: 0 0 0 0 rgba(111, 191, 104, .6); animation: nabiz 2s infinite; }
@keyframes nabiz { 70% { box-shadow: 0 0 0 7px rgba(111, 191, 104, 0); } 100% { box-shadow: 0 0 0 0 rgba(111, 191, 104, 0); } }
.duyuru__orta b { color: var(--bronz-acik); }
.duyuru a { text-decoration: none; font-weight: 600; color: #fff; font-variant-numeric: tabular-nums; }
.ust--dolu .duyuru { max-height: 0; opacity: 0; }

.ust__kabuk { padding: 0; transition: padding .5s var(--gecis); }
.ust__ic {
  display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px;
  height: 78px; width: min(100% - 32px, var(--kap)); margin-inline: auto; padding: 0;
  border-radius: 0; background: transparent; border: 1px solid transparent;
  transition: width .5s var(--gecis), height .5s var(--gecis), padding .5s var(--gecis), background .4s, border-color .4s, box-shadow .4s, border-radius .5s var(--gecis);
}
@media (min-width: 700px) { .ust__ic { width: min(100% - 64px, var(--kap)); } }
.ust--dolu .ust__kabuk { padding-top: 12px; }
.ust--dolu .ust__ic {
  width: min(100% - 24px, 1120px); height: 64px; padding: 0 10px 0 20px;
  background: rgba(251, 248, 243, .86); backdrop-filter: saturate(1.6) blur(18px); -webkit-backdrop-filter: saturate(1.6) blur(18px);
  border-color: rgba(224, 214, 200, .9); border-radius: 999px;
  box-shadow: 0 18px 50px -20px rgba(47, 34, 30, .35);
}
.ust--saydam:not(.ust--dolu) { color: #fff; }
.ust--saydam:not(.ust--dolu) .ust__kabuk { background: linear-gradient(rgba(20, 14, 10, .5), transparent); }
body:not(.ana) main { padding-top: 116px; }
body:not(.ana) .ust:not(.ust--dolu) .ust__kabuk { background: var(--zemin); border-bottom: 1px solid var(--cizgi); }

.ust__sol { display: flex; align-items: center; gap: 28px; }
.ust__hizli { display: flex; gap: 24px; }
.ust__hizli a, .ust__tel { text-decoration: none; font-size: 14px; font-weight: 500; position: relative; }
.ust__hizli a::after { content: ""; position: absolute; left: 0; right: 0; bottom: -4px; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform .4s var(--gecis); }
.ust__hizli a:hover::after, .ust__hizli a[aria-current]::after { transform: scaleX(1); transform-origin: left; }

.menu-ac { display: inline-flex; align-items: center; gap: 12px; height: 44px; padding: 0 4px 0 0; background: none; border: 0; font-size: 14px; font-weight: 600; letter-spacing: .04em; }
.menu-ac__cizgi { position: relative; width: 44px; height: 44px; border-radius: 50%; border: 1px solid currentColor; display: grid; place-items: center; transition: background .3s, color .3s, border-color .3s; }
.menu-ac__cizgi i { position: absolute; width: 16px; height: 1.5px; background: currentColor; transition: transform .45s var(--gecis), width .3s; }
.menu-ac__cizgi i:first-child { transform: translateY(-3px); }
.menu-ac__cizgi i:last-child { transform: translateY(3px); width: 10px; margin-left: -6px; }
.menu-ac:hover .menu-ac__cizgi i:last-child { width: 16px; margin-left: 0; }
.ust--dolu .menu-ac__cizgi { border-color: var(--cizgi); }
.menu-acik .menu-ac__cizgi i:first-child { transform: rotate(45deg); }
.menu-acik .menu-ac__cizgi i:last-child { transform: rotate(-45deg); width: 16px; margin-left: 0; }

.logo { text-decoration: none; display: grid; justify-items: center; gap: 4px; line-height: 1; }
.logo__yazi { font: 500 28px/1 var(--serif); letter-spacing: .16em; white-space: nowrap; padding-left: .16em; transition: font-size .5s var(--gecis); }
.logo__v { font-style: italic; font-weight: 600; color: var(--bronz); display: inline-block; }
.ust--saydam:not(.ust--dolu) .logo__v, .menu-acik .logo__v { color: var(--bronz-acik); }
.logo__alt { font: 600 9.5px/1 var(--sans); letter-spacing: .42em; text-transform: uppercase; opacity: .7; padding-left: .42em; transition: opacity .3s, max-height .4s; max-height: 12px; overflow: hidden; }
.ust--dolu .logo__yazi { font-size: 24px; }
.ust--dolu .logo__alt { max-height: 0; opacity: 0; }

.ust__sag { display: flex; align-items: center; justify-content: flex-end; gap: 14px; }
.ust__ikon { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; border: 1px solid currentColor; flex: none; transition: background .3s, color .3s, border-color .3s; }
.ust--dolu .ust__ikon { border-color: var(--cizgi); }
.ust__ikon svg { width: 18px; height: 18px; fill: currentColor; }
.ust__ikon--wa:hover { background: var(--whatsapp); border-color: var(--whatsapp); color: #fff; }
.ust__tel { display: inline-flex; align-items: center; gap: 10px; font-variant-numeric: tabular-nums; font-weight: 700; font-size: 15px; }
.ust__tel:hover .ust__ikon { background: currentColor; }
.ust__tel:hover .ust__ikon svg { fill: var(--kagit); }
.ust--saydam:not(.ust--dolu) .ust__tel:hover .ust__ikon svg { fill: var(--murekkep); }
.ust__tel-yazi { display: grid; line-height: 1.15; }
.ust__tel-yazi small { font-size: 10px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; opacity: .65; }
.ust--dolu .ust__cta { min-height: 44px; border-radius: 999px; }
.ust--saydam:not(.ust--dolu) .ust__cta { background: #fff; border-color: #fff; color: var(--murekkep); }

/* Ok animasyonlu düğme */
.dugme--ok span { display: inline-flex; align-items: center; gap: 10px; }
.dugme--ok span::after { content: "→"; display: inline-block; transition: transform .35s var(--gecis); }
.dugme--ok:hover span::after { transform: translateX(4px); }
.dugme--acik { background: var(--kagit); color: var(--murekkep); border-color: var(--kagit); }
.dugme--acik:hover { background: var(--bronz-acik); border-color: var(--bronz-acik); color: var(--tugla); }

@media (max-width: 1180px) { .ust__hizli { display: none; } }
@media (max-width: 900px) {
  .duyuru__orta { display: none; }
  .ust__ic { height: 66px; gap: 12px; }
  .ust--dolu .ust__ic { height: 58px; padding: 0 8px; }
  .menu-ac__yazi, .ust__tel-yazi, .ust__cta, .ust__ikon--wa { display: none; }
  .logo__yazi { font-size: 22px; }
  .ust--dolu .logo__yazi { font-size: 20px; }
  .logo__alt { font-size: 8px; }
  body:not(.ana) main { padding-top: 104px; }
}

/* ---------- Tam ekran menü ---------- */
.tam-menu {
  position: fixed; inset: 0; z-index: 45;
  background: var(--tugla); color: #f3ebe1;
  clip-path: inset(0 0 100% 0);
  transition: clip-path .8s cubic-bezier(.77, 0, .18, 1), visibility 0s .8s;
  visibility: hidden; overflow-y: auto;
}
.menu-acik .tam-menu { clip-path: inset(0); visibility: visible; transition: clip-path .8s cubic-bezier(.77, 0, .18, 1); }
.menu-acik { overflow: hidden; }
.menu-acik .ust { color: #f3ebe1; }
.menu-acik .ust .ust__kabuk { background: transparent !important; border-color: transparent !important; }
.menu-acik .ust--dolu .ust__ic { background: transparent; border-color: transparent; box-shadow: none; backdrop-filter: none; }
.menu-acik .ust__ikon, .menu-acik .menu-ac__cizgi { border-color: rgba(243, 235, 225, .35) !important; }
.menu-acik .ust__cta { background: var(--bronz-acik) !important; border-color: var(--bronz-acik) !important; color: var(--tugla) !important; }
.tam-menu__ic { min-height: 100%; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 96px); padding: 150px 0 60px; align-items: center; }
.tam-menu__liste ol { list-style: none; margin: 0; padding: 0; }
.tam-menu__liste li { overflow: hidden; border-bottom: 1px solid var(--tugla-cizgi); }
.tam-menu__liste a {
  display: flex; align-items: baseline; gap: 22px; padding: 10px 0;
  font: 500 clamp(36px, 5.2vw, 68px)/1.1 var(--serif); text-decoration: none;
  transform: translateY(105%); transition: transform .8s var(--gecis), color .3s;
}
.menu-acik .tam-menu__liste a { transform: none; transition-delay: calc(.25s + var(--i) * .055s), 0s; }
.tam-menu__liste small { font: 600 12px/1 var(--sans); letter-spacing: .1em; color: var(--bronz-acik); width: 24px; }
.tam-menu__liste span { transition: transform .45s var(--gecis); }
.tam-menu__liste a:hover, .tam-menu__liste a[aria-current] { color: var(--bronz-acik); }
.tam-menu__liste a:hover span { transform: translateX(14px); font-style: italic; }
.tam-menu__yan { display: grid; gap: 28px; opacity: 0; transform: translateY(30px); transition: opacity .6s, transform .8s var(--gecis); }
.menu-acik .tam-menu__yan { opacity: 1; transform: none; transition-delay: .55s; }
.tam-menu__gorsel { margin: 0; aspect-ratio: 4 / 5; overflow: hidden; border-radius: var(--r); background: var(--tugla-2); }
.tam-menu__gorsel img { width: 100%; height: 100%; object-fit: cover; transition: opacity .35s, transform 1.2s var(--gecis); }
.tam-menu__gorsel img.degisiyor { opacity: 0; transform: scale(1.06); }
.tam-menu__bilgi { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; font-size: 14px; }
.tam-menu__bilgi small { display: block; font-size: 10.5px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--bronz-acik); margin-bottom: 6px; }
.tam-menu__bilgi a { text-decoration: none; font-weight: 600; }
@media (max-width: 900px) {
  .tam-menu__ic { grid-template-columns: 1fr; padding: 110px 0 120px; align-items: start; }
  .tam-menu__gorsel { display: none; }
  .tam-menu__bilgi { grid-template-columns: 1fr 1fr; }
}

/* ---------- Kahraman ---------- */
.kahraman {
  position: relative; min-height: 100svh; min-height: max(640px, 100svh);
  display: flex; align-items: flex-end;
  color: #fff; isolation: isolate; overflow: hidden;
  background: var(--tugla);
}
.kahraman__gorsel { position: absolute; inset: 0; z-index: -1; }
.kahraman__gorsel img { width: 100%; height: 100%; object-fit: cover; object-position: 60% 40%; animation: yaklas 9s cubic-bezier(.16, .8, .2, 1) both; }
.kahraman__gorsel::after {
  content: ""; position: absolute; inset: 0;
  background:
    linear-gradient(90deg, rgba(24, 16, 12, .82) 0%, rgba(24, 16, 12, .55) 38%, rgba(24, 16, 12, 0) 70%),
    linear-gradient(0deg, rgba(24, 16, 12, .7) 0%, rgba(24, 16, 12, 0) 45%);
}
@keyframes yaklas { from { transform: scale(1.18); } to { transform: scale(1); } }
.kahraman__ic {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 48px;
  padding-block: 140px clamp(56px, 9vh, 96px);
}
.kahraman__metin { max-width: 680px; }
.kahraman h1 { font-size: clamp(46px, 7.2vw, 96px); line-height: .98; margin-bottom: 26px; text-wrap: balance; }
.kahraman__alt { font-size: clamp(16px, 1.4vw, 18px); max-width: 540px; color: rgba(255, 255, 255, .86); margin-bottom: 36px; }
.kahraman__eylem { display: flex; flex-wrap: wrap; gap: 14px; }
.kahraman .dugme:not(.dugme--seffaf) { background: #fff; color: var(--murekkep); border-color: #fff; }
.kahraman .dugme:not(.dugme--seffaf):hover { background: var(--bronz-acik); border-color: var(--bronz-acik); }

.durum-karti {
  display: grid; gap: 4px; width: 280px; padding: 26px 28px;
  background: rgba(251, 248, 243, .96); color: var(--murekkep);
  border-radius: var(--r); text-decoration: none;
  box-shadow: var(--golge);
  transition: transform .35s var(--gecis);
}
.durum-karti:hover { transform: translateY(-4px); }
.durum-karti__ust { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ikincil); font-weight: 600; }
.durum-karti__sayi { font: 500 56px/1 var(--serif); margin-top: 10px; color: var(--ikincil); }
.durum-karti__sayi b { font-weight: 600; color: var(--murekkep); }
.durum-karti__aciklama { font-weight: 600; }
.durum-karti__cubuk { height: 4px; background: var(--cizgi); margin-top: 14px; border-radius: 4px; overflow: hidden; }
.durum-karti__cubuk i { display: block; height: 100%; background: var(--bronz); }
.durum-karti__alt { font-size: 13px; color: var(--ikincil); }

.kahraman__kaydir { position: absolute; left: 50%; bottom: 22px; width: 24px; height: 38px; border: 1.5px solid rgba(255,255,255,.6); border-radius: 12px; translate: -50% 0; }
.kahraman__kaydir span { position: absolute; left: 50%; top: 8px; width: 2px; height: 7px; background: #fff; border-radius: 2px; translate: -50% 0; animation: kaydir 2s infinite; }
@keyframes kaydir { 0% { opacity: 0; transform: translateY(0); } 40% { opacity: 1; } 100% { opacity: 0; transform: translateY(12px); } }

@media (max-width: 900px) {
  .kahraman__ic { grid-template-columns: 1fr; gap: 28px; padding-bottom: 96px; }
  .kahraman__gorsel::after { background: linear-gradient(0deg, rgba(24, 16, 12, .9) 0%, rgba(24, 16, 12, .55) 55%, rgba(24, 16, 12, .25) 100%); }
  .durum-karti { width: auto; grid-template-columns: auto 1fr; align-items: center; column-gap: 16px; padding: 18px 20px; }
  .durum-karti__ust, .durum-karti__cubuk, .durum-karti__alt { grid-column: 1 / -1; }
  .durum-karti__sayi { font-size: 40px; margin: 6px 0 0; }
  .kahraman__kaydir { display: none; }
}
@media (max-width: 520px) {
  .kahraman__eylem .dugme { width: 100%; }
}

/* ---------- Rakamlar ---------- */
.rakamlar { background: var(--kagit); border-bottom: 1px solid var(--cizgi); }
.rakamlar__ic { display: grid; grid-template-columns: repeat(5, 1fr); }
.rakamlar__ic > div { padding: 40px 24px; border-left: 1px solid var(--cizgi); display: grid; gap: 6px; align-content: start; }
.rakamlar__ic > div:first-child { border-left: 0; padding-left: 0; }
.rakamlar b { font: 500 clamp(44px, 4.6vw, 64px)/1 var(--serif); }
.rakamlar small { font-size: .45em; margin-left: 4px; font-family: var(--sans); font-weight: 500; }
.rakamlar span { font-size: 14px; color: var(--ikincil); max-width: 18ch; }
@media (max-width: 900px) {
  .rakamlar__ic { grid-template-columns: repeat(2, 1fr); }
  .rakamlar__ic > div { padding: 26px 0 26px 20px; border-top: 1px solid var(--cizgi); }
  .rakamlar__ic > div:nth-child(odd) { border-left: 0; padding-left: 0; }
  .rakamlar__ic > div:nth-child(-n+2) { border-top: 0; }
  .rakamlar__ic > div:last-child { grid-column: 1 / -1; border-left: 0; padding-left: 0; }
}

/* ---------- Bölümler ---------- */
.bolum { padding-block: var(--bosluk); position: relative; }
.bolum--kagit { background: var(--kagit); }
.bolum--koyu { background: var(--tugla); color: #f3ebe1; }
.bolum__baslik { font-size: clamp(38px, 5vw, 66px); margin-bottom: 24px; text-wrap: balance; }
.bolum__baslik em { font-style: italic; color: var(--bronz); }
.bolum--koyu .bolum__baslik em { color: var(--bronz-acik); }
.bolum__baslik a { text-decoration: none; }
.bolum__giris { font-size: 17px; color: var(--ikincil); max-width: 52ch; }
.bolum--koyu .bolum__giris { color: rgba(243, 235, 225, .78); }
.bolum__ust { display: grid; grid-template-columns: 1.2fr 1fr; gap: 48px; align-items: end; margin-bottom: 56px; }
.bolum__ust .bolum__baslik { margin-bottom: 0; }
.bolum__ust .bolum__giris { margin: 0; }
@media (max-width: 900px) { .bolum__ust { grid-template-columns: 1fr; gap: 20px; margin-bottom: 36px; } }

/* Daire bölümü */
.izgara-daire { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(40px, 6vw, 96px); align-items: start; }
.izgara-daire__metin { position: sticky; top: 110px; }
.tip-sekme { display: inline-flex; padding: 4px; background: var(--kagit); border: 1px solid var(--cizgi); border-radius: 999px; margin: 12px 0 24px; flex-wrap: wrap; }
.tip-sekme__d { border: 0; background: none; padding: 10px 18px; border-radius: 999px; font-size: 14px; font-weight: 600; color: var(--ikincil); transition: background .25s, color .25s; }
.tip-sekme__d[aria-selected="true"] { background: var(--murekkep); color: #fff; }
.tip-panel__ozet { font-size: 15px; color: var(--ikincil); }
.oda-listesi { margin: 0 0 32px; }
.oda-listesi div { display: flex; align-items: baseline; gap: 12px; padding: 11px 0; border-bottom: 1px solid var(--cizgi); }
.oda-listesi dt { flex: 1; display: flex; gap: 12px; align-items: baseline; }
.oda-listesi dt::after { content: ""; flex: 1; border-bottom: 1px dotted #c9bba9; translate: 0 -4px; }
.oda-listesi dd { margin: 0; font-weight: 600; font-variant-numeric: tabular-nums; }
.oda-listesi__toplam { border-bottom: 0 !important; padding-top: 18px !important; }
.oda-listesi__toplam dt, .oda-listesi__toplam dd { font: 600 22px/1.2 var(--serif); }
.oda-listesi__toplam small { font: 400 13px var(--sans); color: var(--ikincil); }
.oda-listesi__toplam dt::after { display: none; }

.mozaik { display: grid; grid-template-columns: repeat(2, 1fr); grid-auto-rows: minmax(0, auto); gap: 14px; }
.mozaik__oge { margin: 0; position: relative; overflow: hidden; border-radius: var(--r); }
.mozaik__oge--1 { grid-column: 1 / -1; }
.mozaik__oge--1 img { aspect-ratio: 16 / 11; }
.mozaik__oge img { width: 100%; aspect-ratio: 1; object-fit: cover; transition: transform .8s var(--gecis); }
.mozaik__oge--4 img, .mozaik__oge--5 img { aspect-ratio: 4 / 5; }
.mozaik__oge:hover img { transform: scale(1.04); }
.mozaik figcaption, .serit__oge figcaption {
  position: absolute; left: 14px; bottom: 14px; padding: 6px 12px;
  background: rgba(251, 248, 243, .92); border-radius: 999px;
  font-size: 13px; font-weight: 600; pointer-events: none;
}
.galeri-ac { display: block; width: 100%; padding: 0; border: 0; background: none; cursor: zoom-in; }
@media (max-width: 900px) {
  .izgara-daire { grid-template-columns: 1fr; }
  .izgara-daire__metin { position: static; }
  .mozaik { gap: 8px; }
}

/* ---------- Daire seçici ---------- */
.secici { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: clamp(28px, 4vw, 56px); align-items: start; }
.sekmeler { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-bottom: 20px; }
.sekme {
  display: grid; gap: 2px; text-align: left; padding: 14px 16px;
  background: transparent; color: inherit;
  border: 1px solid var(--tugla-cizgi); border-radius: var(--r);
  transition: background .25s, border-color .25s, color .25s;
}
.sekme strong { font: 600 22px/1.1 var(--serif); }
.sekme small { font-size: 12px; opacity: .7; }
.sekme:hover { border-color: rgba(232, 214, 192, .45); }
.sekme[aria-selected="true"] { background: var(--bronz-acik); border-color: var(--bronz-acik); color: var(--tugla); }
.sekme[aria-selected="true"] small { opacity: .85; }

.bina { background: rgba(255, 255, 255, .03); border: 1px solid var(--tugla-cizgi); border-radius: var(--r); padding: 0 20px 20px; }
.bina__cati { display: flex; justify-content: center; margin: 0 -20px 16px; padding: 16px 0; border-bottom: 1px solid var(--tugla-cizgi); font: 500 15px/1 var(--serif); letter-spacing: .32em; color: var(--bronz-acik); }
.bina__cati .logo__v { color: inherit; }
.bina__katlar { display: grid; gap: 8px; }
.bina__kat { display: grid; grid-template-columns: 64px 1fr 1fr; gap: 8px; align-items: stretch; }
.bina__katno { align-self: center; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; opacity: .6; }
.daire {
  --renk: var(--satilik);
  position: relative; display: flex; justify-content: space-between; align-items: center; gap: 8px;
  min-height: 54px; padding: 10px 14px 10px 18px; text-align: left;
  background: rgba(255, 255, 255, .06); color: #f3ebe1;
  border: 1px solid rgba(255, 255, 255, .08); border-radius: var(--r);
  transition: background .2s, border-color .2s, transform .2s var(--gecis);
}
.daire::before { content: ""; position: absolute; left: 0; top: 8px; bottom: 8px; width: 3px; border-radius: 0 3px 3px 0; background: var(--renk); }
.daire__no { font-weight: 600; font-size: 14px; }
.daire__tip { font-size: 12px; opacity: .65; text-align: right; }
.daire[data-durum="opsiyon"] { --renk: var(--opsiyon); }
.daire[data-durum="satildi"] { --renk: var(--satildi); background: transparent; color: rgba(243, 235, 225, .42); }
.daire[data-durum="satildi"] .daire__no { text-decoration: line-through; }
.daire:hover { background: rgba(255, 255, 255, .12); border-color: rgba(255, 255, 255, .25); }
.daire[aria-pressed="true"] { background: #fbf8f3; color: var(--murekkep); border-color: #fbf8f3; }
.daire[aria-pressed="true"] .daire__tip { opacity: .75; }
.bina__kat--zemin { grid-template-columns: 64px 1fr; }
.bina__ticari { display: grid; place-items: center; min-height: 44px; border: 1px dashed var(--tugla-cizgi); border-radius: var(--r); font-size: 13px; opacity: .6; }

.lejant { list-style: none; padding: 0; margin: 18px 0 0; display: flex; flex-wrap: wrap; gap: 8px 24px; font-size: 14px; color: rgba(243, 235, 225, .78); }
.lejant li { display: flex; align-items: center; gap: 8px; }
.lejant b { color: #fff; }
.nokta { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
.nokta--satilik { background: var(--satilik); }
.nokta--opsiyon { background: var(--opsiyon); }
.nokta--satildi { background: var(--satildi); }

.kart-daire {
  position: sticky; top: 100px;
  background: var(--kagit); color: var(--murekkep);
  border-radius: var(--r); padding: 32px;
  box-shadow: 0 30px 80px -30px rgba(0, 0, 0, .6);
}
.kart-daire .ust-baslik { margin-bottom: 8px; }
.kart-daire__no { font-size: 52px; margin-bottom: 14px; }
.rozet { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 999px; font-size: 13px; font-weight: 700; background: #e3eee0; color: #2f5a2b; }
.rozet::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.rozet[data-durum="opsiyon"] { background: #f6ead3; color: #7d5512; }
.rozet[data-durum="satildi"] { background: #ece7e1; color: #6a6058; }
.kart-daire__bilgi { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 24px 0 18px; padding: 18px 0; border-block: 1px solid var(--cizgi); }
.kart-daire__bilgi div[data-k="fiyat-kutu"] { grid-column: 1 / -1; }
.kart-daire__bilgi dt { font-size: 12px; color: var(--ikincil); text-transform: uppercase; letter-spacing: .08em; }
.kart-daire__bilgi dd { margin: 4px 0 0; font: 600 20px/1.2 var(--serif); }
.kart-daire__ozellik { list-style: none; padding: 0; margin: 0 0 24px; display: grid; gap: 8px; font-size: 14px; }
.kart-daire__ozellik li { display: flex; gap: 10px; }
.kart-daire__ozellik li::before { content: ""; flex: none; width: 16px; height: 16px; margin-top: 3px; background: no-repeat center/12px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M1.5 6.5l3 3 6-7' fill='none' stroke='%237a5b3e' stroke-width='1.6'/%3E%3C/svg%3E"); }
.kart-daire__eylem { display: grid; gap: 10px; }
.kart-daire__eylem .dugme { width: 100%; }
.kart-daire__not { font-size: 13px; color: var(--ikincil); margin: 16px 0 0; }
.kart-daire--satildi .kart-daire__eylem .dugme--whatsapp { background: var(--murekkep); border-color: var(--murekkep); }

@media (max-width: 1000px) {
  .secici { grid-template-columns: 1fr; }
  .kart-daire { position: static; }
}
@media (max-width: 520px) {
  .sekmeler { gap: 6px; }
  .sekme { padding: 10px; }
  .sekme strong { font-size: 18px; }
  .bina { padding: 0 10px 12px; }
  .bina__cati { margin-inline: -10px; }
  .bina__kat { grid-template-columns: 40px 1fr 1fr; gap: 6px; }
  .bina__kat--zemin { grid-template-columns: 40px 1fr; }
  .bina__katno { font-size: 11px; letter-spacing: 0; }
  .daire { flex-direction: column; align-items: flex-start; gap: 0; padding: 8px 10px 8px 14px; }
  .daire__tip { text-align: left; }
  .kart-daire { padding: 24px 20px; }
}

/* ---------- Kat planı ---------- */
.izgara-plan { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(40px, 6vw, 96px); align-items: center; }
.artilar { list-style: none; padding: 0; margin: 8px 0 32px; display: grid; gap: 12px; }
.artilar li { padding-left: 28px; position: relative; }
.artilar li::before { content: ""; position: absolute; left: 0; top: 12px; width: 16px; height: 1px; background: var(--bronz); }
.plan-sekme { display: inline-flex; gap: 6px; }
.plan-sekme button { padding: 12px 20px; border: 1px solid var(--cizgi); background: var(--kagit); border-radius: var(--r); font-weight: 600; font-size: 14px; }
.plan-sekme button[aria-selected="true"] { background: var(--murekkep); color: #fff; border-color: var(--murekkep); }
.plan-gorsel { margin: 0; background: #fff; padding: clamp(12px, 2vw, 28px); border: 1px solid var(--cizgi); border-radius: var(--r); box-shadow: var(--golge); }
.plan-gorsel img { width: 100%; transition: opacity .3s; }
.plan-gorsel figcaption { font-size: 13px; color: var(--ikincil); margin-top: 12px; text-align: center; }
@media (max-width: 900px) { .izgara-plan { grid-template-columns: 1fr; } }

/* ---------- Galeri şeridi ---------- */
.serit {
  display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory;
  padding-inline: max(16px, calc((100vw - var(--kap)) / 2)); scroll-padding-inline: max(16px, calc((100vw - var(--kap)) / 2));
  scrollbar-width: none;
}
.serit::-webkit-scrollbar { display: none; }
.serit__oge { flex: 0 0 min(85vw, 820px); margin: 0; position: relative; scroll-snap-align: start; border-radius: var(--r); overflow: hidden; }
.serit__oge img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.serit__alt { display: flex; justify-content: space-between; align-items: center; margin-top: 28px; }
.serit__ok { display: flex; gap: 8px; }
.serit__ok button { width: 52px; height: 52px; border: 1px solid var(--murekkep); border-radius: 50%; background: none; font-size: 18px; transition: background .2s, color .2s; }
.serit__ok button:hover { background: var(--murekkep); color: #fff; }

/* ---------- Konum ---------- */
.izgara-konum { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(40px, 6vw, 96px); align-items: center; }
.mesafeler { list-style: none; padding: 0; margin: 0 0 32px; }
.mesafeler li { display: flex; justify-content: space-between; padding: 14px 0; border-bottom: 1px solid var(--cizgi); }
.mesafeler b { font-variant-numeric: tabular-nums; }
.yer-tutucu { padding: 18px 20px; border: 1px dashed #c9b49a; border-radius: var(--r); color: var(--ikincil); font-size: 14px; background: rgba(255,255,255,.5); margin-bottom: 28px; }
.harita { aspect-ratio: 4 / 3; border-radius: var(--r); overflow: hidden; background: var(--cizgi); position: relative; }
.harita iframe { width: 100%; height: 100%; border: 0; filter: grayscale(.4) sepia(.15); }
.harita__bos, .harita__bos img { width: 100%; height: 100%; object-fit: cover; }
.harita__bos span { position: absolute; inset: auto auto 16px 16px; background: var(--kagit); padding: 8px 14px; border-radius: 999px; font-size: 13px; font-weight: 600; }
@media (max-width: 900px) { .izgara-konum { grid-template-columns: 1fr; } }

/* ---------- Firma ---------- */
.izgara-firma { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(40px, 6vw, 96px); }
.adimlar { list-style: none; padding: 0; margin: 0; counter-reset: adim; }
.adimlar li { counter-increment: adim; display: grid; grid-template-columns: 64px 1fr; gap: 4px 20px; padding: 28px 0; border-bottom: 1px solid var(--cizgi); }
.adimlar li:first-child { padding-top: 0; }
.adimlar li::before { content: "0" counter(adim); grid-row: span 2; font: 500 44px/1 var(--serif); color: var(--bronz); }
.adimlar b { font: 600 24px/1.2 var(--serif); }
.adimlar span { color: var(--ikincil); }
@media (max-width: 900px) { .izgara-firma { grid-template-columns: 1fr; } }

/* ---------- SSS ---------- */
.izgara-sss { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(40px, 6vw, 96px); }
.akordeon details { border-bottom: 1px solid var(--cizgi); }
.akordeon details:first-child { border-top: 1px solid var(--cizgi); }
.akordeon summary { list-style: none; cursor: pointer; padding: 24px 48px 24px 0; position: relative; font: 600 22px/1.3 var(--serif); }
.akordeon summary::-webkit-details-marker { display: none; }
.akordeon summary::after { content: "+"; position: absolute; right: 4px; top: 50%; translate: 0 -50%; font: 300 28px/1 var(--sans); color: var(--bronz); transition: transform .3s var(--gecis); }
.akordeon details[open] summary::after { transform: rotate(45deg); }
.akordeon details p { color: var(--ikincil); padding-right: 48px; margin-bottom: 24px; }
@media (max-width: 900px) { .izgara-sss { grid-template-columns: 1fr; } }

/* ---------- CTA + form ---------- */
.bolum--cta { overflow: hidden; isolation: isolate; }
.cta__arka { position: absolute; inset: -12% 0; z-index: -1; opacity: .14; }
.cta__arka img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.4); }
.izgara-cta { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 480px); gap: clamp(40px, 6vw, 96px); align-items: center; }
.iletisim-hizli { list-style: none; padding: 0; margin: 36px 0 0; display: grid; gap: 12px; max-width: 420px; }
.iletisim-hizli a { display: grid; padding: 18px 22px; border: 1px solid var(--tugla-cizgi); border-radius: var(--r); text-decoration: none; font: 500 26px/1.2 var(--serif); transition: border-color .25s, background .25s; }
.iletisim-hizli a:hover { border-color: var(--bronz-acik); background: rgba(255,255,255,.04); }
.iletisim-hizli small { font: 600 11px/1.4 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--bronz-acik); }
.cta__form { background: var(--kagit); color: var(--murekkep); padding: clamp(24px, 3vw, 40px); border-radius: var(--r); box-shadow: 0 40px 100px -40px rgba(0,0,0,.7); }
@media (max-width: 900px) { .izgara-cta { grid-template-columns: 1fr; } }

.form { display: grid; gap: 16px; }
.form__satir { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 520px) { .form__satir { grid-template-columns: 1fr; } }
.form__bal { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.alan { display: grid; gap: 6px; min-width: 0; }
.alan label, .alan legend { font-size: 13px; font-weight: 600; }
.alan input, .alan select, .alan textarea {
  width: 100%; min-height: 50px; padding: 12px 14px;
  font: 400 16px/1.3 var(--sans); color: var(--murekkep);
  background: #fff; border: 1px solid #d3c7b8; border-radius: var(--r);
  transition: border-color .2s, box-shadow .2s;
}
.alan textarea { min-height: 110px; resize: vertical; }
.alan input:focus, .alan select:focus, .alan textarea:focus { outline: none; border-color: var(--bronz); box-shadow: 0 0 0 3px rgba(122, 91, 62, .18); }
.alan [aria-invalid="true"] { border-color: #b3261e; }
.alan--secim { border: 0; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px 20px; }
.alan--secim legend { margin-bottom: 8px; width: 100%; }
.alan--secim label { display: inline-flex; align-items: center; gap: 8px; font-weight: 500; font-size: 15px; }
.alan--secim input, .onay input { accent-color: var(--bronz); width: 18px; height: 18px; min-height: 0; margin: 0; }
.onay { display: flex; gap: 10px; align-items: flex-start; font-size: 13px; color: var(--ikincil); line-height: 1.5; }
.onay input { flex: none; margin-top: 1px; }
.alan__hata { color: #b3261e; font-size: 13px; margin: 0; }
.alan__hata:empty { display: none; }
.form__not { font-size: 13px; color: var(--ikincil); margin: 0; text-align: center; }
.form--yukleniyor button[type="submit"] { opacity: .6; pointer-events: none; }

/* ---------- Pencere (form diyaloğu) ---------- */
.pencere { border: 0; padding: 0; background: transparent; max-width: min(520px, calc(100% - 24px)); width: 100%; max-height: calc(100dvh - 24px); }
.pencere::backdrop { background: rgba(20, 14, 10, .62); backdrop-filter: blur(4px); }
.pencere__ic { background: var(--kagit); border-radius: var(--r); padding: clamp(24px, 4vw, 40px); position: relative; overflow-y: auto; max-height: calc(100dvh - 24px); }
.pencere__baslik { font-size: 34px; margin-bottom: 10px; }
.pencere__alt { color: var(--ikincil); font-size: 15px; }
.pencere__kapat { position: absolute; right: 12px; top: 12px; width: 44px; height: 44px; border: 0; background: none; font-size: 28px; line-height: 1; color: var(--ikincil); }
.pencere[open] { animation: pencere .35s var(--gecis); }
@keyframes pencere { from { opacity: 0; transform: translateY(16px); } }

/* ---------- Işık kutusu ---------- */
.isik-kutusu { position: fixed; inset: 0; z-index: 90; background: rgba(15, 10, 8, .94); display: grid; grid-template-columns: 64px 1fr 64px; align-items: center; }
.isik-kutusu[hidden] { display: none; }
.isik-kutusu figure { margin: 0; display: grid; justify-items: center; gap: 14px; padding: 24px 0; }
.isik-kutusu img { max-height: calc(100dvh - 120px); width: auto; max-width: 100%; object-fit: contain; }
.isik-kutusu figcaption { color: rgba(255,255,255,.8); font-size: 14px; }
.isik-kutusu button { background: none; border: 0; color: #fff; font-size: 40px; width: 64px; height: 64px; }
.isik-kutusu__kapat { position: absolute; top: 8px; right: 8px; }
@media (max-width: 700px) { .isik-kutusu { grid-template-columns: 0 1fr 0; } .isik-kutusu__ok { position: absolute; bottom: 12px; } .isik-kutusu__ok--geri { left: 12px; } .isik-kutusu__ok--ileri { right: 12px; } }

/* ---------- Alt bilgi ---------- */
.alt { background: #1a1310; color: rgba(243, 235, 225, .7); font-size: 15px; overflow: hidden; position: relative; }
.alt a { text-decoration: none; }
.alt__cta { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 48px; align-items: end; padding: clamp(72px, 9vw, 120px) 0 clamp(48px, 6vw, 80px); border-bottom: 1px solid rgba(255, 255, 255, .1); }
.alt__slogan { font-size: clamp(42px, 5.6vw, 80px); color: #f3ebe1; }
.alt__slogan em { color: var(--bronz-acik); }
.alt__eylem { display: grid; gap: 22px; justify-items: start; }
.alt__buyuk-tel { font: 500 clamp(34px, 3.6vw, 52px)/1 var(--serif); color: #f3ebe1; font-variant-numeric: lining-nums; background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat; padding-bottom: 6px; transition: background-size .5s var(--gecis), color .3s; }
.alt__buyuk-tel:hover { background-size: 100% 1px; color: var(--bronz-acik); }
.alt__dugmeler { display: flex; flex-wrap: wrap; gap: 10px; }

.alt__izgara { display: grid; grid-template-columns: 1fr 1fr 1fr 1.25fr; gap: 40px; padding: 56px 0; }
.alt__baslik { font: 600 11px/1.4 var(--sans); letter-spacing: .2em; text-transform: uppercase; color: var(--bronz-acik); margin-bottom: 18px; }
.alt address { font-style: normal; line-height: 1.9; }
.alt__soluk { opacity: .55; }
.alt__liste { list-style: none; padding: 0; margin: 0; display: grid; gap: 6px; }
.alt__liste a { display: inline-block; position: relative; transition: color .3s, transform .35s var(--gecis); }
.alt__liste a:hover { color: #fff; transform: translateX(6px); }
.alt__proje { margin: 0; display: grid; gap: 10px; }
.alt__proje div { display: flex; justify-content: space-between; gap: 12px; padding-bottom: 10px; border-bottom: 1px dashed rgba(255, 255, 255, .1); }
.alt__proje dt { opacity: .7; }
.alt__proje dd { margin: 0; color: #f3ebe1; font-weight: 600; }
.alt__durum { background: rgba(255, 255, 255, .04); border: 1px solid rgba(255, 255, 255, .08); border-radius: var(--r); padding: 24px; align-self: start; }
.alt__durum-sayi { display: flex; align-items: baseline; gap: 10px; margin: 0 0 14px; }
.alt__durum-sayi b { font: 500 56px/1 var(--serif); color: #f3ebe1; }
.alt__durum-cubuk { display: flex; gap: 3px; height: 6px; margin-bottom: 18px; }
.alt__durum-cubuk i { border-radius: 3px; }
.alt__durum-cubuk .satildi { background: var(--satildi); }
.alt__durum-cubuk .opsiyon { background: var(--opsiyon); }
.alt__durum-cubuk .satilik { background: var(--satilik); }
.alt__durum .bag-ok { color: #f3ebe1; font-size: 14px; }

.alt__dev {
  display: flex; justify-content: center; gap: .22em;
  padding: 0 clamp(8px, 2vw, 24px);
  font: 500 clamp(64px, 16vw, 270px)/.8 var(--serif);
  letter-spacing: -.02em; white-space: nowrap; user-select: none;
  color: transparent;
  background: linear-gradient(180deg, rgba(212, 181, 145, .55), rgba(212, 181, 145, .06) 85%);
  -webkit-background-clip: text; background-clip: text;
  margin-bottom: -.06em;
}
.alt__dev em { font-style: italic; }
.alt__dev span { display: inline-block; }

.alt__dip { display: flex; align-items: center; gap: 12px 28px; flex-wrap: wrap; padding: 22px 0 28px; border-top: 1px solid rgba(255, 255, 255, .1); font-size: 13px; position: relative; z-index: 1; background: #1a1310; }
.alt__dip span:nth-child(2) { margin-right: auto; opacity: .85; }
.alt__dip a:hover { color: #fff; }
.alt__yukari { width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .2); background: none; color: #f3ebe1; font-size: 18px; transition: background .3s, transform .4s var(--gecis); }
.alt__yukari:hover { background: var(--bronz-acik); color: var(--tugla); transform: translateY(-4px); }
@media (max-width: 1000px) { .alt__izgara { grid-template-columns: 1fr 1fr; } }
@media (max-width: 800px) {
  .alt__cta { grid-template-columns: 1fr; }
  .alt__dip span:nth-child(2) { margin-right: 0; width: 100%; order: 3; }
}
@media (max-width: 520px) { .alt__izgara { grid-template-columns: 1fr; } }

/* ---------- Mobil eylem çubuğu ---------- */
.eylem-cubugu { display: none; }
@media (max-width: 900px) {
  body { padding-bottom: calc(68px + env(safe-area-inset-bottom)); }
  .eylem-cubugu {
    display: grid; grid-template-columns: 1fr 1fr 1.3fr; gap: 6px;
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
    padding: 8px 8px calc(8px + env(safe-area-inset-bottom));
    background: rgba(251, 248, 243, .97); backdrop-filter: blur(10px);
    border-top: 1px solid var(--cizgi);
    transition: transform .35s var(--gecis);
  }
  .eylem-cubugu a { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; border-radius: var(--r); text-decoration: none; font-weight: 700; font-size: 15px; border: 1px solid var(--cizgi); background: #fff; }
  .eylem-cubugu svg { width: 20px; height: 20px; fill: currentColor; }
  .eylem-cubugu a:nth-child(2) svg { fill: var(--whatsapp); }
  .eylem-cubugu__ana { background: var(--bronz) !important; color: #fff; border-color: var(--bronz) !important; }
  .menu-acik .eylem-cubugu { transform: translateY(110%); }
}

/* ---------- İç sayfalar ---------- */
.sayfa-bas { padding: clamp(56px, 8vw, 110px) 0 clamp(32px, 4vw, 56px); border-bottom: 1px solid var(--cizgi); }
.sayfa-bas h1 { font-size: clamp(44px, 6.4vw, 88px); margin-bottom: 18px; }
.kirinti { font-size: 13px; color: var(--ikincil); margin-bottom: 28px; }
.kirinti a { text-decoration: none; }
.kirinti span { margin: 0 8px; opacity: .5; }
.metin { max-width: 720px; font-size: 17px; }
.metin h2 { font-size: 34px; margin: 1.6em 0 .5em; }
.izgara-galeri { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
.izgara-galeri figure { margin: 0; position: relative; overflow: hidden; border-radius: var(--r); }
.izgara-galeri img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .8s var(--gecis); }
.izgara-galeri figure:hover img { transform: scale(1.04); }
.izgara-galeri figcaption { padding: 10px 2px 0; font-size: 14px; color: var(--ikincil); }
.filtre { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.filtre button { padding: 10px 18px; border: 1px solid var(--cizgi); border-radius: 999px; background: var(--kagit); font-weight: 600; font-size: 14px; }
.filtre button[aria-pressed="true"] { background: var(--murekkep); color: #fff; border-color: var(--murekkep); }

/* ---------- İnşaat ilerlemesi ---------- */
.izgara-ilerleme { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(40px, 6vw, 96px); align-items: center; }
.ilerleme-kart { background: var(--kagit); border: 1px solid var(--cizgi); border-radius: var(--r); padding: clamp(24px, 3.4vw, 44px); box-shadow: var(--golge); }
.ilerleme-kart__ust { display: flex; align-items: center; gap: 32px; padding-bottom: 28px; margin-bottom: 8px; border-bottom: 1px solid var(--cizgi); flex-wrap: wrap; }
.halka { position: relative; width: 168px; height: 168px; flex: none; }
.halka svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.halka circle { fill: none; stroke-width: 7; }
.halka__iz { stroke: var(--cizgi); }
.halka__dolu { stroke: var(--bronz); stroke-linecap: round; stroke-dasharray: 100; stroke-dashoffset: calc(100 - var(--y)); transition: stroke-dashoffset 2.8s var(--gecis) .4s; }
.js .halka:not(.gorundu) .halka__dolu { stroke-dashoffset: 100; }
.halka__metin { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; }
.halka__metin b { font: 500 50px/1 var(--serif); }
.halka__metin small { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ikincil); margin-top: 4px; }
.ilerleme-kart__asama small { display: block; font-size: 11px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--ikincil); margin-bottom: 6px; }
.ilerleme-kart__asama strong { font: 500 34px/1.1 var(--serif); }
.asamalar { list-style: none; margin: 0; padding: 0; }
.asama { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) 96px; align-items: center; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--cizgi); font-size: 15px; }
.asama:last-child { border-bottom: 0; }
.asama__cubuk { height: 4px; background: var(--cizgi); border-radius: 4px; overflow: hidden; }
.asama__yuzde { text-align: right; font-weight: 600; font-size: 13px; color: var(--ikincil); }
.asama--bitti .asama__yuzde { color: var(--satilik); }
.asama--suruyor .asama__ad { font-weight: 700; }
.asama--suruyor .asama__yuzde { color: var(--bronz); }
.asama:not(.asama--bitti):not(.asama--suruyor) .asama__ad { color: var(--ikincil); }
[data-cubuk] { display: block; height: 100%; width: var(--w); background: var(--bronz); border-radius: inherit; transform-origin: left; transition: transform 2.4s var(--gecis) calc(var(--g, 0) * .18s + .4s); }
.asama--bitti [data-cubuk] { background: var(--satilik); }
.js .belir:not(.gorundu) [data-cubuk], .js .kahraman:not(.basladi) [data-cubuk] { transform: scaleX(0); }
@media (max-width: 900px) { .izgara-ilerleme { grid-template-columns: 1fr; } .asama { grid-template-columns: 1fr 80px; } .asama__cubuk { grid-column: 1 / -1; grid-row: 2; } }

/* Hero durum kartı (iki satır) */
.durum-karti { padding: 0; width: 300px; display: block; }
.durum-karti__satir { display: grid; gap: 2px; padding: 22px 26px; text-decoration: none; transition: background .3s; }
.durum-karti__satir + .durum-karti__satir { border-top: 1px solid var(--cizgi); }
.durum-karti__satir:hover { background: #fff; }
.durum-karti:hover { transform: none; }
.durum-karti .durum-karti__sayi { font-size: 44px; margin-top: 6px; }
.durum-karti__cubuk i { width: var(--w); }
@media (max-width: 900px) {
  .durum-karti { width: auto; display: grid; grid-template-columns: 1fr 1fr; padding: 0; }
  .durum-karti__satir { padding: 16px 18px; grid-template-columns: 1fr; }
  .durum-karti__satir + .durum-karti__satir { border-top: 0; border-left: 1px solid var(--cizgi); }
  .durum-karti .durum-karti__sayi { font-size: 32px; }
  .durum-karti__aciklama { font-size: 13px; }
}

/* ---------- Kayan şerit ---------- */
.kayan { overflow: hidden; background: var(--tugla); color: #f3ebe1; padding: 26px 0; border-block: 1px solid rgba(255, 255, 255, .06); }
.kayan__iz { display: flex; align-items: center; gap: 40px; width: max-content; animation: kay 42s linear infinite; }
.kayan:hover .kayan__iz { animation-play-state: paused; }
.kayan span { font: italic 500 clamp(28px, 3.4vw, 44px)/1 var(--serif); white-space: nowrap; }
.kayan i { font-style: normal; color: var(--bronz-acik); font-size: 18px; }
@keyframes kay { to { transform: translateX(-50%); } }

/* ---------- Açılış perdesi ---------- */
.acilis { position: fixed; inset: 0; z-index: 200; background: var(--tugla); color: #f3ebe1; display: grid; place-items: center; pointer-events: none; }
.acilis[hidden] { display: none; }
.acilis__ic { display: grid; justify-items: center; gap: 18px; }
.acilis__logo { display: flex; overflow: hidden; font: 500 clamp(40px, 7vw, 84px)/1 var(--serif); letter-spacing: .14em; padding-left: .14em; }
.acilis__logo span { display: inline-block; transform: translateY(105%); animation: harf-yuksel .8s var(--gecis) forwards; animation-delay: calc(var(--i) * .04s); }
.acilis__logo .v { font-style: italic; color: var(--bronz-acik); }
.acilis__logo .b { width: .35em; }
.acilis__cizgi { width: min(240px, 50vw); height: 1px; background: rgba(243, 235, 225, .2); overflow: hidden; }
.acilis__cizgi i { display: block; height: 100%; background: var(--bronz-acik); transform-origin: left; transform: scaleX(0); animation: cizgi-dol .8s var(--gecis) .25s forwards; }
.acilis__alt { font: 600 11px/1 var(--sans); letter-spacing: .4em; text-transform: uppercase; opacity: 0; animation: sol .6s .45s forwards; padding-left: .4em; }
.acilis--bitti { animation: perde-kalk .9s cubic-bezier(.77, 0, .18, 1) forwards; }
@keyframes harf-yuksel { to { transform: none; } }
@keyframes cizgi-dol { to { transform: scaleX(1); } }
@keyframes sol { to { opacity: .7; } }
@keyframes perde-kalk { to { clip-path: inset(0 0 100% 0); } }

/* ---------- Kahraman: yakınlık çipleri ---------- */
.yakin-cipler { list-style: none; padding: 0; margin: 28px 0 0; display: flex; flex-wrap: wrap; gap: 8px; }
.yakin-cipler li { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px 8px 10px; border-radius: 999px; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .22); backdrop-filter: blur(8px); font-size: 13.5px; font-weight: 600; }
.yakin-cipler .ikon { width: 18px; height: 18px; color: var(--bronz-acik); }
.yakin-cipler li::after { content: "Aynı mahallede"; font-weight: 500; font-size: 11.5px; opacity: .7; padding-left: 8px; margin-left: 2px; border-left: 1px solid rgba(255, 255, 255, .25); }
@media (max-width: 520px) { .yakin-cipler li::after { display: none; } .yakin-cipler li { font-size: 12.5px; padding: 6px 12px 6px 8px; } }

/* ---------- Konum vitrini ---------- */
.konum-vitrin { background: var(--kagit); }
.konum-izgara { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(28px, 4vw, 64px); align-items: center; }
.sema { margin: 0; background: #f1ebe1; border: 1px solid var(--cizgi); border-radius: var(--r); padding: 10px; color: #8f7a63; position: relative; overflow: hidden; }
.sema__svg { width: 100%; height: auto; display: block; }
.sema figcaption { font-size: 12.5px; color: var(--ikincil); padding: 10px 6px 2px; display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.sema figcaption a { color: var(--bronz); font-weight: 600; text-decoration: none; }
.sema__deniz-yazi { font: 600 11px var(--sans); letter-spacing: .5em; fill: #fff; opacity: .85; }
.sema__yol { fill: none; stroke: #fff; stroke-width: 9; stroke-linecap: round; }
.sema__yol--ana { stroke-width: 14; }
.sema__alan rect { fill: rgba(122, 91, 62, .08); stroke: rgba(122, 91, 62, .35); stroke-dasharray: 4 4; }
.sema__alan-yazi { font: 700 8.5px var(--sans); letter-spacing: .12em; fill: var(--bronz); }
.sema__baglanti { fill: none; stroke: var(--bronz); stroke-width: 2; stroke-dasharray: 6 6; }
.sema__nokta circle:first-child { fill: #fff; stroke: var(--bronz); stroke-width: 1.5; filter: drop-shadow(0 6px 10px rgba(47, 34, 30, .18)); }
.sema__ikon { fill: var(--bronz); }
.sema__ikon--cizgi { fill: none; stroke: var(--bronz); stroke-width: 1.6; stroke-linecap: round; }
.sema__nokta text { font: 700 12px var(--sans); fill: var(--murekkep); paint-order: stroke; stroke: #f1ebe1; stroke-width: 4px; }
.sema__ravi-zemin { fill: var(--tugla); }
.sema__ravi-v { font: italic 600 30px var(--serif); fill: var(--bronz-acik); }
.sema__ravi-yazi { font: 700 11px var(--sans); letter-spacing: .24em; fill: var(--tugla); paint-order: stroke; stroke: #f1ebe1; stroke-width: 4px; }
.sema__dalga { fill: none; stroke: var(--bronz); stroke-width: 1.5; transform-box: fill-box; transform-origin: center; animation: dalga 3.2s cubic-bezier(.2, .6, .3, 1) infinite; }
.sema__dalga--2 { animation-delay: 1.6s; }
@keyframes dalga { from { transform: scale(1); opacity: .8; } to { transform: scale(3.4); opacity: 0; } }

.poi-liste { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; counter-reset: poi; }
.poi { display: grid; grid-template-columns: 52px 1fr; gap: 18px; padding: 22px; background: var(--zemin); border: 1px solid var(--cizgi); border-radius: var(--r); transition: border-color .4s, transform .5s var(--gecis), box-shadow .5s; }
.poi:hover { border-color: #cdb8a0; transform: translateX(-6px); box-shadow: var(--golge); }
.poi__ikon { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; background: var(--tugla); color: var(--bronz-acik); }
.poi__ikon .ikon { width: 24px; height: 24px; }
.poi__ust { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; margin-bottom: 6px; }
.poi h3 { font-size: 25px; line-height: 1.15; }
.poi__etiket { font-size: 11.5px; font-weight: 700; letter-spacing: .04em; color: #2f5a2b; background: #e3eee0; padding: 3px 10px; border-radius: 999px; white-space: nowrap; }
.poi p { margin: 0; font-size: 14.5px; color: var(--ikincil); }
.poi__mesafe { margin-top: 8px !important; color: var(--murekkep) !important; }

.yatirim { margin-top: clamp(40px, 6vw, 72px); background: var(--tugla); color: #f3ebe1; border-radius: var(--r); padding: clamp(28px, 4vw, 56px); display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 24px 56px; position: relative; overflow: hidden; isolation: isolate; }
.yatirim::before { content: ""; position: absolute; right: -120px; top: -120px; width: 420px; height: 420px; border-radius: 50%; border: 1px solid rgba(212, 181, 145, .18); box-shadow: 0 0 0 60px rgba(212, 181, 145, .03), 0 0 0 120px rgba(212, 181, 145, .02); z-index: -1; }
.yatirim__baslik { font-size: clamp(32px, 3.6vw, 48px); margin-bottom: 16px; }
.yatirim__baslik em { color: var(--bronz-acik); }
.yatirim__metin p:last-child { color: rgba(243, 235, 225, .78); margin: 0; max-width: 54ch; }
.yatirim__rakamlar { margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); align-self: center; }
.yatirim__rakamlar div { padding: 4px 18px; border-left: 1px solid var(--tugla-cizgi); }
.yatirim__rakamlar dt b { font: 500 clamp(40px, 4vw, 58px)/1 var(--serif); color: #fff; }
.yatirim__rakamlar dt small { font-size: 13px; margin-left: 4px; color: var(--bronz-acik); }
.yatirim__rakamlar dd { margin: 8px 0 0; font-size: 13.5px; color: rgba(243, 235, 225, .72); }
.yatirim__eylem { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; padding-top: 8px; }
.yatirim__eylem .bag-ok { color: #f3ebe1; }
@media (max-width: 1000px) {
  .konum-izgara, .yatirim { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
  .poi { grid-template-columns: 44px 1fr; gap: 14px; padding: 18px 16px; }
  .poi__ikon { width: 44px; height: 44px; }
  .poi h3 { font-size: 22px; }
  .yatirim__rakamlar { grid-template-columns: 1fr; gap: 16px; }
  .yatirim__rakamlar div { border-left: 0; border-top: 1px solid var(--tugla-cizgi); padding: 14px 0 0; display: flex; align-items: baseline; gap: 14px; }
  .yatirim__rakamlar dd { margin: 0; }
  .yatirim__eylem .dugme { width: 100%; white-space: normal; text-align: center; }
}

/* ---------- Ek hareketler ---------- */
@media (prefers-reduced-motion: no-preference) {
  /* Üst başlık çizgisi uzar */
  .js .ust-baslik::before { width: 0; transition: width 1.2s var(--gecis) .3s; }
  .js .gorundu .ust-baslik::before, .js .ust-baslik.gorundu::before, .js .kahraman.basladi .ust-baslik::before, .js .bolum__ust.gorundu .ust-baslik::before { width: 28px; }

  /* Şematik harita: yollar çizilir, noktalar belirir */
  .js .sema .sema__yol, .js .sema .sema__baglanti { stroke-dasharray: 900; stroke-dashoffset: 900; transition: stroke-dashoffset 2.6s var(--gecis); }
  .js .sema .sema__baglanti { transition-delay: calc(1.2s + var(--g) * .35s); transition-duration: 1.8s; }
  .js .sema.gorundu .sema__yol, .js .sema.gorundu .sema__baglanti { stroke-dashoffset: 0; }
  .js .sema.gorundu .sema__baglanti { stroke-dasharray: 6 6; transition: stroke-dashoffset 1.8s var(--gecis), stroke-dasharray 0s calc(3s + var(--g) * .35s); }
  .js .sema .sema__nokta, .js .sema .sema__alan, .js .sema .sema__ravi { opacity: 0; transform-box: fill-box; transform-origin: center; transition: opacity .9s, scale 1.1s cubic-bezier(.3, 1.6, .5, 1); scale: .4; }
  .js .sema .sema__alan { transition-delay: .8s; scale: .96; }
  .js .sema .sema__ravi { transition-delay: .5s; }
  .js .sema .sema__nokta { transition-delay: calc(1.8s + var(--g) * .35s); }
  .js .sema.gorundu .sema__nokta, .js .sema.gorundu .sema__alan, .js .sema.gorundu .sema__ravi { opacity: 1; scale: 1; }
  .js .sema .sema__deniz { transform: translateY(-100%); transition: transform 1.6s var(--gecis) .2s; }
  .js .sema.gorundu .sema__deniz { transform: none; }

  /* POI kartları sağdan kayar */
  .js .poi.belir { transform: translateX(60px); }
  .js .poi.belir.gorundu { transform: none; }

  /* Yakınlık çipleri sırayla */
  .js .yakin-cipler li { opacity: 0; transform: translateY(14px); transition: opacity 1s var(--gecis), transform 1.2s var(--gecis); transition-delay: calc(1.6s + var(--i) * .18s); }
  .js .kahraman.basladi .yakin-cipler li { opacity: 1; transform: none; }
  .js .yakin-cipler.giris { opacity: 1; transform: none; }

  /* Birincil düğmelerde ışık süpürmesi */
  .dugme { position: relative; overflow: hidden; isolation: isolate; }
  .dugme::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(110deg, transparent 30%, rgba(255, 255, 255, .28) 50%, transparent 70%); transform: translateX(-120%); transition: transform 1s var(--gecis); }
  .dugme:hover::before { transform: translateX(120%); }

  /* Kaydırmaya bağlı paralaks (JS --p değişkenini yazar) */
  [data-paralaks] { translate: 0 calc(var(--p, 0) * 1px); will-change: translate; }

  /* Rakam şeridi alt çizgisi dolar */
  .js .rakamlar__ic > div::after { content: ""; position: absolute; left: 0; right: 24px; bottom: 0; height: 2px; background: var(--bronz); transform: scaleX(0); transform-origin: left; transition: transform 1.6s var(--gecis) calc(var(--g, 0) * .14s + .5s); }
  .js .rakamlar__ic > div:first-child::after { left: 0; }
  .js .rakamlar__ic > div.gorundu::after { transform: scaleX(.35); }

  /* Tip paneli değişirken yumuşak geçiş */
  .tip-panel:not([hidden]) { animation: panel-gir .9s var(--gecis); }
  .tip-panel:not([hidden]) .oda-listesi div { animation: panel-gir .9s var(--gecis) both; animation-delay: calc(var(--s, 0) * .06s); }
  @keyframes panel-gir { from { opacity: 0; transform: translateY(16px); } }

  /* Kart-daire değişince */
  .kart-daire.degisti { animation: kart-degis .7s var(--gecis); }
  @keyframes kart-degis { 0% { opacity: .35; transform: translateY(10px); } }
}

/* ---------- Animasyon sistemi ---------- */
@media (prefers-reduced-motion: no-preference) {
  /* Başlıklar: kelime kelime maskeden yükselir */
  .js [data-bol] .k { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .12em; margin-bottom: -.12em; }
  .js [data-bol] .k > span { display: inline-block; transform: translateY(115%) rotate(6deg); transform-origin: left bottom; transition: transform 1.6s var(--gecis); transition-delay: calc(var(--i) * .075s + var(--bol-gecikme, 0s)); }
  .js [data-bol].gorundu .k > span { transform: none; }

  /* Kahraman giriş sırası */
  .js .giris { opacity: 0; transform: translateY(34px); transition: opacity 1.4s var(--gecis), transform 1.6s var(--gecis); transition-delay: calc(var(--g) * .16s + .5s); }
  .js .kahraman.basladi .giris { opacity: 1; transform: none; }
  .js .durum-karti { opacity: 0; transform: translateY(60px); transition: opacity 1.4s var(--gecis) 1.5s, transform 1.8s var(--gecis) 1.5s; }
  .js .kahraman.basladi .durum-karti { opacity: 1; transform: none; }
  .kahraman__gorsel { will-change: transform; }

  /* Genel belirme */
  .js .belir { opacity: 0; transform: translateY(56px); transition: opacity 1.5s var(--gecis), transform 1.7s var(--gecis); transition-delay: calc(var(--g, 0) * .14s); }
  .js .belir.gorundu { opacity: 1; transform: none; }

  /* Görseller: perde açılır */
  .js .perde { clip-path: inset(100% 0 0 0); transition: clip-path 1.9s cubic-bezier(.77, 0, .18, 1); transition-delay: calc(var(--g, 0) * .16s); }
  .js .perde img { transform: scale(1.35); transition: transform 2.8s var(--gecis); transition-delay: calc(var(--g, 0) * .16s); }
  .js .perde.gorundu { clip-path: inset(0); }
  .js .perde.gorundu img { transform: none; }
  .js .mozaik__oge.perde.gorundu:hover img { transform: scale(1.04); }

  /* Bina: katlar zeminden yukarı doğru inşa edilir */
  .js .bina__kat { transition: opacity .8s var(--gecis), transform 1.1s var(--gecis); transition-delay: calc(var(--kat, 0) * .12s); }
  .js .bina--insa .bina__kat { opacity: 0; transform: translateY(28px) scaleY(.85); transition: none; }

  /* Rakam şeridi çizgileri */
  .js .rakamlar__ic > div { position: relative; }

  /* Alt bilgi dev yazı */
  .js .alt__dev span { transform: translateY(55%); opacity: 0; transition: transform 2.2s var(--gecis), opacity 1.8s; }
  .js .alt__dev span:last-child { transition-delay: .12s; }
  .js .alt__dev.gorundu span { transform: none; opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .kayan__iz { animation: none; }
}

/* ---------- Duyarlılık ince ayarları ---------- */
.ust__tel-yazi { white-space: nowrap; }
@media (max-width: 1180px) and (min-width: 901px) { .ust__tel-yazi { display: none; } }
@media (max-width: 1200px) {
  .yatirim { grid-template-columns: 1fr; }
  .yatirim__rakamlar div:first-child { border-left: 0; padding-left: 0; }
}
.sema__alan-yazi--alt { font-weight: 600; opacity: .8; }

/* Tablet: daire kartı iki sütun */
@media (max-width: 1000px) and (min-width: 621px) {
  .kart-daire { display: grid; grid-template-columns: 1fr 1fr; column-gap: 36px; align-items: start; }
  .kart-daire > .ust-baslik, .kart-daire__no, .kart-daire > .rozet, .kart-daire__bilgi { grid-column: 1; }
  .kart-daire > .rozet { justify-self: start; }
  .kart-daire__ozellik, .kart-daire__eylem, .kart-daire__not { grid-column: 2; }
  .kart-daire__ozellik { grid-row: 1 / span 3; margin-top: 8px; }
  .kart-daire__eylem { grid-row: 4; align-self: end; }
  .kart-daire__not { grid-row: 5; }
  .kart-daire__bilgi { margin-bottom: 0; }
}

@media (max-width: 620px) {
  /* Kahraman daha kısa */
  .kahraman__ic { padding-top: 120px; gap: 22px; }
  .kahraman h1 { margin-bottom: 18px; }
  .kahraman__alt { font-size: 15px; margin-bottom: 24px; }
  .kahraman .ust-baslik { letter-spacing: .12em; font-size: 11px; }
  .yakin-cipler { flex-wrap: nowrap; overflow-x: auto; margin: 20px -16px 0; padding: 0 16px 4px; scrollbar-width: none; scroll-snap-type: x mandatory; }
  .yakin-cipler::-webkit-scrollbar { display: none; }
  .yakin-cipler li { flex: none; scroll-snap-align: start; }
  .kahraman__eylem { gap: 10px; }
  .kahraman__eylem .dugme--buyuk { min-height: 52px; }

  /* Harita yazıları okunur boyutta */
  .sema { padding: 6px; }
  .sema__nokta text { font-size: 21px; stroke-width: 6px; }
  .sema__nokta circle:first-child { r: 26; }
  .sema__ravi-yazi { font-size: 17px; stroke-width: 6px; }
  .sema__alan-yazi { font-size: 13px; letter-spacing: .06em; }
  .sema__deniz-yazi { font-size: 16px; }
  .sema figcaption { font-size: 12px; }

  /* Alt bilgi daha derli toplu */
  .alt__liste { grid-template-columns: 1fr 1fr; column-gap: 16px; }
  .alt__izgara { gap: 32px; padding: 40px 0; }
  .alt__dip { gap: 10px 20px; }
  .alt__dip .alt__yukari { margin-left: auto; }
  .alt__cta { gap: 28px; }
  .bolum__ust { margin-bottom: 28px; }
}
@media (max-width: 380px) {
  .kahraman h1 { font-size: 42px; }
  .sekme small { font-size: 11px; }
  .daire__no { font-size: 13px; }
}
.kahraman__metin { min-width: 0; }
.kahraman__ic { grid-template-columns: minmax(0, 1fr) auto; }
@media (max-width: 900px) { .kahraman__ic { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 620px) {
  .sema__nokta--uni text { transform: translateY(-84px); }
}
.perde { overflow: hidden; }
@media (max-width: 620px) { .yakin-cipler { scroll-padding-inline: 16px; } }

/* ---------- Sade sürüm: künye, düz başlıklar ---------- */
.ust-baslik::before { display: none; }
.yakin-cipler li::after { display: none; }
.bolum__baslik { font-size: clamp(36px, 4.4vw, 58px); line-height: 1.08; }
.bolum__ust { align-items: end; }

.kahraman__konum { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 18px; font-size: 14px; font-weight: 600; color: rgba(255, 255, 255, .9); }
.kahraman__konum .ikon { width: 18px; height: 18px; color: var(--bronz-acik); }
.kahraman h1 { font-size: clamp(42px, 6vw, 84px); line-height: 1.02; }

.kunye { background: var(--kagit); border-bottom: 1px solid var(--cizgi); }
.kunye__ic { display: grid; grid-template-columns: auto 1fr; gap: 40px; align-items: center; padding-block: 34px; }
.kunye__baslik { font: 600 13px/1.3 var(--sans); color: var(--ikincil); white-space: nowrap; padding-right: 40px; border-right: 1px solid var(--cizgi); align-self: stretch; display: flex; align-items: center; }
.kunye__liste { margin: 0; display: grid; grid-template-columns: repeat(6, auto); gap: 18px 32px; justify-content: space-between; }
.kunye__liste dt { font-size: 12.5px; color: var(--ikincil); margin-bottom: 4px; }
.kunye__liste dd { margin: 0; font-weight: 700; font-size: 15px; }
@media (max-width: 1200px) { .kunye__liste { grid-template-columns: repeat(3, auto); justify-content: start; } }
@media (max-width: 760px) {
  .kunye__ic { grid-template-columns: 1fr; gap: 16px; padding-block: 26px; }
  .kunye__baslik { border: 0; padding: 0; }
  .kunye__liste { grid-template-columns: 1fr 1fr; gap: 16px 20px; }
}

.yatirim { grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
.yatirim__baslik { font-size: clamp(28px, 3vw, 40px); }
.yatirim__eylem { grid-column: auto; padding-top: 0; }
@media (max-width: 1000px) { .yatirim { grid-template-columns: 1fr; } }

.alt__slogan { font-size: clamp(36px, 4.4vw, 62px); max-width: 16ch; }
.tam-menu__liste a { gap: 0; }
.kunye__liste { grid-template-columns: repeat(7, auto); }
.kunye__liste dd { white-space: nowrap; }
@media (max-width: 1200px) { .kunye__liste { grid-template-columns: repeat(4, auto); } }
@media (max-width: 760px) { .kunye__liste { grid-template-columns: 1fr 1fr; } .kunye__liste dd { white-space: normal; } }
.yatirim::before { display: none; }
@media (max-width: 1000px) and (min-width: 761px) {
  .kunye__ic { grid-template-columns: 1fr; gap: 16px; }
  .kunye__baslik { border: 0; padding: 0; }
  .kunye__liste { grid-template-columns: repeat(4, auto); justify-content: space-between; }
}

/* ---------- Galeri ızgarası (ana sayfa) ---------- */
.galeri-izgara { display: grid; grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 12px; aspect-ratio: 16 / 7.4; }
.galeri-izgara__oge { margin: 0; position: relative; border-radius: var(--r); min-height: 0; }
.galeri-izgara__oge:first-child { grid-column: span 2; grid-row: span 2; }
.galeri-izgara__oge .galeri-ac, .galeri-izgara__oge img { width: 100%; height: 100%; }
.galeri-izgara__oge img { object-fit: cover; }
.galeri-izgara__oge.gorundu:hover img { transform: scale(1.04); transition: transform 1.2s var(--gecis); }
.galeri-izgara__oge figcaption { position: absolute; left: 12px; bottom: 12px; padding: 6px 12px; background: rgba(251, 248, 243, .92); border-radius: 999px; font-size: 13px; font-weight: 600; pointer-events: none; }
.galeri-izgara__alt { margin: 24px 0 0; text-align: right; }
@media (max-width: 800px) {
  .galeri-izgara { grid-template-columns: 1fr 1fr; grid-template-rows: none; aspect-ratio: auto; gap: 8px; }
  .galeri-izgara__oge { aspect-ratio: 4 / 3; }
  .galeri-izgara__oge:first-child { grid-column: 1 / -1; grid-row: auto; aspect-ratio: 16 / 10; }
  .galeri-izgara__oge figcaption { left: 8px; bottom: 8px; font-size: 12px; padding: 4px 10px; }
  .galeri-izgara__alt { text-align: left; }
}

/* ---------- İletişim bölümü ---------- */
.iletisim-bolum { background: var(--zemin); }
.iletisim-izgara { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 80px); align-items: stretch; }
.iletisim-gorsel { position: relative; border-radius: var(--r); min-height: 560px; }
.iletisim-gorsel img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ofis-karti { position: absolute; left: 20px; right: 20px; bottom: 20px; background: rgba(251, 248, 243, .96); backdrop-filter: blur(8px); border-radius: var(--r); padding: 24px; box-shadow: var(--golge); }
.ofis-karti h3 { font-size: 28px; margin-bottom: 14px; }
.ofis-karti dl { margin: 0 0 18px; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 20px; }
.ofis-karti dt { font-size: 12.5px; color: var(--ikincil); }
.ofis-karti dd { margin: 2px 0 0; font-weight: 600; font-size: 14.5px; }
.ofis-karti__eylem { display: flex; flex-wrap: wrap; gap: 8px; }
.ofis-karti__eylem a { display: inline-flex; align-items: center; min-height: 42px; padding: 0 16px; border: 1px solid var(--cizgi); border-radius: 999px; text-decoration: none; font-weight: 600; font-size: 14px; background: #fff; transition: border-color .3s, background .3s, color .3s; }
.ofis-karti__eylem a:first-child { background: var(--murekkep); border-color: var(--murekkep); color: #fff; font-variant-numeric: tabular-nums; }
.ofis-karti__eylem a:hover { border-color: var(--bronz); }
.iletisim-form { align-self: center; padding-block: 8px; }
.iletisim-form .bolum__giris { margin-bottom: 32px; }
@media (max-width: 1000px) {
  .iletisim-izgara { grid-template-columns: 1fr; }
  .iletisim-form { order: -1; }
  .iletisim-gorsel { min-height: 460px; }
}
@media (max-width: 520px) {
  .iletisim-gorsel { min-height: 0; aspect-ratio: auto; display: grid; overflow: hidden; }
  .iletisim-gorsel img { position: static; aspect-ratio: 16 / 10; }
  .ofis-karti { position: static; box-shadow: none; border: 1px solid var(--cizgi); border-top: 0; border-radius: 0 0 var(--r) var(--r); padding: 20px 18px; }
  .ofis-karti dl { grid-template-columns: 1fr; }
}

/* ---------- Yeni form ---------- */
.form { gap: 22px; }
.form__satir { gap: 24px; }
.form .alan { position: relative; gap: 0; }
.form .alan input {
  min-height: 60px; padding: 24px 0 8px; border: 0; border-bottom: 1.5px solid #cbbda9; border-radius: 0;
  background: transparent; font-size: 18px; font-weight: 500;
}
.form .alan input:focus { box-shadow: none; border-bottom-color: var(--murekkep); }
.form .alan label { position: absolute; left: 0; top: 20px; font-size: 16px; font-weight: 500; color: var(--ikincil); pointer-events: none; transform-origin: left top; transition: transform .3s var(--gecis), color .3s; }
.form .alan input:focus + label, .form .alan input:not(:placeholder-shown) + label { transform: translateY(-16px) scale(.78); color: var(--bronz); font-weight: 600; }
.form .alan::after { content: ""; position: absolute; left: 0; right: 0; top: 58px; height: 2px; background: var(--bronz); transform: scaleX(0); transform-origin: left; transition: transform .5s var(--gecis); }
.form .alan:focus-within::after { transform: scaleX(1); }
.form .alan__hata { margin-top: 6px; }

.secenek { border: 0; margin: 0; padding: 0; min-width: 0; }
.secenek legend { font-size: 14px; font-weight: 600; margin-bottom: 10px; padding: 0; }
.secenek__liste { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.secenek__liste--iki { grid-template-columns: 1fr 1fr; }
.secenek__kutu { position: relative; cursor: pointer; }
.secenek__kutu input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.secenek__kutu > span { display: grid; gap: 2px; height: 100%; padding: 14px 16px; border: 1px solid var(--cizgi); border-radius: var(--r); background: #fff; transition: border-color .25s, background .25s, box-shadow .25s; }
.secenek__kutu b { font-size: 14.5px; }
.secenek__kutu small { font-size: 12.5px; color: var(--ikincil); }
.secenek__kutu:hover > span { border-color: #c4ae94; }
.secenek__kutu input:checked + span { border-color: var(--murekkep); box-shadow: inset 0 0 0 1px var(--murekkep); background: var(--kagit); }
.secenek__kutu input:focus-visible + span { outline: 2px solid var(--bronz); outline-offset: 2px; }
.secenek__kutu--ikon > span { grid-template-columns: auto 1fr; align-items: center; gap: 10px; }
.secenek__kutu--ikon svg { width: 20px; height: 20px; fill: var(--ikincil); transition: fill .25s; }
.secenek__kutu--ikon input:checked + span svg { fill: var(--murekkep); }
.secenek__kutu--ikon input[value="whatsapp"]:checked + span svg { fill: var(--whatsapp); }
@media (max-width: 520px) {
  .secenek__liste { grid-template-columns: 1fr; }
  .secenek__liste--iki { grid-template-columns: 1fr 1fr; }
  .secenek__kutu--ikon > span { grid-template-columns: 1fr; justify-items: start; }
}

.onay { font-size: 13px; }
.onay a { color: var(--murekkep); }
.form__gonder { min-height: 60px; font-size: 16px; background: var(--murekkep); border-color: var(--murekkep); }
.form__gonder:hover { background: var(--bronz-koyu); border-color: var(--bronz-koyu); }
.form__gonder span { display: inline-flex; align-items: center; gap: 10px; }
.form__gonder span::after { content: "→"; transition: transform .35s var(--gecis); }
.form__gonder:hover span::after { transform: translateX(4px); }
.form--yukleniyor .form__gonder span::after { content: ""; width: 14px; height: 14px; border: 2px solid rgba(255,255,255,.4); border-top-color: #fff; border-radius: 50%; animation: don .7s linear infinite; }
@keyframes don { to { transform: rotate(360deg); } }
.form__not { text-align: left; font-size: 14px; }
.form__not a { font-weight: 700; color: var(--murekkep); text-decoration: none; font-variant-numeric: tabular-nums; }

.form__secili { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0; padding: 12px 8px 12px 16px; background: var(--kagit); border: 1px solid var(--cizgi); border-left: 3px solid var(--bronz); border-radius: var(--r); font-size: 14px; }
.form__secili span { color: var(--ikincil); }
.form__secili button { margin-left: auto; width: 32px; height: 32px; border: 0; background: none; font-size: 20px; color: var(--ikincil); }

.form-tamam { padding: 36px 0; outline: none; animation: panel-gir .8s var(--gecis); }
.form-tamam__ikon { width: 64px; height: 64px; border-radius: 50%; display: grid; place-items: center; background: #e3eee0; color: #2f5a2b; margin-bottom: 22px; }
.form-tamam__ikon svg { width: 30px; height: 30px; stroke-dasharray: 30; stroke-dashoffset: 30; animation: tik .8s var(--gecis) .2s forwards; }
@keyframes tik { to { stroke-dashoffset: 0; } }
.form-tamam__baslik { font-size: 34px; margin-bottom: 10px; }
.form-tamam p { color: var(--ikincil); }
.form-tamam__alt a { font-weight: 700; color: var(--murekkep); }

.pencere .form-kap { margin-top: 20px; }
.sayfa-bas--orta { text-align: center; }
.sayfa-bas--orta .form-tamam__ikon { margin-inline: auto; }
.sayfa-bas--orta .bolum__giris { margin-inline: auto; }
[hidden] { display: none !important; }
.pencere .secenek__kutu small { display: none; }
.pencere .secenek__kutu > span { padding: 12px 14px; align-content: center; }
.pencere .secenek__kutu b { white-space: nowrap; }
.pencere__alt { margin-bottom: 0; }
@media (max-width: 520px) {
  .pencere .secenek__liste:not(.secenek__liste--iki) { grid-template-columns: repeat(3, 1fr); }
  .pencere .secenek__kutu b { font-size: 13px; white-space: normal; }
  .pencere__baslik { font-size: 28px; padding-right: 36px; }
}
.bolum, .kunye { overflow-x: clip; }
@media (max-width: 520px) {
  .secenek__liste { grid-template-columns: repeat(3, 1fr); }
  .secenek__kutu small { display: none; }
  .secenek__kutu > span { padding: 12px; align-content: center; }
  .secenek__kutu b { font-size: 13.5px; }
  .secenek__kutu--ikon > span { grid-template-columns: auto 1fr; justify-items: start; align-items: center; }
  .galeri-izgara__oge:not(:first-child) figcaption { display: none; }
}
@media (max-width: 520px) { .secenek__liste.secenek__liste--iki { grid-template-columns: 1fr 1fr; } }

/* ---------- İç sayfalar ---------- */
.ic-sayfa .sayfa-bas { padding: clamp(40px, 6vw, 80px) 0 clamp(28px, 4vw, 44px); background: var(--kagit); }
.sayfa-bas h1 { font-size: clamp(40px, 5.6vw, 76px); line-height: 1.04; margin-bottom: 16px; }
.sayfa-bas .bolum__giris { margin: 0; }
.kirinti { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 13.5px; margin-bottom: 22px; }
.kirinti a { color: var(--ikincil); text-decoration: none; padding: 6px 0; }
.kirinti a:hover { color: var(--murekkep); text-decoration: underline; }
.kirinti span[aria-hidden] { opacity: .45; margin: 0; }
.kirinti [aria-current] { color: var(--murekkep); font-weight: 600; }
.bolum--ust-bosluk-az { padding-top: clamp(32px, 4vw, 56px); }
.gizli { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.not-metni { font-size: 13.5px; color: var(--ikincil); margin-top: 18px; }
.bos-durum { padding: 28px; border: 1px dashed #c9b49a; border-radius: var(--r); color: var(--ikincil); background: rgba(255, 255, 255, .5); }
.uyari { margin: 24px 0 0; padding: 14px 18px; border-left: 3px solid #b3261e; background: #fbecea; color: #7a1a14; border-radius: var(--r); font-weight: 600; }

.tablo-kap { overflow-x: auto; border: 1px solid var(--cizgi); border-radius: var(--r); background: #fff; margin-top: 24px; }
.tablo { width: 100%; border-collapse: collapse; font-size: 14.5px; min-width: 640px; }
.tablo th, .tablo td { text-align: left; padding: 12px 16px; border-bottom: 1px solid var(--cizgi); white-space: nowrap; }
.tablo th { font-size: 12.5px; font-weight: 600; color: var(--ikincil); background: var(--kagit); position: sticky; top: 0; }
.tablo tbody tr:hover { background: var(--kagit); }
.tablo__satir--satildi td { color: var(--ikincil); }
.tablo__bag { font-weight: 700; color: var(--bronz-koyu); text-decoration: none; display: inline-block; padding: 8px 0; }
.tablo__bag:hover { text-decoration: underline; }

.plan-ikili { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(16px, 3vw, 40px); }
.plan-ikili .plan-gorsel figcaption b { color: var(--murekkep); }
@media (max-width: 760px) { .plan-ikili { grid-template-columns: 1fr; } }
.tip-kartlari { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; margin-top: 32px; }
.tip-karti { background: #fff; border: 1px solid var(--cizgi); border-radius: var(--r); padding: clamp(22px, 3vw, 36px); display: grid; gap: 8px; align-content: start; }
.tip-karti h3 { font-size: 32px; margin-bottom: 6px; }
.tip-karti header p { color: var(--ikincil); margin-bottom: 6px; }
.tip-karti__adet { font-weight: 700; color: var(--murekkep) !important; font-size: 14px; }

.adres-karti { background: var(--kagit); border: 1px solid var(--cizgi); border-radius: var(--r); padding: clamp(22px, 3vw, 36px); display: grid; gap: 12px; align-content: start; }
.adres-karti h2 { font-size: 32px; }
.adres-karti__adres { font-size: 17px; font-weight: 600; margin-bottom: 8px; }
.konum-izgara .poi-liste { margin-top: 28px; }

.gelisme-listesi { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; margin-top: 24px; }
.gelisme-karti { background: #fff; border: 1px solid var(--cizgi); border-radius: var(--r); overflow: hidden; display: grid; }
.gelisme-karti__gorsel img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.gelisme-karti__metin { padding: 20px 22px 24px; }
.gelisme-karti time { font-size: 13px; color: var(--ikincil); }
.gelisme-karti h3 { font-size: 26px; margin: 6px 0 8px; }
.gelisme-karti h3 a { text-decoration: none; }
.gelisme-karti h3 a:hover { text-decoration: underline; }
.gelisme-karti p { color: var(--ikincil); margin: 0; font-size: 15px; }
.metin__gorsel { margin: 0 0 24px; border-radius: var(--r); overflow: hidden; }
.metin__gorsel img { width: 100%; }

.filtre button { min-height: 44px; }
.filtre small { opacity: .6; font-weight: 500; margin-left: 4px; }
.izgara-galeri figure[hidden] { display: none !important; }
.konum-izgara > *, .iletisim-izgara > *, .izgara-ilerleme > *, .izgara-sss > *, .izgara-plan > *, .izgara-daire > *, .secici > * { min-width: 0; }
.adres-karti .dugme, .yatirim__eylem .dugme { white-space: normal; text-align: center; line-height: 1.3; padding-block: 12px; }
.adres-karti__adres { overflow-wrap: anywhere; }
.kart-daire__eylem .dugme, .alt__dugmeler .dugme, .ofis-karti__eylem a { white-space: normal; text-align: center; line-height: 1.3; }

/* ---------- Çerez bandı ---------- */
.cerez { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 80; max-width: 560px; background: var(--kagit); border: 1px solid var(--cizgi); border-radius: var(--r); box-shadow: var(--golge); padding: 18px 20px; display: grid; gap: 12px; font-size: 14px; }
.cerez p { margin: 0; color: var(--ikincil); }
.cerez a { color: var(--murekkep); }
.cerez__eylem { display: flex; gap: 8px; justify-content: flex-end; }
.cerez__eylem .dugme { min-height: 44px; flex: 1; }
.alt__cerez { background: none; border: 0; color: inherit; font: inherit; font-size: 13px; padding: 10px 0; cursor: pointer; text-decoration: underline; }
@media (max-width: 900px) { .cerez { bottom: calc(76px + env(safe-area-inset-bottom)); left: 8px; right: 8px; } }

/* ---------- Dokunma alanları ve kontrast ---------- */
.onay input, .alan--secim input { width: 22px; height: 22px; }
.bag-ok { padding-top: 12px; }
.sema figcaption a, .duyuru a { display: inline-block; padding: 10px 0; }
.duyuru a { padding: 4px 0; }
.form__not a, .kahraman__konum { min-height: 24px; }
.asama__yuzde { color: #5c534b; }
.alt__liste { gap: 0; }
.alt__liste a, .alt address a { display: inline-block; padding: 9px 0; }
.alt address { line-height: 1.6; }

/* =====================================================================
   Mobil yenileme: alt çubuk, menü, daire tipleri, SSS, form, alt bilgi
   ===================================================================== */

/* ---------- Daire tipi sekmesi (tüm genişlikler) ---------- */
.tip-sekme { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; width: 100%; max-width: 460px; padding: 5px; border-radius: 14px; margin: 8px 0 18px; flex-wrap: nowrap; }
.tip-sekme__d { display: grid; gap: 2px; justify-items: start; text-align: left; padding: 11px 14px; border-radius: 10px; }
.tip-sekme__d b { font-size: 14.5px; color: var(--murekkep); transition: color .25s; }
.tip-sekme__d small { font-size: 12.5px; font-weight: 500; color: var(--ikincil); transition: color .25s; }
.tip-sekme__d[aria-selected="true"] b { color: #fff; }
.tip-sekme__d[aria-selected="true"] small { color: rgba(255, 255, 255, .72); }
.tip-panel { max-width: 460px; }

/* ---------- SSS ---------- */
.akordeon { display: grid; gap: 10px; }
.akordeon details, .akordeon details:first-child { border: 1px solid var(--cizgi); border-radius: 14px; background: var(--kagit); transition: border-color .3s, background .3s, box-shadow .3s; }
.akordeon details[open] { background: #fff; border-color: #cdbba5; box-shadow: 0 14px 34px -24px rgba(47, 34, 30, .45); }
.akordeon summary { padding: 20px 64px 20px 22px; font: 600 17px/1.4 var(--sans); letter-spacing: -.005em; }
.akordeon summary::after {
  content: ""; right: 18px; width: 30px; height: 30px; border-radius: 50%;
  background: var(--zemin) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5' fill='none' stroke='%237a5b3e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px no-repeat;
  transition: transform .35s var(--gecis), background-color .3s;
}
.akordeon details[open] summary::after { transform: rotate(180deg); background-color: var(--bronz-acik); }
.akordeon details p { padding: 0 22px; margin: -4px 0 22px; font-size: 15.5px; line-height: 1.7; }
.sss-yardim { margin-top: 28px; padding: 24px; border-radius: 16px; background: var(--tugla); color: #f3ebe1; max-width: 440px; }
.sss-yardim__baslik { font: 500 26px/1.15 var(--serif); margin-bottom: 8px; }
.sss-yardim__metin { font-size: 14.5px; color: rgba(243, 235, 225, .75); margin-bottom: 18px; }
.sss-yardim__eylem { display: grid; grid-template-columns: 1fr; gap: 8px; }
.sss-yardim .dugme { border-radius: 12px; padding: 0 12px; font-size: 14px; }
@media (max-width: 520px) { .sss-yardim__eylem { grid-template-columns: 1fr; } .sss-yardim .dugme { min-height: 52px; font-size: 15px; } }
.sss-yardim .dugme--cizgi { color: #f3ebe1; border-color: rgba(243, 235, 225, .35); font-variant-numeric: tabular-nums; }
.sss-yardim .dugme--cizgi:hover { background: #f3ebe1; color: var(--tugla); }
.izgara-sss > div:first-child { align-self: start; position: sticky; top: 110px; }

/* ---------- Form kartı ---------- */
.form-kap { background: #fff; border: 1px solid var(--cizgi); border-radius: 18px; padding: clamp(20px, 3vw, 32px); box-shadow: 0 30px 70px -40px rgba(47, 34, 30, .45); }
.pencere .form-kap { background: none; border: 0; padding: 0; box-shadow: none; }
.form { gap: 18px; }
.form__satir { gap: 12px; }
.form .alan input {
  min-height: 60px; padding: 24px 16px 8px; font-size: 17px;
  background: var(--kagit); border: 1px solid var(--cizgi); border-radius: 12px;
  transition: border-color .25s, background .25s, box-shadow .25s;
}
.form .alan input:focus { background: #fff; border-color: var(--bronz); box-shadow: 0 0 0 4px rgba(122, 91, 62, .14); }
.form .alan label { left: 17px; top: 19px; }
.form .alan input:focus + label, .form .alan input:not(:placeholder-shown) + label { transform: translateY(-11px) scale(.76); }
.form .alan::after { display: none; }
.secenek legend { font-size: 13.5px; margin-bottom: 8px; }
.secenek__kutu > span { border-radius: 12px; background: var(--kagit); }
.secenek__kutu input:checked + span { background: #fff; }
.form__gonder { border-radius: 12px; }
.form__secili { border-radius: 12px; }

/* ---------- Mobil: 900px ve altı ---------- */
@media (max-width: 900px) {
  /* Alt eylem çubuğu: koyu, yüzen, iki ikon + ana düğme */
  body { padding-bottom: calc(84px + env(safe-area-inset-bottom)); }
  .eylem-cubugu {
    grid-template-columns: 66px 66px minmax(0, 1fr); gap: 2px;
    left: 10px; right: 10px; bottom: calc(10px + env(safe-area-inset-bottom));
    padding: 6px; border: 0; border-radius: 20px;
    background: rgba(36, 26, 22, .94); backdrop-filter: saturate(1.4) blur(14px); -webkit-backdrop-filter: saturate(1.4) blur(14px);
    box-shadow: 0 18px 40px -14px rgba(20, 12, 8, .55);
    transition: transform .55s var(--gecis), opacity .4s;
  }
  .eylem-cubugu--gizli { transform: translateY(calc(100% + 24px)); opacity: 0; pointer-events: none; }
  .menu-acik .eylem-cubugu { transform: translateY(calc(100% + 24px)); }
  .eylem-cubugu a { min-height: 54px; border: 0; background: none; color: #f3ebe1; }
  .eylem-cubugu__ikon { flex-direction: column; gap: 3px !important; border-radius: 14px !important; font-size: 11px !important; font-weight: 600 !important; letter-spacing: .02em; transition: background .25s; }
  .eylem-cubugu__ikon:active { background: rgba(255, 255, 255, .08); }
  .eylem-cubugu__ikon svg { width: 22px !important; height: 22px !important; }
  .eylem-cubugu__ikon span { opacity: .8; }
  .eylem-cubugu a.eylem-cubugu__ikon--wa svg { fill: #4fd17f; }
  .eylem-cubugu__ana { border-radius: 14px !important; background: #f3ebe1 !important; color: var(--tugla) !important; font-size: 15.5px !important; letter-spacing: 0; }
  .eylem-cubugu__ana::after { content: "→"; margin-left: 8px; }
  .cerez { bottom: calc(92px + env(safe-area-inset-bottom)); }

  /* Menü: küçük görselli satırlar + altta iletişim */
  .tam-menu__ic { padding: 96px 0 calc(28px + env(safe-area-inset-bottom)); gap: 28px; min-height: 100%; align-content: space-between; }
  .tam-menu__liste li { border-bottom-color: rgba(232, 214, 192, .1); }
  .tam-menu__liste a {
    display: grid; grid-template-columns: 52px minmax(0, 1fr) 20px; grid-template-areas: "g a o" "g s o";
    align-items: center; column-gap: 14px; row-gap: 1px; padding: 11px 0;
    font: 500 25px/1.1 var(--serif);
  }
  .tam-menu__liste a::after { content: "→"; grid-area: o; font: 400 17px/1 var(--sans); color: rgba(243, 235, 225, .4); transition: transform .3s var(--gecis), color .3s; }
  .tam-menu__liste a:active::after { transform: translateX(4px); color: var(--bronz-acik); }
  .tam-menu__kucuk { display: block !important; grid-area: g; width: 52px; height: 52px; border-radius: 10px; object-fit: cover; background: var(--tugla-2); }
  .tam-menu__liste span { grid-area: a; align-self: end; }
  .tam-menu__liste a:hover span { transform: none; font-style: normal; }
  .tam-menu__liste small.tam-menu__alt { display: block; grid-area: s; align-self: start; width: auto; font: 500 12.5px/1.35 var(--sans); letter-spacing: 0; color: rgba(243, 235, 225, .55); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .tam-menu__liste a[aria-current] .tam-menu__kucuk { box-shadow: 0 0 0 2px var(--bronz-acik); }
  .tam-menu__bilgi { display: none; }
  .tam-menu__eylem { display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px; }
  .tam-menu__dugme { display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 54px; border-radius: 14px; background: #f3ebe1; color: var(--tugla); text-decoration: none; font-weight: 700; font-size: 15px; }
  .tam-menu__dugme svg { width: 20px; height: 20px; fill: currentColor; }
  .tam-menu__dugme--wa { background: var(--whatsapp); color: #fff; }
  .tam-menu__durum { grid-column: 1 / -1; margin: 6px 0 0; display: flex; align-items: center; justify-content: center; gap: 8px; font-size: 13px; color: rgba(243, 235, 225, .6); }
  .tam-menu__durum i { width: 7px; height: 7px; border-radius: 50%; background: #6fbf68; }

  /* Daireler: fotoğraflar kaydırmalı şerit, oda listesi iki sütun kart */
  .izgara-daire { display: flex; flex-direction: column; gap: 0; }
  .izgara-daire__metin { display: contents; }
  .izgara-daire__metin > .bolum__baslik, .izgara-daire__metin > .bolum__giris { order: 0; }
  .mozaik {
    order: 1; display: flex; gap: 10px; margin: 6px -16px 28px; padding: 0 16px;
    overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 16px; scrollbar-width: none; overscroll-behavior-x: contain;
  }
  .mozaik::-webkit-scrollbar { display: none; }
  .mozaik__oge, .mozaik__oge--1 { flex: 0 0 78%; scroll-snap-align: start; border-radius: 14px; translate: none !important; }
  .mozaik__oge img, .mozaik__oge--1 img, .mozaik__oge--4 img, .mozaik__oge--5 img { aspect-ratio: 4 / 5; }
  .izgara-daire__metin > .tip-sekme, .izgara-daire__metin > .tip-panel, .izgara-daire__metin > .bag-ok { order: 2; }
  .izgara-daire__metin > .bag-ok { align-self: flex-start; }
  .tip-sekme { max-width: none; margin-top: 0; }
  .tip-panel { max-width: none; background: var(--kagit); border: 1px solid var(--cizgi); border-radius: 16px; padding: 18px 18px 6px; margin-bottom: 24px; }
  .tip-panel__ozet { margin-bottom: 14px; }
  .oda-listesi { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 12px; }
  .oda-listesi div { display: grid; gap: 2px; padding: 10px 12px; border: 0 !important; border-radius: 10px; background: var(--zemin); }
  .oda-listesi dt { display: block; font-size: 12.5px; color: var(--ikincil); line-height: 1.3; }
  .oda-listesi dt::after { display: none; }
  .oda-listesi dd { font-size: 16px; }
  .oda-listesi .oda-listesi__toplam { grid-column: 1 / -1; grid-template-columns: 1fr auto; align-items: center; padding: 14px !important; background: var(--tugla); color: #f3ebe1; }
  .oda-listesi__toplam dt { color: #f3ebe1; font-size: 19px; }
  .oda-listesi__toplam dd { font-size: 24px; }
  .oda-listesi__toplam small { display: block; color: rgba(243, 235, 225, .65); font-size: 12px; }

  /* SSS */
  .izgara-sss { gap: 8px; }
  .izgara-sss > div:first-child { position: static; display: contents; }
  .izgara-sss .sss-yardim { order: 2; margin-top: 18px; max-width: none; }
  .izgara-sss .akordeon { order: 1; }

  /* İletişim: görsel yerine sade ofis kartı */
  .iletisim-form .bolum__giris { margin-bottom: 22px; }
  .iletisim-gorsel { min-height: 0; display: block; overflow: visible; }
  .iletisim-gorsel > img, .iletisim-gorsel > picture { display: none; }
  .js .iletisim-gorsel.perde { clip-path: none; }
  .ofis-karti { position: static; padding: 22px 20px; box-shadow: none; border: 1px solid var(--cizgi); border-radius: 18px; background: var(--kagit); }
  .ofis-karti h3 { font-size: 26px; margin-bottom: 12px; }
  .ofis-karti dl { grid-template-columns: 1fr; gap: 10px; margin-bottom: 16px; }
  .ofis-karti__eylem { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .ofis-karti__eylem a { justify-content: center; min-height: 48px; border-radius: 12px; }
  .ofis-karti__eylem a:first-child { grid-column: 1 / -1; font-size: 16px; }

  /* Alt bilgi: kısa ve düzenli */
  .alt__cta { padding: 64px 0 36px; gap: 22px; }
  .alt__slogan { font-size: 36px; }
  .alt__eylem { gap: 18px; justify-items: stretch; }
  .alt__buyuk-tel { font-size: 34px; justify-self: start; }
  .alt__dugmeler { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .alt__dugmeler .dugme { border-radius: 12px; padding: 0 12px; min-height: 52px; }
  .alt__izgara { grid-template-columns: 1fr; gap: 28px; padding: 32px 0 36px; }
  .alt__kolon--proje, .alt__durum { display: none; }
  .alt__baslik { margin-bottom: 8px; }
  .alt__liste { grid-template-columns: 1fr 1fr; column-gap: 16px; }
  .alt__liste a { padding: 8px 0; }
  .alt__dev { font-size: 16.5vw; padding: 8px 0 14px; gap: .14em; margin-bottom: 0; translate: none !important; }
  .alt__dip { display: grid; grid-template-columns: 1fr auto; gap: 4px 16px; padding: 18px 0 22px; }
  .alt__dip > span:first-child { grid-row: 1; grid-column: 1; color: #f3ebe1; }
  .alt__dip > a { grid-row: 2; grid-column: 1; padding: 6px 0; }
  .alt__dip > span:nth-child(2) { grid-row: 3; grid-column: 1 / -1; width: auto; margin: 6px 0 0; font-size: 12px; opacity: .6; }
  .alt__dip .alt__cerez { grid-row: 4; grid-column: 1; justify-self: start; }
  .alt__yukari { grid-row: 1 / 3; grid-column: 2; align-self: center; }
}
.tam-menu__kucuk, .tam-menu__alt, .tam-menu__eylem { display: none; }
.menu-ac:focus-visible { outline: none; }
.menu-ac:focus-visible .menu-ac__cizgi { outline: 2px solid var(--bronz-acik); outline-offset: 3px; }
.form, .form-kap, .form__satir > *, .secenek__liste > * { min-width: 0; }
.secenek__liste { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.secenek__liste.secenek__liste--iki { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
@media (max-width: 380px) {
  .form-kap { padding: 16px 14px; }
  .secenek__kutu > span { padding: 10px; }
  .secenek__kutu b { font-size: 12.5px; overflow-wrap: anywhere; }
  .secenek__kutu--ikon > span { gap: 6px; }
  .eylem-cubugu { grid-template-columns: 60px 60px minmax(0, 1fr); }
  .eylem-cubugu__ana { font-size: 14px !important; }
}
@media (max-width: 900px) { .mozaik__oge, .mozaik__oge--1 { flex-basis: min(78%, 360px); } }

/* =====================================================================
   Tek düğme sistemi
   Bütün düğmeler aynı köşe (12px), aynı yükseklik ve yazı. Üç renk var:
   ana = bronz dolgu, ikincil = çerçeve, WhatsApp = yeşil. İkon düğmeleri de
   aynı köşeyle kare. Kartlar 16px.
   ===================================================================== */
.dugme, .form__gonder, .eylem-cubugu__ana, .eylem-cubugu__ikon, .tam-menu__dugme, .ofis-karti__eylem a,
.ust__cta, .ust--dolu .ust__cta, .alt__dugmeler .dugme, .sss-yardim .dugme, .cerez__eylem .dugme,
.menu-ac__cizgi, .ust__ikon, .alt__yukari, .isik-kutusu__kapat, .isik-kutusu__ok, .pencere__kapat,
.plan-sekme button, .filtre button, .sekme, .secenek__kutu > span, .form .alan input, .yakin-cipler li, .yakin-cipler a {
  border-radius: var(--r) !important;
}
.dugme { min-height: 52px; padding: 0 24px; font: 700 15px/1.2 var(--sans); letter-spacing: 0; border-width: 1px; }
.dugme--buyuk { min-height: 56px; font-size: 16px; }
.dugme--kucuk { min-height: 44px; padding: 0 18px; font-size: 14px; }
.ust__cta { min-height: 44px !important; }

/* Ana düğme: her yerde bronz */
.dugme:not(.dugme--cizgi):not(.dugme--seffaf):not(.dugme--whatsapp),
.kahraman .dugme:not(.dugme--seffaf), .ust--saydam:not(.ust--dolu) .ust__cta, .menu-acik .ust__cta,
.form__gonder, .eylem-cubugu__ana {
  background: var(--bronz) !important; border-color: var(--bronz) !important; color: #fff !important;
}
.dugme:not(.dugme--cizgi):not(.dugme--seffaf):not(.dugme--whatsapp):hover,
.form__gonder:hover, .eylem-cubugu__ana:hover { background: var(--bronz-koyu) !important; border-color: var(--bronz-koyu) !important; }

/* İkincil: çerçeveli. Koyu zeminde açık çerçeve. */
.dugme--cizgi { background: transparent; color: var(--murekkep); border-color: var(--murekkep); }
.bolum--koyu .dugme--cizgi:not(.kart-daire *), .alt .dugme--cizgi, .sss-yardim .dugme--cizgi, .yatirim .dugme--cizgi {
  color: #f3ebe1; border-color: rgba(243, 235, 225, .45);
}
.dugme--seffaf { background: rgba(255, 255, 255, .06); color: #fff; border-color: rgba(255, 255, 255, .6); }

/* WhatsApp */
.dugme--whatsapp, .tam-menu__dugme--wa { background: var(--whatsapp) !important; border-color: var(--whatsapp) !important; color: #fff !important; }

/* Menüdeki ve ofis kartındaki düğmeler aynı sisteme */
.tam-menu__dugme:not(.tam-menu__dugme--wa) { background: transparent; color: #f3ebe1; border: 1px solid rgba(243, 235, 225, .45); }
.tam-menu__dugme { min-height: 52px; font-size: 15px; }
.ofis-karti__eylem a { min-height: 52px; padding: 0 18px; font-size: 15px; font-weight: 700; justify-content: center; background: transparent; border: 1px solid var(--murekkep); color: var(--murekkep); }
.ofis-karti__eylem a:first-child { background: var(--bronz); border-color: var(--bronz); color: #fff; }
.ofis-karti__eylem a:nth-child(2) { background: var(--whatsapp); border-color: var(--whatsapp); color: #fff; }

/* Alt çubuk: ana düğme bronz, ikonlar sade */
.eylem-cubugu__ana::after { content: none !important; }

/* Seçim düğmeleri (sekme, filtre): aynı köşe, seçili olan koyu */
.plan-sekme button, .filtre button { min-height: 44px; padding: 0 18px; }
.plan-sekme button[aria-selected="true"], .filtre button[aria-pressed="true"], .filtre button.aktif { background: var(--murekkep); border-color: var(--murekkep); color: #fff; }

/* Kartlar */
.akordeon details, .akordeon details:first-child, .sss-yardim, .form-kap, .ofis-karti, .tip-panel, .kart-daire,
.adres-karti, .yatirim, .ilerleme-kart, .poi { border-radius: var(--r-kart) !important; }
.tip-sekme { border-radius: var(--r-kart); }
.tip-sekme__d { border-radius: 10px; }
.mozaik__oge, .galeri-izgara__oge, .plan-gorsel, .iletisim-gorsel { border-radius: var(--r) !important; }

/* Kayan üst kapsül: düğmelerle uyumlu yuvarlak köşe */
.ust--dolu .ust__ic { border-radius: 20px; }
.eylem-cubugu { border-radius: 18px !important; }
/* Düğmelerde ok yok; ok yalnızca altı çizili metin bağlantılarında (.bag-ok). */
.dugme--ok span::after, .form__gonder span::after { content: none !important; }
.form--yukleniyor .form__gonder span::after { content: "" !important; }
/* Footer'ın altında açık renk boşluk kalmasın: alt çubuk footer'da zaten gizleniyor,
   gövdeye boşluk gerekmez. iOS'ta sayfa sonu esnemesinde de koyu renk görünür. */
html { background: #1a1310; }
@media (max-width: 900px) { body { padding-bottom: 0; } }
@media (max-width: 900px) { .alt__dip { padding-bottom: calc(22px + env(safe-area-inset-bottom)); } }

/* İnşaat durumu: her etap ayrı kart */
.etap-kartlari { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: clamp(16px, 2.4vw, 28px); margin-top: clamp(28px, 4vw, 48px); align-items: start; }
.etap-k__ust { display: flex; align-items: center; gap: 22px; padding-bottom: 20px; border-bottom: 1px solid var(--cizgi); }
.halka--kucuk { width: 104px; height: 104px; }
.halka--kucuk .halka__metin b { font-size: 32px; }
.etap-k__baslik { display: grid; gap: 6px; justify-items: start; min-width: 0; }
.etap-k__ad { font: 500 30px/1.05 var(--serif); }
.etap-k__not { margin: 0; font-size: 14px; color: var(--ikincil); }
.etap-k__durum { font-weight: 600; font-size: 13px; padding: 5px 12px; border-radius: 999px; background: var(--cizgi); color: #5c534b; white-space: nowrap; }
.etap-k--suruyor { border-color: var(--bronz); }
.etap-k--suruyor .etap-k__durum { background: #f3e6d6; color: var(--bronz); }
.etap-k--bitti .etap-k__durum { background: #e5efe1; color: var(--satilik); }
.etap-k--bitti .halka__dolu { stroke: var(--satilik); }
.etap-k .asama { grid-template-columns: minmax(0, 1fr) auto; padding: 11px 0; font-size: 14.5px; border-bottom-style: dashed; }
.asama__ad small { display: block; font-weight: 400; font-size: 13px; color: var(--ikincil); margin-top: 2px; }
.asama--sirada .asama__ad { color: var(--ikincil); }
@media (max-width: 600px) { .halka--kucuk { width: 88px; height: 88px; } .halka--kucuk .halka__metin b { font-size: 27px; } .etap-k__ad { font-size: 25px; } .etap-k__ust { gap: 16px; } }

/* Logodaki "V": Lucida Calligraphy harfinin SVG çizimi (logo_v()), her cihazda aynı */
.logo-v { display: inline-block; height: .98em; width: auto; vertical-align: -.03em; margin: 0 .02em; overflow: visible; }
.logo__v, .acilis__logo .v { font-style: normal; }
