/* ==========================================================================
   BT REVAMP LAYER  v1.0.0
   Additive only. Loads AFTER bt-style. Remove this file + its enqueue to revert.
   Purpose: contrast rhythm, typographic drama, cinematic hero, reserved gold.
   ========================================================================== */

:root{
  /* deepen the dark end so we have somewhere to go */
  --bt-ink:      #150C22;
  --bt-plum:     #2E1A47;
  --bt-gold:     #C9A227;
  --bt-gold-lift:#DFBB4B;
  --bt-ivory:    #FFFDF8;
  --bt-warm:     #F7F2E9;
  --bt-hair-dk:  1px solid rgba(255,253,248,.16);
  --bt-ease:     cubic-bezier(.22,.61,.36,1);
}

/* --------------------------------------------------------------------------
   1. FILM GRAIN  (makes it read as shot, not generated)
   -------------------------------------------------------------------------- */
body::after{
  content:""; position:fixed; inset:0; z-index:9998; pointer-events:none; opacity:.12;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
  mix-blend-mode:overlay;
}

/* --------------------------------------------------------------------------
   2. CONTRAST RHYTHM
   The old page was cream on cream top to bottom. Alternate the bands so each
   section lands instead of blurring into one continuous slab.
   -------------------------------------------------------------------------- */
.hp-pillars,
.hp-courses,
.hp-magnet   { background: var(--bt-warm) !important; }

.hp-guide,
.hp-comm     { background: var(--bt-ink) !important; color: var(--bt-ivory) !important; }

.hp-proof,
.hp-cta      { background: var(--bt-plum) !important; color: var(--bt-ivory) !important; }

.hp-episodes,
.hp-test,
.hp-quiz     { background: var(--bt-ivory) !important; }

/* text inside the newly-dark bands */
.hp-guide h1,.hp-guide h2,.hp-guide h3,.hp-guide h4,
.hp-comm  h1,.hp-comm  h2,.hp-comm  h3,.hp-comm  h4,
.hp-proof h1,.hp-proof h2,.hp-proof h3,
.hp-cta   h1,.hp-cta   h2,.hp-cta   h3{ color: var(--bt-ivory) !important; }

.hp-guide p,.hp-comm p,.hp-cta p{ color: rgba(255,253,248,.80) !important; }
.hp-guide li,.hp-comm li{ color: rgba(255,253,248,.80) !important; }

.hp-guide-creds li{ border-color: rgba(255,253,248,.18) !important; }

/* proof numbers become the gold moment */
.hp-proof-num{ color: var(--bt-gold) !important; font-variant-numeric: tabular-nums lining-nums; }
.hp-proof-lbl{ color: rgba(255,253,248,.72) !important; }
.hp-proof-stat{ border-top: var(--bt-hair-dk) !important; }

/* --------------------------------------------------------------------------
   3. TYPOGRAPHIC DRAMA
   The old scale was timid. Give the page one loud voice and one quiet one.
   -------------------------------------------------------------------------- */
.hp-warm-h1{
  font-size: clamp(2.75rem, 7.4vw, 6rem) !important;
  line-height: .96 !important;
  letter-spacing: -.02em !important;
  text-wrap: balance;
}
.hp-mast-deck{
  font-size: clamp(2.25rem, 5.6vw, 4.25rem) !important;
  line-height: 1.0 !important;
  letter-spacing: -.015em !important;
}
.hp-warm-kicker,.hp-lbl,.hp-lbl-w,.hp-ep-tag,.hp-proof-lbl{
  letter-spacing: .14em !important;
  text-transform: uppercase;
  font-size: .8125rem !important;
}
.hp-warm-sub{ font-size: 1.25rem !important; max-width: 46ch; }
.hp-pillars-header h2,.hp-episodes-header h2,.hp-courses-header h2,
.hp-comm-header h2,.hp-test-header h2{
  font-size: clamp(2rem, 4.6vw, 3.25rem) !important;
  line-height: 1.04 !important;
  letter-spacing: -.015em !important;
}

/* --------------------------------------------------------------------------
   4. CINEMATIC MASTHEAD
   -------------------------------------------------------------------------- */
.hp-mast{
  position: relative;
  background: var(--bt-ink) !important;
  color: var(--bt-ivory) !important;
  overflow: hidden;
}
.hp-mast::before{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    linear-gradient(to top, var(--bt-ink) 4%, rgba(21,12,34,.72) 46%, rgba(21,12,34,.38) 100%),
    radial-gradient(120% 80% at 18% 100%, rgba(201,162,39,.20), transparent 62%);
}
.hp-mast > *{ position:relative; z-index:1; }
.hp-mast h1,.hp-mast h2,.hp-mast .hp-mast-deck{ color: var(--bt-ivory) !important; }
.hp-mast p{ color: rgba(255,253,248,.86) !important; }
.hp-mast-photo img,.hp-mast-front img{
  filter: saturate(.9) contrast(1.05);
  border-radius: var(--radius-lg);
}
.hp-mast-paper{ background: transparent !important; box-shadow:none !important; }

/* --------------------------------------------------------------------------
   5. BUTTONS  (gold gets a glow so it reads as the one action that matters)
   -------------------------------------------------------------------------- */
.hp-btn-g,.hp-btn-p,.wp-element-button{
  box-shadow: 0 0 0 0 rgba(201,162,39,.5), 0 16px 34px -14px rgba(201,162,39,.55);
  transition: transform 160ms var(--bt-ease), box-shadow 260ms var(--bt-ease), background 260ms var(--bt-ease);
}
.hp-btn-g:hover,.hp-btn-p:hover,.wp-element-button:hover{
  transform: translateY(-2px);
  box-shadow: 0 0 0 6px rgba(201,162,39,.14), 0 20px 40px -14px rgba(201,162,39,.65);
}
/* ghost buttons on dark bands stay legible */
.hp-guide .hp-btn-o,.hp-comm .hp-btn-o,.hp-cta .hp-btn-o,
.hp-guide .hp-btn-ol,.hp-comm .hp-btn-ol,.hp-cta .hp-btn-ol{
  border-color: rgba(255,253,248,.4) !important;
  color: var(--bt-ivory) !important;
}
.hp-guide .hp-btn-o:hover,.hp-comm .hp-btn-o:hover,.hp-cta .hp-btn-o:hover{
  background: rgba(255,253,248,.08) !important;
}

/* --------------------------------------------------------------------------
   6. CARDS  (lift + real depth instead of flat outlines)
   -------------------------------------------------------------------------- */
.hp-ep-card,.hp-ccard-hero,.hp-tcard,.hp-pillar{
  transition: transform 260ms var(--bt-ease), box-shadow 260ms var(--bt-ease), border-color 260ms var(--bt-ease);
}
.hp-ep-card:hover,.hp-ccard-hero:hover,.hp-tcard:hover{
  transform: translateY(-6px);
  box-shadow: 0 30px 60px -30px rgba(21,12,34,.45);
  border-color: rgba(201,162,39,.45);
}
.hp-ep-art img{ transition: transform 520ms var(--bt-ease); }
.hp-ep-card:hover .hp-ep-art img{ transform: scale(1.05); }

/* pillars get a gold rule instead of an icon blob */
.hp-pillar{ border-top: 2px solid var(--bt-gold); padding-top: 1.5rem; }

/* --------------------------------------------------------------------------
   7. FINAL CTA  (the one gold glow moment on the page)
   -------------------------------------------------------------------------- */
.hp-cta{ position:relative; overflow:hidden; }
.hp-cta::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background: radial-gradient(70% 60% at 50% 100%, rgba(201,162,39,.22), transparent 66%);
}
.hp-cta-inner{ position:relative; z-index:1; }

/* --------------------------------------------------------------------------
   8. ACCESSIBILITY + POLISH
   -------------------------------------------------------------------------- */
::selection{ background: var(--bt-plum); color: var(--gold-200,#EBD9A3); }
:focus-visible{ outline: 3px solid var(--bt-gold); outline-offset: 3px; border-radius: 4px; }
.hp-proof-num,.hp-tier-price,.hp-ccard-price{ font-variant-numeric: tabular-nums lining-nums; }
h1,h2,h3{ text-wrap: balance; }
p{ text-wrap: pretty; }

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{ animation-duration:.01ms !important; transition-duration:.01ms !important; }
}

/* --------------------------------------------------------------------------
   9. INTERIOR PAGES  (same rhythm applied to premium templates)
   -------------------------------------------------------------------------- */
.bt-premium-hero,.premium-hero{
  background: var(--bt-ink) !important; color: var(--bt-ivory) !important;
  position: relative; overflow: hidden;
}
.bt-premium-hero::before,.premium-hero::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background: radial-gradient(120% 80% at 18% 100%, rgba(201,162,39,.18), transparent 62%);
}
.bt-premium-hero h1,.premium-hero h1{ color: var(--bt-ivory) !important;
  font-size: clamp(2.5rem, 6.4vw, 5rem) !important; line-height:1.0 !important; letter-spacing:-.02em !important; }
.bt-premium-hero p,.premium-hero p{ color: rgba(255,253,248,.86) !important; }

/* ==========================================================================
   10. SPECIFICITY REPAIR  (theme ships an inline <style> block that loads after
   this file, so dark-band text needs body-scoped selectors to win)
   ========================================================================== */
body .hp-guide h1, body .hp-guide h2, body .hp-guide h3, body .hp-guide h4,
body .hp-comm  h1, body .hp-comm  h2, body .hp-comm  h3, body .hp-comm  h4,
body .hp-proof h1, body .hp-proof h2, body .hp-proof h3,
body .hp-cta   h1, body .hp-cta   h2, body .hp-cta   h3{
  color: var(--bt-ivory) !important;
  -webkit-text-fill-color: var(--bt-ivory) !important;
  background: none !important;
}

body .hp-guide p, body .hp-comm p, body .hp-cta p{ color: rgba(255,253,248,.84) !important; }

/* credential pills: dark translucent chip, not a white chip with white text */
body .hp-guide-creds li{
  background: rgba(255,253,248,.10) !important;
  color: var(--bt-ivory) !important;
  border: 1px solid rgba(255,253,248,.22) !important;
}

/* outline buttons on dark bands */
body .hp-guide .hp-btn-o,  body .hp-comm .hp-btn-o,  body .hp-cta .hp-btn-o,
body .hp-guide .hp-btn-ol, body .hp-comm .hp-btn-ol, body .hp-cta .hp-btn-ol{
  color: var(--bt-ivory) !important;
  border-color: rgba(255,253,248,.45) !important;
  background: transparent !important;
}
body .hp-guide .hp-btn-o:hover, body .hp-comm .hp-btn-o:hover, body .hp-cta .hp-btn-o:hover{
  background: rgba(255,253,248,.10) !important;
}

/* small print / labels on dark bands */
body .hp-guide small, body .hp-comm small, body .hp-cta small,
body .hp-guide .caption, body .hp-comm .caption{ color: rgba(255,253,248,.66) !important; }

/* membership tier cards sit on the dark community band */
body .hp-comm .hp-tier-price, body .hp-comm .hp-tier-features li{ color: var(--bt-ivory) !important; }
body .hp-comm .hp-tier-features li{ border-color: rgba(255,253,248,.16) !important; }

/* ==========================================================================
   11. OUTLINE BUTTON REPAIR  (theme sets plum-700 with high specificity)
   ========================================================================== */
body .hp-guide a.hp-btn.hp-btn-o,  body .hp-comm a.hp-btn.hp-btn-o,  body .hp-cta a.hp-btn.hp-btn-o,
body .hp-guide a.hp-btn.hp-btn-ol, body .hp-comm a.hp-btn.hp-btn-ol, body .hp-cta a.hp-btn.hp-btn-ol,
body .hp-guide .hp-btn-o.wp-element-button, body .hp-comm .hp-btn-o.wp-element-button,
body .hp-cta .hp-btn-o.wp-element-button{
  color: var(--bt-ivory) !important;
  -webkit-text-fill-color: var(--bt-ivory) !important;
  border: 1px solid rgba(255,253,248,.5) !important;
  background: transparent !important;
}
body .hp-guide a.hp-btn.hp-btn-o:hover, body .hp-comm a.hp-btn.hp-btn-o:hover, body .hp-cta a.hp-btn.hp-btn-o:hover{
  background: rgba(255,253,248,.12) !important;
  border-color: var(--bt-gold) !important;
}

/* ==========================================================================
   12. NAVIGATION
   Header ships a dark plum background but inherits charcoal text, so every
   link was dark-on-dark. Force the light treatment and give it a gold hover.
   ========================================================================== */
body .site-header,
body header.site-header{
  color: var(--bt-ivory) !important;
}
body .site-header a,
body .site-header .site-nav a,
body .site-header nav a,
body .site-header li > a{
  color: rgba(255,253,248,.88) !important;
  -webkit-text-fill-color: rgba(255,253,248,.88) !important;
  transition: color 140ms var(--bt-ease) !important;
}
body .site-header a:hover,
body .site-header .site-nav a:hover,
body .site-header li > a:hover{
  color: var(--bt-gold) !important;
  -webkit-text-fill-color: var(--bt-gold) !important;
}
/* the one gold action in the bar keeps its dark label */
body .site-header .hp-btn-g,
body .site-header .btn-gold,
body .site-header a.hp-btn-g{
  color: var(--bt-ink) !important;
  -webkit-text-fill-color: var(--bt-ink) !important;
}
/* dropdown panels */
body .site-header ul ul,
body .site-header .sub-menu{
  background: rgba(21,12,34,.98) !important;
  border: 1px solid rgba(255,253,248,.14) !important;
}
body .site-header .sub-menu a{ color: rgba(255,253,248,.86) !important; }
/* icons (search, cart) */
body .site-header svg{ color: rgba(255,253,248,.88) !important; fill: currentColor !important; }
body .site-header .cart-count,
body .site-header .count{ color: var(--bt-ivory) !important; }

/* mobile drawer */
body .mobile-menu, body .site-header .mobile-nav, body .menu-drawer{
  background: rgba(21,12,34,.99) !important;
}
body .mobile-menu a, body .menu-drawer a{ color: rgba(255,253,248,.9) !important; }

/* keyboard focus stays visible on the dark bar */
body .site-header a:focus-visible{ outline: 3px solid var(--bt-gold) !important; outline-offset: 2px; }

/* ==========================================================================
   13. PALETTE CORRECTION
   v1-v4 made too many bands plum, so the page read as "a purple website".
   Premium reads near-black + one warm light + gold as the only chroma.
   Darks go almost neutral; purple survives only as a faint undertone.
   ========================================================================== */
:root{
  --bt-ink:  #1A0E2E;   /* near-black, barely violet */
  --bt-plum: #241338;   /* second dark step, still almost neutral */
  --bt-warm: #F7F2E9;
}

/* rebalance: fewer dark bands, stronger alternation */
body .hp-proof{ background: var(--bt-ink) !important; }
body .hp-cta{   background: var(--bt-ink) !important; }
body .hp-comm{  background: var(--bt-plum) !important; }
body .hp-guide{ background: var(--bt-ink) !important; }

/* light bands stay genuinely light so the rhythm is unmistakable */
body .hp-pillars, body .hp-courses, body .hp-magnet{ background: var(--bt-warm) !important; }
body .hp-episodes, body .hp-test, body .hp-quiz{ background: var(--bt-ivory) !important; }

/* strip leftover purple washes from cards sitting on dark bands */
body .hp-comm .hp-tier,
body .hp-comm [class*="tier"]{
  background: rgba(255,253,248,.045) !important;
  border: 1px solid rgba(255,253,248,.14) !important;
}
body .hp-guide .hp-btn-p,
body .hp-comm .hp-btn-p{
  background: var(--bt-gold) !important;
  color: var(--bt-ink) !important;
  -webkit-text-fill-color: var(--bt-ink) !important;
}

/* masthead matches the new ink */
body .hp-mast{ background: var(--bt-ink) !important; }
body .hp-mast::before{
  background:
    linear-gradient(to top, var(--bt-ink) 4%, rgba(26,14,46,.72) 46%, rgba(26,14,46,.36) 100%),
    radial-gradient(120% 80% at 18% 100%, rgba(201,162,39,.22), transparent 62%) !important;
}

/* gold is the only saturated colour left, so let it carry the eye */
body .hp-proof-num{ color: var(--bt-gold) !important; }
body .hp-lbl, body .hp-lbl-w, body .hp-warm-kicker{ color: var(--bt-gold) !important; }

/* ==========================================================================
   14. DARK-BAND TEXT, BULLETPROOF
   The theme's inline <style> ties on specificity and loads later, so it wins.
   These selectors add a class step to break the tie for good.
   ========================================================================== */
body .hp .hp-cta h1,   body .hp .hp-cta h2,   body .hp .hp-cta h3,
body .hp .hp-cta .hp-cta-inner h1, body .hp .hp-cta .hp-cta-inner h2, body .hp .hp-cta .hp-cta-inner h3,
body .hp .hp-guide h1, body .hp .hp-guide h2, body .hp .hp-guide h3,
body .hp .hp-comm h1,  body .hp .hp-comm h2,  body .hp .hp-comm h3,
body .hp .hp-proof h1, body .hp .hp-proof h2, body .hp .hp-proof h3,
body .hp .hp-mast h1,  body .hp .hp-mast h2,  body .hp .hp-mast h3{
  color: var(--bt-ivory) !important;
  -webkit-text-fill-color: var(--bt-ivory) !important;
  background-image: none !important;
}

body .hp .hp-cta p,   body .hp .hp-cta .hp-cta-inner p,
body .hp .hp-guide p, body .hp .hp-comm p, body .hp .hp-proof p, body .hp .hp-mast p{
  color: rgba(255,253,248,.84) !important;
  -webkit-text-fill-color: rgba(255,253,248,.84) !important;
}

body .hp .hp-cta .hp-lbl,  body .hp .hp-cta .hp-lbl-w,
body .hp .hp-comm .hp-lbl, body .hp .hp-proof .hp-lbl,
body .hp .hp-guide .hp-lbl{ color: var(--bt-gold) !important; -webkit-text-fill-color: var(--bt-gold) !important; }

/* divider rules on dark bands */
body .hp .hp-cta .hp-div, body .hp .hp-guide .hp-div,
body .hp .hp-comm .hp-div, body .hp .hp-proof .hp-div{ background: rgba(255,253,248,.18) !important; }

/* ==========================================================================
   15. GOLD BUTTON LABELS
   Gold is a light surface; white labels on it fail AA. Dark ink labels pass
   and read more premium besides.
   ========================================================================== */
body .hp-btn-g, body a.hp-btn-g, body .hp .hp-btn-g,
body .btn-gold, body .hp-magnet .hp-btn-g, body .hp-quiz .hp-btn-g{
  color: var(--bt-ink) !important;
  -webkit-text-fill-color: var(--bt-ink) !important;
  font-weight: 700 !important;
}
body .hp-btn-g:hover, body a.hp-btn-g:hover{
  background: var(--bt-gold-lift) !important;
  color: var(--bt-ink) !important;
  -webkit-text-fill-color: var(--bt-ink) !important;
}

/* ==========================================================================
   16. INTERIOR PAGE PARITY
   Same rhythm + legibility rules for the premium templates so the site does
   not change personality when you leave the homepage.
   ========================================================================== */
body .premium-hero, body .bt-premium-hero,
body .page-hero, body .bt-page-hero{
  background: var(--bt-ink) !important;
  color: var(--bt-ivory) !important;
}
body .premium-hero h1, body .bt-premium-hero h1, body .page-hero h1, body .bt-page-hero h1,
body .premium-hero h2, body .bt-premium-hero h2{
  color: var(--bt-ivory) !important; -webkit-text-fill-color: var(--bt-ivory) !important;
}
body .premium-hero p, body .bt-premium-hero p, body .page-hero p, body .bt-page-hero p{
  color: rgba(255,253,248,.86) !important; -webkit-text-fill-color: rgba(255,253,248,.86) !important;
}

/* ==========================================================================
   17. GLOBAL TEXT ACCESSIBILITY (pre-existing theme issues, site-wide)
   These failed AA before this project started. Fixing here so every page,
   including the footer and newsletter block, is compliant.
   ========================================================================== */

/* gold links on light backgrounds were 2.4-2.8:1 */
/* footer sits on DARK, so utility links must be light, not dark gold */
body .site-footer a, body .footer-links a,
body a.bt-manage-cookies, body .site-footer a[href*="privacy"],
body .site-footer a[href*="terms"]{
  color: rgba(255,253,248,.82) !important;
  -webkit-text-fill-color: rgba(255,253,248,.82) !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}
body .site-footer a:hover, body .footer-links a:hover, body a.bt-manage-cookies:hover{
  color: var(--bt-gold) !important; -webkit-text-fill-color: var(--bt-gold) !important;
}
/* gold links only where the background really is light */
body .newsletter a, body .nl-fine a, body a.privacy-link{
  color: var(--bt-gold-link) !important;
  text-decoration: underline; text-underline-offset: 2px;
}

/* fine print was 3.65:1 */
body .nl-fine, body .newsletter small, body .newsletter .fine,
body .site-footer small{
  color: rgba(22,18,28,.72) !important;
}

/* the byline under the host name */
body .abt-hero-role, body .hp-guide-role, body .host-byline{
  color: rgba(255,253,248,.80) !important;
}

/* mini-cart drawer text */
body .widget_shopping_cart .empty,
body .woocommerce-mini-cart__empty-message{ color: rgba(22,18,28,.75) !important; }
body .cart-drawer h2, body .widget_shopping_cart_content h2,
body #site-cart h2{ color: var(--bt-ink) !important; }

/* ==========================================================================
   18. GLASS NAVIGATION
   Transparent over the hero, frosting in as you scroll. The theme already
   toggles a .scrolled class on .site-header, so we style both states.
   ========================================================================== */
body .site-header,
body header.site-header{
  background: rgba(26,14,46,.78) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.7) !important;
  backdrop-filter: blur(18px) saturate(1.7) !important;
  border-bottom: 1px solid rgba(255,253,248,.10) !important;
  box-shadow: none !important;
  transition: background .3s var(--bt-ease),
              backdrop-filter .3s var(--bt-ease),
              border-color .3s var(--bt-ease),
              box-shadow .3s var(--bt-ease) !important;
}

/* once scrolled, frost harder so content passing underneath stays readable */
body .site-header.scrolled,
body header.site-header.scrolled{
  background: rgba(26,14,46,.90) !important;
  -webkit-backdrop-filter: blur(26px) saturate(1.8) !important;
  backdrop-filter: blur(26px) saturate(1.8) !important;
  border-bottom-color: rgba(255,253,248,.16) !important;
  box-shadow: 0 12px 40px -20px rgba(0,0,0,.8) !important;
}

/* a hairline of gold light along the bottom edge, the premium tell */
body .site-header::after{
  content:""; position:absolute; left:0; right:0; bottom:-1px; height:1px;
  background: linear-gradient(90deg, transparent, rgba(201,162,39,.55), transparent);
  opacity:0; transition: opacity .3s var(--bt-ease); pointer-events:none;
}
body .site-header.scrolled::after{ opacity:1; }
body .site-header{ position: sticky; }

/* glass dropdowns to match */
body .site-header ul ul,
body .site-header .sub-menu{
  background: rgba(26,14,46,.82) !important;
  -webkit-backdrop-filter: blur(22px) saturate(1.7) !important;
  backdrop-filter: blur(22px) saturate(1.7) !important;
  border: 1px solid rgba(255,253,248,.14) !important;
  box-shadow: 0 24px 60px -24px rgba(0,0,0,.85) !important;
}

/* the gold pill in the bar gets a soft halo so it floats on the glass */
body .site-header .hp-btn-g,
body .site-header a.hp-btn-g,
body .site-header .btn-gold{
  box-shadow: 0 10px 26px -10px rgba(201,162,39,.6) !important;
}

/* mobile drawer, frosted rather than flat */
body .mobile-menu, body .menu-drawer, body .site-header .mobile-nav{
  background: rgba(26,14,46,.88) !important;
  -webkit-backdrop-filter: blur(24px) saturate(1.6) !important;
  backdrop-filter: blur(24px) saturate(1.6) !important;
}

/* browsers without backdrop-filter get a solid bar instead of unreadable glass */
@supports not (backdrop-filter: blur(1px)){
  body .site-header, body header.site-header{ background: rgba(26,14,46,.94) !important; }
  body .site-header ul ul, body .site-header .sub-menu{ background: rgba(26,14,46,.97) !important; }
}

/* ==========================================================================
   19. UTILITY TEXT LEGIBILITY (theme defaults that failed AA)
   ========================================================================== */
/* episode duration / meta was light violet on white */
body .epp-ep-dur, body .epp-ep-meta, body .epp-ep-date,
body .hp-ep-meta, body .ep-meta{
  color: var(--bt-text-soft) !important;
  -webkit-text-fill-color: var(--bt-text-soft) !important;
  font-variant-numeric: tabular-nums lining-nums;
}
/* eyebrow inside the dark nav dropdown stays gold (it is on dark) */
body .bt-nav-featured-ep__eyebrow{ color: var(--bt-gold) !important; }

/* ==========================================================================
   20. CONSENT / LEGAL MICROCOPY
   11px fine print sat at 3.65:1 and its links at 2.79:1. Legal text is the
   text most likely to be read by someone who needs it to be readable.
   ========================================================================== */
body .bt-consent-text{
  color: rgba(22,18,28,.80) !important;
  -webkit-text-fill-color: rgba(22,18,28,.80) !important;
}
body .bt-consent-text a{
  color: var(--bt-gold-link) !important;
  -webkit-text-fill-color: var(--bt-gold-link) !important;
  text-decoration: underline; text-underline-offset: 2px;
}
/* cookie + legal bar links: gold on dark is fine, gold on light is not */
body .bt-cookie-link{ color: var(--bt-gold) !important; }
body .bt-legal-bar__nav a{
  color: rgba(255,253,248,.82) !important;
  -webkit-text-fill-color: rgba(255,253,248,.82) !important;
}
body .bt-legal-bar__nav a:hover{ color: var(--bt-gold) !important; }
/* exit-intent card sits on a light surface */
body .bt-exit-card .bt-consent-text{ color: rgba(22,18,28,.80) !important; }

/* ==========================================================================
   21. FORM STEP INDICATORS + SEARCH PLACEHOLDER
   ========================================================================== */
body .ctp-step, body .form-step, body [class*="step-indicator"],
body .bt-form-step{
  color: var(--bt-text-soft) !important;
  -webkit-text-fill-color: var(--bt-text-soft) !important;
  font-weight: 600 !important;
}
body .bt-search-hint, body .search-hint, body .bt-search-overlay p{
  color: rgba(255,253,248,.78) !important;
}
