/* ==========================================================================
   Moonlark - "nocny" motyw calej strony (jak hero na stronie glownej)
   Ciemne tlo, lawendowe akcenty (zamiast zlota), font Archivo w naglowkach.
   Ladowany na kazdej stronie PO main.css (functions.php).
   ========================================================================== */

:root {
	--night: #241a2d;
	--night-2: #2b2035;
	--night-3: #33273f;
	--night-deep: #1c1424;
	--line: rgba(169, 131, 187, .2);
	--line-strong: rgba(169, 131, 187, .38);
	--muted: rgba(255, 255, 255, .68);
	--lav: #c9a6dc;
	--lav-light: #ecdcf6;
	--lav-text: #d9bdea;
	/* akcenty: lawenda zamiast zlota w calym sklepie */
	--gold-light: #ecdcf6;
	--gold: #c9a6dc;
	--gold-dark: #a983bb;
	--shadow-gold: 0 10px 26px -10px rgba(201, 166, 220, .6);
	--shadow-gold-hover: 0 16px 34px -10px rgba(201, 166, 220, .7);
	--shadow-card: 0 24px 50px -30px rgba(0, 0, 0, .8);
	--shadow-card-hover: 0 30px 60px -26px rgba(0, 0, 0, .85);
	--shadow-xs: 0 6px 16px -10px rgba(0, 0, 0, .6);
}

body {
	background: var(--night);
	color: #fff;
}
main { background: var(--night); }
h1, h2, h3, h4 { color: #fff; }
p { color: var(--muted); }
::selection { background: rgba(201, 166, 220, .4); color: #fff; }

/* przyciski: tekst sliwkowy na lawendzie */
.btn--primary, a.button, button.button, input.button, .single_add_to_cart_button,
#place_order, .checkout-button, .wc-proceed-to-checkout .button, .btn:not(.btn--glass):not(.btn--outline):not(.btn--ghost) {
	color: var(--purple-deep) !important;
}
.btn--ghost, .btn--outline {
	color: #fff !important;
	border-color: rgba(255, 255, 255, .3) !important;
	background: rgba(255, 255, 255, .06) !important;
}
.btn--ghost:hover, .btn--outline:hover { background: rgba(255, 255, 255, .14) !important; border-color: rgba(255, 255, 255, .55) !important; }
.btn--glass {
	background: rgba(255, 255, 255, .08) !important;
	color: #fff !important;
	border: 1px solid rgba(255, 255, 255, .3) !important;
	box-shadow: none !important;
}
.btn--glass:hover { background: rgba(255, 255, 255, .16) !important; border-color: rgba(255, 255, 255, .55) !important; }

/* --------------------------------------------------------------------------
   Nawigacja na podstronach: ciemne szklo (strona glowna ma wlasna)
   -------------------------------------------------------------------------- */
body:not(.home) .site-header {
	background: rgba(28, 20, 36, .86);
	-webkit-backdrop-filter: blur(14px) saturate(140%);
	backdrop-filter: blur(14px) saturate(140%);
	box-shadow: 0 1px 0 rgba(255, 255, 255, .06);
}
body:not(.home) .site-header.is-scrolled { box-shadow: 0 1px 0 rgba(255, 255, 255, .08), 0 14px 30px -16px rgba(0, 0, 0, .6); }
.site-nav__list a { color: rgba(255, 255, 255, .82); }
.site-nav__list a:hover { color: #fff; }
.site-nav__list a::after { background: var(--lav); }
.cart-link, .menu-toggle {
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .22);
	color: #fff;
}
.cart-link:hover { background: rgba(255, 255, 255, .16); }
.cart-count { background: var(--lav); color: var(--purple-deep); box-shadow: 0 0 0 2px var(--night-deep); }
.mobile-menu {
	background: rgba(28, 20, 36, .97);
	border-top: 1px solid rgba(255, 255, 255, .08);
}
.mobile-menu__list a { color: #fff; }

/* --------------------------------------------------------------------------
   Naglowek podstron (O nas, Kontakt, regulaminy, koszyk...)
   -------------------------------------------------------------------------- */
.page-hero {
	background:
		radial-gradient(60rem 26rem at 50% -20%, rgba(169, 131, 187, .34), transparent 62%),
		linear-gradient(180deg, var(--night-deep) 0%, var(--night) 100%);
	margin-bottom: clamp(2rem, 4vw, 3rem);
}
.page-hero__inner { padding: clamp(3rem, 7vw, 5rem) 1.5rem clamp(2rem, 4vw, 3rem); }
.page-hero__eyebrow { color: var(--lav-text); }
.page-hero__eyebrow::before { background: var(--lav); box-shadow: 0 0 0 4px rgba(201, 166, 220, .22); }
.page-hero .page-title,
.woocommerce-page .page-hero h1.page-title {
	color: #fff;
	font-weight: 800;
	font-stretch: 108%;
	letter-spacing: -.035em;
	font-size: clamp(2.3rem, 5vw, 3.8rem);
	max-width: 44rem;
}
.page-title::after { background: var(--lav); }

/* tresc stron tekstowych */
.entry-content p, .entry-content li { color: var(--muted); }
.entry-content h2 { color: #fff; border-bottom-color: var(--line); }
.entry-content strong { color: #fff; }
.entry-content a { color: var(--lav-text); }
.entry-content a:hover { color: #fff; }
.legal-notice {
	background: var(--night-2);
	border: 1px solid var(--line);
	border-left: 4px solid var(--lav);
}
.legal-notice p { color: var(--muted); }
mark.tbd {
	background: rgba(201, 166, 220, .16);
	color: var(--lav-light);
	border: 1.5px dashed var(--lav);
}

/* --------------------------------------------------------------------------
   Formularze (koszyk, zamowienie, konto)
   -------------------------------------------------------------------------- */
input[type="text"], input[type="email"], input[type="tel"], input[type="password"],
input[type="number"], input[type="search"], textarea, select,
.form-row input.input-text, .form-row textarea, .form-row select,
.woocommerce-form-login .woocommerce-Input, .woocommerce-form-register .woocommerce-Input,
.select2-container .select2-selection--single, .quantity input.qty,
td.actions .coupon input#coupon_code {
	background: #1e1627 !important;
	color: #fff !important;
	border: 1px solid var(--line-strong) !important;
	border-radius: var(--radius-sm);
}
input::placeholder, textarea::placeholder { color: rgba(255, 255, 255, .4); }
input:focus, textarea:focus, select:focus, .quantity input.qty:focus {
	outline: none;
	border-color: var(--lav) !important;
	box-shadow: 0 0 0 4px rgba(201, 166, 220, .2) !important;
}
.select2-container .select2-selection__rendered { color: #fff !important; }
.select2-dropdown { background: #1e1627; border-color: var(--line-strong); color: #fff; }
.select2-results__option--highlighted { background: var(--lav) !important; color: var(--purple-deep) !important; }
.select2-search--dropdown .select2-search__field { background: var(--night-2); color: #fff; border: 1px solid var(--line-strong); }
.form-row label, .woocommerce-form-login label, .woocommerce-form-register label { color: rgba(255, 255, 255, .85); }
.required { color: var(--lav) !important; }

/* komunikaty WooCommerce */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-noreviews, p.no-comments {
	background: var(--night-2) !important;
	color: #fff !important;
	border: 1px solid var(--line) !important;
	border-left: 4px solid var(--lav) !important;
	box-shadow: none !important;
}
.woocommerce-error { border-left-color: #e57b88 !important; }
.woocommerce-message a, .woocommerce-info a { color: var(--lav-text); }
.woocommerce-message::before, .woocommerce-info::before { color: var(--lav) !important; }

/* --------------------------------------------------------------------------
   Sklep - naglowek, filtr stylow, pasek narzedzi
   -------------------------------------------------------------------------- */
.post-type-archive-product .woocommerce,
.tax-product_cat .woocommerce { padding-top: 0; }
.woocommerce-products-header {
	text-align: center;
	max-width: none;
	margin: 0 calc(50% - 50vw) clamp(1.75rem, 3vw, 2.5rem);
	padding: clamp(3rem, 7vw, 5rem) 1.5rem clamp(1.5rem, 3vw, 2.25rem);
	background:
		radial-gradient(60rem 26rem at 50% -20%, rgba(169, 131, 187, .34), transparent 62%),
		linear-gradient(180deg, var(--night-deep) 0%, var(--night) 100%);
}
.woocommerce-products-header .page-title,
.woocommerce h1.page-title {
	display: inline-block;
	max-width: none;
	margin: 0 0 .5rem;
	padding: 0 0 .6rem;
	font-weight: 800;
	font-stretch: 108%;
	letter-spacing: -.035em;
	font-size: clamp(2.4rem, 5.5vw, 4rem);
	color: #fff;
}
.woocommerce-products-header .page-title::after { left: 50%; transform: translateX(-50%); }
.shop-sub { margin: .25rem 0 0; color: var(--lav-text); font-size: 1.05rem; font-weight: 600; }

.shop-filter {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .5rem;
	padding: 0 1.5rem;
	margin: 0 auto clamp(1.5rem, 3vw, 2.25rem);
}
.shop-filter a {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	padding: .55rem 1.05rem;
	border-radius: var(--radius-pill);
	border: 1px solid var(--line-strong);
	background: rgba(255, 255, 255, .03);
	color: rgba(255, 255, 255, .85);
	font-weight: 600;
	font-size: .9rem;
	transition: background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);
}
.shop-filter a span { font-size: .75rem; color: rgba(255, 255, 255, .5); font-variant-numeric: tabular-nums; }
.shop-filter a:hover { background: rgba(255, 255, 255, .09); border-color: var(--lav); color: #fff; }
.shop-filter a.is-active { background: var(--lav); border-color: var(--lav); color: var(--purple-deep); }
.shop-filter a.is-active span { color: rgba(69, 49, 83, .7); }

.shop-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.5rem;
	padding: 0 1.5rem;
}
.shop-toolbar .woocommerce-result-count,
.shop-toolbar .woocommerce-ordering { margin: 0; padding: 0; max-width: none; float: none; }
.woocommerce-result-count { color: rgba(255, 255, 255, .55); font-size: .9rem; }
.woocommerce-ordering select {
	background: #1e1627;
	color: #fff;
	border: 1px solid var(--line-strong);
	border-radius: var(--radius-pill);
	padding: .55rem 2.2rem .55rem 1rem;
}

/* --------------------------------------------------------------------------
   Karty produktow - jak puszki w hero: ciemna karta, puszka na poswiacie
   -------------------------------------------------------------------------- */
ul.products li.product,
.products-grid > li {
	background:
		radial-gradient(18rem 14rem at 50% 30%, rgba(255, 255, 255, .05), transparent 70%),
		var(--night-2);
	border: 1px solid var(--line);
	border-radius: 24px;
	box-shadow: var(--shadow-card);
	padding: 1rem 1.1rem 1.15rem;
}
ul.products li.product:hover,
.products-grid > li:hover {
	transform: translateY(-6px);
	border-color: var(--line-strong);
	box-shadow: var(--shadow-card-hover);
}
.product-card__media {
	background: none;
	margin: -1rem -1.1rem .9rem;
	aspect-ratio: 4 / 5;
}
.product-card__media::before {
	top: 14%;
	width: 62%;
	opacity: .38;
	filter: blur(34px);
}
.product-card__media::after {
	/* "podloga" pod puszka jak w hero (zamiast zabkow biletu) */
	top: auto;
	bottom: 6%;
	left: 50%;
	right: auto;
	width: 60%;
	height: 22px;
	transform: translateX(-50%);
	background: radial-gradient(ellipse at center, rgba(0, 0, 0, .45), transparent 70%);
	background-size: auto;
}
.product-card__media img {
	inset: 1.5rem 2rem 1.75rem;
	width: calc(100% - 4rem) !important;
	height: calc(100% - 3.25rem) !important;
	filter: drop-shadow(0 18px 18px rgba(0, 0, 0, .45));
}
ul.products li.product:hover .product-card__media img,
.products-grid > li:hover .product-card__media img { transform: translateY(-6px) scale(1.04); rotate: -2deg; }
.product-card__abv {
	top: .9rem;
	right: .9rem;
	background: rgba(255, 255, 255, .1);
	border: 1px solid rgba(255, 255, 255, .16);
	color: #fff;
	box-shadow: none;
}
.product-card__style { color: var(--lav-text); letter-spacing: .08em; }
.product-card__title,
ul.products li.product h2,
ul.products li.product .woocommerce-loop-product__title {
	color: #fff !important;
	font-family: var(--font-display);
	font-weight: 800;
	font-stretch: 108%;
	letter-spacing: -.02em;
	font-size: 1.2rem !important;
	margin-bottom: .75rem;
}
.product-card__footer { padding-top: .85rem; border-top: 1px solid var(--line); }
.woocommerce ul.products li.product .price { color: #fff; font-size: 1.1rem; }
ul.products li.product .button,
.product-card__footer .button { padding: .55rem 1.05rem; font-size: .82rem; }
ul.products li.product .added_to_cart { color: var(--lav-text); }

/* paginacja */
.woocommerce-pagination .page-numbers {
	background: var(--night-2) !important;
	color: #fff !important;
	border: 1px solid var(--line) !important;
	box-shadow: none !important;
}
.woocommerce-pagination .page-numbers.current { background: var(--lav) !important; color: var(--purple-deep) !important; border-color: var(--lav) !important; }
.woocommerce-pagination .page-numbers:hover { border-color: var(--lav) !important; }

/* --------------------------------------------------------------------------
   Strona produktu
   -------------------------------------------------------------------------- */
.single-product .woocommerce { padding-top: clamp(2rem, 5vw, 3.5rem); gap: clamp(2rem, 5vw, 4.5rem); }
.product-media {
	background:
		radial-gradient(circle at 50% 46%, rgba(169, 131, 187, .24), transparent 62%),
		var(--night-2);
	border: 1px solid var(--line);
	box-shadow: var(--shadow-card);
}
.product-media::before { opacity: .32; filter: blur(50px); }
.product-media::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 7%;
	width: 50%;
	height: 34px;
	transform: translateX(-50%);
	background: radial-gradient(ellipse at center, rgba(0, 0, 0, .5), transparent 70%);
}
.product-media img { filter: drop-shadow(0 30px 28px rgba(0, 0, 0, .5)); }
.product_title {
	color: #fff;
	font-weight: 800;
	font-stretch: 110%;
	letter-spacing: -.035em;
	font-size: clamp(2.3rem, 4.6vw, 3.6rem);
}
.product-style-badge {
	background: rgba(201, 166, 220, .14);
	border: 1px solid var(--line-strong);
	color: var(--lav-text);
}
.single-product p.price, .single-product .summary .price { color: #fff !important; font-weight: 800; }
.product-facts {
	background: none;
	border: 0;
	border-top: 1px solid var(--line);
	border-bottom: 1px solid var(--line);
	border-radius: 0;
	box-shadow: none;
	padding: 1.1rem 0;
	gap: 2.5rem;
}
.product-facts__item dt { color: var(--lav-text); }
.product-facts__item dd { color: #fff; }
.single-product .stock { color: var(--lav-text) !important; font-weight: 600; }
.woocommerce-tabs ul.tabs { background: var(--night-2) !important; border: 1px solid var(--line); }
.woocommerce-tabs ul.tabs li { background: transparent !important; border: 0 !important; }
.woocommerce-tabs ul.tabs li a { color: rgba(255, 255, 255, .75) !important; }
.woocommerce-tabs ul.tabs li.active { background: var(--lav) !important; }
.woocommerce-tabs ul.tabs li.active a { color: var(--purple-deep) !important; }
.woocommerce-tabs .panel, .woocommerce-tabs .panel p { color: var(--muted); }
.woocommerce-tabs .panel h2 { color: #fff; }
.woocommerce-tabs table.shop_attributes th, .woocommerce-tabs table.shop_attributes td { color: #fff; border-color: var(--line) !important; background: transparent !important; }
.related.products h2, .upsells.products h2 { font-weight: 800; font-stretch: 108%; letter-spacing: -.03em; }

/* --------------------------------------------------------------------------
   Koszyk i zamowienie
   -------------------------------------------------------------------------- */
table.shop_table {
	background: var(--night-2) !important;
	border: 1px solid var(--line) !important;
	box-shadow: none !important;
	color: #fff;
}
table.shop_table th { background: rgba(255, 255, 255, .04) !important; color: var(--lav-text) !important; }
table.shop_table td { border-top: 1px solid var(--line) !important; color: #fff; }
table.shop_table td.product-name a { color: #fff; }
table.shop_table td.product-thumbnail img { background: rgba(255, 255, 255, .05); }
table.shop_table a.remove { color: var(--lav) !important; }
table.shop_table a.remove:hover { background: var(--lav) !important; color: var(--purple-deep) !important; }
.cart_totals {
	background: var(--night-2);
	border: 1px solid var(--line);
	box-shadow: none;
}
.cart_totals h2 { color: #fff; }
.cart_totals table td, .cart_totals table th { border-top: 1px solid var(--line) !important; color: #fff; background: transparent !important; }
.woocommerce-shipping-destination, .woocommerce-shipping-calculator a { color: var(--muted); }
.cart-empty.woocommerce-info { text-align: center; }
.return-to-shop { text-align: center; }

#customer_details, .woocommerce-checkout__order-review, #order_review {
	background: var(--night-2);
	border: 1px solid var(--line);
	box-shadow: none;
}
#order_review table.shop_table { background: transparent !important; border: 0 !important; }
#payment { background: rgba(255, 255, 255, .03) !important; border: 1px solid var(--line); border-radius: var(--radius-md); }
#payment .wc_payment_method { border-bottom-color: var(--line) !important; color: #fff; }
#payment .payment_box { background: var(--night-3) !important; color: var(--muted) !important; }
#payment .payment_box::before { border-bottom-color: var(--night-3) !important; }
#payment .payment_box p { color: var(--muted); }
.woocommerce-privacy-policy-text p, .woocommerce-terms-and-conditions-checkbox-text { color: var(--muted); }
.woocommerce-privacy-policy-text a, .woocommerce-terms-and-conditions-link { color: var(--lav-text); }
.woocommerce-form-coupon-toggle .woocommerce-info { margin-bottom: 1.25rem; }

/* --------------------------------------------------------------------------
   Moje konto
   -------------------------------------------------------------------------- */
.woocommerce-MyAccount-navigation a { color: rgba(255, 255, 255, .8); }
.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation a:hover { background: rgba(201, 166, 220, .16); color: #fff; }
.woocommerce-form-login, .woocommerce-form-register, .woocommerce-ResetPassword {
	background: var(--night-2);
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-lg) !important;
	padding: clamp(1.5rem, 3vw, 2.25rem) !important;
}
.woocommerce-form-login .lost_password a, .u-columns .woocommerce-LostPassword a { color: var(--lav-text); }

/* --------------------------------------------------------------------------
   Stopka i okienko 18+
   -------------------------------------------------------------------------- */
.site-footer {
	margin-top: 0;
	background: var(--night-deep);
	border-top: 1px solid var(--line);
}
.site-footer__nav a:hover { color: var(--lav-text); }
.site-footer__social a:hover { background: var(--lav); color: var(--purple-deep); }

/* 404 */
.error404 .content-page { padding: clamp(4rem, 10vw, 7rem) 1.5rem; }
.error404 .page-title { color: #fff; }

/* --------------------------------------------------------------------------
   Zdjecia na stronach O nas / Kontakt (moonlark_photo w functions.php)
   -------------------------------------------------------------------------- */
.ml-photo {
	position: relative;
	margin: 0;
	border-radius: var(--radius-lg);
	overflow: hidden;
	background: var(--night-2);
	border: 1px solid var(--line);
	min-height: 220px;
}
.ml-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ml-photo--empty {
	display: grid;
	place-items: center;
	text-align: center;
	padding: 1.5rem;
	background:
		radial-gradient(circle at 50% 40%, rgba(169, 131, 187, .16), transparent 65%),
		repeating-linear-gradient(135deg, rgba(255, 255, 255, .025) 0 12px, transparent 12px 24px),
		var(--night-2);
	border: 1px dashed var(--line-strong);
}
.ml-photo__icon { display: block; width: 40px; height: 40px; margin: 0 auto .75rem; color: var(--lav); }
.ml-photo__icon svg { width: 100%; height: 100%; }
.ml-photo figcaption strong { display: block; color: #fff; font-size: 1rem; margin-bottom: .25rem; }
.ml-photo figcaption span { display: block; color: rgba(255, 255, 255, .45); font-size: .78rem; }

/* --------------------------------------------------------------------------
   O nas
   -------------------------------------------------------------------------- */
.page-hero__lead {
	max-width: 36rem;
	margin: 1rem auto 0;
	font-size: clamp(1rem, 1.6vw, 1.15rem);
	color: var(--muted);
}
.about { padding-bottom: clamp(3rem, 7vw, 6rem); }
.about-intro {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: clamp(2rem, 5vw, 4.5rem);
	align-items: center;
}
.about-intro__photo { aspect-ratio: 4 / 5; }
.about-lead {
	font-family: var(--font-display);
	font-weight: 700;
	font-stretch: 105%;
	letter-spacing: -.02em;
	font-size: clamp(1.35rem, 2.2vw, 1.75rem);
	line-height: 1.3;
	color: #fff;
	margin-bottom: 2rem;
}
.about-intro__text h2 {
	font-size: 1.15rem;
	font-weight: 700;
	color: var(--lav-text);
	margin: 1.75rem 0 .5rem;
	letter-spacing: -.01em;
}
.about-intro__text p { line-height: 1.75; }

.about-gallery {
	display: grid;
	grid-template-columns: 1.3fr 1fr 1fr;
	grid-template-rows: 260px 260px;
	gap: 1rem;
	margin-top: clamp(3rem, 7vw, 5.5rem);
}
.about-gallery__a { grid-row: span 2; }
.about-gallery__d { grid-column: span 2; }
.about-gallery .ml-photo { min-height: 0; }

.about-mark {
	text-align: center;
	margin-top: clamp(4rem, 9vw, 7rem);
}
.about-mark img { width: min(260px, 60%); margin: 0 auto 1.75rem; height: auto; }
.about-mark__quote {
	font-family: var(--font-display);
	font-weight: 800;
	font-stretch: 108%;
	letter-spacing: -.035em;
	font-size: clamp(1.9rem, 4vw, 3.2rem);
	line-height: 1.08;
	color: #fff;
	margin: 0 auto 2rem;
	max-width: 22ch;
}
.about-mark__quote span {
	background: linear-gradient(180deg, #f3e6fb 0%, #c9a6dc 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.about-mark__actions, .contact-place__actions { display: flex; gap: .75rem; justify-content: center; flex-wrap: wrap; }

/* --------------------------------------------------------------------------
   Kontakt
   -------------------------------------------------------------------------- */
.contact { padding-bottom: clamp(3rem, 7vw, 6rem); }
.contact-cards {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.25rem;
}
.contact-card {
	position: relative;
	padding: clamp(1.5rem, 3vw, 2.25rem);
	border-radius: var(--radius-lg);
	background:
		radial-gradient(16rem 10rem at 0% 0%, rgba(169, 131, 187, .16), transparent 70%),
		var(--night-2);
	border: 1px solid var(--line);
	transition: border-color .25s var(--ease), transform .25s var(--ease);
}
.contact-card:hover { border-color: var(--line-strong); transform: translateY(-3px); }
.contact-card__icon {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	margin-bottom: 1.25rem;
	border-radius: 50%;
	border: 1px solid var(--line-strong);
	color: var(--lav);
}
.contact-card__icon svg { width: 24px; height: 24px; }
.contact-card h2 { font-size: 1.2rem; font-weight: 700; margin: 0 0 .4rem; letter-spacing: -.015em; }
.contact-card p { margin: 0 0 1.25rem; font-size: .95rem; }
.contact-card__mail {
	display: inline-block;
	font-weight: 700;
	color: var(--lav-text);
	border-bottom: 1px solid rgba(217, 189, 234, .4);
	padding-bottom: 2px;
	word-break: break-all;
}
.contact-card__mail:hover { color: #fff; border-bottom-color: #fff; }

.contact-place {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: clamp(2rem, 5vw, 4rem);
	align-items: stretch;
	margin-top: clamp(3rem, 6vw, 4.5rem);
}
.contact-place__info { align-self: center; }
.contact-place__info h2 {
	font-weight: 800;
	font-stretch: 108%;
	letter-spacing: -.03em;
	font-size: clamp(1.8rem, 3vw, 2.4rem);
	margin-bottom: 1rem;
}
.contact-place__address { color: #fff; font-size: 1.1rem; line-height: 1.7; margin-bottom: 1rem; }
.contact-place__address strong { font-family: var(--font-display); }
.contact-place__actions { justify-content: flex-start; margin: 1.75rem 0; }
.contact-place__social { display: flex; align-items: center; gap: .6rem; color: rgba(255, 255, 255, .55); font-size: .9rem; }
.contact-place__social span { margin-right: .4rem; }
.contact-place__social a {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1px solid var(--line-strong);
	color: #fff;
	transition: background .2s var(--ease), color .2s var(--ease);
}
.contact-place__social a:hover { background: var(--lav); color: var(--purple-deep); }
.contact-place__social svg { width: 18px; height: 18px; }
.contact-place__photo { min-height: 360px; }

@media (max-width: 900px) {
	.about-intro, .contact-place { grid-template-columns: 1fr; }
	.about-intro__photo { aspect-ratio: 4 / 3; }
	.about-gallery { grid-template-columns: 1fr 1fr; grid-template-rows: repeat(3, 200px); }
	.about-gallery__a { grid-row: span 1; grid-column: span 2; }
	.about-gallery__d { grid-column: span 2; }
	.contact-cards { grid-template-columns: 1fr; }
	.contact-place__photo { min-height: 240px; }
}

/* WooCommerce zeruje padding karty regula o wyzszej specyficznosci */
.woocommerce ul.products li.product,
ul.products li.product,
.products-grid > li { padding: 1rem 1.1rem 1.15rem !important; }
.product-facts { display: grid; grid-template-columns: repeat(3, auto); justify-content: start; gap: 2.5rem; }
.woocommerce-tabs ul.tabs::before,
.woocommerce-tabs ul.tabs li::before,
.woocommerce-tabs ul.tabs li::after { display: none !important; }
.single-product form.cart { margin-left: 0; }
.single-product form.cart .quantity { margin: 0 !important; }

/* nadpisanie starych regul .contact-card z main.css */
.contact .contact-card p { margin: 0 0 1.25rem; color: var(--muted); }
.contact .contact-card { box-shadow: none; }
.contact .contact-card:hover { box-shadow: none; }
.contact .contact-card__icon { background: rgba(201, 166, 220, .1); color: var(--lav); box-shadow: none; }
.cart_totals { width: min(100%, 420px); }
.cart_totals table th { width: 38%; }
.cart-collaterals { display: flex; justify-content: flex-end; }
.cart_totals { width: 420px; max-width: 100%; min-width: 0; }
td.actions .coupon input#coupon_code { width: 190px !important; padding: .6rem 1rem; }

/* --------------------------------------------------------------------------
   Telefon
   -------------------------------------------------------------------------- */
@media (max-width: 760px) {
	/* filtr stylow w jednym przewijanym rzedzie */
	.shop-filter {
		flex-wrap: nowrap;
		justify-content: flex-start;
		overflow-x: auto;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
		padding-bottom: .25rem;
	}
	.shop-filter::-webkit-scrollbar { display: none; }
	.shop-filter a { flex: none; }
	.shop-toolbar { flex-direction: column; align-items: stretch; gap: .6rem; }
	.shop-toolbar .woocommerce-ordering, .woocommerce-ordering select { width: 100%; }
	/* dwie karty obok siebie */
	.products-grid, ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: .75rem !important; }
	.woocommerce ul.products li.product, ul.products li.product, .products-grid > li { padding: .75rem .8rem .9rem !important; border-radius: 18px; }
	.product-card__media { margin: -.75rem -.8rem .6rem; }
	.product-card__media img { inset: 1rem 1.1rem 1.25rem; width: calc(100% - 2.2rem) !important; height: calc(100% - 2.25rem) !important; }
	.product-card__abv { top: .55rem; right: .55rem; font-size: .66rem; }
	.product-card__style { font-size: .62rem; }
	.product-card__title, ul.products li.product h2 { font-size: 1rem !important; margin-bottom: .5rem; }
	.product-card__footer { flex-direction: column; align-items: stretch; gap: .5rem; padding-top: .6rem; }
	ul.products li.product .button, .product-card__footer .button { width: 100%; justify-content: center; }
	/* galeria O nas jedna pod druga */
	.about-gallery { grid-template-columns: 1fr; grid-template-rows: none; grid-auto-rows: 220px; }
	.about-gallery__a, .about-gallery__d { grid-row: auto; grid-column: auto; }
	.product-facts { gap: 1.25rem; }
}
.single-product form.cart { padding: 0 !important; }
/* clearfix WooCommerce zajmowal miejsce w ukladzie flex przed polem ilosci */
.single-product form.cart::before,
.single-product form.cart::after { content: none !important; display: none !important; }
@media (max-width: 760px) {
	.woocommerce-tabs ul.tabs { display: flex; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
	.woocommerce-tabs ul.tabs li { flex: none; }
}

/* --------------------------------------------------------------------------
   Okienko 18+ - w stylu strony (ciemne, lawenda)
   -------------------------------------------------------------------------- */
.age-gate {
	background: rgba(20, 14, 26, .78);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	z-index: 1000;
}
html.age-locked, html.age-locked body { overflow: hidden; }
.age-gate__box {
	position: relative;
	overflow: hidden;
	max-width: 28rem;
	width: 100%;
	padding: clamp(2rem, 5vw, 3rem) clamp(1.5rem, 4vw, 2.75rem) 1.75rem;
	text-align: center;
	color: #fff;
	background:
		radial-gradient(22rem 14rem at 50% 0%, rgba(169, 131, 187, .3), transparent 70%),
		var(--night-2);
	border: 1px solid var(--line-strong);
	border-radius: var(--radius-xl);
	box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .8);
}
.age-gate__box img { width: 120px; height: auto; margin: 0 auto 1.25rem; }
.age-gate__box h2, .age-gate__box h3 {
	color: #fff;
	font-weight: 800;
	font-stretch: 108%;
	letter-spacing: -.03em;
	font-size: clamp(1.5rem, 4vw, 1.9rem);
	margin: 0 0 .6rem;
}
.age-gate__box p { color: var(--muted); margin: 0; }
.age-gate__actions { margin-top: 1.75rem; }
.age-gate__actions .btn { min-width: 8.5rem; }
.age-gate__box .btn--glass { color: #fff !important; border-color: rgba(255, 255, 255, .3) !important; background: rgba(255, 255, 255, .06) !important; }
.age-gate__note {
	margin-top: 1.75rem !important;
	padding-top: 1rem;
	border-top: 1px solid var(--line);
	font-size: .8rem;
	color: rgba(255, 255, 255, .45) !important;
}
.age-gate [hidden] { display: none !important; }

/* oswiadczenie 18+ przy zamowieniu */
.moonlark-age-confirm {
	margin: 1rem 0 .25rem;
	padding: .85rem 1rem;
	border-radius: var(--radius-sm);
	border: 1px solid var(--line-strong);
	background: rgba(201, 166, 220, .08);
}
.moonlark-age-confirm label { display: flex !important; align-items: center; gap: .6rem; margin: 0 !important; color: #fff !important; font-weight: 600; }

/* ostrzezenie w stopce */
.site-footer__warning {
	max-width: var(--container-w);
	margin: 0 auto;
	padding: 1rem 1.5rem;
	text-align: center;
	font-family: var(--font-display);
	font-weight: 700;
	font-size: clamp(.95rem, 1.6vw, 1.1rem);
	color: #fff;
	border-top: 1px solid var(--line);
}
.woocommerce-error, .woocommerce-message, .woocommerce-info { padding-left: 3.25rem !important; }
.woocommerce-error li a, .woocommerce-error strong { color: #fff; text-decoration: none; }

/* ==========================================================================
   v11 - produkt, koszyk, zamowienie: porzadek, odstepy, nowoczesny uklad
   ========================================================================== */

/* --- Powiadomienia "dodano do koszyka" jako dymek w rogu (produkt, sklep) --- */
.single-product .woocommerce-notices-wrapper,
.post-type-archive-product .woocommerce-notices-wrapper,
.tax-product_cat .woocommerce-notices-wrapper {
	position: fixed;
	right: clamp(1rem, 3vw, 2rem);
	bottom: clamp(1rem, 3vw, 2rem);
	z-index: 600;
	width: min(400px, calc(100vw - 2rem));
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
	pointer-events: none;
}
.single-product .woocommerce-notices-wrapper > *,
.post-type-archive-product .woocommerce-notices-wrapper > *,
.tax-product_cat .woocommerce-notices-wrapper > * {
	pointer-events: auto;
	margin: 0 !important;
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .75rem;
	padding: 1rem 1.1rem 1rem 3rem !important;
	border-radius: var(--radius-md) !important;
	border: 1px solid var(--line-strong) !important;
	border-left: 1px solid var(--line-strong) !important;
	background: rgba(43, 32, 53, .96) !important;
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	box-shadow: 0 24px 50px -20px rgba(0, 0, 0, .8) !important;
	font-size: .92rem;
	animation: ml-toast-in .45s var(--ease) both, ml-toast-out .5s var(--ease) 6s forwards;
}
.single-product .woocommerce-notices-wrapper .button,
.post-type-archive-product .woocommerce-notices-wrapper .button,
.tax-product_cat .woocommerce-notices-wrapper .button {
	order: 2;
	float: none !important;
	padding: .5rem 1rem !important;
	font-size: .82rem !important;
}
@keyframes ml-toast-in { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@keyframes ml-toast-out { to { opacity: 0; transform: translateY(16px); visibility: hidden; } }
.single-product .woocommerce-notices-wrapper:empty { display: none; }

/* --- Strona produktu --- */
.single-product .woocommerce {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: clamp(2rem, 5vw, 5rem);
	padding-top: clamp(1.5rem, 3vw, 2.5rem);
	padding-bottom: clamp(3rem, 6vw, 5rem);
}
.single-product .product-media {
	position: sticky;
	top: 96px;
	grid-row: 1;
	aspect-ratio: 1 / 1.08;
}
.single-product .summary.entry-summary { grid-row: 1; padding-top: .25rem; }
.product-back {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	margin-bottom: 1.25rem;
	font-size: .88rem;
	font-weight: 600;
	color: rgba(255, 255, 255, .6);
	transition: color .2s var(--ease);
}
.product-back svg { width: 16px; height: 16px; }
.product-back:hover { color: #fff; }
.product-style-badge { margin-bottom: .75rem; }
.product_title { margin-bottom: .35rem !important; line-height: 1.02; }
.single-product .summary .price { font-size: clamp(1.5rem, 2.4vw, 1.9rem) !important; margin: 0 0 1.5rem !important; }
.product-facts {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin: 0 0 1.5rem;
	padding: 1.1rem 0;
}
.product-facts__item dd { white-space: nowrap; font-size: 1.1rem; }
.single-product .stock { margin: 0 0 .75rem; font-size: .9rem; }
.single-product form.cart {
	display: flex;
	align-items: stretch;
	gap: .75rem;
	margin: 0 0 2rem;
	flex-wrap: nowrap;
}
.single-product form.cart .quantity input.qty {
	width: 4.5rem;
	height: 100%;
	min-height: 54px;
	text-align: center;
	font-weight: 700;
	font-size: 1.05rem;
	border-radius: var(--radius-pill) !important;
}
.single-product .single_add_to_cart_button {
	flex: 1;
	min-height: 54px;
	font-size: 1rem !important;
	padding: .9rem 1.5rem !important;
}
.product-story {
	padding-top: 1.75rem;
	border-top: 1px solid var(--line);
}
.product-story h2 {
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: -.01em;
	color: var(--lav-text);
	margin: 0 0 .6rem;
}
.product-story h3 {
	font-size: .95rem;
	font-weight: 700;
	color: var(--lav-text);
	margin: 1.4rem 0 .4rem;
}
.product-story p { line-height: 1.75; margin: 0 0 .75rem; }
.single-product .related.products { margin-top: clamp(3rem, 7vw, 5rem); padding-top: clamp(2rem, 4vw, 3rem); border-top: 1px solid var(--line); }
.single-product .related.products > h2 { text-align: center; font-size: clamp(1.6rem, 3vw, 2.2rem); margin-bottom: 2rem; }
@media (max-width: 860px) {
	.single-product .woocommerce { grid-template-columns: 1fr; }
	.single-product .product-media { position: relative; top: auto; grid-row: 1; aspect-ratio: 1 / 1; }
	.single-product .summary.entry-summary { grid-row: 2; }
}

/* --- Kompaktowe naglowki: koszyk, zamowienie, konto --- */
.woocommerce-cart .page-hero,
.woocommerce-checkout .page-hero,
.woocommerce-account .page-hero { margin-bottom: 0; }
.woocommerce-cart .page-hero__inner,
.woocommerce-checkout .page-hero__inner,
.woocommerce-account .page-hero__inner { padding: clamp(1.75rem, 4vw, 2.75rem) 1.5rem clamp(1rem, 2vw, 1.5rem); }
.woocommerce-cart .page-hero__eyebrow,
.woocommerce-checkout .page-hero__eyebrow,
.woocommerce-account .page-hero__eyebrow { display: none; }
.woocommerce-cart .page-hero .page-title,
.woocommerce-checkout .page-hero .page-title,
.woocommerce-account .page-hero .page-title { font-size: clamp(2rem, 4vw, 2.8rem) !important; }
.woocommerce-cart .content-page,
.woocommerce-checkout .content-page { padding-bottom: clamp(3rem, 6vw, 5rem); }
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce { padding-top: 0 !important; }

/* --- Pasek krokow --- */
.ml-steps {
	list-style: none;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: .5rem;
	margin: 0 auto clamp(1.75rem, 3.5vw, 2.5rem) !important;
	padding: 0 !important;
	grid-column: 1 / -1;
}
.ml-steps li { display: flex; align-items: center; gap: .5rem; color: rgba(255, 255, 255, .45); font-weight: 600; font-size: .9rem; }
.ml-steps li a { display: flex; align-items: center; gap: .5rem; color: inherit; }
.ml-steps li + li::before {
	content: "";
	width: clamp(1.5rem, 5vw, 3.5rem);
	height: 1px;
	margin-right: .5rem;
	background: var(--line-strong);
}
.ml-steps__num {
	display: grid;
	place-items: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 1px solid var(--line-strong);
	font-size: .78rem;
}
.ml-steps li.is-current { color: #fff; }
.ml-steps li.is-current .ml-steps__num { background: var(--lav); border-color: var(--lav); color: var(--purple-deep); }
.ml-steps li.is-done { color: var(--lav-text); }
.ml-steps li.is-done .ml-steps__num { border-color: var(--lav); color: var(--lav); }
@media (max-width: 560px) { .ml-steps li:not(.is-current) .ml-steps__label { display: none; } }

/* --- Koszyk: lista po lewej, podsumowanie po prawej --- */
.woocommerce-cart div.woocommerce:has(.woocommerce-cart-form) {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
	gap: clamp(1.25rem, 3vw, 2.5rem);
	align-items: start;
}
.woocommerce-cart div.woocommerce:has(.woocommerce-cart-form) > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-cart .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-cart .cart-collaterals { display: block; position: sticky; top: 96px; }
.woocommerce-cart .cart_totals { width: 100%; padding: 1.5rem; border-radius: var(--radius-lg); }
.cart_totals h2 { font-size: 1.25rem; font-weight: 800; letter-spacing: -.02em; margin: 0 0 1rem; }
.cart_totals table, .cart_totals table.shop_table { border: 0 !important; background: transparent !important; margin: 0 0 1.25rem !important; }
.cart_totals table th { padding: .8rem 0 !important; color: rgba(255, 255, 255, .6) !important; font-size: .85rem; text-transform: none; letter-spacing: 0; background: transparent !important; width: 40%; font-family: var(--font-body); font-weight: 600; }
.cart_totals table td { padding: .8rem 0 !important; text-align: right; }
.cart_totals .order-total th, .cart_totals .order-total td { color: #fff !important; font-size: 1.1rem; font-weight: 800; border-top: 1px solid var(--line-strong) !important; }
.woocommerce-shipping-destination, .woocommerce-shipping-calculator { display: none !important; }
.woocommerce-shipping-methods { list-style: none; margin: 0; padding: 0; }
.wc-proceed-to-checkout { padding: 0 !important; margin: 0 !important; }
.wc-proceed-to-checkout .checkout-button { width: 100%; min-height: 54px; font-size: 1rem !important; margin: 0 !important; }

table.shop_table.cart { border-radius: var(--radius-lg) !important; overflow: hidden; margin: 0 !important; }
table.shop_table.cart thead th {
	background: transparent !important;
	color: rgba(255, 255, 255, .5) !important;
	font-family: var(--font-body);
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: .06em;
	padding: 1rem 1.25rem !important;
}
table.shop_table.cart td { padding: 1.1rem 1.25rem !important; vertical-align: middle; }
table.shop_table.cart td.product-thumbnail img { width: 64px !important; border-radius: 12px; padding: .3rem; }
table.shop_table.cart td.product-name a { text-decoration: none; font-weight: 700; font-size: 1.05rem; }
table.shop_table.cart td.product-name a:hover { color: var(--lav-text); }
table.shop_table.cart td.product-subtotal { font-weight: 700; color: #fff; }
table.shop_table.cart a.remove {
	display: grid !important;
	place-items: center;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	border: 1px solid var(--line-strong);
	font-size: 1.1rem !important;
	line-height: 1;
}
table.shop_table.cart td.actions { background: rgba(255, 255, 255, .02); padding: 1rem 1.25rem !important; }
td.actions .coupon { align-items: center; }
td.actions .coupon .button, td.actions > .button {
	background: transparent !important;
	color: #fff !important;
	border: 1px solid var(--line-strong) !important;
	box-shadow: none !important;
	padding: .6rem 1.1rem !important;
	font-size: .85rem !important;
}
td.actions > .button[disabled] { opacity: .45; }
td.actions .coupon .button:hover, td.actions > .button:not([disabled]):hover { border-color: var(--lav) !important; background: rgba(201, 166, 220, .1) !important; }
@media (max-width: 960px) {
	.woocommerce-cart div.woocommerce:has(.woocommerce-cart-form) { grid-template-columns: 1fr; }
	.woocommerce-cart .cart-collaterals { position: static; }
}

/* --- Zamowienie --- */
.woocommerce-checkout form.checkout { gap: clamp(1.25rem, 3vw, 2.5rem); }
.woocommerce-checkout form.checkout > #order_review { top: 96px; }
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	display: flex;
	align-items: center;
	gap: .5rem;
	padding: .9rem 1.1rem .9rem 3rem !important;
	font-size: .92rem;
	border-left: 1px solid var(--line) !important;
	border-radius: var(--radius-md) !important;
}
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a { margin-left: auto; font-weight: 600; }
#customer_details, #order_review { padding: clamp(1.25rem, 2.5vw, 1.75rem) !important; border-radius: var(--radius-lg) !important; }
.woocommerce-billing-fields h3, .woocommerce-additional-fields h3, #order_review_heading, #ship-to-different-address {
	font-size: 1.15rem !important;
	font-weight: 800;
	letter-spacing: -.02em;
	color: #fff;
	margin: 0 0 1.1rem !important;
}
#order_review_heading { padding-left: .25rem; }
.woocommerce-checkout .form-row { margin-bottom: .9rem; }
.woocommerce-checkout .form-row label { font-size: .85rem; color: rgba(255, 255, 255, .75) !important; margin-bottom: .3rem; }
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .select2-container .select2-selection--single,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea { min-height: 46px; padding: .7rem .9rem !important; border-radius: 12px !important; }
.woocommerce-checkout .select2-container .select2-selection__rendered { line-height: 1.6 !important; }
#order_review table.shop_table th, #order_review table.shop_table td { padding: .75rem .25rem !important; background: transparent !important; }
#order_review table.shop_table thead th { color: rgba(255, 255, 255, .5) !important; font-family: var(--font-body); font-size: .75rem; font-weight: 600; }
#order_review table.shop_table tfoot th { color: rgba(255, 255, 255, .6) !important; font-family: var(--font-body); font-weight: 600; text-transform: none; letter-spacing: 0; font-size: .88rem; }
#order_review table.shop_table tfoot td { text-align: right; }
#order_review .order-total th, #order_review .order-total td { color: #fff !important; font-size: 1.1rem; font-weight: 800; border-top: 1px solid var(--line-strong) !important; }
#payment {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	margin-top: 1rem;
}
#payment ul.payment_methods { padding: 0 !important; border: 0 !important; margin: 0 0 1rem !important; }
#payment .wc_payment_method {
	padding: .9rem 1rem !important;
	border: 1px solid var(--line-strong) !important;
	border-radius: var(--radius-md);
	background: rgba(201, 166, 220, .06);
	list-style: none;
}
#payment .wc_payment_method label { font-weight: 700; color: #fff; }
#payment .payment_box {
	background: transparent !important;
	padding: .35rem 0 0 !important;
	margin: 0 !important;
	font-size: .88rem;
}
#payment .payment_box::before { display: none !important; }
#payment div.form-row.place-order { padding: 0 !important; margin: 0 !important; }
.woocommerce-privacy-policy-text p { font-size: .85rem; line-height: 1.6; margin-bottom: 1rem; }
.woocommerce-terms-and-conditions-wrapper .form-row,
.moonlark-age-confirm {
	margin: 0 0 .6rem !important;
	padding: .8rem 1rem !important;
	border: 1px solid var(--line-strong);
	border-radius: var(--radius-md);
	background: rgba(201, 166, 220, .06);
}
.woocommerce-terms-and-conditions-wrapper .form-row label,
.moonlark-age-confirm label {
	display: flex !important;
	align-items: center;
	gap: .65rem;
	margin: 0 !important;
	font-size: .9rem !important;
	font-weight: 600;
	color: #fff !important;
	line-height: 1.4;
}
.woocommerce-terms-and-conditions-wrapper input[type="checkbox"],
.moonlark-age-confirm input[type="checkbox"] {
	flex: none;
	width: 18px;
	height: 18px;
	accent-color: var(--lav);
	margin: 0 !important;
}
#place_order { min-height: 56px; font-size: 1.02rem !important; margin-top: .75rem !important; }
@media (max-width: 900px) { .woocommerce-checkout form.checkout > #order_review { position: static; } }
.woocommerce div.product div.summary,
.woocommerce div.product div.images,
.single-product .summary.entry-summary { width: auto !important; float: none !important; max-width: 34rem; }
.product-back { display: flex; width: max-content; }
/* WooCommerce ustawia podsumowaniu float + 48% szerokosci */
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals { float: none !important; width: 100% !important; }
.woocommerce .cart-collaterals::before, .woocommerce .cart-collaterals::after { display: none !important; }

/* ==========================================================================
   v12 – O nas / Kontakt: pierwszy ekran w dwoch kolumnach
   ========================================================================== */
.split-hero {
	background:
		radial-gradient(50rem 30rem at 85% 0%, rgba(169, 131, 187, .22), transparent 65%),
		radial-gradient(40rem 26rem at 0% 100%, rgba(169, 131, 187, .10), transparent 70%),
		linear-gradient(180deg, var(--night-deep) 0%, var(--night) 100%);
	border-bottom: 1px solid var(--line);
}
.split-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
	gap: clamp(2rem, 5vw, 5rem);
	align-items: center;
	min-height: min(calc(100svh - 76px), 760px);
	padding-block: clamp(2rem, 5vh, 3.5rem);
}
.split-hero .page-hero__eyebrow { margin-bottom: 1.25rem; }
.split-hero__title {
	font-family: var(--font-display);
	font-weight: 800;
	font-stretch: 108%;
	letter-spacing: -.04em;
	line-height: .98;
	font-size: clamp(2.6rem, 5.4vw, 4.6rem);
	color: #fff;
	margin: 0 0 1.4rem;
}
.split-hero__title span {
	background: linear-gradient(180deg, #f3e6fb 0%, #c9a6dc 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.split-hero__lead {
	max-width: 30rem;
	font-size: clamp(1rem, 1.4vw, 1.1rem);
	line-height: 1.7;
	color: var(--muted);
	margin: 0 0 2rem;
}
.split-hero__facts {
	display: flex;
	gap: clamp(1.5rem, 3.5vw, 3rem);
	margin: 0 0 2.25rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--line);
	max-width: 30rem;
}
.split-hero__facts dt {
	font-family: var(--font-display);
	font-weight: 800;
	font-size: 1.35rem;
	letter-spacing: -.02em;
	color: #fff;
}
.split-hero__facts dd { margin: .15rem 0 0; font-size: .82rem; color: var(--muted); }
.split-hero__actions { display: flex; gap: .75rem; flex-wrap: wrap; }
.split-hero__photo {
	width: 100%;
	height: min(calc(100svh - 76px - 6rem), 600px);
	min-height: 340px;
	border-radius: 28px;
}

/* O nas – trzy filary bez boxow */
.about { padding-top: clamp(3.5rem, 8vw, 6rem); }
.about-values {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1.5rem, 4vw, 3.5rem);
}
.about-values article { padding-top: 1.5rem; border-top: 1px solid var(--line-strong); }
.about-values__no {
	display: block;
	font-family: var(--font-display);
	font-weight: 800;
	font-size: .85rem;
	letter-spacing: .1em;
	color: var(--lav);
	margin-bottom: 1rem;
}
.about-values h2 { font-size: 1.3rem; font-weight: 700; letter-spacing: -.02em; color: #fff; margin: 0 0 .6rem; }
.about-values p { margin: 0; line-height: 1.7; color: var(--muted); }
.about-gallery { margin-top: clamp(3.5rem, 8vw, 6rem); }

/* Kontakt – lista zamiast trzech boxow */
.contact-list {
	list-style: none;
	margin: 0;
	padding: .5rem;
	border-radius: 28px;
	background: rgba(255, 255, 255, .035);
	border: 1px solid var(--line);
	backdrop-filter: blur(8px);
}
.contact-list li + li { border-top: 1px solid var(--line); }
.contact-list__row {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr) auto;
	gap: 1.1rem;
	align-items: center;
	padding: 1.4rem 1.25rem;
	border-radius: 20px;
	color: inherit;
	text-decoration: none;
	transition: background .2s var(--ease);
}
.contact-list__row:hover { background: rgba(201, 166, 220, .08); }
.contact-list__icon {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: rgba(201, 166, 220, .1);
	border: 1px solid var(--line-strong);
	color: var(--lav);
}
.contact-list__icon svg { width: 22px; height: 22px; }
.contact-list__body { display: grid; gap: .2rem; min-width: 0; }
.contact-list__body strong { color: #fff; font-size: 1.05rem; letter-spacing: -.01em; }
.contact-list__body span { color: var(--muted); font-size: .9rem; line-height: 1.5; }
.contact-list__body em { font-style: normal; font-weight: 700; color: var(--lav-text); font-size: .95rem; margin-top: .3rem; overflow-wrap: anywhere; }
.contact-list__arrow {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1px solid var(--line-strong);
	color: #fff;
	transition: background .2s var(--ease), color .2s var(--ease), transform .2s var(--ease);
}
.contact-list__row:hover .contact-list__arrow { background: var(--lav); color: var(--night-deep); transform: translateX(3px); }
.contact { padding-top: clamp(3.5rem, 8vw, 6rem); }
.contact .contact-place { margin-top: 0; }

@media (max-width: 900px) {
	.split-hero__grid { grid-template-columns: 1fr; min-height: 0; padding-block: 2.5rem 3rem; }
	.split-hero__photo { height: auto; aspect-ratio: 4 / 3; min-height: 0; }
	.about-values { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
	.split-hero__facts { gap: 1.25rem; }
	.split-hero__facts dt { font-size: 1.1rem; }
	.contact-list__row { grid-template-columns: 40px minmax(0, 1fr); padding: 1.1rem .9rem; }
	.contact-list__icon { width: 40px; height: 40px; }
	.contact-list__arrow { display: none; }
}

/* ==========================================================================
   v12 – kupon w podsumowaniu (koszyk i zamowienie)
   ========================================================================== */
.woocommerce-cart td.actions .coupon,
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout form.checkout_coupon { display: none !important; }
.ml-coupon { margin: 0 0 1.25rem; }
.ml-coupon__toggle {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	padding: 0;
	background: none;
	border: 0;
	color: var(--lav-text);
	font: inherit;
	font-size: .92rem;
	font-weight: 600;
	cursor: pointer;
}
.ml-coupon__toggle::after { content: "+"; font-size: 1.1rem; line-height: 1; transition: transform .2s var(--ease); }
.ml-coupon.is-open .ml-coupon__toggle::after { transform: rotate(45deg); }
.ml-coupon__toggle:hover { color: #fff; }
.ml-coupon__form { display: none; gap: .5rem; margin-top: .85rem; }
.ml-coupon.is-open .ml-coupon__form { display: flex; }
.ml-coupon__form input {
	flex: 1;
	min-width: 0;
	height: 46px;
	padding: 0 1rem !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, .05) !important;
	border: 1px solid var(--line-strong) !important;
	color: #fff !important;
	font-size: .92rem;
}
.ml-coupon__form button {
	flex: none;
	height: 46px;
	padding: 0 1.2rem;
	border-radius: 999px;
	background: rgba(201, 166, 220, .14);
	border: 1px solid var(--line-strong);
	color: #fff;
	font: inherit;
	font-size: .88rem;
	font-weight: 700;
	cursor: pointer;
	transition: background .2s var(--ease);
}
.ml-coupon__form button:hover { background: rgba(201, 166, 220, .26); }
.ml-coupon__form button[disabled] { opacity: .5; cursor: wait; }
.ml-coupon__msg { margin-top: .6rem; font-size: .85rem; color: var(--muted); }
.ml-coupon__msg.is-error { color: #f0a3b4; }
.ml-coupon__msg.is-ok { color: #b9e4c4; }
.ml-coupon__msg ul, .ml-coupon__msg li { list-style: none; margin: 0; padding: 0; }
.ml-coupon__msg .woocommerce-error, .ml-coupon__msg .woocommerce-message, .ml-coupon__msg .woocommerce-info {
	all: unset; display: block;
}
/* w koszyku przelicza sie samo – przycisk aktualizacji niepotrzebny */
.woocommerce-cart table.cart tr:has(td.actions) { display: none; }
.woocommerce-checkout .ml-coupon { padding: 1.1rem 0 .25rem; border-top: 1px solid var(--line); margin: 1rem 0 1.25rem; }
.split-hero__text { text-align: left; }
.split-hero .page-hero__eyebrow { display: flex; justify-content: flex-start; width: max-content; margin-left: 0; margin-right: 0; }
/* naglowek "Twoje zamowienie" przyklejony do ramki podsumowania */
.woocommerce-checkout #order_review_heading { margin: 0 0 1rem !important; padding: 0 !important; }
.woocommerce-checkout #order_review { margin-top: 0 !important; }
.woocommerce-checkout form.checkout { row-gap: 0 !important; }
.woocommerce-checkout #order_review_heading { align-self: end; margin-bottom: .9rem !important; padding-left: .25rem !important; }

/* ==========================================================================
   v13 – koszyk i zamowienie na telefonie
   ========================================================================== */
/* na stronie koszyka przycisk "Zobacz koszyk" w powiadomieniu nie ma sensu */
.woocommerce-cart .woocommerce-message .wc-forward { display: none !important; }
@media (max-width: 760px) {
	.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message,
	.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message,
	.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-info {
		margin: 0 0 1rem !important;
		padding: .8rem 1rem .8rem 2.6rem !important;
		font-size: .9rem;
		line-height: 1.45;
		border-width: 1px !important;
		border-radius: 14px !important;
		box-shadow: none !important;
		outline: 0 !important;
	}
	.woocommerce-cart .page-hero__inner,
	.woocommerce-checkout .page-hero__inner { padding: 1.25rem 1rem .75rem; }
	.woocommerce-cart .page-hero .page-title,
	.woocommerce-checkout .page-hero .page-title { font-size: 1.9rem !important; }
	.ml-steps { gap: .35rem; font-size: .78rem; margin-bottom: 1.25rem; }
	.ml-steps li::after { width: 14px !important; margin: 0 .25rem !important; }

	/* wiersz produktu: miniatura | nazwa, cena, ilosc | usun, suma */
	.woocommerce-cart table.shop_table.cart,
	.woocommerce-cart table.shop_table.cart tbody { display: block; width: 100%; }
	.woocommerce-cart table.shop_table.cart thead { display: none; }
	.woocommerce-cart table.shop_table.cart tr.cart_item {
		display: grid !important;
		grid-template-columns: 64px minmax(0, 1fr) auto;
		grid-template-areas:
			"img name remove"
			"img price price"
			"img qty sum";
		column-gap: .9rem;
		row-gap: .2rem;
		align-items: center;
		padding: 1rem;
		border-bottom: 1px solid var(--line);
		background: none !important;
	}
	.woocommerce-cart table.shop_table.cart tr.cart_item td {
		display: block !important;
		padding: 0 !important;
		border: 0 !important;
		text-align: left !important;
		background: none !important;
	}
	.woocommerce-cart table.shop_table.cart tr.cart_item td::before { display: none !important; content: none !important; }
	.woocommerce-cart tr.cart_item td.product-thumbnail { grid-area: img; align-self: start; }
	.woocommerce-cart tr.cart_item td.product-thumbnail img { width: 64px !important; height: 80px !important; object-fit: contain; border-radius: 12px; background: rgba(255, 255, 255, .04); padding: 4px; }
	.woocommerce-cart tr.cart_item td.product-name { grid-area: name; font-size: 1.05rem; font-weight: 700; }
	.woocommerce-cart tr.cart_item td.product-name a { color: #fff; text-decoration: none; }
	.woocommerce-cart tr.cart_item td.product-price { grid-area: price; font-size: .85rem; color: var(--muted); }
	.woocommerce-cart tr.cart_item td.product-price::after { content: " / szt."; }
	.woocommerce-cart tr.cart_item td.product-quantity { grid-area: qty; margin-top: .4rem !important; }
	.woocommerce-cart tr.cart_item td.product-quantity .quantity { margin: 0 !important; }
	.woocommerce-cart tr.cart_item td.product-quantity input.qty { width: 64px !important; height: 38px; }
	.woocommerce-cart tr.cart_item td.product-subtotal { grid-area: sum; justify-self: end; margin-top: .4rem !important; font-weight: 800; color: #fff; }
	.woocommerce-cart tr.cart_item td.product-remove { grid-area: remove; justify-self: end; align-self: start; }
	.woocommerce-cart tr.cart_item td.product-remove a.remove { width: 30px; height: 30px; font-size: 1.1rem; }
	.woocommerce-cart .woocommerce-cart-form { padding: 0 !important; overflow: hidden; }

	/* podsumowanie */
	.woocommerce-cart .cart_totals { padding: 1.25rem !important; }
	.woocommerce-cart .cart_totals h2 { font-size: 1.2rem !important; }
	.woocommerce-cart .cart_totals table th,
	.woocommerce-cart .cart_totals table td { padding: .7rem 0 !important; font-size: .92rem; }
	.woocommerce-cart .cart_totals table td::before { display: none !important; }
	.woocommerce-cart .cart_totals table tr { display: flex !important; justify-content: space-between; align-items: baseline; gap: 1rem; }
	.woocommerce-cart .cart_totals table th { width: auto !important; }

	/* zamowienie */
	.woocommerce-checkout .col2-set .col-1,
	.woocommerce-checkout #order_review,
	.woocommerce-checkout .woocommerce-billing-fields { padding: 1.1rem !important; }
	.woocommerce-checkout form.checkout { gap: 1.25rem !important; }
	.woocommerce-checkout .form-row-first,
	.woocommerce-checkout .form-row-last { width: 100% !important; float: none !important; }
}
@media (max-width: 760px) {
	.woocommerce-checkout form.checkout { grid-template-columns: minmax(0, 1fr) !important; }
	.woocommerce-checkout form.checkout > * { min-width: 0; max-width: 100%; }
	.woocommerce-checkout #order_review table { width: 100% !important; table-layout: fixed; }
	/* podsumowanie koszyka: etykieta po lewej, kwota po prawej */
	.woocommerce-cart .cart_totals table th { display: none !important; }
	.woocommerce-cart .cart_totals table tr { display: block !important; }
	.woocommerce-cart .cart_totals table td {
		display: flex !important;
		justify-content: space-between;
		align-items: baseline;
		gap: 1rem;
		width: 100%;
		text-align: right !important;
	}
	.woocommerce-cart .cart_totals table td::before {
		display: block !important;
		content: attr(data-title) !important;
		float: none !important;
		color: var(--muted);
		font-weight: 600;
		text-align: left;
	}
	.woocommerce-cart .cart_totals tr.order-total td::before { color: #fff; }
}
@media (max-width: 760px) {
	.woocommerce-checkout .woocommerce-billing-fields,
	.woocommerce-checkout .woocommerce-shipping-fields,
	.woocommerce-checkout .woocommerce-additional-fields { padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; }
	.woocommerce-checkout .col2-set .col-1, .woocommerce-checkout .col2-set .col-2 { padding: 0 !important; width: 100% !important; float: none !important; }
	.woocommerce-checkout #customer_details { padding: 1.25rem 1.1rem !important; }
	.woocommerce-checkout .woocommerce-billing-fields h3 { margin-top: 0 !important; font-size: 1.2rem !important; }
	.ml-steps li { white-space: nowrap; }
	.ml-steps li:not(.is-current) .ml-steps__label { display: none; }
}

/* ==========================================================================
   v14 – telefon: zwarty naglowek sklepu, piwa widoczne od razu
   ========================================================================== */
@media (max-width: 760px) {
	.woocommerce-products-header { padding: 1.25rem 1rem .9rem !important; margin-bottom: .75rem !important; }
	.woocommerce-products-header .page-title { font-size: 2rem !important; margin-bottom: .35rem !important; }
	.woocommerce-products-header .shop-sub,
	.shop-sub { font-size: .9rem !important; margin: 0 !important; }
	.shop-filter { margin-bottom: .75rem !important; gap: .45rem !important; }
	.shop-filter a { padding: .5rem .9rem !important; font-size: .85rem !important; }
	.shop-toolbar { flex-direction: row !important; align-items: center !important; justify-content: space-between; gap: .6rem !important; margin-bottom: 1rem !important; }
	.shop-toolbar .woocommerce-result-count { font-size: .78rem !important; margin: 0 !important; line-height: 1.3; max-width: 42%; }
	.shop-toolbar .woocommerce-ordering { width: auto !important; flex: 1; margin: 0 !important; }
	.shop-toolbar .woocommerce-ordering select { width: 100% !important; font-size: .82rem !important; padding: .55rem .8rem !important; height: auto !important; }
}
/* karta "Nowe warzenia" na stronie glownej nie moze dotykac krawedzi ekranu */
@media (max-width: 760px) {
	.home-follow__inner { margin-left: 1rem !important; margin-right: 1rem !important; width: auto !important; padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
}
@media (max-width: 760px) {
	.shop-toolbar .woocommerce-result-count { display: none !important; }
	.shop-toolbar .woocommerce-ordering { width: 100% !important; }
}
/* strona piwa na telefonie: nizsza ramka zdjecia, cena i przycisk szybciej */
@media (max-width: 760px) {
	.single-product .product-media { aspect-ratio: auto !important; height: 250px !important; min-height: 0 !important; margin-top: 1rem !important; }
	.single-product .product-media img { height: 82% !important; width: auto !important; max-width: 60% !important; object-fit: contain; left: 50% !important; top: 50% !important; transform: translate(-50%, -52%) !important; }
	.single-product .product-back { margin: 1.1rem 0 .6rem !important; }
	.single-product .summary .product_title, .single-product h1.product_title { font-size: 2.1rem !important; }
}
@media (max-width: 420px) {
	.product-facts { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: .75rem !important; }
	.product-facts dd, .product-facts strong, .product-facts .product-facts__value { font-size: .98rem !important; white-space: normal !important; }
	.product-facts dt, .product-facts span:first-child { font-size: .66rem !important; }
}
@media (max-width: 420px) {
	.split-hero__title { font-size: clamp(1.9rem, 10vw, 2.4rem) !important; }
	.split-hero .page-hero__eyebrow { font-size: .62rem !important; letter-spacing: .1em !important; }
	.split-hero__facts { gap: 1rem !important; }
}
@media (max-width: 520px) {
	.split-hero__actions .btn, .about-mark__actions .btn, .contact-place__actions .btn { flex: 1 1 100%; justify-content: center; text-align: center; }
}
@media (max-width: 760px) {
	.about-gallery { grid-template-columns: 1fr 1fr !important; grid-template-rows: none !important; grid-auto-rows: 150px !important; gap: .6rem !important; }
	.about-gallery__a { grid-column: span 2 !important; grid-row: auto !important; }
	.about-gallery__b, .about-gallery__c { grid-column: auto !important; }
	.about-gallery__d { grid-column: span 2 !important; }
	.about-gallery .ml-photo--empty figcaption span { display: none; }
	.about-gallery .ml-photo__icon { width: 30px; height: 30px; margin-bottom: .4rem; }
	.about-gallery .ml-photo figcaption strong { font-size: .88rem; }
}
@media (max-width: 520px) {
	.contact-list { padding: .25rem !important; border-radius: 20px !important; }
	.contact-list__row { grid-template-columns: 34px minmax(0, 1fr) !important; gap: .8rem !important; padding: 1rem .85rem !important; align-items: start !important; }
	.contact-list__icon { width: 34px !important; height: 34px !important; margin-top: .1rem; }
	.contact-list__icon svg { width: 17px !important; height: 17px !important; }
	.contact-list__body strong { font-size: 1rem; line-height: 1.3; }
	.contact-list__body span { font-size: .85rem; }
	.contact-list__body em { font-size: .9rem; }
}
@media (max-width: 520px) {
	.contact-list__body em { font-size: .84rem !important; white-space: nowrap; overflow-wrap: normal !important; letter-spacing: -.01em; }
}
/* strony tekstowe (regulamin, polityki) na telefonie: marginesy i zwarty naglowek */
@media (max-width: 760px) {
	.container.content-page { padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
	.content-page .entry-content { font-size: .95rem; }
	.content-page .entry-content h2 { font-size: 1.3rem; margin-top: 2rem; }
	.page-hero__inner { padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
	.page-hero__eyebrow { font-size: .62rem !important; letter-spacing: .1em !important; white-space: nowrap; }
}
@media (max-width: 760px) {
	.woocommerce-account .woocommerce { padding-top: 1rem !important; }
	.woocommerce-account .woocommerce > h2, .woocommerce-account #customer_login h2 { margin: 0 0 .9rem !important; font-size: 1.4rem !important; }
	.woocommerce-account form.login, .woocommerce-account form.register { padding: 1.25rem 1.1rem !important; margin: 0 0 1.5rem !important; }
	.woocommerce-account .col2-set .col-1, .woocommerce-account .col2-set .col-2 { padding: 0 !important; width: 100% !important; float: none !important; }
}

/* ==========================================================================
   v14 – paginacja sklepu: osobne okragle przyciski
   ========================================================================== */
.woocommerce nav.woocommerce-pagination { margin: clamp(2rem, 4vw, 3rem) 0 0 !important; text-align: center; }
.woocommerce nav.woocommerce-pagination ul.page-numbers {
	display: inline-flex !important; flex-wrap: wrap; justify-content: center; gap: .5rem !important;
	border: 0 !important; margin: 0 !important; padding: 0 !important; background: none !important;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li { border: 0 !important; float: none !important; margin: 0 !important; overflow: visible !important; }
.woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers {
	display: grid !important; place-items: center; min-width: 44px; height: 44px; padding: 0 .9rem !important;
	border-radius: 999px !important; border: 1px solid var(--line-strong) !important;
	background: rgba(255, 255, 255, .03) !important; color: rgba(255, 255, 255, .8) !important;
	font-weight: 700; font-size: .95rem; line-height: 1; text-decoration: none;
	transition: background .2s, border-color .2s, color .2s;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li a.page-numbers:hover { background: rgba(201, 166, 220, .14) !important; border-color: var(--lav) !important; color: #fff !important; }
.woocommerce nav.woocommerce-pagination ul.page-numbers li span.current {
	background: var(--lav) !important; border-color: var(--lav) !important; color: var(--night-deep) !important;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li .dots { border-color: transparent !important; background: none !important; }
.ml-empty { display: flex; justify-content: center; padding: clamp(1rem, 3vw, 2rem) 0 clamp(3rem, 6vw, 5rem); }
/* po dodaniu do koszyka w karcie: bez dodatkowego linku "Zobacz koszyk" (rozjezdzal wysokosci kart) */
ul.products li.product a.added_to_cart { display: none !important; }
/* powiadomienia w koszyku na pelna szerokosc ukladu */
.woocommerce-cart div.woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; margin: 0; }
.woocommerce-cart div.woocommerce > .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-info { margin: 0 0 1.25rem !important; }
.woocommerce-cart div.woocommerce:has(.woocommerce-cart-form) { row-gap: 0 !important; }
.woocommerce-cart .ml-steps { margin-bottom: clamp(1.5rem, 3vw, 2.25rem) !important; }

/* ==========================================================================
   v14 – pola wyboru w stylu strony + gwiazdka obok tekstu
   ========================================================================== */
input[type="checkbox"], input[type="radio"] {
	accent-color: var(--lav);
	width: 18px; height: 18px;
	flex: none;
	cursor: pointer;
}
.woocommerce-checkout input[type="checkbox"]:not(:checked) {
	appearance: none; -webkit-appearance: none;
	border: 1.5px solid rgba(255, 255, 255, .35);
	border-radius: 5px;
	background: rgba(255, 255, 255, .04);
	margin: 0;
}
.woocommerce-checkout input[type="checkbox"]:not(:checked):hover { border-color: var(--lav); }
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox,
.woocommerce-checkout .moonlark-age-confirm label {
	display: flex !important; align-items: flex-start; gap: .7rem;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text { flex: 0 1 auto; }
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .required,
.woocommerce-checkout .moonlark-age-confirm .required { position: static !important; margin-left: .15rem; float: none !important; }
#ship-to-different-address label { display: inline-flex !important; align-items: center; gap: .6rem; font-size: 1.05rem; cursor: pointer; }
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox { justify-content: flex-start !important; }
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox > .required { display: none !important; }
.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text::after { content: " *"; color: var(--lav-text); font-weight: 700; }

/* bledy zamowienia: na gorze formularza, na cala szerokosc, jeden styl */
@media (min-width: 761px) {
.woocommerce-checkout form.checkout:has(> .woocommerce-NoticeGroup) > .woocommerce-NoticeGroup { grid-column: 1 / -1 !important; grid-row: 1 !important; margin-bottom: 1.5rem; }
.woocommerce-checkout form.checkout:has(> .woocommerce-NoticeGroup) > .col2-set { grid-row: 2 / span 2 !important; }
.woocommerce-checkout form.checkout:has(> .woocommerce-NoticeGroup) > #order_review_heading { grid-row: 2 !important; }
.woocommerce-checkout form.checkout:has(> .woocommerce-NoticeGroup) > #order_review { grid-row: 3 !important; }
}
.woocommerce-checkout .woocommerce-NoticeGroup { margin-bottom: 1.25rem; }
.woocommerce-checkout .woocommerce-NoticeGroup .woocommerce-error {
	display: grid; gap: .35rem; margin: 0 !important;
	padding: 1.1rem 1.25rem 1.1rem 3rem !important; border-radius: 16px !important;
}
.woocommerce-checkout .woocommerce-NoticeGroup .woocommerce-error li { margin: 0 !important; padding: 0 !important; font-weight: 500; font-size: .95rem; line-height: 1.45; color: #fff; }
.woocommerce-checkout .woocommerce-NoticeGroup .woocommerce-error li strong { font-weight: 500; }
@media (max-width: 760px) {
}
.woocommerce-checkout .checkout-inline-error-message { color: #f3a6b8 !important; font-size: .8rem !important; margin-top: .35rem !important; }
.woocommerce-checkout .woocommerce-invalid input.input-text,
.woocommerce-checkout .woocommerce-invalid select,
.woocommerce-checkout .woocommerce-invalid .select2-selection { border-color: rgba(243, 166, 184, .7) !important; }
@media (max-width: 760px) {
	.woocommerce-checkout form.checkout > * { grid-column: 1 / -1 !important; }
	.woocommerce-checkout .woocommerce-NoticeGroup .woocommerce-error { padding: 1rem 1rem 1rem 2.6rem !important; }
}

/* ==========================================================================
   v14 – strona 404 i odstep naglowka stron tekstowych
   ========================================================================== */
.nf {
	display: grid; place-items: center; text-align: center;
	min-height: calc(100svh - 76px - 220px);
	padding: clamp(3rem, 8vh, 5rem) 0;
	background: radial-gradient(40rem 22rem at 50% 30%, rgba(169, 131, 187, .22), transparent 70%);
}
.nf__code {
	margin: 0 0 .5rem;
	font-family: var(--font-display); font-weight: 800; font-stretch: 115%;
	font-size: clamp(6rem, 18vw, 11rem); line-height: .9; letter-spacing: -.04em;
	color: transparent; -webkit-text-stroke: 2px rgba(201, 166, 220, .6);
}
.nf__title { font-family: var(--font-display); font-weight: 800; letter-spacing: -.03em; font-size: clamp(1.7rem, 3.6vw, 2.6rem); color: #fff; margin: 0 0 .9rem; }
.nf__lead { max-width: 34rem; margin: 0 auto 2rem; color: var(--muted); line-height: 1.65; }
.nf__actions { display: flex; gap: .75rem; justify-content: center; flex-wrap: wrap; }
@media (max-width: 520px) { .nf__actions .btn { flex: 1 1 100%; justify-content: center; } }

body.is-content-page .page-hero { margin-bottom: clamp(1rem, 2vw, 1.5rem) !important; }
body.is-content-page .page-hero__inner { padding-bottom: clamp(1.5rem, 3vw, 2.25rem) !important; }
/* Moje konto bez logowania: jedna wysrodkowana kolumna (siatka z menu tylko dla zalogowanych) */
.woocommerce-account div.woocommerce:not(:has(.woocommerce-MyAccount-navigation)) {
	display: block !important; max-width: 460px; margin: 0 auto; padding-top: clamp(1.5rem, 4vw, 3rem) !important; padding-bottom: clamp(3rem, 6vw, 5rem) !important;
}
.woocommerce-account div.woocommerce:not(:has(.woocommerce-MyAccount-navigation)) > h2 { text-align: left; margin: 0 0 1rem !important; font-size: 1.5rem !important; border: 0 !important; padding: 0 !important; }
.woocommerce-account form.woocommerce-form-login { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 1.75rem !important; }
.woocommerce-account form.woocommerce-form-login .form-row { width: 100% !important; float: none !important; }
.woocommerce-account form.woocommerce-form-login .woocommerce-form-login__submit { width: 100%; justify-content: center; margin-top: .5rem !important; }
.woocommerce-account form.woocommerce-form-login .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: .55rem; margin-bottom: .75rem; }
.woocommerce-account .lost_password { text-align: center; margin: 1rem 0 0 !important; }
.woocommerce-account .lost_password a { color: var(--lav-text); }

/* ==========================================================================
   v15 – lupa i wyszukiwarka w naglowku, pelnoekranowe menu na telefonie
   ========================================================================== */
.search-toggle {
	display: grid; place-items: center;
	width: 44px; height: 44px; border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, .22); background: rgba(255, 255, 255, .06);
	color: #fff; cursor: pointer; transition: background .2s, border-color .2s;
}
.search-toggle:hover, .search-toggle[aria-expanded="true"] { background: rgba(201, 166, 220, .18); border-color: var(--lav); }
.search-toggle .icon { width: 19px; height: 19px; }

.site-search {
	position: absolute; left: 0; right: 0; top: 100%;
	padding: 1rem 1.5rem 1.25rem;
	background: rgba(28, 20, 36, .97); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
	border-bottom: 1px solid var(--line);
	animation: ml-drop .25s ease both;
}
.site-search[hidden] { display: none; }
@keyframes ml-drop { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }
.site-search__form {
	position: relative; display: flex; gap: .6rem; align-items: center;
	max-width: 720px; margin: 0 auto;
}
.site-search__icon { position: absolute; left: 1.1rem; width: 18px; height: 18px; color: var(--lav-text); pointer-events: none; }
.site-search__input {
	flex: 1; min-width: 0; height: 52px; padding: 0 1rem 0 3rem !important;
	border-radius: 999px !important; border: 1px solid var(--line-strong) !important;
	background: rgba(255, 255, 255, .05) !important; color: #fff !important; font-size: 1rem;
}
.site-search__input:focus { outline: none; border-color: var(--lav) !important; box-shadow: 0 0 0 4px rgba(201, 166, 220, .18); }
.site-search__submit { height: 52px; padding: 0 1.5rem !important; }

/* menu na telefonie: pelny ekran pod naglowkiem */
.mobile-menu {
	position: fixed; left: 0; right: 0; top: var(--hh, 66px); bottom: 0; z-index: 99;
	overflow-y: auto; overscroll-behavior: contain;
	background:
		radial-gradient(30rem 20rem at 80% 0%, rgba(169, 131, 187, .22), transparent 70%),
		var(--night-deep) !important;
	border: 0 !important; padding: 0 !important;
	animation: ml-drop .25s ease both;
}
.mobile-menu[hidden] { display: none !important; }
.mobile-menu__inner { display: flex; flex-direction: column; min-height: 100%; padding: 1.25rem 1.5rem 2rem; }
.mobile-menu__search { position: relative; margin-bottom: 1.5rem; }
.mobile-menu__search svg { position: absolute; left: 1rem; top: 50%; transform: translateY(-50%); width: 18px; height: 18px; color: var(--lav-text); }
.mobile-menu__search input {
	width: 100%; height: 50px; padding: 0 1rem 0 2.8rem !important;
	border-radius: 999px !important; border: 1px solid var(--line-strong) !important;
	background: rgba(255, 255, 255, .05) !important; color: #fff !important; font-size: 1rem;
}
.mobile-menu .mobile-menu__list, .mobile-menu .site-nav__list { list-style: none; margin: 0; padding: 0; display: block !important; }
.mobile-menu .mobile-menu__list li, .mobile-menu .site-nav__list li { border-bottom: 1px solid var(--line); }
.mobile-menu .mobile-menu__list a, .mobile-menu .site-nav__list a {
	display: flex; align-items: center; justify-content: space-between;
	padding: 1.1rem 0 !important; color: #fff !important;
	font-family: var(--font-display); font-weight: 800; font-size: 1.9rem; letter-spacing: -.03em;
}
.mobile-menu .mobile-menu__list a::after, .mobile-menu .site-nav__list a::after { content: "→"; font-size: 1.2rem; color: var(--lav-text); font-family: inherit; }
.mobile-menu__extra { list-style: none; margin: 1.5rem 0 0; padding: 0; display: flex; gap: .6rem; }
.mobile-menu__extra a {
	display: inline-flex; align-items: center; gap: .5rem;
	padding: .75rem 1.1rem; border-radius: 999px;
	border: 1px solid var(--line-strong); color: #fff; font-weight: 600; font-size: .95rem;
}
.mobile-menu__count { display: grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; background: var(--lav); color: var(--night-deep); font-size: .75rem; font-weight: 800; }
.mobile-menu__note { margin-top: auto; padding-top: 2rem; font-size: .78rem; color: rgba(255, 255, 255, .45); }
html.menu-open, html.menu-open body { overflow: hidden; }
/* hamburger -> X gdy menu otwarte */
html.menu-open .site-header, html.search-open .site-header { z-index: 1000 !important; }
html.menu-open .menu-toggle { position: relative; }
html.menu-open .menu-toggle span {
	position: absolute !important; left: 50% !important; top: 50% !important;
	width: 18px !important; height: 2px !important; margin: -1px 0 0 -9px !important;
	border-radius: 2px; background: #fff !important; box-shadow: none !important; border: 0 !important;
}
html.menu-open .menu-toggle span:nth-child(1) { transform: rotate(45deg) !important; }
html.menu-open .menu-toggle span:nth-child(2) { opacity: 0 !important; }
html.menu-open .menu-toggle span:nth-child(3) { transform: rotate(-45deg) !important; }
@media (max-width: 900px) {
	.site-search { padding: .85rem 1rem 1rem; }
	.site-search__submit { display: none; }
	.search-toggle { width: 44px; height: 44px; }
}
html.menu-open .site-header {
	backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
	filter: none !important; transform: none !important;
	background: var(--night-deep) !important;
}
@keyframes ml-slide { from { transform: translateY(-10px); } to { transform: none; } }
.mobile-menu { animation: ml-slide .25s ease both !important; }

/* O nas – "Swiezo z tanku" zamiast powtorzonego hasla */
.about-fresh { margin-top: clamp(4rem, 8vw, 6rem); }
.about-fresh__head { text-align: center; margin-bottom: clamp(1.5rem, 3vw, 2.25rem); }
.about-fresh__head h2 { font-family: var(--font-display); font-weight: 800; font-stretch: 108%; letter-spacing: -.035em; font-size: clamp(2rem, 4vw, 3rem); color: #fff; margin: 0 0 .5rem; }
.about-fresh__head p { color: var(--lav-text); margin: 0; }
.about-fresh .woocommerce { padding: 0 !important; }
.about-fresh__more { display: flex; justify-content: center; margin-top: clamp(1.75rem, 3vw, 2.5rem); }

/* ==========================================================================
   v15 – strona podziekowania po zamowieniu
   ========================================================================== */
.ml-thanks { max-width: 860px; margin: 0 auto; }
.ml-thanks__card {
	text-align: center; padding: clamp(2rem, 5vw, 3.25rem) clamp(1.25rem, 4vw, 3rem);
	border-radius: 24px; border: 1px solid var(--line-strong);
	background: radial-gradient(30rem 16rem at 50% 0%, rgba(169, 131, 187, .2), transparent 70%), var(--night-2);
	margin-bottom: clamp(2rem, 4vw, 3rem);
}
.ml-thanks__icon {
	display: grid; place-items: center; width: 64px; height: 64px; margin: 0 auto 1.25rem;
	border-radius: 50%; background: var(--lav); color: var(--night-deep);
	box-shadow: 0 0 0 10px rgba(201, 166, 220, .14), 0 10px 30px rgba(201, 166, 220, .35);
}
.ml-thanks__icon svg { width: 30px; height: 30px; }
.ml-thanks__title { font-family: var(--font-display); font-weight: 800; letter-spacing: -.03em; font-size: clamp(1.8rem, 3.6vw, 2.5rem); color: #fff; margin: 0 0 .75rem; }
.ml-thanks__lead { max-width: 36rem; margin: 0 auto 1.75rem; color: var(--muted); line-height: 1.65; }
.ml-thanks__lead strong { color: #fff; }
.ml-thanks__facts {
	display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0;
	margin: 0 0 1.5rem; padding: 0; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; text-align: left;
}
.ml-thanks__facts > div { padding: 1rem 1.1rem; border-right: 1px solid var(--line); }
.ml-thanks__facts > div:last-child { border-right: 0; }
.ml-thanks__facts dt { font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--lav-text); margin-bottom: .35rem; }
.ml-thanks__facts dd { margin: 0; color: #fff; font-weight: 700; }
.ml-thanks__note { margin: 0 auto 1.5rem; padding: .85rem 1.1rem; max-width: 34rem; border-radius: 12px; background: rgba(201, 166, 220, .08); color: rgba(255, 255, 255, .85); font-size: .92rem; }
.ml-thanks__actions { display: flex; justify-content: center; gap: .75rem; flex-wrap: wrap; }

/* szczegoly zamowienia i adresy pod karta */
.ml-thanks .woocommerce-order-details,
.ml-thanks .woocommerce-customer-details { margin: 0 0 2rem; }
.ml-thanks .woocommerce-order-details__title,
.ml-thanks .woocommerce-column__title { font-family: var(--font-display); font-weight: 800; font-size: 1.35rem; letter-spacing: -.02em; color: #fff; margin: 0 0 1rem; }
.ml-thanks table.order_details { border-radius: 16px !important; overflow: hidden; border: 1px solid var(--line) !important; background: var(--night-2) !important; }
.ml-thanks table.order_details th, .ml-thanks table.order_details td { padding: .85rem 1.1rem !important; border-color: var(--line) !important; }
.ml-thanks .woocommerce-customer-details .col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.ml-thanks .woocommerce-customer-details .col2-set::before, .ml-thanks .woocommerce-customer-details .col2-set::after { display: none; }
.ml-thanks .woocommerce-customer-details .woocommerce-column { width: auto !important; float: none !important; padding: 1.25rem 1.4rem !important; border: 1px solid var(--line); border-radius: 16px; background: var(--night-2); }
.ml-thanks .woocommerce-customer-details address { border: 0 !important; padding: 0 !important; font-style: normal; line-height: 1.7; color: rgba(255, 255, 255, .85); }
@media (max-width: 700px) {
	.ml-thanks__facts { grid-template-columns: 1fr 1fr; }
	.ml-thanks__facts > div:nth-child(2) { border-right: 0; }
	.ml-thanks__facts > div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
	.ml-thanks .woocommerce-customer-details .col2-set { grid-template-columns: 1fr; }
}
.ml-thanks .ml-thanks__title { border: 0 !important; padding: 0 !important; }

/* ==========================================================================
   v16 – strona Wspolpraca
   ========================================================================== */
.partner-card {
	padding: clamp(1.5rem, 3vw, 2.25rem);
	border-radius: 28px; border: 1px solid var(--line);
	background: radial-gradient(24rem 14rem at 100% 0%, rgba(169, 131, 187, .2), transparent 70%), rgba(255, 255, 255, .035);
}
.partner-card__label { display: block; font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--lav-text); margin-bottom: .75rem; }
.partner-card__name { font-family: var(--font-display); font-weight: 800; font-size: 2rem; letter-spacing: -.03em; color: #fff; margin: 0; }
.partner-card__role { color: var(--muted); margin: .2rem 0 1.5rem; }
.partner-card__list { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; }
.partner-card__list li { display: flex; align-items: center; gap: .9rem; padding: .9rem 1rem; border-radius: 16px; background: rgba(255, 255, 255, .04); border: 1px solid var(--line); }
.partner-card__icon { display: grid; place-items: center; flex: none; width: 42px; height: 42px; border-radius: 50%; background: rgba(201, 166, 220, .12); border: 1px solid var(--line-strong); color: var(--lav); }
.partner-card__icon svg { width: 20px; height: 20px; }
.partner-card__list small { display: block; font-size: .78rem; color: var(--muted); margin-bottom: .15rem; }
.partner-card__list a { color: #fff; font-weight: 700; font-size: 1.1rem; text-decoration: none; overflow-wrap: anywhere; }
.partner-card__list a:hover { color: var(--lav-text); }

.partner { padding-top: clamp(3.5rem, 8vw, 6rem); padding-bottom: clamp(3.5rem, 8vw, 6rem); }
.partner__h2 { font-family: var(--font-display); font-weight: 800; font-stretch: 108%; letter-spacing: -.035em; font-size: clamp(1.9rem, 3.6vw, 2.6rem); color: #fff; margin: 0 0 clamp(1.25rem, 3vw, 2rem); }
.partner-who__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.partner-who__item { padding: clamp(1.4rem, 3vw, 2rem); border-radius: 22px; border: 1px solid var(--line); background: var(--night-2); }
.partner-who__icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: rgba(201, 166, 220, .1); border: 1px solid var(--line-strong); color: var(--lav); margin-bottom: 1.1rem; }
.partner-who__icon svg { width: 24px; height: 24px; }
.partner-who__item h3 { font-size: 1.25rem; font-weight: 700; color: #fff; margin: 0 0 .5rem; letter-spacing: -.015em; }
.partner-who__item p { margin: 0; color: var(--muted); line-height: 1.65; }

.partner-steps { margin-top: clamp(3.5rem, 8vw, 6rem); }
.partner-steps__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.5rem, 4vw, 3rem); }
.partner-steps__list li { padding-top: 1.5rem; border-top: 1px solid var(--line-strong); }
.partner-steps__no { display: block; font-family: var(--font-display); font-weight: 800; font-size: .85rem; letter-spacing: .1em; color: var(--lav); margin-bottom: .9rem; }
.partner-steps__list h3 { font-size: 1.25rem; font-weight: 700; color: #fff; margin: 0 0 .5rem; }
.partner-steps__list p { margin: 0; color: var(--muted); line-height: 1.65; }

.partner-cta {
	margin-top: clamp(3.5rem, 8vw, 6rem); text-align: center;
	padding: clamp(2.25rem, 5vw, 3.5rem) 1.5rem; border-radius: 28px; border: 1px solid rgba(169, 131, 187, .18);
	background: radial-gradient(30rem 16rem at 50% 0%, rgba(169, 131, 187, .22), transparent 70%), var(--night-2);
}
.partner-cta h2 { font-family: var(--font-display); font-weight: 800; letter-spacing: -.03em; font-size: clamp(1.7rem, 3.4vw, 2.4rem); color: #fff; margin: 0 0 .75rem; border: 0; padding: 0; }
.partner-cta p { color: var(--muted); margin: 0 0 1.75rem; }
.partner-cta p a { color: var(--lav-text); font-weight: 700; }
.partner-cta__actions { display: flex; gap: .75rem; justify-content: center; flex-wrap: wrap; }

@media (max-width: 900px) {
	.partner-who__grid, .partner-steps__list { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
	.partner-card { border-radius: 22px; }
	.partner-card__list a { font-size: 1rem; }
	.partner-cta__actions .btn { flex: 1 1 100%; justify-content: center; }
	.partner-cta { margin-left: 0; margin-right: 0; }
}

/* ==========================================================================
   v17 – wyszukiwarka piw w sklepie
   ========================================================================== */
.shop-search {
	position: relative;
	display: flex;
	align-items: center;
	flex: 1 1 320px;
	max-width: 420px;
	margin: 0;
}
.shop-search__icon { position: absolute; left: 1rem; color: rgba(255, 255, 255, .5); pointer-events: none; }
.shop-search input[type="search"] {
	width: 100%;
	height: 46px;
	padding: 0 6.2rem 0 2.75rem;
	background: #1e1627;
	color: #fff;
	border: 1px solid var(--line-strong);
	border-radius: 999px;
	font: inherit;
	font-size: .92rem;
	-webkit-appearance: none;
	appearance: none;
	transition: border-color .2s var(--ease), box-shadow .2s var(--ease);
}
.shop-search input[type="search"]::placeholder { color: rgba(255, 255, 255, .42); }
.shop-search input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
.shop-search input[type="search"]:focus { outline: none; border-color: var(--lav); box-shadow: 0 0 0 3px rgba(196, 176, 232, .18); }
.shop-search button {
	position: absolute;
	right: 4px;
	top: 4px;
	bottom: 4px;
	padding: 0 1.1rem;
	border: 0;
	border-radius: 999px;
	background: var(--lav);
	color: var(--purple-deep);
	font: inherit;
	font-size: .85rem;
	font-weight: 600;
	cursor: pointer;
	transition: filter .2s var(--ease);
}
.shop-search button:hover { filter: brightness(1.08); }
.shop-toolbar .shop-search + .woocommerce-result-count { margin-left: auto !important; }
.shop-search--empty { margin: 2rem auto 1.5rem !important; max-width: 460px; }
@media (max-width: 760px) {
	.shop-toolbar { flex-wrap: wrap !important; }
	.shop-search { flex: 1 1 100%; max-width: none; }
	.shop-search input[type="search"] { height: 44px; font-size: 16px; }
}

/* v18 – bez kropek przed malymi naglowkami; naglowek sklepu wyzej */
.eyebrow::before,
.hero__eyebrow::before,
.page-hero__eyebrow::before { content: none !important; display: none !important; }
@media (min-width: 761px) {
	.woocommerce-products-header { padding-top: clamp(1.5rem, 3vw, 2.25rem) !important; }
}

/* ==========================================================================
   v19 – "O tym piwie" i sklad na stronie piwa
   ========================================================================== */
.product-story { padding-top: 1.75rem; display: grid; gap: 1rem; }
.product-story h2,
.product-story h3 {
	margin: 0 0 .75rem !important;
	font-size: .72rem !important;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--lav-text);
}
.product-story__about p {
	font-size: 1.02rem;
	line-height: 1.65 !important;
	color: rgba(255, 255, 255, .86);
	margin: 0 0 .7rem !important;
}
.product-story__about p:last-child { margin-bottom: 0 !important; }
.product-story__recipe {
	padding: 1.25rem 1.25rem .5rem;
	background: rgba(255, 255, 255, .035);
	border: 1px solid var(--line);
	border-radius: 18px;
}
.product-recipe { margin: 0; }
.product-recipe__row {
	display: grid;
	grid-template-columns: 6.5rem minmax(0, 1fr);
	gap: .75rem;
	padding: .8rem 0;
	border-top: 1px solid var(--line);
}
.product-recipe__row:first-child { border-top: 0; padding-top: .1rem; }
.product-recipe dt { margin: 0; font-size: .85rem; font-weight: 600; color: rgba(255, 255, 255, .5); padding-top: .15rem; }
.product-recipe dd { margin: 0; font-size: .95rem; line-height: 1.5; color: rgba(255, 255, 255, .88); }
.product-recipe__tags { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.product-recipe__tags li {
	margin: 0;
	padding: .3rem .7rem;
	border-radius: 999px;
	background: rgba(201, 166, 220, .12);
	border: 1px solid rgba(201, 166, 220, .28);
	color: var(--lav-text);
	font-size: .82rem;
	font-weight: 600;
	line-height: 1.2;
}
.product-recipe__plain { margin: 0 0 .75rem; font-size: .95rem; line-height: 1.55; color: rgba(255, 255, 255, .88); }
@media (max-width: 760px) {
	.product-recipe__row { grid-template-columns: 1fr; gap: .45rem; }
	.product-story__recipe { padding: 1.1rem 1.1rem .4rem; }
}
/* v19b – zdjecie piwa na komputerze nie "jedzie" w dol na polecane produkty */
.single-product .product-media { position: relative !important; top: auto !important; align-self: start; }
.single-product .related.products { position: relative; z-index: 1; }
@media (max-width: 760px) {
	.single-product .woocommerce { row-gap: .75rem !important; }
	.single-product .summary.entry-summary { padding-top: 0 !important; }
	.single-product .product-back { margin-top: .4rem !important; }
}
