/* ============================================================
   BUSINESS TRANSFORMATION: gradient cards by default
   Maroon red to ink blue, filled without the mouse; hover brightens.
   The gold / yellow accents (numbers, lines, labels, gauge) stay gold.
   Palette otherwise: cream, ink blue, maroon. No pure white.
   Scoped to body.bt-page; stacked ":not(#_)" beats the older themes.
   ============================================================ */
.bt-page {
  --g-deep: linear-gradient(155deg, #7D1B2C 0%, #4A1A4A 50%, #14275F 100%);
  --g-bright: linear-gradient(155deg, #9A2540 0%, #5E2262 50%, #1E3A8A 100%);
  --g-cream: #F7F2EA;
  --g-gold: #d9ad4c;
}

/* ---------- 1. headline marquee: bold maroon-to-blue gradient text ---------- */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-marquee__group span:not(.is-gold) {
  font-weight: 700 !important;
  background-image: linear-gradient(90deg, #B0192E 0%, #7D1B2C 30%, #2F4FA8 70%, #1E3A8A 100%) !important;
  background-size: 100% 100% !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  color: transparent !important; -webkit-text-fill-color: transparent !important;
  padding-right: 0.06em;
}
/* the gold words stay gold (a little deeper so they read on cream) */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-marquee__group span.is-gold {
  font-weight: 700 !important;
  background-image: linear-gradient(90deg, #8a6210 0%, #d9ad4c 50%, #8a6210 100%) !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  color: transparent !important; -webkit-text-fill-color: transparent !important;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-marquee__group i { color: #d9ad4c !important; -webkit-text-fill-color: #d9ad4c !important; opacity: 1; }

/* ---------- headings a notch bolder ---------- */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-h2 { font-weight: 700 !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-body, html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-section-intro { font-weight: 500 !important; }

/* ---------- 2. shared dark gradient card (offers, challenge, charts) ---------- */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) :is(.bt-offer, .bt-challenge__card, .bt-chart) {
  background: var(--g-deep) !important;
  border: 1px solid rgba(247, 242, 234, 0.2) !important;
  border-top: 1px solid rgba(247, 242, 234, 0.2) !important;
  box-shadow: 0 18px 40px rgba(11, 31, 58, 0.3), 0 4px 12px rgba(125, 27, 44, 0.22) !important;
  transition: transform .45s cubic-bezier(0.16, 1, 0.3, 1), box-shadow .45s ease, background .45s ease, border-color .45s ease !important;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) :is(.bt-offer, .bt-challenge__card, .bt-chart):is(:hover, :focus-within, .is-touched) {
  background: var(--g-bright) !important;
  transform: translateY(-6px);
  border-color: rgba(247, 242, 234, 0.45) !important;
  box-shadow: 0 28px 54px rgba(30, 58, 138, 0.4), 0 10px 26px rgba(125, 27, 44, 0.32) !important;
}
/* gold underline visible by default */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-offer::after { transform: scaleX(1) !important; height: 3px !important; }

/* light text on the dark cards (kept on hover) */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) :is(.bt-offer__title, .bt-offer__text, .bt-offer__cat, .bt-offer__outcome, .bt-offer__num small),
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) :is(.bt-offer, .bt-challenge__card, .bt-chart):is(:hover, :focus-within, .is-touched) :is(.bt-offer__title, .bt-offer__text, .bt-offer__cat, .bt-offer__outcome, .bt-offer__num small) {
  color: var(--g-cream) !important; -webkit-text-fill-color: var(--g-cream) !important;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-offer__title { font-weight: 700 !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-offer__text { font-weight: 400 !important; color: rgba(247, 242, 234, 0.9) !important; -webkit-text-fill-color: rgba(247, 242, 234, 0.9) !important; }
/* gold items stay gold, also on hover */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) :is(.bt-offer__num b, .bt-offer__outcome span),
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-offer:is(:hover, :focus-within, .is-touched) :is(.bt-offer__num b, .bt-offer__outcome span) {
  background: none !important; border-color: transparent !important; box-shadow: none !important;
  color: #d9ad4c !important; -webkit-text-fill-color: #d9ad4c !important;
}

/* ---------- 3. challenge section: fuller layout ---------- */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge { position: relative; overflow: hidden; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge::before, html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge::after {
  content: ""; position: absolute; z-index: 0; border-radius: 50%; pointer-events: none; opacity: 1 !important;
  filter: blur(70px);
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge::before { width: 440px; height: 440px; left: -140px; top: -80px; background: rgba(125, 27, 44, 0.22); animation: btOrbA 14s ease-in-out infinite alternate; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge::after { width: 520px; height: 520px; right: -160px; bottom: -160px; background: rgba(30, 58, 138, 0.24); animation: btOrbB 17s ease-in-out infinite alternate; }
@keyframes btOrbA { to { transform: translate(80px, 70px) scale(1.12); } }
@keyframes btOrbB { to { transform: translate(-90px, -60px) scale(1.1); } }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__inner { grid-template-columns: minmax(0, 1fr) !important; align-items: start !important; gap: clamp(2rem, 4vw, 3.2rem) !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__head { max-width: 820px; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__board { position: relative; display: grid; gap: 1.6rem; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__lead {
  margin: 0; font-size: clamp(1.15rem, 1.8vw, 1.45rem) !important; font-weight: 600 !important; line-height: 1.5;
  color: #0B1F3A !important; -webkit-text-fill-color: #0B1F3A !important;
  padding-left: 1rem; border-left: 4px solid #d9ad4c;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__list { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.6rem; padding: 0; margin: 0; list-style: none; }
/* line that connects the three cards */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__list::before {
  content: ""; position: absolute; left: 6%; right: 6%; top: 50%; height: 3px; z-index: 0; border-radius: 3px;
  background: linear-gradient(90deg, #7D1B2C, #d9ad4c 50%, #1E3A8A);
  opacity: 0.8;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__card {
  position: relative; z-index: 1;
  display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 0.7rem;
  min-height: 250px; padding: 2rem 1.7rem !important; border-radius: 20px !important;
  overflow: hidden;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__card > span {
  font-family: 'Cormorant Garamond', Georgia, serif !important; font-style: italic; font-weight: 700 !important;
  font-size: 3.6rem !important; line-height: 1; color: #d9ad4c !important; -webkit-text-fill-color: #d9ad4c !important; min-width: 0 !important;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__ic {
  width: 46px; height: 46px; padding: 11px; border-radius: 14px;
  color: var(--g-cream); border: 1.5px solid rgba(247, 242, 234, 0.5); background: rgba(247, 242, 234, 0.08);
  transition: transform .4s ease, background .4s ease;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__card:hover .bt-challenge__ic { transform: rotate(-6deg) scale(1.1); background: rgba(247, 242, 234, 0.16); }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__card > b {
  font-family: 'Cormorant Garamond', Georgia, serif !important; font-size: 2rem !important; font-weight: 700 !important; line-height: 1.15;
  color: var(--g-cream) !important; -webkit-text-fill-color: var(--g-cream) !important;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__card > em {
  font-style: normal; font-family: 'Inter', sans-serif; font-size: 1rem; font-weight: 500;
  color: rgba(247, 242, 234, 0.88); -webkit-text-fill-color: rgba(247, 242, 234, 0.88);
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__card::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: linear-gradient(90deg, #a87a16, #f0b72a);
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__card::before { left: 1.7rem; right: 1.7rem; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__shift {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 0.8rem 1.6rem;
  margin: 0; padding: 1.4rem 2rem; border: 0 !important; border-radius: 20px;
  background: linear-gradient(90deg, #14275F 0%, #4A1A4A 50%, #7D1B2C 100%);
  box-shadow: 0 18px 40px rgba(11, 31, 58, 0.3);
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__shift .is-from { color: rgba(247, 242, 234, 0.75) !important; -webkit-text-fill-color: rgba(247, 242, 234, 0.75) !important; font-size: 12px; font-weight: 600; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__shift i { color: #d9ad4c !important; -webkit-text-fill-color: #d9ad4c !important; font-size: 22px; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__shift .is-to { color: #e8c06a !important; -webkit-text-fill-color: #e8c06a !important; font-size: 13px; font-weight: 700; }

/* ---------- 4. what improvement looks like: dark ink-blue / maroon charts ---------- */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-chart { padding: 1.9rem 1.7rem 1.7rem !important; border-radius: 20px !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-chart__label { color: #e3ad2e !important; -webkit-text-fill-color: #e3ad2e !important; font-weight: 700 !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-chart__title { color: var(--g-cream) !important; -webkit-text-fill-color: var(--g-cream) !important; font-size: 1.3rem !important; font-weight: 700 !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-chart svg text, html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-axis { fill: rgba(247, 242, 234, 0.78) !important; font-weight: 600; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-grid-lines line { stroke: rgba(247, 242, 234, 0.14) !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-line__marker { stroke: rgba(247, 242, 234, 0.4) !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-line__before { stroke: #E9A6B2 !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-line__after { stroke: #e3ad2e !important; filter: drop-shadow(0 0 6px rgba(227, 173, 46, 0.5)); }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-bar__pair i:not(.is-after) { background: linear-gradient(180deg, #E9A6B2, #B0192E) !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-bar__pair i.is-after { background: linear-gradient(180deg, #f0c35a, #a87a16) !important; box-shadow: 0 0 12px rgba(227, 173, 46, 0.35); }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-bar em, html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-legend { color: rgba(247, 242, 234, 0.85) !important; -webkit-text-fill-color: rgba(247, 242, 234, 0.85) !important; font-weight: 600; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-legend b.is-before { background: #E9A6B2 !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-legend b.is-after { background: #e3ad2e !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-gauge__track { stroke: rgba(247, 242, 234, 0.2) !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-gauge__fill { stroke: url(#btGold) !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-gauge__value span { color: rgba(247, 242, 234, 0.85) !important; -webkit-text-fill-color: rgba(247, 242, 234, 0.85) !important; font-weight: 600; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-note { font-weight: 500; }

/* ---------- 5. approach steps (dark section): filled by default, gold numbers kept ---------- */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .ink-dark .bt-steps li {
  background-image: linear-gradient(120deg, #6A1424 0%, #4A1A4A 50%, #14275F 100%) !important;
  background-size: 100% 100% !important;
  border: 1px solid rgba(247, 242, 234, 0.16) !important;
  margin-bottom: 0.6rem;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .ink-dark .bt-steps li:is(:hover, :focus-within, .is-touched) {
  background-image: linear-gradient(120deg, #B0192E 0%, #7D1B2C 30%, #2F4FA8 72%, #1E3A8A 100%) !important;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .ink-dark .bt-steps li::before,
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .ink-dark .bt-steps li:is(:hover, :focus-within, .is-touched)::before { color: #d9ad4c !important; -webkit-text-fill-color: #d9ad4c !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .ink-dark .bt-steps li:is(:hover, :focus-within, .is-touched) b { color: #f0c96d !important; -webkit-text-fill-color: #f0c96d !important; }

/* ---------- 6. "led by practitioners": stat and expertise as gradient cards ---------- */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-lead__stat {
  padding: 1.3rem 1.6rem !important; border: 1px solid rgba(247, 242, 234, 0.2) !important; border-radius: 18px;
  background: var(--g-deep); box-shadow: 0 16px 36px rgba(11, 31, 58, 0.28);
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-lead__stat b { color: #e3ad2e !important; -webkit-text-fill-color: #e3ad2e !important; background: none !important; font-weight: 700 !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-lead__stat span { color: rgba(247, 242, 234, 0.92) !important; -webkit-text-fill-color: rgba(247, 242, 234, 0.92) !important; font-weight: 600 !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-lead__expertise { gap: 0.7rem !important; }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-lead__expertise li {
  padding: 0.85rem 1rem 0.85rem 2.3rem !important; border: 1px solid rgba(247, 242, 234, 0.2) !important; border-radius: 14px;
  background: var(--g-deep); box-shadow: 0 10px 24px rgba(11, 31, 58, 0.2);
  color: var(--g-cream) !important; -webkit-text-fill-color: var(--g-cream) !important; font-weight: 600 !important;
  transition: transform .35s ease, background .35s ease, box-shadow .35s ease;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-lead__expertise li:hover { background: var(--g-bright); transform: translateY(-3px); box-shadow: 0 16px 30px rgba(30, 58, 138, 0.32); }
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-lead__expertise li::before { top: 50% !important; transform: translateY(-50%); left: 0.95rem !important; color: #d9ad4c !important; -webkit-text-fill-color: #d9ad4c !important; }

/* ---------- small screens ---------- */
@media (max-width: 900px) {
  html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__list { grid-template-columns: minmax(0, 1fr); }
  html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__list::before { display: none; }
  html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge__card { min-height: 0; }
}
@media (prefers-reduced-motion: reduce) {
  html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge::before, html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-challenge::after { animation: none; }
  html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) :is(.bt-offer, .bt-challenge__card, .bt-chart):hover { transform: none; }
}

/* fixes: gradient headings inside dark cards, gauge value, legend text */
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-offer__title, html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-offer__title * {
  background: none !important; background-image: none !important;
  color: var(--g-cream) !important; -webkit-text-fill-color: var(--g-cream) !important;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-offer:is(:hover, :focus-within, .is-touched) .bt-offer__title, html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-offer:is(:hover, :focus-within, .is-touched) .bt-offer__title * {
  color: #f0c96d !important; -webkit-text-fill-color: #f0c96d !important;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-gauge__value b {
  background: none !important; background-image: none !important;
  color: #f0c96d !important; -webkit-text-fill-color: #f0c96d !important; font-weight: 700 !important;
}
html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-legend span, html body.bt-page:not(#_):not(#_):not(#_):not(#_):not(#_) .bt-legend span * { color: rgba(247, 242, 234, 0.9) !important; -webkit-text-fill-color: rgba(247, 242, 234, 0.9) !important; }
