.contact-music{position:absolute;z-index:3;left:50%;bottom:calc(100% + 30px);width:100vw;height:180px;transform:translateX(-50%);overflow:hidden;pointer-events:none;user-select:none;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.contact-music-lines,.contact-music-notes{position:absolute;inset:0;width:100%;height:100%}
.contact-music-lines{overflow:visible}
.contact-music-lines path{fill:none;stroke-width:.85;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 3px currentColor)}
.contact-music-lines path:nth-child(1){stroke:#8b5cf6;opacity:.28}
.contact-music-lines path:nth-child(2){stroke:#60a5fa;opacity:.23}
.contact-music-lines path:nth-child(3){stroke:#ec5fa7;opacity:.22}
.contact-music-lines path:nth-child(4){stroke:#5eead4;opacity:.18}
.contact-music-note{position:absolute;left:0;top:0;display:block;line-height:1;font-family:"Segoe UI Symbol","Arial Unicode MS",sans-serif;font-weight:400;white-space:nowrap;will-change:transform,opacity;transform-origin:center;opacity:.7;text-shadow:0 0 6px color-mix(in srgb,currentColor 60%,transparent),0 0 13px color-mix(in srgb,currentColor 25%,transparent);transition:text-shadow .45s ease;contain:layout style;animation:musicNoteShimmer var(--twinkle-duration,4.8s) ease-in-out var(--twinkle-delay,0s) infinite}
.contact-music-note::after{content:attr(data-glyph);position:absolute;inset:0;line-height:inherit;color:inherit;filter:blur(5px);opacity:.1;animation:musicHaloShimmer var(--twinkle-duration,4.8s) ease-in-out var(--twinkle-delay,0s) infinite}
.contact-music-note.is-inspired{text-shadow:0 0 12px currentColor,0 0 22px color-mix(in srgb,currentColor 34%,transparent)}
.contact-music-note.is-particle{font-family:Arial,sans-serif;opacity:.48}
.contact-music-note.is-particle::after{display:none}
@keyframes musicNoteShimmer{0%,34%,100%{opacity:.58}43%{opacity:.78}53%{opacity:.62}69%{opacity:.94}79%{opacity:.65}}
@keyframes musicHaloShimmer{0%,34%,100%{opacity:.08}43%{opacity:.26}53%{opacity:.11}69%{opacity:.56}79%{opacity:.13}}
@media(max-width:1050px){.contact-music{height:158px}.contact-music-note{font-size:clamp(11px,1.7vw,19px)}}
@media(max-width:700px){.contact-music{bottom:calc(100% + 15px);height:126px}.contact-music-lines path:nth-child(4),.contact-music-note[data-lane="3"]{display:none}.contact-music-lines path{stroke-width:.75}.contact-music-note.is-particle[data-mobile-hide]{display:none}}
@media(prefers-reduced-motion:reduce){.contact-music-note,.contact-music-note::after{animation:none}.contact-music-note{will-change:auto;opacity:.7}.contact-music-note::after{opacity:.18}}
