#nav-mobile,
#mobile-submenu, .service-mobile {
    display: none;
}

@media screen and (min-width: 769px) {
    #myBtnContainer.swiper-container .swiper-wrapper { flex-wrap: wrap; }
    #myBtnContainer.swiper-container .swiper-wrapper .swiper-slide { width: fit-content; }
}

#myBtnContainer.swiper-container .swiper-wrapper .swiper-slide { flex-shrink: unset; }

/*@media screen and (max-width: 1716px) {
    #nav-contacts {
        display: none;
    }
}*/


/*@media screen and (max-width: 1420px) {
    nav {
        width: 90vw;
        margin-left: -15vw;
    }
    .submenu {
        padding: 0 5vw;
    }
    .submenu td,
    .menu-sub-categories {
        width: 15vw;
    }
}
/*@media screen and (max-width: 1058px) and (min-width: 1025px) {
    .nav-links {
        width: 100%;
        margin-top: 20px;
    }
}*/

@media screen and (max-width: 967px) {
    #search-bar {
        width: 100%;
        margin-top: 20px;
    }

}

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

    .tab {
        width: 100%;
        height: unset;
        display: flex;
        flex-direction: initial;
        white-space: nowrap; 
        margin-bottom: 15px;
      }
      
      /* Style the buttons inside the tab */
      .tab button {
        width: 100%;
        margin-bottom: 12px;
      }
            
      /* Style the tab content */
      .tabcontent {
        width: 100%;
        height: unset;
      }
      .company-page .places-info {
        width: 100%;
      }

      #company-page-places .places-info {
        margin: 0px 0px 12px 0px;
     }

      .leftscrollbar {/* put it on the left */
        direction: ltr; 
      }
      .leftscrollbar>div {
        direction: rtl;
      }
      .tab::-webkit-scrollbar {
        height: 6px;
        -webkit-appearance: none;
    }
}


@media screen and (max-width: 1300px) {
    body {
        width: auto;
        margin: 0 10vw;
    }
    .banner,
    .services,
    footer,
    .references,
    #vision {
        margin-left: -10vw;
    }
    .banner,
    #vision {
        padding: 40px 10vw;
    }
    /*---------------------------------MENU---------------------------------*/
    nav {
        width: 90vw;
        margin-left: -5vw;
    }
    /* .submenu {
        padding: 0 5vw;
    } */
    .submenu td,
    .menu-sub-categories {
        width: 15vw;
    }
    #nav-contacts {
        display: none;
    }
    /*---------------------------------HOME---------------------------------*/
    .banner-img img {
        width: 100%;
    }
    .service-left {
        padding-left: 10vw;
        padding-right: 10vw;
    }
    .service {
        padding: 8vh 10vw;
    }
    .banner-item {
        padding: 40px 10vw;
    }
    .featured .fa-chevron-left {
        left: 10vw;
    }
    .featured .fa-chevron-right {
        right: 10vw;
    }
    .featured-button {
        display: block;
        text-align: center;
    }
    /*---------------------------------CATEGORIES---------------------------------*/
    .product-image {
        height: 100px;
    }
    .product h3 {
        height: calc(100% - 100px);
    }
    /*---------------------------------PRODUCT---------------------------------*/
    .references {
        padding: 0px 10vw;
    }
    .references #categories div:first-child {
        padding-top: 40px;
    }
    .references #categories div:last-child {
        padding-bottom: 20px;
    }
    /*---------------------------------GROUP---------------------------------*/
    #banner-group {
        padding: 20vh 10vw 10vh;
    }
    .companie {
        width: 48%;
    }
    /*---------------------------------COMPANY---------------------------------*/
    #company-page-places {
        width: 100%;
    }
    /*---------------------------------WORK---------------------------------*/
    .work-table .details {
        width: 40%;
    }
    /*---------------------------------FOOTER---------------------------------*/
    .footer-top,
    .footer-bottom {
        margin: 0 10vw;
    }
    .footer-logos {
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    .footer-logos img {
        margin: 10px;
    }
}

@media screen and (max-width: 768px) {
    #desktop-submenu .menu-item:first-of-type a { border-radius: 0; }
    #desktop-submenu .menu-item:last-of-type a { border-radius: 0; }

    body {
        margin: 0 5vw;
    }
    h1 {
        font-size: 30px;
        line-height: 34px;
    }
    h2 {
        font-size: 28px;
        line-height: 32px;
    }
    h3 {
        font-size: 19px;
        line-height: 23px;
    }
    #home-about,
    .services,
    .product-types-list,
    .filters {
        flex-direction: column;
    }
    #home-about h2,
    #home-about p,
    .service {
        width: 100%;
    }
    .banner,
    .services,
    footer,
    .references,
    #vision {
        margin-left: -5vw;
    }
    .banner,
    #vision {
        padding: 40px 5vw;
    }
    /*---------------------------------MENU---------------------------------*/
    #desktop-submenu {
        z-index: 9;
    }

    #nav-mobile.expand + #desktop-submenu {
        display: flex;
        flex-wrap: wrap;
    }

    .submenu .menu-item {
        width: 50%;
    }

    .submenu .menu-item > a {
        height: 100px;
        padding: 1rem;
    }

    .sub-menu > ul > li h5,
    .sub-menu .sub-item {
        width: 100% !important;
        max-width: 100% !important;
    }

    .submenu .menu-item:nth-child(3) > a {
        background: #d42a30;
    }

    .submenu .menu-item:nth-child(3) > a:hover {
        background: #b02125;
    }

    .submenu .menu-item:nth-child(4) > a,
    .submenu .menu-item:nth-child(5) > a {
        background: #253a80;
    }

    .submenu .menu-item:nth-child(4) > a:hover,
    .submenu .menu-item:nth-child(5) > a:hover {
        background: #1e2e6b;
    }

    .submenu {
        background: #f2f2f2 url(/verdasca_theme/images/verdasca-cinza.png);
        background-repeat: no-repeat;
        background-position: 83% 92%;
    }

    main {
        margin-top: 70px;
    }

    footer.hide,
    main.hide {
        display: none;
    }

    #mobile-submenu {
        margin-top: 70px;
    }
    nav,
    #desktop-submenu {
        display: none;
    }
    #nav-mobile,
    #mobile-submenu {
        display: block;
    }
    #nav-mobile {
        width: 100vw;
        margin-left: -5vw;
        background: #ffffff;
        /* border-bottom: 1px solid #cccccc; */
        padding: 0 5vw;
        z-index: 3;
        position: fixed;
    }
    #mobile-submenu {
        border-top: none;
    }
    #nav-mobile.expand {
        /* min-height: 100%; */
        /* min-width: 100%; */
        position: fixed;
        z-index: 2;
        background: #ffffff;
        top: 0;
        left: 0;
        overflow: hidden;
        margin-left: 0;
    }
    .nav-mobile-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        /* padding: 20px 0; */
        width: 100%;

        position: fixed;
        z-index: 99999;
        background: white;
        top: 0;
        padding: 15px 18px;
    }

    .nav-mobile-header .fa {
        font-size: 2rem;
        margin-right: 0.75rem;
    }

    /* .nav-mobile-header .fa-bars {
        margin-right: 2rem;
    } */

    #nav-mobile img {
        height: 30px;
        width: auto;
    }
    #nav-mobile i {
        font-size: 20px;
        color: #1C1A56;
        cursor: pointer;
    }
    #mobileMenu {
        display: none;
        margin-top: 315px;
    }
    #mobileMenu.active {
        display: block;
    }
    #mobileMenu .nav-links {
        flex-direction: column;
        font-size: 16px;
        align-items: flex-start;
        margin: 20px 20px 0;
    }
    #mobileMenu .nav-links li {
        padding: 10px 0;
    }
    #mobileMenu .select-language {
        margin: 0 20px;
        padding: 10px 0;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        border-top: 1px solid #cccccc;
        list-style: none;
        font-size: 16px;
    }
    #mobileMenu .select-language li {
        margin-left: 20px;
    }
    #mobileMenu .select-language li a {
        color: #2d2d2d;
    }
    #mobile-submenu {
        text-align: center;
        padding: 0;
    }
    #mobile-submenu .select:after {
        color: #2d2d2d;
        right: 20px;
        top: -3px;
    }
    .mobile-menu-categories {
        color: #2d2d2d;
        font-size: 16px;
        border: none;
        padding: 12px 30px 10px;
    }
    .submenu-space {
        height: 48px;
    }
    .select {
        width: 100%;
        margin: 5px 0;
        margin-left: 0;
    }
    /*---------------------------------HOME---------------------------------*/
    #banner1::after {
         bottom: -50px;
         left: -50px;
         width: 100px;
         height: 100px;
     }

    /*.banner img {
        max-width: 250px;
        width: auto;
    }*/
    .service-left {
        padding-left: 5vw;
        padding-right: 5vw;
    }
    .service {
        padding: 8vh 5vw;
    }
    .aluguer {
        background: linear-gradient( rgba(227, 0, 15, 0.5), rgba(227, 0, 15, 0.5)), url(../images/home/aluguer.png);
    }
    .service-mobile{
        display: block;
    }
    .service-desktop{
        display: none;
    }
    .aco {
        background: linear-gradient( rgba(28, 26, 86, 0.5), rgba(28, 26, 86, 0.5)), url(../images/home/aco.png);
    }
    #home-about {
        padding: 30px 0;
        text-align: center;
    }
    #home-about h2 {
        padding: 0;
    }
    #home-about p {
        padding: 10px 0;
        border: none;
    }
    .banner-item {
        padding: 0;
        justify-content: space-around;
    }
    .banner-item .banner-img {
        width: 100%;
        height: 180px;
    }
    .featured .fa-chevron-left {
        left: 20px;
    }
    .featured .fa-chevron-right {
        right: 20px;
    }
    /*---------------------------------PRODUCT---------------------------------*/
    .product {
        width: 48%;
    }
    .references {
        padding: 0px 5vw;
    }
    .references #categories div:first-child {
        padding-top: 40px;
    }
    
    .references #categories div:last-child {
        padding-bottom: 20px;
    }
    /*---------------------------------GROUP---------------------------------*/
    #banner-group {
        padding: 20vh 5vw 10vh;
    }
    .companie {
        width: 30%;
    }
    /*---------------------------------COMPANY---------------------------------*/
    .smallCarousel {
        height: 40vh;
    }
    /*---------------------------------WORK---------------------------------*/
    .work-table .details {
        width: 35%;
    }
    .work-gallery .carousel {
        height: 80vh;
    }
    .filters {
        margin: 10px 0 20px;
        align-items: flex-start;
    }
    /*---------------------------------NEW---------------------------------*/
    #newCarousel {
        height: 35vh;
    }
    /*---------------------------------CONTACTS---------------------------------*/
    .google-maps {
        height: 250px;
    }
    .contactForm {
        width: 100%;
        margin: 0;
    }
    .contact-form textarea {
        height: 150px;
    }
    /*---------------------------------FOOTER---------------------------------*/
    .footer-top,
    .footer-bottom {
        margin: 0 5vw;
    }

    .new-products-layout .product {
        width: 100%;
        margin-right: 0;
    }


    .works .product.show { 
        width: 100%;
        margin-right: 0;
        margin-bottom: 5rem;
    }

    .works .product .work-overlay {
        position: relative;
        padding: 1rem 0 3rem;
        text-align: center;
    }
    .works .product .work-overlay > *, .works .product .work-overlay:after {
        opacity: 1;
    }

    .works .product .product-image { 
        height: 20rem;
    }

    .works .product .work-overlay:after {
        margin: 12px auto 0;
    }
}

@media screen and (max-width: 560px) {
    .product-desc .half {
        margin-bottom: 15px;
    }

    body {
        margin: 0 20px;
        font-size: 16px;
        line-height: 20px;
    }
    h1 {
        font-size: 27px;
        line-height: 31px;
    }
    h2 {
        font-size: 18px;
        line-height: 22px;
    }
    h3 {
        font-size: 16px;
        line-height: 19px;
    }
    .banner,
    .banner-item,
    #home-extras,
    .footer-row,
    .footer-bottom,
    .two-col,
    .companies-grid,
    .products,
    .news-list,
    .where-we-are,
    .new-page .new-text,
    .product-type {
        flex-direction: column;
    }
    .banner,
    .services,
    footer,
    #vision,
    .references,
    #nav-mobile {
        margin-left: -20px;
    }
    .banner,
    #vision {
        padding: 40px 20px;
    }
    .banner-text,
    .extra,
    .half,
    .companie,
    .product,
    .new,
    #company-page-places,
    .new-page .two-col .half:first-child,
    .new-page .two-col .half:nth-child(2),
    .product-type,
    .product-type-visible,
    .product-type-desc,
    .product-type-desc.active {
        width: 100%;
    }
    .banner-neg .banner-text,
    .half-margin,
    #vision p,
    .product-desc,
    .new-page .new-text .date,
    .recruitmentForm .two-col .half:nth-child(2),
    .product-type {
        margin: 0;
    }
    /*---------------------------------MENU---------------------------------*/
    #nav-mobile {
        padding: 0 20px;
    }
    /*---------------------------------HOME---------------------------------*/
    div#slider-13-layer-5 {
        display:none;
    }

    div#slide-30-layer-1 {
        top: 0px;
    }
    #banner2 .banner-img img {
        height: 250px;
    }
    .banner-text {
        text-align: right;
    }
    .banner:not(.banner-neg) h1::before {
        left: auto;
        right: 0;
    }
    .banner-neg .banner-text {
        text-align: left;
    }
    .banner-neg img {
        margin-top: 20px;
    }
    .banner-list {
        justify-content: flex-end;
    }
    .banner-neg .banner-list {
        justify-content: flex-start;
    }
    .banner-list li {
        margin-left: 20px;
        margin-right: 0;
        padding: 5px 0;
    }
    .banner-neg .banner-list li {
        margin-left: 0px;
        margin-right: 20px;
    }
    .service-left {
        padding-left: 20px;
        padding-right: 20px;
    }
    .service {
        padding: 8vh 20px;
    }
    .banner-item .banner-img {
        height: 150px;
        max-width: 100%;
    }
    .featured .banner-text {
        text-align: center;
    }
    .featured .banner-text h1::before {
        right: auto;
        left: calc(50% - 50px);
    }
    .featured-button {
        display: block;
    }
    .banner-text p {
        margin-bottom: 20px;
    }
    #home-extras {
        padding: 30px 0px;
    }
    .extra {
        text-align: center;
    }
    .extra:not(:first-child) {
        margin-top: 30px;
    }
    .extra .fa,
    .extra img {
        margin-bottom: 0;
    }
    .extra h3 {
        margin: 10px 0 5px;
    }
    /*---------------------------------CATEGORIES---------------------------------*/
    div:not(.references) #categories .category:first-child, main > #categories .category:first-child {
        margin-top: 20px;
    }
    #solucoes {
        margin-top: 20px;
    }
    .category {
        margin-bottom: 0;
    }
    .product-image {
        height: 160px;
    }
    .product h3 {
        height: calc(100% - 160px);
    }
    /*---------------------------------PRODUCT---------------------------------*/
    .product-desc .half-margin img {
        width: 100%;
    }
    .product-type {
        margin-top: 20px;
        max-height: none;
    }
    .product-type-desc {
        height: 0;
    }
    .product-type-desc.active {
        /*height: 256px;*/
        height: auto;
    }
    .product-type-visible {
        max-height: 256px;
    }
    /*---------------------------------GROUP---------------------------------*/
    #banner-group {
        padding: 20vh 20px 15vh;
    }
    .who-we-are {
        margin-top: 30px;
    }
    #map {
        display: none;
    }
    #quote {
        font-size: 30px;
        line-height: 43px;
    }
    #vision {
        margin: 30px 0;
        margin-left: -20px;
    }
    #vision p {
        font-size: 18px;
        line-height: 26px;
    }
    .half h4:nth-child(2) {
        margin-top: 20px;
    }
    #video {
        margin: 20px 0;
    }
    .companie-caption {
        margin: 20px 0 30px;
        padding: 0 20px;
    }
    .companie-caption h3 {
        margin-bottom: 0px;
    }
    .companies {
        margin-bottom: 10px;
    }
    #internac {
        padding: 10px 0 20px;
    }
    /*---------------------------------COMPANY---------------------------------*/
    .smallCarousel {
        height: 40vh;
    }
    /*---------------------------------WORK---------------------------------*/
    .work-table .details {
        width: 35%;
    }
    .work-gallery .carousel {
        height: 80vh;
    }
    .filters {
        margin: 10px 0 20px;
        align-items: flex-start;
    }
    /*---------------------------------NEW---------------------------------*/
    #newCarousel {
        height: 35vh;
    }
    /*---------------------------------CONTACTS---------------------------------*/
    .google-maps {
        height: 250px;
    }
    .contactForm {
        width: 100%;
        margin: 0;
    }
    .contact-form textarea {
        height: 150px;
    }
    /*---------------------------------FOOTER---------------------------------*/
    .footer-top,
    .footer-bottom {
        margin: 0 5vw;
    }

    .product-desc .half {
        margin-bottom: 15px;
    }

    body {
        margin: 0 20px;
        font-size: 16px;
        line-height: 20px;
    }
    h1 {
        font-size: 27px;
        line-height: 31px;
    }
    h2 {
        font-size: 18px;
        line-height: 22px;
    }
    h3 {
        font-size: 16px;
        line-height: 19px;
    }
    .banner,
    .banner-item,
    #home-extras,
    .footer-row,
    .footer-bottom,
    .two-col,
    .companies-grid,
    .products,
    .news-list,
    .where-we-are,
    .new-page .new-text,
    .product-type {
        flex-direction: column;
    }
    .banner,
    .services,
    footer,
    #vision,
    .references,
    #nav-mobile {
        margin-left: -20px;
    }
    .banner,
    #vision {
        padding: 40px 20px;
    }
    .banner-text,
    .extra,
    .half,
    .companie,
    .product,
    .new,
    #company-page-places,
    .new-page .two-col .half:first-child,
    .new-page .two-col .half:nth-child(2),
    .product-type,
    .product-type-visible,
    .product-type-desc,
    .product-type-desc.active {
        width: 100%;
    }
    .banner-neg .banner-text,
    .half-margin,
    #vision p,
    .product-desc,
    .new-page .new-text .date,
    .recruitmentForm .two-col .half:nth-child(2),
    .product-type {
        margin: 0;
    }
    /*---------------------------------MENU---------------------------------*/
    #nav-mobile {
        padding: 0 20px;
    }
    /*---------------------------------HOME---------------------------------*/
    div#slider-13-layer-5 {
        display:none;
    }

    div#slide-30-layer-1 {
        top: 0px;
    }
    #banner2 .banner-img img {
        height: 250px;
    }
    .banner-text {
        text-align: right;
    }
    .banner:not(.banner-neg) h1::before {
        left: auto;
        right: 0;
    }
    .banner-neg .banner-text {
        text-align: left;
    }
    .banner-neg img {
        margin-top: 20px;
    }
    .banner-list {
        justify-content: flex-end;
    }
    .banner-neg .banner-list {
        justify-content: flex-start;
    }
    .banner-list li {
        margin-left: 20px;
        margin-right: 0;
        padding: 5px 0;
    }
    .banner-neg .banner-list li {
        margin-left: 0px;
        margin-right: 20px;
    }
    .service-left {
        padding-left: 20px;
        padding-right: 20px;
    }
    .service {
        padding: 8vh 20px;
    }
    .banner-item .banner-img {
        height: 150px;
        max-width: 100%;
    }
    .featured .banner-text {
        text-align: center;
    }
    .featured .banner-text h1::before {
        right: auto;
        left: calc(50% - 50px);
    }
    .featured-button {
        display: block;
    }
    .banner-text p {
        margin-bottom: 20px;
    }
    #home-extras {
        padding: 30px 0px;
    }
    .extra {
        text-align: center;
    }
    .extra:not(:first-child) {
        margin-top: 30px;
    }
    .extra .fa,
    .extra img {
        margin-bottom: 0;
    }
    .extra h3 {
        margin: 10px 0 5px;
    }
    /*---------------------------------CATEGORIES---------------------------------*/
    div:not(.references) #categories .category:first-child, main > #categories .category:first-child {
        margin-top: 20px;
    }
    #solucoes {
        margin-top: 20px;
    }
    .category {
        margin-bottom: 0;
    }
    .product-image {
        height: 160px;
    }
    .product h3 {
        height: calc(100% - 160px);
    }
    /*---------------------------------PRODUCT---------------------------------*/
    .product-desc .half-margin img {
        width: 100%;
    }
    .product-type {
        margin-top: 20px;
        max-height: none;
    }
    .product-type-desc {
        height: 0;
    }
    .product-type-desc.active {
        /*height: 256px;*/
        height: auto;
    }
    .product-type-visible {
        max-height: 256px;
    }
    /*---------------------------------GROUP---------------------------------*/
    #banner-group {
        padding: 20vh 20px 15vh;
    }
    .who-we-are {
        margin-top: 30px;
    }
    #map {
        display: none;
    }
    #quote {
        font-size: 30px;
        line-height: 43px;
    }
    #vision {
        margin: 30px 0;
        margin-left: -20px;
    }
    #vision p {
        font-size: 18px;
        line-height: 26px;
    }
    .half h4:nth-child(2) {
        margin-top: 20px;
    }
    #video {
        margin: 20px 0;
    }
    .companie-caption {
        margin: 20px 0 30px;
        padding: 0 20px;
    }
    .companie-caption h3 {
        margin-bottom: 0px;
    }
    .companies {
        margin-bottom: 10px;
    }
    #internac {
        padding: 10px 0 20px;
    }
    
    .visao ul {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
        display: block;
    }
    .visao li {
        padding-bottom: 40px;
    }
        
        .visao ul {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
            display: block;
    }
    .visao li {
        padding-bottom: 40px;
    }
    
    
    /*---------------------------------PORTFOLIO---------------------------------*/
    .product-desc {
        margin-top: 10px;
    }
    .product h3 {
        margin-bottom: 10px;
    }
    /*---------------------------------WORK---------------------------------*/
    .work-table .details {
        width: 35%;
    }
    .work-gallery {
        margin-top: 30px;
    }
    .work-gallery .carousel {
        height: 30vh;
    }
    /*---------------------------------NEWS---------------------------------*/
    .new {
        border-bottom: 1px solid black;
    }
    .new .product-image {
        height: 150px;
    }
    /*---------------------------------NEW---------------------------------*/
    #newCarousel {
        height: 30vh;
    }
    .references {
        padding: 0 20px;
        margin-top: 30px;
    }
    .references #categories div:first-child {
        padding-top: 20px;
    }
    .references #categories div:last-child {
        padding-bottom: 0px;
    }
    .new-page .new-quote {
        margin: 30px 0 0;
    }
    .new-page .carousel {
        margin-top: 20px;
    }
    /*---------------------------------MEDIA---------------------------------*/
    #catalogs {
        margin-top: 30px;
    }
    #files-list {
        margin-bottom: 30px;
    }
    #files-list li {
        padding: 10px 0px;
        font-size: 16px;
    }
    /*---------------------------------CONTACTS---------------------------------*/
    .google-maps {
        height: 400px;
    }
    #company-info {
        margin-bottom: 20px;
    }
    
    div#detalhesContactos {
        order: 1;
        margin-bottom: 20px;
    }
    
    .places.half {
        order: 2;
    }
    
    .places-info {
        width: 95%;
        display: grid;
    }
    /*---------------------------------RECRUITMENT---------------------------------*/
    .recruitmentForm select {
        margin-bottom: 14px;
    }
    .file-input {
        margin-bottom: 14px;
    }
    /*---------------------------------FOOTER---------------------------------*/
    .footer-top,
    .footer-bottom {
        margin: 0 20px;
    }
    .newsletter {
        margin-top: 30px;
        text-align: center;
    }
    .footer-bottom {
        text-align: center;
    }
    .footer-bottom-right a {
        margin-right: 20px;
        margin-left: 0px;
    }
    .footer-bottom-right {
        margin-top: 10px;
    }

    .home-highlight {
        margin-top: 2rem;
        margin-bottom: 0;
    }

    .home-highlight .slider .image {
        width: 100%;
        height: 20rem;
    }

    .home-highlight .slider .home-text {
        position: relative;
        width: 100%;
        bottom: 5px;
        right: 0;
        padding: 1rem 3rem;
        top: -3rem;
    }

    .outter-iframe #iframe {
        margin-top: 60px;
    }

    .home-highlight .slider .container {
        width: 100%;
    }
}