.fp-social-media a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  border-radius: 12px;
  color: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
  transition: transform 150ms ease-out;
}
.fp-social-media svg { width: 20px; height: 20px; color: #fff; }
.fp-social-media > div { display: flex; flex-wrap: wrap; gap: 12px; }
.fp-social-media--header { margin: 0; }
.fp-social-media--header > div { gap: 8px; }
.fp-social-media--footer { margin-top: 24px; }
.fp-social-media > p {
  margin-bottom: 12px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.8);
}
.fp-social-media a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.fp-social-media--header a:focus-visible { outline-color: #003366; }
.fp-header-main { position: relative; }
.fp-header-actions { flex-direction: column; align-items: flex-end; gap: 8px; }
.fp-header-social-mobile { display: none; }
@media (max-width: 1023px) {
  .fp-header-main { align-items: flex-start; padding-top: 12px; }
  .fp-header-logo { height: 64px; width: auto; }
  .fp-header-toggle { margin-top: 12px; }
  .fp-header-social-mobile {
    position: absolute;
    display: flex;
    justify-content: center;
    left: 16px;
    right: 16px;
    bottom: 8px;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .fp-social-media a:hover { transform: translateY(-2px); }
  .fp-social-media a:active { transform: scale(0.97); }
}
@media (prefers-reduced-motion: reduce) {
  .fp-social-media a { transition: none; }
}
