/*
Theme Name: Ankara Dekor Mobilya
Theme URI: https://bisasoft.com
Author: Bisasoft
Description: Ankara Dekor Mobilya icin ozel blok tema — "Vitrin". Reklam trafigini ucretsiz kesif randevusuna cevirmek uzere kuruldu: mobil oncelikli kurgu, tek baskin cagri, bento urun vitrini.
Version: 0.2.0
Requires at least: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: ankara-dekor-mobilya
*/

/* ──────────────────────────────────────────────────────────
 * PALET — koyu kabuk, sicak zemin.
 *
 * Mobilya fotografi en iyi koyu cercevede okunuyor; urun one ciksin diye
 * arayuz geri cekildi. Marka turuncusu TEK vurgu rengi: sayfada turuncu
 * olan her sey tiklanabilir. Bu kural bozulursa turuncunun cagri gucu duser.
 * ────────────────────────────────────────────────────────── */

:root {
  --v-zemin: #fbfaf7;
  --v-krem: #f2ebe1;
  --v-koyu: #17120e;
  --v-koyu-2: #241d17;
  --v-murekkep: #211913;
  --v-govde: #5c5249;
  --v-soluk: #8f857a;
  --v-cizgi: #e6ded2;
  --v-turuncu: #f5891f;
  --v-turuncu-koyu: #dc7409;
  --v-gutter: 1.15rem;
}

@media (min-width: 1024px) { :root { --v-gutter: 2.5rem; } }

/* ── Taban ─────────────────────────────────────────────── */

/*
 * KUTU MODELI — tema genelinde border-box.
 *
 * Yoktu ve mobilde yatay tasmaya yol aciyordu: `.v-kap` genislik %100 + yan
 * bosluk 2.3rem aliyor, toplam viewport'u asiyordu. Sayfa saga kayiyor,
 * dugmeler ekranin disina tasiyordu. Ayni sorun form alanlarinda da vardi.
 */
*, *::before, *::after { box-sizing: border-box; }

body {
  margin: 0;
  font-family: "Inter", system-ui, -apple-system, sans-serif;
  color: var(--v-govde);
  background: var(--v-zemin);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, .v-display {
  font-family: "Outfit", "Inter", system-ui, sans-serif;
  letter-spacing: -0.025em;
  line-height: 1.1;
  text-wrap: balance;
}
h1, h2, h3, h4 { color: var(--v-murekkep); }
img { max-width: 100%; height: auto; }

.v-bolum { padding-block: 3.5rem; scroll-margin-top: 4rem; }
@media (min-width: 1024px) { .v-bolum { padding-block: 6rem; } }

.v-kap { margin-inline: auto; max-width: 1280px; padding-inline: var(--v-gutter); }

/* Ikonlar — satir ici SVG, rengi baglamdan alir */
.v-ikon { width: 1.15rem; height: 1.15rem; flex: none; }
.v-ikon--kucuk { width: 0.85rem; height: 0.85rem; opacity: 0.5; }
.v-ikon--turuncu { color: var(--v-turuncu); }
.v-ikon--soluk { color: var(--v-soluk); width: 1rem; height: 1rem; }

.v-logo { height: 1.75rem; width: auto; display: block; }
@media (min-width: 1024px) { .v-logo { height: 2.25rem; } }
.v-logo--ters { filter: brightness(0) invert(1); height: 2rem; }
.v-logo-yazi { font-family: "Outfit", sans-serif; font-size: 1.05rem; font-weight: 700; color: var(--v-murekkep); }

/* ── Ortak parcalar ────────────────────────────────────── */

.v-etiket {
  display: inline-flex; align-items: center; gap: 0.5rem;
  font-size: 0.72rem; font-weight: 600; text-transform: uppercase;
  letter-spacing: 0.14em; color: var(--v-turuncu);
}
.v-etiket::before { content: ""; width: 0.375rem; height: 0.375rem; border-radius: 999px; background: var(--v-turuncu); }

.v-baslik   { font-size: clamp(1.75rem, 4vw, 2.7rem); font-weight: 700; margin: 1rem 0 0; }
.v-baslik-l { font-size: clamp(2.15rem, 6vw, 3.85rem); font-weight: 700; line-height: 1.04; margin: 1rem 0 0; }
.v-metin    { font-size: clamp(0.98rem, 2vw, 1.05rem); line-height: 1.7; color: var(--v-govde); }
.v-dar      { max-width: 42rem; }

.v-cagri {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
  min-height: 52px; padding-inline: 1.75rem; border-radius: 999px;
  font-size: 0.97rem; font-weight: 600; text-decoration: none;
  transition: all 0.2s ease; border: 0; cursor: pointer; font-family: inherit;
}
.v-cagri--dolu { background: var(--v-turuncu); color: #fff; box-shadow: 0 6px 20px -6px rgba(245,137,31,0.55); }
.v-cagri--dolu:hover { background: var(--v-turuncu-koyu); color: #fff; }
.v-cagri--acik { border: 1px solid var(--v-cizgi); background: #fff; color: var(--v-murekkep); }
.v-cagri--acik:hover { border-color: var(--v-turuncu); }
.v-cagri--hayalet { border: 1px solid rgba(255,255,255,0.25); color: #fff; }
.v-cagri--hayalet:hover { border-color: rgba(255,255,255,0.6); color: #fff; }
.v-cagri--tam { width: 100%; }
@media (min-width: 640px) { .v-cagri--tam { width: auto; } }

/* Metin baglantisi — "Tum yazilar", "Aradiginizi bulamadiniz mi" */
.v-bag {
  display: inline-flex; align-items: center; gap: 0.5rem;
  font-size: 0.93rem; font-weight: 600; color: var(--v-turuncu); text-decoration: none;
}
.v-bag .v-ikon { width: 1rem; height: 1rem; }

.v-yildiz { display: inline-flex; gap: 0.1rem; color: var(--v-turuncu); }
.v-yildiz .v-ikon { width: 0.9rem; height: 0.9rem; }

/* ── UST ───────────────────────────────────────────────────
 * Menu TAM ama SESSIZ: tek baskin oge turuncu kesif dugmesi.
 * Acilista seffaf, kaydirilinca zemin belirir.
 * ────────────────────────────────────────────────────────── */

.v-ust {
  position: sticky; top: 0; z-index: 40;
  border-bottom: 1px solid transparent;
  transition: background-color 0.3s, border-color 0.3s;
}
.v-ust[data-kaydi="1"] {
  background: rgba(251,250,247,0.95);
  backdrop-filter: blur(10px);
  border-bottom-color: var(--v-cizgi);
}
.v-ust__ic { display: flex; align-items: center; justify-content: space-between; gap: 1rem; height: 4rem; }
@media (min-width: 1024px) { .v-ust__ic { height: 5rem; } }
.v-ust__marka { display: flex; align-items: center; flex: none; text-decoration: none; }

.v-ust__menu { display: none; align-items: center; gap: 1.75rem; }
@media (min-width: 1024px) { .v-ust__menu { display: flex; } }
.v-ust__oge { position: relative; }
.v-ust__oge > a {
  display: flex; align-items: center; gap: 0.25rem; padding-block: 0.5rem;
  font-size: 0.92rem; font-weight: 500; color: var(--v-govde);
  text-decoration: none; transition: color 0.15s;
}
.v-ust__oge > a:hover { color: var(--v-murekkep); }

/* Urunlerimiz acilir listesi — canli sitedeki mega menunun karsiligi */
.v-ust__alt {
  position: absolute; left: 50%; top: 100%; width: 15rem;
  transform: translateX(-50%); padding-top: 0.25rem;
  visibility: hidden; opacity: 0; transition: opacity 0.2s, visibility 0.2s;
}
.v-ust__oge:hover .v-ust__alt, .v-ust__oge:focus-within .v-ust__alt { visibility: visible; opacity: 1; }
.v-ust__alt-ic {
  overflow: hidden; border: 1px solid var(--v-cizgi); border-radius: 12px;
  background: #fff; padding: 0.375rem;
  box-shadow: 0 12px 36px -12px rgba(33,25,19,0.25);
}
.v-ust__alt-ic a {
  display: flex; align-items: center; min-height: 38px; padding-inline: 0.75rem;
  border-radius: 8px; font-size: 0.87rem; color: var(--v-govde); text-decoration: none;
}
.v-ust__alt-ic a:hover { background: var(--v-krem); color: var(--v-murekkep); }

.v-ust__sag { display: flex; align-items: center; gap: 0.625rem; }
.v-ust__tel { display: inline-flex; align-items: center; gap: 0.5rem; font-size: 0.92rem; font-weight: 600; color: var(--v-murekkep); text-decoration: none; }
.v-ust__tel-yazi { display: none; }
@media (min-width: 640px) { .v-ust__tel-yazi { display: inline; } .v-ust__tel-kisa { display: none; } }
.v-ust__cagri { display: none; min-height: 44px; padding-inline: 1.25rem; font-size: 0.92rem; }
@media (min-width: 1024px) { .v-ust__cagri { display: inline-flex; } }
.v-ust__hamburger {
  display: flex; align-items: center; justify-content: center;
  width: 2.75rem; height: 2.75rem; border: 0; background: none;
  color: var(--v-murekkep); cursor: pointer;
}
.v-ust__hamburger .v-ikon { width: 1.5rem; height: 1.5rem; }
@media (min-width: 1024px) { .v-ust__hamburger { display: none; } }

/* ── MOBIL CEKMECE — tam ekran, satirlar 56px ──────────── */

.v-cekmece {
  position: fixed; inset: 0; z-index: 50;
  display: flex; flex-direction: column; background: var(--v-zemin);
}
@media (min-width: 1024px) { .v-cekmece { display: none !important; } }
.v-cekmece__ust {
  display: flex; align-items: center; justify-content: space-between;
  height: 4rem; padding-inline: var(--v-gutter); border-bottom: 1px solid var(--v-cizgi);
}
.v-cekmece__kapat {
  display: flex; align-items: center; justify-content: center;
  width: 2.75rem; height: 2.75rem; border: 0; background: none; color: var(--v-murekkep); cursor: pointer;
}
.v-cekmece__kapat .v-ikon { width: 1.5rem; height: 1.5rem; }
.v-cekmece__menu { flex: 1; overflow-y: auto; padding: 0.5rem var(--v-gutter); }
.v-cekmece__bag, .v-cekmece__ac {
  display: flex; align-items: center; justify-content: space-between; width: 100%;
  min-height: 56px; border: 0; border-bottom: 1px solid var(--v-cizgi); background: none;
  font-family: "Outfit", sans-serif; font-size: 1.05rem; font-weight: 600;
  color: var(--v-murekkep); text-decoration: none; cursor: pointer; text-align: left;
}
.v-cekmece__grup { border-bottom: 1px solid var(--v-cizgi); }
.v-cekmece__grup .v-cekmece__ac { border-bottom: 0; }
.v-cekmece__ac[aria-expanded="true"] .v-ikon { transform: rotate(180deg); }
.v-cekmece__ac .v-ikon { transition: transform 0.2s; color: var(--v-soluk); }
.v-cekmece__alt { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; padding-bottom: 1rem; }
.v-cekmece__alt a {
  display: flex; align-items: center; min-height: 50px; padding-inline: 0.75rem;
  border: 1px solid var(--v-cizgi); border-radius: 8px; background: #fff;
  font-size: 0.87rem; font-weight: 500; color: var(--v-murekkep); text-decoration: none;
}
.v-cekmece__alt-cagri { border-top: 1px solid var(--v-cizgi); background: #fff; padding: 1rem; }
.v-cekmece__alt-cagri .v-cagri { width: 100%; }
.v-cekmece__tel {
  display: flex; align-items: center; justify-content: center; gap: 0.5rem;
  min-height: 48px; margin-top: 0.625rem; font-size: 0.95rem; font-weight: 600;
  color: var(--v-murekkep); text-decoration: none;
}

/* ── ACILIS ────────────────────────────────────────────────
 * Sira bilincli: baslik → tek cumle → BASKIN CAGRI → guven → gorsel.
 * ────────────────────────────────────────────────────────── */

.v-acilis { position: relative; overflow: hidden; background: var(--v-zemin); }
.v-acilis::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(120% 80% at 85% 0%, rgba(242,235,225,0.9), transparent 60%);
}
.v-acilis__ic { position: relative; padding-block: 2rem 2.5rem; }
@media (min-width: 1024px) {
  .v-acilis__ic { display: grid; grid-template-columns: 1.02fr 1fr; align-items: center; gap: 4rem; padding-block: 3.5rem 5rem; }
}
.v-acilis__ust { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 1rem; }
.v-puan { display: inline-flex; align-items: center; gap: 0.4rem; font-size: 0.85rem; color: var(--v-govde); }
.v-acilis__alt { margin-top: 1.25rem; max-width: 36rem; font-size: clamp(1.02rem,2.2vw,1.12rem); line-height: 1.65; color: var(--v-govde); }
.v-acilis__cagrilar { margin-top: 1.75rem; display: flex; flex-direction: column; gap: 0.65rem; }
@media (min-width: 640px) { .v-acilis__cagrilar { flex-direction: row; align-items: center; } }
.v-acilis__ikili { display: flex; gap: 0.65rem; }
.v-acilis__ikili .v-cagri { flex: 1; padding-inline: 1.25rem; font-size: 0.95rem; }
@media (min-width: 640px) { .v-acilis__ikili .v-cagri { flex: none; } }
.v-acilis__not { margin-top: 0.75rem; font-size: 0.86rem; color: var(--v-soluk); }
.v-acilis__sag { position: relative; margin-top: 2.25rem; }
@media (min-width: 1024px) { .v-acilis__sag { margin-top: 0; } }
.v-acilis__sag figure { margin: 0; overflow: hidden; border-radius: 20px; background: var(--v-koyu); }
.v-acilis__sag picture { display: block; height: 100%; }
@media (min-width: 1024px) { .v-acilis__sag figure { border-radius: 26px; } }
.v-acilis__sag img { width: 100%; aspect-ratio: 16/11; object-fit: cover; display: block; }
@media (min-width: 1024px) { .v-acilis__sag img { aspect-ratio: 4/3.4; } }

.v-guven {
  position: relative; margin: -1.75rem auto 0; width: 92%;
  display: grid; grid-template-columns: repeat(3,1fr); gap: 1px;
  overflow: hidden; border: 1px solid var(--v-cizgi); border-radius: 1rem;
  background: var(--v-cizgi); box-shadow: 0 10px 30px -14px rgba(33,25,19,0.28);
}
@media (min-width: 1024px) { .v-guven { margin-top: -2.25rem; width: 88%; } }
.v-guven div { background: #fff; padding: 0.875rem 0.625rem; text-align: center; }
@media (min-width: 1024px) { .v-guven div { padding: 1.25rem 1rem; } }
.v-guven b { display: block; font-size: 0.95rem; font-weight: 700; color: var(--v-murekkep); }
@media (min-width: 1024px) { .v-guven b { font-size: 1.1rem; } }
.v-guven small { display: block; margin-top: 0.15rem; font-size: 0.72rem; line-height: 1.25; color: var(--v-soluk); }

/* ── VITRIN — bento izgara (temanin ayirt edici parcasi) ───
 *
 * 15 urun grubu tek duzlemde; boyut bilgi tasiyor (en buyuk kutu = en cok
 * is alinan kalem). Mobil 2 sutun: tek sutun on bes ekran kaydirma demek.
 * Masaustu 4 sutun + dense akis, tarayici bosluklari kendi doldurur.
 * ────────────────────────────────────────────────────────── */

.v-vitrin__ust { display: grid; gap: 1.25rem; }
@media (min-width: 1024px) { .v-vitrin__ust { grid-template-columns: 1fr auto; align-items: end; gap: 2.5rem; } }
.v-vitrin__ust .v-bag { display: none; }
@media (min-width: 1024px) { .v-vitrin__ust .v-bag { display: inline-flex; } }

.v-bento {
  display: grid; grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 0.625rem; grid-auto-flow: dense; margin: 1.75rem 0 0; padding: 0; list-style: none;
}
@media (min-width: 640px)  { .v-bento { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 0.75rem; } }
@media (min-width: 1024px) { .v-bento { grid-template-columns: repeat(4, minmax(0,1fr)); gap: 0.875rem; margin-top: 2.75rem; } }
.v-bento > li { margin: 0; }
.v-bento > li.v-kart--buyuk { grid-column: span 2; grid-row: span 2; }
.v-bento > li.v-kart--genis { grid-column: span 2; }

.v-kart {
  position: relative; display: block; height: 100%; overflow: hidden;
  border-radius: 14px; background: var(--v-koyu); text-decoration: none; isolation: isolate;
}
@media (min-width: 1024px) { .v-kart { border-radius: 18px; } }
.v-kart img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.5s ease; }
.v-kart:hover img { transform: scale(1.04); }

/* Kart oranlari — boya gore degisir, izgarada ritim kurar */
.v-kart--normal img { aspect-ratio: 4/5; }
@media (min-width: 640px)  { .v-kart--normal img { aspect-ratio: 4/3; } }
.v-kart--genis img { aspect-ratio: 4/3; }
@media (min-width: 640px)  { .v-kart--genis img { aspect-ratio: 16/9; } }
.v-kart--buyuk img { aspect-ratio: 1/1; }
@media (min-width: 1024px) { .v-kart--buyuk img { aspect-ratio: auto; height: 100%; position: absolute; inset: 0; } }

/* Karartma — urun adi fotografin uzerinde her zaman okunmali */
.v-kart::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(23,18,14,0.9) 0%, rgba(23,18,14,0.35) 45%, rgba(23,18,14,0.04) 100%);
}
.v-kart__yazi { position: absolute; inset-inline: 0; bottom: 0; z-index: 1; padding: 0.75rem; }
@media (min-width: 1024px) { .v-kart__yazi { padding: 1.25rem; } }
.v-kart__kat { display: block; font-size: 0.66rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.12em; color: var(--v-turuncu); }
.v-kart__ad {
  display: block; margin-top: 0.25rem; font-family: "Outfit", sans-serif;
  font-size: 0.92rem; font-weight: 700; line-height: 1.2; color: #fff;
}
@media (min-width: 1024px) { .v-kart__ad { font-size: 1.1rem; } }
.v-kart--buyuk .v-kart__ad { font-size: 1.05rem; }
@media (min-width: 1024px) { .v-kart--buyuk .v-kart__ad { font-size: 1.7rem; } }

/* Ozet yalniz buyuk ve genis kartlarda — kucuk kartta okunmaz */
.v-kart__ozet { display: none; margin-top: 0.375rem; max-width: 28rem; font-size: 0.86rem; line-height: 1.4; color: rgba(255,255,255,0.75); }
@media (min-width: 640px) { .v-kart--buyuk .v-kart__ozet, .v-kart--genis .v-kart__ozet { display: block; } }

/* Ozellik rozetleri — yalniz en buyuk kartta, genis ekranda */
.v-kart__rozetler { display: none; }
@media (min-width: 1024px) {
  .v-kart--buyuk .v-kart__rozetler { display: flex; flex-wrap: wrap; gap: 0.375rem; margin-top: 0.75rem; }
}
.v-kart__rozet {
  border: 1px solid rgba(255,255,255,0.25); border-radius: 999px;
  padding: 0.25rem 0.625rem; font-size: 0.72rem; color: rgba(255,255,255,0.85);
}
.v-vitrin__mobil-bag { display: flex; margin-top: 1.5rem; }
@media (min-width: 1024px) { .v-vitrin__mobil-bag { display: none; } }

/* ── HAKKIMIZDA ───────────────────────────────────────── */

.v-hakkinda { background: var(--v-krem); }
.v-hakkinda__ic { display: grid; gap: 2.25rem; }
@media (min-width: 1024px) { .v-hakkinda__ic { grid-template-columns: 1fr 1fr; align-items: center; gap: 4rem; } }
.v-hakkinda figure { margin: 0; overflow: hidden; border-radius: 20px; }
@media (min-width: 1024px) { .v-hakkinda figure { border-radius: 26px; } }
.v-hakkinda img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.v-liste { list-style: none; margin: 1.75rem 0 0; padding: 0; display: grid; gap: 0.625rem; }
@media (min-width: 640px) { .v-liste { grid-template-columns: 1fr 1fr; gap: 0.625rem 1.5rem; } }
.v-liste li { display: flex; gap: 0.625rem; font-size: 0.9rem; color: var(--v-murekkep); }
.v-liste .v-ikon { width: 1rem; height: 1rem; margin-top: 0.2rem; color: var(--v-turuncu); }
.v-hakkinda__adres { margin-top: 1.5rem; font-size: 0.86rem; color: var(--v-soluk); }

/* ── NEDEN — tek cerceve icinde alti kutu, numarali ────── */

.v-neden__izgara {
  display: grid; gap: 1px; margin-top: 1.75rem; overflow: hidden;
  border: 1px solid var(--v-cizgi); border-radius: 16px; background: var(--v-cizgi);
}
@media (min-width: 640px)  { .v-neden__izgara { grid-template-columns: repeat(2,1fr); } }
@media (min-width: 1024px) { .v-neden__izgara { grid-template-columns: repeat(3,1fr); margin-top: 2.75rem; } }
.v-neden__kutu { background: #fff; padding: 1.25rem; }
@media (min-width: 1024px) { .v-neden__kutu { padding: 1.75rem; } }
.v-neden__no { font-size: 0.75rem; font-weight: 600; letter-spacing: 0.1em; color: var(--v-turuncu); }
.v-neden__kutu h3 { margin: 0.625rem 0 0.5rem; font-size: 1.05rem; font-weight: 700; line-height: 1.3; }
.v-neden__kutu p { margin: 0; font-size: 0.9rem; line-height: 1.6; color: var(--v-govde); }

/* ── BEKLENTI — koyu, sayfanin tek agirlik noktasi ─────── */

.v-beklenti { background: var(--v-koyu); }
.v-beklenti__ic { display: grid; gap: 2.25rem; }
@media (min-width: 1024px) { .v-beklenti__ic { grid-template-columns: 1fr 1.25fr; gap: 4rem; } }
.v-beklenti h2 { color: #fff; }
.v-beklenti__giris { margin-top: 1.25rem; max-width: 28rem; font-size: 1rem; line-height: 1.7; color: rgba(255,255,255,0.65); }
.v-beklenti__cagri-genis { display: none; margin-top: 1.75rem; }
@media (min-width: 1024px) { .v-beklenti__cagri-genis { display: inline-flex; } }
.v-beklenti__cagri-dar { display: inline-flex; width: 100%; margin-top: 2rem; }
@media (min-width: 1024px) { .v-beklenti__cagri-dar { display: none; } }
.v-adimlar { list-style: none; margin: 0; padding: 0; display: grid; gap: 1px; }
.v-adim {
  display: flex; gap: 1rem; padding: 1rem; border-radius: 12px;
  background: rgba(255,255,255,0.04); transition: background-color 0.2s;
}
@media (min-width: 1024px) { .v-adim { gap: 1.5rem; padding: 1.5rem; } }
.v-adim:hover { background: rgba(255,255,255,0.07); }
.v-adim__no {
  display: flex; align-items: center; justify-content: center; flex: none;
  width: 2.25rem; height: 2.25rem; border: 1px solid var(--v-turuncu); border-radius: 999px;
  font-family: "Outfit", sans-serif; font-size: 0.85rem; font-weight: 700; color: var(--v-turuncu);
}
@media (min-width: 1024px) { .v-adim__no { width: 2.75rem; height: 2.75rem; font-size: 0.95rem; } }
.v-adim__baslik { display: block; font-family: "Outfit", sans-serif; font-size: 1.02rem; font-weight: 700; color: #fff; }
@media (min-width: 1024px) { .v-adim__baslik { font-size: 1.15rem; } }
.v-adim__desc { display: block; margin-top: 0.375rem; font-size: 0.9rem; line-height: 1.6; color: rgba(255,255,255,0.6); }

/* ── PROJELER — mobilde kaydirma seridi, masaustunde 2x2 ── */

.v-projeler { background: var(--v-krem); }
.v-projeler__serit { display: flex; gap: 0.625rem; overflow-x: auto; padding: 0 var(--v-gutter) 0.25rem; margin-top: 1.75rem; scrollbar-width: none; }
.v-projeler__serit::-webkit-scrollbar { display: none; }
@media (min-width: 1024px) { .v-projeler__serit { display: none; } }
.v-projeler__serit figure { flex: none; width: 72vw; max-width: 300px; margin: 0; }
.v-projeler__serit img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 16px; display: block; }
.v-projeler__serit figcaption { margin-top: 0.5rem; font-size: 0.8rem; color: var(--v-soluk); }

.v-projeler__izgara { display: none; }
@media (min-width: 1024px) {
  .v-projeler__izgara { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; margin-top: 2.75rem; }
}
.v-projeler__izgara figure { margin: 0; overflow: hidden; border-radius: 16px; }
.v-projeler__izgara figure:first-child { grid-column: span 2; grid-row: span 2; }
.v-projeler__izgara img { width: 100%; height: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; transition: transform 0.5s ease; }
.v-projeler__izgara figure:first-child img { aspect-ratio: auto; }
.v-projeler__izgara figure:hover img { transform: scale(1.04); }
.v-orta { display: flex; justify-content: center; margin-top: 2rem; }

/* ── YORUMLAR ─────────────────────────────────────────── */

.v-yorumlar__izgara { display: grid; gap: 0.75rem; margin-top: 1.75rem; }
@media (min-width: 1024px) { .v-yorumlar__izgara { grid-template-columns: repeat(3,1fr); gap: 1.25rem; margin-top: 2.75rem; } }
.v-yorum {
  display: flex; flex-direction: column; margin: 0; padding: 1.25rem;
  border-radius: 16px; background: #fff; box-shadow: 0 2px 14px -8px rgba(33,25,19,0.18);
}
@media (min-width: 1024px) { .v-yorum { padding: 1.75rem; } }
.v-yorum .v-ikon { width: 1.5rem; height: 1.5rem; color: var(--v-turuncu); opacity: 0.4; }
.v-yorum blockquote { flex: 1; margin: 0.75rem 0 0; font-size: 0.96rem; line-height: 1.65; color: var(--v-murekkep); }
.v-yorum figcaption {
  display: flex; align-items: center; justify-content: space-between;
  margin-top: 1.25rem; padding-top: 1rem; border-top: 1px solid var(--v-cizgi);
}
.v-yorum__kisi { display: block; font-size: 0.9rem; font-weight: 600; color: var(--v-murekkep); }
.v-yorum__tarih { display: block; font-size: 0.78rem; color: var(--v-soluk); }

/* ── BLOG ─────────────────────────────────────────────── */

.v-blog { background: var(--v-krem); }
.v-blog__ust { display: grid; gap: 1rem; }
@media (min-width: 1024px) { .v-blog__ust { grid-template-columns: 1fr auto; align-items: end; gap: 2.5rem; } }
.v-blog__ust .v-bag { display: none; }
@media (min-width: 1024px) { .v-blog__ust .v-bag { display: inline-flex; } }
.v-blog__izgara { display: grid; gap: 0.75rem; margin-top: 1.5rem; }
@media (min-width: 1024px) { .v-blog__izgara { grid-template-columns: repeat(2,1fr); gap: 1.25rem; margin-top: 2.5rem; } }
.v-blog__kart {
  display: block; padding: 1.25rem; border: 1px solid var(--v-cizgi); border-radius: 16px;
  background: #fff; text-decoration: none; transition: border-color 0.2s;
}
@media (min-width: 1024px) { .v-blog__kart { padding: 1.75rem; } }
.v-blog__kart:hover { border-color: rgba(245,137,31,0.5); }
.v-blog__kat { display: block; font-size: 0.72rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.12em; color: var(--v-turuncu); }
.v-blog__kart h3 { margin: 0.625rem 0 0; font-size: 1.08rem; font-weight: 700; line-height: 1.3; }
@media (min-width: 1024px) { .v-blog__kart h3 { font-size: 1.2rem; } }
.v-blog__kart p { margin: 0.625rem 0 0; font-size: 0.9rem; line-height: 1.6; color: var(--v-govde); }
.v-blog__oku { display: inline-flex; align-items: center; gap: 0.375rem; margin-top: 1rem; font-size: 0.87rem; font-weight: 600; color: var(--v-turuncu); }
.v-blog__oku .v-ikon { width: 1rem; height: 1rem; transition: transform 0.2s; }
.v-blog__kart:hover .v-blog__oku .v-ikon { transform: translate(2px,-2px); }

/* ── SORULAR — itiraz karsilama ────────────────────────── */

.v-sorular__ic { display: grid; gap: 1.75rem; }
@media (min-width: 1024px) { .v-sorular__ic { grid-template-columns: 0.85fr 1.15fr; gap: 4rem; } }
.v-sorular__giris { display: none; margin-top: 1rem; font-size: 0.98rem; line-height: 1.7; color: var(--v-govde); }
@media (min-width: 1024px) { .v-sorular__giris { display: block; } }
.v-soru { overflow: hidden; border: 1px solid var(--v-cizgi); border-radius: 12px; background: rgba(255,255,255,0.6); transition: border-color 0.2s, background-color 0.2s; }
.v-soru + .v-soru { margin-top: 0.625rem; }
.v-soru[data-acik="1"] { border-color: rgba(245,137,31,0.4); background: #fff; }
.v-soru__baslik {
  display: flex; align-items: center; gap: 1rem; width: 100%; min-height: 60px;
  padding: 0.875rem 1rem; border: 0; background: none; cursor: pointer; text-align: left;
  font-family: "Outfit", sans-serif; font-size: 0.97rem; font-weight: 600; color: var(--v-murekkep);
}
@media (min-width: 1024px) { .v-soru__baslik { padding-inline: 1.25rem; font-size: 1.04rem; } }
.v-soru__baslik span:first-child { flex: 1; line-height: 1.35; }
.v-soru__isaret {
  display: flex; align-items: center; justify-content: center; flex: none;
  width: 2rem; height: 2rem; border-radius: 999px;
  background: var(--v-krem); color: var(--v-murekkep); transition: background-color 0.2s, color 0.2s;
}
.v-soru[data-acik="1"] .v-soru__isaret { background: var(--v-turuncu); color: #fff; }
.v-soru__isaret .v-eksi { display: none; }
.v-soru[data-acik="1"] .v-soru__isaret .v-eksi { display: block; }
.v-soru[data-acik="1"] .v-soru__isaret .v-arti { display: none; }
.v-soru__cevap { padding: 0 1rem 1rem; margin: 0; font-size: 0.92rem; line-height: 1.7; color: var(--v-govde); }
@media (min-width: 1024px) { .v-soru__cevap { padding: 0 3.5rem 1.25rem 1.25rem; } }

/* ── KAPANIS — sayfadaki her cagrinin vardigi yer ──────── */

.v-kapanis { background: var(--v-zemin); }
.v-kapanis__kutu { position: relative; overflow: hidden; border-radius: 22px; background: var(--v-koyu); padding: 1.5rem; }
@media (min-width: 640px)  { .v-kapanis__kutu { padding: 2.5rem; } }
@media (min-width: 1024px) { .v-kapanis__kutu { border-radius: 30px; padding: 3.5rem; } }
.v-kapanis__kutu::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(90% 70% at 100% 0%, rgba(245,137,31,0.16), transparent 58%);
}
.v-kapanis__ic { position: relative; display: grid; gap: 2rem; }
@media (min-width: 1024px) { .v-kapanis__ic { grid-template-columns: 1.1fr 0.9fr; align-items: center; gap: 3.5rem; } }
.v-kapanis h2 { color: #fff; }
.v-kapanis__desc { margin-top: 1rem; max-width: 32rem; font-size: 1rem; line-height: 1.7; color: rgba(255,255,255,0.65); }
.v-kapanis__guven { list-style: none; display: flex; flex-wrap: wrap; gap: 0.5rem 1.25rem; margin: 1.5rem 0 0; padding: 0; }
.v-kapanis__guven li { display: flex; align-items: center; gap: 0.375rem; font-size: 0.86rem; color: rgba(255,255,255,0.8); }
.v-kapanis__guven .v-ikon { width: 1rem; height: 1rem; color: var(--v-turuncu); }
.v-kapanis__tel {
  display: flex; align-items: center; justify-content: center; gap: 0.625rem;
  width: 100%; min-height: 60px; border-radius: 999px; background: var(--v-turuncu);
  font-size: 1.05rem; font-weight: 700; color: #fff; text-decoration: none; transition: background-color 0.2s;
}
.v-kapanis__tel:hover { background: var(--v-turuncu-koyu); color: #fff; }
.v-kapanis__wa {
  display: flex; align-items: center; justify-content: center; gap: 0.625rem;
  width: 100%; min-height: 56px; margin-top: 0.625rem; border: 1px solid rgba(255,255,255,0.25);
  border-radius: 999px; font-size: 0.98rem; font-weight: 600; color: #fff; text-decoration: none;
}
.v-kapanis__wa:hover { border-color: rgba(255,255,255,0.6); color: #fff; }
.v-kapanis__adres { display: flex; gap: 0.75rem; margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid rgba(255,255,255,0.12); }
.v-kapanis__adres p { margin: 0; font-size: 0.85rem; line-height: 1.6; color: rgba(255,255,255,0.55); }
.v-kapanis__adres .v-ikon { color: var(--v-turuncu); margin-top: 0.15rem; }

/* ── ALT ──────────────────────────────────────────────── */

.v-alt { background: var(--v-koyu-2); padding-block: 2.5rem 3rem; }
@media (min-width: 1024px) { .v-alt { padding-block: 3.5rem; } }
.v-alt__ic { display: grid; gap: 2rem; }
@media (min-width: 1024px) { .v-alt__ic { grid-template-columns: 1.5fr 1fr 1fr; gap: 3.5rem; } }
.v-alt h4 { color: var(--v-turuncu); font-size: 0.72rem; text-transform: uppercase; letter-spacing: 0.14em; font-weight: 600; margin: 0 0 0.875rem; }
.v-alt a { display: flex; align-items: center; min-height: 36px; color: rgba(255,255,255,0.65); text-decoration: none; font-size: 0.87rem; transition: color 0.15s; }
.v-alt a:hover { color: #fff; }
.v-alt__tel { font-weight: 600; color: #fff !important; }
.v-alt__tanit { margin: 1rem 0 0; max-width: 24rem; font-size: 0.88rem; line-height: 1.7; color: rgba(255,255,255,0.55); }
.v-alt__adres { margin: 0.5rem 0 0; font-size: 0.84rem; line-height: 1.6; color: rgba(255,255,255,0.45); }
.v-alt__telif {
  display: flex; flex-direction: column; gap: 0.75rem; margin-top: 2.25rem;
  padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,0.1);
  font-size: 0.8rem; color: rgba(255,255,255,0.4);
}
@media (min-width: 640px) { .v-alt__telif { flex-direction: row; align-items: center; justify-content: space-between; } }
.v-alt__yasal { display: flex; flex-wrap: wrap; gap: 0 1.25rem; }
.v-alt__yasal a { font-size: 0.8rem; color: rgba(255,255,255,0.4); }

/* ── Ic sayfalar ──────────────────────────────────────── */

.v-sayfa { padding-block: 2.5rem 3.5rem; }
.v-sayfa__baslik { margin-bottom: 1.5rem; }
.v-icerik { max-width: 48rem; font-size: 1rem; line-height: 1.75; }
.v-icerik h2 { font-size: 1.5rem; margin-top: 2.25rem; }
.v-icerik h3 { font-size: 1.2rem; margin-top: 1.75rem; }
.v-icerik ul, .v-icerik ol { padding-left: 1.25rem; }
.v-icerik li { margin-bottom: 0.4rem; }
.v-icerik a { color: var(--v-turuncu); }

/* ── ILETISIM FORMU ───────────────────────────────────────
 * KVKK: zorunlu onay kutusu YOK, kutusuz aydinlatma satiri var
 * (gerekce functions.php icinde yazili).
 * ────────────────────────────────────────────────────────── */

.v-form { display: grid; gap: 1rem; max-width: 40rem; }
.v-form__ikili { display: grid; gap: 1rem; }
@media (min-width: 640px) { .v-form__ikili { grid-template-columns: 1fr 1fr; } }
.v-form label { display: grid; gap: 0.4rem; font-size: 0.86rem; font-weight: 600; color: var(--v-murekkep); }
.v-form input, .v-form select, .v-form textarea {
  width: 100%; padding: 0.8rem 0.9rem; border: 1px solid var(--v-cizgi); border-radius: 10px;
  background: #fff; font: inherit; font-weight: 400; color: var(--v-murekkep);
}
.v-form input:focus, .v-form select:focus, .v-form textarea:focus { outline: 2px solid var(--v-turuncu); outline-offset: 1px; border-color: var(--v-turuncu); }
.v-form button { justify-self: start; }
.v-form__gizli { position: absolute; left: -9999px; }
.v-form__aydinlatma { margin: 0; font-size: 0.82rem; line-height: 1.6; color: var(--v-soluk); }
.v-form__aydinlatma a { color: var(--v-turuncu); }
.v-form__sonuc { margin: 0; padding: 0.9rem 1rem; border-radius: 10px; background: #fdecea; color: #8a2018; font-size: 0.9rem; }
.v-form__sonuc--ok { background: #eaf7ee; color: #1c6b33; }

.v-iletisim__izgara { display: grid; gap: 1rem; margin: 2rem 0; }
@media (min-width: 768px) { .v-iletisim__izgara { grid-template-columns: repeat(3,1fr); } }
.v-iletisim__kart { padding: 1.5rem; border: 1px solid var(--v-cizgi); border-radius: 16px; background: #fff; }
.v-iletisim__kart b { display: block; font-size: 0.72rem; text-transform: uppercase; letter-spacing: 0.12em; color: var(--v-turuncu); margin-bottom: 0.5rem; }
.v-iletisim__kart a, .v-iletisim__kart span { color: var(--v-murekkep); text-decoration: none; font-size: 0.98rem; line-height: 1.55; }

.v-surec { display: grid; gap: 1rem; margin-top: 2rem; }
@media (min-width: 640px)  { .v-surec { grid-template-columns: repeat(2,1fr); } }
@media (min-width: 1024px) { .v-surec { grid-template-columns: repeat(3,1fr); } }
.v-surec__adim { padding: 1.5rem; border: 1px solid var(--v-cizgi); border-radius: 16px; background: #fff; }
.v-surec__no { font-family: "Outfit", sans-serif; font-size: 1.5rem; font-weight: 700; color: var(--v-turuncu); }
.v-surec__adim h3 { margin: 0.5rem 0 0.4rem; font-size: 1.02rem; font-weight: 600; }
.v-surec__adim p { margin: 0; font-size: 0.92rem; line-height: 1.6; color: var(--v-govde); }

/* Urun arsivi — vitrin izgarasinin ic sayfa hali */
.v-arsiv { padding-block: 2rem 3.5rem; }

/* ── UST SERIT (topbar) ────────────────────────────────────
 * Eski sitede de vardi. Mobilde yalniz telefon kalir: adres+e-posta
 * dar ekranda seridi ikinci satira tasiyip menuyu asagi itiyordu.
 * ────────────────────────────────────────────────────────── */

.v-serit { background: var(--v-koyu); color: rgba(255,255,255,0.62); font-size: 0.8rem; }
.v-serit__ic { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 2.4rem; }
.v-serit a { color: inherit; text-decoration: none; display: inline-flex; align-items: center; gap: 0.375rem; }
.v-serit a:hover { color: #fff; }
.v-serit .v-ikon { width: 0.9rem; height: 0.9rem; }
.v-serit__adres { display: none; align-items: center; gap: 0.375rem; }
@media (min-width: 1024px) { .v-serit__adres { display: inline-flex; } }
.v-serit__sag { display: flex; align-items: center; gap: 1.25rem; margin-left: auto; }
.v-serit__mail { display: none; }
@media (min-width: 640px) { .v-serit__mail { display: inline-flex; } }

/* ── KIRINTI YOLU (breadcrumb) ─────────────────────────── */

.v-iz { border-bottom: 1px solid var(--v-cizgi); background: var(--v-zemin); }
.v-iz__ic { display: flex; flex-wrap: wrap; align-items: center; gap: 0.375rem; min-height: 2.75rem; font-size: 0.82rem; color: var(--v-soluk); }
.v-iz a { color: var(--v-govde); text-decoration: none; }
.v-iz a:hover { color: var(--v-turuncu); }
.v-iz__ayrac { display: inline-flex; color: var(--v-cizgi); }
.v-iz__ayrac .v-ikon { width: 0.85rem; height: 0.85rem; }
.v-iz [aria-current="page"] { color: var(--v-murekkep); font-weight: 600; }

/* ── Menu hizalama duzeltmesi ──────────────────────────────
 * "Urunlerimiz" yaninda chevron oldugu icin satir yuksekligi digerlerinden
 * farkliydi ve metin yukari kayiyordu. Ogeleri esit yukseklige sabitliyoruz.
 * ────────────────────────────────────────────────────────── */

.v-ust__menu { align-items: stretch; }
.v-ust__oge { display: flex; align-items: center; }
.v-ust__oge > a { line-height: 1; }

/* Logo — alt satirdaki "DEKOR MOBILYA" kucuk kaliyordu, biraz buyutuldu */
.v-logo { height: 2rem; }
@media (min-width: 1024px) { .v-logo { height: 2.75rem; } }
.v-logo--ters { height: 2.5rem; }

/* ── [hidden] KURALI — CSS'in ezmesini engelle ─────────────
 *
 * `.v-cekmece { display: flex }` ve `.v-cekmece__alt { display: grid }`
 * tarayicinin `[hidden] { display: none }` kuralini eziyordu: JS `hidden`i
 * dogru ayarliyor ama CSS dinlemiyor, mobil menu ve kategori izgarasi HEP
 * ACIK geliyor, kapanmiyordu. Ozniteligi kesin kural haline getiriyoruz.
 * ────────────────────────────────────────────────────────── */

[hidden] { display: none !important; }

/* ── STICKY NAVBAR — sarmalayici sinirini kaldir ───────────
 *
 * `position: sticky` yalniz KENDI ANA ELEMANININ sinirlari icinde yapisir.
 * Ust serit eklendiginde navbar, sablon parcasinin <header> sarmalayicisinin
 * icine girdi; o sarmalayici (serit + navbar boyu) ekrandan cikinca navbar da
 * cikiyordu. `display: contents` sarmalayiciyi duzenden kaldirir, navbar'in
 * ana elemani sayfanin kendisi olur ve navbar tum sayfa boyunca yapisir.
 *
 * Ust serit bilincli olarak yapismaz: dar ekranda ekranin ustunden iki katman
 * goturmek, asil isi goren navbar'in yerini daraltir.
 * ────────────────────────────────────────────────────────── */

header.wp-block-template-part { display: contents; }

/* ── SABIT (float) DUGMELER ────────────────────────────────
 *
 * Sag altta WhatsApp + telefon. Sayfanin neresinde olursa olsun iki
 * dokunusla ulasilir; mobilya alicisi form doldurmuyor, ariyor.
 *
 * Mobilde yapiskan cagri cubugu belirdiginde ustune binmesin diye
 * yukari kayiyor — konumu JS'in <body> uzerine yazdigi isaretten geliyor.
 * ────────────────────────────────────────────────────────── */

.v-float {
  position: fixed;
  right: var(--v-gutter);
  bottom: 1.25rem;
  z-index: 35;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  transition: bottom 0.3s ease;
}
.v-float a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--v-cizgi);
  color: var(--v-murekkep);
  box-shadow: 0 8px 24px -8px rgba(33,25,19,0.35);
  transition: transform 0.2s, background-color 0.2s;
}
.v-float a:hover { transform: translateY(-2px); }
.v-float a .v-ikon { width: 1.4rem; height: 1.4rem; }
.v-float__wa { background: var(--v-turuncu) !important; border-color: var(--v-turuncu) !important; color: #fff !important; }
.v-float__wa .v-ikon { color: #fff !important; }

/* Guvenli alan (iPhone alt cubugu) hesaba katilir */
.v-float { bottom: calc(1.25rem + env(safe-area-inset-bottom)); }

/* ── Mobil navbar sadeligi ─────────────────────────────────
 * Telefon dugmesi navbar'dan kaldirildi: 430px'te logo + telefon +
 * hamburger yan yana sigmiyor, logo kirpiliyordu. Telefona erisim zaten
 * float dugmede ve yapiskan cubukta var.
 * ────────────────────────────────────────────────────────── */

.v-ust__tel { display: none; }
@media (min-width: 1024px) { .v-ust__tel { display: inline-flex; } }

/* ── ACILIS: MOBIL KURGU ───────────────────────────────────
 *
 * Fotograf ZEMIN, metin ustunde. Gerekce anasayfa icerigindeki notta.
 *
 * KATMAN SIRASI — burada bir kez yanildim, tekrarlanmasin:
 * `position: absolute; z-index: 0` verilen fotograf, ayni kaptaki normal
 * akistaki metnin USTUNE cikiyor (z-index 0 bir yigin seviyesidir; akistaki
 * kardesler onun altinda kalir). Sonuc: sayfada yalniz fotograf gorunuyordu.
 * Ayrica perde `.v-acilis`'in cocuguydu ve `.v-acilis__ic` (z-index 1) onu
 * hep orttugu icin hic cizilmiyordu.
 *
 * Duzen: perde fotografin KENDI ::after'i, metin ve serit z-index 2.
 *
 * Yukseklik `svh` ile: mobil tarayicilarda adres cubugu kayarken `vh`
 * sicriyor, `svh` sabit kaliyor.
 * ────────────────────────────────────────────────────────── */

@media (max-width: 1023px) {
  .v-acilis { position: relative; overflow: hidden; }
  .v-acilis::before { display: none; } /* krem radyal — fotograf uzerinde gereksiz */

  /* Sarmalayici duzenden kalksin: figure ve guven seridi ayri yerlessin */
  .v-acilis__sag { display: contents; }

  .v-acilis__sag figure {
    position: absolute; inset: 0; z-index: 0;
    margin: 0; border-radius: 0; background: var(--v-koyu);
  }
  .v-acilis__sag picture { display: block; position: absolute; inset: 0; }
  .v-acilis__sag figure img {
    width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover;
    /* Yatay fotograf dikey ekranda kirpilirken usttaki dolap yuzeyi degil,
       ortadaki dolu kisim kalsin */
    object-position: center 40%;
  }

  /* Perde — beyaz metin fotografin uzerinde her zaman okunmali.
     Fotografin kendi ustune ciziliyor ki katman sirasi sasmasin. */
  .v-acilis__sag figure::after {
    content: ""; position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(23,18,14,0.95) 22%, rgba(23,18,14,0.65) 60%, rgba(23,18,14,0.3) 100%);
  }

  .v-acilis__ic {
    position: relative; z-index: 1;
    display: flex; flex-direction: column; justify-content: flex-end;
    min-height: 86svh; padding-block: 5rem 1.75rem;
  }
  .v-acilis__yazi { position: relative; z-index: 2; }
  .v-acilis h1 { color: #fff; }
  .v-acilis__alt { color: rgba(255,255,255,0.82); margin-top: 0.875rem; }
  .v-acilis__not { color: rgba(255,255,255,0.6); }
  /* Puan satiri fotografin uzerinde: tam beyaz + hafif golge, yoksa acik
     bolgelerde eriyip gidiyor */
  .v-puan {
    color: #fff; text-decoration: none; font-weight: 500;
    text-shadow: 0 1px 6px rgba(23,18,14,0.6);
  }
  .v-etiket { text-shadow: 0 1px 6px rgba(23,18,14,0.6); }

  /* Ara/WhatsApp dugmeleri mobilde gizli: ayni iki kanal sabit (float)
     dugmelerde zaten var; ucunu birden gostermek baskin cagriyi zayiflatiyor.
     Yerine tek satirlik telefon baglantisi. */
  .v-acilis__ikili { display: none; }
  .v-acilis__cagrilar { margin-top: 1.5rem; }

  .v-acilis__tel-bag {
    display: inline-flex; align-items: center; gap: 0.5rem; margin-top: 0.875rem;
    font-size: 0.95rem; font-weight: 600; color: #fff; text-decoration: none;
  }
  .v-acilis__tel-bag .v-ikon { color: var(--v-turuncu); }

  /* Guven seridi — fotografin uzerinde cam etkili serit */
  .v-guven {
    position: relative; z-index: 2;
    width: 100%; margin: 1.5rem 0 0;
    border-color: rgba(255,255,255,0.2);
    background: rgba(255,255,255,0.14);
    backdrop-filter: blur(10px);
    box-shadow: none;
  }
  .v-guven div { background: transparent; }
  .v-guven b { color: #fff; }
  .v-guven small { color: rgba(255,255,255,0.8); }
}

/* Masaustunde telefon baglantisi gereksiz — dugmeler zaten orada */
.v-acilis__tel-bag { display: none; }
.v-puan { text-decoration: none; color: var(--v-govde); }

/* ── UST SEVIYE BLOK ARALIGI ───────────────────────────────
 *
 * WordPress `:where(.wp-site-blocks) > * { margin-block-start: 24px }`
 * basiyor. Header ilk cocuk oldugu icin sifir aliyor ama hero'yu tasiyan
 * <main> ikinci cocuk — navbar ile hero arasinda 24px'lik bosluk kaliyordu.
 * Ayni bosluk kirinti yolu ile navbar arasinda da vardi.
 *
 * Yalniz UST SEVIYE ogeler sifirlaniyor; icerideki blok araliklarina
 * dokunulmuyor (yazi sayfalarindaki paragraf ritmi bozulmasin). Bolumler
 * kendi nefes araligini `.v-bolum` ile zaten yonetiyor.
 * ────────────────────────────────────────────────────────── */

.wp-site-blocks > * { margin-block-start: 0; }

/* ── SAYFA ISKELETI — footer hep en altta ──────────────────
 *
 * Icerigi kisa sayfalarda (blog arsivi, 404, tek urun) footer ekranin
 * ortasinda asili kaliyordu. Sayfa kabugu dikey esnek kutuya cevriliyor,
 * ana bolum bosluğu yutuyor, footer tabana oturuyor.
 *
 * `100svh`: mobil tarayicilarda adres cubugu kayarken `vh` sicriyor.
 * ────────────────────────────────────────────────────────── */

.wp-site-blocks { display: flex; flex-direction: column; min-height: 100svh; }
.wp-site-blocks > main { flex: 1 0 auto; }
.wp-site-blocks > .v-alt, .wp-site-blocks > footer { flex: none; }

/* ── BLOG ARSIVI ───────────────────────────────────────────
 * Ilk yazi genis kart, digerleri ikili izgara: karar asamasindaki
 * ziyaretciye once en guclu icerigi gostermek tiklamayi artiriyor.
 * ────────────────────────────────────────────────────────── */

.v-yazilar { display: grid; gap: 1rem; margin-top: 2rem; }
@media (min-width: 768px) { .v-yazilar { grid-template-columns: repeat(2,1fr); gap: 1.25rem; margin-top: 2.5rem; } }

.v-yazi { margin: 0; }
.v-yazi > a {
  display: block; height: 100%; overflow: hidden;
  border: 1px solid var(--v-cizgi); border-radius: 16px; background: #fff;
  text-decoration: none; transition: border-color 0.2s, transform 0.2s;
}
.v-yazi > a:hover { border-color: rgba(245,137,31,0.5); }
.v-yazi__gorsel { overflow: hidden; background: var(--v-koyu); }
.v-yazi__gorsel img { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; transition: transform 0.5s ease; }
.v-yazi > a:hover .v-yazi__gorsel img { transform: scale(1.03); }
.v-yazi__yazi { padding: 1.25rem; }
@media (min-width: 1024px) { .v-yazi__yazi { padding: 1.75rem; } }
.v-yazi__ad { margin: 0.625rem 0 0; font-size: 1.08rem; font-weight: 700; line-height: 1.3; }
.v-yazi__ozet { margin: 0.625rem 0 0; font-size: 0.92rem; line-height: 1.6; color: var(--v-govde); }

/* One cikan ilk yazi — genis ekranda iki sutunu birden kaplar */
@media (min-width: 768px) {
  .v-yazi--one { grid-column: span 2; }
  .v-yazi--one > a { display: grid; grid-template-columns: 1.1fr 1fr; align-items: stretch; }
  .v-yazi--one .v-yazi__gorsel { height: 100%; }
  .v-yazi--one .v-yazi__gorsel img { height: 100%; aspect-ratio: auto; min-height: 17rem; }
  .v-yazi--one .v-yazi__yazi { align-self: center; padding: 2rem; }
  .v-yazi--one .v-yazi__ad { font-size: 1.5rem; }
  .v-yazi--one .v-yazi__ozet { font-size: 0.98rem; }
}

/* ── TEKIL YAZI ────────────────────────────────────────── */

.v-tekil { max-width: 52rem; }
.v-yazi__ust { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 1rem; }
.v-yazi__ust .v-blog__kat { text-decoration: none; }
.v-yazi__bilgi { font-size: 0.84rem; color: var(--v-soluk); }
.v-tekil__baslik { margin: 0.875rem 0 1.25rem; }
.v-tekil__kapak img { width: 100%; aspect-ratio: 16/9; object-fit: cover; border-radius: 18px; display: block; }
.v-tekil .v-icerik { margin-top: 2rem; max-width: none; }

.v-yazi__kapanis {
  margin-top: 3rem; padding: 1.75rem; border-radius: 18px;
  background: var(--v-krem); border: 1px solid var(--v-cizgi);
}
@media (min-width: 1024px) { .v-yazi__kapanis { padding: 2.5rem; } }
.v-yazi__kapanis .v-baslik { font-size: clamp(1.4rem, 3vw, 1.9rem); margin-top: 0; }
.v-yazi__kapanis .v-metin { margin: 0.875rem 0 1.5rem; }
.v-yazi__kapanis p:last-child { margin: 0; }

.v-ilgili { margin-top: 3rem; }
.v-ilgili .v-baslik { font-size: clamp(1.3rem, 3vw, 1.7rem); }

/* Sayfalama */
.wp-block-query-pagination { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 2.5rem; }
.wp-block-query-pagination a, .wp-block-query-pagination .page-numbers {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 2.5rem; min-height: 2.5rem; padding-inline: 0.75rem;
  border: 1px solid var(--v-cizgi); border-radius: 999px;
  color: var(--v-murekkep); text-decoration: none; font-size: 0.9rem;
}
.wp-block-query-pagination .current { background: var(--v-turuncu); border-color: var(--v-turuncu); color: #fff; }

/* ── DUGME METIN RENGI — WordPress'i ez ────────────────────
 *
 * WP genel stilleri `:root :where(a:not(.wp-element-button))` ile butun
 * baglantilara marka turuncusunu basiyor ve bizim buton kurallarimizla ayni
 * oncelikte oldugu icin sonra yuklendiginde kazaniyordu: TURUNCU ZEMINDE
 * TURUNCU YAZI, yani gorunmez dugme. Yazi yalniz fareyle uzerine gelince
 * beliriyordu (hover kuralinin onceligi daha yuksek).
 *
 * `a.` on eki ile oncelik bir basamak yukseltiliyor; icerik icindeki
 * dugmeler de (hakkimizda, urun sayfalari) dogru renge kavusuyor.
 * ────────────────────────────────────────────────────────── */

a.v-cagri--dolu, a.v-cagri--dolu:hover, a.v-cagri--dolu:focus { color: #fff; }
a.v-cagri--acik, a.v-cagri--acik:hover { color: var(--v-murekkep); }
a.v-cagri--hayalet, a.v-cagri--hayalet:hover { color: #fff; }
a.v-kapanis__tel, a.v-kapanis__tel:hover, a.v-kapanis__wa, a.v-kapanis__wa:hover { color: #fff; }
.v-icerik a.v-cagri--dolu { color: #fff; }
.v-icerik a.v-cagri--acik { color: var(--v-murekkep); }

/* Kart baglantilarinda da ayni sorun: baslik ve ozet turuncuya donuyordu */
a.v-kart .v-kart__ad { color: #fff; }
a.v-blog__kart h3, a.v-yazi > a .v-yazi__ad { color: var(--v-murekkep); }
a.v-blog__kart p, a.v-yazi > a .v-yazi__ozet { color: var(--v-govde); }

/* Sayfa ustu */
.v-sayfa__ust { margin-bottom: 2rem; }

/* ── HAKKIMIZDA SAYFASI ────────────────────────────────────
 * Bolumler kendi nefes araligini tasiyor; sayfa uzun ama yorucu degil.
 * ────────────────────────────────────────────────────────── */

.v-hak__ic { display: grid; gap: 2rem; }
@media (min-width: 1024px) { .v-hak__ic { grid-template-columns: 1.1fr 1fr; align-items: center; gap: 3.5rem; } }
.v-hak__ic figure { margin: 0; overflow: hidden; border-radius: 20px; }
.v-hak__ic img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }

.v-hak__bolum { margin-top: 3.5rem; }
@media (min-width: 1024px) { .v-hak__bolum { margin-top: 5rem; } }
.v-hak__bolum .v-baslik { margin-top: 0.875rem; }
.v-hak__bolum + .wp-block-shortcode, .v-hak__bolum + div { margin-top: 1.75rem; }

.v-projeler__izgara--sayfa { display: grid; grid-template-columns: repeat(2,1fr); gap: 0.75rem; margin-top: 1.75rem; }
@media (min-width: 1024px) { .v-projeler__izgara--sayfa { grid-template-columns: repeat(3,1fr); gap: 1rem; } }
.v-projeler__izgara--sayfa figure:first-child { grid-column: auto; grid-row: auto; }
.v-projeler__izgara--sayfa img { aspect-ratio: 4/3; }

.v-hak__kapanis {
  margin-top: 3.5rem; padding: 1.75rem; border-radius: 20px;
  background: var(--v-krem); border: 1px solid var(--v-cizgi);
}
@media (min-width: 1024px) { .v-hak__kapanis { margin-top: 5rem; padding: 3rem; } }
.v-hak__kapanis .v-baslik { font-size: clamp(1.2rem, 2.6vw, 1.6rem); margin-top: 0.75rem; line-height: 1.35; }
.v-hak__kapanis .v-cagri { margin-bottom: 0.5rem; }

/* Ic sayfalarda bolum icerigi tam genislik — .v-icerik'in 48rem siniri
   galeri ve izgaralari daraltiyordu */
.v-icerik .v-hak__ic, .v-icerik .v-hak__bolum, .v-icerik .v-hak__kapanis,
.v-icerik .v-surec, .v-icerik .v-neden__izgara { max-width: none; }
.v-icerik section { max-width: none; }
