.elementor-4785 .elementor-element.elementor-element-d34b35d{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4785 .elementor-element.elementor-element-5ca7633{margin:-97px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4785 .elementor-element.elementor-element-b6b66b9{--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;--padding-top:0px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-widget-posts .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .elementor-post__meta-data{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .elementor-post__excerpt p{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-posts .elementor-post__read-more{color:var( --e-global-color-accent );}.elementor-widget-posts a.elementor-post__read-more{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__card .elementor-post__badge{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-4785 .elementor-element.elementor-element-78e0fcf{--grid-row-gap:30px;--grid-column-gap:30px;}.elementor-4785 .elementor-element.elementor-element-78e0fcf > .elementor-widget-container{margin:-20px 0px 60px 0px;}.elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.66 * 100% );}.elementor-4785 .elementor-element.elementor-element-78e0fcf:after{content:"0.66";}.elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-post__thumbnail__link{width:100%;}.elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-post__meta-data span + span:before{content:"•";}.elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-post__text{margin-top:20px;}.elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-post__badge{right:0;}.elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-post__card .elementor-post__badge{margin:20px;}.elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-pagination{text-align:center;margin-top:35px;}body:not(.rtl) .elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 16px/2 );}body:not(.rtl) .elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 16px/2 );}body.rtl .elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 16px/2 );}body.rtl .elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 16px/2 );}@media(max-width:767px){.elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-4785 .elementor-element.elementor-element-78e0fcf:after{content:"0.5";}.elementor-4785 .elementor-element.elementor-element-78e0fcf .elementor-post__thumbnail__link{width:100%;}}/* Start custom CSS for posts, class: .elementor-element-78e0fcf *//* --- 1. GENERAL WIDGET TYPOGRAPHY --- */
    .elementor-widget-posts {
        font-family: 'Poppins', sans-serif;
    }

    /* --- 2. CARD STYLING --- */
    .elementor-widget-posts .elementor-post__card {
        background-color: #ffffff;
        border: 1px solid #f3f4f6;
        border-radius: 16px;
        overflow: hidden;
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02);
        display: flex;
        flex-direction: column;
        height: 100%;
    }

    /* Hover State */
    .elementor-widget-posts .elementor-post__card:hover {
        transform: translateY(-8px);
        box-shadow: 0 20px 40px -10px rgba(176, 0, 0, 0.15);
        border-color: #ffe4e4;
    }

    /* --- 3. IMAGE / THUMBNAIL (Reset to default layout) --- */
    .elementor-widget-posts .elementor-post__thumbnail__link {
        overflow: hidden;
        display: block;
        /* Removed custom aspect ratio forcing to fix "bottom" issue */
    }

    .elementor-widget-posts .elementor-post__thumbnail img {
        transition: transform 0.6s ease;
        width: 100%;
        height: auto; /* Let Elementor control height naturally */
        display: block;
        object-fit: cover;
    }

    .elementor-widget-posts .elementor-post__card:hover .elementor-post__thumbnail img {
        transform: scale(1.05);
    }

    /* --- 4. CONTENT WRAPPER (Reduced Padding) --- */
    .elementor-widget-posts .elementor-post__text {
        /* Reduced top padding from 28px to 20px */
        padding: 20px 24px 24px 24px !important;
        display: flex;
        flex-direction: column;
        flex-grow: 1;
    }

    /* --- 5. BADGE (CATEGORY) --- */
    /* Note: In Cards skin, badge is often outside .elementor-post__text. 
       We style it to sit flush and add a small margin below. */
    .elementor-widget-posts .elementor-post__badge {
        background-color: #fef2f2 !important;
        color: #b00000 !important;
        border: none;
        font-family: 'Manrope', sans-serif;
        font-weight: 800;
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: 1px;
        padding: 5px 10px;
        border-radius: 6px;
        /* Adjust positioning to align with content */
        margin: 15px 0 5px 24px; 
        display: inline-block;
        align-self: flex-start;
        box-shadow: none;
        width: fit-content;
    }

    /* --- 6. TITLE (CLAMPED TO 2 LINES) --- */
    .elementor-widget-posts .elementor-post__title {
        margin-bottom: 10px; /* Reduced from 12px */
        margin-top: 0;
    }

    .elementor-widget-posts .elementor-post__title a {
        font-family: 'Manrope', sans-serif;
        font-weight: 700;
        font-size: 20px;
        line-height: 1.3;
        color: #111111;
        transition: color 0.3s ease;
        
        /* Line Clamp Magic */
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
        height: 2.6em;
    }

    .elementor-widget-posts .elementor-post__card:hover .elementor-post__title a {
        color: #b00000;
    }

    /* --- 7. EXCERPT (CLAMPED TO 3 LINES) --- */
    .elementor-widget-posts .elementor-post__excerpt p {
        font-family: 'Poppins', sans-serif;
        font-size: 14px;
        line-height: 1.6;
        color: #666666;
        margin-bottom: 20px;
        
        /* Line Clamp */
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    /* --- 8. READ MORE LINK --- */
    .elementor-widget-posts .elementor-post__read-more {
        font-family: 'Manrope', sans-serif;
        font-weight: 700;
        font-size: 13px;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        color: #b00000 !important;
        display: inline-flex;
        align-items: center;
        margin-top: auto;
        position: relative;
        padding-bottom: 2px;
    }

    .elementor-widget-posts .elementor-post__read-more::after {
        content: '';
        position: absolute;
        width: 0%;
        height: 2px;
        bottom: 0;
        left: 0;
        background-color: #b00000;
        transition: width 0.3s ease;
    }

    .elementor-widget-posts .elementor-post__read-more:hover::after {
        width: 100%;
    }

    /* --- 9. STYLIZED PAGINATION --- */
    .elementor-pagination {
        margin-top: 60px !important;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 8px;
    }
    
    .elementor-pagination .page-numbers {
        font-family: 'Manrope', sans-serif;
        font-weight: 700;
        font-size: 16px;
        width: 48px;
        height: 48px;
        display: flex;
        align-items: center;
        justify-content: center;
        border: none;
        background-color: #fff;
        color: #666;
        border-radius: 12px;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05);
    }

    .elementor-pagination .page-numbers:not(.current):hover {
        background-color: #fff;
        color: #b00000;
        transform: translateY(-2px);
        box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1);
    }

    .elementor-pagination .page-numbers.current {
        background-color: #b00000;
        color: #ffffff;
        box-shadow: 0 10px 20px -5px rgba(176, 0, 0, 0.4);
        transform: scale(1.05);
    }

    .elementor-pagination .page-numbers.next,
    .elementor-pagination .page-numbers.prev {
        width: auto;
        padding: 0 24px;
        font-size: 14px;
        text-transform: uppercase;
        letter-spacing: 1px;
        background-color: #111;
        color: #fff;
    }

    .elementor-pagination .page-numbers.next:hover,
    .elementor-pagination .page-numbers.prev:hover {
        background-color: #b00000;
        color: #fff;
    }/* End custom CSS */