@font-face{font-family:'PK Serif';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/pk-serif-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'PK Serif';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/pk-serif-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'PK Serif';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/pk-serif-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'PK Serif';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/pk-serif-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'PK Serif';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/pk-serif-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'PK Serif';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/pk-serif-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/instrument-sans-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/instrument-sans-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/instrument-sans-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/instrument-sans-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/instrument-sans-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/instrument-sans-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root {
  --bialy: #ffffff;
  --porcelana: #f4f4f2;
  --porcelana-2: #ebebe7;
  --linia: #e0e0db;
  --linia-2: #ecece8;
  --atrament: #18191d;
  --tekst: #3b3d43;
  --tekst-2: #5c5e65;
  --tekst-3: #686a71;
  --obrys-pola: #8c8e93;
  --kobalt: #1f3c8c;
  --kobalt-ciemny: #172b63;
  --kobalt-jasny: #c9d3ee;
  --czerwien: #b3261e;
  --f-szer: "PK Serif", Georgia, "Times New Roman", serif;
  --f-ui: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
  --f-tekst: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
  --r: 10px;
  --r-m: 6px;
  --cien: 0 22px 44px -26px rgba(20, 22, 28, .22);
  --szer: 1280px;
  --pad: clamp(16px, 3.4vw, 32px);
}

*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 96px; }
body { margin: 0; background: var(--bialy); color: var(--tekst); font: 400 16px/1.6 var(--f-tekst); -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 3px; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; }
h1, h2, h3 { font-family: var(--f-szer); font-weight: 400; line-height: 1.12; margin: 0 0 .5em; letter-spacing: -.01em; color: var(--atrament); }
h1, h2, h3, .karta-promo__tytul, .b2b-baner__pod { text-wrap: balance; }
p, li { text-wrap: pretty; }
p { margin: 0 0 1em; }
ul, ol { margin: 0; padding: 0; list-style: none; }
fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
svg { width: 22px; height: 22px; flex: none; }
:focus-visible { outline: 2px solid var(--kobalt); outline-offset: 3px; border-radius: 4px; }
.sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ukryte { position: absolute; left: -9999px; }
.pomin { position: absolute; left: 12px; top: -60px; z-index: 200; background: var(--atrament); color: #fff; padding: 10px 16px; border-radius: var(--r-m); }
.pomin:focus { top: 12px; }
.kontener { width: 100%; max-width: var(--szer); margin-inline: auto; padding-inline: var(--pad); }
.sekcja { padding-block: clamp(40px, 6vw, 72px); }
.sekcja__tytul { font-size: clamp(30px, 3.4vw, 42px); text-align: center; margin-bottom: 26px; }

.przycisk { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 11px 24px; border: 1px solid transparent;
  border-radius: 999px; font: 500 15px/1.1 var(--f-ui); letter-spacing: .005em; text-decoration: none; background: none; transition: background .15s, color .15s, border-color .15s; }
.przycisk--czarny { background: var(--atrament); color: #fff; }
.przycisk--czarny:hover { background: #33353b; }
.przycisk--obrys { border-color: var(--atrament); color: var(--atrament); }
.przycisk--obrys:hover { background: var(--atrament); color: #fff; }
.przycisk--jasny { background: var(--bialy); color: var(--atrament); }
.przycisk--jasny:hover { background: var(--porcelana-2); }
.przycisk--obrys-jasny { border-color: rgba(255, 255, 255, .7); color: var(--bialy); }
.przycisk--obrys-jasny:hover { background: rgba(255, 255, 255, .1); }
.przycisk--piasek { background: var(--porcelana-2); color: var(--atrament); }
.przycisk--piasek:hover { background: #dfdfda; }
.przycisk--pelny { width: 100%; }
.przycisk--maly { min-height: 38px; padding: 7px 14px; font-size: 14px; }
.przycisk--duzy { flex: 1; flex-direction: column; gap: 3px; min-height: 56px; font-size: 16px; font-weight: 600; }
.przycisk--duzy small { font: 400 12.5px/1 var(--f-ui); letter-spacing: 0; opacity: .72; }
.przycisk--ikona { width: 56px; min-height: 56px; padding: 0; border-radius: 50%; }
.link-strzalka { font: 500 16px var(--f-ui); color: var(--atrament); text-decoration: underline; text-decoration-color: var(--kobalt); text-underline-offset: 5px; }
.link-strzalka:hover { color: var(--kobalt); }
.ikona { display: inline-grid; place-items: center; position: relative; width: 42px; height: 42px; border: 0; background: none; border-radius: 50%; color: var(--atrament); text-decoration: none; }
.ikona:hover { background: var(--porcelana); }
.licznik { position: absolute; top: 2px; right: 0; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: var(--kobalt); color: #fff; font: 600 11px/18px var(--f-ui); text-align: center; }

.prototyp { background: #f3e2b3; color: #4a3a12; font: 500 13px/1.35 var(--f-ui); text-align: center; padding: 6px var(--pad); }
.pasek-gora { background: var(--atrament); color: #f3f3f1; font: 500 13.5px/1 var(--f-ui); letter-spacing: .01em; }
.pasek-gora__w { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; min-height: 34px; gap: 16px; }
.pasek-gora__tekst { margin: 0; text-align: center; }
.pasek-gora__tekst i { font-style: normal; opacity: .4; margin-inline: 10px; }
.pasek-gora__linki { display: flex; justify-content: flex-end; gap: 18px; }
.pasek-gora__linki a { text-decoration: none; opacity: .9; }
.pasek-gora__linki a:hover { text-decoration: underline; opacity: 1; }
.jezyk span[title] { opacity: .55; }

.naglowek { position: sticky; top: 0; z-index: 50; background: rgba(255, 255, 255, .97); border-bottom: 1px solid var(--linia-2); }
.naglowek__w { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; min-height: 80px; gap: 28px; }
.naglowek__burger { display: none; justify-self: start; }
.naglowek__ikony { justify-self: end; display: flex; gap: 2px; }
.logo { display: inline-flex; flex-direction: column; align-items: center; text-decoration: none; color: var(--atrament); line-height: 1; }
.logo__znak { font: 500 34px/1 var(--f-szer); letter-spacing: -.01em; }
.logo__kreska { display: inline-block; margin-left: 2px; font-weight: 400; transform: skewX(-8deg); }
.logo__podpis { margin-top: 6px; font: 500 10.5px/1 var(--f-ui); letter-spacing: .26em; text-transform: uppercase; color: var(--tekst-2); }
.logo--maly .logo__znak { font-size: 26px; }
.logo--stopka { align-items: flex-start; }

.menu__lista { display: flex; align-items: center; gap: clamp(8px, 1.25vw, 20px); }
.menu__btn { position: relative; border: 0; background: none; padding: 10px 2px; font: 500 15px/1 var(--f-ui); color: var(--atrament); white-space: nowrap; }
.menu__btn::after { content: ""; position: absolute; left: 2px; right: 2px; bottom: 2px; height: 1.5px; background: var(--kobalt); transform: scaleX(0); transform-origin: left; transition: transform .18s; }
.menu__btn:hover::after, .menu__btn[aria-expanded="true"]::after, .menu__btn.jest-aktywny::after { transform: scaleX(1); }
.menu__btn--b2b { margin-left: 4px; padding: 8px 14px; border: 1px solid var(--linia); border-radius: 999px; }
.menu__btn--b2b::after { display: none; }
.menu__btn--b2b:hover, .menu__btn--b2b[aria-expanded="true"], .menu__btn--b2b.jest-aktywny { border-color: var(--atrament); }

.mega { position: absolute; left: 0; right: 0; top: 100%; background: var(--bialy); border-top: 1px solid var(--linia-2); box-shadow: var(--cien); padding-top: 32px; z-index: 40; }
.mega[hidden] { display: none; }
.mega.jest-wejscie { animation: mega-wejscie .16s ease-out; }
@keyframes mega-wejscie { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
.mega__w { display: grid; grid-template-columns: minmax(0, 1fr) 270px; gap: 48px; }
.mega__kolumny { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.mega__nagl { display: inline-block; margin: 0 0 10px; font: 400 22px/1.2 var(--f-szer); color: var(--atrament); text-decoration: none; }
a.mega__nagl:hover { text-decoration: underline; }
.mega__kol li a { display: block; padding: 5px 0; font-size: 15.5px; text-decoration: none; color: var(--tekst); }
.mega__kol li a:hover { color: var(--atrament); text-decoration: underline; text-decoration-color: var(--kobalt); }
.mega__dodatek { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--linia-2); }
.mega__dodatek a { color: var(--tekst-2) !important; font-size: 15px !important; }
.mega__promo { display: grid; gap: 4px; align-content: start; text-decoration: none; }
.mega__promo-foto { display: block; border-radius: var(--r-m); overflow: hidden; background: var(--porcelana); aspect-ratio: 1; margin-bottom: 10px; }
.mega__promo-foto img { width: 100%; height: 100%; object-fit: cover; }
.mega__promo-etykieta { justify-self: start; padding: 3px 10px; border-radius: 999px; background: var(--porcelana); font: 500 12.5px/1.4 var(--f-ui); color: var(--atrament); }
.mega__promo-nazwa { font: 400 19px/1.25 var(--f-szer); color: var(--atrament); }
.mega__promo-cena { font: 600 16px var(--f-ui); }
.mega__promo-cena small { display: block; font: 400 13px var(--f-tekst); color: var(--tekst-2); }
.mega__promo:hover .mega__promo-nazwa { text-decoration: underline; }
.mega__dol { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 26px; padding-block: 14px 18px; border-top: 1px solid var(--linia-2); }
.mega__szkliwa { display: flex; align-items: center; gap: 8px; font: 500 15px var(--f-ui); color: var(--tekst-2); }
.mega__szkliwa > span { margin-right: 6px; }
.mega__uslugi { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--tekst-2); font-size: 15px; }
.mega__wszystko { font: 500 15px var(--f-ui); color: var(--atrament); text-decoration: underline; text-decoration-color: var(--kobalt); text-underline-offset: 5px; white-space: nowrap; }
.mega__wszystko:hover { color: var(--kobalt); }
.kropka-szkliwa { display: inline-block; width: 26px; height: 26px; border-radius: 50%; border: 1px solid rgba(24, 25, 29, .16); box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .25); flex: none; }
a.kropka-szkliwa:hover { transform: scale(1.12); }
.kropka-szkliwa--mala { width: 16px; height: 16px; padding: 0; cursor: pointer; }
.kropka-szkliwa--mala.jest-wybrana { box-shadow: 0 0 0 2px var(--bialy), 0 0 0 3px var(--atrament); }
.mega__w--kolekcje { grid-template-columns: minmax(0, 1fr) 320px; padding-bottom: 30px; }
.mega-kolekcje { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px 18px; }
.mega .mega-kolekcja { display: grid; grid-template-columns: 52px 1fr auto; align-items: center; gap: 12px; padding: 8px; border-radius: var(--r); text-decoration: none; }
.mega .mega-kolekcja:hover { background: var(--porcelana); text-decoration: none; }
.mega-kolekcja__probka { display: block; width: 52px; height: 52px; border-radius: 50%; border: 1px solid rgba(24, 25, 29, .12); }
.mega-kolekcja__tekst b { display: block; font: 400 19px/1.2 var(--f-szer); color: var(--atrament); }
.mega-kolekcja__tekst span { font-size: 14px; color: var(--tekst-2); }
.mega-kolekcja__ile { font: 500 13px var(--f-ui); color: var(--tekst-3); }
.mega__kol--polaczenia { border-left: 1px solid var(--linia-2); padding-left: 32px; }
.mega .mega-polaczenia a { display: flex; align-items: center; gap: 12px; padding: 7px 0; text-decoration: none; }
.mega-polaczenia a:hover { text-decoration: underline; }
.para { display: inline-flex; }
.para span { width: 30px; height: 30px; border-radius: 50%; border: 2px solid var(--bialy); }
.para span + span { margin-left: -10px; }
.mega__uwaga { margin: 14px 0; font-size: 14px; color: var(--tekst-2); }
.mega--b2b { background: var(--bialy); }
.mega--b2b .mega__w { grid-template-columns: minmax(0, 1fr) 300px; }
.mega__warunki li { display: flex; gap: 8px; align-items: flex-start; padding: 5px 0; font-size: 15px; }
.mega__warunki svg { width: 18px; height: 18px; color: var(--kobalt); margin-top: 2px; }
.mega__b2b-cta { display: grid; gap: 10px; align-content: start; padding: 22px; border-radius: var(--r); background: var(--kobalt-ciemny); color: var(--bialy); }
.mega__b2b-tytul { font: 400 21px/1.25 var(--f-szer); color: var(--bialy); margin-bottom: 6px; }
.mega__b2b-kontakt { margin: 6px 0 0; font-size: 14px; color: var(--kobalt-jasny); }
.mega-tlo { position: fixed; inset: 0; z-index: 30; background: rgba(20, 22, 28, .14); }
.mega-tlo[hidden] { display: none; }

.szuflada { position: fixed; inset: 0; z-index: 120; background: rgba(20, 22, 28, .3); }
.szuflada[hidden] { display: none; }
.szuflada__panel { position: absolute; inset: 0 auto 0 0; width: min(430px, 94vw); background: var(--bialy); display: flex; flex-direction: column; animation: szuflada .2s ease-out; }
@keyframes szuflada { from { transform: translateX(-24px); opacity: .4; } to { transform: none; opacity: 1; } }
.szuflada__gora { display: flex; align-items: center; justify-content: space-between; padding: 12px 12px 12px 20px; border-bottom: 1px solid var(--linia-2); }
.szuflada__poziomy { overflow-y: auto; flex: 1; overscroll-behavior: contain; }
.szuflada__poziom { padding: 18px 20px 32px; animation: poziom .18s ease-out; }
@keyframes poziom { from { transform: translateX(16px); opacity: .3; } to { transform: none; opacity: 1; } }
.szuflada__szukaj { display: flex; align-items: center; gap: 10px; padding: 0 14px; border: 1px solid var(--obrys-pola); border-radius: 999px; background: var(--bialy); }
.szuflada__szukaj input { flex: 1; min-width: 0; height: 46px; border: 0; background: none; outline: none; }
.szuflada__chipy { display: flex; gap: 8px; margin: 14px 0 18px; }
.szuflada__chipy a { padding: 8px 14px; border: 1px solid var(--linia); border-radius: 999px; font: 500 15px var(--f-ui); text-decoration: none; color: var(--atrament); }
.szuflada__kafle { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 18px; }
.szuflada__kafle a { display: grid; gap: 6px; text-decoration: none; font: 500 15px var(--f-ui); text-align: center; }
.szuflada__kafle img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: var(--r-m); background: var(--porcelana); }
.szuflada__lista li + li { border-top: 1px solid var(--linia-2); }
.szuflada__lista button { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 56px; border: 0; background: none; font: 400 22px/1.2 var(--f-szer); color: var(--atrament); text-align: left; padding: 0; }
.szuflada__lista button.jest-b2b { margin-top: 10px; padding: 0 18px; border: 1px solid var(--linia); border-radius: 999px; font-size: 19px; }
.szuflada__etykieta { margin: 22px 0 10px; font: 600 14px var(--f-ui); color: var(--tekst-2); }
.szuflada__szkliwa { display: flex; gap: 14px; overflow-x: auto; padding-bottom: 6px; scrollbar-width: none; }
.szuflada__szkliwa a { display: grid; justify-items: center; gap: 6px; min-width: 62px; font: 500 13px var(--f-ui); text-decoration: none; text-align: center; }
.szuflada__szkliwa a span { width: 48px; height: 48px; border-radius: 50%; border: 1px solid rgba(24, 25, 29, .14); }
.szuflada__stopka { margin-top: 22px; border-top: 1px solid var(--linia-2); padding-top: 10px; }
.szuflada__stopka a { display: block; padding: 10px 0; text-decoration: none; }
.szuflada__obietnica { margin: 14px 0 0; font-size: 14px; color: var(--tekst-2); }
.szuflada__wstecz { display: inline-flex; align-items: center; gap: 4px; min-height: 44px; border: 0; background: none; padding: 0; font: 500 16px var(--f-ui); }
.szuflada__wszystko { display: block; margin: 6px 0 14px; font: 500 16px var(--f-ui); color: var(--atrament); text-decoration-color: var(--kobalt); text-underline-offset: 4px; }
.szuflada__naglowek { margin: 18px 0 4px; font-size: 21px; }
.szuflada__naglowek a { text-decoration: none; }
.szuflada__grupa a { display: block; padding: 11px 0; border-bottom: 1px solid var(--linia-2); text-decoration: none; font-size: 17px; }
.szuflada__grupa--kolekcje a { display: flex; align-items: center; gap: 14px; }
.szuflada__grupa--kolekcje small { margin-left: auto; color: var(--tekst-3); }
.szuflada__warunki { margin: 18px 0; }
.szuflada__warunki li { display: flex; gap: 8px; padding: 4px 0; }

.szukaj { position: fixed; inset: 0; z-index: 110; background: rgba(20, 22, 28, .28); }
.szukaj[hidden] { display: none; }
.szukaj__panel { background: var(--bialy); padding: 22px 0 28px; box-shadow: var(--cien); max-height: 92vh; overflow-y: auto; }
.szukaj__forma { display: flex; align-items: center; gap: 12px; padding: 0 8px 0 18px; border: 1px solid var(--atrament); border-radius: 999px; background: var(--bialy); }
.szukaj__forma input { flex: 1; min-width: 0; height: 56px; border: 0; background: none; outline: none; font: 400 20px var(--f-tekst); }
.szukaj__forma input::-webkit-search-cancel-button { display: none; }
.szukaj__popularne { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 14px; font: 500 15px var(--f-ui); color: var(--tekst-2); }
.szukaj__popularne a { padding: 6px 12px; border-radius: 999px; background: var(--porcelana); color: var(--atrament); text-decoration: none; }
.szukaj__popularne a:hover { background: var(--porcelana-2); }
.szukaj__wyniki { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 10px; margin-top: 18px; }
.szukaj__wynik { display: grid; grid-template-columns: 64px 1fr; gap: 12px; align-items: center; padding: 8px; border-radius: var(--r); text-decoration: none; background: var(--bialy); }
.szukaj__wynik:hover { background: var(--porcelana); }
.szukaj__wynik img { width: 64px; height: 64px; border-radius: var(--r-m); object-fit: cover; background: var(--porcelana); }
.szukaj__wynik b { display: block; font: 500 15.5px/1.25 var(--f-ui); color: var(--atrament); }
.szukaj__wynik span { font-size: 14px; color: var(--tekst-2); }
.szukaj__wszystkie { grid-column: 1 / -1; justify-self: start; font: 500 15px var(--f-ui); color: var(--atrament); text-decoration-color: var(--kobalt); text-underline-offset: 4px; }

.hero { padding-block: clamp(28px, 4.4vw, 56px) clamp(40px, 5.4vw, 72px); }
.hero__w { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr); gap: clamp(28px, 5vw, 64px); align-items: center; }
.hero h1 { font-size: clamp(38px, 4.4vw, 62px); line-height: 1.05; letter-spacing: -.018em; margin-bottom: 24px; max-width: 15ch; }
.hero__lead { font-size: 18px; line-height: 1.6; max-width: 44ch; color: var(--tekst-2); margin-bottom: 30px; }
.hero__cta { display: flex; flex-wrap: wrap; gap: 12px; }
.hero__foto { position: relative; margin: 0; border-radius: var(--r); overflow: hidden; background: var(--porcelana); aspect-ratio: 6 / 5; }
.hero__foto img { width: 100%; height: 100%; object-fit: cover; }
.hero__metka { position: absolute; right: 16px; bottom: 16px; padding: 9px 16px; border-radius: 999px; background: rgba(255, 255, 255, .92); color: var(--atrament); font: 500 14px var(--f-ui); text-decoration: none; backdrop-filter: blur(6px); }
.hero__metka b { margin-left: 8px; font-weight: 600; }
.hero__metka:hover { background: #fff; text-decoration: underline; text-decoration-color: var(--kobalt); }
.zaufanie { background: var(--bialy); border-block: 1px solid var(--linia-2); }
.zaufanie__w { display: flex; justify-content: space-around; gap: 20px; padding-block: 16px; font: 500 15px var(--f-ui); color: var(--atrament); }
.zaufanie__w li { display: flex; align-items: center; gap: 10px; }
.zaufanie__w svg { color: var(--kobalt); }
.zakladki { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px 28px; margin-bottom: 28px; }
.zakladki [role="tab"] { border: 0; background: none; padding: 6px 0; font: 500 15.5px var(--f-ui); color: var(--tekst-2); border-bottom: 1.5px solid transparent; }
.zakladki [role="tab"]:hover { color: var(--atrament); }
.zakladki [role="tab"][aria-selected="true"] { color: var(--atrament); border-bottom-color: var(--atrament); }
.rodzaje__lista { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
.rodzaje__lista a { display: grid; gap: 12px; text-decoration: none; text-align: center; font: 400 19px var(--f-szer); color: var(--atrament); }
.rodzaje__lista img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 50%; background: var(--porcelana); transition: transform .25s; }
.rodzaje__lista a:hover img { transform: scale(1.03); }
.szkliwa-pas { background: var(--porcelana); }
.szkliwa-pas__w { display: grid; grid-template-columns: minmax(0, 340px) minmax(0, 1fr); gap: 40px; align-items: center; }
.szkliwa-pas h2 { font-size: clamp(28px, 3vw, 36px); }
.szkliwa-pas__tekst p { color: var(--tekst-2); margin: 0; }
.szkliwa-pas__lista { display: grid; grid-template-columns: repeat(9, minmax(0, 1fr)); gap: 12px; }
.szkliwa-pas__lista a { display: grid; justify-items: center; gap: 8px; text-decoration: none; font: 500 14px var(--f-ui); text-align: center; }
.szkliwa-pas__probka { width: 100%; max-width: 92px; aspect-ratio: 1; border-radius: 50%; border: 1px solid rgba(24, 25, 29, .12); transition: transform .2s; }
.szkliwa-pas__lista a:hover .szkliwa-pas__probka { transform: translateY(-3px); }
.b2b-baner { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: clamp(30px, 4.4vw, 56px); border-radius: var(--r); background: var(--kobalt-ciemny); color: var(--bialy); }
.b2b-baner__tytul { font-size: clamp(28px, 3vw, 40px); margin-bottom: 8px; color: var(--bialy); }
.b2b-baner__pod { margin: 0; font: 400 clamp(20px, 2.2vw, 27px)/1.3 var(--f-szer); color: var(--kobalt-jasny); max-width: 30ch; }
.b2b-baner__cta { display: grid; gap: 12px; min-width: 260px; }
.historia__w { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 64px); align-items: center; }
.historia__foto { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; border-radius: var(--r); background: var(--porcelana-2); }
.historia h2 { font-size: clamp(30px, 3.4vw, 44px); }
.historia p { color: var(--tekst-2); max-width: 46ch; }

.seo { background: var(--bialy); border-top: 1px solid var(--linia-2); padding-block: clamp(40px, 5.4vw, 64px); }
.seo__tytul { font-size: clamp(24px, 2.6vw, 32px); text-align: center; margin-bottom: 22px; }
.seo__kolumny { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; max-width: 1000px; margin-inline: auto; font-size: 15.5px; color: var(--tekst-2); }
.seo__kolumny a { color: var(--atrament); text-decoration-color: rgba(31, 60, 140, .45); }
.seo__kolumny a:hover { color: var(--kobalt); text-decoration-color: var(--kobalt); }
.faq { max-width: 1000px; margin: 22px auto 0; }
.faq details { border-top: 1px solid var(--linia); }
.faq details:last-child { border-bottom: 1px solid var(--linia); }
.faq summary { padding: 15px 0; font: 500 16px var(--f-ui); color: var(--atrament); cursor: pointer; list-style: none; display: flex; justify-content: space-between; gap: 16px; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; font-weight: 300; font-size: 22px; line-height: 1; color: var(--kobalt); }
.faq details[open] summary::after { content: "−"; }
.faq details p { color: var(--tekst-2); margin: 0 0 16px; max-width: 80ch; }

.siatka { display: grid; gap: 36px 22px; }
.siatka--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.siatka--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.karta { position: relative; display: flex; flex-direction: column; background: none; }
.karta__foto { position: relative; display: block; aspect-ratio: 1; background: var(--porcelana); border-radius: var(--r-m); overflow: hidden; }
.karta__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease, opacity .2s; }
.karta:hover .karta__foto img { transform: scale(1.025); }
.odznaka { position: absolute; top: 12px; left: 12px; padding: 5px 10px; border-radius: 999px; background: var(--bialy); font: 500 12.5px/1.2 var(--f-ui); color: var(--atrament); }
.odznaka--ii-gatunek { background: var(--atrament); color: var(--bialy); }
.karta__serce { position: absolute; top: 10px; right: 10px; display: grid; place-items: center; width: 36px; height: 36px; border: 0; border-radius: 50%; background: var(--bialy); color: var(--atrament); }
.karta__serce svg, .przycisk--ikona svg { width: 20px; height: 20px; }
[data-ulubione][aria-pressed="true"] svg path { fill: var(--czerwien); stroke: var(--czerwien); }
.karta__tresc { display: flex; flex-direction: column; gap: 2px; padding: 14px 2px 0; flex: 1; }
.karta__szkliwa { display: flex; gap: 7px; margin-bottom: 8px; }
.karta__nazwa { margin: 0; font: 500 16px/1.3 var(--f-ui); color: var(--atrament); }
.karta__nazwa a { text-decoration: none; }
.karta__nazwa a::after { content: ""; position: absolute; inset: 0; z-index: 0; }
.karta__nazwa a:hover { text-decoration: underline; text-decoration-color: var(--kobalt); text-underline-offset: 3px; }
.karta__meta { margin: 0; font-size: 14px; line-height: 1.45; color: var(--tekst-2); }
.karta__cena { margin: 8px 0 0; font: 600 16.5px var(--f-ui); color: var(--atrament); display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: baseline; }
.karta__cena s { font-weight: 400; color: var(--tekst-3); font-size: 15px; }
.karta__cena small { font-weight: 400; font-size: 14px; color: var(--tekst-2); }
.karta__omnibus { margin: 2px 0 0; font-size: 12.5px; color: var(--tekst-2); }
.karta__dodaj { position: relative; z-index: 1; margin-top: auto; min-height: 42px; }
.karta__dodaj.przycisk--czarny { background: var(--bialy); color: var(--atrament); border-color: var(--linia); }
.karta__dodaj.przycisk--czarny:hover { background: var(--atrament); color: var(--bialy); border-color: var(--atrament); }
.karta__cena:has(+ .karta__dodaj), .karta__omnibus:has(+ .karta__dodaj) { margin-bottom: 14px; }
.karta__szkliwa, .karta__serce { z-index: 2; }
.karta__szkliwa button { position: relative; z-index: 2; }
.karta--prosta { background: none; }
.karta--prosta .karta__tresc { padding: 14px 2px 0; }
.karta--prosta .karta__cena { order: -1; margin: 0 0 2px; }
.karta--prosta .karta__szkliwa { order: -2; }
.karta-promo { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 4px; padding: 30px; border-radius: var(--r-m); background: var(--kobalt-ciemny); color: var(--kobalt-jasny); text-align: center; min-height: 300px; }
.karta-promo__tytul { font: 400 27px/1.2 var(--f-szer); color: var(--bialy); margin-bottom: 10px; }
.karta-promo p:not(.karta-promo__tytul) { font-size: 15.5px; max-width: 24ch; margin-bottom: 18px; }
.karta-promo--prezent { background: var(--porcelana); color: var(--tekst-2); }
.karta-promo--prezent .karta-promo__tytul { color: var(--atrament); }

.okruszki { padding-block: 18px 4px; font: 400 13.5px var(--f-ui); color: var(--tekst-2); }
.okruszki ol { display: flex; flex-wrap: wrap; gap: 4px 0; }
.okruszki li:not(:last-child)::after { content: "›"; margin: 0 10px; color: var(--tekst-3); }
.okruszki a { text-decoration: none; color: var(--atrament); }
.okruszki a:hover { text-decoration: underline; }
.listing-gora { text-align: center; padding-block: 18px 8px; }
.listing-gora__h1 { font-size: clamp(34px, 4.2vw, 56px); letter-spacing: -.015em; margin-bottom: 16px; }
.listing-gora__lead { max-width: 68ch; margin: 0 auto; font-size: 16.5px; line-height: 1.65; color: var(--tekst-2); }
.listing-gora--kolekcja { display: grid; justify-items: center; }
.listing-gora__probka { width: 84px; height: 84px; border-radius: 50%; border: 1px solid rgba(24, 25, 29, .14); margin-bottom: 16px; }
.szukaj-strona { display: flex; gap: 10px; max-width: 520px; margin: 18px auto 0; }
.szukaj-strona input { flex: 1; min-width: 0; height: 46px; padding: 0 18px; border: 1px solid var(--obrys-pola); border-radius: 999px; background: var(--bialy); }
.podkategorie ul { display: flex; justify-content: center; flex-wrap: wrap; gap: 14px 22px; padding-block: 20px 4px; }
.podkategorie a { display: grid; justify-items: center; gap: 8px; width: 112px; text-decoration: none; font: 500 14.5px/1.25 var(--f-ui); color: var(--atrament); text-align: center; }
.podkategorie img { width: 92px; height: 92px; border-radius: 50%; object-fit: cover; background: var(--porcelana); }
.podkategorie a:hover span { text-decoration: underline; }
.okazje { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; padding-top: 18px; }
.pigulki { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; padding-block: 22px 4px; margin-top: 20px; border-top: 1px solid var(--linia-2); }
.pigulka { padding: 8px 16px; border: 1px solid var(--linia); border-radius: 999px; font: 500 14.5px var(--f-ui); color: var(--atrament); text-decoration: none; background: transparent; }
.pigulka:hover { border-color: var(--atrament); }
.pigulka.jest-wybrana { background: var(--atrament); border-color: var(--atrament); color: var(--bialy); }
.listing { padding-bottom: 56px; }
.listing__pasek { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block: 18px; margin-top: 18px; border-top: 1px solid var(--linia-2); }
.listing__aktywne { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px 6px 14px; border-radius: 999px; background: var(--porcelana); font: 500 14px var(--f-ui); color: var(--atrament); text-decoration: none; }
.chip:hover { background: var(--porcelana-2); }
.chip svg { width: 15px; height: 15px; }
.listing__wyczysc { font: 500 14px var(--f-ui); margin-left: 6px; }
.listing__ile { margin: 0; font: 400 14.5px var(--f-ui); color: var(--tekst-2); }
.listing__narzedzia { display: flex; align-items: center; gap: 12px; }
.listing__filtry-btn { display: none; }
.sortuj { display: flex; align-items: center; gap: 10px; font: 400 14.5px var(--f-ui); color: var(--tekst-2); white-space: nowrap; }
.sortuj select { height: 40px; padding: 0 38px 0 16px; border: 1px solid var(--obrys-pola); border-radius: 999px; color: var(--atrament); background: var(--bialy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%2318191d' stroke-width='1.8'/%3E%3C/svg%3E") right 14px center/16px no-repeat; appearance: none; }
.listing__w { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 44px; align-items: start; }
.filtry { position: sticky; top: 100px; max-height: calc(100vh - 116px); overflow-y: auto; padding-right: 6px; scrollbar-width: thin; }
.filtry__gora { display: none; }
.filtr { padding-block: 18px; border-bottom: 1px solid var(--linia-2); }
.filtr:first-of-type { padding-top: 0; }
.filtr legend { padding: 0; margin-bottom: 10px; font: 600 15px var(--f-ui); color: var(--atrament); }
.pole-wyboru { display: grid; grid-template-columns: auto auto 1fr auto; align-items: center; gap: 10px; padding: 5px 0; cursor: pointer; font-size: 15px; color: var(--tekst); }
.pole-wyboru:not(.pole-wyboru--szkliwo) { grid-template-columns: auto 1fr auto; }
.pole-wyboru input { appearance: none; width: 19px; height: 19px; margin: 0; border: 1.5px solid var(--obrys-pola); border-radius: 5px; display: grid; place-items: center; cursor: pointer; background: var(--bialy); }
.pole-wyboru:hover input { border-color: var(--atrament); }
.pole-wyboru input:checked { border-color: var(--atrament); background: var(--atrament) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 12.5 4 4 8-9' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat; }
.pole-wyboru small { color: var(--tekst-3); font: 400 13px var(--f-ui); }
.pole-wyboru.jest-puste { opacity: .45; }
.pole-wyboru .kropka-szkliwa { width: 22px; height: 22px; }
.filtr--cena .suwak { position: relative; height: 28px; margin: 6px 4px 8px; }
.suwak::before { content: ""; position: absolute; left: 0; right: 0; top: 13px; height: 2px; background: var(--atrament); border-radius: 2px; }
.suwak input { position: absolute; inset: 0; width: 100%; margin: 0; background: none; pointer-events: none; appearance: none; }
.suwak input::-webkit-slider-thumb { appearance: none; width: 18px; height: 18px; border-radius: 50%; background: var(--atrament); pointer-events: auto; cursor: pointer; border: 3px solid var(--bialy); box-shadow: 0 0 0 1px var(--atrament); }
.suwak input::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: var(--atrament); pointer-events: auto; cursor: pointer; border: 3px solid var(--bialy); }
.filtr__ceny { display: flex; gap: 10px; font-size: 14px; }
.filtr__ceny label { display: flex; align-items: center; gap: 6px; }
.filtr__ceny input { width: 72px; height: 36px; padding: 0 8px; border: 1px solid var(--obrys-pola); border-radius: var(--r-m); background: var(--bialy); }
.filtry__pokaz { margin-top: 18px; }
.js .filtry__pokaz { display: none; }
.wiecej { display: grid; justify-items: center; gap: 8px; margin-top: 36px; }
.wiecej__ile { text-align: center; margin: 0; font: 400 14.5px var(--f-ui); color: var(--tekst-2); }
.pusto { padding: 48px 24px; border-radius: var(--r); background: var(--porcelana); text-align: center; }
.pusto__tytul { font: 400 26px var(--f-szer); color: var(--atrament); }

.b2b-korzysci ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 22px; }
.b2b-korzysci li { display: grid; gap: 4px; padding: 18px 20px; border-radius: var(--r); background: var(--porcelana); color: var(--tekst-2); font-size: 14.5px; }
.b2b-korzysci b { font: 400 22px var(--f-szer); color: var(--kobalt); }
.kroki { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; counter-reset: krok; }
.kroki li { counter-increment: krok; display: grid; gap: 6px; align-content: start; padding-top: 16px; border-top: 1px solid var(--atrament); font-size: 15px; color: var(--tekst-2); }
.kroki li::before { content: counter(krok); font: 400 30px/1 var(--f-szer); color: var(--kobalt); }
.kroki b { font: 600 16.5px var(--f-ui); color: var(--atrament); }
.b2b-forma { background: var(--porcelana); }
.b2b-forma__w { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 48px; }
.b2b-forma__opis p { color: var(--tekst-2); }
.b2b-forma__katalog { padding: 16px 18px; border-radius: var(--r); background: var(--bialy); color: var(--atrament) !important; }
.b2b-forma__pola { display: grid; gap: 16px; padding: 30px; border-radius: var(--r); background: var(--bialy); }
.b2b-forma__pola label { display: grid; gap: 7px; font: 500 14.5px var(--f-ui); color: var(--atrament); }
.b2b-forma__pola input, .b2b-forma__pola select, .b2b-forma__pola textarea { width: 100%; min-height: 48px; padding: 11px 14px; border: 1px solid var(--obrys-pola); border-radius: var(--r-m); background: #fff; font: 400 16px var(--f-tekst); color: var(--atrament); }
.b2b-forma__pola input:focus, .b2b-forma__pola select:focus, .b2b-forma__pola textarea:focus { border-color: var(--atrament); outline: none; box-shadow: 0 0 0 3px rgba(31, 60, 140, .14); }
.b2b-forma__rzad { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.b2b-forma__pola .przycisk { justify-self: start; }
.komunikat { padding: 12px 16px; border-radius: var(--r-m); margin: 0; }
.komunikat--ok { background: #e8f1e6; color: #1f4a24; }
.komunikat--blad { background: #f9e7e4; color: #7c2219; }

.kolekcje { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; padding-block: 28px 56px; }
.kolekcja { display: grid; gap: 16px; padding: 24px; border-radius: var(--r); background: var(--porcelana); }
.kolekcja__link { display: grid; grid-template-columns: 76px 1fr; gap: 16px; align-items: center; text-decoration: none; }
.kolekcja__probka { width: 76px; height: 76px; border-radius: 50%; border: 1px solid rgba(24, 25, 29, .12); }
.kolekcja__nazwa { display: block; font: 400 26px/1.15 var(--f-szer); color: var(--atrament); }
.kolekcja__link:hover .kolekcja__nazwa { text-decoration: underline; }
.kolekcja__szkliwo { display: block; font: 400 14px var(--f-ui); color: var(--tekst-2); }
.kolekcja__opis { display: block; margin-top: 6px; font-size: 14.5px; color: var(--tekst-2); }
.kolekcja__produkty { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.kolekcja__produkty img { border-radius: var(--r-m); background: var(--bialy); aspect-ratio: 1; object-fit: cover; }

.produkt { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: clamp(28px, 4.5vw, 60px); padding-block: 10px 48px; align-items: start; }
.galeria { position: sticky; top: 100px; }
.galeria__glowne { position: relative; border-radius: var(--r); overflow: hidden; background: var(--porcelana); aspect-ratio: 1; }
.galeria__glowne img { width: 100%; height: 100%; object-fit: cover; transition: opacity .2s; }
.galeria__lupa { position: absolute; top: 14px; right: 14px; background: var(--bialy); }
.galeria__miniatury { display: grid; grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); gap: 10px; margin-top: 12px; }
.galeria__mini { position: relative; display: block; width: 100%; padding: 0; border: 1.5px solid transparent; border-radius: var(--r-m); overflow: hidden; background: var(--porcelana); aspect-ratio: 1; }
.galeria__mini img { width: 100%; height: 100%; object-fit: cover; }
.galeria__mini.jest-wybrana { border-color: var(--atrament); }
.galeria__play { position: absolute; inset: 0; margin: auto; width: 34px; height: 34px; color: #fff; filter: drop-shadow(0 1px 3px rgba(0, 0, 0, .5)); }
.kup__seria { margin: 0 0 10px; font: 400 14.5px var(--f-ui); color: var(--tekst-2); }
.kup__nazwa { font-size: clamp(32px, 3.4vw, 46px); letter-spacing: -.015em; line-height: 1.08; margin-bottom: 12px; }
.kup__ocena { display: inline-flex; align-items: center; gap: 8px; font: 500 15px var(--f-ui); text-decoration: none; }
.gwiazdki { display: inline-flex; gap: 1px; color: var(--atrament); }
.gw { width: 17px; height: 17px; }
.gw--pusta { opacity: .25; }
.kup__ceny { margin: 16px 0 18px; }
.kup__cena { margin: 0; font: 500 30px/1.1 var(--f-ui); color: var(--atrament); }
.kup__poprzednia { margin: 6px 0 0; font-size: 14px; color: var(--tekst-2); }
.kup__poprzednia s { font: 500 18px var(--f-ui); margin-right: 8px; }
.kup__raty { margin: 6px 0 0; font-size: 15px; color: var(--tekst-2); }
.kup__szkliwa, .kup__opcje { margin-bottom: 18px; }
.kup__szkliwa legend, .kup__opcje legend { padding: 0; margin-bottom: 12px; font: 600 15px var(--f-ui); color: var(--atrament); }
.kup__szkliwa legend b { font-weight: 400; font-size: 15px; margin-left: 4px; color: var(--tekst-2); }
.kup__probki { display: flex; flex-wrap: wrap; gap: 12px; }
.probka input { position: absolute; opacity: 0; }
.probka__kolo { display: block; width: 46px; height: 46px; border-radius: 50%; border: 1px solid rgba(24, 25, 29, .14); cursor: pointer; transition: box-shadow .15s; }
.probka input:checked + .probka__kolo { box-shadow: 0 0 0 3px var(--bialy), 0 0 0 4.5px var(--atrament); }
.probka input:focus-visible + .probka__kolo { outline: 2px solid var(--kobalt); outline-offset: 6px; }
.kup__opis-szkliwa { margin: 10px 0 0; font-size: 14.5px; color: var(--tekst-2); max-width: 52ch; }
.kup__opcje-lista { display: flex; flex-wrap: wrap; gap: 10px; }
.opcja input { position: absolute; opacity: 0; }
.opcja span { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 8px 18px; border: 1px solid var(--linia); border-radius: 999px; background: var(--bialy); font: 500 14.5px var(--f-ui); color: var(--atrament); cursor: pointer; }
.opcja span:hover { border-color: #b9bbc0; }
.opcja span::before { content: ""; width: 14px; height: 14px; border-radius: 50%; border: 1.5px solid var(--tekst-3); }
.opcja input:checked + span { border-color: var(--atrament); box-shadow: inset 0 0 0 1px var(--atrament); }
.opcja input:checked + span::before { border: 4px solid var(--atrament); }
.opcja input:focus-visible + span { outline: 2px solid var(--kobalt); outline-offset: 2px; }
.kup__akcja { display: flex; gap: 10px; margin-bottom: 10px; }
.ilosc { display: flex; align-items: center; padding-inline: 4px; border: 1px solid var(--linia); border-radius: 999px; background: var(--bialy); }
.ilosc button { display: grid; place-items: center; width: 40px; height: 54px; border: 0; background: none; }
.ilosc svg { width: 18px; height: 18px; }
.ilosc input { width: 36px; height: 54px; border: 0; background: none; text-align: center; font: 600 17px var(--f-ui); appearance: textfield; -moz-appearance: textfield; }
.ilosc input::-webkit-inner-spin-button { appearance: none; margin: 0; }
.kup__szybko { min-height: 50px; }
.kup__wada { margin: 14px 0 0; padding: 12px 16px; border-radius: var(--r-m); background: var(--porcelana); font-size: 14.5px; }
.kup__zaufanie { display: grid; gap: 10px; margin: 20px 0; }
.kup__zaufanie li { display: flex; gap: 10px; align-items: flex-start; font-size: 15px; }
.kup__zaufanie b { font-weight: 600; color: var(--atrament); }
.kup__zaufanie svg { color: var(--kobalt); }
.kup__b2b { display: flex; gap: 12px; align-items: center; padding: 14px 16px; border-radius: var(--r); background: var(--porcelana); font-size: 14.5px; text-decoration: none; }
.kup__b2b:hover { background: var(--porcelana-2); }
.zakladki-produktu { padding-block: 8px 40px; }
.zakladki--produkt { justify-content: space-between; gap: 0; border-bottom: 1px solid var(--linia); margin-bottom: 24px; }
.zakladki--produkt [role="tab"] { flex: 1; padding: 14px 8px; font: 500 16.5px var(--f-ui); border-bottom-width: 2px; }
.zakladki__panel { max-width: 860px; font-size: 16px; }
.zakladki__panel p { color: var(--tekst); }
.spec__lead { font-size: 17px; color: var(--atrament) !important; }
.spec { display: grid; gap: 0; margin: 0; }
.spec div { display: grid; grid-template-columns: 200px 1fr; gap: 16px; padding: 9px 0; border-bottom: 1px solid var(--linia-2); }
.spec dt { font-weight: 500; color: var(--atrament); }
.spec dd { margin: 0; color: var(--tekst-2); }
.zestaw { position: relative; margin-block: 24px 56px; padding: 36px 28px 28px; border: 1px solid var(--linia); border-radius: var(--r); }
.kontener.zestaw { width: calc(100% - 2 * var(--pad)); max-width: calc(var(--szer) - 2 * var(--pad)); }
.zestaw__tytul { position: absolute; top: -20px; left: 22px; margin: 0; padding: 0 12px; background: var(--bialy); font-size: clamp(24px, 2.6vw, 32px); }
.zestaw__w { display: grid; grid-template-columns: 1fr auto 1fr auto 1.15fr; gap: 20px; align-items: center; }
.zestaw__poz { position: relative; display: grid; gap: 6px; justify-items: center; justify-self: center; width: 100%; max-width: 240px; text-align: center; cursor: pointer; font-size: 15px; }
.zestaw__poz img { width: 100%; max-width: 240px; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--r-m); background: var(--porcelana); }
.zestaw__poz input { position: absolute; top: 10px; right: 10px; width: 22px; height: 22px; accent-color: var(--atrament); z-index: 1; }
.zestaw__znak { font: 300 36px var(--f-tekst); color: var(--tekst-3); }
.zestaw__suma { text-align: center; font-size: 16px; }
.zestaw__rabat { font: 600 17px var(--f-ui); color: var(--kobalt); margin-bottom: 4px; }
.zestaw__suma b { font-size: 20px; }
.zestaw__suma .przycisk { margin-top: 14px; }
.opinie { padding-bottom: 40px; }
.opinie__gora { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 24px; margin-bottom: 18px; }
.opinie__gora h2 { font-size: 30px; margin: 0; }
.opinie__gora p { margin: 0; }
.opinie__uwaga { flex-basis: 100%; font-size: 14px; color: var(--tekst-2); }
.opinie__lista { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.opinie__lista li { padding: 20px; border-radius: var(--r); background: var(--porcelana); font-size: 15px; }
.opinie__autor { display: flex; align-items: center; gap: 10px; }
.podobne { padding-bottom: 64px; }
.kup-pasek { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; display: none; align-items: center; gap: 12px; padding: 10px var(--pad) calc(10px + env(safe-area-inset-bottom)); background: var(--bialy); border-top: 1px solid var(--linia); box-shadow: 0 -10px 30px -18px rgba(0, 0, 0, .3); }
.kup-pasek img { width: 48px; height: 48px; border-radius: var(--r-m); object-fit: cover; background: var(--porcelana); }
.kup-pasek__tekst { flex: 1; min-width: 0; display: grid; font-size: 14px; }
.kup-pasek__tekst b { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font: 500 15px var(--f-ui); color: var(--atrament); }

.strona-info { max-width: 820px; padding-block: 18px 64px; }
.strona-info h1 { font-size: clamp(34px, 4vw, 48px); }
.strona-info h2 { font-size: 26px; margin-top: 1.4em; }
.strona-info p { font-size: 17px; line-height: 1.7; color: var(--tekst); }
.strona-info__foto { border-radius: var(--r); aspect-ratio: 16 / 9; object-fit: cover; margin-bottom: 24px; }
.strona-info__uwaga { padding: 14px 18px; border-left: 3px solid var(--kobalt); border-radius: 0 var(--r-m) var(--r-m) 0; background: var(--porcelana); color: var(--tekst) !important; font-size: 15px !important; }
.strona-404 { text-align: center; padding-block: 48px 80px; }
.strona-404__kod { font: 400 120px/1 var(--f-szer); margin: 0; color: #d4d4cf; }
.strona-404__linki { display: flex; justify-content: center; gap: 20px; margin-top: 18px; font: 500 16px var(--f-ui); }

.stopka { background: var(--porcelana); color: var(--tekst); margin-top: 0; border-top: 1px solid var(--linia); }
.stopka__w { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1.2fr; gap: 32px; padding-block: 56px 36px; }
.stopka__marka p { margin-top: 16px; font-size: 15px; max-width: 34ch; color: var(--tekst-2); }
.stopka__nagl { font: 600 15px var(--f-ui); margin-bottom: 12px; color: var(--atrament); }
.stopka__kol a { display: inline-block; padding: 4px 0; font-size: 15px; text-decoration: none; color: var(--tekst); }
.stopka__kol a:hover { color: var(--atrament); text-decoration: underline; text-decoration-color: var(--kobalt); }
.stopka__maly { font-size: 14px; color: var(--tekst-2); margin-bottom: 12px; }
.newsletter { display: grid; gap: 10px; }
.newsletter input { height: 46px; padding: 0 18px; border: 1px solid var(--obrys-pola); border-radius: 999px; background: var(--bialy); color: var(--atrament); }
.newsletter input:focus { border-color: var(--atrament); outline: none; }
.newsletter input::placeholder { color: var(--tekst-3); }
.newsletter__info { margin: 0; font-size: 14px; }
.newsletter__zgoda { margin: 2px 0 0; font-size: 13.5px; line-height: 1.5; color: var(--tekst-2); }
.newsletter__zgoda a { color: var(--tekst-2); }
.stopka__dol { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block: 20px 28px; border-top: 1px solid var(--linia); font-size: 13px; line-height: 1.55; color: var(--tekst-2); }
.stopka__dol p { margin: 0; }
.platnosci { display: flex; gap: 8px; }
.platnosci li { padding: 6px 12px; border: 1px solid var(--linia); border-radius: 999px; background: var(--bialy); color: var(--atrament); font: 500 12.5px/1.2 var(--f-ui); white-space: nowrap; }
.b2b-baner :focus-visible, .karta-promo:not(.karta-promo--prezent) :focus-visible, .mega__b2b-cta :focus-visible, .cta-ramka--duza :focus-visible { outline-color: var(--bialy); }

.koszyk { position: fixed; inset: 0; z-index: 130; background: rgba(20, 22, 28, .3); }
.koszyk[hidden] { display: none; }
.koszyk__panel { position: absolute; inset: 0 0 0 auto; width: min(440px, 100vw); display: flex; flex-direction: column; background: var(--bialy); animation: koszyk .2s ease-out; }
@keyframes koszyk { from { transform: translateX(24px); opacity: .4; } to { transform: none; opacity: 1; } }
.koszyk__gora { display: flex; align-items: center; justify-content: space-between; padding: 14px 16px 14px 22px; border-bottom: 1px solid var(--linia-2); }
.koszyk__gora h2 { margin: 0; font-size: 26px; }
.koszyk__dostawa { padding: 14px 22px; font: 400 14.5px var(--f-ui); border-bottom: 1px solid var(--linia-2); }
.koszyk__pasek { height: 4px; margin-top: 10px; border-radius: 2px; background: var(--porcelana-2); overflow: hidden; }
.koszyk__pasek span { display: block; height: 100%; background: var(--kobalt); border-radius: 2px; transition: width .3s; }
.koszyk__lista { flex: 1; overflow-y: auto; padding: 8px 22px; }
.koszyk__poz { display: grid; grid-template-columns: 72px 1fr auto; gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--linia-2); }
.koszyk__poz img { width: 72px; height: 72px; border-radius: var(--r-m); object-fit: cover; background: var(--porcelana); }
.koszyk__poz b { display: block; font: 500 15.5px/1.3 var(--f-ui); color: var(--atrament); }
.koszyk__poz small { display: block; color: var(--tekst-2); font-size: 13.5px; }
.koszyk__ile { display: inline-flex; align-items: center; gap: 4px; margin-top: 8px; padding-inline: 2px; border: 1px solid var(--linia); border-radius: 999px; }
.koszyk__ile button { width: 30px; height: 30px; border: 0; background: none; font-size: 18px; }
.koszyk__usun { border: 0; background: none; font-size: 13px; color: var(--tekst-2); text-decoration: underline; padding: 0; margin-top: 6px; }
.koszyk__cena { font: 600 15.5px var(--f-ui); color: var(--atrament); white-space: nowrap; }
.koszyk__pusty { padding: 32px 0; text-align: center; color: var(--tekst-2); }
.koszyk__dol { padding: 18px 22px 22px; border-top: 1px solid var(--linia-2); background: var(--porcelana); }
.koszyk__suma { display: flex; justify-content: space-between; font: 600 19px var(--f-ui); color: var(--atrament); margin-bottom: 14px; }
.koszyk__dol .przycisk { min-height: 52px; }
.koszyk__uwaga { margin: 10px 0 0; font-size: 14px; color: var(--tekst-2); text-align: center; }
.lightbox { position: fixed; inset: 0; z-index: 140; display: grid; place-items: center; padding: 24px; background: rgba(255, 255, 255, .97); }
.lightbox[hidden] { display: none; }
.lightbox img { max-height: 90vh; width: auto; border-radius: var(--r); }
.lightbox .ikona { position: absolute; top: 16px; right: 16px; background: var(--porcelana); }
.toast { position: fixed; left: 50%; bottom: 24px; z-index: 150; transform: translateX(-50%); padding: 12px 22px; border-radius: 999px; background: var(--atrament); color: #fff; font: 500 15px var(--f-ui); box-shadow: var(--cien); }
.toast[hidden] { display: none; }

@media (max-width: 1199px) {
  .menu { display: none; }
  .naglowek__burger { display: inline-grid; }
  .naglowek__w { min-height: 68px; }
  .mega, .mega-tlo { display: none !important; }
  .rodzaje__lista { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .szkliwa-pas__w { grid-template-columns: 1fr; }
  .kroki { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 999px) {
  .hero__w, .historia__w, .b2b-forma__w { grid-template-columns: 1fr; }
  .hero__foto { order: -1; }
  .siatka--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .siatka--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .listing__w { grid-template-columns: 1fr; }
  .listing__filtry-btn { display: inline-flex; }
  .filtry { position: fixed; inset: 0 auto 0 0; z-index: 125; width: min(380px, 92vw); max-height: none; padding: 0 20px 24px; background: var(--bialy); box-shadow: var(--cien); transform: translateX(-105%); transition: transform .2s ease-out; }
  .filtry.jest-otwarte { transform: none; }
  .filtry__gora { display: flex; align-items: center; justify-content: space-between; position: sticky; top: 0; padding: 14px 0; margin-bottom: 6px; background: var(--bialy); border-bottom: 1px solid var(--linia-2); z-index: 1; }
  .filtry__tytul { margin: 0; font: 400 26px var(--f-szer); color: var(--atrament); }
  .js .filtry__pokaz { display: flex; position: sticky; bottom: 0; }
  .produkt { grid-template-columns: 1fr; }
  .galeria { position: static; }
  .kup-pasek:not([hidden]) { display: flex; }
  .zestaw__w { grid-template-columns: 1fr auto 1fr; }
  .zestaw__suma { grid-column: 1 / -1; }
  .zestaw__znak:last-of-type { display: none; }
  .opinie__lista { grid-template-columns: 1fr; }
  .kolekcje { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .b2b-korzysci ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stopka__w { grid-template-columns: 1fr 1fr; }
  .b2b-baner { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 699px) {
  body { font-size: 15.5px; }
  .pasek-gora__w { grid-template-columns: 1fr; }
  .pasek-gora__linki, .pasek-gora__pusty { display: none; }
  .pasek-gora { font-size: 12.5px; }
  .pasek-gora__dodatek { display: none; }
  .logo__znak { font-size: 28px; }
  .logo__podpis { font-size: 10px; letter-spacing: .16em; }
  .naglowek__ikony .ikona--ulubione { display: none; }
  .hero h1 { max-width: none; }
  .zaufanie__w { flex-direction: column; align-items: flex-start; gap: 8px; padding-block: 16px; }
  .siatka { gap: 28px 14px; }
  .karta__tresc { padding: 12px 0 0; }
  .karta__nazwa { font-size: 15px; }
  .karta__meta { font-size: 13px; }
  .karta-promo { grid-column: 1 / -1; min-height: 0; }
  .seo__kolumny { grid-template-columns: 1fr; gap: 0; }
  .szkliwa-pas__lista { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .listing__pasek { flex-wrap: wrap; }
  .listing__narzedzia { width: 100%; justify-content: space-between; }
  .sortuj span { display: none; }
  .zakladki--produkt [role="tab"] { font-size: 14px; padding-inline: 4px; }
  .spec div { grid-template-columns: 1fr; gap: 2px; }
  .kup__akcja .przycisk--ikona { width: 50px; min-height: 50px; }
  .kup__akcja .przycisk--duzy { min-height: 50px; padding-inline: 10px; font-size: 15px; white-space: nowrap; }
  .ilosc { padding-inline: 2px; }
  .ilosc button { width: 34px; height: 48px; }
  .ilosc input { height: 48px; width: 30px; }
  .pigulki { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; margin-inline: calc(-1 * var(--pad)); padding-inline: var(--pad); scrollbar-width: none; }
  .pigulka { white-space: nowrap; flex: none; }
  .kroki { grid-template-columns: 1fr; }
  .b2b-forma__rzad { grid-template-columns: 1fr; }
  .kolekcje { grid-template-columns: 1fr; }
  .stopka__w { grid-template-columns: 1fr; }
  .stopka__dol { flex-direction: column; align-items: flex-start; }
  .zestaw { padding: 30px 16px 18px; }
  .zestaw__w { gap: 10px; }
  .zestaw__nazwa { font-size: 13.5px; }
  .podkategorie ul { flex-wrap: nowrap; justify-content: flex-start; gap: 12px; overflow-x: auto; margin-inline: calc(-1 * var(--pad)); padding: 16px var(--pad) 4px; scrollbar-width: none; scroll-snap-type: x proximity; }
  .podkategorie ul::-webkit-scrollbar { display: none; }
  .podkategorie li { flex: none; scroll-snap-align: start; }
  .podkategorie a { width: 94px; font-size: 13.5px; }
  .podkategorie img { width: 72px; height: 72px; }
  .listing-gora { text-align: left; padding-top: 10px; }
  .listing-gora__lead { margin-inline: 0; font-size: 15.5px; line-height: 1.6; }
  .listing-gora--kolekcja { justify-items: start; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

.opis { padding: clamp(40px, 5.4vw, 72px) 0; border-top: 1px solid var(--linia-2); background: var(--bialy); }
.opis__w, .artykul__w { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: clamp(24px, 4vw, 56px); align-items: start; }
.opis__w:not(:has(.opis__spis)) { grid-template-columns: minmax(0, 1fr); }
.opis__spis { position: sticky; top: 104px; padding: 20px 20px 22px; border-radius: var(--r); background: var(--porcelana); }
.opis__spis-tytul { margin: 0 0 12px; font: 600 14.5px var(--f-ui); color: var(--atrament); }
.opis__spis ol { margin: 0; padding-left: 18px; display: grid; gap: 9px; font: 400 14.5px/1.35 var(--f-ui); color: var(--tekst-3); }
.opis__spis a { color: var(--tekst); text-decoration: none; }
.opis__spis a:hover { color: var(--atrament); text-decoration: underline; text-decoration-color: var(--kobalt); }
.opis__tresc { max-width: 740px; font: 400 17px/1.75 var(--f-tekst); color: var(--tekst); }
.opis__tresc h2 { margin: 1.9em 0 .6em; font: 400 clamp(25px, 2.6vw, 32px)/1.2 var(--f-szer); color: var(--atrament); scroll-margin-top: 110px; }
.opis__tresc h2:first-child { margin-top: 0; }
.opis__tresc p { margin: 0 0 1em; }
.opis__tresc ul { margin: 0 0 1.2em; padding-left: 1.2em; }
.opis__tresc > ul { list-style: disc; }
.opis__tresc > ul > li::marker { color: var(--kobalt); }
.opis__tresc li { margin-bottom: .45em; }
.opis__tresc a:not(.przycisk) { color: var(--atrament); text-decoration: underline; text-decoration-color: rgba(31, 60, 140, .45); text-underline-offset: 3px; }
.opis__tresc a:not(.przycisk):hover { color: var(--kobalt); text-decoration-color: var(--kobalt); }
.opis__tabela { overflow-x: auto; margin: 0 0 1.4em; border: 1px solid var(--linia); border-radius: var(--r-m); }
.opis__tabela table { width: 100%; border-collapse: collapse; font: 400 15px/1.5 var(--f-tekst); }
.opis__tabela th, .opis__tabela td { padding: 10px 14px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--linia-2); }
.opis__tabela thead th { background: var(--porcelana); font: 600 14px var(--f-ui); color: var(--atrament); }
.opis__tabela tbody th { font-weight: 500; color: var(--atrament); white-space: nowrap; }
.opis__tabela tr:last-child th, .opis__tabela tr:last-child td { border-bottom: 0; }
.opis__tresc .faq { margin: 0 0 1.6em; max-width: none; }
.opis__linki { margin-top: 2em; padding-top: 1.2em; border-top: 1px solid var(--linia-2); }
.opis__linki-tytul { margin: 0 0 .7em; font: 600 14.5px var(--f-ui); color: var(--atrament); }
.opis__linki ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.opis__linki a { display: inline-block; padding: 7px 15px; border: 1px solid var(--linia); border-radius: 999px; font: 500 14.5px var(--f-ui); color: var(--atrament); text-decoration: none; background: var(--bialy); }
.opis__linki a:hover { border-color: var(--atrament); }
.listing-gora__lead a { color: inherit; text-decoration: underline; text-decoration-color: rgba(31, 60, 140, .45); text-underline-offset: 3px; }
.listing-gora__lead a:hover { color: var(--kobalt); }
.cta-ramka { display: flex; align-items: center; justify-content: space-between; gap: 16px 24px; flex-wrap: wrap; margin: 1.5em 0 1.9em; padding: 20px 22px; border-radius: var(--r); background: var(--porcelana); }
.cta-ramka p { margin: 0; flex: 1 1 320px; font: 500 16.5px/1.5 var(--f-ui); color: var(--atrament); }
.cta-ramka--duza { margin-top: 2.2em; padding: 26px 28px; background: var(--kobalt-ciemny); }
.cta-ramka--duza p { color: var(--bialy); font: 400 21px/1.35 var(--f-szer); }
.cta-ramka--duza .przycisk--czarny { background: var(--bialy); color: var(--atrament); }
.cta-ramka--duza .przycisk--czarny:hover { background: var(--porcelana-2); }
.artykul__produkty { margin: 1.2em 0 1.8em; }
.poradnik-gora { padding-block: 8px 18px; text-align: center; }
.poradnik-gora h1 { margin: 0 0 12px; font: 400 clamp(38px, 5vw, 60px)/1.08 var(--f-szer); letter-spacing: -.015em; }
.poradnik-gora__lead { max-width: 720px; margin: 0 auto 18px; color: var(--tekst-2); font: 400 18px/1.55 var(--f-tekst); }
.poradnik-filtry { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.pigulka--aktywna { background: var(--atrament); border-color: var(--atrament); color: #fff; }
.poradnik-lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; padding-bottom: 48px; }
.poradnik-lista--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); padding-bottom: 0; }
.wpis-karta { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 20px; padding: 16px; border-radius: var(--r); background: var(--bialy); border: 1px solid var(--linia-2); transition: border-color .15s; }
.wpis-karta:hover { border-color: var(--linia); }
.wpis-karta--maly { grid-template-columns: minmax(0, 1fr); }
.wpis-karta__foto img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: var(--r-m); background: var(--porcelana); display: block; }
.wpis-karta__dzial { margin: 0 0 6px; font: 500 13.5px var(--f-ui); color: var(--kobalt); }
.wpis-karta__tytul { margin: 0 0 8px; font: 400 23px/1.25 var(--f-szer); }
.wpis-karta--maly .wpis-karta__tytul { font-size: 19px; }
.wpis-karta__tytul a { color: var(--atrament); text-decoration: none; }
.wpis-karta__tytul a:hover { text-decoration: underline; text-decoration-color: var(--kobalt); text-underline-offset: 4px; }
.wpis-karta__lead { margin: 0; color: var(--tekst-2); font: 400 15px/1.5 var(--f-tekst); }
.artykul__gora { display: grid; grid-template-columns: 260px minmax(0, 1fr); column-gap: clamp(24px, 4vw, 56px); padding-top: 22px; padding-bottom: 32px; }
.artykul__gora > * { grid-column: 2; max-width: 740px; }
.artykul:not(:has(.opis__spis)) .artykul__gora, .artykul__w:not(:has(.opis__spis)) { grid-template-columns: minmax(0, 1fr); }
.artykul:not(:has(.opis__spis)) .artykul__gora > * { grid-column: 1; }
.artykul__gora h1 { margin: 10px 0 16px; font: 400 clamp(34px, 3.9vw, 52px)/1.1 var(--f-szer); letter-spacing: -.015em; }
.artykul__dzial { margin: 0; font: 500 14px var(--f-ui); }
.artykul__dzial a { color: var(--kobalt); text-decoration: none; }
.artykul__dzial a:hover { text-decoration: underline; }
.artykul__meta { margin: 0 0 18px; color: var(--tekst-3); font: 400 14.5px var(--f-ui); }
.artykul__lead { margin: 0; font: 400 20px/1.6 var(--f-tekst); color: var(--tekst); }
.artykul__lead a { color: inherit; }
.artykul__w { padding-bottom: 32px; }
.artykul__spis-cta { margin-top: 16px; width: 100%; text-align: center; }
.z-poradnika { padding-top: 8px; }
@media (min-width: 961px) {
  .poradnik-lista--3:has(> :only-child) { grid-template-columns: minmax(0, 400px); justify-content: center; }
  .poradnik-lista--3:has(> :nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 400px)); justify-content: center; }
}
@media (max-width: 960px) {
  .opis__w, .artykul__w, .artykul__gora { grid-template-columns: minmax(0, 1fr); }
  .artykul__gora > * { grid-column: 1; }
  .opis__spis { position: static; }
  .poradnik-lista, .poradnik-lista--3 { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) {
  .wpis-karta { grid-template-columns: 96px minmax(0, 1fr); gap: 12px; padding: 12px; }
  .wpis-karta--maly { grid-template-columns: minmax(0, 1fr); }
  .opis__tabela table { font-size: 14px; }
  .opis__tabela th, .opis__tabela td { padding: 9px 11px; }
  .opis__tabela tbody th { white-space: normal; min-width: 104px; }
  .opis__tabela table:has(thead th:nth-child(3)) { min-width: 520px; }
  .opis__tabela table:has(thead th:nth-child(4)) { min-width: 620px; }
  .opis__tabela tbody th, .opis__tabela thead th:first-child { position: sticky; left: 0; z-index: 1; box-shadow: 1px 0 0 var(--linia-2); }
  .opis__tabela tbody th { background: var(--bialy); }
  .wpis-karta__tytul { font-size: 19px; }
  .wpis-karta__lead { display: none; }
  .opis__tresc { font-size: 16px; }
  .cta-ramka { padding: 16px; }
}
.opis__spis .przycisk--czarny { color: #fff; text-decoration: none; }
@media (max-width: 699px) {
  .poradnik-gora { text-align: left; }
  .poradnik-gora__lead { margin-inline: 0; font-size: 16px; }
  .poradnik-filtry { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; margin-inline: calc(-1 * var(--pad)); padding: 2px var(--pad); scrollbar-width: none; }
  .poradnik-filtry::-webkit-scrollbar { display: none; }
  .poradnik-filtry .pigulka { flex: none; white-space: nowrap; }
}

.pole--ukryte { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.pole { display: grid; gap: 7px; font: 500 14.5px var(--f-ui); color: var(--atrament); }
.pole input, .pole select, .pole textarea { width: 100%; min-height: 48px; padding: 11px 14px; border: 1px solid var(--obrys-pola); border-radius: var(--r-m); background: var(--bialy); font: 400 16px var(--f-tekst); color: var(--atrament); }
.pole textarea { min-height: 112px; resize: vertical; line-height: 1.5; }
.pole select { appearance: none; padding-right: 40px; background: var(--bialy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%2318191d' stroke-width='1.8'/%3E%3C/svg%3E") right 14px center/16px no-repeat; }
.pole input:hover, .pole select:hover, .pole textarea:hover { border-color: var(--atrament); }
.pole input:focus, .pole select:focus, .pole textarea:focus { border-color: var(--atrament); outline: none; box-shadow: 0 0 0 3px rgba(31, 60, 140, .14); }
.pole input::placeholder { color: var(--tekst-3); }
.pole__blad { margin: -4px 0 0; font-size: 14px; color: var(--czerwien); }
.pola-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.zgoda { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: start; font-size: 14.5px; line-height: 1.5; color: var(--tekst); cursor: pointer; }
.zgoda input { width: 19px; height: 19px; margin: 2px 0 0; accent-color: var(--atrament); }
.zgoda a { color: var(--atrament); text-decoration-color: rgba(31, 60, 140, .45); text-underline-offset: 3px; }

.zamowienie { padding-bottom: clamp(48px, 6vw, 80px); }
.zamowienie h1, .kontakt h1, .zam-ok h1 { font-size: clamp(34px, 4vw, 52px); letter-spacing: -.015em; margin: 8px 0 26px; }
.zamowienie__w { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: clamp(28px, 4vw, 56px); align-items: start; }
.zamowienie__pola { display: grid; gap: 18px; }
.zam-blok { display: grid; gap: 14px; padding: 26px 26px 28px; border: 1px solid var(--linia-2); border-radius: var(--r); background: var(--bialy); }
.zam-blok legend { float: left; width: 100%; margin: 0 0 4px; padding: 0; font: 400 24px/1.2 var(--f-szer); color: var(--atrament); }
.zam-blok legend + * { clear: both; }
.zam-uwaga { margin: 0; font-size: 14px; line-height: 1.5; color: var(--tekst-2); }
.opcja-radio { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; min-height: 56px; padding: 12px 16px; border: 1px solid var(--linia); border-radius: var(--r-m); font-size: 15.5px; color: var(--atrament); cursor: pointer; transition: border-color .15s, box-shadow .15s; }
.opcja-radio:hover { border-color: #c9cac6; }
.opcja-radio input { width: 18px; height: 18px; margin: 0; accent-color: var(--atrament); }
.opcja-radio b { font-weight: 600; white-space: nowrap; }
.opcja-radio:has(input:checked) { border-color: var(--atrament); box-shadow: inset 0 0 0 1px var(--atrament); }
.opcja-radio--jedna { grid-template-columns: auto 1fr; }
[data-adres] { display: grid; gap: 14px; }
.zamowienie__podsumowanie { position: sticky; top: 104px; display: grid; gap: 12px; padding: 26px; border-radius: var(--r); background: var(--porcelana); }
.zamowienie__podsumowanie h2 { margin: 0 0 4px; font-size: 26px; }
.zam-lista { display: grid; gap: 0; margin-bottom: 6px; }
.zam-lista__poz { display: grid; grid-template-columns: 56px 1fr auto; gap: 12px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--linia); font-size: 14.5px; }
.zam-lista__poz img { width: 56px; height: 56px; border-radius: var(--r-m); object-fit: cover; background: var(--bialy); }
.zam-lista__poz b { color: var(--atrament); font-weight: 500; }
.zam-lista__poz small { display: block; margin-top: 2px; font-size: 13px; color: var(--tekst-2); }
.zam-lista__poz > b { font-weight: 600; white-space: nowrap; }
.zam-lista__pusta { padding: 12px 0; color: var(--tekst-2); }
.zam-suma { display: flex; justify-content: space-between; gap: 12px; margin: 0; font-size: 15px; color: var(--tekst); }
.zam-suma b { color: var(--atrament); font-weight: 600; }
.zam-suma--razem { margin-top: 4px; padding-top: 12px; border-top: 1px solid var(--linia); font-size: 19px; }
.zam-suma--razem span { color: var(--atrament); font-weight: 600; }
.zamowienie__podsumowanie .zgoda { margin-top: 6px; }
.zamowienie__podsumowanie .przycisk { min-height: 52px; margin-top: 4px; }
.zamowienie__podsumowanie .przycisk:disabled { opacity: .4; cursor: not-allowed; }

.kontakt { padding-bottom: clamp(48px, 6vw, 80px); }
.kontakt__w { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(28px, 5vw, 72px); align-items: start; }
.kontakt__dane { font-size: 16.5px; line-height: 1.7; color: var(--tekst); }
.kontakt__dane b { color: var(--atrament); font-weight: 600; }
.kontakt__dane a { color: var(--atrament); text-decoration-color: rgba(31, 60, 140, .45); text-underline-offset: 3px; }
.kontakt__formularz { display: grid; gap: 16px; padding: 30px; border-radius: var(--r); background: var(--porcelana); }
.kontakt__formularz .przycisk { justify-self: start; }

.zam-ok { max-width: 820px; padding-block: 24px clamp(48px, 6vw, 80px); }
.zam-ok__nr { font-size: 16px; color: var(--tekst); }
.zam-ok__nr b { color: var(--atrament); }
.zam-ok__tabela { margin-block: 20px; }
.zam-ok__akcje { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }

@media (max-width: 999px) {
  .zamowienie__w, .kontakt__w { grid-template-columns: 1fr; }
  .zamowienie__podsumowanie { position: static; }
}
@media (max-width: 699px) {
  .pola-2 { grid-template-columns: 1fr; }
  .zam-blok { padding: 20px 18px 22px; }
  .kontakt__formularz, .zamowienie__podsumowanie { padding: 22px 18px; }
}
@media (max-width: 699px) { .naglowek .logo__znak { font-size: clamp(18px, 15vw - 34px, 28px); } .naglowek .logo__podpis { font-size: clamp(8px, 6.6vw - 15px, 10px); } }
