/* ── Shop Page ── */
.shop-page { padding-top: 8em; }
.shop-header { width: 100%; padding: 2em; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 1em; }
.shop-subtitle { font-family: "Onest", sans-serif; opacity: 0.6; text-transform: none; }

/* Filter */
.shop-filter { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.6em; padding: 0 2em 2em; }
.filter-btn { display: inline-block; padding: 0.6em 1.2em; border: 1px solid rgba(0,0,0,0.15); border-radius: 2em; font-family: "Onest", sans-serif; font-size: 0.8rem; font-weight: 600; color: var(--fg); text-transform: none; transition: all 0.3s; }
.filter-btn:hover { border-color: var(--primary); color: var(--primary); }
.filter-btn.active { background: var(--fg); color: var(--bg); border-color: var(--fg); }

/* Product Grid */
.shop-grid { padding: 0 2em 4em; display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.25em; }

/* Product Card */
.product-card {
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 1em;
  overflow: hidden;
  background: #fff;
  transition: transform 0.4s, box-shadow 0.4s;
  display: flex; flex-direction: column;
}
.product-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 48px rgba(0,0,0,0.1);
}

/* Card Image */
.product-card-img {
  display: block;
  position: relative;
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
  background: #f5f5f0;
}
.product-card-img img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 0.5s;
}
.product-card:hover .product-card-img img { transform: scale(1.06); }
.product-card-placeholder {
  width: 100%; height: 100%;
  display: flex; align-items: center; justify-content: center;
  background: #f0f0eb;
}
.product-card-badge {
  position: absolute; top: 0.75em; left: 0.75em;
  background: var(--primary); color: #fff;
  padding: 0.25em 0.7em; border-radius: 0.4em;
  font-family: "Onest", sans-serif; font-size: 0.65rem; font-weight: 700;
  text-transform: none;
  box-shadow: 0 2px 8px rgba(108, 92, 231, 0.3);
}
.product-card-discount {
  position: absolute; top: 0.75em; right: 0.75em;
  background: #e74c3c; color: #fff;
  padding: 0.25em 0.6em; border-radius: 0.4em;
  font-family: "Onest", sans-serif; font-size: 0.65rem; font-weight: 700;
  text-transform: none;
}

/* Card Body */
.product-card-body { padding: 1.25em; display: flex; flex-direction: column; gap: 0.6em; flex: 1; }
.product-card-cat {
  display: inline-block; width: max-content;
  font-family: "Onest", sans-serif; font-size: 0.65rem; font-weight: 700;
  color: var(--primary); text-transform: uppercase; letter-spacing: 0.05em;
}
.product-card-body h4 { font-family: "Onest", sans-serif; font-size: 1rem; line-height: 1.3; }
.product-card-body h4 a { font-family: "Onest", sans-serif; font-size: 1rem; text-transform: none; color: var(--fg); transition: color 0.3s; }
.product-card-body h4 a:hover { color: var(--primary); }
.product-card-price { display: flex; align-items: baseline; gap: 0.5em; flex-wrap: nowrap; white-space: nowrap; }
.pc-old { font-family: "Onest", sans-serif; font-size: 0.85rem; text-decoration: line-through; opacity: 0.35; text-transform: none; }
.pc-current { font-family: "Onest", sans-serif; font-size: 1.2rem; font-weight: 900; color: var(--primary); text-transform: none; }

/* Card Actions - always stacked */
.product-card-actions { display: flex; flex-direction: column; gap: 0.4em; margin-top: auto; }
.pc-cart-form { width: 100%; }
.pc-demo-btn {
  display: flex; align-items: center; justify-content: center; gap: 0.4em;
  width: 100%; padding: 0.6em;
  background: transparent; color: var(--primary);
  border: 1.5px solid rgba(108,92,231,0.2); border-radius: 0.5em;
  font-family: "Onest", sans-serif; font-size: 0.75rem; font-weight: 600;
  text-transform: none; transition: all 0.3s;
}
.pc-demo-btn:hover { background: rgba(108,92,231,0.06); border-color: var(--primary); }
.pc-options-btn { background: var(--primary) !important; color: #fff !important; text-decoration: none; text-align: center; }
.pc-cart-btn {
  display: flex; align-items: center; justify-content: center; gap: 0.5em;
  width: 100%; padding: 0.7em;
  background: var(--fg); color: var(--bg);
  border: none; border-radius: 0.5em;
  font-family: "Onest", sans-serif; font-size: 0.8rem; font-weight: 600;
  cursor: pointer; transition: all 0.3s; text-transform: none;
}
.pc-cart-btn:hover { background: var(--primary); }
.pc-cart-btn svg { flex-shrink: 0; }

/* ── Featured (Home) card image ── */
.featured-card-img {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 0.6em;
  overflow: hidden;
  position: relative;
}
.featured-card-img img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 0.5s;
}
.featured-card:hover .featured-card-img img { transform: scale(1.06); }
.featured-discount {
  position: absolute; top: 0.6em; right: 0.6em;
  background: #e74c3c; color: #fff;
  padding: 0.2em 0.5em; border-radius: 0.3em;
  font-family: "Onest", sans-serif; font-size: 0.65rem; font-weight: 700;
  text-transform: none;
}
.featured-card-img .featured-badge {
  position: absolute; top: 0.6em; left: 0.6em;
  background: var(--primary); color: #fff;
  padding: 0.2em 0.6em; border-radius: 0.3em;
  font-family: "Onest", sans-serif; font-size: 0.65rem; font-weight: 700;
  text-transform: none;
  box-shadow: 0 2px 8px rgba(108, 92, 231, 0.4);
}

/* CTA */
.packages-cta { padding: 4em 2em; }
.packages-cta-inner { background: var(--fg); border-radius: 1em; padding: 4em; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 1.5em; }
.packages-cta-inner h2 { color: var(--bg); }
.packages-cta-inner p { color: var(--bg); font-family: "Onest", sans-serif; text-transform: none; opacity: 0.8; max-width: 600px; }
.packages-cta-inner .btn { background: var(--bg); color: var(--fg); }
.packages-cta-inner .btn:hover { background: var(--primary); color: #fff; }

@media (max-width: 1000px) {
  .shop-grid { padding: 0 1.25em 2em; grid-template-columns: repeat(2, 1fr); gap: 0.75em; }
  .shop-filter { padding: 0 1.25em 1.25em; gap: 0.4em; }
  .filter-btn { font-size: 0.7rem; padding: 0.5em 0.8em; }
  .product-card-body { padding: 0.8em; }
  .product-card-body h4 a { font-size: 0.85rem; }
  .pc-current { font-size: 1rem; }
  .product-card-body { padding: 0.85em; }
  .product-card-body h4 a { font-size: 0.9rem; }
  .pc-current { font-size: 1.1rem; }
  .pc-cart-btn { font-size: 0.8rem; padding: 0.65em; }
  .pc-demo-btn { font-size: 0.75rem; padding: 0.6em; }
  .packages-cta { padding: 2em 1.25em; }
  .packages-cta-inner { padding: 2.5em 1.5em; }
}

/* 500px altında da 2 sütun kalır */
