/* Basımhanem - Vitrin Ortak Stil (tüm sayfalarda yüklenir)
 *
 * Bu paletin/fontun kökeni: kullanıcının kendi tasarladığı/onayladığı ilk
 * "Basımhanem" görsel kimliği (zarf + mühür motifi, Fraunces+Work Sans,
 * krem/gül kurusu/adaçayı/altın renk paleti). O ilk tasarım farklı bir iş
 * modeline (teklif/pazarlık) göre kodlanmıştı ve o kod artık kullanılmıyor,
 * ama GÖRSEL kimliği bilinçli olarak bu (çalışan, sabit-fiyat+atölye
 * yönlendirmeli) sisteme taşındı - bkz. proje notları.
 */

/* GÜVENLİK/HIZ (2026-09-19 performans denetimi): Google Fonts buradan
 * @import ile DEĞİL, her sayfanın <head>'inde doğrudan bir <link
 * rel="stylesheet"> + <link rel="preconnect"> ile yükleniyor. CSS içindeki
 * @import RENDER-BLOCKING bir zincir yaratır: tarayıcı önce bu style.css'i
 * TAMAMEN indirip ayrıştırmalı, ANCAK O ZAMAN @import'u keşfedip
 * fonts.googleapis.com'a, ordan da gerçek font dosyaları için
 * fonts.gstatic.com'a gidebilir - üç sıralı round-trip. HTML <head>'deki
 * <link> etiketleri ise tarayıcının "preload scanner"ı tarafından HTML
 * indirilirken hemen (style.css ile PARALEL) keşfedilir, ayrıca
 * preconnect ile DNS/TLS el sıkışması da erkenden başlar. Aynı fontlar,
 * aynı ağırlıklar - sadece NEREDEN istendiği değişti.
 */

:root {
  --bh-ink: #2e2a26;
  --bh-ink-soft: #726a61;
  --bh-bg: #fbf7f1;
  --bh-surface: #ffffff;
  --bh-surface-tint: #f3ece1;
  --bh-line: #e9dfd1;
  --bh-accent: #c68b82;        /* gül kurusu (açık) */
  --bh-accent-dark: #b06f66;   /* gül kurusu (koyu) - ana vurgu rengi */
  --bh-accent-darker: #98564d;
  --bh-sage: #8ca089;
  --bh-sage-deep: #728572;
  --bh-gold: #c6a24b;
  --bh-cream: #f3ece1;
  --bh-rose-wash: #f3e2dd;
  --bh-sage-wash: #e6ebe3;
  --bh-danger: #b3261e;
  --bh-success: #1e7a34;
  --bh-radius: 6px;
  --bh-radius-sm: 4px;
  --bh-shadow: 0 2px 10px rgba(46,42,38,0.06);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: hidden; }
body {
  margin: 0;
  font-family: 'Work Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  background: var(--bh-bg);
  color: var(--bh-ink);
  line-height: 1.55;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, .bh-serif { font-family: 'Fraunces', Georgia, 'Times New Roman', serif; font-weight: 500; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button { font-family: inherit; cursor: pointer; }
:focus-visible { outline: 2px solid var(--bh-accent-dark); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; } }

.bh-wrap { max-width: 1120px; margin: 0 auto; padding: 0 20px; }

/* --- Header --- */
#bhHeader { background: rgba(251,247,241,0.95); backdrop-filter: blur(8px); border-bottom: 1px solid var(--bh-line); position: sticky; top: 0; z-index: 50; }
.bh-nav-top { max-width: 1120px; margin: 0 auto; padding: 14px 20px; display: grid; grid-template-columns: minmax(max-content,1fr) minmax(0,640px) minmax(max-content,1fr); align-items: center; gap: 16px; }
/* 2026-09-19 (kullanıcı talebi): arama kutusu "tam ortada" görünsün istendi.
   Orta grid sütunu (.bh-nav-search) sağdaki/soldaki sütunlar arasındaki
   BOŞ alanda ortalanıyor - sağ taraf (Hesabım/Favoriler/Sepetim/Tasarımımı
   Yükle, ~440px) sol taraftan (hamburger+logo, ~211px) çok daha geniş
   olduğu için arama kutusu gerçek merkeze göre sola kaymış duruyordu. Sol
   sütuna, sağ sütunun gerçek genişliğiyle eşleşen bir min-width vererek iki
   sütunu simetrik hale getiriyoruz - böylece grid arama kutusunu gerçekten
   ortalar (aşağıdaki 1100px kırılımı, .bh-nav-actions'ın etiketlerini
   gizlediği mevcut kırılımla AYNI - bkz. altındaki media query). */
.bh-nav-left { display: flex; align-items: center; gap: 12px; min-width: 0; justify-self: start; }
/* ≥1101px'te sağdaki (Hesabım/Favoriler/Sepetim/Tasarımımı Yükle, etiketli)
   sütun daha geniş (~440px) - sol sütunu ona eşitliyoruz. 901-1100px
   arasında ise .bh-nav-actions etiketleri gizlenip küçüldüğü (bkz. aşağıdaki
   1100px kırılımı) için bu kez SOL sütun (hamburger+logo, ~211px) daha
   geniş kalıyor - orada da sağ sütunu sola eşitliyoruz. */
@media (min-width: 1101px) { .bh-nav-left { min-width: 442px; } }
@media (min-width: 901px) and (max-width: 1100px) { .bh-nav-actions { min-width: 212px; } }
.bh-menu-toggle { display: flex; flex-direction: column; gap: 4px; padding: 6px; flex-shrink: 0; background: none; border: none; }
.bh-menu-toggle span { width: 20px; height: 2px; background: var(--bh-ink); display: block; }
.bh-logo { font-size: 19px; display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; color: var(--bh-ink); font-family: 'Fraunces', serif; }
.bh-logo-mark { width: 22px; height: 22px; flex-shrink: 0; color: var(--bh-ink); }
.bh-logo em, .bh-logo-word em { font-style: italic; color: var(--bh-accent-dark); }
.bh-logo-text { display: flex; flex-direction: column; line-height: 1.05; }
.bh-logo-tagline { font-family: 'Work Sans', sans-serif; font-size: 8px; letter-spacing: .14em; text-transform: uppercase; color: var(--bh-ink-soft); font-weight: 600; margin-top: 3px; }
.bh-nav-search { justify-self: center; width: 100%; max-width: 640px; position: relative; display: flex; }
.bh-nav-search input { width: 100%; padding: 12px 46px 12px 16px; border: 1px solid var(--bh-line); border-radius: 8px; font-size: 13.5px; background: var(--bh-surface-tint); font-family: inherit; }
.bh-nav-search input:focus { outline: none; border-color: var(--bh-accent-dark); }
.bh-arama-oneri { position: absolute; top: calc(100% + 6px); left: 0; right: 0; background: #fff; border: 1px solid var(--bh-line); border-radius: 8px; box-shadow: 0 14px 34px rgba(40,35,28,.14); max-height: 420px; overflow-y: auto; z-index: 40; }
.bh-arama-oneri-item { display: flex; align-items: center; gap: 12px; padding: 9px 14px; text-decoration: none; color: inherit; border-bottom: 1px solid var(--bh-line); }
.bh-arama-oneri-item:last-of-type { border-bottom: 0; }
.bh-arama-oneri-item:hover, .bh-arama-oneri-item:focus { background: var(--bh-surface-tint); }
.bh-arama-oneri-thumb { width: 40px; height: 40px; flex-shrink: 0; border-radius: 6px; overflow: hidden; background: var(--bh-surface-tint); display: flex; align-items: center; justify-content: center; }
.bh-arama-oneri-thumb img { width: 100%; height: 100%; object-fit: cover; }
.bh-arama-oneri-ikon { font-size: 17px; }
.bh-arama-oneri-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.bh-arama-oneri-ad { font-size: 13px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bh-arama-oneri-fiyat { font-size: 11.5px; color: var(--bh-ink-soft); }
.bh-arama-oneri-tumu { display: block; text-align: center; padding: 11px 14px; font-size: 12.5px; font-weight: 600; color: var(--bh-accent-dark); text-decoration: none; }
.bh-arama-oneri-bos { padding: 14px; font-size: 12.5px; color: var(--bh-ink-soft); }
.bh-search-btn { position: absolute; top: 4px; right: 4px; bottom: 4px; width: 38px; background: var(--bh-accent-dark); border-radius: 6px; color: #fff; display: flex; align-items: center; justify-content: center; }
.bh-search-btn:hover { background: var(--bh-accent-darker); }
.bh-search-btn svg { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 2; }
.bh-nav-actions { display: flex; gap: 10px; align-items: center; justify-content: flex-end; flex-wrap: nowrap; flex-shrink: 0; justify-self: end; }
.bh-icon-btn { position: relative; padding: 6px; color: var(--bh-ink); font-size: 12.5px; font-weight: 500; display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.bh-icon-btn svg { width: 20px; height: 20px; stroke: currentColor; fill: none; stroke-width: 1.6; flex-shrink: 0; }
.bh-cart-badge { position: absolute; top: -2px; left: 14px; background: var(--bh-accent-dark); color: #fff; font-size: 10px; width: 16px; height: 16px; border-radius: 50%; display: flex; align-items: center; justify-content: center; padding: 0; }
.bh-cart-badge[hidden] { display: none; }
.bh-upload-cta { display: inline-flex; align-items: center; gap: 6px; background: var(--bh-accent-dark); color: #fff; padding: 10px 16px; border-radius: 6px; font-size: 12.5px; font-weight: 600; white-space: nowrap; }
.bh-upload-cta:hover { background: var(--bh-accent-darker); }
.bh-upload-cta svg { width: 15px; height: 15px; stroke: currentColor; fill: none; stroke-width: 1.8; }
/* --- Üst ince duyuru şeridi (kargo/güven/kurumsal linkleri) --- */
.bh-announce-bar { background: var(--bh-accent-dark); color: #f3ede2; }
.bh-announce-inner { max-width: 1416px; margin: 0 auto; padding: 8px 28px; display: flex; align-items: center; justify-content: space-between; gap: 20px; font-size: 11.5px; }
.bh-announce-trust, .bh-announce-links { white-space: nowrap; }
.bh-announce-mid { display: flex; gap: 22px; flex-wrap: wrap; }
.bh-announce-links { display: flex; gap: 16px; }
.bh-announce-links a { color: #f3ede2; opacity: .85; }
.bh-announce-links a:hover { opacity: 1; text-decoration: underline; }
@media (max-width: 1100px) { .bh-icon-btn span, .bh-upload-cta span { display: none; } .bh-cart-badge { left: auto; right: -4px; } }
@media (max-width: 900px) { .bh-upload-cta { display: none; } }
@media (max-width: 760px) { .bh-announce-mid { display: none; } }
@media (max-width: 560px) { .bh-announce-links { display: none; } }
/* geriye dönük uyum (eski .bh-nav-link kullanan bir sayfa kalırsa) */
.bh-nav-links { display: flex; gap: 18px; flex-wrap: wrap; }
.bh-nav-link { font-size: 14px; color: var(--bh-ink-soft); padding: 6px 2px; border-bottom: 2px solid transparent; }
.bh-nav-link:hover, .bh-nav-link.active { color: var(--bh-ink); border-bottom-color: var(--bh-accent-dark); }

/* --- Masaüstü yatay kategori çubuğu + mega menü (900px altında tamamen
   gizlenir - mobilde gezinme sadece hamburger çekmece ile yapılır, bkz.
   assets/site.js'teki renderCategoryBarHtml). Açılma saf CSS :hover/
   :focus-within ile - JS gerekmez, klavye ile Tab'lanınca da açılır. --- */
.bh-catbar { display: none; border-top: 1px solid var(--bh-line); background: var(--bh-surface); }
@media (min-width: 901px) {
  .bh-catbar { display: block; }
}
/* 2026-09-19 (kullanıcı talebi): önceden bu satır tek satıra sığmayan
   öğeleri gizli bir yatay kaydırma alanına ("scrollbar-width:none" ile
   görünmez) taşıyordu - sağ kenarda ince bir soluklaşma+ok ipucu eklenmiş
   olsa da (aşağıdaki .has-overflow, artık kullanılmıyor) kullanıcı bunu
   "sayfa taşmış/bozuk" olarak algıladı. flex-wrap:wrap ile artık hiçbir
   öğe kesilmiyor/kaydırma gerekmiyor - sığmayan öğeler ikinci satıra akıyor. */
.bh-catbar-inner { max-width: 1120px; margin: 0 auto; padding: 6px 20px; display: flex; flex-wrap: wrap; align-items: center; gap: 2px; }
.bh-catbar-item { position: relative; }
.bh-catbar-item > a { display: block; padding: 12px 14px; font-size: 13.5px; color: var(--bh-ink); border-bottom: 2px solid transparent; white-space: nowrap; }
.bh-catbar-item.active > a, .bh-catbar-item:hover > a, .bh-catbar-item:focus-within > a { color: var(--bh-accent-dark); border-bottom-color: var(--bh-accent); }
.bh-catbar-item.soon { padding: 12px 14px; font-size: 13.5px; color: var(--bh-ink-soft); opacity: .6; white-space: nowrap; }
.bh-catbar-item.soon em { font-style: normal; font-size: 10px; margin-left: 3px; }
.bh-catbar-flyout { position: fixed; opacity: 0; pointer-events: none; transform: translateY(4px); transition: opacity .12s, transform .12s; background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: 0 0 var(--bh-radius) var(--bh-radius); box-shadow: 0 16px 34px -12px rgba(46,42,38,0.28); padding: 20px 24px; display: flex; gap: 28px; min-width: 260px; z-index: 200; }
.bh-catbar-flyout.visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
.bh-catbar-col h4 { margin: 0 0 8px; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; color: var(--bh-ink-soft); font-weight: 600; }
.bh-catbar-col a.all { display: block; padding: 8px 0 2px; font-size: 13px; white-space: nowrap; font-weight: 600; color: var(--bh-accent-dark); margin-top: 4px; }
/* Kategori menüsündeki ürün satırları - küçük fotoğraf + isim (2026-09-18,
   bkz. renderCategoryBarHtml). .bh-arama-oneri-item ile aynı görsel desen -
   hem masaüstü mega menü panelinde hem hamburger çekmecesinde kullanılır. */
.bh-catbar-plink { display: flex; align-items: center; gap: 10px; padding: 6px 0; font-size: 13px; color: var(--bh-ink); white-space: nowrap; }
.bh-catbar-plink:hover { color: var(--bh-accent-dark); }
.bh-catbar-plink-thumb { width: 34px; height: 34px; flex-shrink: 0; border-radius: 5px; overflow: hidden; background: var(--bh-surface-tint); display: flex; align-items: center; justify-content: center; }
.bh-catbar-plink-thumb img { width: 100%; height: 100%; object-fit: cover; }
.bh-catbar-plink-ikon { font-size: 15px; }
.bh-catbar-plink-name { overflow: hidden; text-overflow: ellipsis; }

/* --- Hamburger çekmece (drawer) menü --- */
.bh-drawer-overlay { position: fixed; inset: 0; background: rgba(46,42,38,0.35); z-index: 80; opacity: 0; pointer-events: none; transition: opacity .2s; }
.bh-drawer-overlay.open { opacity: 1; pointer-events: auto; }
.bh-drawer { position: fixed; top: 0; left: 0; bottom: 0; width: 320px; max-width: 86vw; background: var(--bh-surface); z-index: 90; transform: translateX(-100%); transition: transform .25s; display: flex; flex-direction: column; }
.bh-drawer.open { transform: translateX(0); }
.bh-drawer-head { background: var(--bh-surface-tint); padding: 22px; display: flex; justify-content: space-between; align-items: flex-start; border-bottom: 1px solid var(--bh-line); }
.bh-drawer-head .hi { font-size: 12.5px; color: var(--bh-ink-soft); }
.bh-drawer-head .who { font-size: 16.5px; margin-top: 4px; font-family: 'Fraunces', serif; }
.bh-drawer-close { color: var(--bh-ink); font-size: 22px; padding: 4px; background: none; border: none; line-height: 1; }
.bh-drawer-list { flex: 1; overflow-y: auto; }
.bh-drawer-cats { border-bottom: 1px solid var(--bh-line); }
.bh-drawer-cats a { display: flex; justify-content: space-between; align-items: center; padding: 14px 22px; font-size: 15px; border-bottom: 1px solid var(--bh-line); }
.bh-drawer-cats a:hover { background: var(--bh-surface-tint); color: var(--bh-accent-dark); }
.bh-drawer-cats a svg { width: 15px; height: 15px; stroke: var(--bh-ink-soft); fill: none; stroke-width: 1.8; flex-shrink: 0; }
.bh-drawer-cats .soon { display: flex; justify-content: space-between; align-items: center; padding: 14px 22px; font-size: 15px; border-bottom: 1px solid var(--bh-line); color: var(--bh-ink-soft); opacity: .65; }
.bh-drawer-cats .soon-tag { font-size: 10.5px; color: var(--bh-accent-dark); background: var(--bh-rose-wash); border-radius: 10px; padding: 2px 8px; flex-shrink: 0; }
.bh-drawer-cat { border-bottom: 1px solid var(--bh-line); }
.bh-drawer-cat-head { width: 100%; display: flex; justify-content: space-between; align-items: center; padding: 14px 22px; font-size: 15px; background: none; border: none; text-align: left; color: var(--bh-ink); font-family: inherit; cursor: pointer; }
.bh-drawer-cat-head:hover { background: var(--bh-surface-tint); color: var(--bh-accent-dark); }
.bh-drawer-cat-head svg { width: 15px; height: 15px; stroke: var(--bh-ink-soft); fill: none; stroke-width: 1.8; flex-shrink: 0; transition: transform .15s ease; }
.bh-drawer-cat-head.open { color: var(--bh-accent-dark); }
.bh-drawer-cat-head.open svg { transform: rotate(90deg); stroke: var(--bh-accent-dark); }
.bh-drawer-sub { padding: 2px 22px 14px 22px; background: var(--bh-surface-tint); }
.bh-drawer-sub .bh-catbar-col h4 { font-size: 10.5px; margin: 8px 0 6px; }
/* .bh-drawer-cats a (yukarıda) daha yüksek özgüllükle (2 sınıf) bu linke de
   bulaşıp display/justify-content'i eziyordu (thumb+isim yerine
   solda-küçük-resim/sağda-uzak-isim görünümüne yol açıyordu) - burada açıkça
   geri alıyoruz. */
.bh-drawer-sub .bh-catbar-plink { display: flex; justify-content: flex-start; align-items: center; font-size: 13.5px; padding: 8px 0; }
.bh-drawer-sub .bh-catbar-col a.all { white-space: normal; }
.bh-drawer-simple-links a { display: block; padding: 14px 22px; font-size: 14.5px; border-bottom: 1px solid var(--bh-line); }
.bh-drawer-simple-links a:hover { background: var(--bh-surface-tint); color: var(--bh-accent-dark); }
.bh-drawer-foot { border-top: 1px solid var(--bh-line); }
.bh-drawer-foot a { display: flex; align-items: center; gap: 10px; padding: 15px 22px; font-size: 14.5px; border-bottom: 1px solid var(--bh-line); }
.bh-drawer-foot a svg { width: 17px; height: 17px; stroke: var(--bh-ink-soft); fill: none; stroke-width: 1.6; flex-shrink: 0; }

/* --- Çerez onay banner'ı (yüzen kart, eski tasarımla aynı dil) --- */
/* --- Çerez banner'ı (2026-09-18 revizyonu): rakip ekran görüntüsündeki
   "koyu kart + başlık" düzeni benimsendi, ama rakibin turuncu/siyah paleti
   yerine sitenin kendi koyu zeytin + altın kimliği kullanıldı ("Hoş Geldin
   İndirimi" pop-up'ının üst gradyanıyla AYNI, bkz. .bh-hosgeldin-top) - tam
   genişlik bir çubuk yerine sol altta sofistike/kompakt bir kart. --- */
.bh-cookie-banner { position: fixed; left: 20px; bottom: 20px; z-index: 100; max-width: 380px; background: linear-gradient(150deg, #2f3328 0%, #23261c 100%); color: #f3ede2; border-radius: 14px; padding: 24px 24px 20px; box-shadow: 0 30px 70px -18px rgba(20,18,14,0.5); }
.bh-cookie-banner[hidden] { display: none; }
.bh-cookie-banner h3 { margin: 0 0 8px; font-size: 18px; color: #fff; font-family: 'Fraunces', serif; font-weight: 500; }
.bh-cookie-banner p { margin: 0 0 18px; font-size: 12.5px; color: rgba(243,237,226,0.8); line-height: 1.55; }
.bh-cookie-banner a { color: var(--bh-gold); text-decoration: underline; }
.bh-cookie-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.bh-cookie-actions .bh-btn { white-space: nowrap; flex: 1; min-width: 130px; border-radius: 8px; font-size: 12.5px; padding: 11px 14px; border-color: transparent; }
.bh-cookie-actions .bh-btn:not(.primary) { background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.2); color: #f3ede2; }
.bh-cookie-actions .bh-btn:not(.primary):hover { background: rgba(255,255,255,0.16); border-color: rgba(255,255,255,0.32); }
.bh-cookie-actions .bh-btn.primary { background: var(--bh-gold); color: #2f3328; font-weight: 600; }
.bh-cookie-actions .bh-btn.primary:hover { background: #d9b567; }
@media (max-width: 480px) { .bh-cookie-banner { left: 12px; right: 12px; bottom: 12px; max-width: none; } }
/* 2026-09-18 (dip detay denetimi): mobilde çerez banner'ı tam genişliğe
   yayılınca (üstteki kural), sağ alttaki AI sohbet balonuyla ("Tümünü Kabul
   Et" butonunun tam üzerinde) çakışıyordu. Banner görünürken balonu (ve açık
   olabilecek sohbet panelini) mobilde geçici olarak gizle - banner
   kapatılınca (el.hidden = true, bkz. site.js renderCookieBanner) :has()
   canlı olarak yeniden değerlendirilip balon otomatik geri gelir. */
@media (max-width: 480px) {
  body:has(#bhCerezBanner:not([hidden])) .bh-ak-bubble,
  body:has(#bhCerezBanner:not([hidden])) .bh-ak-panel { display: none; }
}

/* --- Küçük çizgisel ikon seti (2026-09-18, kullanıcı talebi: renkli
   pictograph emojiler "sofistike/şık bir baskı sitesine" uygun görünmüyordu
   - bkz. BH.svgIcon() içindeki tam liste). currentColor kullanır, yani
   rengini her zaman kapsayan elemandan alır - ayrı bir renk kuralı gerekmez. --- */
.bh-ico { display: inline-flex; flex-shrink: 0; vertical-align: -0.15em; }
.bh-ico svg { width: 1em; height: 1em; stroke: currentColor; fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }

/* --- "Hoş Geldin İndirimi" pop-up'ı (2026-09-18, kullanıcı talebi: ilk
   ziyarette e-posta karşılığında %10 kupon kodu + zorunlu ticari elektronik
   ileti onayı - bkz. assets/site.js renderHosgeldinPopup()). Rakip
   ekran görüntüsündeki turuncu/beyaz + stok fotoğraf yerine sitenin kendi
   paleti (koyu zeytin + altın, bkz. sepet sayfasındaki .bh-cart-bundle-promo
   ile aynı gradyan) ve tek sütunlu sade bir kart kullanılıyor. --- */
.bh-hosgeldin-overlay { position: fixed; inset: 0; z-index: 200; background: rgba(32,36,28,0.55); display: flex; align-items: center; justify-content: center; padding: 20px; }
.bh-hosgeldin-overlay[hidden] { display: none; }
.bh-hosgeldin-modal { position: relative; width: 100%; max-width: 420px; background: var(--bh-surface); border-radius: 10px; box-shadow: 0 30px 70px -20px rgba(20,18,14,0.45); overflow: hidden; max-height: 92vh; overflow-y: auto; }
.bh-hosgeldin-close { position: absolute; top: 12px; right: 12px; width: 30px; height: 30px; border-radius: 50%; border: none; background: rgba(255,255,255,0.7); color: var(--bh-ink); display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 16px; line-height: 1; z-index: 2; }
.bh-hosgeldin-close:hover { background: #fff; }
.bh-hosgeldin-top { background: linear-gradient(105deg, #2f3328 0%, #3a3f30 100%); color: #f3ede2; padding: 26px 30px 22px; text-align: center; }
.bh-hosgeldin-eyebrow { display: block; font-size: 10px; font-weight: 600; letter-spacing: .28em; color: var(--bh-gold); margin-bottom: 10px; }
.bh-hosgeldin-top h3 { margin: 0 0 6px; font-size: 26px; line-height: 1.15; color: #fff; }
.bh-hosgeldin-top p { margin: 0; font-size: 13px; color: #d8d3c4; line-height: 1.5; }
.bh-hosgeldin-body { padding: 22px 28px 26px; }
.bh-hosgeldin-form label.field { display: block; font-size: 12px; color: var(--bh-ink-soft); margin-bottom: 6px; }
.bh-hosgeldin-form input[type="email"] { width: 100%; padding: 12px 14px; border: 1px solid var(--bh-line); border-radius: var(--bh-radius-sm); font-size: 14px; font-family: inherit; background: var(--bh-surface-tint); }
.bh-hosgeldin-form input[type="email"]:focus { outline: none; border-color: var(--bh-accent-dark); }
.bh-hosgeldin-consent { display: flex; gap: 9px; align-items: flex-start; margin: 14px 0 4px; }
.bh-hosgeldin-consent input { margin-top: 3px; flex-shrink: 0; }
.bh-hosgeldin-consent span { font-size: 11.5px; line-height: 1.55; color: var(--bh-ink-soft); }
.bh-hosgeldin-consent a { text-decoration: underline; color: var(--bh-ink-soft); }
.bh-hosgeldin-submit { width: 100%; margin-top: 16px; padding: 13px; border: none; border-radius: var(--bh-radius-sm); background: #2f3328; color: #fff; font-size: 14px; font-weight: 600; cursor: pointer; }
.bh-hosgeldin-submit:hover { background: #20241c; }
.bh-hosgeldin-submit:disabled { opacity: .6; cursor: not-allowed; }
.bh-hosgeldin-msg { margin-top: 10px; font-size: 12.5px; }
.bh-hosgeldin-msg.error { color: var(--bh-danger); }
.bh-hosgeldin-later { display: block; width: 100%; text-align: center; margin-top: 10px; font-size: 12px; color: var(--bh-ink-soft); text-decoration: underline; background: none; border: none; cursor: pointer; }
.bh-hosgeldin-success { padding: 30px 28px 28px; text-align: center; }
.bh-hosgeldin-success p { margin: 0 0 16px; font-size: 13.5px; color: var(--bh-ink-soft); line-height: 1.5; }
.bh-hosgeldin-code-row { display: flex; gap: 8px; align-items: center; justify-content: center; background: var(--bh-surface-tint); border: 1.5px dashed var(--bh-gold); border-radius: var(--bh-radius-sm); padding: 14px; margin-bottom: 14px; }
.bh-hosgeldin-code { font-family: 'Fraunces', serif; font-size: 22px; letter-spacing: .08em; color: var(--bh-accent-dark); font-weight: 600; }
.bh-hosgeldin-copy-btn { border: 1px solid var(--bh-line); background: var(--bh-surface); border-radius: var(--bh-radius-sm); padding: 7px 12px; font-size: 12px; cursor: pointer; }
.bh-hosgeldin-copy-btn:hover { border-color: var(--bh-accent-dark); }
.bh-hosgeldin-devam { display: inline-block; font-size: 13px; color: var(--bh-accent-dark); text-decoration: underline; }
@media (max-width: 480px) { .bh-hosgeldin-top { padding: 22px 22px 18px; } .bh-hosgeldin-top h3 { font-size: 22px; } .bh-hosgeldin-body { padding: 18px 20px 22px; } }

/* --- Footer --- */
#bhFooter { background: var(--bh-surface-tint); border-top: 1px solid var(--bh-line); margin-top: 60px; }
.bh-footer-inner { max-width: 1120px; margin: 0 auto; padding: 40px 20px 0; display: grid; grid-template-columns: 1.5fr 0.9fr 0.9fr 0.9fr; gap: 24px; padding-bottom: 30px; border-bottom: 1px solid var(--bh-line); }
.bh-footer-inner .bh-foot-brand strong { font-family: 'Fraunces', serif; font-size: 18px; font-weight: 500; }
.bh-footer-inner .bh-foot-slogan { font-family: 'Fraunces', serif; font-style: italic; font-size: 14px; color: var(--bh-accent-dark); margin: 8px 0 0; }
.bh-footer-inner h4 { margin: 0 0 10px; font-size: 13px; font-family: 'Work Sans', sans-serif; font-weight: 600; }
.bh-footer-inner a { display: block; font-size: 13px; color: var(--bh-ink-soft); margin-bottom: 6px; }
.bh-footer-inner a:hover { color: var(--bh-accent-dark); }
.bh-footer-inner p { font-size: 13px; color: var(--bh-ink-soft); margin: 8px 0 0; max-width: 34ch; }
.bh-footer-bottom { text-align: center; font-size: 12px; color: var(--bh-ink-soft); padding: 16px 0 22px; }
@media (max-width: 640px) { .bh-footer-inner { grid-template-columns: 1fr 1fr; } }
@media (max-width: 460px) { .bh-footer-inner { grid-template-columns: 1fr; } }

/* --- Hero --- */
.bh-hero { background: linear-gradient(180deg, #f7ece4 0%, var(--bh-bg) 100%); padding: 40px 20px 0; }
.bh-hero-slide { max-width: 720px; margin: 0 auto; position: relative; background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: var(--bh-radius); padding: 36px 28px; text-align: center; overflow: hidden; }
.bh-hero-visual { aspect-ratio: 16/9; max-height: 200px; background: var(--bh-surface-tint); border-radius: var(--bh-radius); display: flex; align-items: center; justify-content: center; margin-bottom: 24px; }
.bh-mini-env { width: 40%; aspect-ratio: 3/2; background: var(--bh-surface); border: 1px solid var(--bh-line); position: relative; }
.bh-mini-env::before { content: ""; position: absolute; left: 0; top: 0; width: 0; height: 0; border-left: calc(45% + 1px) solid transparent; border-right: calc(45% + 1px) solid transparent; border-top: 46% solid var(--bh-surface-tint); }
.bh-mini-env::after { content: ""; position: absolute; left: 50%; top: 32%; width: 14px; height: 14px; border-radius: 50%; background: var(--bh-accent-dark); transform: translateX(-50%); }
.bh-hero-badge { display: inline-flex; align-items: center; gap: 6px; background: var(--bh-surface-tint); padding: 7px 14px; font-size: 12.5px; color: var(--bh-accent-dark); border-radius: 20px; margin-bottom: 14px; }
.bh-hero h1 { font-size: clamp(24px, 4vw, 36px); line-height: 1.2; max-width: 22ch; margin: 0 auto; }
.bh-hero h1 .warm { color: var(--bh-accent-dark); }
.bh-hero p { margin: 14px auto 0; max-width: 48ch; color: var(--bh-ink-soft); font-size: 15px; }
.bh-hero .bh-btn.primary { margin-top: 20px; }
.bh-hero-badges { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; margin-top: 18px; }

.bh-trust { border-top: 1px solid var(--bh-line); background: var(--bh-surface); margin-top: 32px; }
.bh-trust-row { max-width: 1120px; margin: 0 auto; padding: 16px 20px; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px 24px; }
.bh-trust-item { display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--bh-ink-soft); white-space: nowrap; }

/* --- Buttons ---
 * 2026-09-21 ("tıklama butonları daha profesyonel olsa" talebi): mevcut
 * renk paleti/boyutlar/sınıf isimleri (.primary/.block/.danger/.disabled-
 * look) AYNI - sadece hover'da hafif "kalkma" (translateY) + yumuşak gölge,
 * basılı tutarken (:active) geri oturma ve klavyeyle gezinirken görünür bir
 * :focus-visible halkası eklendi. Bu, tüm sayfalardaki (checkout, admin,
 * atölye paneli, sepet vb.) .bh-btn kullanan HER buton için otomatik
 * geçerli - ayrıca değiştirilmesi gereken bir yer YOK.
 */
.bh-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 22px; border-radius: var(--bh-radius-sm); border: 1px solid var(--bh-line); background: var(--bh-surface); color: var(--bh-ink); font-size: 14px; font-weight: 500; cursor: pointer; box-shadow: 0 1px 2px rgba(46,42,38,.05); transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .12s ease; }
.bh-btn:hover { border-color: var(--bh-accent-dark); box-shadow: 0 4px 12px -4px rgba(46,42,38,.18); transform: translateY(-1px); }
.bh-btn:active { transform: translateY(0); box-shadow: 0 1px 2px rgba(46,42,38,.08); }
.bh-btn:focus-visible { outline: 2px solid var(--bh-accent-dark); outline-offset: 2px; }
.bh-btn.primary { background: var(--bh-accent-dark); color: #fff9f5; border-color: var(--bh-accent-dark); font-weight: 600; box-shadow: 0 2px 8px -2px color-mix(in srgb, var(--bh-accent-dark) 45%, transparent); }
.bh-btn.primary:hover { background: var(--bh-accent-darker); border-color: var(--bh-accent-darker); box-shadow: 0 6px 16px -4px color-mix(in srgb, var(--bh-accent-darker) 50%, transparent); }
.bh-btn.block { width: 100%; }
.bh-btn:disabled { opacity: .5; cursor: not-allowed; transform: none; box-shadow: none; }
.bh-btn.disabled-look { cursor: not-allowed; transform: none; box-shadow: none; }
.bh-btn.danger { color: var(--bh-danger); border-color: #f0c9c4; }
.bh-btn.danger:hover { box-shadow: 0 4px 12px -4px rgba(179,38,30,.18); }

/* --- Kategori grid (anasayfa) --- */
.bh-section { padding: clamp(40px, 6vw, 64px) 0; }
.bh-section h1, .bh-section h2 { font-size: clamp(22px, 2.8vw, 28px); margin: 0 0 20px; }
/* 2026-09-21: sayfa başlığının altında, kurumsal/sofistike hissi güçlendiren
 * kısa bir güven/bağlam cümlesi için (bkz. odeme.html) - başlığın margin'ini
 * bindirmemek adına h2'ye bitişik, sonraki bloktan önce nefes payı bırakır. */
.bh-checkout-eyebrow { margin: -14px 0 24px; color: var(--bh-ink-soft); font-size: 14px; }
.bh-cat-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 16px; }
.bh-cat-card { background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: var(--bh-radius); padding: 24px 16px; text-align: center; transition: .15s; }
.bh-cat-card:hover { border-color: var(--bh-accent-dark); }
.bh-cat-card .emoji { font-size: 32px; display: block; margin-bottom: 10px; }
.bh-cat-card .icon-img { width: 56px; height: 56px; border-radius: 50%; display: block; margin: 0 auto 10px; }
.bh-cat-card .lbl { font-family: 'Fraunces', serif; font-size: 15px; }
.bh-cat-card.soon { opacity: .55; cursor: default; }
.bh-cat-card.soon:hover { border-color: var(--bh-line); }
.bh-cat-soon-tag { display: block; font-size: 11px; color: var(--bh-ink-soft); margin-top: 4px; font-family: 'Work Sans', sans-serif; }

/* Yapay Zeka Tasarım Asistanı - anasayfa tanıtım şeridi (2026-09-11, daha görünür yapma kararı) */
.bh-ai-promo { display: flex; align-items: center; gap: 20px; background: linear-gradient(120deg, var(--bh-rose-wash), var(--bh-sage-wash)); border: 1px solid var(--bh-line); border-radius: var(--bh-radius); padding: 22px 26px; transition: .15s; color: var(--bh-ink); }
.bh-ai-promo:hover { border-color: var(--bh-accent-dark); box-shadow: var(--bh-shadow); }
.bh-ai-promo-icon { font-size: 34px; flex-shrink: 0; }
.bh-ai-promo-body { flex: 1; min-width: 0; }
.bh-ai-promo-body h3 { margin: 0 0 4px; font-family: 'Fraunces', serif; font-size: 19px; }
.bh-ai-promo-body p { margin: 0; font-size: 13.5px; color: var(--bh-ink-soft); }
.bh-ai-promo-cta { font-size: 14px; font-weight: 600; color: var(--bh-accent-dark); white-space: nowrap; flex-shrink: 0; }
@media (max-width: 560px) { .bh-ai-promo { flex-wrap: wrap; } .bh-ai-promo-cta { width: 100%; text-align: right; } }

/* --- Ürün kartları (kategori/anasayfa grid) --- */
.bh-product-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 18px; }
.bh-product-card { position: relative; background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: var(--bh-radius); overflow: hidden; display: flex; flex-direction: column; transition: border-color .15s; }
.bh-product-card:hover { border-color: var(--bh-accent-dark); }
.bh-product-card .thumb { aspect-ratio: 4/3; background: var(--bh-surface-tint); display: flex; align-items: center; justify-content: center; font-size: 40px; color: var(--bh-ink-soft); overflow: hidden; }
.bh-product-card .thumb img { width: 100%; height: 100%; object-fit: cover; }
.bh-product-card .body { padding: 14px; display: flex; flex-direction: column; gap: 6px; flex: 1; }
.bh-product-card h3 { font-family: 'Fraunces', serif; font-size: 16px; margin: 0; font-weight: 500; }
.bh-product-card .desc { font-size: 12.5px; color: var(--bh-ink-soft); flex: 1; font-family: 'Work Sans', sans-serif; }
.bh-product-card .price-from { font-size: 13px; color: var(--bh-ink-soft); }
.bh-product-card .price-from strong { color: var(--bh-ink); font-size: 16px; font-family: 'Fraunces', serif; font-weight: 500; }
.bh-eco-badge { display: inline-flex; align-items: center; gap: 4px; background: var(--bh-sage-wash); color: var(--bh-sage-deep); font-size: 11.5px; font-weight: 600; padding: 2px 8px; border-radius: 999px; font-family: 'Work Sans', sans-serif; }
.bh-eco-badge .bh-ico { font-size: 11px; }
.bh-coksatan-badge { display: inline-flex; align-items: center; gap: 4px; background: color-mix(in srgb, var(--bh-gold) 20%, transparent); color: color-mix(in srgb, var(--bh-gold) 65%, black); font-size: 11.5px; font-weight: 600; padding: 2px 8px; border-radius: 999px; font-family: 'Work Sans', sans-serif; }

/* --- Kombine ürün setleri (setler.html), 2026-09-13 --- */
.bh-set-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.bh-set-card { background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: var(--bh-radius); padding: 20px; display: flex; flex-direction: column; gap: 12px; overflow: hidden; }
.bh-set-thumb { aspect-ratio: 4/3; background: var(--bh-surface-tint); margin: -20px -20px 0; }
.bh-set-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bh-set-card h3 { font-family: 'Fraunces', serif; font-size: 19px; margin: 0; font-weight: 500; }
.bh-set-card .desc { font-size: 13px; color: var(--bh-ink-soft); }
.bh-set-items { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; font-size: 13px; }
.bh-set-items li { display: flex; justify-content: space-between; gap: 8px; padding: 6px 0; border-bottom: 1px dashed var(--bh-line); }
.bh-set-items li:last-child { border-bottom: none; }
.bh-set-total { display: flex; justify-content: space-between; align-items: baseline; padding-top: 8px; border-top: 1px solid var(--bh-line); }
.bh-set-total strong { font-family: 'Fraunces', serif; font-size: 18px; color: var(--bh-ink); }
.bh-set-savings { font-size: 12px; color: var(--bh-sage-deep); background: var(--bh-sage-wash); border-radius: 8px; padding: 8px 10px; }

/* --- Öne çıkan ürünler: otomatik kayan şerit --- */
.bh-featured-wrap { overflow: hidden; position: relative; margin: 0 -20px; padding: 0 20px; }
.bh-featured-wrap::before, .bh-featured-wrap::after { content: ""; position: absolute; top: 0; bottom: 0; width: 40px; z-index: 2; pointer-events: none; }
.bh-featured-wrap::before { left: 0; background: linear-gradient(90deg, var(--bh-bg), rgba(251,247,241,0)); }
.bh-featured-wrap::after { right: 0; background: linear-gradient(270deg, var(--bh-bg), rgba(251,247,241,0)); }
.bh-featured-track { display: flex; gap: 18px; width: max-content; animation: bhFeaturedScroll 34s linear infinite; }
.bh-featured-track:hover, .bh-featured-track:focus-within { animation-play-state: paused; }
@keyframes bhFeaturedScroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
.bh-featured-track .bh-product-card { width: 210px; flex: 0 0 auto; }
@media (prefers-reduced-motion: reduce) { .bh-featured-track { animation: none; overflow-x: auto; } }

/* --- Ürün detay sayfası --- */
.bh-product-detail { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; padding: 36px 0; }
.bh-gallery-wrap { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
/* 2026-09-19 (kullanıcı talebi: "2. ve 3. görseller"): kapak fotoğrafı
   çözünürlüğü (1448x1086 / mevcut eski görseller 1200x900) - ikisi de
   4/3 oranında, bu yüzden kare (1/1) yerine 4/3 kullanılarak görsel
   büyütülmeden/bulanıklaşmadan, gereksiz kırpma OLMADAN gösterilir
   (object-fit: cover yine de en/boy oranı tam 4/3 olmayan nadir bir
   görselde kenarlardan hafif kırpar - bu tasarım gereği, asla esnetmez). */
.bh-product-detail .gallery { position: relative; aspect-ratio: 4/3; background: var(--bh-surface-tint); border-radius: var(--bh-radius); display: flex; align-items: center; justify-content: center; font-size: 64px; overflow: hidden; }
.bh-product-detail .gallery img { width: 100%; height: 100%; object-fit: cover; }
/* Galeri ok butonları (masaüstü + tablet) - sadece 2+ görsel varken JS
   tarafından eklenir, tek görselde hiç render edilmez. */
.bh-gallery-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 36px; height: 36px; border-radius: 50%; border: none; background: rgba(255,253,249,.9); color: var(--bh-ink); display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 2px 10px rgba(30,25,15,.18); z-index: 2; padding: 0; }
.bh-gallery-arrow svg { width: 18px; height: 18px; }
.bh-gallery-arrow:hover { background: #fff; }
.bh-gallery-arrow:disabled { opacity: .3; cursor: default; }
.bh-gallery-arrow-prev { left: 10px; }
.bh-gallery-arrow-next { right: 10px; }
/* Küçük önizleme (thumbnail) şeridi - ana görselin altında, 3'e kadar
   görsel arasında tek tıkla geçiş sağlar. */
.bh-gallery-thumbs { display: flex; gap: 8px; }
.bh-gallery-thumb { width: 64px; height: 64px; flex-shrink: 0; padding: 0; border-radius: 8px; overflow: hidden; border: 2px solid transparent; background: var(--bh-surface-tint); cursor: pointer; }
.bh-gallery-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bh-gallery-thumb.active { border-color: var(--bh-accent-dark); }
@media (max-width: 800px) {
  .bh-gallery-arrow { width: 32px; height: 32px; }
  .bh-gallery-thumb { width: 52px; height: 52px; }
}
.bh-product-detail h1 { font-size: 26px; margin: 0 0 8px; }
/* 2026-09-19 (kullanıcı talebi): ürün paylaşım butonu - "WhatsApp'tan v.s.
   paylaşabilme" özelliği (bkz. urun.html #bhPaylasBtn). Sade/ikincil bir
   buton, ana "Sepete Ekle" eylemiyle karışmasın diye küçük ve dış çizgili. */
.bh-share-row { position: relative; margin: 0 0 14px; }
.bh-share-btn { display: inline-flex; align-items: center; gap: 6px; padding: 7px 14px; font-size: 12.5px; }
.bh-share-btn .bh-ico { width: 15px; height: 15px; }
/* 2026-09-19: bu blok "hidden" HTML özniteliğiyle açılıp kapanıyor (bkz.
   urun.html #bhPaylasMenu), ama aşağıdaki "display: flex" kuralı özgüllük
   bakımından tarayıcının [hidden] için uyguladığı "display: none"ı HER ZAMAN
   eziyordu - menü sayfa yüklenir yüklenmez, hiç tıklanmadan, açık
   görünüyordu (bu tur QA'da adet kartları/varyasyon kartları testi
   sırasında fark edilen, konudan bağımsız gerçek bir görsel hata). Aşağıdaki
   [hidden] kuralı bunu düzeltir. */
.bh-share-menu[hidden] { display: none; }
.bh-share-menu { position: absolute; top: calc(100% + 6px); left: 0; z-index: 20; background: #fff; border: 1px solid var(--bh-line); border-radius: 10px; box-shadow: 0 14px 34px -12px rgba(20,18,14,0.28); padding: 6px; min-width: 200px; display: flex; flex-direction: column; }
.bh-share-menu a, .bh-share-menu button { display: block; width: 100%; text-align: left; padding: 9px 10px; border-radius: 7px; border: none; background: none; font-size: 13px; font-family: inherit; color: var(--bh-ink); cursor: pointer; text-decoration: none; }
.bh-share-menu a:hover, .bh-share-menu button:hover { background: var(--bh-surface-tint); }
.bh-product-detail .desc { color: var(--bh-ink-soft); margin-bottom: 18px; }
/* 2026-09-19 (rakip analizi karşılaştırması): sade referans tablosu +
   serbest sayı girişi yerine, her kademenin TOPLAM (KDV hariç) fiyatını
   gösteren tıklanabilir kartlar - veri kaynağı urun.html'deki
   adetKartlariniOlustur() (BH.priceFor kademe motorunu kullanır, rakipteki
   gibi ayrı/sabit bir "paket fiyatı" DEĞİL). Eski .bh-tier-table/
   .bh-tier-active kaldırıldı (tablo HTML'den de kaldırıldı). */
.bh-qty-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(108px, 1fr)); gap: 10px; margin-bottom: 14px; }
.bh-qty-card { position: relative; display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 14px 8px 12px; background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: var(--bh-radius-sm); font-family: inherit; cursor: pointer; transition: border-color .15s, box-shadow .15s; }
.bh-qty-card:hover { border-color: var(--bh-accent-dark); }
.bh-qty-card.selected { border-color: var(--bh-accent-dark); border-width: 2px; padding: 13px 7px 11px; box-shadow: var(--bh-shadow); background: var(--bh-rose-wash); }
.bh-qty-card .adet { font-size: 13.5px; font-weight: 600; color: var(--bh-ink); }
.bh-qty-card .tutar { font-size: 15px; font-family: 'Fraunces', serif; }
.bh-qty-card .etiket { position: absolute; top: -9px; left: 50%; transform: translateX(-50%); background: var(--bh-accent-dark); color: #fff; font-size: 10px; font-weight: 600; letter-spacing: .03em; text-transform: uppercase; padding: 2px 8px; border-radius: 999px; white-space: nowrap; }
.bh-tier-nudge { font-size: 12.5px; color: var(--bh-accent-darker); margin: -10px 0 14px; }
.bh-qty-row { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.bh-qty-row label { font-size: 14px; }
.bh-qty-row input { width: 100px; padding: 9px 10px; border: 1px solid var(--bh-line); border-radius: var(--bh-radius-sm); font-size: 14px; font-family: inherit; }
.bh-total-preview { font-size: 20px; font-weight: 500; margin-bottom: 16px; font-family: 'Fraunces', serif; }
.bh-total-preview small { font-size: 12px; font-weight: 400; color: var(--bh-ink-soft); display: block; font-family: 'Work Sans', sans-serif; }
.bh-design-block { margin: 20px 0; padding: 16px; background: var(--bh-surface-tint); border-radius: var(--bh-radius); }
.bh-design-block h4 { margin: 0 0 10px; font-size: 14px; font-family: 'Work Sans', sans-serif; font-weight: 600; }
.bh-design-divider { display: flex; align-items: center; gap: 10px; margin: 14px 0; color: var(--bh-ink-soft); font-size: 12px; text-transform: uppercase; letter-spacing: .04em; }
.bh-design-divider::before, .bh-design-divider::after { content: ''; flex: 1; height: 1px; background: var(--bh-line); }
@media (max-width: 800px) { .bh-product-detail { grid-template-columns: 1fr; gap: 20px; } }

/* 2026-09-18: mobil/genel kontrol turunda bulundu - urun.html'deki "Baskı
   Seçenekleri" (varyasyon) bloğu bh-card/bh-form-grid/bh-input/bh-muted
   sınıflarını kullanıyordu ama bu 4 sınıf için hiçbir CSS tanımlı değildi
   (sayfada tamamen stilsiz, kartsız, gridsiz duruyordu - "kayık" görünümün
   kaynağı buydu). Sitenin geri kalanındaki kart/giriş alanı diliyle
   (bkz. .bh-cart-summary, .bh-qty-row input) tutarlı şekilde ekleniyor.
   NOT: .bh-card ileride başka bloklarda da kullanılabilir diye genel adlı
   bırakıldı - bugün sadece bu blok tarafından kullanılıyor. */
.bh-card { background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: var(--bh-radius); padding: 20px 22px; }
.bh-card > h3 { margin: 0 0 14px; }
.bh-form-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px; }
.bh-form-grid label { display: block; font-size: 12.5px; color: var(--bh-ink-soft); margin-bottom: 5px; }
.bh-input { width: 100%; padding: 9px 10px; border: 1px solid var(--bh-line); border-radius: var(--bh-radius-sm); font-size: 14px; font-family: inherit; background: var(--bh-surface); color: var(--bh-ink); }
.bh-input:focus-visible { border-color: var(--bh-accent-dark); }
.bh-muted { font-size: 12.5px; color: var(--bh-ink-soft); line-height: 1.5; }

/* 2026-09-19 (rakip analizi karşılaştırması): Ebat/Malzeme/Baskı/Selefon/
   Tasarım Yönü artık <select> açılır menü değil, tıklanabilir buton-kartları
   (bkz. urun.html bhRenderVariants()) - .bh-form-grid grid'i her seçenek
   grubunu (.bh-variant-group) bir hücre olarak düzenlemeye devam ediyor. */
.bh-variant-btn-row { display: flex; flex-wrap: wrap; gap: 8px; }
.bh-variant-btn { padding: 8px 14px; border: 1px solid var(--bh-line); border-radius: var(--bh-radius-sm); background: var(--bh-surface); color: var(--bh-ink); font-size: 13px; font-family: inherit; cursor: pointer; transition: border-color .15s, background .15s, color .15s; }
.bh-variant-btn:hover { border-color: var(--bh-accent-dark); }
.bh-variant-btn.selected { border-color: var(--bh-accent-dark); background: var(--bh-accent-dark); color: #fff; font-weight: 600; }

/* --- Sepet sayfası (2026-09-18 sofistike revizyon: site paletiyle uyumlu
   kartlar + gerçek çapraz satış/upsell yüzeyleri - bkz. sepet.html) --- */
.bh-sepet-head { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.bh-sepet-count { font-size: 13px; color: var(--bh-ink-soft); }
.bh-cart-layout { display: grid; grid-template-columns: 2fr 1fr; gap: 32px; padding: 24px 0 36px; align-items: start; }
.bh-cart-main { display: flex; flex-direction: column; gap: 30px; min-width: 0; }
.bh-oz-item { display: flex; gap: 10px; align-items: center; margin-bottom: 8px; }
.bh-oz-item .thumb { width: 40px; height: 40px; border-radius: var(--bh-radius-sm); background: var(--bh-surface-tint); flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 17px; overflow: hidden; }
.bh-oz-item .thumb img { width: 100%; height: 100%; object-fit: cover; }
.bh-oz-item .bh-meta { font-size: 13.5px; }

/* Ürün satırı - ince gölge/hover ile daha "kart" hissi, sağ üstte ayrık bir
   simge-buton olarak kaldırma (eski geniş kırmızı "Kaldır" metin butonu
   yerine) */
.bh-cart-item { position: relative; display: flex; gap: 16px; align-items: center; background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: var(--bh-radius); padding: 16px 52px 16px 16px; margin-bottom: 12px; transition: box-shadow .15s, border-color .15s; }
.bh-cart-item:hover { border-color: #d9cdbb; box-shadow: var(--bh-shadow); }
.bh-cart-item .thumb { width: 72px; height: 72px; border-radius: var(--bh-radius-sm); background: var(--bh-surface-tint); flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 26px; overflow: hidden; }
.bh-cart-item .thumb img { width: 100%; height: 100%; object-fit: cover; }
.bh-cart-item .info { flex: 1; min-width: 0; }
.bh-cart-item .info h4 { margin: 0 0 8px; font-size: 15.5px; font-family: 'Fraunces', serif; font-weight: 500; }
.bh-qty-row { display: flex; align-items: center; gap: 10px; }
.bh-qty-stepper { display: inline-flex; align-items: stretch; border: 1px solid var(--bh-line); border-radius: var(--bh-radius-sm); overflow: hidden; }
.bh-qty-btn { width: 30px; background: var(--bh-surface-tint); color: var(--bh-ink); border: 0; font-size: 15px; line-height: 1; display: flex; align-items: center; justify-content: center; }
.bh-qty-btn:hover { background: var(--bh-rose-wash); color: var(--bh-accent-darker); }
.bh-cart-item .qty-input { width: 52px; padding: 6px 4px; border: 0; border-left: 1px solid var(--bh-line); border-right: 1px solid var(--bh-line); border-radius: 0; font-size: 13.5px; font-family: inherit; text-align: center; -moz-appearance: textfield; }
.bh-cart-item .qty-input::-webkit-outer-spin-button, .bh-cart-item .qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.bh-qty-suffix { font-size: 12.5px; color: var(--bh-ink-soft); }
.bh-cart-remove { position: absolute; top: 12px; right: 12px; width: 32px; height: 32px; border-radius: 50%; background: var(--bh-surface-tint); color: var(--bh-ink-soft); border: 0; display: flex; align-items: center; justify-content: center; }
.bh-cart-remove:hover { background: var(--bh-rose-wash); color: var(--bh-danger); }
.bh-cart-remove svg { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 1.7; }

/* Sipariş özeti - başlık + ince güven rozetleri satırı eklendi.
 * 2026-09-21: sticky özet kartına biraz daha "kaldırılmış" bir görünüm
 * (ince gölge, biraz daha yuvarlak köşe) ve toplam satırına marka rengiyle
 * ince bir üst ayraç eklendi - dikkat rakamla toplama, ayrıca sadeleşsin diye. */
.bh-cart-summary { background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: 10px; padding: 24px; position: sticky; top: 90px; box-shadow: 0 4px 20px -8px rgba(46,42,38,.10); }
.bh-cart-summary-title { margin: 0 0 16px; font-size: 16px; font-weight: 600; letter-spacing: .01em; text-transform: uppercase; color: var(--bh-ink-soft); }
.bh-cart-summary .row { display: flex; justify-content: space-between; font-size: 14px; margin-bottom: 10px; color: var(--bh-ink-soft); }
.bh-cart-summary .row.total { font-size: 19px; font-family: 'Fraunces', serif; font-weight: 500; color: var(--bh-ink); border-top: 2px solid var(--bh-gold); padding-top: 12px; margin-top: 12px; }
.bh-cart-trust { display: flex; flex-direction: column; gap: 7px; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--bh-line); }
.bh-cart-trust span { font-size: 12px; color: var(--bh-ink-soft); display: flex; align-items: center; gap: 6px; }
.bh-cart-trust .bh-ico { font-size: 14px; color: var(--bh-accent-dark); }
/* 2026-09-13: sepette/ödemede tahmini teslim tarihi (rakip analizi, madde 6) */
.bh-teslim-tahmini { background: var(--bh-surface-tint); border-radius: var(--bh-radius-sm); padding: 10px 12px; font-size: 13px; margin-bottom: 14px; line-height: 1.5; }
.bh-teslim-tahmini .bh-meta { display: block; font-size: 11.5px; color: var(--bh-ink-soft); margin-top: 2px; }

/* Boş sepet (2026-09-18) - genel .bh-empty-state'i sitedeki diğer kullanımları
   (favoriler, admin uyarıları vb.) etkilemeden, sadece burada zenginleştiriyoruz. */
.bh-sepet-bos { padding: 56px 20px 60px; }
.bh-sepet-bos-ikon { width: 62px; height: 62px; margin: 0 auto 18px; border-radius: 50%; background: var(--bh-surface-tint); display: flex; align-items: center; justify-content: center; }
.bh-sepet-bos-ikon svg { width: 28px; height: 28px; stroke: var(--bh-accent-dark); fill: none; stroke-width: 1.6; }
.bh-sepet-bos h3 { font-size: 20px; margin: 0 0 8px; color: var(--bh-ink); }
.bh-sepet-bos p { max-width: 380px; margin: 0 auto 20px; font-size: 13.5px; line-height: 1.6; }
.bh-sepet-bos-kategoriler { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; max-width: 520px; margin: 28px auto 0; }
.bh-sepet-bos-kategoriler a { font-size: 12.5px; padding: 8px 14px; border: 1px solid var(--bh-line); border-radius: 20px; color: var(--bh-ink); background: var(--bh-surface); }
.bh-sepet-bos-kategoriler a:hover { border-color: var(--bh-accent-dark); color: var(--bh-accent-dark); }

/* Çapraz satış şeridi ("Sepetinize eklemek ister misiniz?") - .bh-product-card
   ile aynı görsel dili paylaşır (bkz. index.html renderProductCard), üstüne
   tek-tık "Sepete Ekle" eklenir. */
.bh-cart-section-title { font-size: 16px; margin: 0 0 14px; }
.bh-cart-upsell-track { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.bh-upsell-card .body { padding: 11px; gap: 4px; }
.bh-upsell-card h3 { font-size: 13.5px; }
.bh-upsell-card .price-from { font-size: 11.5px; }
.bh-upsell-card .price-from strong { font-size: 14px; }
.bh-upsell-add { display: block; width: 100%; border: 0; border-top: 1px solid var(--bh-line); background: var(--bh-surface-tint); color: var(--bh-accent-dark); font-size: 12.5px; font-weight: 600; padding: 10px; }
.bh-upsell-add:hover { background: var(--bh-accent-dark); color: #fff9f5; }

/* Set/bundle önerisi - anasayfadaki "Kurumsal" bandıyla aynı sofistike, koyu
   zeytin/altın vurgulu premium blok dili (bkz. .bh-home-corporate). */
.bh-cart-bundle-promo { display: flex; gap: 22px; align-items: center; background: linear-gradient(105deg, #2f3328 0%, #3a3f30 100%); border-radius: var(--bh-radius); padding: 24px 26px; color: #f3ede2; }
.bh-cart-bundle-thumb { width: 96px; height: 96px; flex-shrink: 0; border-radius: var(--bh-radius-sm); overflow: hidden; background: rgba(255,255,255,.08); }
.bh-cart-bundle-thumb img { width: 100%; height: 100%; object-fit: cover; }
.bh-cart-bundle-body { min-width: 0; }
.bh-cart-bundle-eyebrow { display: block; font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--bh-gold); font-weight: 600; margin-bottom: 4px; }
.bh-cart-bundle-body h3 { margin: 0 0 6px; font-size: 19px; color: #fff; }
.bh-cart-bundle-body p { margin: 0 0 4px; font-size: 13px; color: #d9d2c3; max-width: 480px; }
.bh-cart-bundle-savings { font-size: 12px; color: var(--bh-gold); }
.bh-cart-bundle-actions { display: flex; align-items: center; gap: 16px; margin-top: 12px; flex-wrap: wrap; }
.bh-cart-bundle-actions .bh-btn.primary { background: var(--bh-gold); border-color: var(--bh-gold); color: #2f3328; font-weight: 600; }
.bh-cart-bundle-actions .bh-btn.primary:hover { background: #d6b562; }
.bh-cart-bundle-link { font-size: 12.5px; color: #f3ede2; border-bottom: 1px solid rgba(243,237,226,.5); }
.bh-cart-bundle-link:hover { border-color: #f3ede2; }

@media (max-width: 800px) { .bh-cart-layout { grid-template-columns: 1fr; } .bh-cart-summary { position: static; } .bh-cart-upsell-track { grid-template-columns: repeat(2, 1fr); } .bh-cart-bundle-promo { flex-direction: column; align-items: flex-start; text-align: left; } .bh-cart-bundle-thumb { width: 100%; height: 140px; } }
/* 2026-09-18: mobil güvenlik/genel kontrol turunda bulundu - .bh-cart-item
   sabit genişlikli thumb (64px) + esnek info + "Kaldır" butonu tek satırda
   sığmaya çalışıyordu, dar ekranlarda (~375px) sıkışık/kayık görünüyordu.
   Dar ekranda satırı ikiye bölüyoruz: üstte görsel+bilgi, kaldırma simgesi
   köşede sabit kalıyor (artık bir metin butonu olmadığı için satır taşırmıyor). */
@media (max-width: 480px) {
  .bh-cart-item { flex-wrap: wrap; padding: 14px 46px 14px 14px; }
  .bh-cart-item .thumb { width: 56px; height: 56px; font-size: 20px; }
  .bh-cart-item .info { flex: 1 1 auto; min-width: 140px; }
  .bh-cart-upsell-track { grid-template-columns: repeat(2, 1fr); }
}

/* 2026-09-13: Marka Kiti - siparislerim.html paneli + urun.html referans
   kartı (rakip analizi, madde 3). */
.bh-marka-kiti-onizleme { display: flex; align-items: center; gap: 10px; margin: 8px 0 10px; flex-wrap: wrap; }
.bh-marka-kiti-logo { width: 56px; height: 56px; object-fit: contain; border: 1px solid var(--bh-line); border-radius: var(--bh-radius-sm); background: #fff; padding: 4px; }
.bh-marka-kiti-renk { width: 28px; height: 28px; border-radius: 50%; border: 1px solid var(--bh-line); display: inline-block; }
.bh-marka-kiti-kart { background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: var(--bh-radius); padding: 16px; margin-top: 12px; }
.bh-marka-kiti-kart h4 { margin: 0 0 4px; font-size: 15px; }
.bh-marka-kiti-kart label { display: block; font-size: 13px; margin-top: 10px; }

/* --- Formlar ---
 * 2026-09-21 ("ödeme paneli daha kurumsal/sofistike olsun" talebi): kartlara
 * ince bir gölge + biraz daha yuvarlak köşe, başlıklara alt çizgili bir
 * bölüm ayracı, alanlara marka rengiyle uyumlu bir odak (focus) halkası
 * eklendi. .bh-form-block hem odeme.html hem teklif-al.html'de kullanıldığı
 * için bu değişiklik ikisinde de tutarlı şekilde görünür - renk paleti
 * DEĞİŞMEDİ, sadece derinlik/tipografi inceltildi.
 */
.bh-form-block { background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: 10px; padding: 24px; margin-bottom: 20px; box-shadow: 0 1px 3px rgba(46,42,38,.04); transition: box-shadow .2s ease; }
.bh-form-block h3 { margin: 0 0 18px; padding-bottom: 14px; font-size: 15.5px; font-weight: 600; letter-spacing: .01em; border-bottom: 1px solid var(--bh-line); }
.bh-field { margin-bottom: 14px; }
.bh-field label { display: block; font-size: 12.5px; font-weight: 500; letter-spacing: .01em; margin-bottom: 6px; color: var(--bh-ink-soft); }
.bh-field input, .bh-field textarea, .bh-field select { width: 100%; padding: 11px 13px; border: 1px solid var(--bh-line); border-radius: var(--bh-radius-sm); font-size: 14px; font-family: inherit; background: var(--bh-surface); color: var(--bh-ink); transition: border-color .15s ease, box-shadow .15s ease; }
.bh-field input:hover, .bh-field textarea:hover, .bh-field select:hover { border-color: #d9cdbb; }
.bh-field input:focus, .bh-field textarea:focus, .bh-field select:focus { outline: none; border-color: var(--bh-accent-dark); box-shadow: 0 0 0 3px color-mix(in srgb, var(--bh-accent-dark) 15%, transparent); }
.bh-field textarea { min-height: 80px; resize: vertical; }
.bh-field select { appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23726a61' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; background-size: 16px; padding-right: 38px; }

/* Tarayıcının varsayılan mavi radyo/onay kutusu yerine marka rengi - tüm
 * sitede aynı sınıfları kullanan HER form için otomatik geçerli. */
input[type="radio"], input[type="checkbox"] { accent-color: var(--bh-accent-dark); }

/* Seçilebilir "kart" biçimindeki radyo satırları (ör. Teslimat Şekli,
 * Fatura Türü) - JS/id yapısı DEĞİŞMEDEN, sadece görsel bir sarmalayıcı
 * sınıfı. :has() zaten bu dosyada başka yerlerde kullanılıyor (bkz. ürün
 * kartı hover mantığı), bu yüzden ek bir JS state'ine gerek kalmadı. */
.bh-secim-karti { display: flex; align-items: flex-start; gap: 10px; border: 1px solid var(--bh-line); border-radius: 8px; padding: 12px 14px; margin-bottom: 8px; cursor: pointer; font-weight: 400 !important; transition: border-color .15s ease, background-color .15s ease; }
.bh-secim-karti:last-child { margin-bottom: 0; }
.bh-secim-karti:hover { border-color: #d9cdbb; }
.bh-secim-karti:has(input:checked) { border-color: var(--bh-accent-dark); background: var(--bh-rose-wash); }
.bh-secim-karti input { margin-top: 2px; flex-shrink: 0; }

/* --- Teklif formu: çoklu ürün kalemi ekleyici (2026-09-18, kullanıcı
   isteği: ekran görüntüsündeki gibi "+ Ürün Ekle" ile çoğaltılabilen kalem
   kartları - her kalem kendi ürün tipi/miktar/boyut/açıklama/dosyasına
   sahip - bkz. teklif-al.html) --- */
.bh-kalem-card { border: 1px solid var(--bh-line); border-radius: var(--bh-radius); padding: 18px 18px 6px; margin-bottom: 16px; background: var(--bh-surface); }
.bh-kalem-card-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.bh-kalem-card-head h4 { margin: 0; font-size: 12.5px; text-transform: uppercase; letter-spacing: .06em; color: var(--bh-ink-soft); font-family: 'Work Sans', sans-serif; font-weight: 600; }
.bh-kalem-remove { background: none; border: none; color: var(--bh-ink-soft); font-size: 12.5px; cursor: pointer; text-decoration: underline; padding: 2px 0; }
.bh-kalem-remove:hover { color: var(--bh-danger); }
.bh-kalem-tip-row { display: flex; gap: 18px; margin-bottom: 14px; }
.bh-kalem-tip-row label { display: flex; align-items: center; gap: 6px; font-size: 13.5px; color: var(--bh-ink); cursor: pointer; margin: 0; }
.bh-kalem-tip-row input[type="radio"] { width: 16px; height: 16px; margin: 0; accent-color: var(--bh-accent-dark); }
.bh-kalem-row2 { display: flex; gap: 12px; }
.bh-kalem-row2 .bh-field { flex: 1; min-width: 0; }
.bh-btn-add-item { display: flex; align-items: center; gap: 6px; background: none; border: 1.5px dashed var(--bh-accent-dark); color: var(--bh-accent-dark); border-radius: var(--bh-radius-sm); padding: 12px 18px; font-size: 13.5px; font-weight: 600; cursor: pointer; width: 100%; justify-content: center; transition: .15s; margin-bottom: 22px; }
.bh-btn-add-item:hover { background: var(--bh-rose-wash); }
.bh-btn-add-item svg { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; }

/* --- Fotoğraf hover yakınlaştırma efekti (2026-09-18, kullanıcı isteği:
   "yeni nesil"/modern bir site hissi için sitedeki fotoğrafların üzerine
   gelindiğinde hafif ve sofistike bir yakınlaşma) - tüm bu kapsayıcılarda
   zaten overflow:hidden var (bkz. yukarıdaki tanımları), o yüzden sadece
   img'e yumuşak bir transform ekleniyor, taşma/kesim sorunu olmuyor.
   NOT: .bh-product-card ve .bh-favori-card ayrıca aşağıdaki "ikinci örnek
   görsele kayma" katmanına da sahip olabilir - o yüzden onların yakınlaştırma
   kuralı burada DEĞİL, aşağıdaki bloktaki :has() ile koşullu olarak tanımlı
   (ikinci görsel varsa yakınlaştırma yerine kayma efekti çalışır). --- */
.bh-oz-item .thumb img,
.bh-cart-item .thumb img,
.bh-cart-bundle-thumb img,
.bh-set-thumb img,
.bh-arama-oneri-thumb img,
.bh-catbar-plink-thumb img,
.bh-product-detail .gallery img,
.bh-home-categories .bh-cat-card .icon-img {
  transition: transform .5s cubic-bezier(.22,.61,.36,1);
}
.bh-oz-item:hover .thumb img,
.bh-cart-item:hover .thumb img,
.bh-set-card:hover .bh-set-thumb img,
.bh-arama-oneri-item:hover .bh-arama-oneri-thumb img,
.bh-catbar-plink:hover .bh-catbar-plink-thumb img,
.bh-product-detail .gallery:hover img,
.bh-home-categories .bh-cat-card:hover .icon-img {
  transform: scale(1.07);
}

/* --- Ürün kartları (.bh-product-card / .bh-favori-card): normalde sade bir
   yakınlaşma, AMA ürünün ikinci bir örnek görseli (imageAlt) tanımlıysa
   (bkz. assets/*.html'deki "altThumb" değişkeni) üzerine gelindiğinde ilk
   görsel yerine İKİNCİ görsele kayarak geçiş yapılır - "örnek ürün üstüne
   gelince kayarak değişsin" isteği. İkinci görseli olmayan ürünlerde (bugün
   kataloğun tamamı) sadece yakınlaşma çalışır. --- */
.bh-product-card .thumb, .bh-favori-card .thumb { position: relative; }
.bh-product-card .thumb img, .bh-favori-card .thumb img {
  transition: transform .5s cubic-bezier(.22,.61,.36,1);
}
.bh-product-card .thumb .alt-img, .bh-favori-card .thumb .alt-img {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;
  transform: translateX(100%);
  transition: transform .45s cubic-bezier(.22,.61,.36,1);
}
.bh-product-card:not(:has(.alt-img)):hover .thumb img,
.bh-favori-card:not(:has(.alt-img)):hover .thumb img {
  transform: scale(1.07);
}
.bh-product-card:has(.alt-img):hover .thumb img:not(.alt-img),
.bh-favori-card:has(.alt-img):hover .thumb img:not(.alt-img) {
  transform: translateX(-100%);
}
.bh-product-card:hover .thumb .alt-img, .bh-favori-card:hover .thumb .alt-img {
  transform: translateX(0);
}
@media (prefers-reduced-motion: reduce) {
  .bh-oz-item .thumb img, .bh-cart-item .thumb img, .bh-cart-bundle-thumb img,
  .bh-set-thumb img, .bh-arama-oneri-thumb img, .bh-catbar-plink-thumb img,
  .bh-product-detail .gallery img, .bh-home-categories .bh-cat-card .icon-img,
  .bh-product-card .thumb img, .bh-favori-card .thumb img,
  .bh-product-card .thumb .alt-img, .bh-favori-card .thumb .alt-img { transition: none; }
}

.bh-msg { font-size: 13px; margin-top: 8px; }
.bh-msg.error { color: var(--bh-danger); }
.bh-msg.success { color: var(--bh-success); }
/* 2026-09-21: bilgilendirme amaçlı (hata/başarı olmayan) notlar için kurumsal
 * bir "ipucu kutusu" - sadece bunu isteyerek işaretleyen (.bh-info-note)
 * paragraflara uygulanır, .bh-msg'nin genel/satır-içi kullanımını etkilemez. */
.bh-info-note { background: var(--bh-surface-tint); border-left: 3px solid var(--bh-gold); border-radius: 0 8px 8px 0; padding: 11px 14px; color: var(--bh-ink-soft); line-height: 1.55; }
.bh-empty-state { text-align: center; padding: 60px 20px; color: var(--bh-ink-soft); }
.bh-favori-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; padding: 30px 0 60px; }
.bh-favori-card { position: relative; background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: var(--bh-radius); overflow: hidden; display: flex; flex-direction: column; }
.bh-favori-card .thumb { display: block; aspect-ratio: 1/1; background: var(--bh-surface-tint); display: flex; align-items: center; justify-content: center; font-size: 30px; overflow: hidden; }
.bh-favori-card .thumb img { width: 100%; height: 100%; object-fit: cover; }
.bh-favori-card .body { padding: 12px; }
.bh-favori-card h4 { margin: 0 0 6px; font-size: 13.5px; font-family: 'Fraunces', serif; font-weight: 500; }
.bh-favori-card .bh-meta { font-size: 12px; margin-bottom: 10px; }
.bh-favori-remove { position: absolute; top: 8px; right: 8px; z-index: 2; width: 28px; height: 28px; border-radius: 50%; background: rgba(255,255,255,.92); color: var(--bh-ink); font-size: 13px; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 8px rgba(0,0,0,.15); }
.bh-favori-remove:hover { background: #fff; color: var(--bh-danger, #b3402f); }
.bh-fav-toggle { position: absolute; top: 8px; right: 8px; z-index: 2; width: 30px; height: 30px; border-radius: 50%; background: rgba(255,255,255,.92); display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 8px rgba(0,0,0,.15); }
.bh-fav-toggle svg { width: 16px; height: 16px; stroke: #2f3328; fill: none; stroke-width: 1.8; }
.bh-fav-toggle.active svg { fill: #BB3D16; stroke: #BB3D16; }
@media (max-width: 1000px) { .bh-favori-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 700px) { .bh-favori-grid { grid-template-columns: repeat(2, 1fr); } }

/* --- Sektöre göre ürün küratörlüğü (kurumsal teklif sayfası, 2026-09-13) --- */
.bh-sektor-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 22px; }
.bh-sektor-chip { display: inline-flex; align-items: center; gap: 7px; font-size: 13.5px; font-family: inherit; color: var(--bh-ink); background: var(--bh-surface); border: 1px solid var(--bh-line); border-radius: 20px; padding: 6px 16px 6px 8px; cursor: pointer; transition: border-color .15s, background .15s, color .15s; }
.bh-sektor-chip:hover { border-color: var(--bh-accent-dark); }
.bh-sektor-chip.active { background: var(--bh-accent-dark); border-color: var(--bh-accent-dark); color: #fff; }
.bh-sektor-chip .icon-img { width: 22px; height: 22px; border-radius: 50%; flex: none; }
.bh-sektor-oneri { margin: 4px 0 26px; padding: 18px; background: var(--bh-surface-tint); border-radius: var(--bh-radius); }
.bh-sektor-oneri h3 { font-family: 'Fraunces', serif; font-weight: 500; font-size: 16px; margin: 0 0 12px; }
.bh-sektor-oneri .bh-product-grid { gap: 14px; }
.bh-sektor-oneri .bh-product-card .thumb { aspect-ratio: 16/10; font-size: 28px; }

/* --- İçerik sayfaları (hakkımızda/sss) --- */
.bh-content-page { max-width: 760px; margin: 0 auto; padding: 40px 20px 60px; }
.bh-content-page h1 { font-size: 28px; }
.bh-legal-text { white-space: pre-wrap; font-size: 14px; line-height: 1.7; color: var(--bh-ink); font-family: 'Work Sans', sans-serif; }
.bh-faq-item { border-bottom: 1px solid var(--bh-line); padding: 16px 0; }
.bh-faq-item h3 { margin: 0 0 6px; font-size: 15.5px; }
.bh-faq-item p { margin: 0; color: var(--bh-ink-soft); font-size: 14px; }

/* --- Genel yardımcılar --- */
.bh-breadcrumb { font-size: 13px; color: var(--bh-ink-soft); padding: 16px 0 0; }
.bh-breadcrumb a { color: var(--bh-ink-soft); }
.bh-breadcrumb a:hover { color: var(--bh-accent-dark); }

@media (max-width: 900px) {
  .bh-nav-search { display: none; }
}
@media (max-width: 480px) {
  .bh-logo { font-size: 17px; }
}
@media (max-width: 900px) {
  .bh-nav-top { grid-template-columns: auto 1fr auto; }
}

/* === 2026-09 Basımhanem warm premium homepage refresh === */
:root{--bh-bg:#fbf8f3;--bh-surface-tint:#f2eadf;--bh-line:#e7ded2;--bh-accent:#9a8765;--bh-accent-dark:#2f3328;--bh-accent-darker:#20241c;--bh-ink:#1f201c;--bh-ink-soft:#6f6a62;--bh-shadow:0 18px 45px rgba(65,52,37,.09)}
#bhHeader{background:rgba(255,253,249,.96);border-bottom:0;box-shadow:0 1px 0 rgba(50,45,38,.08)}
.bh-nav-top{max-width:1416px;padding:16px 28px}.bh-logo{font-family:'Work Sans',sans-serif;font-size:24px;font-weight:600;letter-spacing:-1.2px}.bh-logo em,.bh-logo-word em{color:#BB3D16;font-style:normal}.bh-logo-mark{color:#2f3328}.bh-nav-search input{background:#fffaf4;border-radius:5px;padding:10px 14px}.bh-pill-link{border-color:#d9d0c4;color:#4d4a43}.bh-catbar{border-top:0}.bh-catbar-inner{max-width:1416px;justify-content:flex-start;flex-wrap:wrap}.bh-catbar-item{flex-shrink:0}.bh-catbar-item>a{padding:13px 13px}.bh-catbar-item.active>a,.bh-catbar-item:hover>a,.bh-catbar-item:focus-within>a{color:#2f3328;border-bottom-color:#8d8268}
/* 2026-09-19 (kullanıcı talebi): kategori çubuğu artık kesilip/gizli kaydırma
   alanına düşmek yerine, tek satıra sığmayan dar/orta masaüstü
   genişliklerinde (~1360px altı) ikinci bir satıra sarıyor (flex-wrap:wrap,
   yukarıda) - bu yüzden eski yatay-kaydırma "daha var" soluklaşma+ok ipucu
   (.has-overflow) artık gereksiz, kaldırıldı (bkz. assets/site.js'teki
   ilgili JS bloğunun da kaldırılması). */
.bh-catbar{position:relative}
.bh-home-hero{background:linear-gradient(100deg,#eee2d3 0%,#f5eee5 44%,#ded1c1 100%);min-height:430px;overflow:hidden}
/* 2026-09-21 (kullanıcı geri bildirimi: "ana vitrin görseldeki kısmının
   yanları hala boştu"): .bh-home-hero-inner önceden 1536px'de SABİT bir
   maksimum genişliğe sahipti ve ortalanıyordu (margin:auto) - 1536px'den
   GENİŞ ekranlarda (bugün çoğu masaüstü monitör 1920px+) sağ taraftaki
   vitrin görseli (.bh-home-art, background-size:cover) sadece o 1536px'lik
   kutunun İÇİNDE "cover" oluyordu, kutunun kendisi ekranın gerçek sağ
   kenarına ULAŞMIYORDU - iki yanda (ekran ile 1536px kutusu arasında) düz
   renkli, görselsiz bir boşluk kalıyordu. Düzeltme: max-width:1536px'i
   kaldırıp grid-template-columns'u "42% 58%" yerine "min(42%,645px) 1fr"
   yapıyoruz - 645px = eski 1536*0.42 ile AYNI piksel genişlik, yani metin
   sütunu her zaman TIPATIP aynı yerde kalıyor (görsel fark yok); ama
   görsel sütunu artık esnek (1fr) olduğu için ekranın gerçek sağ kenarına
   kadar uzanıyor, geniş ekranlarda kenarlarda boşluk kalmıyor. 1536px
   altındaki (ve mobil/tablet - aşağıdaki media query'ler) davranış
   MATEMATİKSEL OLARAK BİREBİR AYNI kalıyor, hiçbir görsel fark yok. */
.bh-home-hero-inner{max-width:none;min-height:430px;margin:auto;display:grid;grid-template-columns:min(42%,645px) 1fr;position:relative}.bh-home-copy{padding:72px 34px 60px max(34px,calc((100vw - 1416px)/2));z-index:3}.bh-home-eyebrow{display:block;font-size:10px;font-weight:600;letter-spacing:.34em;margin-bottom:13px;color:#555149}.bh-home-copy h1{font-size:clamp(42px,4.3vw,66px);line-height:.98;letter-spacing:-.035em;margin:0 0 20px;font-weight:400}.bh-home-copy h1 em{font-style:normal;color:#BB3D16}.bh-home-cta-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.bh-home-cta-outline{display:inline-flex;align-items:center;padding:13px 20px;border:1.5px solid #2f3328;border-radius:3px;font-size:13px;font-weight:600;color:#2f3328}.bh-home-cta-outline:hover{background:#2f3328;color:#fff}.bh-home-copy p{font-size:15px;line-height:1.65;max-width:510px;margin:0 0 24px;color:#555149}.bh-home-cta{display:inline-flex;gap:34px;align-items:center;background:#2f3328;color:#fff;padding:13px 20px;border-radius:3px;font-size:13px;font-weight:600}.bh-home-cta:hover{background:#20241c}.bh-home-art{position:relative;min-height:430px;background-image:linear-gradient(90deg,#f5eee5 0%,rgba(245,238,229,0) 16%),url('images/basimhanem-ana-sayfa-hero.webp');background-size:cover;background-position:right center;background-repeat:no-repeat}
/* 2026-09-21 (kullanıcı geri bildirimi: "ürünler arasında geçiş... kaydırmalı
   olsun"): bu "warm premium homepage refresh" geçişinde .bh-featured-track
   yanlışlıkla (muhtemelen farkında olmadan) SABİT bir 4-sütunlu grid'e
   çevrilmiş ve 5. üründen sonrasını "nth-child(n+5){display:none}" ile
   tamamen gizlemişti - orijinal otomatik kayan şerit (yukarıda,
   "Öne çıkan ürünler: otomatik kayan şerit" bölümü, animation:
   bhFeaturedScroll) bu satırlar tarafından SESSİZCE geçersiz kılınıyordu.
   Kullanıcı haklı olarak "hiçbiri yapılmamış" dedi - kod var ama üzerine
   yazılmış/etkisiz durumdaydı. Otomatik kaymak yerine artık kullanıcının
   kendi parmağıyla/fare tekerleğiyle YATAY KAYDIRABİLECEĞİ bir şerit
   (site geneli "Gerçek müşterilerden gerçek yorumlar" şeridiyle - bkz.
   site-yorumlari-widget.js .bh-sy-track - AYNI kaydırma deseni) ve TÜM
   ürünler (sadece ilk 4'ü değil) gösteriliyor. index.html'deki JS de
   artık listeyi ikiye katlamıyor (o katlama sadece eski otomatik-kayan
   versiyon içindi). */
.bh-home-benefits{max-width:1416px;margin:auto;min-height:82px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;background:#fff}.bh-home-benefits>div{display:flex;gap:14px;align-items:center;justify-content:center;border-right:1px solid #eee7de;padding:16px}.bh-home-benefits>div:last-child{border:0}.bh-home-benefits b{font-size:25px;font-weight:400;color:#2f3328;display:inline-flex}.bh-home-benefits strong,.bh-home-benefits small{display:block}.bh-home-benefits strong{font-size:13px}.bh-home-benefits small{font-size:10px;color:#777168;margin-top:2px}.bh-home-wrap{max-width:1416px}.bh-home-section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:20px}.bh-home-section-head h2{font-size:clamp(28px,3vw,40px);line-height:1.08;margin:0}.bh-home-section-head p{margin:7px 0 0;color:var(--bh-ink-soft);font-size:13px}.bh-home-section-head>a{font-size:12px;border-bottom:1px solid #b8aa97;padding-bottom:4px;white-space:nowrap}.bh-home-categories{padding-bottom:28px}.bh-home-categories .bh-cat-grid{grid-template-columns:repeat(7,1fr);gap:12px}.bh-home-categories .bh-cat-card{padding:0;text-align:left;overflow:hidden;border-radius:5px}.bh-home-categories .bh-cat-card .icon-img{width:100%;height:auto;aspect-ratio:1.25/1;object-fit:cover;border-radius:0;margin:0;background:#eee5da}.bh-home-categories .bh-cat-card .lbl{display:block;padding:12px 13px;font-family:'Work Sans',sans-serif;font-size:13px;font-weight:500}.bh-home-categories .bh-cat-card .lbl:after{content:'→';float:right;font-size:17px}.bh-home-featured{padding-top:25px}.bh-featured-wrap{margin:0;padding:0}.bh-featured-wrap:before,.bh-featured-wrap:after{display:none}.bh-featured-track{animation:none;width:100%;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;padding-bottom:10px}.bh-featured-track .bh-product-card{width:250px;flex:0 0 250px;scroll-snap-align:start}.bh-product-card{border-radius:5px}.bh-product-card:hover{border-color:#b5a793;box-shadow:var(--bh-shadow);transform:translateY(-2px)}.bh-product-card .thumb{background:#eee6db}.bh-product-card .body{padding:12px}.bh-product-card h3{font-family:'Work Sans',sans-serif;font-size:13px;font-weight:600}.bh-product-card .desc{font-size:11px}.bh-home-corporate{margin:10px 0 58px;min-height:300px;background:linear-gradient(105deg,#e9ddcd 0%,#f5eee5 58%,#d8c9b5 100%);display:grid;grid-template-columns:42% 58%;overflow:hidden;border-radius:5px}.bh-home-corporate>div:first-child{padding:46px}.bh-home-corporate h2{font-size:38px;line-height:1.05;margin:0 0 12px}.bh-home-corporate p{font-size:13px;color:#5d574e;max-width:370px}.bh-home-corp-art{align-self:end;justify-self:center;width:270px;height:210px;background:#2f3328;color:#d7bd91;transform:perspective(500px) rotateY(-8deg);box-shadow:0 28px 40px rgba(40,35,28,.2);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:22px}.bh-home-corp-art small{font-size:7px;letter-spacing:.25em;margin-top:7px}
@media(max-width:1000px){.bh-home-hero-inner{grid-template-columns:1fr 1fr}.bh-home-categories .bh-cat-grid{grid-template-columns:repeat(4,1fr)}.bh-home-benefits{grid-template-columns:repeat(2,1fr)}.bh-home-benefits>div:nth-child(2n){border-right:0}}
@media(max-width:700px){.bh-home-hero-inner{grid-template-columns:1fr}.bh-home-copy{padding:52px 24px 36px}.bh-home-art{min-height:260px;background-position:82% center}.bh-home-benefits{grid-template-columns:1fr 1fr}.bh-home-benefits>div{justify-content:flex-start}.bh-home-categories .bh-cat-grid{grid-template-columns:repeat(2,1fr)}.bh-home-section-head{align-items:flex-start;flex-direction:column}.bh-featured-track .bh-product-card{width:210px;flex:0 0 210px}.bh-home-corporate{grid-template-columns:1fr}.bh-home-corporate>div:first-child{padding:34px}.bh-home-corp-art{margin:0 auto 34px}.bh-nav-search{display:none}}

/* V3 — sektör çözümleri ve paketler */
.bh-solutions-section{padding-top:54px}.bh-solution-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.bh-solution-card{min-height:285px;padding:25px;border:1px solid #e4dbcf;border-radius:7px;background:#f7f2ea;position:relative;transition:.2s ease}.bh-solution-card:nth-child(2){background:#30342b;color:#f7f2ea;border-color:#30342b}.bh-solution-card:nth-child(3){background:#e7dccd}.bh-solution-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(48,40,31,.09)}.bh-solution-card>b{font-size:10px;letter-spacing:.2em;opacity:.55}.bh-solution-card>span{display:block;font-size:30px;margin:38px 0 18px}.bh-solution-card h3{font-size:25px;margin:0 0 10px}.bh-solution-card p{font-size:12px;line-height:1.65;opacity:.78;margin:0 0 25px}.bh-solution-card em{position:absolute;bottom:24px;font-size:11px;font-style:normal;font-weight:600}.bh-packages-section{padding-top:54px}.bh-package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.bh-package-card{min-height:185px;padding:28px;border-radius:7px;background:linear-gradient(135deg,#efe5d8,#f8f3ec);border:1px solid #e2d7ca}.bh-package-card:nth-child(2){background:linear-gradient(135deg,#d9d0c2,#eee7dc)}.bh-package-card:nth-child(3){background:linear-gradient(135deg,#33372d,#454a3d);color:#fff;border-color:#33372d}.bh-package-card span{font-size:9px;letter-spacing:.25em}.bh-package-card h3{font-size:24px;margin:18px 0 8px}.bh-package-card p{font-size:12px;opacity:.75;min-height:38px}.bh-package-card strong{font-size:11px}.bh-solutions-page{max-width:1180px;margin:0 auto;padding:55px 24px 80px}.bh-solutions-intro{max-width:760px;margin-bottom:50px}.bh-solutions-intro h1{font-size:clamp(40px,5vw,66px);line-height:1;margin:8px 0 18px}.bh-solutions-intro p{font-size:16px;line-height:1.7;color:#665f56}.bh-solution-block{display:grid;grid-template-columns:34% 66%;border-top:1px solid #ded5ca;padding:42px 0;scroll-margin-top:110px}.bh-solution-block h2{font-size:31px;margin:4px 0 12px}.bh-solution-block .lead{font-size:13px;color:#746c62;max-width:300px;line-height:1.6}.bh-need-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.bh-need{background:#f5efe7;border:1px solid #e7ddd1;border-radius:5px;padding:17px}.bh-need strong{display:block;font-size:13px;margin-bottom:5px}.bh-need small{font-size:10px;color:#756d63;line-height:1.45}.bh-solution-actions{grid-column:2;margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}.bh-outline-cta{display:inline-flex;padding:11px 16px;border:1px solid #35382f;border-radius:3px;font-size:12px;font-weight:600}.bh-note{font-size:11px;color:#7a7268;margin-top:12px}
@media(max-width:900px){.bh-solution-grid{grid-template-columns:1fr 1fr}.bh-solution-block{grid-template-columns:1fr}.bh-need-grid{grid-template-columns:1fr 1fr}.bh-solution-actions{grid-column:1}.bh-package-grid{grid-template-columns:1fr}}
@media(max-width:600px){.bh-solution-grid,.bh-need-grid{grid-template-columns:1fr}.bh-solution-card{min-height:240px}}

/* === ChatGPT ile entegre edilen fotoğraflı ana sayfa kartları (2026-09-18) ===
   Sadece .bh-home-wrap içindeki (ana sayfa) kartlara uygulanır; cozumler.html
   sayfasındaki düz renkli/metin kartları (.bh-solution-card taban tanımı) etkilenmez. */
.bh-home-categories .bh-cat-card .icon-img{aspect-ratio:4/3;object-fit:cover;transition:transform .35s ease,filter .35s ease}
.bh-home-categories .bh-cat-card:hover .icon-img{transform:scale(1.035);filter:saturate(1.03) contrast(1.02)}
.bh-home-wrap .bh-package-card{min-height:330px;padding:0;overflow:hidden;display:flex;flex-direction:column;background:#fffaf3!important;color:var(--bh-ink)!important;border-color:#e2d7ca!important;transition:transform .2s ease,box-shadow .2s ease}
.bh-home-wrap .bh-package-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(48,40,31,.10)}
.bh-home-wrap .bh-package-card>img{display:block;width:100%;height:190px;object-fit:cover}
.bh-home-wrap .bh-package-card>div{padding:22px 24px 24px}
.bh-home-wrap .bh-package-card h3{margin:10px 0 6px}
.bh-home-wrap .bh-package-card p{min-height:auto;margin:0 0 16px}
.bh-home-wrap .bh-package-card span{color:#9e4b2e;font-weight:600}
.bh-home-wrap .bh-solution-card,
.bh-home-wrap .bh-solution-card:nth-child(2),
.bh-home-wrap .bh-solution-card:nth-child(3){min-height:0;padding:0;overflow:hidden;background:#fff;color:var(--bh-ink);border:1px solid #e4dbcf}
.bh-home-wrap .bh-solution-card>img{display:block;width:100%;aspect-ratio:1.45/1;object-fit:cover;transition:transform .3s ease}
.bh-home-wrap .bh-solution-card:hover>img{transform:scale(1.035)}
.bh-home-wrap .bh-solution-card>div{padding:10px 11px 12px;position:relative}
.bh-home-wrap .bh-solution-card h3{font-family:'Work Sans',sans-serif;font-size:12px;font-weight:600;margin:0 20px 4px 0}
.bh-home-wrap .bh-solution-card p{font-size:9px;line-height:1.45;opacity:1;color:#6f6a62;margin:0}
.bh-home-wrap .bh-solution-card em{position:absolute;right:11px;top:8px;bottom:auto;color:#c34c22;font-size:18px;font-style:normal}
.bh-home-corporate{min-height:340px;position:relative;isolation:isolate;background:#eee3d4 url('images/home-sections/banner-kurumsal.webp') center center/cover no-repeat}
.bh-home-corporate::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(247,240,230,.98) 0%,rgba(247,240,230,.93) 36%,rgba(247,240,230,.12) 62%,transparent 100%)}
.bh-home-corporate>div:first-child{z-index:1}
.bh-home-corp-art{background:transparent;box-shadow:none;transform:none;width:100%;height:100%}
@media(max-width:1000px){
  .bh-home-wrap .bh-package-card>img{height:170px}
}
@media(max-width:700px){
  .bh-home-wrap .bh-package-card{min-height:0}
  .bh-home-wrap .bh-package-card>img{height:210px}
  .bh-home-corporate{min-height:510px;background-position:70% center}
  .bh-home-corporate::before{background:linear-gradient(180deg,rgba(247,240,230,.98) 0%,rgba(247,240,230,.91) 48%,rgba(247,240,230,.06) 76%)}
  .bh-home-corporate>div:first-child{padding:30px 24px}
  .bh-home-corp-art{display:none}
}

/* 2026-09-19: Yeni içerik/katalog sayfaları (tüm ürünler dizini, iletişim,
   tasarım yükleme, blog dizini + yazıları) - mevcut premium krem/koyu yeşil
   tasarım diliyle tutarlı, sadece bu sayfalara özel yeni sınıflar. */
.bh-directory h1,.bh-contact-page h1,.bh-upload-page h1,.bh-article h1{font-size:clamp(38px,5vw,62px);line-height:1.05;margin:10px 0 14px}
.bh-directory-search{max-width:720px;margin:26px 0}
.bh-directory-search input{width:100%;padding:15px 17px;border:1px solid #d8cec1;border-radius:5px;background:#fff;font:14px 'Work Sans',sans-serif}
.bh-directory-cats{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 30px}
.bh-directory-cats a{padding:9px 12px;border:1px solid #ded4c8;border-radius:3px;background:#fff;font-size:12px}
.bh-contact-grid,.bh-upload-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0}
.bh-contact-grid article,.bh-upload-steps>div{padding:25px;border:1px solid #e2d8cc;border-radius:6px;background:#f7f1e9}
.bh-contact-grid h2,.bh-upload-steps h2{font-size:22px;margin:8px 0}
.bh-upload-steps b{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#30372d;color:#fff}
.bh-contact-note{margin-top:32px;padding:24px;border-left:3px solid var(--bh-accent);background:#f4ede3}
.bh-article{max-width:900px;padding-top:42px;padding-bottom:80px}
.bh-article .lead{font-size:18px;line-height:1.7;color:#655e55}
.bh-article>h2{font-size:27px;margin:34px 0 8px}
.bh-article>p,.bh-article>ul{font-size:15px;line-height:1.8;color:#514c46}
.bh-blog-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:32px}
.bh-blog-grid a{padding:26px;border:1px solid #e1d7ca;border-radius:6px;background:#f8f3ec;transition:.2s}
.bh-blog-grid a:hover{transform:translateY(-3px);box-shadow:var(--bh-shadow)}
.bh-blog-grid b{font-size:9px;letter-spacing:.2em;color:var(--bh-accent-dark)}
.bh-blog-grid h2{font-size:25px;margin:14px 0 8px}
.bh-blog-grid p{font-size:13px;color:#6b645b}
.bh-checklist{padding-left:22px}
.bh-checklist li{margin:8px 0}
.bh-article-cta{margin-top:35px}
@media(max-width:700px){
  .bh-contact-grid,.bh-upload-steps,.bh-blog-grid{grid-template-columns:1fr}
  .bh-article{padding-left:22px;padding-right:22px}
}

/* Numune kutusu bandı - ana sayfa (2026-09-23) */
.bh-home-numune{margin:10px 0 28px;display:grid;grid-template-columns:260px 1fr;gap:34px;align-items:center;background:var(--bh-sage-wash);border-radius:5px;padding:26px 34px}
.bh-home-numune[hidden]{display:none}
.bh-home-numune-img img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:5px;box-shadow:var(--bh-shadow)}
.bh-home-numune h2{font-size:clamp(26px,2.6vw,34px);margin:6px 0 8px;line-height:1.1}
.bh-home-numune p{font-size:13.5px;color:var(--bh-ink-soft);max-width:460px;margin:0 0 12px}
.bh-home-numune-fiyat{font-size:15px;margin-bottom:16px}.bh-home-numune-fiyat:empty{display:none}
@media(max-width:700px){.bh-home-numune{grid-template-columns:1fr;padding:22px;gap:18px}.bh-home-numune-img{max-width:220px}}

/* SEO açılış sayfaları (2026-09-23) */
.bh-landing .bh-product-grid{margin:26px 0 10px}
.bh-landing-sss{border-bottom:1px solid var(--bh-line);padding:14px 0}.bh-landing-sss summary{cursor:pointer;font-weight:600}.bh-landing-sss p{margin:10px 0 0;color:var(--bh-ink-soft)}

/* Mobil başlık (2026-09-23): dar ekranlarda (≤480px) logo ile sağdaki
   Hesabım/Favoriler/Sepet ikonları üst üste biniyordu - logo küçültüldü,
   ikon aralıkları daraltıldı. Masaüstü görünüm değişmedi. */
@media (max-width: 480px) {
  .bh-nav-top { gap: 8px; }
  .bh-nav-left { min-width: 0; gap: 8px; }
  .bh-logo { font-size: 19px; letter-spacing: -.9px; gap: 6px; }
  .bh-logo-mark { width: 26px; height: auto; }
  .bh-logo-tagline { font-size: 6.5px; letter-spacing: .1em; }
  .bh-nav-actions { gap: 0; flex-shrink: 0; }
  .bh-nav-actions .bh-icon-btn { padding-left: 6px; padding-right: 6px; }
}
@media (max-width: 360px) {
  .bh-logo { font-size: 17px; }
  .bh-logo-tagline { display: none; }
}


/* Premium mobile drawer — 2026-09-27. Scoped to the shared drawer only. */
.bh-drawer-premium { width: min(390px, 90vw); max-width: 90vw; height: 100vh; height: 100dvh; bottom: auto; background: #fcfaf6; color: #18352b; box-shadow: 12px 0 48px #14251d24; visibility: hidden; transition: transform .25s ease, visibility .25s; }
.bh-drawer-premium.open { visibility: visible; }
.bh-drawer-premium *, .bh-drawer-premium *::before, .bh-drawer-premium *::after { box-sizing: border-box; }
.bh-drawer-premium [hidden] { display: none !important; }
.bh-drawer-premium svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.6; flex-shrink: 0; }
.bh-drawer-premium a { color: inherit; text-decoration: none; }
.bh-drawer-premium button { font-family: inherit; cursor: pointer; }
.bh-drawer-premium :is(a,button,input):focus-visible { outline: 2px solid #976932; outline-offset: 2px; }
.bh-drawer-fixed { flex: 0 0 auto; padding: max(8px, env(safe-area-inset-top)) 18px 12px; background: #fcfaf6; box-shadow: 0 5px 16px #33281905; z-index: 1; }
.bh-drawer-premium .bh-drawer-head { padding: 0; min-height: 48px; background: none; border: 0; align-items: center; gap: 8px; }
.bh-drawer-premium .bh-logo { gap: 7px; min-width: 0; }
.bh-drawer-premium .bh-logo > svg { width: 30px; height: 30px; }
.bh-drawer-premium .bh-logo-word { font-size: 24px; letter-spacing: -.8px; white-space: nowrap; }
.bh-drawer-premium .bh-drawer-close { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%; font-size: 30px; font-weight: 300; background: #f2eee6; }
.bh-drawer-account { display: flex; align-items: center; gap: 12px; min-height: 56px; font-size: 14px; }
.bh-drawer-account > span { flex: 1; min-width: 0; }
.bh-drawer-account strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 500; }
.bh-drawer-account small { display: block; color: #7b7d76; font-size: 12px; margin-top: 2px; }
.bh-drawer-account > svg:last-child { width: 16px; }
.bh-drawer-search { display: flex; align-items: center; height: 44px; border: 1px solid #dedbd4; border-radius: 12px; background: #fff9; }
.bh-drawer-search button { height: 42px; width: 44px; background: none; border: 0; color: inherit; }
.bh-drawer-search input { width: 0; flex: 1; min-width: 0; border: 0; background: none; padding: 8px 10px 8px 0; font: inherit; font-size: 16px; color: inherit; }
.bh-drawer-premium .bh-drawer-list { min-height: 0; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; padding: 6px 16px 18px; scrollbar-width: thin; scrollbar-color: #d3c9b9 transparent; }
.bh-drawer-studio { display: flex; align-items: center; gap: 6px; min-height: 78px; padding: 10px 12px; border: 1px solid #dec9a6; border-radius: 14px; background: linear-gradient(115deg,#fffdf9 0%,#f7edde 62%,#e8d6b9 100%); box-shadow: 0 4px 12px #7651260b; }
.bh-drawer-studio > span { flex: 1; min-width: 0; }
.bh-drawer-studio strong { display: block; font-size: 16px; line-height: 1.3; }
.bh-drawer-studio small { display: block; font-size: 12px; color: #756b5e; margin-top: 4px; }
.bh-drawer-studio img { width: 64px; height: 56px; object-fit: cover; border-radius: 7px; mix-blend-mode: multiply; }
.bh-drawer-studio > svg { width: 16px; }
.bh-drawer-upload { display: flex; gap: 10px; align-items: center; min-height: 50px; font-size: 13px; }
.bh-drawer-upload span { flex: 1; }
.bh-drawer-upload > svg:last-child { width: 15px; }
.bh-drawer-label { text-transform: uppercase; letter-spacing: 1.6px; font-size: 10px; color: #77766e; margin: 14px 4px 7px; }
.bh-drawer-premium .bh-drawer-cats { border: 0; }
.bh-drawer-premium .bh-drawer-cat { border-bottom: 1px solid #e9e4db; }
.bh-drawer-premium .bh-drawer-cat-head { min-height: 50px; padding: 9px 8px; color: #19362c; font-size: 15px; gap: 10px; }
.bh-drawer-category-name { display: flex; align-items: center; gap: 12px; min-width: 0; }
.bh-drawer-category-name img { width: 22px; height: 22px; object-fit: contain; }
.bh-drawer-premium .bh-drawer-cat-head > svg { width: 16px; }
.bh-drawer-premium .bh-drawer-cat-head.open > svg { transform: rotate(-90deg); }
.bh-drawer-premium .is-expanded { border: 1px solid #e8dac5; border-radius: 12px; background: linear-gradient(125deg,#f7efe4,#fffdfa); overflow: hidden; }
.bh-drawer-premium .bh-drawer-sub { padding: 0 10px 4px; background: none; }
.bh-drawer-premium a.bh-drawer-product { display: flex; align-items: center; justify-content: flex-start; gap: 10px; padding: 7px 0; min-height: 60px; font-size: 13px; border-bottom: 1px solid #e8e1d6; }
.bh-drawer-product img { flex-shrink: 0; width: 46px; height: 46px; object-fit: cover; border-radius: 7px; background: #eee6da; }
.bh-drawer-product span { flex: 1; min-width: 0; }
.bh-drawer-premium .bh-drawer-product > svg { width: 14px; }
.bh-drawer-premium a.bh-drawer-all-products { display: flex; justify-content: space-between; min-height: 44px; align-items: center; padding: 9px 0; font-size: 13px; border: 0; }
.bh-drawer-more { width: 100%; display: flex; align-items: center; justify-content: space-between; min-height: 48px; padding: 10px 8px; border: 0; background: none; color: inherit; font-size: 14px; text-align: left; }
.bh-drawer-more svg { width: 16px; }
.bh-drawer-packages { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid #e6dccd; border-radius: 12px; background: linear-gradient(110deg,#fcf8f0,#f3ebdf); margin: 12px 0; padding: 4px; }
.bh-drawer-packages a { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 48px; font-size: 12px; }
.bh-drawer-packages a + a { border-left: 1px solid #ded5c8; }
.bh-drawer-packages svg { width: 18px; }
.bh-drawer-secondary { display: flex; flex-wrap: wrap; gap: 0 16px; padding: 4px; }
.bh-drawer-secondary a { display: flex; align-items: center; min-height: 44px; font-size: 12px; color: #68685e; }
.bh-drawer-premium .bh-drawer-foot { flex: 0 0 auto; display: grid; grid-template-columns: 1fr 1fr; padding: 6px 10px max(6px,env(safe-area-inset-bottom)); background: #fcfaf6; border-top: 1px solid #e4ded4; box-shadow: 0 -5px 20px #35291906; }
.bh-drawer-premium .bh-drawer-foot a { min-height: 46px; justify-content: center; padding: 8px 4px; font-size: 13px; border: 0; gap: 8px; }
.bh-drawer-premium .bh-drawer-foot a + a { border-left: 1px solid #e4ded4; }
@media (max-width: 360px) { .bh-drawer-fixed { padding-left: 12px; padding-right: 12px; } .bh-drawer-premium .bh-drawer-list { padding-left: 10px; padding-right: 10px; } .bh-drawer-premium .bh-logo-word { font-size: 21px; } .bh-drawer-studio img { width: 48px; } .bh-drawer-studio strong { font-size: 14px; } }
@media (max-height: 520px) { .bh-drawer-account { display: none; } .bh-drawer-fixed { padding-top: 2px; padding-bottom: 6px; } }
@media (prefers-reduced-motion: reduce) { .bh-drawer, .bh-drawer-overlay, .bh-drawer-cat-head svg { transition: none; } }
/* Keep support widgets below the modal navigation. */
#bhDrawerOverlay { z-index: 10020; }
#bhDrawer.bh-drawer-premium { z-index: 10030; }
