.shop-hero { padding: var(--space-32) 0 var(--space-24); background: radial-gradient(circle at top left, rgba(31, 191, 191, 0.14), transparent 55%), radial-gradient(circle at bottom right, rgba(255, 106, 26, 0.14), transparent 55%); }
.shop-hero-inner { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: var(--space-24); align-items: center; }
.shop-hero-copy { max-width: 640px; }
.shop-hero-copy p { max-width: 560px; }
.shop-hero-actions { display: flex; flex-wrap: wrap; gap: var(--space-8); margin-top: var(--space-12); margin-bottom: var(--space-12); }
.shop-hero-meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-12); margin-top: var(--space-8); }
.shop-hero-meta-item h2 { font-size: var(--font-size-lg); margin-bottom: var(--space-3); }
.shop-hero-media { display: flex; justify-content: flex-end; }
.shop-hero-figure { max-width: 460px; width: 100%; border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-md); border: 1px solid rgba(255, 255, 255, 0.08); }

.shop-section-header { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--space-16); margin-bottom: var(--space-16); }
.shop-section-header--center { flex-direction: column; align-items: center; text-align: center; }
.shop-section-header p { max-width: 640px; }

.shop-by-category { padding: var(--space-32) 0; }
.shop-category-layout { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.9fr); gap: var(--space-24); align-items: center; }
.shop-category-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-12); }
.shop-category-card .card-body { display: flex; flex-direction: column; gap: var(--space-8); }
.shop-category-list { display: grid; gap: var(--space-3); font-size: var(--font-size-sm); color: var(--color-text-muted); margin-bottom: var(--space-4); }
.shop-category-figure { max-width: 440px; margin-left: auto; }

.shop-featured { padding: var(--space-32) 0; background-color: var(--color-surface-alt); }
.shop-featured-layout { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.2fr); gap: var(--space-24); align-items: center; }
.shop-featured-figure { max-width: 460px; border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-md); border: 1px solid rgba(255, 255, 255, 0.06); }
.shop-featured-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-12); }
.shop-featured-card .card-body { display: flex; flex-direction: column; }

.shop-personalised { padding: var(--space-32) 0; }
.shop-personalised-inner { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: var(--space-24); align-items: flex-start; }
.shop-personalised-copy p { max-width: 620px; }
.shop-personalised-list { display: grid; gap: var(--space-4); font-size: var(--font-size-sm); color: var(--color-text-muted); margin-bottom: var(--space-8); }
.shop-personalised-actions { display: flex; flex-wrap: wrap; gap: var(--space-8); }
.shop-personalised-support { padding: var(--space-16); }

.shop-product-spotlight { padding: var(--space-32) 0; background-color: var(--color-surface-alt); }
.shop-product-spotlight-inner { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.4fr); gap: var(--space-24); align-items: center; }
.shop-product-spotlight-figure { border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-md); border: 1px solid rgba(255, 255, 255, 0.06); }
.shop-product-spotlight-copy p { max-width: 620px; }
.shop-product-spotlight-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-12); margin-top: var(--space-12); }
.shop-detail-list { display: grid; gap: var(--space-3); font-size: var(--font-size-sm); color: var(--color-text-muted); }

.shop-reviews-visual { padding: var(--space-32) 0; }
.shop-reviews-inner { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: var(--space-24); align-items: center; }
.shop-reviews-copy p { max-width: 620px; }
.shop-reviews-list { display: grid; gap: var(--space-4); font-size: var(--font-size-sm); color: var(--color-text-muted); }
.shop-reviews-figure { max-width: 440px; margin-left: auto; border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-sm); border: 1px solid rgba(255, 255, 255, 0.06); }

.shop-filters { padding: var(--space-32) 0; background-color: var(--color-surface-alt); }
.shop-filters-inner { max-width: var(--container-max-width); margin: 0 auto; padding: 0 var(--space-8); }

.shop-filters-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-16); margin-top: var(--space-12); }
.shop-filter-list { display: grid; gap: var(--space-3); font-size: var(--font-size-sm); color: var(--color-text-muted); }

.shop-support-checkout { padding: var(--space-32) 0 var(--space-40); }
.shop-support-checkout-inner { max-width: var(--container-max-width); margin: 0 auto; padding: 0 var(--space-8); }
.shop-support-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-16); }
.shop-support-card .card-body { display: flex; flex-direction: column; gap: var(--space-8); }
.shop-support-list { display: grid; gap: var(--space-3); font-size: var(--font-size-sm); color: var(--color-text-muted); }
.shop-checkout-cta-group { display: flex; flex-wrap: wrap; gap: var(--space-8); margin-top: var(--space-4); }

@media (max-width: 1024px) {
  .shop-hero-inner { grid-template-columns: minmax(0, 1fr); }
  .shop-hero-media { justify-content: flex-start; }
  .shop-featured-layout { grid-template-columns: minmax(0, 1fr); }
  .shop-featured-figure { order: -1; justify-self: center; }
  .shop-personalised-inner { grid-template-columns: minmax(0, 1fr); }
  .shop-product-spotlight-inner { grid-template-columns: minmax(0, 1fr); }
  .shop-reviews-inner { grid-template-columns: minmax(0, 1fr); }
  .shop-category-layout { grid-template-columns: minmax(0, 1fr); }
  .shop-category-figure { margin: 0; justify-self: center; }
}

@media (max-width: 768px) {
  .shop-hero { padding: var(--space-24) 0 var(--space-20); }
  .shop-section-header { flex-direction: column; align-items: flex-start; }
  .shop-section-header--center { align-items: flex-start; text-align: left; }
  .shop-category-grid { grid-template-columns: minmax(0, 1fr); }
  .shop-featured-grid { grid-template-columns: minmax(0, 1fr); }
  .shop-product-spotlight-grid { grid-template-columns: minmax(0, 1fr); }
  .shop-filters-grid { grid-template-columns: minmax(0, 1fr); }
  .shop-support-grid { grid-template-columns: minmax(0, 1fr); }
  .shop-hero-meta { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 600px) {
  .shop-hero-actions, .shop-personalised-actions, .shop-checkout-cta-group { flex-direction: column; align-items: stretch; }
  .shop-hero-figure, .shop-featured-figure, .shop-product-spotlight-figure, .shop-reviews-figure { max-width: 100%; }
}
