@charset "utf-8";
/* CSS Document */

/* Formatações padrão de layout
/* ............................ */

body {
	margin: 0;
	padding: 0;
	overflow-x: hidden;
}

	header, main, footer { 
		width: 100%;
		padding: 0;
	}

	header {
		position: relative;
		z-index: 2;
	}

	section {
		position: relative;
		max-width: 85%;
		padding: var(--espacoBloco) 0;
		margin: 0 auto;
		z-index: 1;
	}

		section::before {
			content: "";
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			z-index: -1;
			transform: translateX(-25vw);
			padding: 0 50vw;
		}

/*  Cabeçalho
/* .......... */

header .cabecalho {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	gap: 30px;
	padding: 10px 0;
	font-size: 1.5rem;
}

	header .cabecalho .logotipo {
		width: 70px;
		filter: unset;
	}

	header .cabecalho .iconeBotao {
		border: 1px solid var(--backDestaque);
		border-radius: 7px;
		padding: 5px;
		margin-left: 10px;
		display: inline-block;
		transition: all 0.3s linear;
	}

		header .cabecalho .iconeBotao:hover {
			background-color: var(--corPadrao);
		}

		header .cabecalho .iconeBotao > img {
			width: 25px;
			filter: grayscale(1) contrast(0.3);
		}

			header .cabecalho .iconeBotao:hover > img {
				filter: grayscale(1) contrast(0.3) brightness(5);
			}

		header .cabecalho .iconeBotao > span {
			position: relative;
			top: -8px;
		}

			header .cabecalho .iconeBotao:hover > span {
				color: var(--backCorpo);
			}

header .menuPrincipal {
	position: relative;
	padding: 0;
}

	header .menuPrincipal::before {
		background: var(--corPadrao);
	}

/* Corpo
/* ...... */

main .tireDuvidas {
	position: fixed;
	top: 57%;
	right: 2%;
	z-index: 999;
}

	main .tireDuvidas a {
		display: block;
		background: url("../../imagens/website/ico_chat.png") no-repeat;
		width: 100px;
		height: 80px;
		padding: 18px 5px 16px 65px;
		font-size: 1.7rem;
		font-weight: bold;
		color: var(--corFonteClaro);
	}

main .cols {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	gap: 7%;
}

	main .cols-1 { flex: 1 0 60%; }
	main .cols-2 { flex: 1 0 45%; }
	main .cols-3 { flex: 1 0 30%; }

main .cab-int h1 { margin-bottom: 15px; }
main .cab-int h2 { color: var(--corFonteClaro); }

/* Rodapé
/* ...... */

footer {
	background: var(--corPadrao);
}

footer * {
	color: var(--backCorpo);
}

footer .menuInferior > div {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	gap: 40px;
}

	footer .menuInferior > div div {
		flex: 1 0 150px;
	}

		footer .menuInferior > div div:nth-of-type(1) {
			flex-basis: 200px;
		}

		footer .menuInferior > div img {
			width: 20px;
			position: relative;
			top: 5px;
			margin-right: 10px;
			filter: brightness(20);
		}

	footer .menuInferior > div div ul {
		margin: 0;
		padding: 0;
	}

		footer .menuInferior > div div ul li {
			list-style: none;
			margin: 20px 0 0 0;
		}

	footer .menuInferior > div div a {
		transition: 0.3s;
		color: var(--backCorpo);
	}

		footer .menuInferior > div div a:hover {
			color: var(--corPadrao2);
		}

		footer .menuInferior > div div:nth-of-type(1) a:hover {
			text-decoration: underline;
		}

/*  Copyright
/* .......... */

footer * {
	color: var(--backCorpo);
}

footer .copyright {
	padding: 30px 0 15px 0;
	z-index: 9999;
}

	footer .copyright div {
		font-size: 1.8rem;
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: wrap;
	}

	footer .copyright div p:nth-of-type(1) { text-align: left; }
	footer .copyright div p:nth-of-type(2) { text-align: right; }

		footer .copyright div a img {
			width: 15px;
			filter: brightness(20);
			transition: 0.5s;
			margin-left: 5px;
			position: relative;
			top: 5px;
		}