#everything {
    width: 100vw;
}

#menu_mobile { z-index: 51;}
#header { z-index: 50;}
    #abrir_menu { z-index: 50;}
#middle { z-index: 40;}
#footer { z-index: 20;}

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

#header {
    margin-bottom: 20px;
    text-align: right;
    font-family: 'BerlinSansFB';
    color: #44546b;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.10);
}

    /*-------*/

    #header .contato {
        text-align: right;
        color: #a3a3a3;
        background-color: #f4f4f4;
    }

        #header .contato a {
            color: #1f3a5f;
        }

        #header .contato a:hover {
            text-decoration: underline;
        }

        #header .contato .telefones, 
        #header .contato .emails {
            padding: 5px;
            width: auto;
        }

        #header .telefone.whatsapp:before {
            display: inline-block;
            vertical-align: top;
            width: 18px;
            height: 18px;
            content: '';
            background-image: url(../images/whatsapp.png);
            background-size: 100%;
        }

        #header .redes-sociais {
            display: inline-block;
            vertical-align: top;
            width: auto;
        }
        #header .redes-sociais:before {
            display: inline-block;
            padding: 5px;
            content: 'Siga: ';
        }

            #header .social-icon {
                width: 30px;
                height: 30px;
                margin: 0px 0px 0px 5px;
                background-image: url(../images/social-networks-sprite2.jpg);
            }

            #header .social-icon:hover {
                background-image: url(../images/social-networks-sprite.jpg);
            }
            

    /*-------*/

    #logo {
        z-index: 10;
        float: left;
        width: 349px;
        max-width: 100%;
        height: auto;
        margin-bottom: 5px;
        text-align: center;
    }

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

        #header .endereco {

        }

        #header .estado:before {
            content: ' - '
        }

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

    #menu {
        z-index: 1;
        width: calc(100% - 369px);
        margin: 30px 0px 0px 20px;
        font-size: 0px;
        line-height: 0px;
        text-align: right;
    }

        #menu ul {
            display: flex;
            justify-content: space-between;
        }

            #menu li {
                position: static;
                display: inline-block;
                vertical-align: top;
                width: auto;
                margin: 0px
            }

                #menu li a {
                    display: block;
                    padding: 11px;
                    border-bottom: solid 3px #f2f2f2;
                    font-size: 14px;
                    line-height: 14px;
                    text-align: center;
                    color: #505050;
                    text-transform: uppercase;

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

                #menu li:hover > a {
                    border-color: #2f5fa7;
                }

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

    #abrir_menu {
        display: none;
        position: absolute;
        left: 0px;
        bottom: 0px;
        width: 100%;
        padding: 10px;
        font-size: 20px;
        line-height: 1em;
        color: #fff;
        font-weight: 900;
        text-align: center;
        background-color: #44546B;
    }

    #abrir_menu:before {
        display: inline-block;
        vertical-align: top;
        width: 31px;
        height: 20px;
        margin-right: 15px;

        content: '';

        background-image: url(../images/menu-mobile.png);
        background-size: 100%;
        background-repeat: no-repeat;
        background-position: center center;
    }

    #abrir_menu.fixo {
        position: fixed;
        top: 0px;
        bottom: auto;
        box-shadow: 0px 2px 19px rgba(0, 0, 0, 0.25);
    }

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

#menu_mobile {
    display: none;
    position: fixed;
    right: 0px;
    top: 0px;

    width: 0px;
    height: 100vh;
    overflow: hidden;
    text-align: left;

    transition-property: width;
    transition-duration: 0.5s;
}

#menu_mobile.aberto {
    width: 200px;
}
    #menu_mobile .conteudo {
        width: 200px;
        height: 100vh;
    }

    #menu_mobile a, 
    #menu_mobile span.inert {
        display: block;
        padding: 10px 10px 10px 15px;
        color: #bbb;
        font-size: 14px;
        line-height: 1em;
    }

    #menu_mobile .fechar {
        border-left: solid 1px #022a40; 
        text-align: center;
        color: #fff;
        font-size: 14px;
        line-height: 20px;
        background-color: #656565;
    }

    #menu_mobile .fechar:before {
        display: inline-block;
        vertical-align: top;
        width: 14px;
        height: 14px;   
        margin-right: 7px;
        margin-top: 3px;

        content: '';

        background-image: url(../images/menu-fechar.png);
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: center center;
    }

    #menu_mobile ul {
        list-style: none;
        
        margin: 0px;
        
        width: 100%;
        height: calc(100% - 34px);
        border-left: solid 1px #232121;
    
        overflow-x: hidden;
        overflow-y: auto;

        background-color: #343434;
    }
    
        #menu_mobile li {
            border-bottom: solid 1px #232121;
            margin: 0px;
        }

        #menu_mobile li:last-child {
            border-bottom: none;
        }

        #menu_mobile a {
            font-family: 'Roboto';
            font-weight: 300;
        }
        
        #menu_mobile li ul li {
            border-bottom: none;
        }

            #menu_mobile li ul a {
                padding-left: 25px;
            }
        
            #menu_mobile li ul a:before {
                content: '- ';
            }

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

#middle {
    min-height: 700px;
    margin-bottom: 20px;
}

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

#footer {
    padding: 20px 0px 0px 0px;
    text-align: center;
    font-family: 'BerlinSansFB';
    color: #757575;
    background-color: #fff;
}

    #footer .info {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

        #footer h3 {
            font-family: 'BerlinSansFB';
            text-align: center;
            text-transform: uppercase;
            font-size: 18px;
            line-height: 1.3em;
        }

        #footer .info {
            border-bottom: solid 1px #f2f2f2;
            margin-bottom: 20px;
        }

            #footer .info > * {
                width: auto;
                margin: 0px 0px 20px 0px;
                font-size: 20px;
                line-height: 1.5em;
            }

            #footer .sobre-nos {
                text-align: left;
            }

            #footer .contato {
                text-align: right;
            }

                #footer .contato a {
                    color: #1f3a5f;
                }

                #footer .contato a:hover {
                    text-decoration: underline;
                }

                #footer .cidade, 
                #footer .rua {
                    display: block;
                }

                #footer .telefones {
                    margin: 10px 0px;
                }

                    #footer .telefone.whatsapp:before {
                        display: inline-block;
                        vertical-align: top;
                        width: 1.5em;
                        height: 1.5em;
                        content: '';
                        background-image: url(../images/whatsapp.png);
                        background-size: 1em;
                        background-position: center center;
                        background-repeat: no-repeat;
                    }

        #footer .redes-sociais {
            margin: 20px 0px;
        }


    #creditos {
        padding: 10px 5px;
        color: #fff;
        font-size: 14px;
        line-height: 1em;
        text-align: center;
        background-color: rgba(0, 0, 0, 0.25);
    }

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

#slider {
    margin: -20px auto 0px auto;
}

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

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

            #slider .texto {
                position: absolute;
                bottom: 40px;
                left: 0px;
                right: 0px;

                text-align: center;
            }

                #slider .texto .titulo {
                    display: inline-block;
                    vertical-align: top;
                    width: auto;
                    padding: 10px 20px;
                    font-size: 45px;
                    line-height: 1.3em;
                    font-family: 'DancingScript';
                    color: #fff;
                    background-color: rgba(0, 0, 0, 0.5);
                }                

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

    #slider .botoes {
        position: absolute;
        bottom: -40px;
        left: 0px;
        z-index: 100;
        width: 100%;
        text-align: center;
    }

        #slider .botoes a {
            width: 15px;
            height: 15px;
            border: solid 3px #fff;
            border-radius: 50px;
            margin-right: 10px;
            margin-top: 15px;
            background-color: transparent;
            box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.5);
        }

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

#bem_vindo {
    padding: 100px 0px;
}

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

#contato_home {
    margin: 90px 0px 30px 0px;
}

    #contato_home form {
        width: 530px;
        max-width: 100%;
        padding: 60px 38px;
        margin-right: 0px;
        background-color: #2f5fa7
    }

    #contato_home h2 {
        font-family: 'AftaSerif';
        font-size: 34px;
        line-height: 1em;
        color: #fff;
        text-transform: uppercase;
    }

    #contato_home input, 
    #contato_home textarea {
        border: solid 2px #fff;
        border-radius: 0px;
        background-color: transparent;
    }

    #contato_home input::-webkit-input-placeholder, #contato_home textarea::-webkit-input-placeholder {
        color: #eee;
    }
    #contato_home input::-moz-placeholder, #contato_home textarea::-moz-placeholder {
        color: #eee;
    }
    #contato_home input:-ms-input-placeholder, #contato_home textarea:-ms-input-placeholder {
        color: #eee;
    }
    #contato_home input:-moz-placeholder, #contato_home textarea:-moz-placeholder {
        color: #eee;
    }

    #contato_home input[type=submit] {
        min-width: 0px;
        width: 110px;
        border-color: #1f3a5f;
        text-transform: uppercase;
        font-family: 'AftaSerif';
        background-color: #1f3a5f;
    }

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

#localizacao_home {
    margin-bottom: 45px;
}

    #localizacao_home .endereco {
        display: block;
        margin-bottom: 20px;
        text-align: center;
    }

    #localizacao_home .cidade {
        display: block;
    }

    #localizacao_home .rua:after, 
    #localizacao_home .complemento:after {
        content: ', ';
    }

    #localizacao_home .estado:before {
        content: ' - '
    }

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

#instagram .foto {
    display: block;
    width: 290px;
    height: auto;
    padding: 30px 25px 55px 25px;
    border-bottom: solid 2px #1f3a5f;
    margin-bottom: 20px;
    background-color: #fff;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15);
}

    #instagram .foto img {
        width: 100%;
    }

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

#quartos_home {
    margin-bottom: 40px;
}

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

div[id|="gb"] {
    pointer-events: none;
    width: 250px;
}

div[id|="gb"] > div:first-child {} /* conteudo */

    div[id|="gb"] > div:first-child > div {} /* botoes */

        div[id|="gb"] .jxPOhn div { /* legenda */
            width: auto;
            margin: 0px 0px auto auto;
        } 

        div[id|="gb"] .jxPOhn a { /* icone */
            pointer-events: auto;
            flex-basis: 50px;
            margin: 0px 0px 0px 10px;
        } 

div[id|="gb"] > div:nth-child(2) { /* abre/fecha */
    margin: 14px 0px 0px auto;
}


div[id|="gb"] .kHGnXI { /* janelinhas popup */
    pointer-events: auto;
}

div[id|="gb"] .eGhNIn { /* botão fechar no titulo das janelinhas popup */
    width: 50px;
}

#footer .info {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
}

#footer .contato.full-width {
    width: 100%;
    max-width: 600px;
    text-align: center !important;
    margin: 0 auto !important;
    padding: 20px 0;
}

#footer .localizacao,
#footer .telefones,
#footer .emails {
    text-align: center !important;
    line-height: 1.8;
}

#banner_reserva_home {
    width: 100%;
    margin: 40px 0;
    text-align: center;
}

#banner_reserva_home img {
    width: 100%;
    max-width: 1400px;
    height: auto;
    display: block;
    margin: 0 auto;
    border-radius: 12px;
}

@media (max-width: 768px) {
    #banner_reserva_home {
        margin: 25px 0;
        padding: 0 10px;
    }
}