/* Maxi Expo – Store Builder frontend */

:root {
	--mxsb-primary: #0073e6;
	--mxsb-navy: #0b1739;
	--mxsb-soft: #f5f9ff;
	--mxsb-text: #333333;
	--mxsb-max: 1260px;
	--mxsb-layout-gutter: 32px;
	--mxsb-radius: 20px;
	--mxsb-border: #dce7f2;
	--mxsb-muted: #667085;
	--mxsb-white: #ffffff;
	--mxsb-shadow: 0 14px 36px rgba(11, 23, 57, 0.10);
	--mxsb-transition: 220ms ease;
	--mxsb-font-body: Arial, Helvetica, sans-serif;
	--mxsb-font-heading: Arial, Helvetica, sans-serif;
	--mxsb-font-ui: Arial, Helvetica, sans-serif;
	--mxsb-heading-weight: 800;
	--mxsb-body-line-height: 1.65;
	--mxsb-heading-letter-spacing: -.03em;
}

.mxsb-preview-body {
	margin: 0;
	background: #fff;
	font-family: var(--mxsb-font-body, Arial, Helvetica, sans-serif);
}


/* Global typography system 4.4.4. It intentionally overrides Blocksy's
   -apple-system/BlinkMacSystemFont only inside pages managed by this module. */
:where(
	.mxsb-home,
	.mxsb-site-header,
	.mxsb-site-footer,
	.mxsb-system-page,
	.mxsb-contact-page,
	.mxsb-template-preview,
	.mxsb-visual-page,
	body.mxsb-product-modern
) {
	font-family: var(--mxsb-font-body, Arial, Helvetica, sans-serif) !important;
	line-height: var(--mxsb-body-line-height, 1.65);
}

:where(
	.mxsb-home,
	.mxsb-site-header,
	.mxsb-site-footer,
	.mxsb-system-page,
	.mxsb-contact-page,
	.mxsb-template-preview,
	.mxsb-visual-page,
	body.mxsb-product-modern
) :where(button, input, select, textarea, .button, .wp-element-button) {
	font-family: var(--mxsb-font-ui, var(--mxsb-font-body, Arial, Helvetica, sans-serif)) !important;
}

:where(
	.mxsb-home,
	.mxsb-site-header,
	.mxsb-site-footer,
	.mxsb-system-page,
	.mxsb-contact-page,
	.mxsb-template-preview,
	.mxsb-visual-page,
	body.mxsb-product-modern
) :where(h1, h2, h3, h4, h5, h6, .product_title, .woocommerce-loop-product__title, .wc-block-grid__product-title) {
	font-family: var(--mxsb-font-heading, var(--mxsb-font-body, Arial, Helvetica, sans-serif)) !important;
	font-weight: var(--mxsb-heading-weight, 800);
	letter-spacing: var(--mxsb-heading-letter-spacing, -.03em);
}

.mxsb-site-header :where(.mxsb-menu, .mxsb-header-action, .mxsb-header-b2b),
.mxsb-site-footer,
.mxsb-home :where(.mxsb-button, .mxsb-product-card__price),
.mxsb-system-page :where(.button, button, .price),
.mxsb-visual-page :where(.mxsb-visual-button, .mxsb-visual-small-button, .mxsb-visual-price) {
	font-family: var(--mxsb-font-ui, var(--mxsb-font-body, Arial, Helvetica, sans-serif)) !important;
}


:where(
	.mxsb-home,
	.mxsb-system-page,
	.mxsb-template-preview,
	.mxsb-visual-page,
	body.mxsb-product-modern
) :where(
	.price,
	.amount,
	.woocommerce-Price-amount,
	.woocommerce-Price-currencySymbol,
	.woocommerce-price-suffix,
	.mxsb-net-label,
	[class*="netto"],
	[class*="brutto"]
),
:where(
	.mxsb-home,
	.mxsb-system-page,
	.mxsb-template-preview,
	.mxsb-visual-page,
	body.mxsb-product-modern
) :where(.price, .amount, [class*="netto"], [class*="brutto"]) :where(span, small, strong, b, em, del, ins) {
	font-family: var(--mxsb-font-body, Arial, Helvetica, sans-serif) !important;
}

.mxsb-storefront .hero-section,
.mxsb-storefront .entry-header {
	display: none;
}

.mxsb-storefront {
	--theme-container-width: 100%;
	--theme-normal-container-max-width: 100%;
	--theme-content-width: 100%;
	--theme-content-vertical-spacing: 0;
	--theme-block-width: 100%;
	--theme-block-max-width: 100%;
	--theme-wide-offset: 0px;
}

.mxsb-storefront [data-content="normal"],
.mxsb-storefront [data-content="wide"] {
	--theme-block-width: 100%;
	--theme-block-max-width: 100%;
}

.mxsb-storefront #main-container,
.mxsb-storefront .site-main,
.mxsb-storefront .ct-container,
.mxsb-storefront .ct-container-full,
.mxsb-storefront .content-area,
.mxsb-storefront article.page,
.mxsb-storefront .entry-content,
.mxsb-storefront .entry-content > .mxsb-home {
	width: 100%;
	min-width: 0;
	max-width: none !important;
	margin: 0;
	padding: 0;
}

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

.mxsb-home {
	width: 100%;
	overflow: hidden;
	color: var(--mxsb-text);
	font-family: var(--mxsb-font-body, Arial, Helvetica, sans-serif);
	line-height: 1.6;
}

.mxsb-home img {
	display: block;
	max-width: 100%;
}

.mxsb-home a {
	text-decoration: none;
}

.mxsb-container {
	width: min(calc(100% - 40px), var(--mxsb-max));
	margin-inline: auto;
}

/* Per-section width modes */

.mxsb-home > section.mxsb-layout--full > .mxsb-container {
	width: 100%;
	max-width: none;
	padding-inline: clamp(20px, 4vw, 72px);
}

.mxsb-home > section.mxsb-layout--boxed {
	width: min(calc(100% - 40px), var(--mxsb-max));
	margin: 28px auto;
	border: 1px solid var(--mxsb-border);
	border-radius: calc(var(--mxsb-radius) + 8px);
	overflow: hidden;
	box-shadow: 0 12px 34px rgba(11, 23, 57, .07);
}

.mxsb-home > section.mxsb-layout--boxed > .mxsb-container {
	width: 100%;
	max-width: none;
	padding-inline: clamp(20px, 3vw, 48px);
}

.mxsb-home > .mxsb-hero.mxsb-layout--boxed {
	min-height: min(720px, calc(100vh - 56px));
}

/* Global header and footer replacement */

body.mxsb-custom-header > #main-container > header#header,
body.mxsb-custom-header > header#header,
body.mxsb-custom-header #header.ct-header {
	display: none !important;
}

body.mxsb-custom-footer > #main-container > footer.ct-footer,
body.mxsb-custom-footer > footer.ct-footer,
body.mxsb-custom-footer #footer.ct-footer {
	display: none !important;
}

.mxsb-site-header,
.mxsb-site-header *,
.mxsb-site-header *::before,
.mxsb-site-header *::after,
.mxsb-site-footer,
.mxsb-site-footer *,
.mxsb-site-footer *::before,
.mxsb-site-footer *::after {
	box-sizing: border-box;
}

.mxsb-site-header,
.mxsb-site-footer {
	width: 100%;
	color: var(--mxsb-text);
	font-family: var(--mxsb-font-body, Arial, Helvetica, sans-serif);
	line-height: 1.45;
}

.mxsb-site-header {
	position: relative;
	z-index: 999;
	border-bottom: 1px solid var(--mxsb-border);
	background: #fff;
	box-shadow: 0 8px 30px rgba(11, 23, 57, .06);
}

.mxsb-site-header--sticky {
	position: sticky;
	top: var(--admin-bar, 0px);
}

.admin-bar .mxsb-site-header--sticky {
	top: 32px;
}

.mxsb-icon {
	width: 21px;
	height: 21px;
	flex: 0 0 auto;
}

.mxsb-site-header a,
.mxsb-site-footer a {
	text-decoration: none;
}

.mxsb-site-header .screen-reader-text,
.mxsb-site-footer .screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.mxsb-topbar {
	background: linear-gradient(90deg, #08142d, var(--mxsb-navy));
	color: #e8f2ff;
	font-size: 12px;
}

.mxsb-topbar__inner {
	min-height: 34px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.mxsb-topbar p {
	margin: 0;
	font-weight: 650;
}

.mxsb-topbar__contact {
	display: flex;
	align-items: center;
	gap: 20px;
}

.mxsb-topbar__contact a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #e8f2ff;
	transition: color var(--mxsb-transition);
}

.mxsb-topbar__contact a:hover {
	color: #8fd0ff;
}

.mxsb-topbar__contact .mxsb-icon {
	width: 15px;
	height: 15px;
}

.mxsb-header-main__inner {
	min-height: 86px;
	display: grid;
	grid-template-columns: auto minmax(260px, 1fr) auto;
	align-items: center;
	gap: clamp(20px, 3vw, 44px);
	padding-block: 12px;
}

.mxsb-header-brand,
.mxsb-footer-logo {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	width: fit-content;
	color: var(--mxsb-navy);
	font-size: 22px;
	font-weight: 850;
	letter-spacing: -.025em;
}

.mxsb-header-brand img {
	display: block;
	width: var(--mxsb-header-logo-width);
	max-width: 100%;
	height: auto;
	max-height: none;
	object-fit: contain;
}

.mxsb-brand-mark {
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	background: linear-gradient(135deg, var(--mxsb-primary), #39a6ff);
	color: #fff;
	font-size: 23px;
	font-weight: 900;
	box-shadow: 0 8px 20px rgba(0, 115, 230, .22);
}

.mxsb-header-search {
	position: relative;
	width: 100%;
	margin: 0;
}

.mxsb-header-search label {
	display: block;
}

.mxsb-header-search input[type="search"] {
	width: 100%;
	min-height: 50px;
	margin: 0;
	padding: 12px 56px 12px 18px;
	border: 1px solid #cfddeb;
	border-radius: 15px;
	background: #f8fbff;
	color: var(--mxsb-text);
	font: inherit;
	font-size: 14px;
	box-shadow: none;
	transition:
		border-color var(--mxsb-transition),
		box-shadow var(--mxsb-transition),
		background var(--mxsb-transition);
}

.mxsb-header-search input[type="search"]:focus {
	border-color: var(--mxsb-primary);
	outline: 0;
	background: #fff;
	box-shadow: 0 0 0 4px rgba(0, 115, 230, .1);
}

.mxsb-header-search button {
	position: absolute;
	top: 5px;
	right: 5px;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 0;
	border-radius: 11px;
	background: var(--mxsb-primary);
	color: #fff;
	cursor: pointer;
	transition:
		background var(--mxsb-transition),
		transform var(--mxsb-transition);
}

.mxsb-header-search button:hover {
	background: #005fbf;
	transform: translateY(-1px);
}

.mxsb-search-suggestions {
	position: absolute;
	z-index: 1200;
	top: calc(100% + 8px);
	left: 0;
	width: 100%;
	max-height: min(520px, 70vh);
	padding: 8px;
	overflow-y: auto;
	border: 1px solid rgba(199, 216, 235, .95);
	border-radius: 16px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 22px 55px rgba(11, 23, 57, .18);
	backdrop-filter: blur(12px);
}

.mxsb-search-suggestions[hidden] {
	display: none !important;
}

.mxsb-search-suggestions__status {
	margin: 0;
	padding: 14px 16px;
	color: var(--mxsb-muted);
	font-size: 13px;
	font-weight: 650;
}

.mxsb-search-suggestion {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr);
	align-items: center;
	gap: 12px;
	min-height: 70px;
	padding: 7px 10px;
	border-radius: 12px;
	color: var(--mxsb-text);
	text-decoration: none;
	transition: background var(--mxsb-transition), transform var(--mxsb-transition);
}

.mxsb-search-suggestion:hover,
.mxsb-search-suggestion:focus-visible {
	outline: 0;
	background: var(--mxsb-soft);
	transform: translateX(2px);
}

.mxsb-search-suggestion__media {
	width: 58px;
	height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border: 1px solid var(--mxsb-border);
	border-radius: 10px;
	background: #fff;
}

.mxsb-search-suggestion__media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.mxsb-search-suggestion__copy {
	min-width: 0;
	display: grid;
	gap: 4px;
}

.mxsb-search-suggestion__copy strong {
	overflow: hidden;
	color: var(--mxsb-navy);
	font-size: 14px;
	line-height: 1.35;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mxsb-search-suggestion__copy small {
	color: var(--mxsb-primary);
	font-size: 12px;
	font-weight: 800;
}

.mxsb-header-actions {
	display: flex;
	align-items: center;
	gap: 22px;
}

.mxsb-header-action {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--mxsb-navy);
	white-space: nowrap;
}

.mxsb-header-action > span:last-child {
	display: flex;
	flex-direction: column;
	font-size: 13px;
	font-weight: 750;
}

.mxsb-header-action small {
	color: var(--mxsb-muted);
	font-size: 10px;
	font-weight: 600;
}

.mxsb-header-action strong {
	color: var(--mxsb-navy);
	font-size: 13px;
}

.mxsb-header-action:hover,
.mxsb-header-action:hover strong {
	color: var(--mxsb-primary);
}

.mxsb-cart-icon {
	position: relative;
	display: inline-flex;
}

.mxsb-cart-icon em {
	position: absolute;
	top: -10px;
	right: -11px;
	min-width: 19px;
	height: 19px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 5px;
	border: 2px solid #fff;
	border-radius: 999px;
	background: var(--mxsb-primary);
	color: #fff;
	font-size: 10px;
	font-style: normal;
	font-weight: 800;
	line-height: 1;
}

.mxsb-menu-toggle {
	display: none;
	width: 44px;
	height: 44px;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1px solid var(--mxsb-border);
	border-radius: 12px;
	background: var(--mxsb-soft);
	color: var(--mxsb-navy);
	cursor: pointer;
}

.mxsb-header-nav-row {
	border-top: 1px solid #edf2f7;
	background: #fff;
}

.mxsb-header-nav-row__inner {
	min-height: 54px;
	display: flex;
	align-items: stretch;
	gap: 26px;
}

.mxsb-header-nav {
	min-width: 0;
	display: flex;
	align-items: center;
	flex: 1 1 auto;
}

.mxsb-menu {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 26px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mxsb-menu li {
	position: relative;
	margin: 0;
}

.mxsb-menu a {
	display: flex;
	align-items: center;
	min-height: 53px;
	color: #344054;
	font-size: 13px;
	font-weight: 750;
	transition: color var(--mxsb-transition);
}

.mxsb-menu > li > a:hover,
.mxsb-menu > li.current-menu-item > a,
.mxsb-menu > li.current-menu-ancestor > a {
	color: var(--mxsb-primary);
}

.mxsb-menu .sub-menu {
	position: absolute;
	top: calc(100% - 1px);
	left: -16px;
	z-index: 12;
	min-width: 230px;
	margin: 0;
	padding: 10px;
	border: 1px solid var(--mxsb-border);
	border-radius: 14px;
	background: #fff;
	box-shadow: var(--mxsb-shadow);
	list-style: none;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition:
		opacity var(--mxsb-transition),
		visibility var(--mxsb-transition),
		transform var(--mxsb-transition);
}

.mxsb-menu li:hover > .sub-menu,
.mxsb-menu li:focus-within > .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.mxsb-menu .sub-menu a {
	min-height: 38px;
	padding: 7px 9px;
	border-radius: 8px;
}

.mxsb-menu .sub-menu a:hover {
	background: var(--mxsb-soft);
	color: var(--mxsb-primary);
}

.mxsb-shop-nav {
	position: relative;
	display: flex;
	align-items: center;
}

.mxsb-shop-nav > span {
	min-height: 36px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 8px 13px;
	border-radius: 10px;
	background: var(--mxsb-soft);
	color: var(--mxsb-primary);
	font-size: 13px;
	font-weight: 800;
	cursor: default;
}

.mxsb-shop-nav > span .mxsb-icon {
	width: 17px;
	height: 17px;
}

.mxsb-shop-nav > .mxsb-menu {
	position: absolute;
	top: calc(100% - 8px);
	left: 0;
	z-index: 13;
	min-width: 270px;
	display: block;
	padding: 10px;
	border: 1px solid var(--mxsb-border);
	border-radius: 14px;
	background: #fff;
	box-shadow: var(--mxsb-shadow);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition:
		opacity var(--mxsb-transition),
		visibility var(--mxsb-transition),
		transform var(--mxsb-transition);
}

.mxsb-shop-nav:hover > .mxsb-menu,
.mxsb-shop-nav:focus-within > .mxsb-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.mxsb-shop-nav > .mxsb-menu a {
	min-height: 38px;
	padding: 7px 9px;
	border-radius: 8px;
}

.mxsb-shop-nav > .mxsb-menu a:hover {
	background: var(--mxsb-soft);
}

.mxsb-header-b2b {
	align-self: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 38px;
	margin-left: auto;
	padding: 8px 15px;
	border-radius: 11px;
	background: linear-gradient(135deg, var(--mxsb-primary), #1495ff);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	white-space: nowrap;
	box-shadow: 0 7px 16px rgba(0, 115, 230, .18);
	transition:
		transform var(--mxsb-transition),
		box-shadow var(--mxsb-transition);
}

.mxsb-header-b2b:hover {
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 10px 22px rgba(0, 115, 230, .25);
}

.mxsb-mobile-panel {
	display: none;
	border-top: 1px solid var(--mxsb-border);
	background: #fff;
}

.mxsb-mobile-panel[hidden] {
	display: none !important;
}

.mxsb-menu-placeholder {
	margin: 0;
	padding: 9px 12px;
	border: 1px dashed #b8cee3;
	border-radius: 9px;
	background: var(--mxsb-soft);
	color: var(--mxsb-muted);
	font-size: 12px;
}

/* Global footer */

.mxsb-site-footer {
	position: relative;
	z-index: 2;
	background:
		radial-gradient(circle at 10% 0%, rgba(0, 115, 230, .22), transparent 32%),
		linear-gradient(145deg, #071226, var(--mxsb-navy));
	color: #dbe7f4;
}

.mxsb-footer-main {
	padding: 72px 0 54px;
}

.mxsb-footer-grid {
	display: grid;
	grid-template-columns: minmax(260px, 1.45fr) repeat(3, minmax(150px, 1fr));
	gap: clamp(32px, 5vw, 70px);
}

.mxsb-footer-logo {
	color: #fff;
}

.mxsb-footer-logo img {
	display: block;
	width: var(--mxsb-footer-logo-width);
	max-width: 100%;
	height: auto;
	max-height: none;
	object-fit: contain;
}

.mxsb-footer-brand > p {
	max-width: 380px;
	margin: 20px 0 0;
	color: #aebdd0;
	font-size: 14px;
	line-height: 1.75;
}

.mxsb-footer-contact {
	display: grid;
	gap: 11px;
	margin: 22px 0 0;
	padding: 0;
	list-style: none;
}

.mxsb-footer-contact li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0;
	color: #dbe7f4;
	font-size: 13px;
}

.mxsb-footer-contact .mxsb-icon {
	width: 17px;
	height: 17px;
	margin-top: 1px;
	color: #58b5ff;
}

.mxsb-footer-contact a {
	color: #dbe7f4;
}

.mxsb-footer-contact a:hover {
	color: #7cc5ff;
}

.mxsb-footer-nip {
	margin-top: 15px !important;
	font-weight: 750;
}

.mxsb-footer-column h2 {
	margin: 3px 0 18px;
	color: #fff;
	font-size: 15px;
	font-weight: 800;
	letter-spacing: .02em;
}

.mxsb-footer-menu,
.mxsb-footer-legal {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mxsb-footer-menu {
	display: grid;
	gap: 10px;
}

.mxsb-footer-menu li,
.mxsb-footer-legal li {
	margin: 0;
}

.mxsb-footer-menu a {
	color: #aebdd0;
	font-size: 13px;
	line-height: 1.5;
	transition:
		color var(--mxsb-transition),
		transform var(--mxsb-transition);
}

.mxsb-footer-menu a:hover {
	display: inline-block;
	color: #fff;
	transform: translateX(3px);
}

.mxsb-footer-menu .sub-menu {
	display: none;
}

.mxsb-footer-trust {
	border-top: 1px solid rgba(255, 255, 255, .1);
	border-bottom: 1px solid rgba(255, 255, 255, .1);
	background: rgba(255, 255, 255, .035);
}

.mxsb-footer-trust .mxsb-container {
	min-height: 54px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	color: #cfe1f4;
	font-size: 12px;
	font-weight: 700;
	text-align: center;
}

.mxsb-footer-trust .mxsb-icon {
	width: 18px;
	height: 18px;
	color: #58b5ff;
}

.mxsb-footer-bottom {
	padding: 20px 0;
}

.mxsb-footer-bottom__inner {
	min-height: 36px;
	display: flex;
	align-items: center;
	gap: 24px;
}

.mxsb-footer-bottom p {
	margin: 0;
	color: #8fa2b9;
	font-size: 11px;
}

.mxsb-footer-bottom nav {
	margin-left: auto;
}

.mxsb-footer-legal {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 18px;
}

.mxsb-footer-legal a {
	color: #aebdd0;
	font-size: 11px;
}

.mxsb-footer-legal a:hover {
	color: #fff;
}

.mxsb-social-links {
	display: flex;
	align-items: center;
	gap: 8px;
}

.mxsb-social-links a {
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 10px;
	background: rgba(255, 255, 255, .05);
	color: #dbe7f4;
	transition:
		background var(--mxsb-transition),
		border-color var(--mxsb-transition),
		transform var(--mxsb-transition);
}

.mxsb-social-links a:hover {
	border-color: rgba(88, 181, 255, .7);
	background: rgba(0, 115, 230, .25);
	color: #fff;
	transform: translateY(-2px);
}

.mxsb-social-links .mxsb-icon {
	width: 17px;
	height: 17px;
}

.mxsb-section {
	padding: 96px 0;
}

.mxsb-section__header {
	max-width: 780px;
	margin: 0 auto 44px;
	text-align: center;
}

.mxsb-section__eyebrow,
.mxsb-eyebrow {
	margin: 0 0 12px;
	color: var(--mxsb-primary);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.mxsb-section__header h2,
.mxsb-b2b h2,
.mxsb-seo h2 {
	margin: 0;
	color: var(--mxsb-navy);
	font-size: clamp(30px, 4vw, 46px);
	font-weight: 800;
	line-height: 1.16;
	letter-spacing: -0.025em;
}

.mxsb-section__header > p:last-child {
	margin: 18px auto 0;
	color: var(--mxsb-muted);
	font-size: 17px;
	line-height: 1.7;
}

/* Hero */

.mxsb-hero {
	position: relative;
	isolation: isolate;
	min-height: 720px;
	display: flex;
	align-items: center;
	overflow: hidden;
	background:
		radial-gradient(circle at 16% 22%, rgba(47, 178, 255, 0.27), transparent 32%),
		radial-gradient(circle at 88% 72%, rgba(0, 115, 230, 0.48), transparent 34%),
		linear-gradient(135deg, #071328, var(--mxsb-navy) 44%, var(--mxsb-primary));
	color: #fff;
}

.mxsb-hero::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	background-image:
		linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
	background-size: 56px 56px;
	mask-image: linear-gradient(to bottom, rgba(0,0,0,.65), transparent);
}

.mxsb-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
	align-items: center;
	gap: clamp(44px, 6vw, 88px);
	padding-block: 90px;
}

.mxsb-hero .mxsb-eyebrow {
	display: inline-flex;
	padding: 8px 14px;
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 999px;
	background: rgba(255, 255, 255, .1);
	color: #d9efff;
	backdrop-filter: blur(10px);
}

.mxsb-hero__title {
	max-width: 820px;
	margin: 0;
	color: #fff;
	font-size: clamp(42px, 5.3vw, 72px);
	font-weight: 850;
	line-height: 1.06;
	letter-spacing: -0.042em;
}

.mxsb-hero__lead {
	max-width: 720px;
	margin-top: 24px;
	color: #dceeff;
	font-size: clamp(17px, 1.7vw, 21px);
	line-height: 1.7;
}

.mxsb-hero__lead p {
	margin: 0;
}

.mxsb-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 13px;
	margin-top: 32px;
}

.mxsb-button {
	min-height: 54px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 14px 24px;
	border: 1px solid transparent;
	border-radius: 15px;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.2;
	transition:
		transform var(--mxsb-transition),
		box-shadow var(--mxsb-transition),
		background var(--mxsb-transition);
}

.mxsb-button:hover {
	transform: translateY(-3px);
}

.mxsb-button:focus-visible {
	outline: 3px solid rgba(85, 190, 255, .7);
	outline-offset: 3px;
}

.mxsb-button--light {
	background: #fff;
	color: var(--mxsb-navy);
	box-shadow: 0 12px 28px rgba(0, 0, 0, .2);
}

.mxsb-button--light:hover {
	background: #edf7ff;
	color: var(--mxsb-navy);
}

.mxsb-button--ghost {
	border-color: rgba(255, 255, 255, .32);
	background: rgba(255, 255, 255, .1);
	color: #fff;
	backdrop-filter: blur(8px);
}

.mxsb-button--ghost:hover {
	background: rgba(255, 255, 255, .18);
	color: #fff;
}

.mxsb-button--primary {
	background: linear-gradient(135deg, var(--mxsb-primary), #1195ff);
	color: #fff;
	box-shadow: 0 12px 28px rgba(0, 115, 230, .25);
}

.mxsb-button--primary:hover {
	background: linear-gradient(135deg, #0059ba, var(--mxsb-primary));
	color: #fff;
}

.mxsb-hero__checks {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 24px;
	margin: 28px 0 0;
	padding: 0;
	list-style: none;
	color: #e4f4ff;
	font-size: 14px;
}

.mxsb-hero__checks li {
	display: flex;
	align-items: center;
	gap: 8px;
}

.mxsb-hero__checks span {
	color: #75d7ff;
	font-weight: 900;
}

.mxsb-hero__visual {
	position: relative;
	padding: 12px;
	border: 1px solid rgba(255,255,255,.22);
	border-radius: calc(var(--mxsb-radius) + 10px);
	background: rgba(255,255,255,.1);
	box-shadow: 0 30px 70px rgba(0,0,0,.28);
	backdrop-filter: blur(14px);
}

.mxsb-hero__visual::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: -20px;
	border-radius: inherit;
	background: rgba(255,255,255,.13);
	filter: blur(34px);
}

.mxsb-hero__visual img,
.mxsb-hero__visual .mxsb-image-placeholder {
	width: 100%;
	aspect-ratio: 4 / 3;
	border-radius: var(--mxsb-radius);
	object-fit: cover;
}

/* Trust */

.mxsb-trust {
	border-bottom: 1px solid var(--mxsb-border);
	background: #fff;
}

.mxsb-trust__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mxsb-trust__item {
	min-width: 0;
	display: flex;
	gap: 14px;
	padding: 26px 20px;
	border-right: 1px solid var(--mxsb-border);
}

.mxsb-trust__item:last-child {
	border-right: 0;
}

.mxsb-trust__number {
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: var(--mxsb-soft);
	color: var(--mxsb-primary);
	font-weight: 800;
}

.mxsb-trust h2 {
	margin: 0 0 3px;
	color: var(--mxsb-navy);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.3;
}

.mxsb-trust p {
	margin: 0;
	color: var(--mxsb-muted);
	font-size: 13px;
	line-height: 1.5;
}

/* Categories */

.mxsb-categories {
	background: var(--mxsb-soft);
}

.mxsb-category-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.mxsb-category-card {
	min-width: 0;
	overflow: hidden;
	border: 1px solid rgba(208, 221, 234, .9);
	border-radius: var(--mxsb-radius);
	background: #fff;
	color: var(--mxsb-text);
	box-shadow: 0 7px 24px rgba(11, 23, 57, .055);
	transition:
		transform var(--mxsb-transition),
		box-shadow var(--mxsb-transition),
		border-color var(--mxsb-transition);
}

.mxsb-category-card:hover {
	border-color: rgba(0, 115, 230, .3);
	color: var(--mxsb-text);
	transform: translateY(-5px);
	box-shadow: 0 20px 45px rgba(0, 115, 230, .13);
}

.mxsb-category-card__media {
	overflow: hidden;
	background: #e7eff8;
}

.mxsb-category-card__media img,
.mxsb-category-card__media .mxsb-image-placeholder {
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	transition: transform 480ms ease;
}

.mxsb-category-card:hover .mxsb-category-card__media img {
	transform: scale(1.045);
}

.mxsb-category-card__body {
	padding: 24px;
}

.mxsb-category-card h3 {
	margin: 0;
	color: var(--mxsb-navy);
	font-size: 21px;
	line-height: 1.3;
}

.mxsb-category-card p {
	margin: 10px 0 18px;
	color: var(--mxsb-muted);
	font-size: 14px;
	line-height: 1.65;
}

.mxsb-category-card span {
	color: var(--mxsb-primary);
	font-size: 14px;
	font-weight: 800;
}

/* Product cards */

.mxsb-products {
	background: #fff;
}

.mxsb-product-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.mxsb-product-card,
.mxsb-placeholder-card {
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	background: #fff;
	box-shadow: 0 7px 24px rgba(11, 23, 57, .05);
	transition:
		transform var(--mxsb-transition),
		box-shadow var(--mxsb-transition);
}

.mxsb-product-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 20px 42px rgba(11, 23, 57, .12);
}

.mxsb-product-card__media {
	display: block;
	overflow: hidden;
	background: #f3f6fa;
}

.mxsb-product-card__media img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: contain;
	padding: 10px;
	transition: transform 420ms ease;
}

.mxsb-product-card:hover .mxsb-product-card__media img {
	transform: scale(1.04);
}

.mxsb-product-card__body {
	padding: 20px;
}

.mxsb-product-card__badge {
	display: inline-flex;
	margin: 0 0 9px;
	padding: 5px 9px;
	border-radius: 999px;
	background: var(--mxsb-soft);
	color: var(--mxsb-primary);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.mxsb-product-card h3 {
	min-height: 52px;
	margin: 0;
	font-size: 18px;
	line-height: 1.4;
}

.mxsb-product-card h3 a {
	color: var(--mxsb-navy);
}

.mxsb-product-card__price {
	display: flex;
	align-items: baseline;
	gap: 5px;
	margin: 16px 0 12px;
	color: var(--mxsb-muted);
}

.mxsb-product-card__price strong {
	color: var(--mxsb-primary);
	font-size: 20px;
}

.mxsb-product-card__price small {
	font-size: 12px;
}

.mxsb-product-card__price .woocommerce-Price-amount {
	color: inherit;
}

.mxsb-text-link {
	color: var(--mxsb-primary);
	font-size: 14px;
	font-weight: 800;
}

/* Process */

.mxsb-process {
	background: var(--mxsb-soft);
}

.mxsb-process__grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mxsb-process__grid::before {
	content: "";
	position: absolute;
	top: 30px;
	right: 12%;
	left: 12%;
	height: 2px;
	background: linear-gradient(90deg, var(--mxsb-primary), #9ed3ff);
}

.mxsb-process__step {
	position: relative;
	z-index: 1;
	padding: 0 12px;
	text-align: center;
}

.mxsb-process__step > span {
	width: 60px;
	height: 60px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 7px solid var(--mxsb-soft);
	border-radius: 50%;
	background: var(--mxsb-primary);
	color: #fff;
	font-size: 18px;
	font-weight: 850;
	box-shadow: 0 8px 20px rgba(0, 115, 230, .24);
}

.mxsb-process__step h3 {
	margin: 18px 0 8px;
	color: var(--mxsb-navy);
	font-size: 18px;
}

.mxsb-process__step p {
	margin: 0;
	color: var(--mxsb-muted);
	font-size: 14px;
	line-height: 1.65;
}

/* B2B */

.mxsb-b2b {
	position: relative;
	background:
		radial-gradient(circle at 10% 20%, rgba(31, 151, 255, .22), transparent 30%),
		linear-gradient(135deg, #071328, var(--mxsb-navy));
	color: #e7f2ff;
}

.mxsb-b2b__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
	align-items: center;
	gap: clamp(40px, 7vw, 90px);
}

.mxsb-b2b .mxsb-section__eyebrow {
	color: #7fd2ff;
}

.mxsb-b2b h2 {
	color: #fff;
}

.mxsb-b2b__content > div {
	margin-top: 20px;
	color: #cfe6fb;
	font-size: 17px;
}

.mxsb-b2b__content p {
	margin: 0;
}

.mxsb-b2b ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px 24px;
	margin: 26px 0 0;
	padding: 0;
	list-style: none;
}

.mxsb-b2b li {
	display: flex;
	gap: 9px;
	font-size: 14px;
}

.mxsb-b2b li span {
	color: #6fd5ff;
	font-weight: 900;
}

.mxsb-b2b__card {
	padding: clamp(26px, 4vw, 42px);
	border: 1px solid rgba(255,255,255,.18);
	border-radius: calc(var(--mxsb-radius) + 4px);
	background: #fff;
	color: var(--mxsb-text);
	box-shadow: 0 30px 60px rgba(0,0,0,.26);
}

.mxsb-b2b__card h3 {
	margin: 0;
	color: var(--mxsb-navy);
	font-size: 25px;
	line-height: 1.3;
}

.mxsb-b2b__card p {
	margin: 14px 0 24px;
	color: var(--mxsb-muted);
}

/* Social proof */

.mxsb-social {
	background: #fff;
}

.mxsb-logo-strip {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: center;
	gap: 24px;
	margin: 0 auto 38px;
	padding: 24px;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
}

.mxsb-logo-strip img {
	width: 100%;
	height: 54px;
	object-fit: contain;
	filter: grayscale(1);
	opacity: .58;
	transition:
		filter var(--mxsb-transition),
		opacity var(--mxsb-transition);
}

.mxsb-logo-strip img:hover {
	filter: none;
	opacity: 1;
}

.mxsb-testimonials {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.mxsb-testimonial {
	margin: 0;
	padding: 28px;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	background: var(--mxsb-soft);
}

.mxsb-stars {
	color: #f3aa18;
	font-size: 17px;
	letter-spacing: .08em;
}

.mxsb-testimonial > p {
	margin: 16px 0 22px;
	color: var(--mxsb-text);
	font-size: 16px;
	line-height: 1.75;
}

.mxsb-testimonial footer {
	display: flex;
	flex-direction: column;
}

.mxsb-testimonial strong {
	color: var(--mxsb-navy);
}

.mxsb-testimonial footer span {
	color: var(--mxsb-muted);
	font-size: 13px;
}

/* SEO */

.mxsb-seo {
	padding-top: 72px;
	padding-bottom: 72px;
	border-top: 1px solid var(--mxsb-border);
	background: #fafcff;
}

.mxsb-seo__inner {
	max-width: 1040px;
}

.mxsb-seo h2 {
	font-size: clamp(27px, 3.5vw, 38px);
}

.mxsb-seo__content {
	margin-top: 22px;
	color: #4c5669;
	font-size: 15px;
	line-height: 1.9;
	column-count: 2;
	column-gap: 46px;
}

.mxsb-seo__content p {
	margin-top: 0;
}

/* Placeholders */

.mxsb-image-placeholder {
	min-height: 190px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 22px;
	background:
		linear-gradient(135deg, rgba(0,115,230,.12), rgba(11,23,57,.08)),
		repeating-linear-gradient(45deg, transparent, transparent 12px, rgba(255,255,255,.4) 12px, rgba(255,255,255,.4) 24px);
	color: var(--mxsb-muted);
	text-align: center;
}

.mxsb-placeholder-card {
	padding-bottom: 20px;
}

.mxsb-placeholder-card .mxsb-image-placeholder {
	aspect-ratio: 3 / 2;
}

.mxsb-placeholder-card h3,
.mxsb-placeholder-card p {
	margin-inline: 20px;
}

.mxsb-placeholder-card h3 {
	margin-top: 18px;
	margin-bottom: 6px;
	color: var(--mxsb-navy);
	font-size: 17px;
}

.mxsb-placeholder-card p {
	margin-top: 0;
	color: var(--mxsb-muted);
	font-size: 13px;
}

/* Reveal animations */

.mxsb-reveal {
	opacity: 0;
	transform: translateY(22px);
	transition:
		opacity 620ms ease,
		transform 620ms cubic-bezier(.2,.7,.25,1);
}

.mxsb-reveal.mxsb-visible,
.mxsb-is-preview .mxsb-reveal {
	opacity: 1;
	transform: translateY(0);
}

/* Modern WooCommerce product page */

.mxsb-product-modern.single-product div.product .summary {
	padding: clamp(22px, 3vw, 34px);
	border: 1px solid var(--mxsb-border);
	border-radius: calc(var(--mxsb-radius) + 2px);
	background: #fff;
	box-shadow: var(--mxsb-shadow);
}

.mxsb-product-sticky.single-product div.product .summary {
	position: sticky;
	top: 92px;
	align-self: start;
}

.mxsb-product-modern.single-product div.product .product_title {
	color: var(--mxsb-navy);
	font-size: clamp(28px, 3vw, 42px);
	line-height: 1.16;
	letter-spacing: -.025em;
}

.mxsb-product-modern.single-product div.product .price {
	color: var(--mxsb-primary);
	font-size: clamp(22px, 2.5vw, 30px);
	font-weight: 800;
}

.mxsb-net-label {
	color: var(--mxsb-muted);
	font-size: .54em;
	font-weight: 600;
}

.mxsb-product-modern.single-product form.cart .quantity {
	overflow: hidden;
	border: 1px solid var(--mxsb-border);
	border-radius: 14px;
	background: #fff;
}

.mxsb-product-modern.single-product form.cart .quantity input.qty {
	min-height: 54px;
	border: 0;
	font-weight: 800;
}

.mxsb-product-modern.single-product button.single_add_to_cart_button,
.mxsb-product-modern.woocommerce a.button,
.mxsb-product-modern.woocommerce button.button {
	min-height: 54px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 13px 24px !important;
	border: 0 !important;
	border-radius: 14px !important;
	background: linear-gradient(135deg, var(--mxsb-primary), #1195ff) !important;
	color: #fff !important;
	font-weight: 800 !important;
	box-shadow: 0 10px 25px rgba(0,115,230,.24);
	transition:
		transform var(--mxsb-transition),
		box-shadow var(--mxsb-transition);
}

.mxsb-product-modern.single-product button.single_add_to_cart_button:hover,
.mxsb-product-modern.woocommerce a.button:hover,
.mxsb-product-modern.woocommerce button.button:hover {
	transform: translateY(-2px);
	box-shadow: 0 15px 32px rgba(0,115,230,.3);
}

.mxsb-product-promises {
	display: grid;
	gap: 9px;
	margin-top: 20px;
	padding: 17px;
	border: 1px solid #cfe2f5;
	border-radius: 15px;
	background: var(--mxsb-soft);
	color: #435166;
	font-size: 13px;
}

.mxsb-product-promises > div {
	display: flex;
	align-items: flex-start;
	gap: 9px;
}

.mxsb-product-promises span {
	color: var(--mxsb-primary);
	font-weight: 900;
}

/* Native Maxi Expo product configurator */

.mxsb-configurator {
	clear: both;
	display: grid;
	gap: 18px;
	margin: 28px 0;
	color: var(--mxsb-text);
}

.mxsb-configurator__header {
	padding: 22px 24px;
	border-radius: calc(var(--mxsb-radius) + 2px);
	background: linear-gradient(135deg, var(--mxsb-navy), #104c91);
	color: #dbeafe;
	box-shadow: 0 16px 36px rgba(11, 23, 57, .17);
}

.mxsb-configurator__header > span {
	display: block;
	margin-bottom: 5px;
	color: #69c8ff;
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .13em;
}

.mxsb-configurator__header h2 {
	margin: 0 0 7px;
	color: #fff;
	font-size: clamp(22px, 2.3vw, 30px);
}

.mxsb-configurator__header p {
	margin: 0;
	font-size: 14px;
}

.mxsb-configurator__fields {
	display: grid;
	gap: 15px;
}

.mxsb-configurator__field {
	padding: clamp(17px, 2.2vw, 22px);
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	background: linear-gradient(155deg, #fff 75%, #f7fbff);
	box-shadow: 0 7px 22px rgba(11, 23, 57, .065);
	transition: border-color var(--mxsb-transition), box-shadow var(--mxsb-transition);
}

.mxsb-configurator__field:focus-within {
	border-color: rgba(0, 115, 230, .62);
	box-shadow: 0 0 0 4px rgba(0, 115, 230, .08), 0 10px 25px rgba(11, 23, 57, .08);
}

.mxsb-configurator__field[hidden] {
	display: none !important;
}

.mxsb-configurator__field.has-error {
	border-color: #d92d20;
	box-shadow: 0 0 0 4px rgba(217, 45, 32, .08);
}

.mxsb-configurator__label {
	display: grid;
	gap: 5px;
	margin-bottom: 13px;
}

.mxsb-configurator__label strong {
	color: var(--mxsb-navy);
	font-size: 16px;
	line-height: 1.35;
}

.mxsb-configurator__label sup {
	margin-left: 3px;
	color: #d92d20;
}

.mxsb-configurator__label > span {
	color: var(--mxsb-muted);
	font-size: 13px;
	line-height: 1.5;
}

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

.mxsb-configurator__option {
	position: relative;
	min-height: 56px;
	display: grid;
	align-content: center;
	gap: 3px;
	margin: 0;
	padding: 13px 40px 13px 15px;
	border: 1px solid var(--mxsb-border);
	border-radius: 14px;
	background: #fff;
	cursor: pointer;
	transition: transform var(--mxsb-transition), border-color var(--mxsb-transition), background var(--mxsb-transition), box-shadow var(--mxsb-transition);
}

.mxsb-configurator__option:hover {
	border-color: rgba(0, 115, 230, .62);
	background: var(--mxsb-soft);
	transform: translateY(-2px);
	box-shadow: 0 9px 20px rgba(0, 115, 230, .1);
}

.mxsb-configurator__option:has(input:checked) {
	border-color: var(--mxsb-primary);
	background: #eaf4ff;
	color: var(--mxsb-primary);
	box-shadow: 0 0 0 2px rgba(0, 115, 230, .12), 0 9px 20px rgba(0, 115, 230, .1);
}

.mxsb-configurator__option:has(input:checked)::after {
	content: "✓";
	position: absolute;
	top: 50%;
	right: 13px;
	width: 22px;
	height: 22px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: var(--mxsb-primary);
	color: #fff;
	font-size: 12px;
	font-weight: 850;
	transform: translateY(-50%);
}

.mxsb-configurator__option input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}

.mxsb-configurator__option > span {
	color: var(--mxsb-navy);
	font-size: 14px;
	font-weight: 750;
}

.mxsb-configurator__option small {
	color: var(--mxsb-primary);
	font-size: 11px;
	font-weight: 750;
}

.mxsb-configurator__input > input[type="text"],
.mxsb-configurator__input > input[type="url"],
.mxsb-configurator__input > textarea {
	width: 100%;
	min-height: 50px;
	padding: 12px 15px;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-field-radius);
	background: #fff;
	color: var(--mxsb-text);
	box-shadow: none;
}

.mxsb-configurator__input > textarea {
	min-height: 110px;
	resize: vertical;
}

.mxsb-configurator__upload {
	position: relative;
	min-height: 160px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 24px;
	overflow: hidden;
	border: 2px dashed #9fc5e9;
	border-radius: var(--mxsb-radius);
	background: var(--mxsb-soft);
	text-align: center;
	cursor: pointer;
	transition: border-color var(--mxsb-transition), background var(--mxsb-transition), transform var(--mxsb-transition);
}

.mxsb-configurator__upload:hover {
	border-color: var(--mxsb-primary);
	background: #edf7ff;
	transform: translateY(-2px);
}

.mxsb-configurator__upload input {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	cursor: pointer;
}

.mxsb-configurator__upload-icon {
	width: 42px;
	height: 42px;
	display: grid;
	place-items: center;
	border-radius: 13px;
	background: var(--mxsb-primary);
	color: #fff;
	font-size: 23px;
	font-weight: 800;
	box-shadow: 0 9px 20px rgba(0, 115, 230, .22);
}

.mxsb-configurator__upload strong {
	color: var(--mxsb-navy);
	font-size: 14px;
}

.mxsb-configurator__upload small {
	color: var(--mxsb-muted);
	font-size: 12px;
}

.mxsb-configurator__upload em {
	max-width: 100%;
	color: #16834a;
	font-size: 12px;
	font-style: normal;
	font-weight: 750;
	word-break: break-word;
}

.mxsb-configurator__error {
	margin-top: 8px;
	color: #b42318;
	font-size: 12px;
	font-weight: 700;
}

.mxsb-configurator__totals {
	display: grid;
	gap: 8px;
	padding: 18px 20px;
	border: 1px solid #c9dff5;
	border-radius: var(--mxsb-radius);
	background: linear-gradient(135deg, #f2f8ff, #fff);
	box-shadow: 0 9px 25px rgba(11, 23, 57, .07);
}

.mxsb-configurator__totals > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	color: var(--mxsb-muted);
	font-size: 13px;
}

.mxsb-configurator__totals strong {
	color: var(--mxsb-navy);
}

.mxsb-configurator__grand-total {
	margin-top: 5px;
	padding-top: 13px;
	border-top: 1px solid var(--mxsb-border);
}

.mxsb-configurator__grand-total span {
	color: var(--mxsb-navy);
	font-size: 16px;
	font-weight: 800;
}

.mxsb-configurator__grand-total strong {
	color: var(--mxsb-primary);
	font-size: 22px;
	font-weight: 850;
}

/* Advanced Product Fields compatibility */

.mxsb-product-modern .wapf {
	margin: 24px 0;
}

.mxsb-product-modern .wapf-field-container {
	width: 100%;
	margin: 0 0 16px;
	padding: 18px !important;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	background: #fff;
	box-shadow: 0 5px 17px rgba(11,23,57,.045);
	box-sizing: border-box;
}

.mxsb-product-modern .wapf-field-container:focus-within {
	border-color: rgba(0,115,230,.65);
	box-shadow: 0 0 0 4px rgba(0,115,230,.08);
}

.mxsb-product-modern .wapf-field-label {
	margin-bottom: 11px !important;
}

.mxsb-product-modern .wapf-field-label label,
.mxsb-product-modern .wapf-field-label .wapf-label-text {
	padding: 0;
	color: var(--mxsb-navy);
	font-size: 15px;
	font-weight: 800;
}

.mxsb-product-modern .wapf-field-description {
	margin-top: 6px;
	color: var(--mxsb-muted);
	font-size: 13px;
	opacity: 1;
}

.mxsb-product-modern .wapf-field-input input[type="text"],
.mxsb-product-modern .wapf-field-input input[type="email"],
.mxsb-product-modern .wapf-field-input input[type="url"],
.mxsb-product-modern .wapf-field-input input[type="number"],
.mxsb-product-modern .wapf-field-input select,
.mxsb-product-modern .wapf-field-input textarea {
	width: 100%;
	min-height: 49px;
	padding: 11px 14px;
	border: 1px solid var(--mxsb-border) !important;
	border-radius: 12px !important;
	background: #fff !important;
	box-shadow: none !important;
	box-sizing: border-box;
}

.mxsb-product-modern .wapf-field-input input:focus,
.mxsb-product-modern .wapf-field-input select:focus,
.mxsb-product-modern .wapf-field-input textarea:focus {
	border-color: var(--mxsb-primary) !important;
	outline: 0;
	box-shadow: 0 0 0 4px rgba(0,115,230,.1) !important;
}

.mxsb-product-modern .wapf-swatch-wrapper {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 9px;
	width: 100%;
}

.mxsb-product-modern .wapf-swatch {
	position: relative;
	min-height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 !important;
	padding: 12px 14px;
	overflow: hidden;
	border: 1px solid var(--mxsb-border) !important;
	border-radius: 13px !important;
	background: #fff;
	color: var(--mxsb-text);
	text-align: center;
	box-sizing: border-box;
	cursor: pointer;
	transition:
		transform var(--mxsb-transition),
		border-color var(--mxsb-transition),
		background var(--mxsb-transition),
		box-shadow var(--mxsb-transition);
}

.mxsb-product-modern .wapf-swatch:hover {
	border-color: rgba(0,115,230,.7) !important;
	background: var(--mxsb-soft);
	transform: translateY(-2px);
}

.mxsb-product-modern .wapf-swatch.wapf-checked,
.mxsb-product-modern .wapf-swatch:has(input:checked) {
	border-color: var(--mxsb-primary) !important;
	background: #eaf4ff;
	color: #005cb9;
	box-shadow: 0 0 0 2px rgba(0,115,230,.11);
}

.mxsb-product-modern .wapf-swatch.wapf-checked::after,
.mxsb-product-modern .wapf-swatch:has(input:checked)::after {
	content: "✓";
	position: absolute;
	top: 6px;
	right: 7px;
	width: 18px;
	height: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--mxsb-primary);
	color: #fff;
	font-size: 10px;
	font-weight: 900;
}

.mxsb-product-modern .wapf-swatch input[type="checkbox"],
.mxsb-product-modern .wapf-swatch input[type="radio"] {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}

.mxsb-product-modern .wapf-swatch-label {
	padding: 0 19px 0 0;
	color: inherit;
	font-size: 13px;
	font-weight: 800;
}

.mxsb-product-modern .wapf-swatch--image {
	display: flex;
	flex-direction: column;
	padding: 7px;
}

.mxsb-product-modern .wapf-swatch--image img {
	width: 100%;
	aspect-ratio: 4 / 3;
	border-radius: 9px;
	object-fit: cover;
	transition: transform var(--mxsb-transition);
}

.mxsb-product-modern .wapf-swatch--image:hover img {
	transform: scale(1.035);
}

.mxsb-product-modern .wapf-radios,
.mxsb-product-modern .wapf-checkboxes {
	display: grid;
	grid-template-columns: repeat(2, minmax(0,1fr));
	gap: 9px;
}

.mxsb-product-modern .wapf-radios .wapf-checkable,
.mxsb-product-modern .wapf-checkboxes .wapf-checkable {
	clear: none;
	margin: 0;
}

.mxsb-product-modern .wapf-radios .wapf-checkable > label,
.mxsb-product-modern .wapf-checkboxes .wapf-checkable > label {
	min-height: 50px;
	display: flex;
	align-items: center;
	padding: 11px 13px;
	border: 1px solid var(--mxsb-border);
	border-radius: 13px;
	background: #fff;
	cursor: pointer;
}

.mxsb-product-modern .wapf-radios .wapf-checked > label,
.mxsb-product-modern .wapf-checkboxes .wapf-checked > label {
	border-color: var(--mxsb-primary);
	background: #eaf4ff;
	color: #005cb9;
}

.mxsb-product-modern .wapf-pricing-hint {
	display: block;
	margin-top: 3px;
	color: #005cb9;
	font-size: 11px;
	font-weight: 800;
	opacity: 1;
}

.mxsb-product-modern .wapf-field-input input[type="file"] {
	width: 100%;
	padding: 18px;
	border: 2px dashed #9fc4e8;
	border-radius: var(--mxsb-radius);
	background: var(--mxsb-soft);
	box-sizing: border-box;
	cursor: pointer;
}

.mxsb-product-modern .wapf-field-input input[type="file"]::file-selector-button {
	margin-right: 12px;
	padding: 10px 15px;
	border: 0;
	border-radius: 10px;
	background: var(--mxsb-primary);
	color: #fff;
	font-weight: 800;
	cursor: pointer;
}

.mxsb-product-modern .filepond--panel-root {
	border: 2px dashed #9fc4e8;
	border-radius: var(--mxsb-radius) !important;
	background: var(--mxsb-soft);
}

.mxsb-product-modern .filepond--drop-label {
	min-height: 145px;
	color: var(--mxsb-navy);
	font-size: 14px;
	font-weight: 700;
}

.mxsb-product-modern .filepond--label-action {
	color: var(--mxsb-primary);
	font-weight: 900;
	text-decoration: none;
}

.mxsb-product-modern .wapf-product-totals {
	margin: 20px 0;
	padding: 16px 18px;
	border: 1px solid #cfe2f5;
	border-radius: var(--mxsb-radius);
	background: linear-gradient(135deg, var(--mxsb-soft), #fff);
}

.mxsb-product-modern .wapf-product-totals > div {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	padding: 5px 0;
}

.mxsb-product-modern .wapf-product-total {
	margin-top: 7px;
	padding-top: 12px !important;
	border-top: 1px solid var(--mxsb-border);
	color: var(--mxsb-navy);
	font-size: 18px;
	font-weight: 900;
}

/* Responsive */

@media (max-width: 1100px) {
	.mxsb-header-main__inner {
		grid-template-columns: auto minmax(220px, 1fr) auto;
		gap: 20px;
	}

	.mxsb-header-actions {
		gap: 15px;
	}

	.mxsb-header-action > span:last-child {
		display: none;
	}

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

	.mxsb-footer-brand {
		grid-column: 1 / -1;
	}

	.mxsb-hero__grid {
		grid-template-columns: 1fr 420px;
	}

	.mxsb-trust__grid {
		grid-template-columns: repeat(2, minmax(0,1fr));
	}

	.mxsb-trust__item:nth-child(2) {
		border-right: 0;
	}

	.mxsb-trust__item:nth-child(-n+2) {
		border-bottom: 1px solid var(--mxsb-border);
	}

	.mxsb-product-grid {
		grid-template-columns: repeat(2, minmax(0,1fr));
	}
}

@media (max-width: 850px) {
	.admin-bar .mxsb-site-header--sticky {
		top: 46px;
	}

	.mxsb-topbar__inner {
		justify-content: center;
		text-align: center;
	}

	.mxsb-topbar__contact,
	.mxsb-header-search--desktop,
	.mxsb-header-nav-row,
	.mxsb-header-actions .mxsb-header-action:not(.mxsb-header-cart) {
		display: none;
	}

	.mxsb-header-main__inner {
		min-height: 72px;
		grid-template-columns: 1fr auto;
	}

	.mxsb-header-brand img {
		width: var(--mxsb-header-logo-mobile);
		max-width: 100%;
		height: auto;
		max-height: none;
	}

	.mxsb-menu-toggle {
		display: inline-flex;
	}

	.mxsb-mobile-panel {
		display: block;
	}

	.mxsb-mobile-panel__inner {
		width: min(calc(100% - 40px), var(--mxsb-max));
		max-height: calc(100vh - 120px);
		margin-inline: auto;
		padding: 20px 0 24px;
		overflow-y: auto;
	}

	.mxsb-header-search--mobile {
		margin-bottom: 18px;
	}

	.mxsb-mobile-menu-list {
		display: grid;
		gap: 3px;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.mxsb-mobile-menu-list li {
		margin: 0;
	}

	.mxsb-mobile-menu-list a {
		display: flex;
		align-items: center;
		min-height: 43px;
		padding: 9px 11px;
		border-radius: 9px;
		color: var(--mxsb-navy);
		font-size: 14px;
		font-weight: 750;
	}

	.mxsb-mobile-menu-list a:hover,
	.mxsb-mobile-menu-list .current-menu-item > a {
		background: var(--mxsb-soft);
		color: var(--mxsb-primary);
	}

	.mxsb-mobile-menu-list .sub-menu {
		display: grid;
		gap: 2px;
		margin: 0 0 4px 16px;
		padding: 0 0 0 10px;
		border-left: 2px solid var(--mxsb-border);
		list-style: none;
	}

	.mxsb-mobile-menu-list .sub-menu a {
		min-height: 38px;
		font-size: 13px;
		font-weight: 650;
	}

	.mxsb-mobile-panel__label {
		margin: 20px 0 7px;
		color: var(--mxsb-muted);
		font-size: 11px;
		font-weight: 800;
		letter-spacing: .1em;
		text-transform: uppercase;
	}

	.mxsb-header-b2b--mobile {
		width: 100%;
		margin-top: 18px;
	}

	.mxsb-section {
		padding: 74px 0;
	}

	.mxsb-hero {
		min-height: 0;
	}

	.mxsb-hero__grid,
	.mxsb-b2b__grid {
		grid-template-columns: 1fr;
	}

	.mxsb-hero__visual {
		width: min(100%, 620px);
		margin-inline: auto;
	}

	.mxsb-category-grid {
		grid-template-columns: repeat(2, minmax(0,1fr));
	}

	.mxsb-process__grid {
		grid-template-columns: repeat(2, minmax(0,1fr));
		gap: 32px 18px;
	}

	.mxsb-process__grid::before {
		display: none;
	}

	.mxsb-testimonials {
		grid-template-columns: 1fr;
	}

	.mxsb-product-sticky.single-product div.product .summary {
		position: static;
	}

	.mxsb-product-modern .wapf-swatch-wrapper {
		grid-template-columns: repeat(2, minmax(0,1fr));
	}
}

@media (max-width: 620px) {
	.mxsb-home > section.mxsb-layout--boxed {
		width: min(calc(100% - 20px), var(--mxsb-max));
		margin-block: 16px;
		border-radius: calc(var(--mxsb-radius) + 2px);
	}

	.mxsb-home > section.mxsb-layout--full > .mxsb-container,
	.mxsb-home > section.mxsb-layout--boxed > .mxsb-container {
		padding-inline: 14px;
	}

	.mxsb-topbar p {
		font-size: 11px;
	}

	.mxsb-header-main__inner {
		min-height: 66px;
	}

	.mxsb-header-brand img {
		width: var(--mxsb-header-logo-mobile);
		max-width: min(100%, 220px);
		height: auto;
		max-height: none;
	}

	.mxsb-brand-mark {
		width: 38px;
		height: 38px;
		font-size: 20px;
	}

	.mxsb-brand-name {
		font-size: 18px;
	}

	.mxsb-header-actions {
		gap: 12px;
	}

	.mxsb-header-cart > span:last-child {
		display: none;
	}

	.mxsb-footer-main {
		padding: 56px 0 40px;
	}

	.mxsb-footer-grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.mxsb-footer-brand {
		grid-column: auto;
	}

	.mxsb-footer-bottom__inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.mxsb-footer-bottom nav {
		margin-left: 0;
	}

	.mxsb-footer-legal {
		gap: 8px 14px;
	}

	.mxsb-container {
		width: min(calc(100% - 28px), var(--mxsb-max));
	}

	.mxsb-section {
		padding: 58px 0;
	}

	.mxsb-hero__grid {
		gap: 42px;
		padding-block: 64px;
	}

	.mxsb-hero__title {
		font-size: clamp(37px, 12vw, 52px);
	}

	.mxsb-actions {
		flex-direction: column;
	}

	.mxsb-button {
		width: 100%;
	}

	.mxsb-hero__checks {
		flex-direction: column;
	}

	.mxsb-trust__grid,
	.mxsb-category-grid,
	.mxsb-product-grid,
	.mxsb-process__grid,
	.mxsb-logo-strip,
	.mxsb-b2b ul {
		grid-template-columns: 1fr;
	}

	.mxsb-trust__item {
		border-right: 0;
		border-bottom: 1px solid var(--mxsb-border);
	}

	.mxsb-trust__item:last-child {
		border-bottom: 0;
	}

	.mxsb-seo__content {
		column-count: 1;
	}

	.mxsb-product-modern .wapf-field-container {
		padding: 15px !important;
	}

	.mxsb-product-modern .wapf-swatch-wrapper,
	.mxsb-product-modern .wapf-radios,
	.mxsb-product-modern .wapf-checkboxes {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mxsb-home *,
	.mxsb-product-modern *,
	.mxsb-site-header *,
	.mxsb-site-footer * {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}

	.mxsb-reveal {
		opacity: 1;
		transform: none;
	}
}

@media (max-width: 689px) {
	.mxsb-configurator__options {
		grid-template-columns: 1fr;
	}

	.mxsb-configurator__field {
		padding: 16px;
	}

	.mxsb-configurator__totals > div {
		align-items: flex-start;
	}
}

/* =========================================================
   SYSTEM PAGES 3.0 — WooCommerce, blog, account and contact
   ========================================================= */

.mxsb-system-page {
	--theme-normal-container-max-width: var(--mxsb-max);
	--theme-content-width: var(--mxsb-max);
	color: var(--mxsb-text);
	font-family: var(--mxsb-font-body, Arial, Helvetica, sans-serif);
	font-size: var(--mxsb-body-size, 16px);
}

.mxsb-system-page *,
.mxsb-template-preview *,
.mxsb-contact-page * {
	box-sizing: border-box;
}

.mxsb-system-page :where(h1, h2, h3, h4),
.mxsb-template-preview :where(h1, h2, h3, h4),
.mxsb-contact-page :where(h1, h2, h3, h4) {
	color: var(--mxsb-navy);
	font-weight: 800;
	letter-spacing: -.025em;
}

.mxsb-system-page :where(button, .button, input[type="submit"], .wp-element-button),
.mxsb-template-preview button,
.mxsb-contact-page :where(button, input[type="submit"]) {
	border-radius: var(--mxsb-button-radius, 14px) !important;
}

.mxsb-system-page :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea),
.mxsb-contact-page :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
	border: 1px solid var(--mxsb-border) !important;
	border-radius: var(--mxsb-field-radius, 14px) !important;
	background: #fff;
	box-shadow: none !important;
	transition: border-color var(--mxsb-transition), box-shadow var(--mxsb-transition);
}

.mxsb-system-page :where(input, select, textarea):focus,
.mxsb-contact-page :where(input, select, textarea):focus {
	border-color: var(--mxsb-primary) !important;
	outline: 0;
	box-shadow: 0 0 0 4px rgba(0, 115, 230, .1) !important;
}

.mxsb-system-hero {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	padding: clamp(48px, 7vw, 92px) 0;
	background:
		radial-gradient(circle at 85% 20%, rgba(20, 149, 255, .24), transparent 34%),
		linear-gradient(135deg, var(--mxsb-navy), #0b2b60 60%, var(--mxsb-primary));
	color: #fff;
}

.mxsb-system-hero h1 {
	max-width: 850px;
	margin: 8px 0 14px;
	color: #fff;
	font-size: clamp(38px, 5vw, 64px);
	line-height: 1.07;
}

.mxsb-system-hero__eyebrow {
	margin: 0;
	color: #8ed2ff;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.mxsb-system-hero__text {
	max-width: 760px;
	color: #dbeafe;
	font-size: clamp(16px, 1.5vw, 20px);
	line-height: 1.65;
}

.mxsb-system-hero__text p {
	margin: 0;
}

.mxsb-custom-banner-height {
	--mxsb-banner-current-height: var(--mxsb-banner-height-desktop, 320px);
}

.mxsb-custom-banner-height :is(
	.mxsb-system-hero,
	.hero-section,
	.ct-page-title:not(.hero-section .ct-page-title)
) {
	box-sizing: border-box;
}

.mxsb-custom-banner-height .mxsb-system-hero {
	display: flex;
	align-items: center;
}

.mxsb-custom-banner-height.mxsb-banner-height-min :is(
	.mxsb-system-hero,
	.hero-section,
	.ct-page-title:not(.hero-section .ct-page-title)
) {
	min-height: var(--mxsb-banner-current-height) !important;
}

.mxsb-custom-banner-height.mxsb-banner-height-exact :is(
	.mxsb-system-hero,
	.hero-section,
	.ct-page-title:not(.hero-section .ct-page-title)
) {
	height: var(--mxsb-banner-current-height) !important;
	min-height: var(--mxsb-banner-current-height) !important;
	max-height: var(--mxsb-banner-current-height) !important;
	overflow: hidden;
}

.mxsb-system-hero__breadcrumbs:empty {
	display: none;
}

.mxsb-system-hero__breadcrumbs {
	margin-top: 24px;
}

.mxsb-system-hero__breadcrumbs nav {
	margin: 0 !important;
	color: rgba(219, 234, 254, .82) !important;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
}

.mxsb-system-hero__breadcrumbs nav :where(a, span) {
	color: inherit;
}

.mxsb-system-hero__breadcrumbs nav a:hover {
	color: #fff;
}

.mxsb-template-product_template.mxsb-product-breadcrumbs-moved .hero-section.mxsb-relocated-blocksy-hero {
	display: none !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.mxsb-template-shop.mxsb-shop-breadcrumbs-moved .hero-section.mxsb-relocated-blocksy-hero {
	display: none !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

@media (max-width: 1100px) {
	.mxsb-custom-banner-height {
		--mxsb-banner-current-height: var(--mxsb-banner-height-tablet, 280px);
	}
}

@media (max-width: 690px) {
	.mxsb-custom-banner-height {
		--mxsb-banner-current-height: var(--mxsb-banner-height-mobile, 230px);
	}
}

/* =========================================================
   Visual page builder 4.0
   ========================================================= */
.mxsb-visual-builder-page.mxsb-visual-replace-content .hero-section,
.mxsb-visual-builder-page.mxsb-visual-replace-content .ct-page-title,
.mxsb-visual-builder-page.mxsb-visual-replace-content article.page > .entry-header {
	display: none !important;
}

.mxsb-visual-builder-page .site-main,
.mxsb-visual-builder-page #main,
.mxsb-visual-builder-page article.page,
.mxsb-visual-builder-page article.page > .entry-content,
.mxsb-visual-builder-page .entry-content > .mxsb-visual-page {
	width: 100% !important;
	max-width: none !important;
}

.mxsb-visual-builder-page article.page,
.mxsb-visual-builder-page article.page > .entry-content {
	margin: 0 !important;
	padding: 0 !important;
}

/* Blocksy can keep a page inside a content/sidebar grid. A visual-builder
   page owns the whole main canvas, so its article must span every grid track. */
.mxsb-visual-builder-page #main > .ct-container,
.mxsb-visual-builder-page .site-main > .ct-container,
.mxsb-visual-builder-page #main .ct-container-full,
.mxsb-visual-builder-page .site-main .ct-container-full {
	width: 100% !important;
	max-width: none !important;
	display: block !important;
	grid-template-columns: minmax(0, 1fr) !important;
	padding-inline: 0 !important;
}

.mxsb-visual-builder-page #main .ct-sidebar,
.mxsb-visual-builder-page .site-main .ct-sidebar {
	display: none !important;
}

.mxsb-visual-builder-page article.page,
.mxsb-visual-builder-page article.page > .entry-content,
.mxsb-visual-builder-page .ct-entry-content,
.mxsb-visual-builder-page .mxsb-visual-page {
	min-width: 0 !important;
	grid-column: 1 / -1 !important;
	float: none !important;
}

.mxsb-visual-page {
	position: relative;
	left: auto;
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	display: block !important;
	overflow: clip;
	color: var(--mxsb-text, #333);
}

.mxsb-visual-page,
.mxsb-visual-page *,
.mxsb-visual-page *::before,
.mxsb-visual-page *::after {
	box-sizing: border-box;
}

.mxsb-visual-section {
	position: relative;
	width: min(calc(100vw - 40px), var(--mxsb-visual-width, 1280px)) !important;
	max-width: none !important;
	margin-top: 24px !important;
	margin-right: auto !important;
	margin-bottom: 24px !important;
	margin-left: auto !important;
	padding: var(--mxsb-v-pt) 0 var(--mxsb-v-pb);
	border-radius: var(--mxsb-radius, 20px);
	background: var(--mxsb-v-bg);
	color: var(--mxsb-v-color);
	overflow: hidden;
}

.mxsb-visual-section.mxsb-visual-full-width {
	width: 100vw !important;
	margin: 0 !important;
	border-radius: 0;
}

.mxsb-visual-inner {
	position: relative;
	z-index: 1;
	width: min(calc(100% - 48px), var(--mxsb-visual-width, 1280px)) !important;
	max-width: none !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.mxsb-visual-section:not(.mxsb-visual-full-width) > .mxsb-visual-inner {
	width: calc(100% - 96px) !important;
}

.mxsb-visual-copy,
.mxsb-visual-html,
.mxsb-visual-spacer,
.mxsb-visual-cards,
.mxsb-visual-products,
.mxsb-visual-categories,
.mxsb-visual-hero-grid,
.mxsb-visual-image-text {
	width: 100% !important;
	max-width: none;
	min-width: 0;
}

.mxsb-visual-section h1,
.mxsb-visual-section h2,
.mxsb-visual-section h3,
.mxsb-visual-section p,
.mxsb-visual-section a,
.mxsb-visual-section span {
	word-break: normal;
	overflow-wrap: break-word;
	hyphens: manual;
}

.mxsb-visual-section h1,
.mxsb-visual-section h2 {
	max-width: 920px;
	margin: 0 0 20px;
	color: inherit;
	font-size: clamp(34px, 4.5vw, 66px);
	font-weight: 820;
	line-height: 1.06;
	letter-spacing: -.035em;
}

.mxsb-visual-text {
	max-width: 780px;
	font-size: clamp(16px, 1.5vw, 20px);
	line-height: 1.7;
}

.mxsb-visual-text > :first-child {
	margin-top: 0;
}

.mxsb-visual-text > :last-child {
	margin-bottom: 0;
}

.mxsb-visual-eyebrow {
	margin: 0 0 16px;
	color: #5bc3ff;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.mxsb-align-center .mxsb-visual-copy,
.mxsb-align-center > .mxsb-visual-inner > h2,
.mxsb-align-center > .mxsb-visual-inner > .mxsb-visual-text,
.mxsb-align-center > .mxsb-visual-inner > .mxsb-visual-eyebrow {
	margin-inline: auto;
	text-align: center;
}

.mxsb-align-right .mxsb-visual-copy,
.mxsb-align-right > .mxsb-visual-inner > h2,
.mxsb-align-right > .mxsb-visual-inner > .mxsb-visual-text,
.mxsb-align-right > .mxsb-visual-inner > .mxsb-visual-eyebrow {
	margin-left: auto;
	text-align: right;
}

.mxsb-visual-hero-grid,
.mxsb-visual-image-text {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
	align-items: center;
	gap: clamp(34px, 6vw, 84px);
}

.mxsb-visual-hero figure,
.mxsb-visual-image-text figure {
	margin: 0;
	padding: 10px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: calc(var(--mxsb-radius, 20px) + 6px);
	background: rgba(255, 255, 255, .1);
	box-shadow: 0 24px 60px rgba(6, 24, 54, .22);
}

.mxsb-visual-hero figure img,
.mxsb-visual-image-text figure img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: var(--mxsb-radius, 20px);
	object-fit: cover;
}

.mxsb-visual-image-text.mxsb-image-left .mxsb-visual-copy {
	order: 2;
}

.mxsb-visual-image-text.mxsb-image-left figure {
	order: 1;
}

.mxsb-visual-image-placeholder {
	min-height: 320px;
	display: grid;
	place-items: center;
	border-radius: var(--mxsb-radius, 20px);
	background: rgba(11, 23, 57, .07);
	color: #667085;
	font-weight: 700;
}

.mxsb-visual-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 30px;
}

.mxsb-align-center .mxsb-visual-buttons {
	justify-content: center;
}

.mxsb-align-right .mxsb-visual-buttons {
	justify-content: flex-end;
}

.mxsb-visual-button,
.mxsb-visual-small-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 13px 22px;
	border: 1px solid transparent;
	border-radius: 14px;
	background: linear-gradient(135deg, var(--mxsb-primary, #0073e6), #1798ff);
	color: #fff !important;
	font-weight: 750;
	text-decoration: none !important;
	box-shadow: 0 10px 24px rgba(0, 115, 230, .22);
	transition: transform 180ms ease, box-shadow 180ms ease;
}

.mxsb-visual-button:hover,
.mxsb-visual-small-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 15px 32px rgba(0, 115, 230, .3);
}

.mxsb-visual-button.is-secondary {
	border-color: currentColor;
	background: transparent;
	box-shadow: none;
}

.mxsb-visual-cards,
.mxsb-visual-products,
.mxsb-visual-categories {
	display: grid;
	grid-template-columns: repeat(var(--mxsb-v-columns, 3), minmax(0, 1fr)) !important;
	grid-auto-flow: row;
	align-items: stretch;
	gap: 20px;
	margin-top: 38px;
}

.mxsb-visual-cards article,
.mxsb-visual-products article,
.mxsb-visual-categories article {
	width: 100%;
	min-width: 0;
	padding: 24px;
	border: 1px solid rgba(128, 151, 177, .23);
	border-radius: var(--mxsb-radius, 20px);
	background: #fff;
	color: var(--mxsb-text, #333);
	box-shadow: 0 14px 38px rgba(11, 23, 57, .09);
	transition: transform 180ms ease, box-shadow 180ms ease;
	float: none !important;
	margin: 0 !important;
}

.mxsb-visual-cards article:hover,
.mxsb-visual-products article:hover,
.mxsb-visual-categories article:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 46px rgba(0, 92, 184, .15);
}

.mxsb-visual-cards article > span {
	color: var(--mxsb-primary, #0073e6);
	font-size: 12px;
	font-weight: 800;
}

.mxsb-visual-cards h3,
.mxsb-visual-products h3,
.mxsb-visual-categories h3 {
	margin: 13px 0 8px;
	color: var(--mxsb-navy, #0b1739);
	font-size: 20px;
	line-height: 1.25;
}

.mxsb-visual-products article img,
.mxsb-visual-category-image img {
	width: 100%;
	aspect-ratio: 4 / 3;
	display: block;
	border-radius: 14px;
	object-fit: contain;
}

.mxsb-visual-products article > a,
.mxsb-visual-categories article > a {
	color: inherit;
	text-decoration: none;
}

.mxsb-visual-price {
	margin: 12px 0;
	color: var(--mxsb-primary, #0073e6);
	font-size: 18px;
	font-weight: 800;
}

.mxsb-visual-small-button {
	min-height: 42px;
	padding: 10px 16px;
	font-size: 14px;
}

.mxsb-visual-copy--cta {
	max-width: 860px;
	margin-inline: auto;
}

.mxsb-visual-html > :first-child {
	margin-top: 0;
}

.mxsb-visual-html > :last-child {
	margin-bottom: 0;
}

@media (min-width: 1025px) {
	.mxsb-visual-hide-desktop { display: none !important; }
}

@media (min-width: 601px) and (max-width: 1024px) {
	.mxsb-visual-hide-tablet { display: none !important; }
	.mxsb-visual-cards,
	.mxsb-visual-products,
	.mxsb-visual-categories { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 760px) {
	.mxsb-visual-hide-mobile { display: none !important; }
	.mxsb-visual-section {
		width: calc(100vw - 24px) !important;
		margin-block: 12px;
		padding: var(--mxsb-v-pm) 0;
		border-radius: 16px;
	}
	.mxsb-visual-section.mxsb-visual-full-width { width: 100vw !important; margin: 0; border-radius: 0; }
	.mxsb-visual-inner,
	.mxsb-visual-section:not(.mxsb-visual-full-width) > .mxsb-visual-inner { width: calc(100% - 32px) !important; }
	.mxsb-visual-section h1,
	.mxsb-visual-section h2 { font-size: clamp(30px, 10vw, 44px); }
	.mxsb-visual-hero-grid,
	.mxsb-visual-image-text { grid-template-columns: 1fr; gap: 28px; }
	.mxsb-visual-image-text.mxsb-image-left .mxsb-visual-copy,
	.mxsb-visual-image-text.mxsb-image-left figure { order: initial; }
	.mxsb-visual-cards,
	.mxsb-visual-products,
	.mxsb-visual-categories { grid-template-columns: minmax(0, 1fr) !important; gap: 14px; }
	.mxsb-visual-buttons { flex-direction: column; }
	.mxsb-visual-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.mxsb-visual-section *,
	.mxsb-visual-section *::before,
	.mxsb-visual-section *::after {
		scroll-behavior: auto !important;
		transition: none !important;
	}
}


/* Version 4.4 — page-level themes for ordinary pages built in Visual Builder.
   A theme only overrides section backgrounds when the section still uses its
   original preset style. Manually selected colours therefore remain intact. */
.mxsb-visual-page[class*="mxsb-visual-theme--"] {
	transition: background-color 180ms ease;
}

/* Business B2B */
.mxsb-visual-theme--business {
	padding-block: 18px;
	background: #eef4fa;
}

.mxsb-visual-theme--business .mxsb-visual-section {
	border: 1px solid rgba(26, 62, 104, .09);
	box-shadow: 0 18px 48px rgba(13, 42, 78, .08);
}

.mxsb-visual-theme--business .mxsb-visual-style-default.mxsb-visual-hero,
.mxsb-visual-theme--business .mxsb-visual-style-default.mxsb-visual-cta {
	background: linear-gradient(135deg, #071a38 0%, #0a3e70 58%, #087edc 100%) !important;
	color: #fff !important;
}

.mxsb-visual-theme--business .mxsb-visual-style-default:not(.mxsb-visual-hero):not(.mxsb-visual-cta) {
	background: #fff !important;
	color: var(--mxsb-text, #333) !important;
}

.mxsb-visual-theme--business .mxsb-visual-cards article,
.mxsb-visual-theme--business .mxsb-visual-products article,
.mxsb-visual-theme--business .mxsb-visual-categories article {
	border-top: 4px solid var(--mxsb-primary, #0073e6);
	box-shadow: 0 16px 36px rgba(8, 48, 91, .11);
}

.mxsb-visual-theme--business .mxsb-visual-button,
.mxsb-visual-theme--business .mxsb-visual-small-button {
	border-radius: 10px;
	background: var(--mxsb-primary, #0073e6);
}

/* Minimal */
.mxsb-visual-theme--minimal {
	background: #fff;
}

.mxsb-visual-theme--minimal .mxsb-visual-section {
	width: min(calc(100vw - 48px), var(--mxsb-visual-width, 1280px)) !important;
	margin-block: 8px !important;
	border: 0;
	border-bottom: 1px solid #e8ebef;
	border-radius: 0;
	box-shadow: none;
}

.mxsb-visual-theme--minimal .mxsb-visual-section.mxsb-visual-full-width {
	width: 100vw !important;
}

.mxsb-visual-theme--minimal .mxsb-visual-style-default.mxsb-visual-hero,
.mxsb-visual-theme--minimal .mxsb-visual-style-default.mxsb-visual-cta,
.mxsb-visual-theme--minimal .mxsb-visual-style-default:not(.mxsb-visual-hero):not(.mxsb-visual-cta) {
	background: #fff !important;
	color: #26364a !important;
}

.mxsb-visual-theme--minimal .mxsb-visual-eyebrow {
	color: var(--mxsb-primary, #0073e6);
}

.mxsb-visual-theme--minimal .mxsb-visual-section h1,
.mxsb-visual-theme--minimal .mxsb-visual-section h2 {
	font-weight: 720;
	letter-spacing: -.025em;
}

.mxsb-visual-theme--minimal .mxsb-visual-cards article,
.mxsb-visual-theme--minimal .mxsb-visual-products article,
.mxsb-visual-theme--minimal .mxsb-visual-categories article {
	border: 1px solid #e3e7eb;
	border-radius: 4px;
	box-shadow: none;
}

.mxsb-visual-theme--minimal :where(.mxsb-visual-hero figure, .mxsb-visual-image-text figure) {
	padding: 0;
	border: 0;
	border-radius: 4px;
	background: transparent;
	box-shadow: none;
}

.mxsb-visual-theme--minimal .mxsb-visual-button,
.mxsb-visual-theme--minimal .mxsb-visual-small-button {
	border-radius: 3px;
	background: #26364a;
	box-shadow: none;
}

.mxsb-visual-theme--minimal .mxsb-visual-button.is-secondary {
	background: transparent;
	color: #26364a !important;
}

/* Showcase */
.mxsb-visual-theme--showcase {
	padding-block: 24px;
	background: linear-gradient(180deg, #edf5ff 0%, #fff 42%, #eef6ff 100%);
}

.mxsb-visual-theme--showcase .mxsb-visual-section {
	margin-block: 30px !important;
	border-radius: 30px;
	box-shadow: 0 28px 70px rgba(17, 55, 102, .13);
}

.mxsb-visual-theme--showcase .mxsb-visual-style-default.mxsb-visual-hero {
	background: radial-gradient(circle at 85% 20%, rgba(99, 203, 255, .58), transparent 34%), linear-gradient(135deg, #161044 0%, #073e88 52%, #0788ed 100%) !important;
	color: #fff !important;
}

.mxsb-visual-theme--showcase .mxsb-visual-style-default.mxsb-visual-cta {
	background: linear-gradient(120deg, #0b1739, #0b65b8 60%, #15a2ff) !important;
	color: #fff !important;
}

.mxsb-visual-theme--showcase .mxsb-visual-style-default:not(.mxsb-visual-hero):not(.mxsb-visual-cta) {
	background: rgba(255, 255, 255, .96) !important;
	color: var(--mxsb-text, #333) !important;
}

.mxsb-visual-theme--showcase .mxsb-visual-section h1 {
	font-size: clamp(42px, 5.7vw, 82px);
}

.mxsb-visual-theme--showcase :where(.mxsb-visual-hero figure, .mxsb-visual-image-text figure) {
	border-radius: 30px;
	box-shadow: 0 34px 80px rgba(4, 30, 73, .3);
	transform: rotate(1deg);
}

.mxsb-visual-theme--showcase .mxsb-visual-cards article,
.mxsb-visual-theme--showcase .mxsb-visual-products article,
.mxsb-visual-theme--showcase .mxsb-visual-categories article {
	border-radius: 24px;
	box-shadow: 0 22px 48px rgba(8, 50, 101, .14);
}

.mxsb-visual-theme--showcase .mxsb-visual-products article img,
.mxsb-visual-theme--showcase .mxsb-visual-category-image img {
	aspect-ratio: 16 / 10;
	border-radius: 18px;
}

/* Dark */
.mxsb-visual-theme--dark {
	padding-block: 22px;
	background: #061221;
	color-scheme: dark;
}

.mxsb-visual-theme--dark .mxsb-visual-section {
	border: 1px solid rgba(125, 184, 235, .14);
	box-shadow: 0 22px 58px rgba(0, 0, 0, .24);
}

.mxsb-visual-theme--dark .mxsb-visual-style-default.mxsb-visual-hero,
.mxsb-visual-theme--dark .mxsb-visual-style-default.mxsb-visual-cta {
	background: radial-gradient(circle at 80% 10%, rgba(0, 144, 255, .32), transparent 34%), linear-gradient(135deg, #071426, #102e50) !important;
	color: #fff !important;
}

.mxsb-visual-theme--dark .mxsb-visual-style-default:not(.mxsb-visual-hero):not(.mxsb-visual-cta) {
	background: #0d2239 !important;
	color: #e8f2fb !important;
}

.mxsb-visual-theme--dark .mxsb-visual-cards h3,
.mxsb-visual-theme--dark .mxsb-visual-products h3,
.mxsb-visual-theme--dark .mxsb-visual-categories h3 {
	color: #fff;
}

.mxsb-visual-theme--dark .mxsb-visual-cards article,
.mxsb-visual-theme--dark .mxsb-visual-products article,
.mxsb-visual-theme--dark .mxsb-visual-categories article {
	border-color: #244563;
	background: #102b47;
	color: #dcebf7;
	box-shadow: 0 18px 38px rgba(0, 0, 0, .22);
}

.mxsb-visual-theme--dark .mxsb-visual-price,
.mxsb-visual-theme--dark .mxsb-visual-eyebrow {
	color: #69c8ff;
}

.mxsb-visual-theme--dark .mxsb-visual-button.is-secondary {
	color: #fff !important;
}

/* Catalogue */
.mxsb-visual-theme--catalog {
	padding-block: 10px;
	background: #f3f5f7;
}

.mxsb-visual-theme--catalog .mxsb-visual-section {
	margin-block: 10px !important;
	border: 1px solid #dfe4e9;
	border-radius: 8px;
	box-shadow: none;
}

.mxsb-visual-theme--catalog .mxsb-visual-style-default.mxsb-visual-hero,
.mxsb-visual-theme--catalog .mxsb-visual-style-default.mxsb-visual-cta {
	background: linear-gradient(115deg, #1d3148, #365c82) !important;
	color: #fff !important;
}

.mxsb-visual-theme--catalog .mxsb-visual-style-default:not(.mxsb-visual-hero):not(.mxsb-visual-cta) {
	background: #fff !important;
	color: #293849 !important;
}

.mxsb-visual-theme--catalog .mxsb-visual-section h1,
.mxsb-visual-theme--catalog .mxsb-visual-section h2 {
	font-size: clamp(30px, 3.6vw, 52px);
	letter-spacing: -.02em;
}

.mxsb-visual-theme--catalog .mxsb-visual-cards,
.mxsb-visual-theme--catalog .mxsb-visual-products,
.mxsb-visual-theme--catalog .mxsb-visual-categories {
	gap: 10px;
	margin-top: 24px;
}

.mxsb-visual-theme--catalog .mxsb-visual-cards article,
.mxsb-visual-theme--catalog .mxsb-visual-products article,
.mxsb-visual-theme--catalog .mxsb-visual-categories article {
	padding: 16px;
	border-radius: 5px;
	box-shadow: none;
}

.mxsb-visual-theme--catalog .mxsb-visual-products article img,
.mxsb-visual-theme--catalog .mxsb-visual-category-image img {
	aspect-ratio: 4 / 3;
	border-radius: 3px;
}

.mxsb-visual-theme--catalog .mxsb-visual-button,
.mxsb-visual-theme--catalog .mxsb-visual-small-button {
	min-height: 42px;
	border-radius: 4px;
	box-shadow: none;
}

@media (max-width: 760px) {
	.mxsb-visual-theme--business,
	.mxsb-visual-theme--showcase,
	.mxsb-visual-theme--dark,
	.mxsb-visual-theme--catalog {
		padding-block: 8px;
	}

	.mxsb-visual-theme--showcase .mxsb-visual-section,
	.mxsb-visual-theme--business .mxsb-visual-section,
	.mxsb-visual-theme--dark .mxsb-visual-section,
	.mxsb-visual-theme--catalog .mxsb-visual-section {
		margin-block: 10px !important;
	}

	.mxsb-visual-theme--showcase :where(.mxsb-visual-hero figure, .mxsb-visual-image-text figure) {
		transform: none;
	}
}

/* Store archives */

.mxsb-template-shop .woocommerce-breadcrumb,
.mxsb-template-product_template .woocommerce-breadcrumb {
	margin-top: 22px;
	color: var(--mxsb-muted);
	font-size: 13px;
}

.mxsb-template-shop .woocommerce-products-header {
	display: none;
}

.mxsb-template-shop .woocommerce-result-count,
.mxsb-template-shop .woocommerce-ordering {
	margin-top: 32px;
}

.mxsb-template-shop ul.products {
	display: grid !important;
	grid-template-columns: repeat(var(--mxsb-shop-columns, 4), minmax(0, 1fr)) !important;
	gap: 24px !important;
	margin: 28px 0 54px !important;
}

.mxsb-template-shop ul.products::before,
.mxsb-template-shop ul.products::after {
	display: none !important;
}

.mxsb-template-shop ul.products li.product {
	position: relative;
	width: auto !important;
	margin: 0 !important;
	padding: 12px 12px 18px !important;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	background: #fff;
	box-shadow: var(--mxsb-system-shadow, var(--mxsb-shadow));
	overflow: hidden;
	transition: transform var(--mxsb-transition), border-color var(--mxsb-transition), box-shadow var(--mxsb-transition);
}

.mxsb-template-shop ul.products li.product:hover {
	border-color: rgba(0, 115, 230, .42);
	transform: translateY(-5px);
	box-shadow: 0 20px 44px rgba(0, 115, 230, .14);
}

.mxsb-shop-hide-product-descriptions ul.products li.product :where(
	.woocommerce-loop-product__description,
	.woocommerce-loop-product__excerpt,
	.woocommerce-product-details__short-description,
	.product-excerpt,
	.ct-product-excerpt,
	.entry-excerpt
) {
	display: none !important;
}

/* Category cards and archive filters can be generated by WooCommerce or the
   separate archive module. The runtime adds the mxsb-* bridge classes. */
.mxsb-template-shop ul.products li.product-category,
.mxsb-template-shop .mxsb-category-tile {
	overflow: hidden;
	border: 1px solid rgba(207, 222, 238, .95) !important;
	border-radius: calc(var(--mxsb-radius) + 2px) !important;
	background: linear-gradient(160deg, #fff 70%, #f6faff) !important;
	box-shadow:
		0 3px 8px rgba(11, 23, 57, .05),
		0 16px 38px rgba(11, 23, 57, .11) !important;
	transition:
		transform var(--mxsb-transition),
		border-color var(--mxsb-transition),
		box-shadow var(--mxsb-transition) !important;
}

.mxsb-template-shop ul.products li.product-category:hover,
.mxsb-template-shop .mxsb-category-tile:hover {
	border-color: rgba(0, 115, 230, .45) !important;
	transform: translateY(-6px);
	box-shadow:
		0 8px 18px rgba(11, 23, 57, .08),
		0 24px 48px rgba(0, 115, 230, .16) !important;
}

.mxsb-template-shop ul.products li.product-category img,
.mxsb-template-shop .mxsb-category-tile img {
	background: linear-gradient(145deg, #f8fbff, #edf4fb);
}

.mxsb-filter-column {
	min-width: 0;
	align-self: start;
}

.mxsb-filter-title {
	margin: 0 0 18px !important;
	color: var(--mxsb-navy) !important;
	font-size: clamp(28px, 3vw, 40px) !important;
	font-weight: 850 !important;
	line-height: 1.15 !important;
	letter-spacing: -.035em !important;
}

.mxsb-filter-card {
	padding: clamp(22px, 2.2vw, 30px) !important;
	border: 1px solid rgba(207, 222, 238, .95) !important;
	border-radius: calc(var(--mxsb-radius) + 4px) !important;
	background:
		linear-gradient(155deg, rgba(255, 255, 255, .99), rgba(246, 250, 255, .98)) !important;
	box-shadow:
		0 4px 12px rgba(11, 23, 57, .05),
		0 18px 42px rgba(11, 23, 57, .12) !important;
}

.mxsb-filter-card :where(input[type="text"], input[type="number"], select) {
	background: #fff !important;
	box-shadow: inset 0 1px 2px rgba(11, 23, 57, .04) !important;
}

.mxsb-filter-card :where(button, input[type="submit"], .button) {
	box-shadow: 0 10px 24px rgba(0, 115, 230, .22) !important;
}

.mxsb-template-shop ul.products li.product img {
	aspect-ratio: 1 / 1;
	border-radius: calc(var(--mxsb-radius) - 7px);
	object-fit: contain;
	transition: transform 350ms ease;
}

.mxsb-template-shop ul.products li.product:hover img {
	transform: scale(1.025);
}

.mxsb-template-shop ul.products li.product .woocommerce-loop-product__title {
	min-height: 2.8em;
	margin: 16px 4px 8px;
	color: var(--mxsb-navy);
	font-size: 17px;
	line-height: 1.4;
}

.mxsb-template-shop ul.products li.product .price {
	margin: 7px 4px;
	color: var(--mxsb-primary);
	font-size: 19px;
	font-weight: 800;
}

.mxsb-template-shop ul.products li.product .button {
	width: calc(100% - 8px);
	min-height: 46px;
	margin: 14px 4px 0 !important;
	background: linear-gradient(135deg, var(--mxsb-primary), #1495ff) !important;
	color: #fff !important;
	font-weight: 800;
}

.mxsb-template-shop.mxsb-template-variant-compact ul.products {
	gap: 14px !important;
}

.mxsb-template-shop.mxsb-template-variant-compact ul.products li.product {
	padding: 8px 8px 13px !important;
	box-shadow: none;
}

.mxsb-template-shop.mxsb-template-variant-catalog ul.products li.product img {
	aspect-ratio: 4 / 3;
}

.mxsb-template-shop.mxsb-template-variant-catalog .mxsb-card-delivery {
	display: none;
}

/* Additional store and category-page themes. */
.mxsb-template-shop.mxsb-template-variant-editorial .mxsb-system-hero {
	width: min(calc(100% - 40px), var(--mxsb-max));
	margin: 28px auto 8px;
	border: 1px solid var(--mxsb-border);
	border-radius: calc(var(--mxsb-radius) + 8px);
	background: linear-gradient(145deg, #fff, var(--mxsb-soft));
	color: var(--mxsb-navy);
	box-shadow: 0 18px 48px rgba(11, 23, 57, .09);
}

.mxsb-template-shop.mxsb-template-variant-editorial .mxsb-system-hero__eyebrow,
.mxsb-template-shop.mxsb-template-variant-editorial .mxsb-system-hero__breadcrumbs nav :where(a, span) {
	color: var(--mxsb-primary);
}

.mxsb-template-shop.mxsb-template-variant-editorial .mxsb-system-hero__text {
	color: var(--mxsb-muted);
}

.mxsb-template-shop.mxsb-template-variant-editorial ul.products li.product {
	border-color: transparent;
	box-shadow: 0 15px 38px rgba(11, 23, 57, .10);
}

.mxsb-template-shop.mxsb-template-variant-navy {
	background: linear-gradient(180deg, #edf5ff 0, #fff 540px) fixed;
}

.mxsb-template-shop.mxsb-template-variant-navy .mxsb-system-hero {
	background: linear-gradient(120deg, #071833, #123b76 65%, #087bea);
}

.mxsb-template-shop.mxsb-template-variant-navy .mxsb-archive-b2b {
	background: linear-gradient(120deg, #071833, #123b76);
	box-shadow: 0 22px 52px rgba(7, 24, 51, .22);
}

/* Independent product-card themes used by shop and category archives. */
.mxsb-template-shop.mxsb-product-card-theme-clean ul.products li.product {
	border-color: #dce7f3;
	border-radius: max(8px, calc(var(--mxsb-radius) - 6px));
	box-shadow: none;
}

.mxsb-template-shop.mxsb-product-card-theme-clean ul.products li.product:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 26px rgba(11, 23, 57, .08);
}

.mxsb-template-shop.mxsb-product-card-theme-clean ul.products li.product .button {
	border: 1px solid var(--mxsb-primary) !important;
	background: #fff !important;
	color: var(--mxsb-primary) !important;
	box-shadow: none !important;
}

.mxsb-template-shop.mxsb-product-card-theme-image ul.products li.product {
	padding: 0 0 18px !important;
}

.mxsb-template-shop.mxsb-product-card-theme-image ul.products li.product > :not(a:first-of-type):not(.mxsb-product-badge),
.mxsb-template-shop.mxsb-product-card-theme-image ul.products li.product > a:not(:first-of-type) {
	margin-right: 16px !important;
	margin-left: 16px !important;
}

.mxsb-template-shop.mxsb-product-card-theme-image ul.products li.product img {
	aspect-ratio: 4 / 3;
	border-radius: 0;
	background: linear-gradient(145deg, #f8fbff, #edf5fc);
}

.mxsb-template-shop.mxsb-product-card-theme-image ul.products li.product .woocommerce-loop-product__title {
	font-size: 18px;
}

.mxsb-template-shop.mxsb-product-card-theme-technical ul.products li.product {
	padding-top: 18px !important;
	border-top: 5px solid var(--mxsb-navy);
	border-radius: max(8px, calc(var(--mxsb-radius) - 4px));
	box-shadow: 0 12px 30px rgba(11, 23, 57, .10);
}

.mxsb-template-shop.mxsb-product-card-theme-technical ul.products li.product .woocommerce-loop-product__title {
	min-height: 0;
	font-size: 16px;
}

.mxsb-template-shop.mxsb-product-card-theme-technical ul.products li.product .price {
	padding-top: 9px;
	border-top: 1px solid var(--mxsb-border);
	font-size: 20px;
}

.mxsb-template-shop.mxsb-product-card-theme-technical .mxsb-card-delivery {
	color: var(--mxsb-navy);
	font-weight: 700;
}

.mxsb-template-shop.mxsb-product-card-theme-outline ul.products li.product {
	border: 2px solid #d6e5f6;
	border-radius: calc(var(--mxsb-radius) + 2px);
	box-shadow: none;
	background: #fff;
}

.mxsb-template-shop.mxsb-product-card-theme-outline ul.products li.product:hover {
	border-color: var(--mxsb-primary);
	box-shadow: 0 14px 32px rgba(11, 23, 57, .08);
}

.mxsb-template-shop.mxsb-product-card-theme-outline ul.products li.product .button {
	background: transparent !important;
	color: var(--mxsb-primary) !important;
	border: 1.5px solid currentColor !important;
	box-shadow: none !important;
}

.mxsb-template-shop.mxsb-product-card-theme-b2b ul.products li.product {
	border-color: #d7e4f5;
	border-radius: calc(var(--mxsb-radius) + 4px);
	background: linear-gradient(180deg, #fff 0, #f5f9ff 100%);
	box-shadow: 0 18px 42px rgba(9, 28, 60, .12);
}

.mxsb-template-shop.mxsb-product-card-theme-b2b ul.products li.product .price {
	padding: 10px 0 6px;
	border-top: 1px solid #dbe6f3;
	color: var(--mxsb-navy);
}

.mxsb-template-shop.mxsb-product-card-theme-b2b ul.products li.product .button {
	background: linear-gradient(120deg, var(--mxsb-navy), #184e9f) !important;
	color: #fff !important;
	box-shadow: 0 14px 28px rgba(11, 32, 72, .18) !important;
}

.mxsb-template-shop.mxsb-product-card-theme-b2b .mxsb-product-badge {
	background: linear-gradient(120deg, var(--mxsb-navy), #1859b7);
}

/* Independent category-card themes used by shop and category archives. */
.mxsb-template-shop.mxsb-category-card-theme-clean :is(ul.products li.product-category, .mxsb-category-tile, .mxsb-category-card) {
	border-color: #dce7f3;
	border-radius: max(8px, calc(var(--mxsb-radius) - 4px));
	box-shadow: none;
	background: #fff;
}

.mxsb-template-shop.mxsb-category-card-theme-clean :is(ul.products li.product-category:hover, .mxsb-category-tile:hover, .mxsb-category-card:hover) {
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(11, 23, 57, .08);
}

.mxsb-template-shop.mxsb-category-card-theme-image :is(ul.products li.product-category, .mxsb-category-tile, .mxsb-category-card) {
	padding: 0 !important;
	overflow: hidden;
}

.mxsb-template-shop.mxsb-category-card-theme-image :is(ul.products li.product-category img, .mxsb-category-tile img, .mxsb-category-card__media img, .mxsb-category-card__media .mxsb-image-placeholder) {
	aspect-ratio: 4 / 3;
	object-fit: contain;
	background: linear-gradient(145deg, #f8fbff, #edf4fc);
}

.mxsb-template-shop.mxsb-category-card-theme-image :is(ul.products li.product-category .woocommerce-loop-category__title, .mxsb-category-tile h2, .mxsb-category-card h3, .mxsb-category-card__body) {
	padding-left: 18px;
	padding-right: 18px;
}

.mxsb-template-shop.mxsb-category-card-theme-minimal :is(ul.products li.product-category, .mxsb-category-tile, .mxsb-category-card) {
	border: 1px solid #e7eef7;
	border-radius: calc(var(--mxsb-radius) + 2px);
	box-shadow: none;
	background: rgba(255,255,255,.8);
}

.mxsb-template-shop.mxsb-category-card-theme-minimal :is(ul.products li.product-category img, .mxsb-category-tile img, .mxsb-category-card__media img, .mxsb-category-card__media .mxsb-image-placeholder) {
	transform: none !important;
	filter: saturate(.98);
}

.mxsb-template-shop.mxsb-category-card-theme-minimal :is(ul.products li.product-category:hover, .mxsb-category-tile:hover, .mxsb-category-card:hover) {
	border-color: var(--mxsb-primary);
	box-shadow: 0 10px 20px rgba(11,23,57,.05);
}

.mxsb-template-shop.mxsb-category-card-theme-b2b :is(ul.products li.product-category, .mxsb-category-tile, .mxsb-category-card) {
	border: 1px solid #d4e0f0;
	border-radius: calc(var(--mxsb-radius) + 4px);
	background: linear-gradient(180deg, #fff, #f5f9ff);
	box-shadow: 0 18px 40px rgba(11, 23, 57, .11);
}

.mxsb-template-shop.mxsb-category-card-theme-b2b :is(ul.products li.product-category .woocommerce-loop-category__title, .mxsb-category-card h3) {
	color: var(--mxsb-navy);
	font-weight: 800;
}

.mxsb-template-shop.mxsb-category-card-theme-b2b :is(ul.products li.product-category .count, .mxsb-category-card span) {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 10px;
	border-radius: 999px;
	background: #edf5ff;
	color: var(--mxsb-primary);
	font-weight: 700;
}


.mxsb-product-badge {
	position: absolute;
	z-index: 3;
	top: 22px;
	left: 22px;
	padding: 7px 10px;
	border-radius: 999px;
	background: var(--mxsb-navy);
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: 0 6px 16px rgba(11, 23, 57, .2);
}

.mxsb-card-delivery {
	display: flex;
	gap: 6px;
	align-items: center;
	margin: 6px 4px 0;
	color: var(--mxsb-muted);
	font-size: 11px;
	line-height: 1.4;
}

.mxsb-card-delivery span {
	color: #16834a;
	font-weight: 900;
}

.mxsb-archive-b2b,
.mxsb-archive-seo {
	margin: var(--mxsb-system-space) 0;
	border-radius: calc(var(--mxsb-radius) + 6px);
}

.mxsb-archive-b2b {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	padding: clamp(30px, 5vw, 54px);
	background: linear-gradient(135deg, var(--mxsb-navy), #10417e);
	color: #dbeafe;
	box-shadow: var(--mxsb-system-shadow);
}

.mxsb-archive-b2b h2 {
	margin: 0 0 8px;
	color: #fff;
	font-size: clamp(26px, 3vw, 38px);
}

.mxsb-archive-b2b p {
	max-width: 720px;
	margin: 0;
}

.mxsb-button {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 12px 22px;
	border-radius: var(--mxsb-button-radius);
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
}

.mxsb-button--light {
	background: #fff;
	color: var(--mxsb-navy);
}

.mxsb-archive-seo {
	padding: clamp(28px, 4vw, 46px);
	border: 1px solid var(--mxsb-border);
	background: var(--mxsb-soft);
}

.mxsb-archive-seo h2 {
	margin-top: 0;
}

/* Product template */

.mxsb-template-product_template .product {
	--mxsb-gallery-width: var(--mxsb-product-gallery-width, 54%);
}

.mxsb-template-product_template .product > .woocommerce-product-gallery {
	width: calc(var(--mxsb-gallery-width) - 2%) !important;
	padding: clamp(14px, 2vw, 22px);
	overflow: hidden;
	border: 1px solid rgba(207, 222, 238, .95);
	border-radius: calc(var(--mxsb-radius) + 5px);
	background:
		linear-gradient(155deg, #fff 68%, #f5f9ff);
	box-shadow:
		0 4px 12px rgba(11, 23, 57, .05),
		0 20px 48px rgba(11, 23, 57, .12);
}

.mxsb-template-product_template .woocommerce-product-gallery__wrapper {
	overflow: hidden;
	border-radius: calc(var(--mxsb-radius) - 3px);
	background: #fff;
}

.mxsb-template-product_template .woocommerce-product-gallery__image img {
	border-radius: calc(var(--mxsb-radius) - 3px);
}

.mxsb-template-product_template .flex-control-thumbs {
	display: grid !important;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
	margin-top: 16px !important;
}

.mxsb-template-product_template .flex-control-thumbs li {
	width: auto !important;
	margin: 0 !important;
	padding: 5px;
	border: 1px solid var(--mxsb-border);
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 7px 18px rgba(11, 23, 57, .08);
	transition: transform var(--mxsb-transition), border-color var(--mxsb-transition), box-shadow var(--mxsb-transition);
}

.mxsb-template-product_template .flex-control-thumbs li:hover {
	border-color: rgba(0, 115, 230, .55);
	transform: translateY(-3px);
	box-shadow: 0 12px 24px rgba(0, 115, 230, .14);
}

.mxsb-template-product_template .flex-control-thumbs img {
	border-radius: 8px;
}

.mxsb-template-product_template .product > .summary {
	width: calc(100% - var(--mxsb-gallery-width)) !important;
	padding: clamp(22px, 3vw, 40px);
	border: 1px solid var(--mxsb-border);
	border-radius: calc(var(--mxsb-radius) + 4px);
	background: #fff;
	box-shadow: var(--mxsb-system-shadow);
}

.mxsb-template-product_template.mxsb-product-sticky .product > .summary {
	position: sticky;
	top: 120px;
	align-self: flex-start;
}

.mxsb-template-product_template .summary .product_title {
	font-size: clamp(30px, 3.4vw, 48px);
	line-height: 1.1;
}

.mxsb-template-product_template .summary .price {
	color: var(--mxsb-primary);
	font-size: clamp(23px, 2.6vw, 34px);
	font-weight: 850;
}

/* Optional WooCommerce variation-description duplicate removal. */
.single-product.mxsb-hide-variation-description .woocommerce-variation-description {
	display: none !important;
}

.single-product.mxsb-product-hide-categories :where(
	.product_meta .posted_in,
	.summary .ct-product-categories,
	.summary .product-categories,
	.summary [class*="product-category"]
) {
	display: none !important;
}

.mxsb-template-product_template.mxsb-template-variant-classic .product > .summary {
	padding: 10px 0 10px 24px;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.mxsb-template-product_template.mxsb-template-variant-visual .product {
	--mxsb-gallery-width: 60%;
}

/* Additional single-product themes. They only change presentation; native
   WooCommerce and product-field markup remains untouched. */
.mxsb-template-product_template.mxsb-template-variant-premium .product {
	--mxsb-gallery-width: 56%;
}

.mxsb-template-product_template.mxsb-template-variant-premium :where(
	.product > .summary,
	.mxsb-product-top > .summary,
	.product-entry-wrapper > .summary
) {
	border-color: #c9def4;
	background: linear-gradient(145deg, #fff 45%, #eef7ff);
	box-shadow: 0 24px 58px rgba(0, 93, 187, .16);
}

.mxsb-template-product_template.mxsb-template-variant-premium .summary .price {
	text-shadow: 0 4px 16px rgba(0, 115, 230, .12);
}

.mxsb-template-product_template.mxsb-template-variant-technical .product {
	--mxsb-gallery-width: 50%;
}

.mxsb-template-product_template.mxsb-template-variant-technical :where(
	.product > .summary,
	.mxsb-product-top > .summary,
	.product-entry-wrapper > .summary
) {
	padding: clamp(20px, 2.4vw, 30px);
	border-top: 6px solid var(--mxsb-navy);
	border-radius: max(8px, calc(var(--mxsb-radius) - 4px));
	box-shadow: 0 14px 36px rgba(11, 23, 57, .11);
}

.mxsb-template-product_template.mxsb-template-variant-technical .summary .product_title {
	font-size: clamp(27px, 3vw, 40px);
}

.mxsb-template-product_template.mxsb-template-variant-technical .summary :where(.price, form.cart, form.variations_form, .product_meta) {
	padding-top: 14px;
	border-top: 1px solid var(--mxsb-border);
}

.mxsb-template-product_template.mxsb-template-variant-technical .mxsb-product-information section {
	border-radius: max(8px, calc(var(--mxsb-radius) - 5px));
}

.mxsb-template-product_template.mxsb-template-variant-compact .product {
	--mxsb-gallery-width: 48%;
}

.mxsb-template-product_template.mxsb-template-variant-compact :where(
	.product > .summary,
	.mxsb-product-top > .summary,
	.product-entry-wrapper > .summary
) {
	padding: clamp(18px, 2vw, 25px);
	border-radius: max(10px, calc(var(--mxsb-radius) - 3px));
	box-shadow: 0 10px 28px rgba(11, 23, 57, .09);
}

.mxsb-template-product_template.mxsb-template-variant-compact .summary .product_title {
	font-size: clamp(25px, 2.7vw, 36px);
}

.mxsb-template-product_template.mxsb-template-variant-compact .woocommerce-product-details__short-description {
	font-size: 14px;
	line-height: 1.55;
}

.mxsb-template-product_template.mxsb-template-variant-compact .flex-control-thumbs {
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 7px;
}

.mxsb-product-information {
	clear: both;
	display: grid;
	gap: 28px;
	padding-top: var(--mxsb-system-space);
}

.mxsb-product-information section {
	padding: clamp(28px, 4vw, 48px);
	border: 1px solid var(--mxsb-border);
	border-radius: calc(var(--mxsb-radius) + 4px);
	background: #fff;
	box-shadow: var(--mxsb-system-shadow);
}

.mxsb-product-information h2 {
	margin-top: 0;
	font-size: clamp(25px, 3vw, 38px);
}

.mxsb-benefit-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.mxsb-benefit-grid > div {
	display: grid;
	gap: 7px;
	padding: 22px;
	border-radius: var(--mxsb-radius);
	background: var(--mxsb-soft);
}

.mxsb-benefit-grid strong {
	color: var(--mxsb-navy);
}

.mxsb-benefit-grid span {
	color: var(--mxsb-muted);
	font-size: 14px;
}

.mxsb-product-info-card--soft {
	background: linear-gradient(135deg, var(--mxsb-soft), #fff) !important;
}

.mxsb-template-product_template .woocommerce-tabs,
.mxsb-template-product_template .woocommerce-Tabs-panel--description {
	clear: both;
	margin-top: clamp(32px, 5vw, 68px);
	padding: clamp(24px, 4vw, 48px);
	border: 1px solid rgba(207, 222, 238, .95);
	border-radius: calc(var(--mxsb-radius) + 6px);
	background:
		linear-gradient(155deg, #fff 72%, #f5f9ff);
	box-shadow:
		0 5px 14px rgba(11, 23, 57, .05),
		0 22px 52px rgba(11, 23, 57, .11);
}

.mxsb-template-product_template .woocommerce-tabs .woocommerce-Tabs-panel--description {
	margin: 0;
	padding: clamp(12px, 2vw, 26px) 0 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.mxsb-template-product_template .woocommerce-tabs > ul.tabs {
	margin: 0 0 20px !important;
	padding-bottom: 14px !important;
	border-bottom: 1px solid var(--mxsb-border);
}

.mxsb-template-product_template .woocommerce-Tabs-panel--description > h2:first-child {
	margin-top: 0;
	font-size: clamp(27px, 3vw, 38px);
}

/* Product page 3.2.6: one centered shell, compact buying panel and premium gallery. */

.mxsb-template-product_template .product > .mxsb-product-top {
	--mxsb-gallery-width: var(--mxsb-product-gallery-width, 54%);
	clear: both;
	display: grid;
	grid-template-columns:
		minmax(0, calc(var(--mxsb-gallery-width) - 1.2%))
		minmax(360px, calc(100% - var(--mxsb-gallery-width) - 1.2%));
	align-items: start;
	gap: clamp(22px, 2.6vw, 34px);
	width: min(calc(100% - 40px), var(--mxsb-product-content-width, 1280px));
	max-width: var(--mxsb-product-content-width, 1280px);
	margin: clamp(26px, 4vw, 54px) auto 0;
}

/*
 * CSS-only Blocksy fallback. JavaScript adds mxsb-product-top to this native
 * wrapper, but the layout still remains usable when an optimizer delays JS.
 */
.mxsb-template-product_template .product > .product-entry-wrapper {
	--mxsb-gallery-width: var(--mxsb-product-gallery-width, 54%);
	clear: both;
	display: grid !important;
	grid-template-columns:
		minmax(0, calc(var(--mxsb-gallery-width) - 1.2%))
		minmax(360px, calc(100% - var(--mxsb-gallery-width) - 1.2%)) !important;
	align-items: start;
	gap: clamp(22px, 2.6vw, 34px) !important;
	width: min(calc(100% - 40px), var(--mxsb-product-content-width, 1280px)) !important;
	max-width: var(--mxsb-product-content-width, 1280px) !important;
	margin: clamp(26px, 4vw, 54px) auto 0 !important;
}

.mxsb-template-product_template .product > .product-entry-wrapper > .woocommerce-product-gallery,
.mxsb-template-product_template .product > .product-entry-wrapper > .summary {
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
	margin: 0 !important;
	float: none !important;
	box-sizing: border-box;
}

.mxsb-template-product_template .product > .product-entry-wrapper > .woocommerce-product-gallery {
	position: relative;
	padding: clamp(14px, 1.8vw, 22px);
	overflow: hidden;
	border: 1px solid rgba(199, 216, 235, .95);
	border-radius: calc(var(--mxsb-radius) + 6px);
	background: linear-gradient(155deg, #fff 64%, #edf6ff);
	box-shadow:
		0 5px 14px rgba(11, 23, 57, .05),
		0 24px 54px rgba(11, 23, 57, .13);
}

.mxsb-template-product_template .product > .product-entry-wrapper > .summary {
	padding: clamp(22px, 2.4vw, 32px);
	border: 1px solid rgba(199, 216, 235, .95);
	border-radius: calc(var(--mxsb-radius) + 6px);
	background: linear-gradient(155deg, #fff 78%, #f7fbff);
	box-shadow:
		0 5px 14px rgba(11, 23, 57, .05),
		0 24px 54px rgba(11, 23, 57, .11);
}

.mxsb-template-product_template .mxsb-product-top > .woocommerce-product-gallery,
.mxsb-template-product_template .mxsb-product-top > .summary {
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
	margin: 0 !important;
	float: none !important;
	box-sizing: border-box;
}

.mxsb-template-product_template .mxsb-product-top > .woocommerce-product-gallery {
	position: relative;
	padding: clamp(14px, 1.8vw, 22px);
	overflow: hidden;
	border: 1px solid rgba(199, 216, 235, .95);
	border-radius: calc(var(--mxsb-radius) + 6px);
	background: linear-gradient(155deg, #fff 64%, #edf6ff);
	box-shadow:
		0 5px 14px rgba(11, 23, 57, .05),
		0 24px 54px rgba(11, 23, 57, .13);
}

.mxsb-template-product_template .mxsb-product-top > .summary {
	padding: clamp(22px, 2.4vw, 32px);
	border: 1px solid rgba(199, 216, 235, .95);
	border-radius: calc(var(--mxsb-radius) + 6px);
	background: linear-gradient(155deg, #fff 78%, #f7fbff);
	box-shadow:
		0 5px 14px rgba(11, 23, 57, .05),
		0 24px 54px rgba(11, 23, 57, .11);
}

.mxsb-template-product_template.mxsb-product-match-columns .mxsb-product-top > .summary {
	min-height: var(--mxsb-gallery-rendered-height, auto);
}

.mxsb-template-product_template.mxsb-product-sticky .mxsb-product-top > .summary {
	position: sticky;
	top: 120px;
	align-self: start;
}

.mxsb-template-product_template .mxsb-product-top .summary .product_title {
	margin: 0 0 14px;
	font-size: clamp(28px, 2.8vw, 40px);
	line-height: 1.08;
}

.mxsb-template-product_template .mxsb-product-top .summary > .price {
	margin: 0 0 16px;
	font-size: clamp(22px, 2.2vw, 30px);
	line-height: 1.25;
}

.mxsb-template-product_template .mxsb-product-top .summary.mxsb-summary-has-variation-price > .price {
	display: none !important;
}

.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description {
	margin: 16px 0 24px;
	padding-bottom: 0;
	border-bottom: 0 !important;
}

.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description > :first-child {
	margin-top: 0;
}

.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description > :last-child {
	margin-bottom: 0;
}

.mxsb-template-product_template .mxsb-product-top form.cart,
.mxsb-template-product_template .mxsb-product-top form.variations_form {
	padding-top: 0 !important;
	border-top: 0 !important;
	margin-bottom: 0 !important;
}

.mxsb-template-product_template .mxsb-product-top form.cart::before,
.mxsb-template-product_template .mxsb-product-top form.variations_form::before,
.mxsb-template-product_template .mxsb-product-top table.variations,
.mxsb-template-product_template .mxsb-product-top table.variations > tbody,
.mxsb-template-product_template .mxsb-product-top table.variations > tbody > tr:first-child {
	border-top: 0 !important;
}

.mxsb-template-product_template .mxsb-product-top table.variations {
	margin-bottom: 12px;
}

.mxsb-template-product_template .mxsb-product-top .single_variation_wrap {
	padding-top: 2px;
}

.mxsb-template-product_template .mxsb-product-top .woocommerce-variation-price {
	margin: 8px 0 12px;
}

.mxsb-template-product_template .mxsb-product-top .woocommerce-variation-price .price {
	font-size: clamp(22px, 2.2vw, 30px);
	font-weight: 850;
}

.mxsb-summary-extras {
	margin-top: 20px;
	border: 1px solid var(--mxsb-border);
	border-radius: calc(var(--mxsb-radius) - 4px);
	background: var(--mxsb-soft);
	overflow: hidden;
}

.mxsb-summary-extras > summary,
.mxsb-summary-extras__title {
	position: relative;
	display: flex;
	min-height: 54px;
	align-items: center;
	padding: 14px 48px 14px 18px;
	color: var(--mxsb-navy);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
	cursor: pointer;
	list-style: none;
}

.mxsb-summary-extras > summary::-webkit-details-marker {
	display: none;
}

.mxsb-summary-extras > summary::after {
	content: "+";
	position: absolute;
	top: 50%;
	right: 18px;
	display: grid;
	width: 26px;
	height: 26px;
	place-items: center;
	border-radius: 50%;
	background: #fff;
	color: var(--mxsb-primary);
	font-size: 20px;
	line-height: 1;
	box-shadow: 0 5px 14px rgba(11, 23, 57, .08);
	transform: translateY(-50%);
}

.mxsb-summary-extras[open] > summary::after {
	content: "−";
}

.mxsb-summary-extras__title {
	margin: 0;
}

.mxsb-summary-extras--visible .mxsb-summary-extras__title {
	cursor: default;
}

.mxsb-summary-extras--hidden,
.mxsb-summary-extras[hidden] {
	display: none !important;
}

.mxsb-summary-extras__content {
	padding: 0 18px 18px;
	border-top: 1px solid rgba(199, 216, 235, .8);
}

.mxsb-summary-extras__content > * {
	max-width: 100%;
}

.mxsb-summary-extras__content > :first-child {
	margin-top: 18px;
}

.mxsb-summary-extras__content > :last-child {
	margin-bottom: 0;
}

/* Premium gallery: calm image canvas, clear zoom and horizontally scrollable thumbs. */

.mxsb-product-gallery-premium .mxsb-product-top .woocommerce-product-gallery__wrapper {
	overflow: hidden;
	border: 1px solid rgba(214, 226, 239, .9);
	border-radius: calc(var(--mxsb-radius) - 1px);
	background:
		radial-gradient(circle at 50% 42%, #fff 0, #fff 58%, #f3f8fd 100%);
}

.mxsb-product-gallery-premium .mxsb-product-top .woocommerce-product-gallery__image > a {
	display: grid;
	width: 100%;
	aspect-ratio: 1 / 1;
	place-items: center;
	padding: clamp(10px, 2vw, 22px);
	box-sizing: border-box;
}

.mxsb-product-gallery-premium .mxsb-product-top .woocommerce-product-gallery__image img {
	width: 100%;
	height: 100%;
	max-height: 680px;
	padding: 0;
	border-radius: calc(var(--mxsb-radius) - 5px);
	object-fit: contain;
	box-sizing: border-box;
}

.mxsb-product-gallery-premium .mxsb-product-top .flex-control-thumbs {
	display: flex !important;
	gap: 10px;
	margin: 14px 0 0 !important;
	padding: 3px 2px 9px !important;
	overflow-x: auto;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	scrollbar-color: rgba(0, 115, 230, .35) transparent;
	scrollbar-width: thin;
}

.mxsb-product-gallery-premium .mxsb-product-top .flex-control-thumbs li {
	flex: 0 0 clamp(74px, 7vw, 96px);
	aspect-ratio: 1 / 1;
	padding: 5px;
	border: 1px solid var(--mxsb-border);
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 6px 15px rgba(11, 23, 57, .07);
	scroll-snap-align: start;
}

.mxsb-product-gallery-premium .mxsb-product-top .flex-control-thumbs img {
	width: 100%;
	height: 100%;
	border-radius: 8px;
	object-fit: cover;
	opacity: .72;
	transition: opacity var(--mxsb-transition), box-shadow var(--mxsb-transition);
}

.mxsb-product-gallery-premium .mxsb-product-top .flex-control-thumbs img:hover,
.mxsb-product-gallery-premium .mxsb-product-top .flex-control-thumbs img.flex-active {
	opacity: 1;
	box-shadow: 0 0 0 2px var(--mxsb-primary);
}

.mxsb-product-gallery-premium .mxsb-product-top .woocommerce-product-gallery__trigger {
	top: 30px !important;
	right: 30px !important;
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border: 1px solid rgba(199, 216, 235, .9);
	border-radius: 50%;
	background: rgba(255, 255, 255, .94);
	box-shadow: 0 10px 25px rgba(11, 23, 57, .13);
	backdrop-filter: blur(8px);
}

/* Native Blocksy flexy gallery. */

.mxsb-product-gallery-premium .woocommerce-product-gallery .flexy-view {
	overflow: hidden;
	border: 1px solid rgba(214, 226, 239, .9);
	border-radius: calc(var(--mxsb-radius) - 1px);
	background:
		radial-gradient(circle at 50% 42%, #fff 0, #fff 58%, #f3f8fd 100%);
}

.mxsb-product-gallery-premium .woocommerce-product-gallery .flexy-item .ct-media-container {
	display: grid;
	width: 100%;
	height: 100%;
	place-items: center;
	padding: clamp(10px, 2vw, 22px);
	background: transparent;
	box-sizing: border-box;
}

.mxsb-product-gallery-premium .woocommerce-product-gallery .flexy-item img {
	width: 100%;
	height: 100%;
	max-height: 680px;
	object-fit: contain;
}

.mxsb-product-gallery-premium .woocommerce-product-gallery .flexy-pills {
	width: 100%;
	height: auto !important;
	margin-top: 14px;
	overflow: hidden;
}

.mxsb-product-gallery-premium .woocommerce-product-gallery .flexy-pills > ol {
	display: flex !important;
	gap: 10px;
	margin: 0 !important;
	padding: 3px 2px 9px !important;
	overflow-x: auto;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	scrollbar-color: rgba(0, 115, 230, .35) transparent;
	scrollbar-width: thin;
}

.mxsb-product-gallery-premium .woocommerce-product-gallery .flexy-pills li {
	flex: 0 0 clamp(74px, 7vw, 96px) !important;
	width: auto !important;
	height: auto !important;
	aspect-ratio: 1 / 1;
	margin: 0 !important;
	padding: 5px;
	border: 1px solid var(--mxsb-border);
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 6px 15px rgba(11, 23, 57, .07);
	scroll-snap-align: start;
	box-sizing: border-box;
}

.mxsb-product-gallery-premium .woocommerce-product-gallery .flexy-pills li.active {
	border-color: var(--mxsb-primary);
	box-shadow:
		0 0 0 2px rgba(0, 115, 230, .14),
		0 8px 18px rgba(0, 115, 230, .14);
}

.mxsb-product-gallery-premium .woocommerce-product-gallery .flexy-pills .ct-media-container {
	width: 100%;
	height: 100%;
	border-radius: 8px;
}

.mxsb-product-gallery-premium .woocommerce-product-gallery .flexy-pills img {
	width: 100%;
	height: 100%;
	border-radius: 8px;
	object-fit: cover;
	opacity: .76;
}

.mxsb-product-gallery-premium .woocommerce-product-gallery .flexy-pills li.active img,
.mxsb-product-gallery-premium .woocommerce-product-gallery .flexy-pills li:hover img {
	opacity: 1;
}

.mxsb-product-gallery-premium .woocommerce-product-gallery :where(.flexy-arrow-prev, .flexy-arrow-next) {
	width: 44px;
	height: 44px;
	border: 1px solid rgba(199, 216, 235, .9);
	background: rgba(255, 255, 255, .94);
	color: var(--mxsb-primary);
	box-shadow: 0 10px 25px rgba(11, 23, 57, .13);
	backdrop-filter: blur(8px);
}

.mxsb-product-gallery-premium .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
	display: grid !important;
}

.mxsb-gallery-hide-zoom-button .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	clip-path: inset(50%) !important;
	border: 0 !important;
	white-space: nowrap !important;
}

.mxsb-gallery-click-zoom .woocommerce-product-gallery :where(
	.woocommerce-product-gallery__image,
	.flexy-item .ct-media-container
) {
	cursor: zoom-in;
}

.mxsb-product-gallery-premium .woocommerce-product-gallery :where(
	.flexy-items,
	.woocommerce-product-gallery__wrapper
) {
	transition-duration: var(--mxsb-gallery-speed, 550ms) !important;
}

.mxsb-gallery-hide-counter .mxsb-gallery-counter {
	display: none !important;
}

.mxsb-gallery-counter {
	position: absolute;
	z-index: 4;
	top: 30px;
	left: 30px;
	padding: 8px 12px;
	border: 1px solid rgba(199, 216, 235, .9);
	border-radius: 999px;
	background: rgba(255, 255, 255, .94);
	color: var(--mxsb-navy);
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	box-shadow: 0 8px 20px rgba(11, 23, 57, .1);
	backdrop-filter: blur(8px);
}

/* The tabs, long description and module sections share the same 1280 px axis. */

.mxsb-template-product_template :where(
	.woocommerce-tabs,
	.mxsb-product-information,
	.related.products,
	.upsells.products
) {
	clear: both;
	width: min(calc(100% - 40px), var(--mxsb-product-content-width, 1280px)) !important;
	max-width: var(--mxsb-product-content-width, 1280px) !important;
	margin-right: auto !important;
	margin-left: auto !important;
	box-sizing: border-box;
}

.mxsb-template-product_template .product > .woocommerce-Tabs-panel--description {
	width: min(calc(100% - 40px), var(--mxsb-product-content-width, 1280px)) !important;
	max-width: var(--mxsb-product-content-width, 1280px) !important;
	margin-right: auto !important;
	margin-left: auto !important;
	box-sizing: border-box;
}

/* Cart and checkout */

.mxsb-template-cart .entry-header,
.mxsb-template-checkout .entry-header,
.mxsb-template-account .entry-header,
.mxsb-template-contact .entry-header {
	display: none;
}

.mxsb-template-cart .hero-section,
.mxsb-template-checkout .hero-section,
.mxsb-template-account .hero-section,
.mxsb-template-contact .hero-section {
	display: none !important;
}

.mxsb-checkout-progress {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	margin: 22px 0 38px;
}

.mxsb-checkout-progress span {
	position: relative;
	display: flex;
	gap: 9px;
	align-items: center;
	color: var(--mxsb-muted);
	font-size: 13px;
	font-weight: 700;
}

.mxsb-checkout-progress span:not(:last-child)::after {
	content: "";
	height: 2px;
	flex: 1;
	margin: 0 10px;
	background: var(--mxsb-border);
}

.mxsb-checkout-progress i {
	display: inline-flex;
	width: 31px;
	height: 31px;
	flex: 0 0 31px;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--mxsb-border);
	border-radius: 50%;
	background: #fff;
	font-style: normal;
}

.mxsb-checkout-progress span.is-active {
	color: var(--mxsb-primary);
}

.mxsb-checkout-progress span.is-active i {
	border-color: var(--mxsb-primary);
	background: var(--mxsb-primary);
	color: #fff;
}

.mxsb-commerce-intro {
	margin: 0 0 24px;
}

.mxsb-commerce-intro h1 {
	margin: 0 0 8px;
	font-size: clamp(34px, 4vw, 52px);
}

.mxsb-commerce-intro p {
	margin: 0;
	color: var(--mxsb-muted);
}

.mxsb-net-notice,
.mxsb-file-notice {
	display: flex;
	gap: 10px;
	margin: 0 0 24px;
	padding: 14px 18px;
	border: 1px solid #cfe1f5;
	border-radius: var(--mxsb-field-radius);
	background: var(--mxsb-soft);
	color: #36506f;
	font-size: 13px;
}

.mxsb-file-notice {
	flex-direction: column;
}

/* WooCommerce Blocks and classic cart share one centered 1280 px axis. */

.mxsb-template-cart :where(
	.mxsb-checkout-progress,
	.mxsb-commerce-intro,
	.mxsb-net-notice,
	.wp-block-woocommerce-cart,
	.wc-block-cart,
	.woocommerce
) {
	width: min(calc(100% - 40px), 1280px) !important;
	max-width: 1280px !important;
	margin-right: auto !important;
	margin-left: auto !important;
	box-sizing: border-box;
}

.mxsb-template-cart .wc-block-cart {
	display: grid !important;
	grid-template-columns: minmax(0, 1.75fr) minmax(300px, .9fr) !important;
	gap: clamp(20px, 2.4vw, 32px) !important;
	align-items: start;
}

.mxsb-template-cart :where(
	.wc-block-cart__main,
	.wc-block-cart__sidebar
) {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	float: none !important;
}

.mxsb-template-cart :where(
	.wc-block-cart__main,
	.wc-block-cart__sidebar,
	.woocommerce-cart-form,
	.cart_totals
) {
	padding: clamp(20px, 2.5vw, 30px) !important;
	border: 1px solid var(--mxsb-border) !important;
	border-radius: calc(var(--mxsb-radius) + 2px) !important;
	background: #fff !important;
	box-shadow: 0 16px 42px rgba(11, 23, 57, .10) !important;
	box-sizing: border-box;
}

.mxsb-template-cart .wc-block-cart__sidebar {
	align-self: start;
}

.mxsb-template-cart :where(
	.wc-block-cart-items,
	.wc-block-cart-items table,
	.wc-block-components-sidebar-layout,
	.wc-block-components-main,
	.wc-block-components-sidebar
) {
	max-width: 100%;
	box-sizing: border-box;
}

.mxsb-template-cart .woocommerce-cart-form,
.mxsb-template-cart .cart_totals,
.mxsb-template-checkout .woocommerce-billing-fields,
.mxsb-template-checkout .woocommerce-shipping-fields,
.mxsb-template-checkout #order_review,
.mxsb-template-checkout .wc-block-components-sidebar,
.mxsb-template-checkout .wc-block-checkout__main {
	padding: clamp(18px, 3vw, 30px);
	border: 1px solid var(--mxsb-border);
	border-radius: calc(var(--mxsb-radius) + 2px);
	background: #fff;
	box-shadow: var(--mxsb-system-shadow);
}

.mxsb-cart-sticky .cart_totals,
.mxsb-checkout-sticky #order_review,
.mxsb-checkout-sticky .wc-block-components-sidebar {
	position: sticky;
	top: 110px;
}

.mxsb-template-cart table.shop_table,
.mxsb-template-checkout table.shop_table {
	border: 0;
	border-collapse: separate;
	border-spacing: 0;
}

.mxsb-template-cart table.shop_table td,
.mxsb-template-cart table.shop_table th,
.mxsb-template-checkout table.shop_table td,
.mxsb-template-checkout table.shop_table th {
	padding: 16px 12px;
	border-color: var(--mxsb-border);
}

.mxsb-template-cart.mxsb-template-variant-compact .woocommerce-cart-form,
.mxsb-template-cart.mxsb-template-variant-compact .cart_totals,
.mxsb-template-checkout.mxsb-template-variant-compact :where(.woocommerce-billing-fields, .woocommerce-shipping-fields, #order_review) {
	padding: 18px;
	box-shadow: none;
}

.mxsb-template-checkout :where(
	#order_review_heading,
	.woocommerce-checkout-review-order > h2,
	.wc-block-components-checkout-order-summary__title,
	.wc-block-checkout__sidebar .wc-block-components-title
) {
	margin: 0 0 22px !important;
	padding: 0 0 16px !important;
	border-bottom: 1px solid var(--mxsb-border);
	color: var(--mxsb-navy) !important;
	font-size: clamp(25px, 2.5vw, 34px) !important;
	font-weight: 850 !important;
	line-height: 1.2 !important;
	letter-spacing: -.03em !important;
}

.mxsb-checkout-focused .mxsb-topbar,
.mxsb-checkout-focused .mxsb-header-nav-row,
.mxsb-checkout-focused .mxsb-header-search,
.mxsb-checkout-focused .mxsb-header-actions {
	display: none !important;
}

.mxsb-checkout-focused .mxsb-header-main__inner {
	justify-content: center;
	min-height: 84px;
}

.mxsb-order-next {
	margin: 30px 0;
	padding: clamp(26px, 4vw, 42px);
	border-radius: calc(var(--mxsb-radius) + 4px);
	background: var(--mxsb-soft);
}

.mxsb-order-next ol {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	padding: 0;
	list-style: none;
}

.mxsb-order-next li {
	display: grid;
	gap: 6px;
	padding: 20px;
	border-radius: var(--mxsb-radius);
	background: #fff;
}

/* Account */

body.mxsb-template-account .ct-account-nav > :not(.woocommerce-MyAccount-navigation),
body.mxsb-template-account .mxsb-blocksy-account-nav-hidden,
body.mxsb-template-account .mxsb-account-native-shell-fragment,
body.mxsb-template-account .mxsb-account-native-greeting {
	display: none !important;
}

body.mxsb-template-account .ct-account-nav:not(.woocommerce-MyAccount-navigation) {
	display: none !important;
}

body.mxsb-template-account :where(.ct-account-user-box, .ct-account-user-info, [class*="account-user-box"], [class*="account-user-info"]) {
	display: none !important;
}

body.mxsb-template-account .ct-woo-account.mxsb-account-shell,
body.mxsb-template-account .woocommerce.mxsb-account-shell {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.mxsb-template-account .woocommerce:has(> .woocommerce-MyAccount-navigation) {
	display: grid !important;
	grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) !important;
	align-items: start;
	gap: 28px;
}

body.mxsb-template-account .woocommerce:has(> .woocommerce-MyAccount-navigation) > .mxsb-account-intro,
body.mxsb-template-account .woocommerce:has(> .woocommerce-MyAccount-navigation) > .mxsb-account-cards,
body.mxsb-template-account .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-notices-wrapper {
	width: 100% !important;
	min-width: 0;
	grid-column: 1 / -1;
}

body.mxsb-template-account .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation {
	width: 100% !important;
	float: none !important;
	grid-column: 1;
}

body.mxsb-template-account .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content {
	width: 100% !important;
	min-width: 0;
	float: none !important;
	grid-column: 2;
}

.mxsb-template-account .mxsb-account-container,
.mxsb-template-account .mxsb-account-container *,
.mxsb-template-account .mxsb-account-container *::before,
.mxsb-template-account .mxsb-account-container *::after {
	box-sizing: border-box;
}

.mxsb-template-account .mxsb-account-container {
	display: grid;
	gap: clamp(26px, 3vw, 38px);
	width: min(calc(100% - 40px), var(--mxsb-account-container-width, 1280px));
	max-width: var(--mxsb-account-container-width, 1280px);
	margin: clamp(34px, 5vw, 70px) auto var(--mxsb-system-space);
}

.mxsb-account-intro {
	position: relative;
	width: 100%;
	min-width: 0;
	margin: 0;
	padding: clamp(48px, 6vw, 76px);
	overflow: hidden;
	border-radius: calc(var(--mxsb-radius) + 10px);
	background:
		radial-gradient(circle at 13% 16%, rgba(56, 189, 248, .28), transparent 30%),
		radial-gradient(circle at 88% 78%, rgba(37, 99, 235, .32), transparent 34%),
		linear-gradient(135deg, var(--mxsb-navy), #0d3c77 55%, var(--mxsb-primary));
	color: #dbeafe;
	word-break: normal;
	overflow-wrap: normal;
	box-shadow: 0 18px 42px rgba(11, 23, 57, .14);
}

.mxsb-account-intro h1 {
	max-width: 950px;
	margin: 8px 0 14px;
	color: #fff;
	font-size: clamp(38px, 5vw, 64px);
	font-weight: 850;
	line-height: 1.08;
	letter-spacing: -.045em;
}

.mxsb-account-intro .mxsb-system-hero__eyebrow {
	margin: 0 0 10px;
	color: #69c8ff;
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .14em;
}

.mxsb-account-intro > p:last-child {
	max-width: 780px;
	font-size: clamp(16px, 1.65vw, 20px);
	line-height: 1.65;
}

.mxsb-account-intro p:last-child {
	margin-bottom: 0;
}

.mxsb-account-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	margin: 0 0 30px;
}

.mxsb-account-cards > div {
	display: grid;
	gap: 4px;
	padding: 20px;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	background: #fff;
	box-shadow: var(--mxsb-system-shadow);
}

.mxsb-account-cards span {
	color: var(--mxsb-muted);
	font-size: 13px;
}

.mxsb-template-account .woocommerce-MyAccount-navigation {
	padding: 16px;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	background: var(--mxsb-soft);
}

.mxsb-template-account .woocommerce-MyAccount-navigation ul {
	display: grid;
	gap: 5px;
}

.mxsb-template-account .woocommerce-MyAccount-navigation a {
	display: block;
	padding: 11px 13px;
	border-radius: 11px;
	color: var(--mxsb-navy);
	font-weight: 700;
}

.mxsb-template-account .woocommerce-MyAccount-navigation .is-active a,
.mxsb-template-account .woocommerce-MyAccount-navigation a:hover {
	background: #fff;
	color: var(--mxsb-primary);
}

.mxsb-template-account.mxsb-template-variant-classic .mxsb-account-cards {
	display: none;
}

/* Stable two-column account shell inside the centered 1280 px container.
   frontend.js groups the native WooCommerce navigation without changing its
   endpoints or links. */
.mxsb-template-account .mxsb-account-layout,
.mxsb-template-account .mxsb-account-layout *,
.mxsb-template-account .mxsb-account-layout *::before,
.mxsb-template-account .mxsb-account-layout *::after {
	box-sizing: border-box;
}

.mxsb-template-account .mxsb-account-layout {
	display: grid;
	grid-template-columns: minmax(280px, var(--mxsb-account-sidebar-width, 320px)) minmax(0, 1fr);
	align-items: start;
	justify-items: stretch;
	gap: clamp(24px, 2.5vw, 36px);
	width: 100%;
	max-width: none;
	margin: 0;
	text-align: left;
}

.mxsb-template-account .mxsb-account-sidebar {
	display: grid;
	gap: 22px;
	width: 100%;
	min-width: 0;
	align-self: start;
	text-align: left;
}

.mxsb-template-account .mxsb-account-sidebar .mxsb-account-cards {
	grid-template-columns: 1fr;
	gap: 12px;
	margin: 0;
}

.mxsb-template-account .mxsb-account-sidebar .mxsb-account-cards > div {
	min-width: 0;
	padding: 18px 20px;
}

.mxsb-template-account .mxsb-account-sidebar .woocommerce-MyAccount-navigation {
	width: 100% !important;
	float: none !important;
}

.mxsb-template-account .mxsb-account-layout > .woocommerce-MyAccount-content {
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
	float: none !important;
	padding: clamp(24px, 3vw, 38px);
	border: 1px solid var(--mxsb-border);
	border-radius: calc(var(--mxsb-radius) + 4px);
	background: #fff;
	box-shadow: var(--mxsb-system-shadow);
	text-align: left !important;
	overflow-wrap: anywhere;
}

.mxsb-template-account .mxsb-account-layout > .woocommerce-MyAccount-content > :first-child {
	margin-top: 0;
}

.mxsb-template-account .mxsb-account-layout > .woocommerce-MyAccount-content > :last-child {
	margin-bottom: 0;
}

/* Blog and posts */

.mxsb-blog-hero {
	grid-column: 1 / -1;
	margin: 0 0 34px;
	padding: clamp(32px, 5vw, 56px);
	border-radius: calc(var(--mxsb-radius) + 6px);
	background: linear-gradient(135deg, var(--mxsb-navy), #0b3b78);
	color: #dbeafe;
}

.mxsb-blog-hero h1 {
	max-width: 820px;
	margin: 7px 0 12px;
	color: #fff;
	font-size: clamp(35px, 4.6vw, 58px);
}

.mxsb-blog-hero p:last-child {
	max-width: 760px;
	margin: 0;
}

.mxsb-template-blog .entries {
	display: grid;
	grid-template-columns: repeat(var(--mxsb-blog-columns, 3), minmax(0, 1fr));
	gap: 26px !important;
}

.mxsb-template-blog article {
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	background: #fff;
	box-shadow: var(--mxsb-system-shadow);
	overflow: hidden;
	transition: transform var(--mxsb-transition);
}

.mxsb-template-blog article:hover {
	transform: translateY(-4px);
}

.mxsb-template-blog article .entry-card {
	border: 0;
	box-shadow: none;
}

.mxsb-blog-cta {
	grid-column: 1 / -1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	margin: 34px 0;
	padding: clamp(28px, 5vw, 48px);
	border-radius: calc(var(--mxsb-radius) + 6px);
	background: linear-gradient(135deg, var(--mxsb-navy), #10417e);
	color: #dbeafe;
}

.mxsb-blog-cta h2 {
	margin: 0 0 7px;
	color: #fff;
}

.mxsb-blog-cta p {
	margin: 0;
}

.mxsb-template-blog.mxsb-template-variant-compact article {
	box-shadow: none;
}

.mxsb-template-post .entry-content {
	max-width: 840px;
	margin-inline: auto;
	font-size: 18px;
	line-height: 1.8;
}

.mxsb-template-post .entry-header {
	max-width: 980px;
	margin-inline: auto;
	text-align: center;
}

.mxsb-post-reading-time {
	width: fit-content;
	margin: 0 0 24px;
	padding: 8px 12px;
	border-radius: 999px;
	background: var(--mxsb-soft);
	color: var(--mxsb-primary);
	font-size: 13px;
	font-weight: 800;
}

.mxsb-post-expert {
	margin: 44px 0 0;
	padding: clamp(24px, 4vw, 38px);
	border: 1px solid #cfe1f5;
	border-radius: calc(var(--mxsb-radius) + 4px);
	background: linear-gradient(135deg, var(--mxsb-soft), #fff);
}

.mxsb-post-expert strong {
	color: var(--mxsb-navy);
	font-size: 21px;
}

.mxsb-post-expert a {
	color: var(--mxsb-primary);
	font-weight: 800;
}

/* Contact */

.mxsb-contact-page {
	width: min(calc(100% - 40px), var(--mxsb-max));
	margin: 30px auto var(--mxsb-system-space);
	font-family: var(--mxsb-font-body, Arial, Helvetica, sans-serif);
}

.mxsb-contact-hero {
	padding: clamp(40px, 7vw, 78px);
	border-radius: calc(var(--mxsb-radius) + 10px);
	background:
		radial-gradient(circle at 85% 20%, rgba(20, 149, 255, .24), transparent 36%),
		linear-gradient(135deg, var(--mxsb-navy), #0b3d7b);
	color: #dbeafe;
}

.mxsb-contact-hero h1 {
	max-width: 850px;
	margin: 8px 0 14px;
	color: #fff;
	font-size: clamp(38px, 5vw, 62px);
	line-height: 1.08;
}

.mxsb-contact-hero > p:last-child {
	max-width: 760px;
	margin-bottom: 0;
	font-size: 18px;
}

.mxsb-contact-paths {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin: 28px 0;
}

.mxsb-contact-paths > div {
	padding: 25px;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	background: #fff;
	box-shadow: var(--mxsb-system-shadow);
}

.mxsb-contact-paths > div > span {
	color: var(--mxsb-primary);
	font-size: 12px;
	font-weight: 850;
}

.mxsb-contact-paths h2 {
	margin: 8px 0;
	font-size: 21px;
}

.mxsb-contact-paths p {
	margin: 0;
	color: var(--mxsb-muted);
	font-size: 14px;
}

.mxsb-contact-main {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(280px, .7fr);
	gap: 25px;
}

.mxsb-contact-form,
.mxsb-contact-details {
	padding: clamp(25px, 4vw, 42px);
	border: 1px solid var(--mxsb-border);
	border-radius: calc(var(--mxsb-radius) + 4px);
	background: #fff;
	box-shadow: var(--mxsb-system-shadow);
}

.mxsb-contact-placeholder {
	padding: 28px;
	border: 2px dashed #a9c8e8;
	border-radius: var(--mxsb-radius);
	background: var(--mxsb-soft);
	text-align: center;
}

.mxsb-contact-details p {
	display: grid;
	gap: 4px;
	padding-bottom: 15px;
	border-bottom: 1px solid var(--mxsb-border);
}

.mxsb-contact-details a {
	color: var(--mxsb-primary);
	text-decoration: none;
}

.mxsb-template-contact.mxsb-template-variant-cards .mxsb-contact-main {
	grid-template-columns: 1fr;
}

.mxsb-template-contact.mxsb-template-variant-compact .mxsb-contact-hero {
	padding-block: 38px;
}

/* Standard pages */

.mxsb-template-standard {
	--content-vertical-spacing: 0px;
}

.mxsb-template-standard .hero-section,
.mxsb-template-standard .ct-page-title,
.mxsb-template-standard .entry-header,
.mxsb-template-standard article.page > header.entry-header {
	display: none !important;
}

.mxsb-template-standard article.page {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.mxsb-template-standard article.page > .entry-content,
.mxsb-template-standard article.page > .ct-entry-content {
	width: 100%;
	max-width: none;
	margin: 0;
}

.mxsb-standard-hero {
	position: relative;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	padding: clamp(58px, 7vw, 92px) 24px;
	overflow: hidden;
	border-radius: calc(var(--mxsb-radius) + 6px);
	background:
		radial-gradient(circle at 13% 16%, rgba(56, 189, 248, .3), transparent 30%),
		radial-gradient(circle at 88% 78%, rgba(37, 99, 235, .34), transparent 34%),
		linear-gradient(135deg, var(--mxsb-navy), #0d3c77 55%, var(--mxsb-primary));
	color: #dbeafe;
	box-shadow: 0 18px 42px rgba(11, 23, 57, .12);
}

.mxsb-standard-hero__inner {
	width: min(100%, var(--mxsb-max));
	margin: 0 auto;
}

.mxsb-standard-hero__eyebrow {
	margin: 0 0 10px;
	color: #69c8ff;
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .14em;
}

.mxsb-standard-hero h1 {
	max-width: 950px;
	margin: 0;
	color: #fff;
	font-size: clamp(38px, 5vw, 64px);
	font-weight: 850;
	line-height: 1.08;
	letter-spacing: -.045em;
}

.mxsb-standard-hero__excerpt {
	max-width: 850px;
	margin: 20px 0 0;
	color: #dbeafe;
	font-size: clamp(16px, 1.65vw, 20px);
	line-height: 1.65;
}

.mxsb-standard-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 9px;
	margin-top: 26px;
	color: rgba(255, 255, 255, .73);
	font-size: 12px;
	font-weight: 750;
	text-transform: uppercase;
}

.mxsb-standard-breadcrumbs a {
	color: #7dd3fc;
	text-decoration: none;
}

.mxsb-standard-breadcrumbs a:hover {
	color: #fff;
}

.mxsb-standard-content {
	width: min(calc(100% - 40px), var(--mxsb-standard-width, 920px));
	margin: clamp(42px, 6vw, 82px) auto;
	color: var(--mxsb-text);
	font-size: var(--mxsb-body-size);
	line-height: 1.75;
}

.mxsb-standard-content-card .mxsb-standard-content {
	padding: clamp(28px, 4.5vw, 58px);
	border: 1px solid rgba(207, 222, 238, .95);
	border-radius: calc(var(--mxsb-radius) + 6px);
	background: linear-gradient(155deg, #fff 78%, #f7faff);
	box-shadow:
		0 5px 14px rgba(11, 23, 57, .05),
		0 22px 52px rgba(11, 23, 57, .11);
}

.mxsb-standard-content > :first-child {
	margin-top: 0 !important;
}

.mxsb-standard-content > :last-child {
	margin-bottom: 0 !important;
}

.mxsb-standard-content .mxsb-duplicate-page-heading {
	display: none !important;
}

.mxsb-standard-content :where(h2, h3, h4) {
	color: var(--mxsb-navy);
	font-weight: 820;
	line-height: 1.2;
	letter-spacing: -.025em;
}

.mxsb-standard-content h2 {
	margin: 1.35em 0 .55em;
	font-size: clamp(28px, 3vw, 40px);
}

.mxsb-standard-content h3 {
	margin: 1.25em 0 .5em;
	font-size: clamp(22px, 2.3vw, 29px);
}

.mxsb-standard-content a:not(.wp-element-button):not(.button) {
	color: var(--mxsb-primary);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.mxsb-standard-content :where(.wp-element-button, .wp-block-button__link, .button, button, input[type="submit"]) {
	min-height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 22px !important;
	border: 0 !important;
	border-radius: var(--mxsb-button-radius) !important;
	background: linear-gradient(135deg, var(--mxsb-primary), #1495ff) !important;
	color: #fff !important;
	font-weight: 800;
	text-decoration: none;
	box-shadow: 0 9px 22px rgba(0, 115, 230, .22);
	transition: transform var(--mxsb-transition), box-shadow var(--mxsb-transition);
}

.mxsb-standard-content :where(.wp-element-button, .wp-block-button__link, .button, button, input[type="submit"]):hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 30px rgba(0, 115, 230, .29);
}

.mxsb-standard-content img {
	height: auto;
	border-radius: var(--mxsb-radius);
}

.mxsb-standard-content :where(.wp-block-image, .wp-block-media-text, .wp-block-columns) {
	margin-block: clamp(24px, 4vw, 44px);
}

.mxsb-standard-content :where(blockquote, .wp-block-quote) {
	margin: 30px 0;
	padding: 22px 26px;
	border: 0;
	border-left: 4px solid var(--mxsb-primary);
	border-radius: 0 var(--mxsb-radius) var(--mxsb-radius) 0;
	background: var(--mxsb-soft);
	color: var(--mxsb-navy);
}

.mxsb-standard-style-forms .mxsb-standard-content :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
	width: 100%;
	min-height: 50px;
	padding: 12px 15px;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-field-radius);
	background: #fff;
	color: var(--mxsb-text);
	box-shadow: none;
}

.mxsb-standard-style-forms .mxsb-standard-content :where(input, select, textarea):focus {
	border-color: var(--mxsb-primary);
	outline: 0;
	box-shadow: 0 0 0 4px rgba(0, 115, 230, .1);
}

.mxsb-standard-style-tables .mxsb-standard-content table {
	width: 100%;
	overflow: hidden;
	border: 1px solid var(--mxsb-border);
	border-collapse: separate;
	border-spacing: 0;
	border-radius: var(--mxsb-radius);
	background: #fff;
}

.mxsb-standard-style-tables .mxsb-standard-content :where(th, td) {
	padding: 14px 16px;
	border: 0;
	border-bottom: 1px solid var(--mxsb-border);
	text-align: left;
}

.mxsb-standard-style-tables .mxsb-standard-content th {
	background: var(--mxsb-soft);
	color: var(--mxsb-navy);
	font-weight: 800;
}

.mxsb-standard-hero-light .mxsb-standard-hero,
.mxsb-standard-hero-light .mec-page-hero {
	border-bottom: 1px solid var(--mxsb-border);
	background:
		radial-gradient(circle at 15% 20%, rgba(0, 115, 230, .1), transparent 32%),
		linear-gradient(135deg, #f7fbff, #edf5fd);
	color: var(--mxsb-muted);
}

.mxsb-standard-hero-light .mxsb-standard-hero h1,
.mxsb-standard-hero-light .mec-page-hero h1 {
	color: var(--mxsb-navy);
}

.mxsb-standard-hero-light .mxsb-standard-hero__excerpt,
.mxsb-standard-hero-light .mec-page-hero p {
	color: var(--mxsb-muted);
}

.mxsb-standard-hero-light .mxsb-standard-breadcrumbs,
.mxsb-standard-hero-light .mec-page-hero .mec-breadcrumbs {
	color: var(--mxsb-muted);
}

.mxsb-standard-hero-light .mxsb-standard-breadcrumbs a,
.mxsb-standard-hero-light .mec-page-hero .mec-breadcrumbs a {
	color: var(--mxsb-primary);
}

.mxsb-standard-hero-minimal .mxsb-standard-hero,
.mxsb-standard-hero-minimal .mec-page-hero {
	padding-block: clamp(40px, 5vw, 66px);
	border-bottom: 1px solid var(--mxsb-border);
	background: #fff;
	color: var(--mxsb-muted);
}

.mxsb-standard-hero-minimal .mxsb-standard-hero h1,
.mxsb-standard-hero-minimal .mec-page-hero h1 {
	color: var(--mxsb-navy);
}

.mxsb-standard-hero-minimal .mxsb-standard-hero__excerpt,
.mxsb-standard-hero-minimal .mec-page-hero p {
	color: var(--mxsb-muted);
}

.mxsb-standard-hero-minimal .mxsb-standard-breadcrumbs,
.mxsb-standard-hero-minimal .mec-page-hero .mec-breadcrumbs {
	color: var(--mxsb-muted);
}

.mxsb-standard-hero-minimal .mxsb-standard-breadcrumbs a,
.mxsb-standard-hero-minimal .mec-page-hero .mec-breadcrumbs a {
	color: var(--mxsb-primary);
}

.mxsb-template-standard.mxsb-template-variant-wide .mxsb-standard-content {
	--mxsb-standard-width: var(--mxsb-max);
}

.mxsb-template-standard.mxsb-template-variant-boxed .mxsb-standard-content {
	box-shadow:
		0 8px 20px rgba(11, 23, 57, .07),
		0 30px 70px rgba(11, 23, 57, .14);
}

/* Protected admin preview skeletons */

.mxsb-template-preview {
	min-height: 700px;
	color: var(--mxsb-text);
	font-family: var(--mxsb-font-body, Arial, Helvetica, sans-serif);
}

.mxsb-preview-shop,
.mxsb-preview-product,
.mxsb-preview-checkout,
.mxsb-preview-account {
	width: min(calc(100% - 40px), var(--mxsb-max));
	display: grid;
	gap: 25px;
	margin: 36px auto;
}

.mxsb-preview-shop {
	grid-template-columns: 220px 1fr;
}

.mxsb-preview-shop aside {
	display: grid;
	align-content: start;
	gap: 14px;
	padding: 20px;
	border-radius: var(--mxsb-radius);
	background: var(--mxsb-soft);
}

.mxsb-preview-shop aside i,
.mxsb-preview-line {
	display: block;
	height: 42px;
	border-radius: 10px;
	background: linear-gradient(90deg, #e6eef7, #f7faff, #e6eef7);
}

.mxsb-preview-toolbar {
	display: flex;
	justify-content: space-between;
	margin-bottom: 18px;
}

.mxsb-preview-products,
.mxsb-preview-posts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.mxsb-preview-products article,
.mxsb-preview-posts article {
	display: grid;
	gap: 9px;
	padding: 12px;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	background: #fff;
	box-shadow: var(--mxsb-system-shadow);
}

.mxsb-preview-products article > div,
.mxsb-preview-posts article > div {
	aspect-ratio: 4 / 3;
	border-radius: 12px;
	background: linear-gradient(135deg, #e9f4ff, #c9e4ff);
}

.mxsb-preview-products button,
.mxsb-preview-config button,
.mxsb-preview-checkout button {
	min-height: 42px;
	border: 0;
	background: var(--mxsb-primary);
	color: #fff;
	font-weight: 800;
}

.mxsb-preview-product {
	grid-template-columns: 1.08fr .92fr;
}

.mxsb-preview-gallery > div {
	aspect-ratio: 4 / 3;
	border-radius: var(--mxsb-radius);
	background: linear-gradient(135deg, #edf6ff, #c8e4ff);
}

.mxsb-preview-gallery span {
	display: inline-block;
	width: 70px;
	height: 70px;
	margin: 12px 8px 0 0;
	border-radius: 10px;
	background: #e7eef6;
}

.mxsb-preview-config {
	display: grid;
	align-content: start;
	gap: 14px;
	padding: 28px;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	box-shadow: var(--mxsb-system-shadow);
}

.mxsb-preview-options {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}

.mxsb-preview-options i {
	padding: 10px;
	border: 1px solid var(--mxsb-border);
	border-radius: 10px;
	font-style: normal;
}

.mxsb-preview-checkout {
	grid-template-columns: 1.5fr .7fr;
}

.mxsb-preview-checkout main,
.mxsb-preview-checkout aside,
.mxsb-preview-standard {
	display: grid;
	gap: 14px;
	padding: 26px;
	border: 1px solid var(--mxsb-border);
	border-radius: var(--mxsb-radius);
	background: #fff;
	box-shadow: var(--mxsb-system-shadow);
}

.mxsb-preview-account {
	grid-template-columns: 230px 1fr;
}

.mxsb-preview-account nav {
	display: grid;
	align-content: start;
	gap: 12px;
	padding: 22px;
	border-radius: var(--mxsb-radius);
	background: var(--mxsb-soft);
}

.mxsb-preview-posts,
.mxsb-preview-standard {
	width: min(calc(100% - 40px), var(--mxsb-max));
	margin: 36px auto;
}

.mxsb-no-motion *,
.mxsb-no-motion *::before,
.mxsb-no-motion *::after {
	scroll-behavior: auto !important;
	transition-duration: 0s !important;
	animation-duration: 0s !important;
}

/* When scroll animations are disabled, content must be visible immediately.
 * This also neutralizes reveal classes added by the companion theme. */
.mxsb-no-motion .mxsb-reveal,
.mxsb-no-motion .mec-reveal {
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	transition: none !important;
}

/* Mobile banner visibility.
 * The option is stored as `hide_pages` / `hide_all`. Versions up to 5.3.14
 * added that value to the body class with an underscore, while CSS expected
 * a hyphen. Support both forms so the rule also works with cached HTML. */
@media (max-width: 767px) {
	body.mxsb-mobile-banners-hide-pages :where(
		.mec-page-hero,
		.mec-single-hero,
		.mxsb-system-hero,
		.mxsb-shop-hero,
		.mxsb-account-intro,
		.mxsb-blog-hero,
		.mxsb-contact-hero,
		.mxsb-configurator-page-hero
	),
	body.mxsb-mobile-banners-hide_pages :where(
		.mec-page-hero,
		.mec-single-hero,
		.mxsb-system-hero,
		.mxsb-shop-hero,
		.mxsb-account-intro,
		.mxsb-blog-hero,
		.mxsb-contact-hero,
		.mxsb-configurator-page-hero
	),
	body.mxsb-mobile-banners-hide-all :where(
		.mec-page-hero,
		.mec-single-hero,
		.mxsb-system-hero,
		.mxsb-shop-hero,
		.mxsb-account-intro,
		.mxsb-blog-hero,
		.mxsb-contact-hero,
		.mxsb-configurator-page-hero,
		.mxsb-hero,
		.mec-home-hero,
		.mxsb-visual-hero
	),
	body.mxsb-mobile-banners-hide_all :where(
		.mec-page-hero,
		.mec-single-hero,
		.mxsb-system-hero,
		.mxsb-shop-hero,
		.mxsb-account-intro,
		.mxsb-blog-hero,
		.mxsb-contact-hero,
		.mxsb-configurator-page-hero,
		.mxsb-hero,
		.mec-home-hero,
		.mxsb-visual-hero
	) {
		display: none !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}
}

@media (min-width: 1025px) {
	.mxsb-template-hide-desktop :where(.mxsb-system-hero, .mxsb-commerce-intro, .mxsb-net-notice, .mxsb-file-notice, .mxsb-product-information, .mxsb-account-intro, .mxsb-account-cards, .mxsb-blog-hero, .mxsb-contact-page) {
		display: none !important;
	}
}

@media (min-width: 601px) and (max-width: 1024px) {
	.mxsb-template-hide-tablet :where(.mxsb-system-hero, .mxsb-commerce-intro, .mxsb-net-notice, .mxsb-file-notice, .mxsb-product-information, .mxsb-account-intro, .mxsb-account-cards, .mxsb-blog-hero, .mxsb-contact-page) {
		display: none !important;
	}
}

@media (max-width: 1024px) {
	.mxsb-template-shop ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	.mxsb-preview-products,
	.mxsb-preview-posts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 820px) {
	.mxsb-template-cart .wc-block-cart {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.mxsb-template-cart :where(
		.mxsb-checkout-progress,
		.mxsb-commerce-intro,
		.mxsb-net-notice,
		.wp-block-woocommerce-cart,
		.wc-block-cart,
		.woocommerce
	) {
		width: min(calc(100% - 28px), 1280px) !important;
	}

	.mxsb-template-cart :where(
		.wc-block-cart__main,
		.wc-block-cart__sidebar,
		.woocommerce-cart-form,
		.cart_totals
	) {
		padding: 17px !important;
		border-radius: var(--mxsb-radius) !important;
	}

	.mxsb-template-shop ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.mxsb-template-product_template .product > .mxsb-product-top {
		grid-template-columns: minmax(0, 1fr);
		width: min(calc(100% - 28px), var(--mxsb-product-content-width, 1280px));
		gap: 22px;
	}

	.mxsb-template-product_template .product > .product-entry-wrapper {
		grid-template-columns: minmax(0, 1fr) !important;
		width: min(calc(100% - 28px), var(--mxsb-product-content-width, 1280px)) !important;
		gap: 22px !important;
	}

	.mxsb-template-product_template.mxsb-product-match-columns .mxsb-product-top > .summary {
		min-height: 0;
	}

	.mxsb-template-product_template .product > .woocommerce-product-gallery,
	.mxsb-template-product_template .product > .summary {
		width: 100% !important;
	}

	.mxsb-template-product_template.mxsb-product-sticky .mxsb-product-top > .summary,
	.mxsb-template-product_template.mxsb-product-sticky .product > .summary,
	.mxsb-cart-sticky .cart_totals,
	.mxsb-checkout-sticky #order_review,
	.mxsb-checkout-sticky .wc-block-components-sidebar {
		position: static;
	}

	.mxsb-benefit-grid,
	.mxsb-order-next ol,
	.mxsb-account-cards,
	.mxsb-contact-paths {
		grid-template-columns: 1fr;
	}

	.mxsb-contact-main,
	.mxsb-preview-shop,
	.mxsb-preview-product,
	.mxsb-preview-checkout,
	.mxsb-preview-account {
		grid-template-columns: 1fr;
	}

	.mxsb-blog-cta,
	.mxsb-archive-b2b {
		align-items: flex-start;
		flex-direction: column;
	}

	body.mxsb-template-account .woocommerce:has(> .woocommerce-MyAccount-navigation) {
		grid-template-columns: 1fr !important;
	}

	body.mxsb-template-account .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation,
	body.mxsb-template-account .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content {
		grid-column: 1;
	}

	.mxsb-template-account .mxsb-account-layout {
		grid-template-columns: 1fr;
	}

	.mxsb-template-account .mxsb-account-sidebar {
		width: 100%;
	}

	.mxsb-template-account .mxsb-account-sidebar .mxsb-account-cards {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.mxsb-template-hide-mobile :where(.mxsb-system-hero, .mxsb-commerce-intro, .mxsb-net-notice, .mxsb-file-notice, .mxsb-product-information, .mxsb-account-intro, .mxsb-account-cards, .mxsb-blog-hero, .mxsb-contact-page) {
		display: none !important;
	}

	.mxsb-system-hero {
		padding: 44px 0;
	}

	.mxsb-standard-hero {
		padding: 46px 20px;
	}

	.mxsb-standard-hero h1 {
		font-size: clamp(34px, 11vw, 46px);
	}

	.mxsb-standard-hero__excerpt {
		font-size: 15px;
	}

	.mxsb-standard-content {
		width: min(calc(100% - 24px), var(--mxsb-standard-width, 920px));
		margin-block: 32px;
	}

	.mxsb-standard-content-card .mxsb-standard-content {
		padding: 22px 18px;
		border-radius: 18px;
	}

	.mxsb-template-account .mxsb-account-container {
		width: calc(100% - 24px);
		margin-block: 24px 42px;
	}

	.mxsb-template-account .mxsb-account-intro {
		padding: 42px 22px;
		border-radius: 20px;
	}

	.mxsb-template-account .mxsb-account-intro h1 {
		font-size: clamp(34px, 11vw, 46px);
	}

	.mxsb-template-account .mxsb-account-sidebar .mxsb-account-cards {
		grid-template-columns: 1fr;
	}

	.mxsb-template-shop ul.products {
		grid-template-columns: 1fr !important;
	}

	.mxsb-checkout-progress span {
		display: grid;
		justify-items: center;
		gap: 5px;
		text-align: center;
		font-size: 10px;
	}

	.mxsb-checkout-progress span:not(:last-child)::after {
		position: absolute;
		top: 15px;
		left: calc(50% + 20px);
		width: calc(100% - 40px);
		margin: 0;
	}

	.mxsb-preview-products,
	.mxsb-preview-posts {
		grid-template-columns: 1fr;
	}

	.mxsb-template-product_template .flex-control-thumbs {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.mxsb-template-product_template :where(
		.woocommerce-tabs,
		.mxsb-product-information,
		.related.products,
		.upsells.products
	),
	.mxsb-template-product_template .product > .woocommerce-Tabs-panel--description {
		width: calc(100% - 24px) !important;
	}

	.mxsb-product-gallery-premium .mxsb-product-top .woocommerce-product-gallery__trigger {
		top: 22px !important;
		right: 22px !important;
	}

	.mxsb-gallery-counter {
		top: 22px;
		left: 22px;
	}

	.mxsb-template-account .mxsb-account-sidebar .mxsb-account-cards {
		grid-template-columns: 1fr;
	}
}

/* =========================================================
   Configurable sections, responsive visibility and presets
   ========================================================= */

.mxsb-configurable-section {
	padding-top: var(--mxsb-section-pad-top) !important;
	padding-bottom: var(--mxsb-section-pad-bottom) !important;
}

.mxsb-configurable-section.mxsb-hero .mxsb-hero__grid {
	padding-block: 0;
}

.mxsb-configurable-section.mxsb-bg--solid,
.mxsb-configurable-section.mxsb-bg--gradient,
.mxsb-configurable-section.mxsb-bg--image {
	background: var(--mxsb-section-background) center / cover no-repeat !important;
}

.mxsb-configurable-section .mxsb-hero__title,
.mxsb-configurable-section .mxsb-section__header h2,
.mxsb-configurable-section.mxsb-b2b h2,
.mxsb-configurable-section.mxsb-seo h2,
.mxsb-configurable-section.mxsb-trust h2 {
	font-size: var(--mxsb-section-heading) !important;
}

.mxsb-configurable-section .mxsb-hero__lead,
.mxsb-configurable-section .mxsb-section__header > p:last-child,
.mxsb-configurable-section .mxsb-b2b__content > div,
.mxsb-configurable-section .mxsb-seo__content,
.mxsb-configurable-section.mxsb-trust p {
	font-size: var(--mxsb-section-text) !important;
}

.mxsb-configurable-section.mxsb-content--light,
.mxsb-configurable-section.mxsb-content--light .mxsb-hero__title,
.mxsb-configurable-section.mxsb-content--light .mxsb-section__header h2,
.mxsb-configurable-section.mxsb-content--light.mxsb-b2b h2,
.mxsb-configurable-section.mxsb-content--light.mxsb-seo h2,
.mxsb-configurable-section.mxsb-content--light h3 {
	color: #fff !important;
}

.mxsb-configurable-section.mxsb-content--light .mxsb-hero__lead,
.mxsb-configurable-section.mxsb-content--light .mxsb-section__header > p:last-child,
.mxsb-configurable-section.mxsb-content--light .mxsb-b2b__content > div,
.mxsb-configurable-section.mxsb-content--light .mxsb-b2b__content li,
.mxsb-configurable-section.mxsb-content--light .mxsb-seo__content {
	color: rgba(255, 255, 255, .86) !important;
}

.mxsb-configurable-section.mxsb-content--dark,
.mxsb-configurable-section.mxsb-content--dark .mxsb-hero__title,
.mxsb-configurable-section.mxsb-content--dark .mxsb-section__header h2,
.mxsb-configurable-section.mxsb-content--dark.mxsb-b2b h2,
.mxsb-configurable-section.mxsb-content--dark.mxsb-seo h2,
.mxsb-configurable-section.mxsb-content--dark h3 {
	color: var(--mxsb-navy) !important;
}

.mxsb-configurable-section.mxsb-content--dark .mxsb-hero__lead,
.mxsb-configurable-section.mxsb-content--dark .mxsb-section__header > p:last-child,
.mxsb-configurable-section.mxsb-content--dark .mxsb-b2b__content > div,
.mxsb-configurable-section.mxsb-content--dark .mxsb-b2b__content li,
.mxsb-configurable-section.mxsb-content--dark .mxsb-seo__content {
	color: var(--mxsb-muted) !important;
}

/* Header presets */

.mxsb-header-variant--minimal {
	box-shadow: none;
}

.mxsb-header-variant--minimal .mxsb-header-main__inner {
	min-height: 70px;
	padding-block: 7px;
}

.mxsb-header-variant--minimal .mxsb-header-nav-row {
	border-top-color: transparent;
}

@media (min-width: 851px) {
	.mxsb-header-variant--centered .mxsb-header-main__inner {
		grid-template-columns: 1fr auto 1fr;
	}

	.mxsb-header-variant--centered .mxsb-header-brand {
		grid-column: 2;
		justify-self: center;
	}

	.mxsb-header-variant--centered .mxsb-header-actions {
		grid-column: 3;
		justify-self: end;
	}

	.mxsb-header-variant--centered .mxsb-header-search--desktop {
		grid-column: 1 / -1;
		grid-row: 2;
		max-width: 760px;
		justify-self: center;
	}

	/* Dark, high-contrast B2B header. */
	.mxsb-header-variant--navy {
		border-bottom: 0;
		background: #0b2048;
		box-shadow: 0 12px 34px rgba(5, 20, 48, .22);
	}

	.mxsb-header-variant--navy .mxsb-header-main,
	.mxsb-header-variant--navy .mxsb-header-nav-row {
		background: #0b2048;
	}

	.mxsb-header-variant--navy .mxsb-header-brand {
		padding: 8px 12px;
		border-radius: 14px;
		background: #fff;
	}

	.mxsb-header-variant--navy .mxsb-header-action,
	.mxsb-header-variant--navy .mxsb-header-action strong,
	.mxsb-header-variant--navy .mxsb-menu > li > a {
		color: #f4f8ff;
	}

	.mxsb-header-variant--navy .mxsb-header-action small {
		color: #9fb5d5;
	}

	.mxsb-header-variant--navy .mxsb-header-action:hover,
	.mxsb-header-variant--navy .mxsb-header-action:hover strong,
	.mxsb-header-variant--navy .mxsb-menu > li > a:hover,
	.mxsb-header-variant--navy .mxsb-menu > li.current-menu-item > a {
		color: #66c5ff;
	}

	.mxsb-header-variant--navy .mxsb-header-nav-row {
		border-top-color: rgba(255, 255, 255, .12);
	}

	.mxsb-header-variant--navy .mxsb-shop-nav > span {
		background: rgba(255,255,255,.12);
		color: #fff;
	}

	.mxsb-header-variant--navy .mxsb-cart-icon em {
		border-color: #0b2048;
	}

	.mxsb-header-variant--navy .mxsb-menu .sub-menu a,
	.mxsb-header-variant--navy .mxsb-shop-nav > .mxsb-menu a {
		color: #344054;
	}

	/* Header displayed as a floating, rounded card. */
	.mxsb-header-variant--floating {
		padding-bottom: 14px;
		border: 0;
		background: #eef5fb;
		box-shadow: none;
	}

	.mxsb-header-variant--floating .mxsb-header-main,
	.mxsb-header-variant--floating .mxsb-header-nav-row {
		background: transparent;
	}

	.mxsb-header-variant--floating .mxsb-header-main__inner {
		margin-top: 14px;
		padding-inline: 22px;
		border: 1px solid #dce7f3;
		border-bottom: 0;
		border-radius: 24px 24px 0 0;
		background: #fff;
	}

	.mxsb-header-variant--floating .mxsb-header-nav-row {
		border: 0;
	}

	.mxsb-header-variant--floating .mxsb-header-nav-row__inner {
		padding-inline: 22px;
		border: 1px solid #dce7f3;
		border-top-color: #edf2f7;
		border-radius: 0 0 24px 24px;
		background: #fff;
		box-shadow: 0 18px 40px rgba(11, 35, 72, .12);
	}

	/* Product-first header with a strongly highlighted category navigation. */
	.mxsb-header-variant--catalog .mxsb-header-main__inner {
		min-height: 78px;
	}

	.mxsb-header-variant--catalog .mxsb-header-nav-row {
		border: 0;
		background: linear-gradient(90deg, #0b2048, #087bea);
	}

	.mxsb-header-variant--catalog .mxsb-menu > li > a {
		color: rgba(255,255,255,.88);
	}

	.mxsb-header-variant--catalog .mxsb-menu > li > a:hover,
	.mxsb-header-variant--catalog .mxsb-menu > li.current-menu-item > a {
		color: #fff;
	}

	.mxsb-header-variant--catalog .mxsb-shop-nav > span {
		background: #fff;
		color: #087bea;
		box-shadow: 0 7px 18px rgba(4, 24, 58, .18);
	}

	.mxsb-header-variant--catalog .mxsb-header-b2b {
		border: 1px solid rgba(255,255,255,.42);
		background: rgba(255,255,255,.12);
		box-shadow: none;
	}

	.mxsb-header-variant--catalog .mxsb-menu .sub-menu a,
	.mxsb-header-variant--catalog .mxsb-shop-nav > .mxsb-menu a {
		color: #344054;
	}
}

/* Hero presets */

.mxsb-hero-variant--centered .mxsb-hero__grid {
	grid-template-columns: 1fr;
	text-align: center;
}

.mxsb-hero-variant--centered .mxsb-hero__content,
.mxsb-hero-variant--centered .mxsb-hero__title,
.mxsb-hero-variant--centered .mxsb-hero__lead {
	margin-inline: auto;
}

.mxsb-hero-variant--centered .mxsb-actions,
.mxsb-hero-variant--centered .mxsb-hero__checks {
	justify-content: center;
}

.mxsb-hero-variant--centered .mxsb-hero__visual {
	width: min(100%, 920px);
	margin-inline: auto;
}

.mxsb-hero-variant--image-led .mxsb-hero__grid {
	grid-template-columns: minmax(300px, .78fr) minmax(460px, 1.22fr);
}

.mxsb-hero-variant--image-led .mxsb-hero__visual img,
.mxsb-hero-variant--image-led .mxsb-hero__visual .mxsb-image-placeholder {
	aspect-ratio: 16 / 10;
}

/* B2B presets */

.mxsb-b2b-variant--centered .mxsb-b2b__grid {
	grid-template-columns: 1fr;
	text-align: center;
}

.mxsb-b2b-variant--centered .mxsb-b2b__content,
.mxsb-b2b-variant--centered .mxsb-b2b__card {
	max-width: 880px;
	margin-inline: auto;
}

.mxsb-b2b-variant--centered .mxsb-b2b__content ul {
	justify-content: center;
}

.mxsb-b2b-variant--light {
	background: linear-gradient(135deg, #eef7ff, #fff);
	color: var(--mxsb-text);
}

.mxsb-b2b-variant--light h2,
.mxsb-b2b-variant--light .mxsb-section__eyebrow {
	color: var(--mxsb-navy);
}

.mxsb-b2b-variant--light .mxsb-b2b__content > div,
.mxsb-b2b-variant--light .mxsb-b2b__content li {
	color: var(--mxsb-muted);
}

/* Footer presets */

.mxsb-footer-variant--compact .mxsb-footer-main {
	padding-block: 42px 34px;
}

.mxsb-footer-variant--compact .mxsb-footer-grid {
	gap: 32px;
}

.mxsb-footer-variant--light {
	border-top: 1px solid var(--mxsb-border);
	background: #fff;
	color: var(--mxsb-text);
}

.mxsb-footer-variant--light .mxsb-footer-logo,
.mxsb-footer-variant--light .mxsb-footer-column h2,
.mxsb-footer-variant--light .mxsb-footer-contact a,
.mxsb-footer-variant--light .mxsb-footer-contact span {
	color: var(--mxsb-navy);
}

.mxsb-footer-variant--light .mxsb-footer-brand > p,
.mxsb-footer-variant--light .mxsb-footer-menu a,
.mxsb-footer-variant--light .mxsb-footer-bottom,
.mxsb-footer-variant--light .mxsb-footer-bottom a {
	color: var(--mxsb-muted);
}

.mxsb-footer-variant--light .mxsb-footer-trust,
.mxsb-footer-variant--light .mxsb-footer-bottom {
	border-color: var(--mxsb-border);
	background: var(--mxsb-soft);
}

@media (min-width: 1101px) {
	.mxsb-hide-desktop {
		display: none !important;
	}
}

@media (min-width: 691px) and (max-width: 1100px) {
	.mxsb-hide-tablet {
		display: none !important;
	}

	.mxsb-configurable-section {
		padding-top: var(--mxsb-section-pad-top-tablet) !important;
		padding-bottom: var(--mxsb-section-pad-bottom-tablet) !important;
	}

	.mxsb-configurable-section .mxsb-hero__title,
	.mxsb-configurable-section .mxsb-section__header h2,
	.mxsb-configurable-section.mxsb-b2b h2,
	.mxsb-configurable-section.mxsb-seo h2,
	.mxsb-configurable-section.mxsb-trust h2 {
		font-size: var(--mxsb-section-heading-tablet) !important;
	}

	.mxsb-configurable-section .mxsb-hero__lead,
	.mxsb-configurable-section .mxsb-section__header > p:last-child,
	.mxsb-configurable-section .mxsb-b2b__content > div,
	.mxsb-configurable-section .mxsb-seo__content,
	.mxsb-configurable-section.mxsb-trust p {
		font-size: var(--mxsb-section-text-tablet) !important;
	}
}

@media (max-width: 690px) {
	.mxsb-hide-mobile {
		display: none !important;
	}

	.mxsb-configurable-section {
		padding-top: var(--mxsb-section-pad-top-mobile) !important;
		padding-bottom: var(--mxsb-section-pad-bottom-mobile) !important;
	}

	.mxsb-configurable-section .mxsb-hero__title,
	.mxsb-configurable-section .mxsb-section__header h2,
	.mxsb-configurable-section.mxsb-b2b h2,
	.mxsb-configurable-section.mxsb-seo h2,
	.mxsb-configurable-section.mxsb-trust h2 {
		font-size: var(--mxsb-section-heading-mobile) !important;
	}

	.mxsb-configurable-section .mxsb-hero__lead,
	.mxsb-configurable-section .mxsb-section__header > p:last-child,
	.mxsb-configurable-section .mxsb-b2b__content > div,
	.mxsb-configurable-section .mxsb-seo__content,
	.mxsb-configurable-section.mxsb-trust p {
		font-size: var(--mxsb-section-text-mobile) !important;
	}
}


/* Typography character per Visual Builder theme. The selected global font
   pairing remains the source; themes only tune weight, spacing and rhythm. */
.mxsb-visual-theme--business { --mxsb-heading-weight: 800; --mxsb-heading-letter-spacing: -.035em; --mxsb-body-line-height: 1.65; }
.mxsb-visual-theme--minimal { --mxsb-heading-weight: 700; --mxsb-heading-letter-spacing: -.02em; --mxsb-body-line-height: 1.75; }
.mxsb-visual-theme--showcase { --mxsb-heading-weight: 800; --mxsb-heading-letter-spacing: -.045em; --mxsb-body-line-height: 1.62; }
.mxsb-visual-theme--dark { --mxsb-heading-weight: 750; --mxsb-heading-letter-spacing: -.025em; --mxsb-body-line-height: 1.68; }
.mxsb-visual-theme--catalog { --mxsb-heading-weight: 700; --mxsb-heading-letter-spacing: -.015em; --mxsb-body-line-height: 1.55; }


/* Site-wide width switch 5.0.2. Theme context classes take priority when the
   companion Maxi Expo Commerce theme is active. */
body.mxsb-layout-site-wide .mxsb-container,
body.mec-layout-wide .mxsb-container {
	width: min(calc(100% - (var(--mxsb-layout-gutter, 32px) * 2)), 1920px) !important;
	max-width: none !important;
}

body.mxsb-layout-site-full .mxsb-container,
body.mec-layout-full .mxsb-container {
	width: 100% !important;
	max-width: none !important;
	padding-inline: var(--mxsb-layout-gutter, 32px) !important;
}

/* Preserve deliberately boxed individual homepage sections. */
body.mxsb-layout-site-full .mxsb-home > section.mxsb-layout--boxed,
body.mec-layout-full .mxsb-home > section.mxsb-layout--boxed {
	width: min(calc(100% - (var(--mxsb-layout-gutter, 32px) * 2)), var(--mxsb-max));
}

@media (max-width: 680px) {
	body.mxsb-layout-site-wide .mxsb-container,
	body.mec-layout-wide .mxsb-container {
		width: min(calc(100% - 28px), 1920px) !important;
	}
	body.mxsb-layout-site-full .mxsb-container,
	body.mec-layout-full .mxsb-container {
		padding-inline: 14px !important;
	}
}

/* Product long-description themes 5.0.5
 * These styles decorate the standard WooCommerce description output without
 * changing product content, stored HTML or editor markup.
 */
.mxsb-template-product_template :where(
	.woocommerce-Tabs-panel--description,
	.woocommerce-tabs .woocommerce-Tabs-panel--description
) {
	--mxsb-description-text: var(--mxsb-text, #333);
	--mxsb-description-muted: var(--mxsb-muted, #64748b);
	--mxsb-description-line: var(--mxsb-border, #d7e3ef);
	--mxsb-description-soft: var(--mxsb-soft, #f5f9ff);
	--mxsb-description-accent: var(--mxsb-primary, #0073e6);
	--mxsb-description-navy: var(--mxsb-navy, #0b1739);
}

.mxsb-template-product_template :where(
	.woocommerce-Tabs-panel--description,
	.woocommerce-tabs .woocommerce-Tabs-panel--description
) :where(p, li, dd) {
	color: var(--mxsb-description-text);
	line-height: 1.72;
}

.mxsb-template-product_template :where(
	.woocommerce-Tabs-panel--description,
	.woocommerce-tabs .woocommerce-Tabs-panel--description
) :where(h2, h3, h4) {
	color: var(--mxsb-description-navy);
	line-height: 1.22;
	text-wrap: balance;
}

.mxsb-template-product_template :where(
	.woocommerce-Tabs-panel--description,
	.woocommerce-tabs .woocommerce-Tabs-panel--description
) :where(a:not(.button)) {
	color: var(--mxsb-description-accent);
	font-weight: 700;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.mxsb-template-product_template :where(
	.woocommerce-Tabs-panel--description,
	.woocommerce-tabs .woocommerce-Tabs-panel--description
) :where(img, video, iframe) {
	max-width: 100%;
	border-radius: min(var(--mxsb-radius, 20px), 18px);
}

.mxsb-template-product_template :where(
	.woocommerce-Tabs-panel--description,
	.woocommerce-tabs .woocommerce-Tabs-panel--description
) :where(table) {
	width: 100%;
	margin: 24px 0;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border: 1px solid var(--mxsb-description-line);
	border-radius: 14px;
	background: #fff;
}

.mxsb-template-product_template :where(
	.woocommerce-Tabs-panel--description,
	.woocommerce-tabs .woocommerce-Tabs-panel--description
) :where(th, td) {
	padding: 13px 16px;
	border-right: 0;
	border-bottom: 1px solid var(--mxsb-description-line);
	text-align: left;
	vertical-align: top;
}

.mxsb-template-product_template :where(
	.woocommerce-Tabs-panel--description,
	.woocommerce-tabs .woocommerce-Tabs-panel--description
) tr:last-child :where(th, td) {
	border-bottom: 0;
}

.mxsb-template-product_template :where(
	.woocommerce-Tabs-panel--description,
	.woocommerce-tabs .woocommerce-Tabs-panel--description
) th {
	background: var(--mxsb-description-soft);
	color: var(--mxsb-description-navy);
	font-weight: 800;
}

.mxsb-template-product_template :where(
	.woocommerce-Tabs-panel--description,
	.woocommerce-tabs .woocommerce-Tabs-panel--description
) blockquote {
	margin: 26px 0;
	padding: 18px 22px;
	border-left: 4px solid var(--mxsb-description-accent);
	border-radius: 0 14px 14px 0;
	background: var(--mxsb-description-soft);
	color: var(--mxsb-description-navy);
}

/* Minimal: light and almost unframed. */
.mxsb-description-theme-minimal.mxsb-template-product_template .woocommerce-tabs {
	padding: clamp(22px, 3vw, 38px) 0 !important;
	border-width: 1px 0 0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
}

.mxsb-description-theme-minimal.mxsb-template-product_template .product > .woocommerce-Tabs-panel--description,
.mxsb-description-theme-minimal.mxsb-template-product_template .woocommerce-tabs .woocommerce-Tabs-panel--description {
	padding: clamp(20px, 3vw, 34px) 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.mxsb-description-theme-minimal.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(h2, h3) {
	padding-bottom: 10px;
	border-bottom: 1px solid var(--mxsb-description-line);
}

.mxsb-description-theme-minimal.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(ul, ol) {
	padding-left: 1.3em;
}

/* Premium: soft gradient and blue highlight. */
.mxsb-description-theme-premium.mxsb-template-product_template .woocommerce-tabs,
.mxsb-description-theme-premium.mxsb-template-product_template .product > .woocommerce-Tabs-panel--description {
	position: relative;
	overflow: hidden;
	border: 1px solid #c9ddf2 !important;
	background: linear-gradient(145deg, #fff 58%, #eef6ff) !important;
	box-shadow: 0 24px 62px rgba(11, 44, 92, .13) !important;
}

.mxsb-description-theme-premium.mxsb-template-product_template .woocommerce-tabs::before,
.mxsb-description-theme-premium.mxsb-template-product_template .product > .woocommerce-Tabs-panel--description::before {
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 5px;
	background: linear-gradient(90deg, var(--mxsb-description-accent), #66c4ff);
}

.mxsb-description-theme-premium.mxsb-template-product_template .woocommerce-tabs .woocommerce-Tabs-panel--description {
	position: relative;
	z-index: 2;
	background: transparent !important;
}

.mxsb-description-theme-premium.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(h2, h3) {
	position: relative;
	padding-left: 17px;
}

.mxsb-description-theme-premium.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(h2, h3)::before {
	content: "";
	position: absolute;
	top: .12em;
	bottom: .12em;
	left: 0;
	width: 5px;
	border-radius: 999px;
	background: var(--mxsb-description-accent);
}

.mxsb-description-theme-premium.mxsb-template-product_template .woocommerce-Tabs-panel--description ul:not([class]) {
	list-style: none;
	padding-left: 0;
}

.mxsb-description-theme-premium.mxsb-template-product_template .woocommerce-Tabs-panel--description ul:not([class]) > li {
	position: relative;
	padding-left: 29px;
}

.mxsb-description-theme-premium.mxsb-template-product_template .woocommerce-Tabs-panel--description ul:not([class]) > li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: .06em;
	display: grid;
	width: 20px;
	height: 20px;
	place-items: center;
	border-radius: 50%;
	background: #e4f2ff;
	color: var(--mxsb-description-accent);
	font-size: 12px;
	font-weight: 900;
}

/* Technical: restrained geometry and data-first tables. */
.mxsb-description-theme-technical.mxsb-template-product_template .woocommerce-tabs,
.mxsb-description-theme-technical.mxsb-template-product_template .product > .woocommerce-Tabs-panel--description {
	border: 1px solid #cbd7e4 !important;
	border-top: 6px solid var(--mxsb-description-navy) !important;
	border-radius: 6px !important;
	background: #fff !important;
	box-shadow: 0 12px 32px rgba(11, 23, 57, .08) !important;
}

.mxsb-description-theme-technical.mxsb-template-product_template .woocommerce-tabs .woocommerce-Tabs-panel--description {
	background: transparent !important;
}

.mxsb-description-theme-technical.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(h2, h3) {
	margin-top: 30px;
	padding: 10px 14px;
	border-left: 5px solid var(--mxsb-description-accent);
	background: #f3f6f9;
	font-size: clamp(20px, 2.4vw, 30px);
	letter-spacing: -.02em;
}

.mxsb-description-theme-technical.mxsb-template-product_template .woocommerce-Tabs-panel--description table {
	border-radius: 4px;
	font-size: 14px;
}

.mxsb-description-theme-technical.mxsb-template-product_template .woocommerce-Tabs-panel--description tbody tr:nth-child(even) {
	background: #f7f9fb;
}

.mxsb-description-theme-technical.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(ul, ol) {
	padding-left: 22px;
}

/* Catalogue: compact, scan-friendly product information. */
.mxsb-description-theme-catalog.mxsb-template-product_template .woocommerce-tabs,
.mxsb-description-theme-catalog.mxsb-template-product_template .product > .woocommerce-Tabs-panel--description {
	padding: clamp(22px, 3vw, 36px) !important;
	border: 1px solid #d4dee9 !important;
	border-radius: 12px !important;
	background: #f8fafc !important;
	box-shadow: none !important;
}

.mxsb-description-theme-catalog.mxsb-template-product_template .woocommerce-tabs .woocommerce-Tabs-panel--description {
	padding-top: 20px !important;
	background: transparent !important;
}

.mxsb-description-theme-catalog.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(p, li, dd) {
	font-size: 15px;
	line-height: 1.58;
}

.mxsb-description-theme-catalog.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(h2, h3) {
	margin-top: 24px;
	margin-bottom: 12px;
	font-size: clamp(20px, 2.3vw, 28px);
	text-transform: none;
}

.mxsb-description-theme-catalog.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(ul, ol) {
	display: grid;
	gap: 7px 26px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	padding: 18px 22px 18px 38px;
	border: 1px solid var(--mxsb-description-line);
	border-radius: 10px;
	background: #fff;
}

/* Editorial: narrower reading measure for long, prose-heavy descriptions. */
.mxsb-description-theme-editorial.mxsb-template-product_template .woocommerce-tabs,
.mxsb-description-theme-editorial.mxsb-template-product_template .product > .woocommerce-Tabs-panel--description {
	border-color: #e1e6ec !important;
	background: #fff !important;
	box-shadow: 0 16px 42px rgba(21, 35, 54, .07) !important;
}

.mxsb-description-theme-editorial.mxsb-template-product_template .woocommerce-tabs .woocommerce-Tabs-panel--description {
	background: transparent !important;
}

.mxsb-description-theme-editorial.mxsb-template-product_template .woocommerce-Tabs-panel--description > :where(h2, h3, h4, p, ul, ol, blockquote, dl) {
	width: min(100%, 880px);
	margin-right: auto;
	margin-left: auto;
}

.mxsb-description-theme-editorial.mxsb-template-product_template .woocommerce-Tabs-panel--description > :where(table, figure, img, video, iframe) {
	width: min(100%, 1080px);
	margin-right: auto;
	margin-left: auto;
}

.mxsb-description-theme-editorial.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(p, li) {
	font-size: clamp(16px, 1.25vw, 18px);
	line-height: 1.85;
}

.mxsb-description-theme-editorial.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(h2, h3) {
	margin-top: 1.55em;
	letter-spacing: -.035em;
}

/* Section cards: separates key content blocks without requiring custom classes. */
.mxsb-description-theme-sections.mxsb-template-product_template .woocommerce-tabs,
.mxsb-description-theme-sections.mxsb-template-product_template .product > .woocommerce-Tabs-panel--description {
	border: 1px solid #d8e4f0 !important;
	background: linear-gradient(180deg, #f8fbff, #fff) !important;
	box-shadow: 0 18px 48px rgba(11, 45, 87, .09) !important;
}

.mxsb-description-theme-sections.mxsb-template-product_template .woocommerce-tabs .woocommerce-Tabs-panel--description {
	background: transparent !important;
}

.mxsb-description-theme-sections.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(h2, h3) {
	margin-top: 30px;
	padding: 16px 20px;
	border: 1px solid #cfe1f3;
	border-radius: 14px;
	background: linear-gradient(135deg, #eef6ff, #fff);
	box-shadow: 0 8px 22px rgba(11, 69, 125, .06);
}

.mxsb-description-theme-sections.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(ul, ol, blockquote, table) {
	padding: 20px 24px;
	border: 1px solid var(--mxsb-description-line);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 22px rgba(11, 42, 81, .05);
}

.mxsb-description-theme-sections.mxsb-template-product_template .woocommerce-Tabs-panel--description table {
	padding: 0;
}

@media (max-width: 782px) {
	.mxsb-description-theme-catalog.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(ul, ol) {
		grid-template-columns: 1fr;
	}

	.mxsb-template-product_template :where(
		.woocommerce-Tabs-panel--description,
		.woocommerce-tabs .woocommerce-Tabs-panel--description
	) :where(th, td) {
		padding: 10px 12px;
		font-size: 13px;
	}

	.mxsb-description-theme-sections.mxsb-template-product_template .woocommerce-Tabs-panel--description :where(h2, h3, ul, ol, blockquote) {
		padding: 14px 16px;
	}
}

/* Product short-description themes 5.0.6
   These rules style the existing WooCommerce excerpt without changing its HTML. */
.mxsb-template-product_template:not(.mxsb-short-description-theme-classic) .mxsb-product-top .woocommerce-product-details__short-description {
	position: relative;
	color: var(--mxsb-text, #334155);
	transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.mxsb-template-product_template:not(.mxsb-short-description-theme-classic) .mxsb-product-top .woocommerce-product-details__short-description :where(h2, h3, h4) {
	margin: 0 0 10px;
	color: var(--mxsb-navy, #0b1739);
	font-size: clamp(16px, 1.4vw, 20px);
	line-height: 1.25;
}

.mxsb-template-product_template:not(.mxsb-short-description-theme-classic) .mxsb-product-top .woocommerce-product-details__short-description :where(p, ul, ol) {
	margin-block: 0 12px;
}

.mxsb-short-description-theme-minimal.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description {
	padding: 15px 0;
	border-top: 1px solid var(--mxsb-border, #cfdeee);
	border-bottom: 1px solid var(--mxsb-border, #cfdeee) !important;
	background: transparent;
	box-shadow: none;
}

.mxsb-short-description-theme-soft.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description {
	padding: 18px 20px;
	border: 1px solid #cfe1f3 !important;
	border-radius: max(10px, var(--mxsb-radius, 14px));
	background: linear-gradient(145deg, #f8fbff, #eef6ff);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.mxsb-short-description-theme-premium.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description {
	padding: 20px 22px 20px 24px;
	border: 1px solid rgba(0,115,230,.24) !important;
	border-left: 5px solid var(--mxsb-primary, #0073e6) !important;
	border-radius: max(12px, var(--mxsb-radius, 14px));
	background: linear-gradient(135deg, #fff 45%, #edf6ff);
	box-shadow: 0 12px 28px rgba(11,44,92,.10);
}

.mxsb-short-description-theme-premium.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description::after {
	content: "";
	position: absolute;
	top: 13px;
	right: 14px;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(0,115,230,.16), rgba(0,115,230,0) 68%);
	pointer-events: none;
}

.mxsb-short-description-theme-technical.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description {
	padding: 17px 19px;
	border: 1px solid #d8e0e9 !important;
	border-left: 4px solid var(--mxsb-navy, #0b1739) !important;
	border-radius: 7px;
	background: #f6f8fa;
	font-size: 14px;
	line-height: 1.55;
	box-shadow: none;
}

.mxsb-short-description-theme-technical.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description :where(h2, h3, h4) {
	font-size: 15px;
	letter-spacing: .025em;
	text-transform: uppercase;
}

.mxsb-short-description-theme-technical.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description :where(ul, ol) {
	padding-left: 20px;
}

.mxsb-short-description-theme-benefits.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description {
	padding: 18px 20px;
	border: 1px solid #d7e5f3 !important;
	border-radius: max(10px, var(--mxsb-radius, 14px));
	background: #fff;
	box-shadow: 0 9px 22px rgba(11,23,57,.07);
}

.mxsb-short-description-theme-benefits.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description :where(ul, ol) {
	display: grid;
	gap: 8px;
	padding: 0;
	list-style: none;
}

.mxsb-short-description-theme-benefits.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description li {
	position: relative;
	padding: 9px 11px 9px 38px;
	border-radius: 9px;
	background: #f5f9ff;
}

.mxsb-short-description-theme-benefits.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description li::before {
	content: "✓";
	position: absolute;
	left: 12px;
	top: 8px;
	display: grid;
	width: 19px;
	height: 19px;
	place-items: center;
	border-radius: 50%;
	background: var(--mxsb-primary, #0073e6);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
}

.mxsb-short-description-theme-b2b.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description {
	padding: 20px 22px;
	border: 1px solid rgba(255,255,255,.10) !important;
	border-radius: max(12px, var(--mxsb-radius, 14px));
	background: linear-gradient(135deg, #0b1739, #132a55 65%, #0b4b86);
	color: #eef6ff;
	box-shadow: 0 14px 32px rgba(11,23,57,.18);
}

.mxsb-short-description-theme-b2b.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description :where(h2, h3, h4, strong, b) {
	color: #fff;
}

.mxsb-short-description-theme-b2b.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description a {
	color: #8fd0ff;
	text-decoration-color: rgba(143,208,255,.55);
}

.mxsb-short-description-theme-b2b.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description :where(ul, ol) {
	padding-left: 20px;
}

.mxsb-short-description-theme-b2b.mxsb-template-product_template .mxsb-product-top .woocommerce-product-details__short-description li::marker {
	color: #58b7ff;
}

@media (max-width: 782px) {
	.mxsb-template-product_template.mxsb-short-description-theme-soft .mxsb-product-top .woocommerce-product-details__short-description,
	.mxsb-template-product_template.mxsb-short-description-theme-premium .mxsb-product-top .woocommerce-product-details__short-description,
	.mxsb-template-product_template.mxsb-short-description-theme-technical .mxsb-product-top .woocommerce-product-details__short-description,
	.mxsb-template-product_template.mxsb-short-description-theme-benefits .mxsb-product-top .woocommerce-product-details__short-description,
	.mxsb-template-product_template.mxsb-short-description-theme-b2b .mxsb-product-top .woocommerce-product-details__short-description {
		padding: 16px;
	}
}


/* 5.2.6: archive components must never affect a single-product layout.
   This also protects a temporarily cached page generated by an older release. */
body.single-product :where(
	.mxsb-shop-hero,
	.mxsb-shop-categories,
	.mxsb-shop-products,
	.mxsb-archive-b2b,
	.mxsb-archive-seo,
	.mxsb-shop-filter-drawer,
	.mxsb-shop-filter-overlay
) {
	display: none !important;
}


/* 5.3.6 — configurable typography for the theme-owned product hero. */
body.single-product .mec-product-page-hero .mec-product-page-hero__title {
	font-size: var(--mxsb-product-hero-title-desktop, 32px) !important;
	line-height: var(--mxsb-product-hero-title-line-height, 1.12) !important;
	overflow-wrap: anywhere;
	text-wrap: balance;
}
body.single-product .mec-product-page-hero .mec-product-page-hero__lead {
	font-size: var(--mxsb-product-hero-text-desktop, 16px) !important;
}
@media (max-width: 1024px) {
	body.single-product .mec-product-page-hero .mec-product-page-hero__title {
		font-size: var(--mxsb-product-hero-title-tablet, 30px) !important;
	}
	body.single-product .mec-product-page-hero .mec-product-page-hero__lead {
		font-size: var(--mxsb-product-hero-text-tablet, 16px) !important;
	}
}
@media (max-width: 782px) {
	body.single-product .mec-product-page-hero .mec-product-page-hero__title {
		font-size: var(--mxsb-product-hero-title-mobile, 26px) !important;
	}
	body.single-product .mec-product-page-hero .mec-product-page-hero__lead {
		font-size: var(--mxsb-product-hero-text-mobile, 15px) !important;
	}
}


/* 5.3.17: configurable typography for the title and gross/net price rows
   in the single-product buying panel. Scoped selectors and !important keep
   the controls effective with Blocksy and common price-display extensions. */
body.single-product.mxsb-template-product_template :where(
	.mxsb-product-top,
	.product-entry-wrapper
) .summary .product_title {
	font-size: var(--mxsb-product-summary-title-desktop, 32px) !important;
	line-height: var(--mxsb-product-summary-title-line-height, 1.08) !important;
}

body.single-product.mxsb-template-product_template :where(
	.mxsb-product-top,
	.product-entry-wrapper
) .summary :where(
	.price,
	.woocommerce-variation-price .price,
	.single_variation .price,
	.mxsb-price-line--gross,
	.mxsb-price-gross,
	[class*="gross-price"],
	[class*="price-gross"],
	[class*="brutto"]
) {
	color: var(--mxsb-product-gross-price-color, #0073e6) !important;
	font-size: var(--mxsb-product-gross-price-desktop, 30px) !important;
	line-height: 1.2 !important;
}

body.single-product.mxsb-template-product_template :where(
	.mxsb-product-top,
	.product-entry-wrapper
) .summary :where(
	.mxsb-price-line--gross,
	.mxsb-price-gross,
	[class*="gross-price"],
	[class*="price-gross"],
	[class*="brutto"]
) :where(span, small, strong, b, em, del, ins, .amount, .woocommerce-Price-amount, .woocommerce-Price-currencySymbol) {
	color: inherit !important;
	font-size: inherit !important;
	line-height: inherit !important;
}

body.single-product.mxsb-template-product_template :where(
	.mxsb-product-top,
	.product-entry-wrapper
) .summary :where(
	.mxsb-price-line--net,
	.mxsb-price-net,
	.mxsb-net-label,
	[class*="net-price"],
	[class*="price-net"],
	[class*="netto"]
) {
	color: var(--mxsb-product-net-price-color, #0b66c3) !important;
	font-size: var(--mxsb-product-net-price-desktop, 22px) !important;
	line-height: 1.25 !important;
}

body.single-product.mxsb-template-product_template :where(
	.mxsb-product-top,
	.product-entry-wrapper
) .summary :where(
	.mxsb-price-line--net,
	.mxsb-price-net,
	.mxsb-net-label,
	[class*="net-price"],
	[class*="price-net"],
	[class*="netto"]
) :where(span, small, strong, b, em, del, ins, .amount, .woocommerce-Price-amount, .woocommerce-Price-currencySymbol) {
	color: inherit !important;
	font-size: inherit !important;
	line-height: inherit !important;
}

body.single-product.mxsb-template-product_template .summary .mxsb-price-line {
	display: block;
	width: 100%;
}

@media (max-width: 1024px) {
	body.single-product.mxsb-template-product_template :where(
		.mxsb-product-top,
		.product-entry-wrapper
	) .summary .product_title {
		font-size: var(--mxsb-product-summary-title-tablet, 30px) !important;
	}
	body.single-product.mxsb-template-product_template :where(
		.mxsb-product-top,
		.product-entry-wrapper
	) .summary :where(
		.price,
		.woocommerce-variation-price .price,
		.single_variation .price,
		.mxsb-price-line--gross,
		.mxsb-price-gross,
		[class*="gross-price"],
		[class*="price-gross"],
		[class*="brutto"]
	) {
		font-size: var(--mxsb-product-gross-price-tablet, 28px) !important;
	}
	body.single-product.mxsb-template-product_template :where(
		.mxsb-product-top,
		.product-entry-wrapper
	) .summary :where(
		.mxsb-price-line--net,
		.mxsb-price-net,
		.mxsb-net-label,
		[class*="net-price"],
		[class*="price-net"],
		[class*="netto"]
	) {
		font-size: var(--mxsb-product-net-price-tablet, 21px) !important;
	}
}

@media (max-width: 767px) {
	body.single-product.mxsb-template-product_template :where(
		.mxsb-product-top,
		.product-entry-wrapper
	) .summary .product_title {
		font-size: var(--mxsb-product-summary-title-mobile, 27px) !important;
	}
	body.single-product.mxsb-template-product_template :where(
		.mxsb-product-top,
		.product-entry-wrapper
	) .summary :where(
		.price,
		.woocommerce-variation-price .price,
		.single_variation .price,
		.mxsb-price-line--gross,
		.mxsb-price-gross,
		[class*="gross-price"],
		[class*="price-gross"],
		[class*="brutto"]
	) {
		font-size: var(--mxsb-product-gross-price-mobile, 25px) !important;
	}
	body.single-product.mxsb-template-product_template :where(
		.mxsb-product-top,
		.product-entry-wrapper
	) .summary :where(
		.mxsb-price-line--net,
		.mxsb-price-net,
		.mxsb-net-label,
		[class*="net-price"],
		[class*="price-net"],
		[class*="netto"]
	) {
		font-size: var(--mxsb-product-net-price-mobile, 19px) !important;
	}
}

/* 5.3.18: configurable typography for the WooCommerce long description.
   Strongly scoped selectors keep the selected sizes and colors consistent
   across all built-in description themes and the classic tabs markup. */
body.single-product.mxsb-template-product_template :where(
    .product > .woocommerce-Tabs-panel--description,
    .woocommerce-tabs .woocommerce-Tabs-panel--description,
    #tab-description
) {
    color: var(--mxsb-product-description-body-color, #333333) !important;
    font-size: var(--mxsb-product-description-body-desktop, 16px) !important;
    line-height: var(--mxsb-product-description-body-line-height, 1.65) !important;
}

body.single-product.mxsb-template-product_template :where(
    .product > .woocommerce-Tabs-panel--description,
    .woocommerce-tabs .woocommerce-Tabs-panel--description,
    #tab-description
) :where(p, li, dd, dt, blockquote, figcaption, td, th) {
    color: var(--mxsb-product-description-body-color, #333333) !important;
    font-size: var(--mxsb-product-description-body-desktop, 16px) !important;
    line-height: var(--mxsb-product-description-body-line-height, 1.65) !important;
}

body.single-product.mxsb-template-product_template :where(
    .product > .woocommerce-Tabs-panel--description,
    .woocommerce-tabs .woocommerce-Tabs-panel--description,
    #tab-description
) :where(h2) {
    color: var(--mxsb-product-description-h2-color, #0b1739) !important;
    font-size: var(--mxsb-product-description-h2-desktop, 36px) !important;
    line-height: var(--mxsb-product-description-h2-line-height, 1.15) !important;
}

body.single-product.mxsb-template-product_template :where(
    .product > .woocommerce-Tabs-panel--description,
    .woocommerce-tabs .woocommerce-Tabs-panel--description,
    #tab-description
) :where(h3, h4) {
    color: var(--mxsb-product-description-h3-color, #0b1739) !important;
    font-size: var(--mxsb-product-description-h3-desktop, 28px) !important;
    line-height: var(--mxsb-product-description-h3-line-height, 1.20) !important;
}

body.single-product.mxsb-template-product_template :where(
    .product > .woocommerce-Tabs-panel--description,
    .woocommerce-tabs .woocommerce-Tabs-panel--description,
    #tab-description
) :where(p, li, dd, dt, blockquote, figcaption, td, th, h2, h3, h4) :where(strong, b, em, span) {
    color: inherit;
    font-size: inherit;
    line-height: inherit;
}

@media (max-width: 1024px) {
    body.single-product.mxsb-template-product_template :where(
        .product > .woocommerce-Tabs-panel--description,
        .woocommerce-tabs .woocommerce-Tabs-panel--description,
        #tab-description
    ),
    body.single-product.mxsb-template-product_template :where(
        .product > .woocommerce-Tabs-panel--description,
        .woocommerce-tabs .woocommerce-Tabs-panel--description,
        #tab-description
    ) :where(p, li, dd, dt, blockquote, figcaption, td, th) {
        font-size: var(--mxsb-product-description-body-tablet, 16px) !important;
    }
    body.single-product.mxsb-template-product_template :where(
        .product > .woocommerce-Tabs-panel--description,
        .woocommerce-tabs .woocommerce-Tabs-panel--description,
        #tab-description
    ) :where(h2) {
        font-size: var(--mxsb-product-description-h2-tablet, 32px) !important;
    }
    body.single-product.mxsb-template-product_template :where(
        .product > .woocommerce-Tabs-panel--description,
        .woocommerce-tabs .woocommerce-Tabs-panel--description,
        #tab-description
    ) :where(h3, h4) {
        font-size: var(--mxsb-product-description-h3-tablet, 26px) !important;
    }
}

@media (max-width: 767px) {
    body.single-product.mxsb-template-product_template :where(
        .product > .woocommerce-Tabs-panel--description,
        .woocommerce-tabs .woocommerce-Tabs-panel--description,
        #tab-description
    ),
    body.single-product.mxsb-template-product_template :where(
        .product > .woocommerce-Tabs-panel--description,
        .woocommerce-tabs .woocommerce-Tabs-panel--description,
        #tab-description
    ) :where(p, li, dd, dt, blockquote, figcaption, td, th) {
        font-size: var(--mxsb-product-description-body-mobile, 15px) !important;
    }
    body.single-product.mxsb-template-product_template :where(
        .product > .woocommerce-Tabs-panel--description,
        .woocommerce-tabs .woocommerce-Tabs-panel--description,
        #tab-description
    ) :where(h2) {
        font-size: var(--mxsb-product-description-h2-mobile, 28px) !important;
    }
    body.single-product.mxsb-template-product_template :where(
        .product > .woocommerce-Tabs-panel--description,
        .woocommerce-tabs .woocommerce-Tabs-panel--description,
        #tab-description
    ) :where(h3, h4) {
        font-size: var(--mxsb-product-description-h3-mobile, 23px) !important;
    }
}

