.floating-menu { position: fixed; right: 204px; bottom: 132px; z-index: 9999; display: flex; flex-direction: column; align-items: flex-end; opacity: 0; visibility: hidden; animation: floating-menu-fade-in 1s ease .5s forwards; }
.floating-menu .floating-menu-link { display: flex; align-items: center; justify-content: center; width: 70px; height: 70px; padding: 0; border-radius: 50%; background: #fae100; color: #111111; font-size: 15px; font-weight: 700; line-height: 1.4; text-align: center; text-decoration: none; box-sizing: border-box; box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18), 0 4px 12px rgba(0, 0, 0, 0.12); transition: transform 0.2s ease, box-shadow 0.2s ease; }
@media (hover: hover) {
	.floating-menu .floating-menu-link:hover { text-decoration: none; transform: translateY(-2px); box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22), 0 6px 14px rgba(0, 0, 0, 0.14); }
}
.floating-menu .floating-menu-link:focus-visible { outline: 2px solid #111111; outline-offset: 2px; }
.floating-menu .floating-menu-icon { display: block; width: 60%; object-fit: contain; }
.sr-only { overflow: hidden; position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; }
@keyframes floating-menu-fade-in { 0% { opacity: 0; visibility: hidden; transform: translateY(12px); }
	1% { opacity: 0; visibility: visible; transform: translateY(12px); }
	100% { opacity: 1; visibility: visible; transform: translateY(0); }; }
@media (max-width: 768px) {
	#top_btn { bottom: 170px !important; right: 38px; }
	.floating-menu { right: 30px; bottom: 102px; }
	.floating-menu .floating-menu-link { width: 60px; height: 60px; box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18), 0 4px 10px rgba(0, 0, 0, 0.10); }
}