/**** Menu Padrão ****/

.menu-padrao,
.menu-padrao ul {
	/*background-color: #C5C5C5;*/
}
@media (max-width: 767px) {
	.menu-padrao .container {
		padding: 0;
	}
}
@media (max-width: 1199px) {
	.menu-padrao ul.lista-menu-principal {
		font-size: 1.3em;
	}
	.menu-padrao ul.lista-menu-principal[data-toggle="closed"] {
		display: none !important;
	}
	.menu-padrao ul.lista-menu-principal > li:first-child {
		border-top: 1px solid transparent;
	}
}
@media (min-width: 1200px) {
	/*	.menu-padrao ul.lista-menu-principal {
		height: initial !important;
	}*/
}
.menu-padrao ul.lista-menu-principal {
	margin: 0;
}

/* Botão menu mobile */
.toggle-menu {
	display: inline-block;
	margin: 10px;
	width: 50px;
	height: 40px;
	border: 1px solid white;
	border-radius: 4px;
	background: #004035;
	outline: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.toggle-menu:hover {
	cursor: pointer;
}
.toggle-menu > .listra {
	margin: 6px 10px;
	border: 1px solid white;
}

/* Itens em geral */
.menu-padrao ul.lista-menu-principal li {
	position: relative;
	list-style: none;
	white-space: nowrap;
}
.menu-padrao ul.lista-menu-principal li:hover {
	/*background-color: lightgray;*/
}
.menu-padrao ul.lista-menu-principal li > :first-child {
	display: block;
	text-decoration: none;
	/*color: black;*/
}
@media (max-width: 1199px) {
	.menu-padrao ul.lista-menu-principal li {
		font-size: 0.9em;
	}
}

/* Subitens em geral */
@media (min-width: 900px) {
	.menu-padrao ul.lista-menu-principal li.parent > ul {
		display: none;
		position: absolute;
		z-index: 9999;
		top: 39px;
	}
}
@media (max-width: 1199px) {
}
.menu-padrao ul.lista-menu-principal li.parent > ul > li > :first-child {
	padding: 0 10px;
	min-width: 187px;
	line-height: 40px;
}
.menu-padrao ul.lista-menu-principal li.parent:hover > ul {
	display: block;
}

/* Itens principais */
@media (min-width: 1200px) {
	.menu-padrao ul.lista-menu-principal > li {
		float: left;
	}
}
.menu-padrao ul.lista-menu-principal > li > :first-child {
	padding: 0 2px;
	line-height: 50px;
}
/* .menu-padrao ul.lista-menu-principal > li.parent > :first-child::after {
	display: inline-block;
    width: 0;
    height: 0;
    margin-left: 2px;
    vertical-align: middle;
    border-top: 4px solid;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    content: '';
} */

/* Subitens depois do principal */
.menu-padrao ul.lista-menu-principal > li.parent > ul li.parent > ul {
	top: 0;
	left: 100%;
}
.menu-padrao
	ul.lista-menu-principal
	> li.parent
	> ul
	li.parent
	> :first-child::after {
	display: inline-block;
	width: 0;
	height: 0;
	margin-left: 4px;
	vertical-align: middle;
	border-top: 4px solid transparent;
	border-left: 4px solid;
	border-bottom: 4px solid transparent;
	content: "";
}

/* Casinha da home */
@media (min-width: 1200px) {
	ul.lista-menu-principal[class*="casinha-"] > li:first-child > :first-child {
		width: 50px;
		font-size: 0;
		background-repeat: no-repeat;
		background-position: center;
		background-size: 30px;
	}
	ul.lista-menu-principal.casinha-preta > li:first-child > :first-child {
		background-image: url(../img/home-icon-black.png);
	}
	ul.lista-menu-principal.casinha-branca > li:first-child > :first-child {
		background-image: url(../img/home-icon-white.png);
	}
}

ul.nav-child.show {
	display: block;
}

.s.hide {
	display: none;
}
span.s {
	border-right: 30px solid white;
	border-top: 29px solid transparent;
	border-bottom: 30px solid transparent;
	width: 0px;
	right: 27px;
	top: 13px;
	border-width: 7px;
	position: absolute;
}
span.s1 {
	border: solid transparent;
	border-color: rgba(136, 183, 213, 0);
	border-top-color: white;
	float: left;
	width: 8px;
	height: 8px;
	top: -27px;
	right: 26px;
	display: block;
	z-index: 999;
	border-width: 7px;
	position: absolute;
}
.nav > li {
	position: relative;
	display: block;
}
ul.nav-child {
	/* display: none; */
}
ul.nav-child.unstyled.small {
	background-color: #f5f5f5;
	border-top: none;
	position: relative;
	z-index: 4;
	width: 100%;
	right: 0px;
	/* padding: 10px 0px; */
	margin-top: 7px;
	border-top: 1px solid whitesmoke;
}
ul.nav.menu.mod-list {
	background: #026841;
}
.nav > li > :first-child {
	position: relative;
	display: block;
	padding: 10px 15px;
}
ul.nav.menu.mod-list li {
	list-style: none;
}

.toggle-menu {
	display: none !important;
}

/* Mostra o menu apenas em telas de 1024px para baixo */
@media only screen and (max-width: 1025px) {
	.toggle-menu {
		display: block !important; /* Ou 'flex', dependendo do seu layout */
	}

	/* Botão toggle visível apenas em mobile */
	#menu .toggle-menu {
		display: block !important;
		margin-left: auto;
		margin-right: 30px;
		width: 50px;
		height: 40px;
		border: 1px solid #fff;
		border-radius: 4px;
		background: #004035;
		cursor: pointer;
		z-index: 10001;
	}

	/* Menu escondido por padrão */
	#menu ul.lista-menu-principal {
		display: none;
		position: absolute;
		top: 130%; /* logo abaixo do header */
		right: -31px;
		width: 110vw;
		background-color: #164b3f !important; /* cor consistente */
		z-index: 10000;
		flex-direction: column; /* vertical */
		padding: 0 !important;
	}

	#menu nav.menu-padrao {
		width: 100vw;
		justify-items: right;
		background: transparent;
	}

	/* Quando ativo (classe adicionada via JS) */
	#menu ul.lista-menu-principal.open {
		display: flex;
	}

	/* Itens do menu */
	ul.lista-menu-principal li {
		list-style: none;

		place-items: anchor-center;
	}

	#menu ul.lista-menu-principal a {
		color: #fff;
		text-decoration: none;
		font-size: 1.2rem;
	}

	#menu ul.lista-menu-principal a:hover {
		background: rgba(255, 0, 0, 0.1);
	}

	#menu ul.lista-menu-principal li {
		border-bottom: 1px solid rgba(255, 255, 255, 0.3); /* separador sutil */
		padding: 0; /* altura e espaçamento interno */
		line-height: 1.6; /* melhora a leitura do texto */
		min-height: 50px;
		align-content: center;
	}

	#menu ul.lista-menu-principal li:last-child {
		border-bottom: none; /* remove a borda do último item */
	}

	#menu.menu-padrao {
		background-color: transparent !important;
	}

	#menu .container-fluid.header-menu .col-md-2 {
		width: 70% !important;
	}

	#menu .container-fluid.header-menu .col-md-10 {
		width: 30%;
	}

	#menu .menu-padrao ul.lista-menu-principal li.parent > ul {
		display: none;
		position: relative;
		z-index: 9999;
		top: 0px;
		background-color: #7c9e93;
		width: 100%;
	}
	#menu .menu-padrao ul.lista-menu-principal li.parent:hover > ul li a,
	#menu .menu-padrao ul.lista-menu-principal li.parent:hover > ul li span {
		color: #ffffff !important;
	}
	#menu ul.lista-menu-principal li:hover > a,
	#menu ul.lista-menu-principal li:hover > span {
		color: #ffffff;
	}
	.menu-padrao ul.lista-menu-principal li:hover {
		background-color: #164b3f;
	}
	#menu ul.lista-menu-principal li a,
	#menu ul.lista-menu-principal li span {
		white-space: normal;
		max-width: max-content;
		min-width: 100%;
	}

	.menu-padrao ul.lista-menu-principal li.parent > ul li a,
	.menu-padrao ul.lista-menu-principal li.parent > ul li span,
	div#menu ul.lista-menu-principal li ul.nav-child li a {
		text-align: center;
		min-width: 100% !important;
	}

	.menu-padrao ul.lista-menu-principal li.parent > ul > li > :first-child {
		min-width: min-content;
	}

	.menu-padrao ul.lista-menu-principal li {
		width: 100%;
	}

	#menu ul.lista-menu-principal li a,
	#menu ul.lista-menu-principal li span {
		color: #ffffff;
		min-height: 40px;
		place-content: center;
	}
	.menu-padrao ul.lista-menu-principal li.parent:hover > ul {
		display: block !important;
	}
}
