/*Desktop - Mobile*/
/*320px Mobile*/
@media only screen and (min-width : 0px) and (max-width : 320px) {
    header {
        padding: 20px;
    }
    header nav{
        align-items: flex-end;
    }
    section.hero-text {
        padding: 0 20px 0 20px;
        flex-direction: column;
    }
    section.hero-text .btn-light-blue{
        padding: 8px 9px 8px 9px;
    }
    section.hero-text h1{
        width: 100%;
        font-size: 1.4rem;
        line-height: 31px;
    }
    section.hero-text h2{
        font-size: 1rem;
        line-height: 20px;
        padding-top: 22px;
        width: 100%;
    }
    section.slider, section.slider .images{
        width: 100%;
        height: 100vh;
        display: none;
    }
    section.slider .text-blocks{
        height: 100vh;
    }
    section.slider .text-blocks .text-block{
        width: 50%;
    }
    section.slider .text-blocks .text-block:nth-child(2){
        width: 40%;
    }
    section.slider .text-blocks .text-block p{
        font-size: 0.9rem;
    }

    section.gallery-block .heading-block, section.news-block, section.projects-block, section.services-block .heading-block{
        padding: 0 20px 20px 20px;
    }

    section.services-block .heading-block{
        flex-direction: column;
    }
    section.services-block .heading-block .heading p{
        font-size: 1.4rem;
        width: 100%;
    }
    section.services-block .heading-block .heading, section.services-block .heading-block .button-group{
        width: 100%;
    }
    section.services-block .heading-block .button-group{
        top: 10px;
        justify-content: center;
        align-items: center;
    }
    section.services-block .heading-block .button-group a.btn-light-blue{
        margin-right: unset;
    }

    section.services-block .heading-block .button-group a.btn-light-blue, section.services-block .heading-block .button-group  a.btn-gray{
        min-width: 150px;
        padding: 4px 10px 7px 10px;
        top: 0;
    }

    section.projects-block .left p, section.news-block .heading-block .heading p, section.gallery-block .heading-block .heading p{
        width: 100%;
        font-size: 1.4rem;
    }
    section.projects-block .heading-block{
        flex-direction: column;
    }
    section.projects-block .left p{
        margin-top: 40px;
    }
    section.projects-block .right p{
        line-height: 19px;
        margin-top: 10px;
        width: 100%;
    }
    section.projects-block .owl-nav{
        top: -70px;
    }
    section.projects-block .images{
        margin-top: 80px;
    }
    section.projects-block .images .image{
        height: 300px;
    }
    section.projects-block .images .image .content .title{
        line-height: 2.4rem;
    }
    section.projects-block .images .image .content a{
        padding: 20px;
    }
    section.news-block .heading-block{
        flex-direction: column;
    }
    section.news-block .heading-block .heading{
        width: 100%;
    }
    section.news-block .news-list{
        margin-top: 0;
    }
    section.news-block .news-list .news{
        width: 100%;
        flex-direction: column;
    }
    section.news-block .news-list .news img{
        width: 100%;
    }
    section.news-block .news-list .news .content{
        padding: 20px 0 20px 0;
        width: 100%;
    }
    section.news-block .news-list .news .content h3{
        font-size: 1.4rem;
        margin-bottom: 40px;
    }
    section.news-block .news-list .owl-nav{
        width: 110%;
    }
    a.btn-black{
        font-size: 0.9rem;
        padding: 4px 14px 4px 14px;
        margin-left: unset;
        top: unset;
    }
    a.btn-light-blue{
        padding: 4px 8px 4px 8px;
        font-size: 0.9rem;
        margin-left: unset;
    }
    section.gallery-block{
        padding-bottom: 20px;
    }
    section.gallery-block .heading-block{
        flex-direction: column;
    }
    section.gallery-block .heading-block .heading{
        width: 100%;
    }
    section.gallery-block .list-block .left, section.gallery-block .list-block .right{
        height: 65%;
    }
    section.gallery-block .list-block .owl-carousel .owl-nav{
        width: 88%;
    }
    section.gallery-block .list-block .gallery .content{
        width: 100%;
        margin: 30px auto 50px;
    }
    section.gallery-block .list-block .gallery .content h4{
        font-size: 1.3rem;
    }
    footer nav ul{
        flex-direction: row;
    }
    footer nav ul.footer-menu{
        margin: 20px 0 20px 0;
        gap: 10px;
        flex-direction: column;
    }
    footer address{
        text-wrap: balance;
    }
    footer .copyright{
        text-align: center;
    }
    footer .logo{
        width: 70px;
    }
}
/*320px Mobile*/
@media only screen and (min-width : 321px) and (max-width : 425px) {
    header {
        padding: 20px;
    }
    header nav{
        align-items: flex-end;
    }
    section.hero-text {
        padding: 0 20px 0 20px;
        flex-direction: column;
    }
    section.hero-text .btn-light-blue{
        padding: 8px 9px 8px 9px;
    }
    section.hero-text h1{
        width: 100%;
        font-size: 1.4rem;
        line-height: 31px;
    }
    section.hero-text h2{
        font-size: 1rem;
        line-height: 20px;
        padding-top: 22px;
        width: 100%;
    }
    section.slider, section.slider .images{
        width: 100%;
        height: 100vh;
        display: none;
    }
    section.slider .text-blocks{
        height: 100vh;
    }
    section.slider .text-blocks .text-block{
        width: 50%;
    }
    section.slider .text-blocks .text-block:nth-child(2){
        width: 40%;
    }
    section.slider .text-blocks .text-block p{
        font-size: 0.9rem;
    }
    section.services-block .heading-block{
        flex-direction: column;
    }
    section.services-block .heading-block .heading p{
        font-size: 1.4rem;
        width: 100%;
    }
    section.services-block .heading-block .heading, section.services-block .heading-block .button-group{
        width: 100%;
    }
    section.services-block .heading-block .button-group{
        top: 10px;
        justify-content: center;
    }
    section.projects-block .left p, section.news-block .heading-block .heading p, section.gallery-block .heading-block .heading p{
        width: 100%;
        font-size: 1.4rem;
    }
    section.projects-block .heading-block{
        flex-direction: column;
    }
    section.projects-block .right p{
        line-height: 19px;
        margin-top: 10px;
        width: 100%;
    }
    section.projects-block .owl-nav{
        top: -70px;
    }
    section.projects-block .images{
        margin-top: 80px;
    }
    section.projects-block .images .image{
        height: 300px;
    }
    section.projects-block .images .image .content .title{
        line-height: 2.4rem;
    }
    section.projects-block .images .image .content a{
        padding: 20px;
    }
    section.news-block .heading-block{
        flex-direction: column;
    }
    section.news-block .heading-block .heading{
        width: 100%;
    }
    section.news-block .news-list{
        margin-top: 0;
    }
    section.news-block .news-list .news{
        width: 100%;
        flex-direction: column;
    }
    section.news-block .news-list .news img{
        width: 100%;
    }
    section.news-block .news-list .news .content{
        padding: 20px 0 20px 20px;
        width: 100%;
    }
    section.news-block .news-list .news .content h3{
        font-size: 1.4rem;
    }
    section.news-block .news-list .owl-nav{
        width: 120%;
    }
    a.btn-black{
        font-size: 0.9rem;
        padding: 4px 14px 4px 14px;
        margin-left: unset;
        top: unset;
    }
    a.btn-light-blue{
        padding: 4px 8px 4px 8px;
        font-size: 0.9rem;
        margin-left: unset;
    }
    section.gallery-block{
        padding-bottom: 20px;
    }
    section.gallery-block .heading-block{
        flex-direction: column;
    }
    section.gallery-block .heading-block .heading{
        width: 100%;
    }
    section.gallery-block .list-block .left, section.gallery-block .list-block .right{
        height: 65%;
    }
    section.gallery-block .list-block .owl-carousel .owl-nav{
        width: 88%;
    }
    section.gallery-block .list-block .gallery .content{
        width: 100%;
        margin: 30px auto 50px;
    }
    section.gallery-block .list-block .gallery .content h4{
        font-size: 1.3rem;
    }
    footer nav ul{
        flex-direction: row;
    }
    footer nav ul.footer-menu{
        margin: 10px 0 10px 0;
        gap: 10px;
        flex-direction: column;
    }
}
/*425px Tablet*/
@media only screen and (min-width : 425px) and (max-width : 767px) {
    header {
        padding: 40px;
    }
    header nav{
        align-items: flex-end;
    }
    section.hero-text {
        padding: 0 40px 0 40px;
        flex-direction: column;
    }
    section.hero-text h1{
        width: 100%;
        font-size: 28px;
        line-height: 41px;
    }
    section.hero-text h2{
        font-size: 13px;
        line-height: 16px;
        padding-top: 22px;
        width: 100%;
    }
    section.slider, section.slider .images{
        width: 100%;
        height: 100vh;
    }
    section.slider .text-blocks{
        height: 100vh;
    }
    section.slider .text-blocks .text-block{
        width: 50%;
    }
    section.slider .text-blocks .text-block:nth-child(2){
        width: 40%;
    }
    section.slider .text-blocks .text-block p{
        font-size: 0.9rem;
    }
    section.services-block .heading-block{
        flex-direction: column;
    }
    section.services-block .heading-block .heading p{
        font-size: 1.8rem;
    }
    section.services-block .heading-block .heading, section.services-block .heading-block .button-group{
        width: 100%;
    }
    section.services-block .heading-block .button-group{
        top: 10px;
    }
    section.projects-block .left p, section.news-block .heading-block .heading p, section.gallery-block .heading-block .heading p{
        width: 100%;
        font-size: 1.8rem;
    }
    section.projects-block .right p{
        line-height: 19px;
        margin-top: 10px;
    }
    section.projects-block .images{
        margin-top: 50px;
    }
    section.news-block .news-list .owl-nav{
        width: 100%;
    }
    section.news-block .news-list .news .content h3{
        font-size: 1.4rem;
    }
    a.btn-black{
        font-size: 0.9rem;
        padding: 4px 14px 4px 14px;
        margin-left: unset;
        top: unset;
    }
    a.btn-light-blue{
        padding: 4px 8px 4px 8px;
        font-size: 0.9rem;
        margin-left: unset;
    }
    section.gallery-block{
        padding-bottom: 20px;
    }
    section.gallery-block .list-block .left, section.gallery-block .list-block .right{
        height: 65%;
    }
    section.gallery-block .list-block .owl-carousel .owl-nav{
        width: 88%;
    }
    section.gallery-block .list-block .gallery .content{
        width: 100%;
        margin: 30px auto 50px;
    }
    footer nav ul.footer-menu{
        margin: 10px 0 10px 0;
    }
}
/*768px Laptop*/
@media only screen and (min-width : 768px) and (max-width : 1023px) {
    header nav{
        align-items: flex-end;
    }
    section.hero-text h1{
        font-size: 28px;
        line-height: 41px;
    }
    section.hero-text h2{
        font-size: 13px;
        line-height: 16px;
        padding-top: 22px;
    }
    section.slider, section.slider .images{
        height: 100vh;
    }
    section.slider .text-blocks{
        height: 100vh;
    }
    section.slider .text-blocks .text-block{
        width: 50%;
    }
    section.slider .text-blocks .text-block:nth-child(2){
        width: 40%;
    }
    section.slider .text-blocks .text-block p{
        font-size: 0.9rem;
    }
    section.services-block .heading-block{
        flex-direction: column;
    }
    section.services-block .heading-block .heading p{
        font-size: 1.8rem;
    }
    section.services-block .heading-block .heading, section.services-block .heading-block .button-group{
        width: 100%;
    }
    section.services-block .heading-block .button-group{
        top: 10px;
    }
    section.projects-block .left p, section.news-block .heading-block .heading p, section.gallery-block .heading-block .heading p{
        width: 100%;
        font-size: 1.8rem;
    }
    section.projects-block .right p{
        line-height: 19px;
        margin-top: 10px;
    }
    section.projects-block .images{
        margin-top: 50px;
    }
    section.news-block .news-list .owl-nav{
        width: 100%;
    }
    section.news-block .news-list .news .content h3{
        font-size: 1.4rem;
    }
    a.btn-black{
        font-size: 0.9rem;
        padding: 4px 14px 4px 14px;
        margin-left: unset;
        top: unset;
    }
    a.btn-light-blue{
        padding: 4px 8px 4px 8px;
        font-size: 0.9rem;
        margin-left: unset;
    }
    section.gallery-block{
        padding-bottom: 20px;
    }
    section.gallery-block .list-block .left, section.gallery-block .list-block .right{
        height: 65%;
    }
    section.gallery-block .list-block .owl-carousel .owl-nav{
        width: 88%;
    }
    section.gallery-block .list-block .gallery .content{
        width: 100%;
        margin: 30px auto 50px;
    }
    footer nav ul.footer-menu{
        margin: 10px 0 10px 0;
    }
}
/*1024px Laptop L*/
@media only screen and (min-width : 1024px) and (max-width : 1439px) {
    section.hero-text h1{
        line-height: 42px;
    }
    section.hero-text h2 {
        line-height: 20px;
        padding-top: 20px;
    }
    section.slider, section.slider .images, section.slider .text-blocks{
        height: 100vh;
    }
    section.services-block .heading-block .heading p, section.projects-block .left p,
    section.news-block .heading-block .heading p, section.gallery-block .heading-block .heading p,
    section.news-block .news-list .news .content h3, section.projects-block .images .image .content .title{
        font-size: 1.6rem;
    }
    section.services-block .heading-block{
        padding-bottom: 20px;
    }
    section.projects-block .left p{
        width: 100%;
    }
    section.projects-block .right p{
        margin-top: 0;
    }
    section.projects-block .images{
        margin-top: 70px;
    }
    section.projects-block .images .image .content a{
        padding: 20px;
    }
    section.news-block .news-list .news img{
        width: 50%;
    }
}
/*1440px 4K*/
@media only screen and (min-width : 1440px) and (max-width : 2560px) {
}
/*Desktop - Mobile*/

@media only screen and (min-width : 0px) and (max-width : 768px) {
    #auto-popup-content iframe{
        width: 100%;
    }
    .primary-menu label{
        display: flex;
        z-index: 99;
    }
    .primary-menu label input[type="checkbox"]:checked ~ span{
        background-color: var(--theme-bg-color-second);
    }
    header nav ul{
        padding: 0;
        display: none;
    }
    .mobile-menu ul li:last-child, .mobile-menu ul.main-menu li:last-child{
        margin-top: unset;
    }
    .mobile-menu ul li a{
        font-size: 18px;
        text-decoration: underline;
    }
    .mobile-menu ul{
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: center;
        gap: 20px;
    }
    .mobile-menu ul.main-menu{
        display: flex;
        flex-direction: column;
        margin-top: 0;
        text-align: left;
        width: fit-content;
    }
    .mobile-menu ul.main-menu li{
        margin-bottom: 2px;
    }
    .arrow-circle-right:after{
        background-image: none;
    }
    .mobile-menu ul li:last-child a{
        text-decoration: underline;
    }
    .mobile-menu ul.main-menu li a, .mobile-menu ul.main-menu li:last-child a{
        font-size: 30px;
        text-decoration: underline;
    }
    .mobile-menu .main-menu > li:has(.dropdown-block):after {
        content: "\2192";
        margin-left: 8px;
        margin-top: 3px;
        font-weight: bold;
        position: absolute;
        font-size: 1.6rem;
        color: var(--theme-bg-color-second);
    }
    .mobile-menu .main-menu li a > .primary-menu label{
        display: none;
    }
    header .primary-menu .mobile-menu .main-menu li:hover > .dropdown-block{
        display: none;
    }
    header .primary-menu .dropdown-block{
        width: 70%;
        margin-left: auto;
        margin-right: auto;
        z-index: 99;
        position: relative;
        top: -155px;
        display: none;
    }
    header .primary-menu .dropdown-block .dropdown{
        position: relative;
        transform: unset;
    }

    .mobile-menu .mobile-menu-sub-content{
        display: none;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 101;
        background-color: rgba(6, 35, 60, 0.9);
        backdrop-filter: blur(5px);
        padding: 40px;
        overflow: scroll;
        flex-direction: column;
        align-items: center;
    }
    .mobile-menu .mobile-menu-sub-content .sub-menu-title{
        font-size: 2.4rem;
        font-weight: bold;
        text-align: left;
        padding-left: 70px;
        color: var(--theme-bg-color-second);
        margin-bottom: 40px;
        cursor: pointer;
    }
    .mobile-menu .mobile-menu-sub-content .sub-menu-title:before{
        content: "";
        position: absolute;
        left: 0;
        top: -10px;
        width: 50px;
        height: 50px;
        background-color: var(--theme-bg-color-second);
        -webkit-mask: url("../img/arrow-circle-right.svg") no-repeat 50% 50%;
        mask: url("../img/arrow-circle-right.svg") no-repeat 50% 50%;
        transform: rotate(180deg);
    }
    .mobile-menu .mobile-menu-sub-content ul{
        display: flex;
        flex-direction: column;
        gap: 5px;
        padding: 0;
        margin-top: 10px;
        margin-left: 0;
        width: 100%;
    }
    .mobile-menu .mobile-menu-sub-content ul li{
        text-align: left;
        font-weight: normal;
        margin-bottom: 10px;
        margin-top: 10px;
    }
    .mobile-menu .mobile-menu-sub-content ul li a{
        text-decoration: none;
        font-size: 1.4rem;
        font-weight: normal;
        color: var(--theme-bg-color-second);
    }
    .mobile-menu .mobile-menu-sub-content ul li a.fw-bold{
        font-weight: bold;
        font-size: 1.8rem;
    }

}