.contact-section { background:#fff; border-top:1px solid #e8eef6; }
.contact-layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:70px; align-items:start; }
.contact-heading .eyebrow { color:#3268d6; margin-bottom:15px; }
.contact-heading h2 { line-height:1.2; }
.contact-heading > p:not(.eyebrow) { color:#60738e; max-width:350px; margin-top:18px; line-height:1.85; font-size:14px; }
.contact-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.contact-item { position:relative; display:flex; flex-direction:column; justify-content:center; min-width:0; min-height:112px; padding:21px 43px 21px 21px; border:1px solid #dce6f3; border-radius:10px; background:#f9fbff; transition:background .18s,border-color .18s; }
.contact-item:hover { background:#eff5ff; border-color:#a9c2eb; }
.contact-item > span:first-child { color:#6c81a0; font-size:11px; font-weight:500; }
.contact-item strong { color:#254a7c; font-size:14px; font-weight:600; overflow-wrap:anywhere; margin-top:7px; }
.contact-arrow { position:absolute; top:20px; right:20px; color:#507dbd; font-size:16px; line-height:1; }
@media(min-width:1101px) and (max-width:1250px) { .desktop-nav { gap:11px; font-size:12px; } }
@media(max-width:900px) { .contact-layout { grid-template-columns:1fr; gap:28px; } }
@media(max-width:520px) {
 .contact-links { grid-template-columns:1fr; gap:10px; }
 .contact-item { min-height:88px; padding:17px 42px 17px 18px; }
 .contact-heading > p:not(.eyebrow) { font-size:13px; }
}
@media(prefers-reduced-motion:reduce) { .contact-item { transition:none; } }
