.contact-hero{padding:120px 0 80px 0;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;text-align:center;position:relative;overflow:hidden}.contact-hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="contact-pattern" width="25" height="25" patternUnits="userSpaceOnUse"><circle cx="12.5" cy="12.5" r="1.5" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23contact-pattern)"/></svg>');opacity:0.3}.hero-content{position:relative;z-index:2}.contact-hero h1{font-size:48px;font-weight:bold;margin-bottom:20px;text-shadow:0 4px 8px rgba(0,0,0,0.3)}.hero-subtitle{font-size:24px;opacity:0.9;margin-bottom:30px;text-shadow:0 2px 4px rgba(0,0,0,0.3)}.hero-decorative{display:flex;justify-content:center;gap:20px}.magic-sparkle{font-size:32px;animation:bounce 2s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(0,0,0,0.3))}.magic-sparkle:nth-child(2){animation-delay:0.3s}.magic-sparkle:nth-child(3){animation-delay:0.6s}@keyframes bounce{0%,20%,50%,80%,100%{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}.contact-main{padding:80px 0;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%)}.contact-grid{display:grid;grid-template-columns:2fr 1fr;gap:60px;align-items:start}.contact-form-section{background:white;padding:40px;border-radius:20px;box-shadow:0 20px 40px rgba(0,0,0,0.1);border-top:5px solid #667eea}.contact-form-section h2{font-size:32px;color:#2d3436;margin-bottom:15px;font-weight:bold}.form-intro{color:#636e72;font-size:16px;line-height:1.6;margin-bottom:30px}.contact-form{display:flex;flex-direction:column;gap:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group{position:relative}.form-group label{display:block;margin-bottom:8px;font-weight:bold;color:#2d3436;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:15px 20px 15px 50px;border:2px solid #e9ecef;border-radius:10px;font-size:16px;transition:all 0.3s ease;background:#f8f9fa;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;background:white;box-shadow:0 4px 8px rgba(102,126,234,0.1)}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#e17055;background:#ffeaa7}.form-icon{position:absolute;left:18px;top:calc(50%+12px);transform:translateY(-50%);font-size:18px;color:#636e72;pointer-events:none}.form-icon.textarea-icon{top:52px;transform:none}.form-group textarea{resize:vertical;min-height:120px;font-family:inherit}.checkbox-group{margin-top:10px}.checkbox-label{display:flex;align-items:center;cursor:pointer;font-size:14px;color:#636e72}.checkbox-label input[type="checkbox"]{display:none}.checkmark{width:20px;height:20px;border:2px solid #e9ecef;border-radius:4px;margin-right:12px;position:relative;background:#f8f9fa;transition:all 0.3s ease}.checkbox-label input[type="checkbox"]:checked+.checkmark{background:#667eea;border-color:#667eea}.checkbox-label input[type="checkbox"]:checked+.checkmark::after{content:'✓';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:white;font-size:12px;font-weight:bold}.btn-submit{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;padding:18px 40px;border-radius:50px;font-size:18px;font-weight:bold;cursor:pointer;transition:all 0.3s ease;display:flex;align-items:center;justify-content:center;gap:12px;margin-top:20px;box-shadow:0 8px 16px rgba(102,126,234,0.3)}.btn-submit:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(102,126,234,0.4)}.btn-submit:active{transform:translateY(-1px)}.btn-icon{font-size:20px;animation:rocket 2s ease-in-out infinite}@keyframes rocket{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}.contact-info-section{display:flex;flex-direction:column;gap:30px}.contact-info-section h2{font-size:28px;color:#2d3436;margin-bottom:20px;font-weight:bold}.contact-cards{display:flex;flex-direction:column;gap:20px}.contact-card{background:white;padding:25px;border-radius:15px;box-shadow:0 8px 16px rgba(0,0,0,0.1);display:flex;align-items:center;gap:20px;transition:transform 0.3s ease;border-left:4px solid #667eea}.contact-card:hover{transform:translateX(5px)}.contact-icon{font-size:32px;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1))}.contact-details h3{font-size:18px;color:#2d3436;margin-bottom:5px;font-weight:bold}.contact-details p{color:#636e72;font-size:16px;margin-bottom:5px}.contact-details small{color:#636e72;font-size:14px;font-style:italic}.map-section{background:white;padding:30px;border-radius:15px;box-shadow:0 8px 16px rgba(0,0,0,0.1);text-align:center}.map-section h3{font-size:20px;color:#2d3436;margin-bottom:20px;font-weight:bold}.map-placeholder{height:200px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform 0.3s ease;position:relative;overflow:hidden}.map-placeholder:hover{transform:scale(1.02)}.map-placeholder::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="map-dots" width="20" height="20" patternUnits="userSpaceOnUse"><circle cx="10" cy="10" r="1" fill="rgba(255,255,255,0.2)"/></pattern></defs><rect width="100" height="100" fill="url(%23map-dots)"/></svg>')}.map-content{text-align:center;color:white;z-index:2;position:relative}.map-icon{font-size:48px;margin-bottom:10px;filter:drop-shadow(0 4px 8px rgba(0,0,0,0.3))}.map-text p{margin-bottom:10px;font-size:16px;text-shadow:0 2px 4px rgba(0,0,0,0.3)}.map-link{color:white;text-decoration:underline;font-weight:bold;font-size:14px;transition:opacity 0.3s ease}.map-link:hover{opacity:0.8}.contact-social{padding:80px 0;background:white}.social-intro{text-align:center;font-size:18px;color:#636e72;margin-bottom:40px;max-width:600px;margin-left:auto;margin-right:auto}.social-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:25px;margin-top:40px}.social-card{background:white;padding:30px;border-radius:15px;box-shadow:0 8px 16px rgba(0,0,0,0.1);display:flex;align-items:center;gap:20px;text-decoration:none;color:inherit;transition:all 0.3s ease;border:2px solid transparent;position:relative;overflow:hidden}.social-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);transform:scaleX(0);transition:transform 0.3s ease}.social-card:hover{transform:translateY(-5px);box-shadow:0 16px 32px rgba(0,0,0,0.15)}.social-card:hover::before{transform:scaleX(1)}.social-card.facebook:hover{border-color:#1877f2}.social-card.instagram:hover{border-color:#e4405f}.social-card.twitter:hover{border-color:#1da1f2}.social-card.whatsapp:hover{border-color:#25d366}.social-card.telegram:hover{border-color:#0088cc}.social-card.maps:hover{border-color:#4285f4}.social-icon{font-size:36px;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1))}.social-info h3{font-size:20px;color:#2d3436;margin-bottom:8px;font-weight:bold}.social-info p{color:#636e72;font-size:14px;line-height:1.5}.social-arrow{font-size:24px;color:#667eea;margin-left:auto;transition:transform 0.3s ease}.social-card:hover .social-arrow{transform:translateX(5px)}.faq-section{padding:80px 0;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%)}.faq-grid{display:flex;flex-direction:column;gap:20px;max-width:800px;margin:0 auto;margin-top:40px}.faq-item{background:white;border-radius:15px;box-shadow:0 4px 8px rgba(0,0,0,0.1);overflow:hidden;transition:all 0.3s ease}.faq-item:hover{box-shadow:0 8px 16px rgba(0,0,0,0.15)}.faq-question{padding:25px 30px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;background:white;transition:background 0.3s ease}.faq-question:hover{background:#f8f9fa}.faq-question h3{font-size:18px;color:#2d3436;margin:0;font-weight:bold}.faq-icon{font-size:24px;color:#667eea;font-weight:bold;transition:transform 0.3s ease}.faq-item.active .faq-icon{transform:rotate(45deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.3s ease,padding 0.3s ease;background:#f8f9fa}.faq-item.active .faq-answer{max-height:200px;padding:0 30px 25px 30px}.faq-answer p{color:#636e72;line-height:1.6;margin:0}.form-message{padding:15px 20px;border-radius:8px;margin-top:20px;font-weight:bold;animation:slideIn 0.3s ease}.form-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.form-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@keyframes slideIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.section-title{text-align:center;font-size:36px;font-weight:bold;color:#2d3436;margin-bottom:20px;position:relative}.section-title::after{content:'';position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);width:80px;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:2px}@media(max-width:768px){.contact-hero h1{font-size:32px}.hero-subtitle{font-size:18px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-form-section{padding:30px 25px}.form-row{grid-template-columns:1fr;gap:20px}.social-grid{grid-template-columns:1fr;gap:20px}.social-card{padding:25px 20px}.section-title{font-size:28px}.contact-form-section h2{font-size:24px}}@media(max-width:480px){.contact-hero{padding:100px 0 60px 0}.contact-hero h1{font-size:28px}.hero-subtitle{font-size:16px}.magic-sparkle{font-size:24px}.contact-form-section{padding:25px 20px}.form-group input,.form-group select,.form-group textarea{padding:12px 15px 12px 45px;font-size:14px}.form-icon{left:15px;font-size:16px}.btn-submit{padding:15px 30px;font-size:16px}.contact-card{padding:20px 15px}.contact-icon{font-size:24px}.map-placeholder{height:150px}.map-icon{font-size:36px}.faq-question{padding:20px}.faq-question h3{font-size:16px}}