/**************************************************************/
/*****************COMUN MOVIL/ESCRITORIO***********************/
/**************************************************************/


#mainMenu .mainMenu-link,
#mainMenu .mainMenu-sub,
#mainMenu .mainMenu-link:focus,
.desktop #mainMenu .mainMenu-link:hover,
#mainMenu .mainMenu-elem-act > .mainMenu-link,
#mainMenu .mainMenu-elem-act > .mainMenu-sub {
    color: white;
}
body.mainMenu-on #mainMenu .mainMenu-link,
body.mainMenu-on #mainMenu .mainMenu-sub,
body.mainMenu-on #mainMenu .mainMenu-link:focus,
body.mainMenu-on.desktop #mainMenu .mainMenu-link:hover,
body.mainMenu-on #mainMenu .mainMenu-elem-act > .mainMenu-link,
body.mainMenu-on #mainMenu .mainMenu-elem-act > .mainMenu-sub {
    color: var(--corp);
}
#mainMenu #mainMenu-root > .mainMenu-link:before,
#mainMenu #mainMenu-root > .mainMenu-link:after {
    border-top: 2px solid white;
    border-bottom: 2px solid white;
}
.stickyHeader-on #mainMenu #mainMenu-root > .mainMenu-link:before,
.stickyHeader-on #mainMenu #mainMenu-root > .mainMenu-link:after {
    border-top: 2px solid var(--corp);
    border-bottom: 2px solid var(--corp);
}
.stickyHeader-on body.mainMenu-on #mainMenu #mainMenu-root > .mainMenu-link:before,
.stickyHeader-on body.mainMenu-on  #mainMenu #mainMenu-root > .mainMenu-link:after {
    border-top: 1px solid var(--corp);
    border-bottom: 1px solid var(--corp);
}

.stickyHeader-on .stickyHeader,
.stickyHeader-off .stickyHeader {
    position: fixed;
}
.stickyHeader-off-desact .stickyHeader {
    position: absolute;
}

.stickyHeader #header-logo {
    display: none;
}
.stickyHeader-on .stickyHeader #header-logo {
    display: block;
}

.duaLazy {
    transform: translate(0,0);
    transition: all 1s ease-out;
}

/*cabecera*/
header {
    width: 100%;
    color: var(--black);
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;
}

#hero,
#hero #hero-cont {
    position: relative;
}
#hero {
    min-height: var(--vh);
    padding: 25rem 0;
    color: var(--black);
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}
#hero picture {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
#hero picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}


#hero .section-tit1 {
    color: var(--corp);
}
#hero h2 {
    font-weight: 400;
}

#nosotros .flex-lg .blq-txt p {
    margin-bottom: 4.5rem;
}

#productos .duaCarousel .duaCarousel-row {
    display: -webkit-flex;
    display: flex;
    /*-webkit-align-items: center;
    align-items: center;*/
}
#productos .duaCarousel .duaCarousel-row {
    margin-left: -2.5rem;
    margin-right: -2.5rem;
}
#productos .duaCarousel .duaCarousel-row .duaCarousel-col {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
}
#productos .producto {
    padding: 5rem 5rem 10rem;
    height: 100%;
    box-shadow: 0 0 1.25rem rgba(0,0,0,0.3);
    border-radius: 1rem;
}
#productos .producto .icono {
    width: 25rem;
    margin-bottom: 1rem;
}
#productos .producto .section-tit3 {
    width: 46rem;
    min-height: 8rem;
    margin-bottom: 3.75rem;
}

#servicios .bg-corp {
    background-color: var(--corp2opac);
    position: relative;
}
#servicios .flex-lg:before,
#servicios .flex-lg:after {
    content: '';
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
}
#servicios .flex-lg:before {
    background-image: url('../../images/iconos/burbujas1.svg');
}
#servicios .blq-txt .section-tit2 {
    margin-bottom: 12rem;
}

#servicios .duaMarquee .duaMarquee-track {
    overflow: hidden;
}
#servicios .duaMarquee .duaMarquee-slider,
#servicios .duaMarquee .duaMarquee-row {
    position: relative;
}
#servicios .duaMarquee .duaMarquee-row {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
    display: -webkit-flex;
    display: flex;
    /*-webkit-align-items: center;
    align-items: center;*/
}
#servicios .duaMarquee .duaMarquee-col {
    width: 33rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    -webkit-flex: 0 0 33rem;
    flex: 0 0 33rem;
}
#servicios .duaMarquee .duaMarquee-col .marca-cont {
    padding: 3rem;
    height: 30rem;
    background-color: white;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}
#servicios .duaMarquee .duaMarquee-col a {
    display: block;
}
#servicios .duaMarquee-off .duaMarquee-row {
    -webkit-justify-content: center;
    justify-content: center;
}
#servicios .duaMarquee picture {
    margin-top: auto;
    margin-bottom: auto;
}
#servicios .duaMarquee .post-cont {
    text-align: center;
}
#servicios .duaMarquee .marca-distribuidor {
    margin-top: 2rem;
    margin-bottom: 0;
    color: var(--corp);
    font-size: 3.5rem;
    font-weight: 700;
    line-height: 1.0;
}

#sectores .flex {
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
#sectores .sector {
    text-align: center;
}
#sectores .sector .section-tit3 {
    margin-bottom: 0;
    line-height: 1.2;
}

#medioambiente,
#medioambiente .container {
    position: relative;
}
#medioambiente {
    padding: 25rem 0 32.5rem;
    color: white;
}
#medioambiente .section-tit2 {
    margin-bottom: 0;
}
#medioambiente picture,
#medioambiente picture:before {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
#medioambiente picture:before {
    content: '';
    background-color: rgba(28,33,36,0.3);
}
#medioambiente picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

#contacto .blq-txt {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
}
#contacto .contacto-direcc {
    width: 42.5rem;
}
#contacto .contacto-direcc p {
    margin-bottom: 0;
}
#contacto .contacto-direcc .txt-corp2 {
    font-size: 4.5rem;
}


@media (min-width: 1200px) {
    #mainMenu nav .mainMenu-link,
    #mainMenu nav .mainMenu-subk {
        background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, transparent), color-stop(50%, white));
        background-image: linear-gradient(to right, transparent 50%, white 50%);
    }
    .stickyHeader-on #mainMenu .mainMenu-link,
    .stickyHeader-on #mainMenu .mainMenu-sub {
        color: var(--corp);
    }
    .stickyHeader-on #mainMenu .mainMenu-link:focus,
    .stickyHeader-on .desktop #mainMenu .mainMenu-link:hover,
    .stickyHeader-on #mainMenu .mainMenu-elem-act > .mainMenu-link,
    .stickyHeader-on #mainMenu .mainMenu-elem-act > .mainMenu-sub {
        color: var(--corp);
    }
    .stickyHeader-on #mainMenu nav .mainMenu-link,
    .stickyHeader-on #mainMenu nav .mainMenu-sub {
        background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, transparent), color-stop(50%, var(--corp)));
        background-image: linear-gradient(to right, transparent 50%, var(--corp) 50%);
    }
    #mainMenu nav .mainMenu-link:hover,
    #mainMenu nav .mainMenu-link:focus,
    #mainMenu nav .mainMenu-sub:hover,
    #mainMenu nav .mainMenu-sub:focus,
    #mainMenu nav .mainMenu-elem-act .mainMenu-sub {
        color: white;
    }
    .stickyHeader-on #mainMenu nav .mainMenu-link:hover,
    .stickyHeader-on #mainMenu nav .mainMenu-link:focus,
    .stickyHeader-on #mainMenu nav .mainMenu-sub:hover,
    .stickyHeader-on #mainMenu nav .mainMenu-sub:focus,
    .stickyHeader-on #mainMenu nav .mainMenu-elem-act .mainMenu-sub {
        color: var(--corp);
    }

    #hero-logo {
        width: 80.5rem;
        margin-bottom: 6.5rem;
    }
    #hero .section-tit1 {
        margin-bottom: 9rem;
    }
    #hero #hero-scroll {
        width: 6rem;
        height: 10rem;
        border: 0.25rem solid white;
        border-radius: 3rem;
        position: absolute;
        bottom: 7.5rem;
        left: 50%;
        transform: translateX(-50%);
    }
    #hero #hero-scroll:before {
        content: '';
        width: 1.25rem;
        height: 1.25rem;
        border-radius: 50%;
        margin: 1.5rem auto 0;
        background-color: white;
        display: block;
        animation-name: scroll;
        animation-duration: 1.5s;
        animation-iteration-count: infinite;
    }
    @keyframes scroll {
        0% {
            margin-top: 1.5rem;
            opacity: 1;
        }
        50% {
            opacity: 1;
        }
        to {
            margin-top: 4rem;
            opacity: 0;
        }
    }

    #nosotros .flex-lg .blq-img {
        width: 158.25rem;
        margin-left: 15.125rem;
        -webkit-flex: 0 0 158.25rem;
        flex: 0 0 158.25rem;
    }
    #nosotros .flex-lg .blq-img picture {
        width: 100%;
    }
    #nosotros .flex-lg .blq-txt,
    #servicios .flex-lg .blq-txt,
    #contacto .blq-txt {
        -webkit-flex-grow: 1;
        flex-grow: 1;
    }

    #productos .container {
        margin-top: -33rem;
    }
    #productos .duaCarousel .duaCarousel-row {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    #productos .duaCarousel .duaCarousel-row .duaCarousel-col {
        margin-bottom: 5rem;
    }

    #servicios {
        margin-top: 10rem;
    }
    #servicios .bg-corp {
        padding-top: 8.5rem;
        padding-bottom: 26.25rem;
    }
    #servicios .flex-lg {
        -webkit-align-items: flex-end;
        align-items: flex-end;
    }
    #servicios .flex-lg:before {
        width: 69.75rem;
        height: 74.25rem;
        left: calc(50% + 147.75rem);
        top: 6.75rem;
    }
    #servicios .flex-lg:after {
        width: 69.5rem;
        height: 68.25rem;
        background-image: url('../../images/iconos/burbujas2.svg');
        right: calc(50% + 122rem);
        bottom: 10rem;
    }
    #servicios .flex-lg .blq-img {
        width: 171rem;
        margin-right: 16.5rem;
        -webkit-flex: 0 0 171rem;
        flex: 0 0 171rem;
    }
    #servicios .flex-lg .blq-img picture {
        width: 100%;
    }
    #servicios .blq-txt {
        margin-right: 29rem;
    }
    #servicios .blq-txt p:last-of-type {
        margin-bottom: 9rem;
    }
    #servicios .duaMarquee {
        margin-top: -16.5rem;
    }
    #contacto .section-cont-lg {
        margin-right: 29rem;
    }
    #contacto .blq-form {
        width: 171rem;
        margin-left: 33.5rem;
        -webkit-flex: 0 0 171rem;
        flex: 0 0 171rem;
    }
    #contacto .contacto-direcc {
        margin-top: auto;
    }
    #contacto .mapa {
        height: 125rem;
    }
}
@media (max-width: 1199px) {
    #nosotros {
        position: relative;
    }
    #nosotros:before {
        content: '';
        background-image: url('../../images/iconos/burbujas2.svg');
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center center;
        position: absolute;
    }
    #nosotros .flex-lg .blq-txt picture {
        position: relative;
    }
    #nosotros .flex-lg .blq-txt picture:before {
        content: '';
        background-image: url('../../images/iconos/sello-proquides.svg');
        background-size: contain;
        background-position: center center;
        background-repeat: no-repeat;
        position: absolute;
        top: 0;
        transform: translateY(-50%);
    }

    #productos .duaCarousel,
    #productos .duaCarousel .duaCarousel-track,
    #productos .duaCarousel .duaCarousel-row {
        /*margin-bottom: 17rem;*/
        position: relative;
    }
    #productos .duaCarousel .duaCarousel-track {
        overflow: hidden;
    }
    #productos .duaCarousel.duaCarousel-overflow .duaCarousel-track {
        overflow: visible;
    }
    #productos .duaCarousel .duaCarousel-col {
        -webkit-flex-grow: 0;
        flex-grow: 0;
        -webkit-flex-shrink: 0;
        flex-shrink: 0;
    }
    #productos .duaCarousel .duaCarousel-prev,
    #productos .duaCarousel .duaCarousel-next,
    #productos .duaCarousel .duaCarousel-pager {
        position: absolute;
    }
    #productos .duaCarousel .duaCarousel-prev,
    #productos .duaCarousel .duaCarousel-next,
    #productos .duaCarousel .duaCarousel-pager .duaCarousel-page {
        cursor: pointer;
    }

    /* CUSTOM comun */
    #productos .duaCarousel .duaCarousel-prev,
    #productos .duaCarousel .duaCarousel-next {
        color: var(--corp);
        z-index: 1;
    }
    #productos .duaCarousel .duaCarousel-prev:hover,
    #productos .duaCarousel .duaCarousel-next:hover {
        color: var(--corp2);
    }
    #productos .duaCarousel .duaCarousel-handlerOff {
        color: #dbdbdb!important;
    }
    #productos .duaCarousel .duaCarousel-pager {
        width: 100%;
        bottom: -2.25rem;
        left: 0;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
    }
    #productos .duaCarousel .duaCarousel-pager .duaCarousel-page {
        width: 2rem;
        height: 2rem;
        border-radius: 50%;
        background-color: #dbdbdb;
    }
    #productos .duaCarousel .duaCarousel-pager .duaCarousel-page:hover {
        background-color: var(--corp2);
    }
    #productos .duaCarousel .duaCarousel-pager .duaCarousel-page-act {
        background-color: var(--corp);
    }
    #productos .duaCarousel .duaCarousel-pager .duaCarousel-page + .duaCarousel-page {
        margin-left: 1.25rem;
    }

    #productos .duaCarousel.duaCarousel-horizontal .duaCarousel-prev,
    #productos .duaCarousel.duaCarousel-horizontal .duaCarousel-next {
        font-size: 8rem;
        line-height: 0.8;
        top: 100%;
        transform: translateY(-50%);
    }
    #productos .duaCarousel.duaCarousel-horizontal .duaCarousel-prev {
        left: 0;
    }
    #productos .duaCarousel.duaCarousel-horizontal .duaCarousel-next {
        right: 0;
    }
    #productos .duaCarousel.duaCarousel-horizontal .duaCarousel-prev:after,
    #productos .duaCarousel.duaCarousel-horizontal .duaCarousel-next:after {
        font-family: 'Material Design Icons';
    }
    #productos .duaCarousel.duaCarousel-horizontal .duaCarousel-prev:after {
        content: '\F04D';
    }
    #productos .duaCarousel.duaCarousel-horizontal .duaCarousel-next:after {
        content: '\F054';
    }

    #servicios .bg-corp {
        padding-top: 12.5rem;
    }
    #servicios .flex-lg .blq-txt picture {
        position: relative;
        z-index: 1;
    }
    #servicios .flex-lg .blq-txt picture:after {
        content: '';
        background-image: url('../../images/iconos/burbujas2.svg');
        background-size: contain;
        background-position: center center;
        background-repeat: no-repeat;
        position: absolute;
        z-index: -1;
    }
    #servicios .duaMarquee {
        margin-top: -22.5rem;
    }

    #sectores .flex {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    #contacto .blq-form .btn {
        width: 100%;
        margin-top: 2.5rem;
    }
    #contacto .contacto-direcc .txt-corp2 {
        text-transform: uppercase;
    }
    #contacto .mapa {
        height: 150rem;
    }
}
@media (min-width: 768px) and (max-width: 1199px) {
    #hero-logo {
        width: 85rem;
        margin-bottom: 4.5rem;
    }
    #hero .section-tit1 {
        margin-bottom: 6rem;
    }
    #nosotros:before {
        width: 50rem;
        height: 50rem;
        left: calc(50% + 63.5rem);
        top: -7.5rem;
    }
    #nosotros .flex-lg .blq-txt picture {
        margin-top: 18rem;
        margin-bottom: 5rem;
    }
    #nosotros .flex-lg .blq-txt picture:before {
        width: 31.5rem;
        height: 31.5rem;
        right: 7.5rem;
    }
    #productos {
        margin-top: 16.25rem;
    }
    #productos .duaCarousel {
        padding-bottom: 17rem;
    }
    #servicios {
        margin-top: 15rem;
    }
    #servicios .bg-corp {
        padding-bottom: 32rem;
    }
    #servicios .flex-lg:before {
        width: 47rem;
        height: 50rem;
        left: calc(50% + 42.5rem);
        top: 10rem;
    }
    #servicios .flex-lg .blq-txt picture {
        margin-bottom: 3rem;
    }
    #servicios .flex-lg .blq-txt picture:after {
        width: 51.5rem;
        height: 50.5rem;
        left: -12.5rem;
        bottom: 0;
    }
    #servicios .flex-lg .blq-txt p {
         line-height: 5rem;
    }
    #servicios .blq-txt p:last-of-type {
        margin-bottom: 7rem;
    }

    #contacto .blq-form {
        width: 80.25rem;
        margin-left: 8.5rem;
        -webkit-flex: 0 0 80.25rem;
        flex: 0 0 80.25rem;
    }
    #contacto .contacto-direcc {
        margin-top: 20rem;
    }
}
@media (min-width: 768px) {
    #hero .section-tit1,
    #hero h2 {
        width: 115rem;
        max-width: 100%;
    }
    #hero h2 {
        font-size: 5rem;
    }
    #hero #hero-contacto {
        margin-top: 9.5rem;
    }

    #nosotros,
    #sectores,
    #medioambiente,
    #contacto .mapa {
        margin-top: 15rem;
    }
    #productos .duaCarousel .duaCarousel-col {
        width: 86rem;
        -webkit-flex-basis: 86rem;
        flex-basis: 86rem;
    }
    #servicios .blq-txt p {
        margin-bottom: 4rem;
    }
    #sectores .section-pretit + .section-tit2 {
        width: 120rem;
    }
    #sectores .sector {
        width: 45rem;
        -webkit-flex: 0 0 45rem;
        flex: 0 0 45rem;
    }
    #sectores .sector .icono {
        width: 25rem;
        margin-bottom: 6.5rem;
    }
    #medioambiente .section-tit2 {
        width: 120rem;
    }
    #contacto {
        margin-top: 21rem;
    }
    #contacto .blq-txt .section-tit2 {
        margin-bottom: 9rem;
        font-size: 13.5rem;
    }
    #contacto .blq-txt #contacto-tlf {
        font-size: 8rem;
    }
    #contacto .blq-txt #contacto-email {
        font-size: 6rem;
    }
}
@media (max-width: 767px) {
    #hero-logo {
        width: 63.25rem;
        margin-bottom: 2.5rem;
    }
    #hero .section-tit1 {
        margin-bottom: 4rem;
    }
    #hero h2 {
        font-size: 3.5rem;
    }
    #hero #hero-contacto {
        margin-top: 7.5rem;
    }

    #nosotros,
    #sectores,
    #medioambiente,
    #contacto .mapa {
        margin-top: 10rem;
    }

    #nosotros:before {
        width: 37.5rem;
        height: 37.5rem;
        left: calc(50% + 26.25rem);
        top: -9.5rem;
    }
    #nosotros .flex-lg .blq-txt picture {
        margin: 7.5rem -5rem 5rem;
    }
    #nosotros .flex-lg .blq-txt picture:before {
        width: 20rem;
        height: 20rem;
        right: 5rem;
    }
    #productos {
        margin-top: 6.25rem;
    }
    #productos .duaCarousel {
        padding-bottom: 8rem;
    }
    #productos .duaCarousel .duaCarousel-col {
        width: 81rem;
        -webkit-flex-basis: 81rem;
        flex-basis: 81rem;
    }
    #servicios {
        margin-top: 12rem;
    }
    #servicios .bg-corp {
        padding-bottom: 38rem;
    }
    #servicios .flex-lg:before {
        width: 28.25rem;
        height: 30rem;
        left: calc(50% + 29.25rem);
        top: 7.5rem;
    }
    #servicios .flex-lg .blq-txt picture {
        margin-bottom: 5rem;
    }
    #servicios .flex-lg .blq-txt picture:after {
        width: 29.75rem;
        height: 29.25rem;
        left: -10.25rem;
        bottom: 0;
    }
    #servicios .blq-txt p {
        margin-bottom: 10rem;
    }
    #servicios .flex-lg .blq-txt p {
        margin-bottom: 7.5rem
    }

    #sectores .sector {
        width: 25rem;
        -webkit-flex: 0 0 25rem;
        flex: 0 0 25rem;
    }
    #sectores .flex .sector:nth-of-type(n+4) {
        margin-top: 10rem;
    }
    #sectores .sector .icono {
        width: 15rem;
        margin-bottom: 4.5rem;
    }
    #sectores .sector .section-tit3 {
        font-size: 3.5rem;
    }
    #sectores .flex .sector:nth-of-type(n+4) {
        margin-top: 4rem;
    }

    #contacto {
        margin-top: 12.5rem;
    }
    #contacto .blq-txt .section-tit2 {
        margin-bottom: 3rem;
        font-size: 9rem;
    }
    #contacto .blq-txt #contacto-tlf {
        margin-bottom: 2rem;
        font-size: 5.5rem;
    }
    #contacto .blq-txt #contacto-email {
        font-size: 4.5rem;
    }
    #contacto .blq-form {
        margin-top: 7.5rem;
    }
    #contacto .blq-form .form-obligatorios {
        margin-top: 10rem;
    }
    #contacto .contacto-direcc {
        margin-top: 10rem;
    }
}
