/* Custom Styles for Enhanced Campaign Pages */

/* Outreach Section Styling */
.outreach-section {
    background: #f8f9fa;
    border-left: 4px solid #e74c3c;
    padding: 20px;
    margin: 20px 0;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.outreach-section h5 {
    color: #2c3e50;
    margin-bottom: 15px;
    font-weight: 600;
}

.outreach-section h5 i {
    color: #e74c3c;
    margin-right: 10px;
}

.outreach-section p {
    margin-bottom: 0;
    line-height: 1.6;
}

/* Campaign Benefits Styling */
.campaign-benefits {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.campaign-benefits li {
    padding: 10px 0;
    border-bottom: 1px solid #eee;
    display: flex;
    align-items: flex-start;
}

.campaign-benefits li:last-child {
    border-bottom: none;
}

.campaign-benefits li i {
    color: #27ae60;
    margin-right: 15px;
    margin-top: 3px;
    font-size: 16px;
}

/* Campaign Motto Styling */
.campaign-motto {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 30px;
    border-radius: 10px;
    text-align: center;
    margin: 30px 0;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.campaign-motto h4 {
    color: white;
    margin-bottom: 15px;
    font-size: 24px;
}

.campaign-motto p {
    color: white;
    font-size: 18px;
    margin: 0;
}

/* Enhanced Typography */
.campaign-details__text-box h4 {
    color: #2c3e50;
    margin: 25px 0 15px 0;
    font-weight: 600;
    border-bottom: 2px solid #e74c3c;
    padding-bottom: 10px;
}

.campaign-details__text-box h5 {
    color: #34495e;
    margin: 20px 0 10px 0;
    font-weight: 500;
}

/* Responsive Design */
@media (max-width: 768px) {
    .outreach-section {
        padding: 15px;
        margin: 15px 0;
    }
    
    .campaign-motto {
        padding: 20px;
        margin: 20px 0;
    }
    
    .campaign-motto h4 {
        font-size: 20px;
    }
    
    .campaign-motto p {
        font-size: 16px;
    }
}

/* Enhanced Button Styling */
.campaign-details__share__btn {
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
    border: none;
    padding: 15px 30px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.campaign-details__share__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(231, 76, 60, 0.4);
}

/* Page Header Enhancement */
.page-header__inner h2 {
    font-size: 48px;
    font-weight: 700;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}

/* Breadcrumb Enhancement */
.thm-breadcrumb li a {
    color: #e74c3c;
    font-weight: 500;
}

.thm-breadcrumb li a:hover {
    color: #c0392b;
}

/* Content Spacing */
.campaign-details__text-box {
    line-height: 1.8;
}

.campaign-details__text-box p {
    margin-bottom: 15px;
}

/* Icon Enhancements */
.fas, .fab {
    transition: transform 0.3s ease;
}

.outreach-section:hover .fas,
.outreach-section:hover .fab {
    transform: scale(1.1);
}

/* Mobile Navigation Enhancements */
@media (max-width: 1199px) {
    .mobile-nav__content .main-nav__navigation-box li ul {
        display: none;
        background: rgba(255, 255, 255, 0.05);
        border-top: 1px solid rgba(255, 255, 255, 0.1);
    }
    
    .mobile-nav__content .main-nav__navigation-box li ul li a {
        padding-left: 2em;
        font-size: 14px;
        height: 40px;
    }
    
    .mobile-nav__content .main-nav__navigation-box li ul li ul li a {
        padding-left: 3em;
        font-size: 13px;
        height: 35px;
    }
    
    .mobile-nav__content .main-nav__navigation-box li a button {
        display: block;
        width: 30px;
        height: 30px;
        background-color: var(--thm-primary);
        border: none;
        outline: none;
        color: #fff;
        transform: rotate(-90deg);
        transition: transform 500ms ease;
        cursor: pointer;
    }
    
    .mobile-nav__content .main-nav__navigation-box li a button.open {
        transform: rotate(0deg);
        background-color: #fff;
        color: var(--thm-black);
    }
    
    .mobile-nav__content .main-nav__navigation-box li a button i {
        font-size: 12px;
    }
}

/* Global mobile-safe fixes */

/* Prevent body scroll when mobile menu open */
body.mobile-nav-open {
    overflow: hidden;
    height: 100vh;
}

/* Avoid horizontal scroll on small screens */
@media (max-width: 767px) {
    html, body {
        max-width: 100%;
        overflow-x: hidden;
    }

    /* Make donate button full-width and comfy */
    .main-nav__right__btn-one a {
        padding: 12px 20px;
        font-size: 14px;
        border-radius: 24px;
    }

    /* Ensure header containers wrap correctly */
    .header-navigation .container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    /* Reduce top padding on logo to save space */
    .site-header__logo-box {
        padding: 16px 0 0;
    }
}

/* Responsive mobile panel width */
@media (max-width: 359px) {
    .mobile-nav__content {
        width: 88vw;
    }
}

@media (min-width: 360px) and (max-width: 575px) {
    .mobile-nav__content {
        width: 85vw;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    .mobile-nav__content {
        width: 360px;
    }
} 

/* ===============================
   OLC Additions: Support & Partners
   =============================== */
/* Section spacing */
.support-olc,
.partners-cta {
    padding: 70px 0;
}

/* Ensure clear separation from neighbors */
.support-olc + .partners-cta {
    margin-top: 20px;
}

/* Card spacing inside Support OLC */
.support-olc .support-olc__item {
    padding: 16px 10px;
    margin-bottom: 24px;
}

/* Button spacing in Partners CTA */
.partners-cta .thm-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 200px;
    margin: 6px 10px 6px 0;
    white-space: nowrap;
}

/* Center actions on small screens */
@media (max-width: 991px) {
    .partners-cta .text-lg-right {
        text-align: center !important;
        margin-top: 10px;
    }
    .partners-cta .thm-btn {
        width: 220px;
    }
}

/* Add a gentle divider feel */
.partners-cta {
    background-color: #f8f9fb;
}

/* ===============================
   Footer link alignment fixes
   =============================== */
/* Place the two explore lists side-by-side and top-aligned */
.footer-widget__explore .footer-widget__explore-list,
.footer-widget__explore .footer-widget__explore-list-two {
    float: none;
    display: inline-block;
    vertical-align: top;
    margin: 0 32px 0 0;
}

/* Remove default left indent on the second list */
.footer-widget__explore .footer-widget__explore-list-two {
    margin-left: 0;
}

/* Stack neatly on small screens */
@media (max-width: 575px) {
    .footer-widget__explore .footer-widget__explore-list,
    .footer-widget__explore .footer-widget__explore-list-two {
        display: block;
        margin: 0 0 8px 0;
    }
}

/* ===============================
   Mobile nav enhancements (ensures all options accessible)
   =============================== */
.mobile-nav__content .mobile-donate {
    margin-top: 14px;
}
.mobile-nav__content .mobile-donate a {
    display: block;
    text-align: center;
    width: 100%;
}

/* Ensure nested submenu items are readable */
.mobile-nav__content .main-nav__navigation-box li ul li a {
    padding-left: 24px;
}

/* Indent deeper levels progressively */
.mobile-nav__content .main-nav__navigation-box li ul li ul li a {
    padding-left: 36px;
}
.mobile-nav__content .main-nav__navigation-box li ul li ul li ul li a {
    padding-left: 48px;
}

/* ===============================
   About page desktop layout fixes
   =============================== */
/* Add comfortable space below the header/text+slider block */
.make-donation-two {
    padding-bottom: 40px;
}
/* Remove extra padding/width from gallery when inside About section */
.make-donation-two .gallery-tow {
    padding: 6px 0 20px;
}
.make-donation-two .gallery-tow__container {
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
    overflow: hidden;
}
.make-donation-two .thm-swiper__slider.swiper-container {
    width: 100%;
}
/* Keep slides from pushing into next section */
.make-donation-two .gallery-tow__single { margin-bottom: 10px; }
@media (min-width: 1200px) {
    .make-donation-two .row { align-items: center; }
}
/* Start the Mission/Volunteers/Vision row neatly below and top-aligned */
.give-helping { position: relative; padding-top: 30px; margin-top: 30px; clear: both; }
.give-helping .row { align-items: flex-start; }
/* Align Vision box top with Volunteers column */
.give-helping__cause { margin-top: 0 !important; padding-top: 0; }
.give-helping__two-boxes { margin-top: 0 !important; }
@media (min-width: 992px) {
    /* Drop middle and right columns below the heading in left column */
    .give-helping__two-boxes,
    .give-helping__cause { margin-top: 28px !important; }
}

/* Add comfortable top spacing inside Vision box */
.give-helping__cause-title { padding-top: 16px; }
/* Vertically center text and gallery columns on desktop */
@media (min-width: 1200px) {
    .make-donation-two .row {
        align-items: center;
    }
}