.dot-field-container{position:relative;width:100%;height: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;position:relative;border-radius:var(--border-radius);isolation:isolate;transform:translateZ(.01px);display:grid;border:1px solid rgb(255 255 255/15%);background:var(--card-bg,#120F17);overflow:visible;box-shadow:0 1px 2px rgba(0,0,0,.1),0 2px 4px rgba(0,0,0,.1),0 4px 8px rgba(0,0,0,.1),0 8px 16px rgba(0,0,0,.1),0 16px 32px rgba(0,0,0,.1),0 32px 64px rgba(0,0,0,.1)}.border-glow-card:after,.border-glow-card:before,.border-glow-card>.edge-light{content:"";position:absolute;inset:0;border-radius:inherit;transition:opacity .25s ease-out;z-index:-1}.border-glow-card:not(:hover):not(.sweep-active):after,.border-glow-card:not(:hover):not(.sweep-active):before,.border-glow-card:not(:hover):not(.sweep-active)>.edge-light{opacity:0;transition:opacity .75s ease-in-out}.border-glow-card:before{border:1px solid transparent;background:linear-gradient(var(--card-bg,#120F17) 0 100%) padding-box,linear-gradient(rgb(255 255 255/0) 0 100%) border-box,var(--gradient-one,radial-gradient(at 80% 55%,hsla(268,100%,76%,1) 0,transparent 50%)) border-box,var(--gradient-two,radial-gradient(at 69% 34%,hsla(349,100%,74%,1) 0,transparent 50%)) border-box,var(--gradient-three,radial-gradient(at 8% 6%,hsla(136,100%,78%,1) 0,transparent 50%)) border-box,var(--gradient-four,radial-gradient(at 41% 38%,hsla(192,100%,64%,1) 0,transparent 50%)) border-box,var(--gradient-five,radial-gradient(at 86% 85%,hsla(186,100%,74%,1) 0,transparent 50%)) border-box,var(--gradient-six,radial-gradient(at 82% 18%,hsla(52,100%,65%,1) 0,transparent 50%)) border-box,var(--gradient-seven,radial-gradient(at 51% 4%,hsla(12,100%,72%,1) 0,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)));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-glow-card:after{border:1px solid transparent;background:var(--gradient-one,radial-gradient(at 80% 55%,hsla(268,100%,76%,1) 0,transparent 50%)) padding-box,var(--gradient-two,radial-gradient(at 69% 34%,hsla(349,100%,74%,1) 0,transparent 50%)) padding-box,var(--gradient-three,radial-gradient(at 8% 6%,hsla(136,100%,78%,1) 0,transparent 50%)) padding-box,var(--gradient-four,radial-gradient(at 41% 38%,hsla(192,100%,64%,1) 0,transparent 50%)) padding-box,var(--gradient-five,radial-gradient(at 86% 85%,hsla(186,100%,74%,1) 0,transparent 50%)) padding-box,var(--gradient-six,radial-gradient(at 82% 18%,hsla(52,100%,65%,1) 0,transparent 50%)) padding-box,var(--gradient-seven,radial-gradient(at 51% 4%,hsla(12,100%,72%,1) 0,transparent 50%)) padding-box,var(--gradient-base,linear-gradient(#c299ff 0 100%)) padding-box;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-composite:subtract,add,add,add,add,add;opacity:calc(var(--fill-opacity, .5) * (var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));mix-blend-mode:soft-light}.border-glow-card>.edge-light{inset:calc(var(--glow-padding) * -1);pointer-events:none;z-index:1;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:"";position:absolute;inset:var(--glow-padding);border-radius:inherit;box-shadow:inset 0 0 0 1px var(--glow-color,hsl(40deg 80% 80%/100%)),inset 0 0 1px 0 var(--glow-color-60,hsl(40deg 80% 80%/60%)),inset 0 0 3px 0 var(--glow-color-50,hsl(40deg 80% 80%/50%)),inset 0 0 6px 0 var(--glow-color-40,hsl(40deg 80% 80%/40%)),inset 0 0 15px 0 var(--glow-color-30,hsl(40deg 80% 80%/30%)),inset 0 0 25px 2px var(--glow-color-20,hsl(40deg 80% 80%/20%)),inset 0 0 50px 2px var(--glow-color-10,hsl(40deg 80% 80%/10%)),0 0 1px 0 var(--glow-color-60,hsl(40deg 80% 80%/60%)),0 0 3px 0 var(--glow-color-50,hsl(40deg 80% 80%/50%)),0 0 6px 0 var(--glow-color-40,hsl(40deg 80% 80%/40%)),0 0 15px 0 var(--glow-color-30,hsl(40deg 80% 80%/30%)),0 0 25px 2px var(--glow-color-20,hsl(40deg 80% 80%/20%)),0 0 50px 2px var(--glow-color-10,hsl(40deg 80% 80%/10%))}.border-glow-inner{display:flex;flex-direction:column;position:relative;overflow:auto;z-index:2;height:100%;min-height:0}:root{--hue:27;--sat:69%;--white:hsl(0,0%,100%);--purple-primary:rgba(132,0,255,1);--purple-glow:rgba(132,0,255,0.2);--purple-border:rgba(132,0,255,0.8);--border-color:#2f293a;--background-dark:#120f17;color-scheme:light dark}.card-grid{display:grid;gap:.5em;padding:.75em;max-width:54em;font-size:clamp(1rem,.9rem + .5vw,1.5rem)}.card-grid--expertise{display:grid;gap:1.25rem;padding:0;max-width:none;width:100%;font-size:inherit}@media (max-width:639px){.card-grid--expertise{grid-template-columns:1fr}}@media (min-width:640px){.card-grid--expertise{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.card-grid--expertise{grid-template-columns:repeat(3,1fr)}}.card-grid--expertise .magic-bento-card:nth-child(n){grid-column:unset;grid-row:unset}.magic-bento-card{display:flex;flex-direction:column;justify-content:space-between;position:relative;aspect-ratio:4/3;min-height:200px;width:100%;max-width:100%;padding:1.25em;border-radius:20px;border:1px solid var(--border-color);background:var(--background-dark);font-weight:300;overflow:hidden;transition:all .3s ease;--glow-x:50%;--glow-y:50%;--glow-intensity:0;--glow-radius:200px}.magic-bento-card--expertise{aspect-ratio:auto;min-height:260px;justify-content:flex-start}.magic-bento-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.15)}.magic-bento-card__content,.magic-bento-card__header{display:flex;position:relative;color:var(--white)}.magic-bento-card__header{gap:.75em;justify-content:space-between}.magic-bento-card__content{flex-direction:column}.magic-bento-card__label{font-size:16px}.magic-bento-card__description,.magic-bento-card__title{--clamp-title:1;--clamp-desc:2}.magic-bento-card__title{font-weight:400;font-size:16px;margin:0 0 .25em}.magic-bento-card__description{font-size:12px;line-height:1.2;opacity:.9}.magic-bento-card--text-autohide .magic-bento-card__description,.magic-bento-card--text-autohide .magic-bento-card__title{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.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:not(.card-grid--expertise){grid-template-columns:1fr;width:90%;margin:0 auto;padding:.5em}.magic-bento-card:not(.magic-bento-card--expertise){width:100%;min-height:180px}}@media (min-width:600px){.card-grid:not(.card-grid--expertise){grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.card-grid:not(.card-grid--expertise){grid-template-columns:repeat(4,1fr)}.card-grid:not(.card-grid--expertise) .magic-bento-card:nth-child(3){grid-column:span 2;grid-row:span 2}.card-grid:not(.card-grid--expertise) .magic-bento-card:nth-child(4){grid-column:1/span 2;grid-row:2/span 2}.card-grid:not(.card-grid--expertise) .magic-bento-card:nth-child(6){grid-column:4;grid-row:3}}.magic-bento-card--border-glow:after{content:"";position:absolute;inset:0;padding:6px;background:radial-gradient(var(--glow-radius) circle at var(--glow-x) var(--glow-y),rgba(132,0,255,calc(var(--glow-intensity) * .8)) 0,rgba(132,0,255,calc(var(--glow-intensity) * .4)) 30%,transparent 60%);border-radius:inherit;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none;opacity:1;transition:opacity .3s ease;z-index:1}.magic-bento-card--border-glow:hover:after{opacity:1}.magic-bento-card--border-glow:hover{box-shadow:0 4px 20px rgba(46,24,78,.4),0 0 30px var(--purple-glow)}.particle-container{position:relative;overflow:hidden}.particle:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:rgba(132,0,255,.2);border-radius:50%;z-index:-1}.particle-container:hover{box-shadow:0 4px 20px rgba(46,24,78,.2),0 0 30px var(--purple-glow)}.global-spotlight{mix-blend-mode:screen;will-change:transform,opacity;z-index:200!important;pointer-events:none}.bento-section{position:relative;user-select:none}