 .contact-hero{padding:var(--space-2xl) 0;text-align:center}.contact-title{font-size:3rem;font-weight:800;color:var(--dark);margin-bottom:var(--space-sm)}.contact-subtitle{font-size:1.25rem;color:var(--gray-600);max-width:48rem;margin:0 auto var(--space-2xl);line-height:1.6}.contact-layout{max-width:72rem;margin:0 auto}.contact-grid{display:grid;gap:var(--space-xl)}@media (min-width:1024px){.contact-grid{grid-template-columns:1fr 1fr}}.contact-form-section{background:white;border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:var(--space-xl);transition: transform var(--transition-base)}.contact-form-section:hover{box-shadow:var(--shadow-hover)}.form-title{font-size:2rem, opacity var(--transition-base)}.contact-form-section:hover{box-shadow:var(--shadow-hover)}.form-title{font-size:2rem, background-color var(--transition-base)}.contact-form-section:hover{box-shadow:var(--shadow-hover)}.form-title{font-size:2rem, color var(--transition-base)}.contact-form-section:hover{box-shadow:var(--shadow-hover)}.form-title{font-size:2rem, box-shadow var(--transition-base)}.contact-form-section:hover{box-shadow:var(--shadow-hover)}.form-title{font-size:2rem, border-color var(--transition-base)}.contact-form-section:hover{box-shadow:var(--shadow-hover)}.form-title{font-size:2rem;color:var(--dark);margin-bottom:var(--space-lg);font-weight:700}.contact-form{display:flex;flex-direction:column;gap:var(--space-md)}.form-group{display:flex;flex-direction:column}.form-label{font-weight:600;color:var(--gray-700);margin-bottom:0.5rem;display:flex;align-items:center;gap:0.5rem}.form-label.required::after{content:'*';color:var(--danger);font-size:1.2em}.form-input, .form-select, .form-textarea{padding:0.75rem 1rem;border:2px solid var(--gray-300);border-radius:var(--radius-md);font-size:1rem;font-family:inherit;transition: transform var(--transition-fast), opacity var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);width:100%}.form-input:focus, .form-select:focus, .form-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(106, 17, 203, 0.1)}.form-input.error, .form-select.error, .form-textarea.error{border-color:var(--danger)}.error-message{color:var(--danger);font-size:0.875rem;margin-top:0.25rem;display:none}.error-message.show{display:block}.form-textarea{resize:vertical;min-height:150px}.form-submit{background:linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);color:white;padding:1rem;border:none;border-radius:var(--radius-md);font-size:1.125rem;font-weight:700;cursor:pointer;transition: transform var(--transition-base), opacity var(--transition-base), background-color var(--transition-base), color var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);margin-top:var(--space-sm)}.form-submit:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.form-submit:disabled{opacity:0.7;cursor:not-allowed;transform:none}.contact-info-cards{display:flex;flex-direction:column;gap:var(--space-lg)}.contact-card{background:white;border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-lg);transition: transform var(--transition-base)}.contact-card:hover{box-shadow:var(--shadow-hover), opacity var(--transition-base)}.contact-card:hover{box-shadow:var(--shadow-hover), background-color var(--transition-base)}.contact-card:hover{box-shadow:var(--shadow-hover), color var(--transition-base)}.contact-card:hover{box-shadow:var(--shadow-hover), box-shadow var(--transition-base)}.contact-card:hover{box-shadow:var(--shadow-hover), border-color var(--transition-base)}.contact-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}.contact-card-content{display:flex;align-items:flex-start;gap:var(--space-md)}.contact-icon{width:48px;height:48px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-icon.primary{background:var(--primary-light)}.contact-icon.success{background:var(--success-light)}.contact-icon.secondary{background:var(--secondary-light)}.contact-icon i{font-size:1.5rem}.contact-info h3{font-size:1.25rem;font-weight:700;color:var(--dark);margin-bottom:0.5rem}.contact-info p{color:var(--gray-600);line-height:1.6;margin-bottom:0.25rem}.contact-info a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}.contact-info a:hover{color:var(--secondary);text-decoration:underline}.faq-section{background:#fef9e7;border-left:4px solid var(--warning);padding:var(--space-lg);border-radius:0 var(--radius-lg) var(--radius-lg) 0;margin-top:var(--space-xl)}.faq-title{display:flex;align-items:center;gap:var(--space-sm);font-size:1.25rem;font-weight:700;color:var(--dark);margin-bottom:var(--space-md)}.faq-title i{color:var(--warning)}.faq-list{display:flex;flex-direction:column;gap:var(--space-md)}.faq-item h4{font-size:1rem;font-weight:600;color:var(--gray-800);margin-bottom:0.25rem}.faq-item p{color:var(--gray-600);font-size:0.9375rem;line-height:1.6}.map-section{margin:var(--space-2xl) 0}.map-title{font-size:2rem;text-align:center;color:var(--dark);margin-bottom:var(--space-xl);font-weight:700}.map-container{background:white;border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:var(--space-lg);height:400px;position:relative;overflow:hidden}.map-placeholder{background:linear-gradient(135deg, var(--gray-100), var(--gray-200));border-radius:var(--radius-lg);height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.map-placeholder i{font-size:4rem;color:var(--gray-400);margin-bottom:var(--space-md)}.map-placeholder h3{font-size:1.5rem;color:var(--gray-700);margin-bottom:var(--space-sm)}.map-placeholder p{color:var(--gray-600);max-width:24rem;margin:0 auto}.map-marker{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:40px;height:40px;background:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;box-shadow:0 4px 12px rgba(106, 17, 203, 0.3);animation:pulse 2s infinite}@keyframes pulse{0%{transform:translate(-50%, -50%) scale(1)}50%{transform:translate(-50%, -50%) scale(1.1)}100%{transform:translate(-50%, -50%) scale(1)}}.contact-methods{display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:var(--space-lg);margin:var(--space-2xl) 0}.contact-method{background:white;border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-lg);text-align:center;transition: transform var(--transition-base)}.contact-method:hover{box-shadow:var(--shadow-hover), opacity var(--transition-base)}.contact-method:hover{box-shadow:var(--shadow-hover), background-color var(--transition-base)}.contact-method:hover{box-shadow:var(--shadow-hover), color var(--transition-base)}.contact-method:hover{box-shadow:var(--shadow-hover), box-shadow var(--transition-base)}.contact-method:hover{box-shadow:var(--shadow-hover), border-color var(--transition-base)}.contact-method:hover{box-shadow:var(--shadow-hover);transform:translateY(-5px)}.method-icon{width:64px;height:64px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-md)}.method-icon.primary{background:var(--primary-light);color:var(--primary)}.method-icon.secondary{background:var(--secondary-light);color:var(--secondary)}.method-icon.success{background:var(--success-light);color:var(--success)}.method-icon i{font-size:2rem}.contact-method h3{font-size:1.25rem;font-weight:700;color:var(--dark);margin-bottom:var(--space-sm)}.contact-method p{color:var(--gray-600);margin-bottom:var(--space-md);line-height:1.6}.method-link{display:inline-flex;align-items:center;gap:0.5rem;color:var(--primary);font-weight:600;text-decoration:none;transition: transform var(--transition-fast)}.method-link:hover{gap:0.75rem, opacity var(--transition-fast)}.method-link:hover{gap:0.75rem, background-color var(--transition-fast)}.method-link:hover{gap:0.75rem, color var(--transition-fast)}.method-link:hover{gap:0.75rem, box-shadow var(--transition-fast)}.method-link:hover{gap:0.75rem, border-color var(--transition-fast)}.method-link:hover{gap:0.75rem;color:var(--secondary)}.success-message{display:none;background:var(--success-light);border:2px solid var(--success);border-radius:var(--radius-lg);padding:var(--space-lg);text-align:center;margin-top:var(--space-lg)}.success-message.show{display:block;animation:fadeIn 0.5s ease}.success-icon{font-size:3rem;color:var(--success);margin-bottom:var(--space-md)}.success-message h3{font-size:1.5rem;color:var(--dark);margin-bottom:var(--space-sm)}.success-message p{color:var(--gray-700);margin-bottom:var(--space-md)}.success-actions{display:flex;justify-content:center;gap:var(--space-md);margin-top:var(--space-lg)}.success-btn{padding:0.75rem 1.5rem;border-radius:var(--radius-md);font-weight:600;text-decoration:none;transition: transform var(--transition-fast)}.success-btn.primary{background:var(--primary), opacity var(--transition-fast)}.success-btn.primary{background:var(--primary), background-color var(--transition-fast)}.success-btn.primary{background:var(--primary), color var(--transition-fast)}.success-btn.primary{background:var(--primary), box-shadow var(--transition-fast)}.success-btn.primary{background:var(--primary), border-color var(--transition-fast)}.success-btn.primary{background:var(--primary);color:white}.success-btn.primary:hover{background:var(--primary-dark)}.success-btn.secondary{background:var(--gray-200);color:var(--gray-800)}.success-btn.secondary:hover{background:var(--gray-300)}.loading-state{display:none;text-align:center;padding:var(--space-xl)}.loading-state.show{display:block}.loading-spinner{display:inline-block;width:40px;height:40px;border:3px solid var(--gray-200);border-radius:50%;border-top-color:var(--primary);animation:spin 1s linear infinite;margin-bottom:var(--space-md)}@keyframes spin{to{transform:rotate(360deg)}}.social-contact{margin:var(--space-2xl) 0;text-align:center}.social-title{font-size:2rem;color:var(--dark);margin-bottom:var(--space-lg);font-weight:700}.social-icons-large{display:flex;justify-content:center;gap:var(--space-lg);flex-wrap:wrap}.social-icon-large{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);text-decoration:none;padding:var(--space-lg);border-radius:var(--radius-lg);background:white;box-shadow:var(--shadow-card);transition: transform var(--transition-base), opacity var(--transition-base), background-color var(--transition-base), color var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);min-width:140px}.social-icon-large:hover{box-shadow:var(--shadow-hover);transform:translateY(-5px)}.social-icon-large i{font-size:2.5rem;margin-bottom:0.5rem}.social-icon-large.twitter i{color:#1da1f2}.social-icon-large.instagram i{color:#e4405f}.social-icon-large.linkedin i{color:#0a66c2}.social-icon-large.youtube i{color:#ff0000}.social-icon-large span{font-weight:600;color:var(--gray-800)}.response-time{background:linear-gradient(135deg, var(--success-light), var(--secondary-light));border-radius:var(--radius-xl);padding:var(--space-xl);text-align:center;margin:var(--space-xl) 0}.response-time h3{font-size:1.5rem;color:var(--dark);margin-bottom:var(--space-md)}.response-time-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));gap:var(--space-lg);margin-top:var(--space-lg)}.response-item{background:white;border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-sm)}.response-item h4{font-size:1.125rem;color:var(--primary);margin-bottom:0.5rem}.response-item p{color:var(--gray-700);font-size:0.9375rem}@media (max-width:768px){.contact-title{font-size:2.5rem}.contact-grid{grid-template-columns:1fr}.contact-methods{grid-template-columns:1fr}.social-icons-large{flex-direction:column;align-items:center}.success-actions{flex-direction:column}.map-container{height:300px}}.form-group.valid .form-input, .form-group.valid .form-select, .form-group.valid .form-textarea{border-color:var(--success)}.form-group.invalid .form-input, .form-group.invalid .form-select, .form-group.invalid .form-textarea{border-color:var(--danger)}.char-counter{text-align:right;font-size:0.875rem;color:var(--gray-500);margin-top:0.25rem}.char-counter.warning{color:var(--warning)}.char-counter.error{color:var(--danger)}