/* Loomatrix Advanced Live FX - isolated visual layer */
.visual{position:relative;overflow:hidden;isolation:isolate}
.visual::after{content:"";position:absolute;inset:-20%;z-index:2;pointer-events:none;background:conic-gradient(from 0deg,transparent 0deg,rgba(72,220,255,.13) 55deg,transparent 112deg,rgba(227,95,255,.14) 180deg,transparent 240deg,rgba(255,188,90,.10) 302deg,transparent 360deg);filter:blur(20px);mix-blend-mode:screen;animation:lmfx-spin 25s linear infinite}
.lmfx-hero-canvas,.lmfx-module-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.lmfx-hero-canvas{z-index:4}.lmfx-module-canvas{z-index:4}
.copy h1 span{background-size:220% 100%;animation:lmfx-title 8s ease-in-out infinite}
.eyebrow{position:relative;overflow:hidden}.eyebrow::after{content:"";position:absolute;inset:0 auto 0 -40%;width:26%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);transform:skewX(-20deg);animation:lmfx-sweep 5.8s ease-in-out infinite}
.btn.cta{position:relative;overflow:hidden;isolation:isolate}.btn.cta::after{content:"";position:absolute;top:-30%;bottom:-30%;left:-45%;width:34%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.52),transparent);transform:skewX(-20deg);animation:lmfx-cta 4.8s ease-in-out infinite;pointer-events:none}
.module-card{position:relative;isolation:isolate;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.module-card:hover{transform:translateY(-5px);border-color:rgba(86,219,255,.48);box-shadow:0 18px 50px rgba(0,0,0,.36),0 0 30px rgba(72,215,255,.12),0 0 26px rgba(215,89,255,.08)}
.module-card .thumb{transition:transform .42s ease,filter .42s ease}.module-card:hover .thumb{transform:scale(1.035);filter:saturate(1.1) brightness(1.06)}
.module-card.live{animation:lmfx-live 4.5s ease-in-out infinite}
.module-card::after{content:"";position:absolute;z-index:3;top:-15%;left:-60%;width:34%;height:130%;background:linear-gradient(110deg,transparent,rgba(255,255,255,.03),rgba(91,222,255,.12),rgba(233,93,255,.10),transparent);transform:skewX(-18deg);pointer-events:none;transition:left .8s ease}
.module-card:hover::after{left:130%}
@keyframes lmfx-spin{to{transform:rotate(360deg)}}
@keyframes lmfx-title{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes lmfx-sweep{0%,65%{left:-40%;opacity:0}72%{opacity:1}88%{left:120%;opacity:0}100%{left:120%;opacity:0}}
@keyframes lmfx-cta{0%,60%{left:-45%;opacity:0}68%{opacity:1}82%{left:120%;opacity:0}100%{left:120%;opacity:0}}
@keyframes lmfx-live{0%,100%{box-shadow:0 14px 40px rgba(0,0,0,.28),0 0 18px rgba(49,219,255,.06)}50%{box-shadow:0 16px 46px rgba(0,0,0,.31),0 0 32px rgba(49,219,255,.14),0 0 18px rgba(172,91,255,.08)}}
@media(max-width:760px){.visual::after{opacity:.46}.module-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.visual::after,.copy h1 span,.eyebrow::after,.btn.cta::after,.module-card.live{animation:none!important}.lmfx-hero-canvas,.lmfx-module-canvas{display:none!important}}