.custom-cta {
    display: grid !important;
    grid-template-areas:
        ". img"
        "title img"
        "text img"
        "link img"
        ". img";
    margin: 32px 0 !important;
    width: 100%;
    padding: 35px !important;
    border-radius: 24px !important;
    background: linear-gradient(90deg, rgb(1, 32, 73) 0%,rgba(1, 183, 234, 0.17) 100%);
    border: 1px solid rgb(156, 255, 255);
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 0 32px;
    overflow: hidden;
}

.custom-cta.gray-style {
    padding: 38px 38px 32px !important;
    background: linear-gradient(90deg, #FFFFFF 0%, #D2DCF3 100%) !important;
    border: 2px solid #5075D3 !important;
    border-bottom-width: 8px !important;

}

.custom-cta:last-child {
    margin-bottom: 0 !important;
}

.custom-cta * {
    margin: 0 !important;
}

.custom-cta .cta-title {
    grid-area: title;
    font-size: 23px !important;
    font-weight: 700 !important;
    color: #FFFFFF;
}

.custom-cta.gray-style .cta-title {
    color: #181B1A;
}

.custom-cta .cta-sub-title {
    grid-area: text;
    margin-top: 32px !important;
    max-width: 500px;
    font-size: 16px;
    font-weight: 400;
    line-height: 32px;
    color: #FFFFFF;
}

.custom-cta.gray-style .cta-sub-title {
    color: #383246;
    opacity: 0.7;
}

.custom-cta .cta-link {
    grid-area: link;
    margin-top: 32px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px 60px;
    width: 100%;
    max-width: 264px;
    background-color: #7ab99d;
    border-radius: 8px;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 20px !important;
    color: #FFFFFF !important;
    text-align: center;
    text-decoration: none;
    transition: 0.3s background-color;
}

.custom-cta.gray-style .cta-link {
    background-color: #5075D3;
    border-radius: 32px;
}

.custom-cta .cta-link:hover {
    transform: translateY(-2px);
}

.custom-cta .cta-link:active {
    background-color: #00818f;
}

.custom-cta.gray-style .cta-link {
    background-color: #5075D3;
    border-radius: 32px;
}

.custom-cta.gray-style .cta-link:hover {
    background-color: #7390DB;
}

.custom-cta.gray-style .cta-link:active {
    background-color: #405DA8;
}

.custom-cta .cta-img-wrapper {
    grid-area: img;
    position: relative;
    margin: 0 auto !important;
    display: flex;
    width: 290px;
    height: 290px;
    z-index: 1;
}

.custom-cta .cta-img-wrapper::before {
    content: '';
    position: absolute;
    display: flex;
    width: 68%;
    height: 82px;
    left: 50%;
    bottom: -16px;
    transform: translateX(-50%);
    border-radius: 28px;
    background: rgba(80, 117, 211, 0.60);
    filter: blur(20px);
    z-index: -1;
}

.custom-cta .cta-img-wrapper .cta-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: bottom;
}

@media (max-width: 1024px) {
    
    .custom-cta {
        gap: 0 27px;
        padding: 35px 18px 35px 35px !important;
    }
    
    .custom-cta.gray-style {
        padding: 38px 21px 32px 38px !important;
    }

    .custom-cta .cta-title {
        max-width: unset;
    }

    .custom-cta .cta-sub-title {
        max-width: unset;
    }

    .custom-cta .cta-img-wrapper {
        width: 246px;
        height: 246px;
    }
}

@media (max-width: 767px) {
    
    .custom-cta {
        display: flex !important;
        flex-direction: column;
        align-items: stretch;
        padding: 38px 22px 46px !important;
        border-radius: 16px !important;
        border-width: 2px !important;
    }
    
    .custom-cta.gray-style {
        padding: 38px 22px 40px !important;
        background: linear-gradient(180deg, #FFFFFF 0%, #D2DCF3 100%) !important;
    }

    .custom-cta .cta-title {
        font-size: 26px !important;
        line-height: 34px !important;
        text-align: center;
    }

    .custom-cta .cta-sub-title {
        margin-top: 18px !important;
        font-size: 16px !important;
        line-height: 22px !important;
        text-align: center;
    }

    .custom-cta .cta-link {
        align-self: center;
    }

    .custom-cta .cta-img-wrapper {
        margin-top: 48px !important;
    }
}
/****** FOR ADMIN PANEL *******/
.custom-cta-editor {
    display: grid !important;
    grid-template-areas:
        "title img"
        "text img"
        "link img";
    margin: 32px 0 !important;
    width: 100%;
    padding: 35px !important;
    border: 2px dashed #D7DFF6 !important;
    border-radius: 24px !important;
    background-color: #f3f3f3 !important;
    grid-template-columns: 1fr auto;
    gap: 32px 32px;
}

.custom-cta-editor .cta-title {
    grid-area: title;
    max-width: 464px;
    font-size: 24px;
    font-weight: 700;
    line-height: 32px;
    color: #333;
}

.custom-cta-editor .cta-img {
    grid-area: img;
    margin: auto 0 !important;
    width: 150px;
    height: 150px;
    object-fit: contain;
}

.custom-cta-editor .cta-sub-title {
    grid-area: text;
    max-width: 464px;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #666;
}

.custom-cta-editor .cta-link {
    grid-area: link;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 30px;
    width: 100%;
    max-width: 200px;
    background-color: #ddd;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: #333 !important;
    text-align: center;
    text-decoration: none;
}

@media (max-width: 1024px) {
    .custom-cta-editor {
        display: flex !important;
        flex-direction: column;
        align-items: stretch;
    }
    .custom-cta-editor .cta-title,
    .custom-cta-editor .cta-sub-title {
        text-align: center;
    }
    .custom-cta-editor .cta-img {
        margin: 0 auto !important;
    }
    .custom-cta-editor .cta-link {
        align-self: center;
    }
}