.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 .calling-code {
        display: none;
    }

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

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

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

.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 {
    margin-bottom: 20px;

    line-height: 1.5em;
}

    .rich-text a {
        color: #f8a037;
    }
    
    .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;
        }

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

.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[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;
}

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

.noticia {
    padding: 20px;
    margin-bottom: 20px;
    background-color: #fff;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
}

    .noticia .photo {
        width: 200px;
        height: auto;
        float: left;
        margin-right: 20px;
    }

    .noticia .photo + h2 {
        margin-top: 0px;
        text-align: left;
    }

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

.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: 16.666%;
}

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

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

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

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

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

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

.compartilhar {
    margin-bottom: 20px;
}

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

.responsive-table {
    overflow-x: auto;
}

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

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

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

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

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

.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;}
}

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

.itens-em-orcamento.carregando:after, 
.itens-em-orcamento.carregado:after {
    top: -25px;
}

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

.produto {
    width: 225px;
    max-width: 100%;
    margin-bottom: 45px;
    text-align: center;
}

    .produto .photo {
        width: 100%;
        height: auto;
        border: solid 1px #dadada;
        border-radius: 5px;
        margin-bottom: 15px;
    }

    .produto .titulo {
        min-height: 3.9em;
        margin-bottom: 10px;
        font-family: 'eras-medium';
        font-size: 16px;
        line-height: 1.3em;
    }

    .produto .button-like {
        width: auto;
        margin-right: auto;
    }

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

.depoimento {
    margin-bottom: 20px;
    text-align: center;
}

    .depoimento .nome {
        margin-bottom: 10px;
        text-align: center;
        font-size: 24px;
        line-height: 30px;
    }

    .depoimento .avaliacao {
        margin-bottom: 10px;
        font-size: 30px;
        line-height: 1em;
        color: #f0af15;
    }

    .depoimento .conteudo {
        text-align: justify;
        font-style: italic;
    }

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

.promocao {
    margin-bottom: 60px;
}

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

    .promocao .titulo {
        font-size: 26px;
        line-height: 1.3em;
        text-align: center;
    }

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

.cliente {
    margin-bottom: 20px;
}

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

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

.num-input {
    width: 120px;
    margin-bottom: 10px;
    font-size: 0px;
    line-height: 0px;
}
    .num-input input {
        min-width: 0px;
        width: calc(100% - 66px);
        border-left: none;
        border-right: none;
        border-radius: 0px;

        margin-right: 0px;
        margin-bottom: 0px;
        text-align: center;

        font-size: 16px;
        line-height: 1.4em;
    }

    .num-input .button-like {
        width: 33px;
        min-width: 0px;
        
        padding-left: 5px;
        padding-right: 5px;
        border-color: #71c2f5;

        margin-right: 0px;
        margin-bottom: 0px;

        color: #fff;

        background-color: #71c2f5;
    }

    .num-input .button-like.subtract {
        border-radius: 3px 0px 0px 3px;
    }

    .num-input .button-like.add {
        border-radius: 0px 3px 3px 0px;
    }

td .num-input {
    margin-bottom: 0px;
}