:root { --aau-color-success: var(--wp--preset--color--success, #067647); --aau-color-on-success: #fff; --aau-modal-backdrop-color: rgb(0 0 0 / .64); --aau-modal-backdrop-blur: 2px; --aau-page-gutter: clamp(1rem, 2.5vw, 2rem); }
:where(*, *::before, *::after) { box-sizing: border-box; }
html { min-height: 100%; scroll-behavior: smooth; background: var(--aau-subfooter-bg, #101828); }
body { min-height: 100vh; min-height: 100dvh; margin: 0; background: var(--aau-color-base, #fff); color: var(--aau-color-contrast, #192a3d); font-family: var(--aau-font-body, Inter, system-ui, sans-serif); text-rendering: optimizeLegibility; }
.wp-site-blocks { display: flex; min-height: 100vh; min-height: 100dvh; flex-direction: column; }
.wp-site-blocks > .wp-block-template-part:last-child { flex: 0 0 auto; margin-block-start: auto; background: var(--aau-subfooter-bg, #101828); }
:where(.site-main) a { text-underline-offset: .16em; }
:where(h1, h2, h3, h4, h5, h6) { font-family: var(--aau-font-heading, Inter, system-ui, sans-serif); text-wrap: balance; }
:where(img, svg, video) { max-width: 100%; height: auto; }
:where([data-aau-cart-focus-return]):focus,
:where(a, button, input, select, textarea):focus-visible { outline: 3px solid var(--aau-color-focus-ring, #192a3d); outline-offset: 3px; box-shadow: 0 0 0 6px var(--aau-color-focus-halo, #fff); }
/* Cart-dialog return focus follows actual pointer/keyboard interaction rather
   than a browser's inherited dialog heuristic. Forced colors retains the ring. */
@media (forced-colors: none) {
	:where([data-aau-cart-focus-return="pointer"]):focus { outline: none; box-shadow: none; }
}
body :where(input:not([type="button"]):not([type="checkbox"]):not([type="color"]):not([type="file"]):not([type="hidden"]):not([type="image"]):not([type="radio"]):not([type="range"]):not([type="reset"]):not([type="submit"]), select, textarea),
.woocommerce :where(input.input-text, input.qty, select, textarea),
.wpcf7 :where(.wpcf7-form-control:not(.wpcf7-acceptance):not(.wpcf7-checkbox):not(.wpcf7-file):not(.wpcf7-radio):not(.wpcf7-submit)) { box-sizing: border-box; width: 100%; max-width: 100%; min-height: 50px; padding: .7rem .85rem; border: 1px solid var(--aau-color-control-border, var(--aau-color-muted)); border-radius: 7px; background: var(--aau-color-base); color: var(--aau-color-contrast); font: inherit; font-size: 1rem; }
body :where(textarea), .wpcf7 textarea.wpcf7-form-control { min-height: 120px; resize: vertical; }
body :where(input[type="checkbox"], input[type="radio"], input[type="range"]) { accent-color: var(--aau-color-accent); }
body :where(input[type="file"]) { max-width: 100%; font: inherit; font-size: 1rem; }
.wpcf7-form-control-wrap { display: block; width: 100%; }
:where(input, textarea)::placeholder { color: var(--aau-color-muted); opacity: 1; }
.aau-container { width: min(calc(100% - (2 * var(--aau-page-gutter))), 1360px); margin-inline: auto; }
.aau-skip-link { position: fixed; z-index: 10000; inset: calc(var(--wp-admin--admin-bar--height, 0px) + .5rem) auto auto .5rem; translate: 0 -200%; padding: .75rem 1rem; background: #fff; color: #000; }
.aau-skip-link:focus { translate: 0; }
/* The template-part host owns sticky positioning and natural layout space, including
   saved WordPress templates. Only the surface moves; neither host changes height. */
:root { --aau-header-top: var(--wp-admin--admin-bar--height, 0px); }
html { scroll-padding-top: calc(var(--aau-header-height, 69px) + var(--aau-header-top) + 1rem); }
.wp-site-blocks > .wp-block-template-part:has(> .aau-header),
.wp-site-blocks > .aau-header { position: sticky; z-index: 1000; top: var(--aau-header-top); flex: 0 0 auto; pointer-events: none; }
/* Oversized headers must let the document scroll focused controls into view. */
.wp-site-blocks > .wp-block-template-part:has(> .aau-header--static),
.wp-site-blocks > .aau-header--static { position: relative; top: auto; }
.aau-header { position: relative; width: 100%; color: var(--aau-header-color, #fff); pointer-events: none; }
/* Cached markup from before the surface wrapper remains visible and clickable. */
.aau-header:not(:has(> .aau-header__surface)) { background: var(--aau-header-bg, #000); pointer-events: auto; }
.aau-header__surface { background: var(--aau-header-bg, #000); transform: translateY(0); transition: transform var(--aau-header-slide-duration, 450ms) ease-in-out; pointer-events: auto; }
.aau-header--hidden .aau-header__surface { transform: translateY(calc(-100% - var(--aau-header-top))); pointer-events: none; }
.aau-header--raised .aau-header__surface { box-shadow: 0 10px 30px rgb(15 23 42 / .12); }
/* Pointer focus and dialogs keep the same slide. Keyboard-visible focus must
   reveal controls immediately, even before the controller runs. */
.aau-header:focus-within .aau-header__surface,
.aau-header:has(dialog[open]) .aau-header__surface { transform: translateY(0); pointer-events: auto; }
.aau-header:has(:focus-visible) .aau-header__surface { transition: none; }
.aau-header > :is(.aau-skip-link, dialog) { pointer-events: auto; }
.aau-header > .aau-skip-link { color: #000; }
/* WordPress's small-screen toolbar scrolls away rather than remaining fixed. */
@media (max-width: 600px) { :root { --aau-header-top: 0px; } }
.aau-header__inner { min-height: 69px; display: flex; align-items: center; gap: 1.5rem; }
.aau-header__brand { flex: 0 1 auto; min-width: 0; overflow-wrap: anywhere; }
.aau-header__brand img { display: block; width: auto; max-height: 48px; }
.aau-desktop-nav { flex: 0 0 auto; margin-inline-start: auto; }
.aau-desktop-nav ul, .aau-footer ul, .aau-mobile-menu ul { list-style: none; margin: 0; padding: 0; }
.aau-desktop-nav > ul { display: flex; width: max-content; align-items: center; gap: clamp(.75rem, 2vw, 1.75rem); }
.aau-header a { color: inherit; text-decoration: none; }
.aau-header__actions { display: flex; flex: 0 0 auto; align-items: center; gap: .5rem; }
.aau-cart-link { position: relative; }
.aau-cart-link__count { position: absolute; top: -3px; inset-inline-end: -5px; display: grid; min-width: 20px; height: 20px; padding: 0 5px; place-items: center; border: 2px solid var(--aau-header-bg, #000); border-radius: 999px; background: #b42318; color: #fff; font-size: 12px; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; }
.aau-cart-link__count[hidden] { display: none; }
.aau-icon-button { display: inline-grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; background: transparent; color: inherit; text-decoration: none; cursor: pointer; }
.aau-icon-button svg { width: 24px; height: 24px; }
.aau-header__actions .aau-icon-button { border-radius: 50%; transition: background-color 160ms ease, color 160ms ease; }
.aau-header__actions .aau-icon-button:hover { background: color-mix(in srgb, currentColor 12%, transparent); }
.aau-menu-button { display: none; }
/* Keep the desktop menu measurable without occupying space or receiving focus. */
.aau-header--compact .aau-desktop-nav { position: absolute; inset: 0 auto auto 0; width: 0; height: 0; overflow: clip; margin: 0; visibility: hidden; pointer-events: none; }
/* Stable brand sizing in both desktop states prevents menu-fit feedback loops. */
@media (min-width: 861px) {
	.aau-header:has(.aau-desktop-nav) .aau-header__brand { flex-shrink: 0; max-width: calc(100% - var(--aau-header-actions-width, 0px) - 1.5rem); }
}
.aau-header--compact .aau-menu-button { display: inline-grid; }
.aau-mobile-menu { width: 100%; max-width: none; height: 100%; max-height: none; margin: 0; overflow: auto; padding: 0 max(1rem, calc((100vw - 1360px) / 2)); border: 0; background: var(--aau-header-bg, #000); color: var(--aau-header-color, #fff); opacity: 0; transform: translateY(-1rem); transition: opacity 180ms ease, transform 180ms ease, overlay 180ms allow-discrete, display 180ms allow-discrete; }
.aau-mobile-menu[open] { opacity: 1; transform: none; }
@starting-style { .aau-mobile-menu[open] { opacity: 0; transform: translateY(-1rem); } }
dialog::backdrop { background: var(--aau-modal-backdrop-color); backdrop-filter: blur(var(--aau-modal-backdrop-blur)); -webkit-backdrop-filter: blur(var(--aau-modal-backdrop-blur)); }
.aau-modal-backdrop { background: var(--aau-modal-backdrop-color); backdrop-filter: blur(var(--aau-modal-backdrop-blur)); -webkit-backdrop-filter: blur(var(--aau-modal-backdrop-blur)); }
.aa-checkout-modal-overlay { position: fixed; z-index: 99999; inset: 0; display: flex; align-items: center; justify-content: center; padding: 1rem; background: var(--aau-modal-backdrop-color); backdrop-filter: blur(var(--aau-modal-backdrop-blur)); -webkit-backdrop-filter: blur(var(--aau-modal-backdrop-blur)); }
.aa-checkout-modal-overlay[hidden] { display: none !important; }
.aa-checkout-modal { width: min(100% - 1rem, 520px); max-height: calc(100dvh - 2rem); overflow: auto; padding: clamp(1.25rem, 4vw, 2rem); border: 1px solid var(--aau-color-border); border-radius: 14px; background: var(--aau-color-base); color: var(--aau-color-contrast); box-shadow: 0 24px 80px rgb(0 0 0 / .28); }
.aa-checkout-modal__header { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-bottom: 1.5rem; }
.aa-checkout-modal__title { min-width: 0; flex: 1; font-family: var(--aau-font-heading, Inter, system-ui, sans-serif); font-size: clamp(1.25rem, 1.1rem + .55vw, 1.6rem); font-weight: 750; line-height: 1.2; overflow-wrap: anywhere; }
.aa-checkout-modal__x { display: inline-grid; width: 44px; height: 44px; flex: 0 0 44px; place-items: center; appearance: none; padding: 0; border: 1px solid transparent; border-radius: 50%; background: transparent; color: inherit; font: inherit; font-size: 1.75rem; line-height: 1; cursor: pointer; }
.aa-checkout-modal__x:hover { border-color: var(--aau-color-border); background: var(--aau-color-surface); }
.aa-checkout-modal__content > :first-child { margin-top: 0; }
.aa-checkout-modal__content > :last-child { margin-bottom: 0; }
.aa-checkout-modal__actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
html.aa-has-modal { overflow: hidden; }
.aau-mobile-menu__bar { display: flex; min-height: 69px; align-items: center; justify-content: space-between; margin-bottom: 1.5rem; }
.aau-mobile-menu nav > ul { display: grid; gap: .5rem; }
.aau-mobile-menu a { display: block; padding: .75rem; font-size: 1.25rem; }
.aau-search-dialog, .aau-cart-dialog, .aau-confirm-dialog, .aau-size-guide-dialog { width: min(100% - 2rem, 760px); color: var(--aau-color-contrast); }
.aau-cart-dialog, .aau-confirm-dialog, .aau-size-guide-dialog, .aau-search-dialog__panel { padding: clamp(1.25rem, 3vw, 2rem); border: 1px solid var(--aau-color-border); border-radius: 14px; background: var(--aau-color-base); box-shadow: 0 24px 80px rgb(0 0 0 / .28); }
.aau-dialog__header { display: flex; min-width: 0; align-items: center; gap: .75rem; margin: 0 0 1.25rem; }
.aau-dialog__header h2 { min-width: 0; flex: 1; margin: 0; font-size: clamp(1.25rem, 1.1rem + .55vw, 1.6rem); line-height: 1.2; overflow-wrap: anywhere; }
.aau-cart-dialog__status { display: grid; width: 42px; height: 42px; flex: 0 0 42px; place-items: center; border-radius: 50%; background: #067647; color: #fff; font-size: 1.25rem; font-weight: 800; }
.aau-cart-dialog--unconfirmed .aau-cart-dialog__status { background: #8a4b08; }
.aau-cart-dialog__product { display: flex; align-items: center; gap: 1rem; padding: 1rem; border-block: 1px solid var(--aau-color-border); }
.aau-cart-dialog__details { display: grid; gap: .25rem; }
.aau-cart-dialog__meta { margin: 0; color: var(--aau-color-muted); font-size: .925rem; }
.aau-cart-dialog__product img { width: 76px; height: 76px; object-fit: cover; }
.aau-cart-dialog__actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin-top: 1.5rem; }
.aau-cart-dialog__checkout { grid-column: 1 / -1; }
.aau-cart-dialog__actions :is(a, button) { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; margin: 0; text-align: center; }
.aau-search-dialog { max-height: calc(100dvh - 2rem); margin: calc(var(--wp-admin--admin-bar--height, 0px) + 1rem) auto auto; overflow: auto; padding: 0; border: 0; background: transparent; }
.aau-dialog__close { display: flex; flex: 0 0 auto; margin: 0; }
.aau-dialog__close button { display: inline-grid; width: 44px; height: 44px; place-items: center; padding: 0; border: 1px solid transparent; border-radius: 50%; background: transparent; color: inherit; font: inherit; font-size: 1.5rem; line-height: 1; cursor: pointer; }
.aau-dialog__close button:hover { border-color: var(--aau-color-border); background: var(--aau-color-surface); }
.aau-size-guide-dialog table { width: 100%; border-collapse: collapse; font-size: clamp(.925rem, .88rem + .2vw, 1rem); }
.aau-size-guide-dialog :is(th, td) { padding: .875rem 1rem; border-bottom: 1px solid var(--aau-color-border); text-align: left; vertical-align: top; }
.aau-size-guide-dialog th { background: var(--aau-color-surface); font-weight: 750; }
.aau-size-guide-dialog td small { display: block; margin-top: .25rem; color: var(--aau-color-muted); font-size: .925rem; font-weight: 650; line-height: 1.45; }
.aau-size-guide-dialog tbody tr:last-child :is(th, td) { border-bottom: 0; }
.aau-size-guide-dialog { max-height: calc(100% - 2rem); max-height: calc(100dvh - 2rem); overflow: hidden; }
.aau-size-guide-dialog[open] { display: flex; flex-direction: column; }
.aau-size-guide-dialog > .aau-dialog__header { flex: 0 0 auto; }
.aau-size-guide-dialog .aau-dialog__header h2 { hyphens: auto; }
.aau-size-guide-dialog__content { min-height: 0; overflow: auto; overscroll-behavior: contain; }
.aau-size-guide-dialog__content:focus-visible { outline: 2px solid var(--aau-color-focus-ring, var(--aau-color-contrast)); outline-offset: 3px; }
.aau-size-guide-dialog__content > :first-child { margin-top: 0; }
.aau-size-guide-dialog__content > :last-child { margin-bottom: 0; }
.aa-bracelet-size-chart { position: relative; margin-inline: 0; container-type: inline-size; }
.aa-bracelet-size-chart table { width: 100%; border-collapse: collapse; }
.aa-bracelet-size-chart :is(th, td) { padding: .875rem 1rem; border: 0; border-bottom: 1px solid var(--aau-color-border); text-align: start; vertical-align: top; }
.aa-bracelet-size-chart thead th { background: var(--aau-color-surface); }
.aa-bracelet-size-chart thead th:first-child { white-space: nowrap; }
.aa-bracelet-size-chart tbody th { background: transparent; white-space: nowrap; }
.aa-bracelet-size-chart figcaption { margin-top: .75rem; color: var(--aau-color-muted); overflow-wrap: anywhere; hyphens: auto; }
.aa-bracelet-size-chart__label { display: none; }
@container (max-width: 36rem) {
	.aa-bracelet-size-chart table, .aa-bracelet-size-chart tbody { display: block; }
	/* Keep the column headers available to assistive technology. */
	.aa-bracelet-size-chart thead { position: absolute; display: block; inset: 0 auto auto 0; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
	.aa-bracelet-size-chart thead :is(tr, th) { display: block; }
	.aa-bracelet-size-chart tbody { display: grid; gap: .75rem; }
	.aa-bracelet-size-chart tbody tr { display: block; overflow: hidden; border: 1px solid var(--aau-color-border); border-radius: 8px; }
	.aa-bracelet-size-chart tbody tr > th { display: block; padding: .625rem .75rem; border: 0; background: var(--aau-color-surface); font-weight: 750; }
	.aa-bracelet-size-chart tbody tr > td { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: .75rem; padding: .625rem .75rem; border: 0; }
	.aa-bracelet-size-chart tbody tr > td + td { padding-top: 0; }
	.aa-bracelet-size-chart td > span { min-width: 0; overflow-wrap: normal; }
	.aa-bracelet-size-chart .aa-bracelet-size-chart__label { display: block; color: var(--aau-color-muted); font-size: .875em; hyphens: auto; overflow-wrap: anywhere; }
}
@container (max-width: 18rem) {
	.aa-bracelet-size-chart tbody tr > td { grid-template-columns: minmax(0, 1fr); gap: .25rem; }
}
/* Short screens need one scroll surface so an enlarged title cannot hide the chart. */
@media (max-height: 600px), (max-width: 360px) {
	.aau-size-guide-dialog { width: min(calc(100% - 24px), 760px); max-width: none; max-height: calc(100dvh - 24px); overflow: auto; padding: clamp(12px, 2dvh, 20px); }
	.aau-size-guide-dialog > .aau-dialog__header { display: contents; }
	.aau-size-guide-dialog .aau-dialog__close { position: sticky; z-index: 1; top: 0; order: -1; align-self: flex-end; margin-bottom: -44px; border-radius: 50%; background: var(--aau-color-base); }
	.aau-size-guide-dialog .aau-dialog__header h2 { flex: 0 0 auto; padding-inline-end: calc(44px + .75rem); margin-bottom: 1.25rem; }
	.aau-size-guide-dialog__content { flex: 0 0 auto; overflow: visible; }
}
.aau-search-dialog .search-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .75rem; }
.aau-search-dialog .search-field { min-width: 0; }
.aau-search-dialog .search-submit { min-height: 52px; border: 0; border-radius: 8px; padding-inline: 1.5rem; background: var(--aau-color-accent); color: var(--aau-color-on-accent); font-weight: 700; }
.aau-live-search__control { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .625rem; }
.aau-live-search__control input { min-width: 0; }
.aau-live-search__control button { min-height: 54px; padding: .75rem 1.25rem; border: 0; border-radius: 9px; background: var(--aau-color-accent); color: var(--aau-color-on-accent); font-weight: 700; }
.aau-search-suggestions ul, .aau-search-discovery ul { list-style: none; margin: 0; padding: 0; }
.aau-search-suggestions { margin-top: 1rem; }
.aau-search-suggestions a, .aau-search-discovery a { display: flex; align-items: center; gap: .75rem; padding: .625rem; border-radius: 8px; color: var(--aau-color-contrast); text-decoration: none; }
.aau-search-suggestions a:hover, .aau-search-discovery a:hover { background: var(--aau-color-surface); }
.aau-search-suggestions img, .aau-search-discovery img { flex: 0 0 48px; width: 48px; height: 48px; border-radius: 6px; object-fit: cover; }
.aau-search-suggestions span { display: grid; line-height: 1.3; }
.aau-search-suggestions small { color: var(--aau-color-muted); }
.aau-search-discovery { margin-top: 1.25rem; padding: clamp(1rem, 2vw, 1.5rem); border-radius: 14px; color: #fff; background: rgb(0 0 0 / .35); backdrop-filter: blur(12px); }
.aau-search-discovery > h3 { margin: 0 0 1rem; font-size: 1rem; text-transform: uppercase; letter-spacing: .08em; }
.aau-search-discovery__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
.aau-search-discovery h4 { margin: 0 0 .5rem; font-size: 1rem; color: inherit; }
.aau-search-discovery a { color: inherit; }
.aau-search-discovery a:hover { background: rgb(255 255 255 / .14); }
.aau-footer { background: var(--aau-footer-bg, #192a3d); color: var(--aau-footer-color, #fff); }
.aau-footer__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.5rem, 5vw, 4rem); padding-block: clamp(2.5rem, 6vw, 5rem); }
.aau-footer__column { min-width: 0; overflow-wrap: anywhere; }
.aau-footer__column:nth-child(1) { text-align: left; justify-self: stretch; }
.aau-footer__column:nth-child(2) { text-align: center; justify-self: center; }
.aau-footer__column:nth-child(3) { text-align: right; justify-self: end; }
.aau-footer__column :where(img, svg) { max-width: 100%; }
.aau-footer a { color: inherit; }
.aau-footer .menu a { display: inline-flex; min-height: 44px; align-items: center; padding-block: .45rem; }
.aau-footer .menu li + li { margin-top: .25rem; }
.aau-footer .hf-wmcp-currency-selector { display: grid; width: min(100%, 270px); max-width: 100%; }
.aau-footer .hf-wmcp-currency-selector__label { display: grid; width: 100%; min-width: 0; align-items: center; grid-template-columns: auto minmax(0, 1fr); gap: .5em; }
.aau-footer .hf-wmcp-currency-selector select { width: 100%; min-width: 0; max-width: 100%; }
.aau-footer__column :where(form, input, select, textarea, iframe) { max-width: 100%; }
.aau-footer__column:nth-child(1) .hf-wmcp-currency-selector { margin-inline: 0 auto; }
.aau-footer__commerce-menu { padding-block: 1rem; }
.aau-footer__commerce-menu .menu { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: .25rem 1.5rem; margin: 0; padding: 0; list-style: none; }
.aau-footer__commerce-menu .menu li { margin: 0; }
.aau-subfooter { padding-bottom: env(safe-area-inset-bottom, 0px); background: var(--aau-subfooter-bg, #101828); color: var(--aau-subfooter-color, #fff); }
.aau-subfooter__inner { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 1rem 2rem; min-height: 64px; text-align: center; }
.aau-subfooter ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; }
.site-main { min-height: 50vh; flex: 1 0 auto; padding: clamp(2rem, 5vw, 4rem) var(--aau-page-gutter); }
/* Post-content frames must span the main content box so nested full-bleed blocks
   can reach its edges even beyond the normal content width. Keep child defaults
   weak so component widths and WordPress left/right alignments remain in control. */
.site-main > .aau-page-content,
.site-main > .aau-page-content > .wp-block-post-content { width: 100%; max-width: none; }
:where(.site-main > .aau-page-content > .wp-block-post-content > :not(.alignfull)) { max-width: min(100%, var(--wp--style--global--content-size)); }
:where(.site-main > .aau-page-content > .wp-block-post-content > :not(.alignfull, .alignleft, .alignright)) { margin-inline: auto; }
:where(.site-main > .aau-page-content > .wp-block-post-content > .alignwide) { max-width: min(100%, var(--wp--style--global--wide-size)); }
/* Full-bleed blocks fill the content box plus its gutters. 100vw includes an
   automatic desktop scrollbar and can otherwise create horizontal scrolling. */
.site-main > .alignfull,
.site-main > .aau-page-content > .wp-block-post-content > .alignfull { width: auto !important; max-width: none !important; margin-inline: calc(-1 * var(--aau-page-gutter)) !important; }
.aau-content-hero { position: relative; isolation: isolate; width: 100vw; max-width: none !important; min-height: clamp(260px, 34vw, 520px); margin: calc(-1 * clamp(2rem, 5vw, 4rem)) calc(50% - 50vw) clamp(2.5rem, 6vw, 5rem); display: grid; place-items: center; overflow: hidden; background: linear-gradient(135deg, var(--aau-color-surface), var(--aau-color-base)); border-bottom: 1px solid var(--aau-color-border); }
.aau-content-hero::after { position: absolute; z-index: -1; inset: 0; background: radial-gradient(circle at 15% 10%, color-mix(in srgb, var(--aau-color-accent) 18%, transparent), transparent 48%); content: ""; }
.aau-content-hero__image { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.aau-content-hero--image::after { z-index: -1; background: linear-gradient(90deg, rgb(0 0 0 / .72), rgb(0 0 0 / .25)); }
.aau-content-hero__inner { min-width: 0; padding-block: clamp(3rem, 8vw, 7rem); }
.aau-content-hero h1 { max-width: 18ch; margin: 0; font-size: clamp(2.75rem, 1.55rem + 5vw, 6.5rem); letter-spacing: -.055em; line-height: .94; overflow-wrap: anywhere; hyphens: auto; }
.aau-content-hero--image { color: #fff; }
.aau-content-hero__meta, .aau-content-hero__description { max-width: 65ch; margin: 1.25rem 0 0; font-size: 1rem; }
.aau-content-hero__meta { opacity: .8; }

/* Reusable full-bleed venture landing-page composition. */
.aau-venture-hero { position: relative; isolation: isolate; min-height: calc(100svh - 82px); width: 100vw; max-width: none !important; margin: calc(-1 * clamp(2rem, 5vw, 4rem)) calc(50% - 50vw) 0; display: grid; align-items: end; overflow: hidden; padding: clamp(2rem, 5vw, 5rem); color: #fff; background: #000; }
.aau-venture-hero::before, .aau-venture-hero::after { position: absolute; z-index: -1; border: 1px solid rgb(255 255 255 / .2); border-radius: 50%; content: ""; }
.aau-venture-hero::before { width: min(72vw, 980px); aspect-ratio: 1; top: -52%; right: -12%; }
.aau-venture-hero::after { width: min(42vw, 620px); aspect-ratio: 1; top: -20%; right: 3%; }
.aau-venture-hero__inner { width: min(100%, 1500px); margin-inline: auto; }
.aau-venture-hero__title { max-width: 12ch; margin: 0; color: #fff; font-size: clamp(3.5rem, 9.2vw, 9rem); font-weight: 600; letter-spacing: -.065em; line-height: .88; }
.aau-venture-hero__footer { margin-top: clamp(3.5rem, 8vw, 8rem); gap: clamp(2rem, 8vw, 8rem); }
.aau-venture-hero__copy { max-width: 62ch; margin: 0; font-size: clamp(1.05rem, 1.65vw, 1.45rem); line-height: 1.55; }
.aau-venture-hero__button .wp-block-button__link { border: 1px solid #fff; border-radius: 0; color: #fff; background: transparent; padding: 1rem 1.4rem; }
.aau-venture-hero__button .wp-block-button__link:hover { color: #000; background: #fff; }
.aau-venture-intro { padding: clamp(5rem, 10vw, 10rem) clamp(1.5rem, 5vw, 5rem); }
.aau-venture-intro > .wp-block-columns { gap: clamp(3rem, 9vw, 9rem); }
.aau-venture-kicker { margin: 0 0 clamp(1.5rem, 4vw, 3.5rem); font-size: .76rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.aau-venture-intro__title { margin: 0; font-size: clamp(2.6rem, 5.5vw, 5.5rem); font-weight: 600; letter-spacing: -.055em; line-height: .94; }
.aau-venture-intro__copy { font-size: clamp(1.1rem, 1.5vw, 1.35rem); line-height: 1.7; }
.aau-venture-intro__copy a { color: currentColor; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.aau-page-content, .aau-article { font-size: clamp(1.075rem, 1rem + .25vw, 1.2rem); overflow-wrap: anywhere; }
.aau-page-content > *, .aau-article > * { max-width: var(--wp--style--global--content-size); margin-inline: auto; }
.aau-page-content > .alignwide, .aau-article > .alignwide { max-width: var(--wp--style--global--wide-size); }
.aau-page-content .wp-block-post-template > li, .aau-article .wp-block-post-template > li { min-width: 0; overflow-wrap: anywhere; }
.aau-blog-layout:has(> .aau-blog-sidebar) { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 320px); align-items: start; gap: clamp(2rem, 5vw, 4rem); }
.aau-blog-sidebar { position: sticky; top: calc(var(--aau-header-top) + var(--aau-header-height, 69px) + 24px); padding: 1.5rem; border-radius: 12px; background: var(--aau-color-surface); }
.aau-sidebar-widget + .aau-sidebar-widget { margin-top: 2rem; }
.aau-sidebar-widget__title { font-size: 1.1rem; }
.aau-post-card { min-width: 0; }
.aau-post-card .wp-block-post-featured-image { overflow: hidden; margin-bottom: 1rem; border-radius: 12px; }
.aau-post-card .wp-block-post-featured-image img { transition: transform 300ms ease; }
.aau-post-card .wp-block-post-featured-image:hover img { transform: scale(1.025); }
.aau-post-card .wp-block-post-date { color: var(--aau-color-muted); font-size: .85rem; text-transform: uppercase; letter-spacing: .06em; }
.aau-post-card .wp-block-post-title { margin: .5rem 0; font-size: clamp(1.25rem, 1.1rem + .55vw, 1.65rem); line-height: 1.2; }
.aau-post-card .wp-block-post-title a { color: var(--aau-color-contrast); text-decoration: none; }
.aau-post-navigation { padding-top: 2rem; border-top: 1px solid var(--aau-color-border); }
.aau-page-hero { position: relative; isolation: isolate; width: 100vw; max-width: none !important; overflow: hidden; margin: calc(-1 * clamp(2rem, 5vw, 4rem)) calc(50% - 50vw) clamp(2.5rem, 6vw, 5rem); padding: clamp(3.5rem, 9vw, 8rem) 0; background: var(--aau-color-surface); border-bottom: 1px solid var(--aau-color-border); }
.aau-page-hero::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(135deg, color-mix(in srgb, var(--aau-color-accent) 12%, transparent), transparent 62%); content: ""; }
.wp-block-query-pagination { gap: .5rem; margin-top: clamp(2.5rem, 5vw, 4rem); font-size: 1rem; }
.wp-block-query-pagination :is(.page-numbers, .wp-block-query-pagination-previous, .wp-block-query-pagination-next) { display: inline-grid; min-width: 46px; min-height: 46px; place-items: center; padding: .65rem .85rem; border: 1px solid var(--aau-color-border); border-radius: 9px; color: var(--aau-color-contrast); text-decoration: none; font-weight: 650; }
.wp-block-query-pagination .page-numbers.current { border-color: var(--aau-color-control-border, var(--aau-color-contrast)); background: var(--aau-color-accent); color: var(--aau-color-on-accent); }
.wp-block-query-pagination a:hover { border-color: var(--aau-color-contrast); }
.aau-page-hero__inner > :first-child { margin-top: 0; }
.aau-page-hero__inner > :last-child { margin-bottom: 0; }
.aau-page-hero .aa-custom-blocks__product-cat-secondary-image { max-width: min(100%, 840px); margin: 0 auto 1.5rem; }
.aau-page-hero .aa-custom-blocks__product-cat-secondary-image img { display: block; width: 100%; height: auto; max-height: none; border-radius: 14px; object-fit: contain; }
.aau-page-hero h1 { max-width: 15ch; margin-inline: auto; letter-spacing: -.045em; line-height: .98; }
.aau-page-hero .wp-block-term-description { max-width: 62ch; margin-inline: auto; color: var(--aau-color-muted); font-size: clamp(1rem, .9rem + .4vw, 1.25rem); }
/* The controller mounts this surface at the body root, above WP's 99999 toolbar. */
.aau-page-progress { position: fixed; z-index: 100000; top: 0; left: 0; width: 100%; height: 4px; pointer-events: none; background: linear-gradient(90deg, var(--aau-color-accent), color-mix(in srgb, var(--aau-color-accent) 55%, white)); box-shadow: 0 0 12px color-mix(in srgb, var(--aau-color-accent) 60%, transparent); transform: scaleX(.15); transform-origin: left; opacity: 1; transition: transform 250ms ease, opacity 180ms ease 120ms; }
.aau-page-progress.is-complete { transform: scaleX(1); opacity: 0; }
html.aau-navigation-pending { cursor: progress; }
/* Starting feedback has no fade or delay; completion alone fades away. */
.aau-page-progress.is-pending { transform: scaleX(.15); opacity: 1; transition: none; animation: aau-navigation-progress 1.2s ease-out infinite; }
@keyframes aau-navigation-progress { 0% { transform: scaleX(.08); } 65% { transform: scaleX(.72); } 100% { transform: scaleX(.94); } }

.aau-button,
.woocommerce :where(.button, button.button, input.button, a.button),
:where(.wp-element-button, button[type="submit"], input[type="submit"]),
.wpcf7 :where(.wpcf7-submit) { display: inline-flex; min-height: 50px; min-inline-size: 0; max-inline-size: 100%; white-space: normal; overflow-wrap: anywhere; align-items: center; justify-content: center; padding: .75rem 1.25rem; border: 2px solid transparent; border-radius: 8px; font: inherit; font-size: 1rem; font-weight: 750; line-height: 1.2; text-align: center; text-decoration: none; cursor: pointer; transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, box-shadow 160ms ease; }
.aau-button--primary,
.woocommerce :where(.button, button.button, input.button, a.button),
:where(.wp-element-button, button[type="submit"], input[type="submit"]),
.wpcf7 :where(.wpcf7-submit) { border-color: transparent; background: var(--aau-color-accent); color: var(--aau-color-on-accent); }
/* Touch scrolling must not leave a synthetic hover state on purchase controls. */
@media (hover: hover) and (pointer: fine) {
	.aau-button--primary:hover,
	.woocommerce :where(.button, button.button, input.button, a.button):hover,
	:where(.wp-element-button, button[type="submit"], input[type="submit"]):hover,
	.wpcf7 :where(.wpcf7-submit):hover { filter: brightness(.84); box-shadow: 0 10px 26px color-mix(in srgb, var(--aau-color-accent) 34%, transparent); color: var(--aau-color-on-accent); }
}
.aau-button--secondary { border-color: var(--aau-color-contrast); background: transparent; color: var(--aau-color-contrast); }
@media (hover: hover) and (pointer: fine) {
	.aau-button--secondary:hover { background: var(--aau-color-contrast); color: var(--aau-color-base); }
}
.aau-button--small { min-height: 44px; padding: .6rem 1rem; font-size: .9375rem; }
.aau-text-button { min-height: 44px; padding: .25rem; border: 0; background: transparent; color: var(--aau-color-contrast); font: inherit; font-weight: 700; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; cursor: pointer; }
.aau-text-button:hover { color: var(--aau-color-accent-ink, var(--aau-color-contrast)); text-decoration-thickness: 2px; }
.aau-text-button:active { filter: none; box-shadow: none; }
.aau-button:active, :where(.wp-element-button, .woocommerce .button, button, input[type="submit"]):active { filter: brightness(.76); box-shadow: inset 0 2px 5px rgb(0 0 0 / .24); }
@media (max-width: 1024px) {
	.aau-footer__grid { grid-template-columns: 1fr; }
	.aau-footer__column:nth-child(n) { justify-self: stretch; text-align: center; }
	.aau-footer__column:nth-child(1) .hf-wmcp-currency-selector { margin-inline: auto; }
}
@media (max-width: 781px) {
	.aau-venture-hero { min-height: 86svh; }
	.aau-venture-hero__footer { align-items: flex-start !important; }
	.aau-venture-hero__footer .wp-block-buttons { justify-content: flex-start; }
}
@media (max-width: 860px) {
	.aau-desktop-nav { display: none; }
	.aau-menu-button { display: inline-grid; }
	.aau-header__actions { max-width: calc(100% - 3rem); flex-wrap: wrap; justify-content: flex-end; margin-inline-start: auto; }
	.aau-header__inner { gap: .75rem; }
	.aau-blog-layout:has(> .aau-blog-sidebar) { grid-template-columns: 1fr; }
	.aau-blog-sidebar { position: static; }
}
@media (max-width: 520px) { .aau-search-dialog .search-form, .aau-live-search__control, .aau-search-discovery__grid, .aau-cart-dialog__actions { grid-template-columns: 1fr; } }
@supports not (background: color-mix(in srgb, black, white)) { .aau-page-hero::before { background: rgb(15 118 110 / .12); } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

/* Creator-program landing page. Content is provisioned per locale; presentation stays portable. */
.aau-creator-page { padding-top: 0; overflow: hidden; }
.aau-creator-page > .wp-block-post-content { margin: 0; }
.aau-creator-hero { position: relative; isolation: isolate; width: 100vw; min-height: min(820px, calc(100svh - 69px)); margin-inline: calc(50% - 50vw); display: grid; align-items: end; overflow: hidden; padding: clamp(4rem, 10vw, 8rem) var(--aau-page-gutter); color: #fff; background: #080b0f; }
.aau-creator-hero::before { position: absolute; z-index: -2; inset: -25%; background: radial-gradient(circle at 72% 26%, #e25f3f 0 8%, transparent 27%), radial-gradient(circle at 22% 78%, #176f68 0 7%, transparent 30%), conic-gradient(from 210deg at 65% 45%, #080b0f, #242934, #080b0f 45%); content: ""; transform: rotate(-5deg); }
.aau-creator-hero::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgb(0 0 0 / .72), transparent 72%), repeating-linear-gradient(112deg, transparent 0 70px, rgb(255 255 255 / .055) 71px 72px); content: ""; }
.aau-creator-hero__inner { margin-inline: auto; }
.aau-creator-eyebrow { margin: 0 0 1.25rem; font-size: .78rem; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.aau-creator-hero h1 { max-width: 9ch; margin: 0; color: inherit; font-size: clamp(4rem, 12vw, 10rem); font-weight: 650; letter-spacing: -.075em; line-height: .82; }
.aau-creator-hero__lead { max-width: 42ch; margin: clamp(1.75rem, 4vw, 3rem) 0 0; font-size: clamp(1.2rem, 2vw, 1.65rem); line-height: 1.45; }
.aau-creator-hero__cta { margin-top: 2rem; }
.aau-creator-hero__cta .wp-block-button__link { border: 1px solid #fff; border-radius: 999px; background: #fff; color: #080b0f; }
.aau-creator-section { margin-inline: auto; padding-block: clamp(4.5rem, 9vw, 8rem); }
.aau-creator-section + .aau-creator-section { border-top: 1px solid var(--aau-color-border); }
.aau-creator-intro { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(2rem, 6vw, 6rem); }
.aau-creator-intro > * { min-width: 0; overflow-wrap: anywhere; }
.aau-creator-intro h2, .aau-creator-section > h2 { margin-top: 0; font-size: clamp(2.4rem, 5vw, 5rem); letter-spacing: -.055em; line-height: .96; }
.aau-creator-intro p { margin-top: 0; font-size: clamp(1.15rem, 1.6vw, 1.45rem); line-height: 1.65; }
.aau-creator-steps { counter-reset: creator-step; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; overflow: hidden; padding: 1px; background: var(--aau-color-border); }
.aau-creator-step { counter-increment: creator-step; min-width: 0; padding: clamp(1.5rem, 3vw, 2.5rem); background: var(--aau-color-base); }
.aau-creator-step::before { display: block; margin-bottom: 2.5rem; color: var(--aau-color-accent); content: "0" counter(creator-step); font-size: .78rem; font-weight: 800; letter-spacing: .15em; }
.aau-creator-step h3 { margin: 0 0 .75rem; font-size: 1.4rem; }
.aau-creator-step p { margin: 0; color: var(--aau-color-muted); font-size: 1rem; }
.aau-creator-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(2rem, 7vw, 7rem); }
.aau-creator-card { padding: clamp(1.75rem, 4vw, 3.5rem); border-radius: 22px; background: var(--aau-color-surface); }
.aau-creator-card h2 { margin-top: 0; font-size: clamp(2rem, 3.5vw, 3.5rem); letter-spacing: -.04em; }
.aau-creator-card li + li { margin-top: 1rem; }
.aau-creator-apply { width: 100vw; margin-inline: calc(50% - 50vw); padding: clamp(4.5rem, 9vw, 8rem) var(--aau-page-gutter); color: #fff; background: #11161d; }
.aau-creator-apply__inner { margin-inline: auto; display: grid; grid-template-columns: minmax(0, .8fr) minmax(320px, 1.2fr); gap: clamp(2.5rem, 8vw, 8rem); align-items: start; }
.aau-creator-apply h2 { margin-top: 0; color: inherit; font-size: clamp(3rem, 6vw, 6rem); letter-spacing: -.06em; line-height: .92; }
.aau-creator-apply a { color: inherit; }
.aau-creator-form { padding: clamp(1.25rem, 4vw, 2.5rem); border: 1px solid rgb(255 255 255 / .18); border-radius: 22px; background: rgb(255 255 255 / .07); backdrop-filter: blur(16px); }
.aau-creator-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.aau-creator-form p { margin: 0 0 1rem; }
.aau-creator-form label { display: block; font-size: .9rem; font-weight: 700; }
.aau-creator-form label > .wpcf7-form-control-wrap { margin-top: .45rem; }
.aau-creator-form :where(input, select, textarea) { border-color: rgb(255 255 255 / .25) !important; background: #fff !important; color: #11161d !important; }
.aau-creator-form .wpcf7-acceptance label { display: flex; gap: .7rem; align-items: flex-start; font-weight: 400; line-height: 1.5; }
.aau-creator-form .wpcf7-acceptance input { flex: 0 0 auto; margin-top: .3rem; }
.aau-creator-form .wpcf7-submit { width: 100%; border-radius: 999px; background: #e25f3f; color: #fff; }
.aau-creator-fine-print { color: var(--aau-color-muted); font-size: .9rem; line-height: 1.65; }
@media (max-width: 900px) { .aau-creator-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } .aau-creator-intro, .aau-creator-split, .aau-creator-apply__inner { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .aau-creator-hero h1 { font-size: clamp(3.5rem, 20vw, 6rem); } .aau-creator-steps, .aau-creator-form-grid { grid-template-columns: 1fr; } }
.aau-footer__hosted-after { margin-top: 2.25rem; }
.aau-footer__hosted-after > section { padding: 1.25rem; border-radius: 12px; background: var(--aau-color-surface); color: var(--aau-color-contrast); text-align: center; }
.aau-footer__hosted-after > section h2 { margin: 0 0 1rem; font-size: 1rem; line-height: 1.3; text-align: center; }
.aau-footer__trust-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1rem; margin-top: 1rem; }
.aau-footer__trust-row img { display: block; width: auto; max-width: 88px; max-height: 54px; object-fit: contain; }
.aau-footer__gq { margin-top: 1.5rem; }
.aau-footer__gq img { display: block; width: auto; max-width: 76px; max-height: 46px; margin-inline: auto; }

/* Footer policy action. Keep after shared buttons and mobile column rules:
   the fill stays white in every state, and the owning menu stays right-aligned.
   Pressed feedback uses movement/shadow; focus remains visible while pressed. */
.aau-footer .aau-footer__column--policy-menu { text-align: right; }
.aau-footer__revocation { margin-top: 1rem; text-align: right; }
.aau-footer__revocation-fallback { padding-bottom: 1.5rem; }
.aau-footer .aau-footer__revocation-link { max-width: 100%; min-height: 44px; border: 1px solid #192a3d; background: #fff; color: #192a3d; white-space: normal; overflow-wrap: anywhere; filter: none; }
.aau-footer .aau-footer__revocation-link:hover { background: #fff; color: #192a3d; text-decoration: underline; filter: none; }
.aau-footer .aau-footer__revocation-link:focus-visible { outline: 2px solid #192a3d; outline-offset: 2px; box-shadow: 0 0 0 5px #fff; }
.aau-footer .aau-footer__revocation-link:active { transform: translateY(2px); box-shadow: inset 0 3px 6px rgb(25 42 61 / .32); }
.aau-footer .aau-footer__revocation-link:focus-visible:active { box-shadow: inset 0 3px 6px rgb(25 42 61 / .32), 0 0 0 5px #fff; }
.aau-next-steps { margin-block: 1.5rem; }
.aau-next-steps__links { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; margin: .75rem 0 0; padding: 0; list-style: none; }
.aau-next-steps__links a { font-weight: 650; }

/* Story archives and stories (bedtime story post type). */
.aau-story-layout { display: grid; gap: clamp(1.5rem, 3vw, 2.5rem); }
.aau-story-card .wp-block-post-title { margin-block: .25rem .5rem; font-size: clamp(1.15rem, 1rem + .5vw, 1.4rem); }
.aau-story-card .wp-block-post-title a { color: inherit; }
.aau-story-card .wp-block-post-title a:hover, .aau-story-card .wp-block-post-title a:focus-visible { color: var(--aau-color-accent-ink); }
.aau-story-card .wp-block-post-excerpt { margin-top: .75rem; }
.aau-story-episodes { display: grid; gap: 1.5rem; margin: 0; padding: 0; list-style: none; }
.aau-story-card--episode { gap: 1.5rem; }
.aau-story-card--episode .wp-block-post-featured-image { flex: 0 0 12rem; margin-bottom: 0; }
.aau-story-card__body { flex: 1 1 auto; min-width: 0; }
.aau-story-results__empty { padding: 2rem; border-radius: 12px; background: var(--aau-color-surface); text-align: center; }
.aau-story__content { font-size: clamp(1.15rem, 1.05rem + .35vw, 1.3rem); line-height: 1.8; }
.aau-story__meta { margin-bottom: 2rem; }
.aau-story__terms { gap: .5rem 1.5rem; margin-top: 2.5rem; color: var(--aau-color-muted); }
.aau-story__series { margin-top: 2.5rem; }
.aau-single-story .aabs-related { margin-block: clamp(3rem, 6vw, 5rem); }
@media (max-width: 600px) {
	.aau-story-card--episode { flex-direction: column; }
	.aau-story-card--episode .wp-block-post-featured-image { flex-basis: auto; width: 100%; }
}

/* Shared loading indicator. Plugin and legacy checkout hooks use this component. */
.aau-spinner,
.hf-engage .hf-engage-spinner,
.aa-checkout-spinner {
 display: inline-block;
 inline-size: var(--aau-spinner-size, 1em);
 block-size: var(--aau-spinner-size, 1em);
 flex: 0 0 auto;
 border: 2px solid currentColor;
 border-inline-end-color: transparent;
 border-radius: 50%;
 animation: aau-spin .8s linear infinite;
 vertical-align: middle;
}
.aau-spinner[hidden], .hf-engage-spinner[hidden] { display: none !important; }
@keyframes aau-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
 .aau-spinner, .hf-engage .hf-engage-spinner, .aa-checkout-spinner { animation: none; }
}
