/* Dedicated Diploma page, built on the homepage and course design tokens. */
.diploma-hero {
  overflow: hidden;
  color: #fff;
  background: radial-gradient(circle at 82% 20%, #0b4331, transparent 34%), linear-gradient(135deg, #063022, #031c14);
}
.diploma-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
  gap: 6%;
  align-items: center;
  min-height: 690px;
  padding-block: 95px;
}
.diploma-hero h1 {
  font-size: clamp(2.8rem, 4.8vw, 5.25rem);
  margin-bottom: 24px;
}
.diploma-hero h1 em { color: var(--gold-light); }
.diploma-hero-headline {
  font: 800 clamp(1.2rem, 2.1vw, 1.7rem)/1.35 Manrope, Arial, sans-serif;
  max-width: 740px;
}
.diploma-hero-copy {
  color: #d6e3dc;
  max-width: 690px;
  font-size: 1.05rem;
}
.diploma-hero-points {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 27px 0 32px;
}
.diploma-hero-points span {
  display: flex;
  align-items: center;
  gap: 7px;
  border: 1px solid #ffffff40;
  padding: 9px 12px;
  font-size: .75rem;
  font-weight: 800;
}
.diploma-hero-points strong { color: var(--gold-light); }
.diploma-hero-art {
  position: relative;
  min-height: 430px;
  display: grid;
  place-items: center;
  gap: 4px;
  padding: 32px;
  border: 1px solid #c5a86c72;
  background: repeating-linear-gradient(90deg, #ffffff06 0 1px, transparent 1px 53px), linear-gradient(145deg, #0b4331, #063022);
  box-shadow: 24px 28px 60px #0004;
  transform: rotate(2deg);
}
.diploma-hero-art span {
  font: 800 clamp(1.2rem, 2.4vw, 2rem) Manrope, Arial, sans-serif;
  letter-spacing: .08em;
}
.diploma-hero-art span:nth-of-type(even) { color: var(--gold-light); }
.diploma-hero-art i {
  width: 1px;
  height: 16px;
  background: var(--gold);
}
.diploma-hero-art div {
  justify-self: stretch;
  border-top: 1px solid #ffffff30;
  padding-top: 15px;
  margin-top: 15px;
  color: var(--gold-light);
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .2em;
}
.why-diploma { background: #fff; }
.why-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.why-grid > div {
  display: grid;
  gap: 8px;
  padding: 23px;
  background: #f4f8f6;
  border-top: 2px solid var(--gold);
}
.why-grid span {
  color: var(--blue);
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: .1em;
}
.why-grid strong { font: 800 1.16rem Manrope, Arial, sans-serif; }
.why-grid small { color: var(--muted); font-weight: 700; }
.decision-line {
  margin-top: 14px;
  padding: 18px 23px;
  background: var(--navy);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.decision-line span {
  color: var(--gold-light);
  font-weight: 800;
  letter-spacing: .17em;
  font-size: .7rem;
}
.decision-line strong { font: 800 1.65rem Manrope, Arial, sans-serif; }
.diploma-tracks { background: #f0f5f2; }
.diploma-track-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.diploma-track-card {
  display: flex;
  flex-direction: column;
  min-height: 310px;
  padding: 24px;
  background: #fff;
  border: 1px solid var(--line);
  border-top: 3px solid var(--blue);
  transition: transform .2s, box-shadow .2s;
}
.diploma-track-card:hover { transform: translateY(-3px); box-shadow: 0 14px 26px rgba(7,30,22,.08); }
.diploma-track-card:nth-child(3), .diploma-track-card:nth-child(4) { border-top-color: var(--gold); }
.diploma-track-card > span {
  color: var(--blue);
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .13em;
}
.diploma-track-card h3 { font-size: 1.24rem; margin: 25px 0 12px; }
.diploma-track-card p { color: var(--muted); font-size: .82rem; }
.diploma-track-card small { color: var(--muted); font-weight: 700; margin: 0 0 20px; }
.diploma-track-card b {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid var(--line);
  padding-top: 14px;
  margin-top: auto;
  color: var(--blue);
  font-size: .8rem;
}
.diploma-journey { background: #fff; }
.journey-flow {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
}
.journey-flow li {
  position: relative;
  min-height: 110px;
  padding: 17px;
  background: #f4f8f6;
  border-left: 3px solid var(--gold);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.journey-flow li:not(:last-child)::after {
  content: '↘';
  color: var(--blue);
  position: absolute;
  right: 13px;
  bottom: 12px;
  font-size: 1.15rem;
}
.journey-flow span { color: var(--blue); font-size: .65rem; font-weight: 800; }
.journey-flow strong { font: 800 .9rem Manrope, Arial, sans-serif; padding-right: 15px; }
.journey-flow li:last-child { background: var(--navy); color: #fff; border-color: var(--gold); }
.journey-flow li:last-child span { color: var(--gold-light); }
.diploma-curriculum { background: #f0f5f2; }
.curriculum-tracks { border-top: 1px solid var(--line); }
.diploma-curriculum-track {
  background: #fff;
  border: 1px solid var(--line);
  border-top: 0;
}
.diploma-curriculum-track summary {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 24px;
  cursor: pointer;
  list-style: none;
}
.diploma-curriculum-track summary::-webkit-details-marker { display: none; }
.diploma-curriculum-track summary::after {
  content: '+';
  margin-left: auto;
  color: var(--blue);
  font-size: 1.4rem;
}
.diploma-curriculum-track[open] summary::after { content: '−'; }
.diploma-curriculum-track summary span { color: var(--gold); font-weight: 800; font-size: .68rem; letter-spacing: .1em; }
.diploma-curriculum-track summary strong { font: 800 1.13rem Manrope, Arial, sans-serif; }
.diploma-curriculum-track summary small { color: var(--muted); }
.diploma-curriculum-track > div { border-top: 1px solid var(--line); padding: 18px 27px 27px; }
.diploma-curriculum-track p { color: var(--muted); max-width: 800px; }
.diploma-curriculum-track ol {
  margin: 20px 0;
  padding-left: 20px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 30px;
  font-size: .85rem;
  font-weight: 700;
}
.diploma-audience { background: #fff; }
.diploma-outcomes { background: #edf6f2; }
.diploma-outcome-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.diploma-outcome-grid li {
  position: relative;
  background: #fff;
  padding: 15px 16px 15px 42px;
  border: 1px solid var(--line);
  font-size: .85rem;
  font-weight: 700;
}
.diploma-outcome-grid li::before {
  content: '✓';
  position: absolute;
  left: 16px;
  color: var(--blue);
}
.diploma-cases { background: #fff; }
.diploma-case-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.diploma-case-grid span {
  padding: 18px;
  background: #f4f8f6;
  border-left: 3px solid var(--gold);
  font: 800 .78rem/1.4 Manrope, Arial, sans-serif;
}
.diploma-capstone {
  background: radial-gradient(circle at 85% 20%, #0b4331, #063022 60%);
  color: #fff;
}
.diploma-capstone h2 { max-width: 760px; }
.diploma-capstone > .shell > p:not(.eyebrow) { color: #d6e3dc; max-width: 750px; }
.capstone-flow {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0;
  margin: 32px 0 0;
}
.capstone-flow li {
  padding: 11px 13px;
  border: 1px solid #ffffff55;
  font-size: .76rem;
  font-weight: 800;
}
.capstone-flow li:not(:last-child)::after { content: ' →'; color: var(--gold-light); }
.diploma-learning { background: #fff; }
.diploma-learning .two-column > div:last-child > p { color: var(--muted); font-size: 1.05rem; }
.diploma-comparison { background: #f4f8f6; }
.diploma-comparison table { min-width: 580px; }
.diploma-testimonials { background: #fff; }
.diploma-instructor { background: #f0f5f2; }
.diploma-instructor .instructor-grid > div:last-child > p:not(.eyebrow) { color: var(--muted); font-size: 1.05rem; }
.diploma-pricing { background: #fff; }
.diploma-price-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 32px; }
.diploma-price-options .course-price-card { min-width: 0; }
.diploma-price-options .course-price-card h3 { margin-bottom: 8px; }
.diploma-price-options .course-price-card ul { color: var(--muted); margin: 0 0 12px; padding-inline-start: 20px; line-height: 1.7; }
.diploma-price-options .course-price-card .button { align-self: end; }
.diploma-pricing-note { margin-top: 22px; color: var(--muted); }
.diploma-faq { background: #f4f8f6; }
.diploma-enroll {
  padding: 90px 0;
  color: #fff;
  text-align: center;
  background: linear-gradient(135deg, #063022, #031c14);
}
.diploma-enroll h2 { max-width: 800px; margin-inline: auto; }
.diploma-enroll p:not(.eyebrow) { color: #d6e3dc; }
.diploma-enroll .actions { justify-content: center; margin-top: 26px; }
.diploma-other { background: #fff; }
.diploma-other-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 11px;
}
.diploma-other-grid a {
  display: grid;
  gap: 15px;
  min-height: 170px;
  padding: 20px;
  border: 1px solid var(--line);
  border-top: 2px solid var(--gold);
  background: #f4f8f6;
}
.diploma-other-grid a:hover { background: #edf6f2; }
.diploma-other-grid span { color: var(--blue); font-size: .67rem; font-weight: 800; }
.diploma-other-grid strong { font: 800 1rem/1.3 Manrope, Arial, sans-serif; }
.diploma-other-grid b { color: var(--blue); justify-self: end; }
@media (max-width: 1050px) {
  .diploma-hero-grid { gap: 3%; }
  .diploma-track-grid, .diploma-other-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .diploma-case-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .diploma-hero-grid { grid-template-columns: 1fr; min-height: auto; padding-block: 75px; }
  .diploma-hero-art { display: none; }
  .journey-flow { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .diploma-price-options { grid-template-columns: 1fr; }
  .diploma-hero h1 { font-size: clamp(2.4rem, 10vw, 3.9rem); }
  .diploma-hero-headline { font-size: 1.14rem; }
  .why-grid, .diploma-track-grid, .diploma-outcome-grid, .diploma-other-grid { grid-template-columns: 1fr; }
  .journey-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .journey-flow li { min-height: 100px; }
  .diploma-case-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .diploma-case-grid span { padding: 13px; font-size: .71rem; }
  .diploma-curriculum-track summary { padding: 18px; gap: 8px; flex-wrap: wrap; }
  .diploma-curriculum-track summary strong { flex: 1; }
  .diploma-curriculum-track summary small { order: 3; width: 100%; padding-left: 70px; }
  .diploma-curriculum-track > div { padding: 18px; }
  .diploma-curriculum-track ol { grid-template-columns: 1fr; }
}
