/* Gutenberg Button Block Override - Every Child Matters Style */
.is-style-btn-evr .wp-element-button,
.is-style-btn-evr a {
    border: 1px solid #000 !important;
    border-radius: 25px !important;
    padding: 10px 20px !important;
    font-weight: 600 !important;
    font-size: 26px !important;
    color: #fff !important;
    position: relative !important;
    background-color: #000 !important;
    cursor: pointer !important;
    overflow: hidden !important;
    z-index: 1 !important;
    transition: color 0.3s ease-in-out !important;
    display: inline-block !important;
    text-decoration: none !important;
}
.is-style-btn-evr .wp-element-button:hover,
.is-style-btn-evr a:hover {
    color: #000 !important;
    border: 1px solid #F5B216 !important;
}
.is-style-btn-evr .wp-element-button::before,
.is-style-btn-evr a::before {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 50% !important;
    width: 15px !important;
    height: 10px !important;
    background-color: #F5B216 !important;
    transform: translate(-50%, 100%) scale(0) !important;
    z-index: -1 !important;
    transition: transform 0.4s ease-in-out !important;
}
.is-style-btn-evr .wp-element-button:hover::before,
.is-style-btn-evr a:hover::before {
    transform: translate(-50%, -50%) scale(20) !important;
}

/* Gutenberg Button Block Override - Hear Their Stories Style */
.is-style-btn-narr .wp-element-button,
.is-style-btn-narr a {
    background: #000 !important;
    color: #fff !important;
    border: 1px solid #000 !important;
    border-radius: 20px !important;
    padding: 10px 25px !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    position: relative !important;
    cursor: pointer !important;
    overflow: hidden !important;
    z-index: 1 !important;
    transition: color 0.3s ease-in-out !important;
    display: inline-block !important;
    text-decoration: none !important;
}
.is-style-btn-narr .wp-element-button:hover,
.is-style-btn-narr a:hover {
    color: #000 !important;
    border: 1px solid #F5B216 !important;
}
.is-style-btn-narr .wp-element-button::before,
.is-style-btn-narr a::before {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 50% !important;
    width: 20px !important;
    height: 10px !important;
    background-color: #F5B216 !important;
    transform: translate(-50%, 100%) scale(0) !important;
    z-index: -1 !important;
    transition: transform 0.4s ease-in-out !important;
}
.is-style-btn-narr .wp-element-button:hover::before,
.is-style-btn-narr a:hover::before {
    transform: translate(-50%, -50%) scale(20) !important;
}

/* Optimized styles for the CH2 Section Banner & Overlap */
.weresection-ch2,
.ch2-local-banner {
    background-image: url(../images/slider-ch2.png) !important;
    background-repeat: no-repeat !important;
    background-size: 100% 237px !important; /* Stretches 100% wide, but locks height to 237px (original size) */
    background-position: bottom center !important;
    padding: 50px 100px 50px !important; /* Balanced padding top/bottom */
    height: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important; /* Removes any block gap at the bottom to touch the footer */
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 1 !important;
}

/* Responsive fixes for tablet and mobile viewports */
@media (max-width: 1200px) {
    .weresection-ch2,
    .ch2-local-banner {
        padding: 40px 50px 40px !important;
        height: auto !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        background-size: 100% 150px !important; /* Lock height to 150px on tablet */
        background-position: bottom center !important;
    }
}
@media (max-width: 768px) {
    .weresection-ch2,
    .ch2-local-banner {
        padding: 30px 20px 30px !important;
        height: auto !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        background-size: 100% 100px !important; /* Lock height to 100px on mobile */
        background-position: bottom center !important;
    }
}

.map-container .city-link .marker,
.map-container .city-link.has-dropdown .marker {
    width: 50px !important;
    height: auto !important;
    max-width: 60px;
}
.map-container {
    position: relative;
}

.map-container .city-link {
    position: absolute;
}
.parent-wrapper {
    display: flex;
    align-items: center;   /* vertical centering */
    justify-content: center; /* horizontal centering */
    height: 100%; /* or a fixed height */
}

/* Style Spectra Form Submit Button to match the theme button style */
.uagb-forms-main-submit-button-wrap button.wp-block-button__link {
    border: 1px solid #000 !important;
    border-radius: 25px !important;
    padding: 10px 20px !important;
    margin-top: 20px !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: #fff !important;
    background-color: #000 !important;
    cursor: pointer !important;
    transition: all 0.3s ease-in-out !important;
    display: inline-block !important;
    box-shadow: none !important;
}

.uagb-forms-main-submit-button-wrap button.wp-block-button__link:hover {
    background-color: #F5B216 !important;
    border-color: #F5B216 !important;
    color: #000 !important;
}

/* Style Spectra Form Input & Dropdown dropdown/text fields */
.uagb-forms-main-form .uagb-forms-input,
.uagb-forms-main-form select.uagb-forms-input,
.uagb-forms-main-form textarea.uagb-forms-input {
    border-radius: 10px !important;
    border: 1px solid #000 !important;
    padding: 8px 10px !important;
    font-size: 16px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    color: #000 !important;
    background-color: #fff !important;
}

/* Donation Amount & Frequency Selection Styling */
.donation-options-section {
    text-align: center;
    padding: 40px 0;
}

.donation-amount-box {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 30px;
}

.donation-amount {
    border: 2px solid #000;
    padding: 18px 35px;
    font-size: 22px;
    font-weight: 700;
    border-radius: 12px;
    cursor: pointer;
    background-color: #fff;
    color: #000;
    transition: all 0.3s ease;
}

.donation-amount:hover,
.donation-amount.active {
    background-color: #000 !important;
    color: #fff !important;
}

.donation-frequency-box {
    margin-top: 20px;
}

.donation-frequency {
    border: 2px solid #000 !important;
    background: #fff !important;
    padding: 12px 25px !important;
    margin: 0 10px !important;
    font-size: 18px !important;
    border-radius: 30px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    color: #000 !important;
}

.donation-frequency.active,
.donation-frequency:hover {
    background: #000 !important;
    color: #fff !important;
}

/* Donation Amount Buttons */
.donation-options-section {
    text-align: center;
    padding: 40px 0;
}

.donation-amount-box {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 30px;
}

.donation-amount {
    border: 2px solid #000;
    padding: 18px 35px;
    font-size: 22px;
    font-weight: 700;
    border-radius: 12px;
    cursor: pointer;
    transition: 0.3s;
}

.donation-amount:hover,
.donation-amount.active {
    background-color: #000;
    color: #fff;
}

.donation-frequency {
    border: 2px solid #000;
    background: #fff;
    padding: 12px 25px;
    margin: 0 10px;
    font-size: 18px;
    border-radius: 30px;
    cursor: pointer;
    transition: 0.3s;
}

.donation-frequency.active,
.donation-frequency:hover {
    background: #000;
    color: #fff;
}

.legacy-wrapper {
    margin-top: 40px;
}

.legacy-box {
    border: 5px solid #ff8c00;
    border-radius: 4rem;
    background: #fff;
    position: relative;
    overflow: visible;
    padding: 40px;
    box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1);
	margin-left: 40px;
    margin-right: 40px;
}

.legacy-title {
    font-size: 24px;
    font-weight: 800;
    color: #ff8c00;
    margin-top: 0;
    line-height: 1.2;
}

.legacy-text {
    margin-bottom: 16px;
}

.legacy-link {
    font-weight: 700;
    color: #111;
    text-decoration: underline;
    display: inline-flex;
    align-items: center;
    transition: 0.3s ease;
}

.legacy-link:hover {
    color: #555;
}

.legacy-link .arrow {
    margin-left: 5px;
    font-weight: 900;
}

.absolute-icon-wrapper {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(50%, -50%);
    display: none;
}

.legacy-icon {
    width: 160px !important;
    height: 160px !important;
    object-fit: contain;
}

/* Show icon only on desktop */
@media (min-width: 768px) {
    .absolute-icon-wrapper {
        display: block;
    }
}

.legacy-privacy {
    margin-top: 20px;
}

/* Planned Giving Custom Styles */
.leave-legacy-box {
    border: 5px solid #b12828;
    border-radius: 4rem;
    background: #fff;
    position: relative;
    overflow: visible;
    padding: 40px;
    box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1);
    margin-left: 40px;
    margin-right: 40px;
}

.leave-legacy-title {
    font-size: 24px;
    font-weight: 800;
    color: #b12828;
    margin-top: 0;
    line-height: 1.2;
}

.make-legacy-box {
    border: 5px solid #eea143;
    border-radius: 4rem;
    background: #fff;
    position: relative;
    overflow: visible;
    padding: 40px;
    box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1);
    margin-left: 40px;
    margin-right: 40px;
}

.make-legacy-title {
    font-size: 24px;
    font-weight: 800;
    color: #eea143;
    margin-top: 0;
    line-height: 1.2;
}

.letus-legacy-title {
    font-size: 24px;
    font-weight: 800;
    color: #f8c724;
    margin-top: 0;
    line-height: 1.2;
}

.letus-legacy-box {
    border: 5px solid #f8c724;
    border-radius: 4rem;
    background: #fff;
    position: relative;
    overflow: visible;
    padding: 40px;
    box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1);
    margin-left: 40px;
    margin-right: 40px;
}

.leave-legacy-text {
    margin-bottom: 16px;
}

.contact-highlight {
    color: #eeab5a;
}

.right-icon {
    width: 100% !important;
    height: auto !important;
    max-width: 150px;
    display: block;
    margin: 0 auto;
}

@media (max-width: 767px) {
    .right-icon {
        display: none;
    }
    .leave-legacy-box,
    .make-legacy-box,
    .letus-legacy-box {
        margin-left: 10px;
        margin-right: 10px;
        padding: 20px;
        border-radius: 2rem;
    }
}#demos .third_section_first,
#demos .third_section_img {
    height: 515px;
}
