#portal {
	text-align: center;
	color:white;
	text-shadow:0px 1px 1px rgba(0,0,0,0.3);
	-webkit-text-shadow:0px 1px 1px rgba(0,0,0,0.3);
	-moz-text-shadow:0px 1px 1px rgba(0,0,0,0.3);
}

#portal p {
	text-align: center;
}

.header-portal {
	margin-top: 40px;
}

#portal h1 {
	color: white;
	font-weight: 400;
	font-size: 2em;
}

#portal h2 {
	text-transform: uppercase;
	font-size: 2em;
	color: white;
}

.listsites {
	max-width: 1400px;
	margin-inline: auto;
	margin-block: 25px;
	flex-direction: column;
}

.site {
	padding: 20px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.listsites .site:hover {
	cursor:pointer;
	background:rgba(255,255,255,0.2);
	text-decoration: none;
}

#portal .bcolor {
	margin-top:20px;
	background:rgba(255,255,255,0.2);
	color: white;
	border-color: white;
}

#portal .bcolor:hover {
	background:rgba(255,255,255,0.5);
}

@media screen and (min-width: 1200px) {
	.header-portal {
		position: absolute;
		left: 40px;
		top: 0;
		max-width: 200px;
	}

	#portal .logo-site {
		text-align: left;
		height: auto;
	}
	
	#portal h1 {
		text-align: left;
		font-size: 1.3em;
	}

	.listsites {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.listsites__row {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
	}

	.site {
		flex: 1 1 0%;
		height: 100%;
		max-width: 467px;
	}

	.site--no-text > *:not(img) {
		display: none;
	}
}

@media screen and (min-width: 1536px) {
	.header-portal {
		max-width: 280px;
	}

	.listsites {
		margin-top: 100px;
	}
	
	#portal h2 {
		font-size: 2.5em;
	}
}