/* =========================================
   HOME — estrutura geral
========================================= */
/* Remove bloco meta (compartilhamento) */
article#post-613 .meta_header.clearfix {
	display: none !important;
	height: 0 !important;
}

/* Organização vertical */
article#post-613 .content.clearfix {
	display: flex !important;
	flex-direction: column !important;
}

/* Ordem dos blocos */
article#post-613 #slideshowenv ~ div[style*="text-align: center"] {
	order: 1;
}

article#post-613 #slideshowenv {
	order: 2;
	margin-top: 40px;
}

article#post-613 .lista-posts-padrao {
	order: 3;
}

article#post-613 .content.clearfix h2,
article#post-613 .content.clearfix h3 {
	order: 4;
}

/* =========================
   Acesso rápido - cards
========================= */
.acesso-rapido-home {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: flex-start;
}

/* mata elementos extras inseridos pelo editor */
.acesso-rapido-home > br {
	display: none !important;
}

.acesso-rapido-home > p {
	display: contents !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* cards */
.acesso-rapido-home .card-acesso {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 150px;
	height: 130px;
	padding: 12px;
	background: #f4f7fb;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
	margin: 4px;
}

.acesso-rapido-home .card-acesso img {
	display: block;
	width: 50px;
	height: 50px;
	margin: -18px 0 -12px 0;
	object-fit: contain;
}

.acesso-rapido-home .card-acesso {
	line-height: 1.2;
	color: #2f5db3;
}

.acesso-rapido-home .card-acesso span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 36px;
	color: #2f5db3;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
}

.acesso-rapido-home .card-acesso:hover {
	background: #e9f1fa;
}

.lista-posts-padrao .csc_post {
	position: relative;
}

.lista-posts-padrao .csc_post a.csc_post_title {
	position: absolute;
	z-index: 2;
	text-indent: -9999px; /* esconde duplicação */
}

/* =========================================
   CARROSSEL
========================================= */
/* Estrutura base */
article#post-613 #slideshowenv,
article#post-613 #slideshow,
article#post-613 #slideshow .item {
	height: auto !important;
	min-height: 0 !important;
	overflow: visible !important;
}

/* Imagem responsiva */
article#post-613 #slideshow img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	object-fit: unset !important;
}

/* =========================================
   TÍTULO DO CARROSSEL
========================================= */
/* Desktop */
article#post-613 #slideshow .text,
article#post-613 #slideshow .text * {
	font-family: 'Open Sans', sans-serif !important;
	font-weight: 700 !important;
	font-size: 30px !important;
	line-height: 1.1 !important;
	letter-spacing: -1.5px !important;
	color: #333333 !important;
}

/* Aproxima da imagem */
article#post-613 #slideshow .text {
	margin-top: -50px !important;
}

/* =========================================
   MOBILE — CARROSSEL
========================================= */
@media (max-width: 768px) {

	article#post-613 #slideshow .text {
		display: block !important;
		height: auto !important;
		max-height: none !important;
		overflow: visible !important;
		margin-top: -40px !important; /* aproxima */
		padding-bottom: 18px !important; /* evita corte na linha */
	}

	article#post-613 #slideshow .text,
	article#post-613 #slideshow .text * {
		font-family: 'Open Sans', sans-serif !important;
		font-weight: 700 !important;
		font-size: 25px !important;
		line-height: 26px !important;
		letter-spacing: -1.25px !important;
		color: #333333 !important;
	}

	/* Garante que nada corte o texto */
	article#post-613 #slideshow .text h1,
	article#post-613 #slideshow .text h2,
	article#post-613 #slideshow .text a {
		display: block !important;
		overflow: visible !important;
	}

}

/* =========================================
   LISTA DE POSTS - HOME
========================================= */
/* separa carrossel da lista só na home */
article#post-613 .lista-posts-padrao {
	margin-top: 40px !important;
	padding-top: 50px !important;
	border-top: 3px solid #2f5db3 !important;
}

/* remove thumbnail só na home */
article#post-613 .lista-posts-padrao .csc_post_thumbnail {
	display: none !important;
}

/* cada post */
.lista-posts-padrao .csc_post {
	position: relative;
	margin-bottom: 30px !important;
	padding-bottom: 42px !important;
	border-bottom: 1px solid #d9d9d9 !important;
}

/* título */
.lista-posts-padrao .csc_post_title {
	margin-bottom: 12px !important;
	border: none !important;
	padding-bottom: 0 !important;
}

.lista-posts-padrao .csc_post_title a,
.lista-posts-padrao .csc_post_title h1,
.lista-posts-padrao .csc_post_title h2 {
	font-size: 30px !important;
	line-height: 1.1 !important;
	font-weight: 700 !important;
	color: #333 !important;
	text-decoration: none !important;
	display: block !important;
	margin: 0 !important;
	position: static !important;
	text-indent: 0 !important;
}

/* botão */
.lista-posts-padrao .csc_post_title a::after {
	content: "Continue a leitura »";
	position: absolute;
	left: 0;
	bottom: 18px;
	font-size: 15px;
	font-weight: 700;
	color: #2f5db3;
	text-decoration: none;
	letter-spacing: .1px;
}

/* data */
.lista-posts-padrao .csc_post_date {
	font-size: 14px !important;
	color: #666 !important;
	margin-bottom: 20px !important;
}

.lista-posts-padrao .csc_post_date::before {
	content: "Publicado em ";
}

.lista-posts-padrao .csc_post_date:empty {
	display: none !important;
}

/* conteúdo */
.lista-posts-padrao .csc_post_content {
	font-size: 15px !important;
	line-height: 1.4 !important;
	color: #333 !important;
	margin-top: 0 !important;
	max-height: 350px;
	overflow: hidden;
	position: relative;
}

/* imagem */
.lista-posts-padrao .csc_post_content img {
	display: block !important;
	max-width: 100% !important;
	height: auto !important;
	margin: 20px 0 !important;
}

/* fade */
.lista-posts-padrao .csc_post_content::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 40px;
	background: linear-gradient(to bottom,rgba(255,255,255,0),#fff);
	pointer-events: none;
}

/* links */
.lista-posts-padrao .csc_post_content a {
	color: #2f5db3 !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}

/* parágrafos */
.lista-posts-padrao .csc_post_content p {
	margin-bottom: 16px !important;
}

/* Remove autor e categoria */
.lista-posts-padrao .csc_post_author,
.lista-posts-padrao .csc_post_category {
	display: none !important;
}

/* MOBILE */
@media (max-width: 768px) {

	.lista-posts-padrao .csc_post_title a,
	.lista-posts-padrao .csc_post_title h1,
	.lista-posts-padrao .csc_post_title h2 {
		font-size: 25px !important;
		line-height: 26px !important;
		letter-spacing: -1.25px !important;
	}

	.lista-posts-padrao .csc_post_content {
		max-height: 250px;
	}

}

/* =========================================
   LISTA DE POSTS - OUTRAS PÁGINAS
========================================= */
/* cada post */
.lista-posts-padrao2 .csc_post {
	position: relative;
	margin-bottom: 30px !important;
	padding-bottom: 42px !important;
	border-bottom: 1px solid #d9d9d9 !important;
}

/* título */
.lista-posts-padrao2 .csc_post_title {
	margin-bottom: 12px !important;
	border: none !important;
	padding-bottom: 0 !important;
}

.lista-posts-padrao2 .csc_post_title a,
.lista-posts-padrao2 .csc_post_title h1,
.lista-posts-padrao2 .csc_post_title h2 {
	font-size: 30px !important;
	line-height: 1.1 !important;
	font-weight: 700 !important;
	color: #333 !important;
	text-decoration: none !important;
	display: block !important;
	margin: 0 !important;
	position: static !important;
	text-indent: 0 !important;
}

/* data */
.lista-posts-padrao2 .csc_post_date {
	font-size: 14px !important;
	color: #666 !important;
	margin-bottom: 20px !important;
}

.lista-posts-padrao2 .csc_post_date::before {
	content: "Publicado em ";
}

.lista-posts-padrao2 .csc_post_date:empty {
	display: none !important;
}

/* conteúdo */
.lista-posts-padrao2 .csc_post_content {
	font-size: 15px !important;
	line-height: 1.4 !important;
	color: #333 !important;
	margin-top: 0 !important;
	overflow: hidden;
	position: relative;
}

/* imagem */
.lista-posts-padrao2 .csc_post_content img {
	display: block !important;
	max-width: 100% !important;
	height: auto !important;
	margin: 20px 0 !important;
}

/* links */
.lista-posts-padrao2 .csc_post_content a {
	color: #2f5db3 !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}

/* parágrafos */
.lista-posts-padrao2 .csc_post_content p {
	margin-bottom: 16px !important;
}

/* Remove autor e categoria */
.lista-posts-padrao2 .csc_post_author,
.lista-posts-padrao2 .csc_post_category {
	display: none !important;
}

/* MOBILE */
@media (max-width: 768px) {

	.lista-posts-padrao2 .csc_post_title a,
	.lista-posts-padrao2 .csc_post_title h1,
	.lista-posts-padrao2 .csc_post_title h2 {
		font-size: 25px !important;
		line-height: 26px !important;
		letter-spacing: -1.25px !important;
	}

	.lista-posts-padrao2 .csc_post_content {
		max-height: 600px;
	}

}

/* =========================================
   SIDEBAR DIREITA
========================================= */
/* Remove fundo e borda só da sidebar direita */
#sidebar_right {
	background: transparent !important;
	border: none !important;
	display: flex !important;
	flex-direction: column !important;
}

/* Remove fundo e borda dos widgets da direita */
#sidebar_right .widget {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

/* Remove aquele fundo interno (tipo caixinha cinza) */
#sidebar_right .right-bar-cell {
	background: transparent !important;
	border: none !important;
}

/* Coloca Como Chegar acima dos Contatos */
#pu-contatos {
	order: 1 !important;
	margin-bottom: 20px !important;
}

#text-15 {
	order: 2 !important;
}

#text-9,
#text-13,
#text-10,
#text-8 {
	margin-bottom: -10px !important;
}

#text-8 {
	margin-bottom: 20px !important;
}

/* Centraliza o menu da direita no mobile */
@media (max-width: 768px) {

	#sidebar_right {
		align-items: center !important;
		text-align: center !important;
		width: 100% !important;
		padding: 0 !important;
		box-sizing: border-box !important;
	}

	#sidebar_right > * {
		width: 100% !important;
		max-width: 320px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	#sidebar_right .widget,
	#sidebar_right ul,
	#sidebar_right #pu-contatos {
		margin-left: auto !important;
		margin-right: auto !important;
	}

	#sidebar_right img {
		display: block !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	/* ÍCONES REDES SOCIAIS (text-12) */
	#text-12 .textwidget {
		display: flex !important;
		justify-content: center !important;
	}

	#text-12 .textwidget a {
		display: inline-block !important;
		margin: 0 6px !important;
	}

	/* MOODLE + CAPG (text-8) */
	#text-8 .textwidget {
		display: flex !important;
		justify-content: center !important;
		width: 100% !important;
	}

	#text-8 .textwidget a {
		display: block !important;
		width: 48% !important;
		margin: 0 1% !important;
	}

	#text-8 .textwidget img {
		width: 100% !important;
		height: auto !important;
	}

}

/* =========================
   SIDEBAR ESQUERDA
========================= */
#sidebar_left h2 {
	background: #e9f1fa !important;
	color: #2f5db3 !important;
	padding: 10px 12px !important;
	font-weight: 700;
	border-radius: 1px;
	border-top: none !important; /* adiciona embaixo */
	border-bottom: 2px solid #ffffff !important;
}

/* =========================
   BLOCOS - CONTEÚDO
========================= */
.bloco-geral {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.bloco-geral .bloco {
	display: inline-block;
	width: 150px;
	height: auto;
	margin: 4px;
	padding: 12px 10px;
	background: #f4f7fb;
	text-align: center;
	text-decoration: none;
	vertical-align: top;
	box-sizing: border-box;
}

.bloco-geral .bloco:hover {
	background: #e9f1fa;
}

.bloco-geral .bloco span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 44px; /* área fixa para até 2 linhas */
	color: #2f5db3;
	font-size: 26px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}