.elementor-350 .elementor-element.elementor-element-4515fe3{--display:flex;}.elementor-widget-theme-post-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-350 .elementor-element.elementor-element-52a359b{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-widget-table-of-contents{--header-color:var( --e-global-color-secondary );--item-text-color:var( --e-global-color-text );--item-text-hover-color:var( --e-global-color-accent );--marker-color:var( --e-global-color-text );}.elementor-widget-table-of-contents .elementor-toc__header, .elementor-widget-table-of-contents .elementor-toc__header-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-table-of-contents .elementor-toc__list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-350 .elementor-element.elementor-element-4f64af4{padding:22px 22px 22px 22px;--item-text-hover-decoration:underline;}.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__header-title{text-align:start;}.elementor-widget-theme-post-featured-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-theme-post-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-350 .elementor-element.elementor-element-ccc38f5{width:var( --container-widget-width, 102.33% );max-width:102.33%;--container-widget-width:102.33%;--container-widget-flex-grow:0;}.elementor-350 .elementor-element.elementor-element-ccc38f5.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-350 .elementor-element.elementor-element-39f842d{--display:flex;}.elementor-350 .elementor-element.elementor-element-7a943cd{--display:flex;--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;}.elementor-350 .elementor-element.elementor-element-527b068{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-350 .elementor-element.elementor-element-730d5ce{text-align:start;}.elementor-350 .elementor-element.elementor-element-730d5ce .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:15px;font-weight:900;}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-350 .elementor-element.elementor-element-d99365a .elementor-icon-box-wrapper{align-items:center;gap:15px;}.elementor-350 .elementor-element.elementor-element-d99365a.elementor-view-stacked .elementor-icon{background-color:#48A768;}.elementor-350 .elementor-element.elementor-element-d99365a.elementor-view-framed .elementor-icon, .elementor-350 .elementor-element.elementor-element-d99365a.elementor-view-default .elementor-icon{fill:#48A768;color:#48A768;border-color:#48A768;}.elementor-350 .elementor-element.elementor-element-d99365a .elementor-icon{font-size:20px;}.elementor-350 .elementor-element.elementor-element-d99365a .elementor-icon-box-title, .elementor-350 .elementor-element.elementor-element-d99365a .elementor-icon-box-title a{font-family:"Roboto", Sans-serif;font-size:15px;font-weight:600;}.elementor-widget-progress-tracker .current-progress-percentage{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-350 .elementor-element.elementor-element-15bff6f{width:var( --container-widget-width, 30% );max-width:30%;--container-widget-width:30%;--container-widget-flex-grow:0;}.elementor-350 .elementor-element.elementor-element-1af5497{text-align:start;}.elementor-350 .elementor-element.elementor-element-1af5497 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:22px;font-weight:600;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-350 .elementor-element.elementor-element-a8f6869{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;margin:-27px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-350 .elementor-element.elementor-element-a8f6869 .elementor-divider-separator{width:100%;}.elementor-350 .elementor-element.elementor-element-a8f6869 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.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-350 .elementor-element.elementor-element-245b164{--grid-row-gap:15px;--grid-column-gap:15px;}.elementor-350 .elementor-element.elementor-element-245b164.elementor-element{--align-self:flex-start;}.elementor-350 .elementor-element.elementor-element-245b164 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.8 * 100% );}.elementor-350 .elementor-element.elementor-element-245b164:after{content:"0.8";}.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__thumbnail__link{width:30%;}.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__thumbnail{border-radius:10px 10px 10px 10px;}.elementor-350 .elementor-element.elementor-element-245b164.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{margin-right:20px;}.elementor-350 .elementor-element.elementor-element-245b164.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{margin-left:20px;}.elementor-350 .elementor-element.elementor-element-245b164.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:20px;}.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__title, .elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__title a{font-weight:600;}.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__excerpt p{font-weight:400;}.elementor-350 .elementor-element.elementor-element-245b164 a.elementor-post__read-more{font-weight:500;}.elementor-350 .elementor-element.elementor-element-b6dcf13{--display:flex;}.elementor-350 .elementor-element.elementor-element-cd4d4e4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:20px 20px 20px 20px;}@media(max-width:1024px){.elementor-350 .elementor-element.elementor-element-52a359b{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-350 .elementor-element.elementor-element-52a359b{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-350 .elementor-element.elementor-element-245b164 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-350 .elementor-element.elementor-element-245b164:after{content:"0.5";}.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__thumbnail__link{width:100%;}}/* Start custom CSS for theme-post-title, class: .elementor-element-77ffc5b *//* =========================================
   SINGLE POST TITLE
   PREMIUM / MINIMAL / LTR
========================================= */

.elementor-350 .elementor-element.elementor-element-77ffc5b {
    --title-bg: #EEF8F5;
    --title-border: #D8ECE6;
    --title-green: #2F6F5E;
    --title-green-dark: #245648;
    --title-text: #1F302B;

    width: 100%;

    direction: ltr !important;
    text-align: center !important;

    margin: 0 0 32px 0;

    padding: 55px 40px;

    background:
        linear-gradient(
            145deg,
            #EEF8F5 0%,
            #F8FCFA 100%
        );

    border: 1px solid var(--title-border);

    border-radius: 22px;

    position: relative;

    overflow: hidden;

    box-sizing: border-box;

    box-shadow:
        0 12px 35px rgba(47, 111, 94, 0.07);
}


/* =========================================
   SUBTLE TOP ACCENT
========================================= */

.elementor-350 .elementor-element.elementor-element-77ffc5b::before {
    content: "";

    position: absolute;

    top: 0;
    left: 50%;

    transform: translateX(-50%);

    width: 90px;
    height: 4px;

    background: var(--title-green);

    border-radius: 0 0 8px 8px;
}


/* =========================================
   SUBTLE DECORATIVE CIRCLES
========================================= */

.elementor-350 .elementor-element.elementor-element-77ffc5b::after {
    content: "";

    position: absolute;

    width: 180px;
    height: 180px;

    right: -90px;
    top: -90px;

    border-radius: 50%;

    background: rgba(47, 111, 94, 0.045);

    pointer-events: none;
}


/* =========================================
   TITLE
========================================= */

.elementor-350 .elementor-element.elementor-element-77ffc5b .elementor-heading-title {

    position: relative;

    z-index: 2;

    margin: 0 !important;
    padding: 0 !important;

    width: 100%;

    direction: ltr !important;
    text-align: center !important;

    color: var(--title-text) !important;

    font-size: clamp(38px, 5vw, 64px);

    line-height: 1.12;

    font-weight: 800;

    letter-spacing: -2px;

    text-wrap: balance;

    max-width: 1050px;

    margin-left: auto !important;
    margin-right: auto !important;

    transition:
        color 0.3s ease,
        transform 0.3s ease;
}


/* =========================================
   OPTIONAL GREEN ACCENT ON TITLE
========================================= */

.elementor-350 .elementor-element.elementor-element-77ffc5b .elementor-heading-title strong {
    color: var(--title-green);
}


/* =========================================
   HOVER - VERY SUBTLE
========================================= */

.elementor-350 .elementor-element.elementor-element-77ffc5b:hover .elementor-heading-title {
    color: var(--title-green-dark) !important;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    .elementor-350 .elementor-element.elementor-element-77ffc5b {
        padding: 45px 30px;

        border-radius: 19px;

        margin-bottom: 28px;
    }

    .elementor-350 .elementor-element.elementor-element-77ffc5b .elementor-heading-title {

        font-size: clamp(34px, 6vw, 52px);

        letter-spacing: -1.5px;

        line-height: 1.14;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elementor-350 .elementor-element.elementor-element-77ffc5b {

        padding: 38px 20px;

        border-radius: 16px;

        margin-bottom: 24px;

        box-shadow:
            0 8px 24px rgba(47, 111, 94, 0.06);
    }


    .elementor-350 .elementor-element.elementor-element-77ffc5b::before {

        width: 60px;
        height: 3px;
    }


    .elementor-350 .elementor-element.elementor-element-77ffc5b::after {

        width: 120px;
        height: 120px;

        right: -60px;
        top: -60px;
    }


    .elementor-350 .elementor-element.elementor-element-77ffc5b .elementor-heading-title {

        font-size: clamp(30px, 9vw, 42px);

        line-height: 1.15;

        letter-spacing: -1px;

        text-align: center !important;

        direction: ltr !important;
    }
}


/* =========================================
   SMALL PHONES
========================================= */

@media (max-width: 400px) {

    .elementor-350 .elementor-element.elementor-element-77ffc5b {

        padding: 32px 16px;

        border-radius: 14px;
    }

    .elementor-350 .elementor-element.elementor-element-77ffc5b .elementor-heading-title {

        font-size: 29px;

        line-height: 1.16;

        letter-spacing: -0.7px;
    }
}
```/* End custom CSS */
/* Start custom CSS for table-of-contents, class: .elementor-element-4f64af4 */.elementor-350 .elementor-element.elementor-element-4f64af4 {
    --toc-primary: #2f6f5e;
    --toc-primary-dark: #245648;
    --toc-bg: #eef8f5;
    --toc-border: #d7ebe5;
    --toc-text: #263a35;
    --toc-muted: #687b75;
    --toc-white: #ffffff;

    direction: ltr;
    text-align: left;

    background: linear-gradient(
        145deg,
        #eef8f5 0%,
        #f7fcfa 100%
    );

    border: 1px solid var(--toc-border);
    border-radius: 18px;

    padding: 28px 30px;

    position: relative;
    overflow: hidden;

    margin: 30px 0;

    box-shadow:
        0 10px 30px rgba(47, 111, 94, 0.07),
        0 2px 8px rgba(15, 23, 42, 0.03);

    transition: all 0.3s ease;
}

/* Top Accent */
.elementor-350 .elementor-element.elementor-element-4f64af4::before {
    content: "";

    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

    background: linear-gradient(
        90deg,
        #2f6f5e 0%,
        #75aa9b 45%,
        #eef8f5 100%
    );
}

/* =========================
   TABLE OF CONTENTS HEADER
========================= */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__header {
    display: flex;
    align-items: center;
    justify-content: space-between;

    width: 100%;

    margin: 0 0 18px 0;
    padding: 0 0 15px 0;

    border-bottom: 1px solid var(--toc-border);

    font-size: 20px;
    line-height: 1.3;
    font-weight: 750;

    color: var(--toc-primary-dark);

    text-align: left;
    direction: ltr;

    position: relative;
}

/* Remove Elementor Hamburger/Icon */
.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__header::before,
.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__header > i {
    display: none !important;
}

/* Header Text */
.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__header-title {
    margin: 0;

    text-align: left;
    direction: ltr;

    color: var(--toc-primary-dark);

    font-size: 20px;
    font-weight: 750;
}

/* =========================
   TOGGLE ARROW
========================= */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__toggle-button {
    margin-left: auto;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 34px;
    height: 34px;

    flex-shrink: 0;

    border-radius: 9px;

    background: #ffffff;
    border: 1px solid var(--toc-border);

    color: var(--toc-primary);

    transition:
        transform 0.3s ease,
        background 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease;
}

/* Arrow Hover */
.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__toggle-button:hover {
    background: var(--toc-primary);
    color: #ffffff;

    box-shadow:
        0 5px 12px rgba(47, 111, 94, 0.18);
}

/* =========================
   TOC LIST
========================= */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-wrapper {
    margin: 0;
    padding: 0;

    text-align: left;
    direction: ltr;
}

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list {
    margin: 0;
    padding: 0;

    text-align: left;
    direction: ltr;
}

/* =========================
   LIST ITEMS
========================= */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item {
    position: relative;

    margin: 0;
    padding: 10px 0;

    border-bottom: 1px solid rgba(215, 235, 229, 0.8);

    transition: all 0.25s ease;
}

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item:last-child {
    border-bottom: none;
}

/* =========================
   LINKS
========================= */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item a {
    display: block;

    padding-left: 5px;

    color: var(--toc-text);

    font-size: 15px;
    line-height: 1.6;
    font-weight: 500;

    text-align: left;
    direction: ltr;

    text-decoration: none;

    transition:
        color 0.25s ease,
        transform 0.25s ease;
}

/* Link Hover */
.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item:hover > a {
    color: var(--toc-primary);
    transform: translateX(5px);
}

/* =========================
   NESTED ITEMS
========================= */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item .elementor-toc__list {
    margin-top: 6px;
    padding-left: 20px;

    border-left: 2px solid var(--toc-border);
}

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item .elementor-toc__list-item {
    border-bottom: none;

    padding: 6px 0;
}

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item .elementor-toc__list-item a {
    font-size: 14px;
    color: var(--toc-muted);
}

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item .elementor-toc__list-item:hover > a {
    color: var(--toc-primary);
}

/* =========================
   ACTIVE ITEM
========================= */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item a.elementor-item-active {
    color: var(--toc-primary-dark);
    font-weight: 700;

    position: relative;
}

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item a.elementor-item-active::before {
    content: "";

    position: absolute;
    left: -5px;
    top: 50%;

    width: 3px;
    height: 18px;

    transform: translateY(-50%);

    background: var(--toc-primary);

    border-radius: 5px;
}

/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {

    .elementor-350 .elementor-element.elementor-element-4f64af4 {
        padding: 22px 20px;

        border-radius: 15px;

        margin: 24px 0;
    }

    .elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__header {
        margin-bottom: 14px;
        padding-bottom: 13px;
    }

    .elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__header-title {
        font-size: 18px;
    }

    .elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__toggle-button {
        width: 31px;
        height: 31px;
    }

    .elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item {
        padding: 8px 0;
    }

    .elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item a {
        font-size: 14px;
    }

    .elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-item .elementor-toc__list {
        padding-left: 15px;
    }
}

/* =========================================
   TOC SCROLLABLE LIST
   SHOW APPROX. 8 ITEMS
========================================= */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-wrapper {
    max-height: 280px;

    overflow-y: auto;

    overflow-x: hidden;

    padding-right: 8px;

    scrollbar-width: thin;

    scrollbar-color: #75AA9B transparent;
}


/* Chrome / Edge / Safari */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-wrapper::-webkit-scrollbar {
    width: 5px;
}

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-wrapper::-webkit-scrollbar-track {
    background: transparent;
}

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-wrapper::-webkit-scrollbar-thumb {
    background: #75AA9B;

    border-radius: 20px;
}

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-wrapper::-webkit-scrollbar-thumb:hover {
    background: #2F6F5E;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-wrapper {
        max-height: 330px;

        padding-right: 6px;
    }
}

/* =========================================
   FIX TOC HEIGHT / REMOVE EMPTY SPACE
========================================= */

.elementor-350 .elementor-element.elementor-element-4f64af4 {
    height: fit-content !important;
    min-height: 0 !important;
    align-self: flex-start !important;
}


/* Elementor widget wrapper */

.elementor-350 .elementor-element.elementor-element-4f64af4 > .elementor-widget-container {
    height: auto !important;
    min-height: 0 !important;
}


/* TOC itself */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc {
    height: auto !important;
    min-height: 0 !important;
}


/* TOC content */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list-wrapper {
    height: auto !important;
    min-height: 0 !important;

    max-height: 390px !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;
}


/* Prevent Elementor from stretching the list */

.elementor-350 .elementor-element.elementor-element-4f64af4 .elementor-toc__list {
    height: auto !important;
    min-height: 0 !important;
}/* End custom CSS */
/* Start custom CSS for theme-post-featured-image, class: .elementor-element-819dd33 *//* =========================================
   FEATURED IMAGE - PREMIUM EDITORIAL STYLE
   LTR / RESPONSIVE
========================================= */

.elementor-350 .elementor-element.elementor-element-819dd33 {
    --image-radius: 22px;
    --green: #2F6F5E;
    --green-light: #EEF8F5;
    --border: #D8ECE6;

    width: 100%;
    direction: ltr;
    text-align: left;

    position: relative;

    margin: 30px 0 40px;

    box-sizing: border-box;
}


/* =========================================
   IMAGE WRAPPER
========================================= */

.elementor-350 .elementor-element.elementor-element-819dd33 .elementor-widget-container {
    position: relative;

    width: 100%;

    overflow: hidden;

    border-radius: var(--image-radius);

    background: var(--green-light);

    border: 1px solid var(--border);

    box-shadow:
        0 18px 45px rgba(47, 111, 94, 0.10),
        0 4px 14px rgba(15, 23, 42, 0.05);

    box-sizing: border-box;

    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
}


/* =========================================
   IMAGE
========================================= */

.elementor-350 .elementor-element.elementor-element-819dd33 img {
    display: block;

    width: 100% !important;
    height: auto;

    max-width: 100%;

    object-fit: cover;

    border-radius: var(--image-radius);

    transition:
        transform 0.6s cubic-bezier(0.22, 1, 0.36, 1),
        filter 0.4s ease;
}


/* =========================================
   IMAGE OVERLAY
========================================= */

.elementor-350 .elementor-element.elementor-element-819dd33 .elementor-widget-container::after {
    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background:
        linear-gradient(
            180deg,
            rgba(0, 0, 0, 0) 55%,
            rgba(25, 55, 47, 0.16) 100%
        );

    opacity: 0.7;

    transition: opacity 0.4s ease;
}


/* =========================================
   HOVER EFFECT
========================================= */

.elementor-350 .elementor-element.elementor-element-819dd33:hover .elementor-widget-container {
    transform: translateY(-4px);

    box-shadow:
        0 24px 55px rgba(47, 111, 94, 0.14),
        0 6px 18px rgba(15, 23, 42, 0.06);
}


.elementor-350 .elementor-element.elementor-element-819dd33:hover img {
    transform: scale(1.025);

    filter: saturate(1.04);
}


.elementor-350 .elementor-element.elementor-element-819dd33:hover .elementor-widget-container::after {
    opacity: 0.45;
}


/* =========================================
   SUBTLE GREEN FRAME
========================================= */

.elementor-350 .elementor-element.elementor-element-819dd33::before {
    content: "";

    position: absolute;

    top: -7px;
    left: -7px;

    width: 75px;
    height: 75px;

    border-top: 3px solid var(--green);
    border-left: 3px solid var(--green);

    border-radius: 18px 0 0 0;

    opacity: 0.65;

    pointer-events: none;

    z-index: 2;
}


/* Bottom Accent */

.elementor-350 .elementor-element.elementor-element-819dd33::after {
    content: "";

    position: absolute;

    right: -7px;
    bottom: -7px;

    width: 75px;
    height: 75px;

    border-right: 3px solid var(--green);
    border-bottom: 3px solid var(--green);

    border-radius: 0 0 18px 0;

    opacity: 0.45;

    pointer-events: none;

    z-index: 2;
}


/* =========================================
   IMAGE LINK
========================================= */

.elementor-350 .elementor-element.elementor-element-819dd33 a {
    display: block;

    width: 100%;

    text-decoration: none;

    border: none;

    outline: none;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    .elementor-350 .elementor-element.elementor-element-819dd33 {
        margin: 25px 0 35px;
    }

    .elementor-350 .elementor-element.elementor-element-819dd33 .elementor-widget-container {
        border-radius: 18px;
    }

    .elementor-350 .elementor-element.elementor-element-819dd33 img {
        border-radius: 18px;
    }

    .elementor-350 .elementor-element.elementor-element-819dd33::before,
    .elementor-350 .elementor-element.elementor-element-819dd33::after {
        width: 55px;
        height: 55px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elementor-350 .elementor-element.elementor-element-819dd33 {
        margin: 20px 0 30px;
    }

    .elementor-350 .elementor-element.elementor-element-819dd33 .elementor-widget-container {
        border-radius: 14px;

        box-shadow:
            0 12px 30px rgba(47, 111, 94, 0.09),
            0 3px 10px rgba(15, 23, 42, 0.04);
    }

    .elementor-350 .elementor-element.elementor-element-819dd33 img {
        border-radius: 14px;

        transition: none;
    }

    /* Disable hover movement on mobile */

    .elementor-350 .elementor-element.elementor-element-819dd33:hover .elementor-widget-container {
        transform: none;

        box-shadow:
            0 12px 30px rgba(47, 111, 94, 0.09),
            0 3px 10px rgba(15, 23, 42, 0.04);
    }

    .elementor-350 .elementor-element.elementor-element-819dd33:hover img {
        transform: none;
        filter: none;
    }

    .elementor-350 .elementor-element.elementor-element-819dd33::before {
        top: -5px;
        left: -5px;

        width: 42px;
        height: 42px;

        border-width: 2px;

        border-radius: 12px 0 0 0;
    }

    .elementor-350 .elementor-element.elementor-element-819dd33::after {
        right: -5px;
        bottom: -5px;

        width: 42px;
        height: 42px;

        border-width: 2px;

        border-radius: 0 0 12px 0;
    }
}


/* =========================================
   SMALL PHONES
========================================= */

@media (max-width: 400px) {

    .elementor-350 .elementor-element.elementor-element-819dd33 .elementor-widget-container {
        border-radius: 12px;
    }

    .elementor-350 .elementor-element.elementor-element-819dd33 img {
        border-radius: 12px;
    }

    .elementor-350 .elementor-element.elementor-element-819dd33::before,
    .elementor-350 .elementor-element.elementor-element-819dd33::after {
        width: 32px;
        height: 32px;

        border-width: 2px;
    }
}/* End custom CSS */
/* Start custom CSS for theme-post-content, class: .elementor-element-ccc38f5 *//* =========================================
   ARTICLE CONTENT
   CLEAN / EDITORIAL / LTR
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 {
    --bg: #EEF8F5;
    --border: #D8ECE6;
    --green: #2F6F5E;
    --green-dark: #245648;
    --heading: #1F302B;
    --text: #344640;
    --muted: #6B7A75;

    width: 100%;

    direction: ltr !important;
    text-align: left !important;

    box-sizing: border-box;

    padding: 38px 42px;

    background: linear-gradient(
        145deg,
        #EEF8F5 0%,
        #F9FCFB 100%
    );

    border: 1px solid var(--border);

    border-radius: 20px;

    margin: 28px 0 40px;

    position: relative;

    overflow: hidden;

    box-shadow:
        0 12px 35px rgba(47, 111, 94, 0.07),
        0 2px 8px rgba(20, 50, 43, 0.03);
}


/* =========================================
   REMOVE OLD WIDGET ACCENT
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5::before {
    display: none !important;
}


/* =========================================
   DECORATIVE BACKGROUND
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5::after {
    content: "";

    position: absolute;

    width: 220px;
    height: 220px;

    right: -120px;
    bottom: -130px;

    border-radius: 50%;

    background: rgba(47, 111, 94, 0.04);

    pointer-events: none;
}


/* =========================================
   CONTENT WRAPPER
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 .elementor-widget-container {
    position: relative;

    z-index: 2;

    width: 100%;

    direction: ltr !important;
    text-align: left !important;
}


/* =========================================
   NORMAL PARAGRAPHS
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 p {
    margin: 0 0 22px 0;

    color: var(--text);

    font-size: 18px;

    line-height: 1.9;

    font-weight: 400;

    direction: ltr !important;
    text-align: left !important;
}


/* Last paragraph */

.elementor-350 .elementor-element.elementor-element-ccc38f5 p:last-child {
    margin-bottom: 0;
}


/* =========================================
   H2
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 h2 {

    position: relative;

    margin: 48px 0 20px 0;

    padding: 0 0 0 17px;

    color: var(--heading);

    font-size: 31px;

    line-height: 1.3;

    font-weight: 750;

    letter-spacing: -0.7px;

    direction: ltr !important;
    text-align: left !important;
}


/* H2 Green Line */

.elementor-350 .elementor-element.elementor-element-ccc38f5 h2::before {

    content: "";

    position: absolute;

    left: 0;

    top: 3px;

    width: 4px;

    height: calc(100% - 6px);

    background: var(--green);

    border-radius: 6px;
}


/* =========================================
   H3
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 h3 {

    position: relative;

    margin: 38px 0 16px 0;

    padding: 0 0 0 14px;

    color: var(--heading);

    font-size: 24px;

    line-height: 1.35;

    font-weight: 700;

    letter-spacing: -0.4px;

    direction: ltr !important;
    text-align: left !important;
}


/* H3 Green Line */

.elementor-350 .elementor-element.elementor-element-ccc38f5 h3::before {

    content: "";

    position: absolute;

    left: 0;

    top: 3px;

    width: 3px;

    height: calc(100% - 6px);

    background: #4F8978;

    border-radius: 5px;
}


/* =========================================
   H4
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 h4 {

    position: relative;

    margin: 30px 0 14px 0;

    padding: 0 0 0 12px;

    color: var(--heading);

    font-size: 20px;

    line-height: 1.4;

    font-weight: 700;

    letter-spacing: -0.2px;

    direction: ltr !important;
    text-align: left !important;
}


/* H4 Green Line */

.elementor-350 .elementor-element.elementor-element-ccc38f5 h4::before {

    content: "";

    position: absolute;

    left: 0;

    top: 4px;

    width: 2px;

    height: calc(100% - 8px);

    background: #75AA9B;

    border-radius: 4px;
}


/* =========================================
   H2 FIRST CHILD
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 h2:first-child {
    margin-top: 5px;
}


/* =========================================
   LINKS
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 a {

    color: var(--green);

    font-weight: 600;

    text-decoration: underline;

    text-decoration-color:
        rgba(47, 111, 94, 0.3);

    text-decoration-thickness: 1px;

    text-underline-offset: 3px;

    transition:
        color 0.25s ease,
        text-decoration-color 0.25s ease;
}


.elementor-350 .elementor-element.elementor-element-ccc38f5 a:hover {

    color: var(--green-dark);

    text-decoration-color: var(--green-dark);
}


/* =========================================
   BOLD
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 strong,
.elementor-350 .elementor-element.elementor-element-ccc38f5 b {

    color: #263A35;

    font-weight: 700;
}


/* =========================================
   BLOCKQUOTE
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 blockquote {

    margin: 32px 0;

    padding: 22px 25px;

    background: rgba(255, 255, 255, 0.65);

    border: 1px solid var(--border);

    border-left: 4px solid var(--green);

    border-radius: 12px;

    color: var(--green-dark);

    font-size: 18px;

    line-height: 1.8;
}


.elementor-350 .elementor-element.elementor-element-ccc38f5 blockquote p {

    margin: 0;

    color: var(--green-dark);
}


/* =========================================
   LISTS
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 ul,
.elementor-350 .elementor-element.elementor-element-ccc38f5 ol {

    margin: 22px 0;

    padding-left: 28px;

    direction: ltr !important;

    text-align: left !important;
}


.elementor-350 .elementor-element.elementor-element-ccc38f5 li {

    margin-bottom: 9px;

    padding-left: 4px;

    color: var(--text);

    font-size: 18px;

    line-height: 1.8;
}


.elementor-350 .elementor-element.elementor-element-ccc38f5 ul li::marker {

    color: var(--green);
}


.elementor-350 .elementor-element.elementor-element-ccc38f5 ol li::marker {

    color: var(--green);

    font-weight: 700;
}


/* =========================================
   HORIZONTAL RULE
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 hr {

    border: 0;

    height: 1px;

    margin: 42px 0;

    background: linear-gradient(
        90deg,
        transparent,
        var(--border),
        transparent
    );
}


/* =========================================
   IMAGES INSIDE ARTICLE
========================================= */

.elementor-350 .elementor-element.elementor-element-ccc38f5 img {

    display: block;

    max-width: 100%;

    height: auto;

    margin: 30px auto;

    border-radius: 14px;

    border: 1px solid var(--border);

    box-shadow:
        0 10px 25px rgba(47, 111, 94, 0.08);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    .elementor-350 .elementor-element.elementor-element-ccc38f5 {

        padding: 32px 34px;

        border-radius: 18px;
    }

    .elementor-350 .elementor-element.elementor-element-ccc38f5 p {

        font-size: 17px;

        line-height: 1.85;
    }

    .elementor-350 .elementor-element.elementor-element-ccc38f5 h2 {

        font-size: 28px;

        padding-left: 15px;
    }

    .elementor-350 .elementor-element.elementor-element-ccc38f5 h3 {

        font-size: 23px;

        padding-left: 13px;
    }

    .elementor-350 .elementor-element.elementor-element-ccc38f5 h4 {

        font-size: 20px;

        padding-left: 11px;
    }

    .elementor-350 .elementor-element.elementor-element-ccc38f5 li {

        font-size: 17px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elementor-350 .elementor-element.elementor-element-ccc38f5 {

        padding: 27px 21px;

        margin: 22px 0 30px;

        border-radius: 15px;
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 p {

        font-size: 16px;

        line-height: 1.8;

        margin-bottom: 19px;
    }


    /* H2 */

    .elementor-350 .elementor-element.elementor-element-ccc38f5 h2 {

        font-size: 25px;

        line-height: 1.3;

        margin-top: 36px;

        margin-bottom: 15px;

        padding-left: 13px;
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 h2::before {

        width: 3px;

        top: 3px;

        height: calc(100% - 6px);
    }


    /* H3 */

    .elementor-350 .elementor-element.elementor-element-ccc38f5 h3 {

        font-size: 21px;

        line-height: 1.35;

        margin-top: 29px;

        margin-bottom: 13px;

        padding-left: 11px;
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 h3::before {

        width: 2.5px;

        top: 3px;

        height: calc(100% - 6px);
    }


    /* H4 */

    .elementor-350 .elementor-element.elementor-element-ccc38f5 h4 {

        font-size: 19px;

        line-height: 1.4;

        margin-top: 24px;

        margin-bottom: 11px;

        padding-left: 10px;
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 h4::before {

        width: 2px;

        top: 3px;

        height: calc(100% - 6px);
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 blockquote {

        padding: 19px 18px;

        font-size: 16px;

        line-height: 1.75;
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 ul,
    .elementor-350 .elementor-element.elementor-element-ccc38f5 ol {

        padding-left: 23px;
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 li {

        font-size: 16px;

        line-height: 1.75;
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 img {

        margin: 24px auto;

        border-radius: 11px;
    }
}


/* =========================================
   SMALL PHONES
========================================= */

@media (max-width: 400px) {

    .elementor-350 .elementor-element.elementor-element-ccc38f5 {

        padding: 24px 17px;
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 p {

        font-size: 15.5px;

        line-height: 1.8;
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 h2 {

        font-size: 23px;

        padding-left: 12px;
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 h3 {

        font-size: 20px;

        padding-left: 10px;
    }


    .elementor-350 .elementor-element.elementor-element-ccc38f5 h4 {

        font-size: 18px;

        padding-left: 9px;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-730d5ce *//* =========================================
   SIDEBAR HEADING
   COLOR & VISUAL ONLY
========================================= */

.elementor-350 .elementor-element.elementor-element-730d5ce .elementor-heading-title,
.elementor-350 .elementor-element.elementor-element-730d5ce .elementor-heading-title span,
.elementor-350 .elementor-element.elementor-element-730d5ce .elementor-heading-title a,
.elementor-350 .elementor-element.elementor-element-730d5ce span {
    color: #245648 !important;

    background: none !important;

    -webkit-text-fill-color: #245648 !important;

    text-decoration: none !important;

    text-shadow: none !important;

    transition: color 0.25s ease;
}


/* Hover */

.elementor-350 .elementor-element.elementor-element-730d5ce .elementor-heading-title:hover,
.elementor-350 .elementor-element.elementor-element-730d5ce .elementor-heading-title:hover span,
.elementor-350 .elementor-element.elementor-element-730d5ce .elementor-heading-title:hover a {
    color: #2F6F5E !important;

    -webkit-text-fill-color: #2F6F5E !important;
}


/* Remove previous decorative elements */

.elementor-350 .elementor-element.elementor-element-730d5ce::before,
.elementor-350 .elementor-element.elementor-element-730d5ce::after,
.elementor-350 .elementor-element.elementor-element-730d5ce .elementor-heading-title::before,
.elementor-350 .elementor-element.elementor-element-730d5ce .elementor-heading-title::after,
.elementor-350 .elementor-element.elementor-element-730d5ce span::before,
.elementor-350 .elementor-element.elementor-element-730d5ce span::after {
    content: none !important;

    display: none !important;
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-d99365a *//* =========================================
   SIDEBAR HEADING
   COLOR & VISUAL ONLY
========================================= */

.elementor-350 .elementor-element.elementor-element-d99365a .elementor-heading-title,
.elementor-350 .elementor-element.elementor-element-d99365a .elementor-heading-title span,
.elementor-350 .elementor-element.elementor-element-d99365a .elementor-heading-title a,
.elementor-350 .elementor-element.elementor-element-d99365a span {
    color: #245648 !important;

    background: none !important;

    -webkit-text-fill-color: #245648 !important;

    text-decoration: none !important;

    text-shadow: none !important;

    transition: color 0.25s ease;
}


/* Hover */

.elementor-350 .elementor-element.elementor-element-d99365a .elementor-heading-title:hover,
.elementor-350 .elementor-element.elementor-element-d99365a .elementor-heading-title:hover span,
.elementor-350 .elementor-element.elementor-element-d99365a .elementor-heading-title:hover a {
    color: #2F6F5E !important;

    -webkit-text-fill-color: #2F6F5E !important;
}


/* Remove previous decorative elements */

.elementor-350 .elementor-element.elementor-element-d99365a::before,
.elementor-350 .elementor-element.elementor-element-d99365a::after,
.elementor-350 .elementor-element.elementor-element-d99365a .elementor-heading-title::before,
.elementor-350 .elementor-element.elementor-element-d99365a .elementor-heading-title::after,
.elementor-350 .elementor-element.elementor-element-d99365a span::before,
.elementor-350 .elementor-element.elementor-element-d99365a span::after {
    content: none !important;

    display: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-1af5497 *//* =========================================
   SIDEBAR HEADING
   COLOR & VISUAL ONLY
========================================= */

.elementor-350 .elementor-element.elementor-element-1af5497 .elementor-heading-title,
.elementor-350 .elementor-element.elementor-element-1af5497 .elementor-heading-title span,
.elementor-350 .elementor-element.elementor-element-1af5497 .elementor-heading-title a,
.elementor-350 .elementor-element.elementor-element-1af5497 span {
    color: #245648 !important;

    background: none !important;

    -webkit-text-fill-color: #245648 !important;

    text-decoration: none !important;

    text-shadow: none !important;

    transition: color 0.25s ease;
}


/* Hover */

.elementor-350 .elementor-element.elementor-element-1af5497 .elementor-heading-title:hover,
.elementor-350 .elementor-element.elementor-element-1af5497 .elementor-heading-title:hover span,
.elementor-350 .elementor-element.elementor-element-1af5497 .elementor-heading-title:hover a {
    color: #2F6F5E !important;

    -webkit-text-fill-color: #2F6F5E !important;
}


/* Remove previous decorative elements */

.elementor-350 .elementor-element.elementor-element-1af5497::before,
.elementor-350 .elementor-element.elementor-element-1af5497::after,
.elementor-350 .elementor-element.elementor-element-1af5497 .elementor-heading-title::before,
.elementor-350 .elementor-element.elementor-element-1af5497 .elementor-heading-title::after,
.elementor-350 .elementor-element.elementor-element-1af5497 span::before,
.elementor-350 .elementor-element.elementor-element-1af5497 span::after {
    content: none !important;

    display: none !important;
}/* End custom CSS */
/* Start custom CSS for posts, class: .elementor-element-245b164 *//* =========================================
   LATEST POSTS
   PREMIUM CARD GRID
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 {
    --green: #2F6F5E;
    --green-dark: #245648;
    --green-soft: #EEF8F5;
    --green-border: #D8ECE6;

    --title: #243A35;
    --text: #5F716B;

    direction: ltr !important;
    text-align: left !important;

    position: relative;

    padding: 24px;

    background: linear-gradient(
        145deg,
        #EEF8F5 0%,
        #F9FCFB 100%
    );

    border: 1px solid var(--green-border);

    border-radius: 20px;

    box-shadow:
        0 12px 35px rgba(47, 111, 94, 0.07);

    box-sizing: border-box;
}


/* =========================================
   TOP ACCENT
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 100%;
    height: 3px;

    background: linear-gradient(
        90deg,
        #245648,
        #2F6F5E,
        #75AA9B
    );

    border-radius: 20px 20px 0 0;
}


/* =========================================
   POST GRID
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-posts-container {

    display: grid !important;

    grid-template-columns:
        repeat(1, minmax(0, 1fr));

    gap: 18px;

    width: 100%;
}


/* =========================================
   POST CARD
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post {

    display: flex !important;

    flex-direction: column !important;

    width: 100% !important;

    min-width: 0;

    overflow: hidden;

    background: #FFFFFF !important;

    border: 1px solid var(--green-border) !important;

    border-radius: 15px !important;

    box-shadow:
        0 5px 18px rgba(47, 111, 94, 0.045);

    direction: ltr !important;

    text-align: left !important;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}


/* =========================================
   CARD HOVER
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post:hover {

    transform: translateY(-4px);

    border-color: #BFDCD3 !important;

    box-shadow:
        0 14px 30px rgba(47, 111, 94, 0.11);
}


/* =========================================
   POST THUMBNAIL
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__thumbnail__link {

    display: block !important;

    width: 100% !important;

    height: 190px !important;

    overflow: hidden;

    margin: 0 !important;

    padding: 0 !important;

    position: relative;

    background: #EAF4F1;
}


/* Image wrapper */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__thumbnail {

    width: 100% !important;

    height: 100% !important;

    margin: 0 !important;

    padding: 0 !important;

    overflow: hidden;
}


/* Actual image */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__thumbnail img {

    width: 100% !important;

    height: 100% !important;

    max-width: none !important;

    object-fit: cover !important;

    object-position: center !important;

    display: block !important;

    margin: 0 !important;

    transition:
        transform 0.55s ease;
}


/* Image hover */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post:hover
.elementor-post__thumbnail img {

    transform: scale(1.06);
}


/* =========================================
   IMAGE OVERLAY
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__thumbnail__link::after {

    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 100%;
    height: 45%;

    background: linear-gradient(
        to top,
        rgba(20, 55, 47, 0.18),
        transparent
    );

    pointer-events: none;
}


/* =========================================
   CARD CONTENT
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__text {

    display: flex;

    flex-direction: column;

    flex: 1;

    padding: 18px 18px 19px !important;

    direction: ltr !important;

    text-align: left !important;
}


/* =========================================
   POST TITLE
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__title {

    margin: 0 0 10px !important;

    padding: 0 !important;

    direction: ltr !important;

    text-align: left !important;

    font-size: inherit;

    line-height: inherit;

    font-weight: inherit;

    color: var(--title) !important;
}


.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__title a {

    color: var(--title) !important;

    text-decoration: none !important;

    transition:
        color 0.25s ease;
}


.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post:hover
.elementor-post__title a {

    color: var(--green) !important;
}


/* =========================================
   EXCERPT
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__excerpt {

    margin: 0 0 14px !important;

    color: var(--text) !important;

    direction: ltr !important;

    text-align: left !important;

    line-height: inherit;
}


/* =========================================
   META
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__meta-data {

    margin-top: auto !important;

    padding-top: 12px;

    border-top: 1px solid #E8F2EF;

    color: #71817C !important;

    direction: ltr !important;

    text-align: left !important;
}


/* =========================================
   READ MORE
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__read-more {

    display: inline-flex !important;

    align-items: center;

    gap: 5px;

    color: var(--green) !important;

    text-decoration: none !important;

    font-weight: 600;

    transition:
        color 0.25s ease,
        transform 0.25s ease;
}


.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__read-more::after {

    content: "→";

    transition:
        transform 0.25s ease;
}


.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__read-more:hover {

    color: var(--green-dark) !important;
}


.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__read-more:hover::after {

    transform: translateX(3px);
}


/* =========================================
   POST CATEGORY
========================================= */

.elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__badge {

    background: var(--green) !important;

    color: #FFFFFF !important;

    border-radius: 7px;

    padding: 5px 9px;

    box-shadow:
        0 4px 10px rgba(47, 111, 94, 0.15);
}


/* =========================================
   TABLET
========================================= */

@media (min-width: 768px) {

    .elementor-350 .elementor-element.elementor-element-245b164 .elementor-posts-container {

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 20px;
    }

    .elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__thumbnail__link {

        height: 180px !important;
    }
}


/* =========================================
   DESKTOP
========================================= */

@media (min-width: 1100px) {

    .elementor-350 .elementor-element.elementor-element-245b164 .elementor-posts-container {

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 22px;
    }

    .elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__thumbnail__link {

        height: 190px !important;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elementor-350 .elementor-element.elementor-element-245b164 {

        padding: 17px;

        border-radius: 16px;
    }


    .elementor-350 .elementor-element.elementor-element-245b164 .elementor-posts-container {

        grid-template-columns:
            1fr;

        gap: 15px;
    }


    .elementor-350 .elementor-element.elementor-element-245b164 .elementor-post {

        border-radius: 13px !important;
    }


    .elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__thumbnail__link {

        height: 190px !important;
    }


    .elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__text {

        padding: 16px !important;
    }
}


/* =========================================
   SMALL PHONES
========================================= */

@media (max-width: 400px) {

    .elementor-350 .elementor-element.elementor-element-245b164 {

        padding: 13px;

        border-radius: 14px;
    }


    .elementor-350 .elementor-element.elementor-element-245b164 .elementor-post__thumbnail__link {

        height: 175px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-39f842d *//* =========================================
   SIDEBAR — DESIGN ONLY
   NO TYPOGRAPHY / NO ALIGNMENT CHANGES
========================================= */

.elementor-350 .elementor-element.elementor-element-39f842d {
    --sidebar-bg: #EEF8F5;
    --sidebar-bg-light: #F8FCFA;
    --sidebar-border: #D7EAE4;
    --sidebar-green: #2F6F5E;
    --sidebar-green-light: #75AA9B;

    position: relative;

    background:
        linear-gradient(
            145deg,
            #EEF8F5 0%,
            #F8FCFA 100%
        );

    border: 1px solid #D7EAE4;

    border-radius: 20px;

    box-shadow:
        0 12px 35px rgba(47, 111, 94, 0.07),
        0 3px 10px rgba(20, 50, 43, 0.025);

    overflow: hidden;

    transition:
        box-shadow 0.3s ease,
        transform 0.3s ease;
}


/* =========================================
   TOP GREEN ACCENT
========================================= */

.elementor-350 .elementor-element.elementor-element-39f842d::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

    background:
        linear-gradient(
            90deg,
            #2F6F5E 0%,
            #4F8978 50%,
            #9BC9BB 100%
        );

    border-radius: 20px 20px 0 0;

    z-index: 5;

    pointer-events: none;
}


/* =========================================
   SUBTLE DECORATIVE CIRCLE
========================================= */

.elementor-350 .elementor-element.elementor-element-39f842d::after {
    content: "";

    position: absolute;

    width: 190px;
    height: 190px;

    right: -105px;
    top: -105px;

    border-radius: 50%;

    background: rgba(47, 111, 94, 0.045);

    pointer-events: none;

    z-index: 0;
}


/* =========================================
   KEEP CONTENT ABOVE DECORATION
========================================= */

.elementor-350 .elementor-element.elementor-element-39f842d > * {
    position: relative;
    z-index: 2;
}


/* =========================================
   DIVIDER DESIGN
   Does NOT change spacing
========================================= */

.elementor-350 .elementor-element.elementor-element-39f842d .elementor-divider-separator {
    border-color: #D7EAE4 !important;
}


/* =========================================
   BUTTON DESIGN ONLY
   No font / size changes
========================================= */

.elementor-350 .elementor-element.elementor-element-39f842d .elementor-button {
    background: #2F6F5E;

    border-color: #2F6F5E;

    box-shadow:
        0 6px 16px rgba(47, 111, 94, 0.14);

    transition:
        background 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease;
}


.elementor-350 .elementor-element.elementor-element-39f842d .elementor-button:hover {
    background: #245648;

    border-color: #245648;

    box-shadow:
        0 9px 22px rgba(47, 111, 94, 0.20);

    transform: translateY(-2px);
}


/* =========================================
   IMAGE DESIGN ONLY
   No sizing changes
========================================= */

.elementor-350 .elementor-element.elementor-element-39f842d img {
    border-radius: 14px;

    border: 1px solid #D7EAE4;

    box-shadow:
        0 8px 22px rgba(47, 111, 94, 0.08);

    transition:
        box-shadow 0.3s ease,
        transform 0.3s ease;
}


.elementor-350 .elementor-element.elementor-element-39f842d img:hover {
    box-shadow:
        0 12px 28px rgba(47, 111, 94, 0.12);

    transform: translateY(-2px);
}


/* =========================================
   ICON DESIGN ONLY
========================================= */

.elementor-350 .elementor-element.elementor-element-39f842d .elementor-icon {
    color: #2F6F5E;

    transition:
        color 0.25s ease,
        transform 0.25s ease;
}


.elementor-350 .elementor-element.elementor-element-39f842d .elementor-icon:hover {
    color: #245648;

    transform: translateY(-1px);
}


/* =========================================
   INPUT / SEARCH DESIGN ONLY
========================================= */

.elementor-350 .elementor-element.elementor-element-39f842d input,
.elementor-350 .elementor-element.elementor-element-39f842d textarea,
.elementor-350 .elementor-element.elementor-element-39f842d select {
    background: #FFFFFF;

    border-color: #D7EAE4;

    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}


.elementor-350 .elementor-element.elementor-element-39f842d input:focus,
.elementor-350 .elementor-element.elementor-element-39f842d textarea:focus,
.elementor-350 .elementor-element.elementor-element-39f842d select:focus {
    border-color: #75AA9B;

    box-shadow:
        0 0 0 3px rgba(117, 170, 155, 0.13);
}


/* =========================================
   SIDEBAR HOVER
========================================= */

.elementor-350 .elementor-element.elementor-element-39f842d:hover {
    box-shadow:
        0 16px 42px rgba(47, 111, 94, 0.09),
        0 4px 12px rgba(20, 50, 43, 0.03);
}


/* =========================================
   MOBILE
   ONLY VISUAL ADJUSTMENT
========================================= */

@media (max-width: 767px) {

    .elementor-350 .elementor-element.elementor-element-39f842d {
        border-radius: 16px;

        box-shadow:
            0 8px 25px rgba(47, 111, 94, 0.06);
    }

    .elementor-350 .elementor-element.elementor-element-39f842d::before {
        height: 3px;
    }

    .elementor-350 .elementor-element.elementor-element-39f842d::after {
        width: 140px;
        height: 140px;

        right: -75px;
        top: -75px;
    }
}
```/* End custom CSS */
/* Start custom CSS for post-comments, class: .elementor-element-cd4d4e4 *//* =========================================================
   RTFNUTS - WordPress Comments
   Minimal / Clean / #EEF8F5
========================================================= */

.comment-rtf {
    padding: 38px;
    background: #EEF8F5;
    border: 1px solid #d9eee7;
    border-radius: 20px;
    box-sizing: border-box;
}


/* =========================================================
   Title
========================================================= */

#comments .comment-reply-title {
    margin: 0 0 12px;
    color: #173f35;
    font-family: inherit;
    font-size: 27px;
    font-weight: 700;
    line-height: 1.4;
}

#comments .comment-reply-title small {
    font-size: 13px;
    font-weight: 500;
}


/* =========================================================
   Notes
========================================================= */

#comments .comment-notes {
    margin: 0 0 28px;
    color: #607b73;
    font-size: 14px;
    line-height: 1.8;
}

#comments .required {
    color: #d06b5d;
}


/* =========================================================
   Form Layout
========================================================= */

#comments .comment-form {
    margin: 0;
}

#comments .comment-form p {
    margin-top: 0;
}

#comments .comment-form label {
    display: block;
    margin-bottom: 8px;
    color: #23483f;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.6;
}


/* =========================================================
   Textarea
========================================================= */

#comments .comment-form-comment {
    margin-bottom: 20px;
}

#comments textarea#comment {
    display: block;
    width: 100%;
    min-height: 175px;
    padding: 15px 17px;
    background: #ffffff;
    border: 1px solid #cfe4dc;
    border-radius: 12px;
    color: #263f39;
    font-family: inherit;
    font-size: 15px;
    line-height: 1.8;
    resize: vertical;
    outline: none;
    box-sizing: border-box;

    transition:
        border-color .25s ease,
        box-shadow .25s ease;
}

#comments textarea#comment:focus {
    border-color: #2f6f5e;
    box-shadow: 0 0 0 4px rgba(47, 111, 94, .09);
}

#comments textarea#comment::placeholder {
    color: #9aafa9;
}


/* =========================================================
   Inputs
========================================================= */

#comments .comment-form-author,
#comments .comment-form-email,
#comments .comment-form-url {
    margin-bottom: 18px;
}

#comments input[type="text"],
#comments input[type="email"],
#comments input[type="url"] {
    display: block;
    width: 100%;
    height: 48px;
    padding: 0 15px;
    background: #ffffff;
    border: 1px solid #cfe4dc;
    border-radius: 11px;
    color: #263f39;
    font-family: inherit;
    font-size: 14px;
    outline: none;
    box-sizing: border-box;

    transition:
        border-color .25s ease,
        box-shadow .25s ease;
}

#comments input[type="text"]:focus,
#comments input[type="email"]:focus,
#comments input[type="url"]:focus {
    border-color: #2f6f5e;
    box-shadow: 0 0 0 4px rgba(47, 111, 94, .09);
}

#comments input::placeholder {
    color: #9aafa9;
}


/* =========================================================
   Cookie Checkbox
========================================================= */

#comments .comment-form-cookies-consent {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 8px 0 22px;
}

#comments #wp-comment-cookies-consent {
    width: 17px;
    height: 17px;
    margin: 3px 0 0;
    flex: 0 0 17px;
    accent-color: #2f6f5e;
    cursor: pointer;
}

#comments .comment-form-cookies-consent label {
    margin: 0;
    color: #607b73;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.7;
    cursor: pointer;
}


/* =========================================================
   Submit Button
========================================================= */

#comments .form-submit {
    margin: 0;
}

#comments input#submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 155px;
    height: 48px;
    padding: 0 25px;

    border: 0;
    border-radius: 11px;

    background: #2f6f5e;
    color: #ffffff;

    font-family: inherit;
    font-size: 14px;
    font-weight: 700;

    cursor: pointer;

    transition:
        background .25s ease,
        transform .25s ease,
        box-shadow .25s ease;
}

#comments input#submit:hover {
    background: #245648;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(47, 111, 94, .18);
}

#comments input#submit:active {
    transform: translateY(0);
    box-shadow: none;
}


/* =========================================================
   Cancel Reply
========================================================= */

#comments #cancel-comment-reply-link {
    color: #2f6f5e;
    text-decoration: none;
}

#comments #cancel-comment-reply-link:hover {
    text-decoration: underline;
}


/* =========================================================
   Remove Default WP Spacing
========================================================= */

#comments .comment-form p:last-child {
    margin-bottom: 0;
}


/* =========================================================
   Mobile
========================================================= */

@media (max-width: 767px) {

    #comments.comments-area {
        margin: 35px 15px;
        padding: 25px 20px;
        border-radius: 16px;
    }

    #comments .comment-reply-title {
        font-size: 22px;
        margin-bottom: 10px;
    }

    #comments .comment-notes {
        font-size: 13px;
        margin-bottom: 23px;
    }

    #comments textarea#comment {
        min-height: 145px;
        font-size: 14px;
    }

    #comments input[type="text"],
    #comments input[type="email"],
    #comments input[type="url"] {
        height: 46px;
    }

    #comments input#submit {
        width: 100%;
        height: 47px;
    }
}/* End custom CSS */