.text-rotate{white-space:pre-wrap;flex-wrap:wrap;display:flex;position:relative}.text-rotate-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-rotate-word{display:inline-flex}.text-rotate-lines{flex-direction:column;width:100%;display:flex}.text-rotate-element{display:inline-block}.text-rotate-space{white-space:pre}
:root{--hue:27;--sat:69%;--white:#fff;--purple-primary:#3b6dff;--purple-glow:#3b6dff33;--purple-border:#3b6dffcc;--border-color:#2f293a;--background-dark:#120f17;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}.card-grid{gap:.5em;max-width:54em;padding:.75em;font-size:clamp(1rem,.9rem + .5vw,1.5rem);display:grid}.magic-bento-card{aspect-ratio:4/3;border:1px solid var(--border-color);background:var(--background-dark);--glow-x:50%;--glow-y:50%;--glow-intensity:0;--glow-radius:200px;border-radius:20px;flex-direction:column;justify-content:space-between;width:100%;max-width:100%;min-height:200px;padding:1.25em;font-weight:300;transition:all .3s;display:flex;position:relative;overflow:hidden}.magic-bento-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.magic-bento-card__icon{opacity:.04;pointer-events:none;z-index:0;justify-content:center;align-items:center;width:65%;height:65%;transition:opacity .4s;display:flex;position:absolute;bottom:-8%;right:-8%}.magic-bento-card__icon svg{width:100%;height:100%}.magic-bento-card:hover .magic-bento-card__icon{opacity:.07}.magic-bento-card__header,.magic-bento-card__content{color:var(--white);display:flex;position:relative}.magic-bento-card__header{justify-content:space-between;gap:.75em}.magic-bento-card__content{flex-direction:column}.magic-bento-card__label{font-size:16px}.magic-bento-card__title,.magic-bento-card__description{--clamp-title:1;--clamp-desc:2}.magic-bento-card__title{margin:0 0 .25em;font-size:16px;font-weight:400}.magic-bento-card__description{opacity:.9;font-size:12px;line-height:1.2}.magic-bento-card--text-autohide .magic-bento-card__title,.magic-bento-card--text-autohide .magic-bento-card__description{text-overflow:ellipsis;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.magic-bento-card--text-autohide .magic-bento-card__title{-webkit-line-clamp:var(--clamp-title);line-clamp:var(--clamp-title)}.magic-bento-card--text-autohide .magic-bento-card__description{-webkit-line-clamp:var(--clamp-desc);line-clamp:var(--clamp-desc)}@media (max-width:599px){.card-grid{grid-template-columns:1fr;width:90%;margin:0 auto;padding:.5em}.magic-bento-card{width:100%;min-height:180px}}@media (min-width:600px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.card-grid{grid-template-columns:repeat(4,1fr)}.magic-bento-card:nth-child(3){grid-area:span 2/span 2}.magic-bento-card:nth-child(4){grid-area:2/1/span 2/span 2}.magic-bento-card:nth-child(6){grid-area:3/4}}.magic-bento-card--border-glow:after{content:"";background:radial-gradient(var(--glow-radius) circle at var(--glow-x) var(--glow-y), rgba(var(--glow-color,59, 109, 255), calc(var(--glow-intensity) * .8)) 0%, rgba(var(--glow-color,59, 109, 255), calc(var(--glow-intensity) * .4)) 30%, transparent 60%);border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;opacity:1;z-index:1;padding:6px;transition:opacity .3s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;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}.magic-bento-card--border-glow:hover:after{opacity:1}.magic-bento-card--border-glow:hover{box-shadow:0 4px 20px #0f1e5066, 0 0 30px var(--purple-glow)}.particle-container{position:relative;overflow:hidden}.particle:before{content:"";z-index:-1;background:#3b6dff33;border-radius:50%;position:absolute;inset:-2px}.particle-container:hover{box-shadow:0 4px 20px #0f1e5033, 0 0 30px var(--purple-glow)}.global-spotlight{mix-blend-mode:screen;will-change:transform, opacity;pointer-events:none;z-index:200!important}.bento-section{-webkit-user-select:none;user-select:none;position:relative}
.text-type{white-space:pre-wrap;display:inline-block}.text-type__cursor{opacity:1;margin-left:.25rem;display:inline-block}.text-type__cursor--hidden{display:none}
.card-spotlight{--mouse-x:50%;--mouse-y:50%;--spotlight-color:#ffffff0d;background-color:#111;border:1px solid #222;border-radius:1.5rem;padding:2rem;position:relative;overflow:hidden}.card-spotlight:before{content:"";background:radial-gradient(circle at var(--mouse-x) var(--mouse-y), var(--spotlight-color), transparent 80%);opacity:0;pointer-events:none;transition:opacity .5s;position:absolute;inset:0}.card-spotlight:hover:before,.card-spotlight:focus-within:before{opacity:.6}
.scroll-reveal{margin:20px 0}.scroll-reveal-text{font-size:clamp(1.6rem,4vw,3rem);font-weight:600;line-height:1.5}.word{display:inline-block}
.parallax{position:relative;overflow:hidden}.scroller{white-space:nowrap;text-align:center;letter-spacing:-.02em;filter:drop-shadow(0 1px 1px #0000001a);font-family:sans-serif;font-size:2.25rem;font-weight:700;display:flex}.scroller span{flex-shrink:0}@media (min-width:768px){.scroller{font-size:5rem;line-height:5rem}}
.animated-gradient-text{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;border-radius:1.25rem;flex-direction:row;justify-content:center;align-items:center;max-width:fit-content;margin:0 auto;font-weight:500;transition:box-shadow .5s ease-out;display:flex;position:relative;overflow:hidden}.gradient-overlay{border-radius:inherit;z-index:0;pointer-events:none;background-size:300% 100%;animation:linear infinite gradient;position:absolute;inset:0}.gradient-overlay:before{content:"";border-radius:inherit;z-index:-1;background-color:#120f17;width:calc(100% - 2px);height:calc(100% - 2px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes gradient{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.text-content{z-index:2;color:#0000;background-size:300% 100%;-webkit-background-clip:text;background-clip:text;animation:linear infinite gradient;display:inline-block;position:relative}
.star-border-container{border-radius:20px;display:inline-block;position:relative;overflow:hidden}.border-gradient-bottom{opacity:.7;z-index:0;border-radius:50%;width:300%;height:50%;animation:linear infinite alternate star-movement-bottom;position:absolute;bottom:-11px;right:-250%}.border-gradient-top{opacity:.7;z-index:0;border-radius:50%;width:300%;height:50%;animation:linear infinite alternate star-movement-top;position:absolute;top:-10px;left:-250%}.inner-content{color:#fff;text-align:center;z-index:1;background:linear-gradient(#120f17,#111);border:1px solid #222;border-radius:20px;padding:16px 26px;font-size:16px;position:relative}@keyframes star-movement-bottom{0%{opacity:1;transform:translate(0%)}to{opacity:0;transform:translate(-100%)}}@keyframes star-movement-top{0%{opacity:1;transform:translate(0%)}to{opacity:0;transform:translate(100%)}}
.border-glow-card{--edge-proximity:0;--cursor-angle:45deg;--edge-sensitivity:30;--color-sensitivity:calc(var(--edge-sensitivity) + 20);--border-radius:28px;--glow-padding:40px;--cone-spread:25;border-radius:var(--border-radius);isolation:isolate;background:var(--card-bg,#120f17);border:1px solid #ffffff26;display:grid;position:relative;overflow:visible;transform:translateZ(.01px);box-shadow:0 1px 2px #0000001a,0 2px 4px #0000001a,0 4px 8px #0000001a,0 8px 16px #0000001a,0 16px 32px #0000001a,0 32px 64px #0000001a}.border-glow-card:before,.border-glow-card:after,.border-glow-card>.edge-light{content:"";border-radius:inherit;z-index:-1;transition:opacity .25s ease-out;position:absolute;inset:0}.border-glow-card:not(:hover):not(.sweep-active):before,.border-glow-card:not(:hover):not(.sweep-active):after,.border-glow-card:not(:hover):not(.sweep-active)>.edge-light{opacity:0;transition:opacity .75s ease-in-out}.border-glow-card:before{background:linear-gradient(var(--card-bg,#120f17) 0 100%) padding-box, linear-gradient(#fff0 0% 100%) border-box, var(--gradient-one,radial-gradient(at 80% 55%, #be85ff 0px, transparent 50%)) border-box, var(--gradient-two,radial-gradient(at 69% 34%, #ff7a93 0px, transparent 50%)) border-box, var(--gradient-three,radial-gradient(at 8% 6%, #8fffad 0px, transparent 50%)) border-box, var(--gradient-four,radial-gradient(at 41% 38%, #47daff 0px, transparent 50%)) border-box, var(--gradient-five,radial-gradient(at 86% 85%, #7af2ff 0px, transparent 50%)) border-box, var(--gradient-six,radial-gradient(at 82% 18%, #ffe74c 0px, transparent 50%)) border-box, var(--gradient-seven,radial-gradient(at 51% 4%, #ff8d70 0px, transparent 50%)) border-box, var(--gradient-base,linear-gradient(#c299ff 0 100%)) border-box;opacity:calc((var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center, black calc(var(--cone-spread) * 1%), transparent calc((var(--cone-spread) + 15) * 1%), transparent calc((100 - var(--cone-spread) - 15) * 1%), black calc((100 - var(--cone-spread)) * 1%));mask-image:conic-gradient(from var(--cursor-angle) at center, black calc(var(--cone-spread) * 1%), transparent calc((var(--cone-spread) + 15) * 1%), transparent calc((100 - var(--cone-spread) - 15) * 1%), black calc((100 - var(--cone-spread)) * 1%));border:1px solid #0000}.border-glow-card:after{background:var(--gradient-one,radial-gradient(at 80% 55%, #be85ff 0px, transparent 50%)) padding-box, var(--gradient-two,radial-gradient(at 69% 34%, #ff7a93 0px, transparent 50%)) padding-box, var(--gradient-three,radial-gradient(at 8% 6%, #8fffad 0px, transparent 50%)) padding-box, var(--gradient-four,radial-gradient(at 41% 38%, #47daff 0px, transparent 50%)) padding-box, var(--gradient-five,radial-gradient(at 86% 85%, #7af2ff 0px, transparent 50%)) padding-box, var(--gradient-six,radial-gradient(at 82% 18%, #ffe74c 0px, transparent 50%)) padding-box, var(--gradient-seven,radial-gradient(at 51% 4%, #ff8d70 0px, transparent 50%)) padding-box, var(--gradient-base,linear-gradient(#c299ff 0 100%)) padding-box;-webkit-mask-image:linear-gradient(to bottom, black, black), radial-gradient(ellipse at 50% 50%, black 40%, transparent 65%), radial-gradient(ellipse at 66% 66%, black 5%, transparent 40%), radial-gradient(ellipse at 33% 33%, black 5%, transparent 40%), radial-gradient(ellipse at 66% 33%, black 5%, transparent 40%), radial-gradient(ellipse at 33% 66%, black 5%, transparent 40%), conic-gradient(from var(--cursor-angle) at center, transparent 5%, black 15%, black 85%, transparent 95%);mask-image:linear-gradient(to bottom, black, black), radial-gradient(ellipse at 50% 50%, black 40%, transparent 65%), radial-gradient(ellipse at 66% 66%, black 5%, transparent 40%), radial-gradient(ellipse at 33% 33%, black 5%, transparent 40%), radial-gradient(ellipse at 66% 33%, black 5%, transparent 40%), radial-gradient(ellipse at 33% 66%, black 5%, transparent 40%), conic-gradient(from var(--cursor-angle) at center, transparent 5%, black 15%, black 85%, transparent 95%);opacity:calc(var(--fill-opacity,.5) * (var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));mix-blend-mode:soft-light;border:1px solid #0000;-webkit-mask-composite:source-out,source-over,source-over,source-over,source-over,source-over;mask-composite:subtract,add,add,add,add,add}.border-glow-card>.edge-light{inset:calc(var(--glow-padding) * -1);pointer-events:none;z-index:1;-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center, black 2.5%, transparent 10%, transparent 90%, black 97.5%);mask-image:conic-gradient(from var(--cursor-angle) at center, black 2.5%, transparent 10%, transparent 90%, black 97.5%);opacity:calc((var(--edge-proximity) - var(--edge-sensitivity)) / (100 - var(--edge-sensitivity)));mix-blend-mode:plus-lighter}.border-glow-card>.edge-light:before{content:"";inset:var(--glow-padding);border-radius:inherit;box-shadow:inset 0 0 0 1px var(--glow-color,#f5daa3), inset 0 0 1px 0 var(--glow-color-60,#f5daa399), inset 0 0 3px 0 var(--glow-color-50,#f5daa380), inset 0 0 6px 0 var(--glow-color-40,#f5daa366), inset 0 0 15px 0 var(--glow-color-30,#f5daa34d), inset 0 0 25px 2px var(--glow-color-20,#f5daa333), inset 0 0 50px 2px var(--glow-color-10,#f5daa31a), 0 0 1px 0 var(--glow-color-60,#f5daa399), 0 0 3px 0 var(--glow-color-50,#f5daa380), 0 0 6px 0 var(--glow-color-40,#f5daa366), 0 0 15px 0 var(--glow-color-30,#f5daa34d), 0 0 25px 2px var(--glow-color-20,#f5daa333), 0 0 50px 2px var(--glow-color-10,#f5daa31a);position:absolute}.border-glow-inner{z-index:1;flex-direction:column;display:flex;position:relative;overflow:auto}
.shiny-text{color:#b5b5b5a4;background:linear-gradient(120deg,#fff0 40%,#fffc 50%,#fff0 60%) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text;animation:5s linear infinite shine;display:inline-block}@keyframes shine{0%{background-position:100%}to{background-position:-100%}}.shiny-text.disabled{animation:none}
