/** Shopify CDN: Minification failed

Line 2718:2 Unexpected "}"

**/
/* ============================================================
   BELLER — mobilne menu: chirurgiczne poprawki.
   Scoped do mobilnego drawera (.hidden-desktop .navbar-collapses).
   BREAKPOINT: 953px — TAKI SAM jak natywny drawer Paira w header.css
   (@media max-width:953px). Motyw pokazuje mobilny drawer do 953px,
   więc nasze poprawki MUSZĄ obowiązywać w całym tym zakresie
   (inaczej 769–953px = natywny, niepoprawiony drawer na tablecie).
   Desktop (>953px) NIETKNIĘTY. Prefiks klas/animacji: bms-
   ============================================================ */
@media (max-width: 1199px) {

  /* ---- (1) etykieta „Menu" w lewym górnym rogu — usunięta ---- */
  .hidden-desktop .navbar-collapses .drawer-header-text { display: none !important; }

  /* ---- (3) zero linii między wierszami ---- */
  .hidden-desktop .navbar-collapses .dropdown-element,
  .hidden-desktop .navbar-collapses li,
  .hidden-desktop .navbar-collapses ul,
  .hidden-desktop .navbar-collapses a { border: 0 !important; box-shadow: none !important; }

  /* ---- (4) animacja: panel wysuwa się z lewej ----
     Uwaga: używamy `left` (nie transform) — transform na tym kontenerze
     tworzyłby containing-block dla position:fixed pod-poziomów drawera
     i rozbijał ich nakładanie. `left` tego nie robi. */
  .hidden-desktop .navbar-collapses {
    transition: left .35s cubic-bezier(0.215, 0.61, 0.355, 1) !important;
  }
  .hidden-desktop .navbar-collapses:not(.show) { left: -100% !important; }
  .hidden-desktop .navbar-collapses.show { left: 0 !important; }

  /* ---- (4) kaskadowe pojawianie pozycji ---- */
  @keyframes bmsIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

  .hidden-desktop .navbar-collapses.show .navbar-nav > li { animation: bmsIn .3s cubic-bezier(0.215, 0.61, 0.355, 1) backwards; }
  .hidden-desktop .navbar-collapses.show .navbar-nav > li:nth-child(1) { animation-delay: .10s; }
  .hidden-desktop .navbar-collapses.show .navbar-nav > li:nth-child(2) { animation-delay: .15s; }
  .hidden-desktop .navbar-collapses.show .navbar-nav > li:nth-child(3) { animation-delay: .20s; }
  .hidden-desktop .navbar-collapses.show .navbar-nav > li:nth-child(4) { animation-delay: .25s; }
  .hidden-desktop .navbar-collapses.show .navbar-nav > li:nth-child(5) { animation-delay: .30s; }
  .hidden-desktop .navbar-collapses.show .navbar-nav > li:nth-child(6) { animation-delay: .35s; }
  .hidden-desktop .navbar-collapses.show .navbar-nav > li:nth-child(7) { animation-delay: .40s; }

  /* to samo przy wchodzeniu w głąb (drill-in dodaje .open) — WSZYSTKIE dzieci
     panelu kaskadowo: pozycje (li) ORAZ banery (div.dropdown-menu-drawer) */
  .hidden-desktop .dropdown-menu-lvl-1.open > *,
  .hidden-desktop .dropdown-menu-lvl-2.open > *,
  .hidden-desktop .dropdown-menu-lvl-3.open > * { animation: bmsIn .3s cubic-bezier(0.215, 0.61, 0.355, 1) backwards; }
  .hidden-desktop .dropdown-menu-lvl-1.open > *:nth-child(1),
  .hidden-desktop .dropdown-menu-lvl-2.open > *:nth-child(1),
  .hidden-desktop .dropdown-menu-lvl-3.open > *:nth-child(1) { animation-delay: .04s; }
  .hidden-desktop .dropdown-menu-lvl-1.open > *:nth-child(2),
  .hidden-desktop .dropdown-menu-lvl-2.open > *:nth-child(2),
  .hidden-desktop .dropdown-menu-lvl-3.open > *:nth-child(2) { animation-delay: .08s; }
  .hidden-desktop .dropdown-menu-lvl-1.open > *:nth-child(3),
  .hidden-desktop .dropdown-menu-lvl-2.open > *:nth-child(3),
  .hidden-desktop .dropdown-menu-lvl-3.open > *:nth-child(3) { animation-delay: .12s; }
  .hidden-desktop .dropdown-menu-lvl-1.open > *:nth-child(4),
  .hidden-desktop .dropdown-menu-lvl-2.open > *:nth-child(4),
  .hidden-desktop .dropdown-menu-lvl-3.open > *:nth-child(4) { animation-delay: .16s; }
  .hidden-desktop .dropdown-menu-lvl-1.open > *:nth-child(5),
  .hidden-desktop .dropdown-menu-lvl-2.open > *:nth-child(5),
  .hidden-desktop .dropdown-menu-lvl-3.open > *:nth-child(5) { animation-delay: .20s; }
  .hidden-desktop .dropdown-menu-lvl-1.open > *:nth-child(6),
  .hidden-desktop .dropdown-menu-lvl-2.open > *:nth-child(6),
  .hidden-desktop .dropdown-menu-lvl-3.open > *:nth-child(6) { animation-delay: .24s; }
  .hidden-desktop .dropdown-menu-lvl-1.open > *:nth-child(7),
  .hidden-desktop .dropdown-menu-lvl-2.open > *:nth-child(7),
  .hidden-desktop .dropdown-menu-lvl-3.open > *:nth-child(7) { animation-delay: .28s; }
  .hidden-desktop .dropdown-menu-lvl-1.open > *:nth-child(8),
  .hidden-desktop .dropdown-menu-lvl-2.open > *:nth-child(8),
  .hidden-desktop .dropdown-menu-lvl-3.open > *:nth-child(8) { animation-delay: .32s; }
  .hidden-desktop .dropdown-menu-lvl-1.open > *:nth-child(n+9),
  .hidden-desktop .dropdown-menu-lvl-2.open > *:nth-child(n+9),
  .hidden-desktop .dropdown-menu-lvl-3.open > *:nth-child(n+9) { animation-delay: .36s; }

  @media (prefers-reduced-motion: reduce) {
    .hidden-desktop .navbar-collapses,
    .hidden-desktop .navbar-collapses.show .navbar-nav > li,
    .hidden-desktop .dropdown-menu-lvl-1.open > *,
    .hidden-desktop .dropdown-menu-lvl-2.open > *,
    .hidden-desktop .dropdown-menu-lvl-3.open > * { animation-duration: .01ms !important; transition-duration: .01ms !important; }
  }

  /* ---- (2) stopka: LUPA → LOGOWANIE → JĘZYK (od góry) ---- */
  .hidden-desktop .navbar-collapses .drawer-footer {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }
  .hidden-desktop .navbar-collapses .drawer-footer .header-icons {
    order: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
  .hidden-desktop .navbar-collapses .drawer-footer .menu-drawer__localization { order: 1; }
  /* przełącznik języka/waluty (widget Orbe) ma własny padding-left ~7px → tekst „POLSKA | PLN"
     odstawał w prawo od pozycji nav; zerujemy, by zaczynał się dokładnie na 16px jak reszta */
  .hidden-desktop .navbar-collapses .drawer-footer .menu-drawer__localization button,
  .hidden-desktop .navbar-collapses .drawer-footer .menu-drawer__localization .md-orbe-custom-selector {
    padding-left: 0 !important;
    margin-left: 0 !important;
    text-indent: 0 !important;
  }

  /* ---- (6) chevrony „>" (wejście) i „<" (powrót), spójne z „✕" ---- */
  /* ukryj natywne strzałki/plusy w drawerze */
  .hidden-desktop .navbar-collapses .paira-angle-down,
  .hidden-desktop .navbar-collapses .angle-down,
  .hidden-desktop .navbar-collapses .fa-angle-right,
  .hidden-desktop .navbar-collapses .fa-angle-down,
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-1 > .dropdown-element > div,
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-2 > .dropdown-element > div,
  .hidden-desktop .navbar-collapses .dropdown-submenu-topbar > svg { display: none !important; }

  /* chevron „>" na pozycjach wchodzących w głąb */
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-1 > .dropdown-element,
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-2 > .dropdown-element,
  .hidden-desktop .navbar-collapses .dropdown-element.drawer-go-to-lvl-3 { position: relative; }
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-1 > .dropdown-element::after,
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-2 > .dropdown-element::after,
  .hidden-desktop .navbar-collapses .dropdown-element.drawer-go-to-lvl-3::after {
    content: '';
    position: absolute;
    right: 18px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-top: 0.75px solid #1a1a1a;
    border-right: 0.75px solid #1a1a1a;
    transform: translateY(-60%) rotate(45deg);
    transition: transform .3s cubic-bezier(0.215, 0.61, 0.355, 1), right .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    pointer-events: none;
  }
  /* animacja jak w referencji FJ: po najechaniu/dotknięciu wiersza strzałka „>" przesuwa się w prawo */
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-1 > .dropdown-element:hover::after,
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-2 > .dropdown-element:hover::after,
  .hidden-desktop .navbar-collapses .dropdown-element.drawer-go-to-lvl-3:hover::after,
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-1 > .dropdown-element:active::after,
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-2 > .dropdown-element:active::after,
  .hidden-desktop .navbar-collapses .dropdown-element.drawer-go-to-lvl-3:active::after {
    right: 12px;
  }

  /* chevron „<" na nagłówku powrotu */
  .hidden-desktop .navbar-collapses .close-element-lvl-1,
  .hidden-desktop .navbar-collapses .close-element-lvl-2 { position: relative; padding-left: 26px !important; }
  .hidden-desktop .navbar-collapses .close-element-lvl-1::before,
  .hidden-desktop .navbar-collapses .close-element-lvl-2::before {
    content: '';
    position: absolute;
    left: 4px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-top: 0.75px solid #1a1a1a;
    border-left: 0.75px solid #1a1a1a;
    transform: translateY(-40%) rotate(-45deg);
    transition: transform .3s cubic-bezier(0.215, 0.61, 0.355, 1), left .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    pointer-events: none;
  }
  /* animacja jak FJ: strzałka powrotu „<" przesuwa się w LEWO na :hover/:active */
  .hidden-desktop .navbar-collapses .close-element-lvl-1:hover::before,
  .hidden-desktop .navbar-collapses .close-element-lvl-2:hover::before,
  .hidden-desktop .navbar-collapses .close-element-lvl-1:active::before,
  .hidden-desktop .navbar-collapses .close-element-lvl-2:active::before {
    left: 10px !important;
  }

  /* ---- (8/9) banery w „Sklep" — spójny odstęp ---- */
  .hidden-desktop .navbar-collapses .bms-banner { margin-top: 14px; }

  /* ============================================================
     POPRAWKI PO PODGLĄDZIE (runda 2)
     ============================================================ */

  /* (3–7) Stopka LUPA/LOGOWANIE/JĘZYK tylko na 1. ekranie menu.
     Pod-panele są position:absolute względem .nav.navbar-nav i NIE zakrywają
     stopki (siostra PO nav) — dlatego prześwieca w każdej zakładce. Chowamy
     ją gdy dowolny pod-poziom jest otwarty; wraca po powrocie. */
  .hidden-desktop .navbar-collapses:has(.dropdown-menu-lvl-1.open) .drawer-footer,
  .hidden-desktop .navbar-collapses:has(.dropdown-menu-lvl-2.open) .drawer-footer,
  .hidden-desktop .navbar-collapses:has(.dropdown-menu-lvl-3.open) .drawer-footer {
    display: none !important;
  }
  /* fallback (gdyby :has() nie było wspierane) — klasę ustawia JS */
  .hidden-desktop .navbar-collapses.bms-subopen .drawer-footer { display: none !important; }

  /* (2) Jedna wielkość chevronów na KAŻDYM poziomie: dobij natywne ikonki
     (svg/i/div) w wierszach wchodzących w głąb — zostaje tylko nasz chevron 8px. */
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-1 > .dropdown-element > i,
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-1 > .dropdown-element > svg,
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-2 > .dropdown-element > i,
  .hidden-desktop .navbar-collapses .drawer-go-to-lvl-2 > .dropdown-element > svg,
  .hidden-desktop .navbar-collapses .dropdown-element.drawer-go-to-lvl-3 > i,
  .hidden-desktop .navbar-collapses .dropdown-element.drawer-go-to-lvl-3 > div,
  .hidden-desktop .navbar-collapses .dropdown-element.drawer-go-to-lvl-3 > svg {
    display: none !important;
  }

  /* (1) Marginesy lewo/prawo w PODMENU: nagłówek powrotu gubił padding poziomy
     (padding:12px 0) — wyrównujemy nagłówek i pozycje do 16px. */
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1 > .dropdown-submenu-topbar,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2 > .dropdown-submenu-topbar {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  /* (3) Pod-panele dłuższe niż ekran (np. „Sklep" z 2 banerami) mają się
     przewijać wewnątrz, żeby dolny baner był osiągalny (top:0;bottom:0). */
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3 {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* ============================================================
     RUNDA 3
     ============================================================ */

  /* (A) nagłówek powrotu: tytuł wyśrodkowany, chevron „‹" absolutnie po lewej */
  .hidden-desktop .navbar-collapses .dropdown-submenu-topbar.close-element-lvl-1,
  .hidden-desktop .navbar-collapses .dropdown-submenu-topbar.close-element-lvl-2 {
    justify-content: center !important;
    text-align: center !important;
    position: relative !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
  .hidden-desktop .navbar-collapses .dropdown-submenu-topbar.close-element-lvl-1 > span,
  .hidden-desktop .navbar-collapses .dropdown-submenu-topbar.close-element-lvl-2 > span {
    width: 100%;
    text-align: center !important;
  }
  .hidden-desktop .navbar-collapses .close-element-lvl-1::before,
  .hidden-desktop .navbar-collapses .close-element-lvl-2::before {
    left: 16px !important;
  }

  /* (B v2) Scroll długich pod-paneli BEZ zmiany position (zostaje natywny absolute,
     więc wsuwanie i cofanie o jeden krok działają jak w motywie — bez skoków i „drabinki").
     Panel jest absolute z top:0 (u góry .nav.navbar-nav, tuż pod nagłówkiem);
     zdejmujemy bottom, ograniczamy wysokość do widocznego ekranu i włączamy scroll. */
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1.open,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2.open,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3.open {
    bottom: auto !important;
    height: calc(100dvh - 80px) !important;   /* STAŁA wysokość = widoczny obszar: krótki panel (np. Biżuteria złota) w pełni zakrywa poziom pod spodem (białe tło), a długi (Sklep z banerami) scrolluje */
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding-bottom: 80px !important;   /* duży zapas, by ostatni baner był w całości nad dolną krawędzią/chrome */
    background: #fff !important;
  }

  /* (C) spójny margines 16px: pozycje-liście ORAZ banery w jednej linii */
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1 > li,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2 > li,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3 > li {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  /* banery: natywny padding:0 16px (header.css) sam je wyrównuje do pozycji;
     zapewniamy border-box (bez przelewania w prawo) oraz obraz na 100% szer.
     — inaczej na szerszych widokach (tablet) obrazy nie wypełniają banera
     i mają różne szerokości. */
  .hidden-desktop .navbar-collapses .dropdown-menu-drawer { box-sizing: border-box !important; }
  .hidden-desktop .navbar-collapses .dropdown-menu-drawer img { width: 100% !important; display: block !important; height: auto !important; }

  /* (font) Leaf-linki w podmenu (kolekcje, strony w „Nasze wartości",
     pozycje w „Kontakt & wsparcie", produkty w „Sklep") były 13px — większe
     niż menu główne/root i nagłówki sekcji (11px). Ujednolicamy do 11px = jak
     menu główne, wszędzie ta sama wielkość. */
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1 > li > a,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2 > li > a,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3 > li > a {
    font-size: 11px !important;
    line-height: 17px !important;
  }
  /* ============================================================
     RUNDA 8
     ============================================================ */

  /* (✕ + lupa) POPRAWKA: natywna lupa wyszukiwarki (a.icon-search-new) ma
     TEŻ klasę .close-navbar — więc reguła z rundy 7 (position:absolute na
     każdym .close-navbar) wyrzucała ją ze stopki i pinowała po prawej-środku.
     Scope'ujemy WYŁĄCZNIE do przycisku ✕ w nagłówku i przesuwamy go na LEWO.
     Lupa wraca do naturalnego flow stopki (dół-lewa). */
  .hidden-desktop .navbar-collapses .navbar-header .paddings { position: relative; }
  /* (✕) LEWA krawędź „X" w linii z napisami („Biżuteria" = 16px). Ikona ma ~5px
     wcięcia w viewBox 20×20, więc left:11px → widoczny X startuje na 16px.
     Pion: wyśrodkowany względem logotypu BELLER (top:50% rzędu nagłówka). */
  .hidden-desktop .navbar-collapses .navbar-header .paddings > .close-navbar {
    position: absolute !important;
    left: 11px !important; right: auto !important; top: calc(50% - 3px) !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
  }
  /* animacja jak w referencji FJ: ćwierćobrót „X" przy interakcji (svg, transform .3s, środek) */
  .hidden-desktop .navbar-collapses .navbar-header .paddings > .close-navbar svg {
    display: block;
    transition: transform .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform-origin: 50% 50%;
  }
  .hidden-desktop .navbar-collapses .navbar-header .paddings > .close-navbar:hover svg,
  .hidden-desktop .navbar-collapses .navbar-header .paddings > .close-navbar:active svg {
    transform: rotate(90deg);
  }

  /* (slider) FJ: ZERO poziomego „lewo-prawo" wsuwania pod-paneli.
     Natywny drill-in przesuwał panel transformem translateX(100%→0). Kasujemy
     transform i sterujemy WIDOCZNOŚCIĄ — panel pojawia się w miejscu, a całą
     elegancję daje SCHODKOWE (staggered) wejście pozycji (bmsIn, wyżej).
     Delikatny fade .22s tylko wygładza; ruch poziomy zniknął całkowicie. */
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3 {
    transform: none !important;
    transition: opacity .28s cubic-bezier(0.215, 0.61, 0.355, 1), visibility 0s !important;
  }
  /* POWRÓT: panel gaśnie płynnie (fade-out .28s), a widoczność chowamy dopiero PO
     wygaśnięciu — inaczej znika na twardo. Wejście (.open) pokazuje od razu. */
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1:not(.open),
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2:not(.open),
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3:not(.open) {
    visibility: hidden !important; opacity: 0 !important; pointer-events: none !important;
    transition: opacity .28s cubic-bezier(0.215, 0.61, 0.355, 1), visibility 0s .28s !important;
  }
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1.open,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2.open,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3.open {
    visibility: visible !important; opacity: 1 !important;
  }

  /* (scroll) BLOKADA poziomego scrolla całego drawera — nawigacja jest tylko
     góra-dół; nie ma czego przewijać w poziomie, więc overflow-x wyłączamy
     wszędzie (drawer, nav, pod-panele). Zostaje wyłącznie pion. */
  .hidden-desktop .navbar-collapses,
  .hidden-desktop .navbar-collapses .nav.navbar-nav,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3 {
    overflow-x: hidden !important;
    max-width: 100vw !important;
  }

  /* ============================================================
     RUNDA 9
     ============================================================ */

  /* (strzałki) chevron „>" TAKŻE na pozycjach-liściach (linki bezpośrednie:
     „Biżuteria z kamieniami szlachetnymi", „Karty podarunkowe", kolekcje, strony)
     — dla spójności każdy wiersz ma strzałkę. Drill-i to <div>, liście to <a>,
     więc `> li > a` łapie tylko liście (nie dubluje na drill-ach). */
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1 > li > a,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2 > li > a,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3 > li > a { position: relative; display: block !important; }
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1 > li > a::after,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2 > li > a::after,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3 > li > a::after {
    content: '';
    opacity: 1 !important;   /* motyw daje a::after opacity:0 (podkreślenie) — nadpisujemy, inaczej strzałka niewidoczna */
    padding: 0 !important;   /* motyw daje a::after padding 5px → strzałka za duża; zerujemy → identyczna z drill */
    box-sizing: content-box !important;
    position: absolute;
    right: 18px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-top: 0.75px solid #1a1a1a;
    border-right: 0.75px solid #1a1a1a;
    transform: translateY(-60%) rotate(45deg);
    transition: transform .3s cubic-bezier(0.215, 0.61, 0.355, 1), right .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    pointer-events: none;
  }
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1 > li > a:hover::after,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2 > li > a:hover::after,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3 > li > a:hover::after,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-1 > li > a:active::after,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-2 > li > a:active::after,
  .hidden-desktop .navbar-collapses .dropdown-menu-lvl-3 > li > a:active::after {
    right: 12px;
  }

  /* (baner Eksploruj) kadrowanie tak, by kolczyki były wyśrodkowane */
  .hidden-desktop .navbar-collapses .bms-cover-center {
    aspect-ratio: 3 / 2;
    object-fit: cover !important;
    object-position: center !important;
  }
  /* (baner Mehoffer/Krakowska) portret — kadr od SAMEJ GÓRY */
  .hidden-desktop .navbar-collapses .bms-obj-top {
    object-fit: cover !important;
    object-position: 50% 0% !important;
  }

  /* (przeskok root↔submenu) root NIE ma nagłówka powrotu (39px), więc jego
     pozycje są 39px wyżej niż w submenu → skok przy wejściu w głąb. Obniżamy
     root o wysokość nagłówka powrotu, żeby „Biżuteria" (root) i „Biżuteria złota"
     (submenu) były na TEJ SAMEJ wysokości → płynne przełączanie. Panel jest
     absolutny i NIE zależy od tego paddingu (nagłówek powrotu zostaje u góry). */
  .hidden-desktop .navbar-collapses .nav.navbar-nav { padding-top: 39px !important; }
}

/* ============================================================
   DESKTOP (>953px) — wyrównanie mega-menu + odstępy jak Fernando Jorge
   ============================================================ */
@media (min-width: 1200px) {
  /* (odstępy) pozycje menu głównego: 15px/strona = 30px między pozycjami (jak FJ);
     pierwsza bez lewego, ostatnia bez prawego — trzymamy krawędzie nawigacji */
  .paira-mega-menu.hidden-mobile .navbar-nav > li {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  .paira-mega-menu.hidden-mobile .navbar-nav > li:first-child { padding-left: 0 !important; }
  .paira-mega-menu.hidden-mobile .navbar-nav > li:last-child { padding-right: 0 !important; }

  /* (wysokość) każdy mega-panel rozwija się na TĘ SAMĄ wysokość (jak FJ).
     Treść wyrównana do góry, dół dopełniony do wspólnej wysokości. */
  .paira-mega-menu.hidden-mobile .navbar-nav > li > .dropdown-menu { min-height: 436px !important; } /* 2026-08-19: 420→436 po dodaniu „Bransoletki złote sztywne” (kolumna złota 380px + paddingi) */
  .paira-mega-menu.hidden-mobile .navbar-nav > li > .dropdown-menu { min-height: 420px !important; }

  /* (prawy margines) ikony konta/koszyka równo z „Biżuteria" po lewej (50px od
     krawędzi). Motyw dawał margin-right:-12px → było 38px. Zerujemy. */
  .header-inner .header-icons { margin-right: 0 !important; }

  /* (banery) jednolity, mniejszy, POZIOMY rozmiar we wszystkich mega-panelach
     (jak FJ — ładniejsza skala, nie tak duże/kwadratowe). Było ~580×350. */
  .paira-mega-menu.hidden-mobile .dropdown-menu-inner.dropdown-menu-right { align-self: flex-start; }
  /* bespoke: baner zachowuje się IDENTYCZNIE jak w Kolekcje/Marka — prawa połowa 50%,
     skaluje się tak samo przy każdej szerokości menu (bez margin-left:auto, bez sztywnych px) */
  .paira-mega-menu.hidden-mobile .bms-bespoke .dropdown-menu-inner.dropdown-menu-right { margin-left: 0 !important; }
  /* kadr banera bespoke: pokaż RĘCE (są w górnej części zdjęcia) */
  .paira-mega-menu.hidden-mobile .bms-bespoke .dropdown-menu-inner.dropdown-menu-right img.bms-bespoke-img { object-position: 50% 34% !important; }
  /* kadr banera Marka (KRAKOWSKA1070, portret): kapkę wyżej — widać usta + pierścionki */
  .paira-mega-menu.hidden-mobile .dropdown-menu-inner.dropdown-menu-right img.bms-obj-marka { object-position: 50% 40% !important; }

  /* Butiki: 3. kafel „Obsługa klienta" BEZ zdjęcia — czarny tekst na białym,
     ta sama wysokość co Kraków/Warszawa (stretch) */
  /* Butiki — układ jak na referencji: 3 równe kafle, wyraźne odstępy, wyśrodkowane, stała proporcja.
     Selektory z pełnym łańcuchem + wszystkimi klasami, by PRZEBIĆ wysoką specyficzność motywu.
     align-items:flex-start (nie stretch) → o wysokości decyduje aspect-ratio. */
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > ul.showroom-wrapper.dropdown-menu.paira-dropdown-menu.dropdown-menu-wrapper {
    align-items: flex-start !important;
    justify-content: center !important;
    padding-top: 30px !important; padding-bottom: 44px !important;   /* powietrze góra/dół (longhand → bije longhand motywu) */
  }
  /* UWAGA: flex-gap na tym kontenerze NIE działa (stary flexbox motywu) → odstępy przez MARGINESY kafli.
     28px margines z każdej strony = 56px między kaflami, 28px na zewnętrznych krawędziach. */
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner.showroom-inner.drawer-animation-image {
    flex: 0 0 auto !important;
    margin: 0 20px !important;                            /* odstęp bok-bok (40px między) */
    width: calc((100% - 120px) / 3) !important;          /* 120px = 6× margines 20px → kafle ~+15% szersze */
    max-width: calc((100% - 120px) / 3) !important;
    aspect-ratio: auto !important;                       /* FJ: proporcję trzyma ZDJĘCIE, nie kafel (bo tekst jest POD zdjęciem) */
    height: auto !important;
  }
  /* FJ: zdjęcie poziome (3:2), nazwa/adres POD zdjęciem */
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner.showroom-inner img {
    width: 100% !important; height: auto !important; aspect-ratio: 3 / 2 !important; object-fit: cover !important; display: block !important;
  }
  /* podpis (nazwa + adres) przeniesiony spod overlayu POD zdjęcie: czarny tekst, do lewej */
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner .showroom-url {
    position: static !important; background: none !important; padding: 0 !important;
    display: block !important; margin-top: 22px !important; text-align: left !important;
  }
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner .showroom-url,
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner .showroom-heading {
    color: #1a1a1a !important; text-transform: uppercase !important; letter-spacing: 0.08em !important;
    font-size: 11px !important; font-weight: 500 !important; margin: 0 !important; line-height: 15px !important;
  }
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner .showroom-content,
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner .showroom-content p {
    color: #6b6b6b !important; text-transform: none !important; letter-spacing: normal !important;
    font-size: 11px !important; font-weight: 400 !important; line-height: 16px !important; margin: 5px 0 0 !important;
  }
  .paira-mega-menu.hidden-mobile .bms-showroom-textonly { background: #fff !important; }
  /* 3. kafel tekstowy: zdejmij gradient legibility z .showroom-url → czyste białe tło */
  .paira-mega-menu.hidden-mobile .bms-showroom-textonly .showroom-url { background: none !important; }
  /* tekst 3. kafla CZARNY — trik z POWTÓRZONĄ klasą (.x.x) podbija specyficzność ponad białą czcionkę motywu */
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .bms-showroom-textonly.bms-showroom-textonly .showroom-url.showroom-url,
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .bms-showroom-textonly.bms-showroom-textonly .showroom-url.showroom-url .showroom-heading.showroom-heading,
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .bms-showroom-textonly.bms-showroom-textonly .showroom-url.showroom-url .showroom-content.showroom-content,
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .bms-showroom-textonly.bms-showroom-textonly .showroom-url.showroom-url .showroom-content.showroom-content * { color: #000 !important; }
  /* kadr zdjęcia Krakowa (1. kafel): obniżony → ładniej się skaluje w poziomym kadrze */
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner:first-child img { object-position: 50% 30% !important; }
  .paira-mega-menu.hidden-mobile .dropdown-menu-inner.dropdown-menu-right img {
    width: 100% !important;      /* wypełnia kontener (590px) — brak pustej przestrzeni obok */
    height: 319px !important;    /* +10% wysokości (290→319) — baner trochę wyższy, ładniejsza skala */
    object-fit: cover !important;
    display: block !important;
  }

  /* (Biżuteria na zamówienie / Bespoke) panel: lewa kolumna = jak w Kolekcje (theme 50%),
     NIE sztywne px → baner po prawej ląduje dokładnie tam co w innych panelach.
     Czytelność akapitu trzyma max-width na samym tekście (niżej), nie na kontenerze. */
  .paira-mega-menu.hidden-mobile .bms-bespoke .dropdown-menu-inner.dropdown-menu-left.bms-bespoke-text {
    box-sizing: border-box !important; display: block !important; padding: 0 40px 0 0 !important;
  }
  /* nagłówek + tekst bespoke = identyczne z resztą menu (11px, Avenir Next) */
  .paira-mega-menu.hidden-mobile .bms-bespoke-heading {
    font-size: 11px !important; font-weight: 500 !important; color: #000 !important; margin: 0 0 14px !important; line-height: 17px !important;
  }
  .paira-mega-menu.hidden-mobile .bms-bespoke-heading { max-width: 440px !important; }
  .paira-mega-menu.hidden-mobile .bms-bespoke-text .bms-bespoke-body {
    font-size: 11px !important; font-weight: 400 !important; line-height: 17px !important; color: #000 !important; margin: 0 !important; max-width: 440px !important;
    position: static !important;
    /* NIE wymuszać visibility/opacity — inaczej panel Bespoke jest zawsze widoczny/klikalny gdy zamknięty,
       nachodzi na inne zakładki (przełączanie menu) i nie animuje się. Dziedziczy z otwartego panelu. */
  }
  /* baner bespoke: gasimy pełny gradient motywu na pseudo-elementach */
  .paira-mega-menu.hidden-mobile .bms-bespoke .dropdown-menu-inner.dropdown-menu-right::before,
  .paira-mega-menu.hidden-mobile .bms-bespoke .dropdown-menu-inner.dropdown-menu-right::after { display: none !important; background: none !important; }
  /* podpis „Rzemiosło najwyższej próby" na zdjęciu: subtelny gradient TYLKO przy dole
     — napis czytelny, ręce/rzemiosło u góry zostają w pełni widoczne */
  .paira-mega-menu.hidden-mobile .bms-bespoke .dropdown-menu-inner.dropdown-menu-right a.bms-bespoke-imglink {
    background: linear-gradient(to top, rgba(0,0,0,0.60) 0%, rgba(0,0,0,0.20) 30%, rgba(0,0,0,0) 50%) !important;
  }
  /* P1 — czytelność podpisów białych na WSZYSTKICH prawych banerach mega-menu (Kolekcje/Marka/Sklep):
     motyw dawał za słaby gradient → biały tekst ginął na jasnych zdjęciach (np. pierścionki na białym).
     Ten sam wzorzec co Bespoke: subtelny scrim TYLKO u dołu, górna część zdjęcia bez zmian.
     Nie ruszamy fontu (12px) ani pozycji podpisu — tylko tło pod tekstem. */
  .paira-mega-menu.hidden-mobile .dropdown-menu-inner.dropdown-menu-right a:has(.dropdown-menu-promotion-heading) {
    background: linear-gradient(to top, rgba(0,0,0,0.60) 0%, rgba(0,0,0,0.20) 30%, rgba(0,0,0,0) 50%) !important;
  }

  /* ---- ANIMACJA WEJŚCIA (spójna z innymi panelami: fade + lekki unos, stagger) ---- */
  /* BESPOKE: własne divy (tekst + baner) nie mają klas motywu → dodajemy animację ręcznie.
     Stan zamknięty = opacity:0 (panel i tak visibility:hidden, więc nie przechwytuje kursora). */
  .paira-mega-menu.hidden-mobile .bms-bespoke > .dropdown-menu .bms-bespoke-text,
  .paira-mega-menu.hidden-mobile .bms-bespoke > .dropdown-menu .dropdown-menu-inner.dropdown-menu-right {
    opacity: 0 !important; transform: translateY(-6px) !important;
    transition: opacity .35s cubic-bezier(0.215,0.61,0.355,1), transform .35s cubic-bezier(0.215,0.61,0.355,1) !important;
  }
  .paira-mega-menu.hidden-mobile .bms-bespoke.is-visible > .dropdown-menu .bms-bespoke-text { opacity: 1 !important; transform: none !important; transition-delay: .05s !important; }
  .paira-mega-menu.hidden-mobile .bms-bespoke.is-visible > .dropdown-menu .dropdown-menu-inner.dropdown-menu-right { opacity: 1 !important; transform: none !important; transition-delay: .13s !important; }

  /* BUTIKI: karty mają już fade motywu (stagger 100/200/300ms) — dokładamy UNOS jak w Kolekcje.
     Inline transition-delay motywu (100/200/300ms) zachowuje schodkowość. */
  .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner.drawer-animation-image {
    transform: translateY(-8px) !important;
    transition: opacity .5s cubic-bezier(0.215,0.61,0.355,1), transform .5s cubic-bezier(0.215,0.61,0.355,1) !important;
  }
  .paira-mega-menu.hidden-mobile .navbar-nav > li.is-visible > .showroom-wrapper .showroom-inner.drawer-animation-image {
    transform: none !important;
  }

  @media (prefers-reduced-motion: reduce) {
    .paira-mega-menu.hidden-mobile .bms-bespoke > .dropdown-menu .bms-bespoke-text,
    .paira-mega-menu.hidden-mobile .bms-bespoke > .dropdown-menu .dropdown-menu-inner.dropdown-menu-right,
    .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner.drawer-animation-image {
      transition-duration: .01ms !important; transform: none !important; opacity: 1 !important;
    }
  }
}

/* ============================================================
   BELLER — Panel POMOCY / HELP (slide-over z prawej krawędzi).
   Wspólny dla desktop i mobile; JS wstrzykuje #bms-help-root do
   <body>, więc position:fixed nie łapie żadnego transformowanego
   rodzica. Zamknięty => visibility:hidden + pointer-events:none =>
   NIE przechwytuje kliknięć/hoveru (test elementFromPoint).
   Prefiks klas: bms-help-. Styl spójny z menu (Avenir Next 11px).
   ============================================================ */
.bms-help-root {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  visibility: hidden;
  pointer-events: none;
  /* przy zamknięciu chowamy dopiero PO wysunięciu panelu (.35s) → płynne zwijanie, nie znikanie */
  transition: visibility 0s linear .35s;
}
.bms-help-root.is-open { visibility: visible; pointer-events: auto; transition: visibility 0s linear 0s; }

.bms-help-overlay {
  /* bms: fixed do viewportu - zadne przesuniecia rodzica/drawerow nie ruszaja wyciemnienia */
  position: fixed;
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .28);
  opacity: 0;
  transition: opacity .3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.bms-help-root.is-open .bms-help-overlay { opacity: 1; }

.bms-help-panel {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: max(360px, 40vw); /* 2026-08-20: zaslania kolumne tekstu PDP jak koszyk */
  width: 360px;
  max-width: 86vw;
  background: #fff;
  color: #000;
  box-sizing: border-box;
  padding: 64px 32px 40px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  /* bms: bez gumowego bounce'a scrollera (Mac/iOS) - panel nie odkleja sie od ramki */
  overscroll-behavior: none;
  /* bms: wjazd przez right, nie transform (lekcja z drawera menu); zamykanie .35s jak bylo */
  right: -100%;
  transition: right .35s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translateX(100%);
  transition: transform .35s cubic-bezier(0.215, 0.61, 0.355, 1);
  box-shadow: -1px 0 0 rgba(0, 0, 0, .06);
  /* treść wyśrodkowana w pionie → nie „zaczyna się za wysoko" w wysokim panelu */
  display: flex;
  flex-direction: column;
}
/* otwieranie: dluzszy, miekko wyhamowujacy wjazd - panel sie wylania, nie wyskakuje */
.bms-help-root.is-open .bms-help-panel { right: 0; transition: right .55s cubic-bezier(0.16, 1, 0.3, 1); }
.bms-help-root.is-open .bms-help-panel { transform: translateX(0); }

.bms-help-close {
  position: absolute;
  top: 18px;
  right: 18px;
  background: none;
  border: 0;
  padding: 6px;
  margin: 0;
  cursor: pointer;
  color: #1a1a1a;
  line-height: 0;
}
.bms-help-close svg {
  display: block;
  transition: transform .3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform-origin: 50% 50%;
}
.bms-help-close:hover svg,
.bms-help-close:active svg { transform: rotate(90deg); }

.bms-help-inner {
  font-family: "Avenir Next", "Avenir", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  margin: auto 0;   /* centrowanie w pionie w kolumnie panelu (bez przycinania gdy treść wyższa niż ekran) */
  width: 100%;
}
.bms-help-title {
  font-size: 11px;
  font-weight: 500;
  line-height: 17px;
  color: #000;
  letter-spacing: .02em;
  margin: 0 0 8px;
  text-transform: none;
}
.bms-help-desc {
  font-size: 11px;
  font-weight: 400;
  line-height: 17px;
  color: #000;
  margin: 0 0 7px;
}
/* godziny wsparcia — subtelna linia meta pod intro */
.bms-help-hours {
  font-size: 11px;
  font-weight: 400;
  line-height: 17px;
  color: #000;
  margin: 0 0 26px;
}
.bms-help-group { margin: 0 0 22px; }
.bms-help-group:last-child { margin-bottom: 0; }
.bms-help-link {
  display: flex;
  align-items: center;
  gap: 9px;
  width: -moz-fit-content;
  width: fit-content;
  color: #000;
  text-decoration: none;
  padding: 7px 0;
}
/* ikona kontaktu (WhatsApp / mail) — cienka, w naszym stylu */
.bms-help-ico {
  flex: 0 0 auto;
  display: inline-flex;
  line-height: 0;
  color: #000;
}
.bms-help-ico svg { display: block; }
/* tekst linku — underline animowany TYLKO pod tekstem (nie pod ikoną) */
.bms-help-txt {
  position: relative;
  font-size: 11px;
  font-weight: 400;
  line-height: 17px;
}
.bms-help-txt::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 0;
  height: 1px;
  background: #000;
  transition: width .3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.bms-help-link:hover .bms-help-txt::after,
.bms-help-link:focus-visible .bms-help-txt::after { width: 100%; }

/* trigger — bazowy (dziedziczy kolor tekstu nagłówka) */
.bms-help-trigger { cursor: pointer; color: inherit; }
.bms-help-trigger svg { display: block; }

/* widoczność triggerów wg breakpointu drawera (953/954) */
@media (max-width: 1199px) { .bms-help-trigger-desktop { display: none !important; } }
@media (min-width: 1200px) { .bms-help-trigger-mobile { display: none !important; } }

/* DESKTOP: trigger jako TEKST (nie ikona) — font i wysokość DOKŁADNIE jak nawigacja,
   w jednej linii z kontem/koszykiem (środek Y = 65, jak nav 66). */
@media (min-width: 1200px) {
  .bms-help-trigger-desktop {
    display: inline-flex !important;
    align-items: center !important;
    align-self: center !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 14px 0 0 !important;   /* odstęp od ikony konta/koszyka po prawej */
    font-family: "Avenir Next", "Avenir", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: normal !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    text-decoration: none !important;
    color: inherit !important;
    white-space: nowrap !important;
  }
}

/* mobilny wpis w stopce = układ ikona + tekst jak pozostałe pozycje */
.bms-help-trigger-mobile {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #000;
  text-decoration: none;
  text-transform: none !important;   /* motyw wymusza uppercase w stopce → sentence-case jak reszta menu */
  padding: 0 !important;             /* .as-icon dawał 12px → ikona „?" wcięta względem lupy/konta; zeruj = w linii */
  justify-content: flex-start !important;
}
.bms-help-trigger-mobile,
.bms-help-trigger-mobile * { text-transform: none !important; }
.bms-help-trigger-mobile svg { width: 20px; height: 20px; }

/* blokada scrolla tła gdy panel otwarty */
body.bms-help-open { overflow: hidden; }

@media (prefers-reduced-motion: reduce) {
  .bms-help-overlay,
  .bms-help-panel,
  .bms-help-close svg,
  .bms-help-link::after { transition-duration: .01ms !important; }
  .bms-help-root { transition-delay: 0s !important; }
}

/* ===== MOBILE — poprawki panelu/triggera Assistance (2026-08-07) ===== */
@media (max-width: 1199px) {
  /* (1) „Assistance" w stopce = font JAK NAV (11px, Avenir Next, bez accent-font) — nie „pogrubiony".
     Motyw dawał 12.32px + use-accent-font (font ozdobny) → wyglądał ciężej niż pozycje menu. */
  .hidden-desktop .navbar-collapses .bms-help-trigger-mobile,
  .hidden-desktop .navbar-collapses .bms-help-trigger-mobile span {
    font-family: "Avenir Next", "Avenir", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 17px !important;
    letter-spacing: normal !important;
  }
  /* (2) marginesy stopki = wyrównanie do nawigacji (pozycje nav zaczynają się na 16px na tej kopii).
     Stopka (lupa/konto/Assistance/język+waluta) musi mieć to samo wcięcie co pozycje menu. */
  .hidden-desktop .navbar-collapses .drawer-footer {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  /* (3) „X" panelu Assistance wyżej — do wysokości „X" drawera (drawer X ~13px, panel był 18px) */
  .bms-help-close { top: 11px !important; }
}

/* ===== KOLEKCJE — 3 podkategorie w kolumnach (desktop) 2026-08-07 ===== */
@media (min-width: 1200px) {
  /* ułożenie 1:1 jak Biżuteria: kolumny 200px, gap 20px, bez override szerokości kontenera
     (dzięki temu baner ląduje w tym samym miejscu co w Biżuterii) */
  .paira-mega-menu.hidden-mobile .dropdown-menu-inner.dropdown-menu-left.bms-kol-3col {
    display: flex !important;
    justify-content: flex-start !important;
    gap: 20px !important;
    align-items: flex-start;
    flex-wrap: nowrap !important;
  }
  .paira-mega-menu.hidden-mobile .bms-kol-3col .bms-kol-col { flex: 1 1 0 !important; min-width: 0 !important; width: auto !important; max-width: 200px !important; }
  .paira-mega-menu.hidden-mobile .bms-kol-3col .bms-kol-list > li { display: block !important; width: auto !important; float: none !important; margin: 0 0 10px !important; padding: 0 !important; }
  .paira-mega-menu.hidden-mobile .bms-kol-3col .bms-kol-list > li:last-child { margin-bottom: 0 !important; }
  .paira-mega-menu.hidden-mobile .bms-kol-3col .bms-kol-list a { display: inline-block !important; width: auto !important; }
  .paira-mega-menu.hidden-mobile .bms-kol-heading {
    font-family: "Avenir Next", "Avenir", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 11px; font-weight: 500; line-height: 17px; color: #000;
    letter-spacing: normal; margin: 0 0 16px;
    text-transform: none !important;
  }
  .paira-mega-menu.hidden-mobile .bms-kol-3col .bms-kol-list { margin: 0; padding: 0; list-style: none; }
  .paira-mega-menu.hidden-mobile .bms-kol-3col .bms-kol-list > li { margin: 0 0 10px; padding: 0; }
  .paira-mega-menu.hidden-mobile .bms-kol-3col .bms-kol-list > li:last-child { margin-bottom: 0; }
  .paira-mega-menu.hidden-mobile .bms-kol-3col .bms-kol-list a {
    font-family: "Avenir Next", "Avenir", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 11px; font-weight: 400; line-height: 17px; color: #000; text-decoration: none;
  }
}

/* pusty koszyk: przycisk „Odkryj kolekcje BELLER" — „Odkryj kolekcje" zdaniowo, „BELLER" kapitaliki (z treści), bez uppercase motywu */
.empty-cart .continue-button,
.empty-cart a.button.continue-button,
.empty-cart a.button { text-transform: none !important; }

/* Bespoke na mobile — pozycja top-level jako bezpośredni link, spójna z pozostałymi (chevron „>") */
@media (max-width: 1199px) {
  .hidden-desktop .navbar-collapses .bms-bespoke-m > .dropdown-element {
    position: relative; display: block !important; color: #474747 !important; text-decoration: none !important;
  }
  .hidden-desktop .navbar-collapses .bms-bespoke-m > .dropdown-element::after {
    content: ''; position: absolute; right: 18px; top: 50%; width: 8px; height: 8px;
    border-top: 0.75px solid #1a1a1a; border-right: 0.75px solid #1a1a1a;
    transform: translateY(-60%) rotate(45deg);
    transition: right .3s cubic-bezier(0.215, 0.61, 0.355, 1); pointer-events: none;
  }
  .hidden-desktop .navbar-collapses .bms-bespoke-m > .dropdown-element:hover::after,
  .hidden-desktop .navbar-collapses .bms-bespoke-m > .dropdown-element:active::after { right: 12px; }
}

/* Bespoke (root, mobile) — chowany gdy otwarty dowolny pod-panel, inaczej prześwituje przez lvl-2/3 */
@media (max-width: 1199px) {
  .hidden-desktop .navbar-collapses:has(.dropdown-menu-lvl-1.open) .bms-bespoke-m,
  .hidden-desktop .navbar-collapses:has(.dropdown-menu-lvl-2.open) .bms-bespoke-m,
  .hidden-desktop .navbar-collapses:has(.dropdown-menu-lvl-3.open) .bms-bespoke-m { display: none !important; }
}

/* ===== Logo o 10% większe TYLKO na stronie głównej (template-index) 2026-08-07 =====
   transform:scale = zachowuje proporcje, nie rozpycha layoutu (box zostaje, render +10%) */
body.template-index .header-logo { transform: scale(1.1); transform-origin: center center; }

/* ===== Butiki MOBILE w stylu Fernando Jorge — nazwa/adres POD zdjęciem (parytet z desktopem) 2026-08-07 ===== */
@media (max-width: 1199px) {
  .hidden-desktop .navbar-collapses .showroom-inner { aspect-ratio: auto !important; height: auto !important; }
  /* zdjęcie poziome 3:2 */
  .hidden-desktop .navbar-collapses .showroom-inner img {
    width: 100% !important; height: auto !important; aspect-ratio: 3 / 2 !important; object-fit: cover !important; display: block !important;
  }
  /* podpis spod overlayu POD zdjęcie: czarny, do lewej, bez gradientu */
  .hidden-desktop .navbar-collapses .showroom-inner .showroom-url {
    position: static !important; background: none !important; padding: 0 !important;
    display: block !important; margin-top: 20px !important; text-align: left !important;
  }
  .hidden-desktop .navbar-collapses .showroom-inner .showroom-url,
  .hidden-desktop .navbar-collapses .showroom-inner .showroom-heading {
    color: #1a1a1a !important; text-transform: uppercase !important; letter-spacing: 0.08em !important;
    font-size: 11px !important; font-weight: 500 !important; margin: 0 !important; line-height: 15px !important;
  }
  .hidden-desktop .navbar-collapses .showroom-inner .showroom-content,
  .hidden-desktop .navbar-collapses .showroom-inner .showroom-content p {
    color: #6b6b6b !important; text-transform: none !important; letter-spacing: normal !important;
    font-size: 11px !important; font-weight: 400 !important; line-height: 16px !important; margin: 5px 0 0 !important;
  }
  /* odstęp między kartami (stackowane pionowo w drawerze) */
  .hidden-desktop .navbar-collapses .showroom-inner { margin-bottom: 26px !important; }
  /* ukryj natywny/dziedziczony chevron „›" na krawędzi kafla (FJ = czyste zdjęcie, bez strzałki) */
  .hidden-desktop .navbar-collapses .showroom-inner .showroom-url::after,
  .hidden-desktop .navbar-collapses .showroom-inner .showroom-url::before,
  .hidden-desktop .navbar-collapses .showroom-inner a::after { content: none !important; display: none !important; }
}

/* ===== Fix: nakładka szuflady (.overlay) prześwituje z lewej przy zoomie 2026-08-07 =====
   Motyw chowa .overlay przez `.script .overlay{left:-100vw;width:100vw}` → PRAWA krawędź dokładnie na 0.
   Przy powiększaniu/pomniejszaniu strony zaokrąglenia jednostek vw wpuszczały kilka px
   półprzezroczystej czerni (rgba 0,0,0,.4) z lewej. Bufor -110vw w stanie ZAMKNIĘTYM
   (body bez .show-overlay) = nakładka zawsze całkowicie poza ekranem.
   Otwarcie (body.show-overlay → left:0) NIE jest ruszane, animacja zachowana. */
body:not(.show-overlay) .overlay.scroll-inside { left: -110vw !important; visibility: hidden !important; }
body.show-overlay .overlay.scroll-inside { visibility: visible !important; }

/* ===== Blog „Historie / Stories" — listing FJ-style 2026-08-07 ===== */
/* mniej miejsca u góry sekcji bloga */
.section-with-padding:has(.gallery-grid.columns-2.with-gap) { padding-top: 22px !important; }
.bms-blog-header { text-align: center; margin: 0 auto 26px; max-width: 620px; padding: 0 20px; }
.bms-blog-title { font-size: 12px; font-weight: 400; letter-spacing: 0.16em; text-transform: uppercase; line-height: 1.3; margin: 0; }
/* teksty postów = jak w menu: jedna wielkość 12px, waga 400, ZERO boldów, Avenir Next */
.article-block, .article-block h3, .article-block h3 span, .article-block .article-info, .article-block .article-info *, .article-block .article-text p.article-text {
  font-family: "Avenir Next", "Avenir", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}
/* data + tytuł: lekko pogrubione (500), jak labelki w menu; zajawka regularna (400) */
.article-block h3, .article-block h3 span { font-size: 12px !important; font-weight: 500 !important; line-height: 1.45 !important; margin: 0 !important; letter-spacing: normal !important; }
.article-block .article-info, .article-block .article-info * { font-size: 12px !important; font-weight: 500 !important; letter-spacing: 0.04em !important; }
.article-block .article-text p.article-text { font-size: 12px !important; font-weight: 400 !important; line-height: 1.65 !important; }
/* zdjęcia 4/5 + subtelny hover-zoom */
.article-block .media-frame { overflow: hidden; aspect-ratio: 4 / 5 !important; }
.article-block .media-frame img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1); }
.article-block:hover .media-frame img { transform: scale(1.045); }
.gallery-grid.columns-2.with-gap { row-gap: 40px !important; }
.gallery-grid .article-block > .article-text { margin-top: 24px !important; }
/* WIĘKSZE zdjęcia — jeszcze szersza siatka */
.max-width-grid:has(> .gallery-grid.columns-2.with-gap) { max-width: 1560px !important; }

/* +~10% większe zdjęcia bloga — kontener .max-width-grid ma STAŁĄ szerokość (margin nie poszerza);
   lewarem jest padding 48px→0 (zysk 96px na siatkę) + mniejszy odstęp kolumn. Tylko desktop. */
@media (min-width: 1200px) {
  .max-width-grid:has(> .gallery-grid.columns-2.with-gap) { padding-left: 0 !important; padding-right: 0 !important; }
  .gallery-grid.columns-2.with-gap { column-gap: 48px !important; }
}

/* ===== Artykuł bloga — mniejsze „pytania", bez ciężkich boldów, linki bez podkreśleń 2026-08-07 ===== */
.article-block.article-content h2, .article-block.article-content h3 { font-size: 20px !important; font-weight: 500 !important; line-height: 1.4 !important; letter-spacing: normal !important; }
.article-block.article-content strong, .article-block.article-content b { font-weight: 500 !important; }
/* zasada: hiperłącza w artykule bez podkreśleń */
.main-article a, .article-block.article-content a { text-decoration: none !important; }
/* „Powrót do bloga" — pisane (nie drukowane) + nie bold */
.article-back-to-blog, .article-back-to-blog * { text-transform: none !important; font-weight: 500 !important; }
/* ikona share — delikatna, jak inne ikony (cieńszy stroke, mniejszy rozmiar) */
.article-share svg { width: 20px !important; height: 20px !important; stroke-width: 1.3 !important; }

/* ===== Artykuł — układ edytorialowy (propozycja) 2026-08-07 ===== */
/* tytuł + zajawka wyśrodkowane (magazynowo), tytuł nie bold */
.main-article .article-title { text-align: center; margin-bottom: 4px; }
.main-article .article-title h1 { font-weight: 400 !important; font-size: clamp(24px, 3.1vw, 33px) !important; line-height: 1.16 !important; letter-spacing: 0.01em !important; margin: 0 auto !important; max-width: 900px; }
.main-article .article-excerpt { text-align: center; }
.main-article .article-excerpt p { font-size: 15px !important; color: #555 !important; line-height: 1.75 !important; max-width: 620px; margin: 14px auto 0 !important; }
/* zdjęcie główne = duży hero, ładne odstępy */
.main-article .article-featured_image { margin: 60px auto 48px !important; }
.main-article .article-featured_image img { width: 100%; height: auto; display: block; }
/* treść = wygodna kolumna do czytania (~680px), więcej powietrza */
.main-article .article-content { max-width: 680px !important; margin-left: auto !important; margin-right: auto !important; }
.main-article .article-content p { line-height: 1.8 !important; margin: 0 0 18px !important; }
.main-article .article-content h2, .main-article .article-content h3 { margin: 34px 0 12px !important; }

/* Artykuł — WSZYSTKIE bloki tekstu (w tym infobar: data+share, oraz „Powrót do bloga") w tej samej
   kolumnie 680px co treść, żeby data/share nie wyjeżdżały poza blok. Zdjęcie (max-width-grid) zostaje szersze. */
.main-article .max-width-article { max-width: 680px !important; margin-left: auto !important; margin-right: auto !important; }
/* data UKRYTA wizualnie (SEO: datePublished zostaje w JSON-LD schema, niezależnie od widoczności) */
.main-article .article-date { display: none !important; }
.gallery-grid .article-block .article-info { display: none !important; }

/* „Powrót do bloga" — długa strzałka „←" → cienki chevron „<" jak w menu */
.article-back-to-blog .icon-animated-left svg { display: none !important; }
.article-back-to-blog .icon-animated-left { position: relative; display: inline-block; width: 11px; height: 12px; margin-right: 7px; }
.article-back-to-blog .icon-animated-left::before {
  content: ''; position: absolute; left: 2px; top: 50%;
  width: 7px; height: 7px;
  border-left: 0.75px solid currentColor; border-bottom: 0.75px solid currentColor;
  transform: translateY(-50%) rotate(45deg);
}

/* Paginacja bloga — długie strzałki „←/→" → cienkie chevrony „< >" jak w menu */
.pagination-wrapper .previous-page svg,
.pagination-wrapper .next-page svg { display: none !important; }
.pagination-wrapper .previous-page .underline-animation,
.pagination-wrapper .next-page .underline-animation { position: relative; display: inline-block; width: 12px; height: 12px; }
.pagination-wrapper .next-page .underline-animation::before,
.pagination-wrapper .previous-page .underline-animation::before {
  content: ''; position: absolute; top: 50%; width: 7px; height: 7px;
  border-top: 0.75px solid #727272; border-right: 0.75px solid #727272;
}
.pagination-wrapper .next-page .underline-animation::before { left: 1px; transform: translateY(-50%) rotate(45deg); }
.pagination-wrapper .previous-page .underline-animation::before { right: 1px; transform: translateY(-50%) rotate(-135deg); }

/* ===== Wyszukiwarka w układzie Fernando Jorge (predictive) ===== */
#barracuda-search-target { width: 100% !important; align-items: stretch !important; text-align: left !important; }
.bms-psearch { display: grid; grid-template-columns: 240px 1fr; gap: 56px; width: 100%; text-align: left; align-items: start; padding-top: 6px; }
.bms-psearch__aside { display: flex; flex-direction: column; gap: 34px; }
.bms-psearch__title { font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 500; color: #151515; margin: 0 0 18px; }
.bms-psearch__list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 14px; }
.bms-psearch__link { font-size: 12px; font-weight: 400; letter-spacing: 0.02em; color: #5f5f5f; text-decoration: none; transition: color .2s ease; }
.bms-psearch__link:hover { color: #151515; opacity: 1; }
.bms-psearch__link:hover { opacity: 0.55; }
.bms-psearch__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px 22px; }
.bms-psearch__card { text-decoration: none; color: #151515; display: block; }
.bms-psearch__thumb { overflow: hidden; background: #f4f2ef; }
.bms-psearch__thumb img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; display: block; transition: transform .5s ease; }
.bms-psearch__card:hover .bms-psearch__thumb img { transform: scale(1.04); }
.bms-psearch__pname { display: block; font-size: 12px; font-weight: 500; margin: 12px 0 3px; line-height: 1.4; }
.bms-psearch__main .price, .bms-psearch__card .price { font-size: 10px !important; color: #6b6b6b !important; margin-top: 2px !important; margin-bottom: 0 !important; line-height: 1.4 !important; }
.bms-psearch__all { display: inline-flex; align-items: center; gap: 9px; margin-top: 34px; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 500; color: #151515; text-decoration: none; }
.bms-psearch__all:hover { opacity: 0.55; }
.bms-psearch__chev { display: inline-block; width: 6px; height: 6px; border-top: 0.75px solid currentColor; border-right: 0.75px solid currentColor; transform: rotate(45deg); }
.bms-psearch__empty { font-size: 13px; color: #6b6b6b; text-align: left; }
@media (max-width: 900px) {
  .bms-psearch { grid-template-columns: 1fr; gap: 30px; }
  .bms-psearch__grid { grid-template-columns: repeat(2, 1fr); }
  /* MOBILE: link „Szukaj" nie może przyklejać się do dolnej krawędzi (pasek przeglądarki /
     home-indicator przechwytywał dotyk). Dolny zapas = klikalna strefa. */
  .bms-psearch { padding-bottom: calc(104px + env(safe-area-inset-bottom, 0px)); }
  .bms-psearch__all { margin-top: 26px; }
}

/* Overlay wyszukiwarki — cieńszy „x" (jak lupa) + symetria lewo/prawo */
#search .icon-x svg { stroke-width: 1 !important; }
#search .icon-x svg line { stroke-width: 1 !important; }
#search .search-header { padding-left: 44px !important; padding-right: 44px !important; box-sizing: border-box; }
#search .main-search { width: 100% !important; }
#search form.barracuda.search { padding-left: 0 !important; }
#search .icon-x { right: 44px !important; top: 16px !important; width: 48px !important; height: 48px !important; padding: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important; box-sizing: border-box !important; }
#search .icon-x svg { margin: 0 !important; }

/* lupa: zeruj stary ujemny margines (był pod padding 48) → równo z „x" na 44px */
#search .barracuda-search-submit { margin-left: 0 !important; }

/* MOBILE: lupa nie może być niebieska — <a href="#search"> dziedziczył domyślny link-color.
   Wymuszamy czarny na .icon-search (NIE dotyczy białej .icon-search-top-bar) + overlay submit. */
@media (max-width: 1199px) {
  a.icon-search, a.icon-search:link, a.icon-search:visited, a.icon-search:hover,
  a.icon-search:active, a.icon-search:focus, .icon.icon-search {
    color: #151515 !important;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
  }
  a.icon-search svg, .icon.icon-search svg,
  a.icon-search svg [stroke]:not([stroke="none"]),
  .icon.icon-search svg [stroke]:not([stroke="none"]) { stroke: #151515 !important; }
  #search .barracuda-search-submit { color: #151515 !important; -webkit-tap-highlight-color: rgba(0,0,0,0); }
  #search .barracuda-search-submit svg [stroke]:not([stroke="none"]) { stroke: #151515 !important; }
}

/* ===== Strona wyników /search w układzie FJ (filtry-sidebar + produkty) ===== */
.bms-search-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 52px; align-items: start; max-width: 1560px; margin: 0 auto; padding: 0 20px; box-sizing: border-box; }
.bms-search-main { min-width: 0; }
.bms-search-main #search-results { min-width: 0; max-width: 100%; }
.bms-facets-toggle { display: none !important; }
.bms-search-facets .quick-view-bottom, .bms-search-facets .item-text, .bms-search-facets form.filter { position: static !important; }
.bms-search-facets .filter-buttons-group { position: static !important; bottom: auto !important; left: auto !important; width: auto !important; margin-top: 24px; padding: 0; background: none !important; box-shadow: none !important; }
.bms-search-layout:not(.is-performed) { grid-template-columns: 1fr; }
.bms-search-layout:not(.is-performed) .bms-search-facets { display: none; }
.bms-facets-backdrop { display: none; }

/* inline filters → statyczny sidebar (zdejmujemy styl szuflady) */
.bms-search-facets .overlay-content-content,
.bms-search-facets .collection-filters.quick-view { position: static !important; width: 100% !important; min-width: 0 !important; height: auto !important; max-height: none !important; transform: none !important; background: transparent !important; overflow: visible !important; box-sizing: border-box; }
.bms-search-facets .overlay-closer { display: none !important; }
.bms-search-facets .quick-view-bottom, .bms-search-facets .item-text { height: auto !important; overflow: visible !important; }
.bms-search-facets .filter-line { border-bottom: 0.5px solid #e8e8e8; }
.bms-search-facets .collapse-toggle { padding: 15px 0; cursor: pointer; }
.bms-search-facets h6.barracuda { font-size: 12px !important; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 500; margin: 0; }
.bms-search-facets .filter-option { padding: 5px 0; }
.bms-search-facets .filter-option label { font-size: 12px; color: #444; }
.bms-search-facets .filter-buttons-group { margin-top: 20px; display: flex; gap: 12px; flex-wrap: wrap; }

/* topbar: licznik + narzędzia */
.bms-search-topbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 26px; padding-bottom: 15px; border-bottom: 0.5px solid #e8e8e8; }
.bms-search-count { font-size: 12px; letter-spacing: 0.04em; color: #151515; }
.bms-search-tools { display: flex; align-items: center; gap: 22px; }
.bms-facets-toggle { display: none; }
.bms-search-sort select { font-size: 12px; border: 0.5px solid #d9d9d9; padding: 7px 28px 7px 10px; background: #fff; border-radius: 0; color: #151515; }

@media (max-width: 900px) {
  .bms-search-layout { grid-template-columns: 1fr; gap: 0; }
  .bms-search-facets { position: fixed; top: 0; left: 0; height: 100%; width: 320px; max-width: 86vw; background: #fff; z-index: 3000; transform: translateX(-100%); transition: transform .35s ease; overflow-y: auto; padding: 24px; box-sizing: border-box; }
  body.bms-facets-open .bms-search-facets { transform: translateX(0); }
  .bms-facets-backdrop { display: block; position: fixed; inset: 0; background: rgba(0,0,0,.3); z-index: 2999; opacity: 0; visibility: hidden; transition: opacity .35s ease; }
  body.bms-facets-open .bms-facets-backdrop { opacity: 1; visibility: visible; }
  .bms-facets-toggle { display: inline-flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; background: none; border: none; cursor: pointer; color: #151515; padding: 0; }
  .bms-facets-toggle__chev { width: 6px; height: 6px; border-right: 0.75px solid currentColor; border-bottom: 0.75px solid currentColor; transform: rotate(-45deg); display: inline-block; }
  /* „X" zamknięcia drawera filtrów (ikona jak w menu): widoczny TYLKO gdy drawer otwarty;
     pion = oś ikony koszyka, poziom = oś ikon +/− (oba ustawia JS bmsAlignFacetsClose) */
  .bms-search-facets { padding-top: 100px !important; }
  .bms-facets-close { display: none !important; }
  body.bms-facets-open .bms-facets-close { display: flex !important; align-items: center; justify-content: center; position: fixed; top: 53px; margin: 0; width: auto; height: 16px; padding: 0; background: none; border: 0; color: #151515; cursor: pointer; z-index: 3100; }
  .bms-facets-close svg { display: block; }
  /* rytm pozycji filtrów zbliżony do menu */
  .bms-search-facets .filter-option { padding: 6px 0; }
  .bms-search-facets .filter-option label { line-height: 1.5; }
  /* MOBILE: POKAŻ FILTRY / SORTUJ dosunięte do osi hamburgera i koszyka (16px jak header) */
  .bms-search-toolbar { margin-left: 0 !important; margin-right: 0 !important; padding-left: 16px !important; padding-right: 16px !important; }
  /* MOBILE: okno sortowania przyklejone do ramki ekranu (SORTUJ jest 16px od krawędzi) */
  .bms-sort-menu { right: -16px !important; }
  /* MOBILE drawer: elementy filtrów rozsunięte na pełną szerokość (tekst przy lewej, +/− przy prawej krawędzi)
     — kontener miał sztywne 240px */
  .bms-search-facets .item-text,
  .bms-search-facets .quick-view-part.filter,
  .bms-search-facets .filter-line,
  .bms-search-facets .collapse-toggle { width: 100% !important; max-width: none !important; box-sizing: border-box; }
}
/* MOBILE 2 kolumny: RÓWNE odstępy siatki (lewy brzeg = środek = prawy brzeg).
   Wzór: edge = layout(20) + gridPad + blockPad(7.5% bloku); middle = 2*blockPad + gap(12);
   gridPad = 3.488vw − 9.26px rozwiązuje edge == middle dla każdej szerokości. */
@media (max-width: 767px) {
  .main-search #search-results .small-grid { padding-left: calc(3.488vw - 9.26px) !important; padding-right: calc(3.488vw - 9.26px) !important; }
}
/* „X" drawera TYLKO na mobile — na desktopie filtry to statyczny sidebar */
.bms-facets-close { display: none; }
@media (min-width: 901px) { .bms-facets-close { display: none !important; } }
/* desktop: treść /search przypięta do marginesów nagłówka (lewy = menu Biżuteria, prawy = koszyk, 50px)
   — rozciąga się razem z menu na każdej szerokości, BEZ centrowania (usunięty max-width) */
@media (min-width: 901px) {
  .bms-search-toolbar { padding-left: 50px !important; padding-right: 50px !important; max-width: none !important; }
  .bms-search-layout { padding-left: 50px !important; padding-right: 50px !important; max-width: none !important; }
  /* siatka produktów odrobinę szerzej — zewnętrzne zdjęcia dochodzą do marginesów kolumny/strony
     (kompensacja wewnętrznego paddingu kafelka 7.5% bloku = 1.875% siatki przy 4 kolumnach) */
  .main-search #search-results .small-grid { padding-left: 0 !important; padding-right: 0 !important; margin-left: -1.875% !important; margin-right: -1.875% !important; }
}
/* (napisy Szukaj/Wyczyść w overlayu usunięte na życzenie — złe pozycjonowanie) */
/* filtry: treść na pełną szerokość kontenera (desktop: równo z marginesem menu; mobile: rozsunięte w drawerze) */
.bms-search-facets .overlay-content-content { padding-left: 0 !important; padding-right: 0 !important; max-width: 100% !important; }

/* Sidebar wyników: własny collapse (theme-owy JS był tylko dla szuflady) */
.bms-search-facets .collapsible, .bms-search-facets .collapsible.collapsed { display: block !important; height: auto !important; max-height: 0; overflow: hidden !important; transition: max-height 0.3s cubic-bezier(0.52, 0.16, 0.24, 1); }
.bms-search-facets .filter-line.bms-open .collapsible { max-height: 1500px; }
.bms-search-facets .icon-closed, .bms-search-facets .icon-opened { transition: opacity .2s ease; }
/* fix: panel Assistance (translateX 100%) powodował poziomy overflow strony */
.bms-help-root { overflow: hidden; }
/* „+” → „−” płynnie: obracamy pionową kreskę o 90° i wygaszamy (icon-opened nieużywany) */
.bms-search-facets .icon-opened { display: none !important; }
.bms-search-facets .icon-closed path:nth-child(2) { transform-box: fill-box; transform-origin: center; transition: transform 0.3s cubic-bezier(0.52, 0.16, 0.24, 1), opacity 0.3s ease; }
.bms-search-facets .filter-line.bms-open .icon-closed path:nth-child(2) { transform: rotate(90deg); opacity: 0; }

/* wyniki: sticky sidebar (filtry stoją, produkty się scrollują) + wyrównanie paska wyszukiwania */
.main-search .search-header.max-width-article { max-width: 1560px; margin: 0 auto; padding: 0 20px; box-sizing: border-box; }
.bms-sug-link { font-size: 12px; color: #444; text-decoration: none; }
.bms-sug-link:hover { color: #151515; }
.bms-search-facets .bms-sort-line .filter-option label,
.bms-search-facets .bms-sug-line .filter-option { font-size: 12px; }
@media (min-width: 901px) {
  .bms-search-facets { position: sticky; top: 24px; align-self: start; max-height: calc(100vh - 48px); overflow-y: auto; overflow-x: hidden; padding-right: 4px; }
  .bms-search-facets::-webkit-scrollbar { width: 3px; }
  .bms-search-facets::-webkit-scrollbar-thumb { background: #d9d9d9; }
}

/* ===== Pasek wyników w stylu FJ (wyszukiwanie/licznik na środku + Ukryj filtry + sort) ===== */
.main-search .search-header.max-width-article .barracuda.search { max-width: 460px; margin: 0 auto; justify-content: center; }
.bms-search-countbar { text-align: center; margin: 24px 0 22px; }
.bms-search-countbar .bms-search-count { font-size: 12px; letter-spacing: 0.04em; color: #151515; }

.bms-search-toolbar { display: flex; align-items: center; justify-content: space-between; max-width: 1560px; margin: 0 auto 28px; padding: 13px 20px; border-top: 0.5px solid #e4e4e4; border-bottom: 0.5px solid #e4e4e4; box-sizing: border-box; }
.bms-filters-toggle { display: inline-flex; align-items: center; gap: 9px; background: none; border: none; cursor: pointer; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: #151515; padding: 0; }
.bms-filters-toggle:hover { opacity: 0.6; }
.bms-ft-ico svg { display: block; }
.bms-ft-show { display: none; }
body.bms-filters-collapsed .bms-ft-hide { display: none; }
body.bms-filters-collapsed .bms-ft-show { display: inline; }
.bms-ft-chev { width: 6px; height: 6px; border-left: 0.75px solid currentColor; border-top: 0.75px solid currentColor; transform: rotate(45deg); display: inline-block; transition: transform .3s ease; }
body.bms-filters-collapsed .bms-ft-chev { transform: rotate(-135deg); }

.bms-search-sort { position: relative; display: inline-flex; align-items: center; gap: 8px; cursor: pointer; user-select: none; }
.bms-sort-label { font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: #151515; }
.bms-sort-chev { width: 6px; height: 6px; border-right: 0.75px solid #151515; border-bottom: 0.75px solid #151515; transform: rotate(45deg); display: inline-block; transition: transform .3s ease; }
.bms-search-sort.open .bms-sort-chev { transform: rotate(-135deg); }
.bms-sort-menu { position: absolute; top: 100%; right: 0; margin: 14px 0 0; padding: 14px 0; list-style: none; background: #fff; border: 0.5px solid #e6e6e6; min-width: 0; z-index: 60; text-align: right; opacity: 0; visibility: hidden; transform: translateY(-6px); transition: opacity .22s ease, transform .22s ease, visibility .22s; box-shadow: 0 6px 24px rgba(0,0,0,0.06); }
.bms-search-sort.open .bms-sort-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.bms-sort-menu a { display: inline-block; padding: 8px 20px; font-size: 12px; color: #151515; text-decoration: none; white-space: nowrap; text-transform: none; text-underline-offset: 4px; text-decoration-thickness: 0.5px; }
.bms-sort-menu a:hover { text-decoration: underline; }
.bms-sort-menu a.is-active { text-decoration: underline; }
/* ukryj zbędny „FILTR" (link szuflady z współdzielonego snippetu search) na stronie wyników */
.main-search .filter-navigation { display: none !important; }

@media (min-width: 901px) {
  .bms-search-layout { transition: grid-template-columns .42s cubic-bezier(0.33, 1, 0.68, 1), column-gap .42s ease; }
  .bms-search-facets { overflow-x: hidden; opacity: 1; transition: opacity .3s ease; }
  body.bms-filters-collapsed .bms-search-layout { grid-template-columns: 0px minmax(0, 1fr); column-gap: 0; }
  body.bms-filters-collapsed .bms-search-facets { opacity: 0; pointer-events: none; }
}
@media (max-width: 900px) {
  .bms-search-toolbar { margin-left: 20px; margin-right: 20px; }
}

/* ===== FJ szlify wyników: pole wyszukiwania (ramka + CLEAR + ciemny guzik lupy) ===== */
.bms-searchbox { display: flex !important; align-items: center !important; flex-wrap: nowrap !important; height: 34px !important; min-height: 34px; border: 0.5px solid #dcdcdc; max-width: 460px; margin: 0 auto; padding: 0 !important; box-sizing: border-box; }
.bms-searchbox .field__label, .bms-searchbox .barracuda-search-page-close { display: none !important; }
.bms-searchbox .barracuda-search-page-input { order: 1; flex: 1 1 auto; align-self: center !important; margin: 0 !important; border: none !important; padding: 0 16px !important; height: 34px; line-height: 34px; font-size: 12px; text-align: left; background: none; box-shadow: none !important; }
.bms-searchbox .bms-clear { order: 2; display: flex; align-items: center; padding: 0 14px; font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: #9a9a9a; text-decoration: none; white-space: nowrap; }
.bms-searchbox .bms-clear:hover { color: #151515; }
.bms-searchbox .barracuda-search-page-submit { order: 3; align-self: center; background: #151515 !important; width: 46px; min-width: 46px; height: 34px !important; min-height: 34px; border: none !important; display: flex !important; align-items: center; justify-content: center; margin: 0 !important; padding: 0 !important; cursor: pointer; }
.bms-searchbox .barracuda-search-page-submit svg { stroke: #fff !important; width: 17px; height: 17px; }
.bms-searchbox .barracuda-search-page-submit svg [stroke] { stroke: #fff !important; }
.bms-searchbox .barracuda-search-page-close, .bms-searchbox .search-button.noscript { display: none !important; }

/* zdjęcia produktów −15% (więcej powietrza, delikatniej) — zwężamy cały kafel */
.main-search #search-results .small-grid .small-block { padding: 0 7.5%; box-sizing: border-box; }

/* przyciski filtrów (Usuń wszystko / Pokaż wyniki) — czytelnie na dole sidebaru */
.bms-search-facets .filter-buttons-group { margin-top: 22px; padding-top: 18px; border-top: 0.5px solid #e8e8e8; display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.bms-search-facets .filter-buttons-group a { font-size: 11px !important; letter-spacing: 0.06em; text-transform: uppercase; color: #8a8a8a; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.bms-search-facets .filter-buttons-group a:hover { color: #151515; }
.bms-search-facets .filter-buttons-group button[type="submit"] { font-size: 11px !important; letter-spacing: 0.1em; text-transform: uppercase; border: 0.5px solid #151515 !important; padding: 13px 26px !important; background: none !important; color: #151515 !important; cursor: pointer; width: auto; }
.bms-search-facets .filter-buttons-group button[type="submit"]:hover { background: #151515 !important; color: #fff !important; }

/* fonty bliżej FJ: nagłówki grup delikatnie większe */
.bms-search-facets h6.barracuda { font-size: 13px !important; }
.bms-search-facets .filter-option label { font-size: 13px !important; color: #333 !important; }
.bms-search-countbar .bms-search-count { font-size: 12px; }

/* więcej powietrza pod BELLER (nad wyszukiwarką) */
.main-search .search-header.max-width-article { margin-top: 46px; }
/* przyciski filtrów w kolumnie — nie rozjeżdżają się */
.bms-search-facets .filter-buttons-group { flex-direction: column !important; align-items: flex-start !important; flex-wrap: nowrap !important; }
.bms-search-facets .filter-buttons-group button[type="submit"] { white-space: nowrap; }

/* filtry instant → chowamy „Pokaż wyniki"; zostaje „Usuń wszystko" (clear-all) na dole */
.bms-search-facets .filter-buttons-group button[type="submit"] { display: none !important; }
.bms-search-facets .filter-buttons-group { border-top: 0.5px solid #e8e8e8; margin-top: 20px; padding-top: 18px; }

/* usuń przyciski Usuń wszystko / Pokaż wyniki (niepotrzebne przy instant-filtrze) */
.bms-search-facets .filter-buttons-group { display: none !important; }
/* mniejszy font licznika wyników */
.bms-search-countbar .bms-search-count { font-size: 11px !important; }

/* kolejność filtrów przez CSS order (Biżuteria → Kategoria → Kolekcja → reszta → Cena) */
.bms-search-facets .quick-view-part.filter { display: flex; flex-direction: column; }
/* licznik jeszcze mniejszy, wyśrodkowany względem paska */
.bms-search-countbar { text-align: center; }
.bms-search-countbar .bms-search-count { font-size: 10px !important; letter-spacing: 0.05em; }

/* opisy produktów skalują się z szerokością (jak zdjęcia) */
.main-search #search-results .product-name,
.main-search #search-results .transcy-money,
.main-search #search-results .small-block-bottom .price { font-size: clamp(8.5px, 0.72vw, 11px) !important; }
/* wartości filtrów zawsze z wielkiej litery (kruszec, Princess itd.) */
.bms-search-facets .filter-option label { display: inline-block; }
.bms-search-facets .filter-option label::first-letter { text-transform: uppercase; }
/* numer strony (paginacja) — większy, jak kategorie */
.main-search .pagination-item, .main-search .pagination-item-current { font-size: 14px !important; }

/* paginacja: wyśrodkowana pod produktami + aktywna strona podkreślona */
.main-search .pagination-wrapper { justify-content: center !important; }
.main-search .pagination-item-current { text-decoration: underline !important; text-underline-offset: 4px; }

/* paginacja: kontener .max-width na pełną szerokość kolumny → centruje się względem produktów */
.main-search #search-results #pagination .max-width,
.main-search #search-results .max-width { max-width: 100% !important; margin: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }

/* paginacja: twarde wyśrodkowanie względem produktów */
.main-search #pagination { width: 100% !important; }
.main-search #pagination > .max-width { max-width: 100% !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.main-search .pagination-wrapper { justify-content: center !important; width: 100% !important; }
.main-search .paginate-element { margin-left: auto !important; margin-right: auto !important; }

/* wyniki: odstęp pod stały nagłówek ustawia JS (fixHeaderClearance = wysokość headera + 22px); tu tylko fallback bez !important, by JS wygrał */
/* mobile: etykieta toggle wg stanu szuflady (domyślnie Pokaż, po otwarciu Ukryj) */
@media (max-width: 900px) {
  .bms-ft-hide { display: none; }
  .bms-ft-show { display: inline; }
  body.bms-facets-open .bms-ft-hide { display: inline; }
  body.bms-facets-open .bms-ft-show { display: none; }
}

/* paginacja: pewne centrowanie numerów względem siatki */
.main-search #pagination > .max-width { text-align: center !important; }
.main-search .pagination-wrapper { display: block !important; text-align: center !important; float: none !important; }
.main-search .paginate-element { display: inline-flex !important; float: none !important; margin: 0 auto !important; }

/* fonty filtrów = spójne z menu: KATEGORIA 16px, PODKATEGORIA 13px (mniejsza, łamie złudzenie wersalików) */
.bms-search-facets h6.barracuda { font-size: 16px !important; letter-spacing: 0.02em !important; }
.bms-search-facets .filter-option label { font-size: 13px !important; }
.bms-filters-toggle { font-size: 9px !important; }
.bms-sort-label { font-size: 9px !important; }
.bms-sort-menu a { font-size: 10px !important; }

/* paginacja: odstęp od produktów (żeby nie przylegała) */
.main-search .pagination-wrapper { margin-top: 64px !important; }

/* (cofnięte na życzenie) capitaliki w nawigacji wyszukiwarki ZOSTAJĄ */
/* X do zamknięcia menu sortu */
.bms-sort-close { text-align: right; padding: 2px 16px 8px; }
.bms-sort-close button { background: none; border: none; font-size: 18px; line-height: 1; color: #9a9a9a; cursor: pointer; padding: 0; }
.bms-sort-close button:hover { color: #151515; }

/* header: pusta sekcja aplikacji (64px białej przestrzeni z samego paddingu) — zbijamy, redukuje białą lukę nad wyszukiwarką */
#header-sections .apps.section-with-padding { padding-top: 0 !important; padding-bottom: 0 !important; }

/* filtry (szuflada kolekcji, natywne .collection-filters): tytuły grup WERSALIKAMI + wartości z wielkiej litery */
.collection-filters .filter-line h6.barracuda { text-transform: uppercase; }
.collection-filters .filter-option label::first-letter { text-transform: uppercase; }
/* STANDARD globalny fontów filtrów (też kolekcje): KATEGORIA 16px / PODKATEGORIA 13px */
.collection-filters .filter-line h6.barracuda { font-size: 16px !important; }
.collection-filters .filter-option label { font-size: 13px !important; }

/* feedy produktowe KAŻDEJ kolekcji: produkty −15% (mniejsze + więcej powietrza między nimi) */
body.template-collection .small-grid .small-block { padding-left: 7.5% !important; padding-right: 7.5% !important; box-sizing: border-box; }

/* sidebar wyników: „Biżuteria" wyrównana do górnej krawędzi 1. produktu (offset −31px) */
.bms-search-facets .overlay-content-content.collection-filters { margin-top: 17px !important; }

/* Fix stopki na wyszukiwarce: sekcja wyników miała zaklinowaną wysokość,
   przez co produkty wychodziły poza nią, a stopka lądowała w środku strony. */
.template-search .shopify-section.section-main-search.first-of-content{
  height: auto !important;
  min-height: auto !important;
}
.template-search #page-content,
.template-search barracuda-main.page-content{
  height: auto !important;
  min-height: 100vh !important;   /* krótkie wyniki dalej wypełniają ekran */
}

/* ===== KONWERSJA: informacja o ratach (Klarna) pod ceną na PDP ===== */
.bms-raty{
  font-size: 12px;
  line-height: 1.5;
  color: #6b665c;
  margin: 8px 0 0;
  letter-spacing: .01em;
}
.bms-raty strong{ font-weight: 600; color: #1a1a1a; }

/* ===== KONWERSJA: koszyk jako panel wysuwany z PRAWEJ (nie pełny ekran) =====
   Mechanika openTopbar/closeTopbar bez zmian — anime.js animuje top/opacity, ale
   top:0/opacity:1 !important je neutralizują; widoczność steruje control-visible. */
#cart.topbar{
  left: auto !important;
  right: 0 !important;
  top: 0 !important;
  /* 2026-08-20: szuflada zawsze zaslania kolumne tekstu PDP (tekst zaczyna sie ~60.9vw) */
  width: max(420px, 40vw) !important;
  max-width: 92vw !important;
  height: 100% !important;
  transform: translateX(100%);
  transition: transform .32s cubic-bezier(0.215, 0.61, 0.355, 1) !important;
  box-shadow: -8px 0 30px rgba(0,0,0,.12);
  display: flex !important;          /* kolumna: header / lista / (CTA w stopce) */
  flex-direction: column;
  opacity: 1 !important;
  visibility: hidden;
  overflow: hidden;
  overscroll-behavior: contain;
  padding-bottom: 0 !important;
}
#cart.topbar.control-visible{
  transform: translateX(0);
  visibility: visible;
}
@media (max-width: 768px){
  #cart.topbar{ width: 100% !important; max-width: 100% !important; left: auto !important; transition: transform .32s cubic-bezier(0.215, 0.61, 0.355, 1) !important; }
  #cart.topbar.visible{ left: auto !important; }
}

/* układ JEDNOKOLUMNOWY wewnątrz panelu: nagłówek u góry, lista przewijalna, podsumowanie+CTA na dole */
#cart .header.topbar-cart{ flex: 0 0 auto; }
#cart .cart-header{ padding: 24px !important; }
#close-cart-panel{ margin-right: 0 !important; }
#cart .topbar-content{ flex: 1 1 auto; overflow: hidden !important; height: auto !important; }
#cart .main-cart, #cart .main-cart .main-cart-content{ height: 100% !important; }
#cart .main-cart .main-cart-content form{ display: flex !important; flex-direction: column !important; gap: 0 !important; height: 100% !important; padding-top: 0 !important; }
#cart .cart-items{ flex: 1 1 auto; overflow-y: auto !important; min-height: 0; width: 100% !important; }
#cart .cart-footer{ flex: 0 0 auto; margin-top: auto; position: static !important; width: 100% !important; }

/* Koszyk-panel: poprawki po review (bez logo, marginesy, zamykanie) */
#cart .cart-header{ display: flex !important; grid-template-columns: none !important; align-items: center; justify-content: space-between; padding: 22px 24px !important; height: auto !important; }
#close-cart-panel{ margin: 0 !important; cursor: pointer; }
#close-cart-panel .icon-x svg{ width: 16px; height: 16px; }
#cart .cart-items{ padding: 0 24px !important; }
#cart .cart-footer{ padding: 0 24px 20px !important; box-sizing: border-box; }
#cart .cart-footer-wrapper{ width: 100% !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; }

/* „Zapakuj na prezent" + żelazne fakty (premium, powściągliwie) */
.bms-gift-wrap{ border-top: 0.5px solid #e8e8e8; padding-top: 14px; margin-top: 6px; }
.bms-gift-wrap-label{ display: flex; align-items: center; gap: 10px; cursor: pointer; font-size: 12px; color: #151515; }
.bms-gift-wrap-label input{ width: 14px; height: 14px; accent-color: #151515; margin: 0; }
.bms-cart-trust{ display: flex; flex-direction: column; gap: 3px; margin: 10px 0 4px; }
.bms-cart-trust span{ font-size: 11px; line-height: 1.5; color: #8a8a8a; letter-spacing: .01em; }

/* Koszyk-panel: treść musi skalować się do szerokości panelu (theme .narrow-section ma sztywne 362px) */
#cart .cart-footer .cart-footer-wrapper,
#cart .cart-footer .narrow-section,
#cart .cart-footer-wrapper.narrow-section { width: 100% !important; min-width: 0 !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; box-sizing: border-box !important; }
#cart .cart-footer .cart-summary-line,
#cart .cart-footer .cart-summary-line-note,
#cart .cart-footer .cart-summary-line-note textarea,
#cart .cart-footer .cart-buttons,
#cart .cart-footer input[name="checkout"] { width: 100% !important; min-width: 0 !important; max-width: 100% !important; box-sizing: border-box !important; }
#cart .cart-items .cart-line, #cart .cart-items > * { max-width: 100% !important; min-width: 0 !important; box-sizing: border-box; }
/* panel: zdejmij stary 50px padding pełnoekranowego koszyka (marginesy panelu = jednolite 24px) */
#cart .main-cart{ padding-left: 0 !important; padding-right: 0 !important; }
#cart .cart-items{ box-sizing: border-box !important; width: 100% !important; }

/* CTA „Przejdź do kasy" ZAWSZE widoczne: panel przewija całość, przycisk sticky na dole panelu */
#cart .topbar-content{ overflow-y: auto !important; overscroll-behavior: contain; }
#cart .main-cart .main-cart-content form{ height: auto !important; min-height: 100%; }
#cart .cart-items{ flex: 0 0 auto !important; overflow: visible !important; }
#cart .cart-footer{ margin-top: 0 !important; }
#cart .cart-footer .cart-buttons{ position: sticky !important; bottom: 0 !important; z-index: 5; background: #fff; margin: 0 -24px !important; padding: 12px 24px 16px !important; width: calc(100% + 48px) !important; max-width: none !important; box-sizing: border-box !important; }
#cart .cart-footer{ margin-top: auto !important; }

/* Proponowane produkty w koszyku („Dopełnij wybór") */
#cart .bms-cart-recs{ padding: 4px 24px 18px; }
#cart .bms-cart-recs:empty{ display: none; }
#cart .bms-cart-recs-title{ font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: #151515; margin: 14px 0 12px; padding-top: 14px; border-top: 0.5px solid #e8e8e8; }
#cart .bms-cart-recs-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
#cart .bms-cart-rec{ display: block; text-decoration: none; color: #151515; min-width: 0; }
#cart .bms-cart-rec-img{ display: block; overflow: hidden; background: #f4f2ef; }
#cart .bms-cart-rec-img img{ width: 100%; aspect-ratio: 0.8; object-fit: cover; display: block; transition: transform .4s ease; }
#cart .bms-cart-rec:hover .bms-cart-rec-img img{ transform: scale(1.04); }
#cart .bms-cart-rec-name{ display: block; font-size: 9px; letter-spacing: .04em; text-transform: uppercase; line-height: 1.4; margin: 7px 0 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#cart .bms-cart-rec-price{ display: block; font-size: 9px; color: #8a8a8a; }

/* Koszyk-panel: ODSTĘPY (oddech między pozycjami i sekcjami) */
#cart .cart-items{ padding-top: 6px !important; }
#cart .cart-line{ padding: 16px 0 !important; margin: 0 !important; border-bottom: 0.5px solid #ececec; gap: 14px; }
#cart .cart-items .cart-line:last-child{ border-bottom: 0; }
#cart .cart-summary-line{ margin: 7px 0; }
#cart .cart-footer .cart-summary-line-summary-title{ margin: 4px 0 10px; }
#cart .bms-cart-recs-title{ margin-top: 6px; }
.bms-gift-wrap{ padding-top: 16px; }
.bms-cart-trust{ margin: 12px 0 6px; }

/* Koszyk-panel: KLIKALNOŚĆ (tap-targety min ~40px) */
#close-cart-panel{ padding: 12px; margin: -12px !important; cursor: pointer; }
#cart .barracuda-cart-removeButton{ display: inline-block; padding: 8px 12px 8px 0; margin: -8px 0; cursor: pointer; }
#cart .cart-item-quantity-element{ padding: 8px 8px; margin: -8px -8px; cursor: pointer; }
#cart .line-item-quantity-selector ul li{ padding: 10px 16px; cursor: pointer; }
.bms-gift-wrap-label{ padding: 8px 0; margin: -4px 0; }
.bms-gift-wrap-label input{ width: 16px; height: 16px; flex: 0 0 auto; cursor: pointer; }
#cart .cart-summary-terms{ display: flex; align-items: flex-start; gap: 10px; padding: 6px 0; }
#cart .cart-summary-terms input{ width: 16px; height: 16px; margin-top: 1px; flex: 0 0 auto; cursor: pointer; }
#cart .cart-summary-terms label{ cursor: pointer; }
#cart .cart-item-name{ display: inline-block; padding: 2px 0; }
/* nazwy produktów w koszyku DRUKOWANYMI (spójnie z siatkami produktów) */
#cart .cart-item-name h3, #cart .cart-item-name .underline-animation{ text-transform: uppercase !important; }

/* „+" szybkiego dodania na kartach propozycji */
#cart .bms-cart-rec-img{ position: relative; }
#cart .bms-cart-rec-add{ position: absolute; right: 6px; bottom: 6px; width: 26px; height: 26px; display: flex; align-items: center; justify-content: center; background: #fff; border: 0.5px solid #d9d9d9; border-radius: 0; font-size: 15px; line-height: 1; color: #151515; cursor: pointer; padding: 0; transition: background .2s ease, color .2s ease; }
#cart .bms-cart-rec-add:hover{ background: #151515; color: #fff; }

/* dolna sekcja: mniejsze odstępy (było za luźno) */
#cart .cart-summary-line{ margin: 4px 0; }
#cart .cart-footer .cart-summary-line-summary-title{ margin: 2px 0 6px; }
.bms-gift-wrap{ padding-top: 10px; margin-top: 2px; }
.bms-cart-trust{ margin: 8px 0 2px; gap: 2px; }
#cart .cart-summary-terms{ padding: 4px 0; }
#cart .cart-footer .cart-buttons{ padding-top: 8px !important; }
#cart .bms-cart-recs-title{ margin: 8px 0 10px; padding-top: 10px; }
#cart .bms-cart-recs{ padding-bottom: 12px; }

/* GWARANCJA: lista pozycji nigdy nie klinuje wysokości (koniec nachodzenia recs/podsumowania) */
#cart #main-cart-items{ max-height: none !important; height: auto !important; overflow: visible !important; width: 100% !important; margin-top: 0 !important; }
#cart .cart-line{ position: static !important; }

/* placeholder „specjalnego życzenia": delikatniejszy (więcej przezroczystości) */
#cart .cart-summary-line-note textarea::placeholder{ color: #9a958b; opacity: .55; }

/* „+" na propozycjach: animacja (hover powiększenie, klik wciśnięcie) */
#cart .bms-cart-rec-add{ transition: background .22s ease, color .22s ease, transform .22s cubic-bezier(0.34, 1.56, 0.64, 1); }
#cart .bms-cart-rec:hover .bms-cart-rec-add{ transform: scale(1.1); }
#cart .bms-cart-rec-add:hover{ transform: scale(1.12) !important; }
#cart .bms-cart-rec-add:active{ transform: scale(0.9) !important; }

/* ===== Koszyk: ujednolicenie i wyrównanie „prezent" + „regulamin" ===== */
#cart .cart-footer .bms-gift-wrap,
#cart .cart-footer .cart-summary-terms{
  padding-left: 0 !important;
  margin-left: 0 !important;
}
/* oba wiersze = ten sam kontener flex, równy górny brzeg (ładne przy 2 liniach regulaminu) */
#cart .bms-gift-wrap-label,
#cart .cart-summary-terms{
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
}
/* ten sam rozmiar, waga i kolor tekstu w obu wierszach */
#cart .bms-gift-wrap-label,
#cart .cart-summary-terms label{
  font-size: 12px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
  color: #151515 !important;
  letter-spacing: .01em !important;
  margin: 0 !important;
}
/* identyczne checkboxy, czubek równo z pierwszą linią tekstu */
#cart .bms-gift-wrap-label input,
#cart .cart-summary-terms input{
  width: 16px !important;
  height: 16px !important;
  margin: 1px 0 0 0 !important;
  flex: 0 0 auto !important;
  accent-color: #151515 !important;
}
/* raty pod przyciskiem: lekki oddech od przycisku */
.bms-raty{ margin: 12px 0 0; }

/* Nagłówek koszyka: bez tła, delikatna kreska pod spodem (jak linia nad „Bezpłatne pakowanie na prezent") */
#cart .header.topbar-cart{
  background: #fff !important;
  border-bottom: 0.5px solid #e8e8e8;
}
#cart .cart-header{
  height: 40px !important;
  padding: 0 24px !important;
  align-items: center !important;
  background: #fff !important;
  box-sizing: border-box !important;
}
#cart .cart-header-count{ line-height: 1.4 !important; }
#cart .cart-header-count{
  color: #151515 !important;   /* czytelny ciemny tekst na ciepłym tle */
}

/* ===== Koszyk: porządek marginesów i odstępów (oznaczenia usera) ===== */
/* 1) opcje pozycji w JEDNEJ linii: „Rozmiar: 4" „Materiał: 14K" obok siebie */
#cart .cart-item-line-description-wrapper{ display: flex !important; flex-wrap: wrap !important; gap: 2px 18px !important; }
#cart .product-option{ width: auto !important; min-width: 0 !important; }
#cart .product-option p{ white-space: nowrap !important; margin: 0 !important; display: inline !important; }
/* 2) RÓWNE odstępy wierszy stopki: rytm 12px (wiersze główne) / 6px (pod-wiersze Produkty-Dostawa-Łącznie) */
#cart .cart-footer-wrapper > div > .cart-summary-line,
#cart .cart-footer-wrapper > .cart-summary-line{ margin: 12px 0 !important; }
#cart .cart-footer .cart-summary-line-summary-title{ margin: 0 0 12px !important; }
#cart .cart-summary-line-column .cart-summary-line-row{ margin: 6px 0 !important; }
#cart .cart-summary-line .cart-summary-line{ margin: 6px 0 !important; }
.bms-gift-wrap{ padding-top: 14px !important; margin: 12px 0 !important; }
.bms-cart-trust{ margin: 12px 0 !important; gap: 4px !important; }
#cart .cart-summary-terms{ margin: 12px 0 !important; padding: 0 !important; }
#cart .cart-footer .cart-buttons{ margin-top: 12px !important; }
/* 3) spójny PRAWY margines 24px: ceny pozycji i wartości równo z krawędzią treści */
#cart .cart-item-price{ margin-right: 0 !important; padding-right: 0 !important; text-align: right; }
#cart .cart-line{ padding-right: 0 !important; }
/* 4) regulamin: checkbox i tekst w jednej linii */
#cart .cart-summary-terms{ display: flex !important; align-items: flex-start !important; gap: 10px !important; flex-wrap: nowrap !important; }
#cart .cart-summary-terms input{ flex: 0 0 auto !important; }
#cart .cart-summary-terms label{ flex: 1 1 auto !important; display: inline !important; width: auto !important; }
/* 5) animacja treści koszyka: spokojny crossfade (bez ruchu/skoku) — dodanie i usunięcie pozycji */
@keyframes bmsCartRefresh{ from{ opacity: .55; } to{ opacity: 1; } }
#cart .main-cart.bms-refreshing{ animation: bmsCartRefresh .3s ease-out; }
/* pozycje: kolumna tekstu nie może wystawać poza padding panelu (ceny równo 24px od krawędzi) */
#cart .cart-line{ width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; }
#cart .cart-item-text{ width: auto !important; min-width: 0 !important; flex: 1 1 auto !important; max-width: none !important; }
#cart .cart-item-line-description, #cart .cart-item-line-description-wrapper{ width: 100% !important; max-width: 100% !important; }
/* selektor Ilość: tap-target nie może wypychać poza prawą krawędź */
#cart .cart-item-quantity-element{ margin-right: 0 !important; padding-right: 0 !important; }
/* rząd detali pozycji: nie może być szerszy niż kolumna (zawijanie zamiast wystawania) */
#cart .cart-item-details{ flex-wrap: wrap !important; min-width: 0 !important; max-width: 100% !important; width: 100% !important; box-sizing: border-box !important; }
#cart .cart-item-quantity-element{ width: auto !important; }
/* cena pozycji: równo z pierwszą linią nazwy (baseline), nie wyżej */
#cart .cart-item-line-description-wrapper > .flex{ align-items: baseline !important; }
#cart .cart-item-price{ align-self: baseline !important; }
/* korekta: baseline łapał ukryty wiersz — równamy top ceny do topu 1. linii nazwy (+2px optycznie) */
#cart .cart-item-line-description-wrapper > .flex{ align-items: flex-start !important; }
#cart .cart-item-price{ align-self: flex-start !important; margin-top: 2px !important; }
#cart .cart-item-price .visually-hidden{ position: absolute !important; }
/* rząd nazwa+cena: bez zawijania — cena zawsze w pierwszej linii po prawej */
#cart .cart-item-line-description-wrapper > .flex{ flex-wrap: nowrap !important; width: 100% !important; }
#cart .cart-item-name{ flex: 1 1 auto !important; min-width: 0 !important; }
#cart .cart-item-price{ flex: 0 0 auto !important; white-space: nowrap !important; margin-top: 0 !important; }

/* ===== Koszyk: hierarchia odstępów (w sekcji ciasno, między sekcjami oddech) + nagłówek kapitalikami ===== */
/* PODSUMOWANIE ZAMÓWIENIA — styl jak „DOPEŁNIJ WYBÓR": kapitaliki + linia nad */
#cart .cart-footer .cart-summary-line-summary-title{
  font-size: 11px !important; letter-spacing: .12em !important; text-transform: uppercase !important;
  font-weight: 400 !important; color: #151515 !important;
  border-top: 0.5px solid #e8e8e8; padding-top: 14px !important; margin: 2px 0 10px !important;
}
/* zresetuj wewnętrzne wysokości wierszy (motyw dodawał swoje) */
#cart .cart-footer .cart-summary-line{ min-height: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
/* W SEKCJI: ciasno (5px) */
#cart .cart-footer-wrapper > div > .cart-summary-line,
#cart .cart-footer-wrapper > .cart-summary-line{ margin: 5px 0 !important; }
#cart .cart-summary-line-column .cart-summary-line-row,
#cart .cart-summary-line .cart-summary-line{ margin: 5px 0 !important; }
#cart .cart-footer .cart-gift-note-container{ margin: 8px 0 4px !important; }
#cart .gift-note-wrapper{ margin: 2px 0 8px !important; }
#cart .cart-summary-line-note textarea{ margin: 0 !important; }
#cart .cart-summary-line-column{ margin: 8px 0 4px !important; }
/* MIĘDZY SEKCJAMI: oddech (14px, spójny z liniami-separatorami) */
.bms-gift-wrap{ padding-top: 14px !important; margin: 14px 0 4px !important; }
.bms-cart-trust{ margin: 5px 0 4px !important; gap: 3px !important; }
#cart .cart-summary-terms{ margin: 12px 0 4px !important; }
#cart .cart-footer .cart-buttons{ margin-top: 8px !important; padding-top: 8px !important; }
/* footer-wrapper: zeruj flex-gap motywu — odstępami rządzą wyłącznie nasze marginesy sekcji */
#cart .cart-footer-wrapper{ gap: 0 !important; row-gap: 0 !important; }
/* regulamin: checkbox wyśrodkowany względem linii tekstu */
#cart .cart-summary-terms{ align-items: center !important; }
#cart .cart-summary-terms input{ margin: 0 !important; }


/* MOBILE koszyk: układ pozycji jak na desktopie
   1) zdjęcie kupionego = rozmiar kart „Dopełnij wybór" (⅓ szerokości treści, proporcja 4:5)
   2) cena w PIERWSZEJ linii obok nazwy (koniec kolumny motywu)
   3) Rozmiar / Materiał / Ilość w jednej linii */
@media (max-width: 768px){
  #cart .main-cart .cart-item-line-description-wrapper > div:first-child{
    flex-direction: row !important; flex-wrap: nowrap !important; align-items: flex-start !important; gap: 12px !important;
  }
  #cart .main-cart .item-line-media,
  #cart .main-cart .item-line-media .media{
    width: calc((100vw - 72px)/3) !important;
    min-width: calc((100vw - 72px)/3) !important;
    height: calc(((100vw - 72px)/3) * 1.25) !important;
  }
  #cart .cart-item-details{ flex-wrap: nowrap !important; align-items: baseline !important; gap: 14px !important; }
  #cart .cart-item-quantity-element{ margin-top: 0 !important; padding-top: 0 !important; }
}
/* MOBILE: odstęp między nazwą produktu a szczegółami — jak na desktopie */
@media (max-width: 768px){
  #cart .cart-item-details{ margin-top: 12px !important; }
}
/* „Coś tylko dla Ciebie": odstęp od Łącznie = 18px (jak Produkty→Dostawa) */
#cart .cart-footer .cart-gift-note-container,
#cart .cart-footer .cart-gift-note-container-mobile{ margin-top: 16px !important; }
#cart .cart-footer .cart-gift-note-container,
#cart .cart-footer .cart-gift-note-container-mobile{ margin-top: 13px !important; }
/* nagłówek koszyka: font identyczny jak pasek zapowiedzi (12.32px = 0.77rem skala motywu) */
/* 2026-08-20: naglowek koszyka jak w szufladzie graweru - wersaliki na osi logotypu BELLER */
#cart .cart-header-count{ font-size: 11px !important; font-weight: 400 !important; letter-spacing: .12em !important; text-transform: uppercase !important; color: #151515 !important; }
#cart .cart-header{ position: relative !important; padding-top: 66px !important; padding-bottom: 14px !important; border-bottom: 0 !important; }
/* linia pod naglowkiem w swietle tresci (24px od krawedzi), jak separatory pozycji */
#cart .cart-header::after{ content:""; position:absolute; left:24px; right:24px; bottom:0; border-bottom:0.5px solid #e8e8e8; }
#cart #close-cart-panel{ position: absolute; top: 56px; right: 20px; }
/* bez podkreslenia pod naglowkiem koszyka + produkt kapke nizej */
#cart .cart-header .underline-animation, #cart .cart-header-count .underline-animation, #cart .cart-header-count{ background-image: none !important; border-bottom: 0 !important; text-decoration: none !important; background-size: 0 0 !important; }
#cart .header.topbar-cart{ border-bottom: 0 !important; }
#cart #main-cart-items{ margin-top: 14px !important; }
/* mniejszy odstep miedzy hairline uslug a checkboxem regulaminu (bylo 31px) */
#cart .cart-footer .cart-buttons{ padding-top: 0 !important; }
#cart .cart-buttons .cart-summary-terms{ margin-top: 0 !important; }

/* Koszyk: sekcja zaufania 1:1 ze stylem karty produktu (.beller-trust) */
#cart .beller-trust{ display:flex; flex-direction:column; gap:13px; margin:6px 0 2px; }
#cart .beller-trust .t{ display:flex; align-items:flex-start; gap:11px; color:#474747; }
#cart .beller-trust .t svg{ width:17px; height:17px; flex:0 0 auto; margin-top:1px; fill:none; stroke:currentColor; stroke-width:1.4; }
#cart .beller-trust .t span{ font-size:11px; line-height:1.4; color:#474747; letter-spacing:.01em; }
/* sekcja zaufania: więcej powietrza od sąsiadów (góra/dół) */
#cart .beller-trust{ margin: 16px 0 14px !important; }
#cart .cart-footer .cart-summary-line.beller-trust,
#cart .cart-footer-wrapper > div > .cart-summary-line.beller-trust,
#cart .cart-footer-wrapper > .cart-summary-line.beller-trust{ margin: 16px 0 14px !important; }
/* sekcja zaufania: większy oddech od linii nad i pod */
#cart .cart-footer .cart-summary-line.beller-trust,
#cart .cart-footer-wrapper > div > .cart-summary-line.beller-trust,
#cart .cart-footer-wrapper > .cart-summary-line.beller-trust{ margin: 26px 0 24px !important; }
/* sekcja zaufania: ikony po PRAWEJ, w osi ✕ zamykającego */
#cart .beller-trust .t svg{ order: 2; margin-left: auto; }
#cart .beller-trust .t > span{ order: 1; padding-right: 12px; }
/* sekcja zaufania: oddech WEWNĄTRZ linii (linia → tekst) */
#cart .beller-trust{ padding: 18px 0 16px !important; }
#cart .cart-footer .cart-summary-line.beller-trust{ padding-top: 18px !important; padding-bottom: 16px !important; }
/* sekcja zaufania: mniejszy odstęp ZEWNĘTRZNY (nad górną i pod dolną linią) */
#cart .cart-footer .cart-summary-line.beller-trust,
#cart .cart-footer-wrapper > div > .cart-summary-line.beller-trust,
#cart .cart-footer-wrapper > .cart-summary-line.beller-trust{ margin: 12px 0 10px !important; }

/* dropdown ilości w panelu: zakotwiczony pod "Ilość", równy, bez rozjazdu */
#cart .cart-item-line-count.cart-item-quantity-element{ position: relative !important; }
#cart .line-item-quantity-selector.desktop-quantity-dropdown{
  position: absolute !important; top: calc(100% + 6px) !important; right: 0 !important; left: auto !important;
  background: #fff !important; border: 0.5px solid #e6e6e6 !important; box-shadow: 0 6px 24px rgba(0,0,0,.06);
  min-width: 52px !important; z-index: 40 !important; padding: 4px 0 !important; margin: 0 !important;
}
#cart .line-item-quantity-selector.desktop-quantity-dropdown ul{ margin: 0 !important; padding: 0 !important; list-style: none !important; }
#cart .line-item-quantity-selector.desktop-quantity-dropdown ul li{ padding: 8px 16px !important; margin: 0 !important; text-align: center; font-size: 12px; color: #727272; cursor: pointer; }
#cart .line-item-quantity-selector.desktop-quantity-dropdown ul li:hover{ background: #f5f5f5; }

/* przyciemnienie tła koszyka: płynne zapalanie i gaszenie (bez przeskoku/migania) */
#cart-drawer-overlay{
  display: block !important;
  position: fixed !important; inset: 0 !important;
  background: #000 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .32s ease !important;
  z-index: 2999 !important;
}
#cart.topbar.control-visible ~ #cart-drawer-overlay,
#cart.topbar.control-visible + #cart-drawer-overlay,
body.topbar-open #cart-drawer-overlay{
  opacity: .2 !important;
  pointer-events: auto !important;
}
/* DESKTOP: zdjęcie kupionego produktu = wielkość kart „Dopełnij wybór" (panel 420: (372−24)/3 = 116px) */
@media (min-width: 769px){
  #cart .main-cart .item-line-media,
  #cart .main-cart .item-line-media .media{ width: 116px !important; min-width: 116px !important; height: 145px !important; }
}


/* płynne doładowanie „Dopełnij wybór": miejsce zarezerwowane od razu (zero przeskoku),
   treść wchodzi miękkim fade; w oczekiwaniu pulsuje kreska (jak linia sceny Wish list) */
#cart .bms-cart-recs:empty{ display: flex !important; align-items: center; justify-content: center; min-height: 224px; }
#cart .bms-cart-recs:empty::after{ content: ""; width: 36px; height: 1px; background: #151515; animation: bmsLinePulse 1.5s ease-in-out infinite; }
@keyframes bmsRecsIn{ from{ opacity: 0; } to{ opacity: 1; } }
#cart .bms-cart-recs-title{ animation: bmsRecsIn .4s ease-out both; }
#cart .bms-cart-recs-grid{ animation: bmsRecsIn .5s ease-out .08s both; }
/* przebicie theme'owego display:none — overlay ZAWSZE w DOM, tylko opacity animuje */
body.topbar-open #cart-drawer-overlay{ display: block !important; }
#cart.topbar.visible + #cart-drawer-overlay{ opacity: .2 !important; }

/* „Miejsce na specjalne życzenie": domyślnie zwinięte, plus wyłania pole;
   rozwinięte pole bez ramki, tekst od lewego marginesu (czyściej w koszyku);
   uwaga: wdrożony cart-drawer.css przybija pole i chowa +/- przez !important, stąd nadpisania */
#cart .main-cart .cart-gift-note-toggle,
#cart .main-cart .cart-gift-note-toggle-mobile{ display: block !important; }
#cart .main-cart .gift-note-open,
#cart .main-cart .gift-note-open-mobile{ display: block !important; }
#cart .main-cart .gift-note-close,
#cart .main-cart .gift-note-close-mobile{ display: none !important; }
#cart .main-cart .cart-gift-note-container.open .gift-note-open,
#cart .main-cart .cart-gift-note-container-mobile.open .gift-note-open-mobile{ display: none !important; }
#cart .main-cart .cart-gift-note-container.open .gift-note-close,
#cart .main-cart .cart-gift-note-container-mobile.open .gift-note-close-mobile{ display: block !important; }
#cart .main-cart .gift-note-wrapper:not(.open),
#cart .main-cart .gift-note-wrapper-mobile:not(.open){ display: none !important; }
/* wyłanianie pola: miękki fade + delikatne opadnięcie, ta sama krzywa co panel Pomocy */
@keyframes bmsNoteIn{ from{ opacity: 0; transform: translateY(-6px); } to{ opacity: 1; transform: none; } }
#cart .main-cart .gift-note-wrapper.open,
#cart .main-cart .gift-note-wrapper-mobile.open{ animation: bmsNoteIn .45s cubic-bezier(0.16, 1, 0.3, 1) both; }
#cart .main-cart .gift-note-wrapper textarea,
#cart .main-cart .gift-note-wrapper-mobile textarea{ border: none !important; padding: 8px 0 0 0 !important; max-width: 100% !important; background: transparent; }
/* ramkę rysowało OPAKOWANIE pola (.cart-summary-line-note), nie textarea */
#cart .main-cart .cart-summary-line-note{ border: none !important; padding: 0 !important; box-shadow: none !important; background: transparent !important; }

/* symbol BELLER w sekcji zaufania: odrobinę cieńsza kreska, dopasowana do zestawu */
#cart .beller-trust .t svg.bms-mark{ stroke-width: 1.2 !important; }
/* ikony sekcji zaufania: wyśrodkowane względem linii tekstu */
#cart .beller-trust .t{ align-items: center !important; }
#cart .beller-trust .t svg{ margin-top: 0 !important; }

/* === BELLER: komunikat akceptacji regulaminu (zamiast natywnego dymka) === */
/* wielkość jak reszta bloku (12px = etykieta regulaminu); domyślnie schowany przez CSS, nie tylko [hidden] */
.bms-terms-note {
  display: none;
  font-size: 12px !important;
  line-height: 1.55 !important;
  letter-spacing: .01em !important;
  font-weight: 400 !important;
  color: #474747 !important;
  border-left: 1px solid #111;
  padding: 2px 0 2px 10px !important;
  margin: 2px 0 6px !important;
  opacity: 0;
  transition: opacity .24s ease;
}
.bms-terms-note.show { display: block; }
.bms-terms-note.on { opacity: 1; }
#cart .cart-summary-terms.bms-attn label { color: #111 !important; }

/* === BELLER: filtry kolekcji — drawer jak w wyszukiwaniu (każda szerokość) === */
.bms-collection-facets {
  position: fixed; top: 0; left: 0; height: 100%;
  width: 320px; max-width: 86vw;
  background: #fff; z-index: 3000;
  transform: translateX(-100%);
  transition: transform .35s ease;
  overflow-y: auto; overscroll-behavior: contain;
  padding: 24px; padding-top: 100px !important;
  box-sizing: border-box; display: block;
}
body.bms-facets-open .bms-collection-facets { transform: translateX(0); }
.bms-collection-backdrop {
  display: block; position: fixed; inset: 0;
  background: rgba(0,0,0,.3); z-index: 2999;
  opacity: 0; visibility: hidden; transition: opacity .35s ease;
}
body.bms-facets-open .bms-collection-backdrop { opacity: 1; visibility: visible; }
body.bms-facets-open .bms-collection-facets ~ .bms-collection-backdrop { touch-action: none; }
/* X zamykający: w kolekcjach widoczny także na desktopie */
body.bms-facets-open .bms-collection-facets .bms-facets-close {
  display: flex !important; align-items: center; justify-content: center;
  position: fixed; top: 53px; margin: 0; width: auto; height: 16px; padding: 0;
  background: none; border: 0; color: #151515; cursor: pointer; z-index: 3100;
}
/* pasek narzędzi w kolekcji: sam przycisk, wyrównany do siatki */
.bms-collection-toolbar { display: flex; align-items: center; justify-content: space-between; }

/* === scroll-lock: otwarty panel filtrów blokuje przewijanie strony pod spodem === */
body.bms-facets-open { overflow: hidden !important; }

/* === delikatny stan ładowania przy odświeżaniu wyników AJAX-em === */
.bms-facets-loading { pointer-events: none; }
.bms-facets-loading .filter-option, .bms-facets-loading .collapse-toggle { opacity: .55; transition: opacity .2s ease; }

/* === BELLER: nagłówek „Filtry" + przypięte przyciski na dole panelu === */
.bms-facets-title { display: none; }
.bms-collection-facets .bms-facets-title,
body.bms-facets-open .bms-search-facets .bms-facets-title {
  display: block;
  font-size: 12px; letter-spacing: .12em; text-transform: uppercase;
  font-weight: 500; color: #151515;
  padding: 0 0 16px; border-bottom: 0.5px solid #e8e8e8; margin-bottom: 2px;
}
@media (min-width: 901px) {
  /* desktopowa kolumna wyszukiwania zostaje bez nagłówka (ma przycisk Ukryj filtry) */
  .bms-search-layout .bms-search-facets .bms-facets-title { display: none; }
  .bms-collection-facets .bms-facets-title { display: block; }
}
/* panel bez dolnego paddingu, żeby przyciski dochodziły do samej krawędzi */
.bms-collection-facets { padding-bottom: 0 !important; }
/* przypięte przyciski: zawsze widoczne na dole panelu (kolekcje + mobilny drawer wyszukiwania) */
.bms-collection-facets .filter-buttons-group,
body.bms-facets-open .bms-collection-facets .filter-buttons-group {
  position: sticky !important; bottom: 0 !important; left: auto !important;
  margin: 24px -24px 0 !important; width: auto !important;
  padding: 14px 24px 18px !important;
  background: #fff !important;
  border-top: 0.5px solid #e8e8e8;
  box-shadow: 0 -8px 16px rgba(255,255,255,.9) !important;
  display: flex; gap: 12px; flex-wrap: nowrap;
  z-index: 5;
}
@media (max-width: 900px) {
  body.bms-facets-open .bms-search-facets { padding-bottom: 0 !important; }
  body.bms-facets-open .bms-search-facets .filter-buttons-group {
    position: sticky !important; bottom: 0 !important; left: auto !important;
    margin: 24px -24px 0 !important; width: auto !important;
    padding: 14px 24px 18px !important;
    background: #fff !important;
    border-top: 0.5px solid #e8e8e8;
    box-shadow: 0 -8px 16px rgba(255,255,255,.9) !important;
    display: flex; gap: 12px; flex-wrap: nowrap;
    z-index: 5;
  }
}
/* dwa przyciski: równa szerokość, styl BELLER */
.bms-collection-facets .filter-buttons-group .button,
.bms-collection-facets .filter-buttons-group button.barracuda,
body.bms-facets-open .bms-search-facets .filter-buttons-group .button,
body.bms-facets-open .bms-search-facets .filter-buttons-group button.barracuda {
  flex: 1 1 0; margin: 0 !important; text-align: center;
  padding: 12px 8px !important; line-height: 1.2;
  font-size: 12px !important; letter-spacing: .02em;
  box-sizing: border-box; white-space: nowrap;
}

/* === BELLER: dolne przyciski panelu — odkrycie (przebicie display:none z ery wyszukiwania) i styl === */
.bms-collection-facets .filter-buttons-group,
body.bms-facets-open .bms-collection-facets .filter-buttons-group {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  flex-wrap: nowrap !important;
}
.bms-collection-facets .filter-buttons-group a,
.bms-collection-facets .filter-buttons-group button[type="submit"] {
  display: inline-flex !important;
  align-items: center; justify-content: center;
  flex: 1 1 0 !important;
  margin: 0 !important;
  padding: 12px 8px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: .02em !important;
  text-transform: none !important;
  text-decoration: none !important;
  text-align: center;
  white-space: nowrap;
  box-sizing: border-box;
  border-radius: 0 !important;
  cursor: pointer;
  width: auto !important;
}
.bms-collection-facets .filter-buttons-group a {
  border: 0.5px solid #151515 !important;
  background: #fff !important;
  color: #151515 !important;
}
.bms-collection-facets .filter-buttons-group a:hover {
  background: #151515 !important; color: #fff !important;
}
.bms-collection-facets .filter-buttons-group button[type="submit"] {
  border: 0.5px solid #151515 !important;
  background: #151515 !important;
  color: #fff !important;
}
.bms-collection-facets .filter-buttons-group button[type="submit"]:hover {
  background: #fff !important; color: #151515 !important;
}
/* w drawerze wyszukiwania (mobile) te same przyciski */
@media (max-width: 900px) {
  body.bms-facets-open .bms-search-facets .filter-buttons-group {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    flex-wrap: nowrap !important;
  }
  body.bms-facets-open .bms-search-facets .filter-buttons-group a,
  body.bms-facets-open .bms-search-facets .filter-buttons-group button[type="submit"] {
    display: inline-flex !important;
    align-items: center; justify-content: center;
    flex: 1 1 0 !important;
    margin: 0 !important;
    padding: 12px 8px !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: .02em !important;
    text-transform: none !important;
    text-decoration: none !important;
    text-align: center;
    white-space: nowrap;
    box-sizing: border-box;
    border-radius: 0 !important;
    cursor: pointer;
    width: auto !important;
  }
  body.bms-facets-open .bms-search-facets .filter-buttons-group a { border: 0.5px solid #151515 !important; background: #fff !important; color: #151515 !important; }
  body.bms-facets-open .bms-search-facets .filter-buttons-group button[type="submit"] { border: 0.5px solid #151515 !important; background: #151515 !important; color: #fff !important; }
}
/* mniej pustki między nagłówkiem FILTRY a pierwszą linią */
.bms-collection-facets .collection-filters.quick-view { margin-top: 0 !important; padding-top: 2px !important; }

/* przyciski zawsze na końcu formularza (flex z order na liniach filtrów) */
.bms-collection-facets .filter-buttons-group,
body.bms-facets-open .bms-search-facets .filter-buttons-group { order: 999 !important; }

/* przycisk FILTRY w kolekcjach: wielkość jak dawny napis FILTR (11px, 400, #474747) */
.bms-collection-toolbar .bms-filters-toggle,
.bms-collection-toolbar .bms-filters-toggle .bms-ft-show,
.bms-collection-toolbar .bms-filters-toggle .bms-ft-hide {
  font-size: 11px !important;
  font-weight: 400 !important;
  color: #474747 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.bms-collection-toolbar .bms-filters-toggle .bms-ft-ico svg { width: 13px; height: 13px; display: block; }

/* sticky przyciski dochodzą do samej dolnej krawędzi panelu (zero paddingów pod nimi) */
.bms-collection-facets .collection-filters.quick-view,
.bms-collection-facets .quick-view-bottom,
.bms-collection-facets .item-text { padding-bottom: 0 !important; margin-bottom: 0 !important; }
@media (max-width: 900px) {
  body.bms-facets-open .bms-search-facets .collection-filters.quick-view,
  body.bms-facets-open .bms-search-facets .quick-view-bottom,
  body.bms-facets-open .bms-search-facets .item-text { padding-bottom: 0 !important; margin-bottom: 0 !important; }
}
/* przy krótkiej liście filtrów przyciski i tak siedzą na dole panelu */
.bms-collection-facets .collection-filters.quick-view,
.bms-collection-facets .quick-view-bottom,
.bms-collection-facets .item-text,
.bms-collection-facets form.quick-view-part.filter { min-height: 100%; box-sizing: border-box; }

/* kolekcje: bez chevrona przy FILTRY (sam znaczek suwaków + napis) */
.bms-collection-toolbar .bms-filters-toggle .bms-ft-chev { display: none !important; }
.bms-collection-toolbar .bms-filters-toggle { gap: 8px; }

/* panel jako kolumna flex: przy krótkiej liście przyciski i tak na dole (margin-top:auto), przy długiej sticky */
.bms-collection-facets { display: flex !important; flex-direction: column; }
.bms-collection-facets > div:not(.bms-facets-close):not(.bms-facets-title) { flex: 1 0 auto; display: flex; flex-direction: column; }
.bms-collection-facets .collection-filters.quick-view,
.bms-collection-facets .quick-view-bottom,
.bms-collection-facets .item-text { flex: 1 0 auto; display: flex; flex-direction: column; }
.bms-collection-facets form.quick-view-part.filter { flex: 1 0 auto; display: flex !important; flex-direction: column !important; }
.bms-collection-facets .filter-buttons-group { margin: auto -24px 0 !important; }
.bms-collection-facets .filter-line { flex: 0 0 auto; }
@media (max-width: 900px) {
  body.bms-facets-open .bms-search-facets { display: flex !important; flex-direction: column; }
  body.bms-facets-open .bms-search-facets > div:not(.bms-facets-close) { flex: 1 0 auto; display: flex; flex-direction: column; }
  body.bms-facets-open .bms-search-facets .collection-filters.quick-view,
  body.bms-facets-open .bms-search-facets .quick-view-bottom,
  body.bms-facets-open .bms-search-facets .item-text { flex: 1 0 auto; display: flex; flex-direction: column; }
  body.bms-facets-open .bms-search-facets form.quick-view-part.filter { flex: 1 0 auto; display: flex !important; flex-direction: column !important; }
  body.bms-facets-open .bms-search-facets .filter-buttons-group { margin: auto -24px 0 !important; }
  body.bms-facets-open .bms-search-facets .filter-line { flex: 0 0 auto; }
}

/* iOS: przyciski nad home-indicatorem */
.bms-collection-facets .filter-buttons-group,
body.bms-facets-open .bms-search-facets .filter-buttons-group {
  padding-bottom: calc(18px + env(safe-area-inset-bottom, 0px)) !important;
}

/* kolekcje desktop: zdejmij ograniczenia sidebara wyszukiwania (sticky/max-height) — drawer ma pełną wysokość */
.bms-collection-facets {
  position: fixed !important;
  top: 0 !important;
  bottom: auto !important;
  height: 100% !important;
  max-height: none !important;
  align-self: auto !important;
}

/* margin-top:auto musi wygrać także z regułą o wyższej specyficzności (body.bms-facets-open ...) */
body.bms-facets-open .bms-collection-facets .filter-buttons-group,
.bms-collection-facets .filter-buttons-group { margin-top: auto !important; }
@media (max-width: 900px) {
  body.bms-facets-open .bms-search-facets .filter-buttons-group { margin-top: auto !important; }
}

/* kolekcje: napis FILTRY zawsze widoczny (reguły show/hide z wyszukiwania nie dotyczą) */
.bms-collection-toolbar .bms-ft-show { display: inline !important; }
.bms-collection-toolbar .bms-ft-hide { display: none !important; }

/* === BELLER: wyrównanie paska FILTRY do siatki produktów + delikatne linie === */
.collection-filtering .filter-and-sort { padding-left: 0 !important; padding-right: 0 !important; }
.bms-collection-toolbar {
  padding-left: 0 !important; padding-right: 0 !important;
  border-top: 0.5px solid #f0f0f0 !important;
  border-bottom: 0.5px solid #f0f0f0 !important;
}
/* mobile: zdjęcia produktów w linii z tekstem opisu (16px), tak jak pasek filtrów */
@media (max-width: 767px) {
  .section-collection-grid .small-grid .small-block { padding-left: 16px !important; padding-right: 16px !important; }
}

/* mobile: pasek FILTRY i zdjęcia produktów dokładnie w linii tekstu (16px) — przebicie starszych !important */
@media (max-width: 900px) {
  .bms-collection-toolbar {
    margin-left: 16px !important;
    margin-right: 16px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
@media (max-width: 767px) {
  .collection-grid-section .small-block {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* mocniejsza specyficzność: motyw ma własny !important na paddingu kart */
@media (max-width: 767px) {
  .shopify-section.collection-grid-section.section-collection-grid .small-block.small-block.small-block {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* === BELLER: wyniki wyszukiwania na mobile — identyczna siatka jak w kolekcjach === */
@media (max-width: 767px) {
  .bms-search-layout { padding-left: 0 !important; padding-right: 0 !important; }
  .main-search #search-results .small-grid {
    padding-left: 0 !important; padding-right: 0 !important;
    column-gap: 6px !important; row-gap: 32px !important;
  }
  .main-search #search-results .small-block.small-block.small-block {
    padding-left: 16px !important; padding-right: 16px !important;
  }
}

/* mobile: pasek wyszukiwania w linii marginesów 16px (jak zdjęcia i teksty) */
@media (max-width: 767px) {
  .main-search .search-header.max-width-article { padding: 0 16px !important; }
  .main-search .search-header.max-width-article .barracuda.search,
  .bms-searchbox { max-width: none !important; width: 100% !important; }
}

/* mobile: pasek wyszukiwania dokładnie 16px od krawędzi (zbij też margines .max-width-article) */
@media (max-width: 767px) {
  .main-search .search-header.max-width-article {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: none !important;
  }
}
/* wyszukiwanie: bez ✕ w drawerze filtrów (zamykanie: tło lub Pokaż wyniki) */
@media (max-width: 900px) {
  body.bms-facets-open .bms-search-layout .bms-search-facets .bms-facets-close { display: none !important; }
}

/* mobile: nagłówek wyszukiwania na pełną szerokość (motyw zwęża .max-width-article width-em) */
@media (max-width: 767px) {
  .main-search .search-header.max-width-article { width: 100% !important; }
}

/* === FIX iOS Safari/Chrome (WebKit): menu i koszyk na pełną realną wysokość + scroll koszyka === */
/* 1) menu mobilne: dvh zamiast min(100vh,100svh) — bez uciętej bieli przy schowanym pasku Safari */
@media (max-width: 900px) {
  .hidden-desktop .navbar-collapses {
    height: 100vh !important;
    height: 100dvh !important;
  }
}
/* 2) koszyk-panel: pełna realna wysokość */
#cart.topbar {
  height: 100vh !important;
  height: 100dvh !important;
}
/* 3) scroll koszyka w WebKit: dziecko flexa musi mieć min-height:0, inaczej rośnie poza panel i scroll nie startuje */
#cart .topbar-content {
  min-height: 0 !important;
  -webkit-overflow-scrolling: touch;
}
#cart .main-cart, #cart .main-cart .main-cart-content { min-height: 0 !important; }

/* koszyk: linie sekcji zaufania NIEZALEŻNE od strony (dotąd dziedziczone ze stylów PDP — brak np. na kolekcjach) */
#cart .beller-trust {
  border-top: 1px solid #e6e2da !important;
  border-bottom: 1px solid #e6e2da !important;
}


/* paginacja kolekcji: aktywna strona obrysowana prostokącikiem */
.pagination-wrapper .pagination-item-current {
  border: 0.5px solid #151515;
  padding: 5px 10px !important;
  line-height: 1;
  color: #151515;
}
.pagination-wrapper .pagination-item-current .underline-animation { background: none !important; }

/* === BELLER: serce listy życzeń w nagłówku (kontur, bez wypełnienia) === */
.bms-wishlist-link { display: inline-flex; align-items: center; justify-content: center; color: #151515; }
.bms-wishlist-link svg { width: 20px; height: 20px; display: block; }
.bms-wishlist-link:hover svg { opacity: .65; }
/* desktop: w rzędzie ikon, odstępy jak sąsiedzi */
.bms-wishlist-desktop { margin: 0 2px; }
/* mobile: wpis w stopce drawera, w pionie jak ikony szukania/konta */
.bms-wishlist-mobile { margin: 10px 0; }
.bms-wishlist-mobile svg { width: 22px; height: 22px; }

/* serce: odstępy identyczne jak konto-koszyk (16px) */
.bms-wishlist-desktop { margin: 0 14px 0 0 !important; }
.bms-wishlist-desktop { margin: 0 16px 0 2px !important; }

/* serce: kolor DZIEDZICZONY z nagłówka (jak konto/koszyk) — białe na hero, czarne na jasnym */
.bms-wishlist-link { color: inherit !important; }

/* ciche linki (SEO): kolor tekstu, bez podkreślenia; delikatny hover */
.bms-quiet-link { color: inherit !important; text-decoration: none !important; }
.bms-quiet-link:hover { text-decoration: underline !important; text-underline-offset: 3px; }

/* ciche linki w sekcjach media-with-text (Assistance + butiki na stronie Certyfikaty) */
.media-with-text a[href="#bms-help"],
.media-with-text a[href^="/pages/beller-atelier"] {
  color: inherit !important;
  text-decoration: none !important;
}
.media-with-text a[href="#bms-help"]:hover,
.media-with-text a[href^="/pages/beller-atelier"]:hover {
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* Szczelina 954-991px: inline CSS motywu (footer.liquid) pokazuje mobilny drawer
   az do 991px, a caly CSS drawera (natywny + bms) konczy sie na 953px - w tym
   zakresie drawer renderowal sie bez styli (wszystkie poziomy obok siebie).
   Wymuszamy tu menu desktopowe, ktore ma pelne style od 954px. */
@media (min-width: 1200px) and (max-width: 1199px) {
  nav.paira-mega-menu.hidden-desktop { display: none !important; }
  nav.paira-mega-menu.hidden-mobile { display: block !important; }
  /* wnetrze desktopowego menu jak przy >=992px (footer.liquid gasi je regula 768-991) */
  nav.paira-mega-menu.hidden-mobile .navbar-header { display: none !important; }
  nav.paira-mega-menu.hidden-mobile .navbar-collapse { display: block !important; }
  nav.paira-mega-menu.hidden-mobile .nav.navbar-nav { display: flex !important; }
}

/* Mobile: ikona hamburgera w jednej osi z logo i koszykiem (byla 2.7px wyzej) */
@media (max-width: 1199px) {
  .header .navbar-toggle { transform: translateY(2.7px); }
}

/* Mini-wybor rozmiaru na kafelku propozycji w koszyku (zamiast przejscia na PDP):
   delikatna lista rozwijana od dolu zdjecia, styl jak drawer menu (hairlines, male litery) */
#cart .bms-rec-sizes {
  position: absolute; left: 0; right: 0; bottom: 0;
  display: block; background: rgba(255,255,255,.97);
  max-height: 86%; overflow-y: auto; z-index: 3;
  padding: 7px 0 2px;
  animation: bmsSizesIn .28s cubic-bezier(.4,0,.2,1);
}
@keyframes bmsSizesIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { #cart .bms-rec-sizes { animation: none; } }
#cart .bms-rec-sizes-t {
  display: block; font-size: 9px; letter-spacing: .12em;
  text-transform: uppercase; color: #767676; padding: 2px 10px 6px;
}
#cart .bms-rec-size {
  display: block; width: 100%; text-align: left; padding: 7px 10px;
  border: 0; border-top: 0.5px solid #f0f0f0; background: transparent;
  color: #474747; font-family: inherit; font-size: 11px; line-height: 1;
  cursor: pointer; transition: color .2s ease, background .2s ease;
}
#cart .bms-rec-size:hover { color: #151515; background: #f7f6f4; }

/* imiennik BELLER jako stan ladowania przy dodawaniu propozycji: delikatny puls
   (klasa bms-load-mark - NIE bms-mark, bo te nosi ikona certyfikatu w trust-sekcji koszyka) */
#cart .bms-load-mark { display: block; margin: 0 auto; animation: bmsMarkPulse .9s ease-in-out infinite alternate; }
#cart .bms-rec-size .bms-load-mark { margin: 0; }
@keyframes bmsMarkPulse { from { opacity: .35; } to { opacity: .95; } }
@media (prefers-reduced-motion: reduce) { #cart .bms-load-mark { animation: none; } }

/* Optyczne wyrownanie X w koszyku do linii tresci: glif feather konczy sie 6/24 viewBoxa
   przed krawedzia swojego svg (~3.5px przy 16px), wiec dosuwamy o tyle w prawo.
   Bazowy #close-cart-panel ma padding:12 / margin:-12 (tap target) - tu tylko prawa strona. */
#cart #close-cart-panel{ margin-right: -17.3px !important; }


/* bms: strona Wish list (app proxy) - zaslona na czas hydracji, fade-in gotowego ukladu
   (bez tego widac surowy szkielet aplikacji; klase bms-ready nadaje bms-cart-open.js) */
#mib-wishlist-page-root{opacity:0}
#mib-wishlist-page-root.bms-ready{opacity:1}
/* scena jako NAKLADKA na stronie (nie w flow): strona odslania sie pod nia, gasnie tylko scena,
   wiec zdjecie z lewej jest ciagle - bez podwojnego pojawiania */
#mib-wishlist-page-root:not(.bms-ready){min-height:100vh}


/* bms: scena powitalna strony Wish list - czysty HTML motywu, widoczna od pierwszej klatki,
   zanim wstanie aplikacja (jej skrypty laduja sie leniwie); geometria = finalna strona */
.bms-wish-stage{position:absolute;top:0;left:0;right:0;z-index:5;display:grid;grid-template-columns:1fr 1fr;background:#fff}
.bms-wish-stage-left{position:relative;height:100vh;background:#000 url(https://beller.pl/cdn/shop/files/4_42-90.webp?v=1772443843&width=1400) center/cover no-repeat}
.bms-wish-stage-title{position:absolute;left:50px;bottom:56px;color:#fff;font-size:15px;font-weight:500;letter-spacing:.01em}
.bms-wish-stage.bms-out{opacity:0;transition:opacity .45s ease;pointer-events:none}
.bms-wish-stage-right{display:flex;align-items:center;justify-content:center;height:100vh}
@keyframes bmsLinePulse{0%,100%{opacity:.12}50%{opacity:.8}}
.bms-wish-stage-right::after{content:"";width:36px;height:1px;background:#151515;animation:bmsLinePulse 1.5s ease-in-out infinite}
@media(max-width:767px){.bms-wish-stage{display:block}.bms-wish-stage-left{height:auto;aspect-ratio:1/1}.bms-wish-stage-title{left:16px;bottom:24px}.bms-wish-stage-right{height:32vh}}




/* przejście między stronami: subtelne, bez ciężkiej czerni (40% -> 7%); modale (size guide,
   quick view) zachowują pełne wyciemnienie, bo tam overlay-content nie ma klasy loading */
body.show-overlay .overlay:has(.overlay-content.loading) { background: rgba(0, 0, 0, 0.07) !important; }

/* baner zgód (Consentmo/PBar): bez błysku przy ładowaniu - odsłona dopiero po 0.8 s;
   przy udzielonej zgodzie aplikacja chowa go wcześniej i nic nie mignie */



/* bms-header-hover: Pomoc + ikony nagłówka z efektem lewego menu.
   Pomoc dostaje natywny span.underline-animation (markup w header.liquid);
   ikony (svg) identyczną kreskę 1px przez ::after, ten sam timing co .underline-animation */
@media (hover: hover) {
  #header .header-icons a.icon { position: relative; }
  #header .header-icons a.icon::after {
    content: "";
    position: absolute;
    left: 1px;
    right: 1px;
    bottom: -3px;
    height: 0.5px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }
  #header .header-icons a.icon:hover::after { transform: scaleX(1); }

  /* kolor jak w lewym menu: czerń przy najechaniu; BEZ transition koloru,
     zeby zmiana stanu naglowka (otwarcie mega-menu z lewej) nie animowala prawej strony */
  #header .header-icons a.icon:hover,
  #header .bms-help-trigger-desktop:hover {
    color: #000 !important;
  }
  #header .bms-help-trigger-desktop:hover > span.underline-animation {
    background-image: linear-gradient(to right, #000, #000);
  }
  /* Pomoc w osi ikon: zerujemy paddingi theme'owego spana (rozpychaly boks we flexie),
     podkreslenie tuz pod tekstem */
  #header .bms-help-trigger-desktop > span.underline-animation {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background-position: 0 calc(1em + 3px) !important;
  }

  /* kreska cieniusienka (0.5px, jak linie w koszyku i loader) - baza i stan hover */
  #header .header-icons a > span.underline-animation {
    background-size: 0 0.5px;
  }
  #header .header-icons a:hover > span.underline-animation {
    background-size: 100% 0.5px !important;
  }
}


/* pusty koszyk: krótki panel bez scrolla; ostatnio oglądane tylko przy pełnym koszyku;
   bez komunikatu w nagłówku (zostaje sam X), wystarczy ten na środku panelu */
#cart:has(.empty-cart) .topbar-content { overflow: hidden !important; }
#cart:has(.empty-cart) .cart-recently-viewed { display: none !important; }
#cart:has(.empty-cart) .cart-header-count { display: none !important; }


/* opcje wariantu w koszyku: JEDNA linia (skróty etykiet mieszczą wszystko);
   wrap tylko awaryjnie gdy brak miejsca; „Szt." przypięte do prawego górnego rogu */
#cart .cart-item-details { position: relative; flex-wrap: wrap !important; column-gap: 14px; row-gap: 2px; align-items: baseline; justify-content: space-between; }
/* zakaz schodów: przy zawinięciu drugi wiersz zaczyna od lewego marginesu (odstępy TYLKO przez gap) */
#cart .cart-item-details .product-option { margin-left: 0 !important; margin-right: 0 !important; }
#cart .cart-item-details .product-option { min-width: 0; }
#cart .cart-item-details .product-option p { white-space: normal; }
#cart .cart-item-details .cart-item-quantity-element { position: absolute; top: 0; right: 0; margin: 0 !important; }


/* linia opcji wariantu: delikatna i spójna (12px, szarość jak podpisy) */
#cart .cart-item-details .product-option p { font-size: 12px !important; color: #727272 !important; }
/* wybór długości: trigger jak tekst z włoskowym podkreśleniem + dropdown 1:1 jak przy ilości */
#cart .bms-len-wrap { position: relative; display: inline-block; }
#cart .bms-len-trigger { color: #151515; cursor: pointer; display: inline-flex; align-items: center; gap: 3px; text-decoration: none; }
#cart .bms-len-trigger svg { flex: 0 0 auto; }
#cart .bms-len-list { display: none; position: absolute; top: calc(100% + 6px); left: 50%; transform: translateX(-50%); background: #fff; box-shadow: 0 6px 24px rgba(0, 0, 0, 0.12); z-index: 40; min-width: 64px; }
#cart .bms-len-wrap.open .bms-len-list { display: block; }
#cart .bms-len-item { display: block; padding: 12px 20px; font-size: 12px; color: #727272; cursor: pointer; text-align: center; }
#cart .bms-len-item:hover, #cart .bms-len-item.active { background: #f5f5f5; }
/* dropdown ilości: kotwica pod „Szt." (rodzic stał się absolute), równo do prawej, w obrębie szuflady */
#cart .cart-item-details .line-item-quantity-selector.desktop-quantity-dropdown { left: auto !important; right: 0 !important; top: calc(100% + 6px) !important; margin: 0 !important; }
#cart .cart-item-quantity-element { position: relative !important; }

/* bms: Szt. i triggery dropdownow typograficznie 1:1 z opcjami (12px #727272, chevron w tym samym szarym) */
#cart .cart-item-quantity-element { color: #727272 !important; font-size: 12px !important; }
#cart .cart-item-quantity-element > div:first-child { color: #727272 !important; }
#cart .bms-len-trigger { color: #727272 !important; }
#cart .cart-item-quantity-element svg path,
#cart .bms-len-trigger svg path { stroke: currentColor !important; }

/* bms: box dropdownu ilosci 1:1 jak lista rozmiarow (jeden cien, spojna szerokosc, bez rozjechanych tel) */
#cart .cart-item-quantity-element .line-item-quantity-selector.desktop-quantity-dropdown {
  width: auto !important; min-width: 64px !important; padding: 0 !important;
  background: #fff !important; box-shadow: 0 6px 24px rgba(0, 0, 0, 0.12) !important; border: 0 !important;
}
#cart .cart-item-quantity-element .desktop-quantity-dropdown ul { width: auto !important; box-shadow: none !important; background: transparent !important; }
#cart .cart-item-quantity-element .desktop-quantity-dropdown ul li { display: block; width: auto !important; padding: 12px 20px !important; }
#cart .cart-item-quantity-element .desktop-quantity-dropdown ul li.current-quantity { background: #f5f5f5 !important; }

/* bms: zadnego zaznaczania strony przy stukaniu w dropdowny koszyka */
#cart .cart-item-quantity-element, #cart .bms-len-wrap, #cart .bms-len-trigger, .mobile-quantity-dropdown {
  -webkit-user-select: none; user-select: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
/* bms: mobile - wymiar wybiera sie arkuszem od dolu (jak ilosc), maly dropdown znika */
@media (max-width: 768px) {
  #cart .bms-len-list { display: none !important; }
}
/* bms: arkusz mobilny typograficznie 1:1 z reszta (12px #727272, aktywna wartosc #f5f5f5) */
.mobile-quantity-dropdown li { font-size: 12px; color: #727272; }
.mobile-quantity-dropdown li.current-quantity, .mobile-quantity-dropdown li:hover { background: #f5f5f5; }

/* bms: arkusz wymiaru na mobile - niski (4 wiersze), przewijany, nad przyciemnieniem drawera i cookie barem */
.bms-len-sheet { z-index: 2147483647 !important; }
.bms-len-sheet ul { max-height: 156px; overflow-y: auto; -webkit-overflow-scrolling: touch; }
body:has(.mobile-quantity-dropdown.visible) #PBarNextFrameWrapper,
body:has(.mobile-quantity-dropdown.visible) csm-cookie-consent { visibility: hidden; }
/* bms: waski kontener linii na mobile - mniejszy minimalny odstep, zeby Szt. zostalo w wierszu */
@media (max-width: 768px) {
  #cart .cart-item-details { column-gap: 6px; }
}

/* bms: arkusz dziala tez na desktopie (bazowe .mobile-quantity-dropdown ma display:none i ul 55px) */
.bms-len-sheet { display: block !important; pointer-events: all !important; }
.bms-len-sheet ul { width: 100% !important; }
.bms-len-sheet li { height: 39px; }
/* bms: desktop - przyciemnienie wnetrza szuflady nad arkuszem (dziecko arkusza, znika razem z nim) */
.bms-sheet-dim { position: absolute; left: 0; right: 0; bottom: 100%; height: 100vh; background: rgba(0, 0, 0, 0.2); opacity: 0; transition: opacity 0.3s; pointer-events: all; }
.bms-len-sheet.visible .bms-sheet-dim { opacity: 1; }

/* bms: PDP z JEDNYM zdjeciem - kadr wypelnia cala wysokosc kolumny galerii (bez bialej dziury pod zdjeciem);
   dziala tylko gdy galeria nie ma drugiego .product-media; mobile bez zmian */
@media (min-width: 769px) {
  .main-product .product-gallery:not(:has(.product-media ~ .product-media)) barracuda-product-gallery,
  .main-product barracuda-product-gallery:not(:has(.product-media ~ .product-media)) { height: 100%; }
  .main-product .product-gallery:not(:has(.product-media ~ .product-media)) .product-gallery-content { height: 100% !important; }
  .main-product .product-gallery:not(:has(.product-media ~ .product-media)) .product-media { height: 100% !important; }
  .main-product .product-gallery:not(:has(.product-media ~ .product-media)) .product-media img { height: 100% !important; width: 100% !important; object-fit: cover; object-position: center; }
}

/* bms: PDP desktop - prawa kolumna jest centrowana w pionie, przy dlugiej tresci tytul wjezdzal
   pod fixed naglowek (Pomoc/ikony); rezerwa gorna = wysokosc naglowka */
@media (min-width: 769px) {
  .main-product .flex-half.flex-v-center { padding-top: 110px; box-sizing: border-box; }
}

/* bms: linie bloku beller-trust jak wszystkie inne - wloskowe 0.5px (byly 1px) */
#cart .cart-summary-line.beller-trust { border-top-width: 0.5px !important; border-bottom-width: 0.5px !important; }
/* bms: regulamin w sticky bloku kasy - kompaktowo, zawsze widoczny z przyciskiem */
#cart .cart-buttons .cart-summary-terms { margin: 0 0 10px; }
#cart .cart-buttons .bms-terms-note { margin: 0 0 8px; }
/* bms: mobile - szuflada koszyka spieta top/bottom = pelna dynamiczna wysokosc telefonu
   (samo 100vh zostawia przeswit, gdy pasek adresu zmienia viewport) */
@media (max-width: 768px) {
  div#cart.topbar { top: 0 !important; bottom: 0 !important; height: auto !important; max-height: none !important; }
  div#cart.topbar .topbar-content { height: 100% !important; }
}


/* bms: puls uwagi na regulaminie po probie przejscia do kasy bez zgody */
#cart .cart-summary-terms.bms-pulse { animation: bmsTermsPulse 1.2s ease; }
@keyframes bmsTermsPulse {
  0%, 100% { background: transparent; }
  25%, 60% { background: #f5f5f5; }
}

/* bms: checkboxy koszyka (regulamin, prezent) w stylu BELLER - ostre katy, ramka 0.5px, cienki ptaszek */
#cart .cart-summary-terms input[type="checkbox"],
#cart #bms-gift-wrap-checkbox {
  -webkit-appearance: none; appearance: none;
  width: 15px; height: 15px; flex: 0 0 auto;
  margin: 0 10px 0 0; padding: 0;
  border: 0.5px solid #151515; border-radius: 0;
  background: #fff center / 11px no-repeat !important;
  background-color: #fff !important;
  cursor: pointer; vertical-align: middle;
  transition: background-color 0.2s ease;
}
#cart .cart-summary-terms input[type="checkbox"]:checked,
#cart #bms-gift-wrap-checkbox:checked {
  background-color: #fff !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 6.5L5 9L9.5 3.5' stroke='%23151515' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
#cart .cart-summary-terms input[type="checkbox"]:focus-visible,
#cart #bms-gift-wrap-checkbox:focus-visible {
  outline: 0.5px solid #151515; outline-offset: 2px;
}

/* ===== Strony atelier (2026-08-19): baner JAK DOJECHAC + blok H1 z pytaniami ===== */
[id$="__jak_trafic"] .collection-slider,[id$="__collection_slider_butiki"] .collection-slider{margin-bottom:88px}
.bms-atelier-text .text-parafraph p{margin:0 0 18px !important}
.bms-atelier-text .text-parafraph p:last-child{margin-bottom:0 !important}
.bms-atelier-text .text-parafraph p strong{display:block;font-size:1.15em;line-height:1.4;font-weight:500;margin-top:26px;margin-bottom:2px}
.bms-atelier-text .text-parafraph p:first-child strong{margin-top:0}

/* ===== BUTIKI (2026-08-19): kafle w rozmiarze banera „Marka” (660×319), 2 w rzędzie, ta sama górna krawędź ===== */
.paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > ul.showroom-wrapper.dropdown-menu.paira-dropdown-menu.dropdown-menu-wrapper { padding-top: 24px !important; padding-bottom: 32px !important; justify-content: flex-start !important; }
.paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner.showroom-inner.drawer-animation-image { width: calc((100% - 20px) / 2) !important; max-width: calc((100% - 20px) / 2) !important; margin: 0 !important; }
.paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner.showroom-inner.drawer-animation-image:last-child { margin-right: 0 !important; }
.paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner.showroom-inner img { aspect-ratio: auto !important; height: 319px !important; }
.paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner .showroom-url { margin-top: 18px !important; }

/* ===== MEGAMENU (2026-08-19): listy kolumn bez zawijania do 2. kolumny (motyw: flex column wrap + max-height 350px) ===== */
.paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .dropdown-menu > .dropdown-menu-left .dropdown-submenu > ul { max-height: none !important; flex-wrap: nowrap !important; height: auto !important; }
.paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .dropdown-menu > .dropdown-menu-left .dropdown-submenu { height: auto !important; }
.paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .dropdown-menu > .dropdown-menu-left { height: auto !important; align-items: flex-start !important; }
/* kadry kafli BUTIKI (2026-08-19): Kraków wyżej (cała wieża), Warszawa niżej (dachy Starówki) */
.paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner:first-child img { object-position: 50% 18% !important; }
.paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner:last-child img { object-position: 50% 62% !important; }

/* ===== KOLEKCJE (2026-08-20): przycisk „Zobacz więcej / See more" zamiast numerów stron ===== */
.bms-loadmore-wrap{display:flex;justify-content:center;margin:48px 0 64px}
.bms-loadmore{display:inline-block;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;line-height:17px;color:#151515;background:#fff;border:0.5px solid #151515;border-radius:0;padding:13px 34px;text-decoration:none;transition:background .2s,color .2s;font-family:inherit}
.bms-loadmore:hover{background:#151515;color:#fff}
.bms-loadmore.is-loading{opacity:.4;pointer-events:none}
#pagination, .bms-loadmore-wrap{overflow-anchor:none}
/* płynne pojawianie doładowanych kart */
#pagination .small-grid > .bms-lm-in{opacity:0;transform:translateY(14px);transition:opacity .55s cubic-bezier(0.215,0.61,0.355,1),transform .55s cubic-bezier(0.215,0.61,0.355,1)}
#pagination .small-grid > .bms-lm-in.bms-lm-show{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){ #pagination .small-grid > .bms-lm-in{opacity:1;transform:none;transition:none} }
/* przy przycisku chowamy numery stron (przycisk = link do kolejnej strony, działa też bez JS) */
.bms-classic-pag{display:none}
/* blog: aktywna strona w prostokąciku bez podkreślenia */
.pagination-wrapper .pagination-item-current{text-decoration:none !important;border-bottom-color:#151515}
.pagination-wrapper .pagination-item-current::after{display:none !important}

/* ===== PDP GRAWER v3 (2026-08-20, wg referencji + typografia koszyka): wiersz „Dodaj grawer +" pod Materiałem + szuflada z prawej (obrączki/zaręczynowe/Soulmate/Promise) ===== */
.bms-engrave-row{margin:0}
/* rowny rytm 10px: ATC ma wlasny margin-top 22px, przy banerze graweru sprowadzamy do 10px jak przed „Napisz do nas" */
.bms-engrave-row ~ .form-line .barracuda-cart-addToCartButton{margin-top:10px !important}
.bms-engrave-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;box-sizing:border-box;text-align:center;padding:13px;border:1px solid #1f1d19;border-radius:0;color:#1f1d19;background:#fff;font-family:inherit;font-size:11px;letter-spacing:.02em;line-height:normal;cursor:pointer;transition:background .2s,color .2s}
.bms-engrave-btn:hover{background:#1f1d19;color:#fff}
.bms-engrave-btn .bms-engrave-label{font-size:11px;letter-spacing:.02em}
.bms-engrave-btn .bms-engrave-val{min-width:0;max-width:60%;font-size:13px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bms-engrave-btn.has-engraving .bms-engrave-label{display:none}
.bms-engrave-btn.has-engraving .bms-engrave-val{max-width:100%}
html.bms-engrave-noscroll{overflow:hidden}
.bms-engrave-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:100000}
.bms-engrave-overlay.open{opacity:1;pointer-events:auto}
.bms-engrave-drawer{position:fixed;top:0;right:0;bottom:0;height:100dvh;width:max(420px, 40vw);max-width:100%;background:#fff;z-index:100001;transform:translateX(102%);transition:transform .45s cubic-bezier(0.215,0.61,0.355,1);display:flex;flex-direction:column}
.bms-engrave-drawer.open{transform:none}
.bms-engrave-head{display:flex;align-items:center;justify-content:flex-start;padding:64px 24px 16px;flex:0 0 auto;position:relative}
.bms-engrave-title{font-size:12.32px;font-weight:400;line-height:1.4;letter-spacing:.1em;text-transform:uppercase;color:#151515;margin:0}
button.bms-engrave-close{position:absolute;top:16px;right:8px;background:none;border:0;padding:6px;cursor:pointer;color:#151515;display:flex;align-items:center;justify-content:center}
.bms-engrave-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:4px 24px 32px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.bms-engrave-intro{font-size:12px;line-height:1.6;color:#727272;margin:0}
.bms-engrave-sectionlabel{font-size:11px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:#151515;margin:18px 0 12px;padding-top:14px;border-top:0.5px solid #e8e8e8}
.bms-engrave-fonts{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.bms-engrave-font{flex:1 1 0;min-width:0;background:#fff;border:0.5px solid #d9d9d9;border-radius:0;padding:0 12px;height:40px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:#151515;transition:border-color .2s,background .2s,color .2s}
.bms-engrave-font .fl{font-size:12px;line-height:1.1}
.bms-engrave-font.is-script .fl{font-size:17px;line-height:1}
.bms-engrave-font:hover{border-color:#151515}
.bms-engrave-font.active{background:#151515;border-color:#151515;color:#fff}
.bms-engrave-symbols{display:flex;gap:8px;margin:0}
.bms-engrave-symbol{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:0.5px solid #d9d9d9;border-radius:0;cursor:pointer;color:#151515;transition:border-color .2s;padding:0}
.bms-engrave-symbol svg{width:15px;height:15px}
.bms-engrave-symbol:hover{border-color:#151515}
.bms-engrave-symbol .g{font-size:19px;line-height:1;font-family:inherit}
.bms-engrave-symbolhint{font-size:11px;line-height:1.5;color:#8a8a8a;letter-spacing:.01em;margin:8px 0 0}
.bms-engrave-box + .bms-engrave-symbolhint{margin-top:8px}
.bms-engrave-box{position:relative;border:0.5px solid #d9d9d9;height:54px;padding:0 14px;display:flex;align-items:flex-end;gap:14px;cursor:text}
.bms-engrave-drawer .bms-engrave-boxlabel{position:absolute;left:14px;right:56px;top:50% !important;transform:translateY(-50%) !important;font-size:12.32px !important;letter-spacing:.01em;line-height:1.2;color:#8a8a8a;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:top .18s ease,transform .18s ease,font-size .18s ease}
.bms-engrave-drawer .bms-engrave-box:focus-within .bms-engrave-boxlabel,.bms-engrave-drawer .bms-engrave-box.filled .bms-engrave-boxlabel{top:7px !important;transform:none !important;font-size:9.5px !important}
.bms-engrave-input{flex:1 1 auto;min-width:0;border:0;border-radius:0;background:none;font-family:inherit;font-size:12.32px;line-height:1.2;color:#151515;padding:0 0 9px;outline:none;box-shadow:none}
.bms-engrave-count{flex:0 0 auto;font-size:11px;line-height:1.2;color:#8a8a8a;font-variant-numeric:tabular-nums;padding-bottom:10px}
.bms-engrave-preview{display:none;min-height:40px;align-items:center;justify-content:flex-start;font-size:20px;line-height:1.3;color:#151515;margin:10px 0 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.bms-engrave-preview.has-text{display:flex}
.bms-engrave-preview.is-script{font-size:26px}
.bms-engrave-customtext{font-size:12px;line-height:1.6;color:#727272;margin:0 0 12px}
.bms-engrave-file{flex:1 1 0;min-width:0;display:grid;grid-template-columns:1fr auto;gap:8px}
.bms-engrave-filename{grid-column:1;align-self:center}
.bms-engrave-file-remove{grid-column:2}
.bms-engrave-attach{grid-column:1 / -1;width:100%;background:#fff;border:0.5px solid #d9d9d9;border-radius:0;height:40px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-size:12px;color:#151515;cursor:pointer;transition:border-color .2s}
.bms-engrave-attach:hover{border-color:#151515}
.bms-engrave-filename{font-size:12px;color:#151515;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bms-engrave-file-remove{background:none;border:0;padding:2px 6px;font-size:16px;line-height:1;color:#767676;cursor:pointer;flex:0 0 auto}
.bms-engrave-file-msg{font-size:11px;color:#151515;margin:8px 0 0}
.bms-engrave-note{font-size:11px;line-height:1.5;color:#8a8a8a;letter-spacing:.01em;margin:14px 0 0}
.bms-engrave-terms{display:flex;align-items:center;gap:10px;margin:12px 0 0;cursor:pointer}
.bms-engrave-terms input{-webkit-appearance:none;appearance:none;width:15px;height:15px;flex:0 0 auto;margin:0;padding:0;border:0.5px solid #151515;border-radius:0;background:#fff center / 11px no-repeat;cursor:pointer;transition:background-color .2s ease}
.bms-engrave-terms input:checked{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 6.5L5 9L9.5 3.5' stroke='%23151515' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.bms-engrave-terms input:focus-visible{outline:0.5px solid #151515;outline-offset:2px}
.bms-engrave-terms span{font-size:10px;line-height:1.5;font-weight:400;color:#151515;letter-spacing:.01em;text-align:justify}
.bms-engrave-terms span a{color:inherit;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:0.5px}
.bms-engrave-terms-msg{font-size:11px;color:#151515;margin:8px 0 0 26px}
.bms-engrave-actions{display:flex;align-items:flex-start;gap:16px;margin-top:22px}
.bms-engrave-actions-right{flex:1 1 0;min-width:0;display:grid;gap:8px}
.bms-engrave-save{width:100%;background:#151515;color:#fff;border:0.5px solid #151515;border-radius:0;height:40px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:opacity .2s}
.bms-engrave-save.disabled{opacity:.45}
button.bms-engrave-clear{display:none;flex:0 0 auto;align-self:flex-end;width:22px;height:22px;margin:0 -5px 5px 0;padding:0;background:none;border:0;cursor:pointer;color:#151515;align-items:center;justify-content:center;line-height:0}
button.bms-engrave-clear svg{width:12px;height:12px}
.bms-engrave-box.filled .bms-engrave-clear{display:flex}

@media (max-width: 768px){ .bms-engrave-drawer{width:100%} .bms-engrave-body{padding-bottom:calc(32px + env(safe-area-inset-bottom))} .bms-engrave-input{font-size:16px} }
@media (prefers-reduced-motion: reduce){ .bms-engrave-drawer,.bms-engrave-overlay{transition:none} }
#cart .bms-summary-engrave-val{max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ===== PDP GALERIA (2026-08-20): dluzsze kadry na desktopie (szare pole 5:6 zamiast 1:1), prawa kolumna mniej ciasna ===== */
/* bms-pdp-tall-media */
@media (min-width: 769px){
  .product-gallery-content .product-media.type-image{height:auto !important;aspect-ratio:5/6}
  .product-gallery-content .product-media.type-image img{width:100%;height:100%;object-fit:cover}
}

/* GRAWER w koszyku (2026-08-20): property (Grawer/Projekt graweru) zawsze w osobnej linii pod opcjami,
   rowno z lewym marginesem; Ilosc zostaje w pierwszym rzedzie jak zawsze */
#cart .cart-item-details .bms-line-prop{flex:0 0 100% !important;width:100% !important;order:10;margin:2px 0 0 !important}
#cart .cart-item-details .bms-line-prop p{text-align:left}

/* ===== Artykul blog: powrot do wszystkich historii (2026-08-22) ===== */
.main-article .article-back-to-blog{font-weight:300 !important;letter-spacing:.02em}
.main-article .article-infobar{height:auto !important;min-height:0 !important;padding-top:0 !important;padding-bottom:0 !important}
.main-article .article-infobar + .max-width-article.flex.flex-h-center{margin-top:-4px}
/* BELLER: Umów spotkanie w nagłówku — styl jak Pomoc */
/* bms-visit-hdr: port z live 25.08 */
.bms-visit-hdr{display:inline-flex!important;align-items:center!important;align-self:center!important;width:auto!important;height:auto!important;min-width:0!important;padding:0!important;margin:0 14px 0 0!important;font-family:"Avenir Next","Avenir",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-size:12px!important;font-weight:500!important;line-height:normal!important;letter-spacing:normal!important;text-transform:none!important;text-decoration:none!important;color:inherit!important;white-space:nowrap!important;cursor:pointer}
#header .bms-visit-hdr:hover{color:#000!important}
#header .bms-visit-hdr:hover > span.underline-animation{background-image:linear-gradient(to right,#000,#000)}
#header .bms-visit-hdr > span.underline-animation{padding-top:0!important;padding-bottom:0!important;background-position:0 calc(1em + 3px)!important}
.bms-visit-hdr-m{display:flex;align-items:center;gap:10px;color:#000;text-decoration:none;text-transform:none!important;padding:0!important;justify-content:flex-start!important}
.bms-visit-hdr-m,.bms-visit-hdr-m *{text-transform:none!important}
.hidden-desktop .navbar-collapses .bms-visit-hdr-m,.hidden-desktop .navbar-collapses .bms-visit-hdr-m span{font-family:"Avenir Next","Avenir",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-size:11px!important;font-weight:400!important;line-height:17px!important;letter-spacing:normal!important}@media (max-width: 1199px){ .bms-visit-hdr{display:none !important} }.hidden-desktop .navbar-collapses .bms-visit-hdr-m,.hidden-desktop .navbar-collapses .bms-visit-hdr-m span{font-family:"Avenir Next","Avenir",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-size:11px!important;font-weight:400!important;line-height:17px!important;letter-spacing:normal!important}@media (max-width: 1199px){ .bms-visit-hdr{display:none !important} }

/* bms-eq-cols: jednolity rytm kolumn megamenu we wszystkich zakladkach */
@media (min-width: 1200px) {
  #header .paira-dropdown-menu .dropdown-menu-inner.dropdown-menu-left > li.dropdown-submenu { width: 180px; flex: 0 0 180px; }
}

/* bms-cols-like-kol: kolumny wszystkich zakladek jak w Kolekcjach */
@media (min-width: 1200px) {
  #header .paira-mega-menu.hidden-mobile .paira-dropdown-menu .dropdown-menu-left > li.dropdown-submenu > a.a-head {
    font-family: "Avenir Next", "Avenir", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 11px; font-weight: 500; line-height: 17px; color: #000;
    letter-spacing: normal; margin: 0 0 16px; padding: 0; text-transform: none !important; display: block;
  }
  #header .paira-mega-menu.hidden-mobile .paira-dropdown-menu .dropdown-menu-left > li.dropdown-submenu > a.a-head .fa-angle-right { display: none !important; }
  #header .paira-mega-menu.hidden-mobile .paira-dropdown-menu .dropdown-menu-left > li.dropdown-submenu > ul.cons { margin: 0; padding: 0; list-style: none; }
  #header .paira-mega-menu.hidden-mobile .paira-dropdown-menu .dropdown-menu-left > li.dropdown-submenu > ul.cons > li { display: block !important; float: none !important; width: auto !important; margin: 0 0 10px !important; padding: 0 !important; }
  #header .paira-mega-menu.hidden-mobile .paira-dropdown-menu .dropdown-menu-left > li.dropdown-submenu > ul.cons > li:last-child { margin-bottom: 0 !important; }
  #header .paira-mega-menu.hidden-mobile .paira-dropdown-menu .dropdown-menu-left > li.dropdown-submenu > ul.cons > li > a {
    font-family: "Avenir Next", "Avenir", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 11px; font-weight: 400; line-height: 17px; color: #000; text-decoration: none; display: inline-block; width: auto;
  }
}

/* bms-right-nav: Bespoke po prawej stronie naglowka */
@media (min-width: 1200px) {
  #header .bms-right-nav { margin-right: 16px !important; }
  #header .bms-right-nav > li > a { font-size: 12px; font-weight: 400; color: inherit; text-decoration: none; white-space: nowrap; }
  #header .bms-right-nav > li { margin-right: 16px; }
  #header .bms-right-nav > li:last-child { margin-right: 0; }
  #header .bms-right-nav .paira-angle-down { display: none; }
}
@media (max-width: 1199px) { #header .bms-right-nav { display: none !important; } }


/* bms-right-panel-colors: tekst paneli prawego klastra zawsze ciemny */
@media (min-width: 1200px) {
  #header .bms-right-nav .dropdown-menu .bms-bespoke-heading,
  #header .bms-right-nav .dropdown-menu .bms-bespoke-body,
  #header .bms-right-nav .dropdown-menu .bms-bespoke-body a { color: #111 !important; }
}

/* bms-right-clone: style paneli Bespoke dla prawego klastra (Bespoke/Atelier/Assistance) */
@media (min-width: 1200px) {
#header .bms-right-nav > li .dropdown-menu-inner.dropdown-menu-right { margin-left: 0 !important; }
#header .bms-right-nav > li .dropdown-menu-inner.dropdown-menu-right img.bms-bespoke-img { object-position: 50% 34% !important; }
#header .bms-right-nav > li .dropdown-menu-inner.dropdown-menu-left.bms-bespoke-text {
    box-sizing: border-box !important; display: block !important; padding: 0 40px 0 0 !important;
  }
#header .bms-right-nav .bms-bespoke-heading {
    font-size: 11px !important; font-weight: 500 !important; color: #000 !important; margin: 0 0 14px !important; line-height: 17px !important;
  }
#header .bms-right-nav .bms-bespoke-heading { max-width: 440px !important; }
#header .bms-right-nav .bms-bespoke-text .bms-bespoke-body {
    font-size: 11px !important; font-weight: 400 !important; line-height: 17px !important; color: #000 !important; margin: 0 !important; max-width: 440px !important;
    position: static !important;
    /* NIE wymuszać visibility/opacity — inaczej panel Bespoke jest zawsze widoczny/klikalny gdy zamknięty,
       nachodzi na inne zakładki (przełączanie menu) i nie animuje się. Dziedziczy z otwartego panelu. */
  }
#header .bms-right-nav > li .dropdown-menu-inner.dropdown-menu-right::before, #header .bms-right-nav > li .dropdown-menu-inner.dropdown-menu-right::after { display: none !important; background: none !important; }
#header .bms-right-nav > li .dropdown-menu-inner.dropdown-menu-right a.bms-bespoke-imglink {
    background: linear-gradient(to top, rgba(0,0,0,0.60) 0%, rgba(0,0,0,0.20) 30%, rgba(0,0,0,0) 50%) !important;
  }
#header .bms-right-nav > li > .dropdown-menu .bms-bespoke-text, #header .bms-right-nav > li > .dropdown-menu .dropdown-menu-inner.dropdown-menu-right {
    opacity: 0 !important; transform: translateY(-6px) !important;
    transition: opacity .35s cubic-bezier(0.215,0.61,0.355,1), transform .35s cubic-bezier(0.215,0.61,0.355,1) !important;
  }
#header .bms-right-nav > li.is-visible > .dropdown-menu .bms-bespoke-text { opacity: 1 !important; transform: none !important; transition-delay: .05s !important; }
#header .bms-right-nav > li.is-visible > .dropdown-menu .dropdown-menu-inner.dropdown-menu-right { opacity: 1 !important; transform: none !important; transition-delay: .13s !important; }
#header .bms-right-nav > li > .dropdown-menu .bms-bespoke-text, #header .bms-right-nav > li > .dropdown-menu .dropdown-menu-inner.dropdown-menu-right, .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .showroom-wrapper .showroom-inner.drawer-animation-image {
      transition-duration: .01ms !important; transform: none !important; opacity: 1 !important;
    }
}

/* bms-right-wrapper-pos: panele prawego klastra jak natywne megamenu (y=100 wzgledem naglowka) */
@media (min-width: 1200px) {
  #header .bms-right-nav > li > .dropdown-menu.paira-dropdown-menu { left: 0 !important; width: 100vw !important; top: 100px !important; }
  #header .bms-right-nav > li > a { position: relative; top: -4px; display: inline-flex; align-items: center; }
  #header .bms-right-nav a.bms-help-trigger { padding: 0 !important; border: 0 !important; height: auto !important; line-height: 17px !important; background: none !important; }
}

/* bms-nav-right-tabs: Bespoke/Atelier/Assistance dopychane w prawo w glownej nawigacji */
@media (min-width: 1200px) {
  #header .header-inner > .navbar { flex: 1 1 auto; min-width: 0; }
  #header .header-inner .navbar-collapse { width: 100%; max-width: none; }
  #header .header-inner ul.navbar-nav { display: flex; width: 100%; align-items: center; }
  #header .header-inner ul.navbar-nav > li.bms-push { margin-left: auto; }
  #header ul.navbar-nav > li.bms-push > a, #header ul.navbar-nav > li.bms-hdr-li > a { transition-delay: 0ms !important; }
  #header ul.navbar-nav li.bms-hdr-li a.bms-help-trigger { padding: 0 !important; border: 0 !important; background: none !important; height: auto !important; line-height: inherit !important; font-size: inherit !important; letter-spacing: inherit !important; text-transform: none !important; color: inherit !important; }
}

/* bms-assist-col: tresc panelu Pomocy w banerze Assistance (te same informacje co panel na live) */
@media (min-width: 1200px) {
  #header .bms-assist-col .bms-bespoke-body { margin-bottom: 12px !important; }
  #header .bms-ad-hours { font-size: 11px; line-height: 17px; color: #000; margin: 0 0 16px; }
  #header .bms-ad-group { display: flex; flex-direction: column; gap: 8px; margin-bottom: 16px; }
  #header .bms-ad-group:last-child { margin-bottom: 0; }
  #header .bms-ad-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 190px)); gap: 8px 24px; }
  #header .bms-ad-link { font-size: 11px; line-height: 17px; color: #000; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; width: fit-content; }
  #header .bms-ad-link:hover { text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
  #header .bms-ad-ico { display: inline-flex; }
}

/* bms-assist-plain-fix: Pomoc/Assistance w linii i skali pozostalych zakladek.
   Uwaga: wyzej w pliku jest regula (1-3-3) z font-size:inherit !important na a.bms-help-trigger
   oraz display/margin !important na .bms-help-trigger-desktop - stad font-size na li
   i selektory o tej samej specyficznosci na koncu pliku. */
@media (min-width: 1200px) {
  #header ul.navbar-nav > li.bms-assist-plain { display: block; height: auto; padding: 0 15px 24px; padding-right: 15px !important; margin: 0 14px 0 0; font-size: 12px; line-height: 21px; }
  #header ul.navbar-nav li.bms-assist-plain a.bms-help-trigger { display: inline !important; position: relative; top: 1px; align-self: auto !important; font-size: 12px !important; font-weight: 400; line-height: normal !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; height: auto !important; min-width: 0 !important; letter-spacing: normal !important; text-transform: none !important; color: inherit; }
  #header ul.navbar-nav li.bms-assist-plain a.bms-help-trigger span { font-size: 12px !important; line-height: normal !important; }
}


/* bms-butiki: panel z dwoma kaflami butikow (WWA + KRK), uklad 50/50 w systemie megamenu */
@media (min-width: 1200px) {
  #header .bms-butiki > .dropdown-menu { display: flex !important; gap: 20px; }
  #header .bms-butiki > .dropdown-menu .dropdown-menu-inner { position: relative !important; flex: 1 1 50% !important; width: auto !important; max-width: none !important; left: auto !important; right: auto !important; padding: 0 !important; margin: 0 !important; }
  #header .bms-butiki > .dropdown-menu img.bms-bespoke-img { width: 100% !important; height: 350px !important; object-fit: cover !important; object-position: 50% 50% !important; display: block !important; }
  #header .bms-butiki > .dropdown-menu a.bms-bespoke-imglink { position: absolute !important; inset: 0 !important; display: flex !important; align-items: flex-end !important; padding: 16px 20px !important; background: linear-gradient(to top, rgba(0,0,0,0.45) 0%, rgba(0,0,0,0.12) 28%, rgba(0,0,0,0) 45%) !important; }
}

/* bms-butiki: kafle zawsze w pelni widoczne po otwarciu + kadry miast */
@media (min-width: 1200px) {
  #header .bms-butiki > .dropdown-menu .dropdown-menu-inner { opacity: 1 !important; transform: none !important; transition: none !important; }
  #header .bms-butiki > .dropdown-menu img.bms-bespoke-img { object-position: 50% 62% !important; }
}

/* Jednolita wielkosc kadru w KAZDYM panelu menu = kafel Butikow (740x350) */
@media (min-width: 1200px) {
  #header .paira-mega-menu.hidden-mobile .navbar-nav > li.dropdown > .dropdown-menu .dropdown-menu-inner.dropdown-menu-right img { width: 100% !important; height: 350px !important; object-fit: cover !important; display: block !important; }
}

/* karta podarunkowa: jedyne zdjecie na pelna wysokosc kolumny opisu (scope przez id medium) */
@media (min-width: 768px) {
  .product-gallery:has(.media-62705651515720) barracuda-product-gallery,
  .product-gallery:has(.media-62705651515720) .product-gallery-content,
  .product-gallery:has(.media-62705651515720) .product-media { height: 100% !important; max-height: none !important; }
  .product-gallery:has(.media-62705651515720) .product-media img { height: 100% !important; width: 100% !important; object-fit: cover !important; object-position: 62% 50% !important; }
}

/* stopka mobile: akordeon kolumn (Marka/Opieka/Informacje) — wzor duzych domow */
@media (max-width: 767px) {
  #shopify-section-footer .footer-mobile-nav .collapsible.collapsed { display: none; }
  #shopify-section-footer .footer-mobile-nav .collapse-toggle { cursor: pointer; padding: 14px 0; border-top: 1px solid #ececec; }
  #shopify-section-footer .footer-mobile-nav .collapsible.opened { display: block; }
}

/* Wczesniejsze przejscie na menu mobilne: przy < 1200px desktopowa nawigacja
   nie miesci sie (8 zakladek + logo + klaster), wiec pokazujemy hamburger. */
@media (min-width: 992px) and (max-width: 1199px) {
  #header nav.paira-mega-menu.hidden-mobile { display: none !important; }
  #header nav.paira-mega-menu.hidden-desktop { display: block !important; width: auto; }
  #header nav.paira-mega-menu.hidden-desktop .navbar-header.hidden { display: block !important; }
  #header nav.paira-mega-menu.hidden-desktop .navbar-toggle { display: inline-block; width: 20px; height: 25px; padding: 0; border: 0; background: none; }
  #header nav.paira-mega-menu.hidden-desktop .navbar-toggle svg { width: 20px; height: 20px; }
}



/* bms-butrym-mask: pelnoekranowa maska strony przy otwartym panelu menu (wzor magdabutrym.com);
   panele fade'uja natywnie (.dropdown-menu-wrapper opacity .3s) - maska domyka efekt */
@media (min-width: 1200px) {
  body::after { content: ""; position: fixed; inset: 0; background: rgba(17,17,17,.16); opacity: 0; pointer-events: none; z-index: 98; transition: opacity .3s ease-in-out; }
  body:has(#header .paira-mega-menu.hidden-mobile ul.nav.navbar-nav > li.dropdown:hover)::after,
  body:has(#header .bms-right-nav > li.dropdown:hover)::after,
  body:has(#header .bms-butiki:hover)::after { opacity: 1; }
}
/* bms-cdn-bump 2026-08-27 */



/* bms-scroll-reveal: header chowa sie przy scrollu w dol, wysuwa przy ruchu w gore (wzor fernandojorge.co.uk) */
body.bms-hdr-fixed #header { position: fixed; top: 0; left: 0; right: 0; z-index: 130; transform: translateY(-101%); transition: transform .5s cubic-bezier(.215,.61,.355,1); }
body.bms-hdr-fixed.bms-hdr-show #header { transform: translateY(0); }
body.bms-hdr-fixed #header .header { background: #fff; }
body.bms-hdr-fixed #header .header.should-be-transparent { background: #fff !important; }







  
    #header .bms-right-nav > li.bms-bespoke:not(.bms-butiki) > .dropdown-menu .dropdown-menu-inner.dropdown-menu-right,
    #header ul.navbar-nav > li.bms-bespoke:not(.bms-butiki) > .dropdown-menu .dropdown-menu-inner.dropdown-menu-right { width: calc((100vw - 120px) / 2) !important; max-width: 846px !important; flex: 0 0 auto !important; margin-left: auto !important; }
    #header li.bms-butiki > .dropdown-menu { align-items: center !important; }
    #header li.bms-butiki > .dropdown-menu .dropdown-menu-inner { height: var(--bms-kadr-real, var(--bms-kadr-h)) !important; min-height: 0 !important; max-height: var(--bms-kadr-real, var(--bms-kadr-h)) !important; margin: 0 !important; overflow: hidden !important; }
    #header .bms-butiki > .dropdown-menu img.bms-bespoke-img { height: var(--bms-kadr-real, var(--bms-kadr-h)) !important; }
  }

@media (min-width: 1200px) {
    
}
