/* ----------------------
   Reset Básico
------------------------ */
*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: Arial, sans-serif;
    line-height: 1.6;
    color: #222;
    background-color: #f2f7f5;
    padding: 0;
}

/* ----------------------
   Container Geral
------------------------ */
.container {
    max-width: 1200px;
    width: 90%;
    margin: 0 auto;
    padding: 15px;
}

/* ----------------------
   Links
------------------------ */
a {
    color: #0A9396;
    text-decoration: none;
}

a:hover,
a:focus {
    text-decoration: underline;
}

/* ----------------------
   Cabeçalho
------------------------ */
header {
    background: #025159;
    color: #fff;
    padding: 15px 0;
}

header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

header .site-name {
    font-size: 1.8rem;
}

header .slogan {
    font-size: 0.9rem;
    color: #d1e7dd;
}

nav ul {
    list-style: none;
    display: flex;
    gap: 15px;
}

nav ul li a {
    color: #fff;
    font-weight: bold;
}

/* ----------------------
   Conteúdo Principal
------------------------ */
main section {
    background: #ffffff;
    border-radius: 8px;
    padding: 25px;
    margin-bottom: 25px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

main h1 {
    font-size: 1.8rem;
    margin-bottom: 15px;
}

/* ----------------------
   Rodapé
------------------------ */
footer {
    background: #033E3E;
    color: #fff;
    text-align: center;
    padding: 20px 0;
}

footer .social-links {
    list-style: none;
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 10px;
}

footer .social-links img {
    width: 28px;
    height: 28px;
}

/* ----------------------
   Comissão Organizadora
------------------------ */
.comissao-lista {
    list-style: none;
    padding: 0;
}

.comissao-lista li {
    margin-bottom: 1rem;
    padding: 1rem;
    border: 1px solid #ccc;
    border-radius: 10px;
    background-color: #f9f9f9;
}

.comissao-lista .nome {
    font-weight: bold;
    font-size: 1.1rem;
}

.comissao-lista .funcao {
    font-style: italic;
    color: #555;
}

/* ----------------------
   Programação
------------------------ */
.programacao {
    line-height: 1.7;
    margin-top: 10px;
}

.programacao h2 {
    font-size: 1.3rem;
    color: #025159;
    margin-top: 1.5em;
    border-bottom: 2px solid #0A9396;
    padding-bottom: 0.3em;
}

.programacao h3 {
    font-size: 1.1rem;
    color: #046E6E;
    margin-top: 1em;
}

.programacao p {
    margin-bottom: 0.8em;
}

.programacao ul {
    list-style: none;
    padding: 0;
}

.programacao li {
    background-color: #f9f9f9;
    border-left: 4px solid #0A9396;
    margin-bottom: 1em;
    padding: 10px 15px;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.programacao .resumo {
    font-style: italic;
    color: #555;
}

.programacao .alerta {
    background: #fff3cd;
    border-left: 4px solid #ffc107;
    padding: 10px 15px;
    border-radius: 6px;
    margin-top: 15px;
}

/* Links para arquivos */
.programacao .links {
    margin: 1em 0;
}

.programacao .links a {
    display: inline-block;
    margin-right: 1em;
    font-weight: bold;
    color: #0A9396;
}

/* ----------------------
   Listas de Inscrição e Informes
------------------------ */
ol, ul {
    margin-left: 1.5em;
}

ol li, ul li {
    margin-bottom: 1em;
}

/* ----------------------
   Introdução / Seções Especiais
------------------------ */
.intro p {
    margin-top: 10px;
}

/* ----------------------
   Responsividade
------------------------ */
@media (max-width: 768px) {
    header .container {
        flex-direction: column;
        gap: 10px;
    }

    nav ul {
        flex-direction: column;
        gap: 8px;
        align-items: flex-start;
    }

    .programacao li {
        padding: 8px 12px;
    }
}

/* Destaques de texto importante */
.intro .destaque {
    background-color: #fff3cd; /* amarelo claro, tipo alerta */
    padding: 3px 6px;
    border-left: 4px solid #ffc107; /* cor de destaque */
    border-radius: 4px;
    font-weight: bold;
}

/* Links importantes */
.intro .link-destaque {
    color: #025159;
    font-weight: bold;
    text-decoration: underline;
}
.intro .link-destaque:hover {
    color: #0A9396;
}

/* ----------------------
   Informes Oficiais
------------------------ */
.informes {
    line-height: 1.7;
    margin-top: 10px;
}

.informes h2 {
    font-size: 1.3rem;
    color: #025159;
    margin-top: 1em;
    border-bottom: 2px solid #0A9396;
    padding-bottom: 0.3em;
}

.informes p {
    margin-bottom: 0.8em;
}

.informes ul {
    list-style: none;
    padding: 0;
}

.informes li {
    background-color: #f9f9f9;
    border-left: 4px solid #0A9396;
    margin-bottom: 1.5em;
    padding: 15px 20px;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.informes .data {
    font-weight: bold;
    color: #046E6E;
    margin-bottom: 0.5em;
    display: block;
}

.informes hr {
    border: none;
    border-top: 1px solid #ccc;
    margin-top: 15px;
}

.inscricao .destaque {
    background-color: #fff3cd;
    border-left: 4px solid #ffc107;
    padding: 5px 8px;
    border-radius: 4px;
    font-weight: bold;
}

.radio-page {
    max-width: 900px;
    margin: 0 auto;
    padding: 2rem;
    text-align: center;
}

.radio-logo {
    width: 280px;            /* ligeiramente maior para destaque */
    max-width: 90%;          /* evita estourar em telas pequenas */
    display: block;
    margin: 1.5rem auto 2rem;
    border-radius: 10px;     /* leve arredondamento */
    box-shadow: 0 4px 12px rgba(0,0,0,0.15); /* sombra suave para destacar */
    transition: transform 0.3s ease;
}

.radio-logo:hover {
    transform: scale(1.03);  /* leve zoom ao passar o mouse */
}

.radio-links {
    list-style: none;
    padding: 0;
}

.radio-links li {
    margin: 0.5rem 0;
}

.radio-links a {
    text-decoration: none;
    color: #0056b3;
    font-weight: 600;
}

.radio-links a:hover {
    text-decoration: underline;
}

.radio-player {
    margin-top: 1.5rem;
}

.radio-player audio {
    width: 100%;
    max-width: 500px;
    outline: none;
}

.radio-status {
    margin-top: 0.5rem;
    font-style: italic;
    color: #444;
}

/* ----------------------
   Página de Áudios
------------------------ */
.audios {
    line-height: 1.7;
    margin-top: 10px;
}

.audios h2 {
    font-size: 1.4rem;
    color: #025159;
    margin-bottom: 1rem;
    border-bottom: 2px solid #0A9396;
    padding-bottom: 0.3rem;
}

/* Cada áudio listado */
.audio-item {
    background-color: #f9f9f9;
    border-left: 4px solid #0A9396;
    margin-bottom: 1.5em;
    padding: 15px 20px;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

/* Título / descrição do áudio */
.audio-title {
    font-weight: bold;
    font-size: 1.15rem;
    color: #046E6E;
    margin-bottom: 0.6rem;
}

/* Player */
.audio-item audio {
    width: 100%;
    margin-top: 0.5rem;
    outline: none;
}

/* Link de download */
.audio-download {
    display: inline-block;
    margin-top: 0.7rem;
    font-weight: bold;
    color: #0A9396;
}

.audio-download:hover,
.audio-download:focus {
    text-decoration: underline;
}

/* ----------------------
   Categorias de Áudios
------------------------ */

/* Título da categoria */
.audio-categoria {
    font-size: 1.4rem;
    margin: 2rem 0 1rem;
    color: #025159;
    border-bottom: 2px solid #0A9396;
    padding-bottom: 0.3rem;
}

/* Caixa geral das categorias */
.audio-categoria-bloco {
    margin-top: 1.5rem;
}

/* Tags de categoria (opcional para usar depois) */
.audio-tag {
    display: inline-block;
    padding: 3px 6px;
    margin-left: 8px;
    background: #0A9396;
    color: #fff;
    border-radius: 5px;
    font-size: 0.8rem;
    font-weight: bold;
}

/* ----------------------
   Página de Certificados
------------------------ */
.certificados {
    line-height: 1.7;
    margin-top: 10px;
}

.certificados h1 {
    font-size: 1.6rem;
    color: #025159;
    margin-bottom: 1rem;
    border-bottom: 2px solid #0A9396;
    padding-bottom: 0.4rem;
}

.cert-form {
    background-color: #f9f9f9;
    border-left: 4px solid #0A9396;
    padding: 20px;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    max-width: 600px;
}

.cert-input {
    width: 100%;
    max-width: 500px;
    padding: 10px;
    font-size: 1rem;
    border: 1px solid #bbb;
    border-radius: 6px;
    margin-top: 5px;
}

.cert-botao {
    background-color: #025159;
    color: #fff;
    padding: 12px 20px;
    font-size: 1rem;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-weight: bold;
}

.cert-botao:hover {
    background-color: #046E6E;
}

.cert-info {
    margin-top: 1rem;
    font-style: italic;
    color: #444;
}
/* ----------------------
   Resultados de Certificados
------------------------ */
.cert-resultados {
    line-height: 1.7;
    margin-top: 10px;
}

.cert-resultados h1 {
    font-size: 1.6rem;
    color: #025159;
    margin-bottom: 1rem;
    border-bottom: 2px solid #0A9396;
    padding-bottom: 0.4rem;
}

.cert-item {
    background-color: #f9f9f9;
    border-left: 4px solid #0A9396;
    margin-bottom: 1.5em;
    padding: 15px 20px;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.cert-item strong {
    color: #046E6E;
    font-size: 1.1rem;
}

.cert-item .cert-link {
    display: inline-block;
    margin-top: 8px;
    font-weight: bold;
    color: #0A9396;
}

.cert-item .cert-link:hover {
    text-decoration: underline;
}

.cert-voltar {
    margin-top: 1rem;
    display: inline-block;
    font-weight: bold;
    color: #025159;
    text-decoration: underline;
}
/* ----------------------
   Inscrição nas Oficinas
------------------------ */
.oficinas {
    line-height: 1.7;
    margin-top: 10px;
}

.oficinas h2 {
    font-size: 1.3rem;
    color: #025159;
    margin-top: 1.5em;
    border-bottom: 2px solid #0A9396;
    padding-bottom: 0.3em;
}

.oficinas-form {
    background-color: #f9f9f9;
    border-left: 4px solid #0A9396;
    padding: 20px;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    max-width: 650px;
    margin-top: 1rem;
}

.oficinas-form label {
    font-weight: bold;
    color: #025159;
}

.oficinas-form input,
.oficinas-form select {
    width: 100%;
    max-width: 560px;
    padding: 10px;
    font-size: 1rem;
    border: 1px solid #bbb;
    border-radius: 6px;
    margin-top: 5px;
}

.oficinas-form button {
    background-color: #025159;
    color: #fff;
    padding: 12px 20px;
    font-size: 1rem;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-weight: bold;
}

.oficinas-form button:hover,
.oficinas-form button:focus {
    background-color: #046E6E;
}

.oficinas-mensagem {
    padding: 12px 15px;
    border-radius: 6px;
    margin: 1rem 0;
    font-weight: bold;
}

.oficinas-mensagem p {
    margin: 0.3em 0;
}

.oficinas-mensagem.sucesso {
    background-color: #d1e7dd;
    border-left: 4px solid #0A9396;
}

.oficinas-mensagem.erro {
    background-color: #fff3cd;
    border-left: 4px solid #ffc107;
}

.oficinas-vagas {
    list-style: none;
    padding: 0;
    margin-left: 0;
}

.oficinas-vagas li {
    background-color: #f9f9f9;
    border-left: 4px solid #0A9396;
    margin-bottom: 1em;
    padding: 10px 15px;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}
/* ----------------------
   Escolha da Camiseta
------------------------ */
.camiseta {
    line-height: 1.7;
    margin-top: 10px;
}

.camiseta-form {
    background-color: #f9f9f9;
    border-left: 4px solid #0A9396;
    padding: 20px;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    max-width: 650px;
    margin-top: 1rem;
}

.camiseta-form label {
    font-weight: bold;
    color: #025159;
}

.camiseta-form input,
.camiseta-form select {
    width: 100%;
    max-width: 560px;
    padding: 10px;
    font-size: 1rem;
    border: 1px solid #bbb;
    border-radius: 6px;
    margin-top: 5px;
}

.camiseta-form button {
    background-color: #025159;
    color: #fff;
    padding: 12px 20px;
    font-size: 1rem;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-weight: bold;
}

.camiseta-form button:hover,
.camiseta-form button:focus {
    background-color: #046E6E;
}

.camiseta-mensagem {
    padding: 12px 15px;
    border-radius: 6px;
    margin: 1rem 0;
    font-weight: bold;
}

.camiseta-mensagem p {
    margin: 0.3em 0;
}

.camiseta-mensagem.sucesso {
    background-color: #d1e7dd;
    border-left: 4px solid #0A9396;
}

.camiseta-mensagem.erro {
    background-color: #fff3cd;
    border-left: 4px solid #ffc107;
}
