/*
Theme Name: Aureum Atelier v7
Theme URI: https://aureumpeptides.com
Author: Aureum Dev Team
Description: Light spa-luxury atelier theme. Aesop + Loro Piana + Aman Resorts + Hermes anchors. Built 2026-06-24.
Version: 7.0.0
Text Domain: aureum
*/

/* ===========================================
   DESIGN TOKENS — LIGHT ATELIER
   =========================================== */
:root {
    /* Palette — bright bone-cream canvas (Aman tier) */
    --au-bone: #FDFCFA;          /* primary canvas, brighter than v6 */
    --au-cream: #F4EFE7;          /* alternating tonal section */
    --au-paper: #FFFFFF;          /* cards only */
    --au-linen: #ECE5D5;          /* warmer accents */
    --au-sand: #E6DCC4;           /* darker tonal */

    --au-ink: #1F1B17;            /* primary text — warmer than pure black */
    --au-ink-soft: #4A4540;       /* secondary text */
    --au-ink-muted: #8A847A;      /* tertiary text */
    --au-ink-whisper: #B5AFA4;    /* very subtle text */

    --au-gold: #B8962E;           /* muted Patek rose-gold (not chemistry brass) */
    --au-gold-soft: rgba(184,150,46,0.08);
    --au-gold-line: rgba(184,150,46,0.22);

    --au-hairline: rgba(31,27,23,0.08);
    --au-hairline-strong: rgba(31,27,23,0.18);

    --au-shadow-1: 0 1px 2px rgba(31,27,23,0.04);
    --au-shadow-2: 0 2px 20px rgba(31,27,23,0.04);
    --au-shadow-3: 0 8px 30px rgba(31,27,23,0.06);
    --au-shadow-4: 0 15px 50px rgba(31,27,23,0.08);

    /* Typography */
    --au-display: 'Fraunces', 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
    --au-body: 'Inter Tight', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, sans-serif;
    --au-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

    /* Sizing — generous spa scale */
    --au-text-xs: 12px;
    --au-text-sm: 14px;
    --au-text-base: 17px;
    --au-text-md: 20px;
    --au-text-lg: 24px;
    --au-text-xl: 28px;
    --au-text-2xl: 34px;
    --au-text-3xl: 42px;
    --au-text-4xl: 52px;
    --au-text-5xl: 64px;
    --au-text-6xl: 88px;

    /* Spacing — airy spa rhythm */
    --au-s-1: 4px;
    --au-s-2: 8px;
    --au-s-3: 12px;
    --au-s-4: 16px;
    --au-s-5: 24px;
    --au-s-6: 32px;
    --au-s-7: 48px;
    --au-s-8: 64px;
    --au-s-9: 96px;
    --au-s-10: 128px;
    --au-s-11: 160px;
    --au-s-12: 200px;

    --au-r-0: 0px;
    --au-r-sm: 4px;
    --au-r-md: 8px;
    --au-r-lg: 16px;
    --au-r-xl: 24px;
    --au-r-pill: 9999px;

    --au-w-text: 720px;
    --au-w-default: 1080px;
    --au-w-wide: 1440px;

    --au-ease: cubic-bezier(0.16, 1, 0.3, 1);
    --au-dur-fast: 250ms;
    --au-dur-mid: 500ms;
    --au-dur-slow: 900ms;
}

/* ===========================================
   RESET + BASELINE
   =========================================== */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: var(--au-body);
    font-size: var(--au-text-base);
    line-height: 1.55;
    color: var(--au-ink);
    background: var(--au-bone);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    letter-spacing: -0.01em;
}
img, picture, svg, video { display: block; max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; color: inherit; }
button { background: none; border: 0; cursor: pointer; padding: 0; }
a { color: var(--au-ink); text-decoration: none; transition: color var(--au-dur-fast) var(--au-ease); }
a:hover { color: var(--au-gold); }

h1, h2, h3, h4, h5, h6 {
    font-family: var(--au-display);
    font-weight: 400;
    color: var(--au-ink);
    letter-spacing: -0.025em;
    line-height: 1.08;
    margin: 0;
}
h1 { font-size: clamp(var(--au-text-4xl), 6vw, var(--au-text-6xl)); letter-spacing: -0.035em; }
h2 { font-size: clamp(var(--au-text-3xl), 4.5vw, var(--au-text-5xl)); }
h3 { font-size: clamp(var(--au-text-xl), 2.4vw, var(--au-text-2xl)); }

em { font-style: italic; color: var(--au-gold); font-variation-settings: 'opsz' 144, 'SOFT' 100; }

p { margin: 0 0 1em; }

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

/* ===========================================
   EYEBROW — v5 micro-component
   =========================================== */
.au-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 16px;
    font-family: var(--au-body);
    font-size: 11px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: var(--au-gold);
}
.au-eyebrow::before,
.au-eyebrow::after {
    content: '';
    width: 40px;
    height: 1px;
    background: var(--au-gold-line);
}
.au-eyebrow--left::before { display: none; }
.au-eyebrow--right::after { display: none; }

/* ===========================================
   NAV — light header, no dark bar
   =========================================== */
.au-nav-top {
    background: var(--au-bone);
    color: var(--au-ink);
    border-bottom: 1px solid var(--au-hairline);
}
.au-nav-top__strip {
    background: var(--au-cream);
    border-bottom: 1px solid var(--au-hairline);
    padding: 8px 24px;
    display: flex;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;
    font-family: var(--au-body);
    font-size: 11px;
    color: var(--au-ink-muted);
    text-transform: uppercase;
    letter-spacing: 0.14em;
}
.au-nav-top__strip span { display: inline-flex; align-items: center; gap: 6px; }
.au-nav-top__strip span::before { content: ''; width: 4px; height: 4px; border-radius: 50%; background: var(--au-gold); }

.au-nav-main {
    max-width: var(--au-w-wide);
    margin: 0 auto;
    padding: 20px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
}
.au-nav-main__brand {
    font-family: var(--au-display);
    font-size: 26px;
    font-weight: 400;
    color: var(--au-ink);
    letter-spacing: 0.04em;
}
.au-nav-main__brand em { color: var(--au-gold); }
.au-nav-main__links {
    display: flex;
    gap: 40px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.au-nav-main__links a {
    font-family: var(--au-body);
    font-size: 13px;
    color: var(--au-ink-soft);
    text-transform: uppercase;
    letter-spacing: 0.14em;
    padding-bottom: 4px;
    border-bottom: 1px solid transparent;
    transition: all var(--au-dur-fast) var(--au-ease);
}
.au-nav-main__links a:hover { color: var(--au-ink); border-bottom-color: var(--au-gold); }
.au-nav-main__actions { display: flex; gap: 16px; align-items: center; }
.au-nav-main__icon {
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--au-ink-soft);
    transition: color var(--au-dur-fast) var(--au-ease);
    position: relative;
}
.au-nav-main__icon:hover { color: var(--au-gold); }
.au-nav-main__cart-count {
    position: absolute;
    top: 4px;
    right: 4px;
    background: var(--au-gold);
    color: var(--au-paper);
    font-family: var(--au-body);
    font-size: 10px;
    font-weight: 600;
    min-width: 18px;
    height: 18px;
    border-radius: var(--au-r-pill);
    padding: 0 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* ===========================================
   BUTTONS
   =========================================== */
.au-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-family: var(--au-body);
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    padding: 18px 36px;
    border-radius: var(--au-r-pill);
    border: 1px solid transparent;
    cursor: pointer;
    text-decoration: none;
    transition: all var(--au-dur-fast) var(--au-ease);
    min-height: 48px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}
.au-btn--primary { background: var(--au-ink); color: var(--au-bone); border-color: var(--au-ink); }
.au-btn--primary:hover { background: transparent; color: var(--au-ink); }
.au-btn--gold { background: var(--au-gold); color: var(--au-paper); border-color: var(--au-gold); }
.au-btn--gold:hover { background: var(--au-ink); border-color: var(--au-ink); color: var(--au-paper); }
.au-btn--ghost { background: transparent; color: var(--au-ink); border-color: var(--au-ink); }
.au-btn--ghost:hover { background: var(--au-ink); color: var(--au-paper); }
.au-btn--link {
    background: transparent;
    color: var(--au-ink);
    padding: 8px 0;
    border-radius: 0;
    border: 0;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 12px;
    border-bottom: 1px solid var(--au-gold);
    min-height: auto;
}
.au-btn--link:hover { color: var(--au-gold); }

/* ===========================================
   HERO — full-bleed AI imagery + overlay
   =========================================== */
.au-hero {
    position: relative;
    min-height: 92vh;
    overflow: hidden;
    background: var(--au-bone);
}
.au-hero__image {
    position: absolute;
    inset: 0;
    z-index: 1;
}
.au-hero__image img,
.au-hero__video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}
.au-hero__video {
    position: absolute;
    inset: 0;
    z-index: 1;
}
/* respect reduced motion — show poster instead */
@media (prefers-reduced-motion: reduce) {
    .au-hero__video { display: none; }
    .au-hero__image::before {
        content: '';
        position: absolute;
        inset: 0;
        background-image: url('assets/images/atelier/hero-1.png');
        background-size: cover;
        background-position: center;
        z-index: 1;
    }
}
/* DARK CINEMATIC OVERLAY — keeps dramatic mood of hero image, adds bottom legibility wash */
.au-hero__image::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(15,12,9,0.20) 0%, rgba(15,12,9,0.35) 35%, rgba(15,12,9,0.78) 78%, rgba(15,12,9,0.95) 100%),
        radial-gradient(ellipse at 75% 35%, rgba(184,150,46,0.18) 0%, transparent 55%);
}
.au-hero__inner {
    position: relative;
    z-index: 5;
    max-width: var(--au-w-wide);
    margin: 0 auto;
    padding: clamp(6rem, 14vh, 12rem) clamp(2rem, 5vw, 5rem);
    min-height: 92vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
}
.au-hero__eyebrow {
    margin-bottom: 32px;
    color: var(--au-gold) !important;
}
.au-hero__eyebrow::before {
    background: var(--au-gold) !important;
    opacity: 0.7;
}
.au-hero__title {
    font-family: var(--au-display);
    font-size: clamp(48px, 7vw, 96px);
    line-height: 0.98;
    letter-spacing: -0.035em;
    font-weight: 400;
    color: var(--au-bone);
    margin: 0 0 32px;
    max-width: 900px;
    text-shadow: 0 2px 24px rgba(0,0,0,0.4);
}
.au-hero__title em {
    font-style: italic;
    color: var(--au-gold);
    font-variation-settings: 'opsz' 144, 'SOFT' 100;
    text-shadow: 0 0 32px rgba(184,150,46,0.5);
}
.au-hero__sub {
    font-family: var(--au-body);
    font-size: clamp(17px, 1.4vw, 21px);
    line-height: 1.6;
    color: rgba(251,248,242,0.82);
    margin: 0 0 48px;
    max-width: 540px;
    letter-spacing: -0.005em;
    text-shadow: 0 1px 12px rgba(0,0,0,0.3);
}
.au-hero__ctas { display: flex; gap: 16px; flex-wrap: wrap; }

/* ===========================================
   TILE SECTIONS
   =========================================== */
.au-tile {
    width: 100%;
    padding: var(--au-s-11) clamp(2rem, 5vw, 5rem);
    position: relative;
}
.au-tile--bone { background: var(--au-bone); }
.au-tile--cream { background: var(--au-cream); }
.au-tile--paper { background: var(--au-paper); }
.au-tile--linen { background: var(--au-linen); }
.au-tile__inner {
    max-width: var(--au-w-wide);
    margin: 0 auto;
}
.au-tile__head {
    text-align: center;
    max-width: var(--au-w-text);
    margin: 0 auto var(--au-s-9);
}
.au-tile__head .au-eyebrow { margin-bottom: 24px; }
.au-tile__title { margin: 0 0 16px; }
.au-tile__lede {
    font-family: var(--au-body);
    font-size: var(--au-text-md);
    color: var(--au-ink-soft);
    line-height: 1.6;
    margin: 0 auto;
    max-width: 540px;
}

/* ===========================================
   PRODUCT CARDS — paper on cream
   =========================================== */
.au-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}
.au-card {
    background: var(--au-paper);
    border: 1px solid var(--au-hairline);
    border-radius: var(--au-r-md);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: box-shadow var(--au-dur-mid) var(--au-ease), border-color var(--au-dur-fast) var(--au-ease), transform var(--au-dur-mid) var(--au-ease);
    box-shadow: var(--au-shadow-1);
}
.au-card:hover {
    box-shadow: var(--au-shadow-3);
    border-color: var(--au-hairline-strong);
    transform: translateY(-2px);
}
.au-card__media {
    aspect-ratio: 1/1;
    background: var(--au-cream);
    display: block;
    overflow: hidden;
    position: relative;
}
.au-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    padding: 0;
    margin: 0;
    display: block;
    border: 0;
    box-shadow: none;
    max-height: 100%;
    object-fit: contain;
    transition: transform var(--au-dur-mid) var(--au-ease);
}
.au-card:hover .au-card__media img { transform: scale(1.05); }
.au-card__body {
    padding: 28px 24px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
}
.au-card__category {
    font-family: var(--au-body);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    color: var(--au-gold);
    font-weight: 500;
}
.au-card__title {
    font-family: var(--au-display);
    font-size: 22px;
    line-height: 1.15;
    color: var(--au-ink);
    margin: 0;
    letter-spacing: -0.015em;
    font-weight: 400;
}
.au-card__title a { color: inherit; }
.au-card__purity {
    font-family: var(--au-mono);
    font-size: 11px;
    color: var(--au-ink-muted);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-top: 2px;
}
.au-card__foot {
    margin-top: auto;
    padding-top: 16px;
    border-top: 1px solid var(--au-hairline);
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.au-card__price {
    font-family: var(--au-display);
    font-size: 22px;
    color: var(--au-ink);
    letter-spacing: -0.01em;
}
.au-card__price-from {
    font-family: var(--au-body);
    font-size: 11px;
    color: var(--au-ink-muted);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-right: 4px;
}
.au-card__buy {
    background: transparent;
    color: var(--au-ink);
    padding: 8px 18px;
    border-radius: var(--au-r-pill);
    border: 1px solid var(--au-ink);
    font-family: var(--au-body);
    font-size: 11px;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    transition: all var(--au-dur-fast) var(--au-ease);
    font-weight: 500;
}
.au-card__buy:hover { background: var(--au-ink); color: var(--au-paper); }

/* ===========================================
   JOURNAL — editorial pull-quote with image
   =========================================== */
.au-journal {
    position: relative;
    overflow: hidden;
}
.au-journal__bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}
.au-journal__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.au-journal__bg::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(251,248,242,0.85) 0%, rgba(251,248,242,0.7) 100%);
}
.au-journal__inner {
    position: relative;
    z-index: 5;
    max-width: 880px;
    margin: 0 auto;
    padding: clamp(96px, 14vh, 144px) clamp(2rem, 5vw, 5rem);
    text-align: center;
}
.au-journal__quote {
    font-family: var(--au-display);
    font-size: clamp(28px, 4vw, 44px);
    line-height: 1.35;
    font-style: italic;
    color: var(--au-ink);
    margin: 32px 0 32px;
    letter-spacing: -0.02em;
    font-weight: 400;
}
.au-journal__quote em { color: var(--au-gold); }
.au-journal__attrib {
    font-family: var(--au-body);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: var(--au-ink-muted);
}
.au-journal__attrib::before { content: '— '; color: var(--au-gold); }

/* ===========================================
   ATELIER ACCESS — light invite form
   =========================================== */
.au-atelier {
    background: var(--au-cream);
    border-top: 1px solid var(--au-hairline);
    border-bottom: 1px solid var(--au-hairline);
    padding: clamp(96px, 14vh, 144px) clamp(2rem, 5vw, 5rem);
    text-align: center;
}
.au-atelier__inner {
    max-width: 640px;
    margin: 0 auto;
}
.au-atelier__title {
    font-size: clamp(36px, 5vw, 52px);
    margin: 24px 0 16px;
}
.au-atelier__sub {
    font-family: var(--au-body);
    font-size: 17px;
    line-height: 1.65;
    color: var(--au-ink-soft);
    margin: 0 0 40px;
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
}
.au-atelier__form {
    display: flex;
    gap: 8px;
    max-width: 440px;
    margin: 0 auto;
    flex-wrap: wrap;
}
.au-atelier__input {
    flex: 1 1 220px;
    background: var(--au-paper);
    border: 1px solid var(--au-hairline-strong);
    color: var(--au-ink);
    padding: 16px 22px;
    border-radius: var(--au-r-pill);
    font-family: var(--au-body);
    font-size: 14px;
    letter-spacing: -0.005em;
    outline: none;
    transition: border-color var(--au-dur-fast) var(--au-ease);
}
.au-atelier__input:focus { border-color: var(--au-gold); }
.au-atelier__btn {
    background: var(--au-ink);
    color: var(--au-paper);
    border: 0;
    padding: 16px 28px;
    border-radius: var(--au-r-pill);
    font-family: var(--au-body);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    transition: background var(--au-dur-fast) var(--au-ease);
    white-space: nowrap;
}
.au-atelier__btn:hover { background: var(--au-gold); }
.au-atelier__legal {
    font-family: var(--au-body);
    font-size: 12px;
    color: var(--au-ink-muted);
    margin-top: 16px;
    letter-spacing: 0.02em;
}

/* ===========================================
   FOOTER — warm linen
   =========================================== */
.au-footer {
    background: var(--au-linen);
    color: var(--au-ink-soft);
    padding: clamp(80px, 10vh, 96px) clamp(2rem, 5vw, 5rem) 32px;
    font-family: var(--au-body);
    font-size: 14px;
    border-top: 1px solid var(--au-hairline);
}
.au-footer__inner { max-width: var(--au-w-wide); margin: 0 auto; }
.au-footer__grid {
    display: grid;
    grid-template-columns: 1.5fr repeat(4, 1fr);
    gap: 64px;
    padding-bottom: 64px;
    border-bottom: 1px solid var(--au-hairline);
}
.au-footer__brand h3 {
    font-family: var(--au-display);
    font-size: 28px;
    color: var(--au-ink);
    margin: 0 0 16px;
    font-weight: 400;
    letter-spacing: -0.02em;
}
.au-footer__brand h3 em { color: var(--au-gold); }
.au-footer__brand p {
    font-size: 14px;
    color: var(--au-ink-muted);
    line-height: 1.65;
    max-width: 340px;
    margin: 0 0 24px;
}
.au-footer__col h4 {
    font-family: var(--au-body);
    font-size: 11px;
    font-weight: 600;
    color: var(--au-ink);
    text-transform: uppercase;
    letter-spacing: 0.16em;
    margin: 0 0 24px;
}
.au-footer__col ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.au-footer__col a {
    font-size: 14px;
    color: var(--au-ink-soft);
    letter-spacing: -0.005em;
}
.au-footer__col a:hover { color: var(--au-gold); }
.au-footer__legal {
    padding-top: 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
}
.au-footer__legal-text {
    font-size: 11px;
    color: var(--au-ink-muted);
    line-height: 1.7;
    max-width: 880px;
}

/* ===========================================
   MARQUEE — credibility ticker, top of page
   Pure CSS infinite scroll. Pauses on hover.
   =========================================== */
.au-marquee {
    overflow: hidden;
    background: var(--au-ink);
    color: var(--au-bone);
    border-bottom: 1px solid rgba(255,255,255,0.06);
    position: relative;
    width: 100%;
}
.au-marquee::before,
.au-marquee::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 80px;
    z-index: 2;
    pointer-events: none;
}
.au-marquee::before { left: 0; background: linear-gradient(90deg, var(--au-ink) 0%, transparent 100%); }
.au-marquee::after { right: 0; background: linear-gradient(270deg, var(--au-ink) 0%, transparent 100%); }
.au-marquee__track {
    display: inline-flex;
    align-items: center;
    gap: 0;
    white-space: nowrap;
    animation: au-marquee-scroll 60s linear infinite;
    will-change: transform;
}
.au-marquee:hover .au-marquee__track { animation-play-state: paused; }
.au-marquee__item {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 11px 28px;
    font-family: var(--au-body);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    color: rgba(251,248,242,0.78);
    font-weight: 500;
}
.au-marquee__dot {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--au-gold);
    box-shadow: 0 0 8px rgba(184,150,46,0.6);
    flex-shrink: 0;
}
@keyframes au-marquee-scroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
    .au-marquee__track { animation: none; }
}
@media (max-width: 768px) {
    .au-marquee__item { padding: 9px 18px; font-size: 10px; letter-spacing: 0.14em; gap: 10px; }
    .au-marquee::before, .au-marquee::after { width: 40px; }
}

/* ===========================================
   DARK BAND — mobile responsive
   3-col grid stack to 1-col on phone, 6-col logos to 3-col
   =========================================== */
@media (max-width: 1024px) {
    .au-band--dark > div > div:first-child { grid-template-columns: 1fr !important; gap: 48px !important; text-align: center !important; }
    .au-band--dark > div > div:first-child > div { text-align: center !important; border: 0 !important; padding: 0 !important; }
    .au-band--dark > div > div:first-child > div:nth-child(2) { border-top: 1px solid rgba(255,255,255,0.08) !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; padding: 32px 0 !important; }
}
@media (max-width: 768px) {
    .au-band--dark > div > div:last-child > div { grid-template-columns: repeat(3, 1fr) !important; gap: 24px !important; }
}
@media (max-width: 480px) {
    .au-band--dark > div > div:last-child > div { grid-template-columns: repeat(2, 1fr) !important; gap: 20px !important; }
}

/* ===========================================
   TEXTURE OVERLAY — subtle film grain on bone bg
   adds depth, removes flatness
   =========================================== */
body::before {
    content: '';
    position: fixed;
    inset: 0;
    z-index: 9999;
    pointer-events: none;
    opacity: 0.025;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    mix-blend-mode: multiply;
}

/* ===========================================
   DARK CONTRAST BAND — utility class
   Use to break bone/cream monotony with ink moments
   =========================================== */
.au-band--dark {
    background: var(--au-ink);
    color: var(--au-bone);
    position: relative;
    overflow: hidden;
}
.au-band--dark::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 80% 30%, rgba(184,150,46,0.10) 0%, transparent 60%);
    pointer-events: none;
    z-index: 1;
}
.au-band--dark > * { position: relative; z-index: 2; }
.au-band--dark h2,
.au-band--dark h3,
.au-band--dark h1 { color: var(--au-bone); }
.au-band--dark em { color: var(--au-gold); }
.au-band--dark p { color: rgba(251,248,242,0.78); }
.au-band--dark .au-eyebrow { color: var(--au-gold) !important; }
.au-band--dark .au-eyebrow::before { background: var(--au-gold) !important; opacity: 0.6; }

/* ===========================================
   LIVE ACTIVITY TICKER — fixed bottom-left widget
   Cycles 5 entries via CSS @keyframes
   =========================================== */
.au-activity {
    position: fixed;
    bottom: 16px;
    left: 16px;
    z-index: 90;
    pointer-events: none;
    background: rgba(31,27,23,0.92);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(184,150,46,0.18);
    border-radius: 14px;
    padding: 12px 18px;
    max-width: 360px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
    animation: au-activity-slide-in 0.6s cubic-bezier(0.2,0.8,0.2,1) 2s backwards;
}
.au-activity__inner {
    display: flex;
    align-items: center;
    gap: 12px;
    height: 22px;
    overflow: hidden;
    position: relative;
}
.au-activity__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--au-gold);
    box-shadow: 0 0 8px rgba(184,150,46,0.7);
    flex-shrink: 0;
    animation: au-activity-pulse 2s ease-in-out infinite;
}
.au-activity__rotator {
    position: relative;
    height: 22px;
    flex: 1;
    overflow: hidden;
}
.au-activity__line {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    font-family: var(--au-body);
    font-size: 12px;
    color: rgba(251,248,242,0.85);
    white-space: nowrap;
    opacity: 0;
    transform: translateY(100%);
    animation: au-activity-cycle 25s linear infinite;
}
.au-activity__line:nth-child(1) { animation-delay: 0s; }
.au-activity__line:nth-child(2) { animation-delay: 5s; }
.au-activity__line:nth-child(3) { animation-delay: 10s; }
.au-activity__line:nth-child(4) { animation-delay: 15s; }
.au-activity__line:nth-child(5) { animation-delay: 20s; }
.au-activity__line strong { font-weight: 600; color: var(--au-bone); margin-right: 4px; }
.au-activity__line em { font-style: italic; color: var(--au-gold); }
@keyframes au-activity-cycle {
    0%   { opacity: 0; transform: translateY(100%); }
    4%   { opacity: 1; transform: translateY(0); }
    20%  { opacity: 1; transform: translateY(0); }
    24%  { opacity: 0; transform: translateY(-100%); }
    100% { opacity: 0; transform: translateY(-100%); }
}
@keyframes au-activity-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%      { opacity: 0.6; transform: scale(1.3); }
}
@keyframes au-activity-slide-in {
    0%   { opacity: 0; transform: translateY(20px); }
    100% { opacity: 1; transform: translateY(0); }
}
@media (max-width: 640px) {
    .au-activity {
        left: 12px;
        right: 12px;
        bottom: 12px;
        max-width: none;
        padding: 10px 14px;
    }
    .au-activity__line { font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) {
    .au-activity__line:nth-child(1) { opacity: 1; transform: translateY(0); animation: none; }
    .au-activity__line:nth-child(n+2) { display: none; }
    .au-activity__dot { animation: none; }
}

/* ===========================================
   FOUNDER BIO CARDS — mobile responsive
   =========================================== */
@media (max-width: 768px) {
    .au-band--dark article + article { margin-top: 0; }
    .au-band--dark > div > div[style*="grid-template-columns:repeat(3,1fr)"],
    .au-band--dark > div > div[style*="grid-template-columns: repeat(3,1fr)"] { grid-template-columns: 1fr !important; gap: 16px !important; }
    .au-band--dark > div > div[style*="grid-template-columns:1fr 1.5fr"] { grid-template-columns: 1fr !important; gap: 32px !important; }
}

/* lot countdown 2-col stack mobile */
@media (max-width: 768px) {
    .au-tile[style*="grid-template-columns:1fr 1.3fr"] > div > div { grid-template-columns: 1fr !important; gap: 32px !important; }
}

/* ===========================================
   HOVER POLISH — universal card lift + image zoom
   =========================================== */
.au-card,
article.au-card {
    transition: transform 0.4s cubic-bezier(0.2,0.8,0.2,1), box-shadow 0.4s cubic-bezier(0.2,0.8,0.2,1), border-color 0.3s ease;
}
.au-card:hover,
article.au-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(31,27,23,0.10), 0 2px 8px rgba(31,27,23,0.04);
    border-color: rgba(184,150,46,0.35);
}
.au-card__media {
    overflow: hidden;
    position: relative;
}
.au-card__media img {
    transition: transform 0.8s cubic-bezier(0.2,0.8,0.2,1);
}
.au-card:hover .au-card__media img,
article.au-card:hover .au-card__media img { transform: scale(1.06); }

/* gold accent hover sweep on title links */
.au-card__title a {
    background-image: linear-gradient(currentColor, currentColor);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 0 1px;
    transition: background-size 0.4s ease;
}
.au-card:hover .au-card__title a {
    background-size: 100% 1px;
    color: var(--au-gold) !important;
}

/* ===========================================
   LEGACY PLUGIN PAGES — atelier restyling
   Targets: /protocol-builder/ /peptide-encyclopedia/ /peptide-finder/
   =========================================== */
body.page-id-1886, body.page-id-2019, body.page-id-1827 { background: var(--au-bone); }
body.page-id-1886 .entry-content, body.page-id-2019 .entry-content, body.page-id-1827 .entry-content,
body.page-id-1886 .au-cart-wrap, body.page-id-2019 .au-cart-wrap, body.page-id-1827 .au-cart-wrap {
    max-width: 1080px !important; margin: 0 auto !important; padding: 64px 24px !important; background: var(--au-bone) !important;
}
/* hide v6 page.php duplicate title chrome on tool pages */
body.page-id-1886 .au-page-header,
body.page-id-2019 .au-page-header,
body.page-id-1827 .au-page-header,
body.page-id-1886 .au-cart-header,
body.page-id-2019 .au-cart-header,
body.page-id-1827 .au-cart-header,
body.page-id-1886 .au-cart-steps,
body.page-id-2019 .au-cart-steps,
body.page-id-1827 .au-cart-steps { display: none !important; }

/* restyle plugin tool containers w/ v7 atelier tokens */
.aureum-protocol-box, .aureum-encyclopedia-card, .aureum-finder-card, .aureum-protocol-content {
    background: var(--au-paper) !important;
    border: 1px solid var(--au-hairline) !important;
    border-radius: 14px !important;
    box-shadow: var(--au-shadow-1) !important;
    padding: 28px !important;
    margin-bottom: 16px !important;
}
.aureum-protocol-label, .aureum-encyclopedia-label, .aureum-finder-label {
    font-family: var(--au-mono) !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    color: var(--au-gold) !important;
    margin-bottom: 12px !important;
    display: block;
}
.aureum-protocol-box h1, .aureum-protocol-box h2, .aureum-protocol-box h3,
.aureum-encyclopedia-card h1, .aureum-encyclopedia-card h2, .aureum-encyclopedia-card h3,
.aureum-finder-card h1, .aureum-finder-card h2, .aureum-finder-card h3 {
    font-family: var(--au-display) !important;
    color: var(--au-ink) !important;
    letter-spacing: -0.02em !important;
    font-weight: 400 !important;
}
.aureum-protocol-box em, .aureum-encyclopedia-card em, .aureum-finder-card em {
    color: var(--au-gold) !important;
    font-style: italic !important;
}
.aureum-protocol-box a, .aureum-encyclopedia-card a, .aureum-finder-card a {
    color: var(--au-gold) !important;
    text-decoration: none !important;
}
.aureum-protocol-box button, .aureum-finder-card button, .aureum-encyclopedia-card button,
.aureum-protocol-box input[type="submit"], .aureum-finder-card input[type="submit"] {
    background: var(--au-gold) !important;
    color: var(--au-paper) !important;
    border: 0 !important;
    border-radius: 9999px !important;
    padding: 12px 28px !important;
    font-family: var(--au-body) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    cursor: pointer !important;
    transition: background 0.2s !important;
}
.aureum-protocol-box button:hover, .aureum-finder-card button:hover {
    background: var(--au-ink) !important;
}
.aureum-protocol-box input[type="text"], .aureum-protocol-box input[type="number"],
.aureum-protocol-box select, .aureum-protocol-box textarea,
.aureum-finder-card input[type="text"], .aureum-finder-card select,
.aureum-encyclopedia-card input[type="text"], .aureum-encyclopedia-card select {
    width: 100% !important;
    padding: 12px 18px !important;
    border: 1px solid var(--au-hairline-strong) !important;
    border-radius: 9999px !important;
    font-family: var(--au-body) !important;
    font-size: 14px !important;
    background: var(--au-bone) !important;
    color: var(--au-ink) !important;
    box-sizing: border-box !important;
}

/* ===========================================
   WOOCOMMERCE PAGINATION — pill row, no bullets
   =========================================== */
.woocommerce-pagination,
nav.woocommerce-pagination {
    text-align: center;
    margin: 64px auto 0;
    padding: 0;
    list-style: none;
}
.woocommerce-pagination ul,
nav.woocommerce-pagination ul.page-numbers {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-flex !important;
    gap: 8px;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    border: 0 !important;
}
.woocommerce-pagination ul li,
nav.woocommerce-pagination ul.page-numbers li {
    list-style: none !important;
    list-style-type: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    display: inline-flex !important;
}
.woocommerce-pagination ul li::before,
nav.woocommerce-pagination ul.page-numbers li::before,
.woocommerce-pagination ul li::marker,
nav.woocommerce-pagination ul.page-numbers li::marker {
    content: none !important;
    display: none !important;
}
.woocommerce-pagination .page-numbers,
nav.woocommerce-pagination ul.page-numbers li .page-numbers,
nav.woocommerce-pagination ul.page-numbers li a,
nav.woocommerce-pagination ul.page-numbers li span {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 14px;
    border-radius: 9999px;
    border: 1px solid var(--au-hairline-strong);
    background: var(--au-paper);
    color: var(--au-ink) !important;
    font-family: var(--au-body);
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    letter-spacing: 0.04em;
    transition: background 0.2s, border-color 0.2s, color 0.2s;
}
.woocommerce-pagination .page-numbers:hover,
nav.woocommerce-pagination ul.page-numbers li a:hover {
    background: var(--au-cream);
    border-color: var(--au-gold-line);
    color: var(--au-gold) !important;
}
.woocommerce-pagination .page-numbers.current,
nav.woocommerce-pagination ul.page-numbers li span.current {
    background: var(--au-ink) !important;
    border-color: var(--au-ink) !important;
    color: var(--au-paper) !important;
}
.woocommerce-pagination .page-numbers.dots {
    border: 0 !important;
    background: transparent !important;
    color: var(--au-ink-muted) !important;
}

/* ===========================================
   WEBKIT AUTOFILL SUPPRESSION
   kills yellow autofill bg on Chrome/Edge/Safari
   keeps bone canvas + ink text on stored creds
   =========================================== */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 1000px var(--au-bone) inset !important;
    -webkit-text-fill-color: var(--au-ink) !important;
    caret-color: var(--au-ink) !important;
    transition: background-color 9999s ease-in-out 0s !important;
    background-clip: content-box !important;
    border-color: var(--au-hairline-strong) !important;
}
/* paper-card variants (Sign In + contact form sit on white paper) */
.au-co-v7 input:-webkit-autofill,
.au-co-v7 textarea:-webkit-autofill,
.au-co-v7 select:-webkit-autofill,
form.woocommerce-form-login input:-webkit-autofill,
form.woocommerce-form-register input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px var(--au-bone) inset !important;
}
/* paper-bg register card uses au-paper bg on inputs */
form.woocommerce-form-register input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px var(--au-paper) inset !important;
}

/* ===========================================
   RESPONSIVE
   =========================================== */
@media (max-width: 1024px) {
    .au-grid-4 { grid-template-columns: repeat(3, 1fr); gap: 16px; }
    .au-footer__grid { grid-template-columns: 1fr 1fr; gap: 32px; }
}
@media (max-width: 768px) {
    .au-grid-4 { grid-template-columns: repeat(2, 1fr); gap: 12px; }
    .au-nav-main__links { display: none; }
    .au-nav-top__strip { gap: 16px; padding: 6px 12px; font-size: 9px; letter-spacing: 0.1em; }
    .au-nav-top__strip span { font-size: 9px; }
    .au-hero { min-height: 88vh; }
    .au-hero__inner { padding: 96px 16px 64px; }
    .au-tile { padding: var(--au-s-9) 16px; }
    .au-journal__inner { padding: 64px 16px; }
    .au-atelier { padding: 64px 16px; }
    .au-atelier__form { flex-direction: column; }
    .au-atelier__btn { width: 100%; }
}
@media (max-width: 480px) {
    .au-grid-4 { grid-template-columns: 1fr; }
}

/* ═══════════════════════════════════════════
   BLOG / JOURNAL — v7 atelier override
   =========================================== */
body.blog { background: var(--au-bone) !important; }
body.blog .au-blog-banner {
    background: linear-gradient(180deg, #0F0C09 0%, #1A1612 100%) !important;
    border: 1px solid rgba(184,150,46,0.15) !important;
    border-radius: 20px !important;
    padding: 88px 48px !important;
    margin: 32px 0 56px !important;
    color: var(--au-bone) !important;
    overflow: hidden !important;
    position: relative !important;
}
body.blog .au-blog-banner::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: radial-gradient(ellipse at 30% 40%, rgba(184,150,46,0.18) 0%, transparent 55%) !important;
    pointer-events: none !important;
}
body.blog .au-blog-banner::after {
    background: linear-gradient(90deg, transparent, var(--au-gold), transparent) !important;
    height: 1px !important;
}
body.blog .au-blog-banner-label {
    color: var(--au-gold) !important;
    font-family: var(--au-body) !important;
    font-size: 11px !important;
    letter-spacing: 0.22em !important;
    font-weight: 500 !important;
    position: relative !important;
    z-index: 2 !important;
}
body.blog .au-blog-banner h1 {
    font-family: var(--au-display) !important;
    font-size: clamp(48px, 6vw, 84px) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.035em !important;
    font-weight: 400 !important;
    color: var(--au-bone) !important;
    text-shadow: 0 2px 32px rgba(0,0,0,0.5) !important;
    margin: 28px auto 18px !important;
    max-width: 760px !important;
    position: relative !important;
    z-index: 2 !important;
}
body.blog .au-blog-banner p {
    font-family: var(--au-body) !important;
    font-size: 17px !important;
    font-style: normal !important;
    color: rgba(251,248,242,0.75) !important;
    line-height: 1.65 !important;
    max-width: 560px !important;
    text-shadow: 0 1px 12px rgba(0,0,0,0.4) !important;
    position: relative !important;
    z-index: 2 !important;
}
body.blog .au-blog-featured-card {
    background: var(--au-paper) !important;
    border: 1px solid var(--au-hairline) !important;
    border-radius: 18px !important;
    box-shadow: 0 2px 20px rgba(31,27,23,0.04) !important;
    transition: transform 0.4s cubic-bezier(0.2,0.8,0.2,1), box-shadow 0.4s ease, border-color 0.3s ease !important;
}
body.blog .au-blog-featured-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 20px 60px rgba(184,150,46,0.10) !important;
    border-color: rgba(184,150,46,0.4) !important;
}
body.blog .au-blog-featured-image {
    background: linear-gradient(135deg, var(--au-cream) 0%, var(--au-linen) 100%) !important;
    min-height: 420px !important;
}
body.blog .au-blog-featured-image img { object-fit: cover !important; }
body.blog .au-blog-featured-badge {
    color: var(--au-gold) !important;
    background: var(--au-gold-soft) !important;
    border: 1px solid var(--au-gold-line) !important;
    font-family: var(--au-body) !important;
    border-radius: 9999px !important;
    padding: 6px 14px !important;
}
body.blog .au-blog-featured-body h2 {
    font-family: var(--au-display) !important;
    font-size: clamp(28px, 3.5vw, 38px) !important;
    font-weight: 400 !important;
    letter-spacing: -0.025em !important;
    line-height: 1.18 !important;
    color: var(--au-ink) !important;
}
body.blog .au-blog-featured-body h2 a:hover { color: var(--au-gold) !important; }
body.blog .au-blog-featured-excerpt {
    font-family: var(--au-body) !important;
    color: var(--au-ink-soft) !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
}
body.blog .au-blog-section-divider span {
    color: var(--au-gold) !important;
    font-family: var(--au-body) !important;
    font-size: 11px !important;
    letter-spacing: 0.22em !important;
    font-weight: 500 !important;
}
body.blog .au-blog-section-divider::before,
body.blog .au-blog-section-divider::after { background: var(--au-hairline-strong) !important; }
body.blog .au-blog-card {
    background: var(--au-paper) !important;
    border: 1px solid var(--au-hairline) !important;
    border-top: 2px solid transparent !important;
    border-radius: 16px !important;
    transition: transform 0.4s cubic-bezier(0.2,0.8,0.2,1), box-shadow 0.4s ease, border-color 0.3s ease !important;
}
body.blog .au-blog-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 16px 48px rgba(184,150,46,0.08) !important;
    border-color: rgba(184,150,46,0.25) !important;
    border-top-color: var(--au-gold) !important;
}
body.blog .au-blog-card-image {
    background: linear-gradient(135deg, var(--au-cream) 0%, var(--au-linen) 100%) !important;
}
body.blog .au-blog-card-image img {
    object-fit: cover !important;
    transition: transform 0.8s cubic-bezier(0.2,0.8,0.2,1) !important;
}
body.blog .au-blog-card:hover .au-blog-card-image img { transform: scale(1.08) !important; }
body.blog .au-blog-cat {
    color: var(--au-gold) !important;
    background: var(--au-gold-soft) !important;
    border: 1px solid var(--au-gold-line) !important;
    font-family: var(--au-body) !important;
    border-radius: 9999px !important;
    padding: 4px 12px !important;
    letter-spacing: 0.14em !important;
}
body.blog .au-blog-date { color: var(--au-ink-muted) !important; font-family: var(--au-body) !important; }
body.blog .au-blog-readtime { color: var(--au-ink-muted) !important; font-family: var(--au-body) !important; }
body.blog .au-blog-card-body h3 {
    font-family: var(--au-display) !important;
    font-size: 22px !important;
    font-weight: 400 !important;
    letter-spacing: -0.015em !important;
    color: var(--au-ink) !important;
    line-height: 1.25 !important;
}
body.blog .au-blog-card-body h3 a:hover { color: var(--au-gold) !important; }
body.blog .au-blog-card-excerpt {
    font-family: var(--au-body) !important;
    color: var(--au-ink-soft) !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
}
body.blog .au-blog-readmore {
    color: var(--au-gold) !important;
    font-family: var(--au-body) !important;
    font-weight: 600 !important;
    letter-spacing: 0.14em !important;
    border-bottom: 1px solid rgba(184,150,46,0.3) !important;
    padding-bottom: 4px !important;
    transition: all 0.3s ease !important;
}
body.blog .au-blog-readmore:hover {
    color: var(--au-ink) !important;
    gap: 12px !important;
    border-bottom-color: var(--au-ink) !important;
}
body.blog .au-blog-pagination a,
body.blog .au-blog-pagination span {
    border-radius: 9999px !important;
    border: 1px solid var(--au-hairline-strong) !important;
    background: var(--au-paper) !important;
    color: var(--au-ink) !important;
    font-family: var(--au-body) !important;
    width: 42px !important;
    height: 42px !important;
    transition: all 0.2s !important;
}
body.blog .au-blog-pagination a:hover,
body.blog .au-blog-pagination .current {
    background: var(--au-ink) !important;
    border-color: var(--au-ink) !important;
    color: var(--au-bone) !important;
}
body.blog .au-blog-pagination::before {
    background: linear-gradient(90deg, transparent, var(--au-gold), transparent) !important;
}

/* ============================================================================
   .screen-reader-text — OWNED BY THE THEME  (2026-09-11)
   ----------------------------------------------------------------------------
   aureum-seo-performance.php dequeues wp-block-library on pages without blocks
   (products, archives, most templates). That stylesheet was the ONLY place
   .screen-reader-text was defined, so on every product page the assistive text
   rendered visibly: "Skip to content" at the top-left, "Price range: $22.50
   through $37.00" glued onto the price, "BPC-157 quantity" beside the qty box.
   A theme must never depend on a core stylesheet it also removes. This is the
   WordPress-standard rule, verbatim, plus the focus reveal for the skip link.
   ============================================================================ */
.screen-reader-text {
    border: 0;
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
    word-break: normal !important;
}
.screen-reader-text:focus {
    background-color: var(--au-ink);
    color: var(--au-bone);
    clip-path: none;
    display: block;
    font-size: 0.9rem;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
}

/* ============================================================================
   CONSOLIDATED FROM mu-plugins  (2026-09-11)  — wave 2 of the mu-plugin diet
   ----------------------------------------------------------------------------
   aureum-ui-polish.php         -> the rules below that are still live
   aureum-cart-notice-polish.php-> the :empty rule
   zzz-aureum-zero-gap-nuclear  -> NOT carried over: all 30 classes it targeted
                                   (.aureum-hero, .aureum-hero-v3/v4, .au-v4-*,
                                   .aureum-marquee …) belong to the v5/v6
                                   homepage and appear on no page of v7. 9KB of
                                   dead "brute-force" CSS injected on every view.
   Everything that was still doing work now lives with the theme, so the site
   no longer depends on three separate must-use files firing on every request
   to look the way it looks.
   ============================================================================ */

/* Unified gold focus ring (a11y + consistency) — from aureum-ui-polish */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, [tabindex]:focus-visible, .button:focus-visible {
    outline: 2px solid var(--au-gold) !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 4px rgba(184, 150, 46, .18) !important;
}

/* Respect reduced motion — from aureum-ui-polish */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
        scroll-behavior: auto !important;
    }
}

/* Card hover: neutral ink shadow, not a gold glow — from aureum-ui-polish.
   (.aureum-card / .aureum-product-card / .aureum-card-atc were dead selectors.) */
.au-card:hover {
    box-shadow: 0 8px 24px rgba(26, 24, 22, .10) !important;
    transform: translateY(-4px) !important;
}

/* Empty WooCommerce notice wrappers must not reserve space — from aureum-cart-notice-polish */
.woocommerce-message:empty, .woocommerce-info:empty, .woocommerce-error:empty,
.woocommerce-notices-wrapper:empty, .wc-block-components-notice-banner:empty {
    display: none !important;
}
