:root {
	--blue: #00009b;
	--blue-h: #2222BC;
	--black: #333132;
	--black-h: #202020;
	--white:#fff;
	--white-h:#ccc;
}

::-webkit-scrollbar {width: 6px}
::-webkit-scrollbar-track {-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);-webkit-border-radius: 10px;border-radius: 10px}
::-webkit-scrollbar-thumb {-webkit-border-radius: 10px;border-radius: 10px;background: #999;-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .5)}
::-webkit-scrollbar-thumb:window-inactive {background: #999;}

body{-webkit-font-smoothing: antialiased;}
html { margin: 0; padding: 0; overflow-x:hidden!important}
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, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { border: 0; font-size: 100%; font-style: inherit; font-weight: inherit; outline: 0; vertical-align: baseline; margin: 0; padding: 0;}
:focus { outline: 0; }
ol, ul { list-style: none;}
table { border-collapse: separate; border-spacing: 0;}
caption, th, td {font-weight: normal; text-align: left;}
blockquote:before, blockquote:after, q:before, q:after {content: "";}
i, em {font-style: italic;}
b, strong {font-weight: bold;}
small {font-size: 12px;}
big {font-size: 16px;}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block;}
h1, h2, h3, h4, h5, h6 { display: block; margin: 0;}

a{color:#00009b;}

.clear { clear: both;}

body {margin: 0; padding: 0; font-size:16px;font-family: 'Montserrat', sans-serif;}

#post p{margin-bottom:15px;}
.page-numbers{background: #999;color: #fff;padding: 10px 15px;border-radius:5px;transition: all 0.35s ease-in-out;}
.page-numbers:hover{background: #202020;color: #fff!important;}
.page-numbers.current{background:var(--blue);color: #fff;}
.elementor-sub-item{padding-left:5px!important;}

/* MODAL CIDADE */
.header-cidade {display:flex; align-items:center; }
.modalcidade{display:grid;grid-template-columns: 50% 50%;height:460px}
.modalcidade-logo{background:#00009b; color:#fff; padding:20px;display: flex;flex-direction: column;justify-content: space-between;align-items: center;}
.modalcidade-logo h2{font-weight: 700;font-size: 30px;margin-bottom: 10px;}
.modalcidade-select{padding:40px;display: flex;flex-direction: column;justify-content: center;background:#fff;}
.cidade-trigger{display:inline-flex; align-items:center; gap:.5rem;background:transparent; border:0; padding:.25rem .5rem; cursor:pointer;
  font-weight:600; color:#333132;}
.cidade-trigger .icone-cidade{ display:inline-block }
.cidade-trigger .seta-baixo{ transition: transform .2s ease }
.modal-cidades[hidden]{ display:none; }
.cidade-nome{font-family:"Montserrat";font-size: 16px; font-weight:600;}
.modal-cidades{position:fixed; inset:0; z-index:9999;display:flex; align-items:center; justify-content:center;font-family:inherit;}
.modal-overlay{position:absolute; inset:0; background:rgba(0,0,0,.80);}
.modal-content{position:relative; background:#fff; border:0; border-radius:0; width:min(990px,92vw);}
.modal-title{ margin:0 0 18px; font-size:1.125rem; text-align:center; color:#333 }
.lista-cidades{display:grid; gap:14px;}
.cidade-btn{display:block; text-align:center; padding:14px 16px;background:#ffd400;color:#1e1e1e; text-decoration:none; font-weight:700; border-radius:10px;transition:filter .15s ease, transform .05s ease;}
.cidade-btn:hover{ filter:brightness(0.95);}
.cidade-btn:active{ transform:translateY(1px);}

.cidade-btn2{display:block; text-align:center; padding:14px 16px;background:#DEE1FF;color:#00009B; text-decoration:none; font-weight:700; border-radius:10px;transition:filter .15s ease, transform .05s ease;}
.cidade-btn2:hover{ filter:brightness(0.95);}
.cidade-btn2:active{ transform:translateY(1px);}

.modal-close{position:absolute; top:10px; right:10px; width:36px; height:36px;border-radius:50%; border:0; background:#fff; box-shadow:0 1px 4px rgba(0,0,0,.15);font-size:22px; line-height:1; cursor:pointer;}

.banner img{ width:100%; height:auto;}
#menu .busca{padding: 10px 20px;border-bottom: 1px solid #ccc;}
.pill-search{position:relative;display:flex;align-items:center;border: 1px solid #ccc;border-radius: 6px;padding:10px 15px;background:#fff;}
.pill-search:focus-within{border-color:#cfd6dd;box-shadow:0 0 0 3px rgba(0,0,0,.05);}
.pill-search__icon{background:transparent; border:0;}
.pill-search__input{flex:1;border:0;outline:0;background:transparent;color:#111827;font-weight:600;font-family:"Montserrat";}
.pill-search__input::placeholder{color:#6b7280;}

#nav .mbd-sub{border-radius: 0px 0 10px 10px!important;}
#cn-notice-text a{color:#fff!important;}
/* ATALHOS */
.atalhos-wrap{position: relative; }
.atalho{padding:40px 20px; border-radius: 15px; border:1px solid #ededed; box-shadow: 1px 4px 4px rgba(0,0,0,.25);margin-bottom:40px; background: #fff;}
.atalho h2{font-size:24px; font-weight:700; margin-top: 15px;}
.atalho p{font-size:16px; font-weight: 500; margin: 10px 0 20px;}
.atalho a{color:#333132;}
.atalho a.btn-acesse{color:#2634FF;}
.fancybox__thumbs{display: none;}
.atalho img{max-width:60px; height:auto;}

.espaco{text-align: center; padding:40px 10px; color:#333132;transition:.3s all ease-in-out; height:195px;}
.espaco:hover{text-align: center; background:#00009b; color:#fff;}
.espaco a{color:#202020;}
.espaco-img img{height: 65px!important; margin-bottom: 20px; filter: grayscale(100%) brightness(70%) invert(20%);transition: filter 0.3s ease;max-width: fit-content !important;}
.espaco:hover .espaco-img img{filter: grayscale(100%) brightness(0%) invert(100%);}
.espaco:hover a{color:#fff!important;}
h2.tit-secao{font-size:28px; font-weight: 700; margin-bottom:40px}
.espaco h3{font-size:14px; font-weight: 700; text-transform: uppercase;}
.swiper-pagination{display: none;}

.linksalunos-wrap{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)); /* 4 por linha no desktop */
  gap: 16px; /* ajuste o espaçamento como preferir */
}

.mapa iframe{height:560px;}

.elementor-lightbox-image{background:#fff;}

@media (max-width: 767px){
  .linksalunos-wrap{
    grid-template-columns: repeat(2, minmax(0, 1fr)); /* 2 por linha no mobile */
  }
}

/* (Opcional) estilização básica dos cards */
.linksalunos-wrap .item{
  background: #fff;
  border-radius: 12px;
  padding:20px;
}
.linksalunos-wrap .item h2{height: 80px;margin-bottom: 20px;display: flex;align-items: center; font-size:20px;}
.linksalunos-wrap .atalho-img img{
  max-width: 100%;
  height: auto;
  display:block;
}

.editais-wrap{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)); /* 4 por linha no desktop */
  gap: 16px; /* ajuste o espaçamento como preferir */
}

@media (max-width: 767px){
  .editais-wrap{
    grid-template-columns: repeat(2, minmax(0, 1fr)); /* 2 por linha no mobile */
  }
}

/* BASE – vale para todos os accordions */
.acc {
    --acc-b: #e5e7eb;
    --acc-t: #111827;
    --acc-m: #6b7280;
    --acc-a: #2563eb;
    background: transparent;
}

/* Itens */
.acc {
    border: 1px solid var(--acc-b);
    border-radius: 10px;
    margin: 10px 0;
    overflow: hidden;
    background: #fff;
}

/* Cabeçalho */
.acc .acc-header {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    padding: 16px;
    cursor: pointer;
    background: #fff;
    border: 0;
    text-align: left;
    font-weight: 500;
    color: var(--acc-t);
    font-size: 16px;
    font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu;
}

.acc .acc-header:hover {
    background: #f3f4f6;
}

/* Ícone */
.acc .acc-icon {
    transition: transform .2s ease;
}

.acc .is-open .acc-icon {
    transform: rotate(180deg);
}

/* Painel */
.acc .acc-panel {
    max-height: 0;
    overflow: hidden;
    transition: max-height .25s ease;
}

.acc .acc-panel-inner {
    padding: 0 16px 16px 16px;
}

/* Lista de links */
.acc .acc-list {
    list-style: none;
    margin: 8px 0 0 0;
    padding: 0;
}

.acc .acc-list li {
    padding: 12px 0;
    border-bottom: 1px dashed var(--acc-b);
}

.acc .acc-list li:last-child {
    border-bottom: 0;
}

.acc .acc-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
}

.acc .acc-link span {
    color: var(--acc-t);
}

.acc .acc-link small {
    color: var(--acc-m);
}

/* Conteúdo livre */
.acc .acc-content {
    margin-top: 10px;
}

/* VARIANTES – só se você quiser mudar algo por tipo */

/* Exemplo: .accpl com título mais “forte” */
.acc.accpl .acc-header {
    font-weight: 600;
}

/* Exemplo: .accdocs com cores específicas (se quiser sobrescrever) */
.acc.accdocs {
    --acc-b: #e5e7eb;
    --acc-t: #111827;
    --acc-m: #6b7280;
    --acc-a: #2563eb;
}



#cursos .swiper{padding:0 20px;}
#cursos .swiper-button-next{right:-40px;}
#cursos .swiper-button-prev{left: -40px;}
.cursos-wrap{position: relative;}
.cursoo{margin-bottom:40px;}
.curso{border-radius: 15px; box-shadow: 1px 4px 4px rgba(0,0,0,.25);background: #fff; }
.curso-img{margin-bottom: 15px; height:156px; width:100%; background-position:center center; background-size: cover;border-radius:15px 15px 0 0;}
.curso h3{font-size:16px; font-weight:700; text-transform:uppercase;text-align: center;padding: 0 10px;}
.curso p{font-size:14px; font-weight: 600; padding:10px 20px 40px;}
.btn-mais{background:#00009b; color:#fff; text-align: center;padding: 10px 40px;border-radius: 40px;display:table;margin:0 auto; margin-top: -20px;}
.swiper-button-next, .swiper-button-prev{color:#ccc;}

.lc-grid { display:grid; gap:40px; }
@media (min-width:640px){ .lc-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (min-width:1024px){ .lc-grid { grid-template-columns: repeat(3, minmax(0,1fr)); } }
/* item comum */
.lc-curso-item .curso-img{
	width:100%; padding-top:56%;
	background-size:cover; background-position:center; border-radius:10px;
}
.lc-curso-item h3{ margin:.5rem 0 .25rem; font-size:1.05rem; line-height:1.3;padding: 0 10px; }
.lc-curso-item p{ margin:0; font-size:.95rem; }
.lc-curso-item .btn-mais{
	display:inline-block; padding:.6rem 1rem; border-radius:999px; font-weight:600;
	text-align:center; border:1px solid #ddd; transition:.2s;
}
.lc-curso-item .btn-mais:hover{ transform: translateY(-1px); }

/* slider flechas: use suas classes do tema se quiser */
.lc-slider-wrap { position:relative; }
.lc-slider-wrap .swiper-button-prev, .lc-slider-wrap .swiper-button-next { color:inherit; }

/* GALERIA */
.galeriaswiper .swiper-slide { text-align:center; font-size:14px; background:#444; display:flex; justify-content:center; align-items:center; }
.galeriaswiper .swiper-slide img { display:block; width:100%; object-fit:cover; }
.galeriaswiper .swiper-slide {opacity:.4; }
.galeriaswiper .swiper-slide-thumb-active { opacity:1; }
.galeriaswiper2 .swiper-slide img { display:block;width: 100%; height: auto; margin-bottom: 15px;object-fit: cover;}
.swiper-button-next.galeria{right:-60px;}
.swiper-button-prev.galeria2{left:-60px;}
.galeriaswiper .swiper-slide{height:120px;}
@media (max-width: 768px){
	.galeriaswiper .swiper-slide img { height:150px; }
}

.gallery-item{padding:0 10px;}
.gallery-item img{border: 0!important;border-radius: 8px!important;}

.acc-link {line-height: 160%;}
.acc-link:hover{text-decoration:underline!important;}


.infraestrutura-galeria .swiper-slide {
	display: flex;
	flex-direction: column;
}
.infra-img-main {
	width: 100%;
	border-radius: 12px;
	overflow: hidden;
}
.infra-img-main img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}
.infra-texto {
	margin-top: 12px;
}
.infra-local {
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	opacity: 0.8;
	margin-bottom: 4px;
}
.infra-nome {
	font-size: 1.3rem;
	font-weight:700;
	margin: 0 0 6px;
}
.infra-descricao {
	font-size: 1rem;
	line-height: 1.5;
	padding-bottom:30px;
}
.galeriaswiper2 .swiper-slide img {height: 540px;}

.infraestrutura-thumbs .swiper-slide {
	opacity: 0.6;
	cursor: pointer;
}
.infraestrutura-thumbs .swiper-slide-thumb-active {
	opacity: 1;
}
.infraestrutura-thumbs img {
	width: 100%;
	height: auto;
	max-height: 120px;
	object-fit: cover;
	border-radius: 8px;
}


.cerw-item-text{overflow-wrap: break-word;}

@media only screen and (max-device-width: 680px), screen and (max-width: 680px	) {
	.galeriaswiper2 .swiper-slide img {height: 300px;}
}

/* INFRAESTRUTURA */
#infraestrutura{display:grid;grid-template-columns: auto auto auto auto;}
#infraestrutura .numeroinfra{text-align:center; margin-bottom:40px;}
#infraestrutura .numero{margin-top: 10px;color:#333132; font-size:48px; font-weight:700;}
#infraestrutura .titulo{font-weight:500;}

/* PROJETOS E INCENTIVOS */
#projetos .swiper{padding:20px;}
#projetos .swiper-button-next{right:-40px;}
#projetos .swiper-button-prev{left: -40px;}
.projetos-wrap{position: relative;}
.swiper.projetos{padding:20px 0;}
.projeto{background:#F4F5FF; border-radius: 15px;  padding:60px 0; transition: .3s all ease-in-out;}
.projeto:hover{box-shadow: 0 0 2px rgba(0,0,0,.25); }
.projeto h3{font-size:18px; font-weight:700; text-transform:uppercase;text-align: center; color:#333132;}

/* NOTICIAS HOME */
.noticia{border-radius: 15px; box-shadow: 1px 4px 4px rgba(0,0,0,.25);background: #fff;padding-bottom: 20px;}
.noticia-img{margin-bottom: 15px; height:156px; width:100%;}
.noticia h3{font-size:18px; font-weight:700; padding:10px 20px;}
.noticia p{font-size:14px; font-weight: 500; padding:0 20px;}
.noticia-img{margin-bottom: 15px; height:100%; background-position:center center; background-size: cover;border-radius:15px 15px 0 0;}
.noticia a.mais{color:#00009b;}
a.leiamais{color:#00009b;font-size:16px; text-transform: uppercase; font-weight: 600;}

.noticias-grid {
	display: grid;
	gap: 24px;
}
@media (min-width: 768px) {
	.noticias-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
@media (max-width: 767.98px) {
	.noticias-grid {
		grid-template-columns: 1fr;
	}
}

.noticia-card {
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	box-shadow:0px 2px 3px 1px rgba(0, 0, 0, 0.23);
	display: flex;
	flex-direction: column;
	height: 100%;
}
.noticia-thumb {
	display: block;
	position: relative;
	overflow: hidden;
}
.noticia-thumb img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	aspect-ratio: 16/9;
}
.noticia-content {
	padding: 20px 20px 24px;
}
.noticia-date {
    font-size: 12px;
    color: #666;
    margin-bottom: 12px;
}
.noticia-title {
	font-size: 1.1rem;
	font-weight: 600;
	margin: 0 0 8px;
	color: #333;
}
.noticia-excerpt {
	font-size: 0.95rem;
	color: #555;
	margin: 0 0 16px;
}
.noticia-more {
	display: inline-block;
	font-size: 12px;
	font-weight: 500;
	color: #00009b;
	text-decoration: none;
}
.noticia-more:hover {
	text-decoration: underline;
}
.noticias-pagination {
	margin-top: 32px;
	text-align: center;
}
.noticias-pagination .page-numbers {
	display: inline-block;
	margin: 0 4px;
	padding: 10px 15px;
	border-radius: 6px;
	text-decoration: none;
	font-size: 0.95rem;
	color: #555;
	background:#ededed;
}
.page-numbers:hover {
	background: #ccc;
	color: #555 !important;
}
.noticias-pagination .current {
	background: #1a73e8;
	color: #fff;
}

/* EDITAIS */
.edital-grupo {
	border-radius: 8px;
	margin-bottom: 10px;
	background: #fff;
	box-shadow: 0 1px 3px rgba(0,0,0,0.1);
	overflow: hidden;
}
.edital-header {
	width: 100%;
	text-align: left;
	padding: 15px 20px;
	font-weight: 600;
	font-size: 1rem;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	border: none;
	outline: none;
	font-family:"Montserrat";
}
.edital-header:hover {
	background: #f6f6f6;
}
.edital-content {
	display: none;
	opacity: 0;
	padding: 0 25px;
	transition: opacity 0.3s ease, padding 0.3s ease;
}
.edital-content.show {
	display: block;
	opacity: 1;
	padding: 15px 25px 20px;
}

.edital-content a {
	color: #003366;
	text-decoration: none;
	display: block;
	font-size:15px;
	line-height: 1.5;
	padding: 12px 0;
    border-bottom: 1px dashed #ccc;
}
.edital-content a:hover {
	text-decoration: underline;
	color:#000;
}
.icon {
	transition: transform 0.3s ease;
}
.edital-grupo.active .icon {
	transform: rotate(180deg);
}


#conteudoprincipal iframe{max-width:720px!important; width: 100%; height: 420px!important; margin:0 auto;display:block;}

/* FOOTER */
.menu-rdp h4{margin-bottom: 15px;}
.menu-rdp ul li{margin-bottom: 5px;}
.redes{display:flex;gap:10px;align-items: center; margin-top: 10px;}

.grecaptcha-badge{display: none !important;}
.post img.size-large {width: 100%;height: auto;}
.aligncenter img {width: 100%;height: auto;}
.aligncenter {display: block;margin: 0 auto;}
.alignright {float: right;margin: 0 0 1em 1em;}
.alignnone {float: none;margin: 0 1em 1em 0;}
.alignleft {float: left;margin: 0 1em 1em 0;}
.floatleft {float: left;}
.floatright {float: right;}
.aligncenter, .alignright, .alignleft {margin-top: 5px;}
.alignnone {margin-bottom: 10px;}
img.aligncenter, img.alignnone {width: auto;height: auto;margin-bottom: 10px;}

/* TERMOS */
#termos{line-height:30px;}
#termos iframe{max-width:680px; width:100%; height:460px;}

#termos h1{font-size:24px; font-weight: 600;}
#termos h2{font-size:20px; font-weight: 600;}
#termos h3{font-size:16px; font-weight: 600;}

#termos ul, #termos ol {margin-top:15px; margin-left: 25px; margin-bottom: 15px; }
#termos ol li {display: block; padding: 7px;margin-bottom: 15px;}
#termos ol li:before {content: counters(item, ".") " "; counter-increment: item; font-weight: bold;}
#termos ol {counter-reset: item;}

#termos ul li { list-style: none;margin-bottom: 15px;}
#termos ul li::before { content: "\2022"; font-weight: bold; display: inline-block; width: 1em; margin-left: -1em; }
#termos table{font-size:14px; margin-bottom:40px; }
#termos table, #termos th, #termos td {border: 1px solid; border-collapse: collapse;}
#termos table tr td{margin:10px 0; padding:10px;}
.iconestermos{display: flex;justify-content: space-between;text-align: center;}

@media only screen and (max-device-width: 1366px), screen and (max-width: 1366px) {

}

@media only screen and (max-device-width: 860px), screen and (max-width: 860px	) {
	.elementor-section.elementor-section-height-full, .elementor-section.elementor-section-height-full>.elementor-container{height:auto!important;}
	.modalcidade{display:block; height: auto;}
	.cidadeselecionada{background:#EAEBFF; text-align: center;}
	.header-cidade{display: block;padding: 5px 0;margin-top: 5px;}
	#infraestrutura{grid-template-columns: auto auto;}
	.espacos.swiper {padding:0 50px;}
	.espaco h3 {font-size: 12px;}

	.atalho{padding:20px 10px; margin-bottom:20px;}
	.atalho h2{font-size:16px; font-weight:700; margin-top:5px;}
	.atalho p{font-size:12px; font-weight: 500; margin: 5px 0 0px;}
	#cursos .swiper {padding:0 50px;}	
	.atalho a.btn-acesse{display:none;}
	.atalho img{max-width:32px!important; height:auto;}
	.lc-curso-item h3{font-size:14px;}
	.curso p, .lc-curso-item p{font-size:12px;padding:10px 14px 40px;}
	.btn-mais, .lc-curso-item .btn-mais{font-size:10px;}
	.redes{justify-content: center;}
	
	.numeroinfra img{max-width:100px!important;}
}

@media only screen and (max-device-width: 680px), screen and (max-width: 680px	) {
	body{overflow-x:hidden;}
	.elementor-section.elementor-section-height-full, .elementor-section.elementor-section-height-full>.elementor-container{height:auto!important;}

    .iconestermos{display:block;}
    .iconestermos div{margin: 10px auto;}
	#conteudoprincipal iframe{max-width:480px!important; width: 100%; height: 240px!important; margin:0 auto;}

}
