.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, 
.fancybox-button--fullscreen, 
.fancybox-button--close {
    box-shadow: none;
}

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

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

    .rich-text *[style*="font-size"] {
        line-height: 1.5em;
    }

    .rich-text b, 
    .rich-text strong {
        color: inherit;
    }

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

    .rich-text img {
        max-width: 100%;
        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 {
    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: 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: 20%;
}

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

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

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

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

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

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

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

.slick-next, 
.slick-prev {
    min-width: 0px;
    border: none;
    margin-right: 0px;
    box-shadow: none;
}

.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 li button {
    min-width: 0px;
    box-shadow: none;
}

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

.album {
    margin-bottom: 20px;
}

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

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

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

    .album-home .photo {
        width: 100%;
        height: auto;
    }

    .album-home .titulo {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        position: absolute;
        left: 0px;
        top: 0px;
        width: 100%;
        height: 100%;
        text-align: center;
    }

        .album-home .titulo span {
            padding: 40px 15px;
            color: #fff;
            background-color: rgba(0, 0, 0, 0.45);
        }

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

.video {
    width: 470px;
    max-width: 100%;
    margin-bottom: 40px;
}

    .video iframe {
        z-index: 10;
        width: 100%;
    }

    .video .photo {
        width: 100%;
        height: auto;
        margin-bottom: 20px;
    }

    .video .overlay {
        opacity: 0;
        display: flex;
        position: absolute;
        left: 0px;
        top: 0px;
        width: 100%;
        height: 100%;
        align-items: center;
        background: rgba(0, 0, 0, 0.8);
        transition-duration: 0.5s;
        transition-property: opacity;
    }
    .video:hover .overlay {
        opacity: 1;
    }

        .video .overlay a {
            opacity: 0.5;
            display: block;
            width: 100px;
            height: auto;
            padding-top: 110px;
            text-align: center;
            color: #fff;
            background-image: url(../images/play.png);
            background-size: 100%;
            transition-duration: 0.5s;
            transition-property: opacity;
        }

        .video .overlay a:hover {
            opacity: 1;
        }

        .video .overlay a:last-child {
            background-image: url(../images/new-window.png);            
        }

        .video .titulo {
            opacity: 1;
            transition-duration: 0.5s;
            transition-property: opacity;
            background-color: rgba(0, 0, 0, 0.7);
        }

        .video:hover .titulo {
            opacity: 0;
        }

.video .titulo, 
.album .titulo {
    position: absolute;
    left: 0px;
    bottom: 0px;
    padding: 5px;
    font-size: 18px;
    line-height: 1.3em;
    color: #fff;
}

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

.pesquisa-de-modelos.flex .linha {
    display: flex;
    margin-bottom: 10px;
    line-height: 34px;
}

    .pesquisa-de-modelos.flex .linha .a {
        padding: 0px 5px;
    }

    .pesquisa-de-modelos.flex .linha label {
        min-width: 85px;
        width: 85px;
        margin: 0px;
    }

    .pesquisa-de-modelos.flex .linha input, 
    .pesquisa-de-modelos.flex .linha select {
        flex-grow: 1;
        min-width: 0px;
        width: auto;
        margin: 0px;
    }

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

.pesquisa-de-modelos.em-linha {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 20px;
}

    .pesquisa-de-modelos.em-linha .linha {
        display: block;
        width: auto;
        margin: 0px 5px 5px 0px;
    }

    .pesquisa-de-modelos.em-linha .linha:nth-child(2n+0) {
        margin-right: 0px;
    }

        .pesquisa-de-modelos.em-linha label {
            min-width: 0px;
            width: auto;
            margin-bottom: 0px;
        }

        .pesquisa-de-modelos.em-linha input, 
        .pesquisa-de-modelos.em-linha select {
            min-width: 0px;
            width: 100px;
            margin-right: 0px;
            margin-bottom: 0px;
        }

        .pesquisa-de-modelos.em-linha input[type='number'] {
            width: 60px;
        }

        .pesquisa-de-modelos.em-linha input[type='submit'] {
            padding: 8px
        }

        .pesquisa-de-modelos.em-linha .a {
            display: inline-block;
            vertical-align: top;
            width: auto;
            padding: 0px 3px;
            line-height: 34px;
        }

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

.teste, 
.caca-talento {
    width: 500px;
    max-width: 100%;
    min-height: 200px;
    height: 100%;
    padding: 20px;
    margin-bottom: 20px;
    font-family: 300;
    line-height: 1.5em;
    background-color: #fff;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15)
}

    .teste .titulo, 
    .caca-talento .titulo {
        padding-bottom: 10px;
        border-bottom: solid 1px #f26522;
        margin-bottom: 20px;
        font-size: 24px;
        line-height: 1em;
    }

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

.dica, 
.evento {
    width: 550px;
    max-width: 100%;
    margin-bottom: 20px;
    font-weight: 300;
}

    .dica .photo, 
    .evento .photo {
        width: 100%;
        height: auto;
    }

    .dica .conteudo, 
    .evento .conteudo {
        position: absolute;
        left: 0px;
        bottom: 0px;
        width: 100%;
        padding: 20px;
    }

        .dica .titulo, 
        .evento .titulo {
            font-size: 18px;
            line-height: 1.3em;
            font-weight: 700;
        }

        .dica .introducao, 
        .evento .introducao {
            margin-top: 5px;
            line-height: 1.8em;
        }

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

    .evento .data {
        font-size: 12px;
        line-height: 1.3em;
    }

    .evento .conteudo {
        color: #fff;
        background-color: rgba(0, 0, 0, 0.8);
    }

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

    .dica .photo, 
    .dica .conteudo {
        transition-duration: 0.3s;
        transition-property: opacity;
    }

    .dica .photo {
        opacity: 1;
    }

    .dica:hover .photo {
        opacity: 0.20;
    }

    .dica .conteudo {
        opacity: 0;
    }

    .dica:hover .conteudo {
        opacity: 1;
    }

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

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

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

        -ms-filter: grayscale(1);
        -moz-filter: grayscale(0%);
        -webkit-filter: grayscale(1);

        -ms-transition-property: -ms-filter, box-shadow;
        -ms-transition-duration: 0.3s;

        -moz-transition-property: -moz-filter, box-shadow;
        -moz-transition-duration: 0.3s;

        -webkit-transition-property: -webkit-filter, box-shadow;
        -webkit-transition-duration: 0.3s;
    }


    .modelo .titulo {
        opacity: 0;
        position: absolute;
        left: 0px;
        right: 0px;
        bottom: 20px;
        padding: 10px 5px;
        margin: auto;
        max-width: calc(100% - 40px);
        font-size: 16px;
        line-height: 1.3em;
        color: #fff;
        background-color: rgba(0, 0, 0, 0.5);

        -ms-transition-property: opacity;
        -ms-transition-duration: 0.3s;

        -moz-transition-property: opacity;
        -moz-transition-duration: 0.3s;

        -webkit-transition-property: opacity;
        -webkit-transition-duration: 0.3s;
    }

    .modelo:hover .photo {
        -ms-filter: grayscale(0);
        -moz-filter: grayscale(100%);
        -webkit-filter: grayscale(0);

        box-shadow: 0px 0px 10px #fce3c4;
    }

    .modelo:hover .titulo {
        opacity: 1;
    }

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

.logo-faro {
    padding: 7px 0px;
}

    .logo-faro .texto {
        padding-top: 9px;
        font-family: 'Oswald';
        text-align: center;
        font-size: 24px;
        line-height: 1em;
    }
        .logo-faro .faro {
            font-weight: 400;
            color: #fff;
        }

        .logo-faro .sc {
            color: #E67817;
            font-weight: 300;
            font-size: 1.02em;
            line-height: 1em;
        }
        
/*------------------------------------*/

input.negativo, 
.button-like.negativo {
    border: solid 1px #F06292;
    color: #fff;
    background-image: none;
    background-color: #F06292;
    box-shadow: none;
}

input.positivo, 
.button-like.positivo {
    border: solid 1px #2ECC71;
    color: #fff;
    background-image: none;
    background-color: #2ECC71;
    box-shadow: none;
}

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

.paginacao {
    list-style: none;
    text-align: center;
}
    
    .paginacao li {
        display: inline-block;
        vertical-align: top;
        width: auto;
        margin: 0px 0px 0px -1px;
    }

    .paginacao a {
        display: block;
        min-width: 30px;
        padding: 5px;
        text-align: center;
        border: solid 1px #e5782f;
    }

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

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

.campos + .acao-positiva {
    width: 100%;
}

.campos {
    margin-bottom: 20px;
    background-color: #ddd
}

    .campo {
        padding: 10px;
    }
    .campo:nth-child(2n+0) {
        background-color: #bbb
    }

        .campo label {
            min-width: 0px;
            width: auto;
            margin-bottom: 0px;
        }

        .campo .opcoes, 
        .campo input[type=text] {
            width: calc(100% - 54px);
        }

        .campo input[type=checkbox] {
            width: 20px;
            margin-bottom: 0px;
        }
        .campo input[type=text], 
        .campo select {
            min-width: 0px;
            margin-bottom: 0px;
        }

        .campo .opcoes {
            margin-top: 5px;
        }

        .campo .remover {           
            position: absolute;
            right: 10px;
            top: 10px;
            width: 34px;
            min-width: 0px;
            min-height: calc(100% - 20px);
            margin-top: 0px;
        }

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

.campo.idioma input[type=text], 
.campo.idioma select {
    width: calc((100% - 74px) / 2);
    margin-bottom: 0px;
}

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

.fancybox-navigation {
    position: static;
}

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

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

input.carregando {
    background-image: url(../images/loading.gif);
    background-position: 5px center;
    padding-left: 30px;
}