/*
Theme Name: Blocksy Child
Template: blocksy
Description: Child theme with PLANU store logic.
Version: 1.1.389
*/

:root {
	--planu-noc: #1F0C44; /* noc */
    --planu-wieczor: #524470; /* wieczór */
	--planu-poranek: #BAAED3; /* poranek */
	--planu-dzien: #F4F0FE; /* dzień */
	--planu-zolty: #FFD05C;
	--planu-czerwony: #D73E5A;
	--planu-zielony: #4DB49F;
	--planu-bialy: #fff;

	--planu-fw-regular: 400;
	--planu-fw-semibold: 600;
	--planu-fw-bold: 600;
	--planu-fw-body: var(--planu-fw-regular);
	--planu-fw-emphasis: var(--planu-fw-semibold);
	--planu-fw-heading: 700;
	--planu-fw-button: var(--planu-fw-bold);

	--planu-text: 18px;
	--planu-text-large: 21px;
	--planu-text-small: 15px;
	--planu-text-display: 50px;
	--planu-text-brand: 28px;
	--planu-text-caption: 13px;
	--planu-text-badge: 12px;
	--planu-text-product-title: 30px;
	--planu-star-size: 20px;
	--planu-star-pad: 2px;
	--planu-icon-delivery: 30px;
	--planu-tile-circle: 350px;
	--planu-tile-logo-scale-base: 0.3168;
	--planu-tile-logo-src-w-max: 1050px;
	--planu-tile-logo-src-w-1: 973px;
	--planu-tile-logo-src-w-2: 1050px;
	--planu-tile-logo-src-w-3: 746px;
	--planu-tile-logo-src-w-4: 856px;
	--planu-tile-logo-overlap: 40px;
	--planu-tile-logo-tilt-1: -6deg;
	--planu-tile-logo-tilt-2: 6deg;
	--planu-tile-logo-tilt-3: -10deg;
	--planu-tile-logo-tilt-4: 7deg;
	--planu-faq-width: 48rem;
	--planu-dialog-max-width: 56rem;
	--planu-dialog-max-height: 90vh;
	--planu-faq-gap: var(--planu-space-24);
	--planu-faq-icon-size: 24px;
	--planu-faq-icon-gap: var(--planu-space-12);
	--planu-faq-answer-indent: calc(var(--planu-faq-icon-size) + var(--planu-faq-icon-gap));
	--planu-faq-summary-pad-y: var(--planu-space-4);
	--planu-faq-open-pad-bottom: var(--planu-space-32);
	--planu-faq-answer-pad-y: var(--planu-space-8);
	--planu-closing-cta-sep: var(--planu-space-12);
	--planu-closing-cta-sep-gap: var(--planu-space-32);
	--planu-why-arrow: calc(var(--planu-tile-circle) * 0.28);
	--planu-why-arrow-nw-right: calc(var(--planu-why-arrow) * -1);
	--planu-why-arrow-nw-bottom: calc(var(--planu-why-arrow) * 0.25);
	--planu-why-arrow-nw-transform: scaleX(-1);
	--planu-why-arrow-ne-left: calc(var(--planu-why-arrow) * -1.2);
	--planu-why-arrow-ne-bottom: 0;
	--planu-why-arrow-ne-transform: scaleX(-1);
	--planu-why-arrow-sw-right: calc(var(--planu-why-arrow) * -1.05);
	--planu-why-arrow-sw-top: calc(var(--planu-why-arrow) * 0.55);
	--planu-why-arrow-sw-transform: scale(-1, -1);
	--planu-why-arrow-se-left: calc(var(--planu-why-arrow) * -1.2);
	--planu-why-arrow-se-top: calc(var(--planu-why-arrow) * 0.5);
	--planu-why-arrow-se-transform: scale(-1, -1);
	--planu-control-size: 24px;
	--planu-tap: 44px;
	--planu-contact-message-height: calc(var(--theme-form-field-height, 52px) * 3);
	--planu-qty-icon-size: calc(var(--planu-control-size) * 0.8);
	--planu-control-radius: 4px;
	--planu-radius: 8px;
	--planu-radius-image: 10px;
	--planu-radius-section: 28px;
	--planu-radius-pill: 999px;
	--planu-sticky-offset: var(--planu-space-16);
	--planu-header-height: 80px;
	--planu-header-height-mobile: 64px;
	--planu-bottom-nav-height: 80px;
	--planu-bottom-nav-icon: 24px;
	--planu-bottom-nav-action: 64px;
	--planu-bottom-nav-inset: var(--planu-space-16);
	--planu-bottom-nav-radius: var(--planu-radius-pill);
	--planu-bottom-nav-atc-width: 75%;
	--planu-pdp-params-sep: var(--planu-space-12);
	--planu-gallery-gutter: var(--planu-space-8);
	--planu-gallery-mobile-thumbs: 3.35;
	--planu-gallery-desktop-strip-thumb: 18%;
	--planu-gallery-play-size: var(--planu-space-64);
	--planu-gallery-play-size-thumb: var(--planu-space-48);
	--planu-gallery-play-icon-thumb: var(--planu-space-24);
	--planu-dialog-video-max-height: calc(var(--planu-dialog-max-height) - var(--planu-tap) - var(--planu-space-cluster) - var(--planu-space-related));
	--planu-header-border-width: 2px;
	--planu-header-glass-after: 30px;
	--planu-header-glass-until: 8px;
	--planu-logo-height: 40px;
	--planu-header-logo-height: 35px;
	--planu-header-logo-height-mobile: 28px;
	--planu-toast-inset: var(--planu-space-24);
	--planu-control-check-width: 12px;
	--planu-control-check-height: 7px;
	--planu-control-check-stroke: 3px;
	--planu-control-check-nudge: -3px;
	--planu-control-dot-size: 10px;
	--planu-btn-fill-size: 12px;
	--planu-btn-text-underline: 3px;
	--planu-btn-text-underline-offset: 6px;
	--planu-btn-min-height: 0px;

	/* Cienie: barwa z marki (noc), nigdy czysta czerń. Światło zawsze z góry (offset X = 0). */
	--planu-shadow-tint-close: color-mix(in srgb, var(--planu-noc) 12%, transparent);
	--planu-shadow-tint-mid: color-mix(in srgb, var(--planu-noc) 8%, transparent);
	--planu-shadow-tint-far: color-mix(in srgb, var(--planu-noc) 5%, transparent);

	--planu-elevation-0: none;
	--planu-elevation-1: 0 1px 2px var(--planu-shadow-tint-close), 0 2px 6px var(--planu-shadow-tint-far);
	--planu-elevation-2: 0 2px 4px var(--planu-shadow-tint-close), 0 8px 16px var(--planu-shadow-tint-far);
	--planu-elevation-3: 0 4px 8px var(--planu-shadow-tint-mid), 0 16px 32px var(--planu-shadow-tint-far);
	--planu-elevation-4: 0 8px 16px var(--planu-shadow-tint-mid), 0 32px 64px var(--planu-shadow-tint-far);

	--planu-shadow-flat: var(--planu-elevation-0);
	--planu-shadow-sticky: var(--planu-elevation-1);
	--planu-shadow-raised: var(--planu-elevation-2);
	--planu-shadow-dropdown: var(--planu-elevation-3);
	--planu-shadow-overlay: var(--planu-elevation-4);
	--planu-orb-img-scale: 1.05;
	--planu-hero-orb-size: 168px;
	--planu-orb-edge: #333;
	--planu-orb-edge-shift: 4px;
	--planu-orb-edge-shift-scaled: calc(var(--planu-orb-edge-shift) * var(--planu-tile-circle) / var(--planu-hero-orb-size));
	--planu-why-stage-gap: var(--planu-space-48);
	/* Magnes ~5 mm na stole: ciasna umbra + miękkie AO, X=0. */
	--planu-shadow-magnet-umbra: color-mix(in srgb, var(--planu-noc) 22%, transparent);
	--planu-shadow-magnet-ao: color-mix(in srgb, var(--planu-noc) 10%, transparent);
	--planu-shadow-magnet: 0 2px 4px var(--planu-shadow-magnet-umbra), 0 6px 14px var(--planu-shadow-magnet-ao);
	--planu-filter-magnet:
		drop-shadow(1px calc(3px + var(--planu-orb-edge-shift)) 4px var(--planu-shadow-magnet-umbra))
		drop-shadow(2px calc(8px + var(--planu-orb-edge-shift)) 14px var(--planu-shadow-magnet-ao));
	--planu-shadow-orb:
		0 var(--planu-orb-edge-shift) 0 var(--planu-orb-edge),
		1px calc(3px + var(--planu-orb-edge-shift)) 4px var(--planu-shadow-magnet-umbra),
		2px calc(8px + var(--planu-orb-edge-shift)) 14px var(--planu-shadow-magnet-ao);

	/* Gradienty: opowiadają dobę marki (noc → dzień). Interpolacja w oklab, żeby fiolet nie szarzał po drodze. */
	--planu-gradient-doba: linear-gradient(160deg in oklab, var(--planu-noc) 0%, var(--planu-wieczor) 100%);
	--planu-gradient-aura:
		radial-gradient(70% 70% at 12% 0%, color-mix(in srgb, var(--planu-zolty) 45%, transparent) 0%, transparent 62%),
		radial-gradient(65% 65% at 88% 0%, color-mix(in srgb, var(--planu-czerwony) 35%, transparent) 0%, transparent 62%),
		radial-gradient(80% 70% at 50% 55%, color-mix(in srgb, var(--planu-poranek) 50%, transparent) 0%, transparent 70%);
	--planu-gradient-hero:
		linear-gradient(to bottom, transparent 55%, var(--planu-dzien)),
		linear-gradient(to bottom in oklab, color-mix(in srgb, var(--planu-poranek) 40%, var(--planu-dzien)) 0, color-mix(in srgb, var(--planu-wieczor) 8%, var(--planu-dzien)) 50%, var(--planu-dzien) 100%);
	--planu-gradient-scrim: linear-gradient(to top in oklab, color-mix(in srgb, var(--planu-noc) 85%, transparent) 0%, color-mix(in srgb, var(--planu-noc) 35%, transparent) 45%, transparent 100%);
	--planu-gradient-sheen: linear-gradient(to bottom in oklab, color-mix(in srgb, var(--planu-bialy) 12%, transparent) 0%, transparent 45%);

	/* Ruch: animujemy tylko transform i opacity. Wyjście zawsze szybsze od wejścia. */
	--planu-duration-instant: 80ms;
	--planu-duration-fast: 120ms;
	--planu-duration-base: 200ms;
	--planu-duration-slow: 300ms;
	--planu-duration-slower: 450ms;

	--planu-ease-standard: cubic-bezier(0.2, 0, 0, 1);
	--planu-ease-enter: cubic-bezier(0.22, 1, 0.36, 1);
	--planu-ease-exit: cubic-bezier(0.4, 0, 1, 1);
	--planu-ease-expressive: cubic-bezier(0.34, 1.35, 0.64, 1);

	--planu-motion-feedback: var(--planu-duration-fast) var(--planu-ease-standard);
	--planu-motion-hover: var(--planu-duration-base) var(--planu-ease-standard);
	--planu-motion-enter: var(--planu-duration-slow) var(--planu-ease-enter);
	--planu-motion-exit: var(--planu-duration-base) var(--planu-ease-exit);
	--planu-motion-expressive: var(--planu-duration-slower) var(--planu-ease-expressive);

	/* Typografia — detale: miara, interlinia, światło międzyliterowe. */
	--planu-measure: 65ch;
	--planu-leading-body: 1.5;
	--planu-leading-heading: 1.15;
	--planu-leading-tight: 1;
	--planu-tracking-display: -0.02em;
	--planu-tracking-label: 0.08em;

	/* Powierzchnie: ziarno łamie pasowanie gradientu, szkło przepuszcza to, co pod spodem. */
	--planu-grain: url("grain.png");
	--planu-grain-opacity: 0.25;
	--planu-glass-bg: color-mix(in srgb, var(--planu-bialy) 62%, transparent);
	--planu-glass-blur: blur(12px) saturate(180%);
	--planu-glass-rim: inset 0 1px 0 color-mix(in srgb, var(--planu-bialy) 65%, transparent);
	--planu-focus-width: 2px;
	--planu-focus-offset: 3px;

	/* Odstępy: siatka 4 px. Wewnątrz komponentu kroki 4, między sekcjami kroki 8. */
	--planu-space-4: 4px;
	--planu-space-8: 8px;
	--planu-space-12: 12px;
	--planu-space-16: 16px;
	--planu-space-24: 24px;
	--planu-space-32: 32px;
	--planu-space-48: 48px;
	--planu-space-64: 64px;
	--planu-space-96: 96px;

	--planu-space-tight: var(--planu-space-4);
	--planu-space-related: var(--planu-space-8);
	--planu-space-inset: var(--planu-space-16);
	--planu-space-group: var(--planu-space-24);
	--planu-space-cluster: var(--planu-space-32);
	--planu-space-section: var(--planu-space-48);
	--planu-space-break: var(--planu-space-64);
	--planu-space-stage: var(--planu-space-96);

	--planu-mini-cart-item-gap: var(--planu-space-24);
	--planu-mini-cart-title-gap: var(--planu-space-8);
	--planu-mini-cart-heading-gap: var(--planu-space-24);
	--planu-hero-btn-gap: var(--planu-space-24);
	--planu-mega-pad: var(--planu-space-32);
	--planu-mega-width: 800px;
	--planu-mega-image: var(--planu-tile-circle);
	--planu-mega-circle: calc(var(--planu-tile-circle) + var(--planu-space-64) + var(--planu-space-48));
	--planu-mega-circle-shift-x: calc(var(--planu-space-64) + var(--planu-space-48) + var(--planu-space-16) + var(--planu-space-24) + var(--planu-space-48));
	--planu-mega-circle-shift-y: calc(var(--planu-space-64) + var(--planu-space-24));
	--planu-mega-circle-nudge: var(--planu-space-24);
	--planu-mega-circle-image-x: 0%;
	--planu-mega-circle-image-y: 25%;
	--planu-mega-circle-image-size: auto calc(100% - var(--planu-mega-circle-shift-y));
	--planu-shipping-method-gap: var(--planu-space-16);
	--planu-product-card-margin: var(--planu-space-24);
	--planu-product-card-padding-bottom: var(--planu-space-24);

	--planu-font-body: "Outfit", sans-serif;
	--planu-font-heading: "McLaren", sans-serif;

	--theme-font-family: var(--planu-font-body);
	--theme-link-initial-color: var(--theme-text-color);
	--theme-link-hover-color: var(--planu-noc);
	--theme-headings-color: var(--planu-noc);
	--theme-text-color: var(--planu-wieczor);
	--theme-palette-color-8: var(--planu-dzien);
}

html:root {
	--theme-palette-color-4: var(--planu-noc);
	--theme-palette-color-7: var(--planu-dzien);
	--theme-palette-color-8: var(--planu-dzien);
	--theme-headings-color: var(--planu-noc);
	--theme-icon-color: var(--planu-noc);
	--theme-icon-hover-color: var(--planu-noc);
}

html {
	scroll-behavior: auto;
	overflow-x: clip;
}

/* Blocksy sets overflow:hidden on body when a panel opens. That makes body a
   scrollport, so header#header (position: sticky) unsticks and slides up, and
   the missing scrollbar gutter lets the page jump right. Lock html instead. */
html:has(body[data-panel]) {
	overflow-y: hidden;
	scrollbar-gutter: stable;
}

body[data-panel] {
	overflow: visible !important;
	padding-right: 0;
}

@media (prefers-reduced-motion: reduce) {
	:root {
		--planu-duration-instant: 1ms;
		--planu-duration-fast: 1ms;
		--planu-duration-base: 1ms;
		--planu-duration-slow: 1ms;
		--planu-duration-slower: 1ms;
	}
}

.planu-palette {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	margin: 1.5em 0 2.5em;
}

.planu-palette__item {
	width: 140px;
}

.planu-palette__swatch {
	width: 140px;
	height: 140px;
	border: 1px solid var(--planu-poranek);
}

.planu-palette__name {
	margin: 8px 0 0;
}

.planu-palette__hex {
	margin: 0;
}

.planu-color-noc {
	color: var(--planu-noc);
}

.planu-color-wieczor {
	color: var(--planu-wieczor);
}

.planu-color-poranek {
	color: var(--planu-poranek);
}

.planu-color-dzien {
	color: var(--planu-dzien);
}

.planu-on-dark {
	background: var(--planu-noc);
	padding: 24px;
	margin: 1.5em 0 2.5em;
}

.planu-buttons__item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.planu-elevation {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	margin: 1.5em 0 2.5em;
	padding: 40px;
	border-radius: var(--planu-radius);
	background: var(--planu-dzien);
}

.planu-elevation__item {
	width: 200px;
}

.planu-elevation__item--wide {
	width: 320px;
}

.planu-elevation__box {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 120px;
	padding: 16px;
	border-radius: var(--planu-radius);
	background: var(--planu-bialy);
	font-weight: var(--planu-fw-emphasis);
	transition: box-shadow var(--planu-motion-hover), transform var(--planu-motion-hover);
}

.planu-elevation__box--0 {
	box-shadow: var(--planu-elevation-0);
}

.planu-elevation__box--1 {
	box-shadow: var(--planu-elevation-1);
}

.planu-elevation__box--2 {
	box-shadow: var(--planu-elevation-2);
}

.planu-elevation__box--3 {
	box-shadow: var(--planu-elevation-3);
}

.planu-elevation__box--4 {
	box-shadow: var(--planu-elevation-4);
}

.planu-elevation__box--lift:hover {
	box-shadow: var(--planu-shadow-raised);
	transform: translateY(-4px);
}

.planu-elevation__stage {
	position: relative;
	overflow: hidden;
	align-items: flex-start;
	justify-content: flex-start;
	font-weight: var(--planu-fw-body);
}

.planu-elevation__panel {
	position: absolute;
	left: 16px;
	right: 16px;
	bottom: 16px;
	height: auto;
}

.planu-gradient {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	margin: 1.5em 0 2.5em;
}

.planu-gradient__item {
	width: 260px;
}

.planu-gradient__box {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	height: 180px;
	padding: 20px;
	border-radius: var(--planu-radius);
	text-align: center;
	font-weight: var(--planu-fw-emphasis);
}

.planu-gradient__box--doba {
	background: var(--planu-gradient-doba);
	color: var(--planu-dzien);
}

.planu-gradient__box--aura {
	background: var(--planu-gradient-aura), var(--planu-dzien);
	color: var(--planu-noc);
}

.planu-gradient__box--scrim {
	align-items: flex-end;
	background: var(--planu-gradient-scrim), linear-gradient(120deg in oklab, var(--planu-zolty), var(--planu-czerwony));
	color: var(--planu-bialy);
}

.planu-gradient__box--sheen {
	background: var(--planu-gradient-sheen), var(--planu-noc);
	color: var(--planu-dzien);
}

.planu-gradient__box--fade {
	justify-content: flex-start;
	text-align: left;
	background: var(--planu-dzien);
	color: var(--planu-wieczor);
	font-weight: var(--planu-fw-body);
}

.planu-gradient__box--fade::after {
	content: "";
	position: absolute;
	inset: 0 0 0 auto;
	width: 35%;
	background: linear-gradient(to left, var(--planu-dzien), transparent);
}

.planu-motion {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	margin: 1.5em 0 2.5em;
}

.planu-motion__item {
	width: 260px;
}

.planu-motion__track {
	position: relative;
	height: 56px;
	padding: 8px;
	border-radius: 999px;
	background: var(--planu-dzien);
}

.planu-motion__dot {
	position: absolute;
	top: 8px;
	left: 8px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--planu-noc);
}

.planu-motion__track:hover .planu-motion__dot {
	transform: translateX(204px);
}

.planu-motion__dot--fast {
	transition: transform var(--planu-duration-fast) var(--planu-ease-standard);
}

.planu-motion__dot--base {
	transition: transform var(--planu-duration-base) var(--planu-ease-standard);
}

.planu-motion__dot--slow {
	transition: transform var(--planu-duration-slow) var(--planu-ease-standard);
}

.planu-motion__dot--slower {
	transition: transform var(--planu-duration-slower) var(--planu-ease-standard);
}

.planu-motion__dot--standard {
	transition: transform var(--planu-duration-slow) var(--planu-ease-standard);
}

.planu-motion__dot--enter {
	transition: transform var(--planu-duration-slow) var(--planu-ease-enter);
}

.planu-motion__dot--exit {
	transition: transform var(--planu-duration-slow) var(--planu-ease-exit);
}

.planu-motion__dot--expressive {
	transition: transform var(--planu-duration-slow) var(--planu-ease-expressive);
}

.planu-motion__stage {
	position: relative;
	overflow: hidden;
	height: 180px;
	padding: 20px;
	border-radius: var(--planu-radius);
	background: var(--planu-bialy);
	box-shadow: var(--planu-elevation-1);
}

.planu-motion__panel {
	position: absolute;
	left: 20px;
	right: 20px;
	bottom: 20px;
	padding: 16px;
	border-radius: var(--planu-radius);
	background: var(--planu-bialy);
	box-shadow: var(--planu-shadow-dropdown);
	opacity: 0;
	transform: translateY(8px);
	transition: opacity var(--planu-motion-exit), transform var(--planu-motion-exit);
}

.planu-motion__stage:hover .planu-motion__panel {
	opacity: 1;
	transform: translateY(0);
	transition: opacity var(--planu-motion-enter), transform var(--planu-motion-enter);
}

.planu-label {
	display: block;
	text-transform: uppercase;
	letter-spacing: var(--planu-tracking-label);
	font-size: var(--planu-text-caption);
	font-weight: var(--planu-fw-emphasis);
	color: var(--planu-wieczor);
}

.planu-type {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	margin: 1.5em 0 2.5em;
}

.planu-type__item {
	flex: 1 1 300px;
	min-width: 280px;
	padding: 24px;
	border-radius: var(--planu-radius);
	background: var(--planu-dzien);
}

.planu-type__demo {
	margin: 0 0 20px;
}

.planu-type__demo:last-child {
	margin-bottom: 0;
}

.planu-type__demo--raw {
	text-wrap: wrap;
}

.planu-type__demo--balance {
	text-wrap: balance;
}

.planu-type__demo--pretty {
	text-wrap: pretty;
}

.planu-type__demo--display {
	font-size: var(--planu-text-display);
	line-height: var(--planu-leading-heading);
}

.planu-type__demo--tight {
	letter-spacing: var(--planu-tracking-display);
}

.planu-surface {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	margin: 1.5em 0 2.5em;
}

.planu-surface__item {
	width: 260px;
}

.planu-surface__item--wide {
	width: 100%;
}

.planu-surface__box {
	position: relative;
	isolation: isolate;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	height: 180px;
	padding: 20px;
	border-radius: var(--planu-radius);
	background: var(--planu-gradient-doba);
	text-align: center;
	color: var(--planu-dzien);
	font-weight: var(--planu-fw-emphasis);
}

.planu-surface__box--grain::after {
	content: "";
	position: absolute;
	inset: 0;
	background-image: var(--planu-grain);
	background-size: 128px 128px;
	opacity: var(--planu-grain-opacity);
	mix-blend-mode: overlay;
	pointer-events: none;
}

.planu-space {
	display: flex;
	flex-direction: column;
	gap: var(--planu-space-16);
	margin: 1.5em 0 2.5em;
}

.planu-space__row {
	display: flex;
	align-items: center;
	gap: var(--planu-space-16);
}

.planu-space__bar {
	height: 24px;
	background: var(--planu-noc);
	border-radius: 2px;
	flex: 0 0 auto;
}

.planu-space__bar--4 { width: var(--planu-space-4); }
.planu-space__bar--8 { width: var(--planu-space-8); }
.planu-space__bar--12 { width: var(--planu-space-12); }
.planu-space__bar--16 { width: var(--planu-space-16); }
.planu-space__bar--24 { width: var(--planu-space-24); }
.planu-space__bar--32 { width: var(--planu-space-32); }
.planu-space__bar--48 { width: var(--planu-space-48); }
.planu-space__bar--64 { width: var(--planu-space-64); }
.planu-space__bar--96 { width: var(--planu-space-96); }

.planu-space__label {
	margin: 0;
	min-width: 9ch;
}

.planu-space__demo {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--planu-space-32);
	margin: 1.5em 0 2.5em;
	padding: var(--planu-space-32);
	border-radius: var(--planu-radius);
	background: var(--planu-dzien);
}

.planu-space__card {
	padding: var(--planu-space-16);
	border-radius: var(--planu-radius);
	background: var(--planu-bialy);
}

.planu-space__card p {
	margin: 0;
}

.planu-space__card p + p {
	margin-top: var(--planu-space-8);
}

.planu-space__stack {
	display: flex;
	flex-direction: column;
	gap: var(--planu-space-24);
}

.planu-surface__box--glass {
	display: block;
	height: 220px;
	padding: 0;
	background: var(--planu-gradient-aura), var(--planu-dzien);
	text-align: left;
	color: var(--planu-noc);
	font-weight: var(--planu-fw-body);
}

.planu-surface__content {
	padding: 16px 20px;
}

.planu-surface__content p {
	margin: 0;
}

.planu-surface__blob {
	display: inline-block;
	width: 56px;
	height: 56px;
	margin: 0 10px 12px 0;
	border-radius: 50%;
	vertical-align: middle;
}

.planu-surface__blob--zolty {
	background: var(--planu-zolty);
}

.planu-surface__blob--czerwony {
	background: var(--planu-czerwony);
}

.planu-surface__blob--zielony {
	background: var(--planu-zielony);
}

.planu-surface__blob--noc {
	background: var(--planu-noc);
}

.planu-surface__glass {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	height: 44px;
	padding: 0 20px;
	background: var(--planu-glass-bg);
	backdrop-filter: var(--planu-glass-blur);
	-webkit-backdrop-filter: var(--planu-glass-blur);
	box-shadow: var(--planu-glass-rim), var(--planu-elevation-1);
	font-weight: var(--planu-fw-emphasis);
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	.planu-surface__glass {
		background: color-mix(in srgb, var(--planu-bialy) 92%, transparent);
	}
}

@media (prefers-reduced-motion: reduce) {
	.planu-motion__dot {
		transition: none;
	}

	.planu-motion__panel,
	.planu-motion__stage:hover .planu-motion__panel {
		transform: none;
		transition: opacity var(--planu-duration-fast) var(--planu-ease-standard);
	}
}

body a.planu-btn:not(.planu-btn--text),
.woocommerce :is(a, button, input).button.planu-btn:not(.planu-btn--text),
.planu-btn,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text),
body:not(.wp-admin) .single-product .single_add_to_cart_button,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) :is(a, button).button:not(.planu-btn--text),
body:not(.wp-admin) #woo-cart-panel :is(a, button).button:not(.planu-btn--text),
body:not(.wp-admin) .widget_price_filter button.button,
body:not(.wp-admin) .wp-block-button .wp-element-button:not(.planu-btn--text),
body:not(.wp-admin) #place_order,
body:not(.wp-admin) .checkout-button,
body:not(.wp-admin) #woochimp_shortcode_subscription_submit,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 40px;
	border: 2px solid transparent;
	--theme-button-border: 2px solid transparent;
	border-radius: 999px;
	box-sizing: border-box;
	appearance: none;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-button);
	text-decoration: none;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	position: relative;
	isolation: isolate;
	transition: color var(--planu-motion-feedback), transform var(--planu-duration-instant) var(--planu-ease-standard), border-color var(--planu-motion-feedback);
	--theme-button-shadow: none;
	--theme-button-transform: none;
	--theme-button-text-transform: none;
	min-height: var(--planu-btn-min-height);
	--theme-button-min-height: var(--planu-btn-min-height);
	--theme-button-padding: 10px 40px;
	--theme-button-font-size: var(--planu-text);
	--theme-button-font-weight: var(--planu-fw-button);
}

body:not(.wp-admin).single-product .single_add_to_cart_button,
body:not(.wp-admin).single-product form.cart .planu-btn--primary,
body:not(.wp-admin) .ct-header-cart .woocommerce-mini-cart__buttons .checkout,
body:not(.wp-admin) #woo-cart-panel .woocommerce-mini-cart__buttons .checkout,
body:not(.wp-admin).woocommerce-cart .checkout-button,
body:not(.wp-admin).woocommerce-checkout #place_order,
body:not(.wp-admin).woocommerce-order-pay #place_order {
	text-transform: uppercase;
	--theme-button-text-transform: uppercase;
}

.planu-btn:hover,
.woocommerce :is(a, button, input).button.planu-btn:hover,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:hover,
body:not(.wp-admin) .single-product .single_add_to_cart_button:hover,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) :is(a, button).button:hover,
body:not(.wp-admin) #woo-cart-panel :is(a, button).button:hover,
body:not(.wp-admin) .wp-block-button .wp-element-button:hover,
body:not(.wp-admin) #place_order:hover,
body:not(.wp-admin) .checkout-button:hover,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]:hover {
	text-decoration: none;
}

.planu-btn:active,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:active,
body:not(.wp-admin) .single-product .single_add_to_cart_button:active,
body:not(.wp-admin) #place_order:active,
body:not(.wp-admin) .checkout-button:active,
body:not(.wp-admin) .wp-block-button .wp-element-button:active,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]:active {
	transform: scale(0.97);
}

.woocommerce :is(a, button, input).button.planu-btn--primary,
.woocommerce :is(a, button, input).button.planu-btn--secondary,
.planu-btn--primary,
.planu-btn--secondary,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text),
body:not(.wp-admin) .single-product .single_add_to_cart_button,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) :is(a, button).button:not(.planu-btn--text),
body:not(.wp-admin) #woo-cart-panel :is(a, button).button:not(.planu-btn--text),
body:not(.wp-admin) .widget_price_filter button.button,
body:not(.wp-admin) .wp-block-button .wp-element-button,
body:not(.wp-admin) #place_order,
body:not(.wp-admin) .checkout-button,
body:not(.wp-admin) #woochimp_shortcode_subscription_submit,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"] {
	overflow: hidden;
}

.planu-btn__fill {
	position: absolute;
	inset: unset;
	left: var(--planu-btn-x, 0px);
	top: var(--planu-btn-y, 0px);
	right: auto;
	bottom: auto;
	margin: 0;
	width: var(--planu-btn-fill-size);
	height: var(--planu-btn-fill-size);
	border-radius: 50%;
	transform: translate(-50%, -50%) scale(0);
	transition: transform var(--planu-motion-hover);
	pointer-events: none;
	z-index: -1;
}

.planu-btn--primary > .planu-btn__fill,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):not(.planu-btn--secondary) > .planu-btn__fill,
body:not(.wp-admin) .single-product .single_add_to_cart_button > .planu-btn__fill,
body:not(.wp-admin) .wp-block-button:not(.is-style-outline) .wp-element-button > .planu-btn__fill,
body:not(.wp-admin) #place_order > .planu-btn__fill,
body:not(.wp-admin) .checkout-button > .planu-btn__fill,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"] > .planu-btn__fill {
	background: var(--planu-noc);
}

.planu-btn--secondary > .planu-btn__fill,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout) :is(button, input)[name="apply_coupon"] > .planu-btn__fill,
body:not(.wp-admin) .wp-block-button.is-style-outline .wp-element-button > .planu-btn__fill {
	background: var(--planu-czerwony);
}

.planu-btn--primary:focus-visible > .planu-btn__fill {
	transform: translate(-50%, -50%) scale(40);
}

@media (hover: hover) and (pointer: fine) {
	.planu-btn--primary.planu-btn--hot > .planu-btn__fill,
	.planu-btn--secondary.planu-btn--hot > .planu-btn__fill,
	body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text).planu-btn--hot > .planu-btn__fill,
	body:not(.wp-admin) .single-product .single_add_to_cart_button.planu-btn--hot > .planu-btn__fill,
	body:not(.wp-admin) .wp-block-button .wp-element-button.planu-btn--hot > .planu-btn__fill,
	body:not(.wp-admin) #place_order.planu-btn--hot > .planu-btn__fill,
	body:not(.wp-admin) .checkout-button.planu-btn--hot > .planu-btn__fill,
	body:not(.wp-admin) .comment-form :is(button, input)[type="submit"].planu-btn--hot > .planu-btn__fill {
		transform: translate(-50%, -50%) scale(40);
	}
}

.planu-btn--primary:active > .planu-btn__fill,
.planu-btn--secondary:active > .planu-btn__fill {
	transform: translate(-50%, -50%) scale(45);
	transition-duration: var(--planu-duration-fast);
}

.planu-btn--secondary:focus:not(:hover) > .planu-btn__fill,
.planu-btn--secondary:focus-visible:not(:hover) > .planu-btn__fill,
.woocommerce :is(a, button, input).button.planu-btn--secondary:focus:not(:hover) > .planu-btn__fill,
.woocommerce :is(a, button, input).button.planu-btn--secondary:focus-visible:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button.planu-btn--secondary:focus:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button.planu-btn--secondary:focus-visible:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout) :is(button, input)[name="apply_coupon"]:focus:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout) :is(button, input)[name="apply_coupon"]:focus-visible:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) .woocommerce-cart button[name="update_cart"]:focus:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) .woocommerce-cart button[name="update_cart"]:focus-visible:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) .woocommerce-cart button[name="calc_shipping"]:focus:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) .woocommerce-checkout button[name="woocommerce_checkout_update_totals"]:focus:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a.button.wc-forward:not(.checkout):not(.checkout-button):focus:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a.button.wc-forward:not(.checkout):not(.checkout-button):focus-visible:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) a.added_to_cart:focus:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) a.added_to_cart:focus-visible:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) .wp-block-button.is-style-outline .wp-element-button:focus:not(:hover) > .planu-btn__fill,
body:not(.wp-admin) .wp-block-button.is-style-outline .wp-element-button:focus-visible:not(:hover) > .planu-btn__fill {
	transform: translate(-50%, -50%) scale(0);
}

.woocommerce :is(a, button, input).button.planu-btn--primary::before,
.woocommerce :is(a, button, input).button.planu-btn--secondary::before,
.planu-btn--primary::before,
.planu-btn--secondary::before,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text)::before,
body:not(.wp-admin) .single-product .single_add_to_cart_button::before,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) :is(a, button).button:not(.planu-btn--text)::before,
body:not(.wp-admin) #woo-cart-panel :is(a, button).button:not(.planu-btn--text)::before,
body:not(.wp-admin) .widget_price_filter button.button::before,
body:not(.wp-admin) .wp-block-button .wp-element-button::before,
body:not(.wp-admin) #place_order::before,
body:not(.wp-admin) .checkout-button::before,
body:not(.wp-admin) #woochimp_shortcode_subscription_submit::before,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]::before,
.woocommerce :is(a, button, input).button.planu-btn--primary:hover::before,
.woocommerce :is(a, button, input).button.planu-btn--primary:focus-visible::before,
.woocommerce :is(a, button, input).button.planu-btn--secondary:hover::before,
.woocommerce :is(a, button, input).button.planu-btn--secondary:focus-visible::before,
.planu-btn--primary:hover::before,
.planu-btn--primary:focus-visible::before,
.planu-btn--secondary:hover::before,
.planu-btn--secondary:focus-visible::before,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):hover::before,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):focus-visible::before,
body:not(.wp-admin) .single-product .single_add_to_cart_button:hover::before,
body:not(.wp-admin) .single-product .single_add_to_cart_button:focus-visible::before,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) :is(a, button).button:not(.planu-btn--text):hover::before,
body:not(.wp-admin) #woo-cart-panel :is(a, button).button:not(.planu-btn--text):hover::before,
body:not(.wp-admin) .wp-block-button .wp-element-button:hover::before,
body:not(.wp-admin) .wp-block-button .wp-element-button:focus-visible::before,
body:not(.wp-admin) #place_order:hover::before,
body:not(.wp-admin) #place_order:focus-visible::before,
body:not(.wp-admin) .checkout-button:hover::before,
body:not(.wp-admin) .checkout-button:focus-visible::before,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]:hover::before,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]:focus-visible::before,
.woocommerce :is(a, button, input).button.planu-btn--primary:active::before,
.woocommerce :is(a, button, input).button.planu-btn--secondary:active::before,
.planu-btn--primary:active::before,
.planu-btn--secondary:active::before,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):active::before,
body:not(.wp-admin) .single-product .single_add_to_cart_button:active::before,
body:not(.wp-admin) #place_order:active::before,
body:not(.wp-admin) .checkout-button:active::before,
body:not(.wp-admin) .wp-block-button .wp-element-button:active::before,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]:active::before {
	content: none;
	display: none;
}

a.planu-btn--primary,
.woocommerce :is(a, button, input).button.planu-btn--primary,
.planu-btn--primary,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):not(.planu-btn--secondary):not([name="apply_coupon"]):not([name="update_cart"]):not([name="calc_shipping"]):not([name="woocommerce_checkout_update_totals"]),
body:not(.wp-admin) .single-product .single_add_to_cart_button,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) :is(a, button).button:not(.planu-btn--text):not(.planu-btn--secondary):not(.wc-forward):not(.added_to_cart),
body:not(.wp-admin) #woo-cart-panel :is(a, button).button:not(.planu-btn--text):not(.planu-btn--secondary):not(.wc-forward):not(.added_to_cart),
body:not(.wp-admin) .widget_price_filter button.button,
body:not(.wp-admin) .wp-block-button:not(.is-style-outline) .wp-element-button,
body:not(.wp-admin) #place_order,
body:not(.wp-admin) .checkout-button,
body:not(.wp-admin) #woochimp_shortcode_subscription_submit,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"] {
	background: var(--planu-czerwony);
	background-color: var(--planu-czerwony);
	border-color: var(--planu-czerwony);
	color: var(--planu-bialy);
	--theme-button-background-initial-color: var(--planu-czerwony);
	--theme-button-background-hover-color: var(--planu-czerwony);
	--theme-button-text-initial-color: var(--planu-bialy);
	--theme-button-text-hover-color: var(--planu-bialy);
}

.planu-btn--primary::before,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):not(.planu-btn--secondary):not([name="apply_coupon"]):not([name="update_cart"]):not([name="calc_shipping"]):not([name="woocommerce_checkout_update_totals"])::before,
body:not(.wp-admin) .single-product .single_add_to_cart_button::before,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) :is(a, button).button:not(.planu-btn--text):not(.planu-btn--secondary):not(.wc-forward):not(.added_to_cart)::before,
body:not(.wp-admin) #woo-cart-panel :is(a, button).button:not(.planu-btn--text):not(.planu-btn--secondary)::before,
body:not(.wp-admin) .widget_price_filter button.button::before,
body:not(.wp-admin) .wp-block-button:not(.is-style-outline) .wp-element-button::before,
body:not(.wp-admin) #place_order::before,
body:not(.wp-admin) .checkout-button::before,
body:not(.wp-admin) #woochimp_shortcode_subscription_submit::before,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]::before {
	content: none;
	display: none;
}

a.planu-btn--primary:hover,
a.planu-btn--primary:focus-visible,
.woocommerce :is(a, button, input).button.planu-btn--primary:hover,
.woocommerce :is(a, button, input).button.planu-btn--primary:focus-visible,
.planu-btn--primary:hover,
.planu-btn--primary:focus-visible,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):not(.planu-btn--secondary):not([name="apply_coupon"]):not([name="update_cart"]):not([name="calc_shipping"]):not([name="woocommerce_checkout_update_totals"]):hover,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):not(.planu-btn--secondary):not([name="apply_coupon"]):not([name="update_cart"]):not([name="calc_shipping"]):not([name="woocommerce_checkout_update_totals"]):focus-visible,
body:not(.wp-admin) .single-product .single_add_to_cart_button:hover,
body:not(.wp-admin) .single-product .single_add_to_cart_button:focus-visible,
body:not(.wp-admin) .wp-block-button:not(.is-style-outline) .wp-element-button:hover,
body:not(.wp-admin) .wp-block-button:not(.is-style-outline) .wp-element-button:focus-visible,
body:not(.wp-admin) #place_order:hover,
body:not(.wp-admin) #place_order:focus-visible,
body:not(.wp-admin) .checkout-button:hover,
body:not(.wp-admin) .checkout-button:focus-visible,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]:hover,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]:focus-visible {
	background: var(--planu-czerwony);
	background-color: var(--planu-czerwony);
	border-color: var(--planu-noc);
}

a.planu-btn--primary:hover,
a.planu-btn--primary:focus,
a.planu-btn--primary:focus-visible,
a.planu-btn--primary:active,
.woocommerce :is(a, button, input).button.planu-btn--primary:hover,
.woocommerce :is(a, button, input).button.planu-btn--primary:focus,
.woocommerce :is(a, button, input).button.planu-btn--primary:focus-visible,
.woocommerce :is(a, button, input).button.planu-btn--primary:active,
.planu-btn--primary:hover,
.planu-btn--primary:focus,
.planu-btn--primary:focus-visible,
.planu-btn--primary:active,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):not(.planu-btn--secondary):not([name="apply_coupon"]):not([name="update_cart"]):not([name="calc_shipping"]):not([name="woocommerce_checkout_update_totals"]):hover,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):not(.planu-btn--secondary):not([name="apply_coupon"]):not([name="update_cart"]):not([name="calc_shipping"]):not([name="woocommerce_checkout_update_totals"]):focus,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):not(.planu-btn--secondary):not([name="apply_coupon"]):not([name="update_cart"]):not([name="calc_shipping"]):not([name="woocommerce_checkout_update_totals"]):focus-visible,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button:not(.planu-btn--text):not(.planu-btn--secondary):not([name="apply_coupon"]):not([name="update_cart"]):not([name="calc_shipping"]):not([name="woocommerce_checkout_update_totals"]):active,
body:not(.wp-admin) .single-product .single_add_to_cart_button:hover,
body:not(.wp-admin) .single-product .single_add_to_cart_button:focus,
body:not(.wp-admin) .single-product .single_add_to_cart_button:focus-visible,
body:not(.wp-admin) .single-product .single_add_to_cart_button:active,
body:not(.wp-admin) .wp-block-button:not(.is-style-outline) .wp-element-button:hover,
body:not(.wp-admin) .wp-block-button:not(.is-style-outline) .wp-element-button:focus-visible,
body:not(.wp-admin) .wp-block-button:not(.is-style-outline) .wp-element-button:active,
body:not(.wp-admin) #place_order:hover,
body:not(.wp-admin) #place_order:focus,
body:not(.wp-admin) #place_order:focus-visible,
body:not(.wp-admin) #place_order:active,
body:not(.wp-admin) .checkout-button:hover,
body:not(.wp-admin) .checkout-button:focus,
body:not(.wp-admin) .checkout-button:focus-visible,
body:not(.wp-admin) .checkout-button:active,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]:hover,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]:focus,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]:focus-visible,
body:not(.wp-admin) .comment-form :is(button, input)[type="submit"]:active {
	color: var(--planu-bialy);
}

button.wp-element-button.ct-load-more.planu-btn--primary {
	overflow: hidden;
	isolation: isolate;
	min-height: var(--planu-btn-min-height);
	box-shadow: none;
	--theme-button-shadow: none;
	--theme-button-transform: none;
	--theme-button-background-initial-color: var(--planu-czerwony);
	--theme-button-background-hover-color: var(--planu-czerwony);
	--theme-button-text-initial-color: var(--planu-bialy);
	--theme-button-text-hover-color: var(--planu-bialy);
}

button.wp-element-button.ct-load-more.planu-btn--primary::before,
button.wp-element-button.ct-load-more.planu-btn--primary:hover::before,
button.wp-element-button.ct-load-more.planu-btn--primary:focus-visible::before,
button.wp-element-button.ct-load-more.planu-btn--primary:active::before {
	content: none;
	display: none;
}

.woocommerce button.button.planu-btn--primary[type="submit"],
.woocommerce button.button.planu-btn--primary[type="submit"]:hover,
.woocommerce button.button.planu-btn--primary[type="submit"]:focus,
.woocommerce button.button.planu-btn--primary[type="submit"]:focus-visible,
.woocommerce button.button.planu-btn--primary[type="submit"]:active,
body:not(.wp-admin) .single-product .single_add_to_cart_button,
body:not(.wp-admin) .single-product .single_add_to_cart_button:hover,
body:not(.wp-admin) .single-product .single_add_to_cart_button:focus,
body:not(.wp-admin) .single-product .single_add_to_cart_button:focus-visible,
body:not(.wp-admin) .single-product .single_add_to_cart_button:active {
	overflow: hidden;
	isolation: isolate;
	border-radius: 999px;
	clip-path: inset(0 round 999px);
	-webkit-mask-image: -webkit-radial-gradient(var(--planu-bialy), var(--planu-bialy));
	mask-image: radial-gradient(var(--planu-bialy), var(--planu-bialy));
	background: var(--planu-czerwony);
	background-color: var(--planu-czerwony);
	background-image: none;
	color: var(--planu-bialy);
	border-color: var(--planu-czerwony);
	--theme-button-shadow: none;
	--theme-button-transform: none;
	--theme-button-background-initial-color: var(--planu-czerwony);
	--theme-button-background-hover-color: var(--planu-czerwony);
	--theme-button-text-initial-color: var(--planu-bialy);
	--theme-button-text-hover-color: var(--planu-bialy);
}

.woocommerce button.button.planu-btn--primary[type="submit"]:hover,
.woocommerce button.button.planu-btn--primary[type="submit"]:focus-visible,
body:not(.wp-admin) .single-product .single_add_to_cart_button:hover,
body:not(.wp-admin) .single-product .single_add_to_cart_button:focus-visible {
	border-color: var(--planu-noc);
}

.woocommerce button.button.planu-btn--primary[type="submit"]::before,
.woocommerce button.button.planu-btn--primary[type="submit"]:hover::before,
.woocommerce button.button.planu-btn--primary[type="submit"]:focus-visible::before,
.woocommerce button.button.planu-btn--primary[type="submit"]:active::before {
	content: none;
	display: none;
	filter: none;
	opacity: 0;
}

.woocommerce button.button.planu-btn--primary[type="submit"]::after,
.woocommerce button.button.planu-btn--primary[type="submit"]:hover::after,
.woocommerce button.button.planu-btn--primary[type="submit"]:focus-visible::after,
.woocommerce button.button.planu-btn--primary[type="submit"]:active::after,
body:not(.wp-admin) .single-product .single_add_to_cart_button::after,
body:not(.wp-admin) .single-product .single_add_to_cart_button:hover::after,
body:not(.wp-admin) .single-product .single_add_to_cart_button:focus-visible::after,
body:not(.wp-admin) .single-product .single_add_to_cart_button:active::after {
	content: none;
	display: none;
}

.woocommerce button.button.planu-btn--primary[type="submit"] > *:not(.planu-btn__fill):not(.planu-load-more-spinner),
body:not(.wp-admin) .single-product .single_add_to_cart_button > *:not(.planu-btn__fill):not(.planu-load-more-spinner) {
	position: relative;
	z-index: 1;
}

.woocommerce button.button.planu-btn--primary[type="submit"] > .planu-btn__fill,
body:not(.wp-admin) .single-product .single_add_to_cart_button > .planu-btn__fill {
	z-index: -1;
}

.ct-pagination:not(.ct-last-page)[data-pagination="load_more"] .ct-load-more-helper.ct-loading > button.wp-element-button.ct-load-more,
.ct-pagination:not(.ct-last-page)[data-pagination="infinite_scroll"] .ct-load-more-helper.ct-loading > button.wp-element-button.ct-load-more,
.ct-pagination:not(.ct-last-page) button.wp-element-button.ct-load-more.planu-is-loading {
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	height: auto !important;
	pointer-events: none;
}

.ct-pagination[data-pagination="load_more"] .ct-load-more-helper.ct-loading > .ct-ajax-loader,
.ct-pagination[data-pagination="infinite_scroll"] .ct-load-more-helper.ct-loading > .ct-ajax-loader {
	display: none !important;
	opacity: 0 !important;
	visibility: hidden !important;
}

button.wp-element-button.ct-load-more .planu-load-more-spinner {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	pointer-events: none;
	color: inherit;
}

.ct-load-more-helper.ct-loading button.wp-element-button.ct-load-more .planu-load-more-label,
button.wp-element-button.ct-load-more.planu-is-loading .planu-load-more-label {
	visibility: hidden;
}

.ct-load-more-helper.ct-loading button.wp-element-button.ct-load-more .planu-load-more-spinner,
button.wp-element-button.ct-load-more.planu-is-loading .planu-load-more-spinner {
	opacity: 1;
}

.ct-load-more-helper.ct-loading button.wp-element-button.ct-load-more .planu-load-more-spinner .planu-icon,
button.wp-element-button.ct-load-more.planu-is-loading .planu-load-more-spinner .planu-icon {
	animation: planu-load-more-spin 0.6s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
	.ct-load-more-helper.ct-loading button.wp-element-button.ct-load-more .planu-load-more-spinner .planu-icon,
	button.wp-element-button.ct-load-more.planu-is-loading .planu-load-more-spinner .planu-icon {
		animation: none;
	}
}

@keyframes planu-load-more-spin {
	to {
		transform: rotate(360deg);
	}
}

[data-archive="default"] .entry-title a {
	--has-link-decoration: var(--false);
	text-decoration: none;
}

[data-archive="default"] .card-content .entry-button {
	align-self: flex-end;
}

.single-product .single_add_to_cart_button .planu-atc-label,
.planu-bottom-nav__atc .planu-atc-label {
	transition: opacity var(--planu-motion-feedback);
}

.single-product .single_add_to_cart_button .planu-load-more-spinner,
.planu-bottom-nav__atc .planu-load-more-spinner,
.wc-block-product .wc-block-components-product-button__button .planu-load-more-spinner,
[data-products] .product .ct-woo-card-actions .button .planu-load-more-spinner {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	pointer-events: none;
	color: inherit;
}

.single-product .single_add_to_cart_button.loading,
.single-product .single_add_to_cart_button.planu-is-loading,
.planu-bottom-nav__atc.planu-is-loading,
.wc-block-product .wc-block-components-product-button__button.planu-is-loading,
[data-products] .product .ct-woo-card-actions .button.planu-is-loading {
	pointer-events: none;
	opacity: 1;
}

.single-product .single_add_to_cart_button.planu-is-loading .planu-atc-label,
.planu-bottom-nav__atc.planu-is-loading .planu-atc-label,
.wc-block-product .wc-block-components-product-button__button.planu-is-loading .planu-atc-label,
[data-products] .product .ct-woo-card-actions .button.planu-is-loading .planu-atc-label {
	visibility: hidden;
}

.single-product .single_add_to_cart_button.planu-is-loading .planu-load-more-spinner,
.planu-bottom-nav__atc.planu-is-loading .planu-load-more-spinner,
.wc-block-product .wc-block-components-product-button__button.planu-is-loading .planu-load-more-spinner,
[data-products] .product .ct-woo-card-actions .button.planu-is-loading .planu-load-more-spinner {
	opacity: 1;
}

.single-product .single_add_to_cart_button.planu-is-loading .planu-load-more-spinner .planu-icon,
.planu-bottom-nav__atc.planu-is-loading .planu-load-more-spinner .planu-icon,
.wc-block-product .wc-block-components-product-button__button.planu-is-loading .planu-load-more-spinner .planu-icon,
[data-products] .product .ct-woo-card-actions .button.planu-is-loading .planu-load-more-spinner .planu-icon {
	animation: planu-load-more-spin 0.6s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
	.single-product .single_add_to_cart_button.planu-is-loading .planu-load-more-spinner .planu-icon,
	.planu-bottom-nav__atc.planu-is-loading .planu-load-more-spinner .planu-icon,
	.wc-block-product .wc-block-components-product-button__button.planu-is-loading .planu-load-more-spinner .planu-icon,
	[data-products] .product .ct-woo-card-actions .button.planu-is-loading .planu-load-more-spinner .planu-icon {
		animation: none;
	}
}

body a.planu-btn.planu-btn--secondary,
a.planu-btn.planu-btn--secondary,
.planu-btn.planu-btn--secondary,
.woocommerce :is(a, button, input).button.planu-btn.planu-btn--secondary,
.woocommerce :is(a, button, input).button.planu-btn--secondary,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout) :is(button, input)[name="apply_coupon"],
body:not(.wp-admin) .woocommerce-cart button[name="update_cart"],
body:not(.wp-admin) .woocommerce-cart button[name="calc_shipping"],
body:not(.wp-admin) .woocommerce-checkout button[name="woocommerce_checkout_update_totals"],
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a.button.wc-forward:not(.checkout):not(.checkout-button),
body:not(.wp-admin) a.added_to_cart,
body:not(.wp-admin) .wp-block-button.is-style-outline .wp-element-button {
	padding: 10px 40px;
	--theme-button-padding: 10px 40px;
	min-height: var(--planu-btn-min-height);
	--theme-button-min-height: var(--planu-btn-min-height);
	background: transparent;
	background-color: transparent;
	color: var(--planu-czerwony);
	border: 2px solid var(--planu-czerwony);
	--theme-button-border: 2px solid var(--planu-czerwony);
	--theme-button-border-hover-color: var(--planu-czerwony);
	box-shadow: none;
	--theme-button-shadow: none;
	outline: none;
	--theme-button-background-initial-color: transparent;
	--theme-button-background-hover-color: transparent;
	--theme-button-text-initial-color: var(--planu-czerwony);
	--theme-button-text-hover-color: var(--planu-bialy);
}

.planu-btn--secondary::before,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout) :is(button, input)[name="apply_coupon"]::before,
body:not(.wp-admin) .woocommerce-cart button[name="update_cart"]::before,
body:not(.wp-admin) .woocommerce-cart button[name="calc_shipping"]::before,
body:not(.wp-admin) .woocommerce-checkout button[name="woocommerce_checkout_update_totals"]::before,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a.button.wc-forward:not(.checkout):not(.checkout-button)::before,
body:not(.wp-admin) a.added_to_cart::before,
body:not(.wp-admin) .wp-block-button.is-style-outline .wp-element-button::before {
	content: none;
	display: none;
}

body a.planu-btn.planu-btn--secondary:hover,
body a.planu-btn.planu-btn--secondary:active,
a.planu-btn.planu-btn--secondary:hover,
a.planu-btn.planu-btn--secondary:active,
.planu-btn.planu-btn--secondary:hover,
.planu-btn.planu-btn--secondary:active,
.woocommerce :is(a, button, input).button.planu-btn.planu-btn--secondary:hover,
.woocommerce :is(a, button, input).button.planu-btn.planu-btn--secondary:active,
.woocommerce :is(a, button, input).button.planu-btn--secondary:hover,
.woocommerce :is(a, button, input).button.planu-btn--secondary:active,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout) :is(button, input)[name="apply_coupon"]:hover,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout) :is(button, input)[name="apply_coupon"]:active,
body:not(.wp-admin) .woocommerce-cart button[name="update_cart"]:hover,
body:not(.wp-admin) .woocommerce-cart button[name="update_cart"]:active,
body:not(.wp-admin) .woocommerce-cart button[name="calc_shipping"]:hover,
body:not(.wp-admin) .woocommerce-cart button[name="calc_shipping"]:active,
body:not(.wp-admin) .woocommerce-checkout button[name="woocommerce_checkout_update_totals"]:hover,
body:not(.wp-admin) .woocommerce-checkout button[name="woocommerce_checkout_update_totals"]:active,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a.button.wc-forward:not(.checkout):not(.checkout-button):hover,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a.button.wc-forward:not(.checkout):not(.checkout-button):active,
body:not(.wp-admin) a.added_to_cart:hover,
body:not(.wp-admin) a.added_to_cart:active,
body:not(.wp-admin) .wp-block-button.is-style-outline .wp-element-button:hover,
body:not(.wp-admin) .wp-block-button.is-style-outline .wp-element-button:active {
	color: var(--planu-bialy);
	background: transparent;
	background-color: transparent;
	border: 2px solid var(--planu-czerwony);
	--theme-button-border: 2px solid var(--planu-czerwony);
	--theme-button-border-hover-color: var(--planu-czerwony);
	box-shadow: none;
	--theme-button-shadow: none;
	outline: none;
}

body a.planu-btn.planu-btn--secondary:focus:not(:hover),
body a.planu-btn.planu-btn--secondary:focus-visible:not(:hover),
a.planu-btn.planu-btn--secondary:focus:not(:hover),
a.planu-btn.planu-btn--secondary:focus-visible:not(:hover),
.planu-btn.planu-btn--secondary:focus:not(:hover),
.planu-btn.planu-btn--secondary:focus-visible:not(:hover),
.woocommerce :is(a, button, input).button.planu-btn.planu-btn--secondary:focus:not(:hover),
.woocommerce :is(a, button, input).button.planu-btn.planu-btn--secondary:focus-visible:not(:hover),
.woocommerce :is(a, button, input).button.planu-btn--secondary:focus:not(:hover),
.woocommerce :is(a, button, input).button.planu-btn--secondary:focus-visible:not(:hover),
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout) :is(button, input)[name="apply_coupon"]:focus:not(:hover),
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout) :is(button, input)[name="apply_coupon"]:focus-visible:not(:hover),
body:not(.wp-admin) .woocommerce-cart button[name="update_cart"]:focus:not(:hover),
body:not(.wp-admin) .woocommerce-cart button[name="update_cart"]:focus-visible:not(:hover),
body:not(.wp-admin) .woocommerce-cart button[name="calc_shipping"]:focus:not(:hover),
body:not(.wp-admin) .woocommerce-cart button[name="calc_shipping"]:focus-visible:not(:hover),
body:not(.wp-admin) .woocommerce-checkout button[name="woocommerce_checkout_update_totals"]:focus:not(:hover),
body:not(.wp-admin) .woocommerce-checkout button[name="woocommerce_checkout_update_totals"]:focus-visible:not(:hover),
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a.button.wc-forward:not(.checkout):not(.checkout-button):focus:not(:hover),
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a.button.wc-forward:not(.checkout):not(.checkout-button):focus-visible:not(:hover),
body:not(.wp-admin) a.added_to_cart:focus:not(:hover),
body:not(.wp-admin) a.added_to_cart:focus-visible:not(:hover),
body:not(.wp-admin) .wp-block-button.is-style-outline .wp-element-button:focus:not(:hover),
body:not(.wp-admin) .wp-block-button.is-style-outline .wp-element-button:focus-visible:not(:hover) {
	color: var(--planu-czerwony);
	background: transparent;
	background-color: transparent;
	border: 2px solid var(--planu-czerwony);
	--theme-button-border: 2px solid var(--planu-czerwony);
	--theme-button-border-hover-color: var(--planu-czerwony);
	--theme-button-text-hover-color: var(--planu-czerwony);
	box-shadow: none;
	--theme-button-shadow: none;
	outline: none;
}

body a.planu-btn.planu-btn--secondary:focus:not(:focus-visible):not(:active),
a.planu-btn.planu-btn--secondary:focus:not(:focus-visible):not(:active),
.planu-btn.planu-btn--secondary:focus:not(:focus-visible):not(:active),
.woocommerce :is(a, button, input).button.planu-btn--secondary:focus:not(:focus-visible):not(:active) {
	color: var(--planu-czerwony);
	background: transparent;
	background-color: transparent;
	border: 2px solid var(--planu-czerwony);
	--theme-button-border: 2px solid var(--planu-czerwony);
	--theme-button-text-hover-color: var(--planu-czerwony);
}

@media (hover: none), (pointer: coarse) {
	body a.planu-btn.planu-btn--secondary:hover:not(:active),
	a.planu-btn.planu-btn--secondary:hover:not(:active),
	.planu-btn.planu-btn--secondary:hover:not(:active),
	.woocommerce :is(a, button, input).button.planu-btn--secondary:hover:not(:active) {
		color: var(--planu-czerwony);
		background: transparent;
		background-color: transparent;
		border: 2px solid var(--planu-czerwony);
		--theme-button-border: 2px solid var(--planu-czerwony);
		--theme-button-text-hover-color: var(--planu-czerwony);
	}

	.planu-btn--primary.planu-btn--hot:not(:active) > .planu-btn__fill,
	.planu-btn--secondary.planu-btn--hot:not(:active) > .planu-btn__fill {
		transform: translate(-50%, -50%) scale(0);
	}
}

body a.planu-btn.planu-btn--text,
.woocommerce :is(a, button, input).button.planu-btn--text,
.planu-btn--text,
body:not(.wp-admin) :is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .woocommerce-order-received) :is(a, button, input).button.planu-btn--text,
body:not(.wp-admin) :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) :is(a, button).button.planu-btn--text,
body:not(.wp-admin) #woo-cart-panel :is(a, button).button.planu-btn--text,
body:not(.wp-admin) .wp-block-button .wp-element-button.planu-btn--text,
body:not(.wp-admin) a.showcoupon,
body:not(.wp-admin) a.showlogin,
.woocommerce-account .addresses .title .edit,
.woocommerce-Address-title .edit,
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.planu-btn--text,
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.view {
	display: inline-flex;
	align-items: baseline;
	justify-content: flex-start;
	align-self: flex-start;
	width: fit-content;
	max-width: 100%;
	min-width: 0;
	min-height: 0;
	height: auto;
	flex: 0 0 auto;
	padding: 0;
	padding-bottom: calc(var(--planu-btn-text-underline-offset) + var(--planu-btn-text-underline));
	border: 0;
	border-radius: 0;
	background: transparent;
	overflow: visible;
	line-height: var(--planu-leading-tight);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-button);
	color: var(--planu-czerwony);
	--theme-button-padding: 0;
	--theme-button-min-height: unset;
	--theme-button-border: none;
	--theme-button-font-size: var(--planu-text);
	--theme-button-font-weight: var(--planu-fw-button);
}

.planu-btn--text::before,
body:not(.wp-admin) #woo-cart-panel :is(a, button).button.planu-btn--text::before,
body:not(.wp-admin) a.showcoupon::before,
body:not(.wp-admin) a.showlogin::before,
.woocommerce-account .addresses .title .edit::before,
.woocommerce-Address-title .edit::before,
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.view::before {
	content: none;
	display: none;
}

.planu-btn--text::after,
body:not(.wp-admin) #woo-cart-panel :is(a, button).button.planu-btn--text::after,
body:not(.wp-admin) a.showcoupon::after,
body:not(.wp-admin) a.showlogin::after,
.woocommerce-account .addresses .title .edit::after,
.woocommerce-Address-title .edit::after,
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.view::after {
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	right: auto;
	bottom: 0;
	height: var(--planu-btn-text-underline);
	background: currentColor;
	pointer-events: none;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform var(--planu-motion-hover);
}

.planu-btn--text:hover,
.planu-btn--text:focus-visible,
.woocommerce :is(a, button, input).button.planu-btn--text:hover,
.woocommerce :is(a, button, input).button.planu-btn--text:focus-visible,
body:not(.wp-admin) #woo-cart-panel :is(a, button).button.planu-btn--text:hover,
body:not(.wp-admin) #woo-cart-panel :is(a, button).button.planu-btn--text:focus-visible,
body:not(.wp-admin) a.showcoupon:hover,
body:not(.wp-admin) a.showcoupon:focus-visible,
body:not(.wp-admin) a.showlogin:hover,
body:not(.wp-admin) a.showlogin:focus-visible,
.woocommerce-account .addresses .title .edit:hover,
.woocommerce-account .addresses .title .edit:focus-visible,
.woocommerce-Address-title .edit:hover,
.woocommerce-Address-title .edit:focus-visible,
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.view:hover,
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.view:focus-visible {
	color: var(--planu-noc);
}

.planu-btn--text:hover::after,
.planu-btn--text:focus-visible::after,
body:not(.wp-admin) #woo-cart-panel :is(a, button).button.planu-btn--text:hover::after,
body:not(.wp-admin) #woo-cart-panel :is(a, button).button.planu-btn--text:focus-visible::after,
body:not(.wp-admin) a.showcoupon:hover::after,
body:not(.wp-admin) a.showcoupon:focus-visible::after,
body:not(.wp-admin) a.showlogin:hover::after,
body:not(.wp-admin) a.showlogin:focus-visible::after,
.woocommerce-account .addresses .title .edit:hover::after,
.woocommerce-account .addresses .title .edit:focus-visible::after,
.woocommerce-Address-title .edit:hover::after,
.woocommerce-Address-title .edit:focus-visible::after,
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.view:hover::after,
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.view:focus-visible::after {
	transform: scaleX(1);
}

html,
html body,
.ct-drawer-canvas,
#main-container,
#main {
	background-color: var(--planu-dzien);
}

body {
	overflow-x: clip;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	line-height: var(--planu-leading-body);
	text-wrap: pretty;
	color: var(--planu-wieczor);
	--theme-form-field-border-width: 2px;
	--theme-form-field-height: 52px;
	--theme-form-field-border-initial-color: var(--planu-poranek);
	--theme-form-field-border-focus-color: var(--planu-wieczor);
	--theme-form-selection-field-initial-color: var(--planu-poranek);
	--theme-form-selection-field-active-color: var(--planu-wieczor);
	--theme-form-text-initial-color: var(--planu-wieczor);
	--theme-form-text-focus-color: var(--planu-wieczor);
}

h1, h2, h3, h4, h5, h6,
.wp-block-heading {
	text-wrap: balance;
	line-height: var(--planu-leading-heading);
}

h1,
h1.wp-block-heading {
	letter-spacing: var(--planu-tracking-display);
}

body:not(.wp-admin) :is(
	a,
	button,
	summary,
	[type="button"],
	[type="submit"],
	[type="reset"],
	[tabindex]:not([tabindex="-1"])
):focus-visible {
	outline: var(--planu-focus-width) solid var(--planu-noc);
	outline-offset: var(--planu-focus-offset);
}

body:not(.wp-admin) :is(
	.planu-input,
	input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="file"]):not([type="image"]):not([type="range"]):not([type="color"]),
	textarea,
	select,
	select.country,
	.woocommerce .input-text,
	.woocommerce-Input,
	.select2-container .select2-selection--single,
	.select2-container--default .select2-selection--single
) {
	box-sizing: border-box;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	color: var(--planu-wieczor);
	border-width: 2px;
	border-style: solid;
	border-color: var(--planu-poranek);
	border-radius: 8px;
	box-shadow: none;
	outline: none;
	outline-offset: 0;
	transition: border-color var(--planu-motion-feedback);
	--theme-form-field-border-width: 2px;
	--theme-form-field-border-radius: 8px;
	--theme-form-field-height: 52px;
	min-height: var(--theme-form-field-height);
	height: var(--theme-form-field-height);
}

body:not(.wp-admin) :is(
	.planu-input,
	input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="file"]):not([type="image"]):not([type="range"]):not([type="color"]),
	textarea,
	select,
	select.country,
	.woocommerce .input-text,
	.woocommerce-Input,
	.select2-container .select2-selection--single,
	.select2-container--default .select2-selection--single
):disabled,
body:not(.wp-admin) :is(
	.select2-container--disabled .select2-selection--single,
	.select2-container--default.select2-container--disabled .select2-selection--single
) {
	background-color: color-mix(in srgb, var(--planu-poranek) 20%, transparent);
	color: var(--planu-poranek);
	-webkit-text-fill-color: var(--planu-poranek);
	opacity: 1;
	cursor: not-allowed;
}

body:not(.wp-admin) .select2-container--disabled .select2-selection--single .select2-selection__rendered,
body:not(.wp-admin) .select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__rendered {
	color: var(--planu-poranek);
}

body:not(.wp-admin) textarea {
	height: auto;
}

body:not(.wp-admin) :is(
	.planu-input,
	input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="file"]):not([type="image"]):not([type="range"]):not([type="color"]),
	textarea,
	select,
	select.country,
	.woocommerce .input-text,
	.woocommerce-Input
):is(:focus, :focus-visible, :active, :-moz-focusring),
body:not(.wp-admin) :is(
	.select2-container--default.select2-container--focus .select2-selection--single,
	.select2-container--default.select2-container--open .select2-selection--single,
	.select2-container.select2-container--focus .select2-selection--single,
	.select2-container.select2-container--open .select2-selection--single
) {
	border-width: 2px;
	border-color: var(--planu-wieczor);
	box-shadow: none;
	outline: none;
	outline-offset: 0;
}

body:not(.wp-admin) .select2-dropdown {
	border-color: var(--planu-poranek);
	border-radius: var(--planu-radius);
	box-shadow: var(--planu-shadow-dropdown);
}

body:not(.wp-admin) :is(
	.planu-input,
	input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="file"]):not([type="image"]):not([type="range"]):not([type="color"]),
	textarea,
	.woocommerce .input-text,
	.woocommerce-Input
)::placeholder {
	color: var(--planu-poranek);
	opacity: 1;
}

body:not(.wp-admin) select,
body:not(.wp-admin) select.country {
	appearance: none;
	-webkit-appearance: none;
	background-color: var(--planu-bialy);
	background-image: url("data:image/svg+xml,%3Csvg width='21' height='13' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.5.379L20.621 2.5 10.5 12.621.379 2.5 2.5.379l8 8z' fill='%23524470' fill-rule='nonzero'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right var(--planu-space-16) center;
	background-size: 12px 8px;
	padding-inline-end: 36px;
	cursor: pointer;
}

body:not(.wp-admin) .select2-container--default .select2-selection--single .select2-selection__rendered,
body:not(.wp-admin) .select2-container .select2-selection--single .select2-selection__rendered {
	color: var(--planu-wieczor);
	line-height: 48px;
	padding-left: 15px;
}

body:not(.wp-admin) .select2-container--default .select2-selection--single .select2-selection__placeholder {
	color: var(--planu-poranek);
}

body:not(.wp-admin) :is(.form-row, .woocommerce-form-row) > label:not(.woocommerce-form__label-for-checkbox):not(.woocommerce-form__label-for-radio):not(:has(> input[type="checkbox"])):not(:has(> input[type="radio"])),
body:not(.wp-admin) label:has(+ :is(
	.planu-input,
	.woocommerce-Input,
	.woocommerce-input-wrapper,
	.select2-container,
	textarea,
	select,
	input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="file"]):not([type="image"]):not([type="range"]):not([type="color"])
)) {
	font-family: var(--planu-font-body);
	font-size: var(--planu-text-small);
}

body:not(.wp-admin) .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 0;
	height: 100%;
}

body:not(.wp-admin) [class*="password-input"] {
	position: relative;
}

body:not(.wp-admin) [class*="password-input"] input {
	padding-inline-end: 44px;
}

body:not(.wp-admin) [class*="password-input"] .show-password-input,
body:not(.wp-admin) [class*="password-input"] input[type="text"] ~ .show-password-input {
	position: absolute;
	inset-inline-end: 12px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 25px;
	height: 25px;
	padding: 0;
	border: 0;
	background: none;
	background-color: transparent;
	mask-image: none;
	-webkit-mask-image: none;
	color: var(--planu-noc);
	cursor: pointer;
}

body:not(.wp-admin) [class*="password-input"] .show-password-input::before {
	content: none;
	display: none;
}

body:not(.wp-admin) [class*="password-input"] .show-password-input .planu-icon {
	display: block;
	width: 25px;
	height: 25px;
	vertical-align: 0;
	color: inherit;
}

body:not(.wp-admin) [class*="password-input"] .show-password-input .planu-pw-eye-off {
	display: none;
}

body:not(.wp-admin) [class*="password-input"] .show-password-input.display-password .planu-pw-eye {
	display: none;
}

body:not(.wp-admin) [class*="password-input"] .show-password-input.display-password .planu-pw-eye-off {
	display: block;
}

body:not(.wp-admin) .ct-search-form-inner {
	align-items: center;
}

body:not(.wp-admin) .ct-search-form .wp-element-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

body:not(.wp-admin) .ct-search-form .wp-element-button .ct-icon,
body:not(.wp-admin) .ct-search-form .wp-element-button .planu-icon {
	width: 25px;
	height: 25px;
}

body:not(.wp-admin) :is(
	input[type="checkbox"],
	input[type="radio"],
	.woocommerce-form__input-checkbox,
	.woocommerce-form__input[type="checkbox"],
	.woocommerce-form__label-for-checkbox input[type="checkbox"],
	.wc_payment_method > input[type="radio"],
	.woocommerce-shipping-methods input[type="radio"]
),
body:not(.wp-admin) #createaccount,
body:not(.wp-admin) #ship-to-different-address-checkbox {
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	display: inline-block;
	vertical-align: middle;
	position: relative;
	width: var(--planu-control-size);
	height: var(--planu-control-size);
	min-width: var(--planu-control-size);
	min-height: var(--planu-control-size);
	margin: 0;
	margin-inline-end: 0.7em;
	top: 0;
	padding: 0 !important;
	border-width: 2px;
	border-style: solid;
	border-color: var(--planu-poranek);
	background: transparent;
	box-shadow: none;
	outline: none;
	outline-offset: 0;
	cursor: pointer;
	flex-shrink: 0;
	--theme-form-selection-field-initial-color: var(--planu-poranek);
	--theme-form-selection-field-active-color: var(--planu-wieczor);
}

body:not(.wp-admin) input[type="checkbox"],
body:not(.wp-admin) #createaccount,
body:not(.wp-admin) #ship-to-different-address-checkbox {
	border-radius: var(--planu-control-radius);
}

body:not(.wp-admin) input[type="radio"] {
	border-radius: 50%;
}

body:not(.wp-admin) :is(
	input[type="checkbox"],
	input[type="radio"]
):is(:focus, :focus-visible, :active, :checked),
body:not(.wp-admin) :is(#createaccount, #ship-to-different-address-checkbox):is(:focus, :focus-visible, :active, :checked) {
	border-color: var(--planu-wieczor);
	box-shadow: none;
	outline: none;
}

body:not(.wp-admin) :is(
	input[type="checkbox"],
	input[type="radio"]
):focus-visible,
body:not(.wp-admin) :is(#createaccount, #ship-to-different-address-checkbox):focus-visible {
	outline: var(--planu-focus-width) solid var(--planu-noc);
	outline-offset: var(--planu-focus-offset);
}

body:not(.wp-admin) :is(
	input[type="checkbox"],
	input[type="radio"]
):checked,
body:not(.wp-admin) :is(#createaccount, #ship-to-different-address-checkbox):checked {
	background: var(--planu-wieczor);
}

body:not(.wp-admin) input[type="checkbox"]::before,
body:not(.wp-admin) #createaccount::before,
body:not(.wp-admin) #ship-to-different-address-checkbox::before {
	content: "";
	position: absolute;
	z-index: 2;
	inset: 0;
	margin: auto;
	top: var(--planu-control-check-nudge);
	width: var(--planu-control-check-width);
	height: var(--planu-control-check-height);
	border: var(--planu-control-check-stroke) solid var(--planu-bialy);
	border-top: none;
	border-right: none;
	transform: rotate(-45deg);
	opacity: 0;
	background: none;
}

body:not(.wp-admin) input[type="checkbox"]:checked::before,
body:not(.wp-admin) #createaccount:checked::before,
body:not(.wp-admin) #ship-to-different-address-checkbox:checked::before {
	opacity: 1;
}

body:not(.wp-admin) input[type="radio"]::before {
	content: "";
	position: absolute;
	z-index: 2;
	inset: 0;
	margin: auto;
	width: var(--planu-control-dot-size);
	height: var(--planu-control-dot-size);
	border: none;
	border-radius: 50%;
	background: var(--planu-bialy);
	opacity: 0;
	transform: none;
}

body:not(.wp-admin) input[type="radio"]:checked::before {
	opacity: 1;
}

body:not(.wp-admin) label:has(> input[type="checkbox"]),
body:not(.wp-admin) label:has(> input[type="radio"]),
body:not(.wp-admin) .woocommerce-form__label-for-checkbox,
body:not(.wp-admin) .woocommerce-form__label-for-radio,
body:not(.wp-admin) .woocommerce-account-fields .create-account .woocommerce-form__label-for-checkbox,
body:not(.wp-admin) #ship-to-different-address label {
	display: inline-flex;
	align-items: center;
}

body:not(.wp-admin) .woocommerce-shipping-methods li,
body:not(.wp-admin) .woocommerce-SavedPaymentMethods li,
body:not(.wp-admin) #payment ul.payment_methods > li.wc_payment_method {
	display: flex;
	align-items: center;
}

body:not(.wp-admin) #payment ul.payment_methods > li.wc_payment_method > label:before {
	content: none;
	display: none;
}

body :is(b, strong),
p b,
p strong,
.entry-content b,
.entry-content strong {
	font-weight: var(--planu-fw-emphasis);
	color: var(--planu-noc);
	--theme-font-weight: var(--planu-fw-emphasis);
}

.planu-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: calc(560px + var(--planu-header-height));
	width: 100vw;
	max-width: 100vw;
	margin: calc(var(--planu-header-height) * -1) calc(50% - 50vw) 0;
	padding: calc(var(--planu-space-32) + var(--planu-space-48) + var(--planu-header-height)) var(--planu-space-24) var(--planu-space-32);
	background: var(--planu-gradient-hero), var(--planu-dzien);
}

.entry-content > .planu-hero {
	margin-block-start: calc(var(--planu-header-height) * -1);
}

.home #main .ct-container-full[data-vertical-spacing*="top"] {
	padding-top: 0;
}

.planu-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background-image: var(--planu-grain);
	background-size: 128px 128px;
	opacity: var(--planu-grain-opacity);
	mix-blend-mode: overlay;
	pointer-events: none;
}

.planu-hero__orb {
	position: absolute;
	top: 0;
	left: 0;
	width: 168px;
	height: 168px;
	border-radius: 50%;
	overflow: visible;
	pointer-events: none;
	isolation: isolate;
	box-shadow: var(--planu-shadow-orb);
	z-index: 1;
}

.planu-hero__orb > span {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: inherit;
	overflow: hidden;
}

.planu-hero__orb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
	transform: scale(var(--planu-orb-img-scale));
}

.planu-hero__orb--zolty,
.planu-hero__orb--zielony,
.planu-hero__orb--czerwony,
.planu-hero__orb--wieczor,
.planu-hero__orb--noc {
	background: var(--planu-dzien);
}

.planu-hero__inner {
	position: relative;
	z-index: 2;
	max-width: 960px;
	margin: 0 auto;
	text-align: center;
}

.planu-hero__avoid:not(.planu-btn) {
	display: inline-block;
}

.planu-hero .planu-btn,
.planu-hero__inner > .planu-btn {
	display: inline-flex;
	position: relative;
	overflow: hidden;
	isolation: isolate;
	width: auto;
	max-width: none;
	flex: 0 0 auto;
	white-space: nowrap;
	vertical-align: middle;
	margin-block-start: 0;
	margin-block-end: 0;
}

.planu-hero .planu-btn--text {
	overflow: visible;
}

.planu-hero__cta,
.wp-block-group.planu-hero__cta {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: var(--planu-hero-btn-gap);
}

.planu-hero__inner > .planu-btn + .planu-btn {
	margin-inline-start: var(--planu-hero-btn-gap);
}

.planu-hero__inner h1 {
	margin: 0 0 var(--planu-space-24);
}

.planu-hero__lead {
	margin: 0 auto var(--planu-space-48);
	max-width: 560px;
}

.planu-hero__stats,
.wp-block-group.planu-hero__stats {
	display: inline-flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-start;
	width: fit-content;
	max-width: 100%;
	gap: var(--planu-space-24) var(--planu-space-96);
	margin-top: var(--planu-space-32);
	text-align: left;
}

.planu-hero__stat:last-child {
	margin-top: var(--planu-space-64);
}

.planu-hero__stat,
.wp-block-group.planu-hero__stat {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	gap: 16px;
}

.planu-hero__stat > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

.planu-hero__stat-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	flex-shrink: 0;
	border: 0;
	border-radius: 50%;
	background: var(--planu-bialy);
	color: var(--planu-zielony);
}

.planu-hero__stat-icon .planu-icon {
	width: 26px;
	height: 26px;
}

.planu-hero__stat h3 {
	display: block;
	margin: 0;
	margin-block-end: 0;
}

.planu-hero__stat p {
	display: block;
	margin: 0;
	margin-block-start: 0;
}

@media (max-width: 689.98px) {
	.planu-hero {
		min-height: calc(480px + var(--planu-header-height));
		padding: calc(var(--planu-space-24) + var(--planu-space-48) + var(--planu-header-height)) var(--planu-space-16) var(--planu-space-32);
	}

	.planu-hero__orb {
		width: 110px;
		height: 110px;
	}

	.planu-hero__cta a.planu-btn.planu-btn--secondary,
	.planu-hero__cta .planu-btn.planu-btn--secondary {
		position: relative;
		z-index: 2;
	}

	.planu-hero__cta a.planu-btn.planu-btn--secondary:not(:active),
	.planu-hero__cta .planu-btn.planu-btn--secondary:not(:active) {
		background: var(--planu-glass-bg);
		background-color: var(--planu-glass-bg);
		backdrop-filter: var(--planu-glass-blur);
		-webkit-backdrop-filter: var(--planu-glass-blur);
		box-shadow: var(--planu-glass-rim), var(--planu-elevation-3);
		border: 2px solid var(--planu-czerwony);
		--theme-button-border: 2px solid var(--planu-czerwony);
		--theme-button-border-hover-color: var(--planu-czerwony);
		--theme-button-background-initial-color: var(--planu-glass-bg);
		--theme-button-shadow: var(--planu-glass-rim), var(--planu-elevation-3);
	}

	.planu-hero__stats,
	.wp-block-group.planu-hero__stats {
		position: relative;
		z-index: 2;
		flex-direction: column;
		flex-wrap: wrap;
		align-items: flex-start;
		justify-content: flex-start;
		width: fit-content;
		margin-top: var(--planu-space-48);
		padding: var(--planu-space-group) var(--planu-space-inset);
		gap: var(--planu-space-related);
		border-radius: var(--planu-radius-section);
		background: var(--planu-dzien);
		background-color: var(--planu-dzien);
		box-shadow: var(--planu-glass-rim), var(--planu-elevation-3);
	}

	.planu-hero__stat,
	.wp-block-group.planu-hero__stat {
		margin-block-start: 0;
		margin-block-end: 0;
	}

	.planu-hero__stat:last-child {
		margin-top: 0;
	}

	@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
		.planu-hero__cta a.planu-btn.planu-btn--secondary:not(:active),
		.planu-hero__cta .planu-btn.planu-btn--secondary:not(:active) {
			background: var(--planu-dzien);
			background-color: var(--planu-dzien);
			--theme-button-background-initial-color: var(--planu-dzien);
		}
	}
}

.planu-tape {
	position: relative;
	overflow: visible;
	width: 100vw;
	max-width: 100vw;
	margin: 0 calc(50% - 50vw) var(--planu-space-48);
	padding: var(--planu-space-64) 0 var(--planu-space-stage);
}

.planu-tape__group {
	position: relative;
	height: 42.4px;
	transform: rotate(-7deg);
}

.planu-tape__strip {
	position: absolute;
	left: -30%;
	width: 160%;
	top: 0;
	padding: 9.6px 0;
	white-space: nowrap;
	overflow: hidden;
}

.planu-tape__strip--back {
	background: var(--planu-czerwony);
	transform: rotate(-2deg);
	z-index: 0;
}

.planu-tape__strip--back .planu-tape__track {
	transform: translateX(-48px);
}

.planu-tape__strip--front {
	background: var(--planu-zolty);
	transform: rotate(5deg);
	z-index: 1;
}

.planu-tape__strip--front .planu-tape__track {
	transform: translateX(72px);
}

.planu-tape__track {
	display: inline-flex;
	align-items: center;
	gap: 40px;
}

.planu-tape__item {
	letter-spacing: 0.04em;
	color: var(--planu-noc);
}

.planu-tape__dot {
	width: 12px;
	height: 12px;
	flex-shrink: 0;
	border-radius: 50%;
	background: var(--planu-zielony);
}

.planu-quotes {
	width: 100vw;
	max-width: 100vw;
	margin: 0 calc(50% - 50vw) var(--planu-space-48);
	padding: var(--planu-space-48) 0 var(--planu-space-48);
	text-align: center;
	overflow: hidden;
}

.planu-quotes h2 {
	margin: 0 0 var(--planu-space-48);
}

.planu-quotes__viewport {
	position: relative;
	overflow: hidden;
	touch-action: pan-y;
	cursor: grab;
}

.planu-quotes__viewport::before,
.planu-quotes__viewport::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: 16%;
	z-index: 2;
	pointer-events: none;
}

.planu-quotes__viewport::before {
	left: 0;
	background: linear-gradient(to right, var(--planu-dzien), transparent);
}

.planu-quotes__viewport::after {
	right: 0;
	background: linear-gradient(to left, var(--planu-dzien), transparent);
}

.planu-quotes__track {
	display: flex;
	align-items: stretch;
	gap: var(--planu-space-32);
	transition: transform var(--planu-motion-expressive);
	user-select: none;
}

.planu-quotes__track > .planu-quotes__card {
	margin-block: 0;
}

.planu-quotes__card {
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex: 0 0 min(728px, calc(100vw - var(--planu-space-32)));
	min-width: 0;
	box-sizing: border-box;
	padding: var(--planu-space-48) var(--planu-space-32);
	border-radius: 32px;
	background: var(--planu-bialy);
	opacity: 0.45;
	transition: opacity var(--planu-motion-enter);
}

.planu-quotes__card.is-active {
	opacity: 1;
}

.planu-quotes__card p {
	margin: 0 0 24px;
}

.planu-quotes__card h3,
.planu-quotes__card strong {
	display: block;
	margin: 0 0 10px;
}

.planu-quotes__card p:has(> strong) {
	margin: 0 0 10px;
}

.planu-quotes__stars {
	display: block;
	letter-spacing: var(--planu-star-pad);
	color: var(--planu-zolty);
	font-size: var(--planu-star-size);
}

.planu-quotes__nav {
	display: flex;
	justify-content: center;
	gap: 16px;
	margin-top: var(--planu-space-32);
}

.planu-quotes__btn.planu-btn,
.planu-quotes__prev.planu-btn,
.planu-quotes__next.planu-btn {
	padding: 10px 16px;
	font-size: 0;
	line-height: 0;
}

.planu-quotes__prev svg,
.planu-quotes__next svg,
.planu-quotes__prev .planu-icon,
.planu-quotes__next .planu-icon {
	display: block;
	width: 22px;
	height: 22px;
	fill: none;
	color: inherit;
	stroke: currentColor;
	stroke-width: 2.4;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* Gutenberg: carousel CSS is loaded in the editor and clips/locks quote text. */
.editor-styles-wrapper .planu-quotes {
	width: auto;
	max-width: 100%;
	margin-left: 0;
	margin-right: 0;
	overflow: visible;
}

.editor-styles-wrapper .planu-quotes__viewport {
	overflow: visible;
	cursor: auto;
	touch-action: auto;
}

.editor-styles-wrapper .planu-quotes__viewport::before,
.editor-styles-wrapper .planu-quotes__viewport::after {
	display: none;
}

.editor-styles-wrapper .planu-quotes__track {
	flex-direction: column;
	align-items: stretch;
	transform: none;
	-webkit-user-select: text;
	user-select: text;
}

.editor-styles-wrapper .planu-quotes__card {
	flex: none;
	width: auto;
	max-width: 100%;
	opacity: 1;
}

.editor-styles-wrapper .planu-quotes__nav {
	display: none;
}

.planu-benefits {
	width: var(--theme-container-width);
	max-width: var(--theme-normal-container-max-width);
	margin: var(--planu-space-64) auto var(--planu-space-96);
	box-sizing: border-box;
	color: var(--planu-dzien);
}

.planu-benefits .wp-block-columns {
	background: var(--planu-gradient-sheen), var(--planu-noc);
	border-radius: var(--planu-radius-section);
	margin: 0;
	padding: var(--planu-space-32) var(--planu-space-48);
	align-items: center;
	color: var(--planu-dzien);
}

.planu-benefits .planu-text-large,
.planu-benefits .planu-text-large strong {
	color: var(--planu-dzien);
}

.planu-benefits p:not(.planu-text-large) {
	color: var(--planu-poranek);
}

.planu-benefits .wp-block-column,
.planu-benefits .wp-block-column.is-layout-flow,
.planu-benefits .wp-block-column.wp-block-column-is-layout-flow {
	display: flex !important;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 16px;
	padding: 8px 20px;
	text-align: left;
}

.planu-benefits .wp-block-column > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

.planu-benefits .wp-block-column > .wp-block-group {
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	min-width: 0;
	flex: 1;
}

.planu-benefits .wp-block-column > .wp-block-group.is-layout-flow > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

.planu-benefits .wp-block-column:not(:last-child) {
	position: relative;
}

.planu-benefits .wp-block-column:not(:last-child)::before {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 50%;
	background: var(--planu-wieczor);
}

.planu-benefits__dot {
	display: flex;
	align-items: center;
	align-self: center;
	justify-content: center;
	width: 72px;
	height: 72px;
	flex-shrink: 0;
	border-radius: 50%;
	background: var(--planu-zielony);
	color: var(--planu-noc);
}

.planu-benefits__dot .planu-icon {
	display: block;
	width: 36px;
	height: 36px;
}

.planu-benefits .planu-text-large {
	margin: 0 0 2px;
}

.planu-benefits p {
	margin: 0;
}

@media (max-width: 689.98px) {
	.planu-benefits .wp-block-column:not(:last-child)::before {
		display: none;
	}
}

.planu-tiles {
	margin: 0 auto var(--planu-space-96);
	box-sizing: border-box;
}

.planu-tiles:has(> .wp-block-woocommerce-product-collection) {
	margin-top: var(--planu-space-96);
}

.planu-tiles.wp-block-group > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

.planu-tiles > h2,
.planu-tiles > p {
	text-align: center;
}

.planu-tiles.wp-block-group > h2 {
	margin-block-end: var(--planu-space-32);
}

.planu-tiles.wp-block-group > p {
	margin-block-end: var(--planu-space-64);
}

.planu-tiles.wp-block-group > p:has(+ .wp-block-woocommerce-product-collection) {
	margin-block-end: 0;
}

.planu-tiles > .planu-tiles__grid + p,
.planu-tiles > .wp-block-woocommerce-product-collection + p {
	margin-top: var(--planu-space-48);
}

.planu-tiles > .wp-block-woocommerce-product-collection {
	margin: var(--planu-space-48) 0 0;
}

.planu-tiles .wc-block-product-template.columns-3 {
	grid-template-columns: minmax(0, 1fr);
}

.planu-tiles > p:last-child {
	margin-bottom: 0;
}

.planu-tiles:has(> .wp-block-woocommerce-product-collection) > p:last-child:not(:has(.planu-btn)) {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: var(--planu-space-12);
	width: fit-content;
	max-width: 100%;
	margin-inline: auto;
	padding: var(--planu-space-16) var(--planu-space-24);
	box-sizing: border-box;
	background: var(--planu-bialy);
	border-radius: 22px;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-heading);
	--theme-font-family: var(--planu-font-body);
	--theme-font-weight: var(--planu-fw-heading);
	--theme-font-size: var(--planu-text);
	color: var(--planu-noc);
	text-align: left;
}

.planu-tiles:has(> .wp-block-woocommerce-product-collection) > p:last-child:not(:has(.planu-btn)) .planu-icon {
	flex-shrink: 0;
}

.planu-tiles__grid {
	display: grid;
	grid-template-columns: 1fr;
	column-gap: var(--planu-space-96);
	row-gap: var(--planu-space-96);
	container-type: inline-size;
	--planu-tile-logo-scale: min(var(--planu-tile-logo-scale-base), 100cqw / var(--planu-tile-logo-src-w-max));
}

.planu-tiles__grid.wp-block-group > * {
	min-width: 0;
	margin-block-start: 0;
	margin-block-end: 0;
}

.planu-tile {
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
	container-type: inline-size;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	text-align: center;
	color: var(--planu-noc);
}

.planu-tile__circle {
	display: block;
	position: relative;
	width: min(var(--planu-tile-circle), 100%);
	max-width: 100%;
	height: auto;
	aspect-ratio: 1;
	margin: 0 auto var(--planu-space-32);
	border-radius: 50%;
	background: var(--planu-poranek);
	flex-shrink: 0;
	overflow: visible;
}

.planu-tile__circle img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}

.planu-tiles .planu-tile > p.planu-text-small {
	display: none;
}

.editor-styles-wrapper .planu-tiles .planu-tile > p.planu-text-small {
	display: block;
}

.planu-tile .planu-tile__circle .price,
.planu-tile__circle .price {
	position: absolute;
	top: 10%;
	right: 0;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: var(--planu-space-8) var(--planu-space-16);
	border-radius: 999px;
	background: var(--planu-noc);
	color: var(--planu-bialy);
	font-family: var(--planu-font-body);
	font-size: var(--planu-text-large);
	font-weight: var(--planu-fw-bold);
	--theme-font-size: var(--planu-text-large);
	--theme-font-weight: var(--planu-fw-bold);
	line-height: var(--planu-leading-tight);
	white-space: nowrap;
}

.planu-tile .planu-tile__circle .price .woocommerce-Price-amount,
.planu-tile .planu-tile__circle .price .woocommerce-Price-currencySymbol,
.planu-tile .planu-tile__circle .price bdi,
.planu-tile__circle .price .woocommerce-Price-amount,
.planu-tile__circle .price .woocommerce-Price-currencySymbol,
.planu-tile__circle .price bdi {
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
}

.planu-tile > img {
	display: block;
	position: absolute;
	left: 50%;
	z-index: 1;
	width: calc(var(--planu-tile-logo-src-w, 1px) * var(--planu-tile-logo-scale, var(--planu-tile-logo-scale-base)));
	height: auto;
	max-width: none;
	top: calc(min(var(--planu-tile-circle), 100cqw) - var(--planu-tile-logo-overlap));
	margin: 0;
	object-fit: contain;
}

.planu-tiles__grid > .planu-tile:nth-child(1) > img {
	--planu-tile-logo-src-w: var(--planu-tile-logo-src-w-1);
	transform: translate(-50%, -50%) rotate(var(--planu-tile-logo-tilt-1));
}

.planu-tiles__grid > .planu-tile:nth-child(2) > img {
	--planu-tile-logo-src-w: var(--planu-tile-logo-src-w-2);
	transform: translate(-50%, -50%) rotate(var(--planu-tile-logo-tilt-2));
}

.planu-tiles__grid > .planu-tile:nth-child(3) > img {
	--planu-tile-logo-src-w: var(--planu-tile-logo-src-w-3);
	transform: translate(-50%, -50%) rotate(var(--planu-tile-logo-tilt-3));
}

.planu-tiles__grid > .planu-tile:nth-child(4) > img {
	--planu-tile-logo-src-w: var(--planu-tile-logo-src-w-4);
	transform: translate(-50%, -50%) rotate(var(--planu-tile-logo-tilt-4));
}

.entry-content .planu-tiles .planu-tile h4 {
	margin: 0 0 8px;
	text-align: center;
	text-decoration: none;
	color: var(--planu-noc);
	--theme-font-family: var(--planu-font-body);
	--theme-font-weight: var(--planu-fw-heading);
	--theme-font-size: var(--planu-text-large);
	font-family: var(--planu-font-body);
	font-weight: var(--planu-fw-heading);
	font-size: var(--planu-text-large);
}

.planu-tile p {
	margin: 0 0 8px;
	text-align: center;
}

.planu-tile p:last-child,
.planu-tile p:has(+ .planu-btn) {
	margin-bottom: 0;
}

.planu-tile .planu-btn--secondary {
	margin-inline: auto;
	margin-block-start: var(--planu-space-group);
	align-self: center;
}

/* 2 × 350px + column-gap; section is 80% of ~90vw → ~1100px viewport */
@media (min-width: 1100px) {
	.planu-tiles__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.planu-tiles__grid:has(> :nth-child(3):last-child) {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.planu-faq {
	width: 100%;
	max-width: var(--planu-faq-width);
	margin: 0 auto var(--planu-space-64);
	box-sizing: border-box;
	--theme-block-width: var(--planu-faq-width);
	--theme-block-max-width: var(--planu-faq-width);
}

.planu-faq.wp-block-group > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

.planu-faq.wp-block-group.is-layout-flow {
	gap: var(--planu-faq-gap);
}

.planu-faq.wp-block-group > .wp-block-details + .wp-block-details,
.planu-faq > .wp-block-details + .wp-block-details {
	margin-block-start: var(--planu-faq-gap);
}

.planu-faq > h2,
.planu-faq.wp-block-group > h2 {
	margin: 0 0 var(--planu-space-64);
}

.planu-faq > h2.has-text-align-center,
.planu-faq.wp-block-group > h2.has-text-align-center {
	margin-top: var(--planu-space-96);
}

.planu-faq.wp-block-group > p:has(+ details) {
	margin-block-end: var(--planu-space-64);
}

.planu-faq details {
	border: none;
	margin-block: 0;
}

.planu-faq details.is-layout-flow {
	gap: 0;
}

.planu-faq summary {
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: var(--planu-faq-icon-gap);
	padding: var(--planu-faq-summary-pad-y) 0;
	margin-block: 0;
	list-style: none;
	font-family: var(--planu-font-heading);
	font-weight: var(--planu-fw-heading);
	color: var(--planu-noc);
}

.planu-faq summary::-webkit-details-marker {
	display: none;
}

.planu-faq summary::marker {
	content: none;
}

.planu-faq summary .planu-icon {
	order: -1;
	flex-shrink: 0;
	width: var(--planu-faq-icon-size);
	height: var(--planu-faq-icon-size);
	transition: transform var(--planu-motion-hover);
}

.planu-faq details[open] summary .planu-icon {
	transform: rotate(180deg);
}

.planu-faq details[open] summary {
	padding-bottom: 0;
}

.planu-faq details[open]:not(:last-child) {
	padding-bottom: var(--planu-faq-open-pad-bottom);
}

.planu-faq details > *:not(summary) {
	margin-block: 0;
	padding-inline-start: var(--planu-faq-answer-indent);
}

.planu-faq details[open] > summary + * {
	margin-block-start: 0;
	padding-top: var(--planu-faq-answer-pad-y);
}

.planu-faq details[open] > *:last-child:not(summary) {
	padding-bottom: 0;
}

.planu-faq details p {
	margin: 0;
}

.planu-faq .wp-block-woocommerce-product-collection {
	margin: 40px 0;
}

.planu-faq > p.has-text-align-center {
	margin: 0 0 16px;
}

.planu-faq > p.has-text-align-center:last-child {
	margin-bottom: 0;
}

.planu-why {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto var(--planu-space-64);
	padding: var(--planu-space-32) 0 0;
	box-sizing: border-box;
}

.planu-why.wp-block-group > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

.planu-why.wp-block-group > h2,
.planu-why h2 {
	margin: 0 0 var(--planu-space-96);
	text-align: left;
}

.planu-why__stage {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: auto auto;
	column-gap: var(--planu-space-32);
	row-gap: var(--planu-why-stage-gap);
	align-items: start;
	min-height: calc(var(--planu-tile-circle) + var(--planu-why-stage-gap) * 2);
	overflow: visible;
}

.planu-why__stage.wp-block-group > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

.planu-why__badge {
	position: absolute;
	grid-column: 1 / -1;
	grid-row: 1 / -1;
	left: 50%;
	top: 50%;
	width: var(--planu-tile-circle);
	height: var(--planu-tile-circle);
	margin: 0;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: var(--planu-zielony);
	pointer-events: none;
	isolation: isolate;
	z-index: 0;
	overflow: hidden;
	filter:
		drop-shadow(0 var(--planu-orb-edge-shift-scaled) 0 var(--planu-orb-edge))
		var(--planu-filter-magnet);
}

.planu-why__badge img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1.08);
}

.planu-why__item {
	position: relative;
	z-index: 1;
	max-width: 260px;
	text-align: left;
}

.planu-why__item .planu-text-large,
.planu-why__item strong {
	display: block;
	margin: 0 0 8px;
}

.planu-why__item p {
	margin: 0;
}

.planu-why__item img {
	position: absolute;
	width: var(--planu-why-arrow);
	height: auto;
	max-width: none;
	pointer-events: none;
}

.planu-why__item--tl {
	grid-column: 1;
	grid-row: 1;
	justify-self: start;
}

.planu-why__item--tl img {
	right: var(--planu-why-arrow-nw-right);
	bottom: var(--planu-why-arrow-nw-bottom);
	transform: var(--planu-why-arrow-nw-transform);
}

.planu-why__item--tr {
	grid-column: 2;
	grid-row: 1;
	justify-self: end;
}

.planu-why__item--tr img {
	left: var(--planu-why-arrow-ne-left);
	bottom: var(--planu-why-arrow-ne-bottom);
	transform: var(--planu-why-arrow-ne-transform);
}

.planu-why__item--bl {
	grid-column: 1;
	grid-row: 2;
	justify-self: start;
	align-self: end;
}

.planu-why__item--bl img {
	right: var(--planu-why-arrow-sw-right);
	top: var(--planu-why-arrow-sw-top);
	transform: var(--planu-why-arrow-sw-transform);
}

.planu-why__item--br {
	grid-column: 2;
	grid-row: 2;
	justify-self: end;
	align-self: end;
}

.planu-why__item--br img {
	left: var(--planu-why-arrow-se-left);
	top: var(--planu-why-arrow-se-top);
	transform: var(--planu-why-arrow-se-transform);
}

@media (max-width: 899.98px) {
	.planu-why__stage {
		grid-template-columns: 1fr;
		grid-template-rows: none;
		gap: var(--planu-space-32);
		min-height: 0;
	}

	.planu-why__badge {
		position: relative;
		grid-column: 1;
		grid-row: auto;
		left: auto;
		top: auto;
		transform: none;
		justify-self: center;
		order: -1;
	}

	.planu-why__item--tl,
	.planu-why__item--tr,
	.planu-why__item--bl,
	.planu-why__item--br {
		grid-column: 1;
		grid-row: auto;
		justify-self: start;
		align-self: start;
		max-width: none;
	}

	.planu-why__item img {
		display: none;
	}
}

.planu-text {
	font-size: var(--planu-text);
}

.planu-text-large {
	font-size: var(--planu-text-large);
}

.planu-text-large strong {
	font-weight: var(--planu-fw-emphasis);
}

.planu-text-small {
	font-size: var(--planu-text-small);
}

a:not(.planu-btn):not(.planu-tile) {
	color: inherit;
	text-decoration: underline;
}

a:not(.planu-btn):not(.planu-tile):hover {
	color: var(--planu-noc);
	text-decoration: underline;
}

a * {
	text-decoration: none;
}

a.planu-btn,
a.planu-tile {
	text-decoration: none;
}

.ct-acount-nav {
	--account-nav-background-active-color: var(--planu-noc);
	--account-nav-text-active-color: var(--planu-dzien);
}

.woocommerce-MyAccount-navigation a:not(.planu-btn),
.woocommerce-MyAccount-navigation a:not(.planu-btn):hover,
.woocommerce-MyAccount-navigation a:not(.planu-btn):focus-visible {
	text-decoration: none;
}

.woocommerce-MyAccount-content .woocommerce-pagination {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 16px;
}

.woocommerce-MyAccount-content .woocommerce-pagination .planu-btn {
	gap: 8px;
}

.woocommerce-Address-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.woocommerce-Address-title .edit {
	align-self: flex-end;
	margin-bottom: 0;
}

body.woocommerce-account .hero-section.is-width-constrained,
body.woocommerce-account .entry-content.is-layout-constrained > .woocommerce {
	width: var(--theme-container-width);
	max-width: var(--theme-normal-container-max-width);
	margin-inline: auto;
	box-sizing: border-box;
}

body.woocommerce-account:not(.logged-in) .hero-section.is-width-constrained {
	max-width: 450px;
	text-align: left;
	--alignment: left;
}

body.woocommerce-account:not(.logged-in) .hero-section .page-title {
	text-align: left;
}

.ct-woo-unauthorized .col2-set.planu-account-forms {
	display: block;
	width: var(--theme-container-width);
	max-width: 450px;
	margin-inline: auto;
}

.ct-woo-unauthorized .col2-set.planu-account-forms > * {
	float: none;
	width: 100%;
	padding: 0;
	border: 0;
}

.ct-woo-unauthorized .planu-account-forms:not(.is-register) .u-column2,
.ct-woo-unauthorized .planu-account-forms.is-register .u-column1 {
	display: none;
}

.planu-account-forms__heading {
	margin-bottom: 20px;
}

.planu-account-forms__heading h2 {
	margin: 0;
}

.ct-woo-unauthorized .woocommerce-LostPassword,
.ct-woo-unauthorized .lost_password {
	float: none;
	clear: both;
	margin: 0 0 16px;
	font-size: var(--planu-text-small);
}

.ct-woo-unauthorized .woocommerce-form-login__rememberme,
.ct-woo-unauthorized .wc-terms-and-conditions label,
.woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox {
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
}

.ct-woo-unauthorized .woocommerce-form-login .form-row:not(.form-row-wide),
.ct-woo-unauthorized .woocommerce-form-register .form-row:not(.form-row-wide) {
	float: none;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 12px;
	width: 100%;
}

.planu-account-forms__switch {
	margin: 16px 0 0;
}

.ct-woo-unauthorized .planu-account-forms button[type="submit"] {
	width: 100%;
}

.woocommerce-Address-title h2 {
	margin-bottom: 0;
}

.woocommerce-EditAccountForm fieldset {
	width: 100%;
	max-width: none;
	min-inline-size: 0;
	box-sizing: border-box;
	padding: 30px 0;
}

.woocommerce-EditAccountForm fieldset legend {
	margin-left: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.editor-styles-wrapper :is(h1, h2, h3, h4, h5, h6) {
	--theme-font-family: var(--planu-font-heading);
	--theme-font-weight: var(--planu-fw-heading);
	font-family: var(--planu-font-heading);
	font-weight: var(--planu-fw-heading);
	color: var(--planu-noc);
}

h1.title,
body.woocommerce-checkout .hero-section .page-title {
	font-size: var(--planu-text-display);
	--theme-font-size: var(--planu-text-display);
}

.single-product .woocommerce-product-gallery .ct-media-container {
	aspect-ratio: 1 / 1;
	background-color: var(--planu-dzien);
	--theme-object-fit: contain;
}

.single-product .woocommerce-product-gallery .ct-media-container img:not(.zoomImg) {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.single-product .product-entry-wrapper,
.single-product .woocommerce-product-gallery,
.single-product .entry-summary {
	isolation: isolate;
	z-index: 0;
}

.single-product .woocommerce-product-gallery {
	--flexy-nav-arrow-color: var(--planu-noc);
	--flexy-nav-background-color: var(--planu-bialy);
	--flexy-nav-arrow-hover-color: var(--planu-bialy);
	--flexy-nav-background-hover-color: var(--planu-noc);
}

.single-product .woocommerce-product-gallery__trigger {
	color: var(--planu-noc);
	background: var(--planu-bialy);
}

.single-product .woocommerce-product-gallery__trigger:hover {
	color: var(--planu-bialy);
	background: var(--planu-noc);
}

.single-product .woocommerce-product-gallery .flexy-pills li:hover .ct-media-container:after,
.single-product .woocommerce-product-gallery .flexy-pills li:focus-within .ct-media-container:after {
	border-color: var(--planu-poranek);
}

.single-product .woocommerce-product-gallery .flexy-pills li.active .ct-media-container:after {
	border-color: var(--planu-noc);
}

@media (hover: hover) and (pointer: fine) {
	.single-product .woocommerce-product-gallery .flexy-items > * {
		cursor: zoom-in;
	}

	.single-product .woocommerce-product-gallery .flexy-items > *:has(.planu-gallery-play) {
		cursor: pointer;
	}
}

@media (min-width: 690px) {
	.single-product .woocommerce-product-gallery .flexy-pills [data-flexy] li {
		--thumbs-width: var(--planu-gallery-desktop-strip-thumb);
	}
}

@media (max-width: 689.98px) {
	.single-product .product-entry-wrapper > .woocommerce-product-gallery {
		padding-inline: var(--planu-gallery-gutter);
	}

	.single-product .woocommerce-product-gallery .flexy > [class*="flexy-arrow"],
	.single-product .woocommerce-product-gallery .flex-direction-nav {
		display: none;
	}

	.single-product .woocommerce-product-gallery .flexy-pills li {
		--thumbs-width: calc(100% / var(--planu-gallery-mobile-thumbs));
	}

	.single-product .woocommerce-product-gallery .flexy-pills ol:not([data-flexy]) {
		flex-wrap: nowrap;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.single-product .woocommerce-product-gallery .flexy-pills ol:not([data-flexy])::-webkit-scrollbar {
		display: none;
	}
}

.single-product .woocommerce-product-gallery .ct-media-container:has(.planu-gallery-play) {
	position: relative;
}

.single-product .woocommerce-product-gallery .flexy-items .ct-media-container:has(.planu-gallery-play) .zoomImg,
.single-product .woocommerce-product-gallery > .ct-product-gallery-container > .ct-media-container:has(.planu-gallery-play) .zoomImg {
	display: none;
	pointer-events: none;
}

.single-product .woocommerce-product-gallery .flexy-items .ct-media-container:has(.planu-gallery-play) video,
.single-product .woocommerce-product-gallery > .ct-product-gallery-container > .ct-media-container:has(.planu-gallery-play) video {
	position: absolute;
	inset: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	object-fit: contain;
	background: var(--planu-dzien);
}

.planu-gallery-play {
	position: absolute;
	inset: 50% auto auto 50%;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--planu-gallery-play-size);
	height: var(--planu-gallery-play-size);
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: var(--planu-radius-pill);
	background: var(--planu-noc);
	color: var(--planu-bialy);
	appearance: none;
	cursor: pointer;
	transform: translate(-50%, -50%);
}

.planu-gallery-play[hidden] {
	display: none;
}

.planu-gallery-play .planu-icon {
	display: block;
	margin-inline-start: var(--planu-space-tight);
}

.single-product .woocommerce-product-gallery .flexy-pills .planu-gallery-play {
	width: var(--planu-gallery-play-size-thumb);
	height: var(--planu-gallery-play-size-thumb);
}

.single-product .woocommerce-product-gallery .flexy-pills .planu-gallery-play .planu-icon {
	width: var(--planu-gallery-play-icon-thumb);
	height: var(--planu-gallery-play-icon-thumb);
}

.planu-gallery-play:hover {
	background: color-mix(in srgb, var(--planu-noc) 85%, var(--planu-bialy));
}

.planu-gallery-play:focus-visible {
	outline: var(--planu-focus-width) solid var(--planu-bialy);
	outline-offset: var(--planu-focus-offset);
}

.pswp .pswp__button--zoom,
.pswp .pswp__button--fs,
.pswp .pswp__button--share,
.pswp.pswp--zoom-allowed .pswp__button--zoom,
.pswp.pswp--supports-fs .pswp__button--fs,
.pswp.pswp--supports-fs .pswp__button--zoom {
	display: none !important;
}

.pswp .pswp__top-bar,
.pswp .pswp__ui--fit .pswp__top-bar,
.pswp--minimal--dark .pswp__top-bar {
	pointer-events: none;
	z-index: 1560;
	height: auto;
	padding-block-start: calc(var(--planu-space-32) * 0.6);
	padding-inline-end: 0;
	background: transparent;
	background-color: transparent;
	background-image: none;
}

.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
	pointer-events: none;
}

.pswp__ui--idle .pswp__top-bar,
.pswp__ui--hidden .pswp__top-bar {
	opacity: 1;
}

.pswp .pswp__counter {
	color: var(--planu-bialy);
	opacity: 1;
	font-size: var(--planu-text-caption);
	font-weight: var(--planu-fw-emphasis);
	pointer-events: none;
}

.pswp .pswp__button.pswp__button--close {
	position: absolute;
	z-index: 1570;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	float: none;
	inset-block-start: calc(var(--planu-space-32) * 0.6);
	inset-inline-end: calc(var(--planu-space-32) * 0.6);
	width: var(--planu-tap);
	height: var(--planu-tap);
	min-width: var(--planu-tap);
	min-height: var(--planu-tap);
	margin: 0;
	padding-inline-end: 0;
	opacity: 1;
	pointer-events: auto;
	background: var(--planu-noc) !important;
	background-image: none !important;
	color: var(--planu-bialy);
	border-radius: 50%;
}

.pswp .pswp__button--close .planu-icon,
.pswp .pswp__button--close svg {
	pointer-events: none;
	width: var(--planu-control-size);
	height: var(--planu-control-size);
	color: var(--planu-bialy);
}

.pswp__ui--idle .pswp__button--close,
.pswp__ui--hidden .pswp__button--close {
	opacity: 1;
	pointer-events: auto;
}

.single-product .entry-summary-items > .price,
.single-product .ct-product-add-to-cart > .price,
.single-product .woocommerce-variation-price,
.single-product .woocommerce-variation-price .price {
	font-family: var(--planu-font-heading);
	font-weight: var(--planu-fw-heading);
	color: var(--planu-noc);
	font-size: var(--planu-text-product-title);
}

.single-product .ct-product-add-to-cart > .price,
.single-product .woocommerce-variation-price {
	margin-block: calc(var(--theme-content-spacing) / 2);
}

.single-product .entry-summary-items > .price .woocommerce-Price-amount,
.single-product .entry-summary-items > .price .amount,
.single-product .entry-summary-items > .price bdi,
.single-product .ct-product-add-to-cart > .price .woocommerce-Price-amount,
.single-product .ct-product-add-to-cart > .price .amount,
.single-product .ct-product-add-to-cart > .price bdi,
.single-product .woocommerce-variation-price .woocommerce-Price-amount,
.single-product .woocommerce-variation-price .amount,
.single-product .woocommerce-variation-price bdi {
	font-family: inherit;
	font-weight: inherit;
	color: inherit;
	font-size: inherit;
}

/* WPC Variations Radio Buttons hides Woo’s selected price when option prices are on. */
.single-product.woovr-active.woovr-show-price .variations_form .single_variation .woocommerce-variation-price {
	display: block !important;
}

.single-product .entry-summary-items > .woocommerce-product-rating {
	margin-bottom: calc(var(--product-element-spacing, 10px) * 2);
}

.star-rating {
	letter-spacing: var(--planu-star-pad);
	width: calc(5em + 5 * var(--planu-star-pad) + 0.15em);
}

.comment-form-rating .stars a {
	padding-inline: var(--planu-star-pad);
}

.single-product .woocommerce-product-rating .star-rating,
.single-product #reviews .star-rating {
	font-size: var(--planu-star-size);
	letter-spacing: var(--planu-star-pad);
	width: calc(5em + 5 * var(--planu-star-pad) + 0.15em);
}

.single-product .comment-form-rating .stars a:before {
	font-size: var(--planu-star-size);
}

.single-product .woocommerce-product-rating .woocommerce-review-link,
.single-product .woocommerce-product-rating .woocommerce-review-link .count {
	font-size: var(--planu-text-small);
}

.single-product .entry-summary-items > .price + .ct-product-divider,
.single-product .entry-summary-items > .woocommerce-product-details__short-description + .ct-product-divider {
	display: none;
}

.single-product .entry-summary-items p.stock.available-on-backorder,
.single-product .entry-summary-items p.stock.in-stock,
.single-product .ct-product-add-to-cart > p.stock.available-on-backorder,
.single-product .ct-product-add-to-cart > p.stock.in-stock {
	display: none;
}

@media (max-width: 689.98px) {
	.single-product .product-entry-wrapper {
		display: flex;
		flex-direction: column;
	}

	.single-product .product-entry-wrapper > .entry-summary {
		display: contents;
	}

	.single-product .product-entry-wrapper > .woocommerce-product-gallery {
		order: 2;
	}

	.single-product .entry-summary-items > :is(.entry-title, .product_title, .woocommerce-product-rating) {
		order: 1;
	}

	.single-product .entry-summary-items > *:not(.entry-title, .product_title, .woocommerce-product-rating) {
		order: 3;
	}

	.single-product .ct-cart-actions {
		flex-direction: column;
	}

	.single-product .ct-cart-actions .quantity[data-type] {
		width: 100%;
		justify-content: center;
		gap: var(--planu-space-32);
	}

	.single-product .ct-cart-actions .single_add_to_cart_button,
	.single-product .ct-cart-actions .added_to_cart {
		flex: none;
		width: 100%;
	}
}

.single-product .product > .ct-breadcrumbs {
	margin-block: var(--planu-space-16) var(--planu-space-24);
}

.single-product .lvfw-attributes,
.single-product .lvfw-attribute {
	--lvfw-attr-border-width: var(--theme-form-field-border-width);
	--lvfw-attr-border-style: solid;
	--lvfw-attr-border-color: var(--theme-form-field-border-initial-color);
	--lvfw-attr-border-hover-color: var(--theme-form-field-border-focus-color);
	--lvfw-attr-inner-bg: var(--planu-dzien);
	--lvfw-attr-border: var(--lvfw-attr-border-width) var(--lvfw-attr-border-style) var(--lvfw-attr-border-color);
	--lvfw-attr-padding: var(--planu-space-4);
	--lvfw-attr-inner-padding: 0 var(--planu-space-4);
	--lvfw-attr-min-width: var(--planu-tap);
	--lvfw-attr-gap: var(--planu-space-8);
}

.single-product .lvfw-attribute > span,
.single-product .woovr-variations > label {
	display: flex;
	align-items: baseline;
	gap: 0.5em;
	width: 100%;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-bold);
	--theme-font-size: var(--planu-text);
	--theme-font-weight: var(--planu-fw-bold);
}

.single-product .lvfw-attribute .lvfw-current-label {
	font-weight: var(--planu-fw-bold);
}

.single-product .lvfw-attribute ul {
	align-items: stretch;
	margin-block-start: var(--planu-space-12);
}

.single-product .lvfw-attribute ul li:not(.more-info-trigger) {
	display: flex;
	align-items: stretch;
	box-sizing: border-box;
	min-width: var(--planu-tap);
	min-height: var(--planu-tap);
	border-radius: var(--theme-form-field-border-radius, 8px);
	background: var(--planu-dzien);
}

.single-product .lvfw-attribute ul li.active {
	border-color: var(--planu-noc);
}

.single-product .lvfw-attribute ul li:not(.more-info-trigger) :is(a, span, button) {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	min-height: 100%;
	background: var(--lvfw-attr-inner-bg);
	color: inherit;
	text-decoration: none;
}

.single-product .lvfw-attribute ul li button {
	appearance: none;
	margin: 0;
	border: 0;
	padding: var(--lvfw-attr-inner-padding);
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	cursor: pointer;
}

.single-product .lvfw-attribute ul li:not(.more-info-trigger) button:has(.planu-text-small) {
	flex-direction: column;
}

.single-product .variations_form table.variations {
	display: block;
	margin-block-start: var(--lvfw-attrs-gap, var(--planu-space-24));
}

.single-product .variations_form table.variations .lvfw-attribute {
	width: 100%;
	flex: 1 1 100%;
}

.single-product .variations_form table.variations th.label {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.single-product .variations_form table.variations td.value {
	position: relative;
}

.single-product .variations_form table.variations select {
	position: absolute;
	width: 1px;
	max-width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.single-product .lvfw-attribute ul li.more-info-trigger {
	border: 0;
	padding: 0;
	min-width: 0;
	background: transparent;
	margin-inline-start: var(--planu-space-12);
}

.single-product .lvfw-attribute ul li.more-info-trigger:hover {
	border: 0;
}

.single-product .lvfw-attribute ul.lvfw-attribute-options li.more-info-trigger .planu-btn.planu-btn--text {
	background: transparent;
	padding: 0;
	padding-bottom: calc(var(--planu-btn-text-underline-offset) + var(--planu-btn-text-underline));
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-button);
	white-space: nowrap;
}

.planu-dialog {
	position: fixed;
	width: min(calc(100% - var(--planu-space-cluster)), var(--planu-dialog-max-width));
	max-height: var(--planu-dialog-max-height);
	margin: auto;
	padding: var(--planu-space-cluster);
	overflow: hidden;
	border: 0;
	border-radius: var(--planu-radius-section);
	background: var(--planu-bialy);
	color: var(--theme-text-color);
	box-shadow: var(--planu-shadow-overlay);
}

.planu-dialog[open] {
	display: flex;
	flex-direction: column;
}

.planu-dialog::backdrop {
	background: color-mix(in srgb, var(--planu-noc) 45%, transparent);
}

.planu-dialog > form[method="dialog"] {
	display: flex;
	flex-shrink: 0;
	justify-content: flex-end;
	margin: 0 0 var(--planu-space-related);
}

.planu-dialog > form[method="dialog"] + * {
	flex: 1 1 auto;
	min-height: 0;
	overflow: auto;
}

.planu-dialog > form[method="dialog"] button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--planu-tap);
	height: var(--planu-tap);
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--planu-noc);
	cursor: pointer;
}

.planu-dialog h1 {
	font-size: var(--planu-text-product-title);
	font-weight: var(--planu-fw-heading);
}

.planu-dialog h2 {
	font-size: var(--planu-text-large);
	font-weight: var(--planu-fw-heading);
}

.planu-dialog:has(.planu-account-forms) {
	width: min(calc(100% - var(--planu-space-cluster)), 450px);
}

.planu-dialog:has(video) > form[method="dialog"] + * {
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--planu-noc);
}

.planu-dialog video {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: var(--planu-dialog-video-max-height);
	margin-inline: auto;
	object-fit: contain;
	background: var(--planu-noc);
}

[id^="planu-diff-"].planu-dialog h1 + p {
	font-size: var(--planu-text-large);
	font-family: var(--planu-font-body);
}

[id^="planu-diff-"].planu-dialog .wp-block-table {
	margin-block-end: 0;
}

[id^="planu-diff-"].planu-dialog .wp-block-table :is(th, td) {
	text-align: left;
	padding: var(--planu-space-16);
}

[id^="planu-diff-"].planu-dialog .wp-block-table :is(th, td):first-child {
	width: 26%;
}

[id^="planu-diff-"].planu-dialog .wp-block-table :is(th, td):nth-child(n + 2) {
	width: 37%;
}

[id^="planu-diff-"].planu-dialog .wp-block-table + p {
	margin-block-start: var(--planu-space-group);
	margin-block-end: 0;
	padding: var(--planu-space-16) var(--planu-space-24);
	border-radius: var(--planu-radius);
	background: var(--planu-noc);
	color: var(--planu-dzien);
}

@media (max-width: 689.98px) {
	[id^="planu-diff-"].planu-dialog {
		padding: var(--planu-space-inset);
	}

	[id^="planu-diff-"].planu-dialog .wp-block-table {
		overflow-x: visible;
	}

	[id^="planu-diff-"].planu-dialog .wp-block-table table,
	[id^="planu-diff-"].planu-dialog .wp-block-table tbody {
		display: block;
		width: 100%;
	}

	[id^="planu-diff-"].planu-dialog .wp-block-table .has-fixed-layout {
		table-layout: auto;
	}

	[id^="planu-diff-"].planu-dialog .wp-block-table thead {
		display: none;
	}

	[id^="planu-diff-"].planu-dialog .wp-block-table tbody tr {
		display: block;
		box-sizing: border-box;
		margin-block-end: var(--planu-space-16);
		padding: var(--planu-space-16);
		border-radius: var(--planu-radius);
		background: var(--planu-dzien);
	}

	[id^="planu-diff-"].planu-dialog .wp-block-table tbody tr:last-child {
		margin-block-end: 0;
	}

	[id^="planu-diff-"].planu-dialog .wp-block-table :is(th, td),
	[id^="planu-diff-"].planu-dialog .wp-block-table :is(th, td):first-child,
	[id^="planu-diff-"].planu-dialog .wp-block-table :is(th, td):nth-child(n + 2) {
		display: block;
		width: 100%;
		max-width: 100%;
		padding: var(--planu-space-8) 0;
		border: 0;
	}

	[id^="planu-diff-"].planu-dialog .wp-block-table tbody :is(th, td):first-child {
		font-weight: var(--planu-fw-heading);
		padding-block: 0 var(--planu-space-12);
	}

	[id^="planu-diff-"].planu-dialog .wp-block-table tbody td:nth-child(2)::before,
	[id^="planu-diff-"].planu-dialog .wp-block-table tbody td:nth-child(3)::before {
		display: block;
		font-weight: var(--planu-fw-heading);
		margin-block-end: var(--planu-space-4);
	}

	#planu-diff-37107.planu-dialog .wp-block-table tbody td:nth-child(2)::before {
		content: "Dla Przedszkolaka";
	}

	#planu-diff-37107.planu-dialog .wp-block-table tbody td:nth-child(3)::before {
		content: "Dla Ucznia";
	}

	#planu-diff-37108.planu-dialog .wp-block-table tbody td:nth-child(2)::before {
		content: "Magnetyczny";
	}

	#planu-diff-37108.planu-dialog .wp-block-table tbody td:nth-child(3)::before {
		content: "Samoprzylepny";
	}

	[id^="planu-diff-"].planu-dialog .wp-block-table + p {
		box-sizing: border-box;
		max-width: 100%;
		overflow-wrap: break-word;
	}
}

.single-product .woovr-variations {
	display: none;
}

.single-product .woovr-variations > label {
	flex: 0 0 auto;
	margin-bottom: calc(var(--planu-mini-cart-title-gap) - var(--planu-shipping-method-gap));
}

.single-product .woovr-variations .woovr-variation,
.single-product .woovr-variations .woovr-variation:hover,
.single-product .woovr-variations .woovr-variation.woovr-variation-activate {
	background: transparent;
	background-color: transparent;
}

.single-product .woovr-variation-radio {
	display: flex;
	align-items: center;
	width: 100%;
	border: none;
	padding: 0;
}

.single-product .woovr-variations .woovr-variation > div {
	padding-top: 0;
	padding-bottom: 0;
}

.single-product .woovr-variation-radio .woovr-variation-info {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 0.35em;
}

.single-product .woovr-variation-radio .woovr-variation-name {
	font-weight: var(--planu-fw-bold);
}

.single-product .woovr-variation-radio .woovr-variation-price {
	font-weight: var(--planu-fw-body);
}

.single-product .woovr-variation-radio .woovr-variation-info .woovr-variation-availability,
.single-product .woovr-variation-availability,
.single-product .woovr-variation-image {
	display: none;
}

header#header {
	--menu-items-spacing: var(--planu-space-48);
	--menu-items-gap: var(--planu-space-48);
	--height: var(--planu-header-height);
	--theme-backdrop-blur: 0px;
	--theme-box-shadow: none;
	position: sticky;
	top: var(--admin-bar, 0px);
	z-index: 100;
	overflow: visible;
	background: transparent;
	background-color: transparent;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	box-shadow: none;
	border-bottom: var(--planu-header-border-width) solid color-mix(in srgb, var(--planu-poranek) 55%, transparent);
	transition:
		background-color var(--planu-motion-hover),
		box-shadow var(--planu-motion-hover);
}

/* Beat Blocksy row fill: [data-header*="type-1"] .ct-header [data-row*="middle"] { background-color: palette-8 } and sticky/inline. */
[data-header*="type-1"] header#header.ct-header [data-row],
[data-header*="type-1"] header#header.ct-header [data-row][data-sticky],
[data-header*="type-1"] header#header.ct-header [data-row][data-sticky*="yes"],
[data-header*="type-1"] header#header.ct-header [data-row] > div,
header#header [data-row],
header#header [data-row][data-sticky],
header#header [data-row][data-sticky*="yes"],
header#header [data-row] > div {
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	box-shadow: none !important;
}

header#header.planu-header--glass {
	background-color: var(--planu-glass-bg);
	backdrop-filter: var(--planu-glass-blur);
	-webkit-backdrop-filter: var(--planu-glass-blur);
	border-bottom-color: transparent;
	box-shadow: var(--planu-glass-rim), var(--planu-elevation-3);
}

header#header [data-row="middle"] {
	--theme-border-bottom: none;
	border-bottom: none;
}

header#header [data-row="middle"] > div {
	min-height: var(--planu-header-height);
	border-bottom: none;
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	header#header.planu-header--glass {
		background-color: var(--planu-dzien);
	}
}

@media (prefers-reduced-motion: reduce) {
	header#header,
	header#header [data-row="middle"] {
		transition: none;
	}
}

header#header [data-device="desktop"] [data-row="middle"] > .ct-container {
	position: relative;
	overflow: visible;
}

header#header a,
header#header a:hover {
	text-decoration: none;
}

header#header .site-title,
header#header .site-title a {
	font-family: var(--planu-font-body);
	font-weight: var(--planu-fw-emphasis);
	font-size: var(--planu-text-brand);
	line-height: 1;
	letter-spacing: var(--planu-tracking-display);
	color: var(--planu-noc);
	text-transform: none;
}

header#header .site-logo-container {
	--logo-max-height: var(--planu-header-logo-height);
}

header#header .header-menu-1 > ul > li > a.ct-menu-link {
	--theme-font-family: var(--planu-font-body);
	--menu-item-height: auto;
	position: relative;
	display: inline-flex;
	align-items: center;
	height: auto;
	padding: 4px 0 8px;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	color: var(--planu-noc);
	text-transform: none !important;
}

header#header .header-menu-1 > ul > li > a.ct-menu-link::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 2px;
	height: 2px;
	opacity: 1;
	background: var(--planu-noc);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform var(--planu-motion-hover);
	pointer-events: none;
}

header#header .header-menu-1 > ul > li > a.ct-menu-link:hover::after,
header#header .header-menu-1 > ul > li > a.ct-menu-link:focus-visible::after,
header#header .header-menu-1 > ul > li.ct-active > a.ct-menu-link::after,
header#header .header-menu-1 > ul > li.current-menu-item > a.ct-menu-link::after,
header#header .header-menu-1 > ul > li.current-menu-ancestor > a.ct-menu-link::after {
	transform: scaleX(1);
}

header#header .header-menu-1 > ul > li > a .ct-toggle-dropdown-desktop,
header#header .header-menu-1 > ul > li > .ct-toggle-dropdown-desktop-ghost,
header#header .header-menu-1 .ct-mega-menu .sub-menu .ct-toggle-dropdown-desktop,
header#header .header-menu-1 .ct-mega-menu .sub-menu .ct-toggle-dropdown-desktop-ghost {
	display: none;
}

header#header .header-menu-1 {
	position: relative;
}

header#header .header-menu-1 > .menu,
header#header .header-menu-1 > .menu > li.ct-mega-menu {
	position: static;
}

header#header .header-menu-1:has(.ct-mega-menu:hover),
header#header .header-menu-1:has(.ct-mega-menu:focus-within),
header#header .header-menu-1:has(.ct-mega-menu.ct-active) {
	overflow: visible;
}

header#header .header-menu-1 > .menu > li.ct-mega-menu > .sub-menu {
	--dropdown-width: auto;
	--dropdown-background-color: var(--planu-bialy);
	position: absolute;
	z-index: 20;
	isolation: isolate;
	display: none;
	grid-auto-flow: column;
	grid-auto-columns: max-content;
	gap: var(--planu-mega-pad);
	top: 100%;
	left: 50%;
	right: auto;
	width: max-content;
	max-width: 90vw;
	min-width: 0;
	margin-top: 0;
	padding: var(--planu-mega-pad);
	border: 0;
	border-radius: var(--planu-radius);
	background-color: var(--planu-bialy);
	background-repeat: no-repeat;
	box-shadow: var(--planu-shadow-dropdown);
	transform: translateX(-50%);
}

header#header .header-menu-1 > .menu > li.ct-mega-menu[data-mega="fill"] > .sub-menu {
	min-width: min(var(--planu-mega-width), 90vw);
	min-height: var(--planu-mega-image);
	background-size: cover;
	background-position: right center;
}

header#header .header-menu-1 > .menu > li.ct-mega-menu[data-mega="side"] > .sub-menu::after {
	content: "";
	align-self: center;
	width: var(--planu-mega-image);
	height: var(--planu-mega-image);
	pointer-events: none;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

header#header .header-menu-1 > .menu > li.ct-mega-menu[data-mega="circle"] > .sub-menu {
	overflow: hidden;
	padding-right: calc(var(--planu-mega-circle) - var(--planu-mega-circle-shift-x) + var(--planu-mega-circle-nudge));
}

header#header .header-menu-1 > .menu > li.ct-mega-menu[data-mega="circle"] > .sub-menu::after {
	content: "";
	position: absolute;
	z-index: 0;
	right: calc(var(--planu-mega-circle-shift-x) * -1 + var(--planu-mega-circle-nudge));
	bottom: calc(var(--planu-mega-circle-shift-y) * -1);
	width: var(--planu-mega-circle);
	height: var(--planu-mega-circle);
	pointer-events: none;
	border-radius: 50%;
	background-repeat: no-repeat;
	background-size: var(--planu-mega-circle-image-size);
	background-position: var(--planu-mega-circle-image-x) var(--planu-mega-circle-image-y);
}

header#header .header-menu-1 > .menu > li.ct-mega-menu:hover > .sub-menu,
header#header .header-menu-1 > .menu > li.ct-mega-menu:focus-within > .sub-menu,
header#header .header-menu-1 > .menu > li.ct-mega-menu.ct-active > .sub-menu {
	display: grid;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	animation: planu-dropdown-enter var(--planu-motion-enter) both;
}

@keyframes planu-dropdown-enter {
	from {
		opacity: 0;
		transform: translateX(-50%) translateY(var(--planu-space-8));
	}

	to {
		opacity: 1;
		transform: translateX(-50%) translateY(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	header#header .header-menu-1 > .menu > li.ct-mega-menu:hover > .sub-menu,
	header#header .header-menu-1 > .menu > li.ct-mega-menu:focus-within > .sub-menu,
	header#header .header-menu-1 > .menu > li.ct-mega-menu.ct-active > .sub-menu {
		animation: none;
		transform: translateX(-50%);
	}
}

header#header .header-menu-1 > .menu > li.ct-mega-menu > .sub-menu > li {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	border-top: 0;
}

header#header .header-menu-1 > .menu > li.ct-mega-menu > .sub-menu > li > a.ct-menu-link {
	width: auto;
	padding: 0 0 12px;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text-large);
	font-weight: var(--planu-fw-heading);
	line-height: 1.3;
	color: var(--planu-noc);
}

header#header .header-menu-1 > .menu > li.ct-mega-menu > .sub-menu .sub-menu {
	position: static;
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: none;
	background: transparent;
	box-shadow: none;
	border-radius: 0;
}

header#header .header-menu-1 > .menu > li.ct-mega-menu > .sub-menu .sub-menu li {
	border-top: 0;
}

header#header .header-menu-1 > .menu > li.ct-mega-menu > .sub-menu .sub-menu a.ct-menu-link {
	width: auto;
	padding: 0;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	color: var(--planu-wieczor);
}

header#header .header-menu-1 > .menu > li.ct-mega-menu > .sub-menu .sub-menu a.ct-menu-link:hover,
header#header .header-menu-1 > .menu > li.ct-mega-menu > .sub-menu .sub-menu a.ct-menu-link:focus-visible {
	color: var(--planu-noc);
}

header#header [data-column="end"] {
	gap: 10px;
}

header#header .ct-header-cart .ct-cart-item,
header#header .ct-header-search,
header#header .ct-header-account a {
	--toggle-button-size: 44px;
	--toggle-button-radius: 50%;
	--toggle-button-background: var(--planu-bialy);
	--toggle-button-shadow: var(--planu-elevation-1);
	--toggle-button-margin-start: 0;
	--toggle-button-margin-end: 0;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--planu-bialy);
	color: var(--planu-noc);
	box-shadow: var(--planu-elevation-1);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

header#header .ct-header-cart .ct-cart-item {
	--toggle-button-background: var(--planu-noc);
	--theme-icon-color: var(--planu-dzien);
	--theme-icon-hover-color: var(--planu-dzien);
	background: var(--planu-noc);
	color: var(--planu-dzien);
}

header#header .ct-header-cart .ct-label {
	display: none;
}

header#header .ct-header-search .ct-label {
	display: none;
}

header#header .ct-header-cart .ct-icon,
header#header .ct-header-cart .ct-cart-item svg,
header#header .ct-header-search .ct-icon,
header#header .ct-header-search svg,
header#header .ct-header-account .ct-icon {
	width: 25px;
	height: 25px;
	color: var(--planu-noc);
	fill: none !important;
	stroke: var(--planu-noc);
}

header#header .ct-header-cart .ct-icon,
header#header .ct-header-cart .ct-cart-item svg {
	color: var(--planu-dzien);
	stroke: var(--planu-dzien);
}

header#header .ct-dynamic-count-cart,
.planu-bottom-nav .ct-dynamic-count-cart {
	--theme-cart-badge-text: var(--planu-bialy);
	--theme-cart-badge-background: var(--planu-czerwony);
	color: var(--planu-bialy);
	background: var(--planu-czerwony);
	inset-inline-end: -14px;
	font-size: var(--planu-text-badge);
}

blockquote,
.wp-block-quote {
	color: var(--planu-poranek);
}

.rodo_notice,
.woocommerce-privacy-policy-text {
	font-size: var(--planu-text-small);
	line-height: 1.6;
}

.planu-account-forms .rodo_notice {
	margin-top: 40px;
}

@media (max-width: 689.98px) {
	body.woocommerce-checkout form.ct-woocommerce-checkout {
		display: flex;
		flex-direction: column;
	}

	body.woocommerce-checkout .ct-customer-details,
	body.woocommerce-checkout #customer_details .col-2,
	body.woocommerce-checkout .woocommerce-additional-fields {
		display: contents;
	}

	body.woocommerce-checkout .ct-order-review {
		order: 2;
	}

	body.woocommerce-checkout .rodo_notice {
		order: 3;
	}
}

@media (min-width: 690px) {
	body.woocommerce-checkout .ct-customer-details {
		display: flex;
		flex-direction: column;
		gap: var(--planu-space-24);
	}
}

body.woocommerce-checkout #checkout-shipping-methods {
	display: flex;
	flex-direction: column;
	gap: var(--planu-space-24);
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin-bottom: 0;
}

body.woocommerce-checkout #checkout-shipping-methods > section,
body.woocommerce-checkout .ct-customer-details > section,
body.woocommerce-checkout #customer_details {
	padding: var(--planu-space-32);
	border-radius: var(--planu-radius);
	background: var(--planu-bialy);
}

body.woocommerce-checkout #checkout-shipping-methods > section {
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

body.woocommerce-checkout #checkout-shipping-methods > section > :first-child,
body.woocommerce-checkout .ct-customer-details > section > :first-child,
body.woocommerce-checkout #customer_details > :first-child {
	margin-block-start: 0;
}

body.woocommerce-checkout #checkout-shipping-methods > section h4,
body.woocommerce-checkout .ct-customer-details > section > h4,
body.woocommerce-checkout #customer_details h4,
body.woocommerce-checkout #ship-to-different-address {
	margin-block-end: var(--planu-space-24);
}

body.woocommerce-checkout .woocommerce-account-fields .create-account .woocommerce-form__label-for-checkbox,
body.woocommerce-checkout #ship-to-different-address .woocommerce-form__label-for-checkbox {
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	line-height: var(--planu-leading-body);
	color: var(--planu-wieczor);
	--theme-font-family: var(--planu-font-body);
	--theme-font-weight: var(--planu-fw-body);
}

body.woocommerce-checkout #checkout-shipping-methods table.shop_table {
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin: 0;
	border: 0;
}

body.woocommerce-checkout #checkout-shipping-methods table.shop_table tbody,
body.woocommerce-checkout #checkout-shipping-methods table.shop_table tr.woocommerce-shipping-totals,
body.woocommerce-checkout #checkout-shipping-methods table.shop_table tr.shipping {
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

body.woocommerce-checkout #checkout-shipping-methods table.shop_table :is(th, td) {
	--theme-table-border-width: 0;
	border: 0;
	padding: 0;
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

body.woocommerce-checkout #checkout-shipping-methods .cart_list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--planu-space-8);
	list-style: none;
	margin: 0;
	padding: 0;
}

body.woocommerce-checkout #checkout-shipping-methods .cart_list li:last-child {
	margin-inline-start: var(--planu-space-16);
}

body.woocommerce-checkout #checkout-shipping-methods .cart_list .product-thumbnail {
	position: relative;
}

body.woocommerce-checkout #checkout-shipping-methods .cart_list .product-thumbnail img {
	display: block;
	box-sizing: border-box;
	width: var(--planu-space-64);
	height: var(--planu-space-64);
	object-fit: cover;
	border: 2px solid var(--planu-poranek);
	border-radius: var(--planu-radius-image);
}

body.woocommerce-checkout #checkout-shipping-methods .cart_list .product-thumbnail::after {
	content: "x" attr(data-quantity);
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 1;
	box-sizing: border-box;
	min-width: var(--planu-control-size);
	height: var(--planu-control-size);
	padding: 0 var(--planu-space-4);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--planu-radius-pill);
	background: var(--planu-noc);
	color: var(--planu-dzien);
	font-family: var(--planu-font-body);
	font-size: var(--planu-text-badge);
	font-weight: var(--planu-fw-bold);
	line-height: 1;
}

body.woocommerce-checkout #checkout-shipping-methods table.shop_table .order-delivery-date,
body.woocommerce-cart .cart_totals table.shop_table tr.order-delivery-date {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	color: var(--planu-wieczor);
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
}

body.woocommerce-checkout #checkout-shipping-methods table.shop_table .order-delivery-date {
	margin-top: var(--planu-space-16);
	border-bottom: 0;
}

body.woocommerce-checkout #checkout-shipping-methods table.shop_table .order-delivery-date :is(th, td),
body.woocommerce-cart .cart_totals table.shop_table tr.order-delivery-date :is(th, td) {
	display: block;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
	border: 0;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	color: inherit;
	text-align: start;
	white-space: normal;
	--theme-font-weight: inherit;
}

body.woocommerce-checkout #checkout-shipping-methods table.shop_table .order-delivery-date th,
body.woocommerce-cart .cart_totals table.shop_table tr.order-delivery-date th {
	flex: 1 1 auto;
	width: auto;
}

body.woocommerce-checkout #checkout-shipping-methods table.shop_table .order-delivery-date td,
body.woocommerce-cart .cart_totals table.shop_table tr.order-delivery-date td {
	flex: 1 1 auto;
	flex-basis: 100%;
	width: auto;
}

body.woocommerce-checkout #checkout-shipping-methods table.shop_table .order-delivery-date :is(th, td) {
	padding: 0;
}

body.woocommerce-checkout #checkout-shipping-methods table.shop_table .order-delivery-date .date,
body.woocommerce-cart .cart_totals table.shop_table tr.order-delivery-date .date {
	display: inline;
	font-size: inherit;
}

@media (min-width: 1000px) {
	body.woocommerce-checkout form.ct-woocommerce-checkout {
		grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	}
}

body.woocommerce-checkout.has-pickup-shipping :is(
	#billing_address_1_field,
	#billing_address_2_field,
	#billing_city_field,
	#billing_state_field,
	#billing_postcode_field,
	#shipping_address_1_field,
	#shipping_address_2_field,
	#shipping_city_field,
	#shipping_state_field,
	#shipping_postcode_field
) {
	display: none;
}

body.woocommerce-checkout.has-pickup-shipping #billing_country_field .select2-container--disabled,
body.woocommerce-checkout.has-pickup-shipping #billing_country {
	cursor: not-allowed;
}

.free_shipping_progress_bar {
	max-width: 600px;
	margin: 0 auto 80px;
}

body.woocommerce-cart .free_shipping_progress_bar {
	margin: 0 0 20px;
	text-align: start;
}

.mini-cart .free_shipping_progress_bar {
	margin: 0 auto 50px;
}

#woo-cart-panel.ct-panel .ct-panel-inner {
	background-color: var(--planu-dzien);
	box-shadow: var(--planu-shadow-overlay);
}

#woo-cart-panel .ct-panel-content,
#woo-cart-panel .ct-panel-content .product-title,
#woo-cart-panel .ct-panel-content .quantity,
#woo-cart-panel .ct-panel-content .woocommerce-mini-cart__total,
#woo-cart-panel .ct-panel-content .woocommerce-mini-cart__total.total {
	--theme-font-size: var(--planu-text);
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: inherit;
	text-transform: none;
}

#woo-cart-panel .woocommerce-Price-amount,
#woo-cart-panel .amount {
	font-weight: var(--planu-fw-bold);
}

#woo-cart-panel .free_shipping_progress_bar {
	box-sizing: border-box;
	font-size: var(--planu-text-small);
	max-width: 100%;
	width: 100%;
	margin: 0 0 25px;
	padding-inline-start: var(--panel-padding, 35px);
	padding-inline-end: var(--panel-padding, 25px);
}

#woo-cart-panel .woocommerce-mini-cart-item {
	align-items: start;
	--theme-icon-size: 25px;
	margin-bottom: var(--planu-mini-cart-item-gap);
}

#woo-cart-panel .woocommerce-mini-cart .product-title {
	line-height: var(--theme-icon-size);
	margin-inline-end: 0;
	margin-block-end: var(--planu-mini-cart-title-gap);
	padding-inline-end: calc(var(--theme-icon-size) + 8px);
}

#woo-cart-panel .planu-mini-cart-meta {
	display: block;
	text-align: end;
	width: 100%;
	margin-inline-end: 0;
}

#woo-cart-panel a:not(.planu-btn),
#woo-cart-panel a:not(.planu-btn):hover {
	text-decoration: none;
}

#woo-cart-panel .ct-panel-actions {
	display: flex;
	align-items: center;
}

#woo-cart-panel .ct-panel-actions h4 {
	position: static;
	inset: auto;
	display: block;
	margin: 0;
	text-align: start;
	pointer-events: auto;
}

#woo-cart-panel .ct-toggle-close {
	margin-inline-start: auto;
	--theme-icon-size: 25px;
}

#woo-cart-panel .planu-mini-cart-shipping {
	margin-block-start: var(--planu-mini-cart-heading-gap);
}

#woo-cart-panel .ct-toggle-close .ct-icon,
#woo-cart-panel .remove .ct-icon,
body.woocommerce-cart .shop_table .remove .ct-icon {
	width: 25px;
	height: 25px;
	fill: none !important;
	stroke: currentColor;
}

#woo-cart-panel .woocommerce-mini-cart .remove,
body.woocommerce-cart .shop_table .remove {
	--theme-icon-size: 25px;
}

#woo-cart-panel .woocommerce-mini-cart .remove {
	top: 0;
	inset-inline-end: 0;
	padding: 0;
	height: var(--theme-icon-size);
	align-items: center;
}

#woo-cart-panel .woocommerce-mini-cart__buttons {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

body:not(.wp-admin) #woo-cart-panel .woocommerce-mini-cart__buttons a.button.planu-btn--text {
	align-self: center;
	justify-content: center;
	text-align: center;
	width: fit-content;
	margin-inline: auto;
}

#woo-cart-panel .woocommerce-mini-cart__buttons .planu-btn:not(.planu-btn--text),
#woo-cart-panel .return-to-shop .planu-btn {
	width: 100%;
}

#woo-cart-panel[data-checkout-review] .planu-mini-cart-shipping,
#woo-cart-panel[data-checkout-review] .woocommerce-mini-cart__buttons,
#woo-cart-panel[data-checkout-review] .woocommerce-mini-cart .remove {
	display: none;
}

#woo-cart-panel[data-checkout-review] .woocommerce-mini-cart .product-title {
	padding-inline-end: 0;
}

.extra-shipping-desc {
	display: none;
	font-size: var(--planu-text-small);
	color: var(--planu-wieczor);
	font-weight: var(--planu-fw-body);
}

.meter {
	box-sizing: content-box;
	height: 10px;
	position: relative;
	background: var(--planu-poranek);
	border-radius: 3px;
	overflow: hidden;
	margin-top: 10px;
}

.meter > span {
	display: block;
	height: 100%;
	background-color: var(--planu-czerwony);
	position: relative;
	overflow: hidden;
}

.free_shipping_progress_bar .meter > span {
	background-color: var(--planu-zielony);
}

.single-product .ct-product-add-to-cart .planu-text-small {
	margin-block: var(--planu-space-16) 0;
	text-align: center;
	color: var(--planu-wieczor);
}

.single-product .ct-product-add-to-cart .planu-text-small [aria-hidden="true"] {
	display: inline-block;
	width: var(--planu-closing-cta-sep);
	height: var(--planu-closing-cta-sep);
	margin-inline: var(--planu-space-8);
	border-radius: 50%;
	background-color: currentColor;
	vertical-align: middle;
	overflow: hidden;
	font-size: 0;
	line-height: 0;
}

@media (min-width: 690px) {
	.single-product .ct-product-add-to-cart .planu-text-small {
		white-space: nowrap;
	}
}

.single-product .delivery_date_countdown {
	background: var(--planu-bialy);
	padding: 20px 20px 12px;
	text-align: center;
	border-radius: 22px 22px 0 0;
	margin-top: 20px;
	margin-bottom: 0;
	line-height: 1.5;
}

.delivery_date_countdown span.delivery_date {
	font-weight: var(--planu-fw-emphasis);
}

.delivery_date_countdown .timer {
	font-weight: var(--planu-fw-emphasis);
	color: var(--planu-czerwony);
	display: none;
}

.single-product .delivery_date_countdown + .delivery_cost {
	margin-top: 0;
	margin-bottom: 30px;
	background: var(--planu-bialy);
	border-radius: 0 0 22px 22px;
	border-top: 1px solid var(--planu-poranek);
	padding: 12px 20px;
	text-align: center;
	font-size: var(--planu-text-small);
}

.delivery_cost {
	text-align: center;
	font-size: var(--planu-text-small);
}

.delivery_cost .paczkomat,
.delivery_cost .kurier {
	display: inline-flex;
	align-items: center;
	margin: 0 20px;
}

.delivery_cost .planu-icon {
	height: var(--planu-icon-delivery);
	width: var(--planu-icon-delivery);
	margin-right: 10px;
}

.order-delivery-date .date {
	display: inline;
	font-size: inherit;
}

.planu-tooltip:after {
	content: attr(data-tooltip-text);
	position: absolute;
	top: calc(var(--planu-space-8) * -1);
	left: 0;
	transform: translate(0%, -100%);
	width: 300px;
	padding: var(--planu-space-16) var(--planu-space-24);
	border-radius: var(--planu-radius);
	background: var(--planu-noc);
	color: var(--planu-dzien);
	text-align: left;
	display: none;
	z-index: 1000;
	white-space: normal;
	box-shadow: var(--planu-shadow-dropdown);
}

.planu-tooltip:hover:after {
	display: block;
}

.cat_desc2 {
	padding: 20px;
}

.woosb-bundles .iworks-omnibus {
	display: none;
}

.wc-block-product-template {
	gap: 24px;
}

.planu-collection-heading {
	display: flex;
	align-items: center;
	gap: 24px;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	margin-bottom: var(--planu-space-24);
}

.planu-collection-heading .wp-block-heading {
	margin: 0 !important;
	flex-shrink: 1;
	min-width: 0;
	white-space: normal;
}

.planu-collection-heading__line {
	flex-grow: 1;
	height: 0;
	border-top: 1px solid var(--planu-poranek);
	min-width: 0;
}

.planu-collection-heading .planu-btn {
	flex-shrink: 0;
	white-space: nowrap;
}

.planu-collection-heading + .woocommerce + p {
	margin-block-start: var(--planu-space-48);
	margin-block-end: 0;
}

.woocommerce-tabs .tabs,
.woocommerce-tabs[data-type] .tabs,
.woocommerce-tabs .ct-accordion-heading {
	--theme-font-family: var(--planu-font-body);
	--theme-font-size: var(--planu-text-large);
	--theme-font-weight: var(--planu-fw-heading);
	--theme-text-transform: none;
	--theme-text-decoration: none;
	--theme-link-initial-color: var(--planu-wieczor);
	--theme-link-hover-color: var(--planu-noc);
	--theme-link-active-color: var(--planu-noc);
	--tab-background: var(--planu-noc);
}

.woocommerce-tabs .tabs a,
.woocommerce-tabs[data-type] .tabs a,
.woocommerce-tabs .ct-accordion-heading {
	font-family: var(--planu-font-body);
	font-size: var(--planu-text-large);
	font-weight: var(--planu-fw-heading);
	text-transform: none;
	text-decoration: none;
	color: var(--planu-wieczor);
}

.woocommerce-tabs .tabs a:hover,
.woocommerce-tabs[data-type] .tabs a:hover,
.woocommerce-tabs .tabs li.active a,
.woocommerce-tabs[data-type] .tabs li.active a,
.woocommerce-tabs .ct-accordion-heading:hover,
.woocommerce-tabs[data-type*="type-3"] [aria-expanded="true"] {
	color: var(--planu-noc);
	text-decoration: none;
}

/* Blocksy paints the selected bar via li.active:before + --tab-background
   (customizer woo_actibe_tab_border → --theme-palette-color-1 / #2872fa).
   Set the variable on li.active (wins over .tabs) and the bar itself. */
.woocommerce div.product div.woocommerce-tabs ul.tabs li.active,
.woocommerce-tabs[data-type] .tabs li.active {
	--tab-background: var(--planu-noc);
	--theme-palette-color-1: var(--planu-noc);
}

.woocommerce div.product div.woocommerce-tabs ul.tabs li.active:before,
.woocommerce div.product div.woocommerce-tabs ul.tabs li.active:after,
.woocommerce-tabs[data-type] .tabs li.active:before,
.woocommerce-tabs[data-type] .tabs li.active:after,
.woocommerce-tabs[data-type] .tabs li.active a:after {
	background: var(--planu-noc);
}

.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
	display: block !important;
	height: auto !important;
	visibility: visible !important;
	opacity: 1 !important;
}

.single-product .woocommerce-tabs .woocommerce-Tabs-panel + .woocommerce-Tabs-panel {
	margin-top: calc(var(--planu-product-card-margin) * 2);
}

.single-product .woocommerce-Tabs-panel,
.single-product #reviews {
	scroll-margin-top: calc(var(--planu-header-height) + var(--admin-bar, 0px) + var(--planu-sticky-offset));
}

.single-product #reviews.woocommerce-Reviews {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--planu-hero-btn-gap);
}

.single-product #reviews .woocommerce-Reviews-title {
	margin: 0;
	font-size: var(--theme-font-size);
	line-height: var(--theme-line-height);
}

.single-product #reviews .woocommerce-review__dash,
.single-product #reviews .woocommerce-review__published-date {
	display: none;
}

.single-product #review_form #comment {
	height: calc(var(--theme-form-field-height) * 2);
	min-height: calc(var(--theme-form-field-height) * 2);
}

.single-product #reviews > #review_form_wrapper,
.single-product #reviews > #comments,
.single-product #reviews > .woocommerce-verification-required,
.single-product #reviews > .clear {
	flex-basis: 100%;
	width: 100%;
}

.single-product #review_form_wrapper[hidden] {
	display: none !important;
}

@media (max-width: 689.98px) {
	body .planu-collection-heading a.planu-btn {
		display: none;
	}

	.entry-content .planu-collection-heading,
	.entry-content .planu-tiles,
	.entry-content .planu-why,
	.entry-content .planu-faq,
	.home .entry-content > .woocommerce {
		padding-inline: var(--planu-space-inset);
		box-sizing: border-box;
	}

	.planu-quotes {
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
		padding-left: var(--planu-space-inset);
		padding-right: var(--planu-space-inset);
		box-sizing: border-box;
	}

	.planu-quotes__viewport::before,
	.planu-quotes__viewport::after {
		display: none;
	}

	.planu-quotes__card {
		flex: 0 0 100%;
		width: 100%;
		max-width: 100%;
	}

	/* Blocksy stacks type-1 tab labels in a column below 690px. Keep a real tab bar. */
	.woocommerce div.product div.woocommerce-tabs ul.tabs,
	.woocommerce-tabs[data-type] .tabs {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: var(--horizontal-alignment, center);
		--vertical-alignment: center;
		--theme-font-size: var(--planu-text);
		--theme-font-weight: var(--planu-fw-heading);
	}

	.woocommerce div.product div.woocommerce-tabs ul.tabs li {
		border-top: none;
		flex: 0 0 auto;
	}

	.woocommerce div.product div.woocommerce-tabs ul.tabs li a,
	.woocommerce-tabs .tabs a,
	.woocommerce-tabs[data-type] .tabs a {
		width: auto;
		font-size: var(--planu-text);
		font-weight: var(--planu-fw-heading);
		padding: var(--planu-space-8) var(--planu-space-16);
	}
}

@media (min-width: 690px) {
	.planu-collection-heading + .woocommerce + p {
		display: none;
	}

	.entry-content .wp-block-woocommerce-product-collection,
	.entry-content .planu-collection-heading,
	.entry-content .planu-tiles,
	.woocommerce ul.products,
	ul.products[data-products],
	.related.products ul.products,
	.upsells.products ul.products,
	.woocommerce .woocommerce-products-header,
	.woocommerce .woo-listing-top,
	.single-product .woocommerce-tabs.wc-tabs-wrapper {
		width: calc(var(--theme-container-width) * 0.8);
		max-width: calc(var(--theme-normal-container-max-width) * 0.8);
		margin-left: auto;
		margin-right: auto;
	}

	.entry-content .planu-faq,
	.entry-content.is-layout-constrained > .planu-faq {
		width: 100%;
		max-width: var(--planu-faq-width);
		margin-left: auto;
		margin-right: auto;
		--theme-block-width: var(--planu-faq-width);
		--theme-block-max-width: var(--planu-faq-width);
	}

	.single-product .woocommerce-tabs .tabs.is-width-constrained,
	.single-product .woocommerce-Tabs-panel.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
		width: 100%;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
	}

	.woocommerce .woocommerce-products-header {
		text-align: left;
	}

	.woocommerce .woo-listing-top {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 16px;
	}

	.woocommerce .woo-listing-top .woocommerce-result-count {
		margin: 0;
		text-align: left;
	}

	.woocommerce .woo-listing-top .woocommerce-ordering {
		margin: 0 0 0 auto;
	}

	.wp-block-woocommerce-product-collection .wc-block-product-template {
		width: 100%;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
	}

	.planu-faq .wp-block-woocommerce-product-collection,
	.planu-tiles .wp-block-woocommerce-product-collection {
		width: 100%;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
	}

	.planu-tiles .wc-block-product-template.columns-3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.woocommerce .woo-listing-top .woocommerce-ordering select.orderby.planu-input {
	height: var(--theme-form-field-height);
	width: auto;
	max-width: 100%;
	font-size: inherit;
	color: inherit;
	padding: var(--theme-form-field-padding, 0 15px);
	padding-inline-end: 25px;
	-webkit-user-select: auto;
	user-select: auto;
	background-image: url("data:image/svg+xml,%3Csvg width='21' height='13' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.5.379L20.621 2.5 10.5 12.621.379 2.5 2.5.379l8 8z' fill='%234F5D6D' fill-rule='nonzero'/%3E%3C/svg%3E");
}

.woocommerce .woo-listing-top .woocommerce-ordering:has(select.planu-input) .ct-sort-icon {
	display: none;
}

@media (max-width: 689.98px) {
	body.woocommerce-archive .woo-listing-top:not(:empty) {
		margin-block: var(--planu-space-24);
	}
}

.wc-block-product-template,
.wp-block-woocommerce-product-collection,
.woocommerce ul.products[data-products],
[data-products] {
	overflow: visible;
}

ul.products > li.product {
	padding-bottom: var(--planu-product-card-padding-bottom);
}

.wc-block-product,
[data-products] .product {
	background: var(--planu-bialy);
	border-radius: 22px;
	padding: var(--planu-space-16) var(--planu-space-16) var(--planu-space-12);
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	text-align: left;
	height: 100%;
	position: relative;
	overflow: visible;
	box-shadow: var(--planu-elevation-0);
}

@media (hover: hover) {
	.wc-block-product,
	[data-products] .product {
		transition: box-shadow var(--planu-motion-hover), transform var(--planu-motion-hover);
	}

	.wc-block-product:hover,
	[data-products] .product:hover {
		box-shadow: var(--planu-shadow-raised);
		transform: translateY(-4px);
	}
}

[data-products] .product {
	display: grid;
	grid-template-columns: 1fr auto;
}

[data-products] .product > figure,
[data-products] .product > .woocommerce-loop-product__title,
[data-products] .product > .ct-woo-card-actions {
	grid-column: 1 / -1;
}

[data-products] .product > .planu-product-card__meta {
	grid-column: 1 / -1;
}

[data-products] .product > .ct-woo-card-rating,
.wc-block-product .wc-block-components-product-rating,
.wc-block-product .star-rating {
	display: none;
}

[data-products] .product > .entry-meta,
.wc-block-product .wp-block-post-terms,
.wc-block-product .taxonomy-product_cat {
	display: none;
}

.wc-block-product .wc-block-components-product-image,
[data-products] .product figure {
	margin: 0;
	width: 100%;
	overflow: visible;
}

.wc-block-product :is(.onsale, .out-of-stock-badge, [class*="ct-woo-badge-"], .wc-block-components-product-sale-badge),
[data-products] .product :is(.onsale, .out-of-stock-badge, [class*="ct-woo-badge-"]) {
	--theme-font-family: var(--planu-font-body);
	--theme-font-size: var(--planu-text-small);
	--theme-font-weight: var(--planu-fw-bold);
	--theme-text-transform: uppercase;
	--badge-top: -8px;
	--badge-left: -28px;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text-small);
	font-weight: var(--planu-fw-bold);
	line-height: 1.1;
	text-transform: uppercase;
	height: auto;
	position: absolute;
	top: -8px;
	inset-inline-start: -28px;
	z-index: 2;
	transform: rotate(-15deg);
}

.onsale,
.wc-block-components-product-sale-badge,
.wc-block-components-product-sale-badge span,
.wc-block-components-sale-badge,
.wc-block-grid__product-onsale {
	--badge-background-color: var(--planu-czerwony);
	--badge-text-color: var(--planu-bialy);
	background: var(--planu-czerwony) !important;
	background-color: var(--planu-czerwony) !important;
	border-color: var(--planu-czerwony) !important;
	color: var(--planu-bialy) !important;
}

.wc-block-product .wc-block-components-product-image img,
[data-products] .product figure img {
	width: 100%;
	height: auto;
	border-radius: 8px;
}

.wc-block-product .wp-block-post-title,
[data-products] .product .woocommerce-loop-product__title {
	--theme-font-family: var(--planu-font-body);
	--theme-font-weight: var(--planu-fw-body);
	margin: 0 0 var(--planu-space-16);
	text-align: left !important;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	line-height: 1.5;
	color: var(--planu-wieczor);
}

.wc-block-product .wp-block-post-title a,
[data-products] .product .woocommerce-loop-product__title a {
	text-decoration: none;
	color: inherit;
}

.planu-product-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: 100%;
	margin-top: auto;
}

.planu-product-card__rating {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	gap: 8px;
	color: var(--planu-noc);
}

.planu-product-card__rating-text {
	white-space: nowrap;
}

.planu-product-card__star {
	display: inline-flex;
	flex-shrink: 0;
	width: var(--planu-star-size);
	height: var(--planu-star-size);
	color: var(--planu-zolty);
}

.planu-product-card__star svg {
	display: block;
	width: 100%;
	height: 100%;
	fill: currentColor;
}

.wc-block-product .wp-block-woocommerce-product-price,
.wc-block-product .wc-block-components-product-price,
[data-products] .product .price {
	margin: 0;
	text-align: right !important;
}

.wc-block-product > .wp-block-woocommerce-product-price {
	margin-top: auto;
}

.planu-product-card__meta .price,
.planu-product-card__meta .sale-price {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: baseline;
	justify-content: flex-end;
	gap: 0.3em;
	white-space: nowrap;
}

.planu-product-card__meta .price:has(del),
.planu-product-card__meta .sale-price:has(del) {
	flex-direction: column;
	align-items: flex-end;
	white-space: normal;
	row-gap: 2px;
	column-gap: 0;
}

.planu-product-card__meta .sale-price del,
.planu-product-card__meta .price del,
.wc-block-product del,
[data-products] .product .price del {
	position: relative;
	display: inline-block;
	order: 0;
	opacity: 1;
	color: var(--planu-poranek);
	text-decoration: none;
}

.planu-product-card__meta .sale-price del::before,
.planu-product-card__meta .price del::before,
.wc-block-product del::before,
[data-products] .product .price del::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	height: 1.5px;
	background: var(--planu-wieczor);
	transform: translateY(-50%) rotate(-8deg);
	pointer-events: none;
}

.planu-product-card__meta .sale-price del .woocommerce-Price-amount,
.planu-product-card__meta .price del .woocommerce-Price-amount,
.wc-block-product del .woocommerce-Price-amount,
[data-products] .product .price del .woocommerce-Price-amount {
	text-decoration: none;
}

.planu-product-card__meta .sale-price ins,
.planu-product-card__meta .price ins {
	display: flex;
	align-items: baseline;
	justify-content: flex-end;
	gap: 0.3em;
	order: 1;
	text-decoration: none;
	white-space: nowrap;
}

.wc-block-product .woocommerce-Price-amount,
[data-products] .product .price .woocommerce-Price-amount {
	font-family: var(--planu-font-body);
	font-size: var(--planu-text-large);
	font-weight: var(--planu-fw-emphasis);
	line-height: 1.1;
	color: var(--planu-noc);
}

.planu-product-card__meta del .woocommerce-Price-amount,
.wc-block-product del,
.wc-block-product del .woocommerce-Price-amount,
[data-products] .product .price del,
[data-products] .product .price del .woocommerce-Price-amount {
	color: var(--planu-poranek);
}

.wc-block-product .wp-block-woocommerce-product-button,
[data-products] .product .ct-woo-card-actions {
	display: flex;
	justify-content: center;
	width: 100%;
	margin: 8px 0 0;
	text-align: center;
}

.wc-block-product .wc-block-components-product-button__button,
[data-products] .product .ct-woo-card-actions .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	overflow: visible;
	width: auto;
	min-height: 0;
	margin-left: auto;
	margin-right: auto;
	padding: 0;
	background: transparent !important;
	border: 2px solid transparent !important;
	border-radius: 0;
	box-shadow: none !important;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text) !important;
	font-weight: var(--planu-fw-emphasis);
	line-height: 1.2;
	letter-spacing: normal;
	text-transform: none;
	text-decoration: none;
	color: var(--planu-czerwony) !important;
	cursor: pointer;
	position: relative;
	isolation: isolate;
	transform: translateX(0);
	transition: transform var(--planu-motion-expressive);
}

.wc-block-product .wc-block-components-product-button__button::before,
.wc-block-product .wc-block-components-product-button__button::after,
[data-products] .product .ct-woo-card-actions .button::before,
[data-products] .product .ct-woo-card-actions .button::after {
	content: none !important;
	display: none !important;
}

.wc-block-product .wc-block-components-product-button__button .planu-cart-icon,
[data-products] .product .ct-woo-card-actions .button .planu-cart-icon {
	position: absolute;
	top: 50%;
	right: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 25px;
	height: 25px;
	margin: 0;
	overflow: hidden;
	border-radius: 0;
	background: none;
	color: var(--planu-czerwony);
	pointer-events: none;
	opacity: 1;
	visibility: visible;
	transform: translateY(-50%);
	transition: opacity var(--planu-motion-feedback), visibility var(--planu-motion-feedback);
}

.wc-block-product .wc-block-components-product-button__button .planu-cart-icon svg,
[data-products] .product .ct-woo-card-actions .button .planu-cart-icon svg {
	display: block;
	width: 25px;
	height: 25px;
	flex-shrink: 0;
	transform: translateX(var(--planu-atc-icon-x, -100%));
	transition: transform var(--planu-duration-slow) var(--planu-ease-standard);
}

.wc-block-product .wc-block-components-product-button__button .planu-cart-icon:empty::before,
[data-products] .product .ct-woo-card-actions .button .planu-cart-icon:empty::before {
	content: "";
	display: block;
	width: 25px;
	height: 25px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cg stroke='%23D73E5A' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M4 19a2 2 0 1 0 4 0a2 2 0 1 0-4 0m11 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0'/%3E%3Cpath d='M17 17H6V3H4'/%3E%3Cpath d='m6 5l14 1l-1 7H6'/%3E%3C/g%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 25px 25px;
	transform: translateX(var(--planu-atc-icon-x, -100%));
	transition: transform var(--planu-duration-slow) var(--planu-ease-standard);
}

.wc-block-product .wc-block-components-product-button__button .planu-cart-icon.planu-options-icon:empty::before,
[data-products] .product .ct-woo-card-actions .button .planu-cart-icon.planu-options-icon:empty::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath stroke='%23D73E5A' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 5a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1zm10 0a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1zM4 15a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1zm10 0a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1z'/%3E%3C/svg%3E");
}

.wc-block-product .wc-block-components-product-button__button .planu-atc-label,
[data-products] .product .ct-woo-card-actions .button .planu-atc-label {
	position: relative;
	display: inline-block;
	opacity: 1;
	transform: none;
	text-align: left;
	transition: opacity var(--planu-motion-feedback);
}

.wc-block-product .wc-block-components-product-button__button:hover,
.wc-block-product .wc-block-components-product-button__button:focus-visible,
[data-products] .product .ct-woo-card-actions .button:hover,
[data-products] .product .ct-woo-card-actions .button:focus-visible {
	color: var(--planu-czerwony) !important;
	text-decoration: none;
}

.wc-block-product .wc-block-components-product-button__button.planu-atc-hover,
[data-products] .product .ct-woo-card-actions .button.planu-atc-hover {
	--planu-atc-icon-x: 0%;
	transform: translateX(12.5px);
	transition-delay: var(--planu-duration-slow);
}

.wc-block-product .wc-block-components-product-button__button.planu-atc-hover .planu-cart-icon svg,
[data-products] .product .ct-woo-card-actions .button.planu-atc-hover .planu-cart-icon svg,
.wc-block-product .wc-block-components-product-button__button.planu-atc-hover .planu-cart-icon:empty::before,
[data-products] .product .ct-woo-card-actions .button.planu-atc-hover .planu-cart-icon:empty::before {
	transition-delay: 0s;
}

.wc-block-product .wc-block-components-product-button__button.planu-atc-leave,
[data-products] .product .ct-woo-card-actions .button.planu-atc-leave {
	transform: translateX(0);
	transition-delay: var(--planu-duration-base);
}

.wc-block-product .wc-block-components-product-button__button.planu-atc-leave .planu-cart-icon,
[data-products] .product .ct-woo-card-actions .button.planu-atc-leave .planu-cart-icon {
	opacity: 0;
	visibility: hidden;
	transition: opacity var(--planu-motion-feedback), visibility 0s linear var(--planu-duration-base);
}

.wc-block-product .wc-block-components-product-button__button.planu-atc-leave .planu-cart-icon svg,
[data-products] .product .ct-woo-card-actions .button.planu-atc-leave .planu-cart-icon svg,
.wc-block-product .wc-block-components-product-button__button.planu-atc-leave .planu-cart-icon:empty::before,
[data-products] .product .ct-woo-card-actions .button.planu-atc-leave .planu-cart-icon:empty::before {
	transition: none;
}

.wc-block-product .wc-block-components-product-button__button.planu-atc-success,
.wc-block-product .wc-block-components-product-button__button.planu-atc-success:hover,
.wc-block-product .wc-block-components-product-button__button.planu-atc-success:focus-visible,
[data-products] .product .ct-woo-card-actions .button.planu-atc-success,
[data-products] .product .ct-woo-card-actions .button.planu-atc-success:hover,
[data-products] .product .ct-woo-card-actions .button.planu-atc-success:focus-visible {
	transform: translateX(0);
	transition-delay: 0s;
}

.wc-block-product .wc-block-components-product-button__button.planu-atc-icon-hide .planu-cart-icon,
.wc-block-product .wc-block-components-product-button__button.planu-atc-success .planu-cart-icon,
[data-products] .product .ct-woo-card-actions .button.planu-atc-icon-hide .planu-cart-icon,
[data-products] .product .ct-woo-card-actions .button.planu-atc-success .planu-cart-icon {
	visibility: hidden;
	opacity: 0;
}

.wc-block-product .wc-block-components-product-button__button.planu-atc-icon-hide .planu-cart-icon svg,
.wc-block-product .wc-block-components-product-button__button.planu-atc-icon-hide .planu-cart-icon:empty::before,
.wc-block-product .wc-block-components-product-button__button.planu-atc-success .planu-cart-icon svg,
.wc-block-product .wc-block-components-product-button__button.planu-atc-success .planu-cart-icon:empty::before,
[data-products] .product .ct-woo-card-actions .button.planu-atc-icon-hide .planu-cart-icon svg,
[data-products] .product .ct-woo-card-actions .button.planu-atc-icon-hide .planu-cart-icon:empty::before,
[data-products] .product .ct-woo-card-actions .button.planu-atc-success .planu-cart-icon svg,
[data-products] .product .ct-woo-card-actions .button.planu-atc-success .planu-cart-icon:empty::before {
	transition: none;
}

.wc-block-product .wc-block-components-product-button__button.planu-atc-no-motion,
.wc-block-product .wc-block-components-product-button__button.planu-atc-no-motion:hover,
.wc-block-product .wc-block-components-product-button__button.planu-atc-no-motion:focus-visible,
[data-products] .product .ct-woo-card-actions .button.planu-atc-no-motion,
[data-products] .product .ct-woo-card-actions .button.planu-atc-no-motion:hover,
[data-products] .product .ct-woo-card-actions .button.planu-atc-no-motion:focus-visible {
	transition: none;
}

.wc-block-product .wc-block-components-product-button__button.planu-atc-no-motion .planu-cart-icon,
.wc-block-product .wc-block-components-product-button__button.planu-atc-no-motion .planu-cart-icon svg,
.wc-block-product .wc-block-components-product-button__button.planu-atc-no-motion .planu-cart-icon:empty::before,
[data-products] .product .ct-woo-card-actions .button.planu-atc-no-motion .planu-cart-icon,
[data-products] .product .ct-woo-card-actions .button.planu-atc-no-motion .planu-cart-icon svg,
[data-products] .product .ct-woo-card-actions .button.planu-atc-no-motion .planu-cart-icon:empty::before {
	transition: none;
}

.wc-block-product .wc-block-components-product-button__button.planu-atc-success .planu-atc-label,
[data-products] .product .ct-woo-card-actions .button.planu-atc-success .planu-atc-label {
	text-align: center;
	width: 100%;
}

.wc-block-product .added_to_cart,
[data-products] .product .added_to_cart,
.single-product a.added_to_cart {
	display: none !important;
}

.wp-block-woocommerce-product-collection .wc-block-components-notices,
.wc-block-components-notice-snackbar-list {
	display: none !important;
}

[data-products] [data-add-to-cart="auto-hide"] .ct-woo-card-actions .button.added,
.wc-block-product .wc-block-components-product-button__button.loading,
.wc-block-product .wc-block-components-product-button__button.added,
[data-products] .product .ct-woo-card-actions .button.loading,
[data-products] .product .ct-woo-card-actions .button.added {
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	gap: 0;
	padding: 0;
	color: var(--planu-czerwony) !important;
	font-size: var(--planu-text) !important;
}

@media (prefers-reduced-motion: reduce) {
	.wc-block-product .wc-block-components-product-button__button,
	[data-products] .product .ct-woo-card-actions .button,
	.wc-block-product .wc-block-components-product-button__button .planu-cart-icon,
	[data-products] .product .ct-woo-card-actions .button .planu-cart-icon,
	.wc-block-product .wc-block-components-product-button__button .planu-cart-icon svg,
	[data-products] .product .ct-woo-card-actions .button .planu-cart-icon svg,
	.wc-block-product .wc-block-components-product-button__button .planu-atc-label,
	[data-products] .product .ct-woo-card-actions .button .planu-atc-label {
		transition: none;
	}
}

#search-modal.ct-panel {
	--vertical-alignment: flex-start;
	background: var(--planu-dzien) !important;
}

#search-modal.ct-panel .ct-search-form {
	--theme-form-field-height: 52px;
	--theme-form-field-border-width: 2px;
	--theme-form-field-border-initial-color: var(--planu-poranek);
	--theme-form-field-border-focus-color: var(--planu-wieczor);
	--theme-form-text-initial-color: var(--planu-noc);
	--theme-form-text-focus-color: var(--planu-noc);
	--theme-button-background-initial-color: var(--planu-noc);
	--theme-button-background-hover-color: var(--planu-noc);
	--theme-button-text-initial-color: var(--planu-bialy);
	--theme-button-text-hover-color: var(--planu-bialy);
	--theme-link-initial-color: var(--planu-wieczor);
	--theme-link-hover-color: var(--planu-noc);
	--search-button-size: var(--theme-form-field-height);
}

#search-modal.ct-panel .ct-search-form-inner {
	align-items: stretch;
	gap: var(--planu-space-8);
	height: auto;
	min-height: var(--theme-form-field-height);
	padding: 0;
	border: none;
	outline: none;
	box-shadow: none;
	background-color: transparent;
}

#search-modal.ct-panel .ct-search-form-inner:is(:focus, :focus-within),
#search-modal.ct-panel .ct-search-form-inner:has(:is(input, select):focus) {
	border: none;
	outline: none;
	box-shadow: none;
	background-color: transparent;
}

#search-modal.ct-panel .ct-search-form input {
	flex: 1 1 auto;
	width: auto;
	min-width: 0;
	color: var(--planu-noc);
	height: var(--theme-form-field-height);
	min-height: var(--theme-form-field-height);
	border-width: 2px;
	border-style: solid;
	border-color: var(--planu-poranek);
	box-shadow: none;
	outline: none;
	outline-offset: 0;
}

#search-modal.ct-panel .ct-search-form input:is(:focus, :focus-visible, :active, :-moz-focusring) {
	border-width: 2px;
	border-color: var(--theme-form-field-border-focus-color);
	box-shadow: none;
	outline: none;
	outline-offset: 0;
}

#search-modal.ct-panel .ct-search-form input::placeholder {
	color: var(--planu-poranek);
	opacity: 1;
}

#search-modal.ct-panel .ct-search-form .wp-element-button {
	box-sizing: border-box;
	flex: 0 0 var(--theme-form-field-height);
	width: var(--theme-form-field-height);
	height: var(--theme-form-field-height);
	min-height: var(--theme-form-field-height);
	aspect-ratio: 1 / 1;
	padding: 0;
	background-color: var(--planu-noc);
	color: var(--planu-bialy);
}

#search-modal.ct-panel .ct-search-results {
	--theme-font-family: var(--planu-font-body);
	--theme-font-size: var(--planu-text);
	--theme-font-weight: var(--planu-fw-body);
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
}

#search-modal.ct-panel .ct-search-results a.ct-search-item,
#search-modal.ct-panel .ct-search-results a.ct-search-item span {
	text-decoration: none;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	color: var(--planu-wieczor);
}

#search-modal.ct-panel .ct-search-results a.ct-search-item:hover,
#search-modal.ct-panel .ct-search-results a.ct-search-item:hover span {
	text-decoration: none;
	color: var(--planu-noc);
}

#search-modal.ct-panel .ct-search-results .ct-media-container {
	--search-image-size: 26%;
}

@media (max-width: 689.98px) {
	#search-modal.ct-panel .ct-search-results .ct-media-container {
		--search-image-size: 19.5%;
	}
}

#search-modal.ct-panel .ct-search-more {
	justify-self: center;
	width: auto;
	margin-top: 8px;
}

#search-modal.ct-panel a.ct-search-more.planu-btn {
	font-weight: var(--planu-fw-button);
}

#search-modal.ct-panel .ct-panel-actions {
	padding-top: 68px;
	padding-inline-end: 64px;
}

#search-modal.ct-panel .ct-toggle-close {
	--theme-icon-size: 24px;
	--theme-icon-color: var(--planu-noc);
	--toggle-button-margin-end: 0;
	--toggle-button-margin-block: 0;
}

@media (max-width: 999.98px) {
	#search-modal.ct-panel .ct-panel-actions {
		padding-top: calc(var(--planu-space-8) + env(safe-area-inset-top, 0px));
		padding-inline-end: var(--planu-space-8);
		padding-inline-start: var(--planu-space-8);
	}
}

@media (max-width: 689.98px) {
	#search-modal.ct-panel .ct-panel-actions {
		padding-top: calc(var(--planu-space-24) + env(safe-area-inset-top, 0px));
		padding-inline-end: calc(var(--planu-space-24) + env(safe-area-inset-right, 0px));
		padding-inline-start: var(--planu-space-24);
	}

	#search-modal.ct-panel .ct-search-form {
		margin-top: var(--planu-space-32);
	}
}

#search-modal.ct-panel .ct-toggle-close:hover {
	--theme-icon-color: var(--planu-noc);
}

[data-prefix="woo_categories"] .hero-section[data-type="type-2"] {
	--container-padding: 25px 0;
	--min-height: 125px;
	background-color: var(--planu-dzien);
}

.planu-icon {
	display: inline-block;
	flex-shrink: 0;
	vertical-align: -0.125em;
	color: currentColor;
}

.planu-icon *,
.ct-icon * {
	stroke-width: 2;
}

:is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-thankyou-order-received) {
	--background-color: var(--planu-bialy);
	background: var(--planu-bialy);
	align-items: center;
	gap: 12px;
	padding-inline-start: 10px;
}

.woocommerce-error,
.wc-block-components-notice-banner.is-error {
	--theme-text-color: var(--planu-czerwony);
	--theme-link-initial-color: var(--planu-czerwony);
	color: var(--planu-czerwony);
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
}

.woocommerce-error {
	border: 2px solid var(--planu-czerwony);
}

:is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-thankyou-order-received)::before {
	content: none !important;
	display: none !important;
}

:is(.woocommerce-message, .woocommerce-info, .woocommerce-error) > svg,
.woocommerce-error li > svg {
	width: 25px;
	height: 25px;
	flex-shrink: 0;
	vertical-align: middle;
	fill: none !important;
	stroke: currentColor;
	color: var(--planu-noc);
}

.woocommerce-error > svg,
.woocommerce-error li > svg {
	color: var(--planu-czerwony);
}

:is(.woocommerce-message, .woocommerce-info, .woocommerce-error) > svg *,
.woocommerce-error li > svg * {
	fill: none !important;
	stroke: currentColor;
}

ul.woocommerce-error {
	list-style: none !important;
	flex-direction: column;
	align-items: stretch;
}

.woocommerce-error li {
	display: flex;
	align-items: center;
	gap: 12px;
	list-style: none !important;
}

.woocommerce-error li::marker,
.woocommerce-error li::before {
	content: none !important;
	display: none !important;
}

@media (max-width: 689.98px) {
	:is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		padding: var(--planu-space-16);
	}

	ul.woocommerce-error {
		flex-direction: column;
		align-items: stretch;
	}
}

body.woocommerce-cart .woocommerce-message:has(.restore-item),
body.woocommerce-cart .woocommerce-message[data-id="cart-removed"] {
	position: fixed;
	left: var(--planu-toast-inset);
	bottom: var(--planu-toast-inset);
	right: auto;
	top: auto;
	z-index: 1000;
	margin: 0;
	width: max-content;
	max-width: calc(100vw - (var(--planu-toast-inset) * 2));
	box-shadow: var(--planu-shadow-overlay);
}

.planu-footer {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background: var(--planu-gradient-sheen), var(--planu-gradient-doba);
	color: var(--planu-poranek);
	padding: var(--planu-space-64) 0 var(--planu-space-24);
}

.planu-footer::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: var(--planu-grain);
	background-size: 128px 128px;
	opacity: var(--planu-grain-opacity);
	mix-blend-mode: overlay;
	pointer-events: none;
	z-index: 0;
}

.planu-footer__inner {
	position: relative;
	z-index: 1;
}

.planu-footer a,
.planu-footer a:not(.planu-btn) {
	color: inherit;
	text-decoration: none;
}

.planu-footer a:hover,
.planu-footer a:focus-visible,
.planu-footer a:not(.planu-btn):hover,
.planu-footer a:not(.planu-btn):focus-visible {
	color: var(--planu-dzien);
	text-decoration: none;
}

.planu-footer__main {
	display: grid;
	grid-template-columns: minmax(220px, 1.35fr) repeat(var(--planu-footer-cols, 3), minmax(0, 1fr));
	gap: 48px 40px;
	padding-bottom: 48px;
}

.planu-footer__name {
	display: inline-block;
	margin: 0 0 20px;
	font-family: var(--planu-font-body);
	font-weight: var(--planu-fw-emphasis);
	font-size: var(--planu-text-brand);
	line-height: 1;
	letter-spacing: var(--planu-tracking-display);
	color: var(--planu-dzien);
	text-transform: none;
}

.planu-footer a.planu-footer__name,
.planu-footer a.planu-footer__name:not(.planu-btn),
.planu-footer a.planu-footer__name:hover,
.planu-footer a.planu-footer__name:focus-visible,
.planu-footer a.planu-footer__name:not(.planu-btn):hover,
.planu-footer a.planu-footer__name:not(.planu-btn):focus-visible {
	color: var(--planu-dzien);
}

.planu-footer__logo {
	margin: 0 0 20px;
}

.planu-footer__logo .custom-logo-link {
	display: inline-block;
}

.planu-footer__logo img {
	height: var(--planu-logo-height);
	width: auto;
}

.planu-footer__address {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0 0 20px;
	font-style: normal;
	font-size: var(--planu-text-small);
	line-height: 1.5;
	color: var(--planu-poranek);
}

.planu-footer__contacts {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.planu-footer__contacts a {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: var(--planu-text);
	color: var(--planu-poranek);
}

.planu-footer__heading {
	margin: 0 0 16px;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text-large);
	font-weight: var(--planu-fw-heading);
	line-height: 1.3;
	color: var(--planu-dzien);
}

.planu-footer a.planu-footer__heading,
.planu-footer a.planu-footer__heading:not(.planu-btn),
.planu-footer a.planu-footer__heading:hover,
.planu-footer a.planu-footer__heading:focus-visible,
.planu-footer a.planu-footer__heading:not(.planu-btn):hover,
.planu-footer a.planu-footer__heading:not(.planu-btn):focus-visible {
	color: var(--planu-dzien);
}

.planu-footer__links {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.planu-footer__links a,
.planu-footer__links span {
	font-size: var(--planu-text);
	color: var(--planu-poranek);
}

.planu-footer__bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding-top: 24px;
	border-top: 1px solid var(--planu-wieczor);
}

.planu-footer--minimal {
	padding-top: 24px;
	padding-bottom: 24px;
}

.planu-footer--minimal .planu-footer__bar {
	padding-top: 0;
	border-top: 0;
}

.planu-footer__copy {
	margin: 0;
	font-size: var(--planu-text-small);
	color: var(--planu-poranek);
}

.planu-footer__social {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	gap: 12px;
}

.planu-footer__social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--planu-poranek);
}

@media (max-width: 999px) {
	.planu-footer__main {
		grid-template-columns: 1fr 1fr;
	}

	.planu-footer__brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 639px) {
	.planu-footer {
		padding: 48px 0 24px;
	}

	.planu-footer__main {
		grid-template-columns: 1fr;
		gap: 32px;
		padding-bottom: 32px;
	}

	.planu-footer__bar {
		flex-direction: column;
		align-items: flex-start;
	}
}

.quantity[data-type] {
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	width: auto;
	height: var(--theme-form-field-height, 52px);
	--quantity-width: auto;
	--quantity-height: var(--theme-form-field-height, 52px);
	--quantity-initial-color: transparent;
	--quantity-hover-color: transparent;
	--quantity-arrows-initial-color: var(--planu-noc);
	--quantity-arrows-hover-color: var(--planu-noc);
}

.quantity[data-type] .ct-decrease {
	order: 1;
}

.quantity[data-type] input[type="number"] {
	order: 2;
	width: 52px;
	min-width: 52px;
	height: var(--theme-form-field-height, 52px);
	padding-block: 0;
	padding-inline: 4px;
	font-weight: var(--planu-fw-body);
	--theme-form-field-height: 52px;
}

.quantity[data-type] .ct-increase {
	order: 3;
}

.quantity[data-type] .ct-increase,
.quantity[data-type] .ct-decrease {
	display: flex;
	align-items: center;
	justify-content: center;
	position: static;
	inset: auto;
	top: auto;
	bottom: auto;
	width: calc(var(--theme-form-field-height, 52px) * 0.8);
	height: calc(var(--theme-form-field-height, 52px) * 0.8);
	max-width: none;
	border-radius: 0;
	color: var(--planu-noc);
	background: transparent;
	transition: none;
}

.quantity[data-type] .ct-increase:hover,
.quantity[data-type] .ct-decrease:hover,
.quantity[data-type] .ct-increase:focus,
.quantity[data-type] .ct-decrease:focus {
	color: var(--planu-noc);
	background: transparent;
	outline: none;
	box-shadow: none;
}

.quantity[data-type] .ct-increase:focus-visible,
.quantity[data-type] .ct-decrease:focus-visible {
	color: var(--planu-noc);
	background: transparent;
	outline: var(--planu-focus-width) solid var(--planu-noc);
	outline-offset: var(--planu-focus-offset);
	box-shadow: none;
}

.quantity[data-type] .ct-increase:before,
.quantity[data-type] .ct-decrease:before {
	content: none;
	display: none;
	margin: 0;
}

.quantity[data-type] .ct-increase .planu-icon,
.quantity[data-type] .ct-decrease .planu-icon {
	display: block;
	width: var(--planu-qty-icon-size);
	height: var(--planu-qty-icon-size);
	vertical-align: middle;
}

.cart_item .product-mobile-actions .quantity[data-type="type-2"],
.mini_cart_item .ct-product-actions .quantity[data-type="type-2"],
table.shop_table .ct-checkout-cart-item .quantity[data-type="type-2"] {
	--quantity-width: auto;
	--quantity-height: var(--theme-form-field-height, 52px);
}

body.woocommerce-cart {
	--theme-border-color: var(--planu-poranek);
	--theme-table-font-size: var(--planu-text);
}

body:not(.wp-admin).woocommerce-cart :is(button, input)[name="update_cart"],
body:not(.wp-admin).woocommerce-cart :is(button, input).button[name="update_cart"] {
	display: none;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table,
body.woocommerce-cart .woocommerce-cart-form table.shop_table :is(tr, th, td) {
	--theme-table-border-width: 0;
	border: 0;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table thead th {
	border-bottom: 2px solid var(--planu-poranek);
	color: var(--planu-noc);
}

body.woocommerce-cart .shop_table .product-thumbnail .ct-media-container,
body.woocommerce-cart .shop_table .product-thumbnail img {
	border-radius: var(--planu-radius-image);
	overflow: hidden;
}

body.woocommerce-cart .ct-woocommerce-cart-form,
body.woocommerce-cart .shop_table,
body.woocommerce-cart .cart_totals,
body.woocommerce-checkout .ct-order-review .shop_table {
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	color: var(--planu-wieczor);
	--theme-font-family: var(--planu-font-body);
	--theme-font-size: var(--planu-text);
	--theme-font-weight: var(--planu-fw-body);
}

body.woocommerce-cart .shop_table .product-name a,
body.woocommerce-cart .shop_table .product-name a:hover,
body.woocommerce-cart .shop_table .price,
body.woocommerce-cart .shop_table td.product-subtotal,
body.woocommerce-cart .shop_table .quantity[data-type] input[type="number"],
body.woocommerce-checkout .ct-order-review .shop_table .product-name,
body.woocommerce-checkout .ct-order-review .shop_table .product-name a,
body.woocommerce-checkout .ct-order-review .shop_table .product-name a:hover,
body.woocommerce-checkout .ct-order-review .shop_table .product-total {
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	color: var(--planu-wieczor);
	--theme-font-size: var(--planu-text);
	--theme-font-weight: var(--planu-fw-body);
}

body.woocommerce-cart .woocommerce-Price-amount,
body.woocommerce-cart .amount,
body.woocommerce-checkout .ct-order-review .woocommerce-Price-amount,
body.woocommerce-checkout .ct-order-review .amount {
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-bold);
	color: var(--planu-wieczor);
	--theme-font-weight: var(--planu-fw-bold);
}

body.woocommerce-cart .cart_totals .cart-subtotal .woocommerce-Price-amount,
body.woocommerce-cart .cart_totals .cart-subtotal .amount,
body.woocommerce-checkout .ct-order-review .order-total .woocommerce-Price-amount,
body.woocommerce-checkout .ct-order-review .order-total .amount {
	font-size: var(--planu-text-large);
	font-weight: var(--planu-fw-bold);
	color: var(--planu-wieczor);
	--theme-font-size: var(--planu-text-large);
	--theme-font-weight: var(--planu-fw-bold);
}

body.woocommerce-cart .shop_table .product-name a,
body.woocommerce-cart .shop_table .product-name a:hover,
body.woocommerce-checkout .ct-order-review .shop_table .product-name a,
body.woocommerce-checkout .ct-order-review .shop_table .product-name a:hover {
	text-decoration: none;
}

body.woocommerce-cart .shop_table .remove:hover svg {
	fill: none;
	color: var(--planu-noc);
}

body.woocommerce-cart .ct-woocommerce-cart-form > [data-planu-cart-pin] {
	align-self: start;
	min-width: 0;
}

body.woocommerce-cart .ct-woocommerce-cart-form .cart_totals {
	--cart-totals-border-radius: var(--planu-radius);
	--cart-totals-padding: var(--planu-space-24) var(--planu-space-16);
	--theme-table-padding: var(--planu-space-12) 0;
	border: 2px solid var(--planu-poranek);
	border-radius: var(--planu-radius);
	box-sizing: border-box;
	align-self: start;
	position: relative;
	top: auto;
	bottom: auto;
}

body.woocommerce-checkout .ct-order-review {
	--theme-border-color: var(--planu-poranek);
	--theme-table-font-size: var(--planu-text);
	--theme-table-padding: var(--planu-space-12) 0;
	--order-review-border-radius: var(--planu-radius);
	--order-review-padding: var(--planu-space-24) var(--planu-space-16);
	background: transparent;
	border: 2px solid var(--planu-poranek);
	border-radius: var(--planu-radius);
	box-sizing: border-box;
	top: calc(var(--planu-header-height) + var(--admin-bar, 0px) + var(--planu-sticky-offset));
}

body.woocommerce-account .woocommerce-MyAccount-content h3,
body.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3 {
	font-size: var(--theme-font-size);
}

body.woocommerce-checkout form.checkout #payment {
	margin-inline: 0;
}

@media (min-width: 1000px) {
	body.woocommerce-cart .ct-woocommerce-cart-form .cart_totals.is-stuck {
		position: fixed;
		top: auto;
		bottom: var(--planu-cart-pin-bottom, var(--planu-sticky-offset));
		left: var(--planu-cart-pin-left);
		width: var(--planu-cart-pin-width);
	}
}

body.woocommerce-cart .cart_totals :is(h2, th, td, .ct-shipping-heading),
body.woocommerce-cart .cart_totals a:not(.button):not(.planu-btn),
body.woocommerce-checkout .ct-order-review :is(th, td, .ct-shipping-heading),
body.woocommerce-checkout .ct-order-review a:not(.button):not(.planu-btn) {
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	color: var(--planu-wieczor);
	--theme-font-family: var(--planu-font-body);
	--theme-font-weight: var(--planu-fw-body);
	text-transform: none;
}

body.woocommerce-cart .cart_totals .ct-shipping-heading,
body.woocommerce-checkout .ct-order-review .ct-shipping-heading {
	font-weight: var(--planu-fw-bold);
	--theme-font-weight: var(--planu-fw-bold);
}

body.woocommerce-cart .cart_totals .order-total th,
body.woocommerce-checkout .ct-order-review .order-total th {
	font-weight: var(--planu-fw-bold);
	--theme-font-weight: var(--planu-fw-bold);
}

body.woocommerce-cart .cart_totals table.shop_table th small,
body.woocommerce-checkout .ct-order-review table.shop_table th small {
	display: block;
	font-size: var(--planu-text-small);
	font-weight: var(--planu-fw-body);
	color: var(--planu-wieczor);
	text-align: start;
	--theme-font-size: var(--planu-text-small);
	--theme-font-weight: var(--planu-fw-body);
}

@media (max-width: 689.98px) {
	body.woocommerce-cart .cart_totals table.shop_table tr.woocommerce-shipping-totals .ct-shipping-heading {
		display: block;
		text-align: start;
		font-size: var(--planu-text);
		font-weight: var(--planu-fw-bold);
		--theme-font-size: var(--planu-text);
		--theme-font-weight: var(--planu-fw-bold);
	}

	body.woocommerce-cart .cart_totals table.shop_table tr.woocommerce-shipping-totals:not(:has(.ct-shipping-heading)) th {
		display: block;
		width: auto;
		padding: 0;
		border: 0;
		text-align: start;
		font-weight: var(--planu-fw-bold);
		--theme-font-weight: var(--planu-fw-bold);
	}

	body.woocommerce-cart .cart_totals table.shop_table tr {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		--theme-table-text-align: end;
	}

	body.woocommerce-cart .cart_totals table.shop_table tr th {
		display: block;
		width: auto;
		max-width: none;
		float: none;
		text-align: start;
		font-size: var(--planu-text);
		font-weight: var(--planu-fw-bold);
		--theme-font-size: var(--planu-text);
		--theme-font-weight: var(--planu-fw-bold);
	}

	body.woocommerce-cart .cart_totals table.shop_table tr td {
		display: block;
		width: auto;
		max-width: none;
		float: none;
		text-align: end !important;
		--theme-table-text-align: end;
	}

	body.woocommerce-cart .cart_totals table.shop_table tr td::before,
	body.woocommerce-cart .cart_totals table.shop_table tr td[data-title]::before {
		content: none;
		display: none;
		float: none;
	}

	body.woocommerce-cart .cart_totals table.shop_table tr.cart-subtotal :is(.woocommerce-Price-amount, .amount, bdi),
	body.woocommerce-cart .cart_totals table.shop_table tr.order-total :is(.woocommerce-Price-amount, .amount, bdi, strong) {
		font-size: var(--planu-text-large);
		--theme-font-size: var(--planu-text-large);
		--theme-table-font-size: var(--planu-text-large);
		text-align: end;
	}
}

/* Blocksy: table-layout:fixed → 2 equal columns. display:block on the shipping
   <tr> still sits in column 1, so width:100% is half of .cart_totals. */
body.woocommerce-cart .cart_totals table.shop_table,
body.woocommerce-cart .cart_totals table.shop_table tbody,
body.woocommerce-checkout .ct-order-review table.shop_table,
body.woocommerce-checkout .ct-order-review table.shop_table :is(thead, tbody, tfoot) {
	display: block;
	width: 100%;
	table-layout: auto;
	margin-bottom: 0;
}

body.woocommerce-checkout .ct-order-review table.shop_table {
	--theme-table-padding: var(--planu-space-12) 0;
}

body.woocommerce-cart .cart_totals table.shop_table tr,
body.woocommerce-checkout .ct-order-review table.shop_table tr {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	width: 100%;
	border-bottom: 1px dashed var(--planu-poranek);
}

body.woocommerce-checkout .ct-order-review table.shop_table thead tr,
body.woocommerce-checkout .ct-order-review table.shop_table tr.cart_item {
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
}

body.woocommerce-checkout .ct-order-review table.shop_table thead tr {
	border-bottom: 2px solid var(--planu-poranek);
}

body.woocommerce-cart .cart_totals table.shop_table tr:last-child,
body.woocommerce-checkout .ct-order-review table.shop_table tfoot tr:last-child {
	border-bottom: 0;
}

body.woocommerce-cart .cart_totals table.shop_table :is(th, td),
body.woocommerce-checkout .ct-order-review table.shop_table :is(th, td) {
	--theme-table-border-width: 0;
	border-bottom: 0;
}

body.woocommerce-cart .cart_totals table.shop_table th {
	text-align: start;
}

body.woocommerce-cart .cart_totals table.shop_table td {
	text-align: end;
}

body.woocommerce-cart .cart_totals .wc-proceed-to-checkout {
	margin-top: var(--planu-space-16);
}

body.woocommerce-cart .cart_totals table.shop_table :is(th, td),
body.woocommerce-checkout .ct-order-review table.shop_table :is(th, td) {
	padding-block: var(--planu-space-12);
	padding-inline: 0;
}

body.woocommerce-checkout .ct-order-review table.shop_table tr.woocommerce-shipping-totals,
body.woocommerce-checkout .ct-order-review table.shop_table tr.shipping {
	grid-template-columns: minmax(0, 1fr);
	width: 100%;
	--theme-table-text-align: start;
}

body.woocommerce-checkout .ct-order-review table.shop_table tr.woocommerce-shipping-totals th,
body.woocommerce-checkout .ct-order-review table.shop_table tr.shipping th {
	display: none;
	width: 0;
	padding: 0;
	border: 0;
}

body.woocommerce-checkout .ct-order-review table.shop_table tr.woocommerce-shipping-totals td,
body.woocommerce-checkout .ct-order-review table.shop_table tr.shipping td {
	display: block;
	width: 100%;
	max-width: 100%;
	grid-column: 1 / -1;
	box-sizing: border-box;
	float: none;
	text-align: start;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .ct-shipping-heading,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals ul#shipping_method,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals ul#shipping_method li,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #select-point-container,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .woocommerce-shipping-destination,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals .ct-shipping-heading,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals ul#shipping_method,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals ul#shipping_method li,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals #select-point-container,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals .woocommerce-shipping-destination {
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	float: none;
	text-align: start;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .extra-shipping-desc,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals .extra-shipping-desc {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	float: none;
	clear: both;
	text-align: start;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals ul#shipping_method,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals ul#shipping_method label,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals ul#shipping_method,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals ul#shipping_method label,
body.woocommerce-checkout form.checkout #payment ul.payment_methods,
body.woocommerce-checkout form.checkout #payment ul.payment_methods > li.wc_payment_method > label {
	text-align: start;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	color: var(--planu-wieczor);
	--theme-font-family: var(--planu-font-body);
	--theme-font-weight: var(--planu-fw-body);
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .woocommerce-shipping-destination,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .woocommerce-shipping-destination strong {
	font-size: var(--planu-text-small);
	font-weight: var(--planu-fw-body);
	--theme-font-size: var(--planu-text-small);
	--theme-font-weight: var(--planu-fw-body);
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals ul#shipping_method li,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals ul#shipping_method li {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	max-width: 100%;
	min-width: 0;
	overflow-x: hidden;
	margin-bottom: var(--planu-shipping-method-gap);
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals ul#shipping_method label,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals ul#shipping_method label {
	display: flex;
	flex: 1 1 0%;
	align-items: baseline;
	min-width: 0;
	width: auto;
	overflow-wrap: anywhere;
	margin-bottom: 0;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals ul#shipping_method .woocommerce-Price-amount,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals ul#shipping_method .woocommerce-Price-amount {
	margin-inline-start: auto;
	flex-shrink: 0;
	text-align: end;
	white-space: nowrap;
}

body.woocommerce-checkout #checkout-shipping-methods .woocommerce-shipping-totals ul#shipping_method {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

body.woocommerce-checkout #checkout-shipping-methods .woocommerce-shipping-totals ul#shipping_method label {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: baseline;
	column-gap: var(--planu-space-24);
	overflow-wrap: anywhere;
}

@media (min-width: 1000px) {
	body.woocommerce-checkout #checkout-shipping-methods .woocommerce-shipping-totals ul#shipping_method {
		width: max-content;
	}
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .extra-shipping-desc,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #select-point-container,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals .extra-shipping-desc,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals #select-point-container {
	flex-basis: 100%;
	max-width: 100%;
	min-width: 0;
	overflow-x: hidden;
	overflow-wrap: anywhere;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #select-point,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #select-point:hover,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #select-point:focus,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals #select-point,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals #select-point:hover,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals #select-point:focus {
	color: var(--planu-czerwony);
	white-space: normal;
	overflow-wrap: anywhere;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #select-point-container :is(iframe, img, embed, object, #selected-point),
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals #select-point-container :is(iframe, img, embed, object, #selected-point),
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .furgonetka-checkout-btn-container,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals .furgonetka-checkout-btn-container {
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #select-point-container :is(iframe, embed, object),
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals #select-point-container :is(iframe, embed, object) {
	width: 100%;
	overflow-x: hidden;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .extra-shipping-desc,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals .extra-shipping-desc,
body.woocommerce-checkout :is(.ct-order-review, #checkout-shipping-methods) .woocommerce-shipping-totals #select-point-container {
	padding-inline-start: calc(var(--planu-control-size) + 0.7em);
}

body.woocommerce-checkout form.checkout #payment {
	background: transparent;
	border-radius: 0;
}

body.woocommerce-checkout form.checkout #payment ul.payment_methods {
	list-style: none;
	padding: 0;
	margin: 0;
	border: 0;
}

body.woocommerce-checkout form.checkout #payment ul.payment_methods > li.wc_payment_method {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	border: 0;
	padding: 0;
	margin: 0;
}

body.woocommerce-checkout form.checkout #payment ul.payment_methods > li.wc_payment_method:not(:last-child) {
	margin-bottom: 10px;
}

body.woocommerce-checkout form.checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"]:first-child {
	position: relative;
	clip: unset;
	clip-path: none;
}

body.woocommerce-checkout form.checkout #payment ul.payment_methods > li.wc_payment_method > label {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: start;
	flex: 1 1 0%;
	min-width: 0;
	width: auto;
	overflow-wrap: anywhere;
	margin: 0;
	padding: 0;
	cursor: pointer;
}

body.woocommerce-checkout form.checkout #payment ul.payment_methods > li.wc_payment_method > label img {
	margin-inline-start: auto;
}

body.woocommerce-checkout form.checkout #payment ul.payment_methods .payment_box {
	flex-basis: 100%;
	width: 100%;
	box-sizing: border-box;
	padding: 0;
	padding-inline-start: calc(var(--planu-control-size) + 0.7em);
	border: 0;
	margin: 0;
	background: transparent;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	color: var(--planu-wieczor);
}

body.woocommerce-checkout form.checkout #payment ul.payment_methods .payment_box p {
	padding: 0;
	margin: 0;
	border: 0;
	background: transparent;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-body);
	color: var(--planu-wieczor);
}

body.woocommerce-checkout form.checkout #payment ul.payment_methods .payment_box .paynow-blik-white-label,
body.woocommerce-checkout form.checkout #payment ul.payment_methods .payment_box fieldset,
body.woocommerce-checkout form.checkout #payment ul.payment_methods .payment_box .woocommerce-SavedPaymentMethods {
	margin-inline-start: var(--planu-space-16);
}

body.woocommerce-checkout form.checkout #payment ul.payment_methods .paynow-payment-option-pbls {
	margin-inline: var(--planu-space-16) 0;
}

body.woocommerce-checkout .ct-order-review .place-order {
	margin-top: var(--planu-space-16);
	padding: 0;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .woocommerce-privacy-policy-text,
body.woocommerce-checkout .woocommerce-privacy-policy-text p {
	margin: 0;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox {
	align-items: flex-start;
	font-family: var(--planu-font-body);
	--theme-font-family: var(--planu-font-body);
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox #terms {
	align-self: start;
}

body.woocommerce-checkout .ct-order-review .place-order > .order-total {
	margin: 0;
	font-family: var(--planu-font-body);
	font-size: var(--planu-text-large);
	font-weight: var(--planu-fw-bold);
	color: var(--planu-wieczor);
}

@media (min-width: 1000px) {
	body.woocommerce-checkout .ct-order-review .place-order {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: var(--planu-space-16);
	}

	body.woocommerce-checkout .ct-order-review .place-order > .order-total {
		display: none;
	}

	body.woocommerce-checkout .ct-order-review .woocommerce-terms-and-conditions-wrapper .form-row {
		margin: 0;
	}

	body.woocommerce-checkout .ct-order-review #place_order {
		width: 100%;
	}
}


body.woocommerce-checkout #order_comments {
	--theme-form-field-height: inherit;
	height: calc(var(--theme-form-field-height, 52px) * 2);
	min-height: calc(var(--theme-form-field-height, 52px) * 2);
}

body.woocommerce-checkout #order_comments + *,
body.woocommerce-checkout #order_comments_field :is(.description, #order_comments-description) {
	margin-block-start: var(--planu-shipping-method-gap);
}

/* FAQ Accordion Section */
.planu-faq {
	margin: var(--planu-space-96) auto var(--planu-space-48);
	padding: 0 24px;
	box-sizing: border-box;
}

.planu-faq h2 {
	margin: 0 auto var(--planu-space-64);
}

.planu-faq__container {
	display: flex;
	flex-direction: column;
	gap: var(--planu-faq-gap);
}

.planu-faq__item {
	background: var(--planu-bialy);
	border-radius: var(--planu-radius, 8px);
	border: 2px solid var(--planu-poranek);
	overflow: hidden;
	transition: border-color var(--planu-motion-feedback);
}

.planu-faq__item[open] {
	border-color: var(--planu-wieczor);
}

.planu-faq__question {
	padding: var(--planu-space-8) var(--planu-space-16);
	font-family: var(--planu-font-body);
	font-size: var(--planu-text-large);
	font-weight: var(--planu-fw-emphasis);
	color: var(--planu-noc);
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	user-select: none;
	text-decoration: none;
}

/* Remove default arrow */
.planu-faq__question::-webkit-details-marker {
	display: none;
}

.planu-faq__question::after {
	content: "+";
	font-family: var(--planu-font-heading);
	font-size: var(--planu-text-large);
	color: var(--planu-czerwony);
	transition: transform var(--planu-motion-hover);
}

.planu-faq__item[open] .planu-faq__question::after {
	content: "—";
}

.planu-faq__answer {
	padding: 0 var(--planu-space-16) var(--planu-faq-open-pad-bottom);
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	color: var(--planu-wieczor);
}

.planu-faq__answer p {
	margin: 0;
	line-height: 1.6;
}

/* Closing CTA Section */
.planu-closing-cta {
	margin: var(--planu-space-96) auto 0;
	padding: var(--planu-space-64) var(--planu-space-24) var(--planu-space-96);
	text-align: center;
	box-sizing: border-box;
	background-color: var(--planu-zolty);
}

.planu-closing-cta.alignfull {
	width: 100%;
	max-width: none;
	margin-left: 0;
	margin-right: 0;
}

#main:has(+ .planu-footer) .ct-container-full[data-vertical-spacing*="bottom"]:has(.entry-content > .planu-closing-cta:last-child) {
	padding-bottom: 0;
}

.planu-closing-cta h2 {
	margin: 0 auto var(--planu-space-24);
}

.planu-closing-cta__lead {
	font-size: var(--planu-text-large);
	color: var(--planu-wieczor);
	margin: 0 auto var(--planu-space-32);
}

.planu-closing-cta__button-wrapper {
	display: flex;
	justify-content: center;
	margin: 0 auto var(--planu-space-24);
}

.planu-closing-cta__caption,
.planu-closing-cta .planu-text-small {
	color: var(--planu-wieczor);
	margin: 0;
	font-family: var(--planu-font-body);
	font-weight: var(--planu-fw-bold);
}

.planu-closing-cta .planu-text-small [aria-hidden="true"] {
	display: inline-block;
	width: var(--planu-closing-cta-sep);
	height: var(--planu-closing-cta-sep);
	margin-inline: var(--planu-closing-cta-sep-gap);
	border-radius: 50%;
	background-color: currentColor;
	vertical-align: middle;
	overflow: hidden;
	font-size: 0;
	line-height: 0;
}

@media (min-width: 690px) {
	.planu-closing-cta {
		width: calc(var(--theme-container-width) * 0.8);
		max-width: calc(var(--theme-normal-container-max-width) * 0.8);
		margin-left: auto;
		margin-right: auto;
		padding: 0;
	}

	.planu-faq {
		width: 100%;
		max-width: var(--planu-faq-width);
		margin-left: auto;
		margin-right: auto;
		padding: 0;
		--theme-block-width: var(--planu-faq-width);
		--theme-block-max-width: var(--planu-faq-width);
		margin-top: var(--planu-space-96);
		margin-bottom: var(--planu-space-64);
	}

	.planu-faq h2 {
		margin-bottom: var(--planu-space-64);
	}

	.planu-faq__question {
		padding: var(--planu-space-12) var(--planu-space-16);
	}

	.planu-faq__answer {
		padding: 0 var(--planu-space-16) var(--planu-space-12);
	}

	.planu-closing-cta {
		margin-top: var(--planu-space-96);
		margin-bottom: 0;
		padding: var(--planu-space-96) 0;
	}

	.planu-closing-cta.alignfull {
		width: 100%;
		max-width: none;
		padding: var(--planu-space-96) max(var(--planu-space-24), calc((100% - min(var(--theme-container-width) * 0.8, var(--theme-normal-container-max-width) * 0.8)) / 2));
	}

	.planu-closing-cta__lead {
		margin-bottom: 32px;
	}

	.planu-closing-cta__button-wrapper {
		margin-bottom: 24px;
	}
}

body.page-id-34 .entry-content > .wp-block-columns {
	align-items: flex-start;
	gap: 2em 2.5em;
}

body.page-id-34 .entry-content > .wp-block-columns > .wp-block-column:nth-child(1) h2 {
	margin-top: 0;
}

body.page-id-34 .entry-content > .wp-block-columns > .wp-block-column:nth-child(2) {
	padding-top: calc(var(--planu-text-brand) + 0.35em);
}

body.page-id-34 .entry-content > .wp-block-columns > .wp-block-column:nth-child(2) a {
	color: var(--planu-czerwony);
}

body.page-id-34 .wpcf7 p {
	margin: 0;
}

body.page-id-34 .wpcf7 label {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0.4em;
	margin: 0 0 1.25em;
	font-size: var(--planu-text-small);
}

body.page-id-34 .wpcf7 label > br {
	display: none;
}

body.page-id-34 .wpcf7 .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

body.page-id-34 .wpcf7 :is(input[type="text"], input[type="email"], textarea) {
	width: 100%;
}

body.page-id-34 .wpcf7 textarea:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="file"]):not([type="image"]):not([type="range"]):not([type="color"]) {
	height: var(--planu-contact-message-height);
	min-height: var(--planu-contact-message-height);
}

body.page-id-34 .wpcf7 .wpcf7-acceptance {
	margin: 0.5em 0 1.5em;
}

body.page-id-34 .wpcf7 .wpcf7-list-item {
	margin: 0;
}

body.page-id-34 .wpcf7 .wpcf7-acceptance label,
body.page-id-34 .wpcf7 .wpcf7-acceptance .wpcf7-list-item-label {
	font-family: var(--planu-font-body);
	font-size: var(--planu-text-small);
	--theme-font-size: var(--planu-text-small);
}

body.page-id-34 .wpcf7 .wpcf7-acceptance label {
	flex-direction: row;
	align-items: flex-start;
	gap: 0;
	margin: 0;
	color: var(--planu-noc);
}

body.page-id-34 .wpcf7 .wpcf7-acceptance a {
	color: var(--planu-czerwony);
}

body.page-id-34 .wpcf7 .wpcf7-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	height: auto;
	min-height: var(--planu-btn-min-height);
	padding: 10px 40px;
	border: 2px solid transparent;
	border-radius: 999px;
	background: var(--planu-czerwony);
	background-color: var(--planu-czerwony);
	color: var(--planu-bialy);
	font-family: var(--planu-font-body);
	font-size: var(--planu-text);
	font-weight: var(--planu-fw-button);
	cursor: pointer;
}

body.page-id-34 .wpcf7 .wpcf7-submit:hover,
body.page-id-34 .wpcf7 .wpcf7-submit:focus-visible {
	border-color: var(--planu-noc);
	background: var(--planu-czerwony);
	color: var(--planu-bialy);
}

@media (max-width: 781px) {
	body.page-id-34 .entry-content > .wp-block-columns > .wp-block-column:nth-child(2) {
		padding-top: 0;
	}
}

/* Mobile chrome: logo + account in header, 4-item bottom nav. */
header#header [data-device="mobile"] [data-id]:not([data-id="logo"]):not([data-id="account"]) {
	display: none !important;
}

header#header [data-device="mobile"] .ct-header-account a {
	--toggle-button-radius: 0;
	--toggle-button-background: transparent;
	--toggle-button-shadow: none;
	width: auto;
	height: auto;
	min-width: var(--planu-tap);
	min-height: var(--planu-tap);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--planu-noc);
}

.planu-bottom-nav,
[data-planu-back] {
	display: none;
}

@media (min-width: 1000px) {
	[data-planu-back],
	.planu-bottom-nav__atc,
	.planu-bottom-nav > aside {
		display: none;
	}
}

@media (max-width: 999.98px) {
	:root {
		--planu-header-height: var(--planu-header-height-mobile);
		--planu-header-logo-height: var(--planu-header-logo-height-mobile);
		--planu-btn-min-height: var(--planu-bottom-nav-action);
		--planu-bottom-nav-inset: max(
			var(--planu-space-16),
			calc((100vw - var(--theme-container-edge-spacing, 88vw)) / 2)
		);
		--planu-checkout-sticky-stack: calc(
			var(--planu-text-large) +
			var(--planu-space-8) +
			var(--planu-bottom-nav-action)
		);
	}

	body {
		padding-bottom: calc(var(--planu-bottom-nav-height) + (var(--planu-bottom-nav-inset) * 2) + env(safe-area-inset-bottom, 0px));
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) {
		--planu-header-height: 0px;
		padding-bottom: calc(
			var(--planu-checkout-sticky-stack) +
			(var(--planu-bottom-nav-inset) * 2) +
			env(safe-area-inset-bottom, 0px)
		);
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) header#header {
		display: none;
		height: 0;
		min-height: 0;
		overflow: hidden;
		pointer-events: none;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) #main {
		padding-top: 0;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-terms-and-conditions-wrapper {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		padding: var(--planu-space-32);
		border-radius: var(--planu-radius);
		background: var(--planu-bialy);
		scroll-margin-bottom: calc(
			var(--planu-checkout-sticky-stack) +
			(var(--planu-bottom-nav-inset) * 2) +
			env(safe-area-inset-bottom, 0px)
		);
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-terms-and-conditions-wrapper .form-row {
		margin: 0;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-terms-and-conditions-wrapper.woocommerce-invalid .woocommerce-form__label-for-checkbox,
	body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-terms-and-conditions-wrapper.woocommerce-invalid .woocommerce-form__label-for-checkbox a,
	body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-terms-and-conditions-wrapper.woocommerce-invalid .woocommerce-terms-and-conditions-checkbox-text {
		color: var(--planu-czerwony);
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) .planu-bottom-nav {
		display: none;
	}

	header#header {
		position: fixed;
		top: var(--admin-bar, 0px);
		right: 0;
		left: 0;
		width: 100%;
	}

	#main {
		padding-top: var(--planu-header-height);
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) :is(
		form.checkout,
		.ct-order-review,
		#order_review
	) {
		overflow: visible;
		transform: none;
		filter: none;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) .ct-order-review .place-order {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 90;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-end;
		gap: var(--planu-space-8);
		float: none;
		box-sizing: border-box;
		width: 100%;
		max-width: none;
		min-height: 0;
		margin: 0;
		padding: var(--planu-bottom-nav-inset);
		padding-bottom: calc(
			var(--planu-bottom-nav-inset) + env(safe-area-inset-bottom, 0px)
		);
		overflow: visible;
		border: 0;
		border-radius: var(--planu-radius-section) var(--planu-radius-section) 0 0;
		background: var(--planu-bialy);
		background-color: var(--planu-bialy);
		color: var(--planu-noc);
		box-shadow: var(--planu-elevation-2);
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) .ct-order-review .place-order::before,
	body.woocommerce-checkout:not(.woocommerce-order-received) .ct-order-review .place-order::after {
		content: none;
		display: none;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) .ct-order-review .place-order > .order-total {
		position: relative;
		z-index: 1;
		display: flex;
		align-items: baseline;
		justify-content: space-between;
		flex: 0 0 auto;
		width: 100%;
		max-width: none;
		min-width: 0;
		margin: 0;
		padding: 0;
		font-size: var(--planu-text);
		font-weight: var(--planu-fw-body);
		color: var(--planu-wieczor);
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) .ct-order-review .place-order > .order-total :is(.woocommerce-Price-amount, .amount) {
		font-size: var(--planu-text-large);
		font-weight: var(--planu-fw-heading);
		color: var(--planu-noc);
		--theme-font-size: var(--planu-text-large);
		--theme-font-weight: var(--planu-fw-heading);
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) .ct-order-review .place-order :is(
		.woocommerce-terms-and-conditions-wrapper,
		.woocommerce-privacy-policy-text,
		noscript
	) {
		display: none;
	}

	.planu-bottom-nav {
		position: fixed;
		left: var(--planu-bottom-nav-inset);
		right: var(--planu-bottom-nav-inset);
		bottom: calc(env(safe-area-inset-bottom, 0px) + var(--planu-bottom-nav-inset));
		z-index: 90;
		display: flex;
		align-items: center;
		box-sizing: border-box;
		width: calc(100% - (var(--planu-bottom-nav-inset) * 2));
		min-height: var(--planu-bottom-nav-height);
		margin: 0;
		padding: var(--planu-space-4) var(--planu-space-12);
		overflow: visible;
		border: 0;
		border-radius: var(--planu-bottom-nav-radius);
		background: transparent;
		background-color: transparent;
		color: var(--planu-wieczor);
		box-shadow: none;
		--theme-icon-size: var(--planu-bottom-nav-icon);
	}

	.planu-bottom-nav::before {
		content: "";
		position: absolute;
		inset: 0;
		z-index: 0;
		border-radius: inherit;
		background: var(--planu-glass-bg);
		background-color: var(--planu-glass-bg);
		box-shadow: var(--planu-glass-rim), var(--planu-elevation-2);
		backdrop-filter: var(--planu-glass-blur);
		-webkit-backdrop-filter: var(--planu-glass-blur);
		pointer-events: none;
		opacity: 1;
		transition: opacity var(--planu-motion-exit);
	}

	.planu-bottom-nav > a:not(.planu-btn),
	.planu-bottom-nav > a:not(.planu-btn):hover,
	.planu-bottom-nav > a:not(.planu-btn):focus-visible,
	.planu-bottom-nav > button:not(.planu-bottom-nav__atc) {
		position: relative;
		z-index: 1;
		display: flex;
		flex: 1 1 0;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: var(--planu-space-4);
		min-width: 0;
		min-height: var(--planu-tap);
		margin: 0;
		padding: 0 var(--planu-space-4);
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		color: inherit;
		font-family: var(--planu-font-body);
		font-size: var(--planu-text-small);
		font-weight: var(--planu-fw-body);
		line-height: var(--planu-leading-tight);
		--has-link-decoration: var(--false);
		text-decoration: none;
		cursor: pointer;
		transition: opacity var(--planu-motion-exit);
	}

	.planu-bottom-nav > a:not(.planu-btn):hover,
	.planu-bottom-nav > a:not(.planu-btn):focus-visible,
	.planu-bottom-nav > button:not(.planu-bottom-nav__atc):hover,
	.planu-bottom-nav > button:not(.planu-bottom-nav__atc):focus-visible {
		color: var(--planu-noc);
		text-decoration: none;
	}

	.planu-bottom-nav .ct-icon-container {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: auto;
		height: auto;
		color: inherit;
	}

	.planu-bottom-nav .planu-icon {
		width: var(--planu-bottom-nav-icon);
		height: var(--planu-bottom-nav-icon);
		vertical-align: 0;
		color: inherit;
	}

	.planu-bottom-nav .ct-dynamic-count-cart {
		inset-inline-end: calc(var(--planu-space-8) * -1);
		top: calc(var(--planu-space-4) * -1);
	}

	.planu-bottom-nav .ct-dynamic-count-cart[data-count="0"] {
		display: none;
	}

	@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
		.planu-bottom-nav::before {
			background: var(--planu-bialy);
			background-color: var(--planu-bialy);
		}
	}

	body.single-product {
		--planu-header-height: 0px;
	}

	body.single-product header#header {
		display: none;
		height: 0;
		min-height: 0;
		overflow: hidden;
		pointer-events: none;
	}

	body.single-product #main {
		padding-top: 0;
	}

	body.single-product [data-planu-back],
	body.woocommerce-checkout:not(.woocommerce-order-received) [data-planu-back] {
		position: fixed;
		top: max(
			calc(var(--admin-bar, 0px) + env(safe-area-inset-top, 0px) + var(--planu-space-12)),
			calc(var(--admin-bar, 0px) + var(--planu-space-48))
		);
		left: var(--planu-bottom-nav-inset);
		z-index: 200;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		width: var(--planu-tap);
		height: var(--planu-tap);
		min-width: var(--planu-tap);
		min-height: var(--planu-tap);
		margin: 0;
		padding: 0;
		border: 0;
		border-radius: 50%;
		background: var(--planu-bialy);
		background-color: var(--planu-bialy);
		box-shadow: var(--planu-elevation-2);
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		color: var(--planu-noc);
		text-decoration: none;
	}

	body.single-product [data-planu-back]:focus-visible,
	body.woocommerce-checkout:not(.woocommerce-order-received) [data-planu-back]:focus-visible {
		outline: var(--planu-focus-width) solid var(--planu-noc);
		outline-offset: var(--planu-focus-offset);
	}

	body.single-product [data-planu-back] .planu-icon,
	body.single-product [data-planu-back] svg,
	body.woocommerce-checkout:not(.woocommerce-order-received) [data-planu-back] .planu-icon,
	body.woocommerce-checkout:not(.woocommerce-order-received) [data-planu-back] svg {
		display: block;
		width: var(--planu-bottom-nav-icon);
		height: var(--planu-bottom-nav-icon);
		color: var(--planu-noc);
		fill: none;
		stroke: currentColor;
	}

	body.single-product [data-planu-back] svg path,
	body.woocommerce-checkout:not(.woocommerce-order-received) [data-planu-back] svg path {
		fill: none;
		stroke: currentColor;
	}

	body.single-product .planu-bottom-nav::before {
		transform: translateY(0);
		transition:
			opacity var(--planu-motion-enter),
			transform var(--planu-motion-enter);
		transition-delay: var(--planu-duration-base);
	}

	body.single-product .planu-bottom-nav > a,
	body.single-product .planu-bottom-nav > button:not(.planu-bottom-nav__atc) {
		transform: translateY(0);
		transition:
			opacity var(--planu-motion-enter),
			transform var(--planu-motion-enter);
		transition-delay: var(--planu-duration-base);
	}

	body.single-product .planu-bottom-nav > aside {
		left: calc(var(--planu-bottom-nav-inset) * -1);
		right: calc(var(--planu-bottom-nav-inset) * -1);
		bottom: calc((env(safe-area-inset-bottom, 0px) + var(--planu-bottom-nav-inset)) * -1);
		box-sizing: border-box;
		width: auto;
		margin: 0;
		border: 0;
		border-radius: var(--planu-radius-section) var(--planu-radius-section) 0 0;
		background: var(--planu-bialy);
		background-color: var(--planu-bialy);
		box-shadow: var(--planu-elevation-2);
		color: var(--planu-noc);
	}

	body.single-product .planu-bottom-nav > aside {
		position: absolute;
		z-index: 1;
		display: flex;
		flex-direction: column;
		padding: var(--planu-bottom-nav-inset);
		padding-bottom: calc(
			var(--planu-bottom-nav-action) +
			(var(--planu-bottom-nav-inset) * 2) +
			env(safe-area-inset-bottom, 0px)
		);
		opacity: 0;
		pointer-events: none;
		transform: translateY(100%);
		transition:
			opacity var(--planu-motion-exit),
			transform var(--planu-motion-exit);
	}

	body.single-product .planu-bottom-nav > aside p {
		margin: 0;
		font-family: var(--planu-font-body);
		line-height: var(--planu-leading-tight);
	}

	body.single-product .planu-bottom-nav [data-planu-pdp="title"] {
		margin-block-end: var(--planu-space-16);
		font-family: var(--planu-font-heading);
		font-size: var(--planu-text);
		font-weight: var(--planu-fw-heading);
		color: var(--planu-noc);
	}

	body.single-product .planu-bottom-nav [data-planu-pdp="params"] {
		margin-block-end: var(--planu-space-8);
		font-size: var(--planu-text-small);
		font-weight: var(--planu-fw-body);
		color: var(--planu-wieczor);
	}

	body.single-product .planu-bottom-nav [data-planu-pdp="params"] span {
		padding-inline: var(--planu-pdp-params-sep);
		font-size: var(--planu-text);
		font-weight: var(--planu-fw-emphasis);
		line-height: var(--planu-leading-tight);
	}

	body.single-product .planu-bottom-nav [data-planu-pdp="params"]:empty {
		display: none;
	}

	body.single-product .planu-bottom-nav [data-planu-pdp="price"] {
		font-size: var(--planu-text);
		font-weight: var(--planu-fw-emphasis);
		color: var(--planu-noc);
	}

	body.single-product .planu-bottom-nav__atc,
	body.woocommerce-checkout:not(.woocommerce-order-received) .ct-order-review .place-order #place_order {
		display: inline-flex;
		flex: 0 0 auto;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		width: min(var(--planu-bottom-nav-atc-width), calc(100% - var(--planu-bottom-nav-action) - var(--planu-space-8)));
		min-width: 0;
		height: var(--planu-bottom-nav-action);
		min-height: var(--planu-bottom-nav-action);
		margin: 0;
		padding: 0 var(--planu-space-32);
		overflow: visible;
		border-radius: var(--planu-bottom-nav-radius);
		white-space: nowrap;
		text-transform: uppercase;
		font-family: var(--planu-font-body);
		font-size: var(--planu-text-large);
		font-weight: var(--planu-fw-button);
		--theme-button-font-size: var(--planu-text-large);
		line-height: var(--planu-leading-tight);
		color: var(--planu-bialy);
		background: var(--planu-czerwony);
		background-color: var(--planu-czerwony);
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) .ct-order-review .place-order #place_order {
		flex: 0 0 auto;
		align-self: stretch;
		float: none;
		width: 100%;
		max-width: none;
	}

	body.single-product .planu-bottom-nav__atc {
		position: absolute;
		right: 0;
		top: calc((100% - var(--planu-bottom-nav-action)) / 2);
		bottom: auto;
		z-index: 3;
		opacity: 0;
		pointer-events: none;
		transform: translateX(calc(100% + var(--planu-bottom-nav-inset)));
		transition:
			opacity var(--planu-motion-exit),
			transform var(--planu-motion-exit);
	}

	body.single-product .planu-bottom-nav__atc > span:not(.planu-btn__fill):not(.planu-load-more-spinner),
	body.woocommerce-checkout:not(.woocommerce-order-received) .ct-order-review .place-order #place_order > span {
		display: inline;
		position: static;
		width: auto;
		height: auto;
		overflow: visible;
		opacity: 1;
		color: var(--planu-bialy);
		font-family: var(--planu-font-body);
		font-size: var(--planu-text-large);
		font-weight: var(--planu-fw-button);
		white-space: nowrap;
	}

	body.single-product.planu-pdp-past-atc .planu-bottom-nav::before {
		opacity: 0;
		transform: translateY(
			calc(
				var(--planu-bottom-nav-height) +
				var(--planu-bottom-nav-inset) +
				env(safe-area-inset-bottom, 0px)
			)
		);
		transition:
			opacity var(--planu-motion-exit),
			transform var(--planu-motion-exit);
		transition-delay: 0s;
	}

	body.single-product.planu-pdp-past-atc .planu-bottom-nav > a,
	body.single-product.planu-pdp-past-atc .planu-bottom-nav > button:not(.planu-bottom-nav__atc) {
		opacity: 0;
		pointer-events: none;
		transform: translateY(
			calc(
				var(--planu-bottom-nav-height) +
				var(--planu-bottom-nav-inset) +
				env(safe-area-inset-bottom, 0px)
			)
		);
		transition:
			opacity var(--planu-motion-exit),
			transform var(--planu-motion-exit);
		transition-delay: 0s;
	}

	body.single-product .planu-bottom-nav .ct-header-cart {
		transition:
			opacity var(--planu-motion-enter),
			transform var(--planu-motion-enter);
		transition-delay: var(--planu-duration-base);
	}

	body.single-product.planu-pdp-past-atc .planu-bottom-nav .ct-header-cart {
		position: absolute;
		left: 0;
		top: calc((100% - var(--planu-bottom-nav-action)) / 2);
		bottom: auto;
		z-index: 3;
		flex: 0 0 var(--planu-bottom-nav-action);
		flex-direction: row;
		width: var(--planu-bottom-nav-action);
		height: var(--planu-bottom-nav-action);
		min-width: var(--planu-bottom-nav-action);
		min-height: var(--planu-bottom-nav-action);
		padding: 0;
		overflow: visible;
		opacity: 1;
		pointer-events: auto;
		border-radius: var(--planu-bottom-nav-radius);
		background: var(--planu-bialy);
		background-color: var(--planu-bialy);
		box-shadow: var(--planu-elevation-2);
		color: var(--planu-noc);
		transform: translateX(0);
		animation: planu-bottom-nav-in-left var(--planu-motion-enter) both;
		animation-delay: var(--planu-duration-base);
		transition-delay: 0s;
	}

	body.single-product.planu-pdp-past-atc .planu-bottom-nav .ct-header-cart > span:not(.ct-icon-container) {
		opacity: 0;
		position: absolute;
		width: 0;
		height: 0;
		overflow: hidden;
	}

	body.single-product.planu-pdp-past-atc .planu-bottom-nav__atc {
		opacity: 1;
		pointer-events: auto;
		overflow: hidden;
		transform: translateX(0);
		transition:
			opacity var(--planu-motion-enter),
			transform var(--planu-motion-enter);
		transition-delay: var(--planu-duration-base);
	}

	body.single-product.planu-pdp-past-atc .planu-bottom-nav > aside {
		opacity: 1;
		pointer-events: none;
		transform: translateY(0);
		transition:
			opacity var(--planu-motion-enter),
			transform var(--planu-motion-enter);
		transition-delay: var(--planu-duration-base);
	}

	.cky-btn-revisit-wrapper {
		left: var(--planu-bottom-nav-inset) !important;
		bottom: calc(
			env(safe-area-inset-bottom, 0px) +
			var(--planu-bottom-nav-inset) +
			var(--planu-bottom-nav-height) +
			var(--planu-space-8)
		) !important;
		z-index: 80 !important;
	}
}

.cky-btn-revisit-wrapper .cky-btn-revisit {
	background-color: var(--planu-wieczor) !important;
	-webkit-mask: url("../../plugins/cookie-law-info/lite/frontend/images/revisit.svg") center / contain no-repeat;
	mask: url("../../plugins/cookie-law-info/lite/frontend/images/revisit.svg") center / contain no-repeat;
}

.cky-btn-revisit-wrapper .cky-btn-revisit img {
	opacity: 0;
}

@keyframes planu-bottom-nav-in-left {
	from {
		opacity: 0;
		transform: translateX(calc(-100% - var(--planu-bottom-nav-inset)));
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

#offcanvas.ct-panel,
#offcanvas.ct-panel .ct-panel-inner {
	background-color: var(--planu-bialy) !important;
	background-image: none !important;
	color: var(--planu-wieczor);
	--theme-font-family: var(--planu-font-body);
	--theme-font-weight: var(--planu-fw-body);
	--theme-text-color: var(--planu-wieczor);
	--theme-headings-color: var(--planu-noc);
	--theme-link-initial-color: var(--planu-noc);
	--theme-link-hover-color: var(--planu-noc);
	--theme-link-active-color: var(--planu-noc);
	--theme-icon-color: var(--planu-noc);
	--theme-icon-hover-color: var(--planu-noc);
	--theme-icon-active-color: var(--planu-noc);
	--has-link-decoration: var(--false);
	--theme-text-decoration: none;
}

#offcanvas .mobile-menu,
#offcanvas .mobile-menu a,
#offcanvas .ct-menu-link {
	font-family: var(--planu-font-body);
	font-weight: var(--planu-fw-body);
	color: var(--planu-noc);
	text-decoration: none;
	--theme-font-family: var(--planu-font-body);
	--theme-font-weight: var(--planu-fw-body);
	--theme-link-initial-color: var(--planu-noc);
	--theme-link-hover-color: var(--planu-noc);
	--theme-link-active-color: var(--planu-noc);
	--theme-icon-color: var(--planu-noc);
	--theme-icon-hover-color: var(--planu-noc);
	--theme-icon-active-color: var(--planu-noc);
	--has-link-decoration: var(--false);
	--theme-text-decoration: none;
}

#offcanvas .mobile-menu [class*="current-menu-"] > .ct-menu-link,
#offcanvas .mobile-menu [class*="current-menu-"] > .ct-sub-menu-parent,
#offcanvas .mobile-menu [class*="current-page"] > .ct-menu-link,
#offcanvas .mobile-menu [class*="current-page"] > .ct-sub-menu-parent,
#offcanvas .mobile-menu .current_page_item > .ct-menu-link,
#offcanvas .mobile-menu a[aria-current="page"] {
	color: var(--planu-noc);
	background-color: transparent;
	text-decoration: none;
}

#offcanvas .mobile-menu > ul > li > a.ct-menu-link,
#offcanvas .mobile-menu > ul > li > .ct-sub-menu-parent > a.ct-menu-link {
	font-weight: var(--planu-fw-heading);
	--theme-font-weight: var(--planu-fw-heading);
}

#offcanvas .mobile-menu a:focus-visible,
#offcanvas .ct-toggle-close:focus-visible {
	outline: var(--planu-focus-width) solid var(--planu-noc);
	outline-offset: var(--planu-focus-offset);
}

#offcanvas .ct-toggle-close,
#offcanvas .ct-toggle-dropdown-mobile {
	--theme-icon-color: var(--planu-noc);
	color: var(--planu-noc);
}

#offcanvas .ct-toggle-close:hover,
#offcanvas .ct-toggle-dropdown-mobile:hover {
	--theme-icon-color: var(--planu-noc);
}

#offcanvas .ct-toggle-dropdown-mobile svg,
#offcanvas .mobile-menu .dropdown-active > .ct-sub-menu-parent .ct-toggle-dropdown-mobile svg {
	width: 24px;
	height: 24px;
	color: var(--planu-noc);
	fill: none;
	stroke: currentColor;
}

#offcanvas .ct-toggle-dropdown-mobile svg * {
	fill: none;
	stroke: currentColor;
}

#offcanvas .mobile-menu[data-interaction="click"] .sub-menu [class*="children"] > ul {
	display: block;
}

#offcanvas .mobile-menu .sub-menu .ct-toggle-dropdown-mobile {
	display: none;
}

#offcanvas .mobile-menu .sub-menu [class*="children"] > .ct-sub-menu-parent > a {
	pointer-events: none;
	cursor: default;
}

ass*="current-page"] > .ct-sub-menu-parent,
#offcanvas .mobile-menu .current_page_item > .ct-menu-link,
#offcanvas .mobile-menu a[aria-current="page"] {
	color: var(--planu-noc);
	background-color: transparent;
	text-decoration: none;
}

#offcanvas .mobile-menu > ul > li > a.ct-menu-link,
#offcanvas .mobile-menu > ul > li > .ct-sub-menu-parent > a.ct-menu-link {
	font-weight: var(--planu-fw-heading);
	--theme-font-weight: var(--planu-fw-heading);
}

#offcanvas .mobile-menu a:focus-visible,
#offcanvas .ct-toggle-close:focus-visible {
	outline: var(--planu-focus-width) solid var(--planu-noc);
	outline-offset: var(--planu-focus-offset);
}

#offcanvas .ct-toggle-close,
#offcanvas .ct-toggle-dropdown-mobile {
	--theme-icon-color: var(--planu-noc);
	color: var(--planu-noc);
}

#offcanvas .ct-toggle-close:hover,
#offcanvas .ct-toggle-dropdown-mobile:hover {
	--theme-icon-color: var(--planu-noc);
}

#offcanvas .ct-toggle-dropdown-mobile svg,
#offcanvas .mobile-menu .dropdown-active > .ct-sub-menu-parent .ct-toggle-dropdown-mobile svg {
	width: 24px;
	height: 24px;
	color: var(--planu-noc);
	fill: none;
	stroke: currentColor;
}

#offcanvas .ct-toggle-dropdown-mobile svg * {
	fill: none;
	stroke: currentColor;
}

#offcanvas .mobile-menu[data-interaction="click"] .sub-menu [class*="children"] > ul {
	display: block;
}

#offcanvas .mobile-menu .sub-menu .ct-toggle-dropdown-mobile {
	display: none;
}

#offcanvas .mobile-menu .sub-menu [class*="children"] > .ct-sub-menu-parent > a {
	pointer-events: none;
	cursor: default;
}

