/* ================= ESTILOS ESPECÍFICOS DE CONTATO ================= */
    body { padding-top: 0; }

    /* Animação de Entrada */
    @keyframes fadeInUp {
        from { opacity: 0; transform: translateY(20px); }
        to { opacity: 1; transform: translateY(0); }
    }
    .animate-block {
        opacity: 0; animation: fadeInUp 0.8s ease-out forwards;
    }
    .delay-1 { animation-delay: 0.2s; }

    /* Grid de Contato */
    .contact-container {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
        margin-top: 20px;
    }

    /* Ajuste dos Inputs com Ícones */
    .input-group {
        position: relative;
        margin-bottom: 15px;
    }
    .input-group i {
        position: absolute;
        left: 15px;
        top: 50%;
        transform: translateY(-50%);
        z-index: 10;
        font-size: 16px;
    }
    .input-group textarea + i {
        top: 20px; 
        transform: none;
    }
    
    .input-group input, .input-group textarea, .input-group select {
        padding-left: 45px; 
        width: 100%;
        transition: all 0.3s ease;
    }

    /* Card de Informações (Lateral) */
    .info-card {
        background: #f8fbff;
        border: 1px solid #e1e4e8;
        border-radius: 8px;
        padding: 25px;
        height: 100%;
    }
    .info-item {
        display: flex; gap: 15px; margin-bottom: 20px; align-items: center;
        transition: transform 0.2s; cursor: pointer;
    }
    .info-item:hover { transform: translateX(5px); }
    .info-icon-box {
        width: 40px; height: 40px; background: #fff;
        border-radius: 50%; display: flex; align-items: center; justify-content: center;
        border: 1px solid #e1e4e8; color: var(--brand);
        box-shadow: 0 2px 5px rgba(0,0,0,0.05);
    }

    /* Mapa Visual (Simulado) */
    .map-placeholder {
        width: 100%; height: 200px;
        background: #eef5f9 url('https://user-images.githubusercontent.com/43313429/219878201-381c0383-e18d-4e20-944a-f2a87265913e.png') center/cover no-repeat; 
        border-radius: 8px;
        margin-top: 20px;
        border: 2px solid #fff;
        box-shadow: 0 4px 10px rgba(0,0,0,0.1);
        display: flex; align-items: center; justify-content: center;
        position: relative;
    }
    .map-pin {
        font-size: 40px; color: #d9534f;
        text-shadow: 0 2px 5px rgba(0,0,0,0.3);
        animation: bounce 2s infinite;
    }
    @keyframes bounce {
        0%, 20%, 50%, 80%, 100% {transform: translateY(0);}
        40% {transform: translateY(-10px);}
        60% {transform: translateY(-5px);}
    }

    /* Responsividade */
    @media (max-width: 768px) {
        .contact-container { grid-template-columns: 1fr; }
    }