/* ---------------------- Banner ---------------------- */

#main_banner .nm-banner {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    border-radius: 20px;
    overflow: hidden;
    padding: 35px 0;
    height: 100%;
}

#main_banner img {
    display: block;
    height: 290px;
    width: 35% !important;
    border-radius: 20px !important;
    object-fit: cover;
    margin: 0 7% 0 0;
}

#main_banner .nm-banner-content {
    position: relative;
    width: 50%;
}

#main_banner .nm-banner-text {
    padding: 0 0 0 15%;
}

#main_banner a.nm-banner-link.type-btn {
    background: #605566;
    border-radius: 20px;
    padding: 10px 30px;
    margin-top: 0;
    margin-bottom: 35px;
}
#main_banner a.nm-banner-link.type-btn:hover,
#main_banner a.nm-banner-link.type-btn:focus {
    background-color: #4B4350;
}

#main_banner h2 {
    font-size: 36px;
    text-transform: uppercase;
    color: #CD0040;
    font-weight: 500;
    line-height: 36px;
}

#main_banner p {
    font-size: 22px;
    color: #4B4350;
    margin: 15px 0 35px;
    line-height: 30px;
}

.slick-dots li.slick-active button, .slick-dots li button {
    border-color: #4B4350 !important;
}

.slick-dots-inside .slick-dots {
    position: relative !important;
    display: block;
    bottom: 50px !important;
    padding: 0 0 0 6% !important;
    left: 0 !important;
    width: auto;
    transform: unset !important;
}

ul.slick-dots button {
    cursor: pointer;
}

.slick-next:not(.slick-disabled):hover,
.slick-prev:not(.slick-disabled):hover {
    color: #4B4350 !important;
}

.nm_btn_align_right a {
    border: none;
    padding: 0;
}

.nm_btn_align_right a span.nm_btn_title {
    line-height: 36px;
}

/* ---------------------- end Banner ---------------------- */
@media (max-width: 769px) {
    /* Banner ------------ */ 
    #main_banner h2 {
        font-size: 26px;
    }
    #main_banner p {
        font-size: 16px;
    }
    .nm_btn_align_right a {
        margin-top: 20px;
    }
    /* ------------ Banner */ 
}
@media (max-width: 520px) {
    /* Banner ------------ */ 
    .nm-banner.content-full.image-type-fluid.text-color-dark.subtitle-below {
        height: 380px;
    }
    
    #main_banner .nm-banner {
        position: relative;
    }
     #main_banner img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100%;
     }
     #main_banner .nm-banner-content {
        width: 100%;
    }
    #main_banner .nm-banner-text {
        padding: 0px 20px;
    }
    .nm-banner-text-inner {
        background-color: rgb(0 0 0 / 40%);
        border-radius: 20px;
        padding: 10px;
    }
    p.nm-banner-subtitle.nm-alt-font,
    h2.nm-banner-title {
        text-shadow: 0px 0px 2px black;
    }
    #main_banner p {
        color: #fff;
    }
    #main_banner a.nm-banner-link.type-btn {
        margin-bottom: 0;
    }

    .slick-dots-inside .slick-dots {
        bottom: 25px !important;
    }
    /* ------------ Banner */ 
}