/* public/css/contact.css */
.contact-header { background: linear-gradient(to right, #0b3d2c, #184c37); color: white; text-align: center; padding: 4rem 2rem 6rem; border-bottom-left-radius: 50% 20%; border-bottom-right-radius: 50% 20%; }
.contact-header h1 { font-size: 2.5rem; margin: 0; }
.contact-header p { margin-top: 0.5rem; font-size: 1.2rem; }
.contact-container { display: flex; flex-wrap: wrap; justify-content: center; padding: 2rem; gap: 2rem; margin-top: -4rem; position: relative; z-index: 10; }
.contact-form, .contact-info { background: #fff; padding: 2rem; border-radius: 12px; box-shadow: 0 10px 25px rgba(0,0,0,0.1); }
.contact-form { flex: 1 1 400px; }
.contact-form .row { display: flex; gap: 1rem; }
.contact-form input, .contact-form textarea { background-color: #e8f0e8; border: 1px solid #d1d5db; border-radius: 10px; padding: 0.75rem 1rem; margin-bottom: 1rem; font-size: 1rem; width: 100%; }
.contact-form button { background-color: #1e694d; color: #fff; border: none; border-radius: 20px; padding: 0.75rem 2rem; cursor: pointer; align-self: start; transition: background-color 0.3s; }
.contact-form button:hover { background-color: #13543d; }
.contact-info { flex: 1 1 300px; text-align: center; }
.contact-info .map-image { width: 100%; border-radius: 10px; margin-bottom: 1rem; }
.contact-info p { margin-bottom: 1rem; }
.contact-info a { color: #0a4c3d; text-decoration: none; margin: 0.25rem 0; display: block; }
.contact-info .icons a { display: inline-block; font-size: 1.5rem; margin: 0 0.5rem; color: #0a4c3d; }