/*
Theme Name:		 Astra Child
Theme URI:		 http://childtheme-generator.com/
Description:	 Astra Child is a child theme of Astra, created by ChildTheme-Generator.com
Author:			 JobCertifications.com
Author URI:		 http://childtheme-generator.com/
Template:		 astra
Version:		 1.0.0
Text Domain:	 astra-child
*/

/* ---- Brand tokens ---- */
:root {
  --jc-navy: #0b2545;
  --jc-navy-900: #0a1f39;
  --jc-text: #0f172a;
  --jc-muted: #64748b;
  --jc-green: #22c55e;
  --jc-green-600: #1f9a4b;
  --jc-green-700: #1ea34b;
  --jc-border: #e5e7eb;
  --jc-card: #ffffff;
  --jc-white: #ffffff;
  --jc-bg: #ffffff;
  --jc-ink: #111417;
  /* Control sizes */
  --jc-control-h: 54px;
  /* Single-course page tokens */
  --g100: #f6f7f8;
  --g200: #eceff1;
  --g300: #dfe3e6;
  --radius: 18px;
  --shadow: 0 10px 24px rgba(0, 0, 0, .08);
}

/* ---- Base ---- */
body {
  background: var(--jc-bg);
  color: var(--jc-text);
  font-family: 'Open Sans', system-ui, -apple-system, "Segoe UI", Roboto, Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Geist', system-ui, -apple-system, "Segoe UI", Roboto, Inter, Arial, sans-serif;
  color: #000;
  font-weight: 600;
  margin-top: 0;
}

h1 {
  font-size: 53px;
  font-weight: 700;
  line-height: 1.15;
}

h2 {
  font-size: 38px;
}

h3 {
  font-size: 28px;
}

h4 {
  font-size: 22px;
}

h5 {
  font-size: 18px;
}

h6 {
  font-size: 16px;
}

p {
  margin-bottom: 1.2em;
  color: var(--jc-text);
}

a {
  color: var(--jc-navy);
  text-decoration: none;
}

a:hover {
  opacity: .9;
}

/* ---- Buttons ---- */
.wp-block-button__link,
.button,
.ast-button,
input[type="submit"],
a.wp-block-button__link {
  background: var(--jc-green);
  color: #ffffff;
  border: none;
  border-radius: 12px !important;
  padding: 12px 18px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

.wp-block-button__link:hover,
.button:hover,
.ast-button:hover,
input[type="submit"]:hover {
  background: var(--jc-green-700);
  color: #ffffff;
}

.ast-button,
.menu-toggle,
.ast-custom-button-link {
  border-radius: 12px !important;
}

/* Secondary / outline buttons */
.jc-btn,
.is-style-outline .wp-block-button__link {
  background: #fff !important;
  color: #111 !important;
  border: 1px solid var(--jc-border) !important;
}

/* ---- Header ---- */
.site-header,
.ast-primary-header-bar {
  border-bottom: 1px solid rgba(0, 0, 0, .04);
}

.ast-header-break-point .menu-toggle {
  border-radius: 12px;
}

/* ---- Hero section ---- */
.jc-hero {
  background: var(--jc-navy);
  color: #fff;
  padding: clamp(40px, 5vw, 72px) 0;
}

.jc-hero .wp-block-heading,
.jc-hero h1,
.jc-hero h2,
.jc-hero p {
  color: #fff;
}

.jc-hero .jc-lead {
  color: #e5e7eb;
}

/* search row inside hero */
.jc-search {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.jc-search .select,
.jc-search select,
.jc-search input[type="search"] {
  appearance: none;
  background: #0f2a52;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 12px;
  padding: 12px 14px;
  min-width: 220px;
}

.jc-search .select:focus,
.jc-search input[type="search"]:focus {
  outline: 2px solid rgba(255, 255, 255, .25);
}

/* ---- Category icon cards ---- */
.jc-icons .wp-block-column > * {
  height: 100%;
}

.jc-icons .jc-card {
  background: var(--jc-card);
  border: 1px solid var(--jc-border);
  border-radius: 16px;
  padding: 18px;
  text-align: center;
  transition: transform .12s ease, box-shadow .2s ease;
}

.jc-icons .jc-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
}

.jc-card .jc-icon {
  font-size: 26px;
  line-height: 1;
  display: inline-block;
  margin-bottom: 10px;
}

.jc-card .title {
  font-weight: 700;
  margin: 6px 0 2px;
}

.jc-card .meta {
  color: var(--jc-muted);
  font-size: 14px;
  margin: 0;
}

.jc-card img,
.jc-card svg {
  width: 28px;
  height: 28px;
  margin-bottom: 8px;
}

/* ---- "Trusted by" logos row ---- */
.jc-trust {
  padding: 18px 0;
}

.jc-trust img {
  max-height: 34px;
  width: auto;
  filter: grayscale(0);
  opacity: .95;
  margin-right: 24px;
}

.jc-trust img:last-child {
  margin-right: 0;
}

/* ---- Browse by State row ---- */
.jc-state-row {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  padding: 14px 0;
}

.jc-state-row select {
  padding: 12px 14px;
  border: 1px solid var(--jc-border);
  border-radius: 12px;
  min-width: 220px;
}

/* ---- Featured Categories ---- */
.jc-featured .wp-block-image img {
  border-radius: 14px;
  border: 1px solid var(--jc-border);
}

.jc-featured .caption {
  font-weight: 700;
  margin-top: 8px;
}

/* ---- "How It Works" checklist ---- */
.jc-checklist {
  list-style: none;
  padding-left: 0;
}

.jc-checklist li {
  position: relative;
  padding-left: 26px;
  margin: 8px 0;
}

.jc-checklist li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--jc-green);
  font-weight: 700;
}

/* ---- Catalog layout scaffolding ---- */
.jc-catalog {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 24px;
}

@media (max-width: 960px) {
  .jc-catalog {
    grid-template-columns: 1fr;
  }
}

.jc-filter {
  background: #fff;
  border: 1px solid var(--jc-border);
  border-radius: 16px;
  padding: 16px;
  position: sticky;
  top: 16px;
  height: fit-content;
}

.jc-results .jc-card {
  padding: 16px;
  text-align: left;
  background: #e2e8f0;
}

/* ---- Footer strip ---- */
.jc-strip {
  background: #0e0e0e;
  color: #cbd5e1;
  padding: 16px;
}

.jc-strip a {
  color: #e5e7eb;
}

/* ---- Utilities & spacing helpers ---- */
.jc-wrap {
  max-width: 1200px;
  margin-inline: auto;
  padding: clamp(16px, 3vw, 32px);
}

.jc-grid {
  display: grid;
  gap: 20px;
}

.jc-grid.cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.jc-grid.cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.jc-grid.cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 960px) {
  .jc-grid.cols-4 {
    grid-template-columns: repeat(2, 1fr);
  }

  .jc-grid.cols-3 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .jc-grid.cols-2,
  .jc-grid.cols-3,
  .jc-grid.cols-4 {
    grid-template-columns: 1fr;
  }
}

/* ---- Catalog filter row ---- */
.jc-filters {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
  margin: 10px 0 18px;
}

.jc-filters .facetwp-facet {
  margin: 0 !important;
}

.jc-filters .facetwp-facet select {
  height: var(--jc-control-h) !important;
  padding: 0 12px !important;
  box-sizing: border-box;
  margin: 0 !important;
  min-width: 240px;
}

/* Search button */
.jc-search {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: var(--jc-control-h);
  padding: 0 16px;
  margin: 0;
  border: 0;
  border-radius: 10px;
  background: #1ed760;
  color: #ffffff;
  font-weight: 700;
  text-transform: none;
  line-height: 1;
  vertical-align: middle;
}

.jc-search:hover {
  filter: brightness(1.05);
}

@media (max-width: 640px) {
  .jc-filters {
    flex-wrap: wrap;
  }

  .jc-filters .facetwp-facet {
    flex: 1 1 220px;
  }
}

/* ---- Career Field Cards (Scoped to .jc-hero) ---- */
.jc-hero {
  padding: 2rem 1rem;
  background: transparent !important;
  box-shadow: none;
}

.jc-hero .jc-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
}

.jc-hero .jc-card {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background: transparent !important;
  color: #fff;
  box-shadow: none;
  min-height: 260px;
}

.jc-hero .jc-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 1 !important;
  z-index: 0;
}

.jc-hero .jc-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.08),
    rgba(0, 0, 0, 0.18)
  );
  z-index: 1;
}

.jc-hero .jc-card-content {
  position: relative;
  z-index: 2;
  padding: 1.25rem 1.25rem 1.4rem;
  background: none !important;
  color: #fff;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.55);
}

.jc-hero .jc-title {
  margin: 0 0 .5rem 0;
  font-weight: 700;
  font-size: 1.25rem;
  color: #fff !important;
}

.jc-hero .jc-chips {
  margin: 0 0 1rem 0;
}

.jc-hero .jc-chip {
  display: inline-block;
  padding: .28rem .6rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .5);
  color: #fff !important;
  background: rgba(0, 0, 0, .25);
  font-size: .85rem;
  line-height: 1;
  margin-right: .45rem;
}

.jc-hero .jc-cta {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  background: #21c55d;
  color: #fff !important;
  padding: .55rem .9rem;
  border-radius: 6px;
  font-weight: 700;
  font-size: .92rem;
  transition: background .2s ease;
}

.jc-hero .jc-cta svg {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 auto;
}

.jc-hero .jc-link {
  position: absolute;
  inset: 0;
  z-index: 3;
}

.jc-hero .jc-card:hover img {
  filter: brightness(1.08);
}

.jc-hero .jc-card:hover .jc-cta {
  background: #16a34a;
}

.jc-hero .jc-card {
  position: relative;
  overflow: hidden;
}

@media (max-width: 600px) {
  .jc-hero-headline {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    max-width: 16ch;
    display: block;
    font-size: clamp(28px, 8vw, 40px);
    line-height: 1.1;
  }
}

@media (max-width: 600px) {
  .jc-hero-subtitle {
    font-size: clamp(15px, 4.2vw, 18px);
    line-height: 1.3;
    letter-spacing: -0.01em;
    margin-top: 10px;
    max-width: 30ch;
  }
}

/* Hero top separator line */
.wp-block-separator.jc-hero-separator {
  border: 0 !important;
  height: 3px !important;
  width: 100% !important;
  margin: 0 !important;
  display: block !important;
  background-image: linear-gradient(90deg, #1ed760, #00ffb0, #1ed760) !important;
  background-color: transparent !important;
  opacity: 1 !important;
}

/* ---- Card layout options ---- */
.jc-cards--hybrid .jc-card {
  text-align: center;
}

.jc-cards--hybrid .jc-fields {
  text-align: left;
}

.jc-cards--left .jc-card {
  text-align: left;
}

.jc-cards--left .jc-fields {
  margin: 10px 0 12px;
  max-width: none;
}

/* ---- Pills ---- */
.jc-pill-row {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 10px;
}

.pill {
  display: inline-block;
  padding: 6px 14px;
  border-radius: 9999px;
  font-size: 0.85rem;
  font-weight: 600;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .5px;
  text-decoration: none;
  transition: background-color .2s ease, transform .15s ease;
}

.pill.finance { background: #14532D; }
.pill.finance:hover { background: #166534; transform: translateY(-1px); }

.pill.technology { background: #0F766E; }
.pill.technology:hover { background: #115E59; transform: translateY(-1px); }

.pill.healthcare { background: #0D9488; }
.pill.healthcare:hover { background: #0F766E; transform: translateY(-1px); }

.pill.skilled-trades { background: #C2410C; }
.pill.skilled-trades:hover { background: #EA580C; transform: translateY(-1px); }

.pill.management { background: #374151; }
.pill.management:hover { background: #4B5563; transform: translateY(-1px); }

.pill.transportation { background: #0EA5E9; }
.pill.transportation:hover { background: #0284C7; transform: translateY(-1px); }

/* Sub-industry ghost chips */
.chip {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 9999px;
  font-size: .80rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .3px;
  text-decoration: none;
  color: #475569;
  background: #FFFFFF;
  border: 1.5px solid #CBD5E1;
}

.chip:hover {
  border-color: #94A3B8;
}

.chip.more {
  cursor: default;
  background: #F8FAFC;
  border-color: #E2E8F0;
  color: #475569;
}

.jc-results--legacy .jc-card {
  background: transparent !important;
}

/* Darken course field text for readability */
.facetwp-template .jc-card strong,
.facetwp-template .jc-card p {
  color: #111827 !important;
}

/* ---- Sticky header ---- */
.site-header,
.ast-primary-header-bar {
  position: sticky;
  top: 0;
  z-index: 9999;
  background: rgba(255,255,255,.95);
  backdrop-filter: saturate(180%) blur(6px);
  -webkit-backdrop-filter: saturate(180%) blur(6px);
}

.admin-bar .site-header,
.admin-bar .ast-primary-header-bar {
  top: 32px;
}

@media (max-width: 782px) {
  .admin-bar .site-header,
  .admin-bar .ast-primary-header-bar {
    top: 46px;
  }
}

.wp-site-blocks {
  overflow: visible !important;
}

.home.ast-transparent-header .site-header,
.home.ast-theme-transparent-header .site-header,
.home.ast-transparent-header .ast-primary-header-bar,
.home.ast-theme-transparent-header .ast-primary-header-bar {
  position: sticky !important;
  top: 0;
  z-index: 9999;
  background: rgba(255,255,255,.95);
  backdrop-filter: saturate(180%) blur(6px);
  -webkit-backdrop-filter: saturate(180%) blur(6px);
}

.home.admin-bar .site-header,
.home.admin-bar .ast-primary-header-bar {
  top: 32px;
}

@media (max-width: 782px) {
  .home.admin-bar .site-header,
  .home.admin-bar .ast-primary-header-bar {
    top: 46px;
  }
}

.home .wp-site-blocks,
.home .site {
  overflow: visible !important;
}

/* ---- Filter card (jc-filter-scope) ---- */
.jc-after-hero.jc-filter-scope {
  background: #fff;
}

.jc-filter-scope .jc-after-hero .jc-subtle {
  color: #475569;
  font-size: 1rem;
  margin: 6px 0 14px;
}

.jc-after-hero.jc-filter-scope .jc-filter-card {
  background: #F9FAFB;
  border: 1px solid #e5e7eb;
  border-radius: 20px;
  padding: 16px;
  box-shadow:
    0 8px 20px rgba(15, 23, 42, 0.06),
    0 2px 6px rgba(15, 23, 42, 0.04);
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas:
    "head head"
    "f1 f2"
    "count actions";
  grid-auto-rows: min-content;
  gap: 12px 14px;
}

.jc-after-hero.jc-filter-scope .jc-filter-card .jc-filter-head {
  grid-area: head;
  margin: 0 0 2px 0;
}

.jc-filter-scope .jc-after-hero .jc-filter-card .jc-card-title {
  margin: 0;
  text-align: left;
  font-weight: 700;
  font-size: 1.25rem;
  color: #0f172a;
}

.jc-after-hero.jc-filter-scope .jc-filter-card .jc-facet-1 {
  grid-area: f1;
}

.jc-after-hero.jc-filter-scope .jc-filter-card .jc-facet-2 {
  grid-area: f2;
}

.jc-after-hero.jc-filter-scope .jc-select {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid #475569;
  border-radius: 14px;
  background: #fff;
  padding: 10px 12px;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.jc-after-hero.jc-filter-scope .jc-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  fill: #334155;
  display: block;
}

.jc-after-hero.jc-filter-scope .jc-select .facetwp-facet {
  width: 100%;
  margin: 0;
}

.jc-after-hero.jc-filter-scope .jc-select select,
.jc-after-hero.jc-filter-scope .jc-select .facetwp-dropdown {
  appearance: none;
  border: none;
  background: transparent;
  width: 100%;
  font-size: 1rem;
  color: #0f172a;
  outline: none;
  padding-right: 28px;
}

.jc-after-hero.jc-filter-scope .jc-select::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 14px;
  transform: translateY(-65%) rotate(45deg);
  width: 8px;
  height: 8px;
  border-right: 2px solid #334155;
  border-bottom: 2px solid #334155;
  pointer-events: none;
  opacity: .7;
}

/* ---- Count pill (FINAL) ---- */
.jc-after-hero.jc-filter-scope .jc-count {
  background: #334155 !important;
  color: #ffffff !important;
  padding: 6px 12px !important;
  border-radius: 999px !important;
  grid-area: count;
  justify-self: start;
  align-self: center;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

.jc-after-hero.jc-filter-scope .jc-count .label {
  display: inline-block !important;
}

.jc-after-hero.jc-filter-scope .jc-count .num {
  background: transparent !important;
  min-width: 0 !important;
  height: auto !important;
  padding: 0 !important;
  border-radius: 0 !important;
  font-weight: 700 !important;
}

/* Mobile: compact pill */
@media (max-width: 719px) {
  .jc-after-hero.jc-filter-scope .jc-count {
    padding: 4px 8px !important;
    column-gap: 6px !important;
    font-size: .80rem !important;
    max-width: calc(100% - 150px) !important;
  }

  .jc-after-hero.jc-filter-scope .jc-count .num {
    height: 20px !important;
    min-width: 20px !important;
    line-height: 20px !important;
    padding: 0 6px !important;
  }
}

@media (max-width: 719px) {
  body .jc-after-hero.jc-filter-scope .jc-count {
    padding: 4px 8px !important;
    column-gap: 6px !important;
    font-size: .80rem !important;
    max-width: calc(100% - 150px) !important;
  }

  body .jc-after-hero.jc-filter-scope .jc-count .num {
    height: 20px !important;
    min-width: 20px !important;
    line-height: 20px !important;
    padding: 0 6px !important;
  }
}

@media (max-width: 480px) {
  .jc-after-hero.jc-filter-scope .jc-count {
    font-size: 0;
  }

  .jc-after-hero.jc-filter-scope .jc-count::before {
    content: "";
  }

  .jc-after-hero.jc-filter-scope .jc-count .num {
    font-size: 0.82rem;
    font-weight: 700;
  }
}

/* ---- Actions ---- */
.jc-after-hero.jc-filter-scope .jc-actions {
  grid-area: actions;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-top: 4px;
}

.jc-after-hero.jc-filter-scope .jc-btn {
  background: #0f0f0f !important;
  color: #fff !important;
  font-weight: 700;
  font-size: .95rem;
  border: 0;
  border-radius: 14px;
  padding: 12px 18px;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25);
  transition: background 0.25s ease, transform 0.12s ease;
}

.jc-after-hero.jc-filter-scope .jc-btn:hover {
  background: #000000 !important;
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.35);
}

.jc-after-hero.jc-filter-scope .jc-btn:active {
  transform: none;
  filter: brightness(.98);
}

.jc-after-hero.jc-filter-scope .jc-filter-card .facetwp-facet > div {
  margin: 0 !important;
}

.jc-after-hero.jc-filter-scope .jc-filter-card h2 {
  background: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Mobile (≤719px) */
@media (max-width: 719px) {
  .jc-after-hero.jc-filter-scope {
    overflow-x: hidden;
  }

  .jc-after-hero.jc-filter-scope .jc-filter-card {
    grid-template-columns: 1fr auto;
    gap: 10px 12px;
    grid-template-areas:
      "head head"
      "f1 f1"
      "f2 f2"
      "count actions";
  }

  .jc-after-hero.jc-filter-scope .jc-filter-card .jc-facet-1,
  .jc-after-hero.jc-filter-scope .jc-filter-card .jc-facet-2 {
    margin-top: 8px;
  }

  .jc-after-hero.jc-filter-scope .jc-select::after {
    right: 12px;
    width: 7px;
    height: 7px;
  }

  .jc-after-hero.jc-filter-scope .jc-select select,
  .jc-after-hero.jc-filter-scope .jc-select .facetwp-dropdown {
    padding-right: 26px;
  }

  .jc-after-hero.jc-filter-scope .jc-btn {
    width: auto;
    min-width: 110px;
    padding: 10px 16px;
  }
}

/* Desktop */
@media (min-width: 720px) {
  .jc-after-hero.jc-filter-scope .jc-filter-card {
    background: #ffffff !important;
    border: 1px solid #000000 !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05) !important;
    border-radius: 14px !important;
    padding: 24px !important;
  }
}

/* Mobile card overrides */
@media (max-width: 719px) {
  .jc-after-hero.jc-filter-scope .jc-filter-card {
    background: #ffffff !important;
    border: 1px solid #000000 !important;
    box-shadow: 0 8px 24px rgba(15,23,42,.05) !important;
    border-radius: 14px !important;
    padding: 16px 18px !important;
  }

  .jc-after-hero.jc-filter-scope .jc-select {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  .jc-after-hero.jc-filter-scope .jc-count {
    justify-self: start !important;
    margin: 8px 14px 0 0 !important;
    padding: 4px 10px !important;
    font-size: .82rem;
  }

  .jc-after-hero.jc-filter-scope .jc-count .num {
    width: 22px;
    height: 22px;
  }

  .jc-after-hero.jc-filter-scope .jc-actions {
    justify-self: end !important;
    margin: 8px 0 0 0 !important;
  }

  .jc-after-hero.jc-filter-scope .jc-btn {
    background: #0f0f0f !important;
    color: #fff !important;
    min-width: 110px;
    padding: 10px 16px;
  }
}

/* ---- Pager ---- */
.facetwp-pager {
  display: flex;
  justify-content: flex-end;
}

/* ---- Typography & layout ---- */
.jc-wrap {
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  color: var(--jc-text);
  line-height: 1.6;
}

.jc-section {
  padding: 72px 0;
}

.jc-section.white {
  background: var(--jc-white);
}

.jc-section.muted {
  background: #f3f4f6;
}

.jc-container {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 20px;
}

.jc-center {
  text-align: center;
}

.jc-h2 {
  font-size: clamp(1.8rem, 1.2rem + 1.4vw, 2.4rem);
  font-weight: 700;
  text-align: center;
  margin-bottom: 20px;
}

.jc-h3 {
  font-size: 1.2rem;
  font-weight: 700;
  margin-bottom: 8px;
}

.jc-h3-lg {
  font-size: 1.4rem;
  font-weight: 700;
  margin-bottom: 8px;
}

.jc-intro {
  color: var(--jc-muted);
  text-align: center;
  max-width: 820px;
  margin: 0 auto 32px;
}

.jc-grid {
  display: grid;
  gap: 24px;
}

.jc-grid.g4 {
  grid-template-columns: repeat(4, 1fr);
}

.jc-grid.g3 {
  grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 1024px) {
  .jc-grid.g4 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .jc-grid.g4,
  .jc-grid.g3 {
    grid-template-columns: 1fr;
  }
}

/* ---- Cards ---- */
.jc-card {
  background: var(--jc-white);
  border-radius: 18px;
  padding: 28px 22px;
  border: 1px solid #e5e7eb;
  box-shadow: 0 6px 18px rgba(2, 6, 23, .06);
  transition: all 0.25s ease;
}

.jc-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 24px rgba(2, 6, 23, .12);
}

.jc-card.top {
  border-top: 4px solid var(--jc-green);
}

.jc-icon {
  color: var(--jc-green);
  margin-bottom: 16px;
}

.jc-icon svg {
  display: block;
  margin: 0 auto;
}

/* ---- Candidate Form ---- */
.jc-form {
  background: var(--jc-white);
  border-radius: 18px;
  box-shadow: 0 8px 20px rgba(2, 6, 23, .08);
  padding: 32px;
  border: 1px solid #eef2f7;
  margin: 0 auto 20px;
  max-width: 760px;
}

.jc-form input,
.jc-form select,
.jc-form textarea {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #d1d5db;
  border-radius: 10px;
  font-size: 0.95rem;
  margin-bottom: 16px;
}

.jc-form textarea {
  min-height: 120px;
  resize: vertical;
}

.jc-form input[type="file"] {
  padding: 6px;
  background: #f9fafb;
}

.jc-form label {
  font-size: 0.9rem;
  color: var(--jc-text);
}

.jc-privacy {
  color: var(--jc-muted);
  text-align: center;
  font-size: 0.9rem;
  margin-top: 10px;
}

/* ---- Buttons ---- */
.jc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--jc-green);
  color: #fff !important;
  border-radius: 999px;
  padding: 12px 24px;
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(37, 192, 90, .25);
  transition: all 0.25s ease;
}

.jc-btn:hover {
  transform: translateY(-2px);
  filter: brightness(.95);
}

.jc-btn.dark {
  background: var(--jc-navy);
}

/* ---- Final CTA ---- */
.jc-final {
  background: linear-gradient(90deg, var(--jc-navy), #1a4d91);
  padding: 70px 0;
  color: #fff;
  text-align: center;
}

.jc-final h3 {
  font-size: clamp(1.6rem, 1rem + 1.4vw, 2.2rem);
  font-weight: 700;
  margin-bottom: 10px;
}

.jc-final p {
  opacity: .92;
  margin-bottom: 20px;
}

/* ---- JC Patch (beat theme/plugin styles) ---- */
.jc-wrap .jc-grid {
  display: grid !important;
  gap: 24px !important;
}

.jc-wrap .jc-grid.g4 {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.jc-wrap .jc-grid.g3 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

@media (max-width: 1024px) {
  .jc-wrap .jc-grid.g4 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 640px) {
  .jc-wrap .jc-grid.g4,
  .jc-wrap .jc-grid.g3 {
    grid-template-columns: 1fr !important;
  }
}

.jc-wrap .jc-card {
  background: #fff !important;
  border-radius: 18px !important;
  border: 1px solid #e5e7eb !important;
}

.jc-wrap .jc-card.top {
  border-top: 4px solid var(--jc-green) !important;
}

.jc-wrap .jc-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 24px rgba(2, 6, 23, .12);
}

.jc-wrap .jc-icon,
.jc-wrap .jc-icon svg,
.jc-wrap .jc-icon svg * {
  color: var(--jc-green) !important;
  stroke: var(--jc-green) !important;
}

.jc-wrap .jc-h3,
.jc-wrap .jc-body {
  text-align: center !important;
}

.jc-wrap .jc-form input,
.jc-wrap .jc-form select,
.jc-wrap .jc-form textarea {
  width: 100% !important;
  background: #fff !important;
  border: 1px solid #d1d5db !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
  font-size: 0.95rem !important;
  margin-bottom: 16px !important;
  box-shadow: none !important;
}

.jc-wrap .jc-form textarea {
  min-height: 120px !important;
  resize: vertical !important;
}

.jc-wrap .jc-form input[type="file"] {
  padding: 6px !important;
  background: #f9fafb !important;
}

.jc-wrap .jc-btn {
  background: var(--jc-green) !important;
  color: #fff !important;
  border-radius: 999px !important;
}

.jc-wrap .jc-btn.dark {
  background: var(--jc-navy) !important;
}

.jc-wrap .jc-section.white {
  background: #fff !important;
}

.jc-wrap .jc-section.muted {
  background: #f3f4f6 !important;
}

.jc-wrap .jc-grid.g4 {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  display: grid !important;
  gap: 24px !important;
}

@media (max-width: 1024px) {
  .jc-wrap .jc-grid.g4 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 640px) {
  .jc-wrap .jc-grid.g4 {
    grid-template-columns: 1fr !important;
  }
}

.jc-wrap .jc-card.step {
  position: relative;
}

.jc-wrap .jc-card.step.top {
  border-top: 4px solid var(--jc-green) !important;
}

.jc-wrap .jc-icon svg * {
  stroke: #25c05a !important;
}

.jc-wrap .jc-card.step.square {
  min-height: 210px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 24px 18px;
}

.jc-wrap .jc-card.step.square .jc-h3 {
  font-size: 1rem;
  margin: 8px 0 6px;
}

.jc-wrap .jc-card.step.square .jc-body {
  font-size: .92rem;
  color: #475569;
}

.jc-wrap .jc-card.step.square .jc-icon svg * {
  stroke: #25c05a !important;
}

@media (max-width: 1024px) {
  .jc-wrap #how-it-works .jc-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .jc-wrap #how-it-works .jc-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 768px) {
  #how-it-works .jc-grid.g4 {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 480px) {
  #how-it-works .jc-grid.g4 {
    grid-template-columns: 1fr !important;
  }
}

/* ====================================================
   Course Detail (single-course) – Enforced Styles
==================================================== */

body.single-course .entry-content {
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  box-sizing: border-box !important;
}

body.single-course .entry-content .wp-block-group.alignfull,
body.single-course .entry-content .wp-block-cover.alignfull {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

body.single-course .entry-content > svg,
body.single-course .entry-content > .wp-block-group > svg,
body.single-course .entry-content .wp-block-image > svg {
  display: none !important;
}

body.single-course .entry-content svg {
  max-width: 120px !important;
  max-height: 120px !important;
}

body.single-course .hero {
  margin-top: 16px !important;
  background: #fff !important;
  border: 1px solid #9ca3af !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow) !important;
  padding: 28px !important;
}

body.single-course .badges,
body.single-course .taxonomy,
body.single-course .terms {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-bottom: 10px !important;
}

body.single-course .badges a,
body.single-course .taxonomy a,
body.single-course .terms a {
  display: inline-block !important;
  padding: 6px 10px !important;
  border-radius: 9999px !important;
  font: 700 12px/1.1 inherit !important;
  border: 1px solid var(--g300) !important;
  background: #fff !important;
  color: #0f172a !important;
  text-decoration: none !important;
}


body.single-course .title {
  margin: 6px 0 12px !important;
  font-size: clamp(28px, 3.2vw, 34px) !important;
  line-height: 1.15 !important;
  color: var(--jc-ink) !important;
}

body.single-course .provider {
  display: flex !important;
  gap: 14px !important;
  align-items: flex-start !important;
}

body.single-course .provider .label {
  font-weight: 700 !important;
  color: #0e1216 !important;
}

body.single-course .provider .name {
  color: #4b545c !important;
}


body.single-course .card,
body.single-course .entry-content .jc-card,
body.single-course .entry-content .wp-block-group.is-style-card {
  background: #fff !important;
  border: 1px solid #9ca3af !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow) !important;
  padding: 24px !important;
  margin-top: 22px !important;
}

body.single-course .h3 {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 20px !important;
  margin: 18px 0 8px !important;
}

body.single-course .h3 > svg {
  width: 18px !important;
  height: 18px !important;
  opacity: .9 !important;
  flex: 0 0 auto !important;
}

body.single-course .list {
  padding-left: 20px !important;
  margin: 0 !important;
}

body.single-course details.acc {
  margin-top: 22px !important;
  border: 1px solid var(--g200) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: var(--shadow) !important;
  background: #fff !important;
}

body.single-course .acc summary {
  list-style: none !important;
  cursor: pointer !important;
  padding: 16px 18px !important;
  font-weight: 700 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

body.single-course .acc summary::-webkit-details-marker {
  display: none !important;
}

body.single-course .acc summary .plus {
  margin-left: auto !important;
  transition: .2s !important;
}

body.single-course .acc[open] summary .plus {
  transform: rotate(45deg) !important;
}

body.single-course .acc .acc-body {
  padding: 0 18px 18px !important;
  border-top: 1px solid var(--g200) !important;
}

body.single-course .prov-list {
  display: grid !important;
  gap: 12px !important;
  margin-top: 14px !important;
}

body.single-course .prov-card {
  border: 1px solid var(--g200) !important;
  border-radius: 12px !important;
  padding: 14px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  background: #fff !important;
}

body.single-course .prov-meta {
  font-size: 14px !important;
  color: #5a646d !important;
}

body.single-course .prov-badge {
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 4px 8px !important;
  border-radius: 999px !important;
  background: #eef7ff !important;
  color: #09589c !important;
  border: 1px solid #cfe6ff !important;
  width: fit-content !important;
}

body.single-course .cta-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin-top: 24px !important;
}

body.single-course .prevnext {
  display: flex !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin-top: 36px !important;
  padding-top: 18px !important;
  border-top: 1px solid var(--g200) !important;
}

body.single-course .prevnext a {
  text-decoration: none !important;
  font-weight: 700 !important;
  color: var(--jc-green) !important;
}

body.single-course .prevnext a:hover {
  color: var(--jc-green-600) !important;
}

body.single-course .related {
  margin-top: 26px !important;
}

body.single-course .rel-grid {
  display: grid !important;
  gap: 14px !important;
}

@media (min-width: 720px) {
  body.single-course .rel-grid {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

body.single-course .rel-card {
  border: 1px solid var(--g200) !important;
  border-radius: 14px !important;
  padding: 16px !important;
  background: #fff !important;
}

body.single-course .rel-card h4 {
  margin: 0 0 6px !important;
  font-size: 16px !important;
}

body.single-course .rel-meta {
  font-size: 13px !important;
  color: var(--jc-muted) !important;
  margin-bottom: 10px !important;
}

body.single-course aside.card.subscribe .note {
  font-size: 13px !important;
  color: var(--jc-muted) !important;
  margin: -6px 0 12px !important;
}

body.single-course .field {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  min-width: 0 !important;
}

body.single-course .label {
  font-weight: 700 !important;
  font-size: 14px !important;
}

body.single-course .subscribe input[type="text"],
body.single-course .subscribe input[type="email"],
body.single-course .subscribe input[type="tel"],
body.single-course .subscribe select {
  border: 1px solid var(--g300) !important;
  border-radius: 10px !important;
  padding: 12px 12px !important;
  font: inherit !important;
  width: 100% !important;
  max-width: 100% !important;
}

body.single-course .name-row,
body.single-course .persona-fields,
body.single-course .form-row,
body.single-course .form-row-2,
body.single-course .form-row-3 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
}

body.single-course .checks {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px 16px !important;
  margin-top: 8px !important;
}

@media (min-width: 600px) {
  body.single-course .name-row {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (min-width: 900px) {
  body.single-course .persona-fields {
    grid-template-columns: 1fr 2fr !important;
  }

  body.single-course .checks {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (min-width: 980px) {
  body.single-course .grid {
    display: grid !important;
    grid-template-columns: 1fr 0.62fr !important;
    gap: 24px !important;
  }
}

body.single-course .entry-content svg {
  display: none !important;
}

/* ---- FacetWP list card ---- */
.facetwp-template .jc-list-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  padding: 20px 18px;
  box-shadow: 0 6px 18px rgba(2, 6, 23, .06);
  transition: transform .15s ease, box-shadow .2s ease;
  margin-bottom: 18px;
}

.facetwp-template .jc-list-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgba(2, 6, 23, .12);
}

.facetwp-template .jc-list-card .jc-card-title {
  margin: 8px 0 10px;
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.25;
}

.facetwp-template .jc-list-card .jc-card-title a {
  color: #0f172a;
  text-decoration: none;
}

.facetwp-template .jc-list-card .jc-row {
  margin: 8px 0;
}

.facetwp-template .jc-list-card .jc-row strong {
  display: block;
  font-size: .92rem;
  color: #0f172a;
  margin-bottom: 4px;
}

.facetwp-template .jc-list-card .jc-text {
  margin: 0;
  color: #334155;
}

.facetwp-template .jc-list-card .jc-provider {
  display: flex;
  gap: 8px;
  align-items: baseline;
}

.facetwp-template .jc-list-card .jc-provider strong {
  margin: 0;
}

.facetwp-template .jc-list-card .jc-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
}

.facetwp-template .jc-list-card .chip {
  display: inline-block;
  padding: 6px 12px;
  border-radius: 9999px;
  font-size: .8rem;
  font-weight: 600;
  background: #f1f5f9;
  color: #0f172a;
  border: 1px solid #e5e7eb;
}

.facetwp-template .jc-list-card .jc-actions {
  margin-top: 12px;
}

.facetwp-template .jc-list-card .btn.primary.jc-enroll-btn {
  background: #25c05a;
  color: #fff;
  border-radius: 12px;
  padding: 12px 16px;
  font-weight: 700;
}

.facetwp-template .jc-list-card .btn.primary.jc-enroll-btn:hover {
  filter: brightness(.95);
}

.jc-results-wrap .jc-results-meta {
  margin-bottom: 10px;
  color: #475569;
}

.jc-results-wrap .jc-pager {
  margin-top: 12px;
}

@media (max-width: 640px) {
  .facetwp-template .jc-list-card {
    padding: 18px 16px;
  }
}

/* ---- Pill badges ---- */
.jc-pill-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.pill-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 9999px;
  font-weight: 700;
  font-size: .85rem;
  line-height: 1;
  border: 1.5px solid transparent;
  user-select: none;
}

.pill-badge svg {
  display: block;
  flex: 0 0 13px;
}

.pill-trending {
  background: #FFF7ED;
  color: #C2410C;
  border-color: #FDBA74;
}

.pill-income {
  background: #EFF6FF;
  color: #1E40AF;
  border-color: #93C5FD;
}

/* ---- Global CTA ---- */
a.jc-cta {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 18px !important;
  border-radius: 999px !important;
  border: 0 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  transition:
    background 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.12s ease;
}

/* ====================================================
   Course listing cards – iteration 1
==================================================== */

.facetwp-template .jc-card {
  border-radius: 28px;
  overflow: hidden;
}

.facetwp-template .jc-card-top {
  background: #020617;
  color: #f9fafb;
  padding: 18px 18px 14px;
  text-align: center;
}

.facetwp-template .jc-card-top .jc-cat-header,
.facetwp-template .jc-card-top .jc-subrow {
  justify-content: center;
}

.facetwp-template .jc-card-top .jc-title {
  margin: 12px 0 4px;
  font-size: clamp(20px, 2.2vw, 28px);
  line-height: 1.3;
}

.facetwp-template .jc-card-top .jc-title a {
  color: #f9fafb;
  text-decoration: none;
}

.facetwp-template .jc-card .jc-fields {
  padding: 18px 18px 20px;
}

.facetwp-template .pill-trending {
  background: #fff7ed;
  color: #b45309;
  border: 1.5px solid #fbbf24;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 9999px;
}

.facetwp-template .pill-trending svg {
  width: 16px;
  height: 16px;
  stroke: currentColor;
  fill: currentColor;
}

.facetwp-template .jc-card {
    position: relative;
    overflow: hidden !important;
}

.facetwp-template .jc-card .jc-ribbon {
  position: absolute;
  top: 10px;
  right: 10px;
  width: auto;
  height: auto;
  overflow: visible;
  pointer-events: none;
  z-index: 3;
}

.facetwp-template .jc-card .jc-ribbon-text {
  position: static !important;
  transform: none !important;
  background: #f59e0b !important;
  color: #fff !important;
  font-weight: 700;
  font-size: .78rem;
  letter-spacing: .03em;
  padding: 6px 10px;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .12);
}

.jc-title {
  padding-top: 10px !important;
}

.pill-badge.pill-income {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  border-radius: 9999px;
  font-weight: 700;
  font-size: .80rem;
  line-height: 1;
  background: #FFFFFF;
  border: 1.5px solid #CBD5E1;
  color: #1E40AF;
}

.pill-badge.pill-income svg {
  display: inline-block;
  vertical-align: middle;
  width: 13px;
  height: 13px;
}

/* ====================================================
   Course listing cards – iteration 2
==================================================== */

.facetwp-template article.jc-card {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 28px !important;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.12);
  margin: 0 0 24px !important;
  padding: 0 !important;
  overflow: hidden;
  position: relative;
  color: #111827;
}

.facetwp-template article.jc-card .jc-card-top {
  background: #020617;
  color: #f9fafb;
  padding: 18px 24px 14px;
  text-align: left;
}

.facetwp-template article.jc-card .jc-card-top .jc-cat-header,
.facetwp-template article.jc-card .jc-card-top .jc-subrow {
  justify-content: center;
}

.facetwp-template article.jc-card .jc-card-top .jc-title {
  margin: 12px 0 4px !important;
  font-size: clamp(20px, 2.2vw, 28px) !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  text-align: left !important;
}

.facetwp-template article.jc-card .jc-card-top .jc-title a {
  color: #f9fafb !important;
  text-decoration: none !important;
}

.facetwp-template article.jc-card .pill.parent {
  font-size: 0.74rem !important;
  letter-spacing: 0.09em !important;
}

.facetwp-template article.jc-card .chip {
  font-size: 0.78rem !important;
  border-radius: 999px !important;
}

.facetwp-template article.jc-card .pill-badge {
  font-size: 0.78rem !important;
}

.facetwp-template article.jc-card .jc-fields {
  background: #ffffff;
  max-width: 72ch;
  margin: 10px auto 12px !important;
  padding: 18px 24px 20px !important;
  font-size: 0.9rem !important;
  color: #111827 !important;
  text-align: left !important;
}

.facetwp-template article.jc-card .jc-label-text {
  font-weight: 600 !important;
  font-size: 0.86rem !important;
  color: #111827 !important;
  text-align: left !important;
}

.facetwp-template article.jc-card .jc-data {
  color: #4b5563 !important;
  line-height: 1.55 !important;
  text-align: left !important;
}

.facetwp-template article.jc-card .jc-icon-wrap svg {
  stroke: #4b5563 !important;
}

.facetwp-template article.jc-card .jc-field:nth-of-type(3) .jc-data {
  margin-top: 4px !important;
  text-align: left !important;
}

.facetwp-template article.jc-card .jc-chips {
  gap: 0.4rem !important;
}

.facetwp-template article.jc-card .jc-chip {
  padding: 0.28rem 0.8rem !important;
  border-radius: 999px !important;
  background: #e5e7eb !important;
  font-size: 0.8rem !important;
  white-space: nowrap !important;
}

/* ====================================================
   Course listing cards – iteration 3
==================================================== */

.facetwp-template article.jc-card {
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 28px !important;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.12) !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  overflow: hidden !important;
  position: relative !important;
  color: #111827 !important;
}

.facetwp-template article.jc-card .jc-card-top {
  background: #020617;
  color: #f9fafb;
  padding: 18px 18px 14px;
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  justify-content: space-between;
}

.facetwp-template article.jc-card .jc-card-top-main {
  min-width: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.facetwp-template article.jc-card .jc-top-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  align-items: center;
}

.facetwp-template article.jc-card .jc-tag-pill {
  padding: 0.25rem 0.9rem;
  border-radius: 999px;
  font-size: 0.74rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  font-weight: 600;
  white-space: nowrap;
}

.facetwp-template article.jc-card .jc-pill-category {
  background: #4c1d95;
  color: #f3e8ff;
}

.facetwp-template article.jc-card .jc-pill-sub {
  background: transparent;
  border: 1px solid rgba(148, 163, 184, 0.85);
  color: #e5e7eb;
}

.facetwp-template article.jc-card .jc-program-title {
  font-size: 1.12rem;
  font-weight: 600;
  line-height: 1.4;
  margin: 4px 0 0;
}

.facetwp-template article.jc-card .jc-provider-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  align-items: center;
  font-size: 0.86rem;
}

.facetwp-template article.jc-card .jc-provider-label {
  font-weight: 600;
}

.facetwp-template article.jc-card .jc-provider-sep {
  opacity: 0.55;
}

.facetwp-template article.jc-card .jc-card-top-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.4rem;
}

.facetwp-template article.jc-card .jc-demand-icon {
  display: inline-flex;
  width: 18px;
  height: 18px;
}

.facetwp-template article.jc-card .jc-demand-icon svg {
  width: 100%;
  height: 100%;
  stroke: #f97316;
  stroke-width: 2;
  fill: none;
}

.facetwp-template article.jc-card .jc-pill-featured {
  padding: 0.25rem 0.9rem;
  border-radius: 999px;
  font-size: 0.74rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  background: #f97316;
  color: #fffbeb;
  box-shadow: 0 0 0 0 rgba(249, 115, 22, 0.45);
  animation: jc-featured-pulse 2.6s ease-in-out infinite;
}

@keyframes jc-featured-pulse {
  0%   { transform: scale(1);    box-shadow: 0 0 0 0 rgba(249,115,22,0.45); }
  40%  { transform: scale(1.05); box-shadow: 0 0 0 6px rgba(249,115,22,0); }
  100% { transform: scale(1);    box-shadow: 0 0 0 0 rgba(249,115,22,0); }
}

@media (prefers-reduced-motion: reduce) {
  .facetwp-template article.jc-card .jc-pill-featured {
    animation: none;
    box-shadow: none;
  }
}

.facetwp-template article.jc-card .jc-card-body {
  padding: 18px 18px 20px;
  font-size: 0.9rem;
  color: #111827;
}

.facetwp-template article.jc-card .jc-meta {
  display: grid;
  gap: 0.25rem;
  margin-bottom: 1rem;
}

.facetwp-template article.jc-card .jc-meta-row {
  display: flex;
  gap: 0.45rem;
  align-items: flex-start;
}

.facetwp-template article.jc-card .jc-icon {
  width: 16px;
  height: 16px;
  margin-top: 3px;
  flex-shrink: 0;
}

.facetwp-template article.jc-card .jc-icon svg,
.facetwp-template article.jc-card .jc-icon svg * {
  width: 100%;
  height: 100%;
  stroke: #4b5563;
  stroke-width: 1.8;
  fill: none !important;
}

.facetwp-template article.jc-card .jc-card-top .jc-icon svg,
.facetwp-template article.jc-card .jc-card-top .jc-icon svg * {
  stroke: #e5e7eb;
}

.facetwp-template article.jc-card .jc-meta-label {
  font-weight: 600;
}

.facetwp-template article.jc-card .jc-meta-text,
.facetwp-template article.jc-card .jc-trend-text {
  color: #4b5563;
}

.facetwp-template article.jc-card .jc-trend-text {
  line-height: 1.5;
  margin: 2px 0 0;
}

.facetwp-template article.jc-card .jc-roles-row {
  display: flex;
  gap: 0.45rem;
  align-items: flex-start;
  margin-bottom: 0.5rem;
}

.facetwp-template article.jc-card .jc-roles-label {
  font-size: 0.86rem;
  font-weight: 600;
  margin-bottom: 0.45rem;
}

.facetwp-template article.jc-card .jc-role-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-left: 33px;
}

.facetwp-template article.jc-card .jc-role-pill {
  padding: 0.28rem 0.8rem;
  border-radius: 999px;
  background: #e5e7eb;
  font-size: 0.8rem;
  white-space: nowrap;
}

.facetwp-template article.jc-card .jc-card-footer {
  display: flex;
  justify-content: center;
  margin-top: 1rem;
}

.facetwp-template article.jc-card .jc-cta {
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
  transition: transform 0.13s ease, box-shadow 0.13s ease;
}

.facetwp-template article.jc-card .jc-cta svg {
  width: 16px;
  height: 16px;
  stroke-width: 2.3;
  stroke: #ffffff;
  fill: none;
}

.facetwp-template article.jc-card .jc-cta:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.22);
}

.facetwp-template article.jc-card .jc-card-body,
.facetwp-template article.jc-card .jc-card-body * {
  text-align: left !important;
}

/* ====================================================
   Course listing cards – iteration 4 (canonical)
==================================================== */

.facetwp-template article.jc-card {
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 28px !important;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.12) !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  overflow: hidden !important;
  position: relative;
  color: #111827 !important;
}

.facetwp-template article.jc-card .jc-card-top {
  background: #020617 !important;
  color: #f9fafb !important;
  padding: 18px 18px 14px !important;
  display: flex !important;
  gap: 0.75rem !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
}

.facetwp-template article.jc-card .jc-card-top-main {
  min-width: 0;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.facetwp-template article.jc-card .jc-top-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  align-items: center;
}

.facetwp-template article.jc-card .jc-tag-pill {
  padding: 0.25rem 0.9rem;
  border-radius: 999px;
  font-size: 0.74rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  font-weight: 600;
  white-space: nowrap;
}

.facetwp-template article.jc-card .jc-pill-category {
  background: #4c1d95;
  color: #f3e8ff;
  border: none;
}

.facetwp-template article.jc-card .jc-pill-sub {
  background: transparent;
  border: 1px solid rgba(148, 163, 184, 0.85);
  color: #e5e7eb;
}

.facetwp-template article.jc-card .jc-program-title {
  font-size: 1.12rem !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  margin: 4px 0 0 !important;
  color: #f9fafb !important;
}

.facetwp-template article.jc-card .jc-program-title a {
  color: #f9fafb !important;
  text-decoration: none !important;
}

.facetwp-template article.jc-card .jc-provider-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  align-items: center;
  font-size: 0.86rem;
  color: #e5e7eb;
}

.facetwp-template article.jc-card .jc-provider-label {
  font-weight: 600;
}

.facetwp-template article.jc-card .jc-provider-sep {
  opacity: 0.55;
}

.facetwp-template article.jc-card .jc-provider-row .jc-icon svg {
  stroke: #e5e7eb;
}

.facetwp-template article.jc-card .jc-card-top-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.4rem;
}

.facetwp-template article.jc-card .jc-demand-icon {
  display: inline-flex;
  width: 18px;
  height: 18px;
}

.facetwp-template article.jc-card .jc-demand-icon svg {
  width: 100%;
  height: 100%;
  stroke: #f97316;
  stroke-width: 2;
  fill: none;
}

.facetwp-template article.jc-card .jc-pill-featured {
  padding: 0.25rem 0.9rem;
  border-radius: 999px;
  font-size: 0.74rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  background: #f97316;
  color: #fffbeb;
  box-shadow: 0 0 0 0 rgba(249,115,22,0.45);
  animation: jc-featured-pulse 2.6s ease-in-out infinite;
}

@media (prefers-reduced-motion: reduce) {
  .facetwp-template article.jc-card .jc-pill-featured {
    animation: none;
  }
}

.facetwp-template article.jc-card .pill-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 9999px;
  font-weight: 700;
  font-size: .78rem;
  line-height: 1;
}

.facetwp-template article.jc-card .pill-badge svg {
  width: 15px;
  height: 15px;
}

.facetwp-template article.jc-card .pill-income {
  background: #E6F4EA;
  color: #166534;
  border: 1px solid #A3E4B3;
}

.facetwp-template article.jc-card .pill-trending {
  background: #f97316;
  color: #fffbeb;
  border: 1.5px solid #fde68a;
}

.facetwp-template article.jc-card .jc-card-body {
  padding: 18px 18px 20px !important;
  font-size: 0.9rem;
  color: #111827;
}

.facetwp-template article.jc-card .jc-meta {
  display: grid;
  gap: 0.25rem;
  margin-bottom: 1rem;
}

.facetwp-template article.jc-card .jc-meta-row {
  display: flex;
  gap: 0.45rem;
  align-items: flex-start;
}

.facetwp-template article.jc-card .jc-meta-label {
  font-weight: 600;
  font-size: 0.86rem;
}

.facetwp-template article.jc-card .jc-meta-text,
.facetwp-template article.jc-card .jc-trend-text {
  color: #4b5563;
  line-height: 1.5;
}

.facetwp-template article.jc-card .jc-icon {
  width: 16px;
  height: 16px;
  margin-top: 3px;
  flex-shrink: 0;
}

.facetwp-template article.jc-card .jc-icon svg {
  width: 100%;
  height: 100%;
  stroke: #4b5563;
  stroke-width: 1.8;
  fill: none;
}

.facetwp-template article.jc-card .jc-roles-row {
  display: flex;
  gap: 0.45rem;
  align-items: flex-start;
  margin-bottom: 0.5rem;
}

.facetwp-template article.jc-card .jc-roles-label {
  font-size: 0.86rem;
  font-weight: 600;
  margin-bottom: 0.45rem;
}

.facetwp-template article.jc-card .jc-role-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-left: 33px;
}

.facetwp-template article.jc-card .jc-role-pill {
  padding: 0.28rem 0.8rem;
  border-radius: 999px;
  background: #e5e7eb;
  font-size: 0.8rem;
  white-space: nowrap;
}

.facetwp-template article.jc-card .jc-card-footer {
  display: flex;
  justify-content: center;
  margin-top: 0.75rem;
}

/* ---- Final overrides (white text in black band, left-align body) ---- */
.facetwp-template article.jc-card .jc-card-top,
.facetwp-template article.jc-card .jc-card-top * {
  color: #ffffff !important;
}

.facetwp-template article.jc-card .jc-card-top svg,
.facetwp-template article.jc-card .jc-card-top svg * {
  stroke: #ffffff !important;
  fill: none !important;
}

.facetwp-template article.jc-card .jc-card-body .jc-icon svg,
.facetwp-template article.jc-card .jc-card-body .jc-icon svg * {
  stroke: #4b5563 !important;
  fill: none !important;
}

.facetwp-template article.jc-card .jc-card-body,
.facetwp-template article.jc-card .jc-card-body * {
  text-align: left !important;
}

@media (max-width: 640px) {
  .facetwp-template article.jc-card {
    width: calc(100% - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .facetwp-template {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* View more / View less toggle – no hover styling */
.jc-card-toggle-snap,
.jc-card-toggle-snap:hover,
.jc-card-toggle-snap:focus,
.jc-card-toggle-snap:active {
  color: #111827 !important;
  text-decoration: none !important;
  background: transparent !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

.jc-card-toggle-snap:focus-visible {
  outline: none !important;
}

/* ---- Light gradient ---- */
.jc-light-gradient {
  background: linear-gradient(
    180deg,
    #ffffff 0%,
    #f8fafc 65%,
    #f1f5f9 100%
  );
}

/* ---- Cert benefits ---- */
#jc-cert-benefits { position: relative; background: #fff; margin: 0 0 18px; overflow: hidden; }

#jc-cert-benefits .swoop { display: block; width: 100%; height: 110px; }
#jc-cert-benefits .swoop path { fill: var(--jc-green); }

#jc-cert-benefits .wrap {
  max-width: 980px; margin: -26px auto 0;
  background: var(--jc-card); border: 1px solid var(--jc-border);
  border-radius: 16px; box-shadow: 0 8px 24px rgba(0,0,0,.06);
  padding: 28px 24px;
}

#jc-cert-benefits .eyebrow {
  text-transform: uppercase; letter-spacing: .08em; font-weight: 700;
  font-size: .8rem; color: var(--jc-green); margin: 0 0 6px;
}
#jc-cert-benefits h2 {
  margin: 0 0 8px; color: var(--jc-navy);
  font-size: clamp(20px, 3.2vw, 28px); line-height: 1.25;
}
#jc-cert-benefits .lede {
  color: var(--jc-muted); margin: 0 0 18px; font-size: clamp(14px, 2.4vw, 16px);
}

.facetwp-template .jc-card .jc-fields,
.facetwp-template .jc-card .jc-field,
.facetwp-template .jc-card .jc-label,
.facetwp-template .jc-card .jc-data {
  text-align: left !important;
}

#jc-cert-benefits .benefit-grid {
  list-style: none !important; padding: 0; margin: 0 0 10px;
  display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0, 1fr));
}
#jc-cert-benefits .benefit-grid li {
  list-style: none !important; display: flex; align-items: center; gap: 10px;
  border: 1px solid var(--jc-border); border-radius: 12px; padding: 12px 14px;
  background: linear-gradient(0deg,#fff,#fff),
              radial-gradient(120% 120% at 0% 100%, rgba(37,192,90,.10), transparent 60%);
  font-weight: 700; color: var(--jc-text);
}
#jc-cert-benefits .icon { width: 22px; height: 22px; color: var(--jc-green); flex: 0 0 22px; }
#jc-cert-benefits .icon svg { display: block; width: 22px; height: 22px; }

#jc-cert-benefits .footnote { margin-top: 6px; color: var(--jc-muted); font-size: .92rem; }

@media (max-width: 720px) {
  #jc-cert-benefits .swoop { height: 90px; }
  #jc-cert-benefits .wrap { margin-top: -20px; padding: 20px 16px; }
  #jc-cert-benefits .benefit-grid { grid-template-columns: 1fr; }
}

/* ---- Certbox ---- */
.jc-certbox {
  background: linear-gradient(135deg, #102846 0%, #142f56 100%);
  border-radius: 16px;
  padding: 28px 32px;
  max-width: 900px;
  margin: 40px auto 24px;
  color: #fff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.jc-certbox__inner {
  text-align: left;
}

.jc-certbox__title {
  font-family: 'Poppins', system-ui, -apple-system, "Segoe UI", Roboto, Inter, Arial, sans-serif;
  font-size: 22px;
  font-weight: 700;
  margin: 0 0 8px;
  color: #ffffff;
}

.jc-certbox__desc {
  font-family: 'Open Sans', system-ui, -apple-system, "Segoe UI", Roboto, Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.85);
  margin: 0;
}

@media (max-width: 768px) {
  .jc-certbox {
    padding: 24px 20px;
    text-align: center;
  }
  .jc-certbox__inner {
    text-align: center;
  }
}

/* ---- Phone country dropdown ---- */
.ff-el-group button.iti__selected-country {
  background-color: #ffffff !important;
  color: #111827 !important;
  border: 1px solid #e5e7eb !important;
  box-shadow: none !important;
}

.ff-el-group button.iti__selected-country:hover,
.ff-el-group button.iti__selected-country:focus {
  background-color: #ffffff !important;
  color: #111827 !important;
}

.ff-el-group .iti__country:hover {
  background-color: #f3f4f6 !important;
  color: #111827 !important;
}

/* ---- Mobile card width cleanup ---- */
@media (max-width: 640px) {
  .facetwp-template .jc-card {
    width: calc(100% - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .facetwp-template {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .wp-block-uagb-container.uagb-is-root-container,
  .wp-block-uagb-container .uagb-container-inner-blocks-wrap,
  .wp-block-uagb-container .uagb-container-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* ====================================================
   JC Industry Hub Listing CTA — Homepage Explore Match
   Overrides global a.jc-cta pill radius
==================================================== */

body .facetwp-template a.jc-cta.jc-program-details-btn,
body .facetwp-template a.jc-cta.jc-program-details-btn:link,
body .facetwp-template a.jc-cta.jc-program-details-btn:visited,
body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn,
body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn:link,
body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn:visited{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  width:100% !important;
  min-height:48px !important;
  padding:12px !important;
  border-radius:999px !important;
  background:#0f1412 !important;
  color:#ffffff !important;
  border:none !important;
  box-shadow:none !important;
  font-family:"Geist",sans-serif !important;
  font-size:14px !important;
  font-weight:600 !important;
  line-height:1 !important;
  text-decoration:none !important;
  margin-top:0 !important;
  opacity:1 !important;
  filter:none !important;
  transition:transform 120ms ease-out, background 120ms ease-out !important;
}

body .facetwp-template a.jc-cta.jc-program-details-btn:hover,
body .facetwp-template a.jc-cta.jc-program-details-btn:focus-visible,
body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn:hover,
body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn:focus-visible{
  background:#000000 !important;
  color:#ffffff !important;
  border-radius:999px !important;
  box-shadow:none !important;
  transform:translateY(-1px);
  opacity:1 !important;
  filter:none !important;
}

/* ====================================================
   JC Industry Hub Alignment — Homepage Match
   Filters + listing CTA buttons
==================================================== */

body .jc-filters-bar .jc-filters-kicker{
  display:flex !important;
  align-items:center;
  gap:7px;
  margin:0 !important;
  padding:4px 0 14px !important;
  border-bottom:1px solid #e3e5e0;
  font-family:"Geist Mono","Geist",monospace !important;
  font-size:12px !important;
  font-weight:600 !important;
  line-height:1.2 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  color:#0f1412 !important;
}

body .jc-filters-bar .jc-filters-kicker::before{
  content:"";
  width:13px;
  height:13px;
  flex:0 0 13px;
  background:center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 13 13' fill='none'%3E%3Cpath d='M2 3h9M4 6.5h5M5.5 10h2' stroke='%230f1412' stroke-width='1.25' stroke-linecap='round'/%3E%3C/svg%3E");
}

@media (max-width:1024px){
  body .jc-filters-bar .jc-filters-kicker{
    display:none !important;
  }
}

/* Filter section titles: Career Field, Career Level, Role, Provider */
body .jc-filters-bar .jc-filter-title,
body [class*="-results-sidebar"] .jc-filter-title,
body .jc-mobile-filter-drawer .jc-filter-title{
  color:#0f1412 !important;
}

/* FacetWP See more / expand text and symbols */
body .jc-filter-body .facetwp-expand,
body .jc-filter-body .facetwp-toggle,
body .jc-filter-body .facetwp-expand *,
body .jc-filter-body .facetwp-toggle *{
  color:#0f1412 !important;
  fill:#0f1412 !important;
  stroke:#0f1412 !important;
}

/* FacetWP count color: matches homepage View all certifications link */
body .jc-filter-body .facetwp-counter{
  color:#6b716d !important;
}

/* Clear Filters radius only — keeps existing button colors */
body .jc-filters-actions .jc-clear-filters{
  border-radius:999px !important;
}

/* Listing card View program details button */
body .facetwp-template .jc-course-card a.jc-program-details-btn,
body .facetwp-template .jc-course-card a.jc-program-details-btn:visited{
  background:#0f1412 !important;
  color:#ffffff !important;
  border-radius:999px !important;
  box-shadow:none !important;
  margin-top:0 !important;
  opacity:1 !important;
  line-height:1.2 !important;
}

body .facetwp-template .jc-course-card a.jc-program-details-btn:hover,
body .facetwp-template .jc-course-card a.jc-program-details-btn:focus-visible{
  background:#000000 !important;
  color:#ffffff !important;
  transform:translateY(-1px);
  box-shadow:none !important;
  filter:none !important;
  opacity:1 !important;
}

/* ====================================================
   JC Mobile Filter Drawer — Text Color Only
   Does NOT change mobile filter buttons, radius, or drawer header
==================================================== */

@media (max-width:1024px){

  /* Mobile drawer filter titles only:
     Career Field, Career Level, Role, Provider */
  #jcMobileFilterDrawerBody .jc-filters-bar .jc-filter-title{
    color:#0f1412 !important;
  }

  /* Mobile drawer filter counts only */
  #jcMobileFilterDrawerBody .jc-filters-bar .jc-filter-body .facetwp-counter{
    color:#6b716d !important;
  }

  /* Mobile drawer See more / expand controls only */
  #jcMobileFilterDrawerBody .jc-filters-bar .jc-filter-body .facetwp-expand,
  #jcMobileFilterDrawerBody .jc-filters-bar .jc-filter-body .facetwp-toggle,
  #jcMobileFilterDrawerBody .jc-filters-bar .jc-filter-body .facetwp-expand *,
  #jcMobileFilterDrawerBody .jc-filters-bar .jc-filter-body .facetwp-toggle *{
    color:#0f1412 !important;
    fill:#0f1412 !important;
    stroke:#0f1412 !important;
  }

  /* If FacetWP uses pseudo-elements for the expand symbol */
  #jcMobileFilterDrawerBody .jc-filters-bar .jc-filter-body .facetwp-expand::before,
  #jcMobileFilterDrawerBody .jc-filters-bar .jc-filter-body .facetwp-expand::after,
  #jcMobileFilterDrawerBody .jc-filters-bar .jc-filter-body .facetwp-toggle::before,
  #jcMobileFilterDrawerBody .jc-filters-bar .jc-filter-body .facetwp-toggle::after{
    color:#0f1412 !important;
    border-color:#0f1412 !important;
  }
}

/* ====================================================
   JC Course Listing Card Refresh Support
   Supports new functions.php card markup
==================================================== */

/* Clamp long listing-card trend text only when the card adds is-collapsed */
body .jc-course-card .jc-card-trend-preview.is-collapsed{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  line-clamp:3;
  overflow:hidden;
}

/* Keep the listing-card image shape consistent on desktop and mobile */
body .jc-course-card .jc-card-media{
  border-radius:18px !important;
  border:1px solid #dfe3e6 !important;
  background:#f6f7f8 !important;
}

/* Mobile/tablet: keep the new inset image from being flattened too much */
@media (max-width:991.98px){
  body .jc-course-card .jc-card-media{
    height:160px !important;
  }
}

/* Phone: keep card width cleanup but preserve the new white card padding */
@media (max-width:640px){
  body .jc-course-grid .jc-course-card{
    width:100% !important;
    max-width:640px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* ====================================================
   JC Course Listing CTA — Force 11px Radius on Mobile
   Fixes View program details pill radius on hub cards
==================================================== */

@media (max-width:1024px){
  body .facetwp-template a.jc-cta.jc-program-details-btn,
  body .facetwp-template a.jc-cta.jc-program-details-btn:link,
  body .facetwp-template a.jc-cta.jc-program-details-btn:visited,
  body .facetwp-template a.jc-cta.jc-program-details-btn:hover,
  body .facetwp-template a.jc-cta.jc-program-details-btn:focus,
  body .facetwp-template a.jc-cta.jc-program-details-btn:focus-visible,
  body .facetwp-template .jc-course-card a.jc-program-details-btn,
  body .facetwp-template .jc-course-card a.jc-program-details-btn:link,
  body .facetwp-template .jc-course-card a.jc-program-details-btn:visited,
  body .facetwp-template .jc-course-card a.jc-program-details-btn:hover,
  body .facetwp-template .jc-course-card a.jc-program-details-btn:focus,
  body .facetwp-template .jc-course-card a.jc-program-details-btn:focus-visible,
  body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn,
  body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn:link,
  body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn:visited,
  body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn:hover,
  body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn:focus,
  body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn:focus-visible{
    border-radius:999px !important;
  }
}

/* ====================================================
   JC Filters — Final Color Override
   Desktop filters + Mobile All Filters drawer
==================================================== */

/* Filter titles: Career Field, Career Level, Role, Provider */
body .jc-filters-bar .jc-filter-title,
body [class*="-results-sidebar"] .jc-filter-title,
body .jc-mobile-filter-drawer .jc-filter-title,
body #jcMobileFilterDrawerBody .jc-filter-title{
  color:#0f1412 !important;
}

/* FacetWP See more / expand text and symbols */
body .jc-filter-body .facetwp-expand,
body .jc-filter-body .facetwp-toggle,
body .jc-filter-body .facetwp-expand *,
body .jc-filter-body .facetwp-toggle *,
body #jcMobileFilterDrawerBody .facetwp-expand,
body #jcMobileFilterDrawerBody .facetwp-toggle,
body #jcMobileFilterDrawerBody .facetwp-expand *,
body #jcMobileFilterDrawerBody .facetwp-toggle *{
  color:#0f1412 !important;
  fill:#0f1412 !important;
  stroke:#0f1412 !important;
}

/* If FacetWP uses pseudo-elements for the expand symbol */
body .jc-filter-body .facetwp-expand::before,
body .jc-filter-body .facetwp-expand::after,
body .jc-filter-body .facetwp-toggle::before,
body .jc-filter-body .facetwp-toggle::after,
body #jcMobileFilterDrawerBody .facetwp-expand::before,
body #jcMobileFilterDrawerBody .facetwp-expand::after,
body #jcMobileFilterDrawerBody .facetwp-toggle::before,
body #jcMobileFilterDrawerBody .facetwp-toggle::after{
  color:#0f1412 !important;
  border-color:#0f1412 !important;
}

/* Industry hub filters, results toolbar, and course cards */
body .jc-filter-body .facetwp-counter,
body #jcMobileFilterDrawerBody .facetwp-counter{
  color:#6b716d !important;
}

.jc-filters-bar,
.jc-filters-bar *,
.jc-results-header,
.jc-results-header *,
.jc-course-grid,
.jc-course-grid *{
  box-sizing:border-box;
  font-family:"Geist",sans-serif;
}

body .jc-filters-bar{
  width:100%;
  max-width:291px;
  margin:0;
  padding:14px;
  background:#f7f7f5;
  border:0;
  border-radius:18px;
  box-shadow:none;
}

body .jc-filters-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
}

body .jc-filters-bar .jc-filter-card{
  width:100%;
  padding:18px 0;
  background:transparent;
  border:0;
  border-bottom:1px solid #e3e5e0;
  border-radius:0;
  box-shadow:none;
}

body .jc-filters-bar .jc-filter-card:first-child{padding-top:14px;}
body .jc-filters-bar .jc-filter-card:last-child{border-bottom:0;}

body .jc-filters-bar .jc-filter-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 10px;
  font-family:"Geist",sans-serif !important;
  font-size:15px;
  font-weight:600;
  line-height:1.3;
  letter-spacing:0;
  text-transform:none;
  cursor:pointer;
  user-select:none;
}

body .jc-filters-bar .jc-filter-title::after{
  content:"[+]";
  flex:0 0 auto;
  color:#6b716d;
  font-weight:500;
}

body .jc-filters-bar .jc-filter-title[aria-expanded="true"]::after{
  content:"[-]";
}

body .jc-filters-bar .jc-filter-title:focus-visible{
  outline:2px solid #22c55e;
  outline-offset:3px;
}

body .jc-filters-bar .jc-filter-body[hidden]{
  display:none !important;
}

body .jc-filters-bar .facetwp-facet,
body .jc-filters-bar .facetwp-checkbox{
  margin-bottom:8px;
  font-family:"Geist",sans-serif;
  font-size:15px;
  font-weight:400;
  line-height:1.4;
  color:#0f1412;
}

body .jc-filters-bar .facetwp-checkbox.checked{font-weight:600;}
body .jc-filters-bar .facetwp-checkbox{
  position:relative;
  padding-left:26px;
  background:none !important;
}

body .jc-filters-bar .facetwp-checkbox::before{
  content:"";
  position:absolute;
  top:1px;
  left:0;
  width:16px;
  height:16px;
  background:#fff;
  border:1px solid #b6bcb8;
  border-radius:4px;
}

body .jc-filters-bar .facetwp-checkbox.checked::before{
  background:#22c55e;
  border-color:#22c55e;
}

body .jc-filters-bar .facetwp-checkbox.checked::after{
  content:"";
  position:absolute;
  top:4px;
  left:5px;
  width:5px;
  height:8px;
  border:solid #fff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}

body .jc-filters-bar .facetwp-counter{
  font-size:13px;
  font-weight:400;
}

body .jc-filters-bar .facetwp-expand,
body .jc-filters-bar .facetwp-toggle{
  padding:0 0 2px;
  border-bottom:1px solid currentColor;
  font-family:"Geist",sans-serif;
  font-size:14px;
  font-weight:500;
  line-height:1.2;
  letter-spacing:0;
  text-transform:none;
  text-decoration:none;
}

body .jc-filters-bar .facetwp-expand + .facetwp-expand,
body .jc-filters-bar .facetwp-toggle + .facetwp-toggle{
  margin-top:8px;
}

body .jc-filters-actions .jc-clear-filters{
  width:100%;
  min-height:48px;
  margin-top:18px;
  padding:12px 18px;
  background:#fff;
  color:#0f1412;
  border:1.5px solid #0f1412;
  border-radius:999px !important;
  box-shadow:none;
  font-family:"Geist",sans-serif;
  font-size:13px;
  font-weight:600;
  line-height:1;
}

body .jc-filters-actions .jc-clear-filters:hover,
body .jc-filters-actions .jc-clear-filters:focus,
body .jc-filters-actions .jc-clear-filters:focus-visible,
body .jc-filters-actions .jc-clear-filters:active{
  background:#fff;
  color:#0f1412;
  border:1.5px solid #0f1412;
  box-shadow:none;
  transform:none;
}

body [class*="-results-layout"]{
  margin-right:auto;
  margin-left:auto;
}

body [class*="-results-main"]{
  width:100%;
  max-width:901px;
  min-width:0;
}

.jc-results-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  width:100%;
  max-width:901px;
  margin:0 0 16px;
}

.jc-results-heading{
  margin:0;
  color:#0f1412;
  font-family:"Geist",sans-serif !important;
  font-size:30px;
  font-weight:600;
  line-height:33px;
  letter-spacing:-.02em;
}

.jc-results-meta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:8px;
  min-width:0;
}

.jc-results-count{
  color:#6b716d;
  font-size:12px;
  font-weight:400;
  line-height:1.2;
  white-space:nowrap;
}

.jc-results-selections .facetwp-selections ul{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}

.jc-results-selections .facetwp-selection-label{display:none;}
.jc-results-selections .facetwp-selection-value{
  display:inline-flex;
  align-items:center;
  gap:6px;
  max-width:100%;
  padding:6px 8px 6px 12px;
  border:0;
  border-radius:999px;
  background-color:#ecfdf3;
  color:#0f1412;
  font-size:12px;
  font-weight:500;
  line-height:1;
  overflow-wrap:anywhere;
}

body .jc-course-grid{
  width:100%;
  max-width:901px;
  margin:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}

body .jc-course-grid .jc-course-card{
  position:relative;
  width:100%;
  max-width:291px;
  min-width:0;
  min-height:0;
  padding:14px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  isolation:isolate;
  background:#fff;
  color:#0f1412;
  border:1px solid #e3e5e0;
  border-radius:18px;
  box-shadow:none;
  transform:none;
}

body .jc-course-grid .jc-course-card:hover{
  box-shadow:none;
  transform:none;
}

@media (min-width:1025px){
  body [class*="-results-layout"]{
    width:min(1540px,calc(100% - 40px));
    max-width:1540px;
    grid-template-columns:280px minmax(0,1fr);
    gap:24px;
  }

  body [class*="-results-sidebar"] .jc-filters-bar{
    margin-top:24px !important;
  }

  body [class*="-results-main"],
  .jc-results-toolbar,
  body .jc-course-grid{
    width:100%;
    max-width:none;
  }

  body .jc-course-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
  }

  body .jc-course-grid .jc-course-card{
    width:100%;
    max-width:none;
  }
}

.jc-results-pagination{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:16px;
  width:100%;
  margin-top:30px;
  padding:22px 0 10px;
  border-top:1px solid #e3e5e0;
  font-family:"Geist",sans-serif;
}

.jc-results-range{
  color:#6b716d;
  font-size:13px;
  font-weight:400;
  line-height:1.3;
}

.jc-results-pagination .facetwp-pager{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:8px;
  margin:0;
}

.jc-results-pagination .facetwp-pager[hidden],
.jc-results-pagination .facetwp-page[hidden]{
  display:none !important;
}

.jc-results-pagination .facetwp-page{
  display:inline-flex;
  width:40px;
  height:40px;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:0;
  background:#fff;
  color:#0f1412;
  border:1px solid #e3e5e0;
  border-radius:10px;
  box-shadow:none;
  font-family:"Geist",sans-serif;
  font-size:14px;
  font-weight:600;
  line-height:1;
  text-decoration:none;
}

.jc-results-pagination .facetwp-page.active{
  background:#0f1412;
  color:#fff;
  border-color:#0f1412;
}

.jc-results-pagination .facetwp-page.prev,
.jc-results-pagination .facetwp-page.next{
  width:auto;
  min-width:0;
  height:40px;
  padding:0 16px;
  border:1.5px solid #0f1412;
  border-radius:999px;
}

.jc-card-top-strip{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:6px;
  min-height:24px;
  margin:0 0 10px;
}

.jc-card-subchips{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-width:0;}
.jc-card-subchips span,
.jc-card-featured-badge,
.jc-card-popular-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 10px;
  border-radius:999px;
  font-size:11px;
  line-height:1;
  white-space:nowrap;
}

.jc-card-subchips span,
.jc-card-featured-badge{
  padding:5px 10px;
}

.jc-card-subchips span{
  color:#4a514c;
  background:#fff;
  border:1px solid #e3e5e0;
  font-weight:500;
}

.jc-card-featured-badge{
  flex:0 0 auto;
  color:#fff;
  background:#0f1412;
  border:1px solid #0f1412;
  font-weight:600;
}

body .jc-course-card .jc-card-media{
  position:relative;
  width:100%;
  height:142px;
  overflow:hidden;
  background:#f6f7f8 !important;
  border:0 !important;
  border-radius:8px !important;
}

.jc-card-image{display:block;width:100%;height:100%;object-fit:cover;}
.jc-course-placeholder{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:#fff;
  border:1px solid #e3e5e0;
  border-radius:inherit;
}

.jc-course-placeholder__identity{
  position:absolute;
  left:clamp(16px,8%,22px);
  bottom:clamp(14px,10%,20px);
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  max-width:calc(100% - 44px);
}

.jc-course-placeholder__icon{
  display:block;
  width:clamp(34px,16%,44px);
  height:clamp(34px,16%,44px);
  fill:none;
  stroke:#0f1412;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.jc-course-placeholder__label{
  color:#15803d;
  font-family:"Geist Mono","Geist",monospace;
  font-size:11px;
  font-weight:500;
  line-height:1.2;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}

.jc-course-placeholder--1::after{
  content:"";
  position:absolute;
  top:clamp(16px,14%,22px);
  right:clamp(16px,8%,22px);
  width:clamp(48px,24%,58px);
  height:clamp(30px,22%,36px);
  border:3px solid #22c55e;
  border-radius:6px;
}

.jc-course-placeholder--2{
  background-color:#fff;
  background-image:radial-gradient(circle,#cfd5d1 1px,transparent 1.2px);
  background-size:14px 14px;
}

.jc-course-placeholder--3::before,
.jc-course-placeholder--3::after{
  content:"";
  position:absolute;
  width:clamp(104px,48%,150px);
  height:clamp(54px,45%,82px);
  border-radius:0 0 0 14px;
}

.jc-course-placeholder--3::before{
  top:-18px;
  right:-12px;
  border:3px solid #e3e5e0;
}

.jc-course-placeholder--3::after{
  top:-8px;
  right:-2px;
  border:3px solid #22c55e;
}

.jc-course-placeholder--4{
  background-color:#fff;
  background-image:repeating-linear-gradient(
    135deg,
    transparent 0,
    transparent 19px,
    rgba(34,197,94,.19) 19px,
    rgba(34,197,94,.19) 21px
  );
}

body.single-course .logo-banner{
  position:relative;
}

body.single-course .logo-banner .jc-course-placeholder__identity{
  left:clamp(24px,4vw,52px);
  bottom:clamp(22px,4vw,42px);
  gap:10px;
  max-width:calc(100% - 104px);
}

body.single-course .logo-banner .jc-course-placeholder__icon{
  width:clamp(44px,5vw,62px);
  height:clamp(44px,5vw,62px);
}

body.single-course .logo-banner .jc-course-placeholder__label{
  font-size:clamp(11px,1.15vw,13px);
}

body.single-course .logo-banner .jc-course-placeholder--1::after{
  top:clamp(24px,4vw,48px);
  right:clamp(24px,4vw,52px);
  width:clamp(64px,8vw,92px);
  height:clamp(40px,5vw,58px);
}

body.single-course .logo-banner .jc-course-placeholder--3::before,
body.single-course .logo-banner .jc-course-placeholder--3::after{
  width:clamp(150px,22vw,280px);
  height:clamp(82px,12vw,150px);
}

.jc-card-popular-badge{
  position:absolute;
  left:auto;
  right:10px;
  bottom:12px;
  z-index:2;
  color:#0f1412;
  background:#fff;
  border:1px solid #dfe3e0;
  box-shadow:none;
  font-weight:600;
}

body .jc-course-card .jc-card-body{
  position:relative;
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  gap:12px;
  padding:12px 0 0 !important;
  background:#fff;
  color:#0f1412;
}

body .jc-course-card .jc-card-title{
  margin:0;
  color:#0f1412;
  font-family:"Geist",sans-serif !important;
  font-size:18px !important;
  font-weight:600;
  line-height:23px !important;
  letter-spacing:-.01em;
}

.jc-card-meta{display:grid;gap:10px;}
.jc-card-meta-row{display:flex;align-items:flex-start;gap:8px;min-width:0;font-size:12px;}
.jc-card-meta-label{color:#0f1412;font-size:14px;font-weight:600;line-height:1.3;}
.jc-card-provider-value{color:#6b716d;font-size:14px;font-weight:400;line-height:1.4;}
.jc-card-trend-wrap{color:#4a514c !important;font-size:14px;font-weight:400;line-height:1.42;}
.jc-card-trend-preview{line-height:1.42 !important;}

body .jc-card-toggle-row{margin:0 0 0 26px !important;}
body .jc-card-toggle-snap{
  display:inline-flex;
  align-items:center;
  padding:0 0 2px !important;
  color:#0f1412 !important;
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid currentColor !important;
  border-radius:0;
  box-shadow:none !important;
  font-family:"Geist",sans-serif;
  font-size:14px !important;
  font-weight:600;
  line-height:1.2;
  cursor:pointer;
}

.jc-card-toggle-caret{display:none;}
.jc-card-role-pills{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px;min-width:0;max-width:100%;}
.jc-card-role-pill{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  max-width:100%;
  padding:5px 9px;
  color:#0f1412;
  background:#fff;
  border:1px solid #e3e5e0;
  border-radius:8px;
  box-shadow:none;
}

.jc-card-role-name{font-size:13px;font-weight:400;line-height:1.25;}
.jc-card-role-salary{margin-top:2px;font-size:13px;font-weight:600;line-height:1.25;}
.jc-card-cta-row{display:flex;width:100%;margin-top:auto;padding-top:2px;}

body .facetwp-template .jc-course-card a.jc-program-details-btn,
body .jc-course-grid .jc-course-card a.jc-cta.jc-program-details-btn{
  width:100% !important;
  min-height:48px !important;
  padding:12px !important;
  background:#0f1412 !important;
  color:#fff !important;
  border:0 !important;
  border-radius:999px !important;
  box-shadow:none !important;
  font-family:"Geist",sans-serif !important;
  font-size:14px !important;
  font-weight:600 !important;
  line-height:1 !important;
}

@media (max-width:1024px){
  body [class*="-results-layout"]{
    width:100%;
    max-width:none;
    grid-template-columns:minmax(0,1fr);
  }

  body [class*="-results-main"],
  .jc-results-header,
  .jc-results-toolbar,
  body .jc-course-grid,
  body .jc-course-grid.facetwp-template{
    width:100%;
    max-width:none;
    min-width:0;
  }

  #jcMobileFilterDrawerBody .jc-filters-bar,
  #jcMobileFilterDrawerBody .jc-filters-grid,
  #jcMobileFilterDrawerBody .jc-filter-card{
    width:100%;
    max-width:none;
  }

  body .jc-course-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  body .jc-course-grid .jc-course-card{max-width:640px;}
  body .jc-course-card .jc-card-media{height:clamp(160px,28vw,220px) !important;}
}

@media (max-width:640px){
  body [class*="-results-main"],
  .jc-results-header,
  .jc-results-toolbar,
  body .jc-course-grid,
  body .jc-course-grid.facetwp-template{
    width:100%;
    max-width:none;
  }

  .jc-results-toolbar{align-items:flex-start;flex-direction:column;}
  .jc-results-meta,.jc-results-selections .facetwp-selections ul{justify-content:flex-start;}
  body .jc-course-grid{grid-template-columns:minmax(0,1fr);}
  body .jc-course-grid .jc-course-card{width:100% !important;max-width:none !important;}
}

/* ====================================================
   JC Single Course Conservative Metrics Refresh
   Scoped to body.single-course
==================================================== */

body.single-course{
  --jc-single-blue:#003A8C;
  --jc-single-navy:#06112F;
  --jc-single-green:#2E9F45;
  --jc-single-light-green:#DDF4E4;
  --jc-single-orange:#F47A1F;
  --jc-single-yellow:#F5B51B;
  --jc-single-chart-blue:#2F73D8;
  --jc-single-silver:#D9D9D9;
  --jc-single-soft:#F8FAFC;
  --jc-single-border:#DDE3EA;
  background:var(--jc-single-soft);
}

body.single-course .site-content,
body.single-course .ast-container,
body.single-course .site-main{
  background:var(--jc-single-soft) !important;
}

body.single-course .wrap{
  max-width:1240px !important;
}

body.single-course .grid{
  display:block !important;
}

body.single-course .title,
body.single-course .h3,
body.single-course .jc-data-value,
body.single-course main.card,
body.single-course main.card p,
body.single-course .jc-roles-list li{
  color:var(--jc-single-navy) !important;
}

body.single-course .hero,
body.single-course .card,
body.single-course .logo-banner,
body.single-course details.acc,
body.single-course .prov-card,
body.single-course .rel-card{
  border-color:var(--jc-single-border) !important;
}

body.single-course .btn.primary{
  background:var(--jc-single-blue) !important;
  color:#fff !important;
}

body.single-course .btn.primary:hover{
  background:var(--jc-single-chart-blue) !important;
  color:#fff !important;
}

body.single-course .btn.outline-blue{
  border-color:var(--jc-single-blue) !important;
  color:var(--jc-single-blue) !important;
}

body.single-course .btn.outline-blue:hover{
  border-color:var(--jc-single-chart-blue) !important;
  color:var(--jc-single-chart-blue) !important;
}

body.single-course .jc-course-metrics{
  display:grid;
  grid-template-columns:minmax(260px,.42fr) minmax(0,1fr);
  gap:16px;
  margin-top:18px;
}

body.single-course .jc-impact-compact,
body.single-course .jc-metric-compact{
  background:#fff;
  border:1px solid var(--jc-single-border);
  border-radius:14px;
  box-shadow:0 10px 24px rgba(6,17,47,.06);
}

body.single-course .jc-impact-compact{
  display:flex;
  align-items:center;
  gap:14px;
  padding:18px;
}

body.single-course .jc-impact-donut{
  --jc-impact-score:0;
  width:82px;
  height:82px;
  flex:0 0 82px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:conic-gradient(var(--jc-single-green) calc(var(--jc-impact-score) * 1%), var(--jc-single-silver) 0);
  position:relative;
}

body.single-course .jc-impact-donut::after{
  content:"";
  position:absolute;
  inset:9px;
  border-radius:50%;
  background:#fff;
}

body.single-course .jc-impact-donut span{
  position:relative;
  z-index:1;
  color:var(--jc-single-navy);
  font-weight:800;
  font-size:1.45rem;
  line-height:1;
}

body.single-course .jc-impact-copy{
  min-width:0;
}

body.single-course .jc-impact-title{
  display:flex;
  align-items:center;
  gap:7px;
  color:var(--jc-single-navy);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

body.single-course .jc-impact-label{
  margin-top:5px;
  color:var(--jc-single-green);
  font-size:1rem;
  font-weight:800;
  line-height:1.3;
}

body.single-course .jc-impact-tip-wrap{
  position:relative;
  display:inline-flex;
}

body.single-course .jc-impact-tip{
  width:20px;
  height:20px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--jc-single-border);
  border-radius:50%;
  background:#fff;
  color:var(--jc-single-blue);
  font-size:12px;
  font-weight:800;
  line-height:1;
  cursor:help;
}

body.single-course .jc-impact-tip-text{
  position:absolute;
  right:0;
  bottom:calc(100% + 8px);
  width:min(310px,76vw);
  padding:10px 12px;
  border-radius:10px;
  background:var(--jc-single-navy);
  color:#fff;
  font-size:.82rem;
  font-weight:600;
  letter-spacing:0;
  line-height:1.45;
  opacity:0;
  pointer-events:none;
  text-transform:none;
  transform:translateY(5px);
  transition:opacity .16s ease, transform .16s ease;
  z-index:140;
}

body.single-course .jc-impact-tip-wrap:hover .jc-impact-tip-text,
body.single-course .jc-impact-tip-wrap:focus-within .jc-impact-tip-text{
  opacity:1;
  transform:translateY(0);
}

body.single-course .jc-metric-compact-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

body.single-course .jc-course-metrics > .jc-metric-compact-grid:only-child{
  grid-column:1 / -1;
}

body.single-course .jc-metric-compact{
  min-height:92px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px;
}

body.single-course .jc-metric-mark{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:inline-block;
  border-radius:10px;
  background:var(--jc-single-light-green);
  position:relative;
}

body.single-course .jc-metric-time .jc-metric-mark::before{
  content:"";
  position:absolute;
  left:7px;
  right:7px;
  top:8px;
  height:4px;
  border-radius:4px;
  background:var(--jc-single-chart-blue);
  box-shadow:0 8px 0 var(--jc-single-silver), 0 16px 0 var(--jc-single-silver);
}

body.single-course .jc-metric-difficulty .jc-metric-mark{
  background:rgba(244,122,31,.14);
}

body.single-course .jc-metric-difficulty .jc-metric-mark::before{
  content:"";
  position:absolute;
  inset:7px;
  border-radius:50%;
  background:conic-gradient(var(--jc-single-orange) 68%, var(--jc-single-silver) 0);
}

body.single-course .jc-metric-difficulty .jc-metric-mark::after{
  content:"";
  position:absolute;
  inset:12px;
  border-radius:50%;
  background:#fff;
}

body.single-course .jc-metric-type .jc-metric-mark::before,
body.single-course .jc-metric-path .jc-metric-mark::before{
  content:"";
  position:absolute;
  left:8px;
  right:8px;
  top:9px;
  height:16px;
  border-radius:5px;
  border:2px solid var(--jc-single-blue);
}

body.single-course .jc-metric-path .jc-metric-mark::after{
  content:"";
  position:absolute;
  left:9px;
  right:9px;
  top:16px;
  border-top:2px solid var(--jc-single-chart-blue);
}

body.single-course .jc-metric-renewal .jc-metric-mark::before{
  content:"";
  position:absolute;
  inset:8px;
  border:3px solid var(--jc-single-green);
  border-right-color:transparent;
  border-radius:50%;
}

body.single-course .jc-metric-cost .jc-metric-mark{
  background:rgba(245,181,27,.18);
}

body.single-course .jc-metric-cost .jc-metric-mark::before{
  content:"$";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:var(--jc-single-yellow);
  font-size:1.15rem;
  font-weight:800;
}

body.single-course .jc-metric-label{
  color:#64748b;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.04em;
  line-height:1.25;
  text-transform:uppercase;
}

body.single-course .jc-metric-value{
  margin-top:4px;
  color:var(--jc-single-navy);
  font-size:1rem;
  font-weight:800;
  line-height:1.3;
  overflow-wrap:anywhere;
}

body.single-course .jc-subscribe-below{
  margin-top:22px;
  background:var(--jc-single-soft) !important;
  border-color:var(--jc-single-border) !important;
}

body.single-course .jc-course-metrics svg,
body.single-course .jc-impact-compact svg,
body.single-course .jc-metric-compact svg{
  width:24px !important;
  height:24px !important;
  max-width:24px !important;
  max-height:24px !important;
}

@media (max-width:980px){
  body.single-course .jc-course-metrics{
    grid-template-columns:1fr;
  }

  body.single-course .jc-metric-compact-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:640px){
  body.single-course .jc-impact-compact{
    align-items:flex-start;
  }

  body.single-course .jc-metric-compact-grid{
    grid-template-columns:1fr;
  }
}

/* ====================================================
   JC Single Course Conservative Refinements
   Scoped to body.single-course
==================================================== */

body.single-course{
  background:#fff !important;
}

body.single-course .site-content,
body.single-course .ast-container,
body.single-course .site-main{
  background:#fff !important;
}

body.single-course .hero,
body.single-course .card,
body.single-course .subscribe,
body.single-course .jc-course-metrics,
body.single-course .jc-impact-compact,
body.single-course .jc-metric-compact,
body.single-course details.acc,
body.single-course .prov-card,
body.single-course .rel-card{
  box-shadow:none !important;
}

body.single-course .hero,
body.single-course .card,
body.single-course .subscribe,
body.single-course .logo-banner,
body.single-course details.acc,
body.single-course .prov-card,
body.single-course .rel-card,
body.single-course .jc-impact-compact,
body.single-course .jc-metric-compact{
  border-color:#DDE3EA !important;
}

body.single-course .jc-provider-site-btn,
body.single-course .jc-provider-site-btn:visited{
  background:#2ABF5E !important;
  color:#fff !important;
}

body.single-course .jc-provider-site-btn:hover,
body.single-course .jc-provider-site-btn:focus-visible{
  background:#1F9A4B !important;
  color:#fff !important;
}

body.single-course .jc-course-metrics{
  display:grid;
  grid-template-columns:minmax(260px,320px) minmax(0,1fr);
  gap:16px;
  margin-top:18px;
  align-items:stretch;
}

body.single-course .jc-impact-compact,
body.single-course .jc-metric-compact{
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  min-height:178px;
  padding:18px;
  text-align:center;
  background:#fff;
}

body.single-course .jc-impact-compact{
  min-height:238px;
  padding:20px;
}

body.single-course .jc-impact-title,
body.single-course .jc-metric-label{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  width:100%;
  color:#06112F !important;
  font-size:.96rem;
  font-weight:800;
  letter-spacing:0 !important;
  line-height:1.25;
  text-transform:none !important;
}

body.single-course .jc-impact-copy{
  display:contents;
}

body.single-course .jc-impact-copy .jc-impact-title{
  display:none !important;
}

body.single-course .jc-impact-donut{
  width:136px;
  height:136px;
  flex:0 0 136px;
  margin:2px auto 0;
  background:conic-gradient(#2E9F45 var(--jc-impact-score), #D9D9D9 0) !important;
}

body.single-course .jc-impact-donut::after{
  inset:14px;
}

body.single-course .jc-impact-donut span{
  display:inline-flex;
  align-items:baseline;
  gap:2px;
  color:#06112F !important;
  font-size:2rem;
  font-weight:800;
}

body.single-course .jc-impact-donut small{
  color:#06112F;
  font-size:.82rem;
  font-weight:800;
}

body.single-course .jc-impact-label,
body.single-course .jc-metric-value{
  margin-top:0;
  color:#06112F !important;
  font-size:1.16rem;
  font-weight:800;
  line-height:1.25;
}

body.single-course .jc-impact-label{
  color:#2E9F45 !important;
}

body.single-course .jc-metric-support{
  max-width:24ch;
  margin:0 auto;
  color:#64748b;
  font-size:.86rem;
  font-weight:400;
  line-height:1.45;
  text-transform:none;
}

body.single-course .jc-metric-compact-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

body.single-course .jc-metric-mark{
  width:74px;
  height:74px;
  flex:0 0 74px;
  margin:0 auto;
  border-radius:0;
  background:transparent !important;
  position:relative;
}

body.single-course .jc-metric-time .jc-metric-mark{
  width:78px;
  height:70px;
  border:3px solid #2F73D8;
  border-radius:12px;
}

body.single-course .jc-metric-time .jc-metric-mark::before{
  content:"";
  position:absolute;
  left:-3px;
  right:-3px;
  top:12px;
  height:3px;
  border-radius:0;
  background:#2F73D8;
  box-shadow:none;
}

body.single-course .jc-metric-time .jc-metric-mark::after{
  content:"";
  position:absolute;
  left:14px;
  top:28px;
  width:9px;
  height:9px;
  border-radius:2px;
  background:#D9D9D9;
  box-shadow:18px 0 0 #D9D9D9, 36px 0 0 #D9D9D9, 0 18px 0 #D9D9D9, 18px 18px 0 #2F73D8, 36px 18px 0 #D9D9D9;
}

body.single-course .jc-metric-difficulty .jc-metric-mark{
  width:94px;
  height:58px;
  flex-basis:58px;
  overflow:hidden;
}

body.single-course .jc-metric-difficulty .jc-metric-mark::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-47px;
  width:94px;
  height:94px;
  border-radius:50%;
  background:conic-gradient(from 270deg, #F47A1F var(--jc-difficulty-arc), #D9D9D9 0 50%, transparent 0) !important;
}

body.single-course .jc-metric-difficulty .jc-metric-mark::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:3px;
  width:36px;
  height:4px;
  border-radius:999px;
  background:#06112F;
  transform-origin:2px 50%;
  transform:rotate(var(--jc-difficulty-angle));
}

body.single-course .jc-metric-type .jc-metric-mark{
  width:74px;
  height:82px;
  flex-basis:82px;
}

body.single-course .jc-metric-type .jc-metric-mark::before{
  content:"";
  position:absolute;
  inset:3px 8px;
  height:auto;
  border:4px solid #003A8C;
  border-radius:22px 22px 28px 28px;
  background:transparent;
  clip-path:polygon(50% 0, 92% 16%, 86% 68%, 50% 100%, 14% 68%, 8% 16%);
}

body.single-course .jc-metric-type .jc-metric-mark::after{
  content:"";
  position:absolute;
  left:27px;
  top:29px;
  width:20px;
  height:11px;
  border-left:4px solid #2F73D8;
  border-bottom:4px solid #2F73D8;
  transform:rotate(-45deg);
}

body.single-course .jc-metric-renewal .jc-metric-mark{
  width:82px;
  height:82px;
}

body.single-course .jc-metric-renewal .jc-metric-mark::before,
body.single-course .jc-metric-renewal .jc-metric-mark::after{
  content:"";
  position:absolute;
  width:52px;
  height:52px;
  border:4px solid #7B4BB7;
  border-radius:50%;
}

body.single-course .jc-metric-renewal .jc-metric-mark::before{
  top:8px;
  left:8px;
  border-left-color:transparent;
  border-bottom-color:transparent;
  transform:rotate(18deg);
}

body.single-course .jc-metric-renewal .jc-metric-mark::after{
  right:8px;
  bottom:8px;
  border-right-color:transparent;
  border-top-color:transparent;
  transform:rotate(18deg);
}

body.single-course .jc-metric-cost .jc-metric-mark{
  width:74px;
  height:74px;
  border:4px solid #2E9F45;
  border-radius:50%;
}

body.single-course .jc-metric-cost .jc-metric-mark::before{
  content:"$";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#2E9F45;
  font-size:2.2rem;
  font-weight:800;
}

body.single-course .jc-subscribe-below{
  background:#fff !important;
  border:1px solid #DDE3EA !important;
  box-shadow:none !important;
}

body.single-course .jc-subscribe-below .h3{
  color:#06112F !important;
}

body.single-course .jc-subscribe-below input[type="text"],
body.single-course .jc-subscribe-below input[type="email"],
body.single-course .jc-subscribe-below input[type="tel"],
body.single-course .jc-subscribe-below select,
body.single-course .jc-subscribe-below textarea{
  border-color:#DDE3EA !important;
  border-radius:10px;
}

body.single-course .jc-course-metrics svg,
body.single-course .jc-impact-compact svg,
body.single-course .jc-metric-compact svg{
  width:24px !important;
  height:24px !important;
  max-width:24px !important;
  max-height:24px !important;
}

@media (max-width:980px){
  body.single-course .jc-course-metrics{
    grid-template-columns:1fr;
  }

  body.single-course .jc-metric-compact-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:640px){
  body.single-course .jc-metric-compact-grid{
    grid-template-columns:1fr;
  }
}

/* ====================================================
   JC Single Course Metric Board Final
   Scoped to body.single-course
==================================================== */

body.single-course .jc-course-metrics{
  display:block !important;
  margin-top:18px !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.single-course .jc-metric-board{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  overflow:hidden;
  border:1px solid #DDE3EA;
  border-radius:14px;
  background:#fff;
  box-shadow:none !important;
}

body.single-course .jc-metric-cell{
  min-width:0;
  min-height:258px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  padding:22px 20px;
  text-align:center;
  background:#fff;
  border-right:1px solid #DDE3EA;
  border-bottom:1px solid #DDE3EA;
  box-shadow:none !important;
}

body.single-course .jc-metric-cell:nth-child(3n){
  border-right:0;
}

body.single-course .jc-metric-cell:nth-child(n+4){
  border-bottom:0;
}

body.single-course .jc-metric-title{
  min-height:40px;
  width:100%;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  gap:7px;
  color:#06112F;
  font-size:1rem;
  font-weight:800;
  line-height:1.25;
  letter-spacing:0 !important;
  text-transform:none !important;
  word-break:normal;
  overflow-wrap:normal;
  hyphens:manual;
}

body.single-course .jc-metric-title span:first-child{
  min-width:0;
}

body.single-course .jc-metric-graphic{
  width:150px;
  height:116px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto;
}

body.single-course .jc-metric-value{
  width:100%;
  max-width:22ch;
  margin:0 auto;
  color:#06112F !important;
  font-size:1.42rem;
  font-weight:800;
  line-height:1.18;
  letter-spacing:0;
  text-transform:none;
  word-break:normal;
  overflow-wrap:normal;
  hyphens:manual;
}

body.single-course .jc-metric-support{
  width:100%;
  max-width:27ch;
  margin:0 auto;
  color:#06112F;
  font-size:.92rem;
  font-weight:400;
  line-height:1.45;
  letter-spacing:0;
  text-transform:none;
  word-break:normal;
  overflow-wrap:normal;
  hyphens:manual;
}

body.single-course .jc-impact-tip-wrap{
  position:relative;
  display:inline-flex;
  flex:0 0 auto;
  margin-top:1px;
}

body.single-course .jc-impact-tip{
  width:18px;
  height:18px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #9CA3AF;
  border-radius:50%;
  background:#fff;
  color:#6B7280;
  font-size:11px;
  font-weight:800;
  line-height:1;
  cursor:help;
}

body.single-course .jc-impact-tip-text{
  position:absolute;
  right:0;
  bottom:calc(100% + 8px);
  width:min(320px,76vw);
  padding:10px 12px;
  border-radius:10px;
  background:#06112F;
  color:#fff;
  font-size:.82rem;
  font-weight:600;
  letter-spacing:0;
  line-height:1.45;
  opacity:0;
  pointer-events:none;
  text-transform:none;
  transform:translateY(5px);
  transition:opacity .16s ease, transform .16s ease;
  z-index:140;
}

body.single-course .jc-impact-tip-wrap:hover .jc-impact-tip-text,
body.single-course .jc-impact-tip-wrap:focus-within .jc-impact-tip-text{
  opacity:1;
  transform:translateY(0);
}

body.single-course .jc-impact-donut{
  width:132px;
  height:132px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:conic-gradient(#2E9F45 var(--jc-impact-score), #D9D9D9 0) !important;
  position:relative;
}

body.single-course .jc-impact-donut::after{
  content:"";
  position:absolute;
  inset:14px;
  border-radius:50%;
  background:#fff;
}

body.single-course .jc-impact-donut span{
  position:relative;
  z-index:1;
  color:#06112F !important;
  font-size:1.72rem;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}

body.single-course .jc-metric-impact .jc-metric-value{
  color:#2E9F45 !important;
  font-size:1.05rem;
}

body.single-course .jc-metric-mark{
  width:104px;
  height:104px;
  flex:0 0 104px;
  display:block;
  position:relative;
  margin:0 auto;
  background:transparent !important;
  border-radius:0;
}

body.single-course .jc-metric-time .jc-metric-mark{
  width:94px;
  height:86px;
  border:4px solid #2F73D8;
  border-radius:12px;
}

body.single-course .jc-metric-time .jc-metric-mark::before{
  content:"";
  position:absolute;
  left:-4px;
  right:-4px;
  top:18px;
  height:4px;
  background:#2F73D8;
  box-shadow:none;
}

body.single-course .jc-metric-time .jc-metric-mark::after{
  content:"";
  position:absolute;
  left:18px;
  top:36px;
  width:10px;
  height:10px;
  border-radius:2px;
  background:#D9D9D9;
  box-shadow:20px 0 0 #D9D9D9, 40px 0 0 #D9D9D9, 0 20px 0 #D9D9D9, 20px 20px 0 #2F73D8, 40px 20px 0 #D9D9D9;
}

body.single-course .jc-metric-difficulty .jc-metric-mark{
  width:128px;
  height:78px;
  flex-basis:78px;
  overflow:hidden;
}

body.single-course .jc-metric-difficulty .jc-metric-mark::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-64px;
  width:128px;
  height:128px;
  border-radius:50%;
  background:conic-gradient(from 270deg, #F47A1F var(--jc-difficulty-arc), #D9D9D9 0 50%, transparent 0) !important;
}

body.single-course .jc-metric-difficulty .jc-metric-mark::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:5px;
  width:50px;
  height:5px;
  border-radius:999px;
  background:#06112F;
  transform-origin:3px 50%;
  transform:rotate(var(--jc-difficulty-angle));
}

body.single-course .jc-metric-type .jc-metric-mark{
  width:102px;
  height:112px;
}

body.single-course .jc-metric-type .jc-metric-mark::before{
  content:"";
  position:absolute;
  inset:4px 14px;
  border:5px solid #2F73D8;
  background:transparent;
  clip-path:polygon(50% 0, 92% 17%, 86% 70%, 50% 100%, 14% 70%, 8% 17%);
}

body.single-course .jc-metric-type .jc-metric-mark::after{
  content:"+";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#2F73D8;
  font-size:3.05rem;
  font-weight:800;
  line-height:1;
}

body.single-course .jc-metric-renewal .jc-metric-mark{
  width:108px;
  height:108px;
}

body.single-course .jc-metric-renewal .jc-metric-mark::before,
body.single-course .jc-metric-renewal .jc-metric-mark::after{
  content:"";
  position:absolute;
  width:70px;
  height:70px;
  border:4px solid #7B4BB7;
  border-radius:50%;
}

body.single-course .jc-metric-renewal .jc-metric-mark::before{
  top:14px;
  left:12px;
  border-left-color:transparent;
  border-bottom-color:transparent;
  transform:rotate(18deg);
}

body.single-course .jc-metric-renewal .jc-metric-mark::after{
  right:12px;
  bottom:14px;
  border-right-color:transparent;
  border-top-color:transparent;
  transform:rotate(18deg);
}

body.single-course .jc-metric-cost .jc-metric-mark{
  width:104px;
  height:104px;
  border:5px solid #2E9F45;
  border-radius:50%;
}

body.single-course .jc-metric-cost .jc-metric-mark::before{
  content:"$";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#2E9F45;
  font-size:3rem;
  font-weight:800;
}

body.single-course main.card .cta-stack a.btn.primary.jc-provider-site-btn,
body.single-course main.card .cta-stack a.btn.primary.jc-provider-site-btn:visited{
  background:#2ABF5E !important;
  color:#fff !important;
  border-color:#2ABF5E !important;
}

body.single-course main.card .cta-stack a.btn.primary.jc-provider-site-btn:hover,
body.single-course main.card .cta-stack a.btn.primary.jc-provider-site-btn:focus-visible{
  background:#1F9A4B !important;
  color:#fff !important;
  border-color:#1F9A4B !important;
}

body.single-course .jc-course-metrics svg,
body.single-course .jc-metric-board svg,
body.single-course .jc-metric-cell svg{
  width:24px !important;
  height:24px !important;
  max-width:24px !important;
  max-height:24px !important;
}

@media (max-width:900px){
  body.single-course .jc-metric-board{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  body.single-course .jc-metric-cell:nth-child(3n){
    border-right:1px solid #DDE3EA;
  }

  body.single-course .jc-metric-cell:nth-child(2n){
    border-right:0;
  }

  body.single-course .jc-metric-cell:nth-child(n+4){
    border-bottom:1px solid #DDE3EA;
  }

  body.single-course .jc-metric-cell:nth-child(n+5){
    border-bottom:0;
  }
}

@media (max-width:600px){
  body.single-course .jc-metric-board{
    grid-template-columns:1fr;
  }

  body.single-course .jc-metric-cell,
  body.single-course .jc-metric-cell:nth-child(2n),
  body.single-course .jc-metric-cell:nth-child(3n),
  body.single-course .jc-metric-cell:nth-child(n+4),
  body.single-course .jc-metric-cell:nth-child(n+5){
    border-right:0;
    border-bottom:1px solid #DDE3EA;
  }

  body.single-course .jc-metric-cell:last-child{
    border-bottom:0;
  }
}

/* ====================================================
   JC Single Course Metric Board Refinements
   Scoped to body.single-course
==================================================== */

body.single-course .jc-metric-board{
  overflow:visible !important;
}

body.single-course .jc-metric-cell{
  position:relative !important;
  border:0 !important;
  min-height:270px !important;
  padding:22px 24px 24px !important;
  isolation:isolate !important;
}

body.single-course .jc-metric-cell::before,
body.single-course .jc-metric-cell::after{
  content:"" !important;
  position:absolute !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:#DDE3EA !important;
}

body.single-course .jc-metric-cell:not(:nth-child(3n))::before{
  top:26px !important;
  right:0 !important;
  bottom:26px !important;
  width:1px !important;
}

body.single-course .jc-metric-cell:nth-child(-n+3)::after{
  left:26px !important;
  right:26px !important;
  bottom:0 !important;
  height:1px !important;
}

body.single-course .jc-metric-cell > *{
  position:relative !important;
  z-index:1 !important;
}

body.single-course .jc-metric-cell > .jc-metric-title{
  position:relative !important;
  z-index:220 !important;
}

body.single-course .jc-metric-cell:hover,
body.single-course .jc-metric-cell:focus-within{
  z-index:200 !important;
}

body.single-course .jc-metric-graphic{
  width:150px !important;
  height:132px !important;
  min-height:132px !important;
}

body.single-course .jc-metric-impact .jc-metric-graphic{
  width:154px !important;
  height:154px !important;
  min-height:154px !important;
}

body.single-course .jc-impact-donut{
  width:136px !important;
  height:136px !important;
  aspect-ratio:1 / 1 !important;
  flex:0 0 136px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50% !important;
  background:conic-gradient(#2E9F45 0 var(--jc-impact-deg, 0deg), #D9D9D9 var(--jc-impact-deg, 0deg) 360deg) !important;
}

body.single-course .jc-impact-donut::after{
  inset:15px !important;
}

body.single-course .jc-impact-donut .jc-impact-score-number{
  display:block !important;
  font-size:1.78rem !important;
  line-height:.95 !important;
}

body.single-course .jc-impact-donut .jc-impact-score-unit{
  display:block !important;
  margin-top:3px !important;
  color:#06112F !important;
  font-size:1rem !important;
  font-weight:700 !important;
  line-height:1 !important;
}

body.single-course .jc-metric-impact .jc-metric-value,
body.single-course .jc-metric-difficulty .jc-metric-support{
  color:#2E9F45 !important;
  font-size:1.05rem !important;
  font-weight:800 !important;
  line-height:1.25 !important;
}

body.single-course .jc-metric-difficulty .jc-metric-support{
  color:#F47A1F !important;
}

body.single-course .jc-metric-mark{
  overflow:visible !important;
}

body.single-course .jc-metric-time .jc-metric-mark{
  width:96px !important;
  height:88px !important;
  flex-basis:88px !important;
  border:4px solid #2F73D8 !important;
  border-radius:10px !important;
}

body.single-course .jc-metric-time .jc-metric-mark::before{
  top:19px !important;
}

body.single-course .jc-metric-time .jc-metric-mark::after{
  left:19px !important;
  top:39px !important;
}

body.single-course .jc-metric-time .jc-metric-mark .jc-metric-mark-core::before,
body.single-course .jc-metric-time .jc-metric-mark .jc-metric-mark-core::after{
  content:"" !important;
  position:absolute !important;
  top:-12px !important;
  width:6px !important;
  height:22px !important;
  border-radius:999px !important;
  background:#2F73D8 !important;
}

body.single-course .jc-metric-time .jc-metric-mark .jc-metric-mark-core::before{
  left:22px !important;
}

body.single-course .jc-metric-time .jc-metric-mark .jc-metric-mark-core::after{
  right:22px !important;
}

body.single-course .jc-metric-difficulty .jc-metric-mark{
  width:126px !important;
  height:78px !important;
  flex-basis:78px !important;
  overflow:visible !important;
  background:transparent !important;
}

body.single-course .jc-metric-difficulty .jc-metric-mark::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:126px !important;
  height:126px !important;
  border-radius:50% !important;
  background:conic-gradient(from 270deg, #F47A1F 0 var(--jc-difficulty-fill, 0deg), #D9D9D9 var(--jc-difficulty-fill, 0deg) 180deg, transparent 0 360deg) !important;
  -webkit-mask:radial-gradient(farthest-side, transparent calc(100% - 15px), #000 calc(100% - 14px)) !important;
  mask:radial-gradient(farthest-side, transparent calc(100% - 15px), #000 calc(100% - 14px)) !important;
  clip-path:inset(0 0 50% 0) !important;
}

body.single-course .jc-metric-difficulty .jc-metric-mark::after{
  content:"" !important;
  position:absolute !important;
  left:calc(50% - 3px) !important;
  top:58px !important;
  width:58px !important;
  height:5px !important;
  border-radius:999px !important;
  background:#06112F !important;
  transform-origin:3px 50% !important;
  transform:rotate(calc(var(--jc-difficulty-angle, -90deg) - 90deg)) !important;
}

body.single-course .jc-metric-difficulty .jc-metric-mark .jc-metric-mark-core::before{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:56px !important;
  width:12px !important;
  height:12px !important;
  margin-left:-6px !important;
  border-radius:50% !important;
  background:#06112F !important;
}

body.single-course .jc-metric-type .jc-metric-mark{
  width:94px !important;
  height:112px !important;
  flex-basis:112px !important;
}

body.single-course .jc-metric-type .jc-metric-mark::before{
  content:"" !important;
  position:absolute !important;
  inset:2px 8px !important;
  border:0 !important;
  background:#2F73D8 !important;
  clip-path:polygon(50% 0, 94% 18%, 87% 69%, 50% 100%, 13% 69%, 6% 18%) !important;
}

body.single-course .jc-metric-type .jc-metric-mark::after{
  content:"" !important;
  position:absolute !important;
  inset:11px 18px 16px !important;
  background:#fff !important;
  clip-path:polygon(50% 0, 92% 18%, 86% 68%, 50% 100%, 14% 68%, 8% 18%) !important;
}

body.single-course .jc-metric-type .jc-metric-mark .jc-metric-mark-core::before{
  content:"+" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  display:grid !important;
  place-items:center !important;
  color:#2F73D8 !important;
  font-size:3.3rem !important;
  font-weight:800 !important;
  line-height:1 !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark{
  width:112px !important;
  height:112px !important;
  flex-basis:112px !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark::before,
body.single-course .jc-metric-renewal .jc-metric-mark::after{
  width:78px !important;
  height:78px !important;
  border-width:5px !important;
  border-color:#7B4BB7 !important;
  border-radius:50% !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark::before{
  top:14px !important;
  left:13px !important;
  border-left-color:transparent !important;
  border-bottom-color:transparent !important;
  transform:rotate(12deg) !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark::after{
  right:13px !important;
  bottom:14px !important;
  border-right-color:transparent !important;
  border-top-color:transparent !important;
  transform:rotate(12deg) !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark .jc-metric-mark-core::before,
body.single-course .jc-metric-renewal .jc-metric-mark .jc-metric-mark-core::after{
  content:"" !important;
  position:absolute !important;
  z-index:2 !important;
  width:0 !important;
  height:0 !important;
  border-style:solid !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark .jc-metric-mark-core::before{
  right:16px !important;
  top:25px !important;
  border-width:8px 0 8px 12px !important;
  border-color:transparent transparent transparent #7B4BB7 !important;
  transform:rotate(52deg) !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark .jc-metric-mark-core::after{
  left:16px !important;
  bottom:25px !important;
  border-width:8px 12px 8px 0 !important;
  border-color:transparent #7B4BB7 transparent transparent !important;
  transform:rotate(52deg) !important;
}

body.single-course .jc-metric-cost .jc-metric-mark{
  width:100px !important;
  height:100px !important;
  flex-basis:100px !important;
}

body.single-course .jc-metric-tip-wrap,
body.single-course .jc-impact-tip-wrap{
  position:relative !important;
  display:inline-flex !important;
  flex:0 0 auto !important;
  margin-top:1px !important;
  z-index:30 !important;
}

body.single-course .jc-metric-tip,
body.single-course .jc-impact-tip{
  width:16px !important;
  height:16px !important;
  border-color:#B7C2CE !important;
  background:#fff !important;
  color:#667085 !important;
  font-size:10px !important;
}

body.single-course .jc-metric-tip-text,
body.single-course .jc-impact-tip-text{
  top:calc(100% + 9px) !important;
  right:auto !important;
  bottom:auto !important;
  left:50% !important;
  width:min(270px, 72vw) !important;
  padding:10px 12px !important;
  border:1px solid #DDE3EA !important;
  border-radius:10px !important;
  background:#F8FAFC !important;
  color:#06112F !important;
  box-shadow:0 8px 18px rgba(6,17,47,.10) !important;
  font-size:.78rem !important;
  font-weight:500 !important;
  line-height:1.4 !important;
  text-align:left !important;
  transform:translate(-50%, -3px) !important;
  z-index:140 !important;
}

body.single-course .jc-metric-tip-wrap:hover,
body.single-course .jc-metric-tip-wrap:focus-within,
body.single-course .jc-impact-tip-wrap:hover,
body.single-course .jc-impact-tip-wrap:focus-within{
  z-index:120 !important;
}

body.single-course .jc-metric-tip-wrap:hover .jc-metric-tip-text,
body.single-course .jc-metric-tip-wrap:focus-within .jc-metric-tip-text,
body.single-course .jc-impact-tip-wrap:hover .jc-impact-tip-text,
body.single-course .jc-impact-tip-wrap:focus-within .jc-impact-tip-text{
  opacity:1 !important;
  transform:translate(-50%, 0) !important;
}

@media (max-width:900px){
  body.single-course .jc-metric-cell::before,
  body.single-course .jc-metric-cell::after{
    content:none !important;
  }

  body.single-course .jc-metric-cell:not(:nth-child(2n))::before{
    content:"" !important;
    top:26px !important;
    right:0 !important;
    bottom:26px !important;
    width:1px !important;
  }

  body.single-course .jc-metric-cell:nth-child(-n+4)::after{
    content:"" !important;
    left:26px !important;
    right:26px !important;
    bottom:0 !important;
    height:1px !important;
  }
}

@media (max-width:600px){
  body.single-course .jc-metric-cell::before{
    content:none !important;
  }

  body.single-course .jc-metric-cell::after{
    content:"" !important;
    left:26px !important;
    right:26px !important;
    bottom:0 !important;
    height:1px !important;
  }

  body.single-course .jc-metric-cell:last-child::after{
    content:none !important;
  }

  body.single-course .jc-metric-tip-text,
  body.single-course .jc-impact-tip-text{
    width:min(250px, 82vw) !important;
  }
}

/* ====================================================
   JC Single Course Metric Board Micro Refinements
   Scoped to body.single-course
==================================================== */

body.single-course .jc-metric-board{
  position:relative !important;
  border:1px solid #DDE3EA !important;
  border-radius:14px !important;
  background:#fff !important;
  overflow:visible !important;
}

body.single-course .jc-metric-board::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:8 !important;
  pointer-events:none !important;
  border:1px solid #DDE3EA !important;
  border-radius:14px !important;
}

body.single-course .jc-metric-cell::before,
body.single-course .jc-metric-cell::after{
  z-index:2 !important;
  opacity:1 !important;
}

body.single-course .jc-metric-support{
  color:#06112F !important;
  font-size:.92rem !important;
  font-weight:400 !important;
  line-height:1.45 !important;
}

body.single-course .jc-metric-cell::before,
body.single-course .jc-metric-cell::after{
  content:none !important;
}

body.single-course .jc-metric-cell{
  border-right:1px solid #DDE3EA !important;
  border-bottom:1px solid #DDE3EA !important;
}

body.single-course .jc-metric-cell.jc-metric-impact,
body.single-course .jc-metric-cell.jc-metric-time,
body.single-course .jc-metric-cell.jc-metric-type,
body.single-course .jc-metric-cell.jc-metric-renewal{
  border-right:1px solid #DDE3EA !important;
}

body.single-course .jc-metric-cell.jc-metric-impact,
body.single-course .jc-metric-cell.jc-metric-type,
body.single-course .jc-metric-cell.jc-metric-difficulty,
body.single-course .jc-metric-cell.jc-metric-time,
body.single-course .jc-metric-cell.jc-metric-renewal,
body.single-course .jc-metric-cell.jc-metric-cost{
  border-bottom:1px solid #DDE3EA !important;
}

body.single-course .jc-metric-intro{
  grid-column:span 2 !important;
  min-height:270px !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:18px !important;
  padding:26px 32px !important;
  text-align:left !important;
}

body.single-course .jc-metric-provider-block,
body.single-course .jc-metric-about-block{
  width:100% !important;
}

body.single-course .jc-metric-intro-roles{
  width:100% !important;
  margin-top:2px !important;
  padding:18px 20px !important;
  border-radius:11px !important;
  background:#F8FAFC !important;
  border:1px solid #DDE3EA !important;
  box-sizing:border-box !important;
}

body.single-course .jc-metric-intro-roles .jc-roles-list{
  margin:0 !important;
  padding-left:18px !important;
  color:#06112F !important;
  font-size:.92rem !important;
  font-weight:400 !important;
  line-height:1.55 !important;
}

body.single-course .jc-metric-intro-roles .jc-roles-list li{
  margin:0 0 7px !important;
  color:#06112F !important;
  font-weight:400 !important;
}

body.single-course .jc-metric-intro-roles .role-salary{
  color:#06112F !important;
  font-weight:500 !important;
}

body.single-course .jc-metric-intro-heading{
  margin:0 0 7px !important;
  color:#06112F !important;
  font-size:1rem !important;
  font-weight:800 !important;
  line-height:1.25 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

body.single-course .jc-metric-provider-name,
body.single-course .jc-metric-about-copy{
  margin:0 !important;
  color:#06112F !important;
  font-size:.92rem !important;
  font-weight:400 !important;
  line-height:1.55 !important;
}

body.single-course .jc-metric-provider-name{
  font-weight:500 !important;
}

body.single-course .jc-metric-quiz{
  position:relative !important;
  min-height:270px !important;
  justify-content:center !important;
  gap:15px !important;
  padding:30px 24px 26px !important;
}

body.single-course .jc-metric-ai-icon{
  position:absolute !important;
  top:22px !important;
  left:24px !important;
  color:#06112F !important;
  line-height:0 !important;
}

body.single-course .jc-metric-ai-icon svg{
  width:38px !important;
  height:38px !important;
  max-width:38px !important;
  max-height:38px !important;
  display:block !important;
  fill:currentColor !important;
  stroke:none !important;
}

body.single-course .jc-metric-beta-pill{
  position:absolute !important;
  top:22px !important;
  right:24px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:24px !important;
  padding:4px 12px !important;
  border-radius:999px !important;
  border:1px solid #A7F3D0 !important;
  background:#DDF4E4 !important;
  color:#168A3A !important;
  font-size:.76rem !important;
  font-weight:600 !important;
  line-height:1 !important;
}

body.single-course .jc-metric-quiz-copy{
  width:100% !important;
  max-width:28ch !important;
  margin:28px auto 0 !important;
}

body.single-course .jc-metric-quiz-copy h3{
  margin:0 0 10px !important;
  color:#06112F !important;
  font-size:1rem !important;
  font-weight:800 !important;
  line-height:1.3 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

body.single-course .jc-metric-quiz-copy p{
  margin:0 !important;
  color:#06112F !important;
  font-size:.88rem !important;
  font-weight:400 !important;
  line-height:1.45 !important;
}

body.single-course .jc-metric-quiz-btn,
body.single-course .jc-metric-quiz-btn:visited{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:42px !important;
  padding:10px 18px !important;
  border-radius:11px !important;
  background:#003A8C !important;
  border:1px solid #003A8C !important;
  color:#fff !important;
  font-size:.9rem !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
}

body.single-course .jc-metric-quiz-btn:hover,
body.single-course .jc-metric-quiz-btn:focus-visible{
  background:#06112F !important;
  border-color:#06112F !important;
  color:#fff !important;
}

body.single-course .jc-metric-row-separator{
  grid-column:1 / -1 !important;
  height:1px !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  background:#DDE3EA !important;
  border:0 !important;
}

body.single-course .jc-metric-trend-detail{
  grid-column:span 2 !important;
  min-height:360px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:28px !important;
  padding:30px 34px !important;
  text-align:left !important;
}

body.single-course .jc-metric-credential-cta{
  grid-column:3 !important;
  min-height:360px !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  padding:28px 24px !important;
  text-align:center !important;
}

body.single-course .jc-metric-detail-group{
  width:100% !important;
  max-width:100% !important;
}

body.single-course .jc-metric-detail-title,
body.single-course .jc-metric-detail-copy h3{
  margin:0 !important;
  color:#06112F !important;
  font-size:1rem !important;
  font-weight:800 !important;
  line-height:1.25 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

body.single-course .jc-metric-detail-copy{
  max-width:72ch !important;
}

body.single-course .jc-metric-detail-copy p{
  margin:10px 0 0 !important;
  color:#06112F !important;
  font-size:.92rem !important;
  font-weight:400 !important;
  line-height:1.55 !important;
}

body.single-course .jc-metric-detail-icon,
body.single-course .jc-employer-icon{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  color:#2F73D8 !important;
}

body.single-course .jc-metric-detail-icon svg{
  width:112px !important;
  height:76px !important;
  max-width:112px !important;
  max-height:76px !important;
  display:block !important;
}

body.single-course .jc-trend-bars rect{
  fill:#DDF4E4 !important;
  stroke:#2E9F45 !important;
  stroke-width:2 !important;
}

body.single-course .jc-trend-line,
body.single-course .jc-trend-arrow{
  fill:none !important;
  stroke:#2F73D8 !important;
  stroke-width:4 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

body.single-course .jc-employer-icon svg{
  width:96px !important;
  height:80px !important;
  max-width:96px !important;
  max-height:80px !important;
  display:block !important;
}

body.single-course .jc-employer-building{
  fill:#EFF6FF !important;
  stroke:#2F73D8 !important;
  stroke-width:3 !important;
}

body.single-course .jc-employer-roof,
body.single-course .jc-employer-door{
  fill:none !important;
  stroke:#06112F !important;
  stroke-width:3 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

body.single-course .jc-employer-windows rect{
  fill:#2F73D8 !important;
  stroke:none !important;
}

body.single-course .jc-typical-employers-copy{
  width:100% !important;
  max-width:72ch !important;
  margin:0 !important;
  text-align:left !important;
}

body.single-course .jc-metric-employer-group .jc-metric-detail-title{
  margin-bottom:10px !important;
}

body.single-course .jc-typical-employers-copy p{
  margin:0 !important;
  color:#06112F !important;
  font-size:.92rem !important;
  font-weight:400 !important;
  line-height:1.55 !important;
}

body.single-course .jc-typical-employers-copy p + p{
  margin-top:10px !important;
}

body.single-course .jc-metric-quiz,
body.single-course .jc-metric-difficulty,
body.single-course .jc-metric-cost,
body.single-course .jc-metric-credential-cta{
  border-right:0 !important;
}

body.single-course .jc-metric-trend-detail,
body.single-course .jc-metric-credential-cta{
  border-bottom:0 !important;
}

body.single-course .jc-credential-cta-copy{
  width:100% !important;
  max-width:30ch !important;
  margin:0 auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
}

body.single-course .jc-credential-cta-copy h3{
  margin:0 !important;
  color:#06112F !important;
  font-size:1.05rem !important;
  font-weight:800 !important;
  line-height:1.25 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

body.single-course .jc-credential-cta-actions{
  width:100% !important;
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
}

body.single-course .jc-credential-cta-note{
  margin:0 !important;
  color:#06112F !important;
  font-size:.86rem !important;
  font-weight:400 !important;
  line-height:1.45 !important;
  text-align:center !important;
}

body.single-course .jc-credential-cta-btn,
body.single-course .jc-credential-cta-btn:visited{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:44px !important;
  padding:11px 18px !important;
  border-radius:11px !important;
  font-size:.92rem !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  box-sizing:border-box !important;
}

body.single-course .jc-credential-cta-btn-primary,
body.single-course .jc-credential-cta-btn-primary:visited{
  background:#003A8C !important;
  border:1px solid #003A8C !important;
  color:#fff !important;
}

body.single-course .jc-credential-cta-btn-primary:hover,
body.single-course .jc-credential-cta-btn-primary:focus-visible{
  background:#06112F !important;
  border-color:#06112F !important;
  color:#fff !important;
}

body.single-course .jc-credential-cta-btn-secondary,
body.single-course .jc-credential-cta-btn-secondary:visited{
  background:#fff !important;
  border:1px solid #003A8C !important;
  color:#003A8C !important;
}

body.single-course .jc-credential-cta-btn-secondary:hover,
body.single-course .jc-credential-cta-btn-secondary:focus-visible{
  background:#F8FAFC !important;
  border-color:#06112F !important;
  color:#06112F !important;
}

body.single-course .jc-metric-difficulty .jc-metric-graphic{
  width:150px !important;
  height:128px !important;
  min-height:128px !important;
}

body.single-course .jc-metric-difficulty .jc-metric-mark{
  width:126px !important;
  height:96px !important;
  flex-basis:96px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-end !important;
  margin:0 auto !important;
  padding-bottom:10px !important;
  transform:translateX(-8px) !important;
}

body.single-course .jc-metric-difficulty .jc-metric-mark::before{
  left:0 !important;
  top:0 !important;
}

body.single-course .jc-metric-difficulty .jc-metric-mark::after,
body.single-course .jc-metric-difficulty .jc-metric-mark .jc-metric-mark-core::before{
  content:none !important;
}

body.single-course .jc-difficulty-score-number{
  position:relative !important;
  z-index:3 !important;
  display:block !important;
  color:#06112F !important;
  font-size:1.78rem !important;
  font-weight:800 !important;
  line-height:.95 !important;
}

body.single-course .jc-difficulty-score-unit{
  position:relative !important;
  z-index:3 !important;
  display:block !important;
  margin-top:3px !important;
  color:#06112F !important;
  font-size:1rem !important;
  font-weight:700 !important;
  line-height:1 !important;
}

body.single-course .jc-metric-type .jc-metric-mark{
  width:94px !important;
  height:112px !important;
  flex-basis:112px !important;
}

body.single-course .jc-metric-type .jc-metric-mark::before{
  content:"" !important;
  position:absolute !important;
  inset:0 8px 3px !important;
  border:0 !important;
  background:#2F73D8 !important;
  clip-path:polygon(50% 0, 95% 18%, 88% 68%, 50% 100%, 12% 68%, 5% 18%) !important;
}

body.single-course .jc-metric-type .jc-metric-mark::after,
body.single-course .jc-metric-type .jc-metric-mark .jc-metric-mark-core::before{
  content:none !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark{
  width:116px !important;
  height:112px !important;
  flex-basis:112px !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark::before,
body.single-course .jc-metric-renewal .jc-metric-mark::after{
  content:"" !important;
  position:absolute !important;
  width:82px !important;
  height:82px !important;
  border:5px solid #7B4BB7 !important;
  border-radius:50% !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark::before{
  top:13px !important;
  left:15px !important;
  border-left-color:transparent !important;
  border-bottom-color:transparent !important;
  transform:rotate(5deg) !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark::after{
  right:15px !important;
  bottom:13px !important;
  border-right-color:transparent !important;
  border-top-color:transparent !important;
  transform:rotate(5deg) !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark .jc-metric-mark-core::before{
  content:"" !important;
  position:absolute !important;
  z-index:3 !important;
  right:16px !important;
  top:31px !important;
  width:0 !important;
  height:0 !important;
  border-style:solid !important;
  border-width:8px 0 8px 12px !important;
  border-color:transparent transparent transparent #7B4BB7 !important;
  transform:rotate(44deg) !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark .jc-metric-mark-core::after{
  content:"" !important;
  position:absolute !important;
  z-index:3 !important;
  left:16px !important;
  bottom:31px !important;
  width:0 !important;
  height:0 !important;
  border-style:solid !important;
  border-width:8px 12px 8px 0 !important;
  border-color:transparent #7B4BB7 transparent transparent !important;
  transform:rotate(44deg) !important;
}

@media (max-width:900px){
  body.single-course .jc-metric-board{
    grid-template-columns:1fr !important;
  }

  body.single-course .jc-metric-intro{
    grid-column:auto !important;
    min-height:auto !important;
    padding:24px !important;
  }

  body.single-course .jc-metric-trend-detail,
  body.single-course .jc-metric-credential-cta{
    grid-column:auto !important;
    min-height:auto !important;
  }

  body.single-course .jc-metric-trend-detail{
    gap:22px !important;
    padding:26px 24px !important;
    text-align:left !important;
  }

  body.single-course .jc-metric-cell,
  body.single-course .jc-metric-quiz,
  body.single-course .jc-metric-difficulty,
  body.single-course .jc-metric-cost,
  body.single-course .jc-metric-time,
  body.single-course .jc-metric-renewal,
  body.single-course .jc-metric-trend-detail,
  body.single-course .jc-metric-credential-cta{
    border-right:0 !important;
    border-bottom:1px solid #DDE3EA !important;
  }

  body.single-course .jc-metric-credential-cta:last-child,
  body.single-course .jc-metric-trend-detail:last-child{
    border-bottom:0 !important;
  }

  body.single-course .jc-metric-board::before{
    border-radius:14px !important;
  }
}

@media (max-width:600px){
  body.single-course .jc-metric-board::before{
    border-radius:14px !important;
  }
}

/* ====================================================
   JC Single Course Metric Board Final Icon Tweaks
   Scoped to body.single-course
==================================================== */

body.single-course .jc-metric-difficulty .jc-metric-mark{
  width:126px !important;
  height:104px !important;
  flex-basis:104px !important;
  display:block !important;
  margin:0 auto !important;
  padding:0 !important;
  transform:none !important;
}

body.single-course .jc-metric-difficulty .jc-metric-mark::before{
  left:0 !important;
  top:0 !important;
}

body.single-course .jc-difficulty-score-number{
  position:absolute !important;
  left:50% !important;
  top:43px !important;
  transform:translateX(-50%) !important;
  text-align:center !important;
  white-space:nowrap !important;
}

body.single-course .jc-difficulty-score-unit{
  position:absolute !important;
  left:50% !important;
  top:70px !important;
  margin:0 !important;
  transform:translateX(-50%) !important;
  text-align:center !important;
  white-space:nowrap !important;
}

body.single-course .jc-metric-difficulty .jc-metric-value{
  color:#F47A1F !important;
  font-size:1.05rem !important;
  font-weight:800 !important;
  line-height:1.25 !important;
}

body.single-course .jc-metric-difficulty .jc-metric-support{
  color:#06112F !important;
  font-size:.92rem !important;
  font-weight:400 !important;
  line-height:1.45 !important;
}

body.single-course .jc-metric-type .jc-metric-mark{
  width:86px !important;
  height:96px !important;
  flex-basis:96px !important;
  border-radius:15px !important;
  background:#2F73D8 !important;
}

body.single-course .jc-metric-type .jc-metric-mark::before{
  content:"" !important;
  position:absolute !important;
  inset:auto !important;
  top:14px !important;
  left:14px !important;
  width:22px !important;
  height:22px !important;
  border-radius:50% !important;
  background:#fff !important;
  clip-path:none !important;
}

body.single-course .jc-metric-type .jc-metric-mark::after,
body.single-course .jc-metric-type .jc-metric-mark .jc-metric-mark-core::before{
  content:none !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark{
  width:112px !important;
  height:112px !important;
  flex-basis:112px !important;
  display:grid !important;
  place-items:center !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark::before{
  content:"\21BB" !important;
  position:static !important;
  width:auto !important;
  height:auto !important;
  border:0 !important;
  border-radius:0 !important;
  color:#7B4BB7 !important;
  font-size:5.35rem !important;
  font-weight:400 !important;
  line-height:1 !important;
  transform:none !important;
}

body.single-course .jc-metric-renewal .jc-metric-mark::after,
body.single-course .jc-metric-renewal .jc-metric-mark .jc-metric-mark-core::before,
body.single-course .jc-metric-renewal .jc-metric-mark .jc-metric-mark-core::after{
  content:none !important;
}

/* ====================================================
   Single Course Parent Industry Button
   Mirrors homepage Explore by career field tab style
==================================================== */

body.single-course .hero-top-row > a.pill.parent.jc-single-parent-field-btn{
  -webkit-appearance:none;
  appearance:none;
  display:inline-flex !important;
  flex-direction:row !important;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:10px 16px;
  border-radius:11px;
  border:1px solid #000000 !important;
  border-color:#000000 !important;
  background:#000000 !important;
  background-color:#000000 !important;
  color:#ffffff !important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  font-size:14px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:0;
  text-transform:none;
  text-decoration:none;
  white-space:nowrap;
  box-sizing:border-box;
  margin:0;
  outline:none;
  cursor:pointer;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
  vertical-align:middle;
}

body.single-course .hero-top-row > a.pill.parent.jc-single-parent-field-btn svg{
  width:15px !important;
  height:15px !important;
  flex:0 0 15px !important;
  display:block !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
  margin:0 !important;
  padding:0 !important;
  align-self:center;
}

body.single-course .hero-top-row > a.pill.parent.jc-single-parent-field-btn svg path,
body.single-course .hero-top-row > a.pill.parent.jc-single-parent-field-btn svg rect,
body.single-course .hero-top-row > a.pill.parent.jc-single-parent-field-btn svg circle,
body.single-course .hero-top-row > a.pill.parent.jc-single-parent-field-btn svg polyline,
body.single-course .hero-top-row > a.pill.parent.jc-single-parent-field-btn svg line{
  fill:none !important;
  stroke:currentColor !important;
}

body.single-course .hero-top-row > a.pill.parent.jc-single-parent-field-btn > span{
  display:inline-block;
  margin:0;
  padding:0;
  line-height:1.2;
  white-space:nowrap;
}

body.single-course .hero-top-row > a.pill.parent.jc-single-parent-field-btn:hover,
body.single-course .hero-top-row > a.pill.parent.jc-single-parent-field-btn:focus-visible{
  background:#ffffff !important;
  border-color:#000000 !important;
  color:#000000 !important;
  transform:translateY(-1px);
  text-decoration:none;
}