header{
    display: flex;
    justify-content: space-between; /* Alinha logo e outros elementos */
    align-items: center; /* Centraliza verticalmente */
}
body{
	width:100%;
	min-height: 100vh;
	margin:0;
}
section{
	width:100%;
	height:auto; 
	text-align: center;
	background-color:rgb(255, 255, 255);
	margin-top:40px;
}
.logo {
    height: 60px;
    width: auto;
	margin-left: 20px;
    margin-top: 20px;
    transition: height 0.3s ease-in-out; /* Adiciona uma transição suave */
}
.logo:hover {
    height: 62px;
}
.login{
	text-align: center;
	color:#27048D;
	margin-top:50px;
}
#submitlog{
	background-color: #27048D;
	color:white;
	border-radius:5px;
	padding:3px 40px;
}

.login input{
	width:300px;
	padding:3px 20px;
	color:#27048D;
	border: solid 1px #27048D;
	border-radius:5px;
	font-size: 16px;
	margin-left:0px;
}
.login p{
    color:#E69B2C;
	font-size: 18px;
	
}
#error-message{
	color:#E69B2C;
	font-size: 18px;
}
.forget a{
	font-size:15px;
	color:#27048D;
}

.recuperadiv{
	height:420px;
	width:100%;
	position:fixed;
	text-align: center;
	top:120px;
	margin:0px;
	margin-top:0px;	
	display:none;
	color:#27048D;
	background-color: #ffffff;
	padding:20px 60px;
	border:1px solid #27048D;
	border-radius: 10px;
	z-index: 4;
	box-shadow: 5px 5px 10px rgba(21, 21, 21 , 0.7);
}
.recuperadiv input{
	border:solid 0.3px #27048D;
	color:#27048D;
}
.recuperadiv button{
	padding:5px 40px;
	border-radius: 10px;;
	background-color: #27048D;
	color:#ffffff;
	margin-top:-30px;
	margin-bottom:20px;
}
#recuperaform{
	text-align: right;
	margin-right:0px;
}

#closerecup{
	position:relative;
	right:-170px;
	top:0px;
}
@keyframes girar {
	from {
		transform: rotate(0deg);
	} to {
		transform: rotate(360deg); 
	}
}
#closerecup:hover{
	animation: girar 1s linear;
}

.cancelportal{
    width:100%;
    height:auto;
	font-size:15px;
	color:#E69B2C;
	text-align: center;
	margin:auto;
}
.cancelportal a{
	color:#E69B2C;
}


/* Overlay que cobre a tela toda */
#overlay-loading {
    display: none; /* escondido inicialmente */
    position: fixed;
    top: 0; left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(255, 255, 255, 0.3);
    z-index: 9999;
    backdrop-filter: blur(2px);
}

/* Conteúdo central do overlay */
#overlay-loading .spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
}

/* A logo */
#overlay-loading img {
    height: 50px;
    width: auto;
    animation: spin 2s linear infinite;
    opacity: 0.5;
}

/* Animação de rotação */
@keyframes spin {
    from { transform: translate(-50%, -50%) rotate(0deg); }
    to { transform: translate(-50%, -50%) rotate(360deg); }
}


footer{
	position:fixed;
	bottom:0;
	background-color:#42404b;
	width:100%;
	height:70px;
	text-align:center;
	color:#ffffff;
	padding-top:10px;
	margin:0;
	font-size:13px;
}
body::after{
		clear:both;
		content:none;
}
.select{
	padding-left: 50px;
}

@media only screen and (min-width: 700px) {
	header{
		height:110px;
	}
	.logo{
		height:80px;
		margin-left: 40px;
		margin-top: 40px;
	}
	.logo:hover{
		height:72px;
	}
	    .recuperadiv{
	width:420px;
	position:fixed;
	top:180;
	left:50%;
	margin-left:-210px;
    }
}

@media only screen and (min-width: 850px) {
	.login{
		margin-top:0px;
	}
}