/* ==========================================================================
   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. SHARED NAVIGATION
   One opaque, light surface for readable links and icons in both scroll states.
   ========================================================================== */
body header.site-header,
body.bt-nav-scrolled header.site-header,
body header.site-header.scrolled{
  background:#FFFFFF!important;
  color:var(--bt-text)!important;
  border-bottom:1px solid #E2DFE6!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
body .site-header a,
body .site-header .site-nav a,
body .site-header .site-nav .nav-menu>li.menu-item>a{
  color:#251F2B!important;
  -webkit-text-fill-color:currentColor!important;
  text-shadow:none!important;
}
body .site-header .site-nav .nav-menu>li.menu-item>a:hover,
body .site-header .site-nav .nav-menu>li.menu-item>a:focus-visible{
  color:#654387!important;
}
body .site-header .site-nav .nav-menu .sub-menu{
  background:#FFFFFF!important;
  border:1px solid #E2DFE6!important;
  border-radius:6px!important;
  box-shadow:0 14px 36px rgba(37,31,43,.12)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
body .site-header .site-nav .nav-menu .sub-menu a{
  color:#251F2B!important;
  -webkit-text-fill-color:currentColor!important;
}
body .site-header .sub-menu .bt-sub-desc{color:#665D6C!important}
body .site-header .site-nav .sub-menu a:hover{background:#F3F0F6!important}
body .site-header .site-nav .sub-menu .bt-nav-featured-ep,
body .site-header .site-nav .sub-menu .bt-nav-featured-ep:hover{
  background:#251F2B!important;
  color:var(--bt-ivory)!important;
  -webkit-text-fill-color:currentColor!important;
}
body .site-header button,
body .site-header svg{color:#251F2B!important}
body .site-header svg[fill="none"]{fill:none!important}
body .site-header svg[fill="currentColor"],
body .site-header svg [fill="currentColor"]{fill:currentColor!important}
body .site-header svg[stroke="currentColor"],
body .site-header svg [stroke="currentColor"]{stroke:currentColor!important}
body .site-header .mobile-toggle:not(.is-open) span,
body .site-header .mobile-toggle:not(.is-open) span::before,
body .site-header .mobile-toggle:not(.is-open) span::after{background:#251F2B!important}
body .site-header .site-nav .nav-cta-btn{
  background:var(--bt-plum)!important;
  color:var(--bt-ivory)!important;
  -webkit-text-fill-color:currentColor!important;
  border-color:var(--bt-plum)!important;
  box-shadow:none!important;
  border-radius:4px;
}
body .site-header :is(a,button):focus-visible{
  outline:3px solid #654387!important;outline-offset:4px;
}
/* The existing mobile navigation is moved outside the header when opened. */
@media(max-width:980px){
  body .site-nav.is-mobile-open{background:#251F2B!important}
  body.bt-mobile-menu-open .mobile-toggle.is-open span{background:transparent!important}
  body.bt-mobile-menu-open .mobile-toggle.is-open span::before,
  body.bt-mobile-menu-open .mobile-toggle.is-open span::after{background:var(--bt-ivory)!important}
}

/* ==========================================================================
   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 */
body .site-footer{background:#211B2B!important}
/* Footer links remain readable on the dark surface. */
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; }

/* ==========================================================================
   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;
}

/* Shared announcement and video/newsletter invitation. */
body .announcement-bar{background:#211B2B!important;color:#F3EDF9!important}
body .announcement-bar a{color:#E4C56B!important}
body.home::after,body.page-id-150::after{content:none}
body .newsletter-cta.bt-footer-invitation{padding:56px 0;background:#F4F2F7!important;color:var(--bt-text)!important;border-top:1px solid #E2DFE6}
.bt-footer-invitation .bt-footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;width:min(1180px,calc(100% - 64px));max-width:1180px;padding:0;margin-inline:auto}
.bt-footer-invitation .bt-footer-watch{text-align:left;min-width:0}
.bt-footer-invitation .bt-footer-video{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--bt-ink);border-radius:4px;text-decoration:none}
.bt-footer-invitation .bt-footer-video img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.bt-footer-invitation .bt-footer-video::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.75));pointer-events:none}
.bt-footer-invitation .bt-footer-video__play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--bt-ivory);color:var(--bt-plum);font-size:16px}
.bt-footer-invitation .bt-footer-video__label{position:absolute;bottom:18px;left:20px;z-index:2;color:var(--bt-ivory);font:600 .85rem var(--bt-font-body)}
body .bt-footer-invitation .bt-footer-video__caption{font:500 .8rem/1.6 var(--bt-font-body);color:var(--bt-text-soft)!important;margin:12px 0 0;max-width:none}
.bt-footer-video__caption a{color:inherit;text-decoration:none}
.bt-footer-invitation .bt-footer-signup{text-align:left}
.bt-footer-invitation .bt-footer-eyebrow{font:700 .7rem/1.5 var(--bt-font-body);text-transform:uppercase;letter-spacing:.14em;color:var(--bt-violet)}
body .newsletter-cta.bt-footer-invitation h2{font:600 clamp(2.6rem,4vw,3.6rem)/1.06 var(--bt-font-display);letter-spacing:-.02em;color:var(--bt-text)!important;-webkit-text-fill-color:var(--bt-text)!important;margin:12px 0 18px}
body .newsletter-cta.bt-footer-invitation .bt-footer-signup>p{font:400 .95rem/1.8 var(--bt-font-body);color:var(--bt-text-soft)!important;margin:0 0 24px;max-width:44ch}
.bt-footer-invitation .newsletter-form{display:flex;gap:10px;padding:0;margin:0;max-width:none;background:none;border:0;border-radius:0}
.bt-footer-invitation .newsletter-form input{min-width:0;width:100%;min-height:48px;padding:12px 14px;background:white;color:var(--bt-text);border:1px solid #BFB3C7;border-radius:4px;font:.9rem var(--bt-font-body)}
.bt-footer-invitation .newsletter-form input::placeholder{color:var(--bt-text-soft);opacity:1}
.bt-footer-invitation .newsletter-form button{background:var(--bt-plum)!important;color:var(--bt-ivory)!important;border:1px solid var(--bt-plum);border-radius:4px;box-shadow:none;padding:12px 22px;font:700 .85rem var(--bt-font-body)}
.bt-footer-invitation :is(a,button,input):focus-visible{outline:3px solid var(--bt-violet);outline-offset:4px}
.bt-video-dialog{border:0;padding:56px 20px 20px;background:var(--bt-ink);width:min(1080px,calc(100vw - 32px));max-width:none;border-radius:6px;color:var(--bt-ivory);overflow:visible}
.bt-video-dialog::backdrop{background:rgba(15,12,20,.85)}
.bt-video-dialog__close{position:absolute;right:12px;top:6px;width:44px;height:44px;background:transparent;color:var(--bt-ivory);border:0;font-size:30px;cursor:pointer}
.bt-video-dialog__frame{aspect-ratio:16/9;width:100%;background:#000}
.bt-video-dialog iframe{display:block;width:100%;height:100%;border:0}
@media(max-width:760px){
 .bt-footer-invitation .bt-footer-grid{grid-template-columns:1fr;gap:32px;width:calc(100% - 40px)}
 body .newsletter-cta.bt-footer-invitation{padding:40px 0}
 .bt-footer-invitation .bt-footer-signup{grid-row:1}
 .bt-footer-invitation .newsletter-form{flex-direction:column}
 .bt-footer-invitation .newsletter-form button{min-height:48px}
}
