  .social-links {
    width: 100%;
    margin: 10px 0;
  }

  .social-list {
    display: flex;
    gap: 12px;
    list-style: none;
    padding: 0;
    margin: 0;
    align-items: center; /* горизонтально в ряд */
    justify-content: center
  }

  /* Базовый стиль: цвет и рамка наследуются от цвета текста (например, футера) */
  .social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    text-decoration: none;
    font-size: 20px;
    color: #fff;                /* цвет иконки = цвет текста футера */
    border: 1px solid currentColor;/* рамка — того же цвета */
    background: transparent;
    transition: transform 160ms ease, background-color 160ms ease, border-color 160ms ease, color 160ms ease;
    position: relative;
  }

  /* Hover / active / focus: затемняем цвет (фон и рамку) на 40% относительно текущего цвета */
  .social-icon:hover,
  .social-icon:active,
  .social-icon:focus {
    transform: translateY(-3px);
    /* цвет фона — смесь currentColor (60%) + black (40%) => затемнение на 40% */
    background-color: color-mix(in srgb, currentColor 60%, black 40%);
    border-color: color-mix(in srgb, currentColor 60%, black 40%);
    color: #ffffff; /* иконка становится белой для контраста */
    outline: none;
  }

  /* Доступность: видимый фокус (для клавиатуры) */
  .social-icon:focus-visible {
    box-shadow: 0 0 0 4px color-mix(in srgb, currentColor 20%, transparent);
    outline: none;
  }

  /* Скрытый текст для скринридеров */
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
  }

  /* Для пользователей, предпочитающих уменьшенную анимацию */
  @media (prefers-reduced-motion: reduce) {
    .social-icon { transition: none; transform: none; }
  }