.elementor-widget .zestawy-04-sets { padding: 0 var(--gutter) var(--space-xl); background: var(--color-bg); scroll-margin-top: var(--header-height); }
.elementor-widget .zestawy-04-sets__inner { max-width: var(--container); margin-inline: auto; padding: var(--space-xl) var(--space-s); border: var(--border-width) solid var(--color-line); border-radius: var(--radius-m); background: var(--color-surface); box-shadow: var(--shadow-1); text-align: center; }
.elementor-widget .zestawy-04-sets__title { margin: 0; font-family: var(--font-serif); font-weight: var(--weight-regular); font-size: var(--text-h2); line-height: var(--leading-heading); color: var(--color-heading); }
.elementor-widget .zestawy-04-sets__sprig { display: block; width: var(--icon-m); height: var(--icon-m); margin: var(--space-2xs) auto var(--space-l); fill: none; stroke: var(--color-sage-700); stroke-width: var(--icon-stroke); stroke-linecap: round; stroke-linejoin: round; }
.elementor-widget .zestawy-04-sets__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr)); gap: var(--space-s); margin: 0; padding: 0; list-style: none; }
.elementor-widget .zestawy-04-sets__card { position: relative; display: flex; flex-direction: column; align-items: center; padding-bottom: var(--space-m); border: var(--border-width) solid var(--color-line); border-radius: var(--radius-m); background: var(--color-surface); transition: transform var(--dur-med) var(--ease-out), box-shadow var(--dur-med) var(--ease-out); }
.elementor-widget .zestawy-04-sets__card:hover { transform: translateY(var(--lift)); box-shadow: var(--shadow-2); }
.elementor-widget .zestawy-04-sets__badge { position: absolute; top: calc(-1 * var(--space-xs)); left: 50%; z-index: var(--z-raised); display: inline-flex; align-items: center; gap: var(--space-3xs); padding: var(--space-3xs) var(--space-xs); border-radius: var(--radius-s); background: var(--color-lavender-700); color: var(--color-white); font-size: var(--text-micro); font-weight: var(--weight-medium); letter-spacing: var(--tracking-caps); white-space: nowrap; transform: translateX(-50%); box-shadow: var(--shadow-1); }
.elementor-widget .zestawy-04-sets__heart { width: var(--icon-s); height: var(--icon-s); fill: none; stroke: currentColor; stroke-width: var(--icon-stroke); }
.elementor-widget .zestawy-04-sets__photo { position: relative; width: 100%; aspect-ratio: 5 / 4; overflow: hidden; border-radius: var(--radius-m) var(--radius-m) 0 0; }
.elementor-widget .zestawy-04-sets__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform var(--dur-slow) var(--ease-out); }
.elementor-widget .zestawy-04-sets__card:hover .zestawy-04-sets__img { transform: scale(var(--zoom-hover)); }
.elementor-widget .zestawy-04-sets__name { margin: var(--space-s) var(--space-s) var(--space-xs); font-family: var(--font-serif); font-weight: var(--weight-regular); font-size: var(--step-1); line-height: var(--leading-heading); color: var(--color-heading); }
.elementor-widget .zestawy-04-sets__text { flex: 1; margin: 0 var(--space-s) var(--space-m); font-size: var(--text-micro); line-height: var(--leading-body); color: var(--color-text); }
.elementor-widget .zestawy-04-sets__btn { display: inline-flex; align-items: center; gap: var(--space-2xs); min-height: var(--tap-size); padding-inline: var(--space-m); border-radius: var(--radius-s); background: var(--color-sage-300); color: var(--color-heading); font-size: var(--text-micro); font-weight: var(--weight-medium); letter-spacing: var(--tracking-caps); text-decoration: none; transition: background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out); }
.elementor-widget .zestawy-04-sets__btn::after { content: ""; position: absolute; inset: 0; }
.elementor-widget .zestawy-04-sets__card--gift .zestawy-04-sets__btn { background: var(--color-lavender-700); color: var(--color-white); }
.elementor-widget .zestawy-04-sets__card:hover .zestawy-04-sets__btn { background: var(--color-action); color: var(--color-on-action); }
.elementor-widget .zestawy-04-sets__btn:active { background: var(--color-action-active); transform: scale(var(--press-scale)); }
.elementor-widget .zestawy-04-sets__arrow { width: var(--space-s); height: var(--space-s); fill: none; stroke: currentColor; stroke-width: var(--icon-stroke); stroke-linecap: round; stroke-linejoin: round; transition: transform var(--dur-fast) var(--ease-out); }
.elementor-widget .zestawy-04-sets__card:hover .zestawy-04-sets__arrow { transform: translateX(var(--space-3xs)); }
@media (min-width: 768px) { .elementor-widget .zestawy-04-sets__inner { padding: var(--space-xl) var(--space-l); } }
@media (prefers-reduced-motion: reduce) {
  .elementor-widget .zestawy-04-sets__card, .elementor-widget .zestawy-04-sets__img, .elementor-widget .zestawy-04-sets__btn, .elementor-widget .zestawy-04-sets__arrow { transition-duration: 0s; }
  .elementor-widget .zestawy-04-sets__card:hover, .elementor-widget .zestawy-04-sets__card:hover .zestawy-04-sets__img, .elementor-widget .zestawy-04-sets__card:hover .zestawy-04-sets__arrow { transform: none; }
}
