/* Party Spot 2026 — kafelki kategorii, panel filtrów */

.woocommerce ul.products li.product-category a {
	display: block;
	border-radius: 14px;
	overflow: hidden;
}
.woocommerce ul.products li.product-category img {
	border-radius: 14px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	transition: transform .35s ease;
}
.woocommerce ul.products li.product-category a:hover img {
	transform: scale(1.03);
}
.woocommerce ul.products li.product-category img {
	margin-bottom: 0 !important;
}
.woocommerce ul.products li.product-category .woocommerce-loop-category__title {
	text-align: center;
	font-size: 15px !important;
	line-height: 1.3;
	padding: 10px 4px 0 !important;
	margin: 0 !important;
}
/* podpis bliżej swojego kafelka niż następnego */
.woocommerce ul.products li.product-category {
	margin-bottom: 30px !important;
}

/* Strona z samymi kafelkami: bez panelu filtrów, treść na całą szerokość */
.ps-tylko-kafelki #sidebar,
.ps-tylko-kafelki .nectar-shop-filters {
	display: none !important;
}
/* pusty pasek filtrów pod okruszkami ma w Salient 60 px marginesu — na stronach z kafelkami zbędne */
.ps-tylko-kafelki .nectar-shop-header .nectar-shop-header-bottom {
	display: none !important;
}
.ps-tylko-kafelki .nectar-shop-header {
	margin-bottom: 28px !important;
}
.ps-tylko-kafelki .post-area {
	margin-top: 0 !important;
}
/* nagłówek i okruszki bliżej siebie */
.nectar-shop-header h1.page-title {
	margin-bottom: 6px !important;
}
.nectar-shop-header .woocommerce-breadcrumb {
	margin-bottom: 0 !important;
	font-size: 13px;
}
.nectar-shop-header .nectar-shop-header-bottom {
	margin-bottom: 28px !important;
}
.ps-tylko-kafelki .post-area.span_9 {
	width: 100% !important;
	margin-left: 0 !important;
}
@media (max-width: 690px) {
	.woocommerce ul.products li.product-category {
		width: calc(50% - 8px) !important;
		margin: 0 0 24px !important;
	}
	.woocommerce ul.products li.product-category:nth-child(odd) {
		margin-right: 16px !important;
	}
}

/* Kafelki na stronach Postacie z bajek / Party / Realizacje */
.ps-sekcja {
	margin: 36px 0 18px;
	font-size: 22px;
}
.ps-kafelki ul.products {
	margin-bottom: 8px;
}
.ps-kafelek-pusty {
	display: block;
	aspect-ratio: 1 / 1;
	border-radius: 14px;
	background: #F6EEF1;
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .06);
}
.ps-licencja {
	margin: 28px 0 0;
	text-align: center;
}

/* Nagłówek: 9 wejść menu w jednej linii */
@media (min-width: 1000px) {
	#header-outer #top nav > ul.sf-menu > li {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	#header-outer #top nav > ul.sf-menu > li > a {
		font-size: 13px !important;
		letter-spacing: .06em;
		white-space: nowrap;
		margin-left: 9px !important;
		margin-right: 9px !important;
	}
}
/* Telefon z nagłówka mieści się dopiero na szerokich ekranach */
@media (min-width: 1000px) and (max-width: 1700px) {
	#header-outer #top nav > ul.buttons li.nectar-header-text-content-wrap {
		display: none !important;
	}
}
.ps-tytul {
	margin: 10px 0 24px;
}
.woocommerce.ps-kafelki ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 32px 24px !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.woocommerce.ps-kafelki--3 ul.products {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
/* próbki kolorów: mniejsze, po sześć w rzędzie */
.woocommerce.ps-kafelki--6 ul.products {
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 28px 20px !important;
}
.woocommerce.ps-kafelki ul.products::before,
.woocommerce.ps-kafelki ul.products::after {
	display: none !important;
}
.woocommerce.ps-kafelki ul.products li.product-category {
	width: auto !important;
	margin: 0 !important;
	float: none !important;
	clear: none !important;
}
@media (max-width: 999px) {
	.woocommerce.ps-kafelki ul.products,
	.woocommerce.ps-kafelki--6 ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
@media (max-width: 690px) {
	.woocommerce.ps-kafelki ul.products,
	.woocommerce.ps-kafelki--6 ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px 16px !important;
	}
	.woocommerce.ps-kafelki--6 ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
.woocommerce.ps-kafelki ul.products li.product-category a,
.ps-kafelek-pusty {
	width: 100%;
}

/* Zamówienie: pole NIP z Flexible Checkout Fields bez dopisku „(opcjonalne)” */
.ps-bez-opcjonalne .optional {
	display: none;
}

/* Strona główna: okładki sekcji pod sliderem — dłuższe nazwy mieszczą się w kolumnie */
.home .wpb_row .vc_col-sm-3 .wpb_text_column h2 {
	font-size: clamp(20px, 1.8vw, 28px);
	line-height: 1.15;
	overflow-wrap: normal;
}

/* Karty produktów: równe kwadraty zdjęć (miniatury nie są kadrowane, bywają wysokie) i równa wysokość opisu */
.woocommerce ul.products li.product .product-wrap > a:first-child,
.woocommerce ul.products li.product .product-wrap > .img-loaded,
.nectar-woo-flickity li.product .product-wrap > a:first-child {
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: #fff;
	border-radius: 14px;
}
.woocommerce ul.products li.product .product-wrap > a:first-child img,
.nectar-woo-flickity li.product .product-wrap > a:first-child img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain;
	object-position: center;
	padding: 6%;
	box-sizing: border-box;
}
.woocommerce ul.products li.product .product-meta,
.nectar-woo-flickity li.product .product-meta {
	min-height: 96px;
}
.woocommerce ul.products li.product .product-meta .woocommerce-loop-product__title,
.nectar-woo-flickity li.product .product-meta .woocommerce-loop-product__title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.6em;
	line-height: 1.3;
}
.nectar-woo-flickity .flickity-cell li.product,
.nectar-woo-flickity .flickity-cell {
	height: auto;
}

/* Galerie realizacji (zwykła galeria WordPressa) */
.ps-galeria .gallery {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin: 0 0 30px;
}
.ps-galeria .gallery .gallery-item {
	width: auto !important;
	margin: 0 !important;
	float: none !important;
}
.ps-galeria .gallery .gallery-icon {
	display: block;
	border-radius: 14px;
	overflow: hidden;
	aspect-ratio: 4 / 5;
	background: #F6EEF1;
}
.ps-galeria .gallery .gallery-icon a,
.ps-galeria .gallery .gallery-item img {
	display: block;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	object-fit: cover;
	border: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	transition: transform .4s ease;
}
.ps-galeria .gallery .gallery-item a:hover img {
	transform: scale(1.04);
}
.ps-galeria .gallery .gallery-caption {
	font-size: 13px;
	padding-top: 8px;
}
.ps-galeria-pusta {
	padding: 32px;
	border-radius: 14px;
	background: #F6EEF1;
	text-align: center;
}
@media (max-width: 690px) {
	.ps-galeria .gallery {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}
}
