/* -----------------------
Base styles
------------------------*/

body
{
	margin: 0;
	padding: 0;
	color: #34495E; /* Um cinza-azulado escuro para o texto */
	background-color: #F5F7FA; /* Um fundo cinza muito claro e moderno */
	font: 1em/1.2 "Helvetica Neue", Helvetica, Arial, Geneva, sans-serif;
}

h1,h2,h3,h4,h5,h6
{
	margin: 0 0 .5em;
	font-weight: 500;
	line-height: 1.1;
}



h1 { font-size: 2.25em; } /* 36px */
h2 { font-size: 1.75em; } /* 28px */
h3 { font-size: 1.375em; } /* 22px */
h4 { font-size: 1.125em; } /* 18px */
h5 { font-size: 1em; } /* 16px */
h6 { font-size: .875em; } /* 14px */

p
{
	margin: 0 0 1.5em;
	line-height: 1.5;
}

blockquote
{
	padding: 1em 2em;
	margin: 0 0 2em;
	border-left: 5px solid #eee;
}

h2 {
    font-size: 1.75em;
    font-weight: 500;
    color: #2C3E50; /* Usa a cor escura principal para dar mais peso */
    padding-bottom: 0.3em; /* Espaço entre o texto e a linha */
    border-bottom: 2px solid #F5F7FA; /* Linha sutil na cor de fundo */
    margin-top: 2em; /* Mais espaço acima do título, separando as seções */
    margin-bottom: 1em;
}

hr
{
	height: 0;
	margin-top: 1em;
	margin-bottom: 2em;
	border: 0;
	border-top: 1px solid #ddd;
}

table
{
	background-color: transparent;
	border-spacing: 0;
	border-collapse: collapse;
	border-top: 1px solid #ddd;
}

th, td
{
	padding: .5em 1em;
	vertical-align: top;
	text-align: left;
	border-bottom: 1px solid #ddd;
}

a:link { color: #3498DB; } /* Azul moderno */
a:visited { color: #8E44AD; } /* Roxo para visitado */
a:focus { color: #000000; }
a:hover { color: #2980B9; } /* Azul um pouco mais escuro no hover */
a:active { color: #E74C3C; }

/* -----------------------
Layout styles
------------------------*/

.container
{
	max-width: 50em;
	margin: 0 auto;
	background-color: #fff;
}

.header {
	color: #FFFFFF;
	background: #2C3E50; /* Azul-escuro/Grafite */
	padding: 2em 1.25em; /* AUMENTAMOS O PADDING VERTICAL */
}

.header-heading { 
    margin: 0; 
	text-align: center;
    font-weight: 400; /* DEIXAMOS A FONTE UM POUCO MAIS LEVE */
    letter-spacing: 1px; /* ADICIONAMOS UM LEVE ESPAÇAMENTO */
}

.nav-bar
{
	background: #34495E; /* Tom um pouco mais claro que o header */
	padding: 0;
}

.content { padding: 1em 1.25em; }

.footer
{
	color: #FFFFFF;
	background: #2C3E50; /* Azul-escuro/Grafite */
	padding: 1em 1.25em;
}

/* -----------------------
Nav
------------------------*/

.nav
{
	margin: 0;
	padding: 0;
	list-style: none;
}

.nav li
{
	display: inline;
	margin: 0;
}

.nav a
{
	display: block;
	padding: .7em 1.25em;
	color: #fff;
	text-decoration: none;
	border-bottom: 1px solid gray;
}

.nav a:link { color: white; }
.nav a:visited { color: white; }

.nav a:focus
{
	color: black;
	background-color: white;
}

.nav a:hover
{
	color: white;
	background-color: #2980B9; /* Usando o azul da paleta para hover */
}

.nav a:active
{
	color: white;
	background-color: #E74C3C; /* Usando o vermelho da paleta para ativo */
}

/* -----------------------
Single styles
------------------------*/

.btn
{
	color: #fff !important;
	background-color: #3498DB; /* Azul moderno */
	border-color: #222;
	display: inline-block;
	padding: .5em 1em;
	margin-bottom: 0;
	font-weight: 400;
	line-height: 1.2;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	cursor: pointer;
	border: 1px solid transparent;
	border-radius: .2em;
	text-decoration: none;
}

.btn:hover
{
	color: #fff !important;
	background-color: #2980B9; /* Azul mais escuro */
}

.btn:focus
{
	color: #fff !important;
	background-color: #2C3E50; /* Azul-escuro/Grafite para foco */
}

.btn:active
{
	color: #fff !important;
	background-color: #E74C3C; /* Vermelho para ativo */
}

.table
{
	width: 100%;
	max-width: 100%;
	margin-bottom: 20px;
}

.list-unstyled
{
	padding-left: 0;
	list-style: none;
}

.list-inline
{
	padding-left: 0;
	margin-left: -5px;
	list-style: none;
}

.list-inline > li
{
	display: inline-block;
	padding-right: 5px;
	padding-left: 5px;
}

.my-image-class {
    width: 150px; 
    height: 150px;
}

.sponsors-container {
  display: flex; /* Transforma o contêiner em um Flexbox */
  flex-wrap: wrap; /* Permite que os itens quebrem a linha se não houver espaço */
  justify-content: center; /* Centraliza os logos horizontalmente */
  align-items: center; /* Centraliza os logos verticalmente */
  gap: 20px; /* Adiciona um espaço entre os logos */
  margin-top: 20px;
}

/* Estilos para o menu sanfona de notícias */
.links-container {
    display: none; /* Esconde a lista de links por padrão */
    padding-left: 20px; /* Adiciona um pequeno recuo para os links */
}

.links-container.visible {
    display: block; /* Classe que o JavaScript adiciona para mostrar os links */
}

/* -----------------------
Wide styles
------------------------*/

@media (min-width: 42em)
{
	.header { padding: 1.5em 3em; }
	.nav-bar { padding: 1em 3em; }
	.content { padding: 2em 3em; }
	.footer { padding: 2em 3em; }
	
	.nav li
	{
		display: inline;
		margin: 0 1em 0 0;
	}
	
	.nav a
	{
		display: inline;
		padding: 0;
		border-bottom: 0;
	}
}

@media (max-width: 768px) {
.my-image-class {
    	height: 75px;
    	width:  75px; 
    	margin-left: 0%;
    	margin-right: 0%;

  	}

  	.sponsors-container {
    	justify-content: center;
  	}
}