:root{--backdrop: hsl(0 0% 2% / .9);--backup-border: hsl(0 0% 60% / .2);--radius: 12;--size: 150;--base: 100;--spread: 800;--border: 3;--backdrop: hsl(0 0% 60% / .15);--cardblur: 6}*,*:after,*:before{box-sizing:border-box}[data-explode] .wrapper{transform-style:preserve-3d}body{display:grid;place-items:center;min-height:100vh;overflow:hidden;background:#090d11;font-family:Geist Sans,SF Pro Text,SF Pro Icons,AOS Icons,Helvetica Neue,Helvetica,Arial,sans-serif,system-ui}h1{margin:0;position:fixed;top:50%;left:50%;translate:-50% -50%;color:#fff;font-size:clamp(2rem,4vw + 1rem,8rem);z-index:-1}[data-explode=true] h1{display:none}.wrapper:first-of-type~div{display:none}[data-spread=true] .wrapper:first-of-type~div{display:block}article{aspect-ratio:3 / 4;border-radius:calc(var(--radius) * 1px);width:260px;position:relative;grid-template-rows:1fr auto;box-shadow:0 1rem 2rem -1rem #000;padding:1rem;display:grid;gap:1rem;-webkit-backdrop-filter:blur(calc(var(--cardblur, 5) * 1px));backdrop-filter:blur(calc(var(--cardblur, 5) * 1px))}main{display:flex;gap:2rem;flex-wrap:wrap;align-items:center;justify-content:center;max-width:calc(100vw - 2rem);position:relative}[data-explode=true] main{transform:translateZ(200vmax)}article a{background:#000;display:inline-block;color:#fff;text-decoration:none;text-align:center;padding:.75rem 1.5rem;position:relative}h2{font-size:1.5rem;margin:0}.card__content span{font-size:.875rem;opacity:.5}.card__content{color:#b3b3b3;display:grid;grid-template-rows:auto 1fr auto}.card__content div{position:relative;display:grid;align-items:center}.card__content svg{width:80px}.card__content div svg:not(:nth-of-type(1)){position:absolute;top:50%;left:0;translate:calc(var(--index) * 40%) -50%;scale:calc(1 - (var(--index) * .2));z-index:calc(4 - var(--index));opacity:calc(4 / (2 * (var(--index) * 10)))}.card__content svg:nth-of-type(2){--index: 1}.card__content svg:nth-of-type(3){--index: 2}.card__content svg:nth-of-type(4){--index: 3}[data-explode=true] [data-glow]{background-image:radial-gradient(var(--spotlight-size) var(--spotlight-size) at calc((var(--x, 0) - var(--left, 0)) * 1px) calc((var(--y, 0) - var(--top, 0)) * 1px),hsl(var(--hue, 210) calc(var(--saturation, 100) * 1%) calc(var(--lightness, 70) * 1%) / var(--glow-opacity, .1)),transparent)}[data-explode=true] [data-glow]:before{background-image:radial-gradient(calc(var(--spotlight-size) * .75) calc(var(--spotlight-size) * .75) at calc((var(--x, 0) - var(--left, 0)) * 1px) calc((var(--y, 0) - var(--top, 0)) * 1px),hsl(var(--hue, 210) calc(var(--saturation, 100) * 1%) calc(var(--lightness, 50) * 1%) 1),transparent 100%)}[data-explode=true] [data-glow]:after{background-image:radial-gradient(calc(var(--spotlight-size) * .5) calc(var(--spotlight-size) * .5) at calc((var(--x, 0) - var(--left, 0)) * 1px) calc((var(--y, 0) - var(--top, 0)) * 1px),hsl(0 100% 100% / 1),transparent 100%)}[data-explode=true] .wrapper:not(:first-of-type){display:none}[data-explode=true] .wrapper{transform:rotateX(-24deg) rotateY(-50deg) translateZ(-400px)}.dg.ac{transform:translateZ(200vmin)}.wrapper{position:relative}.dummy{--backup-border: hsl(0 0% 80% / .2);--border-size: calc(var(--border, 2) * 1px);--spotlight-size: calc(var(--size, 150) * 1px);--hue: calc(var(--base) + (var(--xp, 0) * var(--spread, 0)));--glow-opacity: 1;position:absolute;display:none;inset:0;transform-style:preserve-3d;border-radius:calc(var(--radius) * 1px)}[data-explode=true] .dummy{display:block}[data-explode=true] article{-webkit-backdrop-filter:unset;backdrop-filter:unset;opacity:.35}.dummy__backdrop{border-radius:calc(var(--radius) * 1px);position:absolute;inset:0;background-image:radial-gradient(var(--spotlight-size) var(--spotlight-size) at calc((var(--x, 0) - var(--left, 0)) * 1px) calc((var(--y, 0) - var(--top, 0)) * 1px),hsl(var(--hue, 210) calc(var(--saturation, 100) * 1%) calc(var(--lightness, 70) * 1%) / var(--glow-opacity, .1)),transparent);background-color:var(--backup-border);transform:translateZ(200px)}.dummy__backdrop:before{content:"";position:absolute;top:50%;left:50%;height:200vmax;width:200vmax;translate:-50% -50%;background-image:radial-gradient(var(--spotlight-size) var(--spotlight-size) at calc(((var(--x, 0) - var(--left, 0)) * 1px) + 100vmax - 130px) calc(((var(--y, 0) - var(--top, 0)) * 1px) + 100vmax - (260px * (3 / 4))),hsl(var(--hue, 210) calc(var(--saturation, 100) * 1%) calc(var(--lightness, 70) * 1%) / var(--glow-opacity, .1)),transparent);z-index:-1;opacity:.35}.dummy__glow:after,.dummy__border:after{content:"";position:absolute;top:50%;left:50%;height:200vmax;width:200vmax;translate:-50% -50%;background-image:radial-gradient(calc(var(--spotlight-size) * .75) calc(var(--spotlight-size) * .75) at calc(((var(--x, 0) - var(--left, 0)) * 1px) + 100vmax - 130px) calc(((var(--y, 0) - var(--top, 0)) * 1px) + 100vmax - (260px * (3 / 4))),hsl(var(--hue, 210) calc(var(--saturation, 100) * 1%) calc(var(--lightness, 70) * 1%) / var(--glow-opacity, .1)),transparent);z-index:-1;opacity:.5}.dummy__border,.dummy__glow{position:absolute;inset:0;transform:translateZ(400px);border-radius:calc(var(--radius) * 1px)}.dummy__glow:before,.dummy__border:before{content:"";position:absolute;background-image:radial-gradient(calc(var(--spotlight-size) * .75) calc(var(--spotlight-size) * .75) at calc((var(--x, 0) - var(--left, 0)) * 1px) calc((var(--y, 0) - var(--top, 0)) * 1px),hsl(var(--hue, 210) calc(var(--saturation, 100) * 1%) calc(var(--lightness, 50) * 1%) / 1),transparent 100%);background-color:var(--backup-border);inset:calc(var(--border-size) * -1);border:var(--border-size) solid transparent;border-radius:calc(var(--radius) * 1px);background-attachment:fixed;background-size:calc(100% + (2 * var(--border-size))) calc(100% + (2 * var(--border-size)));background-repeat:no-repeat;background-position:50% 50%;-webkit-mask:linear-gradient(transparent,transparent),linear-gradient(white,white);mask:linear-gradient(transparent,transparent),linear-gradient(white,white);-webkit-mask-clip:padding-box,border-box;mask-clip:padding-box,border-box;-webkit-mask-composite:source-in,xor;mask-composite:intersect}.dummy__glow{border-radius:calc(var(--radius) * 1px);position:absolute;inset:0;transform:translateZ(600px)}.dummy__glow:before{background-image:radial-gradient(calc(var(--spotlight-size) * .5) calc(var(--spotlight-size) * .5) at calc((var(--x, 0) - var(--left, 0)) * 1px) calc((var(--y, 0) - var(--top, 0)) * 1px),hsl(0 100% 100% / 1),transparent 100%)}.dummy__glow:after{background-image:radial-gradient(calc(var(--spotlight-size) * .5) calc(var(--spotlight-size) * .5) at calc(((var(--x, 0) - var(--left, 0)) * 1px) + 100vmax - 130px) calc(((var(--y, 0) - var(--top, 0)) * 1px) + 100vmax - (260px * (3 / 4))),hsl(0 100% 100% / 1),transparent)}.dummy>*{transform-style:preserve-3d}.wrapper>span,.dummy span{display:inline-block;position:absolute;bottom:0;color:#fff;font-weight:20;left:calc(100% + 4rem);white-space:nowrap;font-size:1.25rem;transform:rotateY(50deg) rotateX(24deg) translate(-50%,50%)}.wrapper:not(:nth-of-type(2))>span:after,:is(.dummy__glow,.dummy__border) span:after{content:"(pseudo)";font-size:.875rem;position:absolute;left:100%;bottom:0%;translate:.5rem 0%;opacity:.5}.wrapper>span{bottom:0;left:50%;transform:translate(-50%,250%)}[data-spread=true] .wrapper:first-of-type{opacity:.35}[data-spread=true] .wrapper:nth-of-type(2) :is(.card__content,a,[data-glow]>[data-glow]),[data-spread=true] .wrapper:nth-of-type(2) [data-glow]:before,[data-spread=true] .wrapper:nth-of-type(2) [data-glow]:after{opacity:0}[data-spread=true] .wrapper:nth-of-type(3) :is(.card__content,a,[data-glow]>[data-glow]),[data-spread=true] .wrapper:nth-of-type(3) [data-glow]:after{opacity:0}[data-spread=true] .wrapper:nth-of-type(4) :is(.card__content,a,[data-glow]>[data-glow]),[data-spread=true] .wrapper:nth-of-type(4) [data-glow]:before{opacity:0}[data-spread=true] .wrapper:nth-of-type(3) article,[data-spread=true] .wrapper:nth-of-type(4) article{background:transparent}[data-spread=true] .wrapper:not(:first-of-type) article{--bg-spot-opacity: .5;--border-spot-opacity: 1;--border-light-opacity: 1}[data-spread=true] main:before{--hue: calc(var(--base) + (var(--xp, 0) * var(--spread, 0)));--spotlight-size: calc(var(--size) * 1px);--bg-spot-opacity: .75;content:"";position:fixed;inset:0;background-image:radial-gradient(var(--spotlight-size) var(--spotlight-size) at calc(var(--x, 0) * 1px) calc(var(--y, 0) * 1px),hsl(var(--hue, 210) calc(var(--saturation, 100) * 1%) calc(var(--lightness, 70) * 1%) / var(--bg-spot-opacity, .1)),transparent);z-index:-1;opacity:.5;filter:blur(20px)}[data-spread=true] .wrapper{z-index:2}[data-glow]{--border-size: calc(var(--border, 2) * 1px);--spotlight-size: calc(var(--size, 150) * 1px);--hue: calc(var(--base) + (var(--xp, 0) * var(--spread, 0)));background-image:radial-gradient(var(--spotlight-size) var(--spotlight-size) at calc(var(--x, 0) * 1px) calc(var(--y, 0) * 1px),hsl(var(--hue, 210) calc(var(--saturation, 100) * 1%) calc(var(--lightness, 70) * 1%) / var(--bg-spot-opacity, .1)),transparent);background-color:var(--backdrop, transparent);background-size:calc(100% + (2 * var(--border-size))) calc(100% + (2 * var(--border-size)));background-position:50% 50%;background-attachment:fixed;border:var(--border-size) solid var(--backup-border);position:relative}[data-glow]:before,[data-glow]:after{pointer-events:none;content:"";position:absolute;inset:calc(var(--border-size) * -1);border:var(--border-size) solid transparent;border-radius:calc(var(--radius) * 1px);background-attachment:fixed;background-size:calc(100% + (2 * var(--border-size))) calc(100% + (2 * var(--border-size)));background-repeat:no-repeat;background-position:50% 50%;-webkit-mask:linear-gradient(transparent,transparent),linear-gradient(white,white);mask:linear-gradient(transparent,transparent),linear-gradient(white,white);-webkit-mask-clip:padding-box,border-box;mask-clip:padding-box,border-box;-webkit-mask-composite:source-in,xor;mask-composite:intersect}[data-glow]:before{background-image:radial-gradient(calc(var(--spotlight-size) * .75) calc(var(--spotlight-size) * .75) at calc(var(--x, 0) * 1px) calc(var(--y, 0) * 1px),hsl(var(--hue, 210) calc(var(--saturation, 100) * 1%) calc(var(--lightness, 50) * 1%) / var(--border-spot-opacity, 1)),transparent 100%);z-index:2;filter:brightness(2)}[data-glow]:after{background-image:radial-gradient(calc(var(--spotlight-size) * .5) calc(var(--spotlight-size) * .5) at calc(var(--x, 0) * 1px) calc(var(--y, 0) * 1px),hsl(0 100% 100% / var(--border-light-opacity, 1)),transparent 100%);z-index:2}[data-glow] [data-glow]{position:absolute;inset:0;will-change:filter}[data-glow]>[data-glow]{border-radius:calc(var(--radius) * 1px);border-width:calc(var(--border-size) * 20);filter:blur(calc(var(--border-size) * 10));background:none;pointer-events:none}[data-glow]>[data-glow]:before{inset:-10px;border-width:10px}[data-glow] [data-glow]{border:none}[data-glow] :is(a,button){border-radius:calc(var(--radius) * 1px);border:var(--border-size) solid transparent}[data-glow] :is(a,button) [data-glow]{background:none}[data-glow] :is(a,button) [data-glow]:before{inset:calc(var(--border-size) * -1);border-width:calc(var(--border-size) * 1)}
