@media screen and (min-width: 1200px) {

    .container {
        max-width: 1200px;
    }

    .max-width-1572px {
        max-width: 1572px;
        margin-left: auto;
        margin-right: auto;
    }

    /** Header **/
    .site-navigation__menu {
        padding: 13px 0;
    }

    .site-navigation .site-branding {
        width: 187px;
        display: flex;
        align-items: center;
        position: relative;
    }

    .site-navigation__menu,
    .main-header .site-navigation .menu>ul {
        display: flex;
        align-items: center;
    }

    .main-header .site-navigation .menu {
        flex: 1;
        display: flex;
        align-items: center;
        justify-content: end;
    }

    .main-header .site-navigation .menu>ul>li:hover>ul {
        display: block;
        visibility: visible;
        opacity: 1;
        transform: translate(0, 0);
    }

    .main-header .site-navigation .site-navigation__menu .menu>ul>li>a {
        padding: 50px 22px 45px 0;
        margin-right: 40px;
    }

    .site-navigation .site-navigation__menu .menu>ul>li:last-child>a {
        margin-right: 0;
    }

    .main-header .site-navigation .menu>ul>li.active.has-submenu>a:after,
    .main-header .site-navigation .menu>ul>li.hover.has-submenu>a:after,
    .main-header .site-navigation .menu>ul>li:hover.has-submenu>a:after {
        transform: rotate(-180deg);
    }

    .main-header .site-navigation .menu>ul>li>ul {
        text-align: left;
        position: absolute;
        visibility: hidden;
        display: block;
        opacity: 0;
        -webkit-transition: all 300ms linear 0ms;
        -khtml-transition: all 300ms linear 0ms;
        -moz-transition: all 300ms linear 0ms;
        -ms-transition: all 300ms linear 0ms;
        -o-transition: all 300ms linear 0ms;
        transition: all 300ms linear 0ms;
        background: #0d0d0d;
        transform: translate(0, 10px);
        left: 0;
        top: auto;
        z-index: 99;
        min-width: 391px;
        padding: 36px 20px 32px 25px;
        margin-top: -17px;
    }

    .main-header .site-navigation .menu ul ul li {
        white-space: nowrap;
    }


    /** Content **/

}

@media screen and (min-width: 1400px) {

    /** Header **/
    .main-header .site-navigation .site-navigation__menu .menu>ul>li>a {
        margin-right: 70px;
    }

    /** Content **/
    .project-box-info {
        left: 60px;
        right: 60px;
    }

}

@media screen and (min-width: 1600px) {

    /** Header **/

    /** Content **/
}

@media screen and (min-width: 1920px) {

    /**Header**/
    .site-navigation__inner {
        padding: 0 75px;
    }

    /** Content **/
}

@media screen and (min-width: 1200px) and (max-height: 800px) {}

@media screen and (max-width: 1199px) {

    /** Header **/
    .main-menu-toggle {
        display: block;
    }

    .sticked-menu {
        display: none !important;
    }

    .main-menu-toggle {
        position: absolute;
        right: 0;
        top: 58px;
        height: 20px;
        width: 31px;
        float: right;
    }

    .main-menu-toggle label {
        cursor: pointer;
        position: static;
        z-index: 99;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        margin: 0;
    }

    .main-menu-toggle .toggle-block {
        position: absolute;
        height: 3px;
        width: 100%;
        padding: 0;
        background-color: #fff;
    }

    .site-navigation.fixed-header .toggle-block {
        background-color: #fff;
    }

    .main-menu-toggle .toggle-blocks-1 {
        position: relative;
        float: left;
    }

    .main-menu-toggle .toggle-blocks-2 {
        position: relative;
        float: left;
        margin-top: 6px;
    }

    .main-menu-toggle .toggle-blocks-3 {
        position: relative;
        float: left;
        margin-top: 6px;
    }

    .main-menu-toggle input[type=checkbox]:checked~.main-menu-toggle-block>.toggle-blocks-2 {
        opacity: 0;
    }

    .main-menu-toggle input[type=checkbox]:checked~.main-menu-toggle-block>.toggle-blocks-1 {
        transform: rotate(135deg);
        -webkit-transform: rotate(135deg);
        margin-top: 10px;
    }

    .main-menu-toggle input[type=checkbox]:checked~.main-menu-toggle-block>.toggle-blocks-3 {
        transform: rotate(-135deg);
        -webkit-transform: rotate(-135deg);
        margin-top: -12px;
    }

    .main-header .site-navigation .menu,
    .main-header .site-navigation .menu>ul>li>ul {
        display: none;
    }

    .main-header .site-navigation .menu.active,
    .main-header .site-navigation .menu>ul>li>ul.active {
        max-height: 55em;
        display: block;
    }

    .main-header .site-navigation .menu>ul>li>a {
        padding: 9px 0;
        justify-content: space-between;
        display: flex;
        align-items: center;
        text-align: left;
        font-size: 18px;
    }

    .main-header .site-navigation .menu>ul>li>a br {
        display: none;
    }

    .main-header .site-navigation .menu ul ul>li a {
        padding: 4px 15px 4px 20px;
    }

    .main-header .site-navigation .menu ul ul>li.active>a,
    .main-header .site-navigation .menu ul ul>li:hover>a,
    .main-header .site-navigation .menu ul ul>li.hover>a,
    .main-header .site-navigation .menu>ul>li.active>a,
    .main-header .site-navigation .menu>ul>li:hover>a,
    .main-header .site-navigation .menu>ul>li.hover>a {
        background: none;
    }

    .main-header .site-navigation .menu ul>ul,
    .main-header .site-navigation .menu ul>ul>ul {
        display: inherit;
        position: relative;
        left: auto;
        top: auto;
        border: none;
    }

    .main-header .site-navigation .menu>ul {
        position: absolute;
        left: 0;
        max-height: calc(100vh - 80px);
        padding: 10px 20px;
        z-index: 100;
        width: 100%;
        z-index: 20000;
        top: auto;
        background: #0d0d0d;
        overflow-y: scroll;
        border-top: 0;
        margin-top: 30px;
    }

    .main-header .site-navigation .menu li,
    .main-header .site-navigation .menu>ul>li {
        display: block;
        overflow: hidden;
    }

    .main-header .site-navigation .menu,
    .main-header .site-navigation .menu>ul>ul {
        max-height: 0;
        background-color: #fff;
    }

    .site-navigation.fixed-header {
        width: 100%;
        top: 0;
        left: 0;
        background: #000;
        position: fixed;
        -webkit-box-shadow: 0 0 40px 0 rgb(0 0 0 / 8%);
        box-shadow: 0 0 40px 0 rgb(0 0 0 / 8%);
    }

    #site-header-menu .container {
        max-width: 100%;
    }

    .site-branding {
        max-width: 187px;
        padding: 13px 0;
    }

    .site-navigation__menu {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .language-selector {
        margin-right: 55px;
    }

    .main-header .site-navigation .mega-menu {
        padding-left: 17px;
    }


    /** Content **/
    .actus-item .actus-item__txt {
        width: calc(100% - 70px);
    }

    .footer-about {
        padding-right: 70px;
    }

    .service-item .service-item__txt {
        padding-left: 45px;
        padding-right: 0;
    }

    .service-item:nth-child(2n) .service-item__txt {
        padding-left: 0;
        padding-right: 45px;
    }

    .projects-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .language-flags {
        position: absolute;
        top: 15px;
        right: 0;
    }
}

@media screen and (max-width: 991px) {

    /** Header **/

    /** Content **/
    .expertises__content {
        height: 100%;
    }

    .process-image,
    .expertises-items:after,
    .expertises-items:before,
    .expertises-bg {
        display: none;
    }

    .expertise-item .bg {
        width: 100%;
    }

    .expertise-item:nth-of-type(3) .bg,
    .expertise-item:nth-of-type(2) .bg {
        left: 0;
    }

    .expertise-item {
        height: 480px;
    }

    .expertise-item.opacity .bg {
        opacity: 1;
    }

    .expertise-item:not(:last-child):after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: rgba(255, 255, 255, 0.1);
        z-index: 1;
        -webkit-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }

    .benefit-item {
        flex: 0 0 50%;
    }

    ul.steps li:before {
        left: -15px;
    }

    .project-item .project-image {
        height: 480px;
    }

    .actus-item .actus-item__txt {
        width: calc(100% - 60px);
    }

    .project-item .project-txt {
        padding: 32px 50px;
    }

    .footer-services ul {
        margin: 0 auto 0 0;
    }

    .copyright .img-arobiz {
        margin-top: 0;
        margin-left: 0;
    }

    .footer-about {
        padding-right: 0;
    }

    .layer-title span {
        font-size: 130px;
    }

    .title-section .layer-title span {
        top: 25px;
    }

    .service-item .service-item__txt {
        padding-left: 15px;
        padding-right: 0;
    }

    .service-item:nth-child(2n) .service-item__txt {
        padding-left: 0;
        padding-right: 15px;
    }

    .service-item .service-item__title {
        font-size: 30px;
    }

    .service-item .service-item__title:before {
        width: 100px;
        left: -120px;
    }

    .service-item:nth-child(2n) .service-item__title:before {
        left: unset;
        right: -120px;
    }

    .project-details__infos.margin-l-neg15px {
        margin-left: 0;
    }

    .grid-gallery {
        grid-gap: 20px;
    }
}

@media screen and (max-width: 767px) {

    /** Header **/
    .site-branding {
        max-width: 150px;
        padding: 13px 0;
    }

    .main-menu-toggle {
        top: 50px;
    }


    /** Content **/
    .btn-1,
    button,
    input[type="submit"],
    input[type="button"] {
        font-size: 18px;
        height: 75px;
    }

    .title-section .page-title,
    .banner-title {
        font-size: 40px;
    }

    .banner-desc {
        font-size: 20px;
    }

    .about-us__content .bloc-text.column-count-2.column-gap-30px {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
        -moz-column-gap: 0;
        -webkit-column-gap: 0;
        column-gap: 0;
    }

    .layer-title span {
        font-size: 120px;
    }

    .benefit-item {
        flex: 0 0 100%;
    }

    .footer-logo img {
        width: 250px;
        height: auto;
    }

    .service-item__image {
        height: 320px;
    }

    .service-item .service-item__title:before {
        display: none !important;
    }

    .service-item:nth-child(2n) .service-item__txt,
    .service-item .service-item__txt {
        padding-left: 0;
        padding-right: 0;
    }

    .service-item .service-item__txt {
        min-height: auto;
        padding-top: 30px;
    }

    .service-item .service-item__more {
        margin-top: 35px;
    }

    .service-item:nth-child(2n) .row {
        flex-direction: column-reverse;
    }

    .image-section .bloc-image {
        height: 300px !important;
    }

    .projects-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .grid-gallery {
        grid-gap: 10px;
    }
}

@media screen and (max-width: 576px) {

    /** Header**/
    .site-branding {
        max-width: 120px;
        padding: 13px 0;
    }

    .main-menu-toggle {
        top: 50px;
    }

    /** Content **/
    .footer-contact ul li {
        font-size: 24px;
    }

    .social-link {
        width: 53px;
        height: 53px;
        padding: 14px;
    }

    .newsletter-form .form-group input[type="email"] {
        width: 300px;
    }

    .sect-title h1,
    .sect-title .h1,
    .page-title,
    .sect-title h2,
    .sect-title .h2,
    .bloc-title,
    .bloc-text h2,
    .bloc-text .h2 {
        font-size: 32px;
    }

    .actus-item .actus-item__txt {
        width: calc(100% - 30px);
    }

    .expertise-item__title {
        font-size: 30px;
    }

    .btn-1,
    button,
    input[type="submit"],
    input[type="button"] {
        font-size: 16px;
        height: 68px;
        padding-left: 30px;
        padding-right: 30px;
    }

    .title-section .page-title,
    .banner-title {
        font-size: 34px;
    }

    .home .banner-content {
        padding-bottom: 120px;
    }

    .banner-inner {
        height: 870px;
    }

    .banner-desc {
        margin-bottom: 55px;
    }

    .layer-title span {
        font-size: 70px;
    }

    .process-section .layer-title span {
        margin-left: 0;
    }

    ul.steps li .step-number {
        font-size: 15px;
        width: 80px;
        margin-right: 20px;
    }

    .project-item .project-image,
    .project-item .project-image figure {
        height: 420px;
    }

    .project-item .project-title {
        font-size: 22px;
    }

    .project-item .project-txt {
        padding-left: 30px;
        padding-right: 30px;
    }

    .project-item .project-info {
        font-size: 16px;
    }

    .footer-logo img {
        width: 200px;
        height: auto;
    }

    .title-section .page-title {
        font-size: 40px;
    }

    .counter-box .counter-number {
        font-size: 65px;
    }

    .service-item .service-item__title {
        font-size: 28px;
    }

    .projects-grid {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media screen and (max-width: 991px) {
    .commune-projects__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .commune-project-card__image {
        height: 130px;
    }

    .footer-keywords__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .footer-keywords__inner {
        padding: 36px 0;
    }

    .footer-keywords .footer-title {
        font-size: 30px;
    }
}

@media screen and (max-width: 575px) {
    .commune-extra-section {
        padding-bottom: 60px;
    }

    .commune-extra__inner {
        padding: 32px 0;
    }

    .commune-specificity .footer-title,
    .commune-projects .footer-title {
        font-size: 24px;
    }

    .commune-projects__grid {
        grid-template-columns: 1fr;
    }

    .commune-project-card__image {
        height: 170px;
    }

    .footer-keywords {
        padding-top: 10px;
    }

    .footer-keywords .footer-title {
        font-size: 26px;
    }

    .footer-keywords__grid {
        grid-template-columns: 1fr;
    }
}
