@charset "UTF-8";

/*
#003c5e - Azul
#201815 - Marron
#83a735 - verde
#ffffff - Branco
*/
/* Sistemas de tamanhos - https://typescale.com/
Fontes - Minor Third 1.200 - Em PX
4.4 - 5.4 - 6.4 - 7.7 - 9.2 - 11.1 - 13.3 - 16 - 19.2 - etc. Página apostila 364

*/

* {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}
html {
	font-size: 62.5%;
}

:root {
	--corpreto: #000000;
	--corareia: #c79f78;
	--cormarron: #855e4e;
	--corbege: #fdfaf0;
	--corbranco: #ffffff;
	--fontepadrao: sans-serif;
	--fontedestaque: serif;
}

img:hover,
img:active {
	fill: var(--cormarron);
}
body {
	font-family: var(--fontedestaque);
	color: var(--cormarron);
	font-size: 1.6rem;
	line-height: 2rem;
}

/* CABEÇALHO */
.cabecalho {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.3rem;
	padding: 1.6rem 0rem;
	box-shadow: 0 0rem 0.1rem 0.2rem rgba(241, 238, 215, 0.493);
	position: sticky;
	top: 0;
	left: 0;
	background-color: var(--corbranco);
	white-space: nowrap;
}

.nav-icones {
	display: none;
}

.fixado {
	position: sticky;
	top: 0rem;
	left: 0rem;
	z-index: 9999;
}

.logo_cabecalho {
	max-width: 40rem;
}

.logo_cabecalho img {
	height: 6rem;
	width: auto;
}

.item_cabecalho a {
	color: var(--corareia);
	font-size: 2rem;
	text-decoration: none;
	font-weight: 550;
	list-style: none;
}

.item_cabecalho a:hover,
.item_cabecalho a:active {
	color: var(--cormarron);
}

.item_cabecalho.contem_filhos::after {
	content: '\2bc6';
}

.contem_filhos {
	position: relative;
}

.contem_filhos ul {
	display: none;
	flex-flow: column;
	gap: 0;
	align-items: stretch;
	width: max-content;
	position: absolute;
	left: 0;
	background-color: var(--corbranco);
	padding: 0.41rem;
	border-radius: 1.5rem;
	box-shadow: 0 0.1rem 0.1rem 0 rgba(36, 134, 36, 0.15),
		inset 0 0 0.1rem 0.1rem rgba(36, 134, 36, 0.15);
}

.contem_filhos ul li {
	border-bottom: solid 0.1px rgba(36, 134, 36, 0.1);
	padding: 0.41rem 2rem;
}

.contem_filhos ul li:last-child {
	border-bottom: none;
}

.contem_filhos:hover ul {
	display: flex;
}

.item_cabecalho.abrir_empresa {
	background-color: var(--corareia);
	border-radius: 1rem;
	padding: 1rem 1.5rem;
	box-shadow: 0 0.1rem 1rem 0 #20181577;
	text-align: center;
}

.abrir_empresa a {
	color: #ffffff;
	width: 45vh;
	height: 9vh;
}

.item_cabecalho.abrir_empresa:hover {
	background-color: var(--cormarron);
	border-radius: 1rem;
	padding: 1rem 1.5rem;
	transition: transform 0.3s ease, filter 0.3s ease;
	transform: scale(1.2);
}

.abrir_empresa a:hover {
	color: #ffffff;
}

nav ul {
	display: flex;
	list-style: none;
	align-items: center;
	gap: 2.5rem;
}

/* FOOTER */
.secao_rodape {
	padding: 9.6rem;
	color: var(--corareia);
	background-color: var(--corbege);
	box-shadow: 0 1.33rem 0.6rem 0 rgba(243, 242, 229, 0.836),
		inset 0 0.33rem 0.6rem 0 rgba(242, 245, 228, 0.678);
}

.secao_rodape ul {
	list-style: none;
}

.flex_rodape {
	display: flex;
	justify-content: center;
	align-items: top;
	gap: 7rem;
	z-index: 9999;
	padding-bottom: 8rem;
}

.flex_rodape a {
	max-width: 500px;
	text-align: center;
}

.item_rodape {
	font-weight: 55rem;
	display: flex;
	flex-flow: column;
	gap: 2.4rem;
}

.item_rodape a {
	width: 50%;
	color: var(--corareia);
	text-decoration: none;
}

.item_rodape ul {
	display: flex;
	flex-flow: column;
	gap: 1rem;
}

.item_rodape a:hover,
.item_rodape a:active {
	color: var(--cormarron);
}

.item_rodape h2 {
	color: var(--corareia);
}

.logo_rodape {
	margin: -5rem;
	max-width: 300px;
	height: auto;
	border-radius: 0.4rem;
	box-shadow: 0.6rem 0.6rem 0.6rem 0.6rem rgba(246, 252, 223, 0.185);
	min-width: 200px;
}
.flex_rodape_II {
	border-top: solid 0.05rem var(--corareia);
	display: flex;
	justify-content: center;
	align-items: top;
	gap: 2rem;
	z-index: 9999;
	padding-top: 8rem;
}

.flex_rodape_II div {
	display: flex;
	flex-flow: column;
	line-height: 3.4rem;
	gap: 2rem;
}

.flex_rodape_II h2 {
	color: var(--corareia);
}

.logo_rodape_II {
	display: flex;
}

.logoredessociais {
	border-radius: 3rem;
	width: 50%;
	border: solid 0.3rem #ffffff;
}

.logoredessociais:hover {
	border-radius: 2.5rem;
	transform: scale(1.1); /* Aumenta o tamanho da imagem */
	filter: brightness(120%); /* Torna a imagem mais clara */
}

#Direitos_Reservados {
	display: flex;

	color: var(--corareia);
	margin-bottom: 2rem; /* Espaço entre o título e o mapa */
	font-family: var(--fontedestaque);

	font-size: 2rem;
	text-align: center;
}

.logo_whats {
	position: fixed;
	right: 2rem;
	z-index: 9999;
	bottom: 0.8rem;
	width: 8.5rem;
	overflow: hidden; /* BLOQUEIA VAZAMENTO */
}

.logo_whats img {
	max-width: 80%;
	border-radius: 2rem;
}

.logo_whats img:hover {
	border-radius: 2.5rem;
	transition: transform 0.3s ease, filter 0.3s ease;
	transform: scale(1.05); /* Aumenta o tamanho da imagem */
	filter: brightness(120%); /* Torna a imagem mais clara */
}

/* Container que envolve o H2 e o Iframe */

.titulo-mapa {
	margin-bottom: 2rem; /* Espaço entre o título e o mapa */
	font-family: var(--fontedestaque);
	color: var(--cormarron);
	font-size: 2.4rem;
}

/* =========================================
   CORREÇÃO DO MENU MOBILE SOBRE A BARRA
   ========================================= */

/* 1. Garante que o menu (ul) tenha um índice Z supremo */
.ulajustado {
    z-index: 2147483647 !important; /* Valor máximo permitido em CSS */
}

/* 2. Quando o menu estiver ABERTO (body com classe nav-aberto): */
body.nav-aberto header.cabecalho {
    /* Força o header a ir para o topo absoluto, ignorando o cálculo do JS momentaneamente */
    top: 0 !important; 
    
    /* Garante que o header fique na frente da barra de anúncios */
    z-index: 2147483647 !important; 
}

body.nav-aberto .announcement-bar {
    /* Rebaixa a barra de anúncios para trás do menu */
    z-index: 0 !important; 
    
    /* Opcional: Se quiser que a barra suma completamente visualmente */
    /* display: none; */ 
}