/* BWC typography: contemporary bakery editorial, without generic display-serif styling. */
html[data-course="bwc"] {
  --font-body: "Manrope", "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei", "Segoe UI", Arial, sans-serif;
  --font-display: "Avenir Next", "Manrope", "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei", "Segoe UI", Arial, sans-serif;
}

html[data-course="bwc"]:not([lang="zh-Hans"]) {
  --font-body: "Manrope", "Avenir Next", "Segoe UI", Arial, sans-serif;
  --font-display: "Avenir Next", "Manrope", "Segoe UI", Arial, sans-serif;
}

html[data-course="bwc"][lang="zh-Hans"] {
  --font-body: "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei", "Manrope", Arial, sans-serif;
  --font-display: "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei", "Avenir Next", "Manrope", Arial, sans-serif;
}

html[data-course="bwc"] body,
html[data-course="bwc"] button,
html[data-course="bwc"] input,
html[data-course="bwc"] select,
html[data-course="bwc"] textarea,
html[data-course="bwc"] summary {
  font-family: var(--font-body) !important;
}

html[data-course="bwc"] :is(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .font-display,
  .hero h1,
  .hero-proof-item strong,
  .faculty-credential-item strong,
  .skill-proof-stat strong,
  .transformation-story-label,
  .checkout-deadline-date,
  .payment-choice-title,
  .payment-installment-offer strong,
  .offer-countdown-unit strong,
  .checkout-sales-title,
  .checkout-price-before strong,
  .checkout-price-now,
  .checkout-payment-heading strong,
  .payment-benefits-title,
  .campus-start-date,
  .learning-journey-visual figcaption > span:first-child,
  .learning-stage strong
) {
  font-family: var(--font-display) !important;
  font-weight: 650 !important;
  font-kerning: normal;
  font-feature-settings: "kern" 1;
}

html[data-course="bwc"]:not([lang="zh-Hans"]) :is(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .font-display,
  .hero h1,
  .hero-proof-item strong,
  .faculty-credential-item strong,
  .skill-proof-stat strong,
  .transformation-story-label,
  .checkout-deadline-date,
  .payment-choice-title,
  .payment-installment-offer strong,
  .offer-countdown-unit strong,
  .checkout-sales-title,
  .checkout-price-before strong,
  .checkout-price-now,
  .checkout-payment-heading strong,
  .payment-benefits-title,
  .campus-start-date,
  .learning-journey-visual figcaption > span:first-child,
  .learning-stage strong
) {
  font-family: var(--font-display) !important;
}

html[data-course="bwc"][lang="zh-Hans"] :is(h1, h2, h3, .font-display) {
  letter-spacing: -.02em !important;
}

html[data-course="bwc"] :is(h1, h2, h3) {
  overflow-wrap: normal;
  text-wrap: pretty;
  word-break: normal;
}

html[data-course="bwc"] main :is(p, li, summary) {
  text-wrap: pretty;
}

html[data-course="bwc"] #transformation {
  overflow-x: clip;
}

html[data-course="bwc"] .heading-lines .headline-line {
  display: block;
  width: max-content;
  max-width: 100%;
  white-space: nowrap;
}

html[data-course="bwc"] .heading-lines .headline-line + .headline-line {
  margin-top: .06em;
}

/* FCC Skills hierarchy: section label leads; the BWC-specific promise supports it. */
html[data-course="bwc"] .skills-header h2.skills-eyebrow {
  color: #fff;
  font-family: var(--font-display) !important;
  font-size: clamp(3.25rem, 5.2vw, 4.75rem) !important;
  font-weight: 650 !important;
  line-height: .98 !important;
  letter-spacing: -.055em !important;
}

html[data-course="bwc"] .skills-header p.skills-support {
  color: #a99786;
  font-family: var(--font-display) !important;
  font-size: clamp(1.375rem, 2vw, 1.875rem) !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: -.025em !important;
}

html[data-course="bwc"] .form-input:focus-visible {
  border-color: transparent;
  outline: 2px solid var(--brown);
  outline-offset: 4px;
}

html[data-course="bwc"] #why-jwc h2.faculty-section-title {
  font-family: var(--font-display) !important;
  font-size: clamp(2.25rem, 3.889vw, 3.5rem) !important;
  font-weight: 650 !important;
  line-height: 1.05 !important;
  letter-spacing: -.035em !important;
}

html[data-course="bwc"] #why-jwc .faculty-summary {
  max-width: 36rem;
  margin-top: 1rem;
  color: rgba(239, 229, 214, .72);
  font-size: 1rem;
  line-height: 1.75;
  text-wrap: pretty;
}

@media (max-width: 767px) {
  html[data-course="bwc"] .hero h1,
  html[data-course="bwc"][lang="zh-Hans"] .hero h1 {
    max-width: none;
    font-size: 2.8rem !important;
    line-height: 1.04 !important;
  }

  html[data-course="bwc"]:not([lang="zh-Hans"]) .hero h1 {
    max-width: none;
    font-size: 3.05rem !important;
    font-weight: 650 !important;
    line-height: 1.02 !important;
  }

  html[data-course="bwc"] main h2 {
    font-size: 2rem !important;
    line-height: 1.16 !important;
  }

  html[data-course="bwc"] .skill-card-copy h3 {
    font-size: 1.32rem !important;
    line-height: 1.28 !important;
  }

  html[data-course="bwc"] .skills-header h2.skills-eyebrow {
    font-size: clamp(2.375rem, 11vw, 2.875rem) !important;
    line-height: 1 !important;
  }

  html[data-course="bwc"] .skills-header p.skills-support {
    font-size: 1.375rem !important;
    line-height: 1.2 !important;
  }

  html[data-course="bwc"] #why-jwc h2.faculty-section-title {
    font-size: 2.25rem !important;
  }

  html[data-course="bwc"] .transformation-flow {
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }

  html[data-course="bwc"] .transformation-flow .transformation-story-media {
    min-height: 14rem !important;
    aspect-ratio: 16 / 10 !important;
  }

  html[data-course="bwc"] .transformation-flow .transformation-story-copy {
    padding: 1.25rem 1.2rem 1.4rem !important;
  }

  html[data-course="bwc"] .transformation-flow .transformation-story-copy h3 {
    font-size: 1.45rem !important;
    line-height: 1.28 !important;
  }

  html[data-course="bwc"] #campus-intakes h2,
  html[data-course="bwc"] #contact h2 {
    font-size: 1.92rem !important;
  }
}

@media (max-width: 339px) {
  html[data-course="bwc"] .heading-lines .headline-line {
    width: auto;
    white-space: normal;
  }
}
