/* Restore one-time fade-up on scroll, independent of scroll speed. */
body .rf-trigger-reveal{opacity:0!important;transform:translateY(24px)!important;transition:opacity .7s ease,transform .7s cubic-bezier(.22,.61,.36,1)!important}
body .rf-trigger-reveal.rf-entered{opacity:1!important;transform:none!important}
body .work-grid .work-card.reveal,body .work-nav button,body .work-nav .tag-search-button{opacity:.18!important;translate:0 22px;transition:opacity .65s ease,translate .65s cubic-bezier(.22,.61,.36,1)!important;transition-delay:var(--rf-entry-delay,0ms)!important;animation:none!important}
body .work-grid .work-card.reveal.rf-home-entered,body .work-nav .rf-home-entered{opacity:1!important;translate:0 0}
html.rf-home-entry-pending .work-card,html.rf-home-entry-pending .work-nav button,html.rf-home-entry-pending .tag-search-button{visibility:visible}
.about-contact a,.about-contact a.intro-email{color:var(--green)!important;text-decoration:none}
.about-contact a:hover{text-decoration:underline}
.rf-back-top{position:fixed;top:50%;z-index:45;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px;border:0;background:transparent;color:#b5bbc0;font-size:13px;font-family:inherit;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .3s,transform .3s,visibility .3s}
.rf-back-top svg{width:22px;height:28px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.rf-back-top.is-visible{opacity:1;visibility:visible;transform:none}.rf-back-top:hover{color:var(--accent,var(--green,#b4ff00))}
html.rf-project-preview-pending .hero-preview img{visibility:hidden}
@media(max-width:700px){.rf-back-top{top:auto;bottom:22px;background:rgba(10,12,14,.85);border-radius:6px}}
@media(prefers-reduced-motion:reduce){body .rf-trigger-reveal,.work-grid .work-card,.work-nav button,.work-nav .tag-search-button{opacity:1!important;transform:none!important;translate:none!important;transition:none!important;animation:none!important;visibility:visible!important}.intro-email{opacity:1!important}}

body .work-grid .work-card.reveal{transform:none!important}

body.rf-project .rf-back-top{top:58%;font-size:14px}
body.rf-project .rf-back-top svg{width:28px;height:34px}
@media(max-width:700px){body.rf-project .rf-back-top{top:auto;bottom:16px}}

body.rf-project .rf-back-top{top:66%;gap:6px}
body.rf-project .rf-back-top>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid currentColor;border-radius:50%;background:transparent;font-size:12px}
@media(max-width:700px){body.rf-project .rf-back-top{top:auto;bottom:12px}}

body.rf-project .rf-back-top,body.rf-tag-feed .rf-back-top{top:66%;width:72px;height:72px;border:1px solid currentColor;border-radius:50%;padding:8px;gap:2px;background:transparent;font-size:12px}
body.rf-project .rf-back-top>span,body.rf-tag-feed .rf-back-top>span{display:block;width:auto;height:auto;border:0;border-radius:0;font-size:12px}
body.rf-project .rf-back-top svg,body.rf-tag-feed .rf-back-top svg{width:25px;height:29px}
@media(max-width:700px){body.rf-project .rf-back-top,body.rf-tag-feed .rf-back-top{top:auto;bottom:12px;width:62px;height:62px;background:rgba(10,12,14,.85)}}
/* Move only the outline; arrow and text retain their current placement. */
body.rf-project .rf-back-top,body.rf-tag-feed .rf-back-top{border:0}
body.rf-project .rf-back-top::before,body.rf-tag-feed .rf-back-top::before{content:"";position:absolute;inset:0;border:1px solid currentColor;border-radius:50%;transform:translateY(-2px);opacity:.7;pointer-events:none}
