/* =========================================================================
   EDAXO.ro — WŁASNY CSS (wersja uporządkowana, 2026-11)
   Szablon: IdoSell / IAI + Bootstrap

   Zastępuje CAŁY dotychczasowy kod — usuń stary i wklej ten w całości.

   Breakpointy:  ≤550 telefon · 551–978 tablet · ≥979 desktop
                 980–1199 wąski laptop · ≥1200 · ≥1400 · ≥1600
   [SEZON]       reguły kampanii (Black Friday) — zmień zmienne w :root
   [EDAXO-ONLY]  reguły zależne od konkretnych grafik / ID
   ========================================================================= */

/* =========================================================================
   0. ZMIENNE
   ========================================================================= */
:root {
  --edx-container-max: 1900px;

  /* kolory marki */
  --edx-red: #d7141e;          /* nagłówek, menu */
  --edx-red-dark: #b0101a;     /* podmenu */
  --edx-red-soft: #c62828;     /* strona główna, kategoria, linki */
  --edx-red-tab: #e41734;      /* podkreślenie zakładek */
  --edx-red-badge: #cc3b45;    /* plakietka rabatu na karcie produktu */
  --edx-ink: #222;
  --edx-night: #1f2328;
  --edx-muted: #6b6b6b;
  --edx-line: #ececec;
  --edx-panel: #faf9f7;
  --edx-footer: #f2f0ec;
  --edx-accent: #379e9d;       /* przycisk „czytaj więcej” */

  --edx-r: 16px;
  --edx-shadow: 0 4px 16px rgba(0, 0, 0, .06);
  --edx-shadow-h: 0 10px 28px rgba(0, 0, 0, .10);

  /* [SEZON] etykieta --bargain / --promo
     Po Black Friday: "CHILIPIR", #7a6a5f, #7a6a5f */
  --edx-sale-text: "BLACK FRIDAY";
  --edx-sale-bg: #000;
  --edx-sale-bg-card: #1a1a1a;
  --edx-sale-color: #fff;
  --color-label-bargain-background: var(--edx-sale-bg);
  --color-label-bargain: var(--edx-sale-color);
  --color-label-promo-background: var(--edx-sale-bg);
  --color-label-promo: var(--edx-sale-color);

  /* etykiety poza kartami listingu */
  --edx-label-h: 18px;
  --edx-label-fs: 10px;
}

/* Brak poziomego przewijania strony (np. banery 100vw) — clip nie psuje sticky */
html, body { overflow-x: clip; }

/* =========================================================================
   1. KONTENER I UKŁAD STRON
   ========================================================================= */
.variable-max-width,
.max-width-1200,
.container,
.payment_tunnel .container,
.order_process .container,
.container.basketedit_page,
.container.prepaid_page {
  max-width: var(--edx-container-max) !important;
}

#content { padding-left: 20px !important; padding-right: 20px !important; }
@media (max-width: 1024px) {
  main#content { padding-left: 15px !important; padding-right: 15px !important; }
}

/* Strona główna: treść na pełną szerokość, równo z nagłówkiem i menu */
.main_page #layout > #content {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
}

@media (min-width: 979px) {
  /* Kategoria: panel boczny 230 px + treść (TYLKO na stronie kategorii —
     wcześniej działało wszędzie i na stronie głównej ucinało 230 px) */
  .search_page #layout > aside {
    flex: 0 0 230px !important;
    max-width: 230px !important;
    padding: 0 15px 0 25px !important;
  }
  .search_page #layout > #content {
    flex: 1 1 0 !important;
    max-width: calc(100% - 230px) !important;
    padding: 0 15px 0 10px !important;
  }
  /* Karta produktu */
  .projector_page #layout > #content {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding: 0 15px 0 25px !important;
  }
}

/* =========================================================================
   2. SIATKA PRODUKTÓW
   ========================================================================= */
@media (min-width: 758px) {
  .products:not(.hotspot__products) { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; }
}
@media (min-width: 1600px) {
  .products:not(.hotspot__products) { grid-template-columns: repeat(4, 1fr) !important; }
}

/* Listing kategorii / wyszukiwania */
body #search.search.products {
  background: transparent !important;
  border-radius: 0 !important;
  padding: 20px !important;
  column-gap: 16px !important;
  row-gap: 24px !important;
}
@media (max-width: 978px) {
  #search.products { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; }
  #search .product { width: 100% !important; max-width: 100% !important; flex: auto !important; }
  body #search.search.products { padding: 10px !important; column-gap: 10px !important; row-gap: 12px !important; }
}
@media (max-width: 550px) {
  body #search.search.products { padding: 6px !important; column-gap: 6px !important; row-gap: 8px !important; }
}
@media (min-width: 979px) {
  body #search.search.products {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    padding: 0 !important;
    gap: 20px 10px !important;
    margin-top: 4px;
  }
}

/* =========================================================================
   3. KARUZELE PRODUKTÓW (hotspoty)
   Desktop: 5 w rzędzie, kolejne produkty w następnym rzędzie
   (wcześniej 6.–10. produkt wychodził poza ekran).
   Mobile/tablet: 2 widoczne + przewijanie poziome.
   ========================================================================= */
.swiper-wrapper { align-items: stretch !important; }
.swiper-slide { height: auto !important; }

/* Strzałki Swipera ukryte w całym sklepie */
.swiper-button-prev.--rounded,
.swiper-button-next.--rounded { display: none !important; }

.products__wrapper,
.products__wrapper.swiper {
  margin-left: 0 !important;
  margin-right: 0 !important;
  overflow: visible !important;
}
.hotspot__name.headline__wrapper { padding-left: 0 !important; }
.product.hotspot__product.swiper-slide { padding-left: 0 !important; padding-right: 0 !important; }

.products.hotspot__products.swiper-wrapper {
  display: flex !important;
  gap: 10px !important;
  height: auto !important;
  transform: none !important;   /* Swiper wyłączony — układ robi CSS */
  align-items: stretch !important;
}
.products.hotspot__products.swiper-wrapper > .product.hotspot__product {
  min-width: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  visibility: visible !important;
  opacity: 1 !important;
}

@media (min-width: 979px) {
  .products.hotspot__products.swiper-wrapper {
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    overflow: visible !important;
  }
  .products.hotspot__products.swiper-wrapper > .product.hotspot__product {
    flex: 0 0 calc(20% - 8px) !important;
    width: calc(20% - 8px) !important;
    max-width: calc(20% - 8px) !important;
  }
}

@media (max-width: 978px) {
  .products.hotspot__products.swiper-wrapper {
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory !important;
  }
  .products.hotspot__products.swiper-wrapper > .product.hotspot__product {
    flex: 0 0 calc(50% - 5px) !important;
    width: calc(50% - 5px) !important;
    max-width: calc(50% - 5px) !important;
    scroll-snap-align: start !important;
  }

  /* Pulsujące strzałki ‹ › — na rodzicu, więc nie odjeżdżają przy przewijaniu */
  .products__wrapper:has(> .products.hotspot__products) { position: relative !important; }
  .products__wrapper:has(> .products.hotspot__products)::before,
  .products__wrapper:has(> .products.hotspot__products)::after {
    position: absolute;
    top: 50%;
    z-index: 5;
    font-size: 22px;
    font-weight: 700;
    color: rgba(120, 120, 120, .9);
    pointer-events: none;
    transform: translateY(-50%);
  }
  .products__wrapper:has(> .products.hotspot__products)::before {
    content: "\2039"; left: 2px; animation: edxArrowPulse 2s ease-in-out infinite;
  }
  .products__wrapper:has(> .products.hotspot__products)::after {
    content: "\203A"; right: 2px; animation: edxArrowPulse 3s ease-in-out infinite;
  }
}
@keyframes edxArrowPulse {
  0%, 100% { opacity: .3; transform: translateY(-50%) scale(1); }
  50%      { opacity: 1;  transform: translateY(-50%) scale(1.2); }
}

@media (max-width: 767.98px) {
  .products__wrapper.swiper { display: flex !important; flex-wrap: wrap !important; padding: 0 !important; box-sizing: border-box !important; }
}

/* =========================================================================
   4. KARTA PRODUKTU NA LISTINGU (kategoria, wyszukiwarka, karuzele)
   ========================================================================= */
body :is(#search.search.products, .products.hotspot__products) .product {
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #fff !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: var(--edx-shadow) !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}
@media (hover: hover) and (pointer: fine) {
  body :is(#search.search.products, .products.hotspot__products) .product:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 10px 26px rgba(0, 0, 0, .10) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body :is(#search.search.products, .products.hotspot__products) .product { transition: none !important; }
  body :is(#search.search.products, .products.hotspot__products) .product:hover { transform: none !important; }
}

/* --- Zdjęcie --- */
.product__icon { display: flex; flex-wrap: wrap; align-content: flex-start; }

body :is(#search.search.products, .products.hotspot__products) .product .product__icon {
  flex: 0 0 auto !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  align-content: flex-end !important;
  align-items: flex-end !important;
  justify-content: center !important;
  aspect-ratio: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 40px 24px 10px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  background: #fff !important;
  border-radius: 16px 16px 0 0 !important;
  border-bottom: 1px solid #e8e8e8 !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__icon picture {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__icon img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
  object-position: center bottom !important;
}

/* --- Treść karty --- */
body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper {
  flex: 1 1 auto !important;
  position: static !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0 !important;
  min-width: 0 !important;
  padding: 10px 20px 12px !important;
  background: #fff !important;
  border-radius: 0 0 16px 16px !important;
  text-align: left !important;
}

/* Ceny */
body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper .product__prices {
  order: -1;
  position: static !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;               /* bardzo długa cena: stara przejdzie niżej */
  align-items: baseline !important;
  justify-content: space-between !important;
  column-gap: 8px !important;
  row-gap: 2px !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  text-align: left !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price.--main {
  position: static !important;
  white-space: nowrap !important;
  text-align: left !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  -webkit-text-stroke: .45px currentColor !important;   /* delikatne pogrubienie */
  line-height: 1.1 !important;
  color: #111 !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price_sellby,
body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price_vat,
body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price.--max .omnibus_label {
  display: none !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper .product__prices .price.--max {
  order: 2 !important;
  position: static !important;
  display: block !important;
  height: auto !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  font-size: 14px !important;
  line-height: 18px !important;
  white-space: nowrap !important;
  text-align: right !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price.--max del:not(.price_vat) {
  display: inline-block !important;
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 18px !important;
  vertical-align: top !important;
  color: #8a8a8a !important;
}

/* Producent ukryty */
body :is(#search.search.products, .products.hotspot__products) .product .product__producer { display: none !important; }

/* Nazwa — maks. 2 linie */
body :is(#search.search.products, .products.hotspot__products) .product .product__name_wrapper {
  position: static !important;
  margin: 0 0 6px !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__name_wrapper h2 {
  position: static !important;
  margin: 0 !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__name {
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  min-height: 2.7em !important;
  max-height: 2.7em !important;
  margin-bottom: 0 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  color: #333 !important;
  text-align: left !important;
  text-decoration: none !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__name::first-line {
  font-weight: 400;
  color: #111;
}
/* Cała karta klikalna (elementy klikalne w karcie muszą mieć z-index ≥ 2) */
body :is(#search.search.products, .products.hotspot__products) .product .product__name::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}

/* „Descoperă produsul” */
body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper::after {
  content: "Descoperă produsul";
  display: block;
  margin-top: auto;
  padding: 6px 22px 0 0;
  border-top: 1px solid #e3e3e3;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  color: #555;
  text-align: left;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none' stroke='%23555' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11L11 3M4.5 3H11v6.5'/%3E%3C/svg%3E") no-repeat right calc(50% + 4px) / 14px 14px;
}

/* Plakietka rabatu (prawy górny róg) */
body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price_percent {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  bottom: auto !important;
  left: auto !important;
  z-index: 2 !important;
  display: inline-block !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  margin: 0 !important;
  padding: 0 9px !important;
  box-sizing: border-box !important;
  background: #1a1a1a !important;
  color: #fff !important;
  border-radius: 6px !important;
  white-space: nowrap !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 24px !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price_percent::first-letter {
  letter-spacing: 2px;
  margin-right: -2px;
}

/* --- Wąski laptop (980–1199 px, 3 kolumny): ciaśniej --- */
@media (min-width: 980px) and (max-width: 1199px) {
  body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price.--main {
    font-size: 16px !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper .product__prices .price.--max,
  body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price.--max del:not(.price_vat) {
    font-size: 12px !important;
  }
}

/* --- Tablet (551–978 px) --- */
@media (min-width: 551px) and (max-width: 978px) {
  body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper .product__prices {
    column-gap: 6px !important;
    row-gap: 0 !important;
    min-height: 23px !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper .product__prices .price.--max,
  body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price.--max del:not(.price_vat) {
    font-size: 13px !important;
  }
}

/* --- Telefon (≤550 px): stara cena pod aktualną --- */
@media (max-width: 550px) {
  body :is(#search.search.products, .products.hotspot__products) .product { border-radius: 12px !important; }
  body :is(#search.search.products, .products.hotspot__products) .product .product__icon {
    padding: 34px 10px 8px !important;
    border-radius: 12px 12px 0 0 !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper {
    padding: 10px 10px 12px !important;
    border-radius: 0 0 12px 12px !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper .product__prices {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    min-height: 38px !important;
    margin: 0 0 8px !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price.--main {
    font-size: 13px !important;
    line-height: 1.2 !important;
    -webkit-text-stroke: .35px currentColor !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper .product__prices .price.--max {
    margin: 0 auto 0 0 !important;
    text-align: left !important;
    font-size: 12px !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price.--max del:not(.price_vat) {
    font-size: 12px !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__name_wrapper { margin-bottom: 10px !important; }
  body :is(#search.search.products, .products.hotspot__products) .product .product__name {
    line-height: 1.45 !important;
    min-height: 2.9em !important;
    max-height: 2.9em !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__content_wrapper::after {
    padding: 8px 16px 0 0;
    font-size: 12px;
    line-height: 1.3;
    background-size: 11px 11px;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__prices .price_percent {
    top: 8px !important;
    right: 8px !important;
    height: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;
    padding: 0 6px !important;
    border-radius: 5px !important;
    font-size: 12px !important;
    line-height: 20px !important;
  }
}

/* =========================================================================
   5. CENY — Omnibus na listingach, rozmiar ceny
   UWAGA PRAWNA: ukrycie ceny Omnibus przy pokazanej przekreślonej cenie
   i % rabatu wymaga weryfikacji (dyrektywa Omnibus / wyrok TSUE C-330/23).
   ========================================================================= */
.price__sub { font-size: 2rem !important; }
.price.--omnibus.omnibus_price,
.product__prices .omnibus_label { display: none !important; }

/* =========================================================================
   6. ETYKIETY PRODUKTÓW
   ========================================================================= */

/* --- 6.1 Baza (wszystkie konteksty) --- */
.label {
  position: static !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}
.label_icons,
.labels-container {
  position: absolute !important;
  top: auto !important;
  bottom: 6px !important;
  left: 6px !important;
  right: auto !important;
  z-index: 999;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 4px !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: normal !important;
}
body :is(.product, .hotspot__product) {
  --label-container-top: auto !important;
  --label-container-bottom: 6px !important;
  --label-container-left: 6px !important;
  --label-container-right: auto !important;
}
.luigi-ac-rest-main .label,
.luigi-ac-products .label { display: none !important; }

/* --- 6.2 Etykiety poza kartami listingu (18 px) --- */
body :is(.product, .hotspot__product, .product__icon) .label {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  height: var(--edx-label-h) !important;
  min-height: var(--edx-label-h) !important;
  max-height: var(--edx-label-h) !important;
  margin: 0 !important;
  padding: 1px 6px 0 !important;
  box-sizing: border-box !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transform: none !important;
  font-family: inherit !important;
  font-size: var(--edx-label-fs) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  vertical-align: middle !important;
}
body :is(.product, .hotspot__product, .product__icon) .label > * {
  align-self: stretch !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  font: inherit !important;
  line-height: 1 !important;
  transform: none !important;
}
body :is(.product, .hotspot__product, .product__icon) .label::before {
  content: none !important;
  display: none !important;
}

/* Etykiety, których tekst podmieniamy przez ::after */
body :is(.product, .hotspot__product, .product__icon) .label:is(.--bargain, .--promo, .--bestseller, .--discount) {
  font-size: 0 !important;
  line-height: 0 !important;
}
body :is(.product, .hotspot__product, .product__icon) .label:is(.--bargain, .--promo, .--bestseller, .--discount) > * {
  display: none !important;
}
body :is(.product, .hotspot__product, .product__icon) .label:is(.--bargain, .--promo, .--bestseller, .--discount)::after {
  position: static !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: stretch !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: inherit !important;
  font-size: var(--edx-label-fs) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  transform: none !important;
}

/* --- 6.3 Treści i kolory --- */
/* [SEZON] --bargain / --promo */
html body .label.label:is(.--bargain, .--promo) {
  background: var(--edx-sale-bg) !important;
  color: var(--edx-sale-color) !important;
}
html body .label.label:is(.--bargain, .--promo)::after {
  content: var(--edx-sale-text) !important;
  color: var(--edx-sale-color) !important;
}
/* CEL MAI VÂNDUT */
body :is(.product, .hotspot__product, .product__icon) .label.--bestseller {
  background: #efebe5 !important;
  color: #000 !important;
}
body :is(.product, .hotspot__product, .product__icon) .label.--bestseller::after {
  content: "CEL MAI VÂNDUT" !important;
  color: #000 !important;
}
/* ALEGERE TOP (w IdoSell flaga „przecena” — --discount) */
body :is(.product, .hotspot__product, .product__icon) .label.--discount {
  background: #e5e1dc !important;
  color: #111 !important;
}
body :is(.product, .hotspot__product, .product__icon) .label.--discount::after {
  content: "ALEGERE TOP" !important;
  color: #111 !important;
}

/* --- 6.4 Etykiety na kartach listingu (24 px, zaokrąglone, lewy górny róg) --- */
body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons {
  top: 12px !important;
  left: 12px !important;
  bottom: auto !important;
  right: auto !important;
  z-index: 2 !important;
  max-width: calc(100% - 32px) !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons > .label {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  margin: 0 !important;
  padding: 0 9px !important;
  box-sizing: border-box !important;
  border: 0 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-weight: 700 !important;
  line-height: 24px !important;
  letter-spacing: normal !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}
/* tekst w HTML (RECOMANDAT, NOU…) */
body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons > .label:not(.--bargain, .--promo, .--bestseller, .--discount) {
  font-size: 12px !important;
}
/* tekst w ::after */
body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons > .label:is(.--bargain, .--promo, .--bestseller, .--discount)::after {
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 24px !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons > .label:is(.--bargain, .--promo) {
  background: var(--edx-sale-bg-card) !important;
  color: var(--edx-sale-color) !important;
}

@media (max-width: 550px) {
  body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons {
    top: 8px !important;
    left: 8px !important;
    max-width: calc(100% - 16px) !important;
    gap: 4px !important;
    flex-wrap: nowrap !important;
    overflow: hidden !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons > .label {
    height: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;
    padding: 0 6px !important;
    border-radius: 5px !important;
    line-height: 20px !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons > .label:not(.--bargain, .--promo, .--bestseller, .--discount) {
    font-size: 10px !important;
  }
  body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons > .label:is(.--bargain, .--promo, .--bestseller, .--discount)::after {
    font-size: 10px !important;
    line-height: 20px !important;
  }
  /* Telefon: maksymalnie jedna etykieta */
  body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons:not(:has(> .label:is(.--bargain, .--promo))) > .label ~ .label {
    display: none !important;
  }
}

/* --- 6.5 Priorytety: wyprzedaż > reszta; --bargain > --promo --- */
html body .label_icons:has(> .label:is(.--bargain, .--promo)) > .label:not(.--bargain, .--promo),
html body .label_icons:has(> .label.--bargain) > .label.--promo {
  display: none !important;
}
body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons:has(> .label:is(.--bargain, .--promo)) > .label:not(.--bargain, .--promo),
body :is(#search.search.products, .products.hotspot__products) .product .product__icon .label_icons:has(> .label.--bargain) > .label.--promo.--promo {
  display: none !important;
}

/* =========================================================================
   7. KARTA PRODUKTU — układ, galeria, etykieta na zdjęciu
   ========================================================================= */
#projector_productname,
#projector_form,
#details_wrapper,
#product_questions_list { margin-right: 15px !important; }
#projector_photos,
#dynamic_tabs_handler,
#details_wrapper,
#product_questions_list { margin-left: 15px !important; }

@media (max-width: 767.98px) {
  #projector_photos,
  #GalleryModalTemplate,
  #projector_productname,
  #projector_form,
  #dynamic_tabs_handler,
  #details_wrapper,
  #product_questions_list { margin-left: 10px !important; margin-right: 10px !important; }
}
@media (max-width: 768px) {
  .product_name__block.--label { display: none !important; }
  #dynamic_tabs_handler {
    max-width: 100vw !important;
    overflow-x: hidden !important;
    margin: 0 auto !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
  }
  #dynamic_tabs_handler .tabs__item { width: 100% !important; max-width: 100% !important; margin: 0 auto !important; }
  #details_wrapper_mobile,
  #product_questions_list_mobile,
  #opinions_section_mobile { max-width: 100% !important; overflow-x: hidden !important; }
}

@media (min-width: 979px) {
  #projector_photos { padding: 0 !important; margin: 0 !important; }
  /* zdjęcie wyrównane w pionie do dołu panelu informacyjnego */
  .projector_page #projector_photos { align-self: stretch; contain: size; min-height: 420px; }
  .projector_page #photos_slider { flex: 1 1 0 !important; min-width: 0; height: 100% !important; max-height: none !important; }
  .projector_page #photos_slider .swiper-wrapper,
  .projector_page #photos_slider .photos__figure { height: 100% !important; }
  .projector_page #photos_slider .photos__figure img { width: 100% !important; height: 100% !important; max-height: none !important; object-fit: contain; }
  .projector_page #projector_form,
  .projector_page .projector_details__wrapper { margin-bottom: 0 !important; padding-bottom: 0 !important; }
  .projector_page #component_projector_cms { margin-top: 40px !important; }
  #projector_productname,
  #projector_form { margin-left: 10px !important; margin-right: 0 !important; }
  #dynamic_tabs_handler,
  #details_wrapper,
  #component_projector_cms,
  #product_questions_list,
  #opinions_section { margin-left: 0 !important; margin-right: 0 !important; width: auto !important; max-width: none !important; }
}
@media (min-width: 1024px) {
  .responsive-img-wrapper { height: 700px !important; overflow: hidden; }
}

/* Ukrycia */
#projector_status,
#design_preview_window,
#projector_dictionary > div > div:nth-child(3),
.product_name__firm_logo,
.product__compare_item.--add { display: none !important; }
section#Progress.progress[style] { margin: 30px !important; }

/* [EDAXO-ONLY] wiersz „video” (.mp4) — karta i listing */
#projector_producttraits .traits__item:has(a[href*="mp4"]),
#search .product__traits li.trait:has(a.trait__value[href*="mp4"]) { display: none !important; }

/* Galeria — tło */
#projector_photos.photos:not(.--gallery-modal)::before { content: none !important; display: none !important; }
#projector_photos.photos:not(.--gallery-modal),
#projector_photos.photos:not(.--gallery-modal) .photos__sliders,
#projector_photos.photos:not(.--gallery-modal) .photos__slider,
#projector_photos.photos:not(.--gallery-modal) .swiper,
#projector_photos.photos:not(.--gallery-modal) .swiper-wrapper { background: #fff !important; }
#projector_photos.photos:not(.--gallery-modal) .photos__slider .swiper-slide:not(.--more):not(.--video) { background: #f1f1f1 !important; }
#projector_photos.photos:not(.--gallery-modal) .photos__slider .swiper-slide:not(.--more):not(.--video) img { mix-blend-mode: multiply !important; }

#photos_slider { border-radius: var(--edx-r); overflow: hidden; border: 1px solid var(--edx-line); }
#photos_nav .photos__photo { border-radius: 8px; border: 1px solid var(--edx-line); overflow: hidden; transition: border-color .15s; }
#photos_nav .photos__photo:hover { border-color: #bbb; }

/* Etykieta na zdjęciu — oryginał przy nazwie zostaje w DOM jako źródło dla :has() */
#projector_productname .product_name_block.--label,
#projector_productname .product_name_block.--label .label_icons,
#projector_productname .label_icons { display: none !important; visibility: hidden !important; }
#projector_photos .photos__slider::after,
#projector_photos .photos__sliders::after { content: none !important; display: none !important; }
#projector_photos,
#projector_photos .photos__sliders,
#projector_photos .photos__slider,
#projector_photos .photos__slider .swiper-slide { position: relative !important; }

/* Geometria — lewy górny róg, jak na kafelkach (wcześniej reguła przegrywała i etykieta była na dole) */
html body #content:has(#projector_productname .label:is(.--bargain, .--promo, .--bestseller))
#projector_photos .photos__slider .swiper-slide-active::after {
  position: absolute !important;
  top: 16px !important;
  left: 16px !important;
  bottom: auto !important;
  right: auto !important;
  z-index: 50 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  margin: 0 !important;
  padding: 0 10px !important;
  box-sizing: border-box !important;
  border: 0 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 24px !important;
  letter-spacing: .5px !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  pointer-events: none !important;
  transform: none !important;
}
/* [SEZON] wyprzedaż */
html body #content:has(#projector_productname .label:is(.--bargain, .--promo))
#projector_photos .photos__slider .swiper-slide-active::after {
  content: var(--edx-sale-text) !important;
  background: var(--edx-sale-bg) !important;
  color: var(--edx-sale-color) !important;
}
/* CEL MAI VÂNDUT — tylko gdy brak wyprzedaży */
html body #content:not(:has(#projector_productname .label:is(.--bargain, .--promo))):has(#projector_productname .label.--bestseller)
#projector_photos .photos__slider .swiper-slide-active::after {
  content: "CEL MAI VÂNDUT" !important;
  background: #efebe5 !important;
  color: #000 !important;
}

/* =========================================================================
   8. KARTA PRODUKTU — nazwa, ceny, koszyk, informacje
   ========================================================================= */
#projector_productname h1 { font-size: 24px !important; line-height: 1.3 !important; }
.product_name__block.--description { margin: 12px 0 0 !important; font-size: 14px !important; line-height: 1.6; color: #555; }
.product_name__actions { width: 100%; margin: 0 !important; }
.product_name__block.--links { display: flex !important; justify-content: space-between; align-items: center; gap: 16px; margin-top: 4px; }
.product_name__action { margin: 0 !important; padding: 0 !important; font-size: 13px !important; color: #555 !important; text-decoration: none !important; transition: color .15s; }
.product_name__action * { text-decoration: none !important; }
.product_name__action:hover,
.product_name__action:hover * { color: var(--edx-ink) !important; text-decoration: underline !important; }

/* dostawa */
#projector_status_section { margin: 0 0 16px !important; font-size: 13px; }
#projector_delivery_label { color: #8a8a8a; }
#projector_delivery_days { font-weight: 700; color: var(--edx-ink); }
.projector_shipping__info { margin-left: 6px; color: #555 !important; text-decoration: underline; text-decoration-color: #ccc; text-underline-offset: 3px; }
.projector_shipping__info:hover { color: var(--edx-ink) !important; text-decoration-color: var(--edx-ink); }

/* ceny: (1) stara + %, (2) aktualna, (3) Omnibus, (4) SRP, (5) punkty */
#projector_prices_section {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  margin: 0 0 20px !important;
}
#projector_prices_section #projector_price_maxprice_wrapper { order: 1 !important; }
#projector_prices_section .projector_prices__price_wrapper  { order: 2 !important; }
#projector_prices_section .projector_prices__lowest_price   { order: 3 !important; }
#projector_prices_section #projector_price_srp_wrapper      { order: 4 !important; }
#projector_prices_section #projector_points_wrapper         { order: 5 !important; }

#projector_prices_section #projector_price_maxprice_wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 0 2px !important;
}
/* Brak wyprzedaży — wiersz ukryty (wcześniej przegrywało z display:flex) */
html body #projector_prices_section #projector_price_maxprice_wrapper:not(.--active) { display: none !important; }

#projector_prices_section #projector_price_maxprice_wrapper :is(.projector_prices__maxprice_label, .projector_prices__unit_sep, .projector_prices__unit_sellby, .projector_prices__unit) {
  display: none !important;
}
#projector_prices_section #projector_price_maxprice {
  font-size: 1.5rem !important;
  font-weight: 400 !important;
  color: #888 !important;
  text-decoration: line-through !important;
}
html body #projector_form #projector_prices_section #projector_maxprice_percent.projector_prices__percent {
  display: inline-block !important;
  margin-left: 10px !important;
  padding: 4px 9px !important;
  border-radius: 6px !important;
  background: var(--edx-red-badge) !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}
html body #projector_form #projector_prices_section #projector_maxprice_percent.projector_prices__percent::first-letter {
  letter-spacing: 2px;
  margin-right: -2px;
}
#projector_prices_section .projector_prices__price {
  margin: 0 !important;
  font-size: 3.3rem !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -.3px;
  color: #000 !important;
}
#projector_prices_section :is(.projector_prices__info, .projector_prices__vat, .projector_prices__unit, .projector_prices__unit_sep) {
  font-size: 1.35rem !important;
}
#projector_prices_section .projector_prices__info { margin-left: 6px; color: #8a8a8a !important; }
#projector_prices_section .projector_prices__lowest_price { margin-top: 2px !important; font-size: 1.2rem !important; color: #999 !important; }
#projector_prices_section .projector_prices__lowest_price .omnibus_price__value { font-size: 1.2rem !important; }
#projector_omnibus_percent { display: none !important; }

/* ilość + do koszyka */
#projector_buttons_section { gap: 10px; }
.projector_buy__number_wrapper { border-radius: 8px !important; overflow: hidden !important; }
.projector_buy__button {
  background: var(--edx-ink) !important;
  border-color: var(--edx-ink) !important;
  color: #fff !important;
  border-radius: 8px !important;
  letter-spacing: 1px;
  filter: none !important;
  transition: background .15s, box-shadow .15s;
}
.projector_buy__button:hover {
  background: #000 !important;
  border-color: #000 !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .2) !important;
}

/* informacje (zwrot, dostawa…) */
#projector_additional_section {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px 18px !important;
  background: var(--edx-panel);
  border: 1px solid var(--edx-line);
  border-radius: 12px;
}
#projector_additional_section .projector_info__item { margin: 0 !important; }

/* =========================================================================
   9. KARTA PRODUKTU — zakładki, parametry, pytania, opinie
   ========================================================================= */
.tabs__wrapper { margin: 0 !important; gap: 28px; border-bottom: 1px solid var(--edx-line); }
.tabs__item { margin: 0 !important; padding: 0 !important; }
.tabs__item > span {
  display: block;
  margin-bottom: -1px;
  padding: 12px 0 !important;
  border-bottom: 2px solid transparent !important;
  font-size: 13px !important;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #8a8a8a !important;
  transition: color .15s;
}
.tabs__item:hover > span { color: var(--edx-ink) !important; }
.tabs__item.active > span { color: var(--edx-ink) !important; border-bottom-color: var(--edx-red-tab) !important; }

#projector_dictionary .dictionary__param { margin: 0 !important; padding: 9px 14px !important; border-radius: 8px; font-size: 14px; }
#projector_dictionary .dictionary__param:nth-child(odd) { background: var(--edx-panel); }
#projector_longdescription h2 { font-size: 18px !important; margin-bottom: 12px !important; }
#projector_longdescription :is(ul, p) { font-size: 14px !important; line-height: 1.65; }

#products_associated_zone2,
#product_questions_list { padding-bottom: 0 !important; }

/* baner pytań */
.questions__banner {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 28px 32px !important;
  background: var(--edx-panel) !important;
  border: 1px solid var(--edx-line);
  border-radius: var(--edx-r);
}
.questions__banner_item:is(.--label, .--text) { width: auto !important; max-width: none !important; text-align: left !important; }
.questions__banner_item.--label { display: block; font-size: 18px !important; }
.questions__banner_item.--text { display: block; margin-top: 4px; font-size: 14px; line-height: 1.6; color: #555; }
.questions__banner_item.--button { flex: 0 0 auto; width: auto !important; margin: 0 !important; }
@media (max-width: 978px) {
  .questions__banner { flex-direction: column; align-items: flex-start; padding: 22px 20px !important; }
}

/* opinie */
#opinions_section .big_label { margin: 0 !important; padding: 0 0 20px !important; }
#opinions_section .form-control { border-radius: 8px !important; border-color: #dcdcdc !important; transition: border-color .15s, box-shadow .15s; }
#opinions_section .form-control:focus { border-color: var(--edx-ink) !important; box-shadow: 0 0 0 3px rgba(0, 0, 0, .06) !important; outline: 0; }
.opinions-form__addphoto_wrapper { background: var(--edx-panel); border-radius: 8px !important; border-style: dashed !important; border-color: #cfcfcf !important; }
.opinions-form__top { margin-bottom: 20px; }
.opinions-form__name { margin-bottom: 6px; font-size: 12px !important; letter-spacing: 1px; text-transform: uppercase; color: #8a8a8a !important; }
.opinions-form__notes { gap: 4px; }
.opinions__star { font-size: 26px !important; }
.opinions-form__rate { margin-left: 12px; font-size: 20px !important; font-weight: 700; color: var(--edx-ink); }
.opinions-form__addphoto_input::file-selector-button {
  margin-right: 10px;
  padding: 7px 14px;
  border: 1px solid var(--edx-ink);
  border-radius: 6px;
  background: #fff;
  color: var(--edx-ink);
  font-family: inherit;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.opinions-form__addphoto_input::file-selector-button:hover { background: var(--edx-ink); color: #fff; }

/* przyciski czarne */
.questions__banner .btn,
#opinions_section .btn.--solid {
  padding: 13px 24px !important;
  background: var(--edx-ink) !important;
  border-color: var(--edx-ink) !important;
  border-radius: 8px !important;
  color: #fff !important;
  letter-spacing: 1px;
  transition: background .15s;
}
.questions__banner .btn:hover,
#opinions_section .btn.--solid:hover { background: #000 !important; border-color: #000 !important; }

/* =========================================================================
   10. „CZYTAJ WIĘCEJ” (checkbox toggle)
   ========================================================================= */
.css-toggle-input { display: none; }
.hidden-content-for-css { max-height: 0; overflow: hidden; transition: max-height .7s ease-in-out; }
#read-more-toggle-css:checked ~ .read-more-content-container .hidden-content-for-css { max-height: 5000px; }
.read-more-button-css .label-text-hide { display: none; }
#read-more-toggle-css:checked ~ .read-more-trigger-wrapper .label-text-hide { display: inline; }
#read-more-toggle-css:checked ~ .read-more-trigger-wrapper .label-text-show { display: none; }
.read-more-trigger-wrapper { margin: 20px 0; text-align: center; }
.read-more-button-css {
  display: inline-block;
  padding: 10px 20px;
  background-color: var(--edx-accent);
  border: 1px solid var(--edx-accent);
  border-radius: 4px;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all .2s;
}
.read-more-button-css:hover { background-color: #000; border-color: #000; }

/* =========================================================================
   11. NAGŁÓWEK — wyszukiwarka, linki, koszyk
   ========================================================================= */
#menu_search .menu_search__block {
  background: #fff !important;
  border: 1px solid #eceef1;
  border-radius: 999px !important;
  box-shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 4px 14px rgba(16, 24, 40, .08);
}
#menu_search .menu_search__block:focus-within { box-shadow: 0 0 0 3px rgba(31, 35, 40, .08), 0 6px 18px rgba(16, 24, 40, .12); }
#menu_search input.menu_search__input {
  padding-left: 22px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  color: var(--edx-night);
}
#menu_search input.menu_search__input:focus { box-shadow: none !important; outline: 0; }
#menu_search input::placeholder { color: #9aa1ab; }
#menu_search :is(button, .menu_search__submit) i { color: var(--edx-night) !important; }

#menu_top a { color: #4a5059 !important; font-weight: 500; text-decoration: none !important; transition: color .2s; }
#menu_top a:hover { color: var(--edx-night) !important; }

#menu_basket a.top_basket__sub {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 16px !important;
  background: #fff;
  border: 1px solid #e3e5e8;
  border-radius: 999px;
  box-shadow: 0 1px 2px rgba(16, 24, 40, .05);
  text-decoration: none !important;
  transition: border-color .2s, box-shadow .2s;
}
#menu_basket a.top_basket__sub:hover { border-color: var(--edx-night); box-shadow: 0 4px 12px rgba(16, 24, 40, .10); }
#menu_basket a.top_basket__sub,
#menu_basket a.top_basket__sub::before { color: var(--edx-night) !important; }
#menu_basket .top_basket__price { font-weight: 700; letter-spacing: .02em; color: var(--edx-night) !important; }
#menu_basket .badge { background: var(--edx-red) !important; color: #fff !important; }

/* =========================================================================
   12. MENU KATEGORII
   ========================================================================= */
#menu_categories .navbar-nav { justify-content: center; }
#menu_categories a.nav-link.--l1 {
  font-size: 12.5px !important;
  font-weight: 600;
  letter-spacing: .1em;
  line-height: 19.5px !important;
  color: #2a2d33 !important;
  border-radius: 3px;
  transition: color .2s, background .2s;
}
#menu_categories a.nav-link.--l1:hover { color: var(--edx-red) !important; background: #fbf3f3; }
/* aktywna kategoria + [SEZON] wyróżniona pozycja */
#menu_categories a.nav-link.--l1.active,
#menu_categories a.nav-link.--l1[title="BLACK FRIDAY"] { color: var(--edx-red) !important; }

#menu_categories .navbar-nav > .nav-item + .nav-item > .nav-link-wrapper { position: relative; }
#menu_categories .navbar-nav > .nav-item + .nav-item > .nav-link-wrapper::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 1px;
  height: 12px;
  margin-top: -6px;
  background: #dcdcdc;
}

@media (min-width: 979px) {
  #menu_categories .navbar-nav > .nav-item > .nav-link-wrapper > .nav-link.--l1 {
    letter-spacing: .06em;
    border-bottom: 3px solid transparent;
    transition: color .15s, border-color .15s;
  }
  #menu_categories .navbar-nav > .nav-item:hover > .nav-link-wrapper > .nav-link.--l1 {
    color: var(--edx-red) !important;
    border-bottom-color: var(--edx-red);
  }

  #menu_categories .navbar-subnav {
    padding: 28px 40px 32px !important;
    row-gap: 32px !important;
    border-top: 1px solid #efeff1;
    border-radius: 0 0 20px 20px;
    box-shadow: 0 24px 48px rgba(20, 20, 24, .18), 0 0 0 1px rgba(20, 20, 24, .04) !important;
  }
  #menu_categories .navbar-subnav > .nav-merge { padding: 0 24px !important; }
  #menu_categories .navbar-subnav > .nav-merge + .nav-merge { border-left: 1px solid #efeff1; }
  #menu_categories .navbar-subnav > .nav-merge:nth-child(5n+2) { padding-left: 0 !important; border-left: 0; }
  #menu_categories .navbar-subnav .nav-merge > .nav-item { margin-bottom: 24px; }
  #menu_categories .navbar-subnav .nav-merge > .nav-item:last-child { margin-bottom: 0; }

  #menu_categories .navbar-subnav .nav-link.--l2 {
    display: block;
    margin-bottom: 8px;
    padding: 0 0 10px !important;
    border-bottom: 2px solid #f1f1f3;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.35;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #3a3d44 !important;
  }
  #menu_categories .navbar-subnav .nav-link.--l2:hover { color: var(--edx-red) !important; }

  #menu_categories .navbar-subsubnav { padding: 0 !important; }
  #menu_categories .navbar-subsubnav .nav-link.--l3 {
    display: block;
    margin: 0 -8px;
    padding: 3px 8px !important;
    border-radius: 6px;
    font-size: 14px !important;
    line-height: 18px !important;
    color: #2a2d33 !important;
    transition: background .12s, color .12s;
  }
  #menu_categories .navbar-subsubnav .nav-link.--l3:hover { background: #fdf0f1; color: var(--edx-red-dark) !important; text-decoration: none; }
  #menu_categories .navbar-subsubnav .--extend { margin-top: 4px; }
  #menu_categories .navbar-subsubnav .--extend .nav-link.--l3 { font-size: 13px !important; font-weight: 700; color: var(--edx-red-dark) !important; }
  #menu_categories .navbar-subsubnav .--extend .nav-link.--l3:hover { background: transparent; text-decoration: underline; }

  /* menu jednokolumnowe (np. Black Friday) */
  #menu_categories .navbar-nav > .nav-item:has(> .navbar-subnav.--cols1) { position: relative; }
  #menu_categories .navbar-nav > .nav-item > .navbar-subnav.--cols1 { left: 0 !important; width: max-content !important; min-width: 240px; }
  #menu_categories .navbar-subnav.--cols1 { padding: 16px 24px 20px !important; }
  #menu_categories .navbar-subnav.--cols1 > .nav-merge { padding: 0 !important; border-left: 0; }
  #menu_categories .navbar-subnav.--cols1 .nav-merge > .nav-item { margin-bottom: 4px; }
  #menu_categories .navbar-subnav.--cols1 .nav-merge > .nav-item:last-child { margin-bottom: 0; }
  #menu_categories .navbar-subnav.--cols1 .nav-merge > .nav-item:last-child > .nav-link.--l2 { margin-bottom: 0; border-bottom: 0; }
}

/* =========================================================================
   13. STRONA GŁÓWNA — banery, kafle, blog, SEO
   Wszystkie sekcje na pełną szerokość treści (bez dawnych marginesów ±5 px).
   ========================================================================= */
#main_banner1.section,
#main_banner1 .main_slider { margin-bottom: 0 !important; }
.main_slider__item.swiper-slide { margin-left: 0 !important; margin-right: 0 !important; }
#main_cms { position: relative !important; width: 100% !important; padding-left: 0 !important; padding-right: 0 !important; }
img.ws-banner { border-radius: 12px !important; }

@media (max-width: 480px) {
  #ecdp_banner_2 { display: none !important; }   /* [EDAXO-ONLY] */
}

/* [EDAXO-ONLY] baner kampanii: _53 desktop (pełna szerokość okna), _54 mobile */
img[src*="RUMUNIA_WSZYSTKIE_WIELKOSCI_54.jpg"] { display: none !important; }
img[src*="RUMUNIA_WSZYSTKIE_WIELKOSCI_53.jpg"] {
  display: block !important;
  width: 100vw !important;
  max-width: 100vw !important;
  height: auto !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  border: 0 !important;
}
@media (max-width: 767px) {
  img[src*="RUMUNIA_WSZYSTKIE_WIELKOSCI_54.jpg"] {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
    border: 0 !important;
  }
  img[src*="RUMUNIA_WSZYSTKIE_WIELKOSCI_53.jpg"] { display: none !important; }
}

/* --- Kafle kategorii (#menu_buttons2) --- */
#menu_buttons2 {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 0 !important;
}
#menu_buttons2 > div {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 0 2px !important;
  box-sizing: border-box !important;
}
#menu_buttons2 a {
  display: block;
  border-radius: var(--edx-r);
  overflow: hidden;
  box-shadow: var(--edx-shadow);
  transition: box-shadow .25s, transform .25s;
}
#menu_buttons2 img {
  display: block !important;
  width: 100%;
  max-width: 100% !important;
  height: auto !important;
  transition: transform .5s ease;
}
#menu_buttons2 a:hover { box-shadow: var(--edx-shadow-h); transform: translateY(-2px); }
#menu_buttons2 a:hover img { transform: scale(1.04); }

@media (max-width: 757px) {
  #menu_buttons2 {
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    gap: 5px !important;
    margin: 0 auto !important;
    padding-bottom: 30px !important;
    box-sizing: border-box !important;
  }
  #menu_buttons2 :is(.menu_button_wrapper, .col-md-4, .col-6) {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 10px !important;
    box-sizing: border-box !important;
  }
  #menu_buttons2 .menu_button_wrapper :is(a, picture, img) {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
}
@media (min-width: 758px) and (max-width: 978px) {
  #menu_buttons2 {
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 5px !important;
    width: 100% !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
    box-sizing: border-box !important;
  }
  #menu_buttons2 .menu_button_wrapper {
    display: flex !important;
    justify-content: center !important;
    align-items: stretch !important;
    margin: 0 auto !important;
    padding: 5px !important;
    box-sizing: border-box !important;
  }
  #menu_buttons2 .menu_button_wrapper:nth-child(-n+2) { flex: 0 0 calc(50% - 2.5px) !important; max-width: calc(50% - 2.5px) !important; }
  #menu_buttons2 .menu_button_wrapper:nth-child(3) { flex: 0 0 100% !important; max-width: 100% !important; width: 100% !important; }
  #menu_buttons2 .menu_button_wrapper :is(a, picture) { display: block !important; width: 100% !important; height: 100% !important; }
  #menu_buttons2 .menu_button_wrapper img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; }
}
@media (min-width: 979px) {
  #menu_buttons2 {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px !important;
    margin: 0 0 40px !important;
    padding: 0 !important;
  }
  #menu_buttons2 > .menu_button_wrapper {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}
@media (min-width: 1400px) {
  #menu_buttons2 { align-items: stretch !important; }
  #menu_buttons2 .menu_button_wrapper {
    display: flex !important;
    align-items: stretch !important;
    justify-content: center !important;
    aspect-ratio: 1.95 / 1 !important;
    height: auto !important;
    box-sizing: border-box !important;
  }
  #menu_buttons2 .menu_button_wrapper :is(a, picture) { display: block !important; width: 100% !important; height: 100% !important; }
  #menu_buttons2 .menu_button_wrapper img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; }
}

/* --- Artykuły / blog (ogólne) --- */
.article__block {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 1rem;
  padding: 0 1rem;
  box-sizing: border-box;
}
.article__item { flex: 1; min-width: 0; }
@media (max-width: 768px) {
  .article__block { flex-direction: column; }
}
.article__image_wrapper { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; }
.article__image_wrapper .article__image { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.article__item img { display: block; width: 100%; height: auto; }
#blog-item .blog-item_sub.cm img.blog_image { display: none !important; }

/* Tekst artykułu ukryty wizualnie (zostaje dla SEO i czytników) */
.article__text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* --- Blog na stronie głównej --- */
#main_blog .headline__after { font-size: 13px; letter-spacing: 0; text-transform: none; }
#main_blog .headline__after,
#main_blog .headline__after *,
#main_blog .headline__after i::before { color: var(--edx-red-soft) !important; }

#main_blog .article__item {
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: var(--edx-r);
  overflow: hidden;
  box-shadow: var(--edx-shadow);
  transition: box-shadow .25s, transform .25s;
}
#main_blog .article__item:hover { box-shadow: var(--edx-shadow-h); transform: translateY(-2px); }
#main_blog .article__image_wrapper { display: block; aspect-ratio: 3 / 2; overflow: hidden; margin: 0 !important; }
#main_blog .article__image { width: 100% !important; height: 100% !important; object-fit: cover; transition: transform .5s; }
#main_blog .article__item:hover .article__image { transform: scale(1.04); }
#main_blog .article__content { display: flex; flex-direction: column; flex: 1; gap: 8px; padding: 16px 18px 18px !important; }
#main_blog .article__name_wrapper { margin: 0 !important; line-height: 1.35; }
#main_blog .article__name { font-size: 15px !important; font-weight: 700; color: var(--edx-ink); }
#main_blog .article__text:empty { display: none; }
#main_blog .article__more_link { margin-top: auto; font-size: 13px; font-weight: 600; }
#main_blog .article__more_link,
#main_blog .article__more_link *,
#main_blog .article__more_link i::before { color: var(--edx-ink) !important; }
#main_blog .article__more_link i { display: inline-block; transition: transform .2s; }
#main_blog .article__item:hover .article__more_link i { transform: translateX(3px); }
#main_blog .article__item:hover .article__more_link .link__text { text-decoration: underline; }

@media (min-width: 979px) {
  #main_blog { margin: 0 0 40px !important; padding: 0 !important; }
  #main_blog > .headline__wrapper { padding-left: 0 !important; margin-bottom: 20px !important; }
  #main_blog .article__block {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  #main_blog .article__item {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* --- Blok SEO --- */
#main_cms2 {
  padding: 32px 36px 28px !important;
  background: var(--edx-panel);
  border: 1px solid var(--edx-line);
  border-radius: var(--edx-r);
}
#main_cms2 h2 { margin: 0 0 8px !important; font-size: 18px !important; line-height: 1.35; color: var(--edx-ink); }
#main_cms2 h2:not(:first-child) { margin-top: 20px !important; }
#main_cms2 p { max-width: 1000px; margin: 0 0 8px !important; font-size: 14px !important; line-height: 1.65 !important; color: #555; }
#main_cms2 .readmore-controls { margin-top: 16px; text-align: center; }
#main_cms2 .readmore-btn {
  padding: 11px 26px !important;
  background: transparent !important;
  border: 1.5px solid var(--edx-red-soft) !important;
  border-radius: 999px !important;
  color: var(--edx-red-soft) !important;
  font-size: 13px;
  letter-spacing: .5px;
  transition: all .2s;
}
#main_cms2 .readmore-btn:hover { background: var(--edx-red-soft) !important; color: #fff !important; }
@media (min-width: 979px) {
  #main_cms2 { margin: 0 0 48px !important; }
}
@media (max-width: 978px) {
  #main_cms2 { padding: 24px 20px 20px !important; margin-bottom: 32px !important; }
}

/* =========================================================================
   14. KATEGORIA — ścieżka, nagłówek, opis, panel boczny, paginacja
   ========================================================================= */
#breadcrumbs { margin-bottom: 20px !important; padding: 16px 10px 0 !important; }
#breadcrumbs ol { display: flex; flex-wrap: wrap; align-items: center; row-gap: 4px; margin: 0; padding: 0; }
#breadcrumbs li {
  display: inline-flex;
  align-items: center;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 13px;
  line-height: 20px;
  color: #8a8a8a;
}
#breadcrumbs li:first-child { margin-right: 6px !important; }
#breadcrumbs li::after { padding: 0 8px !important; font-size: 9px !important; color: #bdbdbd !important; }
#breadcrumbs li:first-child::after,
#breadcrumbs li:last-child::after { display: none !important; }
#breadcrumbs li a { color: #6b6b6b !important; text-decoration: none; transition: color .15s; }
#breadcrumbs li a:hover { color: var(--edx-red-soft) !important; text-decoration: underline; }
#breadcrumbs .bc-active { color: var(--edx-ink) !important; font-weight: 600; }

.search_name { padding-bottom: 24px !important; }
.search_name h1 { font-size: 28px !important; letter-spacing: 3px; line-height: 1.2; }

/* [EDAXO-ONLY] opis kategorii z dwiema grafikami: pierwsza mobile, druga desktop */
.search_description .search_description__wrapper {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  text-align: center !important;
}
.search_description .search_description__wrapper p { margin: 0 !important; padding: 0 !important; }
.search_description .search_description__wrapper img { width: 100% !important; max-width: 100% !important; height: auto !important; margin: 0 auto !important; }
@media (max-width: 767px) {
  .search_description .search_description__wrapper p img:first-of-type { display: block !important; }
  .search_description .search_description__wrapper p img:last-of-type  { display: none !important; }
}
@media (min-width: 768px) {
  .search_description .search_description__wrapper p img:first-of-type { display: none !important; }
  .search_description .search_description__wrapper p img:last-of-type  { display: block !important; }
}

#menu_categories2 .menu_categories_headline { margin-bottom: 6px; padding-bottom: 10px; border-bottom: 1px solid var(--edx-line); }
#menu_categories2 .menu_categories_label {
  font-size: 13px !important;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--edx-ink) !important;
}
#menu_categories2 li { margin: 0 !important; padding: 0 !important; }
#menu_categories2 li a {
  display: block;
  padding: 5px 0 !important;
  font-size: 14px;
  line-height: 20px !important;
  color: #555 !important;
  transition: color .15s;
}
#menu_categories2 li a:hover,
#menu_categories2 li.active > a { color: var(--edx-red-soft) !important; }

.s_paging { align-items: center; margin-bottom: 16px !important; padding: 0 !important; }
.s_paging .pagination__link,
.s_paging .f-dropdown-toggle { border-radius: 8px !important; }
.s_paging .--active .pagination__link { border-color: var(--edx-red-soft) !important; color: var(--edx-red-soft) !important; }

/* =========================================================================
   15. DOOFINDER
   ========================================================================= */
@media (min-width: 979px) {
  /* panel boczny ukryty, gdy aktywne są wyniki Doofindera */
  aside:has(+ main[data-dfd-display="wrapper"]) { display: none !important; }
  main[data-dfd-display="wrapper"] { flex: 0 0 100% !important; max-width: 100% !important; }
  .dfd-results-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}

/* =========================================================================
   16. CHECKOUT (form#COP) — etykieta na ramce pól adresowych
   ========================================================================= */
form#COP .cop_client_data__item:is(.--firstname, .--lastname, .--street, .--street-number, .--zipcode, .--city, .--firm, .--nip) {
  position: relative;
  margin-top: 18px;
}
form#COP .cop_client_data__item:is(.--firstname, .--lastname, .--street, .--street-number, .--zipcode, .--city, .--firm, .--nip) > .f-label {
  position: absolute !important;
  top: -8px !important;
  left: 14px !important;
  z-index: 3 !important;
  display: inline-block !important;
  width: auto !important;
  max-width: calc(100% - 28px) !important;
  margin: 0 !important;
  padding: 0 6px !important;
  background: #fff !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  color: #000 !important;
  pointer-events: none !important;
}
form#COP .cop_client_data__item:is(.--firstname, .--lastname, .--street, .--street-number, .--zipcode, .--city, .--firm, .--nip) > .f-control {
  padding-top: 18px !important;
}
form#COP .cop_client_data__item:is(.--firstname, .--lastname, .--street, .--street-number, .--zipcode, .--city, .--firm, .--nip) > .f-message {
  margin-top: 6px;
}

/* =========================================================================
   17. STOPKA
   ========================================================================= */
footer {
  padding: 48px 0 24px !important;
  background: var(--edx-footer);
  box-shadow: 0 0 0 100vmax var(--edx-footer);   /* tło na pełną szerokość okna */
  clip-path: inset(0 -100vmax);
}
#footer_links { gap: 24px; margin: 0 !important; padding: 0 10px !important; }
#footer_links .footer_links_label {
  margin-bottom: 4px !important;
  padding-bottom: 12px !important;
  border: 0 !important;
  font-size: 13px !important;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--edx-ink);
}
#footer_links .footer_links_sub { gap: 0 !important; }
#footer_links .footer_links_sub li { margin: 0 !important; padding: 0 !important; }
#footer_links .footer_links_sub a {
  display: inline-block;
  padding: 5px 0 !important;
  font-size: 14px;
  line-height: 20px !important;
  color: #555 !important;
  transition: color .15s;
}
#footer_links .footer_links_sub a:hover { color: var(--edx-red-soft) !important; }

#menu_contact {
  width: auto !important;
  max-width: none !important;
  margin: 16px 10px 24px !important;
  padding: 18px 24px !important;
  background: #fff;
  border: 0 !important;
  border-radius: var(--edx-r);
  box-shadow: var(--edx-shadow);
  font-size: 14px;
}
#menu_contact .menu_contact__items {
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 16px;
  margin: 0 !important;
  padding: 0 !important;
}
#menu_contact .menu_contact__items > li { margin: 0 !important; padding: 0 !important; line-height: 1.5; }

footer .footer_settings {
  padding: 16px 10px !important;
  border-top: 1px solid #e3e1dd !important;
  font-size: 12px;
  color: var(--edx-muted);
}
#menu_banners2 img { filter: grayscale(1); opacity: .75; transition: .2s; }
#menu_banners2 a:hover img { filter: none; opacity: 1; }

@media (max-width: 978px) {
  footer { padding-top: 32px !important; }
  #menu_contact { padding: 16px 18px !important; }
}
.main_page #main_banner1 { margin-bottom: 30px !important; }
/* Podgląd koszyka – edaxo.ro */
#menu_basket .top_basket__details{border:1px solid #EFEFF1 !important;border-radius:16px;box-shadow:0 24px 48px rgba(20,20,24,.18) !important;overflow:hidden}
#menu_basket .top_basket__details_sub{padding:24px !important}
#menu_basket .top_basket__details .headline{margin:0 0 16px !important;padding:0 0 14px !important;border-bottom:1px solid #EFEFF1}
#menu_basket .top_basket__details .headline__name{font-size:16px !important;font-weight:700 !important;letter-spacing:.04em !important;color:#2A2D33 !important}
#menu_basket .top_basket__products{margin:0 !important;padding:0 !important;border:0 !important}
#menu_basket .top_basket__product{display:flex !important;align-items:center;gap:14px;padding:8px 0 !important;margin:0 !important}
#menu_basket .top_basket__img{flex:0 0 64px;width:64px !important;height:64px;background:#F5F5F6;border-radius:10px;display:flex !important;align-items:center;justify-content:center;overflow:hidden;margin:0 !important}
#menu_basket .top_basket__img img{max-width:52px !important;max-height:52px !important;object-fit:contain;mix-blend-mode:multiply}
#menu_basket .top_basket__info{flex:1 1 auto;min-width:0;padding:0 !important}
#menu_basket .top_basket__link{font-size:14px !important;line-height:1.35 !important;color:#2A2D33 !important;text-decoration:none}
#menu_basket .top_basket__link:hover{color:#B0101A !important}
#menu_basket .top_basket__prices{flex:0 0 auto;text-align:right;display:flex;flex-direction:column;align-items:flex-end;padding:0 !important}
#menu_basket .top_basket__prices .top_basket__price{font-size:15px !important;font-weight:700 !important;color:#2A2D33 !important}
#menu_basket .top_basket__unit,#menu_basket .top_basket__vat{font-size:12px !important;color:#6B6F78 !important}
#menu_basket .top_basket__summary{margin-top:16px !important;padding:16px 0 0 !important;border-top:1px solid #EFEFF1 !important;display:flex;flex-direction:column;gap:6px}
#menu_basket .top_basket__summary_item{display:flex !important;justify-content:space-between;align-items:baseline;margin:0 !important;font-size:14px !important}
#menu_basket .top_basket__summary_label{color:#6B6F78 !important;font-size:14px !important}
#menu_basket .top_basket__summary_value{color:#2A2D33 !important;font-size:14px !important;font-weight:700}
#menu_basket .top_basket__summary_item.--worth .top_basket__summary_value{font-size:16px !important}
#menu_basket .top_basket__buttons{margin-top:14px !important;padding:0 !important}
#menu_basket .top_basket__buttons .btn.--solid{display:block;width:100%;background:#D7141E !important;border-color:#D7141E !important;color:#FFFFFF !important;font-size:14px !important;font-weight:700 !important;letter-spacing:.06em;text-transform:uppercase;border-radius:10px;padding:15px 20px !important;transition:background .15s}
#menu_basket .top_basket__buttons .btn.--solid:hover{background:#B0101A !important;border-color:#B0101A !important}
}
/* Strona koszyka – edaxo.ro */
#Basket .basket__label .headline__name,#basketedit_hotspot_zone1 .headline{font-size:24px !important;font-weight:800 !important;letter-spacing:.01em !important;color:#2A2D33 !important}
#Basket .addCodesToBasketLink{font-size:13px;color:#6B6F78 !important;text-decoration:none !important}
#Basket .addCodesToBasketLink:hover{color:#B0101A !important}
#Basket .basket__block.--product{border:1px solid #EFEFF1 !important;border-radius:16px;padding:20px !important;margin-bottom:12px;box-shadow:0 4px 16px rgba(20,20,24,.05);align-items:center;transition:box-shadow .15s}
#Basket .basket__block.--product:hover{box-shadow:0 8px 24px rgba(20,20,24,.09)}
#Basket .basket__item.--photo{width:88px !important;height:88px !important;flex:0 0 88px;background:#F5F5F6;border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-right:8px}
#Basket .basket__item.--photo .photo__link{width:100% !important;height:100% !important;display:flex;align-items:center;justify-content:center}
#Basket .basket__item.--photo img{max-width:72px !important;max-height:72px !important;object-fit:contain;mix-blend-mode:multiply}
#Basket .basket__name h2{margin:0 0 4px}
#Basket .basket__name_link{font-size:16px !important;font-weight:700 !important;line-height:1.35;color:#2A2D33 !important;text-decoration:none}
#Basket .basket__name_link:hover{color:#B0101A !important}
#Basket .basket__param .param__label,#Basket .basket__param .param__value{font-size:12px !important;color:#6B6F78 !important}
#Basket .basket__actions{margin-top:10px}
#Basket .basket__remove{font-size:13px !important;color:#6B6F78 !important;text-decoration:underline;text-underline-offset:3px}
#Basket .basket__remove:hover{color:#B0101A !important}
#Basket .basket__quantity .f-dropdown-toggle,#Basket .basket__quantity select{border:1px solid #D9D9DE !important;border-radius:10px !important;height:44px;font-weight:700}
#Basket .basket__quantity .f-dropdown-toggle:hover{border-color:#2A2D33 !important}
#Basket .basket__item.--sum{font-size:13px;color:#6B6F78}
#Basket .basket__item.--sum strong,#Basket .basket__item.--sum b{font-size:17px !important;color:#2A2D33 !important}
#Basket .basket__tools .tool__button{font-size:13px !important;color:#6B6F78 !important;text-underline-offset:3px}
#Basket .basket__tools .tool__button:hover{color:#B0101A !important}
.summary_wrapper .cop_summary__block.--content{background:#FFFFFF !important;border:1px solid #EFEFF1;border-radius:16px;box-shadow:0 12px 32px rgba(20,20,24,.08);padding:24px !important}
.summary_wrapper .cop_summary__item{border-color:#EFEFF1 !important}
.summary_wrapper .cop_costs__item{font-size:14px !important;color:#6B6F78}
.summary_wrapper .cop_costs__item b,.summary_wrapper .cop_costs__item strong{color:#2A2D33 !important}
.summary_wrapper .cop_total__item{align-items:baseline}
.summary_wrapper .cop_rebate_code__input,.summary_wrapper .f-control{border-radius:10px !important}
.summary_wrapper .cop_buttons__button.--next{border-radius:10px !important;font-size:14px !important;letter-spacing:.06em;text-transform:uppercase;padding-top:16px !important;padding-bottom:16px !important;background:#D7141E !important;border-color:#D7141E !important;color:#FFFFFF !important;transition:background .15s}
.summary_wrapper .cop_buttons__button.--next:hover{background:#B0101A !important;border-color:#B0101A !important}
}
#main_banner1 { margin-bottom: 36px !important; }
#main_banner1 .main_slider {
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 22px 40px -22px rgba(0,0,0,.55);
}
#main_hotspot_zone1 .hotspot__name {
  display: flex; align-items: center; gap: 14px;
}
#main_hotspot_zone1 .hotspot__name::before {
  content: ""; width: 4px; height: 18px; border-radius: 2px; background: #c4161c;
}
#main_hotspot_zone1 .hotspot__name::after {
  content: ""; flex: 1; height: 1px;
  background: linear-gradient(90deg, rgba(0,0,0,.2), transparent);
}
/* Baner – tylko dolne rogi zaokrąglone */
#main_banner1 { margin-bottom: 36px !important; }
#main_banner1 .main_slider {
  border-radius: 0 0 16px 16px;
  overflow: hidden;
  box-shadow: 0 22px 40px -22px rgba(0,0,0,.55);
}

/* Wspólny styl nagłówków sekcji */
.hotspot__wrapper .hotspot__name,
#main_blog > .headline__wrapper {
  display: flex; align-items: center; gap: 14px;
}
.hotspot__wrapper .hotspot__name::before,
#main_blog > .headline__wrapper::before {
  content: ""; flex: 0 0 4px; height: 18px; border-radius: 2px;
  background: #c4161c; order: -1;
}
.hotspot__wrapper .hotspot__name::after,
#main_blog > .headline__wrapper::after {
  content: ""; flex: 1; height: 1px; order: 1;
  background: linear-gradient(90deg, rgba(0,0,0,.2), transparent);
}
.hotspot__wrapper .hotspot__name > .headline__after,
#main_blog > .headline__wrapper > .headline__after { order: 2; }

/* Kafelki kategorii i wpisy bloga */
#menu_buttons2 a,
#main_blog .article__item {
  overflow: hidden;
  box-shadow: 0 14px 30px -18px rgba(0,0,0,.35);
  transition: transform .25s, box-shadow .25s;
}
#menu_buttons2 a:hover,
#main_blog .article__item:hover {
  transform: translateY(-3px);
  box-shadow: 0 20px 36px -18px rgba(0,0,0,.45);
}
@media (max-width: 978px) {
  #Basket .basket__block.--product {
    grid-template-columns: 72px minmax(0, 1fr) auto !important;
    column-gap: 12px !important;
  }
  #Basket .basket__block.--product .basket__item.--photo {
    flex: 0 0 72px;
    width: 72px !important;
    height: 72px !important;
    margin-right: 0 !important;
  }
}
/* Ukrycie nagłówka tylko na stronie BLACK FRIDAY */
section.search_name[aria-label="BLACK FRIDAY"] {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}