/*
Theme Name: Pinxel
Theme URI: https://pinxel.co/
Author: Pinxel
Author URI: https://pinxel.co/
Description: Tema de bloques reutilizable para sitios creados por Pinxel.
Version: 1.8.2
Requires at least: 6.7
Requires PHP: 8.1
Text Domain: pinxel
*/

:root {
	--pinxel-color-primary: #5b3df5;
	--pinxel-color-on-primary: #ffffff;
	--pinxel-color-primary-text: #5b3df5;
	--pinxel-color-primary-soft: #eeebff;
	--pinxel-color-secondary: #18181b;
	--pinxel-color-accent: #f4b942;
	--pinxel-color-background: #ffffff;
	--pinxel-color-surface: #f5f5f7;
	--pinxel-color-dark-background: #18181b;
	--pinxel-color-dark-surface: #27272a;
	--pinxel-color-text: #18181b;
	--pinxel-color-muted: #63636e;
	--pinxel-color-success: #16875b;
	--pinxel-color-danger: #c43d4b;
	--pinxel-color-dark-text: #ffffff;
	--pinxel-color-dark-muted: #d4d4d8;
	--pinxel-header-logo-height: 48px;
	--pinxel-header-padding: 12px;
	--pinxel-header-gutter: clamp(1.25rem, 4vw, 2.5rem);
	--pinxel-content-gutter: clamp(1.25rem, 4vw, 2.5rem);
	--pinxel-header-mobile-logo-height: 32px;
	--pinxel-header-mobile-padding: 8px;
	--pinxel-font-heading: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--pinxel-font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--pinxel-font-size-display: clamp(2.25rem, 5vw, 4.5rem);
	--pinxel-font-size-heading: clamp(2rem, 4vw, 3.75rem);
	--pinxel-font-size-lead: clamp(1.05rem, 2vw, 1.3rem);
	--pinxel-font-size-body: 1rem;
	--pinxel-font-size-label: 0.8rem;
	--pinxel-button-font-size: 1rem;
	--pinxel-button-padding-y: 0.9rem;
	--pinxel-button-padding-x: 1.35rem;
	--pinxel-button-radius: 8px;
	--pinxel-button-font-weight: 700;
	--pinxel-button-border-width: 2px;
	--pinxel-radius-small: 8px;
	--pinxel-radius-medium: 16px;
	--pinxel-radius-large: 28px;
	--pinxel-shadow: 0 16px 48px rgb(24 24 27 / 10%);
	--pinxel-content-width: 760px;
	--pinxel-wide-width: 1200px;
	--pinxel-section-space: clamp(4rem, 8vw, 7rem);
	--pinxel-section-space-compact: clamp(3rem, 6vw, 5rem);
	--pinxel-layout-gap: clamp(2.5rem, 6vw, 5rem);
	--pinxel-component-gap: clamp(1.25rem, 2.5vw, 2rem);
}

body {
	background: var(--pinxel-color-background);
	color: var(--pinxel-color-text);
	font-family: var(--pinxel-font-body);
}

.pinxel-page {
	box-sizing: border-box;
	padding-block: var(--pinxel-section-space-compact);
	padding-inline: clamp(1.25rem, 4vw, 2.5rem);
}

.pinxel-page__header,
.pinxel-page__content {
	box-sizing: border-box;
	width: 100%;
}

.pinxel-page__header {
	margin-bottom: clamp(2rem, 5vw, 4rem);
}

.pinxel-page__title {
	font-size: var(--pinxel-font-size-heading);
	margin: 0;
}

.pinxel-page__content > :first-child {
	margin-block-start: 0;
}

.pinxel-page__content > :last-child {
	margin-block-end: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--pinxel-font-heading);
	letter-spacing: -0.025em;
}

.pinxel-site-header {
	background: var(--pinxel-header-background, color-mix(in srgb, var(--pinxel-color-background) 94%, transparent));
	border-bottom: 1px solid var(--pinxel-header-border, color-mix(in srgb, var(--pinxel-color-text) 10%, transparent));
	position: relative;
	z-index: 20;
}

.pinxel-site-header__inner {
	align-items: center;
	box-sizing: border-box;
	margin-inline: auto;
	max-width: var(--pinxel-wide-width, 1200px);
	min-height: var(--pinxel-header-height, 76px);
	padding-bottom: var(--pinxel-header-padding, 12px) !important;
	padding-top: var(--pinxel-header-padding, 12px) !important;
	width: calc(100% - clamp(2.5rem, 8vw, 5rem));
}

.pinxel-site-header__brand {
	align-items: center;
	gap: 0.75rem;
	line-height: 0;
	min-width: 0;
}

.pinxel-site-title-fallback {
	font-size: clamp(1.125rem, 2vw, 1.5rem);
	font-weight: 700;
	line-height: 1.1;
	margin: 0;
}

.pinxel-site-title-fallback a {
	color: var(--pinxel-header-text, var(--pinxel-color-text));
	text-decoration: none;
}

.pinxel-site-header .wp-block-site-logo,
.pinxel-site-footer .wp-block-site-logo {
	max-width: min(360px, 50vw);
	width: auto !important;
}

.pinxel-site-header .wp-block-site-logo img {
	display: block;
	height: auto;
	max-height: var(--pinxel-header-logo-height, 48px);
	max-width: 100%;
	object-fit: contain;
	width: auto !important;
}

.pinxel-site-footer .wp-block-site-logo img {
	height: auto;
	max-width: 100%;
	width: auto !important;
}

.pinxel-site-header .pinxel-logo-link--dark,
.pinxel-site-footer .pinxel-logo-link--dark {
	display: none;
}

.pinxel-site-header.is-dark .has-pinxel-dark-logo .pinxel-logo-link--light {
	display: none;
}

.pinxel-site-header.is-dark .has-pinxel-dark-logo .pinxel-logo-link--dark {
	display: block;
}

.pinxel-site-header .wp-block-navigation-item__content {
	border-radius: var(--pinxel-radius-small);
	color: var(--pinxel-header-text, var(--pinxel-color-text));
	font-size: 0.95rem;
	font-weight: 650;
	padding: 0.55rem 0.75rem;
	text-decoration: none;
	transition: background-color 160ms ease, color 160ms ease;
}

.pinxel-site-header .wp-block-navigation-item__content:hover,
.pinxel-site-header .wp-block-navigation-item__content:focus-visible {
	background: var(--pinxel-header-hover, var(--pinxel-color-surface));
}

.pinxel-site-header .wp-block-navigation__responsive-container-open,
.pinxel-site-header .wp-block-navigation__responsive-container-close {
	border-radius: var(--pinxel-radius-small);
	box-sizing: border-box;
	color: var(--pinxel-header-text, var(--pinxel-color-text));
	min-height: 44px;
	min-width: 44px;
	padding: 10px;
}

.pinxel-site-header .wp-block-navigation {
	align-items: center;
	line-height: 1;
}

.pinxel-site-header .wc-block-customer-account__link,
.pinxel-site-header .wc-block-mini-cart__button {
	color: var(--pinxel-header-text, var(--pinxel-color-text));
}

.pinxel-site-header .wc-block-customer-account__account-icon {
	display: block;
	height: 24px;
	opacity: 1;
	visibility: visible;
	width: 24px;
}

@media (min-width: 782px) {
	.pinxel-site-header__inner {
		gap: .35rem;
		justify-content: flex-start !important;
	}

	.pinxel-site-header .wp-block-navigation {
		margin-left: auto;
		margin-right: clamp(.75rem, 2vw, 1.5rem);
	}

	.pinxel-site-header .wp-block-woocommerce-customer-account,
	.pinxel-site-header .wc-block-mini-cart {
		align-items: center;
		display: flex;
		flex: 0 0 44px;
		justify-content: center;
		margin: 0;
		width: 44px;
	}
}

.pinxel-site-header .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--pinxel-header-background, var(--pinxel-color-background));
	color: var(--pinxel-header-text, var(--pinxel-color-text));
}

.pinxel-section {
	box-sizing: border-box;
	padding-block: var(--pinxel-section-space);
	padding-inline: clamp(1.25rem, 4vw, 2.5rem);
}

.pinxel-section--hero {
	background: var(--pinxel-color-surface);
	min-height: min(760px, 80vh);
}

.pinxel-section--accent {
	background: var(--pinxel-color-primary);
	color: var(--pinxel-color-on-primary, #fff);
}

.pinxel-section--accent a:not(.wp-element-button) {
	color: inherit;
}

.pinxel-single {
	box-sizing: border-box;
}

.pinxel-single__article {
	padding: var(--pinxel-section-space-compact) clamp(1.25rem, 4vw, 2.5rem);
}

.pinxel-single__header {
	margin-bottom: clamp(2rem, 5vw, 4rem);
	text-align: center;
}

.pinxel-single__categories {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	font-size: var(--pinxel-font-size-label);
	font-weight: 750;
	letter-spacing: .1em;
	margin: 0 0 1rem;
	text-transform: uppercase;
}

.pinxel-single__categories a,
.pinxel-single__tags a {
	color: inherit;
	text-underline-offset: .2em;
}

.pinxel-single__title {
	font-family: var(--pinxel-font-heading);
	font-size: var(--pinxel-font-size-display);
	letter-spacing: -.04em;
	line-height: 1.02;
	margin: 0 auto;
	max-width: 18ch;
}

.pinxel-single__meta {
	color: var(--pinxel-color-muted);
	font-size: .925rem;
	gap: .5rem;
	justify-content: center;
	margin-top: 1.5rem;
}

.pinxel-single__meta > * {
	margin: 0;
}

.pinxel-single__meta a {
	color: inherit;
}

.pinxel-single__featured-image {
	margin-bottom: clamp(2.5rem, 6vw, 5rem);
}

.pinxel-single__featured-image img {
	border-radius: var(--pinxel-radius-large);
	display: block;
	max-height: 720px;
	object-fit: cover;
	width: 100%;
}

.pinxel-single__content {
	font-size: clamp(1rem, 1vw + .75rem, 1.125rem);
	line-height: 1.75;
}

.pinxel-single__content > :where(h2, h3, h4) {
	margin-top: 2.5em;
}

.pinxel-single__content :where(img, video, iframe) {
	border-radius: var(--pinxel-radius-medium);
}

.pinxel-single__footer,
.pinxel-single__comments {
	margin-top: clamp(3rem, 7vw, 5rem);
}

.pinxel-single__tags {
	color: var(--pinxel-color-muted);
	font-size: .9rem;
}

.pinxel-single__navigation {
	border-top: 1px solid color-mix(in srgb, var(--pinxel-color-text) 14%, transparent);
	gap: 2rem;
	margin-top: 2rem;
	padding-top: 2rem;
}

.pinxel-single__navigation a {
	font-weight: 700;
	text-underline-offset: .2em;
}

.pinxel-single__navigation .post-navigation-link-next {
	text-align: right;
}

.pinxel-single__comments {
	border-top: 1px solid color-mix(in srgb, var(--pinxel-color-text) 14%, transparent);
	padding-top: clamp(2.5rem, 6vw, 4rem);
}

.pinxel-single__comment {
	border-bottom: 1px solid color-mix(in srgb, var(--pinxel-color-text) 10%, transparent);
	padding-block: 1.5rem;
}

.wc-block-mini-cart__drawer .wc-block-components-drawer__close {
	align-items: center;
	background: color-mix(in srgb, currentColor 8%, transparent) !important;
	border-radius: 999px !important;
	box-sizing: border-box;
	display: flex;
	height: 44px;
	justify-content: center;
	margin: 0 !important;
	opacity: 1;
	padding: 10px !important;
	right: clamp(1.25rem, 5vw, 2rem) !important;
	top: clamp(1.25rem, 5vw, 2rem) !important;
	width: 44px;
}

.wc-block-mini-cart__drawer .wc-block-components-drawer__close:hover,
.wc-block-mini-cart__drawer .wc-block-components-drawer__close:focus-visible {
	background: color-mix(in srgb, currentColor 14%, transparent) !important;
}

.wc-block-mini-cart__drawer .wc-block-components-drawer__close svg {
	height: 24px;
	width: 24px;
}

@media (max-width: 600px) {
	.pinxel-single__navigation {
		align-items: stretch;
		flex-direction: column;
	}

	.pinxel-single__navigation .post-navigation-link-next {
		text-align: left;
	}
}

.pinxel-blog__intro {
	background: var(--pinxel-color-surface);
	box-sizing: border-box;
	padding: var(--pinxel-section-space-compact) clamp(1.25rem, 4vw, 2.5rem);
	text-align: center;
}

.pinxel-archive__intro {
	background: var(--pinxel-color-surface);
	box-sizing: border-box;
	padding: var(--pinxel-section-space-compact) clamp(1.25rem, 4vw, 2.5rem);
	text-align: center;
}

.pinxel-archive__eyebrow {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	font-size: var(--pinxel-font-size-label);
	font-weight: 750;
	letter-spacing: .12em;
	margin: 0 0 .9rem;
	text-transform: uppercase;
}

.pinxel-archive__title {
	font-family: var(--pinxel-font-heading);
	font-size: var(--pinxel-font-size-heading);
	letter-spacing: -.035em;
	line-height: 1.05;
	margin: 0;
}

.pinxel-archive__description {
	color: var(--pinxel-color-muted);
	font-size: var(--pinxel-font-size-lead);
	line-height: 1.65;
	margin: 1.25rem auto 0;
	max-width: 58ch;
}

.pinxel-archive__description > :first-child {
	margin-top: 0;
}

.pinxel-archive__description > :last-child {
	margin-bottom: 0;
}

.pinxel-archive__content {
	box-sizing: border-box;
	padding: var(--pinxel-section-space) clamp(1.25rem, 4vw, 2.5rem);
}

.pinxel-archive__grid {
	gap: var(--pinxel-component-gap);
}

.pinxel-archive__grid > li {
	display: flex;
}

.pinxel-archive__pagination {
	border-top: 1px solid color-mix(in srgb, var(--pinxel-color-text) 14%, transparent);
	margin-top: clamp(2.5rem, 6vw, 4rem);
	padding-top: 2rem;
}

.pinxel-archive__pagination a,
.pinxel-archive__pagination .page-numbers {
	font-weight: 700;
	text-underline-offset: .2em;
}

.pinxel-search-results__intro {
	background: var(--pinxel-color-surface);
	box-sizing: border-box;
	padding: var(--pinxel-section-space-compact) clamp(1.25rem, 4vw, 2.5rem);
	text-align: center;
}

.pinxel-search-results__eyebrow {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	font-size: var(--pinxel-font-size-label);
	font-weight: 750;
	letter-spacing: .12em;
	margin: 0 0 .9rem;
	text-transform: uppercase;
}

.pinxel-search-results__title {
	font-family: var(--pinxel-font-heading);
	font-size: var(--pinxel-font-size-heading);
	letter-spacing: -.035em;
	line-height: 1.05;
	margin: 0;
}

.pinxel-search-results__form,
.pinxel-search-results__empty-form {
	margin: 1.75rem auto 0;
	max-width: 640px;
}

.pinxel-search-results :where(.wp-block-search__inside-wrapper) {
	background: var(--pinxel-color-background);
	border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 16%, transparent);
	border-radius: var(--pinxel-radius-small);
	box-sizing: border-box;
	overflow: hidden;
	padding: 4px;
}

.pinxel-search-results :where(.wp-block-search__input) {
	background: transparent;
	border: 0;
	color: var(--pinxel-color-text);
	font: inherit;
	min-height: 48px;
	padding: .75rem 1rem;
}

.pinxel-search-results :where(.wp-block-search__input:focus) {
	box-shadow: inset 0 0 0 2px var(--pinxel-color-primary);
	outline: 0;
}

.pinxel-search-results :where(.wp-block-search__button) {
	background: var(--pinxel-color-primary);
	border: 0;
	border-radius: calc(var(--pinxel-radius-small) - 2px);
	color: var(--pinxel-color-on-primary, #fff);
	font-weight: 700;
	margin: 0;
	min-width: 48px;
	padding: var(--pinxel-button-padding-y) var(--pinxel-button-padding-x);
}

.pinxel-search-results__content {
	box-sizing: border-box;
	padding: var(--pinxel-section-space) clamp(1.25rem, 4vw, 2.5rem);
}

.pinxel-search-results__grid {
	gap: var(--pinxel-component-gap);
}

.pinxel-search-results__grid > li {
	display: flex;
}

.pinxel-search-results__pagination {
	border-top: 1px solid color-mix(in srgb, var(--pinxel-color-text) 14%, transparent);
	margin-top: clamp(2.5rem, 6vw, 4rem);
	padding-top: 2rem;
}

.pinxel-search-results__pagination a,
.pinxel-search-results__pagination .page-numbers {
	font-weight: 700;
	text-underline-offset: .2em;
}

.pinxel-search-results__empty-form .wp-block-search__inside-wrapper {
	background: var(--pinxel-color-background);
}

.pinxel-blog__eyebrow {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	font-size: var(--pinxel-font-size-label);
	font-weight: 750;
	letter-spacing: .12em;
	margin: 0 0 .9rem;
	text-transform: uppercase;
}

.pinxel-blog__title {
	font-family: var(--pinxel-font-heading);
	font-size: var(--pinxel-font-size-display);
	letter-spacing: -.04em;
	line-height: 1.02;
	margin: 0;
}

.pinxel-blog__description {
	color: var(--pinxel-color-muted);
	font-size: var(--pinxel-font-size-lead);
	line-height: 1.65;
	margin: 1.25rem auto 0;
	max-width: 58ch;
}

.pinxel-blog__content {
	box-sizing: border-box;
	padding: var(--pinxel-section-space) clamp(1.25rem, 4vw, 2.5rem);
}

.pinxel-blog__grid {
	gap: var(--pinxel-component-gap);
}

.pinxel-blog__grid > li {
	display: flex;
}

.pinxel-blog__grid > li:first-child {
	grid-column: span 2;
}

.pinxel-blog-card {
	background: var(--pinxel-color-surface);
	border-radius: var(--pinxel-radius-large);
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	width: 100%;
}

.pinxel-blog-card__image {
	margin: 0;
	overflow: hidden;
}

.pinxel-blog-card__image img {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: transform 280ms ease;
	width: 100%;
}

.pinxel-blog-card:hover .pinxel-blog-card__image img {
	transform: scale(1.025);
}

.pinxel-blog-card__body {
	box-sizing: border-box;
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: clamp(1.4rem, 3vw, 2rem);
	width: 100%;
}

.pinxel-blog-card__meta {
	color: var(--pinxel-color-muted);
	font-size: var(--pinxel-font-size-label);
	gap: .55rem .9rem;
	margin: 0 0 1rem;
}

.pinxel-blog-card__category {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	font-weight: 750;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.pinxel-blog-card__meta a {
	color: inherit;
}

.pinxel-blog-card__title {
	font-family: var(--pinxel-font-heading);
	font-size: clamp(1.3rem, 2.2vw, 1.8rem);
	letter-spacing: -.025em;
	line-height: 1.2;
	margin: 0;
}

.pinxel-blog__grid > li:first-child .pinxel-blog-card__title {
	font-size: clamp(1.65rem, 3vw, 2.5rem);
}

.pinxel-blog-card__title a {
	color: var(--pinxel-color-text);
	text-decoration: none;
}

.pinxel-blog-card__title a:hover,
.pinxel-blog-card__title a:focus-visible {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
}

.pinxel-blog-card__excerpt {
	color: var(--pinxel-color-muted);
	line-height: 1.65;
	margin-top: 1rem;
}

.pinxel-blog-card__excerpt .wp-block-post-excerpt__more-link {
	color: var(--pinxel-color-text);
	font-weight: 750;
	margin-top: 1rem;
	text-underline-offset: .25em;
}

.pinxel-blog__pagination {
	border-top: 1px solid color-mix(in srgb, var(--pinxel-color-text) 14%, transparent);
	margin-top: clamp(2.5rem, 6vw, 4rem);
	padding-top: 2rem;
}

.pinxel-blog__pagination a,
.pinxel-blog__pagination .page-numbers {
	font-weight: 700;
	text-underline-offset: .2em;
}

.pinxel-empty-state {
	background: var(--pinxel-color-surface);
	border-radius: var(--pinxel-radius-large);
	box-sizing: border-box;
	padding: clamp(2rem, 5vw, 4rem);
	text-align: center;
}

.pinxel-empty-state h2 {
	margin-top: 0;
}

.pinxel-empty-state p:last-child {
	color: var(--pinxel-color-muted);
	margin-bottom: 0;
}

.pinxel-shop__intro {
	box-sizing: border-box;
	margin: 0 0 clamp(1.5rem, 3vw, 2rem);
}

.wp-site-blocks > main.pinxel-shop {
	padding-top: 0 !important;
}

body:not(.wp-admin) .pinxel-site-header + .pinxel-shop,
body:not(.wp-admin) .wp-block-template-part:has(.pinxel-site-header) + .pinxel-shop {
	padding-top: 0 !important;
}

.pinxel-shop__intro > .pinxel-shop__eyebrow,
.pinxel-shop__intro > .pinxel-shop__title,
.pinxel-shop__intro > .pinxel-shop__description {
	box-sizing: border-box;
	max-width: var(--pinxel-wide-width);
	width: 100%;
}

.pinxel-shop__breadcrumbs {
	color: var(--pinxel-color-muted);
	font-size: .875rem;
	margin: 0 0 .65rem;
}

.pinxel-shop__breadcrumbs a {
	color: inherit;
	text-underline-offset: .2em;
}

.pinxel-shop__eyebrow {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	font-size: var(--pinxel-font-size-label);
	font-weight: 750;
	letter-spacing: .12em;
	margin: 0 0 .9rem;
	text-transform: uppercase;
}

.pinxel-shop__title {
	font-family: var(--pinxel-font-heading);
	font-size: clamp(2.1rem, 3.5vw, 3.25rem);
	letter-spacing: -.035em;
	line-height: 1.05;
	margin: 0;
}

.pinxel-shop__description {
	color: var(--pinxel-color-muted);
	font-size: 1rem;
	line-height: 1.65;
	margin: .65rem 0 0;
	max-width: 58ch;
}

.pinxel-product-search__form {
	margin-top: 1.25rem;
	max-width: 560px;
}

.pinxel-product-search .pinxel-shop__title {
	font-size: clamp(1.85rem, 3vw, 2.6rem);
	max-width: 28ch;
}

.pinxel-product-search__form .wp-block-search__inside-wrapper {
	display: flex;
	gap: .5rem;
}

.pinxel-product-search__form .wp-block-search__input {
	background: var(--pinxel-color-background);
	border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 18%, transparent);
	border-radius: var(--pinxel-radius-small);
	box-sizing: border-box;
	font: inherit;
	min-height: 46px;
	padding: .7rem .9rem;
}

.pinxel-product-search__form .wp-block-search__button {
	border-radius: var(--pinxel-radius-small);
	margin: 0;
	min-height: 46px;
	padding-inline: 1rem;
}

.pinxel-shop__content {
	box-sizing: border-box;
	padding: clamp(1rem, 1.5vw, 1.25rem) 0 clamp(2.5rem, 5vw, 4rem);
}

.pinxel-shop__toolbar {
	border-bottom: 1px solid color-mix(in srgb, var(--pinxel-color-text) 14%, transparent);
	margin-bottom: 1.5rem;
	padding-bottom: 1rem;
}

.pinxel-shop__toolbar .woocommerce-result-count {
	color: var(--pinxel-color-muted);
	margin: 0;
}

.pinxel-shop__toolbar select {
	background: var(--pinxel-color-background);
	border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 18%, transparent);
	border-radius: var(--pinxel-radius-small);
	color: var(--pinxel-color-text);
	font: inherit;
	font-size: 1rem;
	min-height: 44px;
	padding: .55rem 2.5rem .55rem .8rem;
}

.pinxel-shop__filters {
	grid-column: 1;
	grid-row: 1;
	margin: 0;
	position: sticky;
	top: calc(var(--pinxel-header-offset, 6rem) + 1rem);
}

.pinxel-shop__filters .wc-block-product-filters__content,
.pinxel-shop__filters .wc-block-product-filters__overlay-content {
	background: var(--pinxel-color-surface);
	border-radius: var(--pinxel-radius-medium);
	box-sizing: border-box;
	padding: clamp(1.1rem, 2vw, 1.5rem);
}

.pinxel-shop__collection .pinxel-shop__filters-title {
	font-size: 1.2rem;
	margin: 0;
}

.pinxel-shop__filters .wp-block-woocommerce-product-filter-active:not([hidden]) {
	display: grid;
	gap: .8rem;
	margin: 0 0 .25rem;
}

.pinxel-shop__filters .wc-block-product-filter-removable-chips__items {
	display: grid;
	gap: .5rem;
	width: 100%;
}

.pinxel-shop__filters .wc-block-product-filter-removable-chips__item {
	background: var(--pinxel-color-background);
	border-radius: var(--pinxel-radius-small);
	box-sizing: border-box;
	line-height: 1.35;
	padding: .55rem .65rem;
	width: 100%;
}

.pinxel-shop__filters .wp-block-woocommerce-product-filter-clear-button .wp-block-button {
	margin: 0;
}

.pinxel-shop__filters .wp-block-woocommerce-product-filter-clear-button .wp-block-button__link {
	box-sizing: border-box;
	padding: .7rem 1rem;
	width: 100%;
}

.pinxel-shop__filter-heading {
	border-top: 1px solid color-mix(in srgb, var(--pinxel-color-text) 12%, transparent);
	font-size: .8rem;
	font-weight: 800;
	letter-spacing: .08em;
	margin: 1.35rem 0 .75rem;
	padding-top: 1.25rem;
	text-transform: uppercase;
}

.pinxel-shop__filters input[type="text"],
.pinxel-shop__filters input[type="number"] {
	background: var(--pinxel-color-background);
	border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 18%, transparent);
	border-radius: var(--pinxel-radius-small);
	box-sizing: border-box;
	color: var(--pinxel-color-text);
	min-height: 42px;
	padding: .5rem .65rem;
}

.pinxel-shop__filters input[type="range"] {
	accent-color: var(--pinxel-color-primary);
}

.pinxel-shop__filters .wc-block-product-filter-price-slider__content {
	align-items: center;
	column-gap: .5rem;
	display: grid;
	grid-template-areas:
		"range range range"
		"minimum separator maximum";
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	row-gap: .35rem;
	width: 100%;
}

.pinxel-shop__filters .wc-block-product-filter-price-slider__content::after {
	color: var(--pinxel-color-muted);
	content: "–";
	grid-area: separator;
}

.pinxel-shop__filters .wc-block-product-filter-price-slider__range {
	--range-color: var(--pinxel-color-primary);
	grid-area: range;
	margin: .25rem 0;
	width: 100%;
}

.pinxel-shop__filters .wc-block-product-filter-price-slider__left {
	grid-area: minimum;
	min-width: 0;
}

.pinxel-shop__filters .wc-block-product-filter-price-slider__right {
	grid-area: maximum;
	justify-self: end;
	min-width: 0;
	text-align: right;
}

.pinxel-shop__filters .wc-block-product-filter-price-slider__left,
.pinxel-shop__filters .wc-block-product-filter-price-slider__right {
	font-size: .9rem;
	white-space: nowrap;
}

.pinxel-shop__filters .wc-block-product-filter-checkbox-list__items {
	display: grid;
	gap: .65rem;
}

.pinxel-shop__filters .wc-block-product-filter-checkbox-list__label {
	font-size: .9rem;
}

.pinxel-shop__collection {
	align-items: start;
	column-gap: var(--pinxel-component-gap);
	display: grid !important;
	grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
	row-gap: 0;
}

.pinxel-shop__grid {
	display: grid !important;
	grid-column: 2;
	grid-row: 1;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: var(--pinxel-component-gap) !important;
	margin: 0 !important;
}

.pinxel-shop__grid > li {
	background: var(--pinxel-color-surface);
	border-radius: var(--pinxel-radius-large);
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	width: auto !important;
}

.pinxel-product-card__image {
	margin: 0;
	overflow: hidden;
}

.pinxel-product-card__image img {
	aspect-ratio: 4 / 3;
	display: block;
	object-fit: cover;
	transition: transform 280ms ease;
	width: 100%;
}

.pinxel-shop__grid > li:hover .pinxel-product-card__image img {
	transform: scale(1.025);
}

.pinxel-product-card__title,
.pinxel-product-card__rating,
.pinxel-product-card__price,
.pinxel-product-card__button {
	margin-inline: clamp(1.25rem, 3vw, 1.75rem);
}

.pinxel-product-card__title {
	font-family: var(--pinxel-font-heading);
	font-size: clamp(1.2rem, 2vw, 1.55rem);
	letter-spacing: -.02em;
	line-height: 1.2;
	margin-bottom: .75rem;
	margin-top: 1.4rem;
}

.pinxel-product-card__title a {
	color: var(--pinxel-color-text);
	text-decoration: none;
}

.pinxel-product-card__title a:hover,
.pinxel-product-card__title a:focus-visible {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
}

.pinxel-product-card__rating {
	margin-bottom: .75rem;
}

.pinxel-product-card__price {
	color: var(--pinxel-color-text);
	font-weight: 750;
	margin-bottom: 1rem;
	margin-top: auto;
}

.pinxel-product-card__button {
	align-items: stretch !important;
	margin-bottom: 1.5rem;
	width: auto;
}

.pinxel-product-card__button .wp-block-button__link,
.pinxel-product-card__button .wp-element-button {
	width: 100%;
}

.pinxel-shop__pagination {
	border-top: 1px solid color-mix(in srgb, var(--pinxel-color-text) 14%, transparent);
	gap: .75rem;
	grid-column: 2;
	grid-row: 2;
	margin-top: clamp(2.5rem, 6vw, 4rem);
	padding-top: 2rem;
}

.pinxel-shop__collection > .wp-block-woocommerce-product-collection-no-results {
	grid-column: 2;
	grid-row: 1;
}

.pinxel-shop__pagination a,
.pinxel-shop__pagination .page-numbers {
	font-weight: 700;
	text-underline-offset: .2em;
}

.wp-site-blocks > main.pinxel-account {
	padding-top: 0 !important;
}

body:not(.wp-admin) .wp-block-template-part:has(.pinxel-site-header) + .pinxel-account {
	padding-top: 0 !important;
}

.pinxel-account__breadcrumbs {
	color: var(--pinxel-color-muted);
	font-size: .875rem;
	margin: 0 0 .65rem;
}

.pinxel-account__breadcrumbs a {
	color: inherit;
	text-underline-offset: .2em;
}

.pinxel-account__eyebrow {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	font-size: var(--pinxel-font-size-label);
	font-weight: 750;
	letter-spacing: .12em;
	margin: 0 0 .9rem;
	text-transform: uppercase;
}

.pinxel-account__title {
	font-family: var(--pinxel-font-heading);
	font-size: clamp(2.1rem, 3.5vw, 3.25rem);
	letter-spacing: -.035em;
	line-height: 1.05;
	margin: 0;
}

.pinxel-account__description {
	color: var(--pinxel-color-muted);
	font-size: var(--pinxel-font-size-lead);
	line-height: 1.65;
	margin: 1.25rem 0 0;
	max-width: var(--pinxel-wide-width) !important;
}

.pinxel-account__content {
	box-sizing: border-box;
	padding: clamp(1rem, 1.5vw, 1.25rem) 0 clamp(2.5rem, 5vw, 4rem);
}

.pinxel-account__body,
.pinxel-account__body > .woocommerce {
	box-sizing: border-box;
	max-width: none !important;
	width: 100%;
}

.pinxel-account__body {
	margin: 0 !important;
}

.wp-site-blocks .pinxel-account__body.wp-block-post-content > :first-child {
	padding-top: 0 !important;
}

.wp-site-blocks .pinxel-account__body.wp-block-post-content > .woocommerce:has(> .woocommerce-form-login),
.wp-site-blocks .pinxel-account__body.wp-block-post-content > .woocommerce:has(> .lost_reset_password) {
	padding-top: clamp(1.75rem, 4vw, 3rem) !important;
}

.pinxel-account__body > .woocommerce:has(> .woocommerce-form-login),
.pinxel-account__body > .woocommerce:has(> .lost_reset_password) {
	background: var(--pinxel-color-background);
	border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 12%, transparent);
	border-top: 4px solid var(--pinxel-color-primary);
	border-radius: var(--pinxel-radius-large);
	box-shadow: 0 20px 60px color-mix(in srgb, var(--pinxel-color-text) 11%, transparent);
	margin-block-start: clamp(1.5rem, 3vw, 2.25rem);
	margin-inline: auto;
	max-width: 540px;
	padding: clamp(1.75rem, 4vw, 3rem);
}

.pinxel-account__body > .woocommerce:has(> .woocommerce-form-login) > h2:first-of-type {
	display: none;
}

.pinxel-account__body .woocommerce form.login,
.pinxel-account__body .woocommerce form.register,
.pinxel-account__body .woocommerce form.lost_reset_password,
.pinxel-account__body .woocommerce form.edit-account {
	border: 0;
	box-sizing: border-box;
	margin: 0;
	max-width: 100%;
	padding: 0;
	width: 100%;
}

.pinxel-account__body .woocommerce-form-login {
	padding-top: .5rem !important;
}

.pinxel-account__body .woocommerce form .form-row {
	box-sizing: border-box;
	margin: 0 0 1.1rem;
	max-width: 100%;
	padding: 0;
	width: 100%;
}

.pinxel-account__body .woocommerce form .form-row label:not(.woocommerce-form__label-for-checkbox) {
	color: var(--pinxel-color-text);
	display: block;
	font-size: .9rem;
	font-weight: 750;
	margin-bottom: .5rem;
}

.pinxel-account__body .woocommerce .input-text,
.pinxel-account__body .woocommerce input[type="email"],
.pinxel-account__body .woocommerce input[type="password"],
.pinxel-account__body .woocommerce input[type="tel"],
.pinxel-account__body .woocommerce input[type="text"],
.pinxel-account__body .woocommerce select,
.pinxel-account__body .woocommerce textarea {
	background: var(--pinxel-color-background);
	border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 18%, transparent);
	border-radius: var(--pinxel-radius-small);
	box-sizing: border-box;
	color: var(--pinxel-color-text);
	font-family: inherit;
	font-size: 1rem !important;
	line-height: 1.4;
	min-height: 52px;
	padding: .8rem .9rem;
	transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
	width: 100%;
}

.pinxel-account__body .woocommerce-form-login .password-input,
.pinxel-account__body .woocommerce-form-register .password-input {
	display: block;
	position: relative;
}

.pinxel-account__body .woocommerce-form-login .password-input .input-text,
.pinxel-account__body .woocommerce-form-register .password-input .input-text {
	padding-right: 3.25rem;
}

.pinxel-account__body .woocommerce-form-login .show-password-input,
.pinxel-account__body .woocommerce-form-register .show-password-input {
	box-sizing: border-box;
	height: 44px;
	margin: 0;
	padding: 11px;
	position: absolute;
	right: .25rem;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
}

.pinxel-account__body .woocommerce-form-login .input-text,
.pinxel-account__body .woocommerce-form-register .input-text {
	background: color-mix(in srgb, var(--pinxel-color-surface) 72%, var(--pinxel-color-background));
}

.pinxel-account__body .woocommerce-form-login .input-text:focus,
.pinxel-account__body .woocommerce-form-register .input-text:focus {
	background: var(--pinxel-color-background);
}

.pinxel-account__body .woocommerce .input-text:focus,
.pinxel-account__body .woocommerce input:focus,
.pinxel-account__body .woocommerce select:focus,
.pinxel-account__body .woocommerce textarea:focus {
	border-color: var(--pinxel-color-primary);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--pinxel-color-primary) 18%, transparent);
	outline: 0;
}

.pinxel-account__body .woocommerce-form-login__rememberme {
	align-items: center;
	display: inline-flex;
	gap: .45rem;
	margin: 0 0 .25rem;
}

.pinxel-account__body .woocommerce-form-login__rememberme input {
	accent-color: var(--pinxel-color-primary);
	height: 1rem;
	margin: 0;
	width: 1rem;
}

.pinxel-account__body .woocommerce .button {
	border-radius: var(--pinxel-button-radius);
	box-sizing: border-box;
	min-height: 46px;
	padding: var(--pinxel-button-padding-y) var(--pinxel-button-padding-x);
}

.pinxel-account__body .woocommerce-form-login__submit {
	display: block;
	font-size: 1rem;
	margin-top: .5rem;
	min-height: 52px;
	width: 100%;
}

.pinxel-account__body .lost_password {
	border-top: 1px solid color-mix(in srgb, var(--pinxel-color-text) 10%, transparent);
	margin: 1.5rem 0 0;
	padding-top: 1.25rem;
	text-align: center;
}

.pinxel-account__body .lost_password a {
	font-weight: 700;
	text-decoration: none;
}

.pinxel-account__body .lost_password a:hover,
.pinxel-account__body .lost_password a:focus-visible {
	text-decoration: underline;
	text-underline-offset: .22em;
}

.pinxel-account__body .u-columns {
	display: grid;
	gap: var(--pinxel-component-gap);
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-inline: auto;
	max-width: 1040px;
}

.pinxel-account__body #customer_login {
	margin-block-start: clamp(1.5rem, 3vw, 2.25rem);
}

.pinxel-account__body .u-columns .u-column1,
.pinxel-account__body .u-columns .u-column2 {
	background: var(--pinxel-color-background);
	border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 12%, transparent);
	border-top: 4px solid var(--pinxel-color-primary);
	border-radius: var(--pinxel-radius-large);
	box-sizing: border-box;
	float: none;
	padding: clamp(1.5rem, 4vw, 2.5rem);
	width: auto;
}

.pinxel-account__body .u-columns h2 {
	font-size: clamp(1.6rem, 2.5vw, 2rem);
	margin: .4rem 0 1.5rem;
}

.pinxel-account__body .u-columns .u-column1 > h2:first-child {
	display: none;
}

.pinxel-account__body .woocommerce:has(.woocommerce-MyAccount-navigation) {
	align-items: start;
	display: grid;
	gap: clamp(1.5rem, 4vw, 3rem);
	grid-template-columns: minmax(200px, 240px) minmax(0, 1fr);
}

.pinxel-account__body .woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-notices-wrapper {
	grid-column: 1 / -1;
}

.pinxel-account__body .woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-notices-wrapper:empty {
	display: none;
}

.pinxel-account__body .woocommerce-MyAccount-navigation,
.pinxel-account__body .woocommerce-MyAccount-content {
	float: none;
	width: auto;
}

.pinxel-account__body .woocommerce-MyAccount-navigation {
	grid-column: 1;
	position: sticky;
	top: calc(var(--pinxel-header-offset, 6rem) + 1rem);
}

.pinxel-account__body .woocommerce-MyAccount-content {
	grid-column: 2;
}

.pinxel-account__body .woocommerce-MyAccount-navigation ul {
	background: var(--pinxel-color-surface);
	border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 9%, transparent);
	border-radius: var(--pinxel-radius-medium);
	list-style: none;
	margin: 0;
	overflow: hidden;
	padding: .6rem;
}

.pinxel-account__body .woocommerce-MyAccount-navigation li {
	border: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.pinxel-account__body .woocommerce-MyAccount-navigation a {
	border: 0 !important;
	border-radius: var(--pinxel-radius-small);
	box-shadow: none !important;
	color: var(--pinxel-color-text);
	display: block;
	font-weight: 700;
	padding: .75rem .9rem;
	text-decoration: none !important;
	transition: background-color 160ms ease, color 160ms ease;
}

.pinxel-account__body .woocommerce-MyAccount-navigation a:hover,
.pinxel-account__body .woocommerce-MyAccount-navigation a:focus-visible {
	background: var(--pinxel-color-primary-soft);
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
}

.pinxel-account__body .woocommerce-MyAccount-navigation .is-active a {
	background: var(--pinxel-color-primary-soft);
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
}

.pinxel-account__body .woocommerce-MyAccount-content {
	background: var(--pinxel-color-surface);
	border-radius: var(--pinxel-radius-large);
	box-sizing: border-box;
	min-width: 0;
	padding: clamp(1.5rem, 4vw, 2.5rem);
}

.pinxel-account__body .woocommerce-MyAccount-content > :first-child {
	margin-top: 0;
}

.pinxel-account__body .woocommerce table.shop_table {
	background: var(--pinxel-color-background);
	border-color: color-mix(in srgb, var(--pinxel-color-text) 12%, transparent);
	border-radius: var(--pinxel-radius-medium);
	margin-bottom: 1.5rem;
}

.pinxel-account__body .woocommerce table.shop_table th,
.pinxel-account__body .woocommerce table.shop_table td {
	padding: .85rem 1rem;
}

.pinxel-account__body .woocommerce-Addresses {
	display: grid;
	gap: var(--pinxel-component-gap);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pinxel-account__body .woocommerce-Addresses .woocommerce-Address {
	background: var(--pinxel-color-background);
	border-radius: var(--pinxel-radius-medium);
	box-sizing: border-box;
	float: none;
	padding: 1.25rem;
	width: auto;
}

.wp-site-blocks > main.pinxel-product {
	padding-top: 0 !important;
}

body:not(.wp-admin) .wp-block-template-part:has(.pinxel-site-header) + .pinxel-product {
	padding-top: 0 !important;
}

.pinxel-product__breadcrumbs {
	color: var(--pinxel-color-muted);
	font-size: .875rem;
	margin: 0 0 clamp(1.25rem, 2.5vw, 2rem);
}

.pinxel-product__breadcrumbs a {
	color: inherit;
	text-underline-offset: .2em;
}

.pinxel-product__content {
	box-sizing: border-box;
	padding: clamp(1rem, 1.5vw, 1.25rem) 0 clamp(2.5rem, 5vw, 4rem);
}

.pinxel-product__hero {
	align-items: start !important;
	gap: clamp(2rem, 5vw, 4.5rem);
	margin-bottom: 0;
}

.pinxel-product__gallery {
	background: var(--pinxel-color-surface);
	border-radius: var(--pinxel-radius-large);
	box-sizing: border-box;
	overflow: hidden;
	position: relative;
}

.pinxel-product__gallery .onsale {
	background: var(--pinxel-color-primary) !important;
	border: 0 !important;
	border-radius: 999px;
	color: var(--pinxel-color-on-primary, #fff);
	inset: 1rem auto auto 1rem !important;
	line-height: 1;
	margin: 0 !important;
	min-height: 0;
	min-width: 0;
	padding: .55rem .75rem;
	transform: none;
	z-index: 3;
}

.pinxel-product__gallery .woocommerce-product-gallery,
.pinxel-product__gallery .wp-block-woocommerce-product-image-gallery {
	margin: 0;
	width: 100% !important;
}

.pinxel-product__gallery img {
	display: block;
	height: auto;
	width: 100%;
}

.pinxel-product__summary {
	box-sizing: border-box;
	padding-block: clamp(.5rem, 2vw, 1.5rem);
}

.pinxel-product__category {
	font-size: .8rem;
	font-weight: 800;
	letter-spacing: .08em;
	margin: 0 0 .9rem;
	text-transform: uppercase;
}

.pinxel-product__category a {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	text-decoration: none;
}

.pinxel-product__title {
	font-family: var(--pinxel-font-heading);
	font-size: clamp(2.25rem, 4vw, 3.75rem);
	letter-spacing: -.04em;
	line-height: 1.05;
	margin: 0 0 1.25rem;
}

.pinxel-product__rating {
	margin-bottom: 1rem;
}

.pinxel-product__price {
	font-size: clamp(1.35rem, 2.5vw, 1.75rem);
	font-weight: 800;
	margin-bottom: 1rem;
}

.pinxel-product__price del {
	color: var(--pinxel-color-muted);
	font-weight: 500;
	opacity: .8;
}

.pinxel-product__excerpt {
	color: var(--pinxel-color-muted);
	font-size: 1.05rem;
	line-height: 1.7;
	margin-bottom: 1.5rem;
}

.pinxel-product__excerpt p:last-child {
	margin-bottom: 0;
}

.pinxel-product__separator {
	border-color: color-mix(in srgb, var(--pinxel-color-text) 12%, transparent);
	max-width: none !important;
	margin: 1.5rem 0 !important;
	width: 100% !important;
}

.pinxel-product__summary form.cart {
	align-items: stretch;
	display: grid !important;
	gap: .75rem;
	grid-template-columns: 76px minmax(180px, 1fr);
	margin-bottom: 1.5rem;
	max-width: 420px;
}

.pinxel-product__summary form.cart .quantity {
	float: none !important;
	margin: 0 !important;
	width: 76px !important;
}

.pinxel-product__summary form.cart .quantity .qty {
	background: var(--pinxel-color-background);
	border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 18%, transparent);
	border-radius: var(--pinxel-radius-small);
	box-sizing: border-box;
	font: inherit;
	height: 100%;
	min-height: 48px;
	padding: .7rem;
	width: 76px !important;
}

.pinxel-product__summary form.cart .single_add_to_cart_button {
	float: none !important;
	min-height: 48px;
	width: 100%;
}

.pinxel-product__summary .stock {
	font-weight: 700;
}

.pinxel-product__summary .stock.out-of-stock {
	color: #a61b1b;
}

.pinxel-product__meta {
	color: var(--pinxel-color-muted);
	font-size: .9rem;
	margin-top: 1.25rem;
}

.pinxel-product__details {
	border-top: 1px solid color-mix(in srgb, var(--pinxel-color-text) 12%, transparent);
	margin-top: clamp(2.5rem, 6vw, 5rem);
	padding-top: clamp(2rem, 4vw, 3rem);
}

.pinxel-product__details h2 {
	font-size: clamp(1.75rem, 3vw, 2.5rem);
}

.pinxel-product__details .wc-tabs {
	display: flex !important;
	flex-wrap: wrap;
	gap: .5rem;
	list-style: none;
	margin: 0 0 2rem !important;
	padding: 0 !important;
}

.pinxel-product__details .wc-tabs::before,
.pinxel-product__details .wc-tabs::after,
.pinxel-product__details .wc-tabs li::before,
.pinxel-product__details .wc-tabs li::after {
	display: none !important;
}

.pinxel-product__details .wc-tabs li {
	background: transparent !important;
	border: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.pinxel-product__details .wc-tabs li a {
	background: var(--pinxel-color-surface);
	border-radius: 999px;
	color: var(--pinxel-color-text);
	display: block;
	padding: .65rem 1rem !important;
	text-decoration: none;
}

.pinxel-product__details .wc-tabs li.active a,
.pinxel-product__details .wc-tabs li a:hover,
.pinxel-product__details .wc-tabs li a:focus-visible {
	background: var(--pinxel-color-primary);
	color: var(--pinxel-color-on-primary, #fff);
}

.pinxel-product__details .woocommerce-Tabs-panel {
	margin: 0 !important;
	max-width: 780px;
}

.pinxel-product__details .comment-form input[type="email"],
.pinxel-product__details .comment-form input[type="text"],
.pinxel-product__details .comment-form select,
.pinxel-product__details .comment-form textarea {
	border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 18%, transparent);
	border-radius: var(--pinxel-radius-small);
	box-sizing: border-box;
	font: inherit;
	padding: .7rem .8rem;
	width: 100%;
}

.pinxel-related-products {
	border-top: 1px solid color-mix(in srgb, var(--pinxel-color-text) 12%, transparent);
	margin-top: clamp(2.5rem, 6vw, 5rem);
	padding-top: clamp(2rem, 4vw, 3rem);
}

.pinxel-related-products__title {
	font-size: clamp(1.8rem, 3vw, 2.6rem) !important;
	margin: 0 0 1.5rem;
}

.pinxel-related-products__grid {
	display: grid !important;
	gap: var(--pinxel-component-gap) !important;
	grid-template-columns: repeat(auto-fill, minmax(220px, 280px)) !important;
	margin: 0 !important;
}

.pinxel-related-products__grid > li {
	background: var(--pinxel-color-surface);
	border-radius: var(--pinxel-radius-large);
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	width: auto !important;
}

.pinxel-related-products__grid .pinxel-product-card__image img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.wp-site-blocks > main.pinxel-commerce {
	margin-block-start: 0 !important;
	padding-top: 0 !important;
}

.pinxel-commerce__intro {
	box-sizing: border-box;
	margin: 0;
}

.pinxel-commerce__breadcrumbs {
	color: var(--pinxel-color-muted);
	font-size: .875rem;
	margin: 0 0 .45rem;
}

.pinxel-commerce__breadcrumbs a {
	color: inherit;
	text-underline-offset: .2em;
}

.pinxel-commerce__title {
	font-family: var(--pinxel-font-heading);
	font-size: clamp(1.85rem, 3vw, 2.6rem);
	letter-spacing: -.035em;
	line-height: 1.05;
	margin: 0;
}

.pinxel-commerce__content {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: clamp(1.25rem, 2.5vw, 1.75rem);
	padding: clamp(1rem, 1.5vw, 1.25rem) 0 clamp(2.5rem, 5vw, 4rem);
}

.pinxel-commerce__content > .pinxel-commerce__body {
	margin: 0 !important;
	padding-top: 0;
}

.pinxel-commerce__content > .wc-block-store-notices {
	margin: 0 !important;
}

.pinxel-commerce__body,
.pinxel-commerce__body > .wp-block-woocommerce-cart,
.pinxel-commerce__body > .wp-block-woocommerce-checkout {
	margin-inline: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

.pinxel-commerce__body > .wp-block-woocommerce-cart,
.pinxel-commerce__body > .wp-block-woocommerce-checkout {
	margin-block-start: 0 !important;
}

.pinxel-commerce :where(.wc-block-components-text-input input,
	.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
	.wc-block-components-address-form select,
	.wc-block-components-textarea) {
	background: var(--pinxel-color-background);
	border-color: color-mix(in srgb, var(--pinxel-color-text) 18%, transparent) !important;
	border-radius: var(--pinxel-radius-small) !important;
	box-shadow: none !important;
	font: inherit;
}

.pinxel-commerce :where(.wc-block-components-text-input input:focus,
	.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,
	.wc-block-components-address-form select:focus,
	.wc-block-components-textarea:focus) {
	border-color: var(--pinxel-color-primary) !important;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--pinxel-color-primary) 15%, transparent) !important;
}

.pinxel-commerce :where(.wc-block-components-button:not(.is-link),
	.wc-block-cart__submit-button,
	.wc-block-components-checkout-place-order-button) {
	border-radius: 999px !important;
	font-weight: 750;
	min-height: 52px;
}

/* WooCommerce notices inherit the Pinxel surface, radius and semantic color
 * language across account, catalog, product, cart and checkout templates. */
:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce)
	:where(.woocommerce-info, .woocommerce-message, .woocommerce-error) {
	--pinxel-notice-color: var(--pinxel-color-primary);
	background: color-mix(in srgb, var(--pinxel-notice-color) 7%, var(--pinxel-color-background)) !important;
	border: 1px solid color-mix(in srgb, var(--pinxel-notice-color) 24%, transparent) !important;
	border-left: 4px solid var(--pinxel-notice-color) !important;
	border-radius: var(--pinxel-radius-medium) !important;
	box-shadow: none;
	box-sizing: border-box;
	color: var(--pinxel-color-text) !important;
	font-size: .95rem;
	line-height: 1.5;
	margin: 0 0 1rem !important;
	min-height: 58px;
	padding: 1rem 1rem 1rem 3.5rem !important;
	position: relative;
	width: 100%;
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce) .woocommerce-message {
	--pinxel-notice-color: var(--pinxel-color-success);
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce) .woocommerce-error {
	--pinxel-notice-color: var(--pinxel-color-danger);
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce)
	:where(.woocommerce-info, .woocommerce-message, .woocommerce-error)::before {
	align-items: center;
	background: var(--pinxel-notice-color);
	border-radius: 999px;
	color: #fff;
	content: "i";
	display: flex;
	font-family: var(--pinxel-font-body);
	font-size: .8rem;
	font-weight: 850;
	height: 1.5rem;
	justify-content: center;
	left: 1rem;
	line-height: 1;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 1.5rem;
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce) .woocommerce-message::before {
	content: "✓";
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce) .woocommerce-error::before {
	content: "!";
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce)
	:where(.woocommerce-info, .woocommerce-message, .woocommerce-error) .button {
	background: var(--pinxel-color-primary) !important;
	border: 0 !important;
	border-radius: 999px !important;
	color: var(--pinxel-color-on-primary, #fff) !important;
	float: right;
	font-size: .875rem;
	font-weight: 750;
	line-height: 1.25;
	margin: -.25rem 0 -.25rem 1rem;
	min-height: 40px;
	padding: .65rem 1rem !important;
	text-decoration: none !important;
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce)
	:where(.woocommerce-info, .woocommerce-message, .woocommerce-error) a:not(.button) {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	font-weight: 700;
	text-underline-offset: .2em;
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce) .wc-block-components-notice-banner {
	background: color-mix(in srgb, var(--pinxel-color-primary) 7%, var(--pinxel-color-background)) !important;
	border: 1px solid color-mix(in srgb, var(--pinxel-color-primary) 24%, transparent) !important;
	border-left: 4px solid var(--pinxel-color-primary) !important;
	border-radius: var(--pinxel-radius-medium) !important;
	box-shadow: none !important;
	box-sizing: border-box;
	color: var(--pinxel-color-text) !important;
	padding: 1rem !important;
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce)
	.wc-block-components-notice-banner > svg {
	background: var(--pinxel-color-primary) !important;
	fill: var(--pinxel-color-on-primary, #fff) !important;
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce)
	.wc-block-components-notice-banner__content a {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary)) !important;
	font-weight: 700;
	text-underline-offset: .2em;
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce) .wc-block-components-notice-banner.is-success {
	background: color-mix(in srgb, var(--pinxel-color-success) 7%, var(--pinxel-color-background)) !important;
	border-color: color-mix(in srgb, var(--pinxel-color-success) 24%, transparent) !important;
	border-left-color: var(--pinxel-color-success) !important;
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce)
	.wc-block-components-notice-banner.is-success > svg {
	background: var(--pinxel-color-success) !important;
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce) .wc-block-components-notice-banner.is-error {
	background: color-mix(in srgb, var(--pinxel-color-danger) 7%, var(--pinxel-color-background)) !important;
	border-color: color-mix(in srgb, var(--pinxel-color-danger) 24%, transparent) !important;
	border-left-color: var(--pinxel-color-danger) !important;
}

:where(.pinxel-account, .pinxel-shop, .pinxel-product, .pinxel-commerce)
	.wc-block-components-notice-banner.is-error > svg {
	background: var(--pinxel-color-danger) !important;
}

.pinxel-cart .wc-block-cart {
	margin: 0;
	padding-top: 0;
}

.pinxel-cart :where(.wp-block-woocommerce-filled-cart-block, .wp-block-woocommerce-empty-cart-block),
.pinxel-checkout :where(.wp-block-woocommerce-checkout-fields-block, .wp-block-woocommerce-checkout-totals-block) {
	margin-block-start: 0 !important;
}

.pinxel-cart .wc-block-cart-items {
	border-collapse: separate;
	border-spacing: 0;
}

.pinxel-cart .wc-block-cart-items__row {
	border-bottom: 1px solid color-mix(in srgb, var(--pinxel-color-text) 12%, transparent);
}

.pinxel-cart .wc-block-cart-item__image img,
.pinxel-checkout .wc-block-components-order-summary-item__image img {
	background: var(--pinxel-color-surface);
	border-radius: var(--pinxel-radius-small);
}

.pinxel-cart :where(.wc-block-cart-item__product, .wc-block-components-product-name),
.pinxel-checkout .wc-block-components-product-name {
	font-family: var(--pinxel-font-heading);
	font-weight: 750;
}

.pinxel-cart .wc-block-components-product-name,
.pinxel-checkout .wc-block-components-product-name {
	color: var(--pinxel-color-text);
	text-decoration: none;
}

.pinxel-cart .wc-block-components-product-metadata__description,
.pinxel-checkout .wc-block-components-product-metadata__description {
	display: none;
}

.pinxel-cart .wc-block-components-quantity-selector {
	background: var(--pinxel-color-background);
	border-color: color-mix(in srgb, var(--pinxel-color-text) 18%, transparent);
	border-radius: var(--pinxel-radius-small);
}

.pinxel-cart .wp-block-woocommerce-cart-totals-block,
.pinxel-checkout .wp-block-woocommerce-checkout-totals-block {
	background: var(--pinxel-color-surface);
	border: 0 !important;
	border-radius: var(--pinxel-radius-large);
	box-sizing: border-box;
	height: fit-content;
	padding: clamp(1.25rem, 3vw, 2rem);
}

.pinxel-cart .wp-block-woocommerce-cart-totals-block {
	position: sticky;
	top: calc(var(--pinxel-header-offset, 6rem) + 1rem);
}

.pinxel-cart .wc-block-components-totals-wrapper,
.pinxel-checkout .wc-block-components-totals-wrapper {
	border-color: color-mix(in srgb, var(--pinxel-color-text) 12%, transparent);
}

.pinxel-cart .wc-block-components-totals-coupon-link,
.pinxel-checkout .wc-block-components-totals-coupon-link {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	font-weight: 700;
}

.pinxel-cart .wp-block-woocommerce-empty-cart-block {
	background: var(--pinxel-color-surface);
	border-radius: var(--pinxel-radius-large);
	box-sizing: border-box;
	padding: clamp(2rem, 6vw, 4rem) clamp(1.25rem, 5vw, 3rem);
}

.pinxel-cart .wc-block-cart__empty-cart__title {
	font-size: clamp(1.8rem, 4vw, 2.75rem);
	margin-top: 0;
}

.pinxel-cart .wc-block-cart__empty-cart__title.with-empty-cart-icon::before {
	background-color: var(--pinxel-color-primary);
	height: 3.5em;
	margin-bottom: 1.25em;
	mask-size: 3.5em;
	width: 3.5em;
}

.pinxel-cart .wp-block-woocommerce-empty-cart-block .is-style-dots {
	margin-block: 1.5rem;
}

.pinxel-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new {
	margin-top: 1.5rem;
}

.pinxel-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
	display: grid !important;
	gap: var(--pinxel-component-gap);
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 0;
}

.pinxel-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
	background: var(--pinxel-color-background);
	border: 0;
	border-radius: var(--pinxel-radius-medium);
	box-sizing: border-box;
	max-width: none !important;
	padding: 1rem;
	width: auto !important;
}

.pinxel-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img {
	border-radius: var(--pinxel-radius-small);
}

.pinxel-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
	color: var(--pinxel-color-text);
	font-family: var(--pinxel-font-heading);
	font-weight: 750;
}

.pinxel-cart .wp-block-woocommerce-empty-cart-block .wp-block-button__link {
	border-radius: 999px;
	width: 100%;
}

.pinxel-checkout .wc-block-checkout {
	margin: 0;
	padding-top: 0;
}

.pinxel-checkout .wp-block-woocommerce-checkout-fields-block {
	padding-right: clamp(1rem, 3vw, 2.5rem);
}

.pinxel-checkout .wc-block-components-checkout-step {
	border-bottom: 1px solid color-mix(in srgb, var(--pinxel-color-text) 12%, transparent);
	margin: 0 0 1.75rem;
	padding: 0 0 1.75rem;
}

.pinxel-checkout .wc-block-components-checkout-step__heading {
	margin-bottom: 1rem;
}

.pinxel-checkout .wc-block-components-checkout-step__title,
.pinxel-checkout .wc-block-components-title {
	font-family: var(--pinxel-font-heading);
	font-size: clamp(1.2rem, 2vw, 1.55rem);
	font-weight: 750;
}

.pinxel-checkout .wp-block-woocommerce-checkout-totals-block {
	position: sticky;
	top: calc(var(--pinxel-header-offset, 6rem) + 1rem);
}

.pinxel-checkout .wc-block-components-checkout-return-to-cart-button {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	font-weight: 700;
}

.pinxel-checkout .wc-block-checkout__actions_row {
	align-items: center;
	gap: 1rem;
}

/* Preserve the full wide alignment when space allows, then introduce an
 * exterior safe area without changing the internal content alignment. */
:where(.pinxel-shop__content,
	.pinxel-account__content,
	.pinxel-product__content,
	.pinxel-commerce__content) {
	margin-inline: auto !important;
	max-width: var(--pinxel-wide-width) !important;
	width: calc(100% - var(--pinxel-content-gutter) - var(--pinxel-content-gutter)) !important;
}

@media (max-width: 781px) {
	.pinxel-site-header__inner {
		align-items: center !important;
		gap: .125rem;
		justify-content: flex-start !important;
		min-height: var(--pinxel-header-mobile-height, 56px);
		padding-bottom: var(--pinxel-header-mobile-padding, 8px) !important;
		padding-top: var(--pinxel-header-mobile-padding, 8px) !important;
	}

	.pinxel-site-header__brand {
		align-items: center;
		align-self: center;
	}

	.pinxel-site-header .wp-block-site-logo {
		max-width: min(42vw, 220px);
	}

	.pinxel-site-header .wp-block-site-logo img {
		max-height: var(--pinxel-header-mobile-logo-height, 32px);
	}

	.pinxel-site-header .wp-block-navigation {
		align-items: center;
		flex: 0 0 44px;
		justify-content: center;
		margin: 0 !important;
		width: 44px;
	}

	.pinxel-site-header .wp-block-navigation__responsive-container-open {
		align-items: center;
		display: flex;
		height: 44px;
		justify-content: center;
		margin: 0;
		width: 44px;
	}

	.pinxel-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none;
	}

	.pinxel-site-header .wp-block-navigation__responsive-container.is-menu-open {
		box-sizing: border-box;
		max-height: 100dvh;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		padding: clamp(1.25rem, 5vw, 2rem) !important;
	}

	.pinxel-site-header .wp-block-navigation__responsive-close,
	.pinxel-site-header .wp-block-navigation__responsive-dialog,
	.pinxel-site-header .wp-block-navigation__responsive-container-content {
		box-sizing: border-box;
		width: 100%;
	}

	.pinxel-site-header .wp-block-navigation__responsive-dialog {
		min-height: calc(100dvh - clamp(2.5rem, 10vw, 4rem));
	}

	.pinxel-site-header .wp-block-navigation__responsive-container-close {
		align-items: center;
		background: color-mix(in srgb, currentColor 8%, transparent);
		border-radius: 999px;
		display: flex;
		height: 44px;
		justify-content: center;
		margin-left: auto;
		padding: 10px;
		position: relative;
		right: auto;
		top: auto;
		width: 44px;
	}

	.pinxel-site-header .wp-block-navigation__responsive-container-content {
		padding-top: clamp(2rem, 7vh, 4.5rem) !important;
	}

	.pinxel-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
		align-items: stretch !important;
		gap: .35rem;
		width: 100%;
	}

	.pinxel-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
		align-items: stretch;
		width: 100%;
	}

	.pinxel-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
		align-items: center;
		box-sizing: border-box;
		display: flex;
		font-size: 1.05rem;
		font-weight: 700;
		justify-content: flex-start;
		line-height: 1.3;
		min-height: 52px;
		padding: .85rem 1rem !important;
		text-align: left;
		width: 100%;
	}

	.pinxel-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content::after {
		display: none;
	}

	.pinxel-site-header .wp-block-navigation__responsive-container-content .current-menu-item > .wp-block-navigation-item__content,
	.pinxel-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:hover,
	.pinxel-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:focus-visible {
		background: color-mix(in srgb, currentColor 9%, transparent) !important;
	}

	.pinxel-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container {
		box-sizing: border-box;
		padding-left: 1rem;
		width: 100% !important;
	}

	.pinxel-site-header .wp-block-woocommerce-customer-account,
	.pinxel-site-header .wc-block-mini-cart {
		align-items: center;
		display: flex;
		flex: 0 0 44px;
		justify-content: center;
		margin: 0;
		width: 44px;
	}

	.pinxel-site-header :where(.wc-block-customer-account__link, .wc-block-mini-cart__button) {
		align-items: center;
		box-sizing: border-box;
		display: flex;
		height: 44px;
		justify-content: center;
		margin: 0;
		padding: 10px;
		width: 44px;
	}

	.pinxel-site-header :where(.pinxel-navigation-icon, .wc-block-customer-account__account-icon, .wc-block-mini-cart__icon) {
		display: block;
		height: 24px;
		width: 24px;
	}

	.pinxel-cart .wp-block-woocommerce-cart-totals-block,
	.pinxel-checkout .wp-block-woocommerce-checkout-totals-block {
		position: static;
	}

	.pinxel-checkout .wp-block-woocommerce-checkout-fields-block {
		padding-right: 0;
	}

	.pinxel-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.pinxel-commerce__breadcrumbs {
		display: none;
	}

	.pinxel-commerce__content {
		padding-block: 1.5rem 2.5rem;
	}

	.pinxel-cart .wp-block-woocommerce-cart-totals-block,
	.pinxel-checkout .wp-block-woocommerce-checkout-totals-block {
		border-radius: var(--pinxel-radius-medium);
		padding: 1rem;
	}

	.pinxel-checkout .wc-block-checkout__actions_row {
		align-items: stretch;
		flex-direction: column-reverse;
	}

	.pinxel-checkout .wc-block-components-checkout-place-order-button {
		width: 100%;
	}

	.pinxel-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 600px) {
	.pinxel-product__breadcrumbs {
		display: none;
	}

	.pinxel-account__body > .woocommerce:has(> .woocommerce-form-login),
	.pinxel-account__body > .woocommerce:has(> .lost_reset_password) {
		border-radius: var(--pinxel-radius-medium);
		padding: 1.5rem 1.25rem;
	}

	.pinxel-shop__filters .wc-block-product-filters__open-overlay {
		background: var(--pinxel-color-surface);
		border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 14%, transparent);
		border-radius: var(--pinxel-radius-small);
		box-sizing: border-box;
		min-height: 44px;
		padding: .65rem .85rem;
	}

	.pinxel-shop__toolbar {
		align-items: stretch;
		flex-direction: column;
	}

	.pinxel-shop__toolbar select {
		width: 100%;
	}

	.pinxel-account__body .u-columns,
	.pinxel-account__body .woocommerce-Addresses {
		grid-template-columns: 1fr;
	}

	.pinxel-account__body .woocommerce:has(.woocommerce-MyAccount-navigation) {
		grid-template-columns: 1fr;
	}

	.pinxel-account__body .woocommerce-MyAccount-navigation {
		grid-column: 1;
		position: static;
	}

	.pinxel-account__body .woocommerce-MyAccount-content {
		grid-column: 1;
	}

	.pinxel-account__body {
		margin-inline: 0 !important;
		max-width: 100% !important;
		width: auto !important;
	}

	.pinxel-account__body > .woocommerce,
	.pinxel-account__body > .woocommerce:has(> .woocommerce-form-login),
	.pinxel-account__body > .woocommerce:has(> .lost_reset_password) {
		margin-inline: 0 !important;
		max-width: 100% !important;
		min-width: 0;
		width: auto !important;
	}

	.pinxel-account__body .woocommerce table.shop_table {
		display: block;
		overflow-x: auto;
	}

	.pinxel-product__summary form.cart {
		grid-template-columns: 68px minmax(0, 1fr);
		max-width: none;
	}

	.pinxel-product__summary form.cart .quantity,
	.pinxel-product__summary form.cart .quantity .qty {
		width: 68px !important;
	}
}

@media (max-width: 781px) {
	.pinxel-product__hero {
		gap: 1.75rem;
	}

	.pinxel-product__summary {
		padding-block: 0;
	}

	.pinxel-related-products__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 600px) {
	.pinxel-related-products__grid {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 960px) {
	.pinxel-shop__collection {
		grid-template-columns: 1fr;
		row-gap: var(--pinxel-component-gap);
	}

	.pinxel-shop__filters,
	.pinxel-shop__grid,
	.pinxel-shop__pagination,
	.pinxel-shop__collection > .wp-block-woocommerce-product-collection-no-results {
		grid-column: 1;
	}

	.pinxel-shop__filters {
		grid-row: 1;
		position: static;
	}

	.pinxel-shop__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		grid-row: 2;
	}

	.pinxel-shop__collection > .wp-block-woocommerce-product-collection-no-results {
		grid-row: 2;
	}

	.pinxel-shop__pagination {
		grid-row: 3;
	}
}

@media (max-width: 600px) {
	.pinxel-shop__grid {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 781px) {
	.pinxel-blog__grid,
	.pinxel-archive__grid,
	.pinxel-search-results__grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 600px) {
	.pinxel-blog__grid,
	.pinxel-archive__grid,
	.pinxel-search-results__grid {
		grid-template-columns: 1fr;
	}

	.pinxel-blog__grid > li:first-child {
		grid-column: auto;
	}

	.pinxel-blog__pagination,
	.pinxel-archive__pagination,
	.pinxel-search-results__pagination {
		align-items: stretch;
		flex-direction: column;
	}
}

.pinxel-card {
	background: var(--pinxel-color-background);
	border: 1px solid color-mix(in srgb, var(--pinxel-color-text) 10%, transparent);
	border-radius: var(--pinxel-radius-medium);
	box-shadow: var(--pinxel-shadow);
	box-sizing: border-box;
	height: 100%;
	padding: clamp(1.5rem, 3vw, 2.25rem);
}

.wp-block-button__link {
	border: var(--pinxel-button-border-width, 2px) solid transparent;
	border-radius: var(--pinxel-button-radius, 8px);
	box-sizing: border-box;
	font-weight: var(--pinxel-button-font-weight, 700);
	transition: filter 160ms ease, transform 160ms ease;
}

.wp-block-button.is-style-outline .wp-block-button__link {
	border-color: currentcolor;
}

.wp-block-button__link:hover {
	filter: brightness(0.92);
	transform: translateY(-1px);
}

.pinxel-site-footer {
	background: var(--pinxel-footer-background, var(--pinxel-color-secondary));
	box-sizing: border-box;
	color: var(--pinxel-footer-text, #fff);
	padding: clamp(3rem, 7vw, 6rem) var(--pinxel-header-gutter, clamp(1.25rem, 4vw, 2.5rem)) clamp(1.5rem, 3vw, 2.5rem);
}

.pinxel-site-footer__container {
	margin-inline: auto;
	max-width: var(--pinxel-wide-width, 1200px);
}

.pinxel-site-footer__main {
	align-items: start;
	display: grid;
	gap: clamp(2rem, 5vw, 5rem);
	grid-template-columns: minmax(220px, 1.15fr) minmax(280px, 1fr);
}

.pinxel-site-footer__brand {
	max-width: 440px;
}

.pinxel-site-footer .wp-block-site-logo {
	margin: 0;
	max-width: min(240px, 60vw);
}

.pinxel-site-footer .wp-block-site-logo img {
	display: block;
	max-height: 52px;
	object-fit: contain;
}

.pinxel-site-footer__tagline {
	color: var(--pinxel-footer-muted, rgb(255 255 255 / 68%));
	line-height: 1.6;
	margin: 1.25rem 0 0;
	max-width: 42ch;
}

.pinxel-site-footer__simple {
	align-items: center;
	display: flex;
	gap: 2rem;
	justify-content: space-between;
}

.pinxel-site-footer__menu-area {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.pinxel-site-footer__navigation .wp-block-navigation__container {
	column-gap: 1.5rem;
	row-gap: .75rem;
}

.pinxel-site-footer .wp-block-navigation-item__content,
.pinxel-site-footer a {
	color: inherit;
	text-decoration: none;
}

.pinxel-site-footer a:hover,
.pinxel-site-footer a:focus-visible {
	text-decoration: underline;
	text-underline-offset: .2em;
}

.pinxel-site-footer__main--columns {
	grid-template-columns: minmax(220px, 1.1fr) minmax(320px, 1.5fr) auto;
}

.pinxel-site-footer__columns {
	display: grid;
	gap: clamp(1.5rem, 4vw, 3.5rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pinxel-site-footer__column-title {
	color: inherit;
	font-size: .8rem;
	font-weight: 750;
	letter-spacing: .1em;
	margin: 0 0 1rem;
	text-transform: uppercase;
}

.pinxel-site-footer__column p {
	color: var(--pinxel-footer-muted, rgb(255 255 255 / 68%));
	line-height: 1.65;
	margin: 0;
}

.pinxel-site-footer__column-menu .wp-block-navigation__container {
	align-items: flex-start;
	gap: .75rem;
}

.pinxel-site-footer__socials {
	display: flex;
	flex-wrap: wrap;
	gap: .65rem 1rem;
}

.pinxel-site-footer__socials a {
	font-size: .875rem;
	font-weight: 650;
}

.pinxel-site-footer__meta {
	align-items: center;
	border-top: 1px solid var(--pinxel-footer-border, rgb(255 255 255 / 16%));
	color: var(--pinxel-footer-muted, rgb(255 255 255 / 62%));
	display: flex;
	font-size: 0.875rem;
	gap: 1rem 2rem;
	justify-content: space-between;
	margin-top: clamp(2.5rem, 5vw, 4rem);
	padding-top: 1.25rem;
}

.pinxel-site-footer__meta p {
	margin: 0;
}

.pinxel-site-footer__heart {
	color: #e5484d;
	display: inline-block;
	transform: translateY(.04em);
}

.pinxel-site-footer--simple .pinxel-site-footer__meta {
	margin-top: 2rem;
}

.pinxel-article-intro {
	background: var(--pinxel-color-surface);
	box-sizing: border-box;
	padding: clamp(4rem, 9vw, 8rem) var(--pinxel-header-gutter, clamp(1.25rem, 4vw, 2.5rem));
}

.pinxel-article-intro > * {
	max-width: min(920px, 100%);
}

.pinxel-article-intro h1 {
	font-size: var(--pinxel-font-size-display);
	margin: 0;
}

.pinxel-article-intro__eyebrow {
	color: var(--pinxel-color-primary-text, var(--pinxel-color-primary));
	font-size: var(--pinxel-font-size-label);
	font-weight: 750;
	letter-spacing: .12em;
	margin: 0 0 1rem;
	text-transform: uppercase;
}

.pinxel-article-body {
	box-sizing: border-box;
	font-size: 1.075rem;
	padding: var(--pinxel-section-space) var(--pinxel-header-gutter, clamp(1.25rem, 4vw, 2.5rem));
}

.pinxel-article-body > * {
	max-width: var(--pinxel-content-width);
}

.pinxel-article-body h2 {
	margin-top: 2.75em;
}

.pinxel-article-body h3 {
	margin-top: 2.25em;
}

.pinxel-article-body p,
.pinxel-article-body li {
	line-height: 1.8;
}

.pinxel-article-body .wp-block-quote {
	border-left: 4px solid var(--pinxel-color-primary);
	font-size: var(--pinxel-font-size-lead);
	margin-block: 2.5rem;
	padding-left: 1.5rem;
}

@media (max-width: 900px) {
	.pinxel-site-footer__main--columns {
		grid-template-columns: minmax(200px, .8fr) minmax(300px, 1.2fr);
	}

	.pinxel-site-footer__main--columns > .pinxel-site-footer__socials {
		grid-column: 1 / -1;
	}
}

@media (max-width: 599px) {
	.pinxel-site-header__inner {
		min-height: var(--pinxel-header-mobile-height, 56px);
		padding-bottom: var(--pinxel-header-mobile-padding, 8px) !important;
		padding-top: var(--pinxel-header-mobile-padding, 8px) !important;
	}

	.pinxel-site-header .wp-block-site-logo {
		max-width: min(54vw, 220px);
	}

	.pinxel-site-header .wp-block-site-logo img {
		max-height: var(--pinxel-header-mobile-logo-height, 32px);
	}

	.pinxel-section--hero {
		min-height: auto;
	}

	.pinxel-site-footer__simple,
	.pinxel-site-footer__meta {
		align-items: flex-start;
		flex-direction: column;
	}

	.pinxel-site-footer__main,
	.pinxel-site-footer__main--columns {
		grid-template-columns: 1fr;
	}

	.pinxel-site-footer__menu-area {
		align-items: flex-start;
	}

	.pinxel-site-footer__columns {
		grid-template-columns: 1fr;
	}
}
