/*
Theme Name: AO Supply Commerce
Theme URI: https://aocomfort.com/
Author: AO Supply
Description: An approved-account WooCommerce catalog and order-request storefront for AO Supply.
Version: 0.9.52
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 8.1
Text Domain: weshipac-commerce
*/

:root {
	/* Color references: --aos-color-{family}-{step}. */
	--aos-color-pine-950: #0f1b29;
	--aos-color-pine-900: #1a365d;
	--aos-color-sage-700: #005f8f;
	--aos-color-sage-600: #007bb5;
	--aos-color-sage-500: #00c8ff;
	--aos-color-mint-100: #e0f7fa;
	--aos-color-mint-50: #f0fbfc;
	--aos-color-amber-600: #007bb5;
	--aos-color-amber-700: #005f8f;
	--aos-color-amber-500: #00c8ff;
	--aos-color-amber-100: #e6f9ff;
	--aos-color-sand-50: #f7f5ef;
	--aos-color-neutral-0: #fff;
	--aos-color-ink-900: #16202c;
	--aos-color-slate-700: #46566a;
	--aos-color-slate-600: #627286;
	--aos-color-slate-400: #91a1b4;
	--aos-color-line-200: #d8e3ec;
	--aos-color-red-600: #b83a3a;
	--aos-color-success-600: #218c5b;
	--aos-color-payment-klarna: #ffb3c7;
	--aos-color-payment-klarna-ink: #17120f;
	--aos-color-green-200: #bdeef8;
	--aos-color-green-300: #79d9ef;
	--aos-color-green-150: #b8dbe8;

	/* Semantic colors: components must consume these roles. */
	--aos-color-brand-strong: var(--aos-color-pine-950);
	--aos-color-brand-primary: var(--aos-color-pine-900);
	--aos-color-action-primary: var(--aos-color-sage-600);
	--aos-color-action-hover: var(--aos-color-sage-700);
	--aos-color-action-selected: var(--aos-color-sage-500);
	--aos-color-commerce-primary: var(--aos-color-amber-500);
	--aos-color-commerce-hover: var(--aos-color-amber-600);
	--aos-color-surface-page: var(--aos-color-sand-50);
	--aos-color-surface-card: var(--aos-color-neutral-0);
	--aos-color-surface-brand-soft: var(--aos-color-mint-100);
	--aos-color-surface-brand-subtle: var(--aos-color-mint-50);
	--aos-color-surface-soft: var(--aos-color-mint-50);
	--aos-color-surface-elevated: var(--aos-color-neutral-0);
	--aos-color-surface-commerce-soft: var(--aos-color-amber-100);
	--aos-color-surface-control-secondary: #e7ebef;
	--aos-color-surface-control-secondary-hover: #dce2e7;
	--aos-color-border-control-secondary: #c3ccd5;
	--aos-color-text-primary: var(--aos-color-ink-900);
	--aos-color-text-secondary: var(--aos-color-slate-600);
	--aos-color-text-muted: var(--aos-color-slate-600);
	--aos-color-text-tertiary: var(--aos-color-slate-400);
	--aos-color-text-on-dark: var(--aos-color-neutral-0);
	--aos-color-border-default: var(--aos-color-line-200);
	--aos-color-border-strong: var(--aos-color-green-150);
	--aos-color-state-danger: var(--aos-color-red-600);
	--aos-color-state-success: var(--aos-color-success-600);
	--aos-color-on-dark-high: rgba(255, 255, 255, 0.84);
	--aos-color-on-dark-medium: rgba(255, 255, 255, 0.74);
	--aos-color-on-dark-low: rgba(255, 255, 255, 0.55);
	--aos-color-on-dark-subtle: rgba(255, 255, 255, 0.18);
	--aos-color-on-dark-soft: rgba(255, 255, 255, 0.08);
	--aos-color-on-dark-soft-hover: rgba(255, 255, 255, 0.16);
	--aos-color-overlay-scrim: rgba(15, 27, 41, 0.54);
	--aos-gradient-image-scrim: linear-gradient(0deg, rgba(15, 27, 41, 0.96) 0%, rgba(15, 27, 41, 0.15) 70%);
	--aos-gradient-shop-overlay: linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.94) 38%, rgba(255, 255, 255, 0.42) 62%, rgba(255, 255, 255, 0) 80%);
	--aos-gradient-proof-scrim: linear-gradient(90deg, rgba(15, 27, 41, 0.97) 0%, rgba(15, 27, 41, 0.89) 38%, rgba(15, 27, 41, 0.38) 67%, rgba(15, 27, 41, 0.08) 100%);

	/* Typography: --aos-font-{property}-{step-or-role}. */
	--aos-font-family-display: "Arial Narrow", "Roboto Condensed", "Segoe UI", "Microsoft YaHei", sans-serif;
	--aos-font-family-sans: "Segoe UI", "Microsoft YaHei", ui-sans-serif, system-ui, sans-serif;
	--aos-font-family-mono: "Cascadia Mono", "SFMono-Regular", Consolas, monospace;
	--aos-font-weight-regular: 400;
	--aos-font-weight-medium: 500;
	--aos-font-weight-semibold: 600;
	--aos-font-weight-bold: 700;
	--aos-font-size-050: 0.6875rem;
	--aos-font-size-100: 0.75rem;
	--aos-font-size-200: 0.8125rem;
	--aos-font-size-300: 0.875rem;
	--aos-font-size-400: 1rem;
	--aos-font-size-500: 1.125rem;
	--aos-font-size-600: 1.25rem;
	--aos-font-size-700: 1.5rem;
	--aos-font-size-800: 1.75rem;
	--aos-font-size-title: clamp(2rem, 4vw, 3.4rem);
	--aos-font-size-section: clamp(2rem, 3vw, 3.25rem);
	--aos-font-size-display: clamp(2.65rem, 5vw, 5.15rem);
	--aos-font-size-lead: clamp(1rem, 1.6vw, 1.2rem);
	--aos-font-size-relative-sm: 0.8em;
	--aos-line-height-solid: 1;
	--aos-line-height-tight: 1.15;
	--aos-line-height-control: 1.2;
	--aos-line-height-heading: 1.3;
	--aos-line-height-copy: 1.5;
	--aos-line-height-body: 1.6;
	--aos-line-height-prose: 1.7;

	/* Spacing: 4 px base scale. */
	--aos-space-0: 0;
	--aos-space-1: 4px;
	--aos-space-2: 8px;
	--aos-space-3: 12px;
	--aos-space-4: 16px;
	--aos-space-5: 20px;
	--aos-space-6: 24px;
	--aos-space-7: 28px;
	--aos-space-8: 32px;
	--aos-space-10: 40px;
	--aos-space-12: 48px;
	--aos-space-14: 56px;
	--aos-space-16: 64px;
	--aos-space-18: 72px;
	--aos-space-22: 88px;
	--aos-space-page-gutter: clamp(16px, 3vw, 32px);
	--aos-space-section-y: clamp(56px, 7vw, 88px);
	--aos-space-hero-y: clamp(32px, 5vw, 72px);
	--aos-space-feature-y: clamp(32px, 5vw, 64px);

	/* Shape, depth, physical layout, and motion (PREMIUM OVERRIDES). */
	--aos-radius-xs: 2px;
	--aos-radius-sm: 4px;
	--aos-radius-md: 6px;
	--aos-radius-lg: 8px;
	--aos-radius-xl: 12px;
	--aos-radius-full: 999px;
	--aos-shadow-border: 0 1px 0 var(--aos-color-border-default);
	--aos-shadow-focus: 0 0 0 3px rgba(0, 123, 181, 0.12);
	--aos-focus-ring: var(--aos-shadow-focus);
	--aos-shadow-sm: 0 2px 8px rgba(15, 27, 41, 0.04), 0 1px 2px rgba(15, 27, 41, 0.04);
	--aos-shadow-md: 0 8px 24px rgba(15, 27, 41, 0.06), 0 2px 6px rgba(15, 27, 41, 0.04);
	--aos-shadow-lg: 0 16px 40px rgba(15, 27, 41, 0.08), 0 4px 12px rgba(15, 27, 41, 0.05);
	--aos-shadow-console: 0 22px 54px rgba(15, 27, 41, 0.11);
	--aos-size-content-max: 1280px;
	--aos-size-wide-max: 1760px;
	--aos-size-reading-max: 860px;
	--aos-size-control-md: 46px;
	--aos-size-icon-md: 20px;
	--aos-size-header-utility: 48px;
	--aos-proof-stage-min-height: clamp(520px, 46vw, 650px);
	--aos-layout-cart-ledger: minmax(340px, 0.72fr);
	--aos-size-cart-media: 88px;
	--aos-size-cart-remove: 44px;
	--aos-size-related-card-min: 260px;
	--aos-size-related-card-max: 360px;
	--aos-color-cart-danger-soft: color-mix(in srgb, var(--aos-color-state-danger) 8%, var(--aos-color-neutral-0));
	--aos-shadow-cart-manifest: var(--aos-shadow-sm);
	--aos-shadow-cart-ledger: var(--aos-shadow-console);
	--aos-duration-fast: 160ms;
	--aos-duration-base: 240ms;
	--aos-motion-base: var(--aos-duration-base);
	--aos-duration-slow: 380ms;
	--aos-duration-chapter: 560ms;
	--aos-duration-carousel: 880ms;
	--aos-duration-product-media: 320ms;
	--aos-product-media-scale: 1.025;
	--aos-ease-standard: cubic-bezier(0.22, 1, 0.36, 1);
	--aos-ease-enter: var(--aos-ease-standard);
	--aos-ease-move: cubic-bezier(0.25, 1, 0.5, 1);
	--aos-z-header: 50;
	--aos-z-overlay: 80;
	--aos-z-skip-link: 10000;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: var(--aos-space-0);
	overflow-x: clip;
	color: var(--aos-color-text-primary);
	background: var(--aos-color-surface-card);
	font-family: var(--aos-font-family-sans);
	font-size: var(--aos-font-size-400);
	line-height: var(--aos-line-height-body);
	text-rendering: optimizeLegibility;
}

.aos-page-loader {
	position: fixed;
	inset: 0;
	z-index: calc(var(--aos-z-overlay) + 20);
	display: none;
	place-items: center;
	overflow: hidden;
	padding: clamp(1.5rem, 5vw, 4rem);
	background:
		linear-gradient(rgba(15, 27, 41, 0.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(15, 27, 41, 0.045) 1px, transparent 1px),
		var(--aos-color-surface-page);
	background-size: 72px 72px, 72px 72px, auto;
	opacity: 0;
	pointer-events: none;
	transition: opacity 220ms var(--aos-ease-standard);
}

.aos-page-loader::before,
.aos-page-loader::after {
	position: absolute;
	inset: -15%;
	content: "";
	pointer-events: none;
}

.aos-page-loader::before {
	background:
		radial-gradient(circle at 28% 35%, rgba(0, 200, 255, 0.18), transparent 34%),
		radial-gradient(circle at 72% 62%, rgba(26, 54, 93, 0.1), transparent 30%);
	filter: blur(48px);
}

.aos-page-loader::after {
	background-image: radial-gradient(rgba(15, 27, 41, 0.14) 0.55px, transparent 0.55px);
	background-size: 5px 5px;
	opacity: 0.12;
}

html.aos-loader-active .aos-page-loader {
	display: grid;
	opacity: 1;
	pointer-events: auto;
}

html.aos-loader-active.aos-loader-exit .aos-page-loader {
	opacity: 0;
	pointer-events: none;
}

.aos-page-loader-stage {
	position: relative;
	z-index: 1;
	display: grid;
	justify-items: center;
	gap: var(--aos-space-6);
	width: min(100%, 34rem);
}

.aos-page-loader-stage img {
	display: block;
	width: min(clamp(15rem, 36vw, 30rem), calc(100vw - 3rem));
	height: auto;
}

.aos-page-loader-datum {
	display: block;
	width: min(18rem, 56vw);
	height: 3px;
	background: var(--aos-color-commerce-primary);
	box-shadow: 0 0 0 1px rgba(15, 27, 41, 0.04);
}

body.aos-panel-open {
	overflow: hidden;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

svg {
	display: block;
}

a {
	color: var(--aos-color-action-hover);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

a:hover {
	color: var(--aos-color-brand-primary);
}

button,
input,
select,
textarea {
	font: inherit;
}

button,
[type="submit"],
[type="button"] {
	cursor: pointer;
}

:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--aos-color-commerce-primary) 70%, var(--aos-color-neutral-0));
	outline-offset: 3px;
}

h1,
h2,
h3,
h4 {
	margin: 0 0 var(--aos-space-3);
	color: var(--aos-color-brand-strong);
	font-weight: var(--aos-font-weight-bold);
	line-height: var(--aos-line-height-tight);
	letter-spacing: -0.025em;
	font-family: var(--aos-font-family-display);
}

h1 {
	font-size: var(--aos-font-size-display);
}

h2 {
	font-size: var(--aos-font-size-section);
}

h3 {
	font-size: var(--aos-font-size-500);
}

p {
	margin: 0 0 var(--aos-space-4);
}

.aos-container {
	width: min(calc(100% - (var(--aos-space-page-gutter) * 2)), var(--aos-size-content-max));
	margin-inline: auto;
}

.aos-container-wide {
	width: min(calc(100% - (var(--aos-space-page-gutter) * 2)), var(--aos-size-wide-max));
	margin-inline: auto;
}

.aos-reading-width {
	max-width: var(--aos-size-reading-max);
}

.aos-main {
	min-height: 55vh;
}

.aos-section {
	padding-block: var(--aos-space-section-y);
}

.aos-motion-ready [data-aos-reveal] {
	opacity: 1;
	transform: none;
	transition: opacity var(--aos-duration-chapter) var(--aos-ease-standard), transform var(--aos-duration-chapter) var(--aos-ease-standard);
}

.aos-motion-ready [data-aos-reveal].is-visible {
	opacity: 1;
	transform: translateY(0);
	animation: aos-section-enhance 560ms var(--aos-ease-enter) both;
}

@keyframes aos-section-enhance {
	from {
		opacity: 0.88;
		transform: translateY(12px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: var(--aos-space-0);
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus {
	top: 0.75rem;
	left: 0.75rem;
	z-index: var(--aos-z-skip-link);
	width: auto;
	height: auto;
	padding: var(--aos-space-3) var(--aos-space-4);
	clip: auto;
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-brand-primary);
}

.aos-icon {
	width: 1.25rem;
	height: 1.25rem;
	flex: 0 0 auto;
}

.aos-eyebrow {
	margin-bottom: var(--aos-space-3);
	color: var(--aos-color-action-primary);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-bold);
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.aos-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.wp-element-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--aos-space-2);
	min-height: var(--aos-size-control-md);
	padding: var(--aos-space-3) var(--aos-space-5);
	border: 1px solid transparent;
	border-radius: var(--aos-radius-md);
	font-weight: var(--aos-font-weight-bold);
	line-height: var(--aos-line-height-control);
	text-decoration: none;
	transition: transform var(--aos-duration-fast) var(--aos-ease-standard), background var(--aos-duration-fast) var(--aos-ease-standard), border-color var(--aos-duration-fast) var(--aos-ease-standard);
}

.aos-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.wp-element-button:hover {
	transform: translateY(-1px);
}

.aos-button-primary,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.wp-element-button {
	background: var(--aos-color-action-primary);
	color: var(--aos-color-neutral-0);
}

.aos-button-primary:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.wp-element-button:hover {
	background: var(--aos-color-action-hover);
	color: var(--aos-color-neutral-0);
}

.aos-button-commerce {
	background: var(--aos-color-commerce-primary);
	color: var(--aos-color-brand-strong);
}

.aos-button-commerce:hover {
	background: var(--aos-color-commerce-hover);
	color: var(--aos-color-brand-strong);
}

.aos-button-secondary {
	border-color: var(--aos-color-action-primary);
	background: var(--aos-color-surface-card);
	color: var(--aos-color-action-hover);
}

.aos-button-secondary:hover {
	border-color: var(--aos-color-action-hover);
	background: var(--aos-color-surface-brand-subtle);
	color: var(--aos-color-brand-primary);
}

.aos-button-light {
	border-color: var(--aos-color-on-dark-low);
	background: var(--aos-color-on-dark-soft);
	color: var(--aos-color-neutral-0);
}

.aos-button-light:hover {
	background: var(--aos-color-on-dark-soft-hover);
	color: var(--aos-color-neutral-0);
}

/* Header */
.aos-site-header {
	position: sticky;
	top: 0;
	z-index: var(--aos-z-header);
	background: var(--aos-color-neutral-0);
	box-shadow: var(--aos-shadow-border);
	transition: background-color 180ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 180ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.admin-bar .aos-site-header {
	top: 32px;
}

.aos-site-header.is-scrolled {
	background: var(--aos-color-neutral-0);
	box-shadow: var(--aos-shadow-sm);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

.aos-utility-bar {
	max-height: var(--aos-size-header-utility);
	overflow: hidden;
	background: var(--aos-color-brand-strong);
	color: var(--aos-color-on-dark-high);
	font-size: var(--aos-font-size-200);
	opacity: 1;
	transform: translateY(0);
	transition:
		max-height 260ms cubic-bezier(0.22, 1, 0.36, 1),
		opacity 180ms ease,
		transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

.aos-utility-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--aos-space-4);
	min-height: var(--aos-size-header-utility);
	transition: min-height 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

.aos-site-header.is-scrolled .aos-utility-bar {
	max-height: 0;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-6px);
}

.aos-site-header.is-scrolled .aos-utility-inner {
	min-height: 0;
}

.aos-utility-inner nav {
	display: flex;
	gap: var(--aos-space-5);
}

.aos-utility-location {
	display: inline-flex;
	align-items: center;
	gap: var(--aos-space-2);
	white-space: nowrap;
}

.aos-utility-location .aos-icon {
	width: 16px;
	height: 16px;
}

.aos-utility-inner a {
	color: inherit;
	text-decoration: none;
}

.aos-utility-phone {
	display: inline-flex;
	align-items: center;
	gap: var(--aos-space-2);
	white-space: nowrap;
}

.aos-utility-inner > strong {
	font-size: var(--aos-font-size-200);
	letter-spacing: 0.02em;
}

.aos-header-main {
	display: grid;
	grid-template-columns: auto minmax(280px, 1fr) auto;
	align-items: center;
	gap: var(--aos-space-8);
	min-height: 92px;
	transition: min-height 220ms ease, padding 220ms ease;
}

.aos-site-header.is-scrolled .aos-header-main {
	min-height: 64px;
}

.aos-site-header.is-scrolled .aos-brand .custom-logo,
.aos-site-header.is-scrolled .aos-brand-logo {
	max-height: 46px;
}

.aos-brand > a,
.aos-brand .custom-logo-link {
	display: inline-flex;
	align-items: center;
	gap: var(--aos-space-2);
	color: var(--aos-color-brand-strong);
	font-size: var(--aos-font-size-500);
	font-weight: 800;
	letter-spacing: 0.08em;
	text-decoration: none;
}

.aos-brand .custom-logo {
	max-width: 220px;
	max-height: 64px;
	object-fit: contain;
}

.aos-brand-lockup {
	display: block;
}

.aos-brand-logo {
	display: block;
	width: 220px;
	height: auto;
}

.aos-brand-mark {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-brand-primary);
	color: var(--aos-color-neutral-0);
	letter-spacing: -0.04em;
}

.aos-product-search,
.aos-header-search .woocommerce-product-search {
	display: flex;
	width: 100%;
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-neutral-0);
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.aos-product-search:focus-within,
.aos-header-search .woocommerce-product-search:focus-within {
	border-color: var(--aos-color-action-primary);
	box-shadow: var(--aos-shadow-focus);
}

.aos-product-search input[type="search"],
.aos-header-search .woocommerce-product-search input[type="search"] {
	flex: 1;
	width: 100%;
	min-width: 0;
	min-height: 48px;
	padding: 0 var(--aos-space-4);
	border: 0;
	border-radius: 0;
	outline: 0;
	background: transparent;
}

.aos-product-search button,
.aos-header-search .woocommerce-product-search button {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	min-width: 72px;
	padding-inline: var(--aos-space-4);
	border: 0;
	border-radius: 0 var(--aos-radius-md) var(--aos-radius-md) 0;
	background: var(--aos-color-action-primary);
	color: var(--aos-color-neutral-0);
}

.aos-header-actions {
	display: flex;
	align-items: center;
	gap: var(--aos-space-5);
}

.aos-header-actions > a {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: var(--aos-space-2);
	color: var(--aos-color-brand-strong);
	font-size: var(--aos-font-size-300);
	font-weight: 650;
	text-decoration: none;
}

.aos-cart-count {
	position: absolute;
	top: -12px;
	right: -13px;
	display: grid;
	place-items: center;
	min-width: 20px;
	height: 20px;
	padding-inline: var(--aos-space-1);
	border: 2px solid var(--aos-color-neutral-0);
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-commerce-primary);
	color: var(--aos-color-brand-strong);
	font-size: var(--aos-font-size-050);
	font-weight: 800;
}

.aos-menu-toggle {
	display: none;
	padding: var(--aos-space-3);
	border: 0;
	background: transparent;
	color: var(--aos-color-brand-strong);
}

.aos-menu-close {
	display: none;
}

.aos-primary-nav {
	position: relative;
	border-top: 1px solid var(--aos-color-border-default);
}

.aos-menu {
	display: flex;
	align-items: center;
	gap: var(--aos-space-6);
	min-height: 50px;
	padding: var(--aos-space-0);
	margin: var(--aos-space-0);
	list-style: none;
}

.aos-menu li {
	position: relative;
}

.aos-menu > li.aos-mega-menu {
	position: static;
}

.aos-menu > li {
	display: flex;
	align-self: stretch;
	align-items: center;
}

.aos-menu > li > a {
	position: relative;
	display: flex;
	align-items: center;
	gap: 0.4rem;
	height: 100%;
	transition:
		color var(--aos-duration-fast) var(--aos-ease-standard),
		transform var(--aos-duration-fast) var(--aos-ease-standard);
}

.aos-menu > li > a::after {
	position: absolute;
	right: 0;
	bottom: 6px;
	left: 0;
	height: 2px;
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-action-primary);
	content: "";
	opacity: 0;
	transform: scaleX(0.45);
	transform-origin: center;
	transition:
		opacity var(--aos-duration-fast) var(--aos-ease-standard),
		transform var(--aos-duration-fast) var(--aos-ease-standard);
}

.aos-menu-caret {
	display: inline-grid;
	place-items: center;
	font-size: 1rem;
	line-height: 1;
	transform: translateY(-1px) rotate(180deg);
	transition: transform 180ms cubic-bezier(0.22, 1, 0.36, 1);
}

.aos-mega-menu:hover .aos-menu-caret,
.aos-mega-menu:focus-within .aos-menu-caret {
	transform: translateY(1px) rotate(0deg);
}

.aos-menu a {
	color: var(--aos-color-text-primary);
	font-size: var(--aos-font-size-300);
	font-weight: 650;
	text-decoration: none;
}

.aos-menu > li.is-current > a {
	color: var(--aos-color-action-primary);
}

.aos-menu > li.is-current > a::after {
	opacity: 1;
	transform: scaleX(1);
}

.aos-menu > li:hover > a,
.aos-menu > li:focus-within > a {
	color: var(--aos-color-action-primary);
	transform: translateY(-1px);
}

.aos-menu > li:hover > a::after,
.aos-menu > li:focus-within > a::after {
	opacity: 0.7;
	transform: scaleX(1);
}

.aos-menu .sub-menu {
	position: absolute;
	top: 100%;
	left: -1rem;
	z-index: 10;
	display: none;
	min-width: 220px;
	padding: var(--aos-space-3);
	margin: var(--aos-space-0);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-neutral-0);
	box-shadow: var(--aos-shadow-lg);
	list-style: none;
}

.aos-menu li:hover > .sub-menu,
.aos-menu li:focus-within > .sub-menu {
	display: block;
}

.aos-menu .sub-menu a {
	display: block;
	padding: var(--aos-space-2) var(--aos-space-3);
}

.aos-mega-panel {
	position: absolute;
	top: calc(100% - 1px);
	left: 0;
	z-index: 20;
	width: 100%;
	padding: var(--aos-space-5) max(var(--aos-space-6), calc((100vw - var(--aos-size-content-max)) / 2));
	border-top: 1px solid var(--aos-color-border-default);
	background:
		radial-gradient(circle at 50% -35%, rgba(0, 200, 255, 0.1), transparent 52%),
		rgba(255, 255, 255, 0.995);
	box-shadow: 0 26px 64px rgba(15, 27, 41, 0.16);
	opacity: 0;
	pointer-events: none;
	transform: translateY(8px) scale(0.99);
	transform-origin: top center;
	transition: opacity 180ms cubic-bezier(0.22, 1, 0.36, 1), transform 180ms cubic-bezier(0.22, 1, 0.36, 1), visibility 0s linear 180ms;
	visibility: hidden;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.aos-mega-panel::before {
	position: absolute;
	top: -12px;
	left: 0;
	width: 100%;
	height: 12px;
	content: "";
}

.aos-mega-menu:hover > .aos-mega-panel,
.aos-mega-menu:focus-within > .aos-mega-panel {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0) scale(1);
	transition-delay: 0s;
	visibility: visible;
}

.aos-mega-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--aos-space-4);
	max-width: var(--aos-size-content-max);
	margin: 0 auto var(--aos-space-4);
}

.aos-mega-heading strong {
	font-size: var(--aos-font-size-500);
}

.aos-mega-heading a {
	color: var(--aos-color-action-primary);
	font-size: var(--aos-font-size-200);
}

.aos-mega-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: var(--aos-space-3);
	max-width: var(--aos-size-content-max);
	margin: 0 auto;
}

.aos-mega-card {
	position: relative;
	isolation: isolate;
	display: grid;
	grid-template-columns: 76px minmax(0, 1fr);
	align-items: center;
	gap: var(--aos-space-3);
	min-height: 112px;
	min-width: 0;
	overflow: hidden;
	padding: var(--aos-space-3);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-md);
	background: linear-gradient(145deg, var(--aos-color-neutral-0) 0%, var(--aos-color-surface-brand-subtle) 100%);
	box-shadow: 0 12px 30px rgba(15, 27, 41, 0.08);
	color: var(--aos-color-text-primary);
	transition:
		border-color var(--aos-duration-fast) var(--aos-ease-enter),
		background-color var(--aos-duration-fast) var(--aos-ease-enter),
		box-shadow var(--aos-duration-fast) var(--aos-ease-enter),
		transform var(--aos-duration-fast) var(--aos-ease-enter);
}

.aos-mega-card::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 3px;
	background: var(--aos-color-commerce-primary);
	content: "";
	opacity: 0;
	transform: scaleX(0.35);
	transform-origin: left center;
	transition:
		opacity var(--aos-duration-fast) var(--aos-ease-enter),
		transform var(--aos-duration-fast) var(--aos-ease-enter);
}

.aos-mega-card:hover,
.aos-mega-card:focus-visible {
	border-color: var(--aos-color-commerce-primary);
	background: var(--aos-color-neutral-0);
	box-shadow: 0 18px 38px rgba(15, 27, 41, 0.13);
}

.aos-mega-card:focus-visible {
	transform: translateY(-2px);
}

.aos-mega-card:hover::before,
.aos-mega-card:focus-visible::before {
	opacity: 1;
	transform: scaleX(1);
}

.aos-mega-card img {
	width: 76px;
	height: 76px;
	padding: var(--aos-space-2);
	border: 1px solid rgba(216, 227, 236, 0.82);
	border-radius: var(--aos-radius-md);
	background: rgba(255, 255, 255, 0.86);
	object-fit: contain;
	mix-blend-mode: multiply;
	transition: transform var(--aos-duration-fast) var(--aos-ease-enter);
}

.aos-mega-card span {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.25rem;
	min-width: 0;
}

.aos-mega-card strong {
	color: var(--aos-color-text-primary);
	font-size: var(--aos-font-size-300);
	font-weight: 750;
	line-height: 1.25;
	letter-spacing: -0.01em;
	overflow-wrap: normal;
	word-break: normal;
}

.aos-mega-card small {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	font-weight: 600;
	line-height: 1.4;
}

@media (hover: hover) and (pointer: fine) {
	.aos-mega-card:hover {
		transform: translateY(-2px);
	}

	.aos-mega-card:hover img {
		transform: translateY(-2px) scale(1.02);
	}
}

.aos-hero-copy h1,
.aos-hero-copy p {
	color: var(--aos-color-brand-strong);
}

.aos-hero-copy h1 {
	max-width: 10ch;
	font-size: clamp(3.15rem, 5vw, 5rem);
	line-height: 0.98;
	letter-spacing: -0.045em;
	text-wrap: balance;
}

html.translated-ltr .aos-hero-copy h1,
html.translated-rtl .aos-hero-copy h1 {
	max-width: 11ch;
	font-size: clamp(3rem, 4.7vw, 4.8rem);
	line-height: 1.06;
	word-break: keep-all;
	overflow-wrap: break-word;
}

.aos-hero-copy > p:not(.aos-eyebrow) {
	max-width: 580px;
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-lead);
}

.aos-hero-copy .aos-eyebrow {
	color: var(--aos-color-action-hover);
}

.aos-home-hero .aos-button-light {
	border-color: var(--aos-color-border-strong);
	background: rgba(255, 255, 255, 0.78);
	color: var(--aos-color-brand-primary);
}

.aos-home-hero .aos-button-light:hover {
	border-color: var(--aos-color-action-primary);
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-brand-primary);
}

.aos-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--aos-space-3);
	margin-top: var(--aos-space-5);
}

.aos-hero-media {
	grid-column: 1;
	grid-row: 1;
	justify-self: end;
	width: 76%;
	min-height: 100%;
}

.aos-hero-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 58% center;
}

/* Home trust strip */
.aos-trust-strip {
	border-bottom: 1px solid var(--aos-color-border-default);
	background: var(--aos-color-neutral-0);
}

.aos-trust-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.aos-trust-grid > div {
	display: flex;
	align-items: center;
	gap: var(--aos-space-3);
	min-height: 98px;
	padding: var(--aos-space-4) var(--aos-space-5);
	border-right: 1px solid var(--aos-color-border-default);
}

.aos-trust-grid > div:last-child {
	border-right: 0;
}

.aos-trust-grid .aos-icon {
	width: 1.75rem;
	height: 1.75rem;
	color: var(--aos-color-action-primary);
}

.aos-trust-grid span {
	display: grid;
}

.aos-trust-grid strong {
	font-size: var(--aos-font-size-300);
}

.aos-trust-grid small {
	color: var(--aos-color-text-secondary);
}

/* Home shared sections */
.aos-section-heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: var(--aos-space-6);
	margin-bottom: var(--aos-space-8);
}

.aos-section-heading a {
	display: inline-flex;
	align-items: center;
	gap: var(--aos-space-2);
	font-weight: var(--aos-font-weight-bold);
	text-decoration: none;
}

.aos-category-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--aos-space-4);
}

.aos-category-card {
	display: grid;
	grid-template-columns: 112px 1fr auto;
	align-items: center;
	gap: var(--aos-space-4);
	overflow: hidden;
	min-height: 134px;
	padding: var(--aos-space-3) var(--aos-space-4) var(--aos-space-3) var(--aos-space-3);
	border: 1px solid rgba(15, 27, 41, 0.08);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-surface-brand-soft);
	box-shadow: var(--aos-shadow-sm);
	color: var(--aos-color-brand-strong);
	text-decoration: none;
	transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

@media (hover: hover) and (pointer: fine) {
	.aos-category-card:hover {
		transform: translateY(-4px);
		border-color: var(--aos-color-action-selected);
		box-shadow: var(--aos-shadow-md);
		color: var(--aos-color-brand-strong);
	}
}

.aos-category-card img {
	width: 112px;
	height: 112px;
	border-radius: var(--aos-radius-md);
	object-fit: cover;
}

.aos-category-card > span {
	display: grid;
	gap: var(--aos-space-1);
}

.aos-category-card small {
	color: var(--aos-color-text-secondary);
}

.aos-featured-section {
	background: var(--aos-color-surface-page);
}

.aos-carousel-viewport {
	width: 100%;
	overflow: hidden;
	padding: calc(var(--aos-space-2) + 6px) var(--aos-space-1) var(--aos-space-3);
	touch-action: pan-y;
}

.aos-carousel-viewport:focus-visible {
	border-radius: var(--aos-radius-lg);
	outline: 3px solid color-mix(in srgb, var(--aos-color-action-primary) 64%, transparent);
	outline-offset: -3px;
}

.aos-featured-grid {
	display: flex;
	align-items: stretch;
	width: 100%;
	gap: var(--aos-space-4);
	padding: 0;
	transform: translate3d(0, 0, 0);
	transition: none;
}

.aos-featured-grid.is-carousel-animating {
	will-change: transform;
	transition: transform 920ms cubic-bezier(0.25, 1, 0.5, 1);
}

.aos-featured-grid.is-carousel-rebasing {
	transition: none !important;
}

.aos-featured-grid > .aos-product-card {
	flex: 0 0 calc((100% - (var(--aos-space-4) * 4)) / 5);
	height: auto;
}

.aos-product-carousel {
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

@media (min-width: 1600px) {
	.aos-featured-grid > .aos-product-card {
		flex-basis: calc((100% - (var(--aos-space-4) * 5)) / 6);
	}
}

.aos-carousel-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--aos-space-2);
}

.aos-carousel-actions > a {
	margin-right: var(--aos-space-2);
}

.aos-carousel-button {
	display: inline-grid;
	place-items: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-surface-card);
	color: var(--aos-color-brand-primary);
	transition: color var(--aos-duration-fast) var(--aos-ease-standard), background-color var(--aos-duration-fast) var(--aos-ease-standard), border-color var(--aos-duration-fast) var(--aos-ease-standard), transform var(--aos-duration-fast) var(--aos-ease-standard);
}

.aos-carousel-button .aos-icon {
	width: 19px;
	height: 19px;
}

.aos-carousel-button.is-prev .aos-icon {
	transform: rotate(180deg);
}

.aos-carousel-button:not(:disabled):hover {
	border-color: var(--aos-color-action-primary);
	background: var(--aos-color-action-primary);
	color: var(--aos-color-neutral-0);
	transform: translateY(-2px);
}

.aos-carousel-button:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--aos-color-action-primary) 70%, transparent);
	outline-offset: 3px;
}

.aos-carousel-button:disabled {
	cursor: not-allowed;
	opacity: 0.36;
}

.aos-carousel-edge {
	position: absolute;
	top: 50%;
	z-index: 4;
	width: 48px;
	height: 48px;
	border-color: color-mix(in srgb, var(--aos-color-brand-primary) 24%, transparent);
	background: color-mix(in srgb, var(--aos-color-neutral-0) 88%, transparent);
	box-shadow: var(--aos-shadow-md);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	transform: translateY(-50%);
}

.aos-carousel-edge.is-prev {
	left: 10px;
}

.aos-carousel-edge.is-next {
	right: 10px;
}

.aos-carousel-edge:not(:disabled):hover {
	transform: translateY(calc(-50% - 2px)) scale(1.04);
}

.aos-carousel-edge:not(:disabled):active {
	transform: translateY(-50%) scale(0.96);
}

.aos-featured-grid > .is-carousel-clone {
	pointer-events: none;
}

.aos-carousel-edge .aos-icon {
	position: relative;
	z-index: 2;
	display: block;
	width: 20px;
	height: 20px;
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 2;
}

.aos-carousel-edge:not(:disabled):hover {
	border-color: var(--aos-color-commerce-primary);
	background: color-mix(in srgb, var(--aos-color-commerce-primary) 18%, var(--aos-color-neutral-0));
	color: var(--aos-color-brand-primary);
}

.aos-product-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: 1px solid rgba(15, 27, 41, 0.08);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-neutral-0);
	box-shadow: var(--aos-shadow-sm);
	transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

@media (hover: hover) and (pointer: fine) {
	.aos-product-card:hover {
		transform: translateY(-6px);
		border-color: var(--aos-color-border-strong);
		box-shadow: var(--aos-shadow-lg);
	}
}

.aos-product-image {
	position: relative;
	display: block;
	aspect-ratio: 1;
	overflow: hidden;
	background: var(--aos-color-neutral-0);
}

.aos-product-image img {
	width: 100%;
	height: 100%;
	padding: var(--aos-space-4);
	object-fit: contain;
	transition: transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

@media (hover: hover) and (pointer: fine) {
	.aos-product-card:hover .aos-product-image img {
		transform: scale(1.05);
	}
}

.aos-sale-badge,
.woocommerce span.onsale {
	position: absolute;
	top: 0.75rem;
	left: 0.75rem;
	z-index: 2;
	min-width: 0;
	min-height: 0;
	padding: var(--aos-space-1) var(--aos-space-2);
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-commerce-primary);
	color: var(--aos-color-brand-strong);
	font-size: var(--aos-font-size-100);
	font-weight: 800;
	line-height: var(--aos-line-height-control);
}

.aos-product-card-body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: var(--aos-space-4);
	border-top: 1px solid var(--aos-color-border-default);
}

.aos-product-meta {
	min-height: 1.2em;
	margin: 0 0 var(--aos-space-2);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	font-weight: 650;
	letter-spacing: 0.02em;
}

.aos-product-card h3 {
	display: -webkit-box;
	min-height: 3.55em;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-size: var(--aos-font-size-400);
	line-height: var(--aos-line-height-heading);
}

.aos-product-card h3 a {
	color: inherit;
	text-decoration: none;
}

.aos-product-card-footer {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: var(--aos-space-3);
	margin-top: auto;
}

.aos-card-price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--aos-color-brand-primary);
	font-size: var(--aos-font-size-500);
	font-weight: 800;
}

.aos-card-price del,
.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-relative-sm);
	opacity: 0.8;
}

.aos-card-price ins,
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
	text-decoration: none;
}

.aos-price-login-link {
	display: inline-flex;
	flex-direction: column;
	gap: 2px;
	padding: var(--aos-space-2) var(--aos-space-3);
	border: 1px solid var(--aos-color-border-strong);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-surface-brand-subtle);
	color: var(--aos-color-action-primary);
	line-height: var(--aos-line-height-heading);
	text-decoration: none;
	transition:
		border-color var(--aos-duration-fast) var(--aos-ease-standard),
		box-shadow var(--aos-duration-fast) var(--aos-ease-standard),
		transform var(--aos-duration-fast) var(--aos-ease-standard);
}

.aos-price-login-link span {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-050);
	font-weight: var(--aos-font-weight-bold);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aos-price-login-link strong {
	font-size: var(--aos-font-size-200);
}

.aos-price-login-link:hover,
.aos-price-login-link:focus-visible {
	border-color: var(--aos-color-action-primary);
	box-shadow: var(--aos-shadow-sm);
	transform: translateY(-1px);
}

.aos-card-price-gated {
	display: grid;
	gap: 2px;
	line-height: var(--aos-line-height-heading);
}

.aos-card-price-gated small {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-050);
	font-weight: var(--aos-font-weight-bold);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.aos-card-price-gated strong {
	font-size: var(--aos-font-size-200);
}

.aos-card-login {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: var(--aos-space-2) var(--aos-space-4) !important;
	border-radius: var(--aos-radius-full) !important;
	background: var(--aos-color-action-primary) !important;
	color: var(--aos-color-neutral-0) !important;
	font-size: var(--aos-font-size-100) !important;
	font-weight: var(--aos-font-weight-bold) !important;
	text-decoration: none !important;
}

.aos-card-login:hover,
.aos-card-login:focus-visible {
	background: var(--aos-color-action-hover) !important;
	transform: translateY(-1px);
}

.aos-card-cart {
	position: relative;
	display: inline-grid !important;
	place-items: center;
	width: 42px;
	min-width: 42px !important;
	height: 42px;
	min-height: 42px !important;
	padding: var(--aos-space-0) !important;
	overflow: hidden;
	border: 0;
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-action-primary);
	box-shadow: 0 6px 14px rgba(0, 123, 181, 0.2);
	color: var(--aos-color-neutral-0);
	font-size: 0 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	transition: background-color 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}

.aos-product-card:hover .aos-card-cart,
.aos-card-cart:hover,
.aos-card-cart:focus-visible {
	background: var(--aos-color-commerce-hover) !important;
	box-shadow: 0 8px 18px rgba(180, 112, 17, 0.24);
	color: var(--aos-color-brand-strong) !important;
	transform: scale(1.04) !important;
}

.aos-card-cart::before {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 2px;
	border-radius: var(--aos-radius-full);
	background: currentColor;
	content: "";
	transform: translate(-50%, -50%);
}

.aos-card-cart::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 2px;
	height: 14px;
	border-radius: var(--aos-radius-full);
	background: currentColor;
	content: "";
	transform: translate(-50%, -50%);
}

.aos-card-cart:active {
	transform: scale(0.94) !important;
	transition-duration: 120ms;
}

.aos-product-card .added_to_cart {
	grid-column: 1 / -1;
	justify-self: start;
	margin-top: var(--aos-space-1);
	color: var(--aos-color-action-hover);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-semibold);
}

.aos-cart-fly-bubble {
	position: fixed;
	z-index: calc(var(--aos-z-header) + 20);
	display: grid;
	place-items: center;
	width: 28px;
	height: 28px;
	border: 2px solid var(--aos-color-neutral-0);
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-commerce-primary);
	box-shadow: 0 10px 24px rgba(180, 112, 17, 0.3);
	color: var(--aos-color-brand-strong);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-bold);
	pointer-events: none;
}

.aos-cart-link.is-pulsing {
	animation: aos-cart-pulse 460ms cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes aos-cart-pulse {
	0%, 100% { transform: scale(1); }
	45% { transform: scale(1.16) rotate(-4deg); }
	70% { transform: scale(0.96) rotate(2deg); }
}

.aos-shop-paths-section {
	background: var(--aos-color-brand-strong);
}

.aos-shop-paths-section h2,
.aos-shop-paths-section .aos-eyebrow {
	color: var(--aos-color-neutral-0);
}

.aos-shop-paths {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-block: 1px solid var(--aos-color-on-dark-subtle);
}

.aos-shop-paths a {
	display: grid;
	gap: var(--aos-space-2);
	min-height: 180px;
	padding: var(--aos-space-6);
	border-right: 1px solid var(--aos-color-on-dark-subtle);
	color: var(--aos-color-neutral-0);
	text-decoration: none;
}

.aos-shop-paths a:last-child {
	border-right: 0;
}

.aos-shop-paths span {
	color: var(--aos-color-green-300);
	font-size: var(--aos-font-size-200);
	font-weight: var(--aos-font-weight-bold);
}

.aos-shop-paths strong {
	align-self: end;
	font-size: var(--aos-font-size-600);
}

.aos-shop-paths small {
	color: var(--aos-color-on-dark-medium);
}

.aos-brands-section {
	position: relative;
	isolation: isolate;
	overflow: clip;
	padding-block: clamp(72px, 8vw, 116px);
	background:
		radial-gradient(circle at 82% 18%, rgba(242, 166, 64, 0.12), transparent 27%),
		radial-gradient(circle at 13% 62%, rgba(0, 123, 181, 0.12), transparent 31%),
		linear-gradient(155deg, var(--aos-color-mint-50) 0%, var(--aos-color-sand-50) 72%);
}

.aos-brands-section::before {
	position: absolute;
	inset: 0;
	z-index: -2;
	background-image:
		linear-gradient(rgba(15, 27, 41, 0.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(15, 27, 41, 0.045) 1px, transparent 1px);
	background-size: 64px 64px;
	content: "";
	mask-image: linear-gradient(90deg, transparent, #000 18%, #000 82%, transparent);
}

.aos-brands-section::after {
	position: absolute;
	inset: auto 4% 2% auto;
	z-index: -1;
	width: min(38vw, 520px);
	aspect-ratio: 1;
	border-radius: 50%;
	background: rgba(0, 123, 181, 0.08);
	filter: blur(72px);
	content: "";
}

.aos-brands-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
	align-items: center;
	gap: clamp(var(--aos-space-12), 7vw, 112px);
}

.aos-brands-intro {
	max-width: 530px;
}

.aos-brands-intro .aos-eyebrow,
.aos-dealer-copy .aos-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: var(--aos-space-3);
	margin-bottom: var(--aos-space-5);
	letter-spacing: 0.14em;
}

.aos-brands-intro .aos-eyebrow > span,
.aos-dealer-copy .aos-eyebrow > span {
	display: inline-block;
	width: 42px;
	height: 3px;
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-commerce-primary);
}

.aos-brands-intro h2 {
	max-width: 10ch;
	margin: 0 0 var(--aos-space-6);
	font-family: var(--aos-font-family-display);
	font-size: clamp(2.55rem, 4.4vw, 4.4rem);
	line-height: 0.96;
	letter-spacing: -0.045em;
}

.aos-brands-intro h2 span {
	display: block;
}

.aos-brands-intro h2 span:last-child {
	color: var(--aos-color-sage-600);
}

.aos-brands-intro > p:last-of-type {
	max-width: 43ch;
	margin-bottom: var(--aos-space-8);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-400);
	line-height: 1.68;
}

.aos-brand-summary {
	display: flex;
	gap: var(--aos-space-3);
	margin: 0;
}

.aos-brand-summary > div {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: var(--aos-space-2);
	min-width: 148px;
	padding: var(--aos-space-3) var(--aos-space-4);
	border: 1px solid rgba(0, 123, 181, 0.17);
	border-radius: var(--aos-radius-md);
	background: rgba(255, 255, 255, 0.68);
	box-shadow: 0 12px 28px rgba(15, 27, 41, 0.05);
	backdrop-filter: blur(12px);
}

.aos-brand-summary dt {
	margin: 0;
	color: var(--aos-color-amber-700);
	font-family: var(--aos-font-family-display);
	font-size: var(--aos-font-size-700);
	font-weight: var(--aos-font-weight-bold);
	line-height: 1;
}

.aos-brand-summary dd {
	margin: 0;
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-semibold);
	line-height: 1.25;
}

.aos-brand-links {
	position: relative;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--aos-space-5);
}

.aos-brand-links::after {
	position: absolute;
	right: 0;
	bottom: calc(var(--aos-space-10) * -1);
	left: 0;
	height: 3px;
	border-radius: var(--aos-radius-full);
	background: linear-gradient(90deg, var(--aos-color-commerce-primary), rgba(242, 166, 64, 0.18));
	content: "";
	transform: scaleX(1);
	transform-origin: left center;
	transition: transform 680ms var(--aos-ease-enter);
}

.aos-brand-links a {
	--aos-manifest-x: 50%;
	--aos-manifest-y: 50%;
	position: relative;
	isolation: isolate;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto auto;
	grid-template-rows: 1fr;
	align-items: center;
	gap: var(--aos-space-4);
	min-height: 154px;
	overflow: hidden;
	padding: var(--aos-space-6);
	border: 1px solid rgba(0, 123, 181, 0.18);
	border-radius: var(--aos-radius-md);
	background: rgba(255, 255, 255, 0.9);
	color: var(--aos-color-brand-strong);
	text-decoration: none;
	box-shadow: var(--aos-shadow-sm);
	transition:
		border-color var(--aos-duration-fast) ease,
		box-shadow var(--aos-duration-base) var(--aos-ease-standard),
		background-color var(--aos-duration-fast) ease,
		transform var(--aos-duration-base) var(--aos-ease-standard);
}

.aos-brand-links a::before {
	position: absolute;
	inset: 0;
	z-index: -1;
	background: radial-gradient(circle at var(--aos-manifest-x) var(--aos-manifest-y), rgba(242, 166, 64, 0.2), transparent 38%);
	content: "";
	opacity: 0;
	transition: opacity var(--aos-duration-base) ease;
}

.aos-brand-links a::after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 4px;
	background: var(--aos-color-commerce-primary);
	content: "";
	transform: scaleX(0.18);
	transform-origin: left center;
	transition: transform 220ms var(--aos-ease-standard);
}

.aos-brand-index {
	align-self: start;
	padding-top: 2px;
	color: var(--aos-color-commerce-hover);
	font-family: var(--aos-font-family-mono);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-bold);
	letter-spacing: 0.08em;
}

.aos-brand-manifest-main {
	display: grid;
	gap: var(--aos-space-2);
}

.aos-brand-manifest-main strong {
	font-family: var(--aos-font-family-display);
	font-size: clamp(1.35rem, 2vw, 1.85rem);
	line-height: var(--aos-line-height-tight);
}

.aos-brand-manifest-main > span {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-semibold);
	letter-spacing: 0.04em;
}

.aos-brand-count {
	display: grid;
	justify-items: end;
	gap: 2px;
	min-width: 58px;
	padding: var(--aos-space-2) var(--aos-space-3);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-mint-50);
	transition: background-color var(--aos-duration-fast) ease;
}

.aos-brand-count strong {
	font-family: var(--aos-font-family-mono);
	font-size: var(--aos-font-size-400);
	line-height: 1;
}

.aos-brand-count small {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-050);
	font-weight: var(--aos-font-weight-semibold);
}

.aos-brand-arrow {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(0, 123, 181, 0.2);
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-neutral-0);
	transition:
		border-color var(--aos-duration-fast) ease,
		background-color var(--aos-duration-fast) ease,
		transform var(--aos-duration-fast) var(--aos-ease-standard);
}

.aos-brand-arrow svg {
	width: 18px;
	height: 18px;
}

.aos-dealer-section {
	position: relative;
	isolation: isolate;
	padding-top: clamp(var(--aos-space-10), 5vw, var(--aos-space-16));
	padding-bottom: clamp(72px, 8vw, 112px);
	background:
		radial-gradient(circle at 22% 10%, rgba(242, 166, 64, 0.09), transparent 24%),
		linear-gradient(180deg, var(--aos-color-sand-50), var(--aos-color-mint-50));
}

.aos-dealer-banner {
	position: relative;
	isolation: isolate;
	min-height: 520px;
	overflow: hidden;
	border: 1px solid rgba(15, 27, 41, 0.12);
	border-radius: var(--aos-radius-xl);
	background: var(--aos-color-brand-strong);
	box-shadow: var(--aos-shadow-console);
}

.aos-dealer-banner::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 3;
	height: 4px;
	background: linear-gradient(90deg, var(--aos-color-commerce-primary) 0 32%, rgba(242, 166, 64, 0.26) 72%, transparent);
	content: "";
	transform: scaleX(1);
	transform-origin: left center;
	transition: transform 680ms var(--aos-ease-enter);
}

.aos-dealer-banner::after {
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(90deg, rgba(15, 27, 41, 0.98) 0%, rgba(15, 27, 41, 0.93) 39%, rgba(15, 27, 41, 0.55) 58%, rgba(15, 27, 41, 0.06) 82%),
		linear-gradient(0deg, rgba(15, 27, 41, 0.22), transparent 48%);
	content: "";
}

.aos-dealer-banner > img {
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	transform: scale(1);
	transition: transform 850ms var(--aos-ease-enter);
}

.aos-dealer-copy {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: min(59%, 720px);
	min-height: 520px;
	padding: clamp(var(--aos-space-10), 5vw, var(--aos-space-18));
}

.aos-dealer-copy::before {
	position: absolute;
	top: clamp(var(--aos-space-10), 5vw, var(--aos-space-18));
	bottom: clamp(var(--aos-space-10), 5vw, var(--aos-space-18));
	left: clamp(var(--aos-space-5), 2.2vw, var(--aos-space-8));
	width: 1px;
	background: linear-gradient(180deg, var(--aos-color-commerce-primary), rgba(255, 255, 255, 0.08));
	content: "";
}

.aos-dealer-copy h2,
.aos-dealer-copy p {
	color: var(--aos-color-neutral-0);
}

.aos-dealer-copy h2 {
	max-width: 10ch;
	margin: 0 0 var(--aos-space-6);
	font-family: var(--aos-font-family-display);
	font-size: clamp(2.65rem, 4.8vw, 4.8rem);
	line-height: 0.96;
	letter-spacing: -0.045em;
}

.aos-dealer-copy h2 span,
.aos-dealer-copy h2 strong {
	display: block;
}

.aos-dealer-copy h2 strong {
	color: var(--aos-color-commerce-primary);
	font-weight: var(--aos-font-weight-bold);
}

.aos-dealer-copy > p:not(.aos-eyebrow) {
	max-width: 46ch;
	margin-bottom: var(--aos-space-6);
	color: var(--aos-color-on-dark-medium);
	font-size: var(--aos-font-size-400);
	line-height: 1.65;
}

.aos-dealer-copy .aos-eyebrow {
	color: var(--aos-color-green-200);
}

.aos-dealer-meta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--aos-space-3);
	margin: 0 0 var(--aos-space-8);
	padding: 0;
	list-style: none;
}

.aos-dealer-meta li {
	display: inline-flex;
	align-items: center;
	gap: var(--aos-space-2);
	min-height: 34px;
	padding: var(--aos-space-2) var(--aos-space-3);
	border: 1px solid var(--aos-color-on-dark-subtle);
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-on-dark-soft);
	color: var(--aos-color-on-dark-high);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-semibold);
}

.aos-dealer-meta li::before {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--aos-color-commerce-primary);
	content: "";
}

.aos-dealer-copy .aos-button {
	align-self: flex-start;
	gap: var(--aos-space-3);
	min-width: 248px;
	box-shadow: 0 14px 30px rgba(0, 0, 0, 0.18);
}

.aos-dealer-copy .aos-button svg {
	width: 18px;
	height: 18px;
	transition: transform var(--aos-duration-fast) var(--aos-ease-standard);
}

.aos-motion-ready .aos-brands-section,
.aos-motion-ready .aos-dealer-section {
	opacity: 1;
	transform: none;
	transition: none;
}

.aos-motion-ready .aos-brands-intro > *,
.aos-motion-ready .aos-brand-links a,
.aos-motion-ready .aos-dealer-copy > * {
	opacity: 1;
	transform: none;
}

.aos-motion-ready .aos-brands-section:not(.is-visible) .aos-brand-links::after,
.aos-motion-ready .aos-dealer-section:not(.is-visible) .aos-dealer-banner::before {
	transform: scaleX(0);
}

.aos-motion-ready .aos-dealer-section:not(.is-visible) .aos-dealer-banner > img {
	transform: scale(1.035);
}

.aos-motion-ready .aos-brands-section.is-visible .aos-brands-intro > *,
.aos-motion-ready .aos-brands-section.is-visible .aos-brand-links a,
.aos-motion-ready .aos-dealer-section.is-visible .aos-dealer-copy > * {
	opacity: 1;
	transform: translateY(0);
	animation: aos-ledger-reveal 520ms var(--aos-ease-enter) backwards;
}

.aos-motion-ready .aos-brands-section.is-visible .aos-brands-intro > :nth-child(2) {
	animation-delay: 70ms;
}

.aos-motion-ready .aos-brands-section.is-visible .aos-brands-intro > :nth-child(3) {
	animation-delay: 130ms;
}

.aos-motion-ready .aos-brands-section.is-visible .aos-brands-intro > :nth-child(4) {
	animation-delay: 180ms;
}

.aos-motion-ready .aos-brands-section.is-visible .aos-brand-links a:nth-child(1) {
	animation-delay: 190ms;
}

.aos-motion-ready .aos-brands-section.is-visible .aos-brand-links a:nth-child(2) {
	animation-delay: 235ms;

}

.aos-motion-ready .aos-brands-section.is-visible .aos-brand-links a:nth-child(n + 3) {
	animation-delay: 280ms;
}

.aos-motion-ready .aos-dealer-section.is-visible .aos-dealer-copy > :nth-child(2) {
	animation-delay: 60ms;
}

.aos-motion-ready .aos-dealer-section.is-visible .aos-dealer-copy > :nth-child(3) {
	animation-delay: 120ms;
}

.aos-motion-ready .aos-dealer-section.is-visible .aos-dealer-copy > :nth-child(4) {
	animation-delay: 170ms;
}

.aos-motion-ready .aos-dealer-section.is-visible .aos-dealer-copy > :nth-child(5) {
	animation-delay: 220ms;
}

@keyframes aos-ledger-reveal {
	from {
		opacity: 0.86;
		transform: translateY(12px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (hover: hover) and (pointer: fine) {
	.aos-motion-ready .aos-brands-section.is-visible .aos-brand-links a:hover,
	.aos-brand-links a:hover {
		border-color: var(--aos-color-sage-500);
		background: var(--aos-color-neutral-0);
		box-shadow: var(--aos-shadow-lg);
		transform: translateY(-6px);
	}

	.aos-brand-links a:hover::before {
		opacity: 1;
	}

	.aos-brand-links a:hover::after {
		transform: scaleX(1);
	}

	.aos-brand-links a:hover .aos-brand-count {
		background: var(--aos-color-amber-100);
	}

	.aos-brand-links a:hover .aos-brand-arrow {
		border-color: var(--aos-color-commerce-primary);
		background: var(--aos-color-amber-100);
		transform: translateX(7px);
	}

	.aos-dealer-banner:hover > img {
		transform: scale(1.01);
	}

	.aos-dealer-copy .aos-button:hover {
		transform: translateY(-2px);
	}

	.aos-dealer-copy .aos-button:hover svg {
		transform: translateX(6px);
	}
}

.aos-brand-links a:focus-visible {
	border-color: var(--aos-color-action-primary);
	outline: 3px solid var(--aos-color-action-primary);
	outline-offset: 4px;
	box-shadow: var(--aos-shadow-lg);
	transform: none !important;
}

.aos-brand-links a:focus-visible::after {
	transform: scaleX(1);
	transition: none;
}

.aos-brand-links a:active,
.aos-dealer-copy .aos-button:active {
	box-shadow: var(--aos-shadow-sm);
	transform: scale(0.985) !important;
}

.aos-reviews-section {
	background: var(--aos-color-neutral-0);
}

.aos-review-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--aos-space-4);
}

.aos-review-grid article {
	padding: var(--aos-space-6);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-surface-page);
}

.aos-review-person {
	display: flex;
	align-items: center;
	gap: var(--aos-space-3);
	margin-bottom: var(--aos-space-4);
}

.aos-review-person > div {
	display: grid;
	gap: var(--aos-space-1);
}

.aos-review-person span:not(.aos-review-avatar) {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-200);
}

.aos-review-avatar {
	display: block;
	flex: 0 0 var(--aos-space-12);
	width: var(--aos-space-12);
	height: var(--aos-space-12);
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-surface-brand-soft);
	color: var(--aos-color-brand-primary);
	font-size: var(--aos-font-size-200);
	font-weight: var(--aos-font-weight-bold);
	object-fit: cover;
}

.aos-stars {
	color: var(--aos-color-commerce-hover);
	letter-spacing: 0.08em;
}

.aos-review-grid blockquote {
	margin: var(--aos-space-4) 0;
}

.aos-review-grid cite {
	color: var(--aos-color-text-secondary);
	font-style: normal;
	font-weight: var(--aos-font-weight-semibold);
}

.aos-review-preview .aos-stars {
	opacity: 0.72;
}

.aos-review-preview-note {
	max-width: 720px;
	margin: var(--aos-space-4) auto 0;
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	text-align: center;
}

/* Factual store proof */
.aos-proof-section {
	position: relative;
	scroll-margin-top: 160px;
	background:
		radial-gradient(circle at 88% 18%, rgba(232, 243, 238, 0.82), transparent 32%),
		var(--aos-color-surface-page);
}

.aos-proof-stage {
	position: relative;
	display: grid;
	grid-template-rows: minmax(0, 1fr) auto;
	width: 100%;
	min-height: var(--aos-proof-stage-min-height);
	min-width: 0;
	overflow: hidden;
	border-radius: var(--aos-radius-xl);
	background: var(--aos-color-brand-strong);
	box-shadow: var(--aos-shadow-lg);
	color: var(--aos-color-neutral-0);
	isolation: isolate;
}

.aos-proof-stage::before {
	position: absolute;
	inset: 0;
	z-index: -1;
	background: var(--aos-gradient-proof-scrim);
	content: "";
}

.aos-proof-stage::after {
	position: absolute;
	inset: 0;
	z-index: -1;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px);
	background-size: 48px 48px;
	content: "";
	-webkit-mask-image: linear-gradient(90deg, #000, transparent 72%);
	mask-image: linear-gradient(90deg, #000, transparent 72%);
}

.aos-proof-media {
	position: absolute;
	inset: 0;
	z-index: -2;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center right;
	filter: saturate(0.82) contrast(1.06);
}

.aos-proof-copy {
	align-self: center;
	z-index: 1;
	width: min(650px, 58%);
	min-width: 0;
	padding: clamp(var(--aos-space-8), 6vw, var(--aos-space-16));
}

.aos-proof-copy > p:not(.aos-eyebrow) {
	max-width: 58ch;
	color: var(--aos-color-on-dark-medium);
	font-size: clamp(1rem, 1.4vw, 1.15rem);
	overflow-wrap: anywhere;
}

.aos-proof-copy .aos-eyebrow {
	color: var(--aos-color-commerce-primary);
}

.aos-proof-copy h2 {
	max-width: 15ch;
	margin-bottom: var(--aos-space-5);
	color: var(--aos-color-neutral-0);
	font-size: clamp(2.35rem, 4.35vw, 4.25rem);
	line-height: 0.98;
	text-wrap: balance;
}

.aos-proof-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--aos-space-3);
	margin-top: var(--aos-space-6);
}

.aos-proof-facts {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	min-width: 0;
	margin: 0;
	border-top: 1px solid var(--aos-color-on-dark-subtle);
	background: rgba(15, 27, 41, 0.9);
}

.aos-proof-facts > div {
	display: grid;
	align-content: start;
	gap: var(--aos-space-1);
	min-width: 0;
	padding: clamp(var(--aos-space-4), 2vw, var(--aos-space-6));
	border-right: 1px solid var(--aos-color-on-dark-subtle);
}

.aos-proof-facts > div:last-child {
	border-right: 0;
}

.aos-proof-facts dt {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: var(--aos-space-2);
	margin: 0;
}

.aos-proof-facts strong {
	color: var(--aos-color-commerce-primary);
	font-family: var(--aos-font-family-display);
	font-size: clamp(1.65rem, 2.6vw, 2.65rem);
	line-height: var(--aos-line-height-solid);
}

.aos-proof-facts span {
	color: var(--aos-color-neutral-0);
	font-weight: var(--aos-font-weight-bold);
}

.aos-proof-facts dd {
	margin: 0;
	color: var(--aos-color-on-dark-medium);
	font-size: var(--aos-font-size-100);
}

.aos-motion-ready .aos-proof-media {
	transform: scale(1.025);
	transition: transform 760ms var(--aos-ease-move);
}

.aos-motion-ready .aos-proof-copy > *,
.aos-motion-ready .aos-proof-facts > div {
	opacity: 1;
	transform: none;
	transition: opacity 520ms var(--aos-ease-enter), transform 520ms var(--aos-ease-enter);
}

.aos-motion-ready .aos-proof-section.is-visible .aos-proof-media {
	transform: scale(1);
}

.aos-motion-ready .aos-proof-section.is-visible .aos-proof-copy > *,
.aos-motion-ready .aos-proof-section.is-visible .aos-proof-facts > div {
	opacity: 1;
	transform: translateY(0);
}

.aos-motion-ready .aos-proof-section.is-visible .aos-proof-copy > :nth-child(2) {
	transition-delay: 70ms;
}

.aos-motion-ready .aos-proof-section.is-visible .aos-proof-copy > :nth-child(3) {
	transition-delay: 130ms;
}

.aos-motion-ready .aos-proof-section.is-visible .aos-proof-copy > :nth-child(4) {
	transition-delay: 190ms;
}

.aos-motion-ready .aos-proof-section.is-visible .aos-proof-facts > div:nth-child(1) {
	transition-delay: 220ms;
}

.aos-motion-ready .aos-proof-section.is-visible .aos-proof-facts > div:nth-child(2) {
	transition-delay: 260ms;
}

.aos-motion-ready .aos-proof-section.is-visible .aos-proof-facts > div:nth-child(3) {
	transition-delay: 300ms;
}

.aos-motion-ready .aos-proof-section.is-visible .aos-proof-facts > div:nth-child(4) {
	transition-delay: 340ms;
}

/* Equipment finder */
.aos-finder-section {
	background: var(--aos-color-neutral-0);
}

.aos-finder-shell {
	position: relative;
	display: grid;
	grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
	grid-template-rows: auto 1fr;
	min-height: 520px;
	overflow: hidden;
	border-radius: var(--aos-radius-xl);
	background: var(--aos-color-brand-strong);
	box-shadow: var(--aos-shadow-lg);
}

.aos-finder-shell::before {
	position: absolute;
	inset: 0;
	background-image: linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px), radial-gradient(circle at 80% 20%, rgba(0, 200, 255, 0.34), transparent 42%);
	background-size: 48px 48px, 48px 48px, auto;
	content: "";
	pointer-events: none;
}

.aos-finder-intro,
.aos-finder-controls,
.aos-finder-panels {
	position: relative;
	z-index: 1;
}

.aos-finder-intro {
	grid-row: 1 / 3;
	padding: clamp(var(--aos-space-8), 5vw, var(--aos-space-16));
	border-right: 1px solid var(--aos-color-on-dark-subtle);
}

.aos-finder-intro h2,
.aos-finder-intro p {
	color: var(--aos-color-neutral-0);
}

.aos-finder-intro > p:not(.aos-eyebrow) {
	color: var(--aos-color-on-dark-medium);
}

.aos-finder-intro .aos-eyebrow {
	color: var(--aos-color-green-200);
}

.aos-finder-step {
	display: inline-flex;
	margin-top: var(--aos-space-6);
	padding: var(--aos-space-2) var(--aos-space-3);
	border: 1px solid var(--aos-color-on-dark-subtle);
	border-radius: var(--aos-radius-full);
	color: var(--aos-color-on-dark-high);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-bold);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.aos-finder-controls {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-bottom: 1px solid var(--aos-color-on-dark-subtle);
}

.aos-finder-controls button {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--aos-space-3);
	min-height: 76px;
	padding: var(--aos-space-4) var(--aos-space-5);
	border: 0;
	border-right: 1px solid var(--aos-color-on-dark-subtle);
	background: transparent;
	color: var(--aos-color-on-dark-medium);
	font-weight: var(--aos-font-weight-bold);
	text-align: left;
	transition: color var(--aos-duration-base) var(--aos-ease-standard), background-color var(--aos-duration-base) var(--aos-ease-standard);
}

.aos-finder-controls button:last-child {
	border-right: 0;
}

.aos-finder-controls button[aria-selected="true"] {
	background: var(--aos-color-commerce-primary);
	color: var(--aos-color-brand-strong);
}

.aos-finder-controls .aos-icon {
	flex: 0 0 19px;
	width: 19px;
	height: 19px;
}

.aos-finder-panels {
	min-width: 0;
	padding: clamp(var(--aos-space-5), 3.5vw, var(--aos-space-8));
}

.aos-finder-panel[hidden],
.aos-directory-panel[hidden] {
	display: none;
}

.aos-finder-panel.is-active,
.aos-directory-panel.is-active {
	animation: aos-panel-enter var(--aos-duration-base) var(--aos-ease-move);
}

@keyframes aos-panel-enter {
	from { opacity: 0.65; transform: translateX(8px); }
	to { opacity: 1; transform: translateX(0); }
}

.aos-finder-panel-heading {
	display: grid;
	gap: var(--aos-space-1);
	margin-bottom: var(--aos-space-5);
}

.aos-finder-panel-heading strong {
	color: var(--aos-color-neutral-0);
	font-family: var(--aos-font-family-display);
	font-size: var(--aos-font-size-700);
}

.aos-finder-panel-heading span {
	color: var(--aos-color-on-dark-medium);
}

.aos-finder-options {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--aos-space-3);
}

.aos-finder-options > a {
	display: grid;
	grid-template-columns: 76px minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--aos-space-3);
	min-height: 108px;
	padding: var(--aos-space-3);
	border: 1px solid var(--aos-color-on-dark-subtle);
	border-radius: var(--aos-radius-md);
	background: rgba(255, 255, 255, 0.94);
	color: var(--aos-color-brand-strong);
	text-decoration: none;
	transition: transform var(--aos-duration-fast) var(--aos-ease-standard), background-color var(--aos-duration-fast) var(--aos-ease-standard), box-shadow var(--aos-duration-fast) var(--aos-ease-standard);
}

.aos-finder-options img {
	width: 76px;
	height: 76px;
	border-radius: var(--aos-radius-sm);
	object-fit: cover;
}

.aos-finder-options span {
	display: grid;
	gap: var(--aos-space-1);
	min-width: 0;
}

.aos-finder-options small {
	color: var(--aos-color-text-secondary);
}

@media (hover: hover) and (pointer: fine) {
	.aos-finder-options > a:hover {
		transform: translateY(-3px);
		background: var(--aos-color-neutral-0);
		box-shadow: var(--aos-shadow-md);
	}
}

/* Catalog directory workbench */
.aos-directory-section {
	background: var(--aos-color-surface-page);
}

.aos-directory-workbench {
	display: grid;
	grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
	min-height: 430px;
	border: 2px solid var(--aos-color-action-primary);
	background: var(--aos-color-neutral-0);
	box-shadow: var(--aos-shadow-sm);
}

.aos-directory-tabs {
	display: grid;
	align-content: start;
	border-right: 1px solid var(--aos-color-border-default);
}

.aos-directory-tabs button {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--aos-space-3);
	min-height: 76px;
	padding: var(--aos-space-4) var(--aos-space-5);
	border: 0;
	border-bottom: 1px solid var(--aos-color-border-default);
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-brand-primary);
	font-size: var(--aos-font-size-400);
	font-weight: var(--aos-font-weight-bold);
	text-align: left;
	transition: color var(--aos-duration-base) var(--aos-ease-standard), background-color var(--aos-duration-base) var(--aos-ease-standard);
}

.aos-directory-tabs button[aria-selected="true"] {
	background: var(--aos-color-action-primary);
	color: var(--aos-color-neutral-0);
}

.aos-directory-panels {
	min-width: 0;
	padding: clamp(var(--aos-space-5), 4vw, var(--aos-space-10));
}

.aos-directory-panel-heading p {
	max-width: 66ch;
	color: var(--aos-color-text-secondary);
}

.aos-directory-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--aos-space-4);
	margin-top: var(--aos-space-5);
}

.aos-directory-grid a {
	display: grid;
	grid-template-rows: 180px auto auto;
	padding-bottom: var(--aos-space-4);
	border: 1px solid var(--aos-color-border-default);
	border-top: 3px solid var(--aos-color-action-primary);
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-brand-strong);
	text-align: center;
	text-decoration: none;
	transition: transform var(--aos-duration-fast) var(--aos-ease-standard), box-shadow var(--aos-duration-fast) var(--aos-ease-standard), border-color var(--aos-duration-fast) var(--aos-ease-standard);
}

.aos-directory-grid img {
	width: 100%;
	height: 180px;
	padding: var(--aos-space-3);
	object-fit: contain;
}

.aos-directory-grid strong {
	padding-inline: var(--aos-space-3);
}

.aos-directory-grid small {
	color: var(--aos-color-text-secondary);
}

@media (hover: hover) and (pointer: fine) {
	.aos-directory-grid a:hover {
		transform: translateY(-4px);
		border-top-color: var(--aos-color-commerce-hover);
		box-shadow: var(--aos-shadow-md);
	}
}

/* Human support band */
.aos-support-section {
	padding-top: 0;
	background: var(--aos-color-surface-brand-subtle);
}

.aos-support-band {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(460px, 0.9fr);
	grid-template-rows: auto auto;
	min-height: 390px;
	overflow: hidden;
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-neutral-0);
	box-shadow: var(--aos-shadow-lg);
}

.aos-support-band::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.12) 39%, var(--aos-color-neutral-0) 58%);
	content: "";
	pointer-events: none;
}

.aos-support-band > img {
	position: absolute;
	inset: 0 auto 0 0;
	width: 64%;
	height: 100%;
	object-fit: cover;
	object-position: 72% center;
}

.aos-support-copy,
.aos-support-actions {
	position: relative;
	z-index: 1;
	grid-column: 2;
}

.aos-support-copy {
	align-self: end;
	padding: clamp(var(--aos-space-8), 4vw, var(--aos-space-12)) clamp(var(--aos-space-6), 4vw, var(--aos-space-10)) var(--aos-space-4);
}

.aos-support-copy > p:not(.aos-eyebrow) {
	color: var(--aos-color-text-secondary);
}

.aos-support-actions {
	display: grid;
	gap: var(--aos-space-2);
	align-self: start;
	padding: 0 clamp(var(--aos-space-6), 4vw, var(--aos-space-10)) clamp(var(--aos-space-8), 4vw, var(--aos-space-12));
}

.aos-support-actions > a {
	display: flex;
	align-items: center;
	gap: var(--aos-space-3);
	min-height: 58px;
	padding: var(--aos-space-2) 0;
	border-bottom: 1px solid var(--aos-color-border-default);
	color: var(--aos-color-brand-primary);
	text-decoration: none;
}

.aos-support-actions .aos-icon {
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	color: var(--aos-color-commerce-hover);
}

.aos-support-actions span {
	display: grid;
}

.aos-support-actions small {
	color: var(--aos-color-text-secondary);
}

/* WooCommerce catalog */
.aos-shop-page {
	padding-block: var(--aos-space-8) var(--aos-space-section-y);
	background: var(--aos-color-surface-page);
}

.aos-shop-visual {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 360px;
	margin-bottom: var(--aos-space-8);
	overflow: hidden;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-surface-card);
}

.aos-shop-visual::after {
	position: absolute;
	inset: 0;
	content: "";
	background: var(--aos-gradient-shop-overlay);
}

.aos-shop-visual > img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aos-shop-visual-copy {
	position: relative;
	z-index: 1;
	width: min(56%, 620px);
	padding: var(--aos-space-10);
}

.aos-shop-visual-copy h1 {
	font-size: var(--aos-font-size-title);
}

.aos-shop-visual-copy > :last-child {
	margin-bottom: var(--aos-space-0);
	color: var(--aos-color-text-secondary);
}

.woocommerce .woocommerce-breadcrumb {
	margin-bottom: var(--aos-space-5);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-200);
}

.woocommerce-products-header {
	padding: var(--aos-space-6) 0;
}

.woocommerce-products-header__title.page-title {
	font-size: var(--aos-font-size-title);
}

.term-description {
	max-width: 760px;
	color: var(--aos-color-slate-700);
}

.aos-filter-toggle {
	display: none;
	align-items: center;
	gap: var(--aos-space-2);
	margin-bottom: var(--aos-space-4);
	padding: var(--aos-space-3) var(--aos-space-4);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-brand-strong);
	font-weight: var(--aos-font-weight-bold);
}

.aos-catalog-layout {
	display: grid;
	grid-template-columns: 250px minmax(0, 1fr);
	align-items: start;
	gap: var(--aos-space-6);
	clear: both;
}

.aos-catalog-filters {
	position: sticky;
	top: calc(var(--aos-size-header-utility) + 8rem);
	padding: var(--aos-space-5);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-neutral-0);
}

.aos-filter-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: var(--aos-space-4);
	border-bottom: 1px solid var(--aos-color-border-default);
}

.aos-filter-close {
	display: none;
	border: 0;
	background: transparent;
	font-size: var(--aos-font-size-800);
	line-height: var(--aos-line-height-solid);
}

.aos-filter-group {
	padding: var(--aos-space-4) 0;
	margin: var(--aos-space-0);
	border: 0;
	border-bottom: 1px solid var(--aos-color-border-default);
}

.aos-filter-group legend {
	width: 100%;
	margin-bottom: var(--aos-space-3);
	font-weight: 750;
}

.aos-filter-option {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: var(--aos-space-2);
	min-height: 34px;
	font-size: var(--aos-font-size-300);
}

.aos-filter-option input {
	width: 17px;
	height: 17px;
	accent-color: var(--aos-color-action-primary);
}

.aos-filter-option small {
	color: var(--aos-color-text-secondary);
}

.aos-price-fields {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--aos-space-2);
	margin-bottom: var(--aos-space-3);
}

.aos-price-fields label {
	display: grid;
	gap: var(--aos-space-1);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
}

.aos-price-fields input {
	width: 100%;
	min-height: 40px;
	padding: var(--aos-space-2);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
}

.aos-filter-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--aos-space-3);
	padding-top: var(--aos-space-4);
}

.aos-filter-actions .aos-button {
	padding-inline: var(--aos-space-3);
}

.aos-catalog-results {
	min-width: 0;
}

.woocommerce .woocommerce-result-count {
	margin: var(--aos-space-3) 0 var(--aos-space-4);
	color: var(--aos-color-text-secondary);
}

.aos-support-actions small {
	color: var(--aos-color-text-secondary);
}

/* WooCommerce catalog */
.aos-shop-page {
	padding-block: var(--aos-space-8) var(--aos-space-section-y);
	background: var(--aos-color-surface-page);
}

.aos-shop-visual {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 360px;
	margin-bottom: var(--aos-space-8);
	overflow: hidden;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-surface-card);
}

.aos-shop-visual::after {
	position: absolute;
	inset: 0;
	content: "";
	background: var(--aos-gradient-shop-overlay);
}

.aos-shop-visual > img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aos-shop-visual-copy {
	position: relative;
	z-index: 1;
	width: min(56%, 620px);
	padding: var(--aos-space-10);
}

.aos-shop-visual-copy h1 {
	font-size: var(--aos-font-size-title);
}

.aos-shop-visual-copy > :last-child {
	margin-bottom: var(--aos-space-0);
	color: var(--aos-color-text-secondary);
}

.woocommerce .woocommerce-breadcrumb {
	margin-bottom: var(--aos-space-5);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-200);
}

.woocommerce-products-header {
	padding: var(--aos-space-6) 0;
}

.woocommerce-products-header__title.page-title {
	font-size: var(--aos-font-size-title);
}

.term-description {
	max-width: 760px;
	color: var(--aos-color-slate-700);
}

.aos-filter-toggle {
	display: none;
	align-items: center;
	gap: var(--aos-space-2);
	margin-bottom: var(--aos-space-4);
	padding: var(--aos-space-3) var(--aos-space-4);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-brand-strong);
	font-weight: var(--aos-font-weight-bold);
}

.aos-catalog-layout {
	display: grid;
	grid-template-columns: 250px minmax(0, 1fr);
	align-items: start;
	gap: var(--aos-space-6);
	clear: both;
}

.aos-catalog-filters {
	position: sticky;
	top: calc(var(--aos-size-header-utility) + 8rem);
	padding: var(--aos-space-5);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-neutral-0);
}

.aos-filter-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: var(--aos-space-4);
	border-bottom: 1px solid var(--aos-color-border-default);
}

.aos-filter-close {
	display: none;
	border: 0;
	background: transparent;
	font-size: var(--aos-font-size-800);
	line-height: var(--aos-line-height-solid);
}

.aos-filter-group {
	padding: var(--aos-space-4) 0;
	margin: var(--aos-space-0);
	border: 0;
	border-bottom: 1px solid var(--aos-color-border-default);
}

.aos-filter-group legend {
	width: 100%;
	margin-bottom: var(--aos-space-3);
	font-weight: 750;
}

.aos-filter-option {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: var(--aos-space-2);
	min-height: 34px;
	font-size: var(--aos-font-size-300);
}

.aos-filter-option input {
	width: 17px;
	height: 17px;
	accent-color: var(--aos-color-action-primary);
}

.aos-filter-option small {
	color: var(--aos-color-text-secondary);
}

.aos-price-fields {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--aos-space-2);
	margin-bottom: var(--aos-space-3);
}

.aos-price-fields label {
	display: grid;
	gap: var(--aos-space-1);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
}

.aos-price-fields input {
	width: 100%;
	min-height: 40px;
	padding: var(--aos-space-2);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
}

.aos-filter-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--aos-space-3);
	padding-top: var(--aos-space-4);
}

.aos-filter-actions .aos-button {
	padding-inline: var(--aos-space-3);
}

.aos-catalog-results {
	min-width: 0;
}

.woocommerce .woocommerce-result-count {
	margin: var(--aos-space-3) 0 var(--aos-space-4);
	color: var(--aos-color-text-secondary);
}

.woocommerce .woocommerce-ordering {
	margin: 0 0 var(--aos-space-4);
}

.woocommerce .woocommerce-ordering select {
	appearance: none;
	-webkit-appearance: none;
	min-height: 42px;
	padding: var(--aos-space-2) var(--aos-space-10) var(--aos-space-2) var(--aos-space-3);
	border: 1px solid var(--aos-color-border-default);
	border-radius: 0;
	background-color: var(--aos-color-neutral-0);
	background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" fill="none" stroke="%2317211e" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-down"><polyline points="6 9 12 15 18 9"></polyline></svg>');
	background-repeat: no-repeat;
	background-position: right var(--aos-space-3) center;
	background-size: 1em;
	cursor: pointer;
	box-shadow: none;
	transition: border-color var(--aos-duration-fast) var(--aos-ease-standard);
}

.woocommerce .woocommerce-ordering select:focus,
.woocommerce .woocommerce-ordering select:hover {
	border-color: var(--aos-color-action-primary);
	outline: none;
}

.woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--aos-space-4);
	clear: both;
	padding: var(--aos-space-0);
	margin: var(--aos-space-0);
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
	display: none;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	position: relative;
	display: flex;
	float: none;
	flex-direction: column;
	width: auto;
	min-width: 0;
	padding: var(--aos-space-0) var(--aos-space-0) var(--aos-space-4);
	margin: var(--aos-space-0);
	overflow: hidden;
	border: 1px solid var(--aos-color-border-default);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.woocommerce .aos-catalog-results ul.products[class*="columns-"],
.woocommerce-page .aos-catalog-results ul.products[class*="columns-"] {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--aos-space-4);
}

.woocommerce .aos-catalog-results ul.products[class*="columns-"] > li.product,
.woocommerce-page .aos-catalog-results ul.products[class*="columns-"] > li.product {
	float: none !important;
	clear: none !important;
	width: 100% !important;
	max-width: none;
	min-width: 0;
	height: 100%;
	margin: 0 !important;
	align-self: stretch;
}

@media (hover: hover) and (pointer: fine) {
	.woocommerce .aos-catalog-results ul.products li.product {
		transition: transform var(--aos-duration-base) var(--aos-ease-standard), border-color var(--aos-duration-fast) var(--aos-ease-standard), box-shadow var(--aos-duration-base) var(--aos-ease-standard);
	}

	.woocommerce .aos-catalog-results ul.products li.product:hover {
		border-color: var(--aos-color-border-strong);
		box-shadow: var(--aos-shadow-lg);
		transform: translateY(-4px);
	}
}

.woocommerce ul.products li.product > a:first-child {
	display: flex;
	flex: 1;
	flex-direction: column;
	color: var(--aos-color-text-primary);
	text-decoration: none;
}

.woocommerce ul.products li.product a img {
	width: 100%;
	aspect-ratio: 1;
	padding: var(--aos-space-4);
	margin: var(--aos-space-0);
	object-fit: contain;
	background: var(--aos-color-neutral-0);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .star-rating,
.woocommerce ul.products li.product .aos-product-meta {
	margin-inline: var(--aos-space-4);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box;
	min-height: 3.65em;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	padding: var(--aos-space-0);
	font-size: var(--aos-font-size-400);
	line-height: var(--aos-line-height-heading);
}

.woocommerce ul.products li.product .price {
	margin-top: auto;
	color: var(--aos-color-brand-primary);
	font-size: var(--aos-font-size-500);
	font-weight: 800;
}

.woocommerce ul.products li.product .button {
	margin: var(--aos-space-4) var(--aos-space-4) 0;
}

.woocommerce ul.products li.product .aos-loop-login-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: var(--aos-size-control-md);
	white-space: normal;
	text-align: center;
}

.woocommerce nav.woocommerce-pagination {
	clear: both;
	padding-top: var(--aos-space-8);
}

.woocommerce-account #customer_login form.login,
.woocommerce-account #customer_login form.register {
	padding: 0;
	border: 0;
}

.woocommerce-account #customer_login input.input-text {
	min-height: var(--aos-size-control-md);
	border-radius: var(--aos-radius-sm);
}

.aos-product-page {
	position: relative;
	isolation: isolate;
	overflow: clip;
	background: var(--aos-color-surface-page);
}

.aos-product-page::before,
.aos-product-page::after {
	position: absolute;
	inset: 0;
	z-index: -2;
	pointer-events: none;
	content: "";
}

.aos-product-page::before {
	background: radial-gradient(circle at 17% 22%, rgba(232, 243, 238, 0.92), transparent 38%), radial-gradient(circle at 82% 32%, rgba(255, 241, 216, 0.45), transparent 30%);
}

.aos-product-page::after {
	z-index: -1;
	background-image: linear-gradient(rgba(0, 123, 181, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 123, 181, 0.035) 1px, transparent 1px);
	background-size: 52px 52px;
	-webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.65), transparent 64%);
	mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.65), transparent 64%);
}

.single-product .woocommerce-breadcrumb {
	margin: 0 0 var(--aos-space-6);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-200);
}

.single-product .woocommerce-breadcrumb a {
	color: var(--aos-color-action-hover);
}

.single-product.woocommerce div.product {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	column-gap: clamp(var(--aos-space-8), 4vw, var(--aos-space-16));
	row-gap: clamp(var(--aos-space-6), 2.4vw, var(--aos-space-8));
}

.single-product.woocommerce div.product::before,
.single-product.woocommerce div.product::after {
	display: none;
	content: none;
}

.single-product.woocommerce div.product > .woocommerce-product-gallery,
.single-product.woocommerce div.product > .summary {
	float: none !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
}

.single-product.woocommerce div.product > .woocommerce-product-gallery {
	display: block;
	position: relative;
	--aos-product-shift-x: 0px;
	--aos-product-shift-y: 0px;
	--aos-product-tilt-x: 0deg;
	--aos-product-tilt-y: 0deg;
	padding: var(--aos-space-0);
	border: none;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.single-product .woocommerce-product-gallery::before {
	display: none;
}

.single-product .woocommerce-product-gallery > * {
	position: relative;
	z-index: 1;
}

.single-product.woocommerce div.product .woocommerce-product-gallery__image > a > img:not(.zoomImg) {
	width: 100%;
	max-height: 660px;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-neutral-0);
	object-fit: contain;
}

.single-product.woocommerce div.product .woocommerce-product-gallery__image .zoomImg {
	max-width: none;
	max-height: none;
	border-radius: 0;
	object-fit: initial;
}

@media (hover: hover) and (pointer: fine) {
	.single-product .woocommerce-product-gallery {
		perspective: 1200px;
	}

	.single-product .woocommerce-product-gallery__image > a {
		display: block;
		transform:
			translate3d(var(--aos-product-shift-x), var(--aos-product-shift-y), 0)
			rotateX(var(--aos-product-tilt-x))
			rotateY(var(--aos-product-tilt-y))
			scale(1);
		transform-style: preserve-3d;
		transition:
			transform var(--aos-duration-product-media) var(--aos-ease-standard),
			filter var(--aos-duration-product-media) var(--aos-ease-standard);
	}

	.single-product .woocommerce-product-gallery.is-pointer-active .woocommerce-product-gallery__image > a {
		filter: drop-shadow(0 16px 18px rgba(15, 27, 41, 0.12));
		will-change: transform;
		transform:
			translate3d(var(--aos-product-shift-x), var(--aos-product-shift-y), 0)
			rotateX(var(--aos-product-tilt-x))
			rotateY(var(--aos-product-tilt-y))
			scale(var(--aos-product-media-scale));
	}
}

.single-product .woocommerce-product-gallery .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 82px));
	gap: var(--aos-space-2);
	margin-top: var(--aos-space-4);
	padding: 0;
	list-style: none;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li {
	float: none;
	width: auto;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-neutral-0);
	cursor: pointer;
	overflow: hidden;
	transition:
		border-color var(--aos-duration-fast) var(--aos-ease-standard),
		box-shadow var(--aos-duration-fast) var(--aos-ease-standard);
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li img {
	width: 100%;
	height: auto;
	object-fit: contain;
	transition: opacity var(--aos-duration-fast) var(--aos-ease-standard);
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li img:hover,
.single-product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
	opacity: 1;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li:has(img.flex-active) {
	border-color: var(--aos-color-action-primary);
	box-shadow: var(--aos-focus-ring);
}

.single-product .woocommerce-product-gallery .flex-direction-nav {
	position: absolute;
	top: 50%;
	width: 100%;
	transform: translateY(-50%);
	pointer-events: none;
	margin: 0;
	padding: 0;
	list-style: none;
	z-index: 10;
}

.single-product .woocommerce-product-gallery .flex-direction-nav a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: var(--aos-color-neutral-0);
	border: 1px solid var(--aos-color-border-default);
	border-radius: 50%;
	text-decoration: none;
	color: var(--aos-color-text-primary);
	font-size: 0;
	position: absolute;
	pointer-events: auto;
	box-shadow: var(--aos-shadow-sm);
	transition:
		background-color var(--aos-duration-fast) var(--aos-ease-standard),
		border-color var(--aos-duration-fast) var(--aos-ease-standard),
		transform var(--aos-duration-fast) var(--aos-ease-standard);
}

.single-product .woocommerce-product-gallery .flex-direction-nav a:hover {
	border-color: var(--aos-color-action-primary);
	background: var(--aos-color-surface-brand-subtle);
	transform: scale(1.04);
}

.single-product .woocommerce-product-gallery .flex-direction-nav a:focus-visible {
	outline: none;
	box-shadow: var(--aos-focus-ring);
}

.single-product .woocommerce-product-gallery .flex-direction-nav a.flex-prev {
	left: var(--aos-space-3);
}

.single-product .woocommerce-product-gallery .flex-direction-nav a.flex-prev::before {
	content: "<";
	font-size: 1.2rem;
	line-height: 1;
}

.single-product .woocommerce-product-gallery .flex-direction-nav a.flex-next {
	right: var(--aos-space-3);
}

.single-product .woocommerce-product-gallery .flex-direction-nav a.flex-next::before {
	content: ">";
	font-size: 1.2rem;
	line-height: 1;
}

.single-product.woocommerce div.product > .summary {
	position: relative;
	padding: var(--aos-space-0);
	border: none;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.single-product.woocommerce div.product > .summary::before {
	position: absolute;
	top: 2px;
	left: -16px;
	width: 4px;
	height: 46px;
	border-radius: 0 var(--aos-radius-xs) var(--aos-radius-xs) 0;
	background: var(--aos-color-commerce-primary);
	content: "";
}

.aos-product-console-label {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--aos-space-3);
	margin: 0 0 var(--aos-space-3);
	color: var(--aos-color-action-primary);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-bold);
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.aos-product-availability {
	display: inline-flex;
	align-items: center;
	gap: var(--aos-space-2);
	letter-spacing: 0;
	text-transform: none;
}

.aos-product-availability::before {
	width: 8px;
	height: 8px;
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-state-danger);
	content: "";
}

.aos-product-availability.is-available::before {
	background: var(--aos-color-state-success);
	box-shadow: 0 0 0 4px rgba(0, 123, 181, 0.12);
}

.single-product.woocommerce div.product .product_title {
	max-width: 19ch;
	margin: 0 0 var(--aos-space-4);
	font-family: var(--aos-font-family-display);
	font-size: clamp(2rem, 3vw, 3rem);
	line-height: 1.02;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.single-product.woocommerce div.product > .summary p.price,
.single-product.woocommerce div.product > .summary span.price {
	margin: 0 0 var(--aos-space-4);
	color: var(--aos-color-brand-primary);
	font-size: clamp(1.4rem, 2.3vw, 2rem);
	font-weight: 800;
	line-height: var(--aos-line-height-tight);
}

.single-product.woocommerce div.product > .summary p.price .aos-price-login-link,
.single-product.woocommerce div.product > .summary span.price .aos-price-login-link {
	width: fit-content;
	padding: var(--aos-space-3) var(--aos-space-4);
}

.single-product.woocommerce div.product > .summary p.price .aos-price-login-link strong,
.single-product.woocommerce div.product > .summary span.price .aos-price-login-link strong {
	font-size: var(--aos-font-size-300);
}

.aos-klarna-message {
	display: none;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: var(--aos-space-3);
	width: 100%;
	padding: var(--aos-space-3);
	margin: 0 0 var(--aos-space-4);
	border: 1px solid color-mix(in srgb, var(--aos-color-payment-klarna) 58%, var(--aos-color-border-default));
	border-radius: var(--aos-radius-md);
	background: color-mix(in srgb, var(--aos-color-payment-klarna) 12%, var(--aos-color-neutral-0));
	box-shadow: var(--aos-shadow-sm);
}

.aos-klarna-message.is-mounting {
	position: absolute;
	display: grid;
	width: calc(100% - (var(--aos-space-6) * 2));
	opacity: 0;
	pointer-events: none;
}

.aos-klarna-message.is-ready {
	display: grid;
	animation: aos-klarna-message-enter var(--aos-motion-base) var(--aos-ease-enter) both;
}

.aos-klarna-message-brand {
	display: inline-grid;
	place-items: center;
	min-width: 76px;
	min-height: 38px;
	padding: var(--aos-space-2) var(--aos-space-3);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-payment-klarna);
	color: var(--aos-color-payment-klarna-ink);
	font-size: var(--aos-font-size-300);
	font-weight: 800;
	letter-spacing: -0.025em;
}

.aos-klarna-message-copy {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.aos-klarna-message-label {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-050);
	font-weight: var(--aos-font-weight-bold);
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.aos-klarna-message-mount {
	min-height: 22px;
}

.aos-klarna-message-copy small {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-050);
	line-height: var(--aos-line-height-copy);
}

@keyframes aos-klarna-message-enter {
	from {
		opacity: 0;
		transform: translateY(8px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.aos-product-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	overflow: hidden;
	margin-bottom: var(--aos-space-4);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-border-default);
}

.aos-product-fact {
	display: grid;
	align-content: center;
	gap: var(--aos-space-1);
	min-height: 64px;
	padding: var(--aos-space-3);
	background: var(--aos-color-surface-brand-subtle);
}

.aos-product-fact small {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-050);
	font-weight: var(--aos-font-weight-bold);
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.aos-product-fact strong {
	overflow-wrap: anywhere;
	font-size: var(--aos-font-size-200);
	line-height: var(--aos-line-height-heading);
}

.single-product .woocommerce-product-details__short-description {
	padding-left: var(--aos-space-4);
	margin-bottom: var(--aos-space-2);
	border-left: 3px solid var(--aos-color-border-strong);
	color: var(--aos-color-slate-700);
	line-height: 1.55;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.single-product .woocommerce-product-details__short-description > :last-child {
	margin-bottom: 0;
}

.aos-quick-specs {
	padding: var(--aos-space-4);
	margin-bottom: var(--aos-space-5);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-surface-page);
}

.aos-quick-specs h2 {
	margin: 0 0 var(--aos-space-3);
	font-size: var(--aos-font-size-400);
}

.aos-quick-specs dl {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--aos-space-3) var(--aos-space-4);
	margin: 0;
}

.aos-quick-specs dl > div {
	display: grid;
	gap: var(--aos-space-1);
}

.aos-quick-specs dt {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
}

.aos-quick-specs dd {
	margin: 0;
	font-weight: var(--aos-font-weight-bold);
	line-height: var(--aos-line-height-heading);
}

.aos-configuration-heading {
	display: grid;
	gap: var(--aos-space-1);
	padding-top: var(--aos-space-4);
	margin-top: 0;
	margin-bottom: var(--aos-space-3);
	border-top: 1px solid var(--aos-color-border-default);
}

.aos-configuration-heading > span {
	font-size: var(--aos-font-size-400);
	font-weight: var(--aos-font-weight-bold);
}

.aos-configuration-heading small {
	color: var(--aos-color-text-secondary);
	line-height: var(--aos-line-height-copy);
}

.aos-purchase-login-gate {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: var(--aos-space-4);
	padding: var(--aos-space-5);
	margin-top: var(--aos-space-4);
	border: 1px solid var(--aos-color-border-default);
	border-left: 4px solid var(--aos-color-commerce-primary);
	border-radius: var(--aos-radius-md);
	background: linear-gradient(135deg, var(--aos-color-surface-brand-subtle), var(--aos-color-neutral-0));
	box-shadow: var(--aos-shadow-sm);
}

.aos-purchase-login-icon {
	display: inline-grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-brand-primary);
	color: var(--aos-color-neutral-0);
}

.aos-purchase-login-icon .aos-icon {
	width: 23px;
	height: 23px;
}

.aos-purchase-login-gate h2 {
	margin: 0 0 var(--aos-space-2);
	font-size: var(--aos-font-size-500);
	line-height: var(--aos-line-height-heading);
}

.aos-purchase-login-gate p:not(.aos-eyebrow) {
	margin: 0;
	color: var(--aos-color-text-secondary);
	line-height: var(--aos-line-height-copy);
}

.aos-purchase-login-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--aos-space-2);
	margin-top: var(--aos-space-4);
}

.aos-purchase-login-actions .aos-button {
	min-height: var(--aos-size-control-md);
	padding: var(--aos-space-2) var(--aos-space-4);
}

@media (max-width: 560px) {
	.aos-purchase-login-gate {
		grid-template-columns: 1fr;
		padding: var(--aos-space-4);
	}

	.aos-purchase-login-actions {
		display: grid;
	}

	.aos-purchase-login-actions .aos-button {
		width: 100%;
	}
}

.single-product.woocommerce div.product form.cart {
	display: block;
	padding: 0;
	margin: 0;
	border: 0;
}

.single-product.woocommerce div.product form.cart::before,
.single-product.woocommerce div.product form.cart::after {
	display: none !important;
	content: none !important;
}

.single-product .product-type-variable form.variations_form table.variations,
.single-product .product-type-variable form.variations_form table.variations tbody,
.single-product .product-type-variable form.variations_form table.variations tr,
.single-product .product-type-variable form.variations_form table.variations th,
.single-product .product-type-variable form.variations_form table.variations td {
	display: block;
	width: 100%;
}

.single-product .product-type-variable form.variations_form table.variations {
	padding: var(--aos-space-4);
	margin: 0 0 var(--aos-space-4);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-surface-brand-subtle);
}

.single-product .product-type-variable form.variations_form table.variations tr + tr {
	padding-top: var(--aos-space-4);
	margin-top: var(--aos-space-4);
	border-top: 1px solid var(--aos-color-border-default);
}

.single-product .product-type-variable form.variations_form table.variations th,
.single-product .product-type-variable form.variations_form table.variations td {
	padding: 0;
	text-align: left;
}

.single-product .product-type-variable form.variations_form table.variations th.label {
	margin-bottom: var(--aos-space-2);
	font-size: var(--aos-font-size-300);
}

.single-product .product-type-variable form.variations_form table.variations select {
	width: 100%;
	min-height: 52px;
	padding: var(--aos-space-3) var(--aos-space-10) var(--aos-space-3) var(--aos-space-3);
	border: 1px solid var(--aos-color-border-strong);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-text-primary);
	font: inherit;
	transition: border-color var(--aos-duration-fast) var(--aos-ease-standard), box-shadow var(--aos-duration-fast) var(--aos-ease-standard), background-color var(--aos-duration-fast) var(--aos-ease-standard);
}

.single-product .product-type-variable form.variations_form table.variations select:focus {
	border-color: var(--aos-color-commerce-primary);
	box-shadow: 0 0 0 3px rgba(242, 166, 64, 0.18);
	outline: 0;
}

.single-product .reset_variations {
	display: inline-flex;
	min-height: 32px;
	align-items: center;
	margin-top: var(--aos-space-2);
	font-size: var(--aos-font-size-200);
}

.single-product .woocommerce-variation {
	padding: var(--aos-space-3) var(--aos-space-4);
	margin-bottom: var(--aos-space-3);
	border-left: 3px solid var(--aos-color-commerce-primary);
	background: var(--aos-color-surface-commerce-soft);
	animation: aos-console-state var(--aos-duration-base) var(--aos-ease-standard) both;
}

@keyframes aos-console-state {
	from { opacity: 0.72; transform: translateY(6px); }
	to { opacity: 1; transform: translateY(0); }
}

.single-product .woocommerce-variation > :last-child,
.single-product .woocommerce-variation-description > :last-child {
	margin-bottom: 0;
}

.single-product .woocommerce-variation-add-to-cart,
.single-product.woocommerce div.product form.cart:not(.variations_form) {
	display: grid;
	grid-template-columns: 88px minmax(0, 1fr);
	align-items: stretch;
	gap: var(--aos-space-3);
}

.single-product #wc-stripe-express-checkout-element.aos-provider-surface-ready:not([style*="display:none"]):not([style*="display: none"]) {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--aos-space-2);
	grid-column: 1 / -1;
	width: 100%;
	min-width: 0;
	margin: var(--aos-space-4) 0 0 !important;
}

.single-product #wc-stripe-express-checkout-element:empty {
	display: none !important;
	margin: 0 !important;
}

.single-product #wc-stripe-express-checkout-element > div[id^="wc-stripe-express-checkout-element-"] {
	width: 100% !important;
	min-width: 0 !important;
	flex: 0 0 100% !important;
}

.single-product #wc-stripe-express-checkout-element.aos-provider-surface-ready > :only-child,
.single-product #wc-stripe-express-checkout-element.aos-provider-surface-ready > :last-child:nth-child(odd) {
	grid-column: 1 / -1;
}

.single-product #wc-stripe-express-checkout-element iframe {
	display: block;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

.single-product .woocommerce-variation-add-to-cart-disabled {
	opacity: 0.58;
}

body.woocommerce div.product form.cart button.single_add_to_cart_button.button,
body.woocommerce div.product form.cart button.single_add_to_cart_button.button.alt {
	width: 100%;
	min-height: var(--aos-size-control-md);
	border-color: var(--aos-color-action-primary) !important;
	border-radius: var(--aos-radius-md) !important;
	background: var(--aos-color-action-primary) !important;
	color: var(--aos-color-text-on-dark) !important;
	box-shadow: 0 10px 24px rgba(0, 123, 181, 0.18) !important;
	transition: transform var(--aos-duration-fast) var(--aos-ease-standard), background-color var(--aos-duration-fast) var(--aos-ease-standard), box-shadow var(--aos-duration-fast) var(--aos-ease-standard) !important;
}

body.woocommerce div.product form.cart button.single_add_to_cart_button.button:hover,
body.woocommerce div.product form.cart button.single_add_to_cart_button.button.alt:hover {
	border-color: var(--aos-color-action-hover) !important;
	background: var(--aos-color-action-hover) !important;
	color: var(--aos-color-text-on-dark) !important;
	box-shadow: 0 14px 30px rgba(0, 123, 181, 0.24) !important;
	transform: translateY(-1px);
}

.woocommerce .quantity .qty {
	width: 100%;
	min-height: var(--aos-size-control-md);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
}

.aos-purchase-assurance {
	display: grid;
	gap: var(--aos-space-3);
	padding-top: var(--aos-space-5);
	border-top: 1px solid var(--aos-color-border-default);
}

.aos-purchase-assurance > div {
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr);
	align-items: start;
	gap: var(--aos-space-3);
}

.aos-purchase-assurance-icon {
	display: inline-grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-surface-brand-soft);
	color: var(--aos-color-action-primary);
}

.aos-purchase-assurance-icon .aos-icon {
	width: 20px;
	height: 20px;
}

.aos-purchase-assurance strong,
.aos-purchase-assurance small {
	display: block;
}

.aos-purchase-assurance small {
	margin-top: 2px;
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-200);
	line-height: var(--aos-line-height-copy);
}

.single-product .product_meta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--aos-space-2) var(--aos-space-4);
	padding-top: var(--aos-space-4);
	margin-top: var(--aos-space-5);
	border-top: 1px solid var(--aos-color-border-default);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-200);
}

.single-product.woocommerce div.product > .woocommerce-tabs,
.single-product.woocommerce div.product > .aos-product-decision-rail,
.single-product.woocommerce div.product > .aos-product-engineering,
.single-product.woocommerce div.product > .aos-product-support,
.single-product.woocommerce div.product > .related,
.single-product.woocommerce div.product > .upsells {
	grid-column: 1 / -1;
}

.single-product.woocommerce div.product > .woocommerce-tabs {
	padding: clamp(var(--aos-space-6), 4vw, var(--aos-space-10));
	margin-top: 0;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-xl);
	background: var(--aos-color-surface-card);
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex;
	flex-wrap: wrap;
	gap: var(--aos-space-2);
	padding: var(--aos-space-0);
	margin-bottom: var(--aos-space-6);
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
	display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	padding: var(--aos-space-0);
	margin: var(--aos-space-0);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-neutral-0);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	border-color: var(--aos-color-action-primary);
	background: var(--aos-color-surface-brand-soft);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	padding: var(--aos-space-3) var(--aos-space-4);
}

.single-product.woocommerce div.product .woocommerce-tabs .panel {
	max-width: none;
	margin-bottom: 0;
	color: var(--aos-color-slate-700);
}

.aos-product-document {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(250px, 310px);
	align-items: start;
	gap: clamp(var(--aos-space-6), 4vw, var(--aos-space-12));
}

.aos-product-document-main,
.aos-product-document-rail,
.aos-specification-document,
.aos-order-support-document {
	min-width: 0;
}

.aos-product-document-main h2,
.aos-specification-document h2,
.aos-order-support-document h2 {
	margin: 0 0 var(--aos-space-5);
	font-size: clamp(1.85rem, 3vw, 2.75rem);
	line-height: var(--aos-line-height-tight);
}

.aos-product-document-rail {
	display: grid;
	gap: var(--aos-space-5);
	padding: var(--aos-space-5);
	border-left: 3px solid var(--aos-color-commerce-primary);
	background: var(--aos-color-surface-brand-subtle);
}

.aos-product-document-rail dl,
.aos-product-document-rail p {
	margin: 0;
}

.aos-product-document-rail dl {
	display: grid;
	gap: var(--aos-space-3);
}

.aos-product-document-rail dl > div {
	display: grid;
	gap: 2px;
	padding-bottom: var(--aos-space-3);
	border-bottom: 1px solid var(--aos-color-border-default);
}

.aos-product-document-rail dt {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-050);
	font-weight: var(--aos-font-weight-bold);
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.aos-product-document-rail dd {
	margin: 0;
	color: var(--aos-color-brand-strong);
	font-weight: var(--aos-font-weight-bold);
	overflow-wrap: anywhere;
}

.aos-product-resources,
.aos-product-record-help {
	display: grid;
	gap: var(--aos-space-2);
}

.aos-product-description-prose {
	overflow-wrap: anywhere;
}

.aos-product-description-prose img,
.aos-product-description-prose video,
.aos-product-description-prose iframe,
.aos-product-description-prose svg {
	max-width: 100%;
	height: auto;
}

.aos-product-description-prose iframe {
	width: 100%;
	aspect-ratio: 16 / 9;
}

.aos-product-description-prose table {
	display: block;
	max-width: 100%;
	overflow-x: auto;
}

.aos-specification-document > header,
.aos-order-support-document > header {
	max-width: 72ch;
	margin-bottom: var(--aos-space-8);
}

.aos-specification-ledger {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0 0 var(--aos-space-8);
	border-top: 1px solid var(--aos-color-border-default);
	border-left: 1px solid var(--aos-color-border-default);
}

.aos-specification-ledger > div {
	display: grid;
	grid-template-columns: minmax(110px, 0.44fr) minmax(0, 0.56fr);
	gap: var(--aos-space-3);
	padding: var(--aos-space-4);
	border-right: 1px solid var(--aos-color-border-default);
	border-bottom: 1px solid var(--aos-color-border-default);
}

.aos-specification-ledger dt {
	color: var(--aos-color-text-secondary);
	font-weight: var(--aos-font-weight-bold);
}

.aos-specification-ledger dd {
	margin: 0;
	color: var(--aos-color-brand-strong);
	overflow-wrap: anywhere;
}

.aos-catalog-attributes {
	max-width: 960px;
}

.aos-order-support-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	padding: 1px;
	margin: 0 0 var(--aos-space-6);
	background: var(--aos-color-border-default);
	list-style: none;
}

.aos-order-support-steps li {
	display: grid;
	align-content: start;
	gap: var(--aos-space-3);
	padding: var(--aos-space-5);
	background: var(--aos-color-surface-card);
}

.aos-order-support-steps li > .aos-icon {
	color: var(--aos-color-action-primary);
	width: 28px;
	height: 28px;
}

.aos-order-support-steps p {
	margin: 0;
}

.aos-order-support-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--aos-space-3);
}

.single-product.woocommerce div.product .woocommerce-tabs .panel > h2:first-child {
	font-size: clamp(1.7rem, 3vw, 2.5rem);
}

.single-product .woocommerce-product-attributes {
	border: 1px solid var(--aos-color-border-default);
}

.single-product .woocommerce-product-attributes th,
.single-product .woocommerce-product-attributes td {
	padding: var(--aos-space-3) var(--aos-space-4);
	border-color: var(--aos-color-border-default);
}

.aos-product-support {
	clear: both;
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	overflow: hidden;
	margin-block: 0;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-xl);
	background: var(--aos-color-surface-card);
	box-shadow: var(--aos-shadow-sm);
}

.single-product .aos-product-support.aos-section {
	padding-block: 0;
	opacity: 1;
	transform: none;
}

.aos-product-support-media {
	min-height: 360px;
	background: var(--aos-color-surface-brand-soft);
}

.aos-product-support-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aos-product-support-copy {
	display: grid;
	align-content: center;
	justify-items: start;
	gap: var(--aos-space-4);
	padding: clamp(var(--aos-space-6), 5vw, var(--aos-space-12));
}

.aos-product-support-copy h2,
.aos-product-support-copy p,
.aos-product-support-copy ul {
	margin: var(--aos-space-0);
}

.aos-product-support-copy ul {
	display: grid;
	gap: var(--aos-space-2);
	padding-left: var(--aos-space-5);
	color: var(--aos-color-text-muted);
}

.single-product .related.products {
	position: relative;
	width: 100%;
	padding: clamp(var(--aos-space-6), 4vw, var(--aos-space-10));
	margin-top: 0;
	overflow: hidden;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-xl);
	background: var(--aos-color-surface-brand-subtle);
	box-shadow: var(--aos-shadow-sm);
}

.single-product .related.products > h2 {
	display: flex;
	align-items: center;
	gap: var(--aos-space-4);
	margin: 0 0 var(--aos-space-8);
	font-size: clamp(var(--aos-font-size-800), 3vw, 2.5rem);
	line-height: var(--aos-line-height-tight);
}

.single-product .related.products > h2::after {
	width: min(88px, 18vw);
	height: 3px;
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-commerce-primary);
	content: "";
}

.single-product .aos-related-carousel {
	overflow: visible;
}

.single-product .aos-related-viewport {
	overflow: hidden;
	padding: var(--aos-space-1) var(--aos-space-1) var(--aos-space-3);
}

.single-product .aos-related-track > .aos-product-card {
	flex-basis: calc((100% - (var(--aos-space-4) * 3)) / 4);
}

@media (max-width: 1080px) {
	.single-product .aos-related-track > .aos-product-card {
		flex-basis: calc((100% - (var(--aos-space-4) * 2)) / 3);
	}
}

@media (max-width: 820px) {
	.single-product .aos-related-track > .aos-product-card {
		flex-basis: calc((100% - var(--aos-space-4)) / 2);
	}
}

@media (max-width: 560px) {
	.single-product .aos-related-track > .aos-product-card {
		flex-basis: calc(100% - clamp(28px, 8vw, 40px));
	}
}

.single-product .related.products ul.products {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--aos-size-related-card-min)), var(--aos-size-related-card-max)));
	justify-content: center;
	gap: var(--aos-space-5);
}

.single-product .related.products ul.products li.product {
	float: none;
	width: 100% !important;
	max-width: var(--aos-size-related-card-max);
	height: 100%;
	margin: 0;
	border: 1px solid color-mix(in srgb, var(--aos-color-border-default) 82%, transparent);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	transition:
		border-color var(--aos-duration-fast) var(--aos-ease-standard);
}

.single-product .related.products ul.products li.product > a:first-child {
	min-height: 0;
}

.single-product .related.products ul.products li.product a img {
	aspect-ratio: 4 / 3;
	padding: clamp(var(--aos-space-5), 3vw, var(--aos-space-8));
	background: linear-gradient(180deg, var(--aos-color-surface-brand-subtle), var(--aos-color-surface-card));
	transform: scale(1);
	transition: transform var(--aos-duration-base) var(--aos-ease-standard);
}

.single-product .related.products ul.products li.product .aos-product-meta {
	order: 1;
	margin-top: var(--aos-space-5);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-200);
	font-weight: var(--aos-font-weight-semibold);
	letter-spacing: 0.02em;
}

.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
	order: 2;
	min-height: calc(2em * var(--aos-line-height-heading));
	margin-top: var(--aos-space-2);
	-webkit-line-clamp: 2;
	font-size: var(--aos-font-size-500);
}

.single-product .related.products ul.products li.product .price {
	display: block;
	order: 3;
	min-height: 1.5em;
	padding-top: var(--aos-space-5);
	margin-top: auto;
	overflow: hidden;
	font-size: var(--aos-font-size-600);
	font-variant-numeric: tabular-nums;
	letter-spacing: -0.02em;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.single-product .related.products ul.products li.product .price .woocommerce-Price-amount {
	white-space: nowrap;
}

.single-product .related.products ul.products li.product .button,
.single-product .related.products ul.products li.product .aos-loop-login-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: calc(100% - (2 * var(--aos-space-4)));
	min-height: var(--aos-size-control-md);
	margin: var(--aos-space-4) var(--aos-space-4) 0;
	text-align: center;
}

.single-product .related.products ul.products li.product:focus-within {
	border-color: var(--aos-color-border-strong);
	box-shadow: var(--aos-shadow-lg);
}

@media (hover: hover) and (pointer: fine) {
	.single-product .related.products ul.products li.product:hover {
		border-color: var(--aos-color-border-strong);
		box-shadow: none;
		transform: none;
	}

	.single-product .related.products ul.products li.product:hover a img,
	.single-product .related.products ul.products li.product:focus-within a img {
		transform: scale(var(--aos-product-media-scale));
	}
}

.woocommerce table.shop_table {
	border-color: var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	padding: var(--aos-space-4);
	border-color: var(--aos-color-border-default);
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single {
	min-height: var(--aos-size-control-md);
	padding: var(--aos-space-3);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-neutral-0);
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: var(--aos-line-height-copy);
}

.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review {
	padding: var(--aos-space-5);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-neutral-0);
}

.woocommerce-checkout #order_review_heading {
	margin-top: var(--aos-space-6);
	margin-bottom: -1px;
	border-radius: var(--aos-radius-lg) var(--aos-radius-lg) 0 0;
}

.woocommerce-checkout #order_review {
	border-radius: 0 0 var(--aos-radius-lg) var(--aos-radius-lg);
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	border-top-color: var(--aos-color-action-primary);
	background: var(--aos-color-surface-brand-subtle);
}

.woocommerce-error {
	border-top-color: var(--aos-color-state-danger);
}

/* Content */
.aos-content-page {
	padding-block: var(--aos-space-section-y);
}

.aos-company-page {
	background: var(--aos-color-surface-card);
}

.aos-company-hero {
	padding-block: var(--aos-space-section-y);
	background: var(--aos-color-surface-brand-subtle);
}

.aos-company-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
	align-items: center;
	gap: var(--aos-space-12);
}

.aos-company-hero-grid-reverse .aos-company-copy {
	grid-column: 2;
	grid-row: 1;
}

.aos-company-hero-grid-reverse .aos-company-visual {
	grid-column: 1;
	grid-row: 1;
}

.aos-company-copy h1 {
	font-size: var(--aos-font-size-title);
}

.aos-company-lead {
	font-size: var(--aos-font-size-lead);
	line-height: var(--aos-line-height-copy);
}

.aos-company-visual {
	margin: var(--aos-space-0);
	overflow: hidden;
	border-radius: var(--aos-radius-lg);
	box-shadow: var(--aos-shadow-sm);
}

.aos-company-visual img {
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
}

.aos-contact-page .aos-company-visual img {
	aspect-ratio: 16 / 9;
	object-position: 72% 30%;
}

.aos-value-grid,
.aos-contact-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--aos-space-6);
}

.aos-value-grid article,
.aos-contact-grid article {
	padding: var(--aos-space-6);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-surface-card);
}

.aos-value-grid article > :last-child,
.aos-contact-grid article > :last-child {
	margin-bottom: var(--aos-space-0);
}

.aos-contact-grid a {
	font-size: var(--aos-font-size-500);
	font-weight: var(--aos-font-weight-semibold);
	text-decoration: none;
}

.aos-contact-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--aos-space-3);
	margin-top: var(--aos-space-6);
}

.aos-entry-header {
	margin-bottom: var(--aos-space-8);
}

.aos-entry-content > * {
	max-width: 100%;
}

.aos-entry-content img,
.aos-entry-image img {
	border-radius: var(--aos-radius-lg);
}

.aos-post-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--aos-space-6);
}

.aos-post-card {
	overflow: hidden;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-neutral-0);
}

.aos-post-card > *:not(a) {
	margin-inline: var(--aos-space-5);
}

.aos-post-card > a img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.aos-post-card .aos-eyebrow {
	margin-top: var(--aos-space-4);
}

.aos-comments {
	padding-top: var(--aos-space-8);
	margin-top: var(--aos-space-12);
	border-top: 1px solid var(--aos-color-border-default);
}

.aos-comments ol {
	padding-left: var(--aos-space-5);
}

.aos-not-found {
	text-align: center;
}

.aos-not-found .aos-product-search {
	margin: var(--aos-space-8) auto;
}

/* Footer */
.aos-site-footer {
	padding-top: clamp(3.5rem, 6vw, 5.5rem);
	background: var(--aos-color-brand-strong);
	color: var(--aos-color-on-dark-medium);
}

.aos-footer-grid {
	display: grid;
	grid-template-columns: minmax(220px, 1.35fr) repeat(3, minmax(150px, 0.85fr)) minmax(220px, 1.15fr);
	gap: clamp(var(--aos-space-6), 4vw, var(--aos-space-12));
	padding-bottom: clamp(3rem, 5vw, 5rem);
}

.aos-footer-grid h2 {
	margin-bottom: var(--aos-space-5);
	color: var(--aos-color-green-200);
	font-family: var(--aos-font-family-sans);
	font-size: var(--aos-font-size-200);
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.aos-footer-toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	min-height: 24px;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	text-align: left;
	text-transform: inherit;
}

.aos-footer-toggle[aria-disabled="true"] {
	pointer-events: none;
}

.aos-footer-toggle:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--aos-color-commerce-primary) 72%, transparent);
	outline-offset: 4px;
}

.aos-footer-toggle-icon {
	display: none;
	width: 11px;
	height: 11px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform var(--aos-duration-fast) var(--aos-ease-standard);
}

.aos-footer-panel-inner {
	min-height: 0;
}

.aos-footer-grid ul {
	padding: var(--aos-space-0);
	margin: var(--aos-space-0);
	list-style: none;
}

.aos-footer-grid li + li {
	margin-top: var(--aos-space-3);
}

.aos-footer-grid a {
	color: inherit;
	text-decoration: none;
	transition: color var(--aos-duration-fast) var(--aos-ease-standard);
}

.aos-footer-grid ul a:hover {
	color: var(--aos-color-neutral-0);
}

.aos-footer-logo {
	display: inline-flex;
	align-items: center;
	gap: var(--aos-space-2);
	margin-bottom: var(--aos-space-4);
	color: var(--aos-color-neutral-0) !important;
	font-weight: 800;
	letter-spacing: 0.08em;
}

.aos-footer-logo :is(img, svg) {
	display: block;
	width: min(220px, 100%);
	height: auto;
}

.aos-footer-logo span {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-commerce-primary);
	color: var(--aos-color-brand-strong);
}

.aos-footer-brand p {
	max-width: 380px;
}

.aos-footer-location {
	display: flex;
	align-items: center;
	gap: var(--aos-space-2);
	color: var(--aos-color-on-dark-high);
}

.aos-footer-location .aos-icon {
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	color: var(--aos-color-commerce-primary);
}

.aos-footer-contact {
	display: grid;
	align-content: start;
}

.aos-footer-contact .aos-footer-panel-inner {
	display: grid;
	gap: var(--aos-space-3);
}

.aos-footer-contact .aos-footer-panel-inner > a {
	display: flex;
	align-items: center;
	gap: var(--aos-space-3);
	min-width: 0;
}

.aos-footer-contact .aos-footer-panel-inner > a .aos-icon {
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	color: var(--aos-color-commerce-primary);
}

.aos-footer-contact .aos-footer-panel-inner > a span {
	display: grid;
	min-width: 0;
}

.aos-footer-contact .aos-footer-panel-inner > a small {
	color: var(--aos-color-on-dark-low);
}

.aos-footer-contact .aos-footer-panel-inner > a strong {
	overflow-wrap: anywhere;
	color: var(--aos-color-neutral-0);
}

.aos-footer-contact .aos-footer-contact-link {
	justify-content: space-between;
	min-height: 48px;
	margin-top: var(--aos-space-2);
	padding-inline: var(--aos-space-4);
	border: 1px solid var(--aos-color-on-dark-subtle);
	border-radius: var(--aos-radius-sm);
	color: var(--aos-color-neutral-0);
}

.aos-footer-contact .aos-footer-contact-link .aos-icon {
	width: 18px;
	height: 18px;
}

.aos-footer-bottom {
	display: flex;
	justify-content: space-between;
	gap: var(--aos-space-4);
	padding-block: 1.25rem;
	border-top: 1px solid var(--aos-color-on-dark-subtle);
	font-size: var(--aos-font-size-100);
}

.aos-footer-legal {
	display: flex;
	flex-wrap: wrap;
	gap: var(--aos-space-4);
}

.aos-footer-legal a {
	color: inherit;
}

@media (prefers-reduced-motion: reduce) {
	.aos-page-loader {
		transition-duration: 80ms;
	}

	.single-product .related.products ul.products li.product,
	.single-product .related.products ul.products li.product a img {
		transition: none;
	}

	.single-product .related.products ul.products li.product:hover,
	.single-product .related.products ul.products li.product:focus-within,
	.single-product .related.products ul.products li.product:hover a img,
	.single-product .related.products ul.products li.product:focus-within a img {
		transform: none;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}

	.aos-featured-grid {
		scroll-behavior: auto;
	}


	.aos-cart-link.is-pulsing,
	.aos-finder-panel.is-active,
	.aos-directory-panel.is-active,
	.single-product .woocommerce-variation {
		animation: none;
	}

	.aos-motion-ready [data-aos-reveal] {
		opacity: 1;
		transform: none;
	}

	.aos-motion-ready .aos-proof-media,
	.aos-motion-ready .aos-proof-copy > *,
	.aos-motion-ready .aos-proof-facts > div,
	.aos-motion-ready .aos-brands-intro > *,
	.aos-motion-ready .aos-brand-links a,
	.aos-motion-ready .aos-dealer-copy > * {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.aos-motion-ready .aos-brand-links::after,
	.aos-motion-ready .aos-dealer-banner::before,
	.aos-motion-ready .aos-dealer-banner > img,
	.aos-brand-links a:hover,
	.aos-brand-links a:focus-visible,
	.aos-dealer-banner:hover > img,
	.aos-dealer-copy .aos-button:hover {
		transform: none !important;
		transition: none;
	}

	.single-product .woocommerce-product-gallery,
	.single-product .woocommerce-product-gallery__image > a {
		--aos-product-shift-x: 0px;
		--aos-product-shift-y: 0px;
		--aos-product-tilt-x: 0deg;
		--aos-product-tilt-y: 0deg;
		filter: none !important;
		transform: none !important;
		will-change: auto;
	}
}

@media (max-width: 980px) {
	.single-product.woocommerce div.product {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--aos-space-8);
	}

	.single-product.woocommerce div.product > .summary {
		position: relative;
	}

	.aos-product-document {
		grid-template-columns: minmax(0, 1fr);
	}

	.aos-product-document-rail {
		border-top: 3px solid var(--aos-color-commerce-primary);
		border-left: 0;
	}

	.aos-specification-ledger {
		grid-template-columns: minmax(0, 1fr);
	}

	.aos-order-support-steps {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 1080px) {
	.aos-header-main {
		grid-template-columns: auto 1fr auto;
		gap: var(--aos-space-4);
	}

	.aos-header-search {
		grid-column: 1 / -1;
		grid-row: 2;
		padding-bottom: 1rem;
	}

	.aos-header-main {
		padding-top: var(--aos-space-4);
	}

	.aos-hero-copy {
		width: min(56%, 620px);
		margin-left: var(--aos-space-6);
	}

	.aos-featured-grid > .aos-product-card {
		flex-basis: calc((100% - (var(--aos-space-4) * 2)) / 3);
	}

	.aos-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aos-finder-options {
		grid-template-columns: 1fr;
	}

	.aos-footer-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.woocommerce .aos-catalog-results ul.products[class*="columns-"],
	.woocommerce-page .aos-catalog-results ul.products[class*="columns-"],
	.single-product .related.products ul.products {
		grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--aos-size-related-card-min)), var(--aos-size-related-card-max)));
	}
}

@media (max-width: 820px) {
	.aos-site-header {
		position: sticky;
		top: 0;
		isolation: isolate;
		transform: translateZ(0);
	}

	.aos-header-search {
		max-height: 96px;
		overflow: hidden;
		opacity: 1;
		transform: translateY(0);
		transition:
			max-height 260ms cubic-bezier(0.22, 1, 0.36, 1),
			opacity 180ms ease,
			transform 260ms cubic-bezier(0.22, 1, 0.36, 1),
			padding 260ms cubic-bezier(0.22, 1, 0.36, 1);
	}

	.aos-site-header.is-scrolled .aos-header-search {
		max-height: 0;
		padding-bottom: 0;
		pointer-events: none;
		opacity: 0;
		transform: translateY(-10px);
	}

	.aos-site-header.is-scrolled .aos-header-main {
		min-height: 62px;
		padding-top: 0;
	}

	.aos-menu-caret {
		display: none;
	}

	.aos-product-support {
		grid-template-columns: 1fr;
	}

	.aos-product-support-media {
		min-height: 300px;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		float: none;
		width: 100%;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		margin-bottom: var(--aos-space-5);
	}

	.aos-account-action-grid,
	.woocommerce-account #customer_login {
		grid-template-columns: 1fr;
	}

	.aos-login-intro {
		grid-template-columns: 1fr;
		justify-items: center;
		text-align: center;
	}

	.aos-login-intro > div {
		max-width: 42rem;
	}

	.aos-login-intro h2,
	.aos-login-intro > div > p:last-child {
		margin-inline: auto;
	}

	.aos-menu-toggle {
		display: inline-flex;
	}

	.aos-header-main {
		grid-template-columns: auto 1fr auto;
	}

	.aos-brand {
		justify-self: start;
	}

	.aos-header-actions > a > span:not(.aos-cart-count):not(.aos-wishlist-count) {
		display: none;
	}

	.aos-primary-nav {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 60;
		width: min(88vw, 360px);
		height: 100dvh;
		padding: 4.25rem 0 2rem;
		overflow-y: auto;
		overscroll-behavior: contain;
		border: 0;
		background: var(--aos-color-neutral-0);
		box-shadow: var(--aos-shadow-lg);
		transform: translateX(-105%);
		transition: transform 180ms ease;
	}

	.aos-primary-nav.is-open {
		transform: translateX(0);
	}

	.aos-menu-close {
		position: absolute;
		top: 0.75rem;
		right: 1rem;
		display: grid;
		place-items: center;
		width: 44px;
		height: 44px;
		padding: 0;
		border: 1px solid var(--aos-color-border-default);
		border-radius: var(--aos-radius-full);
		background: var(--aos-color-surface-soft);
		color: var(--aos-color-brand-strong);
		font: inherit;
		font-size: 1.75rem;
		line-height: 1;
		cursor: pointer;
		transition: color 160ms ease, border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
	}

	.aos-menu-close:hover,
	.aos-menu-close:focus-visible {
		border-color: var(--aos-color-action-primary);
		background: var(--aos-color-surface-brand-subtle);
		color: var(--aos-color-action-primary);
		transform: rotate(4deg);
	}

	.aos-primary-nav .aos-container {
		width: calc(100% - 2rem);
	}

	.aos-menu {
		display: grid;
		align-content: start;
		gap: var(--aos-space-0);
	}

	.aos-menu > li {
		display: block;
		align-self: auto;
		border-bottom: 1px solid var(--aos-color-border-default);
	}

	.aos-menu a {
		display: block;
		padding: 0.8rem 0;
	}

	.aos-menu .sub-menu {
		position: static;
		display: block;
		padding: 0 0 0.5rem 1rem;
		border: 0;
		box-shadow: none;
	}

	.aos-mega-panel {
		position: static;
		width: auto;
		padding: 0 0 var(--aos-space-4);
		border: 0;
		box-shadow: none;
		opacity: 1;
		pointer-events: auto;
		transform: none;
		transition: none;
		visibility: visible;
		backdrop-filter: none;
	}

	.aos-mega-heading {
		display: none;
	}

	.aos-mega-grid {
		grid-template-columns: 1fr;
		gap: var(--aos-space-2);
	}

	.aos-menu a.aos-mega-card {
		display: grid;
		grid-template-columns: 52px minmax(0, 1fr);
		align-items: center;
		gap: var(--aos-space-3);
		min-height: 76px;
		padding: var(--aos-space-2);
		border: 1px solid var(--aos-color-border-default);
		border-radius: var(--aos-radius-md);
		background: linear-gradient(145deg, var(--aos-color-neutral-0) 0%, var(--aos-color-surface-brand-subtle) 100%);
		transition:
			border-color var(--aos-duration-fast) var(--aos-ease-standard),
			background-color var(--aos-duration-fast) var(--aos-ease-standard),
			box-shadow var(--aos-duration-fast) var(--aos-ease-standard);
	}

	.aos-menu a.aos-mega-card:hover,
	.aos-menu a.aos-mega-card:focus-visible {
		border-color: var(--aos-color-commerce-primary);
		background: var(--aos-color-neutral-0);
		box-shadow: var(--aos-shadow-sm);
		transform: none;
	}

	.aos-menu a.aos-mega-card img {
		width: 52px;
		height: 52px;
		padding: var(--aos-space-1);
		border-radius: var(--aos-radius-sm);
		object-fit: contain;
	}

	.aos-menu a.aos-mega-card > span {
		display: grid;
		align-content: center;
		gap: 0.2rem;
		min-width: 0;
	}

	.aos-menu a.aos-mega-card strong,
	.aos-menu a.aos-mega-card small {
		margin: 0;
	}

	.aos-menu a.aos-mega-card strong {
		font-size: 0.95rem;
		line-height: 1.25;
	}

	.aos-menu a.aos-mega-card small {
		font-size: 0.82rem;
	}

	.aos-hero-grid {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.aos-hero-copy {
		grid-row: 2;
		width: calc(100% - (var(--aos-space-6) * 2));
		min-height: 0;
		margin: calc(var(--aos-space-12) * -1) auto var(--aos-space-6);
	}

	.aos-hero-media {
		grid-row: 1;
		width: 100%;
		height: 380px;
		max-height: none;
	}

	body.admin-bar .aos-site-header {
		top: 46px;
	}

	.aos-trust-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aos-trust-grid > div:nth-child(2) {
		border-right: 0;
	}

	.aos-trust-grid > div:nth-child(-n + 2) {
		border-bottom: 1px solid var(--aos-color-border-default);
	}

	.aos-featured-grid > .aos-product-card {
		flex-basis: calc((100% - var(--aos-space-4)) / 2);
	}

	.aos-post-grid,
	.aos-review-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aos-finder-shell,
	.aos-directory-workbench {
		grid-template-columns: 1fr;
	}

	.aos-proof-stage {
		min-height: 640px;
	}

	.aos-proof-copy {
		width: min(720px, 74%);
		max-width: none;
	}

	.aos-proof-facts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aos-proof-facts > div:nth-child(2) {
		border-right: 0;
	}

	.aos-proof-facts > div:nth-child(-n + 2) {
		border-bottom: 1px solid var(--aos-color-on-dark-subtle);
	}

	.aos-finder-intro {
		grid-row: auto;
		border-right: 0;
		border-bottom: 1px solid var(--aos-color-on-dark-subtle);
	}

	.aos-finder-controls {
		grid-row: auto;
	}

	.aos-directory-tabs {
		display: flex;
		overflow-x: auto;
		border-right: 0;
		border-bottom: 1px solid var(--aos-color-border-default);
		overscroll-behavior-inline: contain;
	}

	.aos-directory-tabs button {
		flex: 0 0 auto;
		min-width: 180px;
		min-height: 56px;
		border-right: 1px solid var(--aos-color-border-default);
		border-bottom: 0;
	}

	.aos-directory-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aos-support-band {
		grid-template-columns: minmax(0, 0.9fr) minmax(360px, 1.1fr);
	}

	.aos-company-hero-grid {
		grid-template-columns: 1fr;
	}

	.aos-company-hero-grid-reverse .aos-company-copy,
	.aos-company-hero-grid-reverse .aos-company-visual {
		grid-column: auto;
		grid-row: auto;
	}

	.aos-value-grid,
	.aos-contact-grid {
		grid-template-columns: 1fr;
	}

	.aos-shop-paths {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aos-shop-paths a:nth-child(2) {
		border-right: 0;
	}

	.aos-shop-paths a:nth-child(-n + 2) {
		border-bottom: 1px solid var(--aos-color-on-dark-subtle);
	}

	.aos-brands-grid {
		grid-template-columns: 1fr;
	}

	.aos-brands-intro {
		max-width: 720px;
	}

	.aos-dealer-copy {
		width: 66%;
	}

	.aos-catalog-layout {
		display: block;
	}

	.aos-filter-toggle {
		display: inline-flex;
	}

	.aos-catalog-filters {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 70;
		width: min(90vw, 390px);
		height: 100dvh;
		overflow-y: auto;
		border: 0;
		border-radius: 0;
		transform: translateX(-105%);
		transition: transform 180ms ease;
	}

	.aos-catalog-filters.is-open {
		transform: translateX(0);
	}

	.aos-filter-close {
		display: block;
	}

	.aos-footer-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.aos-container {
		width: min(calc(100% - 1.25rem), var(--aos-size-content-max));
	}

	.aos-featured-section {
		padding-block: var(--aos-space-10);
	}

	.aos-featured-section .aos-section-heading {
		gap: var(--aos-space-4);
		margin-bottom: var(--aos-space-6);
	}

	.aos-utility-inner > span,
	.aos-utility-inner > strong {
		display: none;
	}

	.aos-utility-inner {
		justify-content: flex-end;
	}

	.aos-header-main {
		grid-template-columns: 44px minmax(0, 1fr) auto;
		gap: var(--aos-space-2);
	}

	.aos-menu-toggle {
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		padding: 0;
	}

	.aos-header-main {
		gap: var(--aos-space-2);
	}

	.aos-brand {
		min-width: 0;
	}

	.aos-brand > a,
	.aos-brand .custom-logo-link {
		font-size: var(--aos-font-size-300);
	}

	.aos-brand-logo {
		width: min(128px, 100%);
	}

	.aos-brand-mark {
		width: 38px;
		height: 38px;
	}

	.aos-header-actions {
		gap: var(--aos-space-1);
	}

	.aos-cart-count {
		top: -9px;
		right: -2px;
	}

	.aos-header-actions > a {
		justify-content: center;
		width: 44px;
		height: 44px;
		min-width: 44px;
	}

	.aos-header-search {
		min-width: 0;
	}

	.aos-hero-copy {
		width: calc(100% - (var(--aos-space-4) * 2));
		min-height: 0;
		margin: calc(var(--aos-space-10) * -1) auto var(--aos-space-4);
		padding: var(--aos-space-5);
	}

	.aos-hero-copy h1,
	html.translated-ltr .aos-hero-copy h1,
	html.translated-rtl .aos-hero-copy h1 {
		max-width: 11ch;
		font-size: clamp(2.25rem, 10vw, 2.85rem);
		line-height: 1.04;
	}

	.aos-hero-media {
		height: 260px;
	}

	.aos-shop-visual {
		align-items: end;
		min-height: 430px;
	}

	.aos-shop-visual::after {
		background: var(--aos-gradient-image-scrim);
	}

	.aos-shop-visual-copy {
		width: 100%;
		padding: var(--aos-space-6);
	}

	.aos-shop-visual-copy h1,
	.aos-shop-visual-copy p,
	.aos-shop-visual-copy .aos-eyebrow {
		color: var(--aos-color-text-on-dark);
	}

	.aos-hero-actions {
		display: grid;
	}

	.aos-category-grid,
	.aos-post-grid,
	.aos-review-grid,
	.aos-brand-links,
	.woocommerce ul.products {
		grid-template-columns: 1fr;
	}

	.woocommerce .aos-catalog-results ul.products[class*="columns-"],
	.woocommerce-page .aos-catalog-results ul.products[class*="columns-"] {
		grid-template-columns: 1fr;
	}

	.single-product .related.products ul.products {
		grid-template-columns: 1fr;
		gap: var(--aos-space-4);
		width: 100%;
		max-width: var(--aos-size-related-card-max);
		margin-inline: auto;
	}

	.single-product .related.products {
		padding: var(--aos-space-5) var(--aos-space-4);
	}

	.single-product .related.products > h2 {
		gap: var(--aos-space-3);
		margin-bottom: var(--aos-space-5);
		font-size: 1.75rem;
		white-space: nowrap;
	}

	.single-product .related.products > h2::after {
		flex: 1 1 42px;
		width: auto;
		max-width: 64px;
	}

	.aos-featured-grid > .aos-product-card {
		flex-basis: min(84vw, 310px);
	}

	.aos-carousel-actions {
		width: 100%;
		justify-content: flex-start;
	}

	.aos-carousel-actions > a {
		margin-right: auto;
	}

	.aos-carousel-edge {
		width: 44px;
		height: 44px;
	}

	.aos-carousel-edge.is-prev {
		left: 4px;
	}

	.aos-carousel-edge.is-next {
		right: 4px;
	}

	.aos-product-console-label {
		align-items: flex-start;
		flex-direction: column;
	}

	.aos-product-facts,
	.aos-quick-specs dl {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aos-klarna-message,
	.aos-klarna-message.is-ready {
		grid-template-columns: 72px minmax(0, 1fr);
		gap: var(--aos-space-2);
	}

	.aos-klarna-message-brand {
		justify-self: start;
		min-width: 72px;
		min-height: 34px;
		padding-inline: var(--aos-space-2);
	}

	.aos-product-fact {
		min-height: 58px;
	}

	.aos-product-fact:last-child:nth-child(odd) {
		grid-column: 1 / -1;
	}

	.single-product .woocommerce-variation-add-to-cart,
	.single-product.woocommerce div.product form.cart:not(.variations_form) {
		grid-template-columns: 1fr;
	}

	.single-product.woocommerce div.product > .summary,
	.single-product.woocommerce div.product > .woocommerce-tabs {
		padding: var(--aos-space-5);
	}

	.single-product #wc-stripe-express-checkout-element:not([style*="display:none"]):not([style*="display: none"]) {
		grid-template-columns: minmax(0, 1fr);
	}

	.aos-specification-ledger > div {
		grid-template-columns: minmax(96px, 0.42fr) minmax(0, 0.58fr);
		padding: var(--aos-space-3);
	}

	.aos-category-card {
		grid-template-columns: 92px 1fr auto;
	}

	.aos-category-card img {
		width: 92px;
		height: 92px;
	}

	.aos-trust-grid,
	.aos-shop-paths {
		grid-template-columns: 1fr;
	}

	.aos-proof-stage {
		min-height: 760px;
	}

	.aos-proof-stage::before {
		background:
			linear-gradient(180deg, rgba(15, 27, 41, 0.7) 0%, rgba(15, 27, 41, 0.93) 48%, rgba(15, 27, 41, 0.98) 100%);
	}

	.aos-proof-stage::after {
		-webkit-mask-image: linear-gradient(180deg, #000, transparent 78%);
		mask-image: linear-gradient(180deg, #000, transparent 78%);
	}

	.aos-proof-media {
		object-position: 68% center;
	}

	.aos-proof-copy {
		align-self: end;
		width: 100%;
		padding: var(--aos-space-12) var(--aos-space-5) var(--aos-space-8);
	}

	.aos-proof-copy h2 {
		max-width: 12ch;
		font-size: clamp(2.15rem, 11vw, 3.1rem);
		line-height: 1;
	}

	.aos-proof-actions {
		display: grid;
	}

	.aos-proof-actions .aos-button {
		width: 100%;
	}

	.aos-proof-facts > div {
		padding: var(--aos-space-4);
	}

	.aos-proof-facts {
		grid-template-columns: 1fr;
	}

	.aos-proof-facts > div,
	.aos-proof-facts > div:nth-child(2) {
		border-right: 0;
		border-bottom: 1px solid var(--aos-color-on-dark-subtle);
	}

	.aos-proof-facts > div:last-child {
		border-bottom: 0;
	}

	.aos-proof-facts dt {
		flex-wrap: nowrap;
	}

	.aos-proof-facts strong {
		font-size: clamp(1.55rem, 8vw, 2.1rem);
	}

	.aos-proof-facts span,
	.aos-proof-facts dd {
		font-size: 0.78rem;
	}

	.aos-finder-controls {
		display: flex;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
	}

	.aos-finder-controls button {
		flex: 0 0 auto;
		min-width: 170px;
		min-height: 58px;
	}

	.aos-finder-options {
		grid-template-columns: 1fr;
	}

	.aos-directory-grid {
		grid-template-columns: 1fr;
	}

	.aos-directory-grid a {
		grid-template-columns: 112px minmax(0, 1fr);
		grid-template-rows: auto auto;
		align-items: center;
		padding: var(--aos-space-3);
		text-align: left;
	}

	.aos-directory-grid img {
		grid-row: 1 / 3;
		width: 112px;
		height: 112px;
		padding: var(--aos-space-2);
	}

	.aos-directory-grid strong,
	.aos-directory-grid small {
		padding-inline: var(--aos-space-3);
	}

	.aos-support-band {
		display: block;
		min-height: 0;
	}

	.aos-support-band::after {
		display: none;
	}

	.aos-support-band > img {
		position: relative;
		inset: auto;
		display: block;
		width: 100%;
		height: auto;
		aspect-ratio: 16 / 10;
		object-position: 72% center;
	}

	.aos-support-copy,
	.aos-support-actions {
		position: relative;
		z-index: 1;
		grid-column: auto;
	}

	.aos-support-copy {
		margin-top: 0;
		padding: var(--aos-space-7) var(--aos-space-6) var(--aos-space-3);
	}

	.aos-support-actions {
		padding: 0 var(--aos-space-6) var(--aos-space-8);
	}

	.aos-trust-grid > div,
	.aos-trust-grid > div:nth-child(2) {
		border-right: 0;
		border-bottom: 1px solid var(--aos-color-border-default);
	}

	.aos-trust-grid > div:last-child {
		border-bottom: 0;
	}

	.aos-shop-paths a,
	.aos-shop-paths a:nth-child(2) {
		min-height: 135px;
		border-right: 0;
		border-bottom: 1px solid var(--aos-color-on-dark-subtle);
	}

	.aos-shop-paths a:last-child {
		border-bottom: 0;
	}

	.aos-dealer-banner {
		display: block;
		min-height: 0;
	}

	.aos-dealer-banner::after {
		display: none;
	}

	.aos-dealer-banner > img {
		position: relative;
		inset: auto;
		display: block;
		width: 100%;
		height: auto;
		aspect-ratio: 16 / 10;
		object-fit: cover;
		object-position: 68% center;
		transform: none !important;
	}

	.aos-dealer-copy {
		width: 100%;
		min-height: 0;
		padding: var(--aos-space-8) var(--aos-space-6);
		background: var(--aos-color-brand-strong);
	}

	.aos-dealer-copy::before {
		top: var(--aos-space-8);
		bottom: var(--aos-space-8);
		left: var(--aos-space-3);
	}

	.aos-dealer-copy h2 {
		max-width: 11ch;
		font-size: clamp(2.45rem, 11vw, 3.25rem);
	}

	.aos-dealer-copy .aos-button {
		align-self: stretch;
		width: 100%;
		min-width: 0;
	}

	.aos-brands-section {
		padding-block: var(--aos-space-16);
	}

	.aos-brands-intro h2 {
		max-width: 11ch;
		font-size: clamp(2.35rem, 11vw, 3.15rem);
	}

	.aos-brand-summary {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aos-brand-summary > div {
		min-width: 0;
		padding-inline: var(--aos-space-3);
	}

	.aos-brand-links::after {
		bottom: calc(var(--aos-space-6) * -1);
	}

	.aos-brand-links a {
		grid-template-columns: auto minmax(0, 1fr) auto auto;
		gap: var(--aos-space-3);
		min-height: 132px;
		padding: var(--aos-space-5);
	}

	.aos-brand-arrow {
		width: 40px;
		height: 40px;
	}

	.aos-dealer-section {
		padding-top: var(--aos-space-8);
		padding-bottom: var(--aos-space-16);
	}

	.aos-contact-page .aos-company-visual img {
		aspect-ratio: 4 / 3;
		object-position: 72% 28%;
	}

	.aos-section-heading {
		align-items: start;
		flex-direction: column;
	}

	.aos-site-footer {
		padding-top: var(--aos-space-8);
	}

	.aos-footer-grid {
		grid-template-columns: 1fr;
		gap: 0;
		padding-bottom: var(--aos-space-6);
	}

	.aos-footer-brand {
		padding-bottom: var(--aos-space-4);
	}

	.aos-footer-brand p {
		margin-bottom: var(--aos-space-3);
	}

	.aos-footer-brand > p:not(.aos-footer-location) {
		display: none;
	}

	.aos-footer-group {
		border-top: 1px solid var(--aos-color-on-dark-subtle);
	}

	.aos-footer-group:last-child {
		border-bottom: 1px solid var(--aos-color-on-dark-subtle);
	}

	.aos-footer-grid .aos-footer-group h2 {
		margin: 0;
	}

	.aos-footer-toggle {
		min-height: 52px;
		color: var(--aos-color-green-200);
		cursor: pointer;
	}

	.aos-footer-toggle-icon {
		display: block;
		flex: 0 0 11px;
		margin-right: 3px;
	}

	.aos-footer-toggle[aria-expanded="true"] .aos-footer-toggle-icon {
		transform: rotate(225deg);
	}

	.aos-footer-accordion-ready .aos-footer-panel {
		display: grid;
		grid-template-rows: 0fr;
		opacity: 0;
		transition:
			grid-template-rows var(--aos-duration-base) var(--aos-ease-enter),
			opacity var(--aos-duration-fast) var(--aos-ease-standard);
	}

	.aos-footer-accordion-ready .aos-footer-panel-inner {
		min-height: 0;
		overflow: hidden;
		transform: translateY(-6px);
		transition:
			transform var(--aos-duration-base) var(--aos-ease-enter),
			padding-bottom var(--aos-duration-base) var(--aos-ease-enter);
	}

	.aos-footer-accordion-ready .aos-footer-group.is-open .aos-footer-panel {
		grid-template-rows: 1fr;
		opacity: 1;
	}

	.aos-footer-accordion-ready .aos-footer-group.is-open .aos-footer-panel-inner {
		padding-bottom: var(--aos-space-5);
		transform: translateY(0);
	}

	.aos-footer-bottom {
		align-items: flex-start;
		flex-direction: column;
		gap: var(--aos-space-2);
		padding-block: var(--aos-space-4);
	}

	.aos-footer-bottom > span:last-child {
		display: none;
	}
}

@media (max-width: 360px) {
	.aos-klarna-message,
	.aos-klarna-message.is-ready {
		grid-template-columns: minmax(0, 1fr);
	}

	.single-product .related.products ul.products {
		grid-template-columns: 1fr;
	}

	.aos-brand-logo {
		width: min(108px, 100%);
	}

	.aos-header-actions {
		gap: var(--aos-space-2);
	}

	.aos-header-search .woocommerce-product-search button {
		min-width: 64px;
		padding-inline: var(--aos-space-3);
	}
}

/* Cart procurement review console */
.woocommerce-cart .aos-commerce-page,
.woocommerce-checkout .aos-commerce-page {
	position: relative;
	background:
		radial-gradient(circle at 88% 8%, rgba(232, 243, 238, 0.82), transparent 34%),
		var(--aos-color-surface-page);
}

.aos-commerce-header-cart,
.aos-commerce-header-checkout {
	display: grid;
	grid-template-columns: minmax(0, 0.72fr) minmax(560px, 1.28fr);
	align-items: end;
	gap: clamp(var(--aos-space-8), 5vw, var(--aos-space-16));
	padding-bottom: var(--aos-space-7);
	margin-bottom: clamp(var(--aos-space-7), 4vw, var(--aos-space-10));
	border-bottom: 1px solid var(--aos-color-border-default);
}

.aos-commerce-heading {
	min-width: 0;
}

.aos-commerce-header-cart h1,
.aos-commerce-header-checkout h1 {
	margin-bottom: var(--aos-space-3);
}

.aos-commerce-intro {
	max-width: 58ch;
	margin: var(--aos-space-0);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-400);
	line-height: var(--aos-line-height-copy);
}

.aos-order-path {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	padding: var(--aos-space-0);
	margin: var(--aos-space-0);
	list-style: none;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: rgba(255, 255, 255, 0.72);
	box-shadow: var(--aos-shadow-sm);
}

.aos-order-path li {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: var(--aos-space-3);
	min-width: 0;
	min-height: 84px;
	padding: var(--aos-space-4);
}

.aos-order-path li + li {
	border-left: 1px solid var(--aos-color-border-default);
}

.aos-order-path-index {
	display: grid;
	width: 34px;
	height: 34px;
	place-items: center;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-full);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-bold);
	font-variant-numeric: tabular-nums;
}

.aos-order-path strong,
.aos-order-path small {
	display: block;
	overflow-wrap: anywhere;
}

.aos-order-path strong {
	color: var(--aos-color-brand-strong);
	font-size: var(--aos-font-size-300);
	line-height: var(--aos-line-height-control);
}

.aos-order-path small {
	margin-top: var(--aos-space-1);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	line-height: var(--aos-line-height-heading);
}

.aos-order-path .is-current {
	background: var(--aos-color-surface-commerce-soft);
}

.aos-order-path .is-current .aos-order-path-index {
	border-color: var(--aos-color-commerce-primary);
	background: var(--aos-color-commerce-primary);
	color: var(--aos-color-brand-strong);
}

.aos-order-path .is-complete .aos-order-path-index {
	border-color: var(--aos-color-action-primary);
	background: var(--aos-color-action-primary);
	color: var(--aos-color-text-on-dark);
}

.woocommerce-cart .aos-commerce-content {
	min-height: 0;
}

.woocommerce-cart .aos-commerce-content .elementor,
.woocommerce-cart .aos-commerce-content .elementor .e-con,
.woocommerce-cart .aos-commerce-content .elementor .e-con-inner,
.woocommerce-cart .aos-commerce-content .elementor-widget,
.woocommerce-cart .aos-commerce-content .elementor-widget-container,
.woocommerce-cart .aos-commerce-content .elementor-shortcode {
	width: 100% !important;
	max-width: none !important;
}

.woocommerce-cart .aos-commerce-content .elementor .e-con,
.woocommerce-cart .aos-commerce-content .elementor .e-con-inner {
	gap: var(--aos-space-0) !important;
	padding: var(--aos-space-0) !important;
	margin: var(--aos-space-0) !important;
}

.woocommerce-cart .aos-commerce-content .elementor-shortcode > .woocommerce,
.woocommerce-cart .aos-commerce-content .wp-block-shortcode > .woocommerce,
.woocommerce-cart .aos-commerce-content > .woocommerce {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) var(--aos-layout-cart-ledger);
	align-items: start;
	gap: clamp(var(--aos-space-6), 3vw, var(--aos-space-10));
}

.woocommerce-cart .woocommerce-notices-wrapper,
.woocommerce-cart .woocommerce > .cart-empty,
.woocommerce-cart .woocommerce > .wc-empty-cart-message,
.woocommerce-cart .woocommerce > .return-to-shop,
.woocommerce-cart wc-order-attribution-inputs {
	grid-column: 1 / -1;
}

.woocommerce-cart .woocommerce-notices-wrapper:empty,
.woocommerce-cart .woocommerce-notices-wrapper:not(:has(*)),
.woocommerce-cart wc-order-attribution-inputs {
	display: none;
}

.woocommerce-cart .woocommerce-cart-form {
	order: 10;
	grid-column: 1;
	min-width: 0;
	margin: var(--aos-space-0);
}

.woocommerce-cart .cart-collaterals {
	display: contents;
	width: 100% !important;
	min-width: 0;
	margin: var(--aos-space-0);
}

.woocommerce-cart .cart-collaterals::before,
.woocommerce-cart .cart-collaterals::after {
	display: none;
}

.woocommerce-cart .cart_totals {
	position: relative;
	order: 10;
	grid-column: 2;
	float: none !important;
	width: 100% !important;
	overflow: hidden;
	padding: clamp(var(--aos-space-5), 3vw, var(--aos-space-7));
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-surface-elevated);
	box-shadow: var(--aos-shadow-cart-ledger);
}

.woocommerce-cart .cross-sells {
	order: 20;
	grid-column: 1 / -1;
	float: none !important;
	width: 100% !important;
	min-width: 0;
	margin-top: var(--aos-space-8);
}

.woocommerce-cart .cart_totals::before {
	position: absolute;
	inset: 0 0 auto;
	height: 4px;
	content: "";
	background: var(--aos-color-commerce-primary);
}

.woocommerce-cart .cart_totals h2 {
	padding-bottom: var(--aos-space-4);
	margin: var(--aos-space-1) 0 var(--aos-space-4);
	border-bottom: 1px solid var(--aos-color-border-default);
	font-size: clamp(1.65rem, 2.5vw, 2.25rem);
	line-height: var(--aos-line-height-tight);
}

.woocommerce-cart table.shop_table.cart {
	width: 100%;
	margin: var(--aos-space-0);
	overflow: hidden;
	border: 1px solid var(--aos-color-border-default);
	border-collapse: separate;
	border-spacing: 0;
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-surface-card);
	box-shadow: var(--aos-shadow-cart-manifest);
}

.woocommerce-cart table.shop_table.cart thead th {
	padding-block: var(--aos-space-3);
	background: var(--aos-color-surface-brand-subtle);
	color: var(--aos-color-brand-strong);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-bold);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.woocommerce-cart table.shop_table.cart tbody tr.cart_item {
	transition: background-color var(--aos-duration-fast) var(--aos-ease-standard);
}

.woocommerce-cart table.shop_table.cart tbody tr.cart_item:hover {
	background: color-mix(in srgb, var(--aos-color-surface-brand-subtle) 58%, var(--aos-color-neutral-0));
}

.woocommerce-cart table.shop_table.cart th,
.woocommerce-cart table.shop_table.cart td {
	vertical-align: middle;
}

.woocommerce-cart table.shop_table.cart .product-remove {
	width: calc(var(--aos-size-cart-remove) + var(--aos-space-6));
	padding-inline: var(--aos-space-3);
	text-align: center;
}

.woocommerce-cart table.shop_table.cart a.remove {
	position: relative;
	display: inline-grid !important;
	width: var(--aos-size-cart-remove);
	height: var(--aos-size-cart-remove);
	overflow: hidden;
	place-items: center;
	margin: var(--aos-space-0) auto;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-neutral-0);
	color: transparent !important;
	font-size: 0 !important;
	line-height: 0 !important;
	text-indent: -9999px;
	transition:
		transform var(--aos-duration-fast) var(--aos-ease-standard),
		border-color var(--aos-duration-fast) var(--aos-ease-standard),
		background-color var(--aos-duration-fast) var(--aos-ease-standard),
		box-shadow var(--aos-duration-fast) var(--aos-ease-standard);
}

.woocommerce-cart table.shop_table.cart a.remove::before,
.woocommerce-cart table.shop_table.cart a.remove::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 2px;
	border-radius: var(--aos-radius-full);
	content: "";
	background: var(--aos-color-slate-700);
	transition: background-color var(--aos-duration-fast) var(--aos-ease-standard);
}

.woocommerce-cart table.shop_table.cart a.remove::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.woocommerce-cart table.shop_table.cart a.remove::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.woocommerce-cart table.shop_table.cart a.remove:hover {
	border-color: color-mix(in srgb, var(--aos-color-state-danger) 42%, var(--aos-color-border-default));
	background: var(--aos-color-cart-danger-soft);
	box-shadow: 0 8px 18px rgba(184, 58, 58, 0.12);
}

.woocommerce-cart table.shop_table.cart a.remove:hover::before,
.woocommerce-cart table.shop_table.cart a.remove:hover::after {
	background: var(--aos-color-state-danger);
}

.woocommerce-cart table.shop_table.cart a.remove:active {
	transform: scale(0.96);
}

.woocommerce-cart table.shop_table.cart a.remove:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--aos-color-state-danger) 32%, var(--aos-color-neutral-0));
	outline-offset: 3px;
}

.woocommerce-cart table.shop_table.cart .product-thumbnail {
	width: calc(var(--aos-size-cart-media) + var(--aos-space-6));
}

.woocommerce-cart table.shop_table.cart .product-thumbnail img {
	width: var(--aos-size-cart-media);
	height: var(--aos-size-cart-media);
	padding: var(--aos-space-2);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-surface-brand-subtle);
	object-fit: contain;
}

.woocommerce-cart table.shop_table.cart .product-name a {
	color: var(--aos-color-brand-strong);
	font-weight: var(--aos-font-weight-semibold);
	line-height: var(--aos-line-height-heading);
	text-decoration: none;
}

.woocommerce-cart table.shop_table.cart .product-name a:hover {
	color: var(--aos-color-action-primary);
	text-decoration: underline;
}

.woocommerce-cart table.shop_table.cart .product-price,
.woocommerce-cart table.shop_table.cart .product-subtotal {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.woocommerce-cart table.shop_table.cart .product-subtotal {
	color: var(--aos-color-brand-strong);
	font-weight: var(--aos-font-weight-bold);
}

.woocommerce-cart table.shop_table.cart .quantity .qty {
	width: 64px;
	min-height: var(--aos-size-control-md);
	padding: var(--aos-space-2);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-brand-strong);
	text-align: center;
	font-variant-numeric: tabular-nums;
	transition:
		border-color var(--aos-duration-fast) var(--aos-ease-standard),
		box-shadow var(--aos-duration-fast) var(--aos-ease-standard);
}

.woocommerce-cart table.shop_table.cart .quantity .qty:focus {
	border-color: var(--aos-color-action-primary);
	outline: 0;
	box-shadow: var(--aos-shadow-focus);
}

.woocommerce-cart table.shop_table.cart td.actions {
	padding: var(--aos-space-4);
	background: var(--aos-color-surface-brand-subtle);
}

.woocommerce-cart table.shop_table.cart td.actions .coupon {
	display: inline-grid;
	grid-template-columns: minmax(150px, 1fr) auto;
	align-items: center;
	gap: var(--aos-space-2);
}

.woocommerce-cart table.shop_table.cart td.actions .coupon .input-text {
	width: min(220px, 100%);
	min-height: var(--aos-size-control-md);
	padding: var(--aos-space-3);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-neutral-0);
}

.woocommerce-cart .woocommerce button.button,
.woocommerce-cart .woocommerce a.button {
	min-height: var(--aos-size-control-md);
	padding: var(--aos-space-3) var(--aos-space-5);
	border: 1px solid transparent;
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-action-primary);
	color: var(--aos-color-text-on-dark);
	font-weight: var(--aos-font-weight-bold);
	transition:
		transform var(--aos-duration-fast) var(--aos-ease-standard),
		background-color var(--aos-duration-fast) var(--aos-ease-standard),
		border-color var(--aos-duration-fast) var(--aos-ease-standard),
		box-shadow var(--aos-duration-fast) var(--aos-ease-standard);
}

.woocommerce-cart .woocommerce button.button:hover,
.woocommerce-cart .woocommerce a.button:hover {
	background: var(--aos-color-action-hover);
	color: var(--aos-color-text-on-dark);
	box-shadow: var(--aos-shadow-sm);
}

.woocommerce-cart .woocommerce button.button:active,
.woocommerce-cart .woocommerce a.button:active {
	transform: scale(0.98);
}

.woocommerce-cart .woocommerce button.button:disabled,
.woocommerce-cart .woocommerce button.button:disabled[disabled] {
	border-color: var(--aos-color-border-default);
	background: var(--aos-color-surface-soft);
	color: var(--aos-color-text-tertiary);
	box-shadow: none;
	cursor: not-allowed;
	opacity: 1;
}

.woocommerce-cart .cart_totals table.shop_table {
	margin: var(--aos-space-0) 0 var(--aos-space-5);
	border: 0;
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-surface-brand-subtle);
	box-shadow: none;
}

.woocommerce-cart .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table td {
	padding: var(--aos-space-4);
	border-color: var(--aos-color-border-default);
	font-variant-numeric: tabular-nums;
}

.woocommerce-cart .cart_totals table.shop_table td {
	text-align: right;
}

.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td {
	color: var(--aos-color-brand-strong);
	font-size: var(--aos-font-size-500);
	font-weight: var(--aos-font-weight-bold);
}

.woocommerce-cart .wc-proceed-to-checkout {
	display: grid;
	gap: var(--aos-space-3);
	padding: var(--aos-space-0);
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button.button.alt {
	order: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--aos-space-3);
	width: 100%;
	min-height: 58px;
	padding: var(--aos-space-4) var(--aos-space-5);
	margin: var(--aos-space-0);
	border: 1px solid var(--aos-color-brand-primary);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-brand-primary);
	color: var(--aos-color-text-on-dark);
	box-shadow: 0 14px 28px rgba(15, 27, 41, 0.17);
	font-size: var(--aos-font-size-400);
	font-weight: var(--aos-font-weight-bold);
	line-height: var(--aos-line-height-control);
	text-align: center;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button.button.alt::after {
	content: "\2192";
	font-size: var(--aos-font-size-600);
	line-height: var(--aos-line-height-solid);
	transition: transform var(--aos-duration-fast) var(--aos-ease-standard);
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button.button.alt:hover {
	border-color: var(--aos-color-action-hover);
	background: var(--aos-color-action-hover);
	box-shadow: 0 18px 34px rgba(15, 27, 41, 0.22);
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button.button.alt:hover::after {
	transform: translateX(3px);
}

.woocommerce-cart #wc-stripe-express-checkout-element {
	order: 3;
	width: 100%;
	min-width: 0;
	margin: var(--aos-space-1) 0 var(--aos-space-0) !important;
}

.woocommerce-cart #wc-stripe-express-checkout-element.aos-provider-surface-ready:not([style*="display:none"]):not([style*="display: none"]) {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--aos-space-3);
	clear: none !important;
}

.woocommerce-cart #wc-stripe-express-checkout-element:empty {
	display: none !important;
	margin: 0 !important;
}

.woocommerce-cart .aos-express-checkout-label {
	order: 2;
	display: none;
	align-items: center;
	gap: var(--aos-space-3);
	margin: var(--aos-space-1) 0;
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-bold);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.woocommerce-cart .aos-express-checkout-label::after {
	flex: 1;
	height: 1px;
	content: "";
	background: var(--aos-color-border-default);
}

.woocommerce-cart .aos-express-checkout-label.is-visible {
	display: flex;
}

.woocommerce-cart #wc-stripe-express-checkout-element > div[id^="wc-stripe-express-checkout-element-"] {
	width: 100% !important;
	min-width: 0 !important;
	flex: 0 0 100% !important;
}

.woocommerce-cart #wc-stripe-express-checkout-element iframe {
	display: block;
	width: 100% !important;
	max-width: none !important;
	margin: var(--aos-space-0) !important;
}

.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-error,
.woocommerce-cart .woocommerce-info {
	grid-column: 1 / -1;
	margin-bottom: var(--aos-space-5);
	border: 1px solid var(--aos-color-border-default);
	border-top: 3px solid var(--aos-color-action-primary);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-surface-card);
	box-shadow: var(--aos-shadow-sm);
}

.woocommerce-cart .woocommerce-error {
	border-top-color: var(--aos-color-state-danger);
}

.woocommerce-cart .woocommerce > .wc-empty-cart-message {
	order: 10;
	display: grid;
	min-height: 220px;
	place-items: center;
	padding: clamp(var(--aos-space-8), 6vw, var(--aos-space-12));
	margin: var(--aos-space-0);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background:
		radial-gradient(circle at 50% 0%, rgba(248, 166, 58, 0.12), transparent 48%),
		var(--aos-color-surface-elevated);
	box-shadow: var(--aos-shadow-cart-manifest);
	text-align: center;
}

.woocommerce-cart .wc-empty-cart-message .cart-empty.woocommerce-info {
	width: 100%;
	padding: var(--aos-space-0);
	margin: var(--aos-space-0);
	border: 0;
	background: transparent;
	box-shadow: none;
	color: var(--aos-color-brand-strong);
	font-size: clamp(1.35rem, 3vw, 2rem);
	font-weight: var(--aos-font-weight-bold);
	line-height: var(--aos-line-height-heading);
}

.woocommerce-cart .wc-empty-cart-message .cart-empty.woocommerce-info::before {
	display: none;
}

.woocommerce-cart .woocommerce > .return-to-shop {
	order: 11;
	margin: var(--aos-space-0);
	text-align: center;
}

.woocommerce-cart .return-to-shop .button.wc-backward {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: min(100%, 260px);
	min-height: 54px;
}

.aos-motion-ready .woocommerce-cart .woocommerce-cart-form {
	animation: aos-cart-surface-enter 320ms var(--aos-ease-enter) both;
}

.aos-motion-ready .woocommerce-cart .cart_totals {
	animation: aos-cart-surface-enter 380ms 60ms var(--aos-ease-enter) both;
}

@keyframes aos-cart-surface-enter {
	from {
		opacity: 0.88;
		transform: translateY(14px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (min-width: 1121px) and (min-height: 820px) {
	.woocommerce-cart .cart_totals {
		position: sticky;
		top: calc(var(--aos-size-header-utility) + 7.5rem);
	}
}

@media (max-width: 1120px) {
	.aos-commerce-header-cart,
	.aos-commerce-header-checkout {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--aos-space-6);
	}

	.woocommerce-cart .aos-commerce-content .elementor-shortcode > .woocommerce,
	.woocommerce-cart .aos-commerce-content .wp-block-shortcode > .woocommerce,
	.woocommerce-cart .aos-commerce-content > .woocommerce {
		grid-template-columns: minmax(0, 1fr);
	}

	.woocommerce-cart .cart_totals {
		grid-column: 1;
		max-width: 620px;
		margin-left: auto;
	}
}

@media (max-width: 720px) {
	:root {
		--aos-size-cart-media: 84px;
	}

	.aos-commerce-header-cart,
	.aos-commerce-header-checkout {
		padding-bottom: var(--aos-space-6);
	}

	.aos-order-path {
		grid-template-columns: minmax(0, 1fr);
	}

	.aos-order-path li {
		min-height: 68px;
	}

	.aos-order-path li + li {
		border-top: 1px solid var(--aos-color-border-default);
		border-left: 0;
	}

	.woocommerce-cart table.shop_table.cart,
	.woocommerce-cart table.shop_table.cart tbody {
		display: block;
	}

	.woocommerce-cart table.shop_table.cart thead {
		display: none;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item {
		position: relative;
		display: grid;
		grid-template-columns: var(--aos-size-cart-media) minmax(0, 1fr);
		column-gap: var(--aos-space-4);
		padding: var(--aos-space-5);
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item + tr.cart_item {
		border-top: 1px solid var(--aos-color-border-default);
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item td {
		width: auto;
		padding: var(--aos-space-0);
		border: 0;
		text-align: left !important;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item td::before {
		float: none;
		margin-right: var(--aos-space-3);
		color: var(--aos-color-text-secondary);
		font-size: var(--aos-font-size-100);
		font-weight: var(--aos-font-weight-bold);
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-remove {
		position: absolute;
		z-index: 2;
		top: var(--aos-space-4);
		right: var(--aos-space-4);
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-thumbnail {
		display: block !important;
		grid-column: 1;
		grid-row: 1 / span 4;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-thumbnail::before,
	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-name::before {
		display: none;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-thumbnail img {
		width: var(--aos-size-cart-media);
		height: var(--aos-size-cart-media);
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-name,
	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-price,
	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-quantity,
	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-subtotal {
		grid-column: 2;
		min-width: 0;
		padding-right: calc(var(--aos-size-cart-remove) + var(--aos-space-2));
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-name {
		margin-bottom: var(--aos-space-3);
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-price,
	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-quantity,
	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-subtotal {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: var(--aos-space-3);
		min-height: 42px;
		border-top: 1px solid var(--aos-color-border-default);
	}

	.woocommerce-cart table.shop_table.cart tr:last-child,
	.woocommerce-cart table.shop_table.cart tr:last-child td.actions {
		display: grid;
		width: 100%;
	}

	.woocommerce-cart table.shop_table.cart td.actions {
		gap: var(--aos-space-3);
	}

	.woocommerce-cart table.shop_table.cart td.actions .coupon {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		width: 100%;
	}

	.woocommerce-cart table.shop_table.cart td.actions .coupon .input-text {
		width: 100%;
	}

	.woocommerce-cart table.shop_table.cart td.actions > button[name="update_cart"] {
		float: none;
		width: 100%;
	}

	.woocommerce-cart .cart_totals {
		max-width: none;
	}
}

@media (max-width: 480px) {
	.woocommerce-cart table.shop_table.cart tbody tr.cart_item {
		grid-template-columns: 72px minmax(0, 1fr);
		padding: var(--aos-space-4);
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-thumbnail img {
		width: 72px;
		height: 72px;
	}

	.woocommerce-cart table.shop_table.cart td.actions .coupon {
		grid-template-columns: minmax(0, 1fr);
	}

	.woocommerce-cart table.shop_table.cart td.actions .coupon button {
		width: 100%;
	}

	.woocommerce-cart .cart_totals {
		padding: var(--aos-space-5);
	}
}

@media (prefers-reduced-motion: reduce) {
	.aos-motion-ready .woocommerce-cart .woocommerce-cart-form,
	.aos-motion-ready .woocommerce-cart .cart_totals {
		animation: none;
	}
}
/* Delivery visibility system */
.aos-shipping-announcement {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--aos-space-3);
	min-height: 48px;
	padding: 0 var(--aos-space-4);
	color: var(--aos-color-neutral-0);
	text-align: left;
}

.aos-shipping-announcement::before {
	position: absolute;
	width: 38px;
	height: 38px;
	border: 1px solid color-mix(in srgb, var(--aos-color-commerce-primary) 46%, transparent);
	border-radius: var(--aos-radius-full);
	content: "";
	animation: aos-delivery-pulse 3.2s var(--aos-ease-enter) infinite;
}

.aos-shipping-announcement .aos-shipping-truck {
	position: relative;
	z-index: 1;
	width: 24px;
	height: 24px;
	fill: none;
	stroke: var(--aos-color-commerce-primary);
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.aos-shipping-announcement > span {
	display: grid;
	gap: 1px;
}

.aos-shipping-announcement strong {
	color: var(--aos-color-neutral-0);
	font-size: var(--aos-font-size-200);
	font-weight: 800;
	letter-spacing: 0.09em;
	line-height: 1.1;
}

.aos-shipping-announcement small {
	color: color-mix(in srgb, var(--aos-color-neutral-0) 74%, transparent);
	font-size: 0.68rem;
	letter-spacing: 0.02em;
	line-height: 1.15;
}

.aos-delivery-promise {
	padding: var(--aos-space-6) 0;
	background: var(--aos-color-neutral-0);
}

.aos-delivery-promise-inner {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) minmax(260px, 0.42fr);
	align-items: center;
	gap: var(--aos-space-8);
	overflow: hidden;
	min-height: 194px;
	padding: var(--aos-space-8);
	border: 1px solid color-mix(in srgb, var(--aos-color-commerce-primary) 36%, transparent);
	border-radius: var(--aos-radius-lg);
	background:
		linear-gradient(115deg, rgba(255, 255, 255, 0.03), transparent 42%),
		var(--aos-color-brand-strong);
	box-shadow: var(--aos-shadow-lg);
	color: var(--aos-color-on-dark-high);
}

.aos-delivery-promise-inner::after {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
	background-size: 42px 42px;
	content: "";
	pointer-events: none;
}

.aos-delivery-route,
.aos-delivery-copy,
.aos-delivery-actions {
	position: relative;
	z-index: 1;
}

.aos-delivery-route {
	display: flex;
	align-items: center;
	min-width: 230px;
}

.aos-delivery-truck-mark,
.aos-delivery-destination {
	display: inline-grid;
	place-items: center;
	flex: 0 0 auto;
	width: 70px;
	height: 70px;
	border-radius: var(--aos-radius-full);
}

.aos-delivery-truck-mark {
	background: var(--aos-color-commerce-primary);
	box-shadow: 0 14px 38px rgba(242, 166, 64, 0.3);
	color: var(--aos-color-brand-strong);
}

.aos-delivery-truck-mark svg {
	width: 34px;
	height: 34px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.65;
}

.aos-delivery-route-line {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-around;
	flex: 1 1 auto;
	height: 2px;
	background: color-mix(in srgb, var(--aos-color-commerce-primary) 68%, transparent);
}

.aos-delivery-route-line i {
	width: 7px;
	height: 7px;
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-commerce-primary);
	box-shadow: 0 0 0 4px rgba(242, 166, 64, 0.11);
}

.aos-delivery-destination {
	width: 58px;
	height: 58px;
	border: 1px solid color-mix(in srgb, var(--aos-color-neutral-0) 34%, transparent);
	background: rgba(255, 255, 255, 0.08);
	color: var(--aos-color-neutral-0);
	font-size: var(--aos-font-size-200);
	font-weight: 800;
	letter-spacing: 0.08em;
}

.aos-delivery-copy .aos-eyebrow {
	margin: 0 0 var(--aos-space-2);
	color: var(--aos-color-commerce-primary);
}

.aos-delivery-copy h2 {
	max-width: 16ch;
	margin: 0;
	color: var(--aos-color-neutral-0);
	font-size: clamp(2rem, 3.6vw, 3.4rem);
	line-height: 0.98;
}

.aos-delivery-copy > p:last-child {
	max-width: 62ch;
	margin: var(--aos-space-3) 0 0;
	color: var(--aos-color-on-dark-medium);
	font-size: var(--aos-font-size-300);
}

.aos-delivery-actions {
	display: grid;
	gap: var(--aos-space-3);
	justify-items: stretch;
}

.aos-delivery-actions .aos-button {
	justify-content: center;
	width: 100%;
}

.aos-delivery-actions small {
	color: var(--aos-color-on-dark-medium);
	font-size: var(--aos-font-size-100);
	line-height: 1.45;
}

.aos-product-delivery-panel {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--aos-space-3);
	margin: var(--aos-space-4) 0 0;
	padding: var(--aos-space-3) var(--aos-space-4);
	border: 1px solid color-mix(in srgb, var(--aos-color-action-primary) 30%, transparent);
	border-left: 5px solid var(--aos-color-commerce-primary);
	border-radius: var(--aos-radius-md);
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--aos-color-action-primary) 8%, transparent), transparent 62%),
		var(--aos-color-surface-card);
	box-shadow: var(--aos-shadow-sm);
	animation: aos-delivery-panel-in var(--aos-duration-chapter) var(--aos-ease-enter) both;
}

.aos-product-delivery-icon {
	display: inline-grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-brand-strong);
	color: var(--aos-color-commerce-primary);
}

.aos-product-delivery-icon svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

.aos-product-delivery-copy {
	display: grid;
	gap: 2px;
}

.aos-product-delivery-panel strong {
	color: var(--aos-color-action-primary);
	font-size: var(--aos-font-size-100);
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.aos-product-delivery-panel small {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	line-height: 1.35;
}

@media (max-width: 600px) {
	body.admin-bar .aos-site-header {
		top: 0;
	}
}

.aos-product-delivery-panel a {
	color: var(--aos-color-action-primary);
	font-size: var(--aos-font-size-100);
	font-weight: 800;
	white-space: nowrap;
}

@keyframes aos-delivery-pulse {
	0%, 55%, 100% { opacity: 0.28; transform: scale(0.82); }
	75% { opacity: 0; transform: scale(1.32); }
}

@keyframes aos-delivery-panel-in {
	from { opacity: 0; transform: translateY(14px); }
	to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 980px) {
	.aos-delivery-promise-inner {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.aos-delivery-actions {
		grid-column: 2;
	}
}

@media (max-width: 760px) {
	.aos-utility-location {
		display: none;
	}

	.aos-delivery-promise {
		padding: var(--aos-space-4) 0;
	}

	.aos-delivery-promise-inner {
		grid-template-columns: 1fr;
		gap: var(--aos-space-5);
		padding: var(--aos-space-6);
	}

	.aos-delivery-route {
		width: min(100%, 280px);
		min-width: 0;
	}

	.aos-delivery-copy h2 {
		font-size: clamp(2rem, 10vw, 2.8rem);
	}

	.aos-delivery-actions {
		grid-column: 1;
	}
}

@media (max-width: 560px) {
	.aos-utility-phone,
	.aos-utility-location {
		display: none;
	}

	.aos-utility-inner {
		justify-content: center;
	}

	.aos-shipping-announcement {
		flex: 1 1 auto;
		min-height: 46px;
		padding-inline: 0;
	}

	.aos-shipping-announcement small {
		display: none;
	}

	.aos-shipping-announcement strong {
		font-size: 0.72rem;
	}

	.aos-delivery-promise-inner {
		padding: var(--aos-space-5);
		border-radius: var(--aos-radius-md);
	}

	.aos-delivery-truck-mark {
		width: 58px;
		height: 58px;
	}

	.aos-delivery-destination {
		width: 52px;
		height: 52px;
	}

	.aos-product-delivery-panel {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.aos-product-delivery-panel a {
		grid-column: 2;
		justify-self: start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aos-shipping-announcement::before,
	.aos-product-delivery-panel {
		animation: none;
	}

	.aos-klarna-message.is-ready {
		animation: none;
	}
}

/* --- NEW HERO STYLES --- */
.aos-hero-immersive {
	position: relative;
	padding-block: 0;
	min-height: 85vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.aos-hero-immersive .aos-hero-media {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.aos-hero-immersive .aos-hero-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center right;
}

.aos-hero-immersive .aos-hero-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to right, rgba(247, 250, 247, 0.98) 0%, rgba(247, 250, 247, 0.8) 45%, rgba(247, 250, 247, 0.15) 100%);
	z-index: 2;
}

.aos-hero-immersive .aos-hero-content-wrapper {
	position: relative;
	z-index: 3;
	flex: 1;
	display: flex;
	align-items: center;
	width: min(calc(100% - (var(--aos-space-page-gutter) * 2)), var(--aos-size-content-max));
	margin-inline: auto;
}

.aos-hero-immersive .aos-hero-copy {
	width: min(100%, 750px);
	padding: var(--aos-space-6) 0;
	background: transparent;
	border: none;
	box-shadow: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	margin-left: 0;
}

.aos-hero-immersive h1 {
	font-size: clamp(3.5rem, 6vw, 6rem);
}

.aos-trust-strip-hero {
	position: relative;
	z-index: 4;
	margin-top: var(--aos-space-6);
	margin-bottom: var(--aos-space-6);
	background: var(--aos-color-neutral-0);
	border-radius: var(--aos-radius-lg);
	box-shadow: var(--aos-shadow-md);
	overflow: hidden;
	border: 1px solid var(--aos-color-border-default);
}

.aos-trust-strip-hero .aos-trust-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 900px) {
	.aos-hero-immersive .aos-hero-overlay {
		background: linear-gradient(to bottom, rgba(247, 250, 247, 0.95) 0%, rgba(247, 250, 247, 0.8) 60%, rgba(247, 250, 247, 0.2) 100%);
	}
	.aos-trust-strip-hero .aos-trust-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.aos-trust-strip-hero .aos-trust-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* --- PREMIUM NOISE TEXTURE --- */
body::after {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 9999;
    opacity: 0.025;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
}

/* Specific section refinements */
.aos-brands-section {
    border-top: 1px solid var(--aos-color-border-default);
    border-bottom: 1px solid var(--aos-color-border-default);
}

.aos-featured-grid > .aos-product-card {
    border: 1px solid var(--aos-color-border-default);
    box-shadow: none;
}
.aos-featured-grid > .aos-product-card:hover {
    box-shadow: var(--aos-shadow-md);
    border-color: var(--aos-color-action-primary);
}

/* Product Reviews Styling */
#reviews {
	margin-top: var(--aos-space-8);
}

#reviews #comments h2 {
	font-size: var(--aos-font-size-600);
	margin-bottom: var(--aos-space-5);
	color: var(--aos-color-text-primary);
}

#reviews .commentlist {
	list-style: none;
	padding: 0;
	margin: 0 0 var(--aos-space-6);
}

#reviews .commentlist li {
	margin-bottom: var(--aos-space-5);
	padding: var(--aos-space-5);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-neutral-0);
}

#reviews .commentlist li img.avatar {
	float: left;
	border-radius: 50%;
	width: 48px;
	height: 48px;
	margin-right: var(--aos-space-4);
}

#reviews .commentlist li .comment-text {
	margin-left: calc(48px + var(--aos-space-4));
}

#reviews .commentlist li .meta {
	font-size: var(--aos-font-size-200);
	color: var(--aos-color-text-secondary);
	margin-bottom: var(--aos-space-2);
}

#reviews .commentlist li .meta strong {
	color: var(--aos-color-text-primary);
	font-size: var(--aos-font-size-300);
}

#reviews .commentlist li .description {
	color: var(--aos-color-slate-700);
	line-height: var(--aos-line-height-prose);
}

#review_form_wrapper {
	padding: var(--aos-space-6);
	background: var(--aos-color-surface-card);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	margin-top: var(--aos-space-8);
}

#review_form_wrapper .comment-reply-title {
	font-size: var(--aos-font-size-500);
	margin-bottom: var(--aos-space-2);
	display: block;
}

#review_form_wrapper .comment-form p {
	margin-bottom: var(--aos-space-4);
}

#review_form_wrapper .comment-form label {
	display: block;
	margin-bottom: var(--aos-space-2);
	font-weight: 600;
	color: var(--aos-color-text-primary);
	font-size: var(--aos-font-size-300);
}

#review_form_wrapper .comment-form input[type="text"],
#review_form_wrapper .comment-form input[type="email"],
#review_form_wrapper .comment-form textarea {
	width: 100%;
	padding: var(--aos-space-3) var(--aos-space-4);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
	font-family: inherit;
	background: var(--aos-color-neutral-0);
	transition: border-color var(--aos-duration-fast) ease;
}

#review_form_wrapper .comment-form input[type="text"]:focus,
#review_form_wrapper .comment-form input[type="email"]:focus,
#review_form_wrapper .comment-form textarea:focus {
	border-color: var(--aos-color-action-primary);
	outline: none;
}

#review_form_wrapper .comment-form input[type="submit"] {
	background: var(--aos-color-action-primary);
	color: var(--aos-color-neutral-0);
	border: none;
	padding: var(--aos-space-3) var(--aos-space-6);
	border-radius: var(--aos-radius-md);
	font-weight: 700;
	cursor: pointer;
	transition: background var(--aos-duration-fast) ease;
}

#review_form_wrapper .comment-form input[type="submit"]:hover {
	background: var(--aos-color-action-hover);
}

.stars {
	display: inline-block;
	color: var(--aos-color-action-primary);
	font-size: var(--aos-font-size-400);
}

.stars a {
	display: inline-block;
	text-decoration: none;
	color: var(--aos-color-border-default);
	transition: color 0.1s ease;
}

.stars a:hover,
.stars a.active {
	color: var(--aos-color-action-primary);
}


/* --- Pixel2Motion Logo Animation --- */
@media (prefers-reduced-motion: no-preference) {
	.p2m-animated-logo * {
		transform-box: fill-box;
	}

	#p2m-bg {
		transform-origin: center;
		animation: p2m-bg-reveal 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) both;
	}

	#p2m-w {
		stroke-dasharray: 1;
		stroke-dashoffset: 1;
		animation: p2m-draw-on 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0.15s both;
	}

	#p2m-swoosh {
		stroke-dasharray: 1;
		stroke-dashoffset: 1;
		animation: p2m-draw-on 0.4s cubic-bezier(0.33, 1, 0.68, 1) 0.4s both;
	}

	#p2m-arrow {
		transform-origin: center;
		animation: p2m-pop 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) 0.65s both;
	}

	#p2m-wordmark {
		animation: p2m-slide-fade 0.6s cubic-bezier(0.16, 1, 0.3, 1) 0.7s both;
	}

	#p2m-subtext {
		animation: p2m-fade 0.6s cubic-bezier(0.33, 1, 0.68, 1) 0.9s both;
	}

	@keyframes p2m-bg-reveal {
		0% { transform: scale(0.6); opacity: 0; }
		100% { transform: scale(1); opacity: 1; }
	}

	@keyframes p2m-draw-on {
		0% { stroke-dashoffset: 1; opacity: 1; }
		100% { stroke-dashoffset: 0; opacity: 1; }
	}

	@keyframes p2m-pop {
		0% { transform: scale(0) rotate(-15deg); opacity: 0; }
		100% { transform: scale(1) rotate(0deg); opacity: 1; }
	}

	@keyframes p2m-slide-fade {
		0% { transform: translateX(10px); opacity: 0; }
		100% { transform: translateX(0); opacity: 1; }
	}

	@keyframes p2m-fade {
		0% { opacity: 0; }
		100% { opacity: 1; }
	}
}

/* --- Icon Micro-interactions --- */
.aos-icon {
	transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), stroke 0.2s ease;
}
a:hover .aos-icon,
button:hover .aos-icon {
	transform: translateY(-2px) scale(1.05);
	stroke: var(--aos-color-action-primary, currentColor);
}

/* --- WooCommerce Core Pages UI Overhaul --- */

/* 1. Account Login/Register Grid */
.aos-login-intro {
	display: grid;
	grid-template-columns: 3rem minmax(0, 1fr);
	align-items: start;
	gap: var(--aos-space-4);
	max-width: 68rem;
	margin: 0 auto var(--aos-space-8);
	padding: clamp(var(--aos-space-5), 3vw, var(--aos-space-7));
	border-top: 3px solid var(--aos-color-commerce-primary);
	border-radius: var(--aos-radius-md);
	background: color-mix(in srgb, var(--aos-color-surface-card) 92%, var(--aos-color-commerce-primary));
	box-shadow: var(--aos-shadow-sm);
}

.aos-login-intro-icon {
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-brand-strong);
	color: var(--aos-color-neutral-0);
}

.aos-login-intro-icon .aos-icon {
	width: 1.5rem;
	height: 1.5rem;
}

.aos-login-intro h2 {
	max-width: 34ch;
	margin: var(--aos-space-1) 0 var(--aos-space-3);
}

.aos-login-intro > div > p:last-child {
	max-width: 70ch;
	margin-bottom: 0;
	color: var(--aos-color-text-secondary);
}

.aos-auth-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 2rem;
	margin-top: 0;
}
.woocommerce-account .woocommerce .aos-auth-grid > .col-1,
.woocommerce-account .woocommerce .aos-auth-grid > .col-2 {
	float: none;
	width: 100%;
	min-width: 0;
	margin: 0;
}
.aos-auth-card {
	background: var(--aos-color-surface-card, #fff);
	padding: 2rem;
	border-radius: 12px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
	border: 1px solid rgba(0,0,0,0.05);
}
.aos-auth-card-secondary {
	background: var(--aos-color-surface-brand-subtle);
	box-shadow: none;
}
.aos-auth-header {
	margin-bottom: 2rem;
}
.aos-auth-header h2 {
	margin: 0;
	font-size: 1.5rem;
}
.aos-auth-note {
	font-size: 0.875rem;
	color: #666;
}
.aos-auth-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	align-items: center;
	justify-content: space-between;
}
.woocommerce-LostPassword {
	font-size: 0.875rem;
	margin-top: 1rem;
}

/* 2. Edit Address Form Actions */
.aos-edit-address-actions {
	display: flex;
	gap: 1rem;
	margin-top: 2rem;
}
.aos-edit-address-actions .aos-button-ghost {
	text-decoration: none;
}

.woocommerce .aos-edit-address-actions .aos-button-ghost {
	border: 1px solid var(--aos-color-border-control-secondary) !important;
	background: var(--aos-color-surface-control-secondary) !important;
	color: var(--aos-color-slate-700) !important;
}

.woocommerce .aos-edit-address-actions .aos-button-ghost:hover {
	border-color: #aab6c1 !important;
	background: var(--aos-color-surface-control-secondary-hover) !important;
	color: var(--aos-color-text-primary) !important;
	box-shadow: none !important;
}

.woocommerce .aos-edit-address-actions .aos-button-ghost:focus-visible {
	border-color: #aab6c1 !important;
	background: var(--aos-color-surface-control-secondary-hover) !important;
	color: var(--aos-color-text-primary) !important;
	box-shadow: 0 0 0 3px rgba(98, 114, 134, 0.16);
}

/* 3. Custom Select Dropdown (Orderby) */
.aos-custom-select-wrapper {
	position: relative;
	display: inline-block;
}
.aos-custom-select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background: var(--aos-color-surface-card, #fff);
	border: 1px solid var(--aos-color-border-default);
	padding: 0.5rem 2.5rem 0.5rem 1rem;
	font-size: 0.875rem;
	border-radius: 8px;
	color: var(--aos-color-text-primary, #333);
	cursor: pointer;
	box-shadow: 0 1px 3px rgba(0,0,0,0.05);
	min-width: 200px;
}
.aos-custom-select:focus {
	outline: none;
	border-color: var(--aos-color-action-primary);
	box-shadow: 0 0 0 3px rgba(0, 123, 181, 0.2);
}
.aos-custom-select-arrow {
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	pointer-events: none;
	color: var(--aos-color-text-secondary, #666);
	display: flex;
}

/* --- Product Reviews Overhaul --- */
.aos-reviews-wrapper {
	margin-top: 3rem;
	border-top: 1px solid var(--aos-color-border-default);
	padding-top: 3rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 3rem;
}
@media (min-width: 992px) {
	.aos-reviews-wrapper {
		grid-template-columns: 2fr 1fr;
	}
}
.aos-reviews-list-container,
.aos-review-form-container,
.aos-commentlist li,
.aos-commentlist .comment-text {
	min-width: 0;
}
.aos-reviews-title {
	font-size: 1.5rem;
	margin-bottom: 2rem;
}
.aos-commentlist {
	list-style: none;
	padding: 0;
	margin: 0;
}
.aos-commentlist li {
	margin-bottom: 2rem;
	background: var(--aos-color-surface-brand-subtle);
	padding: 1.5rem;
	border-radius: 12px;
}
.aos-commentlist .comment_container {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 1rem;
	align-items: start;
}
.aos-commentlist .avatar {
	float: none;
	width: 3rem;
	height: 3rem;
	margin: 0;
	border-radius: 50%;
}
.aos-commentlist .comment-text {
	margin: 0;
	overflow-wrap: anywhere;
}
.aos-commentlist .meta,
.aos-commentlist .description {
	min-width: 0;
	overflow-wrap: anywhere;
}
.aos-commentlist .comment-text img,
.aos-commentlist .comment-text video {
	max-width: 100%;
	height: auto;
}
@media (min-width: 992px) {
	.aos-review-form-container .aos-auth-card {
		position: sticky;
		top: 8rem;
	}
}
.aos-verification-msg, .aos-must-login {
	background: #fff3cd;
	color: #856404;
	padding: 1rem;
	border-radius: 8px;
	font-weight: 500;
}

/* --- Login Portal SVG Illustration Layout --- */
.aos-login-wrapper {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 2rem;
	align-items: start;
	margin: 4rem 0;
}
@media (min-width: 992px) {
	.aos-login-wrapper {
		grid-template-columns: minmax(22rem, 0.86fr) minmax(0, 1.14fr);
		gap: clamp(2.5rem, 4.5vw, 4.75rem);
	}
}
.aos-auth-forms {
	min-width: 0;
}
.aos-login-illustration {
	display: flex;
	justify-content: center;
	align-items: center;
	align-self: center;
	min-width: 0;
	padding: 0;
	background: none;
	border-radius: 0;
	overflow: visible;
}
.aos-login-illustration svg {
	width: min(100%, 27rem);
	max-width: none;
	height: auto;
	filter: drop-shadow(0 22px 30px rgba(15, 27, 41, 0.12));
}

/* Account workbench and separated authentication states — 0.9.17 */
.aos-account-overview {
	margin-top: clamp(2rem, 4vw, 3.5rem);
	padding-top: clamp(1.75rem, 3vw, 2.75rem);
	border-top: 1px solid var(--aos-color-border-default);
}

.aos-account-overview-heading {
	display: grid;
	grid-template-columns: minmax(0, 0.78fr) minmax(18rem, 1.22fr);
	column-gap: clamp(2rem, 5vw, 5rem);
	align-items: end;
	margin-bottom: var(--aos-space-6);
}

.aos-account-overview-heading .aos-eyebrow {
	grid-column: 1 / -1;
}

.aos-account-overview-heading h2 {
	margin: var(--aos-space-2) 0 0;
	font-size: clamp(2.1rem, 3.8vw, 3.6rem);
	line-height: 0.98;
}

.aos-account-overview-heading > p:last-child {
	max-width: 42rem;
	margin: 0;
	color: var(--aos-color-text-secondary);
	line-height: 1.65;
}

.aos-account-action-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border: 1px solid var(--aos-color-border-default);
	background: var(--aos-color-surface-card);
}

.aos-account-action {
	position: relative;
	display: grid;
	grid-template-columns: 2.75rem minmax(0, 1fr) 2rem;
	grid-template-rows: auto 1fr;
	gap: var(--aos-space-3) var(--aos-space-4);
	min-width: 0;
	min-height: 10.5rem;
	padding: clamp(1.35rem, 2.5vw, 2rem);
	border-right: 1px solid var(--aos-color-border-default);
	border-bottom: 1px solid var(--aos-color-border-default);
	color: var(--aos-color-text-primary);
	text-decoration: none;
	transition: background-color 180ms ease, border-color 180ms ease;
}

.aos-account-action:nth-child(2n) {
	border-right: 0;
}

.aos-account-action:nth-last-child(-n + 2) {
	border-bottom: 0;
}

.aos-account-action:hover,
.aos-account-action:focus-visible {
	background: color-mix(in srgb, var(--aos-color-commerce-primary) 6%, #fff);
}

.aos-account-action-index {
	grid-column: 1 / -1;
	color: var(--aos-color-action-primary);
	font-size: var(--aos-font-size-050);
	font-weight: 800;
	letter-spacing: 0.14em;
}

.aos-account-action-icon {
	display: grid;
	place-items: center;
	width: 2.75rem;
	height: 2.75rem;
	background: var(--aos-color-brand-strong);
	color: var(--aos-color-neutral-0);
}

.aos-account-action-icon .aos-icon {
	width: 1.35rem;
	height: 1.35rem;
}

.aos-account-action-copy {
	display: grid;
	gap: 0.35rem;
	min-width: 0;
}

.aos-account-action-copy strong,
.aos-account-action-copy small {
	display: block;
}

.aos-account-action-copy strong {
	font-size: clamp(1.05rem, 1.5vw, 1.3rem);
	line-height: 1.2;
}

.aos-account-action-copy small {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	line-height: 1.5;
}

.aos-account-action-arrow {
	display: grid;
	place-items: center;
	align-self: start;
	width: 2rem;
	height: 2rem;
	border: 1px solid var(--aos-color-border-default);
	border-radius: 50%;
	color: var(--aos-color-action-primary);
}

.aos-account-action-arrow .aos-icon {
	width: 1rem;
	height: 1rem;
}

.aos-login-wrapper {
	max-width: 76rem;
	margin-inline: auto;
}

.aos-auth-card.aos-auth-single {
	padding: clamp(1.5rem, 3vw, 2.5rem);
	border: 1px solid var(--aos-color-border-default);
	border-top: 3px solid var(--aos-color-commerce-primary);
	border-radius: var(--aos-radius-sm);
	box-shadow: var(--aos-shadow-sm);
}

.aos-auth-switch {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--aos-space-5);
	margin-top: var(--aos-space-7);
	padding-top: var(--aos-space-5);
	border-top: 1px solid var(--aos-color-border-default);
}

.aos-auth-switch > span,
.aos-auth-switch small,
.aos-auth-switch strong {
	display: block;
}

.aos-auth-switch small {
	margin-bottom: 0.2rem;
	color: var(--aos-color-text-secondary);
}

.aos-auth-switch strong {
	font-size: var(--aos-font-size-300);
}

.aos-auth-switch .aos-button {
	white-space: nowrap;
}

@media (max-width: 820px) {
	.aos-account-overview-heading,
	.aos-account-action-grid,
	.aos-auth-switch {
		grid-template-columns: minmax(0, 1fr);
	}

	.aos-account-overview-heading {
		gap: var(--aos-space-4);
	}

	.aos-account-action {
		border-right: 0;
		border-bottom: 1px solid var(--aos-color-border-default) !important;
	}

	.aos-account-action:last-child {
		border-bottom: 0 !important;
	}

	.aos-auth-switch .aos-button {
		justify-content: center;
		width: 100%;
	}
}

/* --- Mobile Patches --- */
@media (max-width: 767px) {
	/* Allow thumbnails to be swiped horizontally on very small screens instead of shrinking too much */
	.single-product .woocommerce-product-gallery .flex-control-nav.flex-control-thumbs {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding-block-end: var(--aos-space-2);
		scroll-snap-type: x proximity;
	}
	.single-product .woocommerce-product-gallery .flex-control-nav.flex-control-thumbs li {
		flex: 0 0 clamp(72px, 22vw, 88px);
		scroll-snap-align: start;
	}
	.aos-login-wrapper {
		position: relative;
		margin: 1rem 0 2rem;
		gap: 0;
	}
	.aos-login-illustration {
		position: relative;
		z-index: 2;
		align-items: flex-end;
		min-height: 13.5rem;
		margin-bottom: -4.25rem;
		padding: 0;
		pointer-events: none;
	}
	.aos-login-illustration #ac-robot {
		width: clamp(14rem, 66vw, 16.5rem);
		max-width: none;
		transform: translateY(1.5rem);
		transform-origin: center bottom;
	}
	.aos-auth-card {
		position: relative;
		z-index: 1;
		padding: 6.5rem 1.25rem 1.25rem;
	}
	.aos-commentlist .comment_container {
		grid-template-columns: minmax(0, 1fr);
	}
	.aos-commentlist .avatar {
		display: none;
	}
	.single-product .woocommerce-product-gallery .flex-control-nav.flex-control-thumbs {
		scrollbar-width: none;
	}
	.single-product .woocommerce-product-gallery .flex-control-nav.flex-control-thumbs::-webkit-scrollbar {
		display: none;
	}
}

/* Homepage trade-counter manufacturer ledger — 0.9.17 */
.aos-brands-section {
	padding-block: clamp(56px, 6vw, 80px);
	border-block: 1px solid rgba(15, 27, 41, 0.1);
	background:
		radial-gradient(circle at 88% 18%, rgba(0, 200, 255, 0.08), transparent 28%),
		linear-gradient(180deg, #fff 0%, #f8fbfb 100%);
}

.aos-brands-section::before {
	background-size: 72px 72px;
	opacity: 0.52;
	mask-image: linear-gradient(90deg, transparent, #000 16%, #000 84%, transparent);
}

.aos-brands-section::after {
	display: none;
}

.aos-brands-grid {
	grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
	align-items: start;
	gap: clamp(48px, 6vw, 88px);
}

.aos-brands-intro {
	max-width: 460px;
}

.aos-brands-intro h2 {
	max-width: 13ch;
	margin-block: 0 var(--aos-space-5);
	color: var(--aos-color-brand-strong);
	font-size: clamp(2.35rem, 3.6vw, 3.35rem);
	line-height: 1.02;
	letter-spacing: -0.04em;
}

.aos-brands-intro > p:last-of-type {
	max-width: 44ch;
	margin-bottom: var(--aos-space-7);
	font-size: var(--aos-font-size-300);
	line-height: 1.62;
}

.aos-brand-summary {
	display: flex;
	flex-wrap: wrap;
	gap: var(--aos-space-4);
}

.aos-brand-summary > div {
	display: flex;
	grid-template-columns: none;
	min-width: 0;
	gap: var(--aos-space-2);
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	backdrop-filter: none;
}

.aos-brand-summary > div + div {
	padding-left: var(--aos-space-4);
	border-left: 1px solid rgba(15, 27, 41, 0.14);
}

.aos-brand-summary dt {
	color: var(--aos-color-commerce-hover);
	font-size: var(--aos-font-size-500);
}

.aos-brand-summary dd {
	font-size: var(--aos-font-size-100);
}

.aos-brand-links {
	display: block;
	border-block: 1px solid rgba(15, 27, 41, 0.14);
}

.aos-brand-links::after {
	display: none;
}

.aos-brand-links a {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	min-height: 92px;
	gap: var(--aos-space-5);
	padding: var(--aos-space-5) var(--aos-space-2);
	border: 0;
	border-bottom: 1px solid rgba(15, 27, 41, 0.12);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	transition:
		background-color var(--aos-duration-fast) ease,
		border-color var(--aos-duration-fast) ease;
}

.aos-brand-links a:last-child {
	border-bottom: 0;
}

.aos-brand-links a::before {
	display: none;
}

.aos-brand-links a::after {
	top: 0;
	right: auto;
	bottom: 0;
	left: -1px;
	width: 3px;
	height: auto;
	transform: scaleY(0.24);
	transform-origin: center bottom;
	transition: transform 180ms var(--aos-ease-standard);
}

.aos-brand-manifest-main {
	gap: var(--aos-space-1);
}

.aos-brand-manifest-main strong {
	font-size: clamp(1.55rem, 2.2vw, 2rem);
	line-height: 1.05;
}

.aos-brand-manifest-main > span {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	letter-spacing: 0.02em;
}

.aos-brand-arrow {
	display: inline-flex;
	width: auto;
	height: 44px;
	gap: var(--aos-space-2);
	padding-inline: var(--aos-space-2);
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--aos-color-action-primary);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-bold);
}

@media (hover: hover) and (pointer: fine) {
	.aos-motion-ready .aos-brands-section.is-visible .aos-brand-links a:hover,
	.aos-brand-links a:hover {
		border-color: rgba(15, 27, 41, 0.12);
		background: rgba(240, 251, 252, 0.72);
		box-shadow: none;
		transform: none;
	}

	.aos-brand-links a:hover::after {
		transform: scaleY(1);
	}

	.aos-brand-links a:hover .aos-brand-arrow {
		border-color: transparent;
		background: transparent;
		transform: translateX(4px);
	}
}

@media (max-width: 980px) {
	.aos-brands-grid {
		grid-template-columns: 1fr;
		gap: var(--aos-space-10);
	}

	.aos-brands-intro {
		max-width: 620px;
	}
}

@media (max-width: 640px) {
	.aos-brands-section {
		padding-block: var(--aos-space-14);
	}

	.aos-brands-section::before {
		display: none;
	}

	.aos-brands-grid {
		gap: var(--aos-space-8);
	}

	.aos-brands-intro h2 {
		max-width: 12ch;
		font-size: clamp(2.2rem, 10.5vw, 3rem);
	}

	.aos-brand-summary {
		gap: var(--aos-space-3);
	}

	.aos-brand-summary > div + div {
		padding-left: var(--aos-space-3);
	}

	.aos-brand-links a {
		min-height: 78px;
		padding: var(--aos-space-4) 0;
	}

	.aos-brand-manifest-main strong {
		font-size: 1.5rem;
	}

	.aos-brand-arrow {
		padding-inline: 0;
	}
}

/* Commerce control and catalog navigator correction — 0.9.18 */
.tax-product_cat .woocommerce-products-header {
	padding-block: clamp(1.5rem, 3vw, 2.75rem);
}

.tax-product_cat .woocommerce-products-header__title.page-title {
	max-width: 16ch;
	font-size: clamp(2.5rem, 5vw, 4.75rem);
	line-height: 0.98;
}

.aos-active-filters {
	padding: var(--aos-space-4);
	border-bottom: 1px solid var(--aos-color-border-default);
	background: var(--aos-color-surface-brand-subtle);
}

.aos-active-filters > div {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--aos-space-3);
	font-size: var(--aos-font-size-100);
}

.aos-active-filters ul {
	display: grid;
	gap: var(--aos-space-2);
	padding: 0;
	margin: var(--aos-space-3) 0 0;
	list-style: none;
}

.aos-active-filters li {
	padding: 0.45rem 0.6rem;
	border: 1px solid var(--aos-color-border-default);
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	line-height: 1.35;
}

.aos-filter-option input[type="checkbox"] {
	display: grid;
	width: 18px;
	height: 18px;
	appearance: none;
	place-content: center;
	border: 1px solid var(--aos-color-border-strong);
	border-radius: 3px;
	background: var(--aos-color-neutral-0);
	cursor: pointer;
}

.aos-filter-option input[type="checkbox"]::before {
	width: 10px;
	height: 8px;
	background: var(--aos-color-neutral-0);
	clip-path: polygon(14% 44%, 0 60%, 40% 100%, 100% 18%, 84% 0, 38% 70%);
	content: "";
	transform: scale(0);
	transform-origin: center;
	transition: transform 100ms ease-out;
}

.aos-filter-option input[type="checkbox"]:checked {
	border-color: var(--aos-color-action-primary);
	background: var(--aos-color-action-primary);
}

.aos-filter-option input[type="checkbox"]:checked::before {
	transform: scale(1);
}

.aos-filter-option input[type="checkbox"]:focus-visible {
	outline: 0;
	box-shadow: var(--aos-focus-ring);
}

.aos-capacity-rail {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: var(--aos-space-4);
	padding: var(--aos-space-4);
	margin-bottom: var(--aos-space-5);
	border: 1px solid var(--aos-color-border-default);
	background: var(--aos-color-neutral-0);
}

.aos-capacity-rail > span {
	font-size: var(--aos-font-size-100);
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aos-capacity-rail > div {
	display: grid;
	grid-auto-columns: max-content;
	grid-auto-flow: column;
	gap: var(--aos-space-2);
	min-width: 0;
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	scrollbar-width: none;
}

.aos-capacity-rail > div::-webkit-scrollbar {
	display: none;
}

.aos-capacity-rail a {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	padding: 0.55rem 0.85rem;
	border: 1px solid var(--aos-color-border-default);
	background: var(--aos-color-surface-page);
	color: var(--aos-color-text-primary);
	font-size: var(--aos-font-size-100);
	font-weight: 700;
	text-decoration: none;
}

.aos-capacity-rail a[aria-current="true"],
.aos-capacity-rail a:hover,
.aos-capacity-rail a:focus-visible {
	border-color: var(--aos-color-action-primary);
	background: var(--aos-color-surface-brand-subtle);
	color: var(--aos-color-action-primary);
}

.aos-catalog-empty-recovery {
	max-width: 42rem;
	padding: var(--aos-space-6);
	margin-top: var(--aos-space-4);
	border: 1px solid var(--aos-color-border-default);
	border-left: 3px solid var(--aos-color-action-primary);
	background: var(--aos-color-neutral-0);
}

.aos-catalog-empty-recovery p {
	color: var(--aos-color-text-secondary);
}

.woocommerce ul.products li.product .aos-product-model {
	margin: 0.35rem 0 0;
	color: var(--aos-color-text-primary);
	font-size: var(--aos-font-size-100);
	font-weight: 700;
	overflow-wrap: anywhere;
}

.woocommerce ul.products li.product .aos-product-model span {
	margin-right: 0.35rem;
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-050);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aos-custom-select-wrapper.is-enhanced .aos-custom-select,
.aos-custom-select-wrapper.is-enhanced .aos-custom-select-arrow {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
}

.aos-orderby-ui {
	display: none;
	position: relative;
	width: min(100%, 280px);
	min-width: 240px;
}

.aos-custom-select-wrapper.is-enhanced .aos-orderby-ui {
	display: block;
}

.woocommerce .woocommerce-ordering.aos-custom-select-wrapper.is-enhanced {
	position: relative;
	z-index: 20;
	overflow: visible;
}

.woocommerce .woocommerce-ordering.aos-custom-select-wrapper.is-enhanced.is-open {
	z-index: 80;
}

.aos-orderby-trigger {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 20px;
	width: 100%;
	min-height: 52px;
	align-items: center;
	gap: var(--aos-space-3);
	padding: 0.55rem 0.85rem;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-text-primary);
	text-align: left;
	cursor: pointer;
	transition: border-color 140ms ease, background-color 140ms ease, box-shadow 140ms ease;
}

.aos-orderby-trigger:hover,
.aos-orderby-trigger:focus-visible,
.aos-custom-select-wrapper.is-open .aos-orderby-trigger {
	border-color: var(--aos-color-action-primary);
	background: var(--aos-color-surface-brand-subtle);
	outline: 0;
}

.aos-orderby-trigger:focus-visible {
	box-shadow: var(--aos-focus-ring);
}

.aos-orderby-trigger-copy,
.aos-orderby-trigger-copy small,
.aos-orderby-trigger-copy strong {
	display: block;
	min-width: 0;
}

.aos-orderby-trigger-copy small {
	margin-bottom: 0.12rem;
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-050);
	font-weight: 750;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aos-orderby-trigger-copy strong {
	font-size: var(--aos-font-size-200);
	line-height: 1.2;
}

.aos-orderby-trigger > svg,
.aos-orderby-option svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2;
}

.aos-orderby-trigger > svg {
	transition: transform 160ms ease;
}

.aos-custom-select-wrapper.is-open .aos-orderby-trigger > svg {
	transform: rotate(180deg);
}

.aos-orderby-menu {
	position: absolute;
	z-index: 40;
	top: calc(100% + 6px);
	right: 0;
	width: 100%;
	max-height: min(70vh, 360px);
	padding: var(--aos-space-2);
	overflow-y: auto;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-neutral-0);
	box-shadow: var(--aos-shadow-lg);
}

.aos-mega-menu.is-open > .aos-mega-panel {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0) scale(1);
	visibility: visible;
}

.aos-menu-direct > a,
.aos-nav-coming > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 51px;
	padding: 0 17px;
	color: var(--aos-color-text-primary);
	font-size: var(--aos-font-size-300);
	font-weight: var(--aos-font-weight-bold);
	text-decoration: none;
}

.aos-nav-coming > span {
	cursor: default;
}

.aos-nav-coming small {
	padding: 3px 7px;
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-surface-brand-subtle);
	color: var(--aos-color-action-primary);
	font-size: 0.68rem;
	line-height: 1;
	text-transform: uppercase;
}

.aos-custom-select-wrapper.is-open .aos-orderby-menu {
	animation: aos-orderby-enter 160ms var(--aos-ease-standard) both;
}

.aos-orderby-option {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 20px;
	width: 100%;
	min-height: 44px;
	align-items: center;
	gap: var(--aos-space-3);
	padding: 0.65rem 0.75rem;
	border: 0;
	border-left: 3px solid transparent;
	background: transparent;
	color: var(--aos-color-text-primary);
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.aos-orderby-option svg {
	opacity: 0;
}

.aos-orderby-option:hover,
.aos-orderby-option:focus-visible,
.aos-orderby-option[aria-selected="true"] {
	border-left-color: var(--aos-color-action-primary);
	background: var(--aos-color-surface-brand-subtle);
	outline: 0;
}

.aos-orderby-option[aria-selected="true"] svg {
	opacity: 1;
	color: var(--aos-color-action-primary);
}

@keyframes aos-orderby-enter {
	from { opacity: 0.96; transform: translateY(-4px); }
	to { opacity: 1; transform: translateY(0); }
}

.single-product .woocommerce-variation-add-to-cart,
.single-product.woocommerce div.product form.cart:not(.variations_form) {
	grid-template-columns: minmax(168px, 176px) minmax(0, 1fr);
}

body.single-product form.cart .quantity.aos-quantity-stepper {
	display: grid;
	grid-template-columns: 48px minmax(56px, 72px) 48px;
	width: max-content;
	min-width: 168px;
	min-height: var(--aos-size-control-md);
	margin: 0 !important;
	overflow: hidden;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-neutral-0);
}

body.single-product form.cart .quantity.aos-quantity-stepper .qty {
	width: 100% !important;
	min-height: var(--aos-size-control-md);
	padding: 0 0.25rem;
	border: 0 !important;
	border-right: 1px solid var(--aos-color-border-default) !important;
	border-left: 1px solid var(--aos-color-border-default) !important;
	border-radius: 0 !important;
	appearance: textfield;
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-text-primary);
	font-size: var(--aos-font-size-400);
	font-weight: 750;
	text-align: center;
}

body.single-product form.cart .quantity.aos-quantity-stepper .qty::-webkit-inner-spin-button,
body.single-product form.cart .quantity.aos-quantity-stepper .qty::-webkit-outer-spin-button {
	margin: 0;
	appearance: none;
}

.aos-quantity-button {
	display: grid;
	min-width: 48px;
	min-height: 48px;
	padding: 0;
	border: 0;
	place-items: center;
	background: var(--aos-color-neutral-0);
	color: var(--aos-color-action-primary);
	cursor: pointer;
	transition: background-color 100ms ease, color 100ms ease;
}

.aos-quantity-button svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-width: 2;
}

.aos-quantity-button:hover,
.aos-quantity-button:focus-visible {
	background: var(--aos-color-surface-brand-subtle);
	color: var(--aos-color-brand-strong);
	outline: 0;
}

.aos-quantity-button:focus-visible {
	box-shadow: inset var(--aos-focus-ring);
}

.aos-quantity-button:disabled {
	opacity: 0.42;
	cursor: not-allowed;
}

.single-product .woocommerce-product-gallery .aos-gallery-thumb {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
}

.single-product .woocommerce-product-gallery .aos-gallery-thumb:focus-visible {
	outline: 0;
	box-shadow: var(--aos-focus-ring);
}

.single-product.woocommerce div.product div.images .flex-control-thumbs li {
	width: 82px !important;
	min-height: 82px;
}

.single-product.woocommerce div.product div.images .flex-control-thumbs li img {
	width: 100% !important;
	height: 80px;
	object-fit: contain;
}

.aos-account-action {
	grid-template-rows: 1fr;
	align-items: center;
	min-height: 9.25rem;
}

.aos-account-action-icon {
	border: 1px solid var(--aos-color-border-default);
	background: var(--aos-color-surface-brand-subtle);
	color: var(--aos-color-action-primary);
}

.aos-auth-honeypot {
	position: absolute !important;
	left: -10000px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

@media (max-width: 820px) {
	.aos-capacity-rail {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--aos-space-3);
	}

	.woocommerce .woocommerce-ordering.aos-custom-select-wrapper.is-enhanced,
	.aos-orderby-ui {
		float: none;
		width: 100%;
		min-width: 0;
	}

	.aos-orderby-menu {
		position: absolute;
		left: 0;
		right: auto;
	}

	.single-product .woocommerce-variation-add-to-cart,
	.single-product.woocommerce div.product form.cart:not(.variations_form) {
		grid-template-columns: minmax(0, 1fr);
	}

	body.single-product form.cart .quantity.aos-quantity-stepper {
		width: min(100%, 176px);
	}

	.single-product.woocommerce div.product div.images .flex-control-thumbs li {
		flex: 0 0 72px !important;
		width: 72px !important;
		min-height: 72px;
	}

	.single-product.woocommerce div.product div.images .flex-control-thumbs li img {
		height: 70px;
	}

	.aos-edit-address-actions {
		flex-wrap: wrap;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aos-custom-select-wrapper.is-open .aos-orderby-menu {
		animation: none;
	}

	.aos-orderby-trigger > svg,
	.aos-filter-option input[type="checkbox"]::before {
		transition: none;
	}
}

/* Deployment acceptance refinements — 0.9.22 */
.aos-carousel-viewport {
	cursor: grab;
	overscroll-behavior-inline: contain;
}

.aos-carousel-viewport.is-dragging {
	cursor: grabbing;
	user-select: none;
	-webkit-user-select: none;
}

.aos-carousel-viewport.is-dragging :where(a, button, img) {
	pointer-events: none;
}

.aos-product-carousel,
.aos-carousel-viewport,
.aos-featured-grid,
.aos-featured-grid > .aos-product-card {
	min-width: 0;
}

.aos-product-card-body {
	gap: 0;
	padding: clamp(1rem, 2vw, 1.25rem);
}

.aos-product-card h3 {
	min-height: 2.85em;
	margin: 0 0 0.8rem;
	-webkit-line-clamp: 2;
	font-size: clamp(1rem, 1.25vw, 1.18rem);
	line-height: 1.38;
}

.aos-product-card .aos-product-facts {
	display: grid;
	gap: 0.35rem;
	min-height: 3.1rem;
	margin-bottom: 1rem;
}

.aos-product-facts .aos-product-meta,
.aos-product-facts .aos-product-model {
	margin: 0;
}

.aos-product-facts .aos-product-meta {
	min-height: 0;
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	font-weight: 700;
}

.aos-product-facts .aos-product-model {
	color: var(--aos-color-text-primary);
	font-size: var(--aos-font-size-100);
	font-weight: 750;
	overflow-wrap: anywhere;
}

.aos-product-facts .aos-product-model span {
	margin-right: 0.4rem;
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-050);
	font-weight: 800;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.aos-product-card-footer {
	padding-top: 0.9rem;
	border-top: 1px solid var(--aos-color-border-default);
}

.woocommerce .aos-catalog-results ul.products li.product,
.woocommerce-page .aos-catalog-results ul.products li.product {
	padding-bottom: 1rem;
	background: var(--aos-color-neutral-0);
}

.woocommerce .aos-catalog-results ul.products li.product a img,
.woocommerce-page .aos-catalog-results ul.products li.product a img {
	border-bottom: 1px solid var(--aos-color-border-default);
}

.woocommerce .aos-catalog-results ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page .aos-catalog-results ul.products li.product .woocommerce-loop-product__title {
	min-height: 2.85em;
	margin: 1rem 1rem 0.7rem;
	-webkit-line-clamp: 2;
	font-size: clamp(1rem, 1.25vw, 1.18rem);
	line-height: 1.38;
}

.woocommerce .aos-catalog-results ul.products li.product .aos-product-facts,
.woocommerce-page .aos-catalog-results ul.products li.product .aos-product-facts {
	min-height: 3.1rem;
	margin: 0 1rem 1rem;
}

.woocommerce .aos-catalog-results ul.products li.product .price,
.woocommerce-page .aos-catalog-results ul.products li.product .price {
	margin: auto 1rem 0;
	padding-top: 0.9rem;
	border-top: 1px solid var(--aos-color-border-default);
}

.woocommerce .aos-catalog-results ul.products li.product .button,
.woocommerce-page .aos-catalog-results ul.products li.product .button {
	justify-content: center;
	width: calc(100% - 2rem);
	margin: 1rem 1rem 0;
}

.aos-account-action-index {
	display: none;
}

.aos-account-overview-heading {
	grid-template-columns: minmax(max-content, auto) minmax(20rem, 1fr);
	align-items: end;
}

.aos-account-overview-heading h2 {
	white-space: nowrap;
}

.aos-auth-actions {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 1rem;
	margin-top: 1.25rem;
}

.aos-auth-actions .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0;
}

.aos-auth-actions .woocommerce-form-login__submit {
	min-width: 8.25rem;
	margin: 0 !important;
	justify-content: center;
}

.woocommerce-account .woocommerce-LostPassword {
	margin: 1rem 0 0;
}

.aos-login-wrapper {
	margin-top: clamp(1.75rem, 3vw, 2.75rem);
	margin-bottom: 0;
}

.aos-login-intro {
	max-width: 76rem;
	margin: clamp(2rem, 4vw, 3rem) auto 0;
}

@media (min-width: 821px) {
	.woocommerce-account .aos-commerce-header-account .aos-commerce-heading {
		width: 100%;
		max-width: none;
	}

	.woocommerce-account .aos-commerce-header-account .aos-commerce-heading h1 {
		max-width: none;
		font-size: clamp(3.2rem, 4.4vw, 4.65rem);
		line-height: 1;
		white-space: nowrap;
		text-wrap: nowrap;
	}

	.aos-account-overview-heading h2 {
		font-size: clamp(2.4rem, 3.1vw, 3.35rem);
	}
}

@media (max-width: 820px) {
	/* Mobile header geometry stays fixed to prevent sticky-scroll feedback. */
	.aos-site-header,
	.aos-site-header.is-scrolled {
		background: var(--aos-color-neutral-0);
		backdrop-filter: none;
		-webkit-backdrop-filter: none;
	}

	.aos-site-header .aos-utility-bar,
	.aos-site-header.is-scrolled .aos-utility-bar {
		max-height: var(--aos-size-header-utility);
		opacity: 1;
		pointer-events: auto;
		transform: none;
		transition: none;
	}

	.aos-site-header .aos-utility-inner,
	.aos-site-header.is-scrolled .aos-utility-inner {
		min-height: var(--aos-size-header-utility);
		transition: none;
	}

	.aos-site-header .aos-header-main,
	.aos-site-header.is-scrolled .aos-header-main {
		min-height: 72px;
		padding-top: 0;
		transition: none;
	}

	.aos-site-header .aos-header-search,
	.aos-site-header.is-scrolled .aos-header-search {
		max-height: 96px;
		padding-bottom: var(--aos-space-4);
		opacity: 1;
		pointer-events: auto;
		transform: none;
		transition: none;
	}

	.aos-site-header.is-scrolled .aos-brand .custom-logo,
	.aos-site-header.is-scrolled .aos-brand-logo {
		max-height: 64px;
	}

	.aos-account-overview-heading {
		grid-template-columns: minmax(0, 1fr);
	}

	.aos-account-overview-heading h2,
	.woocommerce-account .aos-commerce-header-account .aos-commerce-heading h1 {
		white-space: normal;
		text-wrap: balance;
	}
}

@media (max-width: 600px) {
	.aos-carousel-viewport {
		padding-inline: 0;
	}

	.aos-featured-grid {
		gap: 0.8rem;
	}

	.aos-featured-grid > .aos-product-card,
	.single-product .aos-related-track > .aos-product-card {
		flex-basis: min(86%, 320px);
	}

	.aos-carousel-edge {
		width: 44px;
		height: 44px;
	}

	.aos-carousel-edge.is-prev {
		left: 6px;
	}

	.aos-carousel-edge.is-next {
		right: 6px;
	}

	.aos-product-card h3 {
		font-size: 1rem;
	}

	.aos-product-card-footer {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.aos-auth-actions {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0.75rem;
	}

	.aos-auth-actions .woocommerce-form-login__submit {
		min-width: 7.5rem;
	}

	.aos-login-intro {
		grid-template-columns: 2.5rem minmax(0, 1fr);
		padding: 1.25rem;
	}

	.aos-login-intro-icon {
		width: 2.5rem;
		height: 2.5rem;
	}

	.woocommerce .aos-catalog-results ul.products[class*="columns-"],
	.woocommerce-page .aos-catalog-results ul.products[class*="columns-"],
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.75rem;
	}

	.woocommerce .aos-catalog-results ul.products li.product,
	.woocommerce-page .aos-catalog-results ul.products li.product {
		min-height: 0;
		padding-bottom: 0.75rem;
	}

	.woocommerce .aos-catalog-results ul.products li.product a img,
	.woocommerce-page .aos-catalog-results ul.products li.product a img {
		padding: 0.55rem;
	}

	.woocommerce .aos-catalog-results ul.products li.product .woocommerce-loop-product__title,
	.woocommerce-page .aos-catalog-results ul.products li.product .woocommerce-loop-product__title {
		min-height: 3.45em;
		margin: 0.7rem 0.7rem 0.45rem;
		-webkit-line-clamp: 3;
		font-size: 0.83rem;
		line-height: 1.38;
	}

	.woocommerce .aos-catalog-results ul.products li.product .aos-product-facts,
	.woocommerce-page .aos-catalog-results ul.products li.product .aos-product-facts {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.2rem;
		min-height: 3.25rem;
		margin: 0 0.7rem 0.6rem;
	}

	.woocommerce .aos-catalog-results ul.products li.product .aos-product-meta,
	.woocommerce-page .aos-catalog-results ul.products li.product .aos-product-meta,
	.woocommerce .aos-catalog-results ul.products li.product .aos-product-model,
	.woocommerce-page .aos-catalog-results ul.products li.product .aos-product-model {
		font-size: 0.69rem;
		line-height: 1.35;
	}

	.woocommerce .aos-catalog-results ul.products li.product .aos-product-model span,
	.woocommerce-page .aos-catalog-results ul.products li.product .aos-product-model span {
		display: inline;
		margin: 0 0.3rem 0 0;
		font-size: 0.6rem;
	}

	.woocommerce .aos-catalog-results ul.products li.product .price,
	.woocommerce-page .aos-catalog-results ul.products li.product .price {
		margin-inline: 0.7rem;
		padding-top: 0.65rem;
		font-size: 1.05rem;
	}

	.woocommerce .aos-catalog-results ul.products li.product .button,
	.woocommerce-page .aos-catalog-results ul.products li.product .button {
		width: calc(100% - 1.4rem);
		min-height: 42px;
		margin: 0.7rem 0.7rem 0;
		padding: 0.55rem 0.45rem;
		font-size: 0.78rem;
		line-height: 1.2;
	}
}

@media (max-width: 340px) {
	.woocommerce .aos-catalog-results ul.products[class*="columns-"],
	.woocommerce-page .aos-catalog-results ul.products[class*="columns-"],
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (prefers-reduced-motion: reduce) {
	.aos-featured-grid.is-carousel-animating {
		transition: none;
	}
}

/* Commerce utility controls — 0.9.23 */
.aos-cart-count,
.aos-wishlist-count {
	line-height: 1;
	transform: translateY(-1px);
}

.aos-wishlist-count {
	position: absolute;
	top: -12px;
	right: -13px;
	display: grid;
	place-items: center;
	min-width: 20px;
	height: 20px;
	padding-inline: var(--aos-space-1);
	border: 2px solid var(--aos-color-neutral-0);
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-commerce-primary);
	color: var(--aos-color-brand-strong);
	font-size: var(--aos-font-size-050);
	font-weight: 800;
}

.aos-product-card,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	position: relative;
}

.aos-product-card .aos-product-facts,
.woocommerce .aos-catalog-results ul.products li.product .aos-product-facts,
.woocommerce-page .aos-catalog-results ul.products li.product .aos-product-facts {
	grid-template-columns: minmax(0, 1fr) !important;
	gap: 0.32rem;
	min-width: 0;
	padding: 0.62rem 0.7rem;
	border-color: color-mix(in srgb, var(--aos-color-border-default) 82%, white);
	background: var(--aos-color-surface-brand-subtle);
}

.aos-product-card .aos-product-meta,
.aos-product-card .aos-product-model,
.woocommerce .aos-catalog-results ul.products li.product .aos-product-meta,
.woocommerce .aos-catalog-results ul.products li.product .aos-product-model,
.woocommerce-page .aos-catalog-results ul.products li.product .aos-product-meta,
.woocommerce-page .aos-catalog-results ul.products li.product .aos-product-model {
	display: block;
	min-width: 0;
	overflow: hidden;
	line-height: 1.35;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.aos-wishlist-button {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	min-width: 44px;
	min-height: 44px;
	padding: 0;
	border: 1px solid color-mix(in srgb, var(--aos-color-border-default) 90%, var(--aos-color-action-primary));
	border-radius: var(--aos-radius-full);
	background: rgba(255, 255, 255, 0.94);
	box-shadow: var(--aos-shadow-sm);
	color: var(--aos-color-brand-strong);
	cursor: pointer;
	transition:
		background-color 160ms cubic-bezier(0.22, 1, 0.36, 1),
		border-color 160ms cubic-bezier(0.22, 1, 0.36, 1),
		color 160ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 160ms cubic-bezier(0.22, 1, 0.36, 1);
}

.aos-wishlist-button--card,
.aos-wishlist-button--loop {
	position: absolute;
	top: 0.75rem;
	right: 0.75rem;
	z-index: 6;
}

.aos-wishlist-heart {
	width: 22px;
	height: 22px;
	fill: transparent;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	transition: fill 160ms cubic-bezier(0.22, 1, 0.36, 1), transform 160ms cubic-bezier(0.22, 1, 0.36, 1);
}

.aos-wishlist-button:hover,
.aos-wishlist-button:focus-visible {
	border-color: var(--aos-color-action-primary);
	background: var(--aos-color-surface-brand-subtle);
	color: var(--aos-color-action-primary);
}

.aos-wishlist-button:focus-visible {
	outline: 0;
	box-shadow: var(--aos-shadow-focus);
}

.aos-wishlist-button:active .aos-wishlist-heart {
	transform: scale(0.92);
}

.aos-wishlist-button.is-saved {
	border-color: color-mix(in srgb, var(--aos-color-commerce-primary) 72%, var(--aos-color-action-primary));
	background: color-mix(in srgb, var(--aos-color-surface-brand-subtle) 76%, var(--aos-color-commerce-primary));
	color: var(--aos-color-action-primary);
}

.aos-wishlist-button.is-saved .aos-wishlist-heart {
	fill: var(--aos-color-commerce-primary);
}

.aos-wishlist-button.is-loading {
	cursor: wait;
	opacity: 0.66;
}

.aos-product-console-toolbar {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--aos-space-3);
	margin-bottom: var(--aos-space-3);
}

.aos-product-console-toolbar .aos-product-console-label {
	min-width: 0;
	margin: 0;
}

.aos-wishlist-page {
	min-height: 70vh;
	padding-block: clamp(2rem, 5vw, 5rem);
}

.aos-wishlist-header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.78fr);
	align-items: end;
	gap: clamp(2rem, 5vw, 5rem);
	margin-bottom: clamp(2rem, 4vw, 3.5rem);
	padding-bottom: clamp(1.5rem, 3vw, 2.5rem);
	border-bottom: 1px solid var(--aos-color-border-default);
}

.aos-wishlist-header h1 {
	max-width: none;
	margin: 0;
	font-size: clamp(2.75rem, 6vw, 5.5rem);
	line-height: 0.98;
}

.aos-wishlist-header > p {
	max-width: 54ch;
	margin: 0;
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-300);
}

.aos-wishlist-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.5rem);
}

.aos-wishlist-grid .aos-product-card {
	width: auto;
	min-width: 0;
}

.aos-wishlist-grid .aos-product-card.is-removing {
	opacity: 0;
	transform: translateY(4px);
	transition: opacity 160ms ease-out, transform 160ms ease-out;
}

.aos-wishlist-empty {
	display: grid;
	justify-items: center;
	max-width: 46rem;
	margin-inline: auto;
	padding: clamp(2.25rem, 6vw, 4.5rem);
	border: 1px solid var(--aos-color-border-default);
	border-top: 4px solid var(--aos-color-commerce-primary);
	border-radius: var(--aos-radius-lg);
	background: rgba(255, 255, 255, 0.82);
	box-shadow: var(--aos-shadow-sm);
	text-align: center;
}

.aos-wishlist-empty-icon {
	display: grid;
	place-items: center;
	width: 64px;
	height: 64px;
	margin-bottom: var(--aos-space-4);
	border-radius: var(--aos-radius-full);
	background: var(--aos-color-surface-brand-subtle);
	color: var(--aos-color-action-primary);
}

.aos-wishlist-empty-icon svg {
	width: 30px;
	height: 30px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

.aos-wishlist-empty h2 {
	margin: 0 0 var(--aos-space-2);
}

.aos-wishlist-empty p {
	max-width: 50ch;
	margin: 0 0 var(--aos-space-5);
	color: var(--aos-color-text-secondary);
}

body.woocommerce-cart .quantity.aos-quantity-stepper {
	display: grid;
	grid-template-columns: 48px minmax(56px, 64px) 48px;
	width: max-content;
	min-height: 48px;
	margin: 0;
	overflow: hidden;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
	background: var(--aos-color-neutral-0);
}

body.woocommerce-cart .quantity.aos-quantity-stepper .qty {
	width: 100% !important;
	min-height: 48px;
	padding: 0 0.2rem;
	border: 0 !important;
	border-right: 1px solid var(--aos-color-border-default) !important;
	border-left: 1px solid var(--aos-color-border-default) !important;
	border-radius: 0 !important;
	appearance: textfield;
	background: var(--aos-color-neutral-0);
	font-weight: 750;
	text-align: center;
}

body.woocommerce-cart .quantity.aos-quantity-stepper .qty::-webkit-inner-spin-button,
body.woocommerce-cart .quantity.aos-quantity-stepper .qty::-webkit-outer-spin-button {
	margin: 0;
	appearance: none;
}

.woocommerce-cart-form.is-quantity-updating {
	opacity: 0.68;
	pointer-events: none;
	transition: opacity 120ms ease-out;
}

@media (max-width: 980px) {
	.aos-wishlist-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.aos-wishlist-count {
		top: -9px;
		right: -2px;
	}

	.aos-product-card .aos-product-facts,
	.woocommerce .aos-catalog-results ul.products li.product .aos-product-facts,
	.woocommerce-page .aos-catalog-results ul.products li.product .aos-product-facts {
		padding: 0.5rem 0.55rem;
	}

	.aos-wishlist-button--card,
	.aos-wishlist-button--loop {
		top: 0.45rem;
		right: 0.45rem;
	}

	.aos-login-wrapper {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas: "auth-stack";
		isolation: isolate;
		gap: 0;
		margin: 0 0 2rem;
	}

	.aos-login-illustration {
		position: relative;
		z-index: 0;
		grid-area: auth-stack;
		align-self: start;
		justify-self: center;
		min-height: 0;
		margin: 0;
		pointer-events: none;
	}

	.aos-login-illustration #ac-robot {
		width: clamp(13.5rem, 64vw, 16rem);
		max-width: none;
		transform: translateY(0);
	}

	.aos-auth-forms {
		position: relative;
		z-index: 1;
		grid-area: auth-stack;
		align-self: start;
		margin-top: clamp(10.75rem, 44vw, 12.5rem);
	}

	.aos-auth-card {
		padding: 1.5rem 1.25rem;
		background: var(--aos-color-surface-card);
	}

	.aos-auth-actions {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		gap: 0.75rem;
	}

	.aos-auth-actions .woocommerce-form-login__rememberme {
		grid-column: 1;
		grid-row: 1;
		justify-self: start;
		float: none !important;
		width: auto !important;
		margin: 0 !important;
	}

	.aos-auth-actions .woocommerce-form-login__submit {
		grid-column: 2;
		grid-row: 1;
		justify-self: end;
		width: auto !important;
		min-width: 7.5rem;
		margin: 0 !important;
	}

	.aos-login-intro {
		grid-template-columns: minmax(0, 1fr);
		justify-items: center;
		gap: var(--aos-space-3);
		padding: 1.5rem 1.25rem;
		text-align: center;
	}

	.aos-login-intro h2,
	.aos-login-intro > div > p:last-child {
		margin-inline: auto;
	}

	.aos-wishlist-header {
		grid-template-columns: minmax(0, 1fr);
		gap: 1rem;
	}

	.aos-wishlist-header h1 {
		font-size: clamp(2.5rem, 12vw, 4rem);
	}

	.aos-wishlist-header > p {
		font-size: var(--aos-font-size-200);
	}

	.aos-wishlist-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.75rem;
	}

	body.woocommerce-cart .quantity.aos-quantity-stepper {
		grid-template-columns: 44px 52px 44px;
		min-height: 44px;
	}

	body.woocommerce-cart .quantity.aos-quantity-stepper .qty,
	body.woocommerce-cart .quantity.aos-quantity-stepper .aos-quantity-button {
		min-height: 44px;
	}
}

@media (max-width: 340px) {
	.aos-wishlist-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.aos-auth-actions {
		grid-template-columns: minmax(0, 1fr);
	}

	.aos-auth-actions .woocommerce-form-login__rememberme,
	.aos-auth-actions .woocommerce-form-login__submit {
		grid-column: 1;
		justify-self: stretch;
	}

	.aos-auth-actions .woocommerce-form-login__submit {
		grid-row: 2;
		width: 100% !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aos-wishlist-button,
	.aos-wishlist-heart,
	.aos-wishlist-grid .aos-product-card.is-removing,
	.woocommerce-cart-form.is-quantity-updating {
		transition: none;
	}
}

/* Account verification and primary-action hierarchy — 0.9.24 */
.aos-auth-card .woocommerce-form {
	display: grid;
	gap: 1rem;
}

.aos-auth-card .woocommerce-form > .form-row,
.aos-auth-card .woocommerce-form > .woocommerce-form-row,
.aos-verification-row .form-row {
	margin: 0;
}

.aos-auth-primary-action {
	display: block;
	width: 100%;
	margin: 0.25rem 0 0;
}

.woocommerce-account .aos-auth-primary-action .aos-button,
.woocommerce-account .aos-auth-primary-action button {
	display: inline-flex;
	justify-content: center;
	width: 100% !important;
	min-height: 52px;
	margin: 0 !important;
}

.aos-auth-support-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 1rem;
	min-height: 44px;
}

.aos-auth-support-row .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	width: max-content;
	margin: 0;
}

.aos-auth-support-row .lost_password {
	margin: 0;
	font-size: var(--aos-font-size-100);
	white-space: nowrap;
}

.aos-auth-header > p:last-child {
	max-width: 54ch;
	margin: 0.75rem 0 0;
	color: var(--aos-color-text-secondary);
}

.aos-verification-group {
	display: grid;
	gap: 0.35rem;
}

.aos-verification-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(12.5rem, auto);
	align-items: end;
	gap: 0.75rem;
}

.aos-verification-code {
	font-variant-numeric: tabular-nums;
	font-weight: 750;
	letter-spacing: 0.24em;
}

.woocommerce-account .aos-send-code {
	justify-content: center;
	min-height: 52px;
	margin: 0 !important;
	border-color: var(--aos-color-border-control-secondary) !important;
	background: var(--aos-color-surface-control-secondary) !important;
	color: var(--aos-color-brand-strong) !important;
	white-space: nowrap;
}

.woocommerce-account .aos-send-code:hover,
.woocommerce-account .aos-send-code:focus-visible {
	border-color: var(--aos-color-action-primary) !important;
	background: var(--aos-color-surface-brand-subtle) !important;
	color: var(--aos-color-action-primary) !important;
}

.woocommerce-account .aos-send-code:disabled {
	cursor: wait;
	opacity: 0.68;
}

.aos-verification-status {
	min-height: 1.35em;
	margin: 0;
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	line-height: 1.35;
}

.aos-verification-status[data-state="success"] {
	color: #14765f;
}

.aos-verification-status[data-state="error"] {
	color: var(--aos-color-state-danger, #a51d2d);
}

.aos-auth-card .woocommerce-password-strength,
.aos-auth-card .woocommerce-password-hint {
	margin-top: 0.35rem;
}

.is-carousel-clone a,
.is-carousel-clone button {
	pointer-events: auto;
}

@media (max-width: 600px) {
	.aos-auth-support-row {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0.75rem;
	}

	.aos-verification-row {
		grid-template-columns: minmax(0, 1fr);
	}

	.woocommerce-account .aos-send-code {
		width: 100% !important;
	}

	.aos-login-intro .aos-eyebrow,
	.aos-login-intro h2,
	.aos-login-intro > div > p:last-child {
		text-align: center;
	}
}

@media (max-width: 360px) {
	.aos-auth-support-row {
		grid-template-columns: minmax(0, 1fr);
	}

	.aos-auth-support-row .lost_password {
		white-space: normal;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aos-verification-status,
	.aos-send-code {
		transition: none !important;
	}
}

/* 0.9.26 catalog-first header and product navigation --------------------- */

.aos-site-header {
	background: var(--aos-color-surface-card);
	box-shadow: 0 1px 0 var(--aos-color-border-default);
	/* Mega panels intentionally paint below the sticky header. Paint
	 * containment clips them to the header box and makes populated menus
	 * appear empty, so keep the header overflow available on desktop. */
	contain: none;
	overflow: visible;
}

.aos-site-header.is-scrolled {
	background: var(--aos-color-surface-card);
	box-shadow: 0 10px 28px rgba(15, 27, 41, 0.09);
}

.aos-utility-bar,
.aos-site-header.is-scrolled .aos-utility-bar {
	height: 38px;
	min-height: 38px;
	max-height: 38px;
	opacity: 1;
	transform: none;
	visibility: visible;
}

.aos-utility-inner {
	display: grid;
	grid-template-columns: minmax(170px, 1fr) minmax(360px, auto) minmax(170px, 1fr);
	height: 38px;
	min-height: 38px;
	max-height: 38px;
	align-items: center;
	gap: var(--aos-space-5);
}

.aos-utility-inner > a {
	display: inline-flex;
	height: 38px;
	align-items: center;
	line-height: 1;
}

.aos-utility-phone {
	justify-self: start;
}

.aos-shipping-announcement {
	justify-self: center;
}

.aos-utility-email {
	justify-self: end;
}

.aos-shipping-announcement {
	display: inline-flex;
	height: 38px;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	gap: var(--aos-space-3);
	min-width: 0;
	text-decoration: none;
}

.aos-shipping-announcement span {
	display: flex;
	align-items: baseline;
	gap: var(--aos-space-3);
	min-width: 0;
}

.aos-shipping-announcement strong {
	font-size: var(--aos-font-size-200);
	letter-spacing: 0.055em;
	white-space: nowrap;
}

.aos-shipping-announcement small {
	color: var(--aos-color-on-dark-medium);
	font-size: var(--aos-font-size-050);
	white-space: nowrap;
}

.aos-shipping-truck {
	display: block;
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	fill: none;
	stroke: var(--aos-color-action-selected);
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.aos-utility-email {
	justify-self: end;
	white-space: nowrap;
}

.aos-utility-phone .aos-icon,
.aos-utility-email .aos-icon {
	display: block;
	flex: 0 0 auto;
	width: 14px;
	height: 14px;
}

.aos-header-main,
.aos-site-header.is-scrolled .aos-header-main {
	min-height: 74px;
	height: 74px;
	max-height: 74px;
	padding-block: 10px;
	transform: none;
}

.aos-brand-logo,
.aos-brand img {
	max-height: 54px;
	height: auto;
}

@media (min-width: 621px) {
	.aos-brand {
		width: clamp(176px, 13vw, 220px);
		min-width: clamp(176px, 13vw, 220px);
	}

	.aos-brand > a,
	.aos-brand .custom-logo-link {
		width: 100%;
	}

	.aos-brand-logo,
	.aos-brand img {
		width: 100%;
		max-width: 220px;
	}
}

.aos-header-search .search-field,
.aos-header-search button {
	height: 48px;
}

.aos-primary-nav {
	position: relative;
	min-height: 52px;
	background: #fff;
	border-block-start: 1px solid var(--aos-color-border-default);
	box-shadow: 0 1px 0 var(--aos-color-border-default);
}

.aos-primary-nav > .aos-container {
	position: relative;
}

.aos-product-menu {
	display: flex;
	align-items: stretch;
	gap: 0;
	min-height: 51px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.aos-product-menu > li {
	display: flex;
	align-items: stretch;
}

.aos-mega-menu {
	position: static;
}

.aos-mega-trigger,
.aos-product-menu .aos-menu-direct > a,
.aos-product-menu .aos-menu-support > a,
.aos-product-menu .aos-optional-nav-slot > a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 51px;
	padding: 0 17px;
	border: 0;
	background: transparent;
	color: var(--aos-color-text-primary);
	font: inherit;
	font-size: var(--aos-font-size-300);
	font-weight: var(--aos-font-weight-bold);
	text-decoration: none;
	cursor: pointer;
	transform: none;
	transition:
		background-color 180ms cubic-bezier(0.22, 1, 0.36, 1),
		color 160ms cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 180ms cubic-bezier(0.22, 1, 0.36, 1);
}

.aos-product-menu > li:hover > a,
.aos-product-menu > li:focus-within > a {
	transform: none;
}

.aos-mega-trigger[aria-expanded="true"],
.aos-mega-trigger:hover,
.aos-mega-trigger:focus-visible,
.aos-product-menu .aos-menu-direct > a:hover,
.aos-product-menu .aos-menu-direct > a:focus-visible,
.aos-product-menu .aos-menu-support > a:hover,
.aos-product-menu .aos-menu-support > a:focus-visible,
.aos-product-menu .aos-optional-nav-slot > a:hover,
.aos-product-menu .aos-optional-nav-slot > a:focus-visible,
.aos-product-menu .is-current > a {
	background: var(--aos-color-surface-brand-subtle);
	color: var(--aos-color-action-primary);
}

.aos-header-actions > a {
	transition:
		color 160ms cubic-bezier(0.22, 1, 0.36, 1),
		opacity 160ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 120ms cubic-bezier(0.22, 1, 0.36, 1);
}

@media (hover: hover) and (pointer: fine) {
	.aos-header-actions > a:hover {
		color: var(--aos-color-action-primary);
	}

	.aos-header-actions > a:active {
		transform: scale(0.98);
	}
}

.aos-menu-caret {
	width: 8px;
	height: 8px;
	border-inline-end: 1.5px solid currentColor;
	border-block-end: 1.5px solid currentColor;
	transform: rotate(45deg) translateY(-2px);
	transition: transform 180ms var(--aos-ease-standard);
}

.aos-mega-menu:hover .aos-menu-caret,
.aos-mega-menu:focus-within .aos-menu-caret {
	transform: rotate(45deg) translateY(-2px);
}

.aos-mega-menu.is-open .aos-menu-caret,
.aos-mega-trigger[aria-expanded="true"] .aos-menu-caret {
	transform: rotate(225deg) translate(-1px, -1px);
}

.aos-mega-panel {
	position: absolute;
	z-index: 5;
	top: 100%;
	left: var(--aos-space-page-gutter);
	right: var(--aos-space-page-gutter);
	padding: var(--aos-space-6);
	border: 1px solid var(--aos-color-border-default);
	border-block-start: 3px solid var(--aos-color-action-primary);
	background: rgba(255, 255, 255, 0.985);
	box-shadow: var(--aos-shadow-lg);
}

/*
 * site.js is the sole open-state owner. The legacy hover/focus rules predate
 * aria-expanded control and can visually reopen a panel after Escape while
 * its trigger correctly reports false.
 */
.aos-mega-menu:hover > .aos-mega-panel,
.aos-mega-menu:focus-within > .aos-mega-panel {
	opacity: 0;
	pointer-events: none;
	transform: translateY(8px) scale(0.99);
	visibility: hidden;
}

.aos-mega-menu.is-open > .aos-mega-panel {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0) scale(1);
	transition-delay: 0s;
	visibility: visible;
}

.aos-mega-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--aos-space-6);
	margin-block-end: var(--aos-space-4);
}

.aos-mega-heading > strong {
	font-family: var(--aos-font-family-display);
	font-size: var(--aos-font-size-700);
}

.aos-mega-heading > a {
	display: inline-flex;
	align-items: center;
	gap: var(--aos-space-2);
	color: var(--aos-color-action-primary);
	font-weight: var(--aos-font-weight-bold);
}

.aos-mega-heading svg {
	width: 18px;
	height: 18px;
}

.aos-mega-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: var(--aos-space-3);
}

.aos-mega-card {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	align-items: center;
	gap: var(--aos-space-3);
	min-width: 0;
	min-height: 88px;
	padding: var(--aos-space-2);
	border: 1px solid var(--aos-color-border-default);
	background: #fff;
	color: var(--aos-color-text-primary);
	text-decoration: none;
	transition: border-color 180ms var(--aos-ease-standard), transform 180ms var(--aos-ease-standard), box-shadow 180ms var(--aos-ease-standard);
}

.aos-mega-card:hover {
	border-color: var(--aos-color-action-primary);
	box-shadow: var(--aos-shadow-sm);
	transform: translateY(-2px);
}

.aos-mega-card img,
.aos-mega-card-no-image {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 72px;
	height: 72px;
	object-fit: contain;
	background: var(--aos-color-surface-brand-subtle);
}

.aos-mega-card span:last-child {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.aos-mega-card strong,
.aos-mega-card small {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.aos-mega-card small {
	color: var(--aos-color-text-secondary);
}

.aos-mega-coming {
	display: grid;
	grid-template-columns: 52px minmax(0, 1fr);
	align-items: center;
	gap: var(--aos-space-4);
	max-width: 560px;
	padding: var(--aos-space-5);
	border: 1px dashed var(--aos-color-border-strong);
	background: var(--aos-color-surface-brand-subtle);
}

.aos-mega-coming > span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	background: #fff;
	color: var(--aos-color-action-primary);
}

.aos-mega-coming p {
	margin: 4px 0 0;
	color: var(--aos-color-text-secondary);
}

/* Keep catalog-card facts as two deliberate single-line records. */
.aos-product-card .aos-product-facts,
.woocommerce-page .aos-catalog-results ul.products li.product .aos-product-facts {
	display: grid;
	grid-template-columns: minmax(0, 1fr) !important;
	gap: 4px;
	min-width: 0;
	padding: 10px 12px;
	background: var(--aos-color-surface-brand-subtle);
}

.aos-product-facts .aos-product-meta,
.aos-product-facts .aos-product-model {
	display: block;
	width: 100%;
	min-width: 0;
	margin: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.aos-product-facts .aos-product-model span {
	margin-inline-end: 7px;
	font-size: 0.72em;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* 0.9.42: restore the single-product purchase console after catalog-card rules. */
body.single-product.woocommerce div.product > .summary {
	position: relative;
	align-self: start;
}

body.single-product .summary > .aos-product-facts {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 1px;
	min-height: 0;
	padding: 0;
	margin-bottom: var(--aos-space-4);
}

body.single-product .summary > .aos-product-facts .aos-product-fact {
	min-width: 0;
	min-height: 64px;
}

body.single-product #wc-stripe-express-checkout-element {
	grid-column: 1 / -1;
	min-width: 0;
}

@media (max-width: 560px) {
	body.single-product.woocommerce div.product > .summary::before {
		top: var(--aos-space-5);
		left: 0;
		height: 44px;
	}
}

.aos-product-card h3 a,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
}

.aos-product-card .aos-wishlist-button,
.woocommerce-page ul.products li.product .aos-wishlist-button {
	z-index: 3;
}

@media (max-width: 1180px) and (min-width: 861px) {
	.aos-mega-trigger,
	.aos-product-menu .aos-menu-support > a {
		padding-inline: 10px;
		font-size: var(--aos-font-size-200);
	}

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

@media (max-width: 860px) {
	.aos-site-header,
	.aos-site-header.is-scrolled {
		position: sticky;
		top: 0;
		contain: none;
	}

	body.admin-bar .aos-site-header,
	body.admin-bar .aos-site-header.is-scrolled {
		top: 46px;
	}

	.aos-utility-bar,
	.aos-site-header.is-scrolled .aos-utility-bar {
		height: 44px !important;
		min-height: 44px !important;
		max-height: 44px !important;
	}

	.aos-utility-inner {
		display: flex;
		height: 44px;
		min-height: 44px;
		max-height: 44px;
		justify-content: center;
		padding-inline: 12px;
	}

	.aos-utility-inner > a,
	.aos-shipping-announcement {
		height: 44px;
		min-height: 44px;
	}

	.aos-shipping-announcement {
		transform: translateY(-2px);
	}

	.aos-utility-phone,
	.aos-utility-email,
	.aos-shipping-announcement small {
		display: none !important;
	}

	.aos-shipping-announcement strong {
		font-size: 0.69rem;
		letter-spacing: 0.045em;
	}

	.aos-header-main,
	.aos-site-header.is-scrolled .aos-header-main {
		display: grid;
		grid-template-columns: 44px minmax(112px, 1fr) auto;
		grid-template-rows: 66px 64px;
		gap: 0 10px;
		height: 130px !important;
		min-height: 130px !important;
		max-height: 130px !important;
		padding: 0 14px 10px;
	}

	.aos-menu-toggle {
		grid-column: 1;
		grid-row: 1;
		width: 44px;
		height: 44px;
		align-self: center;
	}

	.aos-brand {
		grid-column: 2;
		grid-row: 1;
		align-self: center;
	}

	.aos-brand-logo,
	.aos-brand img {
		max-width: 148px;
		max-height: 46px;
	}

	.aos-header-actions {
		grid-column: 3;
		grid-row: 1;
		align-self: center;
	}

	.aos-header-actions > a {
		width: 44px;
		height: 44px;
	}

	.aos-header-actions > a > span:not(.aos-cart-count):not(.aos-wishlist-count) {
		display: none;
	}

	.aos-header-search {
		grid-column: 1 / -1;
		grid-row: 2;
		width: 100%;
		min-width: 0;
	}

	.aos-header-search form,
	.aos-header-search .woocommerce-product-search {
		width: 100%;
	}

	.aos-header-search .search-field,
	.aos-header-search button {
		height: 54px;
	}

	.aos-primary-nav {
		position: fixed;
		z-index: 90;
		top: 0;
		bottom: 0;
		left: 0;
		width: min(88vw, 390px);
		height: 100dvh;
		min-height: 0;
		overflow-y: auto;
		transform: translateX(-105%);
		transition: transform 240ms var(--aos-ease-standard);
	}

	.aos-primary-nav.is-open {
		transform: translateX(0);
	}

	.aos-primary-nav > .aos-container {
		padding: 64px 14px 24px;
	}

	.aos-product-menu {
		display: grid;
		min-height: 0;
	}

	.aos-product-menu > li {
		display: block;
		border-block-end: 1px solid var(--aos-color-border-default);
	}

	.aos-mega-trigger,
	.aos-product-menu .aos-menu-support > a,
	.aos-product-menu .aos-optional-nav-slot > a {
		justify-content: space-between;
		width: 100%;
		min-height: 52px;
		padding: 0 10px;
	}

	.aos-mega-panel {
		position: static;
		padding: 12px 8px 18px;
		border: 0;
		border-block-start: 1px solid var(--aos-color-border-default);
		box-shadow: none;
	}

	.aos-menu-direct > a,
	.aos-nav-coming > span {
		justify-content: space-between;
		width: 100%;
		min-height: 52px;
		padding: 0 10px;
	}

	.aos-mega-heading > strong {
		font-size: var(--aos-font-size-500);
	}

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

	.aos-mega-card {
		grid-template-columns: 1fr;
		align-content: start;
		min-height: 154px;
	}

	.aos-mega-card img,
	.aos-mega-card-no-image {
		width: 100%;
		height: 96px;
	}

	.aos-mega-card strong,
	.aos-mega-card small {
		white-space: normal;
	}
}

@media (max-width: 390px) {
	.aos-header-main,
	.aos-site-header.is-scrolled .aos-header-main {
		grid-template-columns: 40px minmax(104px, 1fr) auto;
		gap: 0 5px;
		padding-inline: 9px;
	}

	.aos-header-actions {
		gap: 1px;
	}

	.aos-header-actions > a {
		width: 40px;
	}

	.aos-brand-logo,
	.aos-brand img {
		max-width: 126px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aos-mega-panel,
	.aos-mega-card,
	.aos-menu-caret,
	.aos-primary-nav,
	.aos-mega-trigger,
	.aos-product-menu .aos-menu-direct > a,
	.aos-product-menu .aos-menu-support > a,
	.aos-product-menu .aos-optional-nav-slot > a,
	.aos-header-actions > a {
		transition: none !important;
	}
}

/* Full-site UI QA corrections — 0.9.26 ---------------------------------- */

/* Keep the utility content optically centered inside the fixed 38px bar. */
@media (min-width: 861px) {
	.aos-utility-inner > a {
		transform: translateY(-1px);
	}
}

/*
 * The carousel clips off-canvas slides by design. Draw the hover accent just
 * inside the card so its top edge remains visible while the card lifts.
 */
.aos-featured-grid > .aos-product-card::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 5;
	height: 2px;
	background: var(--aos-color-action-primary);
	opacity: 0;
	pointer-events: none;
	transition: opacity 160ms var(--aos-ease-standard);
}

@media (hover: hover) and (pointer: fine) {
	.aos-featured-grid > .aos-product-card:hover::after,
	.aos-featured-grid > .aos-product-card:focus-within::after {
		opacity: 1;
	}
}

/* Give each selector panel a stable catalog surface without fake cards. */
@media (min-width: 861px) {
	.wsp-equipment-selector__tabs {
		min-width: 236px;
	}

	.wsp-equipment-selector__panel {
		min-height: 236px;
	}
}

/* WooCommerce + Stripe add-payment form: remove compounded mobile padding. */
.woocommerce-add-payment-method #add_payment_method,
.woocommerce-add-payment-method #payment,
.woocommerce-add-payment-method #payment ul.payment_methods,
.woocommerce-add-payment-method #payment li.woocommerce-PaymentMethod,
.woocommerce-add-payment-method #payment .payment_box,
.woocommerce-add-payment-method #wc-stripe-upe-form,
.woocommerce-add-payment-method .wc-stripe-upe-element {
	min-width: 0;
	max-width: 100%;
}

.woocommerce-add-payment-method #payment ul.payment_methods {
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-add-payment-method #payment li.woocommerce-PaymentMethod {
	margin: 0;
	padding: var(--aos-space-3);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-surface-card);
}

.woocommerce-add-payment-method #payment .payment_box {
	width: 100%;
	margin-block-start: var(--aos-space-3);
}

.woocommerce-add-payment-method #wc-stripe-upe-form,
.woocommerce-add-payment-method #add_payment_method iframe {
	width: 100% !important;
}

/* Stripe's plugin stylesheet uses two IDs, so match that specificity here. */
body.woocommerce-add-payment-method #add_payment_method #payment ul.payment_methods,
body.woocommerce-add-payment-method #add_payment_method #payment ul.payment_methods > li.woocommerce-PaymentMethod,
body.woocommerce-add-payment-method #add_payment_method #payment ul.payment_methods > li.woocommerce-PaymentMethod .payment_box,
body.woocommerce-add-payment-method #add_payment_method #payment #wc-stripe-upe-form,
body.woocommerce-add-payment-method #add_payment_method #payment .wc-stripe-upe-element,
body.woocommerce-add-payment-method #add_payment_method #payment .wc-stripe-upe-element iframe {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
}

body.woocommerce-add-payment-method #add_payment_method #payment ul.payment_methods > li.woocommerce-PaymentMethod .payment_box {
	margin: var(--aos-space-3) 0 0 !important;
	padding: 0 !important;
}

body.woocommerce-add-payment-method #add_payment_method #payment #wc-stripe-upe-form,
body.woocommerce-add-payment-method #add_payment_method #payment .wc-stripe-upe-element,
body.woocommerce-add-payment-method #add_payment_method #payment .wc-stripe-upe-element iframe {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* A failed CDN request must leave a deliberate product-media state. */
.aos-image-load-failed {
	display: none !important;
}

.has-image-fallback {
	position: relative;
	display: grid !important;
	place-items: center;
	min-height: 96px;
	background: linear-gradient(145deg, #f8fbfd, #edf7fa);
}

.aos-product-image.has-image-fallback,
.wsp-equipment-selector__media.has-image-fallback {
	min-height: clamp(160px, 18vw, 250px);
}

.woocommerce-product-gallery__image a.has-image-fallback {
	min-height: clamp(300px, 48vw, 620px);
}

.aos-image-fallback {
	display: grid;
	place-items: center;
	gap: 8px;
	padding: var(--aos-space-4);
	color: var(--aos-color-text-muted);
	font-size: 0.8125rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}

.aos-image-fallback svg {
	width: 42px;
	height: 42px;
	fill: none;
	stroke: var(--aos-color-action-primary);
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}

@media (max-width: 600px) {
	.woocommerce-add-payment-method .woocommerce-MyAccount-content {
		padding-inline: 10px;
	}

	.woocommerce-add-payment-method #payment li.woocommerce-PaymentMethod {
		padding: 10px;
	}

	.woocommerce-add-payment-method #payment .payment_box,
	.woocommerce-add-payment-method #wc-stripe-upe-form {
		padding-inline: 0 !important;
	}
}

/* 0.9.30 reference-led customer account gateway ------------------------ */

body.woocommerce-account:not(.logged-in) .aos-commerce-page-account {
	--wsp-auth-canvas: #f7fbff;
	--wsp-auth-panel: #eef8ff;
	--wsp-auth-card: #fff;
	--wsp-auth-ink: #102338;
	--wsp-auth-muted: #60758a;
	--wsp-auth-line: #d8e8f2;
	--wsp-auth-accent: #087fc2;
	--wsp-auth-accent-strong: #006bab;
	--wsp-auth-success: #14765f;
	--wsp-auth-danger: #a51d2d;
	--wsp-auth-card-shadow: 0 18px 48px rgba(16, 52, 82, 0.12);
	--wsp-auth-panel-radius: 12px;
	min-height: 70vh;
	background:
		radial-gradient(circle at 82% 8%, rgba(0, 174, 224, 0.07), transparent 26rem),
		linear-gradient(180deg, #fff 0, var(--wsp-auth-canvas) 38rem, #fff 100%);
	color: var(--wsp-auth-ink);
}

body.woocommerce-account:not(.logged-in) .aos-commerce-header-account {
	display: block;
	max-width: 82rem;
	margin: 0 auto;
	padding-block: clamp(2.25rem, 4vw, 3.75rem) clamp(1.25rem, 2vw, 2rem);
}

body.woocommerce-account:not(.logged-in) .aos-commerce-header-account .aos-commerce-heading {
	width: 100%;
	max-width: none;
}

body.woocommerce-account:not(.logged-in) .aos-commerce-header-account .aos-eyebrow {
	margin-bottom: 0.65rem;
	color: var(--wsp-auth-accent);
}

body.woocommerce-account:not(.logged-in) .aos-commerce-header-account h1 {
	max-width: none;
	margin: 0;
	font-size: clamp(2.65rem, 4.3vw, 4.7rem);
	line-height: 0.98;
	letter-spacing: -0.045em;
	white-space: normal;
	text-wrap: balance;
}

body.woocommerce-account:not(.logged-in) .aos-commerce-header-account .aos-commerce-intro {
	max-width: 48rem;
	margin: 0.8rem 0 0;
	color: var(--wsp-auth-muted);
	font-size: clamp(1rem, 1.2vw, 1.125rem);
	line-height: 1.6;
}

body.woocommerce-account:not(.logged-in) .aos-commerce-content,
body.woocommerce-account:not(.logged-in) .aos-commerce-content > .woocommerce {
	min-width: 0;
}

body.woocommerce-account:not(.logged-in) .aos-login-wrapper {
	display: grid;
	grid-template-columns: minmax(21rem, 0.9fr) minmax(27rem, 1.1fr);
	gap: clamp(2rem, 4.2vw, 4.75rem);
	align-items: start;
	max-width: 82rem;
	margin: 0 auto clamp(2rem, 4vw, 3.5rem);
}

.aos-account-benefits {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: clamp(1.5rem, 3vw, 2.5rem);
	overflow: hidden;
	border: 1px solid #e0eef6;
	border-radius: var(--wsp-auth-panel-radius);
	background:
		linear-gradient(rgba(8, 127, 194, 0.035) 1px, transparent 1px),
		linear-gradient(90deg, rgba(8, 127, 194, 0.035) 1px, transparent 1px),
		linear-gradient(145deg, #f2faff 0%, #eaf6fe 100%);
	background-size: 32px 32px, 32px 32px, auto;
}

.aos-account-equipment {
	position: relative;
	display: grid;
	place-items: end center;
	min-height: clamp(13rem, 22vw, 18rem);
	margin: -0.5rem 0 1.15rem;
}

.aos-account-equipment::before,
.aos-account-equipment::after,
.aos-account-equipment-orbit {
	position: absolute;
	content: "";
	pointer-events: none;
}

.aos-account-equipment::before {
	inset: 8% 6% 3%;
	border-radius: 50% 50% 42% 42%;
	background: radial-gradient(circle at 46% 38%, #fff 0 8%, #dff2ff 45%, rgba(200, 234, 255, 0.25) 72%);
}

.aos-account-equipment::after {
	right: 4%;
	bottom: 4%;
	left: 4%;
	height: 1px;
	background: linear-gradient(90deg, transparent, #79c8f3 18%, #79c8f3 82%, transparent);
}

.aos-account-equipment-orbit {
	inset: 12% 13% 7%;
	border: 1px solid rgba(8, 127, 194, 0.28);
	border-block-color: transparent;
	border-radius: 50%;
	transform: rotate(-8deg);
}

.aos-account-equipment img {
	position: relative;
	z-index: 1;
	width: min(88%, 22rem);
	height: clamp(12rem, 20vw, 16.5rem);
	object-fit: contain;
	object-position: center bottom;
	filter: drop-shadow(0 18px 18px rgba(22, 52, 74, 0.18));
	mix-blend-mode: multiply;
}

.aos-account-benefit-copy {
	position: relative;
	z-index: 1;
}

.aos-account-benefit-copy h2 {
	margin: 0 0 0.65rem;
	color: var(--wsp-auth-ink);
	font-size: clamp(1.35rem, 2vw, 1.75rem);
	line-height: 1.15;
	letter-spacing: -0.025em;
}

.aos-account-benefit-copy p {
	max-width: 44ch;
	margin: 0;
	color: var(--wsp-auth-muted);
	font-size: 0.925rem;
	line-height: 1.55;
}

.aos-account-benefit-list {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 0;
	margin: 1.4rem 0 0;
	padding: 0;
	list-style: none;
}

.aos-account-benefit-list li {
	display: grid;
	grid-template-columns: 2.55rem minmax(0, 1fr);
	gap: 0.8rem;
	align-items: center;
	min-width: 0;
	padding: 0.72rem 0;
	border-top: 1px solid rgba(79, 151, 193, 0.16);
}

.aos-account-benefit-list li:first-child {
	border-top: 0;
}

.aos-account-benefit-icon,
.aos-account-assurance-icon,
.aos-account-assurance-shield {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	border: 1px solid #b9def3;
	border-radius: 50%;
	background: #fff;
	color: var(--wsp-auth-accent);
}

.aos-account-benefit-icon {
	width: 2.55rem;
	height: 2.55rem;
}

.aos-account-benefit-icon .aos-icon {
	width: 1.25rem;
	height: 1.25rem;
}

.aos-account-benefit-list strong,
.aos-account-benefit-list small {
	display: block;
}

.aos-account-benefit-list strong {
	margin-bottom: 0.15rem;
	color: var(--wsp-auth-ink);
	font-size: 0.875rem;
	line-height: 1.25;
}

.aos-account-benefit-list small {
	color: var(--wsp-auth-muted);
	font-size: 0.75rem;
	line-height: 1.35;
}

body.woocommerce-account:not(.logged-in) .aos-auth-forms {
	display: flex;
	align-items: flex-start;
	min-width: 0;
}

body.woocommerce-account:not(.logged-in) .aos-auth-card.aos-auth-single {
	width: 100%;
	padding: clamp(1.75rem, 3.4vw, 3rem);
	border: 1px solid var(--wsp-auth-line);
	border-top: 1px solid var(--wsp-auth-line);
	border-radius: var(--wsp-auth-panel-radius);
	background: var(--wsp-auth-card);
	box-shadow: var(--wsp-auth-card-shadow);
	animation: wsp-auth-card-enter 220ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes wsp-auth-card-enter {
	from {
		opacity: 0.96;
		transform: translateY(6px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

body.woocommerce-account:not(.logged-in) .aos-auth-header {
	margin-bottom: 1.55rem;
}

body.woocommerce-account:not(.logged-in) .aos-auth-header .aos-eyebrow {
	margin-bottom: 0.55rem;
	color: var(--wsp-auth-accent);
}

body.woocommerce-account:not(.logged-in) .aos-auth-header h2 {
	margin: 0;
	color: var(--wsp-auth-ink);
	font-size: clamp(1.55rem, 2.1vw, 2rem);
	line-height: 1.12;
	letter-spacing: -0.025em;
}

body.woocommerce-account:not(.logged-in) .aos-auth-header > p:last-child {
	margin-top: 0.6rem;
	color: var(--wsp-auth-muted);
	font-size: 0.925rem;
	line-height: 1.55;
}

body.woocommerce-account:not(.logged-in) .aos-auth-card .woocommerce-form {
	gap: 1rem;
}

body.woocommerce-account:not(.logged-in) .aos-auth-card .woocommerce-form .form-row,
body.woocommerce-account:not(.logged-in) .aos-auth-card .woocommerce-form .woocommerce-form-row {
	display: block;
	float: none;
	width: 100%;
	min-width: 0;
}

body.woocommerce-account:not(.logged-in) .aos-auth-card label {
	display: block;
	float: none;
	width: auto;
	margin-bottom: 0.35rem;
	color: #263c50;
	font-size: 0.8125rem;
	font-weight: 700;
	line-height: 1.3;
}

body.woocommerce-account:not(.logged-in) .aos-auth-card input.input-text {
	box-sizing: border-box;
	display: block;
	width: 100%;
	min-height: 50px;
	padding: 0.75rem 0.9rem;
	border: 1px solid #cbdde8;
	border-radius: 5px;
	background: #fbfdff;
	color: var(--wsp-auth-ink);
	box-shadow: inset 0 1px 2px rgba(16, 52, 82, 0.025);
	transition: border-color 120ms ease-out, box-shadow 120ms ease-out, background-color 120ms ease-out;
}

body.woocommerce-account:not(.logged-in) .aos-auth-card input.input-text:focus {
	outline: 0;
	border-color: var(--wsp-auth-accent);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(8, 127, 194, 0.16);
}

body.woocommerce-account:not(.logged-in) .aos-auth-support-row {
	min-height: 32px;
	margin-top: -0.1rem;
}

body.woocommerce-account:not(.logged-in) .aos-auth-support-row .lost_password {
	color: var(--wsp-auth-accent-strong);
	text-decoration: underline;
	text-underline-offset: 3px;
}

body.woocommerce-account:not(.logged-in) .aos-auth-primary-action .aos-button,
body.woocommerce-account:not(.logged-in) .aos-auth-primary-action button {
	min-height: 50px;
	border-color: var(--wsp-auth-accent-strong) !important;
	border-radius: 5px;
	background: linear-gradient(90deg, var(--wsp-auth-accent), #056fba) !important;
	box-shadow: 0 8px 18px rgba(8, 127, 194, 0.17);
	transition: transform 100ms ease-out, box-shadow 160ms ease-out, background-color 160ms ease-out;
}

body.woocommerce-account:not(.logged-in) .aos-auth-primary-action .aos-button:hover,
body.woocommerce-account:not(.logged-in) .aos-auth-primary-action button:hover {
	box-shadow: 0 11px 22px rgba(8, 127, 194, 0.23);
}

body.woocommerce-account:not(.logged-in) .aos-auth-primary-action .aos-button:active,
body.woocommerce-account:not(.logged-in) .aos-auth-primary-action button:active {
	transform: scale(0.99);
}

body.woocommerce-account:not(.logged-in) .aos-auth-switch {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 0.9rem;
	margin-top: 1.65rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--wsp-auth-line);
	text-align: center;
}

body.woocommerce-account:not(.logged-in) .aos-auth-switch small {
	width: max-content;
	max-width: 100%;
	margin: -2.2rem auto 0.5rem;
	padding-inline: 0.9rem;
	background: var(--wsp-auth-card);
	color: var(--wsp-auth-muted);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.02em;
}

body.woocommerce-account:not(.logged-in) .aos-auth-switch strong {
	color: var(--wsp-auth-muted);
	font-size: 0.8125rem;
	font-weight: 500;
}

body.woocommerce-account:not(.logged-in) .aos-auth-switch .aos-button {
	justify-content: center;
	width: 100%;
	min-height: 48px;
	margin: 0 !important;
	border-color: var(--wsp-auth-accent) !important;
	border-radius: 5px;
	background: #fff !important;
	color: var(--wsp-auth-accent-strong) !important;
}

.aos-slider-verification {
	display: grid;
	gap: 0.55rem;
	padding: 0.75rem;
	border: 1px solid var(--wsp-auth-line);
	border-radius: 7px;
	background: #f7fbfe;
}

.aos-slider-heading {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.75rem;
	min-width: 0;
}

.aos-slider-heading strong {
	color: var(--wsp-auth-ink);
	font-size: 0.8125rem;
}

.aos-slider-heading span {
	min-width: 0;
	color: var(--wsp-auth-muted);
	font-size: 0.75rem;
	line-height: 1.35;
	text-align: right;
}

.aos-slider-track {
	position: relative;
	height: 48px;
	overflow: hidden;
	border: 1px solid #c5dce9;
	border-radius: 6px;
	background: #edf5fa;
}

.aos-slider-track > span {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	padding-left: 2.6rem;
	color: #476477;
	font-size: 0.8125rem;
	font-weight: 750;
	letter-spacing: 0.01em;
	pointer-events: none;
}

.aos-slider-control {
	--aos-slider-progress: 0%;
	position: absolute;
	inset: 0;
	z-index: 1;
	width: 100%;
	height: 48px;
	margin: 0;
	padding: 0;
	cursor: grab;
	appearance: none;
	-webkit-appearance: none;
	border: 0;
	outline: 0;
	background: linear-gradient(90deg, rgba(8, 127, 194, 0.2) 0 var(--aos-slider-progress), transparent var(--aos-slider-progress) 100%);
}

.aos-slider-control:active {
	cursor: grabbing;
}

.aos-slider-track:focus-within {
	border-color: var(--wsp-auth-accent);
	box-shadow: 0 0 0 3px rgba(8, 127, 194, 0.18);
}

.aos-slider-control::-webkit-slider-runnable-track {
	height: 46px;
	border: 0;
	background: transparent;
}

.aos-slider-control::-webkit-slider-thumb {
	width: 42px;
	height: 42px;
	margin-top: 2px;
	appearance: none;
	-webkit-appearance: none;
	border: 1px solid #0068a3;
	border-radius: 5px;
	background: linear-gradient(135deg, #1395d5, #0874b5);
	box-shadow: 0 3px 9px rgba(8, 88, 137, 0.22);
}

.aos-slider-control::-moz-range-track {
	height: 46px;
	border: 0;
	background: transparent;
}

.aos-slider-control::-moz-range-progress {
	height: 46px;
	background: rgba(8, 127, 194, 0.2);
}

.aos-slider-control::-moz-range-thumb {
	width: 42px;
	height: 42px;
	border: 1px solid #0068a3;
	border-radius: 5px;
	background: linear-gradient(135deg, #1395d5, #0874b5);
	box-shadow: 0 3px 9px rgba(8, 88, 137, 0.22);
}

.aos-slider-verification[data-state="checking"] {
	border-color: #9bcce6;
	background: #f0f9fe;
}

.aos-slider-verification[data-state="verified"] {
	border-color: #8bcdb9;
	background: #f0fbf7;
}

.aos-slider-verification[data-state="verified"] .aos-slider-heading span {
	color: var(--wsp-auth-success);
	font-weight: 800;
}

.aos-slider-verification[data-state="verified"] .aos-slider-control {
	opacity: 1;
	background: linear-gradient(90deg, rgba(20, 118, 95, 0.3), rgba(20, 118, 95, 0.18));
}

.aos-slider-verification[data-state="verified"] .aos-slider-control::-webkit-slider-thumb,
.aos-slider-verification[data-state="verified"] .aos-slider-control::-moz-range-thumb {
	border-color: #0f6c55;
	background: var(--wsp-auth-success);
}

.aos-slider-verification[data-state="error"] {
	border-color: rgba(165, 29, 45, 0.38);
	background: #fff8f8;
}

.aos-slider-verification[data-state="error"] .aos-slider-heading span {
	color: var(--wsp-auth-danger);
}

body.woocommerce-account:not(.logged-in) .aos-verification-row {
	grid-template-columns: minmax(0, 1fr) minmax(12rem, auto);
}

body.woocommerce-account:not(.logged-in) .aos-send-code {
	min-height: 50px;
	border-radius: 5px;
}

.aos-account-assurance {
	display: grid;
	grid-template-columns: minmax(18rem, 1.2fr) minmax(0, 2.8fr);
	gap: clamp(1.5rem, 3vw, 3rem);
	align-items: center;
	max-width: 82rem;
	margin: 0 auto clamp(3rem, 6vw, 5.5rem);
	padding: clamp(1.25rem, 2.4vw, 2rem);
	border: 1px solid #d7eaf4;
	border-radius: 10px;
	background: linear-gradient(90deg, #eef8ff, #f8fcff 52%, #eef8ff);
}

.aos-account-assurance-intro {
	display: grid;
	grid-template-columns: 4rem minmax(0, 1fr);
	gap: 1rem;
	align-items: center;
	min-width: 0;
}

.aos-account-assurance-intro strong,
.aos-account-assurance-intro small,
.aos-account-assurance-grid strong,
.aos-account-assurance-grid small {
	display: block;
}

.aos-account-assurance-intro strong {
	margin-bottom: 0.35rem;
	font-size: 1.05rem;
	line-height: 1.25;
}

.aos-account-assurance-intro small,
.aos-account-assurance-grid small {
	color: var(--wsp-auth-muted);
	font-size: 0.75rem;
	line-height: 1.45;
}

.aos-account-assurance-shield {
	width: 4rem;
	height: 4rem;
	box-shadow: 0 8px 20px rgba(8, 127, 194, 0.12);
}

.aos-account-assurance-shield .aos-icon {
	width: 2rem;
	height: 2rem;
}

.aos-account-assurance-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	min-width: 0;
}

.aos-account-assurance-grid > div {
	display: grid;
	justify-items: center;
	min-width: 0;
	padding: 0.25rem 1.25rem;
	border-left: 1px solid #d8e8f2;
	text-align: center;
}

.aos-account-assurance-icon {
	width: 2.75rem;
	height: 2.75rem;
	margin-bottom: 0.65rem;
}

.aos-account-assurance-icon .aos-icon {
	width: 1.25rem;
	height: 1.25rem;
}

.aos-account-assurance-grid strong {
	margin-bottom: 0.35rem;
	font-size: 0.8125rem;
}

@media (max-width: 900px) {
	body.woocommerce-account:not(.logged-in) .aos-login-wrapper {
		grid-template-columns: minmax(17rem, 0.82fr) minmax(24rem, 1.18fr);
		gap: 1.5rem;
	}

	.aos-account-benefits,
	body.woocommerce-account:not(.logged-in) .aos-auth-card.aos-auth-single {
		padding: 1.5rem;
	}

	.aos-account-assurance {
		grid-template-columns: minmax(0, 1fr);
	}

	.aos-account-assurance-intro {
		max-width: 36rem;
	}
}

@media (max-width: 780px) {
	body.woocommerce-account:not(.logged-in) .aos-commerce-header-account {
		padding-block: 1.75rem 1.25rem;
	}

	body.woocommerce-account:not(.logged-in) .aos-commerce-header-account h1 {
		font-size: clamp(2.5rem, 12vw, 3.65rem);
	}

	body.woocommerce-account:not(.logged-in) .aos-login-wrapper {
		display: flex;
		flex-direction: column;
		gap: 1.25rem;
		margin-bottom: 1.5rem;
	}

	body.woocommerce-account:not(.logged-in) .aos-auth-forms {
		order: 1;
		margin: 0;
	}

	.aos-account-benefits {
		order: 2;
	}

	.aos-account-equipment {
		min-height: 12rem;
	}

	.aos-account-equipment img {
		height: 12rem;
	}

	.aos-account-assurance-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.aos-account-assurance-grid > div {
		grid-template-columns: 2.75rem minmax(0, 1fr);
		justify-items: start;
		gap: 0.25rem 0.8rem;
		padding: 1rem 0;
		border-top: 1px solid #d8e8f2;
		border-left: 0;
		text-align: left;
	}

	.aos-account-assurance-grid .aos-account-assurance-icon {
		grid-row: 1 / span 2;
		margin: 0;
	}
}

@media (max-width: 600px) {
	body.woocommerce-account:not(.logged-in) .aos-auth-card.aos-auth-single,
	.aos-account-benefits,
	.aos-account-assurance {
		border-radius: 8px;
	}

	body.woocommerce-account:not(.logged-in) .aos-auth-card.aos-auth-single {
		padding: 1.35rem 1.1rem;
	}

	body.woocommerce-account:not(.logged-in) .aos-auth-support-row {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0.7rem;
	}

	.aos-slider-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.25rem;
	}

	.aos-slider-heading span {
		text-align: left;
	}

	body.woocommerce-account:not(.logged-in) .aos-verification-row {
		grid-template-columns: minmax(0, 1fr);
	}

	body.woocommerce-account:not(.logged-in) .aos-send-code {
		width: 100% !important;
	}

	.aos-account-assurance {
		gap: 1rem;
		padding: 1.1rem;
	}
}

@media (max-width: 360px) {
	body.woocommerce-account:not(.logged-in) .aos-auth-support-row {
		grid-template-columns: minmax(0, 1fr);
	}

	body.woocommerce-account:not(.logged-in) .aos-auth-support-row .lost_password {
		white-space: normal;
	}

	.aos-account-assurance-intro {
		grid-template-columns: 3.25rem minmax(0, 1fr);
	}

	.aos-account-assurance-shield {
		width: 3.25rem;
		height: 3.25rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.woocommerce-account:not(.logged-in) .aos-auth-card.aos-auth-single {
		animation: none;
	}

	body.woocommerce-account:not(.logged-in) .aos-auth-primary-action .aos-button,
	body.woocommerce-account:not(.logged-in) .aos-auth-primary-action button,
	body.woocommerce-account:not(.logged-in) .aos-auth-card input.input-text {
		transition-duration: 0.01ms;
	}
}

/* 0.9.44: bounded native WooCommerce product gallery ---------------------- */

.single-product.woocommerce div.product .woocommerce-product-gallery__image > a {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: minmax(0, 1fr);
	place-items: center;
	width: 100%;
	height: clamp(420px, 38vw, 560px);
	overflow: hidden;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-neutral-0);
}

.single-product.woocommerce div.product .woocommerce-product-gallery__image > a > img:not(.zoomImg) {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	box-sizing: border-box;
	display: block;
	padding: clamp(18px, 2.4vw, 32px);
	border: 0;
	border-radius: 0;
	background: transparent;
	object-fit: contain;
	object-position: center;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs {
	grid-template-columns: none;
	grid-auto-flow: column;
	grid-auto-columns: 82px;
	justify-content: start;
	max-width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	padding: 2px 2px 8px;
	scroll-padding-inline: 2px;
	scroll-snap-type: x mandatory;
	scrollbar-width: thin;
	overscroll-behavior-inline: contain;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li {
	width: 82px;
	scroll-snap-align: start;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li img {
	aspect-ratio: 1;
	padding: 6px;
	object-fit: contain;
}

.single-product .woocommerce-product-gallery .aos-single-image-thumbnails {
	display: none !important;
}

@media (max-width: 820px) {
	.single-product.woocommerce div.product .woocommerce-product-gallery__image > a {
		height: min(84vw, 380px);
	}

	.single-product.woocommerce div.product .woocommerce-product-gallery__image > a > img:not(.zoomImg) {
		padding: clamp(12px, 4vw, 20px);
	}

	.single-product .woocommerce-product-gallery .flex-control-thumbs {
		grid-auto-columns: 68px;
	}

	.single-product .woocommerce-product-gallery .flex-control-thumbs li {
		width: 68px;
	}
}

/* AO Supply approved-account commerce. */

.aos-price-locked {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0.45rem 0.7rem;
	border: 1px solid rgba(0, 123, 181, 0.24);
	border-radius: 999px;
	background: #f0fbfc;
	color: #1a365d;
	font-size: 0.82rem;
	font-weight: 800;
	line-height: 1.25;
}

.aos-account-price-note {
	display: block;
	margin-top: 0.35rem;
	color: #005f8f;
	font-size: 0.75rem;
	font-weight: 800;
	line-height: 1.35;
}

.aos-product-access-action,
.aos-account-access-state {
	display: grid;
	gap: 0.7rem;
	margin: 1.25rem 0;
	padding: clamp(1rem, 2.5vw, 1.5rem);
	border: 1px solid rgba(0, 123, 181, 0.24);
	border-radius: 18px;
	background: linear-gradient(135deg, #f0fbfc, #fff);
	box-shadow: 0 10px 28px rgba(15, 27, 41, 0.07);
}

.aos-product-access-action p,
.aos-account-access-state p,
.aos-account-access-state h2 {
	margin: 0;
}

.aos-account-access-state.is-denied {
	border-color: rgba(143, 52, 52, 0.28);
	background: #fff8f7;
}

.aos-dealer-request-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.9rem 1rem;
	margin: 1.25rem 0;
	padding: clamp(1rem, 2.5vw, 1.4rem);
	border: 1px solid rgba(0, 123, 181, 0.22);
	border-radius: 18px;
	background: #f8fcfe;
}

.aos-dealer-request-fields legend {
	padding: 0 0.4rem;
	color: #0f1b29;
	font-size: 1rem;
	font-weight: 850;
}

.aos-dealer-request-fields .form-row-wide,
.aos-dealer-request-fields .aos-auth-note {
	grid-column: 1 / -1;
}

.aos-dealer-request-fields .form-row {
	margin: 0;
}

.aos-dealer-request-fields textarea,
.aos-dealer-request-fields select {
	width: 100%;
}

@media (max-width: 640px) {
	.aos-dealer-request-fields {
		grid-template-columns: 1fr;
	}

	.aos-dealer-request-fields .form-row,
	.aos-dealer-request-fields .aos-auth-note {
		grid-column: 1;
	}
}
