body{
    width: 100%;
    height: 100vh;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    font-family: JosefinSans-VariableFont_wght;
}
body::before {
    content: "";
    background: url(../img/fundoazuldefundo.png)no-repeat;
    position: absolute;
    left: 80px;
    top: -306px;
    transform: rotate(35deg);
    z-index: -1;
    width: 200px;
    height: 200%;
}
.truque::before {
    content: "";
    background: url(../img/fundoazuldefundo.png)no-repeat;
    position: absolute;
    right: 0;
    top: -627px;
    transform: rotate(35deg);
    z-index: -1;
    width: 200px;
    height: 978px;
}
.embrulho.reg {
    width: 80%;
    margin: 0 auto;
}
@font-face{
    font-family: JosefinSans-VariableFont_wght;
  src: url(../fonts/JosefinSans-VariableFont_wght.ttf);
}
@font-face{
    font-family: LilitaOne-Regular;
  src: url(../fonts/LilitaOne-Regular.ttf);
}
h1,h2,h3{
    font-family: LilitaOne-Regular;
    font-weight: lighter;
}
a {
    color: blue;
    text-decoration: none;
}
ul{
    list-style: none;
    margin: 0;
    padding: 0;
}
.cabeca{
    width: 100%;
    height: 120px;
    padding-top: 40px;
    border-bottom: 1px solid #103b71;
}
.logo{
    position: relative;
    float: left;
    left: 30px;
}
/* de luto 
.logo::before{
    content: "";
    width: 75px;
    height: 30px;
    background: black;
    position: absolute;
    display: block;
    left: 0px;
    top: 50px;
    transform: rotate(-30deg);
    z-index: 9999;
}
.cabeca::after{
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    background: url("../img/natalaz.png")no-repeat;
    background-size: 200px;
    width: 200px;
    height: 200px;
    z-index: -1;
}*/
.logo img{
    position: relative;
    top: 47px;
    width: 300px;
}
.menu {
    display: block;
    width: 300px;
    margin: 0px auto 0 auto;
    font-size: 1.5em;
    text-align: center;
    top: 35px;
    position: relative;
}
.menu:hover a{
    text-decoration: underline;
}
.menuent{
    float: right;
    position: relative;
    right: 30px;
    top: -20px;
    width: 300px;
}
.menuent ul{
    float: right;
}
.menuent li{
    float: left;
    margin: 5px;
    animation: all 3s;
    cursor: pointer;
}
.btn:hover a{
    color: white;
}
.btn:hover{
    background: #103b71;
    color: white;
}
.menuent span{
    display: block;
    width: 100%;
}
.btn{
    border: 1px solid #103b71;
    background: white;
    color: #103b71;
    border-radius: 50px;
    padding: 10px;
}
.pe{
    border-top: 1px solid #103b71;
    min-height: 350px;
    background: #103b71;
    color: white;
}
.pe ul{
    width: 90%;
    margin: 0 auto;
}
.pe li{
    float: left;
    width: 22.5%;
    padding: 10px;
    border-right: 1px solid white;
}
.obrigatorio{
    position: relative;
    width: 45%!important;
    border-right: none!important;
    float: right!important;
}
.dragon {
    float: left!important;
    width: 60px!important;
    height: 60px!important;
    top: 170px;
    position: relative;
    background: url(../img/dragaozinho.png)no-repeat;
    background-size: 50px;
}
.caminho {
    float: left!important;
    position: relative;
    background: url(../img/caminho.png)no-repeat;
    width: 200px!important;
    background-size: 200px;
    height: 150px!important;
    left: 40px;
    top: 11px;
}
.museu {
    position: absolute;
    left: 188px;
    top: 170px;
    background: url(../img/museu.jpg)no-repeat;
    background-size: 100px;
    width: 60px!important;
    height: 60px!important;
    border-radius: 20px;
    opacity: 0.7;
}
.dragao {
    position: absolute;
    left: 115px;
    top: 110px;
    background: url(../img/sitefcporto.png)no-repeat;
    background-size: 100px 100px;
    width: 60px!important;
    height: 60px!important;
    border-radius: 24px;
    opacity: 0.7;
}
.estadio {
    position: absolute;
    left: 275px;
    top: 220px;
    background: url(../img/dragao.png)no-repeat;
    background-size: 100px;
    width: 60px!important;
    height: 60px!important;
    border-radius: 20px;
    opacity: 0.7;
}
.obrigatorio span{
    display: none;
}
.estadio:hover{
    opacity: 1;
}
.dragao:hover{
    opacity: 1;
}
.museu:hover{
    opacity: 1;
}
.estadio:hover span{
    display: block;
    text-align: center;
    color: white;
    margin-top: -8px;
}
.dragao:hover span{
    display: block;
    text-align: center;
    color: white;
    margin-top: -5px;
}
.museu:hover span{
    display: block;
    text-align: center;
    color: white;
    margin-top: -5px;
}
.pe li li{
    clear: both;
    display: block;
    width: 100%;
    border: none!important;
}
.limpar{
    clear: both;
}
*{
    box-sizing: border-box;
}
.esconder{
    display: none;
}
form{
    width: 600px;
    margin: 0 auto;
}
form span{
    display: block;
    position: relative;
}
.textarealabel{
    float: left;
}
form input,label,textarea,select{
    padding: 10px 15px;
    margin: 5px 0;
}
form input,textarea,select{
    width: 70%;
}
form label {
    width: 25%;
    display: inline-block;
}
/* comentarios */
.exporcomentarios {
    position: relative;
    margin: 50px 0;
}
.exporcomentarios h2{
    background: #103b71;
    color: white;
    padding: 20px;
}
.exporcomentarios h2::before {
    display: block;
    content: "";
    background: url(../img/dragaozinho.png)no-repeat;
    background-size: 40px;
    background-position: center;
    top: 15px;
    left: -45px;
    position: absolute;
    z-index: 9;
    width: 40px;
    height: 40px;
}
.exporcomentarios p {
    border: 1px solid #103b71;
    position: relative;
    border-radius: 15px;
    padding: 20px;
    background: white;
    z-index: 99;
}
.exporcomentarios p::before {
    content: "";
    position: absolute;
    left: 22px;
    top: -10px;
    width: 25px;
    height: 25px;
    background: white;
    border-top: 1px solid #103b71;
    border-right: 1px solid #103b71;
    transform: rotate(-46deg);
    z-index: 9;
}
.comentarios p{
    display: block;
}
.comentarios {
    width: 60%;
    margin: 0 auto;
}
.votos img{
    width: 50px;
    border:none;
}
.votos{
    width: 250px;
    float: left;
}
.votapost{
    display: block;
    height: 60px;
    width: 60%;
    margin: 0 auto;
}
.ajuda{
    position: relative;
    left: 45px;
    top: 15px;
}
.ajuda::before {
    content: "?";
    background: url(../img/dragaozinho.png)no-repeat;
    background-size: 25px;
    display: block;
    position: relative;
    width: 25px;
    height: 25px;
    margin-top: 0;
    margin-left: 0;
    text-align: center;
    color: #103b71;
    text-shadow: white 0px 0px 5px;
    font-size: 1.5em;
    border-radius: 12px;
}
.ajuda:hover + .esconder {
    display: block;
    position: absolute;
    margin-top: -15px;
    margin-left: 80px;
    font-size: 0.7em;
    color: brown;
    width: auto;
}
/* tabelas */
table{
    width: 80%;
    margin: 0 auto;
}
table th{
    text-align: center;
    font-weight: bold;
    border-bottom: 1px solid black;
}
table td{
    border-bottom: 1px solid black;
    text-align: center;
}
table li{
    display: inline-block;
    margin: 0 5px;
}
/* publicidade */
.adsterra {
    position: fixed;
    right: 10px;
    top: 15%;
    width: 170px;
}
.publicidademinha {
    width: 70%;
    margin: 0 auto 0 15px;
    position: relative;
    top: 45px;
}
.publicidademinha video{
    width: 100%;
    height: 120px;
    background: none;
}
/* paginacao */
.paginacao ul{
    list-style: none;
}
.paginacao li{
    display: inline-block;
    border-radius: 25px;
    background: whitesmoke;
    margin: 0 5px;
    padding: 5px 15px;
    transition: all 2s;
}
.paginacao li:hover{
    color: white;
    background: #103b71;
}
.paginacao li a:hover{
    color: white;
}
.embrulho{
    padding: 60px 0;
    width: 80%;
    margin: 0 auto 0 15px;
}
.embrulho_regentra{
    width: 80%;
    margin: 0 auto;
}
.labelfloatleft{
    float: left;
}
.btn-n{
    width: auto;
    float: right;
    position: relative;
    right: 60px;
    cursor: pointer;
}
.post{
    padding: 30px 0;
    margin: 15px 0;
    background: whitesmoke;
}
.post h1 a{
    color: white;
}
.post h1{
    background: #103b71;
    color: white;
    padding: 20px 0;
    line-height: 2.5;
}
.post h1::before {
    content: "";
    display: inline-block;
    position: relative;
    left: 5px;
    top: 15px;
    width: 65px;
    height: 50px;
    background: url(../img/dragaozinho.png)no-repeat;
    background-size: 50px;
}
.post p{
    width: 90%;
    margin: 15px auto;
}
.truque{
    position: absolute;
    right: 0;
    width: 300px;
    height: 100px;
}
.video{
    padding: 50px 0;
    border-bottom: 1px dashed #103b71;
}
.video h1{
    background: white;
    border: 1px solid #103b71;
    color: #103b71;
    padding: 20px 0;
    line-height: 2.5;
}
.video h1::before {
    content: "";
    display: inline-block;
    position: relative;
    left: 5px;
    top: 15px;
    width: 65px;
    height: 50px;
    background: url(../img/dragaozinho.png)no-repeat;
    background-size: 50px;
}
video {
    background: #103b71;
    width: 100%;
    height: 400px;
}
.registar h2{
    text-align: center;
}
.apesquisar{
    width: 40%;
    margin: 0 auto;
    position: relative;
}
.apesquisar span{
    width: 100%;
}
.apesquisar form{
    width: 100%;
}
.apesquisar input{
    width: 100%;
    padding: 15px;
    border-radius: 15px;
}
.apesquisar .btn-n{
    position: absolute;
    right: 5px;
    top: 0;
    width: 30px;
    border: none;
    background: url(../img/lupa.png)no-repeat;
    background-size: 30px;
    background-position: center;
}
.pesquisar img{
    width: 150px;
}
.pesquisar{
    position: relative;
    width: 60%;
    margin: 0 auto;
    padding: 30px 0;
}
.menumovel, .menumov{
    display: none;
}
.creditos {
    border-top: 1px solid white;
    width: 80%;
    text-align: right;
    margin: 20px auto;
}
.redes ul{
    display: block;
    width: 70%;
}
.redes li{
    float: left;
    width: 35px!important;
    height: 35px;
    border-radius: 17px;
    margin: 0 3px;
    clear: none !important;
}
.link span{
    display: none;
}
.link:hover span{
    display: block;
    width: 135px;
    position: relative;
    top: -75px;
    background: blue;
    color: white;
    padding: 15px;
    font-size: 1.5em;
}
.face{
    background: url(../img/rsocia/face.png)no-repeat;
    background-size: 35px;
    background-position: top;
}
.twiter{
    background: url(../img/rsocia/twiter.png)no-repeat;
    background-size: 35px;
    background-position: top;
}
.link{
    background: url(../img/rsocia/favoritos.png)no-repeat;
    background-size: 35px;
    background-position: top;
}
.email{
    background: url(../img/rsocia/youtub.png)no-repeat;
    background-size: 35px;
    background-position: top;
}
.face:hover{
    background-position: bottom;
}
.twiter:hover{
    background-position: bottom;
}
.link:hover{
    background-position: bottom;
}
.email:hover{
    background-position: bottom;
}
.creditos a{
    color: aliceblue;
}
.creditos a:hover{
    color: rgb(164, 212, 255);
}
.pe ul {
    padding: 30px 0;
}
.pe a{
    color: aliceblue;
}
.pe a:hover{
    color: rgb(164, 212, 255);
}
.japublicado{
    color: aqua;
}
.entrada{
    float: left;
    width: 50%;
    min-height: 500px;
    padding: 30px 15px;
    background: whitesmoke;
    border-radius: 25px;
}
.entradalogo{
    width: 300px;
    margin: 20px auto!important;
}
.entradalogo img{
    width: 300px;
}
.entrada li{
    margin: 10px 0;
    text-align: center;
}
.entrar{
    float: right;
    width: 50%;
    min-height: 500px;
    padding: 150px 0;
    background: #103b71;
    color: white;
    border-radius: 25px;
}
.entrar form{
    width: 80%;
    margin: 0 auto;
}
.registarentrada{
    float: left;
    width: 50%;
    min-height: 500px;
    padding: 75px 15px;
    background: whitesmoke;
    border-radius: 25px;
}
.registarentradalogo img{
    width: 300px;
}
.registarentrada li{
    margin: 10px 0;
    text-align: center;
}
.registar{
    float: right;
    width: 50%;
    min-height: 500px;
    padding: 50px 0;
    background: #103b71;
    color: white;
    border-radius: 25px;
}
.registar form{
    width: 80%;
    margin: 0 auto;
}
.radiobtn{
    display: block;
    width: 100%;
}
#colaborarsim, #colaborarnao{
    width: 10%;
}
/* pagina recuperar passe */
.recuperarpasse{
    text-align: center;
    background: whitesmoke;
    color: #103b71;
    padding: 100px 0;
}
.disporemlinha{
    display: block;
    width: 100%;
}
/* pagina admin */
.menulinksad{
    width: 100%;
    height: 40px;
    padding: 15px;
    display: block;
}
.menulinksad li{
    float: left;
    margin: 0 10px;
}
.menuad{
    float: left;
    width: 30%;
    height: 100%;
    background: #103b71;
    color: white;
}
.menuad a{
    color: white;
}
.menuad li{
    float: left;
    width: 100%;
    font-size: 1.5em;
    padding: 15px;
    margin: 10px 0;
}
.mostrarad{
    float: right;
    width: 65%;
}
.post img{
    width: 100%;
    max-width: 450px;
    max-height: 450px;
}
.erroreg{
    text-align: center;
}

@media only screen and (max-width: 1080px) {
body::before{
    position: fixed;
}
.truque::before{
    display: none;
}
form input,label,textarea,select{
    display: block;
    width: 100%;
}
.apesquisar{
    width: 60%;
}
.logo img{
    top: 58px;
    width: 200px;
 }
}
@media only screen and (max-width: 730px) {
    .apesquisar{
    width: 80%;
}
    .registarentrada, .entrada{
    float: none!important;
    display: block;
    width: 90%;
    margin: 10px auto!important;
    padding: 30px 0!important;
}
.embrulho{
    margin: 0 auto;
}
.adsterra{
    display: none;
}
.entrar, .registar{
    float: none!important;
    display: block;
    width: 90%;
    margin: 0 auto!important;
    padding: 30px 0!important;
}
    .menumov {
    display: block;
    position: relative;
    float: right;
    top: 0;
    right: 30px;
    width: 30px;
}
body::before{
    position: fixed;
}
.truque::before{
    display: none;
}
    .menumov span{
        float: left;
        width: 100%;
        height: 1px;
        border-bottom: 3px solid black;
        border-radius: 3px;
        margin: 5px 0;
    }
    .menuent{
    display: none;
    }
    /* animaçoes */
.menumovelanimacao{
    animation: menumovel 2s;
}
@keyframes menumovel{
    from{width:0}
    to{width: 50%;}
}
.menumovelanimacaofecha{
    animation: menumovelfecha 2s;
}
@keyframes menumovelfecha{
    from{width:50%}
    to{width: 0;}
}
    .menumovel{
    position: absolute;
    width: 50%;
    top: 0;
    right: 0;
    padding: 30px 15px;
    height: 100%;
    background: #103b71;
    color: white;
    z-index: 9999;
    }
    .menumovel a{
        color: whitesmoke;
    }
    .movellogo img{
        width: 150px;
    }
    .movellogo{
        padding: 20px 0;
    }
    .menumovel li{
        display: block;
        padding: 10px 15px;
        margin: 7px 0;
    }
    .menumovel .btn{
        text-align: center;
    }
    .fecharmenu {
    display: block;
    position: relative;
    float: right;
    top: -12px;
    right: 0;
    width: 30px;
    font-size: 2em;
}
    .menu {
    position: absolute;
    right: 70px;
    top: 85px;
}

.pe{
    min-height: 100% !important;
}
.pe li{
    display: block;
    width: 90%;
    margin: 0 auto;
    border-right: none!important;
    border-bottom: 1px solid white;
}
.pe li li{
    display: block;
    width: 100%;
    padding: 15px;
}
.obrigatorio{
    display: block!important;
    width: 90%!important;
    padding: 15px!important;
}
form{
    width: 90%;
    margin: 0 auto;
}

.truque{
    position: relative;
    display: none;
}
.truque::before{
    display: none;
}
}

@media only screen and (max-width: 460px) {
    .apesquisar{
    width: 90%;
}
    .comentarios {
    width: 100%;
    }
    .votapost{
    width: 85%;
 }
    body::before{
        position: fixed;    
    }
    .obrigatorio{
        left: -50px;
    }
    .menu {
    display: none;
}
    .logo img{
        top: 52px;
        width: 300px;
    }
    .menumov {
        top: 0px;
    }
    .caminho {
    width: 150px!important;
    background-size: 150px;
    top: 60px;
}
.dragao {
    left: 85px;
    top: 120px;
}
.museu {
    left: 145px;
    top: 175px;
}
.estadio {
    left: 205px;
    top: 235px;
}
img {
    max-width: 250px;
}
form input,label,textarea,select{
    display: block;
    width: 100%;
}
}