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

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

.compartilhar {
    margin-bottom: 20px;
}

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

.social-icon {
    width: 30px;
    height: 30px;
    border-radius: 50px;
    font-size: 0px;
    line-height: 0px;
    background-image: url(../images/social-networks-sprite.jpg);
    background-size: auto 100%;
    background-position: top left;
    background-position: 0px 0px;
}

.social-icon + .social-icon {
    margin-left: 10px;
}

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

.social-icon.rss {
    background-position: 5.88% 0px;
}

.social-icon.facebook {
    background-position: calc(5.88% * 2) 0px;
}

.social-icon.twitter {
    background-position: calc(5.88% * 3) 0px;
}

.social-icon.instagram {
    background-position: calc(5.88% * 4) 0px;
}

.social-icon.vk {
    background-position: calc(5.88% * 5) 0px;
}

.social-icon.linkedin {
    background-position: calc(5.88% * 6) 0px;
}

.social-icon.tumblr {
    background-position: calc(5.88% * 7) 0px;
}

.social-icon.pinterest {
    background-position: calc(5.88% * 8) 0px;
}

.social-icon.reddit {
    background-position: calc(5.88% * 9) 0px;
}

.social-icon.youtube {
    background-position: calc(5.88% * 10) 0px;
}

.social-icon.vimeo {
    background-position: calc(5.88% * 11) 0px;
}

.social-icon.whatsapp {
    background-position: calc(5.88% * 12) 0px;
}

.social-icon.telegram {
    background-position: calc(5.88% * 13) 0px;
}

.social-icon.gab {
    background-position: calc(5.88% * 14) 0px;
}

.social-icon.minds {
    background-position: calc(5.88% * 15) 0px;
}

.social-icon.mastodon {
    background-position: calc(5.88% * 16) 0px;
}

.social-icon.pocket {
    background-position: calc(5.88% * 17) 0px;
}

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

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

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

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

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

.quarto {
    min-height: 100%;
    padding: 7px;
    color: #505050;
    background-color: #fff;
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.15);

    transition-duration: 0.3s;
    transition-property: background, color;
}

    .quarto .photo {
        width: 45%;
        height: auto;
        margin-right: 10px;
    }

        .quarto.promocao .photo:after {
            position: absolute;
            left: -45px;
            top: 45px;/*37px;*/
            width: 210px;
            content: 'Black Friday';
            font-family: 'BerlinSansFB';
            text-transform: uppercase;
            text-align: center;
            font-weight: bold;
            font-size: 25px;/*27px;*/
            line-height: 1.5em;
            color: #2f5fa7;
            background-color: black; /*#feffb7;*/

            transform: rotate(-45deg);
        }

    .quarto .conteudo {
        width: calc(55% - 10px);
        text-align: center;
    }

    .quarto .titulo {
        padding-top: 57px;
        padding-bottom: 17px;
        margin-bottom: 20px;
        font-size: 23px;
        line-height: 1em;
        font-family: 'BerlinSansFB';
        text-transform: uppercase;
        color: #000;

        transition-duration: 0.3s;
        transition-property: color;
    }
    
    .quarto .titulo:after {
        display: block;
        position: absolute;
        left: 0px;
        right: 0px;
        bottom: 0px;
        width: 100px;
        height: 2px;
        margin: auto;
        content: '';
        background-color: #000;

        transition-duration: 0.3s;
        transition-property: background-color;
    }

        .quarto .titulo .homenzinho {
            position: absolute;
            left: 0px;
            right: 0px;
            top: 0px;

            width: 23px;
            height: 37px;
            margin: auto;

            content: '';
            background-image: url(../images/homenzinho.png);
        }

            .quarto .titulo .homenzinho:after {
                opacity: 0;
                display: block;
                position: absolute;
                left: 0px;
                top: 0px;
                width: 100%;
                height: 100%;
                content: '';
                background-image: url(../images/homenzinho-hover.png);

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

    .quarto .introducao, 
    .quarto .duracao {
        font-size: 14px;
        line-height: 1.3em;
    }

    .quarto .introducao {
        margin-bottom: 10px;
    }

    .quarto .preco {
        font-family: 'BerlinSansFB';
        font-size: 22px;
        line-height: 1em;
    }

    .quarto .duracao {
        line-height: 22px;
    }

        .quarto .duracao img {
            height: 20px;
            margin-right: 3px;
            margin-top: 1px;
            transition-property: filter;
            transition-duration: 0.3s;
        }

        .quarto .duracao .tempo {
            font-family: 'BerlinSansFB';
            font-size: 20px;
        }

    .quarto .mais {
        width: 85px;
        margin: 10px auto;
        color: #2f5fa7;
        font-style: italic;
        font-size: 14px;
        line-height: 1.3em;
        background-color: #fff987;
    }

    .quarto .disclaimer {
        margin-top: 10px;
        font-size: 10px;
        line-height: 1.3em;
    }

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

.quarto:hover {
    color: #fff;
    background-color: #2f5fa7;
}

    .quarto:hover .titulo {
        color: #fff;
    }

    .quarto:hover .titulo .homenzinho:after {
        opacity: 1;
    }

    .quarto:hover .titulo:after {
        background-color: #fff;
    }

    .quarto:hover .duracao img {
        filter: brightness(4);
    }

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

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

    .curso .photo {
        width: 100%;
        height: auto;
        margin-bottom: 15px;
        box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.15);
    }

    .curso .titulo {
        font-size: 12px;
        line-height: 1em;
        text-transform: uppercase;
        color: #000;
        font-family: 'AftaSerif';
    }

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

.banner {
    display: block;
    width: 100%;
    margin: 60px 0px;
    text-align: center;
}

    .banner img {
        width: auto;
        max-width: 100%;
    }

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

.captcha {
    height: 78px;
    margin: 10px 0px;
}

.g-recaptcha {
    display: inline-block;
    vertical-align: top;
    width: auto;
    margin: 0px auto 0px 0px;
}

div[style*="z-index: 2000000000"] {
    width: auto;
}
/* =========================
   Card de Quartos
   ========================= */

.quarto-card {
    display: flex;
    align-items: center;
    gap: 30px;
    text-decoration: none;
    color: inherit;
}

.quarto-foto {
    flex: 0 0 220px;
}

.quarto-foto img {
    width: 100%;
    height: auto;
    display: block;
}

.quarto-conteudo {
    flex: 1;
}

.quarto-titulo {
    margin: 0 0 10px;
}

.quarto-intro {
    margin-bottom: 15px;
}

.quarto-mais {
    font-weight: bold;
}
.quarto-foto,
.card-foto {
    overflow: hidden;
}

.quarto-foto::after,
.card-foto::after {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.25);
    opacity: 0;
    transition: opacity .4s ease;
}

.quarto-card:hover .quarto-foto::after,
.card-experiencia:hover .card-foto::after {
    opacity: 1;
}
