@media only screen and (max-width: 1499px) {
  .wpcf7-form {
    width: 60%;
  }

  .contatti {
    width: 20%;
    padding: 40px !important
  }
}

@media only screen and (max-width: 1199px) {
  input, textarea {
    -webkit-appearance: none;
    -webkit-border-radius: 0;
  }

  input[type=checkbox] {
    -webkit-appearance: checkbox;
  }

  a:hover {
    text-decoration: none;
  }

  #header {
    min-width: 280px;
    width: 100%;
    background: #fff;
    left: 0;
    top: 0;
    margin-top: 0;
  }

  .head {
    height: auto;
    margin-top: 80px;
  }

  .logo {
    margin-left: 15px;
  }

  .head-nofoto {
    height: 120px
  }

  #header .menu-bar-content {
    width: 100%
  }

  #header .menu {
    margin-right: 15px;
  }

  #header .menu>ul>li {
    margin: 0 0 0 18px;
    font-size: 10px;
  }

  div.main {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    min-width: 280px;
  }

  .page {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 15px;
  }

  .page-home {
    width: 70%;
    padding: 70px 15px
  }

  .page-careers {
    width: 80%;
    padding: 100px 15px 70px 15px
  }

  .page-40-0 {
    padding: 40px 15px
  }

  .page-90 {
    padding: 15px
  }

  .page-70 {
    padding: 70px 15px
  }

  ul.news li {
    margin-right: 50px
  }

  div.page.nosidebar {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
  }

  .case-histories li {
    width: 28%
  }

  .contatti-desk {
    display: none
  }

  .contatti-resp-content {
    display: block;
  }

  .contatti-resp {
    width: 100%;
    position: relative;
    padding: 20px !important;
    background: #f9f9f9;
    color: #000;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 240%;
    margin: 120px auto 30px auto;
    text-align: center;
  }

  .contatti-resp p {
    text-align: center;
  }

  .contatti-resp .linea-left-green {
    float: none;
    margin: 20px auto
  }

  table {
    width: 100%;
  }

  #cookie, #privacy, #popup-info {
    width: 100% !important;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }

  .fancybox-close-small {
    position: fixed !important;
  }

  #sidebar {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 25%;
    margin-top: 32px;
  }

  #footer {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
    display: table;
    line-height: normal;
  }

  .footer-top-content {
    width: 100%;
  }

  .footer-content {
    width: 100%;
  }

  #footer a {
    color: #fff !important;
  }
}

@media only screen and (max-width: 1099px) {
  ul.services li .img-services, ul.services li .descrizione-services {
    background: #fff !important
  }

  ul.services li {
    border-bottom: 4px solid #f8f8f8
  }

  ul.services li:last-child {
    border: none
  }

  .img-services, .descrizione-services {
    padding: 30px
  }
}

@media only screen and (max-width: 999px) {
  #header .menu>ul>li {
    margin: 0 0 0 18px;
    font-size: 11px;
  }

  .carousel-content {
    width: 100%
  }

  .case-histories li {
    width: 45%
  }

  .descrizione-blocco-careers-1, .descrizione-blocco-careers, .descrizione-blocco-careers-blocco-2 {
    padding: 50px
  }

  .loghi-footer, .loghi-footer-right {
    display: table;
  }

  .loghi-footer a {
    display: table;
    clear: both;
    margin-bottom: 10px
  }

  .loghi-footer-right {
    float: right;
  }

  .loghi-footer-right ul li {
    width: 100%;
    float: none;
    margin-bottom: 20px
  }
}

@media only screen and (max-width: 950px) {
  #header .menu>ul>li {
    margin: 0 0 0 16px
  }

  #header .menu>ul>li>a {
    font-size: 14px
  }

  ul.news li {
    width: 90%;
    float: none;
    display: inline-block;
    margin: 10px
  }
}

@media only screen and (max-width: 899px) {
  .hamburger {
    padding: 7px 6px;
    display: inline-block;
    cursor: pointer;
    -webkit-transition-property: background;
    -o-transition-property: background;
    transition-property: background;
    -webkit-transition-duration: .3s;
    -o-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease;
    -o-transition-timing-function: ease;
    transition-timing-function: ease;
    font: inherit;
    color: inherit;
    text-transform: none;
    border: 0;
    margin: 0;
    overflow: visible;
    background: none;
    width: 32px;
    height: 32px;
    outline: 0;
  }

  .hamburger:hover {
    background-color: none;
  }

  .hamburger-box {
    width: 30px;
    height: 14px;
    display: inline-block;
    position: relative;
  }

  .hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -1px;
  }

  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 30px;
    height: 2px;
    background-color: #dad044;
    border-radius: 1px;
    position: absolute;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-duration: 0.15s;
    -o-transition-duration: 0.15s;
    transition-duration: 0.15s;
    -webkit-transition-timing-function: ease;
    -o-transition-timing-function: ease;
    transition-timing-function: ease;
  }

  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block;
  }

  .hamburger-inner::before {
    top: -8px;
  }

  .hamburger-inner::after {
    bottom: -8px;
  }

  /*
	   * Squeeze
	   */
  .hamburger--squeeze .hamburger-inner {
    -webkit-transition-duration: 0.1s;
    -o-transition-duration: 0.1s;
    transition-duration: 0.1s;
    -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  .hamburger--squeeze .hamburger-inner::before {
    -webkit-transition: top 0.1s 0.14s ease, opacity 0.1s ease;
    -o-transition: top 0.1s 0.14s ease, opacity 0.1s ease;
    transition: top 0.1s 0.14s ease, opacity 0.1s ease;
  }

  .hamburger--squeeze .hamburger-inner::after {
    -webkit-transition: bottom 0.1s 0.14s ease, -webkit-transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.14s ease, -webkit-transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  #header.open .hamburger--squeeze .hamburger-inner {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition-delay: 0.14s;
    -o-transition-delay: 0.14s;
    transition-delay: 0.14s;
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  #header.open .hamburger--squeeze .hamburger-inner::before {
    top: 0;
    opacity: 0;
    -webkit-transition: top 0.1s ease, opacity 0.1s 0.14s ease;
    -o-transition: top 0.1s ease, opacity 0.1s 0.14s ease;
    transition: top 0.1s ease, opacity 0.1s 0.14s ease;
  }

  #header.open .hamburger--squeeze .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transition: bottom 0.1s ease, -webkit-transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease, -webkit-transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  #header .menu-toggle {
    display: block;
    position: absolute;
    right: 10px;
    top: 12px;
    line-height: 1;
  }

  #header {
    height: 55px;
    -webkit-box-shadow: 0 2px 5px 0 rgba(50, 50, 50, 0.2);
    box-shadow: 0 2px 5px 0 rgba(50, 50, 50, 0.2);
    z-index: 999;
    overflow: hidden;
    background: none;
    -webkit-transition: height .01s linear .6s, -webkit-box-shadow .5s ease .61s;
    -o-transition: height .01s linear .6s, box-shadow .5s ease .61s;
    transition: height .01s linear .6s, -webkit-box-shadow .5s ease .61s;
    transition: height .01s linear .6s, box-shadow .5s ease .61s;
    transition: height .01s linear .6s, box-shadow .5s ease .61s, -webkit-box-shadow .5s ease .61s;
  }

  #header.open {
    height: 100%;
    -webkit-transition: height .01s linear;
    -o-transition: height .01s linear;
    transition: height .01s linear;
    -webkit-box-shadow: 0 0 0 0 rgba(50, 50, 50, 0);
    box-shadow: 0 0 0 0 rgba(50, 50, 50, 0);
  }

  #header>.overlay {
    display: block;
    position: absolute;
    left: 0;
    top: 55px;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0);
    z-index: 1;
    -webkit-transition: background .6s ease;
    -o-transition: background .6s ease;
    transition: background .6s ease;
  }

  #header.open>.overlay {
    background: rgba(0, 0, 0, .5);
    -webkit-transition: background .6s ease .01s;
    -o-transition: background .6s ease .01s;
    transition: background .6s ease .01s;
  }

  #header .menu-bar {
    position: static;
    background: #fff;
    height: 55px
  }

  .logo-content {
    height: inherit;
  }

  #header .logo {
    margin: 18px 0 0 15px;
  }

  .head {
    margin-top: 0;
  }

  #header .menu-bar-content {
    position: static;
    background: #fff;
  }

  #header .menu {
    position: absolute;
    width: 0;
    height: 100%;
    top: 0;
    right: 0;
    overflow: visible;
    z-index: 2;
    line-height: 1.5;
    float: none;
    margin-right: 0;
  }

  #header .menu>.menu-toggle {
    display: inline-block;
    position: absolute;
    left: -47px;
    top: 15px;
    cursor: pointer;
  }

  #header .menu>.menu-items {
    position: absolute;
    width: 260px;
    right: -260px;
    top: 55px;
    bottom: 0;
    overflow: hidden;
    background: #333;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    -webkit-transition: right .6s ease;
    -o-transition: right .6s ease;
    transition: right .6s ease;
  }

  #header.open .menu>.menu-items {
    right: 0;
    -webkit-transition: right .6s ease .01s;
    -o-transition: right .6s ease .01s;
    transition: right .6s ease .01s;
  }

  #header .menu>.menu-items>li {
    display: block;
    float: none;
    margin: 0;
    border-bottom: 1px solid #3c3c3c;
  }

  #header .menu>.menu-items>li:first-child {
    border-top: 0
  }

  #header .menu>.menu-items>li:last-child {
    border-bottom: 0
  }

  #header .menu>.menu-items>li>a {
    display: block;
    color: #fff;
    padding: 15px 20px;
    text-align: right;
    position: relative;
  }

  #header .menu>.menu-items>li.menu-item-has-children>a>.submenu-toggle {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    color: #fff;
    height: 100%;
    width: 50px;
  }

  #header .menu>.menu-items>li.menu-item-has-children>a>.submenu-toggle>span {
    display: block;
    width: 24px;
    height: 24px;
    background: #222;
    border-radius: 50%;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -12px 0 0 -12px;
    text-align: center;
    font-size: 20px;
    line-height: 24px;
    color: #ccc;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
  }

  #header .menu>.menu-items>li.menu-item-has-children>a>.submenu-toggle:hover>span {
    background: #27ae60;
  }

  #header .menu>.menu-items>li.submenu-open>a>.submenu-toggle>span {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  #header ul.sub-menu {
    position: relative;
    left: auto;
    top: auto;
    background: #222;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
    color: #fff;
    width: auto;
    -webkit-transition: max-height 0.6s ease !important;
    -o-transition: max-height 0.6s ease !important;
    transition: max-height 0.6s ease !important;
    -webkit-transform: translateY(0) !important;
    -ms-transform: translateY(0) !important;
    transform: translateY(0) !important;
    opacity: 1 !important;
    height: auto;
    max-height: 0;
  }

  #header ul.sub-menu:after, #header ul.sub-menu:before {
    display: none;
  }

  #header .submenu-open>ul.sub-menu {
    max-height: 200px;
    width: 100% !important;
    -webkit-transition: max-height 1s ease !important;
    -o-transition: max-height 1s ease !important;
    transition: max-height 1s ease !important;
  }

  #header .menu>ul>li.submenu-open>a {
    color: #27ae60;
  }

  #header ul.sub-menu>li {
    float: none;
    width: auto;
    text-align: right;
    margin-right: 20px
  }

  #header ul.sub-menu>li>a {
    padding: 5px 10px;
    color: #fff
  }

  #header ul.sub-menu>li>a:hover {
    padding: 5px 10px;
    color: #27ae60
  }

  #header ul.sub-menu>li:first-child {
    padding-top: 0;
  }

  #header ul.sub-menu>li:last-child {
    padding-bottom: 0;
  }

  #googleMap {
    height: 200px;
  }

  div.main {
    margin-top: 55px;
  }

  .head {
    top: 0
  }

  .cubo-border {
    display: none;
  }

  .box-white {
    width: 70%;
    padding: 60px
  }

  .slide-careers {
    width: 100%
  }

  .slide-careers .slick-dots {
    bottom: 15px
  }

  .descrizione-blocco-careers-2 {
    margin: 0;
    padding: 30px
  }

  .select {
    float: none
  }

  .cerca {
    float: none;
    margin: 20px 0
  }

  .button-cerca {
    float: none
  }

  .page h1 {
    font-size: 46px
  }

  .page-case h1 {
    font-size: 30px
  }

  .page-content {
    width: 100%;
  }

  .half-15, .half-25, .half-30, .half-40, .half-50, .half-60, .half-70, .half-80 {
    width: 100%;
  }

  .right, .left {
    float: none
  }

  .border-right {
    border-right: none;
    border-bottom: 1px solid #8c8c8c;
    padding-right: 0;
    margin-bottom: 20px
  }

  .carousel-content {
    width: 60%
  }

  .absolute-50 {
    position: relative;
    top: inherit;
    -webkit-transform: translateY(0) !important;
    -ms-transform: translateY(0) !important;
    transform: translateY(0) !important;
  }

  .entra {
    position: relative;
    top: 0
  }

  .img-careers {
    float: none
  }

  .img-careers img {
    width: 100%
  }

  .social-share-link-content {
    position: relative;
    left: 0
  }

  .social-share-link-content a {
    display: inline;
  }

  .social-share-link-content h3 {
    margin: 0
  }

  .masonry {
    margin: 10px auto
  }

  .masonry-box-1, .masonry-box-2, .masonry-box-3, .masonry-box-4, .masonry-box-5, .masonry-box-6 {
    width: 90%;
    height: 310px;
    top: 0;
  }

  .masonry-box-6 {
    height: 180px
  }

  .page-content-case {
    padding: 40px;
    margin-top: 0
  }

  ul.grid-3 li {
    width: 50%;
  }

  ul.grid-4 li {
    width: 50%;
  }

  ul.grid-5 li {
    width: 33%
  }

  .social {
    float: none;
    margin: 20px auto;
    text-align: center;
    display: inline-block;
  }

  .info {
    text-align: center;
  }

  .loghi-footer-right ul {
    margin-top: 20px
  }

  .loghi-footer-right ul, .loghi-footer-right {
    float: none
  }

  .loghi-footer-right ul li {
    text-align: center;
    margin: 10px 0
  }

  .loghi-footer, .loghi-footer-right {
    margin: 0 auto
  }

  .wpcf7-form {
    width: 100%;
    text-align: center;
  }

  .campo {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    margin: 5px 0;
  }

  .campo-area {
    width: 100%;
    margin: 0
  }

  .wpcf7-text {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
  }

  .wpcf7-textarea {
    margin: 5px 0
  }

  .wpcf7-submit {
    margin-left: 5px;
  }

  #sidebar {
    width: 100%;
    float: none;
    padding-bottom: 20px;
    margin: 0;
    clear: both;
    text-align: center;
  }

  #sidebar.contatti {
    width: 100%;
    text-align: center;
    margin-top: 0 !important;
  }

  #sidebar.contatti h4 {
    margin-bottom: 0;
  }
}

@media only screen and (max-width: 799px) {
  .case-green {
    display: none
  }

  .client {
    position: relative;
    top: 0
  }

  .page-content-case {
    padding: 15px;
    margin-top: 0
  }

  .page-case h1 {
    background: #dad044;
    width: 100%;
    margin: 0;
    padding: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    top: 0;
  }

  .page-news h1 {
    top: 0;
    margin-bottom: 20px
  }

  .data-single {
    top: 0;
    color: #000;
    margin: 10px 0 20px 0
  }

  .head-nofoto {
    height: 0
  }

  .page-content-news {
    margin-top: 0 !important;
    padding: 0 15px 40px 15px !important
  }
}

@media only screen and (max-width: 699px) {
  .page-content-news {
    padding: 80px 20px 40px 100px
  }
}

@media only screen and (max-width: 599px) {
  .carousel-content {
    width: 100% !important
  }

  .carousel-content {
    width: 60%
  }

  .box-white {
    width: 70%;
    padding: 40px
  }

  .case-histories li {
    width: 90%
  }

  .page-content-70 {
    padding: 40px
  }

  ul.grid-3-team li {
    width: 50%
  }

  ul.grid-4-team li {
    width: 50%
  }

  .img-services {
    float: none;
    margin: 0 auto;
    width: 50%
  }

  .descrizione-services h2 {
    text-align: center;
  }

  .descrizione-services {
    float: none;
    width: 100%
  }

  .descrizione-premi {
    float: none;
    width: 100%
  }

  .allegato a, .video-case a {
    float: none;
    display: table;
  }

  .video-case a {
    margin-left: 0;
    margin-top: 10px
  }
}

@media only screen and (max-width: 499px) {
  .social-right {
    display: none
  }

  .page-home {
    width: 100%
  }

  .page-home h1 {
    font-size: 36px
  }

  .single-news img {
    width: 99%;
  }

  .img-news {
    float: none;
    margin: 10px auto;
    display: table;
    width: 100%
  }

  .img-news img {
    width: 100%
  }

  .input-cerca {
    width: 90%
  }

  .button-cerca {
    margin: 10px 0
  }

  .case-histories li {
    width: 100%
  }

  .box-white {
    width: 100%;
  }

  ul.grid-4 li {
    width: 100%;
  }

  ul.grid-5 li {
    width: 50%
  }

  .descrizione-blocco-careers-1, .descrizione-blocco-careers, .descrizione-blocco-careers-blocco-2 {
    padding: 30px
  }

  .img-services {
    padding: 0;
    width: 80%
  }

  .img-premi {
    padding: 0;
    width: 80%
  }

  .button-careers {
    right: 0
  }

  .page-careers {
    width: 100%;
    padding: 30px 15px
  }

  .campo {
    width: 100%;
  }

  .info {
    width: 100% !important;
    float: none !important;
    text-align: center;
    margin-bottom: 20px;
  }

  .privacy {
    text-align: center;
  }

  .sub-footer {
    line-height: 200%;
  }
  .biografia img{
    float: left;
    padding:0px 10px 10px 0px;
    width: 200px!important;
  }
}

@media only screen and (max-width: 399px) {
  ul.grid-3-team li, ul.grid-3 li {
    width: 100%
  }

  .descrizione-blocco-1 {
    padding: 50px
  }

  .page-true a h3 {
    font-size: 22px
  }

  .page-70 {
    padding: 40px 15px
  }

  ul.grid-5 li {
    width: 100%
  }

  ul.grid-5 li img {
    width: 70%;
    margin: 0 auto
  }

  .entra-careers {
    padding: 0
  }

  .entra {
    padding: 20px
  }

  .page-true a h3 {
    left: 0
  }
}

@media only screen and (max-width: 321px) {
  ul.grid-4 li, ul.grid-3 li {
    width: 100%;
  }
}


