/* Иконки соц. сетей */
.si {
    display: inline-block;
    position: relative;
    overflow: hidden;
    width: 40px;
    height: 40px;
    font-size: 1.25rem;
    color: var(--bs-body-color);
}
.si > i {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.15s, transform 0.45s cubic-bezier(0.19, 1, 0.22, 1);
    line-height: 1;
}
.si > i:last-child {
    transform: translateY(100%);
    opacity: 0;
    visibility: hidden;
}
.si:hover > i:first-child {
    transform: translateY(-100%);
    opacity: 0;
    visibility: hidden;
}
.si:hover > i:last-child {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
}

.si.si-border {border: 1px solid var(--bs-border-color);}
.si-list-inline li .si + .si {margin-left: 0.25rem;}
.si-circle {border-radius: 100%;}

.si-colored-vk		{background-color: #0077b5 !important; border-color: #0077b5 !important; color: #fff !important;}
.si-colored-vk:hover	{background-color: #00537f !important; border-color: #00476d !important;}
.si-hover-vk:hover 	{background-color: #00537f !important; border-color: #00537f !important; color: #fff !important;}

.si-colored-rutube 	{background-color: #100943 !important; border-color: #100943 !important; color: #fff !important;}
.si-colored-rutube:hover {background-color: #8410cb !important; border-color: #8410cb !important;}
.si-hover-rutube:hover	{background-color: #100943 !important; border-color: #100943 !important; color: #fff !important;}

.si-colored-2gis	{background-color: #19aa1d !important; border-color: #19aa1d !important; color: #fff !important;}
.si-colored-2gis:hover	{background-color: #0173fa !important; border-color: #0173fa !important;}
.si-hover-2gis:hover	{background-color: #19aa1d !important; border-color: #19aa1d !important; color: #fff !important;}

.si-colored-yandex	{background-color: #333552 !important; border-color: #333552 !important; color: #fff !important;}
.si-colored-yandex:hover {background-color: #db2f43 !important; border-color: #db2f43 !important;}
.si-hover-yandex:hover	{background-color: #333552 !important; border-color: #333552 !important; color: #fff !important;}

.si-colored-telegram	{background-color: #2aaaed; border-color: #2aaaed; color: #fff;}
.si-colored-telegram:hover {background-color: #0088cc; border-color: #0088cc;}
.si-hover-telegram:hover {background-color: #2aaaed; border-color: #2aaaed; color: #fff;}

.si-colored-instagram,
.si-colored-instagram:hover,
.si-hover-instagram:hover {color: #ffffff !important; border-color: transparent;
background-image: radial-gradient(circle at 30% 107%, #fcaf45 0, #f77737 5%, #e1306c 45%, #833ab4 60%, #405de6 90%) !important;}

/* Стили для круглой кнопки (остается на месте) */
.si-colored-wb {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background-image: linear-gradient(0deg, #CB11AB 0%, #990099 35%, #481173 100%);
    color: #ffffff;
    border-radius: 50%;
    border: none;
    position: relative;
    overflow: hidden;
    transition: background 0.3s ease;
}

.si-colored-max {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background-image: linear-gradient(75.45deg, #44ccff 10%, #5533ee 65.0%, #9933dd 100%);
    color: #ffffff;
    border-radius: 50%;
    border: none;
    position: relative;
    overflow: hidden;
    transition: background 0.3s ease;
}

.vk-icon {
    width: 22px;
    height: 22px;
    position: absolute;
    left: 9px; /* Смещение вправо (6px + 3px для центрирования) */
    top: 10px; /* Центрирование по вертикали */
    transition: all 0.4s cubic-bezier(0.5, 1.5, 0.5, 1);
}

/* Анимация при наведении */
.si-colored-vk:hover .vk-icon {animation: icon-pop 0.5s ease-out;}

.tg-icon {
    width: 22px;
    height: 22px;
    position: absolute;
    left: 7px; /* Смещение вправо (6px + 3px для центрирования) */
    top: 10px; /* Центрирование по вертикали */
    transition: all 0.4s cubic-bezier(0.5, 1.5, 0.5, 1);
}

/* Анимация при наведении */
.si-colored-telegram:hover .tg-icon {animation: icon-pop 0.5s ease-out;}

.rt-icon {
    width: 23px;
    height: 23px;
    position: absolute;
    left: 11px; /* Смещение вправо (6px + 3px для центрирования) */
    top: 7px; /* Центрирование по вертикали */
    transition: all 0.4s cubic-bezier(0.5, 1.5, 0.5, 1);
}

/* Анимация при наведении */
.si-colored-rutube:hover .rt-icon {animation: icon-pop 0.5s ease-out;}
.ya-icon {
    width: 20px;
    height: 20px;
    position: absolute;
    left: 9px; /* Смещение вправо (6px + 3px для центрирования) */
    top: 10px; /* Центрирование по вертикали */
    transition: all 0.4s cubic-bezier(0.5, 1.5, 0.5, 1);
}
/* Анимация при наведении */
.si-colored-yandex:hover .ya-icon {
    animation: icon-pop 0.5s ease-out;
}

.gs-icon {
    width: 23px;
    height: 23px;
    position: absolute;
    left: 8px; /* Смещение вправо (6px + 3px для центрирования) */
    top: 10px; /* Центрирование по вертикали */
    transition: all 0.4s cubic-bezier(0.5, 1.5, 0.5, 1);
}

/* Анимация при наведении */
.si-colored-2gis:hover .gs-icon {animation: icon-pop 0.5s ease-out;}
/* Состояние при наведении */
.si-colored-wb:hover {background-image: linear-gradient(0deg, #ef2fce 0%, #b000b0 35%, #5d1694 100%);}

/* Иконка - изначальное состояние */
.wb-icon {
    width: 27px;
    height: 27px;
    position: absolute;
    left: 6px; /* Смещение вправо (6px + 3px для центрирования) */
    top: 6px; /* Центрирование по вертикали */
    transition: all 0.4s cubic-bezier(0.5, 1.5, 0.5, 1);
}

/* Анимация при наведении для иконок соц. сетей*/
.si-colored-wb:hover .wb-icon {animation: icon-pop 0.5s ease-out;}

.si-colored-mx:hover {background-image: linear-gradient(0deg, #ef2fce 0%, #b000b0 35%, #5d1694 100%);}

.mx-icon {
    width: 22px;
    height: 22px;
    position: absolute;
    left: 9px; /* Смещение вправо (6px + 3px для центрирования) */
    top: 9px; /* Центрирование по вертикали */
    transition: all 0.4s cubic-bezier(0.5, 1.5, 0.5, 1);
}

.si-colored-max:hover .mx-icon {animation: icon-pop 0.5s ease-out;}

@keyframes icon-pop {
    0% {
        transform: translateY(30px);
        opacity: 0;
    }
    80% {
        transform: translateY(-3px);
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}
.si-hover-ok:hover	{background-color: #EE8208 !important; border-color: #EE8208 !important; color: #fff !important;}

.si-colored-whatsapp	{background-color: #25d366 !important; border-color: #25d366 !important; color: #fff !important;}
.si-colored-whatsapp:hover {background-color: #1a9447 !important; border-color: #167f3d !important;}
.si-hover-whatsapp:hover {background-color: #25d366 !important; border-color: #25d366 !important; color: #fff !important;}

.si-colored-youtube	{background-color: red !important; border-color: red !important; color: #fff !important;}
.si-colored-youtube:hover {background-color: #b30000 !important; border-color: #900 !important;}
.si-hover-rutube:hover {background-color: red !important; border-color: red !important; color: #fff !important;}
