.fade-off {
    z-index: 1;
    opacity: 0;
    -moz-transition-property: opacity; 
    -webkit-transition-property: opacity;
    -o-transition-property: opacity;
    
    -moz-transition-duration: 1s;
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
}

.fade-on {
    z-index: 10;
    opacity: 1 !important;
    -moz-transition-property: opacity; 
    -webkit-transition-property: opacity;
    -o-transition-property: opacity;
    
    -moz-transition-duration: 1s;
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
}

.text-right {
    text-align: right;
}

.text-left {
    text-align: left;
}

.text-center {
    text-align: center;
}

/*----------------------------*/

.clear {
    clear: both;
}

/*----------------------------*/

.cem-porcento {
    width: 100%;
}

/*----------------------------*/

.justify-columns {
    text-align: justify;
    font-size: 0px;
    line-height: 0px;
}
.justify-columns:after {
    display: inline-block;
    width: 100%;
    content: '';
}

/*----------------------------*/

.overflow-hide {
    overflow: hidden;
}

/*----------------------------*/

.telefone {
    display: inline-block;
    vertical-align: top;
    width: auto;
}

    .telefone * {
        display: inline-block;
        font-size: inherit;
        line-height: inherit;
    }

    .telefone .calling-code {
        display: none;
    }

    .telefone .area-code:before {
        content: '(';
    }

    .telefone .area-code:after {
        content: ')';
    }

.telefone.whatsapp:after {
    display: inline-block;
    width: 1em;
    height: 1em;
    content: '';
    background-image: url(../images/whatsapp.png);
    background-size: 100%;
    background-repeat: no-repeat;
}

.telefone.whatsapp:hover .subscriber-number {
    text-decoration: underline;
}

/*----------------------------*/

.fancybox-container, 
.fancybox-container * {
    position: static;
}

.fancybox-button, 
.fancybox-arrow {
    min-width: 0px;
}

.fancybox-bg {
    background-color: #363233 !important; 
}
.fancybox-is-open .fancybox-bg {
    opacity: 1 !important;
}

.fancybox-arrow--left, 
.fancybox-arrow--right {
    box-shadow: none;
}

/*----------------------------*/

.rich-text {
    font-weight: 300;
    margin-bottom: 20px;
    line-height: 1.5em;
}

    .rich-text a {
        color: #0e5f88;
    }
    
    .rich-text a:hover {
        text-decoration: underline;
    }

    .rich-text img {
        max-width: auto;
        height: auto !important
    }

    .rich-text ul {
        padding-left: 15px;
    }

        .rich-text ul li {
            list-style-position: outside;
        }

    .rich-text img {
        z-index: 50;
    }

/*--------------------------------------------*/

.galeria {}

    .galeria li {
        margin-top: 0px;
        margin-bottom: 20px;
    }

    .galeria .photo {
        width: 100%;
        height: auto;
    }

/*--------------------------------------------*/

p.erro, 
p.sucesso {
    padding: 5px;
    padding-left: 10px;
    font-size: 14px;
    line-height: 1.3em;
}

p.erro {    
    border: solid 1px #ebccd1;
    color: #a94442;
    background-color: #f2dede;  
}

p.sucesso {
    border: solid 1px #D0EBCC;
    color: #6EA942;
    background-color: #DFF2DE;      
}

/*------------------------------------*/

.formulario {
    width: 960px;
    max-width: 100%;
}
    
    .formulario input, 
    .formulario textarea, 
    .formulario select, 
    .formulario label, 
    .formulario button {
        width: 100%;
        margin-right: 0px;
    }

    .formulario label + input, 
    .formulario label + textarea, 
    .formulario label + select, 
    .formulario label + label, 
    .formulario label + button, 
    .formulario label + textarea + .cke {
        margin-top: -14px;
    }

    .formulario input.ddd {
        width: 50px;
        min-width: 0px;
        margin-right: 10px;
    }

    .formulario .ddd + input {
        width: calc(100% - 60px);
        margin-top: -14px;
    }

    .formulario input[type=checkbox], 
    .formulario input[type=radio] {
        width: 20px;
        margin-right: 5px;
    }

    .formulario label + input[type=checkbox], 
    .formulario label + input[type=radio] {
        margin-top: 8px;
    }

    .formulario input[type=checkbox] + label, 
    .formulario input[type=radio] + label {
        width: calc(100% - 25px);
    }

    .formulario input[type=checkbox] + label + label, 
    .formulario input[type=radio] + label + label {
        margin-top: 0px;
    }

/*------------------------------------*/

.fb-like {
    margin-bottom: 20px;
}

/*------------------------------------*/

.compartilhar {
    margin-bottom: 20px;
}

/*------------------------------------*/

.social-icon {
    width: 25px;
    height: 25px;
    margin-right: 10px;
    font-size: 0px;
    line-height: 0px;
    background-image: url(../images/social-networks-sprite.png);
    background-size: auto 100%;
    background-position: top left;
    background-position: 0px 0px;
}

.social-icon.facebook {
    background-position-x: 0px;
}

.social-icon.twitter {
    background-position-x: 14.285%;
}

.social-icon.instagram {
    background-position-x: 28.57%;
}

.social-icon.youtube {
    background-position-x: 42.885%;
}

.social-icon.pinterest {
    background-position-x: 57.14%;
}

.social-icon.g-plus {
    background-position-x: 71.425%;
}

.social-icon.whatsapp {
    background-position-x: 85.71%;
}

.social-icon.linkedin {
    background-position-x: 100%;
}

/*------------------------------------*/

.slick-next, 
.slick-prev {
    min-width: 0px;
    border: none;
    margin-right: 0px;
    box-shadow: none;
    background-size: 100% !important;
}

.slick-tile {
    padding: 0px 10px;
}

/*-----------*/

.slick-flex .slick-track {
    display: flex !important;
    align-items: stretch;
}

.slick-flex .slick-slide {
    height: auto !important;
    float: none !important;
}

.slick-flex .slick-dots {
    position: relative;
    bottom: auto;
    padding: 20px;
    margin: 0px;
}

    .slick-flex .slick-dots li button {
        min-width: 0px;
        box-shadow: none;
    }

    .slick-flex .slick-dots li button:before {
        font-size: 16px;
    }

/*------------------------------------*/

.slider {
    margin-bottom: 20px;
}

    .slider-content {
        height: 500px;
    }

        .slider .slide {
            position: absolute;
            left: 0px;
            right: 0px;
            bottom: 0px;

            width: 100%;
            height: 100%;
            text-align: center;
        }

            .slider .slide .photo {
                width: 100%;
                height: 100%;
                text-align: center;
            }

                .slider .slide .photo img {
                    width: auto;
                    height: 100%;
                }

            .slider .texto {
                position: absolute;
                bottom: 60px;
                left: 0px;
                right: 0px;
                text-align: center;
            }

                .slider .texto .conteudo {
                    display: inline-block;
                    width: 510px;
                    max-width: 100%;
                    max-width: 100%;
                    padding: 24px 26px;

                    color: #fff;
                    font-size: 50px;
                    line-height: 1.3em;
                    font-family: 'Archer';
                    font-weight: 700;
                    text-align: center;
                    background-color: rgba(0, 0, 0, 0.5);
                }

                    .slide .texto .conteudo .bordas {
                        padding: 10px 45px;
                        border: solid 1px #fff;
                    }

/*------------------------------------*/

    .slider .botoes {
        position: absolute;
        bottom: 0px;
        right: 0px;
        z-index: 100;
        width: 100%;
        padding: 20px 40px 20px 20px;
        text-align: right;
    }

        .slider .botoes a {
            width: 15px;
            height: 15px;
            border-radius: 50px;
            border: solid 3px #fff;
            margin-left: 10px;
        }

         .slider .botoes a.atual {
            background-color: #fff;
         }

/*------------------------------------*/

.promocao {
    margin-bottom: 20px;
}

    .promocao .photo {
        width: 100%;
        height: auto;
    }

/*------------------------------------*/

.produto {
    height: 100%;
}

    .produto .photo {
        width: 100%;
        height: auto;
        margin-bottom: 10px;
    }

    .produto .titulo, 
    .produto .precos {
        margin-bottom: 5px;
    }

/*-----------*/

.produto.normal {
    padding-bottom: 33px;
}

    .produto.normal .titulo {
        font-weight: 300;
        font-size: 16px;
        line-height: 1.3em;
        color: #000
    }

    .produto.normal .adicionar {
        opacity: 0.1;
        position: absolute;
        bottom: 0px;
        left: 0px;
        width: 100%;
        transition-property: opacity;
        transition-duration: 0.3s;
    }

    .produto.normal:hover .adicionar {
        opacity: 1
    }

        .produto.normal .button-like {
            width: 100%;
            padding: 7px;
            border: solid 2px #59823f;
            margin: 0px;
            color: #59823f;
            font-size: 12px;
            line-height: 1.3em;
            font-family: 'Roboto';
            font-weight: 700;
            text-transform: uppercase;
            background-color: #fff;
        }

/*-----------*/

.produto.destaque {
    border: solid 6px #fff;
    background-color: #f4f4f4;
}

    .produto.destaque .photo {
        margin-bottom: 0px;
    }

    .produto.destaque .titulo {
        width: calc(100% - 50px);
        padding: 5px 0px 5px 5px;
        margin: 0px;
        font-size: 20px;
        line-height: 1em;
        color: #005e20;
        font-family: 'Archer';
        font-weight: 300;
    }

    .produto.destaque .adicionar {
        width: 50px;
        padding: 5px 5px 5px 0px;
        text-align: center;
    }

        .produto.destaque .button-like {
            width: 100%;
            height: auto;
            min-height: 0px;
            padding: 0px;
            border: none;
            margin: 0px;
            color: #005e20;
            font-size: 25px;
            line-height: 1em;
            background-color: transparent;
        }

/*------------------------------------*/

.album {
    padding: 10px;
    text-align: center;
    background-color: #fff;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15)
}

    .album .photo {
        width: 100%;
        height: 100%;
        margin-bottom: 10px;
    }

    .album .titulo {
        font-size: 18px;
        line-height: 1.3em;
    }

/*------------------------------------*/

.form-pesquisa input[type=search] {
    min-width: 0px;
    width: calc(100% - 120px);
    margin: 0px 20px 0px 0px;
}

.form-pesquisa input[type=submit] {
    min-width: 0px;
    width: 100px;
    margin: 0px;
}
    
/*------------------------------------*/

.paginacao {
    list-style: none;
    text-align: center;
}

    .paginacao li {
        display: inline-block;
        vertical-align: top;
        margin: 0px;
    }

    .paginacao a {
        display: block;
        padding: 10px;
        text-align: center;
        font-size: 16px;
        line-height: 1em;

        background-color: #e7e7e7;
    }

    .paginacao .selecionado a {
        color: #fff;
        background-color: #ebc40c;
    }

    .paginacao a:hover {
        color: #000;
        background-color: #f5e288 ;
    }

/*------------------------------------*/

.carregando:after, 
.carregado:after {
    display: block;
    position: absolute;
    right: 5px;
    top: 5px;
    z-index: 5;
    width: 20px;
    height: 20px;
    content: '';
    background-size: 100%;
    background-repeat: no-repeat;
}

.carregando:after {
    background-image: url(../images/loading.gif);
} 

.carregado:after {
    animation: fade 3s 1;
    background-image: url(../images/ok.png);
}

@keyframes fade {
    0% {opacity: 1;}
    80% {opacity: 1;}
    100% {opacity: 0;}
}