﻿* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

body {
font-family: Arial, Helvetica, sans-serif;
background: #f4f6f8;
color: #222;
line-height: 1.6;
}

.container {
width: 90%;
max-width: 1200px;
margin: auto;
}


/* HEADER */

header {
background: #111827;
color: white;
}

.header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 18px 0;
}

.logo {
font-size: 25px;
font-weight: bold;
text-decoration: none;
color: white;
}

.logo span {
color: #38bdf8;
}

nav {
display: flex;
gap: 20px;
}

nav a {
color: white;
text-decoration: none;
}

nav a:hover {
color: #38bdf8;
}


/* HERO */

.hero {
background: linear-gradient(
135deg,
#111827,
#1e3a8a
);

color: white;
padding: 90px 0;
}

.categoria {
color: #38bdf8;
font-size: 13px;
font-weight: bold;
}

.hero h1 {
font-size: 46px;
line-height: 1.15;
max-width: 850px;
margin: 15px 0;
}

.hero p {
font-size: 18px;
max-width: 700px;
margin-bottom: 25px;
}

.botao {
display: inline-block;
background: #38bdf8;
color: #07111f;
padding: 12px 22px;
border-radius: 6px;
text-decoration: none;
font-weight: bold;
}


/* NOTÍCIAS */

.noticias-section {
padding: 55px 0;
}

.noticias-section h2 {
font-size: 30px;
margin-bottom: 25px;
}

.grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 25px;
}

.card {
background: white;
padding: 25px;
border-radius: 10px;
box-shadow: 0 3px 15px rgba(0,0,0,0.08);
}

.card span {
color: #2563eb;
font-size: 12px;
font-weight: bold;
}

.card h3 {
font-size: 21px;
margin: 10px 0;
}

.card p {
color: #555;
margin-bottom: 15px;
}

.card a {
color: #2563eb;
font-weight: bold;
text-decoration: none;
}


/* BLOCOS */

.bloco {
background: white;
padding: 35px;
margin-bottom: 30px;
border-radius: 10px;
}

.bloco h2 {
margin-bottom: 10px;
}


/* FOOTER */

footer {
background: #111827;
color: white;
margin-top: 50px;
padding: 40px 0 15px;
}

.footer {
display: flex;
justify-content: space-between;
gap: 30px;
}

.links {
display: flex;
gap: 20px;
}

.links a {
color: white;
text-decoration: none;
}

.copyright {
text-align: center;
margin-top: 30px;
font-size: 13px;
color: #aaa;
}


/* MOBILE */

@media (max-width: 768px) {

.header {
flex-direction: column;
gap: 15px;
}

nav {
flex-wrap: wrap;
justify-content: center;
}

.hero h1 {
font-size: 32px;
}

.grid {
grid-template-columns: 1fr;
}

.footer {
flex-direction: column;
}

.links {
flex-direction: column;
}

}
