/*
Theme Name: JPOD
Author: JPOD
Description: Independent block theme for the JPOD art shop.
Version: 0.2.23
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: jpod
Tags: block-patterns, full-site-editing, e-commerce, accessibility-ready
*/

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 3px solid var(--wp--preset--color--ukraine-yellow);
	outline-offset: 3px;
}

:where(.has-paper-background-color, .has-canvas-background-color)
	:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline-color: var(--wp--preset--color--ukraine-blue);
}

:where(.has-ukraine-blue-background-color, .has-ink-background-color, .has-night-surface-background-color)
	:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline-color: var(--wp--preset--color--ukraine-yellow);
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--paper);
}

img,
svg,
video {
	max-width: 100%;
	height: auto;
}

button,
input,
select,
textarea {
	font: inherit;
}

:where(button, input, select, textarea, summary, .wp-element-button) {
	min-height: 44px;
}

:where(input, select, textarea) {
	max-width: 100%;
	border: 1px solid var(--wp--preset--color--night-border);
	border-radius: 2px;
	background: var(--wp--preset--color--night-surface);
	color: var(--wp--preset--color--paper);
	color-scheme: dark;
}

:where(input, textarea)::placeholder {
	color: var(--wp--preset--color--night-muted);
	opacity: 1;
}

:where(select option) {
	background: var(--wp--preset--color--night-surface);
	color: var(--wp--preset--color--paper);
}

:where(input[type='checkbox'], input[type='radio']) {
	accent-color: var(--wp--preset--color--ukraine-yellow);
}

:where(input, select) {
	padding: 10px 12px;
}

.jpod-product-purchase select {
	border: 1px solid var(--wp--preset--color--night-border) !important;
	background: var(--wp--preset--color--night-surface) !important;
	color: var(--wp--preset--color--paper) !important;
	line-height: 1.3 !important;
	padding: 10px 42px 10px 14px !important;
}

.wc-block-components-checkbox__input[type='checkbox'] {
	width: 26px !important;
	min-width: 26px !important;
	height: 26px !important;
	min-height: 26px !important;
	padding: 0 !important;
}

textarea {
	padding: 12px;
}

:where(a, button, summary, label, input, select, textarea) {
	text-underline-offset: 0.18em;
}

.jpod-site-header,
.jpod-checkout-header {
	position: relative;
	z-index: 20;
	border-color: var(--wp--preset--color--night-border) !important;
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--paper);
}

.jpod-site-header {
	padding-block: 15px !important;
}

.jpod-site-header__inner {
	min-height: 50px;
	padding-block: 0;
}

.jpod-checkout-header > .wp-block-group {
	min-height: 80px;
	padding-block: 14px;
}

.jpod-brand .wp-block-site-logo img {
	max-width: 40px;
}

.jpod-brand {
	flex: 0 0 auto;
	gap: 10px;
}

.jpod-brand .wp-block-site-title {
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1;
	text-transform: uppercase;
}

.jpod-brand .wp-block-site-title a,
.jpod-site-footer .wp-block-site-title a {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	color: inherit;
	text-decoration: none;
}

.jpod-primary-navigation {
	flex: 1 1 auto;
}

.jpod-primary-navigation .wp-block-navigation-item__content,
.jpod-checkout-return .wp-block-navigation-item__content {
	display: inline-flex;
	min-width: 44px;
	min-height: 44px;
	align-items: center;
	color: var(--wp--preset--color--paper);
	text-decoration: none;
}

.jpod-primary-navigation .wp-block-navigation-submenu__toggle {
	min-width: 44px;
	min-height: 44px;
}

.jpod-primary-navigation .wp-block-navigation__submenu-container {
	min-width: 220px;
	border: 1px solid var(--wp--preset--color--night-border) !important;
	background: var(--wp--preset--color--night-surface) !important;
	color: var(--wp--preset--color--paper) !important;
}

.jpod-primary-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	width: 100%;
	padding: 8px 14px;
	color: var(--wp--preset--color--paper);
}

.jpod-primary-navigation .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--ink) !important;
	color: var(--wp--preset--color--paper) !important;
}

.jpod-primary-navigation .wp-block-navigation__responsive-container.is-menu-open
	:where(.wp-block-navigation-item__content, .wp-block-navigation-submenu__toggle, .wp-block-navigation__responsive-container-close) {
	color: var(--wp--preset--color--paper) !important;
}

.jpod-primary-navigation .wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__submenu-container {
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--paper);
}

.jpod-header-tools {
	flex: 0 0 auto;
}

.jpod-product-search {
	margin: 0;
}

.jpod-product-search .wp-block-search__inside-wrapper {
	border: 1px solid var(--wp--preset--color--night-border);
	border-radius: 999px;
	background: var(--wp--preset--color--night-surface);
}

.jpod-product-search .wp-block-search__input {
	width: clamp(120px, 14vw, 210px);
	min-height: 42px;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--paper);
}

.jpod-product-search .wp-block-search__button {
	min-width: 44px;
	min-height: 44px;
	margin: 0;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--paper);
}

.jpod-header-tools .wc-block-mini-cart__button {
	min-width: 44px;
	min-height: 44px;
	border: 1px solid var(--wp--preset--color--night-border);
	border-radius: 999px;
	background: transparent;
	color: var(--wp--preset--color--paper);
}

.jpod-header-tools .wc-block-mini-cart__badge {
	background: var(--wp--preset--color--ukraine-yellow);
	color: var(--wp--preset--color--ink);
}

.jpod-page-shell {
	min-height: 48vh;
	padding-block: clamp(48px, 7vw, 96px);
}

.jpod-page-shell > :first-child {
	margin-top: 0;
}

.jpod-page-shell h1 {
	max-width: 18ch;
	text-wrap: balance;
}

.jpod-eyebrow {
	color: var(--wp--preset--color--night-link);
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.jpod-home {
	position: relative;
}

.jpod-sale-rain {
	position: fixed;
	z-index: 25;
	inset: 0;
	height: 100vh;
	overflow: hidden;
	pointer-events: none;
}

.jpod-sale-rain__badge {
	position: absolute;
	top: -132px;
	left: var(--jpod-sale-left);
	display: grid;
	place-content: center;
	gap: 2px;
	width: clamp(92px, 11vw, 152px);
	aspect-ratio: 1;
	padding: 14px;
	border: 2px solid var(--wp--preset--color--ink);
	border-radius: 48% 52% 45% 55%;
	background: var(--wp--preset--color--ukraine-yellow);
	box-shadow: 5px 6px 0 var(--wp--preset--color--ukraine-blue);
	color: var(--wp--preset--color--ink);
	text-align: center;
	transform: translate3d(0, -140px, 0) rotate(calc(var(--jpod-sale-rotation) - 16deg));
	animation: jpod-sale-fall 4800ms cubic-bezier(0.22, 0.88, 0.3, 1) var(--jpod-sale-delay) forwards;
}

.jpod-sale-rain__badge strong {
	font-size: clamp(0.85rem, 1.5vw, 1.25rem);
	line-height: 0.95;
	letter-spacing: 0.04em;
}

.jpod-sale-rain__badge > span {
	font-size: clamp(0.7rem, 1.1vw, 0.95rem);
	font-weight: 700;
	line-height: 1;
}

@keyframes jpod-sale-fall {
	0% {
		opacity: 0;
		transform: translate3d(0, -140px, 0) rotate(calc(var(--jpod-sale-rotation) - 16deg));
	}

	14% {
		opacity: 1;
	}

	78% {
		opacity: 1;
	}

	100% {
		opacity: 0;
		transform: translate3d(var(--jpod-sale-drift), calc(100vh - 30px), 0) rotate(var(--jpod-sale-rotation));
	}
}

@media (max-width: 699px) {
	.jpod-sale-rain__badge {
		width: clamp(78px, 22vw, 108px);
		padding: 10px;
	}

	.jpod-sale-rain__badge strong {
		font-size: 0.78rem;
	}

	.jpod-sale-rain__badge > span {
		font-size: 0.64rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.jpod-sale-rain__badge {
		animation: none !important;
		opacity: 1;
		transform: translate3d(0, 18vh, 0) rotate(var(--jpod-sale-rotation));
	}
}

.jpod-hero {
	padding-block: clamp(48px, 7vw, 96px);
}

.jpod-hero__columns {
	gap: clamp(32px, 6vw, 96px);
}

.jpod-hero__copy {
	display: grid;
	gap: 22px;
}

.jpod-hero__copy > * {
	margin-block: 0;
}

.jpod-hero__copy h1 {
	max-width: 12ch;
	letter-spacing: -0.015em;
	text-transform: uppercase;
	text-wrap: balance;
}

.jpod-hero__copy > p:not(.jpod-eyebrow) {
	max-width: 56ch;
	color: var(--wp--preset--color--night-muted);
}

.jpod-hero__actions {
	gap: 12px;
}

.jpod-hero-product .wc-block-product-template {
	display: block;
	margin: 0;
	padding: 0;
}

.jpod-hero-product .wc-block-product {
	position: relative;
	isolation: isolate;
	padding: clamp(22px, 3vw, 36px);
	border: 0;
	border-radius: 2px;
	background: transparent;
	overflow: visible;
}

.jpod-hero-product .wc-block-product::before {
	content: '';
	position: absolute;
	z-index: -1;
	top: 9%;
	right: 8%;
	bottom: 13%;
	left: 8%;
	background: #ddc194;
	border: 2px solid var(--wp--preset--color--ink);
	box-shadow: 8px 9px 0 rgba(21, 21, 20, 0.14);
	transform: rotate(2deg);
}

.jpod-hero-product .wc-block-components-product-image {
	margin: 0;
	position: relative;
	z-index: 1;
	padding: clamp(10px, 1.8vw, 16px);
	background: var(--wp--preset--color--night-surface);
	border: 1px solid var(--wp--preset--color--night-border);
	box-shadow: 0 7px 0 rgba(21, 21, 20, 0.12);
	transform: rotate(-2deg);
}

.jpod-hero-product .wc-block-components-product-image img {
	width: 100%;
	aspect-ratio: 4 / 5;
	border: 8px solid var(--wp--preset--color--ukraine-blue);
	border-radius: 0;
	background: var(--wp--preset--color--night-surface);
	object-fit: contain;
}

.jpod-hero-product .wp-block-post-title,
.jpod-hero-product .wp-block-woocommerce-product-price {
	position: relative;
	z-index: 2;
	margin: 12px clamp(4px, 1.5vw, 14px) 0;
	padding: 10px 12px;
	background: var(--wp--preset--color--night-surface);
	border: 1px solid var(--wp--preset--color--night-border);
	color: var(--wp--preset--color--paper);
}

.jpod-hero-product .wp-block-post-title a {
	color: var(--wp--preset--color--paper);
}

.jpod-hero-product .wp-block-woocommerce-product-price {
	color: var(--wp--preset--color--night-muted);
}

.jpod-hero-product .wp-block-post-title {
	line-height: 1.12;
	text-wrap: balance;
}

html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble::before {
	opacity: 0;
	transform: translate(56px, -40px) rotate(10deg) scale(0.88);
}

html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble .wc-block-components-product-image {
	opacity: 0.12;
	clip-path: inset(100% 0 0);
	transform: translate(48px, 64px) rotate(5deg) scale(0.92);
}

html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble .wp-block-post-title,
html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble .wp-block-woocommerce-product-price {
	opacity: 0;
	transform: translateY(28px) rotate(-1deg);
}

html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble.is-assembled::before {
	opacity: 1;
	transform: rotate(2deg);
	transition:
		opacity 500ms ease-out,
		transform 850ms cubic-bezier(0.16, 1, 0.3, 1);
}

html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble.is-assembled .wc-block-components-product-image {
	opacity: 1;
	clip-path: inset(0);
	transform: rotate(-2deg);
	transition:
		opacity 700ms ease-out 180ms,
		clip-path 1050ms cubic-bezier(0.16, 1, 0.3, 1) 180ms,
		transform 1100ms cubic-bezier(0.16, 1, 0.3, 1) 180ms,
		box-shadow 150ms ease-out;
}

html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble.is-assembled .wp-block-post-title,
html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble.is-assembled .wp-block-woocommerce-product-price {
	opacity: 1;
	transform: translateY(0) rotate(0);
	transition:
		opacity 520ms ease-out,
		transform 700ms cubic-bezier(0.16, 1, 0.3, 1);
}

html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble.is-assembled .wp-block-post-title {
	transition-delay: 760ms;
}

html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble.is-assembled .wp-block-woocommerce-product-price {
	transition-delay: 920ms;
}

.jpod-hero-product .wc-block-product:hover .wc-block-components-product-image,
.jpod-hero-product .wc-block-product:focus-within .wc-block-components-product-image,
html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble.is-assembled:hover .wc-block-components-product-image,
html.jpod-motion-ready .jpod-hero-product .wc-block-product.jpod-hero-assemble.is-assembled:focus-within .wc-block-components-product-image {
	box-shadow: 0 14px 0 rgba(21, 21, 20, 0.16);
	transform: translateY(-8px) rotate(-2deg);
	transition-delay: 0ms;
	transition-duration: 150ms;
}

.jpod-hero-product__empty {
	min-height: 420px;
	border: 1px solid var(--wp--preset--color--ink);
	border-radius: 46% 46% 18% 18%;
}

.jpod-home-section {
	padding-block: clamp(52px, 7vw, 96px);
}

.jpod-section-heading {
	align-items: end;
	margin-bottom: 28px;
}

.jpod-section-heading > * {
	margin-block: 0;
}

.jpod-category-grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 14px;
	width: 100%;
	max-width: 1180px;
	margin: 0;
	margin-inline: auto;
	padding: 0;
	list-style: none;
}

.jpod-category-card {
	--jpod-reveal-order: 0;
	--jpod-reveal-tilt: -1.5deg;
	position: relative;
	display: block;
	grid-column: span 3;
	overflow: hidden;
	min-width: 0;
	min-height: 268px;
	border: 2px solid var(--wp--preset--color--ink);
	border-radius: 18px;
	background: #ddd5c8;
	isolation: isolate;
	transition: transform 0.2s ease;
}

.jpod-category-card:nth-child(-n + 3) {
	grid-column: span 4;
}

.jpod-category-card:nth-child(2),
.jpod-category-card:nth-child(5) {
	--jpod-reveal-order: 1;
	--jpod-reveal-tilt: 1.5deg;
}

.jpod-category-card:nth-child(3),
.jpod-category-card:nth-child(6) {
	--jpod-reveal-order: 2;
}

.jpod-category-card:nth-child(7) {
	--jpod-reveal-order: 3;
	--jpod-reveal-tilt: 1.5deg;
}


.jpod-category-card:hover,
.jpod-category-card:focus-within {
	transform: none;
}

.jpod-category-card__image {
	position: absolute;
	z-index: -2;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
	transition: transform 0.2s ease;
}

.jpod-category-card:nth-child(-n + 3) .jpod-category-card__image {
	object-position: center top;
}

.jpod-category-card:hover .jpod-category-card__image,
.jpod-category-card:focus-within .jpod-category-card__image {
	transform: scale(1.03);
}

html.jpod-motion-ready .jpod-category-card.jpod-reveal {
	opacity: 0.15;
	clip-path: inset(100% 0 0);
	transform: translateY(48px) rotate(var(--jpod-reveal-tilt));
}

html.jpod-motion-ready .jpod-category-card.jpod-reveal .jpod-category-card__image {
	transform: scale(1.1);
}

html.jpod-motion-ready .jpod-category-card.jpod-reveal.is-revealed {
	opacity: 1;
	clip-path: inset(0);
	transform: translateY(0);
	transition:
		opacity 700ms ease-out,
		transform 950ms cubic-bezier(0.16, 1, 0.3, 1),
		clip-path 1000ms cubic-bezier(0.16, 1, 0.3, 1);
	transition-delay: calc(var(--jpod-reveal-order) * 130ms);
}

html.jpod-motion-ready .jpod-category-card.jpod-reveal.is-revealed .jpod-category-card__image {
	transform: scale(1);
	transition: transform 1000ms cubic-bezier(0.16, 1, 0.3, 1);
	transition-delay: calc(var(--jpod-reveal-order) * 130ms);
}

html.jpod-motion-ready .jpod-category-card.jpod-reveal.is-revealed:hover .jpod-category-card__image,
html.jpod-motion-ready .jpod-category-card.jpod-reveal.is-revealed:focus-within .jpod-category-card__image {
	transform: scale(1.03);
	transition-delay: 0ms;
	transition-duration: 150ms;
}

.jpod-category-card > a {
	position: absolute;
	display: flex;
	inset: 0;
	align-items: flex-end;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--paper);
	text-decoration: none;
}

.jpod-category-card > a::before {
	position: absolute;
	z-index: -1;
	inset: 0;
	content: '';
	background: linear-gradient(180deg, rgba(21, 21, 20, 0.02) 35%, rgba(21, 21, 20, 0.78) 100%);
}

.jpod-category-card__copy {
	position: relative;
	z-index: 1;
	display: block;
	width: auto;
	max-width: calc(100% - 32px);
	margin: 0 16px 16px;
	padding: 0;
	border: 0;
	background: transparent;
}

.jpod-category-card__title {
	display: block;
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(19px, 2.15vw, 30px);
	letter-spacing: -0.02em;
	line-height: 0.9;
	text-shadow: 0 2px 14px rgba(0, 0, 0, 0.85);
	text-transform: uppercase;
}

.jpod-featured-products .wc-block-product-template,
.jpod-product-grid .wc-block-product-template {
	display: grid;
	gap: clamp(18px, 2.5vw, 32px);
	margin: 0;
	padding: 0;
}

.jpod-featured-products .wc-block-product-template {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.jpod-product-grid .wc-block-product-template {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.jpod-featured-products .wc-block-product,
.jpod-product-grid .wc-block-product {
	display: grid;
	min-width: 0;
	align-content: start;
	gap: 10px;
	padding: 0 0 18px;
	background: transparent;
	color: var(--wp--preset--color--paper);
}

.jpod-featured-products .wc-block-components-product-image,
.jpod-product-grid .wc-block-components-product-image {
	position: relative;
	margin: 0;
	overflow: hidden;
	border: 0;
	background: radial-gradient(circle at 50% 42%, #4a4945 0%, #2c2b28 58%, #1b1b1a 100%);
}

.jpod-featured-products .wc-block-components-product-image::after,
.jpod-product-grid .wc-block-components-product-image::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	content: '';
	background: radial-gradient(circle at 50% 42%, transparent 48%, rgba(21, 21, 20, 0.34) 100%);
	pointer-events: none;
}

.jpod-featured-products .wc-block-components-product-image img,
.jpod-product-grid .wc-block-components-product-image img {
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: contain;
	transition: transform 180ms ease-out;
}

.jpod-featured-products .wc-block-product:hover .wc-block-components-product-image img,
.jpod-featured-products .wc-block-product:focus-within .wc-block-components-product-image img,
.jpod-product-grid .wc-block-product:hover .wc-block-components-product-image img,
.jpod-product-grid .wc-block-product:focus-within .wc-block-components-product-image img {
	transform: scale(1.02);
}

.jpod-featured-products .wp-block-post-title,
.jpod-product-grid .wp-block-post-title {
	display: -webkit-box;
	min-height: 3.9em;
	margin: 0;
	overflow: hidden;
	font-family: var(--wp--preset--font-family--body);
	font-weight: 600;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.jpod-featured-products .wp-block-post-title a,
.jpod-product-grid .wp-block-post-title a {
	display: flex;
	min-height: 44px;
	align-items: center;
	color: var(--wp--preset--color--paper);
	text-decoration: none;
}

.jpod-featured-products .wp-block-woocommerce-product-price,
.jpod-product-grid .wp-block-woocommerce-product-price {
	margin: 0;
	color: var(--wp--preset--color--night-muted);
}

.jpod-featured-products .wc-block-components-product-sale-badge,
.jpod-product-grid .wc-block-components-product-sale-badge {
	border-color: var(--wp--preset--color--ukraine-yellow) !important;
	background: var(--wp--preset--color--ukraine-yellow) !important;
	color: var(--wp--preset--color--ink) !important;
}

.jpod-featured-products .wc-block-components-product-sale-badge *,
.jpod-product-grid .wc-block-components-product-sale-badge * {
	background: transparent !important;
	color: inherit !important;
}

.jpod-purpose {
	padding-block: clamp(56px, 7vw, 96px);
}

.jpod-purpose .wp-block-columns {
	gap: clamp(32px, 6vw, 96px);
}

.jpod-purpose__mark {
	position: relative;
	overflow: hidden;
	min-height: 310px;
	border-radius: 50% 50% 18% 18%;
}

.jpod-purpose__image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center;
}

html.jpod-motion-ready .jpod-purpose__mark.jpod-reveal .jpod-purpose__image {
	opacity: 0.2;
	clip-path: inset(100% 0 0);
	transform: translateY(48px) scale(1.1);
}

html.jpod-motion-ready .jpod-purpose__mark.jpod-reveal.is-revealed .jpod-purpose__image {
	opacity: 1;
	clip-path: inset(0);
	transform: translateY(0) scale(1);
	transition:
		opacity 700ms ease-out,
		transform 1000ms cubic-bezier(0.16, 1, 0.3, 1),
		clip-path 1200ms cubic-bezier(0.16, 1, 0.3, 1);
}

.jpod-purpose__mark::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	content: '';
	background: linear-gradient(180deg, rgba(255, 210, 26, 0.35), transparent 32%, rgba(21, 21, 20, 0.08));
}

.jpod-purpose__mark-label {
	position: absolute;
	top: 18px;
	left: 50%;
	z-index: 2;
	padding: 4px 8px;
	transform: translateX(-50%);
	background: rgba(255, 210, 26, 0.86);
	color: var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--display);
	font-size: 14px;
	line-height: 1;
	white-space: nowrap;
}

.jpod-purpose h2 {
	max-width: 18ch;
	text-wrap: balance;
}

.jpod-purpose .jpod-eyebrow {
	color: var(--wp--preset--color--ukraine-yellow);
}

.jpod-purpose__follow {
	gap: 12px 18px;
	margin-top: 28px;
}

.jpod-purpose__follow-label {
	margin: 0;
	font-family: var(--wp--preset--font-family--display);
	font-size: 20px;
	letter-spacing: 0.02em;
	line-height: 1;
	text-transform: uppercase;
}

.jpod-purpose__socials {
	gap: 10px;
	margin: 0;
}

.jpod-purpose__socials .wp-social-link,
.jpod-purpose__socials .wp-block-social-link-anchor {
	background: var(--wp--preset--color--ukraine-yellow);
	color: var(--wp--preset--color--ink);
}

.jpod-purpose__socials .wp-social-link {
	border-radius: 50%;
}

.jpod-purpose__socials .wp-block-social-link-anchor {
	display: flex;
	min-width: 46px;
	min-height: 46px;
	align-items: center;
	justify-content: center;
	border-radius: inherit;
}

.jpod-purpose__socials .wp-social-link:hover,
.jpod-purpose__socials .wp-social-link:focus-within {
	transform: translateY(-3px);
}

.jpod-catalog-page > .wp-block-woocommerce-breadcrumbs,
.jpod-product-page > .wp-block-woocommerce-breadcrumbs {
	margin-bottom: 24px;
}

.jpod-catalog-controls {
	align-items: center;
	margin-block: 28px;
}

.jpod-catalog-controls select {
	min-width: 190px;
}

.jpod-product-grid .wp-block-query-pagination {
	gap: 8px;
	margin-top: 48px;
}

.jpod-product-grid .wp-block-query-pagination a,
.jpod-product-grid .wp-block-query-pagination .page-numbers {
	display: inline-flex;
	min-width: 44px;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border: 1px solid var(--wp--preset--color--night-border);
	color: var(--wp--preset--color--paper);
	text-decoration: none;
}

.jpod-product-grid .wp-block-query-pagination .current {
	border-color: var(--wp--preset--color--ukraine-yellow);
	background: var(--wp--preset--color--ukraine-yellow);
	color: var(--wp--preset--color--ink);
}

.jpod-product-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
	grid-template-areas:
		"gallery heading"
		"gallery purchase";
	gap: 24px clamp(32px, 5vw, 80px);
	align-items: start;
}

.jpod-product-heading {
	grid-area: heading;
}

.jpod-product-gallery {
	grid-area: gallery;
}

.jpod-product-purchase {
	grid-area: purchase;
}

.jpod-product-heading > *,
.jpod-product-purchase > * {
	margin-block: 0 18px;
}

.jpod-product-heading h1 {
	max-width: 16ch;
}

.jpod-product-gallery .woocommerce-product-gallery,
.jpod-product-gallery .wc-block-product-gallery {
	max-width: 100%;
	overflow: hidden;
}

.jpod-product-gallery .woocommerce-product-gallery__trigger {
	min-width: 44px;
	min-height: 44px;
}

.jpod-product-gallery img {
	background: var(--wp--preset--color--night-surface);
	object-fit: contain;
}

.jpod-product-gallery .woocommerce-product-gallery__trigger {
	border: 1px solid var(--wp--preset--color--night-border) !important;
	background: var(--wp--preset--color--night-surface) !important;
	color: var(--wp--preset--color--paper) !important;
}

.jpod-inline-purpose {
	padding: 14px 16px;
	border-left: 5px solid var(--wp--preset--color--ukraine-yellow);
	background: var(--wp--preset--color--night-surface);
	color: var(--wp--preset--color--paper);
}

.jpod-product-purchase .wp-block-woocommerce-add-to-cart-form {
	margin-block: 24px;
}

.jpod-product-purchase :where(button, .wp-element-button) {
	min-height: 44px;
}

.jpod-product-purchase :where(button, .wp-element-button):disabled,
.jpod-product-purchase [aria-disabled="true"] {
	border-color: var(--wp--preset--color--night-border);
	background: var(--wp--preset--color--night-surface);
	color: var(--wp--preset--color--night-muted);
	cursor: not-allowed;
}

.jpod-product-purchase [aria-pressed="true"],
.jpod-product-purchase [aria-selected="true"] {
	border-color: var(--wp--preset--color--ukraine-blue);
	box-shadow: inset 0 0 0 2px var(--wp--preset--color--ukraine-blue);
}

.jpod-product-purchase [aria-busy="true"],
.jpod-product-purchase .is-loading {
	cursor: progress;
	opacity: 0.72;
}

.jpod-product-details {
	margin-top: clamp(56px, 8vw, 112px);
}

.jpod-product-details .wc-tabs a,
.jpod-product-page .wc-block-grid__product-link,
.jpod-product-page .wc-block-grid__product-title {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner {
	padding: 16px;
	border: 1px solid var(--wp--preset--color--ukraine-blue);
	border-left-width: 5px;
	background: var(--wp--preset--color--night-surface);
	color: var(--wp--preset--color--paper);
}

.woocommerce-error,
.is-error.wc-block-components-notice-banner {
	border-color: var(--wp--preset--color--signal-red);
	background: #2b1918;
}

.woocommerce-error a,
.wc-block-components-notice-banner a {
	font-weight: 700;
}

.jpod-cart-page .wp-block-post-content,
.jpod-checkout-page .wp-block-post-content {
	margin-top: 32px;
}

.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
	color: var(--wp--preset--color--paper);
}

.wc-block-cart__main,
.wc-block-cart__sidebar,
.wc-block-checkout__main,
.wc-block-checkout__sidebar {
	min-width: 0;
}

.wc-block-cart__sidebar,
.wc-block-checkout__sidebar {
	padding: 24px;
	border: 1px solid var(--wp--preset--color--night-border);
	background: var(--wp--preset--color--night-surface);
	color: var(--wp--preset--color--paper);
}

.wc-block-cart__sidebar *,
.wc-block-checkout__sidebar * {
	border-color: var(--wp--preset--color--night-border);
}

.wc-block-components-button,
.wc-block-cart__submit-button,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
	min-height: 48px;
	border-radius: 2px;
}

.wc-block-components-quantity-selector {
	min-height: 44px;
	border-color: var(--wp--preset--color--night-border);
	background: var(--wp--preset--color--night-surface);
	color: var(--wp--preset--color--paper);
}

.wc-block-components-quantity-selector__button {
	min-width: 44px;
	min-height: 44px;
}

.wc-block-components-validation-error,
.wc-block-components-text-input.has-error label,
.wc-block-components-combobox.is-active .wc-block-components-combobox-control label {
	color: var(--wp--preset--color--signal-red);
}

.wp-block-woocommerce-checkout :where(
	.wc-block-components-text-input input,
	.wc-block-components-combobox .components-combobox-control__input,
	.wc-blocks-components-select__container
) {
	border-color: var(--wp--preset--color--night-border) !important;
	background: var(--wp--preset--color--night-surface) !important;
	color: var(--wp--preset--color--paper) !important;
}

.wp-block-woocommerce-checkout :where(
	.wc-block-components-text-input label,
	.wc-block-components-combobox-control label,
	.wc-blocks-components-select__label
) {
	color: var(--wp--preset--color--night-muted) !important;
}

.wp-block-woocommerce-checkout :where(
	.wc-blocks-components-select__select,
	.wc-block-components-combobox .components-combobox-control__input
) {
	background: transparent !important;
	color: var(--wp--preset--color--paper) !important;
	color-scheme: dark;
}

.wp-block-woocommerce-checkout :where(
	.wc-blocks-components-select__expand,
	.wc-block-components-checkbox__mark
) {
	color: var(--wp--preset--color--paper) !important;
	fill: currentColor !important;
}

.wp-block-woocommerce-checkout .wc-block-components-checkbox__input[type='checkbox'] {
	border-color: var(--wp--preset--color--night-border) !important;
	background: var(--wp--preset--color--night-surface) !important;
}

.wp-block-woocommerce-checkout input:-webkit-autofill {
	box-shadow: inset 0 0 0 1000px var(--wp--preset--color--night-surface) !important;
	-webkit-text-fill-color: var(--wp--preset--color--paper) !important;
}

.wc-block-components-text-input.has-error input,
.wc-block-components-combobox .components-combobox-control__input[aria-invalid="true"] {
	border-color: var(--wp--preset--color--signal-red);
	box-shadow: 0 0 0 1px var(--wp--preset--color--signal-red);
}

.wc-block-mini-cart__drawer,
.wc-block-mini-cart__drawer .components-modal__content {
	background: var(--wp--preset--color--night-surface);
	color: var(--wp--preset--color--paper);
}

.wc-block-mini-cart__drawer :where(h2, p, table, td, th, input, button) {
	color: var(--wp--preset--color--paper);
}

.wc-block-mini-cart__drawer :where(.wc-block-components-quantity-selector, .wc-block-mini-cart__footer-actions) {
	border-color: var(--wp--preset--color--night-border);
}

.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-cart {
	border-color: var(--wp--preset--color--ukraine-yellow);
	color: var(--wp--preset--color--paper);
}

.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-checkout {
	background: var(--wp--preset--color--ukraine-yellow);
	color: var(--wp--preset--color--ink);
}

.wc-block-mini-cart__drawer .wc-block-components-drawer__close {
	color: var(--wp--preset--color--paper);
}

.wc-block-mini-cart__drawer .wc-block-components-drawer__close svg {
	fill: currentColor;
}

#wcdp {
	--wcdp-main: var(--wp--preset--color--night-border);
	--wcdp-main-2: var(--wp--preset--color--ukraine-yellow);
	--wcdp-main-3: var(--wp--preset--color--signal-red);
	--wcdp-step-2: var(--wp--preset--color--night-muted);
	--wcdp-step-3: var(--wp--preset--color--night-muted);
	--wcdp-background-color: var(--wp--preset--color--night-surface);
	--wcdp-controls: var(--wp--preset--color--paper);
	--wcdp-label-inactive: var(--wp--preset--color--night-surface);
	--wcdp-label-inactive-hover: #34322d;
	--wcdp-label-text: var(--wp--preset--color--paper);
	--wcdp-label-text-checked: var(--wp--preset--color--ink);
}

#wcdp .wcdp_options > li > label {
	border: 1px solid var(--wp--preset--color--night-border);
}

#wcdp .wcdp_options > li > input:focus + label {
	box-shadow:
		0 0 0 2px var(--wp--preset--color--ink),
		0 0 0 5px var(--wp--preset--color--ukraine-yellow);
}

#wcdp :where(input:not([type='radio']):not([type='checkbox']), select, textarea) {
	border-color: var(--wp--preset--color--night-border) !important;
	background: var(--wp--preset--color--night-surface) !important;
	color: var(--wp--preset--color--paper) !important;
}

#wcdp :where(.wcdp-button, button) {
	background: var(--wp--preset--color--ukraine-yellow);
	color: var(--wp--preset--color--ink);
}

.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple,
.select2-dropdown,
.select2-search__field {
	border-color: var(--wp--preset--color--night-border) !important;
	background: var(--wp--preset--color--night-surface) !important;
	color: var(--wp--preset--color--paper) !important;
	color-scheme: dark;
}

.select2-container--default .select2-selection--single .select2-selection__rendered,
.select2-container--default .select2-selection--multiple .select2-selection__choice {
	color: var(--wp--preset--color--paper) !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
	border-color: var(--wp--preset--color--paper) transparent transparent !important;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
	border-color: transparent transparent var(--wp--preset--color--paper) !important;
}

.select2-results__option {
	background: var(--wp--preset--color--night-surface);
	color: var(--wp--preset--color--paper);
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
	background: var(--wp--preset--color--ukraine-yellow);
	color: var(--wp--preset--color--ink);
}

.woocommerce-account :where(input[type='text'], input[type='email'], input[type='password']) {
	border-color: var(--wp--preset--color--night-border) !important;
	background: var(--wp--preset--color--night-surface) !important;
	color: var(--wp--preset--color--paper) !important;
}

.woocommerce-account .show-password-input {
	color: var(--wp--preset--color--paper);
}

.wc-block-mini-cart__drawer :where(button, a) {
	min-height: 44px;
}

.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wc-block-components-button {
	min-height: 48px;
}

.jpod-checkout-header {
	padding-block: 12px;
}

.jpod-checkout-page h1 {
	margin-bottom: 32px;
}

.jpod-order-confirmation > * + * {
	margin-top: 24px;
}

.jpod-post-loop .wp-block-post-template,
.jpod-search-results .wp-block-post-template {
	display: grid;
	gap: 32px;
	margin: 32px 0;
	padding: 0;
}

.jpod-post-loop .wp-block-post-template {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.jpod-post-card,
.jpod-search-result {
	min-width: 0;
	padding-bottom: 32px;
	border-bottom: 1px solid var(--wp--preset--color--night-border);
}

.jpod-post-card .wp-block-post-title,
.jpod-search-result .wp-block-post-title {
	margin-bottom: 8px;
}

.jpod-post-meta {
	color: var(--wp--preset--color--night-muted);
	font-size: var(--wp--preset--font-size--small);
}

.jpod-empty-state,
.jpod-not-found {
	max-width: 720px;
}

.jpod-not-found .wp-block-search,
.jpod-search-page > .wp-block-search {
	margin-block: 24px;
}

.jpod-site-footer {
	padding-block: clamp(48px, 7vw, 80px);
}

.jpod-site-footer,
.jpod-site-footer a,
.jpod-site-footer .wp-block-navigation-item__content {
	color: var(--wp--preset--color--paper);
}

.jpod-site-footer .wp-block-columns {
	align-items: flex-start;
}

.jpod-site-footer h2 {
	margin-top: 0;
}

.jpod-footer-links,
.jpod-footer-legal-links {
	margin: 0;
	padding: 0;
	list-style: none;
}

.jpod-footer-links a,
.jpod-footer-legal-links a {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	text-decoration: none;
}

.jpod-footer-legal-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
}

.jpod-site-footer .wp-social-link a {
	min-width: 44px;
	min-height: 44px;
}

.jpod-site-footer .wp-block-social-links .wp-social-link,
.jpod-site-footer .wp-block-social-links .wp-block-social-link-anchor {
	color: var(--wp--preset--color--paper);
}

.jpod-footer-legal {
	margin-top: 36px;
	padding-top: 24px;
}

@media (max-width: 1279px) {
	.jpod-product-grid .wc-block-product-template {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 1023px) {
	.jpod-primary-navigation {
		margin-left: auto;
		flex: 0 0 auto;
	}

	.jpod-product-search .wp-block-search__input {
		width: 120px;
	}

	.jpod-product-layout {
		grid-template-columns: minmax(0, 1fr) minmax(300px, 0.9fr);
		gap: 24px 32px;
	}

	.jpod-site-footer .jpod-footer-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 899px) {
	.jpod-hero__columns,
	.jpod-purpose .wp-block-columns {
		flex-direction: column;
	}

	.jpod-hero__columns > .wp-block-column,
	.jpod-purpose .wp-block-column {
		flex-basis: auto !important;
		width: 100%;
	}

	.jpod-product-grid .wc-block-product-template,
	.jpod-featured-products .wc-block-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.jpod-product-layout {
		grid-template-columns: 1fr;
		grid-template-areas:
			"heading"
			"gallery"
			"purchase";
	}

	.jpod-post-loop .wp-block-post-template {
		grid-template-columns: 1fr;
	}

	.wc-block-cart,
	.wc-block-checkout {
		flex-direction: column;
	}
}

@media (max-width: 699px) {
	.jpod-category-card:nth-child(1),
	.jpod-category-card:nth-child(even) {
		--jpod-reveal-order: 0;
	}

	.jpod-category-card:nth-child(odd):not(:first-child) {
		--jpod-reveal-order: 1;
	}

	.jpod-product-details table {
		display: block;
		max-width: 100%;
		overflow-x: auto;
	}

	.jpod-site-header__inner {
		gap: 8px;
	}

	.jpod-brand .wp-block-site-logo img {
		max-width: 36px;
	}

	.jpod-brand .wp-block-site-title {
		font-size: 1.1rem;
	}

	.jpod-product-search {
		display: none;
	}

	.jpod-primary-navigation {
		order: 2;
	}

	.jpod-header-tools {
		order: 3;
	}

	.jpod-page-shell,
	.jpod-hero,
	.jpod-home-section,
	.jpod-purpose {
		padding-block: 48px;
	}

	.jpod-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.jpod-category-card,
	.jpod-category-card:nth-child(-n + 3) {
		grid-column: span 1;
		min-height: 178px;
	}

	.jpod-category-card:first-child {
		grid-column: span 2;
		min-height: 0;
		aspect-ratio: 1;
	}

	.jpod-section-heading {
		align-items: flex-start;
		flex-direction: column;
	}

	.jpod-purpose__mark {
		min-height: 220px;
	}

	.jpod-site-footer .jpod-footer-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.jpod-footer-legal {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 389px) {
	.jpod-product-grid .wc-block-product-template,
	.jpod-featured-products .wc-block-product-template,
	.jpod-site-footer .jpod-footer-grid {
		grid-template-columns: 1fr !important;
	}

	.jpod-category-grid .wc-block-product-categories-list {
		grid-template-columns: 1fr;
	}

	.jpod-hero__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.jpod-hero__actions .wp-block-button,
	.jpod-hero__actions .wp-block-button__link {
		width: 100%;
	}
}
