/*
Theme Name:		Rotas Turísticas 2.0
Theme URI:		//rotasturisticas.jundiai.sp.gov.br/
Author:			CIJUN
Author URI:		//cijun.sp.gov.br/
Description:	Site das Rotas Turísticas de Jundiaí.
Version:		2.0
*/

/* ----- TABELA DE CORES DA GESTÃO --------------------------------------------------- */

:root {
	--azulgestao: #003371;
	--turquesa: #00a898;
	--verde: #70be43;
	--amarelo: #ffdd00;
	--laranja: #faa518;
	--magenta: #b41d8d;
	--ciano: #00b9f1;
	--azul: #0474bc;

	--vermelho: #ed1c24;
	--tooltip: #E1FE0A;
	--chumbo: #222222;
}

/* ----- 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 ----------------------------------------------------------- */

body, button, input, select, textarea {
	background: #fff;
	color: #333;
}

a:link,
a:visited {
	color: var(--azulgestao);
}

a:hover {
	color: var(--azul);
}

a:active,
a:focus,
button:focus {
	color: var(--vermelho);
	outline: 1px dotted #666;
	outline-offset: 1px;
}

h1 {
	margin: 0 0 1em;
}

h2 {
	margin: 1.5em 0 0.8em;
}

h3, h4, h5, h6 {
	margin: 0 0 0.5em;
}

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;
}

/* ----- TIPOGRAFIA ------------------------------------------------------------------ */

html, body, button, input, select, textarea {
	font-size: 16px;
	font-family: 'Open Sans', sans-serif;
}

body {
	line-height: 1.4;
	overflow-wrap: break-word;
	word-wrap: break-word;
}

b, strong {
	font-weight: 600;
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.2;
	font-weight: 600;
}

h1 {
	font-size:  28px;
}

h2 {
	font-size: 22px;
}

h3 {
	font-size: 20px;
}

h4 {
	font-size: 18px;
}

h5 {
	font-size: 16px;
}

h6 {
	font-size: 16px;
}

@media only screen and (min-width: 1024px) {

	h1 {
		font-size: 32px;
	}

	h2 {
		font-size: 26px;
	}

	h3 {
		font-size: 24px;
	}

	h4 {
		font-size: 22px;
	}

	h5 {
		font-size: 18px;
	}

}

/* ----- 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;
}

/* separador */

hr {
	background: #ccc;
	color: #ccc;
	border: none;
	margin: 2em auto;
	height: 1px;
}

.wp-block-separator {
	background: #eee;
	border: none;
	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;
}

/* 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;
	}

}

/* ----- FORMULÁRIOS ----------------------------------------------------------------- */

input[type="text"],
input[type="email"],
input[type="url"],
input[type="date"],
input[type="number"],
input[type="tel"],
input[type="password"],
textarea,
select {
	border: 1px solid #BBB;
	border-radius: 2px;
	padding: 5px;
	max-width: 100%;
}

input[type="file"] {
	margin-top: 0.5em;
}

input[type="submit"] {
	background: #ccc;
	background: linear-gradient(to bottom, #cccccc 0%, #aaaaaa 100%);
	color: #000;
	border: 1px solid #bbb;
	border-radius: 3px;
	padding: 10px 15px;
}

input[type="submit"]:hover {
	background: #aaa;
	background: linear-gradient(to bottom, #aaaaaa 0%, #cccccc 100%);
}

/* Plugin Contact Form 7 */

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="number"],
.wpcf7-form input[type="range"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="password"],
.wpcf7-form select,
.wpcf7-form textarea {
	width: 100%;
}

.wpcf7-form input[type="date"] {
	width: 200px;
}

.wpcf7-form .wpcf7-quiz-label,
.wpcf7-form .wpcf7-list-item {
	display: block;
}

.wpcf7-form .wpcf7-list-item {
	margin: 0.3em 0;
}

input[type="submit"] {
	margin: auto;
	padding: 10px 30px;
	display: block;
}


/* ----- ACESSIBILIDADE -------------------------------------------------------------- */

/* //make.wordpress.org/accessibility/handbook/markup/the-css-class-screen-reader-text/ */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

#acessibilidade {
	position: absolute;
	left: -10000px;
	top: -10000px;
}

#acessibilidade-navegacao {
	list-style: none;
}

/* ----- CABEÇALHO ------------------------------------------------------------------- */

#header {
	background: var(--chumbo);
	color: #fff;
	padding-top: 10px;
	padding-bottom: 10px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 9999;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
}

#header .container {
	padding: 0;
	display: grid;
	gap: 0;
	align-content: stretch;
	align-items: stretch;
	justify-content: stretch;
	justify-items: stretch;
}

.home #header .container {
	grid-template-areas: "titulo";
}

#header .container {
	grid-template-areas: "titulo busca";
}

#header a:link,
#header a:visited {
	color: #fff;
	text-decoration: none;
}

/* cabeçalho dos ambientes internos */

#header.rota {
	position: sticky;
}

.home #header.rota .container,
#header.rota .container {
	grid-template-columns: 1fr 1fr;
	grid-template-areas: "menu busca";
}

@media only screen and (min-width: 1024px) {

	#header .container,
	.home #header.rota .container,
	#header.rota .container {
		padding-left: 20px;
		padding-right: 20px;
		gap: 40px;
		grid-template-columns: 1fr 250px;
	}
	
	#header.rota .container {
		padding-top: 0;
		padding-bottom: 0;
	}

	.home #header .container {
		grid-template-columns: 1fr;
	}

}

@media only screen and (min-width: 1340px) {

	#header .container,
	.home #header.rota .container,
	#header.rota .container {
		padding-left: 0;
		padding-right: 0;
	}
	
}

/* ----- LOGOTIPO/NOME DO SITE ------------------------------------------------------- */

/* título no cabeçalho - ambiente principal */

#site-titulo {
	width: 100%;
	margin: 20px auto;
	padding: 0 20px;
	display: block;
	grid-area: titulo;
}

.home #site-titulo {
	text-align: center;
}

#site-titulo .titulo {
	line-height: 1;
	font-size: 26px;
	font-weight: 800;
	text-transform: uppercase;
}

#site-titulo .subtitulo {
	margin-top: 0.5em;
	line-height: 1.2;
	font-size: 18px;
	font-style: italic;
}

/* logo no cabeçalho - ambientes internos */

#rota-titulo a {
	background-position: center top;
	background-repeat: no-repeat;
	background-size: auto 100%;
	width: 150px;
	height: 120px;
	margin: 20px auto;
	display: block;
	text-indent: -100000px;
	filter: drop-shadow(1px 1px 1px #00000055);
}

.home #rota-titulo {
    width: 100%;
	position: absolute;
    z-index: 999;
}

.home #rota-titulo a {
	margin: 0;
	width: 50%;
	height: 80%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

@media only screen and (min-width: 700px) {

	.home #rota-titulo a {
		width: 250px;
		height: 180px;
	}

}

@media only screen and (min-width: 1024px) {

	#site-titulo {
		margin: 40px auto;
		padding: 0;
		text-align: left;
	}

	#site-titulo .titulo {
		font-size: 36px;
	}

	#site-titulo .subtitulo {
		font-size: 22px;
	}

	/* logotipo no canto direito nas páginas internas */
	#rota-titulo:not(.home #rota-titulo) {
		margin: 40px auto 0;
		max-width: 1300px;
		padding-right: 20px;
	}

	#rota-titulo a:not(.home #rota-titulo a) {
		float: right;
	}

}

/* ----- AMBIENTES DE HOMOLOGAÇÃO E LOCAL -------------------------------------------- */

#header.local:before,
#header.staging:before {
	color: #fff;
	border-radius: 5px 5px 0 0;
	padding: 10px;
	position: fixed;
	left: 10px;
	bottom: 0;
	z-index: 1000000000000;
	font-size: 11px;
	text-align: center;
	font-weight: 600;
}

#header.local:before {
	content: " WORDPRESS LOCAL ";
	background: #00000090;
}

#header.staging:before {
	content: " AMBIENTE DE TESTES ";
	background: var(--vermelho);	
}

/* ----- MENU PRINCIPAL -------------------------------------------------------------- */

#conteudo-menu {
	width: 100%;
	grid-area: menu;
	align-self: center;
	justify-self: stretch;
}

/* botão */
#menu-botao {
	background: transparent;
	color: #fff;
	border: none;
	line-height: 1;
	margin-left: 10px;
}

#menu-botao .hamburguer {
	font-size: 28px;
}

#menu-botao span {
	display: inline-block;
	vertical-align: middle;
}

/* container */
#menu-header {
	background-color: var(--chumbo);
	border-bottom: 5px solid #eee;
	width: 100%;
	max-height: 80vh;
	display: none;
	overflow-y: auto;
	position: absolute;
	top: 50px;
	left: 0;
	z-index: 20;
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
}

/* primeiro nível */
#menu-principal {
	margin: 0;
	list-style: none;
}

#menu-principal li {
	border-bottom: 1px solid #fff;
	margin: 0;
	padding: 0;
}

#menu-principal li,
#menu-principal .sub-menu {
 	border-color: #fff;
}

#menu-principal a:link,
#menu-principal a:visited {
	color: #fff;
	margin: 0;
	padding: 10px;
	display: block;
	text-decoration: none;
}

#menu-principal a:hover {
	background-color: #fff;
	color: #000;
}

/* segundo nível */
#menu-principal .sub-menu {
	border-top: 1px solid #fff;
	margin: 0;
	list-style: none;
}

#menu-principal .sub-menu a:link,
#menu-principal .sub-menu a:visited {
	padding-left: 30px;
}

#menu-principal .sub-menu li:last-of-type {
	border: none;
}

/* terceiro nível */
#menu-principal .sub-menu .sub-menu {
	display: none;
}

@media only screen and (min-width: 1024px) {

	#menu-botao {
		display: none;
	}

	#menu-header {
		background: none;
		border: none;
		position: static;
		display: block;
		box-shadow: none;
	}
	
	#menu-principal li {
		border-color: #eee;
	}

	#menu-principal > li {
		display: inline-block;
		float: left;
	}
	
	#menu-principal > li,
	#menu-principal > .sub-menu {
		border: none;
	}

	#menu-principal > li.menu-item-has-children:hover > a,
	#menu-principal > li > a:hover {
		border-radius: 5px;
	}

	/* setas para indicar que o item tem sub-itens */
	#menu-principal > li.menu-item-has-children > a:after {
		content: ' \0020 ';
		background-image: url(//src.cijun.sp.gov.br/img/media/filled-version/SVG/97-arrows/arrow-down-12.svg);
		background-repeat: no-repeat;
		background-position: bottom center;
		background-size: 12px 12px;
		width: 16px;
		height: 16px;
		margin-left: 5px;
		display: inline-block;
		float: right;
		filter: invert(100%);
	}

	#menu-principal > li.menu-item-has-children > a:hover:after,
	#menu-principal > li.menu-item-has-children:hover > a:after {
		filter: invert(0);
	}
	
	#menu-principal > li.menu-item-has-children:hover > a,
	#menu-principal > li.menu-item-has-children > a:hover {
		background-color: #fff;
		color: var(--chumbo);
		border-bottom-right-radius: 0;
		border-bottom-left-radius: 0;
	}

	/* segundo nível */
	#menu-principal li ul {
		background: #fff;
		border-bottom: 5px solid #fff;
		width: 350px;
		margin: 0 !important;
		position: absolute;
		left: -999em;
		z-index: 9999;
		box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
	}

	#menu-principal .sub-menu a:link,
	#menu-principal .sub-menu a:visited {
		color: var(--chumbo);
		padding-left: 10px;
	}

	#menu-principal .sub-menu a:hover {
		color: #fff;
	}

	/* comportamento do segundo nível */
	#menu-principal li:hover ul ul, #menu-principal li:hover ul ul ul, #menu-principal li.sfhover ul ul, #menu-principal li.sfhover ul ul ul {
		left: -999em;
	}
	#menu-principal li:hover ul, #menu-principal li li:hover ul, #menu-principal li li li:hover ul,
	#menu-principal li.sfhover ul, #menu-principal li li.sfhover ul, #menu-principal li li li.sfhover ul {
		left: auto;
	}
	#menu-principal li:hover, #menu-principal li.sfhover {
		position: static;
	}

}

/* ----- BUSCA ----------------------------------------------------------------------- */

#conteudo-busca {
	width: 100%;
	grid-area: busca;
	align-self: start;
	justify-self: stretch;
	text-align: right;
}

#busca-botao {
	background: transparent;
	color: #fff;
	border: none;
	margin-right: 10px;
	line-height: 1;
	text-decoration: none;
}

#busca-botao .lupa {
	background: url(//src.cijun.sp.gov.br/img/icones-busca/buscar-branco.svg) no-repeat center center/20px 20px;
	width: 20px;
	height: 20px;
}

#busca-botao span {
	display: inline-block;
	vertical-align: middle;
}

#busca {
	background-color: var(--chumbo);
	width: 100%;
	padding: 20px 10px;
	display: none;
	position: absolute;
	top: 85px;
	right: 0;
	z-index: 30;
}

#header.rota #busca {
	top: 40px;
}

#busca .busca-texto {
	width: 85%;
	border-right: none;
	border-radius: 3px 0 0 3px;
	display: inline-block;
}

#busca .busca-botao {
	background: #fff url(//src.cijun.sp.gov.br/img/icones-busca/buscar-cinza.svg) no-repeat center center/20px 20px;
	color: transparent;
	border-left: none;
	border-radius: 0 3px 3px 0;
	width: 15%;
	padding: 5px;
	display: inline-block;
}

@media only screen and (min-width: 1024px) {

	#busca-botao {
		display: none;
	}

	#busca {
		margin-top: 3px;
		padding: 0;
		display: block;
		position: static;
	}

	#header.principal #busca {
		margin-top: 20px;
	}


}

/* ----- SLIDESHOW DA HOME ------------------------------------------------------ */

#slideshow-home {
	width: 100%;
	position: relative;
	overflow: hidden;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
}

#slider {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	overflow: hidden;
	list-style: none;
}

#slider li {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	height: 100%;
	display: none;
	position: absolute;
	left: 0;
	top: 0;
	overflow: hidden;
	-webkit-backface-visibility: hidden;
}

#slider li:first-child {
	display: block;
	position: relative;
	float: left;
}

#slider .slide-titulo {
	display: none;
}

#slider a {
	border: 0;
	width: 100%;
	height: 100%;
	display: block;
	text-decoration: none;
}

.rslides_tabs {
	width: 100%;
	margin: 0;
	padding: 10px 0;
	list-style: none;
	position: absolute;
	left: 10px;
	bottom: 10px;
	z-index: 1000;
	font-size: 14px;
}

.rslides_tabs li:first-child {
	margin-left: 0;
}

.rslides_tabs li {
	margin-right: 1px;
	display: inline;
	float: none;
}

.rslides_tabs a {
	background: #fff;
	color: #000;
	width: auto;
	height: auto;
	padding: 3px 8px;
	margin: 5px;
	display: inline;
	text-decoration: none;
	opacity: 0.5;
}

.rslides_tabs .rslides_here a {
	opacity: 0.8;
}

@media only screen and (min-width: 1024px) {

	#slider .slide-titulo {
		background: #fff;
		color: #000;
		margin: 15px 10px;
		padding: 10px;
		display: inline-block;
		line-height: 1;
		opacity: 0.8;
	}
	
}


/* ----- PÁGINA INICIAL -------------------------------------------------------------- */

.bloco-home {
	padding: 40px 20px;
}

.bloco-home h2 {
	margin: 0 0 1em;
	text-align: center;
}

.conteudo-home {
	margin-top: 60px;
	margin-bottom: 60px;
}

@media only screen and (min-width: 1340px) {

	.bloco-home {
		padding: 60px 0;
	}

}

/* ----- BUSCA DA HOME --------------------------------------------------------------- */

#busca-home {}

#busca-home #busca {
	background-color: transparent;
	display: block;
	position: static;
}

@media only screen and (min-width: 1024px) {

	#busca-home .busca-texto {
		border-radius: 5px 0 0 5px;
		width: 90%;
		padding: 10px;
		font-size: 22px;
	}

	#busca-home .busca-botao {
		background-size: 28px 28px;
		width: 10%;
	    padding: 16px 5px 12px;
	}

}

/* ----- LISTA DE ROTAS DA HOME (AMBIENTE PRINCIPAL) --------------------------------- */

#rotas-home {}

#rotas-home .lista-rotas {
	max-width: 1000px;
	margin: 40px auto;
	list-style: none;
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(2, 1fr);
}

#rotas-home .lista-rotas li {
	text-align: center;
}

#rotas-home .lista-rotas a {
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center center;
	width: 100%;
	aspect-ratio: 13 / 12; /* os logos tem 260px x 240px */
	margin: 0 auto;
	display: block;
	text-indent: -100000px;
}

#rotas-home .lista-rotas .afro a {
	background-image: url(images/rota-afro.png);
}

#rotas-home .lista-rotas .brincar a {
	background-image: url(images/rota-do-brincar.png);
}

#rotas-home .lista-rotas .castanho a {
	background-image: url(images/rota-do-castanho.png);
}

#rotas-home .lista-rotas .centrohistorico a {
	background-image: url(images/rota-do-centro-historico.png);
}

#rotas-home .lista-rotas .cervejaartesanal a {
	background-image: url(images/rota-da-cerveja-artesanal.png);
}

#rotas-home .lista-rotas .culturaitaliana a {
	background-image: url(images/rota-da-cultura-italiana.png);
}

#rotas-home .lista-rotas .sabores a {
	background-image: url(images/rota-dos-sabores.png);
}

#rotas-home .lista-rotas .terranova a {
	background-image: url(images/rota-da-terra-nova.png);
}

#rotas-home .lista-rotas .uva a {
	background-image: url(images/rota-da-uva.png);
}

#rotas-home .lista-rotas .vinho a {
	background-image: url(images/rota-do-vinho.png);
}

@media only screen and (min-width: 600px) {

	#rotas-home .lista-rotas {
		grid-template-columns: repeat(3, 1fr);
	}

}

@media only screen and (min-width: 800px) {

	#rotas-home .lista-rotas {
		grid-template-columns: repeat(5, 1fr);
	}

}

@media only screen and (min-width: 1024px) {

	#rotas-home .lista-rotas {
		gap: 60px;
	}

}

/* ----- ATRAÇÕES E PÁGINAS ESPECIAIS ------------------------------------------------ */

#atracoes-home {}

#menu-atracoes {
	width: 100%;
	margin: 4em auto 2em;
	list-style: none;
	display: grid;
	gap: 40px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

#atracoes-home #menu-atracoes {
	margin-top: 0;
	max-width: 900px;
}	
	
#menu-atracoes li {
	width: 100%;
}

#menu-atracoes li a {
	color: #000;
	display: block;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	transition: all .2s ease-in-out;
}

#menu-atracoes li a:hover {
	transform: scale(1.1);
}

#menu-atracoes img {
	border-radius: 50%;
	width: 100px;
	aspect-ratio: 1 / 1;
	margin: 0 auto 20px;
}

@media only screen and (min-width: 600px) {

	#menu-atracoes {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	/* home */
	#atracoes-home #menu-atracoes {
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-around;
	}

}

@media only screen and (min-width: 800px) {

	#menu-atracoes {
		margin: 4em auto;
		grid-template-columns: repeat(6, minmax(0, 1fr));
		
	}

	#menu-atracoes img {
		width: 150px;
	}

}


@media only screen and (min-width: 1024px) {

	#menu-atracoes {
		grid-template-columns: repeat(8, minmax(0, 1fr));
		
	}

	#menu-atracoes li {
		font-size: 14px;
	}

}


/* ----- VÍDEO DA HOME --------------------------------------------------------------- */

#video-home {
	background: var(--chumbo);
}

#video-home iframe {
	width: 100%;
	margin: 0;
	display: block;	
}


/* ----- MAPA DA HOME (AMBIENTES INTERNOS DAS ROTAS) --------------------------------- */

#mapa-home {
	background: #eee;
}

#mapa-home .container {
	padding: 0;
}

#mapa-home iframe {
	width: 100%;
	max-width: 100%;
	margin: 0;
	display: block;
}

/* ----- CONTEÚDO -------------------------------------------------------------------- */

.pagina-interna {
	margin-top: 2em;
	margin-bottom: 4em;
}

#breadcrumb {
	color: #666;
	margin-bottom: 3em;
	font-size: 14px;
}

.sharethis-inline-share-buttons {
	margin: 6em 0 3em;
}

/* aviso de que a página é um rascunho */

#rascunho {
	background: var(--tooltip);
	color: #000;
	margin: 2em 0;
	padding: 20px;
	text-align: center;
}

/*  lista de sub-páginas normal */

#sub-paginas,
ul.sitemap {
	margin: 0;
	list-style: none;
}

#sub-paginas {
	margin-top: 3em;
}

#sub-paginas > li:before  {
	content: "» \00a0";
}

/* mapa do site */

ul.sitemap li {
	margin-bottom: 0.5em;
}

ul.sitemap ul.children {
	margin: 0.5em 0 0.5em 1em;
	list-style: none;
}

@media only screen and (min-width: 1024px) {

	.pagina-interna {
		margin-top: 4em;
	}

}

/* altura mínima das páginas internas */

.pagina-inicial,
.pagina-interna {
	min-height: 400px;
}

@media only screen and (min-height: 800px) {

	.pagina-inicial,
	.pagina-interna {
		min-height: 590px;
	}

}

@media only screen and (min-height: 1080px) {

	.pagina-inicial,
	.pagina-interna {
		min-height: 700px;
	}

}

/* ----- LOCAIS ----------------------------------------------------------------- */

.local-imagem {
	width: 100%;
	height: auto;
}

.local-dados {
	border-bottom: 1px solid #eee;
	margin-bottom: 2em;
	padding-bottom: 2em;
	line-height: 2;
}

.local-dados .comodidades {
	margin: 2em auto 4em;
}

.local-dados .comodidades .comodidade {
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 16px 16px;
	display: inline-block;
	margin-right: 1em;
	height: 16px;
	vertical-align: middle;
	padding-left: 20px;
	line-height: 16px;
	font-size: 14px;
}

.local-dados .comodidade-wifi {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/wifi.svg);
}

.local-dados .comodidade-animais {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/animais.svg);
}

.local-dados .comodidade-acessibilidade {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/acessibilidade.svg);
}

.local-dados .comodidade-banheiro-acessivel {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/banheiro-acessivel.svg);
}

.local-dados .comodidade-fraldario {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/fraldario.svg);
}

.local-dados .comodidade-reservas {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/reservas.svg);
}

.local-dados .comodidade-grupos {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/grupos.svg);
}

.local-dados .comodidade-agendamento {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/agendamento.svg);
}

.local-dados .comodidade-pavimentado {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/pavimentado.svg);
}

.local-dados .comodidade-estac-auto {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/estac-auto.svg);
}

.local-dados .comodidade-estac-onibus {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/estac-onibus.svg);
}

.local-dados .comodidade-dinheiro {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/dinheiro.svg);
}

.local-dados .comodidade-debito {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/debito.svg);
}

.local-dados .comodidade-credito {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/credito.svg);
}

.local-dados .links-sociais {
	width: fit-content;
	margin: auto;
	display: table;
}

.local-dados .link-social {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	width: 36px;
	height: 36px;
	margin: 0 10px;
	display: inline-block;
	text-indent: -10000px;
}

.local-dados .link-mapa {
	background-image: url(//src.cijun.sp.gov.br/img/icones-turismo/mapa.svg);
	width: 40px;
	height: 40px;
}

.local-dados .link-whatsapp {
	background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-whatsapp.svg);
}

.local-dados .link-instagram {
	background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-instagram.svg);
}

.local-dados .link-facebook {
	background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-facebook.svg);
}

.local-dados .link-site {
	background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-preto-web.svg);
}

@media only screen and (min-width: 600px) {

	.local-dados .links-sociais {
		margin: 1em 0 0;
	}

	.local-dados .link-social {
		margin: 0 20px 0 0;
	}

}

@media only screen and (min-width: 1024px) {

	.local-dados .comodidades {
		line-height: 1.5;
	}

}

@media only screen and (min-width: 1220px) {

	.local-dados .link-social {
		width: 24px;
		height: 24px;
		margin-right: 10px;
	}

	.local-dados .link-mapa {
		width: 28px;
		height: 28px;
	}

}

/* ----- LISTA DE NOTÍCIAS ----------------------------------------------------------- */

.noticias-lista {
	margin: 0;
	list-style: none;
}

.noticias-lista a:link,
.noticias-lista a:visited {
	text-decoration: none;
}

.noticias-lista a:hover {
	color: var(--azulgestao);
	text-decoration: underline;
}

.noticias-lista .noticia-data {
	color: #666;
	display: inline-block;
	font-size: 13px;
}

.noticias-lista .noticia-titulo {
	margin-bottom: 0.3em;
	line-height: 1.3;
	font-size: 18px;
	font-weight: 600;
}

.noticias-lista .noticia-foto {
	background-color: #eee;
	background-position: center center;
	background-size: cover;
	margin-bottom: 1em;
	width: 100%;
	height: 250px;
}

.nenhuma-noticia {
	text-align: center;
}

.pagina-inicial .saiba-mais {
    background: var(--chumbo);
    color: #fff;
	border-radius: 3px;
	width: fit-content;
	max-width: 250px;
    padding: 5px 8px;
    display: inline-block;
    float: right;
    clear: both;
    font-size: 14px;
	font-weight: 600;
	text-align: center;
    text-decoration: none;
    text-transform: uppercase;
}

/* front-page.php ou a função cijun_noticias_home() */

.pagina-inicial .noticias-lista .noticia-item {
	width: 100%;
}

.pagina-inicial .noticias-lista {
	margin-bottom: 2em;
	display: grid;
	gap: 30px;
	grid-template-columns: 1fr;
	align-content: center;
    justify-items: center;
}

@media only screen and (min-width: 740px) {

	.pagina-inicial .noticias-lista {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

}

@media only screen and (min-width: 1024px) {

	.pagina-inicial .noticias-lista {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

}

/* ----- RESULTADO DE BUSCA ---------------------------------------------------------- */

.search .noticias-lista {
	border-bottom: 1px solid #eee;
}

.search .noticias-lista .noticia-item {
	margin-bottom: 2em;
}

.search .busca-404 {
	margin-bottom: 2em;
	font-style: italic;
}

/* ----- PAGINAÇÃO ------------------------------------------------------------------- */

#paginacao {
	height: fit-content;
	margin: 3em auto;
	clear: both;
	display: table;
	line-height: 1;
	text-align: center;
}

#paginacao .nav {
	display: table;
	margin: auto;
}

#paginacao span,
#paginacao a {
	padding: 8px;
	display: block;
	font-weight: 600;
	text-decoration: none;
}

#paginacao .nav a,
#paginacao .current {
	float: left;
}

#paginacao a:hover {
	background: var(--chumbo);
	color: #fff;
	border-radius: 3px;
	text-decoration: none;
}

#paginacao .current {
	background: none;
	color: #666;
}

#paginacao .label {
	padding: 10px;
	font-size: 14px;
	font-weight: normal;
}

#paginacao .page {
	color: #666;
	padding: 10px;
}

@media only screen and (min-width: 800px) {

	#paginacao .label,
	#paginacao .nav {
		float: left;
		margin: 0;
	}

}

/* ----- ERRO 404 -------------------------------------------------------------------- */

.erro404-titulo,
.erro404-texto {
	text-align: center;
}

.erro404-titulo {
	margin: 50px 0 !important;
}

/* ----- REDES SOCIAIS --------------------------------------------------------------- */

#redes-sociais-home {
	background: #000;
	color: #fff;
	padding-top: 40px;
	padding-bottom: 30px;
	font-size: 14px;
	text-align: center;
}

#redes-sociais-home .container {
	max-width: 900px;
	padding: 0;
	display: grid;
	gap: 40px;
	grid-template-columns: 1fr;
}

.menu-social-container {
	margin: 10px auto;
	width: max-content;
}

.menu-social {
	margin: 0 auto;
	display: table;
	list-style: none;
	text-align: center;
}

#rodape .menu-social {
	margin-bottom: 40px;
}

.menu-social-home .menu-social {
	margin-top: 40px;
}

.menu-social li {
	display: inline-block;
}

/* não mostra sub-itens */
.menu-social .sub-menu {
	display: none;
}

.menu-social a {
	background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-web.svg);
	background-position: center center;
	background-size: 100% 100%;
	background-repeat: no-repeat;
	width: 30px;
	height: 30px;
	margin: 5px;
	display: block;
	text-indent: -10000px;
}

.menu-social-home .menu-social a {
	width: 60px;
	height: 60px;
}

.menu-social a[href*="/feed/"] {
	background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-feed.svg);
}

.menu-social a[href*="facebook.com"],
.menu-social a[href*="fb.com"] {
	background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-facebook.svg);
}

.menu-social a[href*="instagram.com"] {
	background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-instagram.svg);
}

.menu-social a[href*="youtube.com"],
.menu-social a[href*="yt.be"] {
	background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-youtube.svg);
}

.menu-social a[href*="flickr.com"] {
	background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-flickr.svg);
}

.menu-social a[href*="twitter.com"] {
	background-image: url(//src.cijun.sp.gov.br/img/icones-sociais/icone-branco-twitter.svg);
}

@media only screen and (min-width: 800px) {

	#redes-sociais-home {
		font-size: 16px;
	}

	#redes-sociais-home .container {
		display: flex;
		flex-flow: row nowrap;
		align-items: stretch;
		align-content: stretch;
		justify-content: space-around;
	}

}

/* ----- RODAPÉ ---------------------------------------------------------------------- */

#rodape {
	background: var(--chumbo);
	color: #fff;
	margin-top: 0;
	padding: 20px 0 50px;
	position: relative;
	text-align: center;
}

#rodape a:link,
#rodape a:visited {
	color: #fff;
	text-decoration: none;
}

#rodape a:hover {
	text-decoration: underline;
}

#rodape .container {
	margin-top: 20px;
	margin-bottom: 40px;
	display: grid;
	gap: 30px;
	grid-template-columns: 1fr;
	grid-template-areas: "info" "sitemap" "links";
}

#rodape .rodape-rotas {
	grid-area: sitemap;
}

#rodape .rodape-rotas .lista-sites {
	list-style: none;
}

#rodape .rodape-info {
	grid-area: info;
	align-self: center;
}

#rodape .widget-titulo {
	margin-bottom: 0.5em;
	font-size: 18px;
	font-weight: 600;
}

#desenvolvido-por,
#privacidade {
	margin-top: 15px;
	font-size: 13px;
	text-align: center;
	line-height: 1.5;
}

#desenvolvido-por span,
#privacidade .privacy-policy-link {
	display: block;
}

#privacidade .termos-de-uso:before {
	content: ' | ';
}

#privacidade .termos-de-uso,
#privacidade .politica-de-cookies {
	display: none;
}

#botao-topo {
	background-color: #fff;
	color: #fff;
	border-radius: 8px 8px 0 0;
	padding: 5px 15px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {

	#desenvolvido-por {
		line-height: 1;
	}
	
	#desenvolvido-por span,
	#privacidade .privacy-policy-link {
		display: inline-block;
	}

	#desenvolvido-por .desenvolvido-por-cijun:before,
	#privacidade .politica-de-cookies:before {
		content: ' | ';
	}

}

@media only screen and (min-width: 800px) {

	#rodape .container {
		margin-top: 40px;
		margin-bottom: 60px;
		grid-template-columns: 350px 1fr;
		grid-template-areas: "sitemap info" "links links";
	}

	#rodape .rodape-rotas .lista-sites {
		text-align: left;
	}

	#desenvolvido-por,
	#privacidade {
		display: inline-block;
	}

	#privacidade:before {
		content: ' | ';
	}

}

@media only screen and (min-width: 1024px) {

	#rodape .container {
		align-items: start;
		align-content: start;
	}

}

/* ----- LOGOTIPOS DO RODAPÉ --------------------------------------------------------- */

.rodape-links {
	max-width: 400px;
	margin: auto;
	grid-area: links;
	display: grid;
	/* LEI ELEITORAL 2024 */
	/* gap: 40px; */
	grid-template-columns: repeat(2, 1fr);

	gap: 40px 10px;
	margin-bottom: 40px;
}

.brasao,
.logotipo-turismo,
.logotipo-comtur,
.logotipo-circuito {
	margin: 0 auto;
	display: block;
	width: 120px;
	align-self: center;
	justify-self: stretch;
	text-indent: -100000px;
}

.brasao {
	/* LEI ELEITORAL 2024 */
	/* background: url(//src.cijun.sp.gov.br/img/gestao-2017-2024/logo-gestao-negativo-400x385.png) no-repeat top center/100% 100%;  */
	/* height: 116px; */

	background: url(//src.cijun.sp.gov.br/img/brasao/brasao-lei-eleitoral-250x70-negativo.png) no-repeat top center/100% 100%;
	aspect-ratio: 250/70;
	width: auto;
	height: 50px;
}

.logotipo-turismo {
	background: url(images/logo-turismo-novo.png) no-repeat top center/100% 100%;
	height: 120px;
}

.logotipo-circuito {
	background: url(images/logo-circuito-das-frutas.png) no-repeat top center/100% 100%;
	height: 87px;
}

.logotipo-comtur {
	background: url(images/logo-comtur.png) no-repeat top center/100% 100%;
	height: 53px;	
}

@media only screen and (min-width: 800px) {

	.rodape-links {
		max-width: 1100px;
		align-self: start;
		justify-self: stretch;
		gap: 40px;
		grid-template-columns: repeat(4, 1fr);
	}

}

@media only screen and (min-width: 1024px) {

	.brasao {
		/* LEI ELEITORAL 2024 */
		/* width: 150px; */
		/* height: 144px; */
		height: 80px;
	}

	.logotipo-turismo {
		width: 150px;
		height: 150px;
	}

	.logotipo-circuito {
		width: 160px;
		height: 117px;
	}

	.logotipo-comtur {
		width: 160px;
		height: 70px;	
	}

}

/* ----- 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;
	}

}

/* ----- IMPRESSÃO ------------------------------------------------------------------- */

.print {
	display: none;
}

@media print {

	.print {
		display: block;
	}

	.privacy-policy-link, /* política de privacidade */
	.ht-skip, /* hand talk */
	.no-print {
		display: none !important;
	}

	.url {
		margin-bottom: 1em;
		text-align: left;
	}

	#header-impresso {
		height: auto;
		margin-bottom: 0.5em;
		font-size: 18px;
		text-align: center;
	}

	#main {
		margin-top: 0;
	}

}