/**
 * Vlastní frontend styly pro WooCommerce.
 */

header nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation__container,
[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation__container {
	column-gap: clamp(1rem, 2vw, 1.8rem);
}

header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown,
[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown {
	position: relative;
	align-items: center;
}

header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown > .wp-block-navigation-item__content::after,
[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown > .wp-block-navigation-item__content::after {
	content: "";
	display: inline-block;
	width: 0.42em;
	height: 0.42em;
	margin-left: 0.45em;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: translateY(-0.18em) rotate(45deg);
}

header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__menu,
[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__menu {
	position: absolute;
	top: calc(100% + 0.65rem);
	left: 50%;
	z-index: 50;
	display: grid;
	min-width: 210px;
	margin: 0;
	padding: 0.55rem;
	list-style: none;
	visibility: hidden;
	opacity: 0;
	background: #fffdf2;
	border: 2px solid #09090b;
	border-radius: 8px;
	box-shadow: 5px 5px 0 #f6c945;
	transform: translate(-50%, 0.35rem);
	transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
}

header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown:hover > .jf-header-dropdown__menu,
header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown:focus-within > .jf-header-dropdown__menu,
[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown:hover > .jf-header-dropdown__menu,
[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown:focus-within > .jf-header-dropdown__menu {
	visibility: visible;
	opacity: 1;
	transform: translate(-50%, 0);
}

header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__menu::before,
[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__menu::before {
	content: "";
	position: absolute;
	right: 0;
	bottom: 100%;
	left: 0;
	height: 0.75rem;
}

header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a,
[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a {
	display: flex;
	width: 100%;
	padding: 0.55rem 0.7rem;
	color: #09090b;
	font-weight: 800;
	line-height: 1.15;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 6px;
}

header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a:hover,
header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a:focus,
[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a:hover,
[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a:focus {
	background: #f6c945;
	outline: none;
}

.woocommerce a.button,
.woocommerce button.button,
.wp-block-button__link,
.wc-block-components-product-button__button {
	white-space: normal;
}

.f3d-product-grid-page {
	width: min(1120px, calc(100% - 32px));
	margin: clamp(1.25rem, 3vw, 2.5rem) auto clamp(2.5rem, 5vw, 4rem);
	color: #09090b;
}

.f3d-product-grid-page__header {
	margin-bottom: clamp(1.35rem, 3vw, 2rem);
	padding: clamp(1.2rem, 3vw, 2rem);
	background: #fffdf2;
	border: 2px solid #09090b;
	border-radius: 8px;
	box-shadow: 6px 6px 0 #f6c945;
}

.f3d-product-grid-page__header h1 {
	margin: 0;
	font-size: clamp(2rem, 1.45rem + 1.8vw, 3rem);
	font-weight: 900;
	line-height: 1.05;
	letter-spacing: 0;
}

.f3d-product-grid-page__header p {
	max-width: 760px;
	margin: 0.75rem 0 0;
	font-size: clamp(1rem, 0.95rem + 0.2vw, 1.12rem);
	line-height: 1.55;
}

.f3d-product-grid-page__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 1.15rem;
	padding: 0.75rem 1.05rem;
	color: #fffdf2;
	font-weight: 900;
	line-height: 1.1;
	text-decoration: none;
	background: #09090b;
	border: 2px solid #09090b;
	border-radius: 8px;
	box-shadow: 4px 4px 0 #f6c945;
}

.f3d-product-grid-page__cta:hover,
.f3d-product-grid-page__cta:focus {
	color: #09090b;
	background: #f6c945;
	outline: none;
}

.f3d-product-grid-page__note {
	margin-bottom: clamp(1rem, 2.5vw, 1.6rem);
	padding: 1rem 1.15rem;
	color: #09090b;
	background: #ffffff;
	border: 2px solid #09090b;
	border-left-width: 8px;
	border-left-color: #e44637;
	border-radius: 8px;
}

.f3d-product-grid-page__note p {
	max-width: 860px;
	margin: 0;
	font-weight: 750;
	line-height: 1.5;
}

.f3d-product-grid-page__products .woocommerce {
	margin: 0;
}

.f3d-product-grid-page__products ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.5rem);
	align-items: stretch;
	margin-bottom: 0;
}

.f3d-product-grid-page__products ul.products.columns-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.f3d-product-grid-page__products ul.products.columns-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.f3d-product-grid-page__products ul.products::before,
.f3d-product-grid-page__products ul.products::after {
	display: none;
}

.f3d-product-grid-page__products ul.products li.product {
	display: flex !important;
	flex-direction: column;
	height: 100%;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
}

.f3d-product-grid-page__products .woocommerce-result-count,
.f3d-product-grid-page__products .woocommerce-ordering {
	display: none;
}

.f3d-product-grid-page__products .woocommerce-loop-product__title {
	min-height: 3.55rem;
}

.f3d-product-grid-page__products .star-rating,
.f3d-product-card-rating-spacer {
	min-height: 1.1rem;
}

.f3d-product-card-rating-spacer {
	margin: 0.2rem auto 0.25rem;
}

.f3d-product-grid-page__products ul.products li.product > .button,
.f3d-product-grid-page__products ul.products li.product > a.button,
.f3d-product-grid-page__products ul.products li.product .wp-block-button {
	margin-top: auto !important;
}

ul.products li.product a.button.jf-loop-product-button-fixed,
.wc-block-product .jf-loop-product-button-fixed,
.wp-block-post.product .jf-loop-product-button-fixed,
.wp-block-woocommerce-product-template .jf-loop-product-button-fixed,
main .jf-loop-product-button-fixed {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: min(100%, 210px) !important;
	min-height: 48px;
	padding: 0.78rem 1.2rem !important;
	color: #ffffff !important;
	font-weight: 400;
	line-height: 1.15;
	text-align: center;
	text-decoration: none;
	background: #09090b !important;
	border-radius: 10px !important;
}

.f3d-product-card-attrs {
	display: grid;
	gap: 0.35rem;
	margin: 0.75rem 0 1rem;
	padding: 0.7rem;
	text-align: left;
	background: #fffdf2;
	border: 1.5px solid rgba(9, 9, 11, 0.18);
	border-radius: 8px;
}

.f3d-product-card-attrs__item {
	display: grid;
	grid-template-columns: 4.65rem minmax(0, 1fr);
	gap: 0.45rem;
	align-items: baseline;
	font-size: 0.82rem;
	line-height: 1.25;
}

.f3d-product-card-attrs dt,
.f3d-product-card-attrs dd {
	margin: 0;
}

.f3d-product-card-attrs dt {
	color: rgba(9, 9, 11, 0.68);
	font-weight: 600;
}

.f3d-product-card-attrs dd {
	color: #09090b;
	font-weight: 400;
	overflow-wrap: anywhere;
}

main .wc-block-product .wp-block-post-title,
main .wc-block-grid__product-title,
main .woocommerce-loop-product__title {
	font-size: clamp(1.35rem, 1.25rem + 0.35vw, 1.5rem) !important;
	font-weight: 800 !important;
	line-height: 1.18 !important;
	letter-spacing: 0 !important;
	margin-top: 0.85rem !important;
	margin-bottom: 0.35rem !important;
}

main .wc-block-product .wp-block-post-title a,
main .wc-block-grid__product-title a,
main .woocommerce-loop-product__title a {
	color: #09090b !important;
	text-decoration: none;
}

main .wc-block-product .wp-block-post-title a:hover,
main .wc-block-grid__product-title a:hover,
main .woocommerce-loop-product__title a:hover {
	text-decoration: underline;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

body:is(.page, .archive) main .wp-block-heading.has-fit-text,
body:is(.page, .archive) main h1.wp-block-heading.has-text-align-center:first-of-type {
	width: min(100%, 1024px);
	max-width: 100%;
	margin-right: auto;
	margin-left: auto;
	font-size: clamp(1.9rem, 1.55rem + 1vw, 2rem) !important;
	line-height: 1.2 !important;
	white-space: normal !important;
	overflow-wrap: anywhere;
	word-break: normal;
}

body:is(.page, .archive) main .wp-block-woocommerce-product-collection > h1.wp-block-heading:first-of-type,
body:is(.page, .archive) main .wp-block-woocommerce-product-collection > h2.wp-block-heading:first-of-type {
	margin-bottom: 0.35rem !important;
}

body:is(.page, .archive) main .wp-block-woocommerce-product-collection > .wp-block-woocommerce-product-template {
	margin-top: 0.75rem !important;
}

body:is(.page-id-245, .page-id-251, .page-id-255) .wp-site-blocks > .wp-block-group.has-gradient-1-gradient-background {
	padding-bottom: 0.75rem !important;
}

body:is(.page-id-245, .page-id-251, .page-id-255) main {
	margin-top: 0 !important;
}

body:is(.page-id-245, .page-id-251, .page-id-255) main > .wp-block-group.alignfull {
	padding-top: 0.75rem !important;
}

body:is(.page-id-245, .page-id-251, .page-id-255) main .entry-content {
	margin-top: 0 !important;
}

body:is(.page-id-245, .page-id-251, .page-id-255) main .wp-block-woocommerce-product-collection > h1.wp-block-heading:first-of-type,
body:is(.page-id-245, .page-id-251, .page-id-255) main .wp-block-woocommerce-product-collection > h2.wp-block-heading:first-of-type {
	margin-top: 0 !important;
}

@media (max-width: 600px) {
	.f3d-product-grid-page__products ul.products,
	.f3d-product-grid-page__products ul.products.columns-3,
	.f3d-product-grid-page__products ul.products.columns-2 {
		grid-template-columns: 1fr;
	}

	.f3d-product-grid-page__products .woocommerce-loop-product__title {
		min-height: 0;
	}

	main .wc-block-product .wp-block-post-title,
	main .wc-block-grid__product-title,
	main .woocommerce-loop-product__title {
		font-size: 1.25rem !important;
		line-height: 1.2 !important;
	}
}

/* Chaos parta ma vlastni hero; prazdny titulni blok sablony se nezobrazuje. */
body.jf-chaos-party-page .wp-site-blocks > .wp-block-group.has-gradient-1-gradient-background {
	display: none !important;
}

@media (min-width: 601px) and (max-width: 781px) {
	.f3d-product-grid-page__products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 781px) {
	header nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation__container,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation__container {
		align-items: stretch !important;
		width: 100%;
		gap: 0.15rem !important;
	}

	header nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation-item,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation-item {
		width: 100%;
	}

	header nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation-item__content,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation-item__content {
		box-sizing: border-box;
		justify-content: flex-start !important;
		width: 100%;
		padding: 0.48rem 0 !important;
		color: #09090b !important;
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
		text-align: left !important;
		transform: none !important;
		transition: none !important;
	}

	header nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation-item__content:hover,
	header nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation-item__content:focus,
	header nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation-item__content:active,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation-item__content:hover,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation-item__content:focus,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .wp-block-navigation-item__content:active {
		color: #09090b !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
	}

	header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown {
		display: block !important;
		align-items: stretch;
	}

	header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown > .wp-block-navigation-item__content::after,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown > .wp-block-navigation-item__content::after {
		flex: 0 0 auto;
		margin-left: 0.35em;
		transform: translateY(-0.12em) rotate(45deg) !important;
	}

	header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__menu,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__menu {
		position: static;
		display: grid;
		width: 100%;
		min-width: 0;
		gap: 0.18rem;
		margin: 0 0 0.4rem;
		padding: 0 0 0 0.9rem;
		visibility: visible;
		opacity: 1;
		background: transparent;
		border: 0;
		box-shadow: none;
		transform: none;
		transition: none;
	}

	header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__menu::before,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__menu::before {
		display: none;
	}

	header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a {
		box-sizing: border-box;
		width: 100%;
		padding: 0.24rem 0 !important;
		color: #3f3f46 !important;
		font-weight: 500 !important;
		line-height: 1.25;
		white-space: normal;
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
		transform: none !important;
		transition: none !important;
	}

	header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a:hover,
	header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a:focus,
	header nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a:active,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a:hover,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a:focus,
	[role="banner"] nav[aria-label="Nabídka Záhlaví 2"] .jf-header-dropdown__item > a:active {
		color: #09090b !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
	}

	.single-product .jf-product-top-columns {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;
	}

	.single-product .jf-product-top-columns > .jf-product-media-column,
	.single-product .jf-product-top-columns > .jf-product-purchase-column {
		display: contents !important;
	}

	.single-product .jf-product-media-column > :first-child {
		order: 1;
	}

	.single-product .jf-product-purchase-column > .wp-block-post-title {
		order: 2;
		margin-top: 1.5rem !important;
	}

	.single-product .jf-product-purchase-column > .wp-block-woocommerce-product-price {
		order: 3;
	}

	.single-product .product-variant-note {
		order: 4;
	}

	.single-product .jf-product-purchase-column > .wp-block-woocommerce-product-summary {
		order: 5;
	}

	.single-product .jf-product-purchase-column > .wp-block-add-to-cart-form,
	.single-product .jf-product-purchase-column > form.cart {
		order: 6;
	}

	.single-product .wp-block-woocommerce-product-details[data-jf-woo-upravy-details-moved="1"] {
		order: 7;
	}

	.single-product .variant-explainer {
		order: 8;
	}

	.single-product .product-purchase-panel {
		order: 9;
	}

	.single-product .product-info-panel {
		order: 10;
	}
}

.variant-explainer {
	box-sizing: border-box;
	width: min(1120px, calc(100% - 32px));
	margin: clamp(2rem, 4vw, 3.5rem) auto;
	padding: clamp(1.25rem, 3vw, 2rem);
	border: 2px solid #09090b;
	border-radius: 8px;
	background: #fffdf2;
	box-shadow: 6px 6px 0 #f6c945;
	color: #09090b;
}

.single-product .variant-explainer {
	margin-top: calc(clamp(1.5rem, 3vw, 2.5rem) + var(--jf-variant-align-offset, 0px));
	margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
}

.variant-explainer h2 {
	margin: 0;
	font-size: clamp(1.65rem, 1.25rem + 1.3vw, 2.35rem);
	line-height: 1.08;
	letter-spacing: 0;
}

.variant-explainer__intro {
	max-width: 760px;
	margin: 0.75rem 0 1.25rem;
	font-size: 1.05rem;
	line-height: 1.55;
}

.variant-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.variant-card {
	padding: 1rem;
	border: 1.5px solid #09090b;
	border-radius: 8px;
	background: #ffffff;
}

.variant-card h3 {
	margin: 0;
	font-size: 1.45rem;
	line-height: 1;
	letter-spacing: 0;
}

.variant-card p {
	margin: 0.55rem 0 0;
	line-height: 1.45;
}

.variant-card__kicker {
	font-weight: 800;
}

.variant-basic {
	border-left-width: 8px;
	border-left-color: #09090b;
}

.variant-sq {
	border-left-width: 8px;
	border-left-color: #f6c945;
}

.variant-hq {
	border-left-width: 8px;
	border-left-color: #e44637;
}

.variant-explainer__rules {
	margin: 1rem 0 0;
	padding-top: 1rem;
	border-top: 1px solid rgba(9, 9, 11, 0.18);
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.45;
}

.product-variant-note {
	margin: 0.9rem 0 1rem;
	padding: 0.85rem 1rem;
	border: 1.5px solid #09090b;
	border-left-width: 8px;
	border-radius: 8px;
	background: #fffdf2;
	color: #09090b;
}

.product-variant-note--basic {
	border-left-color: #09090b;
}

.product-variant-note--sq {
	border-left-color: #f6c945;
}

.product-variant-note--hq {
	border-left-color: #e44637;
}

.product-variant-note__label {
	margin: 0 0 0.25rem;
	font-size: 0.85rem;
	font-weight: 900;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.product-variant-note__text {
	margin: 0;
	font-size: 0.98rem;
	line-height: 1.45;
}

.product-purchase-panel {
	margin: var(--jf-purchase-align-offset, 0px) 0 1.25rem;
	padding: 1rem;
	border: 1.5px solid #09090b;
	border-radius: 8px;
	background: #ffffff;
	color: #09090b;
	box-shadow: 4px 4px 0 rgba(9, 9, 11, 0.12);
}

.product-purchase-panel h2 {
	margin: 0 0 0.75rem;
	font-size: 1.15rem;
	line-height: 1.15;
	letter-spacing: 0;
}

.product-purchase-panel ul {
	display: grid;
	gap: 0.7rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.product-purchase-panel li {
	display: grid;
	gap: 0.18rem;
	padding-left: 0.9rem;
	border-left: 3px solid #f6c945;
}

.product-purchase-panel strong {
	font-size: 0.95rem;
	line-height: 1.2;
}

.product-purchase-panel span {
	font-size: 0.92rem;
	line-height: 1.4;
	color: #3f3f46;
}

.single-product .wp-block-woocommerce-product-details[data-jf-woo-upravy-details-moved="1"] {
	margin-top: calc(clamp(2.5rem, 5vw, 4rem) + var(--jf-details-align-offset, 0px));
}

.single-product .wp-block-woocommerce-product-details[data-jf-woo-upravy-details-moved="1"] + .product-purchase-panel {
	margin-top: calc(1.25rem + var(--jf-purchase-align-offset, 0px));
}

.single-product .product-info-panel[data-jf-woo-upravy-info-aligned="1"] {
	margin-top: var(--jf-info-align-offset, 0px);
	margin-bottom: 1.25rem;
}

.single-product .product_meta,
.single-product .wp-block-woocommerce-product-meta {
	display: none !important;
}

.single-product .woocommerce-breadcrumb,
.single-product .breadcrumb,
.single-product .breadcrumbs,
.single-product .breadcrumb-trail,
.single-product .rank-math-breadcrumb,
.single-product .yoast-breadcrumb,
.single-product nav[aria-label="Breadcrumb"],
.single-product nav[aria-label="Drobečková navigace"] {
	display: none !important;
}

.single-product .wp-block-woocommerce-product-details table,
.single-product .woocommerce-product-details__short-description table,
.single-product .woocommerce-Tabs-panel--description table {
	width: 100%;
	margin: 1rem 0 1.25rem;
	border-collapse: separate;
	border-spacing: 0;
	border: 1.5px solid #09090b;
	border-radius: 8px;
	overflow: hidden;
	background: #ffffff;
	table-layout: fixed;
}

.single-product .wp-block-woocommerce-product-details table th,
.single-product .wp-block-woocommerce-product-details table td,
.single-product .woocommerce-product-details__short-description table th,
.single-product .woocommerce-product-details__short-description table td,
.single-product .woocommerce-Tabs-panel--description table th,
.single-product .woocommerce-Tabs-panel--description table td {
	padding: 0.7rem 0.85rem;
	border: 0;
	border-bottom: 1px solid rgba(9, 9, 11, 0.14);
	vertical-align: top;
	line-height: 1.45;
	text-align: left;
	overflow-wrap: anywhere;
}

.single-product .wp-block-woocommerce-product-details table tr:last-child th,
.single-product .wp-block-woocommerce-product-details table tr:last-child td,
.single-product .woocommerce-product-details__short-description table tr:last-child th,
.single-product .woocommerce-product-details__short-description table tr:last-child td,
.single-product .woocommerce-Tabs-panel--description table tr:last-child th,
.single-product .woocommerce-Tabs-panel--description table tr:last-child td {
	border-bottom: 0;
}

.single-product .wp-block-woocommerce-product-details table th:first-child,
.single-product .wp-block-woocommerce-product-details table td:first-child,
.single-product .woocommerce-product-details__short-description table th:first-child,
.single-product .woocommerce-product-details__short-description table td:first-child,
.single-product .woocommerce-Tabs-panel--description table th:first-child,
.single-product .woocommerce-Tabs-panel--description table td:first-child {
	width: 34%;
	font-weight: 800;
	color: #09090b;
	background: #fff8dc;
}

.single-product .wp-block-woocommerce-product-details table th + th,
.single-product .wp-block-woocommerce-product-details table td + td,
.single-product .woocommerce-product-details__short-description table th + th,
.single-product .woocommerce-product-details__short-description table td + td,
.single-product .woocommerce-Tabs-panel--description table th + th,
.single-product .woocommerce-Tabs-panel--description table td + td {
	border-left: 1px solid rgba(9, 9, 11, 0.14);
}

.wc-block-cart__empty-cart__title {
	max-width: 720px;
	margin-right: auto;
	margin-left: auto;
	font-size: clamp(1.8rem, 1.35rem + 1.4vw, 2.6rem) !important;
	line-height: 1.08 !important;
}

.cart-confidence-panel,
.checkout-confidence-panel {
	width: min(100% - 2rem, 1024px);
	margin: 0 auto clamp(1.5rem, 3vw, 2.25rem);
	padding: 1rem;
	border: 1.5px solid #09090b;
	border-radius: 8px;
	background: #fffdf2;
	color: #09090b;
	box-shadow: 4px 4px 0 #f6c945;
}

.cart-confidence-panel h2,
.checkout-confidence-panel h2 {
	margin: 0 0 0.8rem;
	font-size: clamp(1.25rem, 1.05rem + 0.55vw, 1.55rem);
	line-height: 1.15;
	letter-spacing: 0;
}

.cart-confidence-panel ul,
.checkout-confidence-panel ul {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.85rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.cart-confidence-panel li,
.checkout-confidence-panel li {
	display: grid;
	gap: 0.25rem;
	padding-left: 0.8rem;
	border-left: 3px solid #f6c945;
}

.cart-confidence-panel strong,
.checkout-confidence-panel strong {
	font-size: 0.95rem;
	line-height: 1.2;
}

.cart-confidence-panel span,
.checkout-confidence-panel span {
	font-size: 0.92rem;
	line-height: 1.4;
	color: #3f3f46;
}

.wc-block-checkout-empty__description {
	max-width: 680px;
	margin-right: auto;
	margin-left: auto;
	font-size: 1.1rem;
	line-height: 1.55;
	text-align: center;
}

.f3d-custom-related-products {
	box-sizing: border-box;
	width: min(1120px, calc(100% - 32px)) !important;
	max-width: 1120px !important;
	margin: clamp(2.5rem, 6vw, 5rem) auto !important;
	padding: 0 !important;
	color: #09090b;
	clear: both;
}

.jf-product-media-column .f3d-custom-related-products,
.jf-product-purchase-column .f3d-custom-related-products {
	width: min(1120px, calc(100vw - 32px)) !important;
	max-width: 1120px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.f3d-custom-related-products h2 {
	margin: 0 0 clamp(1.25rem, 3vw, 2rem);
	color: #09090b;
	font-size: clamp(1.9rem, 1.35rem + 2vw, 3.2rem);
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
}

.f3d-custom-related-products__grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(1rem, 2.4vw, 1.5rem) !important;
	align-items: stretch !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.f3d-custom-related-products__card {
	display: flex !important;
	flex-direction: column;
	min-width: 0;
	width: auto !important;
	max-width: none !important;
	min-height: 100%;
	height: 100%;
	overflow: hidden;
	background: #ffffff;
	border: 2px solid #09090b;
	border-radius: 10px;
	box-shadow: 6px 6px 0 rgba(9, 9, 11, 0.16);
}

.f3d-custom-related-products__media {
	display: flex !important;
	align-items: center;
	justify-content: center;
	min-height: 240px;
	padding: 0.75rem;
	background: #ffffff;
	text-decoration: none;
}

.f3d-custom-related-products__image {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 240px !important;
	object-fit: contain;
}

.f3d-custom-related-products__body {
	display: flex !important;
	flex: 1;
	flex-direction: column;
	gap: 0.8rem;
	padding: 1rem;
	text-align: center;
}

.f3d-custom-related-products__body h3 {
	margin: 0;
	font-size: clamp(1.2rem, 1rem + 0.55vw, 1.55rem);
	line-height: 1.05;
	letter-spacing: 0;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}

.f3d-custom-related-products__body h3 a {
	color: #09090b;
	text-decoration: none;
}

.f3d-custom-related-products__price {
	margin: 0;
	color: #c51515;
	font-size: 1.15rem;
	font-weight: 900;
	line-height: 1.2;
}

.f3d-custom-related-products__button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	margin-top: auto;
	padding: 0.7rem 1rem;
	color: #09090b;
	font-weight: 900;
	line-height: 1.1;
	text-decoration: none;
	background: #f6c945;
	border: 2px solid #09090b;
	border-radius: 8px;
	box-shadow: 4px 4px 0 #09090b;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}

.f3d-custom-related-products__button:hover,
.f3d-custom-related-products__button:focus {
	color: #fffdf2;
	background: #e44637;
	outline: none;
}

.home .f3d-home-landing ~ * {
	display: none !important;
}

.f3d-home-landing {
	--f3d-black: #09090b;
	--f3d-red: #e44637;
	--f3d-yellow: #f6c945;
	--f3d-paper: #fffdf2;
	--f3d-muted: #52525b;
	box-sizing: border-box;
	width: min(1120px, calc(100% - 32px));
	margin: 0 auto;
	padding: clamp(1.5rem, 4vw, 3rem) 0 clamp(3rem, 6vw, 5rem);
	color: var(--f3d-black);
	background: #ffffff;
}

.f3d-home-landing *,
.f3d-home-landing *::before,
.f3d-home-landing *::after {
	box-sizing: border-box;
}

.f3d-home-landing__hero {
	display: grid;
	grid-template-columns: minmax(0, 0.78fr) minmax(360px, 1.22fr);
	gap: clamp(1.5rem, 4vw, 3rem);
	align-items: center;
	min-height: min(680px, calc(100vh - 180px));
	padding: clamp(1rem, 3vw, 2.5rem) 0 clamp(2rem, 5vw, 4rem);
}

.f3d-home-landing__hero-copy {
	max-width: 520px;
}

.f3d-home-landing__kicker {
	display: inline-block;
	margin: 0 0 0.8rem;
	padding: 0.35rem 0.65rem;
	color: var(--f3d-black);
	background: var(--f3d-yellow);
	border: 2px solid var(--f3d-black);
	border-radius: 6px;
	font-size: 0.9rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.f3d-home-landing h1,
.f3d-home-landing h2 {
	color: var(--f3d-black);
	margin: 0 0 1rem;
	font-size: clamp(2.2rem, 5vw, 5rem);
	line-height: 0.95;
	letter-spacing: 0;
}

.f3d-home-landing h2 {
	font-size: clamp(2rem, 3.4vw, 3.4rem);
}

.f3d-home-landing h3 {
	color: var(--f3d-black);
	margin: 0 0 0.55rem;
	font-size: clamp(1.35rem, 1.2rem + 0.4vw, 1.65rem);
	line-height: 1;
	letter-spacing: 0;
}

.f3d-home-landing__hero p,
.f3d-home-landing__lead {
	max-width: 720px;
	margin: 0;
	color: var(--f3d-muted);
	font-size: clamp(1.1rem, 1vw + 0.9rem, 1.45rem);
	line-height: 1.45;
}

.f3d-home-landing__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
	margin-top: 1.4rem;
}

.f3d-home-landing__button {
	position: relative;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: auto;
	padding: 0.85rem 1.1rem;
	color: var(--f3d-black);
	font-weight: 900;
	line-height: 1.1;
	text-align: center;
	text-decoration: none;
	background: var(--f3d-yellow);
	border: 2px solid var(--f3d-black);
	border-radius: 8px;
	box-shadow: 4px 4px 0 var(--f3d-black);
}

.f3d-home-landing__button:hover,
.f3d-home-landing__button:focus {
	color: #ffffff;
	text-decoration: none;
	background: var(--f3d-black);
	outline: none;
}

.f3d-home-landing__button--ghost {
	background: #ffffff;
	box-shadow: 4px 4px 0 var(--f3d-red);
}

.f3d-home-landing__hero-art {
	position: relative;
	display: block;
	min-height: clamp(300px, 34vw, 460px);
	overflow: hidden;
	color: var(--f3d-black);
	text-decoration: none;
	background: linear-gradient(135deg, var(--f3d-paper), #ffffff);
	border: 3px solid var(--f3d-black);
	border-radius: 10px;
	box-shadow: 8px 8px 0 var(--f3d-yellow);
}

.f3d-home-landing__hero-art::before {
	content: "";
	position: absolute;
	inset: 12%;
	background:
		radial-gradient(circle at 30% 35%, var(--f3d-red) 0 12%, transparent 13%),
		radial-gradient(circle at 70% 55%, var(--f3d-yellow) 0 16%, transparent 17%),
		linear-gradient(145deg, transparent 0 42%, var(--f3d-black) 43% 48%, transparent 49%);
	transform: rotate(-5deg);
}

.f3d-home-landing__hero-art span {
	position: absolute;
	bottom: 1.3rem;
	left: 1.5rem;
	font-size: clamp(2rem, 4vw, 4rem);
	font-weight: 900;
	line-height: 0.9;
	text-transform: uppercase;
}

.f3d-home-landing__hero-art--image::before {
	display: none;
}

.f3d-home-landing__hero-art--image img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: clamp(300px, 34vw, 460px);
	object-fit: contain;
	background: #ffffff;
}

.f3d-home-landing__section {
	margin: clamp(2rem, 5vw, 4rem) 0;
}

.f3d-home-landing__grid {
	display: grid;
	gap: 1rem;
}

.f3d-home-landing__grid--3,
.f3d-home-landing__grid--4,
.f3d-home-landing__grid--6 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.f3d-home-landing__grid--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.f3d-home-landing__grid--visual-merch {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.f3d-home-landing__card {
	position: relative;
	z-index: 0;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: 1.1rem;
	background: #ffffff;
	border: 2px solid var(--f3d-black);
	border-radius: 8px;
	box-shadow: 4px 4px 0 var(--f3d-yellow);
}

.f3d-home-landing__card--red {
	box-shadow: 4px 4px 0 var(--f3d-red);
}

.f3d-home-landing__card--canvas {
	background: var(--f3d-paper);
	box-shadow: 4px 4px 0 var(--f3d-red);
}

.f3d-home-landing__card p {
	margin: 0.35rem 0 1rem;
	color: var(--f3d-muted);
	line-height: 1.45;
}

.f3d-home-landing__price {
	display: inline-flex;
	align-self: flex-start;
	margin: 0.1rem 0 1rem !important;
	padding: 0.25rem 0.55rem;
	color: var(--f3d-black) !important;
	font-weight: 900;
	background: var(--f3d-yellow);
	border: 2px solid var(--f3d-black);
	border-radius: 999px;
}

.f3d-home-landing__section-cta {
	margin: 0.2rem 0 1.1rem;
}

.f3d-home-landing__feature {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(360px, 1.1fr);
	gap: clamp(1.25rem, 3vw, 2.5rem);
	align-items: center;
	padding: clamp(1.25rem, 3vw, 2rem);
	background: var(--f3d-paper);
	border: 2px solid var(--f3d-black);
	border-radius: 8px;
	box-shadow: 6px 6px 0 var(--f3d-yellow);
}

.f3d-home-landing__feature--dark {
	color: #ffffff;
	background: var(--f3d-black);
	box-shadow: 6px 6px 0 var(--f3d-red);
}

.f3d-home-landing__feature-copy {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
}

.f3d-home-landing__feature-copy h2 {
	font-size: clamp(2rem, 3vw, 3.25rem);
}

.f3d-home-landing__feature-copy p {
	margin: 0 0 1rem;
	color: var(--f3d-muted);
	font-size: 1.05rem;
	line-height: 1.55;
}

.f3d-home-landing__feature--dark h2,
.f3d-home-landing__feature--dark p {
	color: #ffffff;
}

.f3d-home-landing__feature-media {
	display: block;
	overflow: hidden;
	background: #ffffff;
	border: 2px solid var(--f3d-black);
	border-radius: 8px;
}

.f3d-home-landing__feature-media img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	height: auto;
	object-fit: contain;
	background: #ffffff;
}

.f3d-home-landing__visual-card {
	overflow: hidden;
	padding: 0;
}

.f3d-home-landing__visual-card-media {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #ffffff;
}

.f3d-home-landing__visual-card-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	background: #ffffff;
}

.f3d-home-landing__visual-card-body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	padding: 1.1rem;
}

.f3d-home-landing__character-placeholder {
	position: relative;
	z-index: 0;
	display: grid;
	aspect-ratio: 6 / 4;
	min-height: 150px;
	margin-bottom: 1rem;
	overflow: hidden;
	place-items: center;
	background:
		radial-gradient(circle at 28% 30%, var(--f3d-yellow) 0 14%, transparent 15%),
		radial-gradient(circle at 72% 62%, var(--f3d-red) 0 12%, transparent 13%),
		linear-gradient(135deg, var(--f3d-paper), #ffffff);
	border: 2px solid var(--f3d-black);
	border-radius: 8px;
}

.f3d-home-landing__character-placeholder::before {
	content: "";
	position: absolute;
	inset: 22% 14%;
	border: 3px solid var(--f3d-black);
	border-right-width: 10px;
	border-left-width: 10px;
	border-radius: 999px;
	transform: rotate(-7deg);
}

.f3d-home-landing__character-placeholder--image {
	min-height: 0;
	background: var(--f3d-paper);
}

.f3d-home-landing__character-placeholder--image::before {
	display: none;
}

.f3d-home-landing__character-placeholder--image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	pointer-events: none;
}

.f3d-home-landing__character-placeholder span {
	position: relative;
	z-index: 1;
	max-width: 80%;
	padding: 0.35rem 0.55rem;
	color: var(--f3d-black);
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
	background: var(--f3d-yellow);
	border: 2px solid var(--f3d-black);
	border-radius: 6px;
}

.f3d-home-landing__character-placeholder--image span {
	display: none;
}

.f3d-home-landing__note {
	margin: 1rem 0 0;
	padding: 1rem;
	font-weight: 700;
	line-height: 1.45;
	background: var(--f3d-paper);
	border-left: 8px solid var(--f3d-red);
	border-radius: 8px;
}

.f3d-home-landing__drop {
	padding: 1.25rem;
	background: var(--f3d-paper);
	border: 2px dashed var(--f3d-black);
	border-radius: 10px;
}

.f3d-home-landing__drop ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin-bottom: 0;
}

.f3d-home-landing__drop ul.products::before,
.f3d-home-landing__drop ul.products::after {
	display: none;
}

.f3d-home-landing__drop ul.products li.product {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
}

.f3d-home-landing__drop .woocommerce-result-count,
.f3d-home-landing__drop .woocommerce-ordering {
	display: none;
}

.f3d-home-landing__manual-products {
	margin: 0;
}

.f3d-home-landing__band {
	padding: clamp(1.3rem, 3vw, 2rem);
	color: #ffffff;
	background: var(--f3d-black);
	border: 2px solid var(--f3d-black);
	border-radius: 10px;
	box-shadow: 6px 6px 0 var(--f3d-red);
}

.f3d-home-landing__band p {
	color: #f4f4f5;
}

.f3d-home-landing__band h2,
.f3d-home-landing__band h3,
.f3d-home-landing__band strong {
	color: #ffffff !important;
}

.f3d-home-landing__band .f3d-home-landing__button,
.f3d-home-landing__band .f3d-home-landing__button:visited {
	color: var(--f3d-black);
	background: var(--f3d-yellow);
}

.f3d-home-landing__band .f3d-home-landing__button:hover,
.f3d-home-landing__band .f3d-home-landing__button:focus {
	color: #ffffff;
	background: var(--f3d-red);
}

.f3d-home-landing__band .f3d-home-landing__button {
	box-shadow: 4px 4px 0 var(--f3d-red);
}

.home main > .wp-block-group.alignwide > .wp-block-image,
.home main > .wp-block-group.alignwide > .wp-block-columns:not(:has(.wp-block-woocommerce-product-collection)):not(:has(.wc-block-product-template)),
.home main > .wp-block-group.alignwide:has(> .wp-block-heading:first-child) > .wp-block-heading,
.home main > .wp-block-group.alignwide:has(> .wp-block-heading:first-child) > .wp-block-woocommerce-product-collection,
.home main > .wp-block-group.alignwide:has(.wp-block-heading:only-child) > .wp-block-group.alignwide,
.home .variant-explainer {
	width: min(100% - 2rem, 1024px) !important;
	max-width: 1024px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.home main > .wp-block-group.alignwide > .wp-block-image img,
.home main > .wp-block-group.alignwide > .wp-block-columns:not(:has(.wp-block-woocommerce-product-collection)):not(:has(.wc-block-product-template)) img {
	max-width: 100%;
}

@media (max-width: 520px) {
	.home main > .wp-block-group.alignwide > .wp-block-image,
	.home main > .wp-block-group.alignwide > .wp-block-columns:not(:has(.wp-block-woocommerce-product-collection)):not(:has(.wc-block-product-template)),
	.home main > .wp-block-group.alignwide:has(> .wp-block-heading:first-child) > .wp-block-heading,
	.home main > .wp-block-group.alignwide:has(> .wp-block-heading:first-child) > .wp-block-woocommerce-product-collection,
	.home main > .wp-block-group.alignwide:has(.wp-block-heading:only-child) > .wp-block-group.alignwide,
	.home .variant-explainer {
		width: min(100% - 1.5rem, 1024px) !important;
	}
}

@media (max-width: 850px) {
	.f3d-home-landing__hero,
	.f3d-home-landing__grid--3,
	.f3d-home-landing__grid--4,
	.f3d-home-landing__grid--6,
	.f3d-home-landing__grid--visual-merch,
	.f3d-home-landing__feature,
	.f3d-home-chaos-party .f3d-universe-character-grid,
	.f3d-home-landing__drop ul.products {
		grid-template-columns: 1fr;
	}

	.f3d-home-landing__hero {
		min-height: 0;
	}

	.f3d-home-landing__hero-art {
		min-height: 260px;
	}

	.f3d-universe-story table {
		display: block;
		width: 100%;
		max-width: 100%;
		overflow: visible;
		border: 0;
		background: transparent;
		table-layout: fixed;
	}

	.f3d-universe-story thead,
	.f3d-universe-story th {
		display: none;
	}

	.f3d-universe-story tbody,
	.f3d-universe-story tr,
	.f3d-universe-story td {
		display: block;
		width: 100%;
		max-width: 100%;
	}

	.f3d-universe-story td {
		min-width: 0;
		padding: 0.55rem 0.75rem;
		border: 0;
		border-bottom: 1px solid rgba(9, 9, 11, 0.12);
		border-left: 0 !important;
		overflow-wrap: anywhere;
		word-break: normal;
	}

	.f3d-universe-story tr {
		margin: 0 0 0.9rem;
		border: 1.5px solid #09090b;
		border-radius: 8px;
		overflow: hidden;
		background: #ffffff;
	}

	.f3d-universe-story tr:last-child {
		margin-bottom: 0;
	}

	.f3d-universe-story td:last-child {
		border-bottom: 0;
	}

	.f3d-universe-story td::before {
		display: block;
		margin-bottom: 0.15rem;
		color: #e44637;
		font-size: 0.78rem;
		font-weight: 900;
		line-height: 1.2;
		text-transform: uppercase;
	}

	.f3d-universe-story td:nth-child(1)::before {
		content: "Typ";
	}

	.f3d-universe-story td:nth-child(2)::before {
		content: "Obsah";
	}

	.f3d-universe-story td:nth-child(3)::before {
		content: "Garance";
	}

	.f3d-universe-story td:nth-child(4)::before {
		content: "Pro koho";
	}
}

@media (max-width: 560px) {
	.f3d-home-landing {
		width: min(100% - 24px, 1120px);
	}
}

.product-info-panel {
	margin: 0 0 1.25rem;
	padding: 1rem;
	border: 1.5px solid #f6c945;
	border-radius: 8px;
	background: #09090b;
	color: #f8fafc;
	box-shadow: 4px 4px 0 #f6c945;
}

.product-info-panel-stack {
	display: grid;
	gap: 1rem;
	margin: 0 0 1.25rem;
}

.product-info-panel-stack .product-info-panel {
	margin: 0;
}

.product-info-panel h2 {
	margin: 0 0 0.42rem;
	font-size: 1.25rem;
	line-height: 1.15;
	letter-spacing: 0;
	color: #f8fafc !important;
}

.product-info-panel dl {
	display: grid;
	grid-template-columns: minmax(7.5rem, 0.42fr) 1fr;
	gap: 0.32rem 0.85rem;
	margin: 0;
	font-size: 0.95rem;
	line-height: 1.4;
}

.product-info-panel dt {
	color: #f6c945;
	font-weight: 800;
}

.product-info-panel dd {
	margin: 0;
}

.product-info-panel__notes {
	display: grid;
	gap: 0.65rem;
	margin-top: 0.85rem;
	padding-top: 0.85rem;
	border-top: 1px solid rgba(246, 201, 69, 0.32);
	font-size: 0.92rem;
	line-height: 1.5;
	color: #f8fafc;
}

.product-info-panel__notes p {
	margin: 0;
}

.product-info-panel--merch-character,
.product-info-panel--merch-audience {
	background: #fffdf2;
	color: #09090b;
	border-color: #09090b;
	box-shadow: 4px 4px 0 rgba(9, 9, 11, 0.14);
}

.product-info-panel--merch-character h2,
.product-info-panel--merch-audience h2 {
	color: #09090b !important;
}

.product-info-panel p {
	margin: 0.6rem 0 0;
	font-size: 0.94rem;
	line-height: 1.5;
}

.product-info-panel ul {
	display: grid;
	gap: 0.35rem;
	margin: 0.7rem 0 0;
	padding: 0;
	list-style: none;
}

.product-info-panel li {
	position: relative;
	padding-left: 1rem;
	font-size: 0.94rem;
	line-height: 1.4;
}

.product-info-panel li::before {
	content: "";
	position: absolute;
	top: 0.58em;
	left: 0;
	width: 0.38rem;
	height: 0.38rem;
	background: #f6c945;
	border-radius: 999px;
	transform: translateY(-50%);
}

.product-info-panel__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 0.8rem;
	padding: 0.62rem 0.82rem;
	color: #09090b;
	font-weight: 900;
	line-height: 1.1;
	text-decoration: none;
	background: #f6c945;
	border: 1.5px solid #09090b;
	border-radius: 8px;
	box-shadow: 3px 3px 0 #09090b;
}

.product-info-panel__button:hover,
.product-info-panel__button:focus {
	color: #fffdf2;
	background: #e44637;
	outline: none;
}

@media (max-width: 600px) {
	.single-product .wp-block-woocommerce-product-details table,
	.single-product .woocommerce-product-details__short-description table,
	.single-product .woocommerce-Tabs-panel--description table {
		table-layout: auto;
	}

	.single-product .wp-block-woocommerce-product-details table th,
	.single-product .wp-block-woocommerce-product-details table td,
	.single-product .woocommerce-product-details__short-description table th,
	.single-product .woocommerce-product-details__short-description table td,
	.single-product .woocommerce-Tabs-panel--description table th,
	.single-product .woocommerce-Tabs-panel--description table td {
		padding: 0.62rem 0.7rem;
	}

	.single-product .wp-block-woocommerce-product-details table th:first-child,
	.single-product .wp-block-woocommerce-product-details table td:first-child,
	.single-product .woocommerce-product-details__short-description table th:first-child,
	.single-product .woocommerce-product-details__short-description table td:first-child,
	.single-product .woocommerce-Tabs-panel--description table th:first-child,
	.single-product .woocommerce-Tabs-panel--description table td:first-child {
		width: 42%;
	}

	.product-info-panel dl {
		grid-template-columns: 1fr;
		gap: 0.2rem;
	}

	.product-info-panel dd + dt {
		margin-top: 0.45rem;
	}

	.cart-confidence-panel ul,
	.checkout-confidence-panel ul {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 760px) {
	.variant-explainer {
		width: min(100% - 24px, 1120px);
		box-shadow: 4px 4px 0 #f6c945;
	}

	.variant-grid {
		grid-template-columns: 1fr;
	}
}

.f3d-universe-page {
	width: min(100% - 2rem, 1120px);
	max-width: 1120px;
	margin: 0 auto;
	padding: 2rem 0 4rem;
	color: #09090b;
}

.f3d-universe-hero {
	display: grid !important;
	grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
	gap: 2rem;
	align-items: center;
	margin-bottom: 3rem;
}

.f3d-universe-kicker {
	margin: 0 0 0.75rem;
	color: #e44637;
	font-weight: 900;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.f3d-universe-hero h1 {
	margin: 0 0 1rem;
	font-size: clamp(2.4rem, 1.8rem + 2.6vw, 5rem);
	line-height: 1;
	letter-spacing: 0;
}

.f3d-universe-lead {
	margin: 0 0 1rem;
	font-size: clamp(1.25rem, 1.05rem + 0.7vw, 1.7rem);
	font-weight: 800;
	line-height: 1.25;
}

.f3d-universe-hero__image {
	max-width: 460px;
	margin: 0;
}

.f3d-universe-hero__image img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	border: 2px solid #09090b;
	border-radius: 8px;
	background: #fffdf2;
	box-shadow: 6px 6px 0 #f6c945;
}

.f3d-universe-button,
.f3d-universe-cta a,
.f3d-universe-card a,
.f3d-universe-link {
	display: inline-block;
	margin-top: 1rem;
	padding: 0.75rem 1rem;
	border-radius: 6px;
	background: #f6c945;
	color: #09090b;
	font-weight: 900;
	line-height: 1.2;
	text-decoration: none;
}

.f3d-universe-button:hover,
.f3d-universe-cta a:hover,
.f3d-universe-card a:hover,
.f3d-universe-link:hover {
	background: #09090b;
	color: #f8fafc;
	text-decoration: none;
}

.f3d-universe-story,
.f3d-universe-callout,
.f3d-universe-character,
.f3d-universe-variant-explainer,
.f3d-universe-cta {
	margin-top: 1.5rem;
	padding: clamp(1.25rem, 3vw, 2rem);
	border: 1.5px solid #09090b;
	border-radius: 8px;
	background: #fffdf2;
	box-shadow: 4px 4px 0 #f6c945;
}

.f3d-universe-story h2,
.f3d-universe-character h2,
.f3d-universe-variant-explainer h2,
.f3d-universe-cta h2 {
	margin: 0 0 0.85rem;
	font-size: clamp(1.65rem, 1.2rem + 1.3vw, 2.5rem);
	line-height: 1.08;
	letter-spacing: 0;
}

.f3d-universe-story p,
.f3d-universe-character p,
.f3d-universe-card p,
.f3d-universe-variant-card p,
.f3d-universe-cta p {
	line-height: 1.55;
}

.f3d-universe-story table {
	width: 100%;
	margin: 1rem 0 0;
	border-collapse: separate;
	border-spacing: 0;
	border: 1.5px solid #09090b;
	border-radius: 8px;
	overflow: hidden;
	background: #ffffff;
	table-layout: fixed;
}

.f3d-universe-story th,
.f3d-universe-story td {
	padding: 0.72rem 0.85rem;
	border: 0;
	border-bottom: 1px solid rgba(9, 9, 11, 0.14);
	vertical-align: top;
	line-height: 1.42;
	text-align: left;
	overflow-wrap: anywhere;
}

.f3d-universe-story th {
	color: #09090b;
	font-weight: 900;
	background: #fff8dc;
}

.f3d-universe-story tr:last-child td,
.f3d-universe-story tr:last-child th {
	border-bottom: 0;
}

.f3d-universe-story th + th,
.f3d-universe-story td + td {
	border-left: 1px solid rgba(9, 9, 11, 0.14);
}

.f3d-universe-callout {
	background: #09090b;
	color: #f8fafc;
	box-shadow: 4px 4px 0 #e44637;
}

.f3d-universe-callout p {
	margin: 0;
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1.55;
}

.f3d-universe-character-grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
	align-items: stretch;
	margin-top: 1.5rem;
}

.f3d-universe-card {
	position: relative;
	z-index: 0;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	height: 100%;
	min-height: 100%;
	padding: 1rem;
	border: 1.5px solid #09090b;
	border-radius: 8px;
	background: #ffffff;
}

.f3d-universe-card h3 {
	margin: 0 0 0.5rem;
	font-size: 1.45rem;
	line-height: 1.05;
	letter-spacing: 0;
}

.f3d-universe-card p {
	margin-bottom: 1rem;
}

.f3d-universe-card > :last-child {
	margin-top: auto;
}

.f3d-universe-card p:has(> a) {
	margin-top: auto;
	margin-bottom: 0;
}

.f3d-universe-card p:has(> a) a {
	margin-top: 0;
}

.f3d-universe-card a {
	position: relative;
	z-index: 2;
	align-self: flex-start;
	margin-top: auto;
}

.f3d-home-chaos-party {
	width: min(1120px, calc(100% - 32px));
	margin: clamp(2rem, 4vw, 3.5rem) auto 0;
}

.f3d-home-chaos-party,
.home .variant-explainer {
	box-sizing: border-box;
	width: min(100% - 2rem, 1024px) !important;
	max-width: 1024px !important;
}

.f3d-home-chaos-party__intro {
	max-width: 820px;
	margin-bottom: 0;
}

.f3d-home-chaos-party .f3d-universe-character-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.f3d-home-chaos-party__kicker {
	margin: 0 0 0.35rem;
}

.f3d-universe-variant-explainer {
	border-width: 2px;
	box-shadow: 6px 6px 0 #f6c945;
}

.f3d-universe-variant-intro {
	max-width: 760px;
	margin: 0.75rem 0 1.25rem;
	font-size: 1.05rem;
	line-height: 1.55;
}

.f3d-universe-variant-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.f3d-universe-variant-card {
	padding: 1rem;
	border: 1.5px solid #09090b;
	border-radius: 8px;
	background: #ffffff;
}

.f3d-universe-variant-card h3 {
	margin: 0;
	font-size: 1.45rem;
	line-height: 1;
	letter-spacing: 0;
}

.f3d-universe-variant-card p {
	margin: 0.55rem 0 0;
}

.f3d-universe-variant-kicker {
	font-weight: 800;
}

.f3d-universe-variant-basic {
	border-left: 8px solid #09090b;
}

.f3d-universe-variant-sq {
	border-left: 8px solid #f6c945;
}

.f3d-universe-variant-hq {
	border-left: 8px solid #e44637;
}

.f3d-universe-variant-rules {
	margin: 1rem 0 0;
	padding-top: 1rem;
	border-top: 1px solid rgba(9, 9, 11, 0.18);
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.45;
}

.f3d-universe-cta {
	background: #fffdf2;
	color: #09090b;
	box-shadow: 4px 4px 0 #f6c945;
}

.f3d-universe-cta a:hover {
	background: #09090b;
	color: #f8fafc;
}

@media (max-width: 900px) {
	.f3d-custom-related-products__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.f3d-universe-hero,
	.f3d-universe-character-grid,
	.f3d-universe-variant-grid {
		grid-template-columns: 1fr;
	}

	.f3d-home-chaos-party .f3d-universe-character-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.f3d-universe-hero__image {
		max-width: 420px;
	}
}

@media (max-width: 600px) {
	.f3d-custom-related-products {
		width: min(100% - 24px, 1120px) !important;
	}

	.f3d-custom-related-products__grid {
		grid-template-columns: 1fr !important;
	}

	.f3d-home-chaos-party {
		width: min(100% - 24px, 1120px);
	}

	.f3d-home-chaos-party,
	.home .variant-explainer {
		width: min(100% - 1.5rem, 1024px) !important;
	}

	.f3d-home-chaos-party .f3d-universe-character-grid {
		grid-template-columns: 1fr;
	}
}
.f3d-level-intro {
	--accent: #f6c945;
	width: min(1360px, calc(100% - 28px));
	margin: 0 auto clamp(34px, 6vw, 72px);
	color: #09090b;
}

.f3d-level-intro--hq {
	--accent: #e44637;
}

.f3d-level-intro * {
	box-sizing: border-box;
}

.f3d-level-intro > p:empty {
	display: none !important;
}

.f3d-level-hero {
	padding: clamp(34px, 6vw, 72px) 0 28px;
}

.f3d-level-kicker {
	display: inline-flex;
	margin: 0 0 14px;
	padding: 7px 11px;
	color: #fffdf2;
	font-size: 0.78rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	background: #09090b;
	border: 2px solid #09090b;
	border-radius: 999px;
	box-shadow: 4px 4px 0 #f6c945;
}

.f3d-level-intro h1 {
	max-width: 980px;
	margin: 0;
	font-size: clamp(3rem, 2rem + 4.2vw, 6.4rem);
	font-weight: 950;
	line-height: 0.92;
	letter-spacing: 0;
}

.f3d-level-lead {
	max-width: 850px;
	margin: 20px 0 0;
	font-size: clamp(1.08rem, 1rem + 0.35vw, 1.24rem);
	font-weight: 700;
	line-height: 1.55;
}

.f3d-level-text {
	max-width: 850px;
	margin: 14px 0 0;
	color: #52525b;
	font-size: 1rem;
	line-height: 1.62;
}

.f3d-level-actions,
.f3d-level-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 24px;
}

.f3d-level-tabs {
	gap: 8px;
	margin-top: 28px;
}

.f3d-level-button,
.f3d-level-tabs a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 18px;
	color: #09090b !important;
	font-weight: 950;
	line-height: 1.1;
	text-decoration: none !important;
	background: #f6c945;
	border: 2px solid #09090b;
	border-radius: 8px;
	box-shadow: 4px 4px 0 #09090b;
}

.f3d-level-button--dark {
	color: #fffdf2 !important;
	background: #09090b;
	box-shadow: 4px 4px 0 #e44637;
}

.f3d-level-tabs a {
	min-height: 40px;
	padding: 9px 16px;
	font-weight: 850;
	background: #fff;
	box-shadow: none;
}

.f3d-level-tabs a[aria-current="page"] {
	background: #f6c945;
	box-shadow: 3px 3px 0 #09090b;
}

.f3d-level-intro--hq .f3d-level-tabs a[aria-current="page"] {
	color: #fffdf2 !important;
	background: #09090b;
	box-shadow: 3px 3px 0 #e44637;
}

.f3d-level-button:hover,
.f3d-level-button:focus,
.f3d-level-tabs a:hover,
.f3d-level-tabs a:focus {
	color: #fffdf2 !important;
	background: #e44637;
	outline: none;
}

.f3d-level-button--dark:hover,
.f3d-level-button--dark:focus {
	color: #09090b !important;
	background: #f6c945;
}

.f3d-level-anchor {
	display: block;
	position: relative;
	top: -24px;
	visibility: hidden;
}

@media (max-width: 600px) {
	.f3d-level-intro {
		width: min(100% - 22px, 1360px);
	}

	.f3d-level-actions,
	.f3d-level-button {
		width: 100%;
	}

	.f3d-level-tabs {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.f3d-level-tabs a {
		padding: 9px 8px;
	}
}

.f3d-figures-intro {
	--accent: #f6c945;
	width: min(1360px, calc(100% - 28px));
	margin: 0 auto clamp(34px, 6vw, 72px);
	color: #09090b;
}

.f3d-figures-intro * {
	box-sizing: border-box;
}

.f3d-figures-hero {
	padding: clamp(34px, 6vw, 72px) 0 28px;
}

.f3d-figures-kicker {
	display: inline-flex;
	margin: 0 0 14px;
	padding: 7px 11px;
	color: #fffdf2;
	font-size: 0.78rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	background: #09090b;
	border: 2px solid #09090b;
	border-radius: 999px;
	box-shadow: 4px 4px 0 var(--accent);
}

.f3d-figures-intro h1 {
	max-width: 980px;
	margin: 0;
	font-size: clamp(3rem, 2rem + 4.2vw, 6.4rem);
	font-weight: 950;
	line-height: 0.92;
	letter-spacing: 0;
}

.f3d-figures-lead {
	max-width: 850px;
	margin: 20px 0 0;
	font-size: clamp(1.08rem, 1rem + 0.35vw, 1.24rem);
	font-weight: 700;
	line-height: 1.55;
}

.f3d-figures-text {
	max-width: 850px;
	margin: 14px 0 0;
	color: #52525b;
	font-size: 1rem;
	line-height: 1.62;
}

.f3d-figures-actions,
.f3d-figures-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 24px;
}

.f3d-figures-tabs {
	gap: 8px;
	margin-top: 28px;
}

.f3d-figures-button,
.f3d-figures-tabs a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 18px;
	color: #09090b !important;
	font-weight: 950;
	line-height: 1.1;
	text-decoration: none !important;
	background: var(--accent);
	border: 2px solid #09090b;
	border-radius: 8px;
	box-shadow: 4px 4px 0 #09090b;
}

.f3d-figures-button--dark {
	color: #fffdf2 !important;
	background: #09090b;
	box-shadow: 4px 4px 0 #e44637;
}

.f3d-figures-tabs a {
	min-height: 40px;
	padding: 9px 16px;
	font-weight: 850;
	background: #fff;
	box-shadow: none;
}

.f3d-figures-button:hover,
.f3d-figures-button:focus,
.f3d-figures-tabs a:hover,
.f3d-figures-tabs a:focus {
	color: #fffdf2 !important;
	background: #e44637;
	outline: none;
}

.f3d-figures-button--dark:hover,
.f3d-figures-button--dark:focus {
	color: #09090b !important;
	background: var(--accent);
}

.f3d-figures-anchor {
	display: block;
	position: relative;
	top: -24px;
	visibility: hidden;
}

@media (max-width: 600px) {
	.f3d-figures-intro {
		width: min(100% - 22px, 1360px);
	}

	.f3d-figures-actions,
	.f3d-figures-button {
		width: 100%;
	}

	.f3d-figures-tabs {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.f3d-figures-tabs a {
		padding: 9px 8px;
	}
}

/* Universe landing page. */
.f3d-universe-page {
	--black: #09090b;
	--cream: #fffdf2;
	--yellow: #f6c945;
	--red: #e44637;
	--muted: #52525b;
	box-sizing: border-box;
	width: min(1360px, calc(100% - 28px));
	max-width: 1360px;
	margin: 0 auto 64px;
	padding: 0;
	color: var(--black);
}

.f3d-universe-page *,
.f3d-universe-page *::before,
.f3d-universe-page *::after {
	box-sizing: border-box;
}

.f3d-universe-page h1,
.f3d-universe-page h2,
.f3d-universe-page h3,
.f3d-universe-page p {
	letter-spacing: 0;
}

.f3d-universe-page h1,
.f3d-universe-page h2,
.f3d-universe-page h3,
.f3d-universe-page p {
	margin: 0;
}

.f3d-universe-hero {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 0.78fr);
	gap: clamp(28px, 5vw, 72px);
	align-items: center;
	margin: 0;
	padding: clamp(34px, 6vw, 76px) 0 clamp(38px, 6vw, 78px);
}

.f3d-universe-kicker {
	display: inline-flex;
	width: fit-content;
	margin: 0 0 14px;
	padding: 7px 11px;
	color: var(--cream);
	font-size: 0.78rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	background: var(--black);
	border: 2px solid var(--black);
	border-radius: 999px;
	box-shadow: 4px 4px 0 var(--yellow);
}

.f3d-universe-hero h1 {
	max-width: 880px;
	font-size: clamp(3rem, 2rem + 4.2vw, 6.4rem);
	font-weight: 950;
	line-height: 0.92;
}

.f3d-universe-lead {
	max-width: 820px;
	margin-top: 20px !important;
	font-size: clamp(1.08rem, 1rem + 0.35vw, 1.28rem);
	font-weight: 800;
	line-height: 1.5;
}

.f3d-universe-text {
	max-width: 840px;
	margin-top: 14px !important;
	color: var(--muted);
	font-size: 1rem;
	line-height: 1.62;
}

.f3d-universe-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 26px;
}

.f3d-universe-button,
.f3d-universe-page .f3d-universe-card__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	margin: 0;
	padding: 12px 18px;
	color: var(--black) !important;
	font-weight: 950;
	line-height: 1.1;
	text-decoration: none !important;
	background: var(--yellow);
	border: 2px solid var(--black);
	border-radius: 8px;
	box-shadow: 4px 4px 0 var(--black);
}

.f3d-universe-button:hover,
.f3d-universe-button:focus,
.f3d-universe-page .f3d-universe-card__button:hover,
.f3d-universe-page .f3d-universe-card__button:focus {
	color: var(--cream) !important;
	background: var(--red);
	outline: none;
}

.f3d-universe-button--dark {
	color: var(--cream) !important;
	background: var(--black);
	box-shadow: 4px 4px 0 var(--red);
}

.f3d-universe-button--dark:hover,
.f3d-universe-button--dark:focus {
	color: var(--black) !important;
	background: var(--yellow);
}

.f3d-universe-hero__image {
	display: block;
	width: 100%;
	max-width: 520px;
	margin: 0 0 0 auto;
	background: #fff;
	border: 2px solid var(--black);
	border-radius: 8px;
	box-shadow: 8px 8px 0 var(--yellow);
	overflow: hidden;
}

.f3d-universe-hero__image img {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
	background: #fff;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.f3d-universe-story,
.f3d-universe-character,
.f3d-universe-variant-explainer,
.f3d-universe-cta {
	margin: clamp(34px, 6vw, 76px) 0 0;
	padding: clamp(22px, 4vw, 42px);
	background: var(--cream);
	border: 2px solid var(--black);
	border-radius: 8px;
	box-shadow: 7px 7px 0 var(--yellow);
}

.f3d-universe-story {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
	gap: clamp(24px, 4vw, 48px);
	align-items: stretch;
}

/* The comparison is a full-width data block, not a two-column story. */
.f3d-chaos-boxes-page .f3d-box-comparison,
.f3d-chaos-boxes-page .f3d-universe-story:has(> table) {
	display: block;
}

.f3d-chaos-boxes-page .f3d-box-comparison > h2,
.f3d-chaos-boxes-page .f3d-universe-story:has(> table) > h2 {
	margin-bottom: 1.25rem;
}

.f3d-chaos-boxes-page .f3d-box-comparison__table {
	width: 100%;
	min-width: 0;
}

.f3d-chaos-boxes-page .f3d-box-paths,
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	align-items: stretch;
}

.f3d-chaos-boxes-page .f3d-box-paths > h2,
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > h2 {
	grid-column: 1 / 2;
	margin: 0;
}

.f3d-chaos-boxes-page .f3d-box-paths > p,
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > p {
	margin: 0;
}

.f3d-chaos-boxes-page .f3d-box-paths > p:first-of-type,
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > p:first-of-type {
	grid-column: 2 / 4;
	font-size: 1.05rem;
	line-height: 1.58;
}

.f3d-chaos-boxes-page .f3d-box-paths > p:nth-of-type(2),
.f3d-chaos-boxes-page .f3d-box-paths > p:nth-of-type(3),
.f3d-chaos-boxes-page .f3d-box-paths > p:nth-of-type(4),
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > p:nth-of-type(2),
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > p:nth-of-type(3),
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > p:nth-of-type(4) {
	min-height: 100%;
	padding: 1rem 1.05rem;
	background: #ffffff;
	border: 1.5px solid #09090b;
	border-radius: 8px;
}

.f3d-chaos-boxes-page .f3d-box-paths > p:nth-of-type(2),
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > p:nth-of-type(2) {
	border-left: 6px solid #f6c945;
}

.f3d-chaos-boxes-page .f3d-box-paths > p:nth-of-type(3),
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > p:nth-of-type(3) {
	border-left: 6px solid #09090b;
}

.f3d-chaos-boxes-page .f3d-box-paths > p:nth-of-type(4),
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > p:nth-of-type(4) {
	border-left: 6px solid #e44637;
}

.f3d-chaos-boxes-page .f3d-box-paths > p:last-child,
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > p:last-child {
	grid-column: 1 / -1;
	padding-top: 0.15rem;
	font-weight: 700;
}

.f3d-chaos-boxes-page .f3d-box-paths + .f3d-universe-callout,
.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story + .f3d-universe-callout {
	margin-top: 1.25rem;
}

.f3d-chaos-boxes-page .f3d-box-choice-guide,
.f3d-chaos-boxes-page .f3d-universe-story:has(> table) + .f3d-universe-story {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	align-items: stretch;
}

.f3d-chaos-boxes-page .f3d-box-choice-guide > h2,
.f3d-chaos-boxes-page .f3d-universe-story:has(> table) + .f3d-universe-story > h2 {
	grid-column: 1 / -1;
	margin: 0 0 0.25rem;
}

.f3d-chaos-boxes-page .f3d-box-choice-guide > p,
.f3d-chaos-boxes-page .f3d-universe-story:has(> table) + .f3d-universe-story > p {
	margin: 0;
	padding: 1rem 1.05rem;
	background: #ffffff;
	border: 1.5px solid #09090b;
	border-radius: 8px;
	line-height: 1.5;
}

.f3d-chaos-boxes-page .f3d-box-choice-guide > p:nth-of-type(1),
.f3d-chaos-boxes-page .f3d-universe-story:has(> table) + .f3d-universe-story > p:nth-of-type(1) {
	border-left: 6px solid #f6c945;
}

.f3d-chaos-boxes-page .f3d-box-choice-guide > p:nth-of-type(2),
.f3d-chaos-boxes-page .f3d-universe-story:has(> table) + .f3d-universe-story > p:nth-of-type(2) {
	border-left: 6px solid #09090b;
}

.f3d-chaos-boxes-page .f3d-box-choice-guide > p:nth-of-type(3),
.f3d-chaos-boxes-page .f3d-universe-story:has(> table) + .f3d-universe-story > p:nth-of-type(3) {
	border-left: 6px solid #e44637;
}

.f3d-chaos-boxes-page .f3d-box-choice-guide + .f3d-universe-callout,
.f3d-chaos-boxes-page .f3d-universe-story:has(> table) + .f3d-universe-story + .f3d-universe-callout {
	margin-top: 1.25rem;
}

@media (max-width: 850px) {
	.f3d-chaos-boxes-page .f3d-box-paths,
	.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story,
	.f3d-chaos-boxes-page .f3d-box-choice-guide,
	.f3d-chaos-boxes-page .f3d-universe-story:has(> table) + .f3d-universe-story {
		grid-template-columns: 1fr;
	}

	.f3d-chaos-boxes-page .f3d-box-paths > h2,
	.f3d-chaos-boxes-page .f3d-box-paths > p:first-of-type,
	.f3d-chaos-boxes-page .f3d-box-paths > p:last-child,
	.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > h2,
	.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > p:first-of-type,
	.f3d-chaos-boxes-page .f3d-box-hero + .f3d-universe-story > p:last-child,
	.f3d-chaos-boxes-page .f3d-box-choice-guide > h2,
	.f3d-chaos-boxes-page .f3d-universe-story:has(> table) + .f3d-universe-story > h2 {
		grid-column: 1;
	}
}

@media (min-width: 851px) {
	.f3d-chaos-boxes-page .f3d-box-comparison table,
	.f3d-chaos-boxes-page .f3d-universe-story:has(> table) > table {
		table-layout: auto;
	}

	.f3d-chaos-boxes-page .f3d-box-comparison th,
	.f3d-chaos-boxes-page .f3d-box-comparison td,
	.f3d-chaos-boxes-page .f3d-universe-story:has(> table) th,
	.f3d-chaos-boxes-page .f3d-universe-story:has(> table) td {
		overflow-wrap: normal;
		word-break: normal;
		hyphens: none;
	}

	.f3d-chaos-boxes-page .f3d-box-comparison th:nth-child(1),
	.f3d-chaos-boxes-page .f3d-universe-story:has(> table) th:nth-child(1) {
		width: 20%;
	}

	.f3d-chaos-boxes-page .f3d-box-comparison th:nth-child(2),
	.f3d-chaos-boxes-page .f3d-box-comparison th:nth-child(3),
	.f3d-chaos-boxes-page .f3d-universe-story:has(> table) th:nth-child(2),
	.f3d-chaos-boxes-page .f3d-universe-story:has(> table) th:nth-child(3) {
		width: 20%;
	}

	.f3d-chaos-boxes-page .f3d-box-comparison th:nth-child(4),
	.f3d-chaos-boxes-page .f3d-universe-story:has(> table) th:nth-child(4) {
		width: 40%;
	}
}

.f3d-universe-story h2,
.f3d-universe-character h2,
.f3d-universe-variant-explainer h2,
.f3d-universe-cta h2 {
	font-size: clamp(2rem, 1.45rem + 2vw, 3.4rem);
	font-weight: 950;
	line-height: 1;
}

.f3d-universe-callout {
	display: flex;
	align-items: center;
	margin: 0;
	padding: clamp(22px, 3vw, 32px);
	color: var(--cream);
	background: var(--black);
	border: 2px solid var(--black);
	border-radius: 8px;
	box-shadow: 6px 6px 0 var(--red);
}

.f3d-universe-callout p {
	margin: 0;
	color: inherit;
	font-size: clamp(1.08rem, 1rem + 0.28vw, 1.22rem);
	font-weight: 800;
	line-height: 1.55;
}

.f3d-universe-section-lead {
	max-width: 780px;
	margin-top: 14px !important;
	color: var(--muted);
	font-size: 1.05rem;
	line-height: 1.58;
}

.f3d-universe-character-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(16px, 2.5vw, 26px);
	align-items: stretch;
	margin-top: 24px;
}

.f3d-universe-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: 0;
	color: var(--black);
	background: #fff;
	border: 2px solid var(--black);
	border-radius: 8px;
	box-shadow: 6px 6px 0 rgba(9, 9, 11, 0.16);
	overflow: hidden;
}

.f3d-universe-card--dark {
	color: var(--cream);
	background: var(--black);
	box-shadow: 6px 6px 0 var(--red);
}

.f3d-universe-card__media {
	display: block;
	width: 100%;
	aspect-ratio: 3 / 2;
	margin: 0;
	background: #fff;
	overflow: hidden;
}

.f3d-universe-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	background: #fff;
	transition: transform 0.2s ease;
}

.f3d-universe-card__media:hover img {
	transform: scale(1.025);
}

.f3d-universe-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: clamp(18px, 2.5vw, 26px);
}

.f3d-universe-card h3 {
	color: inherit;
	font-size: clamp(1.55rem, 1.25rem + 0.8vw, 2.15rem);
	font-weight: 950;
	line-height: 1.04;
}

.f3d-universe-card p,
.f3d-universe-card--dark p {
	margin: 12px 0 0;
	color: inherit;
	line-height: 1.56;
}

.f3d-universe-card__tagline {
	font-weight: 850;
}

.f3d-universe-card .f3d-universe-card__button {
	width: 100%;
	margin-top: auto;
	transform: translateY(14px);
}

.f3d-universe-variant-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(14px, 2vw, 22px);
	margin-top: 24px;
}

.f3d-universe-page .f3d-universe-variant-card {
	display: flex;
	flex-direction: column;
	gap: 9px;
	min-height: 100%;
	padding: 20px;
	color: var(--black) !important;
	text-decoration: none !important;
	background: #fff;
	border: 2px solid var(--black);
	border-radius: 8px;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.f3d-universe-page .f3d-universe-variant-card:hover,
.f3d-universe-page .f3d-universe-variant-card:focus {
	transform: translateY(-3px);
	box-shadow: 0 6px 0 rgba(9, 9, 11, 0.14);
	outline: none;
}

.f3d-universe-variant-card span {
	font-size: 1.75rem;
	font-weight: 950;
	line-height: 1;
}

.f3d-universe-variant-card strong {
	font-size: 1.02rem;
	line-height: 1.3;
}

.f3d-universe-variant-card small {
	color: var(--muted);
	font-size: 0.96rem;
	line-height: 1.5;
}

.f3d-universe-variant-basic {
	border-left: 9px solid var(--black) !important;
}

.f3d-universe-variant-sq {
	border-left: 9px solid var(--yellow) !important;
}

.f3d-universe-variant-hq {
	border-left: 9px solid var(--red) !important;
}

.f3d-universe-variant-rules {
	margin-top: 20px !important;
	padding-top: 16px;
	font-weight: 800;
	line-height: 1.45;
	border-top: 1px solid rgba(9, 9, 11, 0.18);
}

.f3d-universe-cta {
	color: var(--cream);
	background: var(--black);
	box-shadow: 8px 8px 0 var(--red);
}

.f3d-universe-cta h2,
.f3d-universe-cta p {
	color: inherit;
}

.f3d-universe-cta > p {
	max-width: 800px;
	margin-top: 14px;
	color: #f4f4f5;
	line-height: 1.58;
}

@media (max-width: 980px) {
	.f3d-universe-hero,
	.f3d-universe-story {
		grid-template-columns: 1fr;
	}

	.f3d-universe-hero__image {
		max-width: 680px;
		margin: 0;
	}

	.f3d-universe-character-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 700px) {
	.f3d-universe-page {
		width: min(100% - 22px, 1360px);
	}

	.f3d-universe-character-grid,
	.f3d-universe-variant-grid {
		grid-template-columns: 1fr;
	}

	.f3d-universe-actions,
	.f3d-universe-button,
	.f3d-universe-page .f3d-universe-card__button {
		width: 100%;
	}

	.f3d-universe-card__media {
		aspect-ratio: 4 / 3;
	}
}

@media (prefers-reduced-motion: reduce) {
	.f3d-universe-card__media img,
	.f3d-universe-page .f3d-universe-variant-card {
		transition: none;
	}

	.f3d-universe-card__media:hover img,
	.f3d-universe-page .f3d-universe-variant-card:hover {
		transform: none;
	}
}

/* WordPress wpautop wraps adjacent Universe links in paragraphs. */
.f3d-universe-variant-grid > p {
	display: contents !important;
	margin: 0 !important;
	padding: 0 !important;
}

.f3d-universe-variant-grid > p:empty {
	display: none !important;
}

.f3d-universe-variant-card br {
	display: none !important;
}

/* Media links must stay white; generic card-link rules style only buttons. */
.f3d-universe-card a.f3d-universe-card__media,
.f3d-universe-card a.f3d-universe-card__media:hover,
.f3d-universe-card a.f3d-universe-card__media:focus {
	display: block;
	width: 100%;
	min-height: 0;
	margin: 0;
	padding: 0;
	color: var(--black);
	background: #fff !important;
	border: 0;
	border-radius: 0;
	box-shadow: none !important;
	outline-offset: -4px;
}

.f3d-universe-card a.f3d-universe-card__media img {
	background: #fff !important;
}

/* Přímé obrázky ve starších merch kartách mají rozměry z WordPress médií. */
main [class*="f3d-"][class*="-grid"] > [class*="f3d-"][class*="-card"] > img[class*="product-image"] {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto !important;
	object-fit: contain;
}

/* Merch bloky vystoupí z úzkého sloupce šablony stejně jako Chaos boxy. */
body.jf-merch-listing-page main .wp-block-post-content [class*="f3d-"][class*="-page"] {
	position: relative;
	left: 50%;
	width: min(calc(100vw - 32px), 1120px) !important;
	max-width: 1120px !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	transform: translateX(-50%);
}

/* Mobilní šířka společná pro všechny merch rozcestníky. */
@media (max-width: 700px) {
	body.jf-merch-listing-page main .wp-block-post-content [class*="f3d-"][class*="-page"] {
		width: min(100vw - 22px, 1120px) !important;
	}
}

/* Chaos Tees: Safari neaktivuje style vlozene WordPressem dovnitr obsahu. */
.f3d-chaos-tees-page {
	--black: #09090b;
	--cream: #fffdf2;
	--yellow: #f6c945;
	--red: #e44637;
	--muted: #686873;
	width: min(1120px, calc(100% - 28px));
	margin: 0 auto 64px;
	color: var(--black);
}

.f3d-chaos-tees-page,
.f3d-chaos-tees-page *,
.f3d-chaos-tees-page *::before,
.f3d-chaos-tees-page *::after {
	box-sizing: border-box;
}

.f3d-chaos-tees-page h1,
.f3d-chaos-tees-page h2,
.f3d-chaos-tees-page h3,
.f3d-chaos-tees-page p {
	margin-top: 0;
	letter-spacing: 0;
}

.f3d-chaos-tees-page h1 {
	max-width: 900px;
	margin-bottom: 0;
	font-size: clamp(3rem, 2rem + 3.8vw, 5.8rem);
	font-weight: 950;
	line-height: .94;
}

.f3d-chaos-tees-page h2 {
	margin-bottom: 0;
	font-size: clamp(2.15rem, 1.6rem + 1.8vw, 3.5rem);
	font-weight: 950;
	line-height: 1;
}

.f3d-chaos-tees-page h3 {
	margin-bottom: 0;
	font-size: clamp(1.55rem, 1.25rem + .7vw, 2rem);
	font-weight: 950;
	line-height: 1.05;
}

.f3d-chaos-tees-kicker {
	display: inline-flex;
	margin-bottom: 14px;
	padding: 7px 11px;
	color: var(--cream);
	font-size: .78rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	background: var(--black);
	border: 2px solid var(--black);
	border-radius: 999px;
	box-shadow: 4px 4px 0 var(--yellow);
}

.f3d-chaos-tees-hero {
	padding: clamp(34px, 6vw, 72px) 0;
}

.f3d-chaos-tees-lead,
.f3d-chaos-tees-section-lead {
	max-width: 780px;
	margin: 20px 0 0;
	color: var(--muted);
	font-size: clamp(1.04rem, .98rem + .25vw, 1.2rem);
	line-height: 1.58;
}

.f3d-chaos-tees-hero__media {
	width: 100%;
	aspect-ratio: 1672 / 941;
	margin-top: clamp(30px, 4vw, 48px);
	overflow: hidden;
	background: #fff;
	border: 2px solid var(--black);
	border-radius: 8px;
	box-shadow: 8px 8px 0 var(--yellow);
}

.f3d-chaos-tees-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	background: #fff;
}

.f3d-chaos-tees-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 26px;
}

.f3d-chaos-tees-actions > br,
.f3d-chaos-tees-card__footer > br {
	display: none !important;
}

.f3d-chaos-tees-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 18px;
	color: var(--black) !important;
	font-weight: 900;
	line-height: 1.1;
	text-align: center;
	text-decoration: none !important;
	background: var(--yellow);
	border: 2px solid var(--black);
	border-radius: 8px;
	box-shadow: 4px 4px 0 var(--black);
}

.f3d-chaos-tees-button:hover,
.f3d-chaos-tees-button:focus {
	color: var(--cream) !important;
	background: var(--red);
	outline: none;
}

.f3d-chaos-tees-button--dark {
	color: var(--cream) !important;
	background: var(--black);
	box-shadow: 4px 4px 0 var(--red);
}

.f3d-chaos-tees-button--light {
	background: #fff;
}

.f3d-chaos-tees-story {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
	gap: clamp(24px, 4vw, 48px);
	margin-top: 10px;
	padding: clamp(24px, 4vw, 42px);
	background: var(--cream);
	border: 2px solid var(--black);
	border-radius: 8px;
	box-shadow: 7px 7px 0 var(--yellow);
}

.f3d-chaos-tees-story p {
	margin: 14px 0 0;
	color: var(--muted);
	line-height: 1.62;
}

.f3d-chaos-tees-specs {
	padding: 24px;
	color: var(--cream);
	background: var(--black);
	border-radius: 8px;
	box-shadow: 6px 6px 0 var(--red);
}

.f3d-chaos-tees-specs h3 {
	margin-bottom: 14px;
	color: inherit;
}

.f3d-chaos-tees-specs ul {
	display: grid;
	gap: 9px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.f3d-chaos-tees-specs li {
	position: relative;
	padding-left: 18px;
	line-height: 1.4;
}

.f3d-chaos-tees-specs li::before {
	position: absolute;
	top: .52em;
	left: 0;
	width: 8px;
	height: 8px;
	content: "";
	background: var(--yellow);
	border-radius: 50%;
}

.f3d-chaos-tees-drop {
	margin-top: clamp(48px, 7vw, 88px);
}

.f3d-chaos-tees-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(18px, 2.5vw, 28px);
	align-items: stretch;
	margin-top: 26px;
}

.f3d-chaos-tees-card {
	display: flex;
	min-width: 0;
	min-height: 100%;
	flex-direction: column;
	overflow: hidden;
	background: #fff;
	border: 2px solid var(--black);
	border-radius: 8px;
	box-shadow: 6px 6px 0 rgba(9, 9, 11, .16);
}

.f3d-chaos-tees-card__media {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: #fff;
	border: 0 !important;
	box-shadow: none !important;
}

.f3d-chaos-tees-card__image {
	display: block;
	width: 100%;
	height: 100% !important;
	object-fit: contain;
	object-position: center;
	background: #fff;
	border: 0 !important;
	box-shadow: none !important;
}

.f3d-chaos-tees-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: clamp(20px, 2.4vw, 28px);
	background: #fff;
	border: 0 !important;
	box-shadow: none !important;
}

.f3d-chaos-tees-card__body > p {
	margin: 14px 0 0;
	color: var(--muted);
	line-height: 1.55;
}

.f3d-chaos-tees-card__body .f3d-chaos-tees-card__badge {
	padding: 11px 13px;
	color: var(--black);
	font-weight: 900;
	background: var(--yellow);
	border: 2px solid var(--black);
	border-radius: 8px;
}

.f3d-chaos-tees-card__footer {
	display: grid;
	gap: 14px;
	margin-top: auto;
	padding-top: 24px;
}

.f3d-chaos-tees-card__price {
	font-size: 1.2rem;
	font-weight: 900;
}

.f3d-chaos-tees-card__footer .f3d-chaos-tees-button {
	width: 100%;
}

.f3d-chaos-tees-cta {
	margin-top: clamp(50px, 7vw, 90px);
	padding: clamp(26px, 4vw, 46px);
	color: var(--cream);
	background: var(--black);
	border: 2px solid var(--black);
	border-radius: 8px;
	box-shadow: 8px 8px 0 var(--red);
}

.f3d-chaos-tees-cta h2,
.f3d-chaos-tees-cta p {
	color: inherit;
}

.f3d-chaos-tees-cta p {
	margin: 14px 0 0;
}

@media (max-width: 900px) {
	.f3d-chaos-tees-story {
		grid-template-columns: 1fr;
	}

	.f3d-chaos-tees-grid {
		grid-template-columns: 1fr;
	}

	.f3d-chaos-tees-card__media {
		aspect-ratio: 4 / 3;
	}
}

@media (max-width: 600px) {
	.f3d-chaos-tees-page {
		width: min(100% - 22px, 1120px);
	}

	.f3d-chaos-tees-actions,
	.f3d-chaos-tees-button {
		width: 100%;
	}

	.f3d-chaos-tees-card__media {
		aspect-ratio: 1 / 1;
	}
}

/* Shared content canvas: match the Chaos Merch reference, with room at both sides. */
:root {
	--f3d-content-width: 1120px;
	--f3d-content-gutter: clamp(20px, 3vw, 32px);
}

body.page:not(.home):not(.woocommerce-cart):not(.woocommerce-checkout) main .wp-block-post-content {
	box-sizing: border-box;
	width: min(var(--f3d-content-width), calc(100vw - 2 * var(--f3d-content-gutter))) !important;
	max-width: var(--f3d-content-width) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.page main .wp-block-post-content > :is(.f3d-level-intro, .f3d-product-grid-page, .variant-explainer, [class*="f3d-"][class*="-page"]):not(.f3d-legal-page),
body.jf-merch-listing-page main .wp-block-post-content [class*="f3d-"][class*="-page"] {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	left: auto !important;
	transform: none !important;
}

body.home main .f3d-home-landing,
body.single-product main,
body.woocommerce-cart main > .alignwide,
body.woocommerce-checkout main > .alignwide,
body.post-type-archive-product main > .alignwide,
body.tax-product_cat main > .alignwide,
body.tax-product_tag main > .alignwide {
	box-sizing: border-box;
	width: min(var(--f3d-content-width), calc(100vw - 2 * var(--f3d-content-gutter))) !important;
	max-width: var(--f3d-content-width) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.single-product main .alignwide,
body.single-product main .f3d-custom-related-products,
body.woocommerce-cart main > .alignwide > .alignwide,
body.woocommerce-checkout main > .alignwide .wp-block-post-content,
body.woocommerce-checkout main > .alignwide .wp-block-woocommerce-checkout {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* The WooCommerce archive template uses a div instead of main. */
body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .wp-site-blocks > .wp-block-group > .alignwide {
	box-sizing: border-box;
	width: min(var(--f3d-content-width), calc(100vw - 2 * var(--f3d-content-gutter))) !important;
	max-width: var(--f3d-content-width) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .wp-site-blocks > .wp-block-group :is(.wp-block-woocommerce-product-collection, .f3d-figures-intro, .variant-explainer) {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}


/* Keep the Basic/SQ/HQ explanation readable beside pack and box descriptions. */
.single-product .variant-explainer--box .variant-grid {
	grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 1100px) {
	.single-product .variant-explainer--box .variant-card {
		display: grid;
		grid-template-columns: 110px minmax(0, 1fr);
		column-gap: 1rem;
		align-content: start;
	}

	.single-product .variant-explainer--box .variant-card h3,
	.single-product .variant-explainer--box .variant-card__kicker {
		grid-column: 1;
	}

	.single-product .variant-explainer--box .variant-card > p:last-child {
		grid-column: 2;
		grid-row: 1 / span 2;
		margin-top: 0;
	}
}
