/*
Theme Name: AO Supply Commerce
Theme URI: https://aosupply.co/
Author: AO Supply
Description: A category-first WooCommerce storefront for AO Supply HVAC equipment.
Version: 0.7.4
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 8.1
Text Domain: ao-supply
*/

:root {
	/* Color references: --aos-color-{family}-{step}. */
	--aos-color-pine-950: #0e2d27;
	--aos-color-pine-900: #163d35;
	--aos-color-sage-700: #245e50;
	--aos-color-sage-600: #2f7664;
	--aos-color-sage-500: #438b77;
	--aos-color-mint-100: #e8f3ee;
	--aos-color-mint-50: #f2f8f5;
	--aos-color-amber-600: #da8c22;
	--aos-color-amber-500: #f2a640;
	--aos-color-amber-100: #fff1d8;
	--aos-color-sand-50: #f7f5ef;
	--aos-color-neutral-0: #fff;
	--aos-color-ink-900: #17211e;
	--aos-color-slate-700: #4b5954;
	--aos-color-slate-600: #64716c;
	--aos-color-slate-400: #94a09b;
	--aos-color-line-200: #d9e3de;
	--aos-color-red-600: #b83a3a;
	--aos-color-green-200: #b9e0d3;
	--aos-color-green-300: #8fc5b4;
	--aos-color-green-150: #bfd1c9;

	/* 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-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-sage-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(14, 45, 39, 0.54);
	--aos-gradient-image-scrim: linear-gradient(0deg, rgba(14, 45, 39, 0.96) 0%, rgba(14, 45, 39, 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(14, 45, 39, 0.97) 0%, rgba(14, 45, 39, 0.89) 38%, rgba(14, 45, 39, 0.38) 67%, rgba(14, 45, 39, 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-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;

	/* 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-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. */
	--aos-radius-xs: 4px;
	--aos-radius-sm: 8px;
	--aos-radius-md: 10px;
	--aos-radius-lg: 14px;
	--aos-radius-xl: 20px;
	--aos-radius-full: 999px;
	--aos-shadow-border: 0 1px 0 var(--aos-color-border-default);
	--aos-shadow-focus: 0 0 0 3px rgba(47, 118, 100, 0.12);
	--aos-shadow-sm: 0 12px 28px rgba(14, 45, 39, 0.08);
	--aos-shadow-md: 0 14px 30px rgba(14, 45, 39, 0.08);
	--aos-shadow-lg: 0 18px 50px rgba(14, 45, 39, 0.1);
	--aos-shadow-console: 0 22px 54px rgba(14, 45, 39, 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: 36px;
	--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-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-duration-slow: 380ms;
	--aos-duration-chapter: 560ms;
	--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;
}

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 .aos-section {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity var(--aos-duration-chapter) var(--aos-ease-standard), transform var(--aos-duration-chapter) var(--aos-ease-standard);
}

.aos-motion-ready .aos-section.is-visible {
	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 220ms ease, box-shadow 220ms ease, backdrop-filter 220ms ease;
}

body.admin-bar .aos-site-header {
	top: 32px;
}

.aos-site-header.is-scrolled {
	background: rgba(255, 255, 255, 0.9);
	box-shadow: var(--aos-shadow-sm);
	backdrop-filter: blur(10px) saturate(140%);
	-webkit-backdrop-filter: blur(10px) saturate(140%);
}

.aos-utility-bar {
	background: var(--aos-color-brand-strong);
	color: var(--aos-color-on-dark-high);
	font-size: var(--aos-font-size-200);
}

.aos-utility-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--aos-space-4);
	min-height: var(--aos-size-header-utility);
}

.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: 72px;
}

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

.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-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-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 {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	height: 100%;
}

.aos-menu-caret {
	display: inline-grid;
	place-items: center;
	font-size: 1rem;
	line-height: 1;
	transform: translateY(-1px);
	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(180deg);
}

.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:first-child > a {
	color: var(--aos-color-action-primary);
}

.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: rgba(255, 255, 255, 0.98);
	box-shadow: var(--aos-shadow-lg);
	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 {
	display: grid;
	grid-template-columns: 76px minmax(0, 1fr);
	align-items: center;
	gap: var(--aos-space-3);
	min-width: 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-soft);
	box-shadow: var(--aos-shadow-sm);
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms cubic-bezier(0.22, 1, 0.36, 1);
}

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

.aos-mega-card img {
	width: 76px;
	height: 76px;
	object-fit: contain;
	mix-blend-mode: multiply;
}

.aos-mega-card span {
	display: grid;
	gap: var(--aos-space-1);
	min-width: 0;
}

.aos-mega-card strong,
.aos-mega-card small {
	overflow-wrap: anywhere;
}

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

.aos-page-overlay {
	position: fixed;
	inset: 0;
	z-index: 45;
	background: var(--aos-color-overlay-scrim);
}

/* Home hero */
.aos-home-hero {
	padding-block: var(--aos-space-6);
	background: var(--aos-color-surface-page);
}

.aos-hero-grid {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	min-height: 520px;
	overflow: hidden;
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-surface-brand-soft);
	box-shadow: var(--aos-shadow-lg);
}

.aos-hero-copy {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	grid-column: 1;
	grid-row: 1;
	align-self: center;
	width: min(48%, 640px);
	margin-left: clamp(1.5rem, 4vw, 4.5rem);
	padding: clamp(2rem, 4vw, var(--aos-space-hero-y));
	border: 1px solid rgba(255, 255, 255, 0.58);
	border-radius: var(--aos-radius-lg);
	background: rgba(247, 250, 247, 0.86);
	box-shadow: var(--aos-shadow-lg);
	backdrop-filter: blur(16px) saturate(125%);
	-webkit-backdrop-filter: blur(16px) saturate(125%);
}

.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(14, 45, 39, 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-featured-grid {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(240px, calc((100% - (var(--aos-space-4) * 4)) / 5));
	gap: var(--aos-space-4);
	padding: var(--aos-space-1) var(--aos-space-1) var(--aos-space-3);
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	scroll-behavior: auto;
	scroll-padding-inline: var(--aos-space-1);
	scroll-snap-type: inline proximity;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.aos-featured-grid::-webkit-scrollbar {
	display: none;
}

.aos-featured-grid > .aos-product-card {
	height: 100%;
	scroll-snap-align: start;
	scroll-snap-stop: always;
}

.aos-product-carousel {
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

.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-featured-grid > .is-carousel-entering {
	animation: aos-carousel-rise 640ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes aos-carousel-rise {
	0% {
		opacity: 0.52;
		transform: translateY(22px);
	}

	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

.aos-product-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: 1px solid rgba(14, 45, 39, 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-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(47, 118, 100, 0.2);
	color: var(--aos-color-neutral-0);
	font-size: 0;
	line-height: 1;
	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 {
	background: var(--aos-color-surface-brand-subtle);
}

.aos-brands-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr);
	align-items: center;
	gap: var(--aos-space-12);
}

.aos-brands-grid > div:first-child > p:last-child {
	color: var(--aos-color-text-secondary);
}

.aos-brand-links {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--aos-space-4);
}

.aos-brand-links a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--aos-space-4);
	min-height: 110px;
	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);
	color: var(--aos-color-brand-strong);
	font-size: var(--aos-font-size-600);
	text-decoration: none;
}

.aos-brand-links small {
	color: var(--aos-color-text-secondary);
	font-size: var(--aos-font-size-100);
	font-weight: var(--aos-font-weight-medium);
}

.aos-dealer-section {
	padding-top: var(--aos-space-0);
	background: var(--aos-color-surface-brand-subtle);
}

.aos-dealer-banner {
	position: relative;
	min-height: 430px;
	overflow: hidden;
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-brand-strong);
}

.aos-dealer-banner > img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aos-dealer-copy {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: min(55%, 620px);
	min-height: 430px;
	padding: var(--aos-space-feature-y);
}

.aos-dealer-copy h2,
.aos-dealer-copy p {
	color: var(--aos-color-neutral-0);
}

.aos-dealer-copy .aos-eyebrow {
	color: var(--aos-color-green-200);
}

.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(14, 45, 39, 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: 0;
	transform: translateY(14px);
	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(67, 139, 119, 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: 28% 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);
}

.woocommerce .woocommerce-ordering {
	margin: 0 0 var(--aos-space-4);
}

.woocommerce .woocommerce-ordering select {
	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: var(--aos-radius-sm);
	background: var(--aos-color-neutral-0);
}

.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: var(--aos-radius-lg);
	background: var(--aos-color-neutral-0);
	box-shadow: var(--aos-shadow-sm);
}

.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 nav.woocommerce-pagination {
	clear: both;
	padding-top: var(--aos-space-8);
}

.woocommerce nav.woocommerce-pagination ul {
	border: 0;
}

.woocommerce nav.woocommerce-pagination ul li {
	margin: 0 var(--aos-space-1);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-sm);
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	min-width: 42px;
	padding: var(--aos-space-3);
}

.woocommerce nav.woocommerce-pagination ul li span.current {
	background: var(--aos-color-action-primary);
	color: var(--aos-color-neutral-0);
}

/* Single product specification purchase console and WooCommerce forms */
.single-product .aos-main,
.aos-commerce-page {
	padding-block: var(--aos-space-8) var(--aos-space-section-y);
}

.aos-commerce-page {
	background: var(--aos-color-surface-page);
}

.aos-commerce-header {
	margin-bottom: var(--aos-space-8);
}

.aos-commerce-header h1 {
	font-size: var(--aos-font-size-title);
}

.aos-commerce-content {
	min-height: 320px;
}

.wc-block-cart,
.wc-block-checkout,
.woocommerce-MyAccount-content,
.woocommerce-MyAccount-navigation {
	border-radius: var(--aos-radius-lg);
}

.wc-block-components-button:not(.is-link) {
	min-height: var(--aos-size-control-md);
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-action-primary);
	color: var(--aos-color-text-on-dark);
	font-weight: var(--aos-font-weight-bold);
}

.wc-block-components-button:not(.is-link):hover {
	background: var(--aos-color-action-hover);
	color: var(--aos-color-text-on-dark);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	padding: var(--aos-space-4);
	margin: var(--aos-space-0);
	list-style: none;
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-surface-card);
}

.woocommerce-account .woocommerce-MyAccount-navigation li + li {
	border-top: 1px solid var(--aos-color-border-default);
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: block;
	padding: var(--aos-space-3);
	text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-content {
	padding: var(--aos-space-5);
	border: 1px solid var(--aos-color-border-default);
	background: var(--aos-color-surface-card);
}

.aos-account-overview {
	margin-top: var(--aos-space-7);
	padding-top: var(--aos-space-6);
	border-top: 1px solid var(--aos-color-border-default);
}

.aos-account-overview-heading {
	max-width: 680px;
	margin-bottom: var(--aos-space-5);
}

.aos-account-overview-heading h2,
.aos-login-intro h2 {
	margin-bottom: var(--aos-space-2);
	font-size: var(--aos-font-size-700);
}

.aos-account-overview-heading > p:last-child,
.aos-login-intro > div > p:last-child {
	margin-bottom: var(--aos-space-0);
	color: var(--aos-color-slate-700);
}

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

.aos-account-action {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--aos-space-3);
	min-height: 96px;
	padding: 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-text-primary);
	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-account-action:hover {
	border-color: var(--aos-color-action-primary);
	box-shadow: var(--aos-shadow-sm);
	transform: translateY(-2px);
}

.aos-account-action-icon {
	display: inline-grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-surface-brand-soft);
	color: var(--aos-color-action-primary);
}

.aos-account-action .aos-icon {
	width: 21px;
	height: 21px;
}

.aos-account-action > .aos-icon {
	width: 18px;
	height: 18px;
	color: var(--aos-color-action-primary);
}

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

.aos-account-action strong {
	margin-bottom: var(--aos-space-1);
}

.aos-account-action small {
	color: var(--aos-color-slate-700);
	line-height: var(--aos-line-height-heading);
}

.aos-login-intro {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: var(--aos-space-4);
	max-width: 920px;
	margin: 0 auto var(--aos-space-6);
	padding: var(--aos-space-5);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-surface-brand-soft);
}

.aos-login-intro-icon {
	display: inline-grid;
	width: 52px;
	height: 52px;
	place-items: center;
	border-radius: var(--aos-radius-md);
	background: var(--aos-color-action-primary);
	color: var(--aos-color-neutral-0);
}

.aos-login-intro-icon .aos-icon {
	width: 25px;
	height: 25px;
}

.woocommerce-account:not(.logged-in) .aos-commerce-content {
	max-width: 1040px;
	margin-inline: auto;
}

.woocommerce-account #customer_login {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--aos-space-5);
}

.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2 {
	float: none;
	width: auto;
	padding: var(--aos-space-5);
	border: 1px solid var(--aos-color-border-default);
	border-radius: var(--aos-radius-lg);
	background: var(--aos-color-surface-card);
}

.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(47, 118, 100, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(47, 118, 100, 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: minmax(0, 1.15fr) minmax(390px, 0.85fr);
	align-items: start;
	gap: clamp(var(--aos-space-8), 4vw, var(--aos-space-16));
}

.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 {
	position: relative;
	padding: clamp(var(--aos-space-5), 3vw, var(--aos-space-10));
	border: 1px solid rgba(47, 118, 100, 0.16);
	border-radius: var(--aos-radius-xl);
	background: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(242, 248, 245, 0.88));
	box-shadow: var(--aos-shadow-sm);
}

.single-product .woocommerce-product-gallery::before {
	position: absolute;
	inset: var(--aos-space-4);
	z-index: 0;
	border-radius: var(--aos-radius-lg);
	background-image: linear-gradient(rgba(47, 118, 100, 0.045) 1px, transparent 1px), linear-gradient(90deg, rgba(47, 118, 100, 0.045) 1px, transparent 1px);
	background-size: 34px 34px;
	pointer-events: none;
	content: "";
}

.single-product .woocommerce-product-gallery > * {
	position: relative;
	z-index: 1;
}

.single-product.woocommerce div.product div.images img {
	width: 100%;
	max-height: 660px;
	border: 0;
	border-radius: var(--aos-radius-lg);
	background: transparent;
	object-fit: contain;
}

.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);
}

.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);
}

.single-product.woocommerce div.product > .summary {
	position: relative;
	padding: clamp(var(--aos-space-6), 3.5vw, var(--aos-space-10));
	border: 1px solid rgba(47, 118, 100, 0.18);
	border-radius: var(--aos-radius-xl);
	background: rgba(255, 255, 255, 0.96);
	box-shadow: var(--aos-shadow-console);
}

.single-product.woocommerce div.product > .summary::before {
	position: absolute;
	top: var(--aos-space-6);
	left: 0;
	width: 4px;
	height: 74px;
	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(47, 118, 100, 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, 3.6vw, 3.65rem);
	line-height: 1.02;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.single-product.woocommerce div.product p.price,
.single-product.woocommerce div.product span.price {
	margin: 0 0 var(--aos-space-5);
	color: var(--aos-color-brand-primary);
	font-size: clamp(1.4rem, 2.3vw, 2rem);
	font-weight: 800;
	line-height: var(--aos-line-height-tight);
}

.aos-product-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	overflow: hidden;
	margin-bottom: var(--aos-space-5);
	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: 72px;
	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-5);
	border-left: 3px solid var(--aos-color-border-strong);
	color: var(--aos-color-slate-700);
}

.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-5);
	margin-top: var(--aos-space-2);
	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-500);
	font-weight: var(--aos-font-weight-bold);
}

.aos-configuration-heading small {
	color: var(--aos-color-text-secondary);
	line-height: var(--aos-line-height-copy);
}

.single-product.woocommerce div.product form.cart {
	display: block;
	padding: 0;
	margin: 0 0 var(--aos-space-5);
	border: 0;
}

.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 .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(47, 118, 100, 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(47, 118, 100, 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-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: var(--aos-space-6);
	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: 960px;
	margin-bottom: 0;
	color: var(--aos-color-slate-700);
}

.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: var(--aos-space-12);
	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);
}

.aos-product-support-media {
	min-height: 440px;
	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 {
	margin-top: var(--aos-space-8);
}

.single-product .related.products > h2 {
	margin-bottom: var(--aos-space-6);
	font-size: var(--aos-font-size-section);
}

.single-product .related.products ul.products {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (min-width: 1101px) and (min-height: 860px) {
	.single-product.woocommerce div.product > .summary {
		position: sticky;
		top: calc(var(--aos-size-header-utility) + 7.25rem);
	}
}

.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;
}

.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-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 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;
	gap: var(--aos-space-3);
}

.aos-footer-contact > a {
	display: flex;
	align-items: center;
	gap: var(--aos-space-3);
	min-width: 0;
}

.aos-footer-contact > a .aos-icon {
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	color: var(--aos-color-commerce-primary);
}

.aos-footer-contact > a span {
	display: grid;
	min-width: 0;
}

.aos-footer-contact > a small {
	color: var(--aos-color-on-dark-low);
}

.aos-footer-contact > 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) {
	*,
	*::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-featured-grid > .is-carousel-entering {
		animation: none;
	}

	.aos-cart-link.is-pulsing,
	.aos-finder-panel.is-active,
	.aos-directory-panel.is-active,
	.single-product .woocommerce-variation {
		animation: none;
	}

	.aos-motion-ready .aos-section {
		opacity: 1;
		transform: none;
	}

	.aos-motion-ready .aos-proof-media,
	.aos-motion-ready .aos-proof-copy > *,
	.aos-motion-ready .aos-proof-facts > div {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

@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: static;
	}
}

@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 {
		grid-auto-columns: 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(2, minmax(0, 1fr));
	}
}

@media (max-width: 820px) {
	.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;
	}

	.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) {
		display: none;
	}

	.aos-primary-nav {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 60;
		width: min(88vw, 360px);
		height: 100dvh;
		padding: 2rem 0;
		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-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-mega-card {
		grid-template-columns: 52px minmax(0, 1fr);
		padding: var(--aos-space-2);
	}

	.aos-mega-card img {
		width: 52px;
		height: 52px;
	}

	.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 {
		grid-auto-columns: 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-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-utility-inner > span,
	.aos-utility-inner > strong {
		display: none;
	}

	.aos-utility-inner {
		justify-content: flex-end;
	}

	.aos-header-main {
		grid-template-columns: 36px minmax(0, 1fr) auto;
		gap: var(--aos-space-2);
	}

	.aos-menu-toggle {
		padding: 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-3);
	}

	.aos-cart-count {
		top: -9px;
		right: -2px;
	}

	.aos-header-actions > a {
		min-width: var(--aos-size-icon-md);
	}

	.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-"],
	.single-product .related.products ul.products {
		grid-template-columns: 1fr;
	}

	.aos-featured-grid {
		grid-auto-columns: 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: 1fr;
	}

	.aos-product-fact {
		min-height: 58px;
	}

	.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);
	}

	.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(14, 45, 39, 0.7) 0%, rgba(14, 45, 39, 0.93) 48%, rgba(14, 45, 39, 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 {
		background: linear-gradient(180deg, transparent 0%, rgba(255, 255, 255, 0.08) 25%, var(--aos-color-neutral-0) 48%);
	}

	.aos-support-band > img {
		position: relative;
		width: 100%;
		height: 280px;
	}

	.aos-support-copy,
	.aos-support-actions {
		position: relative;
		z-index: 1;
		grid-column: auto;
	}

	.aos-support-copy {
		margin-top: -72px;
		padding: var(--aos-space-8) 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: flex;
		align-items: end;
		min-height: 560px;
	}

	.aos-dealer-banner::after {
		position: absolute;
		inset: 0;
		content: "";
		background: var(--aos-gradient-image-scrim);
	}

	.aos-dealer-copy {
		width: 100%;
		min-height: 0;
		padding: var(--aos-space-6);
	}

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

	.aos-footer-grid {
		grid-template-columns: 1fr;
	}

	.aos-footer-bottom {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 360px) {
	.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(14, 45, 39, 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(14, 45, 39, 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: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 .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;
	}
}
