.agency-statement {
    position: relative;
    isolation: isolate;
    margin: 96px 0;
    padding: 112px 32px;
    text-align: center;
    scroll-margin-top: 64px;
}

#agency-statement-text { position: relative; z-index: 1; }
.statement-stickers { position: absolute; inset: 0; pointer-events: none; user-select: none; }
.statement-sticker {
    position: absolute;
    display: block;
    width: var(--sticker-size);
    aspect-ratio: 1;
    transform: rotate(var(--tilt));
}
.statement-sticker img { display: block; width: 100%; height: 100%; object-fit: contain; }
.sticker-pink { --sticker-size: 106px; --tilt: -9deg; --delay: 0ms; top: -2px; left: 44px; }
.sticker-ink { --sticker-size: 120px; --tilt: 8deg; --delay: 90ms; top: -14px; right: 30px; }
.sticker-paper { --sticker-size: 140px; --tilt: -7deg; --delay: 160ms; bottom: -12px; left: 14px; }
.sticker-torn { --sticker-size: 190px; --tilt: 12deg; --delay: 220ms; bottom: -38px; right: 4px; }

[data-sticker-state='waiting'] .statement-sticker,
[data-sticker-state='loading'] .statement-sticker { opacity: 0; transform: translateY(-20px) rotate(calc(var(--tilt) - 5deg)); }
[data-sticker-state='revealed'] .statement-sticker { animation: sticker-fall 800ms cubic-bezier(0.22, 0.7, 0.3, 1) var(--delay) both; }
@keyframes sticker-fall {
    from { opacity: 0; transform: translateY(-20px) rotate(calc(var(--tilt) - 5deg)); }
    65% { opacity: 1; }
    82% { transform: translateY(2px) rotate(calc(var(--tilt) + 1deg)); }
    to { opacity: 1; transform: translateY(0) rotate(var(--tilt)); }
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    #agency-statement-text:hover + .statement-stickers .statement-sticker img {
        animation: sticker-jiggle 480ms ease-in-out var(--delay);
    }
}
@keyframes sticker-jiggle {
    0%, 100% { transform: translateY(0) rotate(0); }
    25% { transform: translateY(-2px) rotate(-2deg); }
    55% { transform: translateY(1px) rotate(2deg); }
    80% { transform: translateY(0) rotate(-1deg); }
}

@media (max-width: 600px) {
    .agency-statement { margin: 80px 0; padding-inline: 12px; }
    .sticker-pink { left: 0; }
    .sticker-ink { right: 0; }
    .sticker-paper { left: 0; }
    .sticker-torn { right: 0; }
}

@media (prefers-reduced-motion: reduce) {
    .agency-statement .statement-sticker { opacity: 1; transform: rotate(var(--tilt)); animation: none; }
    .agency-statement .statement-sticker img { animation: none; }
}
