{
  "html": "<section class='hero'><div class='hero__inner'><p class='hero__eyebrow'>Праздник для детей</p><h1 class='hero__title'>Весёлые детские праздники<span class='hero__wave'></span></h1><p class='hero__subtitle'>Организация незабываемых событий</p><p class='hero__lead'>Шарики, игры, аниматоры и море радости — мы создаём праздник, который запомнится надолго!</p><a class='hero__link' href='#contact'>Записаться на праздник</a><div class='hero__balloons'><span class='hero__balloon hero__balloon--1'></span><span class='hero__balloon hero__balloon--2'></span><span class='hero__balloon hero__balloon--3'></span><span class='hero__balloon hero__balloon--4'></span><span class='hero__balloon hero__balloon--5'></span></div><div class='hero__particles'><span class='hero__particle hero__particle--1'></span><span class='hero__particle hero__particle--2'></span><span class='hero__particle hero__particle--3'></span><span class='hero__particle hero__particle--4'></span><span class='hero__particle hero__particle--5'></span><span class='hero__particle hero__particle--6'></span><span class='hero__particle hero__particle--7'></span><span class='hero__particle hero__particle--8'></span></div></div></section>",
  "css": ".hero .hero__title { position: relative; display: inline-block; } .hero .hero__wave { position: absolute; left: 0; right: 0; bottom: -14px; height: 10px; display: block; background: linear-gradient(90deg, #2563eb, #3b82f6, #60a5fa, #2563eb); background-size: 200% 100%; border-radius: 999px; transform-origin: left center; animation: hero-wave-grow 1.2s cubic-bezier(0.34, 1.56, 0.64, 1) 0.3s both, hero-wave-shift 4s linear 1.5s infinite; } @keyframes hero-wave-grow { 0% { transform: scaleX(0); opacity: 0; } 100% { transform: scaleX(1); opacity: 1; } } @keyframes hero-wave-shift { 0% { background-position: 0% 50%; } 100% { background-position: 200% 50%; } } .hero .hero__link { display: inline-block; margin-top: 32px; padding: 14px 32px; font-size: 17px; font-weight: 600; color: #2563eb; text-decoration: none; background: #ffffff; border-radius: 999px; box-shadow: 0 6px 20px rgba(37, 99, 235, 0.18); position: relative; overflow: hidden; transition: transform 0.25s ease, box-shadow 0.25s ease; } .hero .hero__link::after { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 3px; background: linear-gradient(90deg, #2563eb, #3b82f6, #60a5fa, #2563eb); background-size: 200% 100%; animation: hero-link-run 2.5s linear infinite; } .hero .hero__link:hover { transform: translateY(-2px); box-shadow: 0 10px 26px rgba(37, 99, 235, 0.28); } @keyframes hero-link-run { 0% { background-position: 0% 50%; } 100% { background-position: 200% 50%; } } .hero .hero__particles { position: absolute; inset: 0; pointer-events: none; z-index: 1; overflow: hidden; } .hero .hero__particle { position: absolute; width: 10px; height: 10px; border-radius: 50%; opacity: 0; animation: hero-float 9s ease-in-out infinite; } .hero .hero__particle--1 { left: 8%; top: 70%; background: #60a5fa; animation-delay: 0s; } .hero .hero__particle--2 { left: 22%; top: 85%; background: #bfdbfe; width: 14px; height: 14px; animation-delay: 0.2s; } .hero .hero__particle--3 { left: 38%; top: 75%; background: #3b82f6; width: 8px; height: 8px; animation-delay: 1.4s; } .hero .hero__particle--4 { left: 55%; top: 88%; background: #dbeafe; width: 12px; height: 12px; animation-delay: 2.1s; } .hero .hero__particle--5 { left: 70%; top: 72%; background: #60a5fa; animation-delay: 0.8s; } .hero .hero__particle--6 { left: 84%; top: 82%; background: #bfdbfe; width: 16px; height: 16px; animation-delay: 3s; } .hero .hero__particle--7 { left: 48%; top: 92%; background: #3b82f6; width: 7px; height: 7px; animation-delay: 1.9s; } .hero .hero__particle--8 { left: 92%; top: 65%; background: #dbeafe; width: 11px; height: 11px; animation-delay: 2.6s; } @keyframes hero-float { 0% { transform: translateY(0) translateX(0); opacity: 0; } 15% { opacity: 0.85; } 50% { transform: translateY(-120px) translateX(20px); opacity: 0.7; } 85% { opacity: 0.4; } 100% { transform: translateY(-240px) translateX(-15px); opacity: 0; } }"
}