.fundraising-summary,
.fundraising-story,
.fundraising-goals,
.festa-enhancement,
.supporter-recognition {
  margin-top: 36px;
  padding: clamp(22px, 4vw, 36px);
  border: 1px solid rgba(255, 210, 28, 0.24);
  background: #14130f;
}

.fundraising-summary__heading,
.fundraising-summary__metrics,
.fundraising-goals__list,
.festa-enhancement__compare {
  display: grid;
  gap: 14px;
}

.fundraising-summary__heading {
  grid-template-columns: 1fr auto;
  align-items: end;
}

.fundraising-summary__heading h3,
.fundraising-story h3,
.fundraising-goals h3,
.festa-enhancement h3,
.supporter-recognition h3 { margin: 0; }

.fundraising-summary__heading > p {
  margin: 0;
  color: var(--f60-muted, #c6b995);
  font-size: .8rem;
}

.fundraising-summary__metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 22px;
}

.fundraising-summary__metrics p {
  min-width: 0;
  margin: 0;
  padding: 16px;
  border-left: 3px solid var(--f60-gold, #ffd21c);
  background: rgba(255, 255, 255, .035);
}

.fundraising-summary__metrics span,
.fundraising-summary__metrics strong { display: block; }
.fundraising-summary__metrics span { color: var(--f60-muted, #c6b995); font-size: .78rem; }
.fundraising-summary__metrics strong { margin-top: 5px; color: var(--f60-cream, #fff4d0); font-size: clamp(1.15rem, 2.4vw, 1.65rem); }

.fundraising-progress { margin-top: 26px; }
.fundraising-progress__bar { height: 16px; overflow: hidden; border: 1px solid rgba(255, 210, 28, .42); background: #080806; }
.fundraising-progress__bar span { display: block; width: 0; height: 100%; background: #ffd21c; transition: width .5s ease; }
.fundraising-progress__milestones { position: relative; height: 48px; margin: 6px 0 0; border-top: 1px solid rgba(255, 255, 255, .14); }
.fundraising-progress__milestones span { position: absolute; left: var(--position); top: 5px; translate: -50% 0; color: var(--f60-muted, #c6b995); font-size: .68rem; white-space: nowrap; }
.fundraising-progress__milestones span::before { content: ""; position: absolute; left: 50%; top: -12px; width: 1px; height: 8px; background: rgba(255, 210, 28, .7); }
.fundraising-progress__milestones span:nth-child(4) { top: 21px; }
.fundraising-progress__milestones span:nth-child(4)::before { top: -28px; height: 24px; }
.fundraising-progress > p { margin: 6px 0 0; color: var(--f60-cream, #fff4d0); font-weight: 800; }
.fundraising-summary__plans { margin: 16px 0 0; }

.movement-summary__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 22px;
}

.movement-summary__panel {
  min-width: 0;
  padding: clamp(18px, 3vw, 26px);
  border: 1px solid rgba(255, 210, 28, .2);
  background: rgba(255, 255, 255, .025);
}

.movement-summary__panel--reunion { border-top: 4px solid #fff4d0; }
.movement-summary__panel--support { border-top: 4px solid var(--f60-gold, #ffd21c); }
.movement-summary__panel h4 { margin: 3px 0 0; color: var(--f60-cream, #fff4d0); font-size: clamp(1.05rem, 2vw, 1.35rem); }
.movement-summary__label { margin: 0; color: var(--f60-gold, #ffd21c); font-size: .7rem; font-weight: 800; letter-spacing: .08em; }
.movement-summary__panel .fundraising-summary__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 16px; }
.movement-summary__decades,
.movement-summary__status,
.movement-summary__panel .fundraising-summary__plans { color: var(--f60-muted, #c6b995); font-size: .84rem; line-height: 1.7; }
.movement-summary__decades { min-height: 2.9em; margin: 16px 0 0; }
.movement-summary__status { margin: 8px 0 0; color: var(--f60-cream, #fff4d0); font-weight: 800; }

.attendance-progress {
  height: 12px;
  margin-top: 18px;
  overflow: hidden;
  border: 1px solid rgba(255, 244, 208, .36);
  background: #080806;
}

.attendance-progress span {
  display: block;
  width: 0;
  height: 100%;
  background: #fff4d0;
  transition: width .5s ease;
}

.home-movement-story {
  margin-top: 18px;
  padding: clamp(18px, 3vw, 26px);
  border-left: 4px solid var(--f60-gold, #ffd21c);
  background: rgba(255, 210, 28, .045);
}

.home-movement-story p { margin: 0; color: var(--f60-muted, #c6b995); line-height: 1.85; }
.home-movement-story p + p { margin-top: 8px; }
.home-movement-story strong { color: var(--f60-cream, #fff4d0); }
.home-movement-story a { display: inline-block; margin-top: 12px; color: var(--f60-gold, #ffd21c); font-weight: 800; }

.fundraising-story p { margin: 14px 0 0; }
.fundraising-story strong { color: var(--f60-gold, #ffd21c); }
.fundraising-story__purpose { display: grid; gap: 8px; margin: 18px 0 0; padding-left: 1.25rem; }
.fundraising-story__purpose li { color: var(--f60-cream, #fff4d0); }

.fundraising-goals__list { grid-template-columns: repeat(5, minmax(0, 1fr)); padding: 0; list-style: none; }
.fundraising-goals__list li { padding: 16px; border-top: 3px solid var(--f60-gold, #ffd21c); background: rgba(255, 255, 255, .035); }
.fundraising-goals__list strong,
.fundraising-goals__list span,
.fundraising-goals__list small { display: block; }
.fundraising-goals__list strong { color: var(--f60-cream, #fff4d0); }
.fundraising-goals__list span { margin-top: 8px; color: var(--f60-muted, #c6b995); font-size: .8rem; }
.fundraising-goals__list small { margin-top: 8px; color: var(--f60-muted, #c6b995); font-size: .72rem; }

.festa-enhancement__compare { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.festa-enhancement__compare article { padding: 20px; border: 1px solid rgba(255, 255, 255, .12); }
.festa-enhancement__compare span { color: var(--f60-gold, #ffd21c); font-weight: 800; font-size: .75rem; text-transform: uppercase; }
.festa-enhancement__compare h4 { margin: 8px 0; color: var(--f60-cream, #fff4d0); }
.festa-enhancement__compare p { margin: 0; }

.supporter-recognition__tiers { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 20px 0; }
.supporter-recognition__tiers span { min-height: 48px; display: grid; place-items: center; border: 1px solid currentColor; font-weight: 800; }
.supporter-recognition__tiers .is-platinum { color: #e7f4ff; background: #303942; }
.supporter-recognition__tiers .is-gold { color: #ffe77b; background: #4a3900; }
.supporter-recognition__tiers .is-silver { color: #eff1f4; background: #44484e; }
.supporter-recognition__tiers .is-bronze { color: #f0b48f; background: #4b2717; }

.public-supporter-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 20px;
}
.public-supporter-list[hidden] { display: none; }

.public-supporter-list section {
  padding: 16px;
  border: 1px solid rgba(255, 207, 49, 0.28);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.03);
}

.public-supporter-list h4,
.public-supporter-list ul { margin: 0; }
.public-supporter-list ul { padding: 10px 0 0; list-style: none; }
.public-supporter-list li { display: grid; gap: 3px; padding: 7px 0; }
.public-supporter-list li + li { border-top: 1px solid rgba(255, 255, 255, 0.08); }
.public-supporter-list span { color: var(--f60-muted, #d2c9ad); font-size: 0.88rem; }

@media (max-width: 820px) {
  .movement-summary__grid { grid-template-columns: 1fr; }
  .fundraising-summary__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fundraising-goals__list { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }
  .fundraising-goals__list li { flex: 0 0 min(78vw, 270px); scroll-snap-align: start; }
}

@media (max-width: 560px) {
  .public-supporter-list { grid-template-columns: 1fr; }
  .fundraising-summary__heading { grid-template-columns: 1fr; }
  .fundraising-summary__metrics,
  .movement-summary__panel .fundraising-summary__metrics,
  .festa-enhancement__compare { grid-template-columns: 1fr; }
  .supporter-recognition__tiers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fundraising-progress__milestones span { font-size: .6rem; }
}
