/* ===== Footer menu hover ===== */
.ve-footer a {
position: relative;
text-decoration: none;
color: #333333;
transition: color .25s ease;
}
.ve-footer a::after {
content: "";
position: absolute;
left: 0;
bottom: -2px; /* расстояние подчёркивания от текста */
width: 100%;
height: 2px;
background: currentColor;
transform: scaleX(0); /* старт: скрыто */
transform-origin: left;
transition: transform .25s ease;
}
.ve-footer a:hover {
color: #0243AC; /* ваш акцентный синий */
}
.ve-footer a:hover::after {
transform: scaleX(1); /* плавное проявление линии */
}
/* ===== Logo mini-animation ===== */
.ve-logo {
display: inline-block;
will-change: transform, filter;
transition: transform .25s ease, filter .25s ease;
/* мягкое «дыхание» без наведения — очень деликатно */
animation: ve-breathe 4s ease-in-out infinite;
}
@keyframes ve-breathe {
0%, 100% { transform: translateZ(0) scale(1); }
50% { transform: translateZ(0) scale(1.012); }
}
/* эффект при hover — едва заметный подъём и подсветка */
.ve-logo:hover {
transform: translateY(-1px) scale(1.02);
filter: drop-shadow(0 2px 6px rgba(2, 67, 172, 0.25));
}
/* уважение системной настройке «уменьшить анимацию» */
@media (prefers-reduced-motion: reduce) {
.ve-logo { animation: none; }
.ve-footer a::after { transition: none; }
}