/* Decorative motion is enabled progressively and can be paused in the footer. */
#soro-refined .hero h1 .intro-highlight{position:relative;display:inline-block}
#soro-refined .hero h1 .intro-highlight::after{content:"";position:absolute;left:3%;right:1%;bottom:-.06em;height:.055em;min-height:2px;border-radius:100%;background:#a785be;transform:scaleX(.84);transform-origin:center;pointer-events:none}
#soro-refined .motion-toggle{min-height:44px;border:1px solid var(--soro-rule);border-radius:20px;padding:8px 14px;background:transparent;color:var(--soro-plum);font:inherit;font-size:12px;cursor:pointer;align-self:center}
#soro-refined .motion-toggle:hover{background:var(--soro-lavender)}
#soro-refined .motion-toggle:focus-visible{outline:3px solid var(--soro-plum);outline-offset:4px}
#soro-refined .motion-toggle:disabled{cursor:default}
#soro-refined .tile:focus-visible .project-visual{box-shadow:0 0 0 2px var(--soro-plum)}
@media(hover:hover) and (pointer:fine){#soro-refined .tile:hover .project-visual{box-shadow:0 8px 24px #5b2c7018}#soro-refined .tile:hover h3{text-decoration:underline;text-decoration-color:#bda6cd;text-underline-offset:6px;text-decoration-thickness:1px}}
@media(prefers-reduced-motion:no-preference){
 html.soro-motion #soro-refined .intro-highlight::after{animation:soro-breathe 5.5s ease-in-out infinite}
 html.soro-motion #soro-refined .project-visual{transition:transform 250ms ease,box-shadow 250ms ease}
 html.soro-motion #soro-refined .tile:focus-visible .project-visual{transform:translateY(-4px)}
 html.soro-motion #soro-refined .soro-reveal{transition:opacity 650ms ease,transform 650ms cubic-bezier(.2,.7,.3,1)}
 html.soro-motion #soro-refined .soro-reveal-pending{opacity:0;transform:translateY(18px)}
 html.soro-motion #soro-refined .tile:active .project-visual{transform:scale(.99)}
 @media(hover:hover) and (pointer:fine){html.soro-motion #soro-refined .tile:hover .project-visual{transform:translateY(-4px)}}
}
@keyframes soro-breathe{0%,100%{transform:scaleX(.84);opacity:.55}50%{transform:scaleX(1);opacity:1}}
@media(prefers-reduced-motion:reduce){#soro-refined .soro-reveal{opacity:1;transform:none;transition:none}#soro-refined .intro-highlight::after{animation:none}}
