/* One social component, three placements; no external icon/font requests. */
.nr-social-links { display:flex; flex-wrap:wrap; align-items:center; gap:12px 18px; }
.nr-social-link { display:inline-flex; align-items:center; gap:9px; color:#012341; text-decoration:none; font:600 13px/1.4 var(--nr-body, sans-serif); white-space:nowrap; }
.nr-social-link:hover .nr-social-label { text-decoration:underline; text-underline-offset:4px; }
.nr-social-link:focus-visible { outline:2px solid #456e8d; outline-offset:4px; }
.nr-social-mark { display:inline-grid; flex:0 0 30px; place-items:center; box-sizing:border-box; width:30px; height:30px; border:1px solid currentColor; border-radius:50%; font:800 12px/1 Arial,sans-serif; letter-spacing:-.04em; }
.nr-social-link--facebook .nr-social-mark { font-size:20px; font-weight:700; }
.nr-social-link--instagram .nr-social-mark { font-size:22px; font-weight:400; }
.nr-social-link--google .nr-social-mark { font-size:16px; }
.nr-social-links--top { flex-wrap:nowrap; gap:9px; }
.nr-site-header .nr-social-links--top .nr-social-link { color:inherit; }
.nr-social-links--top .nr-social-mark { width:24px; height:24px; flex-basis:24px; font-size:10px; }
.nr-social-links--top .nr-social-link--facebook .nr-social-mark { font-size:17px; }
.nr-social-links--top .nr-social-link--instagram .nr-social-mark { font-size:18px; }
.nr-social-links--top .nr-social-link--google .nr-social-mark { font-size:13px; }
.nr-social-links--top .nr-social-label { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
/* Social belongs inside the right-hand card, never as a third full-width strip. */
.nr-entry-body .nr-contact-cards .nr-social-links--contact { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px 7px; align-items:start; width:100%; margin:0; padding:0; background:none; box-shadow:none; }
.nr-entry-body .nr-contact-cards .nr-social-links--contact .nr-social-link { min-width:0; gap:7px; white-space:normal; font-size:12px; line-height:1.3; }
.nr-entry-body .nr-contact-cards .nr-social-links--contact .nr-social-mark { background:#eff7fe; }
/* Footer: four icons in one row within Contact details; aria-label on each link keeps its accessible name. */
.nr-footer .nr-footer-contact-social { margin-top:22px; padding:0; border:0; }
.nr-footer .nr-footer-contact-social .nr-social-links--footer { display:flex; flex-direction:row; flex-wrap:nowrap; align-items:center; justify-content:flex-start; gap:12px; width:max-content; max-width:100%; margin:0; padding:0; }
.nr-footer .nr-footer-contact-social .nr-social-link { display:inline-flex; flex:0 0 27px; width:27px; min-width:0; gap:0; white-space:nowrap; font-size:12px; line-height:1.3; }
.nr-footer .nr-footer-contact-social .nr-social-label { display:none; }
.nr-footer .nr-footer-contact-social .nr-social-mark { width:27px; height:27px; flex-basis:27px; }
@media(max-width:1179px) { .nr-site-header .nr-topbar-social { flex:0 0 auto; } }
@media(min-width:901px) and (max-width:1200px) {
  .nr-entry-body .nr-contact-cards .nr-social-links--contact { grid-template-columns:1fr; }
}
@media(max-width:767px) {
  .nr-site-header .nr-topbar-social { display:flex; justify-content:center; width:100%; }
  .nr-site-header .nr-topbar .nr-topbar-inner { flex-wrap:wrap; }
  .nr-social-links--top { justify-content:center; }
  .nr-footer .nr-footer-contact-social { margin-top:18px; }
}
