/* Reset e Base */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: var(--font-body); color: var(--text-dark); line-height: 1.6; }
h1, h2, h3 { font-family: var(--font-heading); color: var(--primary-color); }

/* Layout Utilitários */
.container { max-width: 1100px; margin: 0 auto; padding: 0 20px; }
.section-light { background-color: var(--bg-light); padding: 60px 0; }
.section-white { background-color: var(--white); padding: 60px 0; }

/* Hero Section */
.hero { display: flex; align-items: center; padding: 80px 0; background: linear-gradient(to right, var(--bg-light) 70%, white 30%); }
.hero-content { display: flex; flex-direction: column-reverse; gap: 30px; }
@media(min-width: 768px) {
    .hero-content { flex-direction: row; align-items: center; }
    .hero-text { width: 50%; }
    .hero-image { width: 50%; text-align: right; }
}

/* Botões */
.btn-primary { 
    background-color: var(--accent-color); color: white; 
    padding: 15px 30px; border: none; border-radius: 50px; 
    font-weight: bold; cursor: pointer; transition: 0.3s;
    font-size: 1rem;
}
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 5px 15px rgba(0,0,0,0.1); }

/* Floating WhatsApp */
.floating-whatsapp {
    position: fixed; bottom: 20px; right: 20px;
    background-color: #25D366; color: white;
    width: 60px; height: 60px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 32px; box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    z-index: 1000; transition: 0.3s;
}
.floating-whatsapp:hover { transform: scale(1.1); }

/* Modal */
.modal { display: none; position: fixed; z-index: 2000; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.5); }
.modal-content { background-color: white; margin: 15% auto; padding: 30px; border-radius: 10px; width: 90%; max-width: 400px; position: relative; }
.close { position: absolute; right: 20px; top: 10px; font-size: 28px; cursor: pointer; }
input, select { width: 100%; padding: 12px; margin: 10px 0; border: 1px solid #ddd; border-radius: 5px; }