Qwen Qwen3 Coder Next – Non Profit Charity
via Parasail · Generated
- AIMAC Debt 4.37
- Cost $0.008
- Total Violations 12
- HTML Size 37 KB
- Em Dashes 16
Screenshot
View Live Page
Accessibility Issues Found
12 Serious
-
color-contrast serious 12 instances
Elements must meet minimum color contrast ratio thresholds
Example HTML
<a href="#donate" class="cta-btn">Donate Now</a>
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>RISE & THRIVE | Empowering Communities Through Sustainable Change</title>
<meta name="description" content="RISE & THRIVE is a 501(c)(3) non-profit organization dedicated to advancing equity, resilience, and opportunity through community-led programs in education, nutrition, and workforce development.">
<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=Poppins:wght@300;400;500;600;700&family=Playfair+Display:wght@700;800;900&display=swap" rel="stylesheet">
<style>
:root {
--primary-color: #1a4d3d;
--primary-dark: #133b2f;
--accent-color: #f39c12;
--accent-light: #f7c77b;
--text-color: #333;
--text-light: #666;
--light-gray: #f8f9fa;
--white: #ffffff;
--shadow-sm: 0 2px 10px rgba(0, 0, 0, 0.06);
--shadow-md: 0 8px 25px rgba(0, 0, 0, 0.1);
--shadow-lg: 0 15px 40px rgba(0, 0, 0, 0.12);
--transition: all 0.3s ease;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Poppins', sans-serif;
line-height: 1.7;
color: var(--text-color);
background-color: var(--white);
}
h1, h2, h3, h4 {
font-family: 'Playfair Display', serif;
font-weight: 700;
line-height: 1.3;
margin-bottom: 1rem;
}
h2 {
font-size: 2.25rem;
color: var(--primary-color);
margin-bottom: 0.75rem;
}
h3 {
font-size: 1.75rem;
}
p {
margin-bottom: 1.25rem;
color: var(--text-color);
font-size: 1.05rem;
}
.container {
max-width: 1200px;
margin: 0 auto;
padding: 0 1.5rem;
}
.section {
padding: 5rem 0;
}
.section-header {
text-align: center;
margin-bottom: 3.5rem;
}
.section-header h2 {
margin-bottom: 0.5rem;
}
.section-header p {
max-width: 650px;
margin: 0 auto;
font-size: 1.1rem;
color: var(--text-light);
}
/* Header & Nav */
.header {
background-color: var(--white);
position: sticky;
top: 0;
z-index: 1000;
box-shadow: 0 2px 15px rgba(0, 0, 0, 0.05);
}
.nav-container {
display: flex;
justify-content: space-between;
align-items: center;
height: 90px;
}
.logo {
display: flex;
align-items: center;
gap: 1rem;
text-decoration: none;
color: var(--primary-color);
}
.logo img {
width: 60px;
height: 60px;
border-radius: 50%;
object-fit: cover;
}
.logo-text {
font-family: 'Playfair Display', serif;
font-size: 1.75rem;
font-weight: 800;
letter-spacing: -0.5px;
}
.nav-links {
display: flex;
gap: 2rem;
}
.nav-links a {
text-decoration: none;
color: var(--primary-color);
font-weight: 500;
font-size: 1rem;
transition: var(--transition);
position: relative;
}
.nav-links a:hover {
color: var(--accent-color);
}
.nav-links a::after {
content: '';
position: absolute;
bottom: -5px;
left: 0;
width: 0;
height: 2px;
background-color: var(--accent-color);
transition: var(--transition);
}
.nav-links a:hover::after {
width: 100%;
}
.cta-btn {
background-color: var(--accent-color);
color: var(--white);
padding: 0.75rem 1.5rem;
border-radius: 4px;
text-decoration: none;
font-weight: 600;
transition: var(--transition);
display: inline-block;
}
.cta-btn:hover {
background-color: var(--primary-dark);
transform: translateY(-2px);
}
/* Hero Section */
.hero {
position: relative;
min-height: 85vh;
display: flex;
align-items: center;
padding: 5rem 0;
background: linear-gradient(rgba(26, 77, 61, 0.7), rgba(26, 77, 61, 0.7)),
url('https://picsum.photos/1920/1080?grayscale&blur=2') center/cover no-repeat;
color: var(--white);
}
.hero-content {
max-width: 700px;
}
.hero h1 {
font-size: 3.75rem;
margin-bottom: 1.5rem;
color: var(--white);
}
.hero p {
font-size: 1.35rem;
margin-bottom: 2.5rem;
opacity: 0.9;
max-width: 600px;
}
/* Stats Section */
.stats-section {
background-color: var(--primary-color);
color: var(--white);
padding: 3.5rem 0;
}
.stats-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 2.5rem;
text-align: center;
}
.stat-item {
display: flex;
flex-direction: column;
align-items: center;
}
.stat-number {
font-size: 3rem;
font-weight: 800;
font-family: 'Poppins', sans-serif;
color: var(--accent-light);
margin-bottom: 0.25rem;
}
.stat-label {
font-size: 1.1rem;
opacity: 0.9;
}
/* About Section */
.about-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 3rem;
align-items: center;
}
.about-text p {
font-size: 1.05rem;
color: var(--text-light);
}
.about-img {
border-radius: 8px;
overflow: hidden;
box-shadow: var(--shadow-lg);
}
.mission-statement {
background-color: var(--light-gray);
padding: 2.5rem;
border-radius: 8px;
margin-top: 2.5rem;
position: relative;
border-left: 4px solid var(--accent-color);
}
.mission-statement::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 4px;
height: 100%;
background-color: var(--accent-light);
border-radius: 4px 0 0 4px;
}
/* Impact Section */
.impact-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 2.5rem;
}
.impact-card {
background: var(--white);
border-radius: 10px;
overflow: hidden;
box-shadow: var(--shadow-md);
transition: var(--transition);
}
.impact-card:hover {
transform: translateY(-10px);
box-shadow: var(--shadow-lg);
}
.impact-img {
height: 200px;
width: 100%;
object-fit: cover;
}
.impact-content {
padding: 2rem;
}
.impact-content h3 {
color: var(--primary-color);
margin-bottom: 1rem;
}
.impact-content p {
font-size: 1rem;
margin-bottom: 1.5rem;
}
.read-more {
color: var(--primary-color);
font-weight: 600;
text-decoration: none;
display: flex;
align-items: center;
gap: 0.5rem;
transition: var(--transition);
}
.read-more:hover {
gap: 1rem;
color: var(--accent-color);
}
/* Interactive Portal Section */
.portal-section {
background-color: var(--light-gray);
position: relative;
}
.portal-content {
display: grid;
grid-template-columns: 1.2fr 1fr;
gap: 3.5rem;
align-items: center;
}
.portal-text h2 {
margin-bottom: 1.5rem;
}
.portal-form {
background: var(--white);
padding: 2.5rem;
border-radius: 10px;
box-shadow: var(--shadow-lg);
position: sticky;
top: 120px;
}
.form-group {
margin-bottom: 1.25rem;
}
.form-group label {
display: block;
margin-bottom: 0.5rem;
font-weight: 600;
font-size: 0.95rem;
}
.form-group input,
.form-group select {
width: 100%;
padding: 0.75rem;
border: 1px solid #ddd;
border-radius: 6px;
font-family: 'Poppins', sans-serif;
font-size: 1rem;
transition: var(--transition);
}
.form-group input:focus,
.form-group select:focus {
outline: none;
border-color: var(--primary-color);
box-shadow: 0 0 0 3px rgba(26, 77, 61, 0.15);
}
.portal-form h3 {
margin-bottom: 1.75rem;
color: var(--primary-color);
}
/* Program Section */
.programs-section {
background-color: var(--white);
}
.programs-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 2.5rem;
}
.program-card {
padding: 2.5rem;
border-radius: 10px;
background-color: var(--light-gray);
transition: var(--transition);
}
.program-card:hover {
background-color: var(--primary-color);
transform: translateY(-5px);
box-shadow: var(--shadow-lg);
color: var(--white);
}
.program-card h3 {
color: var(--primary-color);
margin-bottom: 1rem;
}
.program-card:hover h3 {
color: var(--white);
}
.program-card p {
font-size: 1rem;
color: var(--text-light);
}
.program-card:hover p {
color: rgba(255, 255, 255, 0.9);
}
.program-icon {
width: 50px;
height: 50px;
margin-bottom: 1.5rem;
border-radius: 50%;
background-color: var(--accent-light);
display: flex;
align-items: center;
justify-content: center;
color: var(--primary-color);
font-size: 1.5rem;
font-weight: 700;
}
.program-card:hover .program-icon {
background-color: var(--accent-light);
color: var(--white);
}
/* Testimonials */
.testimonials {
background-color: var(--white);
text-align: center;
}
.testimonial-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 2.5rem;
}
.testimonial-card {
background: var(--light-gray);
padding: 2.5rem;
border-radius: 10px;
position: relative;
}
.quote-icon {
position: absolute;
top: 2rem;
left: 2rem;
color: var(--accent-light);
font-size: 3rem;
opacity: 0.2;
}
.testimonial-card p {
font-style: italic;
font-size: 1.1rem;
margin-bottom: 1.5rem;
position: relative;
z-index: 1;
}
.testimonial-author {
display: flex;
align-items: center;
justify-content: center;
gap: 1rem;
}
.author-img {
width: 60px;
height: 60px;
border-radius: 50%;
object-fit: cover;
}
.author-info h4 {
margin-bottom: 0;
}
.author-info span {
color: var(--accent-color);
font-size: 0.9rem;
}
/* FAQ Section */
.faq-section {
background-color: var(--light-gray);
}
.faq-container {
max-width: 800px;
margin: 0 auto;
}
.faq-item {
background: var(--white);
margin-bottom: 1rem;
border-radius: 8px;
box-shadow: var(--shadow-sm);
overflow: hidden;
}
.faq-question {
padding: 1.5rem;
cursor: pointer;
display: flex;
justify-content: space-between;
align-items: center;
font-weight: 600;
color: var(--primary-color);
transition: var(--transition);
}
.faq-question:hover {
background-color: #f0f4f8;
}
.faq-answer {
max-height: 0;
overflow: hidden;
transition: max-height 0.4s ease-out;
background-color: var(--white);
}
.faq-answer-content {
padding: 0 1.5rem 1.5rem;
color: var(--text-light);
line-height: 1.7;
}
.faq-question.active::after {
content: '−';
font-size: 1.5rem;
font-weight: 400;
}
.faq-question::after {
content: '+';
font-size: 1.5rem;
font-weight: 400;
}
/* CTA Section */
.cta-section {
background: linear-gradient(rgba(26, 77, 61, 0.9), rgba(26, 77, 61, 0.9)),
url('https://picsum.photos/1920/800?grayscale') center/cover no-repeat;
color: var(--white);
text-align: center;
padding: 6rem 0;
}
.cta-content {
max-width: 700px;
margin: 0 auto;
}
.cta-buttons {
display: flex;
justify-content: center;
gap: 1.5rem;
margin-top: 2.5rem;
flex-wrap: wrap;
}
.btn-outline {
background-color: transparent;
border: 2px solid var(--accent-light);
color: var(--accent-light);
padding: 0.9rem 2rem;
border-radius: 50px;
text-decoration: none;
font-weight: 600;
transition: var(--transition);
}
.btn-outline:hover {
background-color: var(--accent-light);
color: var(--white);
transform: translateY(-3px);
}
/* Footer */
.footer {
background-color: var(--primary-dark);
color: rgba(255, 255, 255, 0.85);
padding: 4rem 0 1.5rem;
}
.footer-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 3rem;
margin-bottom: 3rem;
}
.footer-col h4 {
color: var(--white);
margin-bottom: 1.5rem;
font-size: 1.25rem;
}
.footer-links {
list-style: none;
padding: 0;
}
.footer-links li {
margin-bottom: 0.75rem;
}
.footer-links a {
text-decoration: none;
color: rgba(255, 255, 255, 0.8);
transition: var(--transition);
}
.footer-links a:hover {
color: var(--accent-light);
padding-left: 0.3rem;
}
.social-links {
display: flex;
gap: 1.25rem;
margin-top: 1.5rem;
}
.social-links a {
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
background-color: rgba(255, 255, 255, 0.1);
border-radius: 50%;
color: var(--white);
text-decoration: none;
transition: var(--transition);
}
.social-links a:hover {
background-color: var(--accent-color);
transform: translateY(-3px);
}
.copyright {
text-align: center;
padding-top: 2rem;
border-top: 1px solid rgba(255, 255, 255, 0.1);
font-size: 0.95rem;
color: rgba(255, 255, 255, 0.6);
}
.mobile-menu-btn {
display: none;
background: none;
border: none;
font-size: 1.8rem;
color: var(--primary-color);
cursor: pointer;
}
@media (max-width: 992px) {
.portal-content {
grid-template-columns: 1fr;
}
.portal-form {
position: static;
}
}
@media (max-width: 768px) {
.nav-links {
display: none;
}
.hero h1 {
font-size: 2.75rem;
}
.about-grid {
grid-template-columns: 1fr;
}
.nav-container {
position: relative;
}
.mobile-menu-btn {
display: block;
}
.nav-links-active {
display: flex;
flex-direction: column;
position: absolute;
top: 90px;
left: 0;
width: 100%;
background-color: var(--white);
padding: 1rem 0;
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}
.nav-links-active a {
padding: 0.85rem 1.5rem;
text-align: center;
display: block;
border-bottom: 1px solid #eee;
}
.nav-links-active a:last-child {
border-bottom: none;
}
.cta-btn {
text-align: center;
width: 100%;
margin-top: 0.5rem;
}
}
</style>
</head>
<body>
<!-- Header -->
<header class="header">
<div class="container nav-container">
<a href="#" class="logo">
<img src="https://placehold.co/120x120/1a4d3d/ffffff?text=R+T&font=playfair+display" alt="RISE & THRIVE Logo">
<div class="logo-text">RISE & THRIVE</div>
</a>
<button class="mobile-menu-btn" id="mobileMenuBtn">☰</button>
<nav class="nav-links" id="navLinks">
<a href="#about">About</a>
<a href="#programs">Programs</a>
<a href="#impact">Impact</a>
<a href="#testimonials">Stories</a>
<a href="#faq">FAQ</a>
<a href="#portal">Donate</a>
<a href="#contact">Contact</a>
<a href="#donate" class="cta-btn">Donate Now</a>
</nav>
</div>
</header>
<!-- Hero Section -->
<section class="hero">
<div class="container hero-content">
<h1>Building Thriving Communities Through Sustainable Change</h1>
<p>We empower underserved communities through education, nutrition, and workforce development programs—because lasting impact starts with dignified partnerships and locally-led solutions.</p>
<a href="#portal" class="cta-btn" style="background-color: var(--accent-color);">Join Our Mission</a>
</div>
</section>
<!-- Stats Section -->
<section class="stats-section">
<div class="container">
<div class="stats-grid">
<div class="stat-item">
<div class="stat-number">12,485</div>
<div class="stat-label">Individuals Impacted Annually</div>
</div>
<div class="stat-item">
<div class="stat-number">850+</div>
<div class="stat-label">Volunteer Hours Contributed Monthly</div>
</div>
<div class="stat-item">
<div class="stat-number">$3.2M</div>
<div class="stat-label">Resources Mobilized Last Year</div>
</div>
<div class="stat-item">
<div class="stat-number">92%</div>
<div class="stat-label">Program Efficiency (92% of donations fund direct services)</div>
</div>
</div>
</div>
</section>
<!-- About Section -->
<section class="section" id="about">
<div class="container">
<div class="about-grid">
<div class="about-img">
<img src="https://picsum.photos/600/500?grayscale" alt="Community gathering at an RISE & THRIVE event">
</div>
<div class="about-text">
<h2>Who We Are</h2>
<p>RISE & THRIVE is a registered 501(c)(3) non-profit organization dedicated to advancing equity, resilience, and opportunity through sustainable, community-led development initiatives. Founded in 2015, we believe that systemic change happens when communities themselves define their vision for the future and co-create solutions with dedicated allies.</p>
<p>Our work centers on three core pillars: education equity, nutritional security, and workforce development. We partner directly with schools, local nonprofits, faith-based organizations, and municipal agencies to ensure our programs respond to genuine community needs—not just perceived gaps. By centering lived experience in our design process, we’ve created a model where programs grow from within communities, not atop them.</p>
<div class="mission-statement">
<p><strong>"Our mission is to create pathways where individuals and families can rise to their full potential—building resilience through sustainable practices, accessible education, and dignified employment opportunities."</strong></p>
</div>
<p>We maintain full transparency in our operations and financial reporting. As a fully accredited charity with an A+ rating from Charity Navigator, we ensure your contributions directly support community empowerment—92% of every dollar goes straight to program delivery, with only 8% allocated to administrative costs and 10% to fundraising efforts.</p>
</div>
</div>
</div>
</section>
<!-- Impact Section -->
<section class="section" id="impact">
<div class="container">
<div class="section-header">
<h2>Our Impact in Action</h2>
<p>Real stories of transformation from the communities we serve—where dignity, agency, and innovation drive measurable change.</p>
</div>
<div class="impact-grid">
<div class="impact-card">
<img src="https://picsum.photos/600/400?grayscale&blur=3" alt="Students in a RISE & THRIVE tutoring session" class="impact-img">
<div class="impact-content">
<h3>Education Equity</h3>
<p>In South Los Angeles, our After-School Enrichment Program reduced the local high school dropout rate by 38% in just two years. By pairing certified educators with community mentors and providing meal support and academic counseling, we created a holistic learning environment where students thrive academically and socially. One participant, Maya Rodriguez, recently earned her first college scholarship in computer science—she’s now mentoring younger students in our program.</p>
<a href="#" class="read-more">Learn More <span>→</span></a>
</div>
</div>
<div class="impact-card">
<img src="https://picsum.photos/600/400?grayscale&blur=5" alt="Community members at a nutrition workshop" class="impact-img">
<div class="impact-content">
<h3>Nutritional Security</h3>
<p>Our Food Sovereignty Initiative has transformed five urban blighted lots into community gardens across metro Detroit. These gardens now produce over 12,000 pounds of fresh produce annually—distributed through weekly farmers markets, school meal programs, and SNAP enrollment support. The initiative has trained 150+ residents in sustainable urban agriculture, with 78% becoming certified Master Gardeners who now lead workshops for neighbors.</p>
<a href="#" class="read-more">Learn More <span>→</span></a>
</div>
</div>
<div class="impact-card">
<img src="https://picsum.photos/600/400?grayscale&blur=4" alt="Graduates at a workforce development ceremony" class="impact-img">
<div class="impact-content">
<h3>Workforce Development</h3>
<p>Our Tech Pathways Program has placed 327 individuals in living-wage tech roles since 2021, with 89% retention after one year. We combine industry-aligned training (coding, cybersecurity, UX/UI) with trauma-informed career coaching and employer partnerships at companies like Salesforce, Intuit, and local minority-owned startups. Participants receive full-stack training, portfolio development, and guaranteed interviews—resulting in an average starting salary of $65,000.</p>
<a href="#" class="read-more">Learn More <span>→</span></a>
</div>
</div>
</div>
</div>
</section>
<!-- Interactive Portal Section -->
<section class="section portal-section" id="portal">
<div class="container">
<div class="portal-content">
<div class="portal-text">
<h2>Start Your Journey of Impact</h2>
<p>Whether you're looking to volunteer your time, contribute financially, or explore partnership opportunities, RISE & THRIVE offers multiple ways to become part of transformative change. Use our interactive giving portal to:</p>
<ul style="margin-left: 2rem; margin-bottom: 2rem;">
<li style="margin-bottom: 0.75rem;">Design a personalized donation stream (one-time, monthly, or in-kind)</li>
<li style="margin-bottom: 0.75rem;">Search upcoming volunteer opportunities by skill and availability</li>
<li style="margin-bottom: 0.75rem;">Explore corporate matching and team challenge options</li>
<li style="margin-bottom: 0;">Generate instant tax documentation for your contributions</li>
</ul>
<p>Our giving portal is designed with security and accessibility in mind—featuring end-to-end encryption and options for donors with disabilities. All contributions support our 501(c)(3) status, meaning your gifts are tax-deductible to the fullest extent allowed by law.</p>
</div>
<div class="portal-form">
<h3>Personalized Impact Portal</h3>
<form id="impactForm">
<div class="form-group">
<label for="impactType">How would you like to help?</label>
<select id="impactType">
<option value="">Select an option</option>
<option value="donate">Make a Donation</option>
<option value="volunteer">Volunteer Time</option>
<option value="partner">Explore Partnership</option>
<option value="fundraise">Host a Fundraiser</option>
</select>
</div>
<div class="form-group">
<label for="donationAmount">Contribution Amount ($)</label>
<input type="number" id="donationAmount" placeholder="Enter amount (min $10)" min="10">
</div>
<div class="form-group">
<label for="recurring">Recurring gift</label>
<select id="recurring">
<option value="one-time">One-time gift</option>
<option value="monthly">Monthly</option>
<option value="quarterly">Quarterly</option>
</select>
</div>
<div class="form-group">
<label for="specialization">Area of focus (optional)</label>
<input type="text" id="specialization" placeholder="e.g., education, nutrition, youth workforce">
</div>
<button type="button" class="cta-btn" style="width: 100%; text-align: center;" onclick="document.getElementById('portalFormSuccess').style.display='block'">Create Your Impact Plan</button>
</form>
<div id="portalFormSuccess" style="display: none; text-align: center; padding: 1rem; background-color: #e8f5e9; border-radius: 6px; margin-top: 1.5rem;">
<p>Thank you! Your impact plan has been saved to your dashboard.</p>
<a href="#" class="read-more" style="color: #2e7d32; margin-top: 0.5rem;">View your dashboard <span>→</span></a>
</div>
</div>
</div>
</div>
</section>
<!-- Programs Section -->
<section class="section programs-section" id="programs">
<div class="container">
<div class="section-header">
<h2>Our Signature Programs</h2>
<p>Our programs are designed to be collaborative, culturally responsive, and sustainable—creating long-term change through community ownership.</p>
</div>
<div class="programs-grid">
<div class="program-card">
<div class="program-icon">E</div>
<h3>Educate Forward</h3>
<p>Our K-12 initiative that provides academic coaching, technology access, and college readiness workshops. We support 17 schools across 3 states with 22 full-time education advocates.</p>
</div>
<div class="program-card">
<div class="program-icon">N</div>
<h3>Nourish Together</h3>
<p>Food sovereignty program that transforms food deserts through community gardens, nutrition education, and SNAP/WIC enrollment support. 25+ garden sites operating nationwide.</p>
</div>
<div class="program-card">
<div class="program-icon">W</div>
<h3>WorkPathways</h3>
<p>Job training program offering credential programs in skilled trades, healthcare, and technology—including mentorship, transportation support, and employer placement.</p>
</div>
<div class="program-card">
<div class="program-icon">C</div>
<h3>Community Connect</h3>
<p>Local capacity-building initiative that trains community leaders in advocacy, grant writing, and nonprofit management—empowering sustainable self-determination.</p>
</div>
</div>
</div>
</section>
<!-- Testimonials -->
<section class="section testimonials" id="testimonials">
<div class="container">
<div class="section-header">
<h2>Voices of the Movement</h2>
<p>Hear from our partners, alumni, and team about what makes RISE & THRIVE different.</p>
</div>
<div class="testimonial-grid">
<div class="testimonial-card">
<div class="quote-icon">“</div>
<p>"Before joining RISE & THRIVE's Tech Pathways program, I was working three jobs while raising my kids. Now I'm a frontend developer with benefits and flexible hours. This program didn't just change my career—it changed my family's future."</p>
<div class="testimonial-author">
<img src="https://i.pravatar.cc/120?u=alicia-m" alt="Alicia M." class="author-img">
<div class="author-info">
<h4>Alicia M.</h4>
<span>Tech Pathways graduate, Class of 2023</span>
</div>
</div>
</div>
<div class="testimonial-card">
<div class="quote-icon">“</div>
<p>"The Food Sovereignty project transformed our neighborhood. We went from a food desert with two bodegas and one liquor store to a vibrant community garden with weekly farmers markets. The skills we've learned have kept us connected during difficult times."</p>
<div class="testimonial-author">
<img src="https://i.pravatar.cc/120?u=maria-g" alt="Maria G." class="author-img">
<div class="author-info">
<h4>Maria G.</h4>
<span>Garden Coordinator, Detroit Neighborhood Initiative</span>
</div>
</div>
</div>
<div class="testimonial-card">
<div class="quote-icon">“</div>
<p>"As an executive director of a small nonprofit, RISE & THRIVE's Community Connect program gave me the tools to apply for foundational grants and hire my first development officer. Their hands-on approach to capacity building is unlike any other technical assistance I've received."</p>
<div class="testimonial-author">
<img src="https://i.pravatar.cc/120?u=ben-t" alt="Ben T." class="author-img">
<div class="author-info">
<h4>Ben T.</h4>
<span>Executive Director, Urban Youth Alliance</span>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- FAQ Section -->
<section class="section faq-section" id="faq">
<div class="container">
<div class="section-header">
<h2>Frequently Asked Questions</h2>
<p>Common inquiries about our mission, operations, and impact.</p>
</div>
<div class="faq-container">
<div class="faq-item">
<div class="faq-question">Is RISE & THRIVE a 501(c)(3) organization?</div>
<div class="faq-answer">
<div class="faq-answer-content">
<p>Yes, RISE & THRIVE is a registered 501(c)(3) nonprofit organization (EIN: 88-3742901) with public charity status. All contributions are tax-deductible to the fullest extent permitted by law. We maintain an A+ rating with Charity Navigator and are fully compliant with IRS reporting requirements.</p>
</div>
</div>
</div>
<div class="faq-item">
<div class="faq-question">How much of my donation goes directly to programs?</div>
<div class="faq-answer">
<div class="faq-answer-content">
<p>We proudly maintain a 92/8 program/admin expense ratio—meaning 92% of every dollar supports our frontline services, while 8% covers essential administrative functions. This exceeds the industry standard of 65% and reflects our commitment to responsible resource management.</p>
</div>
</div>
</div>
<div class="faq-item">
<div class="faq-question">Do you partner with local communities before launching programs?</div>
<div class="faq-answer">
<div class="faq-answer-content">
<p>Absolutely. We follow a community needs assessment (CNA) framework that includes focus groups, door-to-door surveys, and collaborative visioning sessions with existing community leaders. Every program is co-designed with local stakeholders to ensure alignment with actual priorities—not external assumptions. This approach has led to 94% program retention rates post-implementation.</p>
</div>
</div>
</div>
<div class="faq-item">
<div class="faq-question">Can I volunteer even without specialized skills?</div>
<div class="faq-answer">
<div class="faq-answer-content">
<p>Yes! Our Volunteer Match System ensures every skill level finds purposeful opportunities. From event support and administrative tasks to mentoring and skilled professional services, we value diverse contributions. All volunteers receive orientation and ongoing support—including trauma-informed care training for those working directly with participants.</p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- CTA Section -->
<section class="cta-section" id="donate">
<div class="container cta-content">
<h2>Join Us in Building a Future Where Everyone Can Rise</h2>
<p>Your partnership helps communities design their own futures through sustainable, dignified support that respects local knowledge and agency.</p>
<div class="cta-buttons">
<a href="#portal" class="cta-btn">Donate Securely</a>
<a href="#" class="btn-outline">Explore Volunteer Opportunities</a>
</div>
</div>
</section>
<!-- Footer -->
<footer class="footer" id="contact">
<div class="container">
<div class="footer-grid">
<div class="footer-col">
<h4>RISE & THRIVE</h4>
<p>Empowering communities through sustainable development initiatives that center local expertise, dignity, and long-term partnership.</p>
<div class="social-links">
<a href="#" aria-label="Facebook">f</a>
<a href="#" aria-label="Twitter">t</a>
<a href="#" aria-label="Instagram">i</a>
<a href="#" aria-label="LinkedIn">in</a>
</div>
</div>
<div class="footer-col">
<h4>Our Work</h4>
<ul class="footer-links">
<li><a href="#">Education Equity</a></li>
<li><a href="#">Nutritional Security</a></li>
<li><a href="#">Workforce Development</a></li>
<li><a href="#">Community Capacity Building</a></li>
</ul>
</div>
<div class="footer-col">
<h4>Get Involved</h4>
<ul class="footer-links">
<li><a href="#">Volunteer Opportunities</a></li>
<li><a href="#">Fundraise for Us</a></li>
<li><a href="#">Corporate Partnerships</a></li>
<li><a href="#">Grant Opportunities</a></li>
</ul>
</div>
<div class="footer-col">
<h4>Contact Us</h4>
<ul class="footer-links">
<li>1200 Community Way, Suite 400</li>
<li>Seattle, WA 98101</li>
<li>hello@riseandthrive.org</li>
<li>(206) 555-8243</li>
</ul>
<p style="margin-top: 1.5rem;">
<strong>Office Hours:</strong><br>
Mon–Fri: 9am–5pm PST<br>
Sat–Sun: Closed
</p>
</div>
</div>
<div class="copyright">
<p>© <span id="currentYear">2023</span> RISE & THRIVE. All rights reserved. | <a href="#" style="color: rgba(255,255,255,0.7); text-decoration: none;">Privacy Policy</a> | <a href="#" style="color: rgba(255,255,255,0.7); text-decoration: none;">Terms of Use</a> | <a href="#" style="color: rgba(255,255,255,0.7); text-decoration: none;">Accessibility Statement</a></p>
</div>
</div>
</footer>
<script>
// Mobile Menu Toggle
const mobileMenuBtn = document.getElementById('mobileMenuBtn');
const navLinks = document.getElementById('navLinks');
mobileMenuBtn.addEventListener('click', () => {
navLinks.classList.toggle('nav-links-active');
});
// Close mobile menu when clicking a link
document.querySelectorAll('#navLinks a').forEach(link => {
link.addEventListener('click', () => {
navLinks.classList.remove('nav-links-active');
});
});
// Current Year in Footer
document.getElementById('currentYear').textContent = new Date().getFullYear();
// FAQ Accordion
const faqQuestions = document.querySelectorAll('.faq-question');
faqQuestions.forEach(question => {
question.addEventListener('click', () => {
const answer = question.nextElementSibling;
// Toggle active class on question
question.classList.toggle('active');
// Toggle answer height
if (answer.style.maxHeight) {
answer.style.maxHeight = null;
} else {
answer.style.maxHeight = answer.scrollHeight + "px";
}
// Close other answers
faqQuestions.forEach(otherQuestion => {
if (otherQuestion !== question) {
otherQuestion.classList.remove('active');
otherQuestion.nextElementSibling.style.maxHeight = null;
}
});
});
});
// Smooth scrolling for anchor links
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener('click', function (e) {
e.preventDefault();
const target = document.querySelector(this.getAttribute('href'));
if (target) {
const yOffset = -100;
const y = target.getBoundingClientRect().top + window.pageYOffset + yOffset;
window.scrollTo({top: y, behavior: 'smooth'});
}
});
});
</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-12T09:41:00.949Z",
"url": "https://benchmark.aimac.invalid/69f5f14bf294a3461574268fb1e50456b80570b883d6cd8edc2af89429fc85f7.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-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": []
},
{
"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-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": []
},
{
"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-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": []
},
{
"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": "link-in-text-block",
"impact": null,
"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": []
},
{
"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": "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": "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": []
},
{
"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": "<a href=\"#\" aria-label=\"Facebook\">f</a>",
"target": [
"a[aria-label=\"Facebook\"]"
]
}
]
},
{
"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": "<a href=\"#\" aria-label=\"Facebook\">f</a>",
"target": [
"a[aria-label=\"Facebook\"]"
]
}
]
},
{
"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": null,
"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": "<a href=\"#\" aria-label=\"Facebook\">f</a>",
"target": [
"a[aria-label=\"Facebook\"]"
]
}
]
},
{
"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": "<a href=\"#\" aria-label=\"Facebook\">f</a>",
"target": [
"a[aria-label=\"Facebook\"]"
]
}
]
},
{
"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": "<a href=\"#\" aria-label=\"Facebook\">f</a>",
"target": [
"a[aria-label=\"Facebook\"]"
]
}
]
},
{
"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 href=\"#portal\" class=\"cta-btn\" style=\"background-color: var(--accent-color);\">Join Our Mission</a>",
"target": [
".hero-content > .cta-btn[href$=\"#portal\"]"
]
}
]
},
{
"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 type=\"button\" class=\"cta-btn\" style=\"width: 100%; text-align: center;\" onclick=\"document.getElementById('portalFormSuccess').style.display='block'\">Create Your Impact Plan</button>",
"target": [
"button[type=\"button\"]"
]
}
]
},
{
"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>Building Thriving Communities Through Sustainable Change</h1>",
"target": [
"h1"
]
},
{
"html": "<h2>Who We Are</h2>",
"target": [
".about-text > h2"
]
},
{
"html": "<h2>Our Impact in Action</h2>",
"target": [
"#impact > .container > .section-header > h2"
]
},
{
"html": "<h3>Education Equity</h3>",
"target": [
".impact-card:nth-child(1) > .impact-content > h3"
]
},
{
"html": "<h3>Nutritional Security</h3>",
"target": [
".impact-card:nth-child(2) > .impact-content > h3"
]
},
{
"html": "<h3>Workforce Development</h3>",
"target": [
".impact-card:nth-child(3) > .impact-content > h3"
]
},
{
"html": "<h2>Start Your Journey of Impact</h2>",
"target": [
".portal-text > h2"
]
},
{
"html": "<h3>Personalized Impact Portal</h3>",
"target": [
".portal-form > h3"
]
},
{
"html": "<h2>Our Signature Programs</h2>",
"target": [
"#programs > .container > .section-header > h2"
]
},
{
"html": "<h3>Educate Forward</h3>",
"target": [
".program-card:nth-child(1) > h3"
]
},
{
"html": "<h3>Nourish Together</h3>",
"target": [
".program-card:nth-child(2) > h3"
]
},
{
"html": "<h3>WorkPathways</h3>",
"target": [
".program-card:nth-child(3) > h3"
]
},
{
"html": "<h3>Community Connect</h3>",
"target": [
".program-card:nth-child(4) > h3"
]
},
{
"html": "<h2>Voices of the Movement</h2>",
"target": [
"#testimonials > .container > .section-header > h2"
]
},
{
"html": "<h4>Alicia M.</h4>",
"target": [
".testimonial-card:nth-child(1) > .testimonial-author > .author-info > h4"
]
},
{
"html": "<h4>Maria G.</h4>",
"target": [
".testimonial-card:nth-child(2) > .testimonial-author > .author-info > h4"
]
},
{
"html": "<h4>Ben T.</h4>",
"target": [
".testimonial-card:nth-child(3) > .testimonial-author > .author-info > h4"
]
},
{
"html": "<h2>Frequently Asked Questions</h2>",
"target": [
"#faq > .container > .section-header > h2"
]
},
{
"html": "<h2>Join Us in Building a Future Where Everyone Can Rise</h2>",
"target": [
".cta-content > h2"
]
},
{
"html": "<h4>RISE & THRIVE</h4>",
"target": [
".footer-col:nth-child(1) > h4"
]
},
{
"html": "<h4>Our Work</h4>",
"target": [
".footer-col:nth-child(2) > h4"
]
},
{
"html": "<h4>Get Involved</h4>",
"target": [
".footer-col:nth-child(3) > h4"
]
},
{
"html": "<h4>Contact Us</h4>",
"target": [
".footer-col:nth-child(4) > h4"
]
}
],
"impact": "serious",
"message": "Page has a heading"
}
],
"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": "#1a4d3d",
"bgColor": "#ffffff",
"contrastRatio": 9.66,
"fontSize": "21.0pt (28px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "3:1",
"shadowColor": null
},
"relatedNodes": [],
"impact": "serious",
"message": "Element has sufficient color contrast of 9.66"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<div class=\"logo-text\">RISE & THRIVE</div>",
"target": [
".logo-text"
]
}
]
},
{
"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": "impactType",
"relatedNodes": [],
"impact": "critical",
"message": "Document has no elements referenced with ARIA or labels that share the same id attribute"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<select id=\"impactType\">",
"target": [
"#impactType"
]
}
]
},
{
"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=\"impactType\">How would you like to help?</label>",
"target": [
"label[for=\"impactType\"]"
]
}
],
"impact": "moderate",
"message": "Form field does not have multiple label elements"
}
],
"impact": null,
"html": "<select id=\"impactType\">",
"target": [
"#impactType"
]
}
]
},
{
"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/120x120/1a4d3d/ffffff?text=R+T&font=playfair+display\" alt=\"RISE & THRIVE Logo\">",
"target": [
"img[alt=\"RISE & THRIVE 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": {
"explicitLabel": "Contribution Amount ($)"
},
"relatedNodes": [
{
"html": "<label for=\"donationAmount\">Contribution Amount ($)</label>",
"target": [
"label[for=\"donationAmount\"]"
]
}
],
"impact": "critical",
"message": "Element has an explicit <label>"
},
{
"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 type=\"number\" id=\"donationAmount\" placeholder=\"Enter amount (min $10)\" min=\"10\">",
"target": [
"#donationAmount"
]
}
]
},
{
"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 href=\"#\" class=\"logo\">\n <img src=\"https://placehold.co/120x120/1a4d3d/ffffff?text=R+T&font=playfair+display\" alt=\"RISE & THRIVE Logo\">\n <div class=\"logo-text\">RISE & THRIVE</div>\n </a>",
"target": [
".logo"
]
}
]
},
{
"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 style=\"margin-left: 2rem; margin-bottom: 2rem;\">",
"target": [
".portal-text > 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 style=\"margin-bottom: 0.75rem;\">Design a personalized donation stream (one-time, monthly, or in-kind)</li>",
"target": [
".portal-text > 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/120x120/1a4d3d/ffffff?text=R+T&font=playfair+display\" alt=\"RISE & THRIVE Logo\">",
"target": [
"img[alt=\"RISE & THRIVE Logo\"]"
]
}
]
},
{
"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": [
{
"any": [
{
"id": "explicit-label",
"data": {
"explicitLabel": "How would you like to help?"
},
"relatedNodes": [
{
"html": "<label for=\"impactType\">How would you like to help?</label>",
"target": [
"label[for=\"impactType\"]"
]
}
],
"impact": "critical",
"message": "Element has an explicit <label>"
}
],
"all": [],
"none": [
{
"id": "hidden-explicit-label",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "Form element has a visible explicit <label>"
}
],
"impact": null,
"html": "<select id=\"impactType\">",
"target": [
"#impactType"
]
}
]
},
{
"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": 282.3,
"height": 60
},
"relatedNodes": [],
"impact": "serious",
"message": "Control has sufficient size (282.3px by 60px, 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 href=\"#\" class=\"logo\">\n <img src=\"https://placehold.co/120x120/1a4d3d/ffffff?text=R+T&font=playfair+display\" alt=\"RISE & THRIVE Logo\">\n <div class=\"logo-text\">RISE & THRIVE</div>\n </a>",
"target": [
".logo"
]
}
]
}
],
"incomplete": [
{
"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": "45.0pt (60px)",
"fontWeight": "bold",
"messageKey": "bgGradient",
"expectedContrastRatio": "3: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": "<h1>Building Thriving Communities Through Sustainable Change</h1>",
"target": [
"h1"
],
"failureSummary": "Fix any of the following:\n Element's background color could not be determined due to a background gradient"
}
]
}
],
"violations": [
{
"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": "#1a4d3d",
"bgColor": "#f39c12",
"contrastRatio": 4.4,
"fontSize": "12.0pt (16px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<a href=\"#donate\" class=\"cta-btn\">Donate Now</a>",
"target": [
"a[href$=\"#donate\"]"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 4.4 (foreground color: #1a4d3d, background color: #f39c12, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<a href=\"#donate\" class=\"cta-btn\">Donate Now</a>",
"target": [
"a[href$=\"#donate\"]"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 4.4 (foreground color: #1a4d3d, background color: #f39c12, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#ffffff",
"bgColor": "#f39c12",
"contrastRatio": 2.19,
"fontSize": "12.0pt (16px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<a href=\"#portal\" class=\"cta-btn\" style=\"background-color: var(--accent-color);\">Join Our Mission</a>",
"target": [
".hero-content > .cta-btn[href$=\"#portal\"]"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.19 (foreground color: #ffffff, background color: #f39c12, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<a href=\"#portal\" class=\"cta-btn\" style=\"background-color: var(--accent-color);\">Join Our Mission</a>",
"target": [
".hero-content > .cta-btn[href$=\"#portal\"]"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.19 (foreground color: #ffffff, background color: #f39c12, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#ffffff",
"bgColor": "#f39c12",
"contrastRatio": 2.19,
"fontSize": "10.0pt (13.3333px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<button type=\"button\" class=\"cta-btn\" style=\"width: 100%; text-align: center;\" onclick=\"document.getElementById('portalFormSuccess').style.display='block'\">Create Your Impact Plan</button>",
"target": [
"button[type=\"button\"]"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.19 (foreground color: #ffffff, background color: #f39c12, font size: 10.0pt (13.3333px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<button type=\"button\" class=\"cta-btn\" style=\"width: 100%; text-align: center;\" onclick=\"document.getElementById('portalFormSuccess').style.display='block'\">Create Your Impact Plan</button>",
"target": [
"button[type=\"button\"]"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.19 (foreground color: #ffffff, background color: #f39c12, font size: 10.0pt (13.3333px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#f39c12",
"bgColor": "#f8f9fa",
"contrastRatio": 2.08,
"fontSize": "10.8pt (14.4px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"testimonial-card\">",
"target": [
".testimonial-card:nth-child(1)"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.08 (foreground color: #f39c12, background color: #f8f9fa, font size: 10.8pt (14.4px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span>Tech Pathways graduate, Class of 2023</span>",
"target": [
".testimonial-card:nth-child(1) > .testimonial-author > .author-info > span"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.08 (foreground color: #f39c12, background color: #f8f9fa, font size: 10.8pt (14.4px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#f39c12",
"bgColor": "#f8f9fa",
"contrastRatio": 2.08,
"fontSize": "10.8pt (14.4px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"testimonial-card\">",
"target": [
".testimonial-card:nth-child(2)"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.08 (foreground color: #f39c12, background color: #f8f9fa, font size: 10.8pt (14.4px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span>Garden Coordinator, Detroit Neighborhood Initiative</span>",
"target": [
".testimonial-card:nth-child(2) > .testimonial-author > .author-info > span"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.08 (foreground color: #f39c12, background color: #f8f9fa, font size: 10.8pt (14.4px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#f39c12",
"bgColor": "#f8f9fa",
"contrastRatio": 2.08,
"fontSize": "10.8pt (14.4px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"testimonial-card\">",
"target": [
".testimonial-card:nth-child(3)"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.08 (foreground color: #f39c12, background color: #f8f9fa, font size: 10.8pt (14.4px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span>Executive Director, Urban Youth Alliance</span>",
"target": [
".testimonial-card:nth-child(3) > .testimonial-author > .author-info > span"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.08 (foreground color: #f39c12, background color: #f8f9fa, font size: 10.8pt (14.4px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#ffffff",
"bgColor": "#f39c12",
"contrastRatio": 2.19,
"fontSize": "12.0pt (16px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<a href=\"#portal\" class=\"cta-btn\">Donate Securely</a>",
"target": [
".cta-buttons > .cta-btn[href$=\"#portal\"]"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.19 (foreground color: #ffffff, background color: #f39c12, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<a href=\"#portal\" class=\"cta-btn\">Donate Securely</a>",
"target": [
".cta-buttons > .cta-btn[href$=\"#portal\"]"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.19 (foreground color: #ffffff, background color: #f39c12, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#333333",
"bgColor": "#133b2f",
"contrastRatio": 1.01,
"fontSize": "12.6pt (16.8px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<footer class=\"footer\" id=\"contact\">",
"target": [
"#contact"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 1.01 (foreground color: #333333, background color: #133b2f, font size: 12.6pt (16.8px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<p>Empowering communities through sustainable development initiatives that center local expertise, dignity, and long-term partnership.</p>",
"target": [
".footer-col:nth-child(1) > p"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 1.01 (foreground color: #333333, background color: #133b2f, font size: 12.6pt (16.8px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#333333",
"bgColor": "#133b2f",
"contrastRatio": 1.01,
"fontSize": "12.6pt (16.8px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<footer class=\"footer\" id=\"contact\">",
"target": [
"#contact"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 1.01 (foreground color: #333333, background color: #133b2f, font size: 12.6pt (16.8px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<p style=\"margin-top: 1.5rem;\">\n <strong>Office Hours:</strong><br>\n Mon\u2013Fri: 9am\u20135pm PST<br>\n Sat\u2013Sun: Closed\n </p>",
"target": [
".footer-col:nth-child(4) > p"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 1.01 (foreground color: #333333, background color: #133b2f, font size: 12.6pt (16.8px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#333333",
"bgColor": "#133b2f",
"contrastRatio": 1.01,
"fontSize": "12.6pt (16.8px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<footer class=\"footer\" id=\"contact\">",
"target": [
"#contact"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 1.01 (foreground color: #333333, background color: #133b2f, font size: 12.6pt (16.8px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<strong>Office Hours:</strong>",
"target": [
".footer-col:nth-child(4) > p > strong"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 1.01 (foreground color: #333333, background color: #133b2f, font size: 12.6pt (16.8px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#333333",
"bgColor": "#133b2f",
"contrastRatio": 1.01,
"fontSize": "12.6pt (16.8px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<footer class=\"footer\" id=\"contact\">",
"target": [
"#contact"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 1.01 (foreground color: #333333, background color: #133b2f, font size: 12.6pt (16.8px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<p>",
"target": [
".copyright > p"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 1.01 (foreground color: #333333, background color: #133b2f, font size: 12.6pt (16.8px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#333333",
"bgColor": "#133b2f",
"contrastRatio": 1.01,
"fontSize": "12.6pt (16.8px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<footer class=\"footer\" id=\"contact\">",
"target": [
"#contact"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 1.01 (foreground color: #333333, background color: #133b2f, font size: 12.6pt (16.8px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span id=\"currentYear\">2026</span>",
"target": [
"#currentYear"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 1.01 (foreground color: #333333, background color: #133b2f, font size: 12.6pt (16.8px), font weight: normal). Expected contrast ratio of 4.5:1"
}
]
}
],
"coverage": {
"contract": "main-document-vertical-scroll",
"complete": true,
"positions": [
{
"y": 0,
"height": 7735
},
{
"y": 576,
"height": 7735
},
{
"y": 1152,
"height": 7735
},
{
"y": 1728,
"height": 7735
},
{
"y": 2304,
"height": 7735
},
{
"y": 2880,
"height": 7735
},
{
"y": 3456,
"height": 7735
},
{
"y": 4032,
"height": 7735
},
{
"y": 4608,
"height": 7735
},
{
"y": 5184,
"height": 7735
},
{
"y": 5760,
"height": 7735
},
{
"y": 6336,
"height": 7735
},
{
"y": 6912,
"height": 7735
},
{
"y": 7015,
"height": 7735
}
],
"scans": 15,
"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: "Programs", "Donate", "News".
- **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: "Beneficiary Stories", "Partnership Highlights", "Impact Stories".
- **Content Depth:** Populate each section with **substantial, realistic text** (multiple sentences/paragraphs). Use authentic industry language and terminology like: "advocacy", "volunteer hours", "501(c)(3) status".
- **Visuals:** Integrate relevant placeholder images logically within the content sections.
- **Calls to Action:** Include clear and contextually relevant CTAs. Use strong verbs similar to: "Join Event", "Host Fundraiser", "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: "giving portal".
- **SIDEBAR (Optional):** If your design includes a sidebar, populate it with **useful, relevant content**. Ideas: "impact reports", "volunteer spotlights", "recent news".
- **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.