/* ==========================================================================
   AON theme — the live Art Of Noise look, without TheGem/Elementor underneath.
   Tokens match the live site: mint #82C9B7, Montserrat headings, Source Sans text.
   ========================================================================== */

/* Metric-matched stand-ins while the real fonts load, so text keeps its size and line breaks when they swap in (CLS). */
@font-face { font-family: "Montserrat Fallback"; src: local("Arial"); size-adjust: 113.2%; ascent-override: 85%; descent-override: 22%; line-gap-override: 0%; }
@font-face { font-family: "Source Sans Fallback"; src: local("Arial"); size-adjust: 93.6%; ascent-override: 109.4%; descent-override: 42.7%; line-gap-override: 0%; }

:root {
	--aon-mint: #82c9b7;
	--aon-mint-dark: #6fb8a6;
	--aon-ink: #2f2b50;        /* nav / text on mint */
	--aon-ink-strong: #111315;
	--aon-text: #5f727f;       /* live body text */
	--aon-paper: #f1eee7;
	--aon-white: #ffffff;

	--aon-head: "Montserrat", "Montserrat Fallback", Arial, sans-serif;
	--aon-body: "Source Sans 3", "Source Sans Pro", "Source Sans Fallback", Arial, Helvetica, sans-serif;

	--aon-gutter: clamp(16px, 3vw, 42px);
	--aon-max: 1240px;
	--aon-header-h: 127px;
	--aon-green: #203e35;      /* product titles, prices, body text on product pages */
	--aon-crumb: #99a9b5;
	--aon-serif: "Montserrat", Arial, sans-serif; /* Faustina dropped: one display face across the site */
	--aon-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
	--aon-fast: 160ms;
}

/* ---------- base (same as live) ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }
body {
	margin: 0;
	background: #fff;
	color: var(--aon-text);
	font-family: var(--aon-body);
	font-size: 16px;
	line-height: 25px;
	-webkit-font-smoothing: antialiased;
}
img, svg, video { max-width: 100%; height: auto; }
a { color: inherit; }
a, button { touch-action: manipulation; }
:focus-visible { outline: 3px solid var(--aon-ink); outline-offset: 3px; }

.aon-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.aon-skip { position: absolute; left: 16px; top: -100px; z-index: 1000; padding: 12px 16px; background: var(--aon-ink); color: #fff; font-weight: 700; }
.aon-skip:focus { top: 12px; }
.aon-wrap { width: 100%; max-width: var(--aon-max); margin-inline: auto; padding-inline: var(--aon-gutter); }

/* ---------- header: mint bar, logo left, uppercase nav right ---------- */
.aon-header { position: sticky; top: 0; z-index: 900; background: var(--aon-mint); }
.admin-bar .aon-header { top: 32px; }
/* Homepage: its scenes pin themselves to the top of the screen (Monster Hands, type transfer, stacked sections, all built
   for a header that scrolls away). A sticky header sat on top of every pinned scene and hid its title, so here the
   header scrolls away with the page, as it did on the old theme. */
body.home .aon-header { position: relative; top: auto; }
.aon-header__bar {
	display: flex; align-items: center; gap: 24px;
	min-height: var(--aon-header-h);
	max-width: 1440px; margin-inline: auto; padding-inline: var(--aon-gutter);
}
.aon-logo { display: block; margin-right: auto; line-height: 0; }
.aon-logo img { display: block; width: auto; height: 97px; }

.aon-nav__list { display: flex; align-items: center; gap: 0; list-style: none; margin: 0; padding: 0; }
.aon-nav__list > li { position: relative; }
.aon-nav__list a {
	display: flex; align-items: center; min-height: 44px; padding: 0 15px;
	font-family: var(--aon-head); font-size: 14px; font-weight: 700;
	text-transform: uppercase; text-decoration: none;
	color: #3c3950; border: 1.6px solid transparent;
	transition: color var(--aon-fast) ease, border-color var(--aon-fast) ease;
}
.aon-nav__list a[href="#"] { cursor: default; }
/* current section and hover: a short underline under the word, not a box round it */
@media (min-width: 1024px) {
	.aon-header .aon-nav__list > li > a { position: relative; border-color: transparent !important; }
	.aon-header .aon-nav__list > li > a::before { content: ""; position: absolute; left: 15px; right: 15px; bottom: 6px; height: 2px; background: #111414; transform: scaleX(0); transform-origin: left; transition: transform var(--aon-fast) var(--aon-ease-out); }
	.aon-header .aon-nav__list > .current-menu-item > a::before, .aon-header .aon-nav__list > .current-menu-ancestor > a::before, .aon-header .aon-nav__list > .current-menu-parent > a::before { transform: none; }
}
@media (min-width: 1024px) and (hover: hover) and (pointer: fine) { .aon-header .aon-nav__list > li > a:hover::before { transform: none; } }
.aon-nav__list .sub-menu { list-style: none; margin: 0; padding: 0; }
/* empty items in the existing menu */
.aon-nav__list a:empty { display: none; }

.aon-header__actions { display: flex; align-items: center; gap: 2px; color: var(--aon-ink); }
.aon-icon-link { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; color: var(--aon-ink); text-decoration: none; }
@media (hover: hover) and (pointer: fine) { .aon-icon-link:hover { color: #fff; } }
.aon-cart-count {
	position: absolute; top: 3px; right: 1px; min-width: 18px; height: 18px; padding: 0 5px;
	border-radius: 9px; background: var(--aon-ink); color: #fff;
	font: 700 11px/18px var(--aon-head); text-align: center; font-variant-numeric: tabular-nums;
}
.aon-cart-link--mobile { display: none; }
.aon-nav-toggle { display: none; width: 44px; height: 44px; padding: 0; border: 0; background: none; color: var(--aon-ink); cursor: pointer; }
.aon-nav-toggle__bars, .aon-nav-toggle__bars::before, .aon-nav-toggle__bars::after { display: block; width: 22px; height: 2px; margin: 0 auto; background: currentColor; transition: transform var(--aon-fast) var(--aon-ease-out), background-color var(--aon-fast) ease; }
.aon-nav-toggle__bars { position: relative; }
.aon-nav-toggle__bars::before, .aon-nav-toggle__bars::after { content: ""; position: absolute; left: 0; }
.aon-nav-toggle__bars::before { top: -7px; }
.aon-nav-toggle__bars::after { top: 7px; }

/* desktop dropdowns */
@media (min-width: 1024px) {
	.aon-nav__list .sub-menu {
		position: absolute; left: 0; top: 100%; min-width: 280px; padding: 10px 0;
		background: #fff; box-shadow: 0 18px 40px rgba(17,19,21,.16);
		opacity: 0; visibility: hidden; transform: translateY(-4px);
		transition: opacity var(--aon-fast) ease, transform var(--aon-fast) var(--aon-ease-out), visibility 0s linear var(--aon-fast);
	}
	.aon-nav__list .sub-menu .sub-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; padding: 0 0 4px 14px; }
	.aon-nav__list .sub-menu a { padding: 0 22px; min-height: 38px; letter-spacing: .04em; }
	@media (hover: hover) and (pointer: fine) { .aon-nav__list .sub-menu a:hover { color: var(--aon-mint-dark); } }
	.aon-nav__list li:hover > .sub-menu, .aon-nav__list li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
}

/* desktop menus v2: the homepage's night panel, not white boxes.
   Items with a third level (Pedalboards) open a full-width panel: one column per series with its boards,
   plain links (Size Finder, In Stock Specials) gathered in the last column. Others open a compact panel. */
@media (min-width: 1024px) {
	.aon-header .aon-nav__list > li > .sub-menu {
		min-width: 260px; padding: 14px 0; border-radius: 0 0 14px 14px;
		background: #111412; box-shadow: 0 24px 48px rgba(0, 0, 0, .28);
	}
	.aon-header .aon-nav__list > li > .sub-menu a {
		min-height: 40px; padding: 0 24px; border: 0;
		font: 600 15px/1.25 var(--aon-head); letter-spacing: 0; text-transform: none; color: #f4f2ec;
		transition: color var(--aon-fast) ease;
	}
	.aon-header .aon-nav__list > li > .sub-menu a:focus-visible { outline: 2px solid var(--aon-mint); outline-offset: -2px; }

	/* full-width panel */
	.aon-header .aon-nav__list > li:has(.sub-menu .sub-menu) { position: static; }
	.aon-header .aon-nav__list > li:has(.sub-menu .sub-menu) > a { position: relative; }
	.aon-header .aon-nav__list > li:has(.sub-menu .sub-menu) > a::after { /* hover bridge down to the panel */
		content: ""; position: absolute; left: -16px; right: -16px; top: 100%; height: calc((var(--aon-header-h) - 44px) / 2 + 4px);
	}
	.aon-header .aon-nav__list > li:has(.sub-menu .sub-menu) > .sub-menu {
		left: 0; right: 0; min-width: 0; border-radius: 0;
		display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(0, .9fr); grid-auto-flow: dense; column-gap: 40px;
		padding: 40px max(var(--aon-gutter), calc((100% - 1440px) / 2 + var(--aon-gutter))) 48px;
		border-top: 1px solid rgba(130, 201, 183, .25);
	}
	.aon-header .aon-nav__list > li:has(.sub-menu .sub-menu) > .sub-menu > li:has(.sub-menu) { grid-row: span 6; }
	.aon-header .aon-nav__list > li:has(.sub-menu .sub-menu) > .sub-menu > li:not(:has(.sub-menu)) { grid-column: 4; border-top: 1px solid rgba(255, 255, 255, .12); }
	.aon-header .aon-nav__list > li:has(.sub-menu .sub-menu) > .sub-menu > li:not(:has(.sub-menu)):last-child { border-bottom: 1px solid rgba(255, 255, 255, .12); }
	/* series heading */
	.aon-header .aon-nav__list > li > .sub-menu > li:has(.sub-menu) > a {
		min-height: 0; padding: 0 0 16px; margin-bottom: 4px; border-bottom: 1px solid rgba(130, 201, 183, .3);
		font: 700 11px/1.3 var(--aon-head); letter-spacing: .18em; text-transform: uppercase; color: var(--aon-mint);
	}
	/* boards */
	.aon-header .aon-nav__list .sub-menu .sub-menu { position: static; min-width: 0; padding: 6px 0 0; background: transparent; box-shadow: none; border-radius: 0; opacity: 1; visibility: inherit; transform: none; }
	.aon-header .aon-nav__list .sub-menu .sub-menu a { min-height: 40px; padding: 0; font: 600 18px/1.2 var(--aon-head); letter-spacing: -.01em; color: #f4f2ec; }
	/* plain links in the last column: the homepage's "Learn More" voice */
	.aon-header .aon-nav__list > li:has(.sub-menu .sub-menu) > .sub-menu > li:not(:has(.sub-menu)) > a {
		justify-content: space-between; min-height: 52px; padding: 0;
		font: 800 12px/1.2 var(--aon-head); letter-spacing: .09em; text-transform: uppercase; color: #f4f2ec;
	}
	@media (hover: hover) and (pointer: fine) {
		.aon-header .aon-nav__list > li > .sub-menu a:hover,
		.aon-header .aon-nav__list .sub-menu .sub-menu a:hover { color: var(--aon-mint); }
		.aon-header .aon-nav__list > li > .sub-menu > li:has(.sub-menu) > a:hover { color: #fff; }
	}
}

/* phone/tablet: cart left, logo centre, menu right — as on the live site */
@media (max-width: 1023px) {
	:root { --aon-header-h: 88px; }
	.aon-header__bar { gap: 8px; }
	.aon-cart-link--mobile { display: inline-flex; }
	.aon-header__actions .aon-cart-link, .aon-search-link { display: none; }
	.aon-logo { margin: 0 auto; }
	.aon-logo img { height: 66px; }
	.aon-nav-toggle { display: inline-flex; align-items: center; justify-content: center; }
	.aon-nav {
		position: fixed; inset: var(--aon-header-h) 0 0 0; z-index: 899;
		background: var(--aon-mint); overflow-y: auto; overscroll-behavior: contain;
		padding: 8px var(--aon-gutter) 48px;
		opacity: 0; visibility: hidden; transform: translateY(-8px);
		transition: opacity 200ms ease, transform 200ms var(--aon-ease-out), visibility 0s linear 200ms;
	}
	.aon-nav-open .aon-nav { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
	.aon-nav-open, .aon-nav-open body { overflow: hidden; }
	.aon-nav__list { flex-direction: column; align-items: stretch; }
	.aon-nav__list > li > a { font-size: 18px; font-weight: 700; min-height: 54px; padding: 0; }
	.aon-nav__list .sub-menu { padding: 0 0 10px 0; }
	.aon-nav__list .sub-menu a { font-size: 13px; min-height: 40px; padding: 0 0 0 14px; }
	.aon-nav__list .sub-menu .sub-menu a { padding-left: 28px; text-transform: none; letter-spacing: 0; font-size: 15px; }
	.aon-nav-open .aon-nav-toggle__bars { background: transparent; }
	.aon-nav-open .aon-nav-toggle__bars::before { transform: translateY(7px) rotate(45deg); }
	.aon-nav-open .aon-nav-toggle__bars::after { transform: translateY(-7px) rotate(-45deg); }
}

/* ---------- shop container + breadcrumbs (live: grey crumbs with chevrons) ---------- */
.aon-container { width: 100%; max-width: 1212px; margin-inline: auto; padding-inline: 21px; }
.aon-breadcrumbs { display: flex; align-items: center; min-height: 70px; }
.aon-breadcrumbs ol { display: flex; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; font-size: 14px; line-height: 22px; }
.aon-breadcrumbs li { color: #3c3950; }
.aon-breadcrumbs li:not(:last-child) { padding-right: 20px; margin-right: 5px; position: relative; }
.aon-breadcrumbs li:not(:last-child)::after {
	content: ""; position: absolute; right: 4px; top: 50%; width: 6px; height: 6px;
	border-right: 1.5px solid #59666d; border-top: 1.5px solid #59666d; transform: translateY(-50%) rotate(45deg);
}
.aon-breadcrumbs a { color: #59666d; text-decoration: none; }
@media (hover: hover) and (pointer: fine) { .aon-breadcrumbs a:hover { color: #3c3950; } }

/* ---------- single product (live layout) ---------- */
.aon-page--product { padding-bottom: 64px; }
.single-product-content { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px; }
@media (min-width: 768px) {
	.single-product-content { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 42px; }
	.single-product-content-left .product-page__left-column { position: sticky; top: calc(var(--aon-header-h) + 16px); }
}
.product-page__right-column .product_title {
	font-family: var(--aon-serif); font-size: 33.28px; font-weight: 500; line-height: 1.12;
	letter-spacing: .025em; text-transform: uppercase; color: var(--aon-green); margin: -6px 0 8px;
}
.product-page__right-column p.price, .product-page__right-column span.price {
	font-family: var(--aon-body); font-size: 36px; font-weight: 300; line-height: 1; color: var(--aon-green); margin: 0 0 16px;
}
.product-page__right-column .price del { opacity: .5; }
.product-page__right-column .price ins { text-decoration: none; }
.woocommerce-product-details__short-description { color: var(--aon-green); font-size: 16px; line-height: 1.6; }
.product_meta { font-size: 13px; color: var(--aon-text); margin-top: 16px; }
.product_meta > span { display: block; }
.product_meta a { color: var(--aon-green); }

/* WooCommerce's default layout floats images/summary at 48%; our columns already split the page. */
.woocommerce div.product .single-product-content div.images,
.woocommerce div.product .single-product-content div.summary,
.woocommerce-page div.product .single-product-content div.images,
.woocommerce-page div.product .single-product-content div.summary { float: none; width: 100%; margin: 0; }

/* gallery: big square image, four thumbnails beneath on the workshop beige */
.woocommerce-product-gallery { position: relative; margin: 0; }
.woocommerce-product-gallery__wrapper { margin: 0; }
.woocommerce-product-gallery__image img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; }
.woocommerce-product-gallery .flex-control-thumbs {
	display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px;
	list-style: none; margin: 0; padding: 10px; background: #ece7dd;
}
.woocommerce div.product div.images .flex-control-thumbs li,
.woocommerce-product-gallery .flex-control-thumbs li { cursor: pointer; width: auto; float: none; margin: 0; }
.woocommerce-product-gallery .flex-control-thumbs img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; opacity: .75; border: 2px solid transparent; transition: opacity var(--aon-fast) ease, border-color var(--aon-fast) ease; }
.woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.woocommerce-product-gallery .flex-control-thumbs img:hover { opacity: 1; border-color: var(--aon-ink-strong); }
.woocommerce-product-gallery__trigger { position: absolute; top: 12px; right: 12px; z-index: 5; width: 40px; height: 40px; border-radius: 50%; background: rgba(255,255,255,.9); font-size: 0; }
.woocommerce-product-gallery__trigger::before { content: ""; position: absolute; left: 12px; top: 12px; width: 12px; height: 12px; border: 2px solid var(--aon-ink-strong); border-radius: 50%; }
.woocommerce-product-gallery__trigger::after { content: ""; position: absolute; left: 25px; top: 24px; width: 7px; height: 2px; background: var(--aon-ink-strong); transform: rotate(45deg); }
.aon-photo-note { margin: 14px 0 0; color: #6b7b77; font-size: 11px; line-height: 1.5; text-align: center; }

/* form controls on the product page (live: light, compact fields) */
.single-product-content form.cart select,
.single-product-content form.cart input[type="text"],
.single-product-content form.cart input[type="number"],
.single-product-content form.cart textarea {
	width: 100%; min-height: 48px; padding: 0 40px 0 14px;
	font: 400 16px/1.3 var(--aon-body); color: var(--aon-green);
	background-color: #fff; border: 1px solid #c9d2d7; border-radius: 3px;
	transition: border-color var(--aon-fast) ease;
}
.single-product-content form.cart textarea { padding: 10px 14px; min-height: 96px; }
.single-product-content form.cart select {
	-webkit-appearance: none; appearance: none; cursor: pointer;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23203e35' stroke-width='1.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: right 14px center;
}
.single-product-content form.cart select:hover,
.single-product-content form.cart input:hover { border-color: #b9c4c9; }
.single-product-content form.cart select:focus-visible,
.single-product-content form.cart input:focus-visible { border-color: var(--aon-green); outline: 3px solid #245849; outline-offset: 2px; }
/* WooCommerce's clearfix pseudo-elements must not take grid cells in the add-on option grids */
.wc-pao-addon-wrap::before, .wc-pao-addon-wrap::after { content: none !important; display: none !important; }
/* "About this option" disclosure: same plain text as live */
.single-product-content details > summary { list-style: none; cursor: pointer; }
.single-product-content details > summary::-webkit-details-marker { display: none; }

/* ---------- primary buttons: one dark-green action per screen (live CTA colour, WPCode #12840) ---------- */
.single_add_to_cart_button.button,
.woocommerce a.checkout-button.button,
.woocommerce #place_order,
.aon-buybar__btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 0;
	min-height: 52px; padding: 0 28px; border: 0; border-radius: 0;
	background: var(--aon-green); color: #fff;
	font: 700 15px/1.2 var(--aon-head); letter-spacing: .02em; text-transform: none;
	cursor: pointer; -webkit-tap-highlight-color: transparent;
	transition: transform var(--aon-fast) var(--aon-ease-out), background-color var(--aon-fast) ease, opacity var(--aon-fast) ease;
}
/* one primary button across the purchase path: the black pill of the homepage */
.woocommerce a.checkout-button.button, .woocommerce #place_order {
	min-height: 56px; border-radius: 999px; background: #111; color: #fff;
	font: 800 12px/1.2 var(--aon-head); letter-spacing: .09em; text-transform: uppercase;
}
@media (hover: hover) and (pointer: fine) {
	.woocommerce a.checkout-button.button:hover, .woocommerce #place_order:hover { background: var(--aon-mint); color: #111; }
}
.single_add_to_cart_button.button:active, .woocommerce a.checkout-button.button:active, .woocommerce #place_order:active, .aon-buybar__btn:active { transform: scale(.97); }
@media (hover: hover) and (pointer: fine) {
	.single_add_to_cart_button.button:hover, .woocommerce a.checkout-button.button:hover, .woocommerce #place_order:hover, .aon-buybar__btn:hover { background: #17302a; color: #fff; }
}
.single_add_to_cart_button.button.disabled, .single_add_to_cart_button.button:disabled { opacity: .45; cursor: not-allowed; }
.single_add_to_cart_button.button:focus-visible, .aon-buybar__btn:focus-visible { outline: 3px solid var(--aon-ink); outline-offset: 3px; }
.aon-btn-total { font-weight: 400; font-variant-numeric: tabular-nums; }

/* add-to-cart row: quantity + full-width button */
.single-product-content .woocommerce-variation-add-to-cart,
.single-product-content form.cart:not(.variations_form) { display: flex; gap: 8px; align-items: stretch; margin-top: 20px; }
.single-product-content form.cart .quantity input.qty { width: 72px; min-height: 52px; padding: 0 8px; text-align: center; }
.single-product-content .single_add_to_cart_button.button { flex: 1 1 auto; }

/* lead time text from WooCommerce Lead Time: brand ink instead of the plugin's bright green */
.single-product-content .wclt_lead_time { color: var(--aon-green) !important; font-size: 15px; margin: 8px 0 0; }

/* size help under the size choice */
.aon-size-help { margin: 8px 0 0; font-size: 15px; }
.aon-size-help a { color: var(--aon-green); text-underline-offset: .2em; }

/* add-on choices: whole row is the hit target, 44px tall */
.single-product-content .wc-pao-addon-wrap > div:has(> input[type="radio"]),
.single-product-content .wc-pao-addon-wrap > div:has(> input[type="checkbox"]) { display: flex; align-items: center; gap: 12px; min-height: 44px; }
.single-product-content .wc-pao-addon-wrap input[type="radio"],
.single-product-content .wc-pao-addon-wrap input[type="checkbox"] { width: 20px; height: 20px; margin: 0; flex: none; accent-color: var(--aon-green); }
.single-product-content .wc-pao-addon-wrap label { flex: 1; cursor: pointer; color: var(--aon-green); }

/* delivery box under Add to cart: a tone step, no borders */
.aon-deliver { margin: 16px 0 0; padding: 18px 20px; background: #f6f7f6; display: grid; gap: 12px; color: var(--aon-green); font-size: 15px; line-height: 1.5; }
.aon-deliver__row { display: flex; gap: 12px; align-items: flex-start; margin: 0; }
.aon-deliver__row svg { flex: none; margin-top: 1px; color: var(--aon-green); }
.aon-deliver__row strong { font-weight: 600; }
.aon-deliver a { color: var(--aon-green); text-underline-offset: .2em; }

/* mobile buy bar (shown by aon.js only while the real button is off-screen) */
.aon-buybar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 800; display: flex; align-items: center; gap: 12px; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: #fff; box-shadow: 0 -6px 18px rgba(32,62,53,.12); }
.aon-buybar[hidden] { display: none; }
.aon-buybar__info { display: flex; flex-direction: column; min-width: 0; line-height: 1.2; }
.aon-buybar__name { font-size: 13px; color: #59666d; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.aon-buybar__total { font-size: 22px; font-weight: 300; color: var(--aon-green); font-variant-numeric: tabular-nums; }
.aon-buybar__btn { flex: 1 1 auto; padding: 0 16px; }
@media (min-width: 768px) { .aon-buybar { display: none !important; } }

/* tabs: "Product details" / "Reviews" */
.product-page__bottom-column { margin-top: 64px; }
.woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 0; list-style: none; margin: 0 0 32px; padding: 0; border-bottom: 1px solid #dfe5e8; }
.woocommerce-tabs ul.tabs li { margin: 0; }
.woocommerce-tabs ul.tabs li a {
	display: block; padding: 14px 22px; margin-bottom: -1px; border-bottom: 2px solid transparent;
	font: 600 13px/1.2 var(--aon-head); letter-spacing: .06em; text-transform: uppercase; color: var(--aon-green); text-decoration: none;
}
.woocommerce-tabs ul.tabs li.active a { border-bottom-color: var(--aon-green); }
.woocommerce-Tabs-panel { color: var(--aon-green); }

/* up-sells "You may also like" — live: four cards, image with category tag, name, price */
.up-sells { margin-top: 64px; }
.up-sells > h2 { font: 200 24px/38px var(--aon-head); letter-spacing: .05em; text-transform: uppercase; color: #3c3950; text-align: center; margin: 24px 0 32px; }
.woocommerce ul.products, ul.products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; list-style: none; margin: 0; padding: 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after, ul.products::before, ul.products::after { content: none; display: none; }
@media (min-width: 1024px) {
	.woocommerce ul.products.columns-4, ul.products.columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.woocommerce ul.products.columns-3, ul.products.columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.woocommerce ul.products li.product, ul.products li.product { float: none; width: auto; margin: 0; padding: 0 0 16px; text-align: left; background: #f6f7f6; }
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link { display: block; text-decoration: none; color: var(--aon-green); }
.aon-card__media { position: relative; display: block; overflow: hidden; background: #e9ece9; }
.woocommerce ul.products li.product a img, ul.products li.product img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; margin: 0; transition: transform 400ms var(--aon-ease-out); }
@media (hover: hover) and (pointer: fine) { ul.products li.product a:hover img { transform: scale(1.03); } }
.aon-card__tag { position: absolute; left: 8px; bottom: 8px; padding: 3px 7px; background: rgba(17,19,21,.86); color: #fff; font: 600 10px/1.2 var(--aon-body); letter-spacing: .02em; }
.woocommerce ul.products li.product .woocommerce-loop-product__title, ul.products li.product .woocommerce-loop-product__title {
	padding: 12px 12px 2px; margin: 0; font: 700 15px/1.3 var(--aon-head); text-transform: none; letter-spacing: 0; color: #111315;
}
.woocommerce ul.products li.product .price, ul.products li.product .price { display: block; padding: 0 12px; margin: 0; font: 400 15px/1.4 var(--aon-body); color: #111315; }
.woocommerce ul.products li.product .button, ul.products li.product .button, ul.products li.product .added_to_cart { display: none !important; }

/* WooCommerce notices */
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { list-style: none; margin: 0 0 24px; padding: 16px 20px; background: #f3faf8; border-left: 3px solid var(--aon-mint-dark); color: var(--aon-green); }
.woocommerce-error { background: #fff4f2; border-left-color: #be4b41; color: #812a23; }
/* notices v2: no WooCommerce icon or top bar, text and action on one line, no focus frame when WooCommerce moves focus to them */
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info, .woocommerce .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-message, .woocommerce-notices-wrapper .woocommerce-info, .woocommerce-notices-wrapper .woocommerce-error {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 20px;
	padding: 16px 20px; border: 0; border-left: 3px solid var(--aon-mint-dark); border-radius: 0 12px 12px 0;
	font-size: 15px; line-height: 1.5;
}
.woocommerce .woocommerce-error, .woocommerce-notices-wrapper .woocommerce-error { border-left-color: #be4b41; }
.woocommerce .woocommerce-message::before, .woocommerce .woocommerce-info::before, .woocommerce .woocommerce-error::before,
.woocommerce-notices-wrapper .woocommerce-message::before, .woocommerce-notices-wrapper .woocommerce-info::before, .woocommerce-notices-wrapper .woocommerce-error::before { content: none; display: none; }
.woocommerce-message:focus, .woocommerce-info:focus, .woocommerce-error:focus, .woocommerce-NoticeGroup:focus { outline: none; }
.woocommerce .woocommerce-message .button, .woocommerce .woocommerce-info .button, .woocommerce-notices-wrapper .woocommerce-message .button {
	order: 2; float: none; margin: 0; padding: 0; min-height: 0; border: 0; border-radius: 0; background: none; box-shadow: none;
	font: 700 13px/1.4 var(--aon-head); letter-spacing: .06em; text-transform: uppercase; color: #111414; text-decoration: underline; text-underline-offset: .25em;
}
/* on the Cart itself "View cart" leads nowhere new */
.woocommerce-cart .woocommerce-message .button.wc-forward { display: none; }

/* ---------- contact ---------- */
.aon-page--contact { padding-bottom: 96px; }
.aon-contact-hero { max-width: 760px; padding: 24px 0 56px; }
.aon-contact-hero__title { margin: 0 0 16px; font-family: var(--aon-serif); font-weight: 500; font-size: clamp(36px, 6vw, 64px); line-height: 1.05; letter-spacing: .01em; text-transform: uppercase; color: var(--aon-green); }
.aon-contact-hero__lead { margin: 0 0 12px; max-width: 58ch; font-size: 19px; line-height: 1.55; color: #3c4b52; }
.aon-contact-hero__promise { margin: 0; font-weight: 600; color: var(--aon-green); }
.aon-contact-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 48px; }
@media (min-width: 900px) { .aon-contact-grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 72px; } }
.aon-contact-h { margin: 0 0 20px; font: 700 18px/1.3 var(--aon-head); color: #3c3950; }
.aon-contact-list { margin: 0; }
.aon-contact-list__row { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 16px; padding: 18px 0; border-top: 1px solid #dfe5e8; }
.aon-contact-list__row:last-child { border-bottom: 1px solid #dfe5e8; }
.aon-contact-list dt { margin: 0; font-size: 14px; color: #59666d; padding-top: 2px; }
.aon-contact-list dd { margin: 0; font-size: 18px; line-height: 1.45; color: var(--aon-green); }
.aon-contact-list dd a { color: var(--aon-green); text-decoration: none; border-bottom: 1px solid rgba(32,62,53,.35); }
@media (hover: hover) and (pointer: fine) { .aon-contact-list dd a:hover { border-bottom-color: var(--aon-green); } }
.aon-contact-list address { font-style: normal; }
.aon-contact-list__more { display: inline-block; margin-top: 6px; font-size: 15px; }
.aon-contact-list__links { display: flex; flex-wrap: wrap; gap: 6px 20px; }
.aon-route-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.aon-route { position: relative; display: grid; gap: 4px; padding: 22px 56px 22px 24px; background: #f6f7f6; color: var(--aon-green); text-decoration: none; transition: background-color var(--aon-fast) ease, transform var(--aon-fast) var(--aon-ease-out); }
.aon-route::after { content: ""; position: absolute; right: 24px; top: 50%; width: 10px; height: 10px; border-top: 2px solid currentColor; border-right: 2px solid currentColor; transform: translateY(-50%) rotate(45deg); transition: transform var(--aon-fast) var(--aon-ease-out); }
@media (hover: hover) and (pointer: fine) {
	.aon-route:hover { background: #eef2f0; }
	.aon-route:hover::after { transform: translate(4px, -50%) rotate(45deg); }
}
.aon-route:active { transform: scale(.99); }
.aon-route__title { font: 700 17px/1.3 var(--aon-head); }
.aon-route__text { font-size: 15px; line-height: 1.5; color: #4c5b62; }

/* ---------- plain pages (not built with Elementor) ---------- */
.aon-page--plain { padding: 32px 0 80px; }
.aon-prose { max-width: 760px; color: var(--aon-text); font-size: 16px; line-height: 1.65; }
.aon-page--account .aon-prose { max-width: none; }
.aon-prose h2 { margin: 40px 0 12px; font: 700 22px/1.3 var(--aon-head); color: #3c3950; }
.aon-prose h3 { margin: 28px 0 8px; font: 700 18px/1.35 var(--aon-head); color: #3c3950; }
.aon-prose p, .aon-prose ul, .aon-prose ol { margin: 0 0 16px; }
.aon-prose a { color: var(--aon-green); text-underline-offset: .2em; }
/* account forms: same fields and buttons as checkout */
.aon-page--account .woocommerce form .form-row { margin: 0 0 16px; }
.aon-page--account .woocommerce form .form-row label { display: block; margin: 0 0 6px; font-size: 15px; font-weight: 600; color: var(--aon-green); }
.aon-page--account .woocommerce form .form-row input.input-text { width: 100%; min-height: 48px; padding: 0 14px; font-size: 16px; border: 1px solid #c9d2d7; border-radius: 0; color: var(--aon-green); }
.aon-page--account .woocommerce button.button, .aon-page--account .woocommerce a.button { min-height: 52px; padding: 0 28px; border: 0; border-radius: 0; background: var(--aon-green); color: #fff; font: 700 15px/52px var(--aon-head); }
.aon-page--account .woocommerce-form__label-for-checkbox { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; }

/* ---------- shop & category pages ---------- */
.aon-page--shop { padding-bottom: 80px; }
/* a category that carries its own hero (e.g. Pedalboards) shows one H1, not two */
.aon-page--shop:has(.aon-pedalboards-hero) .woocommerce-products-header { display: none; }
.aon-page--shop .woocommerce-products-header__title { font-family: var(--aon-serif); font-size: 33.28px; font-weight: 500; line-height: 1.15; letter-spacing: .025em; text-transform: uppercase; color: var(--aon-green); margin: 0 0 16px; }
.aon-page--shop .term-description { max-width: 70ch; margin: 0 0 32px; color: var(--aon-text); }
.aon-page--shop .woocommerce-result-count { margin: 0 0 16px; font-size: 14px; color: #59666d; }
.aon-page--shop .woocommerce-ordering { margin: 0 0 24px; }
.aon-page--shop .woocommerce-ordering select { min-height: 44px; padding: 0 36px 0 12px; font-size: 16px; border: 1px solid #c9d2d7; background: #fff; color: var(--aon-green); }
/* category cards in the grid */
.aon-page--shop ul.products li.product-category { background: #f6f7f6; padding: 0 0 18px; }
.aon-page--shop ul.products li.product-category a { display: block; color: var(--aon-green); text-decoration: none; }
.aon-page--shop ul.products li.product-category img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; margin: 0; }
.aon-page--shop ul.products li.product-category .woocommerce-loop-category__title { margin: 0; padding: 14px 16px 4px; font: 700 17px/1.3 var(--aon-head); color: #111315; }
.aon-page--shop ul.products li.product-category .count { background: none; color: #59666d; font-weight: 400; font-size: 14px; }
.aon-page--shop .woocommerce-pagination ul { display: flex; gap: 6px; justify-content: center; list-style: none; margin: 40px 0 0; padding: 0; border: 0; }
.aon-page--shop .woocommerce-pagination a, .aon-page--shop .woocommerce-pagination span { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; border: 1px solid #c9d2d7; color: var(--aon-green); text-decoration: none; }
.aon-page--shop .woocommerce-pagination .current { background: var(--aon-green); border-color: var(--aon-green); color: #fff; }

/* ---------- cart & checkout: shared ---------- */
.aon-page--cart, .aon-page--checkout { padding-bottom: 96px; }
nav.aon-steps { padding-top: 24px; }
nav.aon-steps ol { display: flex; flex-wrap: wrap; gap: 4px 0; list-style: none; margin: 0; padding: 0; font-size: 14px; line-height: 22px; color: #59666d; }
nav.aon-steps li:not(:last-child)::after { content: "›"; margin: 0 10px; color: #8a979f; }
nav.aon-steps li[aria-current="step"] { color: var(--aon-green); font-weight: 600; }
nav.aon-steps a { color: #59666d; text-underline-offset: .2em; }
.aon-shop-title { font-family: var(--aon-serif); font-size: 33.28px; font-weight: 500; line-height: 1.15; letter-spacing: .025em; text-transform: uppercase; color: var(--aon-green); margin: 12px 0 32px; }
.aon-btn-secondary { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 24px; border: 1.6px solid var(--aon-green); color: var(--aon-green); font: 700 15px/1.2 var(--aon-head); text-decoration: none; transition: transform var(--aon-fast) var(--aon-ease-out), background-color var(--aon-fast) ease; }
.aon-btn-secondary:active { transform: scale(.97); }
@media (hover: hover) and (pointer: fine) { .aon-btn-secondary:hover { background: #f6f7f6; } }
.aon-page--cart .woocommerce-cart-form input.qty,
.aon-page--checkout .woocommerce input.input-text,
.aon-page--checkout .woocommerce select,
.aon-page--checkout .woocommerce textarea { font: 400 16px/1.3 var(--aon-body); color: var(--aon-green); }

/* ---------- cart ---------- */
@media (min-width: 1024px) {
	.aon-page--cart .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) 380px; column-gap: 56px; align-items: start; }
	.aon-page--cart .woocommerce > * { grid-column: 1; }
	.aon-page--cart .woocommerce > .cart-collaterals { grid-column: 2; grid-row: 1 / span 6; position: sticky; top: calc(var(--aon-header-h) + 16px); }
	.aon-page--cart .woocommerce > .cross-sells { grid-column: 1 / -1; }
}
.aon-page--cart .shop_table.cart { width: 100%; border: 0; border-collapse: collapse; margin: 0; }
.aon-page--cart .shop_table.cart thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.aon-page--cart .shop_table.cart tbody { display: block; }
.aon-page--cart .shop_table.cart tr.cart_item {
	display: grid; grid-template-columns: 120px auto minmax(0, 1fr) auto; column-gap: 24px; row-gap: 16px;
	grid-template-areas: "thumb name name sub" "thumb qty rem .";
	padding: 28px 0; border-top: 1px solid #dfe5e8;
}
.aon-page--cart .shop_table.cart tr.cart_item:last-of-type { border-bottom: 1px solid #dfe5e8; }
.aon-page--cart .shop_table.cart td { display: block; padding: 0; border: 0; background: none; text-align: left; }
.aon-page--cart .shop_table.cart td::before { content: none !important; display: none !important; }
.aon-page--cart td.product-thumbnail { grid-area: thumb; }
.aon-page--cart td.product-thumbnail img { display: block; width: 120px; height: 120px; object-fit: cover; background: #ece7dd; }
.aon-page--cart td.product-name { grid-area: name; color: var(--aon-green); }
.aon-page--cart td.product-name > a { font: 700 17px/1.3 var(--aon-head); color: var(--aon-green); text-decoration: none; }
.aon-page--cart td.product-price { display: none !important; }
.aon-page--cart td.product-subtotal { grid-area: sub; font-size: 18px; color: var(--aon-green); text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.aon-page--cart td.product-quantity { grid-area: qty; align-self: center; }
.aon-page--cart td.product-remove { grid-area: rem; align-self: center; text-align: left; }
/* quantity stepper (buttons added by aon.js around the real input) */
.aon-qty { display: inline-flex; align-items: stretch; border: 1px solid #c9d2d7; background: #fff; }
.aon-qty__btn { width: 44px; min-height: 44px; padding: 0; border: 0; background: none; color: var(--aon-green); font: 400 20px/1 var(--aon-body); cursor: pointer; transition: background-color var(--aon-fast) ease; }
@media (hover: hover) and (pointer: fine) { .aon-qty__btn:hover { background: #f6f7f6; } }
.aon-qty__btn:active { background: #eef1f2; }
.aon-page--cart .aon-qty input.qty { width: 44px; min-height: 44px; border: 0; padding: 0; text-align: center; -moz-appearance: textfield; appearance: textfield; }
.aon-page--cart .aon-qty input.qty::-webkit-outer-spin-button, .aon-page--cart .aon-qty input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.aon-page--cart td.product-remove a.remove { display: inline-flex; align-items: center; min-height: 44px; width: auto; height: auto; border-radius: 0; font-size: 15px; font-weight: 400; color: #59666d !important; background: none !important; text-decoration: underline; text-underline-offset: .2em; }
@media (hover: hover) and (pointer: fine) { .aon-page--cart td.product-remove a.remove:hover { color: var(--aon-green) !important; } }
.aon-page--cart .woocommerce-cart-form input.qty { width: 80px; min-height: 48px; padding: 0 8px; text-align: center; border: 1px solid #c9d2d7; border-radius: 0; }
/* the build: Size, Deck, Body … as a quiet two-column list */
.aon-page--cart dl.variation, .aon-page--checkout dl.variation { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 2px 14px; margin: 10px 0 0; font-size: 15px; line-height: 1.45; }
.aon-page--cart dl.variation dt, .aon-page--checkout dl.variation dt { float: none; margin: 0; font-weight: 400; color: #59666d; }
.aon-page--cart dl.variation dd, .aon-page--checkout dl.variation dd { float: none; margin: 0; padding: 0; color: var(--aon-green); }
.aon-page--cart dl.variation dd p, .aon-page--checkout dl.variation dd p { margin: 0; }
.aon-item-lead { margin: 8px 0 0; font-size: 14px; color: #59666d; }
.aon-page--cart td.actions { display: flex !important; justify-content: flex-end; gap: 12px; padding: 16px 0 0 !important; border: 0; }
.aon-page--cart td.actions .button { min-height: 44px; padding: 0 18px; border: 1.6px solid var(--aon-green); background: #fff; color: var(--aon-green); font: 700 14px/1.2 var(--aon-head); border-radius: 0; }
.aon-js .aon-page--cart td.actions button[name="update_cart"] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.aon-page--cart .shop_table.cart tr:has(> td.actions) { display: block; }
@media (max-width: 599px) {
	.aon-page--cart .shop_table.cart tr.cart_item { grid-template-columns: 88px auto minmax(0, 1fr); grid-template-areas: "thumb name name" "thumb sub sub" "qty qty rem"; column-gap: 14px; }
	.aon-page--cart td.product-thumbnail img { width: 88px; height: 88px; }
	.aon-page--cart td.product-subtotal { text-align: left; }
}
/* summary box: controlled layout (WooCommerce's table styling switched off inside it) */
.aon-page--cart .cart-collaterals { margin-top: 32px; }
@media (min-width: 1024px) { .aon-page--cart .cart-collaterals { margin-top: 0; } }
.aon-page--cart .woocommerce .cart-collaterals { width: 100%; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals { float: none; width: 100%; padding: 24px; background: #f6f7f6; color: var(--aon-green); }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals h2 { margin: 0 0 4px; font: 700 18px/1.3 var(--aon-head); color: #3c3950; text-transform: none; letter-spacing: 0; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals table,
.aon-page--cart .woocommerce .cart-collaterals .cart_totals tbody { display: block; width: 100%; margin: 0; border: 0; border-collapse: separate; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals tr { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 14px 0; border-top: 1px solid #e1e6e8; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals tr:first-child { border-top: 0; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals th,
.aon-page--cart .woocommerce .cart-collaterals .cart_totals td { display: block; width: auto; padding: 0 !important; border: 0 !important; background: none; font-size: 15px; line-height: 1.45; vertical-align: baseline; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals td::before { content: none !important; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals th { text-align: left; font-weight: 400; color: #59666d; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals td { text-align: right; color: var(--aon-green); font-variant-numeric: tabular-nums; }
/* shipping: title, then each courier as a white option card */
.aon-page--cart .woocommerce .cart-collaterals .cart_totals tr.woocommerce-shipping-totals { flex-direction: column; align-items: stretch; gap: 10px; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals tr.woocommerce-shipping-totals td { text-align: left; width: 100%; }
.aon-page--cart #shipping_method { list-style: none; margin: 0 0 4px; padding: 0; display: grid; gap: 8px; }
.aon-page--cart #shipping_method li { position: relative; display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 12px; align-items: start; margin: 0; padding: 12px 14px; text-indent: 0; background: #fff; border: 1px solid #dfe5e8; transition: border-color var(--aon-fast) ease, box-shadow var(--aon-fast) ease; }
.aon-page--cart #shipping_method li:has(input:checked) { border-color: var(--aon-green); box-shadow: inset 0 0 0 1px var(--aon-green); }
.aon-page--cart #shipping_method li input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--aon-green); }
.aon-page--cart #shipping_method li label { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; row-gap: 2px; align-items: baseline; margin: 0; font-size: 15px; line-height: 1.35; color: var(--aon-green); cursor: pointer; text-align: left; }
.aon-page--cart #shipping_method li label::after { content: ""; position: absolute; inset: 0; }
.aon-page--cart #shipping_method li label img { display: none; }
/* beats WooCommerce's ".woocommerce ul#shipping_method li label { display:inline }" */
.aon-page--cart .woocommerce .cart_totals ul#shipping_method li label { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; row-gap: 2px; align-items: baseline; margin: 0; }
.aon-ship__name, .aon-ship__eta, .aon-ship__price { display: block; }
.aon-ship__name { grid-column: 1; grid-row: 1; font-weight: 600; }
.aon-ship__price { grid-column: 2; grid-row: 1; font-weight: 600; text-align: right; white-space: nowrap; }
.aon-ship__eta { grid-column: 1 / -1; grid-row: 2; font-size: 13px; line-height: 1.4; color: #59666d; }
/* BOX NOW: the cost is paid later, so it reads as a note, not as a price */
.aon-ship__price--later { font-weight: 400; font-size: 13px; color: #59666d; }
/* one courier only (Greece): WooCommerce prints no radio, so the label takes the whole row instead of the 18px radio column */
.aon-page--checkout .aon-shipping-choice ul#shipping_method li:not(:has(input[type="radio"])),
.aon-page--cart #shipping_method li:not(:has(input[type="radio"])) { grid-template-columns: minmax(0, 1fr); }
.aon-page--checkout .aon-shipping-choice ul#shipping_method li:not(:has(input[type="radio"])) label,
.aon-page--cart #shipping_method li:not(:has(input[type="radio"])) label { grid-column: 1; }
/* a single courier is not a choice: no pointer, no hover card */
.aon-page--cart #shipping_method li:not(:has(input[type="radio"])) label { cursor: default; }
/* the older snippet note (#12396) repeats the line above and broke the option's grid */
.aon-boxnow-shipping-note { display: none !important; }
/* Apple Pay / Google Pay line above "OR" */
.aon-express-note { display: block; margin: 0 0 14px; font-size: 13px; line-height: 1.45; color: #59666d; text-align: center; }
.aon-page--cart .cart_totals .woocommerce-shipping-destination { margin: 0; font-size: 13px; line-height: 1.45; color: #59666d; }
.aon-page--cart .cart_totals .woocommerce-shipping-destination strong { font-weight: 400; color: var(--aon-green); }
.aon-page--cart .cart_totals .shipping-calculator-button { display: inline-block; margin-top: 4px; font-size: 13px; color: var(--aon-green); text-underline-offset: .2em; }
.aon-page--cart .cart_totals .shipping-calculator-button::after { display: none; }
/* total: label left, amount right, tax note underneath in small type */
.aon-page--cart .woocommerce .cart-collaterals .cart_totals tr.order-total { flex-wrap: wrap; padding-top: 16px; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals tr.order-total th { font-weight: 600; color: var(--aon-green); }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals tr.order-total td strong { font-size: 24px; font-weight: 300; line-height: 1.1; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals tr.order-total td small { display: block; margin-top: 4px; font-size: 13px; line-height: 1.4; color: #59666d; }
.aon-page--cart .woocommerce .cart-collaterals .cart_totals tr.order-total td small .amount { font-size: 13px; }
.aon-cart-lead { margin: 4px 0 0; font-size: 13px; line-height: 1.45; color: #59666d; }
.aon-cart-lead a { color: var(--aon-green); text-underline-offset: .2em; }
.aon-page--cart .wc-proceed-to-checkout { padding: 14px 0 0; display: grid; gap: 10px; }
.aon-page--cart .wc-proceed-to-checkout a.checkout-button { display: flex; width: 100%; margin: 0; padding: 0 20px; font-size: 15px; }
/* ---------- checkout ---------- */
@media (min-width: 1024px) {
	.aon-page--checkout form.checkout { display: grid; grid-template-columns: minmax(0, 1fr) 420px; column-gap: 64px; align-items: start; }
	.aon-page--checkout form.checkout > * { grid-column: 1; }
	/* the summary spans every row of the form column, so it never waits for the form's first block */
	.aon-page--checkout form.checkout > #order_review { grid-column: 2; grid-row: 1 / span 40; position: sticky; top: calc(var(--aon-header-h) + 16px); }
}
.aon-page--checkout form.checkout > #order_review_heading { display: none; }
.aon-page--checkout .col2-set, .aon-page--checkout .col2-set .col-1, .aon-page--checkout .col2-set .col-2 { float: none; width: 100%; }
.aon-page--checkout .col2-set::before, .aon-page--checkout .col2-set::after { content: none; }
.aon-page--checkout .col2-set .col-2 { margin-top: 24px; }
.aon-page--checkout h3, .aon-page--checkout #order_review_heading { margin: 0 0 18px; font: 700 20px/1.3 var(--aon-head); color: #3c3950; text-transform: none; letter-spacing: 0; }
/* fields: visible labels, 48px controls, 16px type, one column */
.aon-page--checkout .woocommerce-billing-fields__field-wrapper,
.aon-page--checkout .woocommerce-shipping-fields__field-wrapper { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 16px; }
.aon-page--checkout .form-row { float: none !important; width: auto !important; margin: 0 0 18px; padding: 0; grid-column: 1 / -1; }
.aon-page--checkout .form-row-first { grid-column: 1; }
.aon-page--checkout .form-row-last { grid-column: 2; }
@media (max-width: 599px) { .aon-page--checkout .form-row-first, .aon-page--checkout .form-row-last { grid-column: 1 / -1; } }
.aon-page--checkout .form-row label { display: block; margin: 0 0 6px; font-size: 15px; font-weight: 600; line-height: 1.3; color: var(--aon-green); }
.aon-page--checkout .form-row label .required { color: #a3392f; text-decoration: none; border: 0; }
.aon-page--checkout .form-row label .optional { font-weight: 400; color: #59666d; }
.aon-page--checkout .woocommerce input.input-text,
.aon-page--checkout .woocommerce select,
.aon-page--checkout .woocommerce .select2-container .select2-selection--single { width: 100%; min-height: 48px; padding: 0 14px; border: 1px solid #c9d2d7; border-radius: 0; background: #fff; box-shadow: none; }
.aon-page--checkout .woocommerce .select2-container .select2-selection--single { display: flex; align-items: center; height: 48px; }
.aon-page--checkout .woocommerce .select2-container .select2-selection__rendered { padding: 0; line-height: 46px; font-size: 16px; color: var(--aon-green); }
.aon-page--checkout .woocommerce .select2-container .select2-selection__arrow { height: 46px; right: 8px; }
.aon-page--checkout .woocommerce textarea.input-text { min-height: 96px; padding: 12px 14px; }
.aon-page--checkout .woocommerce input.input-text:focus-visible,
.aon-page--checkout .woocommerce select:focus-visible { outline: 3px solid #245849; outline-offset: 2px; border-color: var(--aon-green); }
.aon-page--checkout .form-row .description { display: block !important; position: static !important; margin: 6px 0 0; padding: 0; background: none !important; color: #59666d !important; font-size: 14px; line-height: 1.45; }
.aon-page--checkout .form-row .description::before { display: none !important; }
.aon-page--checkout .form-row.woocommerce-invalid input.input-text,
.aon-page--checkout .form-row.woocommerce-invalid .select2-selection { border: 2px solid #a3392f; }
.aon-page--checkout .form-row.woocommerce-invalid label { color: #812a23; }
.aon-page--checkout .checkout-inline-error-message { margin: 6px 0 0; font-size: 14px; color: #a3392f; }
/* "+ Add company / apartment / note" (aon.js) */
.aon-reveal { display: inline-flex; align-items: center; min-height: 36px; padding: 0; border: 0; background: none; font: inherit; font-size: 15px; color: var(--aon-green); text-decoration: underline; text-underline-offset: .2em; cursor: pointer; }
.aon-page--checkout .form-row.aon-is-tucked { margin-top: -8px; }
.aon-page--checkout .form-row.aon-is-tucked > :not(.aon-reveal) { display: none !important; }
.aon-page--checkout #ship-to-different-address { margin: 8px 0 16px; font: 400 16px/1.4 var(--aon-body); }
.aon-page--checkout #ship-to-different-address label { display: flex; align-items: center; gap: 12px; min-height: 44px; cursor: pointer; color: var(--aon-green); }
.aon-page--checkout input[type="checkbox"], .aon-page--checkout input[type="radio"] { width: 20px; height: 20px; margin: 0; accent-color: var(--aon-green); }
.aon-page--checkout .woocommerce-form__label-for-checkbox { display: flex !important; align-items: flex-start; gap: 12px; font-weight: 400 !important; cursor: pointer; }
.aon-page--checkout .woocommerce-form__label-for-checkbox input { margin-top: 2px !important; flex: none; }
/* order review: same quiet summary as the cart */
.aon-page--checkout #order_review { background: #f6f7f6; padding: 24px; color: var(--aon-green); }
.aon-page--checkout #order_review table.shop_table { display: block; width: 100%; margin: 0 0 8px; border: 0; border-collapse: separate; }
.aon-page--checkout #order_review table.shop_table thead { display: none; }
.aon-page--checkout #order_review table.shop_table tbody, .aon-page--checkout #order_review table.shop_table tfoot { display: block; }
.aon-page--checkout #order_review table.shop_table tr { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 14px 0; border-top: 1px solid #e1e6e8; }
.aon-page--checkout #order_review table.shop_table tbody tr:first-child { border-top: 0; padding-top: 0; }
.aon-page--checkout #order_review table.shop_table th,
.aon-page--checkout #order_review table.shop_table td { display: block; padding: 0 !important; border: 0 !important; background: none; font-size: 15px; line-height: 1.45; font-weight: 400; text-align: left; }
.aon-page--checkout #order_review table.shop_table td:last-child { text-align: right; font-variant-numeric: tabular-nums; }
.aon-page--checkout #order_review tfoot th { color: #59666d; }
.aon-page--checkout #order_review td.product-name { color: var(--aon-green); font-weight: 600; }
.aon-page--checkout #order_review td.product-name .product-quantity { font-weight: 400; color: #59666d; }
.aon-page--checkout #order_review td.product-name dl.variation { font-weight: 400; font-size: 14px; }
.aon-page--checkout #order_review tr.woocommerce-shipping-totals { flex-direction: column; align-items: stretch; gap: 10px; }
.aon-page--checkout #order_review tr.woocommerce-shipping-totals td { text-align: left !important; width: 100%; }
.aon-page--checkout #order_review tr.order-total { flex-wrap: wrap; padding-top: 16px; }
.aon-page--checkout #order_review tr.order-total th { font-weight: 600; color: var(--aon-green); }
.aon-page--checkout #order_review tr.order-total td strong { font-size: 24px; font-weight: 300; line-height: 1.1; }
.aon-page--checkout #order_review tr.order-total td small { display: block; margin-top: 4px; font-size: 13px; line-height: 1.4; color: #59666d; }
.aon-page--checkout #order_review tr.order-total td small .amount { font-size: 13px; }
.aon-page--checkout .woocommerce ul#shipping_method { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.aon-page--checkout .woocommerce ul#shipping_method li { position: relative; display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 12px; align-items: start; margin: 0; padding: 12px 14px; text-indent: 0; background: #fff; border: 1px solid #dfe5e8; }
.aon-page--checkout .woocommerce ul#shipping_method li:has(input:checked) { border-color: var(--aon-green); box-shadow: inset 0 0 0 1px var(--aon-green); }
.aon-page--checkout .woocommerce ul#shipping_method li input { width: 18px; height: 18px; margin: 2px 0 0; }
.aon-page--checkout .woocommerce ul#shipping_method li label { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; row-gap: 2px; align-items: baseline; margin: 0; font-size: 15px; line-height: 1.35; color: var(--aon-green); cursor: pointer; }
.aon-page--checkout .woocommerce ul#shipping_method li label::after { content: ""; position: absolute; inset: 0; }
.aon-page--checkout .woocommerce-shipping-destination { font-size: 13px; color: #59666d; }
/* payment methods: option cards, then one dark-green "Pay €…" button */
.aon-page--checkout #payment { background: none; border-radius: 0; margin-top: 8px; }
.aon-page--checkout #payment ul.payment_methods { display: grid; gap: 8px; margin: 0; padding: 0 0 16px; border: 0; list-style: none; }
.aon-page--checkout #payment ul.payment_methods li { margin: 0; padding: 14px 16px; background: #fff; border: 1px solid #dfe5e8; line-height: 1.4; }
.aon-page--checkout #payment ul.payment_methods li:has(> input:checked) { border-color: var(--aon-green); box-shadow: inset 0 0 0 1px var(--aon-green); }
.aon-page--checkout #payment ul.payment_methods li > input { vertical-align: middle; margin-right: 10px; }
.aon-page--checkout #payment ul.payment_methods li > label { display: inline; font-size: 15px; font-weight: 600; color: var(--aon-green); cursor: pointer; }
.aon-page--checkout #payment ul.payment_methods li > label img { max-height: 22px; width: auto; vertical-align: middle; margin-left: 6px; }
.aon-page--checkout #payment div.payment_box { margin: 12px 0 0; padding: 0; background: none; color: #59666d; font-size: 14px; }
.aon-page--checkout #payment div.payment_box::before { display: none; }
.aon-page--checkout #payment div.form-row.place-order { margin: 0; padding: 0; }
.aon-page--checkout .woocommerce-terms-and-conditions-wrapper { margin: 0 0 14px; font-size: 15px; color: var(--aon-green); }
.aon-page--checkout .woocommerce-privacy-policy-text p { margin: 0 0 12px; font-size: 13px; line-height: 1.5; color: #59666d; }
.aon-page--checkout .woocommerce #place_order { display: flex; width: 100%; min-height: 56px; float: none; margin: 0; font-size: 16px; }
.aon-cart-lead--checkout { margin: 0 0 14px; }
/* "Have an account? Log in": a line, not a notice box */
.aon-page--checkout .woocommerce-form-login-toggle .woocommerce-info { display: block; margin: 0 0 20px; padding: 0; border: 0; border-radius: 0; background: none; font-size: 15px; color: #59666d; }
.aon-page--checkout .woocommerce-form-login-toggle .woocommerce-info a { color: #111414; font-weight: 600; text-decoration: underline; text-underline-offset: .2em; }
.aon-page--checkout form.woocommerce-form-login { margin: 0 0 28px; padding: 22px; border: 1px solid #dfe5e8; border-radius: 12px; }
/* ---------- checkout v2: sections in the form column, compact summary ---------- */
/* Elementor page setting paints page 184 mint; the theme page is white like the rest of the shop */
body.woocommerce-checkout, body.woocommerce-cart, body.woocommerce-checkout .aon-page, body.woocommerce-cart .aon-page { background: #fff !important; }
.aon-page--checkout .aon-shop-title { margin-bottom: 28px; }
/* sections: one rhythm, a hairline between them */
.aon-page--checkout #customer_details,
.aon-page--checkout .aon-shipping-choice,
.aon-page--checkout #payment { padding: 28px 0; border-top: 1px solid #dfe5e8; }
.aon-page--checkout #customer_details { padding-top: 0; border-top: 0; }
.aon-page--checkout .aon-shipping-choice:empty { display: none; }
.aon-page--checkout h3, .aon-page--checkout .aon-shipping-choice h3 { margin: 0 0 18px; font: 700 18px/1.3 var(--aon-head); color: #3c3950; }
.aon-page--checkout .woocommerce-additional-fields > h3 { display: none; }
.aon-page--checkout .col2-set .col-2 { margin-top: 0; }
.aon-page--checkout #ship-to-different-address { margin: 0 0 8px; }
.aon-page--checkout .form-row { margin-bottom: 16px; }
.aon-page--checkout .form-row .description { padding: 0 !important; margin-top: 6px !important; }
.aon-page--checkout .woocommerce-input-wrapper { display: block; }
/* delivery choice in the form */
.aon-page--checkout table.aon-shipping-table, .aon-page--checkout table.aon-shipping-table tbody, .aon-page--checkout table.aon-shipping-table tr, .aon-page--checkout table.aon-shipping-table td { display: block; width: 100%; margin: 0; padding: 0; border: 0; background: none; }
.aon-page--checkout table.aon-shipping-table th { display: none; }
.aon-page--checkout .aon-shipping-choice ul#shipping_method { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.aon-page--checkout .aon-shipping-choice ul#shipping_method li { position: relative; display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 12px; align-items: start; margin: 0; padding: 14px 16px; text-indent: 0; background: #fff; border: 1px solid #c9d2d7; }
.aon-page--checkout .aon-shipping-choice ul#shipping_method li:has(input:checked) { border-color: var(--aon-green); box-shadow: inset 0 0 0 1px var(--aon-green); }
.aon-page--checkout .aon-shipping-choice ul#shipping_method li label { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; row-gap: 2px; align-items: baseline; margin: 0; font-size: 15px; line-height: 1.35; color: var(--aon-green); cursor: pointer; }
.aon-page--checkout .aon-shipping-choice ul#shipping_method li label::after { content: ""; position: absolute; inset: 0; }
.aon-page--checkout .aon-shipping-choice .woocommerce-shipping-destination,
.aon-page--checkout .aon-shipping-choice .woocommerce-shipping-contents { margin: 10px 0 0; font-size: 13px; color: #59666d; }
/* payment in the form: white option cards, no grey box */
.aon-page--checkout #payment { background: none !important; margin: 0; }
.aon-page--checkout .aon-payment-title { margin: 0; padding: 28px 0 0; border-top: 1px solid #dfe5e8; }
.aon-page--checkout .aon-payment-title + #payment { padding-top: 18px; border-top: 0; }
.aon-page--checkout #payment ul.payment_methods li { border-color: #c9d2d7; }
.aon-page--checkout #payment div.payment_box { margin-top: 14px; }
.aon-page--checkout .woocommerce-terms-and-conditions-wrapper .form-row { margin: 0; }
.aon-page--checkout .woocommerce-terms-and-conditions-wrapper label { font-size: 15px; font-weight: 400; line-height: 1.45; color: var(--aon-green); }
.aon-page--checkout .woocommerce-terms-and-conditions-wrapper label abbr.required, .aon-page--checkout .woocommerce-terms-and-conditions-wrapper label .required { float: none; margin-left: 2px; }
.aon-page--checkout .woocommerce-privacy-policy-text { margin: 0 0 14px; }
.aon-page--checkout #payment .place-order { display: grid; gap: 14px; }
.aon-page--checkout .aon-trust-strip { margin-top: 0; }
/* summary: items and totals only, options on one quiet line */
.aon-page--checkout #order_review { padding: 24px; background: #f6f7f6; }
.aon-summary-title { margin: 0 0 12px; font: 700 18px/1.3 var(--aon-head); color: #3c3950; }
.aon-page--checkout #order_review td.product-name { font-size: 15px; line-height: 1.4; }
.aon-page--checkout #order_review dl.variation { display: block; margin: 4px 0 0; font-size: 13px; line-height: 1.5; color: #59666d; }
.aon-page--checkout #order_review dl.variation dt { display: none; }
.aon-page--checkout #order_review dl.variation dd { display: inline; margin: 0; color: #59666d; font-weight: 400; }
.aon-page--checkout #order_review dl.variation dd p { display: inline; margin: 0; }
.aon-page--checkout #order_review dl.variation dd:not(:last-of-type)::after { content: " · "; }
.aon-page--checkout #order_review tr.aon-review-shipping td { text-align: right; }
/* phone/tablet: summary first, folded behind one bar that shows the total */
.aon-summary-toggle { display: none; }
@media (max-width: 1023px) {
	.aon-page--checkout form.checkout { display: flex; flex-direction: column; }
	.aon-page--checkout form.checkout > #order_review { order: -1; margin: 0 0 28px; padding: 0; }
	.aon-js .aon-page--checkout #order_review .aon-summary-title { display: none; }
	.aon-js .aon-summary-toggle { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 56px; padding: 0 16px; border: 0; background: #f6f7f6; font: 600 15px/1.3 var(--aon-body); color: var(--aon-green); cursor: pointer; }
	.aon-summary-toggle__total { font-weight: 300; font-size: 20px; font-variant-numeric: tabular-nums; }
	.aon-summary-toggle svg { transition: transform var(--aon-fast) var(--aon-ease-out); }
	.aon-summary-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
	.aon-page--checkout #order_review .woocommerce-checkout-review-order-table { padding: 8px 16px 16px; }
	.aon-js .aon-page--checkout #order_review:not(.is-open) .woocommerce-checkout-review-order-table { display: none; }
}

/* order received */
.aon-page--received .woocommerce-order-overview { display: flex; flex-wrap: wrap; gap: 12px 32px; margin: 0 0 32px; padding: 20px 24px; list-style: none; background: #f6f7f6; }
.aon-page--received .woocommerce-order-overview li { margin: 0; padding: 0; border: 0; font-size: 13px; text-transform: none; color: #59666d; }
.aon-page--received .woocommerce-order-overview li strong { display: block; margin-top: 2px; font-size: 16px; color: var(--aon-green); }
.aon-page--received .woocommerce-thankyou-order-received { font-size: 18px; color: var(--aon-green); }

/* empty cart */
.aon-cart-empty { padding: 8px 0 24px; }
.aon-cart-empty__lead { margin: 0 0 20px; font-size: 18px; color: var(--aon-green); }
.aon-cart-empty__actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; }
.aon-cart-empty__actions .button { min-height: 52px; padding: 0 28px; border: 0; border-radius: 0; background: var(--aon-green); color: #fff; font: 700 15px/52px var(--aon-head); }
.aon-page--cart .cross-sells { margin-top: 64px; }
.aon-page--cart .cross-sells > h2 { font: 200 24px/38px var(--aon-head); letter-spacing: .05em; text-transform: uppercase; color: #3c3950; margin: 0 0 24px; }

/* ---------- page content ---------- */
.aon-page { display: block; }
.aon-page--home > :first-child { margin-top: 0; }

/* ---------- footer: as live — mint, Reverb badge, centred columns, payment strip ---------- */
.aon-footer { background: var(--aon-mint); color: #333; padding-top: 40px; text-align: center; }
.aon-footer__reverb { margin: 0 0 48px; }
.aon-footer__reverb a { display: inline-block; line-height: 0; transition: transform var(--aon-fast) var(--aon-ease-out); }
.aon-footer__reverb a:active { transform: scale(.97); }
.aon-footer__reverb img { display: block; width: 215px; height: auto; }
.aon-footer__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 24px; max-width: 960px; margin: 0 auto; align-items: start; }
.aon-footer__h { font: 400 18px/1.3 var(--aon-head); text-transform: uppercase; letter-spacing: .08em; margin: 0 0 14px; color: #000; }
.aon-footer__list { list-style: none; margin: 0; padding: 0; }
.aon-footer__list a { display: inline-flex; min-height: 26px; align-items: center; text-decoration: none; color: #3d4f4b; font-family: var(--aon-body); font-size: 15px; font-weight: 300; }
@media (hover: hover) and (pointer: fine) { .aon-footer__list a:hover { color: #000; text-decoration: underline; text-underline-offset: .2em; } }
.aon-footer__pay { display: flex; flex-direction: column; align-items: center; gap: 0; }
.aon-footer__pay img { display: block; width: 261px; max-width: 100%; height: auto; }
.aon-footer__pay img:last-child { width: 222px; margin-top: 2px; }
.aon-footer__small { margin: 0; padding-block: 36px 32px; font-size: 13px; color: #333; }
@media (min-width: 1024px) {
	.aon-footer { padding-top: 56px; }
	.aon-footer__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); max-width: 1180px; }
}
@media (max-width: 480px) {
	.aon-footer__grid { grid-template-columns: 1fr; }
}

/* ==========================================================================
   PRODUCT PAGE v2 — the homepage's language on the inner page.
   Warm paper ground, Montserrat heavy uppercase titles, hairlines instead of boxes,
   black pill CTA with the mint circle, the story as a dark band then an editorial spec sheet.
   Prefix "main.aon-page--product .product-page__wrapper" outranks the configurator snippet's
   own rules ([id^=product-].aon-main-enhanced …), so the configurator logic stays untouched.
   ========================================================================== */
main.aon-page--product {
	--pdp-ink: #111414;
	--pdp-muted: #5b625f;
	--pdp-line: rgba(17, 20, 20, .14);
	--pdp-paper: #f5f3ee;
	--pdp-card: #ffffff;
	--pdp-mint: #82c9b7;
	--pdp-night: #010303;
	--pdp-gutter: clamp(16px, 4vw, 56px);
	background: var(--pdp-paper);
	color: var(--pdp-ink);
	padding-bottom: 0;
}
main.aon-page--product .product-page__wrapper,
main.aon-page--product .product-page__wrapper.aon-main-enhanced {
	--aon-ink: var(--pdp-ink);
	--aon-muted: var(--pdp-muted);
	--aon-line: var(--pdp-line);
	--aon-paper: var(--pdp-card);
	color: var(--pdp-ink);
}
main.aon-page--product > .aon-container { max-width: 1440px; padding-inline: var(--pdp-gutter); }

/* crumbs: the homepage eyebrow voice */
main.aon-page--product .aon-breadcrumbs { min-height: 64px; }
main.aon-page--product .aon-breadcrumbs ol { font: 700 11px/1.4 var(--aon-head); letter-spacing: .14em; text-transform: uppercase; }
main.aon-page--product .aon-breadcrumbs li, main.aon-page--product .aon-breadcrumbs a { color: var(--pdp-muted); }
main.aon-page--product .aon-breadcrumbs li:last-child { color: var(--pdp-ink); }

/* stage: gallery 7, build 5 */
main.aon-page--product .aon-pdp-stage { gap: 32px; padding-bottom: clamp(64px, 8vw, 112px); }
@media (min-width: 900px) {
	main.aon-page--product .aon-pdp-stage { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(40px, 5vw, 80px); }
	/* the square photo + thumbnails always fit the screen under the header */
	main.aon-page--product .aon-pdp-stage .product-page__left-column { max-width: min(100%, calc(100svh - var(--aon-header-h) - 150px)); margin-left: auto; }
}
@media (min-width: 768px) and (max-width: 899px) {
	main.aon-page--product .aon-pdp-stage { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}

/* gallery: big image on a rounded card, quiet thumbnails, no beige tray */
main.aon-page--product .woocommerce-product-gallery__wrapper,
main.aon-page--product .woocommerce-product-gallery .flex-viewport { border-radius: 16px; overflow: hidden; background: #ece9e2; }
main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs { gap: 10px; padding: 12px 0 0; background: transparent; grid-template-columns: repeat(5, minmax(0, 1fr)); }
main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs img { border: 0; border-radius: 10px; opacity: .55; outline: 2px solid transparent; outline-offset: 2px; transition: opacity var(--aon-fast) ease, outline-color var(--aon-fast) ease; }
main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs img.flex-active { opacity: 1; outline-color: var(--pdp-ink); }
@media (hover: hover) and (pointer: fine) { main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs img:hover { opacity: 1; } }
/* the T1 colour snippet paints the gallery column beige: keep the stage clean */
body #main.aon-page--product .aon-pdp-stage .single-product-content-left .product-page__left-column { background: transparent !important; }
/* desktop: thumbnails as a vertical rail beside the photo, like a lookbook, not a strip under it */
@media (min-width: 900px) {
	/* block flow keeps the slider's own width maths intact, the rail sits in the left padding */
	main.aon-page--product .woocommerce-product-gallery { display: block; position: relative; padding-left: 90px; }
	/* the rail never runs past the photo: as tall as the gallery, scrolls inside itself, fades out at the edge when there is more */
	main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs {
		position: absolute; left: 0; top: 0; bottom: 0; width: 76px; display: flex; flex-direction: column; gap: 10px; padding: 0;
		overflow-y: auto; overscroll-behavior: contain; scrollbar-width: none;
	}
	main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar { display: none; }
	main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs.aon-rail--more-below { -webkit-mask-image: linear-gradient(#000 calc(100% - 56px), transparent); mask-image: linear-gradient(#000 calc(100% - 56px), transparent); }
	main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs.aon-rail--more-above { -webkit-mask-image: linear-gradient(transparent, #000 56px); mask-image: linear-gradient(transparent, #000 56px); }
	main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs.aon-rail--more-above.aon-rail--more-below { -webkit-mask-image: linear-gradient(transparent, #000 56px, #000 calc(100% - 56px), transparent); mask-image: linear-gradient(transparent, #000 56px, #000 calc(100% - 56px), transparent); }
	main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs li { flex: 0 0 auto; }
	main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs img { outline-offset: -2px; }
	main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs li { width: 76px; }
	main.aon-page--product .woocommerce-product-gallery__trigger { right: 16px; }
	main.aon-page--product .aon-pdp-stage .product-page__left-column { max-width: min(100%, calc(100svh - var(--aon-header-h) + 10px)); } /* photo = column − 90px rail, so it stays ≈ 80px shorter than the screen */
}
@media (max-width: 899px) {
	main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; }
}
main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs img { border-radius: 8px; }
main.aon-page--product .woocommerce-product-gallery__wrapper { border-radius: 16px; }
/* Speed (LCP) and stability (CLS): WooCommerce hides the whole gallery (opacity 0) until its slider script runs, so the
   main photo could not count as painted for seconds. Show the first photo straight away, keep the others out of the
   way until the slider is built, and on phones hold the space the thumbnail row will take. */
main.aon-page--product .woocommerce-product-gallery { opacity: 1 !important; }
/* non-EU visitors: price shown without VAT, said once under the price and under the Cart total */
.aon-noneu { margin: 6px 0 18px; font-size: 14px; line-height: 1.5; color: #5b625f; }
.aon-noneu--cart { margin: 4px 0 0; font-size: 13px; }
.aon-noneu-row td { padding-top: 0 !important; border: 0 !important; }
main.aon-page--product .woocommerce-product-gallery:not(:has(.flex-viewport)) .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:nth-child(n+2) { display: none; }
/* Phones (CLS): the summary sits under the gallery, so the gallery has its final height from the first paint:
   square photo + one row of thumbnails (scrolls sideways when there are more than six) + the configurator's photo note.
   Whatever the slider and the configurator do inside it later no longer pushes the page. */
@media (max-width: 899px) {
	main.aon-page--product .product-page__left-column { container-type: inline-size; }
	main.aon-page--product .woocommerce-product-gallery { height: 100cqw; margin-bottom: 0; }
	main.aon-page--product .woocommerce-product-gallery:has(.woocommerce-product-gallery__image:nth-child(2)) { height: calc(100cqw + (100cqw - 40px) / 6 + 12px); }
	main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs {
		display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 40px) / 6); grid-template-columns: none;
		overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none;
	}
	main.aon-page--product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar { display: none; }
	/* the configurator adds "Workshop photos…" under the gallery after load: its space is held before it arrives */
	main.aon-page--product .product-page__wrapper:not(.aon-main-enhanced):has(.wc-pao-addon-container) .product-page__left-column { padding-bottom: 47px; }
	main.aon-page--product .product-page__left-column .aon-photo-note { box-sizing: border-box; min-height: 33px; margin: 14px 0 0; font-size: 11px; line-height: 16.5px; }
}
/* quantity: no browser spinner arrows inside the pill */
main.aon-page--product .product-page__wrapper form.cart .quantity input.qty { -moz-appearance: textfield; appearance: textfield; text-align: center; font: 600 16px/1 var(--aon-body); color: var(--pdp-ink); }
main.aon-page--product .product-page__wrapper form.cart .quantity input.qty::-webkit-outer-spin-button,
main.aon-page--product .product-page__wrapper form.cart .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
main.aon-page--product .woocommerce-product-gallery__trigger { top: 16px; right: 16px; width: 44px; height: 44px; background: rgba(255,255,255,.92); }
main.aon-page--product .woocommerce-product-gallery__trigger::before { left: 13px; top: 13px; }
main.aon-page--product .woocommerce-product-gallery__trigger::after { left: 26px; top: 25px; }
main.aon-page--product .aon-photo-note { color: var(--pdp-muted); }

/* summary: series eyebrow, heavy uppercase title, light price */
main.aon-page--product .aon-pdp-series { margin: 0 0 14px; font: 700 11px/1.3 var(--aon-head); letter-spacing: .18em; text-transform: uppercase; }
main.aon-page--product .aon-pdp-series a { color: #3f6f62; text-decoration: none; }
@media (hover: hover) and (pointer: fine) { main.aon-page--product .aon-pdp-series a:hover { color: var(--pdp-ink); } }
main.aon-page--product .product-page__wrapper .product_title,
main.aon-page--product .product-page__right-column .product_title {
	margin: 0 0 18px; font-family: var(--aon-head); font-weight: 900; text-transform: uppercase;
	font-size: clamp(32px, 3.2vw, 48px); line-height: .95; letter-spacing: -.04em; color: var(--pdp-ink);
	text-wrap: balance;
}
main.aon-page--product .product-page__right-column p.price,
main.aon-page--product .product-page__right-column span.price { font: 300 26px/1.1 var(--aon-body); color: var(--pdp-ink); font-variant-numeric: tabular-nums; margin: 0 0 22px; }
main.aon-page--product .woocommerce-product-details__short-description { color: #2c3230; font-size: 17px; line-height: 1.65; max-width: 52ch; }
main.aon-page--product .woocommerce-product-details__short-description p { margin: 0 0 14px; }
main.aon-page--product .woocommerce-product-details__short-description strong { color: var(--pdp-ink); font-weight: 700; }
main.aon-page--product .product-page__wrapper .woocommerce-product-details__short-description ul { list-style: none; padding: 0; margin: 18px 0 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; border-top: 1px solid var(--pdp-line); }
main.aon-page--product .product-page__wrapper .woocommerce-product-details__short-description li { position: relative; padding: 10px 0 10px 18px; border-bottom: 1px solid var(--pdp-line); font-size: 14px; line-height: 1.45; }
main.aon-page--product .product-page__wrapper .woocommerce-product-details__short-description li::before { content: ""; position: absolute; left: 0; top: 17px; width: 6px; height: 6px; border-radius: 50%; background: var(--pdp-mint) !important; }
@media (max-width: 480px) { main.aon-page--product .product-page__wrapper .woocommerce-product-details__short-description ul { grid-template-columns: 1fr; } }

/* configurator: hairline rows instead of boxed cards */
main.aon-page--product .product-page__wrapper .aon-build-form { margin-top: 36px; }
main.aon-page--product .product-page__wrapper .aon-build-intro { border-top: 2px solid var(--pdp-ink); padding: 20px 0 22px; }
main.aon-page--product .product-page__wrapper .aon-build-kicker { font: 700 11px/1.3 var(--aon-head); letter-spacing: .18em; text-transform: uppercase; color: var(--pdp-muted); }
main.aon-page--product .product-page__wrapper .aon-build-title { margin: 8px 0 6px; font: 800 26px/1 var(--aon-head); letter-spacing: -.03em; text-transform: uppercase; color: var(--pdp-ink); }
main.aon-page--product .product-page__wrapper .aon-build-subtitle { font-size: 15px; color: var(--pdp-muted); }
main.aon-page--product .product-page__wrapper .aon-build-progress { padding: 6px 12px; border-radius: 999px; background: var(--pdp-ink); color: var(--pdp-mint); font: 800 10px/1.4 var(--aon-head); letter-spacing: .1em; text-transform: uppercase; }

main.aon-page--product .product-page__wrapper .aon-build-step { margin: 0; border: 0; border-top: 1px solid var(--pdp-line); border-radius: 0; background: transparent; overflow: visible; }
main.aon-page--product .product-page__wrapper .aon-build-step:last-of-type { border-bottom: 1px solid var(--pdp-line); }
main.aon-page--product .product-page__wrapper .aon-build-step.aon-step-open { border-color: var(--pdp-line); }
main.aon-page--product .product-page__wrapper .aon-step-toggle { min-height: 76px; padding: 16px 0; gap: 16px; background: transparent; border-radius: 0; color: var(--pdp-ink); }
main.aon-page--product .product-page__wrapper .aon-step-open .aon-step-toggle { border-radius: 0; }
main.aon-page--product .product-page__wrapper .aon-step-number { width: 30px; height: 30px; flex-basis: 30px; border: 1.5px solid var(--pdp-ink); font: 800 11px/1 var(--aon-head); font-variant-numeric: tabular-nums; color: var(--pdp-ink); background: transparent; }
main.aon-page--product .product-page__wrapper .aon-step-complete .aon-step-number { background: var(--pdp-mint); border-color: var(--pdp-mint); color: var(--pdp-ink); }
main.aon-page--product .product-page__wrapper .aon-step-title { font: 800 13px/1.2 var(--aon-head); letter-spacing: .08em; text-transform: uppercase; }
main.aon-page--product .product-page__wrapper .aon-step-value { font-size: 14px; color: var(--pdp-muted); }
main.aon-page--product .product-page__wrapper .aon-step-chevron { color: var(--pdp-ink); }
main.aon-page--product .product-page__wrapper .aon-step-panel { padding: 0 0 28px 46px; }
@media (max-width: 599px) { main.aon-page--product .product-page__wrapper .aon-step-panel { padding: 0 0 24px; } }
main.aon-page--product .product-page__wrapper .aon-step-note { font-size: 15px; color: var(--pdp-muted); }
main.aon-page--product .product-page__wrapper .aon-step-panel .wc-pao-legend,
main.aon-page--product .product-page__wrapper table.variations label { font: 800 11px/1.4 var(--aon-head); letter-spacing: .12em; text-transform: uppercase; color: var(--pdp-ink); }

/* fields inside the build */
main.aon-page--product .product-page__wrapper form.cart select,
main.aon-page--product .product-page__wrapper .aon-finish-search,
main.aon-page--product .product-page__wrapper .aon-step-panel select.wc-pao-addon-select:not([aria-hidden="true"]) {
	min-height: 52px; border: 1px solid rgba(17,20,20,.28); border-radius: 12px; background-color: var(--pdp-card); color: var(--pdp-ink); font-size: 16px;
}
main.aon-page--product .product-page__wrapper form.cart select:focus-visible,
main.aon-page--product .product-page__wrapper .aon-finish-search:focus-visible { border-color: var(--pdp-ink); outline: 3px solid var(--pdp-mint); outline-offset: 2px; }

/* option cards (surface, extras): white, rounded, ink ring when chosen */
main.aon-page--product .product-page__wrapper .aon-surface-options .wc-pao-addon-wrap > div,
main.aon-page--product .product-page__wrapper .aon-extra-card {
	border: 1px solid var(--pdp-line); border-radius: 12px; background: var(--pdp-card); min-height: 56px;
	transition: border-color var(--aon-fast) ease, box-shadow var(--aon-fast) ease;
}
main.aon-page--product .product-page__wrapper .aon-surface-options .wc-pao-addon-wrap { align-items: stretch; }
main.aon-page--product .product-page__wrapper .aon-surface-options .wc-pao-addon-wrap > div { margin: 0 !important; padding: 14px 16px; gap: 12px; }
main.aon-page--product .product-page__wrapper .aon-surface-options .wc-pao-addon-wrap label { line-height: 1.35; }
main.aon-page--product .product-page__wrapper .aon-surface-options .wc-pao-addon-wrap input { margin: 0 !important; }
main.aon-page--product .product-page__wrapper .aon-surface-options .wc-pao-addon-wrap > .aon-input-selected { border-color: var(--pdp-ink); background: var(--pdp-card); box-shadow: inset 0 0 0 1px var(--pdp-ink); }
main.aon-page--product .product-page__wrapper .aon-surface-options .wc-pao-addon-wrap label,
main.aon-page--product .product-page__wrapper .aon-extra-card label { font-size: 15px; color: var(--pdp-ink); }
main.aon-page--product .product-page__wrapper .wc-pao-addon-price { color: var(--pdp-muted); font-variant-numeric: tabular-nums; }

/* finish filters: pills */
main.aon-page--product .product-page__wrapper .aon-finish-search-label { font: 800 11px/1.4 var(--aon-head); letter-spacing: .12em; text-transform: uppercase; color: var(--pdp-ink); }
main.aon-page--product .product-page__wrapper .aon-finish-filter { min-height: 40px; padding: 8px 14px; border-radius: 999px; border-color: rgba(17,20,20,.22); background: transparent; color: var(--pdp-ink); font: 700 11px/1 var(--aon-head); letter-spacing: .06em; text-transform: uppercase; }
main.aon-page--product .product-page__wrapper .aon-finish-filter[aria-pressed="true"] { background: var(--pdp-ink); border-color: var(--pdp-ink); color: var(--pdp-mint); }
main.aon-page--product .product-page__wrapper .aon-finish-count { font-size: 12px; }

/* swatches: the material, not a box around it */
main.aon-page--product .product-page__wrapper .aon-swatch-grid { gap: 14px 10px; grid-template-columns: repeat(5, minmax(0, 1fr)); }
@media (max-width: 1199px) { main.aon-page--product .product-page__wrapper .aon-swatch-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 599px) { main.aon-page--product .product-page__wrapper .aon-swatch-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
main.aon-page--product .product-page__wrapper .aon-swatch-grid .wc-pao-addon-image-swatch,
main.aon-page--product .product-page__wrapper .aon-detail-options .wc-pao-addon-image-swatch { padding: 0; border: 0; border-radius: 0; background: transparent; }
main.aon-page--product .product-page__wrapper .aon-swatch-grid .wc-pao-addon-image-swatch img { border-radius: 10px; outline: 2px solid transparent; outline-offset: 2px; transition: outline-color var(--aon-fast) ease; }
main.aon-page--product .product-page__wrapper .aon-detail-options .wc-pao-addon-image-swatch { padding: 10px; border: 1px solid var(--pdp-line); border-radius: 12px; background: var(--pdp-card); }
@media (hover: hover) and (pointer: fine) { main.aon-page--product .product-page__wrapper .aon-swatch-grid .wc-pao-addon-image-swatch:hover img { outline-color: rgba(17,20,20,.3); } }
main.aon-page--product .product-page__wrapper .aon-swatch-selected,
main.aon-page--product .product-page__wrapper .wc-pao-addon-image-swatch.selected { border: 0 !important; padding: 0 !important; background: transparent; box-shadow: none; }
main.aon-page--product .product-page__wrapper .aon-swatch-grid .aon-swatch-selected img,
main.aon-page--product .product-page__wrapper .aon-swatch-grid .wc-pao-addon-image-swatch.selected img { outline-color: var(--pdp-ink); }
main.aon-page--product .product-page__wrapper .aon-detail-options .aon-swatch-selected,
main.aon-page--product .product-page__wrapper .aon-detail-options .wc-pao-addon-image-swatch.selected { padding: 10px !important; border: 1px solid var(--pdp-ink) !important; box-shadow: inset 0 0 0 1px var(--pdp-ink); background: var(--pdp-card); }
main.aon-page--product .product-page__wrapper .aon-swatch-selected::before { top: 6px; right: 6px; width: 22px; height: 22px; background: var(--pdp-ink); }
/* finishes v2: WooCommerce Product Add-Ons draws its own square outline round every swatch (grey, black when chosen)
   and a dark tooltip with the name. The name is already printed under each swatch, so: one ring on the photo only,
   no square frame, no tooltip, and the line under the grid reads as the confirmation it is. */
main.aon-page--product .product-page__wrapper .aon-swatch-grid .wc-pao-addon-image-swatch,
main.aon-page--product .product-page__wrapper .aon-swatch-grid .wc-pao-addon-image-swatch:hover,
main.aon-page--product .product-page__wrapper .aon-swatch-grid .wc-pao-addon-image-swatch:active,
main.aon-page--product .product-page__wrapper .aon-swatch-grid .wc-pao-addon-image-swatch:focus,
main.aon-page--product .product-page__wrapper .aon-swatch-grid .wc-pao-addon-image-swatch.selected,
main.aon-page--product .product-page__wrapper .aon-swatch-grid .wc-pao-addon-image-swatch:focus-visible { outline: 0 !important; box-shadow: none !important; }
main.aon-page--product .product-page__wrapper .aon-swatch-grid .wc-pao-addon-image-swatch:focus-visible img { outline: 2px solid var(--aon-mint-dark, #2f5f52); outline-offset: 3px; }
main.aon-page--product .product-page__wrapper .aon-swatch-grid .aon-swatch-name { text-align: center; padding-top: 8px; font-size: 13px; }
main.aon-page--product .product-page__wrapper .aon-swatch-grid .aon-swatch-selected .aon-swatch-name { font-weight: 700; }
main.aon-page--product .product-page__wrapper .wc-pao-addon-image-swatch-selected-swatch { margin-top: 10px; font-size: 14px; color: var(--pdp-muted, #5b625f); }
main.aon-page--product .product-page__wrapper .wc-pao-addon-image-swatch-selected-swatch:not(:empty)::before { content: "Selected: "; }
body.single-product #tiptip_holder { display: none !important; }
main.aon-page--product .product-page__wrapper .aon-swatch-selected::after { top: 13px; right: 12px; border-color: var(--pdp-mint); }
main.aon-page--product .product-page__wrapper .aon-swatch-name { padding: 8px 0 0; font-size: 12px; line-height: 1.3; color: var(--pdp-ink); }
main.aon-page--product .product-page__wrapper .aon-finish-reveal { min-height: 48px; border-radius: 999px; border: 1px solid rgba(17,20,20,.22); background: transparent; color: var(--pdp-ink); font: 800 11px/1 var(--aon-head); letter-spacing: .09em; text-transform: uppercase; }

/* step "Next": secondary pill */
main.aon-page--product .product-page__wrapper .aon-step-next {
	display: inline-flex; align-items: center; justify-content: center; width: auto; min-width: 160px; min-height: 48px; padding: 0 24px;
	border: 1.5px solid var(--pdp-ink); border-radius: 999px; background: transparent; color: var(--pdp-ink);
	font: 800 11px/1 var(--aon-head); letter-spacing: .09em; text-transform: uppercase;
	transition: background-color var(--aon-fast) ease, color var(--aon-fast) ease, transform var(--aon-fast) var(--aon-ease-out);
}
main.aon-page--product .product-page__wrapper .aon-step-next:active { transform: scale(.97); }
@media (hover: hover) and (pointer: fine) { main.aon-page--product .product-page__wrapper .aon-step-next:hover { background: var(--pdp-ink); color: var(--pdp-mint); } }
main.aon-page--product .product-page__wrapper .aon-step-message { color: #8a4b1c; font-size: 14px; }

/* build review + totals: a white sheet */
main.aon-page--product .product-page__wrapper .aon-build-review { margin: 24px 0 0; padding: 20px 22px; border: 0; border-radius: 16px; background: var(--pdp-card); }
main.aon-page--product .product-page__wrapper .aon-build-review > summary { font: 800 12px/1.4 var(--aon-head); letter-spacing: .1em; text-transform: uppercase; }
main.aon-page--product .product-page__wrapper .aon-build-list { font-size: 14px; }
main.aon-page--product .product-page__wrapper #product-addons-total .product-addon-totals { border: 0; margin: 16px 0 0; }
main.aon-page--product .product-page__wrapper #product-addons-total .product-addon-totals > ul { border-top: 1px solid var(--pdp-line); }
main.aon-page--product .product-page__wrapper #product-addons-total .wc-pao-col1,
main.aon-page--product .product-page__wrapper #product-addons-total .wc-pao-col2 { font-size: 14px; color: var(--pdp-ink); }
main.aon-page--product .product-page__wrapper #product-addons-total .wc-pao-subtotal-line { border-top: 2px solid var(--pdp-ink); padding-top: 14px; }
main.aon-page--product .product-page__wrapper #product-addons-total .wc-pao-subtotal-line .price { font: 300 26px/1.2 var(--aon-body) !important; color: var(--pdp-ink) !important; font-variant-numeric: tabular-nums; }
main.aon-page--product .product-page__wrapper .wclt_lead_time { color: #2f5f52 !important; font-size: 14px; }

/* add to cart: the homepage pill, black with the mint circle */
main.aon-page--product .product-page__wrapper .woocommerce-variation-add-to-cart,
main.aon-page--product .product-page__wrapper form.cart:not(.variations_form) { gap: 10px; margin-top: 22px; }
main.aon-page--product .product-page__wrapper form.cart .quantity input.qty { width: 84px; min-height: 60px; border-radius: 999px; border: 1px solid rgba(17,20,20,.28); background: var(--pdp-card); padding: 0 12px; }
main.aon-page--product .product-page__wrapper .single_add_to_cart_button.button,
main.aon-page--product .aon-buybar__btn {
	position: relative; min-height: 60px; padding: 0 30px; justify-content: center;
	border-radius: 999px !important; background: #111 !important; border: 0 !important; color: #fff !important;
	font: 800 12px/1.2 var(--aon-head); letter-spacing: .09em; text-transform: uppercase;
	transition: background-color 200ms ease, color 200ms ease, transform var(--aon-fast) var(--aon-ease-out);
}
@media (hover: hover) and (pointer: fine) {
	main.aon-page--product .product-page__wrapper .single_add_to_cart_button.button:not(.disabled):not(:disabled):hover,
	main.aon-page--product .aon-buybar__btn:hover { background: var(--pdp-mint) !important; color: #111 !important; }
}
main.aon-page--product .product-page__wrapper .single_add_to_cart_button.button:active,
main.aon-page--product .aon-buybar__btn:active { transform: scale(.97); }
main.aon-page--product .product-page__wrapper .single_add_to_cart_button.button.disabled,
main.aon-page--product .product-page__wrapper .single_add_to_cart_button.button:disabled { opacity: .4; }
main.aon-page--product .aon-btn-total { margin-left: .6em; font-weight: 600; letter-spacing: .02em; }

/* delivery facts: a white sheet with hairlines */
main.aon-page--product .aon-deliver { margin-top: 18px; padding: 6px 22px; border-radius: 16px; background: var(--pdp-card); gap: 0; color: #2c3230; font-size: 14px; }
main.aon-page--product .aon-deliver__row { padding: 14px 0; border-top: 1px solid var(--pdp-line); }
main.aon-page--product .aon-deliver__row:first-child { border-top: 0; }
main.aon-page--product .aon-deliver__row svg { color: #3f6f62; }
main.aon-page--product .aon-deliver__row strong { color: var(--pdp-ink); font-weight: 700; }
main.aon-page--product .aon-deliver a, main.aon-page--product .aon-size-help a { color: #2f5f52; font-weight: 600; text-underline-offset: .22em; }

/* mobile buy bar */
main.aon-page--product .aon-buybar { padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) 18px; background: rgba(245,243,238,.96); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); box-shadow: 0 -1px 0 var(--pdp-line); }
main.aon-page--product .aon-buybar__name { font: 700 10px/1.3 var(--aon-head); letter-spacing: .12em; text-transform: uppercase; color: var(--pdp-muted); }
main.aon-page--product .aon-buybar__total { color: var(--pdp-ink); }
main.aon-page--product .aon-buybar__btn { min-height: 52px; padding: 0 22px; }

/* ---------- the story: dark overview band, then an editorial spec sheet on paper ---------- */
main.aon-page--product .aon-pdp-story { margin-inline: calc(50% - 50vw); background: var(--pdp-paper); padding-bottom: clamp(56px, 7vw, 104px); }
main.aon-page--product { overflow-x: clip; }
main.aon-page--product .aon-pdp-story__inner { max-width: 1440px; margin: 0 auto; padding-inline: var(--pdp-gutter); }
/* products whose description is plain text (no .aon-product-details): one readable column */
main.aon-page--product .aon-pdp-story__inner > :not(.aon-product-details) { max-width: 72ch; color: #2c3230; font-size: 17px; line-height: 1.7; }
main.aon-page--product .aon-pdp-story__inner > :not(.aon-product-details):first-child { margin-top: 0; padding-top: clamp(48px, 6vw, 88px); border-top: 1px solid var(--pdp-line); }
main.aon-page--product .aon-pdp-story__inner > h2:not(.aon-product-details),
main.aon-page--product .aon-pdp-story__inner > h3 { font: 800 clamp(20px, 1.9vw, 26px)/1.1 var(--aon-head); letter-spacing: -.02em; text-transform: uppercase; color: var(--pdp-ink); }
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details {
	display: block !important; max-width: none !important; margin: 0 !important; padding: 0 !important;
	color: var(--pdp-ink); font-size: 16px !important; line-height: 1.7 !important;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section {
	display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); column-gap: clamp(24px, 5vw, 88px); align-items: start;
	padding: clamp(36px, 4vw, 56px) 0 !important; margin: 0 !important;
	border: 0 !important; border-top: 1px solid var(--pdp-line) !important; border-radius: 0 !important; background: transparent !important; color: var(--pdp-ink);
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section > * { grid-column: 2; min-width: 0; }
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section > h2 {
	grid-column: 1; grid-row: 1 / span 6; margin: 0 !important;
	font: 800 clamp(20px, 1.9vw, 26px)/1 var(--aon-head) !important; letter-spacing: -.02em !important; text-transform: uppercase !important; color: var(--pdp-ink) !important;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details p { max-width: 68ch; margin: 0 0 14px; font-size: 16px; line-height: 1.7; color: #2c3230; }
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details p:last-child { margin-bottom: 0; }
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details a { color: #2f5f52; font-weight: 600; text-underline-offset: .22em; }

/* first section = overview: the homepage's black band, mint words */
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child {
	margin-inline: calc(var(--pdp-gutter) * -1) !important; padding: clamp(64px, 7vw, 104px) var(--pdp-gutter) !important;
	border: 0 !important; border-radius: 0 !important; background: var(--pdp-night) !important; color: var(--pdp-mint);
	max-width: none;
}
@media (min-width: 1440px) {
	main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child {
		margin-inline: calc((100vw - 1440px) / -2 - var(--pdp-gutter)) !important;
		padding-inline: calc((100vw - 1440px) / 2 + var(--pdp-gutter)) !important;
	}
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child > p:first-child {
	grid-column: 1; grid-row: 1; margin: 0 0 16px !important;
	font: 700 11px/1.5 var(--aon-head) !important; letter-spacing: .18em !important; text-transform: uppercase; color: #9fc8bd !important;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child > h2 {
	grid-row: 2; font: 300 clamp(26px, 2.4vw, 31px)/1.1 var(--aon-head) !important; letter-spacing: .02em !important; color: var(--pdp-mint) !important;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child > p:not(:first-child) {
	grid-column: 2; grid-row: 1 / span 3; max-width: 62ch !important; margin: 0 !important;
	font: 300 clamp(17px, 1.35vw, 20px)/1.65 var(--aon-head) !important; letter-spacing: 0; color: var(--pdp-mint) !important;
	text-wrap: pretty;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child a {
	color: var(--pdp-mint) !important; font-weight: 500; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .25em;
}
@media (hover: hover) and (pointer: fine) {
	main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child a:hover { color: #fff !important; }
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child + section { border-top: 0 !important; }

/* key features: three numbered columns, hairline on top */
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section > div {
	display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 28px !important; counter-reset: aon-feature;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section > div > div {
	padding: 18px 0 0 !important; border: 0 !important; border-top: 2px solid var(--pdp-ink) !important; border-radius: 0 !important; background: transparent !important;
	counter-increment: aon-feature;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section > div > div::before {
	content: counter(aon-feature, decimal-leading-zero); display: block; margin: 0 0 22px;
	font: 800 11px/1 var(--aon-head); letter-spacing: .14em; color: #3f6f62;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details h3 {
	margin: 0 0 10px !important; font: 800 14px/1.25 var(--aon-head) !important; letter-spacing: .06em !important; text-transform: uppercase !important; color: var(--pdp-ink) !important;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section > div p { font-size: 15px; }

/* specifications: a spec sheet, not a grid.
   Baymard (spec sheet scannability): one column, horizontal guides so each label traces to its value,
   consistent units. impeccable (Read/Operate): precision and restraint.
   WPCode CSS (".single-product table.aon-specifications", 1px #2b2b2b on every cell and round the table)
   drew a boxed grid; these rules are more specific and win. */
main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications {
	width: 100% !important; margin: 0 !important; border: 0 !important; border-top: 2px solid var(--pdp-ink) !important;
	border-collapse: collapse !important; table-layout: fixed; font-variant-numeric: tabular-nums;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications tr { background: transparent !important; transition: background-color var(--aon-fast) ease; }
main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications tr:nth-child(even) { background: rgba(17, 20, 20, .035) !important; }
@media (hover: hover) and (pointer: fine) { main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications tr:hover { background: rgba(130, 201, 183, .18) !important; } }
main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications th,
main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications td {
	padding: 16px 16px !important; border: 0 !important; border-bottom: 1px solid var(--pdp-line) !important;
	vertical-align: top !important; text-align: left !important; line-height: 24px !important; color: var(--pdp-ink) !important;
}
/* label and value share one line height, so they sit on the same baseline */
main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications th {
	width: 32% !important; padding-left: 12px !important; padding-right: 24px !important;
	font: 600 14px/24px var(--aon-body) !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--pdp-muted) !important;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications td { padding-right: 12px !important; font: 400 16px/24px var(--aon-body) !important; }
/* sizes as a row of chips, one unit format: "50 × 30 cm" (aon.js) */
.aon-spec-sizes { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 8px; }
.aon-spec-sizes li { display: inline-flex; align-items: center; min-height: 32px; padding: 0 12px; border: 1px solid rgba(17, 20, 20, .25); border-radius: 999px; background: #fff; font: 600 14px/1 var(--aon-body); white-space: nowrap; }
@media (max-width: 599px) {
	/* phone: label above value, one column */
	main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications,
	main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications tbody,
	main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications tr,
	main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications th,
	main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications td { display: block !important; width: 100% !important; }
	main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications tr { padding: 12px !important; border-bottom: 1px solid var(--pdp-line) !important; }
	main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications th,
	main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications td { padding: 0 !important; border: 0 !important; }
	main.aon-page--product .product-page__wrapper .aon-pdp-story table.aon-specifications th { margin-bottom: 4px; font-size: 13px !important; line-height: 20px !important; }
}

/* "Discuss a custom build" and the like: underlined link reads as the homepage's "Learn More →" */
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-details-custom a,
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details a[href*="custom-enquiry"] {
	display: inline-block; min-height: 0; padding: 0 0 5px !important; border-radius: 0; background: none !important; color: var(--pdp-ink) !important;
	border-bottom: 1.5px solid var(--pdp-ink); text-decoration: none !important; font: 800 12px/1.3 var(--aon-head) !important; letter-spacing: .09em; text-transform: uppercase;
}
main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-details-included { background: transparent !important; }

@media (max-width: 899px) {
	main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section { grid-template-columns: minmax(0, 1fr); row-gap: 18px; }
	main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section > *,
	main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section > h2,
	main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child > p:first-child,
	main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child > p:not(:first-child) { grid-column: 1; grid-row: auto; }
	main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child > p:first-child { margin: 0 !important; }
	main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section:first-child > p:not(:first-child) { max-width: none; }
	main.aon-page--product .product-page__wrapper .aon-pdp-story .aon-product-details > section > div { grid-template-columns: minmax(0, 1fr); gap: 28px !important; }
}

/* reviews + up-sells */
main.aon-page--product .aon-pdp-reviews { padding: clamp(48px, 6vw, 88px) 0; border-top: 1px solid var(--pdp-line); }
main.aon-page--product .product-page__bottom-column { margin-top: 0; }
main.aon-page--product .up-sells { margin: 0; padding: clamp(64px, 8vw, 112px) 0 clamp(72px, 9vw, 128px); border-top: 1px solid var(--pdp-line); }
main.aon-page--product .up-sells > h2 { margin: 0 0 clamp(28px, 3vw, 44px); text-align: left; font: 900 clamp(28px, 2.8vw, 40px)/.95 var(--aon-head); letter-spacing: -.04em; text-transform: uppercase; color: var(--pdp-ink); }
main.aon-page--product .up-sells ul.products li.product { background: var(--pdp-card); border-radius: 16px; overflow: hidden; }

/* ==========================================================================
   CATEGORY PAGES v2 — same language as the product page.
   Hero = the homepage's night band, cards = white sheets with the series eyebrow,
   the SEO block = the editorial sheet with a three-column FAQ.
   ========================================================================== */
main.aon-page--shop {
	--pdp-ink: #111414; --pdp-muted: #5b625f; --pdp-line: rgba(17, 20, 20, .14);
	--pdp-paper: #f5f3ee; --pdp-mint: #82c9b7; --pdp-night: #010303; --pdp-gutter: clamp(16px, 4vw, 56px);
	background: var(--pdp-paper); color: var(--pdp-ink); overflow-x: clip; padding-bottom: clamp(64px, 8vw, 112px);
}
main.aon-page--shop > .aon-container { max-width: 1440px; padding-inline: var(--pdp-gutter); }
main.aon-page--shop .aon-breadcrumbs { min-height: 64px; }
main.aon-page--shop .aon-breadcrumbs ol { font: 700 11px/1.4 var(--aon-head); letter-spacing: .14em; text-transform: uppercase; }
main.aon-page--shop .aon-breadcrumbs li, main.aon-page--shop .aon-breadcrumbs a { color: var(--pdp-muted); }
main.aon-page--shop .aon-breadcrumbs li:last-child { color: var(--pdp-ink); }

/* category title + description (categories without their own hero) */
main.aon-page--shop .woocommerce-products-header { margin: 8px 0 clamp(32px, 4vw, 56px); }
main.aon-page--shop .woocommerce-products-header:empty, main.aon-page--shop .woocommerce-products-header:not(:has(*)) { display: none; }
main.aon-page--shop .woocommerce-products-header__title {
	margin: 0 0 14px; font: 900 clamp(32px, 3.6vw, 52px)/.95 var(--aon-head); letter-spacing: -.04em; text-transform: uppercase; color: var(--pdp-ink);
}
main.aon-page--shop .term-description { max-width: 62ch; color: #2c3230; font-size: 17px; line-height: 1.65; }

/* hero (Pedalboards): night band, mint words.
   The live snippets style these with body.tax-product_cat.term-… selectors and !important,
   so these rules carry #main to outrank them inside the theme only. */
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero {
	min-height: 0 !important; margin: 0 calc(50% - 50vw) clamp(48px, 6vw, 88px) !important; padding: clamp(64px, 8vw, 112px) 0 !important;
	background: var(--pdp-night) !important; background-image: none !important; border: 0 !important; border-radius: 0 !important; color: #f4f2ec !important; box-shadow: none !important;
}
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero::before,
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero::after { content: none !important; display: none !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero__inner { max-width: 1440px !important; margin: 0 auto !important; padding: 0 var(--pdp-gutter) !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero__eyebrow { margin: 0 0 18px !important; font: 700 11px/1.4 var(--aon-head) !important; letter-spacing: .18em !important; text-transform: uppercase !important; color: #9fc8bd !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero h1 {
	max-width: 16ch !important; margin: 0 0 24px !important; font: 900 clamp(40px, 4.6vw, 68px)/.92 var(--aon-head) !important;
	letter-spacing: -.048em !important; text-transform: uppercase !important; color: var(--pdp-mint) !important; text-shadow: none !important;
}
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero p { max-width: 56ch !important; margin: 0 0 32px !important; font: 400 18px/1.6 var(--aon-body) !important; color: #e6ebe8 !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero__actions { display: flex !important; flex-wrap: wrap; gap: 12px !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero__cta:hover { transform: none !important; box-shadow: none !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero__cta {
	display: inline-flex !important; align-items: center; justify-content: center; min-height: 56px !important; padding: 0 30px !important;
	border-radius: 999px !important; border: 1.5px solid var(--pdp-mint) !important; background: var(--pdp-mint) !important; color: #111 !important;
	font: 800 12px/1.2 var(--aon-head) !important; letter-spacing: .09em !important; text-transform: uppercase !important; text-decoration: none !important; box-shadow: none !important;
	transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease, transform var(--aon-fast) var(--aon-ease-out) !important;
}
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero__cta--secondary { background: transparent !important; border-color: rgba(244, 242, 236, .5) !important; color: #f4f2ec !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero__cta:active { transform: scale(.97) !important; }
@media (hover: hover) and (pointer: fine) {
	body.tax-product_cat #main.aon-page--shop .aon-pedalboards-hero__cta:hover { background: #fff !important; border-color: #fff !important; color: #111 !important; }
}

/* category cards: white sheet, photo, series eyebrow, heavy title */
body.tax-product_cat #main.aon-page--shop ul.products {
	display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: clamp(16px, 2vw, 28px) !important;
	width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;
}
@media (min-width: 1024px) {
	body.tax-product_cat #main.aon-page--shop ul.products.columns-4,
	body.tax-product_cat #main.aon-page--shop ul.products:has(> li.product-category) { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 599px) { body.tax-product_cat #main.aon-page--shop ul.products:has(> li.product-category) { grid-template-columns: minmax(0, 1fr) !important; } }
body.tax-product_cat #main.aon-page--shop ul.products li.product-category {
	padding: 0 !important; border: 0 !important; border-radius: 16px !important; overflow: hidden !important; background: #fff !important;
	box-shadow: none !important; transform: none !important; text-align: left; transition: none !important;
}
body.tax-product_cat #main.aon-page--shop ul.products li.product-category:hover { transform: none !important; box-shadow: none !important; border: 0 !important; }
body.tax-product_cat #main.aon-page--shop ul.products li.product-category > a { display: flex !important; flex-direction: column; height: 100%; color: var(--pdp-ink) !important; text-decoration: none !important; }
body.tax-product_cat #main.aon-page--shop ul.products li.product-category img {
	display: block !important; width: 100% !important; height: auto !important; aspect-ratio: 4 / 3; object-fit: cover !important; margin: 0 !important;
	background: #ece9e2; transition: transform 500ms var(--aon-ease-out) !important; transform: none !important;
}
@media (hover: hover) and (pointer: fine) { body.tax-product_cat #main.aon-page--shop ul.products li.product-category > a:hover img { transform: scale(1.03) !important; } }
body.tax-product_cat #main.aon-page--shop ul.products li.product-category .woocommerce-loop-category__title {
	order: 3; display: block !important; min-height: 0 !important; margin: 0 !important; padding: 8px 24px 0 !important;
	font: 900 clamp(22px, 1.9vw, 28px)/.98 var(--aon-head) !important;
	letter-spacing: -.035em !important; text-transform: uppercase !important; color: var(--pdp-ink) !important; background: none !important;
}
body.tax-product_cat #main.aon-page--shop ul.products li.product-category .count { display: none !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-card__meta { display: contents !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-card__tag {
	order: 2; display: block !important; margin: 0 !important; padding: 22px 24px 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important;
	font: 700 11px/1.3 var(--aon-head) !important; letter-spacing: .18em !important; text-transform: uppercase !important; color: #3f6f62 !important;
}
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-card__desc { order: 4; margin: 0 !important; padding: 12px 24px 26px !important; font: 400 15px/1.6 var(--aon-body) !important; color: #2c3230 !important; }

/* SEO block: editorial sheet */
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo::before { content: none !important; display: none !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo {
	width: auto !important;
	display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); column-gap: clamp(24px, 5vw, 88px);
	margin: clamp(64px, 8vw, 112px) 0 0 !important; padding: clamp(36px, 4vw, 56px) 0 0 !important;
	border: 0 !important; border-top: 1px solid var(--pdp-line) !important; border-radius: 0 !important; background: transparent !important; color: var(--pdp-ink) !important; max-width: none !important;
}
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo > * { grid-column: 2; min-width: 0; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo > h2 {
	grid-column: 1; grid-row: 1 / span 2; margin: 0 !important; font: 800 clamp(20px, 1.9vw, 26px)/1.05 var(--aon-head) !important;
	letter-spacing: -.02em !important; text-transform: uppercase !important; color: var(--pdp-ink) !important;
}
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo > p { max-width: 68ch; margin: 0 0 14px !important; font: 400 16px/1.7 var(--aon-body) !important; color: #2c3230 !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo a { color: #2f5f52 !important; font-weight: 600; text-underline-offset: .22em; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo__faq { grid-column: 1 / -1; display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px !important; margin: clamp(40px, 5vw, 64px) 0 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo__qa { padding: 18px 0 0 !important; border: 0 !important; border-top: 2px solid var(--pdp-ink) !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo__qa h3 { margin: 0 0 10px !important; font: 800 14px/1.25 var(--aon-head) !important; letter-spacing: .06em !important; text-transform: uppercase !important; color: var(--pdp-ink) !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo__qa p { margin: 0 !important; font: 400 15px/1.65 var(--aon-body) !important; color: #2c3230 !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo__closing {
	grid-column: 1 / -1; display: flex !important; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px;
	margin: clamp(40px, 5vw, 64px) 0 0 !important; padding: 28px 0 0 !important; border: 0 !important; border-top: 1px solid var(--pdp-line) !important; background: none !important; border-radius: 0 !important;
}
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo__closing > span { font: 700 11px/1.4 var(--aon-head) !important; letter-spacing: .18em !important; color: var(--pdp-muted) !important; }
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo__closing a {
	display: inline-flex !important; align-items: center; min-height: 56px; padding: 0 30px !important; border-radius: 999px !important; background: #111 !important; color: #fff !important;
	font: 800 12px/1.2 var(--aon-head) !important; letter-spacing: .09em !important; text-transform: uppercase !important; text-decoration: none !important;
	transition: background-color 200ms ease, color 200ms ease;
}
body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo__closing a [aria-hidden="true"] { display: none !important; }
@media (hover: hover) and (pointer: fine) { body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo__closing a:hover { background: var(--pdp-mint) !important; color: #111 !important; } }
@media (max-width: 899px) {
	body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo { grid-template-columns: minmax(0, 1fr); row-gap: 18px; }
	body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo > *, body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo > h2 { grid-column: 1; grid-row: auto; }
	body.tax-product_cat #main.aon-page--shop .aon-pedalboards-seo__faq { grid-template-columns: minmax(0, 1fr) !important; }
}

/* product cards inside series categories: same sheet */
main.aon-page--shop ul.products li.product:not(.product-category) { border-radius: 16px; overflow: hidden; background: #fff; padding-bottom: 20px; }
main.aon-page--shop ul.products li.product:not(.product-category) .woocommerce-loop-product__title { padding: 18px 20px 4px; font: 900 20px/1 var(--aon-head); letter-spacing: -.03em; text-transform: uppercase; color: var(--pdp-ink); }
main.aon-page--shop ul.products li.product:not(.product-category) .price { padding: 6px 20px 0; font: 400 15px/1.4 var(--aon-body); color: #2c3230; }
/* parts catalogue (WPCode #13027 cards): Add to cart = the site's black pill, mint on hover.
   It was styled by the old global snippet #12289 (trashed 5 Nov). */
.aonp2-card .aonp2-action { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; }
.aonp2-card .aonp2-action a.button {
	display: inline-flex; align-items: center; justify-content: center;
	min-height: 44px; padding: 0 22px !important; margin: 0;
	border: 0 !important; border-radius: 999px !important; background: #111 !important; color: #fff !important;
	font: 800 11px/1.2 var(--aon-head) !important; letter-spacing: .09em; text-transform: uppercase; text-decoration: none;
	box-shadow: none !important;
	transition: background-color 200ms ease, color 200ms ease, opacity 200ms ease, transform var(--aon-fast) var(--aon-ease-out);
}
.aonp2-card .aonp2-action a.button::after,
.aonp2-card .aonp2-action a.button::before { display: none !important; content: none !important; }
.aonp2-card .aonp2-action a.button:active { transform: scale(.97); }
.aonp2-card .aonp2-action a.button.loading { opacity: .55; pointer-events: none; }
.aonp2-card .aonp2-action a.button:focus-visible { outline: 3px solid var(--aon-ink); outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) {
	.aonp2-card .aonp2-action a.button:hover { background: var(--pdp-mint, #82c9b7) !important; color: #111 !important; }
}
/* out of stock: WooCommerce prints "Read more" (no add_to_cart_button). Same pill, outlined, so it does not read as a purchase. */
.aonp2-card .aonp2-action a.button:not(.add_to_cart_button) {
	background: transparent !important; color: #111 !important;
	box-shadow: inset 0 0 0 1.5px #111 !important;
}
@media (hover: hover) and (pointer: fine) {
	.aonp2-card .aonp2-action a.button:not(.add_to_cart_button):hover { background: #111 !important; color: #fff !important; }
}
/* after adding: "View cart" as a quiet underlined link beside the pill */
.aonp2-card .aonp2-action a.added_to_cart {
	display: inline-flex; align-items: center; min-height: 44px; padding: 0 !important;
	background: none !important; border: 0 !important; color: var(--aon-ink, #111) !important;
	font: 700 13px/1.2 var(--aon-body) !important; letter-spacing: 0; text-transform: none;
	text-decoration: underline; text-underline-offset: 3px;
}
main.aon-page--shop .aon-card__tag { left: 12px; bottom: 12px; padding: 5px 10px; border-radius: 999px; background: rgba(1, 3, 3, .82); font: 700 10px/1.2 var(--aon-head); letter-spacing: .12em; text-transform: uppercase; color: var(--pdp-mint); }

/* ==========================================================================
   CONTACT v2 — night band with the promise, then a two-column sheet:
   direct channels left, "what is it about?" routes right. Hairlines, no cards.
   ========================================================================== */
body main.aon-page--contact {
	--pdp-ink: #111414; --pdp-muted: #5b625f; --pdp-line: rgba(17, 20, 20, .14);
	--pdp-paper: #f5f3ee; --pdp-mint: #82c9b7; --pdp-night: #010303; --pdp-gutter: clamp(16px, 4vw, 56px);
	background: var(--pdp-paper); color: var(--pdp-ink); overflow-x: clip; padding-bottom: clamp(72px, 9vw, 128px);
}
body main.aon-page--contact > .aon-container { max-width: 1440px; padding-inline: var(--pdp-gutter); }
body main.aon-page--contact .aon-breadcrumbs { min-height: 64px; }
body main.aon-page--contact .aon-breadcrumbs ol { font: 700 11px/1.4 var(--aon-head); letter-spacing: .14em; text-transform: uppercase; }
body main.aon-page--contact .aon-breadcrumbs li, body main.aon-page--contact .aon-breadcrumbs a { color: var(--pdp-muted); }
body main.aon-page--contact .aon-breadcrumbs li:last-child { color: var(--pdp-ink); }

body main.aon-page--contact .aon-contact-hero {
	display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: clamp(24px, 5vw, 88px); align-items: end;
	box-sizing: border-box; width: 100vw; max-width: none; margin: 0 0 clamp(48px, 6vw, 88px) calc(50% - 50vw);
	padding: clamp(64px, 8vw, 112px) max(var(--pdp-gutter), calc((100vw - 1440px) / 2 + var(--pdp-gutter)));
	background: var(--pdp-night); color: #e6ebe8; border: 0; text-align: left;
}
body main.aon-page--contact .aon-contact-hero__title {
	grid-column: 1; grid-row: 1 / span 2; margin: 0; max-width: 12ch;
	font: 900 clamp(40px, 4.6vw, 68px)/.92 var(--aon-head); letter-spacing: -.048em; text-transform: uppercase; color: var(--pdp-mint);
}
body main.aon-page--contact .aon-contact-hero__lead { grid-column: 2; margin: 0 0 18px; max-width: 46ch; font: 400 17px/1.65 var(--aon-body); color: #e6ebe8; }
body main.aon-page--contact .aon-contact-hero__promise {
	grid-column: 2; margin: 0; padding: 0; background: none; border: 0;
	font: 700 11px/1.5 var(--aon-head); letter-spacing: .18em; text-transform: uppercase; color: #9fc8bd;
}

body main.aon-page--contact .aon-contact-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(40px, 6vw, 104px); align-items: start; }
body main.aon-page--contact .aon-contact-direct,
body main.aon-page--contact .aon-contact-routes { margin: 0; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; }
body main.aon-page--contact .aon-contact-h {
	margin: 0 0 8px; padding-bottom: 18px; border-bottom: 2px solid var(--pdp-ink);
	font: 800 clamp(20px, 1.9vw, 26px)/1 var(--aon-head); letter-spacing: -.02em; text-transform: uppercase; color: var(--pdp-ink);
}

/* direct channels: label left, value right, one hairline per row */
body main.aon-page--contact .aon-contact-list { margin: 0; }
body main.aon-page--contact .aon-contact-list__row {
	display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 16px; align-items: baseline;
	padding: 20px 0; border: 0; border-bottom: 1px solid var(--pdp-line); background: none;
}
body main.aon-page--contact .aon-contact-list dt { margin: 0; font: 700 11px/1.5 var(--aon-head); letter-spacing: .14em; text-transform: uppercase; color: var(--pdp-muted); }
body main.aon-page--contact .aon-contact-list dd { margin: 0; font: 600 18px/1.45 var(--aon-head); letter-spacing: -.01em; color: var(--pdp-ink); }
body main.aon-page--contact .aon-contact-list dd a { color: var(--pdp-ink); text-decoration: none; background-image: linear-gradient(currentColor, currentColor); background-size: 0 1.5px; background-position: 0 100%; background-repeat: no-repeat; transition: background-size 240ms var(--aon-ease-out); }
@media (hover: hover) and (pointer: fine) { body main.aon-page--contact .aon-contact-list dd a:hover { background-size: 100% 1.5px; } }
body main.aon-page--contact .aon-contact-list address { font-style: normal; }
body main.aon-page--contact .aon-contact-list__more { display: inline-block; margin-top: 8px; font: 700 11px/1.5 var(--aon-head) !important; letter-spacing: .12em; text-transform: uppercase; color: #2f5f52 !important; background-size: 100% 1px !important; }
body main.aon-page--contact .aon-contact-list__links { display: flex; flex-wrap: wrap; gap: 6px 22px; }

/* routes: each one a full-width row, title + one line, hairline under */
body main.aon-page--contact .aon-route-list { list-style: none; margin: 0; padding: 0; display: block; }
body main.aon-page--contact .aon-route-list li { margin: 0; border-bottom: 1px solid var(--pdp-line); }
body main.aon-page--contact .aon-route {
	display: grid; gap: 6px; padding: 20px 0; margin: 0; border: 0; border-radius: 0; background: none; box-shadow: none;
	color: var(--pdp-ink); text-decoration: none; transition: padding-left 240ms var(--aon-ease-out);
}
body main.aon-page--contact .aon-route__title { font: 800 15px/1.25 var(--aon-head); letter-spacing: .04em; text-transform: uppercase; color: var(--pdp-ink); }
body main.aon-page--contact .aon-route__text { font: 400 15px/1.55 var(--aon-body); color: #2c3230; }
@media (hover: hover) and (pointer: fine) {
	body main.aon-page--contact .aon-route:hover { padding-left: 12px; box-shadow: inset 2px 0 0 var(--pdp-mint); }
}
body main.aon-page--contact .aon-route::after { content: none; }
body main.aon-page--contact .aon-route:active { transform: none; }
body main.aon-page--contact .aon-contact-list__row:last-child { border-bottom: 1px solid var(--pdp-line); }
body main.aon-page--contact .aon-contact-list dd a { border-bottom: 0; }
body main.aon-page--contact .aon-route:focus-visible { outline: 3px solid var(--pdp-mint); outline-offset: 2px; }

@media (max-width: 899px) {
	body main.aon-page--contact .aon-contact-hero { grid-template-columns: minmax(0, 1fr); row-gap: 20px; }
	body main.aon-page--contact .aon-contact-hero__title, body main.aon-page--contact .aon-contact-hero__lead, body main.aon-page--contact .aon-contact-hero__promise { grid-column: 1; grid-row: auto; }
	body main.aon-page--contact .aon-contact-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 480px) {
	body main.aon-page--contact .aon-contact-list__row { grid-template-columns: minmax(0, 1fr); gap: 6px; }
}

/* ==========================================================================
   INNER PAGES — shared blocks for the pages rebuilt from Elementor
   (Lead Time, Custom Enquiry, Info, policies …). Same tokens as product/category/contact.
   ========================================================================== */
main.aon-page--inner {
	--pdp-ink: #111414; --pdp-muted: #5b625f; --pdp-line: rgba(17, 20, 20, .14);
	--pdp-paper: #f5f3ee; --pdp-mint: #82c9b7; --pdp-night: #010303; --pdp-gutter: clamp(16px, 4vw, 56px);
	background: var(--pdp-paper); color: var(--pdp-ink); overflow-x: clip; padding-bottom: clamp(56px, 7vw, 96px);
}
main.aon-page--inner > .aon-container { max-width: 1440px; padding-inline: var(--pdp-gutter); }
main.aon-page--inner .aon-breadcrumbs { min-height: 64px; }
main.aon-page--inner .aon-breadcrumbs ol { font: 700 11px/1.4 var(--aon-head); letter-spacing: .14em; text-transform: uppercase; }
main.aon-page--inner .aon-breadcrumbs li, main.aon-page--inner .aon-breadcrumbs a { color: var(--pdp-muted); }
main.aon-page--inner .aon-breadcrumbs li:last-child { color: var(--pdp-ink); }

/* pages that open with a night band: no breadcrumb strip, the band sits right under the header */
main.aon-page--inner .aon-breadcrumbs,
main.aon-page--contact .aon-breadcrumbs,
main.aon-page--shop:has(.aon-pedalboards-hero) .aon-breadcrumbs { display: none; }
.aon-eyebrow { margin: 0 0 16px; font: 700 11px/1.5 var(--aon-head); letter-spacing: .18em; text-transform: uppercase; color: #3f6f62; }

/* night band, full bleed */
main.aon-page--inner .aon-band {
	box-sizing: border-box; width: 100vw; margin: 0 0 clamp(48px, 6vw, 88px) calc(50% - 50vw);
	padding: clamp(64px, 8vw, 112px) max(var(--pdp-gutter), calc((100vw - 1440px) / 2 + var(--pdp-gutter)));
	background: var(--pdp-night); color: #e6ebe8;
}
main.aon-page--inner .aon-band .aon-eyebrow { color: #9fc8bd; }
main.aon-page--inner .aon-band--split { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(32px, 5vw, 88px); align-items: end; }
.aon-band__title { margin: 0 0 24px; max-width: 16ch; font: 900 clamp(38px, 4.4vw, 64px)/.94 var(--aon-head); letter-spacing: -.045em; text-transform: uppercase; color: var(--aon-mint); text-wrap: balance; }
.aon-band__title--md { font-size: clamp(30px, 3.2vw, 46px); max-width: 20ch; }
.aon-band__lead { margin: 0; max-width: 56ch; font: 400 17px/1.65 var(--aon-body); color: #e6ebe8; }
main.aon-page--inner .aon-band--cta { margin-top: clamp(16px, 3vw, 40px); }
main.aon-page--inner .aon-band--cta .aon-band__lead { margin-bottom: 32px; }

/* status block inside a band (Lead Time) */
.aon-status { padding-top: 22px; border-top: 1px solid rgba(130, 201, 183, .35); }
.aon-status__value { margin: 0 0 14px; font: 900 clamp(34px, 3.4vw, 52px)/.95 var(--aon-head); letter-spacing: -.04em; text-transform: uppercase; color: #fff; }
.aon-status__note { margin: 0; font-size: 15px; line-height: 1.6; color: #c9d2cd; }
.aon-status__note strong { color: #fff; font-weight: 600; }

/* editorial sheet row: title left, body right */
main.aon-page--inner .aon-sheet {
	display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); column-gap: clamp(24px, 5vw, 88px); align-items: start;
	padding: clamp(36px, 4vw, 56px) 0; border-top: 1px solid var(--pdp-line);
}
main.aon-page--inner .aon-band + .aon-sheet { border-top: 0; padding-top: 0; }
/* the last sheet of a page ends on the page's own bottom space, not on its padding plus the page's (no empty strip before the footer) */
main.aon-page--inner > .aon-container > .aon-sheet:last-child { padding-bottom: 0; }
/* anchored sections (#enquiry after sending, document sections) land below the sticky header, not under it */
main.aon-page--inner [id] { scroll-margin-top: calc(var(--aon-header-h) + 24px); }
.aon-sheet__title { margin: 0; font: 800 clamp(20px, 1.9vw, 26px)/1.05 var(--aon-head); letter-spacing: -.02em; text-transform: uppercase; color: var(--pdp-ink, #111414); text-wrap: balance; }
.aon-sheet__body { min-width: 0; }
.aon-sheet__body > p { max-width: 68ch; margin: 0 0 14px; font-size: 16px; line-height: 1.7; color: #2c3230; }
.aon-sheet__body > p:last-child { margin-bottom: 0; }
.aon-sheet__body a { color: #2f5f52; font-weight: 600; text-underline-offset: .22em; }

/* numbered columns (01 02 03) */
.aon-cols { list-style: none; margin: 28px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; counter-reset: aon-col; }
.aon-cols > li { padding-top: 18px; border-top: 2px solid #111414; counter-increment: aon-col; }
.aon-cols > li::before { content: counter(aon-col, decimal-leading-zero); display: block; margin-bottom: 22px; font: 800 11px/1 var(--aon-head); letter-spacing: .14em; color: #3f6f62; }
.aon-cols h3 { margin: 0 0 10px; font: 800 14px/1.25 var(--aon-head); letter-spacing: .06em; text-transform: uppercase; color: #111414; }
.aon-cols p { margin: 0; font-size: 15px; line-height: 1.65; color: #2c3230; }

/* steps on a line: dot, name, text */
/* numbered timeline on inner pages (Lead time, Rig service). Scoped: the checkout's step line (nav.aon-steps) shares the class name. */
ol.aon-steps, ul.aon-steps { list-style: none; margin: 28px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; position: relative; }
ol.aon-steps::before, ul.aon-steps::before { content: ""; position: absolute; left: 6px; right: 0; top: 6px; height: 1px; background: rgba(17, 20, 20, .25); }
.aon-steps > li { position: relative; display: grid; gap: 8px; padding-top: 30px; }
.aon-steps > li::before { content: ""; position: absolute; left: 0; top: 0; width: 13px; height: 13px; border-radius: 50%; background: #111414; }
.aon-steps > li:last-child::before { background: var(--aon-mint); box-shadow: inset 0 0 0 2px #111414; }
.aon-steps__name { font: 800 14px/1.25 var(--aon-head); letter-spacing: .06em; text-transform: uppercase; color: #111414; }
.aon-steps__text { font-size: 15px; line-height: 1.6; color: #2c3230; }

/* label/text rows */
.aon-rows { margin: 0 0 22px; border-top: 2px solid #111414; }
.aon-rows > div { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 20px; padding: 18px 0; border-bottom: 1px solid rgba(17, 20, 20, .14); }
.aon-rows dt { margin: 0; font: 800 13px/1.35 var(--aon-head); letter-spacing: .05em; text-transform: uppercase; color: #111414; }
.aon-rows dd { margin: 0; font-size: 15px; line-height: 1.6; color: #2c3230; }

/* pills */
.aon-pill {
	display: inline-flex; align-items: center; justify-content: center; min-height: 56px; padding: 0 30px; border-radius: 999px;
	background: #111; color: #fff; border: 1.5px solid #111; text-decoration: none;
	font: 800 12px/1.2 var(--aon-head); letter-spacing: .09em; text-transform: uppercase;
	transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease, transform var(--aon-fast) var(--aon-ease-out);
}
.aon-pill:active { transform: scale(.97); }
.aon-pill--mint { background: var(--aon-mint); border-color: var(--aon-mint); color: #111; }
@media (hover: hover) and (pointer: fine) {
	.aon-pill:hover { background: var(--aon-mint); border-color: var(--aon-mint); color: #111; }
	.aon-pill--mint:hover { background: #fff; border-color: #fff; color: #111; }
}
.aon-pill:focus-visible { outline: 3px solid var(--aon-mint); outline-offset: 3px; }

.aon-finenote { max-width: 80ch; margin: 0; font-size: 13px; line-height: 1.6; color: var(--pdp-muted, #5b625f); }
.aon-finenote strong { color: #111414; }

/* document pages: intro, index, prose inside sheet rows */
.aon-status__note--quiet { margin-top: 12px; font-size: 13px; color: #9aa59f; }
.aon-status__note a { color: var(--aon-mint); font-weight: 600; text-underline-offset: .22em; }
.aon-doc-intro { max-width: 72ch; margin: 0 0 clamp(32px, 4vw, 48px); font-size: 17px; line-height: 1.7; color: #2c3230; }
.aon-doc-intro p { margin: 0 0 14px; }
.aon-facts { list-style: none; margin: 0 0 clamp(40px, 5vw, 64px); padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 28px; }
.aon-facts li { display: grid; gap: 8px; align-content: start; padding-top: 18px; border-top: 2px solid #111414; }
.aon-facts__label { font: 700 11px/1.4 var(--aon-head); letter-spacing: .18em; text-transform: uppercase; color: #3f6f62; }
.aon-facts__title { font: 900 clamp(20px, 1.8vw, 26px)/1 var(--aon-head); letter-spacing: -.03em; text-transform: uppercase; color: #111414; }
.aon-facts__text { font-size: 15px; line-height: 1.6; color: #2c3230; }
.aon-doc-index { margin: 0 0 clamp(16px, 2vw, 24px); padding: 0 0 clamp(28px, 3vw, 40px); }
.aon-doc-index ol { list-style: none; margin: 0; padding: 0; columns: 3 220px; column-gap: 32px; counter-reset: aon-idx; }
.aon-doc-index li { break-inside: avoid; counter-increment: aon-idx; border-top: 1px solid rgba(17, 20, 20, .14); }
.aon-doc-index a { display: flex; gap: 12px; padding: 10px 0; min-height: 44px; box-sizing: border-box; color: #111414; text-decoration: none; font: 600 15px/1.35 var(--aon-head); }
.aon-doc-index a::before { content: counter(aon-idx, decimal-leading-zero); flex: none; padding-top: 2px; font: 800 11px/1.4 var(--aon-head); letter-spacing: .1em; color: #3f6f62; }
@media (hover: hover) and (pointer: fine) { .aon-doc-index a:hover { color: #2f5f52; } }
.aon-doc-section { scroll-margin-top: calc(var(--aon-header-h) + 24px); }
.aon-doc-body { max-width: 72ch; font-size: 16px; line-height: 1.7; color: #2c3230; }
.aon-doc-body > :first-child { margin-top: 0; }
.aon-doc-body p { margin: 0 0 14px; }
.aon-doc-body h3 { margin: 28px 0 10px; font: 800 14px/1.3 var(--aon-head); letter-spacing: .06em; text-transform: uppercase; color: #111414; }
.aon-doc-body ul, .aon-doc-body ol { margin: 0 0 16px; padding-left: 0; list-style: none; }
.aon-doc-body ul > li { position: relative; padding: 6px 0 6px 20px; }
.aon-doc-body ul > li::before { content: ""; position: absolute; left: 0; top: 17px; width: 6px; height: 6px; border-radius: 50%; background: var(--aon-mint); }
.aon-doc-body ol { counter-reset: aon-ol; }
.aon-doc-body ol > li { position: relative; padding: 6px 0 6px 32px; counter-increment: aon-ol; }
.aon-doc-body ol > li::before { content: counter(aon-ol, decimal-leading-zero); position: absolute; left: 0; top: 9px; font: 800 11px/1.4 var(--aon-head); letter-spacing: .1em; color: #3f6f62; }
.aon-doc-body strong { color: #111414; font-weight: 700; }
.aon-doc-body a { color: #2f5f52; font-weight: 600; text-underline-offset: .22em; }
.aon-doc-body table { width: 100%; margin: 0 0 18px; border-collapse: collapse; border-top: 2px solid #111414; font-size: 15px; }
.aon-doc-body th, .aon-doc-body td { padding: 12px 12px 12px 0; border-bottom: 1px solid rgba(17, 20, 20, .14); text-align: left; vertical-align: top; }
.aon-doc-body th { font: 800 11px/1.5 var(--aon-head); letter-spacing: .1em; text-transform: uppercase; color: #5b625f; }

/* facts inside a night band: label small, value big, hairlines between */
.aon-band-facts { margin: 0; display: grid; border-top: 1px solid rgba(130, 201, 183, .35); }
.aon-band-facts > div { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 16px 0; border-bottom: 1px solid rgba(130, 201, 183, .2); }
.aon-band-facts dt { order: 2; margin: 0; font: 700 11px/1.4 var(--aon-head); letter-spacing: .14em; text-transform: uppercase; color: #9fc8bd; text-align: right; }
.aon-band-facts dd { order: 1; margin: 0; font: 900 clamp(24px, 2.2vw, 32px)/1 var(--aon-head); letter-spacing: -.035em; text-transform: uppercase; color: #fff; }

/* FAQ */
.aon-faq-lede { margin: 0 0 16px; max-width: 58ch; font: 400 clamp(17px, 1.4vw, 20px)/1.6 var(--aon-body); color: #2c3230; }
.aon-faq-index { margin: 28px 0 0; padding: 0; }
.aon-accordion { border-top: 2px solid #111414; }
.aon-accordion details { border-bottom: 1px solid rgba(17, 20, 20, .14); }
.aon-accordion summary {
	display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 64px; padding: 16px 0;
	list-style: none; cursor: pointer; font: 600 clamp(16px, 1.3vw, 18px)/1.35 var(--aon-head); color: #111414;
}
.aon-accordion summary::-webkit-details-marker { display: none; }
.aon-accordion summary i { position: relative; flex: none; width: 14px; height: 14px; }
.aon-accordion summary i::before, .aon-accordion summary i::after { content: ""; position: absolute; left: 0; top: 6px; width: 14px; height: 2px; background: #111414; transition: transform 240ms var(--aon-ease-out); }
.aon-accordion summary i::after { transform: rotate(90deg); }
.aon-accordion details[open] summary i::after { transform: rotate(0deg); }
@media (hover: hover) and (pointer: fine) { .aon-accordion summary:hover { color: #2f5f52; } }
.aon-accordion summary:focus-visible { outline: 3px solid var(--aon-mint); outline-offset: 2px; }
.aon-accordion__answer { max-width: 68ch; padding: 0 40px 24px 0; }

/* photo band: full-bleed photograph, dark from the left, words on the dark side (homepage photo sections) */
main.aon-page--inner .aon-photo-band {
	box-sizing: border-box; width: 100vw; margin: 0 0 clamp(48px, 6vw, 88px) calc(50% - 50vw);
	min-height: min(78vh, 720px); display: flex; align-items: center; justify-content: flex-end;
	padding: clamp(64px, 8vw, 112px) max(var(--pdp-gutter), calc((100vw - 1440px) / 2 + var(--pdp-gutter)));
	/* the workshop photo's subject sits left (as on the homepage "Built To Order" section), so the words go right */
	background: linear-gradient(270deg, rgba(1,3,3,.94) 0%, rgba(1,3,3,.8) 30%, rgba(1,3,3,.28) 55%, rgba(1,3,3,.04) 75%), var(--aon-photo) 30% center / cover no-repeat, #010303;
	color: #e6ebe8;
}
.aon-photo-band__copy { max-width: 560px; }
.aon-photo-band__copy .aon-band__lead { color: #d8dedb; }
@media (max-width: 699px) {
	main.aon-page--inner .aon-photo-band { min-height: 0; background: linear-gradient(0deg, rgba(1,3,3,.96) 30%, rgba(1,3,3,.55) 100%), var(--aon-photo) 30% center / cover no-repeat, #010303; }
}
.aon-pullline { margin-top: 22px !important; font: 900 clamp(22px, 2vw, 30px)/1.05 var(--aon-head) !important; letter-spacing: -.03em; text-transform: uppercase; color: #111414 !important; }
.aon-pill-row { display: flex; flex-wrap: wrap; gap: 12px; }
.aon-pill--ghost { background: transparent; border-color: rgba(244, 242, 236, .55); color: #f4f2ec; }
@media (hover: hover) and (pointer: fine) { .aon-pill--ghost:hover { background: #fff; border-color: #fff; color: #111; } }
main.aon-page--inner .aon-sheet--wide { grid-template-columns: minmax(0, 3fr) minmax(0, 9fr); }
.aon-insta img { border-radius: 10px; }

/* band with a photo on the right */
main.aon-page--inner .aon-band--media { align-items: center; }
.aon-band__figure { margin: 0; }
.aon-band__figure img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 16px; }
.aon-band__head { margin-bottom: clamp(36px, 4vw, 56px); }
main.aon-page--inner .aon-band .aon-band--split.aon-band__head { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(24px, 5vw, 88px); align-items: end; }
.aon-cols { row-gap: 40px; }
.aon-cols--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.aon-cols__no { display: block; margin-bottom: 22px; font: 800 11px/1 var(--aon-head); letter-spacing: .14em; color: #3f6f62; }
.aon-cols:has(.aon-cols__no) > li::before { content: none; }
.aon-cols--night > li { border-top-color: rgba(130, 201, 183, .5); }
.aon-cols--night .aon-cols__no { color: var(--aon-mint); }
.aon-cols--night h3 { color: #fff; }
.aon-cols--night p { color: #c9d2cd; }

/* split: photo left, words right */
main.aon-page--inner .aon-split { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: clamp(32px, 5vw, 88px); align-items: center; padding: clamp(36px, 4vw, 56px) 0; border-top: 1px solid var(--pdp-line); }
.aon-split__media { margin: 0; }
.aon-split__media img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 16px; }
.aon-split__copy .aon-sheet__title { margin-bottom: 18px; }
.aon-split__copy > p { max-width: 56ch; margin: 0 0 22px; font-size: 16px; line-height: 1.7; color: #2c3230; }
.aon-ticks { list-style: none; margin: 0; padding: 0; border-top: 2px solid #111414; }
.aon-ticks li { position: relative; padding: 12px 0 12px 22px; border-bottom: 1px solid rgba(17, 20, 20, .14); font: 600 15px/1.4 var(--aon-head); color: #111414; }
.aon-ticks li::before { content: ""; position: absolute; left: 0; top: 19px; width: 7px; height: 7px; border-radius: 50%; background: var(--aon-mint); }
.aon-note { padding: 20px 22px; border-radius: 16px; background: #fff; font-size: 15px !important; }
@media (max-width: 1023px) { .aon-cols--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 899px) {
	main.aon-page--inner .aon-split, main.aon-page--inner .aon-band .aon-band--split.aon-band__head { grid-template-columns: minmax(0, 1fr); }
	.aon-cols--4 { grid-template-columns: minmax(0, 1fr); }
}

/* swatch library (Tolex, hardwood) */
.aon-band__actions { margin-top: 28px; }
.aon-band-facts__small { font-size: clamp(15px, 1.2vw, 18px) !important; letter-spacing: 0 !important; text-transform: none !important; font-weight: 700 !important; }
.aon-swatches { list-style: none; margin: 0 0 clamp(48px, 6vw, 88px); padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 28px 16px; }
@media (max-width: 1199px) { .aon-swatches { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 599px) { .aon-swatches { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 12px; } }
.aon-swatches__item { display: grid; gap: 10px; color: #111414; text-decoration: none; }
.aon-swatches__media { display: block; overflow: hidden; border-radius: 12px; background: #e8e5de; aspect-ratio: 4 / 5; }
.aon-swatches__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 500ms var(--aon-ease-out); }
@media (hover: hover) and (pointer: fine) { .aon-swatches__item:hover img { transform: scale(1.04); } }
.aon-swatches__item:focus-visible { outline: 3px solid var(--aon-mint); outline-offset: 4px; border-radius: 12px; }
.aon-swatches__name { font: 700 13px/1.3 var(--aon-head); color: #111414; }
.aon-zoom { width: min(92vw, 720px); max-height: 92vh; padding: 0; border: 0; border-radius: 16px; background: #010303; color: #fff; overflow: hidden; }
.aon-zoom::backdrop { background: rgba(1, 3, 3, .82); }
.aon-zoom__figure { margin: 0; }
.aon-zoom__img { display: block; width: 100%; max-height: calc(92vh - 72px); object-fit: contain; background: #111412; }
.aon-zoom__name { padding: 18px 22px; font: 900 18px/1.1 var(--aon-head); letter-spacing: -.02em; text-transform: uppercase; color: var(--aon-mint); }
.aon-zoom__close { position: absolute; top: 12px; right: 12px; min-height: 44px; padding: 0 18px; border: 0; border-radius: 999px; background: rgba(255,255,255,.92); color: #111; font: 800 11px/1 var(--aon-head); letter-spacing: .09em; text-transform: uppercase; cursor: pointer; }

/* prose inside a band (intro paragraphs) */
.aon-band__prose p { margin: 0 0 14px; font: 400 17px/1.65 var(--aon-body); color: #e6ebe8; }
.aon-band__prose p:last-child { margin-bottom: 0; }
.aon-band--cta .aon-band__prose { margin-bottom: 32px; }

/* numbered terms (ticket rules) */
.aon-terms { list-style: none; margin: 24px 0 0; padding: 0; border-top: 2px solid #111414; counter-reset: aon-term; }
.aon-terms > li { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 8px 28px; padding: 20px 0; border-bottom: 1px solid rgba(17, 20, 20, .14); counter-increment: aon-term; }
.aon-terms h3 { margin: 0 !important; font: 800 13px/1.35 var(--aon-head) !important; letter-spacing: .05em; text-transform: uppercase; color: #111414; }
.aon-terms h3::before { content: counter(aon-term, decimal-leading-zero); display: block; margin-bottom: 8px; font: 800 11px/1 var(--aon-head); letter-spacing: .14em; color: #3f6f62; }
.aon-terms p { margin: 0 0 10px; font-size: 15px; }
.aon-terms p:last-child { margin-bottom: 0; }
@media (max-width: 699px) { .aon-terms > li { grid-template-columns: minmax(0, 1fr); } }

/* journal: topic pills, lead story, card grid, article */
.aon-jfilter { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 clamp(32px, 4vw, 48px); }
.aon-jfilter a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border: 1.5px solid rgba(17, 20, 20, .22); border-radius: 999px; color: #111414; text-decoration: none; font: 800 11px/1 var(--aon-head); letter-spacing: .08em; text-transform: uppercase; transition: background-color var(--aon-fast) ease, color var(--aon-fast) ease, border-color var(--aon-fast) ease; }
.aon-jfilter a[aria-current="page"] { background: #111414; border-color: #111414; color: var(--aon-mint); }
@media (hover: hover) and (pointer: fine) { .aon-jfilter a:not([aria-current]):hover { border-color: #111414; } }
.aon-jgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(28px, 3vw, 40px) clamp(16px, 2vw, 28px); margin-bottom: clamp(48px, 6vw, 88px); }
.aon-jgrid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 0; }
.aon-jcard__link { display: grid; gap: 16px; color: #111414; text-decoration: none; }
.aon-jcard__media { display: block; overflow: hidden; border-radius: 16px; background: #e8e5de; aspect-ratio: 4 / 3; }
.aon-jcard__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 500ms var(--aon-ease-out); }
@media (hover: hover) and (pointer: fine) { .aon-jcard__link:hover img { transform: scale(1.03); } .aon-jcard__link:hover .aon-jcard__title { color: #2f5f52; } }
.aon-jcard__link:focus-visible { outline: 3px solid var(--aon-mint); outline-offset: 4px; border-radius: 16px; }
.aon-jcard__body { display: grid; gap: 10px; align-content: start; }
.aon-jcard__cat { font: 700 11px/1.4 var(--aon-head); letter-spacing: .18em; text-transform: uppercase; color: #3f6f62; }
.aon-jcard__title { margin: 0; font: 800 clamp(17px, 1.4vw, 20px)/1.2 var(--aon-head); letter-spacing: -.01em; color: #111414; text-wrap: balance; transition: color var(--aon-fast) ease; }
.aon-jcard__excerpt { font-size: 15px; line-height: 1.6; color: #2c3230; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.aon-jcard__date { font-size: 13px; color: #5b625f; }
.aon-jcard--lead { grid-column: 1 / -1; padding-bottom: clamp(28px, 3vw, 40px); border-bottom: 1px solid rgba(17, 20, 20, .14); }
.aon-jcard--lead .aon-jcard__link { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(24px, 4vw, 64px); align-items: center; }
.aon-jcard--lead .aon-jcard__media { aspect-ratio: 16 / 10; }
.aon-jcard--lead .aon-jcard__title { font: 900 clamp(26px, 2.8vw, 40px)/1 var(--aon-head); letter-spacing: -.035em; text-transform: uppercase; }
.aon-jcard--lead .aon-jcard__excerpt { font-size: 17px; -webkit-line-clamp: 4; }
.aon-jpages ul { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 clamp(48px, 6vw, 88px); padding: 0; }
.aon-jpages a, .aon-jpages span { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 14px; border-radius: 999px; border: 1.5px solid rgba(17, 20, 20, .22); color: #111414; text-decoration: none; font: 800 12px/1 var(--aon-head); }
.aon-jpages .current { background: #111414; border-color: #111414; color: var(--aon-mint); }
@media (max-width: 1023px) { .aon-jgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 699px) {
	.aon-jgrid, .aon-jgrid--2 { grid-template-columns: minmax(0, 1fr); }
	.aon-jcard--lead .aon-jcard__link { grid-template-columns: minmax(0, 1fr); }
}
.aon-band .aon-eyebrow a { color: inherit; text-decoration: none; }
.aon-page--article .aon-band__title { max-width: 24ch; font-size: clamp(28px, 2.8vw, 42px); }
.aon-article__media { max-width: 960px; margin: 0 auto clamp(40px, 5vw, 64px); }
.aon-article__media img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 16px; }
.aon-article__body figure { margin: 32px 0; }
.aon-article__body figure img, .aon-article__body p img { display: block; width: auto; max-width: 100%; max-height: 480px; margin: 0 auto; object-fit: contain; }
.aon-article { max-width: 720px; margin: 0 auto clamp(48px, 6vw, 88px); }
.aon-article__body { max-width: none; font-size: 18px; line-height: 1.75; }
.aon-article__body h2 { margin: 48px 0 14px; font: 800 clamp(20px, 1.8vw, 24px)/1.2 var(--aon-head); letter-spacing: -.01em; color: #111414; }
.aon-article__body h2 strong, .aon-article__body h3 strong { font-weight: inherit; }
.aon-article__body h3 { font-size: 15px; }
.aon-article__body hr { margin: 40px 0; border: 0; border-top: 1px solid rgba(17, 20, 20, .14); }
.aon-article__body img { max-width: 100%; height: auto; border-radius: 12px; }
.aon-article__body blockquote { margin: 28px 0; padding: 0 0 0 20px; border-left: 2px solid var(--aon-mint); font: 600 20px/1.5 var(--aon-head); color: #111414; }
.aon-article__body > p:first-child em { font: 700 11px/1.5 var(--aon-head); font-style: normal; letter-spacing: .18em; text-transform: uppercase; color: #3f6f62; }

/* search form inside a band, and search results */
.aon-band .search-form { display: flex; gap: 8px; }
.aon-band .search-form label { flex: 1; margin: 0; }
.aon-band .search-form .search-field { box-sizing: border-box; width: 100%; min-height: 56px; padding: 0 22px; border: 1.5px solid rgba(244, 242, 236, .4); border-radius: 999px; background: transparent; color: #fff; font: 400 16px/1 var(--aon-body); }
.aon-band .search-form .search-field::placeholder { color: #9aa59f; }
.aon-band .search-form .search-field:focus-visible { border-color: var(--aon-mint); outline: none; }
.aon-band .search-form .search-submit { min-height: 56px; padding: 0 26px; border: 0; border-radius: 999px; background: var(--aon-mint); color: #111; font: 800 12px/1 var(--aon-head); letter-spacing: .09em; text-transform: uppercase; cursor: pointer; }
.aon-search-list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #111414; }
.aon-search-list li { border-bottom: 1px solid rgba(17, 20, 20, .14); }
.aon-search-list a { display: grid; gap: 6px; padding: 18px 0; color: #111414; text-decoration: none; }
.aon-search-list__title { font: 800 16px/1.3 var(--aon-head); }
.aon-search-list__text { font-size: 15px; line-height: 1.55; color: #2c3230; }
@media (hover: hover) and (pointer: fine) { .aon-search-list a:hover .aon-search-list__title { color: #2f5f52; } }
main.aon-page--search ul.products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
main.aon-page--search ul.products li.product { border-radius: 16px; overflow: hidden; background: #fff; }
@media (max-width: 699px) { main.aon-page--search ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* sheet with a side column (title + notes) */
.aon-sheet__aside { display: grid; gap: 14px; align-content: start; }
.aon-sheet__side-text { margin: 0; max-width: 32ch; font-size: 15px; line-height: 1.6; color: #2c3230; }
.aon-sheet__side-text a { color: #2f5f52; font-weight: 600; text-underline-offset: .22em; }

/* checklist in a band */
.aon-checklist { list-style: none; margin: 0 0 18px; padding: 0; }
.aon-checklist li { position: relative; padding: 10px 0 10px 22px; border-bottom: 1px solid rgba(130, 201, 183, .22); font: 600 16px/1.35 var(--aon-head); color: #fff; }
.aon-checklist li::before { content: ""; position: absolute; left: 0; top: 17px; width: 7px; height: 7px; border-radius: 50%; background: var(--aon-mint); }

/* forms: white sheet, 52px fields, labels in the eyebrow voice */
.aon-form { display: grid; gap: 22px; padding: clamp(22px, 3vw, 40px); border-radius: 16px; background: #fff; }
.aon-form__row { display: grid; gap: 22px; }
.aon-form__row--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.aon-form__row--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.aon-field { display: grid; gap: 8px; min-width: 0; }
.aon-field label { font: 800 11px/1.4 var(--aon-head); letter-spacing: .12em; text-transform: uppercase; color: #111414; }
.aon-field__opt { margin-left: 6px; font-weight: 600; letter-spacing: .08em; color: #5b625f; }
.aon-field__hint { margin: -2px 0 0; font-size: 14px; line-height: 1.5; color: #5b625f; }
.aon-field input[type="text"], .aon-field input[type="email"], .aon-field input[type="date"], .aon-field select, .aon-field textarea {
	box-sizing: border-box; width: 100%; min-height: 52px; padding: 0 16px; border: 1px solid rgba(17, 20, 20, .28); border-radius: 12px;
	background: #fff; color: #111414; font: 400 16px/1.4 var(--aon-body); transition: border-color var(--aon-fast) ease;
}
.aon-field textarea { min-height: 150px; padding: 14px 16px; line-height: 1.55; resize: vertical; }
.aon-field select { -webkit-appearance: none; appearance: none; padding-right: 44px; cursor: pointer;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23111414' stroke-width='1.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: right 16px center; }
.aon-field input:hover, .aon-field select:hover, .aon-field textarea:hover { border-color: rgba(17, 20, 20, .5); }
.aon-field input:focus-visible, .aon-field select:focus-visible, .aon-field textarea:focus-visible { border-color: #111414; outline: 3px solid var(--aon-mint); outline-offset: 2px; }
.aon-field [aria-invalid="true"] { border-color: #a23b2e; }
.aon-field__error { margin: 0; font-size: 14px; line-height: 1.45; color: #9a2f22; }
.aon-field input[type="file"] { font: 400 15px/1.4 var(--aon-body); color: #2c3230; }
.aon-field input[type="file"]::file-selector-button {
	margin-right: 14px; min-height: 44px; padding: 0 20px; border: 1.5px solid #111414; border-radius: 999px; background: transparent; color: #111414;
	font: 800 11px/1 var(--aon-head); letter-spacing: .09em; text-transform: uppercase; cursor: pointer;
}
.aon-form__alert { margin: 0; padding: 14px 16px; border-radius: 12px; background: #fbeeea; color: #7d2a1f; font-size: 15px; line-height: 1.5; }
.aon-form__submit { display: grid; gap: 14px; justify-items: start; padding-top: 6px; }
.aon-form__submit .aon-pill { min-width: 220px; cursor: pointer; }
.aon-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.aon-form-done { display: grid; gap: 12px; justify-items: start; padding: clamp(22px, 3vw, 40px); border-radius: 16px; background: #fff; }
.aon-form-done:focus { outline: none; }
.aon-form-done__title { margin: 0; font: 900 clamp(26px, 2.6vw, 36px)/.98 var(--aon-head); letter-spacing: -.035em; text-transform: uppercase; color: #111414; }
.aon-form-done p { margin: 0; color: #2c3230; }
@media (max-width: 699px) {
	.aon-form__row--2, .aon-form__row--3 { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 899px) {
	main.aon-page--inner .aon-band--split { grid-template-columns: minmax(0, 1fr); }
	main.aon-page--inner .aon-sheet { grid-template-columns: minmax(0, 1fr); row-gap: 18px; }
	.aon-cols, ol.aon-steps { grid-template-columns: minmax(0, 1fr); }
	ol.aon-steps::before { left: 6px; right: auto; top: 6px; bottom: 0; width: 1px; height: auto; }
	.aon-steps > li { padding: 0 0 0 30px; }
	.aon-rows > div { grid-template-columns: minmax(0, 1fr); gap: 6px; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition-duration: .01ms !important; }
}
