/* ==========================================================
   WORKCLYMA
   style.css
   ========================================================== */

/* ==========================
   RESET
========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Inter',Arial,Helvetica,sans-serif;
    font-size:16px;
    line-height:1.7;
    color:#303030;
    background:#ffffff;
}

img{
    max-width:100%;
    height:auto;
    display:block;
}

a{
    text-decoration:none;
}

ul{
    list-style:none;
}

/* ==========================
   VARIÁVEIS
========================== */

:root{
    --azul:#0B4F9F;
    --azul-escuro:#06366D;
    --verde:#00A651;
    --verde-hover:#008943;
    --cinza:#f5f7fa;
    --texto:#333;
    --texto-claro:#666;
    --branco:#fff;
    --sombra:0 8px 30px rgba(0,0,0,.08);
    --radius:16px;
}

/* ==========================
   CONTAINER
========================== */

.container{
    width:92%;
    max-width:1200px;
    margin:auto;
}

/* ==========================
   TIPOGRAFIA
========================== */

h1{
    font-size:54px;
    line-height:1.1;
    color:var(--azul-escuro);
    margin-bottom:30px;
    font-weight:800;
}

h2{
    font-size:38px;
    color:var(--azul-escuro);
    margin-bottom:25px;
    text-align:center;
}

h3{
    font-size:24px;
    margin-bottom:15px;
    color:var(--azul);
}

p{
    color:var(--texto-claro);
    margin-bottom:18px;
}

/* ==========================
   HEADER
========================== */

header{
    position:sticky;
    top:0;
    z-index:999;
    background:#fff;
    box-shadow:0 1px 15px rgba(0,0,0,.05);
}

/* barra principal: logos + menu na mesma linha */
.header-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:18px 0;
    gap:24px;
}

/* permitir que o menu ocupe o centro e se ajuste */
.menu-header{
    flex:1;
}

/* alinhar items do menu ao centro da barra */
.menu-header ul{
    justify-content:center;
}

/* limitar tamanho das logos */
.logo-boog img{
    max-height:50px;
    height:auto;
    width:auto;
}

.logo-workclyma img{
    max-width:100px; /* ajuste fino do logo Workclyma */
    height:auto;
}

/* ==========================
   MENU
========================== */

nav ul{
    display:flex;
    gap:35px;
    align-items:center;
}

nav a{
    color:#333;
    font-weight:600;
    transition:.30s;
}

nav a:hover{
    color:var(--azul);
}

/* ==========================
   BOTÃO TOPO (MENU)
========================== */

.botao-topo{
    background:var(--verde);
    color:#fff;
    padding:14px 24px;
    border-radius:40px;
    font-weight:bold;
    transition:.30s;
}

.botao-topo:hover{
    background:var(--verde-hover);
    transform:translateY(-2px);
}

/* ==========================
   HERO
========================== */

.hero{
    padding:90px 0;
    background:linear-gradient(#ffffff,#f6f9fc);
}

.hero-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:center;
}

.tag{
    display:inline-block;
    background:#E8F2FF;
    color:var(--azul);
    padding:10px 18px;
    border-radius:30px;
    font-weight:700;
    margin-bottom:25px;
}

.hero p{
    font-size:19px;
    margin-bottom:35px;
}

/* ==========================
   BOTÕES HERO
========================== */

.hero-botoes{
    display:flex;
    gap:20px;
    margin-top:35px;
    margin-bottom:45px;
}

.btn-principal{
    background:var(--verde);
    color:#fff;
    padding:16px 34px;
    border-radius:50px;
    text-align:center;
    font-weight:700;
    transition:.30s;
}

.btn-principal:hover{
    background:var(--verde-hover);
    transform:translateY(-3px);
}

.btn-secundario{
    border:2px solid var(--azul);
    color:var(--azul);
    padding:15px 34px;
    border-radius:50px;
    transition:.30s;
    font-weight:700;
}

.btn-secundario:hover{
    background:var(--azul);
    color:#fff;
}

/* ==========================
   NÚMEROS
========================== */

.hero-numeros{
    display:flex;
    gap:50px;
    margin-top:30px;
}

.hero-numeros strong{
    display:block;
    font-size:34px;
    color:var(--azul);
}

.hero-numeros span{
    color:#666;
    font-size:15px;
}

/* ==========================
   IMAGEM HERO
========================== */

.hero-imagem{
    text-align:center;
}

.hero-imagem img{
    border-radius:20px;
    box-shadow:var(--sombra);
}

/* ==========================
   ESPAÇAMENTO PADRÃO
========================== */

section{
    padding:90px 0;
}

/* ==========================================================
   BENEFÍCIOS
========================================================== */

.beneficios{
    background:#ffffff;
}

.cards-beneficios{
    margin-top:60px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:35px;
}

.card{
    background:#fff;
    border-radius:18px;
    padding:35px;
    box-shadow:var(--sombra);
    transition:.35s;
    border:1px solid #ececec;
}

.card:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 45px rgba(0,0,0,.12);
}

.card img{
    width:70px;
    margin-bottom:25px;
}

.card h3{
    margin-bottom:18px;
}

.card p{
    margin-bottom:0;
}

/* ==========================================================
   COMO FUNCIONA
========================================================== */

.como-funciona{
    background:var(--cinza);
}

.timeline{
    margin-top:70px;
    display:grid;
    grid-template-columns:repeat(6,1fr); /* 6 etapas na mesma linha em telas grandes */
    gap:30px;
}

.etapa{
    background:#fff;
    padding:35px;
    border-radius:18px;
    text-align:center;
    box-shadow:var(--sombra);
    transition:.30s;
}

.etapa:hover{
    transform:translateY(-6px);
}

.etapa span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:60px;
    height:60px;
    margin:auto;
    margin-bottom:25px;
    border-radius:50%;
    background:var(--verde);
    color:#fff;
    font-size:24px;
    font-weight:bold;
}

.etapa h3{
    margin-bottom:15px;
}

.etapa p{
    font-size:15px;
}

/* ==========================================================
   RECURSOS
========================================================== */

.recursos{
    background:#ffffff;
}

.grid-recursos{
    margin-top:50px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
}

.grid-recursos div{
    background:#fff;
    border-radius:15px;
    padding:20px;
    box-shadow:var(--sombra);
    font-weight:600;
    transition:.30s;
    border-left:5px solid var(--verde);
}

.grid-recursos div:hover{
    transform:translateY(-5px);
    border-left:5px solid var(--azul);
}

/* ==========================================================
   METODOLOGIA
========================================================== */

.metodologia-home{
    background:linear-gradient(#ffffff,#f5f8fb);
}

.metodologia-home .container{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:70px;
    align-items:center;
}

.metodologia-home h2{
    text-align:left;
}

.metodologia-home p{
    margin-bottom:22px;
}

.metodologia-home a{
    color:var(--azul);
    font-weight:700;
}

.metodologia-home .btn-principal{
    display:inline-block;
    margin-top:15px;
    color:#fff;
}

.metodologia-home img{
    border-radius:20px;
    box-shadow:var(--sombra);
}

/* ==========================================================
   FAQ
========================================================== */

.faq{
    background:#ffffff;
}

.faq .container{
    max-width:900px;
}

.faq-item{
    background:#fff;
    border-radius:16px;
    margin-bottom:20px;
    padding:30px;
    box-shadow:var(--sombra);
    border-left:6px solid var(--azul);
    transition:.30s;
}

.faq-item:hover{
    transform:translateY(-4px);
    box-shadow:0 15px 35px rgba(0,0,0,.10);
}

.faq-item h3{
    color:var(--azul-escuro);
    margin-bottom:15px;
}

.faq-item p{
    margin-bottom:0;
}

/* ==========================================================
   CTA
========================================================== */

.cta{
    background:linear-gradient(135deg,var(--azul),var(--azul-escuro));
    color:#fff;
    text-align:center;
}

.cta h2{
    color:#fff;
}

.cta p{
    color:rgba(255,255,255,.90);
    max-width:750px;
    margin:25px auto 40px;
    font-size:19px;
}

.cta .btn-principal{
    display:inline-block;
    background:#fff;
    color:var(--azul);
}

.cta .btn-principal:hover{
    background:#f2f2f2;
}

/* ==========================================================
   FOOTER
========================================================== */

footer{
    background:#1a1f26;
    color:#fff;
    padding-top:70px;
}

.footer-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1.5fr;
    gap:50px;
}

.logo-footer{
    width:220px;
    margin-bottom:25px;
}

footer h3{
    color:#fff;
    margin-bottom:20px;
}

footer p{
    color:#d5d5d5;
}

footer ul li{
    margin-bottom:14px;
}

footer a{
    color:#dcdcdc;
    transition:.30s;
}

footer a:hover{
    color:#ffffff;
    padding-left:5px;
}

.copyright{
    margin-top:60px;
    padding:25px 0;
    border-top:1px solid rgba(255,255,255,.10);
    text-align:center;
}

.copyright p{
    margin:0;
    color:#bdbdbd;
}

/* ==========================================================
   BOTÃO VOLTAR AO TOPO
========================================================== */

.topo{
    position:fixed;
    right:25px;
    bottom:25px;
    width:50px;
    height:50px;
    border-radius:50%;
    background:var(--verde);
    color:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:22px;
    box-shadow:var(--sombra);
    transition:.30s;
    z-index:999;
}

.topo:hover{
    background:var(--azul);
    transform:translateY(-4px);
}

/* ==========================================================
   ANIMAÇÕES
========================================================== */

.card,
.etapa,
.grid-recursos div,
.faq-item{
    animation:fadeUp .8s ease;
}

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(30px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* ==========================================================
   SELEÇÃO DE TEXTO
========================================================== */

::selection{
    background:var(--verde);
    color:#fff;
}

/* ==========================================================
   BARRA DE ROLAGEM
========================================================== */

::-webkit-scrollbar{
    width:10px;
}

::-webkit-scrollbar-track{
    background:#ececec;
}

::-webkit-scrollbar-thumb{
    background:var(--azul);
    border-radius:10px;
}

::-webkit-scrollbar-thumb:hover{
    background:var(--azul-escuro);
}

/* ==========================================================
   RESPONSIVO
========================================================== */

@media(max-width:1100px){
    .timeline{
        grid-template-columns:repeat(3,1fr); /* 3 colunas */
    }

    .grid-recursos{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:991px){

    .header-bar{
        flex-direction:column;
        gap:18px;
    }

    .menu-header ul{
        flex-wrap:wrap;
        justify-content:center;
    }

    .hero-grid{
        grid-template-columns:1fr;
        text-align:center;
    }

    .hero-botoes{
        justify-content:center;
    }

    .hero-numeros{
        justify-content:center;
    }

    h1{
        font-size:40px;
    }

    h2{
        font-size:32px;
    }
}

@media(max-width:900px){
    .cards-beneficios{
        grid-template-columns:1fr;
    }

    .timeline{
        grid-template-columns:repeat(2,1fr); /* 2 colunas */
    }

    .grid-recursos{
        grid-template-columns:repeat(2,1fr);
    }

    .metodologia-home .container{
        grid-template-columns:1fr;
    }

    .metodologia-home h2{
        text-align:center;
    }

    .metodologia-home{
        text-align:center;
    }
}

@media(max-width:700px){
    .footer-grid{
        grid-template-columns:1fr;
        text-align:center;
    }

    .logo-footer{
        margin:auto;
        margin-bottom:25px;
    }

    footer a:hover{
        padding-left:0;
    }

    .cta p{
        font-size:17px;
    }

    .topo{
        right:15px;
        bottom:15px;
    }
}

@media(max-width:640px){

    nav ul{
        flex-wrap:wrap;
        justify-content:center;
        gap:18px;
    }

    .hero{
        padding:50px 0;
    }

    .hero-botoes{
        flex-direction:column;
    }

    .btn-principal,
    .btn-secundario{
        display:block;
    }

    .hero-numeros{
        flex-direction:column;
        gap:20px;
    }

    h1{
        font-size:34px;
    }

    h2{
        font-size:28px;
    }

    .grid-recursos{
        grid-template-columns:1fr;
    }

    .card{
        padding:28px;
    }

    .etapa{
        padding:28px;
    }
}

@media(max-width:600px){
    .grid-recursos{
        grid-template-columns:1fr;
    }
    .timeline{
        grid-template-columns:1fr; /* 1 coluna no celular */
    }
}

@media(max-width:500px){
    .faq-item{
        padding:22px;
    }

    .cta{
        padding:70px 0;
    }

    section{
        padding:70px 0;
    }
}

/* ==========================================================
   RESPONSIVO FOOTER EXTRA
========================================================== */

@media(max-width:1000px){
    .footer-grid{
        grid-template-columns:1fr 1fr;
    }
}