/*
 * main.css — layout & component styles for LunaDesign-theme.
 * All visual values reference tokens.css custom properties (from global-styles.md).
 * NOTE: identifier classes "Luna<number>" in markup are NOT targeted here by design —
 * they exist purely to identify elements for future corrections.
 */

/* ===== Reset / base ===== */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: var(--font-primary);
  font-size: var(--text-base);
  line-height: var(--line-height-normal);
  color: var(--color-text-primary);
  background: var(--color-bg-base);
  -webkit-font-smoothing: antialiased;
}
img, svg, video { max-width: 100%; height: auto; display: block; }
a { color: var(--color-text-link); text-decoration: none; transition: color var(--duration-fast) var(--ease-default); }
a:hover { color: var(--color-text-link-hover); }
ul, ol { padding-left: var(--space-5); }

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
  color: var(--color-text-primary);
  margin: 0 0 var(--space-4);
}
h1 { font-size: var(--text-4xl); }
h2 { font-size: var(--text-3xl); }
h3 { font-size: var(--text-2xl); }
h4 { font-size: var(--text-xl); }
h5 { font-size: var(--text-lg); }
h6 { font-size: var(--text-md); }
p { margin: 0 0 var(--space-4); }

/* Shared text-link base */
.ld-inline-link,
.ld-text-link {
  color: var(--color-primary);
  font-size: var(--text-base);
  font-weight: var(--font-weight-semibold);
  text-decoration: underline;
  text-decoration-color: var(--color-accent);
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
  text-decoration-skip-ink: none;
  transition: color 220ms ease, text-underline-offset 220ms ease, text-decoration-color 220ms ease;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.ld-text-link:hover { color: var(--color-accent); text-decoration-color: var(--color-accent); text-underline-offset: 6px; }
.ld-inline-link { color: var(--color-rose); text-decoration-color: currentColor; }
.ld-inline-link:hover { color: var(--color-rose-hover); text-underline-offset: 6px; }
.ld-text-link__arrow { flex-shrink: 0; transition: transform 220ms ease; }
.ld-text-link:hover .ld-text-link__arrow { transform: translateX(4px); }

.ld-eyebrow {
  font-family: var(--font-primary);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-widest);
  font-size: var(--text-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-accent);
  margin: 0 0 var(--space-3);
  display: flex;
  align-items: center;
  gap: 8px;
}
.ld-eyebrow::after {
  content: '';
  flex: 1;
  height: 1.5px;
  background: currentColor;
  opacity: 0.55;
  border-radius: 2px;
}
.ld-text-center .ld-eyebrow,
.ld-eyebrow--center {
  justify-content: center;
}
.ld-text-center .ld-eyebrow::before,
.ld-eyebrow--center::before {
  content: '';
  flex: 1;
  height: 1.5px;
  background: currentColor;
  opacity: 0.55;
  border-radius: 2px;
}

/* ===== Layout ===== */
.ld-site-main { overflow-x: clip; }
.ld-container { width: 100%; max-width: var(--container-max); margin-inline: auto; padding-inline: 64px; }
.ld-section { padding-block: var(--space-section); overflow-x: clip; }
/* Ostatnia sekcja przed footerem — dolny padding = standard (spójność z górą sekcji) */
.ld-section--about,
.ld-section--cta,
.ld-section--reviews,
.ld-section--reviews-gradient { padding-block-end: var(--space-section); }
.ld-section--tight { padding-block: calc(var(--space-section) * 0.5); }
.ld-section--surface { background: var(--color-bg-surface); }
.ld-section--blog { background: var(--color-bg-base); padding-block: var(--space-section); }
.ld-section--blog .ld-grid--3 { gap: 28px; }
.ld-section--subtle { background: var(--color-bg-subtle); }
.ld-section--elevated { position: relative; z-index: 2; background: var(--color-bg-base); box-shadow: 0 0 8px rgba(120,70,70,0.18); }

/* ── Reviews slider ──────────────────────────────── */
.ld-section--reviews { background: var(--color-bg-subtle); padding-top: var(--space-section); }
.ld-section--reviews-gradient { background: linear-gradient(to bottom, #fff 0%, #fff 35%, var(--color-bg-subtle) 62%, var(--color-bg-subtle) 100%); }
.ld-reviews__subtitle { font-size: var(--text-base); color: var(--color-text-secondary); margin: var(--space-3) 0 0; line-height: var(--line-height-relaxed); }
.ld-reviews-wrap { position: relative; display: flex; align-items: center; gap: var(--space-4); margin-top: var(--space-8); padding-inline: var(--space-4); }
.ld-reviews-clip { flex: 1; overflow: hidden; padding: 8px 12px; margin: -8px -12px; }
.ld-reviews-track { display: flex; gap: var(--space-4); transition: transform 500ms cubic-bezier(0.4,0,0.2,1); }
.ld-review-card { flex: 0 0 calc((100% - 3 * var(--space-4)) / 4); background: #fff; border: 1px solid rgba(196,104,122,0.25); border-radius: var(--radius-xl); box-shadow: var(--shadow-container); padding: var(--space-5); display: flex; flex-direction: column; gap: var(--space-3); text-align: left; }
.ld-review-card__header { display: flex; align-items: center; gap: var(--space-3); }
.ld-review-card__stars { display: flex; gap: 2px; color: var(--color-accent); margin-left: auto; flex-shrink: 0; }
.ld-review-card__text { font-size: var(--text-sm); color: var(--color-text-secondary); line-height: var(--line-height-relaxed); margin: 0; }
.ld-review-card__date { font-size: var(--text-xs); color: var(--color-text-muted); }
/* Uwaga 16: mniejsze okienko opinii */
.ld-review-card { padding: var(--space-4); }
/* Uwaga 16: strona /opinie/ — masonry z tych samych kart co na home */
.ld-reviews-masonry { column-count: 3; column-gap: var(--space-6); }
.ld-reviews-masonry .ld-review-card { width: 100%; margin: 0 0 var(--space-6); break-inside: avoid; display: inline-flex; }
.ld-reviews-seeall { margin-top: var(--space-8); }
/* Komunikat formularza (wycena wydruków itp.) */
.ld-form-feedback { padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); margin-bottom: var(--space-4); font-size: var(--text-sm); }
.ld-form-feedback--success { background: var(--color-success-bg); color: var(--color-success); }
.ld-form-feedback--error { background: var(--color-error-bg); color: var(--color-error); }
@media (max-width: 992px) { .ld-reviews-masonry { column-count: 2; } }
@media (max-width: 576px) { .ld-reviews-masonry { column-count: 1; } }
/* Strona /opinie/ — miękkie przejścia akwarelą (wspólne tło surface w obu sekcjach) */
.ld-opinie-masonry-sec, .ld-opinie-invite-sec { position: relative; overflow: hidden; background: var(--color-bg-surface); }
.ld-opinie-masonry-sec > *, .ld-opinie-invite-sec > * { position: relative; z-index: 1; }
/* masonry: akwarela na środku, wygaszona radialnie do krawędzi */
.ld-opinie-masonry-sec::before { content: ''; position: absolute; inset: 0; background: url('/wp-content/uploads/2026/06/Akwarelowe-tlo_008.png') center center / cover no-repeat; opacity: 0.22; z-index: 0; pointer-events: none; -webkit-mask-image: radial-gradient(ellipse at center, #000 25%, transparent 72%); mask-image: radial-gradient(ellipse at center, #000 25%, transparent 72%); }
/* ostatnia sekcja: akwarela przy dole, wjeżdża gradientem od góry → góra = czyste tło surface (blend z sekcją wyżej) */
.ld-opinie-invite-sec::before { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 80%; background: url('/wp-content/uploads/2026/06/Akwarelowe-tlo_008.png') center bottom / cover no-repeat; opacity: 0.5; z-index: 0; pointer-events: none; -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 65%); mask-image: linear-gradient(to bottom, transparent 0%, #000 65%); }

/* Pomocnicze tła akwarelowe do miękkich przejść między sekcjami */
.ld-wc-bottom, .ld-wc-top { position: relative; overflow: hidden; background: var(--color-bg-surface); }
.ld-wc-bottom > *, .ld-wc-top > * { position: relative; z-index: 1; }
.ld-wc-bottom::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 65%; background: url('/wp-content/uploads/2026/06/Akwarelowe-tlo_008.png') center bottom / cover no-repeat; opacity: 0.5; z-index: 0; pointer-events: none; -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 55%, #000 88%, transparent 100%); mask-image: linear-gradient(to bottom, transparent 0%, #000 55%, #000 88%, transparent 100%); }
.ld-wc-top::after { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 60%; background: url('/wp-content/uploads/2026/06/Akwarelowe-tlo_008.png') center top / cover no-repeat; opacity: 0.35; z-index: 0; pointer-events: none; -webkit-mask-image: linear-gradient(to top, transparent 0%, #000 75%); mask-image: linear-gradient(to top, transparent 0%, #000 75%); }

/* Akwarelowy motyw w tle (centralny, wygaszony radialnie) — wypełnia dłuższe/puste sekcje */
.ld-wc-center { position: relative; overflow: hidden; }
.ld-wc-center > * { position: relative; z-index: 1; }
.ld-wc-center::before { content: ''; position: absolute; inset: 0; background: url('/wp-content/uploads/2026/06/Akwarelowe-tlo_008.png') center center / cover no-repeat; opacity: 0.25; z-index: 0; pointer-events: none; -webkit-mask-image: radial-gradient(ellipse at center, #000 18%, transparent 70%); mask-image: radial-gradient(ellipse at center, #000 18%, transparent 70%); }

/* Home: zamiana teł O Olbrand ↔ Wasze opinie */
.ld-wc-blob { position: relative; overflow: hidden; }
.ld-wc-blob > * { position: relative; z-index: 1; }
.ld-wc-blob::after { content: ''; position: absolute; left: -5%; right: -5%; bottom: 0; height: 65%; background: url('/wp-content/uploads/2026/06/Akwarelowa-plama_centrum_AdobeStock_566498531.png') center bottom / cover no-repeat; opacity: 0.32; z-index: 0; pointer-events: none; -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 35%, #000 100%); mask-image: linear-gradient(to bottom, transparent 0%, #000 35%, #000 100%); }
/* O Olbrand na home dostaje akwarelę na środku (jak miały opinie) — override natywnej plamy z dołu */
.ld-section--about.ld-home-about-swap::before { left: 0; right: 0; top: 0; bottom: 0; height: auto; background: url('/wp-content/uploads/2026/07/Firefly_purple-and-light-pink-acquarelle-from-left-to-right-in-the-middle-fading-to-top-and-b-526900-scaled.jpg') center center / cover no-repeat; opacity: 0.15; z-index: -1; -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 22%, #000 78%, transparent 100%); mask-image: linear-gradient(to bottom, transparent 0%, #000 22%, #000 78%, transparent 100%); }

/* Paginacja sklepu — odstęp od kart produktów */
.woocommerce-pagination { margin-top: var(--space-6); }
/* CTA: podziel się opinią */
.ld-reviews-cta { position: relative; display: flex; align-items: center; gap: var(--space-5); background: var(--color-bg-rose); border: 1px solid rgba(196,104,122,0.32); border-radius: var(--radius-xl); padding: var(--space-8) var(--space-8); margin-top: var(--space-8); box-shadow: 0 4px 12px rgba(0,0,0,0.12); overflow: hidden; }
.ld-reviews-cta::before,
.ld-reviews-cta::after { content: ''; position: absolute; top: 50%; width: 240px; height: 240px; background: url('/wp-content/uploads/2026/06/Akwarelowa-plama_centrum_AdobeStock_566498531.png') center / contain no-repeat; opacity: 0.35; pointer-events: none; }
.ld-reviews-cta::before { left: -90px; transform: translateY(-50%) rotate(-15deg); }
.ld-reviews-cta::after { right: -90px; transform: translateY(-50%) rotate(15deg) scaleX(-1); }
.ld-reviews-cta__icon { position: relative; z-index: 1; flex-shrink: 0; width: 56px; height: 56px; border-radius: var(--radius-full); border: 2px solid var(--color-accent); background: transparent; color: var(--color-accent); display: flex; align-items: center; justify-content: center; }
.ld-reviews-cta__text { position: relative; z-index: 1; flex: 1; display: flex; flex-direction: column; gap: 4px; text-align: left; }
.ld-reviews-cta__btn { position: relative; z-index: 1; }
.ld-reviews-cta__text strong { font-size: var(--text-base); color: var(--color-text-primary); font-weight: var(--font-weight-semibold); }
.ld-reviews-cta__text span { font-size: var(--text-sm); color: var(--color-text-secondary); }
/* Trust badges */
.ld-reviews-badges { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-4); margin-top: var(--space-6); }
.ld-reviews-badge { display: flex; align-items: flex-start; gap: var(--space-3); text-align: left; }
.ld-reviews-badge svg { flex-shrink: 0; color: var(--color-rose); margin-top: 2px; }
.ld-reviews-badge div { display: flex; flex-direction: column; gap: 2px; }
.ld-reviews-badge strong { font-size: var(--text-sm); color: var(--color-text-primary); font-weight: var(--font-weight-semibold); }
.ld-reviews-badge span { font-size: var(--text-xs); color: var(--color-text-muted); }

/* ── Opinion modal ───────────────────────────────────────────────────────── */
.ld-modal { position: fixed; inset: 0; z-index: 9000; display: flex; align-items: center; justify-content: center; padding: var(--space-5); }
.ld-modal[hidden] { display: none; }
.ld-modal__backdrop { position: absolute; inset: 0; background: rgba(60,30,40,0.55); backdrop-filter: blur(3px); cursor: pointer; }
.ld-modal__box { position: relative; background: #fff; border-radius: var(--radius-xl); box-shadow: var(--shadow-xl); padding: var(--space-8); width: 100%; max-width: 520px; max-height: 90vh; overflow-y: auto; }
.ld-modal__close { position: absolute; top: var(--space-4); right: var(--space-4); width: 36px; height: 36px; border-radius: var(--radius-full); border: 1.5px solid var(--color-border); background: transparent; color: var(--color-text-muted); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; transition: background 200ms ease, color 200ms ease; }
.ld-modal__close:hover { background: var(--color-bg-subtle); color: var(--color-text-primary); }
.ld-modal__title { font-size: var(--text-2xl); margin: var(--space-2) 0 var(--space-1); }
.ld-modal__subtitle { font-size: var(--text-sm); color: var(--color-text-secondary); margin: 0 0 var(--space-6); }
/* Star rating input */
.ld-opinia-form__stars { display: flex; flex-direction: row-reverse; justify-content: flex-end; gap: 4px; margin-bottom: var(--space-5); }
.ld-opinia-form__stars input[type="radio"] { position: absolute; opacity: 0; width: 0; height: 0; }
.ld-opinia-form__stars label { cursor: pointer; color: var(--color-border-strong); transition: color 150ms ease; }
.ld-opinia-form__stars label:hover,
.ld-opinia-form__stars label:hover ~ label,
.ld-opinia-form__stars input:checked ~ label { color: var(--color-accent); }
/* Form fields */
.ld-opinia-form .ld-form-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: var(--space-4); }
.ld-opinia-form label { font-size: var(--text-sm); font-weight: var(--font-weight-semibold); color: var(--color-text-primary); }
.ld-opinia-form label span { color: var(--color-rose); }
.ld-opinia-form input[type="text"],
.ld-opinia-form textarea { width: 100%; border: 1.5px solid var(--color-border-strong); border-radius: var(--radius-md); padding: var(--space-3) var(--space-4); font-size: var(--text-sm); font-family: inherit; color: var(--color-text-primary); background: #fff; transition: border-color 200ms ease; resize: vertical; box-sizing: border-box; }
.ld-opinia-form input[type="text"]:focus,
.ld-opinia-form textarea:focus { outline: none; border-color: var(--color-primary); }
.ld-opinia-form__feedback { padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); font-size: var(--text-sm); font-weight: var(--font-weight-semibold); margin-bottom: var(--space-4); }
.ld-opinia-form__feedback--success { background: #e8f5e9; border: 1.5px solid #66bb6a; color: #2e7d32; }
.ld-opinia-form__feedback--error { background: #fff5f5; border: 1.5px solid #f4aeae; color: #b54040; }
.ld-btn--full { width: 100%; justify-content: center; }

/* Lightbox */
.ld-lightbox { position: fixed; inset: 0; z-index: 9999; background: rgba(0,0,0,0.88); display: flex; align-items: center; justify-content: center; padding: var(--space-6); opacity: 0; pointer-events: none; transition: opacity 250ms ease; }
.ld-lightbox.is-open { opacity: 1; pointer-events: all; }
.ld-lightbox__img { max-width: 100%; max-height: 90vh; border-radius: var(--radius-lg); box-shadow: var(--shadow-xl); object-fit: contain; transform: scale(0.95); transition: transform 300ms ease; }
.ld-lightbox.is-open .ld-lightbox__img { transform: scale(1); }
.ld-lightbox__close { position: absolute; top: var(--space-5); right: var(--space-5); width: 44px; height: 44px; border-radius: var(--radius-full); background: rgba(255,255,255,0.12); border: none; color: #fff; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; transition: background 200ms ease; }
.ld-lightbox__close:hover { background: rgba(255,255,255,0.25); }
.ld-review-card__avatar { width: 38px; height: 38px; border-radius: var(--radius-full); background: var(--color-bg-subtle); color: var(--color-rose); font-size: var(--text-xs); font-weight: var(--font-weight-bold); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; border: 2px solid var(--color-border-subtle); }
.ld-review-card__meta { display: flex; flex-direction: column; gap: 1px; }
.ld-review-card__meta strong { font-size: var(--text-sm); color: var(--color-text-primary); font-weight: var(--font-weight-semibold); }
.ld-reviews__arrow { flex-shrink: 0; width: 40px; height: 40px; border-radius: var(--radius-full); border: 1.5px solid var(--color-border); background: #fff; color: var(--color-text-primary); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; transition: background 200ms ease, border-color 200ms ease, color 200ms ease; box-shadow: var(--shadow-xs); }
.ld-reviews__arrow:hover { background: var(--color-rose); border-color: var(--color-rose); color: #fff; }
.ld-reviews__arrow:disabled { opacity: 0.3; pointer-events: none; }
.ld-reviews-dots { display: flex; justify-content: center; gap: var(--space-2); margin-top: var(--space-6); }
.ld-reviews-dots__dot { width: 8px; height: 8px; border-radius: var(--radius-full); background: var(--color-border); border: none; cursor: pointer; padding: 0; transition: background 200ms ease, transform 200ms ease; }
.ld-reviews-dots__dot.is-active { background: var(--color-rose); transform: scale(1.3); }

/* CTA section: subtle bg, watercolor image, gradient overlay from bg-color 100%→0% */
.ld-section--cta {
  position: relative;
  overflow: hidden;
  background: var(--color-bg-subtle);
}
.ld-section--cta::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url('/wp-content/uploads/2026/06/Akwarelowa-plama_centrum_AdobeStock_566498531.png') center center / cover no-repeat;
  opacity: 0.4;
  pointer-events: none;
  z-index: 0;
}
.ld-section--cta::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, var(--color-bg-subtle) 0%, transparent 100%);
  pointer-events: none;
  z-index: 1;
}
.ld-section--cta > * { position: relative; z-index: 2; }

/* About + CTA section: subtle bg, watercolor filling bottom half */
.ld-section--about {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: var(--color-bg-subtle);
  padding-block-start: var(--space-section);
}
.ld-section--about::before {
  content: '';
  position: absolute;
  left: -5%;
  right: -5%;
  bottom: 0;
  height: 65%;
  background: url('/wp-content/uploads/2026/06/Akwarelowa-plama_centrum_AdobeStock_566498531.png') center bottom / cover no-repeat;
  opacity: 0.32;
  mask-image: linear-gradient(to bottom, transparent 0%, black 35%, black 100%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 35%, black 100%);
  pointer-events: none;
  z-index: -1;
}
.Luna142000020::after { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 45%; background: linear-gradient(to bottom, #ffffff 0%, transparent 100%); pointer-events: none; z-index: 0; }
.Luna142000020 > * { position: relative; z-index: 1; }
.ld-about-cta { padding-block-start: var(--space-16); }
.ld-contact-list { list-style: none; padding: 0; display: grid; gap: var(--space-3); }
.ld-contact-list li { display: flex; align-items: flex-start; gap: var(--space-3); }
.ld-contact-icon { width: 18px; height: 18px; flex-shrink: 0; color: var(--color-accent); margin-top: 2px; }
.ld-social-btns { display: flex; gap: var(--space-3); margin-top: var(--space-5); }
.ld-social-btn { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: var(--radius-full); color: #fff; transition: background var(--duration-btn) var(--ease-btn), transform var(--duration-btn) var(--ease-btn); box-shadow: 0 2px 6px rgba(120,70,70,0.22); }
.ld-social-btn:hover { background: var(--color-accent); transform: scale(1.04); color: #fff; }
.ld-social-btn--wa { background: var(--color-rose); }
.ld-social-btn--fb { background: var(--color-rose); }
.ld-social-btn--ig { background: var(--color-rose); }
.ld-grid { display: grid; gap: var(--space-6); }
.ld-grid--2 { grid-template-columns: repeat(2, 1fr); }
.ld-grid--3 { grid-template-columns: repeat(3, 1fr); }
.ld-grid--4 { grid-template-columns: repeat(4, 1fr); }
.ld-grid--5 { grid-template-columns: repeat(5, 1fr); }
.ld-text-center { text-align: center; }
.ld-lead { font-size: var(--text-md); color: var(--color-text-secondary); max-width: 60ch; }
.ld-skip-link { position: absolute; left: -9999px; }
.ld-skip-link:focus { left: var(--space-4); top: var(--space-4); z-index: 1000; background: var(--color-primary); color: #fff; padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); }

/* ===== Buttons ===== */
.ld-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2);
  height: var(--btn-height-md); padding-inline: var(--space-6);
  font-family: var(--font-primary); font-size: var(--text-base); font-weight: var(--font-weight-semibold);
  border-radius: var(--btn-radius); border: 1.5px solid transparent; cursor: pointer;
  transition: background var(--duration-btn) var(--ease-btn), color var(--duration-btn) var(--ease-btn), border-color var(--duration-btn) var(--ease-btn), transform var(--duration-btn) var(--ease-btn);
  text-decoration: none; line-height: 1;
  -webkit-appearance: none; appearance: none; background-image: none; box-shadow: none;
}
.ld-btn:hover { transform: scale(1.04); }
.ld-btn--sm { height: var(--btn-height-sm); padding-inline: var(--space-4); font-size: var(--text-sm); }
.ld-btn--lg { height: var(--btn-height-lg); padding-inline: var(--space-8); font-size: 15px; }
.ld-btn--primary { background: #111111; background-image: none; color: var(--color-text-inverted); border-color: #111111; }
.ld-btn--primary:hover { background: var(--color-accent); color: var(--color-text-inverted); border-color: var(--color-accent); }
.ld-btn--primary:active { background: var(--color-accent-hover); color: var(--color-text-inverted); }
.ld-btn--secondary { background: var(--color-secondary); color: var(--color-text-inverted); }
.ld-btn--secondary:hover { background: var(--color-secondary-hover); color: var(--color-text-inverted); }
.ld-btn--accent { background: var(--color-rose); color: var(--color-text-inverted); border-color: var(--color-rose); }
.ld-btn--accent:hover { background: var(--color-accent); color: var(--color-text-inverted); border-color: var(--color-accent); }
.ld-btn--accent:active { background: var(--color-accent-hover); color: var(--color-text-inverted); }
.ld-btn--outline { background: transparent; color: var(--color-primary); border-color: var(--color-primary); }
.ld-btn--outline:hover { background: var(--color-primary); color: var(--color-text-inverted); }
.ld-btn--ghost { background: transparent; color: var(--color-primary); }
.ld-btn--ghost:hover { background: var(--color-bg-subtle); }
.ld-btn--rose { background: var(--color-rose); color: var(--color-text-inverted); border-color: var(--color-rose); }
.ld-btn--rose:hover { background: var(--color-accent); border-color: var(--color-accent); color: var(--color-text-inverted); }
.ld-btn--rose:active { background: var(--color-rose-active); border-color: var(--color-rose-active); }

/* ===== Forms / inputs ===== */
.ld-field { margin-bottom: var(--space-4); }
.ld-label { display: block; font-size: var(--text-sm); font-weight: var(--font-weight-medium); margin-bottom: var(--space-2); color: var(--color-text-secondary); }
.ld-input, .ld-textarea, .ld-select,
input[type="text"], input[type="email"], input[type="tel"], input[type="search"],
input[type="password"], input[type="number"], input[type="url"], textarea, select {
  width: 100%; min-height: var(--input-height); padding: var(--space-3) var(--space-4);
  font-family: var(--font-primary); font-size: var(--text-base); color: var(--color-text-primary);
  background: var(--color-bg-base); border: 1px solid rgba(196, 104, 122, 0.32);
  border-radius: var(--input-radius);
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
}
.ld-input:focus, .ld-textarea:focus, .ld-select:focus,
input:focus, textarea:focus, select:focus {
  outline: none; border-color: var(--color-rose);
  box-shadow: 0 0 0 3px rgba(196, 104, 122, 0.12);
}

/* Form container — pink background wrapping white fields */
.ld-contact-form, .ld-form {
  background: var(--color-bg-rose);
  border: 1px solid rgba(196, 104, 122, 0.32);
  border-radius: var(--radius-xl);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
  padding: var(--space-8);
}
textarea { min-height: 120px; padding-top: var(--space-3); }
input[type="file"] { padding: var(--space-2); }
input[type="checkbox"] { accent-color: var(--color-rose); width: 16px; height: 16px; }

/* ===== Cards ===== */
.ld-card {
  background: var(--color-bg-base); border: 1px solid var(--color-border-subtle);
  border-radius: var(--card-radius); box-shadow: var(--shadow-md);
  padding: var(--card-padding); overflow: hidden;
  transition: box-shadow var(--duration-normal) var(--ease-default), transform var(--duration-normal) var(--ease-default);
}
.ld-card--hover:hover { box-shadow: var(--shadow-lg); transform: translateY(-3px); }
.ld-card--flush { padding: 0; }
.ld-card--blog { background: var(--color-bg-rose); border-color: rgba(196,104,122,0.18); position: relative; overflow: visible; padding-top: var(--card-padding); box-shadow: 0 2px 8px rgba(196,104,122,0.15); }
.ld-card--blog.ld-card--hover:hover { box-shadow: 0 2px 10px rgba(196,104,122,0.35); }
.ld-card--blog .ld-card__thumb { position: absolute; top: -16px; right: -16px; width: 96px; height: 96px; border-radius: var(--radius-full); overflow: hidden; flex-shrink: 0; border: 4px solid #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.15); display: block; transition: transform 300ms var(--ease-default), box-shadow 300ms var(--ease-default); }
.ld-card--blog:hover .ld-card__thumb { transform: scale(1.08); box-shadow: 0 2px 10px rgba(196,104,122,0.45); }
.ld-card--blog .ld-card__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ld-post-date { display: flex; align-items: center; gap: 5px; }
.ld-card--blog .ld-card__title { padding-right: 72px; }
.ld-card--blog .ld-card__title a { color: var(--color-primary); }
.ld-card--blog .ld-card__title a:hover { color: var(--color-rose); }
.ld-card--blog > p:not(.ld-post-date):not(.ld-breadcrumbs) { font-size: var(--text-sm); }
.ld-card__media { aspect-ratio: 1 / 1; background: var(--color-bg-subtle); object-fit: cover; width: 100%; }
.ld-card__body { padding: var(--card-padding); }
.ld-card__title { font-size: var(--text-lg); margin-bottom: var(--space-2); }

/* ===== Header ===== */
.ld-header { position: fixed; top: var(--notice-height, 0px); left: 0; right: 0; z-index: 100; background: transparent; border-bottom: 2px solid rgba(255,255,255,0.8); box-shadow: 0 2px 6px rgba(120,70,70,0); transition: border-color var(--duration-normal) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default); }

/* Announcement bar (uwaga 18) — nad headerem; body przesunięty o jego wysokość, więc WSZYSTKIE pierwsze sekcje zjeżdżają razem */
:root { --notice-height: 40px; }
/* UWAGA: NIE dajemy padding-top na body — odsłaniałby szare tło body u góry.
   Offset paska ogłoszeniowego wliczamy w padding pierwszych sekcji (.ld-hero__inner, .ld-page-head),
   dzięki czemu tło sekcji sięga samej góry, a pasek nakłada się na nie. */
.ld-topnotice { position: fixed; top: 0; left: 0; right: 0; z-index: 101; background: var(--color-rose); color: var(--color-text-inverted); }
.ld-topnotice__inner { display: flex; align-items: center; justify-content: center; gap: var(--space-2); padding-block: var(--space-2); text-align: center; }
.ld-topnotice__icon { flex-shrink: 0; display: inline-flex; }
.ld-topnotice__text { font-size: var(--text-xs); font-weight: var(--font-weight-bold); line-height: var(--line-height-tight); }
@media (max-width: 768px) { :root { --notice-height: 48px; } .ld-topnotice__icon { display: none; } /* tekst zawija się do 2 linii — ikonka pływałaby w pionie */ }
/* backdrop-filter na ::before, nie na samym headerze — unikamy tworzenia nowego containing-block dla .ld-nav { position: fixed } */
.ld-header::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: transparent; transition: background var(--duration-normal) var(--ease-default); }
.ld-header.is-scrolled { border-bottom-color: transparent; box-shadow: 0 2px 6px rgba(120,70,70,0.35); }
.ld-header.is-scrolled::before { background: rgba(255,255,255,0.88); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.custom-logo-link { display: inline-flex; align-items: center; }
.custom-logo-link img { height: auto; width: auto; max-height: 48px; max-width: 100%; object-fit: contain; display: block; }
.ld-header__inner { display: flex; align-items: center; justify-content: space-between; gap: var(--space-6); min-height: var(--topbar-height); }
.ld-brand { display: inline-flex; align-items: center; gap: var(--space-3); font-family: var(--font-heading); font-size: var(--text-xl); font-weight: var(--font-weight-bold); color: var(--color-primary); letter-spacing: var(--letter-spacing-tight); }
.ld-brand img { max-height: 48px; width: auto; }
.ld-brand__sub { display: block; font-family: var(--font-primary); font-size: var(--text-xs); letter-spacing: var(--letter-spacing-widest); text-transform: uppercase; color: var(--color-accent); font-weight: var(--font-weight-semibold); }
.ld-nav { display: flex; align-items: center; gap: var(--space-6); }
.ld-nav__mobile { display: none; } /* menu mobilne — widoczne tylko ≤768px (patrz media query) */
.ld-nav ul { display: flex; gap: calc(var(--space-5) + 4px); list-style: none; margin: 0; padding: 0; }
.ld-nav a { color: var(--color-text-primary); font-weight: var(--font-weight-regular); font-size: var(--text-base); letter-spacing: 0.02em; padding-block: var(--space-2); position: relative; transition: color 300ms ease; }
.ld-nav a:hover { color: var(--color-text-link); }
.ld-nav .current-menu-item > a, .ld-nav .current_page_item > a { color: var(--color-text-link); }

/* Dropdown submenu */
.ld-nav li { position: relative; }
.ld-nav .sub-menu { display: block; visibility: hidden; opacity: 0; pointer-events: none; position: absolute; top: calc(100% + 12px); left: 50%; transform: translateX(-50%); min-width: 220px; background: #fff; border-radius: 10px; box-shadow: 0 2px 6px rgba(0,0,0,0.10); padding: calc(var(--space-3) + 10px) 0 0; list-style: none; margin: 0; z-index: 200; transition: opacity 200ms ease, transform 200ms ease, visibility 0s linear 200ms; transform: translateX(-50%) translateY(-6px); }
.ld-nav .sub-menu::before { content: ''; position: absolute; top: -12px; left: 0; right: 0; height: 12px; }
.ld-nav li:hover > .sub-menu, .ld-nav li:focus-within > .sub-menu { visibility: visible; opacity: 1; pointer-events: auto; transform: translateX(-50%) translateY(0); transition: opacity 200ms ease, transform 200ms ease, visibility 0s linear 0s; }
.ld-nav .sub-menu a { display: flex; align-items: center; padding: var(--space-1) calc(var(--space-6) + 6px); font-size: var(--text-sm); font-weight: var(--font-weight-regular); letter-spacing: 0.01em; white-space: nowrap; color: var(--color-text-primary); transition: color 200ms ease, background 200ms ease; border-bottom: none; position: relative; }
.ld-nav .sub-menu a:hover { color: var(--color-accent); background: var(--color-surface); }
.ld-nav .sub-menu li:not(:last-child) a::after { content: ''; position: absolute; bottom: 0; left: calc(16px + 9px + calc(var(--space-6) + 6px)); right: calc(var(--space-6) + 6px); height: 1px; background: rgba(196, 104, 122, 0.3); transition: background 200ms ease; }
.ld-nav .sub-menu li:not(:last-child) a:hover::after { background: var(--color-accent); }
.ld-nav .sub-menu li:last-child a { color: #fff; font-weight: var(--font-weight-medium); background: var(--color-rose); border-top: 1px solid var(--color-border-subtle); margin-top: calc(var(--space-1) + 20px); padding-top: 20px; padding-bottom: 20px; border-radius: 0 0 10px 10px; justify-content: center; }
.ld-nav .sub-menu li:last-child a:hover { color: #fff; background: var(--color-accent); }

/* Dropdown icons — monochrome mask-image */
.ld-nav .sub-menu li a::before { content: ''; width: 16px; height: 16px; flex-shrink: 0; margin-right: 9px; background-color: var(--color-rose); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; transition: background-color 200ms ease; }
.ld-nav .sub-menu a:hover::before { background-color: var(--color-accent); }
.ld-nav .sub-menu li:last-child a::before,
.ld-nav .sub-menu li:last-child a:hover::before { background-color: #fff; }
.menu-item-76 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%204000%204000%27%3E%3Cg%3E%3Cpath%20d%3D%27M2006.93%2C997.03c-42.99.36-83.17-10.27-119.4-33.74-50.17-32.49-83.41-79.98-95.34-138.83-25.73-126.93%2C137.95-384.82%2C207.37-489.4.78.37.86.38%2C1.83%2C1.19%2C13.95%2C11.63%2C30.11%2C42.96%2C40.24%2C58.74%2C58.47%2C91.14%2C165.16%2C272.13%2C171.93%2C378.75%2C3.59%2C56.55-18.17%2C111.45-55.79%2C153.34-39.15%2C43.6-93.11%2C66.59-150.84%2C69.94Z%27%2F%3E%3Cpath%20d%3D%27M2716.88%2C1126.72c-40.91-1.51-79.15-13.01-113.06-36.28-3.02-2.06-5.98-4.19-8.9-6.39-2.91-2.2-5.77-4.48-8.57-6.82-2.8-2.34-5.54-4.76-8.22-7.23-2.68-2.48-5.3-5.02-7.86-7.63-2.56-2.61-5.05-5.28-7.47-8.01-2.43-2.73-4.78-5.52-7.07-8.37-2.29-2.85-4.5-5.75-6.65-8.7-2.15-2.96-4.22-5.96-6.22-9.02-2-3.06-3.92-6.16-5.76-9.31-1.84-3.15-3.61-6.35-5.3-9.59-1.69-3.24-3.3-6.52-4.82-9.84-1.53-3.32-2.97-6.67-4.33-10.06-1.36-3.39-2.64-6.81-3.83-10.26-1.19-3.45-2.3-6.93-3.32-10.44-1.02-3.51-1.96-7.04-2.81-10.59-.85-3.55-1.61-7.12-2.28-10.71-4.43-24.38-5.29-49.46-1.12-73.93%2C20.63-121.01%2C140.64-318.64%2C210.7-420.29%2C1.64%2C1.05%2C2.4%2C1.41%2C3.85%2C3.04%2C13.86%2C15.62%2C33.55%2C51.66%2C45.59%2C71.26%2C61.25%2C99.63%2C154.32%2C263.72%2C157.6%2C380.67%2C1.61%2C57.34-18.08%2C114.3-58.15%2C155.97-41.1%2C42.74-93.69%2C61.1-151.99%2C62.53Z%27%2F%3E%3Cpath%20d%3D%27M1284.52%2C1121.59c-45.65-1.5-85.62-14.53-123.75-40.07-43.56-29.17-73.69-77.9-83.74-129.14-28.92-147.45%2C121.19-371.85%2C200.04-489.8%2C20.37%2C17.94%2C37.16%2C49.43%2C51.95%2C72.16%2C60.21%2C92.47%2C153.47%2C248.42%2C160.28%2C360.33%2C3.51%2C57.61-15.68%2C111.81-54.09%2C154.86-40.7%2C45.6-90.08%2C68.28-150.7%2C71.66Z%27%2F%3E%3Cpath%20d%3D%27M637.96%2C2230.44c28.33%2C13.61%2C53.77%2C32.65%2C78.71%2C51.58%2C64.7%2C49.08%2C130.64%2C111.63%2C208.02%2C139.46%2C5.32%2C1.89%2C10.69%2C3.65%2C16.1%2C5.28%2C5.41%2C1.63%2C10.86%2C3.13%2C16.34%2C4.49%2C5.48%2C1.36%2C10.99%2C2.59%2C16.54%2C3.69%2C5.54%2C1.1%2C11.11%2C2.06%2C16.7%2C2.88%2C5.59.82%2C11.2%2C1.51%2C16.82%2C2.07%2C5.62.55%2C11.25.97%2C16.89%2C1.25%2C5.64.28%2C11.29.42%2C16.94.42%2C5.65%2C0%2C11.3-.13%2C16.94-.4%2C37.97-2.01%2C75.36-9.39%2C110.32-24.57%2C97.13-42.19%2C194.17-151.9%2C293.22-180.69%2C29.98-8.71%2C62.47-9.97%2C93.31-5.71%2C56.22%2C7.77%2C98.56%2C41.46%2C142.2%2C74.73%2C108.72%2C82.87%2C212.29%2C153.68%2C357.25%2C130.48%2C100.22-16.04%2C174.91-76.64%2C252.76-136.26%2C28.99-22.2%2C58.36-45.01%2C92.29-59.21%2C21.72-9.09%2C43.58-12.98%2C66.9-15.1%2C26.99-1.81%2C53.33-.16%2C79.17%2C8.33%2C41.01%2C13.48%2C75.75%2C40.67%2C109.57%2C66.62%2C56.24%2C43.15%2C113.01%2C92.98%2C179.04%2C120.2%2C5.53%2C2.25%2C11.11%2C4.34%2C16.75%2C6.27%2C5.64%2C1.93%2C11.34%2C3.71%2C17.08%2C5.33%2C5.74%2C1.62%2C11.53%2C3.07%2C17.35%2C4.37%2C5.82%2C1.29%2C11.68%2C2.42%2C17.56%2C3.39%2C5.89.97%2C11.8%2C1.77%2C17.73%2C2.41%2C5.93.64%2C11.88%2C1.11%2C17.83%2C1.42%2C5.96.3%2C11.92.44%2C17.88.41%2C5.97-.03%2C11.93-.22%2C17.88-.58%2C129.53-6.54%2C210.26-92.16%2C310.25-161.29%2C24.57-16.98%2C49.99-34.54%2C77.68-45.97l-.24%2C471.29c-41.82%2C20.65-79.56%2C44.61-117.68%2C71.41-36.31%2C25.66-72.41%2C51.61-108.31%2C77.85-26.32%2C18.89-52.32%2C38.92-81.52%2C53.21-8.72%2C4.3-17.72%2C7.91-26.99%2C10.83-9.28%2C2.92-18.72%2C5.11-28.33%2C6.58-44.84%2C7.26-92.37%2C2.25-134-16.18-32.19-14.26-59.26-36.02-87.32-56.85-90.43-67.14-179.04-135.42-297.28-135.99-6.48-.09-12.96.02-19.44.31-6.48.29-12.94.77-19.39%2C1.45-6.45.67-12.87%2C1.53-19.27%2C2.57-6.4%2C1.05-12.76%2C2.28-19.09%2C3.7-6.33%2C1.42-12.61%2C3.02-18.84%2C4.81-6.23%2C1.79-12.41%2C3.75-18.52%2C5.9-6.12%2C2.15-12.17%2C4.47-18.15%2C6.97-5.98%2C2.5-11.88%2C5.18-17.71%2C8.03-119.06%2C58.03-215.98%2C197.94-362.05%2C175.28-130.37-20.23-222.21-167.79-370.82-201.61-21.14-4.81-42.1-6.09-63.67-7.12-137.47-3.17-220.86%2C67.98-325.98%2C143.75-38.44%2C27.71-77.21%2C53.71-124.4%2C63.3-99.73%2C20.27-166.26-29.81-241.27-86.07-34.89-26.23-70.05-52.09-105.48-77.58-15.35-10.88-30.82-21.14-47.45-30.01-16.97-9.05-35.29-16.87-51.35-27.41l.38-299.56c.02-58.01-1.17-116.18.16-174.17Z%27%2F%3E%3Cpath%20d%3D%27M636.53%2C2836.25c23.09%2C8.94%2C44.1%2C25.45%2C64.17%2C39.69%2C79.05%2C56.11%2C149.82%2C129.17%2C244.83%2C157.23%2C35.92%2C10.61%2C72.28%2C14.73%2C109.68%2C13.16%2C118.75-4.98%2C196.24-75.6%2C288.02-140.54%2C29.79-21.08%2C60.16-44.37%2C94.45-57.52%2C38.74-14.86%2C79.9-17.6%2C120.81-12.06%2C53.94%2C7.31%2C96.35%2C37.82%2C138.61%2C69.69%2C111.15%2C83.82%2C208.21%2C158.37%2C357.5%2C135.04%2C168.7-26.36%2C254.85-194.97%2C405.18-207.81%2C28.34-1.88%2C57.18.22%2C84.24%2C9.26%2C33.07%2C11.05%2C61.03%2C30.64%2C89.32%2C50.41%2C79.01%2C55.21%2C152.79%2C122.87%2C249.06%2C145.49%2C27.26%2C6.41%2C55.27%2C8.26%2C83.22%2C7.48%2C97.79-2.7%2C159.73-42.19%2C236.23-96.86%2C52.8-37.74%2C104.76-79.13%2C159.89-113.33%2C1.01%2C77.7.17%2C155.51.23%2C233.22.04%2C59.26%2C5.23%2C123.73-6.26%2C181.9-5.52%2C27.99-17.18%2C52.31-32.66%2C76.08%2C63.47%2C15.72%2C188.3%2C44.04%2C235.02%2C88.41%2C8.21%2C7.8%2C16.3%2C17.85%2C16.22%2C29.78-.08%2C11.29-8.02%2C21.79-15.98%2C29.07-51.79%2C47.41-205.45%2C79.88-274.77%2C93.66-233.38%2C46.38-470.7%2C66.65-707.94%2C80.52-101.27%2C5.84-202.6%2C10.15-303.99%2C12.93-101.4%2C2.78-202.81%2C4.03-304.24%2C3.75-101.43-.28-202.84-2.1-304.22-5.44-101.38-3.34-202.69-8.21-303.92-14.61-73.19-1.76-147.11-10.88-219.94-18.05-167.36-16.47-529.12-52.89-668.76-133.64-21.74-12.57-38.1-25.2-44.8-50.35%2C1.95-6.13%2C3.67-12.22%2C7.28-17.63%2C34.18-51.15%2C178.69-82.38%2C240.18-96.02-14.14-27.75-26.6-55.32-31.93-86.22-8.73-50.69-4.1-106.04-4.12-157.42l-.61-249.27Z%27%2F%3E%3Cpath%20d%3D%27M3293.17%2C1867.27c-53.7-60.46-134.28-98.78-214.95-103.16-61.78-3.36-124.64.21-186.64-.77l.11-363.47-.18-113.42c-.06-20.01%2C1.23-41.37-1.13-61.22-1.18-9.89-4.53-18.38-11.43-25.73-12.69-13.55-32.9-14.07-50.21-14.15-48.16-.22-96.34%2C1.1-144.51.88-32.63-.15-68.58-3.5-100.68.65-10.05%2C1.3-20.49%2C3.93-28.03%2C11.08-14.99%2C14.2-12.57%2C33.96-12.48%2C52.82l1.18%2C514.3c-121.48-.54-243.1-1.54-364.57-.13l.27-442.19-.23-145.91c.01-26.39%2C2.24-54.77-.62-80.94-1.15-10.51-4.78-20.36-12.17-28.14-7.92-8.34-20.6-11.1-31.6-12.6-32.88-4.51-69.99-1.48-103.27-1.35-12.28.01-24.56.03-36.84.04-30%2C.03-60.01.07-90.01.1-30.49.03-66.63-3.95-79.57%2C31.45-9.02%2C24.69-3%2C268.74-2.97%2C316.38.06%2C120.64-2.21%2C241.54-.08%2C362.15-122.32%2C3.17-245.56%2C2.8-367.89.86-1.47-130.46%2C1.67-261.15%2C1.69-391.65l.07-89.79c.1-21.25%2C1.51-43.49-1.47-64.54-1.38-9.77-5.11-17.1-12.18-23.99-7.1-6.92-15.33-9.3-24.98-10.59-32.15-4.27-93.12-.44-128.46-.36-41.97.1-84.37-2.91-126.23-1.52-16.43.54-34.41%2C4.07-46%2C16.72-.77.83-1.51%2C1.69-2.21%2C2.58-.7.89-1.37%2C1.81-1.99%2C2.76-.63.94-1.22%2C1.91-1.77%2C2.9-.55.99-1.06%2C2.01-1.53%2C3.04-.47%2C1.03-.9%2C2.08-1.28%2C3.15-.38%2C1.07-.73%2C2.15-1.02%2C3.24-.3%2C1.09-.55%2C2.2-.76%2C3.31-.21%2C1.11-.37%2C2.24-.49%2C3.37-2.12%2C19.25-.7%2C39.87-.66%2C59.3l.24%2C109.76c1.03%2C124%2C1.28%2C247.99.74%2C371.99-42.2.36-84.41.3-126.61-.2-32.64-.29-65.86-1.83-98.34%2C1.86-61.05%2C6.94-120.9%2C37.32-163.75%2C81.09-2.74%2C2.82-5.43%2C5.69-8.05%2C8.62-2.62%2C2.93-5.19%2C5.91-7.69%2C8.95-2.5%2C3.03-4.93%2C6.12-7.31%2C9.26-2.37%2C3.14-4.67%2C6.32-6.91%2C9.55-2.24%2C3.23-4.41%2C6.51-6.51%2C9.84-2.1%2C3.32-4.13%2C6.69-6.09%2C10.1-1.96%2C3.41-3.85%2C6.86-5.66%2C10.35-1.82%2C3.49-3.56%2C7.01-5.23%2C10.57-1.67%2C3.56-3.26%2C7.16-4.78%2C10.78-1.52%2C3.63-2.96%2C7.29-4.33%2C10.97-1.37%2C3.69-2.65%2C7.4-3.87%2C11.14-1.21%2C3.74-2.34%2C7.51-3.4%2C11.3-1.05%2C3.79-2.03%2C7.6-2.92%2C11.43-.9%2C3.83-1.71%2C7.68-2.45%2C11.54-.73%2C3.86-1.39%2C7.74-1.96%2C11.63-.57%2C3.89-1.06%2C7.79-1.47%2C11.7-2.4%2C23.76-1.53%2C47.77-1.15%2C71.61l.08%2C4.72c42.13%2C25.95%2C84.04%2C52.17%2C124.02%2C81.38%2C55.36%2C40.46%2C143.53%2C117.78%2C202.75%2C140.42%2C4.89%2C1.82%2C9.85%2C3.45%2C14.86%2C4.91%2C5.01%2C1.46%2C10.07%2C2.73%2C15.18%2C3.81%2C5.11%2C1.09%2C10.24%2C1.99%2C15.41%2C2.7%2C5.17.72%2C10.36%2C1.24%2C15.57%2C1.57%2C5.21.34%2C10.42.48%2C15.64.44%2C5.22-.05%2C10.43-.28%2C15.63-.71%2C5.2-.42%2C10.38-1.04%2C15.54-1.84%2C5.16-.8%2C10.28-1.79%2C15.37-2.96%2C49.85-11.81%2C88-42.07%2C128.66-71.46%2C108.2-78.2%2C190.31-154.65%2C334.62-137.39%2C52.32%2C6.26%2C104.54%2C25.53%2C149.43%2C52.89%2C96.47%2C58.79%2C170.57%2C154.62%2C292.44%2C157.38%2C22.88.52%2C45.4-1.02%2C67.69-6.39%2C14.46-3.49%2C29.12-8.3%2C42.36-15.13%2C130.68-66.18%2C185.44-172.32%2C349.49-186.88%2C42.59-3.78%2C87.1-.86%2C127.9%2C12.53%2C77.93%2C25.57%2C143.05%2C82.79%2C207.74%2C131.08%2C28.71%2C21.44%2C58.27%2C43.83%2C91.99%2C56.7%2C27.29%2C10.41%2C55.55%2C13.65%2C84.62%2C13.16%2C28.4-.48%2C55.79-5.67%2C81.33-18.41%2C28.97-14.44%2C55.2-35.66%2C81.34-54.62%2C30.78-22.33%2C62.1-43.99%2C92.71-66.53%2C46.09-33.94%2C88.03-67.01%2C140.37-91.47%2C5.66-89.57-5.82-159.79-67.44-229.18Z%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%204000%204000%27%3E%3Cg%3E%3Cpath%20d%3D%27M2006.93%2C997.03c-42.99.36-83.17-10.27-119.4-33.74-50.17-32.49-83.41-79.98-95.34-138.83-25.73-126.93%2C137.95-384.82%2C207.37-489.4.78.37.86.38%2C1.83%2C1.19%2C13.95%2C11.63%2C30.11%2C42.96%2C40.24%2C58.74%2C58.47%2C91.14%2C165.16%2C272.13%2C171.93%2C378.75%2C3.59%2C56.55-18.17%2C111.45-55.79%2C153.34-39.15%2C43.6-93.11%2C66.59-150.84%2C69.94Z%27%2F%3E%3Cpath%20d%3D%27M2716.88%2C1126.72c-40.91-1.51-79.15-13.01-113.06-36.28-3.02-2.06-5.98-4.19-8.9-6.39-2.91-2.2-5.77-4.48-8.57-6.82-2.8-2.34-5.54-4.76-8.22-7.23-2.68-2.48-5.3-5.02-7.86-7.63-2.56-2.61-5.05-5.28-7.47-8.01-2.43-2.73-4.78-5.52-7.07-8.37-2.29-2.85-4.5-5.75-6.65-8.7-2.15-2.96-4.22-5.96-6.22-9.02-2-3.06-3.92-6.16-5.76-9.31-1.84-3.15-3.61-6.35-5.3-9.59-1.69-3.24-3.3-6.52-4.82-9.84-1.53-3.32-2.97-6.67-4.33-10.06-1.36-3.39-2.64-6.81-3.83-10.26-1.19-3.45-2.3-6.93-3.32-10.44-1.02-3.51-1.96-7.04-2.81-10.59-.85-3.55-1.61-7.12-2.28-10.71-4.43-24.38-5.29-49.46-1.12-73.93%2C20.63-121.01%2C140.64-318.64%2C210.7-420.29%2C1.64%2C1.05%2C2.4%2C1.41%2C3.85%2C3.04%2C13.86%2C15.62%2C33.55%2C51.66%2C45.59%2C71.26%2C61.25%2C99.63%2C154.32%2C263.72%2C157.6%2C380.67%2C1.61%2C57.34-18.08%2C114.3-58.15%2C155.97-41.1%2C42.74-93.69%2C61.1-151.99%2C62.53Z%27%2F%3E%3Cpath%20d%3D%27M1284.52%2C1121.59c-45.65-1.5-85.62-14.53-123.75-40.07-43.56-29.17-73.69-77.9-83.74-129.14-28.92-147.45%2C121.19-371.85%2C200.04-489.8%2C20.37%2C17.94%2C37.16%2C49.43%2C51.95%2C72.16%2C60.21%2C92.47%2C153.47%2C248.42%2C160.28%2C360.33%2C3.51%2C57.61-15.68%2C111.81-54.09%2C154.86-40.7%2C45.6-90.08%2C68.28-150.7%2C71.66Z%27%2F%3E%3Cpath%20d%3D%27M637.96%2C2230.44c28.33%2C13.61%2C53.77%2C32.65%2C78.71%2C51.58%2C64.7%2C49.08%2C130.64%2C111.63%2C208.02%2C139.46%2C5.32%2C1.89%2C10.69%2C3.65%2C16.1%2C5.28%2C5.41%2C1.63%2C10.86%2C3.13%2C16.34%2C4.49%2C5.48%2C1.36%2C10.99%2C2.59%2C16.54%2C3.69%2C5.54%2C1.1%2C11.11%2C2.06%2C16.7%2C2.88%2C5.59.82%2C11.2%2C1.51%2C16.82%2C2.07%2C5.62.55%2C11.25.97%2C16.89%2C1.25%2C5.64.28%2C11.29.42%2C16.94.42%2C5.65%2C0%2C11.3-.13%2C16.94-.4%2C37.97-2.01%2C75.36-9.39%2C110.32-24.57%2C97.13-42.19%2C194.17-151.9%2C293.22-180.69%2C29.98-8.71%2C62.47-9.97%2C93.31-5.71%2C56.22%2C7.77%2C98.56%2C41.46%2C142.2%2C74.73%2C108.72%2C82.87%2C212.29%2C153.68%2C357.25%2C130.48%2C100.22-16.04%2C174.91-76.64%2C252.76-136.26%2C28.99-22.2%2C58.36-45.01%2C92.29-59.21%2C21.72-9.09%2C43.58-12.98%2C66.9-15.1%2C26.99-1.81%2C53.33-.16%2C79.17%2C8.33%2C41.01%2C13.48%2C75.75%2C40.67%2C109.57%2C66.62%2C56.24%2C43.15%2C113.01%2C92.98%2C179.04%2C120.2%2C5.53%2C2.25%2C11.11%2C4.34%2C16.75%2C6.27%2C5.64%2C1.93%2C11.34%2C3.71%2C17.08%2C5.33%2C5.74%2C1.62%2C11.53%2C3.07%2C17.35%2C4.37%2C5.82%2C1.29%2C11.68%2C2.42%2C17.56%2C3.39%2C5.89.97%2C11.8%2C1.77%2C17.73%2C2.41%2C5.93.64%2C11.88%2C1.11%2C17.83%2C1.42%2C5.96.3%2C11.92.44%2C17.88.41%2C5.97-.03%2C11.93-.22%2C17.88-.58%2C129.53-6.54%2C210.26-92.16%2C310.25-161.29%2C24.57-16.98%2C49.99-34.54%2C77.68-45.97l-.24%2C471.29c-41.82%2C20.65-79.56%2C44.61-117.68%2C71.41-36.31%2C25.66-72.41%2C51.61-108.31%2C77.85-26.32%2C18.89-52.32%2C38.92-81.52%2C53.21-8.72%2C4.3-17.72%2C7.91-26.99%2C10.83-9.28%2C2.92-18.72%2C5.11-28.33%2C6.58-44.84%2C7.26-92.37%2C2.25-134-16.18-32.19-14.26-59.26-36.02-87.32-56.85-90.43-67.14-179.04-135.42-297.28-135.99-6.48-.09-12.96.02-19.44.31-6.48.29-12.94.77-19.39%2C1.45-6.45.67-12.87%2C1.53-19.27%2C2.57-6.4%2C1.05-12.76%2C2.28-19.09%2C3.7-6.33%2C1.42-12.61%2C3.02-18.84%2C4.81-6.23%2C1.79-12.41%2C3.75-18.52%2C5.9-6.12%2C2.15-12.17%2C4.47-18.15%2C6.97-5.98%2C2.5-11.88%2C5.18-17.71%2C8.03-119.06%2C58.03-215.98%2C197.94-362.05%2C175.28-130.37-20.23-222.21-167.79-370.82-201.61-21.14-4.81-42.1-6.09-63.67-7.12-137.47-3.17-220.86%2C67.98-325.98%2C143.75-38.44%2C27.71-77.21%2C53.71-124.4%2C63.3-99.73%2C20.27-166.26-29.81-241.27-86.07-34.89-26.23-70.05-52.09-105.48-77.58-15.35-10.88-30.82-21.14-47.45-30.01-16.97-9.05-35.29-16.87-51.35-27.41l.38-299.56c.02-58.01-1.17-116.18.16-174.17Z%27%2F%3E%3Cpath%20d%3D%27M636.53%2C2836.25c23.09%2C8.94%2C44.1%2C25.45%2C64.17%2C39.69%2C79.05%2C56.11%2C149.82%2C129.17%2C244.83%2C157.23%2C35.92%2C10.61%2C72.28%2C14.73%2C109.68%2C13.16%2C118.75-4.98%2C196.24-75.6%2C288.02-140.54%2C29.79-21.08%2C60.16-44.37%2C94.45-57.52%2C38.74-14.86%2C79.9-17.6%2C120.81-12.06%2C53.94%2C7.31%2C96.35%2C37.82%2C138.61%2C69.69%2C111.15%2C83.82%2C208.21%2C158.37%2C357.5%2C135.04%2C168.7-26.36%2C254.85-194.97%2C405.18-207.81%2C28.34-1.88%2C57.18.22%2C84.24%2C9.26%2C33.07%2C11.05%2C61.03%2C30.64%2C89.32%2C50.41%2C79.01%2C55.21%2C152.79%2C122.87%2C249.06%2C145.49%2C27.26%2C6.41%2C55.27%2C8.26%2C83.22%2C7.48%2C97.79-2.7%2C159.73-42.19%2C236.23-96.86%2C52.8-37.74%2C104.76-79.13%2C159.89-113.33%2C1.01%2C77.7.17%2C155.51.23%2C233.22.04%2C59.26%2C5.23%2C123.73-6.26%2C181.9-5.52%2C27.99-17.18%2C52.31-32.66%2C76.08%2C63.47%2C15.72%2C188.3%2C44.04%2C235.02%2C88.41%2C8.21%2C7.8%2C16.3%2C17.85%2C16.22%2C29.78-.08%2C11.29-8.02%2C21.79-15.98%2C29.07-51.79%2C47.41-205.45%2C79.88-274.77%2C93.66-233.38%2C46.38-470.7%2C66.65-707.94%2C80.52-101.27%2C5.84-202.6%2C10.15-303.99%2C12.93-101.4%2C2.78-202.81%2C4.03-304.24%2C3.75-101.43-.28-202.84-2.1-304.22-5.44-101.38-3.34-202.69-8.21-303.92-14.61-73.19-1.76-147.11-10.88-219.94-18.05-167.36-16.47-529.12-52.89-668.76-133.64-21.74-12.57-38.1-25.2-44.8-50.35%2C1.95-6.13%2C3.67-12.22%2C7.28-17.63%2C34.18-51.15%2C178.69-82.38%2C240.18-96.02-14.14-27.75-26.6-55.32-31.93-86.22-8.73-50.69-4.1-106.04-4.12-157.42l-.61-249.27Z%27%2F%3E%3Cpath%20d%3D%27M3293.17%2C1867.27c-53.7-60.46-134.28-98.78-214.95-103.16-61.78-3.36-124.64.21-186.64-.77l.11-363.47-.18-113.42c-.06-20.01%2C1.23-41.37-1.13-61.22-1.18-9.89-4.53-18.38-11.43-25.73-12.69-13.55-32.9-14.07-50.21-14.15-48.16-.22-96.34%2C1.1-144.51.88-32.63-.15-68.58-3.5-100.68.65-10.05%2C1.3-20.49%2C3.93-28.03%2C11.08-14.99%2C14.2-12.57%2C33.96-12.48%2C52.82l1.18%2C514.3c-121.48-.54-243.1-1.54-364.57-.13l.27-442.19-.23-145.91c.01-26.39%2C2.24-54.77-.62-80.94-1.15-10.51-4.78-20.36-12.17-28.14-7.92-8.34-20.6-11.1-31.6-12.6-32.88-4.51-69.99-1.48-103.27-1.35-12.28.01-24.56.03-36.84.04-30%2C.03-60.01.07-90.01.1-30.49.03-66.63-3.95-79.57%2C31.45-9.02%2C24.69-3%2C268.74-2.97%2C316.38.06%2C120.64-2.21%2C241.54-.08%2C362.15-122.32%2C3.17-245.56%2C2.8-367.89.86-1.47-130.46%2C1.67-261.15%2C1.69-391.65l.07-89.79c.1-21.25%2C1.51-43.49-1.47-64.54-1.38-9.77-5.11-17.1-12.18-23.99-7.1-6.92-15.33-9.3-24.98-10.59-32.15-4.27-93.12-.44-128.46-.36-41.97.1-84.37-2.91-126.23-1.52-16.43.54-34.41%2C4.07-46%2C16.72-.77.83-1.51%2C1.69-2.21%2C2.58-.7.89-1.37%2C1.81-1.99%2C2.76-.63.94-1.22%2C1.91-1.77%2C2.9-.55.99-1.06%2C2.01-1.53%2C3.04-.47%2C1.03-.9%2C2.08-1.28%2C3.15-.38%2C1.07-.73%2C2.15-1.02%2C3.24-.3%2C1.09-.55%2C2.2-.76%2C3.31-.21%2C1.11-.37%2C2.24-.49%2C3.37-2.12%2C19.25-.7%2C39.87-.66%2C59.3l.24%2C109.76c1.03%2C124%2C1.28%2C247.99.74%2C371.99-42.2.36-84.41.3-126.61-.2-32.64-.29-65.86-1.83-98.34%2C1.86-61.05%2C6.94-120.9%2C37.32-163.75%2C81.09-2.74%2C2.82-5.43%2C5.69-8.05%2C8.62-2.62%2C2.93-5.19%2C5.91-7.69%2C8.95-2.5%2C3.03-4.93%2C6.12-7.31%2C9.26-2.37%2C3.14-4.67%2C6.32-6.91%2C9.55-2.24%2C3.23-4.41%2C6.51-6.51%2C9.84-2.1%2C3.32-4.13%2C6.69-6.09%2C10.1-1.96%2C3.41-3.85%2C6.86-5.66%2C10.35-1.82%2C3.49-3.56%2C7.01-5.23%2C10.57-1.67%2C3.56-3.26%2C7.16-4.78%2C10.78-1.52%2C3.63-2.96%2C7.29-4.33%2C10.97-1.37%2C3.69-2.65%2C7.4-3.87%2C11.14-1.21%2C3.74-2.34%2C7.51-3.4%2C11.3-1.05%2C3.79-2.03%2C7.6-2.92%2C11.43-.9%2C3.83-1.71%2C7.68-2.45%2C11.54-.73%2C3.86-1.39%2C7.74-1.96%2C11.63-.57%2C3.89-1.06%2C7.79-1.47%2C11.7-2.4%2C23.76-1.53%2C47.77-1.15%2C71.61l.08%2C4.72c42.13%2C25.95%2C84.04%2C52.17%2C124.02%2C81.38%2C55.36%2C40.46%2C143.53%2C117.78%2C202.75%2C140.42%2C4.89%2C1.82%2C9.85%2C3.45%2C14.86%2C4.91%2C5.01%2C1.46%2C10.07%2C2.73%2C15.18%2C3.81%2C5.11%2C1.09%2C10.24%2C1.99%2C15.41%2C2.7%2C5.17.72%2C10.36%2C1.24%2C15.57%2C1.57%2C5.21.34%2C10.42.48%2C15.64.44%2C5.22-.05%2C10.43-.28%2C15.63-.71%2C5.2-.42%2C10.38-1.04%2C15.54-1.84%2C5.16-.8%2C10.28-1.79%2C15.37-2.96%2C49.85-11.81%2C88-42.07%2C128.66-71.46%2C108.2-78.2%2C190.31-154.65%2C334.62-137.39%2C52.32%2C6.26%2C104.54%2C25.53%2C149.43%2C52.89%2C96.47%2C58.79%2C170.57%2C154.62%2C292.44%2C157.38%2C22.88.52%2C45.4-1.02%2C67.69-6.39%2C14.46-3.49%2C29.12-8.3%2C42.36-15.13%2C130.68-66.18%2C185.44-172.32%2C349.49-186.88%2C42.59-3.78%2C87.1-.86%2C127.9%2C12.53%2C77.93%2C25.57%2C143.05%2C82.79%2C207.74%2C131.08%2C28.71%2C21.44%2C58.27%2C43.83%2C91.99%2C56.7%2C27.29%2C10.41%2C55.55%2C13.65%2C84.62%2C13.16%2C28.4-.48%2C55.79-5.67%2C81.33-18.41%2C28.97-14.44%2C55.2-35.66%2C81.34-54.62%2C30.78-22.33%2C62.1-43.99%2C92.71-66.53%2C46.09-33.94%2C88.03-67.01%2C140.37-91.47%2C5.66-89.57-5.82-159.79-67.44-229.18Z%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
.menu-item-77 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='5' r='3'/%3E%3Cpath d='M3 16C3 13 5.2 11 8 11s5 2 5 5z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='5' r='3'/%3E%3Cpath d='M3 16C3 13 5.2 11 8 11s5 2 5 5z'/%3E%3C/svg%3E"); }
.menu-item-78 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M7 1h2v5h5v2H9v7H7V8H2V6h5z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M7 1h2v5h5v2H9v7H7V8H2V6h5z'/%3E%3C/svg%3E"); }
.menu-item-79 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 2C6 5 3 8 3 11a5 5 0 0010 0C13 8 10 5 8 2z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 2C6 5 3 8 3 11a5 5 0 0010 0C13 8 10 5 8 2z'/%3E%3C/svg%3E"); }
.menu-item-80 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Crect x='6' y='1' width='4' height='2' rx='1'/%3E%3Cpath d='M5 3h6l1 3v7a1 1 0 01-1 1H5a1 1 0 01-1-1V6z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Crect x='6' y='1' width='4' height='2' rx='1'/%3E%3Cpath d='M5 3h6l1 3v7a1 1 0 01-1 1H5a1 1 0 01-1-1V6z'/%3E%3C/svg%3E"); }
.menu-item-81 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1 12h14l-2-8-4 4-1-5-1 5-4-4z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1 12h14l-2-8-4 4-1-5-1 5-4-4z'/%3E%3C/svg%3E"); }
.menu-item-82 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 13L2 7a4 4 0 015.6-5.6L8 2l.4-.6A4 4 0 0114 7z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 13L2 7a4 4 0 015.6-5.6L8 2l.4-.6A4 4 0 0114 7z'/%3E%3C/svg%3E"); }
.menu-item-83 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cellipse cx='8' cy='6' rx='5' ry='5'/%3E%3Cpath d='M7 11l-1 4h2l-1-4z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cellipse cx='8' cy='6' rx='5' ry='5'/%3E%3Cpath d='M7 11l-1 4h2l-1-4z'/%3E%3C/svg%3E"); }
.menu-item-84 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Crect x='1' y='1' width='6' height='6' rx='1'/%3E%3Crect x='9' y='1' width='6' height='6' rx='1'/%3E%3Crect x='1' y='9' width='6' height='6' rx='1'/%3E%3Crect x='9' y='9' width='6' height='6' rx='1'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Crect x='1' y='1' width='6' height='6' rx='1'/%3E%3Crect x='9' y='1' width='6' height='6' rx='1'/%3E%3Crect x='1' y='9' width='6' height='6' rx='1'/%3E%3Crect x='9' y='9' width='6' height='6' rx='1'/%3E%3C/svg%3E"); }
.menu-item-85 > a::before { display: none; }
.menu-item-144 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3E%3Cg%20transform='scale(8)'%3E%3Cpath%20d='M49.414,46.586l-8.586,-8.586h5.172c0.776,0%201.482,-0.449%201.812,-1.151c0.329,-0.703%200.222,-1.533%20-0.275,-2.129l-7.266,-8.72h1.729c0.727,0%201.396,-0.395%201.749,-1.03c0.353,-0.636%200.332,-1.413%20-0.053,-2.03l-10,-16c-0.366,-0.585%20-1.007,-0.94%20-1.696,-0.94c-0.689,0%20-1.331,0.355%20-1.696,0.94l-10,16c-0.386,0.617%20-0.406,1.394%20-0.054,2.03c0.353,0.635%201.023,1.03%201.75,1.03h1.73l-7.267,8.72c-0.497,0.596%20-0.604,1.426%20-0.274,2.129c0.329,0.702%201.035,1.151%201.811,1.151h5.171l-8.585,8.586c-0.572,0.572%20-0.743,1.432%20-0.434,2.18c0.31,0.747%201.039,1.234%201.848,1.234h14v6c0,1.104%200.896,2%202,2c1.104,0%202,-0.896%202,-2v-6h14c0.809,0%201.538,-0.487%201.848,-1.234c0.309,-0.748%200.138,-1.608%20-0.434,-2.18Z'/%3E%3C/g%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3E%3Cg%20transform='scale(8)'%3E%3Cpath%20d='M49.414,46.586l-8.586,-8.586h5.172c0.776,0%201.482,-0.449%201.812,-1.151c0.329,-0.703%200.222,-1.533%20-0.275,-2.129l-7.266,-8.72h1.729c0.727,0%201.396,-0.395%201.749,-1.03c0.353,-0.636%200.332,-1.413%20-0.053,-2.03l-10,-16c-0.366,-0.585%20-1.007,-0.94%20-1.696,-0.94c-0.689,0%20-1.331,0.355%20-1.696,0.94l-10,16c-0.386,0.617%20-0.406,1.394%20-0.054,2.03c0.353,0.635%201.023,1.03%201.75,1.03h1.73l-7.267,8.72c-0.497,0.596%20-0.604,1.426%20-0.274,2.129c0.329,0.702%201.035,1.151%201.811,1.151h5.171l-8.585,8.586c-0.572,0.572%20-0.743,1.432%20-0.434,2.18c0.31,0.747%201.039,1.234%201.848,1.234h14v6c0,1.104%200.896,2%202,2c1.104,0%202,-0.896%202,-2v-6h14c0.809,0%201.538,-0.487%201.848,-1.234c0.309,-0.748%200.138,-1.608%20-0.434,-2.18Z'/%3E%3C/g%3E%3C/svg%3E"); }
.menu-item-143 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20148.83%20135.55'%3E%3Cpath%20d='M60.91,29.11c8.73-2.66,18.19-2.86,26.9,0,1.31-27.83,37.35-39.8,54.65-17.44,13.8,17.83,4,44.32-17.96,48.54,7.2,17.44,4.98,37.56-6,52.86-16.91,23.55-49.88,29.5-74.19,13.52-21.79-14.32-29.71-42.25-20.08-66.39C-1.31,55.02-9.01,21.13,12.58,5.77c19.95-14.2,46.92-.58,48.33,23.35Z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20148.83%20135.55'%3E%3Cpath%20d='M60.91,29.11c8.73-2.66,18.19-2.86,26.9,0,1.31-27.83,37.35-39.8,54.65-17.44,13.8,17.83,4,44.32-17.96,48.54,7.2,17.44,4.98,37.56-6,52.86-16.91,23.55-49.88,29.5-74.19,13.52-21.79-14.32-29.71-42.25-20.08-66.39C-1.31,55.02-9.01,21.13,12.58,5.77c19.95-14.2,46.92-.58,48.33,23.35Z'/%3E%3C/svg%3E"); }
.menu-item-147 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3E%3Cellipse%20cx='451.823'%20cy='224.5'%20rx='15.128'%20ry='15.113'/%3E%3Cpath%20d='M86.807,94.86A17.991,17.991,0,1,0,74.08,89.6,17.947,17.947,0,0,0,86.807,94.86Z'/%3E%3Cpath%20d='M433.538,47.958c-18.439-6.646-39.519-4.38-59.356,6.381-19.477,10.565-36.583,28.6-48.371,50.9a161.513,161.513,0,0,1,2.976,28.438c.421,25.795-5.274,50.118-15.438,70.463,6.217,21.653,18.679,38.681,35.247,48.036a5,5,0,0,1,1.486,7.427L337,276.394l6.753,2.434L254.278,468.417,238.6,277.853l9.617-.157-7.323-21.235a5,5,0,0,1,3.81-6.545c43.186-8.056,75.036-57.956,74.086-116.071C317.752,70.5,278.445,19.5,230.934,19.5c-.362,0-.723,0-1.087.009-22.989.376-44.5,12.592-60.563,34.4-16.367,22.216-25.1,51.615-24.591,82.782.951,58.114,34.416,106.946,77.842,113.588a5,5,0,0,1,4.022,6.417l-6.624,21.463,8.645-.141L244.234,468.3l-88.84-134.415,2.871-1.183-11.26-13.177a5,5,0,0,1,1.149-7.487c20.927-13.1,32.515-40.616,30.486-72.1-22.131-19.08-37.9-49.472-42.549-84.352-21.78-17.711-47.138-23.122-68.2-14.433-17.281,7.125-29.921,22.8-35.593,44.122-5.8,21.819-3.634,46.833,6.107,70.435C56.54,299.66,96.569,326.828,131.513,318.9a5,5,0,0,1,6.092,4.5l1.311,17.282,7.058-2.91L246.667,490.242l.015-.01a4.985,4.985,0,0,0,4.16,2.268c.139,0,.279-.006.42-.017a4.98,4.98,0,0,0,4.093-2.869l.019.009,97.833-207.389,8.808,3.175.649-21.27a5,5,0,0,1,5.882-4.769c22.585,4.061,47.217-4.154,68.256-22.588a29.833,29.833,0,0,0-17.016-7.3,5,5,0,0,1,0-9.959,29.852,29.852,0,0,0,27.057-27.01,5,5,0,0,1,9.959,0,29.713,29.713,0,0,0,5.071,14.1,145.454,145.454,0,0,0,12.435-26.069c10.136-28.1,11.344-57.458,3.4-82.671C469.921,73.142,454.234,55.417,433.538,47.958ZM181.657,199.722a5,5,0,0,1-6.827-1.842c-10.19-17.718-15.771-38.957-16.138-61.419-.332-20.3,3.643-39.906,11.5-56.709a5,5,0,1,1,9.059,4.234c-7.214,15.436-10.865,33.525-10.558,52.312.34,20.772,5.461,40.343,14.809,56.6A5,5,0,0,1,181.657,199.722ZM193.708,61.9c-1.464,1.613-2.9,3.343-4.274,5.142a5,5,0,1,1-7.952-6.064c1.545-2.026,3.168-3.977,4.823-5.8a5,5,0,1,1,7.4,6.722Z'/%3E%3Cpath%20d='M114,338.677a5,5,0,0,0-5,5V356H97.018a5,5,0,0,0,0,10H109v11.99a5,5,0,0,0,10,0V366h12.331a5,5,0,1,0,0-10H119V343.677A5,5,0,0,0,114,338.677Z'/%3E%3Cpath%20d='M406.333,340.5a5,5,0,0,0,7.071,0l8.6-8.6,8.6,8.6a5,5,0,0,0,7.071-7.072l-8.6-8.595,8.6-8.6a5,5,0,0,0-7.071-7.071l-8.6,8.6-8.6-8.6a5,5,0,0,0-7.071,7.071l8.6,8.6-8.6,8.595A5,5,0,0,0,406.333,340.5Z'/%3E%3Cpath%20d='M379.836,369.991a18,18,0,1,0,0,25.456,18.021,18.021,0,0,0,0-25.456Z'/%3E%3Cpath%20d='M91.236,418.508a18,18,0,1,0,5.272,12.728,18.021,18.021,0,0,0-5.272-12.728Z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3E%3Cellipse%20cx='451.823'%20cy='224.5'%20rx='15.128'%20ry='15.113'/%3E%3Cpath%20d='M86.807,94.86A17.991,17.991,0,1,0,74.08,89.6,17.947,17.947,0,0,0,86.807,94.86Z'/%3E%3Cpath%20d='M433.538,47.958c-18.439-6.646-39.519-4.38-59.356,6.381-19.477,10.565-36.583,28.6-48.371,50.9a161.513,161.513,0,0,1,2.976,28.438c.421,25.795-5.274,50.118-15.438,70.463,6.217,21.653,18.679,38.681,35.247,48.036a5,5,0,0,1,1.486,7.427L337,276.394l6.753,2.434L254.278,468.417,238.6,277.853l9.617-.157-7.323-21.235a5,5,0,0,1,3.81-6.545c43.186-8.056,75.036-57.956,74.086-116.071C317.752,70.5,278.445,19.5,230.934,19.5c-.362,0-.723,0-1.087.009-22.989.376-44.5,12.592-60.563,34.4-16.367,22.216-25.1,51.615-24.591,82.782.951,58.114,34.416,106.946,77.842,113.588a5,5,0,0,1,4.022,6.417l-6.624,21.463,8.645-.141L244.234,468.3l-88.84-134.415,2.871-1.183-11.26-13.177a5,5,0,0,1,1.149-7.487c20.927-13.1,32.515-40.616,30.486-72.1-22.131-19.08-37.9-49.472-42.549-84.352-21.78-17.711-47.138-23.122-68.2-14.433-17.281,7.125-29.921,22.8-35.593,44.122-5.8,21.819-3.634,46.833,6.107,70.435C56.54,299.66,96.569,326.828,131.513,318.9a5,5,0,0,1,6.092,4.5l1.311,17.282,7.058-2.91L246.667,490.242l.015-.01a4.985,4.985,0,0,0,4.16,2.268c.139,0,.279-.006.42-.017a4.98,4.98,0,0,0,4.093-2.869l.019.009,97.833-207.389,8.808,3.175.649-21.27a5,5,0,0,1,5.882-4.769c22.585,4.061,47.217-4.154,68.256-22.588a29.833,29.833,0,0,0-17.016-7.3,5,5,0,0,1,0-9.959,29.852,29.852,0,0,0,27.057-27.01,5,5,0,0,1,9.959,0,29.713,29.713,0,0,0,5.071,14.1,145.454,145.454,0,0,0,12.435-26.069c10.136-28.1,11.344-57.458,3.4-82.671C469.921,73.142,454.234,55.417,433.538,47.958ZM181.657,199.722a5,5,0,0,1-6.827-1.842c-10.19-17.718-15.771-38.957-16.138-61.419-.332-20.3,3.643-39.906,11.5-56.709a5,5,0,1,1,9.059,4.234c-7.214,15.436-10.865,33.525-10.558,52.312.34,20.772,5.461,40.343,14.809,56.6A5,5,0,0,1,181.657,199.722ZM193.708,61.9c-1.464,1.613-2.9,3.343-4.274,5.142a5,5,0,1,1-7.952-6.064c1.545-2.026,3.168-3.977,4.823-5.8a5,5,0,1,1,7.4,6.722Z'/%3E%3Cpath%20d='M114,338.677a5,5,0,0,0-5,5V356H97.018a5,5,0,0,0,0,10H109v11.99a5,5,0,0,0,10,0V366h12.331a5,5,0,1,0,0-10H119V343.677A5,5,0,0,0,114,338.677Z'/%3E%3Cpath%20d='M406.333,340.5a5,5,0,0,0,7.071,0l8.6-8.6,8.6,8.6a5,5,0,0,0,7.071-7.072l-8.6-8.595,8.6-8.6a5,5,0,0,0-7.071-7.071l-8.6,8.6-8.6-8.6a5,5,0,0,0-7.071,7.071l8.6,8.6-8.6,8.595A5,5,0,0,0,406.333,340.5Z'/%3E%3Cpath%20d='M379.836,369.991a18,18,0,1,0,0,25.456,18.021,18.021,0,0,0,0-25.456Z'/%3E%3Cpath%20d='M91.236,418.508a18,18,0,1,0,5.272,12.728,18.021,18.021,0,0,0-5.272-12.728Z'/%3E%3C/svg%3E"); }
.ld-nav .sub-menu .menu-item-90 { display: none; }
.menu-item-149 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3E%3Cg%20transform='scale(8)'%3E%3Cpath%20d='M41,7.586v5.414h5.414Z'/%3E%3Cpath%20d='M18,25h28c0.553,0%201,-0.448%201,-1v-9h-7c-0.553,0%20-1,-0.448%20-1,-1v-7h-21c-0.552,0%20-1,0.448%20-1,1v16c0,0.552%200.448,1%201,1Z'/%3E%3Cpath%20d='M46,39h-28c-0.552,0%20-1,0.447%20-1,1v16c0,0.553%200.448,1%201,1h28c0.553,0%201,-0.447%201,-1v-16c0,-0.553%20-0.447,-1%20-1,-1Zm-4,14h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Zm0,-4h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Zm0,-4h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Z'/%3E%3Cpath%20d='M58,27h-52c-0.552,0%20-1,0.448%20-1,1v16c0,0.553%200.448,1%201,1h4c-0.552,0%20-1,0.447%20-1,1c0,0.553%200.448,1%201,1h2c0.552,0%201,-0.447%201,-1c0,-0.553%20-0.448,-1%20-1,-1h2c0.552,0%201,-0.447%201,-1v-7h34v7c0,0.553%200.447,1%201,1h2c-0.553,0%20-1,0.447%20-1,1c0,0.553%200.447,1%201,1h2c0.553,0%201,-0.447%201,-1c0,-0.553%20-0.447,-1%20-1,-1h4c0.553,0%201,-0.447%201,-1v-16c0,-0.552%20-0.447,-1%20-1,-1Z'/%3E%3C/g%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3E%3Cg%20transform='scale(8)'%3E%3Cpath%20d='M41,7.586v5.414h5.414Z'/%3E%3Cpath%20d='M18,25h28c0.553,0%201,-0.448%201,-1v-9h-7c-0.553,0%20-1,-0.448%20-1,-1v-7h-21c-0.552,0%20-1,0.448%20-1,1v16c0,0.552%200.448,1%201,1Z'/%3E%3Cpath%20d='M46,39h-28c-0.552,0%20-1,0.447%20-1,1v16c0,0.553%200.448,1%201,1h28c0.553,0%201,-0.447%201,-1v-16c0,-0.553%20-0.447,-1%20-1,-1Zm-4,14h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Zm0,-4h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Zm0,-4h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Z'/%3E%3Cpath%20d='M58,27h-52c-0.552,0%20-1,0.448%20-1,1v16c0,0.553%200.448,1%201,1h4c-0.552,0%20-1,0.447%20-1,1c0,0.553%200.448,1%201,1h2c0.552,0%201,-0.447%201,-1c0,-0.553%20-0.448,-1%20-1,-1h2c0.552,0%201,-0.447%201,-1v-7h34v7c0,0.553%200.447,1%201,1h2c-0.553,0%20-1,0.447%20-1,1c0,0.553%200.447,1%201,1h2c0.553,0%201,-0.447%201,-1c0,-0.553%20-0.447,-1%20-1,-1h4c0.553,0%201,-0.447%201,-1v-16c0,-0.552%20-0.447,-1%20-1,-1Z'/%3E%3C/g%3E%3C/svg%3E"); }
.menu-item-90 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3E%3Cg%20transform='scale(8)'%3E%3Cpath%20d='M41,7.586v5.414h5.414Z'/%3E%3Cpath%20d='M18,25h28c0.553,0%201,-0.448%201,-1v-9h-7c-0.553,0%20-1,-0.448%20-1,-1v-7h-21c-0.552,0%20-1,0.448%20-1,1v16c0,0.552%200.448,1%201,1Z'/%3E%3Cpath%20d='M46,39h-28c-0.552,0%20-1,0.447%20-1,1v16c0,0.553%200.448,1%201,1h28c0.553,0%201,-0.447%201,-1v-16c0,-0.553%20-0.447,-1%20-1,-1Zm-4,14h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Zm0,-4h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Zm0,-4h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Z'/%3E%3Cpath%20d='M58,27h-52c-0.552,0%20-1,0.448%20-1,1v16c0,0.553%200.448,1%201,1h4c-0.552,0%20-1,0.447%20-1,1c0,0.553%200.448,1%201,1h2c0.552,0%201,-0.447%201,-1c0,-0.553%20-0.448,-1%20-1,-1h2c0.552,0%201,-0.447%201,-1v-7h34v7c0,0.553%200.447,1%201,1h2c-0.553,0%20-1,0.447%20-1,1c0,0.553%200.447,1%201,1h2c0.553,0%201,-0.447%201,-1c0,-0.553%20-0.447,-1%20-1,-1h4c0.553,0%201,-0.447%201,-1v-16c0,-0.552%20-0.447,-1%20-1,-1Z'/%3E%3C/g%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3E%3Cg%20transform='scale(8)'%3E%3Cpath%20d='M41,7.586v5.414h5.414Z'/%3E%3Cpath%20d='M18,25h28c0.553,0%201,-0.448%201,-1v-9h-7c-0.553,0%20-1,-0.448%20-1,-1v-7h-21c-0.552,0%20-1,0.448%20-1,1v16c0,0.552%200.448,1%201,1Z'/%3E%3Cpath%20d='M46,39h-28c-0.552,0%20-1,0.447%20-1,1v16c0,0.553%200.448,1%201,1h28c0.553,0%201,-0.447%201,-1v-16c0,-0.553%20-0.447,-1%20-1,-1Zm-4,14h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Zm0,-4h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Zm0,-4h-20c-0.552,0%20-1,-0.447%20-1,-1c0,-0.553%200.448,-1%201,-1h20c0.553,0%201,0.447%201,1c0,0.553%20-0.447,1%20-1,1Z'/%3E%3Cpath%20d='M58,27h-52c-0.552,0%20-1,0.448%20-1,1v16c0,0.553%200.448,1%201,1h4c-0.552,0%20-1,0.447%20-1,1c0,0.553%200.448,1%201,1h2c0.552,0%201,-0.447%201,-1c0,-0.553%20-0.448,-1%20-1,-1h2c0.552,0%201,-0.447%201,-1v-7h34v7c0,0.553%200.447,1%201,1h2c-0.553,0%20-1,0.447%20-1,1c0,0.553%200.447,1%201,1h2c0.553,0%201,-0.447%201,-1c0,-0.553%20-0.447,-1%20-1,-1h4c0.553,0%201,-0.447%201,-1v-16c0,-0.552%20-0.447,-1%20-1,-1Z'/%3E%3C/g%3E%3C/svg%3E"); }
.menu-item-146 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20393.05%20472.63'%3E%3Cpath%20d='M305.77,339.24l-16.82,105.39c-1.06,9.11-17.84,8.78-15.76-.97l16.47-103.18c8.62-49.88-80.85-52.11-80.85-1.18v104.79c.33,3.83-3.8,6.25-7.92,6.31-4.12-.06-8.25-2.48-7.92-6.31v-104.79c0-50.93-89.47-48.69-80.84,1.18l16.47,103.18c2.08,9.75-14.7,10.08-15.76.97l-16.82-105.39c-6.92-40.17-49.55-32.69-81.76-32.69,24.57,66.77,41.38,114.92,51.24,139.9,4.93,12.5,11.2,26.31,27.26,26.19h216.28c16.06.12,22.33-13.69,27.26-26.19,9.86-24.99,26.67-73.14,51.24-139.9-32.22,0-74.85-7.48-81.76,32.69Z'/%3E%3Cpath%20d='M155.52,114.37c26.75,8.69,55.47,12.38,82.94,15.68,32.04,3.84,65.45,6.61,96.93,15,3.15.84,6.36,1.76,9.6,2.79-1.62-67.37-93.37-52.1-114.77-90.22-8.78-15.64-6.49-35.99,15.47-57.62-61.52,1.16-141.08,45.67-142.9,81.77,13.77,17.19,34.5,26.68,52.72,32.6ZM183.09,53.93h0c3.36-.82,6.78,1.26,7.6,4.61l6.97,28.5c.82,3.36-1.25,6.78-4.61,7.6h0c-3.36.82-6.78-1.26-7.6-4.61l-6.97-28.5c-.82-3.36,1.26-6.78,4.61-7.6Z'/%3E%3Cpath%20d='M91.76,300.57c2.59,1.82,4.92,3.83,7.03,5.99h4.11c11.39-15.55,32.51-23.59,54.37-21.48,13.56,1.31,26.9,6.53,36.9,15.93,1.87,1.75,3.57,3.61,5.11,5.55h3.27c9.67-12.2,24.84-19.83,42-21.48,18.97-1.83,39.8,3.95,52.38,18.95.7.83,1.35,1.67,1.98,2.53h4.12c2.1-2.17,4.44-4.17,7.02-5.99,14.79-10.42,33.62-11.98,51.28-11.89-11.17-15.93-32.52-30.29-62.41-32.54-41.31-3.1-296.86,2.17-274.07-63.99C-1.04,219.01-6.18,262.02,7.01,290.75c2.2-1,4.64-1.52,7.25-1.52,25.48,0,55.4-4.22,77.5,11.34ZM200.62,271.98l27.54-10.11c3.25-1.19,6.88.49,8.07,3.74,1.19,3.25-.49,6.88-3.73,8.07l-27.54,10.11c-3.25,1.19-6.88-.49-8.07-3.74-1.19-3.25.49-6.88,3.73-8.07ZM24.04,262.95l19.33-22.07c2.28-2.6,6.27-2.87,8.87-.59,2.6,2.28,2.87,6.27.59,8.87l-19.33,22.07c-2.28,2.6-6.27,2.87-8.87.59-2.6-2.28-2.87-6.27-.59-8.87Z'/%3E%3Cpath%20d='M81.83,98.2c-30.36,10.13-46.67,42.07-43.36,83.77,3.86,48.72,201.79,46.41,245.82,49.93,48.79,3.9,86.78,19.81,105.57,40.54,35.62-167.22-236.78-72.04-308.03-174.24ZM105.9,172.14c-.72,3.38-4.08,5.56-7.46,4.84l-28.7-6.11c-3.38-.72-5.56-4.08-4.84-7.46.72-3.38,4.08-5.56,7.46-4.84l28.7,6.11c3.38.72,5.56,4.08,4.84,7.46ZM223.96,182.1l-25.37,14.74c-2.99,1.74-6.86.71-8.59-2.28h0c-1.74-2.99-.71-6.86,2.28-8.59l25.37-14.74c2.99-1.74,6.86-.71,8.59,2.28h0c1.74,2.99.71,6.86-2.28,8.59ZM342.53,228.2h0c-3.04,1.65-6.88.5-8.52-2.54l-13.96-25.81c-1.65-3.04-.5-6.88,2.54-8.52h0c3.04-1.65,6.88-.5,8.52,2.54l13.96,25.81c1.64,3.04.5,6.88-2.54,8.52Z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20393.05%20472.63'%3E%3Cpath%20d='M305.77,339.24l-16.82,105.39c-1.06,9.11-17.84,8.78-15.76-.97l16.47-103.18c8.62-49.88-80.85-52.11-80.85-1.18v104.79c.33,3.83-3.8,6.25-7.92,6.31-4.12-.06-8.25-2.48-7.92-6.31v-104.79c0-50.93-89.47-48.69-80.84,1.18l16.47,103.18c2.08,9.75-14.7,10.08-15.76.97l-16.82-105.39c-6.92-40.17-49.55-32.69-81.76-32.69,24.57,66.77,41.38,114.92,51.24,139.9,4.93,12.5,11.2,26.31,27.26,26.19h216.28c16.06.12,22.33-13.69,27.26-26.19,9.86-24.99,26.67-73.14,51.24-139.9-32.22,0-74.85-7.48-81.76,32.69Z'/%3E%3Cpath%20d='M155.52,114.37c26.75,8.69,55.47,12.38,82.94,15.68,32.04,3.84,65.45,6.61,96.93,15,3.15.84,6.36,1.76,9.6,2.79-1.62-67.37-93.37-52.1-114.77-90.22-8.78-15.64-6.49-35.99,15.47-57.62-61.52,1.16-141.08,45.67-142.9,81.77,13.77,17.19,34.5,26.68,52.72,32.6ZM183.09,53.93h0c3.36-.82,6.78,1.26,7.6,4.61l6.97,28.5c.82,3.36-1.25,6.78-4.61,7.6h0c-3.36.82-6.78-1.26-7.6-4.61l-6.97-28.5c-.82-3.36,1.26-6.78,4.61-7.6Z'/%3E%3Cpath%20d='M91.76,300.57c2.59,1.82,4.92,3.83,7.03,5.99h4.11c11.39-15.55,32.51-23.59,54.37-21.48,13.56,1.31,26.9,6.53,36.9,15.93,1.87,1.75,3.57,3.61,5.11,5.55h3.27c9.67-12.2,24.84-19.83,42-21.48,18.97-1.83,39.8,3.95,52.38,18.95.7.83,1.35,1.67,1.98,2.53h4.12c2.1-2.17,4.44-4.17,7.02-5.99,14.79-10.42,33.62-11.98,51.28-11.89-11.17-15.93-32.52-30.29-62.41-32.54-41.31-3.1-296.86,2.17-274.07-63.99C-1.04,219.01-6.18,262.02,7.01,290.75c2.2-1,4.64-1.52,7.25-1.52,25.48,0,55.4-4.22,77.5,11.34ZM200.62,271.98l27.54-10.11c3.25-1.19,6.88.49,8.07,3.74,1.19,3.25-.49,6.88-3.73,8.07l-27.54,10.11c-3.25,1.19-6.88-.49-8.07-3.74-1.19-3.25.49-6.88,3.73-8.07ZM24.04,262.95l19.33-22.07c2.28-2.6,6.27-2.87,8.87-.59,2.6,2.28,2.87,6.27.59,8.87l-19.33,22.07c-2.28,2.6-6.27,2.87-8.87.59-2.6-2.28-2.87-6.27-.59-8.87Z'/%3E%3Cpath%20d='M81.83,98.2c-30.36,10.13-46.67,42.07-43.36,83.77,3.86,48.72,201.79,46.41,245.82,49.93,48.79,3.9,86.78,19.81,105.57,40.54,35.62-167.22-236.78-72.04-308.03-174.24ZM105.9,172.14c-.72,3.38-4.08,5.56-7.46,4.84l-28.7-6.11c-3.38-.72-5.56-4.08-4.84-7.46.72-3.38,4.08-5.56,7.46-4.84l28.7,6.11c3.38.72,5.56,4.08,4.84,7.46ZM223.96,182.1l-25.37,14.74c-2.99,1.74-6.86.71-8.59-2.28h0c-1.74-2.99-.71-6.86,2.28-8.59l25.37-14.74c2.99-1.74,6.86-.71,8.59,2.28h0c1.74,2.99.71,6.86-2.28,8.59ZM342.53,228.2h0c-3.04,1.65-6.88.5-8.52-2.54l-13.96-25.81c-1.65-3.04-.5-6.88,2.54-8.52h0c3.04-1.65,6.88-.5,8.52,2.54l13.96,25.81c1.64,3.04.5,6.88-2.54,8.52Z'/%3E%3C/svg%3E"); }
.menu-item-145 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2064%2064'%3E%3Cpath%20d='M21.293,22.707a1,1,0,0,0,1.414,0L25,20.414V46H16a1,1,0,0,0-1,1V57a2.158,2.158,0,0,0,.066.326,1.748,1.748,0,0,0,.226.379v0l4,4A1,1,0,0,0,20,62H50a1,1,0,0,0,1-1V51a1,1,0,0,0-.293-.707l-4-4A1,1,0,0,0,46,46H41V7a1,1,0,0,0-.293-.707l-4-4A1,1,0,0,0,36,2H24a1,1,0,0,0-.707.293l-10,10a1,1,0,0,0-.061,1.347ZM22,20.586,20.414,19,25,14.414v3.172ZM47,49.414l2,2v7.172l-2-2ZM47.586,60H20.414l-2-2H45.586ZM37,5.414l2,2V46H37ZM24.414,4H35V47a1,1,0,0,0,1,1h9v8H17V48h9a1,1,0,0,0,1-1V12a1,1,0,0,0-1.707-.707l-6.226,6.226-3.714-4.457Z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2064%2064'%3E%3Cpath%20d='M21.293,22.707a1,1,0,0,0,1.414,0L25,20.414V46H16a1,1,0,0,0-1,1V57a2.158,2.158,0,0,0,.066.326,1.748,1.748,0,0,0,.226.379v0l4,4A1,1,0,0,0,20,62H50a1,1,0,0,0,1-1V51a1,1,0,0,0-.293-.707l-4-4A1,1,0,0,0,46,46H41V7a1,1,0,0,0-.293-.707l-4-4A1,1,0,0,0,36,2H24a1,1,0,0,0-.707.293l-10,10a1,1,0,0,0-.061,1.347ZM22,20.586,20.414,19,25,14.414v3.172ZM47,49.414l2,2v7.172l-2-2ZM47.586,60H20.414l-2-2H45.586ZM37,5.414l2,2V46H37ZM24.414,4H35V47a1,1,0,0,0,1,1h9v8H17V48h9a1,1,0,0,0,1-1V12a1,1,0,0,0-1.707-.707l-6.226,6.226-3.714-4.457Z'/%3E%3C/svg%3E"); }
.ld-nav .sub-menu .menu-item-153 > a::before { width: 20px; height: 20px; margin-right: 5px; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4000 4000'%3E%3Cg%3E%3Cpath d='M2178.73%2C2333.01h-357.47c.74%2C157.26%2C8.63%2C308.46%2C22.9%2C444.57h311.68c14.26-136.1%2C22.16-287.31%2C22.9-444.57Z'/%3E%3Cpath d='M2000%2C1308.37c-21.38%2C0-73.58%2C58.01-118.14%2C277.54-11.25%2C55.42-21.03%2C116.15-29.28%2C181.02h294.83c-8.25-64.87-18.03-125.6-29.28-181.02-44.55-219.54-96.75-277.54-118.13-277.54Z'/%3E%3Cpath d='M1904.7%2C3297.71c-31.57-53.91-58.87-138.31-82.38-254.18-12.67-62.42-23.52-131.34-32.45-205.2h-327.91c96.23%2C242.07%2C256.29%2C414.92%2C442.74%2C459.38Z'/%3E%3Cpath d='M1821.35%2C2272.26h357.3c-1.11-157.56-9.38-308.83-24.08-444.56h-309.13c-14.7%2C135.73-22.98%2C287-24.08%2C444.56Z'/%3E%3Cpath d='M2538.03%2C2838.33h-327.91c-8.92%2C73.86-19.78%2C142.78-32.44%2C205.2-23.52%2C115.87-50.82%2C200.28-82.38%2C254.18%2C186.45-44.46%2C346.51-217.31%2C442.73-459.38Z'/%3E%3Cpath d='M1401.44%2C1766.94c28.44-73.16%2C62.86-141.5%2C102.88-203.53%2C54.92-85.13%2C117.67-154.2%2C185.83-205.85-220.25%2C71.93-407.12%2C218.33-530.68%2C409.38h241.97Z'/%3E%3Cpath d='M2217.65%2C1269.9v-193.14c-48.57-21.33-99.81-35.38-152.58-41.84-24.65-2.99-49.75-4.31-74.41-3.89-18.63.31-37.46%2C1.61-55.99%2C3.89-52.84%2C6.42-104.08%2C20.44-152.6%2C41.75v193.29c70.91-14.73%2C143.83-22.34%2C217.93-22.34s146.83%2C7.6%2C217.64%2C22.28Z'/%3E%3Cpath d='M1989.66%2C970.29c16.18-.27%2C32.46.21%2C48.72%2C1.25v-280.53h-77.03v280.46c9.45-.61%2C18.9-1.02%2C28.31-1.18Z'/%3E%3Cpath d='M1000.42%2C2272.26h304.75c3.43-156.9%2C29.01-307.95%2C74.43-444.56h-256.44c-73.14%2C132.81-116.96%2C283.92-122.74%2C444.56Z'/%3E%3Cpath d='M1784.36%2C1827.69h-340.56c-46.4%2C132.81-74.19%2C283.92-77.86%2C444.56h394.65c1.1-157.14%2C9.27-308.28%2C23.77-444.56Z'/%3E%3Cpath d='M1783.09%2C2777.58c-14.07-136.62-21.85-287.74-22.58-444.57h-394.84c2.44%2C160.3%2C28.94%2C311.34%2C73.98%2C444.57h343.43Z'/%3E%3Cpath d='M1690.15%2C3259.81c-68.16-51.64-130.91-120.72-185.83-205.85-42.21-65.43-78.15-137.9-107.46-215.62h-245.05c123.43%2C196.95%2C313.47%2C348.04%2C538.34%2C421.47Z'/%3E%3Cpath d='M1466.83%2C1766.94h324.55c8.63-69.29%2C18.98-134.11%2C30.95-193.1%2C23.51-115.87%2C50.81-200.27%2C82.38-254.18-183.33%2C43.72-341.17%2C211.55-437.88%2C447.28Z'/%3E%3Cpath d='M1375.62%2C2777.58c-44.09-136.95-68.43-287.96-70.71-444.57h-304.91c3.85%2C160.3%2C45.63%2C311.34%2C116.63%2C444.57h259Z'/%3E%3Cpath d='M2603.15%2C2838.33c-29.31%2C77.72-65.26%2C150.19-107.46%2C215.62-54.92%2C85.13-117.66%2C154.21-185.83%2C205.85%2C224.87-73.44%2C414.91-224.53%2C538.34-421.47h-245.05Z'/%3E%3Cpath d='M2118.14%2C3031.45c11.94-58.85%2C22.24-123.69%2C30.79-193.12h-297.86c8.55%2C69.43%2C18.85%2C134.26%2C30.79%2C193.12%2C44.55%2C219.53%2C96.76%2C277.54%2C118.14%2C277.54s73.58-58.01%2C118.13-277.54Z'/%3E%3Cpath d='M2999.58%2C2272.26c-5.78-160.65-49.59-311.76-122.74-444.56h-256.44c45.42%2C136.62%2C71%2C287.67%2C74.43%2C444.56h304.75Z'/%3E%3Cpath d='M2215.64%2C1827.69c14.5%2C136.28%2C22.67%2C287.43%2C23.77%2C444.56h394.65c-3.67-160.65-31.46-311.76-77.85-444.56h-340.56Z'/%3E%3Cpath d='M2634.33%2C2333.01h-394.84c-.73%2C156.83-8.5%2C307.94-22.57%2C444.57h343.43c45.04-133.22%2C71.54-284.27%2C73.98-444.57Z'/%3E%3Cpath d='M2177.68%2C1573.83c11.97%2C58.99%2C22.32%2C123.81%2C30.95%2C193.1h324.55c-96.71-235.73-254.54-403.56-437.88-447.28%2C31.56%2C53.91%2C58.86%2C138.31%2C82.38%2C254.18Z'/%3E%3Cpath d='M2309.86%2C1357.56c68.16%2C51.64%2C130.91%2C120.72%2C185.83%2C205.85%2C40.02%2C62.03%2C74.43%2C130.37%2C102.88%2C203.53h241.97c-123.56-191.04-310.43-337.45-530.68-409.38Z'/%3E%3Cpath d='M3000%2C2333.01h-304.91c-2.29%2C156.6-26.62%2C307.62-70.71%2C444.57h259c71-133.22%2C112.78-284.27%2C116.63-444.57Z'/%3E%3C/g%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4000 4000'%3E%3Cg%3E%3Cpath d='M2178.73%2C2333.01h-357.47c.74%2C157.26%2C8.63%2C308.46%2C22.9%2C444.57h311.68c14.26-136.1%2C22.16-287.31%2C22.9-444.57Z'/%3E%3Cpath d='M2000%2C1308.37c-21.38%2C0-73.58%2C58.01-118.14%2C277.54-11.25%2C55.42-21.03%2C116.15-29.28%2C181.02h294.83c-8.25-64.87-18.03-125.6-29.28-181.02-44.55-219.54-96.75-277.54-118.13-277.54Z'/%3E%3Cpath d='M1904.7%2C3297.71c-31.57-53.91-58.87-138.31-82.38-254.18-12.67-62.42-23.52-131.34-32.45-205.2h-327.91c96.23%2C242.07%2C256.29%2C414.92%2C442.74%2C459.38Z'/%3E%3Cpath d='M1821.35%2C2272.26h357.3c-1.11-157.56-9.38-308.83-24.08-444.56h-309.13c-14.7%2C135.73-22.98%2C287-24.08%2C444.56Z'/%3E%3Cpath d='M2538.03%2C2838.33h-327.91c-8.92%2C73.86-19.78%2C142.78-32.44%2C205.2-23.52%2C115.87-50.82%2C200.28-82.38%2C254.18%2C186.45-44.46%2C346.51-217.31%2C442.73-459.38Z'/%3E%3Cpath d='M1401.44%2C1766.94c28.44-73.16%2C62.86-141.5%2C102.88-203.53%2C54.92-85.13%2C117.67-154.2%2C185.83-205.85-220.25%2C71.93-407.12%2C218.33-530.68%2C409.38h241.97Z'/%3E%3Cpath d='M2217.65%2C1269.9v-193.14c-48.57-21.33-99.81-35.38-152.58-41.84-24.65-2.99-49.75-4.31-74.41-3.89-18.63.31-37.46%2C1.61-55.99%2C3.89-52.84%2C6.42-104.08%2C20.44-152.6%2C41.75v193.29c70.91-14.73%2C143.83-22.34%2C217.93-22.34s146.83%2C7.6%2C217.64%2C22.28Z'/%3E%3Cpath d='M1989.66%2C970.29c16.18-.27%2C32.46.21%2C48.72%2C1.25v-280.53h-77.03v280.46c9.45-.61%2C18.9-1.02%2C28.31-1.18Z'/%3E%3Cpath d='M1000.42%2C2272.26h304.75c3.43-156.9%2C29.01-307.95%2C74.43-444.56h-256.44c-73.14%2C132.81-116.96%2C283.92-122.74%2C444.56Z'/%3E%3Cpath d='M1784.36%2C1827.69h-340.56c-46.4%2C132.81-74.19%2C283.92-77.86%2C444.56h394.65c1.1-157.14%2C9.27-308.28%2C23.77-444.56Z'/%3E%3Cpath d='M1783.09%2C2777.58c-14.07-136.62-21.85-287.74-22.58-444.57h-394.84c2.44%2C160.3%2C28.94%2C311.34%2C73.98%2C444.57h343.43Z'/%3E%3Cpath d='M1690.15%2C3259.81c-68.16-51.64-130.91-120.72-185.83-205.85-42.21-65.43-78.15-137.9-107.46-215.62h-245.05c123.43%2C196.95%2C313.47%2C348.04%2C538.34%2C421.47Z'/%3E%3Cpath d='M1466.83%2C1766.94h324.55c8.63-69.29%2C18.98-134.11%2C30.95-193.1%2C23.51-115.87%2C50.81-200.27%2C82.38-254.18-183.33%2C43.72-341.17%2C211.55-437.88%2C447.28Z'/%3E%3Cpath d='M1375.62%2C2777.58c-44.09-136.95-68.43-287.96-70.71-444.57h-304.91c3.85%2C160.3%2C45.63%2C311.34%2C116.63%2C444.57h259Z'/%3E%3Cpath d='M2603.15%2C2838.33c-29.31%2C77.72-65.26%2C150.19-107.46%2C215.62-54.92%2C85.13-117.66%2C154.21-185.83%2C205.85%2C224.87-73.44%2C414.91-224.53%2C538.34-421.47h-245.05Z'/%3E%3Cpath d='M2118.14%2C3031.45c11.94-58.85%2C22.24-123.69%2C30.79-193.12h-297.86c8.55%2C69.43%2C18.85%2C134.26%2C30.79%2C193.12%2C44.55%2C219.53%2C96.76%2C277.54%2C118.14%2C277.54s73.58-58.01%2C118.13-277.54Z'/%3E%3Cpath d='M2999.58%2C2272.26c-5.78-160.65-49.59-311.76-122.74-444.56h-256.44c45.42%2C136.62%2C71%2C287.67%2C74.43%2C444.56h304.75Z'/%3E%3Cpath d='M2215.64%2C1827.69c14.5%2C136.28%2C22.67%2C287.43%2C23.77%2C444.56h394.65c-3.67-160.65-31.46-311.76-77.85-444.56h-340.56Z'/%3E%3Cpath d='M2634.33%2C2333.01h-394.84c-.73%2C156.83-8.5%2C307.94-22.57%2C444.57h343.43c45.04-133.22%2C71.54-284.27%2C73.98-444.57Z'/%3E%3Cpath d='M2177.68%2C1573.83c11.97%2C58.99%2C22.32%2C123.81%2C30.95%2C193.1h324.55c-96.71-235.73-254.54-403.56-437.88-447.28%2C31.56%2C53.91%2C58.86%2C138.31%2C82.38%2C254.18Z'/%3E%3Cpath d='M2309.86%2C1357.56c68.16%2C51.64%2C130.91%2C120.72%2C185.83%2C205.85%2C40.02%2C62.03%2C74.43%2C130.37%2C102.88%2C203.53h241.97c-123.56-191.04-310.43-337.45-530.68-409.38Z'/%3E%3Cpath d='M3000%2C2333.01h-304.91c-2.29%2C156.6-26.62%2C307.62-70.71%2C444.57h259c71-133.22%2C112.78-284.27%2C116.63-444.57Z'/%3E%3C/g%3E%3C/svg%3E"); }
.menu-item-148 > a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2032%2032'%3E%3Cpath%20d='M6.12,16.466c0.624-0.624,1.185-0.574,1.587-0.173L10,18.586l2.293-2.293c0.391-0.391,1.023-0.391,1.414,0L16,18.586l2.293-2.293c0.391-0.391,1.023-0.391,1.414,0L22,18.586l2.293-2.293c0.402-0.402,0.962-0.452,1.587,0.173c-0.267-2.48-1.007-5.121-2.101-7.466H8.222C7.127,11.344,6.387,13.985,6.12,16.466z%20M22,11.5c0.828,0,1.5,0.672,1.5,1.5s-0.672,1.5-1.5,1.5s-1.5-0.672-1.5-1.5S21.172,11.5,22,11.5z%20M16,11.5c0.828,0,1.5,0.672,1.5,1.5s-0.672,1.5-1.5,1.5s-1.5-0.672-1.5-1.5S15.172,11.5,16,11.5z%20M10,11.5c0.828,0,1.5,0.672,1.5,1.5s-0.672,1.5-1.5,1.5S8.5,13.828,8.5,13S9.172,11.5,10,11.5z'/%3E%3Cpath%20d='M7.642,25h16.717c-1.787,3.129-4.861,5-8.358,5S9.429,28.129,7.642,25z'/%3E%3Cpath%20d='M6.039,19.375L7,18.414l2.293,2.293c0.391,0.391,1.023,0.391,1.414,0L13,18.414l2.293,2.293c0.391,0.391,1.023,0.391,1.414,0L19,18.414l2.293,2.293c0.391,0.391,1.023,0.391,1.414,0L25,18.414l0.961,0.961c-0.081,1.304-0.32,2.519-0.701,3.625H6.74C6.359,21.894,6.12,20.679,6.039,19.375z'/%3E%3Cpath%20d='M22.703,7H9.297c1.774-2.916,4.12-5,6.703-5S20.928,4.084,22.703,7z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2032%2032'%3E%3Cpath%20d='M6.12,16.466c0.624-0.624,1.185-0.574,1.587-0.173L10,18.586l2.293-2.293c0.391-0.391,1.023-0.391,1.414,0L16,18.586l2.293-2.293c0.391-0.391,1.023-0.391,1.414,0L22,18.586l2.293-2.293c0.402-0.402,0.962-0.452,1.587,0.173c-0.267-2.48-1.007-5.121-2.101-7.466H8.222C7.127,11.344,6.387,13.985,6.12,16.466z%20M22,11.5c0.828,0,1.5,0.672,1.5,1.5s-0.672,1.5-1.5,1.5s-1.5-0.672-1.5-1.5S21.172,11.5,22,11.5z%20M16,11.5c0.828,0,1.5,0.672,1.5,1.5s-0.672,1.5-1.5,1.5s-1.5-0.672-1.5-1.5S15.172,11.5,16,11.5z%20M10,11.5c0.828,0,1.5,0.672,1.5,1.5s-0.672,1.5-1.5,1.5S8.5,13.828,8.5,13S9.172,11.5,10,11.5z'/%3E%3Cpath%20d='M7.642,25h16.717c-1.787,3.129-4.861,5-8.358,5S9.429,28.129,7.642,25z'/%3E%3Cpath%20d='M6.039,19.375L7,18.414l2.293,2.293c0.391,0.391,1.023,0.391,1.414,0L13,18.414l2.293,2.293c0.391,0.391,1.023,0.391,1.414,0L19,18.414l2.293,2.293c0.391,0.391,1.023,0.391,1.414,0L25,18.414l0.961,0.961c-0.081,1.304-0.32,2.519-0.701,3.625H6.74C6.359,21.894,6.12,20.679,6.039,19.375z'/%3E%3Cpath%20d='M22.703,7H9.297c1.774-2.916,4.12-5,6.703-5S20.928,4.084,22.703,7z'/%3E%3C/svg%3E"); }
/* Dropdown arrow indicator on parent */
.ld-nav li.menu-item-has-children > a::after { content: ''; display: inline-block; margin-left: 5px; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform 200ms ease; vertical-align: middle; }
.ld-nav li.menu-item-has-children:hover > a::after { transform: rotate(225deg) translateY(2px); }

.ld-header__actions { display: flex; align-items: center; gap: var(--space-4); }
.ld-header__icon { display: inline-flex; align-items: center; gap: var(--space-1); color: var(--color-primary); font-size: 1.75rem; line-height: 1; transition: color 300ms ease; } /* TASK-068: ikony 2× większe */
.ld-header__icon:hover { color: var(--color-accent); }
.ld-user-icon circle { transition: fill 300ms ease; }
.ld-user-icon path  { transition: fill 300ms ease; }
.ld-header__icon:hover .ld-user-icon circle { fill: var(--color-accent); }
.ld-header__icon:hover .ld-user-icon path  { fill: #ffffff; }
.ld-header__icon--search { background: none; border: none; padding: 0; cursor: pointer; }
.ld-search-icon circle:first-child { transition: fill 300ms ease; }
.ld-header__icon--search:hover .ld-search-icon circle:first-child { fill: var(--color-accent); }
.ld-brand--placeholder { display: inline-flex; align-items: center; }
.ld-logo-placeholder { display: inline-block; width: 160px; height: 48px; border: 1px dashed var(--color-border-strong); border-radius: var(--radius-md); background: var(--color-bg-subtle); }
.ld-header__icon--cart { position: relative; background: none; border: none; padding: 0; cursor: pointer; }
.ld-cart-count { position: absolute; top: -6px; right: -8px; background: var(--color-rose); color: #fff; border-radius: var(--radius-full); font-size: 10px; font-weight: 600; min-width: 18px; height: 18px; display: inline-flex; align-items: center; justify-content: center; padding: 0 4px; line-height: 1; }
.ld-menu-toggle { display: none; background: none; border: 0; cursor: pointer; font-size: var(--text-xl); color: var(--color-primary); }

/* ===== Footer ===== */
.ld-footer { background: #111111; color: var(--color-text-inverted); padding-block: var(--space-16) var(--space-8); }
.ld-footer a { color: rgba(255,255,255,0.82); }
.ld-footer a:hover { color: #fff; }
.ld-footer h4 { color: #fff; font-size: var(--text-md); margin-bottom: var(--space-4); }
.ld-footer__cols { display: grid; grid-template-columns: 1.2fr 1fr 1fr 1fr; column-gap: 60px; row-gap: var(--space-8); }
.ld-footer__cols ul { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-2); }
.ld-footer__brand .ld-brand { color: #fff; }
.ld-brand--footer { display: block !important; width: 100% !important; }
.ld-footer__logo { display: block; width: 100% !important; max-width: 240px; max-height: none !important; height: auto; margin-bottom: var(--space-4); padding-bottom: var(--space-4); border-bottom: 2px solid rgba(255,255,255,0.2); }
/* Logo w stopce mniejsze na mobile — mniej widać niedoskonałości po usuwaniu tła */
@media (max-width: 768px) { .ld-footer__logo { max-width: 170px; } }
.ld-footer__note { color: rgba(255,255,255,0.7); font-size: var(--text-sm); }
.ld-footer__bottom { border-top: 1px solid rgba(255,255,255,0.15); margin-top: var(--space-10); padding-top: var(--space-6); display: flex; flex-wrap: wrap; gap: var(--space-4); justify-content: space-between; color: rgba(255,255,255,0.7); font-size: var(--text-sm); }
.ld-social { display: flex; gap: var(--space-3); }
.ld-social a { width: 38px; height: 38px; border: 1px solid rgba(255,255,255,0.3); border-radius: var(--radius-full); display: inline-flex; align-items: center; justify-content: center; }
.ld-social a:hover { background: var(--color-accent); border-color: var(--color-accent); }

/* ===== Hero ===== */
.ld-hero { position: relative; background-color: var(--color-bg-surface); overflow: hidden; }
.ld-hero::before { content: ''; position: absolute; inset: 0; background-image: var(--hero-bg); background-size: cover; background-position: center; background-repeat: no-repeat; opacity: 0.4; z-index: 0; pointer-events: none; }
.ld-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(250,246,248,0) 0%, rgba(250,246,248,1) 100%); z-index: 1; pointer-events: none; }
.ld-hero > * { position: relative; z-index: 2; }
.ld-hero__inner { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 50px; align-items: center; padding-block-start: calc(56px + var(--topbar-height) + var(--notice-height)); padding-block-end: calc(var(--space-24) - 20px); }
.ld-hero h1 { font-size: clamp(1.6rem, 2.4vw, 2.2rem); margin-bottom: var(--space-5); }
.ld-hero__actions { display: flex; gap: var(--space-4); flex-wrap: nowrap; margin-top: var(--space-8); }
/* Dwa kluczowe CTA jeden pod drugim (duże) */
.ld-hero__actions--stack { flex-direction: column; align-items: stretch; gap: var(--space-3); }
.ld-hero .ld-hero__actions--stack .ld-btn { width: 100%; max-width: none; justify-content: center; }

/* Dwie ścieżki zakupu (uwaga 4) — konwencja kart jak ld-cat-card/ld-prod-card */
.ld-paths { margin-top: var(--space-8); }
.ld-path-card { position: relative; overflow: hidden; display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-12) var(--space-8); background: var(--color-bg-base); border: 2px solid var(--color-accent); border-radius: var(--radius-xl); text-decoration: none; color: var(--color-primary); box-shadow: var(--shadow-container); transition: box-shadow var(--duration-btn) var(--ease-btn), transform var(--duration-btn) var(--ease-btn), border-color var(--duration-btn) var(--ease-btn); }
.ld-path-card:hover { box-shadow: 0 2px 10px rgba(196,104,122,0.35); transform: translateY(-2px); border-color: var(--color-rose); }
/* Ikona jako duży złoty znak wodny w tle — wychodzi poza róg, przycięta przez overflow:hidden */
.ld-path-card__icon { position: absolute; right: -0.2em; bottom: -0.3em; font-size: 10rem; line-height: 1; color: var(--color-accent); opacity: 0.12; pointer-events: none; z-index: 0; }
.ld-path-card__title { position: relative; z-index: 1; font-family: var(--font-heading); font-size: var(--text-xl); color: var(--color-primary); }
.ld-path-card:hover .ld-path-card__title { color: var(--color-rose); }
.ld-path-card__desc { position: relative; z-index: 1; color: var(--color-text-secondary); font-size: var(--text-sm); }
.ld-path-card__cta { position: relative; z-index: 1; color: var(--color-rose); font-weight: var(--font-weight-semibold); font-size: var(--text-sm); margin-top: var(--space-2); }
.ld-path-card:hover .ld-path-card__cta { color: var(--color-accent); }
.ld-path-card--wide .ld-path-card__title { font-size: var(--text-2xl); }
.ld-hero__art { aspect-ratio: 4 / 5; border-radius: var(--radius-2xl); background: radial-gradient(circle at 30% 30%, #f7c9df, transparent 60%), radial-gradient(circle at 70% 70%, #e9b9d6, transparent 55%), var(--color-bg-subtle); box-shadow: 0 2px 8px rgba(120, 70, 70, 0.35); display: flex; align-items: center; justify-content: center; color: var(--color-text-muted); }
.ld-hero__art--slider { background: none; overflow: hidden; padding: 0; position: relative; }

/* Fade slider */
.ld-fade-slider { position: relative; width: 100%; height: 100%; border-radius: var(--radius-2xl); overflow: hidden; }
.ld-fade-slider__slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1s ease-in-out; }
.ld-fade-slider__slide.is-active { opacity: 1; }
.ld-fade-slider__slide img { width: 100%; height: 100%; object-fit: cover; object-position: center center; display: block; }
.ld-fade-slider--empty .ld-image-placeholder-text { color: var(--color-text-muted); font-size: var(--text-sm); }
/* Hero na telefonie (≤768px): pokazujemy tylko najnowsze zdjęcia (.is-hero-mobile) */
@media (max-width: 768px) {
  .ld-fade-slider__slide:not(.is-hero-mobile) { display: none; }
}

.ld-img-placeholder { display: flex; align-items: center; justify-content: center; width: 100%; background: var(--color-bg-subtle); color: var(--color-text-muted); border-radius: inherit; font-size: var(--text-sm); }

/* ===== Occasion / category tiles ===== */
/* Realizacje — lightbox */
.ld-lightbox { position: fixed; inset: 0; z-index: 9999; background: rgba(0,0,0,0.92); display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity 260ms ease; }
.ld-lightbox[hidden] { display: none; }
.ld-lightbox.is-open { opacity: 1; }
.ld-lightbox__backdrop { position: absolute; inset: 0; }
.ld-lightbox__stage { position: relative; display: flex; align-items: center; justify-content: center; gap: var(--space-4); max-width: calc(100vw - 120px); max-height: 100vh; }
.ld-lightbox__img { max-width: 100%; max-height: 90vh; object-fit: contain; border-radius: var(--radius-lg); box-shadow: 0 8px 40px rgba(0,0,0,0.6); display: block; }
.ld-lightbox__close { position: fixed; top: var(--space-5); right: var(--space-6); background: rgba(255,255,255,0.12); border: none; color: #fff; width: 48px; height: 48px; border-radius: var(--radius-full); cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 20px; transition: background 200ms ease; z-index: 2; }
.ld-lightbox__close:hover { background: rgba(255,255,255,0.28); }
.ld-lightbox__arrow { background: rgba(255,255,255,0.12); border: none; color: #fff; width: 52px; height: 52px; border-radius: var(--radius-full); cursor: pointer; display: flex; align-items: center; justify-content: center; flex-shrink: 0; transition: background 200ms ease; z-index: 2; }
.ld-lightbox__arrow:hover { background: rgba(255,255,255,0.28); }
.ld-lightbox__arrow[disabled] { opacity: 0.25; pointer-events: none; }
/* legacy nav classes */
.ld-lightbox__nav { position: fixed; top: 50%; transform: translateY(-50%); background: rgba(255,255,255,0.12); border: none; color: #fff; width: 52px; height: 52px; border-radius: var(--radius-full); cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background 200ms ease; z-index: 1; }
.ld-lightbox__nav:hover { background: rgba(255,255,255,0.28); }
.ld-lightbox__prev { left: var(--space-6); }
.ld-lightbox__next { right: var(--space-6); }

/* Realizacje — tile zoom icon */
.ld-tile__zoom { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,0); color: #fff; opacity: 0; transition: opacity 220ms ease, background 220ms ease; pointer-events: none; border-radius: inherit; }
.ld-portfolio-item:hover .ld-tile__zoom { opacity: 1; background: rgba(0,0,0,0.32); }
.ld-portfolio-item[data-lightbox-src] { cursor: zoom-in; }

/* Realizacje — filter bar */
.ld-filter-bar { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-bottom: var(--space-8); }
.ld-filter-btn {
  display: inline-flex; align-items: center;
  padding: 10px var(--space-5);
  border-radius: var(--btn-radius);
  border: 1px solid rgba(196,104,122,0.18);
  background: var(--color-bg-rose);
  color: var(--color-primary);
  font-family: var(--font-primary);
  font-size: var(--text-sm);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
  transition: background var(--duration-normal), color var(--duration-normal), border-color var(--duration-normal);
}
.ld-filter-btn:hover { background: var(--color-rose); color: #fff; border-color: var(--color-rose); }
.ld-filter-btn.is-active { background: #111; color: #fff; border-color: #111; }

/* Filter icons (realizacje) */
.ld-filter-icons { display: flex; flex-direction: column; align-items: center; padding: var(--space-8) var(--space-10); background: var(--color-bg-subtle); }
.ld-filter-icons__list { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-6) var(--space-10); width: 100%; }
.ld-filter-icons__toggle { display: none; }
.ld-filter-icon { display: flex; flex-direction: column; align-items: center; gap: var(--space-2); background: none; border: none; cursor: pointer; padding: 0; }
.ld-filter-icon__circle { width: 72px; height: 72px; border-radius: var(--radius-full); overflow: hidden; background: var(--color-bg-subtle); border: 3px solid transparent; display: flex; align-items: center; justify-content: center; transition: border-color 200ms ease, transform 200ms ease, box-shadow 200ms ease; color: var(--color-text-muted); }
.ld-filter-icon__circle img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ld-filter-icon__name { font-family: var(--font-primary); font-size: 0.65rem; font-weight: var(--font-weight-semibold); color: var(--color-text-secondary); text-align: center; transition: color 200ms ease; line-height: 1.3; max-width: 72px; }
.ld-filter-icon:hover .ld-filter-icon__circle { border-color: var(--color-rose); transform: translateY(-2px); box-shadow: 0 4px 12px rgba(196,104,122,0.25); }
.ld-filter-icon:hover .ld-filter-icon__name { color: var(--color-rose); }
.ld-filter-icon.is-active .ld-filter-icon__circle { border-color: var(--color-rose); box-shadow: 0 4px 12px rgba(196,104,122,0.3); }
.ld-filter-icon.is-active .ld-filter-icon__name { color: var(--color-rose); font-weight: var(--font-weight-bold); }

/* Realizacje: pasek filtrów zwijany do 1 linii na mobile + przycisk „Więcej kategorii" (ten sam mechanizm co na sklepie) */
@media (max-width: 768px) {
  .ld-filter-icons__list { display: grid; grid-template-columns: repeat(4, 1fr); overflow: hidden; transition: max-height var(--duration-normal) var(--ease-default); }
  .ld-filter-icon__circle { width: 56px; height: 56px; }
  .ld-filter-icon__name { max-width: 100%; }
  .ld-filter-icons__toggle.is-visible {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    width: fit-content;
    margin: var(--space-4) auto 0;
    padding: 8px var(--space-5);
    background: var(--color-bg-rose);
    border: 1px solid rgba(196,104,122,0.18);
    border-radius: var(--radius-full);
    font-family: var(--font-primary);
    font-size: var(--text-sm);
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-primary);
    cursor: pointer;
    transition: background var(--duration-normal) var(--ease-default), color var(--duration-normal) var(--ease-default);
  }
  .ld-filter-icons__toggle.is-visible:hover { background: var(--color-rose); color: var(--color-text-inverted); }
  .ld-filter-icons__toggle-chevron { transition: transform var(--duration-normal) var(--ease-default); }
  .ld-filter-icons__toggle[aria-expanded="true"] .ld-filter-icons__toggle-chevron { transform: rotate(180deg); }
}
.ld-portfolio-grid { transition: none; }
.ld-portfolio-item { transition: opacity 220ms ease; }

/* ── Realizacje cards ──────────────────────────────────────────────────────── */
.ld-realizacje-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-6); }
.ld-real-card { background: #fff; border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-container); border: 1px solid rgba(196,104,122,0.25); display: flex; flex-direction: column; transition: box-shadow var(--duration-normal) var(--ease-default), transform var(--duration-normal) var(--ease-default); }
.ld-real-card:hover { box-shadow: 0 2px 10px rgba(196,104,122,0.35); transform: translateY(-3px); }
.ld-real-card__img-wrap { position: relative; aspect-ratio: 3 / 4; overflow: hidden; background: var(--color-bg-subtle); }
.ld-real-card__img-wrap[data-lightbox-src] { cursor: zoom-in; }
.ld-real-card__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 400ms ease; }
.ld-real-card__img-wrap:hover .ld-real-card__img { transform: scale(1.04); }
.ld-real-card__zoom { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,0); color: #fff; opacity: 0; transition: opacity 220ms ease, background 220ms ease; pointer-events: none; }
.ld-real-card__img-wrap:hover .ld-real-card__zoom { opacity: 1; background: rgba(0,0,0,0.28); }
.ld-real-card__placeholder { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-size: var(--text-2xl); color: var(--color-text-muted); }
.ld-real-card__body { padding: var(--space-4) var(--space-5) var(--space-5); display: flex; flex-direction: column; gap: var(--space-1); flex: 1; }
.ld-real-card__title { font-size: var(--text-base); font-weight: var(--font-weight-semibold); color: var(--color-text-primary); margin: 0 0 var(--space-1); font-family: var(--font-heading); }
.ld-real-card__subtitle { font-size: var(--text-sm); color: var(--color-text-secondary); margin: 0; }
.ld-real-card__material { font-size: var(--text-sm); color: var(--color-text-secondary); margin: 0 0 var(--space-2); }
.ld-real-card__btn { margin-top: auto; }

.ld-tile__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ld-tile { position: relative; display: block; border-radius: var(--radius-xl); overflow: hidden; aspect-ratio: 3 / 4; background: var(--color-bg-subtle); box-shadow: 0 2px 6px rgba(120,70,70,0.22); transition: box-shadow var(--duration-normal) var(--ease-default), transform var(--duration-normal) var(--ease-default); }
.ld-tile:hover { box-shadow: 0 4px 12px rgba(120,70,70,0.35); transform: translateY(-2px); }
.ld-tile--wide3 { grid-column: span 3; aspect-ratio: unset; align-self: stretch; }
.ld-tile--full  { grid-column: 1 / -1; aspect-ratio: 4 / 1; }
.ld-tile__label { position: absolute; inset-inline: 0; bottom: 0; padding: var(--space-5); background: linear-gradient(transparent, rgba(0,0,0,0.72)); color: #fff; font-family: var(--font-heading); font-size: var(--text-lg); z-index: 1; }

/* Kolaż pionowych obrazów w kafelku Pozostałe */
.ld-tile-collage { position: absolute; inset: 0; display: flex; gap: 0; overflow: hidden; border-radius: inherit; }
.ld-tile-collage__item { flex: 1; min-width: 0; overflow: hidden; }
.ld-tile-collage__item img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; transition: transform 500ms ease; }
.ld-tile:hover .ld-tile-collage__item img { transform: scale(1.04); }

/* ===== Category section watercolor bg ===== */
.ld-section--surface { position: relative; overflow: hidden; }
.ld-section--surface::before {
  content: '';
  position: absolute;
  inset-inline: -10%;
  bottom: -10%;
  height: 70%;
  background: url('/wp-content/uploads/2026/06/Akwarelowe-tlo_009.png') center bottom / cover no-repeat;
  opacity: 0.3;
  mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.6) 40%, rgba(0,0,0,1) 100%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.6) 40%, rgba(0,0,0,1) 100%);
  pointer-events: none;
  z-index: 0;
}
.ld-section--surface > * { position: relative; z-index: 1; }

/* ===== Empty state ===== */
.ld-empty { text-align: center; padding: var(--space-16) var(--space-6); border: 1px dashed var(--color-border-strong); border-radius: var(--radius-xl); background: var(--color-bg-surface); }
.ld-empty__icon { font-size: 2.5rem; margin-bottom: var(--space-4); }
.ld-empty h3 { margin-bottom: var(--space-2); }
.ld-empty p:not(.ld-eyebrow) { color: var(--color-text-secondary); max-width: 46ch; margin-inline: auto; }

/* ===== Feature / info blocks ===== */
.ld-feature { text-align: center; }
.ld-feature h3 { font-size: var(--text-lg); line-height: var(--line-height-tight); margin-bottom: var(--space-2); }
.ld-feature p { font-size: var(--text-sm); color: var(--color-text-secondary); line-height: var(--line-height-normal); }
.ld-feature__icon { width: 56px; height: 56px; border-radius: var(--radius-full); border: 2px solid var(--color-accent); background: transparent; color: var(--color-accent); display: inline-flex; align-items: center; justify-content: center; font-size: var(--text-xl); margin-bottom: var(--space-4); }
.ld-badge { display: inline-block; font-size: var(--text-xs); font-weight: var(--font-weight-semibold); padding: var(--space-1) var(--card-padding); border-radius: 0 var(--radius-full) var(--radius-full) 0; box-shadow: 0 2px 6px rgba(120,70,70,0.22); }
.ld-badge--new { background: var(--color-success-bg); color: var(--color-success); }
.ld-badge--sale { background: var(--color-error-bg); color: var(--color-error); }
.ld-badge--best { background: var(--color-warning-bg); color: var(--color-warning); }

/* ===== Page header (interior pages) ===== */
.ld-page-head { position: relative; overflow: hidden; background: var(--color-bg-surface); padding-block-start: calc(var(--space-5) + var(--topbar-height) + var(--notice-height)); padding-block-end: var(--space-8); border-bottom: 1px solid var(--color-border); }
.ld-page-head::before { content: ''; position: absolute; inset: 0; background: url('/wp-content/uploads/2026/06/Akwarelowe-tlo_008.png') center center / cover no-repeat; opacity: 0.4; z-index: 0; pointer-events: none; }
.ld-page-head > * { position: relative; z-index: 1; }
.ld-page-head h1 { margin-bottom: var(--space-2); font-size: var(--text-3xl); }
.ld-page-head h1, .ld-page-head .ld-lead, .ld-page-head p:not(.ld-eyebrow):not(.ld-breadcrumbs) { max-width: 600px; }
.ld-breadcrumbs { font-size: var(--text-sm); color: var(--color-text-muted); margin-bottom: calc(var(--space-2) + 2px); }
.ld-breadcrumbs a { color: var(--color-text-muted); }

/* ===== Prose (page copy / blog) ===== */
.ld-prose { max-width: 72ch; }
.ld-prose > * + * { margin-top: var(--space-4); }
.ld-prose h2 { margin-top: var(--space-10); font-size: var(--text-2xl); }
.ld-prose h3 { margin-top: var(--space-8); font-size: var(--text-xl); }
.ld-prose img { border-radius: var(--radius-lg); }

/* Single post — outer layout (article + sidebar) */
.ld-post-layout { display: grid; grid-template-columns: 1fr 280px; gap: var(--space-12); align-items: start; }

/* Single post hero — portrait layout */
.ld-post-hero--portrait { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-8); align-items: start; margin-bottom: var(--space-8); }
.ld-post-hero__img img { width: 100%; height: auto; border-radius: var(--radius-lg); display: block; }
.ld-post-hero__lead { font-size: var(--text-lg); line-height: var(--line-height-relaxed); }
/* Single post hero — landscape layout */
.ld-post-hero__img--landscape { width: 100%; height: auto; border-radius: var(--radius-lg); display: block; margin-bottom: var(--space-8); }

/* Sidebar */
.ld-post-sidebar { position: sticky; top: calc(var(--topbar-height) + var(--space-6)); display: flex; flex-direction: column; gap: var(--space-4); }
.ld-post-sidebar > .ld-eyebrow { margin-bottom: var(--space-2); }

/* Sidebar cards */
.ld-sidebar-card { display: flex; gap: var(--space-3); align-items: flex-start; text-decoration: none; padding: var(--space-3); border-radius: var(--radius-lg); transition: background var(--duration-normal) var(--ease-default); }
.ld-sidebar-card:hover { background: var(--color-bg-rose); }
.ld-sidebar-card__thumb { width: 64px; height: 64px; flex-shrink: 0; border-radius: var(--radius-md); overflow: hidden; background: var(--color-bg-subtle); }
.ld-sidebar-card__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ld-sidebar-card__thumb--empty { background: var(--color-bg-subtle); }
.ld-sidebar-card__body { display: flex; flex-direction: column; gap: var(--space-1); }
.ld-sidebar-card__date { font-size: var(--text-xs); color: var(--color-text-muted); margin: 0; }
.ld-sidebar-card__title { font-size: var(--text-sm); font-weight: var(--font-weight-semibold); color: var(--color-primary); line-height: var(--line-height-tight); margin: 0; transition: color var(--duration-normal); }
.ld-sidebar-card:hover .ld-sidebar-card__title { color: var(--color-rose); }

/* ===== Personalization fields (WooCommerce product) ===== */
.ld-personalization { border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: var(--card-padding); background: var(--color-bg-surface); margin-block: var(--space-5); width: 100%; box-sizing: border-box; }
.woocommerce div.product form.cart .ld-personalization { margin: 0 !important; }
.woocommerce div.product form.cart .ld-personalization .ld-field:last-child { margin-bottom: 0 !important; }
.ld-personalization legend { font-family: var(--font-heading); font-size: var(--text-lg); padding-inline: var(--space-2); }

/* Help text under a field */
.ld-help { display: block; margin-top: var(--space-2); font-size: var(--text-xs); color: var(--color-text-muted); line-height: var(--line-height-normal); }

/* ===== File upload control (custom, replaces native input[type=file] chrome) ===== */
.ld-file { position: relative; }
/* Native input stays focusable/submittable but invisible — the .ld-file__drop label drives it. */
.ld-file__input { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); }
.ld-file__drop {
  display: flex; align-items: center; gap: var(--space-4);
  padding: var(--space-4); cursor: pointer;
  background: var(--color-bg-base);
  border: 1px dashed rgba(196, 104, 122, 0.45);
  border-radius: var(--radius-lg);
  transition: border-color var(--duration-normal) var(--ease-default), background var(--duration-normal) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default);
}
.ld-file__drop:hover { background: var(--color-bg-rose); border-color: var(--color-rose); }
.ld-file__icon {
  display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
  width: 40px; height: 40px; border-radius: var(--radius-full);
  border: 2px solid var(--color-accent); color: var(--color-accent);
  transition: transform var(--duration-normal) var(--ease-default);
}
.ld-file__icon svg { width: 20px; height: 20px; }
.ld-file__drop:hover .ld-file__icon { transform: translateY(-2px); }
.ld-file__body { display: flex; flex-direction: column; gap: var(--space-1); min-width: 0; }
.ld-file__cta {
  font-size: var(--text-sm); font-weight: var(--font-weight-semibold);
  color: var(--color-primary); letter-spacing: var(--letter-spacing-wide);
  transition: color var(--duration-normal) var(--ease-default);
}
.ld-file__drop:hover .ld-file__cta { color: var(--color-rose); }
.ld-file__name {
  font-size: var(--text-xs); color: var(--color-text-muted);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
/* Keyboard focus lands on the hidden input — mirror the ring onto the visible drop area. */
.ld-file__input:focus-visible + .ld-file__drop {
  border-color: var(--color-rose); border-style: solid;
  box-shadow: 0 0 0 3px rgba(196, 104, 122, 0.12);
}
/* Filled + drag states: solid rose frame on the soft rose surface. */
.ld-file.is-filled .ld-file__drop,
.ld-file.is-dragover .ld-file__drop { border-style: solid; border-color: var(--color-rose); background: var(--color-bg-rose); }
.ld-file.is-filled .ld-file__icon { border-color: var(--color-rose); color: var(--color-rose); }
.ld-file.is-filled .ld-file__name { color: var(--color-text-primary); font-weight: var(--font-weight-medium); }
.ld-file.is-dragover .ld-file__drop { box-shadow: 0 0 0 3px rgba(196, 104, 122, 0.12); }
/* Clear button — only shown once a file is picked. */
.ld-file__clear {
  position: absolute; top: 50%; right: var(--space-4); transform: translateY(-50%);
  display: inline-flex; align-items: center; justify-content: center;
  width: 28px; height: 28px; padding: 0; cursor: pointer;
  background: var(--color-bg-base); color: var(--color-text-secondary);
  border: 1px solid rgba(196, 104, 122, 0.32); border-radius: var(--radius-full);
  transition: background var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default);
}
.ld-file__clear svg { width: 14px; height: 14px; }
.ld-file__clear:hover { background: var(--color-accent); border-color: var(--color-accent); color: var(--color-text-inverted); }
.ld-file.is-filled .ld-file__drop { padding-right: calc(var(--space-4) * 2 + 28px); }

/* ===== InPost parcel locker picker (block checkout) ===== */
.ld-geo { margin-top: var(--space-4); }
.ld-geo__row {
  display: flex; align-items: center; gap: var(--space-4);
  padding: var(--space-4);
  background: var(--color-bg-base);
  border: 1px dashed rgba(196, 104, 122, 0.45);
  border-radius: var(--radius-lg);
  transition: border-color var(--duration-normal) var(--ease-default), background var(--duration-normal) var(--ease-default);
}
.ld-geo.is-selected .ld-geo__row { border-style: solid; border-color: var(--color-rose); background: var(--color-bg-rose); }
.ld-geo__icon {
  display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
  width: 40px; height: 40px; border-radius: var(--radius-full);
  border: 2px solid var(--color-accent); color: var(--color-accent);
}
.ld-geo__icon svg { width: 20px; height: 20px; }
.ld-geo.is-selected .ld-geo__icon { border-color: var(--color-rose); color: var(--color-rose); }
.ld-geo__body { display: flex; flex-direction: column; gap: var(--space-1); min-width: 0; flex: 1; }
.ld-geo__name { font-size: var(--text-sm); font-weight: var(--font-weight-semibold); color: var(--color-primary); }
.ld-geo__address { font-size: var(--text-xs); color: var(--color-text-muted); overflow: hidden; text-overflow: ellipsis; }
.ld-geo__btn { flex-shrink: 0; }

/* Geowidget modal */
.ld-geo-modal {
  position: fixed; inset: 0; z-index: 9999;
  display: flex; align-items: center; justify-content: center;
  padding: var(--space-4);
  background: var(--color-bg-overlay);
}
.ld-geo-modal__panel {
  display: flex; flex-direction: column;
  width: 100%; max-width: 900px; height: min(80vh, 700px);
  background: var(--color-bg-base);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-xl);
  overflow: hidden;
}
.ld-geo-modal__head {
  display: flex; align-items: center; justify-content: space-between; gap: var(--space-4);
  padding: var(--space-5) var(--space-6);
  border-bottom: 1px solid var(--color-border);
}
.ld-geo-modal__title { font-family: var(--font-heading); font-size: var(--text-lg); margin: 0; }
.ld-geo-modal__close {
  display: inline-flex; align-items: center; justify-content: center;
  width: 36px; height: 36px; flex-shrink: 0; padding: 0;
  font-size: var(--text-lg); line-height: 1; cursor: pointer;
  background: transparent; color: var(--color-text-secondary);
  border: 1px solid var(--color-border-strong); border-radius: var(--radius-full);
  transition: background var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default);
}
.ld-geo-modal__close:hover { background: var(--color-accent); border-color: var(--color-accent); color: var(--color-text-inverted); }
.ld-geo-modal__map { flex: 1; min-height: 0; }
.ld-geo-modal__map inpost-geowidget { display: block; width: 100%; height: 100%; }
.ld-geo-modal__loading, .ld-geo-modal__error { margin: 0; padding: var(--space-6); text-align: center; color: var(--color-text-muted); font-size: var(--text-sm); }
.ld-geo-modal__error { color: var(--color-error); }

@media (max-width: 576px) {
  .ld-geo__row { flex-wrap: wrap; }
  .ld-geo__btn { width: 100%; }
  .ld-geo-modal { padding: 0; }
  .ld-geo-modal__panel { max-width: none; height: 100%; border-radius: 0; }
}

/* ===== Notices ===== */
.ld-notice { padding: var(--space-4) var(--space-5); border-radius: var(--radius-md); margin-bottom: var(--space-5); border: 1px solid transparent; }
.ld-notice--info { background: var(--color-info-bg); color: var(--color-info); border-color: var(--color-info); }
.ld-notice--warning { background: var(--color-warning-bg); color: var(--color-warning); }

/* ===== WooCommerce — full-width reset ===== */
.ld-woo .woocommerce,
.ld-woo .woocommerce-page { width: 100% !important; max-width: none !important; box-sizing: border-box; }
.woocommerce-tabs .panel > *:not(table) { max-width: 700px; }
.woocommerce-tabs .panel h2 { max-width: 700px; }
.woocommerce-Reviews-title { font-size: var(--text-xl) !important; margin-bottom: var(--space-8) !important; }

/* Watercolor bg on shop page — tlo_009 blended from top, full width */
.ld-woo {
  position: relative;
  overflow: hidden;
}
.ld-woo::before {
  content: '';
  position: absolute;
  inset-inline: -10%;
  bottom: -10%;
  height: 70%;
  background: url('/wp-content/uploads/2026/06/Akwarelowe-tlo_009.png') center bottom / cover no-repeat;
  opacity: 0.2;
  mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.6) 40%, rgba(0,0,0,1) 100%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.6) 40%, rgba(0,0,0,1) 100%);
  pointer-events: none;
  z-index: 0;
}
.ld-woo > * { position: relative; z-index: 1; }

/* Shop layout: sidebar left + main right */
.ld-shop-layout { display: flex; align-items: flex-start; gap: var(--space-10); }
.ld-shop-sidebar { flex: 0 0 240px; position: sticky; top: calc(var(--header-h, 80px) + var(--space-6)); }
.ld-shop-main { flex: 1; min-width: 0; }
.ld-widget__title { font-family: var(--font-heading); font-size: var(--text-base); font-weight: var(--font-weight-bold); color: var(--color-primary); margin-bottom: var(--space-3); }

/* Shop category list with images */
.ld-shop-cats { margin-bottom: var(--space-8); }
.ld-shop-cats__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-1); }
.ld-shop-cats__link { display: flex; align-items: center; gap: var(--space-3); padding: 3px var(--space-4) 3px 3px; border-radius: var(--radius-full); text-decoration: none; transition: background 180ms ease; color: var(--color-text-secondary); font-size: var(--text-sm); font-weight: var(--font-weight-medium); }
.ld-shop-cats__link:hover { background: var(--color-bg-subtle); color: var(--color-primary); }
.ld-shop-cats__item.is-active .ld-shop-cats__link { background: var(--color-bg-subtle); color: var(--color-primary); font-weight: var(--font-weight-semibold); }
.ld-shop-cats__img-wrap { width: 36px; height: 36px; border-radius: var(--radius-full); border: 2px solid var(--color-accent); overflow: hidden; flex-shrink: 0; background: var(--color-bg-subtle); display: flex; align-items: center; justify-content: center; }
.ld-shop-cats__img-wrap img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* Przycisk „Przeglądaj wszystkie" — domyślnie ukryty (desktop / brak JS). JS pokazuje go na mobile gdy kategorie nie mieszczą się w 1 linii. */
.ld-shop-cats__toggle { display: none; }

/* Ikonka „siatka 2×2" (złota) przy pozycji „Przeglądaj wszystkie" w podmenu Sklep */
.ld-menu-browse-all > a::before {
  content: "";
  display: inline-block;
  width: 0.95em;
  height: 0.95em;
  margin-right: 0.5em;
  vertical-align: -0.12em;
  background-color: var(--color-accent);
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Crect%20x='3'%20y='3'%20width='8'%20height='8'%20rx='1.5'/%3E%3Crect%20x='13'%20y='3'%20width='8'%20height='8'%20rx='1.5'/%3E%3Crect%20x='3'%20y='13'%20width='8'%20height='8'%20rx='1.5'/%3E%3Crect%20x='13'%20y='13'%20width='8'%20height='8'%20rx='1.5'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Crect%20x='3'%20y='3'%20width='8'%20height='8'%20rx='1.5'/%3E%3Crect%20x='13'%20y='3'%20width='8'%20height='8'%20rx='1.5'/%3E%3Crect%20x='3'%20y='13'%20width='8'%20height='8'%20rx='1.5'/%3E%3Crect%20x='13'%20y='13'%20width='8'%20height='8'%20rx='1.5'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ── Sklep na mobile (≤768px): sidebar nad produktami; kategorie jako pasek chipów (wzorzec z Realizacji), zwijany do 1 linii ── */
@media (max-width: 768px) {
  .ld-shop-layout { flex-direction: column; gap: var(--space-6); }
  /* Sortowanie („Domyślne sortowanie") + licznik wyników wyśrodkowane pod paskiem kategorii — schludny układ mobilny */
  .ld-woo .woocommerce-result-count { float: none !important; width: 100%; text-align: center; }
  .ld-woo .woocommerce-ordering { float: none !important; width: 100%; display: flex; justify-content: center; }
  .ld-woo .woocommerce-ordering .ld-orderby { flex: 0 0 auto; width: fit-content; min-width: 240px; max-width: 100%; }
  .ld-shop-sidebar { position: static; top: auto; flex: 0 0 auto; width: 100%; }
  .ld-shop-cats { margin-bottom: var(--space-4); }

  .ld-shop-cats__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--space-4) var(--space-2);
    overflow: hidden;
    transition: max-height var(--duration-normal) var(--ease-default);
  }
  .ld-shop-cats__item { flex: 0 0 auto; }

  .ld-shop-cats__link {
    flex-direction: column;
    align-items: center;
    gap: var(--space-2);
    width: 100%;
    padding: 0;
    border-radius: 0;
    background: none;
    color: var(--color-text-secondary);
  }
  .ld-shop-cats__link:hover,
  .ld-shop-cats__item.is-active .ld-shop-cats__link { background: none; }

  .ld-shop-cats__img-wrap {
    width: 56px; height: 56px;
    border: 3px solid transparent;
    transition: border-color var(--duration-normal) var(--ease-default), transform var(--duration-normal) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default);
  }
  .ld-shop-cats__link:hover .ld-shop-cats__img-wrap { border-color: var(--color-rose); transform: translateY(-2px); box-shadow: 0 4px 12px rgba(196,104,122,0.25); }
  .ld-shop-cats__item.is-active .ld-shop-cats__img-wrap { border-color: var(--color-rose); box-shadow: 0 4px 12px rgba(196,104,122,0.3); }

  .ld-shop-cats__name {
    font-family: var(--font-primary);
    font-size: 0.65rem;
    font-weight: var(--font-weight-semibold);
    line-height: 1.3;
    text-align: center;
    max-width: 100%;
    color: var(--color-text-secondary);
  }
  .ld-shop-cats__link:hover .ld-shop-cats__name { color: var(--color-rose); }
  .ld-shop-cats__item.is-active .ld-shop-cats__name { color: var(--color-rose); font-weight: var(--font-weight-bold); }

  .ld-shop-cats__toggle.is-visible {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    width: fit-content;
    margin: var(--space-4) auto 0;
    padding: 8px var(--space-5);
    background: var(--color-bg-rose);
    border: 1px solid rgba(196,104,122,0.18);
    border-radius: var(--radius-full);
    font-family: var(--font-primary);
    font-size: var(--text-sm);
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-primary);
    cursor: pointer;
    transition: background var(--duration-normal) var(--ease-default), color var(--duration-normal) var(--ease-default);
  }
  .ld-shop-cats__toggle.is-visible:hover { background: var(--color-rose); color: var(--color-text-inverted); }
  .ld-shop-cats__toggle-chevron { transition: transform var(--duration-normal) var(--ease-default); }
  .ld-shop-cats__toggle[aria-expanded="true"] .ld-shop-cats__toggle-chevron { transform: rotate(180deg); }
}

/* Login page: col2-set flex override */
/* On cart: hide default top wrapper — notices are moved to .ld-cart-notices-slot via JS */
.woocommerce-cart .woocommerce-notices-wrapper { display: none !important; }
.woocommerce .col2-set,
.woocommerce-page .col2-set { display: flex !important; column-gap: 50px !important; row-gap: 0 !important; align-items: stretch !important; width: 100% !important; float: none !important; margin: 0 !important; }
.woocommerce .col2-set::before,
.woocommerce .col2-set::after,
.woocommerce-page .col2-set::before,
.woocommerce-page .col2-set::after { display: none !important; }
.woocommerce .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-1,
.woocommerce-page .col2-set .col-2 { float: none !important; width: auto !important; flex: 1 !important; min-width: 0 !important; margin: 0 !important; }

/* Account page: navigation + content flex override */
/* Kill WooCommerce clearfix pseudo-elements — in flex context they become unwanted flex items */
.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after { display: none !important; }
.woocommerce-account .woocommerce { display: flex !important; flex-wrap: nowrap !important; column-gap: 50px !important; row-gap: 0 !important; align-items: flex-start !important; width: 100% !important; }
.woocommerce-account .woocommerce-MyAccount-navigation { float: none !important; width: 220px !important; flex-shrink: 0 !important; }
.woocommerce-account .woocommerce-MyAccount-content { float: none !important; width: auto !important; flex: 1 !important; min-width: 0 !important; }

/* Moje konto na mobile (≤768px): Logowanie/Rejestracja i panel konta w pion — 2 kolumny się nie mieszczą */
@media (max-width: 768px) {
  .woocommerce .col2-set,
  .woocommerce-page .col2-set { flex-direction: column !important; column-gap: 0 !important; row-gap: var(--space-6) !important; }
  .woocommerce .col2-set .col-1,
  .woocommerce .col2-set .col-2,
  .woocommerce-page .col2-set .col-1,
  .woocommerce-page .col2-set .col-2 { flex: 1 1 auto !important; width: 100% !important; }
  .woocommerce-account .woocommerce { flex-direction: column !important; flex-wrap: wrap !important; column-gap: 0 !important; row-gap: var(--space-6) !important; align-items: stretch !important; }
  .woocommerce-account .woocommerce-MyAccount-navigation { width: 100% !important; }
  .woocommerce-account .woocommerce-MyAccount-content { width: 100% !important; }
}

/* WooCommerce login/register — różowy kontener na całą kolumnę (h2 + form) */
.woocommerce .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-1,
.woocommerce-page .col2-set .col-2 {
  background: var(--color-bg-rose) !important;
  border: 1px solid rgba(196,104,122,0.32) !important;
  border-radius: var(--radius-xl) !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
  padding: var(--space-8) !important;
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
}

/* Wszystkie formularze WooCommerce — spójne z formularzem kontaktowym */
.woocommerce-page form:not(.col2-set form):not(.woocommerce-cart-form):not(.woocommerce-checkout),
.woocommerce-account .woocommerce-MyAccount-content form {
  background: var(--color-bg-rose);
  border: 1px solid rgba(196,104,122,0.32);
  border-radius: var(--radius-xl);
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  padding: var(--space-8);
}
/* Block checkout — usuń padding-top który daje odstęp nad "Dane kontaktowe" */
.woocommerce-checkout .wp-block-woocommerce-checkout { padding-top: 0 !important; }

/* Block checkout forms — reset (nie mają klasy .woocommerce-checkout, więc wyższy selektor je łapał) */
.woocommerce-checkout .wp-block-woocommerce-checkout form {
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Wszystkie inputy WooCommerce — białe */
.woocommerce-page form input[type="text"],
.woocommerce-page form input[type="email"],
.woocommerce-page form input[type="password"],
.woocommerce-page form input[type="tel"],
.woocommerce-page form input[type="number"],
.woocommerce-page form textarea,
.woocommerce-page form select,
.woocommerce-account .woocommerce-MyAccount-content form input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content form input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content form input[type="password"],
.woocommerce-account .woocommerce-MyAccount-content form input[type="tel"],
.woocommerce-account .woocommerce-MyAccount-content form textarea,
.woocommerce-account .woocommerce-MyAccount-content form select { background: var(--color-bg-base) !important; border: 1px solid rgba(196,104,122,0.32) !important; border-radius: var(--input-radius) !important; }

/* Sortowanie — bez kontenera, sam custom dropdown */
.woocommerce-ordering { background: transparent !important; border: none !important; box-shadow: none !important; padding: 0 !important; margin: 0 0 var(--card-padding) !important; position: relative; }

.ld-orderby { position: relative; display: inline-block; width: 100%; }
.ld-orderby__trigger { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); width: 100%; background: var(--color-bg-base); border: 1.5px solid rgba(196,104,122,0.5); border-radius: var(--input-radius); box-shadow: var(--shadow-container); padding: var(--space-2) var(--space-4); font-size: var(--text-sm); color: var(--color-text-primary); font-family: var(--font-body); cursor: pointer; text-align: left; }
.ld-orderby__trigger:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; }
.ld-orderby__chevron { flex-shrink: 0; transition: transform 200ms ease; color: var(--color-text-secondary); }
.ld-orderby.is-open .ld-orderby__chevron { transform: rotate(180deg); }
.ld-orderby__list { position: absolute; top: calc(100% + 6px); left: 0; right: 0; background: var(--color-bg-base) !important; border: 1.5px solid rgba(196,104,122,0.5) !important; border-radius: var(--radius-lg) !important; box-shadow: var(--shadow-container) !important; list-style: none !important; margin: 0 !important; padding: var(--space-1) !important; z-index: 200; display: none; }
.ld-orderby.is-open .ld-orderby__list { display: block; }
.ld-orderby__option { padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); font-size: var(--text-sm); color: var(--color-text-primary); cursor: pointer; transition: background 150ms ease, color 150ms ease; user-select: none; -webkit-user-select: none; }
.ld-orderby__option:hover { background: rgba(196,104,122,0.1); color: var(--color-secondary); }
.ld-orderby__option:active { background: rgba(196,104,122,0.2) !important; color: var(--color-secondary) !important; }
.ld-orderby__option.is-selected { background: rgba(196,104,122,0.15); color: var(--color-secondary); font-weight: var(--font-weight-semibold); }
.ld-orderby__option::selection, .ld-orderby__option *::selection { background: transparent; }

/* Formularz logowania/rejestracji — transparentny bo container już ma tło */
.woocommerce-form-login,
.woocommerce-form-register { background: transparent !important; border: none !important; border-radius: 0 !important; box-shadow: none !important; padding: 0 !important; }
.woocommerce-form-login button[type="submit"],
.woocommerce-form-register button[type="submit"] { margin-top: 10px !important; }
.woocommerce-form-login { display: flex !important; flex-direction: column !important; flex: 1 !important; }
.ld-form-row-submit { display: flex !important; align-items: center !important; width: 100% !important; box-sizing: border-box !important; padding: 0 !important; margin: 0 !important; }
.ld-form-row-submit .woocommerce-form-login__submit { order: -1 !important; flex-shrink: 0 !important; margin-top: 0 !important; }
.ld-form-row-submit .woocommerce-form-login__rememberme { margin-left: auto !important; font-size: 14px !important; white-space: nowrap !important; display: inline-flex !important; align-items: center !important; gap: 6px !important; }
.ld-form-row-submit .woocommerce-form-login__rememberme input[type="checkbox"] { margin: 0 !important; vertical-align: middle !important; position: relative !important; top: 0 !important; }
/* "Nie pamiętasz hasła?" — osobny div poza formularzem, w różowym kontenerze */
.ld-login-lost-password { flex-grow: 1; width: 100%; display: flex; align-items: flex-end; justify-content: flex-end; }
.ld-login-lost-password a { font-size: var(--text-sm); color: var(--color-text-link); text-decoration: none; }
.ld-login-lost-password a:hover { color: var(--color-text-link-hover); text-decoration: underline; }
/* Ukryj stary .woocommerce-LostPassword jeśli pozostał w jakimś innym kontekście */
.woocommerce-form-login .woocommerce-LostPassword { display: none !important; }

/* Sekcja konto/logowanie padding 64px */
.woocommerce-page .ld-section,
.woocommerce-account .ld-section { padding-block: 60px !important; }

/* WooCommerce buttons — wariant primary (czarny), hover złoty */
.woocommerce .woocommerce-Button,
.woocommerce .woocommerce-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input[type="submit"],
.woocommerce-page a.button,
.woocommerce-page button.button,
.woocommerce-page input[type="submit"] {
  background: var(--color-primary) !important;
  color: #fff !important;
  border-color: var(--color-primary) !important;
  border-radius: var(--btn-radius) !important;
  font-size: var(--text-base) !important;
  font-weight: var(--font-weight-semibold) !important;
  padding: var(--space-3) var(--space-6) !important;
  transition: background var(--duration-btn) var(--ease-btn), border-color var(--duration-btn) var(--ease-btn) !important;
}
.woocommerce .woocommerce-Button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input[type="submit"]:hover,
.woocommerce-page a.button:hover,
.woocommerce-page button.button:hover,
.woocommerce-page input[type="submit"]:hover { background: var(--color-accent) !important; border-color: var(--color-accent) !important; color: #fff !important; }

/* WooCommerce buttons — wariant rose (różowy), hover złoty */
.woocommerce-cart .woocommerce-cart-form [name="update_cart"] {
  background: var(--color-rose) !important;
  border-color: var(--color-rose) !important;
  color: #fff !important;
  flex-shrink: 0;
}
.woocommerce-cart .woocommerce-cart-form [name="update_cart"]:hover {
  background: var(--color-accent) !important;
  border-color: var(--color-accent) !important;
}
.woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.woocommerce-MyAccount-navigation ul li { margin: 0; }
.woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 10px var(--space-5);
  border-radius: var(--btn-radius);
  font-size: var(--text-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary);
  background: var(--color-bg-rose);
  border: 1px solid rgba(196,104,122,0.18);
  text-decoration: none;
  transition: background var(--duration-normal), color var(--duration-normal), border-color var(--duration-normal);
}
.woocommerce-MyAccount-navigation ul li a:hover {
  background: var(--color-rose);
  color: #fff;
  border-color: var(--color-rose);
}
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--active a {
  background: #111;
  color: #fff;
  border-color: #111;
}
.woocommerce-MyAccount-navigation ul li:last-child a {
  background: #fff;
  color: var(--color-text-muted);
  border-color: var(--color-border);
}
.woocommerce-MyAccount-navigation ul li:last-child a:hover {
  background: var(--color-bg-subtle);
  color: var(--color-primary);
  border-color: var(--color-border-strong);
}

/* WooCommerce account dashboard — inline text links like ld-inline-link */
.woocommerce-MyAccount-content p a:not(.button):not(.woocommerce-Button) {
  color: var(--color-rose) !important;
  font-weight: var(--font-weight-semibold) !important;
  text-decoration: underline !important;
  text-decoration-color: currentColor !important;
  text-underline-offset: 4px !important;
  text-decoration-thickness: 1px !important;
  text-decoration-skip-ink: none !important;
  transition: color 220ms ease, text-underline-offset 220ms ease !important;
}
.woocommerce-MyAccount-content p a:not(.button):not(.woocommerce-Button):hover { color: var(--color-rose-hover) !important; text-underline-offset: 6px !important; }

/* WooCommerce account fieldset — remove native border, style legend as eyebrow */
.woocommerce-account fieldset,
.woocommerce-page fieldset { border: none !important; padding: 0 !important; margin: var(--space-10) 0 var(--space-6) !important; }
.woocommerce-account fieldset legend,
.woocommerce-page fieldset legend {
  font-family: var(--font-primary) !important;
  text-transform: uppercase !important;
  letter-spacing: var(--letter-spacing-widest) !important;
  font-size: var(--text-sm) !important;
  font-weight: var(--font-weight-semibold) !important;
  color: var(--color-accent) !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  margin-bottom: var(--space-4) !important;
  padding: 0 !important;
  float: none !important;
}
.woocommerce-account fieldset legend::after,
.woocommerce-page fieldset legend::after {
  content: '' !important;
  flex: 1 !important;
  height: 1.5px !important;
  background: currentColor !important;
  opacity: 0.55 !important;
  border-radius: 2px !important;
}

/* WooCommerce address section — smaller headings, left-aligned inline-link */
.woocommerce-Address-title h2 { font-size: var(--text-lg) !important; margin-bottom: var(--space-2); }
.woocommerce-Address-title { display: flex !important; flex-direction: column !important; align-items: flex-start !important; }
.woocommerce-Address-title a.edit {
  color: var(--color-rose) !important;
  font-size: var(--text-base) !important;
  font-weight: var(--font-weight-semibold) !important;
  text-decoration: underline !important;
  text-decoration-color: currentColor !important;
  text-underline-offset: 4px !important;
  text-decoration-thickness: 1px !important;
  text-decoration-skip-ink: none !important;
  transition: color 220ms ease, text-underline-offset 220ms ease !important;
  margin-bottom: var(--space-3) !important;
}
.woocommerce-Address-title a.edit:hover { color: var(--color-rose-hover) !important; text-underline-offset: 6px !important; }

/* WooCommerce info/message notices — rose accent instead of default blue */
.woocommerce-info,
.woocommerce-message { border-top-color: var(--color-rose) !important; }
.woocommerce-info::before,
.woocommerce-message::before { color: var(--color-rose) !important; }

/* ===== WooCommerce light alignment to tokens ===== */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce button.button.disabled, .woocommerce button.button.alt.disabled,
.woocommerce .single_add_to_cart_button {
  background: var(--color-primary) !important; color: #fff !important; border-radius: var(--btn-radius) !important;
  font-weight: var(--font-weight-semibold) !important; padding: var(--space-3) var(--space-6) !important;
  opacity: 1 !important;
}
.woocommerce .single_add_to_cart_button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover { background: var(--color-accent) !important; border-color: var(--color-accent) !important; color: #fff !important; }
.woocommerce span.onsale { background: var(--color-secondary); border-radius: 0 var(--radius-full) var(--radius-full) 0; font-size: var(--text-xs); font-weight: var(--font-weight-semibold); padding: var(--space-1) var(--card-padding) var(--space-1) var(--card-padding); min-height: unset; min-width: unset; line-height: 1.4; box-shadow: 0 2px 6px rgba(120,70,70,0.22); }
.woocommerce .star-rating span { color: var(--color-accent); }
.woocommerce ul.products li.product .price, .woocommerce div.product p.price { color: var(--color-primary); font-weight: var(--font-weight-semibold); }

/* Podpowiedź rozmiaru (uwaga 10) */
.ld-size-guide { margin: 0 0 var(--space-4); border: 1px solid var(--color-border-subtle); border-radius: var(--radius-md); background: var(--color-bg-rose); padding: var(--space-3) var(--space-4); }
.ld-size-guide__summary { cursor: pointer; font-weight: var(--font-weight-semibold); color: var(--color-primary); list-style: none; }
.ld-size-guide__summary::-webkit-details-marker { display: none; }
.ld-size-guide__summary::before { content: '＋'; color: var(--color-accent); margin-right: var(--space-2); font-weight: var(--font-weight-bold); }
.ld-size-guide[open] .ld-size-guide__summary::before { content: '－'; }
.ld-size-guide__list { list-style: none; margin: var(--space-3) 0 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.ld-size-guide__list li { font-size: var(--text-sm); color: var(--color-text-secondary); }
.ld-size-guide__help { margin: var(--space-3) 0 0; font-size: var(--text-sm); }

/* Wydruki: notka o zamówieniu indywidualnym pod ofertą cenową */
.ld-edible-custom-note { display: flex; gap: var(--space-3); align-items: flex-start; margin-top: var(--space-4); padding: var(--space-3) var(--space-4); background: var(--color-bg-rose); border: 1px solid var(--color-border-subtle); border-radius: var(--radius-md); font-size: var(--text-sm); color: var(--color-text-secondary); }
.ld-edible-custom-note__icon { color: var(--color-accent); flex-shrink: 0; font-size: var(--text-md); line-height: 1.4; }
.ld-edible-custom-note a { color: var(--color-text-link); font-weight: var(--font-weight-semibold); }

/* Blok „Co otrzymasz?" (uwaga 6) */
.ld-product-benefits { margin: 0 0 var(--space-4); }
.ld-product-benefits__title { font-family: var(--font-heading); font-size: var(--text-md); color: var(--color-primary); margin: 0 0 var(--space-3); }
.ld-product-benefits__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.ld-product-benefits__list li { position: relative; padding-left: var(--space-6); font-size: var(--text-sm); color: var(--color-text-secondary); }
.ld-product-benefits__list li::before { content: '✓'; position: absolute; left: 0; top: 0; color: var(--color-accent); font-weight: var(--font-weight-bold); }

/* Sticky pasek zakupowy na mobile (uwaga 11) — tylko strona produktu */
.ld-sticky-buy { display: none; }
@media (max-width: 768px) {
  body.single-product .ld-sticky-buy { display: flex; align-items: center; gap: var(--space-3); position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; background: var(--color-bg-base); border-top: 1px solid var(--color-border); box-shadow: 0 -2px 10px rgba(0,0,0,0.08); padding: var(--space-3) var(--space-4); padding-bottom: calc(var(--space-3) + env(safe-area-inset-bottom)); transition: transform var(--duration-normal) var(--ease-out); }
  .ld-sticky-buy.is-hidden { transform: translateY(130%); }
  .ld-sticky-buy__price { font-weight: var(--font-weight-bold); color: var(--color-primary); font-size: var(--text-md); white-space: nowrap; }
  .ld-sticky-buy__from { font-weight: var(--font-weight-regular); color: var(--color-text-secondary); font-size: var(--text-sm); }
  .ld-sticky-buy__btn { margin-left: auto; flex-shrink: 0; }
  body.single-product { padding-bottom: 76px; }
}

/* Dolny pasek mobilny: Sklep | WhatsApp | Koszyk */
.ld-mobilebar { display: none; }
@media (max-width: 768px) {
  .ld-mobilebar { display: grid; grid-template-columns: repeat(3, 1fr); position: fixed; left: 0; right: 0; bottom: 0; z-index: 85; background: var(--color-bg-base); border-top: 1px solid var(--color-border); box-shadow: 0 -2px 10px rgba(0,0,0,0.06); padding-bottom: env(safe-area-inset-bottom); }
  .ld-mobilebar__item { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; padding: var(--space-2) 0; background: none; border: none; cursor: pointer; color: var(--color-text-primary); text-decoration: none; font-size: var(--text-xs); position: relative; }
  .ld-mobilebar__item svg { width: 22px; height: 22px; }
  .ld-mobilebar__count { position: absolute; top: 2px; left: calc(50% + 4px); background: var(--color-rose); color: #fff; font-size: 10px; line-height: 1; min-width: 15px; height: 15px; border-radius: var(--radius-full); display: flex; align-items: center; justify-content: center; padding: 0 3px; }
  body { padding-bottom: 64px; }
  body.single-product .ld-mobilebar { display: none; }
  /* Koszyk jest w dolnym pasku → w headerze zbędny na mobile */
  .ld-header__icon--cart { display: none; }
}

/* Bestsellery na stronie głównej (uwaga 7) — siatka kart produktów */
.ld-bestsellers-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-6); list-style: none; margin: var(--space-10) 0 0; padding: 0; }
.ld-bestsellers-grid > li.product { width: auto !important; margin: 0 !important; float: none !important; }
@media (max-width: 992px) { .ld-bestsellers-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 576px) { .ld-bestsellers-grid { grid-template-columns: 1fr; } }
/* „Jak zamówić?" — numerki kroków w złotym okręgu (reużyty .ld-feature) */
.ld-steps .ld-feature__icon { font-family: var(--font-heading); font-weight: var(--font-weight-bold); }

/* ── Single product page — two-column layout ────────────────── */
/* Mniejszy górny odstęp sekcji produktu — TYLKO mobile; .ld-page-head daje już separację (uwaga usera) */
@media (max-width: 768px) { body.single-product .ld-section.ld-woo { padding-block-start: var(--space-8) !important; } }
.woocommerce div.product { display: grid !important; grid-template-columns: 1fr 1fr; gap: 40px; align-items: start; }
.woocommerce div.product div.images { grid-column: 1; grid-row: 1; min-width: 0; width: 100%; }
.woocommerce div.product div.summary { grid-column: 2; grid-row: 1; min-width: 0; width: 100%; }
.woocommerce div.product div.summary > * { width: 100%; box-sizing: border-box; }
/* Elements below the two columns span full width */
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product #reviews,
.woocommerce div.product .related,
.woocommerce div.product .upsells { grid-column: 1 / -1; }
/* Mobilny nagłówek produktu (tytuł+cena nad zdjęciem) — tylko gdy kolumny schodzą w pion */
.ld-mobile-product-head { display: none; }
.ld-mobile-product-head__title { font-family: var(--font-heading); font-size: var(--text-2xl); line-height: var(--line-height-tight); color: var(--color-primary); margin: 0 0 var(--space-2); }
.ld-mobile-product-head__price { font-size: var(--text-xl); font-weight: var(--font-weight-bold); color: var(--color-accent); }
@media (max-width: 768px) {
  .woocommerce div.product { grid-template-columns: 1fr !important; gap: var(--space-6) !important; }
  .woocommerce div.product div.images,
  .woocommerce div.product div.summary { grid-column: 1; }
  /* Kolejność na mobile: tytuł+cena → zdjęcie → reszta podsumowania */
  .ld-mobile-product-head { display: block; grid-column: 1; grid-row: 1; }
  .woocommerce div.product div.images { grid-row: 2 !important; }
  .woocommerce div.product div.summary { grid-row: 3; }
  .woocommerce div.product .entry-summary > .product_title,
  .woocommerce div.product .entry-summary > .price { display: none !important; }
}
.woocommerce div.product .product_title { font-size: var(--text-2xl) !important; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--color-accent) !important; font-size: var(--text-xl) !important; font-weight: var(--font-weight-bold) !important; }
.woocommerce div.product .product_meta { font-size: 14px !important; margin-top: 6px !important; }
.woocommerce div.product .product_meta a { color: var(--color-secondary); }
.woocommerce div.product form.cart { margin-top: 24px !important; margin-bottom: var(--space-2) !important; padding: 12px 24px !important; padding-top: 12px !important; padding-bottom: 12px !important; padding-left: 24px !important; padding-right: 24px !important; }
.woocommerce div.product form.cart.cart { display: flex !important; flex-direction: column !important; gap: var(--card-padding) !important; align-items: stretch !important; }
.woocommerce div.product form.cart .single_variation_wrap { display: flex !important; flex-direction: column !important; gap: var(--card-padding) !important; margin: 0 !important; padding: 0 !important; }
.woocommerce div.product form.cart .woocommerce-variation { margin: 0 !important; padding: 0 !important; }
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart { margin: 0 !important; padding: 0 !important; }
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: var(--card-padding) !important; margin: 0 !important; padding: 0 !important; }
.woocommerce div.product form.cart .single_add_to_cart_button { white-space: nowrap !important; }
.woocommerce div.product form.cart .quantity { margin: 0 !important; flex-shrink: 0; }
.woocommerce div.product form.cart .woocommerce-variation-description,
.woocommerce div.product form.cart .woocommerce-variation-price { margin: 0 !important; }
.woocommerce div.product form.cart .variations { display: flex !important; flex-direction: column !important; gap: var(--space-2) !important; border: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; border-spacing: 0 !important; }
.woocommerce div.product form.cart .variations tbody { display: contents !important; }
.woocommerce div.product form.cart .variations tr { display: flex !important; align-items: center !important; gap: var(--card-padding) !important; }
.woocommerce div.product form.cart .variations td { vertical-align: middle !important; display: flex !important; align-items: center !important; }
.woocommerce div.product form.cart .variations td.label { text-align: left !important; padding: 0 !important; white-space: nowrap; width: auto !important; }
.woocommerce div.product form.cart .variations td.value { padding: 0 !important; flex: 1; }
.woocommerce div.product form.cart .variations td.label label { font-weight: var(--font-weight-bold) !important; margin: 0 !important; }
.woocommerce div.product form.cart .reset_variations { display: none !important; }

/* ── Pik do wbicia add-on ───────────────────────────────────────────────────── */
.luna-pik-addon { margin-bottom: var(--space-4); }
.luna-pik-addon__label { display: inline-flex; align-items: center; gap: var(--space-3); cursor: pointer; user-select: none; }
.luna-pik-addon__checkbox-wrap { position: relative; flex-shrink: 0; }
.luna-pik-addon__input { position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none; }
.luna-pik-addon__box { display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 4px; border: 2px solid var(--color-border-strong); background: #fff; transition: border-color 180ms ease, background 180ms ease; }
.luna-pik-addon__box::after { content: ''; display: block; width: 5px; height: 9px; border: 2px solid #fff; border-top: none; border-left: none; transform: rotate(45deg) translateY(-1px); opacity: 0; transition: opacity 150ms ease; }
.luna-pik-addon__input:checked ~ .luna-pik-addon__box { background: var(--color-rose); border-color: var(--color-rose); }
.luna-pik-addon__input:checked ~ .luna-pik-addon__box::after { opacity: 1; }
.luna-pik-addon__input:focus-visible ~ .luna-pik-addon__box { outline: 2px solid var(--color-rose); outline-offset: 2px; }
.luna-pik-addon__text { font-size: var(--text-sm); color: var(--color-text-primary); line-height: 1.3; }
.luna-pik-addon__price { margin-left: var(--space-1); font-weight: var(--font-weight-semibold); color: var(--color-rose); }

/* ── Color swatches (pa_kolor) ──────────────────────────────────────────────── */
.luna-swatches { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; margin-bottom: var(--space-4); }
.luna-swatches__label { font-weight: var(--font-weight-semibold); font-size: var(--text-sm); color: var(--color-text-primary); margin-right: var(--space-1); }
.luna-swatch { display: inline-flex; align-items: center; gap: var(--space-2); padding: var(--space-1) var(--space-3); border: 2px solid var(--color-border); border-radius: var(--radius-full); cursor: pointer; font-size: var(--text-sm); font-weight: var(--font-weight-semibold); background: #fff; color: var(--color-text-primary); transition: border-color 180ms ease, box-shadow 180ms ease; user-select: none; }
.luna-swatch:hover { border-color: var(--color-rose); }
.luna-swatch.is-active { border-color: var(--color-rose); box-shadow: 0 0 0 2px rgba(196,104,122,0.25); }
.luna-swatch__dot { width: 16px; height: 16px; border-radius: 50%; flex-shrink: 0; border: 1px solid rgba(0,0,0,0.12); }
.luna-swatch__dot--srebrny { background: linear-gradient(135deg, #f0f0f0 0%, #c0c0c0 45%, #e8e8e8 55%, #a0a0a0 100%); }
.luna-swatch__dot--zloty { background: linear-gradient(135deg, #f7e87a 0%, #d4af37 45%, #f0d060 55%, #b8860b 100%); }
/* Ukryj natywne selecty wariantów (kolor + rozmiar) — zastępują je spójne dropdowny .luna-colorsel */
.variations select[name="attribute_pa_kolor"] { display: none !important; }
.variations tr:has(select[name="attribute_pa_kolor"]) td.label { display: none; }
.variations tr:has(select[name="attribute_pa_kolor"]) td.value { padding-left: 0 !important; }
.woocommerce div.product form.cart .variations tr:has(select) { display: none !important; }

/* ── Color DROPDOWN (pa_kolor) — kropka koloru + nazwa (wg prośby klientki) ──── */
.luna-colorsel { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; margin-bottom: var(--space-4); }
.luna-colorsel__label { font-weight: var(--font-weight-semibold); font-size: var(--text-sm); color: var(--color-text-primary); min-width: 84px; }
.luna-colorsel__field { position: relative; flex: 1 1 200px; min-width: 180px; max-width: 320px; }
.luna-colorsel__trigger { display: flex; align-items: center; gap: var(--space-2); width: 100%; height: var(--input-height); background: var(--color-bg-base); border: 1.5px solid var(--color-border-strong); border-radius: var(--input-radius); padding: 0 var(--space-3); font-size: var(--text-base); font-family: var(--font-primary); color: var(--color-text-primary); cursor: pointer; text-align: left; transition: border-color 180ms ease, box-shadow 180ms ease; }
.luna-colorsel__trigger:hover { border-color: var(--color-rose); }
.luna-colorsel.is-open .luna-colorsel__trigger { border-color: var(--color-primary); box-shadow: 0 0 0 3px rgba(196,104,122,0.12); }
.luna-colorsel__current { flex: 1; }
.luna-colorsel__chev { display: inline-flex; align-items: center; color: var(--color-text-muted); transition: transform 200ms var(--ease-default); }
.luna-colorsel.is-open .luna-colorsel__chev { transform: rotate(180deg); }
.luna-colorsel__list { position: absolute; top: calc(100% + 6px); left: 0; right: 0; background: var(--color-bg-base); border: 1.5px solid var(--color-border-strong); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); list-style: none; margin: 0; padding: var(--space-1); z-index: 30; display: none; max-height: 280px; overflow-y: auto; }
.luna-colorsel.is-open .luna-colorsel__list { display: block; }
.luna-colorsel__opt { display: flex; align-items: center; gap: var(--space-2); padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); cursor: pointer; font-size: var(--text-sm); color: var(--color-text-primary); }
.luna-colorsel__opt:hover { background: var(--color-bg-rose); }
.luna-colorsel__opt.is-selected { background: var(--color-bg-rose); font-weight: var(--font-weight-semibold); }
.luna-colorsel__trigdot { width: 18px; height: 18px; }

/* ── Product gallery hover ──────────────────────────────────────────────────── */
.woocommerce-product-gallery__image { overflow: hidden; }
.woocommerce-product-gallery__image img { transition: opacity 250ms ease; }
.woocommerce-product-gallery__image.luna-gallery-swapping img { opacity: 0.85; }

/* ── Luna product gallery (single product page) ─────────────────────────────── */
.luna-pgallery { width: 100%; }
.luna-pgallery__main-wrap { position: relative; border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-md); aspect-ratio: 4 / 5; }
.luna-pgallery__main-link { display: block; position: relative; height: 100%; }
.luna-pgallery__main-img { width: 100%; height: 100%; display: block; object-fit: cover; transition: opacity 200ms ease; }
.luna-pgallery__zoom-hint { position: absolute; bottom: 12px; right: 12px; width: 36px; height: 36px; border-radius: 50%; background: rgba(255,255,255,0.82); backdrop-filter: blur(4px); display: flex; align-items: center; justify-content: center; color: var(--color-text-primary); opacity: 0; transition: opacity 200ms ease; pointer-events: none; }
.luna-pgallery__main-link:hover .luna-pgallery__zoom-hint { opacity: 1; }

.luna-pgallery__thumbs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 20px; }
.luna-pgallery__thumb { display: block; padding: 0; border: 2px solid transparent; border-radius: var(--radius-lg); overflow: hidden; cursor: pointer; background: none; aspect-ratio: 4 / 5; transition: border-color 180ms ease; }
.luna-pgallery__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; pointer-events: none; }
.luna-pgallery__thumb.is-active { border-color: var(--color-rose); }
.luna-pgallery__thumb:hover:not(.is-active) { border-color: rgba(196,104,122,0.4); }

/* ── Product cards — shop loop ──────────────────────────────── */
.woocommerce ul.products,
.woocommerce-page ul.products { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: var(--space-6) !important; list-style: none !important; padding: 0 !important; margin: 0 !important; justify-content: start !important; align-items: stretch !important; }
/* kill WooCommerce clearfix pseudo-elements — they become ghost grid items */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after { display: none !important; content: none !important; }
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product { width: 100% !important; float: none !important; margin: 0 !important; clear: none !important; flex: none !important; display: flex !important; flex-direction: column !important; }
.woocommerce ul.products li.product .ld-prod-card,
.woocommerce-page ul.products li.product .ld-prod-card { flex: 1 !important; }
@media (max-width: 768px) { .woocommerce ul.products, .woocommerce-page ul.products { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 480px) { .woocommerce ul.products, .woocommerce-page ul.products { grid-template-columns: 1fr !important; } }

.ld-prod-card {
  position: relative;
  background: #fff;
  border-radius: var(--radius-xl);
  border: 1px solid rgba(196,104,122,0.25);
  box-shadow: var(--shadow-container);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: box-shadow var(--duration-normal) var(--ease-default), transform var(--duration-normal) var(--ease-default);
}
.ld-prod-card:hover { box-shadow: 0 2px 10px rgba(196,104,122,0.35); transform: translateY(-2px); }

/* stretched invisible link — makes whole card clickable to product detail */
.ld-prod-card__link {
  position: absolute;
  inset: 0;
  z-index: 1;
}

/* image area — top half */
.ld-prod-card__img {
  display: grid;
  position: relative;
  background: var(--color-bg-subtle);
  overflow: hidden;
  border-radius: var(--radius-lg) var(--radius-lg) 0 0;
}
.ld-prod-card__thumb,
.ld-prod-card__hover-img {
  grid-area: 1 / 1;
  display: block;
  width: 100%;
  height: auto;
  transition: opacity var(--duration-normal) var(--ease-default);
}
.ld-prod-card__hover-img {
  opacity: 0;
  pointer-events: none;
}
.ld-prod-card:hover .ld-prod-card__thumb { opacity: 0; }
.ld-prod-card:hover .ld-prod-card__hover-img { opacity: 1; }

/* badges positioned over image */
.ld-prod-card__badges {
  position: absolute;
  top: var(--card-padding);
  left: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.ld-prod-card__badges span.onsale,
.ld-prod-card__badges .ld-badge {
  position: static !important;
  margin: 0 !important;
  top: auto !important;
  left: auto !important;
}

/* body — bottom half */
.ld-prod-card__body {
  padding: var(--card-padding);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--space-2);
  flex: 1;
}

.ld-prod-card__name-link { text-decoration: none; position: relative; z-index: 2; }
.ld-prod-card__name {
  font-size: var(--text-lg);
  font-weight: var(--font-weight-bold);
  font-family: var(--font-heading);
  line-height: var(--line-height-tight);
  color: var(--color-text-primary);
  padding: 0 !important;
  margin: 0 0 var(--space-2);
  transition: color 450ms ease-in-out;
}
.ld-prod-card:hover .ld-prod-card__name { color: var(--color-rose); }

.ld-prod-card__price .price { font-size: var(--text-md); font-weight: var(--font-weight-semibold); color: var(--color-primary); }
.ld-prod-card__price-from { font-size: var(--text-sm); font-weight: var(--font-weight-normal); color: var(--color-text-muted); }

/* CTA — add-to-cart button, above stretched link */
.ld-prod-card__cta {
  margin-top: auto;
  padding-top: var(--space-3);
  position: relative;
  z-index: 2;
}
.ld-prod-card__cta .button,
.ld-prod-card__cta a.button {
  display: block;
  width: 100%;
  text-align: center;
  background: var(--color-primary);
  color: #fff;
  border-radius: var(--btn-radius);
  font-weight: var(--font-weight-semibold);
  font-size: var(--text-sm);
  padding: var(--space-3) var(--space-4);
  transition: background var(--duration-btn) var(--ease-btn), transform var(--duration-btn) var(--ease-btn);
  border: none;
  cursor: pointer;
  text-decoration: none;
}
.ld-prod-card__cta .button:hover,
.ld-prod-card__cta a.button:hover { background: var(--color-accent); transform: none; }

/* ── Realizacje teaser ───────────────────────────────────────── */
.ld-section--realizacje { position: relative; }
.ld-section--realizacje::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 55%; background: url('/wp-content/uploads/2026/06/Akwarelowe-tlo_008.png') center top / cover no-repeat; opacity: 0.5; z-index: 0; pointer-events: none; -webkit-mask-image: linear-gradient(to bottom, #000 0%, transparent 80%); mask-image: linear-gradient(to bottom, #000 0%, transparent 80%); }
.ld-section--realizacje > .ld-container { position: relative; z-index: 1; }
.ld-section--realizacje::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 120px; background: linear-gradient(to bottom, transparent, var(--color-bg-subtle)); pointer-events: none; z-index: 2; }
/* Odstęp między blokiem „Dwa sposoby" a „Realizacje" w scalonej sekcji */
.ld-realizacje-inner { margin-top: var(--space-16); }
.ld-realizacje-split { display: grid; grid-template-columns: 1fr 1fr; column-gap: 50px; align-items: center; }
.ld-realizacje-slider { order: 1; position: relative; overflow: hidden; border-radius: var(--radius-xl); box-shadow: 0 2px 6px rgba(120,70,70,0.22); }
.ld-realizacje-slider__track { display: flex; will-change: transform; transition: transform 800ms cubic-bezier(0.77, 0, 0.175, 1); }
.ld-realizacje-slider__slide { min-width: 100%; aspect-ratio: 1 / 1; overflow: hidden; }
.ld-realizacje-slider__slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ld-realizacje-text { order: 2; display: flex; flex-direction: column; gap: var(--space-5); }
.ld-realizacje-text h2 { margin-bottom: 0; }

/* ── UGC invite section ──────────────────────────────────────── */
.ld-section--ugc { background: var(--color-bg-base); }
.ld-ugc-box { position: relative; background: var(--color-bg-rose); border: 1px solid rgba(196,104,122,0.32); border-radius: var(--radius-xl); padding: var(--space-12) var(--space-10); overflow: hidden; box-shadow: 0 4px 12px rgba(0,0,0,0.12); }
.ld-ugc-box::before,
.ld-ugc-box::after { content: ''; position: absolute; top: 50%; width: 340px; height: 420px; background: url('/wp-content/uploads/2026/06/Akwarelowa-plama_centrum_AdobeStock_566498531.png') center / contain no-repeat; opacity: 0.35; pointer-events: none; }
.ld-ugc-box::before { left: -120px; transform: translateY(-50%) rotate(-15deg); }
.ld-ugc-box::after { right: -120px; transform: translateY(-50%) rotate(15deg) scaleX(-1); }
.ld-ugc-split { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 2fr; column-gap: 50px; align-items: center; }
.ld-ugc-content { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.ld-ugc-content h2 { margin-bottom: 0; }
.ld-ugc-icon { width: 56px; height: 56px; border-radius: var(--radius-full); border: 2px solid var(--color-accent); background: transparent; color: var(--color-accent); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.ld-ugc-desc { font-size: var(--text-md); color: var(--color-text-secondary); line-height: var(--line-height-relaxed); margin: 0; }
.ld-ugc-photos { display: grid; grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(2, 1fr); gap: var(--space-3); }
.ld-ugc-photo { border-radius: var(--radius-md); overflow: hidden; box-shadow: var(--shadow-sm); aspect-ratio: 1 / 1; transform: rotate(var(--ugc-rot, 0deg)); transition: transform var(--duration-normal) var(--ease-spring), box-shadow var(--duration-normal) var(--ease-default); }
.ld-ugc-photo:hover { transform: rotate(0deg) scale(1.05); box-shadow: var(--shadow-md); z-index: 2; position: relative; }
.ld-ugc-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 992px) {
  .ld-ugc-box { padding: var(--space-10) var(--space-8); }
  .ld-ugc-split { grid-template-columns: 1fr; gap: var(--space-8); }
  .ld-ugc-photos { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 576px) {
  .ld-ugc-box { padding: var(--space-8) var(--space-6); }
  .ld-ugc-photos { grid-template-columns: repeat(4, 1fr); gap: var(--space-2); }
}

/* ── Search suggestions autocomplete ────────────────────────── */
.ld-search-bar__field-wrap { position: relative; flex: 1; }
.ld-search-bar__form { flex: 1; }
.ld-search-suggestions { position: absolute; top: calc(100% + 6px); left: 0; right: 0; background: #fff; border-radius: var(--radius-xl); box-shadow: 0 4px 16px rgba(120,70,70,0.13); overflow: hidden; z-index: 10; }
.ld-search-suggestions[hidden] { display: none; }
.ld-suggest-item { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-5); text-decoration: none; color: var(--color-text-primary); transition: background 200ms ease; border-bottom: 1px solid var(--color-border); }
.ld-suggest-item:last-child { border-bottom: none; }
.ld-suggest-item:hover, .ld-suggest-item:focus { background: var(--color-bg-surface); outline: none; }
.ld-suggest-item__badge { font-size: 10px; font-weight: var(--font-weight-semibold); text-transform: uppercase; letter-spacing: var(--letter-spacing-wide); color: #fff; background: var(--color-accent); border-radius: var(--radius-full); padding: 2px 8px; white-space: nowrap; flex-shrink: 0; }
.ld-suggest-item__badge--product { background: var(--color-rose); }
.ld-suggest-item__label { font-size: var(--text-sm); font-weight: var(--font-weight-semibold); }

/* ── Search bar (dropdown from header) ──────────────────────── */
.ld-search-bar { position: fixed; top: calc(var(--notice-height) + var(--topbar-height)); left: 0; right: 0; z-index: 99; clip-path: inset(0 0 100% 0); transition: clip-path 300ms var(--ease-default); pointer-events: none; padding-bottom: 8px; }
.ld-search-bar[data-open="true"] { clip-path: inset(0 0 -400px 0); pointer-events: auto; }
.ld-search-bar__inner { max-width: var(--container-max); margin: 0 auto; padding: var(--space-5) var(--space-6); background: #fff; border: 1px solid rgba(196,104,122,0.15); border-top: none; border-radius: 0 0 var(--radius-xl) var(--radius-xl); box-shadow: 0 2px 6px rgba(0,0,0,0.10); display: flex; gap: var(--space-3); align-items: center; }
.ld-search-bar__form { flex: 1; }
.ld-search-bar__field { display: flex; align-items: center; height: var(--input-height); border: 1.5px solid var(--color-border-strong); border-radius: var(--radius-full); overflow: hidden; background: #fff; transition: border-color 200ms ease; }
.ld-search-bar__field:focus-within { border-color: var(--color-primary); }
.ld-search-bar__input { flex: 1; min-width: 0; height: 100%; padding: 0 var(--space-5); border: none !important; box-shadow: none !important; border-radius: 0; background: transparent; font-size: var(--text-base); font-family: var(--font-primary); color: var(--color-text-primary); outline: none; -webkit-appearance: none; appearance: none; }
.ld-search-bar__input::-webkit-search-cancel-button,
.ld-search-bar__input::-webkit-search-decoration,
.ld-search-bar__input::-webkit-search-results-button,
.ld-search-bar__input::-webkit-search-results-decoration { -webkit-appearance: none; display: none; }
.ld-search-bar__submit { height: 100%; padding: 0 var(--space-6); background: var(--color-primary); color: #fff; border: none; border-radius: 0; font-family: var(--font-primary); font-weight: var(--font-weight-semibold); font-size: var(--text-sm); cursor: pointer; transition: background 300ms ease; white-space: nowrap; flex-shrink: 0; }
.ld-search-bar__submit:hover { background: var(--color-accent); }
.ld-search-bar__close { background: none; border: none; cursor: pointer; color: var(--color-text-muted); padding: var(--space-2); display: flex; align-items: center; justify-content: center; border-radius: var(--radius-sm); transition: color 200ms ease; flex-shrink: 0; }
.ld-search-bar__close:hover { color: var(--color-text-primary); }

/* ── Category cards (Wybierz swoją uroczystość) ──────────────── */
.ld-cat-grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: var(--space-6); row-gap: var(--space-6); margin-top: var(--space-10); }
.ld-cat-outer { padding-top: 40px; display: flex; flex-direction: column; }
.ld-cat-card { flex: 1; background: #fff; box-shadow: 0 2px 6px rgba(0,0,0,0.10); border-radius: var(--radius-xl); padding: calc(40px + var(--space-5)) var(--space-5) var(--space-6); text-align: center; position: relative; text-decoration: none; transition: box-shadow var(--duration-btn) var(--ease-btn), transform var(--duration-btn) var(--ease-btn); }
.ld-cat-card:hover { box-shadow: 0 2px 10px rgba(196,104,122,0.35); transform: translateY(-2px); }
.ld-cat-card__icon { position: absolute; top: -40px; left: 50%; transform: translateX(-50%); width: 80px; height: 80px; border-radius: var(--radius-full); overflow: hidden; background: var(--color-bg-subtle); border: 3px solid #fff; box-shadow: 0 2px 6px rgba(0,0,0,0.10); flex-shrink: 0; transition: transform var(--duration-btn) var(--ease-btn), box-shadow var(--duration-btn) var(--ease-btn); }
.ld-cat-card:hover .ld-cat-card__icon { transform: translateX(-50%) scale(1.08); box-shadow: 0 2px 10px rgba(196,104,122,0.45); }
.ld-cat-card__img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ld-cat-card__name { font-family: var(--font-heading); font-size: var(--text-base); font-weight: var(--font-weight-semibold); color: var(--color-text-primary); display: block; }

/* ===== Responsive ===== */
/* Opinie: mniej kafelków na węższych ekranach → niższe kafelki; nagłówek (nazwa+gwiazdki) nie wystaje poza kafelek */
@media (max-width: 1200px) {
  .ld-review-card { flex: 0 0 calc((100% - 2 * var(--space-4)) / 3); }
  .ld-review-card__meta { min-width: 0; }
}
@media (max-width: 992px) {
  .ld-hero__inner { grid-template-columns: 1fr; padding-block-start: calc(var(--topbar-height) + var(--space-6) + var(--notice-height)); padding-block-end: var(--space-16); }
  .ld-hero__content { max-width: 100%; text-align: center; }
  .ld-hero__content .ld-eyebrow { justify-content: center; }
  .ld-hero__content .ld-eyebrow::before { content: ''; flex: 1; height: 1.5px; background: currentColor; opacity: 0.55; border-radius: 2px; }
  .ld-hero__actions { justify-content: center; flex-direction: column; align-items: center; }
  .ld-hero__actions .ld-btn { width: 100%; max-width: 320px; text-align: center; }
  .ld-hero::after { background: linear-gradient(to bottom, rgba(250,246,248,0) 0%, rgba(250,246,248,1) 70%); }
  .ld-review-card { flex: 0 0 calc((100% - var(--space-4)) / 2); }
  .ld-reviews-badges { grid-template-columns: repeat(2, 1fr); }
  .ld-reviews-cta { flex-wrap: wrap; }
  .ld-modal__box { padding: var(--space-6); }
  .ld-hero__inner { width: 500px; max-width: 100%; margin-inline: auto; gap: var(--space-6); padding-block-end: var(--space-6); }
  /* Hero pionowy: slider staje się pełnym tłem sekcji (rotacja + tag „hero-slider" bez zmian → reaguje na podmianę zdjęć); treść na szklanej karcie (glassmorphism) */
  .ld-hero__inner { position: relative; min-height: 70vh; align-content: center; }
  .ld-hero__art--slider {
    position: absolute;
    top: 0; bottom: 0; left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    z-index: 1;
    aspect-ratio: auto;
    border-radius: 0;
  }
  .ld-hero__art--slider .ld-fade-slider,
  .ld-hero__art--slider .ld-fade-slider__slide { border-radius: 0; }
  .ld-hero__art--slider::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.95) 0, rgba(255, 255, 255, 0.6) calc(var(--notice-height) + var(--topbar-height)), rgba(255, 255, 255, 0) calc(var(--notice-height) + var(--topbar-height) + 140px));
    pointer-events: none;
  }
  .ld-hero__content {
    position: relative;
    z-index: 2;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: var(--radius-2xl);
    box-shadow: var(--shadow-lg);
    padding: var(--space-8) var(--space-6);
  }
  /* Delikatna poświata pod tekstem — czytelność mimo mocno prześwitującego tła */
  .ld-hero__content h1,
  .ld-hero__content .ld-lead,
  .ld-hero__content .ld-eyebrow { text-shadow: 0 1px 3px rgba(255, 255, 255, 0.9), 0 0 2px rgba(255, 255, 255, 0.7); }
  .ld-hero__content .ld-btn { text-shadow: none; }
  .ld-header__inner { width: 100%; max-width: none; }
  .ld-footer__cols { grid-template-columns: 1fr 1fr; }
  .ld-grid--5 { grid-template-columns: repeat(3, 1fr); }
  .ld-realizacje-grid { grid-template-columns: repeat(2, 1fr); gap: var(--space-4); }
  .ld-grid--4 { grid-template-columns: repeat(2, 1fr); }
  .ld-grid--3 { grid-template-columns: repeat(2, 1fr); }
  .ld-section--elevated .ld-grid--3 { grid-template-columns: 1fr; max-width: 480px; margin-inline: auto; }
  .ld-post-layout { grid-template-columns: 1fr; }
  .ld-post-hero--portrait { grid-template-columns: 1fr 1fr; }
  .ld-post-sidebar { position: static; }
}
@media (max-width: 992px) {
  .ld-menu-toggle { display: inline-flex; font-size: 1.75rem; }
  .ld-header__inner { justify-content: flex-start; gap: var(--space-3); }
  .ld-header__brand { margin-right: auto; }
  .ld-nav { position: fixed; inset: calc(var(--notice-height) + var(--topbar-height)) 0 0 0; background: #fff; flex-direction: column; align-items: flex-start; gap: 0; padding: var(--space-6); border-bottom: 1px solid var(--color-border); box-shadow: var(--shadow-lg); transform: translateY(-130%); transition: transform var(--duration-normal) var(--ease-default); z-index: 999; overflow-y: auto; }
  /* Na telefonie: ukryj menu desktopowe, pokaż uproszczone menu mobilne (jeśli przypisane) */
  .ld-nav.has-mobile-menu > ul { display: none !important; }
  .ld-nav__mobile { display: block; width: 100%; }
  .ld-nav__mobile ul { list-style: none; margin: 0; padding: 0; width: 100%; }
  .ld-nav[data-open="true"] { transform: translateY(0); }
  .ld-nav ul { flex-direction: column; width: 100%; gap: var(--space-2); }
  .ld-nav a { display: block; width: 100%; padding: var(--space-3) 0; border-bottom: 1px solid var(--color-border-subtle); }
  .ld-nav li:hover > .sub-menu,
  .ld-nav li:focus-within > .sub-menu { visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; transform: none !important; left: auto !important; top: auto !important; position: static !important; }
  .ld-nav li:hover > .sub-menu.is-open,
  .ld-nav li:focus-within > .sub-menu.is-open { visibility: visible !important; opacity: 1 !important; pointer-events: auto !important; }
  .ld-nav .sub-menu { display: none !important; visibility: visible !important; opacity: 1 !important; pointer-events: auto !important; position: static !important; left: auto !important; top: auto !important; transform: none !important; min-width: 0 !important; box-shadow: none !important; border-radius: 0 !important; background: #fff !important; padding: var(--space-2) 0 var(--space-2) 0 !important; transition: none !important; margin-bottom: var(--space-2) !important; z-index: auto !important; }
  .ld-nav .sub-menu.is-open { display: block !important; }
  .ld-nav .sub-menu a { font-size: var(--text-sm) !important; padding: var(--space-2) var(--space-2) !important; border-bottom: 1px solid var(--color-border-subtle) !important; border-top: none !important; display: flex !important; align-items: center !important; width: 100% !important; white-space: normal !important; background: transparent !important; color: var(--color-text-primary) !important; }
  .ld-nav .sub-menu a::after { display: none !important; content: none !important; }
  .ld-nav .sub-menu li:last-child a { background: var(--color-rose) !important; color: #fff !important; font-weight: var(--font-weight-medium) !important; justify-content: center !important; border-bottom: none !important; border-radius: var(--radius-md) !important; margin-top: var(--space-2) !important; padding: var(--space-3) var(--space-2) !important; }
  .ld-nav .sub-menu li:last-child a::before { background-color: #fff !important; }
  .ld-nav li.menu-item-has-children > a { display: flex; justify-content: space-between; align-items: center; }
  .ld-nav li.menu-item-has-children > a::after { display: inline-block !important; content: '' !important; margin-left: auto; width: 6px !important; height: 6px !important; min-width: 0 !important; background: none !important; border-right: 1.5px solid currentColor !important; border-bottom: 1.5px solid currentColor !important; transform: rotate(45deg) translateY(-2px) !important; transition: transform 200ms ease !important; flex-shrink: 0; }
  .ld-nav li.menu-item-has-children.is-open > a::after { transform: rotate(225deg) translateY(2px) !important; }
}
@media (max-width: 768px) {
  /* więcej miejsca dla logo: ciaśniejsze odstępy menu/ikon */
  .ld-header__inner { gap: var(--space-2); }
  .ld-header__actions { gap: var(--space-2); }
  .ld-container { padding-inline: 40px; }
  .ld-filter-icons { padding-inline: 40px; }
  .ld-filter-icons__list { gap: var(--space-4) var(--space-2); }
  .ld-section { padding-block: 24px; }
  /* Faktyczne twarde cięcia kolorystyczne → 2× global = 48px */
  .ld-wydruki-gal, .ld-section--reviews-gradient { padding-block: 48px; }
  /* about: wyraźny kolor (subtle #F3EEF1) — góra cięcie, dół łączy się z reviews (ten sam kolor) */
  .ld-section--about { padding-block-start: 48px; padding-block-end: 48px; }
  .ld-section--about .ld-hero__art { order: 1; }
  .ld-section--about .ld-grid--2 { row-gap: var(--space-5); }
  .ld-grid--2, .ld-grid--3, .ld-grid--4,
  .ld-realizacje-split { grid-template-columns: 1fr; max-width: 500px; margin-inline: auto; }
  .ld-grid--5 { grid-template-columns: repeat(2, 1fr); }
  .ld-realizacje-grid { grid-template-columns: repeat(2, 1fr); gap: var(--space-3); }
  .ld-realizacje-split { gap: var(--space-8); }
  .ld-realizacje-slider { order: 2; }
  .ld-realizacje-text { order: 1; }
  /* Sekcje „Realizacje" i „O Olbrand" — wyśrodkowane, gdy układ schodzi w pion (≤768px) */
  .ld-realizacje-text,
  .ld-section--about .ld-grid--2 > div:first-child { text-align: center; }
  .ld-realizacje-text .ld-eyebrow,
  .ld-section--about .ld-grid--2 > div:first-child .ld-eyebrow { justify-content: center; }
  .ld-realizacje-text .ld-eyebrow::before,
  .ld-section--about .ld-grid--2 > div:first-child .ld-eyebrow::before { content: ''; flex: 1; height: 1.5px; background: currentColor; opacity: 0.55; border-radius: 2px; }
  .ld-section--about .ld-grid--2 > div:first-child p[style*="text-align:left"] { text-align: center !important; }
  .ld-section--about .ld-grid--2 > div:first-child .ld-social-btns { justify-content: center; }
  .ld-post-layout { grid-template-columns: 1fr; }
  .ld-post-hero--portrait { grid-template-columns: 1fr; gap: var(--space-4); }
  .ld-post-hero__lead { order: -1; }
  .ld-post-sidebar { position: static; }
  .ld-footer__cols { grid-template-columns: 1fr; }
  .ld-cat-grid { grid-template-columns: repeat(2, 1fr); column-gap: 20px; row-gap: 20px; }
}
@media (max-width: 576px) {
  .ld-hero__inner { width: 100%; max-width: 100%; }
  .ld-container { padding-inline: 20px; }
  .ld-filter-icons { padding-inline: 20px; }
  .ld-filter-icons__list { gap: var(--space-3) var(--space-2); }
  h1 { font-size: var(--text-3xl); }
  h2 { font-size: var(--text-2xl); }
  .ld-footer__cols { grid-template-columns: 1fr; }
  .ld-review-card { flex: 0 0 100%; }
  .ld-reviews-wrap { padding-inline: 20px; gap: 0; }
  .ld-reviews-clip { margin: 0; padding: 0; }
  .ld-reviews__arrow { position: absolute; top: 50%; width: 36px; height: 36px; z-index: 10; }
  .ld-reviews__arrow:first-child { left: 20px; transform: translate(-50%, -50%); }
  .ld-reviews__arrow:last-child { right: 20px; transform: translate(50%, -50%); }
  .ld-reviews-badges { grid-template-columns: repeat(2, 1fr); }
  .ld-reviews-cta { flex-direction: column; text-align: center; }
  .ld-reviews-cta__text { text-align: center; }
  .ld-modal__box { padding: var(--space-5); }
  .ld-cat-grid { grid-template-columns: repeat(2, 1fr); }
  .ld-wydruki-gal, .ld-section--reviews-gradient { padding-block: 48px; }
  .ld-section--about { padding-block-start: 48px; padding-block-end: 48px; }
  .ld-realizacje-split { gap: var(--space-6); }
  /* Karty realizacji: 1 kolumna na telefonach w pionie (2 kolumny się nie mieszczą) */
  .ld-realizacje-grid { grid-template-columns: 1fr; gap: var(--space-5); }
  .ld-reviews-wrap { margin-top: var(--space-4); }
  .ld-contact-form .ld-grid--2,
  .ld-edible-form .ld-grid--2 { grid-template-columns: 1fr; max-width: 100%; }
  .ld-wydruki-gal__thumb { flex: 0 0 calc((100% - var(--space-3)) / 2); }
}

/* ===== Cart page — 2-column layout ===== */
.woocommerce-cart .woocommerce { display: grid !important; grid-template-columns: 3fr 2fr !important; grid-template-rows: auto !important; gap: 40px !important; align-items: start !important; margin: 0 !important; width: 100% !important; }
.woocommerce-cart .woocommerce-notices-wrapper { grid-column: 1 / -1 !important; }

/* ── Cart inline notices slot (success via WC JS → .woocommerce-notices-wrapper:first) ── */
.ld-cart-notices-slot { width: 100%; order: 2; }
.ld-cart-notices-slot:empty { display: none; }

/* Success notices (in slot) */
.ld-cart-notices-slot .woocommerce-message {
  display: block !important;
  background: #e8f5e9 !important; border: 1.5px solid #66bb6a !important; border-top: 1.5px solid #66bb6a !important;
  color: #2e7d32 !important; border-radius: var(--radius-md) !important;
  padding: var(--space-3) var(--space-4) !important; margin: var(--space-3) 0 0 !important;
  list-style: none !important; font-size: var(--text-sm) !important; font-weight: var(--font-weight-semibold) !important;
}
.ld-cart-notices-slot .woocommerce-message li { color: #2e7d32 !important; list-style: none !important; }
.ld-cart-notices-slot .woocommerce-message::before,
.ld-cart-notices-slot .woocommerce-message .button { display: none !important; }

/* Error notices in slot (fallback) */
.ld-cart-notices-slot .woocommerce-error {
  display: block !important;
  background: #fff5f5 !important; border: 1.5px solid #f4aeae !important; border-top: 1.5px solid #f4aeae !important;
  color: #b54040 !important; border-radius: var(--radius-md) !important;
  padding: var(--space-3) var(--space-4) !important; margin: var(--space-3) 0 0 !important;
  list-style: none !important; font-size: var(--text-sm) !important; font-weight: var(--font-weight-semibold) !important;
}
.ld-cart-notices-slot .woocommerce-error li { color: #b54040 !important; list-style: none !important; }
.ld-cart-notices-slot .woocommerce-error::before { display: none !important; }

/* ── Coupon error notice (WC JS appends <p class="coupon-error-notice"> to .coupon div) ── */
.woocommerce-cart-form .coupon { flex-wrap: wrap; }
.woocommerce-cart-form .coupon .coupon-error-notice {
  width: 100%; margin: var(--space-2) 0 0 !important; padding: var(--space-2) var(--space-4) !important;
  background: #fff5f5; border: 1.5px solid #f4aeae; border-radius: var(--radius-md);
  color: #b54040 !important; font-size: var(--text-sm) !important; font-weight: var(--font-weight-semibold) !important;
}
.woocommerce-cart .woocommerce-cart-form { grid-column: 1 !important; grid-row: 1 !important; margin: 0 !important; padding: 0 !important; width: 100% !important; float: none !important; }
.woocommerce-cart .cart-collaterals { grid-column: 2 !important; grid-row: 1 !important; float: none !important; width: 100% !important; }

/* Cart table — 5 columns (no separate remove col; × is overlay on thumbnail) */
.woocommerce-cart table.shop_table { border: none !important; border-collapse: collapse !important; width: 100% !important; margin: 0 !important; table-layout: fixed; }
.woocommerce-cart table.shop_table colgroup { display: none; }
.woocommerce-cart table.shop_table thead th { font-size: var(--text-sm); font-weight: var(--font-weight-semibold); color: var(--color-text-muted); text-transform: uppercase; letter-spacing: var(--letter-spacing-wide); padding: var(--space-3) var(--space-3) !important; border-bottom: 1px solid var(--color-border) !important; border-top: none !important; background: none !important; }
.woocommerce-cart table.shop_table thead th.product-thumbnail { width: 96px; padding-left: 0 !important; }
.woocommerce-cart table.shop_table thead th.product-name { width: auto; }
.woocommerce-cart table.shop_table thead th.product-price { width: 80px; text-align: center; }
.woocommerce-cart table.shop_table thead th.product-quantity { width: 100px; text-align: center; }
.woocommerce-cart table.shop_table thead th.product-subtotal { width: 120px; text-align: right; }
.woocommerce-cart table.shop_table tbody tr { border-bottom: 1px solid var(--color-border-subtle); }
.woocommerce-cart table.shop_table td { padding: var(--space-3) !important; vertical-align: middle !important; border: none !important; }
.woocommerce-cart table.shop_table td.product-thumbnail { padding-left: 0 !important; width: 96px; }
.woocommerce-cart table.shop_table td.product-price,
.woocommerce-cart table.shop_table td.product-subtotal { text-align: center; }
.woocommerce-cart table.shop_table td.product-subtotal { text-align: right; }

/* Thumbnail wrap z overlayem × */
.ld-cart-thumb-wrap { position: relative; display: inline-block; width: 72px; height: 72px; flex-shrink: 0; }
.ld-cart-thumb-wrap a:not(.ld-cart-remove) { display: block; width: 72px; height: 72px; overflow: hidden; border-radius: var(--radius-md); box-shadow: var(--shadow-sm); }
.ld-cart-thumb-wrap img { width: 72px !important; height: 72px !important; object-fit: cover !important; display: block !important; border-radius: 0 !important; }
.ld-cart-remove { position: absolute; top: -8px; right: -8px; width: 20px; height: 20px; background: var(--color-bg-surface); border: 1px solid var(--color-border); border-radius: var(--radius-full); display: flex; align-items: center; justify-content: center; font-size: 14px; line-height: 1; color: var(--color-text-muted) !important; text-decoration: none !important; transition: background 160ms ease, color 160ms ease, border-color 160ms ease; }
.ld-cart-remove:hover { background: var(--color-error) !important; border-color: var(--color-error) !important; color: #fff !important; }

/* Product name & prices */
.woocommerce-cart table.shop_table .product-name a { font-weight: var(--font-weight-semibold); color: var(--color-text-primary); }
.woocommerce-cart table.shop_table .product-name a:hover { color: var(--color-secondary); }
.woocommerce-cart table.shop_table .product-price,
.woocommerce-cart table.shop_table .product-subtotal { color: var(--color-accent); font-weight: var(--font-weight-semibold); white-space: normal; }
.woocommerce-cart table.shop_table .product-subtotal .tax_label,
.woocommerce-cart table.shop_table .product-price .tax_label { display: none; }
/* Mniejszy font w wierszach tabeli koszyka */
.woocommerce-cart table.shop_table tbody td { font-size: var(--text-sm) !important; }
.woocommerce-cart table.shop_table .product-name a { font-size: var(--text-sm) !important; }

/* Cart actions row */
.woocommerce-cart .woocommerce-cart-form .actions { border-top: 1px solid var(--color-border) !important; padding: var(--space-6) 0 !important; display: flex !important; align-items: center !important; justify-content: flex-start !important; flex-wrap: wrap !important; gap: var(--space-3) !important; background: none !important; border-radius: 0 !important; box-shadow: none !important; border-left: none !important; border-right: none !important; border-bottom: none !important; }
.woocommerce-cart .woocommerce-cart-form .coupon { display: flex; align-items: center; gap: var(--space-2); flex-shrink: 0; order: 1; }
.woocommerce-cart .woocommerce-cart-form .coupon label { display: none; }
.woocommerce-cart .woocommerce-cart-form .coupon #coupon_code { width: 140px; height: 44px; border: 1.5px solid var(--color-border-strong); border-radius: var(--radius-md); padding: 0 var(--space-4); font-size: var(--text-sm); color: var(--color-text-primary); background: var(--color-bg-base); }
.woocommerce-cart .woocommerce-cart-form .coupon [name="apply_coupon"] { flex-shrink: 0; white-space: nowrap; }
.woocommerce-cart .woocommerce-cart-form [name="update_cart"] { flex-shrink: 0; margin-left: auto; order: 3; }
.woocommerce-cart .cart_totals .shipping-calculator-button,
.woocommerce-cart .cart_totals .shipping-calculator-form { display: none !important; }

/* Cart totals card */
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-cart .cart_totals { float: none !important; width: 100% !important; background: var(--color-bg-surface); border-radius: var(--radius-xl); border: 1px solid var(--color-border-subtle); box-shadow: var(--shadow-container); padding: var(--space-6) !important; box-sizing: border-box; }
.woocommerce-cart .cart_totals h2 { font-size: var(--text-xl) !important; margin: 0 0 var(--space-5) !important; }
.woocommerce-cart .cart_totals table.shop_table { width: 100%; border-collapse: collapse !important; }
.woocommerce-cart .cart_totals table.shop_table td,
.woocommerce-cart .cart_totals table.shop_table th { padding: var(--space-3) 0 !important; border-bottom: 1px solid var(--color-border-subtle) !important; border-top: none !important; font-size: var(--text-sm); background: transparent !important; }
.woocommerce-cart .cart_totals table.shop_table tr:last-child td,
.woocommerce-cart .cart_totals table.shop_table tr:last-child th { border-bottom: none !important; font-weight: var(--font-weight-bold); font-size: var(--text-base); }
.woocommerce-cart .cart_totals .wc-proceed-to-checkout { margin: var(--space-5) 0 0 !important; padding: 0 !important; }
.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button { display: block !important; width: 100% !important; text-align: center !important; font-size: var(--text-base) !important; margin: 0 !important; padding-top: var(--space-3) !important; padding-bottom: var(--space-3) !important; }

/* Cross-sells */
.woocommerce-cart .cross-sells { margin-top: var(--space-8); }
.woocommerce-cart .cross-sells h2 { font-size: var(--text-xl) !important; margin-bottom: var(--space-5) !important; }

/* Responsive — stack on tablet/phone */
@media (max-width: 992px) {
  .woocommerce-cart .woocommerce { grid-template-columns: 1fr !important; gap: var(--space-8) !important; }
  .woocommerce-cart .woocommerce-cart-form { grid-column: 1 !important; grid-row: 1 !important; }
  .woocommerce-cart .cart-collaterals { grid-column: 1 !important; grid-row: 2 !important; }
  .woocommerce-cart .woocommerce-cart-form .coupon { width: 100%; }
  .woocommerce-cart .woocommerce-cart-form .coupon #coupon_code { flex: 1; width: auto; }
  .woocommerce-cart .woocommerce-cart-form .coupon [name="apply_coupon"] { flex: 1; }
}

/* Override woocommerce-smallscreen.css (loaded at ≤768px) */
@media (max-width: 768px) {
  /* Treść do lewej w responsive cart table */
  .woocommerce-cart table.shop_table_responsive tr td { text-align: left !important; }
  .woocommerce-cart table.shop_table_responsive tr td::before { float: none !important; display: block !important; }
  /* Bez zaciemnień na parzystych rzędach */
  .woocommerce table.shop_table_responsive tr:nth-child(2n) td,
  .woocommerce-page table.shop_table_responsive tr:nth-child(2n) td { background-color: transparent !important; }
}

/* ===== Cart Drawer ===== */
.ld-cart-drawer { position: fixed; inset: 0; z-index: 300; pointer-events: none; }
.ld-cart-drawer:not([hidden]) { pointer-events: auto; }
.ld-cart-drawer__overlay { position: absolute; inset: 0; background: rgba(31,42,72,0.45); opacity: 0; transition: opacity 350ms ease; }
.ld-cart-drawer__panel { position: absolute; top: 0; right: 0; height: 100%; width: 380px; max-width: 100vw; background: #fff; display: flex; flex-direction: column; box-shadow: -4px 0 24px rgba(31,42,72,0.12); transform: translateX(100%); transition: transform 350ms cubic-bezier(0.4,0,0.2,1); }
.ld-cart-drawer.is-open .ld-cart-drawer__overlay { opacity: 1; }
.ld-cart-drawer.is-open .ld-cart-drawer__panel { transform: translateX(0); }
.ld-cart-drawer__head { display: flex; align-items: center; justify-content: space-between; padding: var(--space-5) var(--space-6); border-bottom: 1px solid var(--color-border); flex-shrink: 0; }
.ld-cart-drawer__title { font-family: var(--font-heading); font-size: var(--text-xl); margin: 0; }
.ld-cart-drawer__close { background: none; border: 0; cursor: pointer; color: var(--color-text-secondary); display: inline-flex; align-items: center; justify-content: center; padding: var(--space-1); border-radius: var(--radius-sm); transition: color 200ms ease; }
.ld-cart-drawer__close:hover { color: var(--color-primary); }
.ld-cart-drawer__body { flex: 1; overflow-y: auto; padding: var(--space-5) var(--space-6); display: flex; flex-direction: column; gap: var(--space-4); }
.ld-cart-drawer__empty { color: var(--color-text-muted); text-align: center; margin-top: var(--space-8); }
.ld-cart-item { display: grid; grid-template-columns: 64px 1fr auto; gap: var(--space-3); align-items: start; }
.ld-cart-item__img img { width: 64px; height: 64px; object-fit: cover; border-radius: var(--radius-md); }
.ld-cart-item__info { display: flex; flex-direction: column; gap: 2px; }
.ld-cart-item__name { font-weight: var(--font-weight-semibold); font-size: var(--text-sm); color: var(--color-primary); text-decoration: none; }
.ld-cart-item__name:hover { color: var(--color-rose); }
.ld-cart-item__qty-row { display: flex; align-items: center; gap: var(--space-2); }
.ld-cart-item__qty { font-size: var(--text-sm); font-weight: var(--font-weight-semibold); color: var(--color-text-primary); min-width: 20px; text-align: center; }
.ld-cart-qty-btn { width: 24px; height: 24px; border-radius: var(--radius-full); border: 1px solid var(--color-border); background: var(--color-bg-base); color: var(--color-text-primary); font-size: var(--text-base); line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background 150ms ease, border-color 150ms ease; flex-shrink: 0; }
.ld-cart-qty-btn:hover { background: var(--color-bg-subtle); border-color: var(--color-secondary); color: var(--color-secondary); }
.ld-cart-item__price { font-size: var(--text-sm); font-weight: var(--font-weight-semibold); color: var(--color-accent); }
.ld-cart-item__remove { color: var(--color-text-muted); display: inline-flex; align-items: center; transition: color 200ms ease; margin-top: 2px; }
.ld-cart-item__remove:hover { color: var(--color-rose); }
.ld-cart-drawer__foot { padding: var(--space-5) var(--space-6); border-top: 1px solid var(--color-border); display: flex; flex-direction: column; gap: var(--space-4); flex-shrink: 0; }
.ld-cart-drawer__total { display: flex; justify-content: space-between; align-items: center; font-size: var(--text-base); }
.ld-cart-drawer__total strong { font-size: var(--text-lg); color: var(--color-primary); }

/* ── O marce — intro split ──────────────────────────────────── */
.ld-about-intro { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-12); align-items: stretch; margin-bottom: var(--space-10); }
.ld-about-intro__aside { display: flex; flex-direction: column; gap: var(--space-4); }
.ld-about-owner-img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; object-position: top; border-radius: var(--radius-xl); display: block; flex-shrink: 0; }
.ld-about-intro__text { display: flex; flex-direction: column; align-items: stretch; }
.ld-about-intro__text p:not(.ld-eyebrow) { font-size: var(--text-md); line-height: var(--line-height-relaxed); color: var(--color-text-secondary); margin-bottom: var(--space-5); }
.ld-about-intro__text p:last-child { margin-bottom: 0; }
.ld-brand-quote { display: flex; flex-direction: column; align-items: center; text-align: center; background: var(--color-bg-surface); border-top: 3px solid var(--color-accent); border-radius: 0 0 var(--radius-xl) var(--radius-xl); padding: var(--space-8); margin: var(--space-6) 0 0; font-family: var(--font-heading); font-size: var(--text-xl); line-height: 1.5; color: var(--color-primary); font-style: italic; }
.ld-brand-quote::before { content: '\201C'; font-size: 4.5rem; line-height: 0.75; color: var(--color-accent); display: block; margin-bottom: var(--space-3); font-style: normal; }

/* ── O marce — grid 3 prac (flex-grow w lewej kolumnie) ─────── */
.ld-about-works { flex: 1; min-height: 0; display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 1fr; gap: var(--space-4); }
.ld-about-works__item { overflow: hidden; border-radius: var(--radius-xl); min-height: 0; }
.ld-about-works__item img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform var(--duration-slow) var(--ease-out); }
.ld-about-works__item:hover img { transform: scale(1.04); }

/* ── Statement block ─────────────────────────────────────────── */
.ld-statement-block { position: relative; overflow: hidden; background: var(--color-bg-subtle); border-radius: var(--radius-xl); padding: var(--space-16) var(--space-12); text-align: center; margin-bottom: var(--space-10); box-shadow: var(--shadow-container); }
.ld-statement-block::before { content: ''; position: absolute; inset: 0; background: url('/wp-content/uploads/2026/06/Akwarelowa-ramka_002_AdobeStock_716261452.png') center / 100% 100% no-repeat; opacity: 0.6; pointer-events: none; z-index: 0; }
.ld-statement-block > * { position: relative; z-index: 1; }
.ld-statement-block__eyebrow { margin-bottom: var(--space-6); }
.ld-statement-block__text { font-family: var(--font-heading); font-size: var(--text-3xl); line-height: var(--line-height-tight); color: var(--color-primary); margin-bottom: var(--space-5); }
.ld-statement-block__sub { font-size: var(--text-base); color: var(--color-text-secondary); margin: 0; }

/* ── Value cards ─────────────────────────────────────────────── */
.ld-about-values { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: var(--space-10); row-gap: var(--space-6); margin-bottom: 0; }
.ld-about-value-card { background: var(--color-bg-surface); border: 1px solid var(--color-border-subtle); border-top: 3px solid var(--color-accent); border-radius: 0 0 var(--radius-xl) var(--radius-xl); padding: var(--space-8); }
.ld-about-value-card__icon { width: 56px; height: 56px; border-radius: var(--radius-full); border: 2px solid var(--color-accent); color: var(--color-accent); display: inline-flex; align-items: center; justify-content: center; margin-bottom: var(--space-5); flex-shrink: 0; }
.ld-about-value-card__title { font-family: var(--font-heading); font-size: var(--text-lg); color: var(--color-primary); margin-bottom: var(--space-3); font-weight: var(--font-weight-bold); line-height: var(--line-height-tight); }
.ld-about-value-card__text { font-size: var(--text-sm); line-height: var(--line-height-relaxed); color: var(--color-text-secondary); margin: 0; }

/* ── Occasions ───────────────────────────────────────────────── */
.ld-occasions { margin-bottom: var(--space-12); }
.ld-occasions__tags { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-top: var(--space-5); }
.ld-occasion-tag { display: inline-flex; align-items: center; padding: var(--space-5) var(--space-8); border-radius: var(--radius-xl); border: 1px solid var(--color-border); background: var(--color-bg-surface); font-size: var(--text-sm); color: var(--color-text-secondary); font-weight: var(--font-weight-medium); box-shadow: var(--shadow-container); }

/* ── Wydruki jadalne — realizacje gallery section ───────────── */
.ld-wydruki-gal {
  position: relative;
  overflow: hidden;
}
/* watercolor background blended from top with white gradient */
.ld-wydruki-gal::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url('/wp-content/uploads/2026/06/Akwarelowe-tlo_009.png') center / cover no-repeat;
  opacity: 0.35;
  mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.5) 30%, rgba(0,0,0,1) 70%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.5) 30%, rgba(0,0,0,1) 70%);
  pointer-events: none;
  z-index: 0;
}
.ld-wydruki-gal > .ld-container { position: relative; z-index: 2; }

.ld-wydruki-gal__split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 50px;
  align-items: center;
  margin-bottom: var(--space-8);
}
.ld-wydruki-gal__main-wrap {
  border-radius: var(--radius-xl);
  overflow: hidden;
  aspect-ratio: 3 / 4;
  background: var(--color-bg-subtle);
  box-shadow: 0 2px 6px rgba(0,0,0,0.10);
}
.ld-wydruki-gal__main-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: opacity 250ms var(--ease-default);
}
.ld-wydruki-gal__main-img.is-switching { opacity: 0; }
.ld-wydruki-gal__text {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.ld-wydruki-gal__text h2 { margin: 0; }
.ld-wydruki-gal__text p:not(.ld-eyebrow) { color: var(--color-text-secondary); margin: 0; }
.ld-wydruki-gal__text .ld-eyebrow { color: var(--color-accent); }
.ld-wydruki-gal__text .ld-btn { align-self: flex-start; }

/* thumbnail slider */
.ld-wydruki-gal__slider-wrap {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
/* clip wrapper — only the track is clipped, arrows stay outside */
.ld-wydruki-gal__thumbs-clip {
  flex: 1;
  overflow: hidden;
  padding: 10px;
  margin: -10px;
}
.ld-wydruki-gal__thumbs {
  display: flex;
  gap: var(--space-3);
  overflow: visible;
}
.ld-wydruki-gal__thumb {
  flex: 0 0 calc((100% - 4 * var(--space-3)) / 5);
  aspect-ratio: 1 / 1;
  border-radius: var(--radius-lg);
  overflow: visible;
  cursor: pointer;
  border: 2px solid transparent;
  box-shadow: 0 2px 6px rgba(0,0,0,0.10);
  transition: border-color var(--duration-normal) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default);
  flex-shrink: 0;
}
.ld-wydruki-gal__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
  border-radius: calc(var(--radius-lg) - 2px);
  overflow: hidden;
}
.ld-wydruki-gal__thumb:hover,
.ld-wydruki-gal__thumb.is-active {
  border-color: var(--color-rose);
  box-shadow: 0 2px 10px rgba(196,104,122,0.35);
}

/* prev/next arrows */
.ld-wydruki-gal__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  border-radius: var(--radius-full);
  background: #fff;
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 2;
  transition: background var(--duration-fast) ease, border-color var(--duration-fast) ease;
  color: var(--color-text-primary);
}
.ld-wydruki-gal__arrow:hover { background: var(--color-accent); border-color: var(--color-accent); color: #fff; }
.ld-wydruki-gal__arrow--prev { left: -18px; }
.ld-wydruki-gal__arrow--next { right: -18px; }
.ld-wydruki-gal__arrow[disabled] { opacity: 0.3; pointer-events: none; }

@media (max-width: 768px) {
  .ld-wydruki-gal__split { grid-template-columns: 1fr; gap: var(--space-6); }
  .ld-wydruki-gal__thumb { flex: 0 0 calc((100% - 2 * var(--space-3)) / 3); }
}

/* ── Wydruki jadalne — left column + WhatsApp tile ───────────── */
.ld-wydruki-left {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}
.ld-wa-tile {
  flex: 1;
  background: #fff;
  border-radius: var(--radius-xl);
  box-shadow: 0 6px 16px rgba(196, 104, 122, 0.45);
  padding: var(--space-8);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.ld-wa-tile h3 { margin: 0; font-size: var(--text-xl); }
.ld-wa-tile p:not(.ld-eyebrow) { margin: 0; color: var(--color-text-secondary); font-size: var(--text-base); line-height: var(--line-height-normal); }
.ld-wa-tile .ld-eyebrow { color: var(--color-accent); margin-bottom: 0; }
.ld-wa-tile__footer { margin-top: auto; padding-top: 6px; display: flex; gap: var(--space-3); flex-wrap: wrap; }
.ld-wa-tile .ld-btn { align-self: flex-start; display: inline-flex; align-items: center; gap: var(--space-2); }

/* ── About page CTA ──────────────────────────────────────────── */
.ld-section-cta { text-align: center; margin-top: var(--space-10); }

/* Responsive — O marce */
@media (max-width: 768px) {
    .ld-about-intro { grid-template-columns: 1fr; max-width: 500px; margin-inline: auto; margin-block-start: var(--space-8); gap: 24px; margin-bottom: 24px; }
    .ld-about-intro__text { order: -1; }
    /* #19 — grafika „O marce" MA być widoczna na mobile (klientka): pokazujemy ilustrację Olgi w pełnych, naturalnych proporcjach (bez przycięcia i bez pasów), po tekście, nad miniaturami prac */
    .ld-about-owner-img { display: block; width: 100%; height: auto; aspect-ratio: auto; }
    .ld-about-works { grid-template-columns: repeat(3, 1fr); max-width: 500px; margin-inline: auto; }
    .ld-about-works__item { aspect-ratio: 3 / 4; }
    .ld-about-works__item:nth-child(2) { display: block; }
    .ld-about-values { grid-template-columns: 1fr; max-width: 500px; margin-inline: auto; }
    .ld-statement-block { padding: var(--space-10) var(--space-6); margin-bottom: 24px; }
    .ld-statement-block__text { font-size: var(--text-2xl); color: var(--color-primary); }
    .ld-wydruki-gal__split { max-width: 500px; margin-inline: auto; }
}
@media (min-width: 769px) and (max-width: 992px) {
    .ld-about-intro { grid-template-columns: 1fr 1fr; }
    .ld-about-values { grid-template-columns: 1fr; max-width: 560px; margin-inline: auto; }
    .ld-about-value-card { text-align: center; align-items: center; }
    .ld-about-works { grid-template-columns: repeat(2, 1fr); }
    .ld-about-works__item:nth-child(2) { display: none; }
    .ld-section--about { padding-block-end: var(--space-section); }
}

/* ===== WooCommerce Block Checkout — button styles ===== */

/* Generic WC block buttons (outline panels, coupon apply, etc.) */
.wc-block-components-button:not(.is-link) {
  font-family: var(--font-primary) !important;
  font-weight: var(--font-weight-semibold) !important;
  border-radius: var(--radius-full) !important;
  transition: background 450ms ease-in-out, border-color 450ms ease-in-out, color 450ms ease-in-out !important;
  cursor: pointer;
}

/* "Złóż zamówienie" — primary CTA */
.wc-block-components-checkout-place-order-button {
  background: var(--color-primary) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--radius-full) !important;
  font-family: var(--font-primary) !important;
  font-size: var(--text-base) !important;
  font-weight: var(--font-weight-semibold) !important;
  padding: 14px var(--space-8) !important;
  min-height: 52px !important;
  transition: background 450ms ease-in-out !important;
  letter-spacing: var(--letter-spacing-normal);
}
.wc-block-components-checkout-place-order-button:hover:not(:disabled) {
  background: var(--color-accent) !important;
  color: #fff !important;
}
.wc-block-components-checkout-place-order-button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* Coupon "Zastosuj" button in order summary sidebar */
.wc-block-components-totals-coupon__button {
  background: var(--color-primary) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--radius-full) !important;
  font-weight: var(--font-weight-semibold) !important;
  font-size: var(--text-sm) !important;
  transition: background 450ms ease-in-out !important;
}
.wc-block-components-totals-coupon__button:hover:not(:disabled) {
  background: var(--color-accent) !important;
  color: #fff !important;
}

/* "Powrót do koszyka" / secondary return links in checkout */
.wc-block-checkout__actions .wc-block-components-button.is-link {
  color: var(--color-text-muted) !important;
  font-size: var(--text-sm) !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.wc-block-checkout__actions .wc-block-components-button.is-link:hover {
  color: var(--color-primary) !important;
}

/* ============================================================
   UWAGI KLIENTKI 03.08.2026 — batch 1 (łatwe do odróżnienia / cofnięcia)
   ============================================================ */

/* #1b — górny pasek jako rotujący slajder komunikatów.
   Grid-stacking: kontener przyjmuje wymiar NAJWIĘKSZEGO komunikatu → stała wysokość, brak reflow przy zmianie. */
.ld-topnotice__slides { display: grid; align-items: center; justify-items: center; min-width: 0; }
.ld-topnotice--slider .ld-topnotice__msg {
  grid-column: 1; grid-row: 1;
  font-size: var(--text-xs); font-weight: var(--font-weight-bold); line-height: var(--line-height-tight);
  text-align: center; pointer-events: none;
  opacity: 0; transition: opacity .45s var(--ease-default);
}
.ld-topnotice--slider .ld-topnotice__msg.is-active { opacity: 1; pointer-events: auto; }
@media (prefers-reduced-motion: reduce) {
  .ld-topnotice--slider .ld-topnotice__msg { transition: none; }
}

/* #1a — dwa przyciski hero obok siebie (również na mobile), skala tak, by hero mieściło się w jednym widoku */
.ld-hero__actions--row { flex-direction: row; flex-wrap: wrap; align-items: center; gap: var(--space-3); }
.ld-hero .ld-hero__actions--row .ld-btn { width: auto; max-width: none; }
@media (max-width: 768px) {
  .ld-hero__actions.ld-hero__actions--row { flex-direction: row; flex-wrap: wrap; justify-content: flex-start; gap: var(--space-2); }
  .ld-hero .ld-hero__actions--row .ld-btn {
    width: auto; max-width: none; flex: 1 1 auto;
    padding-inline: var(--space-3); font-size: var(--text-sm); white-space: nowrap;
    text-align: center; justify-content: center;
  }
}

/* #2 — podtytuł pod „Wybierz swoją uroczystość" */
.ld-section-subtitle {
  margin-top: var(--space-1);
  color: var(--color-text-secondary);
  font-size: var(--text-sm);
  letter-spacing: var(--letter-spacing-wide);
}

/* #1a — hero mieści się w jednym widoku na mobile (karta nie wystaje, mniejszy h1, przyciski w rzędzie) */
@media (max-width: 768px) {
  .ld-hero__content { box-sizing: border-box; max-width: 100%; }
  .ld-hero__content > * { min-width: 0; }
  .ld-hero h1 { font-size: clamp(1.3rem, 5.6vw, 1.85rem); overflow-wrap: break-word; margin-bottom: var(--space-4); }
  .ld-hero .ld-lead { font-size: var(--text-sm); margin-bottom: var(--space-4); }
  .ld-hero__actions.ld-hero__actions--row { margin-top: var(--space-5); gap: var(--space-2); justify-content: center; }
  .ld-hero .ld-hero__actions--row .ld-btn { font-size: var(--text-xs); padding-inline: var(--space-3); min-height: var(--btn-height-sm); }
}

/* #1a — korekta: przyciski hero równej szerokości, zwijają tekst w środku (nie rozpychają karty) */
@media (max-width: 768px) {
  .ld-hero__inner { width: 100%; max-width: 100%; }
  .ld-hero__content { width: 100%; max-width: 100%; box-sizing: border-box; }
  .ld-hero__actions.ld-hero__actions--row { flex-wrap: nowrap; gap: var(--space-2); justify-content: stretch; }
  .ld-hero .ld-hero__actions--row .ld-btn {
    flex: 1 1 0; min-width: 0; white-space: normal;
    font-size: var(--text-xs); line-height: 1.15;
    padding-inline: var(--space-3); text-align: center; justify-content: center;
  }
}

/* #1b — korekta: kolumna grid paska ograniczona do szerokości kontenera → długi komunikat się zawija (nie rozpycha strony) */
.ld-topnotice__inner { min-width: 0; }
.ld-topnotice__slides {
  grid-template-columns: minmax(0, max-content);
  min-width: 0; max-width: 100%;
}
.ld-topnotice--slider .ld-topnotice__msg { max-width: 100%; }

/* #1 — 4 ikonki korzyści w jednej linii na mobile (kompaktowo, jak na desktopie) */
@media (max-width: 768px) {
  .ld-grid--4 { grid-template-columns: repeat(4, 1fr); gap: var(--space-2); }
  .ld-grid--4 .ld-feature__icon { width: 40px; height: 40px; font-size: var(--text-sm); margin-bottom: var(--space-2); border-width: 1.5px; }
  .ld-grid--4 .ld-feature h3 { font-size: 11px; line-height: 1.15; margin-bottom: 0; }
  .ld-grid--4 .ld-feature p { display: none; }
}


/* #13 — pole komunikatu koszyka na całą szerokość wiersza akcji (nie łamie słowa „zaktualizowany") */
.woocommerce-cart-form .actions { flex-wrap: wrap !important; }
.ld-cart-notices-slot { flex: 1 0 100% !important; width: 100% !important; max-width: 100% !important; }
.ld-cart-notices-slot .woocommerce-message,
.ld-cart-notices-slot .woocommerce-error {
  width: 100% !important; box-sizing: border-box !important;
  word-break: normal !important; overflow-wrap: break-word !important; hyphens: none !important;
  white-space: normal !important; text-align: left !important;
}

/* #14 — Sklep mobile: min. 4 kafelki widoczne → 2 kolumny także ≤480, kompaktowo */
@media (max-width: 480px) {
  .woocommerce ul.products, .woocommerce-page ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: var(--space-3) !important; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .woocommerce ul.products li.product h2 { font-size: var(--text-sm) !important; }
  .woocommerce ul.products li.product .price { font-size: var(--text-sm) !important; }
  .woocommerce ul.products li.product .button { font-size: var(--text-xs) !important; padding-inline: var(--space-2) !important; }
}

/* #16 — produkt mobile: 2 kolumny (zdjęcie lewo / wybór prawo), tytuł+cena pełną szerokością na górze */
@media (max-width: 768px) {
  .woocommerce div.product { grid-template-columns: 0.82fr 1.18fr !important; gap: var(--space-3) !important; column-gap: var(--space-3) !important; }
  .woocommerce div.product div.images { grid-column: 1 !important; grid-row: 2 !important; }
  .woocommerce div.product div.summary { grid-column: 2 !important; grid-row: 2 !important; min-width: 0 !important; }
  .ld-mobile-product-head { grid-column: 1 / -1 !important; grid-row: 1 !important; }
}

/* #16 — korekta: prawa kolumna (wybór) szersza, pola formularza kurczą się do kolumny (nie wychodzą poza ekran) */
@media (max-width: 768px) {
  .woocommerce div.product { grid-template-columns: 0.58fr 1.42fr !important; }
  .woocommerce div.product div.summary *,
  .woocommerce div.product form.cart * { min-width: 0 !important; }
  .woocommerce div.product div.summary input,
  .woocommerce div.product div.summary select,
  .woocommerce div.product div.summary textarea { width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; }
  .woocommerce div.product form.cart { padding: 10px 12px !important; }
  .woocommerce div.product div.summary .ld-personalization,
  .woocommerce div.product div.summary .ld-field { max-width: 100% !important; }
  /* miniatury galerii pod zdjęciem — mniejsze, żeby nie rozpychały wąskiej kolumny */
  .woocommerce div.product div.images .flex-control-thumbs li { width: 33.333% !important; }
}

/* #1 (decyzja klientki: tylko mobile) — hero mobile = pełnoekranowy obraz + biała nakładka (przywrócony pierwotny układ ≤992). Przyciski jeden pod drugim w karcie. */
@media (max-width: 992px) {
  .ld-hero__actions.ld-hero__actions--row { flex-direction: column !important; align-items: stretch !important; flex-wrap: nowrap !important; gap: var(--space-2) !important; }
  .ld-hero .ld-hero__actions--row .ld-btn { width: 100% !important; flex: 0 0 auto !important; }
}

/* #1 (wizualizacja klientki, ostateczny układ mobile) — TORT JAKO TŁO (pełnoekranowy obraz),
   biała karta z tekstem po LEWEJ (wygląd 2-kolumnowy, ale zdjęcie jest tłem, nie kontenerem obok). */
@media (max-width: 992px) {
  .ld-hero__inner {
    display: block !important;
    position: relative !important;
    min-height: 60vh !important;
    width: 100% !important; max-width: 100% !important;
    padding-block-start: calc(var(--topbar-height) + var(--notice-height) + var(--space-5)) !important;
    padding-block-end: var(--space-6) !important;
    align-content: initial !important;
  }
  .ld-hero__art--slider {
    position: absolute !important; inset: 0 !important;
    top: 0 !important; bottom: 0 !important; left: 0 !important; transform: none !important;
    width: 100% !important; height: 100% !important;
    aspect-ratio: auto !important; border-radius: 0 !important; z-index: 1 !important; overflow: hidden !important;
  }
  .ld-hero__art--slider .ld-fade-slider,
  .ld-hero__art--slider .ld-fade-slider__slide { border-radius: 0 !important; height: 100% !important; }
  .ld-hero__art--slider .ld-fade-slider__slide img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center right !important; }
  .ld-hero__art--slider::after { display: none !important; }
  /* biała karta z tekstem po lewej */
  .ld-hero__content {
    position: relative !important; z-index: 3 !important;
    width: 62% !important; max-width: 300px !important;
    margin: 0 auto 0 0 !important;
    background: rgba(255,255,255,0.95) !important;
    border: 1px solid var(--color-border-subtle) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: var(--shadow-md) !important;
    padding: var(--space-4) !important;
    text-align: left !important;
  }
  .ld-hero__content h1, .ld-hero__content .ld-lead { text-shadow: none !important; }
  .ld-hero h1 { font-size: clamp(1.05rem, 4.4vw, 1.5rem) !important; margin-bottom: var(--space-2) !important; }
  .ld-hero .ld-lead { font-size: var(--text-xs) !important; line-height: 1.4 !important; margin-bottom: var(--space-3) !important; }
  .ld-hero__actions.ld-hero__actions--row { flex-direction: column !important; align-items: stretch !important; gap: var(--space-2) !important; margin-top: var(--space-3) !important; flex-wrap: nowrap !important; }
  .ld-hero .ld-hero__actions--row .ld-btn { width: 100% !important; flex: 0 0 auto !important; font-size: var(--text-xs) !important; min-height: var(--btn-height-sm) !important; }
}

/* #1 — rozdzielenie slajdów hero po breakpoincie: ≤992 tylko mobilne (Twoje obrazy), ≥993 tylko desktop (hero-slider) */
@media (max-width: 992px) { .ld-fade-slider__slide:not(.is-hero-mobile) { display: none !important; } }
@media (min-width: 993px) { .ld-fade-slider__slide.is-hero-mobile { display: none !important; } }

/* #1 — header na home/mobile: jednolite frosted-białe tło od razu (nie gradient, nie dopiero po scrollu) */
@media (max-width: 992px) {
  .home .ld-header::before, .page-template-page-home .ld-header::before {
    background: rgba(255,255,255,0.72) !important;
    backdrop-filter: blur(6px) !important; -webkit-backdrop-filter: blur(6px) !important;
  }
  .home .ld-header, .page-template-page-home .ld-header { border-bottom-color: rgba(255,255,255,0.6) !important; }
}

/* #1 — hero mobile: obraz pełnoekranowy OD BRZEGU DO BRZEGU (100vw, wyłamany z paddingu kontenera) + niższy hero,
   kadr: tort z prawej, tło ciągnie się z lewej. */
@media (max-width: 992px) {
  .ld-hero__inner { min-height: 46vh !important; }
  .ld-hero__art--slider {
    position: absolute !important;
    top: 0 !important; bottom: 0 !important;
    left: 50% !important; right: auto !important;
    transform: translateX(-50%) !important;
    width: 100vw !important; max-width: 100vw !important; height: 100% !important;
  }
  .ld-hero__art--slider .ld-fade-slider__slide img {
    width: 100% !important; height: 100% !important;
    object-fit: cover !important; object-position: right center !important;
  }
}

/* #1 — obraz hero zaczyna się POD różowym paskiem (nie chowamy góry zdjęcia za nieprzezroczystym paskiem) */
@media (max-width: 992px) {
  .ld-hero__art--slider { top: var(--notice-height, 45px) !important; bottom: 0 !important; height: auto !important; }
}

/* #1 — hero mobile: pokazujemy CAŁY obraz (tort mniejszy, wpasowanie na wysokość, edge-to-edge).
   Wysokość art = szerokość ekranu × proporcje obrazu (1000×839 → 0.839). Karta zwarta, mieści się w kadrze. */
@media (max-width: 992px) {
  .ld-hero__inner {
    min-height: 0 !important;
    padding-block-start: calc(var(--topbar-height) + var(--notice-height) + var(--space-2)) !important;
    padding-block-end: var(--space-2) !important;
  }
  .ld-hero__art--slider {
    top: var(--notice-height, 45px) !important; bottom: auto !important;
    left: 50% !important; transform: translateX(-50%) !important;
    width: 100vw !important; height: calc(100vw * 839 / 1000) !important;
  }
  .ld-hero__art--slider .ld-fade-slider__slide img { object-fit: cover !important; object-position: center right !important; }
  /* karta zwarta, żeby zmieściła się w niższym kadrze */
  .ld-hero__content { padding: var(--space-3) var(--space-4) !important; }
  .ld-hero h1 { font-size: 1.05rem !important; line-height: 1.15 !important; margin-bottom: var(--space-1) !important; }
  .ld-hero .ld-lead { font-size: 11px !important; line-height: 1.35 !important; margin-bottom: var(--space-2) !important; }
  .ld-hero__actions.ld-hero__actions--row { margin-top: var(--space-2) !important; gap: 6px !important; }
  .ld-hero .ld-hero__actions--row .ld-btn { min-height: 34px !important; font-size: 11px !important; }
}

/* #1 — obraz wypełnia od samej góry (y=0), generowana góra wchodzi pod różowy pasek (zapas w obrazie).
   Dół kadru bez zmian → art wyższy o wysokość paska. */
@media (max-width: 992px) {
  .ld-hero__art--slider {
    top: 0 !important; bottom: auto !important;
    height: calc(100vw * 839 / 1000 + var(--notice-height, 45px)) !important;
  }
  .ld-hero__art--slider .ld-fade-slider__slide img { object-position: center right !important; }
}

/* #1 — TEST wersja wysoka: hero 60vh, cover, kadr na tort z prawej (podgląd do decyzji) */
@media (max-width: 992px) {
  .ld-hero__inner { min-height: 60vh !important; padding-block-start: calc(var(--topbar-height) + var(--notice-height) + var(--space-3)) !important; padding-block-end: var(--space-4) !important; }
  .ld-hero__art--slider { top: 0 !important; bottom: 0 !important; height: auto !important; left: 50% !important; transform: translateX(-50%) !important; width: 100vw !important; }
  .ld-hero__art--slider .ld-fade-slider__slide img { object-fit: cover !important; object-position: 82% 55% !important; }
}

/* #1 — karta z treścią wyśrodkowana pionowo w hero (poniżej headera) */
@media (max-width: 992px) {
  .ld-hero__inner {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    padding-block-start: calc(var(--topbar-height) + var(--notice-height)) !important;
    padding-block-end: var(--space-4) !important;
  }
}

/* #1 — kadr trzyma cały tort z prawej (bez ucięcia), przycinamy lewe tło (zapas) */
@media (max-width: 992px) {
  .ld-hero__art--slider .ld-fade-slider__slide img { object-position: 100% 50% !important; }
}

/* #1 — hero wykorzystuje pełną wysokość ekranu na mobile (pionowe obrazy) */
@media (max-width: 992px) {
  .ld-hero__inner { min-height: calc(100vh - var(--notice-height, 45px)) !important; }
}

/* #1 — hero = 100svh − wysokość sekcji z 4 cechami (hero + cechy mieszczą się w jednym ekranie) */
@media (max-width: 992px) {
  .ld-hero__inner { min-height: calc(100vh - 134px) !important; }
  .ld-hero__inner { min-height: calc(100svh - 134px) !important; }
}

/* #1 — karta u góry (nie zasłania tortu), tort kadrowany do prawego-dołu */
@media (max-width: 992px) {
  .ld-hero__inner { justify-content: flex-start !important; }
  .ld-hero__art--slider .ld-fade-slider__slide img { object-position: right bottom !important; }
}

/* #1 — tort mały: cały obraz (contain) dokowany prawy-dół, zapas wysokości = kremowe tło (jak w obrazie) */
@media (max-width: 992px) {
  .ld-hero__art--slider { background: #efe7db !important; }
  .ld-hero__art--slider .ld-fade-slider__slide { background: #efe7db !important; }
  .ld-hero__art--slider .ld-fade-slider__slide img { object-fit: contain !important; object-position: right bottom !important; }
}

/* #1 — spacing karty hero: pod nagłówkiem 24px, pod tekstem 24px (przed przyciskami) */
@media (max-width: 992px) {
  .ld-hero__content h1 { margin-bottom: 24px !important; }
  .ld-hero__content .ld-lead { margin-bottom: 24px !important; }
  .ld-hero__content .ld-hero__actions.ld-hero__actions--row { margin-top: 0 !important; }
}

/* #1 — spacing karty: pod nagłówkiem 20px (korekta z 24) */
@media (max-width: 992px) {
  .ld-hero__content h1 { margin-bottom: 20px !important; }
}

/* #1 — karta do lewej i wyśrodkowana PIONOWO w sekcji (nie w górnym rogu) */
@media (max-width: 992px) {
  .ld-hero__inner { justify-content: center !important; align-items: flex-start !important; }
}

/* #1 — hero „pod kartę": min-height = wysokość karty + 24px (od headera do nagłówka) + 24px u dołu (koniec pustego kremowego pasa nad kartą) */
@media (max-width: 992px) {
  .ld-hero__inner {
    min-height: 0 !important;
    justify-content: flex-start !important;
    padding-block-start: calc(var(--topbar-height) + var(--notice-height) + 24px) !important;
    padding-block-end: 24px !important;
  }
}

/* #1 — hero: wysokość 100svh − sekcja cech (wypełnia ekran) + min-height = karta+24/24 jako floor na dziwne proporcje.
   min-height rośnie do treści (karta+padding), więc gdy 100svh-134 < karta+48, hero urasta do karty — karta nigdy zgnieciona. */
@media (max-width: 992px) {
  .ld-hero__inner {
    min-height: calc(100vh - 134px) !important;
    min-height: calc(100svh - 134px) !important;
    justify-content: center !important;
    padding-block-start: calc(var(--topbar-height) + var(--notice-height) + 24px) !important;
    padding-block-end: 24px !important;
  }
}

/* #1 — hero = 100svh − (sekcja cech 134px + dolny pasek mobilny fixed 60px) = 100svh − 194px,
   żeby sekcja z 4 cechami była CAŁA elegancko widoczna NAD paskiem (nie chowała się za nim). */
@media (max-width: 992px) {
  .ld-hero__inner {
    min-height: calc(100vh - 194px) !important;
    min-height: calc(100svh - 194px) !important;
  }
}

/* #1 — obraz hero wyśrodkowany pionowo (był right bottom; obraz 002 wydawał się za wysoko, jest zapas na center) */
@media (max-width: 992px) {
  .ld-hero__art--slider .ld-fade-slider__slide img { object-position: center center !important; }
}

/* #1 — tort niżej w kadrze: obraz dokowany do dołu (był center, tort wydawał się za wysoko) */
@media (max-width: 992px) {
  .ld-hero__art--slider .ld-fade-slider__slide img { object-position: center bottom !important; }
}

/* #1 — ZABEZPIECZENIE: telefon portret (≤480) = contain (obecny układ, tort mały, kremowe tło);
   tablet / obrócony telefon (481–992) = COVER, żeby nie było kremowych pasków po bokach obrazu. */
@media (min-width: 481px) and (max-width: 992px) {
  .ld-hero__art--slider .ld-fade-slider__slide img { object-fit: cover !important; object-position: center !important; }
}

/* ozdobnik pod H1 (serduszko z kreseczkami) — tylko mobile (desktop bez zmian) */
.ld-hero__divider { display: none; }

/* ======================================================================
   HERO MOBILE 2026-08-20 — NOWY UKŁAD (dopłata klientki, tylko ≤992px):
   WARSTWY (od tyłu): akwarela (::before hero) → BIAŁA APLA (::before inner)
   → TORT (przezroczysty PNG/WEBP) → TEKST + BUTTONY.
   Apla wchodzi od lewej krawędzi ekranu, zakończona kolistym prawym brzegiem.
   Tort jest NAD aplą, ale POD tekstem/buttonami (gdy zachodzą).
   Kontener tortu: bez przycinania, bez cienia, bez tła.
   Desktop (≥993px) nietknięty. Blok autorytatywny — nadpisuje starsze #1.
   ====================================================================== */
@media (max-width: 992px) {
  /* akwarela mocniej widoczna, bo tort już nie zasłania całej sekcji */
  .ld-hero::before { opacity: 0.6 !important; }
  .ld-hero::after { background: linear-gradient(to bottom, rgba(250,246,248,0) 60%, rgba(250,246,248,0.85) 100%) !important; }

  .ld-hero__inner {
    display: block !important;
    position: relative !important;
    isolation: isolate !important;
    min-height: 0 !important;
    width: 100% !important; max-width: 100% !important;
    /* cała sekcja 30px wyżej: mniej górnego paddingu (tekst ma zapas od headera) → oddech na dole sekcji */
    padding-block-start: calc(var(--topbar-height) + var(--notice-height) + var(--space-5) - 30px) !important;
    padding-block-end: var(--space-9) !important;
  }

  /* WARSTWA 1 — BIAŁA APLA (osobny pseudo-element, pod tortem). Kształt JAJA z lekkim skewem w prawo,
     wchodzi od lewej krawędzi, schodzi WYRAŹNIE poniżej buttonów (dół buttonów nie może pokrywać się z brzegiem apli). */
  .ld-hero__inner::before {
    content: '' !important;
    position: absolute !important;
    z-index: 1 !important;
    /* górka jaja delikatnie wsuwa się POD header (–28px) + cała sekcja 30px wyżej = –58px */
    top: calc(var(--topbar-height) + var(--notice-height) - 58px) !important;
    /* jajo niższe + mniej wystaje spod buttonów: podniesiony dolny brzeg */
    bottom: 34px !important;
    /* większe jajo z bleedem w LEWO poza sekcję (prawy bok bez zmian: right_edge = 66vw) */
    left: calc(50% - 50vw - 70px) !important;
    width: calc(66vw + 70px) !important; max-width: 430px !important;
    background: rgba(255,255,255,0.95) !important;
    /* PEŁNE JAJO — wszystkie rogi zaokrąglone (lekko asymetryczne); lewy bok wychodzi poza ekran,
       tort po prawej zostaje na akwareli = kontrast */
    border-radius: 46% 54% 54% 46% / 52% 56% 44% 48% !important;
    transform: skewX(-5deg) !important;
    transform-origin: center !important;
    box-shadow: 0 8px 22px rgba(120,70,70,0.10) !important;
    pointer-events: none !important;
  }

  /* WARSTWA 2 — TORT: nad aplą, dokowany do PRAWEGO brzegu ekranu, BEZ tła/kadrowania/cienia */
  .ld-hero__art--slider {
    position: absolute !important;
    z-index: 2 !important;
    top: calc(var(--topbar-height) + var(--notice-height) + var(--space-2) - 30px) !important;
    bottom: var(--space-3) !important;
    /* dosunięty w prawo (bleed), żeby NIE nachodził na tekst, a pozostał duży */
    right: -48px !important; left: auto !important;
    transform: none !important;
    width: 66vw !important; max-width: 66vw !important;
    height: auto !important;
    aspect-ratio: auto !important;
    background: none !important;
    overflow: visible !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    filter: none !important;
  }
  .ld-hero__art--slider .ld-fade-slider,
  .ld-hero__art--slider .ld-fade-slider__slide {
    background: none !important; border-radius: 0 !important;
    overflow: visible !important; box-shadow: none !important; height: 100% !important;
  }
  .ld-hero__art--slider .ld-fade-slider__slide img {
    width: 100% !important; height: 100% !important; max-width: none !important;
    object-fit: contain !important; object-position: right bottom !important;
    filter: none !important; box-shadow: none !important; border-radius: 0 !important;
  }

  /* WARSTWA 3 — TEKST + BUTTONY: nad tortem, tło przezroczyste (apla rysuje się pseudo-elementem pod spodem) */
  .ld-hero__content {
    position: relative !important;
    z-index: 3 !important;
    width: 46vw !important; max-width: 232px !important;
    margin: 0 !important;
    margin-left: calc(50% - 50vw) !important;
    padding: var(--space-6) var(--space-2) var(--space-6) 28px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important; backdrop-filter: none !important;
    text-align: left !important;
  }
  .ld-hero__content h1, .ld-hero__content .ld-lead, .ld-hero__content .ld-eyebrow { text-shadow: none !important; }
  /* H1 szerszy niż reszta treści (u góry tort nie nachodzi) → „jadalne na Twój tort" w jednej linii */
  .ld-hero h1 { font-size: clamp(0.95rem, 4.1vw, 1.4rem) !important; line-height: 1.15 !important; margin-bottom: var(--space-2) !important; hyphens: none !important; }
  .ld-hero__content h1 { width: 48vw !important; max-width: 240px !important; }
  .ld-hero__content h1 .ld-nowrap { white-space: nowrap !important; }
  /* ozdobnik pod H1: złote kreseczki + serce, wyrównany do lewej */
  .ld-hero__content .ld-hero__divider { display: flex !important; align-items: center; gap: 8px; color: var(--color-accent); margin: 0 0 var(--space-3) 0; }
  .ld-hero__content .ld-hero__divider-line { flex: 0 0 auto; width: 40px; height: 1px; background: currentColor; border-radius: 2px; }
  .ld-hero__content .ld-hero__divider svg { display: block; fill: currentColor; }
  /* body mniejszy + dwa osobne akapity jak na wizualizacji (intro + zaakcentowany komunikat) */
  .ld-hero .ld-lead { font-size: 11px !important; line-height: 1.4 !important; margin: 0 0 var(--space-2) 0 !important; }
  .ld-hero .ld-lead--accent { margin: 0 0 var(--space-3) 0 !important; }
  .ld-hero .ld-lead--accent strong { font-weight: var(--font-weight-bold) !important; }
  .ld-hero__actions.ld-hero__actions--row { flex-direction: column !important; align-items: stretch !important; gap: var(--space-2) !important; margin-top: 0 !important; flex-wrap: nowrap !important; }
  .ld-hero .ld-hero__actions--row .ld-btn { width: 100% !important; flex: 0 0 auto !important; font-size: var(--text-xs) !important; min-height: var(--btn-height-sm) !important; }
  /* strzałka nie może dotykać/nachodzić na tekst — label zawija się (jak w makiecie), min. 8px odstępu do strzałki */
  .ld-hero .ld-hero__actions--row .ld-btn--hero { gap: 8px !important; min-height: 46px !important; align-items: center !important; }
  .ld-hero .ld-hero__actions--row .ld-btn--hero .ld-btn__label { white-space: normal !important; line-height: 1.12 !important; padding-right: 8px !important; overflow: visible !important; }
  .ld-hero .ld-hero__actions--row .ld-btn--hero .ld-btn__arrow { flex: 0 0 auto !important; margin-left: 0 !important; }
}
/* neutralizacja starej reguły cover 481–992 — tort ma być przezroczysty, na wysokość, bez cieni */
@media (min-width: 481px) and (max-width: 992px) {
  .ld-hero__art--slider .ld-fade-slider__slide img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: contain !important; object-position: right bottom !important; filter: none !important; }
}

/* #13 — komunikat koszyka: osobny wiersz tabeli, pełna szerokość (poza flexową komórką .actions) */
.ld-cart-notices-row td { padding: 0 0 var(--space-3) !important; border: none !important; }
.ld-cart-notices-row .ld-cart-notices-slot { width: 100% !important; display: block !important; }

/* #14 — kafelek sklepu kompaktowy na mobile: button bliżej ceny (więcej kafelków w widoku) */
@media (max-width: 480px) {
  .ld-prod-card__body { padding: var(--space-3) !important; gap: var(--space-1) !important; }
  .ld-prod-card__name { font-size: var(--text-sm) !important; margin-bottom: var(--space-1) !important; line-height: 1.2 !important; }
  .ld-prod-card__cta { margin-top: var(--space-1) !important; padding-top: var(--space-2) !important; }
  .ld-prod-card__cta .button, .ld-prod-card__cta a.button { padding: var(--space-2) var(--space-3) !important; font-size: var(--text-xs) !important; }
}
/* #14 — mniejszy padding nad kategoriami na mobile (do 24px) */
@media (max-width: 768px) {
  .ld-page-head { padding-block-end: 24px !important; }
  .ld-section.ld-woo { padding-top: 24px !important; }
}

/* #14 — kafelek: button tuż przy cenie (body nie rozciąga się na całą wysokość) */
@media (max-width: 480px) {
  .ld-prod-card__body { flex: 0 0 auto !important; }
  .ld-prod-card__cta { margin-top: var(--space-1) !important; }
}

/* #16 — produkt mobile (przebudowa wg klientki): nazwa+cena w lewej kolumnie NAD obrazem,
   obraz wyższy (3/4), opcje w prawej kolumnie, wartości atrybutów POD etykietami. */
@media (max-width: 768px) {
  .woocommerce div.product { grid-template-columns: 0.82fr 1.18fr !important; column-gap: var(--space-3) !important; row-gap: var(--space-2) !important; align-items: start !important; }
  .ld-mobile-product-head { display: block !important; grid-column: 1 !important; grid-row: 1 !important; margin: 0 !important; }
  .ld-mobile-product-head__title { font-size: var(--text-md) !important; line-height: 1.15 !important; margin-bottom: 2px !important; }
  .ld-mobile-product-head__price { font-size: var(--text-md) !important; }
  .woocommerce div.product div.images { grid-column: 1 !important; grid-row: 2 !important; }
  .woocommerce div.product div.images img { aspect-ratio: 3 / 4 !important; object-fit: cover !important; width: 100% !important; height: auto !important; border-radius: var(--radius-lg) !important; }
  .woocommerce div.product div.summary { grid-column: 2 !important; grid-row: 1 / span 2 !important; }
  .woocommerce div.product form.cart .variations tr { flex-direction: column !important; align-items: stretch !important; gap: 4px !important; }
  .woocommerce div.product form.cart .variations td.label { white-space: normal !important; width: 100% !important; }
  .woocommerce div.product form.cart .variations td.value { width: 100% !important; }
  .woocommerce div.product form.cart .variations select { font-size: var(--text-xs) !important; width: 100% !important; padding: 8px 10px !important; }
  .luna-swatches { flex-wrap: wrap !important; align-items: flex-start !important; }
  .luna-swatches__label { flex-basis: 100% !important; margin: 0 0 4px 0 !important; }
}

/* #16 — korekta siatki: obraz tuż pod nazwą/ceną w lewej kolumnie (opcje w prawej nie rozpychają wierszy) */
@media (max-width: 768px) {
  .woocommerce div.product { grid-auto-rows: min-content !important; align-items: start !important; }
  .woocommerce div.product div.summary { grid-row: 1 / span 20 !important; align-self: start !important; }
  .woocommerce div.product div.images { align-self: start !important; }
}

/* #16 — ukryj zdublowany pusty wiersz „Kolor" (pa_kolor select zastąpiony swatchami u góry) + mniejszy font dropdownu */
@media (max-width: 768px) {
  .woocommerce div.product form.cart .variations tr:has(select[name^="attribute_pa_kolor"]) { display: none !important; }
  .woocommerce div.product form.cart .variations td.value select,
  .woocommerce div.product form.cart table.variations select { font-size: 13px !important; }
}

/* #16 — korekta: obraz wyższy, nagłówek równo z górą formularza (usuwam margin-top form), mniejsze fonty */
@media (max-width: 768px) {
  .woocommerce div.product div.images img { aspect-ratio: 3 / 4.5 !important; }
  .woocommerce div.product form.cart { margin-top: 0 !important; }
  .woocommerce div.product div.summary { padding-top: 0 !important; }
  .ld-mobile-product-head { margin-top: 0 !important; padding-top: 0 !important; }
  .ld-mobile-product-head__title { font-size: var(--text-sm) !important; margin-bottom: 2px !important; }
  .ld-mobile-product-head__price { font-size: var(--text-sm) !important; }
  .woocommerce div.product form.cart .variations td.label label,
  .luna-swatches__label { font-size: var(--text-sm) !important; }
}

/* #14 — poprawny wzorzec: button wyrównany do DOŁU karty (cta flex-grow + justify-end), obraz jednolity → małe/równe odstępy */
@media (max-width: 480px) {
  .ld-prod-card__img { aspect-ratio: 1 / 1 !important; }
  .ld-prod-card__thumb, .ld-prod-card__hover-img { height: 100% !important; object-fit: cover !important; }
  .ld-prod-card__body { flex: 1 1 auto !important; display: flex !important; flex-direction: column !important; padding: var(--space-3) !important; gap: var(--space-1) !important; }
  .ld-prod-card__cta { flex: 1 1 auto !important; display: flex !important; flex-direction: column !important; justify-content: flex-end !important; margin-top: var(--space-2) !important; padding-top: 0 !important; }
}

/* #14 — rezerwa 2 linii na nazwę → karty równej wysokości → mały, równy odstęp cena↔button (button i tak do dołu) */
@media (max-width: 480px) {
  .ld-prod-card__name { min-height: 2.4em !important; display: flex !important; align-items: center !important; justify-content: center !important; }
  .ld-prod-card__cta { margin-top: var(--space-1) !important; }
}

/* #16 — kompaktowy formularz produktu (mniejsze fonty + ciaśniejsze odstępy) + LEWE wyrównanie zawartości */
@media (max-width: 768px) {
  /* lewe wyrównanie */
  .woocommerce div.product div.summary { text-align: left !important; }
  .woocommerce div.product form.cart .variations td.label,
  .woocommerce div.product form.cart .variations td.label label,
  .woocommerce div.product form.cart .variations td.value,
  .luna-swatches, .luna-swatches__label,
  .ld-personalization, .ld-personalization legend, .ld-product-benefits__title { text-align: left !important; }
  /* mniejsze fonty */
  .woocommerce div.product div.summary { font-size: var(--text-sm) !important; }
  .woocommerce div.product form.cart .variations td.label label,
  .luna-swatches__label { font-size: var(--text-xs) !important; }
  .woocommerce div.product form.cart .variations select { font-size: 12px !important; padding: 6px 8px !important; }
  .luna-swatch { font-size: var(--text-xs) !important; padding: 4px 8px !important; }
  .luna-swatch__dot { width: 13px !important; height: 13px !important; }
  .ld-personalization legend { font-size: var(--text-sm) !important; }
  .ld-personalization label, .ld-field label { font-size: var(--text-xs) !important; }
  .ld-personalization input, .ld-personalization textarea, .ld-field input, .ld-field textarea { font-size: 13px !important; padding: 8px 10px !important; }
  .ld-product-benefits__title { font-size: var(--text-sm) !important; }
  .ld-product-benefits__list li, .ld-size-guide__list li, .ld-size-guide__help { font-size: var(--text-xs) !important; }
  /* ciaśniejsze odstępy */
  .woocommerce div.product form.cart.cart { gap: var(--space-3) !important; }
  .woocommerce div.product form.cart .single_variation_wrap { gap: var(--space-3) !important; }
  .woocommerce div.product form.cart .variations { gap: var(--space-2) !important; }
  .ld-personalization { padding: var(--space-3) !important; }
  .ld-field { margin-bottom: var(--space-2) !important; }
  .ld-product-benefits, .ld-size-guide { margin-bottom: var(--space-2) !important; }
}

/* #16 — „Jaki rozmiar wybrać?" mniejsze + mniejszy odstęp od elementu nad (mobile) */
@media (max-width: 768px) {
  .ld-size-guide { padding: var(--space-2) var(--space-3) !important; margin-top: calc(-1 * var(--space-1)) !important; }
  .ld-size-guide__summary { font-size: var(--text-sm) !important; }
  .ld-size-guide__summary::before { font-size: var(--text-sm) !important; }
}

/* #16 — SPÓJNE etykiety atrybutów: „Kolor" i „Szerokość" identyczne (font/rozmiar/waga/lewo) + mniejsze „Jaki rozmiar" */
@media (max-width: 768px) {
  .woocommerce div.product form.cart .variations td.label label,
  .luna-swatches__label {
    font-family: var(--font-primary) !important;
    font-size: var(--text-sm) !important;
    font-weight: var(--font-weight-bold) !important;
    color: var(--color-text-primary) !important;
    text-align: left !important;
    line-height: 1.3 !important;
    margin: 0 0 var(--space-1) 0 !important;
    display: block !important;
  }
  .woocommerce div.product .ld-size-guide__summary { font-size: var(--text-sm) !important; font-weight: var(--font-weight-semibold) !important; }
}

/* #16 — globalnie (też desktop): ukryj zdublowany pusty wiersz „Kolor" (pa_kolor select zastąpiony swatchami) */
.woocommerce div.product form.cart .variations tr:has(select[name^="attribute_pa_kolor"]) { display: none !important; }

/* #16 — mniejszy odstęp Kolor(swatche) ↔ Szerokość na mobile */
@media (max-width: 768px) {
  .luna-swatches { margin-bottom: var(--space-1) !important; }
  .woocommerce div.product form.cart .variations { margin-top: 0 !important; }
  .woocommerce div.product form.cart.cart { gap: var(--space-2) !important; }
}

/* #16 — mniejszy odstęp „Pik do wbicia" ↔ „Jaki rozmiar wybrać?" na mobile */
@media (max-width: 768px) {
  .luna-pik-addon { margin-bottom: var(--space-1) !important; margin-top: 0 !important; }
}

/* #16 — mniejszy odstęp „Jaki rozmiar wybrać?" ↔ „PERSONALIZACJA" na mobile */
@media (max-width: 768px) {
  .ld-size-guide { margin-bottom: var(--space-1) !important; }
}

/* #16 — miejsce na zdjęcie WYŻSZE na mobile (galeria main-wrap 4/5 → 2/3) */
@media (max-width: 768px) {
  .luna-pgallery__main-wrap { aspect-ratio: 2 / 3 !important; }
  .luna-pgallery__main-img, .luna-pgallery__main-wrap img, .luna-pgallery__main-wrap .ld-img-placeholder { width: 100% !important; height: 100% !important; object-fit: cover !important; }
}

/* #16 — pole ilości nie wystaje poza kolumnę na mobile (skrócone + kontener się kurczy) */
@media (max-width: 768px) {
  .woocommerce div.product form.cart .quantity { flex-shrink: 1 !important; max-width: 100% !important; }
  .woocommerce div.product form.cart .quantity input.qty,
  .woocommerce div.product form.cart input.qty { width: 78px !important; max-width: 100% !important; min-width: 0 !important; box-sizing: border-box !important; }
}

/* #16 — jeszcze mniejsze odstępy nad/pod „Jaki rozmiar wybrać?" i „Co otrzymasz?" na mobile */
@media (max-width: 768px) {
  .ld-size-guide { margin-top: calc(-1 * var(--space-1)) !important; margin-bottom: calc(-1 * var(--space-1)) !important; }
  .ld-product-benefits { margin-top: calc(-1 * var(--space-1)) !important; margin-bottom: calc(-1 * var(--space-1)) !important; padding-top: 0 !important; }
  .ld-product-benefits__title { margin-bottom: var(--space-1) !important; }
}

/* ===== UWAGI KLIENTKI — sekcje strony głównej (mobile) ===== */
/* #3 — bestsellery jako przewijany pasek w jednej linii */
@media (max-width: 768px) {
  .ld-bestsellers-grid {
    display: flex !important; grid-template-columns: none !important; flex-wrap: nowrap !important;
    overflow-x: auto !important; gap: var(--space-3) !important; margin-top: var(--space-6) !important;
    scroll-snap-type: x mandatory !important; -webkit-overflow-scrolling: touch !important;
    padding-bottom: var(--space-2) !important;
  }
  .ld-bestsellers-grid > li.product { flex: 0 0 62% !important; min-width: 0 !important; scroll-snap-align: start !important; }
}
/* #4 — „Prosto i wygodnie" kroki w jednej linii (3 obok siebie, opisy ukryte na mobile) */
@media (max-width: 768px) {
  .ld-section--elevated .ld-grid--3.ld-steps, .ld-grid--3.ld-steps {
    grid-template-columns: repeat(3, 1fr) !important; max-width: none !important; margin-inline: 0 !important; gap: var(--space-2) !important;
  }
  .ld-steps .ld-feature__icon { width: 38px !important; height: 38px !important; font-size: var(--text-base) !important; margin-bottom: var(--space-2) !important; }
  .ld-steps .ld-feature h3 { font-size: 12px !important; line-height: 1.2 !important; margin-bottom: 0 !important; }
  .ld-steps .ld-feature p { display: none !important; }
}
/* #2 — mniejsze kafelki okazji (klientka: „zmniejszyłabym JESZCZE widok kafelek") */
@media (max-width: 768px) {
  .ld-cat-grid { column-gap: 12px !important; row-gap: 28px !important; margin-top: var(--space-6) !important; }
  .ld-cat-card { padding: calc(20px + var(--space-2)) var(--space-2) var(--space-2) !important; }
  .ld-cat-card__icon { width: 44px !important; height: 44px !important; top: -20px !important; border-width: 2px !important; }
  .ld-cat-card__name { font-size: var(--text-xs) !important; line-height: 1.2 !important; }
}

/* #6/7/8/9 — zmniejszenie sekcji (mobile) */
@media (max-width: 768px) {
  /* #6 Realizacje */
  .ld-realizacje-inner { margin-top: var(--space-6) !important; }
  .ld-realizacje-slider__slide { aspect-ratio: 4 / 3 !important; }
  .ld-realizacje-text { gap: var(--space-3) !important; }
  /* #7 Opinie */
  .ld-section--reviews { padding-block: 28px !important; }
  .ld-reviews-wrap { margin-top: var(--space-4) !important; }
  /* #8 O Olbrand — zdjęcie + tekst w jednej linii (2 kolumny) + mniej paddingu */
  .ld-section--about { padding-block-start: 28px !important; padding-block-end: 28px !important; }
  .ld-section--about .ld-grid--2 { grid-template-columns: 1.15fr 0.85fr !important; column-gap: var(--space-3) !important; row-gap: var(--space-3) !important; align-items: center !important; max-width: 100% !important; }
  .ld-section--about .ld-hero__art { order: 2 !important; }
  .ld-section--about .ld-grid--2 > div:first-child { text-align: left !important; }
  .ld-section--about .ld-grid--2 > div:first-child .ld-eyebrow { justify-content: flex-start !important; }
  /* #9 Współpraca (CTA) */
  .ld-section--cta { padding-block: 28px !important; }
  /* ogólnie mniejsze nagłówki sekcji */
  .ld-section h2 { font-size: var(--text-2xl) !important; }
}

/* #8 — O Olbrand: 2-col na mobile się nie sprawdził (łamał nagłówek) → wracamy do pionu, kompaktowo */
@media (max-width: 768px) {
  .ld-section--about .ld-grid--2 { grid-template-columns: 1fr !important; }
  .ld-section--about .ld-hero__art { order: 1 !important; }
  .ld-section--about .ld-grid--2 > div:first-child { text-align: center !important; }
  .ld-section--about .ld-grid--2 > div:first-child .ld-eyebrow { justify-content: center !important; }
}

/* #18 — archiwum Realizacji: min 4 kafelki na mobile (2 kolumny też ≤480) + kompaktowe karty */
@media (max-width: 480px) {
  .ld-realizacje-grid { grid-template-columns: repeat(2, 1fr) !important; gap: var(--space-3) !important; }
  .ld-real-card__body { padding: var(--space-2) !important; }
  .ld-real-card__title { font-size: var(--text-sm) !important; line-height: 1.2 !important; }
  .ld-real-card__subtitle, .ld-real-card__material { font-size: var(--text-xs) !important; }
}

/* #10 — „czarny pasek" = ciemny footer: zdecydowanie mniejszy na mobile */
@media (max-width: 768px) {
  .ld-footer { padding-block: var(--space-8) var(--space-5) !important; }
  .ld-footer__cols { grid-template-columns: 1fr 1fr !important; column-gap: var(--space-6) !important; row-gap: var(--space-5) !important; }
  .ld-footer__brand { grid-column: 1 / -1 !important; }
  .ld-footer__logo { max-width: 130px !important; margin-bottom: var(--space-2) !important; padding-bottom: var(--space-2) !important; }
  .ld-footer h4 { font-size: var(--text-sm) !important; margin-bottom: var(--space-2) !important; }
  .ld-footer__cols ul { gap: var(--space-1) !important; }
  .ld-footer__cols a, .ld-footer__cols li { font-size: var(--text-sm) !important; }
  .ld-footer__bottom { margin-top: var(--space-5) !important; padding-top: var(--space-3) !important; font-size: var(--text-xs) !important; }
}

/* #11 — baner „Masz własny pomysł?" na stronie sklepu (klik → kontakt) + ukrycie czarnego „Sklep" */
.ld-shop-cta-banner { display: flex; align-items: center; gap: var(--space-8); background: linear-gradient(120deg, #FDF5F7 0%, #F7DCE6 52%, #F0C6D6 100%); border-radius: var(--radius-2xl); padding: var(--space-8) var(--space-10); margin-bottom: var(--space-8); text-decoration: none; color: var(--color-text-primary); box-shadow: var(--shadow-sm); overflow: hidden; transition: box-shadow var(--duration-normal) var(--ease-default), transform var(--duration-normal) var(--ease-default); }
.ld-shop-cta-banner:hover { box-shadow: var(--shadow-md); transform: translateY(-2px); }
.ld-shop-cta-banner__text { flex: 1; min-width: 0; }
.ld-shop-cta-banner__title { font-family: var(--font-heading); font-size: var(--text-3xl); margin: 0 0 var(--space-3); color: var(--color-primary); }
.ld-shop-cta-banner__desc { font-size: var(--text-md); color: var(--color-text-secondary); margin: 0 0 var(--space-4); max-width: 520px; }
.ld-shop-cta-banner__list { list-style: none; margin: 0 0 var(--space-4); padding: 0; display: flex; gap: var(--space-6); flex-wrap: wrap; }
.ld-shop-cta-banner__list li { position: relative; padding-left: var(--space-6); font-weight: var(--font-weight-semibold); color: var(--color-primary); }
.ld-shop-cta-banner__list li::before { content: '✓'; position: absolute; left: 0; color: var(--color-rose); font-weight: 700; }
.ld-shop-cta-banner__cta { display: inline-flex; align-items: center; gap: var(--space-2); font-weight: var(--font-weight-bold); color: var(--color-rose); }
.ld-shop-cta-banner__visual { position: relative; flex: 0 0 230px; aspect-ratio: 3 / 4; border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-md); }
.ld-shop-cta-banner__visual img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ld-shop-cta-banner__tag { position: absolute; bottom: var(--space-3); left: var(--space-3); background: rgba(255,255,255,0.92); color: var(--color-primary); font-weight: var(--font-weight-bold); font-size: var(--text-sm); padding: var(--space-1) var(--space-3); border-radius: var(--radius-full); }
@media (max-width: 768px) {
  .ld-shop-cta-banner { flex-direction: column; text-align: center; padding: var(--space-5); gap: var(--space-4); margin-bottom: var(--space-6); }
  .ld-shop-cta-banner__title { font-size: var(--text-2xl); }
  .ld-shop-cta-banner__desc { font-size: var(--text-sm); }
  .ld-shop-cta-banner__list { justify-content: center; gap: var(--space-4); }
  .ld-shop-cta-banner__visual { flex: 0 0 auto; width: 100%; max-width: 240px; aspect-ratio: 4 / 3; }
}
/* ukryj czarny nagłówek „Sklep" na stronie sklepu (baner go zastępuje) */
body.post-type-archive-product .ld-page-head .ld-eyebrow,
body.post-type-archive-product .ld-page-head > .ld-container > h1,
body.woocommerce-shop .ld-page-head .ld-eyebrow,
body.woocommerce-shop .ld-page-head h1 { display: none !important; }

/* #1 (hero 002) — per-slide kadr TYLKO dla obrazu 002 na mobile: cover od dołu (tort niżej, przycięte lampki u góry) */
@media (max-width: 992px) {
  .ld-fade-slider__slide img[src*="HERO-mobile_002"] { object-fit: cover !important; object-position: center bottom !important; }
}

/* #17 — kropki swatchy dla nowych kolorów: Czarny, Biały, Sklejka (a'la drewno) */
.luna-swatch__dot--czarny { background: #1a1a1a; }
.luna-swatch__dot--bialy { background: #ffffff; border: 1px solid #d4d4d4; }
.luna-swatch__dot--sklejka { background: linear-gradient(135deg, #e8c9a0 0%, #d2a679 42%, #e6c59b 55%, #c4915a 100%); }

/* #17 — swatche zwarte na mobile (kropka + nazwa, zawijają się) */
@media (max-width: 768px) {
  .luna-swatches { gap: var(--space-1) var(--space-2) !important; }
  .luna-swatch { padding: 3px 9px 3px 6px !important; font-size: 12px !important; gap: 6px !important; }
  .luna-swatch__dot { width: 13px !important; height: 13px !important; }
}

/* #11 — baner mobile: zwarty, mniejszy nagłówek, BEZ dolnego obrazu; różowy gradient nachodzi od góry na zdjęcie toppera w tle karty */
@media (max-width: 768px) {
  .ld-shop-cta-banner {
    background:
      linear-gradient(to bottom, #ecb0c7 0%, #efbcd0 40%, rgba(239,188,208,0.80) 70%, rgba(239,188,208,0.38) 100%),
      url('/wp-content/uploads/2026/08/HERO-mobile_001.jpg') center 32% / cover no-repeat !important;
    padding: var(--space-4) var(--space-5) var(--space-10) !important;
    gap: var(--space-2) !important;
    text-align: left !important;
    align-items: flex-start !important;
  }
  .ld-shop-cta-banner__visual { display: none !important; }
  .ld-shop-cta-banner__text { width: 100%; }
  .ld-shop-cta-banner__title { font-size: var(--text-xl) !important; margin-bottom: var(--space-2) !important; }
  .ld-shop-cta-banner__desc { font-size: var(--text-sm) !important; margin-bottom: var(--space-2) !important; max-width: none !important; }
  .ld-shop-cta-banner__list { justify-content: flex-start !important; gap: var(--space-2) var(--space-5) !important; margin-bottom: var(--space-2) !important; }
}

/* #11 — jaśniejszy, delikatniejszy róż (poprzedni za ciemny/agresywny) */
.ld-shop-cta-banner { background: linear-gradient(120deg, #FEF7F9 0%, #FAE8EF 55%, #F4D9E2 100%) !important; }
@media (max-width: 768px) {
  .ld-shop-cta-banner {
    background:
      linear-gradient(to bottom, #FCEDF2 0%, #F8E1EA 42%, rgba(248,225,234,0.70) 70%, rgba(248,225,234,0.30) 100%),
      url('/wp-content/uploads/2026/08/HERO-mobile_001.jpg') center 32% / cover no-repeat !important;
  }
}

/* #11 — podciągnięcie banera: padding-top sekcji sklepu = 0, margin-top banera = -10px */
body.post-type-archive-product .ld-section.ld-woo,
body.woocommerce-shop .ld-section.ld-woo { padding-top: 0 !important; }
.ld-shop-cta-banner { margin-top: -10px !important; }

/* #11 — baner NA WIERZCHU nad page-head (nachodzi na sekcję powyżej, nie chowa się pod nią) */
.ld-shop-cta-banner { position: relative !important; z-index: 5 !important; }

/* #11 — REDESIGN wg wizualizacji klientki: wąski szeroki baner (tekst / ptaszki w kółkach / grafika), nachodzi w POŁOWIE na page-head */
.ld-shop-cta-banner {
  display: flex !important; align-items: center !important; gap: var(--space-8) !important;
  background: linear-gradient(120deg, #FEF7F9 0%, #FBEAF0 58%, #F6DEE7 100%) !important;
  border-radius: var(--radius-xl) !important;
  padding: var(--space-5) var(--space-8) !important;
  margin-top: -70px !important; margin-bottom: var(--space-8) !important;
  position: relative !important; z-index: 5 !important;
  box-shadow: var(--shadow-md) !important; overflow: hidden !important;
}
.ld-shop-cta-banner__text { flex: 1 1 auto; min-width: 0; text-align: left; }
.ld-shop-cta-banner__title { font-family: var(--font-heading) !important; font-size: var(--text-2xl) !important; margin: 0 0 var(--space-2) !important; color: var(--color-rose) !important; }
.ld-shop-cta-banner__desc { font-size: var(--text-sm) !important; color: var(--color-text-secondary) !important; margin: 0 !important; max-width: 430px; }
.ld-shop-cta-banner__list { list-style: none; margin: 0 !important; padding: 0; display: flex !important; flex-direction: column !important; gap: var(--space-3) !important; flex: 0 0 auto; }
.ld-shop-cta-banner__list li { position: relative; padding-left: 30px !important; font-weight: var(--font-weight-semibold); color: var(--color-text-primary); white-space: nowrap; }
.ld-shop-cta-banner__list li::before { content: '✓'; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 21px; height: 21px; border-radius: 50%; background: var(--color-rose); color: #fff; font-size: 12px; line-height: 21px; text-align: center; }
.ld-shop-cta-banner__visual { position: relative; flex: 0 0 260px; aspect-ratio: 16 / 9 !important; border-radius: var(--radius-lg); overflow: hidden; box-shadow: none !important; }
.ld-shop-cta-banner__visual img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ld-shop-cta-banner__tag { position: absolute; bottom: var(--space-2); right: var(--space-2); left: auto; background: rgba(255,255,255,0.9); color: var(--color-primary); font-weight: var(--font-weight-bold); font-size: var(--text-xs); padding: 2px var(--space-2); border-radius: var(--radius-full); }
/* przywróć widoczny „Sklep" (jest na makiecie) */
body.post-type-archive-product .ld-page-head .ld-eyebrow, body.woocommerce-shop .ld-page-head .ld-eyebrow,
body.post-type-archive-product .ld-page-head h1, body.woocommerce-shop .ld-page-head h1 { display: block !important; }
/* mobile: baner z tłem-tortem wraca do pionu (nadpisuje redesign flex row) */
@media (max-width: 768px) {
  .ld-shop-cta-banner { flex-direction: column !important; align-items: flex-start !important; margin-top: -10px !important; padding: var(--space-4) var(--space-5) var(--space-10) !important; }
  .ld-shop-cta-banner__list { flex-direction: column !important; }
}

/* #11 — baner NA WIERZCHU nad page-head: sekcja sklepu wyżej w stackingu niż page-head */
body.post-type-archive-product .ld-page-head, body.woocommerce-shop .ld-page-head { position: relative; z-index: 1 !important; }
body.post-type-archive-product .ld-section.ld-woo, body.woocommerce-shop .ld-section.ld-woo { position: relative !important; z-index: 5 !important; }
.ld-shop-cta-banner { z-index: 20 !important; margin-top: -55px !important; }

/* #11 — baner POZA .ld-woo (overflow:hidden nie tnie nachodzenia); wrapper nad page-head */
.ld-shop-cta-wrap { position: relative; z-index: 20; }
.ld-shop-cta-banner { margin-top: -55px !important; margin-bottom: var(--space-6) !important; }
@media (max-width: 768px) { .ld-shop-cta-banner { margin-top: -14px !important; } }

/* #11 — akwarelowy efekt w tle banera (jak w banerze UGC realizacji) — desktop */
@media (min-width: 769px) {
  .ld-shop-cta-banner::before {
    content: ''; position: absolute; top: 50%; left: -50px; transform: translateY(-50%) rotate(-12deg);
    width: 300px; height: 360px;
    background: url('/wp-content/uploads/2026/06/Akwarelowa-plama_centrum_AdobeStock_566498531.png') center / contain no-repeat;
    opacity: 0.30; pointer-events: none; z-index: 0;
  }
  .ld-shop-cta-banner::after {
    content: ''; position: absolute; top: 50%; left: 42%; transform: translate(-50%,-50%) rotate(10deg);
    width: 260px; height: 300px;
    background: url('/wp-content/uploads/2026/06/Akwarelowa-plama_centrum_AdobeStock_566498531.png') center / contain no-repeat;
    opacity: 0.20; pointer-events: none; z-index: 0;
  }
  .ld-shop-cta-banner > * { position: relative; z-index: 1; }
}

/* #11 — sklep: w page-head TYLKO breadcrumbs (usuń OLBRAND + Sklep); baner nachodzi, ale nie zasłania breadcrumbs */
body.post-type-archive-product .ld-page-head .ld-eyebrow, body.woocommerce-shop .ld-page-head .ld-eyebrow,
body.post-type-archive-product .ld-page-head h1, body.woocommerce-shop .ld-page-head h1 { display: none !important; }
body.post-type-archive-product .ld-page-head, body.woocommerce-shop .ld-page-head { padding-block-end: 72px !important; }
.ld-shop-cta-banner { margin-top: -55px !important; }
@media (max-width: 768px) {
  body.post-type-archive-product .ld-page-head, body.woocommerce-shop .ld-page-head { padding-block-end: 52px !important; }
  .ld-shop-cta-banner { margin-top: -38px !important; }
}

/* #11 — grafika banera = przezroczysty tort (pływający, bez ramki, z cieniem) */
.ld-shop-cta-banner__visual { flex: 0 0 190px !important; aspect-ratio: auto !important; height: auto !important; background: none !important; box-shadow: none !important; border-radius: 0 !important; overflow: visible !important; display: flex !important; align-items: center; justify-content: center; }
.ld-shop-cta-banner__visual img { width: 100% !important; height: auto !important; max-height: 165px !important; object-fit: contain !important; filter: drop-shadow(0 6px 14px rgba(120,70,70,0.20)); }
@media (max-width: 768px) {
  .ld-shop-cta-banner { background: linear-gradient(120deg, #FEF7F9 0%, #FBEAF0 60%, #F4D9E2 100%) !important; flex-direction: column !important; align-items: flex-start !important; padding: var(--space-4) var(--space-5) !important; }
  .ld-shop-cta-banner__visual { display: flex !important; flex: 0 0 auto !important; width: 100% !important; margin-top: var(--space-1); }
  .ld-shop-cta-banner__visual img { max-height: 150px !important; }
  .ld-shop-cta-banner__list { flex-direction: column !important; }
}

/* #11 (mobile, prośba klientki 04.08) — tort JAKO TŁO banera (za treścią, nie osobnym blokiem pod nią).
   PNG tortu jest przezroczysty → kładziemy go na różowym tle, a welon gradientu wtapia go w tło i chroni
   czytelność tekstu (mocny róż w lewym-górnym rogu pod tekstem, przezroczysty w prawym-dolnym gdzie widać tort).
   Efekt: kompaktowy baner, tort delikatnie w tle. */
@media (max-width: 768px) {
  .ld-shop-cta-banner {
    background-color: #FBEAF0 !important;
    background-image:
      linear-gradient(150deg, rgba(253,242,246,0.96) 0%, rgba(251,232,239,0.88) 38%, rgba(248,224,233,0.58) 68%, rgba(246,222,231,0.22) 100%),
      url('/wp-content/uploads/2026/08/sklep-baner-tort.png') !important;
    background-repeat: no-repeat, no-repeat !important;
    background-position: center center, right bottom !important;
    background-size: auto, auto 72% !important;
    padding: var(--space-4) var(--space-5) var(--space-5) !important;
    min-height: 210px !important;
  }
  .ld-shop-cta-banner__visual { display: none !important; }
}

/* Baner „Masz własny pomysł?" — LŻEJSZY cień kontenera, zgodny z wytycznymi (--shadow-container = domyślny cień kontenerów/kart) i z kontenerami strony głównej. Nadpisuje cięższy --shadow-md z redesignu (l.2874). Hover = różowa poświata jak karty home. */
.ld-shop-cta-banner { box-shadow: var(--shadow-container) !important; }
.ld-shop-cta-banner:hover { box-shadow: 0 2px 10px rgba(196,104,122,0.35) !important; transform: translateY(-2px); }

/* ──────────────────────────────────────────────────────────────────────────
   SKLEP MOBILE — kompaktowy baner „Masz własny pomysł?" (prośba klientki 12.08.2026)
   Cel: zmniejszyć „okienko", żeby toppery były widoczne już w głównym widoku (fold).
   Zdejmujemy tort-tło + min-height 210px z 04.08, listę ptaszków i duży opis; zostaje
   niski pasek: tytuł + strzałka (sygnał klikalności) + krótki 2-liniowy opis. Gradient
   1:1 jak istniejący (l.2953). Desktop bez zmian.
   ────────────────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .ld-shop-cta-banner {
    background: linear-gradient(120deg, #FEF7F9 0%, #FBEAF0 60%, #F4D9E2 100%) !important;
    min-height: 0 !important;
    padding: var(--space-3) var(--space-5) !important;
    margin-bottom: var(--space-4) !important;
    gap: var(--space-1) !important;
  }
  .ld-shop-cta-banner__title {
    font-size: var(--text-lg) !important;
    margin: 0 !important;
    display: inline-flex; align-items: baseline; gap: var(--space-2);
  }
  .ld-shop-cta-banner__title::after {
    content: '→'; color: var(--color-rose); font-weight: 700;
  }
  .ld-shop-cta-banner__desc {
    font-size: var(--text-sm) !important;
    line-height: 1.35 !important;
    margin: 4px 0 0 !important;
    max-width: none !important;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  }
  .ld-shop-cta-banner__list { display: none !important; }
  .ld-shop-cta-banner__visual { display: none !important; }
  /* dosuń siatkę produktów: mniej powietrza pod kategoriami i licznikiem wyników */
  .ld-shop-cats { margin-bottom: var(--space-3) !important; }
  .woocommerce-result-count { margin-bottom: var(--space-2) !important; }
}


/* ==========================================================================
   HERO -- "przyciski" jako KONTENERY-kafle wg wizualizacji klientki (12.08.2026, v2)
   Klientka: to nie klasyczne buttony, tylko kontenery pelniace funkcje przycisku.
   Spec: "Zamow topper" = ROZOWY wypelniony; "Zamow wydruk jadalny" = ROZOWY OBRYS;
   w kazdym ZLOTE KOLKO ze zlota ikona w srodku (jak zlote ikonki korzysci na home).
   Radius / cien / hover z konwencji kart motywu (radius-xl, shadow-container, rozowa
   poswiata). Zastepuje wczesniejsze wersje (pigulka + height:40px).
   ========================================================================== */
.ld-hero .ld-hero__actions--row .ld-btn--hero,
.ld-hero .ld-hero__actions--row .ld-btn--hero.ld-btn--lg {
  height: auto !important;
  min-height: 60px !important;
  padding: var(--space-3) var(--space-4) !important;
  border-radius: var(--radius-xl) !important;
  box-shadow: var(--shadow-container);
  justify-content: flex-start;
  gap: var(--space-3);
  text-align: left;
  transition: transform var(--duration-btn) var(--ease-btn), background var(--duration-btn) var(--ease-btn), border-color var(--duration-btn) var(--ease-btn), color var(--duration-btn) var(--ease-btn);
}
/* wariant 1: ROZOWY wypelniony (Zamow topper) */
.ld-hero .ld-btn--hero.ld-btn--hero-fill {
  background: var(--color-rose);
  color: var(--color-text-inverted);
  border: 1.5px solid var(--color-rose);
}
/* wariant 2: ROZOWY OBRYS (Zamow wydruk jadalny) */
.ld-hero .ld-btn--hero.ld-btn--hero-outline {
  background: #fff;
  color: var(--color-primary);
  border: 1.5px solid var(--color-rose);
}
/* ZLOTE KOLKO ze zlota ikona */
.ld-hero .ld-btn--hero .ld-btn__ico {
  display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto;
  width: 40px; height: 40px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid var(--color-accent);
  color: var(--color-accent);
}
.ld-hero .ld-btn--hero .ld-btn__label { flex: 1 1 auto; min-width: 0; font-weight: var(--font-weight-semibold); line-height: 1.2; }
.ld-hero .ld-btn--hero .ld-btn__arrow { display: inline-flex; align-items: center; flex: 0 0 auto; transition: transform var(--duration-btn) var(--ease-btn); }
.ld-hero .ld-btn--hero-fill .ld-btn__arrow { color: var(--color-text-inverted); }
.ld-hero .ld-btn--hero-outline .ld-btn__arrow { color: var(--color-rose); }
/* hover: jak buttony motywu -- zoom (scale 1.04) + zamiana rozu na zloto (--color-accent) */
.ld-hero .ld-btn--hero:hover { transform: scale(1.04); }
.ld-hero .ld-btn--hero-fill:hover { background: var(--color-accent); border-color: var(--color-accent); color: var(--color-text-inverted); }
.ld-hero .ld-btn--hero-outline:hover { background: var(--color-accent); border-color: var(--color-accent); color: var(--color-text-inverted); }
.ld-hero .ld-btn--hero-outline:hover .ld-btn__arrow { color: var(--color-text-inverted); }
/* mobile: karta hero jest waska (~217px) → strzalke chowamy, zeby etykieta miala
   miejsce; zlote kolko troche mniejsze; etykieta do 2 linii, czytelna. */
@media (max-width: 992px) {
  /* CALY klikalny KAFEL wystaje poza biala karte (wrapper-tlo z naglowkiem) w prawo,
     na tort. Karta nie tnie overflow; kafle szersze niz karta o staly zapas. Strzalka
     wraca do srodka (inline, dosunieta w prawo). */
  .ld-hero .ld-hero__content { overflow: visible !important; }
  .ld-hero .ld-hero__actions.ld-hero__actions--row { width: calc(100% + 44px) !important; max-width: none !important; }
  .ld-hero .ld-hero__actions--row .ld-btn--hero,
  .ld-hero .ld-hero__actions--row .ld-btn--hero.ld-btn--lg { min-height: 48px !important; padding: var(--space-2) var(--space-3) !important; gap: var(--space-2); }
  .ld-hero .ld-btn--hero .ld-btn__ico { width: 32px; height: 32px; }
  .ld-hero .ld-btn--hero .ld-btn__ico svg { width: 16px; height: 16px; }
  .ld-hero .ld-btn--hero .ld-btn__label { font-size: 11px !important; line-height: 1.2; white-space: nowrap; }
  .ld-hero .ld-btn--hero .ld-btn__arrow { display: inline-flex !important; position: static; margin-left: auto; }
  .ld-hero .ld-btn--hero .ld-btn__arrow svg { width: 16px; height: 16px; }
}

/* ======================================================================
   DRUGA SEKCJA — KORZYŚCI wg wizualizacji klientki (2026-08-20):
   różowe wypełnione kółka z ikonami, TYTUŁY WERSALIKAMI, serduszko-separator, opisy.
   Scoped do .ld-benefits, żeby nie ruszać kroków „Jak zamówić" (też .ld-feature).
   ====================================================================== */
.ld-benefits .ld-feature { text-align: center; }
.ld-benefits .ld-feature__icon {
  width: 66px; height: 66px; border-radius: 50%;
  background: #f6e7ec; border: 0;
  color: var(--color-accent);
  display: inline-flex; align-items: center; justify-content: center;
  margin-bottom: var(--space-4); font-size: 0;
}
.ld-benefits .ld-feature__icon svg { width: 28px; height: 28px; }
.ld-benefits .ld-feature h3 {
  text-transform: uppercase; letter-spacing: .05em;
  font-size: var(--text-base); font-weight: var(--font-weight-bold);
  line-height: 1.2; margin-bottom: 0;
}
/* serduszko-separator: kreseczka – złote serce – kreseczka, poziomy flex, wyśrodkowany */
.ld-benefits .ld-feature__heart { display: flex; align-items: center; justify-content: center; gap: 4px; color: var(--color-accent); line-height: 1; margin: var(--space-2) auto; }
.ld-benefits .ld-feature__heart-line { flex: 0 0 auto; width: 18px; height: 1px; background: currentColor; border-radius: 2px; }
.ld-benefits .ld-feature__heart svg { display: block; fill: currentColor; }
.ld-benefits .ld-feature p {
  display: block; font-size: var(--text-sm); color: var(--color-text-secondary);
  line-height: 1.45; max-width: 22ch; margin: 0 auto; /* margin-block 0 — inaczej domyślne 16px psuło równość góra/dół sekcji */
}

/* mobile — 4 w rzędzie jak w wizualizacji, ale Z OPISAMI (różowe kółka, wersaliki, serduszko) */
@media (max-width: 768px) {
  /* mniejszy, równy padding sekcji zalet (góra = dół = 18px) */
  .ld-benefits.ld-section--elevated { padding-top: 18px !important; padding-bottom: 18px !important; }
  .ld-benefits.ld-section--elevated .ld-grid--4 { gap: 10px !important; }
  .ld-benefits .ld-grid--4 .ld-feature__icon {
    width: 46px !important; height: 46px !important; border-width: 0 !important;
    background: #f6e7ec !important; margin-bottom: 8px !important; font-size: 0 !important;
  }
  .ld-benefits .ld-grid--4 .ld-feature__icon svg { width: 22px !important; height: 22px !important; }
  .ld-benefits .ld-grid--4 .ld-feature h3 { font-size: 10px !important; letter-spacing: .02em !important; line-height: 1.15 !important; margin-bottom: 0 !important; }
  .ld-benefits .ld-feature__heart { margin: 4px auto !important; gap: 4px !important; }
  .ld-benefits .ld-feature__heart-line { width: 12px !important; height: 1px !important; }
  .ld-benefits .ld-grid--4 .ld-feature p { display: block !important; font-size: 9.5px !important; line-height: 1.3 !important; max-width: none !important; color: var(--color-text-secondary) !important; }
}
@media (max-width: 480px) {
  .ld-benefits.ld-section--elevated .ld-grid--4 { gap: 7px !important; }
  .ld-benefits .ld-grid--4 .ld-feature__icon { width: 42px !important; height: 42px !important; }
  .ld-benefits .ld-grid--4 .ld-feature h3 { font-size: 9px !important; }
  .ld-benefits .ld-grid--4 .ld-feature p { font-size: 9px !important; }
}
