.contact-section{padding:40px 0;background-color:#f9f9f9}.contact-form-container{max-width:800px;margin:0 auto;background:#fff;padding:30px 40px;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.05)}.form-intro p{font-size:1rem;line-height:1.7;color:#555;margin-bottom:30px;background-color:#fdfaf8;padding:15px;border-radius:8px;border-left:4px solid #e60012}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333}.form-group label .required{color:#e60012;font-size:.9em;margin-left:5px}.form-control{width:100%;padding:12px 15px;font-size:1rem;border:1px solid #ccc;border-radius:6px;transition:border-color .2s,box-shadow .2s}.form-control:focus{border-color:#e60012;box-shadow:0 0 0 3px rgba(230,0,18,.15);outline:0}.form-control.is-invalid{border-color:#dc3545}textarea.form-control{resize:vertical;min-height:150px}.invalid-feedback{color:#dc3545;font-size:.9em;margin-top:5px;display:none}.form-control.is-invalid+.invalid-feedback{display:block}.datetime-group{display:flex;align-items:center;gap:10px}.datetime-group input[type=date].form-control{flex-basis:180px;flex-grow:1}.datetime-group .time-select.form-control{flex-basis:80px;flex-grow:0}.datetime-group span{font-weight:500}.form-subtitle{font-size:1.3rem;color:#6d4431;margin-top:40px;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #f0e9e6}.form-actions{margin-top:var(--spacing-lg);text-align:center}.privacy-notice{font-size:var(--font-size-sm);color:var(--gray-dark);margin-bottom:var(--spacing-md)}.privacy-notice a{color:var(--primary);text-decoration:underline}.form-actions .btn:disabled{background-color:#ccc;border-color:#ccc;cursor:not-allowed;opacity:.7}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:8px;font-size:1rem}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.btn-primary{padding:15px 30px;font-size:1.1rem;font-weight:700;color:#fff;background-color:#e60012;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s,transform .2s,box-shadow .3s;box-shadow:0 4px 15px rgba(230,0,18,.2)}.btn-primary:hover{background-color:#c00;transform:translateY(-2px);box-shadow:0 6px 20px rgba(230,0,18,.3)}@media (max-width:768px){.contact-form-container{padding:20px}}