.portrait-effect{width:166px;max-width:100%;justify-self:end;position:relative;overflow:hidden;aspect-ratio:1;isolation:isolate}.portrait-effect .portrait{width:100%;height:100%;object-fit:cover;filter:grayscale(1);animation:portrait-cycle 18s ease-in-out infinite}.portrait-texture{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle,#000 0 1px,transparent 1.3px);background-size:4px 4px;mix-blend-mode:multiply;opacity:0;animation:portrait-texture 18s ease-in-out infinite}@keyframes portrait-cycle{0%,25%,50%,75%,100%{filter:grayscale(1);transform:translate(0) scale(1)}34%,42%{filter:grayscale(1) contrast(1.65);transform:translate(0) scale(1)}60%{filter:grayscale(1) contrast(1.15);transform:translateX(-1.5%) skewY(1deg) scale(1.04)}66%{filter:grayscale(1) contrast(1.15);transform:translateX(1.5%) skewY(-1deg) scale(1.04)}}@keyframes portrait-texture{0%,25%,50%,100%{opacity:0}34%,42%{opacity:.5}}@media(min-width:1700px){.portrait-effect{width:200px}}@media(max-width:1050px){.portrait-effect{width:140px}}@media(max-width:700px){.portrait-effect{grid-column:2;grid-row:2;width:95px}.portrait-effect .portrait{grid-column:auto;grid-row:auto;width:100%}}@media(max-width:380px){.portrait-effect{grid-column:1;grid-row:3;width:110px;justify-self:start}}@media(prefers-reduced-motion:reduce){.portrait-effect .portrait,.portrait-texture{animation:none}.portrait-texture{opacity:0}}

.portrait-effect .portrait{animation:none;filter:grayscale(1)}.portrait-slice{position:absolute;inset:0;background:url(assets/leo-portrait.png) center/cover;filter:grayscale(1);pointer-events:none;animation:portrait-cut 16s cubic-bezier(.65,0,.35,1) infinite}.slice-0{clip-path:inset(0 0 67% 0);--shift:-9%;animation-delay:0s}.slice-1{clip-path:inset(33% 0 33% 0);--shift:7%;animation-delay:.15s}.slice-2{clip-path:inset(67% 0 0 0);--shift:-5%;animation-delay:.3s}@keyframes portrait-cut{0%,24%,65%,100%{transform:translateX(0)}35%,50%{transform:translateX(var(--shift))}}@media(prefers-reduced-motion:reduce){.portrait-slice{animation:none}}

.portrait-slice,.portrait-texture{display:none}.portrait-effect .portrait{animation:none;transform:none;filter:none}
