/* Equal-height service cards */
.service_section .row.justify-content-center > [class*="col-"] {
    display: flex; /* allow child service_item to stretch */
}

.service_item {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 360px; /* unified baseline height; adjust as needed */
}

.service_item .item_contact {
    display: flex;
    flex: 1;
    flex-direction: column;
}

/* Let the paragraph fill remaining space; remove overflow if you don't want clipping */
.service_item .item_contact p {
    flex: 1;
    overflow: hidden;
}

/* Equal-height team member cards */
.team_section .row.justify-content-center > [class*="col-"] {
    display: flex; /* allow child team_item to stretch */
    padding-left: 15px;
    padding-right: 15px;
}

.team_section .row.justify-content-center {
    margin-left: -15px;
    margin-right: -15px;
}

.team_item {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.team_memder_image {
    width: 100%;
    max-width: 450px; /* max width on desktop */
    height: 500px; /* fixed height for consistency */
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f2f2f2;
    margin: 0 auto; /* center the container */
}

.team_memder_image img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* maintain aspect ratio, fill container */
    display: block;
}

/* Responsive adjustments for team member images */
@media (max-width: 991px) {
    /* Tablet */
    .team_memder_image {
        max-width: 100%;
        height: 400px;
    }
}

@media (max-width: 767px) {
    /* Mobile */
    .team_memder_image {
        max-width: 100%;
        height: 350px;
    }
}

.author_box_image {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f2f2f2;
}

.author_box_image img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* maintain aspect, fill circle */
    display: block;
}

.site_footer_content {
    padding: 28px 0;
}

.site_footer_content p {
    font-size: small;
    line-height: 20px;
    text-align: justify;
}

/* 1. Hide the element by default (desktop, tablet, etc.) */
.mobile-only {
    display: none !important;
}

.desktop-only {
    display: block; /* Use block, flex, or grid based on the element type */
}

/* 2. Media Query: Show the element ONLY when the screen is 767px wide or less */
@media (max-width: 767px) {
    .mobile-only {
        display: block !important; /* Or flex, grid, etc., depending on the element type */
    }

    .desktop-only {
        display: none !important;
    }
}
