/* Flag-only Polylang links retain accessible language names in aria-label. */
body.family-field .tpi-language-switcher ul { gap:4px; }
body.family-field .tpi-language-switcher a {
  width:34px;
  height:38px;
  padding:4px;
  line-height:1;
  border-radius:3px;
  box-sizing:border-box;
}
body.family-field .tpi-language-switcher__flag {
  display:block;
  width:24px;
  height:17px;
  max-width:none;
  padding:0;
  border:0;
  border-radius:0;
  object-fit:contain;
  filter:none;
}
body.family-field .tpi-language-switcher a:focus-visible {
  outline:2px solid currentColor;
  outline-offset:2px;
}
body.family-field .tpi-language-switcher .is-current a {
  border-color:currentColor;
}

/* SVG brand icons do not depend on fonts or third-party script/CDN requests. */
body.family-field .footer-social a:has(.tpi-social-icon) {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
}
body.family-field .footer-social .tpi-social-icon {
  display:block;
  width:20px;
  height:20px;
  flex:0 0 20px;
  fill:currentColor;
}
body.family-field .footer-social .tpi-social-label {
  min-width:0;
  line-height:1.4;
}
