.contact-hero{margin-bottom:0;padding:3rem 1rem 2.5rem;text-align:center}.contact-hero-icon{font-size:2.5rem;opacity:.7}.contact-hero-icon,.contact-hero-title{color:var(--color-primary);margin-bottom:1.25rem}.contact-hero-title{font-size:1.75rem;font-weight:300;letter-spacing:.5px;line-height:1.4}.contact-hero-subtitle{color:var(--color-muted);font-size:1.05rem;font-weight:300;line-height:1.8;margin:0 auto;max-width:700px}.contact-grid{display:grid;gap:1.75rem;grid-template-columns:repeat(2,1fr);margin:0 auto 3.5rem;max-width:960px;padding:0 1rem}.contact-live-chat{background-color:var(--color-primary);border-radius:8px;color:var(--color-white);padding:2rem 1.75rem;text-align:center}.contact-live-chat-icon{font-size:2rem;margin-bottom:.75rem;opacity:.85}.contact-live-chat-title{font-size:1.05rem;font-weight:500;margin-bottom:.5rem}.contact-live-chat-text{font-size:.9rem;font-weight:300;line-height:1.6;margin-bottom:1rem;opacity:.85}.contact-live-chat-btn{background-color:var(--color-white);border:none;border-radius:5px;color:var(--color-primary);font-weight:500;padding:.5rem 1.75rem;transition:background-color var(--transition-speed),color var(--transition-speed)}.contact-live-chat-btn:hover{background-color:var(--color-secondary);color:var(--color-primary)}.contact-email-card{background-color:var(--color-secondary);border:1px solid var(--color-border);border-radius:8px;display:flex;flex-direction:column;justify-content:center;padding:2rem 1.75rem;text-align:center}.contact-email-icon{color:var(--color-primary);font-size:2rem;margin-bottom:.75rem;opacity:.7}.contact-email-title{color:var(--color-primary);font-size:1.05rem;font-weight:500;margin-bottom:.5rem}.contact-email-text{color:var(--color-muted);font-size:.9rem;font-weight:300;line-height:1.6;margin-bottom:1rem}.contact-email-link{color:var(--color-primary);font-size:1rem;font-weight:500;text-decoration:none;transition:color var(--transition-speed)}.contact-email-link:hover,.contact-email-note{color:var(--color-muted)}.contact-email-note{font-size:.8rem;font-weight:300;margin-bottom:0;margin-top:.75rem}.contact-details{margin:0 auto 3.5rem;max-width:960px;padding:0 1rem}.contact-details-heading{border-bottom:1px solid var(--color-border);color:var(--color-primary);font-size:1.35rem;font-weight:300;letter-spacing:.5px;margin-bottom:2.5rem;padding-bottom:1rem;text-align:center}.contact-details-grid{display:grid;gap:1.75rem;grid-template-columns:repeat(3,1fr)}.contact-detail-card{background-color:var(--color-white);border:1px solid var(--color-border);border-left:3px solid var(--color-navy-blue);border-radius:4px;padding:2rem 1.75rem;transition:box-shadow var(--transition-speed) ease,transform var(--transition-speed) ease}.contact-detail-card:hover{box-shadow:0 6px 24px rgba(46,62,79,.1);transform:translateY(-3px)}.contact-detail-icon{align-items:center;background-color:var(--color-navy-blue);border-radius:50%;color:var(--color-white);display:inline-flex;font-size:1.2rem;height:48px;justify-content:center;margin-bottom:1.25rem;width:48px}.contact-detail-title{color:var(--color-primary);font-size:.95rem;font-weight:600;letter-spacing:.5px;margin-bottom:.75rem;text-transform:uppercase}.contact-detail-text{color:var(--color-primary);font-size:.9rem;font-weight:300;line-height:1.8;margin:0}.contact-detail-text a{color:var(--color-primary);font-weight:400;text-decoration:none;transition:color var(--transition-speed)}.contact-detail-text a:hover{color:var(--color-muted)}.contact-detail-text .detail-item{display:block;margin-bottom:.35rem}.contact-detail-text .detail-item:last-child{margin-bottom:0}.contact-detail-text .detail-item.social-icons{margin-top:10px}.contact-detail-text .social-icon-link{margin-right:15px}.contact-detail-text .social-icon-link:last-child{margin-right:0}.contact-detail-text .social-icon{font-size:1.5rem}.contact-map{margin-bottom:0;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);width:100vw}.contact-map-container{background-color:#f8f9fa;height:500px;position:relative;width:100%}@media (max-width:991.98px){.contact-details-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:767.98px){.contact-hero{padding:2rem .5rem 1.75rem}.contact-hero-title{font-size:1.35rem}.contact-hero-subtitle{font-size:.95rem}.contact-details-grid,.contact-grid{grid-template-columns:1fr}.contact-map-container{height:400px}}