/*
Theme Name: Ant Antics
Description: Blocksy child theme for the Ant Antics pet ant shop in Carmarthen. Design layer for the header, footer, and home path banner.
Author: Ant Antics
Template: blocksy
Version: 1.10.34
Text Domain: antantics
Requires at least: 6.5
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/*
Brand colours are not written in this file.
theme.json is the source of truth. functions.php prints them as --aa-* on :root.
*/

@font-face {
	font-family: "Barlow Fallback";
	src: local("Arial");
	font-weight: 400;
	font-style: normal;
	size-adjust: 115.07%;
	ascent-override: 86.9%;
	descent-override: 17.38%;
	line-gap-override: 0%;
}

@font-face {
	font-family: "Barlow Fallback";
	src: local("Arial");
	font-weight: 500;
	font-style: normal;
	size-adjust: 116.2%;
	ascent-override: 86.06%;
	descent-override: 17.21%;
	line-gap-override: 0%;
}

@font-face {
	font-family: "Barlow Fallback";
	src: local("Arial Bold"), local("Arial");
	font-weight: 600;
	font-style: normal;
	size-adjust: 117.09%;
	ascent-override: 85.4%;
	descent-override: 17.08%;
	line-gap-override: 0%;
}

@font-face {
	font-family: "Barlow Fallback";
	src: local("Arial Bold"), local("Arial");
	font-weight: 700;
	font-style: normal;
	size-adjust: 118.21%;
	ascent-override: 84.59%;
	descent-override: 16.92%;
	line-gap-override: 0%;
}

@font-face {
	font-family: "Barlow Fallback";
	src: local("Arial Italic"), local("Arial");
	font-weight: 400;
	font-style: italic;
	size-adjust: 111.48%;
	ascent-override: 89.7%;
	descent-override: 17.94%;
	line-gap-override: 0%;
}

@font-face {
	font-family: Barlow;
	src: url("assets/fonts/barlow-regular.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: Barlow;
	src: url("assets/fonts/barlow-medium.woff2") format("woff2");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: Barlow;
	src: url("assets/fonts/barlow-semibold.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: Barlow;
	src: url("assets/fonts/barlow-bold.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: Barlow;
	src: url("assets/fonts/barlow-italic.woff2") format("woff2");
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: "Allura Fallback";
	src: local("Palatino Linotype"), local("Palatino"), local("Times New Roman");
	font-weight: 400;
	font-style: normal;
	size-adjust: 128.98%;
	ascent-override: 62.02%;
	descent-override: 34.89%;
	line-gap-override: 0%;
}

@font-face {
	font-family: Allura;
	src: url("assets/fonts/allura-regular.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Bricolage Fallback";
	src: local("Arial");
	font-weight: 600;
	font-style: normal;
	size-adjust: 108%;
	ascent-override: 90%;
	descent-override: 22%;
	line-gap-override: 0%;
}

@font-face {
	font-family: "Bricolage Grotesque";
	src: url("assets/fonts/bricolage-grotesque.woff2") format("woff2");
	font-weight: 200 800;
	font-style: normal;
	font-display: swap;
}

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

html {
	overflow-x: clip;
	color-scheme: light;
}

body {
	margin: 0;
	overflow-x: clip;
	background: var(--aa-white);
	color: var(--aa-ink);
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 1.0625rem;
	font-weight: 400;
	line-height: 1.6;
}

body,
button,
input,
select,
textarea,
.site-main,
.entry-content,
.woocommerce {
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.aa-quad-title,
.aa-tile-title,
.aa-news-title,
.aa-step-title,
.aa-card-title,
.aa-kit-name,
.wp-block-heading {
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
}

img {
	max-width: 100%;
	height: auto;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 1.2;
	font-weight: 600;
	color: var(--aa-ink);
}

a {
	color: var(--aa-teal-deep);
}

a:hover {
	color: var(--aa-teal);
}

:focus:not(:focus-visible) {
	outline: none;
}

:focus-visible {
	outline: 2px solid var(--aa-teal-deep);
	outline-offset: 2px;
}

.aa-visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.skip-link {
	position: absolute;
	left: 8px;
	top: -120px;
	z-index: 1000;
	background: var(--aa-ink);
	color: var(--aa-white);
	padding: 12px 16px;
	min-height: 48px;
	display: inline-flex;
	align-items: center;
	text-decoration: none;
}

.skip-link:focus {
	top: 8px;
}

.aa-wrap {
	width: min(1120px, calc(100% - 24px));
	margin-inline: auto;
}

@media (min-width: 768px) {
	.aa-wrap {
		width: min(1120px, calc(100% - 48px));
	}
}

.aa-script {
	font-family: Allura, "Allura Fallback", cursive;
	font-size: 2rem;
	font-weight: 400;
	font-style: normal;
	line-height: 1.2;
	text-transform: none;
	letter-spacing: 0;
	margin: 0;
	color: var(--aa-teal-deep);
}

.aa-button,
a.button,
a.aa-view-product,
button,
input[type="submit"],
.wp-element-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.single_add_to_cart_button,
.wc-block-components-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 12px 18px;
	border: 0;
	border-radius: 0;
	background: var(--aa-teal);
	color: var(--aa-ink);
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
}

a.aa-button:hover,
a.button:hover,
a.aa-view-product:hover,
.aa-path-half:hover .aa-button,
.aa-path-half:focus-visible .aa-button,
.aa-button:hover,
button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.single_add_to_cart_button:hover,
.wp-element-button:hover,
.wc-block-components-button:hover {
	background: var(--aa-teal-deep);
	color: var(--aa-white);
}

.aa-path-half,
.aa-path-half:hover,
.aa-path-half:focus-visible {
	color: var(--aa-white);
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: var(--aa-white);
	transition: top 0.28s ease;
}

.site-header.is-header-hidden {
	top: calc(0px - var(--aa-header-h, 180px));
}

@media (min-width: 783px) {
	body.admin-bar .site-header {
		top: var(--wp-admin--admin-bar--height, 32px);
	}

	body.admin-bar .site-header.is-header-hidden {
		top: calc(var(--wp-admin--admin-bar--height, 32px) - var(--aa-header-h, 180px));
	}
}

@media (prefers-reduced-motion: reduce) {
	.site-header {
		transition: none;
	}
}

.aa-announce {
	min-height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 6px 16px;
	background: var(--aa-teal);
	color: var(--aa-ink);
	font-size: 0.875rem;
	font-weight: 600;
	text-align: center;
	overflow-wrap: anywhere;
}

.aa-header-main {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	grid-template-areas:
		"mode mode mode"
		"brand brand brand"
		"rule rule rule"
		"toggle search icons";
	align-items: center;
	column-gap: 8px;
	background: var(--aa-white);
	border-bottom: 1px solid var(--aa-line);
	padding: 0 12px 10px;
}

.aa-nav-toggle {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
	white-space: nowrap;
}

.header-bar {
	display: contents;
}

.menu-toggle {
	grid-area: toggle;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-width: 48px;
	min-height: 48px;
	padding: 0 8px;
	background: transparent;
	color: var(--aa-ink);
	font-weight: 600;
	cursor: pointer;
	justify-self: start;
}

.menu-toggle-bars,
.menu-toggle-bars::before,
.menu-toggle-bars::after {
	display: block;
	width: 18px;
	height: 2px;
	background: currentColor;
	content: "";
}

.menu-toggle-bars {
	position: relative;
}

.menu-toggle-bars::before,
.menu-toggle-bars::after {
	position: absolute;
	left: 0;
}

.menu-toggle-bars::before {
	top: -6px;
}

.menu-toggle-bars::after {
	top: 6px;
}

.aa-nav-toggle:focus-visible ~ .header-bar .menu-toggle {
	outline: 2px solid var(--aa-teal-deep);
	outline-offset: 2px;
}

.aa-header-rule {
	grid-area: rule;
	height: 0;
	border-top: 1px solid var(--aa-line);
	margin: 0 -12px;
}

.aa-brand {
	grid-area: brand;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-width: 0;
	padding: 18px 8px 16px;
	justify-self: center;
}

.site-logo {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	min-height: 48px;
	overflow: visible;
}

.site-logo img {
	display: block;
	width: auto;
	height: 72px;
	aspect-ratio: 600 / 407;
	object-fit: contain;
	object-position: center;
}

.aa-search {
	grid-area: search;
	display: flex;
	justify-self: end;
	width: 48px;
	min-width: 48px;
	max-width: 100%;
	overflow: hidden;
	border: 1px solid var(--aa-line);
	border-radius: 999px;
	background: var(--aa-white);
	transition: width 0.2s ease;
}

.aa-search:focus-within,
.aa-search.is-open {
	width: min(280px, 70vw);
}

.aa-search input[type="search"] {
	flex: 1 1 auto;
	width: 0;
	min-width: 0;
	min-height: 46px;
	border: 0;
	padding: 0;
	opacity: 0;
	background: transparent;
	color: var(--aa-ink);
	font-size: 1rem;
}

.aa-search:focus-within input[type="search"],
.aa-search.is-open input[type="search"] {
	width: 12rem;
	padding: 0 12px;
	opacity: 1;
}

.aa-search input[type="search"]::placeholder {
	color: var(--aa-grey);
}

.aa-search button {
	flex: 0 0 auto;
	min-width: 48px;
	position: relative;
}

.aa-search-icon {
	display: block;
}

.aa-search-label {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

.aa-search button {
	width: 46px;
	min-width: 46px;
	padding: 0;
	background: transparent;
	color: var(--aa-ink);
}

.header-tools {
	display: contents;
}

.aa-header-mode {
	grid-area: mode;
	display: flex;
	justify-content: center;
	margin: 0 -12px;
	padding: 8px 12px 10px;
	background: var(--aa-white);
	border-bottom: 1px solid var(--aa-line);
}

.aa-header-icons {
	grid-area: icons;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	justify-self: end;
}

@media (max-width: 639px) {
	.aa-header-main {
		grid-template-areas:
			"mode mode mode"
			"brand brand brand"
			"rule rule rule"
			"toggle . icons"
			"search search search";
		row-gap: 8px;
	}

	.aa-search {
		width: 48px;
		justify-self: end;
	}
}

.aa-icon-link {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 48px;
	min-height: 48px;
	color: var(--aa-ink);
	text-decoration: none;
}

.aa-icon-link:hover {
	color: var(--aa-teal-deep);
}

.aa-account-label {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

.aa-cart-count {
	position: absolute;
	top: 4px;
	right: 2px;
	min-width: 18px;
	height: 18px;
	padding: 0 4px;
	border-radius: 9px;
	background: var(--aa-teal-deep);
	color: var(--aa-white);
	font-size: 0.6875rem;
	font-weight: 700;
	line-height: 18px;
	text-align: center;
}

.primary-nav {
	position: fixed;
	z-index: 120;
	inset: 0 auto 0 0;
	width: min(100%, 20rem);
	height: 100%;
	background: var(--aa-white);
	transform: translateX(-105%);
	visibility: hidden;
	overflow: auto;
	padding: 8px 8px 32px;
}

.nav-backdrop {
	position: fixed;
	inset: 0;
	z-index: 110;
	background: rgba(17, 20, 20, 0.45);
	visibility: hidden;
	opacity: 0;
}

.nav-close {
	display: inline-flex;
	align-items: center;
	min-height: 48px;
	min-width: 48px;
	padding: 0 16px;
	background: var(--aa-ink);
	color: var(--aa-white);
	font-weight: 600;
	cursor: pointer;
}

.aa-nav-toggle:checked ~ .primary-nav {
	transform: none;
	visibility: visible;
}

.aa-nav-toggle:checked ~ .nav-backdrop {
	visibility: visible;
	opacity: 1;
}

@media (max-width: 1023px) {
	html:has(.aa-nav-toggle:checked) {
		overflow: hidden;
	}
}

.primary-menu,
.primary-menu ul,
.aa-footer-menu,
.aa-legal-menu,
.aa-social,
.aa-payments,
.aa-awards {
	list-style: none;
	margin: 0;
	padding: 0;
}

.primary-menu a {
	display: flex;
	align-items: center;
	min-height: 48px;
	padding: 0 12px;
	color: var(--aa-ink);
	text-decoration: none;
	font-weight: 600;
}

.primary-menu .sub-menu a {
	font-weight: 500;
	padding-left: 28px;
}

.primary-menu a:hover,
.primary-menu .current-menu-item > a,
.primary-menu .current-menu-ancestor > a,
.primary-menu .current_page_item > a {
	color: var(--aa-teal-deep);
	box-shadow: inset 0 -2px 0 var(--aa-teal);
}

.aa-menu-missing {
	margin: 16px 12px;
	color: var(--aa-grey);
	font-size: 0.875rem;
}

.aa-breadcrumbs {
	font-size: 0.8125rem;
	color: var(--aa-grey);
	background: var(--aa-white);
	border-bottom: 1px solid var(--aa-line);
}

.aa-breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0;
	list-style: none;
	margin: 0 auto;
	padding: 0 12px;
	width: min(1120px, 100%);
}

.aa-breadcrumbs li {
	display: inline-flex;
	align-items: center;
	min-height: 48px;
}

.aa-breadcrumbs a {
	display: inline-flex;
	align-items: center;
	min-height: 48px;
	color: var(--aa-teal-deep);
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.aa-breadcrumbs li:not(:last-child)::after {
	content: "/";
	margin: 0 0.4em;
	color: var(--aa-grey);
}

.ct-breadcrumbs {
	display: none;
}

.aa-hero {
	position: relative;
	display: flex;
	align-items: flex-end;
	height: auto;
	min-height: 280px;
	overflow: hidden;
	color: var(--aa-white);
	background: var(--aa-ink);
	isolation: isolate;
}

.aa-hero-media,
.aa-hero-shade,
.aa-hero-curve {
	position: absolute;
	inset: 0;
}

.aa-hero-media {
	z-index: 0;
}

.aa-hero-img,
.aa-hero-media img {
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center center;
	display: block;
}

@media (max-width: 767px) {
	.aa-hero-img,
	.aa-hero-media img {
		object-position: center center;
	}
}

.aa-header-mode.is-covered {
	display: none;
}

.aa-hero-shade {
	z-index: 1;
	background:
		linear-gradient(180deg, rgba(17, 20, 20, 0.2) 0%, rgba(17, 20, 20, 0.72) 100%),
		linear-gradient(90deg, rgba(17, 20, 20, 0.86) 0%, rgba(17, 20, 20, 0.62) 48%, rgba(17, 20, 20, 0.28) 100%);
}

.aa-wrap.aa-hero-copy {
	position: relative;
	z-index: 2;
	width: min(36rem, calc(100% - 32px));
	max-width: 36rem;
	margin-left: max(16px, calc((100% - 1120px) / 2));
	margin-right: auto;
	padding-bottom: 16px;
}

.aa-hero .aa-script {
	color: var(--aa-white);
	font-size: clamp(3.25rem, 8vw, 5rem);
	line-height: 0.85;
	margin-bottom: 2px;
}

.aa-hero h1,
.aa-begin-hero h1,
.aa-banner h1 {
	margin: 0 0 8px;
	color: var(--aa-white);
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.1;
	max-width: 18em;
}

.aa-hero-lede {
	margin: 0;
	max-width: 34rem;
	color: var(--aa-white);
	font-weight: 400;
}

.aa-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 16px;
}

.aa-hero-curve {
	display: none;
}

.aa-trust {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 10px 22px;
	margin: 0;
	padding: 20px 16px;
	list-style: none;
	background: color-mix(in srgb, var(--aa-teal) 20%, var(--aa-white));
	position: relative;
	z-index: 3;
}

.aa-trust li {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 32px;
	color: var(--aa-ink);
	font-size: 0.875rem;
	font-weight: 500;
}

.aa-trust li::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--aa-teal-deep);
	flex: 0 0 auto;
}

.aa-trusted {
	padding: 22px 0 18px;
	background: var(--aa-white);
	overflow: visible;
}

.aa-trusted h2 {
	margin: 0 0 14px;
	text-align: center;
	font-size: 1.35rem;
}

.aa-trusted-row {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}

.aa-trusted-slot {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 0;
	min-width: 0;
	min-height: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

.aa-trusted-slot img {
	display: block;
	width: auto;
	max-width: 100%;
	height: 40px;
	object-fit: contain;
	filter: grayscale(1);
	opacity: 0.72;
}

.aa-trusted-slot:hover img,
.aa-trusted-slot:focus-visible img,
.aa-trusted-slot:focus-within img {
	filter: none;
	opacity: 1;
}

@media (max-width: 699px) {
	.aa-trusted-row {
		justify-content: flex-start;
		gap: 28px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		padding-bottom: 8px;
	}

	.aa-trusted-slot {
		flex: 0 0 auto;
		scroll-snap-align: start;
	}

	.aa-trusted-slot img {
		height: 40px;
		max-width: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-trusted-slot img {
		transition: none;
	}
}

.aa-path {
	display: flex;
	flex-direction: column;
	width: 100%;
	background: var(--aa-teal);
	overflow: hidden;
}

.aa-path-half {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: 180px;
	color: var(--aa-ink);
	text-decoration: none;
	overflow: hidden;
}

.aa-path-half--beginner {
	clip-path: polygon(0 0, 100% 0, 100% calc(100% - 32px), 0 100%);
	z-index: 1;
	padding-bottom: 28px;
}

.aa-path-half--keeper {
	min-height: 200px;
	margin-top: -32px;
	align-items: center;
	padding-top: 36px;
}

.aa-path-half--beginner::after {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--aa-teal);
	z-index: 2;
	pointer-events: none;
	clip-path: polygon(0 calc(100% - 8px), 100% calc(100% - 40px), 100% calc(100% - 32px), 0 100%);
}

.aa-path-media {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.aa-path-media img,
.aa-path-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	display: block;
}

.aa-path-half::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(180deg, rgba(17, 20, 20, 0.12) 0%, rgba(17, 20, 20, 0.58) 48%, rgba(17, 20, 20, 0.88) 100%);
}

.aa-path-copy {
	position: relative;
	z-index: 3;
	margin: 16px;
	padding: 0 4px 8px;
	max-width: 24rem;
	background: transparent;
	color: var(--aa-white);
}

.aa-path-copy h2 {
	margin: 0 0 8px;
	font-size: 1.5rem;
	color: var(--aa-white);
}

.aa-path-copy p {
	margin: 0 0 12px;
	color: var(--aa-white);
}

.aa-button-arrow {
	margin-left: 8px;
	flex: 0 0 auto;
}

.aa-path-half:focus-visible {
	outline: 3px solid var(--aa-teal);
	outline-offset: -6px;
}

.aa-start {
	padding: 8px 0 40px;
}

.aa-start h2 {
	margin: 0 0 8px;
	font-size: 1.75rem;
}

.aa-steps {
	list-style: none;
	margin: 20px 0 0;
	padding: 0;
	display: grid;
	gap: 12px;
	counter-reset: aa-step;
}

.aa-steps li {
	background: var(--aa-mist);
	padding: 16px;
	counter-increment: aa-step;
}

.aa-steps h3 {
	margin: 0 0 8px;
	font-size: 1.2rem;
}

.aa-steps h3::before {
	content: counter(aa-step) ". ";
	color: var(--aa-teal-deep);
}

.aa-steps p {
	margin: 0 0 12px;
	color: var(--aa-grey);
}

.aa-steps .aa-button {
	margin-top: 4px;
}

.site-footer {
	color: var(--aa-white);
	background: var(--aa-ink);
}

.aa-news {
	background: var(--aa-teal);
	color: var(--aa-ink);
}

.aa-news-inner {
	display: grid;
	gap: 8px;
	padding: 20px 0;
}

.aa-news .aa-script {
	color: var(--aa-ink);
	font-size: 2.5rem;
}

.aa-news-title {
	margin: 0;
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1.3;
}

.aa-news-copy p {
	margin: 4px 0 0;
}

.aa-news-form {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.aa-news-form input[type="email"] {
	min-height: 48px;
	width: 100%;
	border: 0;
	padding: 0 12px;
	background: var(--aa-white);
	color: var(--aa-ink);
	font-size: 1rem;
}

.aa-news-form input::placeholder {
	color: var(--aa-grey);
}

.aa-news-form button {
	background: var(--aa-ink);
	color: var(--aa-white);
}

.aa-news-form button:hover {
	background: var(--aa-teal-deep);
	color: var(--aa-white);
}

.aa-footer-main {
	padding: 32px 0 16px;
}

.aa-footer-grid {
	display: grid;
	gap: 8px;
}

.aa-footer-logo {
	display: inline-block;
}

.aa-footer-logo img {
	width: auto;
	height: 72px;
	aspect-ratio: 600 / 407;
}

.aa-tagline {
	margin: 8px 0 0;
	color: var(--aa-line);
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-weight: 400;
	font-style: normal;
	text-transform: none;
	letter-spacing: 0;
}

.aa-brand .aa-header-tagline {
	display: block;
	margin: 0;
	color: var(--aa-ink);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.2;
	text-align: center;
}

.site-header .aa-brand p.aa-header-tagline-cy {
	font-family: Allura, "Allura Fallback", cursive;
	font-size: clamp(1.35rem, 4.4vw, 1.7rem);
	font-weight: 400;
	font-style: normal;
	font-synthesis: none;
	line-height: 1.05;
	color: #111414;
}

.aa-address {
	margin: 16px 0 0;
	font-style: normal;
	color: var(--aa-line);
}

.aa-contact,
.aa-hours {
	margin: 0;
}

.aa-contact a,
.aa-hours {
	color: var(--aa-white);
}

.aa-contact a {
	display: inline-flex;
	align-items: center;
	min-height: 48px;
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.aa-contact-label {
	display: block;
	color: var(--aa-line);
	font-size: 0.875rem;
}

.aa-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
	margin-top: 12px;
}

.aa-badges img {
	width: auto;
	height: 56px;
	aspect-ratio: 240 / 239;
}

.aa-footer-acc {
	border-top: 1px solid rgba(255, 255, 255, 0.16);
}

.aa-footer-title,
.aa-footer-acc summary {
	margin: 0;
	color: var(--aa-white);
	font-weight: 600;
	font-size: 1rem;
}

.aa-footer-acc summary {
	display: flex;
	align-items: center;
	min-height: 48px;
	padding: 8px 0;
	cursor: pointer;
	list-style: none;
	border-bottom: 2px solid var(--aa-teal);
}

.aa-footer-acc summary::-webkit-details-marker {
	display: none;
}

.aa-footer-acc summary::after {
	content: "";
	width: 10px;
	height: 10px;
	margin-left: auto;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
}

.aa-footer-acc[open] summary::after {
	transform: rotate(225deg);
}

.aa-footer-menu a,
.aa-legal-menu a {
	display: flex;
	align-items: center;
	min-height: 48px;
	color: var(--aa-white);
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.aa-footer-menu a:hover,
.aa-legal-menu a:hover,
.aa-foundation-note a:hover,
.aa-contact a:hover {
	color: var(--aa-teal);
}

.aa-foundation-note {
	margin: 24px 0 8px;
	color: var(--aa-white);
}

.aa-foundation-note a {
	color: var(--aa-teal);
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.aa-awards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 12px;
	margin-top: 20px;
	align-items: center;
	justify-items: center;
}

.aa-awards li {
	width: 100%;
	display: flex;
	justify-content: center;
}

.aa-awards li:last-child:nth-child(odd) {
	grid-column: 1 / -1;
	width: calc(50% - 6px);
}

.aa-awards img {
	width: 100%;
	height: 92px;
	object-fit: contain;
}

.aa-base {
	display: grid;
	gap: 12px;
	margin-top: 24px;
	padding-top: 16px;
	border-top: 1px solid rgba(255, 255, 255, 0.16);
}

.aa-social {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.aa-social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	background: var(--aa-white);
	border-radius: 50%;
}

.aa-social img {
	width: 20px;
	height: 20px;
}

.aa-payments {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.aa-pay-logo {
	display: block;
	width: auto;
	height: 32px;
}

.aa-klarna-badge {
	display: inline-block;
	width: 36px;
	height: 24px;
	margin: 0 0 0 8px;
	vertical-align: middle;
}

.aa-lang[hidden] {
	display: none;
}

.aa-legal {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-top: 8px;
	padding-top: 8px;
}

.aa-copy {
	margin: 0;
	min-height: 48px;
	display: flex;
	align-items: center;
	color: var(--aa-line);
}

.aa-legal-menu {
	display: flex;
	flex-direction: column;
}

@media (min-width: 768px) {
	.aa-hero {
		align-items: center;
		height: clamp(360px, 55vh, 560px);
		min-height: 360px;
		max-height: 560px;
	}

	.aa-hero-shade {
		background: linear-gradient(90deg, rgba(17, 20, 20, 0.92) 0%, rgba(17, 20, 20, 0.78) 34%, rgba(17, 20, 20, 0.62) 50%, rgba(17, 20, 20, 0.16) 74%, rgba(17, 20, 20, 0) 100%);
	}

	.aa-hero h1,
	.aa-begin-hero h1,
	.aa-banner h1,
	.aa-page > h1,
	.aa-wrap:not(.aa-hero-copy):not(.aa-banner-copy):not(.aa-begin-hero-copy) > h1 {
		font-size: 2.35rem;
	}

	.aa-hero-copy {
		padding-bottom: 24px;
	}

	.aa-path {
		flex-direction: row;
		align-items: stretch;
		min-height: 340px;
	}

	.aa-path-half {
		flex: 1 1 0;
		min-height: 340px;
		margin: 0;
		align-items: flex-end;
		padding-top: 0;
		padding-bottom: 0;
	}

	.aa-path-half--beginner {
		clip-path: polygon(0 0, 100% 0, calc(100% - 64px) 100%, 0 100%);
		padding-right: 36px;
		z-index: 1;
	}

	.aa-path-half--keeper {
		margin-left: -64px;
		padding-left: 48px;
	}

	.aa-path-half--beginner::after {
		clip-path: polygon(calc(100% - 6px) 0, 100% 0, calc(100% - 64px) 100%, calc(100% - 70px) 100%);
	}

	.aa-path:has(.aa-path-half--beginner:hover) .aa-path-half--beginner,
	.aa-path:has(.aa-path-half--beginner:focus-visible) .aa-path-half--beginner,
	.aa-path:has(.aa-path-half--keeper:hover) .aa-path-half--keeper,
	.aa-path:has(.aa-path-half--keeper:focus-visible) .aa-path-half--keeper {
		flex-grow: 1.5;
	}

	.aa-news-inner {
		grid-template-columns: minmax(0, 1fr) minmax(220px, 340px);
		align-items: center;
		gap: 20px;
		padding: 22px 0;
	}

	.aa-news .aa-script,
	.aa-news-copy {
		grid-column: 1;
	}

	.aa-news-form {
		grid-column: 2;
		grid-row: 1 / span 2;
		flex-direction: row;
		align-items: center;
	}

	.aa-news-form input[type="email"] {
		flex: 1;
	}

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

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

	.aa-footer-acc:not([open]) > :not(summary) {
		display: block;
	}

	.aa-footer-acc summary {
		pointer-events: none;
	}

	.aa-footer-acc summary::after {
		display: none;
	}

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

	.aa-awards li:last-child:nth-child(odd) {
		grid-column: 2;
		width: 100%;
	}

	.aa-base {
		grid-template-columns: auto 1fr auto;
		align-items: center;
	}

	.aa-legal {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		gap: 8px 24px;
	}

	.aa-legal-menu {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 0 8px;
	}

	.aa-steps {
		grid-template-columns: 1fr 1fr;
	}
}

@media (min-width: 1024px) {
	.aa-header-main {
		grid-template-areas:
			"mode mode mode"
			"brand brand brand"
			"rule rule rule"
			"nav search icons";
		column-gap: 16px;
		padding: 0 24px 12px;
	}

	.aa-header-mode {
		margin: 0 -24px;
		padding: 6px 24px;
	}

	.aa-header-rule {
		margin: 0 -24px;
	}

	.menu-toggle {
		display: none;
	}

	.site-logo img {
		height: 96px;
	}

	.aa-search {
		min-width: 0;
	}

	.primary-nav {
		grid-area: nav;
		position: static;
		width: auto;
		height: auto;
		transform: none;
		visibility: visible;
		overflow: visible;
		background: transparent;
		padding: 0;
	}

	.nav-close,
	.nav-backdrop {
		display: none;
	}

	.primary-menu {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}

	.primary-menu > li {
		position: relative;
	}

	.primary-menu > li > a {
		white-space: nowrap;
		padding: 0 8px;
		font-size: 0.875rem;
	}

	.primary-menu .sub-menu {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		min-width: 240px;
		background: var(--aa-white);
		border: 1px solid var(--aa-line);
		box-shadow: 0 8px 24px rgba(17, 20, 20, 0.08);
		z-index: 30;
		padding: 4px 0;
	}

	.primary-menu > li:hover > .sub-menu,
	.primary-menu > li:focus-within > .sub-menu {
		display: block;
	}

	.primary-menu .sub-menu a {
		padding-left: 16px;
	}

	.aa-news-inner {
		grid-template-columns: minmax(10rem, 18rem) minmax(0, 1fr) minmax(260px, 380px);
	}

	.aa-news .aa-script {
		grid-column: 1;
		grid-row: 1;
		max-width: 18rem;
		font-size: 2.5rem;
	}

	.aa-news-copy {
		grid-column: 2;
		grid-row: 1;
	}

	.aa-news-form {
		grid-column: 3;
		grid-row: 1;
	}

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

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

	.aa-footer-acc {
		border-top: 0;
	}

	.aa-awards {
		grid-template-columns: repeat(7, minmax(0, 1fr));
	}

	.aa-awards li:last-child:nth-child(odd) {
		grid-column: auto;
		width: 100%;
	}

	.aa-awards img {
		height: 104px;
	}
}

@media (min-width: 1200px) {
	.primary-menu > li > a {
		font-size: 0.95rem;
		padding: 0 10px;
	}

	.site-logo img {
		height: 112px;
	}

	.aa-account {
		width: auto;
		padding-right: 8px;
	}

	.aa-account-label {
		position: static;
		width: auto;
		height: auto;
		margin-left: 6px;
		overflow: visible;
		clip: auto;
		font-weight: 600;
		white-space: nowrap;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-path-half,
	.primary-nav,
	.nav-backdrop {
		transition: none;
	}

	.aa-path:has(.aa-path-half--beginner:hover) .aa-path-half--beginner,
	.aa-path:has(.aa-path-half--beginner:focus-visible) .aa-path-half--beginner,
	.aa-path:has(.aa-path-half--keeper:hover) .aa-path-half--keeper,
	.aa-path:has(.aa-path-half--keeper:focus-visible) .aa-path-half--keeper {
		flex-grow: 1;
	}
}

.woocommerce span.onsale,
.wc-block-components-product-sale-badge {
	background: var(--aa-teal-deep);
	color: var(--aa-white);
}

.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price {
	color: var(--aa-ink);
}

.woocommerce div.product p.price ins,
.woocommerce ul.products li.product .price ins {
	color: var(--aa-teal-deep);
	text-decoration: none;
}

body:not(.aa-mode-keeping) [data-aa-panel="keeping"] {
	display: none;
}

.aa-mode-keeping [data-aa-panel="new"] {
	display: none;
}

.aa-mode {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: stretch;
	width: min(100%, 560px);
	min-height: 84px;
	padding: 0;
	border-radius: 999px;
	background: var(--aa-ink);
	border: 3px solid var(--aa-white);
	box-shadow: 0 10px 24px rgba(17, 20, 20, 0.28);
}

.aa-mode-thumb {
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 68px;
	height: 68px;
	border-radius: 50%;
	background: var(--aa-teal-deep);
	border: 3px solid var(--aa-white);
	box-shadow: 0 6px 16px rgba(17, 20, 20, 0.35);
	transform: translate(-50%, -50%);
	transition: left 0.28s ease, transform 0.28s ease;
}

.aa-mode[data-current="new"] .aa-mode-thumb {
	left: 8px;
	transform: translate(0, -50%);
}

.aa-mode[data-current="keeping"] .aa-mode-thumb {
	left: calc(100% - 8px);
	transform: translate(-100%, -50%);
}

.aa-mode-option {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	background: transparent;
	color: var(--aa-white);
	min-height: 84px;
	padding: 8px 20px;
	border-radius: 999px;
	font-weight: 700;
	font-size: 1.125rem;
	line-height: 1.2;
	cursor: pointer;
}

.aa-mode-option:hover,
.aa-mode-option[aria-checked="true"],
.aa-mode-option[aria-checked="true"]:hover,
.aa-mode-option[aria-checked="false"],
.aa-mode-option[aria-checked="false"]:hover {
	background: transparent;
	color: var(--aa-white);
}

.aa-mode-option:focus-visible {
	outline: 3px solid var(--aa-teal);
	outline-offset: 3px;
}

.aa-mode[data-current="choose"] .aa-mode-option[data-aa-mode="new"],
body.aa-choosing .aa-mode .aa-mode-option[data-aa-mode="new"] {
	padding-right: 48px;
}

.aa-mode[data-current="choose"] .aa-mode-option[data-aa-mode="keeping"],
body.aa-choosing .aa-mode .aa-mode-option[data-aa-mode="keeping"] {
	padding-left: 48px;
}

.aa-mode[data-current="new"] .aa-mode-option[data-aa-mode="new"] {
	justify-content: flex-start;
	padding-left: 88px;
}

.aa-mode[data-current="keeping"] .aa-mode-option[data-aa-mode="keeping"] {
	justify-content: flex-end;
	padding-right: 88px;
}

.aa-mode-hero,
.aa-mode-header {
	width: min(100%, 560px);
	margin-top: 0;
}

.aa-mode-hero {
	margin-top: 8px;
}

.aa-choose-line {
	display: none;
	margin: 20px 0 0;
	padding: 12px 22px;
	border-radius: 999px;
	background: rgba(17, 20, 20, 0.88);
	color: var(--aa-white);
	font-weight: 700;
	font-size: 1.75rem;
	line-height: 1.2;
	text-align: center;
}

.aa-house {
	display: none;
}

.aa-logo-house {
	display: none;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translate(-130%, -50%);
	color: var(--aa-teal-deep);
}

.aa-logo-house .aa-house {
	display: block;
	width: 22px;
	height: 22px;
}

body:not(.aa-choosing) .aa-logo-house {
	display: inline-flex;
}

.aa-choosing .aa-choose-line {
	display: block;
	width: min(100%, 640px);
	margin-left: auto;
	margin-right: auto;
}

.aa-choosing .aa-hero-lede {
	display: none;
}

.aa-choosing .aa-header-mode {
	display: none;
}

.aa-choosing .aa-home-modes,
.aa-choosing .aa-quad,
.aa-choosing .aa-tiles,
.aa-choosing .aa-found {
	display: none;
}

.aa-choosing .aa-hero {
	align-items: center;
	min-height: 560px;
}

.aa-choosing .aa-hero-copy {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	width: min(44rem, calc(100% - 32px));
	max-width: 44rem;
}

.aa-choosing .aa-hero h1 {
	max-width: 16em;
}

.aa-choosing .aa-hero-actions,
.aa-choosing .aa-mode,
.aa-choosing .aa-mode-hero {
	width: min(560px, calc(100vw - 16px));
}

body.aa-choosing .aa-mode-thumb {
	left: 50%;
	transform: translate(-50%, -50%);
}

.aa-mode[data-current="choose"] .aa-mode-thumb .aa-house,
body.aa-choosing .aa-mode-thumb .aa-house {
	display: block;
	width: 30px;
	height: 30px;
	color: var(--aa-white);
}

.aa-mode[data-current="choose"] .aa-mode-thumb .aa-house path,
body.aa-choosing .aa-mode-thumb .aa-house path {
	stroke-width: 2.4;
}

@media (max-width: 767px) {
	.aa-wrap.aa-hero-copy,
	.aa-choosing .aa-hero-copy {
		width: 100%;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
		padding-left: 8px;
		padding-right: 8px;
	}

	.aa-choosing .aa-choose-line {
		width: 100%;
		font-size: 1.35rem;
		padding: 10px 14px;
	}

	.aa-mode,
	.aa-mode-hero,
	.aa-mode-header {
		width: calc(100% - 8px);
	}

	.aa-choosing .aa-hero-actions,
	.aa-choosing .aa-mode,
	.aa-choosing .aa-mode-hero,
	.aa-hero-actions,
	.aa-hero .aa-mode-hero,
	.aa-header-mode .aa-mode {
		width: 100%;
		max-width: none;
	}

	.aa-mode,
	.aa-mode-option {
		min-height: 76px;
	}

	.aa-mode-thumb {
		width: 60px;
		height: 60px;
	}

	.aa-mode-option {
		font-size: 1rem;
		padding-left: 12px;
		padding-right: 12px;
	}

	.aa-mode[data-current="new"] .aa-mode-option[data-aa-mode="new"] {
		padding-left: 76px;
	}

	.aa-mode[data-current="keeping"] .aa-mode-option[data-aa-mode="keeping"] {
		padding-right: 76px;
	}
}

.aa-home-modes {
	padding: 0;
}

.aa-eyebrow {
	margin: 0 0 8px;
	color: var(--aa-teal-deep);
	font-weight: 600;
}

.aa-guide {
	background: var(--aa-mist);
	padding: 28px 0 12px;
}

.aa-guide .aa-steps li {
	background: var(--aa-white);
	border-top: 3px solid var(--aa-teal);
}

.aa-keeper {
	background: var(--aa-ink);
	color: var(--aa-white);
	padding: 32px 0 40px;
}

.aa-keeper .aa-eyebrow {
	color: var(--aa-teal);
}

.aa-keeper h2 {
	color: var(--aa-white);
	font-size: 2.15rem;
}

.aa-keeper .aa-stock > p {
	color: var(--aa-white);
	font-size: 1.2rem;
}

.aa-keeper .aa-card-title {
	color: var(--aa-ink);
}

.aa-card-row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
	list-style: none;
	margin: 16px 0 0;
	padding: 0;
}

.aa-card a {
	display: flex;
	flex-direction: column;
	min-height: 48px;
	color: var(--aa-ink);
	text-decoration: none;
	background: var(--aa-mist);
}

.aa-card-media {
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: var(--aa-white);
}

.aa-card-media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	background: var(--aa-white);
}

.aa-kits .aa-card-media {
	aspect-ratio: 16 / 9;
	background: var(--aa-ink);
}

.aa-kits .aa-card-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center bottom;
}

.aa-card-title,
.aa-card-meta {
	display: block;
	padding: 0 12px;
}

.aa-card-title {
	margin-top: 10px;
	font-weight: 600;
}

.aa-suggest .aa-card-title,
.woocommerce-cart .aa-card-title,
.woocommerce-checkout .aa-card-title {
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
}

.aa-card-meta {
	margin: 4px 0 8px;
	color: var(--aa-grey);
	font-weight: 400;
}

.aa-store .aa-card,
.aa-rail .aa-card,
.woocommerce ul.products li.product,
[data-products] > .product {
	display: flex;
	flex-direction: column;
	align-items: center;
	height: 100%;
	text-align: center;
}

.aa-store .aa-card .aa-card-open,
.aa-rail .aa-card .aa-card-open {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	text-align: center;
	text-decoration: none;
	color: var(--aa-ink);
}

.aa-store .aa-card .aa-card-open {
	background: var(--aa-mist);
}

.aa-rail .aa-card .aa-card-open {
	background: var(--aa-white);
	border: 0;
}

.aa-store .aa-card .button,
.aa-rail .aa-card .button,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .aa-view-product,
[data-products] > .product > .button {
	display: inline-flex;
	margin-top: 0;
	margin-bottom: 0;
	background: transparent;
	color: var(--aa-ink);
	text-align: center;
}

.aa-card-media,
[data-products] figure,
[data-products] .product .ct-media-container,
.woocommerce ul.products li.product .ct-media-container,
.woocommerce ul.products li.product .woocommerce-LoopProduct-link img,
.related ul.products li.product img,
.upsells ul.products li.product img,
.wc-block-grid__product .wc-block-grid__product-image,
.wc-block-grid__product .wc-block-grid__product-image img {
	position: relative;
}

.woocommerce ul.products li.product .ct-media-container,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
[data-products] .product figure,
[data-products] .product .ct-media-container,
.related ul.products li.product .ct-media-container,
.upsells ul.products li.product .ct-media-container,
.wc-block-grid__product .wc-block-grid__product-image,
.aa-rail .aa-card-media {
	aspect-ratio: 1 / 1 !important;
	background: #fff !important;
	overflow: hidden;
}

.woocommerce ul.products li.product img,
.woocommerce ul.products li.product .ct-media-container img,
[data-products] .product figure img,
[data-products] .product .ct-media-container img,
.related ul.products li.product img,
.upsells ul.products li.product img,
.wc-block-grid__product .wc-block-grid__product-image img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: auto !important;
	object-fit: cover !important;
	object-position: center center !important;
	background: #fff !important;
}

.aa-origin {
	position: absolute;
	z-index: 3;
	top: 10px;
	inset-inline-end: 10px;
	padding: 2px 8px;
	border: 1px solid var(--aa-ink);
	border-radius: 999px;
	background: var(--aa-white);
	color: #111414;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.01em;
}

.aa-loop-blurb {
	display: block;
	max-width: 100%;
	min-height: 1.3em;
	margin: 0 12px 8px;
	overflow: hidden;
	color: var(--aa-grey);
	font-size: 0.95rem;
	font-weight: 400;
	line-height: 1.3;
	text-align: center;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.aa-loop-blurb.is-empty {
	display: none;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .star-rating,
.wc-block-grid__product .wc-block-grid__product-title,
.wc-block-grid__product .wc-block-grid__product-price {
	text-align: center;
}

.woocommerce ul.products li.product .star-rating,
.wc-block-grid__product .star-rating {
	margin-left: auto;
	margin-right: auto;
}

.woocommerce ul.products li.product .tagged_as,
.woocommerce ul.products li.product .tag-links,
.woocommerce ul.products li.product .product_tag,
.woocommerce ul.products li.product .entry-meta,
[data-products] .entry-meta,
[data-products] .product .ct-product-brands,
[data-products] .product .posted_in,
.wc-block-grid__product .wc-block-components-product-summary .wp-block-post-terms,
.wc-block-grid__product .wc-block-grid__product-taxonomy {
	display: none !important;
}

@media (min-width: 1000px) {
	.woocommerce ul.products,
	.woocommerce ul.products[data-products],
	.woocommerce ul.products[data-products].columns-2,
	.woocommerce ul.products[data-products].columns-3,
	.woocommerce ul.products[data-products].columns-4,
	.woocommerce ul.products[data-products].columns-5,
	.woocommerce ul.products[data-products].columns-6,
	[data-products].columns-2,
	[data-products].columns-3,
	[data-products].columns-4,
	[data-products].columns-5,
	[data-products].columns-6 {
		--shop-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
		grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
	}
}

.aa-stock-more {
	margin: 16px 0 0;
}

.aa-quad {
	display: flex;
	flex-direction: column;
	gap: 4px;
	width: 100%;
	background: var(--aa-white);
}

.aa-quad-panel {
	position: relative;
	display: block;
	min-height: 248px;
	overflow: hidden;
	color: var(--aa-white);
	text-decoration: none;
}

.aa-quad-hit {
	position: absolute;
	inset: 0;
	z-index: 4;
	display: block;
	color: inherit;
	text-decoration: none;
}

.aa-quad-both {
	position: absolute;
	z-index: 6;
	right: 16px;
	bottom: 18px;
	display: inline-flex;
	align-items: center;
	min-height: 48px;
	padding: 8px 14px;
	background: var(--aa-teal-deep);
	color: var(--aa-white);
	font-weight: 700;
	text-decoration: none;
}

.aa-quad-both:hover,
.aa-quad-both:focus-visible {
	background: var(--aa-ink);
	color: var(--aa-white);
}

@media (min-width: 768px) {
	.aa-quad-both {
		opacity: 0;
	}

	.aa-quad-panel:hover .aa-quad-both,
	.aa-quad-panel:focus-within .aa-quad-both {
		opacity: 1;
	}
}

.aa-quad-panel:hover,
.aa-quad-panel:focus-visible {
	color: var(--aa-white);
}

.aa-quad-media,
.aa-quad-media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aa-quad-media img {
	max-width: none;
	filter: saturate(1.05) brightness(1.08);
}

.aa-quad-foods .aa-quad-media img {
	object-position: center 42%;
	filter: brightness(1.32) saturate(1.12) contrast(1.05);
}

.aa-quad-split .aa-quad-media {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr;
	gap: 8px;
	background: var(--aa-white);
}

.aa-quad-split .aa-quad-media img {
	position: relative;
	inset: auto;
	width: 100%;
	height: 100%;
	min-height: 0;
	object-fit: cover;
	object-position: center center;
}

.aa-quad-panel:nth-child(2) .aa-quad-media img {
	filter: saturate(1.05) brightness(1.08);
}

.aa-quad-panel:nth-child(4) .aa-quad-media img {
	filter: saturate(0.95) brightness(1.42) contrast(0.96);
}

.aa-quad-panel::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(17, 20, 20, 0.05) 0%, rgba(17, 20, 20, 0.2) 42%, rgba(17, 20, 20, 0.88) 100%);
}

.aa-quad-panel::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 78%;
	z-index: 2;
	pointer-events: none;
	background: linear-gradient(180deg, transparent 0%, rgba(17, 20, 20, 0.72) 42%, rgba(17, 20, 20, 0.96) 100%);
}

.aa-quad-foods::before {
	background: linear-gradient(180deg, rgba(17, 20, 20, 0) 0%, rgba(17, 20, 20, 0.04) 58%, rgba(17, 20, 20, 0.42) 100%);
}

.aa-quad-foods::after {
	height: 46%;
	background: linear-gradient(180deg, rgba(17, 20, 20, 0) 0%, rgba(17, 20, 20, 0.22) 48%, rgba(17, 20, 20, 0.58) 100%);
}

@media (max-width: 767px) {
	.aa-quad-panel {
		min-height: 340px;
	}

	.aa-quad-panel::before {
		background: linear-gradient(180deg, rgba(17, 20, 20, 0.08) 0%, rgba(17, 20, 20, 0.45) 48%, rgba(17, 20, 20, 0.94) 100%);
	}

	.aa-quad-panel::after {
		height: 88%;
		background: linear-gradient(180deg, transparent 0%, rgba(17, 20, 20, 0.78) 38%, rgba(17, 20, 20, 0.97) 100%);
	}

	.aa-quad-foods::before {
		background: linear-gradient(180deg, rgba(17, 20, 20, 0) 0%, rgba(17, 20, 20, 0.06) 52%, rgba(17, 20, 20, 0.4) 100%);
	}

	.aa-quad-foods::after {
		height: 50%;
		background: linear-gradient(180deg, rgba(17, 20, 20, 0) 0%, rgba(17, 20, 20, 0.24) 46%, rgba(17, 20, 20, 0.58) 100%);
	}

	.aa-quad-copy {
		bottom: 18px;
	}
}

.aa-quad-label {
	position: absolute;
	z-index: 3;
	top: 50%;
	left: 10px;
	display: flex;
	align-items: center;
	writing-mode: vertical-rl;
	transform: translateY(-50%) rotate(180deg);
	padding: 32px 13px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--aa-ink) 78%, transparent);
	font-size: 0.9rem;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: none;
	white-space: nowrap;
}

.aa-quad-copy {
	position: absolute;
	z-index: 3;
	left: 52px;
	right: 16px;
	bottom: 14px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	text-shadow: 0 1px 2px rgba(17, 20, 20, 0.65);
}

.aa-quad-title {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.2;
}

.aa-quad-text {
	font-weight: 400;
}

.aa-tiles {
	padding: 28px 0;
	background: var(--aa-white);
}

.aa-tiles-row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
}

.aa-tile {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 4px;
	min-height: 240px;
	padding: 16px;
	color: var(--aa-white);
	text-decoration: none;
	position: relative;
	overflow: hidden;
	background: var(--aa-ink);
	transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.aa-tile-media,
.aa-tile-media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aa-tile-media img {
	transition: transform 0.4s ease;
}

.aa-tile-shade {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(17, 20, 20, 0.2) 0%, rgba(17, 20, 20, 0.62) 42%, rgba(17, 20, 20, 0.94) 100%);
	transition: background 0.28s ease;
}

.aa-tile > * {
	position: relative;
	z-index: 2;
}

.aa-tile > .aa-tile-media,
.aa-tile > .aa-tile-shade {
	position: absolute;
	z-index: 0;
}

.aa-tile > .aa-tile-shade {
	z-index: 1;
}

.aa-tile:hover,
.aa-tile:focus-visible,
.aa-tile-social:focus-within {
	transform: translateY(-6px);
	color: var(--aa-white);
	box-shadow: 0 16px 28px rgba(17, 20, 20, 0.22);
}

.aa-tile:hover .aa-tile-shade,
.aa-tile:focus-visible .aa-tile-shade,
.aa-tile-social:focus-within .aa-tile-shade {
	background: linear-gradient(180deg, rgba(0, 124, 128, 0.18) 0%, rgba(0, 124, 128, 0.55) 48%, rgba(0, 92, 96, 0.9) 100%);
}

.aa-tile:hover .aa-tile-media img,
.aa-tile:focus-visible .aa-tile-media img,
.aa-tile-social:focus-within .aa-tile-media img {
	transform: scale(1.06);
}

.aa-tile:focus-visible,
.aa-tile-social a:focus-visible {
	outline: 3px solid var(--aa-teal);
	outline-offset: 3px;
}

.aa-tile-title {
	font-size: 1.2rem;
	font-weight: 700;
}

.aa-tile-text {
	margin-top: 0;
	color: var(--aa-white);
	font-weight: 400;
}

.aa-tile-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 8px;
	width: 100%;
	align-items: center;
	padding: 0;
	list-style: none;
}

.aa-tile-social .aa-tile-title {
	margin-top: 6px;
}

.aa-tile-social .aa-tile-text {
	margin-top: 12px;
}

.aa-tile-social .aa-social a {
	background: transparent;
	border: 3px solid var(--aa-teal);
	color: var(--aa-white);
	transition: transform 0.25s ease, background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.aa-tile-social .aa-soc-icon {
	width: 22px;
	height: 22px;
}

.aa-tile-social .aa-social a:hover,
.aa-tile-social .aa-social a:focus-visible {
	background: var(--aa-teal-deep);
	border-color: var(--aa-teal-deep);
	color: var(--aa-white);
	transform: translateY(-4px);
}

.aa-found {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 780px;
	padding: 72px 0;
	overflow: hidden;
	background: var(--aa-ink);
	color: var(--aa-white);
	isolation: isolate;
}

.aa-found-photo {
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: 32% 46%;
	filter: brightness(1.2) contrast(1.04) saturate(1.06);
}

.aa-found-shade {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: radial-gradient(ellipse at center, rgba(17, 20, 20, 0.42) 0%, rgba(17, 20, 20, 0.22) 58%, rgba(17, 20, 20, 0.12) 100%);
}

.aa-found-inner {
	position: relative;
	z-index: 2;
	display: grid;
	gap: 28px;
	align-items: center;
	width: min(1120px, calc(100% - 32px));
}

.aa-found-copy {
	position: relative;
	z-index: 1;
	max-width: 40rem;
}

.aa-found-copy h2,
.aa-found-copy p {
	text-shadow: 0 1px 2px rgba(17, 20, 20, 0.85), 0 10px 28px rgba(17, 20, 20, 0.55);
}

.aa-found-copy h2 {
	margin: 0 0 8px;
	color: var(--aa-white);
	font-size: 1.6rem;
}

.aa-found-copy p {
	margin: 0 0 16px;
	max-width: 36rem;
	color: var(--aa-white);
	font-weight: 400;
}

.aa-found .aa-badges {
	margin-top: 0;
}

.aa-found .aa-badges img {
	height: 124px;
}

.aa-keeper .aa-card-title {
	font-size: 1.45rem;
	line-height: 1.25;
	margin-top: 14px;
}

.aa-keeper .aa-card-meta {
	font-size: 1.15rem;
	margin-bottom: 18px;
}

.aa-keeper .aa-card-row {
	scroll-snap-type: x mandatory;
	scrollbar-color: var(--aa-teal) var(--aa-ink);
}

@media (min-width: 768px) {
	.aa-card-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aa-keeper .aa-card-row {
		display: flex;
		gap: 16px;
		overflow-x: auto;
		padding-bottom: 10px;
	}

	.aa-keeper .aa-card {
		flex: 0 0 240px;
		scroll-snap-align: start;
	}

	.aa-quad {
		display: grid;
		grid-template-columns: repeat(5, minmax(0, 1fr));
		min-height: 480px;
		align-items: stretch;
		transition: grid-template-columns 0.35s ease;
	}

	.aa-quad-panel {
		min-height: 480px;
		min-width: 0;
	}

	.aa-quad-panel::after {
		display: none;
	}

	.aa-quad-panel:hover::before,
	.aa-quad-panel:focus-visible::before {
		background: linear-gradient(180deg, rgba(17, 20, 20, 0.05) 18%, rgba(17, 20, 20, 0.78) 100%);
	}

	.aa-quad-panel:hover .aa-quad-media img,
	.aa-quad-panel:focus-visible .aa-quad-media img {
		filter: brightness(0.92) saturate(1.02);
	}

	.aa-quad:has(.aa-quad-panel:nth-child(1):hover),
	.aa-quad:has(.aa-quad-panel:nth-child(1):focus-visible) {
		grid-template-columns: 2.6fr 0.7fr 0.7fr 0.7fr 0.7fr;
	}

	.aa-quad:has(.aa-quad-panel:nth-child(2):hover),
	.aa-quad:has(.aa-quad-panel:nth-child(2):focus-visible) {
		grid-template-columns: 0.7fr 2.6fr 0.7fr 0.7fr 0.7fr;
	}

	.aa-quad:has(.aa-quad-panel:nth-child(3):hover),
	.aa-quad:has(.aa-quad-panel:nth-child(3):focus-visible) {
		grid-template-columns: 0.7fr 0.7fr 2.6fr 0.7fr 0.7fr;
	}

	.aa-quad:has(.aa-quad-panel:nth-child(4):hover),
	.aa-quad:has(.aa-quad-panel:nth-child(4):focus-visible) {
		grid-template-columns: 0.7fr 0.7fr 0.7fr 2.6fr 0.7fr;
	}

	.aa-quad:has(.aa-quad-panel:nth-child(5):hover),
	.aa-quad:has(.aa-quad-panel:nth-child(5):focus-visible) {
		grid-template-columns: 0.7fr 0.7fr 0.7fr 0.7fr 2.6fr;
	}

	.aa-quad-copy {
		opacity: 0;
	}

	.aa-quad:has(.aa-quad-panel:nth-child(1):hover) .aa-quad-panel:nth-child(1) .aa-quad-copy,
	.aa-quad:has(.aa-quad-panel:nth-child(1):focus-visible) .aa-quad-panel:nth-child(1) .aa-quad-copy,
	.aa-quad-panel:hover .aa-quad-copy,
	.aa-quad-panel:focus-visible .aa-quad-copy {
		opacity: 1;
	}

	.aa-tiles-row {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.aa-found {
		min-height: 560px;
	}

	.aa-found-inner {
		grid-template-columns: 1fr auto;
	}
}

@media (min-width: 1024px) {
	.aa-card-row {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.aa-kits .aa-card-row {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.aa-keeper .aa-card-row {
		display: flex;
		gap: 16px;
		overflow-x: auto;
		padding-bottom: 10px;
	}

	.aa-keeper .aa-card {
		flex: 0 0 calc((100% - 64px) / 5);
		min-width: 196px;
		scroll-snap-align: start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-mode-thumb,
	.aa-quad,
	.aa-quad-copy,
	.aa-quad-media img,
	.aa-tile,
	.aa-tile,
	.aa-tile-shade,
	.aa-tile-media img,
	.aa-tile-social .aa-social a {
		transition: none;
	}

	.aa-tile:hover,
	.aa-tile:focus-visible,
	.aa-tile-social:focus-within,
	.aa-tile-social .aa-social a:hover,
	.aa-tile-social .aa-social a:focus-visible,
	.aa-tile:hover .aa-tile-media img,
	.aa-tile:focus-visible .aa-tile-media img,
	.aa-tile-social:focus-within .aa-tile-media img {
		transform: none;
	}

	.aa-switch-knob,
	.aa-switch-fill {
		transition: none;
	}
}

.aa-view-landing .aa-header-mode {
	display: none;
}

.aa-view-landing .aa-hero {
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-end;
}

.aa-view-landing .aa-choose-line {
	display: block;
	position: relative;
	z-index: 3;
	width: max-content;
	max-width: calc(100% - 24px);
	margin: 0 auto 10px;
	text-align: center;
}

.aa-switch-slot {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: min(1120px, calc(100% - 32px));
	margin: 8px auto 36px;
}

.aa-switch {
	--aa-knob: 108px;
	--aa-track: 78px;
	--aa-shift: 52px;
	--aa-track-grey: #e6e7e7;
	position: relative;
	display: grid;
	grid-template-columns: 1fr var(--aa-knob) 1fr;
	align-items: center;
	width: min(720px, calc(100vw - 24px));
	height: var(--aa-knob);
	margin: 0 auto;
	color: var(--aa-ink);
}

.aa-switch-track {
	position: absolute;
	z-index: 0;
	left: 0;
	right: 0;
	top: 50%;
	height: var(--aa-track);
	transform: translateY(-50%);
	border-radius: 999px;
	background: var(--aa-track-grey);
	overflow: hidden;
	pointer-events: none;
}

.aa-switch-fill {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 0;
	background: var(--aa-teal);
	transition: left 0.45s ease, width 0.45s ease;
}

.aa-switch[data-current="new"] .aa-switch-fill {
	left: 0;
	width: calc(50% - var(--aa-shift));
}

.aa-switch[data-current="keeper"] .aa-switch-fill {
	left: calc(50% + var(--aa-shift));
	width: calc(50% - var(--aa-shift));
}

.aa-switch-knob {
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--aa-knob);
	height: var(--aa-knob);
	border-radius: 50%;
	background: var(--aa-teal);
	border: 4px solid var(--aa-white);
	box-shadow: 0 6px 16px rgba(17, 20, 20, 0.16);
	transform: translate(-50%, -50%);
	pointer-events: none;
	transition: transform 0.45s ease, background-color 0.45s ease;
}

.aa-switch[data-current="new"] .aa-switch-knob {
	background: var(--aa-white);
	border-color: var(--aa-white);
	box-shadow: 0 0 0 1px rgba(17, 20, 20, 0.16), 0 6px 16px rgba(17, 20, 20, 0.16);
	transform: translate(calc(-50% - var(--aa-shift)), -50%);
}

.aa-switch[data-current="keeper"] .aa-switch-knob {
	background: var(--aa-white);
	border-color: var(--aa-white);
	box-shadow: 0 0 0 1px rgba(17, 20, 20, 0.16), 0 6px 16px rgba(17, 20, 20, 0.16);
	transform: translate(calc(-50% + var(--aa-shift)), -50%);
}

.aa-switch-knob .aa-house {
	display: block;
	width: 46%;
	height: 46%;
	color: var(--aa-ink);
}

.aa-switch-opt {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: var(--aa-knob);
	padding: 8px 16px;
	color: var(--aa-ink);
	font-weight: 700;
	font-size: 1.2rem;
	line-height: 1.15;
	text-align: center;
	text-decoration: none;
}

.aa-switch-opt:hover,
.aa-switch-opt:focus-visible {
	color: var(--aa-ink);
}

.aa-switch[data-current="new"] .aa-switch-opt[data-home="new"],
.aa-switch[data-current="new"] .aa-switch-opt[data-home="new"]:hover,
.aa-switch[data-current="new"] .aa-switch-opt[data-home="new"]:focus-visible,
.aa-switch[data-current="keeper"] .aa-switch-opt[data-home="keeper"],
.aa-switch[data-current="keeper"] .aa-switch-opt[data-home="keeper"]:hover,
.aa-switch[data-current="keeper"] .aa-switch-opt[data-home="keeper"]:focus-visible {
	color: var(--aa-ink);
}

.aa-switch-opt[data-home="new"] {
	padding-right: calc(var(--aa-shift) + 18px);
}

.aa-switch-opt[data-home="keeper"] {
	padding-left: calc(var(--aa-shift) + 18px);
}

.aa-switch-text {
	position: relative;
	z-index: 1;
}

.aa-switch-opt:focus-visible {
	z-index: 3;
	outline: 3px solid var(--aa-ink);
	outline-offset: 2px;
}

.aa-switch-home {
	min-width: var(--aa-knob);
}

.aa-switch-small {
	--aa-knob: 52px;
	--aa-track: 36px;
	--aa-shift: 18px;
	width: min(320px, 100%);
}

.aa-switch-small .aa-switch-opt {
	padding: 4px 10px;
	font-size: 0.95rem;
	white-space: nowrap;
}

.aa-header-mode .aa-switch-small {
	margin: 0 auto;
}

.aa-begin h1,
.aa-begin h2,
.aa-why h3,
.aa-timeline h3,
.aa-compare h3,
.aa-kit-name {
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	font-weight: 600;
	font-style: normal;
	letter-spacing: 0;
	text-transform: none;
	line-height: 1.2;
}

.aa-easy h3,
.aa-accent {
	font-family: Allura, "Allura Fallback", cursive;
	font-weight: 400;
	line-height: 1.15;
}

.aa-begin h2 {
	margin: 0 0 16px;
	color: var(--aa-ink);
	font-size: 1.75rem;
}

.aa-why,
.aa-contents,
.aa-reasons,
.aa-choose,
.aa-which {
	background: var(--aa-white);
	padding: 56px 0;
}

.aa-easy,
.aa-timeline-block,
.aa-begin-close {
	padding: 56px 0;
}

.aa-begin-close {
	background: var(--aa-mist);
}

.aa-begin-hero {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: 520px;
	color: var(--aa-white);
	overflow: hidden;
	background: var(--aa-ink);
}

.aa-begin-hero img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center 40%;
}

.aa-begin-hero-shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(17, 20, 20, 0.05) 15%, rgba(17, 20, 20, 0.82) 100%);
}

.aa-begin-hero-copy {
	position: relative;
	z-index: 1;
	width: min(1120px, calc(100% - 48px));
	max-width: none;
	padding-top: 88px;
	padding-bottom: 64px;
}

.aa-begin-hero h1 {
	margin: 0 0 8px;
	color: var(--aa-white);
	font-weight: 700;
	line-height: 1.1;
}

@media (max-width: 479px) {
	.aa-easy h3 {
		font-size: 2rem;
	}

	.aa-begin h2.aa-long-title,
	.aa-why h3.aa-long-title,
	.aa-timeline h3.aa-long-title,
	.aa-compare h3.aa-long-title,
	.aa-kit-name.aa-long-title {
		font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
		font-weight: 600;
		font-size: 1.35rem;
		line-height: 1.3;
	}

	.aa-easy h3.aa-long-title {
		font-family: Allura, "Allura Fallback", cursive;
		font-weight: 400;
		font-size: 1.7rem;
		line-height: 1.15;
	}

	.aa-kit-name.aa-long-title,
	.aa-compare h3.aa-long-title {
		font-size: 1.2rem;
		line-height: 1.25;
	}
}

.aa-begin-hero p {
	margin: 0;
	max-width: 28rem;
	color: var(--aa-white);
	font-size: 1.2rem;
}

.aa-begin-hero-action {
	margin-top: 18px;
}

.aa-why-grid,
.aa-reasons-grid,
.aa-begin-kits,
.aa-timeline {
	list-style: none;
	margin: 0;
	padding: 0;
}

.aa-why-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
}

.aa-why-grid li {
	background: var(--aa-mist);
	padding: 20px 18px 18px;
}

.aa-why-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	margin-bottom: 10px;
	border-radius: 50%;
	background: var(--aa-white);
	color: var(--aa-teal-deep);
}

.aa-why-icon svg {
	width: 32px;
	height: 32px;
}

.aa-why h3,
.aa-easy h3,
.aa-timeline h3 {
	margin: 0 0 6px;
	color: var(--aa-ink);
}

.aa-why h3 {
	font-size: 1.25rem;
}

.aa-timeline h3 {
	font-size: 1.15rem;
}

.aa-easy h3 {
	font-size: 2.25rem;
}

.aa-why p,
.aa-easy p,
.aa-timeline p,
.aa-contents-intro,
.aa-timeline-intro {
	margin: 0;
	color: var(--aa-grey);
}

.aa-trail {
	position: relative;
	margin-top: 28px;
}

.aa-trail ol {
	position: relative;
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.aa-trail li {
	position: relative;
	padding-left: 72px;
}

.aa-num {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 2px solid var(--aa-teal-deep);
	border-radius: 50%;
	background: var(--aa-white);
	color: var(--aa-teal-deep);
	font-weight: 700;
}

.aa-trail-line {
	position: absolute;
	top: 22px;
	bottom: 22px;
	left: 21px;
	z-index: 0;
	border-left: 3px dotted var(--aa-teal-deep);
}

.aa-walker {
	position: absolute;
	z-index: 3;
	top: 52px;
	left: 2px;
	width: 42px;
	height: 42px;
	color: var(--aa-teal-deep);
	background: var(--aa-mist);
	border-radius: 50%;
	animation: aa-walk-down 8s linear infinite;
}

.aa-walker svg {
	display: block;
	width: 42px;
	height: 42px;
	transform: rotate(180deg);
}

@keyframes aa-walk-down {
	from { top: 52px; }
	to { top: calc(100% - 64px); }
}

.aa-contents-intro,
.aa-timeline-intro {
	max-width: 40rem;
	margin-bottom: 20px;
	font-size: 1.1rem;
}

.aa-draw {
	position: relative;
	margin: 0;
	border: 1px solid var(--aa-line);
	background: var(--aa-white);
}

.aa-draw img {
	display: block;
	width: 100%;
	height: auto;
}

.aa-draw-pins {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 12px;
}

button.aa-pin {
	position: static;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: auto;
	min-height: 44px;
	padding: 8px 12px;
	border: 1px solid var(--aa-ink);
	border-radius: 0;
	background: var(--aa-white);
	color: var(--aa-ink);
	font-weight: 600;
}

button.aa-pin:hover,
button.aa-pin:focus-visible,
button.aa-pin[aria-pressed="true"] {
	background: var(--aa-teal-deep);
	color: var(--aa-white);
	border-color: var(--aa-teal-deep);
}

.aa-pin-dot {
	display: none;
}

.aa-pin-name {
	position: static;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.2;
}

.aa-timeline {
	display: grid;
	gap: 18px;
}

.aa-timeline li {
	padding: 4px 0 4px 18px;
	border-left: 3px dotted var(--aa-teal-deep);
}

.aa-reasons-grid {
	display: grid;
	gap: 14px;
}

.aa-reasons-grid li {
	padding: 22px 18px;
	border-top: 3px solid var(--aa-teal-deep);
	background: var(--aa-mist);
}

.aa-reasons-grid p {
	margin: 0;
	color: var(--aa-ink);
	font-size: 1.15rem;
	font-weight: 600;
	line-height: 1.4;
}

.aa-colony {
	background: var(--aa-teal-deep);
	color: var(--aa-white);
	padding: 56px 0;
}

.aa-colony h2 {
	color: var(--aa-white);
}

.aa-colony-inner {
	display: grid;
	gap: 24px;
	align-items: center;
}

.aa-colony-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.aa-colony-link {
	display: inline-flex;
	align-items: center;
	min-height: 48px;
	padding: 8px 16px;
	border: 2px solid var(--aa-white);
	color: var(--aa-white);
	font-weight: 600;
	text-decoration: none;
}

a.aa-colony-link:hover,
a.aa-colony-link:focus-visible {
	background: var(--aa-white);
	color: var(--aa-ink);
}

.aa-colony-support p {
	margin: 0 0 10px;
	font-weight: 600;
}

.aa-badge-frame {
	display: inline-block;
	padding: 10px;
	background: var(--aa-white);
}

.aa-badge-frame img {
	display: block;
	width: 112px;
	height: auto;
}

.aa-begin-kits {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
}

.aa-kit {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 12px 12px 18px;
	border: 1px solid var(--aa-line);
	background: var(--aa-white);
	color: var(--aa-ink);
	text-decoration: none;
}

.aa-kit:hover,
.aa-kit:focus-visible {
	border-color: var(--aa-teal-deep);
}

.aa-kit-photo {
	display: block;
	margin-bottom: 12px;
	background: var(--aa-mist);
	aspect-ratio: 1;
}

.aa-kit-photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.aa-kit-name {
	color: var(--aa-ink);
	font-size: 1.35rem;
}

.aa-latin {
	display: block;
	margin: 4px 0 0;
	color: var(--aa-grey);
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-style: italic;
	font-weight: 400;
	font-size: 1rem;
	line-height: 1.3;
}

.aa-kit-price {
	display: block;
	margin-top: 8px;
	color: var(--aa-teal-deep);
	font-size: 1.35rem;
	font-weight: 700;
}

.aa-addon-bar {
	margin-top: 18px;
	padding: 14px 16px;
	background: var(--aa-mist);
}

.aa-addon {
	position: relative;
	display: flex;
	align-items: center;
	gap: 12px;
	cursor: pointer;
}

.aa-addon input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.aa-addon-switch {
	position: relative;
	flex: 0 0 auto;
	width: 52px;
	height: 32px;
	border-radius: 999px;
	background: var(--aa-line);
}

.aa-addon-switch::after {
	content: "";
	position: absolute;
	top: 4px;
	left: 4px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--aa-white);
}

.aa-addon input:checked + .aa-addon-switch {
	background: var(--aa-teal-deep);
}

.aa-addon input:checked + .aa-addon-switch::after {
	transform: translateX(20px);
}

.aa-addon input:focus-visible + .aa-addon-switch {
	outline: 2px solid var(--aa-teal-deep);
	outline-offset: 3px;
}

.aa-addon-label {
	font-weight: 600;
}

.aa-gift {
	max-width: 40rem;
	margin: 12px 0 0;
	color: var(--aa-grey);
}

.aa-compare {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
}

.aa-compare article {
	padding: 22px 18px 18px;
	border: 1px solid var(--aa-line);
	background: var(--aa-white);
}

.aa-compare h3 {
	margin: 0;
	color: var(--aa-ink);
	font-size: 1.5rem;
}

.aa-compare dl {
	margin: 14px 0;
}

.aa-compare dl div {
	display: grid;
	grid-template-columns: 7rem 1fr;
	gap: 8px;
	padding: 8px 0;
	border-top: 1px solid var(--aa-line);
}

.aa-compare dt {
	font-weight: 600;
}

.aa-compare dd {
	margin: 0;
}

.aa-compare-line {
	margin: 0 0 6px;
}

.aa-compare-fit {
	margin: 12px 0 0;
	padding-top: 12px;
	border-top: 3px solid var(--aa-teal);
	font-weight: 600;
}

.aa-begin-close {
	text-align: center;
}

.aa-begin-close .aa-button {
	min-height: 56px;
	padding: 14px 28px;
	font-size: 1.1rem;
}

.aa-begin-blocks {
	padding-bottom: 48px;
}

@media (min-width: 560px) {
	.aa-why-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (min-width: 800px) {
	.aa-begin-hero {
		min-height: 560px;
	}

	.aa-why-grid {
		grid-template-columns: 1fr 1fr;
	}

	.aa-trail ol {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 28px;
		padding-top: 72px;
	}

	.aa-trail li {
		padding-left: 0;
		text-align: center;
	}

	.aa-num {
		top: -72px;
		left: 50%;
		transform: translateX(-50%);
	}

	.aa-trail-line {
		top: 21px;
		right: 16.67%;
		bottom: auto;
		left: 16.67%;
		border-top: 3px dotted var(--aa-teal-deep);
		border-left: 0;
	}

	.aa-walker {
		top: 1px;
		left: calc(33.33% - 21px);
		animation-name: aa-walk;
	}

	.aa-walker svg {
		transform: rotate(90deg);
	}

	.aa-timeline {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px;
	}

	.aa-timeline li {
		padding: 16px 8px 0 0;
		border-top: 3px dotted var(--aa-teal-deep);
		border-left: 0;
	}

	.aa-reasons-grid,
	.aa-begin-kits,
	.aa-compare {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

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

	.aa-compare {
		gap: 0;
		border: 1px solid var(--aa-line);
	}

	.aa-compare article {
		border: 0;
	}

	.aa-compare article + article {
		border-left: 1px solid var(--aa-line);
	}

	.aa-colony-inner {
		grid-template-columns: 1fr auto;
	}
}

@media (min-width: 1000px) {
	.aa-why-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.aa-draw-pins {
		position: absolute;
		inset: 0;
		display: block;
		padding: 0;
	}

	.aa-pin-dot {
		display: block;
		width: 16px;
		height: 16px;
		border: 2px solid var(--aa-teal-deep);
		border-radius: 50%;
		background: var(--aa-white);
		box-shadow: 0 0 0 6px rgba(0, 163, 168, 0.28);
	}

	button.aa-pin {
		position: absolute;
		width: 44px;
		height: 44px;
		min-height: 44px;
		padding: 0;
		border: 0;
		border-radius: 50%;
		background: transparent;
		transform: translate(-50%, -50%);
	}

	button.aa-pin:hover,
	button.aa-pin:focus-visible,
	button.aa-pin[aria-pressed="true"] {
		background: transparent;
		color: var(--aa-ink);
	}

	.aa-pin-name {
		position: absolute;
		top: 50%;
		left: 28px;
		transform: translateY(-50%);
		padding: 6px 10px;
		border: 1px solid var(--aa-ink);
		background: var(--aa-white);
		color: var(--aa-ink);
		white-space: nowrap;
	}

	.aa-pin-left .aa-pin-name {
		right: 28px;
		left: auto;
	}

	.aa-pin-above .aa-pin-name,
	.aa-pin-below .aa-pin-name {
		right: auto;
		left: 50%;
		transform: translateX(-50%);
	}

	.aa-pin-above .aa-pin-name {
		top: auto;
		bottom: 28px;
	}

	.aa-pin-below .aa-pin-name {
		top: 28px;
	}

	button.aa-pin:hover .aa-pin-name,
	button.aa-pin:focus-visible .aa-pin-name,
	button.aa-pin[aria-pressed="true"] .aa-pin-name {
		border-color: var(--aa-teal-deep);
		background: var(--aa-teal-deep);
		color: var(--aa-white);
	}
}

@keyframes aa-walk {
	from { left: calc(16.67% + 36px); }
	to { left: calc(83.33% - 56px); }
}

@media (prefers-reduced-motion: reduce) {
	.aa-walker,
	.aa-addon-switch::after {
		animation: none;
		transition: none;
	}
}

.aa-banner {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: 220px;
	max-height: 280px;
	overflow: hidden;
	color: var(--aa-white);
	background: var(--aa-ink);
}

.aa-banner img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center 42%;
}

.aa-banner-shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(17, 20, 20, 0.12) 0%, rgba(17, 20, 20, 0.72) 100%);
}

.aa-banner-copy {
	position: relative;
	z-index: 1;
	padding: 28px 0;
}

.aa-banner h1,
.aa-banner p {
	margin: 0;
	color: var(--aa-white);
}

.aa-banner p {
	margin-top: 8px;
	max-width: 36rem;
}

.aa-banner-action {
	margin-top: 14px;
}

.aa-rail {
	background: var(--aa-white);
	padding: 0 0 12px;
}

.aa-rail-intro {
	padding: 28px 0 22px;
}

.aa-rail-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
}

.aa-rail-head h2 {
	margin: 0 0 8px;
	font-size: 2rem;
}

.aa-rail-head p {
	margin: 0;
	font-size: 1.15rem;
}

.aa-rail-nav {
	display: flex;
	gap: 8px;
	flex: 0 0 auto;
}

.aa-rail-prev,
.aa-rail-next {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 2px solid var(--aa-ink);
	border-radius: 50%;
	background: var(--aa-white);
	color: var(--aa-ink);
	cursor: pointer;
}

.aa-rail-prev:hover,
.aa-rail-next:hover,
.aa-rail-prev:focus-visible,
.aa-rail-next:focus-visible {
	background: var(--aa-teal-deep);
	border-color: var(--aa-teal-deep);
	color: var(--aa-white);
}

.aa-rail-scroller {
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	margin-top: 16px;
	padding-bottom: 12px;
	scrollbar-color: var(--aa-teal-deep) var(--aa-line);
}

.aa-rail-track {
	display: flex;
	gap: 16px;
	margin: 0;
	padding: 0 24px 4px;
	list-style: none;
}

.aa-rail-track .aa-card {
	flex: 0 0 280px;
	scroll-snap-align: start;
}

.aa-rail .aa-card a {
	background: var(--aa-white);
	border: 1px solid var(--aa-line);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.aa-rail .aa-card {
	background: var(--aa-white);
	border: 1px solid var(--aa-line);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.aa-rail .aa-card a:hover,
.aa-rail .aa-card a:focus-visible {
	transform: none;
	box-shadow: none;
}

.aa-rail .aa-card:hover,
.aa-rail .aa-card:focus-within {
	transform: translateY(-8px);
	box-shadow: 0 16px 28px rgba(17, 20, 20, 0.16);
}

.aa-rail .aa-card-media {
	aspect-ratio: 1 / 1;
	background: var(--aa-white);
}

.aa-rail .aa-card-title {
	margin-top: 0;
	padding: 14px 14px 0;
	font-size: 1.2rem;
	line-height: 1.25;
	color: var(--aa-ink);
}

.aa-rail .aa-card-meta {
	margin: 0;
	padding: 6px 14px 16px;
	color: var(--aa-teal-deep);
	font-weight: 600;
}

@media (min-width: 768px) {
	.aa-tiles-pair .aa-tiles-row {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 767px) {
	.aa-switch-slot {
		width: calc(100% - 8px);
		margin-bottom: 28px;
	}

	.aa-switch-large {
		--aa-knob: 68px;
		--aa-track: 56px;
		--aa-shift: 0px;
		width: 100%;
	}

	.aa-switch-large .aa-switch-opt {
		min-height: 72px;
		padding: 10px 14px;
		font-size: 1rem;
		line-height: 1.15;
		white-space: normal;
	}

	.aa-switch-large .aa-switch-opt[data-home="new"] {
		padding-right: 16px;
	}

	.aa-switch-large .aa-switch-opt[data-home="keeper"] {
		padding-left: 16px;
	}

	.aa-switch-large .aa-switch-knob .aa-house {
		width: 48%;
		height: 48%;
	}

	.aa-switch-small {
		--aa-knob: 56px;
		--aa-track: 44px;
		--aa-shift: 14px;
		width: calc(100% - 8px);
		max-width: none;
	}

	.aa-switch-small .aa-switch-opt {
		min-height: 56px;
		padding: 8px 12px;
		font-size: 1rem;
	}

	.aa-switch-small .aa-switch-opt[data-home="new"] {
		padding-right: calc(var(--aa-shift) + 14px);
	}

	.aa-switch-small .aa-switch-opt[data-home="keeper"] {
		padding-left: calc(var(--aa-shift) + 14px);
	}

	.aa-rail-head {
		align-items: flex-start;
		flex-direction: column;
	}
}

.aa-shop-acc {
	display: flex;
	flex-direction: column;
	width: 100%;
	background: var(--aa-white);
	border-bottom: 1px solid var(--aa-line);
}

.aa-shop-tab {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 6px;
	width: 100%;
	min-height: 52px;
	margin: 0;
	padding: 12px 16px;
	border: 0;
	border-bottom: 1px solid var(--aa-line);
	border-radius: 0;
	background: var(--aa-white);
	color: var(--aa-ink);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
	white-space: nowrap;
	cursor: pointer;
}

.aa-shop-tab[aria-expanded="true"] {
	background: var(--aa-teal);
	color: var(--aa-ink);
	border-bottom-color: var(--aa-teal);
}

.aa-shop-tab.is-also {
	box-shadow: inset 4px 0 0 var(--aa-teal-deep);
}

.aa-shop-tab:hover,
.aa-shop-tab:focus-visible {
	background: var(--aa-mist);
	color: var(--aa-ink);
}

.aa-shop-tab[aria-expanded="true"]:hover,
.aa-shop-tab[aria-expanded="true"]:focus-visible {
	background: var(--aa-teal-deep);
	color: var(--aa-white);
}

.aa-shop-tab:focus-visible {
	outline: 3px solid var(--aa-ink);
	outline-offset: -3px;
}

.aa-shop-panel {
	position: relative;
	max-height: 0;
	overflow: hidden;
	background: var(--aa-ink);
	transition: max-height 0.4s ease;
}

.aa-shop-acc[data-open="queen-ants"] .aa-shop-panel[data-cat="queen-ants"],
.aa-shop-acc[data-open="nests"] .aa-shop-panel[data-cat="nests"],
.aa-shop-acc[data-open="outworlds"] .aa-shop-panel[data-cat="outworlds"],
.aa-shop-acc[data-open="foods"] .aa-shop-panel[data-cat="foods"],
.aa-shop-acc[data-open="accessories"] .aa-shop-panel[data-cat="accessories"],
.aa-shop-acc[data-open="all"] .aa-shop-panel[data-cat="all"] {
	max-height: 220px;
}

.aa-shop-panel > img {
	display: block;
	width: 100%;
	height: 220px;
	max-width: none;
	object-fit: cover;
	object-position: center;
}

.aa-shop-panel .aa-shop-foods {
	object-position: center 42%;
}

.aa-shop-shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(17, 20, 20, 0) 35%, rgba(17, 20, 20, 0.62) 100%);
	pointer-events: none;
}

.aa-shop-caption {
	position: absolute;
	z-index: 1;
	left: 12px;
	right: 12px;
	top: 8px;
	bottom: 10px;
	display: grid;
	grid-template-columns: auto minmax(0, max-content) auto;
	align-content: end;
	justify-content: start;
	align-items: center;
	column-gap: 14px;
	row-gap: 8px;
	color: var(--aa-white);
	text-shadow: 0 1px 2px rgba(17, 20, 20, 0.85);
}

.aa-shop-caption-title,
.aa-shop-caption-text,
.aa-shop-also {
	grid-row: 2;
	margin: 0;
}

.aa-shop-caption-title {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.2;
}

.aa-shop-caption-text {
	min-width: 0;
	font-weight: 400;
}

.aa-shop-also {
	color: var(--aa-white);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.aa-shop-also:hover,
.aa-shop-also:focus-visible {
	color: var(--aa-white);
}

.aa-shop-fallback {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
	padding: 12px 0;
}

.aa-store-main {
	padding-bottom: 36px;
}

.aa-store-heading {
	margin: 20px 0 0;
	font-size: 1.6rem;
}

.aa-store-description {
	max-width: 42rem;
	margin: 8px 0 0;
	color: var(--aa-grey);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}

.aa-store-description > :first-child {
	margin-top: 0;
}

.aa-store-description > :last-child {
	margin-bottom: 0;
}

.aa-store-tools {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 10px 12px;
	margin: 14px 0 18px;
}

.aa-store-field {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
	color: var(--aa-ink);
	font-size: 0.85rem;
	font-weight: 700;
}

.aa-store-search {
	flex: 1 1 220px;
}

.aa-store-tools input,
.aa-store-tools select {
	min-height: 48px;
	width: 100%;
	padding: 0 12px;
	border: 1px solid var(--aa-line);
	border-radius: 0;
	background: var(--aa-white);
	color: var(--aa-ink);
	font-size: 1rem;
	font-weight: 400;
}

.aa-store-field:not(.aa-store-search) {
	flex: 1 1 120px;
}

.aa-store-apply {
	flex: 1 1 120px;
	min-width: 120px;
}

.aa-store-empty,
.aa-store-note {
	color: var(--aa-grey);
}

.aa-store .aa-card[hidden] {
	display: none;
}

@media (min-width: 768px) {
	.aa-shop-acc {
		--aa-tab: 72px;
		display: grid;
		grid-template-columns:
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr);
		align-items: stretch;
		height: 220px;
		border-bottom: 0;
		transition: grid-template-columns 0.4s ease;
	}

	.aa-shop-acc[data-open="queen-ants"] {
		grid-template-columns:
			var(--aa-tab) minmax(0, 1fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr);
	}

	.aa-shop-acc[data-open="nests"] {
		grid-template-columns:
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 1fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr);
	}

	.aa-shop-acc[data-open="outworlds"] {
		grid-template-columns:
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 1fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr);
	}

	.aa-shop-acc[data-open="foods"] {
		grid-template-columns:
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 1fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr);
	}

	.aa-shop-acc[data-open="accessories"] {
		grid-template-columns:
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 1fr)
			var(--aa-tab) minmax(0, 0fr);
	}

	.aa-shop-acc[data-open="all"] {
		grid-template-columns:
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 0fr)
			var(--aa-tab) minmax(0, 1fr);
	}

	.aa-shop-tab {
		align-items: center;
		justify-content: center;
		width: var(--aa-tab);
		height: 220px;
		min-height: 0;
		padding: 14px 8px;
		border-bottom: 0;
		border-right: 1px solid var(--aa-line);
		writing-mode: horizontal-tb;
		transform: none;
		font-size: 0.95rem;
	}

	.aa-shop-tab > span {
		writing-mode: vertical-rl;
		transform: rotate(180deg);
	}

	.aa-shop-tab.is-also {
		box-shadow: inset 0 -4px 0 var(--aa-teal);
	}

	.aa-shop-panel {
		height: 220px;
		max-height: none;
		min-width: 0;
	}

	.aa-shop-panel > img {
		position: absolute;
		inset: 0;
		height: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-shop-acc,
	.aa-shop-panel {
		transition: none;
	}
}

body.aa-store .ct-page-title,
body.aa-store .hero-section,
body.aa-store .woocommerce-products-header {
	display: none;
}

.aa-store ul.products {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
	width: min(1120px, calc(100% - 32px));
	margin: 0 auto 28px;
	padding: 0;
	list-style: none;
}

.aa-store ul.products li.product {
	float: none;
	width: auto;
	margin: 0;
}

.aa-store-main ul.products,
.aa-store-main .aa-store-grid {
	width: auto;
	margin-left: 0;
	margin-right: 0;
}

@media (min-width: 768px) {
	.aa-store ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.aa-store ul.products {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

/* Stock WooCommerce, search, 404, and ordinary pages. No custom templates. */

.aa-page,
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce-account .woocommerce,
.woocommerce-order-received .woocommerce,
.search-results .aa-page,
.error404 .aa-page {
	width: min(1120px, calc(100% - 48px));
	margin: 28px auto 64px;
}

.single-product .woocommerce,
.single-product div.product {
	width: min(1120px, calc(100% - 48px));
	max-width: 1120px;
	margin-left: auto;
	margin-right: auto;
}

.single-product div.product {
	margin-top: 28px;
	margin-bottom: 64px;
}

.aa-page > h1,
.aa-wrap:not(.aa-hero-copy):not(.aa-banner-copy):not(.aa-begin-hero-copy) > h1 {
	margin: 0 0 16px;
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	font-weight: 700;
	font-size: 1.75rem;
	line-height: 1.2;
	color: var(--aa-ink);
}

@media (min-width: 768px) {
	.aa-page > h1,
	.aa-wrap:not(.aa-hero-copy):not(.aa-banner-copy):not(.aa-begin-hero-copy) > h1 {
		font-size: 2.35rem;
	}
}

.woocommerce .product_title,
.woocommerce-cart h1,
.woocommerce-checkout h1,
.woocommerce-account h1,
.search-results h1,
.error404 h1 {
	margin: 0 0 16px;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-weight: 600;
	font-size: clamp(1.7rem, 4vw, 2.5rem);
	line-height: 1.25;
	color: var(--aa-ink);
}

.aa-page h2,
.aa-page h3,
.aa-page h4,
.aa-page h5,
.aa-page h6 {
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	font-weight: 600;
	line-height: 1.2;
	color: var(--aa-ink);
}

.aa-page h2 {
	font-size: 1.75rem;
}

.aa-page h3 {
	font-size: 1.2rem;
}

.woocommerce h2,
.woocommerce h3,
.woocommerce h4,
.woocommerce h5,
.woocommerce h6 {
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-weight: 600;
	line-height: 1.3;
	color: var(--aa-ink);
}

.aa-page p:not(.aa-header-tagline-cy),
.aa-page li,
.woocommerce p:not(.aa-header-tagline-cy),
.woocommerce li,
.woocommerce label,
.woocommerce td,
.woocommerce th {
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
}

.single-product div.product {
	display: block;
}

.single-product div.product .woocommerce-tabs {
	float: none;
	width: auto;
	margin: 0;
	clear: both;
}

.single-product div.product .woocommerce-product-gallery img,
.single-product div.product .flexy-pills img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1 !important;
	object-fit: cover;
	background: var(--aa-mist);
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
	margin: 8px 0 16px;
	font-size: 1.35rem;
	font-weight: 700;
}

.woocommerce div.product form.cart {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 12px;
	margin: 16px 0;
}

.woocommerce div.product form.cart table.variations {
	flex: 1 0 100%;
	width: 100%;
	margin: 0 0 4px;
	border: 0;
}

.woocommerce div.product form.cart table.variations tbody,
.woocommerce div.product form.cart table.variations tr,
.woocommerce div.product form.cart table.variations th,
.woocommerce div.product form.cart table.variations td {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	text-align: left;
	background: transparent;
}

.woocommerce div.product form.cart table.variations th {
	padding-bottom: 6px;
}

.woocommerce .quantity .qty,
.woocommerce .qty,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.aa-page input[type="search"],
.aa-page input[type="text"],
.aa-page input[type="email"],
.aa-page input[type="tel"],
.aa-page textarea,
.aa-page select {
	width: 100%;
	min-height: 48px;
	padding: 10px 12px;
	border: 1px solid var(--aa-line);
	border-radius: 8px;
	background: var(--aa-white);
	color: var(--aa-ink);
	font: inherit;
}

.woocommerce .quantity .qty,
.woocommerce table .qty {
	width: 4.5rem;
	text-align: center;
}

.woocommerce form .form-row textarea,
.aa-page textarea {
	min-height: 120px;
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.single_add_to_cart_button,
.woocommerce #respond input#submit,
.woocommerce #payment #place_order,
.aa-page .aa-button,
.aa-page button {
	border-radius: 8px;
}

.woocommerce table.shop_table img {
	width: 72px;
	height: 72px;
	margin-right: 12px;
	object-fit: cover;
	vertical-align: middle;
}

.woocommerce table.shop_table td.product-name {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
}

.woocommerce table.shop_table td.product-name img {
	margin-right: 0;
}

.woocommerce table.shop_table td.product-name > a:last-child {
	flex: 1 1 8rem;
}

.woocommerce .quantity label {
	display: block;
	margin-bottom: 6px;
	font-weight: 600;
}

.woocommerce #payment #place_order,
.woocommerce .cart_totals .button {
	width: 100%;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-notice {
	margin: 0 0 20px;
	padding: 14px 16px;
	border: 1px solid var(--aa-line);
	border-left: 4px solid var(--aa-teal-deep);
	border-radius: 8px;
	background: var(--aa-mist);
	color: var(--aa-ink);
	list-style: none;
}

.woocommerce-error {
	border-left-color: var(--aa-ink);
	background: var(--aa-white);
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
	content: none;
}

.woocommerce table.shop_table {
	width: 100%;
	margin: 0 0 24px;
	border: 1px solid var(--aa-line);
	border-collapse: collapse;
	border-radius: 8px;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td,
.aa-page table th,
.aa-page table td {
	padding: 12px 14px;
	border-bottom: 1px solid var(--aa-line);
	text-align: left;
	vertical-align: middle;
}

.woocommerce table.shop_table thead th,
.aa-page table thead th {
	background: var(--aa-mist);
	font-weight: 600;
}

.aa-page table {
	width: 100%;
	border: 1px solid var(--aa-line);
	border-collapse: collapse;
}

.woocommerce .cart_totals,
.woocommerce-checkout-review-order,
#add_payment_method #payment,
.woocommerce-checkout #payment {
	margin-top: 8px;
	padding: 16px;
	border: 1px solid var(--aa-line);
	border-radius: 8px;
	background: var(--aa-white);
}

.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-address-fields__field-wrapper {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0 16px;
}

.woocommerce form .form-row {
	float: none;
	width: auto;
	margin: 0 0 16px;
	padding: 0;
}

.woocommerce form .form-row label {
	display: block;
	margin-bottom: 6px;
	font-weight: 600;
}

.woocommerce form .required {
	color: var(--aa-teal-deep);
	text-decoration: none;
}

.woocommerce-checkout .col2-set,
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
	float: none;
	width: auto;
}

.wc_payment_methods {
	list-style: none;
	margin: 0 0 16px;
	padding: 0;
}

.wc_payment_methods li {
	margin: 0 0 10px;
}

img[alt="PayPal"],
img[src*="paypal" i],
img[src*="PayPal"],
.wc-block-components-payment-method-icon--paypal,
.payment_method_paypal img,
.payment_method_ppcp-gateway img[src*="paypal" i],
.paypal-buttons,
.paypal-button-container,
.ppc-button-wrapper {
	display: none !important;
}

.payment_box {
	margin-top: 8px;
	padding: 12px;
	border-radius: 8px;
	background: var(--aa-mist);
}

.woocommerce-MyAccount-navigation ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 0 0 24px;
	padding: 0;
}

.woocommerce-MyAccount-navigation a {
	display: inline-flex;
	align-items: center;
	min-height: 48px;
	padding: 8px 14px;
	border: 1px solid var(--aa-line);
	border-radius: 8px;
	text-decoration: none;
}

.woocommerce-MyAccount-navigation .is-active a {
	background: var(--aa-teal-deep);
	border-color: var(--aa-teal-deep);
	color: var(--aa-white);
}

.woocommerce-tabs {
	grid-column: 1 / -1;
	--tab-background: #1fc8d4;
	--tab-text-color: #111414;
	--theme-link-active-color: #111414;
	--theme-link-hover-color: #111414;
}

.woocommerce-tabs ul.tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 8px 0 12px;
	padding: 0;
}

.woocommerce-tabs ul.tabs::before,
.woocommerce-tabs ul.tabs li::before,
.woocommerce-tabs ul.tabs li::after {
	content: none;
}

.woocommerce-tabs ul.tabs a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce-tabs[data-type] ul.tabs li a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 8px 14px;
	border: 1px solid var(--aa-line);
	border-radius: 8px;
	background: var(--aa-white) !important;
	font-weight: 500;
	text-decoration: none;
	box-shadow: none;
}

.woocommerce-tabs ul.tabs a,
.woocommerce-tabs ul.tabs a span,
.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a span {
	color: var(--aa-ink) !important;
	font-size: 1rem !important;
	line-height: 1.2 !important;
	text-indent: 0 !important;
	visibility: visible !important;
	opacity: 1 !important;
	overflow: visible !important;
}

.woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs[data-type] ul.tabs li.active a,
.woocommerce-tabs ul.tabs li.active a:hover,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a:hover,
.woocommerce-tabs[data-type] ul.tabs li.active a:hover {
	background: var(--aa-teal) !important;
	border-color: var(--aa-teal) !important;
	font-weight: 700;
}

.woocommerce-tabs ul.tabs li.active::before,
.woocommerce-tabs ul.tabs li.active::after,
.woocommerce-tabs[data-type] ul.tabs li::before,
.woocommerce-tabs[data-type] ul.tabs li::after,
.woocommerce-tabs[data-type] ul.tabs::before,
.woocommerce-tabs[data-type] ul.tabs::after {
	content: none !important;
	display: none !important;
}

.woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.tabs li.active a span,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a span,
.woocommerce-tabs ul.tabs a:hover,
.woocommerce-tabs ul.tabs a:hover span {
	color: var(--aa-ink) !important;
}

.woocommerce-Tabs-panel--description p,
#tab-description p {
	margin: 0 0 0.65em;
}

.woocommerce-Tabs-panel--description p:last-child,
#tab-description p:last-child {
	margin-bottom: 0;
}

.woocommerce-Tabs-panel--description p:empty,
#tab-description p:empty,
.woocommerce-Tabs-panel--description p:has(> br:only-child),
#tab-description p:has(> br:only-child) {
	display: none;
	margin: 0;
	padding: 0;
}

.woocommerce-Tabs-panel--description br + br,
#tab-description br + br {
	display: none;
}

.woocommerce #reviews #comments ol.commentlist {
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce #reviews #comments ol.commentlist li {
	margin: 0 0 16px;
	padding: 16px;
	background: var(--aa-mist);
	border-radius: 8px;
}

.woocommerce #reviews #comments ol.commentlist li .comment-text {
	margin: 0;
	padding: 0;
	border: 0;
}

.woocommerce #reviews .star-rating {
	float: none;
	margin: 0 0 8px;
}

.woocommerce #reviews .meta {
	color: var(--aa-ink);
}

.woocommerce #reviews .verified,
.woocommerce #reviews .woocommerce-review__verified {
	color: var(--aa-teal-deep);
	font-weight: 700;
}

.aa-release {
	margin: 4px 0 0;
	padding: 14px 16px;
	background: var(--aa-mist);
	border-left: 4px solid var(--aa-teal);
	color: var(--aa-ink);
}

.aa-release a {
	color: var(--aa-teal-deep);
	font-weight: 700;
}

.aa-product-cats,
.single-product div.product .related,
.single-product div.product .upsells {
	grid-column: 1 / -1;
}

.aa-product-cats {
	margin: 8px 0 0;
	text-align: center;
	color: var(--aa-ink);
}

.single-product div.product > .onsale {
	position: absolute;
}

.single-product .entry-summary .tagged_as,
.single-product .entry-summary .posted_in,
.single-product .entry-summary .brand_wrapper,
.single-product .summary .tagged_as,
.single-product .summary .posted_in,
.single-product .summary .brand_wrapper,
.single-product .summary .pwb-single-product-brands,
.single-product .summary .wc-brand-list,
.single-product .summary .product-brand,
.single-product .ct-product-brands,
.single-product .ct-product-brands-single,
.single-product .entry-summary .ct-product-brands,
.single-product .product-entry-wrapper .ct-product-brands-single {
	display: none !important;
}

.aa-swatch-native {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.woocommerce .star-rating,
.woocommerce .star-rating span {
	color: var(--aa-teal-deep);
}

.aa-results {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 16px;
}

.aa-results a {
	display: grid;
	grid-template-columns: 88px 1fr;
	gap: 14px;
	align-items: center;
	padding: 12px;
	border: 1px solid var(--aa-line);
	border-radius: 8px;
	color: var(--aa-ink);
	text-decoration: none;
}

.aa-results img {
	width: 88px;
	height: 88px;
	object-fit: cover;
	background: var(--aa-mist);
}

.aa-results strong {
	display: block;
	font-size: 1.05rem;
}

.aa-page .aa-search {
	display: flex;
	gap: 8px;
	margin-top: 16px;
}

.aa-page .aa-search input[type="search"] {
	flex: 1 1 auto;
	border-right: 1px solid var(--aa-line);
}

@media (max-width: 479px) {
	.aa-page .aa-search {
		flex-direction: column;
		align-items: stretch;
	}

	.aa-page .aa-search button {
		width: 100%;
	}
}

@media (max-width: 699px) {
	.woocommerce table.shop_table thead,
	.woocommerce table.shop_table tbody th,
	.woocommerce table.shop_table tfoot th {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
	}

	.woocommerce table.shop_table,
	.woocommerce table.shop_table tbody,
	.woocommerce table.shop_table tfoot,
	.woocommerce table.shop_table tr,
	.woocommerce table.shop_table td {
		display: block;
		width: 100%;
	}

	.woocommerce table.shop_table tr {
		position: relative;
		border-bottom: 1px solid var(--aa-line);
		padding: 8px 0;
	}

	.woocommerce table.shop_table td {
		border: 0;
		padding: 6px 14px;
	}

	.woocommerce table.shop_table td::before {
		content: attr(data-title);
		display: block;
		font-weight: 600;
	}

	.woocommerce table.shop_table td.product-name::before {
		flex-basis: 100%;
	}
}

@media (min-width: 900px) {
	.woocommerce-cart .woocommerce,
	.woocommerce-checkout form.checkout {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(280px, 0.72fr);
		gap: 28px 36px;
		align-items: start;
	}

	.woocommerce-cart .woocommerce > h1,
	.woocommerce-cart .woocommerce > .woocommerce-message {
		grid-column: 1 / -1;
	}

	.woocommerce-checkout form.checkout > .col2-set {
		grid-column: 1;
		grid-row: 1 / span 4;
	}

	.woocommerce-checkout form.checkout > h2,
	.woocommerce-checkout form.checkout > .woocommerce-checkout-review-order {
		grid-column: 2;
	}
}

@media (min-width: 700px) {
	.woocommerce-billing-fields__field-wrapper,
	.woocommerce-shipping-fields__field-wrapper,
	.woocommerce-address-fields__field-wrapper {
		grid-template-columns: 1fr 1fr;
	}

	.woocommerce form .form-row-wide {
		grid-column: 1 / -1;
	}
}

.single-product .product-entry-wrapper,
.single-product .product-entry-wrapper.is-width-constrained {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	gap: 28px 40px;
	align-items: start;
	--theme-container-width: 100%;
	--theme-block-max-width: none;
	--product-gallery-width: 50%;
	width: 100% !important;
	max-width: none !important;
	margin-inline: 0 !important;
	float: none !important;
}

.single-product .product-entry-wrapper > .woocommerce-product-gallery,
.single-product .product-entry-wrapper > .entry-summary,
.single-product .product-entry-wrapper > .summary,
.single-product div.product > .woocommerce-product-gallery,
.single-product div.product > .summary,
.single-product div.product > .entry-summary {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	margin-inline: 0 !important;
}

.single-product .woocommerce-product-gallery .ct-media-container,
.single-product .woocommerce-product-gallery .flexy-item,
.single-product .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery img,
.single-product .flexy-pills img,
.single-product .flexy-pills .ct-media-container {
	aspect-ratio: 1 / 1 !important;
}

.single-product .woocommerce-product-gallery img,
.single-product .flexy-pills img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media (min-width: 782px) {
	.single-product .product-entry-wrapper,
	.single-product .product-entry-wrapper.is-width-constrained,
	.single-product div.product:not(:has(.product-entry-wrapper)) {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
	}

	.single-product div.product:not(:has(.product-entry-wrapper)) {
		display: grid;
		align-items: start;
		gap: 28px 40px;
	}

	.single-product div.product:not(:has(.product-entry-wrapper)) > .woocommerce-product-gallery,
	.single-product div.product:not(:has(.product-entry-wrapper)) > .images {
		grid-column: 1;
		grid-row: 1;
	}

	.single-product div.product:not(:has(.product-entry-wrapper)) > .summary,
	.single-product div.product:not(:has(.product-entry-wrapper)) > .entry-summary {
		grid-column: 2;
		grid-row: 1;
	}

	.single-product div.product:not(:has(.product-entry-wrapper)) > .woocommerce-tabs,
	.single-product div.product:not(:has(.product-entry-wrapper)) > .related,
	.single-product div.product:not(:has(.product-entry-wrapper)) > .upsells,
	.single-product div.product:not(:has(.product-entry-wrapper)) > .aa-product-cats {
		grid-column: 1 / -1;
	}

	.single-product .product-entry-wrapper > .woocommerce-product-gallery,
	.single-product .product-entry-wrapper > .images {
		grid-column: 1 !important;
		grid-row: 1 !important;
	}

	.single-product .product-entry-wrapper > .summary,
	.single-product .product-entry-wrapper > .entry-summary {
		grid-column: 2 !important;
		grid-row: 1 !important;
	}
}

@media (max-width: 781px) {
	.single-product .product-entry-wrapper > .woocommerce-product-gallery,
	.single-product .product-entry-wrapper > .images,
	.single-product .product-entry-wrapper > .summary,
	.single-product .product-entry-wrapper > .entry-summary {
		grid-column: 1 / -1 !important;
		width: 100% !important;
	}
}

@media (min-width: 800px) {

	.woocommerce-account .woocommerce-MyAccount-navigation {
		float: none;
		width: 220px;
	}

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

	.woocommerce-account .woocommerce > h1,
	.woocommerce-account .woocommerce > .woocommerce-message,
	.woocommerce-account .woocommerce > .woocommerce-notices-wrapper {
		grid-column: 1 / -1;
	}

	.woocommerce-MyAccount-navigation ul {
		flex-direction: column;
	}
}

.aa-search button,
.aa-search button:hover {
	background: transparent;
	color: var(--aa-ink);
}

.aa-shop-tab {
	gap: 8px;
	font-size: 1.05rem;
}

.aa-shop-subs {
	position: static;
	z-index: 2;
	grid-column: 1 / -1;
	grid-row: 1;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 8px;
	max-width: 100%;
	margin: 0;
}

.aa-shop-sub {
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2px;
	width: 72px;
	height: 72px;
	padding: 6px;
	border-radius: 50%;
	background: var(--aa-white);
	color: var(--aa-ink);
	font-size: 0.68rem;
	font-weight: 700;
	line-height: 1.05;
	text-align: center;
	text-decoration: none;
	text-shadow: none;
	box-shadow: 0 4px 14px rgba(17, 20, 20, 0.22);
}

.aa-shop-sub.is-on,
.aa-shop-sub[aria-current="true"] {
	background: var(--aa-teal);
}

.aa-shop-sub.has-art,
.aa-shop-sub.has-art.is-on,
.aa-shop-sub.has-art[aria-current="true"] {
	padding: 0;
	background: transparent;
	box-shadow: none;
	overflow: hidden;
}

.aa-shop-sub.has-art.is-on,
.aa-shop-sub.has-art[aria-current="true"] {
	box-shadow: 0 0 0 3px var(--aa-teal);
}

.aa-shop-sub-art {
	display: block;
	width: 72px;
	height: 72px;
	object-fit: cover;
	border-radius: 50%;
}

.aa-shop-icon {
	width: 22px;
	height: 22px;
	flex: 0 0 auto;
}

.aa-shop-icon-img {
	display: block;
	width: 36px;
	height: 36px;
	object-fit: contain;
	flex: 0 0 auto;
}

.aa-show-more {
	display: flex;
	justify-content: center;
	margin: 24px 0 8px;
}

.aa-addon-band {
	padding: 12px 0 72px;
	background: var(--aa-white);
}

.aa-addon-card {
	display: grid;
	gap: 16px;
	margin-top: 36px;
	padding: 24px;
	background: var(--aa-mist);
}

.aa-addon-state {
	display: none;
	align-items: center;
	gap: 16px;
}

.aa-addon-card:not(:has(input:checked)) .aa-addon-off,
.aa-addon-card:has(input:checked) .aa-addon-on {
	display: flex;
}

.aa-sketch {
	width: 96px;
	height: 96px;
	flex: 0 0 auto;
	object-fit: contain;
	color: var(--aa-ink);
}

.aa-addon-switch::after {
	transition: transform 0.28s ease;
}

.aa-addon input:checked + .aa-addon-switch {
	background: var(--aa-teal);
}

.aa-addon-state p {
	margin: 0;
	max-width: 40rem;
}

.aa-reason-row {
	display: grid;
	gap: 18px;
	margin: 0;
	padding: 18px;
	list-style: none;
	background: color-mix(in srgb, var(--aa-teal) 18%, var(--aa-white));
}

.aa-reason-row li {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 48px;
}

.aa-reason-row .aa-why-icon {
	flex: 0 0 auto;
}

@media (min-width: 768px) {
	.aa-reason-row {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.aa-species-photos {
	display: grid;
	grid-template-columns: 1.5fr 0.8fr;
	gap: 8px;
	margin-bottom: 12px;
}

.aa-queen-shot,
.aa-worker-shot,
.aa-meal {
	margin: 0;
}

.aa-queen-shot img,
.aa-worker-shot img,
.aa-meal img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	object-fit: cover;
}

.aa-scale-note {
	margin: 0 0 16px;
	font-weight: 700;
	font-size: 1.2rem;
}

.aa-meal {
	max-width: 240px;
	margin-bottom: 20px;
}

.aa-species-lines {
	margin: 0 0 12px;
	padding-left: 1.1rem;
}

.aa-begin-drawing,
.aa-draw img {
	display: block;
	width: 100%;
	height: auto;
}

.aa-begin-close {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 280px;
	overflow: hidden;
}

.aa-close-media,
.aa-close-media img,
.aa-close-shade {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aa-close-shade {
	background: linear-gradient(180deg, rgba(17, 20, 20, 0.15), rgba(17, 20, 20, 0.45));
}

.aa-close-button {
	position: relative;
	z-index: 1;
}

.aa-colony-wait {
	background: var(--aa-mist);
	color: var(--aa-ink);
	padding: 48px 0 72px;
	text-align: center;
}

.aa-colony-wait h2 {
	color: var(--aa-ink);
}

.aa-colony-wait .aa-script {
	margin: 0 0 4px;
	color: var(--aa-teal-deep);
	font-size: 2.75rem;
}

.aa-colony-social {
	display: flex;
	justify-content: center;
	gap: 8px;
	margin: 16px 0 0;
	padding: 0;
	list-style: none;
}

.aa-colony-social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 48px;
	min-height: 48px;
	color: var(--aa-ink);
}

.aa-contact-form {
	max-width: 36rem;
}

.aa-contact-form label {
	display: block;
	margin-bottom: 4px;
	font-weight: 600;
}

.aa-contact-form input,
.aa-contact-form textarea {
	width: 100%;
	min-height: 48px;
	border: 1px solid var(--aa-line);
	padding: 8px 12px;
	font: inherit;
	color: var(--aa-ink);
	background: var(--aa-white);
}

.aa-contact-form p {
	margin: 0 0 12px;
}

@media (prefers-reduced-motion: reduce) {
	.aa-addon-switch::after,
	.aa-search {
		transition: none;
	}
}

/* One password eye. WooCommerce and Blocksy both inject toggles, and the theme button style was stacking them. */
.password-input {
	position: relative;
	display: block;
}

.password-input input {
	width: 100%;
	padding-right: 48px;
}

.password-input .show-password-input ~ .show-password-input,
.password-input .show-password-input ~ .ct-password-toggle,
.password-input .ct-password-toggle ~ .show-password-input {
	display: none !important;
}

.password-input .show-password-input {
	position: absolute;
	top: 50%;
	right: 4px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	min-height: 40px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background-color: transparent !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23111414' stroke-width='1.8' d='M2 12s4-6 10-6 10 6 10 6-4 6-10 6S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='2.4' fill='none' stroke='%23111414' stroke-width='1.8'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 22px 22px !important;
	color: transparent !important;
	font-size: 0 !important;
	box-shadow: none;
	transform: translateY(-50%);
}

.password-input .show-password-input.display-password {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23111414' stroke-width='1.8' d='M3 4l18 16M2 12s4-6 10-6c1.6 0 3 .4 4.2 1M22 12s-4 6-10 6c-1.6 0-3-.4-4.2-1'/%3E%3Ccircle cx='12' cy='12' r='2.4' fill='none' stroke='%23111414' stroke-width='1.8'/%3E%3C/svg%3E") !important;
}

.password-input .show-password-input::before,
.password-input .show-password-input::after,
.password-input .show-password-input svg,
.password-input .show-password-input img,
.password-input .show-password-input span {
	content: none !important;
	display: none !important;
	background: none !important;
}

.password-input .show-password-input:hover,
.password-input .show-password-input:focus-visible {
	background-color: transparent !important;
	color: transparent !important;
}

/* Cart block placeholder rows follow the real item count, so one item does not flash as two. */
body.aa-cart-count-0 .wc-block-cart-items__row:has(.wc-block-components-skeleton__element),
body.aa-cart-count-0 .wc-block-mini-cart-items tr:has(.wc-block-components-skeleton__element) {
	display: none !important;
}

body.aa-cart-count-1 .wc-block-cart-items__row:nth-child(n+2):has(.wc-block-components-skeleton__element),
body.aa-cart-count-1 .wc-block-mini-cart-items tr:nth-child(n+2):has(.wc-block-components-skeleton__element) {
	display: none !important;
}

/* Checkout email code. Markup stays with the migration plugin. */
.aa-ev {
	grid-column: 1 / -1;
	width: 100%;
	margin: 4px 0 16px;
	color: var(--aa-ink);
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
}

.aa-ev-row {
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	gap: 10px;
	margin: 0 0 12px;
}

.aa-ev-row > .aa-ev-in,
.aa-ev-row > .aa-ev-code,
.aa-ev-row > input,
.aa-ev-row > label,
.aa-ev-row > span {
	flex: 1 1 12rem;
	min-width: 0;
}

.aa-ev-in,
.aa-ev-code,
.aa-ev input[type="text"],
.aa-ev input[type="email"],
.aa-ev input[type="tel"],
.aa-ev input[type="number"] {
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid var(--aa-line);
	border-radius: 8px;
	background: var(--aa-white);
	color: var(--aa-ink);
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.4;
	box-shadow: none;
}

.aa-ev input.aa-ev-code,
input.aa-ev-code {
	font-weight: 600;
	letter-spacing: 0.28em;
	font-variant-numeric: tabular-nums;
}

#aa_am_code {
	font-weight: 600;
	letter-spacing: 0.28em;
	font-variant-numeric: tabular-nums;
}

.aa-ev-code::placeholder,
#aa_am_code::placeholder {
	font-weight: 400;
	letter-spacing: normal;
	color: var(--aa-grey);
}

.aa-ev-send,
.aa-ev-check,
.aa-am-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-height: 48px;
	margin: 0;
	padding: 12px 18px;
	border: 0;
	border-radius: 8px !important;
	background: var(--aa-teal) !important;
	color: var(--aa-ink) !important;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	box-shadow: none;
}

.aa-ev-send:hover,
.aa-ev-check:hover,
.aa-am-btn:hover,
.aa-ev-send:focus-visible,
.aa-ev-check:focus-visible,
.aa-am-btn:focus-visible {
	background: color-mix(in srgb, var(--aa-teal) 85%, var(--aa-ink)) !important;
	color: var(--aa-ink) !important;
}

.aa-ev-send:disabled,
.aa-ev-check:disabled,
.aa-am-btn:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}

.aa-ev-msg {
	margin: 0 0 12px;
	padding: 14px 16px;
	border: 1px solid var(--aa-line);
	border-left: 4px solid var(--aa-teal-deep);
	border-radius: 8px;
	background: var(--aa-mist);
	color: var(--aa-ink);
	font-size: 1rem;
	line-height: 1.45;
}

.aa-ev-msg:empty {
	display: none;
}

.aa-ev-msg.is-success,
.aa-ev-msg.is-ok,
.aa-ev-msg.success,
.aa-ev-msg.ok,
.aa-ev-msg.aa-ev-ok,
.aa-ev-msg.aa-ev-success,
.aa-ev.is-success .aa-ev-msg,
.aa-ev.is-verified .aa-ev-msg,
.aa-ev[data-state="success"] .aa-ev-msg,
.aa-ev[data-state="ok"] .aa-ev-msg,
.aa-ev-msg[data-state="success"],
.aa-ev-msg[data-state="ok"] {
	border-left-color: var(--aa-teal-deep);
	background: var(--aa-mist);
	color: var(--aa-ink);
}

.aa-ev-msg.is-error,
.aa-ev-msg.is-invalid,
.aa-ev-msg.error,
.aa-ev-msg.aa-ev-error,
.aa-ev-msg.aa-ev-bad,
.aa-ev.is-error .aa-ev-msg,
.aa-ev[data-state="error"] .aa-ev-msg,
.aa-ev-msg[data-state="error"] {
	border-left-color: var(--aa-ink);
	background: var(--aa-white);
	color: var(--aa-ink);
}

.aa-ev-hint,
.aa-am-hint {
	margin: 0 0 12px;
	color: var(--aa-grey);
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.45;
}

.aa-ev a,
.aa-am a,
.aa-ev-hint a,
.aa-am-hint a {
	color: var(--aa-teal-deep);
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* My Account message form at /my-account/message-us/. */
.aa-am {
	max-width: 40rem;
	margin: 0;
	color: var(--aa-ink);
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
}

.aa-am p {
	margin: 0 0 16px;
}

.aa-am label {
	display: block;
	margin: 0 0 6px;
	color: var(--aa-ink);
	font-weight: 600;
	line-height: 1.3;
}

.aa-am input[type="text"],
.aa-am input[type="email"],
.aa-am input[type="tel"],
.aa-am input[type="number"],
.aa-am input[type="search"],
.aa-am select,
#aa_am_name,
#aa_am_email,
#aa_am_subject,
#aa_am_order,
#aa_am_code {
	display: block;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid var(--aa-line);
	border-radius: 8px;
	background: var(--aa-white);
	color: var(--aa-ink);
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.4;
	box-shadow: none;
}

#aa_am_code {
	font-weight: 600;
	letter-spacing: 0.28em;
}

#aa_am_message,
.aa-am textarea {
	display: block;
	width: 100%;
	min-height: 140px;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid var(--aa-line);
	border-radius: 8px;
	background: var(--aa-white);
	color: var(--aa-ink);
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	resize: vertical;
	box-shadow: none;
}

#aa_am_photos,
.aa-am input[type="file"] {
	display: block;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 8px;
	border: 1px dashed var(--aa-line);
	border-radius: 8px;
	background: var(--aa-white);
	color: var(--aa-ink);
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 0.95rem;
	line-height: 1.4;
}

#aa_am_photos::file-selector-button,
.aa-am input[type="file"]::file-selector-button,
#aa_am_photos::-webkit-file-upload-button,
.aa-am input[type="file"]::-webkit-file-upload-button {
	margin-right: 12px;
	min-height: 36px;
	padding: 8px 14px;
	border: 0;
	border-radius: 8px;
	background: var(--aa-teal);
	color: var(--aa-ink);
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 0.95rem;
	font-weight: 600;
	cursor: pointer;
}

#aa_am_photos::file-selector-button:hover,
.aa-am input[type="file"]::file-selector-button:hover,
#aa_am_photos::-webkit-file-upload-button:hover,
.aa-am input[type="file"]::-webkit-file-upload-button:hover {
	background: color-mix(in srgb, var(--aa-teal) 85%, var(--aa-ink));
	color: var(--aa-ink);
}

.aa-am-hp,
.aa-am .aa-am-hp,
.aa-am p:has(.aa-am-hp),
.aa-am label:has(+ .aa-am-hp) {
	display: none !important;
	position: absolute !important;
	left: -10000px !important;
	top: auto !important;
	width: 1px !important;
	height: 1px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	pointer-events: none !important;
}

@media (max-width: 781px) {
	.aa-ev-row {
		flex-direction: column;
		align-items: stretch;
	}

	.aa-ev-row > .aa-ev-in,
	.aa-ev-row > .aa-ev-code,
	.aa-ev-row > input,
	.aa-ev-row > label,
	.aa-ev-row > span,
	.aa-ev-send,
	.aa-ev-check,
	.aa-am-btn {
		width: 100%;
		flex: 1 1 auto;
	}
}

.aa-update {
	width: 100%;
	overflow: hidden;
	background: var(--aa-teal);
	color: var(--aa-ink);
}

.aa-update-track {
	display: flex;
	width: max-content;
	animation: aa-update-scroll var(--aa-update-duration, 32s) linear infinite;
}

.aa-update:hover .aa-update-track,
.aa-update:focus-within .aa-update-track {
	animation-play-state: paused;
}

.aa-update-half {
	display: flex;
	flex: 0 0 auto;
}

.aa-update-phrase {
	margin: 0;
	padding: 12px 2.5rem;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.4;
	white-space: nowrap;
}

@keyframes aa-update-scroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-update-track {
		width: 100%;
		animation: none;
		transform: none;
		justify-content: center;
	}

	.aa-update-half:last-child {
		display: none;
	}

	.aa-update-phrase {
		display: none;
	}

	.aa-update-half:first-child .aa-update-phrase:first-child {
		display: block;
		width: 100%;
		padding: 12px 16px;
		white-space: normal;
		text-align: center;
	}
}

.woocommerce-cart .aa-suggest {
	grid-column: 1;
	justify-self: stretch;
	width: var(--aa-suggest-width, 100%);
	max-width: 100%;
	margin-left: var(--aa-suggest-shift, 0px);
}

.aa-suggest {
	margin: 20px 0 0;
	min-width: 0;
}

.aa-suggest h2 {
	margin: 0 0 10px;
	color: var(--aa-ink);
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.3;
}

.aa-suggest-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	justify-content: start;
	justify-items: start;
	gap: 12px 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.aa-suggest .aa-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	max-width: 170px;
	height: auto;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	text-align: center;
}

.aa-suggest a.aa-card-open {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	min-height: 0;
	background: transparent;
	color: var(--aa-ink);
	text-align: center;
	text-decoration: none;
}

.aa-suggest .aa-card-media {
	width: min(100%, 140px);
	max-width: 140px;
	aspect-ratio: 1 / 1;
	margin: 0 auto;
	background: transparent;
}

.aa-suggest .aa-card-media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	background: transparent;
}

.aa-suggest .aa-card-title,
.aa-suggest .aa-card-meta {
	width: 100%;
	margin: 0;
	padding: 0;
	text-align: center;
}

.aa-suggest .aa-card-title {
	display: -webkit-box;
	margin-top: 6px;
	overflow: hidden;
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.3;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.aa-suggest .aa-card-meta {
	margin-top: 2px;
	color: var(--aa-ink);
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.3;
}

.aa-suggest .button,
.aa-suggest a.button {
	display: inline-flex;
	align-self: center;
	width: auto;
	min-height: 0;
	margin: 6px 0 0;
	padding: 4px 10px;
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1.3;
}

@media (min-width: 700px) {
	.aa-suggest-grid {
		grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	}
}

#billing_email_field,
.wc-block-components-address-form__email {
	order: 1;
}

.woocommerce-billing-fields__field-wrapper > .aa-ev,
.wc-block-checkout__contact-fields > .aa-ev,
.wc-block-checkout__billing-fields .aa-ev {
	order: 2;
	flex: 1 1 100%;
	width: 100%;
}

.aa-news-optin,
.form-row.aa-news-optin {
	order: 3;
	grid-column: 1 / -1;
	flex: 1 1 100% !important;
	width: 100%;
	max-width: 100%;
}

#billing_first_name_field,
#shipping_first_name_field,
.wc-block-components-address-form__first_name {
	order: 4;
}

#billing_last_name_field,
#shipping_last_name_field,
.wc-block-components-address-form__last_name {
	order: 5;
}

#billing_company_field,
#shipping_company_field,
.wc-block-components-address-form__company {
	order: 6;
}

#billing_country_field,
#shipping_country_field,
.wc-block-components-address-form__country,
.wc-block-components-address-form > .wc-block-components-country-input {
	order: 7;
	grid-column: 1 / -1;
	width: 100%;
	max-width: 100%;
	margin-top: 8px;
	padding-top: 12px;
	border-top: 1px solid var(--aa-line);
	background: transparent;
}

#billing_address_2_field,
#shipping_address_2_field,
.wc-block-components-address-form__address_2,
.wc-block-components-address-form__address_2-toggle {
	order: 8;
}

#billing_address_1_field,
#shipping_address_1_field,
.wc-block-components-address-form__address_1,
.wc-block-components-address-autocomplete-container {
	order: 9;
}

#billing_city_field,
#shipping_city_field,
.wc-block-components-address-form__city {
	order: 10;
}

#billing_state_field,
#shipping_state_field,
.wc-block-components-address-form__state {
	order: 11;
}

#billing_postcode_field,
#shipping_postcode_field,
.wc-block-components-address-form__postcode {
	order: 12;
}

#billing_phone_field,
#shipping_phone_field,
.wc-block-components-address-form__phone {
	order: 13;
}

.wc-block-checkout__contact-fields {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	column-gap: 12px;
	row-gap: 0;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form > *,
.wc-block-checkout__shipping-fields .wc-block-components-address-form > * {
	order: 14;
	flex: 1 1 100%;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form__email,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__email {
	order: 1;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form__first_name,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__first_name {
	order: 4;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form__last_name,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__last_name {
	order: 5;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form__company,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__company {
	order: 6;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form__address_2,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__address_2,
.wc-block-checkout__billing-fields .wc-block-components-address-form__address_2-toggle,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__address_2-toggle {
	order: 8;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form__address_1,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__address_1,
.wc-block-checkout__billing-fields .wc-block-components-address-autocomplete-container,
.wc-block-checkout__shipping-fields .wc-block-components-address-autocomplete-container {
	order: 9;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form__city,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__city {
	order: 10;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form__state,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__state {
	order: 11;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form__postcode,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__postcode {
	order: 12;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form__phone,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__phone {
	order: 13;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form__address_2-hidden-input,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__address_2-hidden-input {
	order: 8;
	position: absolute !important;
	flex: 0 0 1px !important;
	width: 1px !important;
	height: 1px !important;
	max-width: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	border: 0 !important;
}

.wc-block-checkout__billing-fields .wc-block-components-address-form > .wc-block-components-country-input,
.wc-block-checkout__shipping-fields .wc-block-components-address-form > .wc-block-components-country-input,
.wc-block-checkout__billing-fields .wc-block-components-address-form > .wc-block-components-address-form__country,
.wc-block-checkout__shipping-fields .wc-block-components-address-form > .wc-block-components-address-form__country {
	flex: 1 1 100%;
	width: 100%;
	max-width: 100%;
	order: 7;
	margin-top: 8px;
	padding-top: 12px;
	border-top: 1px solid var(--aa-line);
	background: transparent;
}

/* Woo paints this as a plain text control. The theme button style must not fill it. */
.wc-block-checkout .wc-block-components-address-form__address_2-toggle {
	display: inline;
	flex: 1 1 100%;
	align-self: flex-start;
	justify-content: flex-start;
	width: auto;
	max-width: 100%;
	min-height: 0;
	height: auto;
	margin: 2px 0 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: inherit;
	font-family: inherit;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: 0;
	text-align: left;
	text-decoration: none;
	text-transform: none;
	cursor: pointer;
}

.wc-block-checkout .wc-block-components-address-form__address_2-toggle:hover,
.wc-block-checkout .wc-block-components-address-form__address_2-toggle:focus-visible {
	background: transparent;
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.aa-ev-account-email-wrap {
	display: inline-block;
	vertical-align: middle;
	width: min(100%, 20rem);
	max-width: 100%;
	margin: 0 10px 0 0;
}

.aa-ev-account-email-wrap .aa-ev-account-email,
input.aa-ev-account-email[data-aa-account-email] {
	width: 100%;
	max-width: 100%;
	min-height: 0;
	height: auto;
	box-sizing: border-box;
	margin: 0;
	padding: 6px 10px;
	border: 0;
	border-radius: 4px;
	background: color-mix(in srgb, var(--aa-line) 55%, white) !important;
	box-shadow: none;
	color: var(--aa-grey) !important;
	font-size: 0.9375rem;
	font-weight: 400;
	line-height: 1.4;
	cursor: default;
}

.aa-ev-account-email-wrap + .aa-switch-account {
	display: inline;
	vertical-align: middle;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	color: var(--aa-grey);
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.4;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.aa-ev-account-email-wrap + .aa-switch-account:hover,
.aa-ev-account-email-wrap + .aa-switch-account:focus-visible {
	color: var(--aa-teal-deep);
}

.woocommerce-billing-fields__field-wrapper > .aa-address-heading,
.woocommerce-shipping-fields__field-wrapper > .aa-address-heading {
	order: 6;
	grid-column: 1 / -1;
	width: 100%;
	margin: 8px 0 4px;
}

/* The shipping step heading is a sibling of the field wrappers, so those
   wrappers flatten while the form is open. Inputs stay in the form. */
.wc-block-components-checkout-step > legend {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.wc-block-checkout__shipping-fields:has(.wc-block-components-address-address-wrapper.is-editing),
.wc-block-checkout__shipping-fields:not(:has(.wc-block-components-address-address-wrapper)) {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	column-gap: 12px;
	row-gap: 12px;
	width: 100%;
	min-inline-size: 0;
	margin: 0 0 24px;
	padding: 0;
	border: 0;
}

.wc-block-checkout__shipping-fields:has(.wc-block-components-address-address-wrapper.is-editing) > .wc-block-components-checkout-step__content,
.wc-block-checkout__shipping-fields:not(:has(.wc-block-components-address-address-wrapper)) > .wc-block-components-checkout-step__content,
.wc-block-checkout__shipping-fields .wc-block-components-address-address-wrapper.is-editing,
.wc-block-checkout__shipping-fields .wc-block-components-address-address-wrapper.is-editing > .wc-block-components-address-form-wrapper,
.wc-block-checkout__shipping-fields:has(.wc-block-components-address-address-wrapper.is-editing) .wc-block-components-address-form,
.wc-block-checkout__shipping-fields:not(:has(.wc-block-components-address-address-wrapper)) .wc-block-components-address-form {
	display: contents !important;
}

.wc-block-checkout__shipping-fields .wc-block-components-address-address-wrapper.is-editing > .wc-block-components-address-card-wrapper {
	display: none !important;
}

.wc-block-checkout__shipping-fields:has(.wc-block-components-address-address-wrapper.is-editing) > .wc-block-components-checkout-step__heading-container,
.wc-block-checkout__shipping-fields:not(:has(.wc-block-components-address-address-wrapper)) > .wc-block-components-checkout-step__heading-container {
	order: 6;
	flex: 1 1 100%;
	width: 100%;
	max-width: 100%;
	margin: 4px 0 0;
}

.wc-block-checkout__shipping-fields .wc-block-components-checkout-step__description {
	margin: 6px 0 0;
}

.wc-block-checkout__shipping-fields .wc-block-components-notices {
	order: 0;
	flex: 1 1 100%;
	width: 100%;
}

.wc-block-checkout__shipping-fields .wc-block-components-notices:empty {
	display: none;
}

.wc-block-checkout__shipping-fields .wc-block-checkout__use-address-for-billing {
	order: 40;
	flex: 1 1 100% !important;
	width: 100%;
	max-width: 100%;
}

@media (min-width: 700px) {
	.wc-block-checkout__billing-fields .wc-block-components-address-form__first_name,
	.wc-block-checkout__billing-fields .wc-block-components-address-form__last_name,
	.wc-block-checkout__shipping-fields .wc-block-components-address-form__first_name,
	.wc-block-checkout__shipping-fields .wc-block-components-address-form__last_name {
		flex: 1 1 calc(50% - 12px);
		width: auto;
		max-width: calc(50% - 6px);
	}
}

.aa-ev.is-verified .aa-ev-row:has(.aa-ev-in),
.aa-ev.verified .aa-ev-row:has(.aa-ev-in),
.aa-ev[data-verified="true"] .aa-ev-row:has(.aa-ev-in),
.aa-ev[data-verified="1"] .aa-ev-row:has(.aa-ev-in),
.aa-ev[data-verified="yes"] .aa-ev-row:has(.aa-ev-in),
.aa-ev[data-state="verified"] .aa-ev-row:has(.aa-ev-in),
.aa-ev:has(.is-verified) .aa-ev-row:has(.aa-ev-in),
.aa-ev:has(.verified) .aa-ev-row:has(.aa-ev-in),
.aa-ev:has([data-verified="true"]) .aa-ev-row:has(.aa-ev-in),
.aa-ev:has([data-verified="1"]) .aa-ev-row:has(.aa-ev-in),
.aa-ev:has([data-verified="yes"]) .aa-ev-row:has(.aa-ev-in) {
	flex-wrap: wrap;
	align-items: center;
}

.aa-ev.is-verified .aa-ev-row:has(.aa-ev-in)::after,
.aa-ev.verified .aa-ev-row:has(.aa-ev-in)::after,
.aa-ev[data-verified="true"] .aa-ev-row:has(.aa-ev-in)::after,
.aa-ev[data-verified="1"] .aa-ev-row:has(.aa-ev-in)::after,
.aa-ev[data-verified="yes"] .aa-ev-row:has(.aa-ev-in)::after,
.aa-ev[data-state="verified"] .aa-ev-row:has(.aa-ev-in)::after,
.aa-ev:has(.is-verified) .aa-ev-row:has(.aa-ev-in)::after,
.aa-ev:has(.verified) .aa-ev-row:has(.aa-ev-in)::after,
.aa-ev:has([data-verified="true"]) .aa-ev-row:has(.aa-ev-in)::after,
.aa-ev:has([data-verified="1"]) .aa-ev-row:has(.aa-ev-in)::after,
.aa-ev:has([data-verified="yes"]) .aa-ev-row:has(.aa-ev-in)::after {
	content: "Verified";
	order: 2;
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	min-height: 48px;
	padding-left: 26px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%231B7F4A' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M5 12.5l4.2 4.2L19 7'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 18px 18px;
	color: #1b7f4a;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
}

.aa-ev.is-verified .aa-ev-row:has(.aa-ev-in) > .aa-ev-send,
.aa-ev.verified .aa-ev-row:has(.aa-ev-in) > .aa-ev-send,
.aa-ev[data-verified="true"] .aa-ev-row:has(.aa-ev-in) > .aa-ev-send,
.aa-ev[data-verified="1"] .aa-ev-row:has(.aa-ev-in) > .aa-ev-send,
.aa-ev[data-verified="yes"] .aa-ev-row:has(.aa-ev-in) > .aa-ev-send,
.aa-ev[data-state="verified"] .aa-ev-row:has(.aa-ev-in) > .aa-ev-send,
.aa-ev:has(.is-verified) .aa-ev-row:has(.aa-ev-in) > .aa-ev-send,
.aa-ev:has(.verified) .aa-ev-row:has(.aa-ev-in) > .aa-ev-send,
.aa-ev:has([data-verified="true"]) .aa-ev-row:has(.aa-ev-in) > .aa-ev-send,
.aa-ev:has([data-verified="1"]) .aa-ev-row:has(.aa-ev-in) > .aa-ev-send,
.aa-ev:has([data-verified="yes"]) .aa-ev-row:has(.aa-ev-in) > .aa-ev-send {
	order: 3;
}

.variations tr.aa-colour-single {
	display: none !important;
}

.aa-splashes {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 16px;
	margin: 8px 0 12px;
}

button.aa-splash {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 6px;
	width: 7rem;
	min-height: 0;
	margin: 0;
	padding: 2px;
	border: 0;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--aa-ink) !important;
	box-shadow: none;
	font-weight: 600;
	cursor: pointer;
}

button.aa-splash:hover,
button.aa-splash:focus-visible {
	background: transparent !important;
	color: var(--aa-ink) !important;
}

.aa-splash-shape {
	position: relative;
	display: block;
	width: 104px;
	height: 85px;
	color: var(--aa-splash, var(--aa-teal-deep, #00818d));
}

.aa-splash-brush {
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--aa-splash, var(--aa-teal-deep, #00818d));
	-webkit-mask-image: url("assets/images/brush-stroke.png");
	mask-image: url("assets/images/brush-stroke.png");
	-webkit-mask-image: -webkit-image-set(url("assets/images/brush-stroke.webp") type("image/webp"), url("assets/images/brush-stroke.png") type("image/png"));
	mask-image: image-set(url("assets/images/brush-stroke.webp") type("image/webp"), url("assets/images/brush-stroke.png") type("image/png"));
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.aa-splash[data-key="ash"] .aa-splash-brush,
.aa-splash[data-key="cork"] .aa-splash-brush,
.aa-splash[data-key="bamboo"] .aa-splash-brush {
	filter: drop-shadow(0.75px 0 0 rgba(17, 20, 20, 0.5)) drop-shadow(-0.75px 0 0 rgba(17, 20, 20, 0.5)) drop-shadow(0 0.75px 0 rgba(17, 20, 20, 0.5)) drop-shadow(0 -0.75px 0 rgba(17, 20, 20, 0.5));
}

.aa-splash[data-key="white"] .aa-splash-brush {
	filter: drop-shadow(1px 0 0 rgba(17, 20, 20, 0.62)) drop-shadow(-1px 0 0 rgba(17, 20, 20, 0.62)) drop-shadow(0 1px 0 rgba(17, 20, 20, 0.62)) drop-shadow(0 -1px 0 rgba(17, 20, 20, 0.62));
}

.aa-splash.is-on .aa-splash-shape,
.aa-splash[aria-checked="true"] .aa-splash-shape {
	border-radius: 10px;
	box-shadow: 0 0 0 2px var(--aa-white), 0 0 0 4px var(--aa-teal-deep);
}

.aa-splash.is-on .aa-splash-shape::after,
.aa-splash[aria-checked="true"] .aa-splash-shape::after {
	content: "";
	position: absolute;
	right: -2px;
	bottom: 0;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--aa-ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M5 12.5l4.2 4.2L19 7'/%3E%3C/svg%3E") center / 12px 12px no-repeat;
}

.aa-splash-name {
	display: block;
	max-width: 7rem;
	color: var(--aa-ink);
	font-size: 0.8rem;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
}

.aa-splash.is-off,
.aa-splash:disabled {
	cursor: not-allowed;
	opacity: 0.55;
}

.aa-splash.is-off .aa-splash-brush,
.aa-splash:disabled .aa-splash-brush {
	filter: grayscale(1);
}

.aa-splash.is-off .aa-splash-shape::before,
.aa-splash:disabled .aa-splash-shape::before {
	content: "";
	position: absolute;
	inset: 14px 10px;
	background: linear-gradient(to top right, transparent calc(50% - 1px), var(--aa-ink) calc(50% - 1px), var(--aa-ink) calc(50% + 1px), transparent calc(50% + 1px));
}

.aa-splash.is-off .aa-splash-name,
.aa-splash:disabled .aa-splash-name {
	color: var(--aa-grey);
	text-decoration: line-through;
}

.aa-splash:focus-visible {
	outline: 3px solid var(--aa-ink);
	outline-offset: 3px;
}

@media (max-width: 699px) {
	.aa-splashes {
		gap: 14px 10px;
	}

	button.aa-splash {
		width: 6.5rem;
	}

	.aa-splash-shape {
		width: 92px;
		height: 75px;
	}

	.aa-splash-name {
		max-width: 6.5rem;
	}
}

.aa-live-arrival {
	width: min(640px, calc(100% - 32px));
	max-width: 640px;
	max-height: min(80vh, 720px);
	margin: auto;
	padding: 20px 22px 24px;
	border: 0;
	background: #fff;
	color: #111414;
}

.aa-live-arrival::backdrop {
	background: rgba(17, 20, 20, 0.45);
}

.aa-live-arrival-card {
	display: flex;
	flex-direction: column;
	min-height: 0;
	max-height: calc(min(80vh, 720px) - 44px);
}

.aa-live-arrival-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.aa-live-arrival-head h2 {
	margin: 0;
	color: #111414;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.3;
}

.aa-live-arrival .aa-live-arrival-close {
	display: inline;
	flex: 0 0 auto;
	align-self: flex-start;
	width: auto;
	min-height: 0;
	margin: 2px 0 0;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	color: #00818D;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: underline;
	text-underline-offset: 2px;
	cursor: pointer;
}

.aa-live-arrival .aa-live-arrival-close:hover,
.aa-live-arrival .aa-live-arrival-close:focus-visible {
	background: transparent;
	color: #00818D;
}

.aa-live-arrival-body {
	flex: 1 1 auto;
	min-height: 0;
	margin-top: 12px;
	overflow: auto;
	color: #111414;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}

.aa-live-arrival-body h2,
.aa-live-arrival-body h3,
.aa-live-arrival-body p,
.aa-live-arrival-body li {
	color: #111414;
}

.aa-live-arrival-body h2 {
	margin: 0 0 8px;
	font-size: 1.05rem;
	font-weight: 600;
	line-height: 1.3;
}

.aa-live-arrival-body p,
.aa-live-arrival-body ul,
.aa-live-arrival-body ol {
	margin: 0 0 12px;
}

.aa-live-arrival-body a {
	color: #00818D;
}

/*
FAQ page only. .aa-faq when that wrapper is present, otherwise the FAQ page id and the faq body class.
The chevron uses #00818D. #1FC8D4 on white is about 2:1, under the 3:1 mark for a control.
*/

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) {
	--wp--style--block-gap: 0px;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) > * + * {
	margin-block-start: 0;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) > p {
	margin: 0 0 16px;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) > ul,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) > .wp-block-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 8px;
	padding: 0;
	list-style: none;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) > ul > li,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) > .wp-block-list > li {
	margin: 0;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) > ul > li > a,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) > .wp-block-list > li > a {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 4px 12px;
	border: 1px solid #D5DEDF;
	border-radius: 999px;
	background: #E5F8FA;
	color: #111414;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) > ul > li > a:hover,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) > .wp-block-list > li > a:hover {
	border-color: #1FC8D4;
	background: #1FC8D4;
	color: #111414;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) h2 {
	margin: 28px 0 4px;
	color: #111414;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.25;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) h2::before {
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-right: 8px;
	vertical-align: -3px;
	background-color: #00818D;
	-webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M9.8%205.2%207.2%202.2M14.2%205.2%2016.8%202.2%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%276.5%27%20r%3D%271.7%27%2F%3E%3Cellipse%20cx%3D%2712%27%20cy%3D%2710.8%27%20rx%3D%271.55%27%20ry%3D%271.9%27%2F%3E%3Cellipse%20cx%3D%2712%27%20cy%3D%2716.7%27%20rx%3D%272.85%27%20ry%3D%273.1%27%2F%3E%3Cpath%20d%3D%27M10.5%209.4%206.2%207.4M10.3%2010.8%205.4%2011.4M10.5%2012.2%206.4%2015M13.5%209.4%2017.8%207.4M13.7%2010.8%2018.6%2011.4M13.5%2012.2%2017.6%2015%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M9.8%205.2%207.2%202.2M14.2%205.2%2016.8%202.2%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%276.5%27%20r%3D%271.7%27%2F%3E%3Cellipse%20cx%3D%2712%27%20cy%3D%2710.8%27%20rx%3D%271.55%27%20ry%3D%271.9%27%2F%3E%3Cellipse%20cx%3D%2712%27%20cy%3D%2716.7%27%20rx%3D%272.85%27%20ry%3D%273.1%27%2F%3E%3Cpath%20d%3D%27M10.5%209.4%206.2%207.4M10.3%2010.8%205.4%2011.4M10.5%2012.2%206.4%2015M13.5%209.4%2017.8%207.4M13.7%2010.8%2018.6%2011.4M13.5%2012.2%2017.6%2015%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) h2::after {
	content: "";
	display: block;
	width: 48px;
	height: 3px;
	margin-top: 8px;
	background: #1FC8D4;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details {
	margin: 0;
	padding: 0;
	border: 0;
	border-bottom: 1px solid #D5DEDF;
	border-left: 3px solid transparent;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details[open],
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details[open] {
	border-left-color: #1FC8D4;
	background: #F8FDFE;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details summary,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details summary {
	position: relative;
	display: block;
	margin: 0;
	padding: 11px 40px 11px 12px;
	color: #111414;
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	font-size: 1.15rem;
	font-weight: 600;
	line-height: 1.25;
	list-style: none;
	cursor: pointer;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details summary::-webkit-details-marker,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details summary::-webkit-details-marker {
	display: none;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details summary::marker,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details summary::marker {
	content: "";
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details summary::after,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details summary::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 14px;
	width: 8px;
	height: 8px;
	border-right: 2px solid #00818D;
	border-bottom: 2px solid #00818D;
	transform: translateY(-75%) rotate(45deg);
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details[open] summary::after,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details[open] summary::after {
	transform: translateY(-25%) rotate(225deg);
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details summary:hover,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details summary:hover {
	background: #E5F8FA;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details summary:focus-visible,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details summary:focus-visible {
	outline: 2px solid #00818D;
	outline-offset: 2px;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details > :not(summary),
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details > :not(summary) {
	margin: 0 12px 8px;
	color: #3E494A;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details > :last-child,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details > :last-child {
	margin-bottom: 12px;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details p,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details ul,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details ol,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details p,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details ul,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details ol {
	margin-top: 0;
	margin-bottom: 8px;
	color: #3E494A;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details li + li,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details li + li {
	margin-top: 4px;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details a,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details a {
	color: #00818D;
}

:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details strong,
:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details strong {
	color: #00818D;
	font-weight: 600;
}

@media (max-width: 699px) {
	:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) h2 {
		margin-top: 24px;
		font-size: 1.35rem;
	}

	:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details summary,
	:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details summary {
		padding: 10px 36px 10px 10px;
	}
}

@media (prefers-reduced-motion: reduce) {
	:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) details summary::after,
	:is(.aa-faq, body.page-id-12802 .entry-content, body.faq .entry-content) .wp-block-details summary::after {
		transition: none;
	}
}

/* 1.10.0 polish. Display headings, trust bar, steps, care chips, Rufa. */

a.aa-button:hover,
a.button:hover,
a.aa-view-product:hover,
.aa-button:hover,
button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.single_add_to_cart_button:hover,
.wp-element-button:hover,
.wc-block-components-button:hover {
	background: color-mix(in hsl, var(--aa-teal) 72%, white);
	color: var(--aa-ink);
}

.aa-news-form button:hover {
	background: var(--aa-teal-deep);
	color: var(--aa-white);
}

button:focus-visible,
a.button:focus-visible,
a.aa-button:focus-visible,
.single_add_to_cart_button:focus-visible,
.aa-step a:focus-visible,
.aa-splash:focus-visible,
.aa-tile:focus-visible,
.woocommerce ul.products li.product a:focus-visible {
	outline: 2px solid var(--aa-teal-deep);
	outline-offset: 2px;
}

.aa-trustbar {
	overflow: hidden;
	background: var(--aa-mist);
	color: var(--aa-ink);
	border-bottom: 1px solid var(--aa-line);
}

.aa-trustbar-track {
	display: flex;
	width: max-content;
	animation: aa-trustbar var(--aa-trust-duration, 48s) linear infinite;
}

.aa-trustbar-half {
	display: flex;
	flex: 0 0 auto;
}

.aa-trustbar ul {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 28px;
	margin: 0;
	padding: 7px 16px;
	list-style: none;
}

.aa-trustbar li {
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.3;
	white-space: nowrap;
}

.aa-trustbar li::before {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	margin-right: 8px;
	border-radius: 50%;
	background: var(--aa-teal-deep);
	vertical-align: 1px;
}

.aa-trustbar:hover .aa-trustbar-track,
.aa-trustbar:focus-within .aa-trustbar-track {
	animation-play-state: paused;
}

@keyframes aa-trustbar {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

.aa-woodland-band {
	background-color: #e7f3ec;
	background-image: url("assets/images/pine-needles.svg");
	background-repeat: repeat;
	background-size: 160px 160px;
}

.aa-woodland-band .aa-eyebrow,
.aa-woodland-band a:not(.aa-button):not(.button) {
	color: #006e78;
}

.aa-woodland-band a:not(.aa-button):not(.button):hover,
.aa-woodland-band a:not(.aa-button):not(.button):focus-visible {
	color: #004e56;
}

.aa-woodland-band .aa-steps li,
.aa-woodland-band .aa-walker {
	background: var(--aa-white);
}

.aa-start.aa-woodland-band {
	padding: 32px 0 40px;
}

.aa-adventures {
	padding: 28px 0 18px;
}

.aa-adventures h2 {
	margin: 0 0 16px;
	font-size: 1.75rem;
}

.aa-steps-row {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 18px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.aa-adventures-art {
	display: block;
	width: auto;
	max-width: 100%;
	height: 72px;
	margin: 0 0 10px;
	object-fit: contain;
	object-position: left center;
}

.aa-step a {
	display: block;
	color: var(--aa-ink);
	text-decoration: none;
}

.aa-step-num {
	display: grid;
	place-items: center;
	width: 28px;
	height: 28px;
	margin-bottom: 8px;
	border-radius: 50%;
	background: var(--aa-teal);
	color: var(--aa-ink);
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, sans-serif;
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1;
}

.aa-step-title {
	display: block;
	margin-bottom: 4px;
	font-size: 1.15rem;
	font-weight: 600;
	line-height: 1.25;
}

.aa-step-text {
	display: block;
	color: #3e494a;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 0.95rem;
	font-weight: 400;
	line-height: 1.45;
}

.aa-care {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 8px 0 12px;
	padding: 0;
	list-style: none;
}

.aa-care li {
	display: inline-flex;
	gap: 6px;
	align-items: baseline;
	padding: 4px 10px;
	border-radius: 999px;
	background: var(--aa-mist);
	color: var(--aa-ink);
	font-size: 0.8125rem;
	line-height: 1.3;
}

.aa-care li::before {
	content: "";
	display: inline-block;
	flex: none;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--aa-teal-deep);
	align-self: center;
}

.aa-care li span {
	color: var(--aa-ink);
	font-weight: 700;
}

.aa-reassure {
	margin: 12px 0 0;
	padding: 0;
	list-style: none;
}

.aa-reassure li {
	display: flex;
	gap: 8px;
	align-items: flex-start;
	margin: 0 0 6px;
	color: var(--aa-ink);
	font-size: 0.875rem;
	line-height: 1.4;
}

.aa-reassure .aa-tick {
	flex: none;
	margin-top: 2px;
	color: var(--aa-teal-deep);
}

.aa-empty-cart,
.aa-missing {
	text-align: center;
}

.aa-missing .aa-rufa-frame {
	width: 148px;
	margin: 4px auto 12px;
}

.aa-splash.is-off,
.aa-splash:disabled {
	opacity: 0.38;
	filter: grayscale(1);
}

@media (max-width: 899px) {
	.aa-steps-row {
		display: flex;
		gap: 12px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		padding-bottom: 8px;
	}

	.aa-step {
		flex: 0 0 min(78%, 260px);
		scroll-snap-align: start;
	}

	.aa-adventures h2 {
		font-size: 1.45rem;
	}

	.aa-adventures-art {
		height: 64px;
		margin-left: auto;
		margin-right: auto;
		object-position: center;
	}
}

@media (prefers-reduced-motion: no-preference) {
	.aa-store .aa-card,
	.aa-rail .aa-card,
	.woocommerce ul.products li.product,
	.wc-block-grid__product,
	.aa-tile {
		transition: transform 0.2s ease;
	}

	.aa-store .aa-card:hover,
	.aa-rail .aa-card:hover,
	.woocommerce ul.products li.product:hover,
	.wc-block-grid__product:hover,
	.aa-tile:hover,
	.aa-tile:focus-visible {
		transform: translateY(-2px);
		box-shadow: none;
	}

	.aa-card-media img,
	.woocommerce ul.products li.product img,
	.aa-tile-media img,
	.aa-quad-media img {
		transition: transform 0.35s ease;
	}

	.aa-store .aa-card:hover img,
	.aa-rail .aa-card:hover img,
	.woocommerce ul.products li.product:hover img,
	.wc-block-grid__product:hover img,
	.aa-tile:hover img,
	.aa-tile:focus-visible img,
	.aa-quad-panel:hover img,
	.aa-quad-panel:focus-visible img {
		transform: scale(1.05);
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-trustbar-track,
	.aa-tile,
	.aa-tile-media img,
	.aa-card-media img,
	.woocommerce ul.products li.product img,
	.aa-quad-media img {
		animation: none;
		transition: none;
	}

	.aa-trustbar-track,
	.aa-trustbar-half {
		width: auto;
		max-width: 100%;
		flex-wrap: wrap;
		transform: none;
	}

	.aa-trustbar-half[aria-hidden="true"],
	.aa-trustbar ul[aria-hidden="true"] {
		display: none;
	}

	.aa-trustbar ul {
		flex-wrap: wrap;
		justify-content: center;
		width: 100%;
	}

	.aa-tile:hover,
	.aa-tile:focus-visible,
	.woocommerce ul.products li.product:hover,
	.aa-store .aa-card:hover,
	.aa-rail .aa-card:hover {
		transform: none;
		box-shadow: none;
	}

	.aa-steps-row,
	.aa-rail-scroller {
		scroll-behavior: auto;
	}
}

/* Richard's Rufa cut-outs. Sized frames, no walk cycle. */

.aa-rufa-frame {
	display: block;
	width: 136px;
	max-width: 46vw;
	margin: 0;
	line-height: 0;
	pointer-events: none;
}

.aa-rufa-frame .aa-rufa {
	display: block;
	width: 100%;
	height: auto;
}

.aa-adventures-head,
.aa-why-head,
.aa-rufa-hello {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 8px 20px;
}

.aa-adventures-head {
	margin: 0 0 18px;
}

.aa-adventures-head h2,
.aa-why-head h2 {
	flex: 1 1 14rem;
	margin: 0;
}

.aa-rufa-frame-side {
	width: 150px;
	margin-left: auto;
}

.aa-rufa-hello {
	align-items: center;
	justify-content: flex-start;
	margin: 0 0 12px;
}

.aa-rufa-frame-wave {
	width: 132px;
	flex: 0 0 auto;
}

.aa-why .aa-rufa-say {
	position: relative;
	flex: 1 1 16rem;
	max-width: 28rem;
	margin: 0;
	padding: 12px 16px;
	border: 1px solid var(--aa-line);
	border-radius: 18px 18px 18px 6px;
	background: var(--aa-white);
	color: var(--aa-ink);
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, sans-serif;
	font-size: 1.15rem;
	font-weight: 600;
	line-height: 1.35;
}

.aa-why-head {
	margin: 0 0 18px;
}

.aa-rufa-frame-front {
	width: 128px;
	margin-left: auto;
}

.aa-easy .aa-rufa-peek {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 168px;
	height: 148px;
	max-width: 100%;
	margin: 16px auto 0;
}

.aa-easy .aa-rufa-peek .aa-rufa-frame {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	max-width: none;
}

.aa-easy .aa-rufa-peek .aa-rufa {
	width: 100%;
	height: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: center center;
}

.aa-cart-heading {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px 16px;
	margin: 0 0 12px;
}

.aa-cart-heading > h1,
.aa-cart-heading > .page-title {
	width: auto;
	flex: 0 1 auto;
	margin: 0;
}

.aa-cart-heading .aa-rufa-frame {
	width: 96px;
	max-width: 34vw;
}

.aa-rufa-on .aa-walker {
	display: none;
}

html.aa-peek .aa-easy .aa-rufa-peek {
	opacity: 0;
}

html.aa-peek .aa-easy .aa-rufa-peek.is-in {
	opacity: 1;
}

@media (max-width: 767px) {
	.aa-cart-heading {
		flex-direction: column;
	}
}

@media (min-width: 768px) {
	.aa-rufa-frame-side,
	.aa-rufa-frame-wave,
	.aa-missing .aa-rufa-frame {
		width: 180px;
		max-width: none;
	}

	.aa-rufa-frame-front {
		width: 168px;
		max-width: none;
	}
}

@media (min-width: 1200px) {
	.aa-rufa-frame-side,
	.aa-missing .aa-rufa-frame {
		width: 220px;
	}

	.aa-rufa-frame-wave,
	.aa-rufa-frame-front {
		width: 180px;
	}
}

@media (prefers-reduced-motion: reduce) {
	html.aa-peek .aa-easy .aa-rufa-peek {
		opacity: 1;
	}
}

/* Full-bleed bands. Same breakout as a full-width store strip: the background
   reaches the viewport, and the words stay in the content column. */

.aa-announce,
.aa-trustbar,
.aa-trusted,
.aa-adventures,
.aa-woodland-band {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.aa-rail-nav {
	display: none;
}

@media (min-width: 768px) {
	.aa-rail-nav {
		display: flex;
	}
}

.aa-rail-scroller {
	width: 100vw;
	max-width: 100vw;
	margin-top: 8px;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scroll-padding-inline: 24px;
	padding-bottom: 8px;
	-webkit-overflow-scrolling: touch;
	scrollbar-color: var(--aa-teal-deep) var(--aa-line);
}

.aa-rail-track {
	display: flex;
	align-items: stretch;
	width: max-content;
	max-width: none;
	gap: 16px;
	margin: 0;
	padding: 12px 24px 20px;
	list-style: none;
}

.aa-keeper .aa-card-row,
.aa-store ul.products,
.aa-store-grid,
.woocommerce ul.products,
.related ul.products,
.upsells ul.products {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 260px));
	justify-content: start;
	align-items: stretch;
	gap: 16px;
	width: min(1120px, calc(100% - 48px));
	max-width: 1120px;
	margin-left: auto;
	margin-right: auto;
	padding: 0;
}

.aa-wrap .aa-store-grid,
.aa-wrap ul.products,
.aa-wrap .aa-card-row {
	width: 100%;
	max-width: none;
}

.aa-rail-track .aa-card {
	display: flex;
	flex-direction: column;
	flex: 0 0 260px;
	width: 260px;
	max-width: 260px;
	height: auto;
	scroll-snap-align: start;
	background: var(--aa-white);
	border: 1px solid var(--aa-line);
}

.aa-keeper .aa-card,
.aa-store .aa-card,
.woocommerce ul.products li.product,
.related ul.products li.product,
.upsells ul.products li.product {
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 260px;
	min-width: 0;
	height: 100%;
	flex: none;
	background: var(--aa-white);
}

.aa-rail .aa-card a:not(.button),
.aa-keeper .aa-card a:not(.button),
.aa-store .aa-card a:not(.button),
.aa-store .aa-card .aa-card-open,
.aa-rail .aa-card .aa-card-open,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	height: auto;
	min-height: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

.aa-rail .aa-card-media,
.aa-keeper .aa-card-media,
.aa-store .aa-card-media,
.woocommerce ul.products li.product .ct-media-container,
.related ul.products li.product .ct-media-container,
.upsells ul.products li.product .ct-media-container {
	position: relative;
	flex: 0 0 auto;
	aspect-ratio: 1 / 1;
	width: 100%;
	height: auto;
	overflow: hidden;
}

.aa-rail .aa-card-media img,
.aa-keeper .aa-card-media img,
.aa-store .aa-card-media img,
.woocommerce ul.products li.product img,
.related ul.products li.product img,
.upsells ul.products li.product img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.aa-rail .aa-card-title,
.aa-keeper .aa-card-title,
.aa-store .aa-card-title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.related ul.products li.product .woocommerce-loop-product__title,
.upsells ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	margin: auto 12px 0;
	padding: 10px 0 0;
	min-height: 2.5em;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.25;
	color: var(--aa-ink);
}

.aa-rail .aa-card-meta,
.aa-keeper .aa-card-meta,
.aa-store .aa-card-meta,
.woocommerce ul.products li.product .price,
.related ul.products li.product .price,
.upsells ul.products li.product .price {
	margin: 4px 12px 0;
	padding: 0;
	color: var(--aa-ink);
	font-weight: 700;
	line-height: 1.3;
}

.aa-rail .aa-loop-blurb,
.aa-store .aa-loop-blurb,
.aa-keeper .aa-loop-blurb,
.woocommerce ul.products li.product .aa-loop-blurb,
.related ul.products li.product .aa-loop-blurb,
.upsells ul.products li.product .aa-loop-blurb {
	min-height: 0;
	margin: 2px 12px 0;
	white-space: nowrap;
}

.aa-rail .aa-card .aa-view-product,
.aa-store .aa-card .aa-view-product,
.aa-keeper .aa-card .aa-view-product,
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .aa-view-product,
.related ul.products li.product a.button,
.upsells ul.products li.product a.button,
.aa-store-tools button.aa-store-apply,
.widget_price_filter button,
.widget_price_filter .button,
.woocommerce .widget_layered_nav button,
.wp-block-woocommerce-price-filter button,
.wc-block-components-price-slider__actions button,
.wc-block-product-filters__apply button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: stretch;
	width: auto;
	height: auto;
	min-height: 44px;
	margin: 12px 12px 14px;
	padding: 10px 18px;
	border: 0;
	border-radius: 999px;
	background: #00818D;
	background-color: #00818D;
	color: #fff;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	box-shadow: none;
	transform: none;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.aa-rail .aa-card .aa-view-product::after,
.aa-store .aa-card .aa-view-product::after,
.aa-keeper .aa-card .aa-view-product::after,
.woocommerce ul.products li.product a.button::after,
.related ul.products li.product a.button::after,
.upsells ul.products li.product a.button::after,
.aa-store-tools button.aa-store-apply::after,
.widget_price_filter button::after,
.widget_price_filter .button::after,
.woocommerce .widget_layered_nav button::after,
.wp-block-woocommerce-price-filter button::after,
.wc-block-components-price-slider__actions button::after,
.wc-block-product-filters__apply button::after {
	content: "";
	display: block;
	width: 0;
	height: 0.45em;
	margin-left: 0;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: translateX(-8px) rotate(45deg);
	opacity: 0;
	transition: width 0.2s ease, margin-left 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

.aa-rail .aa-card .aa-view-product:hover,
.aa-rail .aa-card .aa-view-product:focus-visible,
.aa-store .aa-card .aa-view-product:hover,
.aa-store .aa-card .aa-view-product:focus-visible,
.aa-keeper .aa-card .aa-view-product:hover,
.aa-keeper .aa-card .aa-view-product:focus-visible,
.woocommerce ul.products li.product a.button:hover,
.woocommerce ul.products li.product a.button:focus-visible,
.woocommerce ul.products li.product .aa-view-product:hover,
.woocommerce ul.products li.product .aa-view-product:focus-visible,
.related ul.products li.product a.button:hover,
.related ul.products li.product a.button:focus-visible,
.upsells ul.products li.product a.button:hover,
.upsells ul.products li.product a.button:focus-visible,
.aa-store-tools button.aa-store-apply:hover,
.aa-store-tools button.aa-store-apply:focus-visible,
.widget_price_filter button:hover,
.widget_price_filter button:focus-visible,
.widget_price_filter .button:hover,
.widget_price_filter .button:focus-visible,
.woocommerce .widget_layered_nav button:hover,
.woocommerce .widget_layered_nav button:focus-visible,
.wp-block-woocommerce-price-filter button:hover,
.wp-block-woocommerce-price-filter button:focus-visible,
.wc-block-components-price-slider__actions button:hover,
.wc-block-components-price-slider__actions button:focus-visible,
.wc-block-product-filters__apply button:hover,
.wc-block-product-filters__apply button:focus-visible {
	background: #1FC8D4;
	background-color: #1FC8D4;
	color: #111414;
	transform: translateY(-2px);
	box-shadow: 0 8px 16px rgba(17, 20, 20, 0.16);
}

.aa-rail .aa-card .aa-view-product:hover::after,
.aa-rail .aa-card .aa-view-product:focus-visible::after,
.aa-store .aa-card .aa-view-product:hover::after,
.aa-store .aa-card .aa-view-product:focus-visible::after,
.aa-keeper .aa-card .aa-view-product:hover::after,
.aa-keeper .aa-card .aa-view-product:focus-visible::after,
.woocommerce ul.products li.product a.button:hover::after,
.woocommerce ul.products li.product a.button:focus-visible::after,
.related ul.products li.product a.button:hover::after,
.related ul.products li.product a.button:focus-visible::after,
.upsells ul.products li.product a.button:hover::after,
.upsells ul.products li.product a.button:focus-visible::after,
.aa-store-tools button.aa-store-apply:hover::after,
.aa-store-tools button.aa-store-apply:focus-visible::after,
.widget_price_filter button:hover::after,
.widget_price_filter .button:hover::after,
.widget_price_filter button:focus-visible::after,
.widget_price_filter .button:focus-visible::after,
.woocommerce .widget_layered_nav button:hover::after,
.woocommerce .widget_layered_nav button:focus-visible::after,
.wp-block-woocommerce-price-filter button:hover::after,
.wp-block-woocommerce-price-filter button:focus-visible::after,
.wc-block-components-price-slider__actions button:hover::after,
.wc-block-components-price-slider__actions button:focus-visible::after,
.wc-block-product-filters__apply button:hover::after,
.wc-block-product-filters__apply button:focus-visible::after {
	width: 0.45em;
	margin-left: 10px;
	opacity: 1;
	transform: translateX(0) rotate(45deg);
}

.aa-rail .aa-card .aa-view-product:focus-visible,
.aa-store .aa-card .aa-view-product:focus-visible,
.aa-keeper .aa-card .aa-view-product:focus-visible,
.woocommerce ul.products li.product a.button:focus-visible,
.related ul.products li.product a.button:focus-visible,
.upsells ul.products li.product a.button:focus-visible,
.aa-store-tools button.aa-store-apply:focus-visible,
.widget_price_filter button:focus-visible,
.widget_price_filter .button:focus-visible,
.woocommerce .widget_layered_nav button:focus-visible,
.wp-block-woocommerce-price-filter button:focus-visible,
.wc-block-components-price-slider__actions button:focus-visible,
.wc-block-product-filters__apply button:focus-visible {
	outline: 2px solid #111414;
	outline-offset: 3px;
}

.aa-store-tools button.aa-store-apply,
.widget_price_filter button,
.widget_price_filter .button,
.woocommerce .widget_layered_nav button,
.wp-block-woocommerce-price-filter button,
.wc-block-components-price-slider__actions button,
.wc-block-product-filters__apply button {
	align-self: flex-end;
	flex: 0 0 auto;
	width: auto;
	min-width: 7.5rem;
	min-height: 48px;
	margin: 0;
	padding: 0 22px;
}

.aa-suggest .aa-card .button,
.aa-suggest .aa-card .aa-view-product,
.woocommerce-cart .aa-suggest .button,
.woocommerce-checkout .aa-suggest .button {
	width: auto;
	min-height: 0;
	margin: 6px 0 0;
	padding: 4px 10px;
	border-radius: 8px;
	background: var(--aa-teal);
	color: var(--aa-ink);
	transform: none;
	box-shadow: none;
}

.aa-suggest .aa-card .button::after,
.aa-suggest .aa-card .aa-view-product::after {
	content: none;
}

@media (prefers-reduced-motion: reduce) {
	.aa-rail-scroller {
		scroll-behavior: auto;
	}

	.aa-rail .aa-card .aa-view-product,
	.aa-store .aa-card .aa-view-product,
	.aa-store-tools button.aa-store-apply,
	.aa-rail .aa-card .aa-view-product::after,
	.aa-store .aa-card .aa-view-product::after,
	.aa-store-tools button.aa-store-apply::after {
		transition: none;
	}

	.aa-rail .aa-card .aa-view-product:hover,
	.aa-rail .aa-card .aa-view-product:focus-visible,
	.aa-store .aa-card .aa-view-product:hover,
	.aa-store .aa-card .aa-view-product:focus-visible,
	.aa-store-tools button.aa-store-apply:hover,
	.aa-store-tools button.aa-store-apply:focus-visible {
		transform: none;
	}
}

.aa-suggest .aa-card {
	max-width: 170px;
}

.aa-suggest a.aa-card-open {
	align-items: center;
}

.aa-suggest .aa-card-media {
	position: relative;
	flex: 0 0 auto;
	width: min(100%, 140px);
	max-width: 140px;
	height: auto;
	aspect-ratio: 1 / 1;
}

.aa-suggest .aa-card-media img {
	position: static;
	inset: auto;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

/* 1.10.4. Blocksy type-1 archive cards. The View link lives in
   .ct-woo-card-actions. That wrapper must not paint a teal box. */

.aa-store ul.products,
.aa-store-grid,
.woocommerce ul.products,
.related ul.products,
.upsells ul.products,
.wc-block-product-template {
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	justify-content: stretch;
}

.woocommerce ul.products li.product,
.related ul.products li.product,
.upsells ul.products li.product,
[data-products] > .product,
.wc-block-product-template > li {
	align-items: stretch;
	max-width: none;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	min-height: 0;
}

@media (min-width: 1200px) {
	body.aa-store .aa-wrap.aa-store-main {
		width: min(1600px, calc(100% - 48px));
	}
}

[data-products] > .product > figure,
.woocommerce ul.products li.product > figure,
.related ul.products li.product > figure,
.upsells ul.products li.product > figure {
	position: relative;
	display: block;
	flex: 0 0 auto;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	min-height: 0;
	box-shadow: none;
}

[data-products] > .product > figure > .ct-media-container,
.woocommerce ul.products li.product > figure > .ct-media-container,
.wc-block-components-product-image {
	display: block;
	flex: 0 0 auto;
	width: 100%;
	aspect-ratio: 1 / 1;
	margin: 0;
	padding: 0;
	border: 0;
	background: #fff;
	min-height: 0;
	overflow: hidden;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product > h2,
[data-products] > .product > .woocommerce-loop-product__title,
.related ul.products li.product .woocommerce-loop-product__title,
.upsells ul.products li.product .woocommerce-loop-product__title,
.wc-block-product-template .wp-block-post-title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	flex: 0 0 auto;
	width: auto;
	margin: 10px 12px 0;
	padding: 0;
	min-height: 2.5em;
	background: transparent;
	border: 0;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title a,
[data-products] .woocommerce-loop-product__title a,
.wc-block-product-template .wp-block-post-title a {
	display: inline;
	flex: none;
	width: auto;
	height: auto;
	min-height: 0;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	color: var(--aa-ink);
	text-decoration: none;
}

.woocommerce ul.products li.product > .price,
[data-products] > .product > .price,
.related ul.products li.product > .price,
.upsells ul.products li.product > .price,
.wc-block-product-template .wc-block-components-product-price {
	flex: 0 0 auto;
	width: auto;
	margin: 4px 12px 0;
	padding: 0;
	min-height: 0;
	background: transparent;
	border: 0;
	color: var(--aa-ink);
	font-weight: 700;
	line-height: 1.3;
	white-space: nowrap;
}

[data-products] > .product > .ct-woo-card-actions,
.woocommerce ul.products li.product > .ct-woo-card-actions,
.related ul.products li.product > .ct-woo-card-actions,
.upsells ul.products li.product > .ct-woo-card-actions,
.wp-block-woocommerce-product-button,
.wc-block-components-product-button,
.wc-block-product-template .wp-block-button,
[data-products] .wp-block-button {
	display: flex;
	flex: 0 0 auto;
	align-items: stretch;
	justify-content: stretch;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	background-color: transparent;
	box-shadow: none;
	min-height: 0;
	gap: 0;
}

[data-products] > .product > .ct-woo-card-actions > .button,
[data-products] > .product > .ct-woo-card-actions > a.button,
.woocommerce ul.products li.product > .ct-woo-card-actions > a.button,
.related ul.products li.product > .ct-woo-card-actions > a.button,
.upsells ul.products li.product > .ct-woo-card-actions > a.button,
.wp-block-woocommerce-product-button .wp-block-button__link,
.wc-block-components-product-button .wp-element-button,
.wc-block-product-template .wp-block-button__link {
	flex: 1 1 auto;
	align-self: stretch;
	width: auto;
	max-width: none;
	height: auto;
	min-height: 44px;
	margin: 12px 12px 14px;
	padding: 10px 18px;
	border: 0;
	border-radius: 999px;
	background: #00818D;
	background-color: #00818D;
	color: #fff;
	box-shadow: none;
}

.woocommerce ul.products .aa-loop-blurb,
.woocommerce ul.products .entry-excerpt,
[data-products] .aa-loop-blurb,
[data-products] .entry-excerpt,
[data-products] .ct-woo-card-rating,
[data-products] .entry-meta,
[data-products] .ct-woo-card-stock,
.related ul.products .aa-loop-blurb,
.related ul.products .entry-excerpt,
.upsells ul.products .aa-loop-blurb,
.upsells ul.products .entry-excerpt,
.wc-block-components-product-summary,
.wc-block-product-template .wp-block-post-excerpt {
	display: none;
}

/* 1.10.4 My account width. Logged out login and register sit side by side.
   Logged in dashboard, orders, and addresses use the same container.
   Blocksy narrow containers and constrained groups must not clamp it. */

body.woocommerce-account #main,
body.woocommerce-account .site-main {
	--theme-narrow-container-max-width: 1120px;
	--theme-normal-container-max-width: 1120px;
	--theme-block-max-width: 1120px;
	--theme-boxed-content-max-width: 1120px;
	--wp--style--global--content-size: 1120px;
	--wp--style--global--wide-size: 1120px;
}

body.woocommerce-account .ct-container,
body.woocommerce-account .ct-container-narrow,
body.woocommerce-account [data-content] > article,
body.woocommerce-account article.page,
body.woocommerce-account .entry-content,
body.woocommerce-account .wp-block-post-content,
body.woocommerce-account .hero-section,
body.woocommerce-account .entry-content .wp-block-group,
body.woocommerce-account .entry-content .wp-block-group.is-layout-constrained,
body.woocommerce-account .is-layout-constrained > .wp-block-group {
	width: 100% !important;
	max-width: none !important;
	margin-left: auto;
	margin-right: auto;
}

body.woocommerce-account .entry-content.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
body.woocommerce-account .wp-block-group.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: min(1120px, calc(100% - 24px));
}

.woocommerce-account .woocommerce {
	width: min(1120px, calc(100% - 24px));
	max-width: 1120px;
}

@media (min-width: 768px) {
	.woocommerce-account .woocommerce {
		width: min(1120px, calc(100% - 48px));
	}
}

.woocommerce-account h1,
.woocommerce-account h2,
.woocommerce-account h3,
.woocommerce-account h4,
.woocommerce-account h5,
.woocommerce-account h6 {
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	font-weight: 600;
	color: var(--aa-ink);
}

.woocommerce-account h1 {
	font-weight: 700;
}

.woocommerce-account h2 {
	margin-top: 0;
	font-size: 1.75rem;
}

.woocommerce-account p:not(.aa-header-tagline-cy),
.woocommerce-account li,
.woocommerce-account label,
.woocommerce-account input,
.woocommerce-account select,
.woocommerce-account textarea,
.woocommerce-account td,
.woocommerce-account th,
.woocommerce-account address,
.woocommerce-account button,
.woocommerce-account .button {
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
}

.woocommerce-account .woocommerce-MyAccount-content {
	min-width: 0;
	width: 100%;
}

.woocommerce-account .col2-set,
.woocommerce-account .col2-set .col-1,
.woocommerce-account .col2-set .col-2,
.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2 {
	float: none;
	width: auto;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
}

.woocommerce-account #customer_login.col2-set,
.woocommerce-account .ct-woo-unauthorized .col2-set {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 32px;
	width: 100%;
	max-width: 1120px;
	margin: 0;
}

@media (min-width: 1040px) {
	.woocommerce-account #customer_login.col2-set,
	.woocommerce-account .ct-woo-unauthorized #customer_login.col2-set {
		grid-template-columns: repeat(2, minmax(0, 480px));
		justify-content: center;
		align-items: start;
		column-gap: clamp(48px, calc(100% - 960px), 160px);
		width: 100%;
	}
}

.woocommerce-account .ct-woo-unauthorized > .woocommerce-form-login,
.woocommerce-account .ct-woo-unauthorized > .woocommerce-ResetPassword,
.woocommerce-account form.lost_reset_password {
	width: min(480px, 100%);
	max-width: 480px;
	margin-left: auto;
	margin-right: auto;
}

.woocommerce-account form .form-row,
.woocommerce-account form .form-row-first,
.woocommerce-account form .form-row-last,
.woocommerce-account form .form-row-wide {
	float: none;
	width: 100%;
	max-width: 100%;
	clear: both;
}

.woocommerce-account form .input-text,
.woocommerce-account form input.input-text,
.woocommerce-account form select,
.woocommerce-account form textarea {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.woocommerce-account form input[type="checkbox"],
.woocommerce-account form input[type="radio"] {
	width: auto;
	min-height: 0;
	max-width: none;
}

.woocommerce-account form .form-row label.woocommerce-form-login__rememberme {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 12px;
	font-weight: 400;
}

.woocommerce-account .lost_password {
	margin: 12px 0 0;
}

.woocommerce-account .woocommerce-Addresses.col2-set {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 28px;
	width: 100%;
}

@media (min-width: 800px) {
	.woocommerce-account .woocommerce-Addresses.col2-set {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 28px 40px;
	}
}

.woocommerce-account .woocommerce-Address-title {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
}

.woocommerce-account .woocommerce-Address address {
	font-style: normal;
	line-height: 1.5;
}

.woocommerce-account button.button.woocommerce-form-login__submit,
.woocommerce-account button.button.woocommerce-form-register__submit,
.woocommerce-account form.lost_reset_password button.button,
.woocommerce-account .woocommerce-address-fields button.button,
.woocommerce-account form.edit-account button.button,
.woocommerce-account .my_account_orders .button,
.woocommerce-account .woocommerce-orders-table .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	margin: 4px 0 0;
	padding: 12px 18px;
	border: 0;
	border-radius: 999px;
	background: #00818D;
	background-color: #00818D;
	color: #fff;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	box-shadow: none;
	transform: none;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce-account .my_account_orders .button,
.woocommerce-account .woocommerce-orders-table .button {
	width: auto;
	min-height: 44px;
	margin: 0;
	padding: 8px 16px;
}

.woocommerce-account button.button.woocommerce-form-login__submit::after,
.woocommerce-account button.button.woocommerce-form-register__submit::after,
.woocommerce-account form.lost_reset_password button.button::after,
.woocommerce-account .woocommerce-address-fields button.button::after,
.woocommerce-account form.edit-account button.button::after,
.woocommerce-account .my_account_orders .button::after,
.woocommerce-account .woocommerce-orders-table .button::after {
	content: "";
	display: block;
	width: 0;
	height: 0.45em;
	margin-left: 0;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: translateX(-8px) rotate(45deg);
	opacity: 0;
	transition: width 0.2s ease, margin-left 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

.woocommerce-account button.button.woocommerce-form-login__submit:hover,
.woocommerce-account button.button.woocommerce-form-login__submit:focus-visible,
.woocommerce-account button.button.woocommerce-form-register__submit:hover,
.woocommerce-account button.button.woocommerce-form-register__submit:focus-visible,
.woocommerce-account form.lost_reset_password button.button:hover,
.woocommerce-account form.lost_reset_password button.button:focus-visible,
.woocommerce-account .woocommerce-address-fields button.button:hover,
.woocommerce-account .woocommerce-address-fields button.button:focus-visible,
.woocommerce-account form.edit-account button.button:hover,
.woocommerce-account form.edit-account button.button:focus-visible,
.woocommerce-account .my_account_orders .button:hover,
.woocommerce-account .my_account_orders .button:focus-visible,
.woocommerce-account .woocommerce-orders-table .button:hover,
.woocommerce-account .woocommerce-orders-table .button:focus-visible {
	background: #1FC8D4;
	background-color: #1FC8D4;
	color: #111414;
	transform: translateY(-2px);
	box-shadow: 0 8px 16px rgba(17, 20, 20, 0.16);
}

.woocommerce-account button.button.woocommerce-form-login__submit:hover::after,
.woocommerce-account button.button.woocommerce-form-login__submit:focus-visible::after,
.woocommerce-account button.button.woocommerce-form-register__submit:hover::after,
.woocommerce-account button.button.woocommerce-form-register__submit:focus-visible::after,
.woocommerce-account form.lost_reset_password button.button:hover::after,
.woocommerce-account form.lost_reset_password button.button:focus-visible::after,
.woocommerce-account .woocommerce-address-fields button.button:hover::after,
.woocommerce-account .woocommerce-address-fields button.button:focus-visible::after,
.woocommerce-account form.edit-account button.button:hover::after,
.woocommerce-account form.edit-account button.button:focus-visible::after,
.woocommerce-account .my_account_orders .button:hover::after,
.woocommerce-account .my_account_orders .button:focus-visible::after,
.woocommerce-account .woocommerce-orders-table .button:hover::after,
.woocommerce-account .woocommerce-orders-table .button:focus-visible::after {
	width: 0.45em;
	margin-left: 10px;
	opacity: 1;
	transform: translateX(0) rotate(45deg);
}

.woocommerce-account button.button.woocommerce-form-login__submit:focus-visible,
.woocommerce-account button.button.woocommerce-form-register__submit:focus-visible,
.woocommerce-account form.lost_reset_password button.button:focus-visible,
.woocommerce-account .woocommerce-address-fields button.button:focus-visible,
.woocommerce-account form.edit-account button.button:focus-visible,
.woocommerce-account .my_account_orders .button:focus-visible,
.woocommerce-account .woocommerce-orders-table .button:focus-visible {
	outline: 2px solid #111414;
	outline-offset: 3px;
}

@media (max-width: 699px) {
	.woocommerce-account table.shop_table_responsive thead {
		display: none;
	}

	.woocommerce-account table.shop_table_responsive,
	.woocommerce-account table.shop_table_responsive tbody,
	.woocommerce-account table.shop_table_responsive tr,
	.woocommerce-account table.shop_table_responsive td {
		display: block;
		width: 100%;
	}

	.woocommerce-account table.shop_table_responsive tr {
		margin: 0 0 16px;
		border-bottom: 1px solid var(--aa-line);
	}

	.woocommerce-account table.shop_table_responsive td::before {
		content: attr(data-title);
		display: block;
		margin-bottom: 4px;
		font-weight: 600;
	}
}

.woocommerce ul.products li.product > .ct-woo-card-actions > a.button:hover,
.woocommerce ul.products li.product > .ct-woo-card-actions > a.button:focus-visible,
.related ul.products li.product > .ct-woo-card-actions > a.button:hover,
.related ul.products li.product > .ct-woo-card-actions > a.button:focus-visible,
.upsells ul.products li.product > .ct-woo-card-actions > a.button:hover,
.upsells ul.products li.product > .ct-woo-card-actions > a.button:focus-visible,
[data-products] > .product > .ct-woo-card-actions > a.button:hover,
[data-products] > .product > .ct-woo-card-actions > a.button:focus-visible,
.wp-block-woocommerce-product-button .wp-block-button__link:hover,
.wp-block-woocommerce-product-button .wp-block-button__link:focus-visible,
.wc-block-components-product-button .wp-element-button:hover,
.wc-block-components-product-button .wp-element-button:focus-visible,
.wc-block-product-template .wp-block-button__link:hover,
.wc-block-product-template .wp-block-button__link:focus-visible {
	background: #1FC8D4;
	background-color: #1FC8D4;
	color: #111414;
	transform: translateY(-2px);
	box-shadow: 0 8px 16px rgba(17, 20, 20, 0.16);
}

.woocommerce ul.products li.product > .ct-woo-card-actions > a.button:focus-visible,
.related ul.products li.product > .ct-woo-card-actions > a.button:focus-visible,
.upsells ul.products li.product > .ct-woo-card-actions > a.button:focus-visible,
[data-products] > .product > .ct-woo-card-actions > a.button:focus-visible {
	outline: 2px solid #111414;
	outline-offset: 3px;
}

/* 1.10.7 New to ants. Forest floor hero, illustrated carousel, icon reasons, pills. */

.aa-begin a.aa-button {
	gap: 0;
	min-height: 48px;
	padding: 12px 22px;
	border: 0;
	border-radius: 999px;
	background: #00818D;
	background-color: #00818D;
	color: #fff;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-weight: 600;
	box-shadow: none;
	transform: none;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.aa-begin a.aa-button .aa-button-arrow {
	width: 0;
	height: 18px;
	margin-left: 0;
	opacity: 0;
	overflow: hidden;
	transition: width 0.2s ease, margin-left 0.2s ease, opacity 0.2s ease;
}

.aa-begin a.aa-button:hover,
.aa-begin a.aa-button:focus-visible {
	background: #1FC8D4;
	background-color: #1FC8D4;
	color: #111414;
	transform: translateY(-2px);
	box-shadow: 0 8px 16px rgba(17, 20, 20, 0.16);
}

.aa-begin a.aa-button:hover .aa-button-arrow,
.aa-begin a.aa-button:focus-visible .aa-button-arrow {
	width: 18px;
	margin-left: 10px;
	opacity: 1;
}

.aa-begin a.aa-button:focus-visible {
	outline: 2px solid #111414;
	outline-offset: 3px;
}

.aa-begin-hero picture,
.aa-close-media picture {
	position: absolute;
	inset: 0;
	display: block;
	margin: 0;
}

.aa-begin-hero {
	align-items: flex-end;
	justify-content: center;
	min-height: clamp(440px, 56vw, 620px);
	background: #1d3a28;
}

.aa-begin-hero img {
	object-position: center 68%;
}

.aa-close-media img {
	object-position: center bottom;
}

.aa-begin-hero-shade {
	background: linear-gradient(180deg, rgba(17, 20, 20, 0) 42%, rgba(17, 20, 20, 0.1) 62%, rgba(17, 20, 20, 0.46) 100%);
}

.aa-begin-hero-copy {
	width: min(36rem, calc(100% - 32px));
	margin-inline: auto;
	padding-top: 0;
	padding-bottom: clamp(28px, 7%, 64px);
	text-align: center;
}

.aa-begin-hero h1,
.aa-begin-hero p {
	color: #fff;
	text-shadow: 0 1px 2px rgba(17, 20, 20, 0.45);
}

.aa-begin-hero h1 {
	font-size: clamp(2.05rem, 4.4vw, 3.35rem);
}

.aa-begin-hero p {
	margin-inline: auto;
}

.aa-why-carousel {
	margin-top: 8px;
}

.aa-why-frame {
	position: relative;
}

.aa-why-viewport {
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

.aa-why-viewport::-webkit-scrollbar {
	display: none;
}

.aa-why-track {
	display: flex;
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.aa-why-card {
	position: relative;
	flex: 0 0 86%;
	scroll-snap-align: start;
	overflow: hidden;
	border-radius: 16px;
}

.aa-why-card picture,
.aa-why-card img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 840 / 1050;
	object-fit: cover;
	background: #d7f4f8;
}

.aa-why-copy {
	position: absolute;
	top: 6%;
	left: 12%;
	right: 12%;
	max-height: 36%;
	text-align: center;
	color: #111414;
}

.aa-why-copy h3,
.aa-reason-row h3 {
	margin: 0 0 6px;
	color: #111414;
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	font-weight: 600;
	font-size: clamp(1.15rem, 1.5vw, 1.5rem);
	line-height: 1.2;
}

.aa-why-copy p,
.aa-reason-row p {
	margin: 0;
	color: #111414;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-size: 0.98rem;
	font-weight: 500;
	line-height: 1.35;
}

.aa-why-prev,
.aa-why-next {
	position: absolute;
	top: 50%;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	min-height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: #00818D;
	background-color: #00818D;
	color: #fff;
	box-shadow: 0 6px 14px rgba(17, 20, 20, 0.18);
	transform: translateY(-50%);
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.aa-why-prev {
	left: 8px;
}

.aa-why-next {
	right: 8px;
}

.aa-why-prev:hover,
.aa-why-next:hover,
.aa-why-prev:focus-visible,
.aa-why-next:focus-visible {
	background: #1FC8D4;
	background-color: #1FC8D4;
	color: #111414;
	transform: translateY(calc(-50% - 2px));
	box-shadow: 0 8px 16px rgba(17, 20, 20, 0.16);
}

.aa-why-prev:focus-visible,
.aa-why-next:focus-visible,
.aa-why-dot:focus-visible {
	outline: 2px solid #111414;
	outline-offset: 3px;
}

.aa-why-dots {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin-top: 14px;
}

.aa-why-dot {
	width: 10px;
	height: 10px;
	min-height: 10px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: #D5DEDF;
	background-color: #D5DEDF;
	cursor: pointer;
}

.aa-why-dot[aria-current="true"] {
	width: 22px;
	background: #00818D;
	background-color: #00818D;
}

.aa-choose {
	padding-bottom: 8px;
}

.aa-addon-band {
	padding-top: 0;
}

.aa-addon-card {
	margin-top: 0;
}

.aa-reason-row {
	gap: 28px 20px;
	padding: 0;
	background: transparent;
}

.aa-reason-row li {
	align-items: flex-start;
	gap: 12px;
	min-height: 0;
}

.aa-reason-icon {
	display: block;
	flex: 0 0 auto;
	width: 72px;
	height: 72px;
}

.aa-reason-icon img {
	display: block;
	width: 72px;
	height: 72px;
	object-fit: contain;
}

.aa-close-shade {
	background: linear-gradient(180deg, rgba(17, 20, 20, 0.08), rgba(17, 20, 20, 0.34));
}

.aa-begin-close {
	align-items: flex-end;
	min-height: 280px;
	padding-bottom: 36px;
}

@media (min-width: 720px) {
	.aa-why-card {
		flex-basis: calc((100% - 16px) / 2.15);
	}
}

@media (min-width: 768px) {
	.aa-reason-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1100px) {
	.aa-reason-row {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.aa-begin-hero {
		min-height: 460px;
	}

	.aa-begin-hero img {
		object-position: center 62%;
	}

	.aa-why-prev,
	.aa-why-next {
		width: 40px;
		height: 40px;
		min-height: 40px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-why-viewport {
		scroll-behavior: auto;
	}

	.aa-begin a.aa-button,
	.aa-begin a.aa-button .aa-button-arrow,
	.aa-why-prev,
	.aa-why-next,
	.aa-why-dot {
		transition: none;
	}
}

/* 1.10.8. Short forest strip, smaller reason cards, step scenes, pills on home and keeper. */

.aa-journey-source {
	display: none;
}

.aa-begin-hero {
	align-items: flex-start;
	justify-content: center;
	min-height: clamp(188px, 18vw, 248px);
	background: #c9ddb4;
}

.aa-begin-hero img {
	object-position: center center;
}

.aa-begin-hero-shade {
	background: none;
}

.aa-begin-hero-copy {
	width: min(40rem, calc(100% - 32px));
	padding-top: clamp(14px, 2.4vw, 26px);
	padding-bottom: 12px;
	text-align: center;
}

.aa-begin-hero h1,
.aa-begin-hero p {
	color: #111414;
	text-shadow: 0 0 12px rgba(255, 255, 255, 0.9), 0 1px 0 rgba(255, 255, 255, 0.65);
}

.aa-begin-hero h1 {
	font-size: clamp(1.7rem, 3vw, 2.55rem);
}

.aa-begin-hero p {
	max-width: 34rem;
	font-size: clamp(1rem, 1.4vw, 1.15rem);
}

.aa-why-track {
	gap: 12px;
}

.aa-why-card {
	flex: 0 0 calc((100% - 12px) / 2.08);
}

.aa-why-card picture,
.aa-why-card img {
	aspect-ratio: 1 / 1.05;
	object-fit: cover;
}

.aa-why-card::before {
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	left: 0;
	height: 58%;
	background: linear-gradient(180deg, rgba(229, 248, 250, 0.94) 0%, rgba(229, 248, 250, 0.62) 46%, rgba(229, 248, 250, 0) 100%);
	pointer-events: none;
}

.aa-why-copy {
	z-index: 2;
	top: 10px;
	left: 8%;
	right: 8%;
	max-height: none;
}

.aa-why-copy h3 {
	font-size: clamp(1.28rem, 1.8vw, 1.7rem);
}

.aa-why-copy p {
	font-size: clamp(1.05rem, 1.3vw, 1.22rem);
	font-weight: 600;
}

.aa-why-pos-1 img { object-position: center 74%; }
.aa-why-pos-2 img { object-position: center 70%; }
.aa-why-pos-3 img { object-position: center 68%; }
.aa-why-pos-4 img { object-position: center 72%; }
.aa-why-pos-5 img { object-position: center 62%; }
.aa-why-pos-6 img { object-position: center 70%; }
.aa-why-pos-7 img { object-position: center 66%; }
.aa-why-pos-8 img { object-position: center 56%; }

.aa-step picture {
	display: block;
	width: 100%;
	height: 112px;
	margin: 0 0 10px;
	overflow: hidden;
	border-radius: 12px;
}

.aa-adventures-art {
	width: 100%;
	height: 112px;
	margin: 0;
	object-fit: cover;
	object-position: center;
	border-radius: 0;
}

.aa-quad-media picture,
.aa-shop-panel > picture {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
}

.aa-shop-panel > picture img,
.aa-quad-media picture img {
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center;
}

.aa-view-landing .aa-button,
.aa-view-keeper .aa-button,
.aa-view-landing .aa-news-form button,
.aa-view-keeper .aa-news-form button {
	gap: 0;
	min-height: 48px;
	padding: 12px 22px;
	border: 0;
	border-radius: 999px;
	background: #00818D;
	background-color: #00818D;
	color: #fff;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	font-weight: 600;
	box-shadow: none;
	transform: none;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.aa-view-landing .aa-button .aa-button-arrow,
.aa-view-keeper .aa-button .aa-button-arrow {
	width: 0;
	height: 18px;
	margin-left: 0;
	opacity: 0;
	overflow: hidden;
	transition: width 0.2s ease, margin-left 0.2s ease, opacity 0.2s ease;
}

.aa-view-landing .aa-button:hover,
.aa-view-landing .aa-button:focus-visible,
.aa-view-keeper .aa-button:hover,
.aa-view-keeper .aa-button:focus-visible,
.aa-view-landing .aa-path-half:hover .aa-button,
.aa-view-landing .aa-path-half:focus-visible .aa-button,
.aa-view-keeper .aa-path-half:hover .aa-button,
.aa-view-keeper .aa-path-half:focus-visible .aa-button,
.aa-view-landing .aa-news-form button:hover,
.aa-view-landing .aa-news-form button:focus-visible,
.aa-view-keeper .aa-news-form button:hover,
.aa-view-keeper .aa-news-form button:focus-visible {
	background: #1FC8D4;
	background-color: #1FC8D4;
	color: #111414;
	transform: translateY(-2px);
	box-shadow: 0 8px 16px rgba(17, 20, 20, 0.16);
}

.aa-view-landing .aa-button:hover .aa-button-arrow,
.aa-view-landing .aa-button:focus-visible .aa-button-arrow,
.aa-view-keeper .aa-button:hover .aa-button-arrow,
.aa-view-keeper .aa-button:focus-visible .aa-button-arrow,
.aa-view-landing .aa-path-half:hover .aa-button .aa-button-arrow,
.aa-view-landing .aa-path-half:focus-visible .aa-button .aa-button-arrow {
	width: 18px;
	margin-left: 10px;
	opacity: 1;
}

.aa-view-landing .aa-button:focus-visible,
.aa-view-keeper .aa-button:focus-visible,
.aa-view-landing .aa-news-form button:focus-visible,
.aa-view-keeper .aa-news-form button:focus-visible {
	outline: 2px solid #111414;
	outline-offset: 3px;
}

@media (min-width: 720px) {
	.aa-why-card {
		flex-basis: calc((100% - 24px) / 3.15);
	}
}

@media (min-width: 1100px) {
	.aa-why-card {
		flex-basis: calc((100% - 48px) / 4.45);
	}
}

@media (max-width: 899px) {
	.aa-step picture,
	.aa-adventures-art {
		height: 96px;
	}
}

@media (max-width: 767px) {
	.aa-begin-hero {
		min-height: 300px;
	}

	.aa-begin-hero img {
		object-position: center center;
	}

	.aa-shop-panel > picture,
	.aa-shop-panel > picture img {
		position: relative;
		height: 220px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-view-landing .aa-button,
	.aa-view-keeper .aa-button,
	.aa-view-landing .aa-button .aa-button-arrow,
	.aa-view-keeper .aa-button .aa-button-arrow,
	.aa-view-landing .aa-news-form button,
	.aa-view-keeper .aa-news-form button {
		transition: none;
	}
}

/* 1.10.9. Step scenes sit behind the words. The homepage quad stays in the site column.
   The trust ticker is one set of four notes. The kit drawing is half width. The landing
   switch is half size, and Croeso sits in the gap above Where to start? */

.aa-steps-row .aa-step {
	position: relative;
	overflow: hidden;
	min-height: 156px;
	padding: 14px 12px 16px;
	border-radius: 14px;
	isolation: isolate;
}

.aa-steps-row .aa-step picture {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: 0;
	pointer-events: none;
}

.aa-steps-row .aa-step picture img,
.aa-steps-row .aa-adventures-art {
	width: 100%;
	height: 100%;
	max-width: none;
	margin: 0;
	object-fit: cover;
	object-position: center center;
	opacity: 1;
	border-radius: 0;
}

.aa-steps-row .aa-step-num,
.aa-steps-row .aa-step-title {
	position: relative;
	z-index: 2;
}

.aa-steps-row .aa-step-title {
	display: inline-block;
	max-width: 100%;
	padding: 4px 8px;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.2);
	box-shadow: none;
	backdrop-filter: none;
	color: #111414;
	text-shadow: 0 0 6px rgba(255, 255, 255, 0.9);
}

.aa-view-landing .aa-quad {
	width: min(1120px, calc(100% - 24px));
	max-width: 1120px;
	margin-inline: auto;
}

.aa-contents .aa-draw {
	width: min(80%, 80vw);
	max-width: 80%;
	margin-inline: auto;
}

.aa-trustbar ul {
	justify-content: space-evenly;
	gap: 0;
	width: 240vw;
	padding: 7px 0;
}

.aa-trustbar li {
	flex: 1 1 0;
	padding: 0 12px;
	text-align: center;
}

.woocommerce-cart .woocommerce > .aa-cart-heading,
.woocommerce-cart .entry-content > .aa-cart-heading,
.woocommerce-cart .wp-block-post-content > .aa-cart-heading {
	grid-column: 1 / -1;
}

.aa-cart-heading > .wp-block-heading,
.aa-cart-heading > .wp-block-post-title {
	width: auto;
	flex: 0 1 auto;
	margin: 0;
}

.aa-view-landing .aa-hero {
	justify-content: flex-start;
}

.aa-view-landing .aa-hero-copy {
	margin-top: auto;
	margin-bottom: auto;
	padding-top: 0;
	padding-bottom: 0;
	text-align: left;
}

.aa-view-landing .aa-switch-slot {
	margin-top: 0;
}

.aa-view-landing .aa-choose-line {
	padding: 6px 11px;
	font-size: 0.875rem;
}

.aa-view-landing .aa-switch-large {
	--aa-knob: 54px;
	--aa-track: 39px;
	--aa-shift: 26px;
	width: min(360px, calc(100vw - 24px));
	height: auto;
	min-height: 44px;
}

.aa-view-landing .aa-switch-large .aa-switch-opt {
	min-height: 44px;
	min-width: 44px;
	padding: 4px 8px;
	font-size: 0.6rem;
}

.aa-view-landing .aa-switch-large .aa-switch-knob {
	border-width: 2px;
}

@media (min-width: 768px) {
	.aa-view-landing .aa-quad {
		width: min(1120px, calc(100% - 48px));
	}

	.aa-contents .aa-draw {
		width: 50%;
		max-width: 50%;
	}
}

@media (min-width: 900px) {
	.aa-trustbar ul {
		width: calc(100vw * 4 / 3);
	}
}

@media (max-width: 899px) {
	.aa-steps-row .aa-step {
		min-height: 148px;
	}
}

@media (max-width: 767px) {
	.aa-view-landing .aa-hero {
		min-height: clamp(460px, 70vh, 560px);
	}

	.aa-view-landing .aa-hero-copy {
		margin-left: 0;
		margin-right: 0;
		width: 100%;
		padding-left: 8px;
		padding-right: 8px;
		text-align: left;
	}

	.aa-view-landing .aa-choose-line {
		padding: 5px 7px;
		font-size: 0.675rem;
	}

	.aa-view-landing .aa-switch-large {
		--aa-knob: 34px;
		--aa-track: 28px;
		--aa-shift: 0px;
		width: 50%;
		max-width: calc(100% - 16px);
		min-height: 44px;
	}

	.aa-view-landing .aa-switch-large .aa-switch-opt {
		min-height: 44px;
		min-width: 44px;
		padding: 6px 6px;
		font-size: 0.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-trustbar ul {
		width: auto;
		flex-wrap: wrap;
		justify-content: center;
	}

	.aa-trustbar li {
		flex: 0 1 auto;
	}
}

/* 1.10.12. On a narrow screen the search magnifier sits in the icon bar.
   Desktop keeps the round search in its own column. */

.aa-header-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

@media (max-width: 1023px) {
	.aa-header-main {
		grid-template-areas:
			"mode mode mode"
			"brand brand brand"
			"rule rule rule"
			"toggle icons icons";
		row-gap: 0;
		padding-bottom: 0;
	}

	.aa-header-actions {
		display: contents;
	}

	.site-header .aa-search,
	.site-header .aa-search:focus-within,
	.site-header .aa-search.is-open {
		position: relative;
		width: 48px;
		min-width: 48px;
		max-width: 48px;
		height: 48px;
		border: 0;
		border-radius: 0;
		background: transparent;
		overflow: visible;
		justify-self: auto;
	}

	.site-header .aa-search input[type="search"] {
		position: absolute;
		right: 48px;
		top: 0;
		width: 0;
		height: 48px;
		min-height: 48px;
		margin: 0;
		padding: 0;
		border: 0;
		border-radius: 999px;
		background: var(--aa-white);
		box-sizing: border-box;
	}

	.site-header .aa-search:focus-within input[type="search"],
	.site-header .aa-search.is-open input[type="search"] {
		width: min(16rem, calc(100vw - 250px));
		padding: 0 12px;
		border: 1px solid var(--aa-line);
		opacity: 1;
	}

	.site-header .aa-search button {
		width: 48px;
		min-width: 48px;
		min-height: 48px;
		height: 48px;
		padding: 0;
		border: 0;
		border-radius: 0;
		background: transparent;
	}

	.site-header .aa-search-icon {
		width: 24px;
		height: 24px;
	}

	.site-header .aa-search-icon circle,
	.site-header .aa-search-icon path {
		stroke-width: 1.8;
	}
}

@media (min-width: 1024px) {
	.aa-header-icons {
		display: contents;
	}

	.aa-header-actions {
		grid-area: icons;
		justify-self: end;
	}
}

/* 1.10.12. Quantity is one row: minus, the number, plus. */

.woocommerce .quantity {
	display: inline-flex;
	flex-flow: row wrap;
	align-items: stretch;
	width: auto;
	max-width: 100%;
	margin: 0;
	border: 0;
	background: transparent;
	overflow: visible;
	vertical-align: middle;
}

.woocommerce .quantity > label:not(.screen-reader-text) {
	flex: 1 0 100%;
	margin: 0 0 6px;
	border: 0;
}

.woocommerce .quantity .minus,
.woocommerce .quantity .plus,
.woocommerce .quantity .ct-decrease,
.woocommerce .quantity .ct-increase,
.woocommerce .quantity button.minus,
.woocommerce .quantity button.plus {
	position: static;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 48px;
	width: 48px;
	min-width: 48px;
	height: 48px;
	min-height: 48px;
	margin: 0;
	padding: 0;
	border: 1px solid var(--aa-line);
	border-radius: 0;
	background: var(--aa-mist);
	color: var(--aa-ink);
	box-shadow: none;
	font-size: 1.35rem;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
}

.woocommerce .quantity .minus,
.woocommerce .quantity .ct-decrease,
.woocommerce .quantity button.minus {
	order: 1;
	border-radius: 8px 0 0 8px;
	border-right: 0;
}

.woocommerce .quantity .qty,
.woocommerce .quantity input.qty {
	order: 2;
	flex: 0 0 3.5rem;
	width: 3.5rem;
	min-width: 3.5rem;
	height: 48px;
	min-height: 48px;
	margin: 0;
	padding: 0 4px;
	border: 1px solid var(--aa-line);
	border-radius: 0;
	background: var(--aa-white);
	box-shadow: none;
	text-align: center;
	-moz-appearance: textfield;
	appearance: textfield;
}

.woocommerce .quantity .plus,
.woocommerce .quantity .ct-increase,
.woocommerce .quantity button.plus {
	order: 3;
	border-radius: 0 8px 8px 0;
	border-left: 0;
}

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

.woocommerce .quantity .ct-decrease:empty::before {
	content: "−";
}

.woocommerce .quantity .ct-increase:empty::before {
	content: "+";
}

.woocommerce table.shop_table .quantity {
	flex-wrap: nowrap;
	width: max-content;
	min-width: 160px;
}

.woocommerce .quantity .minus:hover,
.woocommerce .quantity .plus:hover,
.woocommerce .quantity .ct-decrease:hover,
.woocommerce .quantity .ct-increase:hover,
.woocommerce .quantity button.minus:hover,
.woocommerce .quantity button.plus:hover,
.woocommerce button.button.minus:hover,
.woocommerce button.button.plus:hover {
	background: var(--aa-mist);
	color: var(--aa-ink);
}

/* 1.10.14 About page. Scoped so the rest of the theme stays as it was. */

.aa-about {
	color: var(--aa-ink);
}

.aa-about h1,
.aa-about h2,
.aa-about h3 {
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	color: var(--aa-ink);
	line-height: 1.15;
}

.aa-about h1 {
	margin: 4px 0 10px;
	font-size: clamp(2rem, 4vw, 3.15rem);
	font-weight: 700;
}

.aa-about h2 {
	margin: 0 0 16px;
	font-size: clamp(1.6rem, 3vw, 2.15rem);
	font-weight: 700;
}

.aa-about h3 {
	margin: 0 0 6px;
	font-size: 1.15rem;
	font-weight: 700;
}

.aa-about p {
	margin: 0;
}

.aa-about-hero {
	padding: 28px 0 32px;
}

.aa-about-hero-inner,
.aa-about-give-inner,
.aa-about-close-inner {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	gap: 28px;
	align-items: center;
}

.aa-about-hero .aa-script {
	margin: 0;
	color: var(--aa-ink);
	font-size: clamp(1.8rem, 3vw, 2.4rem);
}

.aa-about-intro {
	max-width: 36rem;
	font-size: 1.125rem;
	line-height: 1.5;
}

.aa-about-hello {
	margin-top: 14px;
}

.aa-about-hello .aa-rufa-frame-wave {
	width: 112px;
}

.aa-about-frame {
	margin: 0;
	overflow: hidden;
	border-radius: 18px;
	line-height: 0;
}

.aa-about-frame img,
.aa-about-photo {
	display: block;
	width: 100%;
	height: 240px;
	object-fit: cover;
	object-position: center;
}

.aa-about-story-frame {
	margin-top: 22px;
}

.aa-about-story-frame img,
.aa-about-story-frame .aa-about-photo {
	height: 220px;
	object-position: 28% 50%;
}

.aa-about-origin,
.aa-about-give,
.aa-about-with {
	padding: 40px 0 44px;
}

.aa-about-story,
.aa-about-cards {
	display: grid;
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.aa-about-story {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	position: relative;
}

.aa-about-story li,
.aa-about-card {
	position: relative;
	min-width: 0;
	padding: 18px 16px 20px;
	border: 1px solid var(--aa-line);
	border-radius: 16px;
	background: var(--aa-white);
}

.aa-about-story li p:last-child,
.aa-about-card p {
	line-height: 1.45;
}

.aa-about-step {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	margin: 0 0 12px;
	padding: 0 10px;
	border-radius: 999px;
	background: var(--aa-teal-deep);
	color: var(--aa-white);
	font-size: 0.85rem;
	font-weight: 700;
	line-height: 1;
}

.aa-about-step:empty {
	width: 14px;
	height: 14px;
	min-height: 14px;
	padding: 0;
}

.aa-about-cards {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.aa-about-icon {
	display: block;
	width: 48px;
	height: 48px;
	margin: 0 0 12px;
	padding: 10px;
	border-radius: 50%;
	background: #e7f6f7;
	color: var(--aa-teal-deep);
	box-sizing: border-box;
}

.aa-about-give-inner {
	grid-template-columns: auto minmax(0, 1fr);
}

.aa-about-badge img {
	display: block;
	width: 96px;
	height: auto;
}

.aa-about-give p {
	max-width: 40rem;
	font-size: 1.125rem;
	line-height: 1.5;
}

.aa-about-close {
	padding: 36px 0;
	background: var(--aa-ink);
	color: var(--aa-white);
}

.aa-about-close h2 {
	color: var(--aa-white);
}

.aa-about-close-inner {
	grid-template-columns: auto minmax(0, 1fr);
}

.aa-about-cheer .aa-rufa-frame-celebrating {
	width: 132px;
}

.aa-about-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 16px;
}

.aa-about a.aa-button,
.aa-about button.aa-button {
	gap: 0;
	min-height: 48px;
	padding: 12px 22px;
	border-radius: 999px;
	background: #00818D;
	color: #fff;
	font-family: Barlow, "Barlow Fallback", "Segoe UI", sans-serif;
	box-shadow: none;
	transform: none;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.aa-about a.aa-button .aa-button-arrow {
	width: 0;
	height: 18px;
	margin-left: 0;
	opacity: 0;
	overflow: hidden;
	transition: width 0.2s ease, margin-left 0.2s ease, opacity 0.2s ease;
}

.aa-about a.aa-button:hover,
.aa-about a.aa-button:focus-visible,
.aa-about button.aa-button:hover,
.aa-about button.aa-button:focus-visible {
	background: #1FC8D4;
	color: #111414;
	transform: translateY(-2px);
	box-shadow: 0 8px 16px rgba(17, 20, 20, 0.16);
}

.aa-about a.aa-button:hover .aa-button-arrow,
.aa-about a.aa-button:focus-visible .aa-button-arrow,
.aa-about button.aa-button:hover .aa-button-arrow,
.aa-about button.aa-button:focus-visible .aa-button-arrow {
	width: 18px;
	margin-left: 10px;
	opacity: 1;
}

.aa-about a.aa-button:focus-visible,
.aa-about button.aa-button:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 3px;
}

.aa-about-legal {
	padding: 16px 0 8px;
}

.aa-about-mark {
	max-width: 46rem;
	color: #3c3c3c;
	font-size: 0.8125rem;
	line-height: 1.5;
}

.aa-about-mark a {
	color: var(--aa-teal-deep);
	text-underline-offset: 2px;
}

.aa-about-mark a:hover,
.aa-about-mark a:focus-visible {
	color: #004e56;
}

.aa-about-mark a:focus-visible {
	outline: 2px solid var(--aa-ink);
	outline-offset: 2px;
}

@media (max-width: 899px) {
	.aa-about-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 759px) {
	.aa-about-hero-inner,
	.aa-about-give-inner,
	.aa-about-close-inner,
	.aa-about-story {
		grid-template-columns: 1fr;
	}

	.aa-about-hero {
		padding: 22px 0 26px;
	}

	.aa-about-frame img,
	.aa-about-photo,
	.aa-about-story-frame img,
	.aa-about-story-frame .aa-about-photo {
		height: 190px;
	}

	.aa-about-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.aa-about a.aa-button,
	.aa-about button.aa-button {
		width: 100%;
	}
}

@media (max-width: 559px) {
	.aa-about-cards {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-about a.aa-button,
	.aa-about button.aa-button,
	.aa-about a.aa-button .aa-button-arrow,
	.aa-about button.aa-button .aa-button-arrow {
		transition: none;
	}

	.aa-about a.aa-button:hover,
	.aa-about a.aa-button:focus-visible,
	.aa-about button.aa-button:hover,
	.aa-about button.aa-button:focus-visible {
		transform: none;
	}
}

/* 1.10.15 Contact page. Same bands and pills as About. */

.aa-contact-hello .aa-rufa-frame-telephone {
	width: min(280px, 72vw);
	max-width: none;
	margin-inline: auto;
}

.aa-contact-account {
	padding: 40px 0 8px;
}

.aa-contact-account-card {
	max-width: 40rem;
	margin: 0 auto;
	padding: 22px 22px 24px;
	border: 1px solid var(--aa-line);
	border-radius: 16px;
	background: var(--aa-white);
}

.aa-contact-account-card p,
.aa-contact-address {
	line-height: 1.5;
}

.aa-contact-note {
	margin-top: 12px;
	color: #3c3c3c;
	font-size: 0.95rem;
}

.aa-contact-address {
	margin: 0;
	font-style: normal;
}

.aa-about-card a {
	color: var(--aa-teal-deep);
	text-underline-offset: 2px;
}

.aa-about-card a:hover,
.aa-about-card a:focus-visible {
	color: #004e56;
}

.aa-about-card a:focus-visible,
.aa-contact-map-open a:focus-visible {
	outline: 2px solid var(--aa-ink);
	outline-offset: 2px;
}

.aa-contact-map {
	margin-top: 22px;
}

.aa-contact-map-frame {
	overflow: hidden;
	border-radius: 18px;
	background:
		radial-gradient(circle at 20% 20%, rgba(31, 200, 212, 0.28), transparent 42%),
		#e7f3ec;
}

.aa-contact-map-frame iframe {
	display: block;
	width: 100%;
	height: min(420px, 70vw);
	min-height: 240px;
	border: 0;
}

.aa-contact-map-hold {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 240px;
	padding: 28px 20px;
	text-align: center;
}

.aa-contact-map-hold p {
	max-width: 22rem;
	font-size: 1.05rem;
}

.aa-contact-map-hold .aa-about-icon {
	margin: 0;
}

.aa-contact-map-open {
	margin: 10px 0 0;
	font-size: 0.95rem;
}

.aa-contact-map-open a {
	color: var(--aa-teal-deep);
}

.aa-contact-colony {
	text-align: center;
}

.aa-contact-colony h2 {
	max-width: 18em;
	margin-inline: auto;
}

.aa-contact-colony .aa-about-actions {
	justify-content: center;
}

.aa-about button.aa-button {
	border: 0;
	cursor: pointer;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.2;
}

@media (max-width: 759px) {
	.aa-contact-hello .aa-rufa-frame-telephone {
		width: min(200px, 64vw);
	}

	.aa-contact-account {
		padding-top: 28px;
	}

	.aa-contact-colony .aa-about-actions {
		align-items: stretch;
	}
}

/* 1.10.16. Unwanted colonies, and ant trails between shop notes. */

.aa-colony-hello .aa-rufa-frame-suitcase {
	width: min(280px, 72vw);
	max-width: none;
	margin-inline: auto;
}

.aa-colony-warn,
.aa-colony-send {
	padding: 36px 0 40px;
}

.aa-colony-stop,
.aa-colony-law,
.aa-colony-pack,
.aa-colony-before {
	max-width: 40rem;
	line-height: 1.5;
}

.aa-colony-stop {
	margin-top: 8px;
	font-size: 1.2rem;
	font-weight: 600;
}

.aa-colony-law,
.aa-colony-before {
	margin-top: 14px;
}

.aa-colony-cards {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aa-colony-address {
	display: inline-block;
	margin-top: 16px;
	padding: 16px 18px;
	border: 1px solid var(--aa-line);
	border-radius: 16px;
	background: var(--aa-white);
	font-style: normal;
	line-height: 1.45;
}

.aa-colony-form-card {
	max-width: 40rem;
	margin-top: 22px;
	padding: 22px 22px 8px;
	border: 1px solid var(--aa-line);
	border-radius: 16px;
	background: var(--aa-white);
}

.aa-colony-form-card h3 {
	margin-bottom: 14px;
}

.aa-colony-date {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin: 0 0 12px;
	padding: 0;
	border: 0;
}

.aa-colony-date legend {
	grid-column: 1 / -1;
	margin-bottom: 4px;
	font-weight: 600;
}

.aa-colony-date p {
	margin: 0;
}

.aa-colony-form input[type="checkbox"] {
	width: 1.15rem;
	min-height: 0;
	margin: 3px 0 0;
	flex: none;
}

.aa-colony-form input[type="file"] {
	padding: 8px 0;
	border: 0;
	background: transparent;
}

.aa-colony-check {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}

.aa-colony-check label {
	display: inline;
	margin: 0;
	font-weight: 600;
}

.aa-colony-form .aa-button {
	width: auto;
}

.aa-trustbar ul {
	width: max-content;
	justify-content: flex-start;
	gap: 0;
	margin: 0;
	padding: 7px 0;
}

.aa-trustbar li {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	gap: 0;
	margin: 0;
	padding: 0;
	position: relative;
	text-align: left;
}

.aa-trustbar li::before {
	content: none;
	display: none;
	margin: 0;
}

.aa-trust-gap {
	position: relative;
	left: auto;
	top: auto;
	z-index: 1;
	flex: 0 0 144px;
	width: 144px;
	height: 16px;
	margin: 0;
	padding: 0;
	color: #A8B6B8;
	pointer-events: none;
	transform: none;
}

.aa-trust-trail {
	display: block;
	width: 100%;
	height: 16px;
	overflow: visible;
}

.aa-trust-ant {
	position: absolute;
	top: 50%;
	width: 33.75px;
	height: 15px;
	overflow: visible;
	color: #6E7C7E;
	transform: translate(-50%, -50%);
}

@media (min-width: 900px) {
	.aa-trust-gap {
		flex-basis: 224px;
		width: 224px;
	}
}

@media (max-width: 899px) {
	.aa-colony-cards {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 759px) {
	.aa-colony-hello .aa-rufa-frame-suitcase {
		width: min(200px, 64vw);
	}

	.aa-colony-warn,
	.aa-colony-send {
		padding: 28px 0 32px;
	}

	.aa-colony-date {
		grid-template-columns: 1fr;
	}

	.aa-colony-form .aa-button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-trustbar ul {
		width: auto;
		max-width: 100%;
		flex-wrap: wrap;
		justify-content: center;
	}

	.aa-trustbar li {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 1 auto;
		gap: 0;
	}

	.aa-trust-gap {
		position: relative;
		flex: 0 0 144px;
		width: 144px;
		transform: none;
	}
}

@media (prefers-reduced-motion: reduce) and (min-width: 900px) {
	.aa-trust-gap {
		flex-basis: 224px;
		width: 224px;
	}
}

/* 1.10.19. The softened forest path keeps the log and the trail in view. */

.aa-begin-hero img {
	object-position: center 60%;
}

@media (max-width: 767px) {
	.aa-begin-hero img {
		object-position: center center;
	}
}

/* 1.10.24. Empty catalogue, order received cards, and phone totals that keep their labels. */

.aa-store-empty {
	margin: 18px 0 28px;
	padding: 22px 20px;
	background: var(--aa-mist);
	color: var(--aa-ink);
}

.aa-store-empty h2 {
	margin: 0 0 8px;
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--aa-ink);
}

.aa-store-empty p {
	margin: 0;
	font-size: 1rem;
	line-height: 1.5;
}

.aa-store-empty-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 18px;
	margin-top: 16px;
}

.aa-store-clear {
	font-weight: 700;
	color: var(--aa-teal-deep);
}

.aa-store-admin-only {
	margin: 18px 0 8px;
	padding: 8px 12px;
	background: #fff6df;
	color: #3a2a00;
	font-weight: 700;
}

.aa-received-hero {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px 28px;
	margin: 0 0 28px;
}

.woocommerce-order-received .aa-received-hero h1,
.aa-received-hero h1 {
	margin: 0 0 8px;
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	font-size: clamp(2rem, 4vw, 3rem);
	font-weight: 700;
	line-height: 1.15;
	color: var(--aa-ink);
}

.aa-received-number,
.aa-received-date {
	margin: 0;
	font-size: 1.125rem;
	line-height: 1.4;
}

.aa-received-number {
	font-weight: 700;
}

.aa-received-date {
	color: var(--aa-grey);
}

.aa-received-hero .aa-rufa-frame-celebrating {
	display: block;
	width: min(160px, 36vw);
	margin: 0;
}

.aa-received-hero .aa-rufa-frame-celebrating img {
	display: block;
	width: 100%;
	height: auto;
}

.aa-received-items {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 0 0 28px;
	padding: 0;
	list-style: none;
}

.aa-received-item {
	display: grid;
	grid-template-columns: 88px minmax(0, 1fr) auto;
	gap: 12px 16px;
	align-items: center;
	margin: 0;
	padding: 12px;
	border: 1px solid var(--aa-line);
	background: var(--aa-white);
}

.aa-received-thumb {
	display: block;
}

.aa-received-thumb img,
.aa-received-photo {
	display: block;
	width: 88px;
	height: 88px;
	object-fit: cover;
	background: var(--aa-mist);
}

.aa-received-item-name {
	margin: 0 0 4px;
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1.3;
}

.aa-received-item .wc-item-meta {
	margin: 0 0 6px;
	padding: 0;
	list-style: none;
	color: var(--aa-grey);
	font-size: 0.95rem;
}

.aa-received-qty,
.aa-received-line {
	margin: 0;
}

.aa-received-line {
	font-weight: 700;
	text-align: right;
}

.aa-received-next-block,
.aa-received-summary,
.aa-received-addresses {
	margin: 0 0 28px;
}

.aa-received-next {
	display: grid;
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.aa-received-card,
.aa-received-address {
	min-width: 0;
	padding: 18px 16px 20px;
	border: 1px solid var(--aa-line);
	border-top: 4px solid var(--aa-teal);
	border-radius: 16px;
	background: var(--aa-white);
	font-style: normal;
}

.aa-received-card h3,
.aa-received-summary h2,
.aa-received-next-block h2,
.aa-received-details > h2,
.aa-received-addresses h2 {
	margin: 0 0 8px;
	font-family: "Bricolage Grotesque", "Bricolage Fallback", Barlow, "Barlow Fallback", sans-serif;
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--aa-ink);
}

.aa-received-card p,
.aa-received-live,
.aa-received-address,
.aa-received-note {
	margin: 0;
	font-size: 1rem;
	line-height: 1.5;
}

.aa-received-live,
.aa-received-note {
	margin-top: 14px;
}

.aa-received-totals {
	margin: 0;
}

.aa-received-totals div {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 10px 0;
	border-bottom: 1px solid var(--aa-line);
}

.aa-received-totals dt,
.aa-received-totals dd {
	margin: 0;
}

.aa-received-totals dt {
	font-weight: 700;
}

.aa-received-totals dd {
	text-align: right;
}

.aa-received-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 18px;
	margin-top: 8px;
}

.aa-received-links a:not(.aa-button) {
	font-weight: 700;
}

.aa-received-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

@media (min-width: 768px) {
	.aa-received-next {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 699px) {
	.aa-received-hero {
		flex-direction: column;
		align-items: flex-start;
	}

	.aa-received-item {
		grid-template-columns: 72px minmax(0, 1fr);
	}

	.aa-received-thumb img,
	.aa-received-photo {
		width: 72px;
		height: 72px;
	}

	.aa-received-line {
		grid-column: 2;
		text-align: left;
	}
}

.woocommerce ul.products li.product[hidden],
[data-products] > .product[hidden] {
	display: none;
}

/* Phone shop categories: six squares, then a short options strip. Wider screens keep the tall panels. */
@media (max-width: 767px) {
	.aa-shop-acc {
		display: grid;
		grid-template-columns: repeat(6, minmax(0, 1fr));
		column-gap: 3px;
		row-gap: 0;
		align-items: start;
		padding: 0;
		border-bottom: 1px solid var(--aa-line);
	}

	.aa-shop-tab {
		grid-row: 1;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		gap: 2px;
		width: auto;
		height: auto;
		min-height: 0;
		aspect-ratio: 1;
		margin: 0;
		padding: 3px 1px;
		border: 1px solid var(--aa-line);
		border-bottom: 1px solid var(--aa-line);
		font-size: 0.56rem;
		font-weight: 700;
		line-height: 1.05;
		text-align: center;
		white-space: normal;
	}

	.aa-shop-tab[data-cat="queen-ants"] { grid-column: 1; }
	.aa-shop-tab[data-cat="nests"] { grid-column: 2; }
	.aa-shop-tab[data-cat="outworlds"] { grid-column: 3; }
	.aa-shop-tab[data-cat="foods"] { grid-column: 4; }
	.aa-shop-tab[data-cat="accessories"] { grid-column: 5; }
	.aa-shop-tab[data-cat="all"] { grid-column: 6; }

	.aa-shop-tab > span {
		display: block;
		max-width: 100%;
		white-space: normal;
		overflow-wrap: break-word;
	}

	.aa-shop-tab .aa-shop-icon,
	.aa-shop-tab .aa-shop-icon-img {
		width: 16px;
		height: 16px;
	}

	.aa-shop-panel {
		grid-column: 1 / -1;
		grid-row: 2;
		min-height: 0;
		max-height: 0;
		margin: 0;
		border: 0;
		background: var(--aa-white);
	}

	.aa-shop-panel > img,
	.aa-shop-panel > picture,
	.aa-shop-shade {
		display: none;
	}

	.aa-shop-acc[data-open="queen-ants"] .aa-shop-panel[data-cat="queen-ants"],
	.aa-shop-acc[data-open="nests"] .aa-shop-panel[data-cat="nests"],
	.aa-shop-acc[data-open="outworlds"] .aa-shop-panel[data-cat="outworlds"],
	.aa-shop-acc[data-open="foods"] .aa-shop-panel[data-cat="foods"],
	.aa-shop-acc[data-open="accessories"] .aa-shop-panel[data-cat="accessories"] {
		max-height: 140px;
		margin-top: 6px;
		border-top: 1px solid var(--aa-line);
		border-bottom: 1px solid var(--aa-line);
	}

	.aa-shop-acc[data-open="all"] .aa-shop-panel[data-cat="all"] {
		max-height: 0;
		margin: 0;
		border: 0;
	}

	.aa-shop-caption {
		position: static;
		inset: auto;
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		grid-template-rows: auto auto;
		align-content: center;
		align-items: center;
		justify-content: stretch;
		column-gap: 8px;
		row-gap: 2px;
		height: auto;
		padding: 8px 8px;
		color: var(--aa-ink);
		text-shadow: none;
	}

	.aa-shop-caption-title,
	.aa-shop-caption-text,
	.aa-shop-also {
		grid-row: auto;
		margin: 0;
	}

	.aa-shop-caption-title {
		grid-column: 1;
		grid-row: 1;
		font-size: 0.95rem;
		line-height: 1.15;
	}

	.aa-shop-caption-text {
		grid-column: 1;
		grid-row: 2;
		font-size: 0.72rem;
		font-weight: 400;
		line-height: 1.25;
		color: var(--aa-grey);
	}

	.aa-shop-also {
		grid-column: 1;
		grid-row: 3;
		color: var(--aa-teal-deep);
		font-size: 0.75rem;
		text-shadow: none;
	}

	.aa-shop-subs {
		grid-column: 2;
		grid-row: 1 / span 3;
		align-self: center;
		justify-content: flex-end;
		flex-wrap: nowrap;
		gap: 4px;
		max-width: none;
	}

	.aa-shop-sub,
	.aa-shop-sub-art {
		width: 54px;
		height: 54px;
	}

	.aa-shop-sub {
		font-size: 0.58rem;
		padding: 4px;
		box-shadow: none;
	}

	.aa-shop-sub .aa-shop-icon {
		width: 16px;
		height: 16px;
	}
}

/* 1.10.31. Welsh header line only. No narrow-screen rule in this file was
   replacing it, but shop and account paragraph styles set Barlow on every p.
   This line stays Allura, black, at every width. The English tagline stays Barlow. */
.site-header .aa-brand p.aa-header-tagline-cy {
	font-family: Allura, "Allura Fallback", cursive;
	font-size: clamp(1.35rem, 4.4vw, 1.7rem);
	font-weight: 400;
	font-style: normal;
	font-synthesis: none;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none;
	color: #111414;
}

@media (max-width: 1023px) {
	.site-header .aa-brand p.aa-header-tagline-cy {
		font-family: Allura, "Allura Fallback", cursive;
		font-style: normal;
		font-weight: 400;
		font-synthesis: none;
		color: #111414;
		line-height: 1.25;
	}
}

.aa-sumup-badge {
	display: none;
}

/* 1.10.34. Checkout bank Rufa and Contact telephone Rufa replaced with 6-leg versions. */
/* 1.10.33. Same phone hero frame, wider shop photo. Wider screens keep center cover on the wide file. */
@media (max-width: 767px) {
	.aa-view-landing .aa-hero-img,
	.aa-view-landing .aa-hero-media img {
		object-fit: cover;
		object-position: center center;
	}
}

/* 1.10.32 phone pass. Wider screens keep the rules above. */
@media (max-width: 767px) {
	.aa-header-mode {
		padding: 4px 16px 5px;
	}

	.aa-header-mode .aa-switch-small {
		--aa-knob: 34px;
		--aa-track: 26px;
		--aa-shift: 10px;
		width: min(228px, calc(100% - 32px));
		max-width: 228px;
		min-height: 34px;
	}

	.aa-header-mode .aa-switch-small .aa-switch-opt {
		min-height: 34px;
		padding: 2px 8px;
		font-size: 0.75rem;
	}

	.aa-header-mode .aa-switch-small .aa-switch-opt[data-home="new"] {
		padding-right: calc(var(--aa-shift) + 6px);
	}

	.aa-header-mode .aa-switch-small .aa-switch-opt[data-home="keeper"] {
		padding-left: calc(var(--aa-shift) + 6px);
	}

	.aa-header-mode .aa-switch-small .aa-switch-knob {
		border-width: 2px;
	}

	.aa-view-landing .aa-hero {
		min-height: 0;
	}

	.aa-view-landing .aa-hero .aa-script {
		font-size: 2.15rem;
		line-height: 0.9;
		margin-bottom: 0;
	}

	.aa-view-landing .aa-hero h1 {
		font-size: 1.2rem;
		margin-bottom: 4px;
	}

	.aa-view-landing .aa-hero-lede {
		font-size: 0.9rem;
	}

	.aa-view-landing .aa-hero-copy {
		padding-top: 10px;
		padding-bottom: 2px;
	}

	.aa-view-landing .aa-choose-line {
		margin-bottom: 4px;
		padding: 6px 14px;
		font-size: 1rem;
	}

	.aa-view-landing .aa-switch-slot {
		margin-top: 0;
		margin-bottom: 8px;
	}

	.aa-trust {
		flex-wrap: nowrap;
		justify-content: space-between;
		gap: 4px 6px;
		padding: 8px 8px;
	}

	.aa-trust li {
		gap: 4px;
		min-height: 0;
		font-size: 0.78rem;
		line-height: 1.15;
		white-space: nowrap;
	}

	.aa-trust li::before {
		width: 6px;
		height: 6px;
	}

	.aa-trusted {
		padding: 12px 0 8px;
	}

	.aa-trusted h2 {
		margin-bottom: 8px;
		font-size: 1.05rem;
	}

	.aa-trusted-slot img {
		height: 16px;
	}

	.aa-trusted.is-sliding .aa-wrap {
		overflow: hidden;
	}

	.aa-trusted-track {
		display: flex;
		width: max-content;
		animation: aa-trusted-slide 56s linear infinite;
	}

	.aa-trusted.is-sliding .aa-trusted-row {
		flex: 0 0 auto;
		justify-content: flex-start;
		width: max-content;
		overflow: visible;
		gap: 28px;
		padding: 0 14px 0 0;
		scroll-snap-type: none;
	}

	.aa-trusted:hover .aa-trusted-track,
	.aa-trusted:focus-within .aa-trusted-track {
		animation-play-state: paused;
	}

	.aa-adventures-head {
		flex-wrap: nowrap;
		align-items: center;
		gap: 8px;
	}

	.aa-adventures-head h2 {
		flex: 1 1 auto;
		max-width: 11.5rem;
		margin: 0;
		font-size: 1.35rem;
		line-height: 1.15;
	}

	.aa-rufa-frame-side {
		width: 118px;
		margin-left: auto;
		align-self: center;
	}

	.aa-found {
		min-height: 0;
		align-items: center;
		padding: 18px 0;
	}

	.aa-found-inner {
		gap: 12px;
	}

	.aa-found .aa-badges img {
		height: 72px;
	}

	.aa-awards {
		grid-template-columns: repeat(12, minmax(0, 1fr));
		gap: 10px 6px;
	}

	.aa-awards li,
	.aa-awards li:last-child:nth-child(odd) {
		grid-column: span 3;
		width: 100%;
	}

	.aa-awards li:nth-child(n + 5),
	.aa-awards li:nth-child(n + 5):last-child:nth-child(odd) {
		grid-column: span 4;
	}

	.aa-awards img {
		height: 52px;
	}

	.aa-begin-hero {
		min-height: 0;
		align-items: flex-end;
	}

	.aa-begin-hero-copy {
		width: calc(100% - 24px);
		padding-top: 28px;
		padding-bottom: 12px;
	}

	.aa-begin-hero h1 {
		font-size: 1.45rem;
	}

	.aa-begin-hero p {
		font-size: 0.95rem;
	}

	.aa-begin-hero-action {
		margin-top: 10px;
	}

	.aa-why {
		padding: 16px 0 28px;
	}

	.aa-rufa-hello {
		flex-wrap: nowrap;
		align-items: center;
		justify-content: flex-start;
		gap: 8px;
		margin-bottom: 12px;
	}

	.aa-rufa-frame-wave {
		width: 92px;
	}

	.aa-why .aa-rufa-say {
		flex: 0 1 11.5rem;
		max-width: 11.5rem;
		margin: 0;
		padding: 8px 10px;
		font-size: 0.82rem;
		line-height: 1.2;
	}

	.aa-why > .aa-wrap > h2,
	.aa-why h2 {
		margin-top: 0;
	}

	.aa-addon-band {
		padding: 4px 0 8px;
	}

	.aa-addon-card {
		margin-top: 8px;
		padding: 12px;
		gap: 10px;
	}

	.aa-which {
		padding: 8px 0 28px;
	}

	.aa-begin-close {
		min-height: 0;
		padding: 16px 0;
	}

	.aa-rail-track .aa-card {
		flex: 0 0 168px;
		width: 168px;
		max-width: 168px;
	}

	.aa-rail .aa-card-media {
		aspect-ratio: auto !important;
		height: 96px !important;
		max-height: 96px;
	}

	.aa-rail .aa-card-media img {
		height: 100%;
		object-fit: cover;
	}

	.aa-rail .aa-card-title {
		padding: 8px 8px 0;
		font-size: 0.85rem;
	}

	.aa-rail .aa-card-meta {
		padding: 4px 8px 8px;
	}

	.aa-rail .aa-card .aa-view-product {
		min-height: 34px;
		margin: 0 8px 8px;
		padding: 6px 10px;
	}

	.aa-store-heading,
	.aa-store-description {
		display: none;
	}

	.aa-store-tools {
		flex-wrap: nowrap;
		align-items: center;
		gap: 6px;
		margin-top: 8px;
	}

	.aa-store-field {
		flex-direction: row;
		align-items: center;
		gap: 4px;
		font-size: 0.68rem;
	}

	.aa-store-search {
		flex: 1 1 auto;
	}

	.aa-store-field:not(.aa-store-search) {
		position: relative;
		flex: 0 1 6.6rem;
	}

	.aa-store-field:not(.aa-store-search) > span {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
	}

	.aa-store-field > span {
		white-space: nowrap;
	}

	.aa-store-tools input,
	.aa-store-tools select {
		width: auto;
		min-width: 0;
		flex: 1 1 auto;
		min-height: 40px;
		padding: 0 6px;
		font-size: 0.78rem;
	}

	.aa-store-tools button.aa-store-apply {
		position: relative;
		flex: 0 0 44px;
		width: 44px;
		min-width: 44px;
		min-height: 40px;
		margin: 0;
		padding: 0;
		color: #fff;
		font-size: 0;
	}

	.aa-store-tools button.aa-store-apply::after,
	.aa-store-tools button.aa-store-apply:hover::after,
	.aa-store-tools button.aa-store-apply:focus-visible::after {
		content: "";
		position: absolute;
		left: 50%;
		top: 46%;
		display: block;
		width: 7px;
		height: 13px;
		margin: 0;
		border-top: 0;
		border-left: 0;
		border-right: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		opacity: 1;
		transform: translate(-50%, -60%) rotate(45deg);
	}

	.aa-store-tools button.aa-store-apply:hover,
	.aa-store-tools button.aa-store-apply:focus-visible {
		color: #111414;
	}

	.aa-store ul.products,
	body.woocommerce-shop ul.products,
	body.tax-product_cat ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.single-product .product-entry-wrapper,
	.single-product .product-entry-wrapper.is-width-constrained,
	.single-product div.product:not(:has(.product-entry-wrapper)) {
		display: flex !important;
		flex-direction: column;
		gap: 12px;
	}

	.single-product .summary,
	.single-product .entry-summary {
		display: contents;
	}

	.single-product .summary > *,
	.single-product .entry-summary > * {
		order: 10;
		width: 100%;
	}

	.single-product .product_title {
		order: 1;
		margin-bottom: 0;
	}

	.single-product .woocommerce-product-gallery,
	.single-product div.product .images {
		order: 2;
		width: 100%;
	}

	.single-product .woocommerce-product-details__short-description {
		order: 3;
		margin: 0;
	}

	.single-product div.product p.price,
	.single-product div.product span.price {
		order: 4;
		margin: 0;
	}

	.single-product .aa-care {
		order: 5;
		margin-top: 0;
	}

	.woocommerce-tabs ul.tabs {
		flex-wrap: nowrap;
		gap: 4px;
	}

	.woocommerce-tabs ul.tabs li {
		flex: 1 1 0;
		min-width: 0;
	}

	.woocommerce-tabs ul.tabs a,
	.woocommerce div.product .woocommerce-tabs ul.tabs li a,
	.woocommerce-tabs[data-type] ul.tabs li a {
		width: 100%;
		min-height: 36px;
		padding: 6px 4px;
		font-size: 0.68rem !important;
		line-height: 1.15 !important;
		text-align: center;
		white-space: normal;
	}

	body.woocommerce-cart klarna-placement,
	body.woocommerce-cart .klarna-osm,
	body.woocommerce-cart [class*="klarna-placement"],
	body.woocommerce-cart [id*="klarna-osm"],
	body.woocommerce-cart iframe[title*="Klarna" i],
	body.woocommerce-cart iframe[src*="klarna" i] {
		display: none !important;
	}

	.aa-sumup-badge {
		display: inline-block;
		width: 84px;
		height: 24px;
		margin: 0 0 0 8px;
		object-fit: contain;
		vertical-align: middle;
		background: #111414;
		border-radius: 4px;
	}
}

@keyframes aa-trusted-slide {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

@media (max-width: 767px) and (prefers-reduced-motion: reduce) {
	.aa-trusted-track {
		animation: none;
	}
}
