.tpro-card { display: flex; flex-direction: column; height: 100%; position: relative; }
.tpro-card .tpro-text { display: -webkit-box; -webkit-line-clamp: 4; line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; min-height: 96px; }
/* ACME E‑Ticaret - Özel stiller */
html { scroll-behavior: smooth; }
.is-any { opacity: 1; /* no-op placeholder to keep patch anchor unique */ }
/* Stabilize layout shifts when vertical scrollbar appears/disappears */
/* Removed persistent scrollbar reservation per request */
html { overflow-y: auto; }
body { overflow-y: auto; overflow-x: hidden; }
body { overflow-x: hidden; }
html, body { min-height: 100%; }
/* End scrollbar stabilization */
/* Force persistent vertical scrollbar on account page to eliminate width shift */
#account { min-height: 101vh; }
.dark body { background-color: #0b1220; color: #cbd5e1; }
.hero-swiper .swiper-pagination-bullet { width: 10px; height: 10px; background: rgba(15,23,42,0.35); }
.hero-swiper .swiper-pagination-bullet-active { background: #4f46e5; }
.products-swiper-new .swiper-slide, .products-swiper-best .swiper-slide { width: auto; }
/* Testimonial (Corporate) */
.t-card { display: flex; flex-direction: column; height: 100%; position: relative; }
.t-card::before { content: "\eaf1"; font-family: "remixicon"; position: absolute; right: 16px; top: 16px; font-size: 28px; color: rgba(15,23,42,0.08); }
.t-card .t-text { display: -webkit-box; -webkit-line-clamp: 4; line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; min-height: 96px; }
.testimonial-swiper .swiper-wrapper { align-items: stretch; }
.testimonial-swiper .swiper-slide { height: auto; }

@media (min-width: 1024px) {
  .products-swiper-new .swiper-slide, .products-swiper-best .swiper-slide { width: 24%; }
}

/* Ticker */
.ticker { position: relative; }
.ticker__track { display: flex; white-space: nowrap; animation: tickerMove var(--ticker-duration, 60s) linear infinite; will-change: transform; }
.ticker__track:hover { animation-play-state: paused; }
.ticker__segment { display: flex; align-items: center; }
@keyframes tickerMove {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Chips */
.chip { padding: 6px 10px; border-radius: 9999px; border: 1px solid #e2e8f0; background: #fff; }
.chip:hover { border-color: #cbd5e1; }

/* Cart badge animation */
.cart-badge {
  transition: all 0.3s ease;
}
.cart-badge.animate-pulse {
  animation: cart-pulse 0.6s ease-in-out;
}
@keyframes cart-pulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.2); background-color: #10b981; }
  100% { transform: scale(1); }
}

/* Add to cart button states */
.add-to-cart {
  transition: all 0.3s ease;
}
.add-to-cart:disabled {
  cursor: not-allowed;
  opacity: 0.9;
}

/* Prevent initial flash/layout shift for includes */
[x-cloak] { display: none !important; }
/* Mobilde boşlukları kaldır; desktop'ta placeholder min-height koru */
#site-announce { min-height: 40px; } /* Duyuru alanı için yer ayır */
#site-topbar { min-height: 0; }
#site-header { 
  min-height: 0; 
  position: relative;
  z-index: 50;
}
@media (min-width: 768px) {
  #site-announce { min-height: 40px; }
  #site-topbar { min-height: 80px; } /* Topbar için daha fazla yer */
}
/* Duyuru kapalıyken üst boşluğu kaldır */
.no-announce #site-announce { min-height: 0 !important; height: 0 !important; }
@media (min-width: 1024px) {
  #site-header { min-height: 68px; }
}

/* Header sticky pozisyon düzeltmesi */
#site-header header {
  position: sticky !important;
  top: 0 !important;
  z-index: 50 !important;
  width: 100% !important;
}

/* Body ve container boşluk düzeltmeleri */
body {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Site container'ların üst boşluklarını kontrol et */
#site-announce,
#site-topbar,
#site-header {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Duyuru ve topbar z-index ayarlaması */
#site-announce {
  position: relative;
  z-index: 45;
}

#site-topbar {
  position: relative;
  z-index: 46;
}

/* Blog detay ve alt dizin sayfaları için özel düzeltmeler */
.blog-detail-page #site-header,
.blog-detail-page #site-topbar,
.blog-detail-page #site-announce {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.blog-detail-page #site-header header {
  position: sticky !important;
  top: 0 !important;
  z-index: 50 !important;
  width: 100% !important;
  margin-top: 0 !important;
}

/* Tüm alt dizin sayfaları için global düzeltme */
body {
  margin-top: 0 !important;
}

html, body {
  padding-top: 0 !important;
}

/* Breadcrumb ve nav elementlerinin üst boşluk düzeltmesi */
.blog-detail-page nav[aria-label="breadcrumbs"] {
  padding-top: 1rem !important; /* py-4 yerine daha az boşluk */
}

/* Header load edildikten sonra gelebilecek boşlukları engelle */
.blog-detail-page main,
.blog-detail-page article {
  margin-top: 0 !important;
}
/* Fix: Arama kutusu genişliği sadece md+ ekranlarda sabitlensin */
@media (min-width: 768px) {
  .search-trigger { width: 18rem !important; }
}

/* Full-bleed utility (edge-to-edge sections like hero slider) */
/* Use clamp to avoid Chrome scrollbar math issues while keeping edge-to-edge look */
.full-bleed { 
  position: relative; 
  left: 50%; 
  right: 50%; 
  margin-left: -50vw; 
  margin-right: -50vw; 
  width: 100vw; 
  max-width: none;
  overflow: hidden;
}
/* Override any container constraints */
.hero-swiper { 
  width: 100vw !important; 
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative;
  left: 0 !important;
  right: 0 !important;
}
.hero-swiper .swiper-slide { 
  width: 100vw !important; 
}
.hero-swiper .swiper-slide > div { 
  width: 100vw !important; 
  max-width: none !important;
}
/* Ekstra: Sağ taraftaki boşluğu kesin çözüm */
body, html {
  max-width: 100vw;
  overflow-x: hidden !important;
}
.hero-swiper, .hero-swiper * {
  box-sizing: border-box;
}


