/* =========================================================================
   Nubero: arkusz motywu.

   SKALA TYPOGRAFICZNA (jedno źródło prawdy, nie dopisujemy rozmiarów obok):
     --t-1  12px  mikro: etykiety wersalikowe, Omnibus, dopiski
     --t-2  14px  drobne: podpisy, stopka, dane pomocnicze
     --t-3  17px  tekst bazowy strony
     --t-4  21px  wyróżniony akapit, lead, cena w karcie
     --t-5  26px  podtytuł, cena na karcie produktu
     --t-6  32px  nagłówek trzeciego stopnia
     --t-h2 clamp(32-48px)  nagłówek sekcji
     --t-h1 clamp(40-72px)  nagłówek strony i hero
   Poniżej 12px i powyżej 72px nie schodzimy ani nie wychodzimy.

   Kolejność sekcji: tokeny, szkielet, nagłówek, strona główna, WooCommerce,
   stopka, mobile. Zero zaokrągleń, zero cieni, bursztyn tylko na decyzji.
   ========================================================================= */

:root {
	--kosc: #FAF7F2;
	--atrament: #14181F;
	--bursztyn: #D98324;
	--popiel: #6F757C;

	--kosc-ciemniejsza: #F1ECE4;
	--atrament-jasniejszy: #232833;
	--linia: #E2DCD2;
	--linia-ciemna: #2E3540;
	--bursztyn-ciemny: #B76D1C;

	--font-naglowek: 'Barlow Semi Condensed', system-ui, sans-serif;
	--font-tekst: 'Barlow', system-ui, sans-serif;

	--t-1: 12px;
	--t-2: 14px;
	--t-3: 17px;
	--t-4: 21px;
	--t-5: 26px;
	--t-6: 32px;
	--t-h2: clamp(32px, 3.4vw, 48px);
	--t-h1: clamp(40px, 5.2vw, 72px);

	--maks: 1360px;
	--gutter: 24px;
	--s1: 8px;
	--s2: 16px;
	--s3: 24px;
	--s4: 40px;
	--s5: 64px;
	--s6: 96px;
}

/* ------------------------------------------------------------- szkielet */

body {
	background: var(--kosc);
	color: var(--atrament);
	font-family: var(--font-tekst);
	font-size: var(--t-3);
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}

body.menu-otwarte { overflow: hidden; }

.wrap {
	max-width: var(--maks);
	margin: 0 auto;
	padding: 0 var(--gutter);
}

h1, h2, h3, h4 {
	font-family: var(--font-naglowek);
	font-weight: 700;
	line-height: 0.98;
	letter-spacing: 0.01em;
	text-transform: uppercase;
}
h1 { font-size: var(--t-h1); }
h2 { font-size: var(--t-h2); }
h3 { font-size: var(--t-6); }
h4 { font-size: var(--t-2); letter-spacing: .1em; }

img { max-width: 100%; height: auto; }

.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	font-family: var(--font-naglowek);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-size: var(--t-3);
	padding: 16px 28px;
	border: 0;
	cursor: pointer;
	text-decoration: none;
	border-radius: 0;
}
.btn-kup { background: var(--bursztyn); color: var(--atrament); }
.btn-kup:hover { background: var(--bursztyn-ciemny); color: var(--kosc); }
.btn-ciemny { background: var(--atrament); color: var(--kosc); }
.btn-obrys { background: transparent; color: var(--atrament); box-shadow: inset 0 0 0 2px var(--atrament); }

/* -------------------------------------------------------------- nagłówek */

.ukryte { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

.topbar {
	background: var(--atrament);
	color: #9AA2AB;
	font-size: var(--t-1);
	letter-spacing: .1em;
	text-transform: uppercase;
}
.topbar .wrap { display: flex; justify-content: space-between; align-items: center; gap: var(--s3); height: 40px; }
.topbar-obietnice, .topbar-linki { display: flex; align-items: center; gap: var(--s3); }
.topbar-obietnice span { position: relative; }
.topbar a { color: #9AA2AB; text-decoration: none; }
.topbar a:hover { color: var(--kosc); }
.topbar-telefon { color: var(--bursztyn); font-weight: 600; }

.naglowek-sklepu { background: var(--kosc); position: relative; z-index: 20; }
.naglowek-glowny {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--s4);
	height: 96px;
}

.logo { display: flex; align-items: center; gap: 14px; text-decoration: none; color: var(--atrament); }
.logo img { width: 56px; height: 56px; }
.logo span { font-family: var(--font-naglowek); font-weight: 700; font-size: var(--t-6); letter-spacing: .05em; line-height: 1; }
.logo-jasne { color: var(--kosc); }

/* Wyszukiwarka: u konkurencji to najbardziej widoczny element nagłówka,
   bo klient przychodzi z konkretnym modelem w głowie. */
.szukajka { display: flex; align-items: stretch; border: 1px solid var(--atrament); background: var(--kosc); max-width: 620px; width: 100%; }
.szukajka input[type="search"] {
	flex: 1;
	min-width: 0;
	border: 0;
	background: transparent;
	padding: 14px 16px;
	font-family: var(--font-tekst);
	font-size: var(--t-3);
	color: var(--atrament);
	outline: none;
	-webkit-appearance: none;
}
.szukajka input::placeholder { color: #9A938A; }
.szukajka button {
	border: 0;
	background: var(--atrament);
	padding: 0 18px;
	cursor: pointer;
	display: grid;
	place-items: center;
}
.szukajka button .ikona { stroke: var(--kosc); }

/* Pasek kategorii pod nagłówkiem. */
.menu-glowne { border-top: 1px solid var(--linia); border-bottom: 1px solid var(--linia); }
.menu-glowne ul { display: flex; flex-wrap: wrap; gap: 28px; list-style: none; margin: 0; padding: 0; }
.menu-glowne a {
	display: block;
	padding: 15px 0;
	color: var(--atrament);
	text-decoration: none;
	font-family: var(--font-naglowek);
	font-weight: 600;
	text-transform: uppercase;
	font-size: var(--t-3);
	letter-spacing: .08em;
	border-bottom: 2px solid transparent;
}
.menu-glowne a:hover { border-bottom-color: var(--bursztyn); }
.menu-glowne .wyrozniona a { color: var(--bursztyn); }
.menu-glowne .aktualna a { border-bottom-color: var(--bursztyn); }

.akcje { display: flex; align-items: center; gap: var(--s3); }
.akcja {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	position: relative;
	text-decoration: none;
	color: var(--atrament);
	font-family: var(--font-naglowek);
	font-weight: 600;
	text-transform: uppercase;
	font-size: var(--t-2);
	letter-spacing: .06em;
	white-space: nowrap;
}
.ikona { width: 22px; height: 22px; stroke: var(--atrament); fill: none; stroke-width: 1.6; flex: none; }
.ikona-koszyk .licznik {
	position: absolute;
	top: -6px;
	left: 14px;
	background: var(--bursztyn);
	color: var(--atrament);
	font-family: var(--font-naglowek);
	font-weight: 700;
	font-size: var(--t-1);
	line-height: 1;
	padding: 3px 5px;
}

/* Szybkie wejścia pod banerem: najkrótsza droga do produktu. */
.szybkie-wejscia { border-bottom: 1px solid var(--linia); }
.szybkie-wejscia .wrap { display: flex; gap: 10px; overflow-x: auto; padding-top: 14px; padding-bottom: 14px; }
.szybkie-wejscia a {
	flex: 1 0 auto;
	text-align: center;
	padding: 14px 22px;
	background: var(--kosc-ciemniejsza);
	color: var(--atrament);
	text-decoration: none;
	font-family: var(--font-naglowek);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	font-size: var(--t-2);
	white-space: nowrap;
}
.szybkie-wejscia a:hover { background: var(--atrament); color: var(--kosc); }

.hamburger { display: none; background: none; border: 0; padding: 0; cursor: pointer; }
.hamburger i { width: 24px; height: 2px; background: var(--atrament); display: block; }

.menu-mobilne { display: none; }
.menu-mobilne ul { list-style: none; margin: 0; padding: 0 var(--gutter) var(--s3); }
.menu-mobilne a {
	display: block;
	padding: 16px 0;
	border-bottom: 1px solid var(--linia);
	text-decoration: none;
	color: var(--atrament);
	font-family: var(--font-naglowek);
	text-transform: uppercase;
	letter-spacing: .06em;
	font-size: var(--t-4);
}

/* ------------------------------------------------------------------ hero */

.hero { position: relative; min-height: 620px; display: flex; align-items: flex-end; overflow: hidden; }
.hero img.tlo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 65% 55%; }
.hero .cien {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(20,24,31,.92) 0%, rgba(20,24,31,.72) 34%, rgba(20,24,31,0) 68%);
}
.hero .wrap { position: relative; padding-top: var(--s6); padding-bottom: var(--s6); width: 100%; }
.hero .etykieta {
	font-family: var(--font-naglowek);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .24em;
	font-size: var(--t-1);
	color: var(--bursztyn);
}
.hero .kreska { width: 64px; height: 3px; background: var(--bursztyn); margin: 16px 0 20px; }
.hero h1 { color: var(--kosc); max-width: 17ch; }
.hero h1 em { font-style: normal; color: var(--bursztyn); }
.hero p { color: #CBD2DA; font-size: var(--t-4); line-height: 1.5; max-width: 46ch; margin: 24px 0 32px; }
.hero-cta { display: flex; gap: 28px; align-items: center; }
.link-tekstowy {
	color: var(--kosc);
	text-decoration: none;
	font-family: var(--font-naglowek);
	text-transform: uppercase;
	letter-spacing: .08em;
	font-size: var(--t-3);
	border-bottom: 2px solid rgba(250,247,242,.35);
	padding-bottom: 4px;
}

/* ------------------------------------------------------- pasek zaufania */

.zaufanie { padding: var(--s4) 0; }
.zaufanie .wrap { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--s4); }
.zaufanie strong {
	display: block;
	font-family: var(--font-naglowek);
	text-transform: uppercase;
	font-size: var(--t-4);
	letter-spacing: .04em;
	margin-bottom: 6px;
}
.zaufanie small { color: var(--popiel); font-size: var(--t-2); line-height: 1.5; display: block; }

/* --------------------------------------------------------------- sekcje */

.sekcja { padding: var(--s6) 0; }
.sekcja-bez-gory { padding-top: 0; }

.tytul { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: var(--s4); }
.tytul a {
	color: var(--atrament);
	font-family: var(--font-naglowek);
	text-transform: uppercase;
	font-size: var(--t-2);
	letter-spacing: .1em;
	text-decoration: none;
	border-bottom: 2px solid var(--bursztyn);
	padding-bottom: 3px;
}

.kategorie { display: grid; grid-template-columns: 1.6fr 1fr 1fr; gap: 14px; }
.kafel { position: relative; overflow: hidden; min-height: 420px; display: flex; align-items: flex-end; text-decoration: none; }
.kafel img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.kafel .plama { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(20,24,31,0) 45%, rgba(20,24,31,.85) 100%); }
.kafel .opis { position: relative; padding: 26px; color: var(--kosc); }
.kafel h3 { margin-bottom: 6px; }
.kafel span { font-size: var(--t-2); color: #C6CDD5; letter-spacing: .04em; }
.kafel .pusty { position: absolute; inset: 0; background: #DED6C9; }
.kafel .pusty-drugi { background: #CBC3B6; }

/* -------------------------------------------------- karty produktów */

.produkty { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--s4) var(--s3); list-style: none; margin: 0; padding: 0; }
.karta { display: flex; flex-direction: column; text-decoration: none; color: var(--atrament); }
.karta .obraz {
	aspect-ratio: 3/4;
	background: var(--kosc-ciemniejsza);
	position: relative;
	display: grid;
	place-items: center;
	margin-bottom: 16px;
	overflow: hidden;
}
.karta .obraz img { width: 100%; height: 100%; object-fit: cover; }
.karta .obraz > span { font-family: var(--font-naglowek); color: #C3BAAB; font-size: var(--t-1); letter-spacing: .14em; }
/* Plakietka jest wspólna dla karty w siatce i dla karty produktu. */
.plakietka {
	display: inline-block;
	background: var(--bursztyn);
	color: var(--atrament);
	font-family: var(--font-naglowek);
	font-weight: 700;
	text-transform: uppercase;
	font-size: var(--t-1);
	letter-spacing: .1em;
	padding: 5px 12px;
}
.karta .plakietka { position: absolute; top: 14px; left: 0; z-index: 2; }
.karta .marka { font-size: var(--t-1); letter-spacing: .16em; text-transform: uppercase; color: var(--popiel); margin-bottom: 6px; }
.karta .nazwa { font-size: var(--t-3); line-height: 1.4; margin-bottom: 10px; min-height: 48px; }
.karta .ceny { display: flex; align-items: baseline; gap: 12px; }
.karta .cena, .karta .cena .woocommerce-Price-amount {
	font-family: var(--font-naglowek);
	font-weight: 700;
	font-size: var(--t-5);
	letter-spacing: .01em;
	line-height: 1.1;
}
/* WooCommerce podaje najpierw cenę przekreśloną. Odwracamy kolejność,
   bo w karcie ma dominować cena, którą klient faktycznie zapłaci. */
.karta .cena { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; }
.karta .cena ins { order: 1; text-decoration: none; }
.karta .cena del { order: 2; color: var(--popiel); font-size: var(--t-3); font-weight: 400; }
.karta .cena del .woocommerce-Price-amount { font-size: var(--t-3); font-weight: 400; }
.karta .cena .wc-price-history,
.karta .cena .wc-price-history * {
	order: 3;
	flex-basis: 100%;
	font-family: var(--font-tekst);
	font-size: var(--t-1);
	font-weight: 400;
	color: #9A938A;
	letter-spacing: 0;
}
.karta .stara { color: var(--popiel); text-decoration: line-through; font-size: var(--t-3); }
.karta .omnibus { font-size: var(--t-1); color: #9A938A; margin-top: 6px; min-height: 18px; }
.karta .rozmiary { margin-top: 12px; font-size: var(--t-2); color: var(--popiel); letter-spacing: .03em; }
.karta .rozmiary b { font-weight: 600; color: var(--atrament); }

.produkty-przyklad { position: relative; }
.produkty-przyklad::before {
	content: attr(data-info);
	position: absolute;
	top: -30px;
	left: 0;
	font-size: var(--t-1);
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--popiel);
}

/* ------------------------------------------------------ sekcja rozmiaru */

.rozmiar { background: var(--atrament); color: var(--kosc); }
.rozmiar .wrap { display: grid; grid-template-columns: 1.1fr 1fr; gap: var(--s6); align-items: center; }
.rozmiar h2 { margin-bottom: 20px; }
.rozmiar h2 em { font-style: normal; color: var(--bursztyn); }
.rozmiar p { color: #B4BCC5; font-size: var(--t-4); line-height: 1.5; max-width: 48ch; margin-bottom: var(--s3); }
.kroki { display: grid; gap: 18px; }
.kroki div { display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: start; }
.kroki i { font-style: normal; font-family: var(--font-naglowek); font-weight: 700; font-size: var(--t-6); line-height: 1; color: var(--linia-ciemna); }
.kroki span { color: #CBD2DA; font-size: var(--t-3); }
.tabelka { display: grid; }
.tabelka div { display: grid; grid-template-columns: 1fr 1fr 1fr; padding: 16px 0; border-bottom: 1px solid #262D38; font-size: var(--t-3); }
.tabelka .glowka {
	color: var(--bursztyn);
	font-family: var(--font-naglowek);
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: var(--t-1);
	border-bottom-color: #39414D;
}

/* ----------------------------------------------------------- sprzedawca */

.sprzedawca .wrap { display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--s6); align-items: start; }
.sprzedawca h2 { margin-bottom: 20px; }
.sprzedawca p { color: #4A5058; font-size: var(--t-4); line-height: 1.5; max-width: 52ch; }
.dane { display: grid; gap: 14px; }
.dane div { display: flex; justify-content: space-between; gap: var(--s3); font-size: var(--t-3); padding-bottom: 12px; border-bottom: 1px solid var(--linia); }
.dane span { color: var(--popiel); }
.dane b { font-family: var(--font-naglowek); letter-spacing: .03em; }

/* -------------------------------------------------- treść stron i wpisów */

.tresc-strony { padding: var(--s5) var(--gutter) var(--s6); max-width: 900px; margin: 0 auto; }
.tresc-strony .tytul-strony { font-size: var(--t-h2); margin-bottom: var(--s4); }
.tresc-strony h2 { font-size: var(--t-6); margin: var(--s4) 0 var(--s2); }
.tresc-strony h3 { font-size: var(--t-4); margin: var(--s3) 0 var(--s1); }
.tresc-strony p, .tresc-strony li { font-size: var(--t-3); }
.tresc-strony ul, .tresc-strony ol { padding-left: 22px; }
.tresc-strony li { margin-bottom: 6px; }
.tresc-strony a { color: var(--atrament); text-decoration: underline; text-decoration-color: var(--bursztyn); text-underline-offset: 3px; }

/* --------------------------------------------------------- WooCommerce */

.tresc-sklepu { padding-bottom: var(--s6); }
.tresc-sklepu .woocommerce, .tresc-sklepu > .woocommerce-notices-wrapper,
.tresc-sklepu .woocommerce-products-header, .tresc-sklepu .woocommerce-ordering {
	max-width: var(--maks);
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--gutter);
	padding-right: var(--gutter);
}

.woocommerce-products-header { padding-top: var(--s5); }
.woocommerce-products-header__title { font-size: var(--t-h2); }
.term-description { color: var(--popiel); max-width: 62ch; margin-top: var(--s2); font-size: var(--t-3); }

/* Siatka listy: te same karty co na stronie głównej. */
.woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--s4) var(--s3);
	list-style: none;
	max-width: var(--maks);
	margin: var(--s4) auto 0;
	padding-left: var(--gutter);
	padding-right: var(--gutter);
}
.woocommerce ul.products::before, .woocommerce ul.products::after { content: none; }
.woocommerce ul.products li.product { width: auto; margin: 0; float: none; }

.woocommerce-ordering select {
	font-family: var(--font-naglowek);
	text-transform: uppercase;
	letter-spacing: .06em;
	font-size: var(--t-2);
	padding: 10px 14px;
	border: 1px solid var(--linia);
	background: var(--kosc);
	border-radius: 0;
}

/* Karta produktu. */
.woocommerce div.product { max-width: var(--maks); margin: 0 auto; padding: var(--s5) var(--gutter) 0; }
.woocommerce div.product div.images { width: 56%; }
.woocommerce div.product div.summary { width: 40%; }
/* Plakietka promocji wypada przed galerią, więc kotwiczymy ją do całej karty. */
.woocommerce div.product { position: relative; }
.woocommerce div.product .plakietka { position: absolute; top: var(--s5); left: var(--gutter); z-index: 3; }
.woocommerce div.product .product_title { font-size: var(--t-h2); margin-bottom: 12px; }
.woocommerce div.product p.price, .woocommerce div.product span.price {
	font-family: var(--font-naglowek);
	font-weight: 700;
	font-size: var(--t-6);
	color: var(--atrament);
	line-height: 1.2;
}
.woocommerce div.product p.price del { color: var(--popiel); font-size: var(--t-4); font-weight: 400; }
.woocommerce div.product p.price ins { text-decoration: none; }
.woocommerce .wc-price-history, .woocommerce .wc-price-history-price { font-size: var(--t-1); color: var(--popiel); }

.woocommerce div.product form.cart { margin-top: var(--s3); }
.woocommerce div.product form.cart .variations select {
	border: 1px solid var(--linia);
	border-radius: 0;
	padding: 12px;
	background: var(--kosc);
	font-family: var(--font-tekst);
	font-size: var(--t-3);
}
.woocommerce div.product .woocommerce-product-details__short-description { color: #4A5058; margin: var(--s2) 0; font-size: var(--t-3); }
.woocommerce div.product .product_meta { font-size: var(--t-2); color: var(--popiel); }

/* Notka o dopasowaniu: pierwsza rzecz nad wyborem rozmiaru. */
.nubero-dopasowanie {
	display: flex;
	align-items: baseline;
	gap: 12px;
	margin: var(--s3) 0 0;
	padding: 14px 0;
	border-top: 1px solid var(--linia);
	border-bottom: 1px solid var(--linia);
	font-size: var(--t-3);
}
.nubero-dopasowanie span {
	font-family: var(--font-naglowek);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: var(--t-1);
	color: var(--bursztyn);
	white-space: nowrap;
}

/* Kafelki rozmiarów zamiast listy rozwijanej. */
.nubero-lista-ukryta { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.nubero-rozmiary { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.nubero-rozmiar {
	min-width: 58px;
	padding: 12px 10px;
	background: transparent;
	border: 1px solid var(--linia);
	border-radius: 0;
	cursor: pointer;
	font-family: var(--font-naglowek);
	font-weight: 600;
	font-size: var(--t-3);
	color: var(--atrament);
	line-height: 1;
}
.nubero-rozmiar:hover { border-color: var(--atrament); }
.nubero-rozmiar.wybrany { background: var(--atrament); border-color: var(--atrament); color: var(--kosc); }
.nubero-rozmiar.brak {
	color: #B9B2A7;
	border-color: var(--linia);
	cursor: not-allowed;
	text-decoration: line-through;
}

/* Pewniki zakupu: termin, zwrot, faktura. Bez ikonek i bez ozdobników. */
.nubero-pewniki { list-style: none; margin: var(--s3) 0 0; padding: 0; display: grid; gap: 10px; }
.nubero-pewniki li {
	position: relative;
	padding-left: 20px;
	font-size: var(--t-2);
	color: #4A5058;
}
.nubero-pewniki li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 9px;
	width: 10px;
	height: 2px;
	background: var(--bursztyn);
}

/* GPSR: rozwijane, bo to obowiązek informacyjny, a nie argument sprzedażowy. */
.nubero-gpsr { margin-top: var(--s3); border-top: 1px solid var(--linia); padding-top: 14px; }
.nubero-gpsr summary {
	cursor: pointer;
	font-family: var(--font-naglowek);
	text-transform: uppercase;
	letter-spacing: .08em;
	font-size: var(--t-2);
}
.nubero-gpsr div { margin-top: 12px; font-size: var(--t-2); color: var(--popiel); display: grid; gap: 10px; }

/* Tabela rozmiarów pod kartą produktu. */
.nubero-rozmiarowka { padding: var(--s6) 0 0; }
.nubero-rozmiarowka .wrap { max-width: 900px; }
.nubero-rozmiarowka-wstep { color: var(--popiel); margin: var(--s2) 0 var(--s3); max-width: 62ch; }
.nubero-tabela { width: 100%; border-collapse: collapse; }
.nubero-tabela th {
	text-align: left;
	font-family: var(--font-naglowek);
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: var(--t-1);
	color: var(--bursztyn);
	padding: 12px 0;
	border-bottom: 1px solid var(--linia);
}
.nubero-tabela td { padding: 14px 0; border-bottom: 1px solid var(--linia); font-size: var(--t-3); }

/* Przyklejony pasek zakupu na telefonie. */
.nubero-pasek-zakupu { display: none; }

/* Przyciski Woo: bursztyn tylko na zakupie, reszta atramentowa. */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.wc-block-components-button {
	font-family: var(--font-naglowek);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
	font-size: var(--t-3);
	padding: 15px 26px;
	border-radius: 0;
	background: var(--atrament);
	color: var(--kosc);
	line-height: 1.2;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover {
	background: var(--atrament-jasniejszy);
	color: var(--kosc);
}
.woocommerce button.single_add_to_cart_button,
.woocommerce .checkout-button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
	background: var(--bursztyn) !important;
	color: var(--atrament) !important;
	border-radius: 0 !important;
	font-family: var(--font-naglowek);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
}
.woocommerce button.single_add_to_cart_button:hover,
.woocommerce .checkout-button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
	background: var(--bursztyn-ciemny) !important;
	color: var(--kosc) !important;
}

.woocommerce .quantity input.qty {
	border: 1px solid var(--linia);
	border-radius: 0;
	padding: 13px 8px;
	background: var(--kosc);
	font-size: var(--t-3);
}

.woocommerce-tabs ul.tabs { padding-left: 0 !important; }
.woocommerce-tabs ul.tabs::before { border-bottom: 1px solid var(--linia) !important; }
.woocommerce-tabs ul.tabs li {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}
.woocommerce-tabs ul.tabs li a {
	font-family: var(--font-naglowek);
	text-transform: uppercase;
	letter-spacing: .08em;
	font-size: var(--t-3);
	color: var(--popiel) !important;
}
.woocommerce-tabs ul.tabs li.active a { color: var(--atrament) !important; border-bottom: 2px solid var(--bursztyn); }
.woocommerce-tabs ul.tabs li::before, .woocommerce-tabs ul.tabs li::after { content: none !important; }
.woocommerce-tabs .panel h2 { font-size: var(--t-6); margin-bottom: var(--s2); }

.woocommerce-message, .woocommerce-info, .woocommerce-error {
	border-top: 3px solid var(--bursztyn);
	background: var(--kosc-ciemniejsza);
	border-radius: 0;
	font-size: var(--t-3);
}
.woocommerce-message::before, .woocommerce-info::before { color: var(--bursztyn); }

/* Koszyk i checkout w blokach. */
.wc-block-components-title, .wc-block-cart__totals-title, .wp-block-woocommerce-checkout-order-summary-block {
	font-family: var(--font-naglowek);
	text-transform: uppercase;
	letter-spacing: .04em;
}
.wc-block-components-text-input input, .wc-block-components-textarea, .wc-block-components-combobox-control input {
	border-radius: 0 !important;
	border-color: var(--linia) !important;
	font-size: var(--t-3) !important;
}
.wc-block-components-totals-item__value, .wc-block-components-product-price {
	font-family: var(--font-naglowek);
	font-weight: 700;
}

/* Strony konta klienta. */
.woocommerce-account .woocommerce { max-width: var(--maks); margin: 0 auto; padding: var(--s5) var(--gutter) 0; }
.woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; }
.woocommerce-MyAccount-navigation a {
	font-family: var(--font-naglowek);
	text-transform: uppercase;
	letter-spacing: .06em;
	font-size: var(--t-3);
	text-decoration: none;
	display: block;
	padding: 12px 0;
	border-bottom: 1px solid var(--linia);
	color: var(--atrament);
}

/* -------------------------------------------------------------- stopka */

.stopka-sklepu { background: var(--atrament); color: #9AA2AB; padding: var(--s5) 0 var(--s3); font-size: var(--t-2); }
.stopka-grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: var(--s4); }
.stopka-sklepu h4 { color: var(--kosc); margin-bottom: 16px; }
.stopka-sklepu ul { list-style: none; display: grid; gap: 10px; margin: 0; padding: 0; }
.stopka-sklepu a { color: #9AA2AB; text-decoration: none; }
.stopka-sklepu a:hover { color: var(--kosc); }
.stopka-motto { margin-top: 16px; max-width: 32ch; }
.stopka-dol {
	margin-top: var(--s5);
	padding-top: var(--s3);
	border-top: 1px solid #262D38;
	display: flex;
	justify-content: space-between;
	font-size: var(--t-1);
	color: #6E757E;
}
.platnosci { display: flex; gap: 18px; font-family: var(--font-naglowek); letter-spacing: .08em; color: #8A929B; font-size: var(--t-2); }

/* -------------------------------------------------------------- mobile */

@media (max-width: 900px) {
	:root { --gutter: 16px; --s5: 36px; --s6: 52px; --t-4: 19px; }

	.topbar .wrap { height: auto; padding: 8px var(--gutter); gap: 12px; }
	.topbar-obietnice { gap: 12px; overflow: hidden; }
	.topbar-obietnice span:nth-child(n+3) { display: none; }
	.topbar-linki a { display: none; }

	/* Na telefonie logo i ikony w jednym rzędzie, wyszukiwarka pod spodem
	   na całą szerokość, tak jak robi to eobuwie. */
	.naglowek-glowny {
		display: grid;
		grid-template-columns: auto auto;
		justify-content: space-between;
		align-items: center;
		height: auto;
		padding-top: 12px;
		padding-bottom: 12px;
		gap: 12px;
	}
	.szukajka { grid-column: 1 / -1; order: 3; max-width: none; }
	.szukajka input[type="search"] { padding: 12px 14px; font-size: var(--t-2); }
	.logo img { width: 44px; height: 44px; }
	.logo span { font-size: var(--t-5); }
	.akcja span { display: none; }
	.akcje { gap: var(--s2); }
	.menu-glowne { display: none; }
	.szybkie-wejscia .wrap { gap: 8px; }
	.szybkie-wejscia a { flex: 0 0 auto; padding: 12px 16px; }
	.hamburger { display: grid; gap: 5px; }
	.menu-mobilne { display: block; background: var(--kosc); border-top: 1px solid var(--linia); }
	.menu-mobilne[hidden] { display: none; }

	.hero { min-height: 520px; }
	.hero .cien { background: linear-gradient(180deg, rgba(20,24,31,.35) 0%, rgba(20,24,31,.9) 62%); }
	.hero h1 { max-width: none; }
	.hero p { margin: 18px 0 26px; }
	.hero-cta { flex-direction: column; align-items: stretch; gap: 16px; }
	.hero-cta .btn { width: 100%; }
	.link-tekstowy { align-self: flex-start; }

	.zaufanie .wrap { grid-template-columns: 1fr 1fr; gap: var(--s3); }
	.tytul { flex-wrap: wrap; gap: 12px; }
	.kategorie { grid-template-columns: 1fr; }
	.kafel { min-height: 260px; }

	.produkty, .woocommerce ul.products { grid-template-columns: 1fr 1fr; gap: var(--s3) 12px; }
	.karta .nazwa { min-height: 44px; }

	.rozmiar .wrap, .sprzedawca .wrap { grid-template-columns: 1fr; gap: var(--s4); }
	.tresc-strony { padding: var(--s4) var(--gutter) var(--s6); }

	.woocommerce div.product div.images, .woocommerce div.product div.summary { width: 100%; float: none; }

	.nubero-pasek-zakupu {
		display: flex;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 40;
		align-items: center;
		justify-content: space-between;
		gap: var(--s2);
		padding: 10px var(--gutter);
		background: var(--kosc);
		border-top: 1px solid var(--linia);
	}
	.nubero-pasek-zakupu[hidden] { display: none; }
	.nubero-pasek-cena { display: grid; gap: 2px; min-width: 0; }
	.nubero-pasek-cena .nazwa {
		font-size: var(--t-1);
		color: var(--popiel);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.nubero-pasek-cena .cena { font-family: var(--font-naglowek); font-weight: 700; font-size: var(--t-5); line-height: 1.1; }
	.nubero-pasek-cena .cena del { display: none; }
	.nubero-pasek-cena .cena .wc-price-history { display: none; }
	.nubero-pasek-kup { padding: 14px 22px; font-size: var(--t-3); }

	.stopka-grid { grid-template-columns: 1fr 1fr; }
	.stopka-dol { flex-direction: column; gap: 14px; }
	.platnosci { flex-wrap: wrap; gap: 12px; }
}

@media (max-width: 480px) {
	.zaufanie .wrap { grid-template-columns: 1fr; }
}
