/*
Theme Name: Bakmadan Gezme
Theme URI: https://www.bakmadangezme.com/
Author: Ufuk Mert
Description: Bakmadan Gezme için hafif, hızlı ve mobil uyumlu gezi blogu teması. Elementor gerektirmez; ana sayfa metinleri ve rotalar Görünüm > Özelleştir > Bakmadan Gezme altından yönetilir.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: bakmadangezme
*/

:root {
  --gece: #313041;
  --mercan: #E8604C;
  --mercan-koyu: #C9472F;
  --tas: #5F6170;
  --tas-acik: #8C8E9B;
  --kum: #FAF5EE;
  --cizgi: #ECE7DF;
  --beyaz: #FFFFFF;
  --goz: #0B3F9A;

  --f-govde: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --f-baslik: "Poppins", var(--f-govde);

  --t-14: 0.875rem;
  --t-16: 1rem;
  --t-20: 1.25rem;
  --t-25: 1.5625rem;
  --t-31: 1.9375rem;
  --t-39: 2.4375rem;

  --kenar: clamp(16px, 4vw, 48px);
  --genislik: 1240px;
  --r-kart: 14px;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--beyaz);
  color: var(--tas);
  font: 400 var(--t-16)/1.65 var(--f-govde);
  -webkit-font-smoothing: antialiased;
}
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
h1, h2, h3 { color: var(--gece); margin: 0; font-weight: 600; letter-spacing: -0.01em; }
p { margin: 0; }
:focus-visible { outline: 3px solid var(--goz); outline-offset: 3px; border-radius: 4px; }

.kap { width: min(100% - 2 * var(--kenar), var(--genislik)); margin-inline: auto; }
.gizli { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- Üst bar ---------- */
.ust {
  position: sticky; top: 0; z-index: 50;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: saturate(1.4) blur(10px);
  border-bottom: 1px solid transparent;
  transition: border-color .2s, box-shadow .2s;
}
.ust.kaydi { border-color: var(--cizgi); box-shadow: 0 6px 24px -18px rgba(49, 48, 65, .5); }
.ust .kap { display: flex; align-items: center; gap: 24px; height: 76px; }
.marka { display: flex; align-items: center; gap: 12px; margin-right: auto; }
.marka img { width: 26px; height: auto; }
.marka span { font-weight: 700; font-size: 1.125rem; color: var(--gece); letter-spacing: -0.02em; }

.menu { display: flex; align-items: center; gap: 4px; list-style: none; margin: 0; padding: 0; }
.menu > li { position: relative; }
.menu > li > a, .menu > li > button {
  display: inline-flex; align-items: center; gap: 6px;
  height: 44px; padding: 0 14px;
  font: 500 var(--t-16)/1 var(--f-govde); color: var(--gece);
  background: none; border: 0; cursor: pointer; border-radius: 8px;
}
.menu > li > a:hover, .menu > li > button:hover { color: var(--mercan-koyu); }
.menu > li > a[aria-current="page"] { color: var(--mercan-koyu); box-shadow: inset 0 -2px 0 var(--mercan); border-radius: 0; }
.menu svg { width: 10px; height: 10px; transition: transform .2s; }
.alt {
  position: absolute; top: calc(100% + 6px); left: 0; min-width: 210px;
  list-style: none; margin: 0; padding: 8px;
  background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: 12px;
  box-shadow: 0 18px 40px -20px rgba(49, 48, 65, .45);
  opacity: 0; visibility: hidden; transform: translateY(-4px);
  transition: opacity .15s, transform .15s, visibility .15s;
}
.alt a { display: block; padding: 9px 12px; border-radius: 8px; color: var(--gece); font-size: var(--t-14); }
.alt a:hover { background: var(--kum); color: var(--mercan-koyu); }
.menu > li:hover .alt, .menu > li:focus-within .alt, .menu > li.acik .alt { opacity: 1; visibility: visible; transform: none; }
.menu > li.acik > button svg { transform: rotate(180deg); }

.sosyal-ust { display: flex; gap: 2px; }
.ikon-btn {
  display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%;
  color: var(--gece); background: none; border: 0; cursor: pointer;
}
.ikon-btn:hover { background: var(--kum); color: var(--mercan-koyu); }
.ikon-btn svg { width: 19px; height: 19px; }
.hamburger { display: none; }

/* ---------- Hero ---------- */
.hero { position: relative; min-height: min(86vh, 820px); display: flex; align-items: flex-end; color: var(--beyaz); overflow: hidden; }
.hero picture, .hero picture img { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero picture img { object-fit: cover; object-position: 50% 30%; }
.hero::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(20, 20, 32, 0) 35%, rgba(20, 20, 32, .32) 60%, rgba(20, 20, 32, .78) 100%);
}
.hero .kap { position: relative; z-index: 1; padding-block: 0 clamp(56px, 9vh, 96px); }
.hero h1 {
  font: 700 clamp(2.6rem, 6.4vw, 5.4rem)/1.02 var(--f-baslik);
  color: var(--beyaz); letter-spacing: -0.035em; max-width: 14ch;
  text-shadow: 0 2px 24px rgba(20, 20, 32, .25);
  text-wrap: balance;
}
.hero p { margin-top: 18px; max-width: 46ch; font-size: clamp(1.0625rem, 1.5vw, 1.25rem); line-height: 1.55; color: rgba(255, 255, 255, .9); }
.hero-eylem { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-top: 30px; }

.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 50px; padding: 0 26px; border-radius: 999px; border: 0; cursor: pointer;
  font: 600 var(--t-16)/1 var(--f-govde);
  background: var(--mercan); color: var(--beyaz);
  transition: background .15s, transform .15s;
}
.btn:hover { background: var(--mercan-koyu); }
.btn:active { transform: translateY(1px); }
.btn-cizgi { background: transparent; color: var(--gece); box-shadow: inset 0 0 0 1.5px var(--gece); }
.btn-cizgi:hover { background: var(--gece); color: var(--beyaz); }
.metin-link { display: inline-flex; align-items: center; min-height: 44px; font-weight: 500; color: var(--beyaz); text-decoration: underline; text-underline-offset: 5px; text-decoration-color: rgba(255, 255, 255, .5); }
.metin-link:hover { text-decoration-color: var(--beyaz); }

@media (prefers-reduced-motion: no-preference) {
  .hero picture img { animation: yakinlas 1.6s cubic-bezier(.2, .7, .2, 1) both; }
  .hero h1, .hero p, .hero-eylem { animation: belir .9s cubic-bezier(.2, .7, .2, 1) both; }
  .hero p { animation-delay: .12s; }
  .hero-eylem { animation-delay: .22s; }
}
@keyframes yakinlas { from { transform: scale(1.06); } to { transform: none; } }
@keyframes belir { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }

/* ---------- Bölge şeridi ---------- */
.bolgeler { background: var(--kum); border-bottom: 1px solid var(--cizgi); }
.bolgeler .kap { display: flex; align-items: center; gap: 28px; padding-block: 22px; }
.bolgeler h2 { flex: none; font-size: var(--t-16); font-weight: 600; }
.bolge-liste { display: flex; gap: 10px; list-style: none; margin: 0; padding: 0; overflow-x: auto; scrollbar-width: none; scroll-snap-type: x proximity; }
.bolge-liste::-webkit-scrollbar { display: none; }
.bolge-liste li { flex: none; scroll-snap-align: start; }
.bolge-liste a {
  display: inline-flex; align-items: baseline; gap: 8px;
  height: 44px; padding: 0 18px; align-items: center;
  background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: 999px;
  color: var(--gece); font-weight: 500; white-space: nowrap;
  transition: border-color .15s, color .15s;
}
.bolge-liste a:hover { border-color: var(--mercan); color: var(--mercan-koyu); }
.bolge-liste small { color: var(--tas-acik); font-size: var(--t-14); font-variant-numeric: tabular-nums; }

/* ---------- Bölüm başlıkları ---------- */
.bolum { padding-block: clamp(64px, 9vw, 112px); }
.bolum-bas { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: clamp(28px, 4vw, 44px); }
.bolum-bas h2 { font-size: clamp(var(--t-31), 3.4vw, var(--t-39)); line-height: 1.15; }
.bolum-bas p { margin-top: 8px; max-width: 52ch; }
.tumu { flex: none; display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; color: var(--gece); text-decoration: underline 2px var(--mercan); text-underline-offset: 7px; }
.tumu:hover { color: var(--mercan-koyu); }

/* ---------- Popüler rotalar ---------- */
.rotalar { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(16px, 2vw, 28px); list-style: none; margin: 0; padding: 0; }
.rota { position: relative; border-radius: var(--r-kart); overflow: hidden; isolation: isolate; aspect-ratio: 4 / 5; background: var(--gece); }
.rota img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.rota::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(20, 20, 32, 0) 45%, rgba(20, 20, 32, .82)); z-index: 0; }
.rota a { position: absolute; inset: 0; z-index: 2; }
.rota-yazi { position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; padding: clamp(20px, 2.4vw, 28px); color: var(--beyaz); }
.rota-yazi span { font-size: var(--t-14); color: rgba(255, 255, 255, .8); }
.rota h3 { margin-top: 4px; color: var(--beyaz); font-size: var(--t-25); line-height: 1.2; }
.rota p { margin-top: 6px; color: rgba(255, 255, 255, .86); line-height: 1.5; }
.rota:hover img { transform: scale(1.04); }
.rota:has(a:focus-visible) { outline: 3px solid var(--goz); outline-offset: 3px; }

/* ---------- Son yazılar ---------- */
.yazilar { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(36px, 4vw, 52px) clamp(16px, 2.4vw, 32px); list-style: none; margin: 0; padding: 0; }
.yazi { position: relative; display: flex; flex-direction: column; }
.yazi figure { margin: 0; border-radius: var(--r-kart); overflow: hidden; aspect-ratio: 3 / 2; background: var(--kum); }
.yazi figure img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.yazi-meta { display: flex; gap: 14px; margin-top: 18px; font-size: var(--t-14); }
.yazi-meta .kat { color: var(--mercan-koyu); font-weight: 600; }
.yazi-meta time { color: var(--tas-acik); }
.yazi h3 { margin-top: 6px; font-size: var(--t-20); line-height: 1.3; }
.yazi h3 a::after { content: ""; position: absolute; inset: 0; }
.yazi p { margin-top: 8px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.yazi:hover figure img { transform: scale(1.04); }
.yazi:hover h3 { color: var(--mercan-koyu); }
.yazi:has(a:focus-visible) figure { outline: 3px solid var(--goz); outline-offset: 3px; }
.yazi h3 a:focus-visible { outline: none; }

/* ---------- Footer ---------- */
.alt-bilgi { background: var(--gece); color: rgba(255, 255, 255, .72); }
.alt-bilgi .kap.kolon { display: grid; grid-template-columns: 1.3fr 1fr 1.2fr; gap: 48px; padding-block: clamp(56px, 7vw, 88px); }
.alt-bilgi h2 { color: var(--beyaz); font-size: var(--t-20); margin-bottom: 20px; }
.alt-bilgi ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.alt-bilgi a:hover { color: var(--beyaz); }
.iletisim li { display: grid; grid-template-columns: 20px 1fr; gap: 12px; align-items: start; }
.iletisim svg { width: 16px; height: 16px; margin-top: 5px; color: var(--mercan); }
.alt-bilgi .is-birligi p { max-width: 34ch; }
.alt-bilgi .is-birligi .btn { margin-top: 22px; }
.taban { border-top: 1px solid rgba(255, 255, 255, .1); }
.taban .kap { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block: 20px; font-size: var(--t-14); }
.taban .sosyal { display: flex; gap: 6px; }
.taban .ikon-btn { color: rgba(255, 255, 255, .8); }
.taban .ikon-btn:hover { background: rgba(255, 255, 255, .08); color: var(--beyaz); }
.yukari {
  position: fixed; right: 20px; bottom: 20px; z-index: 40;
  width: 48px; height: 48px; border-radius: 50%; border: 0; cursor: pointer;
  display: grid; place-items: center; background: var(--mercan); color: var(--beyaz);
  box-shadow: 0 10px 24px -10px rgba(201, 71, 47, .7);
  opacity: 0; visibility: hidden; transition: opacity .2s, visibility .2s;
}
.yukari.gorunur { opacity: 1; visibility: visible; }
.yukari svg { width: 20px; height: 20px; }

/* ---------- Yazı sayfası ---------- */
.yazi-bas { padding-block: clamp(40px, 6vw, 72px) clamp(28px, 4vw, 40px); }
.kirinti { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0 0 22px; padding: 0; font-size: var(--t-14); color: var(--tas-acik); }
.kirinti li + li::before { content: "/"; margin-right: 8px; color: var(--cizgi); }
.kirinti a { display: inline-flex; align-items: center; min-height: 44px; }
.kirinti { margin-bottom: 10px; }
.kirinti a:hover { color: var(--mercan-koyu); }
.yazi-bas h1 { font: 700 clamp(2rem, 4.6vw, 3.4rem)/1.08 var(--f-baslik); letter-spacing: -0.03em; max-width: 20ch; text-wrap: balance; }
.yazi-bas .yazi-meta { margin-top: 20px; font-size: var(--t-16); gap: 20px; flex-wrap: wrap; }
.kapak { margin: 0; }
.kapak img { width: 100%; height: auto; max-height: min(68vh, 680px); object-fit: cover; object-position: 50% 30%; border-radius: var(--r-kart); }
.kapak.dikey { display: flex; justify-content: center; padding: clamp(16px, 3vw, 32px); border-radius: var(--r-kart); background: var(--kum); }
.kapak.dikey img { width: auto; max-width: 100%; max-height: min(78vh, 760px); object-fit: contain; }
.icerik-izgara { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: clamp(32px, 6vw, 88px); padding-block: clamp(40px, 6vw, 72px); }
.icerik { max-width: 68ch; font-size: 1.125rem; line-height: 1.8; color: #4C4E5C; }
.icerik > * + * { margin-top: 1.2em; }
.icerik h2 { font-size: var(--t-25); line-height: 1.25; margin-top: 2em; }
.icerik figure { margin: 2em 0; }
.icerik figure img { border-radius: var(--r-kart); width: 100%; }
.icerik figcaption { margin-top: 10px; font-size: var(--t-14); color: var(--tas-acik); }
.icerik blockquote { margin: 2em 0; padding: 4px 0 4px 22px; border-left: 3px solid var(--mercan); font-size: var(--t-20); color: var(--gece); }
.yan { align-self: start; position: sticky; top: 100px; display: grid; gap: 28px; }
.yan-kutu { padding: 24px; border-radius: var(--r-kart); background: var(--kum); }
.yan-kutu h2 { font-size: var(--t-16); margin-bottom: 14px; }
.yan-kutu ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.yan-kutu a { color: var(--gece); font-weight: 500; }
.yan-kutu a:hover { color: var(--mercan-koyu); }
.yazar { display: flex; gap: 14px; align-items: center; }
.yazar img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.yazar strong { display: block; color: var(--gece); }
.yazar span { font-size: var(--t-14); }
.paylas { display: flex; gap: 6px; }
.paylas .ikon-btn { background: var(--beyaz); }

/* ---------- Mobil menü ---------- */
.mobil-menu {
  position: fixed; inset: 0; z-index: 60; background: var(--beyaz);
  display: flex; flex-direction: column; padding: 0 var(--kenar) 32px;
  transform: translateX(100%); visibility: hidden; transition: transform .28s cubic-bezier(.2, .7, .2, 1), visibility .28s;
  overflow-y: auto;
}
.mobil-menu.acik { transform: none; visibility: visible; }
.mobil-menu .bar { display: flex; align-items: center; justify-content: space-between; height: 68px; flex: none; }
.mobil-menu nav > ul { list-style: none; margin: 8px 0 0; padding: 0; }
.mobil-menu nav > ul > li { border-bottom: 1px solid var(--cizgi); }
.mobil-menu nav > ul > li > a, .mobil-menu summary {
  display: flex; align-items: center; justify-content: space-between;
  min-height: 60px; font-size: var(--t-20); font-weight: 600; color: var(--gece); cursor: pointer; list-style: none;
}
.mobil-menu summary::-webkit-details-marker { display: none; }
.mobil-menu summary svg { width: 14px; height: 14px; transition: transform .2s; }
.mobil-menu details[open] summary svg { transform: rotate(180deg); }
.mobil-menu details ul { list-style: none; margin: 0; padding: 0 0 14px; display: grid; grid-template-columns: 1fr 1fr; gap: 2px 16px; }
.mobil-menu details a { display: flex; align-items: center; min-height: 44px; color: var(--tas); }
.mobil-menu .alt-eylem { margin-top: auto; padding-top: 28px; display: grid; gap: 12px; }
body.menu-acik { overflow: hidden; }

/* ---------- Kırılımlar ---------- */
@media (max-width: 1080px) {
  .menu, .sosyal-ust { display: none; }
  .hamburger { display: grid; }
  .alt-bilgi .kap.kolon { grid-template-columns: 1fr 1fr; }
  .alt-bilgi .is-birligi { grid-column: 1 / -1; }
  .icerik-izgara { grid-template-columns: 1fr; }
  .yan { position: static; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
}
@media (max-width: 860px) {
  .rotalar { grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: 78%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin-inline: calc(-1 * var(--kenar)); padding-inline: var(--kenar); scroll-padding-inline: var(--kenar); }
  .rotalar::-webkit-scrollbar { display: none; }
  .rota { scroll-snap-align: start; }
  .yazilar { grid-template-columns: 1fr 1fr; }
  .bolgeler .kap { flex-direction: column; align-items: flex-start; gap: 12px; padding-block: 18px; width: 100%; padding-inline: 0; }
  .bolgeler h2 { padding-inline: var(--kenar); }
  .bolge-liste { width: 100%; padding-inline: var(--kenar); scroll-padding-inline: var(--kenar); }
}
@media (max-width: 600px) {
  .ust .kap { height: 64px; }
  .hero { min-height: 78svh; }
  .hero picture img { object-position: 70% 22%; }
  .hero::after { background: linear-gradient(180deg, rgba(20, 20, 32, 0) 20%, rgba(20, 20, 32, .45) 45%, rgba(20, 20, 32, .82) 100%); }
  .hero-eylem .btn { width: 100%; }
  .bolum-bas { flex-direction: column; align-items: flex-start; }
  .yazilar { grid-template-columns: 1fr; }
  .alt-bilgi .kap.kolon { grid-template-columns: 1fr; gap: 40px; }
  .taban .kap { flex-direction: column-reverse; align-items: flex-start; }
  .icerik { font-size: 1.0625rem; }
  .yukari { right: 16px; bottom: 16px; }
}

/* =========================================================
   WordPress teması: iç sayfalar ve editör içeriği
   ========================================================= */

.atla { position: absolute; left: 12px; top: -60px; z-index: 100; padding: 10px 16px; border-radius: 8px; background: var(--gece); color: var(--beyaz); }
.atla:focus { top: 12px; }

/* Menü: hem linki hem alt menüsü olan öğe */
.menu .ac-btn { padding: 0 8px 0 0; margin-left: -10px; }
.menu > li:has(> .ac-btn) > a { padding-right: 6px; }

/* Arama çubuğu */
.arama-bar { border-top: 1px solid var(--cizgi); background: var(--beyaz); }
.ust .arama-bar .kap { height: auto; padding-block: 14px; }
.ara-form { position: relative; display: flex; gap: 10px; width: 100%; }
.ara-form > svg { position: absolute; left: 16px; top: 50%; width: 18px; height: 18px; transform: translateY(-50%); color: var(--tas-acik); pointer-events: none; }
.ara-form input {
  flex: 1; min-width: 0; height: 50px; padding: 0 16px 0 46px;
  font: 400 var(--t-16) var(--f-govde); color: var(--gece);
  background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: 999px;
}
.ara-form input:focus { outline: none; border-color: var(--gece); box-shadow: 0 0 0 3px rgba(11, 63, 154, .18); }
.mobil-menu .ara-form { margin: 8px 0 4px; flex: none; }
.mobil-menu .ara-form .btn { display: none; }

/* Liste ve sayfa başlıkları */
.liste-bas { padding-block: clamp(40px, 6vw, 72px) clamp(24px, 3vw, 36px); }
.liste-bas h1 { font: 700 clamp(2rem, 4.6vw, 3.4rem)/1.08 var(--f-baslik); letter-spacing: -0.03em; max-width: 22ch; text-wrap: balance; }
.liste-bas p { margin-top: 14px; max-width: 60ch; font-size: 1.125rem; }
.liste-bas .sayac { margin-top: 8px; font-size: var(--t-14); color: var(--tas-acik); }
.liste-ara { margin-top: 24px; max-width: 620px; }
.bolge-nav { margin-top: clamp(24px, 3vw, 36px); }
.bolge-nav .bolge-liste { width: min(100% - 2 * var(--kenar), var(--genislik)); margin-inline: auto; }
.bolge-liste a[aria-current="page"] { background: var(--gece); border-color: var(--gece); color: var(--beyaz); }
.bolge-liste a[aria-current="page"] small { color: rgba(255, 255, 255, .7); }
.bolge-liste.sarili { flex-wrap: wrap; overflow: visible; margin: 28px 0; }
.liste-govde { padding-top: clamp(24px, 3vw, 40px); }
.bolum-yazilar { padding-top: 0; }
.devam { background: var(--kum); }

.bos { padding: clamp(40px, 6vw, 72px) 0; max-width: 52ch; }
.bos h2 { font-size: var(--t-25); }
.bos p { margin: 10px 0 24px; }

/* Sayfalama */
.sayfalama { margin-top: clamp(40px, 5vw, 64px); }
.sayfalama ul { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.sayfalama a, .sayfalama span {
  display: inline-grid; place-items: center; min-width: 46px; height: 46px; padding: 0 14px;
  border: 1px solid var(--cizgi); border-radius: 999px; color: var(--gece); font-weight: 500;
}
.sayfalama a:hover { border-color: var(--mercan); color: var(--mercan-koyu); }
.sayfalama .current { background: var(--gece); border-color: var(--gece); color: var(--beyaz); }
.sayfalama .dots { border: 0; min-width: 24px; padding: 0; }

/* Kartta görsel yoksa */
.yazi figure:empty { display: grid; place-items: center; }
.yazi figure:empty::after { content: ""; width: 34px; height: 56px; background: url(assets/logo.png) center / contain no-repeat; opacity: .35; }

/* Yazı sayfası ekleri */
.yazi-meta a.kat:hover { text-decoration: underline; }
.yazar a { font-size: var(--t-14); color: var(--mercan-koyu); font-weight: 600; }
.yan-kutu .tumu-k { color: var(--mercan-koyu); font-weight: 600; }
.kopyalandi { margin-top: 10px; font-size: var(--t-14); color: var(--gece); }
.etiketler { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0 !important; margin-top: 2.4em !important; }
.etiketler li + li { margin-top: 0 !important; }
.etiketler a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border-radius: 999px; background: var(--kum); color: var(--gece) !important; font-size: var(--t-14); text-decoration: none !important; }
.etiketler a:hover { color: var(--mercan-koyu) !important; }

/* Editör içeriği (eski yazılar klasik editörle, yenileri blok editörle) */
.icerik a { color: var(--mercan-koyu); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; overflow-wrap: anywhere; }
.icerik a:hover { text-decoration-thickness: 2px; }
.icerik h2, .icerik h3, .icerik h4 { color: var(--gece); line-height: 1.3; }
.icerik h3 { font-size: var(--t-20); margin-top: 1.8em; }
.icerik h4 { font-size: 1.125rem; margin-top: 1.6em; }
.icerik ul, .icerik ol { padding-left: 1.3em; }
.icerik li + li { margin-top: .4em; }
.icerik img { border-radius: 10px; height: auto; }
.icerik figure, .icerik .wp-caption { margin: 2em 0; max-width: 100%; }
.icerik .wp-caption-text, .icerik .wp-element-caption { margin-top: 10px; font-size: var(--t-14); color: var(--tas-acik); }
.icerik .aligncenter { margin-inline: auto; }
.icerik .alignleft { float: left; margin: .4em 1.6em 1em 0; max-width: 50%; }
.icerik .alignright { float: right; margin: .4em 0 1em 1.6em; max-width: 50%; }
.icerik::after { content: ""; display: table; clear: both; }
.icerik iframe, .icerik video { max-width: 100%; border-radius: 10px; }
.icerik .wp-block-embed__wrapper iframe, .icerik iframe[src*="youtube"] { width: 100%; height: auto; aspect-ratio: 16 / 9; }
.icerik table { width: 100%; border-collapse: collapse; font-size: var(--t-16); }
.icerik th, .icerik td { padding: 10px 12px; border-bottom: 1px solid var(--cizgi); text-align: left; }
.icerik hr { border: 0; border-top: 1px solid var(--cizgi); margin: 2.4em 0; }
.icerik .gallery, .icerik .wp-block-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 10px; }
.icerik .gallery-item { margin: 0; }
.icerik .gallery img, .icerik .wp-block-gallery img { width: 100%; height: 100%; object-fit: cover; aspect-ratio: 1; }

/* Sabit sayfalar */
.icerik-sayfa { padding-bottom: clamp(56px, 8vw, 104px); }
.sayfa .kapak { margin-bottom: clamp(32px, 5vw, 56px); }
/* Basında Biz */
.basin-liste { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(20px, 3vw, 36px); list-style: none; margin: 0; padding: 0 0 clamp(56px, 8vw, 104px); }
.basin { display: grid; grid-template-columns: minmax(0, 220px) 1fr; gap: 22px; align-items: start; padding: 20px; border: 1px solid var(--cizgi); border-radius: var(--r-kart); }
.basin figure { margin: 0; aspect-ratio: 4 / 3; border-radius: 10px; overflow: hidden; background: var(--kum); }
.basin.gorselsiz { grid-template-columns: 1fr; align-content: center; background: var(--kum); border-color: var(--kum); }
.basin.gorselsiz a { background: var(--beyaz); }
.basin figure img { width: 100%; height: 100%; object-fit: cover; }
.basin h2 { font-size: var(--t-20); line-height: 1.3; }
.basin ul { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 14px 0 0; padding: 0; }
.basin a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border-radius: 999px; background: var(--kum); color: var(--gece); font-size: var(--t-14); font-weight: 500; }
.basin a:hover { color: var(--mercan-koyu); }

/* Referanslar */
.logo-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px; list-style: none; margin: 0; padding: 0; }
.logo-izgara li { display: grid; place-items: center; aspect-ratio: 1; padding: 18px; background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--r-kart); overflow: hidden; }
.logo-izgara img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
.referans-cta { margin: clamp(48px, 6vw, 80px) 0 clamp(56px, 8vw, 104px); padding: clamp(28px, 4vw, 48px); border-radius: var(--r-kart); background: var(--kum); }
.referans-cta h2 { font-size: var(--t-25); }
.referans-cta p { margin: 10px 0 22px; max-width: 56ch; }

/* İletişim */
.iletisim-izgara { display: flex; flex-wrap: wrap; gap: 16px; padding-bottom: clamp(40px, 5vw, 64px); }
.iletisim-kart {
  display: grid; gap: 6px; align-content: start; padding: 26px 24px;
  background: var(--kum); border-radius: var(--r-kart); color: var(--gece);
  transition: background .15s;
}
.iletisim-kart { flex: 1 1 200px; }
.iletisim-kart.eposta { flex: 1.6 1 280px; }
.iletisim-kart:hover { background: #F3EBDF; }
.iletisim-kart svg { width: 24px; height: 24px; color: var(--mercan); margin-bottom: 10px; }
.iletisim-kart span { font-size: var(--t-14); color: var(--tas); }
.iletisim-kart strong { font-weight: 600; overflow-wrap: break-word; }
.ofisler { padding-bottom: clamp(56px, 8vw, 104px); }
.ofisler h2 { font-size: var(--t-25); margin-bottom: 18px; }
.ofisler ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; list-style: none; margin: 0; padding: 0; }
.ofisler li { display: flex; gap: 12px; align-items: flex-start; padding: 20px; border: 1px solid var(--cizgi); border-radius: var(--r-kart); color: var(--gece); }
.ofisler svg { flex: none; width: 18px; height: 18px; margin-top: 4px; color: var(--mercan); }

/* Hakkımda */
.hakkimda-izgara { display: grid; grid-template-columns: minmax(0, 420px) minmax(0, 1fr); gap: clamp(32px, 6vw, 88px); align-items: start; padding-top: clamp(40px, 6vw, 72px); }
.portre { margin: 0; position: sticky; top: 100px; }
.portre img { width: 100%; height: auto; }
.hakkimda h1 { font: 700 clamp(2rem, 4.6vw, 3.4rem)/1.08 var(--f-baslik); letter-spacing: -0.03em; margin-bottom: 8px; }

/* 404 */
.bulunamadi { padding-bottom: clamp(64px, 9vw, 112px); }

/* Yorumlar */
.yorum-alan { padding-block: 0 clamp(64px, 8vw, 104px); }
.devam + .yorum-alan { padding-top: clamp(56px, 7vw, 88px); }
.yorumlar { max-width: 760px; }
.yorumlar > h2 { font-size: var(--t-25); margin-bottom: 24px; }
.yorum-liste, .yorum-liste .children { list-style: none; margin: 0; padding: 0; }
.yorum-liste .children { margin-left: clamp(20px, 4vw, 52px); }
.yorum-liste .comment-body { padding: 20px 0; border-bottom: 1px solid var(--cizgi); }
.yorum-liste .comment-author { display: flex; align-items: center; gap: 12px; color: var(--gece); }
.yorum-liste .comment-author img { border-radius: 50%; }
.yorum-liste .says { display: none; }
.yorum-liste .comment-metadata { margin: 2px 0 10px 56px; font-size: var(--t-14); color: var(--tas-acik); }
.yorum-liste .comment-content { margin-left: 56px; }
.yorum-liste .reply { margin: 8px 0 0 56px; font-size: var(--t-14); font-weight: 600; }
.yorum-liste .reply a { color: var(--mercan-koyu); }
.comment-respond { margin-top: 32px; }
.yorum-baslik { font-size: var(--t-20); margin-bottom: 8px; }
.yorum-not { font-size: var(--t-14); color: var(--tas-acik); margin-bottom: 16px; }
.comment-form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 18px; }
.comment-form > p { margin: 0; }
.comment-form .comment-notes, .comment-form .yorum-not, .comment-form .comment-form-comment, .comment-form .form-submit, .comment-form .comment-form-cookies-consent, .comment-form .comment-form-url { grid-column: 1 / -1; }
.comment-form label { display: block; margin-bottom: 6px; font-size: var(--t-14); font-weight: 500; color: var(--gece); }
.comment-form input[type="text"], .comment-form input[type="email"], .comment-form input[type="url"], .comment-form textarea {
  width: 100%; padding: 12px 14px; font: 400 var(--t-16) var(--f-govde); color: var(--gece);
  border: 1px solid var(--cizgi); border-radius: 10px; background: var(--beyaz);
}
.comment-form input:focus, .comment-form textarea:focus { outline: none; border-color: var(--gece); box-shadow: 0 0 0 3px rgba(11, 63, 154, .18); }
.comment-form-cookies-consent { display: flex; gap: 10px; align-items: flex-start; }
.comment-form-cookies-consent label { font-weight: 400; color: var(--tas); }
.comment-form-cookies-consent input { margin-top: 4px; }

/* Alt menü (footer) WordPress menüsüyle */
.alt-bilgi .alt-menu { display: grid; gap: 12px; }

/* İç sayfa kırılımları */
@media (max-width: 860px) {
  .hakkimda-izgara { grid-template-columns: 1fr; }
  .portre { position: static; max-width: 320px; margin-inline: auto; }
  .basin-liste { grid-template-columns: 1fr; }
  .bolge-nav .bolge-liste { width: 100%; padding-inline: var(--kenar); }
  .ofisler ul { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .basin { grid-template-columns: 1fr; }
  .logo-izgara { grid-template-columns: repeat(3, 1fr); gap: 10px; }
  .logo-izgara li { padding: 10px; }
  .comment-form { grid-template-columns: 1fr; }
  .icerik .alignleft, .icerik .alignright { float: none; margin: 1.6em 0; max-width: 100%; }
  .ara-form .btn { padding: 0 18px; }
  .yorum-liste .comment-content, .yorum-liste .reply, .yorum-liste .comment-metadata { margin-left: 0; }
}
