.hero-badges{position:absolute;inset:0;pointer-events:none;z-index:5}
.ribbon-stage .ribbon-fallback{filter:none;transition:none}.ribbon-fallback img{display:block;width:100%;height:100%;object-fit:contain}.ribbon-stage #ribbon-canvas{transition:none}
.badge-drop-overlay{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:40}
.falling-badge{position:absolute;top:0;left:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 15px;min-height:34px;background:#f6f5f1ed;color:#252f42;border:1px solid #c9d0dce6;border-radius:999px;box-shadow:0 4px 12px #182a5b07;font-family:Pretendard,sans-serif;font-size:10px;font-weight:550;letter-spacing:1.1px;line-height:1;white-space:nowrap;opacity:0;will-change:transform;backface-visibility:hidden;user-select:none}
.falling-badge:before{content:'';width:5px;height:5px;border-radius:50%;background:#2455f5;flex-shrink:0}
.falling-badge.badge-accent{background:#2455f5;color:white;border-color:#2455f5;box-shadow:0 5px 18px #2455f518}.falling-badge.badge-accent:before{background:#c7d5ff}
.hero.has-falling-badges .ribbon-label{visibility:hidden}
.falling-badge[data-state=settled]{will-change:auto}
.falling-badge{font-size:calc(10px * var(--badge-size,1));padding:calc(10px * var(--badge-size,1)) calc(15px * var(--badge-size,1));min-height:calc(34px * var(--badge-size,1))}
@media(max-width:767px){.falling-badge{font-size:8px;letter-spacing:.65px;padding:8px 10px;min-height:28px;gap:6px;box-shadow:0 2px 8px #182a5b05}.falling-badge:before{width:4px;height:4px}.falling-badge.badge-accent{background:#f6f5f1ed;color:#2455f5;border-color:#a8baf6;box-shadow:none}.falling-badge.badge-accent:before{background:#2455f5}}
@media(prefers-reduced-motion:reduce){.falling-badge{will-change:auto}}
@media(max-width:767px){.falling-badge{font-size:calc(8px * var(--badge-size-mobile,1));padding:calc(8px * var(--badge-size-mobile,1)) calc(10px * var(--badge-size-mobile,1));min-height:calc(28px * var(--badge-size-mobile,1))}}
