/* VERDANT MERIDIAN — readability & contrast (loads after all page styles) */

/* ══════════════════════════════════════════════════════════════
   BASE — never force dark ink on .page-main (breaks dark chrome)
   ══════════════════════════════════════════════════════════════ */
body.a57-store {
  color: var(--ink);
}

/* ══════════════════════════════════════════════════════════════
   DARK SURFACES — site chrome, heroes, vault bands
   ══════════════════════════════════════════════════════════════ */
.a57-ribbon,
.a57-terrace,
.a56ix-lattice,
.vm-bento,
.ev-proof,
.a57-canopy.is-home,
.a56sh-hero,
.a56ca-hero,
.a56cn-hero,
.a56co-hero,
.a56hc-hero,
.a56ct-hero,
.a56ch-hero,
.a56or-hero,
.a56os-hero,
.a56pd-hero,
.a56pd-miss,
.a56tr-beacon,
.a56ok-celebrate,
.a57pl-vault,
.a56os-miss-hero,
.a56os-pipeline-wrap,
.a56ac-portal-brand,
.a57-shop-tile.is-spotlight {
  color: var(--on-dark);
}

/* Ribbon */
.a57-ribbon,
.a57-ribbon-copy,
.a57-ribbon-inner > p,
.a57-ribbon-meta span {
  color: var(--on-dark-muted) !important;
}
.a57-ribbon-tag { color: var(--ochre) !important; }
.a57-ribbon-meta a { color: var(--on-dark) !important; opacity: 0.92 !important; }
.a57-ribbon-meta a:hover { color: var(--ochre) !important; opacity: 1 !important; }

/* Canopy nav — transparent on homepage hero */
.a57-canopy.is-home .a57-canopy-link,
.a57-canopy.is-home .a57-canopy-icon {
  color: var(--on-dark-muted) !important;
}
.a57-canopy.is-home .a57-canopy-link:hover,
.a57-canopy.is-home .a57-canopy-icon:hover {
  color: var(--on-dark) !important;
}
.a57-canopy.is-home .a57-canopy-link.is-active {
  color: var(--on-dark) !important;
}
.a57-canopy.is-home .a57-canopy-wordmark strong {
  color: var(--on-dark) !important;
}
.a57-canopy.is-home .a57-canopy-wordmark em {
  color: var(--ochre) !important;
}
.a57-canopy.is-home.is-scrolled .a57-canopy-link,
.a57-canopy.is-home.is-scrolled .a57-canopy-icon {
  color: var(--on-dark-muted) !important;
}

/* Prism homepage hero */
.vm-bento,
.vm-bento-title,
.vm-bento-badge,
.vm-ticker-track span {
  color: var(--on-dark) !important;
}
.vm-bento-lede,
.vm-bento-metrics dt,
.vm-tile-meta strong {
  color: var(--on-dark-muted) !important;
}
.vm-bento-metrics dd,
.vm-tile-meta em {
  color: var(--ochre) !important;
}
.vm-btn-line {
  color: var(--on-dark) !important;
}
.vm-btn-glow {
  color: var(--vault-deep) !important;
}

/* Proof / trust band */
.ev-proof,
.ev-proof-copy h2,
.ev-proof-list strong {
  color: var(--on-dark) !important;
}
.ev-proof-copy .ev-kicker {
  color: var(--ochre) !important;
}
.ev-proof-copy p,
.ev-proof-list p {
  color: var(--on-dark-muted) !important;
}

/* Mosaic tabs & tiles on light surface */
.ev-mosaic-bar button {
  color: var(--text-secondary) !important;
}
.ev-mosaic-bar button.is-active {
  color: var(--on-dark) !important;
}
.ev-tile-body h3 a {
  color: var(--vault) !important;
}
.ev-tile-foot strong {
  color: var(--vault-deep) !important;
}
.ev-section-head h2,
.ev-bento-copy strong {
  color: var(--vault-deep) !important;
}
.ev-kicker:not(.ev-proof-copy .ev-kicker) {
  color: var(--ochre-deep) !important;
}

/* Footer terrace */
.a57-terrace { color: var(--on-dark-muted) !important; }
.a57-terrace-crest strong { color: var(--on-dark) !important; }
.a57-terrace-crest p,
.a57-terrace-col a,
.a57-terrace-contact p,
.a57-terrace-contact a {
  color: var(--on-dark-muted) !important;
}
.a57-terrace-col h4 { color: var(--ochre) !important; }
.a57-terrace-col a:hover { color: var(--ochre) !important; }
.a57-terrace-bar,
.a57-terrace-bar span {
  color: var(--on-dark-subtle) !important;
}

/* Home lattice band */
.a56ix-lattice,
.a56ix-lattice h2,
.a56ix-lattice h3,
.a56ix-lattice p,
.a56ix-lattice a:not(.a56ix-lattice-card) {
  color: var(--on-dark) !important;
}
.a56ix-lattice .a57-kicker { color: var(--ochre) !important; }
.a56ix-lattice .a56ix-more { color: var(--ochre) !important; }
.a56ix-lattice .a56ix-more:hover { color: var(--on-dark) !important; }

/* Policy vault header */
.a57pl-vault,
.a57pl-vault h1,
.a57pl-vault .a57-kicker,
.a57pl-seal strong {
  color: var(--on-dark) !important;
}
.a57pl-vault h1 em,
.a57pl-vault .a57-kicker { color: var(--ochre) !important; }
.a57pl-vault .a57-lede { color: var(--on-dark-muted) !important; }
.a57pl-seal span:first-of-type { color: var(--ochre) !important; }
.a57pl-seal em { color: var(--on-dark-subtle) !important; opacity: 1 !important; }

/* Account portal brand panel */
.a56ac-portal-brand,
.a56ac-portal-brand h2,
.a56ac-portal-brand li span:last-child {
  color: var(--on-dark) !important;
}
.a56ac-kicker { color: var(--on-dark-subtle) !important; }
.a56ac-brand-lede { color: var(--on-dark-muted) !important; }

/* Dark hero sections — catch unstyled descendants */
.a56sh-hero,
.a56ca-hero,
.a56cn-hero,
.a56co-hero,
.a56hc-hero,
.a56ct-hero,
.a56ch-hero,
.a56or-hero,
.a56os-hero,
.a56pd-hero,
.a56tr-beacon,
.a56ok-celebrate {
  color: var(--on-dark);
}

/* Minimum contrast for faint hero secondary text */
.a56sh-kicker,
.a56ca-kicker,
.a56cn-kicker,
.a56co-kicker,
.a56hc-kicker,
.a56ct-kicker,
.a56ch-kicker,
.a56or-kicker,
.a56pd-kicker,
.a56ca-crumb,
.a56ok-kicker,
.a56tr-kicker {
  color: var(--on-dark-subtle) !important;
}

.a56sh-hero h1,
.a56ca-hero h1,
.a56cn-hero h1,
.a56co-hero h1,
.a56hc-hero h1,
.a56ct-hero h1,
.a56ch-hero h1,
.a56or-hero h1,
.a56os-hero h1,
.a56pd-hero h1,
.a56tr-beacon h1,
.a56ok-headline h1 {
  color: var(--on-dark) !important;
}

[class*="-hero"] h1 em,
.a56tr-beacon h1 em,
.a56ok-headline h1 em {
  color: #f0c96a !important;
}

.a56sh-query,
.a56cn-lede,
.a56co-lede,
.a56hc-lede,
.a56ct-lede,
.a56ch-lede,
.a56or-lede,
.a56ca-hero-copy p,
.a56hc-hero p,
.a56tr-beacon p,
.a56ok-headline p {
  color: var(--on-dark-muted) !important;
}

.a56ca-crumb a { color: var(--on-dark-muted) !important; }
.a56ca-crumb a:hover,
.a56ca-crumb [aria-current] { color: #f0c96a !important; }

/* Dark hero search inputs */
.a56sh-search input,
.a56hc-search input,
.a56ca-search input {
  color: var(--on-dark) !important;
  caret-color: var(--on-dark) !important;
}
.a56sh-search input::placeholder,
.a56hc-search input::placeholder,
.a56ca-search input::placeholder {
  color: var(--on-dark-subtle) !important;
  opacity: 1 !important;
}

/* Spotlight product tiles (dark gradient) */
.a57-shop-tile.is-spotlight,
.a57-shop-tile.is-spotlight .a57-shop-tile-body h3 a,
.a57-shop-tile.is-spotlight .a57-shop-tile-variant {
  color: var(--on-dark) !important;
}
.a57-shop-tile.is-spotlight .a57-shop-tile-aisle,
.a57-shop-tile.is-spotlight .a57-shop-tile-sku {
  color: var(--on-dark-subtle) !important;
}
.a57-shop-tile.is-spotlight .a57-shop-tile-price,
.a57-shop-tile.is-spotlight .a57-shop-tile-arrow {
  color: #f0c96a !important;
}

/* Order-status pipeline on dark wrap */
.a56os-pipeline-wrap,
.a56os-pipeline-wrap .a56os-section-title {
  color: var(--on-dark) !important;
}
.a56os-pipeline-wrap .a56os-section-title { color: #f0c96a !important; }

/* ══════════════════════════════════════════════════════════════
   LIGHT SURFACES — body copy, cards, forms, panels
   ══════════════════════════════════════════════════════════════ */
.page-main,
.page-wrap {
  color: var(--ink);
}

/* Primary readable text on light panels */
.a57-page-hero,
.a57-page-hero h1,
.a57-page-hero h2,
.a57-card,
.a57-card-body,
.a57-card-body h3,
.a57-card-body h3 a,
.a57-card-price,
.a57-card-foot,
.a57-desk,
.a57-desk h2,
.a57-desk label,
.a57-slip,
.a57-slip h2,
.a57-success-card,
.a57-success-card h2,
.a57-timeline article,
.a57-timeline article h2,
.a57-log,
.a57-log dd,
.a57-help-col,
.a57-help-col h2,
.a57-help-col h3,
.a57-faq,
.a57-faq summary,
.a57pl-page,
.a57pl-page-head h2,
.a57pl-content h3,
.a57pl-grid h4,
.a57pl-grid p,
.a57-empty-tray,
.a57-empty-tray h2,
.dash-panel,
.dash-panel h2,
.dash-panel h3,
.profile-grid,
.profile-grid dd,
.profile-item .v,
.order-list,
.order-list strong,
.a56ac-panel-head h2,
.a56ac-member-copy h1,
.a56ac-loading p,
.empty-state,
.notice,
.a57-loading,
.a57-index-panel,
.a57-index-head strong,
.a57-index-body,
.or27-entry,
.or27-entry * {
  color: var(--ink);
}

/* Secondary / muted text — minimum 4.5:1 on parchment */
.a57-lede,
.a57-shop-count,
.a57-search-note,
.a57-card-sku,
.a57-hero-facts dd,
.a57-notes-grid p,
.a57-faq p,
.a57-timeline article p,
.a57-timeline article li,
.a57-no-match,
.empty-state .sub,
.a57-empty-tray p,
.a57-section-head p,
.a57pl-page-head p,
.a57pl-content p,
.a57pl-foot,
.a57pl-foot span,
.a57pl-rail-inner a,
.a57pl-rail-inner a small,
.mini-copy,
.a57-log dt,
.profile-grid dt,
.profile-item .k,
.or27-entry-date,
.or27-day,
.a56sh-page-note,
.a56ix-strip-meta em,
.a56ix-row-meta,
.a56ix-assurance p,
.a56ca-stats span,
.a56ca-stream-head p,
.a56ca-film-label,
.a56ca-rail-copy small,
.a56ca-folio-head p,
.a56ca-film-frame span,
.a56ca-folio-tags a,
.a56ca-folio-tags span,
.a56co-stat span,
.a56cn-channel small,
.a56hc-action-copy small,
.a56or-slip .a56or-meta,
.a56or-badge + span,
.a56os-card dt,
.a56os-card dd,
.a56tr-form label,
.a56ch-summary dt,
.a56ch-summary dd,
.a56ct-line-meta {
  color: var(--text-secondary) !important;
}

.a57-kicker:not(.a57pl-vault .a57-kicker):not(.a56ix-lattice .a57-kicker),
.a57-card-aisle,
.a57-timeline span,
.a57-stop-num,
.a57-section-head .a57-kicker,
.a57pl-acc-no,
.a56ix-shelf-kicker {
  color: var(--ochre-deep) !important;
  font-weight: 700;
}

.a57-page-hero h1 em,
.a57-card-price,
.a57-hero-facts dt,
.a56ix-headline span {
  color: var(--vault) !important;
}

.a57pl-rail-inner a.is-on,
.a57pl-rail-inner a.is-on small {
  color: var(--on-dark) !important;
}
.a57pl-rail-inner a.is-on small {
  color: var(--on-dark-muted) !important;
}

/* Forms on light backgrounds */
input,
select,
textarea,
.a57-desk input,
.a57-desk textarea,
.a57-desk select,
.a57-form-narrow input,
.a57-form-narrow select,
.a57-form-narrow textarea,
.a57-pass input,
.a57-pass textarea,
.a57-pass select,
.a57-buy select,
.a57-qty input,
.a57-qty button,
.dash-panel input,
.dash-panel select,
.dash-panel textarea,
.a56ac-field input,
.a56hc-search input,
.a56cn-field input,
.a56cn-field textarea,
.a56cn-field select {
  color: var(--ink) !important;
  caret-color: var(--ink) !important;
}

.a57-folio-search input {
  color: var(--ink) !important;
  background: transparent !important;
}

::placeholder,
input::placeholder,
textarea::placeholder {
  color: var(--text-muted) !important;
  opacity: 1 !important;
}

.a57-form-narrow label,
.a57-desk label,
.dash-panel label,
.a56ac-field label,
.a56cn-field label {
  color: var(--text-secondary) !important;
}

.a56ac-field input:focus + label,
.a56ac-field input:not(:placeholder-shown) + label {
  color: var(--vault) !important;
}

/* ══════════════════════════════════════════════════════════════
   AUTH & ACCOUNT — light panels must stay dark text
   ══════════════════════════════════════════════════════════════ */
.a56ac-auth,
.a56ac-auth .auth-split-panel,
.a56ac-auth .auth-split-panel h2,
.a56ac-auth .auth-form label,
.a56ac-auth label,
#authSplitGate .auth-split-panel,
#authSplitGate .auth-split-panel h2,
#authSplitGate .auth-form label,
.auth-split-panel h2,
.auth-split-panel .lead,
.auth-form label {
  color: var(--ink) !important;
  opacity: 1 !important;
}

.a56ac-auth .auth-split-tab {
  color: var(--text-secondary) !important;
}
.a56ac-auth .auth-split-tab.is-active {
  color: var(--on-dark) !important;
}

.auth-split-tabs .auth-split-tab {
  color: rgba(255, 255, 255, 0.82) !important;
}
.auth-split-tabs .auth-split-tab.is-active {
  color: var(--ochre) !important;
}

/* Light auth pill switchers (account gate) — not the dark tab bar */
.af57-ac-auth-switch .auth-split-tab,
.af57-ac-auth-switch .af57-ac-auth-tab {
  color: var(--text-muted) !important;
}
.af57-ac-auth-switch .auth-split-tab.is-active,
.af57-ac-auth-switch .af57-ac-auth-tab.is-active {
  color: var(--on-dark) !important;
}

/* Dark checkout / cart summary panels */
.a57-pass,
.a57-pass-side,
.a57-coord-card,
.a57-gate aside {
  color: var(--on-dark) !important;
}
.a57-pass p,
.a57-pass-side p,
.a57-coord-card p,
.a57-pass label,
.a57-pass-side label {
  color: var(--on-dark-muted) !important;
}
.a57-pass h2,
.a57-pass strong,
.a57-pass-total,
.a57-coord-card h2,
.a57-coord-card strong {
  color: var(--on-dark) !important;
}
.a57-coord-card a,
.a57-pass a,
.a57-pass-side a {
  color: #f2d7a8 !important;
}

.a57-pass input,
.a57-pass textarea,
.a57-pass select,
.a57-pass-side input,
#authSplitGate input,
#authSplitGate textarea,
#authSplitGate select {
  color: var(--ink) !important;
  background: var(--paper) !important;
}

/* Dashboard nav on account (legacy sidebar only — not horizontal deck) */
.dash-nav-link:not(.af57-ac-deck-tab) {
  color: var(--text-secondary) !important;
}
.dash-nav-link:not(.af57-ac-deck-tab).is-active,
.dash-nav-link:not(.af57-ac-deck-tab):hover {
  color: var(--vault) !important;
}

/* ══════════════════════════════════════════════════════════════
   BUTTONS, CHIPS, PAGINATION, TOASTS
   ══════════════════════════════════════════════════════════════ */
.a57-btn,
.a57-btn-signal,
.a57-btn-primary,
.a57-submit,
.a56ac-submit:not(.a56ac-submit-ghost),
[class*="-btn-primary"],
.a57-spec button,
.a57-spec-label,
.pagination-num.is-active,
.pagination-btn:hover:not(.is-disabled),
.a57-chips a.is-on,
.a57-tabs button.is-active,
.a56ix-btn-primary,
.a56sh-search button,
.a56hc-search button,
.ev-mosaic-bar button.is-active {
  color: var(--on-dark) !important;
}

.a57-btn-ghost,
.a57-btn-outline,
.ts-btn-outline,
.a56ac-submit-ghost,
.a56ac-chip-link,
.pagination-btn,
.pagination-num,
.a57-chips a,
.a57-tabs button,
.a57-atrium-link,
.a57-atrium-aisle,
.a57-canopy-link,
.a57-canopy-chip {
  color: var(--ink) !important;
}

.a57-atrium-link.is-active,
.a57-atrium-aisle.is-active,
.a57-canopy-link.is-active,
.a57-canopy-chip.is-active {
  color: var(--vault-deep) !important;
}

.a57-folio-search button {
  color: var(--vault-deep) !important;
}
.a57-folio-search button:hover {
  color: var(--on-dark) !important;
}

.toast,
.toast.is-visible,
.toast.visible,
#authMessage.toast {
  color: var(--on-dark) !important;
}

/* Product / catalog badges on images */
.a57-specimen-meta,
.a57-specimen figcaption,
.a57-aisle span,
.a57-aisle i,
.a56ix-strip-num {
  color: var(--on-dark) !important;
}

/* Links on light pages */
.page-main a:not(.a57-btn):not(.a57-btn-ghost):not(.a57-btn-primary):not([class*="-btn-primary"]):not([class*="-btn-fill"]):not([class*="-btn-ghost"]):not([class*="-btn-line"]):not([class*="-btn-soft"]):not(.a57-atrium-link):not(.a57-atrium-aisle):not(.a57-chip):not(.dash-nav-link):not(.pagination-num):not(.pagination-btn):not([class*="af57-"][class*="-btn"]):not(.af57-ac-chip):not(.af57-ac-view-all):not(.af57-ac-empty-link) {
  color: var(--vault);
}
.page-main a:not(.a57-btn):not([class*="-btn-fill"]):not([class*="af57-"][class*="-btn"]):hover {
  color: var(--vault-deep);
}

/* AF57 filled buttons — light label on teal/coral (override link vault color) */
.page-main a[class*="-btn-fill"],
.page-main button[class*="-btn-fill"],
a[class*="-btn-fill"],
button[class*="-btn-fill"] {
  color: var(--on-dark) !important;
}
.page-main a[class*="-btn-fill"]:hover,
.page-main button[class*="-btn-fill"]:hover,
a[class*="-btn-fill"]:hover,
button[class*="-btn-fill"]:hover {
  color: var(--on-dark) !important;
}

/* Steps / checkout progress */
.a57-steps li.is-on span {
  color: var(--on-dark) !important;
}

/* Moss / success notices — ensure readable green */
.notice.success {
  color: #1a4d2e !important;
}

/* ══════════════════════════════════════════════════════════════
   AF57 BESPOKE PAGES — readability pass (all storefront pages)
   ══════════════════════════════════════════════════════════════ */

/* Site footer mosaic (outside .page-main) */
.a57-mosaic,
.a57-mosaic-brand strong,
.a57-mosaic-emblem span,
.a57-mosaic-bar-inner span {
  color: var(--on-dark-muted);
}
.a57-mosaic-brand strong,
.a57-mosaic-col h4 {
  color: var(--on-dark) !important;
}
.a57-mosaic-col a {
  color: var(--on-dark-muted) !important;
}
.a57-mosaic-col a:hover {
  color: var(--coral) !important;
}
.a57-mosaic-registry p,
.a57-mosaic-hours {
  color: var(--on-dark-muted) !important;
  opacity: 1 !important;
}

/* Policy horizon hero (replaces legacy .a57pl-vault) */
.a57pl-horizon,
.a57pl-horizon h1,
.a57pl-horizon .a57-kicker,
.a57pl-compass,
.a57pl-compass strong {
  color: var(--on-dark) !important;
}
.a57pl-horizon h1 em {
  color: var(--wheat) !important;
}
.a57pl-horizon .a57-lede {
  color: var(--on-dark-muted) !important;
}

/* Dark AF57 heroes — light foreground text */
.af57-sh-masthead,
.af57-hc-atrium,
.af57-cn-hero,
.af57-ct-ledger,
.af57-ch-deck,
.af57-pd-buy-dock,
.af57-pd-price-float,
.af57-or-bento-hero,
.af57-os-radar,
.af57-tr-banner,
.af57-ok-celebrate,
.af57-hf-trust-grid {
  color: var(--on-dark);
}

/* Headings on dark home bands (override global h2 { ink }) */
.af57-hf-trust-grid h2,
.af57-hf-trust-lead h2 {
  color: var(--on-dark) !important;
}

/* Homepage light field — keep ink readable over cream */
.page-home .af57-hf-brand,
.page-home .af57-hf-headline,
.page-home .af57-hf-section-head h2,
.page-home .af57-hf-hex-body strong,
.page-home .af57-hf-editorial-copy h2,
.page-home .af57-hf-vault-body h3,
.page-home .af57-hf-vault-body h3 a {
  color: var(--ink) !important;
}

.page-home .af57-hf-lede,
.page-home .af57-hf-hex-body small,
.page-home .af57-hf-editorial-copy p,
.page-home .af57-hf-metrics span {
  color: var(--text-muted, #5C7575) !important;
}

.page-home .af57-hf-btn-fill {
  color: var(--on-dark) !important;
}

.page-home .af57-hf-btn-ghost {
  color: var(--af57-teal, #0B5E5E) !important;
}

.page-home .af57-hf-trust-grid,
.page-home .af57-hf-trust-grid h2,
.page-home .af57-hf-trust-lead h2,
.page-home .af57-hf-trust-cards li strong {
  color: var(--on-dark) !important;
}

.page-home .af57-hf-trust-lead p,
.page-home .af57-hf-trust-cards li p {
  color: var(--on-dark-muted) !important;
}

.af57-sh-crumb,
.af57-sh-dek,
.af57-hc-atrium .af57-hc-sub,
.af57-hc-atrium .af57-hc-lede,
.af57-cn-hero-copy p,
.af57-or-dek,
.af57-os-radar .af57-os-meta,
.af57-tr-banner p,
.af57-tr-banner .af57-tr-dek {
  color: var(--on-dark-muted) !important;
}

/* Links on dark AF57 heroes (override .page-main a vault teal) */
.page-main .af57-sh-masthead a,
.page-main .af57-hc-atrium a:not([class*="-btn"]),
.page-main .a57pl-horizon a:not([class*="-btn"]),
.page-main .af57-cn-hero a:not([class*="-btn"]),
.page-main .af57-or-bento-hero a:not([class*="-btn"]),
.page-main .af57-tr-banner a:not([class*="-btn"]),
.page-main .af57-os-radar a:not([class*="-btn"]),
.page-main .af57-ok-celebrate a:not([class*="-btn"]) {
  color: var(--wheat) !important;
}
.page-main .af57-cn-hero a:not([class*="-btn"]):hover,
.page-main .af57-or-bento-hero a:not([class*="-btn"]):hover,
.page-main .af57-tr-banner a:not([class*="-btn"]):hover {
  color: var(--coral) !important;
}

/* Form fields on bespoke pages */
.page-main [class*="af57-"] input,
.page-main [class*="af57-"] select,
.page-main [class*="af57-"] textarea {
  color: var(--ink) !important;
  caret-color: var(--ink) !important;
}

/* Account deck tabs on light glass */
.page-account .af57-ac-deck-tab.is-active {
  color: var(--on-dark) !important;
}
.page-account .af57-ac-deck-tab:not(.is-active) {
  color: var(--text-muted) !important;
}

/* Catalog lattice — filled controls & active filters */
.page-catalog .af57-cat-hero-cta,
.page-catalog .af57-cat-search button,
.page-catalog .af57-cat-filter.is-active {
  color: var(--on-dark) !important;
}
.page-catalog .af57-cat-card-title h2,
.page-catalog .af57-cat-card-title h2 a {
  color: var(--ink) !important;
}
.page-catalog .af57-cat-card-cta,
.page-catalog .af57-cat-crumb a {
  color: var(--vault) !important;
}
.page-catalog .af57-cat-link strong {
  color: var(--ink) !important;
}

/* Help center — dark atrium & bridge */
.page-help .af57-hc-atrium .af57-hc-title,
.page-help .af57-hc-atrium h1 {
  color: var(--on-dark) !important;
}
.page-help .af57-hc-atrium .af57-hc-sub {
  color: var(--on-dark-muted) !important;
}
.page-help .af57-hc-bridge-panel h2,
.page-help .af57-hc-bridge-copy h2 {
  color: var(--on-dark) !important;
}
.page-help .af57-hc-btn-fill,
.page-help .af57-hc-btn-line {
  color: var(--on-dark) !important;
}
.page-help .af57-hc-section-head h2,
.page-help .af57-hc-library-head h2,
.page-help .af57-hc-entry-q {
  color: var(--ink) !important;
}
.page-help .af57-hc-entry-a a {
  color: var(--vault) !important;
}
.page-help .af57-hc-orbit-card {
  color: var(--hc-ink, var(--ink)) !important;
}
.page-help .af57-hc-orbit-card .af57-hc-orbit-label {
  color: var(--hc-ink, var(--ink)) !important;
}
.page-help .af57-hc-atrium .af57-hc-search-ring input {
  color: var(--on-dark) !important;
  caret-color: var(--on-dark) !important;
}
.page-help .af57-hc-atrium .af57-hc-search-ring input::placeholder {
  color: rgba(255, 255, 255, 0.45) !important;
  opacity: 1 !important;
}
.page-help .af57-hc-suggest-chip {
  color: rgba(255, 255, 255, 0.72) !important;
}
.page-help .af57-hc-suggest-chip:hover,
.page-help .af57-hc-suggest-chip.is-active {
  color: var(--on-dark) !important;
}
.page-help .af57-hc-bento-tile strong {
  color: var(--ink) !important;
}
.page-help .af57-hc-bridge-copy .af57-hc-eyebrow {
  color: var(--coral) !important;
}
.page-help .af57-hc-bridge-copy p {
  color: var(--on-dark-muted) !important;
}

/* Contact signal canvas */
.page-contact .af57-cn-hero h1 {
  color: var(--on-dark) !important;
}
.page-contact .af57-cn-hero-copy p {
  color: var(--on-dark-muted) !important;
}
.page-contact .af57-cn-compose-head h2,
.page-contact .af57-cn-success h2 {
  color: var(--ink) !important;
}
.page-contact a.af57-cn-cell:not(.is-muted) {
  color: var(--ink) !important;
}
.page-contact .af57-cn-cell--email:not(.is-muted) strong {
  color: var(--coral) !important;
}
.page-contact .af57-cn-btn-fill {
  color: var(--on-dark) !important;
}
.page-contact .af57-cn-field input,
.page-contact .af57-cn-field textarea {
  color: var(--ink) !important;
  caret-color: var(--ink) !important;
}
.page-contact .af57-cn-topic-chip {
  color: var(--text-muted) !important;
}

/* Account member prism — dark welcome pane + light auth stage */
.page-account .af57-ac-gate-welcome {
  color: var(--on-dark) !important;
}
.page-account .af57-ac-gate-welcome h1 {
  color: var(--on-dark) !important;
}
.page-account .af57-ac-gate-welcome h1 span {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}
.page-account .af57-ac-eyebrow {
  color: var(--ochre) !important;
}
.page-account .af57-ac-gate-dek,
.page-account .af57-ac-perks li {
  color: var(--on-dark-muted) !important;
  opacity: 1 !important;
}
.page-account .af57-ac-perks li span {
  color: var(--coral) !important;
}
.page-account .af57-ac-ribbon h1,
.page-account .af57-ac-panel-head h2,
.page-account .af57-ac-panel-head p,
.page-account .profile-item .v,
.page-account .af57-ac-loading p {
  color: var(--ink) !important;
}
.page-account .af57-ac-ribbon-kicker {
  color: var(--coral) !important;
}
.page-account .af57-ac-panel-head p,
.page-account .mini-copy,
.page-account .profile-item .v.mono {
  color: var(--text-muted) !important;
}
.page-account .profile-item .k,
.page-account .af57-ac-field label {
  color: var(--vault) !important;
}
.page-account .af57-ac-field input {
  color: var(--ink) !important;
  background: var(--paper) !important;
  caret-color: var(--ink) !important;
}
.page-account .af57-ac-forgot-toggle {
  color: var(--vault) !important;
}
.page-account a.af57-ac-chip:not(.af57-ac-chip-out) {
  color: var(--ink) !important;
}
.page-account a.af57-ac-view-all {
  color: var(--vault) !important;
}
.page-account .af57-ac-chip-out,
.page-account button.af57-ac-chip-out {
  color: var(--coral) !important;
}
.page-account .af57-ac-btn-fill,
.page-account button.af57-ac-btn-fill,
.page-account .af57-ac-empty-link,
.page-account .af57-ac-orders .btn-soft {
  color: var(--on-dark) !important;
}
.page-account .af57-ac-btn-line {
  color: var(--vault) !important;
}
.page-account .af57-ac-orders .order-row strong {
  color: var(--vault) !important;
}
.page-account .notice.warning {
  color: #6a5520 !important;
}

/* Cart tally deck — light lanes + dark ledger dock */
.page-cart .af57-ct-deck-head h1,
.page-cart .af57-ct-vacant-card h1,
.page-cart .af57-ct-lane-body h2,
.page-cart .af57-ct-lane-body h2 a {
  color: var(--ink) !important;
}
.page-cart .af57-ct-deck-head h1 span {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}
.page-cart .af57-ct-eyebrow {
  color: var(--coral) !important;
}
.page-cart .af57-ct-vacant-card p,
.page-cart .af57-ct-lane-variant,
.page-cart .af57-ct-lane-unit,
.page-cart .af57-ct-trust,
.page-cart .af57-ct-count {
  color: var(--text-muted) !important;
  opacity: 1 !important;
}
.page-cart .af57-ct-count strong,
.page-cart .af57-ct-lane-sku {
  color: var(--vault) !important;
}
.page-cart .af57-ct-lane-total {
  color: var(--coral) !important;
}
.page-cart .af57-ct-lane-body h2 a:hover {
  color: var(--coral) !important;
}
.page-cart .af57-ct-stepper input {
  color: var(--ink) !important;
  caret-color: var(--ink) !important;
  background: transparent !important;
}
.page-cart .af57-ct-step-btn {
  color: var(--vault) !important;
}
.page-cart .af57-ct-step-btn:hover {
  color: var(--on-dark) !important;
}
.page-cart .af57-ct-btn-fill,
.page-cart a.af57-ct-btn-fill {
  color: var(--on-dark) !important;
}
.page-cart .af57-ct-btn-line {
  color: var(--vault) !important;
}
.page-cart .af57-ct-btn-ghost {
  color: var(--ink) !important;
}
.page-cart .af57-ct-btn-ghost:hover {
  color: var(--coral) !important;
}
.page-cart .af57-ct-ledger,
.page-cart .af57-ct-breakdown dd {
  color: var(--on-dark) !important;
}
.page-cart .af57-ct-ring-label span,
.page-cart .af57-ct-breakdown dt,
.page-cart .af57-ct-ship-note,
.page-cart .af57-ct-ledger-hint {
  color: var(--on-dark-muted) !important;
  opacity: 1 !important;
}
.page-cart .af57-ct-breakdown-total dd,
.page-cart .af57-ct-ring-label strong {
  color: var(--ochre) !important;
}
.page-cart .af57-ct-ship-badge {
  color: #c8f0a0 !important;
}

/* Product packet atelier — light panels + dark buy dock */
.page-product .af57-pd-intro h1,
.page-product .af57-pd-desc-card h2,
.page-product .af57-pd-panel-title,
.page-product .af57-pd-related header h2,
.page-product .af57-pd-miss-card h1,
.page-product .af57-pd-bento-cell strong,
.page-product .af57-pd-spec-grid dd,
.page-product .af57-pd-rel-body h3,
.page-product .af57-pd-rel-body h3 a,
.page-product .af57-pd-crumb span[aria-current="page"] {
  color: var(--ink) !important;
}
.page-product .af57-pd-eyebrow,
.page-product .af57-pd-badge {
  color: var(--coral) !important;
}
.page-product .af57-pd-sku,
.page-product .af57-pd-desc-card p,
.page-product .af57-pd-bento-cell span,
.page-product .af57-pd-spec-grid dt,
.page-product .af57-pd-notes-list span,
.page-product .af57-pd-trust span,
.page-product .af57-pd-miss-card p,
.page-product .af57-pd-rel-body > span,
.page-product .af57-pd-rel-foot em {
  color: var(--text-muted) !important;
  opacity: 1 !important;
}
.page-product .af57-pd-crumb {
  color: var(--text-muted) !important;
}
.page-product .af57-pd-crumb a {
  color: var(--vault) !important;
}
.page-product .af57-pd-crumb a:hover,
.page-product .af57-pd-rel-body h3 a:hover {
  color: var(--coral) !important;
}
.page-product .af57-pd-notes-list strong {
  color: var(--vault) !important;
}
.page-product .af57-pd-rel-foot strong {
  color: var(--vault) !important;
}
.page-product .af57-pd-related header a {
  color: var(--vault) !important;
}
.page-product .af57-pd-related header a:hover {
  color: var(--coral) !important;
}
.page-product .af57-pd-tabs button.is-active {
  color: var(--on-dark) !important;
}
.page-product .af57-pd-tabs button:not(.is-active) {
  color: var(--text-muted) !important;
}
.page-product .af57-pd-btn-fill,
.page-product a.af57-pd-btn-fill,
.page-product button.af57-pd-btn-fill {
  color: var(--on-dark) !important;
}
.page-product .af57-pd-btn-line {
  color: var(--vault) !important;
}
.page-product .af57-pd-price-float,
.page-product .af57-pd-buy-dock {
  color: var(--on-dark) !important;
}
.page-product .af57-pd-price-float strong,
.page-product .af57-pd-buy-meta strong {
  color: var(--ochre) !important;
}
.page-product .af57-pd-price-float span,
.page-product .af57-pd-qty label,
.page-product .af57-pd-buy-meta span {
  color: var(--on-dark-muted) !important;
  opacity: 1 !important;
}
.page-product .af57-pd-step-btn {
  color: var(--on-dark) !important;
}
.page-product .af57-pd-buy-dock input,
.page-product .af57-pd-stepper input {
  color: var(--on-dark) !important;
  caret-color: var(--on-dark) !important;
  background: transparent !important;
}

/* Checkout consign split — light form + dark order deck */
.page-checkout .af57-ch-head h1,
.page-checkout .af57-ch-panel-head h2,
.page-checkout .af57-ch-pay-name,
.page-checkout .af57-ch-steps li.is-active {
  color: var(--ink) !important;
}
.page-checkout .af57-ch-head h1 span {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}
.page-checkout .af57-ch-eyebrow {
  color: var(--coral) !important;
}
.page-checkout .af57-ch-deck-head .af57-ch-eyebrow {
  color: var(--ochre) !important;
}
.page-checkout .af57-ch-panel-head p,
.page-checkout .af57-ch-fine,
.page-checkout .af57-ch-trust span,
.page-checkout .af57-ch-steps li:not(.is-active):not(.is-done) {
  color: var(--text-muted) !important;
  opacity: 1 !important;
}
.page-checkout .af57-ch-steps li.is-done {
  color: #2a7a4a !important;
}
.page-checkout .af57-ch-field label,
.page-checkout .af57-ch-back,
.page-checkout .af57-ch-fine a,
.page-checkout .af57-ch-panel-num {
  color: var(--vault) !important;
}
.page-checkout .af57-ch-panel.is-active .af57-ch-panel-num {
  color: var(--on-dark) !important;
}
.page-checkout .af57-ch-steps li.is-active span {
  color: var(--on-dark) !important;
}
.page-checkout .af57-ch-field input,
.page-checkout .af57-ch-field textarea {
  color: var(--ink) !important;
  caret-color: var(--ink) !important;
  background: var(--paper) !important;
}
.page-checkout .af57-ch-field input:read-only {
  background: rgba(11, 94, 94, 0.06) !important;
}
.page-checkout .af57-ch-btn-fill,
.page-checkout button.af57-ch-btn-fill {
  color: var(--on-dark) !important;
}
.page-checkout .af57-ch-alert {
  color: #b33a20 !important;
}
.page-checkout .af57-ch-deck,
.page-checkout .af57-ch-deck-head h2,
.page-checkout .af57-ch-deck-copy strong,
.page-checkout .af57-ch-deck-totals dd {
  color: var(--on-dark) !important;
}
.page-checkout .af57-ch-deck-count,
.page-checkout .af57-ch-deck-copy span,
.page-checkout .af57-ch-deck-totals dt,
.page-checkout .af57-ch-deck-note {
  color: var(--on-dark-muted) !important;
  opacity: 1 !important;
}
.page-checkout .af57-ch-deck-items em,
.page-checkout .af57-ch-deck-due dd {
  color: var(--ochre) !important;
}
.page-checkout .af57-ch-deck-badge {
  color: #c8f0a0 !important;
}

/* Order success launch canvas — dark celebrate + light receipt */
.page-order-success .af57-ok-celebrate,
.page-order-success .af57-ok-celebrate h1 {
  color: var(--on-dark) !important;
}
.page-order-success .af57-ok-celebrate h1 span {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}
.page-order-success .af57-ok-eyebrow {
  color: var(--ochre) !important;
}
.page-order-success .af57-ok-dek {
  color: var(--on-dark-muted) !important;
  opacity: 1 !important;
}
.page-order-success .af57-ok-receipt-head h2,
.page-order-success .af57-ok-bento dd,
.page-order-success .af57-ok-step strong,
.page-order-success .af57-ok-help-link strong,
.page-order-success .af57-ok-next h3 {
  color: var(--ink) !important;
}
.page-order-success .af57-ok-next h3 {
  color: var(--vault) !important;
}
.page-order-success .af57-ok-receipt-head span:first-child,
.page-order-success .af57-ok-bento dt,
.page-order-success .af57-ok-step span,
.page-order-success .af57-ok-help-link em,
.page-order-success .af57-ok-fallback {
  color: var(--text-muted) !important;
  opacity: 1 !important;
}
.page-order-success .af57-ok-bento-total dd {
  color: var(--coral) !important;
}
.page-order-success .af57-ok-badge {
  color: #2a5a2a !important;
}
.page-order-success .af57-ok-btn-fill,
.page-order-success a.af57-ok-btn-fill {
  color: var(--on-dark) !important;
}
.page-order-success .af57-ok-btn-line {
  color: var(--vault) !important;
}
.page-order-success .af57-ok-help-link > span {
  color: var(--coral) !important;
}
.page-order-success .af57-ok-step.is-active .af57-ok-step-num em {
  color: var(--on-dark) !important;
}
.page-order-success a.af57-ok-help-link {
  color: inherit !important;
}

/* Orbit cap header (inner pages) */
.a57-orbit-cap,
.a57-cap-title strong,
.a57-cap-search input {
  color: var(--ink);
}
.a57-cap-crumb {
  color: var(--coral) !important;
}
.a57-cap-tab {
  color: var(--text-muted) !important;
}
.a57-cap-tab.is-active,
.a57-cap-tab:hover {
  color: var(--meridian) !important;
}
.a57-cap-chip {
  color: var(--text-secondary) !important;
}
.a57-cap-chip-live {
  color: var(--meridian) !important;
}

/* Rail navigation */
.a57-orbit-rail,
.a57-rail-link,
.a57-rail-label {
  color: var(--on-dark-muted);
}
.a57-rail-link.is-active,
.a57-rail-link:hover {
  color: var(--on-dark) !important;
}
.a57-rail-link.is-active {
  color: var(--coral) !important;
}

/* Mobile dock */
.a57-orbit-dock,
.a57-dock-tab {
  color: var(--text-muted) !important;
}
.a57-dock-tab.is-active {
  color: var(--meridian) !important;
}
.a57-dock-tab.is-active .a57-dock-icon {
  color: var(--coral) !important;
}

/* Home horizon chrome on light field */
.af57-hz-monolith,
.af57-hz-monolith-word strong,
.af57-hz-monolith-word em,
.af57-hz-orbit-link,
.af57-hz-dock-link {
  color: var(--af57-ink, var(--ink));
}
.af57-hz-orbit-link.is-active,
.af57-hz-dock-link.is-active {
  color: var(--af57-teal, var(--meridian)) !important;
}

/* Placeholders sit above input backgrounds */
.page-main input::placeholder,
.page-main textarea::placeholder {
  color: var(--text-muted) !important;
  opacity: 1 !important;
}
