.contact-section{padding-top:48px}
.contact-info-panel,.contact-map-panel{height:100%;padding:1.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}
.contact-info-panel h2,.contact-map-panel h2{color:var(--heading)}
.contact-info-link{display:flex;align-items:center;gap:.85rem;min-height:70px;margin-bottom:.65rem;padding:.8rem .9rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);transition:border-color var(--transition),background var(--transition),transform var(--transition)}
.contact-info-link:hover{border-color:rgba(21,101,192,.36);background:var(--surface-2);color:var(--heading);transform:translateY(-1px)}
.contact-info-link>span:nth-child(2){display:grid;gap:.15rem;min-width:0}
.contact-info-link small,.contact-address small{color:var(--muted);font-size:.78rem;font-weight:700}
.contact-info-link strong{color:var(--heading);font-size:.91rem;overflow-wrap:anywhere}
.contact-info-icon{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border:1px solid rgba(21,101,192,.14);border-radius:12px;background:rgba(21,101,192,.08);color:var(--primary)}
.contact-info-arrow{margin-left:auto;color:var(--muted);font-size:.75rem}
.contact-address{display:flex;align-items:flex-start;gap:.85rem;padding:.9rem .2rem .4rem}
.contact-address address{margin:.25rem 0;color:var(--heading);font-size:.93rem;font-style:normal;line-height:1.65}
.contact-landmark{margin:0 0 .45rem;color:var(--text);font-size:.87rem;font-weight:600}
.contact-coordinates{margin:0;color:var(--muted);font-size:.78rem;line-height:1.55;overflow-wrap:anywhere}
.contact-actions{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1.1rem}
.contact-actions .btn{min-height:44px}
.contact-map-panel{display:flex;flex-direction:column;gap:1rem;padding:1.25rem}
.contact-map-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.25rem .25rem 0}
.contact-map-heading .eyebrow{font-size:.67rem}
.contact-map-link{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);color:var(--primary)}
.contact-map-link:hover{border-color:var(--primary);background:rgba(21,101,192,.08);color:var(--primary)}
.contact-map-frame{display:block;width:100%;min-height:390px;aspect-ratio:16/10;border:0;border-radius:12px;background:var(--surface-2)}
.contact-map-caption{margin:0;padding:0 .2rem;color:var(--muted);font-size:.8rem}
.contact-form-section{padding-top:20px}
.contact-form-card{padding:clamp(1.25rem,3vw,2rem)}
.contact-form-status{margin-top:1rem;padding:.8rem 1rem;border:1px solid rgba(21,101,192,.18);border-radius:12px;background:rgba(21,101,192,.06);color:var(--text);font-size:.9rem}
.contact-faq-section{padding-top:32px}
@media(max-width:991.98px){.contact-map-frame{min-height:340px;aspect-ratio:16/11}}
@media(max-width:575.98px){.contact-info-panel,.contact-map-panel{padding:1.05rem}.contact-info-link{gap:.65rem;padding:.75rem}.contact-info-link strong{font-size:.83rem}.contact-map-frame{min-height:290px;aspect-ratio:4/3}.contact-actions .btn{flex:1 1 auto}}
