.cv-site{--site-glow-v:#6d4cff8c;--site-glow-m:#e848a666}.cv-aurora{pointer-events:none;filter:blur(70px);opacity:.85;background:radial-gradient(38% 42% at 28% 32%,#6d4cff6b,#0000 70%),radial-gradient(30% 36% at 72% 26%,#e848a647,#0000 70%),radial-gradient(40% 40% at 55% 70%,#466eff2e,#0000 70%);height:900px;animation:22s ease-in-out infinite alternate cv-aurora-drift;position:absolute;inset:-10% -20% auto}@keyframes cv-aurora-drift{0%{transform:translate(0,0)scale(1)}50%{transform:translate(3%,-2%)scale(1.05)}to{transform:translate(-3%,2%)scale(.98)}}.cv-grid-mask{pointer-events:none;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 25%,#000 25%,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 25%,#000 25%,#0000 75%)}.cv-hairline{background:linear-gradient(90deg,#0000,#8a70ff8c,#e848a673,#0000);height:1px}.cv-frame{background:linear-gradient(#171d35d9,#0d1121eb);border:1px solid #ffffff12;border-radius:22px;position:relative;box-shadow:0 30px 80px -40px #000c,inset 0 1px #ffffff0a}.cv-frame-glow:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(140deg,#8a70ffb3,#ffffff0a 40%,#e848a68c);padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.cv-hero-glow{filter:blur(30px);pointer-events:none;background:radial-gradient(circle,#6d4cff59,#e848a61f 45%,#0000 70%);border-radius:999px;width:520px;height:520px;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}.cv-msg{opacity:0;animation:.55s cubic-bezier(.2,.8,.2,1) forwards cv-msg-in;transform:translateY(8px)scale(.98)}@keyframes cv-msg-in{to{opacity:1;transform:none}}.cv-typing span{background:var(--color-mute);border-radius:999px;width:6px;height:6px;animation:1.2s ease-in-out infinite cv-typing;display:inline-block}.cv-typing span:nth-child(2){animation-delay:.15s}.cv-typing span:nth-child(3){animation-delay:.3s}@keyframes cv-typing{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.cv-float{animation:7s ease-in-out infinite cv-float}.cv-float-slow{animation:9s ease-in-out -3s infinite cv-float}@keyframes cv-float{0%,to{transform:translate(0,0)}50%{transform:translateY(-8px)}}.cv-marquee{-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.cv-marquee-track{width:max-content;animation:38s linear infinite cv-marquee;display:flex}@keyframes cv-marquee{to{transform:translate(-50%)}}.cv-bar-grow{transform-origin:0;animation:1.6s cubic-bezier(.2,.8,.2,1) .6s both cv-bar-grow}@keyframes cv-bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.cv-draw{stroke-dasharray:600;stroke-dashoffset:600px;animation:2.4s cubic-bezier(.3,.7,.2,1) .4s forwards cv-draw}@keyframes cv-draw{to{stroke-dashoffset:0}}.cv-shimmer{position:relative;overflow:hidden}.cv-shimmer:after{content:"";background:linear-gradient(100deg,#0000 20%,#ffffff24 50%,#0000 80%);animation:3.2s ease-in-out infinite cv-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes cv-shimmer{0%{transform:translate(-100%)}60%,to{transform:translate(100%)}}.cv-bento{transition:border-color .25s,transform .25s,box-shadow .25s}@media (hover:hover){.cv-bento:hover{border-color:#8a70ff73;transform:translateY(-2px);box-shadow:0 24px 60px -30px #6d4cff8c}}@supports (animation-timeline:view()){.cv-reveal{animation:linear both cv-reveal;animation-timeline:view();animation-range:entry entry 35%}@keyframes cv-reveal{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}}.cv-faq summary{cursor:pointer;list-style:none}.cv-faq summary::-webkit-details-marker{display:none}.cv-faq .cv-faq-icon{transition:transform .25s}.cv-faq[open] .cv-faq-icon{transform:rotate(45deg)}.cv-menu summary{list-style:none}.cv-menu summary::-webkit-details-marker{display:none}.cv-prose h2{font-family:var(--font-display);color:var(--color-snow);letter-spacing:-.01em;margin-top:2.25rem;margin-bottom:.75rem;font-size:1.15rem;font-weight:600}.cv-prose p,.cv-prose li{color:var(--color-mute);font-size:.95rem;line-height:1.75}.cv-prose p+p{margin-top:.85rem}.cv-prose ul{margin-top:.5rem;padding-left:1.25rem;list-style:outside}.cv-prose li+li{margin-top:.4rem}.cv-prose strong{color:var(--color-snow);font-weight:600}.cv-prose a{color:var(--color-violet-3);text-underline-offset:3px;text-decoration:underline}@media (prefers-reduced-motion:reduce){.cv-aurora,.cv-float,.cv-float-slow,.cv-marquee-track,.cv-typing span,.cv-shimmer:after{animation:none!important}.cv-msg,.cv-bar-grow,.cv-draw,.cv-reveal{opacity:1!important;stroke-dashoffset:0!important;animation:none!important;transform:none!important}.cv-bento,.cv-faq .cv-faq-icon{transition:none!important}}
