:root {
    --cor-fundo: #0078cd;
    --cor-hover: none;
    --cor-primaria: white;
}

* {
    margin: 0;
    padding: 0;
    border: 0;
}



body, div, p {
  font-family: 'Exo 2', sans-serif;
  background-color: none;  
  padding: 0px;
  margin: 0 auto;
  font-size: 15px;
  color: black;
}

a:link, a:visited, a:active {
  text-decoration: none;
  /* color: #9F8242; */
  color: black;
}
a:hover {
  text-decoration: none;
  /* color: #514328; */
    color: black;
}

*/ 

h1, h2, h3, h4  {
    color: #333333;
    margin: 10px;
	text-align: justify;
	background-color: none; 
	line-height: 1.3;
	  font-family: 'Exo 2', sans-serif;
}

/* título */
h1 {
	font-size: 24px;
	font-weight: bold;
	text-indent: 0px;
}

/* subtítulo */
h2 {
	font-size: 22px;
	text-indent: 0px;
}

/* H3 - texto normal */
h3 {
	font-size: 20px;
	text-indent: 0px;
}

h4 {
	font-size: 16px;
	text-indent: 0px;
}

.titulo {
	text-align: center;
	font-weight: bold;
	color: #ffffff;
	font-family: lato;
	font-size: 20px;
	background-color: #0078cd;
	margin: 0 auto;
	margin-top: 10px;
	padding: 5px;
	height: 26px;
	text-indent: 0px;
	width: 70%;
	min-width: 350px;
	align-content: center;
}
 .subtitulo {
	text-align: center;
	color: #000000;
	font-size: 12px;
	margin: 0 auto;
	margin-top: 10px;
	text-indent: 0px;
	align-content: center;
}
 
 
/* -----------   Container Geral - início da programação --------------- */
.geral {
	width: 100%;
	height: 100%;
	margin: 0 auto;
	background-color: #ededed;
	border: 0px solid yellow;
	color: black;
}




/* ----------------------- Cabeçalho ------------------------------------- */

.container-cabecalho, .container-cabecalho a, .container-cabecalho > a {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	margin: 0;
	padding: 0;
    border: 0px solid green;
	justify-content: space-between;
    background-color: none;
}

.container-cabecalho img, .container-cabecalho img a, .container-cabecalho picture, .container-cabecalho picture a {
	width: 100%;
	height: 100%;
}

/* ----------------- Login ------------------------ */
.container-login, .container-login p, .container-login > p {
  display: flex;
  flex-wrap: wrap;
  padding: 4px;
  padding-bottom: 0;
  height: auto;
  margin: 0 auto;
  border: 0px solid gray;
  background-color: var(--cor-fundo);
  flex-direction: row;
  margin-top: 0px;
  margin-bottom: 0px;
  justify-content: center;
  text-decoration: none;
  align-items: center;
  align-content: center;
  color: yellow;
  text-align: center;
  font-family: lato;
  font-style: italic;
  font-size: 18px;
}
.container-login a:link, .container-login a:visited, .container-login a:active {
	color: yellow;
 	align-content: center;
}


/* ----------------- Menu -------------------------- */
.container-menu {
  display: flex;
  flex-wrap: nowrap;
  padding: 0px;
  height: auto;
  margin: 0 auto;
  border: 0px solid gray;
  background-color: var(--cor-fundo);
  flex-direction: row;
  width: 100%;
  justify-content: center;
  text-decoration: none;
  align-items: center;
  color: white;
  text-align: center;
  font-size: 16px;
}

.dp-menu ul {
    list-style-type: none;
    padding: 10px;
    padding-right: 0px;
    background-color: var(--cor-fundo);
	font-size: 16px;
	text-align: left;
}

.dp-menu ul li {
	color: white;
	text-decoration: none;
    display: inline-block;
	position: relative;
	padding: 0px;
	padding-left: 4px;
	padding-right: 4px;
   /* font-weight: bolder; */
    text-align: left;
	width: auto;
	white-space: nowrap;
	font-size: 16px;
}

.dp-menu ul li a {
    color: var(--cor-primaria);
    text-decoration: none;
    display: inline-block;
	padding: 0px;
    /* font-weight: bolder; */
	text-align: left;
	width: auto;
	font-size: 16px;
}

.dp-menu ul li a:hover {
    background-color: var(--cor-hover);
	color: yellow;
	border-bottom: 0px solid cyan;
	padding: 0px;
	font-size: 16px;
}

/*sub menu*/
.dp-menu ul ul {
    display: none;
    left: 0;
    position: absolute;
    width: auto;
	border: 1px solid gray;
	font-size: 16px;
}

.dp-menu ul li:hover ul {
    display: block;
	padding: 8px;
	width: auto;
	font-size: 16px;
}

.dp-menu ul ul li {
	padding: 3px;
	border: 0px solid gray;
	font-size: 16px;
}

.dp-menu ul ul li a {
    display: block;
	padding: 0px;
	font-size: 16px;
}

/* ----------------- Rodapé -------------------------- */

.container-rodape {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	margin: 0;
	padding: 0;
    border: 0px solid green;
	justify-content: space-between;
    background-color: none;
}

.container-rodape img, .container-rodape img a, .container-rodape picture, .container-rodape a, .container-rodape picture img {
	width: 100%;
	height: 100%;
}

/* ----------------- Containers -------------------------- */

.container-home {
	display: flex;
	flex-wrap: nowrap;
	height: auto;
	width: 50%;
	min-width: 450px;
	padding: 10px;
	margin: 0 auto;
	margin-top: 10px; 
	margin-bottom: 10px;
	border: 1px solid #ccc; 
	flex-direction: row;
	justify-content: space-around;
	background-color: white;
	border-radius: 8px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);	
}
.container-home p, .container-home > p {
	margin: 0;
	padding: 0;
}
								
								
.afast {
	text-indent: 50px;
	text-align: justify;
	border: 0px solid green;
	margin: 0 auto;
	padding: 10px;
	width: 80%;
}

.afast img, .centraliza img {
	text-indent: 0;
}

.subtitulo {
	text-align: center;	
	color: #006bd6;
	font-size: 16px;
	font-weight: bold;
	text-indent: 0px;	
	margin-bottom: 10px;
}

/* ----------------- Card -------------------------- */

.container-card {
  display: flex;             /* Alternativa ao grid */
  flex-wrap: wrap;           /* Faz os cards quebrarem a linha no celular */
  justify-content: center;   /* Centraliza os cards */
  gap: 20px;
  padding-top: 10px;
  background-color: none;  
}

.card {
  width: 100px;              /* Largura fixa para manter o formato do card */
  background: #fff;
  border-radius: 10px;       /* Bordas bem arredondadas como na foto */
  padding: 10px;
  padding-top: 0;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  text-align: center;
  text-indent: 0;
  font-size: 12px;
  border-top: 10px solid var(--cor-fundo);
  align-content: center;
}
.card p {
	font-size: 12px;
}

.icone, .icone a {
	display: flex;
	width: auto;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	font-weight: bold;
	text-indent: 0px;
	color: #006bd6;
	padding: 5px;
	text-align: center;
}
.icone img {
	width: 50px;
}

/* ---------- formulário ---------- */
.container-home p, .container-home > p {
	margin: 0;
	padding: 0;
}
								
.formulario {
	display: block;
	height: auto;
	margin: 0 auto;
	border: 0px solid #aaa;
	padding: 20px;
	max-width: 500px;
	min-width: 300px;
}

.centraliza {
	display: grid;
	text-indent: 0;
	text-align: justify;
	border: 0px solid red;
	margin: 0 auto;
	padding: 10px;
	min-width: 80%;
} 

.afast img, .centraliza img {
	text-indent: 0;
}

/* ---------- barra de ícones ---------- */
.barradeicones img {
	width: 50px;
}
.barradeicones {
	display: flex;
	flex-wrap: nowrap;
	 
	justify-content: right;
	align-items: center;
	gap: 20px;
	margin-bottom: 20px;
	padding: 10px;								
	flex-direction: row;
	text-indent: 0px;
 }

/* ---------- colunas ---------- */
.col-1, .col-1 a {
	display: flex;
	flex-wrap: wrap;
	min-width: 90px;
	border: 0px solid #d6d6d6;
	vertical-align: middle;	
	justify-content: center;
	align-items: center;
	border-radius: 5px;	
	margin-right: 20px;		
	align-content: center;
	margin: 10px;
	flex-direction: column;
	text-align: center;
}

.col-1, .col-1 img, col-1 a, col-3, .col-3 img, .col-3 a {
	max-width: 80px;
	margin: 0 auto;
	text-indent: 0;
}
	
.col-2 {
	border: 0px solid cyan;
	vertical-align: top;
	width: 70%;
	font-family: 'Exo 2', sans-serif;
	font-size: 15px;
		margin: 10px;
		padding-left: 20px;
}

.col-3 {
	width: 150px;
	display: block;
	text-align: center;
	text-transform: uppercase;
	color: #3F3B3A;
	font-weight: 300;
	font-size: 12px;
	border: 0px solid cyan;
	align-content: center;
		margin: 10px;								
}

/* ---------- divisões ---------- */
		.tipo {
			font-size: 15px;
			font-family: 'Exo 2', sans-serif;								
		}
		
		.entidade {
			font-size: 18px;
			font-weight: 700;
			font-family: 'Exo 2', sans-serif;	
			line-height: 1.3;
		}

		.edital {
			font-size: 14px;	
			font-family: 'Exo 2', sans-serif;
			line-height: 1.3;								
		}

/* ---------- larguras ---------- */							
	.large {
		width: 100%;
	}

	.large .container-home {
		width: 95%;
	}

	 

	.afast img, .centraliza img {
		text-indent: 0;
	}							

/* ---------- botoes ---------- */
.botao-verde, .botao-vermelho {

	margin: 0 auto;
	font-size: 15px;
	color: #FFF;
	border: 0;
	padding: 10px;
	min-width: 70px;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.2);
	text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
}

.botao-verde {
	background: #2bb21f;
}

.botao-vermelho {
	background: #ff3131;
}

.mais_info {

	vertical-align: middle;
	background: #fff;
	border-radius: 3px;
	display: inline-block;
	 
	color: #666666;
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	padding-top: 5px;
    padding-bottom: 10px;
	line-height: 18px;
	text-decoration: none;
	text-shadow: 0px;
	margin: 0 auto;
}	


/* ---------- brasões ---------- */
.brasao-100, .brasao-100-flex {
	display: grid;
	height: auto;
	width: auto;
	justify-content: center;
	align-items: center;
	font-size: 12px;
	font-weight: bold;
	text-indent: 0px;
	color: #006bd6;
	gap: 20px;
	text-align: center;
}

.brasao-100-flex {
	display: flex;
	flex-wrap: wrap;
}

.brasao-100 img, .brasao-100 a img, .brasao-100-flex img, .brasao-100-flex a img {
	width: 120px;
}

.brasao-col-1 img {
	width: 120px;
}

.brasao-100-flex .col-1 {
	margin: 0;
	align-self: flex-start;
}


 .txt {
	text-align: center;
	color: #333333;
    margin: 2px;
	text-align: center;
	background-color: none;
	font-size: 12px;
	text-indent: 0px;
	font-family: 'Exo 2', sans-serif;
	font-weight: normal;
 }



/* ---------- logo Pdf upload ---------- */
.logo_pdf {
	display: flex;
	flex-wrap: wrap;
	width: auto;
	margin: 5px;
	text-indent: 5px;
	justify-content: flex-start;
	align-items: center;
	text-transform: uppercase;
	font-size: 14px;
}

.logo_pdf img {
	max-width: 30px;
}
							
 
			@media screen and (max-width: 1250px) {
				.container-home {
					width: 60%;
					min-width: 450px;
				}	
				
				.col-1 {
						margin: 0 auto;									
				}
		
				.col-2 {
						margin: 7px;
						padding-left: 10px;
				}
										
				.col-3 {
						margin: 7px;								
				}				
 				
			}
			
				@media screen and (max-width: 1050px) {
						.container-home {
							width: 70%;
							min-width: 400px;
						}
				}

					@media screen and (max-width: 900px) {
							.container-home {
								width: 80%;
								min-width: 400px;
							}
					}
			
						@media screen and (max-width: 768px) {	
						
								.titulo {
									width: 45%;
									font-size: 18px;
									min-width: 250px;								
								}
						
								.container-menu {
								  width: 100%;
								  justify-content: center;
								  text-align: center;
								  font-size: 16px;
								}

								
								/* subtítulo */
								h2 {
									font-size: 16px;
									font-weight: bold;
								}						
								
								.row-menu {
								  width: 100%;
								}


								/* ----------------- Login ------------------------ */
								.container-login, .container-login p, .container-login > p {
								  padding: 4px;
								  padding-bottom: 0;
								  font-size: 16px;
								}  
								
								.container-login a:link, .container-login a:visited, .container-login a:active {
									font-size: 15px;
								}
								/* ----------------- FIM Login ------------------------ */


								
								
								/* ----------------- Menu ------------------------ */
								/* apenas pausinho de divisão do menu */							
								.dp-menu ul {
									font-size: 16px;
									padding-top: 4px;
									padding-bottom: 4px;
									padding-left: 2px;
									padding-right: 2px; 
	 
									color: white;
								}

								.dp-menu ul li {
									font-size: 16px;
								}		
								
								/* menu */
								.dp-menu ul li a {
									font-size: 16px;
									color: white;
								}  
								
								/* menu ao clicar */
								 .dp-menu ul li a:hover {
									font-size: 16px;
									color: yellow;
								}


								.dp-menu ul ul {
									font-size: 14px;
								}

								.dp-menu ul li:hover ul {
									font-size: 14px;		 
								}

								.dp-menu ul ul li {
									font-size: 14px; 
								}
								
								/*sub menu*/							
								.dp-menu ul ul li a {
									font-size: 14px;
									color: white;
								}
								
								/*sub menu ao clicar*/							
								.dp-menu ul ul li a:hover {
									font-size: 14px;
									color: yellow;
								}							
								/* ----------------- FIM Menu ------------------------ */	

								.container-home {
									display: block;
									width: 80%;
									min-width: 200px;
								}	

								.container-home .container-home {
									width: 90%;
									margin-top: 15px;
								}
								
							.afast {
								text-indent: 25px;
								text-align: justify;
								border: 0 solid green;
								margin: 0 auto;
								padding: 0;
								width: 90%;
							} 
							
							.afast img, .afast2 img {
								text-indent: 0;
							}	

							.centraliza {
									text-indent: 10px;
									width: unset;
									border: 0px solid red;
									padding: 5px;
							}
							
							.centraliza p {
								width: unset;
								margin: 0;
								padding: 0;
							}
							
							.centraliza img {
									text-indent: 0;
							}
							
								.col-1 {
										margin: 0 auto;								
								}

								.col-2 {
										margin: 0 auto;
										padding-left: 10px;
										padding: 5px 5px 5px 10px;
										width: 70%;									
								}
														
								.col-3 {
										margin: 0 auto;									
								}							
					
						}
						
							@media screen and (max-width: 568px) {
	
									.container-home {
										width: 87%;
									}	
									
									.col-1, .col-2, .col-3 {
										margin: 0 auto;
									}
									
									.col-2 {
										padding: 5px 5px 5px 10px;
										width: 92%;
									}

											.tipo {
												font-size: 16px;
												font-family: 'Exo 2', sans-serif;								
											}
											
											.entidade {
												font-size: 23px;
												font-weight: 700;
												font-family: 'Exo 2', sans-serif;	
												line-height: 1.3;
											}

											.edital {
												font-size: 14px;	
												font-family: 'Exo 2', sans-serif;
												line-height: 1.3;								
											}					
					
							}