@media only screen and (min-width: 1041px) {
    nav.menu { 
        display: block !important;
    }
	nav.menu li
	{
		opacity: 1 !important;
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 10px;
	}
    .resp_icon { 
        display: none;
    }
    

    li.disable_sep_after .menu_sep_after {
        display: none !important;
    }
    li.menu_separator {
        display: block;
        float: left;
        width: 100%;
        height: 1px;
        overflow: hidden;
    }
}
@media only screen and (max-width: 1040px) {

    .nav-menu {
        flex-direction: column;
        gap: 0;
    }

    #top_gradient {
        height: 74px;
    }
    #headerMenu li.menu_separator {
        display: none;
    }
    
    .headerItems {
        flex-direction: column;
        align-items: flex-start;
        justify-content: normal;
        position: relative;
        height: 74px;
        padding: 0;
    }
    .headerLeftNav {
        position: relative;
        top: 14px;
    }
    a.logo img {
        width: auto;
        height: 47px;
        display: block;
    }

    .wrap { 
        padding: 0 20px;
        max-width: var(--grid-responsive-max-width);
    }
    .section-title .wrap {
        width: calc(var(--grid-responsive-max-width) - 40px);
    }

    nav.menu
	{
        background: var(--sBasic_1);
        right: 0;
        position: fixed;
        z-index: 999;
		width: 100%;
        height: 100vh;
        top: 0;
        display: none;
	}
    
	nav.menu li {
		float: none;
		margin: 0;
        display: block;
        width: 100%;
        text-align: center;
		opacity: 0;
    }
    ul#headerMenu {
        flex-direction: column;
        justify-content: center;
        gap: 0;
        height: 100vh;
    }

    .resp_icon {
        display: block;
        width: 36px;
        height: 26px;
        cursor: pointer;
        position: absolute;
        right: 0;
        top: 24px;
        z-index: 999;
    }
        .resp_icon.active { 
            right: 32px;
            position: fixed;
        }
        .resp_icon.active span:nth-child(2) {
            display: none;
            transition: 0.5s;
        }
        .resp_icon.active span:nth-child(1) {
            transform: rotate(45deg);
            transform-origin: center center;
            top: 12px;
            position: relative;
            transition: 0.5s;
        }
        .resp_icon.active span:nth-child(3) {
            transform: rotate(-45deg);
            transform-origin: center center;
            top: 0;
            position: relative;
            transition: 0.5s;
        }

    .resp_icon span {
        display: block;
        width: 100%;
        height: 2px;
        background-color: white;
        border-radius: 10px;
        transition: 0.5s;
    }
    .resp_icon > div {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    
    section .section-title ~ .wrap {
        padding-top: 0;
        padding-bottom: 0;
    }
    section#slider {
        padding: 0;
    }

    .has--featured_image {
        flex-direction: column;
        align-items: center;
        gap: 20px;
    }
    .has--featured_image.image-right {
        flex-direction: column-reverse;
    }

    .has--featured_image .image {
        width: 100%;
    }
    .has--featured_image .content {
        width: 100%;
    }

    h1, h2 {
        font-size: 22px;
        line-height: 2rem;
    }
    h3 {
        font-size: 18px;
        line-height: 2rem;
    }
    h4,
    h5,
    h6 {
        font-size: 16px;
        line-height: 2rem;
    }

    .slider-title {
        font-size: 22px;
        line-height: 2rem;
    }
    section .section-title .wrap {
        padding: 25px 20px;
    }
    section:nth-child(odd) .section-title .wrap {
        background-position: top -5px left -20px;
        background-size: 60px auto;
    }
    section:nth-child(even) .section-title .wrap {
        background-position: bottom -5px right -20px;
        background-size: 60px auto;
    }
    
    .section .image {
        display: flex;
        flex-direction: column;
        align-items: center;
    }


    .contact_all {
        flex-direction: column;
    }
    .contact_all > div {
        width: 100%;
    }

    .footerSocials {
        flex-grow: 1;
        flex-direction: column;
        align-self: center;
        align-items: center;
        gap: 15px;
    }
    .footerSocials a {
        margin: 0;
    }
    .footerLogo img {
        display: block;
        width: 100%;
        max-width: 280px;
    }

    #footer *,
    .footer-copyright p,
    #footer a {
        font-size: 12px;
        line-height: 20px;
    }
    .footerSocials .socials-title {
        margin-bottom: 0;
    }
    .footer-copyright {
        padding: 0 20px;
    }
    .footerWrap {
        gap: 30px;
    }
    .footerSocials {
        gap: 5px;
    }

    ul#footerMenu {
        flex-direction: column;
    }
    #footer a {
        margin-bottom: 0;
    }
    #footer .menu_sep_after {
        display: none !important;
    }

    ul#gridMenuList > li {
        width: calc(100% / 2 - 40px);
        max-width: unset;
        text-align: center;
    }
    ul#gridMenuList > li > a {
        display: block;
        text-align: center;
    }
}
@media only screen and (max-width: 682px) {
    h1, h2 {
        font-size: 18px;
        line-height: 1.7rem;
    }
    .slider-title {
        font-size: 18px;
        line-height: 1.7rem;
    }
    .slider-content {
        padding-bottom: 45px;
    }
    .swiper-slide {
        font-size: 15px;
    }
    .swiper-slide img {
        object-fit: cover;
        min-height: 240px;
    }
    ul#gridMenuList {
        flex-direction: column;
        justify-content: center;
        align-content: center;
        align-items: center;
    }
    ul#gridMenuList > li {
        width: calc(100% / 1 - 20px);
    }
    
    .wpcf7-form .security_question {
        margin-bottom: -10px;
        text-align: center;
        padding-top: 15px;
    }
    span.wpcf7-form-control-wrap[data-name="security"] label {
        flex-direction: column;
    }

}