/* =====================================================================
   css/style.css — ÖN YÜZ (VİTRİN) ORTAK EK STİLLERİ          Sahibi: M2 (ana sayfa)
   ---------------------------------------------------------------------
   Temel tasarım sistemi css/tasarim.css'tir (TASARIM.md; TEMEL). Bu dosya onun ÜSTÜNE yüklenir ve
   yalnız token kullanır (var(--…)); yeni renk tanımlamaz (karar A: monokrom).
     <link rel="stylesheet" href="css/tasarim.css">
     <link rel="stylesheet" href="css/style.css">
   İçerik:
     0. v1 geçiş stilleri (YALNIZ sınıfsız <body> taşıyan eski v1 sayfaları; yeni sayfaları etkilemez)
     1. Ortak vitrin ekleri: yıldız puanı, mobil çekmece, ışık kutusu (lightbox), KVKK/bilgi modalı,
        sosyal ikonlar, Google atfı, yükleniyor/hata/bakım ekranları  → randevu.html / sorgula.html de kullanabilir
     2. Ana sayfa bölüm ekleri (as- önekli): hero foto, güven şeridi, menü sütunları, ekip, galeri, yorumlar, iletişim
     3. Canlı düzenleme modu yer tutucuları (html.duzenleme-modu; asıl düzenleyici stilleri M11: css/duzenleme-modu.css)
     4. Hareket azaltma / yazdırma
   Kurallar: color-mix(), :has(), CSS nesting YOK (TASARIM §12).
   ===================================================================== */

/* =====================================================================
   0. v1 GEÇİŞ STİLLERİ — sınıfsız <body> (eski randevu.html / sorgula.html). M1 sayfaları yeniledikten sonra silinebilir.
   ===================================================================== */
body:not([class]){
  --v1-bg:#0f1117; --v1-kart:#fff; --v1-metin:#1a1d26; --v1-soluk:#6b7280; --v1-cizgi:#e5e7eb;
  --v1-birincil:#111111; --v1-vurgu:#111111; --v1-vurgu-zemin:#f3f3f3;
  font-family:'Segoe UI',system-ui,-apple-system,Roboto,sans-serif;
  background:#f5f5f5; color:var(--v1-metin); min-height:100vh; line-height:1.5;
}
body:not([class]) .ust{background:var(--v1-bg);padding:22px 16px;text-align:center}
body:not([class]) .ust img,body:not([class]) .logo-cember{height:72px;width:72px;border-radius:50%;object-fit:cover;background:#fff;padding:4px;display:inline-block}
body:not([class]) .logo-yazi{color:#fff;font-weight:800;letter-spacing:2px;font-size:20px;margin-top:8px;text-transform:uppercase}
body:not([class]) .sarmal{max-width:620px;margin:0 auto;padding:18px 16px 60px}
body:not([class]) .baslik-serit{background:var(--v1-birincil);color:#fff;text-align:center;padding:14px;border-radius:14px;font-weight:700;margin-bottom:18px}
body:not([class]) .kart{background:var(--v1-kart);border:0;border-radius:14px;box-shadow:0 4px 24px rgba(0,0,0,.08);padding:22px;margin-bottom:16px;color:var(--v1-metin)}
body:not([class]) .kart h2{font-size:17px;margin-bottom:16px;display:flex;align-items:center;gap:8px}
body:not([class]) .kart h2 .no{background:var(--v1-vurgu);color:#fff;width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:14px}
body:not([class]) label{display:block;font-size:13px;font-weight:600;color:var(--v1-soluk);margin:14px 0 6px}
body:not([class]) input,body:not([class]) select,body:not([class]) textarea{width:100%;padding:13px 14px;border:1.5px solid var(--v1-cizgi);border-radius:10px;font-size:16px;background:#fff;color:var(--v1-metin)}
body:not([class]) input:focus,body:not([class]) select:focus,body:not([class]) textarea:focus{outline:none;border-color:var(--v1-vurgu);box-shadow:0 0 0 3px rgba(0,0,0,.12)}
body:not([class]) .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:0;padding:15px;border:none;border-radius:10px;font-size:15px;font-weight:700;cursor:pointer;background:var(--v1-birincil);color:#fff;margin-top:8px;box-shadow:none}
body:not([class]) .btn:hover{background:#000}
body:not([class]) .btn:disabled{opacity:.5;cursor:not-allowed}
body:not([class]) .btn-vurgu{background:var(--v1-vurgu)}
body:not([class]) .btn-ikincil{background:#fff;color:var(--v1-metin);border:1.5px solid var(--v1-cizgi)}
body:not([class]) .btn-ikincil:hover{background:#f3f4f6}
body:not([class]) .btn-sira{display:flex;gap:10px}
body:not([class]) .btn-sira .btn{margin-top:0}
body:not([class]) .geri{display:inline-block;color:var(--v1-metin);font-size:14px;margin-bottom:12px;text-decoration:underline}
body:not([class]) .adimlar{display:flex;justify-content:center;gap:6px;margin-bottom:18px}
body:not([class]) .adimlar span{width:36px;height:5px;border-radius:3px;background:var(--v1-cizgi)}
body:not([class]) .adimlar span.aktif{background:var(--v1-vurgu)}
body:not([class]) .adimlar span.tamam{background:#555}
body:not([class]) .grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:480px){ body:not([class]) .grid{grid-template-columns:1fr} }
body:not([class]) .secim{border:2px solid var(--v1-cizgi);border-radius:12px;padding:16px;cursor:pointer;display:flex;flex-direction:column;gap:4px;background:#fff;position:relative}
body:not([class]) .secim:hover,body:not([class]) .secim.secili{border-color:var(--v1-vurgu)}
body:not([class]) .secim.secili{background:var(--v1-vurgu-zemin)}
body:not([class]) .secim .ad{font-weight:700;font-size:15px}
body:not([class]) .secim .alt{font-size:13px;color:var(--v1-soluk)}
body:not([class]) .secim .fiyat{font-weight:700;font-size:15px}
body:not([class]) .berber-avatar{width:48px;height:48px;border-radius:50%;background:var(--v1-birincil);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;margin-bottom:6px}
body:not([class]) .tarih-serit{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px}
body:not([class]) .tarih-kutu{min-width:62px;text-align:center;border:2px solid var(--v1-cizgi);border-radius:12px;padding:10px 6px;cursor:pointer;flex-shrink:0}
body:not([class]) .tarih-kutu.secili{background:var(--v1-birincil);color:#fff;border-color:var(--v1-birincil)}
body:not([class]) .tarih-kutu .gun,body:not([class]) .tarih-kutu .ay{font-size:11px;text-transform:uppercase;opacity:.8}
body:not([class]) .tarih-kutu .sayi{font-size:20px;font-weight:700;margin:2px 0}
body:not([class]) .saat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;margin-top:6px}
body:not([class]) .saat-kutu{text-align:center;padding:11px 4px;border:2px solid var(--v1-cizgi);border-radius:10px;cursor:pointer;font-weight:600}
body:not([class]) .saat-kutu.secili{background:var(--v1-vurgu);color:#fff;border-color:var(--v1-vurgu)}
body:not([class]) .ozet-satir{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px dashed var(--v1-cizgi);font-size:14px}
body:not([class]) .ozet-satir:last-child{border:none;font-weight:700;font-size:16px;padding-top:12px}
body:not([class]) .rozet{display:inline-block;height:auto;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600}
body:not([class]) .r-onay{background:#dcfce7;color:#166534} body:not([class]) .r-bekle{background:#f1f1f1;color:#333}
body:not([class]) .r-iptal{background:#fee2e2;color:#991b1b} body:not([class]) .r-tamam{background:#e8e8e8;color:#111} body:not([class]) .r-gelmedi{background:#f1f1f1;color:#666}
body:not([class]) .bos{text-align:center;color:var(--v1-soluk);padding:30px 10px;font-size:14px}
body:not([class]) .yukleniyor{text-align:center;color:var(--v1-soluk);padding:20px}
body:not([class]) .spin{display:inline-block;width:20px;height:20px;border:3px solid var(--v1-cizgi);border-top-color:var(--v1-vurgu);border-radius:50%;animation:don .7s linear infinite}
body:not([class]) .basari-kutu{text-align:center;padding:20px}
body:not([class]) .basari-kutu .tik{width:72px;height:72px;border-radius:50%;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:38px;margin:0 auto 16px}
body:not([class]) .kod-goster{font-size:30px;font-weight:800;letter-spacing:4px;background:var(--v1-vurgu-zemin);border:2px dashed var(--v1-vurgu);border-radius:12px;padding:14px;margin:14px 0}
body:not([class]) .rv-kart{border:1.5px solid var(--v1-cizgi);border-radius:12px;padding:16px;margin-bottom:12px;border-left:5px solid var(--v1-vurgu)}
body:not([class]) .rv-kart .ust-satir{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}
body:not([class]) .rv-kart .tarih-b{font-weight:700;font-size:16px}
body:not([class]) .rv-kart .mini{font-size:13px;color:var(--v1-soluk)}

/* =====================================================================
   1. ORTAK VİTRİN EKLERİ
   ===================================================================== */

/* ---- 1.1 Yıldız puanı (kesirli doluluk: 4,6 → %92) ----
   <span class="puan-yildiz" style="--doluluk:92%" role="img" aria-label="5 üzerinden 4,6"><span class="puan-yildiz-dolu">★★★★★</span></span>
   İkonlar sprite'tan (#yildiz) gelir; dolu katman genişlik ile kırpılır. */
.puan-yildiz{ position:relative; display:inline-flex; gap:2px; color: var(--metin-3); line-height:0; vertical-align:middle; }
.puan-yildiz .ikon{ width:16px; height:16px; stroke-width:1.5; }
.puan-yildiz-dolu{ position:absolute; left:0; top:0; bottom:0; display:inline-flex; gap:2px; overflow:hidden; width: var(--doluluk, 100%); color: var(--vurgu-metin); white-space:nowrap; }
.puan-yildiz-dolu .ikon{ fill: currentColor; stroke: currentColor; flex:none; }
.puan-yildiz--buyuk .ikon{ width:20px; height:20px; }
.puan-yildiz--kucuk .ikon{ width:13px; height:13px; }

/* ---- 1.2 Mobil menü çekmecesi (tasarim.css .cekmece tabanını genişletir) ---- */
.cekmece{ overflow-y:auto; overscroll-behavior: contain; padding-top: 0; gap: 0; }
.cekmece[hidden]{ display:none!important; }
.cekmece-ust{ position:sticky; top:0; z-index:1; display:flex; align-items:center; justify-content:space-between; gap: var(--b-4); height:72px; margin: 0 calc(var(--kenar) * -1) var(--b-6); padding: 0 var(--kenar); background: var(--zemin); border-bottom:1px solid var(--cizgi); }
.cekmece-kapat{ width:44px; height:44px; display:grid; place-items:center; border-radius:50%; border:1px solid var(--cizgi-guclu); color: var(--metin); }
.cekmece-kapat:hover{ background: var(--yuzey-2); }
.cekmece-menu{ display:flex; flex-direction:column; }
.cekmece a.cekmece-link{ color: var(--metin); transition: padding var(--sure) var(--egri), color var(--sure-hizli); }
.cekmece a.cekmece-link .ikon{ color: var(--metin-3); transition: transform var(--sure) var(--egri); }
.cekmece a.cekmece-link:hover{ padding-left: 6px; }
.cekmece a.cekmece-link:hover .ikon{ transform: translateX(3px); color: var(--metin); }
.cekmece-eylem{ display:flex; flex-direction:column; gap: var(--b-3); margin-top: var(--b-8); }
.cekmece-iletisim{ margin-top:auto; padding-top: var(--b-8); display:flex; flex-direction:column; gap: var(--b-3); font-size: var(--fs-sm); color: var(--metin-2); }
.cekmece-iletisim a{ display:flex; align-items:center; gap: var(--b-3); }
.cekmece-iletisim .ikon{ color: var(--metin-3); }
.js-hareket .cekmece:not([hidden]){ animation: cekmece-gir .38s var(--egri-yay, var(--egri)) both; }
.js-hareket .cekmece:not([hidden]) .cekmece-link{ animation: yukari-gir .5s var(--egri-yay, var(--egri)) both; animation-delay: calc(var(--i, 0) * 45ms + 60ms); }
@keyframes cekmece-gir{ from{ opacity:0; transform: translateY(-8px); } to{ opacity:1; transform:none; } }
@media (min-width:960px){ .cekmece{ display:none!important; } }
html.kaydirma-kilit, html.kaydirma-kilit body{ overflow:hidden; }

/* ---- 1.3 Işık kutusu (galeri lightbox) ---- */
.isik-kutu{ position:fixed; inset:0; z-index: var(--z-modal); display:flex; flex-direction:column; background: rgba(0,0,0,.94); color:#fff; animation: sol var(--sure) var(--egri); touch-action: pan-y; }
.isik-kutu[hidden]{ display:none!important; }
.isik-kutu-ust{ display:flex; align-items:center; justify-content:space-between; gap: var(--b-4); padding: calc(12px + env(safe-area-inset-top)) var(--kenar) 12px; }
.isik-kutu-sayac{ font-size: var(--fs-xs); font-weight:700; letter-spacing:.2em; color: rgba(255,255,255,.7); font-variant-numeric: tabular-nums; }
.isik-kutu-dugme{ width:48px; height:48px; display:grid; place-items:center; border-radius:50%; border:1px solid rgba(255,255,255,.22); color:#fff; background: rgba(255,255,255,.04); transition: background var(--sure-hizli), border-color var(--sure-hizli); }
.isik-kutu-dugme:hover{ background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.5); }
.isik-kutu-dugme:focus-visible{ box-shadow: 0 0 0 3px rgba(255,255,255,.55); }
.isik-kutu-sahne{ position:relative; flex:1; min-height:0; display:flex; align-items:center; justify-content:center; padding: 0 var(--kenar); }
.isik-kutu-sahne img{ max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; border-radius: var(--r-sm); box-shadow: 0 30px 80px -20px rgba(0,0,0,.8); animation: isik-gir .45s var(--egri-yay, var(--egri)); user-select:none; -webkit-user-drag:none; }
@keyframes isik-gir{ from{ opacity:0; transform: scale(.97); } to{ opacity:1; transform:none; } }
.isik-kutu-onceki,.isik-kutu-sonraki{ position:absolute; top:50%; transform: translateY(-50%); z-index:1; }
.isik-kutu-onceki{ left: var(--kenar); } .isik-kutu-sonraki{ right: var(--kenar); }
.isik-kutu-alt{ padding: 14px var(--kenar) calc(18px + env(safe-area-inset-bottom)); text-align:center; font-family: var(--font-baslik); font-size: var(--fs-lg); min-height: 56px; color: rgba(255,255,255,.92); }
@media (max-width:640px){ .isik-kutu-onceki,.isik-kutu-sonraki{ top:auto; bottom: 12px; transform:none; } .isik-kutu-alt{ padding-left: 72px; padding-right: 72px; } .isik-kutu-sahne{ padding:0; } .isik-kutu-sahne img{ border-radius:0; } }

/* ---- 1.4 Sosyal ikonlar (marka ikonları sprite'ta yoksa satır içi dolgu SVG) ---- */
.ikon--dolu{ fill: currentColor; stroke:none; }

/* ---- 1.5 Google atfı (Places politikası: kaynak ve bağlantılar görünür olmalı) — monokrom ---- */
.google-atif{ display:inline-flex; align-items:center; gap:8px; font-size: var(--fs-xs); font-weight:700; color: var(--metin-2); letter-spacing:.01em; }
.google-atif svg{ width:16px; height:16px; flex:none; }
.google-yazi{ font-family: 'Product Sans', var(--font-govde); font-weight:700; letter-spacing:-.01em; color: var(--metin); }

/* ---- 1.6 Yükleniyor / hata / bakım ---- */
.as-iskelet-hero{ padding: clamp(40px, 6vw, 96px) 0; }
.as-iskelet-hero .kap{ display:grid; gap: var(--b-6); }
.as-iskelet-satir{ height: 18px; border-radius: var(--r-sm); }
.as-iskelet-baslik{ height: clamp(48px, 7vw, 84px); border-radius: var(--r-md); max-width: 680px; }
.as-iskelet-daire{ width: min(60vw, 300px); aspect-ratio: 1/1; border-radius:50%; justify-self:center; }
@media (min-width:960px){ .as-iskelet-hero .kap{ grid-template-columns: 1.1fr .9fr; align-items:center; } .as-iskelet-daire{ grid-row: span 4; grid-column: 2; grid-row-start:1; } }
.as-hata{ min-height: 60vh; display:grid; place-items:center; text-align:center; padding: var(--b-16) var(--kenar); }
.as-hata .yigin{ align-items:center; max-width: 520px; }
.as-hata .ikon--xl{ color: var(--metin-3); }
.as-bakim{ min-height: 100vh; display:grid; place-items:center; text-align:center; padding: var(--b-12) var(--kenar); background: radial-gradient(60% 50% at 50% 30%, rgba(255,255,255,.06), transparent 70%), var(--zemin); }
.as-bakim .yigin{ align-items:center; max-width: 560px; gap: var(--b-6); }
.as-bakim .logo-kap{ width: 160px; }
.as-zengin p + p{ margin-top: var(--b-4); }
.as-zengin a{ text-decoration: underline; text-underline-offset: 3px; }
.as-zengin ul,.as-zengin ol{ padding-left: 1.2em; margin: var(--b-3) 0; }
.as-zengin ul{ list-style: disc; } .as-zengin ol{ list-style: decimal; }

/* =====================================================================
   2. ANA SAYFA BÖLÜM EKLERİ (as-)
   ===================================================================== */

/* ---- 2.1 Üst bar ---- */
.ust-bar .marka-logo{ display:block; }
.ust-bar-eylem .btn--birincil .ikon{ display:none; }
@media (max-width:380px){ .ust-bar-eylem .btn--birincil{ padding: 0 14px; } }
.menu-dugme{ color: var(--metin); transition: background var(--sure-hizli), border-color var(--sure-hizli); }
.menu-dugme:hover{ background: var(--yuzey-2); border-color: var(--metin-3); }
.logo-duz{ display:inline-block; line-height:0; }
.logo-duz img{ display:block; width:100%; height:auto; }

/* ---- 2.2 Hero ---- */
.vitrin main [id]{ scroll-margin-top: 80px; }
.buyuk-soz.as-zemin{ background: var(--zemin); }
.js-hareket .bugun-kart.as-yenilendi{ animation:none; }
.as-karsilama{ position:relative; }
.hero-foto{ position:absolute; inset:0; z-index:-3; overflow:hidden; pointer-events:none; }
.hero-foto img{ width:100%; height:100%; object-fit:cover; filter: grayscale(1) contrast(1.08) brightness(.55); opacity:.42; }
.hero-foto::after{ content:""; position:absolute; inset:0; background: linear-gradient(90deg, var(--zemin) 0%, rgba(var(--zemin-rgb),.82) 45%, rgba(var(--zemin-rgb),.35) 100%), linear-gradient(0deg, var(--zemin) 0%, transparent 35%); }
@media (max-width:959px){ .hero-foto::after{ background: linear-gradient(0deg, var(--zemin) 10%, rgba(var(--zemin-rgb),.6) 60%, rgba(var(--zemin-rgb),.4) 100%); } }
.hero-kapali{ display:flex; align-items:flex-start; gap: var(--b-3); padding: var(--b-4); border-radius: var(--r-md); border:1px solid var(--cizgi-guclu); background: rgba(var(--yuzey-rgb),.7); font-size: var(--fs-sm); color: var(--metin-2); max-width: 46ch; text-align:left; }
.hero-kapali .ikon{ color: var(--metin); margin-top:1px; }
.as-guven-oge b .ikon{ width:22px; height:22px; stroke-width:1.5; color: var(--metin-2); }
.as-guven-metin{ font-family: var(--font-baslik); font-size: var(--fs-lg); font-weight:500; line-height:1.25; color: var(--metin); max-width: 18ch; }
.guven-oge .puan-yildiz .ikon{ width:15px; height:15px; }
.bugun-kart-baslik small{ font-weight:600; color: var(--metin-3); margin-left:6px; }
.bugun-kart-not{ display:flex; gap:6px; align-items:flex-start; font-size: var(--fs-xs); color: var(--metin-3); line-height:1.45; }
.bugun-kart-not .ikon{ margin-top:1px; }
.bugun-kart-bos{ font-size: var(--fs-sm); color: var(--metin-2); }
.yakin-slotlar a:focus-visible{ border-radius: var(--r-tam); }

/* ---- 2.3 Hakkımızda ---- */
.hakkimizda-gorsel{ overflow:visible; }
.hakkimizda-damga div{ display:flex; flex-direction:column; align-items:center; gap:4px; padding: 0 10px; }
.hakkimizda-damga span{ line-height:1.25; }
.istatistikler--2{ grid-template-columns: repeat(2, 1fr); }
.istatistikler--1{ grid-template-columns: 1fr; }
.istatistikler--4{ grid-template-columns: repeat(2, 1fr); }
@media (min-width:640px){ .istatistikler--4{ grid-template-columns: repeat(4, 1fr); } }
.istatistik b sup.as-ek{ margin-left: 2px; }
.guven-oge b sup.as-ek{ font-size: .6em; vertical-align: top; position: relative; top: .1em; margin-left: 1px; color: var(--metin-2); }
.as-hak-metin{ display:flex; flex-direction:column; gap: var(--b-4); }
.as-hak-metin .as-zengin{ font-size: var(--fs-lg); line-height:1.7; color: var(--metin-2); max-width: 60ch; }
.as-hak-metin .alinti{ margin-top: var(--b-4); }

/* ---- 2.4 Hizmet menüsü: kategoriler iki sütuna akar (sıra korunur) ---- */
.menu-izgara.as-menu-kolon{ display:block; column-count:1; column-gap: var(--b-16); }
@media (min-width:960px){ .menu-izgara.as-menu-kolon{ column-count:2; } }
.as-menu-kolon .menu-grup{ break-inside: avoid; -webkit-column-break-inside: avoid; page-break-inside: avoid; display:block; padding-bottom: var(--b-10); }
.as-menu-kolon .menu-grup:last-child{ padding-bottom:0; }
.menu-grup[hidden]{ display:none!important; }
.menu-grup-aciklama{ font-size: var(--fs-sm); color: var(--metin-2); margin: -8px 0 var(--b-2); }
.menu-grup h3 .ikon{ width:22px; height:22px; stroke-width:1.4; color: var(--metin-2); align-self:center; }
/* Kategori çipleri: dar ekranda sıkışmaz (adet rozeti kenara yapışmasın); sığarsa ortalı, taşarsa baştan kaydırılır */
.as-menu-cipler{ justify-content:flex-start!important; }
.as-menu-cipler .cip{ flex:none; }
.as-menu-cipler .cip:first-child{ margin-left:auto; }
.as-menu-cipler .cip:last-child{ margin-right:auto; }
a.menu-oge{ display:block; color: inherit; position:relative; border-radius: 2px; }
a.menu-oge:focus-visible{ box-shadow: 0 0 0 3px rgba(0,0,0,.35); }
.menu-oge-sec{ display:inline-flex; align-items:center; gap:4px; font-size: var(--fs-xs); font-weight:800; letter-spacing:.06em; text-transform:uppercase; color: var(--murekkep); opacity:0; transform: translateX(-4px); transition: opacity var(--sure) var(--egri), transform var(--sure) var(--egri); white-space:nowrap; }
.menu-oge-sec .ikon{ width:14px; height:14px; }
/* "Seç" yer kaplamasın: süre fiyatla aynı sağ kenara hizalanır; hover'da süre yerine "Seç →" belirir */
.menu-oge-alt .sira{ position:relative; }
.menu-oge-alt .menu-oge-sec{ position:absolute; right:0; top:0; bottom:0; padding-left: 10px; background: var(--kagit); pointer-events:none; }
a.menu-oge:hover .menu-oge-sec,a.menu-oge:focus-visible .menu-oge-sec{ opacity:1; transform:none; }
@media (hover:none){ .menu-oge-sec{ display:none; } }
.menu-oge-sure-yalniz{ font-family: var(--font-govde); font-size: var(--fs-md); font-weight:700; }
.as-menu-bos{ text-align:center; padding: var(--b-10) 0; color: var(--metin-2); }

/* ---- 2.5 Ekip ---- */
.ekip-izgara.as-ekip-1{ max-width: 420px; margin: 0 auto; grid-template-columns: 1fr; }
@media (min-width:640px){ .ekip-izgara.as-ekip-2{ max-width: 860px; margin: 0 auto; } }
@media (min-width:960px){ .ekip-izgara.as-ekip-2{ grid-template-columns: repeat(2, 1fr); } .ekip-izgara.as-ekip-4{ grid-template-columns: repeat(4, 1fr); } }
.ekip-puan{ display:inline-flex; align-items:center; gap:8px; font-size: var(--fs-xs); font-weight:700; color: var(--metin-2); }
.ekip-puan b{ color: var(--metin); font-variant-numeric: tabular-nums; }
.ekip-bio{ font-size: var(--fs-sm); color: var(--metin-2); line-height:1.55; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient: vertical; overflow:hidden; }
.ekip-govde .ust-baslik{ font-size: 10px; }
/* Kartlar eşit yükseklikte: alt şerit (müsaitlik + Randevu al) her kartta aynı hizaya oturur */
.ekip-govde{ flex:1; }
.ekip-govde .ekip-alt{ margin-top:auto; }
.ekip-acilir b{ white-space:nowrap; }

/* ---- 2.6 Galeri ---- */
.galeri-oge{ margin:0; }
.galeri-ac{ position:absolute; inset:0; z-index:2; width:100%; height:100%; border-radius: inherit; cursor: zoom-in; }
.galeri-ac:focus-visible{ box-shadow: inset 0 0 0 3px rgba(255,255,255,.7); }
.galeri-oge:focus-within .galeri-buyut{ opacity:1; transform:none; }
.as-galeri-bas{ flex-direction:row; align-items:flex-end; justify-content:space-between; max-width:none; flex-wrap:wrap; gap: var(--b-4); }

/* ---- 2.7 Yorumlar ---- */
.as-yorum-bas{ flex-direction:row; align-items:flex-end; justify-content:space-between; max-width:none; flex-wrap:wrap; gap: var(--b-6); }
.puan-ozet .puan-ozet-metin{ font-size: var(--fs-sm); color: var(--metin-3); }
.puan-ozet .puan-ozet-metin a{ color: var(--metin-2); text-decoration: underline; text-underline-offset: 3px; }
.puan-ozet-ek{ display:flex; flex-direction:column; gap:6px; }
.puan-ozetler{ display:flex; align-items:center; gap: var(--b-8); flex-wrap:wrap; }
.puan-ozet--kucuk b{ font-size: 2rem; }
.yorum-sekmeler{ display:flex; gap: var(--b-2); margin: calc(var(--b-6) * -1) 0 var(--b-8); flex-wrap:wrap; }
.yorum-izgara .as-yorum-grup{ display:contents; }
.yorum[hidden],.as-yorum-grup[hidden]{ display:none!important; }
.yorum-ust{ display:flex; align-items:center; justify-content:space-between; gap: var(--b-3); padding-right: 52px; min-height: 24px; }
.yorum-kaynak{ display:inline-flex; align-items:center; gap:6px; font-size: var(--fs-2xs); font-weight:800; letter-spacing:.12em; text-transform:uppercase; color: var(--metin-3); }
.yorum-kaynak .ikon{ width:14px; height:14px; }
.yorum-kaynak svg.g-isaret{ width:14px; height:14px; }
.yorum-cevap{ border-left: 2px solid var(--cizgi-guclu); padding: 2px 0 2px var(--b-4); font-size: var(--fs-sm); color: var(--metin-2); line-height:1.6; }
.yorum-cevap b{ display:block; font-size: var(--fs-2xs); letter-spacing:.14em; text-transform:uppercase; color: var(--metin-3); margin-bottom:4px; }
.yorum-kisi .avatar img{ position:absolute; inset:0; }
.yorum-kisi a{ text-decoration: underline; text-decoration-color: var(--cizgi-guclu); text-underline-offset: 3px; }
.yorum-link{ font-size: var(--fs-xs); font-weight:700; color: var(--metin-2); display:inline-flex; align-items:center; gap:4px; margin-left:auto; }
.yorum-link:hover{ color: var(--metin); }
.yorum-link .ikon{ width:13px; height:13px; }
.yorum-kisi{ flex-wrap:wrap; }
.yorum p.yorum-metin--uzun{ display:-webkit-box; -webkit-line-clamp: 7; -webkit-box-orient: vertical; overflow:hidden; }
.yorum-alt-cubuk{ display:flex; align-items:center; justify-content:space-between; gap: var(--b-4); flex-wrap:wrap; margin-top: var(--b-8); padding-top: var(--b-6); border-top:1px solid var(--cizgi); }
.as-daha-fazla{ display:flex; justify-content:center; margin-top: var(--b-8); }

/* ---- 2.8 Saatler & iletişim ---- */
.saat-tablo td small{ display:block; font-size: var(--fs-2xs); font-weight:600; color: var(--metin-3); letter-spacing:.02em; margin-top:2px; }
.saat-tablo tr.kapatma th,.saat-tablo tr.kapatma td{ color: var(--hata); }
.as-kapatma-not{ display:flex; gap: var(--b-3); align-items:flex-start; margin-top: var(--b-4); padding: var(--b-4); border-radius: var(--r-md); border:1px dashed var(--cizgi-guclu); font-size: var(--fs-sm); color: var(--metin-2); }
.as-kapatma-not .ikon{ color: var(--metin); flex:none; margin-top:1px; }
.as-kapatma-not b{ color: var(--metin); }
.harita-cizim{ position:absolute; inset:0; background:
  linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px) 0 0/48px 48px,
  linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px) 0 0/48px 48px,
  linear-gradient(28deg, transparent 46%, rgba(255,255,255,.12) 46%, rgba(255,255,255,.12) 49%, transparent 49%),
  linear-gradient(-62deg, transparent 58%, rgba(255,255,255,.09) 58%, rgba(255,255,255,.09) 60%, transparent 60%),
  var(--yuzey); }
.harita-pim{ position:absolute; left:50%; top:46%; transform: translate(-50%,-100%); display:flex; flex-direction:column; align-items:center; gap:6px; pointer-events:none; }
.harita-pim span{ width:48px; height:48px; border-radius:50% 50% 50% 0; transform: rotate(-45deg); background: var(--vurgu); display:grid; place-items:center; box-shadow: 0 10px 30px rgba(0,0,0,.5); }
.harita-pim .ikon{ transform: rotate(45deg); color: var(--vurgu-uzeri); }
.harita-nabiz{ position:absolute; left:50%; top:46%; margin:-4px 0 0 -4px; color: var(--metin); }
.harita-etiket{ position:absolute; left:50%; bottom: 16px; transform: translateX(-50%); max-width: calc(100% - 32px); padding: 8px 14px; border-radius: var(--r-tam); background: rgba(var(--zemin-rgb),.8); border:1px solid var(--cizgi-guclu); font-size: var(--fs-xs); font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
a.harita{ display:block; }
a.harita:hover .harita-etiket{ background: var(--vurgu); color: var(--vurgu-uzeri); }
.iletisim-oge > div{ min-width:0; }
.iletisim-oge b{ display:block; overflow-wrap:anywhere; }
.iletisim-sosyal{ display:flex; align-items:center; justify-content:space-between; gap: var(--b-4); padding-top: var(--b-4); border-top:1px solid var(--cizgi); flex-wrap:wrap; }
.iletisim-sosyal small{ font-size: var(--fs-xs); color: var(--metin-3); font-weight:600; letter-spacing:.04em; }
.as-bilgi-kart{ padding: 28px; }
.as-bilgi-kart--sag{ display:flex; flex-direction:column; gap: 20px; }
@media (max-width:640px){ .as-bilgi-kart{ padding: 20px; } }

/* ---- 2.9 Kapanış ---- */
.as-kapanis-bolum{ padding-top:0; }
.as-kapanis-bolum.as-kapanis--ayri{ padding-top: var(--bolum-dikey); }

/* ---- 2.10 Alt bilgi ---- */
.alt-bilgi ul li > span{ color: var(--metin-2); font-size: var(--fs-sm); }
.alt-bilgi .marka-ad b{ font-size: 1.25rem; }
.alt-bilgi-son a{ color: var(--metin-2); }
.alt-bilgi-son a:hover{ color: var(--metin); text-decoration: underline; text-underline-offset:3px; }
.alt-bilgi-son button{ font-size: inherit; color: var(--metin-2); }
.alt-bilgi-son button:hover{ color: var(--metin); text-decoration: underline; text-underline-offset:3px; }

/* ---- 2.10b Mobil yapışkan CTA: hero butonları görünürken gizli (anasayfa.js) ---- */
.mobil-cta{ transition: transform var(--sure) var(--egri), opacity var(--sure) var(--egri), visibility 0s; }
.mobil-cta--gizli{ transform: translateY(calc(100% + 24px)); opacity:0; visibility:hidden; pointer-events:none; transition: transform var(--sure) var(--egri), opacity var(--sure) var(--egri), visibility 0s var(--sure); }

/* ---- 2.11 Duyuru ---- */
.duyuru-kapat{ color: var(--vurgu-uzeri); }

/* =====================================================================
   3. CANLI DÜZENLEME MODU — boş alan/bölüm yer tutucuları (M2 üretir; düzenleyici arayüzü M11)
   ===================================================================== */
.duzenleme-modu [data-bos-metin]:empty::before{ content: attr(data-bos-metin); opacity:.45; font-style: italic; font-family: var(--font-govde); font-size: .8em; font-weight:600; letter-spacing:0; text-transform:none; }
.duzenleme-modu [data-bos-metin]:empty{ display:inline-block; min-width: 3em; min-height: 1em; outline: 1px dashed rgba(127,127,127,.55); outline-offset: 4px; }
.duzenleme-modu [data-cms-liste][data-cms-bos],.duzenleme-modu [data-katalog-liste][data-cms-bos]{ display:block!important; min-height: 64px; border:1px dashed rgba(127,127,127,.55); border-radius: var(--r-md); position:relative; }
.duzenleme-modu [data-cms-liste][data-cms-bos]::before,.duzenleme-modu [data-katalog-liste][data-cms-bos]::before{ content: attr(data-bos-metin); position:absolute; inset:0; display:grid; place-items:center; padding: 8px 16px; text-align:center; font-size: var(--fs-sm); font-weight:600; opacity:.6; }
.duzenleme-modu [data-bolum]{ position:relative; }
.duzenleme-modu .hero-guven [data-cms-liste][data-cms-bos]{ flex:1 1 260px; min-width:240px; }
.duzenleme-modu img.as-bos-gorsel{ opacity:0; }
.duzenleme-modu .as-duzen-gorsel-yer{ position:absolute; right: var(--kenar); top: 16px; z-index:3; display:inline-flex; align-items:center; gap:8px; padding: 8px 14px; border-radius: var(--r-tam); border:1px dashed var(--cizgi-guclu); font-size: var(--fs-xs); font-weight:700; color: var(--metin-2); background: rgba(var(--zemin-rgb),.7); }
.duzenleme-modu .as-duzen-gorsel-yer img{ width: 28px; height: 28px; border-radius: 6px; object-fit:cover; }
.as-duzen-yalniz{ display:none!important; }
.duzenleme-modu .as-duzen-yalniz{ display:revert!important; }
.duzenleme-modu .duyuru.as-duyuru-bos{ background: var(--yuzey-2); color: var(--metin-2); }

/* =====================================================================
   4. HAREKET AZALTMA / YAZDIRMA
   ===================================================================== */
@media (prefers-reduced-motion: reduce){
  .isik-kutu,.isik-kutu-sahne img,.cekmece,.cekmece .cekmece-link{ animation:none!important; }
  .menu-oge-sec{ transition:none; }
}
@media print{
  .cekmece,.isik-kutu,.serit,.hero-gorsel,.bugun-kart,.hero-isinlar,.hero-spot{ display:none!important; }
  .bolum,.hero{ padding: 24px 0!important; }
}

/* Duyuru bandı rengi (M8 duyurular.m8_renk): acik = beyaz bant (varsayılan .duyuru) · koyu = siyah bant + ince çizgi */
.duyuru.duyuru--koyu{ background: var(--zemin-2); color: var(--metin); border-bottom: 1px solid var(--cizgi); }
.duyuru.duyuru--koyu .duyuru-kapat{ color: var(--metin); }
.duyuru.duyuru--koyu .duyuru-kapat:hover{ background: rgba(255,255,255,.12); }
