.extended-life-skills-app {
  min-height: 100vh;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--course-soft, #eef4ff) 82%, white), rgba(250, 252, 253, 0) 440px),
    #fafbfd;
}

.extended-life-home-card,
.extended-life-theme .psychology-hero {
  border-color: color-mix(in srgb, var(--course) 28%, white);
  background: color-mix(in srgb, var(--course-soft) 72%, white);
  box-shadow: 0 16px 42px color-mix(in srgb, var(--course) 12%, transparent);
}

.extended-life-home-card .psychology-kicker,
.extended-life-home-card .psychology-home-progress strong,
.extended-life-theme .psychology-kicker,
.extended-life-theme .psychology-hero-progress strong,
.extended-life-theme .psychology-brand {
  color: color-mix(in srgb, var(--course) 82%, #18202c);
}

.extended-life-home-card .psychology-home-skills span,
.extended-life-theme .psychology-grade-pill {
  border-color: color-mix(in srgb, var(--course) 24%, white);
  color: color-mix(in srgb, var(--course) 72%, #283443);
}

.extended-life-home-card .psychology-home-progress > span,
.extended-life-theme .psychology-hero-progress > span {
  background: color-mix(in srgb, var(--course) 16%, white);
}

.extended-life-home-card .psychology-home-progress i,
.extended-life-theme .psychology-hero-progress i,
.extended-life-home-card .psychology-home-cta,
.extended-life-theme .psychology-primary,
.extended-life-theme .psychology-step-progress i {
  background: var(--course);
  color: #fff;
}

.extended-life-home-card .psychology-home-cta:hover,
.extended-life-home-card .psychology-home-cta:focus-visible,
.extended-life-theme .psychology-primary:hover,
.extended-life-theme .psychology-primary:focus-visible {
  background: color-mix(in srgb, var(--course) 78%, #101827);
  color: #fff;
  box-shadow: 0 12px 24px color-mix(in srgb, var(--course) 25%, transparent);
}

.extended-life-theme .psychology-back-link:hover,
.extended-life-theme .psychology-back-link:focus-visible {
  color: color-mix(in srgb, var(--course) 82%, #18202c);
  outline-color: color-mix(in srgb, var(--course) 28%, white);
}

.extended-life-section-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.extended-life-home-art,
.extended-life-hero-art {
  position: relative;
  min-height: 320px;
  overflow: hidden;
  background:
    radial-gradient(circle at 16% 20%, rgba(255, 216, 102, 0.6) 0 10%, transparent 10.5%),
    radial-gradient(circle at 85% 78%, color-mix(in srgb, var(--course) 22%, transparent) 0 17%, transparent 17.5%),
    linear-gradient(145deg, color-mix(in srgb, var(--course-soft) 74%, white), #fff8d9);
}

.extended-life-hero-art {
  min-height: 500px;
  display: grid;
  place-items: center;
}

.extended-life-art {
  position: relative;
  width: min(92%, 520px);
  aspect-ratio: 1.08;
  margin: auto;
}

.extended-life-art--small {
  width: min(92%, 390px);
}

.extended-life-mascot,
.extended-life-symbol,
.extended-life-chip,
.extended-life-star {
  position: absolute;
  display: grid;
  place-items: center;
  filter: drop-shadow(0 12px 16px rgba(42, 55, 85, 0.16));
}

.extended-life-mascot {
  left: 14%;
  bottom: 16%;
  width: 150px;
  height: 150px;
  border: 8px solid rgba(255, 255, 255, 0.94);
  border-radius: 42%;
  background: #ffd866;
  font-size: 90px;
  transform: rotate(-5deg);
}

.extended-life-symbol {
  right: 12%;
  bottom: 15%;
  width: 128px;
  height: 118px;
  border: 7px solid rgba(255, 255, 255, 0.94);
  border-radius: 30px;
  background: var(--course);
  font-size: 68px;
  transform: rotate(5deg);
}

.extended-life-chip {
  max-width: 180px;
  min-height: 38px;
  padding: 8px 14px;
  border: 3px solid rgba(255, 255, 255, 0.92);
  border-radius: 999px;
  background: #fff;
  color: #29354a;
  font-size: 13px;
  font-weight: 800;
  text-align: center;
}

.extended-life-chip.is-one {
  top: 13%;
  left: 8%;
  transform: rotate(-5deg);
}

.extended-life-chip.is-two {
  top: 7%;
  right: 7%;
  transform: rotate(5deg);
}

.extended-life-chip.is-three {
  top: 38%;
  right: 1%;
  transform: rotate(3deg);
}

.extended-life-star {
  left: 48%;
  top: 36%;
  font-size: 42px;
  transform: rotate(10deg);
}

.extended-life-family-note {
  border-color: color-mix(in srgb, var(--course) 22%, white);
  background: color-mix(in srgb, var(--course-soft) 72%, white);
}

@media (max-width: 920px) {
  .extended-life-section-grid {
    grid-template-columns: 1fr;
  }

  .extended-life-hero-art {
    min-height: 380px;
  }
}

@media (max-width: 700px) {
  .extended-life-home-art,
  .extended-life-hero-art {
    min-height: 300px;
  }

  .extended-life-mascot {
    width: 112px;
    height: 112px;
    border-width: 6px;
    font-size: 66px;
  }

  .extended-life-symbol {
    width: 98px;
    height: 92px;
    border-width: 5px;
    font-size: 52px;
  }

  .extended-life-chip {
    max-width: 132px;
    padding: 6px 10px;
    font-size: 11px;
  }
}
