/* Cici Züccaciye — cicizuccaciye.com yerleşim stilleri */
@layer base {
  html, body { margin: 0; padding: 0; }
  body {
    overscroll-behavior: none;
    background: #fff;
    color: #222;
    font-family: "Plus Jakarta Sans", system-ui, sans-serif;
  }
  main > :first-child { margin-top: 0 !important; }
  main > :last-child { margin-bottom: 0 !important; }
}
::-webkit-scrollbar { display: none; }
.material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}
.scrollbar-none { -ms-overflow-style: none; scrollbar-width: none; }
.scrollbar-none::-webkit-scrollbar { display: none; }
.pt-safe { padding-top: env(safe-area-inset-top); }
.pb-safe { padding-bottom: env(safe-area-inset-bottom); }
@media (max-width: 1023px) {
  body.shop-layout main { padding-bottom: 5rem; }
}

@keyframes cz-spin { to { transform: rotate(360deg); } }
.animate-spin { animation: cz-spin 0.8s linear infinite; }

/* Hero slider — desktop: fixed aspect + cover; mobile: height follows active image (JS), full banner visible */
.home-hero { aspect-ratio: 16 / 7; max-height: 72vh; }
.home-hero-track { position: absolute; inset: 0; width: 100%; height: 100%; }
.home-hero-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.55s ease, visibility 0.55s ease;
  display: block;
}
.home-hero-slide.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 1;
}
.home-hero-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
@media (max-width: 767px) {
  /* Fallback until JS sets explicit height from natural image aspect */
  .home-hero {
    aspect-ratio: 1080 / 540;
    max-height: none;
    min-height: 0;
  }
  .home-hero.is-sized {
    aspect-ratio: unset;
  }
  .home-hero-slide img {
    object-fit: contain;
    background: #f5f5f5;
  }
}
.home-hero-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 40px;
  height: 40px;
  border: 1px solid #111;
  background: rgba(255,255,255,0.85);
  color: #111;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s ease;
}
.home-hero-arrow:hover { background: #fff; }
.home-hero-prev { left: 12px; }
.home-hero-next { right: 12px; }
@media (max-width: 767px) {
  .home-hero-arrow { width: 34px; height: 34px; }
  .home-hero-prev { left: 8px; }
  .home-hero-next { right: 8px; }
}
.home-hero-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 14px;
  z-index: 2;
  display: flex;
  justify-content: center;
  gap: 8px;
}
.home-hero-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(255,255,255,0.55);
  border: 1px solid rgba(0,0,0,0.25);
}
.home-hero-dot.is-active { background: #111; border-color: #111; }

/* Pretty / Mango / Bubble banner slider — horizontal snap carousel */
.home-banner-slider-track {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.home-banner-slider-track::-webkit-scrollbar { display: none; }
.home-banner-slide {
  flex: 0 0 100%;
  width: 100%;
  scroll-snap-align: start;
  scroll-snap-stop: always;
  display: block;
  overflow: hidden;
}
.home-banner-slide img {
  display: block;
  width: 100%;
  height: auto;
}
.home-banner-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 40px;
  height: 40px;
  border: 1px solid #111;
  background: rgba(255,255,255,0.85);
  color: #111;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s ease;
}
.home-banner-arrow:hover { background: #fff; }
.home-banner-prev { left: 12px; }
.home-banner-next { right: 12px; }
@media (max-width: 767px) {
  .home-banner-arrow { width: 34px; height: 34px; }
  .home-banner-prev { left: 8px; }
  .home-banner-next { right: 8px; }
}
.home-banner-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 14px;
  z-index: 2;
  display: flex;
  justify-content: center;
  gap: 8px;
  pointer-events: none;
}
.home-banner-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(255,255,255,0.55);
  border: 1px solid rgba(0,0,0,0.25);
  pointer-events: auto;
}
.home-banner-dot.is-active { background: #111; border-color: #111; }

/* WhatsApp ticker */
.home-ticker { text-decoration: none; }
.home-ticker-track {
  display: flex;
  gap: 3rem;
  width: max-content;
  animation: home-ticker 28s linear infinite;
  white-space: nowrap;
}
@keyframes home-ticker {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.home-rail-track {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.home-rail-track::-webkit-scrollbar { display: none; }

.home-series-tile {
  text-decoration: none;
}
.home-series-tile__label {
  max-width: 100%;
}

/* Daha dar yan boşluk — ana sayfa ürün rayları */
.home-rail .product-card {
  padding: 8px;
}
@media (min-width: 768px) {
  .home-rail .product-card {
    padding: 10px;
  }
}

/* Product card — cicizuccaciye.com rail / catalog */
.product-card {
  background: #efeef3;
  border: 1px solid #19195d;
  border-radius: 16px;
  padding: 12px;
  box-shadow: none;
}
.product-card__media {
  position: relative;
}
.product-card__image-link {
  display: block;
  aspect-ratio: 2 / 3;
  background: #fff;
  overflow: hidden;
}
.product-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transition: transform 0.45s ease;
}
.product-card:hover .product-card__image {
  transform: scale(1.02);
}
.product-card__image-empty {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #bbb;
  background: #fff;
}
.product-card__wish {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 2;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #666;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
}
.product-card__wish .material-symbols-outlined {
  font-size: 18px;
  line-height: 1;
}
.product-card__wish:hover { color: #111; }
.product-card__body {
  padding-top: 0;
}
.product-card__title {
  margin: 12px 0 8px;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
  color: #000;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (min-width: 768px) {
  .product-card__title { font-size: 14px; }
}
.product-card__price-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0;
  min-height: 38px;
}
.product-card__discount {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  margin-right: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #285581;
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  border-radius: 0;
}
.product-card__prices {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}
.product-card__price-old {
  font-size: 13px;
  font-weight: 400;
  color: #aaa;
  text-decoration: line-through;
  line-height: 1.2;
}
.product-card__price {
  font-size: 15px;
  font-weight: 900;
  color: #000;
  line-height: 1.25;
}
.product-card__cart {
  margin-top: 8px;
  width: 100%;
  height: 40px;
  border: 1px solid #285581;
  border-radius: 0;
  background: #fff;
  color: #232323;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.product-card__cart:hover {
  background: #c9d8e3;
}

/* CMS prose */
.cms-content.prose-cms {
  line-height: 1.75;
  color: #444;
}
.cms-content.prose-cms > *:first-child { margin-top: 0; }
.cms-content.prose-cms > *:last-child { margin-bottom: 0; }
.cms-content.prose-cms p { margin: 0 0 1em; }
.cms-content.prose-cms h2,
.cms-content.prose-cms h3,
.cms-content.prose-cms h4 {
  color: #111;
  font-weight: 600;
  line-height: 1.3;
  margin: 1.75em 0 0.6em;
}
.cms-content.prose-cms h2 { font-size: 1.35rem; }
.cms-content.prose-cms h3 { font-size: 1.15rem; }
.cms-content.prose-cms h4 { font-size: 1.05rem; }
.cms-content.prose-cms ul,
.cms-content.prose-cms ol {
  margin: 0 0 1em;
  padding-left: 1.35rem;
}
.cms-content.prose-cms ul { list-style: disc; }
.cms-content.prose-cms ol { list-style: decimal; }
.cms-content.prose-cms li { margin: 0.35em 0; }
.cms-content.prose-cms a {
  color: #111;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.cms-content.prose-cms strong { color: #111; font-weight: 600; }
.cms-content.prose-cms blockquote {
  margin: 1em 0;
  padding: 0.75rem 1rem;
  border-left: 3px solid #ccc;
  background: #fafafa;
}
.cms-content.prose-cms table {
  width: 100%;
  border-collapse: collapse;
  margin: 1em 0;
  font-size: 0.95em;
}
.cms-content.prose-cms th,
.cms-content.prose-cms td {
  border: 1px solid #ddd;
  padding: 0.5rem 0.75rem;
  text-align: left;
}
.cms-content.prose-cms hr {
  border: 0;
  border-top: 1px solid #eee;
  margin: 1.5em 0;
}

.product-description img { max-width: 100%; height: auto; }
.product-description ul { list-style: disc; padding-left: 1.2rem; margin: 0.75rem 0; }
.product-description p { margin: 0 0 0.75rem; }
