/*
Theme Name: 100 Dias de Governo
Theme URI: https://jundiai.sp.br/100dias
Author: CIJUN
Author URI: https://cijun.sp.gov.br/
Description: Hotsite das entregas de 100 dias de Governo
Version: 1.0
*/

/* ----- TABELA DE CORES DA GESTÃO 2025 ----------------------------------------------- */

:root {
	
	--ciano:	#009FE3;
	--azul:		#072380;
	--amarelo:	#FFCC00;
	--laranja:	#FF6600;
	--magenta:	#FF00FF;
	--roxo:		#9900CC;
	--verde:	#007B3D;
	--vermelho:	#FF0000;
	--chumbo:	#333333;
	--prata:	#CCCCCC;

	--tooltip: #E1FE0A;

}

/* ----- RESET ----------------------------------------------------------------------- */

* {box-sizing: border-box; scroll-behavior: smooth;}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd,
q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td
{border: 0; margin: 0; padding: 0; vertical-align: baseline; font-size: 100%; font: inherit;}

blockquote, q {quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {content: ''; content: none;}
table {border-collapse: collapse; border-spacing: 0;}
strong, b {font-weight: bold;}
em, i {font-style: italic;}
pre, code, tt {font: 1em/1.5em monospace; white-space: pre-wrap;}
sup {line-height: 100%; font-size: 70%; vertical-align: top;}
sub {line-height: 100%; font-size: 70%; vertical-align: bottom;}
small {font-size: 80%;}
del, strike {text-decoration: line-through;}
img {-ms-interpolation-mode: bicubic; vertical-align: middle; display: block;}
button, input, select, textarea {font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle;}
label {cursor: pointer;}
legend {border: 0; padding: 0; white-space: normal;}
button, input {line-height: normal;}
button, input[type="button"], input[type="reset"], input[type="submit"] {cursor: pointer; -webkit-appearance: button; *overflow: visible;}
button[disabled], input[disabled] {cursor: default;}
input[type="checkbox"], input[type="radio"] {box-sizing: border-box; padding: 0; *width: 13px; *height: 13px;}
input[type="search"] {-webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box;}
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button {-webkit-appearance: none;}
button::-moz-focus-inner, input::-moz-focus-inner {border: 0; padding: 0;}
textarea {overflow: auto; vertical-align: top; resize: vertical;}
figure {margin-block-start: 0; margin-block-end: 0; margin-inline-start: 0; margin-inline-end: 0;}

/* ----- ELEMENTOS BÁSICOS ----------------------------------------------------------- */

html, body, button, input, select, textarea {
	color: #333;
	font-size: 18px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
}

body {
	background: var(--laranja);
	color: #fff;
	line-height: 1.4;
	overflow-wrap: break-word;
	word-wrap: break-word;
}

a:link,
a:visited {
	color: var(--azulgestao);
}

a:hover {
	color: #000;
}

a:active,
a:focus,
button:focus {
	outline: 1px dotted #666;
	outline-offset: 1px;
}

b, strong {
	font-weight: 600;
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.2;
	font-weight: 700;
}

h1 {
	margin: 0 0 1em;
	font-size: 32px;
}

h2 {
	margin: 1.5em 0 1em;
	font-size: 26px;
}

h3 {
	margin: 1.5em 0 1em;
	font-size: 22px;
}

h4 {
	margin: 0 0 0.5em;
	font-size: 20px;
}

h5 {
	margin: 0 0 0.5em;
	font-size: 16px;
}

h6 {
	margin: 0 0 0.5em;
	font-size: 16px;
}

p, pre, dl, ul, ol {
	margin-bottom: 1.5em;
}

iframe {
	margin-left: auto;
	margin-right: auto;
	display: block;
	max-width: 100%;
}

iframe:not(figure iframe) {
	margin-bottom: 1.5em;
}

table {
	margin-bottom: 0.5em;
}

ul, ol {
	margin-left: 1.5em;
}

ul li, ol li {
	margin-bottom: 0.3em;
}

ul ul,
ol ol,
ul ol,
ol ul {
	margin-top: 0.3em;
	margin-bottom: 0.3em;
}

img {
	max-width: 100%;
	height: auto;
}

/* ----- ELEMENTOS GENÉRICOS --------------------------------------------------------- */

.container {
	min-width: 300px;
	max-width: 1300px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 20px;
}

.clear {
	content: '';
	height: 0;
	display: block;
	clear: both;
	line-height: 0;
}

.hidden {
	display: none;
}

.border-radius-5 {
	border-radius: 5px;
}

.border-radius-10 {
	border-radius: 10px;
}

@media only screen and (min-width: 1330px) {

	.container {
		padding: 0;
	}

}

/* ----- BLOCOS DO WORDPRESS --------------------------------------------------------- */

figure,
.wp-block-group,
.wp-block-image,
.wp-block-media-text,
.wp-block-video,
.wp-block-embed,
.wp-block-cover {
	margin: 0 auto 2em;
}

.wp-block-embed {
	width: fit-content;
}

.wp-caption-text,
figcaption {
	margin-top: 10px;
	color: #777;
	font-size: 14px;
}

.wp-caption-text,
figcaption,
figure.size-large figcaption,
figure.size-full figcaption,
figure.aligncenter figcaption,
figure.alignleft figcaption,
figure.alignright figcaption {
	text-align: center;
}

/* colunas */

@media (min-width: 782px) {
		
	.wp-block-columns {
		gap: 40px;
	}

}

/* separador */

hr {
	background: #ccc;
	color: #ccc;
	border: none;
	margin: 2em auto;
	height: 1px;
}

.wp-block-separator {
	border: none;
	width: 50%;	
}

.wp-block-separator.is-style-wide {
	width: 100%;
}

/* vídeos */

/* inserido num bloco do tipo HTML usando o código embed do YouTube */
iframe[src*="youtube.com"]:not(figure.is-type-video iframe),
figure.is-type-video.aligncenter,
figure.is-type-video.aligncenter iframe {
	width: 100%;
}

@media only screen and (min-width: 600px) {

	figure.is-type-video.alignleft {
		margin: 0 20px 0 0;
		float: left;
	}

	figure.is-type-video.alignright {
		margin: 0 0 0 20px;
		float: right;
	}

}

@media only screen and (min-width: 800px) {

	iframe[src*="youtube.com"]:not(figure.is-type-video iframe),
	figure.is-type-video.aligncenter iframe {
		height: 500px;
	}

	/* os mesmos vídeos mas dentro de colunas */
	.wp-block-column iframe[src*="youtube.com"]:not(figure.is-type-video iframe),
	.wp-block-column figure.is-type-video.aligncenter iframe {
		height: 300px;
	}

}

@media only screen and (min-width: 1024px) {

	.pagina-full iframe[src*="youtube.com"]:not(figure.is-type-video iframe),
	.pagina-full figure.is-type-video.aligncenter iframe {
		height: 650px;
	}

	.wp-block-column iframe[src*="youtube.com"]:not(figure.is-type-video iframe),
	.wp-block-column figure.is-type-video.aligncenter iframe {
		height: 400px;
	}

}

/* conteúdo embedado do instagram e do facebook */

iframe.instagram-media,
iframe[src*="instagram.com"] {
	margin-left: auto !important;
	margin-right: auto !important;
}

iframe[src*="instagram.com"],
iframe[src*="facebook.com"] {
	margin-bottom: 2em !important;
}

/* parágrafos */

.wp-block-group.has-background {
	padding: 20px;
}

/* tabelas */

.wp-block-table {
	margin-bottom: 1.5em;
}

.wp-block-table.aligncenter {
	margin-right: auto;
	margin-left: auto;
}

.wp-block-table.alignleft {
	margin: 0 20px 0 0;
	float: left;
}

.wp-block-table.alignright {
	margin: 0 0 0 20px;
	float: right;
}

.wp-block-table table {
	font-size: 14px;
}

.wp-block-table thead {
	font-weight: 600;
}

.wp-block-table table td,
.wp-block-table table th {
	padding: 10px;
}

.wp-block-table:not(.is-style-stripes) table {
	border-top: 3px solid #eee;
	border-bottom: 3px solid #eee;
}

.wp-block-table:not(.is-style-stripes) table thead,
.wp-block-table:not(.is-style-stripes) table tfoot {
	background: #f5f5f5;
}

.wp-block-table:not(.is-style-stripes) table td,
.wp-block-table:not(.is-style-stripes) table th {
	border: 1px solid #eee;
}

.wp-block-table.is-style-stripes {
	border-bottom: none;
}

.wp-block-table.is-style-stripes table,
.wp-block-table.is-style-stripes table thead {
	border-bottom: 3px solid #333;
}

.wp-block-table.is-style-stripes table,
.wp-block-table.is-style-stripes table tfoot {
	border-top: 3px solid #333;
}

.wp-block-table table .has-text-align-center img {
	margin: auto;
}

.wp-block-table table .has-text-align-left img {
	margin: 0 20px 0 0;
	float: left;
}

.wp-block-table table .has-text-align-right img {
	margin: 0 0 0 20px;
	float: right;
}

/* botões */

.wp-block-button,
.wp-block-buttons {
	width: fit-content;
	margin-bottom: 1.5em;
	margin-left: auto;
	margin-right: auto;
}

.wp-block-button.is-style-squared .wp-block-button__link {
	border-radius: none;
}

.wp-block-button__link,
.wp-block-button__link:link,
.wp-block-button__link:visited {
	color: #fff;
}

.wp-block-button.alignleft {
	margin: 0 20px 0 0;
	float: left;
}

.wp-block-button.alignright {
	margin: 0 0 0 20px;
	float: right;
}

/* galerias */

.wp-block-gallery {
	margin: 0 0 2em;
	/* gap: 40px; */
	display: flex !important;
	flex-wrap: wrap;
}

/* blockquote */

.wp-block-quote {
	border-left: 3px solid #333;
	margin-bottom: 2em;
	margin-left: 2em;
	padding-left: 1em;
	font-style: italic;
}

.wp-block-pullquote {
	border-top: 3px solid #333;
	border-bottom: 3px solid #333;
	margin: 3em 0;
	padding: 2em 0;
}

.wp-block-quote cite,
.wp-block-pullquote cite {
	font-size: 14px;
}

.wp-block-quote cite,
.wp-block-pullquote:not(.wp-block-pullquote.has-background) cite {
	color: #666;
}

/* cover */

.wp-block-cover {
	width: 100%;
	color: #fff;
}

.wp-block-cover.left {
	margin: 0 20px 0 0;
	float: left;
}

.wp-block-cover.alignright {
	margin: 0 0 0 20px;
	float: right;
}

/* editor clásico */

.wp-caption {
	max-width: 100%;
}

.wp-caption.aligncenter,
img.aligncenter {
	margin-left: auto;
	margin-right: auto;
	display: block;
}

.wp-caption.alignleft,
img.alignleft {
	float: left;
	margin-right: 20px;
	margin-bottom: 5px;
}

.wp-caption.alignright,
img.alignright {
	float: right;
	margin-left: 20px;
	margin-bottom: 5px;
}

@media only screen and (max-width: 599px) {

	.wp-block-image .alignleft,
	.wp-block-image .alignright,
	.wp-block-image .alignleft img,
	.wp-block-image .alignright img,
	.wp-caption.alignnone,
	.wp-caption.aligncenter,
	.wp-caption.alignleft,
	.wp-caption.alignright,
	img.alignleft,
	img.alignright {
		margin-left: auto;
		margin-right: auto;
		display: block;
		float: none;
	}

}


/* ----- CABEÇALHO ------------------------------------------------------------------- */

#header {
	margin-bottom: 4em;
}

#imagem-header {
	width: 100%;
	height: auto;
	display: block;
}


/* ----- CONTEÚDO DA HOME ------------------------------------------------------------ */

#conteudo-home {}



/* ----- LISTA DE AÇÕES -------------------------------------------------------------- */

#acoes {}

#acoes .acoes-lista {
	margin: 40px 0;
	list-style: none;
}

#acoes .acao {
	background: var(--laranja);
	color: #fff;
	border: 2px solid var(--amarelo);
	border-radius: 3px;
	margin: 10px;
	padding: 10px;
	display: block;
	width: 100%;
}

#acoes .acao:hover {
	background: rgba(255,255,255,0.03);
	transition: all 0.1s linear;
	transform: scale(1.05);
	box-shadow: 0 0 10px -2px rgba(0,0,0,0.2);
}

#acoes .nenhuma-acao {
	text-align: center;
}

@media only screen and (min-width: 480px) {

	#acoes .acoes-lista li {
		width: calc(50% - 20px);
		margin: 0 10px;
		display: inline-block;
		vertical-align: middle;
	}

}

@media only screen and (min-width: 1024px) {

	#acoes .acoes-lista li {
		width: calc((100% / 3) - 20px);
	}

}

/* ----- POPOVER DAS AÇÕES --------------------------------------------------------------------- */

.popover {
	border-radius: 10px;
	margin-top: 40px;
	margin-bottom: 40px;
	padding: 30px;
	width: calc(100% - 20px);
	max-height: calc(100% - 120px);
	left: 10px;
    top: 50%;
	text-align: left;
    transform: translateY(-50%);
	filter: drop-shadow(2px 2px 4px rgba(0,0,0,0.1));
}

.popover .popover-close {
	background: transparent;
	border: none;
	font-size: 40px;
	position: absolute;
	top: 10px;
	right: 20px;
}

.popover-subtitulo {
	margin-bottom: 1.5em;
	font-size: 24px;
	text-align: center;
}

.popover:-internal-popover-in-top-layer::backdrop {
	background-color: rgba(0,0,0,0.5);
}

/* barra de rolagem invisível */

.popover::-webkit-scrollbar {
	height: 1px;
	width: 1px;
}
.popover::-webkit-scrollbar-track {
	border-radius: 1px;
}

.popover::-webkit-scrollbar-track,
.popover::-webkit-scrollbar-track:hover,
.popover::-webkit-scrollbar-track:active,
.popover::-webkit-scrollbar-thumb,
.popover::-webkit-scrollbar-thumb:hover,
.popover::-webkit-scrollbar-thumb:active {
	background-color: transparent;
}

@media only screen and (min-width: 780px) {

	#hubs-grid .popover .hub-imagem {
		width: 400px;
		margin-left: 20px;
		float: right;
	}

}

@media only screen and (min-width: 1024px) {

	.popover {
		max-width: 1200px;
		max-height: calc(100% - 200px);
		left: 50%;
		transform: translateX(0) translateX(-50%);
		top: 50px;
		
	}

}

/* ----- NOTÍCIAS ------------------------------------------------------------------------------ */

#noticias {
	margin-top: 6em;
}

#noticias .noticias-titulo {
	text-align: center;
}

#noticias a:link,
#noticias a:visited {
	text-decoration: none;
}

#noticias .noticia-lista {
	margin: 0;
	list-style: none;
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
	align-items: start;
}

#noticias .noticia-titulo {
	font-size: 24px;
	font-weight: 600;
}

#noticias .noticia-data {
	color: #666;
	font-size: 12px;
}

#noticias img,
#noticias .noticia-resumo {
	display: none;
}


@media only screen and (min-width: 800px) {

	#noticias .noticia-lista {
		gap: 40px;
		grid-template-columns: repeat(2, 1fr);
	}

	#noticias .noticia-titulo {
		margin: 1em 0 0.5em;
	}

	#noticias .noticia-resumo {
		display: block;
	}

}

@media only screen and (min-width: 1024px) {

	#noticias .noticia-lista {
		grid-template-columns: repeat(4, 1fr);
	}

	#noticias img {
		border: 2px solid #fff;
		border-radius: 10px;
		width: 100%;
		height: auto;
		display: block;
		box-shadow: 2px 2px 5px -2px rgba(0, 0, 0, 0.2);
	}

}

#noticias .todas-as-noticias {
	background: var(--laranja);
	color: #fff;
	border: 2px solid var(--amarelo);
	border-radius: 3px;
	width: fit-content;
	margin: 10px auto;
	padding: 10px;
	display: block;
	line-height: 1;
	font-size: 18px;
	font-weight: 400;
	text-align: center;
	text-decoration: none;
}

#noticias .todas-as-noticias:hover {
	background: rgba(255,255,255,0.03);
	transition: all 0.1s linear;
	transform: scale(1.05);
	box-shadow: 0 0 10px -2px rgba(0,0,0,0.2);
}

.nenhuma-noticia {
	text-align: center;
}

/* ----- RODAPÉ ---------------------------------------------------------------------- */

#rodape {
	background: #FFF;
	color: var(--chumbo);
	margin: 80px 0 0;
	font-size: 14px;
	clear: both;
}

#rodape a:link,
#rodape a:visited {
	color: var(--chumbo);
	text-decoration: none;
}

#rodape a:hover,
#rodape a:active {
	text-decoration: underline;
}

#rodape .container {
	padding: 20px;
}

#prefeitura {
	margin: 40px 0;
	display: grid;
	gap: 40px;
	grid-template-columns: 1fr;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
}

#prefeitura .redes-sociais {
	line-height: 1.6;
}

#prefeitura .redes-sociais a {
	background-size: 20px 20px;
	background-repeat: no-repeat;
	background-position: center left;
	margin: 0;
	padding-left: 24px;
	display: inline-block;
}

#prefeitura .redes-sociais a[href*='facebook.com'] {
	background-image: url(https://src.cijun.sp.gov.br/img/icones-sociais/coloridos/facebook.svg);
}

#prefeitura .redes-sociais a[href*='instagram.com'] {
	background-image: url(https://src.cijun.sp.gov.br/img/icones-sociais/coloridos/instagram.svg);
}

#prefeitura .redes-sociais a[href*='tiktok.com'] {
	background-image: url(https://src.cijun.sp.gov.br/img/icones-sociais/coloridos/tiktok.svg);
}



#prefeitura .brasao {
	background-image: url(https://src.cijun.sp.gov.br/img/gestao-2025-2028/logotipos/logotipo-horizontal-700.png);
	background-size: 100% 100%;
	background-repeat: none;
	background-position: center center;
	aspect-ratio: 700/187;
	width: 250px;
	height: auto;
	margin: auto;
	text-indent: -1000000px;
}

#desenvolvido-por {
	color: var(--chumbo);
	border-top: none;
	padding: 20px 0 0;
	font-size: 12px;
	text-align: center;
}

@media only screen and (min-width: 600px) {

	#rodape {
		padding-bottom: 0;
	}

	#prefeitura {
		grid-template-columns: repeat(2, 1fr);
	}

}

/* ----- REDES SOCIAIS --------------------------------------------------------------- */

.icones-sociais {
	margin: 0 auto 20px;
	width: auto;
	display: table;
	list-style: none;
}

.icones-sociais li {
	display: table-cell;
	width: auto;
}

.icones-sociais a {
	margin: 5px;
	display: block;
	float: left;
	text-indent: -100000px;
	font-size: 0;
}

.icones-sociais .feed {
	background-position: 0 0;
	margin-left: 0;
}

.icones-sociais .facebook {
	background-position: 0 -50px;
}

.icones-sociais .instagram {
	background-position: 0 -100px;
}

.icones-sociais .youtube {
	background-position: 0 -150px;
}

.icones-sociais .flickr {
	background-position: 0 -200px;
}

.icones-sociais .twitter {
	background-position: 0 -250px;
}

.icones-sociais-flat-30x30-branco {
	height: 30px;
}

.icones-sociais-flat-30x30-branco a {
	background: url(//src.cijun.sp.gov.br/img/icones-sociais/icones-sociais-flat-30x30-branco.png) no-repeat;
	width: 30px;
	height: 30px;
}

/* ----- POP-UP DA LGPD ------------------------------------------------------------------------ */

#aviso-lgpd {
	background: #eee;
	border: 1px solid #ddd;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	width: 100%;
	max-width: 1100px;
	margin: auto;
	padding: 20px;
	display: block;
	position: fixed;
	bottom: 0;
	left: 50%;
    transform: translateX(-50%);
	z-index: 10000000000;
	font-size: 14px;
}

#aviso-lgpd span {
	display: inline-block;
}

#aviso-lgpd button {
	background: #444;
	color: #fff;
	border: none;
	border-radius: 3px;
	margin: 20px auto 0;
	padding: 10px 40px;
	display: block;
	text-transform: uppercase;
}

@media only screen and (min-width: 600px) {
	
	#aviso-lgpd span {
		width: calc(100% - 120px);
		float: left;
	}

	#aviso-lgpd button {
		float: right;
		margin: 0;
	}

}