/* -------------------------------------------------
   Multi Post Shortcodes – basic responsive styling
   ------------------------------------------------- */
.mps-flex {
    display: flex;
}

.mps-row {
    flex-direction: row;
}

.mps-row-rev {
    flex-direction: row-reverse;
}

.mps-column {
    flex-direction: column;
}

.mps-column-rev {
    flex-direction: column-reverse;
}

.mps-justify-center {
    justify-content: center;
}

.mps-justify-between {
    justify-content: space-between;
}

.mps-align-center {
    align-items: center;
}

.mps-align-end {
    align-items: flex-end;
}

.mps-flex-wrap {
    flex-wrap: wrap;
}

.mps-recent-grid,
.mps-archive {
    margin-bottom: 2rem;
}

/* Featured */
.mps-featured {
    position: relative;
    overflow: hidden;
}

.mps-featured-img img {
    width: 100%;
    height: auto;
    display: block;
}

/* Recent 3 */
.mps-recent-grid {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    align-items: center;
}
.mps-recent-post {
    display: flex;
    align-items: start;
    height: 100%;
}
.mps-recent-img img {
    width: 100%;
    height: auto;
}

/* Archive */
.mps-archive-post {
    border-bottom: 1px solid #eee;
    padding: 1.5rem 0;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.mps-archive-img {
    flex: 0 0 120px;
}

.mps-archive-img img {
    width: 120px;
    height: auto;
}

.mps-archive-title {
    margin: 0;
    font-size: 1.5rem;
    flex: 1;
}

.mps-archive-meta span {
    margin-right: 0.5rem;
    font-size: 0.85rem;
    color: #555;
}

.mps-archive-excerpt {
    flex: 1 0 100%;
    margin-top: 0.5rem;
    font-size: 0.95rem;
}

/* Pagination */
.mps-archive + .pagination,
nav.navigation.pagination {
    margin-top: 2rem;
    text-align: center;
}

/* Dynamic Columns */
.mps-recent-grid {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(3, 1fr); /* fallback */
}

/* Pagination */
.mps-pagination {
    margin-top: 2rem;
    text-align: center;
}

.mps-pagination .page-numbers {
    display: inline-block;
    padding: 8px 12px;
    margin: 0 4px;
    background: #f0f0f0;
    color: #3B664E;
    text-decoration: none;
    border-radius: 4px;
    font-family: "Techno_Nue", Sans-serif;
    font-size: 14px;
    font-weight: 300;
}

.mps-pagination .page-numbers.current {
    background: #28573D;
    color: white;
}

.mps-pagination .page-numbers:hover {
    background: #ddd;
}

/*feature post*/
.mps-featured-title {
    font-family: "Techno_Nue", Sans-serif;
    font-size: 45px;
    font-weight: 400;
    color: #000000;
    max-width: 70%;
    padding-bottom: 55px;
    line-height: 1.2em;
}

.mps-featured-link {
    width: 60%;
}

.feature-buttons-wrapper {
    width: 40%;
    padding-bottom: 55px;
    justify-content: end;
    gap: 20px;
}

.feature-buttons-wrapper a {
    font-family: "Techno_Nue", Sans-serif;
    font-size: 16px;
    font-weight: 700;
    fill: #27573C;
    color: #27573C;
}

.mps-bordered-link {
    background-color: #27573C00;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: #27573C;
    border-radius: 80px 80px 80px 80px;
    padding: 16px 50px 16px 50px;
    transition: all .3s;
}
.mps-bordered-link:hover {
    background-color: #27573C;
    color: #fff;
    transition: all .3s;
}
.mps-no-bordered-link {
    background-color: #27573C00;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-radius: 80px 80px 80px 80px;
    border-color: transparent;
    gap: 10px;
    transform: scale(1);
    transition: all .3s;
    overflow: visible;

}
.mps-no-bordered-link:hover {
    transition-duration: .3s;
    transform: scale(1.05);
    padding-right: 5px;
    padding-left: 5px;
}
@media only screen and (max-width: 1024px) {
    .mps-featured-title {
        font-size: 35px;

    }

    .feature-text-content {
        flex-direction: column;
        align-items: start;
    }

    .mps-featured-link {
        width: 100%;
    }

    .feature-buttons-wrapper {
        width: 100%;
        padding-bottom: 30px;
        justify-content: start;
        gap: 20px;
    }
}

@media only screen and (max-width: 767px) {
    .mps-featured-title {
        font-size: 30px;
        max-width: 100%;
        padding-bottom: 30px;
    }

    .mps-bordered-link {
        padding: 16px 30px 16px 30px;
    }
}

@media only screen and (max-width: 390px) {

}

/*reacent posts*/
.post-text-content {
    border: 1px solid #27573C;
    border-top-width: 0;
    padding: 30px 40px;
    font-family: "Techno_Nue", Sans-serif;
    height: 100%;
    min-height: 326px;
}

.mps-recent-post .mps-recent-img img {
    object-fit: cover;
    object-position: center;
    height: 273px;
    display: block;
}

.mps-cats {
    background-color: #B9DCC1;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: #27573C;
    border-radius: 20px 20px 20px 20px;
    padding: 6px 24px 6px 24px;
    font-size: 16px;
    font-weight: 700;
    fill: #27573C;
    color: #27573C;
}

.mps-tags {
    background-color: #B9DCC1;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: #27573C;
    border-radius: 20px 20px 20px 20px;
    padding: 6px 24px 6px 24px;
    font-size: 16px;
    font-weight: 700;
    fill: #27573C;
    color: #27573C;
}

.mps-recent-meta {
    gap: 10px;
    margin-bottom: 40px;
}

.mps-recent-title {
    font-size: 23px;
    font-weight: 700;
    line-height: 1.3em;
    color: #000000;
    margin-bottom: 25px;
}

.mps-recent-grid .mps-no-bordered-link {
    font-size: 16px;
    font-weight: 700;
    fill: #27573C;
    color: #27573C;
}
.mps-recent-excerpt p {
    font-family: "Techno_Nue", Sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3em;
    color: #000000;
}
.mps-recent-excerpt {
    line-height: 1.3em;
    min-height: 94px;
}

@media only screen and (max-width: 1024px) {

}


@media only screen and (max-width: 767px) {
    .post-text-content {
        padding: 30px 20px;
    }

    .mps-recent-meta {
        margin-bottom: 30px;
    }

    .mps-recent-title {
        font-size: 20px;
        line-height: 1.2em;
        margin-bottom: 20px;
    }

    .mps-recent-excerpt {
        min-height: 100%;
        margin-bottom: 30px;
    }

    .post-text-content {
        min-height: 100%;
    }
}

@media only screen and (max-width: 390px) {

}