.elementor-5296 .elementor-element.elementor-element-3e996b9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5296 .elementor-element.elementor-element-d601a83{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-5296 .elementor-element.elementor-element-d601a83 .elementor-divider-separator{width:100%;}.elementor-5296 .elementor-element.elementor-element-d601a83 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-5296 .elementor-element.elementor-element-e2ff897{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5296 .elementor-element.elementor-element-e2ff897.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-5296 .elementor-element.elementor-element-1f40461{--grid-row-gap:35px;--grid-column-gap:17px;}.elementor-5296 .elementor-element.elementor-element-1f40461.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-5296 .elementor-element.elementor-element-1f40461 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 1.61 * 100% );}.elementor-5296 .elementor-element.elementor-element-1f40461:after{content:"1.61";}.elementor-5296 .elementor-element.elementor-element-1f40461 .elementor-post__thumbnail__link{width:100%;}.elementor-5296 .elementor-element.elementor-element-1f40461.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{margin-right:20px;}.elementor-5296 .elementor-element.elementor-element-1f40461.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{margin-left:20px;}.elementor-5296 .elementor-element.elementor-element-1f40461.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:20px;}.elementor-5296 .elementor-element.elementor-element-1f40461 .elementor-post__title, .elementor-5296 .elementor-element.elementor-element-1f40461 .elementor-post__title a{color:#000000;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-5296 .elementor-element.elementor-element-3e996b9{--margin-top:-26px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-5296 .elementor-element.elementor-element-d601a83 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-5296 .elementor-element.elementor-element-d601a83 .elementor-divider-separator{width:100%;}.elementor-5296 .elementor-element.elementor-element-e2ff897{--justify-content:center;}.elementor-5296 .elementor-element.elementor-element-1f40461{width:var( --container-widget-width, 1000px );max-width:1000px;--container-widget-width:1000px;--container-widget-flex-grow:0;}.elementor-5296 .elementor-element.elementor-element-1f40461 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-5296 .elementor-element.elementor-element-1f40461 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 1.35 * 100% );}.elementor-5296 .elementor-element.elementor-element-1f40461:after{content:"1.35";}.elementor-5296 .elementor-element.elementor-element-1f40461 .elementor-post__thumbnail__link{width:100%;}.elementor-5296 .elementor-element.elementor-element-1f40461 .elementor-post__title, .elementor-5296 .elementor-element.elementor-element-1f40461 .elementor-post__title a{font-size:1px;}}/* Start custom CSS for posts, class: .elementor-element-1f40461 *//* Force 3 Columns per Row on Mobile for Elementor Blog Posts */

/* Main Grid Layout for Mobile */
@media (max-width: 767px) {
    /* Remove container padding/margins - MORE SPECIFIC TARGETING */
    .elementor-widget-posts .elementor-widget-container {
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Only target sections containing posts widget */
    .elementor-section:has(.elementor-widget-posts) .elementor-container,
    .elementor-widget-posts .elementor-column-wrap,
    .elementor-widget-posts .elementor-widget-wrap {
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Force 3-column grid with full width */
    .elementor-posts-container.elementor-posts.elementor-posts--skin-classic,
    .elementor-posts-container.elementor-posts.elementor-posts--skin-cards,
    .elementor-posts-container.elementor-posts.elementor-posts--skin-full_content,
    .elementor-widget-posts .elementor-posts-container,
    .elementor-posts.elementor-grid {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 5px !important;
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: calc(-50vw + 50%) !important;
        padding: 0 10px !important;
        box-sizing: border-box !important;
    }
    
    /* Ensure each post takes full width of its grid cell */
    .elementor-posts-container .elementor-post,
    .elementor-posts .elementor-post,
    .elementor-grid .elementor-grid-item {
        width: 100% !important;
        margin: 0 !important;
    }
}

/* ===== TYPOGRAPHY & TEXT STYLING FOR MOBILE 3-COLUMN LAYOUT ===== */
@media (max-width: 767px) {
    
    /* Post Card Container */
    .elementor-posts-container .elementor-post__card {
        padding: 0 !important;
        border-radius: 8px !important;
        overflow: hidden !important;
    }
    
    /* Thumbnail Styling - Portrait orientation (taller) */
    .elementor-posts-container .elementor-post__thumbnail {
        height: 140px !important;  /* Increased height for portrait look */
        min-height: 140px !important;
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        overflow: hidden !important;
        position: relative !important;
    }
    
    .elementor-posts-container .elementor-post__thumbnail img {
        height: 100% !important;
        width: 100% !important;
        object-fit: cover !important;
        display: block !important;
        object-position: center center !important; /* Centers the image */
    }
    
    /* Alternative: Use aspect ratio for consistent portrait orientation */
    .elementor-posts-container .elementor-post__thumbnail {
        aspect-ratio: 3/4 !important; /* Portrait ratio */
        height: auto !important;
        min-height: unset !important;
    }
    
    /* Text Container - Moved up with negative margin */
    .elementor-posts-container .elementor-post__text {
        padding: 6px 5px !important;
        background: #fff !important;
        margin-top: -10px !important; /* Increased negative margin to pull text higher */
        position: relative !important;
        z-index: 1 !important;
    }
    
    /* Post Title Styling - Adjusted for better positioning */
    .elementor-posts-container .elementor-post__title,
    .elementor-posts-container .elementor-post__title a {
        font-size: 12px !important;
        line-height: 1.2 !important;
        font-weight: 600 !important;
        margin: 0 0 3px 0 !important;
        padding: 0 !important;
        color: #1a1a1a !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 3 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        min-height: 44px !important;
        letter-spacing: -0.2px !important;
    }
    
    /* Hide Excerpt - Too much text for small cards */
    .elementor-posts-container .elementor-post__excerpt {
        display: none !important;
    }
    
    /* Meta Data (Date, Author, etc.) */
    .elementor-posts-container .elementor-post__meta-data {
        font-size: 9px !important;
        margin: 0 !important;
        padding: 0 !important;
        color: #888 !important;
        line-height: 1.2 !important;
    }
    
    .elementor-posts-container .elementor-post__meta-data span {
        font-size: 9px !important;
    }
    
    /* Hide author avatar if present */
    .elementor-posts-container .elementor-post__avatar {
        display: none !important;
    }
    
    /* Read More Button */
    .elementor-posts-container .elementor-post__read-more {
        font-size: 10px !important;
        padding: 4px 8px !important;
        margin-top: 5px !important;
    }
    
    /* Badge/Category Label */
    .elementor-posts-container .elementor-post__badge {
        font-size: 9px !important;
        padding: 2px 6px !important;
        top: 5px !important;
        left: 5px !important;
    }
    
    /* Ensure consistent card heights */
    .elementor-posts-container .elementor-post {
        display: flex !important;
        flex-direction: column !important;
    }
    
    .elementor-posts-container .elementor-post__card {
        height: 100% !important;
        display: flex !important;
        flex-direction: column !important;
    }
    
    .elementor-posts-container .elementor-post__text {
        flex-grow: 1 !important;
        display: flex !important;
        flex-direction: column !important;
    }
}

/* For screens between 480px and 767px (larger phones) */
@media (min-width: 480px) and (max-width: 767px) {
    .elementor-posts-container .elementor-post__thumbnail {
        aspect-ratio: 3/4 !important; /* Maintains portrait ratio */
    }
    
    .elementor-posts-container .elementor-post__title,
    .elementor-posts-container .elementor-post__title a {
        font-size: 13px !important;
        min-height: 52px !important;
    }
    
    .elementor-posts-container .elementor-post__text {
        padding: 8px 6px !important;
    }
}

/* For very small screens (below 380px) */
@media (max-width: 380px) {
    .elementor-posts-container.elementor-posts,
    .elementor-posts.elementor-grid {
        gap: 5px !important;
    }
    
    .elementor-posts-container .elementor-post__thumbnail {
        aspect-ratio: 3/4 !important; /* Portrait ratio maintained */
    }
    
    .elementor-posts-container .elementor-post__title,
    .elementor-posts-container .elementor-post__title a {
        font-size: 11px !important;
        min-height: 44px !important;
        -webkit-line-clamp: 3 !important;
    }
    
    .elementor-posts-container .elementor-post__text {
        padding: 5px 4px !important;
    }
    
    .elementor-posts-container .elementor-post__meta-data {
        font-size: 8px !important;
    }
}

/* Optional: Add subtle hover effect for better UX */
@media (max-width: 767px) {
    .elementor-posts-container .elementor-post__card {
        transition: transform 0.2s ease, box-shadow 0.2s ease !important;
    }
    
    .elementor-posts-container .elementor-post__card:active {
        transform: scale(0.98) !important;
        box-shadow: 0 2px 8px rgba(0,0,0,0.1) !important;
    }
}

/* Alternative title styling - Uncomment if you prefer centered text */
/*
@media (max-width: 767px) {
    .elementor-posts-container .elementor-post__title {
        text-align: center !important;
    }
    
    .elementor-posts-container .elementor-post__meta-data {
        text-align: center !important;
    }
}
*/

/* Fix for specific themes that might override */
@media (max-width: 767px) {
    body .elementor-posts-container .elementor-post__title,
    body .elementor-posts-container .elementor-post__title a {
        font-size: 12px !important;
        line-height: 1.3 !important;
    }
    
    /* Remove any theme-specific margins */
    body .elementor-posts-container h3.elementor-post__title,
    body .elementor-posts-container h2.elementor-post__title,
    body .elementor-posts-container h4.elementor-post__title {
        margin: 0 0 5px 0 !important;
        padding: 0 !important;
    }
}

/* ===== FIX RIGHT SIDE SPACING ISSUE ===== */
@media (max-width: 767px) {
    /* Method 1: Full viewport width approach */
    .elementor-section-boxed .elementor-container {
        max-width: 100% !important;
        padding: 0 10px !important;
    }
    
    /* Method 2: Override Elementor padding */
    .elementor-column-gap-default > .elementor-column > .elementor-element-populated {
        padding: 0 !important;
    }
    
    /* Method 3: Force posts container to fill space */
    .elementor-posts-container {
        width: calc(100vw - 20px) !important;
        max-width: none !important;
        margin: 0 auto !important;
    }
    
    /* Method 4: Remove section padding */
    section.elementor-section {
        padding: 0 !important;
    }
    
    .elementor-section > .elementor-container {
        padding: 0 10px !important;
    }
}/* End custom CSS */