/* CurioSpark v8.49 - public visual consistency, portrait delivery, and linked resource cards. */

/* Programs: one intentional card stock with aligned content and action zones. */
body.programs-marketplace-page .program-marketplace-grid {
  align-items: stretch !important;
  grid-auto-rows: 1fr;
}
body.programs-marketplace-page .v849-course-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 100%;
}
body.programs-marketplace-page .v849-course-card .program-card-topline {
  min-height: 2.8rem;
}
body.programs-marketplace-page .v849-course-card .program-card-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-width: 0;
}
body.programs-marketplace-page .v849-course-card .program-card-heading-row {
  min-height: 7.25rem;
  align-items: flex-start;
}
body.programs-marketplace-page .v849-course-card .program-card-title-block {
  min-width: 0;
  flex: 1 1 auto;
}
body.programs-marketplace-page .v849-course-card .program-card-title-block h2 {
  overflow-wrap: anywhere;
}
body.programs-marketplace-page .v849-course-card .program-card-description-zone {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 15.75rem;
}
body.programs-marketplace-page .v849-course-card .program-description-group {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
}
body.programs-marketplace-page .v849-course-card .program-details-toggle {
  align-self: flex-start;
  margin-top: auto;
  padding-top: .55rem;
}
body.programs-marketplace-page .v849-course-card .program-card-footer {
  margin-top: auto;
}
body.programs-marketplace-page .v849-course-card .program-meta {
  min-height: 6.05rem;
  align-content: flex-start;
  margin-top: .85rem;
}
body.programs-marketplace-page .v849-course-card .program-card-actions {
  min-height: 4.15rem;
  align-items: flex-end;
}
body.programs-marketplace-page .v849-course-card .program-card-actions > .button {
  min-width: min(100%, 14.25rem);
  justify-content: center;
  text-align: center;
}
body.programs-marketplace-page .v849-course-card .program-setup-note {
  display: block;
  max-width: 32rem;
  line-height: 1.45;
}
body.programs-marketplace-page .v849-course-card .program-card-visual {
  width: 4.45rem;
  height: 4.45rem;
  min-width: 4.45rem;
  display: grid;
  place-items: center;
  border-radius: 1.2rem;
  overflow: hidden;
}
body.programs-marketplace-page .v849-course-card .program-card-visual img {
  width: 3.3rem;
  height: 3.3rem;
  object-fit: contain;
  display: block;
}
body.programs-marketplace-page .program-card-visual--reading { background: linear-gradient(145deg, #fff8d8, #f6eaff); }
body.programs-marketplace-page .program-card-visual--early-literacy { background: linear-gradient(145deg, #fff4be, #e9f9f1); }
body.programs-marketplace-page .program-card-visual--adventure { background: linear-gradient(145deg, #f4e9ff, #fff4be); }
body.programs-marketplace-page .program-card-visual--math { background: linear-gradient(145deg, #eee4f8, #f7f1ff); }
body.programs-marketplace-page .program-card-visual--science { background: linear-gradient(145deg, #e6fbf2, #fff7cc); }
body.programs-marketplace-page .program-card-visual--nature { background: linear-gradient(145deg, #e5f8e7, #f6f1d6); }
body.programs-marketplace-page .program-card-visual--creative { background: linear-gradient(145deg, #fff0df, #f2e6fb); }
body.programs-marketplace-page .program-card-visual--world { background: linear-gradient(145deg, #e5f4ff, #e8f8ec); }
body.programs-marketplace-page .program-card-visual--community { background: linear-gradient(145deg, #fff1e7, #f5e9ff); }
body.programs-marketplace-page .program-card-visual--wonder { background: linear-gradient(145deg, #fff6bd, #efe5f8); }

/* Meet the Team: preserve real source detail and avoid GPU/filter softening. */
.team-placard-grid .team-picture-v849 {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.team-placard-grid .team-picture-v849 img,
.team-placard-grid .team-photo-stage img[data-team-portrait-v849] {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: none !important;
  transform: none !important;
  backface-visibility: visible !important;
  will-change: auto !important;
  image-rendering: auto !important;
}
.public-visual-storytelling .team-card-placard:hover .team-picture-v849 img {
  transform: none !important;
}
.team-placard-grid img[data-team-portrait-v849="emily"] { object-position: center 42% !important; }
.team-placard-grid img[data-team-portrait-v849="alex"] { object-position: center 44% !important; }

/* Home resources: the full card is an accessible link with a clear visual affordance. */
.category-image-card.category-image-card-link {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.category-image-card.category-image-card-link:hover {
  transform: translateY(-3px);
  border-color: rgba(95,37,121,.28);
  box-shadow: 0 20px 42px rgba(69,25,91,.14);
}
.category-image-card.category-image-card-link:focus-visible {
  outline: 3px solid #5f2579;
  outline-offset: 4px;
}
.category-image-card-link .category-card-link-label {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin-top: .72rem;
  color: #5f2579;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .02em;
  text-decoration: underline;
  text-underline-offset: .18em;
}
.category-image-card-link .category-card-link-label::after {
  content: ' >';
  text-decoration: none;
}

@media (max-width: 760px) {
  body.programs-marketplace-page .v849-course-card .program-card-heading-row,
  body.programs-marketplace-page .v849-course-card .program-card-description-zone,
  body.programs-marketplace-page .v849-course-card .program-meta,
  body.programs-marketplace-page .v849-course-card .program-card-actions {
    min-height: 0;
  }
  body.programs-marketplace-page .v849-course-card .program-card-visual {
    width: 3.75rem;
    height: 3.75rem;
    min-width: 3.75rem;
  }
  body.programs-marketplace-page .v849-course-card .program-card-visual img {
    width: 2.8rem;
    height: 2.8rem;
  }
  body.programs-marketplace-page .v849-course-card .program-card-actions > .button {
    width: 100%;
    min-width: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .category-image-card.category-image-card-link { transition: none; }
  .category-image-card.category-image-card-link:hover { transform: none; }
}
