:root{
    --wp--style--unstable-gallery-gap: 40px;
}


.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image){
    display:flex;
    justify-content: center;
    align-items: center;
    padding:20px;
    margin-top:auto !important;
    margin-bottom:auto;
    width: calc(25% - var(--wp--style--unstable-gallery-gap, 16px) * .75);

}

@media (max-width: 783px) {
    .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image){
        width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px) * .75);
    }
}
@media (max-width: 991px) {
    .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image){
        width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px) * .75);
    }
}


.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image){
    display:flex;
    justify-content: center;
    align-items: center;
    padding:20px;
    margin-top:auto !important;
    margin-bottom:auto;
    width: calc(25% - var(--wp--style--unstable-gallery-gap, 16px) * .75);

}

@media (max-width: 783px) {
    .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image){
        width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px) * .75);
    }
}
@media (max-width: 991px) {
    .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image){
        width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px) * .75);
    }
}
.latest_recipients{
    padding:20px 0;
}
.latest_recipients h2 {
    font-size: 1.2em;
    text-transform: uppercase;
}

.latest_recipients h4{
    margin:0;
    font-size:1.2em;
}
.latest_recipients p{
    font-style:italic;
}
.past_recipients h2{
    margin:40px 0 10px 0;
    color:#000000;
    font-weight:600;
    padding:0;
    text-transform:uppercase;
    font-size:1rem;
}
.past_recipients p{
    font-size:.9rem;
}
.community,
.supported{
    margin-top:40px;
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    font-size:.9rem;

}
.supported{
    margin-top:80px;
}

/* Masonry Layout for Community Images - CSS Columns Approach */
.wp-block-group.community-masonry .wp-block-group__inner-container {
    column-count: 3;
    column-gap: 20px;
    padding: 20px 0;
    max-width: 1200px;
    margin: 0 auto;
}

.wp-block-group.community-masonry .wp-block-image {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    background: #fff;
    margin: 0 0 20px 0;
    break-inside: avoid;
    page-break-inside: avoid;
    display: inline-block;
    width: 100%;
}

.wp-block-group.community-masonry .wp-block-image:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}

.wp-block-group.community-masonry .wp-block-image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 8px 8px 0 0;
    object-fit: cover;
}

.wp-block-group.community-masonry .wp-block-image .wp-element-caption {
    padding: 15px;
    background: #fff;
    font-size: 1.1em;
    font-weight: 600;
    color: #173344;
    margin: 0;
    text-align: center;
    border-radius: 0 0 8px 8px;
}

/* Responsive adjustments for CSS columns masonry */
@media (max-width: 768px) {
    .wp-block-group.community-masonry .wp-block-group__inner-container {
        column-count: 2;
        column-gap: 15px;
        padding: 15px;
    }
}

@media (max-width: 480px) {
    .wp-block-group.community-masonry .wp-block-group__inner-container {
        column-count: 1;
        column-gap: 0;
    }
    
    .wp-block-group.community-masonry .wp-block-image {
        margin: 0 0 15px 0;
    }
}

/* Alternative masonry using flexbox for better browser support */
.community-masonry-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 0;
}

.community-masonry-flex .community-column {
    flex: 1;
    min-width: 280px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.community-masonry-flex .community-item {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    background: #fff;
    break-inside: avoid;
}

.community-masonry-flex .community-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}

.community-masonry-flex .community-item img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 8px 8px 0 0;
}

.community-masonry-flex .community-item .item-content {
    padding: 15px;
    background: #fff;
}

.community-masonry-flex .community-item .item-title {
    font-size: 1.1em;
    font-weight: 600;
    color: #173344;
    margin: 0 0 8px 0;
    text-align: center;
}

.community-masonry-flex .community-item .item-description {
    font-size: 0.9em;
    color: #666;
    line-height: 1.4;
    text-align: center;
}

@media (max-width: 768px) {
    .community-masonry-flex .community-column {
        min-width: 250px;
    }
}

@media (max-width: 480px) {
    .community-masonry-flex {
        flex-direction: column;
    }
    
    .community-masonry-flex .community-column {
        min-width: 100%;
    }
}