/* _content/FiftyPlus.Website/Views/Home/Index.cshtml.rz.scp.css */
/* Hero Section */
.hero-section[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    height: 70vh;
    background: #3A6C5D;
    padding: 2rem 1rem;
    gap: 2rem;
}

.hero-content[b-jopd2ps78j] {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
}

.hero-title[b-jopd2ps78j] {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 1rem;
    color: #F7FBFE;
}

.hero-subtitle[b-jopd2ps78j] {
    font-size: 1.25rem;
    margin-bottom: 1rem;
    text-align: center;
    width:100%;
    color: #F7FBFE;
}

.hero-text[b-jopd2ps78j] {
    font-size: 1rem;
    margin-bottom: 2rem;
    color: #F7FBFE;
}

.hero-coming-soon[b-jopd2ps78j] {
    font-size: 1em;
    color: #F7FBFE;
    text-align: center;
    width:100%;
}

.hero-buttons[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    justify-content:center;
    gap: 1rem;
    margin-top: 2rem;
    width: 100%;
    max-width: 400px;
}

.hero-image[b-jopd2ps78j] {
    flex: 1;
    display: none; /* Hidden on mobile */
    justify-content: center;
    align-items: center;
}

.hero-image img[b-jopd2ps78j] {
    width: 100%;
    max-width: 600px;
    height: auto;
    border-radius: 8px;
}

/* Awareness Bar */
.awareness-bar[b-jopd2ps78j] {
    background: #fff9c4;
    padding: 1rem;
    display: none; /* Hidden by default, show with JS after 10 seconds */
}

.awareness-bar.show[b-jopd2ps78j] {
    display: block;
}

.awareness-content[b-jopd2ps78j] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
}

.awareness-icon[b-jopd2ps78j] {
    font-size: 1.5rem;
}

.awareness-text[b-jopd2ps78j] {
    flex: 1;
    min-width: 200px;
}

.awareness-link[b-jopd2ps78j] {
    color: #3A6C5D;
    font-weight: 600;
    text-decoration: underline;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
}

.awareness-link:hover[b-jopd2ps78j] {
    text-decoration: none;
    color: #2d5548;
}

/* Section titles in primary background sections */
.hero-section .section-title[b-jopd2ps78j],
.problem-section .section-title[b-jopd2ps78j],
.assessment-section .section-title[b-jopd2ps78j],
.programs-section .section-title[b-jopd2ps78j],
.trust-section .section-title[b-jopd2ps78j],
.location-section .section-title[b-jopd2ps78j] {
    color: #F7FBFE;
}

/* Section intro/subtitle in primary background sections */
.hero-section .section-intro[b-jopd2ps78j],
.hero-section .section-subtitle[b-jopd2ps78j],
.problem-section .section-intro[b-jopd2ps78j],
.problem-section .section-subtitle[b-jopd2ps78j],
.assessment-section .section-intro[b-jopd2ps78j],
.assessment-section .section-subtitle[b-jopd2ps78j],
.programs-section .section-intro[b-jopd2ps78j],
.programs-section .section-subtitle[b-jopd2ps78j],
.trust-section .section-intro[b-jopd2ps78j],
.trust-section .section-subtitle[b-jopd2ps78j],
.location-section .section-intro[b-jopd2ps78j],
.location-section .section-subtitle[b-jopd2ps78j] {
    color: #F7FBFE;
}

/* What We Do */
.services-grid[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 2rem;
}

.service-card[b-jopd2ps78j] {
    flex: 1;
    padding: 2rem;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    text-align: center;
}

.service-icon[b-jopd2ps78j] {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.service-card h3[b-jopd2ps78j] {
    font-size: 1.5rem;
    margin-bottom: 1rem;
    color: #3A6C5D;
}

.service-card ul[b-jopd2ps78j] {
    list-style: none;
    padding: 0;
    text-align: left;
    margin: 1.5rem 0 0 0;
}

.service-card li[b-jopd2ps78j] {
    padding: 0.75rem 0 0.75rem 2rem;
    color: var(--gray-600);
    font-size: 1rem;
    line-height: 1.6;
    position: relative;
    transition: color 0.3s ease, transform 0.2s ease;
}

.service-card li[b-jopd2ps78j]::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0.75rem;
    color: var(--primary);
    font-weight: 700;
    font-size: 1.1rem;
    width: 1.5rem;
    height: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(58, 108, 93, 0.1);
    border-radius: 50%;
    flex-shrink: 0;
}

.service-card li:hover[b-jopd2ps78j] {
    color: var(--primary);
    transform: translateX(4px);
}

/* The Problem */
.problem-section[b-jopd2ps78j] {
    background: #3A6C5D;
    color: #F7FBFE;
}

.stats-grid[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin: 2rem 0;
}

.stat-card[b-jopd2ps78j] {
    flex: 1;
    text-align: center;
    padding: 2.5rem 2rem;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.stat-card:hover[b-jopd2ps78j] {
    transform: translateY(-4px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

/* Stat cards in primary background sections keep white background for readability */
.problem-section .stat-card[b-jopd2ps78j] {
    background: #fff;
    border: 2px solid var(--secondary);
}

.stat-icon[b-jopd2ps78j] {
    font-size: 3.5rem;
    margin-bottom: 1.5rem;
    display: block;
    line-height: 1;
}

.stat-number[b-jopd2ps78j] {
    font-size: 3rem;
    font-weight: 700;
    color: #3A6C5D;
    margin-bottom: 0.5rem;
}

.stat-label[b-jopd2ps78j] {
    color: var(--gray-800);
    font-size: 1.1rem;
    font-weight: 600;
    line-height: 1.5;
    margin: 0;
}

.stat-label small[b-jopd2ps78j] {
    display: block;
    font-size: 0.95rem;
    font-weight: 400;
    color: var(--gray-600);
    margin-top: 0.75rem;
    line-height: 1.6;
    font-style: normal;
}

.problem-text[b-jopd2ps78j] {
    text-align: center;
    font-size: 1.1rem;
    margin: 2rem 0;
    color: #F7FBFE;
}

.problem-section .btn[b-jopd2ps78j] {
    display: block;
    margin: 0 auto;
    max-width: 300px;
}

/* Our Approach */
.approach-section[b-jopd2ps78j] {
    background: #fff;
}

.approach-section .section-container[b-jopd2ps78j] {
    padding: 5rem 1rem;
    max-width: 800px;
}

.approach-text[b-jopd2ps78j] {
    width: 100%;
}

.approach-intro[b-jopd2ps78j] {
    font-size: 1.15rem;
    margin-top: 2rem;
    margin-bottom: 2.5rem;
    color: var(--gray-600);
    line-height: 1.7;
    font-weight: 400;
}

.approach-list[b-jopd2ps78j] {
    list-style: none;
    padding: 0;
    margin: 2.5rem 0;
}

.approach-list li[b-jopd2ps78j] {
    padding: 0.75rem 0 0.75rem 2rem;
    font-size: 1.1rem;
    font-weight: 500;
    color: var(--gray-800);
    line-height: 1.8;
    position: relative;
    transition: color 0.3s ease, opacity 0.8s ease, transform 0.8s ease;
}

.approach-list li[b-jopd2ps78j]::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0.75rem;
    color: var(--primary);
    font-weight: 700;
    font-size: 1.2rem;
    line-height: 1;
}

.approach-list li:hover[b-jopd2ps78j] {
    color: var(--primary);
}

/* Staggered animation delays for list items */
.approach-list li:nth-child(1)[b-jopd2ps78j] { transition-delay: 0.1s; }
.approach-list li:nth-child(2)[b-jopd2ps78j] { transition-delay: 0.2s; }
.approach-list li:nth-child(3)[b-jopd2ps78j] { transition-delay: 0.3s; }
.approach-list li:nth-child(4)[b-jopd2ps78j] { transition-delay: 0.4s; }
.approach-list li:nth-child(5)[b-jopd2ps78j] { transition-delay: 0.5s; }
.approach-list li:nth-child(6)[b-jopd2ps78j] { transition-delay: 0.6s; }

.approach-closing[b-jopd2ps78j] {
    font-size: 1.2rem;
    font-weight: 600;
    margin-top: 1.5rem;
    color: var(--primary);
    line-height: 1.7;
    text-align:center;
}

.approach-image[b-jopd2ps78j] {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Assessment Section */
.assessment-section[b-jopd2ps78j] {
    background: #3A6C5D;
    color: #F7FBFE;
}

.assessment-content[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.assessment-preview[b-jopd2ps78j] {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

.assessment-form-container[b-jopd2ps78j] {
    flex: 1;
}

.assessment-subtitle[b-jopd2ps78j] {
    font-size: 1.25rem;
    text-align: center;
    margin-bottom: 1rem;
    color: #3A6C5D;
}

.assessment-description[b-jopd2ps78j] {
    text-align: center;
    margin-bottom: 2rem;
    color: #666;
}

.assessment-benefits[b-jopd2ps78j] {
    background: #fff;
    padding: 1.5rem;
    border-radius: 8px;
    margin-bottom: 2rem;
}

.assessment-benefits h3[b-jopd2ps78j] {
    font-size: 1.25rem;
    margin-bottom: 1rem;
    color: #3A6C5D;
}

.assessment-benefits ul[b-jopd2ps78j] {
    list-style: none;
    padding: 0;
    margin-bottom: 1rem;
}

.assessment-benefits li[b-jopd2ps78j] {
    padding: 0.5rem 0;
    color: #666;
}

.assessment-time[b-jopd2ps78j] {
    font-weight: 600;
    color: #3A6C5D;
}

.assessment-form[b-jopd2ps78j] {
    background: #fff;
    padding: 2rem;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}


.assessment-social-proof[b-jopd2ps78j] {
    text-align: center;
    margin-top: 1rem;
    color: #666;
    font-style: italic;
}

/* Assessment Modal Styles */
#assessmentModal .modal-header[b-jopd2ps78j] {
    background: #3A6C5D;
    color: #F7FBFE;
    border-bottom: none;
}

#assessmentModal .modal-title[b-jopd2ps78j] {
    color: #F7FBFE;
    font-size: 1.75rem;
}

#assessmentModal .btn-close[b-jopd2ps78j] {
    filter: invert(1) grayscale(100%) brightness(200%);
    opacity: 0.8;
    transition: opacity 0.3s ease;
}

#assessmentModal .btn-close:hover[b-jopd2ps78j] {
    opacity: 1;
}

#assessmentModal .modal-body[b-jopd2ps78j] {
    padding: 2rem;
}

#assessmentModal .assessment-form[b-jopd2ps78j] {
    background: transparent;
    padding: 0;
    box-shadow: none;
}

#assessmentModal .form-group[b-jopd2ps78j] {
    margin-bottom: 1.5rem;
}

#assessmentModal .form-group label[b-jopd2ps78j] {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
    color: var(--gray-500);
}

/* Modal inputs inherit site-wide form-control styles */

#assessmentModal .age-options[b-jopd2ps78j] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 0.5rem;
}

#assessmentModal .age-options label[b-jopd2ps78j] {
    display: flex;
    align-items: center;
    font-weight: normal;
    cursor: pointer;
}

#assessmentModal .age-options input[type="radio"][b-jopd2ps78j] {
    margin-right: 0.5rem;
}

#assessmentModal .btn-large[b-jopd2ps78j] {
    width: 100%;
    padding: 1rem;
    font-size: 1.1rem;
    margin-top: 1rem;
}


/* Membership Notification Modal Styles - same as assessment modal */
#membershipNotificationModal .modal-header[b-jopd2ps78j] {
    background: #3A6C5D;
    color: #F7FBFE;
    border-bottom: none;
}

#membershipNotificationModal .modal-title[b-jopd2ps78j] {
    color: #F7FBFE;
    font-size: 1.75rem;
}

#membershipNotificationModal .btn-close[b-jopd2ps78j] {
    filter: invert(1) grayscale(100%) brightness(200%);
    opacity: 0.8;
    transition: opacity 0.3s ease;
}

#membershipNotificationModal .btn-close:hover[b-jopd2ps78j] {
    opacity: 1;
}

#membershipNotificationModal .modal-body[b-jopd2ps78j] {
    padding: 2rem;
}

#membershipNotificationModal .assessment-form[b-jopd2ps78j] {
    background: transparent;
    padding: 0;
    box-shadow: none;
}

#membershipNotificationModal .form-group[b-jopd2ps78j] {
    margin-bottom: 1.5rem;
}

#membershipNotificationModal .form-group label[b-jopd2ps78j] {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
    color: var(--gray-500);
}

#membershipNotificationModal .btn-large[b-jopd2ps78j] {
    width: 100%;
    padding: 1rem;
    font-size: 1.1rem;
    margin-top: 1rem;
}

/* Programs Section */
.programs-section[b-jopd2ps78j] {
    background: var(--primary);
    color: #F7FBFE;
}

.program-coming-soon[b-jopd2ps78j] {
    background: var(--secondary);
    border: 1px solid var(--primary);
    padding:1em;
    border-radius:5px;
    margin-bottom: 1em;
}

.programs-grid[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 2rem;
}

.program-card[b-jopd2ps78j] {
    flex: 1;
    padding: 2rem;
    padding-top: 2.5rem;
    background: #fff;
    border: 2px solid var(--secondary);
    border-radius: 8px;
    position: relative;
    display: flex;
    flex-direction: column;
}

.program-featured[b-jopd2ps78j] {
    border-color: var(--secondary);
    border-width: 3px;
}

.program-badge[b-jopd2ps78j] {
    position: absolute;
    top: -12px;
    left: 1rem;
    background: var(--secondary);
    color: var(--primary);
    padding: 0.25rem 1rem;
    border-radius: 4px;
    font-size: 0.875rem;
    font-weight: 600;
    z-index: 1;
}

.program-price-top[b-jopd2ps78j] {
    font-size: 3.5rem;
    font-weight: 700;
    color: #3A6C5D;
    text-align: center;
    margin-top: 0;
    margin-bottom: 1rem;
    line-height: 1;
    letter-spacing: -0.02em;
    display: block;
}

.program-featured h3[b-jopd2ps78j] {
    font-size: 1.5rem;
    margin-top: 0;
    margin-bottom: 1rem;
    color: #3A6C5D;
    text-align: center;
    font-weight: 600;
}

.program-card h3[b-jopd2ps78j] {
    font-size: 1.75rem;
    margin-top: 1rem;
    margin-bottom: 0.5rem;
    color: #3A6C5D;
}

.program-subtitle[b-jopd2ps78j] {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 1rem;
    color: #333;
}

.program-description[b-jopd2ps78j] {
    margin-bottom: 1.5rem;
    color: #666;
    text-align: center;
    font-size: 1rem;
}

.program-includes h4[b-jopd2ps78j] {
    font-size: 1.1rem;
    margin-bottom: 0.75rem;
    color: #3A6C5D;
}

.program-featured .program-includes[b-jopd2ps78j] {
    margin-top: 1.5rem;
    margin-bottom: 2rem;
}

.program-includes ul[b-jopd2ps78j] {
    list-style: none;
    padding: 0;
    margin-bottom: 1.5rem;
    text-align: left;
}

.program-includes li[b-jopd2ps78j] {
    padding: 0.75rem 0 0.75rem 2rem;
    color: var(--gray-600);
    font-size: 1rem;
    line-height: 1.6;
    position: relative;
}

.program-includes li[b-jopd2ps78j]::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0.75rem;
    color: var(--primary);
    font-weight: 700;
    font-size: 1.1rem;
    width: 1.5rem;
    height: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(58, 108, 93, 0.1);
    border-radius: 50%;
    flex-shrink: 0;
}

.program-pricing[b-jopd2ps78j] {
    margin: 1.5rem 0;
    text-align: center;
}

.pricing-comparison[b-jopd2ps78j] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2rem;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.pricing-item[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
}

.pricing-label[b-jopd2ps78j] {
    font-size: 0.875rem;
    color: #666;
    font-weight: 500;
}

.pricing-amount[b-jopd2ps78j] {
    font-size: 2rem;
    font-weight: 700;
}

.pricing-strikethrough[b-jopd2ps78j] {
    color: #999;
    text-decoration: line-through;
}

.pricing-highlight[b-jopd2ps78j] {
    color: #3A6C5D;
    font-size: 2.5rem;
}

.pricing-savings[b-jopd2ps78j] {
    font-size: 0.9rem;
    color: #3A6C5D;
    font-weight: 600;
    margin-top: 0.5rem;
}

.price[b-jopd2ps78j] {
    font-size: 2.5rem;
    font-weight: 700;
    color: #3A6C5D;
    display: block;
    text-align:center;
}

.price-original[b-jopd2ps78j] {
    font-size: 1.25rem;
    color: var(--gray-500);
    text-decoration: line-through;
    margin-left: 0.75rem;
    font-weight: 400;
    display: block;
    text-align: center;
}

.program-note[b-jopd2ps78j] {
    text-align: center;
    color: #666;
    margin: 1rem 0;
}

.program-testimonial[b-jopd2ps78j] {
    margin-top: 1.5rem;
    font-style: italic;
    color: #666;
    text-align: center;
}

.program-opening[b-jopd2ps78j] {
    text-align: center;
    font-weight: 600;
    color: #3A6C5D;
    margin-top: 1rem;
}

.program-card .btn[b-jopd2ps78j] {
    margin-top: auto;
    width: 100%;
    text-align: center;
    padding: 0.875rem 1.5rem;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 6px;
}

.program-card .d-inline-flex[b-jopd2ps78j] {
    margin: 1.5rem 0;
    justify-content: center;
}

.program-card > p:last-of-type:not(.program-description)[b-jopd2ps78j] {
    margin-bottom: 1.5rem;
    text-align: center;
}

.program-card h6[b-jopd2ps78j] {
    margin-bottom: 1.5rem;
    text-align: center;
}

/* Who We Help */
.who-we-help[b-jopd2ps78j] {
    background: #fff;
}

.persona-grid[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin: 2rem 0;
}

.persona-card[b-jopd2ps78j] {
    flex: 1;
    padding: 2rem;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    text-align: center;
}

.persona-card h3[b-jopd2ps78j] {
    font-size: 1.5rem;
    margin-bottom: 1rem;
    color: #3A6C5D;
}

.persona-card p[b-jopd2ps78j] {
    color: #666;
    font-size: 1.1rem;
}

/* Persona cards in regular background sections */
.who-we-help .persona-card[b-jopd2ps78j] {
    background: #fff;
    border: 2px solid #e0e0e0;
}

.who-we-help .btn[b-jopd2ps78j] {
    display: block;
    margin: 2rem auto 0;
    max-width: 400px;
}

/* Trust Section */
.trust-section[b-jopd2ps78j] {
    background: var(--primary);
    color: #F7FBFE;
    padding: 2rem 1rem;
}

.trust-logos[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
    text-align: center;
    font-weight: 600;
    color: #F7FBFE;
}

.trust-testimonial[b-jopd2ps78j] {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
    font-size: 1.1rem;
    font-style: italic;
    color: #666;
    padding: 1.5rem;
    background: #fff;
    border: 2px solid var(--secondary);
    border-radius: 8px;
}

/* Newsletter Section */
.newsletter-section[b-jopd2ps78j] {
    background: #fff;
}

.newsletter-box[b-jopd2ps78j] {
    max-width: 600px;
    margin: 0 auto;
    padding: 2rem;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    text-align: center;
}

.newsletter-box h2[b-jopd2ps78j] {
    font-size: 1.75rem;
    margin-bottom: 1rem;
    color: #3A6C5D;
}

.newsletter-box p[b-jopd2ps78j] {
    margin-bottom: 1.5rem;
    color: #666;
}

/* Newsletter box in regular background section */
.newsletter-section .newsletter-box[b-jopd2ps78j] {
    background: #fff;
    border: 2px solid #e0e0e0;
}

.newsletter-form[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 1rem;
}

.newsletter-form input[b-jopd2ps78j] {
    padding: 0.75rem;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 1rem;
}

.newsletter-note[b-jopd2ps78j] {
    font-size: 0.875rem;
    color: #999;
}

/* Location Section */
.location-section[b-jopd2ps78j] {
    background: var(--primary);
    color: #F7FBFE;
}

.location-section .row[b-jopd2ps78j] {
    margin-top: 2rem;
}

.location-content[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 2rem;
}

.location-info[b-jopd2ps78j] {
    flex: 1;
}

.location-info h3[b-jopd2ps78j] {
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
    color: #F7FBFE;
}

.location-details[b-jopd2ps78j] {
    margin-bottom: 1.5rem;
}

.location-details p[b-jopd2ps78j] {
    font-size: 1.1rem;
    margin-bottom: 0.75rem;
    color: #F7FBFE;
}

.location-description[b-jopd2ps78j] {
    margin-bottom: 1.5rem;
    color: #F7FBFE;
}

.location-buttons[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.location-map[b-jopd2ps78j] {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Location section text colors */
.location-section .text-white[b-jopd2ps78j] {
    color: #F7FBFE !important;
}

.location-section .text-white-80[b-jopd2ps78j] {
    color: rgba(247, 251, 254, 0.8) !important;
}

.location-section .location-features span[b-jopd2ps78j] {
    color: #F7FBFE;
}

/* Google Maps iframe styling */
.location-section iframe[b-jopd2ps78j] {
    border-radius: 12px;
}

/* Final CTA */
.final-cta[b-jopd2ps78j] {
    background: #fff;
}

.cta-paths[b-jopd2ps78j] {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 2rem;
}

.cta-path[b-jopd2ps78j] {
    flex: 1;
    padding: 2rem;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    text-align: center;
}

.cta-path h3[b-jopd2ps78j] {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
    color: #3A6C5D;
}

.cta-path p[b-jopd2ps78j] {
    margin-bottom: 1.5rem;
    color: #666;
}

/* CTA paths in regular background section */
.final-cta .cta-path[b-jopd2ps78j] {
    background: #fff;
    border: 2px solid #e0e0e0;
}

/* Homepage Images - Hidden on mobile, shown on tablet and desktop */
.homepage-image[b-jopd2ps78j] {
    display: none;
    width: 100%;
    max-width: 600px;
    height: auto;
    border-radius: 8px;
}

/* Tablet and Desktop */
@media (min-width: 768px) {
    .hero-image[b-jopd2ps78j] {
        display: flex; /* Show hero image on tablet and desktop */
    }

    .homepage-image[b-jopd2ps78j] {
        display: block;
    }

    .hero-section[b-jopd2ps78j] {
        flex-direction: row;
        align-items: center;
        padding: 3rem 2rem;
        height: auto;
        min-height: 600px;
    }

    .hero-content[b-jopd2ps78j] {
        text-align: left;
        align-items: flex-start;
    }

    .hero-title[b-jopd2ps78j] {
        font-size: 3rem;
    }

    .hero-buttons[b-jopd2ps78j] {
        flex-direction: row;
        max-width: none;
    }

    .services-grid[b-jopd2ps78j] {
        flex-direction: row;
    }

    .stats-grid[b-jopd2ps78j] {
        flex-direction: row;
    }

    .approach-section .section-container[b-jopd2ps78j] {
        max-width: 800px;
    }

    .assessment-content[b-jopd2ps78j] {
        flex-direction: row;
        align-items: flex-start;
    }

    .programs-grid[b-jopd2ps78j] {
        flex-direction: row;
    }

    .persona-grid[b-jopd2ps78j] {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .persona-card[b-jopd2ps78j] {
        flex: 1 1 calc(50% - 0.75rem);
    }

    .trust-logos[b-jopd2ps78j] {
        flex-direction: row;
        justify-content: center;
    }

    .newsletter-form[b-jopd2ps78j] {
        flex-direction: row;
    }

    .newsletter-form input[b-jopd2ps78j] {
        flex: 1;
    }

    .location-content[b-jopd2ps78j] {
        flex-direction: row;
    }

    .location-buttons[b-jopd2ps78j] {
        flex-direction: row;
    }

    .cta-paths[b-jopd2ps78j] {
        flex-direction: row;
    }
}

@media (min-width: 1024px) {
    .hero-title[b-jopd2ps78j] {
        font-size: 3.5rem;
    }

    .section-title[b-jopd2ps78j] {
        font-size: 2.5rem;
    }

    .persona-card[b-jopd2ps78j] {
        flex: 1 1 calc(25% - 1.125rem);
    }
}
/* _content/FiftyPlus.Website/Views/Home/JoinNewsletter.cshtml.rz.scp.css */
/* Newsletter Signup Landing Page - Using brand colors from site.css */
/* Styles are automatically scoped to this view by ASP.NET Core */

/* Ensure no whitespace from layout */
body:has(.newsletter-signup-page)[b-kgfy5e6yps],
body:has(.newsletter-signup-page) main[b-kgfy5e6yps] {
    margin: 0;
    padding: 0;
    height: 100vh;
    overflow: hidden;
}

.newsletter-signup-page[b-kgfy5e6yps] {
    background: var(--background);
    min-height: 100vh;
    height: 100vh;
    margin: 0;
    padding: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* LOGO SECTION - Desktop (in left column) */
.logo-section-desktop-left[b-kgfy5e6yps] {
    display: block;
    text-align: left;
    margin-bottom: 2rem;
}

.logo-section-desktop-left .full-logo-white[b-kgfy5e6yps] {
    max-width: 40%;
    height: auto;
    width: auto;
}

/* LOGO SECTION - Mobile Only (hidden on desktop, shown at top of left column on mobile) */
.logo-section-mobile[b-kgfy5e6yps] {
    display: none; /* Hidden on desktop, shown on mobile */
    text-align: center;
    margin-bottom: 2rem;
    padding: 1rem 0 0 0;
}

.logo-section-mobile .full-logo-white[b-kgfy5e6yps] {
    max-width: 180px;
    height: auto;
    width: auto;
}

/* SECTION 1: HERO */
.hero-section[b-kgfy5e6yps] {
    padding: 0;
    min-height: 100vh;
    height: 100vh;
    display: flex;
    align-items: stretch;
    margin: 0;
    overflow: hidden;
}

.hero-container[b-kgfy5e6yps] {
    width: 100%;
    margin: 0;
}

.hero-layout[b-kgfy5e6yps] {
    display: grid;
    grid-template-columns: 50% 50%;
    gap: 0;
    align-items: stretch;
    width: 100%;
    min-height: 100vh;
}

/* Left: Copy with Primary Background - Desktop */
.hero-copy[b-kgfy5e6yps] {
    background: var(--primary);
    color: #ffffff;
    padding: 3rem 3.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
    min-height: 100vh;
}

.hero-badge[b-kgfy5e6yps] {
    display: inline-block;
    padding: 0.4rem 0.875rem;
    background: rgba(255, 255, 255, 0.2);
    color: #ffffff;
    border-radius: 999px;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    margin-bottom: 1rem;
    width: fit-content;
}

.hero-headline[b-kgfy5e6yps] {
    font-size: 2.25rem;
    line-height: 1.3;
    color: #ffffff;
    margin-bottom: 1rem;
    font-weight: 700;
}

.hero-subheadline[b-kgfy5e6yps] {
    font-size: 1rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.95);
    margin-bottom: 1.25rem;
}

.hero-benefits[b-kgfy5e6yps] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

.benefit-item[b-kgfy5e6yps] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    font-size: 1rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.95);
}

.benefit-item .benefit-dot[b-kgfy5e6yps] {
    margin-right: 0;
}

.benefit-dot[b-kgfy5e6yps] {
    display: inline-block;
    width: 8px;
    height: 8px;
    background-color: var(--secondary);
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 0.5rem;
}

.benefit-item strong[b-kgfy5e6yps] {
    color: #ffffff;
}

/* Mobile-only CTA button */
.btn-join-newsletter-mobile[b-kgfy5e6yps] {
    display: none;
    width: 100%;
    background: #ffffff;
    color: var(--primary);
    border: 2px solid #ffffff;
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s;
    text-align: center;
    text-decoration: none;
    margin-top: 1rem;
    box-sizing: border-box;
}

.btn-join-newsletter-mobile:hover[b-kgfy5e6yps] {
    background: rgba(255, 255, 255, 0.9);
    color: var(--primary);
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

/* Trust Items Inline */
.trust-items-inline[b-kgfy5e6yps] {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.25rem;
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.9);
}

.trust-items-inline .trust-item[b-kgfy5e6yps] {
    display: flex;
    align-items: center;
    white-space: nowrap;
}

/* Content Teaser Inline */
.content-teaser-inline[b-kgfy5e6yps] {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
}

.content-teaser-inline .teaser-title[b-kgfy5e6yps] {
    font-size: 1.25rem;
    font-weight: 600;
    color: #ffffff;
    margin-bottom: 1rem;
}

.content-teaser-inline .teaser-topics[b-kgfy5e6yps] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.content-teaser-inline .topic-item[b-kgfy5e6yps] {
    padding: 0.625rem 1rem;
    background: transparent;
    border-left: 3px solid var(--secondary);
    border-radius: 0;
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.9);
    box-shadow: none;
}

/* Right: Logo + Form */
.hero-form[b-kgfy5e6yps] {
    background: var(--background);
    padding: 3rem 2rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    min-height: 100vh;
    width: 100%;
}

.form-card[b-kgfy5e6yps] {
    background: #ffffff;
    padding: 2.5rem;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    width: calc(100% - 2rem);
    max-width: none;
    box-sizing: border-box;
}

.form-header[b-kgfy5e6yps] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--gray-800);
    margin-bottom: 0.5rem;
    text-align: center;
}

.form-subheader[b-kgfy5e6yps] {
    font-size: 1rem;
    color: var(--primary);
    font-weight: 600;
    text-align: center;
    margin-bottom: 1.5rem;
}

.newsletter-form[b-kgfy5e6yps] {
    text-align: left;
}

/* Override form-group spacing for this form */
.newsletter-form .form-group[b-kgfy5e6yps] {
    margin-bottom: 1.5rem;
}

.newsletter-form .form-group label[b-kgfy5e6yps] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--gray-800);
}

/* Ensure minimum height for accessibility (50+ users) */
.newsletter-form .form-control[b-kgfy5e6yps] {
    min-height: 48px;
    box-sizing: border-box;
}

.validation-summary[b-kgfy5e6yps] {
    margin-bottom: 1rem;
    padding: 0.75rem;
    background: #fef2f2;
    border-radius: 6px;
    border: 1px solid #fecaca;
}

.btn-submit[b-kgfy5e6yps] {
    width: 100%;
    background: var(--primary);
    color: var(--background);
    border: none;
    padding: 1rem 2rem;
    font-size: 1.125rem;
    font-weight: 600;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.3s, transform 0.2s;
    min-height: 56px; /* Thumb-friendly on mobile */
    margin-top: 0.5rem;
}

.btn-submit:hover[b-kgfy5e6yps] {
    background-color: var(--primary);
    opacity: 0.9;
    transform: translateY(-1px);
}

.btn-submit:active[b-kgfy5e6yps] {
    transform: translateY(0);
}

.form-microcopy[b-kgfy5e6yps] {
    text-align: center;
    font-size: 0.875rem;
    color: var(--gray-500);
    margin-top: 1rem;
    margin-bottom: 0;
}

/* CONSENT CHECKBOXES */
.consent-group[b-kgfy5e6yps] {
    margin-bottom: 1.5rem;
    padding: 1rem;
    background: rgba(58, 108, 93, 0.05);
    border-radius: 8px;
    border: 1px solid rgba(58, 108, 93, 0.2);
}

.consent-intro[b-kgfy5e6yps] {
    font-size: 0.95rem;
    color: var(--gray-700);
    margin-bottom: 0.75rem;
    font-weight: 500;
}

.consent-checkboxes-wrapper[b-kgfy5e6yps] {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 2rem;
    flex-wrap: wrap;
}

.consent-checkbox-item[b-kgfy5e6yps] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    justify-content: flex-start;
}

.consent-checkbox-item input[type="checkbox"][b-kgfy5e6yps] {
    width: 20px;
    height: 20px;
    min-width: 20px;
    cursor: pointer;
    accent-color: var(--primary);
}

.consent-checkbox-item label[b-kgfy5e6yps] {
    font-size: 1rem;
    color: var(--gray-700);
    cursor: pointer;
    font-weight: 500;
    user-select: none;
}

.consent-checkbox-item input[type="checkbox"]:checked + label[b-kgfy5e6yps] {
    color: var(--primary);
}

.consent-group .text-danger[b-kgfy5e6yps] {
    display: block;
    margin-top: 0.5rem;
    font-size: 0.875rem;
}

.alert[b-kgfy5e6yps] {
    padding: 0.75rem 1rem;
    border-radius: 8px;
    margin-bottom: 1rem;
}

.alert-danger[b-kgfy5e6yps] {
    background-color: #fef2f2;
    color: #991b1b;
    border: 1px solid #fecaca;
}

/* MOBILE RESPONSIVE */
@media (max-width: 1024px) {
    /* Enable scrolling on mobile */
    body:has(.newsletter-signup-page)[b-kgfy5e6yps],
    body:has(.newsletter-signup-page) main[b-kgfy5e6yps] {
        height: auto;
        overflow: visible;
    }
    
    .newsletter-signup-page[b-kgfy5e6yps] {
        height: auto;
        min-height: 100vh;
        overflow: visible;
    }
    
    /* Hide desktop logo section on mobile */
    .logo-section-desktop-left[b-kgfy5e6yps] {
        display: none !important;
    }
    
    /* Show mobile logo section on mobile (at top of left column) */
    .logo-section-mobile[b-kgfy5e6yps] {
        display: block;
        text-align: center;
        margin-bottom: 2rem;
        padding: 0;
    }
    
    .logo-section-mobile .full-logo-white[b-kgfy5e6yps] {
        max-width: 160px;
    }
    
    .hero-section[b-kgfy5e6yps] {
        padding: 0;
        min-height: auto;
        height: auto;
    }
    
    .hero-layout[b-kgfy5e6yps] {
        grid-template-columns: 1fr;
        gap: 0;
    }
    
    /* Left column first on mobile with primary background */
    .hero-copy[b-kgfy5e6yps] {
        padding: 2.5rem 1.5rem;
        order: 1;
        min-height: auto;
    }
    
    /* Show mobile CTA button */
    .btn-join-newsletter-mobile[b-kgfy5e6yps] {
        display: block;
    }
    
    /* Form section second on mobile */
    .hero-form[b-kgfy5e6yps] {
        padding: 2.5rem 1.5rem;
        order: 2;
        min-height: auto;
    }
    
    .hero-headline[b-kgfy5e6yps] {
        font-size: 2rem;
    }
    
    .hero-subheadline[b-kgfy5e6yps] {
        font-size: 1rem;
    }
    
    .form-card[b-kgfy5e6yps] {
        padding: 2rem 1.5rem;
        max-width: 100%;
    }
    
    .form-header[b-kgfy5e6yps] {
        font-size: 1.5rem;
    }
    
    .trust-items-inline[b-kgfy5e6yps] {
        flex-direction: column;
        gap: 0.75rem;
        font-size: 0.875rem;
    }
    
    .trust-items-inline .trust-item[b-kgfy5e6yps] {
        justify-content: flex-start;
    }
    
    .content-teaser-inline .teaser-title[b-kgfy5e6yps] {
        font-size: 1.25rem;
    }
    
    .content-teaser-inline .topic-item[b-kgfy5e6yps] {
        font-size: 0.875rem;
        padding: 0.75rem 1rem;
    }
    
    .consent-checkboxes-wrapper[b-kgfy5e6yps] {
        flex-direction: column;
        gap: 1rem;
    }
}

@media (max-width: 480px) {
    .logo-section-mobile .full-logo-white[b-kgfy5e6yps] {
        max-width: 140px;
    }
    
    .hero-copy[b-kgfy5e6yps] {
        padding: 2rem 1rem;
    }
    
    .hero-form[b-kgfy5e6yps] {
        padding: 2rem 1rem;
    }
    
    .hero-headline[b-kgfy5e6yps] {
        font-size: 1.75rem;
    }
    
    .form-card[b-kgfy5e6yps] {
        padding: 1.5rem 1rem;
    }
    
    .benefit-item[b-kgfy5e6yps] {
        font-size: 0.95rem;
    }
}
/* _content/FiftyPlus.Website/Views/Shared/_Layout.cshtml.rz.scp.css */
/* Please see documentation at https://learn.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */


/*
a.navbar-brand {
  white-space: normal;
  text-align: center;
  word-break: break-all;
}

a {
  color: #0077cc;
}

.btn-primary {
  color: #fff;
  background-color: #1b6ec2;
  border-color: #1861ac;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
  color: #fff;
  background-color: #1b6ec2;
  border-color: #1861ac;
}

.border-top {
  border-top: 1px solid #e5e5e5;
}
.border-bottom {
  border-bottom: 1px solid #e5e5e5;
}

.box-shadow {
  box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

button.accept-policy {
  font-size: 1rem;
  line-height: inherit;
}


}*/

.footer[b-10wjwpz0eo] {
    width: 100%;
    margin-top: auto;
    padding: 2rem 0;
    background-color: var(--primary);
    color: #F7FBFE;
    border-top: none;
}

.footer .text-muted[b-10wjwpz0eo] {
    color: #F7FBFE !important;
    opacity: 0.9;
}

.footer a[b-10wjwpz0eo] {
    color: #F7FBFE;
    opacity: 0.9;
    transition: opacity 0.3s ease;
}

.footer a:hover[b-10wjwpz0eo] {
    opacity: 1;
    color: var(--secondary);
}

.footer h5[b-10wjwpz0eo] {
    color: #F7FBFE;
    margin-bottom: 1rem;
}
