.elementor-element-a3ca995 .elementor-heading-title {
    font-size: 36px;
    margin-bottom: 30px;
}

.actions-list {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.actions-list__header {
    border-bottom: 1px solid #E1E4ED;
    padding-bottom: 32px;
}

.actions-list__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 10px;

    ul {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        font-size: 14px;
    }

    .actions-list__link {
        border: 2px solid #fff;
        color: #fff;
        box-shadow: 2px 2px 10px 0 #0B376126;
        border-radius: 4px;
        padding: 7px 10px;
        font-weight: 700;
        line-height: 1.2;
        display: inline-block;
        text-transform: initial;
        text-decoration: none !important;
    }

    button {
        align-self: self-start;
        text-transform: uppercase;
        padding: 7px 10px;
        border-radius: 2px !important;

        svg {
            width: 10px;
        }
    }
}

.actions-list__select {
    color: #405B58;
    font-weight: 700;
    border: 1px solid #405B5826;
    border-radius: 4px;
    width: max-content;
    padding-right: 30px;
    appearance: none;
}

.actions-list__filter {
    background: #D5ECEB4D;
    padding: 8px;
    display: flex;
    justify-content: flex-end;
    gap: 12px;

    fieldset {
        border: none;
        border-radius: 0;
        padding: 0;
        position: relative;

        .icon {
            position: absolute;
            right: 10px;
            height: 14px;
            top: 50%;
            transform: translateY(-50%);

            svg {
                width: 12px;
                fill: #405B58;
            }
        }
    }
}

.actions-list__content {
    display: flex;
    margin-top: 20px;
    flex-wrap: wrap;
    gap: 32px;
}

.actions-list__footer {
    .s-pagination {
        display: flex;
        justify-content: flex-end;
        gap: 8px;
    
        a {
            width: 40px;
            height: 45px;
            border-radius: 8px;
            background: #FFFAEB;
            font-size: 24px;
            font-weight: 700;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            color: #3A332D;

            &.active {
                background: #FFE799;
            }
        }

        .e-fas-chevron-left {
            transform: rotate(180deg);
        }

        .disabled {
            display: none;
        }
    }
}

.action-banner {
    padding-top: 32px;
    padding-bottom: 34px;
}

.action-banner__back {
   font-weight: 700;
   font-size: 14px;
   color: #405B58;
   margin-bottom: 40px;
   display: inline-block;
}

.action-bearer-name {
    font-weight: 700;
    color: #405B58;
    text-transform: uppercase;
}

.action-banner-right {

    figure {
        height: 100%;

        img {
            min-height: 300px;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
    }
}

.action-item {
    --e-global-color-text: #3A332D;

    padding: 24px;
    transition: all 0.3s;
    background-color: #FFFAEB;

    @media screen and (min-width: 768px) {
        width: calc((100% - 48px) / 2);
    }

    @media screen and (min-width: 992px) {
        width: calc((100% - 64px) / 3);
    }

    .elementor-button {
        fill: var(--e-global-color-text);
        color: var(--e-global-color-text);
    }

    .elementor-button-link {
        display: block;
        text-align: center;

        svg {
            height: 12px;
        }
    }
}

.action-item__cat {
    background: #349DAD;
    color: #fff;
    padding: 12px;
    box-shadow: 0 1px 4px 0px #19213D14;
    font-size: 14px;
    font-weight: 700;
    display: inline-block;
    margin-bottom: 24px;
}

.action-item__title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 24px;
    letter-spacing: -0.1em;
    color: #405B58;
    /* css limmit 4 lines */
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
}

.action-item__image {
    width: 100%;
    overflow: hidden;
    margin-bottom: 24px;
    aspect-ratio: 330/125;

    img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

.action-item__date {
    margin-bottom: 36px;
}

.action-anchor {
    display: none;

    @media screen and (min-width: 992px) {
        background: #405B58;
        color: #fff;
        margin-bottom: 68px;
        position: relative;
        padding: 13px;
        position: sticky;
        top: 0;
        z-index: 1;
        display: block;
    }

    .action-anchor-list {
        text-align: center;
        display: flex;
        justify-content: center;
        gap: 16px;

        .elementor-button {
            background-color: transparent;
            border: 1.25px solid #fff;
            font-weight: 800;
            border-radius: 8px;
            padding: 8px 15px;

            span {
                display: inline-flex;
                flex-direction: row-reverse;
            }
        }
    }
}

/* single-terrarade_action */
.single-terrarade_action .ast-container {
    max-width: 100%;
    padding: 0!important;
    flex-direction: column;
}

.ter-container {
    max-width: 1356px;
    padding: 0 30px;
    margin: 0 auto;
}

.ter-flex {
    gap: 34px;

    @media screen and (min-width: 992px) {
        display: flex;

        .col-6 {
            width: 50%;
        }
    }
}

.ter-accordion-head {
    padding: 20px 12px;
    font-size: 24px;
    font-weight: 800;
    border-top: 1px solid #405B584D;
    border-bottom: 1px solid #405B584D;
    margin-bottom: 32px;
    position: relative;
    cursor: pointer;

    &:after {
        content: "";
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 10px;
        width: 14px;
        height: 10px;
        background: url("../images/arrow-angle-up.svg") center/100% no-repeat;
        display: block;
        transition-duration: .3s;
    }

    &.active {
        &:after {
            transform: rotate(180deg);
        }
    }
}

.ter-accordion-content {
    margin-bottom: 32px;

    .content-left {
        flex-shrink: 1;
        margin-bottom: 24px;

        @media screen and (min-width: 992px) {
            margin-bottom: 0;
        }

        figure {
            width: 100%;
            height: 100%;

            img {
                display: block;
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
        }
    }

    .content-right {
        ul {
            margin-left: 30px;

            li {
                margin-bottom: 10px;
            }
        }
    }

    .content {
        padding: 20px 32px;
        position: relative;
        border-left: 6px solid #FFD631;

        @media screen and (min-width: 992px) {
            margin-left: 30px;
            width: calc(100% / 12 * 9);
        }

        &:before {
            content: "";
            background-color: #63C3D1;
            width: 6px;
            height: calc(100% / 3);
            position: absolute;
            top: calc(100% / 3);
            left: -6px;
        }

        &:after {
            content: "";
            width: 6px;
            height: calc(100% / 3);
            position: absolute;
            top: calc(100% / 3 * 2);
            left: -6px;
            background-color: #405B58;
        }
    }

    blockquote {
        font-style: normal;
        border: 0;
        padding: 0 0 0 40px;
        margin: 0 0 30px 0;

        @media screen and (min-width: 992px) {
            padding-left: 80px;
        }

        &:before {
            content: "";
            position: absolute;
            left: 0;
            top: 0;
            background: url("../images/quote.svg") center/ 100% no-repeat;
            display: inline-block;
            width: 20px;
            height: 16px;
        }

        p {
            color: #349DAD;
            font-weight: 700;
            font-size: 16px;
            text-align: justify;
        }

        cite {
            font-weight: 400;
            font-style: normal;
            color: #405B58;
        }
    }

    .bg-box-content {
        position: relative;

        &:before {
            content: "";
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
            background: url("../images/bg-curve.png") center/ 50% 100% repeat;
            mix-blend-mode: plus-lighter;
            opacity: 0.08;
        }
    }

    .ter-html-code {
        aspect-ratio: 1290/ 607;
        margin-bottom: 32px;
    }
}

@media screen and (min-width: 992px) {
    .ter-accordion-content blockquote:before {
        width: 52px;
        height: 34px;
    }
}

.ter-accordion-content-01 {
    .content-left {
        flex: 0 0 calc((100% / 12) * 4);
    }

    .content-right {
        @media screen and (min-width: 992px) {
            padding-top: 30px;
            padding-bottom: 30px;
        }
    }
}

.ter-accordion-content-02 {
    flex-direction: row-reverse;

    .content-left {
        flex: 0 0 calc((100% / 12) * 4);
    }

    .bg-box-content {
        background-color: #D0EDF1;
        padding: 20px;
        margin-top: -70px;
        position: relative;
        z-index: 1;
        margin-left: 30px;
        margin-bottom: 32px;

        @media screen and (min-width: 992px) {
            margin: 30px -90px 48px 0;
            padding: 32px;
        }
    }
}

.ter-accordion-content-04 {
    .content-left {
        flex: 0 0 calc((100% / 12) * 5 + 30px);
    }

    .bg-box-content {
        background: #405B58;
        color: #fff;
        padding: 32px;

        p {
            &:last-child {
                margin-bottom: 0;
            }
        }
    }
}

.action-head {
    background-color: #D0EDF1;
    padding: 20px;
    margin-bottom: 48px;
    position: relative;

    @media screen and (min-width: 992px) {
        margin-right: -200px;
        padding: 40px;
    }

    &:before {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: url("../images/bg-curve.png") center/ 50% 100% repeat;
        mix-blend-mode: plus-lighter;
        opacity: 0.08;
        pointer-events: none;
    }

    .action-cats {
        margin-left: 0;
        list-style: none;
        position: relative;

        li {
            background: #349DAD;
            color: #fff;
            padding: 12px;
            font-size: 14px;
            font-weight: 700;
            display: inline-block;
            box-shadow: 0 1px 4px 0 #19213D14;

            @media screen and (min-width: 992px) {
                font-size: 18px;
            }
        }
    }

    h1 {
        text-transform: none;
        font-size: 24px;

        @media screen and (min-width: 992px) {
            font-size: 28px;
        }
    }
}

.action-bearer-logo {
    display: flex;
    column-gap: 28px;
    row-gap: 12px;
    flex-wrap: wrap;
    list-style: none;
    margin-left: 0;
    margin-bottom: 24px;

    @media screen and (min-width: 992px) {
        margin-bottom: 48px;
    }

    img {
        height: 35px;
        width: auto;
    }
}

.action-info {
    margin-left: 0;
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    column-gap: 32px;
}

.action-info__ttl {
    font-size: 16px;
    font-weight: 700;
    color: #349DAD;
    text-transform: uppercase;
    margin-bottom: 5px;
    line-height: 1.2;
}

.ter-partner {
    text-align: center;
    padding-top: 65px;
    padding-bottom: 65px;
    position: relative;
    z-index: 0;

    h2 {
        margin-bottom: 24px;
    }

    .customSwiper {
        @media screen and (min-width: 992px) {
            padding-left: 50px;
            padding-right: 50px;
        }
    }

    .swiper-slide {
        width: fit-content;
    }

    .swiper-button-prev {
        width: 41px;
        height: 38px;
        background: #405B58;
        border-radius: 10px;

        &:after {
            content: "";
        }
    }

    .swiper-button-next {
        width: 41px;
        height: 38px;
        background: #405B58;
        border-radius: 10px;

        &:after {
            content: "";
        }
    }
}

.ter-partner__slider {
    margin-bottom: 42px;
}

.ter-partner__slider__ttl {
    margin-bottom: 12px;
}

.ter-partner__list {
    display: flex;
    align-items: center;
    gap: 24px;
}

.ter-partner__item {
    width: 146px !important;
    height: auto !important;
    padding: 10px;

    img {
        width: auto;
        height: auto;
        max-height: 52px;
    }
}

.ter-other-actions {
    h2 {
        text-align: center;
    }
}

.ter-timeline-inner {
    border-left: 3px solid #63C3D1;
    position: relative;

    @media screen and (min-width: 992px) {
        margin-left: 300px;
    }

    &:before {
        content: "";
        width: 3px;
        height: 50px;
        background-color: #63C3D1;
        position: absolute;
        left: -3px;
        top: 100%;
    }

    &:after {
        content: "";
        width: 0;
        height: 0;
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        border-top: 16px solid #63C3D1;
        position: absolute;
        left: -11px;
        bottom: -65px;
    }
}

.ter-timeline__item {
    position: relative;
    background-color: #EFF9FA;
    padding: 32px;

    &:not(:last-child) {
        border-bottom: 1px solid #63C3D180;
    }

    &:before {
        content: "";
        width: 20px;
        height: 20px;
        border: 3px solid #63C3D1;
        border-radius: 50%;
        background-color: #fff;
        display: block;
        position: absolute;
        left: -12px;
        top: 50px;
    }

    ul {
        margin-left: 20px;
        margin-bottom: 0;

        li {
            margin-bottom: 10px;
        }
    }
}

.ter-timeline__item__ttl {
    margin-bottom: 32px;
    font-weight: 700;
    font-size: 16px;
    color: #349DAD;

    @media screen and (min-width: 992px) {
        font-size: 18px;
    }
}

.ter-timeline__item__date {
    font-size: 20px;
    font-weight: 700;
    color: #349DAD;
    width: 300px;
    right: 100%;
    padding-right: 20px;
    margin-bottom: 32px;

    @media screen and (min-width: 992px) {
        position: absolute;
        left: -300px;
        top: 32px;
        text-align: right;
    }
}