#radiation,#radiation::after{border-radius:45% 55% 48% 52%/56% 43% 57% 44%;background-color:#663399;width:70px;height:50px}#radiation i:nth-child(3)::after,#radiation i:nth-child(4)::after{content:'';width:20px;height:20px;filter:blur(10px);bottom:0;left:-20px;transform:scale(1.1);border-radius:50%;position:absolute}#hero h1 span{opacity:0;filter:blur(4px);transform:translateY(12px);animation:.8s ease-out forwards focus-in}#singularity{position:sticky;top:50%;opacity:0;pointer-events:none;transform:translateY(-50%);animation:ease-in-out forwards fade-in;animation-timeline:view();animation-range:entry 100vh}#blackhole{width:200px;height:200px;filter:blur(10px);position:absolute;left:calc(50% - 100px);top:calc(50% - 100px)}#blackhole::before{content:'';position:absolute;width:100%;height:100%;background-color:#663399;border-radius:45% 55% 43% 57%/41% 39% 61% 59%;box-shadow:-3px -1px 0 15px #663399,0 3px 0 18px #663399;transform:rotate(426deg);animation:20s linear infinite rotate,20s linear infinite radius;left:0}#blackhole::after{content:'';position:absolute;background:var(--color-background);width:100%;height:100%;border-radius:50%;left:0}#radiation{position:absolute;z-index:-1;bottom:50px;margin:auto;filter:blur(10px);animation:8s linear infinite radius;left:calc(50% - 35px)}#radiation::after{content:'';position:absolute;bottom:-8px;left:-25px;animation:7s linear 2s infinite radius}#radiation::before{content:'';position:absolute;width:20px;height:20px;border-radius:50%;filter:blur(10px);bottom:0;left:0;animation:7s infinite forwards radiation,20s linear infinite radius}#radiation i:first-child::before{content:'';position:absolute;width:20px;height:20px;border-radius:50%;filter:blur(10px);bottom:0;left:10px;animation:4s infinite forwards radiation,10s linear infinite radius}#radiation i:first-child::after{content:'';position:absolute;width:20px;height:20px;border-radius:50%;filter:blur(10px);bottom:0;left:30px;transform:scale(.8);animation:5s 1s infinite forwards radiation,10s linear 1s infinite radius}#radiation i:nth-child(2)::before{content:'';position:absolute;width:20px;height:20px;border-radius:50%;filter:blur(10px);bottom:0;left:20px;animation:6s 2s infinite forwards radiation,10s linear 2s infinite radius}#radiation i:nth-child(2)::after{content:'';position:absolute;width:20px;height:20px;border-radius:50%;filter:blur(10px);bottom:0;left:-20px;transform:scale(.9);animation:7s 3s infinite forwards radiation2,10s linear 3s infinite radius}#radiation i:nth-child(3)::before{content:'';position:absolute;width:20px;height:20px;border-radius:50%;filter:blur(10px);bottom:0;left:35px;animation:3s 4s infinite forwards radiation3,10s linear 4s infinite radius}#radiation i:nth-child(3)::after{animation:5s 5s infinite forwards radiation3,6s linear 5s infinite radius}#radiation i:nth-child(4)::before{content:'';position:absolute;width:20px;height:20px;border-radius:50%;filter:blur(10px);bottom:0;left:45px;animation:9s 5s infinite forwards radiation4,10s linear 5s infinite radius}#radiation i:nth-child(4)::after{animation:9s 6s infinite forwards radiation4,6s linear 6s infinite radius}#scroll-to-top img{filter:brightness(.6);width:100%;aspect-ratio:1;border-radius:50%;object-fit:cover}#scroll-to-top::before{content:url(../icons/chevron-up.svg);position:absolute;top:0;filter:invert(1);margin-top:0;opacity:0;scale:1.5;transition:.25s ease-out}#lang .menu a:hover,#scroll-to-top:hover{background:rgba(255,255,255,.3)}#scroll-to-top:hover img{filter:brightness(.9)}#scroll-to-top:hover::before{margin-top:-2rem;opacity:.7}#scroll-watcher{width:100%;height:2px;position:fixed;background:var(--color-primary-light);top:0;z-index:1000;scale:0 1;transform-origin:left;animation:linear scroll-watcher;animation-timeline:scroll();filter:drop-shadow(0 0 8px rgba(255, 66, 232, 1))}#lang .menu a.active{background:rgba(255,255,255,.2)}#lang .btn:active,#lang .btn:focus,#lang:active .btn,#lang:focus .btn{border-color:#fff}#lang .btn:active+.menu,#lang .btn:focus+.menu,#lang:active .btn+.menu,#lang:focus .btn+.menu{margin-top:.5rem;pointer-events:auto;opacity:1;height:auto}body.scrolled #portfolio .title{animation-direction:reverse}body.scrolled #portfolio .title h2::before{transform:translateX(0);transition-delay:0.2s}body.scrolled #portfolio .title h2::after{transform:translateX(100%)}body.scrolled #scroll-to-top{width:4rem;height:4rem;right:1rem}body.scrolled #scroll-to-top::before{display:none}.typewrite span{border-right:4px solid transparent;animation:.5s infinite alternate-reverse text-cursor}.blink{animation:1s infinite blink}@media screen and (min-width:768px){#lang:hover .btn{border-color:#fff}#lang:hover .menu{margin-top:.5rem;pointer-events:auto;opacity:1;height:auto}#blackhole{scale:2}}@keyframes radiation{0%{box-shadow:20px -3vh 0 10px var(--color-accent)}100%{border-radius:45% 55% 48% 52%/56% 43% 57% 44%;box-shadow:40px -43vh 0 20px var(--color-accent);transform:scale(1)}}@keyframes radiation2{0%{box-shadow:10px -5vh 0 10px var(--color-accent)}100%{box-shadow:20px -45vh 0 20px var(--color-accent)}}@keyframes radiation3{0%{box-shadow:9px -7vh 0 6px var(--color-accent)}100%{box-shadow:14px -45vh 0 15px var(--color-accent)}}@keyframes radiation4{0%{box-shadow:9px -7vh 0 7px var(--color-accent)}100%{box-shadow:14px -45vh 0 14px var(--color-accent)}}@keyframes scroll-watcher{to{scale:1 1;opacity:1}}@keyframes focus-in{to{opacity:1;filter:blur(0);transform:translateY(0)}}@keyframes blink{50%{opacity:0}}@keyframes text-cursor{to{border-right-color:#fff}}