/* BahnDeutsch Challenge ۱۴۰۶ — light glass campaign */

.bd-ch,
.bd-challenge-ribbon {
  --bd-ch-bg: #eef1f8;
  --bd-ch-glass: rgba(255, 255, 255, 0.72);
  --bd-ch-glass-strong: rgba(255, 255, 255, 0.9);
  --bd-ch-stroke: rgba(255, 255, 255, 0.78);
  --bd-ch-ink: #0f172a;
  --bd-ch-muted: #64748b;
  --bd-ch-blue: #007aff;
  --bd-ch-blue-strong: #0066d6;
  --bd-ch-gold: #d4a017;
  --bd-ch-gold-soft: #ffe9a8;
  --bd-ch-shadow: 0 28px 70px rgba(15, 23, 42, 0.12), 0 8px 20px rgba(15, 23, 42, 0.06);
  --bd-ch-radius: 28px;
  color: var(--bd-ch-ink);
  font-family: var(--bd-font-body, inherit);
  -webkit-font-smoothing: antialiased;
}

.bd-challenge-ribbon {
  margin: 0 0 22px;
}

.bd-challenge-ribbon__link {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  border-radius: 22px;
  text-decoration: none;
  color: inherit;
  background:
    linear-gradient(135deg, rgba(255, 226, 140, 0.55), rgba(255, 255, 255, 0.72) 42%, rgba(0, 122, 255, 0.12));
  border: 1px solid var(--bd-ch-stroke);
  box-shadow: var(--bd-ch-shadow);
  backdrop-filter: blur(28px) saturate(170%);
  -webkit-backdrop-filter: blur(28px) saturate(170%);
  box-sizing: border-box;
}

.bd-challenge-ribbon__mark {
  flex: 0 0 auto;
  width: 56px;
  height: 56px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  font-weight: 800;
  letter-spacing: -0.04em;
  color: #7a4d00;
  background: linear-gradient(180deg, #ffe9a8, #f5c542);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.bd-challenge-ribbon__copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  flex: 1;
}

.bd-challenge-ribbon__copy strong {
  font-size: 1.05rem;
  line-height: 1.35;
  overflow-wrap: break-word;
}

.bd-challenge-ribbon__copy span {
  color: var(--bd-ch-muted);
  font-size: 0.92rem;
  line-height: 1.55;
}

.bd-challenge-ribbon__cta {
  flex: 0 0 auto;
  padding: 10px 16px;
  border-radius: 999px;
  background: var(--bd-ch-blue);
  color: #fff;
  font-weight: 700;
  font-size: 0.9rem;
}

.bd-ch {
  max-width: 1080px;
  margin: 0 auto;
  padding: 12px 16px 64px;
}

.bd-ch-hero,
.bd-ch-ticket,
.bd-ch-leagues,
.bd-ch-how,
.bd-ch-rules,
.bd-ch-champ,
.bd-ch-story {
  background: var(--bd-ch-glass);
  border: 1px solid var(--bd-ch-stroke);
  border-radius: var(--bd-ch-radius);
  box-shadow: var(--bd-ch-shadow);
  backdrop-filter: blur(36px) saturate(180%);
  -webkit-backdrop-filter: blur(36px) saturate(180%);
  padding: 28px 26px;
  margin: 0 0 22px;
}

.bd-ch-hero {
  text-align: center;
  background:
    radial-gradient(1200px 420px at 80% -10%, rgba(255, 210, 80, 0.28), transparent 55%),
    radial-gradient(900px 380px at 8% 110%, rgba(0, 122, 255, 0.16), transparent 50%),
    var(--bd-ch-glass);
}

.bd-ch-hero__kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 10px;
  color: var(--bd-ch-blue-strong);
  font-weight: 700;
}

.bd-ch-hero__kicker svg {
  color: var(--bd-ch-gold);
}

.bd-ch-hero__title {
  margin: 0 0 8px;
  font-size: clamp(1.8rem, 4vw, 2.7rem);
  letter-spacing: -0.04em;
  line-height: 1.15;
}

.bd-ch-hero__slogan {
  margin: 0 auto 14px;
  max-width: 28rem;
  font-size: clamp(1.35rem, 3.2vw, 1.75rem);
  font-weight: 800;
  color: #7a4d00;
  letter-spacing: -0.03em;
  line-height: 1.45;
}

.bd-ch-hero__lead,
.bd-ch-hero__phase {
  margin: 0 auto 10px;
  max-width: 40rem;
  color: var(--bd-ch-muted);
  line-height: 1.85;
  font-size: 1.05rem;
}

.bd-ch-hero__announce {
  margin: 0 auto 12px;
  max-width: 46rem;
  color: var(--bd-ch-ink);
  line-height: 1.8;
  font-weight: 600;
}

.bd-ch-profile {
  margin: 16px 0 0;
  padding: 18px 18px 16px;
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(255, 226, 140, 0.45), rgba(255, 255, 255, 0.9) 48%, rgba(0, 122, 255, 0.1));
  border: 1px solid rgba(212, 160, 23, 0.28);
}

.bd-ch-profile__kicker {
  margin: 0 0 4px;
  font-weight: 800;
  color: #7a4d00;
}

.bd-ch-profile h3 {
  margin: 0 0 6px;
}

.bd-ch-profile p {
  margin: 0 0 12px;
  color: var(--bd-ch-muted);
  line-height: 1.7;
}

.bd-ch-profile__gates {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0 0 14px;
  padding: 0;
}

.bd-ch-profile__gates li {
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 700;
}

.bd-ch-profile__gates li.is-on {
  background: #ecfdf3;
  color: #047857;
}

.bd-ch-profile__gates li.is-off {
  background: #fff7ed;
  color: #c2410c;
}

.bd-ch-profile__invite {
  margin: 0 0 14px;
}

.bd-ch-profile__invite-label {
  display: block;
  margin: 0 0 6px;
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--bd-ch-ink);
}

.bd-ch-profile .bd-ch-invite__row input {
  flex: 1;
  min-width: 0;
}

.bd-ch-profile .bd-ch-btn.is-primary {
  display: inline-flex;
  text-decoration: none;
}

.bd-ch-hero__prizes {
  display: grid;
  grid-template-columns: 1fr 1.18fr 1fr;
  gap: 12px;
  margin: 22px 0 20px;
  align-items: end;
}

.bd-ch-prize {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 18px 12px 16px;
  border-radius: 20px 20px 14px 14px;
  background: var(--bd-ch-glass-strong);
  border: 1px solid rgba(212, 160, 23, 0.22);
}

.bd-ch-prize strong {
  font-size: 1.35rem;
  letter-spacing: -0.03em;
}

.bd-ch-prize__sum {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  min-width: 0;
}

/* Podium: first place sits highest and heaviest, so the eye lands on 50M. */
.bd-ch-prize.is-r1 {
  background: linear-gradient(180deg, #fff6d4, #fff);
  transform: translateY(-10px);
  box-shadow: 0 18px 36px rgba(212, 160, 23, 0.18);
  border-color: rgba(212, 160, 23, 0.45);
  padding-block: 26px 22px;
  grid-column: 2;
  grid-row: 1;
}

.bd-ch-prize.is-r1 strong {
  font-size: 1.7rem;
}

.bd-ch-prize.is-r2 {
  background: linear-gradient(180deg, #eef2f7, #fff);
  grid-column: 1;
  grid-row: 1;
}

.bd-ch-prize.is-r3 {
  background: linear-gradient(180deg, #f6e6d8, #fff);
  grid-column: 3;
  grid-row: 1;
}

.bd-ch-prize__medal {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  margin-bottom: 4px;
  border-radius: 50%;
  font-weight: 800;
  font-size: 0.95rem;
  color: #7a4d00;
  background: linear-gradient(180deg, #ffe9a8, #f5c542);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.bd-ch-prize.is-r2 .bd-ch-prize__medal {
  color: #475569;
  background: linear-gradient(180deg, #f1f5f9, #cbd5e1);
}

.bd-ch-prize.is-r3 .bd-ch-prize__medal {
  color: #7c3f1d;
  background: linear-gradient(180deg, #f7dfcc, #dfae8c);
}

.bd-ch-prize__rank {
  font-size: 0.82rem;
  color: var(--bd-ch-muted);
  font-weight: 700;
}

.bd-ch-prize__unit {
  font-size: 0.82rem;
  color: var(--bd-ch-muted);
}

.bd-ch-prize__ghost {
  margin-top: 6px;
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--bd-ch-muted);
  line-height: 1.4;
}

.bd-ch-prize.is-doubled {
  box-shadow: 0 18px 36px rgba(212, 160, 23, 0.22);
}

.bd-ch-hero__pot-chip {
  margin-top: 6px;
  padding: 2px 10px;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 800;
  color: #7a4d00;
  background: linear-gradient(180deg, #ffe9a8, #f5c542);
}

/* ---- stair-step prize ladder ------------------------------------------- */

.bd-ch-ladder {
  margin: 8px auto 18px;
  max-width: 40rem;
  padding: 18px 18px 16px;
  text-align: start;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255, 248, 225, 0.92), rgba(255, 255, 255, 0.88));
  border: 1px solid rgba(212, 160, 23, 0.32);
  box-shadow: 0 12px 28px rgba(212, 160, 23, 0.1);
}

.bd-ch-ladder.is-doubled {
  background: linear-gradient(180deg, #fff4c8, #fff);
  border-color: rgba(212, 160, 23, 0.5);
}

.bd-ch-ladder.is-missed {
  background: #fff;
  border-color: rgba(15, 23, 42, 0.08);
}

.bd-ch-ladder__head h2 {
  margin: 0 0 8px;
  font-size: 1.15rem;
  letter-spacing: -0.03em;
  line-height: 1.45;
}

.bd-ch-ladder__head p {
  margin: 0;
  color: var(--bd-ch-muted);
  line-height: 1.75;
  font-size: 0.94rem;
}

.bd-ch-ladder__kicker {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 6px;
  color: #7a4d00;
  font-size: 0.82rem;
  font-weight: 800;
}

.bd-ch-ladder__meter {
  position: relative;
  height: 14px;
  margin: 16px 0 10px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.08);
  overflow: hidden;
  direction: ltr;
}

.bd-ch-ladder__fill {
  display: block;
  height: 100%;
  min-width: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, #f5c542, #007aff);
  transition: width 0.6s ease;
}

.bd-ch-ladder__fill.is-on {
  min-width: 10px;
}

.bd-ch-ladder.is-doubled .bd-ch-ladder__fill {
  background: linear-gradient(90deg, #f5c542, #d4a017);
  width: 100% !important;
}

.bd-ch-ladder__count {
  margin: 0 0 8px;
  font-size: 0.95rem;
  font-weight: 700;
}

.bd-ch-ladder__count strong {
  font-variant-numeric: tabular-nums;
  color: var(--bd-ch-ink);
}

.bd-ch-ladder__status {
  margin: 0 0 10px;
  font-weight: 700;
  line-height: 1.65;
  color: var(--bd-ch-blue-strong);
}

.bd-ch-ladder.is-doubled .bd-ch-ladder__status {
  color: #7a4d00;
}

.bd-ch-ladder.is-missed .bd-ch-ladder__status {
  color: var(--bd-ch-muted);
}

.bd-ch-ladder__notes {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 6px;
}

.bd-ch-ladder__notes li {
  display: grid;
  grid-template-columns: 8px minmax(0, 1fr);
  column-gap: 10px;
  align-items: start;
  color: var(--bd-ch-muted);
  font-size: 0.82rem;
  line-height: 1.65;
}

.bd-ch-ladder__notes li::before {
  content: "";
  width: 6px;
  height: 6px;
  margin-top: 0.55em;
  border-radius: 50%;
  background: #f5c542;
}

.bd-ch-newcomer-card {
  margin-top: 18px;
  padding: 16px 18px;
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(0, 122, 255, 0.08), rgba(255, 255, 255, 0.9));
  border: 1px solid rgba(0, 122, 255, 0.16);
}

.bd-ch-newcomer-card__kicker {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 4px;
  color: var(--bd-ch-blue-strong);
  font-size: 0.82rem;
  font-weight: 800;
}

.bd-ch-newcomer-card h3 {
  margin: 0 0 6px;
}

.bd-ch-newcomer-card p {
  margin: 0;
  color: var(--bd-ch-muted);
  line-height: 1.75;
}

.bd-ch-boost.is-newcomer {
  color: #1d4ed8;
  background: linear-gradient(180deg, #dbeafe, #93c5fd);
}

.bd-ch-boost-note.is-newcomer {
  color: #1d4ed8;
}

.bd-ch-boost-note.is-muted {
  color: var(--bd-ch-muted);
  font-weight: 600;
}

.bd-ch-chase {
  margin: 14px 0 4px;
  padding: 14px 16px;
  border-radius: 18px;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.06);
}

.bd-ch-chase__kicker {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 4px;
  color: var(--bd-ch-blue-strong);
  font-size: 0.82rem;
  font-weight: 800;
}

.bd-ch-chase p {
  margin: 0;
  line-height: 1.7;
}

.bd-ch-chase__pace {
  margin-top: 6px !important;
  color: var(--bd-ch-muted);
  font-size: 0.9rem;
}

.bd-ch-profile__chase {
  margin: 0 0 12px;
  font-weight: 700;
  color: var(--bd-ch-blue-strong);
}

.bd-ch-board__row.is-newcomer:not(.is-gold):not(.is-silver):not(.is-bronze):not(.is-course) {
  background: linear-gradient(90deg, #eff6ff, #fff);
}

.bd-ch-hero__actions,
.bd-ch-invite__row {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

.bd-ch-hero__actions {
  position: relative;
  z-index: 1;
  isolation: isolate;
  margin: 8px 0 16px;
}

.bd-ch-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 999px;
  border: 0;
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  text-decoration: none;
}

.bd-ch-btn.is-primary {
  background: var(--bd-ch-blue);
  color: #fff;
}

.bd-ch-btn.is-primary:hover,
.bd-ch-btn.is-primary:focus-visible {
  background: var(--bd-ch-blue-strong);
}

.bd-ch-btn.is-join {
  background: linear-gradient(135deg, #f5c542 0%, #007aff 72%);
  color: #fff;
  box-shadow: 0 10px 22px rgba(0, 122, 255, 0.26);
}

@media (hover: hover) and (pointer: fine) {
  .bd-ch-btn.is-join {
    animation: bd-ch-join-pulse 2.6s ease-in-out infinite;
  }
}

.bd-ch-btn.is-join:hover,
.bd-ch-btn.is-join:focus-visible {
  background: linear-gradient(135deg, #e0b12e 0%, #0066d6 72%);
}

.bd-ch-ticket__join {
  margin: 16px 0 0;
}

.bd-ch-btn.is-ghost {
  background: rgba(255, 255, 255, 0.7);
  color: var(--bd-ch-ink);
  border: 1px solid rgba(15, 23, 42, 0.08);
}

.bd-ch-champ {
  display: flex;
  align-items: center;
  gap: 16px;
}

.bd-ch-champ__icon {
  width: 56px;
  height: 56px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  color: #7a4d00;
  background: linear-gradient(180deg, #ffe9a8, #f5c542);
}

.bd-ch-champ h2 {
  margin: 0 0 4px;
}

.bd-ch-champ p,
.bd-ch-ticket header p,
.bd-ch-leagues header p,
.bd-ch-story header p,
.bd-ch-rules header p {
  margin: 0;
  color: var(--bd-ch-muted);
  line-height: 1.7;
}

.bd-ch-story {
  background:
    radial-gradient(800px 280px at 100% 0%, rgba(255, 210, 80, 0.22), transparent 55%),
    var(--bd-ch-glass);
}

.bd-ch-story header,
.bd-ch-ticket header,
.bd-ch-leagues header,
.bd-ch-rules header {
  margin-bottom: 18px;
}

.bd-ch-story h2,
.bd-ch-ticket h2,
.bd-ch-leagues h2,
.bd-ch-how h2,
.bd-ch-rules h2 {
  margin: 0 0 8px;
  letter-spacing: -0.03em;
}

.bd-ch-story__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.bd-ch-story__item {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 18px 16px;
  border-radius: 22px;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.06);
  min-height: 100%;
}

.bd-ch-story__item h3 {
  margin: 0 0 6px;
  font-size: 1.05rem;
  letter-spacing: -0.02em;
}

.bd-ch-story__item p {
  margin: 0;
  color: var(--bd-ch-muted);
  line-height: 1.75;
}

.bd-ch-story__mark {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.bd-ch-story__num {
  width: 36px;
  height: 36px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  font-weight: 800;
  color: #7a4d00;
  background: linear-gradient(180deg, #ffe9a8, #f5c542);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.bd-ch-story__icon {
  color: var(--bd-ch-blue);
}

.bd-ch-paths {
  margin-top: 22px;
  padding-top: 8px;
}

.bd-ch-paths h3 {
  margin: 0 0 12px;
  font-size: 1.05rem;
}

.bd-ch-paths__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.bd-ch-path {
  display: block;
  width: 100%;
  padding: 16px 16px 14px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.06);
  font: inherit;
  color: inherit;
  text-align: start;
  cursor: pointer;
}

.bd-ch-path.is-gold {
  background: linear-gradient(180deg, #fff8e6, #fff);
  border-color: rgba(212, 160, 23, 0.35);
}

.bd-ch-path:hover,
.bd-ch-path:focus-visible {
  border-color: rgba(0, 122, 255, 0.32);
}

.bd-ch-path h4 {
  margin: 0 0 6px;
}

.bd-ch-path p {
  margin: 0;
  color: var(--bd-ch-muted);
  line-height: 1.75;
}

.bd-ch-champ__kicker {
  margin: 0 0 4px !important;
  font-weight: 800;
  color: var(--bd-ch-gold) !important;
}

.bd-ch-status {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 18px;
}

.bd-ch-status__pill {
  min-width: 120px;
  padding: 12px 14px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.06);
}

.bd-ch-status__pill span {
  display: block;
  font-size: 0.78rem;
  color: var(--bd-ch-muted);
}

.bd-ch-status__pill.is-on strong {
  color: #0f9d58;
}

.bd-ch-status__pill.is-off strong {
  color: #c2410c;
}

.bd-ch-skus {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.bd-ch-skus--paths .bd-ch-join-path {
  width: 100%;
  min-height: 0;
}

.bd-ch-sku {
  position: relative;
  padding: 20px;
  border-radius: 22px;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.06);
}

.bd-ch-sku.is-smart {
  border-color: rgba(212, 160, 23, 0.45);
  box-shadow: 0 12px 28px rgba(212, 160, 23, 0.12);
}

.bd-ch-sku__badge {
  position: absolute;
  top: 12px;
  inset-inline-end: 12px;
  font-size: 0.72rem;
  font-weight: 800;
  color: #7a4d00;
  background: var(--bd-ch-gold-soft);
  padding: 4px 8px;
  border-radius: 999px;
}

.bd-ch-sku h3 {
  margin: 0 0 6px;
}

.bd-ch-sku p {
  margin: 0 0 10px;
  color: var(--bd-ch-muted);
}

.bd-ch-sku__price strong {
  font-size: 1.4rem;
}

.bd-ch-invite {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(15, 23, 42, 0.06);
}

.bd-ch-invite input,
.bd-ch-invite__row input {
  flex: 1;
  min-width: 0;
  min-height: 46px;
  padding: 0 14px;
  border-radius: 14px;
  border: 1px solid rgba(15, 23, 42, 0.1);
  background: #fff;
  font: inherit;
}

.bd-ch-invite__meta {
  margin: 10px 0 0;
  color: var(--bd-ch-muted);
  font-size: 0.9rem;
}

.bd-ch-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.bd-ch-tab {
  border: 0;
  background: rgba(255, 255, 255, 0.7);
  color: var(--bd-ch-ink);
  border-radius: 999px;
  padding: 8px 14px;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.bd-ch-tab.is-active {
  background: var(--bd-ch-ink);
  color: #fff;
}

.bd-ch-board {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}

.bd-ch-board__row {
  display: grid;
  grid-template-columns: 42px 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
  border-radius: 16px;
  background: #fff;
}

.bd-ch-board__row.is-gold {
  background: linear-gradient(90deg, #fff6d4, #fff);
}

.bd-ch-board__row.is-silver {
  background: linear-gradient(90deg, #eef2f7, #fff);
}

.bd-ch-board__row.is-bronze {
  background: linear-gradient(90deg, #f6e6d8, #fff);
}

.bd-ch-board__row.is-you {
  outline: 2px solid var(--bd-ch-blue);
}

.bd-ch-board__row.is-course:not(.is-gold):not(.is-silver):not(.is-bronze) {
  background: linear-gradient(90deg, #fff8e6, #fff);
}

.bd-ch-boost {
  display: inline-block;
  margin-inline-start: 6px;
  padding: 1px 7px;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 800;
  color: #7a4d00;
  background: linear-gradient(180deg, #ffe9a8, #f5c542);
  vertical-align: middle;
}

.bd-ch-boost-note {
  margin: 8px 0 0;
  color: #7a4d00;
  font-weight: 700;
  font-size: 0.92rem;
}

.bd-ch-board__rank {
  font-weight: 800;
}

.bd-ch-board__pts {
  font-variant-numeric: tabular-nums;
  font-weight: 800;
  color: var(--bd-ch-blue-strong);
}

.bd-ch__empty,
.bd-ch__note {
  color: var(--bd-ch-muted);
}

.bd-ch-how ul,
.bd-ch-rules ol {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 12px;
}

.bd-ch-how li {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.bd-ch-how svg {
  flex: 0 0 auto;
  color: var(--bd-ch-blue);
  margin-top: 2px;
}

.bd-ch-rules li {
  padding: 12px 14px;
  border-radius: 16px;
  background: #fff;
  line-height: 1.8;
}

/* ---- total pot ---------------------------------------------------------- */

.bd-ch-hero__pot {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  margin: 4px 0 16px;
  padding: 14px 26px;
  border-radius: 22px;
  background: linear-gradient(180deg, #fff8e1, rgba(255, 255, 255, 0.9));
  border: 1px solid rgba(212, 160, 23, 0.32);
  box-shadow: 0 14px 30px rgba(212, 160, 23, 0.14);
}

.bd-ch-hero__pot-label {
  font-size: 0.84rem;
  font-weight: 700;
  color: var(--bd-ch-muted);
}

.bd-ch-hero__pot strong {
  font-size: clamp(1.9rem, 5vw, 2.9rem);
  line-height: 1.1;
  letter-spacing: -0.045em;
  color: #7a4d00;
  font-variant-numeric: tabular-nums;
}

.bd-ch-hero__pot-unit {
  font-size: 0.9rem;
  font-weight: 700;
  color: #7a4d00;
}

/* ---- countdown ---------------------------------------------------------- */

.bd-ch-countdown {
  margin: 0 auto 18px;
  max-width: 30rem;
}

.bd-ch-countdown__label {
  margin: 0 0 8px;
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--bd-ch-muted);
}

.bd-ch-countdown__units {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.bd-ch-countdown__unit {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 12px 8px;
  border-radius: 16px;
  background: var(--bd-ch-glass-strong);
  border: 1px solid rgba(15, 23, 42, 0.07);
}

.bd-ch-countdown__unit strong {
  font-size: 1.5rem;
  line-height: 1.15;
  letter-spacing: -0.03em;
  font-variant-numeric: tabular-nums;
  color: var(--bd-ch-ink);
}

.bd-ch-countdown__unit span {
  font-size: 0.76rem;
  font-weight: 700;
  color: var(--bd-ch-muted);
}

.bd-ch-hero__social {
  margin: 10px 0 0;
  font-size: 0.94rem;
  font-weight: 700;
  color: var(--bd-ch-blue-strong);
}

.bd-ch-btn.is-lg {
  min-height: 54px;
  padding: 0 28px;
  font-size: 1.05rem;
}

/* ---- trust strip -------------------------------------------------------- */

.bd-ch-trust {
  background: var(--bd-ch-glass);
  border: 1px solid var(--bd-ch-stroke);
  border-radius: var(--bd-ch-radius);
  box-shadow: var(--bd-ch-shadow);
  backdrop-filter: blur(36px) saturate(180%);
  -webkit-backdrop-filter: blur(36px) saturate(180%);
  padding: 26px 26px 22px;
  margin: 0 0 22px;
}

.bd-ch-trust h2 {
  margin: 0 0 16px;
  letter-spacing: -0.03em;
}

.bd-ch-trust__grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.bd-ch-trust__item {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 16px 14px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.06);
}

.bd-ch-trust__icon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 13px;
  color: var(--bd-ch-blue-strong);
  background: rgba(0, 122, 255, 0.09);
}

.bd-ch-trust__item h3 {
  margin: 0 0 4px;
  font-size: 1rem;
  letter-spacing: -0.02em;
}

.bd-ch-trust__item p {
  margin: 0;
  color: var(--bd-ch-muted);
  line-height: 1.7;
  font-size: 0.94rem;
}

/* ---- FAQ ---------------------------------------------------------------- */

.bd-ch-faq {
  background: var(--bd-ch-glass);
  border: 1px solid var(--bd-ch-stroke);
  border-radius: var(--bd-ch-radius);
  box-shadow: var(--bd-ch-shadow);
  backdrop-filter: blur(36px) saturate(180%);
  -webkit-backdrop-filter: blur(36px) saturate(180%);
  padding: 28px 26px;
  margin: 0 0 22px;
}

.bd-ch-faq h2 {
  margin: 0 0 16px;
  letter-spacing: -0.03em;
}

.bd-ch-faq__list {
  display: grid;
  gap: 10px;
}

.bd-ch-faq__item {
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

.bd-ch-faq__item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 15px 16px;
  cursor: pointer;
  font-weight: 700;
  line-height: 1.6;
  list-style: none;
}

.bd-ch-faq__item summary::-webkit-details-marker {
  display: none;
}

.bd-ch-faq__item summary:focus-visible {
  outline: 2px solid var(--bd-ch-blue);
  outline-offset: -2px;
}

.bd-ch-faq__chev {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  position: relative;
  background: rgba(0, 122, 255, 0.1);
}

.bd-ch-faq__chev::before,
.bd-ch-faq__chev::after {
  content: '';
  position: absolute;
  inset-inline-start: 50%;
  top: 50%;
  width: 10px;
  height: 2px;
  border-radius: 2px;
  background: var(--bd-ch-blue-strong);
  transform: translate(-50%, -50%);
}

.bd-ch-faq__chev::after {
  transform: translate(-50%, -50%) rotate(90deg);
  transition: opacity 0.16s ease;
}

.bd-ch-faq__item[open] .bd-ch-faq__chev::after {
  opacity: 0;
}

.bd-ch-faq__item > p {
  margin: 0;
  padding: 0 16px 16px;
  color: var(--bd-ch-muted);
  line-height: 1.85;
}

/* ---- sticky mobile CTA -------------------------------------------------- */

.bd-ch-stickybar {
  display: none;
}

/* ---- focus visibility across all controls ------------------------------- */

.bd-ch-btn:focus-visible,
.bd-ch-tab:focus-visible,
.bd-ch-panel:focus-visible,
.bd-ch-invite__row input:focus-visible,
.bd-ch-ref__row input:focus-visible,
.bd-ch-join-path:focus-visible,
.bd-ch-join__filters button:focus-visible,
.bd-ch-join__close:focus-visible,
.bd-ch-join__back:focus-visible {
  outline: 2px solid var(--bd-ch-blue);
  outline-offset: 2px;
}

.bd-ch-invite__label {
  display: block;
  margin: 0 0 6px;
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--bd-ch-ink);
}

.bd-ch-invite__status {
  margin: 8px 0 0;
  min-height: 1.2em;
  font-size: 0.88rem;
  font-weight: 700;
  color: #047857;
}

.bd-ch-invite__status.is-error {
  color: #c2410c;
}

.bd-ch-ref {
  margin: 0 0 16px;
  padding: 14px 16px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.08);
}

.bd-ch-ref__label {
  display: block;
  margin: 0 0 6px;
  font-weight: 800;
}

.bd-ch-ref__hint {
  margin: 0 0 10px;
  color: var(--bd-ch-muted);
  font-size: 0.88rem;
  line-height: 1.6;
}

.bd-ch-ref__row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.bd-ch-ref__row input {
  flex: 1;
  min-width: 0;
  min-height: 46px;
  padding: 0 14px;
  border-radius: 14px;
  border: 1px solid rgba(15, 23, 42, 0.1);
  background: #fff;
  font: inherit;
}

.bd-ch-ref__status {
  margin: 8px 0 0;
  min-height: 1.2em;
  font-size: 0.88rem;
  font-weight: 700;
  color: #047857;
}

.bd-ch-ref__status.is-error {
  color: #c2410c;
}

.bd-ch-join > .bd-ch-ref {
  position: relative;
  z-index: 1;
  margin: 0 26px 12px;
}

@media (max-width: 760px) {
  /* Shared site launchers stay visible; hide only campaign-specific overlays. */
  html.bd-ch-landing .bd-lc-fab,
  html.bd-ch-landing .bd-pwa-install,
  html:has([data-bd-challenge]) .bd-lc-fab,
  html:has([data-bd-challenge]) .bd-pwa-install {
    display: none !important;
    pointer-events: none !important;
    visibility: hidden !important;
  }

  .bd-ch {
    padding: 10px 14px calc(24px + env(safe-area-inset-bottom, 0px));
    overflow-x: clip;
    scroll-padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px));
  }

  .bd-ch-hero,
  .bd-ch-ticket,
  .bd-ch-leagues,
  .bd-ch-how,
  .bd-ch-rules,
  .bd-ch-champ,
  .bd-ch-story,
  .bd-ch-trust,
  .bd-ch-faq {
    padding: 18px 16px;
    border-radius: 22px;
    margin-bottom: 14px;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
  }

  .bd-ch-hero {
    isolation: isolate;
    background: #fff;
  }

  .bd-ch-ticket,
  .bd-ch-leagues,
  .bd-ch-how,
  .bd-ch-rules,
  .bd-ch-champ,
  .bd-ch-story,
  .bd-ch-trust,
  .bd-ch-faq {
    background: #fff;
  }

  .bd-ch-hero__title {
    font-size: 1.42rem;
    letter-spacing: -0.03em;
  }

  .bd-ch-hero__slogan {
    font-size: 1.12rem;
    margin-bottom: 10px;
    max-width: none;
  }

  .bd-ch-hero__lead,
  .bd-ch-hero__phase {
    font-size: 0.94rem;
    line-height: 1.7;
    max-width: none;
  }

  .bd-ch-hero__pot {
    width: 100%;
    box-sizing: border-box;
    margin: 2px 0 12px;
    padding: 12px 14px;
    border-radius: 18px;
  }

  .bd-ch-hero__pot strong {
    font-size: clamp(1.35rem, 8vw, 1.85rem);
    max-width: 100%;
  }

  .bd-ch-hero__social {
    margin: 0 0 12px;
    font-size: 0.88rem;
  }

  .bd-ch-countdown {
    margin-bottom: 14px;
  }

  .bd-ch-countdown__unit {
    padding: 10px 6px;
    border-radius: 14px;
  }

  .bd-ch-countdown__unit strong {
    font-size: 1.2rem;
  }

  .bd-ch-hero__prizes,
  .bd-ch-skus,
  .bd-ch-story__list,
  .bd-ch-paths__grid,
  .bd-ch-trust__grid {
    grid-template-columns: 1fr;
  }

  .bd-ch-hero__prizes {
    gap: 8px;
    margin: 12px 0 10px;
  }

  .bd-ch-ladder {
    padding: 14px;
    margin-bottom: 8px;
    border-radius: 18px;
  }

  .bd-ch-ladder__head h2 {
    font-size: 1.02rem;
  }

  .bd-ch-ladder__head p {
    font-size: 0.88rem;
    line-height: 1.65;
  }

  .bd-ch-ladder__notes li {
    font-size: 0.78rem;
    line-height: 1.7;
  }

  .bd-ch-prize__ghost {
    min-width: 0;
    overflow-wrap: break-word;
  }

  .bd-ch-prize.is-r1,
  .bd-ch-prize.is-r2,
  .bd-ch-prize.is-r3 {
    grid-column: auto;
    grid-row: auto;
    transform: none;
  }

  .bd-ch-prize {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-areas:
      "medal rank sum"
      "medal ghost ghost";
    align-items: center;
    column-gap: 10px;
    row-gap: 4px;
    padding: 12px 14px;
    border-radius: 16px;
  }

  .bd-ch-prize.is-r1 {
    padding-block: 12px;
  }

  .bd-ch-prize__medal {
    grid-area: medal;
    margin: 0;
    width: 30px;
    height: 30px;
    font-size: 0.85rem;
  }

  .bd-ch-prize__rank {
    grid-area: rank;
    flex: unset;
    text-align: start;
    min-width: 0;
  }

  .bd-ch-prize__sum {
    grid-area: sum;
    align-items: flex-end;
  }

  .bd-ch-prize__sum strong,
  .bd-ch-prize.is-r1 strong {
    font-size: 1.02rem;
  }

  .bd-ch-prize__ghost {
    grid-area: ghost;
    margin: 0;
    text-align: start;
  }

  .bd-ch-prize.is-doubled {
    grid-template-areas: "medal rank sum";
  }

  aside.bd-challenge-ribbon .bd-challenge-ribbon__link {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    grid-template-areas:
      "mark copy"
      "cta cta";
    gap: 10px 12px;
    align-items: center;
    padding: 14px;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  aside.bd-challenge-ribbon .bd-challenge-ribbon__mark {
    grid-area: mark;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    font-size: 0.9rem;
  }

  aside.bd-challenge-ribbon .bd-challenge-ribbon__copy {
    grid-area: copy;
    min-width: 0;
  }

  aside.bd-challenge-ribbon .bd-challenge-ribbon__copy strong {
    font-size: 0.98rem;
  }

  aside.bd-challenge-ribbon .bd-challenge-ribbon__copy span {
    font-size: 0.84rem;
  }

  aside.bd-challenge-ribbon .bd-challenge-ribbon__cta {
    grid-area: cta;
    display: flex;
    align-items: center;
    justify-content: center;
    justify-self: stretch;
    width: auto;
    padding: 10px 14px;
    text-align: center;
  }

  .bd-ch-hero__actions {
    flex-direction: column;
    align-items: stretch;
    flex-wrap: nowrap;
    width: 100%;
    margin: 10px 0 16px;
    gap: 12px;
  }

  .bd-ch-hero__actions .bd-ch-btn {
    width: 100%;
    flex: 0 0 auto;
    box-shadow: none;
  }

  .bd-ch-hero__actions .bd-ch-btn.is-join {
    box-shadow: 0 8px 16px rgba(0, 122, 255, 0.22);
  }

  .bd-ch-countdown {
    margin: 0 0 16px;
  }

  .bd-ch-countdown__units {
    gap: 8px;
  }

  .bd-ch-countdown__unit {
    min-width: 0;
    padding: 10px 4px;
    border-radius: 14px;
  }

  .bd-ch-board__row {
    grid-template-columns: 32px minmax(0, 1fr) auto;
    gap: 8px;
    padding: 10px 12px;
  }

  .bd-ch-invite__row {
    flex-direction: column;
    align-items: stretch;
  }

  .bd-ch-ref__row {
    flex-direction: column;
    align-items: stretch;
  }

  .bd-ch-join > .bd-ch-ref {
    margin: 0 16px 10px;
  }

  .bd-ch-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
  }

  .bd-ch-tab {
    flex: 0 0 auto;
  }

  .bd-ch-stickybar {
    position: fixed;
    inset-inline: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 60;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: auto;
    min-height: 56px;
    padding: 10px 14px calc(10px + env(safe-area-inset-bottom, 0px));
    border-radius: 0;
    background: #fff;
    border: 0;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 -8px 24px rgba(15, 23, 42, 0.08);
  }

  body.bd-pwa-banner-open .bd-ch-stickybar {
    display: none !important;
  }

  /* Install card is hidden on this page; keep the join bar if it should show. */
  html.bd-ch-landing body.bd-pwa-banner-open .bd-ch-stickybar:not([hidden]),
  html:has([data-bd-challenge]) body.bd-pwa-banner-open .bd-ch-stickybar:not([hidden]) {
    display: flex !important;
  }

  html.bd-ch-join-open .bd-ch-stickybar {
    display: none !important;
  }

  .bd-ch-stickybar[hidden] {
    display: none;
  }

  .bd-ch-stickybar__copy {
    display: none;
  }

  .bd-ch-stickybar .bd-ch-btn {
    flex: 1 1 auto;
    width: 100%;
    min-height: 44px;
  }

  /* The bar overlays the end of the page; give the content room to clear it. */
  .bd-ch:has(.bd-ch-stickybar:not([hidden])) {
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px));
    scroll-padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px));
  }
}

html.bd-ch-join-open,
html.bd-ch-join-open body {
  overflow: hidden;
}

/* ---- enrollment wizard -------------------------------------------------- */

.bd-ch-join {
  position: relative;
  width: min(920px, calc(100vw - 24px));
  max-height: min(92vh, 900px);
  margin: auto;
  padding: 0;
  border: 1px solid var(--bd-ch-stroke);
  border-radius: 32px;
  overflow: auto;
  background:
    radial-gradient(900px 280px at 100% -10%, rgba(255, 210, 80, 0.38), transparent 55%),
    radial-gradient(700px 240px at 0% 110%, rgba(0, 122, 255, 0.16), transparent 50%),
    #f7f8fc;
  color: var(--bd-ch-ink);
  box-shadow: 0 40px 90px rgba(15, 23, 42, 0.18);
}

.bd-ch-join::backdrop {
  background: rgba(238, 241, 248, 0.78);
  backdrop-filter: blur(18px) saturate(160%);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
}

.bd-ch-join__glow {
  pointer-events: none;
  position: absolute;
  inset: 0;
  background:
    linear-gradient(120deg, transparent 30%, rgba(255, 255, 255, 0.45) 50%, transparent 70%);
  opacity: 0.7;
}

.bd-ch-join__chrome {
  position: sticky;
  top: 0;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 8px;
  padding: 14px 16px 8px;
  background: linear-gradient(180deg, rgba(247, 248, 252, 0.96), rgba(247, 248, 252, 0.72) 70%, transparent);
}

.bd-ch-join__kicker {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  justify-self: center;
  font-weight: 800;
  color: var(--bd-ch-blue-strong);
  font-size: 0.88rem;
}

.bd-ch-join__kicker svg {
  color: var(--bd-ch-gold);
}

.bd-ch-join__back,
.bd-ch-join__close {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 40px;
  padding: 0 10px;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.8);
  color: var(--bd-ch-ink);
  cursor: pointer;
  font: inherit;
  font-weight: 700;
}

.bd-ch-join__back {
  justify-self: start;
}

.bd-ch-join__back[hidden] {
  visibility: hidden;
  pointer-events: none;
}

.bd-ch-join__panel[hidden],
.bd-ch-join-course[hidden],
.bd-ch-join__note[hidden],
.bd-ch-join__steps[hidden],
.bd-ch-ref[hidden] {
  display: none !important;
}

.bd-ch-join__close {
  justify-self: end;
  width: 40px;
  padding: 0;
  justify-content: center;
}

.bd-ch-join__steps {
  display: flex;
  justify-content: center;
  gap: 22px;
  margin: 0;
  padding: 0 20px 16px;
  list-style: none;
  color: var(--bd-ch-muted);
  font-size: 0.82rem;
  font-weight: 700;
}

.bd-ch-join__steps li {
  position: relative;
  opacity: 0.45;
  padding-bottom: 8px;
}

.bd-ch-join__steps li.is-active,
.bd-ch-join__steps li.is-done {
  opacity: 1;
  color: var(--bd-ch-blue-strong);
}

.bd-ch-join__steps li.is-active::after {
  content: "";
  position: absolute;
  right: 12%;
  left: 12%;
  bottom: 0;
  height: 3px;
  border-radius: 99px;
  background: linear-gradient(90deg, #f5c542, #007aff);
}

.bd-ch-join__body {
  position: relative;
  z-index: 1;
  padding: 8px 26px 28px;
}

.bd-ch-join__panel h2 {
  margin: 0 0 10px;
  font-size: clamp(1.45rem, 3vw, 2rem);
  letter-spacing: -0.03em;
  line-height: 1.25;
}

.bd-ch-join__panel > p,
.bd-ch-join__eyebrow {
  margin: 0 0 14px;
  color: var(--bd-ch-muted);
  line-height: 1.75;
}

.bd-ch-join__eyebrow {
  font-weight: 800;
  color: #7a4d00;
  font-size: 0.92rem;
}

.bd-ch-join__panel > .bd-ch-btn.is-lg {
  margin-top: 4px;
}

.bd-ch-join__panel.is-success {
  text-align: center;
  padding: 12px 8px 8px;
}

.bd-ch-join__trophy {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  margin: 0 auto 12px;
  border-radius: 22px;
  color: #7a4d00;
  background: linear-gradient(180deg, #ffe9a8, #f5c542);
  box-shadow: 0 12px 28px rgba(212, 160, 23, 0.28);
}

.bd-ch-join__paths {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 8px;
}

.bd-ch-join-path {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  min-height: 100%;
  text-align: start;
  padding: 20px 18px 16px;
  border-radius: 24px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.06);
  cursor: pointer;
  font: inherit;
  color: inherit;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.bd-ch-join-path:hover,
.bd-ch-join-path:focus-visible {
  box-shadow: 0 22px 44px rgba(15, 23, 42, 0.12);
}

@media (hover: hover) and (pointer: fine) {
  .bd-ch-join-path:hover,
  .bd-ch-join-path:focus-visible {
    transform: translateY(-3px);
  }
}

.bd-ch-join-path:active {
  transform: translateY(-1px);
}

.bd-ch-join-path.is-plus {
  background:
    linear-gradient(180deg, rgba(0, 122, 255, 0.08), rgba(255, 255, 255, 0.92));
}

.bd-ch-join-path.is-course {
  background:
    linear-gradient(180deg, rgba(245, 197, 66, 0.22), rgba(255, 255, 255, 0.92));
}

.bd-ch-join-path__icon {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  background: #fff;
  color: var(--bd-ch-blue-strong);
}

.bd-ch-join-path.is-course .bd-ch-join-path__icon {
  color: #7a4d00;
}

.bd-ch-join-path__tag {
  align-self: start;
  padding: 3px 10px;
  border-radius: 999px;
  background: rgba(0, 122, 255, 0.12);
  color: var(--bd-ch-blue-strong);
  font-size: 0.75rem;
  font-weight: 800;
}

.bd-ch-join-path__tag.is-gold {
  background: rgba(245, 197, 66, 0.35);
  color: #7a4d00;
}

.bd-ch-join-path strong {
  font-size: 1.15rem;
}

.bd-ch-join-path > span:not(.bd-ch-join-path__icon):not(.bd-ch-join-path__tag) {
  color: var(--bd-ch-muted);
  line-height: 1.65;
  font-size: 0.95rem;
}

.bd-ch-join-path ul {
  margin: 6px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 6px;
}

.bd-ch-join-path li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.9rem;
  font-weight: 650;
}

.bd-ch-join-path li svg {
  flex: 0 0 auto;
  color: #047857;
}

.bd-ch-join-path__go {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding-top: 10px;
  font-weight: 800;
  color: var(--bd-ch-blue-strong);
}

.bd-ch-join-path.is-course .bd-ch-join-path__go {
  color: #7a4d00;
}

.bd-ch-join-path__go svg {
  transform: scaleX(-1);
}

[dir="rtl"] .bd-ch-join-path__go svg {
  transform: none;
}

.bd-ch-join__skus,
.bd-ch-join__courses {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin: 14px 0;
}

.bd-ch-join-sku,
.bd-ch-join-course {
  padding: 18px;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(15, 23, 42, 0.07);
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.bd-ch-join-sku form,
.bd-ch-join-course form,
.bd-ch-join-sku > .bd-ch-btn,
.bd-ch-join-course > .bd-ch-btn {
  margin-top: auto;
}

.bd-ch-join-sku.is-smart,
.bd-ch-join-course.is-featured {
  box-shadow: 0 16px 34px rgba(212, 160, 23, 0.14);
  border-color: rgba(212, 160, 23, 0.35);
}

.bd-ch-join-sku h3,
.bd-ch-join-course h3 {
  margin: 0;
  font-size: 1.05rem;
}

.bd-ch-join-sku p,
.bd-ch-join-course p {
  margin: 0;
  color: var(--bd-ch-muted);
  line-height: 1.6;
  font-size: 0.92rem;
}

.bd-ch-join-sku__hint {
  font-size: 0.82rem !important;
}

.bd-ch-join-course__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.bd-ch-join-course__meta span {
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.06);
  font-size: 0.75rem;
  font-weight: 800;
}

.bd-ch-join-course__meta span.is-gold {
  background: rgba(245, 197, 66, 0.4);
  color: #7a4d00;
}

.bd-ch-join__filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 4px 0 8px;
}

.bd-ch-join__filters button {
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(255, 255, 255, 0.8);
  font: inherit;
  font-weight: 700;
  font-size: 0.82rem;
  cursor: pointer;
  color: var(--bd-ch-ink);
}

.bd-ch-join__filters button.is-active {
  background: var(--bd-ch-blue);
  color: #fff;
  border-color: transparent;
}

.bd-ch-join__note,
.bd-ch-join__status {
  margin: 8px 0 0;
  color: var(--bd-ch-muted);
  font-size: 0.9rem;
  line-height: 1.7;
}

.bd-ch-join__status.is-error {
  color: #c2410c;
  font-weight: 700;
}

.bd-ch-join__success-actions {
  display: grid;
  justify-items: center;
  gap: 12px;
  margin-top: 16px;
}

.bd-ch-join__success-actions p {
  max-width: 28rem;
}

@keyframes bd-ch-join-pulse {
  0%,
  100% {
    box-shadow: 0 10px 22px rgba(0, 122, 255, 0.26);
  }
  50% {
    box-shadow: 0 12px 26px rgba(0, 122, 255, 0.34);
  }
}

@media (max-width: 760px) {
  .bd-ch-join {
    width: calc(100vw - 12px);
    max-height: 96vh;
    border-radius: 22px;
  }

  .bd-ch-join__body {
    padding: 4px 16px 22px;
  }

  .bd-ch-join__panel > .bd-ch-btn.is-lg,
  .bd-ch-join__panel > button.bd-ch-btn.is-lg {
    width: 100%;
  }

  .bd-ch-join__paths,
  .bd-ch-join__skus,
  .bd-ch-join__courses {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bd-ch-faq__chev::after,
  .bd-ch-join-path {
    transition: none;
  }

  .bd-ch-btn.is-join {
    animation: none;
  }
}

/* 1406 editorial edition. Campaign values and interaction hooks remain live. */
.bd-ch.bd-ch--editorial{
  --bd-ch-bg:#fffefa;--bd-ch-ink:#142d3e;--bd-ch-muted:#556975;
  --bd-ch-blue:#245bca;--bd-ch-blue-strong:#194aa9;--bd-ch-gold:#bb8b39;
  --bd-ch-stroke:#dce2df;--bd-ch-glass:#fffefa;--bd-ch-glass-strong:#fff;
  --bd-ch-shadow:0 12px 35px -25px #142d3e35;--bd-ch-radius:20px;
  width:min(1240px,calc(100% - 48px));max-width:1240px;margin:32px auto 64px;
}
.bd-ch--editorial,.bd-ch--editorial *{box-sizing:border-box}
.bd-ch--editorial :is(section,[id]){scroll-margin-top:110px}
.bd-ch--editorial :is(button,a):focus-visible{outline:3px solid #245bca;outline-offset:5px}
.bd-ch--editorial .bd-ch-hero{
  display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:42px 38px;
  background:#142d3e;padding:48px;border:1px solid #254757;border-radius:24px;
  text-align:start;box-shadow:none;position:relative;overflow:hidden;color:#fffefa;
}
.bd-ch--editorial .bd-ch-hero__intro{min-width:0;position:relative;z-index:1}
.bd-ch--editorial .bd-ch-hero__kicker{justify-content:flex-start;color:#e9c078;font-size:12px;letter-spacing:0;margin:0 0 24px}
.bd-ch--editorial .bd-ch-hero__title{font-size:clamp(28px,3.3vw,46px);line-height:1.65;color:#fffefa;letter-spacing:-.025em;margin:0 0 14px;font-weight:700}
.bd-ch--editorial .bd-ch-hero__title>span{font-family:Georgia,serif;font-size:clamp(40px,4.6vw,64px);font-weight:400;line-height:1.15;display:inline-block;color:#fffefa;letter-spacing:-.045em}
.bd-ch--editorial .bd-ch-hero__slogan{color:#dce6e8;line-height:1.9;font-size:16px;margin:0 0 26px;max-width:40ch}
.bd-ch--editorial .bd-ch-hero__pot{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:6px 10px;padding:18px 0;margin:0 0 24px;background:none;border:0;border-block:1px solid #ffffff26;border-radius:0;box-shadow:none;color:#e9c078}
.bd-ch--editorial .bd-ch-hero__pot-label{flex-basis:100%;font-size:11px;color:#d0dce0}
.bd-ch--editorial .bd-ch-hero__pot strong{font-size:clamp(28px,3vw,40px);line-height:1.6;color:#e9c078;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.bd-ch--editorial .bd-ch-hero__pot-unit{font-size:12px;color:#e9c078}
.bd-ch--editorial .bd-ch-hero__actions{justify-content:flex-start;align-items:center;gap:12px;margin:0 0 24px;flex-wrap:wrap}
.bd-ch--editorial .bd-ch-btn{border-radius:9px;font-size:13px;min-height:48px;line-height:1.7;box-shadow:none;animation:none}
.bd-ch--editorial .bd-ch-hero .bd-ch-btn.is-primary{background:#e9c078;color:#142d3e;border:1px solid #e9c078;box-shadow:none;animation:none}
.bd-ch--editorial .bd-ch-hero .bd-ch-btn.is-primary:hover{background:#f7dba8}
.bd-ch--editorial .bd-ch-hero .bd-ch-btn.is-ghost{color:#fffefa;background:transparent;border:1px solid #ffffff40}
.bd-ch--editorial .bd-ch-hero :is(a,button):focus-visible{outline-color:#e9c078}
.bd-ch--editorial .bd-ch-hero__phase{color:#d0dce0;font-size:12px;line-height:1.9;margin:16px 0 8px;padding:0;background:none;border:0}
.bd-ch--editorial .bd-ch-hero__lead{color:#bccdd3;font-size:12px;line-height:2;margin:12px 0 0}
.bd-ch--editorial .bd-ch-hero__social{color:#e9c078;font-size:12px}
.bd-ch--editorial .bd-ch-countdown{display:flex;align-items:center;justify-content:flex-start;gap:18px;padding:0;border:0;background:none;margin:16px 0;box-shadow:none}
.bd-ch--editorial .bd-ch-countdown__label{color:#c4d3d9;font-size:11px;max-width:100px;margin:0}
.bd-ch--editorial .bd-ch-countdown__units{display:flex;gap:8px;margin:0}
.bd-ch--editorial .bd-ch-countdown__unit{background:#ffffff09;border:1px solid #ffffff20;border-radius:8px;min-width:58px;padding:8px;color:#ccd9df;box-shadow:none}
.bd-ch--editorial .bd-ch-countdown__unit strong{font-size:24px;color:#fffefa;font-variant-numeric:tabular-nums}
.bd-ch--editorial .bd-ch-countdown__unit>span{font-size:10px}
.bd-ch--editorial .bd-ch-hero__stage{display:flex;flex-direction:column;justify-content:center;align-items:stretch;min-width:0;border-inline-start:1px solid #ffffff20;padding-inline-start:30px}
.bd-ch--editorial .bd-ch-emblem{height:245px;position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;isolation:isolate}
.bd-ch--editorial .bd-ch-emblem:before{content:"";position:absolute;width:220px;height:220px;border:1px solid #e9c07830;border-radius:50%;z-index:-1;box-shadow:0 0 0 18px #e9c07806}
.bd-ch--editorial .bd-ch-emblem__edition{font:9px/1.4 Arial,sans-serif;letter-spacing:3px;color:#e9c078;position:absolute;top:4px}
.bd-ch--editorial .bd-ch-emblem__year{position:absolute;font:160px/1 Georgia,serif;letter-spacing:-10px;color:#ffffff05;top:30px;inset-inline:0;z-index:-1}
.bd-ch--editorial .bd-ch-emblem__cup{width:185px;height:175px;filter:drop-shadow(0 8px 22px #e9c07819)}
.bd-ch--editorial .bd-ch-hero__prizes{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0 0;align-items:stretch}
.bd-ch--editorial .bd-ch-prize{padding:18px 12px;border:1px solid #ffffff25;border-radius:12px;background:#ffffff07;box-shadow:none;transform:none;gap:8px;color:#fffefa}
.bd-ch--editorial .bd-ch-prize.is-r1{grid-column:1/-1;grid-row:1;background:#e9c078;color:#142d3e;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;text-align:start;padding:20px 24px;border-color:#e9c078}
.bd-ch--editorial .bd-ch-prize.is-r2{grid-column:1;grid-row:2}
.bd-ch--editorial .bd-ch-prize.is-r3{grid-column:2;grid-row:2}
.bd-ch--editorial .bd-ch-prize__rank,.bd-ch--editorial .bd-ch-prize__unit{color:#c4d3d9;font-size:11px}
.bd-ch--editorial .bd-ch-prize strong{color:#fffefa;font-size:21px;line-height:1.5;letter-spacing:-.02em}
.bd-ch--editorial .bd-ch-prize.is-r1 :is(strong,.bd-ch-prize__rank,.bd-ch-prize__unit,.bd-ch-prize__ghost){color:#142d3e}
.bd-ch--editorial .bd-ch-prize.is-r1 strong{font-size:32px}
.bd-ch--editorial .bd-ch-prize.is-r1 .bd-ch-prize__medal{grid-row:1/4;width:46px;height:46px;background:#142d3e;color:#e9c078;box-shadow:none;margin:0}
.bd-ch--editorial .bd-ch-prize.is-r1 .bd-ch-prize__sum{align-items:flex-start;flex-direction:row;gap:8px;align-items:baseline}
.bd-ch--editorial .bd-ch-prize__ghost{font-size:10px;line-height:1.8;color:#c4d3d9}
.bd-ch--editorial .bd-ch-prize.is-r1 .bd-ch-prize__ghost{grid-column:2}
.bd-ch--editorial .bd-ch-ladder{grid-column:1/-1;background:#fffefa;color:#142d3e;border:0;border-radius:14px;padding:28px;margin:0;box-shadow:none;text-align:start}
.bd-ch--editorial .bd-ch-ladder__head h2{font-size:23px;line-height:1.7;letter-spacing:-.02em;color:#142d3e}
.bd-ch--editorial .bd-ch-ladder__head p{font-size:13px;line-height:1.9;color:#556975;max-width:800px}
.bd-ch--editorial .bd-ch-ladder__meter{height:8px;background:#e5e8df;box-shadow:none;margin-block:20px 14px;border-radius:99px;overflow:hidden}
.bd-ch--editorial .bd-ch-ladder__fill{background:#245bca;box-shadow:none}
.bd-ch--editorial .bd-ch-ladder__notes{border-top:1px solid #dce2df;padding-top:14px;margin-bottom:0}
.bd-ch--editorial .bd-ch-ladder__notes li{font-size:11px;line-height:1.9}
.bd-ch--editorial .bd-ch-section-nav{display:flex;flex-wrap:wrap;gap:8px 28px;padding:22px 8px;margin:0 0 36px;border-bottom:1px solid #dce2df;justify-content:center}
.bd-ch--editorial .bd-ch-section-nav a{display:flex;align-items:center;min-height:44px;color:#556975;font-size:12px;text-decoration:none}
.bd-ch--editorial .bd-ch-section-nav a:hover{color:#194aa9;text-decoration:underline;text-underline-offset:6px}
.bd-ch--editorial :is(.bd-ch-story,.bd-ch-ticket,.bd-ch-leagues,.bd-ch-how,.bd-ch-rules,.bd-ch-faq,.bd-ch-trust,.bd-ch-weekly){padding:32px;margin-block:28px;background:#fffefa;border:1px solid #dce2df;box-shadow:none;border-radius:18px;backdrop-filter:none}
.bd-ch--editorial :is(.bd-ch-story,.bd-ch-trust){border:0;padding:24px 0}
.bd-ch--editorial :is(.bd-ch-story,.bd-ch-ticket,.bd-ch-leagues,.bd-ch-how,.bd-ch-rules,.bd-ch-faq,.bd-ch-trust) h2{font-size:26px;line-height:1.6;color:#142d3e}
.bd-ch--editorial .bd-ch-trust__item{background:#f3f4ee;border:0;border-radius:12px;box-shadow:none;padding:22px}
.bd-ch--editorial .bd-ch-trust__icon{background:#fffefa;color:#8d6429;border:1px solid #dedacb;border-radius:10px}
.bd-ch--editorial .bd-ch-story__list{gap:16px}
.bd-ch--editorial .bd-ch-story__item{background:#f4f3ed;border:1px solid #e2e3d8;border-radius:14px;box-shadow:none;padding:24px}
.bd-ch--editorial .bd-ch-story__num{color:#245bca;background:#fffefa;border:1px solid #dce2df}
.bd-ch--editorial .bd-ch-path{border:1px solid #dce2df;border-radius:12px;background:#fff;box-shadow:none}
.bd-ch--editorial .bd-ch-path:hover{border-color:#245bca;background:#f4f7ff}
.bd-ch--editorial .bd-ch-board__row{border-radius:8px;border-bottom:1px solid #edf0eb;min-height:58px}
.bd-ch--editorial .bd-ch-board__row.is-gold{background:#fbf1db;border-color:#e9c078}
.bd-ch--editorial .bd-ch-tab{border-radius:8px;min-height:44px}
.bd-ch--editorial .bd-ch-tab[aria-selected="true"]{background:#142d3e;color:#fff}
.bd-ch--editorial .bd-ch-rules ol{padding-inline-start:26px}
.bd-ch--editorial .bd-ch-rules li{padding:12px 8px;border-bottom:1px solid #e4e8e2;line-height:2;font-size:13px}
.bd-ch--editorial .bd-ch-rules li:last-child{border:0}
.bd-ch--editorial .bd-ch-rules li::marker{color:#245bca;font-weight:700}
.bd-ch--editorial .bd-ch-faq__item{border-radius:0;border:0;border-bottom:1px solid #dce2df;background:transparent;box-shadow:none}
.bd-ch--editorial .bd-ch-faq__item summary{padding:22px 4px;font-size:14px;line-height:1.9}
.bd-ch--editorial .bd-ch-faq__item p{padding:0 4px 22px;font-size:13px;line-height:2}
.bd-ch--editorial .bd-ch-join{background:#fffefa;border-radius:18px}
.bd-ch--editorial[dir="ltr"] .bd-ch-hero__title{line-height:1.2;margin-bottom:22px}
.bd-ch--editorial[dir="ltr"] .bd-ch-hero__title>span{margin-bottom:12px}
.bd-ch--editorial[dir="ltr"] .bd-ch-hero__slogan{line-height:1.7}
@media(max-width:1000px){.bd-ch--editorial .bd-ch-hero{padding:32px;gap:28px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.bd-ch--editorial .bd-ch-hero__stage{padding-inline-start:20px}.bd-ch--editorial .bd-ch-prize.is-r1{padding:18px 14px}.bd-ch--editorial .bd-ch-prize.is-r1 strong{font-size:26px}.bd-ch--editorial .bd-ch-prize strong{font-size:18px}}
@media(max-width:760px){.bd-ch.bd-ch--editorial{width:calc(100% - 24px);margin:16px auto 40px}.bd-ch--editorial .bd-ch-hero{padding:26px 20px;grid-template-columns:minmax(0,1fr);gap:24px;border-radius:18px}.bd-ch--editorial .bd-ch-hero__title{font-size:30px}.bd-ch--editorial .bd-ch-hero__title>span{font-size:43px}.bd-ch--editorial .bd-ch-hero__slogan{font-size:14px;margin-bottom:18px}.bd-ch--editorial .bd-ch-hero__kicker{margin-bottom:18px}.bd-ch--editorial .bd-ch-hero__actions{flex-direction:row;align-items:stretch}.bd-ch--editorial .bd-ch-hero__actions .bd-ch-btn{width:auto;flex:1 1 150px;padding:12px}.bd-ch--editorial .bd-ch-hero__stage{padding:22px 0 0;border:0;border-top:1px solid #ffffff26}.bd-ch--editorial .bd-ch-emblem{height:180px}.bd-ch--editorial .bd-ch-emblem:before{height:150px;width:150px}.bd-ch--editorial .bd-ch-emblem__cup{height:130px;width:150px}.bd-ch--editorial .bd-ch-emblem__edition{top:0;font-size:8px}.bd-ch--editorial .bd-ch-emblem__year{font-size:125px;top:24px}.bd-ch--editorial .bd-ch-ladder{grid-column:1;padding:20px}.bd-ch--editorial .bd-ch-ladder__head h2{font-size:20px}.bd-ch--editorial .bd-ch-section-nav{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;gap:20px;padding:14px 4px;margin-bottom:16px}.bd-ch--editorial .bd-ch-section-nav a{flex-shrink:0}.bd-ch--editorial :is(.bd-ch-ticket,.bd-ch-leagues,.bd-ch-how,.bd-ch-rules,.bd-ch-faq,.bd-ch-weekly){padding:22px 18px}.bd-ch--editorial :is(.bd-ch-story,.bd-ch-trust){padding:14px 0}.bd-ch--editorial :is(.bd-ch-story,.bd-ch-ticket,.bd-ch-leagues,.bd-ch-how,.bd-ch-rules,.bd-ch-faq,.bd-ch-trust) h2{font-size:22px}.bd-ch--editorial .bd-ch-countdown{gap:12px}.bd-ch--editorial .bd-ch-countdown__unit{min-width:52px}.bd-ch--editorial .bd-ch-stickybar{background:#fffefa;border-top:1px solid #dce2df}.bd-ch--editorial .bd-ch-stickybar .bd-ch-btn{background:#142d3e;color:#fffefa;animation:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){.bd-ch--editorial *{animation:none!important;transition:none!important}}

/* Clear the legacy compact podium placement before composing the new cards. */
.bd-ch--editorial .bd-ch-prize{grid-template-areas:none}
.bd-ch--editorial .bd-ch-prize :is(.bd-ch-prize__medal,.bd-ch-prize__rank,.bd-ch-prize__sum,.bd-ch-prize__ghost){grid-area:auto}
.bd-ch--editorial .bd-ch-prize.is-r1 .bd-ch-prize__medal{grid-row:1/4;grid-column:1}
.bd-ch--editorial .bd-ch-prize.is-r1 :is(.bd-ch-prize__rank,.bd-ch-prize__sum,.bd-ch-prize__ghost){grid-column:2}
.bd-ch--editorial .bd-ch-ladder{max-width:none;width:100%}
.bd-ch--editorial .bd-ch-hero__pot{flex-direction:row}
.bd-ch--editorial .bd-ch-hero__pot strong{font-variant-numeric:normal;direction:ltr;unicode-bidi:isolate}
.bd-ch--editorial .bd-ch-prize__sum strong{direction:ltr;unicode-bidi:isolate}
