/*
Theme Name:		Portal da Prefeitura de Jundiaí 4.0
Theme URI:		https://jundiai.sp.gov.br/
Author:			CIJUN
Author URI:		https://cijun.sp.gov.br/
Description:	Site principal do portal da Prefeitura de Jundiaí
Version:		4.0
*/

/* tabela de cores */
/*
azul gestão		#003371
turquesa		#00a898
verde			#70be43
amarelo			#ffdd00
laranja			#faa518
magenta			#b41d8d
ciano			#00b9f1
azul			#0474bc
*/

:root {
	--azul-claro:	#009FE3;
	--azul-escuro:	#072380;
	--verde:		#007B3D;
	--amarelo:		#FFCC00;
}

/* ----- ELEMENTOS BÁSICOS ------------------------------------------------------ */

body,
input,
textarea,
select,
option,
button {
	font-family: "Montserrat", sans-serif;
	font-weight: 400;
	font-size: 16px;
}

body {
	color: #333;
}

body.contraste {
	background: #222;
	color: #fff;
}

.contraste input,
.contraste textarea,
.contraste select,
.contraste option,
.contraste button {
	background: #222;
	border-color: #fff;
	color: #fff;
}

.contraste ::placeholder {
	color: #fff;
}

h1 {
	font-size: 40px;
}

h2 {
	margin: 2em 0 1em;
	font-size: 36px;
}

h3 {
	margin: 2em 0 1em;
	font-size: 30px;
}

h4 {
	margin: 2em 0 1em;
	font-size: 26px;
}

h5 {
	margin: 2em 0 1em;
	font-size: 22px;
	font-weight: 600;
}

h6 {
	margin: 2em 0 1em;
	font-size: 18px;
	font-weight: 600;
}

a:link,
a:visited {
	color: var(--azul-escuro);
	text-decoration: underline;
}

a:hover,
a:active {
	color: var(--azul-claro);
	text-decoration: underline;
}

.contraste a:link,
.contraste a:visited,
.contraste a:hover,
.contraste a:active {
	color: #E1FE0A;
}

blockquote {
	margin-left: 20px;
	font-style: italic;
}

#main,
.container {
	min-width: 320px;
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
	overflow-wrap: break-word;
	word-wrap: break-word;
}

b, strong {
	font-weight: 600;
}

/* ----- BLOCOS DO WORDPRESS ---------------------------------------------------- */

.wp-block-button__link:link,
.wp-block-button__link:visited {
	color: #fff;
	text-decoration: none;
}

.contraste .wp-block-button__link:link,
.contraste .wp-block-button__link:visited {
	background: transparent !important;
	color: #E1FE0A !important;
	border: 1px solid #fff;
}

.wp-block-columns {
	margin-bottom: 1.5em;
}

.wp-block-group.has-background {
	margin-bottom: 30px;
	padding: 20px;
}

.wp-block-group.aviso {
	background-color: #eee;
	border: 1px solid #ccc;
}

.contrase .wp-block-group.aviso {
	background-color: transparent;
	border-color: transparent;
}

.wp-block-group.aviso a:link,
.wp-block-group.aviso a:visited {
	font-weight: 400;
}

.wp-block-file:not(.wp-element-button) {
	margin-bottom: 1.5em;
	font-size: 1em !important;
}

.wp-block-file *+.wp-block-file__button {
	background: #222;
	color: #fff;
	padding: 5px 8px;
	font-size: 0.7em;
	text-decoration: none;
}

.contraste .wp-block-file *+.wp-block-file__button {
	border: 1px solid #fff;
}

/* blocos com cor de fundo */
.contraste .has-background {
	background-color: #222 !important;
	border: 1px solid #fff;
}

.contraste .has-text-color {
	color: #fff #important;
}

/* legenda das imagens das versões anteriores do WP */
.contraste figcaption,
.contraste .figcaption,
.contraste .wp-element-caption,
.contraste .wp-caption-text {
	color: #fff;
}

/* tabelas nativas do WordPress */

.contraste .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
	background-color: transparent;
}

/* ----- LINKS DE TRANSPARÊNCIA ------------------------------------------------- */

#barra-transparencia {
	background: #222;
}

#barra-transparencia .container {
	padding: 15px 10px 10px;
	font-size: 12px;
	display: grid;
	gap: 40px;
	grid-template-columns: 1fr auto;
}

#barra-transparencia a:link,
#barra-transparencia a:visited {
	color: #fff;
	display: block;
	text-decoration: none;
}

#barra-transparencia a:hover,
#barra-transparencia a:active {
	color: #fff;
	text-decoration: underline;
}

.contraste #barra-transparencia a:link,
.contraste #barra-transparencia a:visited,
.contraste #barra-transparencia a:hover,
.contraste #barra-transparencia a:active {
	color: #E1FE0A;
}

/* menu */

#barra-transparencia #menu-transparencia-container {
	width: fit-content;
}

#barra-transparencia #menu-transparencia {
	margin: 0;
	list-style: none;
	display: none;
}

#barra-transparencia #menu-transparencia li {
	display: inline-block;
	margin-right: 10px;
}

/* links de acessibilidade */

#barra-transparencia #acessibilidade-visivel {
	width: 100%;
	justify-self: end;
	align-self: center;
}

#barra-transparencia #acessibilidade-visivel a {
	background-size: 24px 24px;
	background-repeat: no-repeat;
	background-position: center right;
	display: inline-block;
	padding-right: 30px;
	width: fit-content;
	line-height: 24px;
}

#barra-transparencia #acessibilidade-visivel .alto-contraste {
	background-image: url(//src.cijun.sp.gov.br/img/icones-acessibilidade/alto-contraste-branco.svg);
}

#barra-transparencia #acessibilidade-visivel .mapa-do-site {
	background-image: url(//src.cijun.sp.gov.br/img/icones-acessibilidade/sitemap-branco.svg);
	margin-left: 16px;
}

@media only screen and (min-width: 1024px) {

	#barra-transparencia .container {
		/* font-size: 13px; */
	}

	#barra-transparencia #menu-transparencia {
		margin: 0;
		list-style: none;
		display: block;
	}

	#barra-transparencia #menu-transparencia .lai {
		background-image: url(//src.cijun.sp.gov.br/img/icones-arquivos/lei-de-acesso-a-informacao-32x32.png);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 16px 16px;
		width: auto;
		padding-left: 20px;
	}
}

@media only screen and (min-width: 1220px) {

	#barra-transparencia .container {
		font-size: 13px;
	}

}

/* ----- CABEÇALHO -------------------------------------------------------------- */

#header {
	background: #fff;
	padding: 30px 20px;
}

.contraste #header {
	background: transparent;
}

#header .container {
	position: relative;
	display: grid;
	gap: 0;
	grid-template-columns: auto 1fr auto;
	grid-template-areas: "logo . menu";
	justify-content: stretch;
	align-content: center;
}

#header .header-logo {
	grid-area: logo;
	justify-self: center;
	align-self: center;
}

#header .icones-sociais {
	display: none;
	grid-area: sociais;
	justify-self: center;
	align-self: center;
}

#header .logo-gestao-2025-horizontal {
	background-image: url(//src.cijun.sp.gov.br/img/gestao-2025-2028/logotipos/logotipo-horizontal-700.png);
	background-size: 100% auto;
	width: 250px;
	height: 67px;
}

.contraste #header .logo-gestao-2025-horizontal {
	background-image: url(//src.cijun.sp.gov.br/img/gestao-2025-2028/logotipos/logotipo-horizontal-negativo-700.png)
}

@media only screen and (max-width: 1023px) {

#header .logo-gestao-2025-horizontal {
		width: 200px;
		height: 53px;
	}

}

@media only screen and (min-width: 1024px) {

	#header {
		padding-bottom: 0;
	}

	#header .container {
		gap: 20px;
		grid-template-areas: "logo menu sociais"
	}

	#header .icones-sociais {
		display: block;
		font-size: 14px;
		font-weight: 600;
		text-transform: uppercase;
	}
	
	#header .icones-sociais-custom a {
		background-position: center center;
		background-size: 100% 100%;
		background-repeat: no-repeat;
		width: 24px;
		height: 24px;
		margin-left: 6px;
		float: none;
		display: inline-block;
		vertical-align: middle;
		text-indent: -100000px;
		font-size: 0;
	}

	#header .icones-sociais-custom .whatsapp {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-whatsapp.svg);
		margin-left: 0;
		display: none;
	}

	.contraste #header .icones-sociais-custom .whatsapp {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-whatsapp.svg);
	}

	#header .icones-sociais-custom .linkedin {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-linkedin.svg);
	}

	.contraste #header .icones-sociais-custom .linkedin {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-linkedin.svg);
	}

	#header .icones-sociais-custom .facebook {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-facebook.svg);
	}

	.contraste #header .icones-sociais-custom .facebook {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-facebook.svg);
	}

	#header .icones-sociais-custom .instagram {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-instagram.svg);
	}

	.contraste #header .icones-sociais-custom .instagram {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-instagram.svg);
	}

	#header .icones-sociais-custom .youtube {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-youtube.svg);
	}

	.contraste #header .icones-sociais-custom .youtube {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-youtube.svg);
	}

	#header .icones-sociais-custom .flickr {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-flickr.svg);
	}

	.contraste #header .icones-sociais-custom .flickr {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-flickr.svg);
	}

	#header .icones-sociais-custom .twitter {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-x.svg);
		background-size: 80% 80%;
	}

	.contraste #header .icones-sociais-custom .twitter {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-x.svg);
		background-size: 80% 80%;
	}

	#header .icones-sociais-custom .tiktok {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-tiktok.svg);
		
	}

	.contraste #header .icones-sociais-custom .tiktok {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-tiktok.svg);
	}

	#header .icones-sociais-custom .ios {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-ios.svg);
	}

	.contraste #header .icones-sociais-custom .ios {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-ios.svg);
	}

	#header .icones-sociais-custom .android {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-android.svg);
	}

	.contraste #header .icones-sociais-custom .android {
		background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-android.svg);
	}


	#header .icones-sociais p {
		text-align: center;
		margin: 0;
	}

	#header .icones-sociais p:first-of-type {
		border-bottom: 1px solid #f5f5f5;
		margin-bottom: 1em;
		padding-bottom: 1em;
	}
	
	.contraste #header .icones-sociais p:first-of-type {
		border-color: transparent;
	}

	#header .icones-sociais span {
		vertical-align: middle;
		display: inline-block;
	}
	
}

/* ----- MENU ------------------------------------------------------------------- */

#menu-grid {
	grid-area: menu;
	justify-self: center;
	align-self: center;
}

#botao-menu {
	color: #2A2A2A;
	border: 1px solid #2A2A2A;
	border-radius: 3px;
	margin-right: 10px;
	padding: 3px 5px;
	display: block;
	width: 91px;
	line-height: 1;
	text-decoration: none;
}

.contraste #botao-menu {
	border-color: #E1FE0A;
	color: #E1FE0A;
}

#botao-menu .hamburguer {
	font-size: 30px;
}

#botao-menu span {
	padding-right: 5px;
	display: inline-block;
	vertical-align: middle;
}

.menu-principal-container {
	background: #fff;
	width: calc(100% + 40px);
	padding-top: 20px;
	display: none;
	position: absolute;
	top: 60px;
	left: -20px;
	z-index: 1000;
}

.contraste .menu-principal-container {
	background: #222;
}

#menu-principal {
	width: 100%;
	list-style: none;
	border-bottom: 3px solid #DDD;
}

#menu-principal a:link,
#menu-principal a:visited {
	color: #2A2A2A;
	padding: 10px;
	display: block;
	border-bottom: 1px solid #DDD;
	text-decoration: none;
}

#menu-principal a:hover,
#menu-principal a:active {
	background: #666;
	color: #FFF;
	text-decoration: none;
}

.contraste #menu-principal a:link,
.contraste #menu-principal a:visited,
.contraste #menu-principal a:hover,
.contraste #menu-principal a:active {
	color: #E1FE0A;
}

.contraste #menu-principal a:link,
.contraste #menu-principal a:visited {
	border-color: #fff;
}

#menu-principal li ul {
	margin-left: 20px;
}

#menu-principal .menu-previdencia {
	display: none;
}

@media only screen and (min-width: 1024px) {

	#botao-menu {
		display: none;
	}

	.menu-principal-container {
		width: auto;
		margin: auto;
		padding-top: 0;
		display: table;
		position: static;
		text-transform: uppercase;
		letter-spacing: -1px;
	}
	
	#menu-principal {
		border: none;
		max-width: 500px;
		margin: 0;
		text-align: center;
	}

	#menu-principal li {
		border-bottom: none;
		display: inline-block;
	}

	#menu-principal a:link,
	#menu-principal a:visited {
		color: #2A2A2A;
		border-bottom: 5px solid transparent;
		padding: 5px 10px;
		text-decoration: none;
		font-weight: 600;
	}

	#menu-principal a:hover,
	#menu-principal a:active {
		background: none;
		color: #2A2A2A;
		border-bottom-color: var(--azul-claro);
	}

	.contraste #menu-principal a:link,
	.contraste #menu-principal a:visited,
	.contraste #menu-principal a:hover,
	.contraste #menu-principal a:active {
		border-color: transparent;
	}

	/* itens que já estão na barra para desktop */
	#menu-principal .menu-lai,
	#menu-principal .menu-transparencia,
	#menu-principal .menu-imprensa,
	#menu-principal .menu-observatorio,
	#menu-principal .menu-previdencia,
	#menu-principal .menu-carta-de-servicos {
		display: none;
	}
}

@media only screen and (min-width: 1300px) {

	#menu-principal {
		max-width: none;
	}

}

/* ----- CONTEÚDO --------------------------------------------------------------- */

#content {
	padding: 20px 10px;
}

.pagina a { /* links em negrito */
	font-weight: 600;
}

.pagina-titulo { /* títulos */
	margin: 0 0 1em 0;
	font-weight: 600;
}

.lista-sub-paginas, /* listas */
.pagina ul {
	margin: 0 0 1.5em 0;
	list-style: none;
}

.pagina ol {
	margin: 0 0 1.5em 20px;
}

.lista-sub-paginas ul li:before,
.pagina ul li:before {
	color: #333;
	content: "» \00a0";
}

.contraste .lista-sub-paginas ul li:before,
.contraste .pagina ul li:before {
	color: #fff;
}

.contraste .lista-sub-paginas ul li:before,
.contraste .pagina ul li:before {
	color: #fff;
}

.lista-sub-paginas ul,
.pagina ul ul,
.pagina ol ol,
.pagina ol ul {
	margin: 0.3em 0 0.8em 15px;
}

.lista-sub-paginas ul li li:before,
.pagina ul li li:before {
	content: "› \00a0";
}

/* galeria de imagens - editor Gutenberg */

.wp-block-gallery li:before {
	content: none !important;
}

@media only screen and (min-width: 480px) {

	#content {
		padding-left: 20px;
		padding-right: 20px;
	}

}

@media only screen and (min-width: 960px) {

	#content {
		padding-top: 20px;
		padding-bottom: 40px;
	}

}

@media only screen and (min-width: 1440px) {

	#content {
		padding-left: 0;
		padding-right: 0;
	}
	
}

/* ----- PÁGINAS INTERNAS ------------------------------------------------------- */

/* Breadcrumb */

.contraste #breadcrumb {
	color: #fff;
}

/* Resultado de Busca, Mapa do Site */

.noticia-lista { /* item */
	margin-bottom: 30px;
}

.data-lista { /* data */
	color: #666;
	font-size: 13px;
}

#pagina-mapa-do-site .mapa-ambiente,
#pagina-busca .busca-ambiente {
	color: #888;
	border-bottom: 1px solid #AAA;
	margin-top: 2em;
	margin-bottom: 1em;
	padding-bottom: 0.3em;
	font-size: 20px;
	font-weight: 600;
}

.contraste #pagina-mapa-do-site .mapa-ambiente,
.contraste #pagina-mapa-do-site .mapa-ambiente a,
.contraste #pagina-busca .busca-ambiente {
	color: #fff;
	border-color: #fff;
}

#pagina-mapa-do-site .mapa-ambiente a {
	color: #888;
	text-decoration: none;
}

#pagina-mapa-do-site .mapa-lista li {
	margin-bottom: 0.3em;
}

#pagina-mapa-do-site .mapa-lista a {
	font-weight: normal;
}

/* Serviços ao Cidadão, Empresa */

.page-cidadao ul li,
.page-empresa ul li {
	margin-bottom: 0.5em;
}

#pagina-servicos-ao-cidadao .categoria-titulo {
	color: #888;
	border-bottom: 1px solid #AAA;
	margin-top: 2em;
	margin-bottom: 1em;
	padding-bottom: 0.3em;
	font-size: 20px;
	font-weight: 600;
}

/* Governo */

.plataforma {
	margin-bottom: 30px;
	line-height: 1.6;
	text-align: left;
}

.page-plataformas .lista-links {
	margin-bottom: 1em;
}

.page-plataformas .lista-links li {
	margin-bottom: 0;
}

@media only screen and (min-width: 800px) {

	/* Mapa do site */
	#pagina-mapa-do-site .mapa-lista {
		column-count: 2;
		column-gap: 50px;
	}

}

@media only screen and (min-width: 960px) {

	/* Breadcrumb */
	#breadcrumb {
		background: #F5F5F5;
		border-bottom: 1px solid #DDD;
		width: 75%;
		height: 50px;
		margin-bottom: 50px;
		padding: 15px;
		float: left;
		text-transform: uppercase;
		font-size: 14px;
	}
	
	.contraste #breadcrumb {
		background: transparent;
		border-color: transparent;
		color: #fff;
	}

	#breadcrumb .delimitador {
		color: #222;
		padding: 0 3px;
		font-weight: 600;
	}

	#breadcrumb a:link,
	#breadcrumb a:visited {
		color: #222;
		font-weight: 600;
	}

	.contraste #breadcrumb .delimitador,
	.contraste #breadcrumb a:link,
	.contraste #breadcrumb a:visited {
		color: #E1FE0A;
	}

	#breadcrumb a:hover,
	#breadcrumb a:active {
		color: #000;
	}

}

@media only screen and (min-width: 1024px) {

	/* Mapa do site */
	#pagina-mapa-do-site .mapa-lista {
		column-count: 3;
	}

}

@media only screen and (min-width: 1440px) {

	/* Mapa do site */
	#pagina-mapa-do-site .mapa-lista {
		column-count: 4;
	}

}

/* ----- FORMULÁRIO DE BUSCA ---------------------------------------------------- */

.form-busca { /* busca */
	max-width: 550px;
	margin: 0 auto 30px;
}

#form-busca input[type="text"] {
	border-right: none;
	border-radius: 15px 0 0 15px;
	width: 90%;
	padding-left: 10px;
}

#form-busca input[type="submit"] {
	background: #FFF url(//src.cijun.sp.gov.br/img/icones-busca/buscar-cinza-16x16.png) no-repeat center center;
	color: transparent;
	border-left: none;
	border-radius: 0 15px 15px 0;
	width: 10%;
}

.contraste #form-busca input[type="submit"] {
	background: transparent url(//src.cijun.sp.gov.br/img/icones-busca/buscar-branco-16x16.png) no-repeat center center;
}

/* página de erro 404 */
.busca-404 {
	width: 90%;
	max-width: 550px;
	margin: 40px auto;
}

@media only screen and (min-width: 960px) {
	
	.form-busca {
		background: #F5F5F5;
		border-bottom: 1px solid #DDD;
		width: 25%;
		height: 50px;
		margin-bottom: 50px;
		padding: 8px;
		float: right;
	}

	.contraste #form-busca {
		background: transparent;
		border-color: transparent;
	}

	#form-busca input[type="text"],
	#form-busca input[type="submit"] {
		border-color: #ddd;
	}

	.busca-404 {
		background: none;
		border-bottom: none;
		width: 550px;
		float: none;
	}

}

/* ----- RODAPÉ ----------------------------------------------------------------- */

#rodape {
	background: #222;
	color: #fff;
	margin: 40px 0 0;
	font-size: 14px;
}

#rodape .container {
	padding: 20px;
}

#rodape a:link,
#rodape a:visited {
	color: #fff;
	text-decoration: none;
}

#rodape a:hover,
#rodape a:active {
	color: #ddd;
	text-decoration: underline;
}

.contraste #rodape a:link,
.contraste #rodape a:visited,
.contraste #rodape a:hover,
.contraste #rodape a:active {
	color: #E1FE0A;
}

#rodape .icones-sociais {
	margin: 20px auto 10px;
}

#rodape .icones-sociais a {
	margin: 5px;
}

#rodape .rodape-endereco {
	font-size: 12px;
	text-align: center;
}

#rodape .rodape-mapa-do-site,
#rodape .rodape-lista-sites {
	display: none;
}

#desenvolvido-por {
	color: #999;
	padding-bottom: 0;
}

.contraste #desenvolvido-por {
	color: #fff;
	border-color: transparent;
}

@media only screen and (min-width: 960px) {

	#rodape .rodape-endereco {
		font-size: 14px;
	}
	
	#rodape .rodape-mapa-do-site {
		margin-bottom: 1.5em;
		display: block;
		font-size: 16px;
		font-weight: 600;
	}

	#rodape .rodape-lista-sites {
		margin-bottom: 2em;
		list-style: none;
		display: block;
		font-size: 13px;
		column-count: 4;
		column-gap: 50px;
	}

	#rodape .rodape-lista-sites li {
		margin-bottom: 0.5em;
	}

}

/* ----- RECAPTCHA ----------------------------------------------------------------------------- */

small.recaptcha {
	color: #999 !important;
}

small.recaptcha,
small.recaptcha a {
	font-size: 9px !important;
}

.grecaptcha-badge {
	visibility: hidden;
}

/* ----- INDICADORES DO POWER BI ----------------------------------------------------- */

.power-bi {
	position: relative;
}

.power-bi .power-bi-barra {
	background: #fff;
	width: 100%;
	height: 40px;
	position: absolute;
	bottom: 0;
	left: 0;
}

.container-bi {
	height: 250px;
}

.container-bi iframe {
	width: 100%;
	height: 100%;
	display: block;
}

/* esconde a barra de navegação do BI */

@media only screen and (min-width: 480px) {

	.container-bi {
		height: 300px;
	}

}

@media only screen and (min-width: 600px) {

	.container-bi {
		height: 380px;
	}

}

@media only screen and (min-width: 800px) {

	.container-bi {
		height: 500px;
	}

}

@media only screen and (min-width: 1024px) {

	.container-bi {
		height: 650px;
	}

}

@media only screen and (min-width: 1200px) {

	.container-bi {
		height: 850px;
	}

}
