/* Home (front-page.php) */

/* ---------- Banner ---------- */
.home-hero {
    background: url("../images/banner-testev2.webp") center / cover;
}

.home-hero-box {
    padding: 120px 0;
    text-align: center;
}

/* No desktop o bloco ocupa a largura toda do container (como um .row) */
@media (min-width: 1201px) {
    .home-hero-box {
        margin: 0 calc(-0.5 * var(--bs-gutter-x));
    }
}

.home-hero-texto {
    padding-bottom: 0;
    color: var(--bgs-cinza-claro);
    font-family: var(--bgs-fonte-titulo);
    font-size: 58px;
    text-transform: uppercase;
}

.home-hero-botoes {
    margin-top: 30px;
}

.home-hero-botoes a {
    margin: 0 30px;
}

.home-hero-botoes a:first-child {
    margin-right: 1rem;
}

/* ---------- Números ---------- */
.home-numeros {
    margin-top: -30px;
    margin-bottom: 20px;
}

.home-numeros-row {
    gap: 60px;
    text-align: center;
}

.home-numero {
    padding-bottom: 0;
    font-family: var(--bgs-fonte-druk-bold);
    font-size: 42px;
    line-height: 1;
}

.home-numero-legenda {
    margin-top: 10px;
    font-family: var(--bgs-fonte-druk);
    font-size: 16px;
    line-height: 1.2rem;
    text-transform: uppercase;
}

/* ---------- Carrossel de marcas ---------- */
.home-marcas {
    padding: 1.5rem 40px;
    background-color: var(--bgs-branco);
}

.home-marcas-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 20px;
}

/* Logos quadrados: 120px, encolhendo junto com o slide em telas estreitas */
.home-marcas-slide img {
    width: 120px;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

.home-marcas-aviso {
    margin-top: 4px;
    color: var(--bgs-cinza-copyright);
    font-size: 0.78rem;
    text-align: center;
}

/* ---------- Vídeo oficial ---------- */
.home-video {
    padding: 3rem 0;
    background-color: var(--bgs-azul);
    border: 10px solid var(--bgs-grafite);
}

.home-video-inner {
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    padding: 0 1.5rem;
    text-align: center;
}

.home-video-titulo {
    margin-bottom: 1.5rem;
    color: var(--bgs-branco);
    font-size: 2.5rem;
}

.home-video-wrapper {
    position: relative;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 */
    overflow: hidden;
    border: 5px solid var(--bgs-grafite);
}

.home-video-wrapper iframe {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

/* ---------- Projetos ---------- */
.home-destaques {
    margin-top: 60px;
}

.home-destaques-apoio {
    display: flex;
    align-items: center;
}

.home-projeto-detalhes {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 30px 0;
}

.home-projeto-titulo {
    margin: 0;
    padding-bottom: 10px;
    font-family: var(--bgs-fonte-druk);
    font-size: 28px;
    font-weight: normal;
    line-height: 1.6;
}

.home-projeto-texto {
    font-family: var(--bgs-fonte-roboto);
    text-align: justify;
}

.home-projeto-botao {
    margin-top: auto;
    padding-top: 30px;
}

/* Entre tablet e desktop pequeno: 2 cards por linha */
@media (min-width: 768px) and (max-width: 1024px) {
    .home-projetos .row.gap-4 > .col-md {
        flex: 0 0 calc(50% - 1rem);
        max-width: calc(50% - 1rem);
    }
}

/* ---------- Área B2B ---------- */
.home-b2b {
    margin-top: 60px;
    padding: 60px 0;
    background-color: var(--bgs-laranja);
    border: 10px solid var(--bgs-preto);
    color: var(--bgs-cinza-claro);
}

.home-b2b-foto img {
    margin-bottom: 30px;
}

.home-b2b-titulo {
    margin-top: 10px;
    color: var(--bgs-cinza-claro);
}

.home-b2b-abas {
    margin: 3rem 0 1rem;
}

.home-b2b-abas .nav-link {
    padding: 0.5rem 1rem;
    border: 0;
    border-top: 4px solid transparent;
    border-radius: 0;
    color: var(--bgs-cinza-aba);
    font-family: var(--bgs-fonte-roboto);
    font-weight: bold;
    text-transform: uppercase;
}

.home-b2b-abas .nav-link:hover,
.home-b2b-abas .nav-link:focus {
    color: var(--bgs-cinza-claro);
}

.home-b2b-abas .nav-link.active {
    border: 4px solid var(--bgs-preto);
    background-color: var(--bgs-azul);
    color: var(--bgs-cinza-claro);
}

.home-b2b-detalhe {
    color: var(--bgs-cinza-detalhe);
    font-size: 14px;
    font-style: italic;
}

/* ---------- Notícias ---------- */
.home-noticias {
    text-align: center;
}

.home-noticias .secao-chapeu::before {
    right: 0;
    left: 0;
    margin: 0 auto;
}

.home-noticia-detalhes {
    padding: 30px 0;
    text-align: left;
}

.home-noticia-categoria {
    color: var(--bgs-vermelho-titulo);
    font-family: var(--bgs-fonte-roboto);
    font-size: 16px;
    text-transform: uppercase;
}

.home-noticia-titulo {
    margin: 0 0 45px;
    padding-bottom: 10px;
    color: inherit;
    font-family: var(--bgs-fonte-roboto);
    font-size: 24px;
    font-weight: 900;
    line-height: 1.3;
}

.home-noticia-botao {
    margin-top: 30px;
}

/* ---------- Telas menores ---------- */
@media (max-width: 1200px) {
    .home-hero-texto {
        font-size: 32px;
    }

    .home-hero-botoes {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .home-hero-botoes a,
    .home-hero-botoes a:first-child {
        width: fit-content;
        margin: 8px 0;
    }

    .home-numeros-row {
        gap: 30px;
    }

    .home-numero {
        font-family: var(--bgs-fonte-druk);
    }
}

@media (min-width: 992px) and (max-width: 1200px) {
    .home-b2b-abas .nav-link {
        padding: 10px 5px;
        font-size: 15px;
    }
}

@media (max-width: 768px) {
    .home-video-titulo {
        font-size: 2rem;
    }
}

@media (max-width: 767px) {
    .home-projeto-titulo,
    .home-projeto-texto,
    .home-destaques .secao-titulo,
    .home-destaques .secao-apoio {
        text-align: center;
    }

    .home-projeto-botao {
        display: flex;
        justify-content: center;
    }
}
