.categories{position:relative;isolation:isolate;background:linear-gradient(135deg,#28135e 0%,#45208f 38%,#176b9c 100%);color:#fff;overflow:hidden}
.categories:before,.categories:after{position:absolute;z-index:-2;content:"";pointer-events:none;border-radius:50%;filter:blur(2px);opacity:.72}
.categories:before{width:520px;height:520px;top:-250px;left:-160px;background:radial-gradient(circle,#ff5fa2 0%,#ff5fa200 68%);animation:magicFloat 12s ease-in-out infinite}
.categories:after{width:560px;height:560px;right:-220px;bottom:-290px;background:radial-gradient(circle,#38e0c3 0%,#38e0c300 68%);animation:magicFloat 15s ease-in-out -5s infinite reverse}
.magic-bg{position:absolute;z-index:-1;inset:0;overflow:hidden;pointer-events:none;background-image:radial-gradient(circle at 12% 28%,#ffffffd9 0 2px,transparent 3px),radial-gradient(circle at 22% 78%,#ffeb68 0 2px,transparent 3px),radial-gradient(circle at 38% 18%,#ffffffc7 0 1.5px,transparent 3px),radial-gradient(circle at 58% 76%,#ffffffd9 0 2px,transparent 3px),radial-gradient(circle at 76% 22%,#ffe45c 0 2px,transparent 3px),radial-gradient(circle at 91% 66%,#ffffffd9 0 1.5px,transparent 3px);background-size:260px 220px,340px 300px,390px 260px,300px 360px,430px 310px,370px 280px;animation:starDrift 24s linear infinite}
.magic-bg span{position:absolute;display:block;border-radius:50%;opacity:.28;filter:blur(1px);animation:bubbleFloat 9s ease-in-out infinite}
.magic-bg span:nth-child(1){width:14px;height:14px;top:16%;left:8%;background:#ffe45c;box-shadow:0 0 22px 8px #ffe45c}.magic-bg span:nth-child(2){width:9px;height:9px;top:72%;left:16%;background:#ff7ab4;box-shadow:0 0 24px 8px #ff7ab4;animation-delay:-3s}.magic-bg span:nth-child(3){width:18px;height:18px;top:22%;right:13%;background:#65f0d1;box-shadow:0 0 28px 10px #65f0d1;animation-delay:-6s}.magic-bg span:nth-child(4){width:10px;height:10px;right:30%;bottom:12%;background:#ffe45c;box-shadow:0 0 22px 8px #ffe45c;animation-delay:-1s}
.categories .section-title,.categories .category-rail-wrap,.categories .category-dots{position:relative;z-index:1}.categories .section-title h2{color:#fff;text-shadow:0 4px 0 #24104f}.categories .section-title>a{color:#ffe45c}.categories .category-dots i{border-color:#432078}
@keyframes starDrift{from{transform:translate3d(0,0,0)}50%{transform:translate3d(14px,-10px,0)}to{transform:translate3d(0,0,0)}}
@keyframes bubbleFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-24px) scale(1.35)}}
@keyframes magicFloat{0%,100%{transform:translate(0,0)}50%{transform:translate(22px,18px)}}
@media(prefers-reduced-motion:reduce){.magic-bg,.magic-bg span,.categories:before,.categories:after{animation:none}}
