Google Gemini 4 Argon – Religion and Spirituality

via Google · Generated

  • AIMAC Debt 6.85
  • Cost $0.17
  • Total Violations 21
  • HTML Size 67 KB
  • Em Dashes 10

Screenshot

View Google Gemini 4 Argon Religion and Spirituality page View Live Page

Accessibility Issues Found

21 Serious

  • color-contrast serious 20 instances

    Elements must meet minimum color contrast ratio thresholds

    Example HTML <span>A Haven for Spiritual Renewal &amp; Community</span>
  • target-size serious 1 instance

    All touch targets must be 24px large, or leave sufficient space

    Example HTML <a href="#contact-pastor" class="btn btn-outline">Contact Pastor</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>Grace & Light Sanctuary | A Haven for Spiritual Renewal</title>
    <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=Lato:ital,wght@0,300;0,400;0,700;1,400&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
    <style>
        :root {
            --primary-color: #1e293b; /* Deep Slate */
            --secondary-color: #d97706; /* Warm Amber/Gold */
            --accent-color: #0f766e; /* Deep Teal */
            --bg-light: #f8fafc; /* Alabaster */
            --bg-cream: #fef3c7; /* Soft Cream */
            --text-dark: #334155;
            --text-light: #94a3b8;
            --white: #ffffff;
            --font-heading: 'Playfair Display', serif;
            --font-body: 'Lato', sans-serif;
            --transition: all 0.3s ease;
            --shadow-sm: 0 1px 3px rgba(0,0,0,0.1);
            --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06);
            --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -2px rgba(0,0,0,0.05);
            --radius: 8px;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: var(--font-body);
            color: var(--text-dark);
            background-color: var(--bg-light);
            line-height: 1.7;
            overflow-x: hidden;
        }

        h1, h2, h3, h4, h5, h6 {
            font-family: var(--font-heading);
            color: var(--primary-color);
            line-height: 1.3;
            margin-bottom: 1rem;
        }

        a {
            text-decoration: none;
            color: inherit;
            transition: var(--transition);
        }

        ul {
            list-style: none;
        }

        img {
            max-width: 100%;
            height: auto;
            display: block;
        }

        .container {
            width: 100%;
            max-width: 1280px;
            margin: 0 auto;
            padding: 0 2rem;
        }

        /* Buttons */
        .btn {
            display: inline-block;
            padding: 0.8rem 1.8rem;
            border-radius: 50px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 1px;
            font-size: 0.85rem;
            cursor: pointer;
            transition: var(--transition);
            border: 2px solid transparent;
            text-align: center;
        }

        .btn-primary {
            background-color: var(--secondary-color);
            color: var(--white);
        }

        .btn-primary:hover {
            background-color: #b45309;
            transform: translateY(-2px);
            box-shadow: var(--shadow-md);
        }

        .btn-secondary {
            background-color: transparent;
            color: var(--white);
            border-color: var(--white);
        }

        .btn-secondary:hover {
            background-color: var(--white);
            color: var(--primary-color);
            transform: translateY(-2px);
        }

        .btn-outline {
            background-color: transparent;
            color: var(--primary-color);
            border-color: var(--primary-color);
        }

        .btn-outline:hover {
            background-color: var(--primary-color);
            color: var(--white);
            transform: translateY(-2px);
        }

        /* Header */
        header {
            background-color: var(--white);
            box-shadow: var(--shadow-sm);
            position: sticky;
            top: 0;
            z-index: 1000;
        }

        .top-bar {
            background-color: var(--primary-color);
            color: var(--white);
            font-size: 0.85rem;
            padding: 0.5rem 0;
        }

        .top-bar-content {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .top-bar-links a {
            color: #cbd5e1;
            margin-left: 1.5rem;
        }

        .top-bar-links a:hover {
            color: var(--secondary-color);
        }

        .nav-container {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 1.2rem 2rem;
            max-width: 1280px;
            margin: 0 auto;
        }

        .brand {
            display: flex;
            align-items: center;
            gap: 1rem;
        }

        .brand img {
            border-radius: 50%;
        }

        .brand-text h1 {
            font-size: 1.5rem;
            margin-bottom: 0;
            color: var(--primary-color);
        }

        .brand-text span {
            font-size: 0.8rem;
            color: var(--text-light);
            font-style: italic;
            display: block;
        }

        nav ul {
            display: flex;
            gap: 2rem;
            align-items: center;
        }

        nav a {
            font-weight: 700;
            font-size: 0.95rem;
            color: var(--primary-color);
            position: relative;
        }

        nav a::after {
            content: '';
            position: absolute;
            width: 0;
            height: 2px;
            bottom: -5px;
            left: 0;
            background-color: var(--secondary-color);
            transition: var(--transition);
        }

        nav a:hover::after,
        nav a.active::after {
            width: 100%;
        }

        .mobile-menu-btn {
            display: none;
            font-size: 1.5rem;
            background: none;
            border: none;
            color: var(--primary-color);
            cursor: pointer;
        }

        /* Hero Section */
        .hero {
            position: relative;
            background: linear-gradient(rgba(30, 41, 59, 0.7), rgba(30, 41, 59, 0.7)), url('https://picsum.photos/1920/1080?blur=2') center/cover no-repeat;
            color: var(--white);
            padding: 8rem 0;
            text-align: center;
        }

        .hero-content {
            max-width: 800px;
            margin: 0 auto;
            padding: 0 1rem;
        }

        .hero-subtitle {
            color: var(--secondary-color);
            font-weight: 700;
            letter-spacing: 2px;
            text-transform: uppercase;
            margin-bottom: 1rem;
            display: block;
        }

        .hero h2 {
            color: var(--white);
            font-size: 3.5rem;
            margin-bottom: 1.5rem;
            font-weight: 700;
        }

        .hero p {
            font-size: 1.2rem;
            margin-bottom: 2.5rem;
            color: #e2e8f0;
        }

        .hero-buttons {
            display: flex;
            gap: 1rem;
            justify-content: center;
        }

        /* Main Layout (Content + Sidebar) */
        .main-layout {
            display: grid;
            grid-template-columns: 1fr 350px;
            gap: 3rem;
            padding: 5rem 2rem;
            max-width: 1280px;
            margin: 0 auto;
        }

        /* Section Styling */
        .section-header {
            margin-bottom: 3rem;
        }

        .section-tag {
            color: var(--accent-color);
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 1.5px;
            font-size: 0.85rem;
            display: block;
            margin-bottom: 0.5rem;
        }

        .section-title {
            font-size: 2.5rem;
            position: relative;
            padding-bottom: 1rem;
        }

        .section-title::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 60px;
            height: 3px;
            background-color: var(--secondary-color);
        }

        .content-section {
            margin-bottom: 5rem;
        }

        /* Welcome / About Section */
        .welcome-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 2.5rem;
            align-items: center;
            margin-bottom: 2rem;
        }

        .welcome-image {
            position: relative;
        }

        .welcome-image img {
            border-radius: var(--radius);
            box-shadow: var(--shadow-lg);
        }

        .welcome-quote {
            background-color: var(--primary-color);
            color: var(--white);
            padding: 1.5rem;
            border-radius: var(--radius);
            position: absolute;
            bottom: -20px;
            right: -20px;
            max-width: 250px;
            font-family: var(--font-heading);
            font-style: italic;
            box-shadow: var(--shadow-md);
            border-left: 4px solid var(--secondary-color);
        }

        .welcome-text p {
            margin-bottom: 1.5rem;
            font-size: 1.05rem;
        }

        /* Ministries Grid */
        .ministries-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 2rem;
        }

        .ministry-card {
            background: var(--white);
            border-radius: var(--radius);
            overflow: hidden;
            box-shadow: var(--shadow-md);
            transition: var(--transition);
            display: flex;
            flex-direction: column;
        }

        .ministry-card:hover {
            transform: translateY(-5px);
            box-shadow: var(--shadow-lg);
        }

        .ministry-img {
            position: relative;
            height: 200px;
            overflow: hidden;
        }

        .ministry-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: var(--transition);
        }

        .ministry-card:hover .ministry-img img {
            transform: scale(1.05);
        }

        .ministry-icon {
            position: absolute;
            bottom: -20px;
            right: 20px;
            width: 50px;
            height: 50px;
            background-color: var(--secondary-color);
            color: var(--white);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.2rem;
            box-shadow: var(--shadow-sm);
        }

        .ministry-content {
            padding: 2rem 1.5rem 1.5rem;
            flex-grow: 1;
            display: flex;
            flex-direction: column;
        }

        .ministry-content h3 {
            font-size: 1.4rem;
            margin-bottom: 0.8rem;
        }

        .ministry-content p {
            color: var(--text-dark);
            font-size: 0.95rem;
            margin-bottom: 1.5rem;
            flex-grow: 1;
        }

        .ministry-link {
            color: var(--accent-color);
            font-weight: 700;
            font-size: 0.9rem;
            display: flex;
            align-items: center;
            gap: 0.5rem;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }

        .ministry-link:hover {
            color: var(--secondary-color);
            gap: 0.8rem;
        }

        /* Interactive Devotional Calendar */
        .devotional-box {
            background-color: var(--white);
            border-radius: var(--radius);
            box-shadow: var(--shadow-md);
            overflow: hidden;
            border: 1px solid #e2e8f0;
        }

        .devotional-tabs {
            display: flex;
            background-color: #f1f5f9;
            border-bottom: 1px solid #e2e8f0;
            overflow-x: auto;
        }

        .dev-tab {
            padding: 1rem 1.5rem;
            font-weight: 700;
            color: var(--text-dark);
            cursor: pointer;
            border: none;
            background: none;
            border-bottom: 3px solid transparent;
            transition: var(--transition);
            white-space: nowrap;
            font-family: var(--font-body);
        }

        .dev-tab:hover {
            color: var(--secondary-color);
            background-color: rgba(255,255,255,0.5);
        }

        .dev-tab.active {
            color: var(--primary-color);
            border-bottom-color: var(--secondary-color);
            background-color: var(--white);
        }

        .devotional-content-area {
            padding: 2.5rem;
        }

        .dev-pane {
            display: none;
            animation: fadeIn 0.4s ease;
        }

        .dev-pane.active {
            display: block;
        }

        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(10px); }
            to { opacity: 1; transform: translateY(0); }
        }

        .scripture-box {
            background-color: var(--bg-cream);
            padding: 1.5rem;
            border-left: 4px solid var(--secondary-color);
            border-radius: 0 var(--radius) var(--radius) 0;
            margin-bottom: 1.5rem;
            font-family: var(--font-heading);
            font-size: 1.15rem;
            font-style: italic;
            color: var(--primary-color);
        }

        .scripture-ref {
            display: block;
            text-align: right;
            font-family: var(--font-body);
            font-size: 0.9rem;
            font-weight: 700;
            font-style: normal;
            margin-top: 0.5rem;
            color: var(--secondary-color);
        }

        .dev-reflection h4 {
            font-size: 1.3rem;
            margin-bottom: 0.8rem;
        }

        .dev-reflection p {
            margin-bottom: 1.5rem;
        }

        .prayer-prompt {
            background-color: #f8fafc;
            padding: 1rem 1.5rem;
            border-radius: var(--radius);
            border: 1px dashed #cbd5e1;
            font-size: 0.95rem;
        }

        .prayer-prompt strong {
            color: var(--accent-color);
        }

        /* Latest Sermon Section */
        .sermon-card {
            background: linear-gradient(to right, var(--primary-color), #334155);
            color: var(--white);
            border-radius: var(--radius);
            padding: 3rem;
            display: grid;
            grid-template-columns: 1fr 2fr;
            gap: 2.5rem;
            align-items: center;
            box-shadow: var(--shadow-lg);
        }

        .sermon-thumb {
            position: relative;
            border-radius: var(--radius);
            overflow: hidden;
            box-shadow: var(--shadow-md);
        }

        .play-overlay {
            position: absolute;
            inset: 0;
            background: rgba(0,0,0,0.4);
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: var(--transition);
        }

        .play-overlay:hover {
            background: rgba(0,0,0,0.2);
        }

        .play-btn {
            width: 60px;
            height: 60px;
            background-color: var(--secondary-color);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--white);
            font-size: 1.5rem;
            padding-left: 5px; /* optical alignment for play icon */
            box-shadow: 0 0 20px rgba(217, 119, 6, 0.6);
            transition: var(--transition);
        }

        .play-overlay:hover .play-btn {
            transform: scale(1.1);
        }

        .sermon-details .sermon-meta {
            color: var(--secondary-color);
            font-size: 0.9rem;
            text-transform: uppercase;
            letter-spacing: 1px;
            margin-bottom: 0.5rem;
            display: block;
            font-weight: 700;
        }

        .sermon-details h3 {
            color: var(--white);
            font-size: 2rem;
            margin-bottom: 1rem;
        }

        .sermon-details p {
            color: #cbd5e1;
            margin-bottom: 1.5rem;
        }

        .sermon-actions {
            display: flex;
            gap: 1rem;
            flex-wrap: wrap;
        }

        .sermon-actions .btn {
            padding: 0.6rem 1.2rem;
            font-size: 0.8rem;
        }

        /* Sidebar Styling */
        .sidebar {
            display: flex;
            flex-direction: column;
            gap: 2.5rem;
        }

        .widget {
            background-color: var(--white);
            border-radius: var(--radius);
            padding: 2rem;
            box-shadow: var(--shadow-md);
            border-top: 4px solid var(--primary-color);
        }

        .widget-accent {
            border-top-color: var(--secondary-color);
        }

        .widget-title {
            font-size: 1.4rem;
            margin-bottom: 1.5rem;
            padding-bottom: 0.8rem;
            border-bottom: 1px solid #e2e8f0;
            display: flex;
            align-items: center;
            gap: 0.8rem;
        }

        .widget-title i {
            color: var(--secondary-color);
        }

        /* Service Schedule Widget */
        .schedule-list li {
            display: flex;
            justify-content: space-between;
            padding: 0.8rem 0;
            border-bottom: 1px dashed #e2e8f0;
        }

        .schedule-list li:last-child {
            border-bottom: none;
            padding-bottom: 0;
        }

        .schedule-day {
            font-weight: 700;
            color: var(--primary-color);
        }

        .schedule-time {
            color: var(--accent-color);
            font-weight: 700;
        }

        .schedule-desc {
            font-size: 0.85rem;
            color: var(--text-light);
            display: block;
            width: 100%;
        }

        /* Pastor Note Widget */
        .pastor-profile {
            display: flex;
            align-items: center;
            gap: 1rem;
            margin-bottom: 1rem;
        }

        .pastor-profile img {
            width: 70px;
            height: 70px;
            border-radius: 50%;
            object-fit: cover;
            border: 2px solid var(--secondary-color);
        }

        .pastor-info h4 {
            margin-bottom: 0.2rem;
            font-size: 1.1rem;
        }

        .pastor-info span {
            font-size: 0.85rem;
            color: var(--text-light);
        }

        /* Events/Volunteer Widget */
        .event-item {
            display: flex;
            gap: 1rem;
            margin-bottom: 1.5rem;
            align-items: flex-start;
        }

        .event-item:last-child {
            margin-bottom: 0;
        }

        .event-date {
            background-color: var(--bg-cream);
            color: var(--secondary-color);
            min-width: 60px;
            text-align: center;
            padding: 0.5rem;
            border-radius: var(--radius);
            font-weight: 700;
            line-height: 1.2;
            border: 1px solid #fde68a;
        }

        .event-date span {
            display: block;
            font-size: 1.4rem;
            color: var(--primary-color);
        }

        .event-info h4 {
            font-size: 1.05rem;
            margin-bottom: 0.3rem;
            font-family: var(--font-body);
        }

        .event-info p {
            font-size: 0.85rem;
            color: var(--text-light);
            margin-bottom: 0.5rem;
        }

        .event-link {
            font-size: 0.8rem;
            color: var(--accent-color);
            font-weight: 700;
            text-transform: uppercase;
        }

        /* Full-width Testimonials Section */
        .testimonials-section {
            background-color: var(--primary-color);
            color: var(--white);
            padding: 6rem 0;
            position: relative;
        }

        .testimonials-section .section-title {
            color: var(--white);
        }

        .testimonials-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 2rem;
            margin-top: 3rem;
        }

        .testimonial-card {
            background-color: rgba(255, 255, 255, 0.05);
            backdrop-filter: blur(10px);
            padding: 2.5rem;
            border-radius: var(--radius);
            border: 1px solid rgba(255, 255, 255, 0.1);
            position: relative;
        }

        .quote-icon {
            font-size: 2.5rem;
            color: var(--secondary-color);
            opacity: 0.3;
            position: absolute;
            top: 20px;
            right: 20px;
        }

        .testimonial-text {
            font-style: italic;
            margin-bottom: 2rem;
            color: #e2e8f0;
            position: relative;
            z-index: 1;
        }

        .testimonial-author {
            display: flex;
            align-items: center;
            gap: 1rem;
        }

        .testimonial-author img {
            width: 50px;
            height: 50px;
            border-radius: 50%;
        }

        .author-details h4 {
            color: var(--white);
            font-family: var(--font-body);
            font-size: 1rem;
            margin-bottom: 0.2rem;
        }

        .author-details span {
            font-size: 0.8rem;
            color: var(--secondary-color);
        }

        /* FAQ Accordion Section */
        .faq-section {
            padding: 5rem 0;
            background-color: var(--white);
        }

        .faq-container {
            max-width: 800px;
            margin: 0 auto;
        }

        .accordion-item {
            border: 1px solid #e2e8f0;
            border-radius: var(--radius);
            margin-bottom: 1rem;
            overflow: hidden;
        }

        .accordion-header {
            width: 100%;
            padding: 1.5rem;
            background-color: var(--bg-light);
            border: none;
            text-align: left;
            font-family: var(--font-heading);
            font-size: 1.2rem;
            font-weight: 600;
            color: var(--primary-color);
            cursor: pointer;
            display: flex;
            justify-content: space-between;
            align-items: center;
            transition: var(--transition);
        }

        .accordion-header:hover {
            background-color: #f1f5f9;
        }

        .accordion-header.active {
            background-color: var(--primary-color);
            color: var(--white);
        }

        .accordion-icon {
            transition: transform 0.3s ease;
            color: var(--secondary-color);
        }

        .accordion-header.active .accordion-icon {
            transform: rotate(180deg);
        }

        .accordion-body {
            padding: 0 1.5rem;
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease-out, padding 0.3s ease;
            background-color: var(--white);
        }

        .accordion-body.active {
            padding: 1.5rem;
            max-height: 500px; /* arbitrary large height */
            border-top: 1px solid #e2e8f0;
        }

        /* CTA Banner */
        .cta-banner {
            background: linear-gradient(135deg, var(--accent-color), #115e59);
            color: var(--white);
            padding: 4rem 0;
            text-align: center;
        }

        .cta-banner h2 {
            color: var(--white);
            font-size: 2.5rem;
            margin-bottom: 1rem;
        }

        .cta-banner p {
            max-width: 600px;
            margin: 0 auto 2rem;
            font-size: 1.1rem;
            color: #ccfbf1;
        }

        /* Footer */
        footer {
            background-color: #0f172a;
            color: #94a3b8;
            padding: 5rem 0 2rem;
        }

        .footer-grid {
            display: grid;
            grid-template-columns: 2fr 1fr 1fr 1.5fr;
            gap: 3rem;
            margin-bottom: 4rem;
        }

        .footer-brand h3 {
            color: var(--white);
            font-size: 1.8rem;
            margin-bottom: 1rem;
        }

        .footer-brand p {
            margin-bottom: 1.5rem;
            font-size: 0.95rem;
        }

        .social-links {
            display: flex;
            gap: 1rem;
        }

        .social-links a {
            width: 40px;
            height: 40px;
            background-color: rgba(255,255,255,0.05);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--white);
            transition: var(--transition);
        }

        .social-links a:hover {
            background-color: var(--secondary-color);
            transform: translateY(-3px);
        }

        .footer-widget h4 {
            color: var(--white);
            font-family: var(--font-body);
            font-size: 1.1rem;
            text-transform: uppercase;
            letter-spacing: 1px;
            margin-bottom: 1.5rem;
            position: relative;
            padding-bottom: 0.5rem;
        }

        .footer-widget h4::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 30px;
            height: 2px;
            background-color: var(--secondary-color);
        }

        .footer-links li {
            margin-bottom: 0.8rem;
        }

        .footer-links a:hover {
            color: var(--secondary-color);
            padding-left: 5px;
        }

        .contact-info li {
            display: flex;
            gap: 1rem;
            margin-bottom: 1rem;
            align-items: flex-start;
        }

        .contact-info i {
            color: var(--secondary-color);
            margin-top: 5px;
        }

        .newsletter-form {
            display: flex;
            margin-top: 1rem;
        }

        .newsletter-form input {
            padding: 0.8rem;
            border: none;
            background-color: rgba(255,255,255,0.1);
            color: var(--white);
            border-radius: var(--radius) 0 0 var(--radius);
            width: 100%;
            outline: none;
        }

        .newsletter-form button {
            background-color: var(--secondary-color);
            color: var(--white);
            border: none;
            padding: 0 1.2rem;
            border-radius: 0 var(--radius) var(--radius) 0;
            cursor: pointer;
            transition: var(--transition);
        }

        .newsletter-form button:hover {
            background-color: #b45309;
        }

        .footer-bottom {
            border-top: 1px solid rgba(255,255,255,0.1);
            padding-top: 2rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-size: 0.9rem;
        }

        .footer-bottom-links a {
            margin-left: 1.5rem;
        }

        .footer-bottom-links a:hover {
            color: var(--white);
        }

        /* Responsive Design */
        @media (max-width: 1024px) {
            .main-layout {
                grid-template-columns: 1fr;
            }
            
            .welcome-grid {
                grid-template-columns: 1fr;
            }

            .welcome-quote {
                position: static;
                max-width: 100%;
                margin-top: -20px;
                z-index: 2;
                position: relative;
            }

            .sermon-card {
                grid-template-columns: 1fr;
            }

            .footer-grid {
                grid-template-columns: 1fr 1fr;
            }
        }

        @media (max-width: 768px) {
            .top-bar {
                display: none;
            }

            .mobile-menu-btn {
                display: block;
            }

            nav {
                position: absolute;
                top: 100%;
                left: 0;
                width: 100%;
                background-color: var(--white);
                padding: 1rem 2rem;
                box-shadow: var(--shadow-md);
                display: none;
            }

            nav.active {
                display: block;
            }

            nav ul {
                flex-direction: column;
                gap: 1rem;
                align-items: flex-start;
            }

            .hero h2 {
                font-size: 2.5rem;
            }

            .hero-buttons {
                flex-direction: column;
            }

            .footer-grid {
                grid-template-columns: 1fr;
            }

            .footer-bottom {
                flex-direction: column;
                gap: 1rem;
                text-align: center;
            }

            .footer-bottom-links a {
                margin: 0 0.8rem;
            }
        }
    </style>
</head>
<body>

    <!-- Top Bar -->
    <div class="top-bar">
        <div class="container top-bar-content">
            <div>
                <i class="fas fa-map-marker-alt" style="color: var(--secondary-color); margin-right: 5px;"></i> 742 Evergreen Spiritual Way, Serenity Valley
                <span style="margin: 0 10px;">|</span>
                <i class="fas fa-clock" style="color: var(--secondary-color); margin-right: 5px;"></i> Sunday Worship: 9:00 AM & 11:00 AM
            </div>
            <div class="top-bar-links">
                <a href="#prayer-request"><i class="fas fa-pray"></i> Prayer Request</a>
                <a href="#give"><i class="fas fa-heart"></i> Online Giving</a>
                <a href="#livestream"><i class="fas fa-video"></i> Watch Live</a>
            </div>
        </div>
    </div>

    <!-- Header & Navigation -->
    <header>
        <div class="nav-container">
            <a href="#" class="brand">
                <img src="https://placehold.co/60x60/1e293b/d97706?text=G%26L&font=playfair+display" alt="Grace & Light Sanctuary Logo">
                <div class="brand-text">
                    <h1>Grace & Light Sanctuary</h1>
                    <span>A Haven for Spiritual Renewal & Community</span>
                </div>
            </a>
            <button class="mobile-menu-btn" id="mobile-menu-toggle" aria-label="Toggle Menu">
                <i class="fas fa-bars"></i>
            </button>
            <nav id="main-nav">
                <ul>
                    <li><a href="#home" class="active">Home</a></li>
                    <li><a href="#about">About</a></li>
                    <li><a href="#our-faith">Our Faith</a></li>
                    <li><a href="#ministries">Ministries</a></li>
                    <li><a href="#sermons">Sermons</a></li>
                    <li><a href="#events">Events</a></li>
                    <li><a href="#contact">Contact</a></li>
                    <li><a href="#visit" class="btn btn-primary" style="color: white; padding: 0.5rem 1.2rem;">Plan a Visit</a></li>
                </ul>
            </nav>
        </div>
    </header>

    <!-- Hero Section -->
    <section class="hero" id="home">
        <div class="hero-content">
            <span class="hero-subtitle">Welcome Home</span>
            <h2>Walk in Purpose. Grow in Grace.</h2>
            <p>Whether you are a lifelong believer or exploring spirituality for the very first time, our doors and hearts are open to you. Discover a vibrant faith community dedicated to authentic worship, compassionate outreach, and transformative scripture study.</p>
            <div class="hero-buttons">
                <a href="#worship" class="btn btn-primary">Join Worship This Sunday</a>
                <a href="#about" class="btn btn-secondary">Explore Our Faith</a>
            </div>
        </div>
    </section>

    <!-- Main Content & Sidebar Layout -->
    <div class="main-layout">
        
        <!-- Main Content Area -->
        <main>
            
            <!-- Section 1: About & Our Faith -->
            <section class="content-section" id="about">
                <div class="section-header">
                    <span class="section-tag" id="our-faith">Who We Are & Our Faith</span>
                    <h2 class="section-title">Anchored in Ancient Wisdom, Living for Today</h2>
                </div>
                <div class="welcome-grid">
                    <div class="welcome-image">
                        <img src="https://picsum.photos/600/700?random=1" alt="Congregation worshipping together">
                        <div class="welcome-quote">
                            "For where two or three gather in my name, there am I with them."
                        </div>
                    </div>
                    <div class="welcome-text">
                        <p>At <strong>Grace & Light Sanctuary</strong>, we believe that spirituality is not a rigid set of rules, but a living, breathing journey of transformation. Founded over four decades ago, our sanctuary has grown from a small living-room prayer group into a thriving, multigenerational congregation committed to embodying love and justice in our city.</p>
                        <p>Our faith is deeply rooted in sacred scripture, which we approach with both reverence and intellectual curiosity. Through inspiring weekly sermons, contemplative prayer gatherings, and vibrant music ministries, we seek to create sacred spaces where the divine can be encountered personally and corporately.</p>
                        <p>We embrace questions, celebrate diversity, and believe that every individual carries a unique spiritual gift. No matter your background, your doubts, or your past, you have a seat at our table.</p>
                        <div style="margin-top: 2rem;">
                            <a href="#contact-pastor" class="btn btn-outline">Contact Pastor</a>
                            <a href="#beliefs" style="margin-left: 1.5rem; font-weight: 700; color: var(--accent-color);">Read Our Statement of Faith <i class="fas fa-arrow-right"></i></a>
                        </div>
                    </div>
                </div>
            </section>

            <!-- Section 2: Ministries & Programs -->
            <section class="content-section" id="ministries">
                <div class="section-header">
                    <span class="section-tag">Connect & Serve</span>
                    <h2 class="section-title">Pathways to Fellowship & Growth</h2>
                    <p style="margin-top: 1rem;">Faith isn't meant to be lived in isolation. Discover how you can connect with others, deepen your spiritual roots, and make a tangible difference through our core ministries.</p>
                </div>
                
                <div class="ministries-grid">
                    <!-- Ministry 1 -->
                    <div class="ministry-card">
                        <div class="ministry-img">
                            <img src="https://picsum.photos/400/300?random=2" alt="Outreach Ministry">
                            <div class="ministry-icon"><i class="fas fa-hands-helping"></i></div>
                        </div>
                        <div class="ministry-content">
                            <h3>Compassion Outreach</h3>
                            <p>Faith in action is the cornerstone of our mission. Our Outreach Ministry partners with local shelters, operates a weekly community food pantry, and organizes global relief efforts to bring hope and practical aid to the marginalized and vulnerable.</p>
                            <a href="#outreach" class="ministry-link">Get Involved <i class="fas fa-chevron-right"></i></a>
                        </div>
                    </div>

                    <!-- Ministry 2 -->
                    <div class="ministry-card">
                        <div class="ministry-img">
                            <img src="https://picsum.photos/400/300?random=3" alt="Study Groups">
                            <div class="ministry-icon"><i class="fas fa-book-open"></i></div>
                        </div>
                        <div class="ministry-content">
                            <h3>Life & Study Groups</h3>
                            <p>Move from the pews into a circle of friends. Our mid-week Study Groups gather in homes across the city to unpack Sunday's sermon, dive deep into scripture, share meals, and support one another through life's joys and trials through dedicated prayer.</p>
                            <a href="#groups" class="ministry-link">Find a Group <i class="fas fa-chevron-right"></i></a>
                        </div>
                    </div>

                    <!-- Ministry 3 -->
                    <div class="ministry-card">
                        <div class="ministry-img">
                            <img src="https://picsum.photos/400/300?random=4" alt="Youth Programs">
                            <div class="ministry-icon"><i class="fas fa-seedling"></i></div>
                        </div>
                        <div class="ministry-content">
                            <h3>NextGen Youth & Kids</h3>
                            <p>Empowering the next generation to build an authentic faith of their own. From our secure, joy-filled Sunday nursery to our dynamic high school youth group retreats, we provide mentorship, safe spaces, and engaging biblical teaching.</p>
                            <a href="#youth" class="ministry-link">Explore Youth <i class="fas fa-chevron-right"></i></a>
                        </div>
                    </div>
                </div>
            </section>

            <!-- Section 3: Interactive Element (Daily Devotional Calendar) -->
            <section class="content-section" id="devotional">
                <div class="section-header">
                    <span class="section-tag">Spiritual Nourishment</span>
                    <h2 class="section-title">Weekly Devotional & Lectionary</h2>
                    <p style="margin-top: 1rem;">Take a moment of pause in your busy week. Select a day below to read our community's shared scripture, reflection, and daily prayer focus.</p>
                </div>

                <div class="devotional-box">
                    <div class="devotional-tabs">
                        <button class="dev-tab active" onclick="openDevotional(event, 'mon')">Monday</button>
                        <button class="dev-tab" onclick="openDevotional(event, 'tue')">Tuesday</button>
                        <button class="dev-tab" onclick="openDevotional(event, 'wed')">Wednesday</button>
                        <button class="dev-tab" onclick="openDevotional(event, 'thu')">Thursday</button>
                        <button class="dev-tab" onclick="openDevotional(event, 'fri')">Friday</button>
                        <button class="dev-tab" onclick="openDevotional(event, 'wknd')">Weekend</button>
                    </div>

                    <div class="devotional-content-area">
                        <!-- Monday -->
                        <div id="mon" class="dev-pane active">
                            <div class="scripture-box">
                                "Be still, and know that I am God; I will be exalted among the nations, I will be exalted in the earth."
                                <span class="scripture-ref">— Psalm 46:10</span>
                            </div>
                            <div class="dev-reflection">
                                <h4>The Courage to Be Still</h4>
                                <p>As a new week begins, the world immediately demands our hustle, our productivity, and our anxiety. Yet, the ancient psalmist invites us into a radical counter-cultural posture: stillness. Stillness is not laziness; it is an act of profound trust. When we pause to breathe and center our spirits, we acknowledge that the universe does not rest on our shoulders alone.</p>
                            </div>
                            <div class="prayer-prompt">
                                <strong><i class="fas fa-pray"></i> Today's Prayer Focus:</strong> Pray for peace of mind amidst busy schedules, and ask for the wisdom to prioritize what truly matters this week.
                            </div>
                        </div>

                        <!-- Tuesday -->
                        <div id="tue" class="dev-pane">
                            <div class="scripture-box">
                                "Let all that you do be done in love."
                                <span class="scripture-ref">— 1 Corinthians 16:14</span>
                            </div>
                            <div class="dev-reflection">
                                <h4>The Quiet Revolution of Love</h4>
                                <p>It is easy to love in the abstract, to love humanity as a concept. The true test of our spiritual maturity happens in the mundane interactions of a Tuesday afternoon—how we speak to a frustrated coworker, how we react in traffic, how we listen to a family member. When love becomes our motivating lens, ordinary tasks are transformed into sacred ministry.</p>
                            </div>
                            <div class="prayer-prompt">
                                <strong><i class="fas fa-pray"></i> Today's Prayer Focus:</strong> Pray for someone you find difficult to love. Ask for softened hearts and eyes to see them with compassion.
                            </div>
                        </div>

                        <!-- Wednesday -->
                        <div id="wed" class="dev-pane">
                            <div class="scripture-box">
                                "The light shines in the darkness, and the darkness has not overcome it."
                                <span class="scripture-ref">— John 1:5</span>
                            </div>
                            <div class="dev-reflection">
                                <h4>Carriers of Dawn</h4>
                                <p>Mid-week fatigue can often amplify the heavy news of our world. It is easy to feel overwhelmed by shadows of division, grief, or uncertainty. Remember today that darkness is merely the absence of light; it has no power of its own when even a single candle is lit. Through your kindness, integrity, and hope, you are that candle in your community.</p>
                            </div>
                            <div class="prayer-prompt">
                                <strong><i class="fas fa-pray"></i> Today's Prayer Focus:</strong> Lift up those walking through seasons of grief, depression, or illness. Pray that they feel comforted and supported.
                            </div>
                        </div>

                        <!-- Thursday -->
                        <div id="thu" class="dev-pane">
                            <div class="scripture-box">
                                "He has shown you, O mortal, what is good. And what does the Lord require of you? To act justly and to love mercy and to walk humbly with your God."
                                <span class="scripture-ref">— Micah 6:8</span>
                            </div>
                            <div class="dev-reflection">
                                <h4>The Threefold Path</h4>
                                <p>The prophet Micah distills the entirety of religious duty into three rhythmic movements: Justice, Mercy, and Humility. Justice calls us to repair systems that harm the vulnerable. Mercy calls us to forgive as we have been forgiven. Humility reminds us that we are fellow travelers, not the judges of the world. Which of these three is calling for your attention today?</p>
                            </div>
                            <div class="prayer-prompt">
                                <strong><i class="fas fa-pray"></i> Today's Prayer Focus:</strong> Pray for our city leaders, outreach ministries, and all who work tirelessly for social justice and equity.
                            </div>
                        </div>

                        <!-- Friday -->
                        <div id="fri" class="dev-pane">
                            <div class="scripture-box">
                                "Come to me, all you who are weary and burdened, and I will give you rest."
                                <span class="scripture-ref">— Matthew 11:28</span>
                            </div>
                            <div class="dev-reflection">
                                <h4>Laying Down the Heavy Stones</h4>
                                <p>As the work week draws to a close, take inventory of the burdens you have accumulated. Unresolved guilt, worry about the future, the pressure to appear perfect—these are heavy stones we were never meant to carry. Spiritual rest begins the moment we unclench our fists and release control back into the hands of Grace.</p>
                            </div>
                            <div class="prayer-prompt">
                                <strong><i class="fas fa-pray"></i> Today's Prayer Focus:</strong> A prayer of release and gratitude. Thank God for sustaining you through the week and surrender your unfinished tasks.
                            </div>
                        </div>

                        <!-- Weekend -->
                        <div id="wknd" class="dev-pane">
                            <div class="scripture-box">
                                "I was glad when they said unto me, Let us go into the house of the Lord."
                                <span class="scripture-ref">— Psalm 122:1</span>
                            </div>
                            <div class="dev-reflection">
                                <h4>Preparing for Sacred Gathering</h4>
                                <p>The weekend offers us the gift of Sabbath—a sanctuary in time. Whether you are resting in nature, spending time with loved ones, or preparing to join us for Sunday worship, allow your soul to catch up with your body. Come to the sanctuary this Sunday not as a spectator, but as an active participant in grace, ready to receive and give encouragement.</p>
                            </div>
                            <div class="prayer-prompt">
                                <strong><i class="fas fa-pray"></i> Today's Prayer Focus:</strong> Pray for our pastors, worship leaders, and volunteers preparing for Sunday services, and for all first-time guests who will walk through our doors.
                            </div>
                        </div>
                    </div>
                </div>
            </section>

            <!-- Section 4: Latest Sermon -->
            <section class="content-section" id="sermons" style="margin-bottom: 0;">
                <div class="section-header">
                    <span class="section-tag">The Spoken Word</span>
                    <h2 class="section-title">Recent Messages & Teachings</h2>
                </div>

                <div class="sermon-card">
                    <div class="sermon-thumb">
                        <img src="https://picsum.photos/500/350?grayscale" alt="Latest Sermon Thumbnail">
                        <div class="play-overlay">
                            <div class="play-btn"><i class="fas fa-play"></i></div>
                        </div>
                    </div>
                    <div class="sermon-details">
                        <span class="sermon-meta">Series: Anchored in Hope • Part 4</span>
                        <h3>Finding Peace in the Midst of the Storm</h3>
                        <p>Delivered by <strong>Rev. Dr. Thomas Vance</strong> on October 22. In this deeply moving sermon, Pastor Thomas explores the biblical narrative of the calming of the sea, unpacking how we can cultivate an unshakeable interior peace even when external circumstances feel chaotic and uncertain.</p>
                        <div class="sermon-actions">
                            <a href="#watch" class="btn btn-primary"><i class="fas fa-video" style="margin-right: 5px;"></i> Watch Video</a>
                            <a href="#listen" class="btn btn-secondary"><i class="fas fa-headphones" style="margin-right: 5px;"></i> Listen Audio</a>
                            <a href="#notes" class="btn btn-secondary"><i class="fas fa-file-pdf" style="margin-right: 5px;"></i> Sermon Notes & Scripture</a>
                        </div>
                    </div>
                </div>
            </section>

        </main>

        <!-- Sidebar -->
        <aside class="sidebar">
            
            <!-- Widget 1: Service Schedule -->
            <div class="widget widget-accent" id="worship">
                <h3 class="widget-title"><i class="far fa-clock"></i> Service Schedule</h3>
                <p style="font-size: 0.9rem; margin-bottom: 1rem;">Join us in person or via our online sanctuary livestream.</p>
                <ul class="schedule-list">
                    <li>
                        <div>
                            <span class="schedule-day">Sunday Traditional</span>
                            <span class="schedule-desc">Choir, Liturgical Prayer & Communion</span>
                        </div>
                        <span class="schedule-time">9:00 AM</span>
                    </li>
                    <li>
                        <div>
                            <span class="schedule-day">Sunday Contemporary</span>
                            <span class="schedule-desc">Modern Worship Band & Kids Ministry</span>
                        </div>
                        <span class="schedule-time">11:00 AM</span>
                    </li>
                    <li>
                        <div>
                            <span class="schedule-day">Wednesday Vespers</span>
                            <span class="schedule-desc">Mid-week Contemplative Prayer & Study</span>
                        </div>
                        <span class="schedule-time">7:00 PM</span>
                    </li>
                    <li>
                        <div>
                            <span class="schedule-day">Friday Youth Night</span>
                            <span class="schedule-desc">Middle & High School Fellowship</span>
                        </div>
                        <span class="schedule-time">6:30 PM</span>
                    </li>
                </ul>
                <a href="#directions" class="btn btn-primary" style="width: 100%; margin-top: 1.5rem;">Get Directions</a>
            </div>

            <!-- Widget 2: Pastor's Welcome -->
            <div class="widget">
                <h3 class="widget-title"><i class="fas fa-dove"></i> A Word From Our Pastor</h3>
                <div class="pastor-profile">
                    <img src="https://i.pravatar.cc/150?u=pastorthomas" alt="Rev. Dr. Thomas Vance">
                    <div class="pastor-info">
                        <h4>Rev. Dr. Thomas Vance</h4>
                        <span>Senior Lead Pastor</span>
                    </div>
                </div>
                <p style="font-size: 0.95rem; font-style: italic; margin-bottom: 1rem;">"Peace be with you. Whether you arecelebrating a mountaintop moment or walking through a dark valley, please know you don't have to walk alone. Our pastoral team is always here to listen, pray, and support you."</p>
                <a href="#contact-pastor" class="btn btn-outline" style="width: 100%; font-size: 0.8rem; padding: 0.6rem;">Contact Pastor Thomas</a>
            </div>

            <!-- Widget 3: Upcoming Events & Volunteer Opportunities -->
            <div class="widget" id="events">
                <h3 class="widget-title"><i class="far fa-calendar-alt"></i> Community Highlights</h3>
                
                <div class="event-item">
                    <div class="event-date">
                        NOV <span>04</span>
                    </div>
                    <div class="event-info">
                        <h4>Autumn Harvest Food Drive</h4>
                        <p>Volunteer Opportunity: Help us pack and distribute 500 meal boxes for local families.</p>
                        <a href="#volunteer" class="event-link">Sign Up to Serve <i class="fas fa-arrow-right"></i></a>
                    </div>
                </div>

                <div class="event-item">
                    <div class="event-date">
                        NOV <span>12</span>
                    </div>
                    <div class="event-info">
                        <h4>Newcomers Luncheon</h4>
                        <p>New to Grace & Light? Enjoy a free meal after the 11 AM service and meet our ministry leaders.</p>
                        <a href="#rsvp" class="event-link">RSVP Today <i class="fas fa-arrow-right"></i></a>
                    </div>
                </div>

                <div class="event-item">
                    <div class="event-date">
                        NOV <span>18</span>
                    </div>
                    <div class="event-info">
                        <h4>Women's Spiritual Retreat</h4>
                        <p>A day of quiet reflection, worship, and fellowship at Serenity Lake Center.</p>
                        <a href="#register" class="event-link">Register Now <i class="fas fa-arrow-right"></i></a>
                    </div>
                </div>
            </div>

        </aside>
    </div>

    <!-- Testimonials Section -->
    <section class="testimonials-section">
        <div class="container">
            <div class="section-header" style="text-align: center;">
                <span class="section-tag" style="color: var(--secondary-color);">Voices of Grace</span>
                <h2 class="section-title" style="display: inline-block;">Stories of Transformation</h2>
                <style>
                    .testimonials-section .section-title::after {
                        left: 50%;
                        transform: translateX(-50%);
                    }
                </style>
            </div>

            <div class="testimonials-grid">
                <div class="testimonial-card">
                    <i class="fas fa-quote-right quote-icon"></i>
                    <p class="testimonial-text">"After moving to the city, I felt completely isolated. Walking into Grace & Light for the first time, I was met with such genuine warmth. Joining a Wednesday night scripture study group didn't just deepen my faith—it gave me a family."</p>
                    <div class="testimonial-author">
                        <img src="https://i.pravatar.cc/100?u=sarahj" alt="Sarah Jenkins">
                        <div class="author-details">
                            <h4>Sarah Jenkins</h4>
                            <span>Member since 2021 • Study Group Leader</span>
                        </div>
                    </div>
                </div>

                <div class="testimonial-card">
                    <i class="fas fa-quote-right quote-icon"></i>
                    <p class="testimonial-text">"I had been away from church for twenty years due to past hurt. Pastor Thomas's sermons on grace without judgment helped heal my spirit. Here, my doubts weren't shunned; they were welcomed as part of my spiritual growth."</p>
                    <div class="testimonial-author">
                        <img src="https://i.pravatar.cc/100?u=marcusd" alt="Marcus Rodriguez">
                        <div class="author-details">
                            <h4>Marcus Rodriguez</h4>
                            <span>Member since 2019 • Outreach Volunteer</span>
                        </div>
                    </div>
                </div>

                <div class="testimonial-card">
                    <i class="fas fa-quote-right quote-icon"></i>
                    <p class="testimonial-text">"The NextGen Youth program has been a blessing for our teenagers. In a world full of pressures, having dedicated mentors who pray for them and guide them in truth has made an incredible impact on our entire household."</p>
                    <div class="testimonial-author">
                        <img src="https://i.pravatar.cc/100?u=elena" alt="David & Elena Chen">
                        <div class="author-details">
                            <h4>David & Elena Chen</h4>
                            <span>Parents & Sanctuary Choir Members</span>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </section>

    <!-- FAQ Section (Expectations for Visitors) -->
    <section class="faq-section" id="visit">
        <div class="container">
            <div class="section-header" style="text-align: center;">
                <span class="section-tag">Planning Your Visit</span>
                <h2 class="section-title" style="display: inline-block;">Frequently Asked Questions</h2>
                <style>
                    .faq-section .section-title::after {
                        left: 50%;
                        transform: translateX(-50%);
                    }
                </style>
                <p style="max-width: 600px; margin: 1rem auto 0;">We know visiting a new church or spiritual center can feel intimidating. Here is everything you need to know to feel right at home.</p>
            </div>

            <div class="faq-container">
                <div class="accordion-item">
                    <button class="accordion-header">
                        What should I wear to a Sunday service?
                        <i class="fas fa-chevron-down accordion-icon"></i>
                    </button>
                    <div class="accordion-body">
                        <p>Come exatamente as you are! At Grace & Light, you will see everything from suits and dresses (more common at our 9:00 AM traditional service) to jeans, t-shirts, and sneakers (very common at our 11:00 AM service). We care about you, not your wardrobe.</p>
                    </div>
                </div>

                <div class="accordion-item">
                    <button class="accordion-header">
                        What is available for my children during worship?
                        <i class="fas fa-chevron-down accordion-icon"></i>
                    </button>
                    <div class="accordion-body">
                        <p>Children are always welcome to stay with you in the main sanctuary! However, we also offer our safe, background-checked <strong>GraceKids</strong> program during the 11:00 AM service for ages 6 months through 5th grade, featuring age-appropriate bible stories, music, and crafts. Look for the Family Check-In kiosk in the main lobby.</p>
                    </div>
                </div>

                <div class="accordion-item">
                    <button class="accordion-header">
                        Will I be singled out as a first-time visitor?
                        <i class="fas fa-chevron-down accordion-icon"></i>
                    </button>
                    <div class="accordion-body">
                        <p>Never. We want you to experience worship at your own pace. We will not ask you to stand up, wear a badge, or introduce yourself to the crowd. If you'd like to connect, you can simply fill out a digital connect card at your seat or stop by the Welcome Center on your way out for a free gift.</p>
                    </div>
                </div>

                <div class="accordion-item">
                    <button class="accordion-header">
                        How do I request pastoral care or prayer?
                        <i class="fas fa-chevron-down accordion-icon"></i>
                    </button>
                    <div class="accordion-body">
                        <p>Prayer is the heartbeat of our community. Following every service, members of our Prayer Team are available at the front of the sanctuary to pray with you privately. You can also submit confidential prayer requests online at any time, or call our church office to schedule an appointment with a pastor.</p>
                    </div>
                </div>
            </div>
        </div>
    </section>

    <!-- Call to Action Banner -->
    <section class="cta-banner" id="prayer-request">
        <div class="container">
            <h2>Need Prayer or Spiritual Guidance?</h2>
            <p>You don't have to carry your burdens alone. Our pastoral team and prayer ministry commit to lifting up every request in confidential, fervent prayer.</p>
            <div style="display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap;">
                <a href="#submit-prayer" class="btn btn-primary" style="background-color: var(--primary-color);">Submit a Prayer Request</a>
                <a href="#contact" class="btn btn-secondary">Speak With a Pastor</a>
            </div>
        </div>
    </section>

    <!-- Footer -->
    <footer id="contact">
        <div class="container">
            <div class="footer-grid">
                
                <!-- Col 1: Brand & Bio -->
                <div class="footer-brand">
                    <h3>Grace & Light Sanctuary</h3>
                    <p>A welcoming, Christ-centered spiritual community dedicated to authentic worship, deep scripture study, and compassionate outreach in Serenity Valley and beyond.</p>
                    <div class="social-links">
                        <a href="#" aria-label="Facebook"><i class="fab fa-facebook-f"></i></a>
                        <a href="#" aria-label="YouTube"><i class="fab fa-youtube"></i></a>
                        <a href="#" aria-label="Instagram"><i class="fab fa-instagram"></i></a>
                        <a href="#" aria-label="Spotify Podcast"><i class="fab fa-spotify"></i></a>
                    </div>
                </div>

                <!-- Col 2: Quick Links -->
                <div class="footer-widget">
                    <h4>Quick Links</h4>
                    <ul class="footer-links">
                        <li><a href="#about">About Us</a></li>
                        <li><a href="#our-faith">Statement of Faith</a></li>
                        <li><a href="#leadership">Pastoral Leadership</a></li>
                        <li><a href="#sermons">Sermon Archive</a></li>
                        <li><a href="#events">Events Calendar</a></li>
                        <li><a href="#give">Online Giving & Tithes</a></li>
                    </ul>
                </div>

                <!-- Col 3: Ministries -->
                <div class="footer-widget">
                    <h4>Ministries</h4>
                    <ul class="footer-links">
                        <li><a href="#ministries">Compassion Outreach</a></li>
                        <li><a href="#ministries">Life & Study Groups</a></li>
                        <li><a href="#ministries">NextGen Youth & Kids</a></li>
                        <li><a href="#music">Choir & Worship Arts</a></li>
                        <li><a href="#care">GriefShare & Care</a></li>
                        <li><a href="#volunteer">Volunteer Portal</a></li>
                    </ul>
                </div>

                <!-- Col 4: Contact & Newsletter -->
                <div class="footer-widget">
                    <h4>Contact Us</h4>
                    <ul class="contact-info">
                        <li>
                            <i class="fas fa-map-marker-alt"></i>
                            <span>742 Evergreen Spiritual Way<br>Serenity Valley, CA 90210</span>
                        </li>
                        <li>
                            <i class="fas fa-phone-alt"></i>
                            <span>(555) 234-5678</span>
                        </li>
                        <li>
                            <i class="fas fa-envelope"></i>
                            <span>peace@graceandlightsanctuary.org</span>
                        </li>
                    </ul>
                    <h4 style="margin-top: 1.5rem; margin-bottom: 0.5rem; font-size: 0.95rem;">Weekly Grace Newsletter</h4>
                    <form class="newsletter-form" onsubmit="event.preventDefault(); alert('Thank you for subscribing to our weekly devotional newsletter!');">
                        <input type="email" placeholder="Your email address..." required>
                        <button type="submit" aria-label="Subscribe"><i class="fas fa-paper-plane"></i></button>
                    </form>
                </div>

            </div>

            <div class="footer-bottom">
                <p>&copy; <span id="current-year"></span> Grace & Light Sanctuary. All Rights Reserved.</p>
                <div class="footer-bottom-links">
                    <a href="#privacy">Privacy Policy</a>
                    <a href="#terms">Terms of Use</a>
                    <a href="#safeguarding">Child Safeguarding Policy</a>
                </div>
            </div>
        </div>
    </footer>

    <!-- Interactive Scripts -->
    <script>
        // Set Current Year in Footer
        document.getElementById('current-year').textContent = new Date().getFullYear();

        // Mobile Menu Toggle
        const mobileMenuBtn = document.getElementById('mobile-menu-toggle');
        const mainNav = document.getElementById('main-nav');

        mobileMenuBtn.addEventListener('click', () => {
            mainNav.classList.toggle('active');
            const icon = mobileMenuBtn.querySelector('i');
            if (mainNav.classList.contains('active')) {
                icon.classList.remove('fa-bars');
                icon.classList.add('fa-times');
            } else {
                icon.classList.remove('fa-times');
                icon.classList.add('fa-bars');
            }
        });

        // Interactive Devotional Tabs
        function openDevotional(evt, dayId) {
            // Hide all panes
            const panes = document.getElementsByClassName('dev-pane');
            for (let i = 0; i < panes.length; i++) {
                panes[i].classList.remove('active');
            }

            // Remove active class from all tabs
            const tabs = document.getElementsByClassName('dev-tab');
            for (let i = 0; i < tabs.length; i++) {
                tabs[i].classList.remove('active');
            }

            // Show current pane and activate tab
            document.getElementById(dayId).classList.add('active');
            evt.currentTarget.classList.add('active');
        }

        // FAQ Accordion
        const accordionHeaders = document.querySelectorAll('.accordion-header');

        accordionHeaders.forEach(header => {
            header.addEventListener('click', () => {
                const body = header.nextElementSibling;
                const isActive = header.classList.contains('active');

                // Close all other accordions
                accordionHeaders.forEach(otherHeader => {
                    otherHeader.classList.remove('active');
                    otherHeader.nextElementSibling.classList.remove('active');
                });

                // Toggle current accordion
                if (!isActive) {
                    header.classList.add('active');
                    body.classList.add('active');
                }
            });
        });

        // Smooth scrolling for anchor links
        document.querySelectorAll('a[href^="#"]').forEach(anchor => {
            anchor.addEventListener('click', function (e) {
                const targetId = this.getAttribute('href');
                if(targetId === '#') return;
                
                const targetElement = document.querySelector(targetId);
                if (targetElement) {
                    e.preventDefault();
                    // Close mobile menu if open
                    mainNav.classList.remove('active');
                    mobileMenuBtn.querySelector('i').classList.replace('fa-times', 'fa-bars');
                    
                    targetElement.scrollIntoView({
                        behavior: 'smooth',
                        block: 'start'
                    });
                }
            });
        });
    </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:09:16.304Z",
  "url": "https://benchmark.aimac.invalid/241a02632d4d15a5c035df2e7411489e2c9d1c96ecd6de0ce1bc8018115a9661.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": "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": []
    },
    {
      "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": "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\"><i class=\"fab fa-facebook-f\"></i></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\"><i class=\"fab fa-facebook-f\"></i></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\"><i class=\"fab fa-facebook-f\"></i></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\"><i class=\"fab fa-facebook-f\"></i></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\"><i class=\"fab fa-facebook-f\"></i></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": "<i class=\"fas fa-map-marker-alt\" style=\"color: var(--secondary-color); margin-right: 5px;\"></i>",
          "target": [
            "div:nth-child(1) > .fa-map-marker-alt.fas"
          ]
        }
      ]
    },
    {
      "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=\"dev-tab active\" onclick=\"openDevotional(event, 'mon')\">Monday</button>",
          "target": [
            "button[onclick=\"openDevotional(event, 'mon')\"]"
          ]
        }
      ]
    },
    {
      "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>Grace &amp; Light Sanctuary</h1>",
                  "target": [
                    "h1"
                  ]
                },
                {
                  "html": "<h2>Walk in Purpose. Grow in Grace.</h2>",
                  "target": [
                    ".hero-content > h2"
                  ]
                },
                {
                  "html": "<h2 class=\"section-title\">Anchored in Ancient Wisdom, Living for Today</h2>",
                  "target": [
                    "#about > .section-header > .section-title"
                  ]
                },
                {
                  "html": "<h2 class=\"section-title\">Pathways to Fellowship &amp; Growth</h2>",
                  "target": [
                    "#ministries > .section-header > .section-title"
                  ]
                },
                {
                  "html": "<h3>Compassion Outreach</h3>",
                  "target": [
                    ".ministry-card:nth-child(1) > .ministry-content > h3"
                  ]
                },
                {
                  "html": "<h3>Life &amp; Study Groups</h3>",
                  "target": [
                    ".ministry-card:nth-child(2) > .ministry-content > h3"
                  ]
                },
                {
                  "html": "<h3>NextGen Youth &amp; Kids</h3>",
                  "target": [
                    ".ministry-card:nth-child(3) > .ministry-content > h3"
                  ]
                },
                {
                  "html": "<h2 class=\"section-title\">Weekly Devotional &amp; Lectionary</h2>",
                  "target": [
                    "#devotional > .section-header > .section-title"
                  ]
                },
                {
                  "html": "<h4>The Courage to Be Still</h4>",
                  "target": [
                    "#mon > .dev-reflection > h4"
                  ]
                },
                {
                  "html": "<h2 class=\"section-title\">Recent Messages &amp; Teachings</h2>",
                  "target": [
                    "#sermons > .section-header > .section-title"
                  ]
                },
                {
                  "html": "<h3>Finding Peace in the Midst of the Storm</h3>",
                  "target": [
                    ".sermon-details > h3"
                  ]
                },
                {
                  "html": "<h3 class=\"widget-title\"><i class=\"far fa-clock\"></i> Service Schedule</h3>",
                  "target": [
                    "#worship > .widget-title"
                  ]
                },
                {
                  "html": "<h3 class=\"widget-title\"><i class=\"fas fa-dove\"></i> A Word From Our Pastor</h3>",
                  "target": [
                    ".widget:nth-child(2) > .widget-title"
                  ]
                },
                {
                  "html": "<h4>Rev. Dr. Thomas Vance</h4>",
                  "target": [
                    ".pastor-info > h4"
                  ]
                },
                {
                  "html": "<h3 class=\"widget-title\"><i class=\"far fa-calendar-alt\"></i> Community Highlights</h3>",
                  "target": [
                    "#events > .widget-title"
                  ]
                },
                {
                  "html": "<h4>Autumn Harvest Food Drive</h4>",
                  "target": [
                    ".event-item:nth-child(2) > .event-info > h4"
                  ]
                },
                {
                  "html": "<h4>Newcomers Luncheon</h4>",
                  "target": [
                    ".event-item:nth-child(3) > .event-info > h4"
                  ]
                },
                {
                  "html": "<h4>Women's Spiritual Retreat</h4>",
                  "target": [
                    ".event-item:nth-child(4) > .event-info > h4"
                  ]
                },
                {
                  "html": "<h2 class=\"section-title\" style=\"display: inline-block;\">Stories of Transformation</h2>",
                  "target": [
                    ".testimonials-section > .container > .section-header > .section-title"
                  ]
                },
                {
                  "html": "<h4>Sarah Jenkins</h4>",
                  "target": [
                    ".testimonial-card:nth-child(1) > .testimonial-author > .author-details > h4"
                  ]
                },
                {
                  "html": "<h4>Marcus Rodriguez</h4>",
                  "target": [
                    ".testimonial-card:nth-child(2) > .testimonial-author > .author-details > h4"
                  ]
                },
                {
                  "html": "<h4>David &amp; Elena Chen</h4>",
                  "target": [
                    ".testimonial-card:nth-child(3) > .testimonial-author > .author-details > h4"
                  ]
                },
                {
                  "html": "<h2 class=\"section-title\" style=\"display: inline-block;\">Frequently Asked Questions</h2>",
                  "target": [
                    "#visit > .container > .section-header > .section-title"
                  ]
                },
                {
                  "html": "<h2>Need Prayer or Spiritual Guidance?</h2>",
                  "target": [
                    ".container > h2"
                  ]
                },
                {
                  "html": "<h3>Grace &amp; Light Sanctuary</h3>",
                  "target": [
                    ".footer-brand > h3"
                  ]
                },
                {
                  "html": "<h4>Quick Links</h4>",
                  "target": [
                    ".footer-widget:nth-child(2) > h4"
                  ]
                },
                {
                  "html": "<h4>Ministries</h4>",
                  "target": [
                    ".footer-widget:nth-child(3) > h4"
                  ]
                },
                {
                  "html": "<h4>Contact Us</h4>",
                  "target": [
                    ".footer-widget:nth-child(4) > h4:nth-child(1)"
                  ]
                },
                {
                  "html": "<h4 style=\"margin-top: 1.5rem; margin-bottom: 0.5rem; font-size: 0.95rem;\">Weekly Grace Newsletter</h4>",
                  "target": [
                    "h4:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Page has a heading"
            },
            {
              "id": "landmark",
              "data": null,
              "relatedNodes": [
                {
                  "html": "<main>",
                  "target": [
                    "main"
                  ]
                }
              ],
              "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": "#ffffff",
                "bgColor": "#1e293b",
                "contrastRatio": 14.62,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element has sufficient color contrast of 14.62"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<div>",
          "target": [
            ".top-bar-content > div:nth-child(1)"
          ]
        }
      ]
    },
    {
      "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": "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": [],
              "impact": "moderate",
              "message": "Form field does not have multiple label elements"
            }
          ],
          "impact": null,
          "html": "<input type=\"email\" placeholder=\"Your email address...\" required=\"\">",
          "target": [
            "input"
          ]
        }
      ]
    },
    {
      "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/60x60/1e293b/d97706?text=G%26L&amp;font=playfair+display\" alt=\"Grace &amp; Light Sanctuary Logo\">",
          "target": [
            "img[alt=\"Grace & Light Sanctuary 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": "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=\"email\" placeholder=\"Your email address...\" required=\"\">",
          "target": [
            "input"
          ]
        }
      ]
    },
    {
      "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": [
        {
          "any": [
            {
              "id": "link-in-text-block-style",
              "data": null,
              "relatedNodes": [
                {
                  "html": "<div class=\"event-info\">",
                  "target": [
                    ".event-item:nth-child(2) > .event-info"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Links can be distinguished from surrounding text by visual styling"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<a href=\"#volunteer\" class=\"event-link\">Sign Up to Serve <i class=\"fas fa-arrow-right\"></i></a>",
          "target": [
            ".event-link[href$=\"#volunteer\"]"
          ]
        }
      ]
    },
    {
      "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=\"#prayer-request\"><i class=\"fas fa-pray\"></i> Prayer Request</a>",
          "target": [
            "a[href$=\"#prayer-request\"]"
          ]
        }
      ]
    },
    {
      "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": [
            "#main-nav > 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=\"#home\" class=\"active\">Home</a></li>",
          "target": [
            "#main-nav > 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/60x60/1e293b/d97706?text=G%26L&amp;font=playfair+display\" alt=\"Grace &amp; Light Sanctuary Logo\">",
          "target": [
            "img[alt=\"Grace & Light Sanctuary Logo\"]"
          ]
        }
      ]
    },
    {
      "id": "target-size",
      "impact": "serious",
      "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-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=\"#prayer-request\"><i class=\"fas fa-pray\"></i> Prayer Request</a>",
          "target": [
            "a[href$=\"#prayer-request\"]"
          ]
        }
      ]
    }
  ],
  "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": "12.0pt (16px)",
                "fontWeight": "bold",
                "messageKey": "bgGradient",
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section class=\"hero\" id=\"home\">",
                  "target": [
                    "#home"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element's background color could not be determined due to a background gradient"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"hero-subtitle\">Welcome Home</span>",
          "target": [
            ".hero-subtitle"
          ],
          "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": "#94a3b8",
                "bgColor": "#ffffff",
                "contrastRatio": 2.56,
                "fontSize": "9.6pt (12.8px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<header>",
                  "target": [
                    "header"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 9.6pt (12.8px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>A Haven for Spiritual Renewal &amp; Community</span>",
          "target": [
            ".brand-text > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 9.6pt (12.8px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#ffffff",
                "bgColor": "#d97706",
                "contrastRatio": 3.18,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<a href=\"#visit\" class=\"btn btn-primary\" style=\"color: white; padding: 0.5rem 1.2rem;\">Plan a Visit</a>",
                  "target": [
                    "a[href$=\"#visit\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.18 (foreground color: #ffffff, background color: #d97706, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<a href=\"#visit\" class=\"btn btn-primary\" style=\"color: white; padding: 0.5rem 1.2rem;\">Plan a Visit</a>",
          "target": [
            "a[href$=\"#visit\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.18 (foreground color: #ffffff, background color: #d97706, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#ffffff",
                "bgColor": "#d97706",
                "contrastRatio": 3.18,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<a href=\"#worship\" class=\"btn btn-primary\">Join Worship This Sunday</a>",
                  "target": [
                    "a[href$=\"#worship\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.18 (foreground color: #ffffff, background color: #d97706, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<a href=\"#worship\" class=\"btn btn-primary\">Join Worship This Sunday</a>",
          "target": [
            "a[href$=\"#worship\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.18 (foreground color: #ffffff, background color: #d97706, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#d97706",
                "bgColor": "#fef3c7",
                "contrastRatio": 2.86,
                "fontSize": "10.8pt (14.4px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"scripture-box\">\n                                \"Be still, and know that I am God; I will be exalted among the nations, I will be exalted in the earth.\"\n                                <span class=\"scripture-ref\">\u2014 Psalm 46:10</span>\n                            </div>",
                  "target": [
                    "#mon > .scripture-box"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.86 (foreground color: #d97706, background color: #fef3c7, font size: 10.8pt (14.4px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"scripture-ref\">\u2014 Psalm 46:10</span>",
          "target": [
            "#mon > .scripture-box > .scripture-ref"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.86 (foreground color: #d97706, background color: #fef3c7, font size: 10.8pt (14.4px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#ffffff",
                "bgColor": "#d97706",
                "contrastRatio": 3.18,
                "fontSize": "9.6pt (12.8px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<a href=\"#watch\" class=\"btn btn-primary\"><i class=\"fas fa-video\" style=\"margin-right: 5px;\"></i> Watch Video</a>",
                  "target": [
                    "a[href$=\"#watch\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.18 (foreground color: #ffffff, background color: #d97706, font size: 9.6pt (12.8px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<a href=\"#watch\" class=\"btn btn-primary\"><i class=\"fas fa-video\" style=\"margin-right: 5px;\"></i> Watch Video</a>",
          "target": [
            "a[href$=\"#watch\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.18 (foreground color: #ffffff, background color: #d97706, font size: 9.6pt (12.8px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#94a3b8",
                "bgColor": "#ffffff",
                "contrastRatio": 2.56,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"widget widget-accent\" id=\"worship\">",
                  "target": [
                    "#worship"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"schedule-desc\">Choir, Liturgical Prayer &amp; Communion</span>",
          "target": [
            "li:nth-child(1) > div > .schedule-desc"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#94a3b8",
                "bgColor": "#ffffff",
                "contrastRatio": 2.56,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"widget widget-accent\" id=\"worship\">",
                  "target": [
                    "#worship"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"schedule-desc\">Modern Worship Band &amp; Kids Ministry</span>",
          "target": [
            "li:nth-child(2) > div > .schedule-desc"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#94a3b8",
                "bgColor": "#ffffff",
                "contrastRatio": 2.56,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"widget widget-accent\" id=\"worship\">",
                  "target": [
                    "#worship"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"schedule-desc\">Mid-week Contemplative Prayer &amp; Study</span>",
          "target": [
            "li:nth-child(3) > div > .schedule-desc"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#94a3b8",
                "bgColor": "#ffffff",
                "contrastRatio": 2.56,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"widget widget-accent\" id=\"worship\">",
                  "target": [
                    "#worship"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"schedule-desc\">Middle &amp; High School Fellowship</span>",
          "target": [
            "li:nth-child(4) > div > .schedule-desc"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#ffffff",
                "bgColor": "#d97706",
                "contrastRatio": 3.18,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<a href=\"#directions\" class=\"btn btn-primary\" style=\"width: 100%; margin-top: 1.5rem;\">Get Directions</a>",
                  "target": [
                    "a[href$=\"#directions\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.18 (foreground color: #ffffff, background color: #d97706, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<a href=\"#directions\" class=\"btn btn-primary\" style=\"width: 100%; margin-top: 1.5rem;\">Get Directions</a>",
          "target": [
            "a[href$=\"#directions\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.18 (foreground color: #ffffff, background color: #d97706, font size: 10.2pt (13.6px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#94a3b8",
                "bgColor": "#ffffff",
                "contrastRatio": 2.56,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"widget\">",
                  "target": [
                    ".widget:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Senior Lead Pastor</span>",
          "target": [
            ".pastor-info > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#d97706",
                "bgColor": "#fef3c7",
                "contrastRatio": 2.86,
                "fontSize": "12.0pt (16px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"event-date\">\n                        NOV <span>04</span>\n                    </div>",
                  "target": [
                    ".event-item:nth-child(2) > .event-date"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.86 (foreground color: #d97706, background color: #fef3c7, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<div class=\"event-date\">\n                        NOV <span>04</span>\n                    </div>",
          "target": [
            ".event-item:nth-child(2) > .event-date"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.86 (foreground color: #d97706, background color: #fef3c7, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#94a3b8",
                "bgColor": "#ffffff",
                "contrastRatio": 2.56,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"widget\" id=\"events\">",
                  "target": [
                    "#events"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p>Volunteer Opportunity: Help us pack and distribute 500 meal boxes for local families.</p>",
          "target": [
            ".event-item:nth-child(2) > .event-info > p"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#d97706",
                "bgColor": "#fef3c7",
                "contrastRatio": 2.86,
                "fontSize": "12.0pt (16px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"event-date\">\n                        NOV <span>12</span>\n                    </div>",
                  "target": [
                    ".event-item:nth-child(3) > .event-date"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.86 (foreground color: #d97706, background color: #fef3c7, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<div class=\"event-date\">\n                        NOV <span>12</span>\n                    </div>",
          "target": [
            ".event-item:nth-child(3) > .event-date"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.86 (foreground color: #d97706, background color: #fef3c7, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#94a3b8",
                "bgColor": "#ffffff",
                "contrastRatio": 2.56,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"widget\" id=\"events\">",
                  "target": [
                    "#events"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p>New to Grace &amp; Light? Enjoy a free meal after the 11 AM service and meet our ministry leaders.</p>",
          "target": [
            ".event-item:nth-child(3) > .event-info > p"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#d97706",
                "bgColor": "#fef3c7",
                "contrastRatio": 2.86,
                "fontSize": "12.0pt (16px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"event-date\">\n                        NOV <span>18</span>\n                    </div>",
                  "target": [
                    ".event-item:nth-child(4) > .event-date"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.86 (foreground color: #d97706, background color: #fef3c7, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<div class=\"event-date\">\n                        NOV <span>18</span>\n                    </div>",
          "target": [
            ".event-item:nth-child(4) > .event-date"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.86 (foreground color: #d97706, background color: #fef3c7, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#94a3b8",
                "bgColor": "#ffffff",
                "contrastRatio": 2.56,
                "fontSize": "10.2pt (13.6px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"widget\" id=\"events\">",
                  "target": [
                    "#events"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p>A day of quiet reflection, worship, and fellowship at Serenity Lake Center.</p>",
          "target": [
            ".event-item:nth-child(4) > .event-info > p"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.56 (foreground color: #94a3b8, background color: #ffffff, font size: 10.2pt (13.6px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#d97706",
                "bgColor": "#293445",
                "contrastRatio": 3.94,
                "fontSize": "9.6pt (12.8px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"testimonial-card\">",
                  "target": [
                    ".testimonial-card:nth-child(1)"
                  ]
                },
                {
                  "html": "<section class=\"testimonials-section\">",
                  "target": [
                    ".testimonials-section"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.94 (foreground color: #d97706, background color: #293445, font size: 9.6pt (12.8px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Member since 2021 \u2022 Study Group Leader</span>",
          "target": [
            ".testimonial-card:nth-child(1) > .testimonial-author > .author-details > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.94 (foreground color: #d97706, background color: #293445, font size: 9.6pt (12.8px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#d97706",
                "bgColor": "#293445",
                "contrastRatio": 3.94,
                "fontSize": "9.6pt (12.8px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"testimonial-card\">",
                  "target": [
                    ".testimonial-card:nth-child(2)"
                  ]
                },
                {
                  "html": "<section class=\"testimonials-section\">",
                  "target": [
                    ".testimonials-section"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.94 (foreground color: #d97706, background color: #293445, font size: 9.6pt (12.8px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Member since 2019 \u2022 Outreach Volunteer</span>",
          "target": [
            ".testimonial-card:nth-child(2) > .testimonial-author > .author-details > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.94 (foreground color: #d97706, background color: #293445, font size: 9.6pt (12.8px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#d97706",
                "bgColor": "#293445",
                "contrastRatio": 3.94,
                "fontSize": "9.6pt (12.8px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"testimonial-card\">",
                  "target": [
                    ".testimonial-card:nth-child(3)"
                  ]
                },
                {
                  "html": "<section class=\"testimonials-section\">",
                  "target": [
                    ".testimonials-section"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.94 (foreground color: #d97706, background color: #293445, font size: 9.6pt (12.8px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Parents &amp; Sanctuary Choir Members</span>",
          "target": [
            ".testimonial-card:nth-child(3) > .testimonial-author > .author-details > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.94 (foreground color: #d97706, background color: #293445, font size: 9.6pt (12.8px), font weight: normal). Expected contrast ratio of 4.5:1"
        }
      ]
    },
    {
      "id": "target-size",
      "impact": "serious",
      "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": {
                "messageKey": "partiallyObscured",
                "minSize": 24,
                "width": 193.9,
                "height": 14.8
              },
              "relatedNodes": [
                {
                  "html": "<a href=\"#beliefs\" style=\"margin-left: 1.5rem; font-weight: 700; color: var(--accent-color);\">Read Our Statement of Faith <i class=\"fas fa-arrow-right\"></i></a>",
                  "target": [
                    "a[href$=\"#beliefs\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Target has insufficient size because it is partially obscured (smallest space is 193.9px by 14.8px, should be at least 24px by 24px)"
            },
            {
              "id": "target-offset",
              "data": {
                "closestOffset": 14.8,
                "minOffset": 24
              },
              "relatedNodes": [
                {
                  "html": "<a href=\"#beliefs\" style=\"margin-left: 1.5rem; font-weight: 700; color: var(--accent-color);\">Read Our Statement of Faith <i class=\"fas fa-arrow-right\"></i></a>",
                  "target": [
                    "a[href$=\"#beliefs\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Target has insufficient space to its closest neighbors. Safe clickable space has a diameter of 14.8px instead of at least 24px."
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<a href=\"#contact-pastor\" class=\"btn btn-outline\">Contact Pastor</a>",
          "target": [
            ".welcome-text > div > .btn-outline.btn[href$=\"#contact-pastor\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Target has insufficient size because it is partially obscured (smallest space is 193.9px by 14.8px, should be at least 24px by 24px)\n  Target has insufficient space to its closest neighbors. Safe clickable space has a diameter of 14.8px instead of at least 24px."
        }
      ]
    }
  ],
  "coverage": {
    "contract": "main-document-vertical-scroll",
    "complete": true,
    "positions": [
      {
        "y": 0,
        "height": 6661
      },
      {
        "y": 576,
        "height": 6661
      },
      {
        "y": 1152,
        "height": 6661
      },
      {
        "y": 1728,
        "height": 6661
      },
      {
        "y": 2304,
        "height": 6661
      },
      {
        "y": 2880,
        "height": 6661
      },
      {
        "y": 3456,
        "height": 6661
      },
      {
        "y": 4032,
        "height": 6661
      },
      {
        "y": 4608,
        "height": 6661
      },
      {
        "y": 5184,
        "height": 6661
      },
      {
        "y": 5760,
        "height": 6661
      },
      {
        "y": 5941,
        "height": 6661
      }
    ],
    "scans": 13,
    "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 "Religion and Spirituality" 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: "Religion and Spirituality"
- Description: Religious organizations, spiritual resources, faith communities, and worship services.

**Your Creative Task:**
1.  **Invent:** Create a unique, professional-sounding site name and a strong tagline fitting the "Religion and Spirituality" 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: "Our Faith", "Contact", "About".
-   **MAIN CONTENT:** Structure this area with **at least 3-4 distinct, well-developed sections**.
    -   Address key topics relevant to the "Religion and Spirituality" category. Consider themes similar to: "Outreach Ministry", "Study Groups", "Youth Programs".
    -   **Content Depth:** Populate each section with **substantial, realistic text** (multiple sentences/paragraphs). Use authentic industry language and terminology like: "prayer", "scripture", "sermon".
    -   **Visuals:** Integrate relevant placeholder images logically within the content sections.
    -   **Calls to Action:** Include clear and contextually relevant CTAs. Use strong verbs similar to: "Contact Pastor", "Get Involved", "Join Worship".
-   **ENGAGEMENT (Recommended):** Strongly consider incorporating **one meaningful interactive element** that would genuinely benefit a user in the "Religion and Spirituality" sector. Ideas similar but not limited to: "devotional calendar".
-   **SIDEBAR (Optional):** If your design includes a sidebar, populate it with **useful, relevant content**. Ideas: "volunteer opportunities", "community highlights", "service schedule".
-   **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.