.hf-film{--film-loop:30s cubic-bezier(.2, .8, .2, 1) infinite both}.hf-row{align-items:center;gap:.5em;display:flex}.hf-push{margin-left:auto}.hf-in{animation:hfIn var(--film-loop)}.hf-pop{animation:hfPop var(--film-loop)}.hf-chip{background:var(--film-chip);white-space:nowrap;border-radius:.5em;padding:.5em .8em;font-size:.76em;font-weight:500;position:relative}.hf-chip-ink{background:var(--film-ink);color:var(--film-bg)}.hf-chip-skel{height:2.25em;padding:0}.hf-out{animation:hfLineOut var(--film-loop)}.hf-film .film-w{animation:hfWordIn var(--film-loop)}.hf-film .film-acc{animation:hfAccent var(--film-loop)}.hf-film .film-bar{animation:hfBar var(--film-loop);padding-left:1.2em}.hf-film .film-q span{animation:30s step-end infinite both hfKey}.hf-film .film-go{animation:hfGo var(--film-loop)}.hf-brief{animation:hfBrief var(--film-loop)}.hf-brief .film-badge{animation:hfBadge var(--film-loop);margin-left:auto}.hf-brief-title{animation:hfWipe var(--film-loop)}.hf-brief-in{animation:hfBriefIn var(--film-loop)}.hf-chips{flex-wrap:wrap;gap:.45em;margin-top:.9em;display:flex}.hf-film .film-dot{animation:hfDot var(--film-loop)}.hf-film .film-ava-big{animation:hfAva var(--film-loop)}.hf-cut{animation:hfCut var(--film-loop)}.hf-ava-s{width:1.5em;height:1.5em}.hf-ava-first{animation:30s step-end infinite both hfAvaS}.hf-cut-name{white-space:nowrap;font-size:.86em;font-weight:600}.hf-cut-icons{gap:.4em;margin-left:auto;display:flex}.hf-cut-icons svg{width:1.15em;height:1.15em}.hf-cut-body{flex-direction:column;justify-content:center;height:8.6em;display:flex;position:relative}.hf-odo3{animation:hfOdo3 var(--film-loop)}.hf-odo6{animation:30s cubic-bezier(.3,.7,.3,1) infinite both hfOdo6}.hf-skel{background:var(--film-chip);border-radius:99em;height:.5em;display:block}.hf-toast{background:var(--film-ink);color:var(--film-bg);border-radius:.6em;align-items:center;gap:.4em;padding:.5em .85em;font-size:.74em;font-weight:600;display:inline-flex;position:absolute;bottom:1.3em;right:1.6em;box-shadow:0 .6em 1.4em -.5em #16130f80}.hf-toast-top{top:1.5em;bottom:auto}.hf-toast svg{width:1.2em;height:1.2em;color:var(--film-accent)}.hf-ad-title{font-family:var(--font-heading);letter-spacing:-.03em;margin:.25em 0 .7em;font-size:1.3em;font-weight:500}.hf-hit{z-index:2;animation:hfHit var(--film-loop)}.hf-film .film-rip{animation:30s ease-out infinite both hfRip}.hf-film .film-cur{animation:hfCur var(--film-loop)}.hf-ai-a{margin-bottom:.9em;font-size:.92em;line-height:1.45}.hf-ai-a b{font-weight:600}.hf-ai-a svg{vertical-align:-.2em;width:1.15em;height:1.15em;color:var(--film-accent);margin-right:.35em;display:inline-block}.hf-src{animation:hfSrc var(--film-loop)}.hf-post{align-items:center;gap:1em;display:flex}.hf-post-img{background:linear-gradient(145deg, #ffc79e, var(--film-accent) 85%);border-radius:.6em;flex:none;place-items:center;width:5.6em;height:5.6em;display:grid}.hf-heart{color:#fff;width:2.3em;height:2.3em;animation:hfHeart var(--film-loop)}.hf-post-txt{flex-direction:column;flex:1;gap:.5em;display:flex}.hf-post-acc{align-items:baseline;gap:.6em;font-size:.86em;display:flex}.hf-like{width:1.2em;height:1.2em;color:var(--film-accent)}.hf-post .film-odo{font-size:.86em}.hf-web{box-shadow:0 0 0 1px var(--film-line);border-radius:.55em;overflow:hidden}.hf-web-bar{background:var(--film-chip);align-items:center;gap:.3em;height:1.5em;padding:0 .6em;display:flex}.hf-web-bar i{background:#16130f33;border-radius:50%;width:.4em;height:.4em}.hf-web-bar .film-mono{margin-left:.5em;font-size:.62em}.hf-web-page{grid-template-columns:repeat(3,1fr);gap:.4em;padding:.5em;display:grid}.hf-blk{background:var(--film-chip);border-radius:.3em;height:1.3em}.hf-blk-hero{background:linear-gradient(90deg,#ff6b0047,#ff6b0014);grid-column:1/-1;height:1.8em}.hf-days{grid-template-columns:repeat(7,1fr);gap:.35em;margin-top:.6em;display:grid}.hf-days>div{text-align:center;flex-direction:column;gap:.3em;display:flex}.hf-days .film-mono{font-size:.62em}.hf-slot{background:var(--film-chip);border-radius:.3em;height:1.3em}.hf-slot-on{animation:hfFill var(--film-loop)}.hf-data{align-items:flex-end;gap:1.2em;display:flex}.hf-data .film-odo{height:1.1em;font-size:2.4em}.hf-data .film-odo>span>span{height:1.1em;line-height:1.1em}.hf-chart{min-width:0;height:4.4em;animation:hfDraw var(--film-loop);flex:1}.hf-chart-area{fill:var(--film-accent-soft)}.hf-chart-line{fill:none;stroke:var(--film-accent);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.hf-film .film-lock{animation:hfLock var(--film-loop)}.hf-film .film-lock-name span{animation:hfRise var(--film-loop)}.hf-film .film-lock-sub svg{width:1.2em;height:1.2em}.hf-film .hf-cut,.hf-film .hf-cut *{animation-delay:calc(var(--i) * 2.4s + var(--d,0s))}@keyframes hfWordIn{0%,1%,16.01%,to{opacity:0;filter:blur(.18em);transform:translateY(.45em)}2.7%,16%{opacity:1;filter:blur();transform:none}}@keyframes hfLineOut{0%,12%{opacity:1;filter:blur();transform:none}13.4%,to{opacity:0;filter:blur(.2em);transform:translateY(-.5em)}}@keyframes hfAccent{0%,5%{opacity:0;filter:blur(.18em);transform:translateY(.7em)}6.8%,13.6%{opacity:1;filter:blur();transform:none}15%,to{opacity:0;filter:blur(.12em);transform:scale(.92)}}@keyframes hfBar{0%,13.8%{opacity:0;transform:scale(.55,.8)}15.4%,22.6%{opacity:1;transform:none}23.8%,to{opacity:0;transform:translateY(-.5em)scale(.97)}}@keyframes hfKey{0%,16%{font-size:0}16.01%,to{font-size:1em}}@keyframes hfGo{0%,21%{background:var(--film-chip);color:var(--film-muted);transform:none}21.6%{background:var(--film-accent);color:var(--film-ink);transform:scale(.86)}22.4%,to{background:var(--film-accent);color:var(--film-ink);transform:none}}@keyframes hfBrief{0%,23.4%{opacity:0;transform:translateY(.9em)scale(.97)}25%,36%{opacity:1;transform:none}37.4%,to{opacity:0;transform:scale(.06)}}@keyframes hfBriefIn{0%,25%{opacity:0;transform:translateY(.4em)}26.4%,to{opacity:1;transform:none}}@keyframes hfWipe{0%,24.6%{clip-path:inset(0 100% 0 0)}26.6%,to{clip-path:inset(0)}}@keyframes hfBadge{0%,32%{opacity:0;transform:scale(.7)}32.8%{opacity:1;transform:scale(1.06)}33.4%,to{opacity:1;transform:none}}@keyframes hfDot{0%,36.8%{opacity:0;transform:scale(0)}37.6%,38.4%{opacity:1;transform:scale(1)}39.6%,to{opacity:0;transform:scale(5)}}@keyframes hfAva{0%,38.2%{opacity:0;transform:scale(.15)}39.8%,41.2%{opacity:1;transform:none}42.8%{opacity:1;transform:translate(-9.3em,-4.3em)scale(.3)}43.2%,to{opacity:0;transform:translate(-9.3em,-4.3em)scale(.3)}}@keyframes hfAvaS{0%,42.8%{opacity:0}42.81%,to{opacity:1}}@keyframes hfCut{0%,41.8%{opacity:0;transform:translateY(.9em)scale(.97)}43.2%,48.4%{opacity:1;transform:none}49.6%,to{opacity:0;transform:translateY(-.6em)scale(.98)}}@keyframes hfIn{0%,42.8%{opacity:0;transform:translateY(.4em)}44.2%,to{opacity:1;transform:none}}@keyframes hfPop{0%,45.6%{opacity:0;transform:scale(.7)}46.4%{opacity:1;transform:scale(1.06)}47%,to{opacity:1;transform:none}}@keyframes hfOdo3{0%,44.8%{transform:translateY(0)}45.6%{transform:translateY(-33.3333%)}46.4%,to{transform:translateY(-66.6667%)}}@keyframes hfOdo6{0%,43.4%{transform:translateY(0)}44%{transform:translateY(-16.6667%)}44.6%{transform:translateY(-33.3333%)}45.2%{transform:translateY(-50%)}45.8%{transform:translateY(-66.6667%)}46.4%,to{transform:translateY(-83.3333%)}}@keyframes hfCur{0%,43.4%{opacity:0;transform:translate(7em,5em)}44%{opacity:1}45.4%{opacity:1;transform:none}45.7%{transform:scale(.86)}46.1%,to{opacity:1;transform:none}}@keyframes hfHit{0%,45.7%{background:var(--film-chip);color:var(--film-ink)}45.9%,to{background:var(--film-ink);color:var(--film-bg)}}@keyframes hfRip{0%,45.6%{opacity:0;transform:scale(.2)}45.7%{opacity:.6;transform:scale(.2)}47%,to{opacity:0;transform:scale(1.6)}}@keyframes hfSrc{0%,45.2%{background:var(--film-chip);color:var(--film-ink);box-shadow:0 0 #0000}46%,to{background:var(--film-accent-soft);color:var(--film-accent-ink);box-shadow:0 0 0 1.5px var(--film-accent)}}@keyframes hfHeart{0%,44.6%{opacity:0;transform:scale(0)}45.4%{opacity:1;transform:scale(1.25)}46%,47.4%{opacity:1;transform:scale(1)}48%,to{opacity:0;transform:scale(1)}}@keyframes hfFill{0%,43.4%{background:var(--film-chip)}44.2%,to{background:var(--film-accent)}}@keyframes hfDraw{0%,43.2%{clip-path:inset(0 100% 0 0)}46.2%,to{clip-path:inset(0)}}@keyframes hfLock{0%,89.4%{opacity:0;filter:blur(.2em);transform:translateY(.8em)}91.4%,98%{opacity:1;filter:blur();transform:none}99.4%,to{opacity:0;filter:blur(.2em);transform:translateY(-.4em)}}@keyframes hfRise{0%,90%{transform:translateY(115%)}92.4%,to{transform:none}}.reveal-content{opacity:0;animation:.8s cubic-bezier(.2,.8,.2,1) forwards revealIn;transform:translateY(20px)}@keyframes revealIn{to{opacity:1;transform:translateY(0)}}.reveal-slide{animation:.8s cubic-bezier(.2,.8,.2,1) forwards revealSlide;transform:translateY(20px)}@keyframes revealSlide{to{transform:translateY(0)}}.avatar-container{animation:5s ease-in-out infinite alternate float,7s ease-in-out infinite alternate wobble}.skill-card[data-astro-cid-kdu5tn7k]{transition:all .6s cubic-bezier(.16,1,.3,1);transform:translateY(20px)scale(.95)}.skill-card[data-astro-cid-kdu5tn7k].reveal{transform:translateY(0)scale(1);opacity:1!important}.project-card{opacity:0;will-change:transform, opacity;transition:opacity .8s ease-out,transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(40px)}.project-card.reveal,.project-card:focus-within{opacity:1!important;transform:translateY(0)!important}.project-card[data-astro-cid-thmgm4k5]{transition:all .6s cubic-bezier(.16,1,.3,1);transform:translateY(20px)scale(.95)}.project-card[data-astro-cid-thmgm4k5].reveal{transform:translateY(0)scale(1);opacity:1!important}.contact-reveal[data-astro-cid-iavgse3w]{transition:all 1s cubic-bezier(.16,1,.3,1);transform:translateY(30px)}.contact-reveal[data-astro-cid-iavgse3w].reveal{transform:translateY(0);opacity:1!important}.reveal-content[data-astro-cid-al5owjie],.reveal-content[data-astro-cid-bgyndz7f]{opacity:0;animation:.8s cubic-bezier(.2,.8,.2,1) forwards revealIn;transform:translateY(20px)}.scroll-stat[data-astro-cid-bgyndz7f]{opacity:0;transition:all .6s cubic-bezier(.16,1,.3,1);transform:translateY(20px)scale(.95)}.scroll-stat[data-astro-cid-bgyndz7f].reveal{opacity:1;transform:translateY(0)scale(1)}
