/* =====================================================================
   CHEK Black Friday 2026 - bf26.css v2.19.1
   Paste into Divi > Theme Options > Custom CSS (WAF strips inline <style>)
   Everything is scoped to html.bf-ready (only set by bf26.js, only loaded on BF pages)
   or to .bf26-* classes, so nothing leaks into the rest of the site.

   Palette (BF26): bg #000 / panel #111 / line #2a2a2a / coral #e94f35
   Text rule: #FFFFFF / #EDEDED / #D6D6D6, nothing darker than #A8A8A8, min 13px
   ===================================================================== */
/* CHEK font: Soleil (same files the main site uses) */
@font-face { font-family: "BF26 Soleil"; src: url("https://f.hubspotusercontent40.net/hubfs/21228891/Soleil%20Font%20Files/SoleilLight.otf") format("opentype"); font-weight: 300; font-display: swap; }
@font-face { font-family: "BF26 Soleil"; src: url("https://f.hubspotusercontent40.net/hubfs/21228891/Soleil%20Font%20Files/SoleilRegular.otf") format("opentype"); font-weight: 400; font-display: swap; }
@font-face { font-family: "BF26 Soleil"; src: url("https://f.hubspotusercontent40.net/hubfs/21228891/Soleil%20Font%20Files/SoleilBook.otf") format("opentype"); font-weight: 500; font-display: swap; }
@font-face { font-family: "BF26 Soleil"; src: url("https://f.hubspotusercontent40.net/hubfs/21228891/Soleil%20Font%20Files/SoleilBold.otf") format("opentype"); font-weight: 700; font-display: swap; }


/* ---------- C1 / C3 phase + path visibility ---------- */
/* Conditional blocks are hidden until bf26.js switches them on.
   Leave ALWAYS-visible content untagged. */
[data-bf-phase]:not(.bf-on),
[data-bf-path]:not(.bf-on),
[data-bf-not-path]:not(.bf-on),
[data-bf-real-phase]:not(.bf-on) { display: none !important; }

/* Preview badge so nobody mistakes a preview for live */
html.bf-preview body::before {
  content: "PREVIEW: " attr(data-bf-preview);
  position: fixed; left: 8px; bottom: 8px; z-index: 2147483000;
  background: #ffd400; color: #000; font: 700 12px/1 "BF26 Soleil", soleil, sans-serif;
  padding: 6px 8px; border-radius: 3px; pointer-events: none;
}

/* ---------- C2 countdown ---------- */
[data-bf-countdown][hidden] { display: none !important; }
.bf26-cd { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; font-family: "BF26 Soleil", soleil, sans-serif; }
.bf26-cd__label { color: #EDEDED; font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.bf26-cd__units { display: flex; gap: 8px; }
.bf26-cd__unit { min-width: 56px; padding: 8px 6px; background: #111; border: 1px solid #2a2a2a; border-radius: 6px; text-align: center; }
.bf26-cd__unit[hidden] { display: none !important; }
.bf26-cd__num { display: block; color: #FFFFFF; font-size: 24px; font-weight: 900; line-height: 1; font-variant-numeric: tabular-nums; }
.bf26-cd__txt { display: block; color: #A8A8A8; font-size: 13px; margin-top: 4px; }

/* ---------- VIP buttons after VIP closes ---------- */
.bf-closed,
.bf-closed:hover {
  background: #2a2a2a !important; color: #D6D6D6 !important; border-color: #2a2a2a !important;
  cursor: not-allowed !important; pointer-events: none; box-shadow: none !important; filter: none !important;
}

/* ---------- C4 sticky top nav ---------- */
.bf26-nav { position: sticky; top: 0; z-index: 9990; background: rgba(0,0,0,.94); border-bottom: 1px solid #2a2a2a; }
body.admin-bar .bf26-nav { top: 32px; }
.bf26-nav__inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; max-width: 1280px; margin: 0 auto; padding: 12px 24px; }
.bf26-nav__links { display: flex; gap: 24px; margin: 0; padding: 0; list-style: none; }
.bf26-nav a { color: #D6D6D6; font: 500 15px/1.2 "BF26 Soleil", soleil, sans-serif; text-decoration: none; padding: 6px 0; border-bottom: 2px solid transparent; }
.bf26-nav a:hover { color: #FFFFFF; }
.bf26-nav a.is-active { color: #FFFFFF; border-bottom-color: #e94f35; }
/* Section anchors land below the sticky nav */
html.bf-ready [id] { scroll-margin-top: 80px; }
/* anchor scrolling is smoothed in bf26.js - no CSS scroll-behavior (it slowed mouse-wheel scrolling) */
@media (max-width: 767px) {
  .bf26-nav__inner { padding: 10px 16px; }
  .bf26-nav__links { flex: 1; justify-content: space-between; gap: 8px; }  /* no horizontal scroll */
  .bf26-nav a { font-size: 14px; }
  .bf26-nav__logo { display: none; }
}

/* ---------- C5 sticky bottom bar ---------- */
.bf26-bar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 9995;
  background: #111; border-top: 2px solid #e94f35; font-family: "BF26 Soleil", soleil, sans-serif;
  transform: translateY(110%); transition: transform .3s ease;
}
.bf26-bar.is-shown,
.bf26-bar[data-bf-bar-mode="cart"] { transform: translateY(0); }
.bf26-bar__inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; max-width: 1280px; margin: 0 auto; padding: 12px 24px; }
.bf26-bar [data-bf-bar-view] { display: none; width: 100%; align-items: center; justify-content: space-between; gap: 16px; }
.bf26-bar[data-bf-bar-mode="offer"] [data-bf-bar-view="offer"],
.bf26-bar[data-bf-bar-mode="cart"]  [data-bf-bar-view="cart"] { display: flex; }
.bf26-bar__title { color: #FFFFFF; font-size: 16px; font-weight: 700; margin: 0; }
.bf26-bar__sub { color: #D6D6D6; font-size: 14px; margin: 2px 0 0; }
.bf26-bar__btns { display: flex; gap: 10px; flex-shrink: 0; }
@media (max-width: 767px) {
  .bf26-bar__inner { padding: 10px 16px; }
  .bf26-bar__sub { font-size: 13px; }
}
/* room at the bottom of the page so the bar never covers the footer */
html.bf-ready body { padding-bottom: 76px; }

/* ---------- Buttons (shared) ---------- */
.bf26-btn { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 12px 22px; border-radius: 6px; font: 700 15px/1.1 "BF26 Soleil", soleil, sans-serif; text-decoration: none !important; cursor: pointer; border: 1px solid transparent; transition: filter .15s, background .15s; }
.bf26-btn--primary { background: #e94f35; color: #FFFFFF !important; }
.bf26-btn--primary:hover { filter: brightness(.9); }
.bf26-btn--ghost { background: transparent; color: #FFFFFF !important; border-color: #D6D6D6; }
.bf26-btn--ghost:hover { background: rgba(255,255,255,.08); }

/* ---------- C6 savings meter ---------- */
.bf26-meter { background: #111; border: 1px solid #2a2a2a; border-radius: 10px; padding: 18px 20px; font-family: "BF26 Soleil", soleil, sans-serif; }
.bf26-meter__track { position: relative; height: 10px; background: #2a2a2a; border-radius: 999px; overflow: hidden; margin: 12px 0; }
.bf26-meter__fill { position: absolute; inset: 0 auto 0 0; width: 0; background: #e94f35; border-radius: 999px; transition: width .4s ease; }
.bf26-meter__steps { display: flex; justify-content: space-between; gap: 8px; }
.bf26-meter__step { color: #A8A8A8; font-size: 13px; font-weight: 700; }
.bf26-meter__step.is-hit { color: #FFFFFF; }
.bf26-meter__msg { color: #EDEDED; font-size: 15px; font-weight: 500; margin: 0; }
.bf26-meter.is-unlocked .bf26-meter__msg { color: #FFFFFF; }

/* ---------- C7 option selector ---------- */
.bf26-opts { display: grid; gap: 10px; }
[data-bf-option] { display: flex; justify-content: space-between; align-items: center; gap: 12px; width: 100%; text-align: left; padding: 14px 16px; background: #111; color: #EDEDED; border: 1px solid #2a2a2a; border-radius: 8px; font: 500 15px/1.3 "BF26 Soleil", soleil, sans-serif; cursor: pointer; }
[data-bf-option]:hover { border-color: #A8A8A8; }
[data-bf-option][aria-pressed="true"] { border-color: #e94f35; box-shadow: inset 0 0 0 1px #e94f35; color: #FFFFFF; }
[data-bf-sel][hidden], [data-bf-sel-plan-buy][hidden] { display: none !important; }

/* ---------- C11 accordions (pure CSS, <details>) ---------- */
.bf26-acc { border-top: 1px solid #2a2a2a; }
.bf26-acc details { border-bottom: 1px solid #2a2a2a; }
.bf26-acc summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 0; color: #FFFFFF; font: 700 16px/1.4 "BF26 Soleil", soleil, sans-serif; }
.bf26-acc summary::-webkit-details-marker { display: none; }
.bf26-acc summary::after { content: "+"; color: #e94f35; font-size: 22px; font-weight: 400; line-height: 1; flex-shrink: 0; }
.bf26-acc details[open] summary::after { content: "\2013"; }
.bf26-acc .bf26-acc__body { padding: 0 0 18px; color: #D6D6D6; font-size: 16px; line-height: 1.6; }

/* =====================================================================
   C10 Shopify Products plugin overrides - Pick n Mix section only
   Give the Divi section/module wrapping the shortcode the class: bf26-pnm
   CSS only - plugin markup untouched.
   ===================================================================== */

/* Our sticky bar replaces the plugin cart tab (drawer still used) */
html.bf-ready .chek-cart-tab,
html.bf-ready .chek-cart-tab.visible { display: none !important; }
html.bf-ready .chek-grid { padding-bottom: 0 !important; }

/* Filter bar - dark pills, coral when active */
.bf26-pnm .chek-filter-bar { color: #EDEDED; }
.bf26-pnm .chek-filter-bar .chek-filter-btn { border-color: #2a2a2a !important; color: #EDEDED !important; }
.bf26-pnm .chek-filter-bar .chek-filter-btn:hover { border-color: #A8A8A8 !important; background: transparent !important; }
.bf26-pnm .chek-filter-bar .chek-filter-btn[aria-pressed="true"] { background: #e94f35 !important; border-color: #e94f35 !important; color: #FFFFFF !important; }
.bf26-pnm .chek-filter-count { color: #A8A8A8; opacity: 1; }

/* Mobile: 2-column grid of filters, "All courses" spans both - no sideways scroll */
@media (max-width: 600px) {
  .bf26-pnm .chek-filter-bar { display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px; overflow: visible !important; flex-wrap: wrap !important; }
  .bf26-pnm .chek-filter-bar .chek-filter-btn { white-space: normal !important; width: 100%; padding: 10px 8px !important; font-size: 14px !important; border-radius: 8px !important; }
  .bf26-pnm .chek-filter-bar .chek-filter-btn[data-group="all"] { grid-column: 1 / -1; }
}

/* Cards - dark */
.bf26-pnm .chek-card { background: #111 !important; border: 1px solid #2a2a2a !important; border-radius: 10px !important; overflow: hidden; box-shadow: none !important; }
.bf26-pnm .chek-card-body h4 { color: #FFFFFF !important; font-family: "BF26 Soleil", soleil, sans-serif !important; }
.bf26-pnm .chek-card-price,
.bf26-pnm .chek-card-price * { color: #EDEDED !important; }
.bf26-pnm .chek-card-desc { color: #D6D6D6 !important; font-size: 14px !important; }
.bf26-pnm .chek-card-readmore { color: #EDEDED !important; font-size: 13px !important; }
.bf26-pnm .chek-card-readmore:hover { color: #FFFFFF !important; }
.bf26-pnm .chek-pill { background: #2a2a2a !important; color: #EDEDED !important; }

/* Card buttons */
.bf26-pnm .chek-card-footer { border-top: 1px solid #2a2a2a; }
.bf26-pnm .chek-card-footer .chek-link-view { background: #111 !important; color: #EDEDED !important; }
.bf26-pnm .chek-card-footer .chek-link-view:hover { color: #FFFFFF !important; background: #1a1a1a !important; }
.bf26-pnm .chek-card-footer .chek-atc-btn:not(.in-cart):not(.added) { background: #e94f35 !important; color: #FFFFFF !important; }
.bf26-pnm .chek-atc-btn.in-cart { background: #2a2a2a !important; border-color: #2a2a2a !important; color: #FFFFFF !important; }

/* Show all */
.bf26-pnm .chek-grid-more .chek-show-all { color: #FFFFFF !important; border-color: #D6D6D6 !important; }

/* Cart drawer - keep it readable on top of the dark page */
html.bf-ready .chek-cart-drawer .chek-cart-checkout-btn { background: #e94f35 !important; color: #FFFFFF !important; }

/* =====================================================================
   v1.1 - VIP additions
   ===================================================================== */

/* Coral countdown band above the nav (VIP + main + extended) */
.bf26-band { background: #e94f35; color: #FFFFFF; text-align: center; padding: 8px 16px; font-family: "BF26 Soleil", soleil, sans-serif; }
.bf26-band__label { display: block; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 6px; }
.bf26-band .bf26-cd__units { justify-content: center; gap: 6px; }
.bf26-band .bf26-cd__unit { min-width: 0; padding: 3px 8px; background: #000; border: 0; border-radius: 3px; }
.bf26-band .bf26-cd__num { display: inline; font-size: 14px; font-weight: 700; }
.bf26-band .bf26-cd__txt { display: inline; font-size: 13px; color: #FFFFFF; margin: 0 0 0 2px; }

/* VIP full - same look as closed */
.bf-full { background: #2a2a2a !important; color: #D6D6D6 !important; }

/* Tier boxes - savings meter variant: <div class="bf26-meter bf26-meter--tiers"> */
.bf26-meter--tiers { background: transparent; border: 0; padding: 0; }
.bf26-meter--tiers .bf26-meter__track { display: none; }
.bf26-meter--tiers .bf26-meter__steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.bf26-meter--tiers .bf26-meter__step { display: block; text-align: center; padding: 10px 6px; border: 1px solid #2a2a2a; border-radius: 6px; color: #D6D6D6; font-size: 13px; font-weight: 400; }
.bf26-meter--tiers .bf26-meter__step b { display: block; color: #FFFFFF; font-size: 16px; font-weight: 700; }
.bf26-meter--tiers .bf26-meter__step.is-hit { border-color: #e94f35; }
.bf26-meter--tiers .bf26-meter__step.is-hit b { color: #e94f35; }
.bf26-meter--tiers .bf26-meter__msg { margin-top: 10px; text-align: center; }

/* VIP sheet - bottom sheet on mobile, centred panel on desktop */
.bf26-sheet { position: fixed; inset: 0; z-index: 99990; background: rgba(0,0,0,0); transition: background .3s ease; display: flex; align-items: flex-end; justify-content: center; }
.bf26-sheet[hidden] { display: none !important; }
.bf26-sheet.is-open { background: rgba(0,0,0,.7); }
.bf26-sheet__panel { position: relative; width: 100%; max-height: 88vh; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain;
  background: #111; border: 1px solid #2a2a2a; border-bottom: 0; border-radius: 16px 16px 0 0; padding: 12px 20px 24px;
  color: #D6D6D6; font: 400 16px/1.55 "BF26 Soleil", soleil, sans-serif; transform: translateY(100%); transition: transform .3s ease; }
.bf26-sheet.is-open .bf26-sheet__panel { transform: translateY(0); }
.bf26-sheet__handle { display: block; width: 44px; height: 5px; margin: 0 auto 12px; background: #A8A8A8; border-radius: 999px; }
.bf26-sheet__close { position: absolute; top: 10px; right: 12px; width: 44px; height: 44px; background: transparent; border: 0; color: #EDEDED; font-size: 26px; line-height: 1; cursor: pointer; }
.bf26-sheet__close:hover { color: #FFFFFF; }
.bf26-sheet__eyebrow { color: #e94f35; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin: 0 0 8px; }
.bf26-sheet h2, .bf26-sheet h3 { color: #FFFFFF; font-family: "BF26 Soleil", soleil, sans-serif; }
.bf26-sheet__price { border: 1px solid #e94f35; border-radius: 10px; padding: 16px; text-align: center; margin-top: 20px; }
.bf26-sheet__price strong { display: block; color: #e94f35; font-size: 32px; font-weight: 900; line-height: 1.1; }
.bf26-sheet__price .bf26-btn { width: 100%; margin-top: 12px; }
html.bf-sheet-open, html.bf-sheet-open body { overflow: hidden; }
@media (min-width: 768px) {
  .bf26-sheet { align-items: center; padding: 24px; }
  .bf26-sheet__panel { max-width: 640px; border-radius: 16px; border-bottom: 1px solid #2a2a2a; transform: translateY(24px); opacity: 0; transition: transform .3s ease, opacity .3s ease; }
  .bf26-sheet.is-open .bf26-sheet__panel { transform: translateY(0); opacity: 1; }
  .bf26-sheet__handle { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .bf26-sheet, .bf26-sheet__panel, .bf26-bar { transition: none !important; }
}

/* =====================================================================
   v1.2 - page sections (smart page). Divi setup:
   - ONE Divi section, class bf26-page, ONE full-width row, all Code modules in that row
   - Band + nav module gets class bf26-sticky
   ===================================================================== */

/* Divi wrapper resets */
.et_pb_section.bf26-page { padding: 0 !important; background: #000 !important; }
.bf26-page .et_pb_row { width: 100% !important; max-width: none !important; padding: 0 !important; }
.bf26-page .et_pb_module { margin-bottom: 0 !important; }
.bf26-page .et_pb_code_inner > *:first-child { margin-top: 0; }
.bf26-sticky { position: sticky !important; top: 0; z-index: 9990; }
body.admin-bar .bf26-sticky { top: 32px; }
.bf26-sticky .bf26-nav { position: static; }

/* Base */
.bf26-sec, .bf26-foot, .bf26-bar, .bf26-sheet { font-family: "BF26 Soleil", soleil, Arial, Helvetica, sans-serif; -webkit-font-smoothing: antialiased; }
.bf26-sec { background: #000; color: #EDEDED; padding: 64px 0; border-bottom: 1px solid #222; }
.bf26-sec--alt { background: #0b0b0b; }
.bf26-sec *, .bf26-sheet * { box-sizing: border-box; }
.bf26-wrap { max-width: 1200px; margin: 0 auto; padding: 0 32px; }
.bf26-wrap--narrow { max-width: 760px; }
.bf26-anchor { position: relative; top: -1px; height: 0; }
.bf26-sec p, .bf26-sheet p { margin: 0 0 16px; font-size: 16px; line-height: 1.6; color: #D6D6D6; padding: 0; }
.bf26-sec ul, .bf26-sec ol, .bf26-sheet ul, .bf26-sheet ol { margin: 0; padding: 0; list-style: none; }
.bf26-sec h1, .bf26-sec h2, .bf26-sec h3, .bf26-sheet h2, .bf26-sheet h3 { color: #FFFFFF; font-family: "BF26 Soleil", soleil, Arial, Helvetica, sans-serif; padding: 0; }
.bf26-coral { color: #ff7a63 !important; }
.bf26-sec img, .bf26-sheet img { max-width: 100%; display: block; }

/* Type */
.bf26-eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 12px !important; color: #ff7a63 !important; font-size: 13px !important; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; line-height: 1.3 !important; }
.bf26-h1 { margin: 0 0 16px; font-size: 52px; font-weight: 300; line-height: 1.1; letter-spacing: -.01em; }
.bf26-h2 { margin: 0 0 28px; font-size: 38px; font-weight: 300; line-height: 1.15; }
.bf26-h3 { margin: 28px 0 12px; font-size: 18px; font-weight: 700; line-height: 1.3; }
.bf26-lead { font-size: 18px !important; font-weight: 300; color: #EDEDED !important; }
.bf26-small { font-size: 14px !important; color: #D6D6D6 !important; }
.bf26-note { margin-top: 24px !important; }
.bf26-num { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; background: #e94f35; color: #FFFFFF; font-size: 13px; font-weight: 700; letter-spacing: 0; flex-shrink: 0; }
.bf26-num--lg { width: 30px; height: 30px; font-size: 15px; margin-bottom: 14px; }
.bf26-label { margin: 0 0 10px !important; color: #D6D6D6 !important; font-size: 13px !important; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.bf26-link { display: inline-block; color: #ff7a63 !important; font-size: 15px; font-weight: 500; text-decoration: none !important; text-align: center; padding: 6px 0; }
.bf26-link:hover { color: #FFFFFF !important; }
.bf26-link[hidden] { display: none !important; }

/* Pills, tags, badges */
.bf26-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px !important; }
.bf26-pills li { font-size: 13px; color: #EDEDED; border: 1px solid #3a3a3a; border-radius: 999px; padding: 5px 12px; }
.bf26-tag { display: inline-block; background: #e94f35; color: #FFFFFF; font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; border-radius: 4px; padding: 3px 8px; line-height: 1.3; white-space: nowrap; }
.bf26-tag--img { position: absolute; top: 10px; left: 10px; text-transform: none; }
.bf26-tag--white { background: #FFFFFF; color: #e94f35; }
.bf26-badge-round { position: absolute; top: 14px; right: 14px; width: 72px; height: 72px; border-radius: 50%; background: #e94f35; color: #FFFFFF; display: flex; align-items: center; justify-content: center; text-align: center; font-size: 15px; font-weight: 700; line-height: 1.15; box-shadow: 0 6px 18px rgba(0,0,0,.4); }

/* Buttons */
.bf26-btn--block { display: flex; width: 100%; }
.bf26-btn--dark { background: #000; color: #FFFFFF !important; }
.bf26-btn--dark:hover { background: #1a1a1a; }
.bf26-btns { display: flex; flex-direction: column; gap: 10px; margin-top: 16px; }

/* Media / image placeholders */
.bf26-media { position: relative; aspect-ratio: 16 / 9; background: #161616; border: 1px solid #2a2a2a; border-radius: 12px; overflow: hidden; }
.bf26-media img, .bf26-media iframe, .bf26-media video { width: 100%; height: 100%; object-fit: cover; border: 0; }
img[src^="#LINK-"] { background: #1c1c1c repeating-linear-gradient(45deg, #1c1c1c 0 12px, #222 12px 24px); min-height: 100%; color: transparent; }

/* Pre-sale teaser */
.bf26-pre { padding: 96px 0; text-align: center; border-bottom: 0; }
.bf26-pre__inner { max-width: 820px; }
.bf26-pre .bf26-eyebrow { justify-content: center; }
.bf26-cd--center { justify-content: center; flex-direction: column; gap: 12px; margin-top: 12px; }

/* Hero */
.bf26-hero { padding: 56px 0 64px; }
.bf26-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-areas: "copy media" "buy media"; gap: 24px 48px; align-items: start; }
.bf26-hero__copy { grid-area: copy; }
.bf26-hero__media { grid-area: media; }
.bf26-hero__buy { grid-area: buy; }

/* Option selector cards */
.bf26-opt { display: flex !important; gap: 12px; align-items: flex-start !important; justify-content: flex-start !important; padding: 16px !important; }
.bf26-opt__radio { width: 20px; height: 20px; border-radius: 50%; border: 2px solid #A8A8A8; margin-top: 2px; flex-shrink: 0; position: relative; }
.bf26-opt[aria-pressed="true"] .bf26-opt__radio { border-color: #e94f35; }
.bf26-opt[aria-pressed="true"] .bf26-opt__radio::after { content: ""; position: absolute; inset: 3px; border-radius: 50%; background: #e94f35; }
.bf26-opt__body { display: flex; flex-direction: column; gap: 4px; min-width: 0; flex: 1; }
.bf26-opt__top { display: flex; justify-content: space-between; align-items: center; gap: 8px; color: #FFFFFF; font-size: 17px; }
.bf26-opt__line { color: #EDEDED; font-size: 15px; }
.bf26-opt__sub { color: #D6D6D6; font-size: 14px; }
.bf26-opt__price { color: #ff7a63; font-size: 24px; font-weight: 700; margin-top: 6px; }
.bf26-opt[aria-pressed="true"] { background: #1a0d0a !important; }

/* Tiles (Why VIP) */
.bf26-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.bf26-tile { background: #121212; border: 1px solid #2a2a2a; border-radius: 10px; padding: 22px; }
.bf26-tile h3 { margin: 0 0 8px; font-size: 18px; font-weight: 700; line-height: 1.3; }
.bf26-tile p { margin: 0 !important; font-size: 15px !important; }

/* Cards */
.bf26-cards { display: grid; gap: 20px; }
.bf26-cards--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bf26-cards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.bf26-card { display: flex; flex-direction: column; background: #121212; border: 1px solid #2a2a2a; border-radius: 12px; overflow: hidden; }
.bf26-card--vip { border-color: #e94f35; }
.bf26-card__img { position: relative; aspect-ratio: 16 / 9; background: #1c1c1c; }
.bf26-card__img--sq { aspect-ratio: 1 / 1; }
.bf26-card__img img { width: 100%; height: 100%; object-fit: cover; }
.bf26-card__body { display: flex; flex-direction: column; gap: 6px; padding: 18px 20px 20px; flex: 1; }
.bf26-card__body h3 { margin: 0; font-size: 20px; font-weight: 700; line-height: 1.25; }
.bf26-card--sm .bf26-card__body { padding: 14px 14px 16px; }
.bf26-card--sm .bf26-card__body h3 { font-size: 16px; }
.bf26-card--sm .bf26-btn { margin-top: auto; }
.bf26-card__eyebrow { margin: 0 !important; color: #ff7a63 !important; font-size: 13px !important; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.bf26-card__sub { margin: 0 !important; font-size: 14px !important; color: #EDEDED !important; }
.bf26-card__price { margin: 6px 0 10px !important; font-size: 15px !important; color: #D6D6D6 !important; }
.bf26-card__price b { color: #FFFFFF; font-size: 20px; }
.bf26-card__price s { color: #A8A8A8; }
.bf26-card__btns { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: auto; }
.bf26-ticks li { position: relative; padding-left: 24px; margin: 0 0 6px; font-size: 15px; line-height: 1.5; color: #EDEDED; }
.bf26-ticks li::before { content: "\2713"; position: absolute; left: 0; color: #ff7a63; font-weight: 700; }

/* Pick n Mix */
.bf26-pnm-head { padding-bottom: 24px; border-bottom: 0; }
.bf26-pnm-grid { background: #000; padding: 0 0 64px; border-bottom: 1px solid #222; }
.bf26-meter--tiers { max-width: 560px; }

/* Final CTA */
.bf26-final { background: #e94f35; text-align: center; border-bottom: 0; }
.bf26-final .bf26-h2 { color: #FFFFFF; font-weight: 700; margin: 18px 0 24px; }
.bf26-final .bf26-btn--dark { min-width: 280px; }
.bf26-cd--dark .bf26-cd__label { color: #FFFFFF; }
.bf26-cd--dark .bf26-cd__unit { background: #000; border-color: #000; }
.bf26-cd--dark .bf26-cd__txt { color: #EDEDED; }
.bf26-foot { background: #000; text-align: center; padding: 20px 16px; }
.bf26-foot p { margin: 0; color: #A8A8A8; font-size: 13px; }

/* VIP sheet content */
.bf26-sheet .bf26-h2 { font-size: 26px; font-weight: 700; margin: 0 0 12px; }
.bf26-flow { display: flex; flex-wrap: wrap; gap: 8px; }
.bf26-flow li { font-size: 13px; color: #EDEDED; border: 1px solid #3a3a3a; border-radius: 999px; padding: 5px 12px; }
.bf26-flow li:not(:last-child)::after { content: " \2192"; color: #ff7a63; }
.bf26-timeline { display: grid; grid-template-columns: 72px 1fr; gap: 10px 14px; margin: 0 0 16px; }
.bf26-timeline dt { color: #ff7a63; font-size: 13px; font-weight: 700; text-transform: uppercase; padding-top: 2px; }
.bf26-timeline dd { margin: 0; color: #EDEDED; font-size: 15px; line-height: 1.5; }
.bf26-sheet__price { color: #EDEDED; }

/* Tablet */
@media (max-width: 980px) {
  .bf26-h1 { font-size: 40px; }
  .bf26-h2 { font-size: 30px; }
  .bf26-tiles, .bf26-cards--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Mobile */
@media (max-width: 767px) {
  .bf26-sec { padding: 40px 0; }
  .bf26-wrap { padding: 0 16px; }
  .bf26-h1 { font-size: 32px; font-weight: 700; line-height: 1.12; }
  .bf26-h2 { font-size: 24px; font-weight: 700; margin-bottom: 20px; }
  .bf26-lead { font-size: 16px !important; }
  .bf26-hero { padding: 28px 0 40px; }
  .bf26-hero__grid { grid-template-columns: 1fr; grid-template-areas: "copy" "media" "buy"; gap: 20px; }
  .bf26-badge-round { width: 60px; height: 60px; font-size: 13px; top: 10px; right: 10px; }
  .bf26-cards--2 { grid-template-columns: 1fr; }
  .bf26-tiles, .bf26-cards--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .bf26-tile { padding: 14px; }
  .bf26-tile h3 { font-size: 15px; }
  .bf26-tile p { font-size: 13px !important; }
  .bf26-card--sm .bf26-card__body h3 { font-size: 14px; }
  .bf26-card--sm .bf26-btn { padding: 10px 8px; font-size: 14px; }
  .bf26-btn--block-m { display: flex; width: 100%; }
  .bf26-pre { padding: 56px 0; }
  .bf26-final .bf26-btn--dark { min-width: 0; }
  .bf26-nav__links a { font-size: 13px; }
}
.bf26-card__price.bf26-coral { color: #ff7a63 !important; }
.bf26-pnm .chek-filter-bar .chek-filter-btn:not([aria-pressed="true"]),
.bf26-pnm .chek-grid-more .chek-show-all { background: transparent !important; }
.bf26-pnm .chek-card, .bf26-pnm .chek-card * , .bf26-pnm .chek-filter-btn, .bf26-pnm .chek-show-all { font-family: "BF26 Soleil", soleil, Arial, Helvetica, sans-serif !important; }
.bf26-pnm .chek-grid-more .chek-show-all { width: 100%; max-width: 560px; border-radius: 6px !important; }
.bf26-wrap, .bf26-pnm-grid, .bf26-pnm-grid * { box-sizing: border-box; }

/* Desktop hero: copy + media on top, option picker full width underneath (no dead space) */
@media (min-width: 981px) {
  .bf26-hero__grid { grid-template-areas: "copy media" "buy buy"; align-items: center; gap: 32px 48px; }
  .bf26-hero__buy .bf26-select { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 0 32px; align-items: start; padding-top: 28px; border-top: 1px solid #222; }
  .bf26-hero__buy .bf26-label { grid-column: 1 / -1; }
  .bf26-hero__buy .bf26-btns { margin-top: 0; }
}
.bf26-bar.is-empty[data-bf-bar-mode="offer"] { transform: translateY(110%) !important; }
.bf26-sheet .bf26-sheet__eyebrow { color: #ff7a63; font-size: 13px; }

/* v1.2.1 - "Your Blueprint" vertical timeline */
.bf26-blueprint { position: relative; display: grid; gap: 12px; margin: 8px 0 0 !important; }
.bf26-blueprint li { position: relative; display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 12px; align-items: start; }
.bf26-blueprint li:not(:last-child)::before { content: ""; position: absolute; left: 27px; top: 34px; bottom: -12px; width: 2px; background: #5a2318; }
.bf26-blueprint__m { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; height: 34px; border-radius: 6px; background: #e94f35; color: #FFFFFF; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.bf26-blueprint__card { background: #121212; border: 1px solid #2a2a2a; border-radius: 10px; padding: 12px 14px; }
.bf26-blueprint__card h3 { margin: 0 0 4px; font-size: 16px; font-weight: 700; }
.bf26-blueprint__card p { margin: 0 !important; font-size: 14px !important; }
@media (min-width: 768px) {
  .bf26-blueprint li { grid-template-columns: 72px minmax(0, 1fr); gap: 18px; }
  .bf26-blueprint li:not(:last-child)::before { left: 35px; }
  .bf26-blueprint__card { padding: 16px 20px; }
  .bf26-blueprint__card h3 { font-size: 18px; }
}

/* =====================================================================
   v1.3 - product pages (GHL)
   GHL: every section/row/column padding 0, full width, page background #000
   ===================================================================== */
.bf26-fixed { position: fixed; top: 0; left: 0; right: 0; z-index: 9990; }
.bf26-fixed .bf26-nav { position: static; }
[data-bf-page][hidden] { display: none !important; }

.bf26-prodlogo { width: 230px; height: auto; margin: 0 0 20px; }
.bf26-prodtitle { margin: 0 0 8px !important; color: #FFFFFF !important; font-size: 15px !important; font-weight: 700; line-height: 1.4 !important; }
.bf26-center { text-align: center; }
.bf26-mt { margin-top: 40px !important; }

/* Closed / sold-out VIP option in the picker */
.bf26-opt.is-closed { opacity: .55; cursor: not-allowed !important; background: #111 !important; border-color: #2a2a2a !important; box-shadow: none !important; }
.bf26-opt.is-closed .bf26-tag { background: #2a2a2a; color: #EDEDED; }
.bf26-opt.is-closed .bf26-opt__price { color: #D6D6D6; }

/* Who built it */
.bf26-quote { display: flex; gap: 20px; align-items: flex-start; margin: 0 0 24px; padding: 22px; background: #121212; border: 1px solid #2a2a2a; border-radius: 12px; }
.bf26-quote__img { width: 96px; height: 96px; border-radius: 50%; object-fit: cover; flex-shrink: 0; background: #1c1c1c; }
.bf26-quote blockquote { margin: 0; padding: 0; border: 0; }
.bf26-quote blockquote p { color: #FFFFFF !important; font-size: 18px !important; font-weight: 300; line-height: 1.5 !important; margin: 0 0 10px !important; }
.bf26-quote figcaption { color: #D6D6D6; font-size: 14px; }

/* 7 courses */
.bf26-courses { display: grid; gap: 10px; }
.bf26-courses li { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 14px; align-items: center; background: #121212; border: 1px solid #2a2a2a; border-radius: 10px; padding: 12px 14px; }
.bf26-courses__n { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 8px; background: #e94f35; color: #FFFFFF; font-size: 18px; font-weight: 700; }
.bf26-courses h3 { margin: 0 0 2px; font-size: 16px; font-weight: 700; line-height: 1.3; }
.bf26-courses p { margin: 0 !important; font-size: 14px !important; }

/* Two-column split (text + media) */
.bf26-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; align-items: center; }

/* Tables */
.bf26-table { width: 100%; border-collapse: separate; border-spacing: 0; background: #121212; border: 1px solid #2a2a2a; border-radius: 10px; overflow: hidden; font-family: "BF26 Soleil", soleil, Arial, Helvetica, sans-serif; margin: 0 0 16px; }
.bf26-table th, .bf26-table td { padding: 14px 16px; text-align: left; vertical-align: top; font-size: 15px; line-height: 1.45; color: #EDEDED; border-bottom: 1px solid #2a2a2a; }
.bf26-table thead th { color: #FFFFFF; font-weight: 700; background: #181818; }
.bf26-table tr:last-child td, .bf26-table tr:last-child th { border-bottom: 0; }
.bf26-table td + td, .bf26-table th + th { border-left: 1px solid #2a2a2a; }
.bf26-table--compare thead th:last-child { color: #ff7a63; }
.bf26-dash { color: #A8A8A8 !important; }
.bf26-table--details th { width: 34%; color: #D6D6D6; font-weight: 500; }

/* VIP section */
.bf26-vipsec { background: #150b08; border-top: 2px solid #e94f35; }
.bf26-vipsec__head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.bf26-vipsec__icon { width: 36px; height: 36px; }
.bf26-pricebox { margin-top: 24px; background: #0e0e0e; }
.bf26-pricebox .bf26-link { display: block; margin-top: 8px; }

/* Stories + guarantee */
.bf26-reviews { display: grid; gap: 14px; }
.bf26-review { margin: 0; padding: 20px; background: #121212; border: 1px solid #2a2a2a; border-radius: 12px; }
.bf26-review blockquote { margin: 8px 0; padding: 0; border: 0; }
.bf26-review blockquote p { color: #FFFFFF !important; margin: 0 !important; }
.bf26-review figcaption { color: #D6D6D6; font-size: 14px; }
.bf26-stars { color: #ff7a63; font-size: 18px; letter-spacing: 2px; }
.bf26-guarantee { display: flex; gap: 18px; align-items: center; padding: 20px; background: #121212; border: 1px solid #2a2a2a; border-radius: 12px; margin: 0 0 16px; }
.bf26-guarantee img { width: 80px; height: 80px; flex-shrink: 0; }
.bf26-guarantee h3 { margin: 0 0 4px; font-size: 18px; font-weight: 700; }
.bf26-guarantee p { margin: 0 !important; }

/* Final CTA (product page) */
.bf26-final__btns { display: flex; flex-direction: column; gap: 10px; align-items: center; max-width: 420px; margin: 0 auto; }
.bf26-final__btns .bf26-btn { width: 100%; }
.bf26-btn--outline-dark { background: transparent; color: #000 !important; border: 2px solid #000; }
.bf26-btn--outline-dark:hover { background: rgba(0,0,0,.08); }
.bf26-backlink { display: inline-block; margin-top: 18px; color: #FFFFFF !important; font-size: 15px; text-decoration: none !important; font-family: "BF26 Soleil", soleil, Arial, Helvetica, sans-serif; }
.bf26-backlink:hover { text-decoration: underline !important; }

/* Sticky bar with product icon */
.bf26-bar__id { display: flex; align-items: center; gap: 12px; min-width: 0; }
.bf26-bar__icon { width: 32px; height: 32px; flex-shrink: 0; }
.bf26-bar__id p { margin: 0; }

@media (max-width: 767px) {
  .bf26-split { grid-template-columns: 1fr; gap: 20px; }
  .bf26-quote { flex-direction: column; gap: 14px; padding: 18px; }
  .bf26-quote__img { width: 72px; height: 72px; }
  .bf26-quote blockquote p { font-size: 16px !important; }
  .bf26-prodlogo { width: 200px; }
  .bf26-table th, .bf26-table td { padding: 12px; font-size: 14px; }
  .bf26-guarantee { flex-direction: column; align-items: flex-start; }
  .bf26-bar__icon { display: none; }
}
@media (max-width: 767px) { .bf26-bar__title { font-size: 15px; } .bf26-bar__sub { font-size: 13px; } }

/* =====================================================================
   v1.4 - Gavin's final IHBS VIP layout (13 Oct)
   ===================================================================== */
.bf26-badge-white { display: inline-block; margin: 0 0 14px !important; padding: 5px 10px; background: #FFFFFF; color: #000 !important; font-size: 13px !important; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; line-height: 1.2 !important; border-radius: 3px; }
.bf26-sub { color: #EDEDED !important; }
.bf26-link--sm { font-size: 14px; }
.bf26-link--left { text-align: left; padding: 0 0 6px; }
.bf26-guarantee-line { margin: 2px 0 0 !important; text-align: center; color: #D6D6D6 !important; font-size: 14px !important; }

/* Your Blueprint: month accordion (one open at a time via <details name>) */
.bf26-months { display: grid; gap: 8px; margin: 8px 0 28px; }
.bf26-months details { background: #121212; border: 1px solid #2a2a2a; border-radius: 10px; overflow: hidden; }
.bf26-months details[open] { border-color: #5a2318; background: #150b08; }
.bf26-months summary { list-style: none; cursor: pointer; display: grid; grid-template-columns: 52px minmax(0, 1fr) 20px; gap: 12px; align-items: center; padding: 12px 14px; }
.bf26-months summary::-webkit-details-marker { display: none; }
.bf26-months summary::after { content: "+"; color: #ff7a63; font-size: 22px; line-height: 1; text-align: right; font-family: "BF26 Soleil", soleil, Arial, sans-serif; }
.bf26-months details[open] summary::after { content: "\2013"; }
.bf26-months__m { display: flex; align-items: center; justify-content: center; height: 40px; border-radius: 8px; background: #e94f35; color: #FFFFFF; font: 700 13px/1 "BF26 Soleil", soleil, Arial, sans-serif; letter-spacing: .06em; text-transform: uppercase; }
.bf26-months__t { display: flex; flex-direction: column; gap: 2px; color: #FFFFFF; font: 700 16px/1.3 "BF26 Soleil", soleil, Arial, sans-serif; }
.bf26-months__t small { color: #D6D6D6; font-size: 13px; font-weight: 400; }
.bf26-months__body { padding: 0 14px 16px 78px; color: #D6D6D6; font: 400 15px/1.6 "BF26 Soleil", soleil, Arial, sans-serif; }

/* Two ways to build it */
.bf26-two { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0 0 18px; }
.bf26-two__card { background: #121212; border: 1px solid #2a2a2a; border-radius: 10px; padding: 16px; font-family: "BF26 Soleil", soleil, Arial, sans-serif; }
.bf26-two__card--vip { border-color: #e94f35; background: #150b08; }
.bf26-two__card .bf26-tag { margin-bottom: 8px; }
.bf26-two__card h4 { margin: 0 0 6px; color: #FFFFFF; font-size: 16px; font-weight: 700; line-height: 1.3; padding: 0; }
.bf26-two__card p { margin: 0 !important; font-size: 14px !important; }

/* Cards: extra text lines */
.bf26-card__text { margin: 0 !important; font-size: 15px !important; color: #EDEDED !important; }
.bf26-card--sm .bf26-card__text { font-size: 13px !important; color: #D6D6D6 !important; line-height: 1.45 !important; }
.bf26-card__vip { margin: 2px 0 0 !important; font-size: 14px !important; color: #ff7a63 !important; }
.bf26-card__vip b { color: #ff7a63; }
.bf26-card .bf26-label { margin-top: 8px !important; }
.bf26-opts--sm .bf26-opt { padding: 12px !important; }
.bf26-opts--sm .bf26-opt__top { font-size: 15px; }
.bf26-opt__price--sm { font-size: 17px; }
.bf26-card .bf26-select .bf26-card__btns, .bf26-card__body.bf26-select .bf26-card__btns { margin-top: 12px; }

/* Questions: group labels */
.bf26-acc-group { margin: 24px 0 4px !important; color: #D6D6D6 !important; font-size: 13px !important; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.bf26-acc + .bf26-btn { margin-top: 24px; }

/* Final banner */
.bf26-final__q { margin: 14px 0 0 !important; color: #FFFFFF !important; font-size: 15px !important; }
.bf26-final__q a { color: #FFFFFF; text-decoration: underline; }

/* VIP sheet v2 */
.bf26-imagine { font-style: italic; color: #EDEDED !important; }
.bf26-sheet__value { margin: 20px 0 6px !important; color: #FFFFFF !important; font-size: 18px !important; font-weight: 700; }
.bf26-sheet__urgency { color: #ff7a63 !important; font-size: 14px !important; font-weight: 700; }
.bf26-sheet__price .bf26-btn + .bf26-btn { margin-top: 10px; }

@media (max-width: 767px) {
  .bf26-months summary { grid-template-columns: 46px minmax(0, 1fr) 18px; gap: 10px; padding: 10px 12px; }
  .bf26-months__m { height: 36px; font-size: 12px; }
  .bf26-months__t { font-size: 15px; }
  .bf26-months__body { padding: 0 12px 14px 12px; }
  .bf26-two__card { padding: 12px; }
  .bf26-two__card h4 { font-size: 15px; }
  .bf26-two__card p { font-size: 13px !important; }
}
.bf26-sec .bf26-badge-white { padding: 6px 10px !important; }
.bf26-card__btns .bf26-btn { padding-left: 10px; padding-right: 10px; }

/* =====================================================================
   v1.5 - Gavin's final IHBS product page + Mastery Collection bonus (13 Oct)
   ===================================================================== */
.bf26-bonus { margin: 12px 0 0 !important; color: #ff7a63 !important; font-size: 14px !important; font-weight: 700; line-height: 1.4 !important; }
.bf26-bonus--sm { margin-top: 8px !important; font-size: 13px !important; font-weight: 500; }
.bf26-bonus--plain { margin: 0 0 8px !important; color: #EDEDED !important; font-weight: 400; }
.bf26-ticks--lg li { font-size: 16px; margin-bottom: 10px; }
.bf26-ul { color: inherit !important; text-decoration: underline !important; }
.bf26-mt-sm { margin-top: 12px !important; }

/* Course accordion: number badge + Inside / You finish with */
.bf26-months--courses .bf26-months__m { font-size: 16px; }
.bf26-inside { margin: 4px 0 8px !important; color: #D6D6D6 !important; font-size: 13px !important; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.bf26-finish { margin-top: 12px; padding: 12px 14px; background: #000; border-radius: 8px; color: #FFFFFF; font-size: 15px; line-height: 1.5; }
.bf26-finish span { display: block; margin-bottom: 4px; color: #ff7a63; font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }

/* Who built it */
.bf26-media--43 { aspect-ratio: 4 / 3; margin-bottom: 14px; }
.bf26-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0 0 20px; }
.bf26-stats div { background: #121212; border: 1px solid #2a2a2a; border-radius: 10px; padding: 12px 8px; text-align: center; font-family: "BF26 Soleil", soleil, Arial, sans-serif; }
.bf26-stats b { display: block; color: #ff7a63; font-size: 20px; font-weight: 700; line-height: 1.2; }
.bf26-stats span { display: block; margin-top: 4px; color: #D6D6D6; font-size: 13px; line-height: 1.35; }
.bf26-pull { margin: 20px 0; padding: 4px 0 4px 16px; border: 0; border-left: 3px solid #e94f35; }
.bf26-pull p { margin: 0 0 8px !important; color: #FFFFFF !important; font-style: italic; font-size: 17px !important; }
.bf26-pull cite { color: #D6D6D6; font-size: 13px; font-style: normal; }
.bf26-placeholder { border: 1px dashed #3a3a3a; border-radius: 10px; padding: 14px; text-align: center; color: #A8A8A8; font-size: 14px; font-family: "BF26 Soleil", soleil, Arial, sans-serif; }

/* Who it's for */
.bf26-pills--wrap { margin: 4px 0 20px !important; }
.bf26-notfor { background: #121212; border: 1px solid #2a2a2a; border-radius: 10px; padding: 16px; font-family: "BF26 Soleil", soleil, Arial, sans-serif; }
.bf26-notfor h3 { margin: 0 0 8px; font-size: 16px; font-weight: 700; }
.bf26-notfor li { color: #D6D6D6; font-size: 15px; line-height: 1.5; margin: 0 0 4px; padding-left: 14px; position: relative; }
.bf26-notfor li::before { content: "\00b7"; position: absolute; left: 2px; color: #D6D6D6; font-weight: 700; }

/* VIP schedule accordion */
.bf26-months--sched .bf26-months__t { font-size: 16px; }
.bf26-months--sched .bf26-months__body { padding-left: 14px; }
.bf26-sched { display: grid; gap: 0; }
.bf26-sched li { display: grid; grid-template-columns: 84px minmax(0, 1fr) auto; gap: 10px; align-items: start; padding: 9px 0; border-top: 1px solid #2a2a2a; font-size: 14px; line-height: 1.4; }
.bf26-sched__d { color: #ff7a63; font-weight: 700; font-size: 13px; }
.bf26-sched__w { color: #EDEDED; }
.bf26-chip { display: inline-block; padding: 2px 7px; border: 1px solid #3a3a3a; border-radius: 3px; color: #D6D6D6; font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; }
.bf26-chip--mentor { background: #e94f35; border-color: #e94f35; color: #FFFFFF; }

/* Bonus block */
.bf26-bonusblock-sec { padding-top: 0; }
.bf26-bonusblock { padding: 18px; background: #150b08; border: 1px solid #e94f35; border-radius: 12px; }
.bf26-bonusblock h3 { margin: 6px 0 8px; font-size: 20px; font-weight: 700; }
.bf26-bonusblock p:last-child { margin: 0 !important; }

/* Your options (plan cards) */
.bf26-plans { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; align-items: stretch; }
.bf26-plan { display: flex; flex-direction: column; background: #121212; border: 1px solid #2a2a2a; border-radius: 12px; padding: 18px; font-family: "BF26 Soleil", soleil, Arial, sans-serif; }
.bf26-plan--vip { background: #150b08; border-color: #e94f35; }
.bf26-plan__top { display: flex; justify-content: space-between; gap: 10px; align-items: flex-start; }
.bf26-plan h3 { margin: 0 0 6px; font-size: 17px; font-weight: 700; line-height: 1.3; }
.bf26-plan__line { margin: 0 !important; font-size: 14px !important; color: #EDEDED !important; }
.bf26-plan__price { margin: 8px 0 0 !important; color: #ff7a63 !important; font-size: 28px !important; font-weight: 700; line-height: 1.1 !important; }
.bf26-plan__price--w { color: #FFFFFF !important; }
.bf26-plan__sub { margin: 2px 0 12px !important; font-size: 14px !important; }
.bf26-plan .bf26-ticks li { font-size: 14px; }
.bf26-plan__note { margin: 6px 0 14px !important; color: #D6D6D6 !important; font-size: 13px !important; }
.bf26-plan .bf26-btn { margin-top: auto; }
.bf26-plan.is-closed { opacity: .55; border-color: #2a2a2a; background: #111; }
.bf26-plan.is-closed .bf26-tag { background: #2a2a2a; color: #EDEDED; }

@media (max-width: 767px) {
  .bf26-plans { grid-template-columns: 1fr; }
  .bf26-stats b { font-size: 17px; }
  .bf26-sched li { grid-template-columns: 74px minmax(0, 1fr); }
  .bf26-sched .bf26-chip { grid-column: 2; justify-self: start; }
}

/* =====================================================================
   v1.6 - staging feedback (14 Oct)
   ===================================================================== */
/* IHBS logo: never stretch, whatever the theme sets on images */
.bf26-sec img.bf26-prodlogo { width: 230px !important; max-width: 70% !important; height: auto !important; max-height: none !important; object-fit: contain; aspect-ratio: auto; }
@media (max-width: 767px) { .bf26-sec img.bf26-prodlogo { width: 200px !important; } }

/* Desktop hero picker: options + bonus left, buttons right - no empty column */
@media (min-width: 981px) {
  .bf26-hero__buy .bf26-select { grid-template-areas: "label label" "opts btns" "bonus btns"; grid-template-rows: auto auto 1fr; }
  .bf26-hero__buy .bf26-label { grid-area: label; }
  .bf26-hero__buy .bf26-opts { grid-area: opts; }
  .bf26-hero__buy .bf26-bonus { grid-area: bonus; align-self: start; }
  .bf26-hero__buy .bf26-btns { grid-area: btns; align-self: start; }
}

/* Countdown: d / h / m / s beside the number (same as the header band) */
.bf26-cd__unit { display: inline-flex; align-items: baseline; justify-content: center; gap: 2px; min-width: 0; padding: 8px 10px; }
.bf26-cd__num { display: inline; }
.bf26-cd__txt { display: inline; margin: 0; }

/* Accordion animation (driven by bf26.js) */
.bf26-anim { overflow: hidden; }

/* Pick 'n Mix: red progress bar that fills (10 / 20 / 30%) */
.bf26-meter--bar { max-width: 640px; background: transparent; border: 0; padding: 0; }
.bf26-meter--bar .bf26-meter__track { position: relative; height: 12px; margin: 0 0 10px; background: #2a2a2a; border-radius: 999px; overflow: hidden; }
.bf26-meter--bar .bf26-meter__fill { background: #e94f35; transition: width .5s ease; }
.bf26-meter--bar .bf26-meter__track::before, .bf26-meter--bar .bf26-meter__track::after { content: ""; position: absolute; top: 0; bottom: 0; width: 2px; background: #000; z-index: 1; }
.bf26-meter--bar .bf26-meter__track::before { left: 33.333%; }
.bf26-meter--bar .bf26-meter__track::after { left: 66.666%; }
.bf26-meter--bar .bf26-meter__steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; }
.bf26-meter--bar .bf26-meter__step { text-align: right; padding-right: 6px; color: #A8A8A8; font-size: 13px; font-weight: 400; line-height: 1.3; }
.bf26-meter--bar .bf26-meter__step b { display: block; color: #D6D6D6; font-size: 16px; font-weight: 700; }
.bf26-meter--bar .bf26-meter__step.is-hit b { color: #ff7a63; }
.bf26-meter--bar .bf26-meter__step.is-hit { color: #EDEDED; }
.bf26-meter--bar .bf26-meter__msg { margin: 12px 0 0 !important; text-align: left; color: #EDEDED !important; font-weight: 500; }
.bf26-meter--bar.is-unlocked .bf26-meter__msg { color: #ff7a63 !important; }

/* Pick 'n Mix grid: 4 best sellers in one row on desktop, lined up with the heading */
.bf26-pnm .chek-grid-wrap { max-width: none !important; margin: 0 !important; padding: 0 !important; }
.bf26-pnm .chek-grid { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 16px !important; margin: 0 !important; padding: 0 !important; }
.bf26-pnm .chek-grid > .chek-card { width: auto !important; max-width: none !important; margin: 0 !important; flex: none !important; }
@media (max-width: 980px) { .bf26-pnm .chek-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 480px) { .bf26-pnm .chek-grid { gap: 10px !important; } }

/* v1.6.1 - Divi wraps the page in containers with overflow:hidden, which kills position:sticky.
   Only on BF pages (html.bf-ready is set by bf26.js). */
html.bf-ready #page-container, html.bf-ready #et-boc, html.bf-ready #et-main-area, html.bf-ready #main-content,
html.bf-ready .et_builder_inner_content, html.bf-ready .et_pb_section.bf26-page, html.bf-ready .bf26-page .et_pb_row { overflow: visible !important; }
html.bf-ready #page-container { padding-top: 0 !important; }
/* Loaded-check: this marker should exist if the v1.6.1 stylesheet is live */
html.bf-ready { --bf26-css: "2.19.1"; }

/* v1.6.2 - sticky header shim (bf26.js pins the band + nav with position:fixed once you scroll past it) */
.bf26-sticky.is-stuck { position: fixed !important; top: 0; left: 0; right: 0; width: 100% !important; z-index: 9990; margin: 0 !important; }
body.admin-bar .bf26-sticky.is-stuck { top: 32px; }
@media (max-width: 782px) { body.admin-bar .bf26-sticky.is-stuck { top: 0; } }
.bf26-sticky-spacer { height: 0; }

/* v1.6.3 - pinned header is moved to <body> while stuck, so keep its look there */
body > .bf26-sticky.is-stuck { transform: none !important; animation: none !important; }
body > .bf26-sticky.is-stuck .et_pb_code_inner > *:first-child { margin-top: 0; }

/* v1.6.4 - Divi adds list bullets + padding to <ul>/<li> inside its content area; clear them on the nav */
.bf26-nav ul.bf26-nav__links, .bf26-nav ul.bf26-nav__links li { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.bf26-nav ul.bf26-nav__links li::before, .bf26-nav ul.bf26-nav__links li::marker { content: none !important; display: none !important; }

/* v1.6.5 - pinned header: countdown goes on one line in the red bar */
.bf26-sticky .bf26-band { max-height: 200px; overflow: hidden; transition: max-height .25s ease, padding .25s ease; }
.bf26-sticky.is-stuck .bf26-band { padding: 6px 16px; }
.bf26-sticky.is-stuck .bf26-band [data-bf-countdown] { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 4px 12px; }
.bf26-sticky.is-stuck .bf26-band__label { display: inline; margin: 0; }
.bf26-sticky.is-stuck .bf26-band .bf26-cd__unit { padding: 2px 7px; }
@media (max-width: 480px) {
  .bf26-sticky.is-stuck .bf26-band { padding: 5px 10px; }
  .bf26-sticky.is-stuck .bf26-band [data-bf-countdown] { gap: 4px 8px; }
  .bf26-sticky.is-stuck .bf26-band__label { font-size: 11px; letter-spacing: .04em; }
  .bf26-sticky.is-stuck .bf26-band .bf26-cd__units { gap: 4px; }
  .bf26-sticky.is-stuck .bf26-band .bf26-cd__unit { padding: 2px 5px; }
  .bf26-sticky.is-stuck .bf26-band .bf26-cd__num, .bf26-sticky.is-stuck .bf26-band .bf26-cd__txt { font-size: 12px; }
}
/* Only one countdown on screen: header countdown slides away while the final banner countdown is visible */
.bf26-sticky.is-stuck.is-band-off .bf26-band { max-height: 0; padding-top: 0; padding-bottom: 0; }

/* v1.7.1 - VIP sheet: shorter on desktop, close button always visible, no Divi bullets */
.bf26-sheet ul, .bf26-sheet ul li { list-style: none !important; }
.bf26-sheet ul li::marker { content: none; }
.bf26-sheet__close { position: sticky; top: 0; float: right; margin: -4px -8px 0 8px; z-index: 2; background: #111; border-radius: 50%; }
@media (min-width: 768px) {
  .bf26-sheet__panel { max-height: min(78vh, 680px); padding: 18px 28px 24px; }
  .bf26-sheet .bf26-h2 { font-size: 24px; }
}

/* v1.7.2 - theme list bullets showing before ticks / pills / "not for you" dots */
.bf26-sec ul, .bf26-sec ol, .bf26-sec ul li, .bf26-sec ol li,
.bf26-sheet ul li, .bf26-foot ul li { list-style: none !important; list-style-type: none !important; background-image: none !important; }
.bf26-sec ul li::marker, .bf26-sec ol li::marker, .bf26-foot ul li::marker { content: "" !important; }
.bf26-sec ul, .bf26-sec ol, .bf26-sheet ul, .bf26-sheet ol { margin-left: 0 !important; padding: 0 !important; line-height: inherit; }
/* Bonus block: own band with breathing room, sits tight on top of "Your options" */
.bf26-sec.bf26-bonusblock-sec { padding: 48px 0 0 !important; }

/* v1.8.0 - VIP waitlist page (/blackfriday/vip/) */
.bf26-nav__logo--always { display: inline-flex !important; }
.bf26-wl { padding: 64px 0 80px; }
.bf26-wl__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: start; }
.bf26-wl__copy .bf26-ticks { margin: 24px 0 0 !important; }
.bf26-wl__note { margin: 20px 0 0 !important; color: #A8A8A8 !important; font-size: 14px !important; }
.bf26-wl__form, .bf26-wl__closed { background: #000; border: 1px solid #2a2a2a; border-top: 3px solid #e94f35; border-radius: 12px; padding: 24px 20px; }
.bf26-wl__formtitle { margin: 0 0 8px !important; color: #FFFFFF !important; font-size: 20px !important; font-weight: 700; }
.bf26-wl__form iframe { display: block; width: 100%; border: 0; }
.bf26-wl__closed .bf26-h2 { font-size: 26px; margin: 0 0 12px; }
.bf26-wl__closed .bf26-btn { margin-top: 8px; }
@media (max-width: 900px) {
  .bf26-wl { padding: 32px 0 48px; }
  .bf26-wl__grid { grid-template-columns: 1fr; gap: 28px; }
  .bf26-wl__form, .bf26-wl__closed { padding: 16px 12px; }
}

/* v1.9.0 - buy lock (before doors open): buttons read "Opens Fri 20 Nov" / "Opens Tue 24 Nov" */
html.bf-locked :is([data-bf-checkout],[data-bf-buy],[data-bf-sel-buy],[data-bf-mirror-buy],[data-bf-vip-cta],.chek-atc-btn,.chek-cart-checkout-btn,[data-bf-cart-checkout]) {
  pointer-events: none !important; cursor: default; font-size: 0 !important; background: #2a2a2a !important; border-color: #2a2a2a !important; color: #EDEDED !important; filter: none !important;
}
html.bf-locked :is([data-bf-checkout],[data-bf-buy],[data-bf-sel-buy],[data-bf-mirror-buy],[data-bf-vip-cta],.chek-atc-btn,.chek-cart-checkout-btn,[data-bf-cart-checkout])::after {
  content: var(--bf26-lock, "Opens soon"); font: 700 15px/1.1 "BF26 Soleil", soleil, Arial, sans-serif; color: #EDEDED; letter-spacing: 0;
}
html.bf-locked .chek-atc-btn::after { font-size: 13px; }
/* v2.14.1 - inline text links in a sentence (IHF upgrade "$2,395" / "9 x $275") keep their words when locked: not clickable, no "Opens..." pill */
html.bf-locked .bf26-ul:is([data-bf-checkout],[data-bf-buy]) { font-size: inherit !important; background: none !important; border-color: transparent !important; color: inherit !important; text-decoration: none !important; }
html.bf-locked .bf26-ul:is([data-bf-checkout],[data-bf-buy])::after { content: none !important; }
html.bf-locked [data-bf-sel-plan-buy], html.bf-locked .bf26-pricebox .bf26-link { display: none !important; }

/* Pick 'n Mix meter: more prominent */
.bf26-pnm-head .bf26-meter--bar { max-width: none; margin-top: 20px; padding: 18px 20px; background: #150b08; border: 1px solid #e94f35; border-radius: 12px; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__track { height: 14px; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step b { font-size: 24px; color: #FFFFFF; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step.is-hit b { color: #ff7a63; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step { font-size: 14px; color: #D6D6D6; }
/* ...and pinned under the header while the course grid is on screen */
.bf26-meterpin { position: fixed; left: 0; right: 0; top: 0; z-index: 9989; background: rgba(12,12,12,.98); border-bottom: 1px solid #e94f35; transform: translateY(-120%); opacity: 0; transition: transform .25s ease, opacity .25s ease; pointer-events: none; font-family: "BF26 Soleil", soleil, Arial, sans-serif; }
.bf26-meterpin.is-on { transform: none; opacity: 1; pointer-events: auto; }
.bf26-meterpin__inner { max-width: 1200px; margin: 0 auto; padding: 8px 32px 10px; display: grid; grid-template-columns: auto 1fr; gap: 6px 20px; align-items: center; }
.bf26-meterpin__label { margin: 0; color: #ff7a63; font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.bf26-meterpin .bf26-meter--bar { max-width: none; }
.bf26-meterpin .bf26-meter__track { height: 8px; margin: 0 0 4px; }
.bf26-meterpin .bf26-meter__step { font-size: 12px; }
.bf26-meterpin .bf26-meter__step b { display: inline; font-size: 14px; margin-right: 4px; }
.bf26-meterpin .bf26-meter__msg { display: none; }
@media (max-width: 767px) {
  .bf26-meterpin__inner { grid-template-columns: 1fr; padding: 6px 16px 8px; gap: 4px; }
}

/* Programmes grid: 6 cards = 3 + 3 on desktop */
@media (min-width: 981px) { .bf26-cards--6 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.bf26-was { color: #8a8a8a; font-weight: 400; font-size: .8em; margin-left: 6px; }

/* Holding page: VIP list call to action (until waitlists close) */
.bf26-pre__vip { margin-top: 28px; padding: 20px; border: 1px solid #e94f35; border-radius: 12px; background: #150b08; text-align: center; }
.bf26-pre__vipline { margin: 0 0 14px !important; color: #EDEDED !important; }
.bf26-pre__vipline b { color: #FFFFFF; }

/* Waitlist: the four programmes */
.bf26-wl__progs { margin: 20px 0 0 !important; }

/* v2.0.0 - VIP waitlist pages (survey) + thank-you */
html:not([data-bf26-wl]) [data-bf-wl], [data-bf-wl][hidden] { display: none !important; }
.bf26-wl__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.bf26-wl__copy .bf26-lead { margin-bottom: 16px !important; }
.bf26-wl__when { margin: 0 0 20px !important; color: #D6D6D6 !important; font-size: 15px !important; }
.bf26-wl__when strong { color: #FFFFFF; }
.bf26-vthumb { position: relative; display: block; width: 100%; padding: 0; border: 1px solid #2a2a2a; border-radius: 12px; overflow: hidden; background: #111; cursor: pointer; aspect-ratio: 16 / 9; }
.bf26-vthumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bf26-vthumb__play { position: absolute; left: 50%; top: 50%; width: 64px; height: 64px; margin: -32px 0 0 -32px; border-radius: 50%; background: #e94f35; box-shadow: 0 6px 20px rgba(0,0,0,.5); }
.bf26-vthumb__play::after { content: ""; position: absolute; left: 26px; top: 20px; border-style: solid; border-width: 12px 0 12px 18px; border-color: transparent transparent transparent #FFFFFF; }
.bf26-vthumb__player { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: 12px; background: #000; }
.bf26-wl__survey { min-height: 520px; }
.bf26-wl__survey iframe { display: block; width: 100%; border: 0; }
@media (max-width: 900px) {
  .bf26-wl__grid { grid-template-columns: 1fr; }
  .bf26-vthumb, .bf26-vthumb__player { margin-bottom: 4px; }
}
/* Thank-you */
.bf26-wl--thanks { text-align: left; }
.bf26-wl__tick { width: 56px; height: 56px; border-radius: 50%; background: #e94f35; color: #FFFFFF; font: 700 28px/56px "BF26 Soleil", soleil, Arial, sans-serif; text-align: center; margin: 0 0 20px; }
.bf26-wl__next { margin: 28px 0 0; padding: 20px; background: #111; border: 1px solid #2a2a2a; border-radius: 12px; }
.bf26-wl__next .bf26-h3 { margin: 0 0 14px; font-size: 18px; font-weight: 700; color: #FFFFFF; }
.bf26-sec .bf26-wl__steps li { display: flex; gap: 12px; align-items: flex-start; margin: 0 0 12px; color: #D6D6D6; font-size: 15px; line-height: 1.5; }
.bf26-wl__steps li span { flex: 0 0 28px; height: 28px; border: 1px solid #e94f35; border-radius: 50%; color: #ff7a63; font-weight: 700; font-size: 13px; line-height: 26px; text-align: center; }
.bf26-wl__steps b { color: #FFFFFF; }
.bf26-wl__cal { margin-top: 24px; text-align: center; }
.bf26-wl__gcal { display: inline-block; margin-top: 12px; color: #ff7a63 !important; font-size: 14px; }

/* v2.1.0 - generic hero (no ?path): four product tiles */
[data-bf-if-vip-open][hidden] { display: none !important; }
.bf26-hero--generic .bf26-hero__intro { max-width: 760px; margin: 0 auto 32px; text-align: center; }
.bf26-hero--generic .bf26-hero__intro .bf26-eyebrow { justify-content: center; }
.bf26-hero--generic .bf26-card { display: flex; flex-direction: column; }
.bf26-hero--generic .bf26-card__img { position: relative; aspect-ratio: 4 / 3; overflow: hidden; }
.bf26-hero--generic .bf26-card__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bf26-hero--generic .bf26-card__body { display: flex; flex-direction: column; flex: 1; }
.bf26-hero--generic .bf26-card__btns { grid-template-columns: 1fr; gap: 8px; padding-top: 10px; }
.bf26-hero--generic .bf26-card__vip { font-size: 13px; }
@media (max-width: 600px) {
  .bf26-hero--generic .bf26-hero__intro { margin-bottom: 20px; }
  .bf26-hero--generic .bf26-card__eyebrow { font-size: 11px; }
  .bf26-hero--generic .bf26-badge-round { width: 48px; height: 48px; font-size: 11px; top: 8px; right: 8px; }
}

/* v2.1.0 - generic hero on phones: 2x2 tiles, tap for a sheet with the full card */
.bf26-gtile__more { display: none; }
@media (max-width: 767px) {
  .bf26-hero--generic .bf26-hero__tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .bf26-gtile { cursor: pointer; -webkit-tap-highlight-color: transparent; transition: border-color .15s; }
  .bf26-gtile:active, .bf26-gtile:focus-visible { border-color: #e94f35; outline: none; }
  .bf26-hero--generic .bf26-gtile .bf26-card__img { aspect-ratio: 1 / 1; }
  .bf26-hero--generic .bf26-gtile .bf26-card__body { padding: 10px 10px 12px; }
  .bf26-gtile .bf26-card__eyebrow, .bf26-gtile .bf26-card__text, .bf26-gtile .bf26-card__vip, .bf26-gtile .bf26-card__btns { display: none !important; }
  .bf26-gtile h3 { font-size: 14px !important; line-height: 1.3 !important; margin: 0 0 4px !important; }
  .bf26-gtile .bf26-card__price { font-size: 15px !important; margin: auto 0 0 !important; }
  .bf26-gtile__more { display: block; margin-top: 6px; color: #D6D6D6; font-size: 12px; font-weight: 700; letter-spacing: .02em; }
}
.bf26-gtile-sheet .bf26-card__img { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 10px; margin: 8px 0 16px; }
.bf26-gtile-sheet .bf26-card__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bf26-gtile-sheet .bf26-card__body { padding: 0; display: block; }
.bf26-gtile-sheet h3 { color: #FFFFFF; font-size: 22px; line-height: 1.25; margin: 4px 0 8px; }
.bf26-gtile-sheet .bf26-card__text { color: #D6D6D6; font-size: 16px; line-height: 1.5; margin: 0 0 10px; }
.bf26-gtile-sheet .bf26-card__vip { font-size: 15px; margin: 0 0 10px; }
.bf26-gtile-sheet .bf26-card__price { font-size: 22px; font-weight: 700; margin: 4px 0 16px; }
.bf26-gtile-sheet .bf26-card__btns { display: grid; grid-template-columns: 1fr; gap: 10px; }
.bf26-gtile-sheet .bf26-gtile__more { display: none !important; }

/* v2.1.1 - section numbers off; Pick 'n Mix images 1:1 (overrides the plugin's 300px height); 1 card per row on phones */
.bf26-num { display: none !important; }
.bf26-pnm .chek-card-img img { height: auto !important; max-height: none !important; aspect-ratio: 1 / 1; object-fit: cover; width: 100%; display: block; }
@media (max-width: 600px) {
  .bf26-pnm .chek-grid { grid-template-columns: 1fr !important; gap: 14px !important; }
}

/* v2.1.1 - FAQ help buttons: advisor call + "Chat with us" (opens the GHL chat) */
.bf26-help { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.bf26-help .bf26-btn { margin: 0 !important; }
.bf26-help [data-bf-chat][hidden] { display: none !important; }
@media (max-width: 600px) { .bf26-help { flex-direction: column; } .bf26-help .bf26-btn { width: 100%; } }

/* v2.1.3 - waitlist thank-you: centred heading + animated tick (plays once; still for reduced motion) */
.bf26-wl--thanks .bf26-wl__tick { width: 96px; height: 96px; margin: 0 auto 16px; background: none; border-radius: 0; font-size: 0; line-height: 0; }
.bf26-wl--thanks .bf26-wl__tick svg { display: block; width: 96px; height: 96px; overflow: visible; }
.bf26-wl--thanks > .bf26-wrap > .bf26-h1, .bf26-wl--thanks > .bf26-wrap > .bf26-lead { text-align: center !important; margin-left: auto !important; margin-right: auto !important; }
.bf26-tick__burst, .bf26-tick__disc { transform-box: fill-box; transform-origin: center; }
.bf26-tick__burst { fill: rgba(233,79,53,.25); stroke: rgba(233,79,53,.6); stroke-width: 1; transform: scale(0); opacity: 0; animation: bf26TickBurst 1.1s cubic-bezier(.2,.8,.2,1) .15s forwards; }
.bf26-tick__disc { fill: #e94f35; transform: scale(0); animation: bf26TickDisc .55s cubic-bezier(.34,1.56,.64,1) .3s forwards; }
.bf26-tick__mark { fill: none; stroke: #FFFFFF; stroke-width: 8; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 100; stroke-dashoffset: 100; animation: bf26TickMark .45s ease-out .8s forwards; }
@keyframes bf26TickBurst { 0% { transform: scale(0); opacity: 1; } 60% { opacity: .9; } 100% { transform: scale(1.5); opacity: 0; } }
@keyframes bf26TickDisc { to { transform: scale(1); } }
@keyframes bf26TickMark { to { stroke-dashoffset: 0; } }
@media (prefers-reduced-motion: reduce) {
  .bf26-tick__burst { animation: none; opacity: 0; }
  .bf26-tick__disc { animation: none; transform: scale(1); }
  .bf26-tick__mark { animation: none; stroke-dashoffset: 0; }
}

/* v2.2.0 - HLC2 VIP hero: single fixed option (no picker) */
.bf26-opt--static { width: 100%; background: #1a0d0a; color: #FFFFFF; border: 1px solid #e94f35; box-shadow: inset 0 0 0 1px #e94f35; border-radius: 8px; cursor: default; }
.bf26-opt--static .bf26-opt__price .bf26-was { font-size: 15px; font-weight: 400; margin-left: 6px; }
.bf26-opt__top [hidden] { display: none !important; }
.bf26-opt__pre { margin-top: 6px; padding-top: 8px; border-top: 1px solid #3a2420; color: #A8A8A8; font-size: 13px; }
.bf26-sheet__price .bf26-was { display: block; margin: 2px 0 4px; }

/* v2.3.1 - "Also new": three across on desktop when three cards show (HLC2 version);
   Programs: three across when the HLC2 card is hidden */
@media (min-width: 981px) {
  .bf26-cards--2:has(> .bf-on ~ .bf-on ~ .bf-on) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .bf26-cards--4:has(> [data-bf-not-path]:not(.bf-on)) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* v2.3.2 - VIP option card on the four VIP heroes: rotating coral glow border.
   Spins when the VIP option is selected (IHBS, 4QC: first option) or is the only option (IHF, HLC2).
   Sold-out (.is-closed) cards stay still and grey. Old browsers without @property get a still coral arc. */
@property --bf26-a { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
@keyframes bf26Spin { to { --bf26-a: 360deg; } }
.bf26-hero .bf26-opts { isolation: isolate; }
.bf26-hero .bf26-opts > .bf26-opt:first-child[aria-pressed="true"]:not(.is-closed):not(.bf26-opt--static),
.bf26-hero .bf26-opts > .bf26-opt--static:not(.is-closed):has([data-bf-if-vip-open]:not([hidden])) {
  position: relative;
  border: 2px solid transparent !important;
  box-shadow: none !important;
  padding: 15px !important;
  background:
    linear-gradient(#1a0d0a, #1a0d0a) padding-box,
    conic-gradient(from var(--bf26-a), #3a2420 0 65%, #e94f35, #ffb3a6, #e94f35, #3a2420) border-box !important;
  animation: bf26Spin 4s linear infinite;
}
.bf26-hero .bf26-opts > .bf26-opt:first-child[aria-pressed="true"]:not(.is-closed):not(.bf26-opt--static)::after,
.bf26-hero .bf26-opts > .bf26-opt--static:not(.is-closed):has([data-bf-if-vip-open]:not([hidden]))::after {
  content: ""; position: absolute; inset: -2px; border-radius: inherit; z-index: -1; pointer-events: none;
  background: conic-gradient(from var(--bf26-a), transparent 0 65%, #e94f35, transparent);
  filter: blur(14px); opacity: .7;
  animation: bf26Spin 4s linear infinite;
}
.bf26-hero .bf26-opts--sm > .bf26-opt:first-child[aria-pressed="true"]:not(.is-closed):not(.bf26-opt--static) { padding: 11px !important; }
@media (prefers-reduced-motion: reduce) {
  .bf26-hero .bf26-opts > .bf26-opt:first-child[aria-pressed="true"]:not(.is-closed):not(.bf26-opt--static),
  .bf26-hero .bf26-opts > .bf26-opt--static:not(.is-closed):has([data-bf-if-vip-open]:not([hidden])),
  .bf26-hero .bf26-opts > .bf26-opt:first-child[aria-pressed="true"]:not(.is-closed):not(.bf26-opt--static)::after,
  .bf26-hero .bf26-opts > .bf26-opt--static:not(.is-closed):has([data-bf-if-vip-open]:not([hidden]))::after { animation: none; --bf26-a: 200deg; }
}

/* v2.3.3 - Same rotating glow on every box that sells VIP:
   generic hero tiles, Also New cards, Programs HLC2 card (any card with a VIP line still showing, or an open VIP option like the 4QC card)
   and the pre-teaser "VIPs get in four days early" box.
   VIP line hidden (VIP closed or sold out) = no glow. */
.bf26-cards, .bf26-pre { isolation: isolate; }
.bf26-card:has(.bf26-card__vip:not([hidden]), .bf26-opt[data-vip]:not(.is-closed)), .bf26-pre__vip { --bf26-gbg: #121212; }
.bf26-pre__vip { --bf26-gbg: #150b08; }
.bf26-card:has(.bf26-card__vip:not([hidden]), .bf26-opt[data-vip]:not(.is-closed)),
.bf26-pre__vip {
  position: relative;
  overflow: visible !important;
  border: 2px solid transparent !important;
  background:
    linear-gradient(var(--bf26-gbg), var(--bf26-gbg)) padding-box,
    conic-gradient(from var(--bf26-a), #3a2420 0 65%, #e94f35, #ffb3a6, #e94f35, #3a2420) border-box !important;
  animation: bf26Spin 4s linear infinite;
}
.bf26-card:has(.bf26-card__vip:not([hidden]), .bf26-opt[data-vip]:not(.is-closed))::after,
.bf26-pre__vip::after {
  content: ""; position: absolute; inset: -2px; border-radius: inherit; z-index: -1; pointer-events: none;
  background: conic-gradient(from var(--bf26-a), transparent 0 65%, #e94f35, transparent);
  filter: blur(14px); opacity: .6;
  animation: bf26Spin 4s linear infinite;
}
/* card lost overflow:hidden for the glow, so round the image's top corners instead */
.bf26-card:has(.bf26-card__vip:not([hidden]), .bf26-opt[data-vip]:not(.is-closed)) .bf26-card__img { overflow: hidden; border-radius: 10px 10px 0 0; }
@media (prefers-reduced-motion: reduce) {
  .bf26-card:has(.bf26-card__vip:not([hidden]), .bf26-opt[data-vip]:not(.is-closed)), .bf26-pre__vip,
  .bf26-card:has(.bf26-card__vip:not([hidden]), .bf26-opt[data-vip]:not(.is-closed))::after, .bf26-pre__vip::after { animation: none; --bf26-a: 200deg; }
}

/* v2.4.0 - VIP waitlist + thank-you pages (Gavin's changes, 23 Oct) */
/* Countdown band on one line: label + units side by side */
html[data-bf26-wl] .bf26-band [data-bf-countdown] { display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; gap: 12px; white-space: nowrap; }
html[data-bf26-wl] .bf26-band__label { display: inline; margin: 0; }
html[data-bf26-wl] .bf26-band .bf26-cd__units { flex-wrap: nowrap; }
@media (max-width: 480px) {
  html[data-bf26-wl] .bf26-band { padding: 7px 8px; }
  html[data-bf26-wl] .bf26-band [data-bf-countdown] { gap: 8px; }
  html[data-bf26-wl] .bf26-band__label { font-size: 11px; letter-spacing: .04em; }
  html[data-bf26-wl] .bf26-band .bf26-cd__units { gap: 4px; }
  html[data-bf26-wl] .bf26-band .bf26-cd__unit { padding: 2px 5px; }
  html[data-bf26-wl] .bf26-band .bf26-cd__num, html[data-bf26-wl] .bf26-band .bf26-cd__txt { font-size: 12px; }
}
/* Doors-open line */
.bf26-wl__when { margin: 20px 0 0 !important; color: #D6D6D6 !important; font-size: 15px !important; line-height: 1.55 !important; }
.bf26-wl__when strong { color: #FFFFFF; }
/* "Join the ... VIP waitlist": phones only (desktop has the survey beside the copy) */
.bf26-wl__jumpwrap { display: none; }
@media (max-width: 900px) {
  .bf26-wl__jumpwrap { display: block; margin: 20px 0 24px; }
  .bf26-wl__jump { display: flex !important; width: 100%; justify-content: center; }
  .bf26-wl__jump[hidden] { display: none !important; }
}
.bf26-wl__copy .bf26-vthumb { margin-top: 24px; }
/* No video set: thumbnail only, no play button, not clickable */
.bf26-vthumb.is-novideo { cursor: default; }
.bf26-vthumb.is-novideo .bf26-vthumb__play { display: none; }
/* Chat bubble off on the waitlist + thank-you pages (bf26.js also hides it) */
html[data-bf26-wl] chat-widget { display: none !important; }
/* v2.19.0: no live chat on any BF page (bf26.css only loads on BF pages) */
chat-widget, #leadconnector-chat-widget-js { display: none !important; }

/* v2.5.0 - HLC2 product page. Single-option cards (HLC2, IHF) only glow while their free VIP is open
   (the selectors above now need a visible [data-bf-if-vip-open] line inside the card). */
.bf26-vipsec > .bf26-wrap > .bf26-sched { margin: 20px 0 8px; padding: 0; list-style: none; }
.bf26-bonusblock .bf26-acc { margin-top: 12px; }
.bf26-bonusblock .bf26-acc summary { padding: 12px 0; font-size: 15px; }
.bf26-tag[hidden], .bf26-plan__top [hidden] { display: none !important; }
.bf26-plan__top { flex-wrap: wrap; }

/* v2.6.0 - IHF product page + HLC2 fix */
.bf26-plan__top h3 { flex: 1 1 14em; min-width: 0; }
.bf26-media video { display: block; background: #000; }
.bf26-faculty { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 20px 0 28px; padding: 0; list-style: none; }
.bf26-faculty li { margin: 0; padding: 0; list-style: none; }
.bf26-faculty img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 10px; border: 1px solid #2a2a2a; background: #161616; margin: 0 0 10px; }
.bf26-faculty b { display: block; color: #FFFFFF; font-size: 15px; line-height: 1.3; }
.bf26-faculty span { display: block; color: #D6D6D6; font-size: 13px; line-height: 1.4; margin-top: 2px; }
@media (max-width: 767px) { .bf26-faculty { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.bf26-quote > div { min-width: 0; }

/* v2.7.0 - HLC1 product page */
.bf26-faculty--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 560px; }
@media (max-width: 767px) { .bf26-faculty--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* v2.10.0 - 4QC product page: part covers strip, text step markers (I / We / It) */
.bf26-covers { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 0 0 24px; padding: 0; list-style: none; }
.bf26-covers li { margin: 0; padding: 0; list-style: none; }
.bf26-covers img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; border-radius: 8px; border: 1px solid #2a2a2a; background: #161616; }
@media (max-width: 480px) { .bf26-covers { gap: 8px; } }
.bf26-courses__n { min-width: 44px; width: auto; padding: 0 6px; white-space: nowrap; }

/* v2.15.0 - mop-up week (2-6 Dec) is quiet (Gavin 29 Oct): the countdown band is hidden, no "Last chance" wording */
html[data-bf26-phase="ext"] .bf26-band { display: none !important; }

/* v2.17.0 - hero prices: the payment plan is as prominent as the full price (Gavin, 2 Nov) */
.bf26-opt__prices { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; margin-top: 6px; }
.bf26-opt__prices .bf26-opt__price { margin-top: 0; }
.bf26-opt__or { color: #D6D6D6; font-size: 15px; font-weight: 500; }
.bf26-opt.is-closed .bf26-opt__prices .bf26-opt__price { color: #D6D6D6; }

/* v2.17.0 - Pick 'n Mix 10/20/30 markers: white card, black text, coral accents; a tier pops when it unlocks (Gavin, 2 Nov) */
.bf26-pnm-head .bf26-meter--bar { background: #FFFFFF; border: 0; border-top: 4px solid #e94f35; color: #000; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__track { background: #ECECEC; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__track::before, .bf26-pnm-head .bf26-meter--bar .bf26-meter__track::after { background: #FFFFFF; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__fill { background: #e94f35; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__steps { gap: 10px; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step { text-align: center; padding: 10px 6px; border: 2px solid #E2E2E2; border-radius: 10px; color: #333; background: #FFFFFF; transition: background .25s ease, border-color .25s ease, color .25s ease; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step b { color: #000; font-size: 26px; line-height: 1.1; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step.is-hit { background: #e94f35; border-color: #e94f35; color: #FFFFFF; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step.is-hit b { color: #FFFFFF; animation: bf26-tier-pop .45s ease; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__msg { color: #000 !important; text-align: center; font-weight: 700; }
.bf26-pnm-head .bf26-meter--bar.is-unlocked .bf26-meter__msg { color: #c23a22 !important; }
@keyframes bf26-tier-pop { 0% { transform: scale(1); } 45% { transform: scale(1.25); } 100% { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .bf26-pnm-head .bf26-meter--bar .bf26-meter__step.is-hit b { animation: none; } }

/* v2.17.0 - IHBS product page: month markers (Dec-Jun) + Gavin's month copy above "Inside" */
.bf26-months--courses .bf26-months__m { font-size: 13px; }
.bf26-months__lead { margin: 0 0 14px; color: #EDEDED; font-size: 16px; line-height: 1.6; }

/* v2.17.0 - "sale has ended" module (sections/12-sale-closed.html) */
.bf26-closed { padding-top: 72px; padding-bottom: 72px; }
.bf26-closed__logo { display: block; width: 200px; height: auto; margin: 0 auto 28px; }
.bf26-closed__cards { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 32px; text-align: left; }
.bf26-closed__card { background: #121212; border: 1px solid #2e2e2e; border-top: 3px solid #e94f35; border-radius: 12px; padding: 22px; display: flex; flex-direction: column; gap: 10px; }
.bf26-closed__card p { margin: 0 0 6px; color: #D6D6D6; flex: 1; }
@media (max-width: 680px) { .bf26-closed__cards { grid-template-columns: 1fr; } .bf26-closed { padding-top: 48px; padding-bottom: 48px; } }

/* v2.18.0 - /blackfriday/vip/ (no program): four program buttons instead of the form */
.bf26-wl__pick { background: #000; border: 1px solid #2a2a2a; border-top: 3px solid #e94f35; border-radius: 12px; padding: 24px 20px; display: grid; gap: 14px; }
.bf26-wl__picktitle { margin: 0 0 2px !important; color: #FFFFFF !important; font-size: 18px !important; font-weight: 700; }
a.bf26-wl__pickopt { display: flex; align-items: center; gap: 16px; padding: 16px 18px; background: #111; border: 1px solid #2e2e2e; border-radius: 10px; color: #D6D6D6 !important; text-decoration: none !important; transition: border-color .2s ease, background .2s ease, transform .2s ease; }
a.bf26-wl__pickopt:hover, a.bf26-wl__pickopt:focus-visible { border-color: #e94f35; background: #150b08; transform: translateY(-1px); outline: none; }
.bf26-wl__pickbody { flex: 1; display: grid; gap: 2px; font-size: 15px; line-height: 1.4; }
.bf26-wl__pickbody strong { color: #FFFFFF; font-size: 18px; }
.bf26-wl__pickvip { color: #A8A8A8; font-size: 14px; }
.bf26-wl__pickgo { flex: none; width: 40px; height: 40px; border-radius: 50%; background: #e94f35; color: #FFFFFF; display: grid; place-items: center; font-size: 20px; font-weight: 700; }
@media (max-width: 900px) { .bf26-wl__pick { padding: 18px 14px; } a.bf26-wl__pickopt { padding: 14px; } }

/* v2.18.1 - general waitlist video sits a little below the doors-open line */
.bf26-wl__copy > .bf26-vthumb__player, .bf26-wl__copy > .bf26-vthumb { margin-top: 12px; }

/* v2.19.0 - Gavin feedback 11 Nov */
/* Paul line at the top of a "What's inside" part */
.bf26-paul-line { margin: 0 0 14px !important; padding-left: 12px; border-left: 3px solid #e94f35; color: #FFFFFF !important; font-style: italic; font-size: 15px !important; line-height: 1.5 !important; }
.bf26-paul-line span { display: block; margin-top: 4px; color: #A8A8A8; font-style: normal; font-size: 12px; }
/* accent version of the NOT-for-you box (4QC "Already done HLC or Spirit Gym?") */
.bf26-notfor--accent { border-color: #e94f35; margin: 0 0 16px; }
.bf26-notfor--accent li::before { color: #e94f35; }
/* quote on the coral final band */
.bf26-final .bf26-pull--final { max-width: 560px; margin: -8px auto 24px; text-align: left; border-left-color: #FFFFFF; }
.bf26-final .bf26-pull--final p { font-size: 16px !important; }
.bf26-final .bf26-pull--final cite { color: #FFFFFF; opacity: .85; }
/* compact time-zone table inside FAQ answers */
.bf26-tz-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 12px 0 4px; }
.bf26-tz { width: 100%; border-collapse: collapse; font-family: "BF26 Soleil", soleil, Arial, sans-serif; }
.bf26-tz th, .bf26-tz td { padding: 7px 5px; border-bottom: 1px solid #2a2a2a; text-align: left; font-size: 13px; line-height: 1.3; color: #D6D6D6; vertical-align: top; }
.bf26-tz th:first-child, .bf26-tz td:first-child { padding-left: 0; }
.bf26-tz td:first-child { font-weight: 700; }
.bf26-tz td small { display: block; font-weight: 400; color: #A8A8A8; font-size: 11px; }
@media (max-width: 420px) { .bf26-tz th, .bf26-tz td { font-size: 12px; padding: 6px 3px; } }
.bf26-tz thead th { color: #FFFFFF; font-weight: 700; border-bottom-color: #e94f35; }
.bf26-tz td:first-child { color: #FFFFFF; }

/* Mastery Collection bonus (IHBS) */
.bf26-mastery { margin: 24px 0; background: #121212; border: 1px solid #e94f35; border-radius: 14px; overflow: hidden; display: grid; grid-template-columns: 1fr; font-family: "BF26 Soleil", soleil, Arial, sans-serif; }
.bf26-mastery__img img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; }
.bf26-mastery__body { padding: 18px 18px 16px; }
.bf26-mastery__title { margin: 2px 0 8px !important; color: #FFFFFF !important; font-size: 22px !important; line-height: 1.2 !important; font-weight: 700; }
.bf26-mastery__desc { margin: 0 0 12px !important; color: #D6D6D6 !important; font-size: 15px !important; line-height: 1.5 !important; }
.bf26-mastery__badge { display: inline-block; margin: 0 0 14px !important; padding: 6px 12px; border-radius: 999px; background: #e94f35; color: #FFFFFF !important; font-size: 13px !important; font-weight: 700; letter-spacing: .02em; }
.bf26-mastery__acc { border-top: 1px solid #2a2a2a; }
.bf26-mastery__acc > summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; padding: 14px 0 2px; color: #FFFFFF; font-weight: 700; font-size: 15px; }
.bf26-mastery__acc > summary::-webkit-details-marker { display: none; }
.bf26-mastery__acc > summary span { color: #e94f35; font-size: 22px; line-height: 1; transition: transform .2s ease; }
.bf26-mastery__acc[open] > summary span { transform: rotate(45deg); }
.bf26-mastery__group { margin: 16px 0 8px !important; color: #ff7a63 !important; font-size: 12px !important; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.bf26-mastery__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.bf26-mastery__list li { display: grid; grid-template-columns: 56px 1fr; gap: 12px; align-items: start; margin: 0; padding: 0; }
.bf26-mastery__list li::before { content: none !important; }
.bf26-mastery__list img { width: 56px; height: 56px; border-radius: 8px; object-fit: cover; display: block; }
.bf26-mastery__list b { display: block; color: #FFFFFF; font-size: 14px; line-height: 1.35; }
.bf26-mastery__list span { display: block; margin-top: 2px; color: #BDBDBD; font-size: 13px; line-height: 1.45; }
@media (min-width: 768px) {
  .bf26-mastery { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: start; }
  .bf26-mastery__body { padding: 24px 26px 20px; }
}
/* Pick 'n Mix 10/20/30 boxes: dark card, orange-red scale that gets stronger with the saving (Gavin 11 Nov) */
.bf26-pnm-head .bf26-meter--bar { background: #121212; border: 1px solid #2a2a2a; border-top: 4px solid #e94f35; color: #FFFFFF; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__track { background: #2a2a2a; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__track::before, .bf26-pnm-head .bf26-meter--bar .bf26-meter__track::after { background: #121212; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__steps { gap: 10px; margin-top: 14px; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step { position: relative; border-width: 2px; border-style: solid; color: #333; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step b { font-size: 26px; }
.bf26-pnm-head .bf26-meter--bar [data-bf-meter-step="1"] { background: #FFFFFF; border-color: #e94f35; }
.bf26-pnm-head .bf26-meter--bar [data-bf-meter-step="1"] b { color: #e94f35; }
.bf26-pnm-head .bf26-meter--bar [data-bf-meter-step="2"] { background: #fde3dd; border-color: #f6b4a7; }
.bf26-pnm-head .bf26-meter--bar [data-bf-meter-step="2"] b { color: #e94f35; }
.bf26-pnm-head .bf26-meter--bar [data-bf-meter-step="3"] { background: #e94f35; border-color: #e94f35; color: #FFFFFF; }
.bf26-pnm-head .bf26-meter--bar [data-bf-meter-step="3"] b { color: #FFFFFF; }
.bf26-pnm-head .bf26-meter--bar [data-bf-meter-step="3"]::before { content: "Best value"; position: absolute; top: -10px; left: 50%; transform: translateX(-50%); padding: 2px 8px; border-radius: 999px; background: #FFFFFF; color: #c23a22; font-size: 10px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
/* reached level: solid orange-red with a tick */
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step.is-hit { background: #e94f35; border-color: #e94f35; color: #FFFFFF; box-shadow: 0 0 0 3px rgba(233,79,53,.35); }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step.is-hit b { color: #FFFFFF; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__step.is-hit b::after { content: " \2713"; font-size: 18px; }
.bf26-pnm-head .bf26-meter--bar [data-bf-meter-step="3"].is-hit { background: #c23a22; border-color: #c23a22; }
.bf26-pnm-head .bf26-meter--bar .bf26-meter__msg { color: #FFFFFF !important; }
.bf26-pnm-head .bf26-meter--bar.is-unlocked .bf26-meter__msg { color: #ff7a63 !important; }

/* Swipeable testimonial carousel */
.bf26-carousel { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; -webkit-overflow-scrolling: touch; scrollbar-width: none; overscroll-behavior-x: contain; outline: none; }
.bf26-carousel::-webkit-scrollbar { display: none; }
.bf26-carousel > * { flex: 0 0 100%; scroll-snap-align: start; margin: 0 !important; }
.bf26-carousel__nav { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 12px 0 24px; }
.bf26-carousel__dots { display: flex; gap: 8px; }
.bf26-carousel__dot { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 999px; background: #444; cursor: pointer; transition: width .2s ease, background .2s ease; }
.bf26-carousel__dot.is-on { width: 22px; background: #e94f35; }
.bf26-carousel__arrow { width: 36px; height: 36px; padding: 0; border: 1px solid #3a3a3a; border-radius: 50%; background: #121212; color: #FFFFFF; font-size: 16px; line-height: 1; cursor: pointer; }
.bf26-carousel__arrow:disabled { opacity: .35; cursor: default; }
.bf26-carousel__arrow:not(:disabled):hover { border-color: #e94f35; }

/* HLC1 upgrade box (IHF) - second option, thinner outline, outline button */
.bf26-upgrade { margin: 6px 0 4px; padding: 16px; background: #121212; border: 1px solid #e94f35; border-radius: 12px; text-align: left; font-family: "BF26 Soleil", soleil, Arial, sans-serif; }
.bf26-upgrade .bf26-tag { margin-bottom: 8px; }
.bf26-upgrade__h { margin: 6px 0 6px !important; color: #FFFFFF !important; font-size: 18px !important; font-weight: 700; line-height: 1.25 !important; }
.bf26-upgrade__p { margin: 0 0 10px !important; color: #D6D6D6 !important; font-size: 14px !important; line-height: 1.5 !important; }
.bf26-upgrade__price { margin: 0 0 12px !important; color: #FFFFFF !important; font-size: 22px !important; font-weight: 700; }
.bf26-upgrade__price span { font-size: 15px; font-weight: 400; color: #D6D6D6; }
.bf26-upgrade__price a { color: #FFFFFF !important; }

/* Fanned product images (bonus packs) - pure CSS, each image sets --r (angle), --x (offset), --y (drop) */
.bf26-fan { position: relative; height: 150px; margin: 8px auto 18px; max-width: 420px; }
.bf26-fan img { position: absolute; left: 50%; bottom: 14px; width: 30%; max-width: 130px; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 10px; border: 2px solid #1d1d1d; background: #1c1c1c; box-shadow: 0 10px 24px rgba(0,0,0,.55); transform-origin: 50% 100%;
  transform: translate(calc(-50% + var(--x, 0%)), var(--y, 0px)) rotate(var(--r, 0deg)); }
@media (min-width: 768px) { .bf26-fan { height: 170px; } }

/* product image + description inside a "What's inside" part (IHF) */
.bf26-inside-img { display: block; width: 100%; max-width: 420px; height: auto; margin: 0 0 12px; border-radius: 10px; border: 1px solid #2a2a2a; }
.bf26-inside-desc { margin: 0 0 14px !important; color: #D6D6D6 !important; font-size: 15px !important; line-height: 1.5 !important; }
/* faculty: one lead photo + names (IHF, IMS1) */
.bf26-faculty--lead { grid-template-columns: 1fr; margin-bottom: 12px; }
.bf26-faculty--lead li { display: grid; grid-template-columns: 96px 1fr; gap: 14px; align-items: center; }
.bf26-faculty--lead img { margin: 0; }
.bf26-faculty-names { list-style: none; margin: 0 0 28px; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; }
.bf26-faculty-names li { margin: 0; padding: 12px 14px; background: #121212; border: 1px solid #2a2a2a; border-radius: 10px; list-style: none; }
.bf26-faculty-names li::before { content: none !important; }
.bf26-faculty-names b { display: block; color: #FFFFFF; font-size: 15px; line-height: 1.3; }
.bf26-faculty-names span { display: block; color: #A8A8A8; font-size: 13px; margin-top: 2px; }
/* HLC2 "who it's for" cards, key chip, before-you-start box */
.bf26-whocards { list-style: none; margin: 0 0 18px; padding: 0; display: grid; gap: 8px; }
.bf26-whocards li { display: grid; grid-template-columns: 30px 1fr; gap: 12px; align-items: start; margin: 0; padding: 12px 14px; background: #121212; border: 1px solid #2a2a2a; border-radius: 10px; }
.bf26-whocards li::before { content: none !important; }
.bf26-whocards li > span { width: 30px; height: 30px; border-radius: 50%; background: #e94f35; color: #FFFFFF; display: grid; place-items: center; font-weight: 700; font-size: 14px; }
.bf26-whocards p { margin: 3px 0 0 !important; color: #D6D6D6 !important; font-size: 15px !important; line-height: 1.45 !important; }
.bf26-whocards b { color: #FFFFFF; }
@media (min-width: 768px) { .bf26-whocards { grid-template-columns: repeat(3, 1fr); } }
.bf26-pills li.is-key { background: #e94f35 !important; border-color: #e94f35 !important; color: #FFFFFF !important; }
.bf26-before { margin: 16px 0; padding: 14px 16px; border: 1px solid #3a3a3a; border-radius: 10px; background: #121212; }
.bf26-before p { margin: 0 !important; color: #D6D6D6 !important; font-size: 15px !important; line-height: 1.5 !important; }
.bf26-before__label { margin: 0 0 4px !important; color: #ff7a63 !important; font-size: 12px !important; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
/* second, smaller time-zone line in a VIP call list (HLC2) */
.bf26-sched__tz { display: block; margin-top: 2px; color: #A8A8A8; font-size: 12px; }

/* "Ask us a question" pop-up (HLC1, HLC2, IMS1, Golf) */
html.bf26-ask-open, html.bf26-ask-open body { overflow: hidden; }
.bf26-ask { position: fixed; inset: 0; z-index: 99999; background: rgba(0,0,0,.75); display: flex; align-items: flex-end; justify-content: center; font-family: "BF26 Soleil", soleil, Arial, sans-serif; }
.bf26-ask[hidden] { display: none !important; }
.bf26-ask__box { position: relative; width: 100%; max-width: 560px; max-height: 92vh; overflow-y: auto; -webkit-overflow-scrolling: touch; background: #111; border: 1px solid #2a2a2a; border-top: 4px solid #e94f35; border-radius: 16px 16px 0 0; padding: 22px 18px 18px; }
.bf26-ask__x { position: absolute; top: 10px; right: 10px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: #222; color: #FFFFFF; font-size: 22px; line-height: 1; cursor: pointer; }
.bf26-ask__h { margin: 4px 40px 6px 0 !important; color: #FFFFFF !important; font-size: 20px !important; font-weight: 700; }
.bf26-ask__p { margin: 0 0 8px !important; color: #D6D6D6 !important; font-size: 14px !important; }
@media (min-width: 768px) { .bf26-ask { align-items: center; } .bf26-ask__box { border-radius: 16px; padding: 26px 26px 20px; } }
