/* =========================================
   RESET E CONFIGURAÇÕES GERAIS
========================================= */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

/* Variáveis globais do projeto */
:root{

    --bg-dark:#020617;
    --bg-card:#07142e;

    --primary:#00cfff;

    --text-main:#ffffff;

    --titulo-main:5rem;

    --sub-titulo:2.5rem;

}

/* Define base de cálculo para REM */
html{
    font-size:62.5%;
}

/* Configurações gerais da página */
body{

    font-size:2rem;

    font-family:'Segoe UI',sans-serif;

    background-image:
    linear-gradient(
        135deg,
        #020617,
        #03152e,
        #07142e
    );

    color:var(--text-main);

    overflow-x:hidden;

}



/* =========================================
   CABEÇALHO E MENU DE NAVEGAÇÃO
========================================= */

.cabecalho{

    width:100%;

    padding:2rem;

}

.cabecalho__navbar{

    width:95%;

    margin:auto;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:2rem 4rem;

    background-color:rgba(255,255,255,.05);

    border-radius:3rem;

    box-shadow:
    0 0 20px rgba(0,207,255,.15);

}

/* Logo principal */
.cabecalho__logo img{

    height:8rem;

    box-shadow:
    0 0 20px rgba(0,207,255,.5);

    border-radius:1rem;

}

/* Lista de navegação */
.cabecalho__lista{

    display:flex;

    gap:4rem;

    list-style:none;

}

/* Links do menu */
.cabecalho__link{

    text-decoration:none;

    color:white;

    transition:.4s;

}

.cabecalho__link:hover{

    color:var(--primary);

}



/* =========================================
   SEÇÃO SOBRE O PROJETO
========================================= */

.sobre{

    width:100%;

    padding:8rem 0;

}

/* Container principal da seção */
.sobre__container{

    width:80%;

    margin:auto;

    background-color:rgba(255,255,255,.05);

    padding:6rem;

    border-radius:3rem;

    box-shadow:
    0 0 20px rgba(0,207,255,.15);

}

/* Título principal */
.sobre__title{

    font-size:var(--titulo-main);

    text-align:center;

    margin-bottom:4rem;

    text-shadow:
    0 0 20px rgba(0,207,255,.5);

}

/* Texto explicativo */
.sobre__text{

    text-align:center;

    line-height:2;

    color:#d7d7d7;

    margin-bottom:3rem;

}



/* =========================================
   SEÇÃO DE VALORES
========================================= */

.valores{

    width:100%;

    padding:4rem 0 10rem 0;

}

/* Cabeçalho da seção */
.valores__cabecalho{

    text-align:center;

    margin-bottom:5rem;

}

/* Título da seção */
.valores__title{

    font-size:4rem;

    margin-bottom:2rem;

}

/* Texto introdutório */
.valores__text{

    color:#d7d7d7;

}

/* Grid dos cards */
.valores__container{

    width:90%;

    margin:auto;

    display:grid;

    grid-template-columns:1fr 1fr 1fr;

    gap:3rem;

}

/* Card individual */
.valores__card{

    background-color:rgba(255,255,255,.05);

    padding:4rem;

    border-radius:3rem;

    transition:.5s;

    box-shadow:
    0 0 15px rgba(0,207,255,.1);

}

.valores__card:hover{

    box-shadow:
    0 0 35px rgba(0,207,255,.25);

}

/* Subtítulo dos cards */
.valores__sub-title{

    color:var(--primary);

    font-size:var(--sub-titulo);

    margin-bottom:2rem;

    text-align:center;

}

/* Texto dos cards */
.valores__card p{

    color:#d7d7d7;

    line-height:1.8;

}



/* =========================================
   RODAPÉ
========================================= */

.rodape{

    padding:4rem;

    text-align:center;

    border-top:1px solid rgba(0,207,255,.15);

}



/* =========================================
   BOTÃO SOS E MODAL DE EMERGÊNCIA
========================================= */

/* Botão flutuante SOS */
.sos-btn{

    position:fixed;

    bottom:25px;

    left:25px;

    width:70px;

    height:70px;

    border:none;

    border-radius:50%;

    background:#ff3333;

    color:white;

    font-size:2rem;

    cursor:pointer;

    z-index:9999;

}

/* Fundo escurecido do modal */
.sos-modal{

    display:none;

    position:fixed;

    top:0;
    left:0;

    width:100%;
    height:100%;

    background:rgba(0,0,0,.8);

    justify-content:center;

    align-items:center;

    z-index:10000;

}

/* Caixa do formulário SOS */
.sos-conteudo{

    width:400px;

    background:#07142e;

    padding:30px;

    border-radius:20px;

    display:flex;

    flex-direction:column;

    gap:15px;

}

/* Campos do formulário */
.sos-conteudo input,
.sos-conteudo textarea{

    padding:12px;

}

/* Botão enviar */
.sos-enviar{

    background:#00cfff;

    border:none;

    padding:12px;

    cursor:pointer;

}

/* Botão fechar */
.sos-fechar{

    background:#ff3333;

    border:none;

    padding:12px;

    color:white;

    cursor:pointer;

/* ==================================================
   BOTÃO SCROLL
================================================== */

html body #scrollTopBtn {
    left: 50%;
    transform: translateX(-50%);
}

html body #scrollTopBtn:hover {
    transform: translateX(-50%) scale(1.1);
    box-shadow: 0 0 15px rgba(0,207,255,0.4);
}

}
/* ==========================================
   ESTILO PADRÃO DO BOTÃO HAMBÚRGUER (PC/DESKTOP)
========================================== */
.cabecalho__hamburger {
    display: none; 
    background: none;
    border: none;
    color: var(--primary);
    font-size: 3rem;
    cursor: pointer;
    transition: 0.3s;
}

.cabecalho__hamburger:hover {
    transform: scale(1.1);
}

/* ==========================================
   RESPONSIVIDADE DO MENU HAMBÚRGUER 
========================================== */
@media (max-width: 900px) {
    .cabecalho__hamburger {
        display: block;
    }

    /* Ajusta o alinhamento horizontal do topo */
    .cabecalho__navbar {
        width: 90%;
        padding: 1.5rem 3rem;
        position: relative; 
        flex-direction: row;
        gap: 0;
    }

    /* Recolhe e esconde a lista principal para o formato hambúrguer */
    .cabecalho__lista {
        display: none; 
        flex-direction: column;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background-color: rgba(7, 20, 46, 0.95);
        backdrop-filter: blur(15px);
        border: 1px solid rgba(0, 207, 255, 0.2);
        border-radius: 2rem;
        padding: 3rem;
        gap: 2.5rem;
        box-shadow: 0 10px 30px rgba(0,0,0,0.5);
        z-index: 999;
    }

    /* Ativado dinamicamente via JS ao clicar no botão */
    .cabecalho__lista.active {
        display: flex;
    }

    /* Layout da sua página Sobre mantido intacto para tablets */
    .valores__container {
        grid-template-columns: 1fr;
    }

    .sobre__container {
        width: 90%;
    }

    .sobre__title {
        font-size: 4rem;
    }
}

/* ==========================================
   RESPONSIVIDADE GERAL PARA CELULARES 
========================================== */
@media(max-width:480px){
    html {
        font-size: 50%;
    }

    .cabecalho {
        padding: 1rem;
    }

    .cabecalho__navbar {
        padding: 2rem;
    }

    .cabecalho__logo img {
        height: 6rem;
    }

    .sobre {
        padding: 5rem 0;
    }

    .sobre__container {
        width: 95%;
        padding: 3rem;
    }

    .sobre__title {
        font-size: 3.5rem;
    }

    .sobre__text {
        font-size: 1.6rem;
        line-height: 1.8;
    }

    .valores {
        padding: 4rem 0;
    }

    .valores__title {
        font-size: 3rem;
    }

    .valores__container {
        width: 95%;
        grid-template-columns: 1fr;
    }

    .valores__card {
        padding: 3rem;
    }

    .valores__sub-title {
        font-size: 2rem;
    }

    .sos-conteudo {
        width: 90%;
        padding: 2rem;
    }

    .sos-btn {
        width: 60px;
        height: 60px;
        font-size: 1.6rem;
    }
}