body {
    font-family: Arial, sans-serif;
}

.kaushan-script-regular {
    font-family: "Kaushan Script", cursive;
    font-weight: 400;
    font-style: normal;
}

.montserrat-black900 {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
}


.alinhar-centro {
    display: flex;
    align-items: center;
    /* alinha verticalmente */
}

/* Fundo1 */
.fundo1 {
    background: url('fundo1.png') center/cover no-repeat;

    /* altura maior */
   
    /* full width garantido */
   
    align-items: center;
    justify-content: center;
    text-align: center;
    color: white;
}




.rodape {
    background: url('rodape.png') center/cover no-repeat;
    min-height: 63vh;
    margin: 0px;
}


.h1_especial {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 4vw;
    font-weight: 900;
    line-height: 1.1em;
    color: #FFFFFFFF;
}

.titulo-grosso {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 800;
    /* bem grosso */
}

/* Banner */
#banner {
    position: relative;
    min-height: 100vh;
    /* width: 100vw; */
    overflow: hidden;
    /* impede barras de rolagem */
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: white;
}

/* Vídeo de fundo */
#bg-video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: 0;
    transform: translate(-50%, -50%);
    object-fit: cover;
}

/* Máscara preta translúcida */
#banner .overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    /* 0.1 a 0.9 = intensidade */
    z-index: 1;
}

/* Conteúdo do banner */
.banner-content {
    position: relative;
    z-index: 2;
    margin-top: -10vh;
}


.box {
    background: rgba(0, 0, 0, 0.5);
}


.h1box {
    max-width: 70vw;
    border-radius: 10px;
    text-align: center !important;
}



/* Galeria */
.gallery img {
    width: 100%;
    border-radius: 10px;
}

/* Simulador */
#simulador-box {
    background: #f3f3f3;
    padding: 25px;
    border-radius: 10px;
}

.thumb {
    width: 180px;
    height: 120px;
    object-fit: cover;
    border-radius: 10px;
    cursor: pointer;
    transition: .3s;
}

.thumb:hover {
    transform: scale(1.05);
}

.cor-verde {
    color: #3f8556ff !important;
}

.cor-laranja {
    color: rgb(218, 113, 53) !important;
}

.btn-primary {
    color: #ffffffff !important;
    background-color: #3f8556ff !important;
    border: none;
}

.btn-primary:hover {
    color: #ffffffff !important;
    background-color: #22442dff !important;
    border: none;
}



/* Mobile (até 768px) remove o max-width */
@media (max-width: 768px) {
    .h1box {
        max-width: none;
        width: 100%;
        /* opcional */
    }

    .h1_especial {
        font-family: Arial, Helvetica, sans-serif;
        font-size: 7vw;
        font-weight: 900;
        line-height: 1.1em;
        color: #FFFFFFFF;
    }
}