.contact-info-section{margin-bottom:2rem}.contact-info-header p{font-size:1.1rem;color:#333;margin-bottom:1rem;line-height:1.6}.contact-office-hours{font-weight:600;color:#17a2b8;font-size:1rem;margin-bottom:1.5rem!important}.contact-info-items{display:flex;gap:1rem;margin-bottom:1.5rem}.contact-info-item{flex:1;display:flex;align-items:center;padding:1rem;background:#f8f9fa;border-radius:8px;transition:all .3s ease}.contact-info-item:hover{background:#e9ecef;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.contact-info-item-icon{margin-right:1rem;display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#17a2b8;border-radius:50%;color:#fff}.contact-info-item-icon .material-icons{font-size:24px}.contact-info-item-content{flex:1}.contact-phone-link,.contact-email-link{color:#333;text-decoration:none;font-weight:500;font-size:1.1rem;transition:color .3s ease}.contact-phone-link:hover,.contact-email-link:hover{color:#17a2b8}.contact-callback-text{font-size:.95rem;color:#666;margin:1.5rem 0;line-height:1.5}.contact-form-container{max-width:600px;margin:2rem auto}.contact-form-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.1);overflow:hidden;transition:box-shadow .3s ease}.contact-form-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.15)}.contact-form-content{padding:2rem}.contact-input-group{display:flex;flex-direction:column;gap:2rem}.contact-input-field{position:relative;margin-bottom:2rem}.contact-input{width:100%;padding:16px 14px;border:2px solid #e8e9ea;border-radius:12px;background:#f8f9fa;font-size:16px;color:#333;outline:none;transition:all .3s ease;box-shadow:0 2px 4px rgba(0,0,0,.02);box-sizing:border-box}.contact-input:focus{border-color:#17a2b8;background:#fff;box-shadow:0 4px 12px rgba(23,162,184,.15);transform:translateY(-1px)}.contact-input:hover:not(:focus) {border-color:#ced4da;background:#fff;box-shadow:0 3px 8px rgba(0,0,0,.08)}.contact-textarea{min-height:120px;resize:vertical;padding-top:16px;font-family:inherit;line-height:1.5}.contact-label{position:absolute;left:14px;top:16px;color:#6c757d;font-size:16px;font-weight:400;pointer-events:none;transition:all .3s ease;transform-origin:left top;background:transparent;padding:0 4px}.contact-input-field-focused .contact-label,
.contact-input:focus + .contact-label,
.contact-input:not(:placeholder-shown) + .contact-label {top:-8px;left:10px;font-size:12px;color:#17a2b8;font-weight:500;background:#fff;transform:scale(1)}.contact-textarea-field .contact-label{top:16px}.contact-textarea-field.contact-input-field-focused .contact-label,
.contact-textarea:focus + .contact-label,
.contact-textarea:not(:placeholder-shown) + .contact-label {top:-8px;left:10px;background:#fff}.contact-input-line{display:none}.contact-error-message{display:none;color:#dc3545;font-size:12px;margin-top:4px;position:absolute;bottom:-24px;left:0;line-height:1.3;max-width:100%;padding:2px 4px}.contact-input-field-error .contact-error-message{display:block}.contact-input-field-error .contact-input{border-color:#dc3545;background:#fff5f5;box-shadow:0 4px 12px rgba(220,53,69,.15)}.contact-input-field-error .contact-label{color:#dc3545}.contact-form-actions{padding:1.5rem 2rem 2rem;background:#f8f9fa;display:flex;align-items:center;justify-content:flex-end;gap:1rem}.contact-submit-btn{background:linear-gradient(135deg,#17a2b8 0%,#138496 100%);color:#fff;border:none;border-radius:12px;padding:14px 28px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease;min-width:160px;justify-content:center;box-shadow:0 4px 12px rgba(23,162,184,.3)}.contact-submit-btn:hover:not(:disabled) {background:linear-gradient(135deg,#138496 0%,#0f6674 100%);transform:translateY(-2px);box-shadow:0 6px 20px rgba(23,162,184,.4)}.contact-submit-btn:active{transform:translateY(0)}.contact-submit-btn:disabled{background:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.contact-loading-spinner{display:flex;align-items:center;justify-content:center}.contact-spinner{width:24px;height:24px;border:3px solid #e0e0e0;border-top:3px solid #17a2b8;border-radius:50%;animation:contact-spin 1s linear infinite}@keyframes contact-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}.contact-success-message,.contact-error-state{padding:2rem;display:flex;align-items:center;gap:1rem;text-align:left}.contact-success-message{background:#d4edda;color:#155724}.contact-error-state{background:#f8d7da;color:#721c24}.contact-message-icon .material-icons{font-size:32px}.contact-success-message .material-icons{color:#28a745}.contact-error-state .material-icons{color:#dc3545}.contact-message-text{flex:1;font-size:16px;line-height:1.5}@media (max-width:768px){.contact-form-container{margin:1rem;max-width:none}.contact-form-content{padding:1.5rem}.contact-form-actions{padding:1rem 1.5rem;flex-direction:column;align-items:stretch}.contact-submit-btn{width:100%;min-width:auto}.contact-info-items{flex-direction:column;gap:.75rem}.contact-info-item{padding:.75rem}.contact-info-item-icon{width:40px;height:40px;margin-right:.75rem}.contact-info-item-icon .material-icons{font-size:20px}.contact-phone-link,.contact-email-link{font-size:1rem}.contact-input-group{gap:2.5rem}.contact-input-field{margin-bottom:2.5rem}.contact-error-message{font-size:11px;bottom:-28px;padding:4px 8px}}@media (max-width:480px){.contact-form-content{padding:1rem}.contact-form-actions{padding:1rem}.contact-success-message,.contact-error-state{padding:1.5rem;flex-direction:column;text-align:center;gap:.75rem}.contact-message-icon{align-self:center}.contact-input-field{margin-bottom:3rem}.contact-error-message{font-size:10px;bottom:-32px;padding:4px 10px;left:2px;right:2px;max-width:calc(100% - 4px)}.contact-input-group{gap:3rem}}@media (prefers-contrast:high){.contact-input{border-bottom-width:3px}.contact-submit-btn{border:2px solid transparent}.contact-submit-btn:focus{border-color:#fff;outline:2px solid #17a2b8;outline-offset:2px}}@media (prefers-reduced-motion:reduce){.contact-input,.contact-label,.contact-input-line,.contact-submit-btn,.contact-info-item{transition:none}.contact-spinner{animation:none}}.contact-submit-btn:focus{outline:2px solid transparent;box-shadow:0 4px 12px rgba(23,162,184,.3) , 0 0 0 3px rgba(23,162,184,.2)}