/* ============================================================
   KAHVE — ortak iç sayfalar (Menü, ürün, Hakkımızda, Galeri, Rezervasyon, SSS, İletişim, KVKK, 404).
   Renk/yazı/köşe değerlerini aktif temanın --k-* değişkenlerinden alır (temalar/*.css :root).
   Sınıflar "k-" önekli; tema ana sayfa sınıflarıyla çakışmaz. Çerçeve yok, hafif gölge.
   ============================================================ */
.k-ic{background:var(--k-bg);color:var(--k-ink);font-family:var(--k-font)}
.k-kap{width:min(var(--k-kap,1200px),calc(100% - 48px));margin-inline:auto}
.k-dar{max-width:860px}
.k-orta{text-align:center}
.k-bolum{padding:64px 0}
.k-bolum-ton{background:var(--k-surface2)}
.k-eyebrow{margin:0 0 8px;font-size:12.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--k-accent2)}
.k-baslik{font-family:var(--k-head-font);font-weight:var(--k-head-weight,700);color:var(--k-head);font-size:clamp(28px,3vw,38px);line-height:1.15;margin:0 0 14px}
.k-lead{font-size:18px;line-height:1.6;color:var(--k-ink)}
.k-ic p{line-height:1.65}
.k-not{margin:28px 0 0;text-align:center;color:var(--k-muted);font-size:14px}
.k-kucuk{font-size:13.5px;opacity:.8}

/* Başlık bandı */
.k-pagehead{position:relative;background:var(--k-dark);color:var(--k-dark-ink);padding:64px 0 56px;overflow:hidden}
.k-pagehead::before{content:"";position:absolute;right:-90px;top:-110px;width:340px;height:340px;border-radius:50%;background:var(--k-accent2);opacity:.16}
.k-pagehead::after{content:"";position:absolute;left:-70px;bottom:-140px;width:280px;height:280px;border-radius:50%;background:var(--k-accent);opacity:.12}
.k-pagehead .k-kap{position:relative;z-index:1}
.k-pagehead h1{font-family:var(--k-head-font);font-weight:var(--k-head-weight,700);font-size:clamp(34px,4.6vw,54px);line-height:1.08;margin:0;color:inherit}
.k-pagehead p{margin:14px 0 0;max-width:620px;font-size:17.5px;opacity:.86}
.k-pagehead .k-eyebrow{color:var(--k-accent2)}
.k-crumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px;font-weight:600;margin-bottom:16px;opacity:.85}
.k-crumb a{color:inherit;text-decoration:none}
.k-crumb a:hover{text-decoration:underline}
.k-crumb span{opacity:.75}
.k-crumb-acik{color:var(--k-muted);margin-bottom:26px}

/* Düğmeler */
.k-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 24px;border:0;border-radius:var(--k-btn-radius);background:var(--k-accent);color:var(--k-accent-ink);font:700 15px var(--k-font);text-decoration:none;cursor:pointer;box-shadow:var(--k-shadow);transition:transform .2s,filter .2s}
.k-btn:hover{transform:translateY(-2px);filter:brightness(1.07)}
.k-btn-ikincil{background:var(--k-surface);color:var(--k-head);box-shadow:0 4px 14px rgba(0,0,0,.06)}
.k-btn-tam{width:100%}
.k-dugmeler{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.tema-lezzetli .k-btn:not(.k-btn-ikincil){clip-path:polygon(2% 12%,8% 7%,18% 10%,31% 3%,45% 8%,60% 2%,75% 7%,92% 3%,98% 14%,96% 31%,100% 46%,96% 63%,99% 83%,90% 92%,73% 89%,58% 98%,42% 92%,25% 97%,10% 91%,1% 95%,4% 73%,0 57%,3% 39%,0 23%);padding:0 30px}

/* Kutular */
.k-kutu{background:var(--k-surface);border-radius:var(--k-radius);box-shadow:var(--k-shadow);padding:30px}
.k-kutu h3{display:flex;align-items:center;gap:9px;font-family:var(--k-head-font);font-weight:var(--k-head-weight,700);color:var(--k-head);font-size:21px;margin:0 0 10px}
.k-kutu.k-orta h3{justify-content:center}
.k-kutu-koyu{background:var(--k-dark);color:var(--k-dark-ink)}
.k-kutu-koyu h3{color:inherit}
.k-sss + .k-kutu{margin-top:34px}

/* Menü */
.k-filtre{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 0 40px}
.k-filtre a{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:999px;background:var(--k-surface);color:var(--k-head);font-weight:700;font-size:14.5px;text-decoration:none;box-shadow:0 4px 14px rgba(0,0,0,.05);transition:background .2s,color .2s}
.k-filtre a.on,.k-filtre a:hover{background:var(--k-accent);color:var(--k-accent-ink)}
.k-menu-grup{margin-bottom:52px}
.k-menu-grup[hidden]{display:none}
.k-menu-grup-bas{display:flex;align-items:center;gap:16px;margin-bottom:22px}
.k-menu-grup-bas h2{font-family:var(--k-head-font);font-weight:var(--k-head-weight,700);color:var(--k-head);font-size:30px;margin:0}
.k-menu-grup-bas p{margin:4px 0 0;color:var(--k-muted);font-size:15.5px}
.k-menu-ikon{width:52px;height:52px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--k-surface);color:var(--k-accent2);box-shadow:var(--k-shadow)}
.k-urun-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}
.k-urun{display:flex;flex-direction:column;background:var(--k-surface);border-radius:var(--k-radius);overflow:hidden;box-shadow:var(--k-shadow);color:var(--k-ink);text-decoration:none;transition:transform .2s}
.k-urun:hover{transform:translateY(-4px)}
.k-urun-foto{display:block;aspect-ratio:4/3;background:var(--k-surface2);overflow:hidden}
.k-urun-foto img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.k-urun:hover .k-urun-foto img{transform:scale(1.05)}
.k-urun-govde{display:flex;flex-direction:column;gap:6px;padding:16px 18px 20px}
.k-urun-ust{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.k-urun-ust b{font-family:var(--k-head-font);font-weight:var(--k-head-weight,700);color:var(--k-head);font-size:19px;line-height:1.25}
.k-urun-ust em{font-style:normal;font-weight:800;color:var(--k-accent);white-space:nowrap}
.k-urun-ozet{color:var(--k-muted);font-size:14.5px;line-height:1.5}

/* Ürün detay */
.k-detay-izgara{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.k-detay-foto img{width:100%;aspect-ratio:4/3.4;object-fit:cover;border-radius:calc(var(--k-radius) + 6px);box-shadow:var(--k-shadow)}
.k-detay-metin h1{font-family:var(--k-head-font);font-weight:var(--k-head-weight,700);color:var(--k-head);font-size:clamp(34px,4vw,50px);line-height:1.1;margin:0 0 12px}
.k-fiyat{font-size:26px;font-weight:800;color:var(--k-accent);margin:0 0 10px}
.k-yazi{color:var(--k-ink);font-size:16.5px}
.k-yazi h2{font-family:var(--k-head-font);color:var(--k-head);font-size:22px;margin:30px 0 8px}
.k-benzer{margin-top:72px}
.k-benzer h2{font-family:var(--k-head-font);font-weight:var(--k-head-weight,700);color:var(--k-head);font-size:28px;margin:0 0 22px}

/* Hakkımızda */
.k-iki-sutun{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.k-yuvarlak-foto{width:100%;height:440px;object-fit:cover;border-radius:calc(var(--k-radius) + 8px);box-shadow:var(--k-shadow)}
.k-ozellik-izgara{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.k-ozellik-izgara article{background:var(--k-surface);border-radius:var(--k-radius);padding:26px;box-shadow:var(--k-shadow)}
.k-ozellik-izgara span{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--k-surface2);color:var(--k-accent2);margin-bottom:14px}
.k-ozellik-izgara h3,.k-adimlar h3{font-family:var(--k-head-font);font-weight:var(--k-head-weight,700);color:var(--k-head);font-size:19px;margin:0 0 6px}
.k-ozellik-izgara p,.k-adimlar p{margin:0;color:var(--k-muted);font-size:15px}
.k-adimlar{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px;margin-top:30px}
.k-adimlar article{position:relative;background:var(--k-surface);border-radius:var(--k-radius);padding:26px 22px;box-shadow:var(--k-shadow)}
.k-adim-no{position:absolute;top:16px;right:18px;font:700 26px var(--k-head-font);color:var(--k-accent2);opacity:.45}
.k-adim-ikon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--k-surface2);color:var(--k-accent2);margin-bottom:14px}

/* Galeri */
.k-galeri{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:28px 0}
.k-galeri a{position:relative;display:block;aspect-ratio:4/3;border-radius:var(--k-radius);overflow:hidden;cursor:zoom-in;box-shadow:var(--k-shadow);background:var(--k-surface2)}
.k-galeri img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.k-galeri a:hover img{transform:scale(1.06)}
.k-galeri span{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 14px;background:linear-gradient(0deg,rgba(0,0,0,.62),transparent);color:#fff;font-weight:600;font-size:14.5px}
.k-galeri-buyuk{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.k-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(10,8,6,.9);display:flex;align-items:center;justify-content:center;padding:30px}
.k-lightbox img{max-width:min(100%,1100px);max-height:86vh;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.k-lightbox-kapat{position:absolute;top:18px;right:24px;width:46px;height:46px;border:0;border-radius:50%;background:#fff;color:#222;font-size:28px;line-height:1;cursor:pointer}

/* SSS */
.k-sss details{background:var(--k-surface);border-radius:var(--k-radius);box-shadow:0 4px 16px rgba(0,0,0,.05);margin:0 0 12px;padding:18px 22px}
.k-sss summary{cursor:pointer;list-style:none;font-weight:700;font-size:16.5px;color:var(--k-head);display:flex;justify-content:space-between;gap:14px}
.k-sss summary::-webkit-details-marker{display:none}
.k-sss summary::after{content:"+";font-size:22px;line-height:1;color:var(--k-accent2)}
.k-sss details[open] summary::after{content:"−"}
.k-sss details p{margin:12px 0 2px;color:var(--k-muted)}

/* Formlar */
.k-form-izgara{display:grid;grid-template-columns:1.35fr .65fr;gap:28px;align-items:start}
.k-iletisim-kartlar + .k-form-izgara{grid-template-columns:1fr 1fr}
.k-yan{display:grid;gap:20px}
.k-form{display:grid;gap:16px;margin-top:22px}
.k-form label{display:grid;gap:7px;font-weight:700;font-size:14px;color:var(--k-head)}
.k-form input,.k-form select,.k-form textarea{width:100%;min-height:50px;padding:12px 14px;border:0;border-radius:calc(var(--k-radius) - 4px);background:var(--k-surface2);color:var(--k-ink);font:500 15.5px var(--k-font);outline:none}
.k-form textarea{min-height:110px;resize:vertical}
.k-form input:focus,.k-form select:focus,.k-form textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--k-accent2) 40%,transparent)}
.k-form small{color:#c0392b;font-weight:600;font-size:13px;min-height:0}
.k-form small:empty{display:none}
.k-satir{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.k-satir-3{grid-template-columns:1.2fr 1fr .8fr}
.k-onay{display:flex!important;grid-template-columns:none;align-items:flex-start;gap:10px!important;font-weight:500!important;color:var(--k-muted)!important}
.k-onay input{width:20px!important;min-height:20px!important;height:20px;flex:none;margin-top:2px;accent-color:var(--k-accent)}
.k-onay a{color:var(--k-accent2)}
.k-hata{color:#c0392b;font-weight:600;font-size:13px;margin-top:-8px}
.k-uyari{display:flex;gap:10px;align-items:center;padding:14px 16px;border-radius:calc(var(--k-radius) - 4px);margin:16px 0 0;font-weight:600}
.k-uyari-ok{background:#e3f6e9;color:#1e6b3a}
.k-uyari-hata{background:#fdecea;color:#a02a1d}
.k-iletisim-kartlar{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:34px}
.k-iletisim-kartlar article{background:var(--k-surface);border-radius:var(--k-radius);padding:24px;box-shadow:var(--k-shadow)}
.k-iletisim-kartlar span{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--k-surface2);color:var(--k-accent2);margin-bottom:12px}
.k-iletisim-kartlar h3{margin:0 0 6px;font-family:var(--k-head-font);color:var(--k-head);font-size:18px}
.k-iletisim-kartlar a,.k-iletisim-kartlar p{margin:0;color:var(--k-muted);text-decoration:none;overflow-wrap:anywhere;line-height:1.5}
.k-harita{height:100%;min-height:380px;border-radius:var(--k-radius);overflow:hidden;box-shadow:var(--k-shadow)}
.k-harita iframe{width:100%;height:100%;min-height:380px;border:0;display:block}
.k-harita-bos{height:100%;min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:24px;background:var(--k-surface2);color:var(--k-head);text-decoration:none}
.k-harita-bos svg{color:var(--k-accent)}
.k-harita-bos span{color:var(--k-muted)}

/* KVKK / 404 */
.k-yazi h2{font-family:var(--k-head-font);font-weight:var(--k-head-weight,700);color:var(--k-head)}
.k-hata-sayfa{padding:90px 0 110px}
.k-hata-ikon{color:var(--k-accent2);display:flex;justify-content:center}
.k-hata-kod{font:800 clamp(80px,15vw,130px)/1 var(--k-head-font);color:var(--k-accent);margin:6px 0 4px}

@media(max-width:900px){
  .k-detay-izgara,.k-iki-sutun,.k-form-izgara,.k-iletisim-kartlar + .k-form-izgara{grid-template-columns:1fr;gap:30px}
  .k-yuvarlak-foto{height:300px}
}
@media(max-width:600px){
  .k-kap{width:calc(100% - 32px)}
  .k-bolum{padding:44px 0}
  .k-pagehead{padding:46px 0 40px}
  .k-pagehead p{font-size:16px}
  .k-kutu{padding:22px}
  .k-satir,.k-satir-3{grid-template-columns:1fr}
  .k-filtre{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;margin-bottom:30px;scrollbar-width:none}
  .k-filtre a{flex:none;padding:10px 16px}
  .k-urun-izgara{grid-template-columns:1fr 1fr;gap:12px}
  .k-urun-govde{padding:12px 12px 14px}
  .k-urun-ust b{font-size:16px}
  .k-urun-ozet{font-size:13px}
  .k-menu-grup-bas h2{font-size:25px}
  .k-galeri,.k-galeri-buyuk{grid-template-columns:1fr 1fr;gap:10px}
}
