/* Homepage emphasis: stronger foreground surfaces, quiet shared canvas. */
#home-page {
  --aira-page-gradient:
    radial-gradient(circle at 8% 16%, rgba(77, 205, 222, .5) 0%, transparent 36%),
    radial-gradient(circle at 92% 20%, rgba(250, 210, 70, .58) 0%, transparent 39%),
    linear-gradient(112deg, #afe0f2 0%, #d4eee5 42%, #f5edb2 70%, #f6d96f 100%);
  --home-section-space: clamp(58px, 6.4vw, 88px);
}
#home-page > .site-shell > main { background: var(--aira-page-gradient); }
#home-page .hero {
  background:
    radial-gradient(circle at 7% 18%, rgba(80, 202, 221, .5) 0%, transparent 38%),
    radial-gradient(circle at 96% 18%, rgba(249, 211, 72, .62) 0%, transparent 42%),
    linear-gradient(112deg, #b6e3f3 0%, #d9eee5 48%, #f7df83 100%);
}
#home-page .site-header { background: #ffffff !important; }
@media (min-width: 801px) {
  #home-page .site-header { gap: clamp(16px, 2vw, 32px); }
  #home-page .site-header .brand,
  #home-page .site-header .header-actions { flex-shrink: 0; }
  #home-page .site-header .nav-links {
    flex: 1; display: flex; align-items: center; justify-content: center;
    margin: 0; gap: clamp(10px, 1.2vw, 24px);
  }
  #home-page .nav-links a {
    display: inline-flex; align-items: center; justify-content: center;
    min-height: 44px; line-height: 1.25; white-space: nowrap;
  }
}
#home-page :is(.audience-card, .program-card, .feature-list > article) {
  box-shadow: 0 10px 24px rgba(36, 70, 56, .12);
}
#home-page :is(.audience-card, .program-card, .feature-list > article):nth-child(2) {
  background: #ddd7f0 !important;
  border-color: #b8add8 !important;
}
#home-page :is(.audience-card, .program-card, .feature-list > article):nth-child(3) {
  background: #f7d6df !important;
  border-color: #d9aab8 !important;
}
#home-page .audience-card:first-child,
#home-page .feature-list > article:first-child,
#home-page .program-card:first-child {
  background: #c9e5d5 !important;
  border-color: #8fbea8 !important;
}
#home-page :is(.audience-section, .feature-band, .programs) {
  padding-top: var(--home-section-space);
  padding-bottom: var(--home-section-space);
}
#home-page .audience-grid,
#home-page .program-grid {
  align-items: stretch;
  margin-top: clamp(34px, 4vw, 52px);
}
#home-page .audience-card,
#home-page .program-card {
  height: 100%;
  display: flex;
  flex-direction: column;
}
#home-page .audience-card h3 { margin: 0 0 18px; }
#home-page .audience-card p { margin: 0 0 24px; }
#home-page .audience-card .card-action { margin-top: auto; }
#home-page .audience-card .audience-illustration {
  width: calc(100% + 48px);
  height: clamp(210px, 24vw, 300px);
  margin: -24px -24px 30px;
  object-fit: cover;
  object-position: center 34%;
  border-radius: 20px 20px 0 0;
  background: transparent;
  filter: saturate(.9) contrast(.98);
}
#home-page .feature-band {
  grid-template-columns: 1fr;
  gap: clamp(34px, 4vw, 52px);
}
#home-page .feature-heading { text-align: center; }
#home-page .feature-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
}
#home-page .feature-list > article {
  min-height: 210px;
  align-content: start;
}
#home-page .feature-list > article > span { color: #244638 !important; }
#home-page .hero .button {
  background: #244638 !important;
  color: #fff6df !important;
  border-color: #244638 !important;
}
#home-page .hero .button span { color: inherit !important; }
#home-page .hero .button:is(:hover, :focus-visible) {
  background: #17362b !important;
  color: #fff6df !important;
}
#home-page .quote-section {
  background: #244638 !important;
  color: #fff6df !important;
}
#home-page .quote-section > :is(p, h2, blockquote) { color: #fff6df !important; }
#home-page .quote-section .text-link {
  background: #fff6df !important;
  color: #244638 !important;
}
#home-page .quote-section .text-link:is(:hover, :focus-visible) {
  background: #b8dfce !important;
  color: #17362b !important;
}
#home-page .quote-section .text-link span { color: inherit !important; }
#home-page .final-cta {
  background: linear-gradient(115deg, #fbe4ea 0%, #f7d5df 55%, #f2c9d5 100%) !important;
  border-block: 1px solid #dcaeba;
  color: #244638 !important;
}

#home-page .home-immediate-support {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 46px;
  padding: 9px clamp(20px, 5vw, 72px);
  border-block: 1px solid #dfb5bf;
  background: #f8e1e7;
  color: #244638;
  font-size: 12px;
  line-height: 1.35;
  text-align: center;
}
#home-page .home-immediate-support strong { font-weight: 600; }
#home-page .home-immediate-support a {
  flex: 0 0 auto;
  border-radius: 999px;
  background: #244638;
  color: #fff6df;
  padding: 7px 13px;
  font-weight: 700;
  text-decoration: none;
}
#home-page .home-immediate-support a:is(:hover, :focus-visible) { background: #17362b; }

@media (max-width: 800px) {
  #home-page { --home-section-space: clamp(42px, 12vw, 64px); }
  #home-page .hero { background: var(--aira-page-gradient); }
  #home-page .home-immediate-support { justify-content: flex-start; flex-wrap: wrap; text-align: left; }
  #home-page .audience-card .audience-illustration {
    width: calc(100% + 56px);
    height: clamp(220px, 64vw, 340px);
    margin: -28px -28px 28px;
  }
  #home-page .feature-list { grid-template-columns: 1fr; }
  #home-page .feature-list > article { min-height: 0; }
}
