/* Shared card proportions, based on the sponsor benefit cards. */
/* Compact links between workshop sponsorship and its FAQ section. */
.financial-page .financial-plan .sponsorship-resource-link,
.faq-page .sponsorship-resource-link {
  margin: 24px 0 0;
  font-size: .9375rem;
  line-height: 1.7;
  text-align: center;
  color: var(--navy);
}
.sponsorship-resource-link a {
  color: var(--navy);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.sponsorship-resource-link a:hover { text-decoration-thickness: 2px; }
.sponsorship-resource-link a:focus-visible {
  outline: 3px solid var(--gold);
  outline-offset: 4px;
}
.faq-page #sponsoring { scroll-margin-top: 130px; }
@media (max-width: 700px) {
  .faq-page #sponsoring { scroll-margin-top: 104px; }
}

.intensive-page .intensive-topic-card,
.program-page .program-card,
.financial-page .financial-benefit-card {
  min-width: 0;
  padding: 28px 32px;
  border-radius: 14px;
  border-color: rgba(var(--navy-rgb), .13);
  box-shadow: 0 5px 16px rgba(var(--navy-rgb), .055);
}
.intensive-page .intensive-topic-card h3,
.program-page .program-card h3,
.financial-page .financial-benefit-card h3 {
  margin-bottom: 14px;
  font-size: 1.5rem;
  line-height: 1.35;
}
.intensive-page .intensive-topic-card .card-standard-icon,
.program-page .program-card .card-standard-icon,
.financial-page .financial-benefit-card .card-standard-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 64px;
  width: 72px;
  height: 64px;
  margin: 0 auto 16px;
  font-size: 3.25rem;
  line-height: 1;
}
.intensive-page .workshop-four-steps,
.financial-page .workshop-four-steps { gap: 24px; }
.intensive-page .workshop-four-steps > .system-card,
.financial-page .workshop-four-steps > .system-card { container-type: inline-size; }
.intensive-page .workshop-four-steps .workshop-shared-icon,
.financial-page .workshop-four-steps .workshop-shared-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 80px;
  width: 84px;
  height: 80px;
  margin: 0 auto 12px;
}
.workshop-shared-icon img { display: block; width: 76px; height: 76px; }
.workshop-shared-icon--leads img { width: 78px; height: 78px; }
.workshop-shared-icon--sales img { width: 82px; height: 82px; }
.intensive-page .workshop-four-steps > :first-child .workshop-shared-icon,
.financial-page .workshop-four-steps > :first-child .workshop-shared-icon {
  flex-basis: 68px;
  width: 68px;
  height: 68px;
}
.workshop-four-steps > :first-child .workshop-shared-icon img { width: 64px; height: 64px; }
.intensive-page .workshop-four-steps h3.workshop-balanced-heading,
.financial-page .workshop-four-steps h3.workshop-balanced-heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 2.6em;
  width: 100%;
  margin: 0 0 14px;
  font-size: 1.5rem;
  font-size: clamp(1.125rem, 7.5cqi, 1.5rem);
  line-height: 1.3;
}
.workshop-balanced-heading > span { display: block; max-width: 100%; }

/* Align each row to its actual longest title rather than a fixed blank spacer. */
@media (min-width: 1001px) {
  @supports (grid-template-rows: subgrid) {
    .aligned-card-grid > .system-card {
      display: grid;
      grid-template-rows: subgrid;
      grid-row: span 3;
      row-gap: 0;
      align-items: start;
      justify-items: center;
    }
    .aligned-card-grid > .system-card h3 {
      min-height: 0;
      align-self: center;
    }
  }
}

/* A stacked card should use its content height, without desktop title spacers. */
@media (max-width: 1000px) {
  .intensive-page .intensive-topic-grid,
  .financial-page .financial-benefit-grid,
  .program-page .program-grid {
    width: 100%;
    max-width: 580px;
    margin-inline: auto;
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
  .intensive-page .intensive-topic-card,
  .program-page .program-card,
  .financial-page .financial-benefit-card { padding: 28px 24px; }
  .intensive-page .intensive-topic-card h3,
  .program-page .program-card h3,
  .financial-page .financial-benefit-card h3 { min-height: 0; }
}

/* Match the site's dark mountain closing panels on the remaining CTA sections. */
.faq-page .faq-cta,
.financial-page .financial-cta:not(.messaging-event-details) {
  padding-block: 56px;
  border-top: 1px solid rgba(var(--gold-rgb), .45);
  background:
    linear-gradient(90deg, rgba(var(--header-navy-rgb), .94), rgba(var(--header-navy-rgb), .76)),
    var(--header-navy) url("assets/hero-mountain-gold-road.png") center bottom / cover no-repeat;
  color: var(--white);
}
.faq-page .faq-cta h2,
.financial-page .financial-cta:not(.messaging-event-details) h2 { color: var(--gold); }
.financial-page .financial-cta:not(.messaging-event-details) .financial-eyebrow { color: var(--gold); }
.faq-page .faq-cta p,
.financial-page .financial-cta:not(.messaging-event-details) p:not(.financial-eyebrow) { color: var(--white); }
@media (max-width: 760px) {
  .faq-page .faq-cta,
  .financial-page .financial-cta:not(.messaging-event-details) { padding-block: 40px; }
}
