/*Menu*/
@media only screen and (max-width:768px) {
    header .box-menu {padding: 0}
    .logo img{ margin: 0 auto; max-width: 120px;}
    .menu-topo{position: absolute; z-index: 3;top: 35px;}
    .botao-menu{position:absolute;right:15px;top:85px;height:40px;cursor: pointer; width: 40px; background: transparent; padding: 3px; z-index: 2;}
    header.fixed .botao-menu {top: 40px;}
    .botao-menu span{display:block;margin:5px 0;height:5px;width:34px;background: #000000;-webkit-transition:all 0.5s ease 0s;-moz-transition:all 0.5s ease 0s;-o-transition:all 0.5s ease 0s;-ms-transition:all 0.5s ease 0s;transition:all 0.5s ease 0s}
    .botao-menu.xis{right:15px !important;-webkit-transition:all 0.5s ease 0s;-moz-transition:all 0.5s ease 0s;-o-transition:all 0.5s ease 0s;-ms-transition:all 0.5s ease 0s;transition:all 0.5s ease 0s}
    .botao-menu.xis span:nth-child(1){-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-o-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);position:absolute;top:8px}
    .botao-menu.xis span:nth-child(2){opacity:0}
    .botao-menu.xis span:nth-child(3){-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-o-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg);position:absolute;top:8px}
    .header .menu{background: rgba(0,0,0, 0.85); position: absolute; z-index: 12; border: 4px solid #fff;width: 100%;  float: right; display: none;top:125px; right: 0;}
    .header .menu .menu-item.menu-item-has-children,.header .menu .menu-item.menu-item-object-custom{ position: relative;}
    .header .menu .menu-item.menu-item-has-children .sub-menu,.header .menu .menu-item.menu-item-object-custom .sub-menu,.header .menu .item.menu-item-has-children .sub-menu{ display: none; position: relative; width: 100%; top: 0px;}
    .header .menu a{font-family: 'Raleway', sans-serif; font-size: 14px;}
    .menu li{min-height: 40px; border-bottom: 1px solid #fff; width: 100%;}
    .menu li:last-child{ border-bottom: none;}
    .menu li a{ color: #fff; line-height: 35px; font-size: 15px;  padding: 5px 13px; width: 100%;}      .menu > li.menu-item-has-children:after{ content: '+'; position: absolute; right: 5px; top: 9px; color: #fff; padding: 5px; font-size: 15px; font-weight: 700; display: block;width: 40px; height: 30px;text-align: center;}
    .menu > li.menu-item-has-children.vira:after,.menu > li.menu-item-object-custom.vira:after{ content: '-';}
    .menu > li.menu-item-has-children .sub-menu,.menu > li.menu-item-object-custom .sub-menu { background: rgba(255, 255, 255, 1); border: 1px solid #fff;}
    .header .menu .sub-menu li {
        border-bottom: 1px solid #282826
    }
}

@media handheld, only screen and (max-width: 1440px) {
    .banner-home {
        min-height: 510px;
        max-height: 510px;
        margin-top: 90px;
    }

    .banner-home.user-logged {
        margin-top: 58px;
    }

    .banner-home .desc-banner .grid {
        top: 150px;
    }

    .banner-home .slideshow__item {
        background-size: contain!important;
        background-position: top right;
    }

    .produtos .interna-produtos .lista-produtos .menu-produtos a, .produtos .interna-produtos .lista-produtos .menu-produtos p {
        font-size: 15px;
        line-height: 20px;
    }

    .lightbox {
        top: 15px;
    }

    .content-lightbox .img-modal img {
        max-width: 120px;
    }

    .content-lightbox h3 {
        padding: 0 15px 10px 15px;
    }

    .infos-footer .catalogo h3 {
        font-size: 28px;
        line-height: 36px;
    }

    .infos-footer .catalogo img {
        left: 0;
    }

    .back-to-top {
        right: 1%;
    }

    .back-to-top img {
        width: 40px;
        height: 40px;
    }
}

@media handheld, only screen and (max-width: 768px){
    .mobile{display: block!important;}
    .desktop{display: none!important;}

    header {
        height: 180px;
    }

    header > .grid {
        display: flex;
        flex-wrap: wrap;
        padding-top: 8px;
    }

    header .logo {
        width: 100%;
        order: 1;
        padding-top: 0;
    }

    header.fixed {
        height: 130px;
    }

    header.fixed .logo {
        top: -5px;
    }

    header .box-menu {
        width: 100%;
        order: 0;
        margin: 0;
    }

    header .box-menu .menu-topo {
        width: 100%;
    }

    header .box-menu .redes-topo {
        min-height: auto;
        width: auto;
        margin-bottom: 0;
    }

    header .box-menu .redes-topo.mobile {
        display: flex!important;
        position: absolute;
        top: 0;
        right: 6px;
    }

    header .box-menu .infos-topo a.phone, header .box-menu .infos-topo a.mail-topo {
        padding-top: 15px;
        width: 50%;
    }

    header .box-menu .infos-topo {
        flex-wrap: wrap;
        align-items: center;
        margin: 0;
        border: none;
    }

    header .box-menu .infos-topo form {
        width: 60%;
    }

    header .box-menu .infos-topo form input[type="search"] {
        width: 100%;
    }

    header.fixed .box-menu .infos-topo .contatos-topo {
        display: none;
    }

    header .area-restrita {
        top: 10px;
        padding: 0;
    }
    
    header .area-restrita .icons-user {
        display: flex;
        justify-content: center;
    }

    header .area-restrita .icons-user a {
        padding: 0 12px;
    }

    header .area-restrita .icons-user a i {
        font-size: 18px;
    }

    header .box-menu .form-login {
        top: 6px;
        z-index: 4;
    }

    header.fixed .box-menu .form-login {
        top: 0;
    }

    header .box-menu .form-login form label.login-submit {
        padding-top: 20px;
        display: flex;
        justify-content: flex-end;
    }

    header .box-menu .form-login form label input[type="text"], header .box-menu .form-login form label input[type="password"] {
        width: 45%;
    }

    header .logo .user-name {
        text-align: left;
        padding-top: 5px;
        font-size: 13px;
    }

    .banner-home {
        margin-top: 180px; 
        min-height: auto;
        max-height: 400px;
    }

    .banner-home.user-logged {
        margin-top: 135px;
    }

    .banner-home .slideshow {
        margin-bottom: 0;
    }

    .banner-home .slideshow__item {
        background-position: top left!important;
        background-size: cover!important;
        height: 400px;
    }

    .banner-home .desc-banner .grid {
        top: 30px;
        left: 15px;
    }

    .banner-home .desc-banner .grid h1 {
        font-size: 32px;
        line-height: 40px;
    }

    .form-banner-mobile h2 {
        font-size: 20px;
        line-height: 26px;
        padding-top: 25px;
        padding-bottom: 25px;
        padding-left: 15px;
        padding-right: 15px;
    }

    .form-banner-mobile label img {
        display: none;
    }

    .home .sobre {
        background-position: top center;
        background-repeat: repeat;
        padding-top: 0;
        padding-bottom: 0;
    }

    .home .sobre h2 {
        font-size: 32px;
        line-height: 42px;
    }

    .home .produtos .content {
        padding-top: 25px;
    }

    .page-title {
        margin-bottom: 0;
    }

    .empresa .content {
        padding-top: 20px;
        padding-bottom: 0;
        margin-bottom: 0;
    }

    .empresa .infos-empresa .certificacoes .lista-certificados {
        flex-wrap: wrap;
    }

    .empresa .infos-empresa .certificacoes .lista-certificados .logo-iso {
        padding-right: 0;
        padding-bottom: 20px;
    }

    .empresa .infos-empresa {
        padding-top: 30px;
        padding-right: 0;
        padding-left: 0;
    }

    .empresa .infos-empresa h3 {
        font-size: 26px;
        line-height: 32px;
    }

    .empresa .infos-empresa .lista-infos {
        margin-bottom: 0;
    }

    .empresa .infos-empresa .lista-infos .item-info {
        padding-bottom: 25px;
    }

    .produtos .lista-produtos {
        justify-content: center;
    }

    .produtos .lista-produtos .item-prod {
        width: 50%;
        display: flex;
        justify-content: center;
    }

    .produtos .lista-produtos .item-prod a {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .produtos .lista-produtos .item-prod .img-prod {
        text-align: center;
    }

    .produtos .interna-produtos {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .produtos .interna-produtos .categories-bar {
        width: 90%;
        padding: 0 0 30px 0;
        order: 2;
    }

    .produtos .interna-produtos .lista-produtos {
        width: 100%;
        padding-top: 35px;
        padding-left: 17px;
        order: 1;
    }

    .produtos .interna-produtos .lista-produtos .line-title h2 {
        font-size: 24px;
        line-height: 30px;
        text-align: center;
    }

    .produtos .interna-produtos .lista-produtos .line-desc {
        padding-top: 10px;
        padding-bottom: 0;
    }

    .produtos .interna-produtos .lista-produtos .menu-produtos {
        flex-wrap: wrap;
        padding-right: 0;
        padding-left: 0;
        padding-bottom: 15px;
    }

    .produtos .interna-produtos .lista-produtos .menu-produtos a {
        padding-bottom: 5px;
    }

    .produtos .interna-produtos .lista-produtos .produtos-relacionados {
        padding-top: 15px;
        padding-right: 0;
        padding-left: 0;
    }

    .produtos .interna-produtos .lista-produtos .produtos-relacionados .tit-relacionados {
        padding: 10px;
    }

    .produtos .interna-produtos .lista-produtos .produtos-relacionados .tit-relacionados p {
        font-size: 24px;
        line-height: 30px;
        text-align: center;
    }

    .blog.user-logged, .single-blog.user-logged {
        padding-top: 135px;  
    }

    .lightbox {
        width: 100%;
    }

    .content-lightbox form {
        padding: 20px 15px 25px 15px;
    }

    .content-lightbox form label input[type="submit"] {
        width: 70%;
    }

    .blog .lista-posts .item-blog {
        width: 100%;
    }

    .blog .lista-posts .item-blog .img-blog {
        text-align: center;
    }

    .sidebar .busca form input[type="search"] {
        width: 260px;
    }

    .infos-footer {
        margin-bottom: 0;
        background-image: url(../images/bkg-home-mobile.jpg);
        background-position: top left;
    }

    .infos-footer .politica-qualidade {
        padding-bottom: 30px;
    }

    .infos-footer .politica-qualidade .tit {
        padding: 20px 15px;
        margin: 0;
    }

    .infos-footer .politica-qualidade .tit h2 {
        font-size: 28px;
        line-height: 35px;
    }

    .infos-footer .politica-qualidade .tit h2 br {
        display: none;
    }

    .infos-footer .politica-qualidade .text {
        padding: 25px 25px 20px 25px;
    }

    .infos-footer .politica-qualidade .text h2 {
        font-size: 24px;
        line-height: 30px;
        padding-bottom: 10px;
    }

    .infos-footer .politica-qualidade .text p {
        font-size: 22px;
        line-height: 28px;
    }

    .infos-footer .contatos-home {
        flex-wrap: wrap;
        padding: 20px 15px;
        margin-top: 15px;
        margin-bottom: 0;
    }

    .infos-footer .contatos-home a {
        width: 100%;
        justify-content: center;
        padding: 0 17px 15px 17px;
    }

    .infos-footer .contatos-home a img {
        width: 35px;
        height: 30px;
        margin-right: 5px;
    }

    .infos-footer .contatos-home a p {
        font-size: 16px;
        line-height: 20px;
    }

    .infos-footer .catalogo .content {
        justify-content: center;
        margin: 0;
        min-height: 90px;
        padding-top: 25px;
    }

    .infos-footer .catalogo img {
        top: -40px;
        left: 40%;
        width: 75px;
        height: 75px;
    }

    .infos-footer .catalogo h3 {
        font-size: 22px;
        line-height: 28px;
    }

    .form-home {
        margin: 0;
    }

    .form-home .mapa, .form-home .form {
        width: 100%;
        margin: 0;
    }

    .form-home .form {
        padding: 0 0 25px 0;
    }

    .form-home form h2 {
        padding-top: 25px;
        padding-bottom: 20px;
        padding-left: 17px;
    }

    .form-home form label {
        padding: 0 20px!important;
    }

    .form-home form label img {
        display: none;
    }

    footer .menu-footer {
        padding-left: 10px!important;
    }

    footer .contatos-footer, footer .redes-footer {
        padding-top: 0;
    }

    footer .copyright .grid {
        justify-content: flex-start;
    }

    footer .copyright .socci {
        right: 15px;
        top: 40px;
    }

    footer .btn-zap {
        right: 5px;
        font-size: 24px!important;
        width: 40px!important;
        height: 40px!important;
    }

    .back-to-top {
        right: 10px;
        padding: 0;
    }

    .back-to-top img {
        width: 25px;
        height: 25px;
    }
}

@media handheld, only screen and (max-width: 480px) {
    header .logo {
        padding-top: 0;
        padding-left: 5px;
    }

    header .box-menu .infos-topo a.phone {
        padding-right: 0;
    }

    header .box-menu .infos-topo a.phone, header .box-menu .infos-topo a.mail-topo {
        width: 40%;
    }

    header .box-menu .infos-topo a.phone img , header .box-menu .infos-topo a.mail-topo img {
        padding-right: 5px;
        width: 20%;
        height: 17px;
    }

    header .box-menu .infos-topo a {
        font-size: 14px;
    }

    header .box-menu .infos-topo form {
        width: 30%;
    }

    header .box-menu .redes-topo {
        width: 35%;
    }

    header .box-menu .redes-topo.mobile {
        display: flex!important;
        position: absolute;
        top: 4px;
        right: inherit;
        left: 40%;
    }

    header .languages {
        right: 0;
    }

    header .languages a img {
        width: 20px;
        height: 20px;
        padding-right: 0!important;
        margin-right: 5px;
    }

    .banner-home {
        max-height: 350px;
        margin-top: 180px;
    }

    .banner-home .desc-banner {
        top: 35px;
    }

    .banner-home .desc-banner .grid h1 {
        font-size: 22px;
        line-height: 30px;
    }

    .banner-home .slideshow__item {
        height: 350px;
        background-repeat: no-repeat;
    }

    .form-banner-mobile label {
        width: 100%;
        padding: 0;
    }

    .produtos .lista-produtos .item-prod {
        width: 100%;
    }

    .content-lightbox h3 {
        font-size: 18px;
        line-height: 22px;
    }

    .content-lightbox .fechar {
        font-size: 16px;
        width: 25px;
        height: 25px;
        top: 5px;
        right: 5px;
    }

    .catalogo a {
        flex-wrap: wrap;
        justify-content: center;
    }

    .catalogo h3 {
        color: #000000;
        font-size: 24px;
        font-weight: 700;
        line-height: 30px;
        padding-top: 10px;
        padding-left: 25px;
        padding-right: 25px;
    }

    .home .sobre .content-sobre {
        padding-top: 25px;
        padding-bottom: 25px;
    }

    .home .produtos .image {
        padding-top: 35px;
        padding-bottom: 10px;
    }

    .infos-footer .politica-qualidade {
        padding-bottom: 0;
    }
    
    .infos-footer .politica-qualidade .text {
        padding: 25px 0 0 0;
    }

    .infos-footer .politica-qualidade .text p {
        font-size: 18px;
        line-height: 24px;
    }

    .back-to-top {
        right: 5px;
    }
}

@media handheld, only screen and (max-width: 375px) {
    header .box-menu .infos-topo {
        padding-bottom: 5px;
    }
}

@media handheld, only screen and (max-width: 340px) {
    header .box-menu .infos-topo a {
        font-size: 13px;
    }

    .infos-footer .catalogo h3 {
        font-size: 20px;
        line-height: 26px;
    }
}