.contact-page{background-color:#fff}.contact-section{padding:4rem 0}@media (min-width:576px){.contact-section{padding:5rem 0}}@media (min-width:768px){.contact-section{padding:6rem 0}}.contact-container{max-width:1280px;margin:0 auto;padding:0 1rem}@media (min-width:576px){.contact-container{padding:0 1.5rem}}@media (min-width:768px){.contact-container{padding:0 2rem}}.contact-grid{grid-template-columns:1fr;gap:5rem;display:grid}@media (min-width:992px){.contact-grid{grid-template-columns:repeat(2,1fr);gap:5rem}}.contact-info{flex-direction:column;gap:3rem;display:flex}.contact-title{color:#111827;text-transform:uppercase;letter-spacing:-.025em;margin-bottom:1.5rem;font-size:3rem;font-weight:900}@media (min-width:576px){.contact-title{font-size:3.75rem}}@media (min-width:768px){.contact-title{font-size:4.5rem}}.title-highlight{color:#9bc034}.contact-description{color:#6b7280;margin:0;font-size:1.125rem;font-weight:500;line-height:1.6}.contact-details{flex-direction:column;gap:2rem;display:flex}.contact-item{align-items:flex-start;gap:1.5rem;display:flex}.contact-icon-wrapper{flex-shrink:0;justify-content:center;align-items:center;padding:1rem;transition:all .3s;display:inline-flex}.location-icon,.phone-icon{color:#fff;background-color:#9bc034}.whatsapp-icon{color:#fff;background-color:#25d366}.hours-icon{color:#fff;background-color:#111827}.contact-item:hover .location-icon,.contact-item:hover .phone-icon,.contact-item:hover .hours-icon,.contact-item:hover .whatsapp-icon{background-color:#111827}.contact-label{text-transform:uppercase;letter-spacing:.1em;color:#111827;margin-bottom:.5rem;font-size:.875rem;font-weight:900}.contact-text{color:#6b7280;margin:0;font-size:1rem;font-weight:500;line-height:1.5}.contact-phone{color:#6b7280;margin:0;font-size:1.25rem;font-weight:900}@media (min-width:576px){.contact-phone{font-size:1.5rem}}.contact-whatsapp-link{color:#6b7280;font-size:1.25rem;font-weight:900;text-decoration:none;transition:color .3s}@media (min-width:576px){.contact-whatsapp-link{font-size:1.5rem}}.contact-whatsapp-link:hover{color:#25d366;text-decoration:none}.map-container{position:relative}.map-preview{filter:grayscale();text-align:center;background-color:#f9fafb;border:4px solid #e5e7eb;justify-content:center;align-items:center;height:100%;min-height:500px;padding:3rem;display:flex}.map-placeholder{flex-direction:column;align-items:center;gap:1rem;display:flex}.map-icon{color:#9bc034;width:4rem;height:4rem}.map-title{text-transform:uppercase;letter-spacing:-.025em;margin:0;font-size:1.875rem;font-weight:900}@media (min-width:576px){.map-title{font-size:2.25rem}}.map-subtitle{text-transform:uppercase;letter-spacing:.1em;color:#9ca3af;margin:0;font-size:.75rem;font-weight:700}.map-button{color:#fff;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;background-color:#111827;margin-top:.5rem;padding:.75rem 2rem;font-size:.75rem;font-weight:900;text-decoration:none;transition:all .3s;display:inline-block}.map-button:hover{color:#fff;background-color:#9bc034;text-decoration:none;transform:translateY(-2px)}.map-decoration{z-index:-10;border:8px solid #9bc034;width:8rem;height:8rem;position:absolute;top:-1.5rem;right:-1.5rem}@media (min-width:576px){.map-decoration{width:8rem;height:8rem;top:-1.5rem;right:-1.5rem}}@media (max-width:991.98px){.contact-grid{gap:3rem}.contact-title{font-size:2.5rem}.contact-phone,.contact-whatsapp-link{font-size:1.125rem}.map-preview{min-height:400px;padding:2rem}.map-decoration{border-width:6px;width:6rem;height:6rem;top:-1rem;right:-1rem}}@media (max-width:575.98px){.contact-section{padding:3rem 0}.contact-title{font-size:2rem}.contact-description{font-size:1rem}.contact-item{gap:1rem}.contact-icon-wrapper{padding:.75rem}.contact-icon-wrapper svg{width:1.5rem;height:1.5rem}.contact-label{font-size:.75rem}.contact-text,.contact-phone,.contact-whatsapp-link{font-size:.875rem}.map-preview{min-height:300px;padding:1.5rem}.map-icon{width:3rem;height:3rem}.map-title{font-size:1.5rem}.map-decoration{border-width:4px;width:4rem;height:4rem;top:-.75rem;right:-.75rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.contact-info,.map-container{animation:.6s ease-out forwards fadeInUp}.contact-info{animation-delay:.1s}.map-container{animation-delay:.2s}.contact-item{transition:transform .3s}.contact-item:hover{transform:translate(4px)}.contact-icon-wrapper,.map-button{transition:all .3s}.map-button:active{transform:scale(.98)}
