
@font-face {
	src: url("https://www.jpcms.com.br/lai092026/fonts/OpenSans-Bold.ttf");
	font-family: 'OpenSans Bold'; }

@font-face {
	src: url("https://www.jpcms.com.br/lai092026/fonts/OpenSans-Regular.ttf");
	font-family: 'OpenSans Regular'; }

@font-face {
	src: url("https://www.jpcms.com.br/lai092026/fonts/OpenSans-SemiBold.ttf");
	font-family: 'OpenSans SemiBold'; }

@font-face {
	src: url("https://www.jpcms.com.br/lai092026/fonts/OpenSans-Light.ttf");
	font-family: 'OpenSans Light'; }


a {
	text-decoration: none !important; }

.titulo {
	border-left: 5px solid #008c3d;
	padding: 0 5px;
	margin-bottom: 35px; }
	.titulo h1 {
		font-size: 42px;
		color: #808080;
		font-family: 'OpenSans Bold', Arial, sans-serif; }

.slick-dots {
	margin-bottom: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none; }
	.slick-dots li.slick-active button {
		background: #3FA8F4; }
	.slick-dots li {
		margin-left: 5px; }
		.slick-dots li button {
			font-size: 0;
			line-height: 0;
			display: block;
			width: 10px;
			height: 10px;
			padding: 5px;
			cursor: pointer;
			color: transparent;
			border: 0;
			outline: none;
			margin-top: 10px;
			opacity: 80%;
			background: #F1F1F1; }
			.slick-dots li button:hover {
				background: #3FA8F4; }

.header-interno {
	background: #008c3d;
	padding: 1em 0;
	margin-bottom: 50px; }
	.header-interno .titulo {
		margin: 0;
		padding: 0;
		font-family: 'OpenSans Regular', Arial, sans-serif !important;
		text-transform: uppercase; }
		.header-interno .titulo h2 {
			color: #ffc300;
			font-size: 24px;
			margin: 0; }
		.header-interno .titulo h1 {
			color: #fff;
			font-size: 56px;
			font-family: 'OpenSans Regular', Arial, sans-serif !important;
			margin: 0;
			border-bottom: 5px solid #ffc300; }

.btn-primaria {
	background-color: #008c3d;
	color: #fff;
	padding: 10px 40px; }

.paginacao {
	font-family: 'OpenSans Regular', Arial, sans-serif;
	font-size: 24px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center; }
	.paginacao .anterior, .paginacao .proximo {
		background: #008c3d;
		border-radius: 15px;
		font-size: 42px;
		color: #fff;
		width: 60px;
		height: 60px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center; }
		.paginacao .anterior:hover, .paginacao .proximo:hover {
			background: #00386b; }
	.paginacao .page-numbers {
		color: #008b3b;
		padding: 0 10px; }
		.paginacao .page-numbers.active, .paginacao .page-numbers:hover {
			color: #ffc300;
			font-weight: bolder; }

.perguntas-frequentes {
	padding: 2em 0; }
	.perguntas-frequentes #pergunta .card {
		border: none; }
		.perguntas-frequentes #pergunta .card .card-header {
			padding: 5px 0;
			background: #F1F1F1; }
			.perguntas-frequentes #pergunta .card .card-header button {
				color: #333; }
		.perguntas-frequentes #pergunta .card:nth-child(even) .card-header {
			background: #fff; }

header hr {
	border-width: 10px;
	border-color: #ffc300;
	margin: 0; }

header .links {
	background: #F1F1F1; }
	header .links .redes-sociais a {
		padding: 0 2px; }
		header .links .redes-sociais a:hover img {
			-webkit-filter: brightness(10%);
			filter: brightness(10%); }
	header .links .link-transparencia {
		height: 100%;
		background: #008c3d;
		padding: 5px 10px; }
		header .links .link-transparencia a {
			display: block;
			color: #fff; }
		header .links .link-transparencia:hover {
			background: #00386b; }

header .navbar .navbar-brand {
	width: 20%;
	margin: 0; }

header .navbar ul li a {
	text-align: center;
	padding-left: 0 !important;
	padding-right: 0 !important;
	padding-bottom: 10px;
	margin-left: 15px;
	font-family: 'OpenSans Regular', Arial, sans-serif;
	font-size: 16px;
	color: #008b3b;
	border-bottom: 5px solid #F1F1F1;
	text-transform: uppercase; }
	header .navbar ul li a:hover {
		border-color: #008c3d;
		color: #008c3d;
		background: none; }

header .navbar ul li a.dropdown-item {
	border: none;
	margin: 0;
	padding: 10px 15px !important; }

@media (max-width: 1200px) {
	header .navbar ul li a {
		font-size: 12px; } }

@media (max-width: 992px) {
	header .navbar .navbar-brand {
		width: 35% !important; }
	header .navbar ul li a {
		border: none !important; } }

.index .informacoes {
	background: #008c3d;
	min-height: 150px; }
	.index .informacoes .endereco, .index .informacoes .telefones, .index .informacoes .funcionamento {
		margin-top: 15px;
		font-family: 'OpenSans Light', Arial, sans-serif; }
		.index .informacoes .endereco h1, .index .informacoes .telefones h1, .index .informacoes .funcionamento h1 {
			font-size: 12px;
			color: #e8ac00;
			margin: 0; }
		.index .informacoes .endereco p, .index .informacoes .telefones p, .index .informacoes .funcionamento p {
			font-size: 14px;
			color: #fff; }

.index .form-inline {
	margin-top: 12px;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center; }
	.index .form-inline input[type="search"], .index .form-inline button[type="submit"] {
		background: none;
		border: none; }

@media (max-width: 768px) {
	.index .informacoes {
		padding-bottom: 2em; }
		.index .informacoes .endereco, .index .informacoes .telefones, .index .informacoes .funcionamento {
			margin: 0; } }

.index .slider-principal {
	position: relative;
	top: -5vw;
	margin-bottom: -5vw; }
	.index .slider-principal .cabecalho {
		background: #ffc300;
		color: #fff;
		width: 90%;
		position: absolute;
		right: 5%;
		bottom: 1%;
		text-align: center;
		height: 100px; }
	@media (max-width: 992px) {
		.index .slider-principal {
			top: -2vw; }
			.index .slider-principal .cabecalho {
				position: inherit;
				width: 100%; } }
	@media (max-width: 768px) {
		.index .slider-principal {
			top: -3vw; } }

.index .acesso-rapido {
	padding: 2em 0; }
	.index .acesso-rapido .titulo {
		margin-bottom: 0; }
	.index .acesso-rapido .lista-acesso .acesso a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex; }
		.index .acesso-rapido .lista-acesso .acesso a figure {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			-ms-flex-align: center;
			align-items: center;
			-webkit-box-pack: center;
			-ms-flex-pack: center;
			justify-content: center;
			background: #F1F1F1;
			width: 50%;
			min-height: 100px;
			margin-right: 7.5px; }
			.index .acesso-rapido .lista-acesso .acesso a figure img {
				width: 50px; }
			@media (max-width: 768px) {
				.index .acesso-rapido .lista-acesso .acesso a figure {
					width: 120px;
					height: 120px; } }
		.index .acesso-rapido .lista-acesso .acesso a .cabecalho {
			font-family: 'OpenSans Regular', Arial, sans-serif;
			width: 50%; }
			.index .acesso-rapido .lista-acesso .acesso a .cabecalho h2 {
				font-size: 20px;
				color: #008c3d; }
			.index .acesso-rapido .lista-acesso .acesso a .cabecalho p {
				font-size: 14px;
				color: #000; }

.index .consulta, .sic .consulta {
	background: #F1F1F1;
	padding: 2em 0;
}
.index .consulta h1, .sic .consulta h1 {
	display: none;
	text-align: center;
	color: #008c3d;
	font-family: 'OpenSans Regular', Arial, sans-serif;
	font-size: 28px;
	margin-bottom: 25px;
}
@media (max-width: 768px) {
			.index .consulta h1, .sic .consulta h1 {
				display: block; } }
	.index .consulta #s, , .sic .consulta #s {
		border: 15px solid #008c3d;
		font-size: 1.125rem;
		border-radius: 10px;
		height: 70px; }
		.index .consulta #s::-webkit-input-placeholder, .sic .consulta #s::-webkit-input-placeholder{
			font-family: 'OpenSans Light', Arial, sans-serif;
			font-size: 18px;
			color: #989898; }
		.index .consulta #s::-moz-placeholder, .sic .consulta #s::-moz-placeholder{
			font-family: 'OpenSans Light', Arial, sans-serif;
			font-size: 18px;
			color: #989898; }
		.index .consulta #s:-ms-input-placeholder, .sic .consulta #s:-ms-input-placeholder{
			font-family: 'OpenSans Light', Arial, sans-serif;
			font-size: 18px;
			color: #989898; }
		.index .consulta #s::-ms-input-placeholder, .sic .consulta #s::-ms-input-placeholder{
			font-family: 'OpenSans Light', Arial, sans-serif;
			font-size: 18px;
			color: #989898; }
		.index .consulta #s::placeholder, .sic .consulta #s::placeholder{
			font-family: 'OpenSans Light', Arial, sans-serif;
			font-size: 18px;
			color: #989898; }
	.index .consulta #searchbutton, .sic .consulta #searchbutton{
		background: #008c3d;
		font-family: 'OpenSans Light', Arial, sans-serif;
		font-size: 18px;
		color: #fff;
		border: none;
		cursor: pointer;
		height: 30px;
		position: absolute;
		top: 29%;
		right: 5%;
		border-radius: 5px;
		padding: 0 15px; }
		.index .consulta #searchbutton:hover, .sic .consulta #searchbutton:hover{
			background: #ffc300; }
		@media (max-width: 992px) {
			.index .consulta #searchbutton, .sic .consulta #searchbutton{
				right: 8%; } }


.index .noticias {
	padding: 2em 0;
	margin-bottom: 0; }
	.index .noticias .slider-noticias {
		margin-bottom: 25px; }
		.index .noticias .slider-noticias .noticia-slide {
			position: relative; }
			.index .noticias .slider-noticias .noticia-slide img {
				width: 100%; }
			.index .noticias .slider-noticias .noticia-slide .cabecalho {
				position: absolute;
				margin: 25px 10px;
				padding: 10px;
				bottom: 0;
				background: #008c3d;
				color: #fff; }
				.index .noticias .slider-noticias .noticia-slide .cabecalho .categoria {
					background: #ffc300;
					font-family: 'OpenSans Light', Arial, sans-serif;
					font-size: 13px;
					padding: 2px 10px; }
				.index .noticias .slider-noticias .noticia-slide .cabecalho h2 {
					font-family: 'OpenSans Bold', Arial, sans-serif;
					font-size: 23px; }
	.index .noticias .dots-noticias {
		position: absolute;
		top: 74%;
		right: 6%; }
	.index .noticias .principais .noticia img {
		width: 100%; }
	.index .noticias .principais .noticia h2 {
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		font-size: 20px;
		color: #666; }
	.index .noticias .principais .noticia:hover h2 {
		color: #000; }
	.index .noticias .outras-noticias {
		margin: 20px 0;
		padding-left: 20px; }
		.index .noticias .outras-noticias li {
			list-style: square;
			color: #008c3d; }
			.index .noticias .outras-noticias li a {
				color: #4D4D4D;
				font-family: 'OpenSans Light', Arial, sans-serif; }
				.index .noticias .outras-noticias li a h6 {
					font-size: 14px;
					margin: 0;
					display: inherit; }
				.index .noticias .outras-noticias li a h2 {
					font-size: 17px;
					font-family: 'OpenSans Regular', Arial, sans-serif; }
				.index .noticias .outras-noticias li a:hover h6, .index .noticias .outras-noticias li a:hover h2 {
					font-weight: bold; }
	@media (max-width: 1200px) {
		.index .noticias .dots-noticias {
			top: 57%;
			right: 8%; }
		.index .noticias .principais .noticia h2 {
			font-size: 16px; } }
	@media (max-width: 992px) {
		.index .noticias .dots-noticias {
			top: 78%;
			right: 8%; }
		.index .noticias .principais .noticia h2 {
			font-size: 22px; }
		.index .noticias .outras-noticias li a h6 {
			font-size: 18px; }
		.index .noticias .outras-noticias li a h2 {
			font-size: 22px; } }
	@media (max-width: 768px) {
		.index .noticias .dots-noticias {
			top: 68%; } }

.index .servicos-online {
	padding: 2em 0; }
	.index .servicos-online .servico {
		margin-bottom: 35px; }
		.index .servicos-online .servico .cabecalho {
			padding: 15px;
			background: #E5E5E5;
			font-size: 31px;
			font-family: 'OpenSans Regular', Arial, sans-serif; }
			.index .servicos-online .servico .cabecalho img {
				margin-right: 15px; }
			.index .servicos-online .servico .cabecalho h2 {
				color: #4D4D4D;
				text-transform: uppercase;
				margin: 0; }
		.index .servicos-online .servico ul {
			margin: 20px 0;
			padding-left: 20px; }
			.index .servicos-online .servico ul li {
				list-style: square;
				color: #008c3d; }
				.index .servicos-online .servico ul li a {
					color: #4D4D4D;
					font-family: 'OpenSans Light', Arial, sans-serif;
					font-size: 24px; }
					.index .servicos-online .servico ul li a:hover {
						font-weight: bold; }

.index .secretarias-orgaos {
	padding: 2em 0; }
	.index .secretarias-orgaos .slider-secretarios {
		/* the parent */ }
		.index .secretarias-orgaos .slider-secretarios .slick-slide {
			margin: 0 15px; }
		.index .secretarias-orgaos .slider-secretarios .slick-list {
			margin: 0 -15px; }
	.index .secretarias-orgaos .secretario {
		font-family: 'OpenSans Regular', Arial, sans-serif;
		margin-bottom: 15px; }
		.index .secretarias-orgaos .secretario h3 {
			color: #666666;
			font-size: 14px;
			margin: 0; }
		.index .secretarias-orgaos .secretario h2 {
			color: #008c3d;
			font-size: 24px; }
		.index .secretarias-orgaos .secretario:hover h2 {
			font-weight: bold; }

.index .multimidia .titulo {
	border-left: none;
	border-bottom: 2px solid #008c3d !important;
	padding: 0; }
	.index .multimidia .titulo h1 {
		margin: 0;
		text-transform: uppercase;
		font-family: 'OpenSans Regular', Arial, sans-serif;
		font-size: 42px; }

.index .multimidia .videos {
	margin-bottom: 25px; }
	.index .multimidia .videos iframe {
		height: 500px; }
	@media (max-width: 768px) {
		.index .multimidia .videos iframe {
			height: 300px; } }

.index .multimidia .imagens {
	margin-bottom: 25px; }
	.index .multimidia .imagens .titulo {
		border-color: #e8ac00; }
	.index .multimidia .imagens a .cabecalho {
		font-family: 'OpenSans Regular', Arial, sans-serif;
		color: #000; }
		.index .multimidia .imagens a .cabecalho h2 {
			font-size: 24px; }
	.index .multimidia .imagens a:hover .cabecalho h2 {
		font-weight: 100; }

.index .multimidia .audios {
	margin-bottom: 0px; }
	.index .multimidia .audios .titulo {
		border-color: #e8ac00; }
	.index .multimidia .audios .audio {
		margin-bottom: 20px; }
		.index .multimidia .audios .audio .cabecalho {
			font-size: 16px;
			font-family: 'OpenSans Regular', Arial, sans-serif;
			color: #707070; }

.links-uteis {
	padding: 2em 0;
	margin-bottom: 100px; }
	.links-uteis h1 {
		color: #808080;
		font-size: 24px;
		font-family: 'OpenSans Regular', Arial, sans-serif;
		text-align: center; }

footer {
	background: #008c3d; }
	footer hr {
		border-width: 25px;
		border-color: #ffc300;
		margin: 0; }
	footer .logo {
		width: 255px;
		height: 255px;
		background: #fff;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		border-top-right-radius: 35px;
		border-bottom-left-radius: 35px; }
		footer .logo figure {
			padding: 0 20px; }
	footer .funcionamento h2, footer .telefones h2, footer .endereco h2 {
		font-family: 'OpenSans Bold', Arial, sans-serif;
		font-size: 10px;
		margin: 0;
		color: #ffc300; }
	footer .funcionamento p, footer .telefones p, footer .endereco p {
		font-family: 'OpenSans Light', Arial, sans-serif;
		font-size: 12px;
		color: #fff; }
	footer .menu ul {
		padding: 0;
		list-style: none; }
		footer .menu ul li {
			text-transform: uppercase; }
			footer .menu ul li a {
				font-family: 'OpenSans Regular', Arial, sans-serif;
				font-size: 12px;
				color: #fff; }
				footer .menu ul li a:hover {
					color: #ffc300; }
	footer .direitos {
		font-family: 'OpenSans Regular', Arial, sans-serif;
		color: #fff;
		font-size: 12px; }
	footer .redes-sociais a {
		padding: 0 5px; }
	@media (max-width: 768px) {
		footer {
			text-align: center; }
			footer .logo {
				margin: 0 auto 25px auto; }
			footer .funcionamento, footer .telefones, footer .endereco {
				display: none; }
			footer .menu {
				margin: 25px 0; }
			footer .menu-secundario ul {
				display: -webkit-inline-box;
				display: -ms-inline-flexbox;
				display: inline-flex; }
				footer .menu-secundario ul li {
					padding: 0 7.5px; }
			footer .redes-sociais a {
				padding: 0 5px; } }

.gabinete .conteudo {
	font-size: 24px;
	font-family: 'OpenSans Regular', Arial, sans-serif;
	margin-bottom: 100px; }

.gabinete .atendimento, .gabinete .localizacao, .gabinete .contato {
	margin-bottom: 20px; }
	.gabinete .atendimento h2, .gabinete .localizacao h2, .gabinete .contato h2 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		font-family: 'OpenSans Bold', Arial, sans-serif;
		font-size: 36px;
		color: #008b3b; }
		.gabinete .atendimento h2 img, .gabinete .localizacao h2 img, .gabinete .contato h2 img {
			margin-right: 5px; }
	.gabinete .atendimento p, .gabinete .localizacao p, .gabinete .contato p {
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		font-size: 18px;
		color: #4A4A4A;
		margin-bottom: 0; }

@media (max-width: 992px) {
	.gabinete .conteudo {
		margin-bottom: 50px; }
	.gabinete .atendimento h2, .gabinete .localizacao h2, .gabinete .contato h2 {
		font-size: 28px;
		color: #008c3d; }
	.gabinete .atendimento p, .gabinete .localizacao p, .gabinete .contato p {
		color: #707070; } }

.prefeito .conteudo, .o-municipio .conteudo {
	font-family: 'OpenSans Regular', Arial, sans-serif; }
	.prefeito .conteudo figure, .o-municipio .conteudo figure {
		margin-bottom: 15px; }
	.prefeito .conteudo h1, .o-municipio .conteudo h1 {
		font-family: 'OpenSans Bold', Arial, sans-serif;
		color: #008c3d;
		font-size: 36px; }
	.prefeito .conteudo h2, .o-municipio .conteudo h2 {
		color: #ffc300;
		font-size: 24px;
		padding: 0.5em 0; }
	.prefeito .conteudo p, .o-municipio .conteudo p {
		color: #008b3b;
		font-size: 18px; }

@media (max-width: 768px) {
	.prefeito h1, .prefeito h2, .o-municipio h1, .o-municipio h2 {
		text-align: center; } }

.mapa {
	margin-bottom: 100px; }

.secretaria {
	font-family: 'OpenSans Regular', Arial, sans-serif;
	margin-bottom: 100px; }
	.secretaria .conteudo h2 {
		color: #008b3b; }
	.secretaria .conteudo p {
		font-size: 18px; }
	.secretaria .identificacao {
		margin-bottom: 50px; }
		.secretaria .identificacao h3 {
			font-size: 20px;
			color: #ffc300;
			margin: 0; }
		.secretaria .identificacao h1 {
			font-size: 48px;
			color: #008c3d; }
	.secretaria .atendimento, .secretaria .localizacao, .secretaria .contato {
		margin-bottom: 30px; }
		.secretaria .atendimento h2, .secretaria .localizacao h2, .secretaria .contato h2 {
			font-size: 24px;
			color: #4A4A4A; }
		.secretaria .atendimento p, .secretaria .localizacao p, .secretaria .contato p {
			margin: 0; }

.noticias {
	margin-bottom: 100px; }
	.noticias .noticia .data {
		color: #fff;
		background: #ffc300;
		font-size: 19px;
		padding: 0 10px; }
	.noticias .noticia h1 {
		color: #666666;
		font-size: 30px; }
	.noticias .noticia:hover h1 {
		color: #000; }
	@media (max-width: 768px) {
		.noticias .noticia h1 {
			font-size: 19px; } }

.noticia-single {
	margin-bottom: 100px;
	font-family: 'OpenSans Regular', Arial, sans-serif;
	margin-bottom: 30px; }
	.noticia-single .titulo-noticia {
		margin-bottom: 30px; }
		.noticia-single .titulo-noticia .categoria {
			color: #fff;
			background: #ffc300;
			padding: 0 10px; }
		.noticia-single .titulo-noticia h1 {
			font-family: 'OpenSans Bold', Arial, sans-serif; }
		.noticia-single .titulo-noticia h1, .noticia-single .titulo-noticia .publicacao {
			color: #4A4A4A; }
	.noticia-single .conteudo-noticia p {
		color: #4A4A4A; }

.videos {
	margin-bottom: 300px; }
	.videos .video iframe {
		width: 100%;
		height: 483px; }
	.videos .video .titulo-video {
		padding: 2em 0; }
		.videos .video .titulo-video h6 {
			margin: 0;
			font-family: 'OpenSans Light', Arial, sans-serif;
			font-size: 16px;
			color: #ffc300; }
		.videos .video .titulo-video h1 {
			font-family: 'OpenSans Bold', Arial, sans-serif;
			font-size: 42px;
			color: #4A4A4A; }
	.videos .video .descricao p {
		font-family: 'OpenSans Regular', Arial, sans-serif;
		font-size: 24px;
		color: #4A4A4A; }
	.videos .lista-videos iframe {
		width: 100%;
		height: 252px; }
	@media (max-width: 1200px) {
		.videos .video iframe {
			height: 400px !important; }
		.videos .lista-videos iframe {
			height: 200px; } }

.imagens {
	margin-bottom: 100px; }
	.imagens .titulo {
		border: none; }
		.imagens .titulo h1 {
			color: #4A4A4A; }
		.imagens .titulo h2 {
			font-size: 16px;
			color: #4A4A4A; }
	.imagens .galeria .imagem {
		margin-bottom: 30px; }

.audios {
	margin-bottom: 100px; }
	.audios .audio {
		margin-bottom: 25px; }
		.audios .audio .player {
			margin-bottom: 15px; }
		.audios .audio .cabecalho h2 {
			font-family: 'OpenSans SemiBold', Arial, sans-serif;
			font-size: 20px;
			color: #4A4A4A; }
		.audios .audio .cabecalho h3 {
			font-size: 12px;
			color: #4A4A4A; }
	@media (max-width: 992px) {
		.audios .audio .cabecalho h2 {
			font-size: 20px; } }

.contato {
	margin-bottom: 100px; }
	.contato .cabecalho {
		font-family: 'OpenSans Regular', Arial, sans-serif;
		font-size: 16px;
		color: #4A4A4A;
		text-align: center; }
	.contato .form-control {
		border: 2px solid #008b3b; }
		.contato .form-control::-webkit-input-placeholder {
			font-family: 'OpenSans Light', Arial, sans-serif;
			font-size: 16px;
			text-transform: uppercase;
			color: #4A4A4A; }
		.contato .form-control::-moz-placeholder {
			font-family: 'OpenSans Light', Arial, sans-serif;
			font-size: 16px;
			text-transform: uppercase;
			color: #4A4A4A; }
		.contato .form-control:-ms-input-placeholder {
			font-family: 'OpenSans Light', Arial, sans-serif;
			font-size: 16px;
			text-transform: uppercase;
			color: #4A4A4A; }
		.contato .form-control::-ms-input-placeholder {
			font-family: 'OpenSans Light', Arial, sans-serif;
			font-size: 16px;
			text-transform: uppercase;
			color: #4A4A4A; }
		.contato .form-control::placeholder {
			font-family: 'OpenSans Light', Arial, sans-serif;
			font-size: 16px;
			text-transform: uppercase;
			color: #4A4A4A; }
	.contato input.form-control {
		height: 50px; }
	.contato textarea.form-control {
		resize: none; }
	.contato .outros-contatos {
		text-align: center; }
		.contato .outros-contatos a {
			display: block;
			width: 50%;
			margin: 0 auto 25px auto; }
	@media (max-width: 768px) {
		.contato .outros-contatos {
			margin-top: 50px; } }

.acesso-lai .header-interno .row {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center; }

@media (min-width: 1200px) {
	.acesso-lai .container {
		max-width: 1640px; } }

.acesso-lai .perguntas-frequentes {
	padding: 4em 0; }

.acesso-lai .links-uteis {
	padding: 2em 0; }

.acesso-informacao {
	margin-bottom: 50px;
	font-family: 'OpenSans Regular', Arial, sans-serif; }
	.acesso-informacao .descricao {
		margin-bottom: 50px; }
		.acesso-informacao .descricao p {
			font-size: 24px;
			color: #4A4A4A; }

#lai1 .lista-lai .lai {
	margin-bottom: 25px; }
	#lai1 .lista-lai .lai figure {
		background: #F8F8F8;
		height: 280px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		margin: 0; }
	#lai1 .lista-lai .lai .descricao {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		padding: 10px 15px;
		min-height: 280px;
		background: #BCE0FD; }
		#lai1 .lista-lai .lai .descricao h1, #lai1 .lista-lai .lai .descricao p {
			text-align: center; }
		#lai1 .lista-lai .lai .descricao h1 {
			font-size: 28px;
			color: #4A4A4A; }
		#lai1 .lista-lai .lai .descricao p {
			color: #e8ac00;
			font-size: 14px; }
		#lai1 .lista-lai .lai .descricao ul {
			display: none; }
			#lai1 .lista-lai .lai .descricao ul li {
				list-style: square;
				color: #ffc300; }
	#lai1 .lista-lai .lai:hover .descricao {
		background: #008c3d;
		cursor: pointer; }
		#lai1 .lista-lai .lai:hover .descricao h1 {
			color: #fff; }
		#lai1 .lista-lai .lai:hover .descricao ul {
			display: block;
			-webkit-animation: slide-down .3s ease-out;
			animation: slide-down .3s ease-out; }

@-webkit-keyframes slide-down {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-100%); }
	100% {
		opacity: 1;
		-webkit-transform: translateY(0); } }

@keyframes slide-down {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-100%); }
	100% {
		opacity: 1;
		-webkit-transform: translateY(0); } }
			#lai1 .lista-lai .lai:hover .descricao ul li a {
				color: #fff; }
				#lai1 .lista-lai .lai:hover .descricao ul li a:hover {
					text-decoration: underline !important; }

#lai2 .lista-lai .lai .cabecalho, #lai4 .lista-lai .lai .cabecalho, #lai3 .lista-lai .lai .cabecalho {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: #F8F8F8;
	padding: 15px 30px;
	border-radius: 50px; }
	#lai2 .lista-lai .lai .cabecalho img, #lai4 .lista-lai .lai .cabecalho img, #lai3 .lista-lai .lai .cabecalho img {
		margin-right: 20px; }
	#lai2 .lista-lai .lai .cabecalho h1, #lai4 .lista-lai .lai .cabecalho h1, #lai3 .lista-lai .lai .cabecalho h1 {
		text-align: center;
		font-size: 24px;
		margin: 0; }

#lai2 .lista-lai .lai .descricao, #lai4 .lista-lai .lai .descricao, #lai3 .lista-lai .lai .descricao {
	padding: 10px 30px; }
	#lai2 .lista-lai .lai .descricao p, #lai4 .lista-lai .lai .descricao p, #lai3 .lista-lai .lai .descricao p {
		color: #e8ac00;
		font-size: 14px;
		text-align: center; }
	#lai2 .lista-lai .lai .descricao ul li, #lai4 .lista-lai .lai .descricao ul li, #lai3 .lista-lai .lai .descricao ul li {
		list-style: square;
		color: #ffc300; }
		#lai2 .lista-lai .lai .descricao ul li a, #lai4 .lista-lai .lai .descricao ul li a, #lai3 .lista-lai .lai .descricao ul li a {
			color: #008b3b; }
			#lai2 .lista-lai .lai .descricao ul li a:hover, #lai4 .lista-lai .lai .descricao ul li a:hover, #lai3 .lista-lai .lai .descricao ul li a:hover {
				color: #000; }

#lai4 .lista-lai .cabecalho {
	background: none !important; }

#lai4 .lista-lai .descricao {
	padding: 10px 0 0 5px !important; }

#lai4 .menu-lai {
	-webkit-box-orient: horizontal !important;
	-webkit-box-direction: normal !important;
	-ms-flex-direction: row !important;
	flex-direction: row !important; }
	#lai4 .menu-lai .botao-lai {
		margin-bottom: 15px;
		text-align: center;
		min-height: 200px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-flow: column;
		flex-flow: column;
		background: #F1F9FF;
		padding: 0 30px; }
		#lai4 .menu-lai .botao-lai div {
			font-family: 'OpenSans Bold', Arial, sans-serif;
			font-size: 18px;
			color: #4A4A4A;
			text-align: center; }
		#lai4 .menu-lai .botao-lai:hover {
			background: #ffc300; }
			#lai4 .menu-lai .botao-lai:hover div {
				color: #fff; }

#lai4 .active .botao-lai {
	background: #ffc300; }
	#lai4 .active .botao-lai div {
		color: #fff; }

#lai3 .menu-lai {
	border-right: 2px solid #DFDFDF; }
	#lai3 .menu-lai a {
		margin-bottom: 10px;
		color: #4A4A4A; }
		#lai3 .menu-lai a img {
			margin-right: 10px; }
		#lai3 .menu-lai a:hover, #lai3 .menu-lai a.active {
			color: #008c3d;
			font-weight: bold; }

#lai3 .lista-lai .cabecalho {
	background: none !important; }

#lai3 .lista-lai .descricao {
	padding: 10px 0 0 5px !important; }

#lai3 .conteudo-mobile {
	display: none; }

@media (max-width: 768px) {
	#lai3 .menu-lai {
		border-top: 2px solid #DFDFDF;
		border-right: none;
		padding-top: 25px; }
	#lai3 .conteudo {
		display: none; }
	#lai3 .conteudo-mobile {
		display: block;
		margin-top: 15px; } }

#lai5 .arquivo {
	margin-bottom: 100px; }
	#lai5 .arquivo h2, #lai5 .arquivo span {
		font-size: 40px;
		font-family: OpenSans Bold;
		color: #707070; }
	#lai5 .arquivo p {
		font-size: 24px;
		font-family: OpenSans Regular;
		color: #4A4A4A;
		margin: 50px 0; }

.arquivos {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center; }
	.arquivos span {
		font-size: 32px; }
	.arquivos a {
		margin: 0 5px;
		padding-left: 15px;
		padding-right: 15px; }

#lai6 #s {
	font-size: 1.125rem;
	height: 50px; }
	#lai6 #s::-webkit-input-placeholder {
		font-family: 'OpenSans Light', Arial, sans-serif;
		font-size: 18px;
		color: #989898; }
	#lai6 #s::-moz-placeholder {
		font-family: 'OpenSans Light', Arial, sans-serif;
		font-size: 18px;
		color: #989898; }
	#lai6 #s:-ms-input-placeholder {
		font-family: 'OpenSans Light', Arial, sans-serif;
		font-size: 18px;
		color: #989898; }
	#lai6 #s::-ms-input-placeholder {
		font-family: 'OpenSans Light', Arial, sans-serif;
		font-size: 18px;
		color: #989898; }
	#lai6 #s::placeholder {
		font-family: 'OpenSans Light', Arial, sans-serif;
		font-size: 18px;
		color: #989898; }

#lai6 #searchbutton {
	background: #008c3d;
	font-family: 'OpenSans Light', Arial, sans-serif;
	font-size: 18px;
	color: #fff;
	border: none;
	cursor: pointer;
	height: 30px;
	position: absolute;
	top: 12%;
	right: 5%;
	border-radius: 5px;
	padding: 0 15px; }
	#lai6 #searchbutton:hover {
		background: #ffc300; }
	@media (max-width: 992px) {
		#lai6 #searchbutton {
			right: 8%; } }

#lai6 h1 {
	font-family: OpenSans Bold;
	font-size: 32px;
	color: #707070; }

#lai6 .filtro {
	background: #53A8DE; }

main#sic .header-interno .row {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center; }

main#sic .sic {
	margin-bottom: 100px; }
	main#sic .sic p {
		font-size: 20px;
		color: #4A4A4A;
		margin-bottom: 1.5em; }
	main#sic .sic .form-control {
		resize: none;
		height: 50px; }
	main#sic .sic .estatisticas {
		background: linear-gradient(45deg, #6AA5E3, #6866E9);
		color: #fff;
		padding: 15px;
		border-radius: 13px; }
		main#sic .sic .estatisticas h1 {
			font-family: OpenSans Bold;
			font-size: 36px; }
		main#sic .sic .estatisticas span {
			font-family: OpenSans Regular;
			font-size: 20px; }
			main#sic .sic .estatisticas span.value {
				font-family: OpenSans Bold; }



#tamanho_fonte{
	position: absolute;
	right: 0;
	color: #FFF;
	margin: 0 20px 0 0;
	margin-top: 0px;
	margin-right: 20px;
	margin-bottom: 0px;
	margin-left: 0px;
	font-weight: bold;
}
#tamanho_fonte span{
	border: solid 2px #FFF;
	float: right;
	width: 34px;
	height: 30px;
	text-align: center;
	margin: 0 0 0 6px;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	cursor: pointer;
}

/* =========================================================
   CAMADA VISUAL 2026 — modernização de UI, mesma estrutura.
   Só adiciona/refina estilo (radius, sombra, transição, hover).
   Nada aqui remove ou substitui seletor/comportamento acima.
   ========================================================= */

* {
	scroll-behavior: smooth; }

::selection {
	background: #008c3d;
	color: #fff; }

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale; }

a, button, .btn, input, textarea, select {
	transition: all .25s ease; }

a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, .navbar-toggler:focus-visible {
	outline: 3px solid #e8ac00;
	outline-offset: 2px; }

/* header/navbar */
header {
	box-shadow: 0 2px 18px rgba(0,0,0,.08);
	position: relative;
	z-index: 20; }

header .links {
	transition: background .25s ease; }

header .links .link-transparencia {
	border-radius: 20px;
	transition: background .25s ease, transform .2s ease; }
	header .links .link-transparencia:hover {
		transform: translateY(-1px); }

header .links .redes-sociais a img {
	transition: transform .2s ease, filter .2s ease; }
	header .links .redes-sociais a:hover img {
		transform: translateY(-2px) scale(1.08); }

header .navbar ul li a {
	border-radius: 3px 3px 0 0;
	transition: color .2s ease, border-color .2s ease; }

.form-inline input[type="search"] {
	border-radius: 30px;
	padding: 4px 14px !important; }

/* botões */
.btn-primaria {
	border-radius: 30px;
	box-shadow: 0 6px 16px rgba(0,0,0,.15);
	transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease; }
	.btn-primaria:hover {
		transform: translateY(-2px);
		box-shadow: 0 10px 22px rgba(0,0,0,.2); }

.paginacao .anterior, .paginacao .proximo {
	box-shadow: 0 4px 12px rgba(0,0,0,.12);
	transition: transform .2s ease, background-color .2s ease; }
	.paginacao .anterior:hover, .paginacao .proximo:hover {
		transform: translateY(-2px); }

/* campos de busca */
.index .consulta #s, .sic .consulta #s, #lai6 #s {
	border-radius: 14px;
	box-shadow: 0 6px 20px rgba(0,0,0,.08);
	transition: box-shadow .25s ease, border-color .25s ease; }
	.index .consulta #s:focus, .sic .consulta #s:focus, #lai6 #s:focus {
		box-shadow: 0 8px 26px rgba(0,0,0,.14); }

.index .consulta #searchbutton, .sic .consulta #searchbutton, #lai6 #searchbutton {
	border-radius: 10px;
	box-shadow: 0 4px 10px rgba(0,0,0,.15); }

/* cartões / listas com hover elevado */
.perguntas-frequentes #pergunta .card {
	border-radius: 12px;
	overflow: hidden;
	transition: box-shadow .25s ease; }
	.perguntas-frequentes #pergunta .card:hover {
		box-shadow: 0 6px 20px rgba(0,0,0,.08); }

.index .acesso-rapido .lista-acesso .acesso a {
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 4px 14px rgba(0,0,0,.06);
	transition: transform .25s ease, box-shadow .25s ease; }
	.index .acesso-rapido .lista-acesso .acesso a:hover {
		transform: translateY(-4px);
		box-shadow: 0 10px 26px rgba(0,0,0,.12); }
	.index .acesso-rapido .lista-acesso .acesso a figure {
		border-radius: 14px 0 0 14px; }

.index .servicos-online .servico {
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 4px 16px rgba(0,0,0,.06);
	transition: box-shadow .25s ease, transform .25s ease; }
	.index .servicos-online .servico:hover {
		transform: translateY(-3px);
		box-shadow: 0 10px 24px rgba(0,0,0,.1); }

.index .noticias .slider-noticias .noticia-slide {
	border-radius: 16px;
	overflow: hidden; }
	.index .noticias .slider-noticias .noticia-slide img {
		transition: transform .4s ease; }
	.index .noticias .slider-noticias .noticia-slide:hover img {
		transform: scale(1.05); }
	.index .noticias .slider-noticias .noticia-slide .cabecalho {
		border-radius: 10px;
		box-shadow: 0 8px 22px rgba(0,0,0,.15); }

.index .noticias .principais .noticia {
	transition: transform .2s ease; }
	.index .noticias .principais .noticia img {
		border-radius: 12px;
		transition: box-shadow .25s ease; }
	.index .noticias .principais .noticia:hover img {
		box-shadow: 0 8px 20px rgba(0,0,0,.15); }

.index .secretarias-orgaos .secretario {
	transition: transform .2s ease; }
	.index .secretarias-orgaos .secretario:hover {
		transform: translateY(-3px); }

.noticias .noticia {
	transition: transform .2s ease; }
	.noticias .noticia:hover {
		transform: translateY(-3px); }

#lai1 .lista-lai .lai figure {
	border-radius: 14px 14px 0 0; }
#lai1 .lista-lai .lai .descricao {
	border-radius: 0 0 14px 14px;
	box-shadow: 0 4px 14px rgba(0,0,0,.06);
	transition: background-color .25s ease, box-shadow .25s ease; }
	#lai1 .lista-lai .lai:hover .descricao {
		box-shadow: 0 10px 26px rgba(0,0,0,.18); }

#lai2 .lista-lai .lai .cabecalho, #lai3 .lista-lai .lai .cabecalho, #lai4 .lista-lai .lai .cabecalho {
	box-shadow: none; }

#lai4 .menu-lai .botao-lai {
	border-radius: 14px;
	transition: transform .2s ease, background-color .25s ease; }
	#lai4 .menu-lai .botao-lai:hover {
		transform: translateY(-3px); }

main#sic .sic .estatisticas {
	box-shadow: 0 10px 26px rgba(0,0,0,.12); }

/* imagens/galeria */
.imagens .galeria .imagem img, .index .multimidia .imagens a img {
	border-radius: 12px;
	transition: transform .3s ease, box-shadow .3s ease; }
	.imagens .galeria .imagem:hover img, .index .multimidia .imagens a:hover img {
		transform: scale(1.03);
		box-shadow: 0 8px 20px rgba(0,0,0,.15); }

/* footer */
footer {
	border-radius: 24px 24px 0 0;
	overflow: hidden; }
	footer .logo {
		box-shadow: 0 8px 24px rgba(0,0,0,.2); }
	footer .redes-sociais a img {
		transition: transform .2s ease; }
		footer .redes-sociais a:hover img {
			transform: translateY(-2px) scale(1.1); }

/* dots do slick mais modernos */
.slick-dots li button {
	border-radius: 6px;
	transition: width .25s ease, background-color .25s ease; }
.slick-dots li.slick-active button {
	width: 22px;
	border-radius: 6px; }

/* =========================================================
   CAMADA VISUAL 2026 — passo 2: cartões de Acesso à Informação
   (#lai2/#lai3/#lai4), visível sem precisar de hover.
   ========================================================= */

#lai2 .lista-lai {
	margin-top: 10px; }
	#lai2 .lista-lai > div {
		margin-bottom: 24px;
		display: flex; }

#lai2 .lista-lai .lai, #lai3 .lista-lai .lai, #lai4 .lista-lai .lai {
	background: #fff;
	border-radius: 18px;
	box-shadow: 0 6px 22px rgba(0,0,0,.08);
	padding: 26px 22px;
	width: 100%;
	transition: transform .25s ease, box-shadow .25s ease; }
	#lai2 .lista-lai .lai:hover {
		transform: translateY(-6px);
		box-shadow: 0 16px 34px rgba(0,0,0,.14); }
	/* #lai3/#lai4: o "card" é o painel de conteúdo único das abas,
	   não um tile de grade — não faz sentido levantar no hover. */
	#lai3 .lista-lai .lai, #lai4 .lista-lai .lai {
		box-shadow: none; }

#lai2 .lista-lai .lai .cabecalho, #lai3 .lista-lai .lai .cabecalho, #lai4 .lista-lai .lai .cabecalho {
	background: none;
	padding: 0 0 16px 0;
	border-radius: 0;
	border-bottom: 2px solid #F0F0F0;
	margin-bottom: 16px; }
	#lai2 .lista-lai .lai .cabecalho i.fa, #lai3 .lista-lai .lai .cabecalho i.fa, #lai4 .lista-lai .lai .cabecalho i.fa {
		width: 54px;
		height: 54px;
		border-radius: 50%;
		background: #008c3d;
		color: #fff;
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		font-size: 22px !important;
		margin-right: 14px;
		vertical-align: middle; }
	#lai2 .lista-lai .lai .cabecalho h1, #lai3 .lista-lai .lai .cabecalho h1, #lai4 .lista-lai .lai .cabecalho h1 {
		display: inline-block;
		text-align: left;
		vertical-align: middle;
		font-size: 18px;
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		color: #333; }

#lai2 .lista-lai .lai .descricao ul, #lai3 .lista-lai .lai .descricao ul, #lai4 .lista-lai .lai .descricao ul {
	list-style: none;
	padding: 0;
	margin: 0; }
	#lai2 .lista-lai .lai .descricao ul li, #lai3 .lista-lai .lai .descricao ul li, #lai4 .lista-lai .lai .descricao ul li {
		list-style: none; }
	#lai2 .lista-lai .lai .descricao ul li a, #lai3 .lista-lai .lai .descricao ul li a, #lai4 .lista-lai .lai .descricao ul li a {
		display: block;
		color: #555;
		font-family: 'OpenSans Regular', Arial, sans-serif;
		font-size: 14px;
		padding: 8px 0;
		border-bottom: 1px solid #F5F5F5;
		transition: color .2s ease, padding-left .2s ease; }
		#lai2 .lista-lai .lai .descricao ul li a:before, #lai3 .lista-lai .lai .descricao ul li a:before, #lai4 .lista-lai .lai .descricao ul li a:before {
			content: '›';
			color: #008c3d;
			font-weight: bold;
			margin-right: 8px; }
		#lai2 .lista-lai .lai .descricao ul li a:hover, #lai3 .lista-lai .lai .descricao ul li a:hover, #lai4 .lista-lai .lai .descricao ul li a:hover {
			color: #008c3d;
			padding-left: 4px; }
	#lai2 .lista-lai .lai .descricao ul li:last-child a, #lai3 .lista-lai .lai .descricao ul li:last-child a, #lai4 .lista-lai .lai .descricao ul li:last-child a {
		border-bottom: none; }

.acesso-informacao .descricao {
	font-family: 'OpenSans Regular', Arial, sans-serif; }
	.acesso-informacao .descricao p a {
		color: #008c3d;
		font-weight: bold; }

/* filtro (accordion "Clique aqui para filtrar") */
.panel-title a[data-toggle="collapse"] {
	display: inline-block;
	background: #008c3d;
	color: #fff !important;
	font-family: 'OpenSans SemiBold', Arial, sans-serif;
	font-size: 14px;
	padding: 10px 22px;
	border-radius: 30px;
	box-shadow: 0 4px 12px rgba(0,0,0,.12);
	transition: transform .2s ease, box-shadow .2s ease; }
	.panel-title a[data-toggle="collapse"]:hover {
		transform: translateY(-2px);
		box-shadow: 0 8px 18px rgba(0,0,0,.18); }

.panel-body {
	background: #FAFAFA;
	border-radius: 14px;
	padding: 24px;
	margin-top: 16px; }

.contact-form .form-control {
	border-radius: 8px;
	border: 1px solid #E0E0E0; }

.contact-form input[type="submit"] {
	border-radius: 30px;
	background: #008c3d;
	border: none;
	padding: 10px 30px;
	box-shadow: 0 4px 12px rgba(0,0,0,.15); }
	.contact-form input[type="submit"]:hover {
		background: #ffc300; }

/* tabela de resultados (datatable) */
table.dataTable {
	border-collapse: separate !important;
	border-spacing: 0 8px !important;
	border: none !important; }
	table.dataTable thead th {
		background: #008c3d;
		color: #fff;
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		border: none !important;
		padding: 12px 10px !important; }
	table.dataTable tbody tr {
		background: #fff;
		box-shadow: 0 2px 8px rgba(0,0,0,.05); }
	table.dataTable tbody td {
		border: none !important;
		vertical-align: middle;
		padding: 12px 10px !important;
		max-width: 320px;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap; }
		table.dataTable tbody td:hover {
			white-space: normal;
			max-width: none; }

/* =========================================================
   REDESIGN TOTAL — passo 16: tabela de listagem (/lai) com
   rolagem horizontal em vez de espremer todas as colunas —
   e texto longo (ex.: Objeto) truncado com "..." em vez de
   quebrar palavra por palavra e esticar a linha inteira.
   Também trocamos a dependência de "rawgit.com" (fora do ar
   desde 2019 — o botão PDF nunca funcionou) por um CDN atual.
   ========================================================= */

.dataTables_wrapper {
	position: relative; }
.dataTables_scrollHead, .dataTables_scrollBody {
	border-radius: 12px; }
.dt-buttons {
	margin-bottom: 16px; }
	.dt-buttons .btn, .dt-buttons button {
		border-radius: 8px !important;
		border: 1px solid #E0E0E0 !important;
		background: #fff !important;
		color: #444 !important;
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		padding: 8px 16px !important;
		margin-right: 6px; }
		.dt-buttons .btn:hover, .dt-buttons button:hover {
			border-color: #008c3d !important;
			color: #008c3d !important; }
.dataTables_filter input {
	border-radius: 8px;
	border: 1px solid #E0E0E0;
	padding: 6px 10px;
	margin-left: 8px; }
.dataTables_paginate .paginate_button {
	border-radius: 8px !important;
	margin: 0 2px; }
	.dataTables_paginate .paginate_button.current {
		background: #008c3d !important;
		border-color: #008c3d !important;
		color: #fff !important; }

body.tema-escuro table.dataTable tbody tr {
	background: #1E2126;
	color: #E4E4E4; }
body.tema-escuro .dt-buttons .btn, body.tema-escuro .dt-buttons button {
	background: #1E2126 !important;
	border-color: #2E3339 !important;
	color: #E4E4E4 !important; }
body.tema-escuro .dataTables_filter input {
	background: #1E2126;
	border-color: #2E3339;
	color: #E4E4E4; }

/* =========================================================
   CAMADA VISUAL 2026 — passo 3: grade de ícones #lai1
   (acesso_lai/1) — cartão único, sem blocos cinza/azul cortados.
   ========================================================= */

#lai1 .lista-lai {
	margin-top: 10px; }
	#lai1 .lista-lai > div {
		margin-bottom: 24px; }

#lai1 .lista-lai .lai {
	background: #fff;
	border-radius: 18px;
	box-shadow: 0 6px 20px rgba(0,0,0,.07); }

#lai1 .lista-lai .lai figure {
	background: #fff;
	height: auto;
	padding: 30px 0 10px 0;
	margin: 0; }
	#lai1 .lista-lai .lai figure i.fa {
		font-size: 30px !important;
		width: 68px;
		height: 68px;
		border-radius: 50%;
		background: #f0f8f3;
		color: #008c3d;
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center; }

#lai1 .lista-lai .lai .descricao {
	background: #fff;
	min-height: auto;
	padding: 10px 18px 24px 18px; }
	#lai1 .lista-lai .lai .descricao h1 {
		font-size: 16px;
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		color: #333; }
	#lai1 .lista-lai .lai .descricao ul {
		text-align: left;
		margin-top: 12px; }
		#lai1 .lista-lai .lai .descricao ul li a {
			transition: none; }

#lai1 .lista-lai .lai:hover .descricao {
	background: #008c3d;
	border-radius: 0; }
	#lai1 .lista-lai .lai:hover .descricao h1 {
		color: #fff; }

/* =========================================================
   REDESIGN TOTAL — passo 4: header, banner interno, footer.
   Reescreve visual (cores, layout, espaçamento). Nenhuma tag
   PHP, link, form ou query foi alterada — só aparência.
   ========================================================= */

header {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 999;
	background: #fff; }
	header .div hr {
		display: none; }
	header:before {
		content: '';
		display: block;
		height: 4px;
		background: #008c3d; }

header .links {
	background: #F6F8FA;
	border-bottom: 1px solid #EAEAEA; }
	header .links .container {
		padding-top: 6px;
		padding-bottom: 6px; }
	header .links .redes-sociais a {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		width: 30px;
		height: 30px;
		border-radius: 50%;
		background: #fff;
		border: 1px solid #E3E3E3;
		margin-right: 6px;
		padding: 0 !important; }
		header .links .redes-sociais a img {
			width: 14px;
			height: 14px;
			-o-object-fit: contain;
			object-fit: contain;
			opacity: .75; }
		header .links .redes-sociais a:hover {
			background: #008c3d;
			border-color: #008c3d; }
			header .links .redes-sociais a:hover img {
				-webkit-filter: brightness(0) invert(1);
				filter: brightness(0) invert(1);
				opacity: 1;
				-webkit-transform: none;
				transform: none; }

.form-inline {
	background: #fff !important;
	border: 1px solid #DADFE5;
	border-radius: 30px !important;
	padding: 3px 6px !important;
	display: -webkit-box !important;
	display: -ms-flexbox !important;
	display: flex !important;
	-webkit-box-align: center !important;
	-ms-flex-align: center !important;
	align-items: center !important; }
	.form-inline input[type="search"] {
		color: #333 !important;
		font-size: 13px;
		outline: none; }
	.form-inline button[type="submit"] {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center; }
		.form-inline button[type="submit"] {
			background: none;
			border: none;
			padding: 4px; }
			.form-inline button[type="submit"] .fa-search {
				color: #888;
				font-size: 14px; }
			.form-inline button[type="submit"]:hover .fa-search {
				color: #008c3d; }

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0,0,0,0); }

header .links .link-transparencia {
	background: none !important;
	padding: 0 !important;
	margin-left: 14px; }
	header .links .link-transparencia a {
		color: #008c3d !important;
		font-weight: 700;
		font-size: 12px;
		text-transform: uppercase;
		letter-spacing: .03em; }
	header .links .link-transparencia:hover {
		background: none !important; }
		header .links .link-transparencia a:hover {
			text-decoration: underline !important; }

nav.navbar {
	padding: 14px 0;
	background: #fff; }
	nav.navbar .navbar-brand {
		width: auto !important; }
		nav.navbar .navbar-brand img {
			max-height: 56px;
			width: auto; }

.navbar-nav {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center; }
	.navbar-nav .nav-link {
		color: #333 !important;
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		font-size: 14px !important;
		border: none !important;
		padding: 9px 18px !important;
		margin: 0 3px;
		border-radius: 30px;
		text-transform: none !important; }
		.navbar-nav .nav-link:hover {
			background: #f0f8f3;
			color: #008c3d !important; }

.dropdown-menu {
	border: none;
	border-radius: 14px;
	box-shadow: 0 10px 30px rgba(0,0,0,.14);
	padding: 10px; }
	.dropdown-menu .dropdown-item {
		border-radius: 8px;
		padding: 8px 14px !important;
		font-size: 14px; }
		.dropdown-menu .dropdown-item:hover {
			background: #f0f8f3;
			color: #008c3d; }

/* banner verde de cada página interna */
.header-interno {
	background: #008c3d !important;
	background-image: -webkit-linear-gradient(-45deg, rgba(0,0,0,0), rgba(0,0,0,.18)) !important;
	background-image: linear-gradient(135deg, rgba(0,0,0,0), rgba(0,0,0,.18)) !important;
	padding: 2.2em 0 !important;
	position: relative;
	overflow: hidden; }
	.header-interno:after {
		content: '';
		position: absolute;
		right: -50px;
		top: -60px;
		width: 200px;
		height: 200px;
		border-radius: 50%;
		background: rgba(255,255,255,.06); }
	.header-interno .titulo {
		border-left: none !important;
		position: relative;
		z-index: 1; }
		.header-interno .titulo h1 {
			font-family: 'OpenSans Bold', Arial, sans-serif !important;
			letter-spacing: .01em; }
		.header-interno .titulo span {
			display: block;
			margin-top: 8px;
			font-size: 13px;
			color: rgba(255,255,255,.75); }
	#tamanho_fonte {
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 8px;
		margin: 0 20px 0 0 !important; }
		#tamanho_fonte span {
			background: rgba(255,255,255,.15);
			border: none !important;
			border-radius: 8px;
			width: 32px;
			height: 30px;
			line-height: 30px;
			transition: background .2s ease; }
			#tamanho_fonte span:hover {
				background: rgba(255,255,255,.32); }

/* rodapé */
footer {
	background-color: #008c3d;
	background-image: -webkit-linear-gradient(-70deg, rgba(0,0,0,0), rgba(0,0,0,.28));
	background-image: linear-gradient(160deg, rgba(0,0,0,0), rgba(0,0,0,.28)); }
	footer hr {
		display: none; }
	footer .container {
		padding-top: 20px; }
	footer .logo {
		width: 190px;
		height: 190px;
		border-radius: 24px;
		box-shadow: 0 14px 34px rgba(0,0,0,.3); }
	footer .funcionamento h2, footer .telefones h2, footer .endereco h2 {
		font-size: 11px;
		text-transform: uppercase;
		letter-spacing: .05em;
		opacity: .65;
		margin-bottom: 4px; }
	footer .funcionamento p, footer .telefones p, footer .endereco p {
		font-size: 13px; }
	footer .menu ul li {
		margin-bottom: 10px; }
		footer .menu ul li a {
			opacity: .85;
			transition: opacity .2s ease, padding-left .2s ease;
			display: inline-block; }
			footer .menu ul li a:hover {
				opacity: 1;
				padding-left: 4px; }
	footer .redes-sociais a {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		width: 34px;
		height: 34px;
		border-radius: 50%;
		background: rgba(255,255,255,.15);
		margin-right: 6px;
		transition: background .2s ease; }
		footer .redes-sociais a img {
			width: 14px;
			height: 14px;
			-o-object-fit: contain;
			object-fit: contain; }
		footer .redes-sociais a:hover {
			background: rgba(255,255,255,.32); }
	footer .direitos {
		border-top: 1px solid rgba(255,255,255,.15);
		padding-top: 16px;
		margin-top: 20px;
		opacity: .7;
		font-size: 11px; }

/* =========================================================
   REDESIGN TOTAL — passo 5: corrige cards estirados, troca
   faixa colorida cheia por header editorial, footer escuro.
   ========================================================= */

#lai1 .lista-lai, #lai2 .lista-lai, #lai3 .lista-lai, #lai4 .lista-lai {
	-webkit-box-align: start !important;
	-ms-flex-align: start !important;
	align-items: flex-start !important; }
	#lai2 .lista-lai > div {
		display: block !important; }
	#lai1 .lista-lai .lai, #lai2 .lista-lai .lai, #lai3 .lista-lai .lai, #lai4 .lista-lai .lai {
		height: auto !important; }
	#lai1 .lista-lai .lai .descricao, #lai2 .lista-lai .lai .descricao, #lai3 .lista-lai .lai .descricao, #lai4 .lista-lai .lai .descricao {
		min-height: 0 !important;
		padding-bottom: 22px !important; }

/* banner de página: sem faixa cheia, estilo editorial */
.header-interno {
	background: #fff !important;
	background-image: none !important;
	padding: 44px 0 30px 0 !important;
	margin-bottom: 36px !important;
	border-bottom: 1px solid #EEEEEE; }
	.header-interno:after {
		display: none !important; }
	.header-interno .titulo {
		border-left: none !important;
		padding-left: 0 !important;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column; }
		.header-interno .titulo h2 {
			color: #008c3d !important; }
		.header-interno .titulo h1 {
			display: block;
			color: #1A1A1A !important;
			font-size: 32px !important;
			font-family: 'OpenSans Bold', Arial, sans-serif !important;
			text-transform: none !important;
			border-bottom: none !important;
			margin: 0; }
		.header-interno .titulo span {
			-webkit-box-ordinal-group: 0;
			-ms-flex-order: -1;
			order: -1;
			color: #008c3d !important;
			font-weight: 700;
			text-transform: uppercase;
			letter-spacing: .05em;
			font-size: 12px;
			margin-bottom: 10px; }
			.header-interno .titulo span:before {
				content: '';
				display: inline-block;
				width: 8px;
				height: 8px;
				background: #ffc300;
				margin-right: 8px;
				border-radius: 2px; }
			.header-interno .titulo span a {
				color: inherit;
				text-decoration: none; }
				.header-interno .titulo span a:hover {
					text-decoration: underline; }
	#tamanho_fonte span {
		background: #F1F3F5 !important;
		color: #333 !important;
		font-weight: bold; }
		#tamanho_fonte span:hover {
			background: #E4E7EB !important; }

/* rodapé: base escura neutra, acentos na cor do órgão */
footer {
	background-color: #1B1F24 !important;
	background-image: none !important; }
	footer .logo {
		background: #fff;
		width: 170px;
		height: 170px; }
	footer .funcionamento h2, footer .telefones h2, footer .endereco h2 {
		color: #e8ac00; }
	footer .menu ul li a:hover, footer .menu-secundario ul li a:hover {
		color: #e8ac00 !important; }
	footer .redes-sociais a {
		background: rgba(255,255,255,.08); }
		footer .redes-sociais a:hover {
			background: #008c3d; }
	footer .direitos {
		border-top-color: rgba(255,255,255,.08); }

/* =========================================================
   REDESIGN TOTAL — passo 6: grade 3-col, badge sólido,
   faixa de acento — diferenciação forte do padrão antigo.
   ========================================================= */

@media (min-width: 1200px) {
	#lai1 .lista-lai > div {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 33.3333%;
		flex: 0 0 33.3333%;
		max-width: 33.3333%; } }

#lai1 .lista-lai .lai {
	border-radius: 20px;
	border-top: 5px solid #008c3d;
	box-shadow: 0 8px 26px rgba(0,0,0,.09); }

#lai1 .lista-lai .lai figure {
	padding: 34px 0 16px 0; }
	#lai1 .lista-lai .lai figure i.fa {
		width: 74px !important;
		height: 74px !important;
		font-size: 32px !important;
		background: #008c3d !important;
		color: #fff !important;
		box-shadow: 0 8px 18px rgba(0,0,0,.18); }

#lai1 .lista-lai .lai .descricao h1 {
	font-size: 18px !important;
	font-family: 'OpenSans Bold', Arial, sans-serif !important; }

#lai1 .lista-lai .lai:hover {
	border-top-color: #ffc300; }

/* =========================================================
   REDESIGN TOTAL — passo 7: fallback de ícone + cards
   alinhados à esquerda (referência: portais de Curitiba/
   Campinas/BH/Recife — cartão compacto, ícone+título juntos,
   sem tile centralizado).
   ========================================================= */

/* ícone ausente no banco (classe fica vazia) ganha ícone padrão */
#lai1 .lista-lai .lai figure i:not(.fa),
#lai2 .lista-lai .lai .cabecalho i:not(.fa),
#lai3 .lista-lai .lai .cabecalho i:not(.fa),
#lai4 .lista-lai .lai .cabecalho i:not(.fa) {
	font-family: 'FontAwesome';
	font-style: normal;
	font-weight: normal;
	speak: none; }
	#lai1 .lista-lai .lai figure i:not(.fa):before,
	#lai2 .lista-lai .lai .cabecalho i:not(.fa):before,
	#lai3 .lista-lai .lai .cabecalho i:not(.fa):before,
	#lai4 .lista-lai .lai .cabecalho i:not(.fa):before {
		content: "\f0c9"; }

/* cartão #lai1: ícone quadrado (squircle) + título, alinhado à esquerda */
#lai1 .lista-lai .lai {
	border-top: none;
	border: 1px solid #EDEDED; }

#lai1 .lista-lai .lai figure {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	padding: 22px 20px 12px 20px; }
	#lai1 .lista-lai .lai figure i.fa, #lai1 .lista-lai .lai figure i:not(.fa) {
		width: 50px !important;
		height: 50px !important;
		font-size: 20px !important;
		border-radius: 14px !important;
		box-shadow: none !important; }

#lai1 .lista-lai .lai .descricao {
	padding: 0 20px 22px 20px !important;
	text-align: left; }
	#lai1 .lista-lai .lai .descricao h1 {
		text-align: left;
		font-size: 17px !important; }
	#lai1 .lista-lai .lai .descricao ul {
		text-align: left; }

/* cartões #lai2/3/4: ícone quadrado menor, mesma lógica */
#lai2 .lista-lai .lai .cabecalho i.fa, #lai3 .lista-lai .lai .cabecalho i.fa, #lai4 .lista-lai .lai .cabecalho i.fa,
#lai2 .lista-lai .lai .cabecalho i:not(.fa), #lai3 .lista-lai .lai .cabecalho i:not(.fa), #lai4 .lista-lai .lai .cabecalho i:not(.fa) {
	border-radius: 14px !important; }

/* =========================================================
   REDESIGN TOTAL — passo 8: hero real (sem foto) na home
   do site só-LAI, com dado real (texto_lai, contagem de
   categorias) e CTA para o SIC (rota já existente).
   ========================================================= */

.hero-lai {
	position: relative;
	background: #f0f8f3;
	padding: 56px 0 64px 0;
	border-bottom: 1px solid #EAEAEA; }
	.hero-lai .eyebrow {
		display: inline-block;
		color: #008c3d;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: .06em;
		font-size: 12px;
		margin-bottom: 14px; }
		.hero-lai .eyebrow:before {
			content: '';
			display: inline-block;
			width: 8px;
			height: 8px;
			background: #ffc300;
			margin-right: 8px;
			border-radius: 2px; }
	.hero-lai h1 {
		font-family: 'OpenSans Bold', Arial, sans-serif;
		font-size: 40px;
		color: #1A1A1A;
		margin: 0 0 16px 0; }
	.hero-lai .lead {
		font-family: 'OpenSans Regular', Arial, sans-serif;
		font-size: 16px;
		color: #555;
		max-width: 640px;
		margin-bottom: 26px; }
	.hero-lai .hero-cta {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 20px;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap; }
	.hero-lai .btn-hero-primario {
		display: inline-block;
		background: #008c3d;
		color: #fff !important;
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		font-size: 14px;
		padding: 13px 26px;
		border-radius: 30px;
		box-shadow: 0 8px 20px rgba(0,0,0,.16);
		transition: transform .2s ease, box-shadow .2s ease; }
		.hero-lai .btn-hero-primario:hover {
			transform: translateY(-2px);
			box-shadow: 0 12px 26px rgba(0,0,0,.22); }
	.hero-lai .hero-tools {
		position: absolute;
		top: 22px;
		right: 24px; }
		.hero-lai .hero-tools #tamanho_fonte {
			position: static !important;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			gap: 8px;
			margin: 0 !important; }
			.hero-lai .hero-tools #tamanho_fonte span {
				background: #fff !important;
				border: 1px solid #E3E3E3 !important;
				color: #333 !important;
				font-weight: bold; }
				.hero-lai .hero-tools #tamanho_fonte span:hover {
					background: #F1F3F5 !important; }
	@media (max-width: 768px) {
		.hero-lai .hero-tools {
			position: static;
			margin-bottom: 18px; }
		.hero-lai h1 {
			font-size: 28px; } }

.acesso-informacao .titulo-secao {
	margin-top: 36px;
	margin-bottom: 24px; }
	.acesso-informacao .titulo-secao h2 {
		font-family: 'OpenSans Bold', Arial, sans-serif;
		font-size: 22px;
		color: #1A1A1A;
		margin: 0;
		padding-left: 14px;
		border-left: 4px solid #008c3d; }

/* =========================================================
   REDESIGN TOTAL — passo 9 (final/consolidação): corrige
   hover quebrado, borda estranha nos cards e ícone sem
   fallback estilizado. Estas regras são a versão definitiva
   para #lai1/2/3/4 — sobrepõem qualquer regra anterior.
   ========================================================= */

/* card limpo, sem borda superior/flip de cor no hover */
#lai1 .lista-lai .lai {
	border: 1px solid #EEEEEE !important;
	border-radius: 18px !important;
	box-shadow: 0 4px 14px rgba(0,0,0,.05) !important; }
	#lai1 .lista-lai .lai figure {
		background: #fff !important; }
	#lai1 .lista-lai .lai .descricao {
		background: #fff !important; }
	#lai1 .lista-lai .lai:hover .descricao {
		background: transparent !important; }
	#lai1 .lista-lai .lai .descricao ul,
	#lai1 .lista-lai .lai:hover .descricao ul {
		-webkit-animation: none !important;
		animation: none !important; }
		#lai1 .lista-lai .lai .descricao ul li {
			color: #008c3d !important; }
			#lai1 .lista-lai .lai .descricao ul li a {
				color: #555 !important; }
				#lai1 .lista-lai .lai .descricao ul li a:hover {
					color: #008c3d !important;
					text-decoration: underline !important; }
	#lai1 .lista-lai .lai:hover .descricao h1 {
		color: #1A1A1A !important; }

/* badge de ícone — mesmo visual sempre, com ícone real ou fallback */
#lai1 .lista-lai .lai figure i.fa,
#lai1 .lista-lai .lai figure i:not(.fa),
#lai2 .lista-lai .lai .cabecalho i.fa, #lai2 .lista-lai .lai .cabecalho i:not(.fa),
#lai3 .lista-lai .lai .cabecalho i.fa, #lai3 .lista-lai .lai .cabecalho i:not(.fa),
#lai4 .lista-lai .lai .cabecalho i.fa, #lai4 .lista-lai .lai .cabecalho i:not(.fa) {
	display: -webkit-inline-box !important;
	display: -ms-inline-flexbox !important;
	display: inline-flex !important;
	-webkit-box-align: center !important;
	-ms-flex-align: center !important;
	align-items: center !important;
	-webkit-box-pack: center !important;
	-ms-flex-pack: center !important;
	justify-content: center !important;
	background: #008c3d !important;
	color: #fff !important;
	box-shadow: none !important;
	/* ícone é filho de container flex (figure/.cabecalho) — sem isso,
	   título longo ("Responsabilidade Fiscal" em 2 linhas) espreme o
	   ícone abaixo do width fixo em vez de só quebrar o texto. */
	-webkit-box-flex: 0 !important;
	-ms-flex: none !important;
	flex: none !important; }

#lai1 .lista-lai .lai figure i.fa, #lai1 .lista-lai .lai figure i:not(.fa) {
	width: 50px !important;
	height: 50px !important;
	font-size: 20px !important;
	border-radius: 14px !important; }

#lai2 .lista-lai .lai .cabecalho i.fa, #lai2 .lista-lai .lai .cabecalho i:not(.fa),
#lai3 .lista-lai .lai .cabecalho i.fa, #lai3 .lista-lai .lai .cabecalho i:not(.fa),
#lai4 .lista-lai .lai .cabecalho i.fa, #lai4 .lista-lai .lai .cabecalho i:not(.fa) {
	width: 54px !important;
	height: 54px !important;
	font-size: 22px !important;
	border-radius: 14px !important;
	margin-right: 14px !important; }

/* =========================================================
   REDESIGN TOTAL — passo 10: remove sombra fantasma sempre
   visível, devolve feedback real de hover, e implementa o
   modo escuro (⚫/⚪) de verdade, cobrindo todo o layout —
   antes ele só mudava a cor de fundo de UMA section (bug
   pré-existente: "font-color" nem é propriedade CSS válida).
   ========================================================= */

#lai1 .lista-lai .lai .descricao {
	box-shadow: none !important; }
	#lai1 .lista-lai .lai:hover .descricao {
		box-shadow: none !important; }

/* modo escuro sitewide */
body.tema-escuro {
	background: #14161A;
	color: #E4E4E4; }
	body.tema-escuro header {
		background: #1B1F24; }
		body.tema-escuro header .links {
			background: #20242A;
			border-bottom-color: #2A2F36; }
		body.tema-escuro header .links .redes-sociais a {
			background: #2A2F36;
			border-color: #383E46; }
		body.tema-escuro nav.navbar {
			background: #1B1F24; }
		body.tema-escuro .navbar-nav .nav-link {
			color: #E4E4E4 !important; }
			body.tema-escuro .navbar-nav .nav-link:hover {
				background: #262B32;
				color: #fff !important; }
		body.tema-escuro .form-inline {
			background: #262B32 !important;
			border-color: #383E46; }
			body.tema-escuro .form-inline input[type="search"] {
				background: transparent;
				color: #E4E4E4 !important; }
			body.tema-escuro .form-inline input[type="search"]::placeholder {
				color: #888; }

	body.tema-escuro .hero-lai {
		background: #1B1F24;
		border-bottom-color: #2A2F36; }
		body.tema-escuro .hero-lai h1 {
			color: #F5F5F5 !important; }
		body.tema-escuro .hero-lai .lead {
			color: #B8B8B8 !important; }

	body.tema-escuro .header-interno {
		background: #1B1F24 !important; }
		body.tema-escuro .header-interno .titulo h1 {
			color: #F5F5F5 !important; }
		body.tema-escuro .header-interno .titulo span {
			color: #9AA0A6 !important; }
		body.tema-escuro #tamanho_fonte span,
		body.tema-escuro .hero-tools #tamanho_fonte span {
			background: #262B32 !important;
			color: #E4E4E4 !important;
			border-color: #383E46 !important; }

	body.tema-escuro .acesso-informacao .titulo-secao h2 {
		color: #F5F5F5 !important; }

	body.tema-escuro #lai1 .lista-lai .lai,
	body.tema-escuro #lai2 .lista-lai .lai,
	body.tema-escuro #lai3 .lista-lai .lai,
	body.tema-escuro #lai4 .lista-lai .lai {
		background: #1E2126 !important;
		border-color: #2E3339 !important; }
	body.tema-escuro #lai1 .lista-lai .lai figure,
	body.tema-escuro #lai1 .lista-lai .lai .descricao {
		background: #1E2126 !important; }
		body.tema-escuro #lai1 .lista-lai .lai .descricao h1,
		body.tema-escuro #lai2 .lista-lai .lai .cabecalho h1,
		body.tema-escuro #lai3 .lista-lai .lai .cabecalho h1,
		body.tema-escuro #lai4 .lista-lai .lai .cabecalho h1 {
			color: #F0F0F0 !important; }
		body.tema-escuro #lai1 .lista-lai .lai .descricao ul li a,
		body.tema-escuro #lai2 .lista-lai .lai .descricao ul li a,
		body.tema-escuro #lai3 .lista-lai .lai .descricao ul li a,
		body.tema-escuro #lai4 .lista-lai .lai .descricao ul li a {
			color: #C6C6C6 !important; }
		body.tema-escuro #lai2 .lista-lai .lai .cabecalho,
		body.tema-escuro #lai3 .lista-lai .lai .cabecalho,
		body.tema-escuro #lai4 .lista-lai .lai .cabecalho {
			border-bottom-color: #2E3339 !important; }

	body.tema-escuro table.dataTable tbody tr {
		background: #1E2126 !important;
		color: #E4E4E4; }
	body.tema-escuro .panel-body {
		background: #1E2126 !important;
		color: #E4E4E4; }
	body.tema-escuro .contact-form .form-control {
		background: #262B32;
		color: #E4E4E4;
		border-color: #383E46; }

/* =========================================================
   REDESIGN TOTAL — passo 11: SÓ #lai1 (modelo 1). Cards ficam
   com altura sempre igual (só ícone + título) e a lista
   desliza pra baixo (slide) ao passar o mouse em QUALQUER
   parte do card, ou ao focar via teclado — sem modal.
   #lai2 (modelo 2) usa modal — ver passo 11b, mais abaixo.
   Seletores aqui sempre prefixados com "#lai1" de propósito:
   regras antigas (mais acima no arquivo) também usam "#lai1"
   com !important, e um ID sempre vence classe mesmo com
   !important dos dois lados — sem o prefixo, elas ganhavam.
   ========================================================= */

#lai1 .lista-lai .lai.card-hover-lista {
	position: relative;
	cursor: pointer;
	overflow: visible !important;
	transition: box-shadow .18s ease, border-color .18s ease; }
	#lai1 .lista-lai .lai.card-hover-lista:hover,
	#lai1 .lista-lai .lai.card-hover-lista:focus-within {
		box-shadow: none !important;
		border-color: #008c3d !important;
		border-bottom-color: transparent !important;
		border-bottom-left-radius: 0 !important;
		border-bottom-right-radius: 0 !important;
		z-index: 20; }

/* seta que gira ao abrir */
#lai1 .lista-lai .lai.card-hover-lista .cabecalho,
#lai1 .lista-lai .lai.card-hover-lista .descricao h1 {
	position: relative;
	padding-right: 22px !important; }
	#lai1 .lista-lai .lai.card-hover-lista .cabecalho:after,
	#lai1 .lista-lai .lai.card-hover-lista .descricao h1:after {
		content: '\f107';
		font-family: 'FontAwesome';
		font-weight: normal;
		position: absolute;
		right: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		color: #C0C0C0;
		transition: transform .25s ease; }
	#lai1 .lista-lai .lai.card-hover-lista:hover .cabecalho:after,
	#lai1 .lista-lai .lai.card-hover-lista:hover .descricao h1:after,
	#lai1 .lista-lai .lai.card-hover-lista:focus-within .cabecalho:after,
	#lai1 .lista-lai .lai.card-hover-lista:focus-within .descricao h1:after {
		-webkit-transform: translateY(-50%) rotate(180deg);
		transform: translateY(-50%) rotate(180deg); }

/* a lista desliza (slide) por cima, sem empurrar o resto da
   grade — encaixada sem vão embaixo do card, parece que o
   próprio card cresceu, mas nada mais na página se move. */
#lai1 .lista-lai .lai.card-hover-lista .descricao ul {
	display: block;
	position: absolute;
	top: 100%;
	left: -1px;
	right: -1px;
	margin: 0 !important;
	background: #fff;
	border: 1px solid #008c3d;
	border-top: none;
	border-radius: 0 0 18px 18px;
	box-shadow: none;
	padding: 0 22px 18px 22px;
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	pointer-events: none;
	transition: max-height .3s ease, opacity .25s ease, padding-top .3s ease; }
	#lai1 .lista-lai .lai.card-hover-lista:hover .descricao ul,
	#lai1 .lista-lai .lai.card-hover-lista:focus-within .descricao ul {
		max-height: calc(var(--altura-real, 300px) + 30px);
		opacity: 1;
		padding-top: 10px;
		pointer-events: auto; }

body.tema-escuro #lai1 .lista-lai .lai.card-hover-lista .cabecalho:after,
body.tema-escuro #lai1 .lista-lai .lai.card-hover-lista .descricao h1:after {
	color: #555; }
body.tema-escuro #lai1 .lista-lai .lai.card-hover-lista .descricao ul {
	background: #1E2126;
	border-color: #008c3d; }

/* =========================================================
   REDESIGN TOTAL — passo 12: busca do topo mais larga e sem
   a borda do input (só o contorno externo do pill).
   ========================================================= */

.form-inline {
	float: none !important;
	width: 280px; }
	.form-inline input[type="search"] {
		border: none !important;
		background: transparent !important;
		padding: 6px 4px !important;
		width: 100%;
		-webkit-box-flex: 1;
		-ms-flex: 1;
		flex: 1; }
	.form-inline:focus-within {
		border-color: #008c3d !important;
		box-shadow: 0 0 0 3px #f0f8f3; }

body.tema-escuro .form-inline:focus-within {
	box-shadow: 0 0 0 3px #262B32; }

@media (max-width: 768px) {
	.form-inline {
		width: 100%; } }

/* =========================================================
   REDESIGN TOTAL — passo 14: botões do #lai4 (grade de
   seleção à direita) alinhados ao mesmo visual do resto —
   badge de ícone verde, fundo claro, estado ativo com tom
   derivado da cor real do órgão (nada de amarelo/azul fixo).
   ========================================================= */

#lai4 .menu-lai .botao-lai {
	background: #fff;
	border: 1px solid #EEEEEE;
	border-radius: 16px;
	box-shadow: 0 4px 14px rgba(0,0,0,.05);
	transition: border-color .15s ease, box-shadow .15s ease, background .15s ease; }
	#lai4 .menu-lai .botao-lai i {
		width: 46px;
		height: 46px;
		border-radius: 13px;
		background: #008c3d;
		color: #fff;
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		font-size: 19px !important;
		margin-bottom: 10px; }
	#lai4 .menu-lai .botao-lai div {
		color: #333; }
	#lai4 .menu-lai .botao-lai:hover {
		border-color: #008c3d;
		box-shadow: 0 8px 20px rgba(0,0,0,.1);
		background: #fff; }
		#lai4 .menu-lai .botao-lai:hover div {
			color: #333; }

#lai4 .active .botao-lai {
	background: #f0f8f3;
	border-color: #008c3d; }
	#lai4 .active .botao-lai i {
		background: #008c3d; }
	#lai4 .active .botao-lai div {
		color: #008c3d;
		font-weight: bold; }

body.tema-escuro #lai4 .menu-lai .botao-lai {
	background: #1E2126;
	border-color: #2E3339; }
	body.tema-escuro #lai4 .menu-lai .botao-lai div {
		color: #E4E4E4; }
body.tema-escuro #lai4 .active .botao-lai {
	background: #262B32; }
	body.tema-escuro #lai4 .active .botao-lai div {
		color: #e8ac00; }

/* =========================================================
   REDESIGN TOTAL — passo 15: correções da rodada de revisão.
   ========================================================= */

/* 1) lai2: sobrava ~50px vazio em todo card (regra antiga
   ".acesso-informacao .descricao{margin-bottom:50px}" pegava
   também o .descricao de dentro de cada card, sem querer). */
#lai1 .lista-lai .lai .descricao,
#lai2 .lista-lai .lai .descricao,
#lai3 .lista-lai .lai .descricao,
#lai4 .lista-lai .lai .descricao {
	margin-bottom: 0 !important; }

/* 2) espaço entre o hero e o conteúdo em lai3/lai4/contato
   (só lai1/lai2 tinham a seção "titulo-secao" que dava esse
   respiro; as outras ficavam coladas). */
#lai3.acesso-informacao,
#lai4.acesso-informacao {
	padding-top: 36px; }
.contato {
	padding-top: 36px; }

/* 3) ícone padrão (fallback) na sidebar do lai3 e nos botões
   do lai4, do mesmo jeito que já existe nos cards — hoje esses
   dois lugares nem tinham estilo de ícone algum. */
#lai3 .menu-lai a i {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 9px;
	background: #008c3d;
	color: #fff;
	font-size: 14px !important;
	margin-right: 6px; }
#lai3 .menu-lai a.active i {
	background: #ffc300; }
#lai3 .menu-lai a i:not(.fa) {
	font-family: 'FontAwesome';
	font-style: normal;
	font-weight: normal; }
	#lai3 .menu-lai a i:not(.fa):before {
		content: '\f0c9'; }

#lai4 .menu-lai .botao-lai i:not(.fa) {
	font-family: 'FontAwesome';
	font-style: normal;
	font-weight: normal; }
	#lai4 .menu-lai .botao-lai i:not(.fa):before {
		content: '\f0c9'; }

/* 4) formulário de contato: inputs e botão de enviar mais
   confortáveis (o padrão vindo do bootstrap puro estava sem
   nenhum acabamento — cantos, altura, foco, botão). */
.contato .form-control {
	border-radius: 10px;
	height: 48px;
	margin-bottom: 14px;
	border: 1px solid #E0E0E0; }
.contato textarea.form-control {
	height: auto;
	min-height: 140px;
	padding-top: 14px; }
.contato .form-control:focus {
	border-color: #008c3d;
	box-shadow: 0 0 0 3px #f0f8f3;
	outline: none; }
.contato .contato-info h2 {
	font-family: 'OpenSans Bold', Arial, sans-serif;
	font-size: 20px;
	color: #1A1A1A;
	margin-bottom: 16px; }
.contato .contato-info p {
	font-size: 15px;
	color: #444;
	margin-bottom: 12px; }
	.contato .contato-info p i {
		width: 20px;
		color: #008c3d;
		text-align: center;
		margin-right: 6px; }
#btn-enviar-contato {
	border: none;
	cursor: pointer; }
.alert-contato {
	padding: 14px 18px;
	border-radius: 10px;
	margin-bottom: 20px;
	font-size: 14px; }
.alert-sucesso {
	background: #f0f8f3;
	color: #008c3d;
	border: 1px solid #008c3d; }
.alert-erro {
	background: #FDECEC;
	color: #C0392B;
	border: 1px solid #E6A6A6; }

body.tema-escuro .contato .contato-info h2 {
	color: #F0F0F0; }
body.tema-escuro .contato .contato-info p {
	color: #C6C6C6; }

/* =========================================================
   REDESIGN TOTAL — passo 17: MODELO 2 (#lai2 — só esse) volta
   a usar modal no clique. A lista original do card fica
   escondida sempre (só aparece dentro do modal, clonada pelo
   JS) — sem hover mostrando nada aqui, ao contrário do #lai1.
   ========================================================= */

#lai2 .lista-lai .lai .descricao ul {
	display: none !important; }

#lai2 .lista-lai .lai.card-clicavel {
	cursor: pointer;
	transition: box-shadow .18s ease, border-color .18s ease, transform .18s ease; }
	#lai2 .lista-lai .lai.card-clicavel:hover,
	#lai2 .lista-lai .lai.card-clicavel:focus-visible {
		box-shadow: 0 10px 24px rgba(0,0,0,.1) !important;
		border-color: #008c3d !important;
		-webkit-transform: translateY(-3px);
		transform: translateY(-3px); }

/* seta indicando que o card abre algo (não gira — não fica
   "aberto", só mostra que existe conteúdo a mais) */
#lai2 .lista-lai .lai.card-clicavel .cabecalho {
	position: relative;
	padding-right: 22px !important; }
	#lai2 .lista-lai .lai.card-clicavel .cabecalho:after {
		content: '\f105';
		font-family: 'FontAwesome';
		font-weight: normal;
		position: absolute;
		right: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		color: #C0C0C0; }

/* modal (compartilhado — só #lai2 usa, via JS) */
.lai-modal {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 1000; }
	.lai-modal.aberto {
		display: block; }
	.lai-modal-backdrop {
		position: absolute;
		inset: 0;
		background: rgba(0,0,0,.5); }
	.lai-modal-caixa {
		position: relative;
		max-width: 560px;
		width: 90%;
		margin: 8vh auto 0;
		max-height: 78vh;
		overflow-y: auto;
		background: #fff;
		border-radius: 20px;
		padding: 32px;
		box-shadow: 0 30px 70px rgba(0,0,0,.3);
		-webkit-animation: lai-modal-entrar .18s ease-out;
		animation: lai-modal-entrar .18s ease-out; }
	.lai-modal-fechar {
		position: absolute;
		top: 16px;
		right: 16px;
		width: 34px;
		height: 34px;
		background: #F4F4F4;
		border: none;
		border-radius: 50%;
		font-size: 20px;
		line-height: 1;
		color: #888;
		cursor: pointer;
		transition: background .15s ease, color .15s ease; }
		.lai-modal-fechar:hover {
			background: #EAEAEA;
			color: #333; }
	.lai-modal-cabecalho {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 14px;
		margin: 0 34px 22px 0;
		padding-bottom: 18px;
		border-bottom: 2px solid #F0F0F0; }
		.lai-modal-cabecalho i {
			-webkit-box-flex: 0;
			-ms-flex: 0 0 auto;
			flex: 0 0 auto;
			width: 46px;
			height: 46px;
			border-radius: 13px;
			background: #008c3d;
			color: #fff !important;
			display: -webkit-inline-box;
			display: -ms-inline-flexbox;
			display: inline-flex;
			-webkit-box-align: center;
			-ms-flex-align: center;
			align-items: center;
			-webkit-box-pack: center;
			-ms-flex-pack: center;
			justify-content: center;
			font-size: 19px !important; }
		.lai-modal-cabecalho h2 {
			margin: 0;
			font-family: 'OpenSans Bold', Arial, sans-serif;
			font-size: 20px;
			color: #1A1A1A; }
	.lai-modal-corpo ul {
		list-style: none;
		margin: 0;
		padding: 0;
		display: block !important; }
		.lai-modal-corpo ul li {
			border-bottom: 1px solid #F2F2F2; }
			.lai-modal-corpo ul li:last-child {
				border-bottom: none; }
			.lai-modal-corpo ul li a {
				display: block;
				padding: 12px 4px;
				color: #444;
				font-family: 'OpenSans Regular', Arial, sans-serif;
				font-size: 15px;
				transition: color .15s ease, padding-left .15s ease; }
				.lai-modal-corpo ul li a:before {
					content: '\f105';
					font-family: 'FontAwesome';
					color: #008c3d;
					margin-right: 10px; }
				.lai-modal-corpo ul li a:hover {
					color: #008c3d;
					padding-left: 6px; }

@keyframes lai-modal-entrar {
	from { opacity: 0; -webkit-transform: translateY(14px); transform: translateY(14px); }
	to { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); } }

body.lai-modal-ativo {
	overflow: hidden; }

body.tema-escuro #lai2 .lista-lai .lai.card-clicavel .cabecalho:after {
	color: #555; }
body.tema-escuro .lai-modal-caixa {
	background: #1E2126; }
body.tema-escuro .lai-modal-fechar {
	background: #262B32;
	color: #ccc; }
body.tema-escuro .lai-modal-cabecalho {
	border-bottom-color: #2E3339; }
body.tema-escuro .lai-modal-cabecalho h2 {
	color: #F0F0F0; }
body.tema-escuro .lai-modal-corpo ul li {
	border-bottom-color: #2A2F36; }
body.tema-escuro .lai-modal-corpo ul li a {
	color: #C6C6C6; }

/* =========================================================
   REDESIGN TOTAL — passo 18: página /lai (listagem LAI),
   troca do DataTables por Tabulator — filtro em card
   recolhível + toolbar de busca/exportação + grid próprio.
   Tudo escopado a #lai (só essa section usa esse markup).
   ========================================================= */

#lai .filtro-lai {
	background: #fff;
	border: 1px solid #EDEDED;
	border-radius: 14px;
	box-shadow: 0 4px 14px rgba(0,0,0,.05);
	margin-bottom: 24px;
	overflow: hidden; }

#lai .filtro-lai-toggle {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 10px;
	background: none;
	border: none;
	padding: 18px 22px;
	font-family: 'OpenSans SemiBold', Arial, sans-serif;
	font-size: 15px;
	color: #1A1A1A;
	cursor: pointer;
	text-align: left; }
	#lai .filtro-lai-toggle i.fa-sliders {
		color: #008c3d; }
	#lai .filtro-lai-toggle .seta {
		margin-left: auto;
		font-size: 13px;
		color: #999;
		transition: transform .25s ease; }
	#lai .filtro-lai-toggle[aria-expanded="true"] .seta {
		transform: rotate(180deg); }

#lai .filtro-lai-corpo {
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	transition: max-height .35s ease, opacity .3s ease; }
	#lai .filtro-lai-corpo.aberto {
		max-height: 900px;
		opacity: 1; }
	#lai .filtro-lai-corpo form {
		padding: 4px 22px 22px 22px; }
	#lai .filtro-lai-corpo .form-control {
		border-radius: 10px;
		border: 1px solid #E3E3E3;
		height: 42px; }
	#lai .filtro-lai-corpo label {
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		font-size: 13px;
		color: #555; }
	#lai .filtro-lai-corpo .btn-primary {
		background: #008c3d;
		border-color: #008c3d;
		border-radius: 30px;
		padding: 10px 28px;
		font-family: 'OpenSans SemiBold', Arial, sans-serif; }

#lai .tabela-lai-toolbar {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 14px;
	margin-bottom: 16px; }

#lai .tabela-lai-busca {
	position: relative;
	-webkit-box-flex: 1;
	-ms-flex: 1 1 260px;
	flex: 1 1 260px;
	max-width: 340px; }
	#lai .tabela-lai-busca i.fa-search {
		position: absolute;
		left: 14px;
		top: 50%;
		transform: translateY(-50%);
		color: #999;
		font-size: 13px; }
	#lai .tabela-lai-busca input {
		width: 100%;
		border: 1px solid #E3E3E3;
		border-radius: 30px;
		padding: 10px 16px 10px 36px;
		font-size: 14px;
		font-family: 'OpenSans Regular', Arial, sans-serif; }
		#lai .tabela-lai-busca input:focus {
			outline: none;
			border-color: #008c3d; }

#lai .tabela-lai-exportar {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 8px;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap; }

#lai .btn-tabela-lai {
	background: #fff;
	border: 1px solid #E3E3E3;
	border-radius: 30px;
	padding: 8px 16px;
	font-size: 13px;
	font-family: 'OpenSans SemiBold', Arial, sans-serif;
	color: #555;
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
	#lai .btn-tabela-lai:hover {
		background: #f0f8f3;
		border-color: #008c3d;
		color: #008c3d; }

/* grid Tabulator com a paleta do órgão */
#lai .tabulator {
	border: 1px solid #EDEDED;
	border-radius: 14px;
	overflow: hidden;
	font-family: 'OpenSans Regular', Arial, sans-serif;
	box-shadow: 0 4px 14px rgba(0,0,0,.05); }
	#lai .tabulator .tabulator-header {
		background: #008c3d;
		border-bottom: none; }
		#lai .tabulator .tabulator-header .tabulator-col {
			background: #008c3d;
			border-right-color: rgba(255,255,255,.15); }
			#lai .tabulator .tabulator-header .tabulator-col-title {
				color: #fff;
				font-family: 'OpenSans SemiBold', Arial, sans-serif;
				font-size: 13px; }
			#lai .tabulator .tabulator-col-sorter .tabulator-arrow {
				border-bottom-color: rgba(255,255,255,.6); }
	#lai .tabulator-row {
		font-size: 13px;
		color: #333; }
		#lai .tabulator-row.tabulator-row-even {
			background: #FAFAFA; }
		#lai .tabulator-row:hover {
			background: #f0f8f3 !important; }
		#lai .tabulator-row .tabulator-cell a {
			color: #008c3d; }
		#lai .tabulator-row .tabulator-cell {
			white-space: normal;
			word-break: break-word;
			overflow: visible; }
		#lai .tabulator-row .texto-truncado .ler-mais-link {
			display: inline-block;
			margin-left: 4px;
			color: #008c3d;
			font-family: 'OpenSans SemiBold', Arial, sans-serif;
			font-size: 12px;
			white-space: nowrap; }
	#lai .tabulator .tabulator-footer {
		background: #fff;
		border-top: 1px solid #EDEDED; }
		#lai .tabulator .tabulator-page.active {
			background: #008c3d;
			color: #fff !important;
			border-color: #008c3d; }
		#lai .tabulator .tabulator-page:not(.disabled):hover {
			background: #e0f1e8;
			color: #008c3d; }

body.tema-escuro #lai .filtro-lai,
body.tema-escuro #lai .tabulator {
	background: #1E2126;
	border-color: #2E3339; }
	body.tema-escuro #lai .filtro-lai-toggle {
		color: #E4E4E4; }
	body.tema-escuro #lai .tabulator-row {
		background: #1E2126;
		color: #E4E4E4; }
		body.tema-escuro #lai .tabulator-row.tabulator-row-even {
			background: #20242A; }
	body.tema-escuro #lai .tabulator .tabulator-footer {
		background: #1E2126;
		border-top-color: #2E3339; }
	body.tema-escuro #lai .btn-tabela-lai {
		background: #20242A;
		border-color: #2E3339;
		color: #ccc; }
	body.tema-escuro #lai .tabela-lai-busca input {
		background: #20242A;
		border-color: #2E3339;
		color: #E4E4E4; }

/* =========================================================
   REDESIGN TOTAL — passo 19: /consulta e /pagina — ficha de
   campos em grid, lista de arquivos em pill, subtabelas e
   grid Tabulator (reaproveitado do /lai) pros anexos de
   licitação (materiais/fornecedores).
   ========================================================= */

.pagina-conteudo {
	background: #fff;
	border: 1px solid #EDEDED;
	border-radius: 18px;
	box-shadow: 0 4px 14px rgba(0,0,0,.05);
	padding: 30px 32px;
	margin-bottom: 24px;
	font-family: 'OpenSans Regular', Arial, sans-serif;
	line-height: 1.7;
	color: #333; }
	.pagina-conteudo a {
		color: #008c3d; }
	.pagina-conteudo img {
		max-width: 100%;
		border-radius: 10px; }

.ficha-consulta {
	background: #fff;
	border: 1px solid #EDEDED;
	border-radius: 18px;
	box-shadow: 0 4px 14px rgba(0,0,0,.05);
	padding: 10px 32px;
	margin-bottom: 24px; }
	.ficha-consulta .ficha-item {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 4px 24px;
		padding: 14px 0;
		border-bottom: 1px solid #F0F0F0; }
		.ficha-consulta .ficha-item:last-child {
			border-bottom: none; }
		.ficha-consulta .ficha-item dt {
			-webkit-box-flex: 0;
			-ms-flex: 0 0 220px;
			flex: 0 0 220px;
			margin: 0;
			font-family: 'OpenSans SemiBold', Arial, sans-serif;
			font-size: 13px;
			text-transform: uppercase;
			letter-spacing: .03em;
			color: #008c3d; }
		.ficha-consulta .ficha-item dd {
			-webkit-box-flex: 1;
			-ms-flex: 1 1 320px;
			flex: 1 1 320px;
			margin: 0;
			font-family: 'OpenSans Regular', Arial, sans-serif;
			font-size: 14px;
			color: #333;
			line-height: 1.6; }

.btn-consulta-vinculo {
	display: inline-block;
	background: #008c3d;
	color: #fff !important;
	font-family: 'OpenSans SemiBold', Arial, sans-serif;
	font-size: 14px;
	padding: 12px 24px;
	border-radius: 30px;
	margin-bottom: 24px;
	box-shadow: 0 8px 20px rgba(0,0,0,.16);
	transition: transform .2s ease, box-shadow .2s ease; }
	.btn-consulta-vinculo:hover {
		transform: translateY(-2px);
		box-shadow: 0 12px 26px rgba(0,0,0,.22);
		color: #fff !important; }

.secao-consulta {
	margin-bottom: 28px; }
	.secao-consulta h3 {
		font-family: 'OpenSans Bold', Arial, sans-serif;
		font-size: 18px;
		color: #1A1A1A;
		margin: 0 0 16px 0;
		padding-left: 14px;
		border-left: 4px solid #008c3d; }

.arquivos-consulta {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 10px; }
	.arquivos-consulta .arquivo-item {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 8px;
		background: #fff;
		border: 1px solid #E3E3E3;
		border-radius: 30px;
		padding: 10px 18px;
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		font-size: 13px;
		color: #555;
		transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
		.arquivos-consulta .arquivo-item i {
			color: #008c3d; }
		.arquivos-consulta .arquivo-item:hover {
			background: #f0f8f3;
			border-color: #008c3d;
			color: #008c3d; }

.subtabela-consulta {
	background: #fff;
	border: 1px solid #EDEDED;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 4px 14px rgba(0,0,0,.05); }
	.subtabela-consulta table {
		width: 100%;
		border-collapse: collapse;
		font-size: 13px; }
	.subtabela-consulta thead {
		background: #008c3d; }
		.subtabela-consulta thead th {
			color: #fff;
			font-family: 'OpenSans SemiBold', Arial, sans-serif;
			text-align: left;
			padding: 12px 16px; }
	.subtabela-consulta tbody td {
		padding: 12px 16px;
		border-bottom: 1px solid #F0F0F0;
		color: #333; }
	.subtabela-consulta tbody tr:last-child td {
		border-bottom: none; }
	.subtabela-consulta tbody tr:hover td {
		background: #f0f8f3; }
	.subtabela-consulta a {
		color: #008c3d; }

.btn-download {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #f0f8f3;
	color: #008c3d !important;
	transition: background-color .2s ease, color .2s ease; }
	.btn-download:hover {
		background: #008c3d;
		color: #fff !important; }

/* grid Tabulator reaproveitado nas subtabelas de anexos de
   licitação (materiais/fornecedores) — mesma paleta do /lai. */
.tabela-consulta .tabulator {
	border: 1px solid #EDEDED;
	border-radius: 14px;
	overflow: hidden;
	font-family: 'OpenSans Regular', Arial, sans-serif;
	box-shadow: 0 4px 14px rgba(0,0,0,.05); }
	.tabela-consulta .tabulator .tabulator-header {
		background: #008c3d;
		border-bottom: none; }
		.tabela-consulta .tabulator .tabulator-header .tabulator-col {
			background: #008c3d;
			border-right-color: rgba(255,255,255,.15); }
			.tabela-consulta .tabulator .tabulator-header .tabulator-col-title {
				color: #fff;
				font-family: 'OpenSans SemiBold', Arial, sans-serif;
				font-size: 13px; }
	.tabela-consulta .tabulator-row {
		font-size: 13px;
		color: #333; }
		.tabela-consulta .tabulator-row.tabulator-row-even {
			background: #FAFAFA; }
		.tabela-consulta .tabulator-row:hover {
			background: #f0f8f3 !important; }
		.tabela-consulta .tabulator-row .tabulator-cell {
			white-space: normal;
			word-break: break-word; }
	.tabela-consulta .tabulator .tabulator-footer {
		background: #fff;
		border-top: 1px solid #EDEDED; }
		.tabela-consulta .tabulator .tabulator-page.active {
			background: #008c3d;
			color: #fff !important;
			border-color: #008c3d; }

body.tema-escuro .pagina-conteudo,
body.tema-escuro .ficha-consulta,
body.tema-escuro .subtabela-consulta,
body.tema-escuro .tabela-consulta .tabulator {
	background: #1E2126;
	border-color: #2E3339; }
	body.tema-escuro .pagina-conteudo,
	body.tema-escuro .ficha-consulta .ficha-item dd {
		color: #E4E4E4; }
	body.tema-escuro .subtabela-consulta tbody td,
	body.tema-escuro .tabela-consulta .tabulator-row {
		color: #E4E4E4;
		background: #1E2126; }
	body.tema-escuro .arquivos-consulta .arquivo-item {
		background: #20242A;
		border-color: #2E3339;
		color: #ccc; }

/* =========================================================
   REDESIGN TOTAL — passo 20: /sitemap em grid de cards por
   categoria (era uma lista solta de <a><br> sem estrutura).
   ========================================================= */

.sitemap-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 20px;
	margin: 30px 0 60px 0; }

.sitemap-categoria {
	background: #fff;
	border: 1px solid #EDEDED;
	border-radius: 18px;
	box-shadow: 0 4px 14px rgba(0,0,0,.05);
	padding: 24px; }
	.sitemap-categoria h3 {
		font-family: 'OpenSans Bold', Arial, sans-serif;
		font-size: 16px;
		color: #1A1A1A;
		margin: 0 0 14px 0;
		padding-left: 12px;
		border-left: 4px solid #008c3d; }
	.sitemap-categoria ul {
		list-style: none;
		margin: 0;
		padding: 0; }
		.sitemap-categoria ul li {
			border-bottom: 1px solid #F5F5F5; }
			.sitemap-categoria ul li:last-child {
				border-bottom: none; }
			.sitemap-categoria ul li a {
				display: block;
				padding: 9px 0;
				font-family: 'OpenSans Regular', Arial, sans-serif;
				font-size: 14px;
				color: #555;
				transition: color .2s ease, padding-left .2s ease; }
				.sitemap-categoria ul li a:before {
					content: '›';
					color: #008c3d;
					font-weight: bold;
					margin-right: 8px; }
				.sitemap-categoria ul li a:hover {
					color: #008c3d;
					padding-left: 4px;
					text-decoration: none; }

body.tema-escuro .sitemap-categoria {
	background: #1E2126;
	border-color: #2E3339; }
	body.tema-escuro .sitemap-categoria h3 {
		color: #E4E4E4; }
	body.tema-escuro .sitemap-categoria ul li {
		border-bottom-color: #2A2F36; }
	body.tema-escuro .sitemap-categoria ul li a {
		color: #C6C6C6; }

/* =========================================================
   REDESIGN TOTAL — passo 21: /lai/busca — resultados
   agrupados por fonte, mesmo padrão visual das outras
   listas (era <ul><li> solto sem estrutura nenhuma).
   ========================================================= */

.busca-resultados {
	margin: 30px 0 60px 0;
	width: 100%; }
	.busca-resultados h3 {
		font-family: 'OpenSans Bold', Arial, sans-serif;
		font-size: 18px;
		color: #1A1A1A;
		margin: 28px 0 14px 0;
		padding-left: 14px;
		border-left: 4px solid #008c3d; }
		.busca-resultados h3:first-child {
			margin-top: 0; }
	.busca-resultados ul {
		list-style: none;
		margin: 0 0 8px 0;
		padding: 0;
		background: #fff;
		border: 1px solid #EDEDED;
		border-radius: 14px;
		box-shadow: 0 4px 14px rgba(0,0,0,.05);
		overflow: hidden; }
		.busca-resultados ul li {
			border-bottom: 1px solid #F5F5F5; }
			.busca-resultados ul li:last-child {
				border-bottom: none; }
			.busca-resultados ul li a {
				display: block;
				padding: 12px 20px;
				font-family: 'OpenSans Regular', Arial, sans-serif;
				font-size: 14px;
				color: #555;
				transition: color .2s ease, background-color .2s ease; }
				.busca-resultados ul li a:before {
					content: '›';
					color: #008c3d;
					font-weight: bold;
					margin-right: 8px; }
				.busca-resultados ul li a:hover {
					color: #008c3d;
					background: #f0f8f3;
					text-decoration: none; }
	.busca-resultados .busca-vazia {
		background: #fff;
		border: 1px solid #EDEDED;
		border-radius: 14px;
		padding: 24px;
		color: #777;
		font-family: 'OpenSans Regular', Arial, sans-serif; }

body.tema-escuro .busca-resultados h3 {
	color: #E4E4E4; }
body.tema-escuro .busca-resultados ul,
body.tema-escuro .busca-resultados .busca-vazia {
	background: #1E2126;
	border-color: #2E3339; }
	body.tema-escuro .busca-resultados ul li {
		border-bottom-color: #2A2F36; }
	body.tema-escuro .busca-resultados ul li a {
		color: #C6C6C6; }

/* =========================================================
   REDESIGN TOTAL — passo 22: /interacao (acompanhamento de
   SIC/Ouvidoria) — era tudo Bootstrap genérico (.card/.badge
   azul-padrão), agora segue o mesmo padrão visual das outras
   páginas (.ficha-consulta, .secao-consulta, cards próprios).
   Um único arquivo serve SIC e Ouvidoria, então o fix vale
   pros dois automaticamente.
   ========================================================= */

.badge-codigo {
	display: inline-block;
	background: #f0f8f3;
	color: #008c3d;
	font-family: 'OpenSans Bold', Arial, sans-serif;
	font-size: 15px;
	letter-spacing: .03em;
	padding: 4px 14px;
	border-radius: 30px; }


.interacao-form .form-group {
	margin-bottom: 18px; }
.interacao-form label {
	display: block;
	margin-bottom: 8px;
	font-family: 'OpenSans SemiBold', Arial, sans-serif;
	font-size: 14px;
	color: #333; }
.interacao-form .form-control {
	width: 100%;
	border: 1px solid #E3E3E3;
	border-radius: 10px;
	padding: 12px 16px;
	font-family: 'OpenSans Regular', Arial, sans-serif;
	font-size: 14px;
	resize: vertical; }
	.interacao-form .form-control:focus {
		outline: none;
		border-color: #008c3d; }

.alerta-interacao {
	border-radius: 12px;
	padding: 16px 20px;
	margin-bottom: 18px;
	font-family: 'OpenSans Regular', Arial, sans-serif;
	font-size: 14px; }
.alerta-interacao.alerta-sucesso {
	background: #f0f8f3;
	color: #008c3d; }
.alerta-interacao.alerta-erro {
	background: #FDEBEB;
	color: #C0392B; }

.historico-interacoes .historico-vazio {
	background: #fff;
	border: 1px solid #EDEDED;
	border-radius: 14px;
	padding: 30px;
	text-align: center;
	color: #999;
	font-family: 'OpenSans Regular', Arial, sans-serif; }

.comentario-item {
	background: #fff;
	border: 1px solid #EDEDED;
	border-left: 4px solid #CCC;
	border-radius: 14px;
	padding: 20px;
	margin-bottom: 14px;
	box-shadow: 0 4px 14px rgba(0,0,0,.04);
	transition: box-shadow .2s ease, transform .2s ease; }
	.comentario-item:hover {
		box-shadow: 0 8px 20px rgba(0,0,0,.08);
		transform: translateY(-2px); }
	.comentario-item.comentario-admin {
		border-left-color: #008c3d; }
	.comentario-item.comentario-internauta {
		border-left-color: #999; }
	.comentario-cabecalho {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 8px;
		margin-bottom: 12px;
		padding-bottom: 12px;
		border-bottom: 1px solid #F5F5F5; }
	.comentario-autor {
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		font-size: 14px;
		color: #333; }
	.comentario-badge {
		display: inline-block;
		margin-left: 8px;
		padding: 2px 10px;
		border-radius: 30px;
		font-size: 11px;
		font-family: 'OpenSans SemiBold', Arial, sans-serif;
		background: #F0F0F0;
		color: #666; }
	.comentario-admin .comentario-badge {
		background: #f0f8f3;
		color: #008c3d; }
	.comentario-data {
		font-size: 12px;
		color: #999;
		font-family: 'OpenSans Regular', Arial, sans-serif; }
	.comentario-texto {
		margin: 0;
		font-family: 'OpenSans Regular', Arial, sans-serif;
		font-size: 14px;
		color: #444;
		line-height: 1.6; }

body.tema-escuro .comentario-item {
	background: #1E2126;
	border-color: #2E3339; }
	body.tema-escuro .comentario-cabecalho {
		border-bottom-color: #2A2F36; }
	body.tema-escuro .comentario-autor,
	body.tema-escuro .comentario-texto {
		color: #E4E4E4; }
	body.tema-escuro .historico-interacoes .historico-vazio {
		background: #1E2126;
		border-color: #2E3339; }
	body.tema-escuro .interacao-form .form-control {
		background: #20242A;
		border-color: #2E3339;
		color: #E4E4E4; }
