1. Объявлять связи по БЭМ нужно жестко .social__btn
в примере может быть использовано в другом месте, вне родителя, это не по БЭМ-у. Надо в css указывать явно .social .social__btn ...
.
2. Остальное вроде корректно, но лично я бы так не делал.
3. Еще есть примеси, которые актуальны в «подвале переопределить», но в данном случае так, как модификаторы по сути своей разные, этот вопрос некорректен, и данный метод не подходит. Тут просто 2 абсолютно разных модификатора, один красит в белый, другой в фиолетовый.
PS: Модификаторы тоже должны иметь явную привязку к родителю, а не указываться отдельно.