.banner-contacto{position:relative;height:50vh;min-height:320px;background-image:url(https://placehold.co/1920x1080?text=Contacto+Background);background-size:cover;background-position:50%;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center}@media(min-width:768px){.banner-contacto{height:55vh}}@media(min-width:1024px){.banner-contacto{height:60vh}}.banner-contacto__overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,rgba(10,37,64,.85),rgba(10,37,64,.65))}.banner-contacto__content{position:relative;z-index:1;text-align:center;color:#fff;padding:0 1rem;max-width:900px}.banner-contacto__title{font-family:Playfair Display,serif;font-size:2.5rem;margin-bottom:2rem;animation:fadeInUp 1s ease}@media(min-width:768px){.banner-contacto__title{font-size:3.5rem}}@media(min-width:1024px){.banner-contacto__title{font-size:4rem}}.banner-contacto__subtitle{font-size:1.1rem;line-height:1.6;animation:fadeInUp 1s ease .2s both;opacity:.95}@media(min-width:768px){.banner-contacto__subtitle{font-size:1.3rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.contact-info-contacto{display:flex;flex-direction:column;gap:5rem;padding:5rem;background:#fff;border-radius:12px;box-shadow:0 4px 24px rgba(0,0,0,.08)}.contact-info-contacto__title{font-family:Playfair Display,serif;font-size:1.35rem;color:#0a2540;margin:0}.contact-info-contacto__social{display:flex;flex-direction:column;gap:1rem}.contact-info-contacto__social-label{font-weight:700;color:#333;font-size:.95rem}.contact-info-contacto__social-links{display:flex;gap:2rem}.contact-info-contacto__social-link{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background-color:rgba(10,37,64,.1);color:#0a2540;border-radius:50%;transition:all .3s ease}.contact-info-contacto__social-link:hover{background-color:#0a2540;color:#fff;transform:translateY(-3px)}.contact-info-contacto__social-icon{width:22px;height:22px}.contact-info-contacto__data{display:flex;flex-direction:column;gap:1rem}.contact-info-contacto__item{margin:0;font-size:.95rem;line-height:1.6;color:#333}.contact-info-contacto__label{font-weight:700;color:#666}.contact-info-contacto__link{color:#0a2540;text-decoration:none;transition:color .2s ease}.contact-info-contacto__link:hover{color:rgb(3.1081081081,11.5,19.8918918919);text-decoration:underline}.contact-form-contacto{width:100%;max-width:520px;margin:0 auto}.contact-form-contacto__form{display:flex;flex-direction:column;gap:2rem;background:#fff;padding:5rem;border-radius:12px;box-shadow:0 4px 24px rgba(0,0,0,.08)}.contact-form-contacto__field{display:flex;flex-direction:column;gap:.5rem}.contact-form-contacto__label{font-weight:700;color:#333;font-size:.95rem}.contact-form-contacto__input,.contact-form-contacto__textarea{padding:1rem 2rem;border:2px solid #f5f7fa;border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .3s ease}.contact-form-contacto__input:focus,.contact-form-contacto__textarea:focus{outline:none;border-color:#c5a059}.contact-form-contacto__input:disabled,.contact-form-contacto__textarea:disabled{opacity:.7;cursor:not-allowed}.contact-form-contacto__textarea{resize:vertical;min-height:120px}.contact-form-contacto__success{color:#27ae60;font-size:.95rem;padding:1rem;background-color:rgba(39,174,96,.1);border-radius:6px}.contact-form-contacto__error{color:#e74c3c;font-size:.95rem;padding:1rem;background-color:rgba(231,76,60,.1);border-radius:6px}.contact-form-contacto__submit{width:100%;margin-top:.5rem}.contact-form-contacto__submit:disabled{cursor:not-allowed;opacity:.8}.contact-content-contacto{padding:2rem 0 5rem}.contact-content-contacto__container{max-width:1200px;margin:0 auto;padding:0 1rem}@media(min-width:768px){.contact-content-contacto__container{padding:0 2rem}}.contact-content-contacto__grid{display:grid;grid-template-columns:1fr;grid-gap:2rem;gap:2rem;align-items:start}.contact-content-contacto__grid .contact-form-contacto{order:-1}@media(min-width:1024px){.contact-content-contacto__grid .contact-form-contacto{order:0}.contact-content-contacto__grid{grid-template-columns:1fr 1.2fr;gap:5rem;max-width:1000px;margin:0 auto}}