.elementor-22723 .elementor-element.elementor-element-8ad7c89 > .elementor-container{max-width:945px;}.elementor-22723 .elementor-element.elementor-element-8ad7c89{margin-top:50px;margin-bottom:50px;}.elementor-bc-flex-widget .elementor-22723 .elementor-element.elementor-element-efe7a05.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-22723 .elementor-element.elementor-element-efe7a05.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-22723 .elementor-element.elementor-element-efe7a05 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:1px;}.elementor-22723 .elementor-element.elementor-element-ec60625{--spacer-size:50px;}.elementor-22723 .elementor-element.elementor-element-e1d286a{--iteration-count:infinite;--animation-duration:1200ms;--dynamic-text-color:#6EC1E4;}.elementor-22723 .elementor-element.elementor-element-e1d286a .elementor-headline{text-align:center;font-size:30px;}.elementor-22723 .elementor-element.elementor-element-e1d286a .elementor-headline-dynamic-wrapper path{stroke:#CF2E2E;}.elementor-22723 .elementor-element.elementor-element-8f3d4a9 > .elementor-container{max-width:685px;}.elementor-22723 .elementor-element.elementor-element-8f3d4a9{margin-top:0px;margin-bottom:50px;}.elementor-22723 .elementor-element.elementor-element-b4d63a7 .elementor-button{background-color:#6EC1E4;}.elementor-22723 .elementor-element.elementor-element-b4d63a7 .elementor-button:hover, .elementor-22723 .elementor-element.elementor-element-b4d63a7 .elementor-button:focus{background-color:#CF2E2E;}.elementor-22723 .elementor-element.elementor-element-58d3439{margin-top:25px;margin-bottom:25px;}.elementor-22723 .elementor-element.elementor-element-1a35aa7{text-align:center;}.elementor-22723 .elementor-element.elementor-element-88f0aa6 > .elementor-container{max-width:910px;}.elementor-22723 .elementor-element.elementor-element-88f0aa6{margin-top:0px;margin-bottom:20px;}.elementor-22723 .elementor-element.elementor-element-10f632f > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-22723 .elementor-element.elementor-element-10f632f > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-22723 .elementor-element.elementor-element-8415115 > .elementor-container{max-width:1024px;}.elementor-22723 .elementor-element.elementor-element-8415115{margin-top:0px;margin-bottom:50px;}.elementor-bc-flex-widget .elementor-22723 .elementor-element.elementor-element-17b8682.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-22723 .elementor-element.elementor-element-17b8682.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-22723 .elementor-element.elementor-element-17b8682.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-bc-flex-widget .elementor-22723 .elementor-element.elementor-element-c68b480.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-22723 .elementor-element.elementor-element-c68b480.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-22723 .elementor-element.elementor-element-c68b480.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-22723 .elementor-element.elementor-element-d9571bb{margin-top:50px;margin-bottom:20px;}.elementor-22723 .elementor-element.elementor-element-d9627b3 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-22723 .elementor-element.elementor-element-d9627b3{text-align:center;}.elementor-22723 .elementor-element.elementor-element-3f4dbcf > .elementor-container{max-width:978px;}.elementor-22723 .elementor-element.elementor-element-3f4dbcf{margin-top:0px;margin-bottom:50px;}.elementor-22723 .elementor-element.elementor-element-5abd0b7 .gallery-item .gallery-caption{text-align:center;}.elementor-22723 .elementor-element.elementor-element-2ab1bf1 .elementor-wrapper{--video-aspect-ratio:1.77777;}@media(min-width:781px){.elementor-22723 .elementor-element.elementor-element-efe7a05{width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-803019b */#dbox-form-embed { max-width: 425px !important; margin: auto; display: block; }/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0f06399 *//* --- 1. CONTAINER & COLUMNS (Bulletproof 3-Column Layout) --- */
.all-program-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; /* Automatically spaces items */
}

.program-all {
    width: 31%; /* 31% x 3 = 93%. Leaves room for gaps without math errors */
    margin-bottom: 40px;
    position: relative;
    box-sizing: border-box;
    /* The Red Line at the bottom */
    border-bottom: 3px solid #8B2131;
    padding-bottom: 25px; 
}

/* --- 2. IMAGE HANDLING --- */
.program-img, 
.program-img img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover; /* Ensures images look consistent */
}

/* --- 3. THE "OVERLAP" WHITE BOX --- */
.program-content {
    background: #fff;
    width: 90%; /* Box is slightly narrower than the image */
    margin: -50px auto 0 auto; /* Pulls the box UP 50px over the image */
    padding: 20px 15px 0 15px; /* Internal spacing */
    position: relative;
    z-index: 5; /* Sits on top of image */
    box-shadow: 0 5px 15px rgba(0,0,0,0.05); /* Optional: Slight shadow for pop */
}

/* --- 4. TEXT STYLES --- */
.program-content h3 {
    margin-top: 0;
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.2;
}

.program-content p {
    font-size: 14px;
    color: #555;
    line-height: 1.5;
    margin-bottom: 20px;
}

/* --- 5. BUTTONS (The "Squish" Fix) --- */
.program-btns {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-top: 15px;
    width: 100%;
}

.program-btns .part1,
.program-btns .part2 {
    width: 48%; /* Forces them to split the space evenly */
}

/* Override any H4 weirdness */
.program-btns h4 {
    margin: 0;
    padding: 0;
}

.program-btns a {
    display: block;
    width: 100%;
    padding: 10px 0; /* Vertical padding only */
    text-align: center;
    font-size: 13px; /* Slightly smaller to prevent wrapping */
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap; /* CRITICAL: Forces "Learn More" to stay on one line */
    border-radius: 2px;
    box-sizing: border-box;
    transition: all 0.3s ease;
}

/* Blue "Learn More" Button */
.program-btns .part1 a {
    background-color: #2ea3f2; /* Update with your exact blue hex code */
    color: #fff;
    border: 1px solid #2ea3f2;
}

/* White "Donate Now" Button */
.program-btns .part2 a {
    background-color: #fff;
    color: #2ea3f2; 
    border: 1px solid #2ea3f2;
}

/* Hover States */
.program-btns .part1 a:hover { background-color: #1b8cdb; border-color: #1b8cdb; }
.program-btns .part2 a:hover { background-color: #f0f8ff; }


/* --- 6. MOBILE RESPONSIVENESS --- */
@media (max-width: 1024px) {
    .program-all {
        width: 48%; /* 2 Columns on Tablet */
    }
}

@media (max-width: 767px) {
    .program-all {
        width: 100%; /* 1 Column on Mobile */
    }
    .program-content {
        width: 100%; /* Full width text on mobile */
        margin-top: 0; /* Remove overlap on tiny screens if needed */
    }
}/* End custom CSS */