/* Shared header controls: local vectors, no third-party icon requests. */
.header-socials a.header-social-icon {
 display:inline-flex; align-items:center; justify-content:center;
 width:34px; height:34px; min-width:34px; padding:7px; border-radius:10px;
 color:#174d36; line-height:1; transition:background .2s,color .2s,transform .2s;
}
.header-socials .header-social-icon svg { display:block; width:20px; height:20px; flex:none; }
.header-socials a.header-social-icon:hover { background:#174d36; color:#f4ffdb; transform:translateY(-2px); }
.header-socials a.header-social-icon:focus-visible { outline:2px solid #174d36; outline-offset:3px; }
.header-contact a.header-phone { display:inline-flex; align-items:center; gap:8px; }
.header-contact .header-phone svg { display:block; width:19px; height:19px; flex:none; }
@media(max-width:600px) {
 .header-socials a.header-social-icon { width:36px; height:36px; min-width:36px; }
}
html.motion-paused .header-socials a.header-social-icon { transition:none; transform:none; }
@media(prefers-reduced-motion:reduce) { .header-socials a.header-social-icon { transition:none; transform:none; } }
