Reflection Beam 1.0 501B A23B – Non Profit Charity

via Nebius · Generated

  • AIMAC Debt 6.51
  • Cost $0.015
  • Total Violations 15
  • HTML Size 44 KB
  • Em Dashes 1

Screenshot

View Reflection Beam 1.0 501B A23B Non Profit Charity page View Live Page

Accessibility Issues Found

15 Serious

  • aria-prohibited-attr serious 1 instance

    Elements must only use permitted ARIA attributes

    Example HTML <div class="progress-bar" aria-label="Donation progress"> <div class="progress-fill" id="progressFill" style="width: 65.35%;"></div> ...
  • color-contrast serious 14 instances

    Elements must meet minimum color contrast ratio thresholds

    Example HTML <span class="eyebrow">About Lumen Hope</span>

Artifacts

View Generated HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Lumen Hope Foundation — Restoring Dignity Through Measurable Impact</title>
<meta name="description" content="Lumen Hope Foundation partners with community-led organizations to fund, strengthen, and scale solutions that restore dignity through measurable impact.">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap" rel="stylesheet">
<style>
:root {
  --color-bg: #f7f5f0;
  --color-surface: #ffffff;
  --color-ink: #1f2933;
  --color-muted: #52606d;
  --color-primary: #0f4c5c;
  --color-primary-dark: #0a3540;
  --color-accent: #d98e04;
  --color-accent-dark: #b87500;
  --color-success: #2f7d4a;
  --color-border: #e2ddd3;
  --shadow-sm: 0 2px 8px rgba(15, 76, 92, 0.08);
  --shadow-md: 0 12px 32px rgba(15, 76, 92, 0.12);
  --radius: 14px;
  --radius-sm: 10px;
  --max-width: 1240px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--color-ink);
  background: var(--color-bg);
  line-height: 1.6;
}
img { max-width: 100%; display: block; }
a { color: var(--color-primary); text-decoration: none; }
a:hover { text-decoration: underline; }
.container { width: min(var(--max-width), calc(100% - 2rem)); margin: 0 auto; }
.section { padding: 5rem 0; }
.section-alt { background: var(--color-surface); }
.eyebrow {
  display: inline-block;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-accent-dark);
  margin-bottom: 0.75rem;
}
h1, h2, h3, h4 { line-height: 1.15; margin: 0 0 1rem; color: var(--color-ink); }
h1 { font-size: clamp(2.3rem, 5vw, 4.4rem); letter-spacing: -0.03em; }
h2 { font-size: clamp(1.8rem, 3vw, 2.7rem); letter-spacing: -0.02em; }
h3 { font-size: 1.25rem; }
p { margin: 0 0 1rem; color: var(--color-muted); }
.lead { font-size: 1.15rem; color: var(--color-ink); max-width: 720px; }
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.85rem 1.35rem;
  border-radius: 999px;
  font-weight: 700;
  border: 2px solid transparent;
  transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
  cursor: pointer;
}
.btn:hover { transform: translateY(-1px); text-decoration: none; }
.btn-primary { background: var(--color-accent); color: #1a1a1a; }
.btn-primary:hover { background: var(--color-accent-dark); color: #fff; }
.btn-secondary { background: transparent; color: var(--color-primary); border-color: var(--color-primary); }
.btn-secondary:hover { background: var(--color-primary); color: #fff; }
.btn-small { padding: 0.6rem 1rem; font-size: 0.9rem; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(247, 245, 240, 0.96);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--color-border);
}
.header-inner {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.9rem 0;
}
.brand { display: flex; align-items: center; gap: 0.75rem; color: var(--color-ink); }
.brand:hover { text-decoration: none; }
.brand img { width: 48px; height: 48px; border-radius: 12px; }
.brand-name { display: block; font-weight: 800; font-size: 1.05rem; }
.brand-tagline { display: block; font-size: 0.78rem; color: var(--color-muted); }
.nav-toggle {
  display: none;
  margin-left: auto;
  background: var(--color-primary);
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 0.6rem 1rem;
  font-weight: 700;
  cursor: pointer;
}
.primary-nav { margin-left: auto; }
.primary-nav ul {
  list-style: none;
  display: flex;
  gap: 0.35rem;
  margin: 0;
  padding: 0;
  align-items: center;
  flex-wrap: wrap;
}
.primary-nav a {
  display: block;
  padding: 0.55rem 0.85rem;
  border-radius: 999px;
  color: var(--color-ink);
  font-weight: 600;
  font-size: 0.95rem;
}
.primary-nav a:hover { background: rgba(15, 76, 92, 0.08); text-decoration: none; }
.header-cta { margin-left: 0.5rem; }

.hero {
  position: relative;
  overflow: hidden;
  padding: 6rem 0 5rem;
  background: linear-gradient(135deg, rgba(15,76,92,0.92), rgba(10,53,64,0.88)), url("https://picsum.photos/seed/lumenhero/1600/900") center/cover no-repeat;
  color: #fff;
}
.hero .container { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 3rem; align-items: center; }
.hero h1, .hero .lead, .hero .eyebrow { color: #fff; }
.hero .eyebrow { color: #ffd36e; }
.hero p { color: rgba(255,255,255,0.86); }
.hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; margin-top: 1.5rem; }
.hero-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: var(--radius);
  padding: 1.5rem;
  backdrop-filter: blur(8px);
}
.stat { padding: 0.75rem; }
.stat strong { display: block; font-size: 2rem; color: #fff; }
.stat span { font-size: 0.9rem; color: rgba(255,255,255,0.82); }

.grid { display: grid; gap: 1.5rem; }
.grid-2 { grid-template-columns: repeat(2, 1fr); }
.grid-3 { grid-template-columns: repeat(3, 1fr); }
.grid-4 { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 900px) {
  .hero .container, .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; }
}
.card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius);
  padding: 1.5rem;
  box-shadow: var(--shadow-sm);
}
.card img { border-radius: var(--radius-sm); margin-bottom: 1rem; }
.card h3 { margin-bottom: 0.5rem; }
.card p { font-size: 0.98rem; }

.feature-grid .card { text-align: left; }
.feature-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: rgba(15,76,92,0.1);
  color: var(--color-primary);
  font-weight: 800;
  margin-bottom: 1rem;
}
.metric { font-size: 2rem; font-weight: 800; color: var(--color-primary); margin: 0.25rem 0; }

.story-card img { aspect-ratio: 16 / 9; object-fit: cover; }
.story-meta { font-size: 0.85rem; color: var(--color-accent-dark); font-weight: 700; margin-bottom: 0.5rem; }

.logo-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  margin-top: 2rem;
}
.logo-grid img {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  padding: 1rem;
  height: 72px;
  object-fit: contain;
}
@media (max-width: 700px) { .logo-grid { grid-template-columns: repeat(2, 1fr); } }

.donation-tracker {
  background: linear-gradient(180deg, #ffffff, #f0faf7);
  border: 2px solid rgba(47,125,74,0.18);
}
.progress-wrap { margin: 1.5rem 0; }
.progress-label { display: flex; justify-content: space-between; font-weight: 700; margin-bottom: 0.5rem; }
.progress-bar {
  height: 16px;
  background: #e8efe9;
  border-radius: 999px;
  overflow: hidden;
}
.progress-fill {
  height: 100%;
  width: 65%;
  background: linear-gradient(90deg, var(--color-success), #5fbf7a);
  border-radius: 999px;
  transition: width 0.6s ease;
}
.amount-options { display: flex; flex-wrap: wrap; gap: 0.75rem; margin: 1rem 0; }
.amount-btn {
  border: 2px solid var(--color-border);
  background: #fff;
  color: var(--color-ink);
  border-radius: 999px;
  padding: 0.65rem 1.1rem;
  font-weight: 700;
  cursor: pointer;
}
.amount-btn.active { border-color: var(--color-success); background: rgba(47,125,74,0.08); color: var(--color-success); }
.custom-amount { display: flex; gap: 0.75rem; align-items: center; margin-top: 1rem; }
.custom-amount input {
  flex: 1;
  padding: 0.75rem 1rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  font-size: 1rem;
}
.impact-message {
  background: rgba(47,125,74,0.08);
  border-left: 4px solid var(--color-success);
  padding: 1rem 1.25rem;
  border-radius: var(--radius-sm);
  margin-top: 1rem;
  color: var(--color-ink);
}
.pledge-confirmation {
  display: none;
  margin-top: 1rem;
  padding: 1rem 1.25rem;
  background: #eaf7ee;
  border: 1px solid #bfe3ca;
  border-radius: var(--radius-sm);
  color: #1f4d2e;
  font-weight: 600;
}
.pledge-confirmation.show { display: block; }

.two-col {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 2rem;
  align-items: start;
}
@media (max-width: 900px) { .two-col { grid-template-columns: 1fr; } }
.sidebar .card { margin-bottom: 1.5rem; }
.sidebar h3 { font-size: 1.05rem; }
.spotlight { display: flex; gap: 0.75rem; align-items: center; margin-bottom: 1rem; }
.spotlight img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; margin: 0; }

.testimonial-card { position: relative; }
.testimonial-card::before {
  content: "“";
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  font-size: 4rem;
  color: rgba(15,76,92,0.12);
  line-height: 1;
}
.testimonial-author { display: flex; gap: 0.75rem; align-items: center; margin-top: 1rem; }
.testimonial-author img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; }
.testimonial-author strong { display: block; }
.testimonial-author span { font-size: 0.85rem; color: var(--color-muted); }

.faq details {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  padding: 1rem 1.25rem;
  margin-bottom: 0.75rem;
}
.faq summary {
  cursor: pointer;
  font-weight: 700;
  color: var(--color-ink);
  list-style: none;
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; float: right; color: var(--color-primary); font-size: 1.2rem; }
.faq details[open] summary::after { content: "−"; }
.faq details p { margin-top: 0.75rem; }

.blog-card img { aspect-ratio: 16 / 9; object-fit: cover; }
.blog-meta { font-size: 0.85rem; color: var(--color-muted); margin-bottom: 0.5rem; }

.site-footer {
  background: #102a33;
  color: #dce7ea;
  padding: 4rem 0 2rem;
}
.site-footer h4 { color: #fff; font-size: 1rem; margin-bottom: 1rem; }
.site-footer p, .site-footer a { color: #b9cfd4; }
.site-footer a:hover { color: #fff; }
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 2rem; }
@media (max-width: 900px) { .footer-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .footer-grid { grid-template-columns: 1fr; } }
.footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.12);
  margin-top: 2.5rem;
  padding-top: 1.5rem;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  font-size: 0.9rem;
}
.social-links { display: flex; gap: 0.75rem; }
.social-links a {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,0.1);
  color: #fff;
  font-weight: 700;
}
.social-links a:hover { background: var(--color-accent); color: #1a1a1a; text-decoration: none; }

@media (max-width: 900px) {
  .nav-toggle { display: inline-flex; }
  .primary-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 1rem;
    right: 1rem;
    background: #fff;
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    padding: 1rem;
    box-shadow: var(--shadow-md);
  }
  .primary-nav.open { display: block; }
  .primary-nav ul { flex-direction: column; align-items: stretch; }
  .header-cta { display: none; }
}
</style>
</head>
<body>
<header class="site-header">
  <div class="container header-inner">
    <a class="brand" href="#top">
      <img src="https://placehold.co/48x48/0f4c5c/f7f7f2?text=LH&font=montserrat" alt="Lumen Hope Foundation logo" width="48" height="48">
      <div>
        <span class="brand-name">Lumen Hope Foundation</span>
        <span class="brand-tagline">Restoring dignity through measurable impact</span>
      </div>
    </a>
    <button class="nav-toggle" id="navToggle" aria-expanded="false" aria-controls="primaryNav">Menu</button>
    <nav id="primaryNav" class="primary-nav" aria-label="Primary navigation">
      <ul>
        <li><a href="#about">About</a></li>
        <li><a href="#impact">Impact</a></li>
        <li><a href="#stories">Stories</a></li>
        <li><a href="#partners">Partners</a></li>
        <li><a href="#advocacy">Advocacy</a></li>
        <li><a href="#blog">Blog</a></li>
        <li><a href="#get-involved">Get Involved</a></li>
      </ul>
    </nav>
    <a class="btn btn-primary btn-small header-cta" href="#donate">Donate</a>
  </div>
</header>

<main id="top">
  <section class="hero">
    <div class="container">
      <div>
        <span class="eyebrow">Community-led change since 2011</span>
        <h1>Turning compassion into measurable, lasting change.</h1>
        <p class="lead">Lumen Hope Foundation partners with grassroots organizations, healthcare providers, educators, and employers to fund solutions that restore dignity, expand opportunity, and strengthen entire communities. Our work is guided by local leadership, transparent impact measurement, and long-term stewardship.</p>
        <div class="hero-actions">
          <a class="btn btn-primary" href="#donate">Take Action</a>
          <a class="btn btn-secondary" href="#get-involved" style="border-color:#fff;color:#fff;">Join Event</a>
        </div>
      </div>
      <div class="hero-stats" aria-label="Impact highlights">
        <div class="stat"><strong>18,400+</strong><span>beneficiaries supported across six regions</span></div>
        <div class="stat"><strong>$4.2M</strong><span>in grants and capacity-building support deployed</span></div>
        <div class="stat"><strong>62</strong><span>community partners and implementation allies</span></div>
        <div class="stat"><strong>94%</strong><span>of annual spending directed to programs</span></div>
      </div>
    </div>
  </section>

  <section id="about" class="section">
    <div class="container grid-2">
      <div>
        <span class="eyebrow">About Lumen Hope</span>
        <h2>A nonprofit built for accountability, trust, and community power.</h2>
        <p>Founded in 2011, Lumen Hope Foundation exists to close the gap between urgent community needs and the resources required to meet them. We believe that people closest to a challenge are best positioned to design its solution, so our grantmaking model centers local organizations rather than replacing them. By combining flexible funding with technical assistance, leadership development, and rigorous impact measurement, we help partners move from emergency response to sustainable systems change.</p>
        <p>Our approach is rooted in a simple theory of change: when community organizations have stable funding, reliable data, and strong governance, the people they serve experience better health, stronger educational outcomes, and greater economic mobility. We track outcomes across beneficiary cohorts, compare results against baseline indicators, and publish annual impact reports so donors, partners, and the public can see exactly how resources are used.</p>
        <p>We also steward a growing endowment that protects our mission during economic uncertainty. Rather than chasing short-term trends, we invest in evidence-based programs, support multi-year commitments, and maintain a reserve that allows partners to plan beyond the next funding cycle. This long-view strategy has helped our partners retain staff, expand services, and serve families who might otherwise fall through gaps in public systems.</p>
        <a class="btn btn-secondary" href="#impact">Learn More</a>
      </div>
      <div>
        <img src="https://picsum.photos/seed/lumenabout/720/720" alt="Community leaders reviewing impact data together" width="720" height="720" loading="lazy">
      </div>
    </div>
  </section>

  <section id="impact" class="section section-alt">
    <div class="container">
      <span class="eyebrow">Impact measurement</span>
      <h2>Our impact, measured in lives changed and systems strengthened.</h2>
      <p class="lead">We evaluate every initiative through a shared framework of outcome metrics, beneficiary feedback, and financial stewardship. The numbers below represent verified results from our most recent fiscal year, collected through partner reporting, independent audits, and community surveys.</p>
      <div class="grid grid-4" style="margin-top:2rem;">
        <div class="card">
          <div class="feature-icon">ED</div>
          <h3>Education access</h3>
          <div class="metric">6,820</div>
          <p>students received tutoring, literacy support, or scholarship assistance, with 81% meeting grade-level reading benchmarks.</p>
        </div>
        <div class="card">
          <div class="feature-icon">HL</div>
          <h3>Health and wellness</h3>
          <div class="metric">4,150</div>
          <p>individuals accessed mobile clinics, mental health counseling, maternal care, or chronic disease support.</p>
        </div>
        <div class="card">
          <div class="feature-icon">EM</div>
          <h3>Economic mobility</h3>
          <div class="metric">1,940</div>
          <p>job seekers completed workforce training, with 67% securing employment within six months.</p>
        </div>
        <div class="card">
          <div class="feature-icon">CR</div>
          <h3>Climate resilience</h3>
          <div class="metric">38</div>
          <p>neighborhood preparedness projects reduced emergency response times and protected vulnerable households.</p>
        </div>
      </div>
      <div class="grid grid-3" style="margin-top:2rem;">
        <div class="card">
          <h3>Outcome-based funding</h3>
          <p>We tie a portion of every grant to clearly defined milestones, allowing partners to adapt their programs while remaining accountable to the communities they serve.</p>
        </div>
        <div class="card">
          <h3>Beneficiary voice</h3>
          <p>Surveys, focus groups, and community advisory councils ensure that program design reflects lived experience rather than assumptions from outside the community.</p>
        </div>
        <div class="card">
          <h3>Transparent reporting</h3>
          <p>Annual reports, audited financial statements, and partner dashboards are published publicly to maintain trust and invite constructive scrutiny.</p>
        </div>
      </div>
    </div>
  </section>

  <section id="stories" class="section">
    <div class="container">
      <span class="eyebrow">Impact stories</span>
      <h2>Real people, real progress, and the partners behind it.</h2>
      <p class="lead">Our impact stories document the human outcomes behind the data: a student finding confidence in the classroom, a caregiver returning to work, a neighborhood preparing for climate emergencies, and a local nonprofit growing from survival mode to long-term stability.</p>
      <div class="grid grid-3" style="margin-top:2rem;">
        <article class="card story-card">
          <img src="https://picsum.photos/seed/lumenstory1/640/360" alt="A student reading with a tutor" width="640" height="360" loading="lazy">
          <div class="story-meta">Education • March 2025</div>
          <h3>From struggling reader to classroom leader</h3>
          <p>After two years of inconsistent schooling, Amara joined an after-school literacy program funded through Lumen Hope. With one-on-one tutoring, family support, and a mentor who believed in her, she advanced two reading levels in a single academic year and now helps younger students during peer reading circles.</p>
          <a href="#blog">Learn More</a>
        </article>
        <article class="card story-card">
          <img src="https://picsum.photos/seed/lumenstory2/640/360" alt="A caregiver preparing for a job interview" width="640" height="360" loading="lazy">
          <div class="story-meta">Economic Mobility • February 2025</div>
          <h3>Rebuilding a career after crisis</h3>
          <p>When Marcus lost his job during a regional downturn, a Lumen Hope workforce partner provided resume coaching, interview preparation, and transportation assistance. Within four months, he secured full-time employment with benefits and now mentors other participants navigating career transitions.</p>
          <a href="#blog">Learn More</a>
        </article>
        <article class="card story-card">
          <img src="https://picsum.photos/seed/lumenstory3/640/360" alt="Community volunteers preparing emergency supplies" width="640" height="360" loading="lazy">
          <div class="story-meta">Climate Resilience • January 2025</div>
          <h3>A neighborhood ready before the storm</h3>
          <p>In a flood-prone district, Lumen Hope funded a community-led preparedness plan that included multilingual alerts, supply hubs, and trained volunteer responders. When severe weather arrived, evacuation was faster, losses were lower, and vulnerable residents were not left to navigate the crisis alone.</p>
          <a href="#blog">Learn More</a>
        </article>
      </div>
    </div>
  </section>

  <section id="partners" class="section section-alt">
    <div class="container">
      <span class="eyebrow">Partnership highlights</span>
      <h2>Stronger together: foundations, corporations, and community organizations.</h2>
      <p class="lead">Our partnerships are designed to multiply impact. We co-design programs with implementation partners, align corporate giving with verified community priorities, and connect foundations to organizations that have the trust and capacity to deliver results.</p>
      <div class="grid grid-2" style="margin-top:2rem;">
        <div class="card">
          <h3>Community implementation partners</h3>
          <p>Local nonprofits receive multi-year grants, capacity-building support, and access to shared data tools. We prioritize organizations led by people with lived experience in the communities they serve, ensuring that resources strengthen existing trust rather than duplicating effort.</p>
          <p>Partners also participate in quarterly learning cohorts where they share outcome data, troubleshoot challenges, and co-create improvements. This collaborative model has reduced administrative burden and increased program retention across our portfolio.</p>
        </div>
        <div class="card">
          <h3>Corporate and philanthropic allies</h3>
          <p>Corporate partners contribute funding, employee volunteer hours, and in-kind expertise. Foundations support pooled funds that reduce fragmented giving and allow community organizations to plan with confidence. Every alliance is governed by clear agreements around impact measurement, transparency, and community benefit.</p>
          <p>We help partners move beyond transactional giving by connecting their goals to verified outcomes, beneficiary stories, and opportunities for deeper engagement such as board service, skills-based volunteering, and advocacy.</p>
        </div>
      </div>
      <div class="logo-grid" aria-label="Partner logos">
        <img src="https://placehold.co/180x72/f7f5f0/0f4c5c?text=Harbor+Trust&font=montserrat" alt="Harbor Trust logo" width="180" height="72" loading="lazy">
        <img src="https://placehold.co/180x72/f7f5f0/0f4c5c?text=Northfield+Bank&font=montserrat" alt="Northfield Bank logo" width="180" height="72" loading="lazy">
        <img src="https://placehold.co/180x72/f7f5f0/0f4c5c?text=Bright+Path+Health&font=montserrat" alt="Bright Path Health logo" width="180" height="72" loading="lazy">
        <img src="https://placehold.co/180x72/f7f5f0/0f4c5c?text=Summit+Foundation&font=montserrat" alt="Summit Foundation logo" width="180" height="72" loading="lazy">
        <img src="https://placehold.co/180x72/f7f5f0/0f4c5c?text=Greenline+Energy&font=montserrat" alt="Greenline Energy logo" width="180" height="72" loading="lazy">
        <img src="https://placehold.co/180x72/f7f5f0/0f4c5c?text=Atlas+Logistics&font=montserrat" alt="Atlas Logistics logo" width="180" height="72" loading="lazy">
        <img src="https://placehold.co/180x72/f7f5f0/0f4c5c?text=Riverbend+Schools&font=montserrat" alt="Riverbend Schools logo" width="180" height="72" loading="lazy">
        <img src="https://placehold.co/180x72/f7f5f0/0f4c5c?text=United+Care+Network&font=montserrat" alt="United Care Network logo" width="180" height="72" loading="lazy">
      </div>
      <div style="margin-top:2rem; text-align:center;">
        <a class="btn btn-primary" href="#get-involved">Partner With Us</a>
      </div>
    </div>
  </section>

  <section id="advocacy" class="section">
    <div class="container">
      <span class="eyebrow">Advocacy initiatives</span>
      <h2>Changing systems, not just symptoms.</h2>
      <p class="lead">Charity can meet immediate needs, but advocacy changes the conditions that create those needs. Lumen Hope supports evidence-based policy campaigns, community organizing, and research that elevates beneficiary experience into public decision-making.</p>
      <div class="grid grid-3" style="margin-top:2rem;">
        <div class="card">
          <div class="feature-icon">PA</div>
          <h3>Policy reform</h3>
          <p>We advocate for equitable school funding, expanded mental health access, and fair workforce development policies. Our policy briefs are developed with partner organizations and people directly affected by the systems under review.</p>
        </div>
        <div class="card">
          <div class="feature-icon">RC</div>
          <h3>Research and data</h3>
          <p>We publish plain-language research on housing stability, educational recovery, and emergency preparedness. By making data accessible, we help communities hold institutions accountable and make better decisions.</p>
        </div>
        <div class="card">
          <div class="feature-icon">CB</div>
          <h3>Coalition building</h3>
          <p>We convene nonprofits, faith groups, businesses, and residents around shared goals. These coalitions amplify community voice and create sustained pressure for practical, people-centered solutions.</p>
        </div>
      </div>
      <div class="card" style="margin-top:2rem;">
        <h3>Current campaign: Every Child Reads</h3>
        <p>Our 2025 advocacy campaign focuses on literacy recovery and equitable access to tutoring. We are supporting legislation that funds evidence-based reading interventions, expands paid tutoring roles for community members, and requires transparent reporting on student outcomes. The campaign includes community forums, legislative briefings, and a public petition backed by more than 4,200 residents.</p>
        <a class="btn btn-secondary" href="#blog">Learn More</a>
      </div>
    </div>
  </section>

  <section id="donate" class="section section-alt">
    <div class="container grid-2">
      <div>
        <span class="eyebrow">Donation tracker</span>
        <h2>Track your impact in real time.</h2>
        <p>Every gift to Lumen Hope Foundation is directed toward verified community programs, with a portion supporting capacity building and transparent impact measurement. Use the tracker below to see how individual contributions move us toward our current goal and what each amount can help provide.</p>
        <p>This interactive tracker is a demonstration of our commitment to donor transparency. In a live environment, it would reflect verified donation totals, campaign progress, and the specific outcomes funded by each gift.</p>
        <ul style="color:var(--color-muted); padding-left:1.2rem;">
          <li>Donations are tax-deductible to the extent permitted by law.</li>
          <li>Monthly giving provides predictable support for long-term partner planning.</li>
          <li>Donors receive annual impact reports and campaign updates.</li>
        </ul>
      </div>
      <div class="card donation-tracker" id="donationTracker">
        <h3>Winter Learning Fund</h3>
        <p style="margin-bottom:1rem;">Goal: provide tutoring, meals, and mentorship for 300 students during the winter session.</p>
        <div class="progress-wrap">
          <div class="progress-label">
            <span id="raisedLabel">$78,420 raised</span>
            <span id="goalLabel">Goal: $120,000</span>
          </div>
          <div class="progress-bar" aria-label="Donation progress">
            <div class="progress-fill" id="progressFill"></div>
          </div>
        </div>
        <div class="amount-options" role="group" aria-label="Donation amounts">
          <button class="amount-btn active" data-amount="25" type="button">$25</button>
          <button class="amount-btn" data-amount="50" type="button">$50</button>
          <button class="amount-btn" data-amount="100" type="button">$100</button>
          <button class="amount-btn" data-amount="250" type="button">$250</button>
        </div>
        <div class="custom-amount">
          <label for="customAmount" class="sr-only" style="position:absolute;left:-9999px;">Custom amount</label>
          <input id="customAmount" type="number" min="1" placeholder="Custom amount" aria-label="Custom donation amount">
          <button class="btn btn-primary btn-small" id="pledgeBtn" type="button">Add Pledge</button>
        </div>
        <div class="impact-message" id="impactMessage">
          A gift of $25 funds two hygiene kits and transportation support for a beneficiary family.
        </div>
        <div class="pledge-confirmation" id="pledgeConfirmation">
          Thank you. Your pledge has been added to the Winter Learning Fund tracker.
        </div>
      </div>
    </div>
  </section>

  <section id="get-involved" class="section">
    <div class="container two-col">
      <div>
        <span class="eyebrow">Get involved</span>
        <h2>Volunteer, attend, and help build the next chapter.</h2>
        <p class="lead">Whether you have two hours a month or two days a week, there is a meaningful role for you. We match volunteers with partner organizations based on skills, interests, and availability, and we host regular events that bring donors, beneficiaries, and advocates together.</p>
        <div class="grid grid-2" style="margin-top:2rem;">
          <div class="card">
            <h3>Volunteer opportunities</h3>
            <p><strong>Literacy mentor:</strong> Support elementary students with reading practice twice weekly. Training and materials provided.</p>
            <p><strong>Career coach:</strong> Help job seekers with resumes, interview preparation, and confidence building.</p>
            <p><strong>Community responder:</strong> Assist with emergency preparedness events, supply distribution, and neighborhood outreach.</p>
            <a class="btn btn-secondary btn-small" href="#contact">Join Event</a>
          </div>
          <div class="card">
            <h3>Upcoming events</h3>
            <p><strong>April 12:</strong> Community Literacy Fair, Riverbend Community Center.</p>
            <p><strong>May 3:</strong> Workforce Pathways Open House and employer roundtable.</p>
            <p><strong>June 18:</strong> Annual Impact Celebration and donor recognition evening.</p>
            <a class="btn btn-secondary btn-small" href="#contact">Take Action</a>
          </div>
        </div>
      </div>
      <aside class="sidebar" aria-label="Highlights and spotlights">
        <div class="card">
          <h3>Partner highlights</h3>
          <p><strong>Harbor Trust</strong> funded 120 scholarships for first-generation college students.</p>
          <p><strong>Bright Path Health</strong> expanded mobile clinic visits by 40% in rural counties.</p>
          <p><strong>Greenline Energy</strong> supported neighborhood preparedness hubs in three flood-prone districts.</p>
        </div>
        <div class="card">
          <h3>Success stories</h3>
          <p>A community partner grew from serving 80 families to more than 400 after receiving a three-year capacity grant and shared data support.</p>
          <p>Beneficiary satisfaction reached 92% across programs, with transportation and childcare cited as key enablers.</p>
        </div>
        <div class="card">
          <h3>Volunteer spotlights</h3>
          <div class="spotlight">
            <img src="https://i.pravatar.cc/104?u=lumen-volunteer-1" alt="Portrait of volunteer Dana" width="52" height="52" loading="lazy">
            <div><strong>Dana R.</strong><br><span style="color:var(--color-muted);font-size:0.85rem;">Literacy mentor, 3 years</span></div>
          </div>
          <div class="spotlight">
            <img src="https://i.pravatar.cc/104?u=lumen-volunteer-2" alt="Portrait of volunteer Miguel" width="52" height="52" loading="lazy">
            <div><strong>Miguel T.</strong><br><span style="color:var(--color-muted);font-size:0.85rem;">Career coach, 2 years</span></div>
          </div>
          <div class="spotlight">
            <img src="https://i.pravatar.cc/104?u=lumen-volunteer-3" alt="Portrait of volunteer Aisha" width="52" height="52" loading="lazy">
            <div><strong>Aisha K.</strong><br><span style="color:var(--color-muted);font-size:0.85rem;">Community responder, 1 year</span></div>
          </div>
        </div>
      </aside>
    </div>
  </section>

  <section id="testimonials" class="section section-alt">
    <div class="container">
      <span class="eyebrow">Testimonials</span>
      <h2>Trusted by partners, beneficiaries, and advocates.</h2>
      <div class="grid grid-3" style="margin-top:2rem;">
        <div class="card testimonial-card">
          <p>Lumen Hope does not just fund programs; it strengthens the organizations behind them. Their reporting is clear, their staff listen, and their commitment to community leadership is evident in every decision.</p>
          <div class="testimonial-author">
            <img src="https://i.pravatar.cc/96?u=lumen-testimonial-1" alt="Portrait of Dr. Elena Vargas" width="48" height="48" loading="lazy">
            <div><strong>Dr. Elena Vargas</strong><span>Executive Director, Bright Path Health</span></div>
          </div>
        </div>
        <div class="card testimonial-card">
          <p>The tutoring program gave my daughter confidence and gave our family a support network we did not know existed. For the first time, I feel like someone is measuring outcomes because they care, not just because a grant requires it.</p>
          <div class="testimonial-author">
            <img src="https://i.pravatar.cc/96?u=lumen-testimonial-2" alt="Portrait of Marcus Chen" width="48" height="48" loading="lazy">
            <div><strong>Marcus Chen</strong><span>Parent and program participant</span></div>
          </div>
        </div>
        <div class="card testimonial-card">
          <p>As a corporate partner, we needed evidence that our giving was making a difference. Lumen Hope provided dashboards, stories, and honest assessments that made our board more confident in long-term investment.</p>
          <div class="testimonial-author">
            <img src="https://i.pravatar.cc/96?u=lumen-testimonial-3" alt="Portrait of Priya Nair" width="48" height="48" loading="lazy">
            <div><strong>Priya Nair</strong><span>Director of Social Impact, Northfield Bank</span></div>
          </div>
        </div>
      </div>
    </div>
  </section>

  <section id="faq" class="section">
    <div class="container" style="max-width:860px;">
      <span class="eyebrow">Frequently asked questions</span>
      <h2>Answers for donors, volunteers, and partners.</h2>
      <div class="faq" style="margin-top:2rem;">
        <details>
          <summary>How are donations used?</summary>
          <p>Donations support community-led programs, capacity-building for local nonprofits, and transparent impact measurement. We publish annual financial statements and impact reports so donors can see how resources are allocated and what outcomes they make possible.</p>
        </details>
        <details>
          <summary>Are donations tax-deductible?</summary>
          <p>Lumen Hope Foundation is a registered charitable organization, and donations are tax-deductible to the extent permitted by law. Donors receive acknowledgment letters for their records, and our team can provide additional documentation for corporate or foundation gifts.</p>
        </details>
        <details>
          <summary>How do you measure impact?</summary>
          <p>We use a shared framework of outcome metrics, beneficiary feedback, partner reporting, and independent review. Metrics are tied to specific programs, compared against baselines, and published in annual reports. We also invite community advisory councils to review findings and challenge our assumptions.</p>
        </details>
        <details>
          <summary>Can I volunteer without prior nonprofit experience?</summary>
          <p>Yes. We provide training, clear role descriptions, and ongoing support. Many volunteers begin with event support or mentorship roles and later take on leadership positions within partner organizations.</p>
        </details>
        <details>
          <summary>How can organizations apply for partnership or funding?</summary>
          <p>Community organizations can submit an interest form through our partnerships team. We prioritize organizations with strong community trust, clear outcome goals, and a commitment to transparent reporting. Funding decisions are made through a review process that includes community representatives.</p>
        </details>
      </div>
    </div>
  </section>

  <section id="blog" class="section section-alt">
    <div class="container">
      <span class="eyebrow">Blog</span>
      <h2>Insights, updates, and stories from the field.</h2>
      <div class="grid grid-3" style="margin-top:2rem;">
        <article class="card blog-card">
          <img src="https://picsum.photos/seed/lumenblog1/640/360" alt="A community meeting" width="640" height="360" loading="lazy">
          <div class="blog-meta">April 2, 2025 • Impact Measurement</div>
          <h3>What our latest beneficiary survey revealed about access</h3>
          <p>Our annual survey of 1,200 participants highlights transportation, childcare, and digital access as the most common barriers to consistent program engagement.</p>
          <a href="#blog">Read More</a>
        </article>
        <article class="card blog-card">
          <img src="https://picsum.photos/seed/lumenblog2/640/360" alt="Volunteers organizing supplies" width="640" height="360" loading="lazy">
          <div class="blog-meta">March 18, 2025 • Advocacy</div>
          <h3>Why literacy recovery needs more than tutoring</h3>
          <p>Evidence-based reading instruction works best when paired with family engagement, stable housing support, and trained community tutors who reflect the students they serve.</p>
          <a href="#blog">Read More</a>
        </article>
        <article class="card blog-card">
          <img src="https://picsum.photos/seed/lumenblog3/640/360" alt="A nonprofit team planning" width="640" height="360" loading="lazy">
          <div class="blog-meta">February 27, 2025 • Partnerships</div>
          <h3>How multi-year grants changed partner planning</h3>
          <p>Partners with three-year commitments reported higher staff retention, better service continuity, and stronger outcome tracking than those relying on annual renewals.</p>
          <a href="#blog">Read More</a>
        </article>
      </div>
    </div>
  </section>

  <section id="contact" class="section">
    <div class="container">
      <div class="card" style="text-align:center; padding:3rem 2rem;">
        <span class="eyebrow">Contact and support</span>
        <h2>Ready to make a measurable difference?</h2>
        <p class="lead" style="margin:0 auto 1.5rem;">Whether you want to donate, volunteer, partner, or learn more about our programs, our team is ready to help you take the next step.</p>
        <div style="display:flex; gap:1rem; justify-content:center; flex-wrap:wrap;">
          <a class="btn btn-primary" href="#donate">Take Action</a>
          <a class="btn btn-secondary" href="#get-involved">Join Event</a>
        </div>
        <p style="margin-top:1.5rem; font-size:0.95rem;">Lumen Hope Foundation • 240 Meridian Street, Suite 400 • Riverbend, CA 94110 • (415) 555-0148 • hello@lumenhope.org</p>
      </div>
    </div>
  </section>
</main>

<footer class="site-footer" id="footer">
  <div class="container">
    <div class="footer-grid">
      <div>
        <h4>Lumen Hope Foundation</h4>
        <p>Restoring dignity through measurable impact. We partner with community-led organizations to fund, strengthen, and scale solutions that create lasting change.</p>
        <div class="social-links" aria-label="Social media links">
          <a href="#" aria-label="Facebook">f</a>
          <a href="#" aria-label="X">x</a>
          <a href="#" aria-label="Instagram">i</a>
          <a href="#" aria-label="LinkedIn">in</a>
        </div>
      </div>
      <div>
        <h4>Organization</h4>
        <p><a href="#about">About</a></p>
        <p><a href="#impact">Impact</a></p>
        <p><a href="#partners">Partners</a></p>
        <p><a href="#advocacy">Advocacy</a></p>
      </div>
      <div>
        <h4>Get Involved</h4>
        <p><a href="#donate">Donate</a></p>
        <p><a href="#get-involved">Volunteer</a></p>
        <p><a href="#get-involved">Events</a></p>
        <p><a href="#blog">Blog</a></p>
      </div>
      <div>
        <h4>Contact</h4>
        <p>240 Meridian Street, Suite 400<br>Riverbend, CA 94110</p>
        <p>(415) 555-0148<br>hello@lumenhope.org</p>
        <p><a href="#">Privacy Policy</a><br><a href="#">Terms of Service</a></p>
      </div>
    </div>
    <div class="footer-bottom">
      <span>© <span id="currentYear"></span> Lumen Hope Foundation. All rights reserved.</span>
      <span>Registered 501(c)(3) nonprofit organization. EIN: 84-2917365</span>
    </div>
  </div>
</footer>

<script>
const navToggle = document.getElementById('navToggle');
const primaryNav = document.getElementById('primaryNav');
navToggle.addEventListener('click', () => {
  const isOpen = primaryNav.classList.toggle('open');
  navToggle.setAttribute('aria-expanded', String(isOpen));
});
primaryNav.querySelectorAll('a').forEach(link => {
  link.addEventListener('click', () => {
    primaryNav.classList.remove('open');
    navToggle.setAttribute('aria-expanded', 'false');
  });
});

const goal = 120000;
let raised = 78420;
let selectedAmount = 25;
const progressFill = document.getElementById('progressFill');
const raisedLabel = document.getElementById('raisedLabel');
const impactMessage = document.getElementById('impactMessage');
const pledgeConfirmation = document.getElementById('pledgeConfirmation');
const customAmountInput = document.getElementById('customAmount');

function formatCurrency(value) {
  return '$' + Math.round(value).toLocaleString('en-US');
}

function updateProgress() {
  const percent = Math.min(100, (raised / goal) * 100);
  progressFill.style.width = percent + '%';
  raisedLabel.textContent = formatCurrency(raised) + ' raised';
}

function impactForAmount(amount) {
  if (amount === 25) return 'A gift of $25 funds two hygiene kits and transportation support for a beneficiary family.';
  if (amount === 50) return 'A gift of $50 covers one week of after-school tutoring and nutritious meals for a student.';
  if (amount === 100) return 'A gift of $100 supports a caregiver with job-readiness coaching and interview attire.';
  if (amount === 250) return 'A gift of $250 helps a community partner deliver a month of mobile health screenings.';
  return 'A gift of ' + formatCurrency(amount) + ' advances the Winter Learning Fund and expands access to tutoring, meals, and mentorship.';
}

document.querySelectorAll('.amount-btn').forEach(button => {
  button.addEventListener('click', () => {
    document.querySelectorAll('.amount-btn').forEach(btn => btn.classList.remove('active'));
    button.classList.add('active');
    selectedAmount = Number(button.dataset.amount);
    customAmountInput.value = '';
    impactMessage.textContent = impactForAmount(selectedAmount);
  });
});

customAmountInput.addEventListener('input', () => {
  const value = Number(customAmountInput.value);
  if (value > 0) {
    document.querySelectorAll('.amount-btn').forEach(btn => btn.classList.remove('active'));
    selectedAmount = value;
    impactMessage.textContent = impactForAmount(value);
  }
});

document.getElementById('pledgeBtn').addEventListener('click', () => {
  const amount = selectedAmount > 0 ? selectedAmount : Number(customAmountInput.value);
  if (!amount || amount < 1) {
    impactMessage.textContent = 'Please enter a valid pledge amount.';
    return;
  }
  raised = Math.min(goal, raised + amount);
  updateProgress();
  pledgeConfirmation.classList.add('show');
  pledgeConfirmation.textContent = 'Thank you. Your pledge of ' + formatCurrency(amount) + ' has been added to the Winter Learning Fund tracker.';
  setTimeout(() => pledgeConfirmation.classList.remove('show'), 4500);
});

updateProgress();
document.getElementById('currentYear').textContent = new Date().getFullYear();
</script>
</body>
</html>
View Axe Report (JSON)
{
  "testEngine": {
    "name": "axe-core",
    "version": "4.10.2"
  },
  "testRunner": {
    "name": "axe"
  },
  "testEnvironment": {
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36",
    "windowWidth": 1280,
    "windowHeight": 720,
    "orientationAngle": 0,
    "orientationType": "landscape-primary"
  },
  "timestamp": "2026-11-12T10:13:51.659Z",
  "url": "https://benchmark.aimac.invalid/e6df39466f6039e557e6c3bfde51eb91bdb00314dd0b14b2a360fb92e3342147.html",
  "toolOptions": {
    "runOnly": {
      "type": "tag",
      "values": [
        "wcag2a",
        "wcag2aa",
        "wcag21a",
        "wcag21aa",
        "wcag22a",
        "wcag22aa"
      ]
    },
    "resultTypes": [
      "violations"
    ],
    "reporter": "v1"
  },
  "inapplicable": [
    {
      "id": "area-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag244",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.2.4.4",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure <area> elements of image maps have alternative text",
      "help": "Active <area> elements must have alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/area-alt?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-braille-equivalent",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure aria-braillelabel and aria-brailleroledescription have a non-braille equivalent",
      "help": "aria-braille attributes must have a non-braille equivalent",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-braille-equivalent?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-command-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure every ARIA button, link and menuitem has an accessible name",
      "help": "ARIA commands must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-command-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-hidden-focus",
      "impact": null,
      "tags": [
        "cat.name-role-value",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure aria-hidden elements are not focusable nor contain focusable elements",
      "help": "ARIA hidden element must not be focusable or contain focusable elements",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-hidden-focus?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-input-field-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure every ARIA input field has an accessible name",
      "help": "ARIA input fields must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-input-field-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-meter-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag111",
        "EN-301-549",
        "EN-9.1.1.1"
      ],
      "description": "Ensure every ARIA meter node has an accessible name",
      "help": "ARIA meter nodes must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-meter-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-progressbar-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag111",
        "EN-301-549",
        "EN-9.1.1.1"
      ],
      "description": "Ensure every ARIA progressbar node has an accessible name",
      "help": "ARIA progressbar nodes must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-progressbar-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-required-children",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure elements with an ARIA role that require child roles contain them",
      "help": "Certain ARIA roles must contain particular children",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-required-children?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-required-parent",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure elements with an ARIA role that require parent roles are contained by them",
      "help": "Certain ARIA roles must be contained by particular parents",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-required-parent?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-toggle-field-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure every ARIA toggle field has an accessible name",
      "help": "ARIA toggle fields must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-toggle-field-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-tooltip-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure every ARIA tooltip node has an accessible name",
      "help": "ARIA tooltip nodes must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-tooltip-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "autocomplete-valid",
      "impact": null,
      "tags": [
        "cat.forms",
        "wcag21aa",
        "wcag135",
        "EN-301-549",
        "EN-9.1.3.5",
        "ACT"
      ],
      "description": "Ensure the autocomplete attribute is correct and suitable for the form field",
      "help": "autocomplete attribute must be used correctly",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/autocomplete-valid?application=axeAPI",
      "nodes": []
    },
    {
      "id": "blink",
      "impact": null,
      "tags": [
        "cat.time-and-media",
        "wcag2a",
        "wcag222",
        "section508",
        "section508.22.j",
        "TTv5",
        "TT2.b",
        "EN-301-549",
        "EN-9.2.2.2"
      ],
      "description": "Ensure <blink> elements are not used",
      "help": "<blink> elements are deprecated and must not be used",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/blink?application=axeAPI",
      "nodes": []
    },
    {
      "id": "definition-list",
      "impact": null,
      "tags": [
        "cat.structure",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure <dl> elements are structured correctly",
      "help": "<dl> elements must only directly contain properly-ordered <dt> and <dd> groups, <script>, <template> or <div> elements",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/definition-list?application=axeAPI",
      "nodes": []
    },
    {
      "id": "dlitem",
      "impact": null,
      "tags": [
        "cat.structure",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure <dt> and <dd> elements are contained by a <dl>",
      "help": "<dt> and <dd> elements must be contained by a <dl>",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/dlitem?application=axeAPI",
      "nodes": []
    },
    {
      "id": "frame-focusable-content",
      "impact": null,
      "tags": [
        "cat.keyboard",
        "wcag2a",
        "wcag211",
        "TTv5",
        "TT4.a",
        "EN-301-549",
        "EN-9.2.1.1"
      ],
      "description": "Ensure <frame> and <iframe> elements with focusable content do not have tabindex=-1",
      "help": "Frames with focusable content must not have tabindex=-1",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/frame-focusable-content?application=axeAPI",
      "nodes": []
    },
    {
      "id": "frame-title-unique",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT12.d",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure <iframe> and <frame> elements contain a unique title attribute",
      "help": "Frames must have a unique title attribute",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/frame-title-unique?application=axeAPI",
      "nodes": []
    },
    {
      "id": "frame-title",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.i",
        "TTv5",
        "TT12.d",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure <iframe> and <frame> elements have an accessible name",
      "help": "Frames must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/frame-title?application=axeAPI",
      "nodes": []
    },
    {
      "id": "html-xml-lang-mismatch",
      "impact": null,
      "tags": [
        "cat.language",
        "wcag2a",
        "wcag311",
        "EN-301-549",
        "EN-9.3.1.1",
        "ACT"
      ],
      "description": "Ensure that HTML elements with both valid lang and xml:lang attributes agree on the base language of the page",
      "help": "HTML elements with lang and xml:lang must have the same base language",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/html-xml-lang-mismatch?application=axeAPI",
      "nodes": []
    },
    {
      "id": "input-button-name",
      "impact": null,
      "tags": [
        "cat.name-role-value",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure input buttons have discernible text",
      "help": "Input buttons must have discernible text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/input-button-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "input-image-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag111",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT7.a",
        "EN-301-549",
        "EN-9.1.1.1",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure <input type=\"image\"> elements have alternative text",
      "help": "Image buttons must have alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/input-image-alt?application=axeAPI",
      "nodes": []
    },
    {
      "id": "marquee",
      "impact": null,
      "tags": [
        "cat.parsing",
        "wcag2a",
        "wcag222",
        "TTv5",
        "TT2.b",
        "EN-301-549",
        "EN-9.2.2.2"
      ],
      "description": "Ensure <marquee> elements are not used",
      "help": "<marquee> elements are deprecated and must not be used",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/marquee?application=axeAPI",
      "nodes": []
    },
    {
      "id": "meta-refresh",
      "impact": null,
      "tags": [
        "cat.time-and-media",
        "wcag2a",
        "wcag221",
        "TTv5",
        "TT8.a",
        "EN-301-549",
        "EN-9.2.2.1"
      ],
      "description": "Ensure <meta http-equiv=\"refresh\"> is not used for delayed refresh",
      "help": "Delayed refresh under 20 hours must not be used",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/meta-refresh?application=axeAPI",
      "nodes": []
    },
    {
      "id": "object-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag111",
        "section508",
        "section508.22.a",
        "EN-301-549",
        "EN-9.1.1.1"
      ],
      "description": "Ensure <object> elements have alternative text",
      "help": "<object> elements must have alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/object-alt?application=axeAPI",
      "nodes": []
    },
    {
      "id": "role-img-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag111",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT7.a",
        "EN-301-549",
        "EN-9.1.1.1",
        "ACT"
      ],
      "description": "Ensure [role=\"img\"] elements have alternative text",
      "help": "[role=\"img\"] elements must have an alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/role-img-alt?application=axeAPI",
      "nodes": []
    },
    {
      "id": "scrollable-region-focusable",
      "impact": null,
      "tags": [
        "cat.keyboard",
        "wcag2a",
        "wcag211",
        "wcag213",
        "TTv5",
        "TT4.a",
        "EN-301-549",
        "EN-9.2.1.1",
        "EN-9.2.1.3"
      ],
      "description": "Ensure elements that have scrollable content are accessible by keyboard",
      "help": "Scrollable region must have keyboard access",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/scrollable-region-focusable?application=axeAPI",
      "nodes": []
    },
    {
      "id": "select-name",
      "impact": null,
      "tags": [
        "cat.forms",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.n",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure select element has an accessible name",
      "help": "Select element must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/select-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "server-side-image-map",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag211",
        "section508",
        "section508.22.f",
        "TTv5",
        "TT4.a",
        "EN-301-549",
        "EN-9.2.1.1"
      ],
      "description": "Ensure that server-side image maps are not used",
      "help": "Server-side image maps must not be used",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/server-side-image-map?application=axeAPI",
      "nodes": []
    },
    {
      "id": "svg-img-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag111",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT7.a",
        "EN-301-549",
        "EN-9.1.1.1",
        "ACT"
      ],
      "description": "Ensure <svg> elements with an img, graphics-document or graphics-symbol role have an accessible text",
      "help": "<svg> elements with an img role must have an alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/svg-img-alt?application=axeAPI",
      "nodes": []
    },
    {
      "id": "td-headers-attr",
      "impact": null,
      "tags": [
        "cat.tables",
        "wcag2a",
        "wcag131",
        "section508",
        "section508.22.g",
        "TTv5",
        "TT14.b",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure that each cell in a table that uses the headers attribute refers only to other cells in that table",
      "help": "Table cells that use the headers attribute must only refer to cells in the same table",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/td-headers-attr?application=axeAPI",
      "nodes": []
    },
    {
      "id": "th-has-data-cells",
      "impact": null,
      "tags": [
        "cat.tables",
        "wcag2a",
        "wcag131",
        "section508",
        "section508.22.g",
        "TTv5",
        "TT14.b",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure that <th> elements and elements with role=columnheader/rowheader have data cells they describe",
      "help": "Table headers in a data table must refer to data cells",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/th-has-data-cells?application=axeAPI",
      "nodes": []
    },
    {
      "id": "valid-lang",
      "impact": null,
      "tags": [
        "cat.language",
        "wcag2aa",
        "wcag312",
        "TTv5",
        "TT11.b",
        "EN-301-549",
        "EN-9.3.1.2",
        "ACT"
      ],
      "description": "Ensure lang attributes have valid values",
      "help": "lang attribute must have a valid value",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/valid-lang?application=axeAPI",
      "nodes": []
    },
    {
      "id": "video-caption",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag122",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT17.a",
        "EN-301-549",
        "EN-9.1.2.2"
      ],
      "description": "Ensure <video> elements have captions",
      "help": "<video> elements must have captions",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/video-caption?application=axeAPI",
      "nodes": []
    },
    {
      "id": "no-autoplay-audio",
      "impact": null,
      "tags": [
        "cat.time-and-media",
        "wcag2a",
        "wcag142",
        "TTv5",
        "TT2.a",
        "EN-301-549",
        "EN-9.1.4.2",
        "ACT"
      ],
      "description": "Ensure <video> or <audio> elements do not autoplay audio for more than 3 seconds without a control mechanism to stop or mute the audio",
      "help": "<video> or <audio> elements must not play automatically",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/no-autoplay-audio?application=axeAPI",
      "nodes": []
    }
  ],
  "passes": [
    {
      "id": "aria-allowed-attr",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure an element's role supports its ARIA attributes",
      "help": "Elements must only use supported ARIA attributes",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-allowed-attr?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [
            {
              "id": "aria-allowed-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA attributes are used correctly for the defined role"
            }
          ],
          "none": [
            {
              "id": "aria-unsupported-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA attribute is supported"
            }
          ],
          "impact": null,
          "html": "<nav id=\"primaryNav\" class=\"primary-nav\" aria-label=\"Primary navigation\">",
          "target": [
            "#primaryNav"
          ]
        }
      ]
    },
    {
      "id": "aria-conditional-attr",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure ARIA attributes are used as described in the specification of the element's role",
      "help": "ARIA attributes must be used as specified for the element's role",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-conditional-attr?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [
            {
              "id": "aria-conditional-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "ARIA attribute is allowed"
            }
          ],
          "none": [],
          "impact": null,
          "html": "<nav id=\"primaryNav\" class=\"primary-nav\" aria-label=\"Primary navigation\">",
          "target": [
            "#primaryNav"
          ]
        }
      ]
    },
    {
      "id": "aria-deprecated-role",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure elements do not use deprecated roles",
      "help": "Deprecated ARIA roles must not be used",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-deprecated-role?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "deprecatedrole",
              "data": null,
              "relatedNodes": [],
              "impact": "minor",
              "message": "ARIA role is not deprecated"
            }
          ],
          "impact": null,
          "html": "<div class=\"amount-options\" role=\"group\" aria-label=\"Donation amounts\">",
          "target": [
            ".amount-options"
          ]
        }
      ]
    },
    {
      "id": "aria-hidden-body",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag131",
        "wcag412",
        "EN-301-549",
        "EN-9.1.3.1",
        "EN-9.4.1.2"
      ],
      "description": "Ensure aria-hidden=\"true\" is not present on the document body.",
      "help": "aria-hidden=\"true\" must not be present on the document body",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-hidden-body?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "aria-hidden-body",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "No aria-hidden attribute is present on document body"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<body>",
          "target": [
            "body"
          ]
        }
      ]
    },
    {
      "id": "aria-prohibited-attr",
      "impact": "serious",
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure ARIA attributes are not prohibited for an element's role",
      "help": "Elements must only use permitted ARIA attributes",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-prohibited-attr?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "aria-prohibited-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "ARIA attribute is allowed"
            }
          ],
          "impact": null,
          "html": "<nav id=\"primaryNav\" class=\"primary-nav\" aria-label=\"Primary navigation\">",
          "target": [
            "#primaryNav"
          ]
        }
      ]
    },
    {
      "id": "aria-required-attr",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure elements with ARIA roles have all required ARIA attributes",
      "help": "Required ARIA attributes must be provided",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-required-attr?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "aria-required-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "All required ARIA attributes are present"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<div class=\"amount-options\" role=\"group\" aria-label=\"Donation amounts\">",
          "target": [
            ".amount-options"
          ]
        }
      ]
    },
    {
      "id": "aria-roles",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure all elements with a role attribute use a valid value",
      "help": "ARIA roles used must conform to valid values",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-roles?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "invalidrole",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA role is valid"
            },
            {
              "id": "abstractrole",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Abstract roles are not used"
            },
            {
              "id": "unsupportedrole",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA role is supported"
            }
          ],
          "impact": null,
          "html": "<div class=\"amount-options\" role=\"group\" aria-label=\"Donation amounts\">",
          "target": [
            ".amount-options"
          ]
        }
      ]
    },
    {
      "id": "aria-valid-attr-value",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure all ARIA attributes have valid values",
      "help": "ARIA attributes must conform to valid values",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr-value?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [
            {
              "id": "aria-valid-attr-value",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA attribute values are valid"
            },
            {
              "id": "aria-errormessage",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "aria-errormessage exists and references elements visible to screen readers that use a supported aria-errormessage technique"
            },
            {
              "id": "aria-level",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "aria-level values are valid"
            }
          ],
          "none": [],
          "impact": null,
          "html": "<nav id=\"primaryNav\" class=\"primary-nav\" aria-label=\"Primary navigation\">",
          "target": [
            "#primaryNav"
          ]
        }
      ]
    },
    {
      "id": "aria-valid-attr",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure attributes that begin with aria- are valid ARIA attributes",
      "help": "ARIA attributes must conform to valid names",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "aria-valid-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA attribute name is valid"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<nav id=\"primaryNav\" class=\"primary-nav\" aria-label=\"Primary navigation\">",
          "target": [
            "#primaryNav"
          ]
        }
      ]
    },
    {
      "id": "avoid-inline-spacing",
      "impact": null,
      "tags": [
        "cat.structure",
        "wcag21aa",
        "wcag1412",
        "EN-301-549",
        "EN-9.1.4.12",
        "ACT"
      ],
      "description": "Ensure that text spacing set through style attributes can be adjusted with custom stylesheets",
      "help": "Inline text spacing must be adjustable with custom stylesheets",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/avoid-inline-spacing?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [
            {
              "id": "important-letter-spacing",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Letter-spacing in the style attribute is not set to !important, or meets the minimum"
            },
            {
              "id": "important-word-spacing",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "word-spacing in the style attribute is not set to !important, or meets the minimum"
            },
            {
              "id": "important-line-height",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "line-height in the style attribute is not set to !important, or meets the minimum"
            }
          ],
          "none": [],
          "impact": null,
          "html": "<a class=\"btn btn-secondary\" href=\"#get-involved\" style=\"border-color:#fff;color:#fff;\">Join Event</a>",
          "target": [
            ".hero-actions > .btn-secondary.btn[href$=\"#get-involved\"]"
          ]
        }
      ]
    },
    {
      "id": "button-name",
      "impact": null,
      "tags": [
        "cat.name-role-value",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure buttons have discernible text",
      "help": "Buttons must have discernible text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/button-name?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "button-has-visible-text",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Element has inner text that is visible to screen readers"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<button class=\"amount-btn active\" data-amount=\"25\" type=\"button\">$25</button>",
          "target": [
            ".active"
          ]
        }
      ]
    },
    {
      "id": "bypass",
      "impact": null,
      "tags": [
        "cat.keyboard",
        "wcag2a",
        "wcag241",
        "section508",
        "section508.22.o",
        "TTv5",
        "TT9.a",
        "EN-301-549",
        "EN-9.2.4.1"
      ],
      "description": "Ensure each page has at least one mechanism for a user to bypass navigation and jump straight to the content",
      "help": "Page must have means to bypass repeated blocks",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/bypass?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "internal-link-present",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Valid skip link found"
            },
            {
              "id": "header-present",
              "data": null,
              "relatedNodes": [
                {
                  "html": "<h1>Turning compassion into measurable, lasting change.</h1>",
                  "target": [
                    "h1"
                  ]
                },
                {
                  "html": "<h2>A nonprofit built for accountability, trust, and community power.</h2>",
                  "target": [
                    "#about > .grid-2.container > div:nth-child(1) > h2"
                  ]
                },
                {
                  "html": "<h2>Our impact, measured in lives changed and systems strengthened.</h2>",
                  "target": [
                    "#impact > .container > h2"
                  ]
                },
                {
                  "html": "<h3>Education access</h3>",
                  "target": [
                    ".grid-4 > .card:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3>Health and wellness</h3>",
                  "target": [
                    ".grid-4 > .card:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>Economic mobility</h3>",
                  "target": [
                    ".grid-4 > .card:nth-child(3) > h3"
                  ]
                },
                {
                  "html": "<h3>Climate resilience</h3>",
                  "target": [
                    ".card:nth-child(4) > h3"
                  ]
                },
                {
                  "html": "<h3>Outcome-based funding</h3>",
                  "target": [
                    "#impact > .container > .grid-3.grid > .card:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3>Beneficiary voice</h3>",
                  "target": [
                    "#impact > .container > .grid-3.grid > .card:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>Transparent reporting</h3>",
                  "target": [
                    "#impact > .container > .grid-3.grid > .card:nth-child(3) > h3"
                  ]
                },
                {
                  "html": "<h2>Real people, real progress, and the partners behind it.</h2>",
                  "target": [
                    "#stories > .container > h2"
                  ]
                },
                {
                  "html": "<h3>From struggling reader to classroom leader</h3>",
                  "target": [
                    ".story-card:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3>Rebuilding a career after crisis</h3>",
                  "target": [
                    ".story-card:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>A neighborhood ready before the storm</h3>",
                  "target": [
                    ".story-card:nth-child(3) > h3"
                  ]
                },
                {
                  "html": "<h2>Stronger together: foundations, corporations, and community organizations.</h2>",
                  "target": [
                    "#partners > .container > h2"
                  ]
                },
                {
                  "html": "<h3>Community implementation partners</h3>",
                  "target": [
                    ".container > .grid-2.grid > .card:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3>Corporate and philanthropic allies</h3>",
                  "target": [
                    ".container > .grid-2.grid > .card:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h2>Changing systems, not just symptoms.</h2>",
                  "target": [
                    "#advocacy > .container > h2"
                  ]
                },
                {
                  "html": "<h3>Policy reform</h3>",
                  "target": [
                    "#advocacy > .container > .grid-3.grid > .card:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3>Research and data</h3>",
                  "target": [
                    "#advocacy > .container > .grid-3.grid > .card:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>Coalition building</h3>",
                  "target": [
                    "#advocacy > .container > .grid-3.grid > .card:nth-child(3) > h3"
                  ]
                },
                {
                  "html": "<h3>Current campaign: Every Child Reads</h3>",
                  "target": [
                    "#advocacy > .container > .card > h3"
                  ]
                },
                {
                  "html": "<h2>Track your impact in real time.</h2>",
                  "target": [
                    "#donate > .grid-2.container > div:nth-child(1) > h2"
                  ]
                },
                {
                  "html": "<h3>Winter Learning Fund</h3>",
                  "target": [
                    "#donationTracker > h3"
                  ]
                },
                {
                  "html": "<h2>Volunteer, attend, and help build the next chapter.</h2>",
                  "target": [
                    ".two-col > div > h2"
                  ]
                },
                {
                  "html": "<h3>Volunteer opportunities</h3>",
                  "target": [
                    ".two-col > div > .grid-2.grid > .card:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3>Upcoming events</h3>",
                  "target": [
                    ".two-col > div > .grid-2.grid > .card:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>Partner highlights</h3>",
                  "target": [
                    "aside > .card:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3>Success stories</h3>",
                  "target": [
                    "aside > .card:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>Volunteer spotlights</h3>",
                  "target": [
                    "aside > .card:nth-child(3) > h3"
                  ]
                },
                {
                  "html": "<h2>Trusted by partners, beneficiaries, and advocates.</h2>",
                  "target": [
                    "#testimonials > .container > h2"
                  ]
                },
                {
                  "html": "<h2>Answers for donors, volunteers, and partners.</h2>",
                  "target": [
                    "#faq > .container > h2"
                  ]
                },
                {
                  "html": "<h2>Insights, updates, and stories from the field.</h2>",
                  "target": [
                    "#blog > .container > h2"
                  ]
                },
                {
                  "html": "<h3>What our latest beneficiary survey revealed about access</h3>",
                  "target": [
                    ".blog-card:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3>Why literacy recovery needs more than tutoring</h3>",
                  "target": [
                    ".blog-card:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>How multi-year grants changed partner planning</h3>",
                  "target": [
                    ".blog-card:nth-child(3) > h3"
                  ]
                },
                {
                  "html": "<h2>Ready to make a measurable difference?</h2>",
                  "target": [
                    ".card > h2"
                  ]
                },
                {
                  "html": "<h4>Lumen Hope Foundation</h4>",
                  "target": [
                    "div:nth-child(1) > h4"
                  ]
                },
                {
                  "html": "<h4>Organization</h4>",
                  "target": [
                    "div:nth-child(2) > h4"
                  ]
                },
                {
                  "html": "<h4>Get Involved</h4>",
                  "target": [
                    "div:nth-child(3) > h4"
                  ]
                },
                {
                  "html": "<h4>Contact</h4>",
                  "target": [
                    "div:nth-child(4) > h4"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Page has a heading"
            },
            {
              "id": "landmark",
              "data": null,
              "relatedNodes": [
                {
                  "html": "<main id=\"top\">",
                  "target": [
                    "#top"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Page has a landmark region"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<html lang=\"en\">",
          "target": [
            "html"
          ]
        }
      ]
    },
    {
      "id": "color-contrast",
      "impact": "serious",
      "tags": [
        "cat.color",
        "wcag2aa",
        "wcag143",
        "TTv5",
        "TT13.c",
        "EN-301-549",
        "EN-9.1.4.3",
        "ACT"
      ],
      "description": "Ensure the contrast between foreground and background colors meets WCAG 2 AA minimum contrast ratio thresholds",
      "help": "Elements must meet minimum color contrast ratio thresholds",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/color-contrast?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#1f2933",
                "bgColor": "#f7f5f0",
                "contrastRatio": 13.54,
                "fontSize": "12.6pt (16.8px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element has sufficient color contrast of 13.54"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<span class=\"brand-name\">Lumen Hope Foundation</span>",
          "target": [
            ".brand-name"
          ]
        }
      ]
    },
    {
      "id": "document-title",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag242",
        "TTv5",
        "TT12.a",
        "EN-301-549",
        "EN-9.2.4.2",
        "ACT"
      ],
      "description": "Ensure each HTML document contains a non-empty <title> element",
      "help": "Documents must have <title> element to aid in navigation",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/document-title?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "doc-has-title",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Document has a non-empty <title> element"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<html lang=\"en\">",
          "target": [
            "html"
          ]
        }
      ]
    },
    {
      "id": "duplicate-id-aria",
      "impact": null,
      "tags": [
        "cat.parsing",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure every id attribute value used in ARIA and in labels is unique",
      "help": "IDs used in ARIA and labels must be unique",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/duplicate-id-aria?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "duplicate-id-aria",
              "data": "primaryNav",
              "relatedNodes": [],
              "impact": "critical",
              "message": "Document has no elements referenced with ARIA or labels that share the same id attribute"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<nav id=\"primaryNav\" class=\"primary-nav\" aria-label=\"Primary navigation\">",
          "target": [
            "#primaryNav"
          ]
        }
      ]
    },
    {
      "id": "form-field-multiple-labels",
      "impact": null,
      "tags": [
        "cat.forms",
        "wcag2a",
        "wcag332",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.3.3.2"
      ],
      "description": "Ensure form field does not have multiple label elements",
      "help": "Form field must not have multiple label elements",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/form-field-multiple-labels?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "multiple-label",
              "data": null,
              "relatedNodes": [
                {
                  "html": "<label for=\"customAmount\" class=\"sr-only\" style=\"position:absolute;left:-9999px;\">Custom amount</label>",
                  "target": [
                    "label"
                  ]
                }
              ],
              "impact": "moderate",
              "message": "Form field does not have multiple label elements"
            }
          ],
          "impact": null,
          "html": "<input id=\"customAmount\" type=\"number\" min=\"1\" placeholder=\"Custom amount\" aria-label=\"Custom donation amount\">",
          "target": [
            "#customAmount"
          ]
        }
      ]
    },
    {
      "id": "html-has-lang",
      "impact": null,
      "tags": [
        "cat.language",
        "wcag2a",
        "wcag311",
        "TTv5",
        "TT11.a",
        "EN-301-549",
        "EN-9.3.1.1",
        "ACT"
      ],
      "description": "Ensure every HTML document has a lang attribute",
      "help": "<html> element must have a lang attribute",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/html-has-lang?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "has-lang",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "The <html> element has a lang attribute"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<html lang=\"en\">",
          "target": [
            "html"
          ]
        }
      ]
    },
    {
      "id": "html-lang-valid",
      "impact": null,
      "tags": [
        "cat.language",
        "wcag2a",
        "wcag311",
        "TTv5",
        "TT11.a",
        "EN-301-549",
        "EN-9.3.1.1",
        "ACT"
      ],
      "description": "Ensure the lang attribute of the <html> element has a valid value",
      "help": "<html> element must have a valid value for the lang attribute",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/html-lang-valid?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "valid-lang",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Value of lang attribute is included in the list of valid languages"
            }
          ],
          "impact": null,
          "html": "<html lang=\"en\">",
          "target": [
            "html"
          ]
        }
      ]
    },
    {
      "id": "image-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag111",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT7.a",
        "TT7.b",
        "EN-301-549",
        "EN-9.1.1.1",
        "ACT"
      ],
      "description": "Ensure <img> elements have alternative text or a role of none or presentation",
      "help": "Images must have alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/image-alt?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "has-alt",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Element has an alt attribute"
            }
          ],
          "all": [],
          "none": [
            {
              "id": "alt-space-value",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Element has a valid alt attribute value"
            }
          ],
          "impact": null,
          "html": "<img src=\"https://placehold.co/48x48/0f4c5c/f7f7f2?text=LH&amp;font=montserrat\" alt=\"Lumen Hope Foundation logo\" width=\"48\" height=\"48\">",
          "target": [
            "img[alt=\"Lumen Hope Foundation logo\"]"
          ]
        }
      ]
    },
    {
      "id": "label",
      "impact": null,
      "tags": [
        "cat.forms",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.n",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure every form element has a label",
      "help": "Form elements must have labels",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/label?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "explicit-label",
              "data": null,
              "relatedNodes": [
                {
                  "html": "<label for=\"customAmount\" class=\"sr-only\" style=\"position:absolute;left:-9999px;\">Custom amount</label>",
                  "target": [
                    "label"
                  ]
                }
              ],
              "impact": "critical",
              "message": "Element has an explicit <label>"
            },
            {
              "id": "aria-label",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "aria-label attribute exists and is not empty"
            },
            {
              "id": "non-empty-placeholder",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Element has a placeholder attribute"
            }
          ],
          "all": [],
          "none": [
            {
              "id": "hidden-explicit-label",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Form element has a visible explicit <label>"
            }
          ],
          "impact": null,
          "html": "<input id=\"customAmount\" type=\"number\" min=\"1\" placeholder=\"Custom amount\" aria-label=\"Custom donation amount\">",
          "target": [
            "#customAmount"
          ]
        }
      ]
    },
    {
      "id": "link-in-text-block",
      "impact": "serious",
      "tags": [
        "cat.color",
        "wcag2a",
        "wcag141",
        "TTv5",
        "TT13.a",
        "EN-301-549",
        "EN-9.1.4.1"
      ],
      "description": "Ensure links are distinguished from surrounding text in a way that does not rely on color",
      "help": "Links must be distinguishable without relying on color",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/link-in-text-block?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "link-in-text-block-style",
              "data": null,
              "relatedNodes": [
                {
                  "html": "<div>",
                  "target": [
                    "#about > .grid-2.container > div:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Links can be distinguished from surrounding text by visual styling"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<a class=\"btn btn-secondary\" href=\"#impact\">Learn More</a>",
          "target": [
            ".btn-secondary.btn[href$=\"#impact\"]"
          ]
        }
      ]
    },
    {
      "id": "link-name",
      "impact": null,
      "tags": [
        "cat.name-role-value",
        "wcag2a",
        "wcag244",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.2.4.4",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure links have discernible text",
      "help": "Links must have discernible text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/link-name?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "has-visible-text",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element has text that is visible to screen readers"
            }
          ],
          "all": [],
          "none": [
            {
              "id": "focusable-no-name",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element is not in tab order or has accessible text"
            }
          ],
          "impact": null,
          "html": "<a class=\"brand\" href=\"#top\">",
          "target": [
            ".brand"
          ]
        }
      ]
    },
    {
      "id": "list",
      "impact": null,
      "tags": [
        "cat.structure",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure that lists are structured correctly",
      "help": "<ul> and <ol> must only directly contain <li>, <script> or <template> elements",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/list?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "only-listitems",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "List element only has direct children that are allowed inside <li> elements"
            }
          ],
          "impact": null,
          "html": "<ul>",
          "target": [
            "#primaryNav > ul"
          ]
        }
      ]
    },
    {
      "id": "listitem",
      "impact": null,
      "tags": [
        "cat.structure",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure <li> elements are used semantically",
      "help": "<li> elements must be contained in a <ul> or <ol>",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/listitem?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "listitem",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "List item has a <ul>, <ol> or role=\"list\" parent element"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<li><a href=\"#about\">About</a></li>",
          "target": [
            "#primaryNav > ul > li:nth-child(1)"
          ]
        }
      ]
    },
    {
      "id": "meta-viewport",
      "impact": null,
      "tags": [
        "cat.sensory-and-visual-cues",
        "wcag2aa",
        "wcag144",
        "EN-301-549",
        "EN-9.1.4.4",
        "ACT"
      ],
      "description": "Ensure <meta name=\"viewport\"> does not disable text scaling and zooming",
      "help": "Zooming and scaling must not be disabled",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/meta-viewport?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "meta-viewport",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "<meta> tag does not disable zooming on mobile devices"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">",
          "target": [
            "meta[name=\"viewport\"]"
          ]
        }
      ]
    },
    {
      "id": "nested-interactive",
      "impact": null,
      "tags": [
        "cat.keyboard",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure interactive controls are not nested as they are not always announced by screen readers or can cause focus problems for assistive technologies",
      "help": "Interactive controls must not be nested",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/nested-interactive?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "no-focusable-content",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element does not have focusable descendants"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<img src=\"https://placehold.co/48x48/0f4c5c/f7f7f2?text=LH&amp;font=montserrat\" alt=\"Lumen Hope Foundation logo\" width=\"48\" height=\"48\">",
          "target": [
            "img[alt=\"Lumen Hope Foundation logo\"]"
          ]
        }
      ]
    },
    {
      "id": "summary-name",
      "impact": null,
      "tags": [
        "cat.name-role-value",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure summary elements have discernible text",
      "help": "Summary elements must have discernible text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/summary-name?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "has-visible-text",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element has text that is visible to screen readers"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<summary>How are donations used?</summary>",
          "target": [
            "details:nth-child(1) > summary"
          ]
        }
      ]
    },
    {
      "id": "target-size",
      "impact": null,
      "tags": [
        "cat.sensory-and-visual-cues",
        "wcag22aa",
        "wcag258"
      ],
      "description": "Ensure touch targets have sufficient size and space",
      "help": "All touch targets must be 24px large, or leave sufficient space",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/target-size?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "target-size",
              "data": {
                "minSize": 24,
                "width": 324.9,
                "height": 48
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "Control has sufficient size (324.9px by 48px, should be at least 24px by 24px)"
            },
            {
              "id": "target-offset",
              "data": {
                "closestOffset": 24,
                "minOffset": 24
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "Target has sufficient space from its closest neighbors. Safe clickable space has a diameter of 24px which is at least 24px."
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<a class=\"brand\" href=\"#top\">",
          "target": [
            ".brand"
          ]
        }
      ]
    }
  ],
  "incomplete": [
    {
      "id": "aria-prohibited-attr",
      "impact": "serious",
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure ARIA attributes are not prohibited for an element's role",
      "help": "Elements must only use permitted ARIA attributes",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-prohibited-attr?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "aria-prohibited-attr",
              "data": {
                "role": null,
                "nodeName": "div",
                "messageKey": "noRoleSingular",
                "prohibited": [
                  "aria-label"
                ]
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "aria-label attribute is not well supported on a div with no valid role attribute."
            }
          ],
          "impact": "serious",
          "html": "<div class=\"hero-stats\" aria-label=\"Impact highlights\">",
          "target": [
            ".hero-stats"
          ],
          "failureSummary": "Fix all of the following:\n  aria-label attribute is not well supported on a div with no valid role attribute."
        }
      ]
    },
    {
      "id": "color-contrast",
      "impact": "serious",
      "tags": [
        "cat.color",
        "wcag2aa",
        "wcag143",
        "TTv5",
        "TT13.c",
        "EN-301-549",
        "EN-9.1.4.3",
        "ACT"
      ],
      "description": "Ensure the contrast between foreground and background colors meets WCAG 2 AA minimum contrast ratio thresholds",
      "help": "Elements must meet minimum color contrast ratio thresholds",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/color-contrast?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": null,
                "bgColor": null,
                "contrastRatio": 0,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": "bgGradient",
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section class=\"hero\">",
                  "target": [
                    ".hero"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element's background color could not be determined due to a background gradient"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">Community-led change since 2011</span>",
          "target": [
            ".hero > .container > div:nth-child(1) > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element's background color could not be determined due to a background gradient"
        }
      ]
    },
    {
      "id": "link-in-text-block",
      "impact": "serious",
      "tags": [
        "cat.color",
        "wcag2a",
        "wcag141",
        "TTv5",
        "TT13.a",
        "EN-301-549",
        "EN-9.1.4.1"
      ],
      "description": "Ensure links are distinguished from surrounding text in a way that does not rely on color",
      "help": "Links must be distinguishable without relying on color",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/link-in-text-block?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "link-in-text-block",
              "data": {
                "messageKey": "bgOverlap"
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"card story-card\">",
                  "target": [
                    ".story-card:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element's contrast ratio could not be determined because of element overlap"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<a href=\"#blog\">Learn More</a>",
          "target": [
            ".story-card:nth-child(1) > a[href$=\"#blog\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element's contrast ratio could not be determined because of element overlap"
        }
      ]
    }
  ],
  "violations": [
    {
      "id": "aria-prohibited-attr",
      "impact": "serious",
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure ARIA attributes are not prohibited for an element's role",
      "help": "Elements must only use permitted ARIA attributes",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-prohibited-attr?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "aria-prohibited-attr",
              "data": {
                "role": null,
                "nodeName": "div",
                "messageKey": "noRoleSingular",
                "prohibited": [
                  "aria-label"
                ]
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "aria-label attribute cannot be used on a div with no valid role attribute."
            }
          ],
          "impact": "serious",
          "html": "<div class=\"progress-bar\" aria-label=\"Donation progress\">\n            <div class=\"progress-fill\" id=\"progressFill\" style=\"width: 65.35%;\"></div>\n          </div>",
          "target": [
            ".progress-bar"
          ],
          "failureSummary": "Fix all of the following:\n  aria-label attribute cannot be used on a div with no valid role attribute."
        }
      ]
    },
    {
      "id": "color-contrast",
      "impact": "serious",
      "tags": [
        "cat.color",
        "wcag2aa",
        "wcag143",
        "TTv5",
        "TT13.c",
        "EN-301-549",
        "EN-9.1.4.3",
        "ACT"
      ],
      "description": "Ensure the contrast between foreground and background colors meets WCAG 2 AA minimum contrast ratio thresholds",
      "help": "Elements must meet minimum color contrast ratio thresholds",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/color-contrast?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#f7f5f0",
                "contrastRatio": 3.45,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.45 (foreground color: #b87500, background color: #f7f5f0, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">About Lumen Hope</span>",
          "target": [
            "#about > .grid-2.container > div:nth-child(1) > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.45 (foreground color: #b87500, background color: #f7f5f0, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#ffffff",
                "contrastRatio": 3.76,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section id=\"impact\" class=\"section section-alt\">",
                  "target": [
                    "#impact"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">Impact measurement</span>",
          "target": [
            "#impact > .container > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#f7f5f0",
                "contrastRatio": 3.45,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.45 (foreground color: #b87500, background color: #f7f5f0, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">Impact stories</span>",
          "target": [
            "#stories > .container > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.45 (foreground color: #b87500, background color: #f7f5f0, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#ffffff",
                "contrastRatio": 3.76,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"card story-card\">",
                  "target": [
                    ".story-card:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<div class=\"story-meta\">Education \u2022 March 2025</div>",
          "target": [
            ".story-card:nth-child(1) > .story-meta"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#ffffff",
                "contrastRatio": 3.76,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"card story-card\">",
                  "target": [
                    ".story-card:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<div class=\"story-meta\">Economic Mobility \u2022 February 2025</div>",
          "target": [
            ".story-card:nth-child(2) > .story-meta"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#ffffff",
                "contrastRatio": 3.76,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"card story-card\">",
                  "target": [
                    ".story-card:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<div class=\"story-meta\">Climate Resilience \u2022 January 2025</div>",
          "target": [
            ".story-card:nth-child(3) > .story-meta"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#ffffff",
                "contrastRatio": 3.76,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section id=\"partners\" class=\"section section-alt\">",
                  "target": [
                    "#partners"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">Partnership highlights</span>",
          "target": [
            "#partners > .container > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#f7f5f0",
                "contrastRatio": 3.45,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.45 (foreground color: #b87500, background color: #f7f5f0, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">Advocacy initiatives</span>",
          "target": [
            "#advocacy > .container > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.45 (foreground color: #b87500, background color: #f7f5f0, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#ffffff",
                "contrastRatio": 3.76,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section id=\"donate\" class=\"section section-alt\">",
                  "target": [
                    "#donate"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">Donation tracker</span>",
          "target": [
            "#donate > .grid-2.container > div:nth-child(1) > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#f7f5f0",
                "contrastRatio": 3.45,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.45 (foreground color: #b87500, background color: #f7f5f0, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">Get involved</span>",
          "target": [
            ".two-col > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.45 (foreground color: #b87500, background color: #f7f5f0, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#ffffff",
                "contrastRatio": 3.76,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section id=\"testimonials\" class=\"section section-alt\">",
                  "target": [
                    "#testimonials"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">Testimonials</span>",
          "target": [
            "#testimonials > .container > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#f7f5f0",
                "contrastRatio": 3.45,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.45 (foreground color: #b87500, background color: #f7f5f0, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">Frequently asked questions</span>",
          "target": [
            "#faq > .container > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.45 (foreground color: #b87500, background color: #f7f5f0, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#ffffff",
                "contrastRatio": 3.76,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section id=\"blog\" class=\"section section-alt\">",
                  "target": [
                    "#blog"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">Blog</span>",
          "target": [
            "#blog > .container > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b87500",
                "bgColor": "#ffffff",
                "contrastRatio": 3.76,
                "fontSize": "9.8pt (13.12px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"card\" style=\"text-align:center; padding:3rem 2rem;\">",
                  "target": [
                    "#contact > .container > .card"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"eyebrow\">Contact and support</span>",
          "target": [
            ".card > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.76 (foreground color: #b87500, background color: #ffffff, font size: 9.8pt (13.12px), font weight: bold). Expected contrast ratio of 4.5:1"
        }
      ]
    }
  ],
  "coverage": {
    "contract": "main-document-vertical-scroll",
    "complete": true,
    "positions": [
      {
        "y": 0,
        "height": 11363
      },
      {
        "y": 576,
        "height": 11363
      },
      {
        "y": 1152,
        "height": 11363
      },
      {
        "y": 1728,
        "height": 11363
      },
      {
        "y": 2304,
        "height": 11363
      },
      {
        "y": 2880,
        "height": 11363
      },
      {
        "y": 3456,
        "height": 11363
      },
      {
        "y": 4032,
        "height": 11363
      },
      {
        "y": 4608,
        "height": 11363
      },
      {
        "y": 5184,
        "height": 11363
      },
      {
        "y": 5760,
        "height": 11363
      },
      {
        "y": 6336,
        "height": 11363
      },
      {
        "y": 6912,
        "height": 11363
      },
      {
        "y": 7488,
        "height": 11363
      },
      {
        "y": 8064,
        "height": 11363
      },
      {
        "y": 8640,
        "height": 11363
      },
      {
        "y": 9216,
        "height": 11363
      },
      {
        "y": 9792,
        "height": 11363
      },
      {
        "y": 10368,
        "height": 11363
      },
      {
        "y": 10643,
        "height": 11363
      }
    ],
    "scans": 21,
    "max_states": 512,
    "settle_ms": 5000,
    "page_timeout_seconds": 150,
    "layout_stability": "consecutive 100ms size samples within one CSS pixel",
    "animation_settling": "finite animations present when scroll resources are ready finish or are cancelled",
    "interactive_states": "not exercised",
    "horizontal_scroll": "not exercised"
  }
}
System Prompt
You are a lead web developer at a top digital agency, tasked with creating a one-page website for a new client based on the given specifications, delivered as an HTML file. First non-whitespace char '<', last non-whitespace char '>'. Use the following services to generate placeholder images where needed:
- placehold.co (text): https://placehold.co/[{w}x{h}|{size}][/{bg-color}/{text-color}]?text={text}&font=[lato|lora|montserrat|noto sans|open sans|oswald|playfair display|poppins|pt sans|raleway|roboto|source sans|source sans pro]
- picsum.photos (photos): https://picsum.photos/[{w}/{h}|{size}]?[grayscale][&blur={1-10}]
- pravatar.cc (avatars): https://i.pravatar.cc/{size}?u={identifier}
Choose sizes appropriate to layout.
User Prompt
Create a **complete, polished, production-quality** primary web page for a new client in the "Non-Profit/Charity" sector.
Your goal is to generate the full HTML code for a page that is not just functional but also visually compelling, content-rich, and feels like a finished product ready for launch.

**Client & Category:**
- Industry: "Non-Profit/Charity"
- Description: Charitable organizations, non-profit initiatives, volunteering, and fundraising resources.

**Your Creative Task:**
1.  **Invent:** Create a unique, professional-sounding site name and a strong tagline fitting the "Non-Profit/Charity" category.
2.  **Define Page:** Determine the most effective primary page type (e.g., homepage, service landing page, category portal) to showcase this fictional entity.
3.  **Design:** Develop an opinionated, modern, and professional layout. Make distinct choices about structure and flow.

**Content & Structure Requirements (Deliver a COMPLETE page):**
-   **Overall:** The final page must feel substantial and complete, with realistic amounts of text (multiple paragraphs per section where appropriate, avoid single sentences), well-integrated placeholder images, and logical flow. It should look like a real website a business would proudly use.
-   **HEADER:** Include the invented site name, tagline, a logo placeholder image, and a primary navigation bar. Ensure the navigation has **at least 5-7 clearly defined, relevant links** including: "Blog", "Impact", "Partners".
-   **MAIN CONTENT:** Structure this area with **at least 3-4 distinct, well-developed sections**.
    -   Address key topics relevant to the "Non-Profit/Charity" category. Consider themes similar to: "Impact Stories", "Partnership Highlights", "Advocacy Initiatives".
    -   **Content Depth:** Populate each section with **substantial, realistic text** (multiple sentences/paragraphs). Use authentic industry language and terminology like: "impact measurement", "endowment", "beneficiary".
    -   **Visuals:** Integrate relevant placeholder images logically within the content sections.
    -   **Calls to Action:** Include clear and contextually relevant CTAs. Use strong verbs similar to: "Take Action", "Join Event", "Learn More".
-   **ENGAGEMENT (Recommended):** Strongly consider incorporating **one meaningful interactive element** that would genuinely benefit a user in the "Non-Profit/Charity" sector. Ideas similar but not limited to: "donation tracker".
-   **SIDEBAR (Optional):** If your design includes a sidebar, populate it with **useful, relevant content**. Ideas: "partner highlights", "success stories", "volunteer spotlights".
-   **FOOTER:** Include a professional footer with invented contact details, copyright (current year), social media links, and standard links (Privacy, Terms).
-   **MODERN WEB PATTERNS:** Include modern web patterns like testimonial cards, feature grids, or FAQ accordions where appropriate.