/*
Theme Name:   xstore-child
Theme URI:    https://xstore.8theme.com
Description:  XStore is a multi-purpose theme that offers the ultimate WordPress and WooCommerce synergy, providing a comprehensive, all-in-one solution.
Author:       8theme
Author URI:   https://www.8theme.com
Template:     xstore
Version:      5.4
Text Domain:  xstore-child
Tags: e-commerce, two-columns, left-sidebar, right-sidebar, custom-background, custom-colors, custom-header, custom-menu, custom-logo, featured-images, full-width-template, threaded-comments, accessibility-ready, rtl-language-support, footer-widgets, sticky-post, theme-options, translation-ready, ecommerce, woocommerce, shop, elementor, business, corporate, blog, news, light, dark
*/

/* ============================================================
   Upodobnienie do oryginalnej strony tarabuso.eu (Wix)
   ============================================================ */

/* ---------- Nagłówek: niższy, jak na Wix ---------- */
/* pełna szerokość wiersza nagłówka: logo maksymalnie do lewej (jak na Wix, x~20px) */
.header-main .et-row-container.et-container {
	width: 100% !important;
	max-width: 100% !important;
	padding-left: 20px;
	padding-right: 20px;
}
.et_b_header-logo.align-center {
	text-align: left !important;
}
/* górny czarny pasek: ~28px wysokości, tekst 13px jak na Wix */
.header-top .et-wrap-columns,
.header-top .et_promo_text_carousel,
.header-top .swiper-container,
.header-top .swiper-slide {
	height: 28px !important;
	min-height: 28px !important;
}
.header-top {
	padding: 0 !important;
}
.header-promo-text,
.header-promo-text .text-nowrap {
	font-size: 13px !important;
	font-family: "CenturyGothic", sans-serif !important;
	letter-spacing: .13px;
	line-height: 28px;
}

.header-main .et-wrap-columns {
	min-height: 64px;
}
.et_b_header-logo img,
.header-main .logo img {
	max-height: 23px;
	width: auto;
}

/* ---------- Strona główna: slider hero ---------- */
/* pełna szerokość ekranu niezależnie od kontenerów (jak strip na Wix) */
.elementor-widget-slides.et-hero-slides {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}
.e-con.e-parent:has(.et-hero-slides) {
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}
.e-con.e-parent:has(.et-hero-slides) > .e-con-inner {
	max-width: 100%;
	padding: 0;
}
/* przycisk WSZYSTKIE PRODUKTY nisko, jak na Wix */
.et-hero-slides .swiper-slide-inner {
	align-items: flex-end !important;
	padding-bottom: 56px;
}
/* slajd wideo: film wypełnia cały slajd (cover), bez czarnych pasów */
.elementor-repeater-item-etvid01 .swiper-slide-bg {
	position: relative;
	overflow: hidden;
}
.elementor-repeater-item-etvid01 .swiper-slide-bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}

/* jak na Wix: kremowe półprzezroczyste tło, czarna ramka i czarny napis */
.et-hero-slides .elementor-slide-button {
	border: 1px solid #000;
	border-radius: 0;
	font-size: 13px;
	letter-spacing: 2px;
	padding: 13px 34px;
	background: rgba(255, 255, 255, .6);
	color: #000 !important;
}
.et-hero-slides .elementor-slide-button:hover {
	background: rgba(255, 255, 255, .85);
	color: #000 !important;
}

/* ---------- Strona główna: 3 kolumny O MARCE / MINERAŁY / SREBRO ---------- */
/* szerokość bloku jak na Wix (~940px) */
.elementor-element-98ac594 > .e-con-inner {
	max-width: 940px !important;
}
/* ikona ✦ zamiast gwiazdki font-awesome */
.elementor-element-98ac594 .elementor-icon svg,
.et-3cols .elementor-icon svg {
	display: none;
}
.elementor-element-98ac594 .elementor-icon::before,
.et-3cols .elementor-icon::before {
	content: "✦";
	color: #BDA76D;
	font-size: 17px;
	line-height: 1;
}
/* pionowe linie rozdzielające kolumny */
.elementor-element-98ac594 > .e-con-inner > .elementor-widget-icon-box + .elementor-widget-icon-box,
.et-3cols > .e-con-inner > .elementor-widget-icon-box + .elementor-widget-icon-box {
	border-left: 1px solid #d9d9d9;
	padding-left: 32px;
}
.elementor-element-98ac594 > .e-con-inner > .elementor-widget-icon-box,
.et-3cols > .e-con-inner > .elementor-widget-icon-box {
	padding-right: 32px;
}
/* Smartfony + tablety w pionie (≤1024px): bez pionowych linii rozdzielających
   O MARCE / NATURALNE MINERAŁY / SREBRO POZŁACANE. Na telefonie (≤767px, kolumny
   zwinięte w jedną) zerujemy też padding-left, by po usunięciu linii bloki nie
   były przesunięte względem pierwszego. */
@media (max-width: 1024px) {
	.elementor-element-98ac594 > .e-con-inner > .elementor-widget-icon-box + .elementor-widget-icon-box,
	.et-3cols > .e-con-inner > .elementor-widget-icon-box + .elementor-widget-icon-box {
		border-left: 0 !important;
	}
}
@media (max-width: 767px) {
	.elementor-element-98ac594 > .e-con-inner > .elementor-widget-icon-box + .elementor-widget-icon-box,
	.et-3cols > .e-con-inner > .elementor-widget-icon-box + .elementor-widget-icon-box {
		padding-left: 0 !important;
	}
}

/* ---------- Strona główna: newsletter ----------
   Wymiary z pomiaru tarabuso.eu: nagłówek 18px (bold "10% zniżki*"),
   formularz 558px (pole 30px wys., ramka 1px #000, placeholder "e-mail",
   czarny przycisk "Prześlij" 30px), drobny druk 10px; odstępy 12px i 14px. */
.elementor-element-a5f1024,
.et-newsletter {
	text-align: center;
}
.elementor-element-a5f1024 .elementor-widget-text-editor,
.et-newsletter .elementor-widget-text-editor {
	font-size: 18px;
	color: #000;
}
.elementor-element-a5f1024 .wpforms-container,
.et-newsletter .wpforms-container {
	max-width: 558px;
	margin: 12px auto 14px !important;
}
.elementor-element-a5f1024 .wpforms-field-label,
.et-newsletter .wpforms-field-label {
	display: none !important;
}
.elementor-element-a5f1024 .wpforms-form,
.et-newsletter .wpforms-form {
	display: flex;
	align-items: stretch;
	justify-content: center;
	gap: 0;
}
.elementor-element-a5f1024 .wpforms-field-container,
.et-newsletter .wpforms-field-container {
	flex: 1 1 auto;
}
.elementor-element-a5f1024 .wpforms-field,
.et-newsletter .wpforms-field {
	padding: 0 !important;
}
.elementor-element-a5f1024 .wpforms-field input[type="text"],
.elementor-element-a5f1024 .wpforms-field input[type="email"],
.et-newsletter .wpforms-field input[type="text"],
.et-newsletter .wpforms-field input[type="email"] {
	width: 100%;
	border: 1px solid #000;
	border-radius: 0;
	height: 30px !important;
	min-height: 30px !important;
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 15px !important;
	color: #282626 !important;
	background: transparent !important;
	padding: 0 10px !important;
}
.elementor-element-a5f1024 .wpforms-field input::placeholder,
.et-newsletter .wpforms-field input::placeholder {
	color: #282626;
	opacity: .8;
}
.elementor-element-a5f1024 .wpforms-submit-container,
.et-newsletter .wpforms-submit-container {
	padding: 0 !important;
}
.elementor-element-a5f1024 button[type="submit"],
.et-newsletter button[type="submit"] {
	background: #000 !important;
	color: #fff !important;
	border: 1px solid #000 !important;
	border-radius: 0 !important;
	height: 30px !important;
	min-height: 30px !important;
	padding: 0 14px !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 13px !important;
	letter-spacing: 0;
	line-height: 1;
}
/* Smartfony: formularz „Dołącz do newslettera" ma się mieścić na ekranie — wcześniej
   pole e-mail wychodziło poza krawędź. Węższy kontener zależny od szerokości ekranu
   (min z 558px i 90vw) + pozwól polom kurczyć się w flexie (min-width:0). */
@media (max-width: 767px) {
	.elementor-element-a5f1024 .wpforms-container,
	.et-newsletter .wpforms-container {
		max-width: min(558px, 90vw) !important;
		width: 100%;
		box-sizing: border-box;
	}
	.elementor-element-a5f1024 .wpforms-form,
	.et-newsletter .wpforms-form {
		max-width: 100%;
	}
	.elementor-element-a5f1024 .wpforms-field-container,
	.et-newsletter .wpforms-field-container {
		min-width: 0 !important;
		flex-shrink: 1 !important;
	}
	.elementor-element-a5f1024 .wpforms-field input[type="text"],
	.elementor-element-a5f1024 .wpforms-field input[type="email"],
	.et-newsletter .wpforms-field input[type="text"],
	.et-newsletter .wpforms-field input[type="email"] {
		min-width: 0 !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}
}


/* ---------- Strona główna: sekcja ikon (renowacja/pielęgnacja/pakowanie/dostawa) ----------
   Jak na Wix: blok ~760px wycentrowany, bez linii nad sekcją,
   pod sekcją krótsza linia ~560px wycentrowana, brak linii po tekście SEO. */
.elementor-element-19a5d8f > .e-con-inner {
	max-width: 760px !important;
}
.elementor-element-19a5d8f .elementor-widget-image img {
	width: 100%;
	height: auto;
}
.elementor-element-18f4b74,
.elementor-element-c1aafca {
	display: none !important;
}
.elementor-element-3ff8106 .elementor-divider-separator {
	max-width: 560px;
}

/* ---------- Strona główna: tekst SEO ----------
   Z pomiaru tarabuso.eu: blok 898px, Century Gothic 12px / lh 21px, czerń,
   nagłówki śródtekstowe 13px bez pogrubienia (.et-seo-lead), odstępy przez
   puste akapity 21px, punktory disc, bold tylko w ostatnim zdaniu. */
.elementor-element-555ae32c .elementor-widget-text-editor,
.et-seo-text .elementor-widget-text-editor {
	max-width: 898px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	font-size: 12px;
	line-height: 21px;
	color: #000;
}
.elementor-element-555ae32c .elementor-widget-text-editor p,
.et-seo-text .elementor-widget-text-editor p {
	font-size: 12px;
	line-height: 21px;
	margin: 0;
	color: #000;
}
.elementor-element-555ae32c .elementor-widget-text-editor p.et-seo-lead,
.et-seo-text .elementor-widget-text-editor p.et-seo-lead {
	font-size: 13px;
	line-height: 22.75px;
}
.elementor-element-555ae32c .elementor-widget-text-editor ul,
.et-seo-text .elementor-widget-text-editor ul {
	list-style: disc;
	padding-left: 18px;
	margin: 0;
}
.elementor-element-555ae32c .elementor-widget-text-editor ul li,
.et-seo-text .elementor-widget-text-editor ul li {
	font-size: 12px;
	line-height: 21px;
	margin: 0;
}


/* ---------- Strona O marce (jak tarabuso.eu/omarce) ----------
   Pomiar oryginału: kolumna tekstu 407px (x292), nagłówek 14px bold,
   tekst 13px lh ~1.38, zdjęcie 232x347 (ten sam kadr — plik 1:1),
   wyrównanie kolumn do góry, blok ~800px wycentrowany. */
.page-id-229 .elementor-element-ea66be4 > .e-con-inner {
	max-width: 800px !important;
	align-items: flex-start;
	justify-content: space-between;
}
.page-id-229 .elementor-element-f32686b {
	max-width: 407px !important;
	font-size: 13px;
	line-height: 1.38;
	color: #000;
}
.page-id-229 .elementor-element-f32686b p {
	font-size: 13px;
	line-height: 1.38;
	margin: 0 0 15px;
}
.page-id-229 .elementor-element-f32686b p.et-omarce-head {
	font-size: 14px;
	margin-bottom: 22px;
}
.page-id-229 .elementor-element-64d85f7 img {
	width: 232px !important;
	max-width: 232px !important;
	height: 347px !important;
	object-fit: cover;
}
/* Tablety w pionie: tekst i zdjęcie razem (2 kolumny), bez łamania zdjęcia do nowej
   linii. Sekcja to grid Elementora — zwijał się do 1 kolumny już od ≤767px, przez co na
   mniejszych tabletach w pionie (np. 7", ~600–767px) zdjęcie spadało pod tekst. Wymuszamy
   2 kolumny w tym zakresie; telefony (≤599px) zostają w 1 kolumnie. */
@media (min-width: 600px) and (max-width: 767px) {
	.page-id-229 .elementor-element-ea66be4 {
		--e-con-grid-template-columns: 1fr 232px !important;
	}
	.page-id-229 .elementor-element-ea66be4 > .e-con-inner {
		grid-template-columns: 1fr 232px !important;   /* tekst elastyczny, zdjęcie 232px */
		column-gap: 28px !important;
		max-width: 660px !important;
		margin-left: auto !important;
		margin-right: auto !important;
		justify-content: center !important;
		align-items: start !important;
	}
}


/* przycisk "Sklep" jak na Wix: 219x40, biały, ramka 1px #000, strzałka ⟶ */
.page-id-229 .elementor-element-d28a533 a.etheme-text-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 219px;
	height: 40px;
	padding: 0;
	background: #fff !important;
	border: 1px solid #000 !important;
	border-radius: 0 !important;
	color: #000 !important;
	font-family: "CenturyGothic", sans-serif;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 2px;
	text-transform: none;
}
.page-id-229 .elementor-element-d28a533 a.etheme-text-button::after {
	content: "\27F6";
	font-size: 17px;
	line-height: 1;
}
.page-id-229 .elementor-element-d28a533 a.etheme-text-button:hover,
.page-id-229 .elementor-element-d28a533 a.etheme-text-button:focus {
	background: #fff !important;
	color: #000 !important;
}
/* bez animacji motywu (zoom/transition) */
.page-id-229 .elementor-element-d28a533 .etheme-button-wrapper,
.page-id-229 .elementor-element-d28a533 .etheme-button-wrapper *,
.page-id-229 .elementor-element-d28a533 a.etheme-text-button {
	animation: none !important;
	transition: none !important;
	transform: none !important;
}
.page-id-229 .elementor-element-d28a533 .etheme-button-wrapper:hover,
.page-id-229 .elementor-element-d28a533 .etheme-button-wrapper:hover * {
	animation: none !important;
	transform: none !important;
}
/* wyłącz podkreślenie/animację fill-overline motywu */
.page-id-229 .elementor-element-d28a533 a.fill-overline:before,
.page-id-229 .elementor-element-d28a533 a.fill-overline:hover:before {
	display: none !important;
}


/* ---------- Strona Targi (jak tarabuso.eu/targi) ----------
   Pomiar oryginału: blok ~940px, kolumna tekstu 535px (12px/21px),
   wideo 367x653 (pion 9:16), kolumny wyrównane do góry. */
.page-id-216 .elementor-element-aa52827 > .e-con-inner {
	max-width: 940px !important;
	align-items: flex-start;
	justify-content: space-between;
}
.page-id-216 .elementor-element-a3bd9da {
	max-width: 535px !important;
}
.page-id-216 .elementor-element-a3bd9da p {
	font-size: 12px;
	line-height: 21px;
	margin: 0;
	color: #000;
}
.page-id-216 .elementor-element-ac7c258 {
	width: 367px !important;
	max-width: 367px !important;
	flex-shrink: 0;
}
.page-id-216 .elementor-element-6480083 {
	width: 367px !important;
	max-width: 367px !important;
}
.page-id-216 .elementor-element-6480083 video {
	width: 367px;
	height: 653px;
	object-fit: cover;
}
/* Wyśrodkuj film TYLKO na smartfonach i tabletach w pionie (≤1024px). Na desktopie
   układ to tekst + film obok siebie (film po prawej). Poniżej 1025px układamy kolumny
   pionowo (tekst na górze) i centrujemy film w poziomie; max-width:100% zapobiega
   wychodzeniu poza ekran (film skaluje się z zachowaniem proporcji 9:16).
   Desktop / tablet poziomy (>1024px) bez zmian. */
@media (max-width: 1024px) {
	.page-id-216 .elementor-element-aa52827 > .e-con-inner {
		flex-direction: column !important;
		align-items: center !important;
		justify-content: flex-start !important;
	}
	.page-id-216 .elementor-element-a3bd9da {
		max-width: 100% !important;
		width: 100%;
	}
	.page-id-216 .elementor-element-ac7c258 {
		width: 100% !important;
		max-width: 367px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	.page-id-216 .elementor-element-6480083 {
		max-width: 367px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	.page-id-216 .elementor-element-6480083 video {
		width: 100% !important;
		max-width: 367px !important;
		height: auto !important;
		aspect-ratio: 367 / 653;
	}
}


/* ---------- Bez okruszków i tytułów podstron (cały blok page-heading) ---------- */
.page-heading,
.woocommerce-breadcrumb,
.et-breadcrumbs {
	display: none !important;
}


/* ---------- Blog: listing jak na tarabuso.eu/blog ----------
   Wix: 3 kolumny ~301px (blok ~958px), karta = sam obrazek (tytuł wtopiony
   w grafikę), pod nim cienka linia; bez chipów kategorii, tytułów i zajawek.
   (Liczników odsłon/serc Wixa nie odtwarzamy — brak takich danych w WP.) */
.blog .container.content-page {
	max-width: 1010px;
}
.blog .blog-post .post-categories,
.blog .blog-post .grid-post-body {
	display: none !important;
}
.blog .blog-post > div {
	margin-bottom: 64px;
}
.blog .blog-post .wp-picture {
	margin-bottom: 0;
}
/* kadr okładek jak na Wix: 301x341 (nieco wyższe niż kwadrat), cover */
.blog .blog-post .wp-picture img {
	aspect-ratio: 301 / 341;
	object-fit: cover;
	width: 100%;
	height: auto;
}
.blog .blog-post .et-post-views {
	display: flex;
	align-items: center;
	gap: 7px;
	border-top: 1px solid #dcdcdc;
	margin-top: 44px;
	padding-top: 13px;
	font-size: 13px;
	color: #2b2b2b;
	font-family: "CenturyGothic", sans-serif;
}
/* fallback: gdyby licznik był niedostępny, sama linia jak dotąd */
.blog .blog-post > div:not(:has(.et-post-views))::after {
	content: "";
	display: block;
	border-bottom: 1px solid #dcdcdc;
	margin-top: 44px;
}

/* ---------- Sklep: tytuł i opis nad produktami ---------- */
.et-shop-intro {
	text-align: center;
	max-width: 660px;
	margin: 4px auto 34px;
}
.et-shop-intro__title {
	font-size: 22px;
	font-weight: 400;
	letter-spacing: 1px;
	margin: 0 0 14px;
}
.et-shop-intro__description,
.et-shop-intro__description p {
	font-size: 13px;
	line-height: 1.75;
	color: #444;
	margin-bottom: 0;
}
/* Sekcja 6 szybkich linków kategorii (Wszystkie/Naszyjniki/Łańcuszki/Bransoletki/
   Kolczyki/Pierścionki) jak na Wix mobile — siatka 3×2 kafelków z ramką, wersaliki,
   TYLKO na smartfonach (na desktopie/tablecie jest sidebar z kategoriami). */
.et-shop-catnav { display: none; }
@media (max-width: 767px) {
	.et-shop-catnav {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 8px;
		max-width: 660px;
		margin: 6px auto 14px;
	}
	.et-shop-catnav a {
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		min-height: 36px;
		padding: 6px 4px;
		border: 1px solid #dcdcdc;
		color: #000;
		text-decoration: none;
		font-family: "CenturyGothic", sans-serif;
		font-size: 11px;
		letter-spacing: .5px;
		line-height: 1.15;
		text-transform: uppercase;
	}
	.et-shop-catnav a:hover,
	.et-shop-catnav a:focus { border-color: #000; }
}

/* Zdjęcie wyróżniające kategorii/tagu nad tytułem — jak na Wix, TYLKO na smartfonach.
   Kadrowane do proporcji jak w mobilnym Wix (≈280×383, object-fit: cover). */
.et-shop-hero { display: none; }
@media (max-width: 767px) {
	.et-shop-hero {
		display: block;
		margin: 0 auto 16px;
	}
	.et-shop-hero__img {
		display: block;
		width: 100%;
		height: auto;
		aspect-ratio: 280 / 383;
		object-fit: cover;
	}
}

/* ---------- Sklep: pasek narzędzi — zostaje tylko "Sortuj" ---------- */
.woocommerce-shop .filter-content .open-filters-btn,
.tax-product_cat .filter-content .open-filters-btn,
.tax-product_tag .filter-content .open-filters-btn,
.filter-content .view-switcher,
.filter-content .products-per-page {
	display: none !important;
}
.filter-content form.woocommerce-ordering {
	margin-left: auto;
}

/* ---------- Sklep: bez kolorowych badge NOWE/GORĄCE/SALE ---------- */
.products .product .onsale {
	display: none !important;
}

/* ---------- Sklep: karta produktu jak na Wix ---------- */
.products .product .product-details.text-center {
	text-align: left;
}
.products .product .product-details .product-title {
	font-size: 14px;
	letter-spacing: .3px;
}
.products .product .product-details .price {
	font-size: 13px;
	color: #000;
}
.products .product .product-details .button {
	background: transparent;
	border: 1px solid #000;
	color: #000;
	border-radius: 0;
	box-shadow: none;
	/* jak na Wix: pełna szerokość karty, 40px, tekst 14px bez wersalików */
	display: block;
	width: 100%;
	height: 40px;
	line-height: 38px;
	padding: 0;
	text-align: center;
	font-size: 14px;
	font-family: "CenturyGothic", sans-serif;
	text-transform: none;
	letter-spacing: normal;
	margin-top: 10px;
}
.products .product .product-details .button:hover {
	background: #1a1a1a;
	color: #fff;
}
/* na listingu sklepu przycisk pojawia się dopiero po najechaniu
   (na stronie głównej — sekcja bestsellerów — jest widoczny od razu, jak na Wix) */
@media (hover: hover) and (pointer: fine) {
	.woocommerce-shop .products .product .product-details .button,
	.tax-product_cat .products .product .product-details .button,
	.tax-product_tag .products .product .product-details .button {
		opacity: 0;
		transition: opacity .2s ease;
	}
	.woocommerce-shop .products .product:hover .product-details .button,
	.tax-product_cat .products .product:hover .product-details .button,
	.tax-product_tag .products .product:hover .product-details .button {
		opacity: 1;
	}
}

/* ---------- Strona główna: sekcja NAJCZĘŚCIEJ KUPOWANE ----------
   Rezerwujemy stałą wysokość 2 linii na tytuł produktu, żeby cena
   i przycisk "Dodaj do koszyka" nie pływały, gdy tytuł ma 1 lub 2 linijki.
   (line-height 1.5 * 14px = 21px na linię → 42px na dwie linie) */
.home .products .product .product-details .product-title {
	line-height: 1.5;
	min-height: 3em; /* 2 linie */
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}


/* ---------- Produkt wyprzedany: nieaktywny przycisk "Artykuł niedostępny"
   (styl wg Wix: szare tło, biały tekst, ramka 1px czarna) ---------- */
.products .product.outofstock .product-details .button,
.et-unavailable,
button.et-unavailable[disabled] {
	background: #808080 !important;
	color: #fff !important;
	border: 1px solid #000 !important;
	pointer-events: none;
	cursor: default;
}

/* ---------- Sklep: sidebar (KATEGORIE + filtry) ---------- */
.sidebar h4.wp-block-heading,
.sidebar .widget-title {
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 2px;
	text-transform: uppercase;
}
.et-kategorie-list {
	list-style: none;
	padding: 0;
	margin: 0 0 10px;
}
.et-kategorie-list li {
	margin: 0 0 12px;
}
.et-kategorie-list li a {
	font-size: 12px;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #000;
}
.et-kategorie-list li a:hover {
	opacity: .6;
}
/* pokaż pełną listę kamieni (XStore domyślnie ukrywa pozycje powyżej 10) */
.sidebar .sidebar-widget ul:not(.children):not(.sub-menu) > li {
	display: list-item !important;
}
.sidebar .sidebar-widget ul {
	list-style: none;
	padding-left: 0;
}
.sidebar .woocommerce-widget-layered-nav-list li {
	margin-bottom: 8px;
}
/* wszystkie widgety sidebara sklepu: typografia jak w widgecie "Kategorie" */
.sidebar .sidebar-widget,
.sidebar .sidebar-widget ul li,
.sidebar .sidebar-widget ul li a,
.sidebar .woocommerce-widget-layered-nav-list li a,
.sidebar .woocommerce-widget-layered-nav-list li .count,
.sidebar .price_slider_amount,
.sidebar .price_slider_amount .button,
.sidebar .sidebar-widget form label,
.sidebar .sidebar-widget input {
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 12px !important;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #000;
}
.sidebar .sidebar-widget ul li a:hover {
	opacity: .6;
}
.sidebar .et_widget-show-more {
	display: none !important;
}

/* ---------- Stopka: sekcja linków jak na Wix ----------
   Oryginał: blok ~560px wycentrowany, 2 wiersze po 4 linki w jednej linii,
   Century Gothic 14px, czerń, pozioma linia 1px na całą szerokość bloku. */
.et-footer-links {
	max-width: 560px;
	margin: 0 auto;
	font-family: "CenturyGothic", sans-serif;
}
.et-footer-links__row {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 24px;
	white-space: nowrap;
	padding: 0 0 16px;
	border-bottom: 1px solid #000;
}
.et-footer-links__row--second {
	padding: 16px 0 0;
	border-bottom: none;
}
.et-footer-links__row a {
	font-size: 14px;
	line-height: 1.88;
	color: #000;
	text-decoration: none;
}
.et-footer-links__row a:hover {
	opacity: .6;
}
@media (max-width: 640px) {
	.et-footer-links__row {
		flex-wrap: wrap;
		justify-content: center;
		white-space: normal;
	}
}

/* ============================================================
   Strona produktu jak na tarabuso.eu (Wix) — pomiary CDP z
   /product-page/naszyjnik-z-nocą-kairu-i-zawieszką-krzyżyk
   ============================================================ */

/* tytuł: 16px/400 (Wix), zamiast wielkiego H1 motywu */
.single-product h1.product_title {
	font-family: "CenturyGothic", sans-serif;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.2;
	color: #000 !important;
	letter-spacing: 0;
	margin-bottom: 8px;
}

/* szerokość treści strony produktu jak na Wix (~890px, kolumny 56/44) —
   tylko wrappery szablonów single product, żeby nie zwężać stopki */
.elementor-2094 .elementor-section.elementor-section-boxed > .elementor-container,
.elementor-2091 .elementor-section.elementor-section-boxed > .elementor-container,
.elementor-1019 .elementor-section.elementor-section-boxed > .elementor-container,
.elementor-3644 .elementor-section.elementor-section-boxed > .elementor-container,
.elementor-2094 .e-con-boxed > .e-con-inner,
.elementor-2091 .e-con-boxed > .e-con-inner,
.elementor-1019 .e-con-boxed > .e-con-inner,
.elementor-3644 .e-con-boxed > .e-con-inner {
	max-width: 890px;
}
.single-product .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-woocommerce-product-etheme_product_images) {
	width: 56%;
}
.single-product .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-woocommerce-product-etheme_title) {
	width: 44%;
	padding-left: 20px;
}

/* cena: 14px bold, czerń (Wix); dotyczy też ceny wariantu po wyborze opcji */
.single-product .elementor-widget-woocommerce-product-etheme_price .price,
.single-product .elementor-widget-woocommerce-product-etheme_price .price .amount,
.single-product .elementor-widget-woocommerce-product-etheme_price .price bdi,
.single-product .woocommerce-variation-price .price,
.single-product .woocommerce-variation-price .price bdi {
	font-family: "CenturyGothic", sans-serif;
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #000 !important;
}

/* galeria: pionowy slider miniatur (slick) nie przycinał taśmy — przy >4
   zdjęciach miniatury wychodziły poza galerię i nachodziły na notkę o marce
   (np. komplety); okno slidera ma liczoną wysokość 4 kafli, strzałki
   przewijają pozostałe */
.single-product .vertical-thumbnails-wrapper .slick-list {
	overflow: hidden;
}

/* wszystkie ceny na stronie produktu zawsze pogrubione (cena główna,
   karty MOGĄ CI SIĘ SPODOBAĆ / NAJCZĘŚCIEJ KUPOWANE, cena wariantu) */
.single-product .price,
.single-product .price .amount,
.single-product .price bdi {
	font-weight: 700 !important;
}

/* krótki opis (nadmiarowy względem Wix — zostaje): typografia jak treść Wix */
.single-product .woocommerce-product-details__short-description,
.single-product .woocommerce-product-details__short-description p {
	font-size: 12px;
	line-height: 18px;
	color: #000;
}

/* warianty: etykieta nad selectem, select na całą szerokość kolumny
   (Wix: 355x39, ramka 1px rgba(0,0,0,.6), tekst 12px #444) */
.single-product table.variations,
.single-product table.variations tbody,
.single-product table.variations tr,
.single-product table.variations th.label,
.single-product table.variations td.value {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	text-align: left;
}
.single-product table.variations tr {
	margin: 0 0 15px;
}
.single-product table.variations th.label label {
	display: block;
	font-family: "CenturyGothic", sans-serif;
	font-size: 12px;
	font-weight: 400;
	color: #000;
	margin: 0 0 8px;
}
/* Wix: "Długość naszyjnika *" — wielka litera i gwiazdka wymagalności */
.single-product table.variations th.label label::first-letter {
	text-transform: uppercase;
}
.single-product table.variations th.label label::after {
	content: " *";
}
.single-product table.variations td.value select {
	display: block;
	width: 100%;
	max-width: 100%;
	height: 39px;
	border: 1px solid rgba(0, 0, 0, .6);
	border-radius: 0;
	background-color: #fff;
	font-family: "CenturyGothic", sans-serif;
	font-size: 12px;
	color: #444;
	padding: 0 32px 0 12px;
}
.single-product table.variations .reset_variations {
	font-size: 11px;
	color: #444;
}

/* bez zdublowanej ceny wariantu i tekstu "2 w magazynie" nad przyciskami
   (Wix ich nie pokazuje); przycisk "Artykuł niedostępny" (et-unavailable)
   dla wyprzedanych wariantów pozostaje widoczny */
.single-product form.cart .woocommerce-variation-price,
.single-product form.cart p.stock.in-stock {
	display: none !important;
}

/* przycisk "Dodaj do koszyka": biały z czarną ramką (Wix 309x38, tekst 12px) */
.single-product form.cart .single_add_to_cart_button {
	background: transparent !important;
	color: #000 !important;
	border: 1px solid #000 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	height: 38px;
	line-height: 36px;
	padding: 0 24px;
	font-family: "CenturyGothic", sans-serif;
	font-size: 12px !important;
	font-weight: 400;
	letter-spacing: .5px;
	text-transform: uppercase;
	flex-grow: 1;
}
.single-product form.cart .single_add_to_cart_button:hover {
	background: #1a1a1a !important;
	color: #fff !important;
}
/* bez ikony koszyka w przycisku (Wix: sam napis) */
.single-product form.cart .single_add_to_cart_button svg,
.single-product form.cart .single_add_to_cart_button i {
	display: none !important;
}

/* serduszko wishlist jak na Wix: kwadrat 38x38 z ramką 1px na prawo od
   "DODAJ DO KOSZYKA" (element przenoszony JS-em z widgetu etheme_wishlist);
   wiersz przycisków jako flex, żeby kwadrat stanął obok, a KUP TERAZ
   (flex 0 0 100%) złamał się do nowej linii */
.single-product form.cart .woocommerce-variation-add-to-cart,
.single-product form.cart:not(.variations_form) {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.single-product form.cart .tara-wishlist-square {
	flex: 0 0 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 38px !important;
	min-width: 38px !important;
	max-width: 38px;
	height: 38px;
	padding: 0 !important;
	margin-left: 8px;
	border: 1px solid #000 !important;
	border-radius: 0;
	background: #fff !important;
	position: relative;
	text-decoration: none;
}
/* widget źródłowy schowany od razu w CSS (JS przenosi z niego samo serce;
   bez tego przed startem JS na moment widać link z napisem) */
.single-product .elementor-widget-woocommerce-product-etheme_wishlist {
	display: none !important;
}
.single-product form.cart .tara-wishlist-square .et-icon {
	font-size: 17px;
	color: #000;
	line-height: 1;
}
.single-product form.cart .tara-wishlist-square:hover {
	background: #f5f5f5;
}
/* napis NIGDY nie renderuje się inline obok serca (style .elementor-button
   drukowane w body po child CSS — stąd !important); widoczny wyłącznie
   jako dymek na hover (treść span aktualizuje motyw:
   "Dodaj do listy zakupowej" / "Usuń z listy zakupowej") */
.single-product form.cart .tara-wishlist-square .button-text {
	position: absolute !important;
	bottom: calc(100% + 9px);
	left: 50%;
	transform: translateX(-50%);
	background: #444 !important;
	color: #fff !important;
	font-family: "CenturyGothic", sans-serif;
	font-size: 11px !important;
	line-height: 1;
	letter-spacing: .3px;
	padding: 6px 10px;
	white-space: nowrap;
	opacity: 0 !important;
	visibility: hidden;
	transition: opacity .15s ease;
	pointer-events: none;
	z-index: 20;
}
.single-product form.cart .tara-wishlist-square .button-text::after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -4px;
	border: 4px solid transparent;
	border-top-color: #444;
}
.single-product form.cart .tara-wishlist-square:hover .button-text {
	opacity: 1 !important;
	visibility: visible;
}

/* czarny "KUP TERAZ" pod spodem, na całą szerokość (Wix 355x41) */
.single-product form.cart .tara-buy-now {
	flex: 0 0 100%;
	display: block;
	width: 100%;
	height: 41px;
	margin-top: 10px;
	background: #000 !important;
	color: #fff !important;
	border: 1px solid #000 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	font-family: "CenturyGothic", sans-serif;
	font-size: 12px !important;
	font-weight: 400;
	letter-spacing: .5px;
	text-transform: uppercase;
}
.single-product form.cart .tara-buy-now:hover {
	background: #333 !important;
}
/* (celowo bez wygaszania przy niewybranym wariancie — na Wix przycisk
   od początku jest czarny; klik bez opcji pokaże standardowy komunikat Woo) */

/* ---- TYLKO SMARTFONY: układ zakupu w wąskiej kolumnie ----
   Poniżej 768px:
   - usuwamy wybór ilości sztuk;
   - kolumna ze zdjęciem węższa o 10% (56%→46%), kolumna z tekstem szersza (44%→54%);
   - „DODAJ DO KOSZYKA" (kurczy się, flex:1 1 0) + serduszko OD RAZU po prawej (margin 0),
     razem wypełniają 100% szerokości kolumny — tyle samo co „KUP TERAZ" pod spodem. */
@media (max-width: 767px) {
	.single-product .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-woocommerce-product-etheme_product_images) {
		width: 46% !important;
	}
	.single-product .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-woocommerce-product-etheme_title) {
		width: 54% !important;
		padding-left: 10px !important;
	}
	.single-product form.cart .quantity {
		display: none !important;
	}
	.single-product form.cart:not(.variations_form),
	.single-product form.cart .woocommerce-variation-add-to-cart {
		column-gap: 3px !important;   /* 3px odstępu między przyciskiem a serduszkiem */
	}
	.single-product form.cart .single_add_to_cart_button {
		flex: 1 1 0 !important;   /* wypełnia miejsce obok serduszka */
		min-width: 0 !important;
		margin: 0 !important;
		padding-left: 8px !important;
		padding-right: 8px !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.single-product form.cart .tara-wishlist-square {
		margin: 0 !important;   /* od razu po prawej, bez odstępu → suma = szerokość KUP TERAZ */
	}
}

/* wyprzedany wariant: przycisk "Artykuł niedostępny" ZASTĘPUJE "KUP TERAZ"
   — blok dostępności przeniesiony flexem pod wiersz przycisków, KUP TERAZ
   ukryty (Woo znakuje stan klasą wc-variation-is-unavailable) */
.single-product form.cart .single_variation_wrap {
	display: flex;
	flex-direction: column;
}
.single-product form.cart .single_variation_wrap .woocommerce-variation {
	order: 2;
}
.single-product form.cart:has(.wc-variation-is-unavailable) .tara-buy-now {
	display: none;
}
.single-product form.cart .woocommerce-variation-availability .et-unavailable {
	display: block;
	width: 100%;
	height: 41px;
	margin-top: 10px;
	padding: 0;
	border-radius: 0;
	font-family: "CenturyGothic", sans-serif;
	font-size: 12px !important;
	font-weight: 400;
	letter-spacing: .5px;
	text-transform: uppercase;
}

/* pasek zakładek produktu: po filtrze zostaje tylko "Opinie" — stylizacja
   na zwinięty akordeon (nagłówek 12px bold z +/− po prawej, panel widoczny
   dopiero po kliknięciu; klasę tara-open przełącza JS) */
.single-product .woocommerce-tabs .wc-tabs {
	display: block;
	margin: 0;
	text-align: left;
	border: 0;
}
.single-product .woocommerce-tabs .wc-tabs .et-woocommerce-tab {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin: 0;
	padding: 16px 0;
	cursor: pointer;
	/* !important: motyw koloruje spód aktywnej zakładki na różowo */
	border-bottom: 1px solid #cfcfcf !important;
	box-shadow: none !important;
}
/* różowy pasek aktywnej zakładki motywu to ::before na .et-woocommerce-tab */
.single-product .woocommerce-tabs .wc-tabs .et-woocommerce-tab::before {
	display: none !important;
}
.single-product .woocommerce-tabs .wc-tabs .et-woocommerce-tab::after {
	content: "+";
	font-family: "CenturyGothic", sans-serif;
	font-size: 17px;
	font-weight: 400;
	line-height: 1;
	color: #000;
}
.single-product .woocommerce-tabs.tara-open .wc-tabs .et-woocommerce-tab::after {
	content: "−";
}
.single-product .woocommerce-tabs .wc-tabs .et-woocommerce-tab a {
	font-family: "CenturyGothic", sans-serif;
	font-size: 12px !important;
	font-weight: 700;
	color: #000 !important;
	text-transform: none;
	letter-spacing: 0;
	padding: 0 !important;
	margin: 0;
	border: 0 !important;
}
/* bez podkreślenia aktywnej zakładki motywu (type-underline) */
.single-product .woocommerce-tabs .wc-tabs .et-woocommerce-tab a::before,
.single-product .woocommerce-tabs .wc-tabs .et-woocommerce-tab a::after {
	display: none !important;
}
.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
	display: none !important;
}
.single-product .woocommerce-tabs.tara-open .woocommerce-Tabs-panel {
	display: block !important;
	padding-top: 12px;
}
/* typografia panelu recenzji jak w akordeonach (Regulacja itd.): 12px/18px */
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews p,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews label,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews span,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews a,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews .comment-text,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews .woocommerce-noreviews,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews .comment-reply-title,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews h2,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews h3,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews input,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews textarea,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews button {
	font-family: "CenturyGothic", sans-serif;
	font-size: 12px !important;
	line-height: 18px;
	color: #000;
}
/* gwiazdki oceny: tylko ikony — tekst "1 z 5 gwiazdek" ukryty (font-size 0;
   ikonę rysuje ::before fontem xstore-icons, przywracamy jej rozmiar) */
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews .stars a {
	font-size: 0 !important;
}
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews .stars a::before {
	font-size: 14px !important;
}
/* przycisk "Wyślij" jak "Dodaj do koszyka": biały z czarną ramką */
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews input.submit,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews #submit {
	background: #fff !important;
	color: #000 !important;
	border: 1px solid #000 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	height: 38px;
	padding: 0 24px;
	font-family: "CenturyGothic", sans-serif;
	font-size: 12px !important;
	letter-spacing: .5px;
	text-transform: uppercase;
}
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews input.submit:hover,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews #submit:hover {
	background: #1a1a1a !important;
	color: #fff !important;
}

/* akordeony w prawej kolumnie (Wix: nagłówki 12px bold, treść 12px/18px,
   linie 1px między pozycjami, +/− po prawej) */
.tara-product-info {
	font-family: "CenturyGothic", sans-serif;
	margin-top: 34px;
}
.tara-product-info details + details {
	border-top: 1px solid #cfcfcf;
}
.tara-product-info summary {
	list-style: none;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 12px;
	font-weight: 700;
	color: #000;
	padding: 16px 0;
}
.tara-product-info summary::-webkit-details-marker {
	display: none;
}
.tara-product-info summary::after {
	content: "+";
	font-size: 17px;
	font-weight: 400;
	line-height: 1;
}
.tara-product-info details[open] > summary::after {
	content: "−";
}
.tara-product-info__content {
	padding: 2px 0 18px;
}
.tara-product-info__content p {
	font-size: 12px;
	line-height: 18px;
	color: #000;
	margin: 0 0 18px;
}
.tara-product-info__content p:last-child {
	margin-bottom: 0;
}
.tara-product-info__content ul {
	list-style: none;
	padding: 0;
	margin: 0 0 18px;
}
.tara-product-info__content ul li p {
	margin: 0;
}
/* linki w treści akordeonów (np. kategorie/tagi) — czarne jak reszta treści */
.tara-product-info__content a {
	color: #000;
}
.tara-product-info__content a:hover {
	opacity: .6;
}

/* bez SKU na stronie produktu (sekcja Share usunięta z szablonów) */
.single-product .product_meta .sku_wrapper {
	display: none !important;
}

/* ---------- Nagłówek: dropdowny listy życzeń i koszyka ----------
   przyciski "Dodaj wszystko do koszyka" i "Zamówienie" (motyw: różowe
   rgb(164,0,79)) na czarno */
.et_b_header-wishlist .button.btn-checkout,
.et_b_header-cart .button.btn-checkout {
	background: #000 !important;
	border-color: #000 !important;
	color: #fff !important;
}
.et_b_header-wishlist .button.btn-checkout:hover,
.et_b_header-cart .button.btn-checkout:hover {
	background: #333 !important;
	border-color: #333 !important;
	color: #fff !important;
}
/* bez linku "Shopping cart (x)" (nieprzetłumaczony napis w stopce dropdownu
   koszyka; do kasy prowadzi przycisk "Zamówienie") */
.et_b_header-cart .cart-popup-footer .btn-view-cart {
	display: none !important;
}

/* ---------- Komunikaty WooCommerce (np. "dodano do koszyka"):
   ciemnoszare tło, biały tekst ---------- */
.woocommerce-message {
	background: #444 !important;
	border-color: #444 !important;
	color: #fff !important;
}
.woocommerce-message::before,
.woocommerce-message .et-icon {
	color: #fff !important;
}
.woocommerce-message a,
.woocommerce-message a.button,
.woocommerce-message .button {
	color: #fff !important;
}

/* notka o marce pod zdjęciem (Wix: 10px/15px, szer. 500px) */
.tara-brand-note,
.tara-brand-note p {
	font-family: "CenturyGothic", sans-serif;
	font-size: 10px !important;
	line-height: 15px;
	color: #000;
	margin: 0;
}
.tara-brand-note {
	max-width: 500px;
	margin-top: 12px;
}

/* akapity z gwiazdką pod kolumnami (Wix: 11px, ls .55px, blok ~917px) */
.tara-disclaimer,
.tara-disclaimer p {
	font-family: "CenturyGothic", sans-serif;
	font-size: 11px !important;
	letter-spacing: .55px;
	line-height: 1.5;
	color: #000;
}
.tara-disclaimer p {
	margin: 0 0 16px;
}
.tara-disclaimer p:last-child {
	margin-bottom: 0;
}
.tara-disclaimer a {
	color: #000;
	text-decoration: underline;
}

/* sekcja USP (SZYBKA DOSTAWA / BEZPŁATNA DOSTAWA / BEZPIECZNE PŁATNOŚCI)
   1:1 wg pomiaru CDP tarabuso.eu: nagłówki 14px/400 (bez bold) lh 19.3
   wycentrowane; treść 10px ls .5px lh 18.8, blok ~200px; odstęp nagłówek→
   tekst 33px; pionowe linie 1px #424242 od 37px nad nagłówkami do dołu
   najwyższej kolumny (kolumny flex wyrównują wysokość jak na Wix) */
.tara-usp > .e-con-inner > .e-con {
	padding: 37px 20px 0;
	gap: 0;
}
.tara-usp > .e-con-inner > .e-con + .e-con {
	border-left: 1px solid #424242;
}
/* wewnętrzne kontenery (nagłówek / tekst) bez własnych odstępów;
   widget nagłówka ma w ustawieniach _margin 30px — zerujemy */
.tara-usp > .e-con-inner > .e-con > .e-con {
	padding: 0;
	gap: 0;
}
.tara-usp .elementor-widget-text-editor {
	margin: 0 !important;
}
.tara-usp .elementor-widget-text-editor p {
	margin: 0;
	text-align: center;
}
/* nagłówek kolumny (pierwszy kontener) — 14px, pogrubiony jak na Wix */
.tara-usp > .e-con-inner > .e-con > .e-con:first-child p,
.tara-usp > .e-con-inner > .e-con > .e-con:first-child strong {
	font-family: "CenturyGothic", sans-serif;
	font-size: 14px !important;
	font-weight: 700;
	line-height: 19.3px;
	letter-spacing: 0;
	color: #000;
}
/* treść kolumny (drugi kontener) — 33px pod nagłówkiem, 10px, wąski blok */
.tara-usp > .e-con-inner > .e-con > .e-con:last-child {
	margin-top: 33px;
}
.tara-usp > .e-con-inner > .e-con > .e-con:last-child p {
	font-family: "CenturyGothic", sans-serif;
	font-size: 10px !important;
	letter-spacing: .5px;
	line-height: 18.8px;
	color: #000;
	max-width: 205px;
	margin: 0 auto;
}

/* nagłówki sekcji produktowych na dole (Wix: 18px/400, wycentrowane) */
.single-product .products-title.related-products-title,
.single-product .products-title.related-products-title span,
.tara-bestsellers-heading {
	font-family: "CenturyGothic", sans-serif;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: #000;
	text-align: center;
	letter-spacing: 0;
	text-transform: none;
}
.tara-bestsellers-heading {
	margin: 20px 0 25px;
}

/* karty produktów w karuzeli "MOGĄ CI SIĘ SPODOBAĆ" — jak karty listingu
   (karuzela nie leży w .products, więc powtarzamy reguły) */
.single-product .content-product .onsale {
	display: none !important;
}
.single-product .content-product .product-details {
	text-align: left;
}
.single-product .content-product .product-details .product-title {
	font-size: 14px;
	letter-spacing: .3px;
	/* stała wysokość = 2 linie (lh 21px): przycisk "Dodaj do koszyka" ma
	   zawsze ten sam odstęp od zdjęcia, niezależnie od długości tytułu
	   (dotyczy karuzeli MOGĄ CI SIĘ SPODOBAĆ i siatki NAJCZĘŚCIEJ KUPOWANE) */
	min-height: 42px;
}
.single-product .content-product .product-details .price {
	font-size: 13px;
	color: #000;
}
.single-product .content-product .product-details .button {
	background: transparent;
	border: 1px solid #000;
	color: #000;
	border-radius: 0;
	box-shadow: none;
	display: block;
	width: 100%;
	height: 40px;
	line-height: 38px;
	padding: 0;
	text-align: center;
	font-size: 14px;
	font-family: "CenturyGothic", sans-serif;
	text-transform: none;
	letter-spacing: normal;
	margin-top: 10px;
}
.single-product .content-product .product-details .button:hover {
	background: #1a1a1a;
	color: #fff;
}

/* ---------- Koszyk (pusty): sekcja "Nowe w sklepie" jak NAJCZĘŚCIEJ KUPOWANE ----------
   Sekcja to blok WooCommerce Blocks (wc-block-grid / product-new) z zupełnie
   inną strukturą HTML niż klasyczna siatka XStore na stronie głównej.
   Odwzorowujemy wygląd karty bestsellerów (styl Wix): tekst do lewej,
   tytuł 14px na 2 linie, cena 13px, przycisk biały z czarną ramką na całą
   szerokość, a nagłówek CenturyGothic 18px wersalikami (jak referencja). */

/* nagłówek "Nowe w sklepie" (drugi h2 w bloku pustego koszyka — nie "Twój
   koszyk jest pusty"): jak heading NAJCZĘŚCIEJ KUPOWANE */
.woocommerce-cart .wp-block-woocommerce-empty-cart-block h2.wp-block-heading:not(.wc-block-cart__empty-cart__title) {
	font-family: "CenturyGothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0;
	color: #000;
	text-transform: uppercase;
	text-align: center;
	margin: 50px 0 25px;
}

/* karta produktu: wyrównanie do lewej (jak .product-details.text-center → left) */
.woocommerce-cart .wc-block-product-new .wc-block-grid__product {
	text-align: left;
}

/* tytuł: 14px, ciemny, stała wysokość 2 linii (jak .home .product-title) */
.woocommerce-cart .wc-block-product-new .wc-block-grid__product-title {
	font-size: 14px;
	letter-spacing: .3px;
	color: #000;
	line-height: 1.5;
	min-height: 3em; /* 2 linie */
	margin: 12px 0 6px;
	text-align: left;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* cena: 13px, czarna, do lewej */
.woocommerce-cart .wc-block-product-new .wc-block-grid__product-price,
.woocommerce-cart .wc-block-product-new .wc-block-grid__product-price .amount {
	font-size: 13px;
	font-weight: 400;
	color: #000;
	text-align: left;
	justify-content: flex-start;
}

/* przycisk "Dodaj do koszyka": biały z czarną ramką, pełna szerokość, 40px,
   prostokątny, CenturyGothic bez wersalików — jak na stronie głównej */
.woocommerce-cart .wc-block-product-new .wp-block-button.wc-block-grid__product-add-to-cart {
	display: block;
	width: 100%;
	margin-top: 10px;
	text-align: left;
}
.woocommerce-cart .wc-block-product-new .wc-block-grid__product-add-to-cart .wp-block-button__link {
	display: block;
	width: 100%;
	height: 40px;
	line-height: 38px;
	padding: 0;
	background: transparent;
	border: 1px solid #000;
	color: #000;
	border-radius: 0;
	box-shadow: none;
	text-align: center;
	font-size: 14px;
	font-family: "CenturyGothic", sans-serif;
	font-weight: 400;
	text-transform: none;
	letter-spacing: normal;
}
.woocommerce-cart .wc-block-product-new .wc-block-grid__product-add-to-cart .wp-block-button__link:hover {
	background: #1a1a1a;
	color: #fff;
	border-color: #1a1a1a;
}

/* Tytuł, cena i przycisk nie mogą być szersze niż zdjęcie produktu.
   Zdjęcie renderuje się w naturalnej szerokości miniatury (woocommerce_thumbnail
   = 300px), wyrównane do lewej, a kolumna bloku jest szersza — więc ograniczamy
   pozostałe elementy do szerokości zdjęcia, żeby kończyły się w tej samej linii. */
.woocommerce-cart .wc-block-product-new .wc-block-grid__product-title,
.woocommerce-cart .wc-block-product-new .wc-block-grid__product-price,
.woocommerce-cart .wc-block-product-new .wp-block-button.wc-block-grid__product-add-to-cart {
	max-width: 300px; /* = szerokość miniatury produktu */
	margin-left: 0;    /* wyrównanie do lewej (pod zdjęciem, nie wyśrodkowane) */
	margin-right: auto;
}

/* ---------- Lista życzeń (/moje-konto/?et-wishlist-page): typografia jak na
   stronie głównej ----------
   Krój już jest ten sam (CenturyGothic wszędzie), różniła się wielkość:
   motyw dawał tytuł ~16px i cenę 14px/#555, a na stronie głównej karta ma
   tytuł 14px/#222 i cenę 13px/#000. Wyrównujemy do wartości ze strony głównej. */
.xstore-wishlist-table .xstore-wishlist-product .product-title {
	font-size: 14px;
	letter-spacing: .3px;
	color: #222;
}
.xstore-wishlist-table .xstore-wishlist-price .price,
.xstore-wishlist-table .xstore-wishlist-price .price .amount,
.xstore-wishlist-table .xstore-wishlist-price .price bdi {
	font-size: 13px;
	color: #000;
}

/* usunięcie sekcji "SKU: ..." z kolumny PRODUKT */
.xstore-wishlist-table .xstore-wishlist-product .product_meta {
	display: none;
}

/* ==================================================================
   KARUZELA sekcji produktowych (.tara-carousel)
   Sekcje: home NAJCZĘŚCIEJ KUPOWANE, koszyk NOWE W SKLEPIE, produkt
   NAJCZĘŚCIEJ KUPOWANE — shortcode WooCommerce z class="tara-carousel".
   Pływająca siatka XStore (.products-grid, float) -> jednorzędowy track flex,
   przewijany o pełną stronę strzałkami na obrzeżach. JS: tara-carousel.js
   ================================================================== */
.tara-carousel { position: relative; }
.tara-carousel__viewport { overflow: hidden; }

.tara-carousel .products.products-grid {
	display: flex !important;
	flex-wrap: nowrap !important;
	margin: 0;
	transition: transform .45s cubic-bezier(.4, 0, .2, 1);
	will-change: transform;
}
/* usuń clearfix pływającej siatki (niepotrzebny przy flex, psułby szerokość) */
.tara-carousel .products.products-grid::before,
.tara-carousel .products.products-grid::after {
	content: none !important;
	display: none !important;
}
.tara-carousel .products.products-grid > .product {
	float: none !important;
	flex-grow: 0 !important;
	flex-shrink: 0 !important;
}
/* liczba widocznych kart = kolumny sekcji (4 lub 3), reszta poza viewportem */
.tara-carousel .products.row-count-4 > .product { flex-basis: 25%; max-width: 25%; }
.tara-carousel .products.row-count-3 > .product { flex-basis: 33.3333%; max-width: 33.3333%; }
@media (max-width: 1024px) {
	.tara-carousel .products.products-grid > .product { flex-basis: 50% !important; max-width: 50% !important; }
}
@media (max-width: 600px) {
	.tara-carousel .products.products-grid > .product { flex-basis: 100% !important; max-width: 100% !important; }
}

/* strzałki nawigacji na obrzeżach sekcji (widoczne tylko gdy jest co przewijać).
   Wygląd 1:1 jak przyciski swipera „MOGĄ CI SIĘ SPODOBAĆ" (widget etheme_related,
   klasa swiper .type-arrow.style-4): białe kółko 50px, bez ramki, miękki cień,
   cienka szara pałeczka-chevron (#888). Pomiary z getComputedStyle na
   .swiper-button-next: 50×50, bg #fff, border 0, radius 50%, kolor #888,
   box-shadow 0 13px 17px rgba(0,0,0,.1). */
.tara-carousel .tara-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 50px;
	height: 50px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 13px 17px rgba(0, 0, 0, .1);
	cursor: pointer;
	z-index: 6;
	display: none;
	align-items: center;
	justify-content: center;
	transition: box-shadow .2s ease;
}
.tara-carousel.tara-has-nav .tara-nav { display: flex; }
.tara-carousel .tara-nav:hover { box-shadow: 0 16px 22px rgba(0, 0, 0, .17); }
.tara-carousel .tara-nav span {
	display: block;
	width: 12px;
	height: 12px;
	border-right: 1.6px solid #888;
	border-bottom: 1.6px solid #888;
	transition: border-color .2s ease;
}
.tara-carousel .tara-nav:hover span { border-color: #222; }
.tara-carousel .tara-nav--prev { left: 8px; }
.tara-carousel .tara-nav--prev span { transform: rotate(135deg); margin-left: 4px; }
.tara-carousel .tara-nav--next { right: 8px; }
.tara-carousel .tara-nav--next span { transform: rotate(-45deg); margin-right: 4px; }

/* równa wysokość 2 linii tytułu także w karuzelach koszyka/produktu
   (dotąd tylko .home) — żeby przyciski nie pływały */
.tara-carousel .products .product .product-details .product-title {
	line-height: 1.5;
	min-height: 3em;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* ---------- rotacja zdjęć na karcie: małe strzałki na obrazku ---------- */
.images-slider-wrapper { position: relative; }
.tara-img-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .85);
	border: 1px solid rgba(0, 0, 0, .45);
	cursor: pointer;
	z-index: 4;
	opacity: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity .2s ease, background .2s ease;
}
.product-image-wrapper:hover .tara-img-arrow,
.content-product:hover .tara-img-arrow { opacity: 1; }
.tara-img-arrow:hover { background: #fff; }
.tara-img-arrow::before {
	content: "";
	display: block;
	width: 7px;
	height: 7px;
	border-right: 2px solid #222;
	border-bottom: 2px solid #222;
}
.tara-img-prev { left: 8px; }
.tara-img-prev::before { transform: rotate(135deg); margin-left: 2px; }
.tara-img-next { right: 8px; }
.tara-img-next::before { transform: rotate(-45deg); margin-right: 2px; }

/* ==================================================================
   Okno "SZYBKI PODGLĄD" (quick view, .quick-view-layout-default)
   ================================================================== */

/* --- typografia jak na stronie głównej (rodzina już CenturyGothic;
   korygujemy rozmiary: tytuł 24→18, cena 19.6px/#888 → #000, opis 16→14) --- */
.quick-view-layout-default .product-name,
.quick-view-layout-default .product-name a {
	font-size: 18px;
	font-weight: 400;
	color: #222;
	letter-spacing: normal;
}
.quick-view-layout-default .price,
.quick-view-layout-default .price .amount,
.quick-view-layout-default .price bdi {
	font-size: 15px;
	font-weight: 400;
	color: #000;
}
.quick-view-layout-default .woocommerce-product-details__short-description,
.quick-view-layout-default .woocommerce-product-details__short-description p {
	font-size: 14px;
	color: #555;
}

/* --- pierwszy "KUP TERAZ" (.et-single-buy-now, motyw = zielony #339438):
   biały z czarną ramką i czarną czcionką (nadpisujemy !important motywu) --- */
.quick-view-layout-default .et-single-buy-now.single_add_to_cart_button.button {
	background: #fff !important;
	color: #000 !important;
	border: 1px solid #000 !important;
	border-style: solid !important;
}
.quick-view-layout-default .et-single-buy-now.single_add_to_cart_button.button:hover,
.quick-view-layout-default .et-single-buy-now.single_add_to_cart_button.button:focus,
.quick-view-layout-default .et-single-buy-now.single_add_to_cart_button.button:hover:focus {
	background: #1a1a1a !important;
	color: #fff !important;
	border-color: #1a1a1a !important;
}
/* --- drugi "KUP TERAZ" (.tara-buy-now) — ukryty (zostawiamy tylko pierwszy) --- */
.quick-view-layout-default .tara-buy-now { display: none !important; }

/* --- wishlist (serduszko) + compare jako SAME IKONY obok "DODAJ DO KOSZYKA"
   (JS przenosi linki do .tara-qv-icons; napisy chowamy) --- */
.quick-view-layout-default .tara-qv-icons {
	display: inline-flex;
	gap: 8px;
	align-self: center; /* nie rozciągaj do wysokości rzędu */
	align-items: center;
	/* rząd ma align-items:center, a przycisk "Dodaj do koszyka" ma
	   margin-bottom:10px — bez tego samego marginesu ikony (jako niższe pudełko
	   marginesu) centrują się ~5px niżej. Wyrównujemy pudełka. */
	margin-bottom: 10px;
}
.quick-view-layout-default .tara-qv-icon {
	/* domyślnie kwadrat ~ wysokości przycisku "Dodaj do koszyka" (~38px);
	   JS w initQuickView ustawia dokładną wysokość = wysokość przycisku */
	width: 38px;
	height: 38px;
	min-width: 38px;
	flex: 0 0 auto;
	box-sizing: border-box;
	border: 1px solid #000;
	border-radius: 0;
	background: #fff;
	color: #000;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	margin: 0;
	line-height: 1;
	transition: background .2s ease, color .2s ease;
}
.quick-view-layout-default .tara-qv-icon:hover { background: #1a1a1a; color: #fff; }
.quick-view-layout-default .tara-qv-icon .et-icon {
	font-size: 18px;
	margin: 0;
	color: inherit;
}
.quick-view-layout-default .tara-qv-icon .button-text,
.quick-view-layout-default .tara-qv-icon .et-element-label {
	display: none !important;
}
/* puste kontenery po przeniesieniu linków */
.quick-view-layout-default .single-wishlist,
.quick-view-layout-default .single-compare { display: none !important; }

/* ==========================================================================
   Wyniki wyszukiwania /search jak na tarabuso.eu (Wix)
   Klasa .tara-search dokładana do <body> na endpoincie /search (plugin
   tarabuso-search + hak body_class w functions.php): mały nagłówek do lewej,
   szeroki pasek wyszukiwania pod nim, sortowanie po prawej, gęsta siatka
   5 kolumn z tekstowym linkiem „Do koszyka" — bez sidebara i filtrów.
   ========================================================================== */

/* bez filtrów i sidebara — na Wix ich nie ma */
.tara-search .shop-filters-area,
.tara-search .sidebar,
.tara-search .filter-content .open-filters-btn,
.tara-search .filter-content .view-switcher,
.tara-search .filter-content .products-per-page {
	display: none !important;
}

/* pełna szerokość obszaru wyników (bez pustej kolumny po sidebarze) */
.tara-search .content-page,
.tara-search .row.products {
	width: 100% !important;
}
.tara-search .content.main-products-loop {
	width: 100% !important;
	max-width: 100% !important;
	flex: 0 0 100% !important;
}

/* licznik motywu / intro sklepu chowamy — mamy własną głowę */
.tara-search .products-title,
.tara-search .et-shop-intro {
	display: none !important;
}

/* --- głowa: mały nagłówek do lewej + szeroki pasek wyszukiwania pod nim --- */
.tara-search-head {
	margin: 0 0 22px;
}
.tara-search-title {
	font-family: "CenturyGothic", sans-serif;
	text-align: left;
	text-transform: none;
	font-size: 15px;
	font-weight: 400;
	letter-spacing: .3px;
	color: #000;
	margin: 0 0 14px;
}
.tara-search-bar {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	background: #fff;
	border: 1px solid #d9d9d9;
}
.tara-search-bar__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	padding: 0 6px 0 16px;
	color: #111;
}
.tara-search-bar input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	height: 52px;
	border: 0;
	outline: 0;
	background: transparent;
	padding: 0 8px;
	font-family: "CenturyGothic", sans-serif;
	font-size: 15px;
	color: #111;
}
.tara-search-bar input[type="search"]::placeholder {
	color: #8a8a8a;
}
.tara-search-bar__submit {
	flex: 0 0 auto;
	height: 52px;
	display: flex;
	align-items: center;
	padding: 0 16px;
	border: 0;
	background: transparent;
	color: #111;
	cursor: pointer;
}
/* hover: czarne tło (a nie różowy akcent motywu), biała ikona */
.tara-search-bar__submit:hover,
.tara-search-bar__submit:focus {
	background: #000 !important;
	color: #fff !important;
	opacity: 1;
}

/* --- pasek sortowania w stylu Wix: etykieta „Sortuj według:" + select bez ramki.
   Klasa `.tara-sort-wix` jest na <body> zarówno na /search, jak i na /sklep/
   (patrz body_class w functions.php), więc styl jest identyczny w obu miejscach. --- */
.tara-sort-wix .filter-content {
	justify-content: flex-end;
}
.tara-sort-wix .filter-content form.woocommerce-ordering {
	margin-left: auto;
	display: inline-flex;
	align-items: center;
}
.tara-sort-wix form.woocommerce-ordering::before {
	content: "Sortuj";
	font-family: "CenturyGothic", sans-serif;
	font-size: 14px;
	color: #000;
	margin-right: 6px;
	white-space: nowrap;
	text-decoration: underline;
	text-underline-offset: 3px;
}
/* select sortowania identycznie jak na Wix: bez ramki i tła, czarny tekst
   podkreślony, cienki szary chevron obok (natywny <select> z 5 opcjami WP) */
.tara-sort-wix .filter-content form.woocommerce-ordering select,
.tara-sort-wix form.woocommerce-ordering select.orderby {
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	appearance: none !important;
	border: 0 !important;
	background-color: transparent !important;
	box-shadow: none !important;
	outline: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	line-height: 1.4 !important;
	margin: 0 !important;
	padding: 0 18px 0 0 !important;
	/* zwężenie kontrolki do szerokości wybranej wartości, żeby chevron był tuż
	   przy tekście jak na Wix (natywny select domyślnie ma szer. najdłuższej
	   opcji); w starszych przeglądarkach fallback = chevron przy prawej krawędzi */
	field-sizing: content;
	max-width: 100%;
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 14px !important;
	color: #000 !important;
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%238a8a8a' stroke-width='1.3'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 11px 7px;
}
.tara-sort-wix form.woocommerce-ordering select::-ms-expand {
	display: none;
}

/* --- 7 kolumn, równa siatka jak na Wix (CSS grid zamiast masonry isotope) ---
   XStore układa karty przez isotope, które pozycjonuje je absolutnie wg wysokości
   (stąd efekt „pływania", gdy zdjęcia/opisy mają różną wielkość). Wymuszamy
   klasyczną siatkę CSS grid i neutralizujemy inline-style isotope na kartach. */
/* Przy `with-ajax` karty leżą w wewnętrznym wrapperze `.ajax-content` (nie są
   bezpośrednimi dziećmi `.products`), więc grid zakładamy na `.ajax-content`.
   Kontener `.products` zostawiamy w bloku i kasujemy wysokość spod isotope. */
.tara-search .products.products-grid {
	display: block !important;
	height: auto !important;
	margin: 0 !important;
}
.tara-search .products.products-grid .ajax-content {
	display: grid !important;
	grid-template-columns: repeat(7, 1fr) !important;
	gap: 14px 10px !important;
	height: auto !important;
	width: 100% !important;
}
/* `.ajax-content` ma klasę `clearfix` — jej ::before/::after w kontenerze grid
   stałyby się PUSTYMI komórkami siatki (znikał 1. kafel). Wyłączamy je. */
.tara-search .products.products-grid .ajax-content::before,
.tara-search .products.products-grid .ajax-content::after {
	content: none !important;
	display: none !important;
}
.tara-search .products.products-grid .ajax-content > .product {
	position: static !important;
	top: auto !important;
	left: auto !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	transform: none !important;
}
/* ewentualny pusty element sizera isotope nie zajmuje komórki siatki */
.tara-search .products.products-grid .ajax-content > .grid-sizer:empty {
	display: none !important;
}
/* mniej kolumn na węższych ekranach */
@media (max-width: 1200px) { .tara-search .products.products-grid .ajax-content { grid-template-columns: repeat(5, 1fr) !important; } }
@media (max-width: 900px)  { .tara-search .products.products-grid .ajax-content { grid-template-columns: repeat(4, 1fr) !important; } }
@media (max-width: 640px)  { .tara-search .products.products-grid .ajax-content { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 420px)  { .tara-search .products.products-grid .ajax-content { grid-template-columns: repeat(2, 1fr) !important; } }

/* jednakowe kafle zdjęć — kadr PIONOWY 2:3, jak oryginalne miniatury (300×450),
   więc typowe zdjęcia produktów wypełniają kafel bez pasów. `object-fit: contain`
   gwarantuje, że CAŁE zdjęcie jest widoczne — nic nie jest przycinane, jedynie
   pomniejszane do rozmiaru kafla. Równe kafle = równa siatka w pionie i poziomie. */
.tara-search .products .product .product-image-wrapper {
	aspect-ratio: 2 / 3;
	overflow: hidden;
	background: #f6f6f6;
}
.tara-search .products .product .product-image-wrapper .images-slider-wrapper,
.tara-search .products .product .product-image-wrapper .product-content-image,
.tara-search .products .product .product-image-wrapper picture {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}
.tara-search .products .product .product-image-wrapper img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
	object-position: center !important;
}

/* mniejsza typografia dla 7 kolumn; tytuł na stałe 2 linie → równe dolne krawędzie */
.tara-search .products .product .product-details {
	padding-top: 8px;
}
.tara-search .products .product .product-details .product-title {
	font-size: 11.5px;
	line-height: 1.35;
	min-height: 2.7em;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.tara-search .products .product .product-details .price {
	font-size: 11.5px;
}

/* „Do koszyka" jako tekstowy link, nie ramkowy przycisk — jak na Wix,
   wyśrodkowany w kaflu siatki. */
.tara-search .products .product .product-details .button {
	display: block;
	width: auto;
	height: auto;
	line-height: 1.4;
	text-align: center;
	margin-top: 6px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #000;
	font-size: 11.5px;
	text-decoration: underline;
	text-underline-offset: 3px;
	opacity: 1 !important;
}
.tara-search .products .product .product-details .button:hover {
	background: transparent;
	color: #000;
	opacity: .6 !important;
}

/* Paginacja w CAŁYM serwisie (sklep, kategorie, tagi, /search, blog itd.):
   aktywny numer oraz hover/focus na czarno zamiast różowego akcentu —
   zgodnie z czarno-białą konwencją strony. */
.woocommerce-pagination .page-numbers.current,
.woocommerce-pagination a.page-numbers:hover,
.woocommerce-pagination a.page-numbers:focus,
.page-numbers.current,
a.page-numbers:hover,
a.page-numbers:focus {
	background: #000 !important;
	border-color: #000 !important;
	color: #fff !important;
}

/* Ikona lupki w headerze prowadzi po kliknięciu prosto na /search (JS w
   functions.php), więc rozwijany na hover panel wyszukiwarki AJAX XStore jest
   zbędny i mylący — ukrywamy go całkowicie. Sama ikona (.et_b_search-icon)
   pozostaje widoczna i klikalna. */
.et_b_header-search .ajax-search-form,
.et_b_header-search .et-mini-content {
	display: none !important;
}

/* ============================================================
   Strona Kontakt: formularz WPForms 253 identyczny jak na Wix
   (tarabuso.eu/blank-3). Pomiary z oryginału:
   - etykiety NAD polami: Century Gothic 13px, czerń, odstęp 3px,
     wcięcie 10px, gwiazdka wymaganych na czarno;
   - pola: tło przezroczyste, ramka 1px #000, kanty proste (radius 0),
     wysokość 34px, tekst 13px Century Gothic; textarea wyższe (~240px);
   - WSZYSTKIE pola tej samej szerokości (Wix: input i textarea = 416px,
     ten sam prawy brzeg) — WPForms modern domyślnie zwęża .wpforms-field-medium
     do ~60%, więc wymuszamy 100%;
   - ciasny rytm pionowy: pitch wiersza ~54px (etykieta line-height 1.25 +
     odstęp 3px + pole 34px + padding 2px), jak zmierzono na Wix;
   - przycisk „Wyślij": czarny, biały tekst 14px, wyśrodkowany, NIE pełna
     szerokość — ~206px WYRÓWNANY DO PRAWEJ do brzegu pól (jak Wix).
   ============================================================ */
.et-kontakt-title {
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #000;
	margin: 0 0 22px;
}
.et-kontakt-form .wpforms-container {
	max-width: 420px;
	margin: 0;
	background: transparent;
}
.et-kontakt-form .wpforms-form .wpforms-field {
	padding: 0 0 2px !important;
}
.et-kontakt-form .wpforms-field-label {
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.25 !important;
	color: #000 !important;
	margin: 0 0 3px !important;
	padding-left: 10px !important;
}
/* wszystkie pola tej samej szerokości (znieś limit ~60% .wpforms-field-medium) */
.et-kontakt-form .wpforms-field-medium,
.et-kontakt-form .wpforms-field input,
.et-kontakt-form .wpforms-field textarea {
	width: 100% !important;
	max-width: 100% !important;
}
.et-kontakt-form .wpforms-required-label {
	color: #000 !important;
	font-weight: 400 !important;
}
.et-kontakt-form .wpforms-field input[type="text"],
.et-kontakt-form .wpforms-field input[type="email"],
.et-kontakt-form .wpforms-field input[type="tel"],
.et-kontakt-form .wpforms-field textarea {
	width: 100% !important;
	box-sizing: border-box !important;
	border: 1px solid #000 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #000 !important;
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 13px !important;
	line-height: 1.88 !important;
	padding: 0 5px !important;
	box-shadow: none !important;
}
.et-kontakt-form .wpforms-field input[type="text"],
.et-kontakt-form .wpforms-field input[type="email"],
.et-kontakt-form .wpforms-field input[type="tel"] {
	height: 34px !important;
	min-height: 34px !important;
}
.et-kontakt-form .wpforms-field textarea {
	height: 240px !important;
	padding: 6px 5px !important;
	resize: none !important;
}
.et-kontakt-form .wpforms-field input:focus,
.et-kontakt-form .wpforms-field textarea:focus {
	border-color: #000 !important;
	outline: none !important;
	box-shadow: none !important;
}
.et-kontakt-form .wpforms-submit-container {
	padding: 4px 0 0 !important;
	text-align: right !important;   /* przycisk do prawej jak na Wix */
}
.et-kontakt-form button[type="submit"].wpforms-submit {
	display: inline-block !important;
	width: 206px !important;         /* ~połowa szerokości pól, jak na Wix */
	max-width: 100% !important;
	background: #000 !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 0 !important;
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 14px !important;
	line-height: 1.67 !important;
	letter-spacing: .3px;
	text-align: center !important;
	padding: 10px 0 !important;
	margin: 0 !important;
	cursor: pointer;
	transition: background .3s ease;
}
.et-kontakt-form button[type="submit"].wpforms-submit:hover {
	background: #1a1a1a !important;
}
/* notka o załącznikach: między „Wiadomość" a przyciskiem (jak na Wix),
   wyrównana do lewej mimo prawego wyrównania kontenera przycisku */
.et-kontakt-form .et-kontakt-note {
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 13px;
	line-height: 1.6;
	color: #000;
	text-align: left !important;
	margin: 0 0 16px !important;
	padding: 0;
}
.et-kontakt-form .et-kontakt-note a {
	color: #000;
	text-decoration: underline;
}

/* ============================================================
   Strona Oferta hurtowa: formularz WPForms 294 identyczny jak na Wix
   (tarabuso.eu/oferta-hurtowa). Ten sam system co /kontakt/ (CenturyGothic,
   pola przezroczyste 1px #000, przycisk „Wyślij" czarny do prawej), ALE inne
   wymiary zmierzone z Wix: input 28px, labelMargin 9px, pitch wiersza ~73px
   (luźniej niż /kontakt/), textarea ~193px. Nad zdjęciem: „KONTAKT" + e-mail.
   ============================================================ */
/* KONTAKT + e-mail nad zdjęciem (lewa kolumna) */
.et-hurt-contact {
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #000;
	text-align: center;
	margin: 0 0 6px;
}
.et-hurt-email {
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 13px;
	text-align: center;
	color: #000;
	margin: 0 0 18px;
}
.et-hurt-email a { color: #000; text-decoration: none; }

.et-hurt-form .wpforms-container {
	max-width: 420px;
	margin: 0;
	background: transparent;
}
.et-hurt-form .wpforms-form .wpforms-field {
	padding: 0 0 18px !important;   /* luźniejszy rytm niż /kontakt/ (Wix pitch ~73px) */
}
.et-hurt-form .wpforms-field-label {
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #000 !important;
	margin: 0 0 9px !important;      /* Wix labelMarginBottom = 9px */
	padding-left: 10px !important;
}
.et-hurt-form .wpforms-required-label {
	color: #000 !important;
	font-weight: 400 !important;
}
/* wszystkie pola równej szerokości (znieś limit ~60% .wpforms-field-medium) */
.et-hurt-form .wpforms-field-medium,
.et-hurt-form .wpforms-field input,
.et-hurt-form .wpforms-field textarea {
	width: 100% !important;
	max-width: 100% !important;
}
.et-hurt-form .wpforms-field input[type="text"],
.et-hurt-form .wpforms-field input[type="email"],
.et-hurt-form .wpforms-field input[type="tel"],
.et-hurt-form .wpforms-field textarea {
	box-sizing: border-box !important;
	border: 1px solid #000 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #000 !important;
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 13px !important;
	line-height: 1.6 !important;
	padding: 0 5px !important;
	box-shadow: none !important;
}
.et-hurt-form .wpforms-field input[type="text"],
.et-hurt-form .wpforms-field input[type="email"],
.et-hurt-form .wpforms-field input[type="tel"] {
	height: 28px !important;         /* Wix inputHeight = 28px */
	min-height: 28px !important;
}
.et-hurt-form .wpforms-field textarea {
	height: 193px !important;
	padding: 6px 5px !important;
	resize: none !important;
}
.et-hurt-form .wpforms-field input:focus,
.et-hurt-form .wpforms-field textarea:focus {
	border-color: #000 !important;
	outline: none !important;
	box-shadow: none !important;
}
.et-hurt-form .wpforms-submit-container {
	padding: 4px 0 0 !important;
	text-align: right !important;    /* przycisk do prawej jak na Wix */
}
.et-hurt-form button[type="submit"].wpforms-submit {
	display: inline-block !important;
	width: 207px !important;         /* jak na Wix */
	max-width: 100% !important;
	background: #000 !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 0 !important;
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 14px !important;
	line-height: 1.67 !important;
	letter-spacing: .3px;
	text-align: center !important;
	padding: 8px 0 !important;
	margin: 0 !important;
	cursor: pointer;
	transition: background .3s ease;
}
.et-hurt-form button[type="submit"].wpforms-submit:hover {
	background: #1a1a1a !important;
}

/* ============================================================
   Zdjęcia obok formularzy powiększone do wysokości pól (jak na Wix):
   dół zdjęcia = dół pola „Wiadomość" (bez notki/przycisku). Skalowanie
   z zachowaniem proporcji (width:auto), bez przycinania. Nadwyżka szerokości
   mieści się w odstępie między kolumną zdjęcia a formularzem.
   - /kontakt/ (widget 5934838, foto 417×524): ~528px wys.
   - /oferta-hurtowa/ (widget 47d6541, foto 409×564): ~521px wys.
   ============================================================ */
.elementor-element-5934838 img {
	height: 528px !important;
	width: auto !important;
	max-width: none !important;
	display: block;
}
.elementor-element-47d6541 img {
	height: 558px !important;
	width: auto !important;
	max-width: none !important;
	margin: -37px auto 0;   /* podnieś górę zdjęcia do pola „Imię i nazwisko" */
}
/* wyższe zdjęcie jest szersze — poszerz lewą kolumnę, by formularz przesunął się
   w prawo i powstał odstęp jak na Wix (bez nachodzenia zdjęcia na pola) */
.elementor-element-022a687 {
	width: 33% !important;
}

/* ============================================================
   Strona „Polityka sklepu" (page 311) jak Wix /polityka-strony.
   Ikony+nagłówki (grafiki), czarne przyciski i czcionka (CenturyGothic) już
   zgodne. Różnice do usunięcia:
   1) treść na WP szła przez całą szerokość — Wix ma wąską, wyśrodkowaną
      kolumnę (~775px);
   2) zepsuta interlinia tekstu „dostawa" (Elementor line-height 8px → nachodzenie);
   3) przyciski „WIĘCEJ/MNIEJ" (etheme_toggle) — Wix ich nie ma (tekst urwany „…");
   4) „Regulamin" jako podkreślony link.
   ============================================================ */
/* 1. wąska wyśrodkowana kolumna treści */
.elementor-page-311 .elementor-widget-text-editor,
.elementor-page-311 .elementor-widget-etheme_toggle_text {
	max-width: 780px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
/* 2. naprawa interlinii tekstu o dostawie (było 8px → nachodzenie) + ciasne
   odstępy akapitów jak na Wix (przerwy między grupami dają znaczniki ​<br>) */
.elementor-page-311 .elementor-element-67c0a94 {
	line-height: 1.6 !important;
}
.elementor-page-311 .elementor-element-67c0a94 p {
	line-height: 1.6 !important;
	margin: 0 0 4px !important;
}
/* jednolity rozmiar tekstu sekcji jak reszta (Wix ~14px; toggle miał 12px) */
.elementor-page-311 .etheme-toggle-short-content p {
	font-size: 14px !important;
	line-height: 1.6 !important;
}
/* 3. przywrócone rozwijane toggles — przyciski „Więcej/Mniej" w minimalnym,
   eleganckim stylu jak na Wix (Century Gothic, czerń, drobny link + strzałka;
   bez tła/ramki/wersalików XStore). Wix collapsible pokazuje tylko „…", więc
   trzymamy przycisk maksymalnie dyskretny. */
/* NIE wymuszać display na wrapperze — XStore JS sam pokazuje „Więcej" LUB „Mniej" */
.elementor-page-311 .etheme-tt-button-wrapper {
	margin-top: 8px;
	text-align: left;
}
.elementor-page-311 .etheme-tt-button {
	display: inline-flex !important;
	width: auto !important;
	justify-content: flex-start !important;
	align-items: center;
	gap: 5px;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	min-width: 0 !important;
	color: #000 !important;
	font-family: "CenturyGothic", sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	letter-spacing: .3px;
	text-transform: none !important;
	cursor: pointer;
	transition: opacity .2s ease;
}
/* bardziej „wixowo": bez strzałki, zwykły minimalny tekst (Wix pokazuje samo „…"),
   podkreślenie dopiero na hover */
.elementor-page-311 .etheme-tt-button svg {
	display: none !important;
}
.elementor-page-311 .etheme-tt-button .button-text {
	text-decoration: none;
}
.elementor-page-311 .etheme-tt-button:hover .button-text {
	text-decoration: underline;
	text-underline-offset: 3px;
	opacity: .6;
}
/* 4. Regulamin — podkreślony link jak na Wix */
.elementor-page-311 .elementor-element-97b303c a {
	text-decoration: underline !important;
}

/* ============================================================
   Strona „Wymiana i zwroty" (page 392) jak Wix /wymiana-i-zwroty.
   Czcionka (CenturyGothic 14px) i czarny przycisk już były zgodne.
   Różnice do usunięcia (pomiary z headless-screenshotu Wix @1280):
   1) treść na WP szła przez całą szerokość (~1109px) — Wix ma wąską,
      wyśrodkowaną kolumnę (~931px);
   2) tekst był szary (#555) — Wix jest niemal czarny (#090909);
   3) duże przerwy między akapitami — Wix ma ciasną interlinię 1.5 bez
      dodatkowych odstępów akapitów;
   4) opcje InPost jako zwykłe akapity — Wix ma listę wypunktowaną (• w treści);
   5) brak nagłówka „Wymiana i zwroty" — Wix ma go wyśrodkowany, szary.
   Pkt 4 i 5 rozwiązane w treści (Elementor: <ul> + widget heading wz00hd1),
   reszta = CSS poniżej.
   ============================================================ */
/* 1. wąska, wyśrodkowana kolumna (Wix ~931px) — oba kontenery górne */
.elementor-page-392 .elementor-element-851934d,
.elementor-page-392 .elementor-element-150e8a2 {
	max-width: 966px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
/* 2.+3. czerń tekstu, ciasna interlinia jak na Wix (line-height 1.5, bez
   dużych odstępów akapitów) */
.elementor-page-392 .elementor-element-db77e6f {
	color: #111 !important;
	line-height: 1.5 !important;
}
.elementor-page-392 .elementor-element-db77e6f p {
	color: #111 !important;
	line-height: 1.5 !important;
	margin: 0 0 3px !important;
}
/* 4. lista wypunktowana opcji InPost (dysk, delikatne wcięcie jak Wix) */
.elementor-page-392 .elementor-element-db77e6f ul {
	list-style: disc !important;
	margin: 0 0 3px !important;
	padding-left: 22px !important;
}
.elementor-page-392 .elementor-element-db77e6f li {
	color: #111 !important;
	line-height: 1.5 !important;
	margin: 0 !important;
}
/* 5. nagłówek „Wymiana i zwroty" — odstęp pod nim jak na Wix (~50px)
   oraz oddech nad nim */
.elementor-page-392 .elementor-element-wz00hd1 {
	margin-top: 26px !important;
	margin-bottom: 34px !important;
}
.elementor-page-392 .elementor-element-wz00hd1 .elementor-heading-title {
	font-family: "CenturyGothic", sans-serif !important;
}
/* 6. przycisk „utwórz zwrot" — Wix nieco większy (~159×44 vs 137×38):
   trochę więcej paddingu; odstęp nad przyciskiem jak na Wix */
.elementor-page-392 .elementor-element-150e8a2 {
	margin-top: 30px !important;
}
.elementor-page-392 .etheme-text-button.elementor-button {
	padding: 13px 34px !important;
}

/* ============================================================
   Strona „Regulamin" (page 380) jak Wix /regulamin.
   Cała treść to JEDEN widget text-editor (id 710744d) — tekst wklejony
   z Wixa (klasy font_9 / wixui-rich-text__text). Nagłówki sekcji
   (Wstęp, I…XIV) to `<p><strong><span>…</span></strong></p>` (nie <h>),
   wszystkie 15 są samodzielnymi nagłówkami (żaden akapit treści nie ma <strong>).
   Różnice do usunięcia (pomiary z Wix: getComputedStyle na p.font_9 @1280):
   1) treść na WP szła przez ~1133px — Wix ma wąską, wyśrodkowaną kolumnę (~822px);
   2) font Wix jest DROBNY: font-size 10px, line-height 18.8px (≈1.88), czerń;
      WP domyślnie ~14–16px → za duży, dużo za wysoka strona;
   3) nagłówki na WP: do lewej, bez podkreślenia — Wix: WYŚRODKOWANE + PODKREŚLONE
      (Wix ~12px, bold). Nagłówki to <p><strong> więc łapiemy je przez :has(> strong).
   ============================================================ */
/* 1. wąska, wyśrodkowana kolumna + wspólny font (CenturyGothic jak reszta migracji) */
.elementor-page-380 .elementor-element-710744d {
	max-width: 830px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	font-family: "CenturyGothic", sans-serif !important;
	color: #111 !important;
}
/* 2. rozmiar tekstu i ciasna interlinia jak na Wix */
.elementor-page-380 .elementor-element-710744d p,
.elementor-page-380 .elementor-element-710744d li {
	font-size: 10px !important;
	line-height: 1.88 !important;
	color: #111 !important;
}
.elementor-page-380 .elementor-element-710744d p {
	margin: 0 0 4px !important;
}
.elementor-page-380 .elementor-element-710744d ol,
.elementor-page-380 .elementor-element-710744d ul {
	margin: 0 0 8px !important;
	padding-left: 24px !important;
}
.elementor-page-380 .elementor-element-710744d li {
	margin: 0 0 2px !important;
}
/* 3. nagłówki sekcji: <p><strong> → wyśrodkowane, podkreślone, lekko większe */
.elementor-page-380 .elementor-element-710744d p:has(> strong) {
	text-align: center !important;
	margin: 22px 0 12px !important;
	font-size: 12px !important;
}
.elementor-page-380 .elementor-element-710744d p:has(> strong) strong,
.elementor-page-380 .elementor-element-710744d p:has(> strong) span {
	font-size: 12px !important;
}
.elementor-page-380 .elementor-element-710744d strong {
	font-weight: 700 !important;
	text-decoration: underline !important;
	text-underline-offset: 3px;
}

/* ==================================================================
   LISTINGI PRODUKTÓW: równy GRID zamiast masonry (isotope)
   Sklep / kategorie / tagi — kontener .main-products-loop (karuzele
   .tara-carousel są POZA nim, więc ich nie dotyczy).
   Masonry wyłączone w functions.php (brak klasy .et-isotope → isotope
   się nie inicjalizuje). Poniżej: układ siatki + neutralizacja
   ewentualnych inline-styli isotope (position:absolute; left/top) i
   pływających szerokości XStore, aby karty były równo w wierszach.
   ================================================================== */
/* Liczba kolumn wg klasy row-count-N (zmienna dziedziczy do .ajax-content). */
.main-products-loop .products.products-grid { --cols: 3; }
.main-products-loop .products.products-grid.row-count-2 { --cols: 2; }
.main-products-loop .products.products-grid.row-count-4 { --cols: 4; }
.main-products-loop .products.products-grid.row-count-5 { --cols: 5; }
.main-products-loop .products.products-grid.row-count-6 { --cols: 6; }
/* Grid na WŁAŚCIWYM kontenerze kart:
   - tryb ajax (with-ajax): produkty są w .ajax-content (obok absolutnego .et-loader),
   - bez ajax: produkty są bezpośrednio w .products-grid. */
.main-products-loop .products.products-grid.with-ajax > .ajax-content,
.main-products-loop .products.products-grid:not(.with-ajax) {
	display: grid !important;
	grid-template-columns: repeat(var(--cols, 3), 1fr) !important;
	grid-auto-flow: row;
	height: auto !important;
	gap: 0;
}
/* .clearfix/WooCommerce dokłada pseudo-elementy ::before/::after (clearfix),
   które w gridzie stają się komórkami i przesuwają pierwszy produkt do 2. kolumny
   (pusta 1. komórka). Wyłączamy je. */
.main-products-loop .products.products-grid.with-ajax > .ajax-content::before,
.main-products-loop .products.products-grid.with-ajax > .ajax-content::after,
.main-products-loop .products.products-grid:not(.with-ajax)::before,
.main-products-loop .products.products-grid:not(.with-ajax)::after {
	content: none !important;
	display: none !important;
}
/* karty: normalny przepływ w komórkach gridu (kasujemy isotope + float XStore) */
.main-products-loop .products.products-grid .product {
	position: relative !important;
	left: auto !important;
	top: auto !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	float: none !important;
	clear: none !important;
}
/* responsywnie jak w motywie: tablet 2 kolumny, telefon 1 */
@media (max-width: 1024px) {
	.main-products-loop .products.products-grid { --cols: 2 !important; }
}
@media (max-width: 480px) {
	.main-products-loop .products.products-grid { --cols: 1 !important; }
}
/* ceny produktów w gridzie — pogrubione */
.main-products-loop .products.products-grid .product .price,
.main-products-loop .products.products-grid .product .price .woocommerce-Price-amount {
	font-weight: 700 !important;
}

/* ==================================================================
   WYPRZEDAŻ — etykieta ceny: przekreślona cena regularna „-" cena sprzedaży.
   Format generuje functions.php (woocommerce_format_sale_price + variable_price_html);
   tu tylko wygląd, wszędzie gdzie pojawia się .price (grid, karuzele, produkt).
   ================================================================== */
.price del,
.price del .woocommerce-Price-amount {
	text-decoration: line-through;
	opacity: 1;
}
.price ins,
.price ins .woocommerce-Price-amount {
	text-decoration: none;
	background: transparent;
}
.price .tara-price-dash {
	margin: 0 .18em;
	text-decoration: none;
}

/* ==================================================================
   Strona /sklep/ i pozostałe archiwa produktów — układ jak w sklepie Wix
   (tarabuso.eu/category/wszystkieprodukty): wąski panel filtrów maksymalnie
   w lewo, siatka 4-kolumnowa na PEŁNĄ szerokość okna, sekcje lekko obniżone.
   Tylko desktop (≥1025px); na mobile zostaje off-canvas XStore i grid 2/1 kol.
   ================================================================== */
@media (min-width: 1025px) {
	/* pełna szerokość okna — kontener sklepu miał max-width:1640px */
	body.archive.woocommerce .container.sidebar-mobile-off_canvas {
		max-width: none !important;
		width: 100% !important;
		padding-left: 22px !important;
		padding-right: 22px !important;
	}
	/* lekko obniżona sekcja filtrów + „Wszystkie produkty" (jak na Wix) */
	body.archive.woocommerce .sidebar-position-left {
		margin-top: 34px;
	}
	/* wiersz [produkty | sidebar] jako flex: wąski sidebar w LEWO, produkty resztę */
	body.archive.woocommerce .sidebar-position-left > .row {
		display: flex !important;
		align-items: flex-start;
		flex-wrap: nowrap;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	body.archive.woocommerce .sidebar-position-left > .row > .sidebar {
		order: 0 !important;
		flex: 0 0 190px !important;
		width: 190px !important;
		max-width: 190px !important;
		left: auto !important;
		right: auto !important;
		float: none !important;
		padding-left: 0 !important;
		padding-right: 22px !important;
	}
	body.archive.woocommerce .sidebar-position-left > .row > .main-products-loop {
		order: 1 !important;
		flex: 1 1 auto !important;
		width: auto !important;
		max-width: none !important;
		left: auto !important;
		right: auto !important;
		float: none !important;
		padding-left: 22px !important;
		padding-right: 0 !important;
	}
	/* siatka 4-kolumnowa na pełną szerokość kolumny produktów */
	body.archive.woocommerce .main-products-loop .products.products-grid {
		--cols: 4 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

/* ------ /sklep/: usunięcie etykiety „Sortuj" w kontrolce sortowania (tylko sklep,
   kategorie/tagi zachowują etykietę) ------ */
body.post-type-archive-product form.woocommerce-ordering::before {
	content: none !important;
	display: none !important;
}

/* ------ /sklep/: pod paginacją sekcja newslettera (jak na stronie głównej) + tekst
   SEO z Wixa; odstępy oddzielające je od produktów ------ */
.et-shop-newsletter {
	margin-top: 64px;
}
.et-shop-outro {
	margin-top: 52px;
	margin-bottom: 24px;
}
/* Formularz newslettera 1:1 jak na stronie głównej. Na home pole ma stałe 400px
   (reguła WPForms #wpforms-110-field_2 z CSS Elementora, która NIE ładuje się na
   /sklep/), więc na sklepie WPForms zwężał je do max-width:60% i przycisk odklejał
   się od pola. Wymuszamy 400px + pojemnik pola kurczący się do treści, żeby pole
   i czarny „Prześlij" stykały się, wyśrodkowane w kontenerze 558px. */
.et-shop-newsletter .wpforms-field-container {
	flex: 0 1 auto !important;
	width: auto !important;
}
.et-shop-newsletter .wpforms-field input[type="email"],
.et-shop-newsletter .wpforms-field input[type="text"] {
	width: 400px !important;
	max-width: 100% !important;
}
/* krój czcionek jak na stronie głównej — na sklepie nagłówek/drobny druk dziedziczyły
   Roboto z motywu (Elementor/WooCommerce) zamiast CenturyGothic. Wymuszamy wprost na
   nagłówku i drobnym druku. Pole (CenturyGothic) i przycisk (Arial) mają własny font. */
.et-shop-newsletter,
.et-shop-newsletter .elementor-widget-text-editor,
.et-shop-newsletter .elementor-widget-text-editor p,
.et-shop-newsletter .et-newsletter-note {
	font-family: "CenturyGothic", sans-serif !important;
}
/* przycisk „Prześlij" w jednej linii z polem: WPForms dokłada submit-container
   margin-top (na home wyzerowany, na sklepie 10px → przycisk spadał niżej).
   Wyśrodkowanie pionowe pola i przycisku. */
.et-shop-newsletter .wpforms-form {
	align-items: center !important;
}
.et-shop-newsletter .wpforms-submit-container {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
/* drobny druk pod formularzem (jak na stronie głównej: 10px, wyśrodkowany) */
.et-newsletter-note {
	font-size: 10px;
	line-height: 1.4;
	color: #000;
	margin: 2px 0 0;
	text-align: center;
}

/* Newsletter + tekst SEO pod produktami wyśrodkowane względem STRONY (jak na
   stronie głównej), a nie tylko kolumny produktów. Na desktopie kolumna produktów
   jest odsunięta o wąski sidebar (190px + 22px padding) — rozciągamy sekcje o tę
   wartość w lewo, więc obejmują pełną szerokość treści i centrują się na stronie. */
@media (min-width: 1025px) {
	body.post-type-archive-product .et-shop-newsletter,
	body.post-type-archive-product .et-shop-outro {
		margin-left: -212px;
	}
}

/* ==================================================================
   /sklep/ (archiwa produktów) — kroje i rozmiary czcionek jak w sklepie Wix
   (tarabuso.eu/category/wszystkieprodukty).
   ================================================================== */
/* Sekcja „Wszystkie produkty": tytuł 18px, opis 12px (Wix), CenturyGothic */
body.archive.woocommerce .et-shop-intro__title {
	font-size: 18px !important;
	font-weight: 400 !important;
	letter-spacing: normal !important;
}
body.archive.woocommerce .et-shop-intro p,
body.archive.woocommerce .et-shop-intro .elementor-widget-text-editor {
	font-size: 12px !important;
}
/* Sekcja outro: krój CenturyGothic (był Roboto z motywu) + rozmiary jak Wix (12px) */
.et-shop-outro,
.et-shop-outro .elementor-widget-text-editor,
.et-shop-outro .elementor-widget-text-editor p,
.et-shop-outro p.et-seo-lead {
	font-family: "CenturyGothic", sans-serif !important;
}
.et-shop-outro p.et-seo-lead {
	font-size: 12px !important;
}
/* odstępy między liniami i akapitami jak na Wix: interlinia 15px (1.25×12px);
   akapity treści mają margin:0 (stykają się), a odstęp 15px przed śródtytułami dają
   puste akapity <p>&nbsp;</p> w treści — przy interlinii 15px = 15px przerwy jak w Wix */
.et-shop-outro .elementor-widget-text-editor,
.et-shop-outro .elementor-widget-text-editor p,
.et-shop-outro .elementor-widget-text-editor p.et-seo-lead {
	line-height: 15px !important;
}

/* ---- Sidebar jak w Wix ---- */
/* usunięty tytuł „KATEGORIE" nad listą kategorii */
body.archive.woocommerce .sidebar .widget_block > .wp-block-heading {
	display: none !important;
}
/* filtry warstwowe: małe litery (lowercase) + licznik ilości produktów, bez
   rozstrzelenia liter, mniejsza czcionka + brak zawijania → każdy wpis w JEDNEJ linii
   (małe litery są węższe niż wersaliki, więc licznik „(N)" mieści się obok nazwy). */
body.archive.woocommerce .sidebar .woocommerce-widget-layered-nav-list__item {
	white-space: nowrap;
}
body.archive.woocommerce .sidebar .woocommerce-widget-layered-nav-list__item a {
	font-size: 11px !important;
	letter-spacing: 0 !important;
	text-transform: lowercase !important;
}

/* ============================================================
   Menu hamburger dla tabletów w pionie i telefonów.
   Poziome menu (5 pozycji) nie mieści się w kolumnie 1/3 szerokości i łamie się
   poniżej desktopu. Na telefonach XStore (wp_is_mobile) renderuje osobny, PUSTY
   nagłówek mobilny (brak menu/off-canvas) — jest tylko dolny panel Strona główna/
   Sklep/Koszyk. Dlatego:
   • na desktopie/tablecie (jest .header-main) chowamy poziome menu i wstawiamy
     wyśrodkowany hamburger w środkowej kolumnie nagłówka (między logo a ikonami);
   • na telefonie (jest .et-mobile-panel) dokładamy pozycję „Menu" do dolnego panelu;
   • klik otwiera pełnoekranowy overlay z pozycjami najwyższego poziomu (Sklep, Blog,
     Targi, O marce, ✧ Wyprzedaż) — fixed, z-index ponad sliderem.
   Markup: wp_footer w functions.php (menu renderowane serwerowo). */
.tara-burger {
	display: none;
	align-items: center;
	justify-content: center;
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	border: 0;
	cursor: pointer;
	line-height: 0;
	color: #000;
}
.tara-burger-box { display: block; position: relative; width: 26px; height: 15px; }
.tara-burger-box > span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 1.5px;
	background: currentColor;
	transition: transform .25s ease, opacity .2s ease, top .25s ease;
}
.tara-burger-box > span:nth-child(1) { top: 0; }
.tara-burger-box > span:nth-child(2) { top: 6.75px; }
.tara-burger-box > span:nth-child(3) { top: 13.5px; }
html.tara-open .tara-burger-box > span:nth-child(1) { top: 6.75px; transform: rotate(45deg); }
html.tara-open .tara-burger-box > span:nth-child(2) { opacity: 0; }
html.tara-open .tara-burger-box > span:nth-child(3) { top: 6.75px; transform: rotate(-45deg); }

/* kontekst nagłówka desktop/tablet: poniżej 1025px chowamy poziome menu i
   pokazujemy wyśrodkowany hamburger między logo a ikonami */
@media (max-width: 1024px) {
	.header-main .header-main-menu .menu-main-container { display: none !important; }
	.header-main .header-main-menu .tara-burger {
		display: inline-flex;
		margin: 0 auto;
		padding: 6px 8px;
	}
}

/* kontekst telefonu: przycisk „Menu" jako pozycja dolnego panelu XStore
   (sama ikona hamburgera, bez podpisu, dziedziczy kolor pozostałych ikon panelu).
   Podpisy pod WSZYSTKIMI ikonami panelu wyłączone natywnie w XStore
   (mobile_panel_elements_texts_et-mobile = 0). */
.tara-panel-col { cursor: pointer; }
.tara-burger--panel {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 0;
	color: inherit;
}
.tara-burger--panel .tara-burger-box { width: 24px; height: 15px; }

/* 7 pozycji panelu (Strona główna, Sklep, Szukaj, Menu, Ulubione, Koszyk, Profil)
   ma się zmieścić w szerokości ekranu — natywne kolumny mają stałe ~97px i nie
   kurczą się, więc wymuszamy elastyczne, równe kolumny bez przepełnienia. */
.et-mobile-panel-wrapper .et-mobile-panel .et-row-container,
.et-mobile-panel-wrapper .et-mobile-panel .et-container {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}
.et-mobile-panel-wrapper .et-mobile-panel .et-wrap-columns {
	flex-wrap: nowrap !important;
}
.et-mobile-panel-wrapper .et-mobile-panel .et-wrap-columns > .et_column {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	width: auto !important;
	padding-left: 2px !important;
	padding-right: 2px !important;
}

/* pełnoekranowy overlay menu — ponad wszystkim (także sliderem) */
.tara-mobile-nav {
	display: none;
	position: fixed;
	inset: 0;
	background: #fff;
	z-index: 100000;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	padding: 64px 0 40px;
}
html.tara-open .tara-mobile-nav { display: block; }
html.tara-open { overflow: hidden; }
.tara-mnav-close {
	position: absolute;
	top: 12px;
	right: 16px;
	width: 40px;
	height: 40px;
	background: transparent;
	border: 0;
	font-size: 34px;
	line-height: 1;
	color: #000;
	cursor: pointer;
}
.tara-mobile-nav ul {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	max-width: 760px;
}
.tara-mobile-nav li { border-bottom: 1px solid #f2f2f2; }
.tara-mobile-nav li:last-child { border-bottom: 0; }
.tara-mobile-nav a {
	display: block;
	padding: 18px 24px;
	text-align: center;
	font-family: "CenturyGothic", sans-serif;
	font-size: 15px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #000;
	text-decoration: none;
}
.tara-mobile-nav a:hover,
.tara-mobile-nav a:focus { background: #f7f7f7; }

/* pozycja rozwijana (Sklep) — klik w napis pokazuje/ukrywa podmenu kategorii.
   Dotyczy tylko overlay = tablet w pionie i telefony; desktop/tablet poziomy (menu
   poziome >1024px) bez zmian. */
.tara-mobile-nav .tara-sub-toggle {
	display: block;
	width: 100%;
	padding: 18px 24px;
	background: transparent;
	border: 0;
	cursor: pointer;
	font-family: "CenturyGothic", sans-serif;
	font-size: 15px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #000;
	text-align: center;
}
.tara-mobile-nav .tara-sub-arrow {
	display: inline-block;
	margin-left: 9px;
	width: 0;
	height: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid currentColor;
	vertical-align: middle;
	transition: transform .2s ease;
}
.tara-mobile-nav .tara-has-sub.tara-sub-open .tara-sub-arrow { transform: rotate(180deg); }
.tara-mobile-nav .tara-submenu {
	max-width: none;
	display: none;
	background: #fafafa;
}
.tara-mobile-nav .tara-has-sub.tara-sub-open .tara-submenu { display: block; }
.tara-mobile-nav .tara-submenu li { border-bottom: 1px solid #eee; }
.tara-mobile-nav .tara-submenu li:last-child { border-bottom: 0; }
.tara-mobile-nav .tara-submenu a {
	padding: 13px 24px;
	font-size: 13px;
	letter-spacing: .5px;
	text-transform: none;
	color: #333;
}

/* Tylko smartfony: pasek nagłówka z logo TARABUSO nad sliderem (na telefonie XStore
   ma pusty mobilny nagłówek). Wstrzykiwany JS-em tuż za <header>. Dotyczy wyłącznie
   telefonu (na desktopie/tablecie element nie powstaje). */
.tara-mobile-header {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 15px 12px;
	background: #fff;
	border-bottom: 1px solid #eee;
}
.tara-mobile-header .tara-mobile-logo {
	display: inline-flex;
	align-items: center;
	line-height: 0;
}
.tara-mobile-header img {
	display: block;
	width: 170px;
	max-width: 60vw;
	height: auto;
}

/* ---------- Stopka mobilna jak na tarabuso.eu (tylko smartfony + tablety w pionie) ----------
   Odwzorowanie dolnych linków z Wix: pozioma linia, „Strona główna"/„Sklep" (wyśrodkowane,
   pogrubione), 2-kolumnowa siatka linków ze strzałkami →. Widoczne tylko ≤1024px; desktopowe
   linki stopki (.elementor-element-0f61397) na ≤1024px chowamy, by nie dublować. */
.et-mfoot { display: none; }
@media (max-width: 1024px) {
	.elementor-element-0f61397 { display: none !important; } /* desktopowe linki stopki */

	.et-mfoot {
		display: block;
		max-width: 520px;
		margin: 0 auto;
		padding: 0 22px;
		text-align: center;
		font-family: "CenturyGothic", sans-serif;
		color: #2b2b2b;
	}
	.et-mfoot__line {
		height: 1px;
		background: #d9d9d9;
		max-width: 440px;
		margin: 6px auto 36px;
	}
	.et-mfoot__lead {
		display: block;
		color: #000;
		text-decoration: none;
		font-weight: 700;
		font-size: 16px;
		letter-spacing: .5px;
		padding: 7px 0;
	}
	.et-mfoot__grid {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 16px 30px;
		margin: 24px 0 4px;
	}
	.et-mfoot__grid a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		color: #2b2b2b;
		text-decoration: none;
		font-size: 13px;
		letter-spacing: .4px;
	}
	.et-mfoot__grid a::after {
		content: "\2192"; /* → */
		color: #9a9a9a;
		font-size: 15px;
		line-height: 1;
	}
	.et-mfoot__grid a:hover { color: #000; }
}
