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

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

.flexy {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

    .flexy > * {
        margin: 0px;
    }

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

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

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

.compartilhar {
    margin-bottom: 20px;
}

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

.social-icon {
    width: 30px;
    height: 30px;
    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 + .social-icon {
    margin-left: 10px;
}

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

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

.servico {
    width: 300px;
    max-width: 100%;
    margin-bottom: 20px;
    text-align: center;
}

    .servico .photo {
        width: 100%;
        height: auto;
        border: solid 2px #fff;
        border-radius: 5px;
        margin-bottom: 15px;
    }

    .servico .titulo {
        margin-bottom: 10px;
        font-size: 20px;
        line-height: 1.3em;
    }

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

.album {
    width: 300px;
    max-width: 100%;
    margin-bottom: 20px;
    text-align: center;
}

    .album .photo {
        width: 100%;
        height: auto;
        border: solid 2px #fff;
        border-radius: 5px;
        margin-bottom: 15px;
    }

    .album .titulo {
        margin-bottom: 10px;
        font-size: 20px;
        line-height: 1.3em;
    }

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

.certificado {
    margin-bottom: 20px;
}

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

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