/* ================================================= */
/* 0. CONFIGURAÇÃO BASE E FUNDO DE PÁGINA (FUNDO DIVIDIDO) */
/* ================================================= */

body {
    font-family: Arial, sans-serif;
    color: #333;
    margin: 0;
    padding: 0; 
    line-height: 1.6;

    /* TÉCNICA DO FUNDO DIVIDIDO AO MEIO */
    background-image: 
        /* Fundo na direita */
        url('images/fundo-formulario.png'), 
        /* Branco na esquerda */
        linear-gradient(to right, white 0%, white 100%); 
        
    /* OTIMIZAÇÃO DA PROPORÇÃO */
    background-size: 50% auto, cover; 
    background-position: right top, left; 
    background-repeat: no-repeat;
    background-attachment: fixed;
}

/* NOVO: BOX QUE GUARDA O LOGÓTIPO (Solução Definitiva para Alinhamento e Sobreposição) */
.logo-header {
    width: 100%;
    /* Altura que empurra o conteúdo em laptop */
    height: 100px; 
    /* Centra o logótipo */
    text-align: center; 
    padding-top: 20px; 
    /* Garante visibilidade sobre o fundo do body e blocos (z-index) */
    z-index: 100; 
    position: relative;
    /* Fundo branco para não mostrar a imagem de fundo por baixo */
    background-color: white; 
}


/* ESTILO DO LOGO SUPERIOR (Dentro da Box) */
.xdoc-logo-top {
    /* Flutua normalmente na box, é centrado por text-align: center; */
    max-width: 200px; 
    margin: 0; 
}


/* 1. LAYOUT PRINCIPAL (DUAS COLUNAS FLEXBOX) */

.main-wrapper {
    display: flex;
    max-width: 1200px; 
    /* margin-top: 0, pois o .logo-header já empurrou o bloco para baixo */
    margin: 0 auto 50px auto; 
    
    min-height: 650px; 
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
    
    position: relative; 
    padding-top: 0; 
    background-color: transparent; 
    z-index: 1; 
}


/* 2. ESTILOS DA COLUNA ESQUERDA (VERMELHA) */

.campaign-block {
    flex: 1;
    background-color: #CC0000;
    
    color: white; 
    padding: 30px;
    display: flex;
    flex-direction: column; 
    justify-content: space-between; 
    z-index: 2; 
    position: relative;
}

.campaign-block h2 {
    color: white; 
    font-size: 38px;
    font-weight: bold; 
    margin-top: 0;
    margin-bottom: 25px; 
    line-height: 1.2;
    position: relative; 
    z-index: 1;
}

.campaign-text-content p {
    color: white; 
    font-size: 18px; 
    margin-bottom: 25px; 
    line-height: 1.5;
    position: relative; 
    z-index: 1;
}

.logo-xerox-bottom {
    max-width: 90px;
    margin-top: 50px;
    position: relative; 
    z-index: 1;
}


/* 3. ESTILOS DA COLUNA DIREITA (FORMULÁRIO) */

.form-block {
    flex: 1; 
    
    /* OVERLAY BRANCO SEMITRANSPARENTE */
    background-color: rgba(255, 255, 255, 0.85); 

    padding: 30px;
    z-index: 2; 
}

/* ESTILIZAÇÃO DO TÍTULO DO FORMULÁRIO */
.form-block h1 {
    color: #CC0000;
    font-size: 30px;
    border-bottom: 2px solid #CC0000; 
    padding-bottom: 10px;
    margin-bottom: 20px;
}

.form-block .xerox-highlight {
    /* Cor e Tamanho para o "Xerox" */
    color: #333333; 
    font-size: 1.3em; 
    font-weight: bold;
    margin-right: 5px; 
}


/* 4. ESTILOS GERAIS DO FORMULÁRIO */

form { max-width: 100%; margin: 0; padding: 0; background-color: transparent; }
input[type="text"], input[type="email"], input[type="tel"] {
    width: 100%; padding: 12px; margin-bottom: 15px; border: 1px solid #ccc; border-radius: 0; box-sizing: border-box; font-size: 16px;
}
label {
    display: block; margin-bottom: 5px; margin-top: 15px; font-weight: normal; color: #444; font-size: 14px;
}
.checkbox-label { margin-top: 10px; font-size: 14px; font-weight: normal; }

.submit-red {
    display: block; width: 100%; padding: 15px 20px; background-color: #CC0000; color: white; border: none; border-radius: 0; cursor: pointer; font-size: 18px; font-weight: bold; margin-top: 30px; transition: background-color 0.3s ease;
}
.submit-red:hover { background-color: #A00000; }

/* 5. ESTILOS DO RODAPÉ FINAL */

.rodape-final {
    background-color: #CC0000; 
    color: white;
    text-align: center;
    padding: 10px 0;
    font-size: 12px;
    margin-top: 0; 
}

/* 6. RESPONSIVIDADE (Ajustada para o novo layout) */

@media (max-width: 800px) {
    /* Em mobile, remove-se o fundo dividido para legibilidade */
    body {
        background-image: none;
        background-color: #FFFFFF; 
    }
    
    /* LOGÓTIPO EM MOBILE: Ajustado para ser mais pequeno e visível */
    .logo-header {
        display: block; 
        height: 60px; /* Mais pequeno */
        padding-top: 10px;
        background-color: white; /* Fundo branco garantido */
    }
    .xdoc-logo-top {
        max-width: 100px; /* Logótipo mais pequeno em mobile */
    }
    
    .main-wrapper {
        flex-direction: column; 
        margin: 0 auto;
        padding-top: 0;
        box-shadow: none;
    }
    
    .campaign-block {
        order: 1; 
        padding: 20px;
        background-color: #CC0000; 
    }
    
    .form-block {
        order: 2; 
        padding: 20px;
        background-color: #FFFFFF; /* Fundo branco sólido em mobile */
    }
    
    .campaign-block h2 { font-size: 28px; margin-bottom: 15px; }
    .campaign-text-content p { font-size: 15px; margin-bottom: 15px; }
    .logo-xerox-bottom { margin-top: 30px; }
}