/* =========================================================
   Individual courses — corporate polish (homepage / Java profession)
   Does NOT restyle .jp-hero / .hero-section
   ========================================================= */

body.course-page:not([class*="profession-page"]) {
  --cc-ink: #0b1424;
  --cc-muted: #64748b;
  --cc-line: rgba(15, 23, 42, 0.08);
  --cc-surface: #ffffff;
  --cc-soft: #f4f7fb;
  --cc-soft-2: #eef3f9;
  --cc-cyan: #0891b2;
  --cc-cyan-deep: #0e7490;
  --cc-amber: #f59e0b;
  --cc-amber-deep: #ea580c;
  --cc-orange: #f97316;
  --cc-navy: #1a1a2e;
  --cc-navy-deep: #0f172a;
  --cc-radius: 1.15rem;
  --cc-shadow: 0 1rem 2.4rem rgba(15, 23, 42, 0.07);
  --cc-shadow-hover: 0 1.35rem 2.8rem rgba(15, 23, 42, 0.12);
}

/* Page canvas */
body.course-page:not([class*="profession-page"]) main {
  background:
    radial-gradient(ellipse 70% 28rem at 8% 12%, rgba(8, 145, 178, 0.06), transparent 70%),
    radial-gradient(ellipse 50% 22rem at 92% 40%, rgba(245, 158, 11, 0.05), transparent 65%),
    linear-gradient(180deg, #f7f9fc 0%, #ffffff 18%, #f7f9fc 100%);
  color: var(--cc-ink);
}

body.course-page:not([class*="profession-page"]) main > section:not(.jp-hero):not(.hero-section):not(.instructor):not(.contact):not(#signup):not(#enroll-form):not(#teacher) {
  position: relative;
  padding-top: clamp(3rem, 5vw, 4.25rem) !important;
  padding-bottom: clamp(3rem, 5vw, 4.25rem) !important;
}

body.course-page:not([class*="profession-page"]) main > section.bg-light,
body.course-page:not([class*="profession-page"]) main > section.py-5.bg-light,
body.course-page:not([class*="profession-page"]) #course-details,
body.course-page:not([class*="profession-page"]) #program,
body.course-page:not([class*="profession-page"]) #certificate,
body.course-page:not([class*="profession-page"]) .certificate-section,
body.course-page:not([class*="profession-page"]) #reviews,
body.course-page:not([class*="profession-page"]) .course-reviews,
body.course-page:not([class*="profession-page"]) #faq {
  background: linear-gradient(180deg, var(--cc-soft) 0%, var(--cc-soft-2) 100%) !important;
}

/* Titles & leads — Manrope / navy like home + Java profession */
body.course-page:not([class*="profession-page"]) main > section:not(.jp-hero):not(.hero-section) .section-title,
body.course-page:not([class*="profession-page"]) main > section:not(.jp-hero):not(.hero-section) h2.display-4,
body.course-page:not([class*="profession-page"]) main > section:not(.jp-hero):not(.hero-section) h2.display-5,
body.course-page:not([class*="profession-page"]) main > section:not(.jp-hero):not(.hero-section) h2.display-6,
body.course-page:not([class*="profession-page"]) main .program-includes-head__title {
  font-family: "Manrope", system-ui, sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -0.055em !important;
  line-height: 1.08 !important;
  color: var(--cc-ink) !important;
  -webkit-text-fill-color: var(--cc-ink) !important;
  background: none !important;
}

body.course-page:not([class*="profession-page"]) main > section:not(.jp-hero):not(.hero-section) .lead,
body.course-page:not([class*="profession-page"]) main > section:not(.jp-hero):not(.hero-section) .lead.text-muted,
body.course-page:not([class*="profession-page"]) main > section:not(.jp-hero):not(.hero-section) .text-muted.lead,
body.course-page:not([class*="profession-page"]) main .program-includes-head__lead {
  color: var(--cc-muted) !important;
  -webkit-text-fill-color: var(--cc-muted) !important;
  font-family: "Manrope", system-ui, sans-serif !important;
  font-weight: 500 !important;
  max-width: 40rem;
}

/* Individual learning card — white text on dark gradient (override muted .lead) */
html body.course-page:not([class*="profession-page"]) #pricing .individual-card .individual-title,
html body.course-page:not([class*="profession-page"]) #pricing .individual-card p.lead,
html body.course-page:not([class*="profession-page"]) #pricing .individual-card .lead,
html body.course-page:not([class*="profession-page"]) main .individual-card .individual-title,
html body.course-page:not([class*="profession-page"]) main .individual-card p.lead,
html body.course-page:not([class*="profession-page"]) main .individual-card .lead {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-weight: 700 !important;
  text-shadow: 0 1px 12px rgba(0, 0, 0, 0.4) !important;
  max-width: none !important;
  opacity: 1 !important;
}

html body.course-page:not([class*="profession-page"]) #pricing .individual-card .individual-title,
html body.course-page:not([class*="profession-page"]) main .individual-card .individual-title {
  font-weight: 850 !important;
}

/* Light cards */
body.course-page:not([class*="profession-page"]) main .card:not(.final-project-card):not(.project-card-ms),
body.course-page:not([class*="profession-page"]) main .module-card,
body.course-page:not([class*="profession-page"]) main .learning-card,
body.course-page:not([class*="profession-page"]) main .hover-lift:not(.final-project-card),
body.course-page:not([class*="profession-page"]) main .advantage-card-bright,
body.course-page:not([class*="profession-page"]) main .audience-card,
body.course-page:not([class*="profession-page"]) main .js-project-card {
  border: 1px solid var(--cc-line) !important;
  border-radius: var(--cc-radius) !important;
  background: var(--cc-surface) !important;
  box-shadow: var(--cc-shadow) !important;
  color: var(--cc-ink) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

body.course-page:not([class*="profession-page"]) main .card:not(.final-project-card):hover,
body.course-page:not([class*="profession-page"]) main .module-card:hover,
body.course-page:not([class*="profession-page"]) main .learning-card:hover,
body.course-page:not([class*="profession-page"]) main .hover-lift:not(.final-project-card):hover {
  transform: translateY(-4px);
  border-color: rgba(8, 145, 178, 0.28) !important;
  box-shadow: var(--cc-shadow-hover) !important;
}

body.course-page:not([class*="profession-page"]) main .card h3,
body.course-page:not([class*="profession-page"]) main .card h4,
body.course-page:not([class*="profession-page"]) main .card h5,
body.course-page:not([class*="profession-page"]) main .card .h5,
body.course-page:not([class*="profession-page"]) main .module-card h3,
body.course-page:not([class*="profession-page"]) main .module-card h4,
body.course-page:not([class*="profession-page"]) main .learning-card h3,
body.course-page:not([class*="profession-page"]) main .learning-card h4 {
  color: var(--cc-ink) !important;
  -webkit-text-fill-color: var(--cc-ink) !important;
  font-family: "Manrope", system-ui, sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em;
}

body.course-page:not([class*="profession-page"]) main .card p,
body.course-page:not([class*="profession-page"]) main .card .small,
body.course-page:not([class*="profession-page"]) main .card .text-muted,
body.course-page:not([class*="profession-page"]) main .module-card p,
body.course-page:not([class*="profession-page"]) main .learning-card p {
  color: var(--cc-muted) !important;
  -webkit-text-fill-color: var(--cc-muted) !important;
}

body.course-page:not([class*="profession-page"]) main .card > i[class*="bi"],
body.course-page:not([class*="profession-page"]) main .card .bi:not(.icon-wrapper .bi):not(.icon-wrapper i),
body.course-page:not([class*="profession-page"]) main .module-icon,
body.course-page:not([class*="profession-page"]) main .icon-circle {
  color: var(--cc-amber-deep) !important;
}

/* Learning cards — dark corporate header chip (readable white text) */
body.course-page:not([class*="profession-page"]) main .learning-card .icon-wrapper,
body.course-page:not([class*="profession-page"]) main .learning-card .icon-wrapper.bg-success,
body.course-page:not([class*="profession-page"]) main .learning-card .icon-wrapper.bg-primary,
body.course-page:not([class*="profession-page"]) main .learning-card .icon-wrapper.bg-warning,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-success,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-primary,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-warning {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.65rem !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0.85rem 1rem !important;
  border-radius: 0.95rem !important;
  background:
    radial-gradient(circle at 92% 20%, rgba(249, 115, 22, 0.28), transparent 42%),
    linear-gradient(135deg, #0b1424 0%, #0f2744 55%, #0e4a5c 100%) !important;
  border: 1px solid rgba(125, 211, 252, 0.28) !important;
  box-shadow:
    0 0.65rem 1.4rem rgba(15, 23, 42, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.course-page:not([class*="profession-page"]) main .learning-card .icon-wrapper *,
body.course-page:not([class*="profession-page"]) main .learning-card .icon-wrapper i,
body.course-page:not([class*="profession-page"]) main .learning-card .icon-wrapper span,
body.course-page:not([class*="profession-page"]) main .learning-card .icon-wrapper .text-white,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-success *,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-success i,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-success span,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-success .text-white,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-primary *,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-primary .text-white,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-warning *,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-warning .text-white {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.course-page:not([class*="profession-page"]) main .learning-card .icon-wrapper i,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-success i,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-primary i,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-warning i {
  color: #7dd3fc !important;
  -webkit-text-fill-color: #7dd3fc !important;
  flex: 0 0 auto;
  filter: none !important;
}

body.course-page:not([class*="profession-page"]) main .learning-card .icon-wrapper span,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-success span,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-primary span,
body.course-page:not([class*="profession-page"]) main .icon-wrapper.bg-warning span {
  font-family: "Manrope", system-ui, sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.25 !important;
}

body.course-page:not([class*="profession-page"]) main .learning-card:hover .icon-wrapper,
body.course-page:not([class*="profession-page"]) main .learning-card:hover .icon-wrapper.bg-success {
  border-color: rgba(249, 115, 22, 0.45) !important;
  box-shadow:
    0 0.85rem 1.7rem rgba(15, 23, 42, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

/* Program modules — soft corporate strip */
body.course-page:not([class*="profession-page"]) #program .module-card {
  border-left: 3px solid var(--cc-orange) !important;
}

body.course-page:not([class*="profession-page"]) #program .module-duration,
body.course-page:not([class*="profession-page"]) #program .module-hours-badge,
body.course-page:not([class*="profession-page"]) .badge.bg-primary,
body.course-page:not([class*="profession-page"]) .badge.bg-success,
body.course-page:not([class*="profession-page"]) .badge.bg-warning {
  color: var(--cc-amber-deep) !important;
  background: rgba(245, 158, 11, 0.12) !important;
  border: 1px solid rgba(245, 158, 11, 0.28) !important;
  font-weight: 750;
}

/* Accordion / FAQ */
body.course-page:not([class*="profession-page"]) .accordion-item {
  border: 1px solid var(--cc-line) !important;
  border-radius: var(--cc-radius) !important;
  background: #fff !important;
  box-shadow: var(--cc-shadow);
  overflow: hidden;
  margin-bottom: 0.85rem;
}

body.course-page:not([class*="profession-page"]) .accordion-button {
  color: var(--cc-ink) !important;
  background: #fff !important;
  font-family: "Manrope", system-ui, sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em;
  box-shadow: none !important;
}

body.course-page:not([class*="profession-page"]) .accordion-button:not(.collapsed) {
  color: var(--cc-cyan-deep) !important;
  background: #fff !important;
}

body.course-page:not([class*="profession-page"]) .accordion-body,
body.course-page:not([class*="profession-page"]) .accordion-body p,
body.course-page:not([class*="profession-page"]) .accordion-body li {
  color: var(--cc-muted) !important;
  -webkit-text-fill-color: var(--cc-muted) !important;
}

body.course-page:not([class*="profession-page"]) #faq details {
  height: 100%;
  padding: 1rem 1.15rem;
  border: 1px solid var(--cc-line);
  border-radius: 1rem;
  background: #fff;
  box-shadow: var(--cc-shadow);
}

body.course-page:not([class*="profession-page"]) #faq summary {
  color: var(--cc-ink);
  font-family: "Manrope", system-ui, sans-serif;
  font-weight: 800;
  cursor: pointer;
  list-style: none;
}

body.course-page:not([class*="profession-page"]) #faq details[open] summary {
  color: var(--cc-cyan-deep);
  margin-bottom: 0.55rem;
}

body.course-page:not([class*="profession-page"]) #faq details p {
  margin: 0;
  color: var(--cc-muted) !important;
}

/* Pricing */
body.course-page:not([class*="profession-page"]) #pricing {
  background:
    radial-gradient(circle at 100% 0%, rgba(8, 145, 178, 0.07), transparent 42%),
    linear-gradient(180deg, #fff, #fffaf2) !important;
}

body.course-page:not([class*="profession-page"]) #pricing .card.border-success,
body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured {
  border: 2px solid rgba(243, 156, 18, 0.55) !important;
  box-shadow:
    0 1rem 2.4rem rgba(22, 33, 62, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
}

/* Featured tariff — light, readable header (not dark-on-dark) */
body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header {
  position: relative;
  padding: 1.35rem 1.15rem 1.15rem !important;
  background:
    radial-gradient(ellipse 80% 120% at 12% 0%, rgba(243, 156, 18, 0.14), transparent 58%),
    linear-gradient(180deg, #fff8e7 0%, #fff3d6 52%, #ffffff 100%) !important;
  color: var(--cc-ink) !important;
  -webkit-text-fill-color: var(--cc-ink) !important;
  border-bottom: 1px solid rgba(243, 156, 18, 0.22) !important;
}

body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 3px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, #f39c12 0%, #ffd166 48%, #2e7d6e 100%);
}

body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header h3,
body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header h4 {
  color: var(--cc-ink) !important;
  -webkit-text-fill-color: var(--cc-ink) !important;
  font-weight: 850 !important;
}

body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header .price-tag,
body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header .display-5 {
  color: #c07800 !important;
  -webkit-text-fill-color: #c07800 !important;
  font-family: "Manrope", system-ui, sans-serif !important;
  font-size: clamp(1.85rem, 4vw, 2.35rem) !important;
  font-weight: 850 !important;
  letter-spacing: -0.04em;
  line-height: 1.05;
}

body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header p {
  color: var(--cc-muted) !important;
  -webkit-text-fill-color: var(--cc-muted) !important;
  opacity: 1 !important;
  font-weight: 550 !important;
}

body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--alt .card-header {
  background: linear-gradient(180deg, #f6fafb 0%, #ffffff 100%) !important;
  border-bottom: 1px solid rgba(22, 33, 62, 0.08) !important;
}

body.course-page:not([class*="profession-page"]) #pricing .card-header.bg-success,
body.course-page:not([class*="profession-page"]) #pricing .card-header.bg-primary {
  background: linear-gradient(135deg, #07182f 0%, #102a4d 55%, #1a1a2e 100%) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-bottom: 0 !important;
}

body.course-page:not([class*="profession-page"]) #pricing .card-header.bg-success *,
body.course-page:not([class*="profession-page"]) #pricing .card-header.bg-primary * {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

body.course-page:not([class*="profession-page"]) #pricing .card-header.bg-success .price-tag,
body.course-page:not([class*="profession-page"]) #pricing .card-header.bg-success .display-5,
body.course-page:not([class*="profession-page"]) #pricing .card-header.bg-primary .price-tag,
body.course-page:not([class*="profession-page"]) #pricing .card-header.bg-primary .display-5 {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

body.course-page:not([class*="profession-page"]) #pricing .price-value,
body.course-page:not([class*="profession-page"]) #pricing .price-tag,
body.course-page:not([class*="profession-page"]) #pricing .display-3,
body.course-page:not([class*="profession-page"]) #pricing .display-4 {
  color: var(--cc-ink) !important;
  -webkit-text-fill-color: var(--cc-ink) !important;
  font-family: "Manrope", system-ui, sans-serif !important;
  font-weight: 850 !important;
  letter-spacing: -0.04em;
}

/* Featured header wins over generic price rules + course-brand navy header */
body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header,
body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header.bg-success {
  background:
    radial-gradient(ellipse 80% 120% at 12% 0%, rgba(243, 156, 18, 0.14), transparent 58%),
    linear-gradient(180deg, #fff8e7 0%, #fff3d6 52%, #ffffff 100%) !important;
  color: var(--cc-ink) !important;
  -webkit-text-fill-color: var(--cc-ink) !important;
}

body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header *,
body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header h3,
body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header h4 {
  color: var(--cc-ink) !important;
  -webkit-text-fill-color: var(--cc-ink) !important;
}

body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header .price-tag,
body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header .display-5 {
  color: #c07800 !important;
  -webkit-text-fill-color: #c07800 !important;
}

body.course-page:not([class*="profession-page"]) #pricing .course-pricing-card--featured .card-header p {
  color: var(--cc-muted) !important;
  -webkit-text-fill-color: var(--cc-muted) !important;
  opacity: 1 !important;
}

body.course-page:not([class*="profession-page"]) #pricing .btn-warning,
body.course-page:not([class*="profession-page"]) #pricing .btn-success,
body.course-page:not([class*="profession-page"]) main .btn-warning:not(.jp-hero__btn) {
  border: 0 !important;
  background: linear-gradient(100deg, #ffb347 0%, #f59e0b 45%, #f97316 100%) !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-weight: 850 !important;
  box-shadow: 0 0.85rem 1.8rem rgba(249, 115, 22, 0.28);
  border-radius: 0.8rem;
}

body.course-page:not([class*="profession-page"]) main .btn-outline-primary:not(.jp-hero__btn) {
  border-width: 1.5px !important;
  border-color: rgba(8, 145, 178, 0.45) !important;
  color: var(--cc-cyan-deep) !important;
  font-weight: 750 !important;
  border-radius: 0.8rem;
}

body.course-page:not([class*="profession-page"]) main .btn-outline-primary:not(.jp-hero__btn):hover {
  background: rgba(8, 145, 178, 0.08) !important;
  color: var(--cc-cyan-deep) !important;
}

/* =========================================================
   DARK PANELS — only light text (override custom.css #2c3e50)
   ========================================================= */
body.course-page:not([class*="profession-page"]) .final-project-card,
body.course-page:not([class*="profession-page"]) .project-card-ms {
  background:
    radial-gradient(circle at 88% 12%, rgba(255, 255, 255, 0.18), transparent 28%),
    linear-gradient(135deg, #0f172a 0%, #164e63 42%, #ea580c 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: calc(var(--cc-radius) + 0.15rem) !important;
  box-shadow:
    0 1.8rem 3.5rem rgba(15, 23, 42, 0.28),
    0 0 0 1px rgba(14, 116, 144, 0.2) !important;
  color: #fff !important;
}

body.course-page:not([class*="profession-page"]) .final-project-card,
body.course-page:not([class*="profession-page"]) .final-project-card *:not(.bg-white):not(.bg-white *):not(.fp-teacher-card):not(.fp-teacher-card *):not(.badge):not(.badge *):not(a.btn):not(.btn *),
body.course-page:not([class*="profession-page"]) .project-card-ms,
body.course-page:not([class*="profession-page"]) .project-card-ms *:not(.bg-white):not(.bg-white *):not(.fp-teacher-card):not(.fp-teacher-card *):not(.badge):not(.badge *):not(a.btn):not(.btn *) {
  color: rgba(255, 255, 255, 0.96) !important;
  -webkit-text-fill-color: rgba(255, 255, 255, 0.96) !important;
}

body.course-page:not([class*="profession-page"]) .final-project-card h2,
body.course-page:not([class*="profession-page"]) .final-project-card h3,
body.course-page:not([class*="profession-page"]) .final-project-card h4,
body.course-page:not([class*="profession-page"]) .project-card-ms h2,
body.course-page:not([class*="profession-page"]) .project-card-ms h3 {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

body.course-page:not([class*="profession-page"]) .final-project-card .lead,
body.course-page:not([class*="profession-page"]) .final-project-card p:not(.fp-teacher-card p):not(.fp-teacher-card__note),
body.course-page:not([class*="profession-page"]) .final-project-card li:not(.fp-teacher-card li),
body.course-page:not([class*="profession-page"]) .final-project-card .text-muted,
body.course-page:not([class*="profession-page"]) .final-project-card .small,
body.course-page:not([class*="profession-page"]) .project-card-ms p:not(.fp-teacher-card p):not(.fp-teacher-card__note),
body.course-page:not([class*="profession-page"]) .project-card-ms li:not(.fp-teacher-card li) {
  color: rgba(255, 255, 255, 0.92) !important;
  -webkit-text-fill-color: rgba(255, 255, 255, 0.92) !important;
}

/* Teacher card — dark text on white (must beat white-panel rules) */
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card,
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card .fp-teacher-card__name,
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card strong,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card .fp-teacher-card__name,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card strong {
  color: #0b1424 !important;
  -webkit-text-fill-color: #0b1424 !important;
}
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card .fp-teacher-card__role,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card .fp-teacher-card__role {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
}
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card .fp-teacher-card__lead,
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card .fp-teacher-card__points li,
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card .fp-teacher-card__points li span,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card .fp-teacher-card__lead,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card .fp-teacher-card__points li,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card .fp-teacher-card__points li span {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card .fp-teacher-card__points i,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card .fp-teacher-card__points i {
  color: #ea580c !important;
  -webkit-text-fill-color: #ea580c !important;
}
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card .fp-teacher-card__note,
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card .fp-teacher-card__code,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card .fp-teacher-card__note,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card .fp-teacher-card__code {
  display: none !important;
}

body.course-page:not([class*="profession-page"]) .final-project-card ul li i,
body.course-page:not([class*="profession-page"]) .project-card-ms li i,
body.course-page:not([class*="profession-page"]) .final-project-card .text-warning,
body.course-page:not([class*="profession-page"]) .project-card-ms .text-warning {
  color: #ffd166 !important;
  -webkit-text-fill-color: #ffd166 !important;
}

/* Nested white inset cards + teacher card stay dark text */
body.course-page:not([class*="profession-page"]) .final-project-card .bg-white,
body.course-page:not([class*="profession-page"]) .final-project-card .bg-white *,
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card,
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card .fp-teacher-card__name,
body.course-page:not([class*="profession-page"]) .final-project-card .fp-teacher-card strong,
body.course-page:not([class*="profession-page"]) .project-card-ms .bg-white,
body.course-page:not([class*="profession-page"]) .project-card-ms .bg-white *,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card .fp-teacher-card__name,
body.course-page:not([class*="profession-page"]) .project-card-ms .fp-teacher-card strong {
  color: var(--cc-ink, #0b1424) !important;
  -webkit-text-fill-color: var(--cc-ink, #0b1424) !important;
}

body.course-page:not([class*="profession-page"]) .final-project-card .bg-white .text-muted,
body.course-page:not([class*="profession-page"]) .project-card-ms .bg-white .text-muted {
  color: var(--cc-muted) !important;
  -webkit-text-fill-color: var(--cc-muted) !important;
}

/* Other dark panels */
body.course-page:not([class*="profession-page"]) [class*="bg-dark"],
body.course-page:not([class*="profession-page"]) .signup-banner:not(.signup-banner--light),
body.course-page:not([class*="profession-page"]) .middle-focus-banner.bg-dark,
body.course-page:not([class*="profession-page"]) .dark-bg {
  color: #f8fafc !important;
}

body.course-page:not([class*="profession-page"]) [class*="bg-dark"] p,
body.course-page:not([class*="profession-page"]) [class*="bg-dark"] li,
body.course-page:not([class*="profession-page"]) [class*="bg-dark"] h2,
body.course-page:not([class*="profession-page"]) [class*="bg-dark"] h3,
body.course-page:not([class*="profession-page"]) [class*="bg-dark"] h4,
body.course-page:not([class*="profession-page"]) [class*="bg-dark"] .text-muted,
body.course-page:not([class*="profession-page"]) [class*="bg-dark"] .small {
  color: rgba(248, 250, 252, 0.92) !important;
  -webkit-text-fill-color: rgba(248, 250, 252, 0.92) !important;
}

/* Topic lists in modules */
body.course-page:not([class*="profession-page"]) .topic-list li,
body.course-page:not([class*="profession-page"]) .topic-practice,
body.course-page:not([class*="profession-page"]) .module-card li {
  color: var(--cc-muted) !important;
}

body.course-page:not([class*="profession-page"]) .topic-list li i,
body.course-page:not([class*="profession-page"]) .topic-practice i,
body.course-page:not([class*="profession-page"]) .module-card li i.bi-check2,
body.course-page:not([class*="profession-page"]) .module-card .bi-check-lg,
body.course-page:not([class*="profession-page"]) .module-card .text-success {
  color: var(--cc-cyan) !important;
}

/* Links in light content */
body.course-page:not([class*="profession-page"]) main > section:not(.jp-hero):not(.hero-section) a:not(.btn):not(.jp-hero__btn):not(.nav-link):not(.dropdown-item) {
  color: var(--cc-amber-deep);
  font-weight: 650;
}

body.course-page:not([class*="profession-page"]) main > section:not(.jp-hero):not(.hero-section) a:not(.btn):not(.jp-hero__btn):hover {
  color: var(--cc-orange);
}

/* Kill legacy teal accents from java.css on course bodies */
body.course-page:not([class*="profession-page"]) main .section-title::after,
body.course-page:not([class*="profession-page"]) main h2.section-title::after {
  display: none !important;
  content: none !important;
}

/* Volume / metrics if present on courses */
body.course-page:not([class*="profession-page"]) .volume-stat-card {
  border: 1px solid var(--cc-line);
  border-radius: var(--cc-radius);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: var(--cc-shadow);
}

body.course-page:not([class*="profession-page"]) .volume-stat-card__value {
  color: var(--cc-ink) !important;
  font-family: "Manrope", system-ui, sans-serif !important;
  font-weight: 850 !important;
}

body.course-page:not([class*="profession-page"]) .volume-stat-card__text,
body.course-page:not([class*="profession-page"]) .volume-stat-card .text-muted {
  color: var(--cc-muted) !important;
}

/* Audience / "who is it for" checklists — even left edge */
.course-checklist,
ul.course-checklist,
ul.list-unstyled.course-checklist {
  display: block !important;
  list-style: none !important;
  margin: 0 0 0.25rem !important;
  padding: 0 !important;
  width: 100% !important;
}

.course-checklist > li,
ul.course-checklist > li,
ul.list-unstyled.course-checklist > li {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  gap: 0.75rem !important;
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  flex-basis: 100% !important;
  margin: 0 0 0.85rem !important;
  margin-left: 0 !important;
  padding: 0 !important;
  padding-left: 0 !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}

.course-checklist > li:last-child {
  margin-bottom: 0 !important;
}

.course-checklist > li > i,
.course-checklist > li > .bi,
.course-checklist > li > [class*="bi-"] {
  flex: 0 0 1.35rem !important;
  width: 1.35rem !important;
  min-width: 1.35rem !important;
  margin: 0.2rem 0 0 !important;
  margin-right: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
}

.course-checklist > li > span,
.course-checklist > li > a {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  line-height: 1.45 !important;
}

.course-checklist > li > span a {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

/* =========================================================
   Mobile polish (all individual courses) — header/nav untouched
   ========================================================= */

/* One bullet system for program modules (kill double markers) */
body.course-page:not([class*="profession-page"]) #program .module-card .list-unstyled li::before {
  width: auto !important;
  height: auto !important;
  background: none !important;
  border-radius: 0 !important;
  opacity: 1 !important;
  box-shadow: none !important;
}

/* Sticky CTA styles (fallback if course-common missing) */
body.course-page .sticky-mobile-cta {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1040;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: #fff;
  box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.1);
}

body.course-page .sticky-mobile-cta__btn {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.85rem;
  border-radius: 0.75rem;
  background: linear-gradient(135deg, #f39c12, #e67e22);
  color: #fff !important;
  font-weight: 750;
  text-decoration: none !important;
}

body.course-page .sticky-mobile-cta__max {
  flex: 0 0 2.85rem;
  width: 2.85rem;
  height: 2.85rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: linear-gradient(135deg, #6b4eff, #3d2db8);
  color: #fff !important;
  text-decoration: none !important;
}

@media (max-width: 991.98px) {
  body.course-page:not([class*="profession-page"]) main {
    overflow-x: clip;
  }

  body.course-page:not([class*="profession-page"]) #program .module-card .card-body {
    padding: 1.15rem !important;
  }

  body.course-page:not([class*="profession-page"]) #program .module-card h4 {
    font-size: 1.05rem !important;
    line-height: 1.3 !important;
  }

  body.course-page:not([class*="profession-page"]) #program .module-card .project-badge {
    font-size: 0.86rem !important;
    line-height: 1.4 !important;
    padding: 0.7rem 0.85rem !important;
  }

  /* Certificate: stack from tablet, no overlap */
  body.course-page .certificate-gallery {
    flex-direction: column !important;
    align-items: center !important;
    gap: 1.15rem !important;
    min-height: 0 !important;
    padding: 0.5rem 0 !important;
  }

  body.course-page .certificate-gallery__item,
  body.course-page .certificate-gallery__item--rus,
  body.course-page .certificate-gallery__item--en {
    position: relative !important;
    width: min(100%, 22rem) !important;
    transform: none !important;
  }

  body.course-page .certificate-gallery:hover .certificate-gallery__item--rus,
  body.course-page .certificate-gallery:hover .certificate-gallery__item--en {
    transform: none !important;
  }
}

@media (max-width: 767.98px) {
  body.course-page:not([class*="profession-page"]) main > section.py-5:not(.jp-hero):not(.hero-section),
  body.course-page:not([class*="profession-page"]) main > section.course-reviews,
  body.course-page:not([class*="profession-page"]) main > section.certificate-section {
    padding-top: 2.35rem !important;
    padding-bottom: 2.35rem !important;
  }

  body.course-page:not([class*="profession-page"]) .section-title,
  body.course-page:not([class*="profession-page"]) .display-5.fw-bold {
    font-size: clamp(1.45rem, 6.5vw, 1.85rem) !important;
    line-height: 1.2 !important;
  }

  /* Audience checklist */
  body.course-page .course-checklist > li {
    gap: 0.6rem !important;
    margin-bottom: 0.75rem !important;
  }

  body.course-page .course-checklist > li > i,
  body.course-page .course-checklist > li > [class*="bi-"] {
    flex-basis: 1.25rem !important;
    width: 1.25rem !important;
    min-width: 1.25rem !important;
    font-size: 1.15rem !important;
  }

  /* Learning cards */
  body.course-page:not([class*="profession-page"]) .learning-card {
    padding: 1rem !important;
  }

  body.course-page:not([class*="profession-page"]) .learning-card .icon-wrapper {
    padding: 0.65rem 0.8rem !important;
    gap: 0.5rem !important;
    margin-bottom: 0.75rem !important;
  }

  body.course-page:not([class*="profession-page"]) .learning-card .icon-wrapper i {
    font-size: 1.25rem !important;
  }

  body.course-page:not([class*="profession-page"]) .learning-card .icon-wrapper span {
    font-size: 0.92rem !important;
    line-height: 1.25 !important;
  }

  body.course-page:not([class*="profession-page"]) .learning-card .text-muted,
  body.course-page:not([class*="profession-page"]) .learning-card p {
    font-size: 0.9rem !important;
    line-height: 1.45 !important;
  }

  /* Pricing */
  body.course-page:not([class*="profession-page"]) #pricing .display-5,
  body.course-page:not([class*="profession-page"]) #pricing .display-4,
  body.course-page:not([class*="profession-page"]) #pricing .pricing-price {
    font-size: clamp(1.55rem, 7.5vw, 1.95rem) !important;
    line-height: 1.15 !important;
  }

  body.course-page:not([class*="profession-page"]) #pricing .card-header {
    padding: 1.05rem 1rem !important;
  }

  body.course-page:not([class*="profession-page"]) #pricing .card-body {
    padding: 1.05rem !important;
  }

  body.course-page:not([class*="profession-page"]) #pricing .list-unstyled li {
    font-size: 0.92rem !important;
    line-height: 1.4 !important;
  }

  /* Room for sticky CTA */
  body.course-page:has(.sticky-mobile-cta) {
    padding-bottom: 4.75rem !important;
  }
}

@media (max-width: 575.98px) {
  body.course-page:not([class*="profession-page"]) #program .module-card .list-unstyled li {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
    font-size: 0.88rem !important;
  }

  body.course-page:not([class*="profession-page"]) #pricing .btn {
    width: 100% !important;
  }
}

/* Java program modules — corporate cards from assets JSON */
body.course-page .jp-mod-grid {
  align-items: stretch;
}

body.course-page .jp-mod {
  border: 1px solid rgba(15, 23, 42, 0.08) !important;
  border-radius: 1.15rem !important;
  background: #fff !important;
  box-shadow: 0 0.85rem 1.8rem rgba(15, 23, 42, 0.06) !important;
  overflow: hidden;
}

body.course-page .jp-mod .card-body {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  padding: 1.25rem 1.2rem 1.3rem !important;
}

body.course-page .jp-mod__head {
  display: flex;
  gap: 0.85rem;
  align-items: flex-start;
}

body.course-page .jp-mod__num {
  flex: 0 0 auto;
  min-width: 2.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.75rem;
  background: linear-gradient(135deg, #0f172a, #1e3a5f);
  color: #fff !important;
  font-family: "Manrope", system-ui, sans-serif;
  font-weight: 800;
  font-size: 0.85rem;
  letter-spacing: 0.02em;
}

body.course-page .jp-mod__title {
  margin: 0 0 0.35rem !important;
  color: #0f172a !important;
  font-family: "Manrope", system-ui, sans-serif !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  display: flex;
  gap: 0.45rem;
  align-items: flex-start;
}

body.course-page .jp-mod__title i {
  color: #ea580c !important;
  margin-top: 0.15rem;
  flex: 0 0 auto;
}

body.course-page .jp-mod__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem 0.75rem;
  align-items: center;
}

body.course-page .jp-mod__hours,
body.course-page .jp-mod__home {
  font-size: 0.82rem !important;
  font-weight: 650 !important;
  color: #475569 !important;
}

body.course-page .jp-mod__topics {
  margin: 0 !important;
  padding: 0 !important;
}

body.course-page .jp-mod__topics li {
  position: relative;
  padding: 0.4rem 0 0.4rem 1.15rem !important;
  margin: 0 !important;
  border-bottom: 1px dashed rgba(15, 23, 42, 0.08);
  color: #334155 !important;
  font-size: 0.9rem !important;
  line-height: 1.45 !important;
}

body.course-page .jp-mod__topics li:last-child {
  border-bottom: 0;
}

body.course-page .jp-mod__topics li::before {
  content: "" !important;
  position: absolute;
  left: 0;
  top: 0.75rem;
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: #ea580c;
}

body.course-page .jp-mod__project,
body.course-page .jp-mod__checks {
  margin-top: 0.15rem;
  padding: 0.85rem 0.9rem;
  border-radius: 0.85rem;
  background: linear-gradient(180deg, #f8fafc, #f1f5f9);
  border: 1px solid rgba(15, 23, 42, 0.06);
}

body.course-page .jp-mod__label {
  margin: 0 0 0.35rem !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b !important;
}

body.course-page .jp-mod__project-name {
  margin: 0 0 0.45rem !important;
  color: #0f172a !important;
  font-weight: 800 !important;
  font-size: 0.95rem !important;
  line-height: 1.35 !important;
}

body.course-page .jp-mod__task,
body.course-page .jp-mod__result {
  margin: 0 0 0.35rem !important;
  color: #334155 !important;
  font-size: 0.88rem !important;
  line-height: 1.45 !important;
}

body.course-page .jp-mod__task:last-child,
body.course-page .jp-mod__result:last-child {
  margin-bottom: 0 !important;
}

body.course-page .jp-mod__checks ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.4rem;
}

body.course-page .jp-mod__checks li {
  display: flex;
  gap: 0.45rem;
  align-items: flex-start;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: #0f172a !important;
  font-size: 0.86rem !important;
  line-height: 1.4 !important;
}

body.course-page .jp-mod__checks li::before {
  content: none !important;
  display: none !important;
}

body.course-page .jp-mod__checks li i {
  color: #16a34a !important;
  margin-top: 0.1rem;
  flex: 0 0 auto;
}

@media (max-width: 767.98px) {
  body.course-page .jp-mod__title {
    font-size: 0.98rem !important;
  }
  body.course-page .jp-mod__topics li,
  body.course-page .jp-mod__task,
  body.course-page .jp-mod__result,
  body.course-page .jp-mod__checks li {
    font-size: 0.86rem !important;
  }
}

/* ===== Program section head — corporate, more expressive ===== */
body.course-page:not([class*="profession-page"]) #program > .container > .row.justify-content-center.mb-5 {
  margin-bottom: 2.35rem !important;
}

body.course-page:not([class*="profession-page"]) #program > .container > .row.justify-content-center.mb-5 > [class*="col-"] {
  position: relative;
  max-width: 46rem;
  margin-left: auto;
  margin-right: auto;
  padding: 1.55rem 1.65rem 1.4rem !important;
  border: 1px solid rgba(22, 33, 62, 0.08);
  border-radius: 1.45rem;
  background:
    radial-gradient(ellipse 70% 120% at 8% 0%, rgba(243, 156, 18, 0.11), transparent 55%),
    radial-gradient(ellipse 55% 100% at 94% 100%, rgba(46, 125, 110, 0.09), transparent 52%),
    linear-gradient(180deg, #ffffff 0%, #f6fafb 100%);
  box-shadow:
    0 1.1rem 2.6rem rgba(22, 33, 62, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

body.course-page:not([class*="profession-page"]) #program > .container > .row.justify-content-center.mb-5 > [class*="col-"]::before {
  content: "";
  position: absolute;
  left: 1.2rem;
  right: 1.2rem;
  top: 0;
  height: 3px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, #f39c12 0%, #ffd166 48%, #2e7d6e 100%);
}

body.course-page:not([class*="profession-page"]) #program .program-includes-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  margin: 0 auto;
  padding: 0;
  background: none;
  border: 0;
  box-shadow: none;
}

body.course-page:not([class*="profession-page"]) #program .program-includes-head__eyebrow {
  display: inline-flex !important;
  align-items: center;
  gap: 0.45rem;
  margin: 0 !important;
  padding: 0.38rem 0.9rem 0.38rem 0.62rem;
  border: 1px solid rgba(243, 156, 18, 0.28);
  border-radius: 999px;
  background: linear-gradient(135deg, #fff8e7 0%, #fff3d6 100%);
  color: #c07800 !important;
  -webkit-text-fill-color: #c07800 !important;
  font-size: 0.72rem !important;
  font-weight: 850 !important;
  letter-spacing: 0.12em !important;
  box-shadow: 0 4px 14px rgba(243, 156, 18, 0.12);
}

body.course-page:not([class*="profession-page"]) #program .program-includes-head__eyebrow .bi {
  display: grid;
  place-items: center;
  width: 1.45rem;
  height: 1.45rem;
  margin-right: 0 !important;
  border-radius: 0.45rem;
  background: linear-gradient(145deg, #f39c12, #e67e22);
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 0.82rem;
  box-shadow: 0 4px 10px rgba(230, 126, 34, 0.28);
}

body.course-page:not([class*="profession-page"]) #program .program-includes-head__title {
  margin: 0 !important;
  padding: 0 0.35rem;
  font-size: clamp(1.7rem, 3.6vw, 2.45rem) !important;
  font-weight: 850 !important;
  letter-spacing: -0.045em !important;
  line-height: 1.1 !important;
  color: #16213e !important;
  -webkit-text-fill-color: #16213e !important;
  background: none !important;
  text-wrap: balance;
}

body.course-page:not([class*="profession-page"]) #program .program-includes-head__accent {
  display: block !important;
  width: 4.5rem;
  height: 3px;
  margin: 0.1rem auto 0 !important;
  border-radius: 999px;
  background: linear-gradient(90deg, #f39c12, #ffd166) !important;
  box-shadow: 0 2px 10px rgba(243, 156, 18, 0.35);
}

body.course-page:not([class*="profession-page"]) #program .program-includes-head__lead,
body.course-page:not([class*="profession-page"]) #program .lead.program-includes-head__lead {
  max-width: 36rem !important;
  margin: 1.05rem auto 0 !important;
  padding: 0.85rem 1.05rem !important;
  border: 1px solid rgba(22, 33, 62, 0.07);
  border-radius: 0.95rem;
  background: rgba(255, 255, 255, 0.78) !important;
  color: #5d6d7e !important;
  -webkit-text-fill-color: #5d6d7e !important;
  font-size: 0.98rem !important;
  font-weight: 550 !important;
  line-height: 1.55 !important;
  text-align: center;
  box-shadow: 0 6px 18px rgba(22, 33, 62, 0.035);
}

@media (max-width: 575.98px) {
  body.course-page:not([class*="profession-page"]) #program > .container > .row.justify-content-center.mb-5 > [class*="col-"] {
    padding: 1.2rem 1rem 1.1rem !important;
    border-radius: 1.15rem;
  }

  body.course-page:not([class*="profession-page"]) #program .program-includes-head__title {
    font-size: 1.55rem !important;
  }

  body.course-page:not([class*="profession-page"]) #program .program-includes-head__lead {
    padding: 0.75rem 0.85rem !important;
    font-size: 0.9rem !important;
  }
}

/* ===== Projects / labs section head ===== */
body.course-page:not([class*="profession-page"]) .course-projects-head {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  margin: 0 auto;
  padding: 1.45rem 1.55rem 1.25rem;
  max-width: 44rem;
  border: 1px solid rgba(22, 33, 62, 0.08);
  border-radius: 1.4rem;
  background:
    radial-gradient(ellipse 65% 110% at 10% 0%, rgba(46, 125, 110, 0.11), transparent 55%),
    radial-gradient(ellipse 50% 90% at 92% 100%, rgba(243, 156, 18, 0.08), transparent 52%),
    linear-gradient(180deg, #ffffff 0%, #f6fafb 100%);
  box-shadow:
    0 1rem 2.4rem rgba(22, 33, 62, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

body.course-page:not([class*="profession-page"]) .course-projects-head::before {
  content: "";
  position: absolute;
  left: 1.15rem;
  right: 1.15rem;
  top: 0;
  height: 3px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, #2e7d6e 0%, #5cb8a8 48%, #f39c12 100%);
}

body.course-page:not([class*="profession-page"]) .course-projects-head__eyebrow {
  display: inline-flex !important;
  align-items: center;
  gap: 0.45rem;
  margin: 0 !important;
  padding: 0.38rem 0.9rem 0.38rem 0.62rem;
  border: 1px solid rgba(46, 125, 110, 0.24);
  border-radius: 999px;
  background: linear-gradient(135deg, #eef8f5 0%, #e4f3ef 100%);
  color: #1f6b5c !important;
  -webkit-text-fill-color: #1f6b5c !important;
  font-size: 0.72rem !important;
  font-weight: 850 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase;
  box-shadow: 0 4px 14px rgba(46, 125, 110, 0.1);
}

body.course-page:not([class*="profession-page"]) .course-projects-head__eyebrow .bi {
  display: grid;
  place-items: center;
  width: 1.45rem;
  height: 1.45rem;
  border-radius: 0.45rem;
  background: linear-gradient(145deg, #2e7d6e, #25695c);
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 0.82rem;
  box-shadow: 0 4px 10px rgba(46, 125, 110, 0.28);
}

body.course-page:not([class*="profession-page"]) .course-projects-head__title {
  margin: 0 !important;
  padding: 0 0.35rem;
  font-size: clamp(1.65rem, 3.4vw, 2.35rem) !important;
  font-weight: 850 !important;
  letter-spacing: -0.045em !important;
  line-height: 1.1 !important;
  color: #16213e !important;
  -webkit-text-fill-color: #16213e !important;
  background: none !important;
  text-wrap: balance;
}

body.course-page:not([class*="profession-page"]) .course-projects-head__accent {
  display: block !important;
  width: 4.25rem;
  height: 3px;
  margin: 0.05rem auto 0 !important;
  border-radius: 999px;
  background: linear-gradient(90deg, #2e7d6e, #5cb8a8) !important;
  box-shadow: 0 2px 10px rgba(46, 125, 110, 0.28);
}

body.course-page:not([class*="profession-page"]) .course-projects-head__lead {
  max-width: 34rem !important;
  margin: 0.85rem auto 0 !important;
  padding: 0.8rem 1rem !important;
  border: 1px solid rgba(22, 33, 62, 0.07);
  border-radius: 0.95rem;
  background: rgba(255, 255, 255, 0.78) !important;
  color: #5d6d7e !important;
  -webkit-text-fill-color: #5d6d7e !important;
  font-size: 0.96rem !important;
  font-weight: 550 !important;
  line-height: 1.55 !important;
  text-align: center;
  box-shadow: 0 6px 18px rgba(22, 33, 62, 0.035);
}

@media (max-width: 575.98px) {
  body.course-page:not([class*="profession-page"]) .course-projects-head {
    padding: 1.15rem 1rem 1.05rem;
    border-radius: 1.1rem;
  }

  body.course-page:not([class*="profession-page"]) .course-projects-head__title {
    font-size: 1.5rem !important;
  }

  body.course-page:not([class*="profession-page"]) .course-projects-head__lead {
    padding: 0.72rem 0.85rem !important;
    font-size: 0.88rem !important;
  }
}

/* ===== Individual learning block — corporate ===== */
body.course-page:not([class*="profession-page"]) .course-individual-learning {
  background:
    radial-gradient(ellipse 60% 100% at 0% 0%, rgba(243, 156, 18, 0.08), transparent 55%),
    radial-gradient(ellipse 50% 90% at 100% 100%, rgba(46, 125, 110, 0.07), transparent 52%),
    linear-gradient(180deg, #f7f9fc 0%, #ffffff 100%) !important;
}

body.course-page:not([class*="profession-page"]) .course-individual-learning::before,
body.course-page:not([class*="profession-page"]) .course-individual-learning::after {
  display: none !important;
  content: none !important;
}

body.course-page:not([class*="profession-page"]) .course-individual-learning__card {
  background: #ffffff !important;
  border: 1px solid rgba(22, 33, 62, 0.08) !important;
  box-shadow: 0 1.1rem 2.6rem rgba(22, 33, 62, 0.07) !important;
}

body.course-page:not([class*="profession-page"]) .course-individual-learning__card::before {
  height: 3px !important;
  background: linear-gradient(90deg, #f39c12 0%, #ffd166 48%, #2e7d6e 100%) !important;
}

body.course-page:not([class*="profession-page"]) .course-individual-learning__eyebrow {
  display: inline-flex !important;
  align-items: center;
  gap: 0.45rem;
  padding: 0.38rem 0.9rem 0.38rem 0.62rem !important;
  border: 1px solid rgba(243, 156, 18, 0.28) !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #fff8e7 0%, #fff3d6 100%) !important;
  color: #c07800 !important;
  -webkit-text-fill-color: #c07800 !important;
  font-size: 0.72rem !important;
  font-weight: 850 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase;
  box-shadow: 0 4px 14px rgba(243, 156, 18, 0.12);
}

body.course-page:not([class*="profession-page"]) .course-individual-learning__eyebrow .bi {
  display: grid;
  place-items: center;
  width: 1.45rem;
  height: 1.45rem;
  border-radius: 0.45rem;
  background: linear-gradient(145deg, #f39c12, #e67e22);
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 0.82rem;
  box-shadow: 0 4px 10px rgba(230, 126, 34, 0.28);
}

body.course-page:not([class*="profession-page"]) .course-individual-learning__card h2,
body.course-page:not([class*="profession-page"]) .course-individual-learning__card h3 {
  color: #16213e !important;
  -webkit-text-fill-color: #16213e !important;
}

body.course-page:not([class*="profession-page"]) .course-individual-learning__lead {
  background: rgba(255, 255, 255, 0.92) !important;
  border: 1px solid rgba(22, 33, 62, 0.08) !important;
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  box-shadow: 0 8px 22px rgba(22, 33, 62, 0.05) !important;
}

body.course-page:not([class*="profession-page"]) .course-individual-learning__price {
  background: linear-gradient(135deg, #16213e 0%, #1e3a5f 100%) !important;
  box-shadow: 0 12px 28px rgba(22, 33, 62, 0.18) !important;
}

body.course-page:not([class*="profession-page"]) .course-individual-learning__button {
  background: linear-gradient(100deg, #ffb347 0%, #f59e0b 45%, #f97316 100%) !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  box-shadow: 0 0.85rem 1.8rem rgba(249, 115, 22, 0.28) !important;
}

body.course-page:not([class*="profession-page"]) .course-individual-learning__button:hover {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

body.course-page:not([class*="profession-page"]) .course-individual-learning__features i {
  color: #2e7d6e !important;
}
