.bc-btn { align-items: center; border: 1px solid transparent; border-radius: 999px; display: inline-flex; font-size: 0.9rem; font-weight: 800; justify-content: center; min-height: 3.15rem; padding: 0.8rem 1.4rem; text-decoration: none; transition: transform var(--bc-transition), box-shadow var(--bc-transition), background var(--bc-transition); }
.bc-btn:hover { transform: translateY(-2px); }
.bc-btn--gold { background: var(--bc-gold-500); color: var(--bc-navy-950); box-shadow: 0 10px 25px rgba(254, 203, 7, 0.2); }
.bc-btn--navy { background: var(--bc-navy-800); color: #fff; }
.bc-btn--ghost { border-color: rgba(255,255,255,.4); color: #fff; }
.bc-btn--ghost:hover { background: #fff; color: var(--bc-navy-900); }
.bc-section-heading { align-items: end; display: flex; gap: 2rem; justify-content: space-between; margin-bottom: 2.4rem; }
.bc-section-heading h2 { color: var(--bc-navy-900); font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.06; margin: 0.45rem 0 0; }
.bc-section-heading > p { color: var(--bc-slate-700); max-width: 34rem; }
.bc-badge { background: color-mix(in srgb, var(--badge) 13%, white); border-left: 3px solid var(--badge); border-radius: 0.35rem; color: var(--bc-slate-900); display: inline-flex; font-size: 0.78rem; font-weight: 800; margin: 0 0.4rem 0.5rem 0; padding: 0.45rem 0.7rem; text-decoration: none; }
.bc-empty-state { background: var(--bc-slate-100); border: 1px dashed var(--bc-slate-300); border-radius: var(--bc-radius); grid-column: 1 / -1; padding: 3rem; text-align: center; }
.bc-empty-state h2, .bc-empty-state h3 { color: var(--bc-navy-900); margin-bottom: 0.5rem; }
.bc-prose { color: var(--bc-slate-700); font-size: 1.08rem; line-height: 1.85; }
.bc-prose h2, .bc-prose h3 { color: var(--bc-navy-900); }

@media (max-width: 767px) { .bc-section-heading { align-items: start; flex-direction: column; gap: 0.8rem; } .bc-btn { width: 100%; } }

/* Programme detail */
.bc-program-detail, .bc-apply { color: var(--bc-slate-900); overflow: hidden; }
.bc-program-summary { background: radial-gradient(circle at 80% 20%, rgba(29,146,91,.3), transparent 26%), linear-gradient(135deg,var(--bc-navy-950),var(--bc-navy-800)); color:#fff; padding:clamp(4rem,8vw,7rem) 0; }
.bc-program-summary__grid { align-items:center; display:grid; gap:4rem; grid-template-columns:minmax(0,1fr) 23rem; }
.bc-program-summary h1 { color:#fff; font-size:clamp(3rem,6vw,5.5rem); letter-spacing:-.05em; line-height:1; margin:.8rem 0 1rem; }
.bc-program-summary p { color:rgba(255,255,255,.75); display:block!important; font-size:1.2rem; margin-bottom:2rem; }
.bc-program-summary dl { background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.2); border-radius:var(--bc-radius); margin:0; padding:1.4rem; }
.bc-program-summary dl div { display:grid; gap:1rem; grid-template-columns:7rem 1fr; padding:.8rem 0; }
.bc-program-summary dl div+div { border-top:1px solid rgba(255,255,255,.15); }
.bc-program-summary dt { color:rgba(255,255,255,.6); font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; }
.bc-program-summary dd { color:#fff; font-weight:800; margin:0; }
.bc-detail-sections article { display:grid; gap:clamp(1.5rem,5vw,5rem); grid-template-columns:5rem minmax(0,1fr); padding:clamp(2rem,5vw,4.5rem) 0; }
.bc-detail-sections article+article { border-top:1px solid var(--bc-slate-300); }
.bc-detail-sections__number { color:var(--bc-green-600); font-size:1rem; font-weight:900; }
.bc-detail-sections h2 { color:var(--bc-navy-900); font-size:clamp(2rem,4vw,3.2rem); letter-spacing:-.035em; margin:.6rem 0 1.4rem; }
.bc-program-cta { background:var(--bc-green-100); padding:clamp(3rem,6vw,5rem) 0; }
.bc-program-cta .bc-container { align-items:center; display:flex; gap:2rem; justify-content:space-between; }
.bc-program-cta h2 { color:var(--bc-navy-900); font-size:clamp(2rem,4vw,3.2rem); margin:.5rem 0 0; }

/* Apply page */
.bc-apply-intro,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] { background:radial-gradient(circle at 88% 18%, rgba(29,146,91,.24), transparent 280px), linear-gradient(135deg,var(--bc-navy-950),var(--bc-navy-800)); color:#fff; padding:112px 0; }
.bc-apply-intro .bc-container,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-programme-container { max-width:1280px; }
.bc-apply-intro .bc-eyebrow,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-programme-eyebrow { color:var(--bc-green-600); font-size:14px; letter-spacing:.14em; margin-bottom:18px; }
.bc-apply-intro h1,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] h1 { color:#fff; font-size:86px; font-weight:800; letter-spacing:0; line-height:1; margin:0 0 24px; max-width:1280px; }
.bc-apply-intro p,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-cms-section-intro,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-cms-section-intro p,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-cms-prose,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-cms-prose p { color:rgba(255,255,255,.84); display:block!important; font-size:20px; line-height:1.65; margin-bottom:22px; max-width:760px; }
.bc-apply-intro .bc-actions,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-programme-actions { gap:14px; margin-top:34px; }
.bc-apply .bc-btn,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-programme-btn { border-radius:999px; font-size:16px; font-weight:900; min-height:58px; padding:17px 28px; }
.bc-apply .bc-btn--gold,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-programme-btn--green { background:var(--bc-gold-500); border-color:var(--bc-gold-500); color:var(--bc-navy-950)!important; box-shadow:0 18px 42px rgba(254,203,7,.28); }
.bc-apply .bc-btn--ghost,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-programme-btn--outline { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.52); color:#fff!important; }
.bc-apply .bc-btn--ghost:hover,
.bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-programme-btn--outline:hover { background:#fff; color:var(--bc-navy-900)!important; }
.bc-apply-process .bc-section-heading { align-items:end; gap:40px; margin-bottom:48px; }
.bc-apply-process .bc-section-heading h2 { color:var(--bc-navy-900); font-size:52px; letter-spacing:0; line-height:1.08; margin:8px 0 0; max-width:820px; }
.bc-apply-process .bc-section-heading > p,
.bc-apply-process__intro { color:var(--bc-slate-700); display:block!important; font-size:22px; line-height:1.55; max-width:580px; }
.bc-apply-process__intro p { font-size:inherit; line-height:inherit; margin:0; }
.bc-step-grid { counter-reset:steps; display:grid; gap:20px; grid-template-columns:repeat(var(--cms-columns-desktop, 2),minmax(0,1fr)); list-style:none; margin:0; padding:0; }
.bc-step-grid li { background:#fff; border:1px solid var(--bc-slate-300); border-radius:8px; box-shadow:0 18px 42px rgba(7,23,49,.06); display:grid; gap:20px; grid-template-columns:62px 1fr; min-height:210px; padding:28px; transition:border-color var(--bc-transition), box-shadow var(--bc-transition), transform var(--bc-transition); }
.bc-step-grid li:hover { border-color:rgba(29,146,91,.5); box-shadow:0 24px 54px rgba(7,23,49,.1); transform:translateY(-2px); }
.bc-step-grid li:last-child { background:linear-gradient(180deg,#edf9f3,#fff); border-color:#a9ddc0; grid-column:1/-1; min-height:170px; }
.bc-step-grid li>span { align-items:center; background:var(--bc-navy-800); border-radius:50%; color:#fff; display:flex; font-size:15px; font-weight:900; height:52px; justify-content:center; width:52px; }
.bc-step-grid h3 { color:var(--bc-navy-900); font-size:22px; line-height:1.2; margin:2px 0 12px; }
.bc-step-grid p,
.bc-step-grid__text,
.bc-step-grid__text p { color:var(--bc-slate-700); display:block!important; font-size:18px; line-height:1.65; margin-bottom:0; }
.bc-step-grid .bc-text-link { display:inline-flex; font-size:17px; margin-top:16px; }

@media (max-width: 991px) { .bc-program-summary__grid { grid-template-columns:1fr; } .bc-program-summary dl { max-width:38rem; } }
@media (max-width: 991px) {
  .bc-apply-intro,
  .bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] { padding:88px 0; }
  .bc-apply-intro h1,
  .bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] h1 { font-size:64px; }
  .bc-apply-process .bc-section-heading { align-items:start; flex-direction:column; gap:16px; }
  .bc-apply-process .bc-section-heading h2 { font-size:44px; }
  .bc-step-grid { grid-template-columns:1fr; }
  .bc-step-grid li:last-child { grid-column:auto; }
}
@media (max-width: 767px) { .bc-program-cta .bc-container { align-items:stretch; flex-direction:column; } .bc-detail-sections article { grid-template-columns:1fr; } .bc-apply-intro, .bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] { padding:66px 0; } .bc-apply-intro h1, .bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] h1 { font-size:44px; } .bc-apply-intro p, .bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-cms-section-intro, .bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-cms-section-intro p, .bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-cms-prose, .bc-cms-banner[class*="bc-cms-banner--apply_now_banner"] .bc-cms-prose p { font-size:17px; } .bc-apply-process .bc-section-heading h2 { font-size:34px; } .bc-apply-process .bc-section-heading > p, .bc-apply-process__intro { font-size:17px; } .bc-step-grid li { grid-template-columns:1fr; min-height:0; padding:22px; } .bc-step-grid li>span { height:46px; width:46px; } .bc-step-grid h3 { font-size:20px; } .bc-step-grid p, .bc-step-grid__text, .bc-step-grid__text p { font-size:16px; } }
