/* The home route scrolls internally. Everything here starts after the existing hero. */
#home.hero::after,
#home .hero-aero { bottom: auto; height: 100%; }
#home .home-landing { position: relative; z-index: 2; color: #f5f3fb; background: #100e19; text-align: left; }
#home .home-landing-shell { width: min(1240px, calc(100% - 96px)); margin-inline: auto; }
#home .home-landing h2,
#home .home-landing h3,
#home .home-landing p { margin: 0; }
#home .home-landing a { text-decoration: none; }
#home .home-eyebrow { color: #a9a1c3; font: 700 12px/1.4 var(--font-sans); letter-spacing: .12em; }
#home .home-section-heading { margin-bottom: 30px; }
#home .home-section-heading h2,
#home .home-flow-heading h2 { margin-top: 8px; font-size: clamp(29px, 2.65vw, 38px); line-height: 1.24; font-weight: 700; letter-spacing: -.04em; }
#home .home-section-heading p:not(.home-eyebrow),
#home .home-flow-heading > p { margin-top: 14px; color: #c1b9ce; font-size: 16px; line-height: 1.65; }
#home .home-section-heading-split { display: flex; justify-content: space-between; align-items: center; gap: 28px; }
#home .home-text-link { display: inline-flex; align-items: center; gap: 13px; flex: none; color: #d7cfe8; font-size: 15px; font-weight: 600; white-space: nowrap; }
#home .home-text-link:hover { color: #fff; }
#home .home-text-link span { font-size: 20px; font-weight: 400; }
#home .home-card-arrow { position: absolute; right: 24px; bottom: 19px; font-size: 23px; line-height: 1; font-weight: 400; }
#home .home-goal-card,
#home .home-course-card,
#home .home-resource-grid a { transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease; }
#home .home-goal-card:hover,
#home .home-course-card:hover,
#home .home-resource-grid a:hover { transform: translateY(-4px); }
#home .home-goal-card:active,
#home .home-course-card:active,
#home .home-resource-grid a:active { transform: translateY(-1px); }
#home .home-landing a:focus-visible,
#home .home-landing button:focus-visible { outline: 3px solid #6864e8; outline-offset: 4px; }

/* Dark transition immediately below the particle hero. */
#home .home-journey { padding: 58px 0 56px; border-top: 1px solid #353040; background: radial-gradient(ellipse 70% 80% at 50% 18%, #211b29 0%, #19151e 72%, #15121a 100%); color: #f6f5fb; }
#home .home-journey .home-section-heading h2 { color: #f8f7fd; }
#home .home-journey .home-section-heading p:not(.home-eyebrow) { color: #bdb5c7; }
#home .home-journey .home-text-link { color: #d9d1e5; }
#home .home-goal-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
#home .home-goal-card { position: relative; display: flex; flex-direction: column; min-height: 233px; overflow: hidden; padding: 29px 30px 25px; border: 1px solid #3d3549; border-radius: 10px; background: linear-gradient(130deg, #24202c, #1e1b27 68%, #292338); color: #f7f5fe; box-shadow: inset 0 1px 0 rgb(255 255 255 / .03); }
#home .home-goal-card:hover { border-color: #8177ba; box-shadow: 0 18px 40px rgb(6 3 16 / .26); }
#home .home-goal-number { color: #aeb7ff; font: 500 34px/1 var(--font-sans); }
#home .home-goal-card h3 { position: relative; z-index: 1; margin-top: auto; font-size: 21px; font-weight: 700; line-height: 1.35; }
#home .home-goal-card p { position: relative; z-index: 1; margin-top: 12px; color: #b7b1c1; font-size: 15px; line-height: 1.5; }
#home .home-goal-card .home-card-arrow { color: #ece8fb; }
#home .home-goal-gem { position: absolute; top: 12px; right: 18px; width: 98px; height: 103px; transform: rotate(-12deg); opacity: .7; background: linear-gradient(135deg, #7673d0 0%, #332d61 38%, #131326 68%, #6d68c4 100%); clip-path: polygon(49% 0, 100% 28%, 78% 92%, 33% 100%, 0 36%); filter: drop-shadow(0 7px 14px rgb(124 105 243 / .25)); }
#home .home-goal-gem::after { content: ""; position: absolute; inset: 2px; background: linear-gradient(125deg, transparent 44%, rgb(197 185 255 / .55) 45%, transparent 47%), linear-gradient(40deg, transparent 63%, rgb(191 175 255 / .35) 64%, transparent 65%); clip-path: inherit; }
#home .home-goal-card:nth-child(2) .home-goal-gem { transform: rotate(18deg); background: linear-gradient(135deg, #201c43, #6559bc 44%, #28264e 75%, #a29bf2); }
#home .home-goal-card:nth-child(3) .home-goal-gem { transform: rotate(34deg) scale(.86); background: linear-gradient(135deg, #59528a, #242238 42%, #100f20 65%, #646089); }

/* The reference intentionally changes to a cool light canvas for practice and discovery. */
#home .home-practice-feature { position: relative; overflow: hidden; padding: 72px 0; background: radial-gradient(ellipse 62% 110% at 81% 48%, #dde1fc, #f9faff 64%, #f9faff); }
#home .home-practice-feature::before,
#home .home-practice-feature::after { content: ""; position: absolute; width: 210px; height: 210px; pointer-events: none; opacity: .38; clip-path: polygon(45% 0, 100% 31%, 70% 100%, 0 77%, 15% 19%); background: linear-gradient(125deg, #fff, #b9c1f5 48%, #f9faff 75%); }
#home .home-practice-feature::before { top: 30px; left: 19%; transform: rotate(-15deg); }
#home .home-practice-feature::after { right: 43%; bottom: -97px; transform: rotate(18deg); }
#home .home-practice-layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, .87fr) minmax(0, 1.13fr); gap: clamp(35px, 5vw, 74px); align-items: center; min-height: 320px; }
#home .home-practice-copy h2 { margin-top: 13px; font-size: clamp(31px, 2.8vw, 42px); line-height: 1.22; font-weight: 750; letter-spacing: -.04em; }
#home .home-practice-copy > p:not(.home-eyebrow) { margin-top: 22px; color: #73809e; font-size: 17px; line-height: 1.65; }
#home .home-dark-button { display: inline-flex; align-items: center; justify-content: center; gap: 15px; min-height: 52px; margin-top: 28px; padding: 12px 24px; border-radius: 7px; background: #1d1b2c; color: #fff; font-size: 15px; font-weight: 650; white-space: nowrap; }
#home .home-dark-button:hover { background: #38335d; }
#home .home-practice-window { min-width: 0; padding: 14px; border: 1px solid #d6d7ef; border-radius: 12px; background: rgb(255 255 255 / .77); box-shadow: 0 23px 70px rgb(63 68 135 / .19); }
#home .home-practice-window-head { height: 35px; color: #25274e; font-size: 14px; font-weight: 700; }
#home .home-practice-window-head svg { display: inline-block; width: 16px; height: 16px; margin-right: 7px; color: #5148ab; vertical-align: -3px; }
#home .home-practice-window-body { display: grid; grid-template-columns: 1fr .82fr; gap: 14px; }
#home .home-practice-input,
#home .home-practice-output { position: relative; min-height: 226px; padding: 15px; border: 1px solid #ebedf7; border-radius: 7px; background: #fff; }
#home .home-practice-steps { display: flex; gap: 6px; white-space: nowrap; font-size: 11px; }
#home .home-practice-steps span { padding: 6px 8px; border-radius: 5px; background: #f4f4fa; color: #9da5b8; }
#home .home-practice-steps span:first-child { background: #eaeafe; color: #5148a9; }
#home .home-practice-input p { margin-top: 18px; color: #606c8e; font-size: 12px; line-height: 1.6; }
#home .home-practice-input small { position: absolute; right: 13px; bottom: 12px; color: #9ca5be; font-size: 11px; }
#home .home-practice-output strong { display: block; margin-bottom: 17px; color: #252b4b; font-size: 13px; }
#home .home-practice-output > span { display: block; height: 7px; margin-top: 8px; border-radius: 4px; background: #e1e3ee; }
#home .home-practice-output > span:nth-of-type(1) { width: 25%; } #home .home-practice-output > span:nth-of-type(2) { width: 76%; }
#home .home-practice-output > span:nth-of-type(3) { width: 93%; } #home .home-practice-output > span:nth-of-type(4) { width: 65%; }
#home .home-practice-output > span:nth-of-type(5) { width: 83%; } #home .home-practice-output > span:nth-of-type(6) { width: 54%; }
#home .home-practice-output > div { position: absolute; right: 12px; bottom: 12px; left: 12px; display: grid; place-items: center; height: 37px; border-radius: 5px; background: linear-gradient(90deg, #8990e9, #7156e8); color: #fff; font-size: 12px; font-weight: 650; }

#home .home-featured { padding: 61px 0 70px; background: linear-gradient(180deg, #090a14, #15111e 34%, #15111e); }
#home .home-course-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
#home .home-course-card { position: relative; display: flex; flex-direction: column; min-height: 200px; overflow: hidden; padding: 26px 25px 18px; border: 1px solid #41384e; border-radius: 8px; background: linear-gradient(135deg, #211c2b 62%, #292338); color: #f8f6fd; }
#home .home-course-card:hover { border-color: #907db5; box-shadow: 0 16px 35px rgb(3 2 10 / .26); }
#home .home-course-card h3 { position: relative; z-index: 1; font-size: 18px; font-weight: 700; }
#home .home-course-card p { position: relative; z-index: 1; margin-top: 11px; color: #c3bbd0; font-size: 14px; line-height: 1.55; }
#home .home-course-card > div { display: flex; align-items: center; gap: 14px; margin-top: auto; padding-top: 20px; }
#home .home-course-tag { padding: 5px 13px; border-radius: 5px; background: #3a3056; color: #e2d8ff; font-size: 12px; }
#home .home-course-tag-warm { background: #4c392c; color: #f4d5a8; }
#home .home-course-card small { color: #beb6cf; font-size: 12px; }
#home .home-course-card .home-card-arrow { right: 23px; bottom: 20px; color: #dfd4f1; }
#home .home-course-gem { position: absolute; top: -22px; right: -16px; width: 112px; height: 112px; opacity: .42; transform: rotate(17deg); clip-path: polygon(15% 0, 96% 16%, 82% 85%, 42% 100%, 0 48%); background: linear-gradient(145deg, #7566ad 0%, #b6a7e0 35%, #66528f 57%, #352b4e 82%); }
#home .home-course-card:nth-child(2) .home-course-gem { transform: rotate(-21deg); }
#home .home-course-card:nth-child(3) .home-course-gem { background: linear-gradient(145deg, #7d68ae, #b9a7e0 40%, #66518e 72%, #352a4c); }

#home .home-learning-flow { padding: 57px 0 66px; background: #f6f7fb; }
#home .home-flow-heading { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 30px; }
#home .home-flow-heading > p { max-width: 520px; margin: 0 0 2px; }
#home .home-flow-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; padding: 0; margin: 0; list-style: none; }
#home .home-flow-list li { position: relative; display: flex; align-items: center; gap: 16px; min-width: 0; }
#home .home-flow-list li:not(:last-child)::after { content: "→"; position: absolute; right: 8px; color: #989dec; font-size: 22px; }
#home .home-flow-list li > span { display: grid; place-items: center; flex: none; width: 50px; height: 50px; border: 1px solid #fff; border-radius: 50%; background: #ddddfa; color: #28325f; font-size: 20px; font-weight: 700; }
#home .home-flow-list strong { display: block; color: #273054; font-size: 16px; }
#home .home-flow-list small { display: block; margin-top: 4px; color: #8c94ad; font-size: 12px; }

#home .home-learning-path {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 1580px;
  background:
    radial-gradient(ellipse 72% 42% at 50% 42%, rgb(74 42 100 / .28), transparent 78%),
    radial-gradient(ellipse 50% 32% at 25% 78%, rgb(72 42 105 / .18), transparent 80%),
    #120f17;
  color: #f7f7fd;
  text-align: left;
  user-select: none;
  -webkit-user-select: none;
}
#home .home-learning-path::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}
:root.home-artwork-enabled #home .home-learning-path[data-artwork-requested="true"]::before {
  background: url("learning-path-cosmic-purple.png") center top / 100% 100% no-repeat;
}
#home .home-learning-path.is-scroll-animated::before {
  opacity: var(--home-path-static-opacity, 1);
  filter: brightness(.55);
  transition: opacity .2s linear;
}
#home .home-learning-path::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(180deg, #120f17 0%, rgb(18 15 23 / .72) 58px, transparent 220px),
    linear-gradient(90deg, #120f17 0%, transparent 12%, transparent 88%, #120f17 100%);
  pointer-events: none;
}
#home .home-path-scroll-overlay {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none;
}
#home .home-path-particles {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
#home .home-path-inner { position: relative; z-index: 2; width: min(1040px, calc(100% - 100px)); min-height: 1580px; margin-inline: auto; }
#home .home-path-heading { position: absolute; top: 58px; right: 0; left: 0; text-align: center; }
#home .home-path-heading > p:first-child { color: #ebeaf8; font-size: 14px; font-weight: 600; letter-spacing: .08em; }
#home .home-path-heading h2 { margin-top: 23px; color: #f7f7fd; font-size: clamp(34px, 4.2vw, 46px); font-weight: 750; line-height: 1.2; letter-spacing: .015em; }
#home .home-path-heading > p:last-child { margin-top: 14px; color: #e7e7f1; font-size: 16px; line-height: 1.65; }
#home .home-path-list {
  position: absolute;
  top: 21%;
  right: 0;
  bottom: 14%;
  left: 0;
  display: grid;
  grid-template-rows: repeat(6, minmax(0, 1fr));
  padding: 0;
  margin: 0;
  list-style: none;
}
#home .home-path-step { align-self: start; min-width: 0; text-shadow: 0 2px 12px #03050d; }
#home .home-learning-path.is-scroll-animated .home-path-step { opacity: 0; visibility: hidden; transition: opacity .32s ease; }
#home .home-learning-path.is-scroll-animated .home-path-step.is-reached { opacity: 1; visibility: visible; }
#home .home-path-step.is-left { width: 49%; padding-left: 16px; }
#home .home-path-step.is-right { width: 33%; margin-left: auto; margin-right: -40px; }
#home .home-path-number { display: flex; align-items: center; color: #d6b8f2; font-size: 39px; font-weight: 750; line-height: 1.05; white-space: nowrap; transition: color .22s ease, text-shadow .22s ease; }
#home .home-path-step.is-reached .home-path-number { color: #faf9ff; text-shadow: 0 0 10px rgb(214 184 242 / .35); }
#home .home-path-number::before,
#home .home-path-number::after { content: ""; display: block; flex: none; border-top: 2px dotted rgb(217 213 237 / .8); }
#home .home-path-step.is-left .home-path-number::before,
#home .home-path-step.is-right .home-path-number::after { display: none; }
#home .home-path-step.is-left .home-path-number::after { width: clamp(125px, 20vw, 235px); margin-left: 20px; }
#home .home-path-step.is-right .home-path-number { margin-left: -100px; }
#home .home-path-step.is-right .home-path-number::before { width: 85px; margin-right: 15px; }
#home .home-path-step h3 { margin-top: 7px; color: #faf9ff; font-size: clamp(18px, 1.68vw, 21px); font-weight: 700; line-height: 1.35; }
#home .home-path-step p { margin-top: 8px; color: #f0eef8; font-size: 16px; line-height: 1.55; }
#home .home-path-footer { position: absolute; right: 0; bottom: 38px; left: 0; display: flex; justify-content: center; padding-top: 28px; border-top: 1px solid rgb(226 219 247 / .28); }
#home .home-path-conclusion { max-width: 100%; color: #e9e5f3; font-size: clamp(17px, 1.5vw, 21px); font-weight: 600; line-height: 1.65; text-align: center; text-wrap: balance; }

#home .home-resources { padding: 59px 0 70px; border-top: 1px solid #302a3b; background: #17131f; }
#home .home-resource-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
#home .home-resource-grid a { position: relative; display: grid; grid-template-columns: 55px 1fr; column-gap: 14px; align-content: center; min-height: 139px; padding: 22px 20px; border: 1px solid #41394e; border-radius: 8px; background: #211c2b; color: #f8f6fd; box-shadow: 0 12px 35px rgb(3 2 10 / .13); }
#home .home-resource-grid a:hover { border-color: #907db5; box-shadow: 0 16px 35px rgb(3 2 10 / .24); }
#home .home-resource-icon { grid-row: span 2; display: grid; place-items: center; align-self: start; width: 54px; height: 54px; border-radius: 9px; background: #372d50; color: #d2c1ff; font-size: 25px; }
#home .home-resource-icon svg { display: block; width: 28px; height: 28px; }
#home .home-resource-grid strong { font-size: 16px; line-height: 1.3; }
#home .home-resource-grid small { margin-top: 9px; color: #c1b9cd; font-size: 12px; line-height: 1.5; }
#home .home-resource-grid .home-card-arrow { right: 17px; bottom: 14px; color: #ded2f0; font-size: 17px; }

#home .home-final-cta { position: relative; overflow: hidden; padding: 52px 0 54px; background: radial-gradient(ellipse at 50% 50%, #25202c, #15121c 72%); color: #f8f7fd; text-align: center; }
#home .home-final-cta::before,
#home .home-final-cta::after { content: ""; position: absolute; top: 29px; width: 115px; height: 138px; clip-path: polygon(50% 0, 100% 36%, 72% 100%, 0 68%, 10% 22%); opacity: .55; background: linear-gradient(115deg, #70569d, #393052 45%, #8d6bb8 60%, #201a35); }
#home .home-final-cta::before { left: 5%; transform: rotate(25deg); }
#home .home-final-cta::after { right: 7%; transform: rotate(-25deg) scale(.85); }
#home .home-final-cta .home-landing-shell { position: relative; z-index: 1; }
#home .home-final-cta .home-eyebrow { color: #b1a7c4; }
#home .home-final-cta h2 { margin-top: 9px; color: #fff; font-size: clamp(27px, 2.5vw, 37px); font-weight: 700; }
#home .home-final-cta p:not(.home-eyebrow) { margin-top: 9px; color: #bdb5c9; font-size: 14px; }
#home .home-final-button { min-width: 178px; height: 49px; margin-top: 23px; padding: 9px 19px; border: 1px solid #aba0c2; border-radius: 7px; background: rgb(24 20 32 / .75); color: #fff; font-size: 14px; font-weight: 650; cursor: pointer; }
#home .home-final-button:hover { background: #443852; }
#home .home-final-button span { margin-left: 12px; font-size: 20px; font-weight: 400; }
#home .home-footer { display: block; padding: 25px 0; border-top: 1px solid #34303b; background: #1a1720; color: #c4bdd0; }
#home .home-footer-layout { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
#home .home-footer-brand { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; flex: none; }
#home .home-footer-brand img { width: 120px; height: 38px; object-fit: contain; object-position: left center; filter: brightness(2.6) saturate(.8); }
#home .home-footer-brand small { font-size: 11px; }
#home .home-footer nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 21px; }
#home .home-footer nav a { color: #b4aebc; font-size: 12px; white-space: nowrap; }
#home .home-footer nav a:hover { color: #fff; }
#home .home-footer-layout > small { flex: none; color: #8f8998; font-size: 11px; }

@media (max-width: 1000px) {
  #home .home-landing-shell { width: calc(100% - 64px); }
  #home .home-goal-grid { gap: 14px; }
  #home .home-goal-card { padding: 24px 20px; }
  #home .home-goal-card h3 { font-size: 18px; }
  #home .home-goal-card p { font-size: 13px; }
  #home .home-course-grid { gap: 12px; }
  #home .home-course-card { padding-inline: 17px; }
  #home .home-resource-grid { gap: 12px; }
  #home .home-resource-grid a { grid-template-columns: 43px 1fr; column-gap: 10px; padding: 16px 13px; }
  #home .home-resource-icon { width: 40px; height: 40px; font-size: 19px; }
  #home .home-footer-layout { flex-wrap: wrap; }
}
@media (max-width: 767px) {
  #home .home-landing-shell { width: calc(100% - 40px); }
  #home .home-journey,
  #home .home-featured,
  #home .home-learning-flow,
  #home .home-resources { padding-block: 46px; }
  #home .home-section-heading-split,
  #home .home-flow-heading { align-items: flex-start; flex-direction: column; gap: 16px; }
  #home .home-section-heading { margin-bottom: 24px; }
  #home .home-section-heading h2,
  #home .home-flow-heading h2 { font-size: 29px; }
  #home .home-section-heading p:not(.home-eyebrow),
  #home .home-flow-heading > p { font-size: 14px; }
  #home .home-desktop-break { display: none; }
  #home .home-text-link { font-size: 13px; }
  #home .home-goal-grid,
  #home .home-course-grid { grid-template-columns: 1fr; gap: 13px; }
  #home .home-goal-card { min-height: 204px; padding: 22px 25px; }
  #home .home-goal-card h3 { font-size: 20px; }
  #home .home-goal-card p { font-size: 14px; }
  #home .home-practice-feature { padding: 49px 0; }
  #home .home-practice-layout { grid-template-columns: 1fr; gap: 32px; }
  #home .home-practice-copy h2 { font-size: 30px; }
  #home .home-practice-copy > p:not(.home-eyebrow) { font-size: 14px; }
  #home .home-practice-window { max-width: 600px; width: 100%; }
  #home .home-course-card { min-height: 175px; padding: 23px; }
  #home .home-course-card h3 { font-size: 17px; }
  #home .home-flow-heading { margin-bottom: 24px; }
  #home .home-flow-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 12px; }
  #home .home-flow-list li:not(:last-child)::after { display: none; }
  #home .home-flow-list li { gap: 10px; }
  #home .home-flow-list li > span { width: 42px; height: 42px; font-size: 16px; }
  #home .home-flow-list strong { font-size: 13px; }
  #home .home-flow-list small { font-size: 10px; }
  #home .home-resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #home .home-resource-grid a { min-height: 145px; }
  #home .home-resource-grid .home-card-arrow { bottom: 12px; }
  #home .home-final-cta::before { left: -55px; }
  #home .home-final-cta::after { right: -65px; }
  #home .home-final-cta h2 { font-size: 26px; }
  #home .home-footer-layout { flex-direction: column; align-items: flex-start; }
  #home .home-footer nav { justify-content: flex-start; gap: 12px 18px; }
}
@media (max-width: 420px) {
  #home .home-practice-window { padding: 9px; }
  #home .home-practice-window-body { gap: 7px; }
  #home .home-practice-input,
  #home .home-practice-output { min-height: 178px; padding: 8px; }
  #home .home-practice-steps { gap: 3px; font-size: 7px; }
  #home .home-practice-steps span { padding: 4px 3px; }
  #home .home-practice-input p { font-size: 9px; }
  #home .home-practice-output strong { font-size: 10px; }
  #home .home-practice-output > span { height: 5px; margin-top: 6px; }
  #home .home-practice-output > div { height: 29px; font-size: 9px; }
  #home .home-resource-grid { grid-template-columns: 1fr; }
  #home .home-resource-grid a { min-height: 112px; }
}
@media (max-width: 767px) {
  #home .home-learning-path { min-height: 0; padding: 54px 0 42px; }
  #home .home-learning-path::before { background-size: auto 100%; opacity: .4; }
  #home .home-learning-path.is-scroll-animated::before {
    opacity: var(--home-path-static-opacity, 1);
    filter: brightness(.45);
  }
  #home .home-path-scroll-overlay { display: none; }
  #home .home-learning-path::after { background: linear-gradient(180deg, #120f17 0%, rgb(18 15 23 / .72) 58px, transparent 220px), linear-gradient(90deg, rgb(18 15 23 / .82), rgb(18 15 23 / .62)); }
  #home .home-path-inner { width: calc(100% - 40px); min-height: 0; }
  #home .home-path-heading { position: relative; top: auto; }
  #home .home-path-heading > p:first-child { font-size: 12px; }
  #home .home-path-heading h2 { margin-top: 17px; font-size: clamp(28px, 7.5vw, 37px); }
  #home .home-path-heading > p:last-child { margin-top: 16px; font-size: 14px; }
  #home .home-path-list { position: relative; inset: auto; display: grid; gap: 39px; margin-top: 75px; padding-left: 49px; }
  #home .home-path-list::before { content: ""; position: absolute; top: 18px; bottom: 17px; left: 17px; width: 1px; background: linear-gradient(#896abd, #a855f7 51%, #896abd); opacity: .12; }
  #home .home-learning-path.is-scroll-animated .home-path-list::before { opacity: 0; }
  #home .home-path-list::after { content: ""; position: absolute; top: 18px; bottom: 17px; left: 17px; width: 1px; background: linear-gradient(#896abd, #a855f7 51%, #896abd); opacity: .85; box-shadow: 0 0 5px rgb(214 184 242 / .28); transform: scaleY(var(--home-path-scroll-progress, 0)); transform-origin: top; pointer-events: none; }
  #home .home-path-step,
  #home .home-path-step.is-left,
  #home .home-path-step.is-right { position: relative; width: auto; min-height: 135px; padding: 0; margin: 0; }
  #home .home-path-number,
  #home .home-path-step.is-right .home-path-number { margin: 0; font-size: 29px; }
  #home .home-path-number::before,
  #home .home-path-number::after { display: none; }
  #home .home-path-step h3 { margin-top: 7px; font-size: 18px; }
  #home .home-path-step p { margin-top: 7px; font-size: 14px; line-height: 1.58; }
  #home .home-path-footer { position: relative; inset: auto; margin-top: 38px; padding-top: 29px; }
}
@media (prefers-reduced-motion: reduce) {
  #home .home-path-scroll-overlay { display: none; }
  #home .home-learning-path.is-scroll-animated::before { opacity: 1; clip-path: none; }
  #home .home-learning-path.is-scroll-animated .home-path-step { opacity: 1; transition: none; }
  #home .home-path-list::before { opacity: .85; }
  #home .home-path-list::after { display: none; }
  #home .home-path-number,
  #home .home-goal-card,
  #home .home-course-card,
  #home .home-resource-grid a { transition: none; }
}
@media (max-width: 767px) and (prefers-reduced-motion: reduce) {
  #home .home-learning-path.is-scroll-animated::before { opacity: .4; }
  #home .home-learning-path.is-scroll-animated .home-path-list::before { opacity: .85; }
}

/* Keep the artwork visible until the particle path has actually started drawing. */
#home .home-learning-path[data-particle-ready="true"]::before { clip-path: none; }
@media (max-width: 767px) {
  #home .home-learning-path[data-particle-ready="true"] .home-path-list::before,
  #home .home-learning-path[data-particle-ready="true"] .home-path-list::after { display: none; }
}
