{
  "html": "<footer class='footer'><div class='footer__glow footer__glow--1'></div><div class='footer__glow footer__glow--2'></div><div class='footer__inner'><p class='footer__copy'>© 2026 Каталог компьютеров</p><nav class='footer__nav'><a href='/policy' class='footer__link footer__link--gradient'>Политика</a><a href='/rules' class='footer__link footer__link--gradient footer__link--slow'>Правила</a></nav></div></footer>",
  "css": ".footer { position: relative; overflow: hidden; }\n.footer .footer__glow { position: absolute; border-radius: 50%; filter: blur(60px); opacity: 0.55; pointer-events: none; z-index: 0; }\n.footer .footer__glow--1 { width: 320px; height: 320px; top: -120px; left: -80px; background: radial-gradient(circle, #7ef29d 0%, #3ddc84 40%, transparent 70%); animation: footer-glow-move 14s ease-in-out infinite alternate; }\n.footer .footer__glow--2 { width: 280px; height: 280px; bottom: -100px; right: -60px; background: radial-gradient(circle, #b6ff7a 0%, #4be3a0 45%, transparent 72%); animation: footer-glow-move-reverse 18s ease-in-out infinite alternate; }\n.footer .footer__inner { position: relative; z-index: 1; }\n.footer .footer__link--gradient { position: relative; padding-bottom: 3px; }\n.footer .footer__link--gradient::after { content: ''; position: absolute; left: 0; bottom: 0; height: 2px; width: 100%; background: linear-gradient(90deg, #3ddc84, #b6ff7a, #3ddc84); background-size: 200% 100%; border-radius: 2px; transform: scaleX(0); transform-origin: left; transition: transform 0.35s ease; }\n.footer .footer__link--gradient:hover::after { transform: scaleX(1); animation: footer-underline-run 4s ease-in-out infinite; }\n.footer .footer__link--slow::after { transition-duration: 0.6s; }\n.footer .footer__link--slow:hover::after { animation-duration: 6s; }\n@keyframes footer-glow-move { 0% { transform: translate(0, 0) scale(1); } 50% { transform: translate(60px, 40px) scale(1.15); } 100% { transform: translate(20px, -30px) scale(0.95); } }\n@keyframes footer-glow-move-reverse { 0% { transform: translate(0, 0) scale(1); } 50% { transform: translate(-70px, -50px) scale(1.2); } 100% { transform: translate(-30px, 30px) scale(0.9); } }\n@keyframes footer-underline-run { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }"
}