@media only screen and (max-width : 1500px) {
  /*
  nav {
    background-color: navajowhite !important;
  }
  */
  nav .menu ul.main_menu_list li {
    padding: 0 20px;
  }

}

@media only screen and (max-width : 1400px) {
  /*
  nav {
    background-color: grey !important;
  }
  */
  nav .logo {
    padding: 0 20px 0 40px;
  }

  .desktop {
    display: none;
  }

  .white_space_no_wrap {
    white-space: normal;
  }

  .content {
    width: calc(100% - 100px);
  }

  nav .menu ul.distinct_menu_list > li > a,
  nav .menu ul.distinct_menu_list > li > a:visited {
    font-size: 14px;
  }

  #map_box #map_wrapper .content .map .wrapper {
    width: 100%;
    right: auto;
  }

  #news_box .header {
    display: block;
  }

  #news_box .header .btn_group {
    display: none;
  }

  #news_box .dot_pager {
    display: block !important;
  }

  #modal_menu .top .search {
    max-width: calc(100% - 400px);
    position: absolute;
    left: 300px;
    z-index: 100;
  }

}


@media only screen and (max-width : 1200px) {
  /*
  nav {
    background-color: brown !important;
  }
  */
  nav .menu {
    display: none;
  }

  nav .logo {
    padding: 0 50px;
  }

  .content_narrow {
    max-width: none;
    padding: 0;
  }

  .row > .col,
  .row.c3 > .col,
  .row.c1x2 > .col,
  .row.c1x2 > .col:last-child {
    width: 100%;
  }

  .row .col + .col {
    margin-top: 50px;
  }

  .row .col.pt50 {
    padding-top: 0;
  }

  .row.reverse {
    flex-direction: column-reverse;
  }

  .row.reverse .col + .col {
    margin: 0 0 50px 0;
  }

  .txt_photo .text,
  .txt_photo.half .text {
    width: 100%;
  }

  .txt_photo .photo,
  .txt_photo.half .photo {
    width: 100%;
    margin-top: 50px;
  }

  .txt_photo .photo .wrapper {
    width: 100%;
  }

  .txt_photo.reverse .photo .wrapper {
    right: auto;
  }

  .txt_photo.reverse .text h2.title {
    text-align: left;
    right: auto;
  }

  .insertion_box,
  .insertion_box.t50,
  .insertion_box.t120 {
    padding-top: 80px;
    margin-top: 80px;
  }

  #top {
    padding-top: 50px;
  }

  #realisations_box .photo {
    width: 100%;
  }

  #realisations_box .text {
    padding: 50px;
    width: calc(100% - 100px);
  }

  #news_box {
    padding-bottom: 110px;
  }

  #career_box {
    margin-top: 80px;
  }

  #career_box .content .text {
    width: 100%;
  }

  #career_box .content .photo {
    width: 100%;
    margin-top: 50px;
    padding: 0;
  }

  #career_box .content .photo .wrapper {
    width: 100%;
    max-width: none;
  }

  #main_content.career.space_bottom {
    padding-bottom: 100px;
  }

  .career_offer_box {
    margin-top: 90px;
  }

  .gallery_box .content ul.btn_group {
    display: none;
  }

  .gallery_box .content .dot_pager {
    display: block !important;
  }

  #news_see_also_box .content ul.btn_group {
    display: none;
  }

  .contact ul.form_wrapper .row .col + .col {
    margin-top: 0;
  }

  #map_box #map_wrapper .content {
    flex-direction: column-reverse;
  }

  #map_box #map_wrapper .content .map,
  #map_box #map_wrapper .content .text {
    width: 100%;
  }

  #map_box #map_wrapper .content .map {
    margin-top: 50px;
  }

  #stay_with_us_box .content {
    display: block;
  }

  #stay_with_us_box .content #newsletter_box {
    width: 100%;
    padding-right: 0;
  }

  #stay_with_us_box .content #follow_us_box {
    width: 100%;
    padding: 0;
  }

  #stay_with_us_box .content #follow_us_box .wrapper {
    position: relative;
  }

  #stay_with_us_box .content #follow_us_box .wrapper:after {
    background-color: #143d8d;
    content: '';
    width: 100vw;
    height: 100%;
    display: block;
    position: absolute;
    right: 100%;
    top: 0;
    z-index: 100;
  }

  #stay_with_us_box .content #follow_us_box .wrapper .wrapper2 {
    max-width: none;
  }
}


@media only screen and (max-width : 1000px) {
  /*
  nav {
    background-color: green !important;
  }
  */
  h1.title,
  h2.title {
    font-size: 40px;
  }

  nav .logo {
    padding: 0 10px;
  }

  .content {
    width: calc(100% - 20px);
    padding: 0 10px;
  }

  .txt_photo .photo .wrapper .video_box {
    position: relative;
    margin-top: 40px;
    max-width: none;
  }

  ul.btn_group {
    display: block;
  }

  ul.btn_group li + li {
    margin: 20px 0 0 0;
  }

  #visual .content p {
    font-size: 50px;
  }

  #main_content {
    padding-top: 70px;
  }

  #realisations_box .text {
    width: calc(100% - 20px);
    padding: 50px 10px;
  }

  .gallery_box {
    padding-top: 60px;
  }

  .gallery_box .content .carousel {
    width: 100%;
  }

  .gallery_box .content ul.gallery_list li {
    margin: 0 5px;
  }

  .career_offer_box .carousel ul li {
    margin: 0 10px;
  }

  .career_offer_box .controls ul.btn_group {
    display: flex;
  }

  .career_offer_box .controls ul.btn_group li + li {
    margin-top: 0;
  }

  #news_box .carousel ul.news_list li {
    margin: 0 10px;
  }

  #news ul.news_list:after {
    max-width: calc(33.33333333333333% - 10px);
  }

  #news ul.news_list li {
    flex-basis: calc(33.33333333333333% - 10px);
  }

  #news .pagination ul.btn_group {
    display: flex;
  }

  #news .pagination ul.btn_group li + li {
    margin: 0 0 0 20px;
  }

  #news_see_also_box {
    padding: 60px 0;
  }

  #news_see_also_box .carousel ul.news_list li {
    margin: 30px 10px;
  }

  #realisations ul.realisations_list {
    margin-top: -15px;
  }

  #realisations ul.realisations_list:after {
    max-width: calc(33.33333333333333% - 10px);
  }

  #realisations ul.realisations_list li {
    flex-basis: calc(33.33333333333333% - 10px);
    margin-top: 15px;
  }

  #realisations .pagination ul.btn_group {
    display: flex;
  }

  #realisations .pagination ul.btn_group li + li {
    margin: 0 0 0 20px;
  }

  #ue_box .content img {
    max-width: 60%;
  }

  #modal_menu .top {
    width: calc(100% - 20px);
    padding: 0 10px;
  }

  #modal_menu .top .logo {
    left: 10px;
  }

  #modal_menu .top .search {
    max-width: calc(100% - 360px);
    left: 260px;
  }

  #modal_menu .menu {
    width: calc(100% - 20px);
    padding: 25px 10px;
  }

  #modal_menu .menu .wrapper {
    max-height: calc(100vh - 50px - 105px);
  }

  #footer_menu .content {
    display: block;
  }

  #footer_menu .content .box {
    width: 100% !important;
  }

  #footer_menu .content .box + .box {
    margin-top: 10px;
  }

  #footer_menu .content .box ul.divided {
    columns: 1;
    column-gap: normal;
  }

  #footer_menu .content .box .hide {
    visibility: visible;
  }

  #footer_menu .content .box ul {
    display: none;
  }

  #footer_menu .content .box .dropdown_arrow {
    display: inline-block;
  }

}


@media only screen and (max-width : 800px) {
  /*
  nav {
    background-color: orange !important;
  }
  */
  h1.title,
  h2.title {
    font-size: 36px;
  }

  .de h1.title,
  .de h2.title {
    font-size: 26px;
  }

  .insertion_box {
    padding-bottom: 40px;
  }

  .insertion_box,
  .insertion_box.t50,
  .insertion_box.t120 {
    padding-top: 40px;
    margin-top: 50px;
  }

  .mt100 {
    margin-top: 50px;
  }

  .mt150 {
    margin-top: 70px;
  }

  nav {
    height: 80px;
  }

  nav .logo img {
    width: 180px;
  }

  nav .utility_menu ul li > a,
  nav .utility_menu ul li > a:visited {
    width: 80px;
    height: 80px;
  }

  nav .utility_menu ul li a.btn_menu span.top {
    top: 32px;
  }

  nav .utility_menu ul li a.btn_menu span.middle {
    top: 38px;
  }

  nav .utility_menu ul li a.btn_menu span.bottom {
    top: 44px;
  }

  #top {
    margin-top: 80px;
  }

  #visual .content {
    height: calc(100% - 125px);
    padding-top: 105px;
    justify-content: center;
  }

  #visual .content ul.social_media_simple_list {
    display: none;
  }

  #home #counters_box,
  #about_box,
  #home #icons_box,
  #realisations_box,
  #offer_box {
    margin-top: 80px;
  }

  #csr_box {
    margin-top: 60px;
  }

  #news_box .carousel:before,
  #news_box .carousel:after {
    display: none;
  }

  #news ul.news_list:after {
    max-width: calc(50% - 10px);
  }

  #news ul.news_list li {
    flex-basis: calc(50% - 10px);
  }

  #news,
  #news_details {
    margin-top: 80px;
  }

  #news_details {
    padding-bottom: 60px;
  }

  #realisations {
    margin-top: 80px;
    padding-bottom: 60px;
  }

  #career_details {
    margin-top: 80px;
    padding-bottom: 60px;
  }

  #career_details .dynamic_content {
    margin-top: 25px;
  }

  .career_offer_box {
    margin-top: 60px;
    padding-bottom: 60px;
  }

  #main_content {
    padding-top: 40px;
  }

  #main_content.space_bottom,
  #main_content.career.space_bottom {
    padding-bottom: 40px;
  }

  .gallery_box {
    padding: 50px 0 60px 0;
  }

  #news_see_also_box {
    padding: 50px 0 60px 0;
  }

  #ue_box .content img {
    max-width: 70%;
  }

  #modal_menu .top {
    height: 80px;
  }

  #modal_menu .top .logo {
    width: 180px;
  }

  #modal_menu .top .search {
    max-width: calc(100% - 300px);
    left: 210px;
  }

  #modal_menu .top a.btn_close,
  #modal_menu .top a.btn_close:visited {
    right: 35px;
  }

  #modal_menu .menu .wrapper {
    max-height: calc(100vh - 50px - 80px);
    display: block;
  }

  #modal_menu .menu .box {
    width: 100%;
  }

  #modal_menu .menu .box + .box {
    margin-top: 10px;
  }

  #modal_menu .menu .box ul.social_media_simple_list {
    margin-top: 40px;
  }

  #stay_with_us_box .content #newsletter_box {
    padding: 50px 0;
  }

  #stay_with_us_box .content #follow_us_box .wrapper .wrapper2 {
    padding: 50px 0;
  }

  #footer_menu {
    padding: 50px 0;
  }

  footer {
    padding: 20px 0;
  }
}


@media only screen and (max-width : 600px) {
  /*
  nav {
    background-color: red !important;
  }
  */
  h1.title,
  h2.title {
    letter-spacing: 0;
  }

  h1.title.space_bottom,
  h2.title.space_bottom {
    margin-bottom: 20px;
  }

  .bigger {
    font-size: 20px;
    line-height: 30px;
  }

  ul.social_media_list li a,
  ul.social_media_list li a:visited {
    width: 40px;
    height: 40px;
  }

  ul.social_media_list li + li {
    margin-left: 10px;
  }

  ul.download_list li {
    padding-left: 60px;
    padding-right: 20px;
  }

  ul.download_list li:after {
    left: 15px;
  }

  nav .utility_menu ul li a.btn_search,
  nav .utility_menu ul li a.btn_search:visited {
    display: none;
  }

  nav .logo img {
    width: 140px;
  }

  #home #counters_box,
  #about_box,
  #home #icons_box,
  #realisations_box,
  #offer_box {
    margin-top: 50px;
  }

  #news_box {
    padding: 60px 0;
  }

  #career_box {
    margin-top: 60px;
  }

  ul.news_list li .description {
    padding: 20px 15px 0 15px;
  }

  ul.news_list li .date {
    left: 15px;
  }

  #news ul.news_list:after {
    max-width: 100%;
  }

  #news ul.news_list li {
    flex-basis: 100%;
  }

  /*
  .contact ul.form_wrapper li.flex:not(.legend) {
    display: block;
  }

  .contact ul.form_wrapper li.flex div {
    width: 100%;
  }

  .contact ul.form_wrapper li.flex div + div {
    margin: 30px 0 0 0;
  }
  */

  .contact ul.form_wrapper li .row .col {
    width: 100%;
  }

  .contact ul.form_wrapper li .row.c3 .col {
    width: 100%;
  }

  .contact ul.form_wrapper li .row.c4 .col {
    width: 100%;
  }

  .contact ul.form_wrapper li .row .col + .col {
    margin: 30px 0 0 0;
  }

  .contact ul.form_wrapper li.right:last-child {
    text-align: center;
  }

  .contact ul.pager.mobile_full_width {
    display: block;
  }

  .contact ul.pager.mobile_full_width li + li {
    margin: 30px 0 0 0;
  }

  .contact ul.pager.mobile_full_width li .btn {
    display: block;
  }

  .valuation ul.construction_type_list {
    display: block;
  }

  .valuation ul.construction_type_list li {
    width: 80%;
    margin: 0 auto;
  }

  .valuation ul.construction_type_list li + li {
    margin: 40px auto 0 auto;
  }

  #stay_with_us_box .content #newsletter_box form ul li.flex:not(.legend) {
    display: block;
  }

  #stay_with_us_box .content #newsletter_box form ul li.input_wrapper input[type="text"] {
    width: calc(100% - 54px);
  }

  #stay_with_us_box .content #newsletter_box form ul li.input_wrapper .btn {
    width: calc(100% - 77px);
    margin: 20px 0 0 0;
  }

  ul.news_list li .thumb img {
    width: 100%;
  }

  #realisations ul.realisations_list:after {
    max-width: calc(50% - 10px);
  }

  #realisations ul.realisations_list li {
    flex-basis: calc(50% - 10px);
  }

  #ue_box .content img {
    max-width: 100%;
  }

  #modal_menu .top .logo {
    width: 140px;
  }

  #modal_menu .top .search {
    max-width: calc(100% - 20px);
    left: 10px;
    top: 80px;
  }

  #modal_menu .top a.btn_close,
  #modal_menu .top a.btn_close:visited {
    right: 15px;
  }

  #modal_menu .menu {
    padding-top: 60px;
  }

  #modal_menu .menu .wrapper {
    max-height: calc(100vh - 85px - 80px);
  }

  footer .content {
    display: block;
    text-align: center;
  }

  footer .content .created {
    margin-top: 10px;
  }
}