@import url("https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css");

@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css");



@keyframes xpto {
    0% {
        transform: scale(1) rotate(120deg);
    }

    50% {
        transform: scale(1.5);
    }

    100% {
        transform: scale(1) rotate(120deg);
    }
}

@keyframes libelinha {
    0% {
        transform: scale(1) rotate(0deg);
        top: 100vh;
    }

    100% {
        transform: scale(1) rotate(30deg);
    }
}

@keyframes lagarto {
    0% {
        transform: scale(1.5) rotate(10deg);
        transform-origin: right;
    }

    50% {
        transform: scale(1);
        transform-origin: center;
    }

    100% {
        transform: scale(1) rotate(20deg);
        transform-origin: left;
    }
}

@keyframes frames {
    0% {
        transform: translatex(100vw)
    }

    20% {
        background: rgb(114, 10, 10);
    }

    40% {
        background: rgba(114, 10, 10, 0.856);
    }

    60% {
        background: rgba(114, 10, 10, 0.603);
    }

    80% {
        background: rgba(114, 10, 10, 0.178);
    }

    100% {
        background: rgba(114, 10, 10, 0.178);
        transform: translatex(-100%)
    }
}


@keyframes slidein {
    from {
        margin-left: 100%;
        width: 300%
    }

    to {
        margin-left: 0%;
        width: 100%;
    }
}

@keyframes slide {
    from {
        margin-left: 83%;
        width: 100%
    }

    to {
        margin-left: 0%;
        width: 83%;
    }
}




* {
    margin: 0;
    padding: 0;
    border: none;
    box-sizing: border-box;
}

/* imagens responsive */
img {
    max-width: 100%;
}


/* regras globais */
body {
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
    line-height: 1.2em;
    color: hsla(0, 0%, 0%, 0.50);
}


/* HEADER */
/* HEADER IMAGEM BACKGROUND */
section.banner {

    background-repeat: no repeat;
    background-size: cover;
    background-position: center center;
    color: white;
    text-align: center;
    /* propriedades box model */
    height: 100vh;
    /* layout */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

header {
    background-color: hsla(0, 0%, 0%, 0.60);
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 13vh;
    /* para fixar no início */
    position: fixed;
    top: 0;
    left: 0;
    right: 0;

    z-index: 9;
}

/* logotipo pequeno */
.logo {
    max-width: 100px;
    width: auto;
    height: auto;
    text-align: right;
    margin-left: 2em;
    margin-top: 1em;
}

.lousa {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.lousalogo {
    color: white;
    padding-right: 2em;
    font-size: .7em;
}

.lousa a {
    text-decoration: none;
    color: rgb(255, 255, 255);
    margin-right: .5em;
}


/* menu desktop */
.menudesktop a {
    text-decoration: none;
    font-size: 18px;
    color: rgb(255, 255, 255);
    display: inline-block;
    padding: .25em;
}

.menudesktop-small a {
    text-decoration: none;
    font-size: .7em;
    color: rgb(255, 255, 255);
    display: inline-block;
    margin-top: 2em;
    padding: .25em;
}


/* AQUI!!!! */
/* icones*/
div.background {
    background-color: hsla(0, 0%, 0%, 0.60);
    display: flex;
    align-items: center;
    /* para fixar no fim */
    position: fixed;
    bottom: 0em;
    left: 0;
    right: 0;
    height: 11vh;
}

/* Style the navigation bar */
.navbar {
    width: 100%;
    /*    overflow: auto; */
    z-index: 9;
}

/* Navbar links */
/* icones */
.navbar a {
    /*  float: left; */
    text-align: center;
    color: white;
    text-decoration: none;
    font-size: 20px;
    padding-top: .5em;
}

.icontext {
    font-size: 11px;
}


/* Current/active navbar link */
.active {
    background-color: rgb(114, 10, 10);
    border-radius: 10px;
    padding-left: 10px;
    padding-right: 10px;
}

/* feito pelo João */
div.navbar.background {
    display: flex;
    justify-content: space-around;
}


/* BOTÕES CTA */
a.button {
    background-color: hsla(0, 0%, 0%, 0.30);
    color: white;
    text-decoration: none;
    font-size: .8em;
    border: 3px solid white;
    padding: 0.5em 1em;
}

a.button:hover {
    font-size: .85em;
    box-shadow: 4px 4px 10px rgb(255, 255, 255);
}

a.buttonred {
    color: rgb(114, 10, 10);
    text-decoration: none;
    font-size: 1.1em;
    font-weight: 700;
    border: 5px solid rgb(114, 10, 10);
    padding: 0.5em 1em;
}

a.buttonred:hover {
    font-size: 1.15em;
    box-shadow: 4px 4px 10px rgb(114, 10, 10);
}

.redlogotipo {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 2em;
}

/* red logotipo */
img.size {
    width: 10em;
    margin: 5em 0em 2.5em;
}

/* reserve já */
img.position {
    width: 6em;
}

.imagebox {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

/* FOOTER */
footer section {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.rulesmobile {
    margin: 4em 1.5em .5em;

}

.rulesmobile a:hover {
    color: rgb(114, 10, 10);
}

/* termos e condições... */
footer ul {
    list-style-type: none;
    font-size: 16px;
}

footer ul a {
    color: hsla(0, 0%, 0%, 0.40);
    text-decoration: none;
}

a:link {
    text-decoration: none;
}

/* redes sociais */
.sizeiconsmobile {
    height: 2.5em;
    margin-top: 2.5em;
    padding: .4em;
}

.sizeiconsmobile:hover {
    height: 2em;
    box-shadow: 4px 4px 10px rgb(255, 255, 255);
}


/* copyright */
/* IMAGEM */
aside {
    background-repeat: no repeat;
    background-size: cover;
    background-position: center center;

    height: 20vh;
    width: 100%;
}

/* texto */
.asidemobile {
    font-size: 12px;
    color: white;
    padding-left: 2.5em;
    padding-top: .5em;
    text-shadow: 1px 1px 2px black, 0 0 25px rgb(0, 0, 0), 0 0 5px rgb(0, 0, 0);
}

.asidedesktop {
    font-size: 12px;
    color: white;
    padding-left: 1.8em;
    padding-top: .5em;
    text-shadow: 1px 1px 2px black, 0 0 25px rgb(0, 0, 0), 0 0 5px rgb(0, 0, 0);
}

.footer_linkedin {
    text-decoration: none;
    color: white;
    padding-left: 5px;
}

.footer_linkedin:hover {
    color: rgb(255, 255, 255);
}

.menudesktop,
.menudesktop-small,
.desktopCta,
.rulesdesktop,
.iconscontainer,
.logodesk,
.adesktop,
.asidedesktop {
    display: none;
}

@media screen and (min-width: 980px) {

    .menudesktop,
    .menudesktop-small,
    .desktopCta,
    .rulesdesktop,
    .logodesk,
    .adesktop,
    .asidedesktop {
        display: flex;
    }

    .dropdown-content,
    .mobileCta,
    .div,
    .mobilemenu,
    .rulesmobile,
    a.buttonred,
    .lousalogo,
    .logo,
    .amobile,
    .asidemobile {
        display: none;
    }

    .logodesk {
        max-width: 100px;
        width: auto;
        height: auto;
        text-align: right;
        margin-left: 1em;
        margin-top: 1.5em;
    }

    .adesktop {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding-right: 6em;
    }

    .linkstermscontainer {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        margin-left: 7em;
    }

    .linkscontainer {
        text-shadow: 1px 1px 2px black, 0 0 25px rgb(0, 0, 0), 0 0 5px rgb(0, 0, 0);
        padding: .8em;
        height: 5vh;
    }

    .rulesdesktop a {
        font-size: .8em;
        color: rgb(255, 255, 255);
        padding: .3em;
    }

    .iconscontainer {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
    }

    .sizeiconsdesktop {
        height: 2em;
        margin-right: 1em;
    }

    .sizeiconsdesktop:hover {
        height: 3em;
    }

    aside {
        height: 15vh;
    }

}