.contact-form{background:white;padding:2.5rem;border-radius:1rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);border:1px solid #e5e7eb}.form-header{margin-bottom:2rem}.form-header h2{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.form-header p{color:#6b7280;line-height:1.6}.success-message{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:.75rem;padding:1.5rem;margin-bottom:2rem;display:flex;align-items:flex-start;gap:1rem}.success-icon{font-size:1.5rem;flex-shrink:0}.success-message h4{color:#065f46;margin-bottom:.5rem;font-size:1.1rem}.success-message p{color:#047857;margin:0;line-height:1.5}.contact-form-container{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:600;color:#374151;margin-bottom:.5rem;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:.5rem;font-size:1rem;transition:border-color .3s ease,box-shadow .3s ease;background:white}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#059669;box-shadow:0 0 0 3px rgba(5,150,105,.1)}.form-group textarea{resize:vertical;min-height:120px;font-family:inherit}.form-options{margin:1rem 0}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;color:#6b7280;font-size:.9rem;line-height:1.4}.checkbox-label input[type=checkbox]{width:1.125rem;height:1.125rem;margin-top:.125rem;accent-color:#059669}.submit-btn{background:#059669;color:white;border:none;padding:1rem 2rem;border-radius:.75rem;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background .3s ease,transform .2s ease;display:flex;align-items:center;justify-content:center;gap:.75rem}.submit-btn:hover:not(:disabled){background:#047857;transform:translateY(-2px)}.submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.loading-spinner{width:1.25rem;height:1.25rem;border:2px solid transparent;border-top-color:white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.form-footer{text-align:center;padding-top:1rem;border-top:1px solid #e5e7eb}.form-footer p{color:#6b7280;font-size:.875rem;margin:0}.form-footer strong{color:#374151}@media (max-width:768px){.contact-form{padding:2rem 1.5rem}.form-row{grid-template-columns:1fr;gap:1rem}.form-header h2{font-size:1.75rem}}@media (max-width:480px){.contact-form{padding:1.5rem 1rem}.success-message{flex-direction:column;text-align:center;gap:.5rem}}.contact-map{width:100%}.map-card{background:white;padding:2rem;border-radius:1rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);border:1px solid #e5e7eb}.map-header{margin-bottom:1.5rem}.map-header h3{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.map-header p{color:#6b7280;margin:0}.location-selector{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.location-btn{background:white;border:2px solid #e5e7eb;color:#6b7280;padding:.75rem 1rem;border-radius:.5rem;cursor:pointer;transition:all .3s ease;font-weight:500;font-size:.9rem;flex:1 1;min-width:120px}.location-btn.active,.location-btn:hover{background:#059669;color:white;border-color:#059669}.map-container{margin-bottom:1.5rem;border-radius:.75rem;overflow:hidden;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.map-placeholder{height:200px;background:linear-gradient(135deg,#86efac,#4ade80);display:flex;align-items:center;justify-content:center;position:relative}.map-overlay{text-align:center;color:white;background:rgba(5,150,105,.9);padding:1.5rem;border-radius:.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.map-pin{font-size:2rem;margin-bottom:.5rem;display:block}.map-overlay h4{margin-bottom:.5rem;font-size:1.1rem}.map-overlay p{margin-bottom:.75rem;opacity:.9;font-size:.9rem}.map-coordinates{display:flex;gap:1rem;justify-content:center;font-size:.8rem;opacity:.8}.location-details{display:flex;flex-direction:column;gap:1.5rem}.detail-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#f8fafc;border-radius:.75rem}.detail-item.small{padding:.75rem;background:white;border:1px solid #e5e7eb}.detail-icon{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:white;border-radius:.5rem;box-shadow:0 2px 4px rgba(0,0,0,.1);flex-shrink:0}.detail-item.small .detail-icon{width:35px;height:35px;font-size:1.25rem}.detail-content h4{font-size:1.1rem;font-weight:600;color:#1f2937;margin-bottom:.25rem}.detail-content p{color:#6b7280;margin:0;line-height:1.4}.detail-item.small strong{display:block;color:#374151;font-size:.8rem;margin-bottom:.25rem}.detail-item.small p{color:#059669;font-weight:500;font-size:.9rem;margin:0}.detail-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem}.map-actions{display:flex;gap:.75rem}.action-btn{flex:1 1;padding:.75rem 1rem;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.action-btn.primary{background:#059669;color:white}.action-btn.primary:hover{background:#047857;transform:translateY(-2px)}.action-btn.secondary{background:white;color:#374151;border:2px solid #e5e7eb}.action-btn.secondary:hover{border-color:#059669;color:#059669}.transportation-info{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:.75rem;padding:1.25rem}.transportation-info h5{color:#065f46;margin-bottom:.75rem;font-size:1rem;font-weight:600}.transport-methods{display:flex;flex-direction:column;gap:.5rem}.transport-item{display:flex;align-items:center;gap:.75rem;color:#047857;font-size:.9rem;font-weight:500}.transport-icon{font-size:1.1rem;width:25px}@media (max-width:768px){.map-card{padding:1.5rem}.location-selector{flex-direction:column}.location-btn{min-width:auto}.detail-grid{grid-template-columns:1fr}.map-actions{flex-direction:column}.map-placeholder{height:150px}}@media (max-width:480px){.map-card{padding:1.25rem}.detail-item{flex-direction:column;text-align:center;gap:.75rem}.transport-methods{align-items:center}}