/* ==========================================================================
   Wellness na zahradu: design system (2026-09-23)
   One source for tokens, type scale, buttons, cards, product detail, catalog.
   Loaded after Rey and Additional CSS. Price markup (.wnz-price*) belongs to
   the commerce module; only styled here.
   ========================================================================== */

:root {
	--wnz-green: #183e34;
	--wnz-green-600: #1f4d41;
	--wnz-green-800: #0f2b23;
	--wnz-ink: #17211d;
	--wnz-text: #36423c;
	--wnz-muted: #5c6862;
	--wnz-line: #e2e6e1;
	--wnz-line-strong: #c9d1cb;
	--wnz-surface: #f4f5f1;
	--wnz-surface-2: #eceee8;
	--wnz-cream: #f4f2ed;
	--wnz-radius: 8px;
	--wnz-radius-card: 12px;
	--wnz-container: 1344px;
	--wnz-gutter: 32px;
	--wnz-shadow-pop: 0 18px 40px rgba(18, 33, 27, .12), 0 2px 6px rgba(18, 33, 27, .06);
	--wnz-fs-h1: 34px;
	--wnz-fs-h2: 28px;
	--wnz-fs-h3: 20px;
	--wnz-fs-body: 16px;
	--wnz-fs-small: 14px;
	--wnz-ease: cubic-bezier(.2, .7, .2, 1);
}
@media (max-width: 767px) {
	:root { --wnz-gutter: 16px; --wnz-fs-h1: 26px; --wnz-fs-h2: 22px; --wnz-fs-h3: 18px; }
}

/* ---------- Base type ---------- */
body { color: var(--wnz-text); }
h1, h2, h3, h4,
.elementor-heading-title,
.woocommerce-loop-product__title,
.product_title { text-wrap: balance; color: var(--wnz-ink); }
p { text-wrap: pretty; }
body .rey-siteContent h1 { letter-spacing: -.01em; }

/* ---------- Buttons: one system, no pills, no caps ---------- */
body .btn, body .button, body button.button, body a.button,
body .woocommerce a.button, body .woocommerce button.button,
body .elementor-button {
	text-transform: none;
	letter-spacing: 0;
	border-radius: var(--wnz-radius);
	font-weight: 600;
}
.wnz-btn,
body .single-product .wnz-product-inquiry__button,
body .single_add_to_cart_button.button,
body .wnz-buybar__cta {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	min-height: 48px; padding: 12px 22px;
	border: 0; border-radius: var(--wnz-radius);
	background: var(--wnz-green); color: #fff;
	font-size: 16px; font-weight: 600; line-height: 1.2; letter-spacing: 0; text-transform: none;
	text-decoration: none; cursor: pointer;
	transition: background-color .18s var(--wnz-ease), transform .18s var(--wnz-ease);
}
.wnz-btn:hover,
body .single-product .wnz-product-inquiry__button:hover,
body .single_add_to_cart_button.button:hover,
body .wnz-buybar__cta:hover { background: var(--wnz-green-800); color: #fff; }
.wnz-btn:active, body .wnz-buybar__cta:active { transform: translateY(1px); }
:where(a, button, input, select, summary, [tabindex]):focus-visible { outline: 2px solid var(--wnz-green); outline-offset: 3px; }

/* Sorting / view controls in normal case */
body .rey-loopSelectList, body .rey-loopSelectList select,
body .rey-loopInlineList, body .rey-loopInlineList-list,
body .woocommerce-ordering select, body .woocommerce-result-count,
body .rey-loopSelectList label, body .rey-loopSelectList label span, body .rey-loopInlineList * { text-transform: none; letter-spacing: 0; }

/* ==========================================================================
   Product cards (Aktin): image dominates, no heavy frame, actions over photo
   ========================================================================== */
.woocommerce ul.products li.product.rey-wc-skin--cards .rey-productInner,
.woocommerce ul.products li.product .rey-productInner {
	--skin-cards-border-size: 0px;
	--skin-cards-border-size-hover: 0px;
	--skin-cards-border-radius: 0px;
	padding: 0; background: transparent; box-shadow: none;
	display: flex; flex-direction: column; height: 100%;
}
.woocommerce ul.products li.rey-wc-skin--cards .rey-productInner::before,
.woocommerce ul.products li.rey-wc-skin--cards .rey-productInner::after { display: none; }
.woocommerce ul.products li.product { display: flex; flex-direction: column; }

.woocommerce ul.products li.product .rey-productThumbnail {
	position: relative; margin: 0 0 14px; overflow: hidden;
	border-radius: var(--wnz-radius-card); background: var(--wnz-surface);
	aspect-ratio: 4 / 5;
}
.woocommerce ul.products li.rey-wc-skin--cards.--customImageContainerRatio .rey-productThumbnail { aspect-ratio: 4 / 5; overflow: hidden; margin-bottom: 14px; }
.woocommerce ul.products li.product .rey-productThumbnail > .woocommerce-loop-product__link,
.woocommerce ul.products li.rey-wc-skin--cards.--customImageContainerRatio .rey-productThumbnail > .woocommerce-loop-product__link {
	display: block; position: absolute; inset: 0; aspect-ratio: auto; border-radius: 0; overflow: hidden;
}
.woocommerce ul.products li.product .rey-productThumbnail img {
	position: absolute; inset: 0; width: 100%; height: 100%;
	object-fit: contain; object-position: center;
	padding: 0; box-sizing: border-box; mix-blend-mode: multiply;
	transition: transform .5s var(--wnz-ease);
}
.woocommerce ul.products li.product:hover .rey-productThumbnail img { transform: scale(1.03); }
/* Photos with their own scenery (vířivky 3:2) fill the box instead of floating. */
.woocommerce ul.products li.product .rey-productThumbnail img[src*="-karta"] { object-fit: cover; mix-blend-mode: normal; }

/* Compare + favourites as a quiet overlay, always visible (touch too) */
.woocommerce ul.products li.product .rey-thPos--top-right,
.woocommerce ul.products li.rey-wc-skin--cards .rey-thPos--top-right {
	position: absolute; top: 10px; right: 10px; left: auto; z-index: 3;
	width: auto; max-width: none; min-height: 0; margin: 0;
	display: flex; flex-direction: column; gap: 6px; justify-content: flex-start;
}
.woocommerce ul.products li.product .rey-thPos--top-right > :is(.rey-compareBtn-link, .rey-wishlistBtn-link),
.woocommerce ul.products li.rey-wc-skin--cards .rey-thPos--top-right > :is(.rey-compareBtn-link, .rey-wishlistBtn-link) {
	width: 40px; height: 40px; min-width: 40px; min-height: 40px; padding: 0; margin: 0;
	display: inline-flex; align-items: center; justify-content: center;
	border: 0; border-radius: 50%; background: rgba(255, 255, 255, .92); color: var(--wnz-ink);
	box-shadow: 0 1px 3px rgba(18, 33, 27, .12); opacity: 1; visibility: visible;
	transition: background-color .18s var(--wnz-ease), color .18s var(--wnz-ease);
}
.woocommerce ul.products li.product .rey-thPos--top-right > :is(.rey-compareBtn-link, .rey-wishlistBtn-link):hover { background: #fff; color: var(--wnz-green); }
.woocommerce ul.products li.product .rey-thPos--top-right > :is(.rey-compareBtn-link, .rey-wishlistBtn-link) :is(.rey-icon, svg, img) { width: 19px; height: 19px; font-size: 19px; }
.woocommerce ul.products li.product .rey-thPos--top-right > .--active,
.woocommerce ul.products li.product .rey-thPos--top-right > [aria-pressed="true"] { background: var(--wnz-green); color: #fff; }

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	margin: 0 0 8px; padding: 0; font-size: 16px; line-height: 1.35; font-weight: 500; min-height: 2.7em;
}
@media (max-width: 767px) { .woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 2.7em; } }
.woocommerce ul.products li.product .rey-productLoop-footer { margin-top: 0; }
.woocommerce ul.products li.product .rey-productLoop-footer .__break { display: none; }
.woocommerce ul.products li.product .woocommerce-loop-product__title a {
	color: var(--wnz-ink); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2;
	overflow: hidden; min-height: 0; max-height: 2.7em; height: auto; text-decoration: none;
}
@media (max-width: 767px) {
	.woocommerce ul.products[data-title-height] li.rey-wc-skin--cards .woocommerce-loop-product__title a,
	.woocommerce ul.products li.product .woocommerce-loop-product__title a {
		display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; min-height: 0; max-height: 4.05em; overflow: hidden;
	}
	.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 15px; }
}
.woocommerce ul.products li.product .woocommerce-product-details__short-description { display: none; }

.woocommerce ul.products li.product .rey-productLoop-footer { margin-top: auto; padding: 0; }
.woocommerce ul.products li.product .price { margin: 0; color: var(--wnz-ink); }
.woocommerce ul.products li.product .wnz-price__main,
.woocommerce ul.products li.product .price > .amount { font-size: 19px; font-weight: 700; color: var(--wnz-ink); line-height: 1.3; }
.woocommerce ul.products li.product .wnz-price__sub { display: block; margin-top: 2px; font-size: 13px; font-weight: 400; color: var(--wnz-muted); }
.woocommerce ul.products li.rey-wc-skin--cards .wnz-prototype-price-label { font-size: 13px; }
/* Whole card is a link; a closed-sale "Detail" button is noise. Real add-to-cart stays as a secondary button. */
.woocommerce ul.products li.product .rey-productFooter-item--addtocart:has(.wnz-card-more) { display: none; }
.woocommerce ul.products li.product .rey-productFooter-item--addtocart .button:not(.wnz-card-more) {
	min-height: 40px; margin-top: 12px; width: 100%; border: 1px solid var(--wnz-line-strong); background: #fff; color: var(--wnz-ink);
	font-size: 14px; font-weight: 600; border-radius: var(--wnz-radius);
}
.woocommerce ul.products li.product .rey-productFooter-item--addtocart .button:not(.wnz-card-more):hover { border-color: var(--wnz-green); color: var(--wnz-green); background: #fff; }
/* Whole-card click target without nesting anchors */
.woocommerce ul.products li.product { position: relative; }
.woocommerce ul.products li.product .woocommerce-loop-product__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.woocommerce ul.products li.product .rey-thPos--top-right,
.woocommerce ul.products li.product .rey-productFooter-item--addtocart { position: relative; z-index: 2; }
.woocommerce ul.products li.product .rey-thPos--top-right { position: absolute; }
.woocommerce ul.products li.product:focus-within .woocommerce-loop-product__title a:focus-visible { outline: none; }
.woocommerce ul.products li.product:has(.woocommerce-loop-product__title a:focus-visible) .rey-productThumbnail { outline: 2px solid var(--wnz-green); outline-offset: 3px; }

.woocommerce ul.products { --woocommerce-grid-gap: 24px; row-gap: 40px; }
@media (max-width: 767px) { .woocommerce ul.products { row-gap: 28px; } }

/* Related / upsell headings in normal case */
.single-product section.related > h2,
.single-product section.up-sells > h2,
.single-product .related.products > h2 {
	text-transform: none; letter-spacing: 0; font-size: var(--wnz-fs-h2); font-weight: 600; color: var(--wnz-ink); margin: 0 0 24px; text-align: left;
}

/* ==========================================================================
   Product detail (Alza / BrainMarket)
   ========================================================================== */
.single-product .rey-productSummary { --summary-bg: #fff; }
.single-product div.product .summary.entry-summary,
.single-product .rey-productSummary .summary { background: #fff; }
@media (min-width: 1025px) {
	.single-product .rey-productSummary { align-items: flex-start; }
	.single-product .rey-productSummary .summary.entry-summary { padding: 8px 0 0 48px; background: transparent; }
}
.single-product .rey-breadcrumbs.--pdp-style,
.single-product .rey-breadcrumbs.--pdp-style a { text-transform: none; letter-spacing: 0; font-size: 14px; font-weight: 400; color: var(--wnz-muted); }
.single-product .rey-breadcrumbs.--pdp-style .rey-breadcrumbs-item:last-child { display: none; }
.single-product .rey-postNav { display: none; }

.single-product .product_title.entry-title {
	font-size: var(--wnz-fs-h1); line-height: 1.18; font-weight: 600; color: var(--wnz-ink); margin: 6px 0 10px;
}
.single-product .rey-innerSummary { --summary-spacing: 16px; display: flex; flex-direction: column; }
.single-product .rey-innerSummary > * { margin-top: 0; }
.single-product .woocommerce-product-details__short-description { font-size: 15px; line-height: 1.6; color: var(--wnz-muted); max-width: 60ch; margin: 0 0 16px; }
.single-product .woocommerce-product-details__short-description p { margin: 0; }

/* Key facts */
.wnz-keyfacts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0 0 6px; padding: 0; background: var(--wnz-line); border: 1px solid var(--wnz-line); border-radius: var(--wnz-radius-card); overflow: hidden; }
.wnz-keyfacts > div { background: #fff; padding: 12px 14px; }
.wnz-keyfacts > div:last-child:nth-child(odd) { grid-column: 1 / -1; }
.wnz-keyfacts dt { margin: 0 0 2px; font-size: 13px; font-weight: 400; color: var(--wnz-muted); }
.wnz-keyfacts dd { margin: 0; font-size: 15px; font-weight: 600; color: var(--wnz-ink); line-height: 1.35; }
.wnz-keyfacts__more { align-self: flex-start; margin: 0 0 20px; font-size: 14px; color: var(--wnz-green); text-underline-offset: 3px; }

/* Series switcher */
.wnz-series { margin: 0 0 20px; }
.wnz-series__label { margin: 0 0 8px; font-size: 14px; font-weight: 600; color: var(--wnz-ink); }
.wnz-series ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(128px, 1fr)); gap: 8px; }
.wnz-series li { margin: 0; }
.wnz-series a { display: flex; flex-direction: column; gap: 2px; height: 100%; min-height: 56px; padding: 10px 12px; border: 1px solid var(--wnz-line-strong); border-radius: var(--wnz-radius); color: var(--wnz-ink); text-decoration: none; background: #fff; transition: border-color .15s var(--wnz-ease); }
.wnz-series a:hover { border-color: var(--wnz-green); }
.wnz-series a.is-current { border: 2px solid var(--wnz-green); padding: 9px 11px; background: #f7faf8; }
.wnz-series__name { font-size: 14px; font-weight: 600; line-height: 1.3; }
.wnz-series__price { font-size: 13px; color: var(--wnz-muted); }

/* Buy box */
.wnz-buybox { display: flex; flex-direction: column; gap: 14px; margin: 0 0 16px; padding: 22px 24px 20px; border-radius: var(--wnz-radius-card); background: var(--wnz-surface); }
.wnz-buybox > * { margin: 0 !important; }
.wnz-buybox__delivery { order: 1; display: flex; align-items: flex-start; gap: 12px; color: var(--wnz-green); }
.wnz-buybox__delivery svg { flex: 0 0 22px; margin-top: 1px; }
.wnz-buybox__delivery span { display: flex; flex-direction: column; }
.wnz-buybox__delivery strong { font-size: 15px; font-weight: 600; color: var(--wnz-ink); }
.wnz-buybox__delivery small { font-size: 13px; color: var(--wnz-muted); }
.wnz-buybox > .price { order: 2; padding-top: 14px !important; border-top: 1px solid var(--wnz-line); }
.wnz-buybox > form.cart,
.wnz-buybox > .wnz-product-inquiry { order: 3; }
.wnz-buybox > .rey-compareBtn-wrapper,
.wnz-buybox > .rey-wishlistBtn-wrapper,
.wnz-buybox > .rey-pdp-afterAtc { order: 4; }

.single-product .summary .price,
.single-product .wnz-buybox .price { display: block; line-height: 1.2; color: var(--wnz-ink); }
.single-product .wnz-buybox .wnz-price { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.single-product .wnz-buybox .wnz-price__main { display: inline-flex; align-items: baseline; gap: 8px; font-size: 34px; font-weight: 700; letter-spacing: -.01em; color: var(--wnz-ink); }
.single-product .wnz-buybox .wnz-price__main::after { content: "vč. DPH" / ""; font-size: 14px; font-weight: 500; letter-spacing: 0; color: var(--wnz-muted); }
.single-product .wnz-buybox .wnz-price__sub { display: block; margin: 0 !important; padding: 0 !important; font-size: 14px; font-weight: 400; color: var(--wnz-muted); }
.single-product .wnz-buybox .wnz-price__status { color: var(--wnz-muted); }

/* D02: věta o poptávce pod tlačítkem (dřív skrytá). */
.single-product .wnz-product-inquiry { display: flex; flex-direction: column; gap: 10px; }
.single-product .wnz-product-inquiry > p:first-child { order: 2; font-size: 14px; line-height: 1.45; color: var(--wnz-muted); text-wrap: pretty; }
.single-product .wnz-product-inquiry p { margin: 0; }
body.single-product .wnz-product-inquiry__button,
body.single-product .wnz-buybox .single_add_to_cart_button.button { width: 100%; min-height: 56px; font-size: 17px; text-transform: none; letter-spacing: 0; font-weight: 600; border-radius: var(--wnz-radius); }
.single-product .wnz-buybox form.cart { display: flex; gap: 10px; flex-wrap: nowrap; }
.single-product .wnz-buybox form.cart .quantity { flex: 0 0 auto; }
.single-product .wnz-buybox form.cart .single_add_to_cart_button { flex: 1 1 auto; }

/* Secondary actions as text links under the CTA */
.single-product .wnz-buybox .rey-compareBtn-wrapper { display: flex; }
.single-product .wnz-buybox .rey-compareBtn,
.single-product .wnz-buybox .rey-wishlistBtn {
	display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 2px; border: 0; background: none; box-shadow: none;
	color: var(--wnz-ink); font-size: 15px; font-weight: 500; text-transform: none; letter-spacing: 0; text-decoration: underline; text-decoration-color: var(--wnz-line-strong); text-underline-offset: 4px;
}
.single-product .wnz-buybox .rey-compareBtn:hover { color: var(--wnz-green); text-decoration-color: currentColor; background: none; }
.single-product .wnz-buybox .rey-compareBtn svg { width: 18px; height: 18px; }

/* Advisor (BrainMarket) */
.wnz-advisor { display: flex; align-items: center; gap: 14px; margin: 0 0 18px; padding: 16px 18px; border: 1px solid var(--wnz-line); border-radius: var(--wnz-radius-card); background: #fff; }
.wnz-advisor__photo { flex: 0 0 56px; width: 56px; height: 56px; border-radius: 50%; object-fit: cover; }
.wnz-advisor__body p { margin: 0; }
.wnz-advisor__title { font-size: 15px; font-weight: 600; color: var(--wnz-ink); }
.wnz-advisor__text { font-size: 14px; color: var(--wnz-muted); }
.wnz-advisor__contact { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; margin-top: 4px !important; }
.wnz-advisor__contact a { font-size: 17px; font-weight: 700; color: var(--wnz-green); text-decoration: none; }
.wnz-advisor__contact a:hover { text-decoration: underline; }
.wnz-advisor__contact span { font-size: 13px; color: var(--wnz-muted); }

/* Services: one quiet list instead of boxes in a box */
.single-product ul.wnz-pdp-benefits { display: flex; flex-wrap: wrap; gap: 8px 20px; list-style: none; margin: 0 0 16px; padding: 0; background: none; }
.single-product ul.wnz-pdp-benefits li { display: flex; align-items: center; gap: 8px; margin: 0; padding: 0; min-height: 0; border: 0; background: none; box-shadow: none; font-size: 14px; color: var(--wnz-text); flex-direction: row; }
.single-product ul.wnz-pdp-benefits img { width: 20px; height: 20px; opacity: .85; }
.single-product .product_meta { font-size: 13px; color: var(--wnz-muted); }
.single-product .product_meta .sku::before { text-transform: none; }

/* Gallery */
.single-product .woocommerce-product-gallery { --woocommerce-gallery-thumbs-size: 76px; --thumbs-distance: 10px; }
.single-product .woocommerce-product-gallery .__thumbs-wrapper,
.single-product .woocommerce-product-gallery .__thumbs,
.single-product .woocommerce-product-gallery .rey-pdpThumbs,
.single-product .woocommerce-product-gallery .flex-control-thumbs { justify-content: flex-start; margin-left: 0; margin-right: 0; }
.single-product .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery .__topWrapper { background: var(--wnz-surface); border-radius: var(--wnz-radius-card); overflow: hidden; }
.single-product .woocommerce-product-gallery__image img { mix-blend-mode: multiply; }
.single-product .woocommerce-product-gallery .rey-pdpThumbs-item,
.single-product .woocommerce-product-gallery .flex-control-thumbs li img,
.single-product .woocommerce-product-gallery .__thumbs img { border-radius: var(--wnz-radius); background: var(--wnz-surface); }

/* Anchor navigation (replaces tabs) */
.wnz-anchor { display: block; position: relative; top: calc(-1 * var(--wnz-anchor-offset, 110px)); visibility: hidden; height: 0; }
.wnz-secnav { margin: 56px 0 8px; border-bottom: 1px solid var(--wnz-line); }
.wnz-secnav ul { display: flex; gap: 4px 28px; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.wnz-secnav li { margin: 0; }
.wnz-secnav a { display: inline-flex; align-items: center; min-height: 48px; font-size: 16px; font-weight: 600; color: var(--wnz-ink); text-decoration: none; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.wnz-secnav a:hover { border-bottom-color: var(--wnz-green); }

/* Blocks: description and parameters side by side on desktop, stacked on mobile */
.single-product .woocommerce-tabs { margin-top: 0; }
.single-product .rey-wcPanels { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 0 72px; margin: 0; padding: 0; }
.single-product .rey-wcPanels > .rey-wcPanel { max-width: none !important; width: auto !important; margin: 0; padding: 40px 0 8px !important; flex: none; border: 0; }
.single-product .rey-wcPanels .rey-reviewsBtn { margin: 0 0 16px !important; }
.single-product .wnz-review-empty { margin-left: 0; margin-right: 0; max-width: 760px; }
.single-product .rey-wcPanel--reviews { grid-column: 1 / -1; }
.single-product .rey-wcPanel-inner { max-width: none; padding: 0; }
.single-product .rey-wcPanel > .rey-wcPanel-inner > h2:first-child,
.single-product .wnz-params__heading,
.single-product .woocommerce-Reviews-title { font-size: var(--wnz-fs-h2); font-weight: 600; line-height: 1.2; margin: 0 0 20px; color: var(--wnz-ink); text-transform: none; letter-spacing: 0; }
.single-product .rey-wcPanels, .single-product .rey-wcPanels * { hyphens: manual; -webkit-hyphens: manual; }
.single-product .rey-wcPanel--description { grid-column: 1; grid-row: 1; }
.single-product .rey-wcPanel--additional_information { grid-column: 2; grid-row: 1; }
.single-product .rey-wcPanel--reviews { grid-row: 2; }
.single-product .rey-wcPanel--description p,
.single-product .rey-wcPanel--description li { font-size: 16px; line-height: 1.7; color: var(--wnz-text); max-width: 68ch; }
.single-product .rey-wcPanel--description h2:not(:first-child) { font-size: var(--wnz-fs-h3); font-weight: 600; line-height: 1.3; margin: 28px 0 10px; color: var(--wnz-ink); }
.single-product .rey-wcPanel--description h3 { font-size: 17px; font-weight: 600; margin: 22px 0 8px; }
.single-product .wnz-pdp-story { max-width: 1100px; }
.single-product .rey-reviewsBtn.btn { display: inline-flex; width: auto; min-height: 44px; padding: 10px 20px; border: 1px solid var(--wnz-line-strong); border-radius: var(--wnz-radius); background: #fff; color: var(--wnz-ink); font-size: 15px; font-weight: 600; text-transform: none; letter-spacing: 0; }
.single-product .rey-reviewsBtn.btn:hover { border-color: var(--wnz-green); color: var(--wnz-green); }
.single-product .wnz-review-empty p:first-child span { display: none; }
@media (max-width: 1024px) {
	.single-product .rey-wcPanels { grid-template-columns: minmax(0, 1fr); }
	.single-product .rey-wcPanel--additional_information { grid-column: 1; grid-row: 2; }
	.single-product .rey-wcPanel--reviews { grid-row: 3; }
}

/* Parameters: grouped zebra table */
.wnz-params { display: grid; gap: 28px; }
.wnz-params__title { margin: 0 0 8px; font-size: 17px; font-weight: 600; color: var(--wnz-ink); }
.wnz-params__table { width: 100%; margin: 0; border: 0; border-collapse: collapse; table-layout: fixed; font-size: 15px; }
.wnz-params__table tr:nth-child(odd) { background: var(--wnz-surface); }
.wnz-params__table th, .wnz-params__table td { padding: 11px 14px; border: 0; text-align: left; vertical-align: top; line-height: 1.45; background: transparent; }
.wnz-params__table th { width: 42%; font-weight: 400; color: var(--wnz-muted); text-transform: none; letter-spacing: 0; font-size: 15px; }
.wnz-params__table td { font-weight: 500; color: var(--wnz-ink); }
.wnz-params__table td small { display: block; margin-top: 2px; font-size: 13px; font-weight: 400; color: var(--wnz-muted); }
.wnz-params__table td.is-unconfirmed span { font-weight: 400; color: var(--wnz-muted); }
.wnz-params__table tr:first-child th { border-top-left-radius: 6px; } .wnz-params__table tr:first-child td { border-top-right-radius: 6px; }
.wnz-params__note { margin: 0; font-size: 13px; color: var(--wnz-muted); }
@media (max-width: 767px) {
	.wnz-params__table th { width: 44%; font-size: 14px; }
	.wnz-params__table td { font-size: 14px; }
	.wnz-params__table th, .wnz-params__table td { padding: 10px 12px; display: table-cell; }
	.single-product .wnz-params__table tr { display: table-row; margin: 0; padding: 0; border-radius: 0; }
	.single-product .wnz-params__table, .single-product .wnz-params__table tbody { display: table; width: 100%; }
	.single-product .wnz-params__table tbody { display: table-row-group; }
}

/* Sticky bar: mobile bottom, desktop top */
.wnz-buybar { position: fixed; left: 0; right: 0; z-index: 9990; background: #fff; transition: transform .28s var(--wnz-ease); }
.wnz-buybar__inner { display: flex; align-items: center; gap: 16px; }
.wnz-buybar__product { display: flex; align-items: center; gap: 12px; min-width: 0; }
.wnz-buybar__product p { margin: 0; }
.wnz-buybar__img { width: 48px; height: 48px; object-fit: contain; border-radius: 6px; background: var(--wnz-surface); mix-blend-mode: multiply; }
.wnz-buybar__name { font-size: 14px; font-weight: 600; color: var(--wnz-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.wnz-buybar__price { font-size: 17px; font-weight: 700; color: var(--wnz-ink); white-space: nowrap; }
.wnz-buybar__price small { font-size: 12px; font-weight: 400; color: var(--wnz-muted); }
body .wnz-buybar__cta { flex: 0 0 auto; margin-left: auto; min-height: 48px; }
@media (max-width: 1024px) {
	.wnz-buybar { bottom: 0; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); box-shadow: 0 -6px 20px rgba(18, 33, 27, .10); transform: translateY(110%); }
	.wnz-buybar__nav, .wnz-buybar__img, .wnz-buybar__name { display: none; }
	.wnz-buybar__inner { justify-content: space-between; }
	body .wnz-buybar__cta { flex: 1 1 auto; max-width: 230px; font-size: 16px; }
	body.wnz-buybar-on { padding-bottom: 76px; }
}
@media (min-width: 1025px) {
	.wnz-buybar { top: 0; height: 72px; border-bottom: 1px solid var(--wnz-line); box-shadow: 0 6px 18px rgba(18, 33, 27, .06); transform: translateY(-105%); }
	.wnz-buybar__inner { max-width: 1440px; height: 100%; margin: 0 auto; padding: 0 var(--wnz-gutter); }
	.wnz-buybar__nav { display: flex; gap: 24px; margin-right: auto; }
	.wnz-buybar__nav a { font-size: 15px; font-weight: 500; color: var(--wnz-ink); text-decoration: none; }
	.wnz-buybar__nav a:hover { color: var(--wnz-green); text-decoration: underline; text-underline-offset: 4px; }
	.wnz-buybar__product { max-width: 440px; }
	body .wnz-buybar__cta { min-width: 220px; }
}
.wnz-buybar.is-visible { transform: none; }
@media (prefers-reduced-motion: reduce) { .wnz-buybar { transition: none; } }

@media (max-width: 1024px) {
	.single-product .rey-productSummary .summary.entry-summary { padding: 8px var(--wnz-gutter) 0; margin-top: 0; }
	.single-product .rey-productSummary .woocommerce-product-gallery { margin-bottom: 8px; }
	.single-product .product_title.entry-title { margin-top: 4px; }
	.wnz-buybox { padding: 18px 16px 16px; }
	.single-product .wnz-buybox .wnz-price__main { font-size: 30px; }
	.wnz-secnav { margin-top: 36px; overflow-x: auto; }
	.wnz-secnav ul { flex-wrap: nowrap; }
	.wnz-secnav a { white-space: nowrap; }
	.single-product .woocommerce-Tabs-panel, .single-product .rey-wcPanel { padding-top: 28px; }

	/* Stacked PDP: name and short description above the photo, so the customer knows what it is (BrainMarket). CSS order only, DOM and SEO unchanged. */
	.single-product .rey-productSummary { display: flex; flex-direction: column; }
	.single-product .rey-productSummary > .summary.entry-summary,
	.single-product .rey-productSummary .rey-innerSummary { display: contents; }
	.single-product .rey-productSummary > .summary > *,
	.single-product .rey-productSummary .rey-innerSummary > * { margin-left: var(--wnz-gutter); margin-right: var(--wnz-gutter); }
	.single-product .rey-productSummary > .summary > .rey-breadcrumbs { order: -3; margin-top: 8px; margin-bottom: 4px; }
	.single-product .rey-productSummary .rey-productTitle-wrapper,
	.single-product .rey-productSummary .woocommerce-product-details__short-description { order: -2; }
	.single-product .rey-productSummary .woocommerce-product-gallery { order: -1; margin-top: 8px; }
	.single-product .rey-productSummary .rey-productTitle-wrapper,
	.single-product .rey-productSummary .rey-productTitle-wrapper .product_title { margin-bottom: 8px; }
}

/* ==========================================================================
   Catalog (Aktin): light title, sidebar filters, one toolbar row
   ========================================================================== */
body.wnz-catalog-archive .elementor-270 .wnz-plp-cover { background: none !important; min-height: 0; }
body.wnz-catalog-archive .elementor-270 .wnz-plp-cover::before { display: none; }
body.wnz-catalog-archive .elementor-270 .wnz-plp-cover > .elementor-container { min-height: 0; }
body.wnz-catalog-archive .elementor-270 .wnz-plp-cover .elementor-column > .elementor-widget-wrap,
body.wnz-catalog-archive .elementor-270 .wnz-plp-cover .elementor-element-f16578f > .elementor-widget-wrap { padding: 24px 0 8px !important; }
body.wnz-catalog-archive .elementor-270 .wnz-plp-cover .rey-breadcrumbs,
body.wnz-catalog-archive .elementor-270 .wnz-plp-cover .rey-breadcrumbs a { color: var(--wnz-muted); font-size: 14px; }
body.wnz-catalog-archive .elementor-270 .wnz-plp-cover .elementor-heading-title { color: var(--wnz-ink) !important; font-size: 38px; font-weight: 600; }
@media (max-width: 767px) {
	body.wnz-catalog-archive .elementor-270 .wnz-plp-cover .elementor-heading-title { font-size: 28px; }
	body.wnz-catalog-archive .elementor-270 .wnz-plp-cover .elementor-element-f16578f > .elementor-widget-wrap { padding: 16px 16px 4px !important; }
}

body.wnz-catalog-archive .wnz-category-copy { font-size: 16px; color: var(--wnz-text); max-width: 80ch; }
body.wnz-catalog-archive .wnz-category-copy summary { list-style: none; color: var(--wnz-green); }
body.wnz-catalog-archive .wnz-category-copy summary::-webkit-details-marker { display: none; }
body.wnz-catalog-archive .wnz-category-nav ul { gap: 12px; }
body.wnz-catalog-archive .wnz-category-nav li { flex: 0 0 152px; }
body.wnz-catalog-archive .wnz-category-card { padding: 0 0 12px; border: 1px solid transparent; border-radius: var(--wnz-radius-card); background: var(--wnz-surface); font-size: 15px; font-weight: 500; color: var(--wnz-ink); }
body.wnz-catalog-archive .wnz-category-card-image { height: auto; aspect-ratio: 1 / 1; padding: 12px; border-radius: var(--wnz-radius-card) var(--wnz-radius-card) 0 0; }
body.wnz-catalog-archive .wnz-category-card-label { padding: 4px 8px 0; }
body.wnz-catalog-archive .wnz-category-card:hover { border-color: var(--wnz-line-strong); box-shadow: none; }
body.wnz-catalog-archive .wnz-category-card.is-current { border-color: var(--wnz-green); box-shadow: inset 0 0 0 1px var(--wnz-green); background: #fff; }
body.wnz-catalog-archive .wnz-category-card.is-current .wnz-category-card-label { text-decoration: none; font-weight: 600; }
@media (max-width: 767px) {
	body.wnz-catalog-archive .wnz-category-nav li { flex: 0 0 calc((100% - 30px) / 3.35); }
	body.wnz-catalog-archive .wnz-category-nav ul { padding-right: 16px; }
	body.wnz-catalog-archive .wnz-category-card { font-size: 14px; }
	body.wnz-catalog-archive .wnz-category-card-image { padding: 8px; height: auto; }
}

/* Filters */
body.wnz-catalog-archive .wnz-category-filters__panel { border: 0; border-radius: 0; background: transparent; overflow: visible; }
body.wnz-catalog-archive .wnz-category-filters__panel > summary { list-style: none; }
body.wnz-catalog-archive .wnz-category-filters__panel > summary::-webkit-details-marker { display: none; }
body.wnz-catalog-archive .wnz-category-filters legend { font-size: 15px; font-weight: 600; color: var(--wnz-ink); text-transform: none; letter-spacing: 0; }
#wnz-catalog-filters .wnz-category-filters__price-inputs input::placeholder { color: #6d7872; }
#wnz-catalog-filters .wnz-category-filters__actions button { min-height: 44px; border-radius: var(--wnz-radius); font-size: 15px; }

@media (min-width: 1025px) {
	body.wnz-catalog-archive #main.rey-siteMain {
		display: grid; grid-template-columns: 248px minmax(0, 1fr); column-gap: 40px; align-items: start;
	}
	body.wnz-catalog-archive #main > * { grid-column: 2; min-width: 0; }
	body.wnz-catalog-archive #main > .woocommerce-products-header { display: contents; }
	body.wnz-catalog-archive #main .wnz-category-intro { grid-column: 1 / -1; grid-row: 1; margin-bottom: 28px; }
	body.wnz-catalog-archive #main .wnz-category-filters {
		grid-column: 1; grid-row: 2 / span 30; align-self: start; position: sticky; top: calc(var(--header-default--height, 140px) + 16px);
		margin: 0; padding-right: 8px;
	}
	body.wnz-catalog-archive #main > .rey-loopHeader { grid-row: 2; }
	body.wnz-catalog-archive .wnz-category-filters__form { flex-direction: column; gap: 28px; padding: 0; }
	body.wnz-catalog-archive .wnz-category-filters__categories,
	body.wnz-catalog-archive .wnz-category-filters__price { flex: 0 0 auto; width: 100%; }
	body.wnz-catalog-archive .wnz-category-filters__choices { flex-direction: column; gap: 0; }
	body.wnz-catalog-archive .wnz-category-filters__choices label { min-height: 40px; }
	body.wnz-catalog-archive .wnz-category-filters__price-inputs { gap: 8px; }
	body.wnz-catalog-archive .wnz-category-filters__hint { max-width: none; }
	body.wnz-catalog-archive .wnz-category-filters__actions { padding-top: 0; width: 100%; }
	body.wnz-catalog-archive #wnz-catalog-filters .wnz-category-filters__actions button { width: 100%; }
	body.wnz-catalog-archive .wnz-category-filters__categories { padding-bottom: 24px; border-bottom: 1px solid var(--wnz-line); }
	body.wnz-catalog-archive ul.products:not([data-prod-carousel-config]) { --woocommerce-grid-columns: 3; }
}
@media (max-width: 1024px) {
	body.wnz-catalog-archive .wnz-category-filters { margin: 16px 0 8px; }
	body.wnz-catalog-archive .wnz-category-filters__panel > summary {
		display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 10px 16px;
		border: 1px solid var(--wnz-line-strong); border-radius: var(--wnz-radius); background: #fff; font-size: 15px; font-weight: 600; color: var(--wnz-ink);
	}
	body.wnz-catalog-archive .wnz-category-filters__panel > summary::before {
		content: ""; width: 18px; height: 18px; background: currentColor;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M4 6h16M7 12h10M10 18h4'/%3E%3C/svg%3E") center / contain no-repeat;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M4 6h16M7 12h10M10 18h4'/%3E%3C/svg%3E") center / contain no-repeat;
	}
	body.wnz-catalog-archive .wnz-category-filters__panel[open] > summary { border-color: var(--wnz-green); }
	body.wnz-catalog-archive .wnz-category-filters__panel[open] .wnz-category-filters__form { margin-top: 12px; border: 1px solid var(--wnz-line); border-radius: var(--wnz-radius-card); padding: 16px; }
}

/* Toolbar: count + sort on one row, no view switcher */
body.wnz-catalog-archive .rey-loopHeader { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 20px; padding: 0; min-height: 44px; }
body.wnz-catalog-archive .rey-loopHeader .rey-viewSelector,
body.wnz-catalog-archive .rey-loopHeader .__loop-separator { display: none; }
body.wnz-catalog-archive .woocommerce-result-count { margin: 0; font-size: 15px; color: var(--wnz-muted); }
body.wnz-catalog-archive .rey-loopSelectList { margin-left: auto; font-size: 15px; font-weight: 500; color: var(--wnz-ink); }

/* ==========================================================================
   Live search dropdown
   ========================================================================== */
body.wnz-search-open::after {
	content: ""; position: fixed; inset: var(--wnz-hdr-b, 0px) 0 0 0; z-index: 90; background: rgba(15, 27, 22, .38); pointer-events: none;
	animation: wnzFade .18s var(--wnz-ease);
}
@keyframes wnzFade { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { body.wnz-search-open::after { animation: none; } }
body.wnz-search-open .rey-siteHeader { z-index: 999; }
.rey-searchItem mark, .rey-searchResults mark { background: #dcefd2; color: inherit; padding: 0 1px; border-radius: 2px; }
.rey-searchResults .rey-searchItem a, .rey-searchPanel .rey-searchItem a { display: flex; align-items: center; gap: 14px; }
.rey-searchResults .rey-searchItem-thumbnail, .rey-searchItem .rey-searchItem-thumbnail { flex: 0 0 56px; width: 56px; height: 56px; min-width: 56px; border-radius: 8px; background: var(--wnz-surface); overflow: hidden; }
.rey-searchResults .rey-searchItem-thumbnail img, .rey-searchItem .rey-searchItem-thumbnail img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.rey-searchResults .rey-searchItem-title, .rey-searchItem .rey-searchItem-title { font-size: 15px; font-weight: 500; line-height: 1.35; color: var(--wnz-ink); text-wrap: balance; }
.rey-searchItem .rey-searchItem-price, .rey-searchItem .rey-searchItem-price .wnz-price__main { font-size: 15px; font-weight: 700; color: var(--wnz-ink); }
.rey-searchResults .btn, .rey-searchPanel .btn, [class*="searchResults"] .btn-line-active { text-transform: none !important; letter-spacing: 0 !important; font-size: 15px; font-weight: 600; }
.rey-searchItem .wnz-price__sub { display: none; }

/* ==========================================================================
   Global container + header (deNatura proportions, BrainMarket content)
   ========================================================================== */
@media (min-width: 1025px) {
	.rey-siteContainer { padding-left: var(--wnz-gutter); padding-right: var(--wnz-gutter); }
	body.wnz-catalog-archive .elementor-270 .wnz-plp-cover .elementor-element-f16578f > .elementor-widget-wrap { padding-left: calc(var(--wnz-gutter) - 15px) !important; padding-right: calc(var(--wnz-gutter) - 15px) !important; } /* K12: obal je o 15 px vlevo, nadpis na hraně karet */
	.elementor-268 .elementor-element-0f8830e { width: 100% !important; max-width: none !important; flex: 0 0 100% !important; }
	.elementor-268 .elementor-element-0f8830e > .elementor-widget-wrap { flex-wrap: nowrap; align-items: center; width: 100%; }
	.elementor-268 .elementor-element-36d50e8 { margin-left: auto !important; }
	.elementor-268 .elementor-element-36d50e8 a { color: var(--wnz-text); }
	.elementor-268 .elementor-element-36d50e8 a:hover { color: var(--wnz-green); }
	.elementor-268 .rey-mainMenu--desktop > li > a { padding-top: 12px; padding-bottom: 12px; }
	/* Mega menu: attached to the header edge, never wider than the container */
	.elementor-268 .rey-mainMenu--desktop > li.--is-mega-gs > .rey-mega-gs {
		top: 100% !important; left: 0; right: auto; width: calc(100vw - 2 * var(--wnz-gutter)) !important; max-width: 1376px;
		border-top: 1px solid var(--wnz-line); border-radius: 0 0 var(--wnz-radius-card) var(--wnz-radius-card);
		box-shadow: 0 28px 48px rgba(18, 33, 27, .14); overflow: hidden;
	}
	.rey-mega-gs .wnz-mega-v9 > .elementor-container { padding-top: 8px; padding-bottom: 8px; }
	.rey-mega-gs .wnz-mega-column .elementor-heading-title { text-transform: none; letter-spacing: 0; font-size: 16px; font-weight: 600; color: var(--wnz-ink); }
	.rey-mega-gs .wnz-mega-thumb .elementor-image-box-wrapper { display: flex; align-items: center; gap: 14px; }
	.rey-mega-gs .wnz-mega-thumb .elementor-image-box-img { width: 72px !important; min-width: 72px; margin: 0 !important; }
	.rey-mega-gs .wnz-mega-thumb img { width: 72px !important; height: 72px !important; object-fit: contain; border-radius: var(--wnz-radius); background: var(--wnz-surface); mix-blend-mode: multiply; }
	.rey-mega-gs .wnz-mega-thumb .elementor-image-box-title { font-size: 15px; font-weight: 500; }
	.rey-mega-gs .wnz-mega-promo-image img { border-radius: var(--wnz-radius-card); background: var(--wnz-surface); }
}
.rey-headerSearch input::placeholder, .rey-inlineSearch-searchField::placeholder { color: #5f6b65; opacity: 1; }
.elementor-268 .rey-mainMenu .--submenu-indicator { opacity: .6; }

/* Mobile menu: readable rows, arrows, contact at the bottom */
.rey-mainNavigation--mobile .rey-mainMenu--mobile > li > a,
.rey-mainNavigation--mobile .rey-mainMenu > li > a { font-size: 17px; font-weight: 500; color: var(--wnz-ink); min-height: 52px; display: flex; align-items: center; padding-top: 10px; padding-bottom: 10px; }
.rey-mainNavigation--mobile .sub-menu > li > a { font-size: 16px; min-height: 44px; display: flex; align-items: center; color: var(--wnz-text); }
.rey-mainNavigation--mobile .rey-mainMenu > li { border-bottom: 1px solid var(--wnz-line); }
.rey-mainNavigation--mobile .rey-mainMenu > li.wnz-menu-utility { border-bottom: 0; }
.rey-mainNavigation--mobile .rey-mainMenu > li.wnz-menu-utility > a { font-size: 16px; min-height: 44px; font-weight: 400; }
.rey-mainNavigation--mobile .rey-mainMenu > li.wnz-menu-phone > a { font-weight: 700; color: var(--wnz-green); }
.rey-mainNavigation--mobile .rey-mainMenu > li.wnz-menu-utility > a { padding-top: 4px; padding-bottom: 4px; }
.rey-mobileNav-footer, .rey-mobileNav-footer a, .rey-mobileNav--footerItem { text-transform: none !important; letter-spacing: 0 !important; font-size: 15px; }

/* ==========================================================================
   Homepage
   ========================================================================== */
.elementor-203 .wnz-home-intro > .elementor-container { max-width: var(--wnz-container); }
.elementor-203 .wnz-home-intro { padding-top: 28px !important; padding-bottom: 24px !important; }
.elementor-203 .wnz-home-intro .elementor-widget-wrap { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); align-items: end; gap: 12px 48px; }
.elementor-203 .wnz-home-intro .elementor-heading-title { font-size: 40px !important; line-height: 1.12; font-weight: 600; color: var(--wnz-ink) !important; margin: 0; }
.elementor-203 .wnz-home-intro .elementor-widget-text-editor { margin: 0 !important; font-size: 17px; line-height: 1.6; color: var(--wnz-muted); }
.elementor-203 .wnz-home-intro .elementor-widget-text-editor p { margin: 0; }
@media (max-width: 1024px) {
	.elementor-203 .wnz-home-intro .elementor-widget-wrap { grid-template-columns: minmax(0, 1fr); }
	.elementor-203 .wnz-home-intro .elementor-heading-title { font-size: 28px !important; }
	.elementor-203 .wnz-home-intro .elementor-widget-text-editor { font-size: 16px; }
	.elementor-203 .wnz-home-intro { padding-top: 16px !important; padding-bottom: 16px !important; }
}
.elementor-203 .wnz-home-cathead { padding-top: 48px !important; padding-bottom: 16px !important; }
.elementor-203 .wnz-home-cathead .elementor-heading-title,
.elementor-203 .elementor-element-wnzfph .elementor-heading-title,
.elementor-203 .elementor-element-wnzchoicetitle .elementor-heading-title { font-size: var(--wnz-fs-h2) !important; font-weight: 600; color: var(--wnz-ink) !important; }

/* USP band (deNatura): icon 40 px beside short text, one colour, one stroke */
.elementor-203 .wnz-usp-v5 { background: var(--wnz-surface); border-radius: var(--wnz-radius-card); margin: 24px auto 0 !important; max-width: calc(var(--wnz-container) - 0px); padding: 24px 28px !important; }
.elementor-203 .wnz-usp-v5 > .elementor-container { flex-wrap: nowrap; }
.elementor-203 .wnz-usp-v5 > .elementor-container > .elementor-column { padding-right: 24px; }
.elementor-203 .wnz-usp-v5 [class*="elementor-element-wnzusprow"] > .elementor-container { flex-wrap: nowrap; align-items: flex-start; gap: 16px; }
.elementor-203 .wnz-usp-v5 [class*="elementor-element-wnzuspimage"] { width: 40px !important; flex: 0 0 40px; }
.elementor-203 .wnz-usp-v5 [class*="elementor-element-wnzusptext"] { width: auto !important; flex: 1 1 auto; }
.elementor-203 .wnz-usp-v5 .elementor-widget-wrap { padding: 0 !important; }
.elementor-203 .wnz-usp-icon { --wnz-usp-icon-size: 40px; width: 40px; height: 40px; color: var(--wnz-green); }
.elementor-203 .wnz-usp-icon img { width: 40px; height: 40px; }
.elementor-203 .wnz-usp-v5 h3.elementor-heading-title { font-size: 16px !important; font-weight: 600; line-height: 1.35; margin: 0 0 4px; color: var(--wnz-ink) !important; text-align: left; }
.elementor-203 .wnz-usp-v5 .elementor-widget-text-editor { font-size: 14px !important; line-height: 1.5; color: var(--wnz-muted) !important; text-align: left; }
.elementor-203 .wnz-usp-v5 .elementor-widget-text-editor p { margin: 0; }
@media (max-width: 767px) {
	.elementor-203 .wnz-usp-v5 { background: transparent; padding: 0 !important; margin-top: 16px !important; border-radius: 0; }
	.elementor-203 .wnz-usp-v5 > .elementor-container { gap: 0; flex-direction: column; }
	.elementor-203 .wnz-usp-v5 > .elementor-container > .elementor-column { width: 100% !important; padding: 14px 0; border-bottom: 1px solid var(--wnz-line); background: #fff; }
	.elementor-203 .wnz-usp-v5 > .elementor-container > .elementor-column:first-child { border-top: 1px solid var(--wnz-line); }
	.elementor-203 .wnz-usp-v5 [class*="elementor-element-wnzusprow"] > .elementor-container { align-items: center; }
}

/* Category tiles: name and arrow on one line */
.elementor-203 .wnz-category-carousel .wnz-category-card > .elementor-widget-wrap { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 8px; }
.elementor-203 .wnz-category-carousel .wnz-category-card > .elementor-widget-wrap > .elementor-widget { width: auto !important; max-width: none; }
.elementor-203 .wnz-category-carousel .wnz-category-card > .elementor-widget-wrap > .wnz-category-image { grid-column: 1 / -1; }
.elementor-203 .wnz-category-carousel .wnz-category-card .elementor-widget.wnz-category-image { width: 100%; flex: 0 0 100%; }
.elementor-203 .wnz-category-carousel .wnz-category-image a { border-radius: var(--wnz-radius-card); }
.elementor-203 .wnz-category-carousel .wnz-category-card .elementor-widget.wnz-category-title { width: auto; flex: 1 1 0; min-width: 0; min-height: 0; margin-top: 12px; }
.elementor-203 .wnz-category-carousel .wnz-category-title .elementor-heading-title { font-size: 17px !important; font-weight: 600; line-height: 1.3; color: var(--wnz-ink) !important; }
.elementor-203 .wnz-category-carousel .wnz-category-card .elementor-widget.wnz-category-arrow { width: auto; flex: 0 0 auto; margin-top: 12px; }
.elementor-203 .wnz-category-carousel .wnz-category-arrow a { min-width: 44px; min-height: 44px; justify-content: flex-end; }
.elementor-203 .wnz-category-carousel .wnz-category-arrow img { width: 20px; height: 20px; }

/* Secondary button in the product section */
.elementor-203 .elementor-element-wnzfcompare .elementor-button { min-height: 40px; padding: 8px 18px; background: #fff !important; color: var(--wnz-ink) !important; border: 1px solid var(--wnz-line-strong) !important; font-size: 15px; }
.elementor-203 .elementor-element-wnzfcompare .elementor-button:hover { border-color: var(--wnz-green) !important; color: var(--wnz-green) !important; }
.elementor-203 .elementor-button, .elementor-271 .elementor-button { border-radius: var(--wnz-radius) !important; text-transform: none !important; letter-spacing: 0 !important; }

/* ==========================================================================
   Footer
   ========================================================================== */
.elementor-271 .wnz-footer-v3 .elementor-widget-reycore-menu .reyEl-menu-title,
.elementor-271 .wnz-footer-links h3, .elementor-271 .reyEl-menu-title { font-size: 16px !important; font-weight: 600; color: var(--wnz-ink); margin: 0 0 14px; text-transform: none; letter-spacing: 0; }
.elementor-271 .reyEl-menu-nav a, .elementor-271 .wnz-footer-links a { color: var(--wnz-text) !important; font-size: 15px; }
.elementor-271 .reyEl-menu-nav a:hover { color: var(--wnz-green) !important; text-decoration: underline; text-underline-offset: 3px; }
.elementor-271 .wnz-footer-advisor { display: flex; align-items: center; gap: 14px; padding: 16px; background: #fff; border: 1px solid var(--wnz-line); border-radius: var(--wnz-radius-card); max-width: 380px; }
.elementor-271 .wnz-footer-advisor img { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; flex: 0 0 56px; }
.elementor-271 .wnz-footer-advisor p { display: flex; flex-direction: column; margin: 0; line-height: 1.45; color: var(--wnz-muted); font-size: 14px; }
.elementor-271 .wnz-footer-advisor strong { color: var(--wnz-ink); font-size: 15px; font-weight: 600; }
.elementor-271 .wnz-footer-advisor .wnz-footer-phone { font-size: 18px; font-weight: 700; color: var(--wnz-green); text-decoration: none; }
.elementor-271 .wnz-footer-advisor span a { color: var(--wnz-muted); }
.elementor-271 .wnz-footer-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 24px; color: var(--wnz-muted); font-size: 14px; }
.elementor-271 .wnz-footer-bottom p { margin: 0; }
.elementor-271 .wnz-footer-bottom nav { display: flex; flex-wrap: wrap; gap: 6px 20px; }
.elementor-271 .wnz-footer-bottom a { color: var(--wnz-text); text-decoration: none; }
.elementor-271 .wnz-footer-bottom a:hover { color: var(--wnz-green); text-decoration: underline; }
@media (max-width: 767px) { .elementor-271 .wnz-footer-bottom { flex-direction: column; align-items: flex-start; } .elementor-271 .wnz-footer-bottom nav { gap: 8px 16px; } }

/* Homepage: every section on the header's edge (x = 32 at 1440) */
@media (min-width: 1025px) {
	.elementor-203 > .elementor-section:not(.wnz-usp-v5) { padding-left: var(--wnz-gutter) !important; padding-right: var(--wnz-gutter) !important; margin-left: 0 !important; margin-right: 0 !important; width: 100%; }
	.elementor-203 > .elementor-section:not(.wnz-usp-v5) > .elementor-container { max-width: 1376px !important; width: 100%; margin-left: auto; margin-right: auto; }
	.elementor-203 .wnz-usp-v5 { max-width: 1376px !important; width: calc(100% - 2 * var(--wnz-gutter)); }
	.elementor-203 .elementor-element-wnzfintro .elementor-widget-wrap,
	.elementor-203 .elementor-element-wnzcathead .elementor-widget-wrap,
	.elementor-203 .elementor-element-wnzfprods > .elementor-container > .elementor-column > .elementor-widget-wrap,
	.elementor-203 .elementor-element-14c829dd > .elementor-container > .elementor-column > .elementor-widget-wrap,
	.elementor-203 .elementor-element-wnzchoiceintro > .elementor-widget-wrap { padding-left: 0 !important; padding-right: 0 !important; }
	.elementor-203 .elementor-element-wnzfcats > .elementor-container { margin-left: auto; margin-right: auto; }
	.elementor-203 > .elementor-section:is(.elementor-element-wnzfintro, .elementor-element-wnzcathead, .elementor-element-wnzfprods, .elementor-element-wnzchoice, .elementor-element-wnzfsupport) > .elementor-container > .elementor-column:not(.wnz-compare-card) { padding-left: 0 !important; padding-right: 0 !important; }
	.elementor-203 > .elementor-section:is(.elementor-element-wnzfintro, .elementor-element-wnzcathead, .elementor-element-wnzfprods, .elementor-element-wnzchoice, .elementor-element-wnzfsupport) > .elementor-container > .elementor-column:not(.wnz-compare-card) > .elementor-widget-wrap { padding-left: 0 !important; padding-right: 0 !important; }
	.elementor-203 .elementor-element-wnzfprods ul.products { margin-left: 0; margin-right: 0; }

}

/* Mobile/tablet: Rey's fixed header must not cover the first content (hero, H1, gallery) */
@media (max-width: 1024px) {
	body.--fixed-header .rey-siteContent { padding-top: var(--wnz-mhdr, 124px); }
	body.wnz-catalog-archive .rey-pageCover--h-fixed > .elementor-270 { padding-top: 0 !important; }
	body.--fixed-header .rey-pageCover--h-fixed { margin-top: var(--wnz-mhdr, 124px); }
	body.--fixed-header .rey-pageCover--h-fixed + .rey-siteContent { padding-top: 0; }
	.elementor-203 .wnz-usp-v5 > .elementor-container > .elementor-column { padding-left: 16px; padding-right: 16px; }
}

/* Desktop: the product bar replaces the full header while scrolling the detail (Alza) */
@media (min-width: 1025px) {
	.rey-siteHeader { transition: transform .28s var(--wnz-ease); }
	body.wnz-buybar-on .rey-siteHeader { transform: translateY(-100%); }
}
@media (prefers-reduced-motion: reduce) { .rey-siteHeader { transition: none; } }

/* Mobile menu: chevrons instead of dots */
.rey-mainNavigation--mobile .menu-item-has-children > a .--submenu-indicator {
	width: 32px; height: 32px; margin: 0 -6px 0 auto; position: static; transform: none; align-self: center; display: inline-flex; align-items: center; justify-content: center; opacity: 1;
	font-size: 0; background: none; border: 0;
}
.rey-mainNavigation--mobile .menu-item-has-children > a .--submenu-indicator::before,
.rey-mainNavigation--mobile .menu-item-has-children > a .--submenu-indicator::after { display: none; }
.rey-mainNavigation--mobile .menu-item-has-children > a .--submenu-indicator {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 6 6 6-6 6'/%3E%3C/svg%3E") center / 20px 20px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 6 6 6-6 6'/%3E%3C/svg%3E") center / 20px 20px no-repeat;
	background-color: var(--wnz-muted) !important;
}

/* 404 */
body.error404 .rey-siteContent .btn, body.error404 .rey-siteContent a.btn-line-active { text-transform: none; letter-spacing: 0; font-size: 16px; }
body.error404 .rey-siteContent { padding-top: 48px; padding-bottom: 80px; }

/* Cart: the remove action must be visible (commerce request) */
.woocommerce a.remove, .woocommerce-cart-form .product-remove a,
.wc-block-cart-item__remove-link, .rey-cartPanel .remove_from_cart_button, .rey-cartPanel a.remove {
	color: var(--wnz-text) !important; opacity: 1 !important; font-size: 14px !important; font-weight: 500;
	text-decoration: underline !important; text-underline-offset: 3px; text-decoration-color: var(--wnz-line-strong) !important;
}
.woocommerce a.remove:hover, .wc-block-cart-item__remove-link:hover, .rey-cartPanel .remove_from_cart_button:hover { color: #8a291b !important; text-decoration-color: currentColor !important; background: none !important; }

/* Header polish (round 2): no dropdown marks between items, second row on the icons' right edge */
@media (min-width: 1025px) {
	.elementor-268 .rey-mainMenu--desktop > li > a > .--submenu-indicator { display: none; }
	.elementor-268 .rey-mainMenu--desktop > li > a { padding-right: 28px; }
	.elementor-268 .elementor-element-36d50e8 { margin-right: calc(var(--wnz-util-offset, 42px)) !important; }
	.elementor-268 .elementor-element-d3e560e > .elementor-widget-wrap { padding-right: 0 !important; justify-content: flex-end !important; }
	.elementor-268 .elementor-element-wnzcart { margin-right: -2px !important; }

	/* Mega menu: denser, no empty band, content from the panel's left edge */
	.elementor-268 .rey-mainMenu--desktop > li.--is-mega-gs > .rey-mega-gs { padding: 0 !important; height: auto; }
	.rey-mega-gs > * { margin: 0 !important; }
	.rey-mega-gs .wnz-mega-v9 { padding: 24px 32px 28px !important; }
	.rey-mega-gs .wnz-mega-v9 > .elementor-container { max-width: none !important; width: 100%; padding: 0 !important; }
	.rey-mega-gs .wnz-mega-column > .elementor-widget-wrap { padding: 0 28px 0 0 !important; }
	.rey-mega-gs .wnz-mega-column + .wnz-mega-column > .elementor-widget-wrap { padding-left: 28px !important; }
	.rey-mega-gs .wnz-mega-column .elementor-widget:not(:last-child) { margin-bottom: 10px; }
	.rey-mega-gs .wnz-mega-column .elementor-widget-heading { margin-bottom: 12px !important; }
	.rey-mega-gs .wnz-mega-thumb .elementor-image-box-img,
	.rey-mega-gs .wnz-mega-thumb .elementor-image-box-img img { width: 76px !important; min-width: 76px; height: 76px !important; border-radius: var(--wnz-radius) !important; overflow: hidden; }
	.rey-mega-gs .wnz-mega-thumb .elementor-image-box-img { background: var(--wnz-surface); }
	.rey-mega-gs .wnz-mega-thumb .elementor-image-box-img img { object-fit: contain; background: transparent; padding: 4px; box-sizing: border-box; mix-blend-mode: multiply; }
	.rey-mega-gs .wnz-mega-thumb .elementor-image-box-wrapper { padding: 4px 0; }
	.rey-mega-gs .wnz-mega-thumb a:hover .elementor-image-box-title, .rey-mega-gs .wnz-mega-thumb .elementor-image-box-title a:hover { color: var(--wnz-green); text-decoration: underline; text-underline-offset: 3px; }
	.rey-mega-gs .wnz-mega-links a { font-size: 15px; line-height: 1.5; }
	.rey-mega-gs .wnz-mega-promo-image img { width: 100% !important; height: 168px !important; object-fit: contain; padding: 8px; box-sizing: border-box; mix-blend-mode: multiply; }
	.rey-mega-gs .wnz-mega-promo-image { background: var(--wnz-surface); border-radius: var(--wnz-radius-card); overflow: hidden; }
	.rey-mega-gs .wnz-mega-column:last-child .elementor-heading-title { font-size: 17px; font-weight: 600; color: var(--wnz-ink); text-transform: none; letter-spacing: 0; }
	.rey-mega-gs .elementor-button { min-height: 40px; padding: 10px 18px; font-size: 15px; }
}
/* One consistent, trimmed card photo: no hover swap to an untrimmed gallery image */
.woocommerce ul.products li.product .rey-productThumbnail__second { display: none !important; }
.woocommerce ul.products li.product .rey-productThumbnail .rey-thumbImg { opacity: 1 !important; }
@media (min-width: 1025px) { .rey-mega-gs .wnz-mega-promo-image :is(.elementor-widget-container, a, img) { background: transparent !important; } .rey-mega-gs .wnz-mega-promo-image img { mix-blend-mode: multiply !important; } }

/* ==========================================================================
   One content edge on every width: 1376 px centred, 32 px minimum gutter
   ========================================================================== */
@media (min-width: 1025px) {
	.elementor-268 .elementor-element-adc9995 > .elementor-container { max-width: 1376px !important; }
	/* Hero: left edge on the content edge, cards run out to the screen edge (peek = more to swipe) */
	.rey-siteWrapper { overflow-x: clip; }
	.elementor-203 > .elementor-section.elementor-element-14c829dd {
		left: 0 !important; width: auto !important; margin-left: 0 !important;
		margin-right: min(0px, calc((1440px - 100vw) / 2)) !important;
		padding-left: var(--wnz-gutter) !important; padding-right: 0 !important;
	}
	.elementor-203 > .elementor-section.elementor-element-14c829dd > .elementor-container { max-width: none !important; margin: 0 !important; }
	.elementor-203 .elementor-element-14c829dd .elementor-column, .elementor-203 .elementor-element-14c829dd .elementor-widget-wrap { padding: 0 !important; }
	.elementor-203 .elementor-element-14c829dd .elementor-widget-reycore-carousel { margin: 0 !important; overflow: hidden; }
}
/* Hero arrows: quiet round buttons over the card edge, keyboard reachable */
.elementor-203 .wnz-home-hero .splide__arrows, .elementor-203 .wnz-home-hero .rey-carouselArrows { pointer-events: none; }
.elementor-203 .wnz-home-hero :is(.splide__arrow, .rey-arrowSvg) { pointer-events: auto; }

/* ==========================================================================
   Homepage comparison: běžná zahradní sauna vs. Sauna Panorama
   ========================================================================== */
.elementor-203 .wnz-compare-v2 > .elementor-container { max-width: 1376px !important; }
.elementor-203 .wnz-compare-v2 .elementor-widget-wrap { padding: 0 !important; }
.elementor-203 .wnz-compare-title .elementor-heading-title { font-size: var(--wnz-fs-h2) !important; font-weight: 600; color: var(--wnz-ink) !important; margin: 0 0 10px; max-width: 26ch; }
.elementor-203 .wnz-compare-lead { max-width: 68ch; color: var(--wnz-muted); font-size: 16px; line-height: 1.6; margin-bottom: 28px !important; }
.elementor-203 .wnz-compare-lead p { margin: 0; }
.elementor-203 .wnz-compare-photos { margin-bottom: 8px !important; }
.elementor-203 .wnz-compare-photos > .elementor-container { gap: 24px; flex-wrap: nowrap; }
.elementor-203 .wnz-compare-photos > .elementor-container > .elementor-column { width: calc(50% - 12px) !important; }
.elementor-203 .wnz-compare-photo img { display: block; width: 100% !important; height: auto !important; max-width: none !important; aspect-ratio: 4 / 3; object-fit: cover; object-position: center; border-radius: var(--wnz-radius-card); }
.elementor-203 .wnz-compare-caption { margin-top: 10px !important; font-size: 14px; color: var(--wnz-muted); }
.elementor-203 .wnz-compare-caption p { margin: 0; }
.elementor-203 .wnz-compare-caption strong { color: var(--wnz-ink); font-weight: 600; }
.elementor-203 .wnz-compare-tablewrap { margin: 20px 0 24px !important; }
.wnz-compare-table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 15px; line-height: 1.55; margin: 0; }
.wnz-compare-table thead th { padding: 14px 18px; text-align: left; font-size: 16px; font-weight: 600; color: var(--wnz-ink); border-bottom: 2px solid var(--wnz-ink); background: transparent; }
.wnz-compare-table thead th:first-child { width: 22%; }
.wnz-compare-table thead th:last-child { color: var(--wnz-green); border-bottom-color: var(--wnz-green); }
.wnz-compare-table thead th span:not(.screen-reader-text) { font-weight: 400; color: var(--wnz-muted); }
.wnz-compare-table tbody th, .wnz-compare-table tbody td { padding: 16px 18px; text-align: left; vertical-align: top; border: 0; border-bottom: 1px solid var(--wnz-line); background: transparent; }
.wnz-compare-table tbody th { font-weight: 600; color: var(--wnz-ink); }
.wnz-compare-table tbody td:nth-child(2) { color: var(--wnz-muted); }
.wnz-compare-table tbody td:last-child { background: #f5f8f5; color: var(--wnz-ink); font-weight: 500; }
.wnz-compare-note { margin: 12px 0 0; font-size: 13px; color: var(--wnz-muted); }
.elementor-203 .wnz-compare-cta { margin: 0 12px 0 0 !important; }
.elementor-203 .wnz-compare-cta .elementor-button { min-height: 48px !important; padding: 12px 22px !important; font-size: 16px !important; font-weight: 600; border-radius: var(--wnz-radius) !important; text-transform: none !important; letter-spacing: 0 !important; display: inline-flex; align-items: center; box-sizing: border-box; }
.elementor-203 .wnz-compare-cta--primary .elementor-button { background: var(--wnz-green) !important; color: #fff !important; border: 1px solid var(--wnz-green) !important; }
.elementor-203 .wnz-compare-cta--primary .elementor-button:hover { background: var(--wnz-green-800) !important; }
.elementor-203 .wnz-compare-cta--secondary .elementor-button { background: #fff !important; color: var(--wnz-ink) !important; border: 1px solid var(--wnz-line-strong) !important; }
.elementor-203 .wnz-compare-cta--secondary .elementor-button:hover { border-color: var(--wnz-green) !important; color: var(--wnz-green) !important; }
@media (max-width: 767px) {
	.elementor-203 .wnz-compare-photos > .elementor-container { gap: 12px; }
	.elementor-203 .wnz-compare-photos > .elementor-container > .elementor-column { width: calc(50% - 6px) !important; }
	.elementor-203 .wnz-compare-caption { font-size: 12px; }
	.wnz-compare-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.wnz-compare-table, .wnz-compare-table tbody, .wnz-compare-table tr, .wnz-compare-table th, .wnz-compare-table td { display: block; width: 100%; }
	.wnz-compare-table tr { padding: 16px 0; border-bottom: 1px solid var(--wnz-line); }
	.wnz-compare-table tbody th { padding: 0 0 10px; border: 0; font-size: 16px; }
	.wnz-compare-table tbody td { padding: 10px 12px; border: 0; border-radius: var(--wnz-radius); }
	.wnz-compare-table tbody td::before { content: attr(data-label); display: block; margin-bottom: 2px; font-size: 13px; font-weight: 600; color: var(--wnz-muted); }
	.wnz-compare-table tbody td:last-child { margin-top: 6px; }
	.wnz-compare-table tbody td:last-child::before { color: var(--wnz-green); }
	.elementor-203 .wnz-compare-cta { width: 100% !important; margin: 0 0 10px !important; }
	.elementor-203 .wnz-compare-cta .elementor-button { width: 100%; justify-content: center; }
}
.elementor-203 .wnz-home-hero .rey-arrowSvg { width: 48px; height: 48px; padding: 14px; border-radius: 50%; background: rgba(255, 255, 255, .94); color: var(--wnz-ink); box-shadow: 0 4px 14px rgba(18, 33, 27, .18); box-sizing: border-box; cursor: pointer; }
.elementor-203 .wnz-home-hero .rey-arrowSvg svg { width: 20px; height: 20px; }
.elementor-203 .wnz-home-hero .rey-arrowSvg:hover { background: #fff; color: var(--wnz-green); }
@media (min-width: 1025px) { .elementor-203 .wnz-home-hero .rey-arrowSvg--right { margin-right: 24px; } }
.elementor-203 .wnz-compare-photos > .elementor-container { max-width: none !important; width: 100%; }
.elementor-203 .wnz-compare-tablewrap table.wnz-compare-table { border: 0 !important; }
.elementor-203 .wnz-compare-tablewrap table.wnz-compare-table :is(th, td) { border-left: 0 !important; border-right: 0 !important; border-top: 0 !important; }
@media (max-width: 1024px) {
	.elementor-203 .wnz-home-intro, .elementor-203 .wnz-home-cathead, .elementor-203 .elementor-element-wnzfprods, .elementor-203 .wnz-compare-v2 { padding-left: 1px !important; padding-right: 1px !important; }
	.elementor-203 :is(.wnz-home-intro, .wnz-home-cathead, .elementor-element-wnzfprods, .wnz-compare-v2) > .elementor-container > .elementor-column > .elementor-widget-wrap { padding-left: 0 !important; padding-right: 0 !important; }
}

/* ==========================================================================
   Homepage round 3: full-bleed hero, clean 4-up benefits, category grid on the container
   ========================================================================== */
@media (min-width: 1025px) {
	.elementor-203 > .elementor-section.elementor-element-14c829dd {
		margin-left: min(0px, calc((1440px - 100vw) / 2)) !important;
		padding-left: 20px !important;
	}
	/* Card width follows the screen like before the change: 1440 → 424, 1920 → 504, 2560 → 611 */
	.elementor-203 .wnz-home-hero .splide__slide { width: calc(16.667vw + 184px) !important; }
}
/* Benefits: no box, no radius, only hairlines */
.elementor-203 .wnz-usp-v5 { background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; padding: 0 !important; }
.elementor-203 .wnz-usp-v5 > .elementor-container { border-top: 1px solid var(--wnz-line); border-bottom: 1px solid var(--wnz-line); box-shadow: none; }
.elementor-203 .wnz-usp-v5 .elementor-widget-wrap, .elementor-203 .wnz-usp-v5 .elementor-section { border: 0 !important; box-shadow: none !important; background: transparent !important; }
@media (min-width: 768px) { .elementor-203 .wnz-usp-v5 .elementor-column { border: 0 !important; box-shadow: none !important; background: transparent !important; } }
.elementor-203 .wnz-usp-icon-ruler { --wnz-usp-symbol: url("/wp-content/plugins/wellness-configurator/assets/icons/ruler.svg"); }
@media (min-width: 1025px) {
	.elementor-203 .wnz-usp-v5 > .elementor-container { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 32px; padding: 24px 0; }
	.elementor-203 .wnz-usp-v5 > .elementor-container > .elementor-column { width: auto !important; padding: 0 !important; }
}
@media (min-width: 768px) and (max-width: 1024px) {
	.elementor-203 .wnz-usp-v5 > .elementor-container { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 32px; padding: 20px 0; }
	.elementor-203 .wnz-usp-v5 > .elementor-container > .elementor-column { width: auto !important; }
}
@media (max-width: 767px) {
	.elementor-203 .wnz-usp-v5 > .elementor-container { border: 0; }
}

/* Categories: five equal tiles exactly on the content width */
@media (min-width: 1025px) {
	.elementor-203 .wnz-category-carousel > .elementor-container { display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; max-width: 1376px !important; }
	.elementor-203 .wnz-category-carousel > .elementor-container > .wnz-category-card { width: auto !important; padding: 0 !important; }
	.elementor-203 .wnz-category-carousel .wnz-category-card > .elementor-widget-wrap { padding: 0 !important; }
	.elementor-203 .wnz-category-carousel .wnz-category-image img { width: 100% !important; aspect-ratio: 4 / 3; }
}
.elementor-203 .wnz-category-carousel .wnz-category-arrow a { justify-content: flex-end; }
.elementor-203 .wnz-usp-v5 > .elementor-container { max-width: none !important; width: 100%; }
@media (max-width: 1024px) {
	.elementor-203 .elementor-element-wnzfcats { padding-left: 16px !important; padding-right: 0 !important; margin: 0 !important; width: 100%; }
	.elementor-203 .elementor-element-wnzfcats > .elementor-container { margin-left: 0 !important; margin-right: 0 !important; padding-right: 16px !important; }
}

/* ==========================================================================
   /sauny/ (page 296): model cards (Apple Shop Mac / Saunum), comparison (Zillow), advisor
   ========================================================================== */
.elementor-296 > .elementor-section { padding-left: var(--wnz-gutter) !important; padding-right: var(--wnz-gutter) !important; margin-left: 0 !important; margin-right: 0 !important; width: 100%; }
.elementor-296 > .elementor-section > .elementor-container { max-width: 1376px !important; width: 100%; margin: 0 auto; }
.elementor-296 > .elementor-section > .elementor-container > .elementor-column,
.elementor-296 > .elementor-section > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 0 !important; }
.elementor-296 .wnz-saunas-intro { padding-top: 32px !important; padding-bottom: 28px !important; }
.elementor-296 .wnz-saunas-intro .elementor-widget-wrap { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); align-items: end; gap: 12px 48px; }
.elementor-296 .wnz-saunas-intro .elementor-heading-title { font-size: 40px !important; line-height: 1.12; font-weight: 600 !important; color: var(--wnz-ink) !important; margin: 0; }
.elementor-296 .wnz-saunas-intro .elementor-widget-text-editor { margin: 0 !important; font-size: 17px; line-height: 1.6; color: var(--wnz-muted) !important; }
.elementor-296 .wnz-saunas-intro .elementor-widget-text-editor p { margin: 0; }

.wnz-sauna-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px 24px; }
.wnz-sauna-card { position: relative; display: flex; flex-direction: column; margin: 0; }
.wnz-sauna-card__media { aspect-ratio: 4 / 3; overflow: hidden; border-radius: var(--wnz-radius-card); background: var(--wnz-surface); margin-bottom: 18px; }
.wnz-sauna-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--wnz-ease); }
.wnz-sauna-card.is-studio .wnz-sauna-card__media img { object-fit: contain; padding: 6%; box-sizing: border-box; }
.wnz-sauna-card:hover .wnz-sauna-card__media img { transform: scale(1.03); }
.wnz-sauna-card__body { display: flex; flex-direction: column; flex: 1 1 auto; }
.wnz-sauna-card__title { margin: 0 0 6px; font-size: 24px; line-height: 1.2; font-weight: 600; color: var(--wnz-ink); }
.wnz-sauna-card__title a { color: inherit; text-decoration: none; }
.wnz-sauna-card__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: var(--wnz-radius-card); }
.wnz-sauna-card__title a:focus-visible { outline: none; }
.wnz-sauna-card:has(.wnz-sauna-card__title a:focus-visible) .wnz-sauna-card__media { outline: 2px solid var(--wnz-green); outline-offset: 3px; }
.wnz-sauna-card__desc { margin: 0 0 16px; font-size: 15px; line-height: 1.55; color: var(--wnz-muted); }
.wnz-sauna-facts { list-style: none; margin: 0 0 20px; padding: 0; border-top: 1px solid var(--wnz-line); }
.wnz-sauna-facts li { display: grid; grid-template-columns: 20px minmax(0, 1fr) auto; align-items: center; gap: 10px; margin: 0; padding: 10px 0; border-bottom: 1px solid var(--wnz-line); font-size: 14px; }
.wnz-sauna-facts .wnz-ico { color: var(--wnz-green); }
.wnz-sauna-facts span { color: var(--wnz-muted); }
.wnz-sauna-facts strong { font-weight: 600; color: var(--wnz-ink); text-align: right; }
.wnz-sauna-card__cta { margin-top: auto; display: flex; align-items: center; justify-content: center; min-height: 48px; border: 1px solid var(--wnz-line-strong); border-radius: var(--wnz-radius); font-size: 16px; font-weight: 600; color: var(--wnz-ink); background: #fff; transition: border-color .18s var(--wnz-ease), color .18s var(--wnz-ease), background-color .18s var(--wnz-ease); }
.wnz-sauna-card:hover .wnz-sauna-card__cta { border-color: var(--wnz-green); background: var(--wnz-green); color: #fff; }

.elementor-296 .wnz-saunas-cards { padding-bottom: 72px !important; }
.elementor-296 .wnz-saunas-compare { padding-bottom: 56px !important; }
.elementor-296 .wnz-saunas-compare .elementor-heading-title { font-size: var(--wnz-fs-h2) !important; font-weight: 600 !important; color: var(--wnz-ink) !important; margin: 0 0 8px; }
.elementor-296 .wnz-saunas-compare .elementor-widget-text-editor { max-width: 68ch; color: var(--wnz-muted) !important; margin-bottom: 20px !important; }
.wnz-sauna-table-wrap { width: 100%; }
.wnz-sauna-table { width: 100%; border-collapse: collapse; border: 0 !important; table-layout: fixed; font-size: 15px; margin: 0; }
.wnz-sauna-table thead th { padding: 12px 14px; text-align: left; font-size: 14px; font-weight: 600; color: var(--wnz-muted); border: 0 !important; border-bottom: 2px solid var(--wnz-ink) !important; background: transparent; }
.wnz-sauna-table thead th:first-child { width: 17%; }
.wnz-sauna-table tbody th, .wnz-sauna-table tbody td { padding: 12px 14px; text-align: left; vertical-align: middle; border: 0 !important; border-bottom: 1px solid var(--wnz-line) !important; background: transparent; color: var(--wnz-ink); line-height: 1.45; }
.wnz-sauna-table tbody tr:hover { background: var(--wnz-surface); }
.wnz-sauna-table tbody th a { display: flex; align-items: center; gap: 12px; color: var(--wnz-ink); font-weight: 600; font-size: 16px; text-decoration: none; }
.wnz-sauna-table tbody th a:hover span { color: var(--wnz-green); text-decoration: underline; text-underline-offset: 3px; }
.wnz-sauna-table tbody th img { width: 56px; height: 42px; object-fit: cover; border-radius: 6px; background: var(--wnz-surface); flex: 0 0 56px; }
.wnz-sauna-note { margin: 12px 0 0; font-size: 13px; color: var(--wnz-muted); }
.elementor-296 .wnz-saunas-help { padding-bottom: 80px !important; }
.wnz-saunas-advisor { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; align-items: center; gap: 20px; padding: 24px 28px; border-radius: var(--wnz-radius-card); background: var(--wnz-surface); }
.wnz-saunas-advisor img { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; }
.wnz-saunas-advisor p { margin: 0; color: var(--wnz-muted); font-size: 15px; }
.wnz-saunas-advisor .wnz-saunas-advisor__title { font-size: 19px; font-weight: 600; color: var(--wnz-ink); margin-bottom: 4px; }
.wnz-saunas-advisor a[href^="tel:"] { color: var(--wnz-green); font-weight: 700; text-decoration: none; }
@media (max-width: 1024px) {
	.elementor-296 > .elementor-section { padding-left: 16px !important; padding-right: 16px !important; }
	.elementor-296 .wnz-saunas-intro .elementor-widget-wrap { grid-template-columns: minmax(0, 1fr); }
	.elementor-296 .wnz-saunas-intro .elementor-heading-title { font-size: 28px !important; }
	.elementor-296 .wnz-saunas-intro { padding-top: 16px !important; }
	.wnz-sauna-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.wnz-sauna-grid { grid-template-columns: minmax(0, 1fr); gap: 36px; }
	.wnz-sauna-card__title { font-size: 22px; }
	.wnz-sauna-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.wnz-sauna-table, .wnz-sauna-table tbody, .wnz-sauna-table tr { display: block; width: 100%; }
	.wnz-sauna-table tr { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 12px; padding: 16px 0; border-bottom: 1px solid var(--wnz-line); }
	.wnz-sauna-table tbody th { grid-column: 1 / -1; padding: 0 0 4px; border: 0 !important; }
	.wnz-sauna-table tbody td { display: block; padding: 0; border: 0 !important; font-size: 14px; }
	.wnz-sauna-table tbody td::before { content: attr(data-label); display: block; font-size: 12px; font-weight: 600; color: var(--wnz-muted); }
	.wnz-saunas-advisor { grid-template-columns: 56px minmax(0, 1fr); padding: 20px; }
	.wnz-saunas-advisor img { width: 56px; height: 56px; }
	.wnz-saunas-advisor .wnz-btn { grid-column: 1 / -1; width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .wnz-sauna-card__media img, .wnz-sauna-card__cta { transition: none; } }

/* ==========================================================================
   Mega menu v2 (lululemon / Etsy / BrainMarket): no dividers, real headings,
   clear hover and focus, promo as a card with a full-width photo
   ========================================================================== */
@media (min-width: 1025px) {
	.rey-mega-gs .wnz-mega-v9 { padding: 28px 32px 32px !important; }
	.rey-mega-gs .wnz-mega-v9 > .elementor-container { gap: 48px; flex-wrap: nowrap; }
	.rey-mega-gs .wnz-mega-column { border: 0 !important; }
	.rey-mega-gs .wnz-mega-column > .elementor-widget-wrap,
	.rey-mega-gs .wnz-mega-column + .wnz-mega-column > .elementor-widget-wrap { padding: 0 !important; border: 0 !important; }
	.rey-mega-gs .wnz-mega-column .elementor-heading-title { font-size: 17px !important; font-weight: 600 !important; line-height: 1.3; color: var(--wnz-ink) !important; text-transform: none !important; letter-spacing: 0 !important; margin: 0 0 12px; }
	.rey-mega-gs .wnz-mega-links .reyEl-menu-nav { display: flex; flex-direction: column; gap: 0; }
	.rey-mega-gs .wnz-mega-links a { display: flex; align-items: center; min-height: 40px; font-size: 16px !important; font-weight: 400; color: var(--wnz-ink) !important; text-decoration: none; transition: color .16s var(--wnz-ease), transform .16s var(--wnz-ease); }
	.rey-mega-gs .wnz-mega-links a:hover, .rey-mega-gs .wnz-mega-links a:focus-visible { color: var(--wnz-green) !important; text-decoration: underline; text-underline-offset: 4px; transform: translateX(2px); }
	.rey-mega-gs .wnz-mega-links .current-menu-item > a, .rey-mega-gs .wnz-mega-links a[aria-current="page"] { color: var(--wnz-green) !important; font-weight: 600; }
	.rey-mega-gs .wnz-mega-thumb { margin-bottom: 4px !important; }
	.rey-mega-gs .wnz-mega-thumb .elementor-image-box-wrapper { padding: 6px; margin: 0 -6px; border-radius: var(--wnz-radius); transition: background-color .16s var(--wnz-ease); }
	.rey-mega-gs .wnz-mega-thumb:hover .elementor-image-box-wrapper, .rey-mega-gs .wnz-mega-thumb:focus-within .elementor-image-box-wrapper { background: var(--wnz-surface); }
	.rey-mega-gs .wnz-mega-thumb .elementor-image-box-title, .rey-mega-gs .wnz-mega-thumb .elementor-image-box-title a { font-size: 16px !important; color: var(--wnz-ink) !important; }
	.rey-mega-gs .wnz-mega-thumb:hover .elementor-image-box-title a { color: var(--wnz-green) !important; }
	.rey-mega-gs .elementor-widget-text-editor { font-size: 14px; line-height: 1.55; color: var(--wnz-muted); }

	/* Promo card: photo edge to edge, body with even padding */
	.rey-mega-gs .wnz-mega-column:last-child > .elementor-widget-wrap { display: block; background: var(--wnz-surface); border-radius: var(--wnz-radius-card); overflow: hidden; padding: 0 0 20px !important; align-self: flex-start; }
	.rey-mega-gs .wnz-mega-column:last-child .wnz-mega-promo-image { margin: 0 0 16px !important; border-radius: 0; background: none; }
	.rey-mega-gs .wnz-mega-promo-image :is(.elementor-widget-container, a) { display: block; background: none !important; }
	.rey-mega-gs .wnz-mega-promo-image img { display: block; width: 100% !important; height: auto !important; aspect-ratio: 4 / 3; object-fit: cover !important; padding: 0 !important; border-radius: 0 !important; mix-blend-mode: normal !important; }
	.rey-mega-gs .wnz-mega-promo-image img[src*="-karta"] { object-fit: contain !important; }
	.rey-mega-gs .wnz-mega-column:last-child > .elementor-widget-wrap > .elementor-widget:not(.wnz-mega-promo-image) { padding: 0 20px !important; margin-bottom: 8px !important; }
	.rey-mega-gs .wnz-mega-column:last-child .elementor-heading-title { font-size: 18px !important; margin-bottom: 4px; }
	.rey-mega-gs .wnz-mega-column:last-child .elementor-widget-button { margin-top: 6px !important; }
	.rey-mega-gs .wnz-mega-column:last-child .elementor-button { min-height: 40px; padding: 9px 16px; font-size: 15px; border-radius: var(--wnz-radius); transition: background-color .16s var(--wnz-ease); }

	/* Sauny: one visual grid of all six models */
	.wnz-mega-models { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 16px; }
	.wnz-mega-models li { margin: 0; }
	.wnz-mega-models a { display: flex; flex-direction: column; gap: 2px; padding: 6px; margin: -6px; border-radius: var(--wnz-radius); color: var(--wnz-ink); text-decoration: none; transition: background-color .16s var(--wnz-ease); }
	.wnz-mega-models a:hover, .wnz-mega-models a:focus-visible { background: var(--wnz-surface); }
	.wnz-mega-models__img { display: block; aspect-ratio: 4 / 3; overflow: hidden; border-radius: var(--wnz-radius); background: var(--wnz-surface); margin-bottom: 6px; }
	.wnz-mega-models__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
	.wnz-mega-models .is-studio .wnz-mega-models__img img { object-fit: contain; padding: 6%; box-sizing: border-box; }
	.wnz-mega-models__name { font-size: 16px; font-weight: 600; }
	.wnz-mega-models a:hover .wnz-mega-models__name { color: var(--wnz-green); text-decoration: underline; text-underline-offset: 3px; }
	.wnz-mega-models__meta { font-size: 13px; color: var(--wnz-muted); }
}
@media (prefers-reduced-motion: reduce) { .rey-mega-gs .wnz-mega-links a { transition: none; transform: none !important; } }
@media (min-width: 1025px) {
	.rey-mega-gs .wnz-mega-v9 > .elementor-container > .wnz-mega-column:last-child { flex: 0 0 300px !important; width: 300px !important; max-width: 300px !important; margin-left: auto; }
	.rey-mega-gs .wnz-mega-promo-image img { width: 100% !important; max-width: none !important; }
	.rey-mega-gs .wnz-mega-promo-image .elementor-widget-container { width: 100% !important; }
	.rey-mega-gs .wnz-mega-thumb .elementor-image-box-img img[src*="-karta"] { object-fit: cover; padding: 0; object-position: 50% 55%; }
}
@media (min-width: 1025px) { .rey-mega-gs .wnz-mega-promo-image, .rey-mega-gs .wnz-mega-promo-image * { border-radius: 0 !important; } .rey-mega-gs .wnz-mega-promo-image img[src*="jan-molnar"] { object-position: 50% 30%; } }

/* ==========================================================================
   Product tiles: one neutral background for every product/sauna image (Honza 2026-09-23).
   Images are transparent, trimmed and bottom-aligned; the tile colour comes only from here.
   ========================================================================== */
:root { --wnz-tile-bg: #f9fbfc; }
.woocommerce ul.products li.product .rey-productThumbnail,
.single-product .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery .__topWrapper,
.single-product .woocommerce-product-gallery .rey-pdpThumbs-item,
.single-product .woocommerce-product-gallery .flex-control-thumbs li img,
.single-product .woocommerce-product-gallery .__thumbs img,
.wnz-sauna-card__media, .wnz-sauna-table tbody th img, .wnz-mega-models__img,
.rey-mega-gs .wnz-mega-thumb .elementor-image-box-img, .rey-mega-gs .wnz-mega-column:last-child .wnz-mega-promo-image,
.rey-searchResults .rey-searchItem-thumbnail, .rey-searchItem .rey-searchItem-thumbnail,
body.wnz-catalog-archive .wnz-category-card-image, .wnz-buybar__img,
.rey-compare-page .rey-comparePage-table img, .rey-wishlist-page ul.products .rey-productThumbnail { background-color: var(--wnz-tile-bg) !important; }
body.wnz-catalog-archive .wnz-category-card { background: var(--wnz-tile-bg); }
.woocommerce ul.products li.product .rey-productThumbnail img[src*="-dlazdice"],
.rey-mega-gs img[src*="-dlazdice"], .rey-searchItem img[src*="-dlazdice"],
.wnz-sauna-card__media img, .wnz-mega-models__img img, .wnz-sauna-table img {
	object-fit: contain !important; object-position: 50% 100% !important; padding: 0 !important; mix-blend-mode: normal !important; background: transparent !important;
}
.woocommerce ul.products li.product .rey-productThumbnail img { object-position: 50% 100%; }
/* Sauna tiles are 4:3 like their images; mega thumbs use the product tile's 4:5 */
.rey-mega-gs .wnz-mega-thumb .elementor-image-box-img, .rey-mega-gs .wnz-mega-thumb .elementor-image-box-img img { width: 64px !important; min-width: 64px; height: 80px !important; }
.wnz-sauna-card.is-studio .wnz-sauna-card__media img, .wnz-mega-models .is-studio .wnz-mega-models__img img { padding: 0 !important; }
.rey-searchResults .rey-searchItem-thumbnail, .rey-searchItem .rey-searchItem-thumbnail { width: 48px; height: 60px; flex-basis: 48px; min-width: 48px; }
.rey-mega-gs .wnz-mega-column:last-child .wnz-mega-promo-image img[src*="-dlazdice"] { aspect-ratio: 4 / 3; object-fit: contain !important; }

/* Configurator entry points (sauna cards, sauna detail) */
.wnz-sauna-card__actions { margin-top: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.wnz-sauna-card__actions .wnz-sauna-card__cta { margin-top: 0; }
.wnz-sauna-card__config { position: relative; z-index: 2; display: flex; align-items: center; justify-content: center; min-height: 48px; border-radius: var(--wnz-radius); background: var(--wnz-green); color: #fff; font-size: 16px; font-weight: 600; text-decoration: none; transition: background-color .18s var(--wnz-ease); }
.wnz-sauna-card__config:hover, .wnz-sauna-card__config:focus-visible { background: var(--wnz-green-800); color: #fff; }
.wnz-sauna-card__config:focus-visible { outline: 2px solid var(--wnz-green); outline-offset: 3px; }
.wnz-sauna-card:hover .wnz-sauna-card__actions .wnz-sauna-card__cta { background: #fff; color: var(--wnz-green); border-color: var(--wnz-green); }
.wnz-sauna-ctas { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.wnz-sauna-ctas .elementor-button-wrapper { margin: 0; width: auto; flex: 0 0 auto; display: block; }
.wnz-sauna-ctas .elementor-button-wrapper a.elementor-button.wnz-config-cta { min-height: 48px; display: inline-flex; align-items: center; background: var(--wnz-green); color: #fff; border: 1px solid var(--wnz-green); border-radius: var(--wnz-radius); }
.wnz-sauna-ctas .elementor-button-wrapper a.elementor-button.wnz-config-cta:hover { background: var(--wnz-green-800); border-color: var(--wnz-green-800); }
.wnz-sauna-ctas .elementor-button-wrapper + .elementor-button-wrapper a.elementor-button { min-height: 48px; display: inline-flex; align-items: center; background: #fff; color: var(--wnz-green); border: 1px solid var(--wnz-line-strong); border-radius: var(--wnz-radius); }
.wnz-sauna-ctas .elementor-button-wrapper + .elementor-button-wrapper a.elementor-button:hover { border-color: var(--wnz-green); }
@media (max-width: 767px) { .wnz-sauna-ctas { flex-direction: column; align-items: stretch; } .wnz-sauna-ctas a.elementor-button { width: 100%; justify-content: center; } }
@media (prefers-reduced-motion: reduce) { .wnz-sauna-card__config { transition: none; } }

/* ==========================================================================
   Audit 2026-10-13 – vlny 1 a 4 (ID nálezů v komentářích)
   ========================================================================== */
/* G05: šipky hero karuselu vidět trvale, ne až po najetí. */
.elementor-203 .wnz-home-hero .rey-sliderArrows.--hide-on-idle,
.elementor-203 .wnz-home-hero .rey-sliderArrows.--hide-on-idle .rey-arrowSvg { opacity: 1 !important; visibility: visible !important; }
.elementor-203 .wnz-home-hero .rey-sliderArrows { mix-blend-mode: normal !important; } /* Rey: difference invertoval bílé tlačítko */
/* G09: hamburger s plochou 44 × 44 px (ikona zůstává 24 px). */
@media (max-width: 1024px) {
	.rey-siteHeader .rey-mainNavigation-mobileBtn { min-width: 44px; min-height: 44px; padding: 14px 10px; margin-left: -10px; box-sizing: border-box; }
}
/* G06, S06: nadpisy řádků srovnávacích tabulek na mobilu odsazené jako text v buňkách. */
@media (max-width: 767px) {
	.wnz-compare-table tbody th { padding: 0 12px 10px; }
	.wnz-sauna-table tbody th, .wnz-sauna-table tbody td { padding-left: 12px; padding-right: 12px; }
}
/* D03, V09: Rey line-loader galerie s --no-rey-lazy po načtení nezmizí. */
.single-product .woocommerce-product-gallery .rey-lineLoader { display: none !important; }
/* D11, V15: navigace sekcí PDP se na mobilu vejde celá. */
@media (max-width: 767px) {
	.wnz-secnav ul { gap: 4px 18px; }
	.wnz-secnav a { font-size: 15px; }
}
/* N09: odkazy v textu stránek odlišené barvou i podtržením (ne tlačítka, ne menu). */
.rey-siteContent :is(.entry-content, .elementor-widget-text-editor, .woocommerce-Tabs-panel, .rey-wcPanel) a:not(.button):not(.elementor-button):not(.wp-block-button__link):not([class*="btn"]) {
	color: var(--wnz-green); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px;
}
.rey-siteContent :is(.entry-content, .elementor-widget-text-editor, .woocommerce-Tabs-panel, .rey-wcPanel) a:not(.button):not(.elementor-button):not(.wp-block-button__link):not([class*="btn"]):hover { text-decoration-thickness: 2px; }
/* Gutenberg stránky (OP, RŘ, GDPR, doprava) nemají .entry-content: odkazy přímo v odstavcích a položkách seznamu. */
.rey-siteMain :is(p, li:not(.product), td, dd) > a:not([class]):not(nav *):not(.wnz-lost__cats *) { color: var(--wnz-green); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.rey-siteMain :is(p, li:not(.product), td, dd) > a:not([class]):not(nav *):not(.wnz-lost__cats *):hover { text-decoration-thickness: 2px; }
/* G16: pravé odkazy hlavičky na stejném středu jako hlavní menu. */
@media (min-width: 1025px) {
	.elementor-268 .elementor-element-36d50e8 { position: relative; top: 4px; } /* střed odkazů na úrovni hlavního menu */
}
/* G20: šipka dlaždice kategorie na mobilu patří ke svému názvu. */
@media (max-width: 767px) {
	.elementor-203 .wnz-category-carousel .wnz-category-card > .elementor-widget-wrap { grid-template-columns: auto 1fr; column-gap: 8px; }
}
/* G22, K13: oddělovač „·“ v ceně karty se na mobilu nezalomí sám. */
@media (max-width: 767px) {
	.wnz-price__sep { display: none; }
	.wnz-price__status { display: block; }
}
/* K12: drobečková navigace a H1 archivu na hraně obsahu (x = 32). */
/* K18: ikony porovnání a oblíbených na mobilu menší. */
@media (max-width: 767px) {
	.woocommerce ul.products li.product .rey-thPos--top-right > :is(.rey-compareBtn-link, .rey-wishlistBtn-link) { width: 32px; height: 32px; min-width: 32px; min-height: 32px; }
	.woocommerce ul.products li.product .rey-thPos--top-right > :is(.rey-compareBtn-link, .rey-wishlistBtn-link) :is(.rey-icon, svg, img) { width: 16px; height: 16px; font-size: 16px; }
}
/* D17: galerie zůstává vedle nákupního boxu při scrollu. */
@media (min-width: 1025px) {
	.single-product .rey-productSummary .woocommerce-product-gallery { position: sticky; top: 96px; align-self: flex-start; }
}
/* D18, V19: karty „Mohlo by vás zajímat“ v rastru nadpisu. */
.single-product .related.products ul.products, .single-product section.related ul.products { padding-left: 0 !important; padding-right: 0 !important; }
/* V17: jeden boční okraj na mobilním PDP. */
@media (max-width: 767px) {
	.single-product .rey-innerSummary, .single-product .rey-productTitle-wrapper { margin-left: 0 !important; margin-right: 0 !important; }
}
/* V18: šipky galerie na mobilu pryč, stačí swipe a náhledy. */
@media (max-width: 767px) {
	.single-product .woocommerce-product-gallery .rey-arrowSvg, .single-product .woocommerce-product-gallery .splide__arrows { display: none !important; }
}

/* S11: detail sauny na mobilu – název a perex nad fotkou (schválené pravidlo), okraj 16 px jako přehled. */
@media (max-width: 767px) {
	:is(.elementor-element-wnzshero0, .elementor-element-wnzshero1, .elementor-element-wnzshero2, .elementor-element-wnzshero3, .elementor-element-wnzshero4, .elementor-element-wnzshero5) > .elementor-container { display: flex; flex-direction: column; }
	:is(.elementor-element-wnzshero0, .elementor-element-wnzshero1, .elementor-element-wnzshero2, .elementor-element-wnzshero3, .elementor-element-wnzshero4, .elementor-element-wnzshero5) :is(.elementor-element-wnzspic0, .elementor-element-wnzspic1, .elementor-element-wnzspic2, .elementor-element-wnzspic3, .elementor-element-wnzspic4, .elementor-element-wnzspic5, .elementor-element-wnzsinfo0, .elementor-element-wnzsinfo1, .elementor-element-wnzsinfo2, .elementor-element-wnzsinfo3, .elementor-element-wnzsinfo4, .elementor-element-wnzsinfo5),
	:is(.elementor-element-wnzshero0, .elementor-element-wnzshero1, .elementor-element-wnzshero2, .elementor-element-wnzshero3, .elementor-element-wnzshero4, .elementor-element-wnzshero5) :is(.elementor-element-wnzspic0, .elementor-element-wnzspic1, .elementor-element-wnzspic2, .elementor-element-wnzspic3, .elementor-element-wnzspic4, .elementor-element-wnzspic5, .elementor-element-wnzsinfo0, .elementor-element-wnzsinfo1, .elementor-element-wnzsinfo2, .elementor-element-wnzsinfo3, .elementor-element-wnzsinfo4, .elementor-element-wnzsinfo5) > .elementor-widget-wrap { display: contents; }
	:is(.elementor-element-wnzshero0, .elementor-element-wnzshero1, .elementor-element-wnzshero2, .elementor-element-wnzshero3, .elementor-element-wnzshero4, .elementor-element-wnzshero5) .elementor-widget { order: 5; width: 100%; padding-left: 0; padding-right: 0; }
	:is(.elementor-element-wnzsb0, .elementor-element-wnzsb1, .elementor-element-wnzsb2, .elementor-element-wnzsb3, .elementor-element-wnzsb4, .elementor-element-wnzsb5) { order: 1 !important; }
	:is(.elementor-element-wnzsh0, .elementor-element-wnzsh1, .elementor-element-wnzsh2, .elementor-element-wnzsh3, .elementor-element-wnzsh4, .elementor-element-wnzsh5) { order: 2 !important; }
	:is(.elementor-element-wnzsi0, .elementor-element-wnzsi1, .elementor-element-wnzsi2, .elementor-element-wnzsi3, .elementor-element-wnzsi4, .elementor-element-wnzsi5) { order: 3 !important; margin: 8px 0 16px; }
	:is(.elementor-element-wnzst0, .elementor-element-wnzst1, .elementor-element-wnzst2, .elementor-element-wnzst3, .elementor-element-wnzst4, .elementor-element-wnzst5) { order: 4 !important; }
	.elementor-top-section[class*="elementor-element-wnzs"] { margin-left: 0 !important; margin-right: 0 !important; padding-left: 16px !important; padding-right: 16px !important; }
}
/* S09: konec detailu sauny – dvě CTA a textový návrat. */
.wnz-sauna-ctas--end { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 8px; }
.wnz-sauna-ctas--end .elementor-button { border-radius: var(--wnz-radius) !important; }
.wnz-sauna-ctas--end .wnz-inquiry-cta { background: #fff !important; color: var(--wnz-ink) !important; border: 1px solid var(--wnz-line-strong) !important; }
.wnz-sauna-ctas--end .wnz-inquiry-cta:hover { border-color: var(--wnz-green) !important; color: var(--wnz-green) !important; }
.wnz-sauna-back { margin: 16px 0 0; }
.wnz-sauna-back a { color: var(--wnz-ink); text-decoration: underline; text-underline-offset: 3px; font-weight: 500; }
@media (max-width: 767px) { .wnz-sauna-ctas--end .elementor-button-wrapper, .wnz-sauna-ctas--end .elementor-button { width: 100%; justify-content: center; } }
/* K06/K07: blok „cesta dál“ na 404 a prázdném hledání. */
.wnz-lost { margin: 28px 0 56px; max-width: 760px; }
.wnz-lost__lead { margin: 0 0 12px; font-weight: 600; color: var(--wnz-ink); }
.wnz-lost__cats { list-style: none; margin: 0 0 24px; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.wnz-lost__cats a { display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 18px; border: 1px solid var(--wnz-line-strong); border-radius: var(--wnz-radius); color: var(--wnz-ink); font-weight: 500; text-decoration: none; background: #fff; }
.wnz-lost__cats a:hover { border-color: var(--wnz-green); color: var(--wnz-green); }
.wnz-lost__cta { margin-bottom: 28px; }
.wnz-lost__advisor { display: flex; align-items: center; gap: 14px; padding: 16px; border: 1px solid var(--wnz-line); border-radius: var(--wnz-radius-card); max-width: 520px; }
.wnz-lost__advisor img { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; flex: 0 0 56px; }
.wnz-lost__advisor p { margin: 0; color: var(--wnz-muted); line-height: 1.5; }
.wnz-lost__advisor strong { display: block; color: var(--wnz-ink); }
/* K07: 404 na hraně obsahu jako ostatní stránky, bez vycentrovaného úzkého boxu Rey. */
.error404 .rey-page404 { display: block !important; min-height: 0 !important; padding: 24px var(--wnz-gutter) 0 !important; text-align: left !important; }
.error404 .rey-page404 > .container, .error404 .rey-page404 .container { max-width: 1376px !important; width: 100%; margin: 0 auto !important; padding: 0 !important; }
.wnz-lost__advisor a { color: var(--wnz-green); font-weight: 600; }
.error404 .elementor-element-wnz404s > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 0 !important; }
.error404 .elementor-element-wnz404s { padding-top: 8px !important; }
@media (min-width: 1025px) { .error404 .rey-page404 { padding-top: 0 !important; } }
@media (max-width: 1024px) { .error404 .rey-page404 { padding-top: calc(var(--wnz-mhdr, 120px) + 8px) !important; } }
.error404 .elementor-element-wnz404s { margin-left: 0 !important; margin-right: 0 !important; }
/* N05: prázdný košík jako nadpis, ne šedý pruh; tlačítko katalogu je v bloku „cesta dál“. */
.woocommerce-cart .wc-empty-cart-message .cart-empty.woocommerce-info { background: none !important; border: 0 !important; padding: 0 !important; margin: 8px 0 8px !important; font-size: var(--wnz-fs-h2, 26px); font-weight: 600; color: var(--wnz-ink); }
.woocommerce-cart .wc-empty-cart-message .cart-empty.woocommerce-info::before { display: none !important; }
.woocommerce-cart .woocommerce:has(.wnz-empty-cart) .return-to-shop { display: none; }
.wnz-empty-cart__lead { margin: 0; color: var(--wnz-muted); max-width: 62ch; }
.wnz-empty-cart .wnz-lost { margin-top: 20px; }
@media (max-width: 767px) { .elementor-203 .wnz-home-hero .rey-sliderArrows { display: none !important; } } /* G05: na mobilu stačí swipe, šipky by ležely přes produkt */
/* N06: přihlášení – úzký formulář, čitelné popisky, primární tlačítko, bez druhého nadpisu. */
.woocommerce-account:not(.logged-in) .rey-pageContent .woocommerce > h2 { display: none; }
.woocommerce-account:not(.logged-in) .woocommerce-form-login { max-width: 440px; margin: 8px 0 0; padding: 0; border: 0; }
.woocommerce-account .woocommerce-form-login label { font-size: 15px !important; font-weight: 500 !important; text-transform: none !important; letter-spacing: 0 !important; color: var(--wnz-text) !important; margin-bottom: 6px; }
.woocommerce-account .woocommerce-form-login .input-text { font-size: 16px !important; min-height: 48px; border-radius: var(--wnz-radius); }
.woocommerce-account .woocommerce-form-login .woocommerce-form-login__submit { width: 100%; min-height: 48px; background: var(--wnz-green) !important; color: #fff !important; font-size: 16px !important; font-weight: 600; text-transform: none !important; letter-spacing: 0 !important; border-radius: var(--wnz-radius) !important; }
.woocommerce-account .woocommerce-form-login .woocommerce-form-login__submit:hover { background: var(--wnz-green-800, #0f2d25) !important; }
.wnz-login-note { max-width: 440px; margin: 20px 0 48px; color: var(--wnz-muted); }
/* K08: bez filtru (kategorie do 3 produktů) žádný prázdný postranní sloupec. */
@media (min-width: 1025px) {
	body.wnz-catalog-archive #main.rey-siteMain:not(:has(#wnz-catalog-filters)) { grid-template-columns: minmax(0, 1fr); }
	body.wnz-catalog-archive #main.rey-siteMain:not(:has(#wnz-catalog-filters)) > * { grid-column: 1; }
}
/* S01/S02: cena „od“ a parametry saun. */
.wnz-sauna-price { display: flex; flex-direction: column; gap: 2px; margin: 12px 0 14px; }
.wnz-sauna-price__main { font-size: 20px; font-weight: 700; color: var(--wnz-ink); font-variant-numeric: tabular-nums; }
.wnz-sauna-price__main span { font-size: 14px; font-weight: 400; color: var(--wnz-muted); }
.wnz-sauna-price__sub { font-size: 13px; color: var(--wnz-muted); }
.wnz-sauna-price--detail { margin: 20px 0 8px; }
.wnz-sauna-price--detail .wnz-sauna-price__main { font-size: 26px; }
.wnz-sauna-facts--detail { margin: 16px 0 6px; }
.wnz-sauna-facts__note { margin: 0 0 8px; font-size: 13px; color: var(--wnz-muted); }
.wnz-sauna-table__price { font-weight: 600; color: var(--wnz-ink); white-space: nowrap; font-variant-numeric: tabular-nums; }
.wnz-mega-models__price { display: block; font-size: 13px; font-weight: 600; color: var(--wnz-ink); }
/* G01: pás saun na homepage. */
.wnz-home-saunas { margin: 0 0 56px; }
.wnz-home-saunas__head h2 { font-size: var(--wnz-fs-h2); font-weight: 600; color: var(--wnz-ink); margin: 0 0 8px; }
.wnz-home-saunas__head p { margin: 0 0 20px; max-width: 64ch; color: var(--wnz-muted); }
.wnz-home-saunas__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
.wnz-home-saunas__list li { display: flex; flex-direction: column; gap: 6px; margin: 0; }
.wnz-home-saunas__card { display: flex; flex-direction: column; gap: 2px; text-decoration: none; color: inherit; }
.wnz-home-saunas__img { display: block; aspect-ratio: 4 / 5; border-radius: var(--wnz-radius-card); overflow: hidden; background: var(--wnz-surface); margin-bottom: 8px; }
.wnz-home-saunas__img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s var(--wnz-ease); }
.wnz-home-saunas li.is-studio .wnz-home-saunas__img img { object-fit: contain; }
.wnz-home-saunas__card:hover img { transform: scale(1.03); }
.wnz-home-saunas__card strong { font-size: 16px; font-weight: 600; color: var(--wnz-ink); }
.wnz-home-saunas__meta { font-size: 13px; color: var(--wnz-muted); }
.wnz-home-saunas__price { font-size: 15px; font-weight: 700; color: var(--wnz-ink); font-variant-numeric: tabular-nums; }
.wnz-home-saunas__config { font-size: 14px; font-weight: 600; color: var(--wnz-green); text-decoration: underline; text-underline-offset: 3px; }
.wnz-home-saunas__more { margin: 20px 0 0; display: flex; flex-wrap: wrap; gap: 6px 16px; align-items: baseline; }
.wnz-home-saunas__more a { font-weight: 600; color: var(--wnz-ink); text-decoration: underline; text-underline-offset: 3px; }
.wnz-home-saunas__more span { font-size: 13px; color: var(--wnz-muted); }
@media (max-width: 1024px) { .wnz-home-saunas__list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) {
	.wnz-home-saunas__list { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; padding-bottom: 4px; scrollbar-width: none; }
	.wnz-home-saunas__list li { flex: 0 0 68%; scroll-snap-align: start; }
}
/* K02: výsledky hledání. */
.wnz-search { padding-block: 24px 64px; }
.wnz-search__title { font-size: var(--wnz-fs-h1, 38px); margin: 0 0 6px; color: var(--wnz-ink); }
.wnz-search__count { margin: 0 0 24px; color: var(--wnz-muted); }
.wnz-search__group { margin: 0 0 40px; }
.wnz-search__group > h2 { font-size: var(--wnz-fs-h3, 20px); font-weight: 600; color: var(--wnz-ink); margin: 0 0 16px; }
.wnz-search__saunas { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wnz-search__pages ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 24px; }
.wnz-search__pages a { color: var(--wnz-green); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 767px) { .wnz-search__saunas { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; } .wnz-search__saunas li { flex: none; } }

/* D01: cena a CTA výš — dodání až pod tlačítkem, cena bez horní linky. */
.wnz-buybox > .price { order: 1; padding-top: 0 !important; border-top: 0; }
.wnz-buybox > form.cart, .wnz-buybox > .wnz-product-inquiry { order: 2; }
.wnz-buybox__delivery { order: 3; padding-top: 14px; border-top: 1px solid var(--wnz-line); }
/* D09: pět modelů v jednom řádku, tvar sudu pod názvem. */
@media (min-width: 1024px) { .wnz-series--n5 ul { grid-template-columns: repeat(5, minmax(0, 1fr)); } .wnz-series--n6 ul { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.wnz-series__shape { font-size: 12px; line-height: 1.3; color: var(--wnz-muted); }
.wnz-series a .wnz-series__price { margin-top: 2px; }
@media (max-width: 1023px) { .wnz-series--n5 ul, .wnz-series--n6 ul { grid-template-columns: repeat(3, minmax(0, 1fr)); } .wnz-series--n5 a, .wnz-series--n6 a { padding: 10px; } }
/* N12: jeden primární styl tlačítek (zelená, 16/600, rádius 8, výška 48, bez verzálek); obrysové jen rádius. */
.rey-siteMain :is(.btn-primary, .elementor-button, .woocommerce-form-login__submit, .woocommerce-form-register__submit, .woocommerce-Button.button) {
	display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 24px;
	border-radius: var(--wnz-radius, 8px); background-color: var(--wnz-green); border-color: var(--wnz-green); color: #fff;
	font-size: 16px; font-weight: 600; text-transform: none; letter-spacing: 0;
}
.rey-siteMain :is(.btn-primary, .elementor-button, .woocommerce-form-login__submit, .woocommerce-form-register__submit, .woocommerce-Button.button):hover { background-color: #0f2b24; color: #fff; }
.rey-siteMain :is(.btn-primary-outline, .btn-line-active) { border-radius: var(--wnz-radius, 8px); text-transform: none; }
body .rey-siteMain .elementor-widget-button .elementor-button { border-radius: var(--wnz-radius, 8px); background-color: var(--wnz-green); }
body .rey-siteMain .elementor-widget-button .elementor-button:hover { background-color: #0f2b24; }
/* N13: jeden styl H1 (38/600, tmavá) a levý okraj podle hlavičky. */
.wnz-page-title { margin: 0 0 24px; font-size: 38px; font-weight: 600; line-height: 1.15; color: var(--wnz-ink); }
body .rey-siteMain .elementor .elementor-widget-heading h1.elementor-heading-title { font-size: 38px; font-weight: 600; line-height: 1.15; color: var(--wnz-ink); }
@media (max-width: 767px) { body .rey-siteMain .elementor .elementor-widget-heading h1.elementor-heading-title, .wnz-page-title { font-size: 30px; } }
@media (min-width: 1025px) {
	body :is(.elementor-206, .elementor-207, .elementor-209) > .elementor-section.elementor-top-section { padding-left: 0; padding-right: 0; }
	body .elementor:is(.elementor-206, .elementor-207, .elementor-209) > .elementor-section.elementor-top-section > .elementor-container { max-width: none; }
	body :is(.elementor-206, .elementor-207, .elementor-209) > .elementor-section > .elementor-container > .elementor-column > .elementor-widget-wrap { padding-left: 17px; padding-right: 17px; }
	body .rey-siteContent.--tpl-template-compact-php .rey-siteMain { max-width: none; margin-left: 0; margin-right: 0; }
}
:is(.elementor-206, .elementor-207, .elementor-209) .elementor-widget-text-editor { max-width: 760px; }
.rey-siteContent.--tpl-template-compact-php .rey-siteMain > * { max-width: 760px; }
/* S03: základní provedení sauny. */
.wnz-sauna-base ul { list-style: none; margin: 0 0 12px; padding: 0; border-top: 1px solid var(--wnz-line); }
.wnz-sauna-base li { display: flex; justify-content: space-between; gap: 16px; padding: 10px 0; border-bottom: 1px solid var(--wnz-line); }
.wnz-sauna-base li span { color: var(--wnz-muted); }
.wnz-sauna-base li strong { color: var(--wnz-ink); font-weight: 600; text-align: right; }
.wnz-sauna-base__link { color: var(--wnz-green); text-decoration: underline; text-underline-offset: 3px; }
/* G10: sauny v našeptávači. */
.wnz-search-sauna small { margin-left: 4px; font-size: 12px; font-weight: 400; color: var(--wnz-muted); }
/* S04: galerie realizací na detailu sauny. */
.wnz-sauna-gallery { margin-top: 16px; text-align: left; }
.wnz-sauna-gallery__label { margin: 0 0 8px; font-size: 14px; font-weight: 600; color: var(--wnz-ink); }
.wnz-sauna-gallery ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.wnz-sauna-gallery li { margin: 0; }
.wnz-sauna-gallery a { display: block; aspect-ratio: 1; overflow: hidden; border-radius: var(--wnz-radius); background: var(--wnz-surface); }
.wnz-sauna-gallery img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s var(--wnz-ease); }
.wnz-sauna-gallery a:hover img { transform: scale(1.04); }
.wnz-sauna-gallery a:focus-visible { outline: 2px solid var(--wnz-green); outline-offset: 2px; }
@media (max-width: 767px) { .wnz-sauna-gallery ul { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; } .wnz-sauna-gallery li { flex: 0 0 31%; scroll-snap-align: start; } }
/* K05: rozměr a objem na kartě produktu. */
.wnz-card-spec { margin: 2px 0 6px; font-size: 13px; line-height: 1.35; color: var(--wnz-muted); }
ul.products li.product .woocommerce-loop-product__title:has(+ .wnz-card-spec) { margin-bottom: 4px; }
/* S13: telefonní číslo se nezalamuje. G21: v mobilním menu jen jedna linka nad utility odkazy. */
a[href^="tel:"] { white-space: nowrap; }
.rey-mainMenu-mobile > li:has(+ .wnz-menu-utility):not(.wnz-menu-utility) { border-bottom: 0; }
