/* simulath fx1013 — vanilla effects (aurora/beams/grid hero, shimmer, spotlight, shine border, blur reveal). No blend modes. */
@property --fx-a{syntax:"<angle>";inherits:false;initial-value:0deg}
.fx-hero{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:strict}
.fx-aurora{position:absolute;inset:-20%;filter:blur(60px);opacity:.75;will-change:transform;animation:fx-aur 26s ease-in-out infinite alternate;
background:radial-gradient(40% 35% at 25% 35%,rgba(59,108,255,.6),transparent 70%),radial-gradient(35% 30% at 72% 30%,rgba(61,255,154,.22),transparent 70%),radial-gradient(45% 35% at 60% 75%,rgba(122,155,255,.35),transparent 70%)}
@keyframes fx-aur{0%{transform:translate3d(-4%,-2%,0) rotate(0deg) scale(1)}50%{transform:translate3d(3%,2%,0) rotate(6deg) scale(1.08)}100%{transform:translate3d(-2%,4%,0) rotate(-4deg) scale(1.02)}}
.fx-grid{position:absolute;inset:0;opacity:.5;
background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:56px 56px;
-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 20%,transparent 75%)}
.fx-beam{position:absolute;top:-30%;width:1px;box-shadow:0 0 8px rgba(122,155,255,.6);height:60%;opacity:0;will-change:transform,opacity;
background:linear-gradient(180deg,transparent,rgba(122,155,255,.9) 70%,#fff);animation:fx-beam 9s linear infinite}
.fx-beam:nth-child(3){left:18%;animation-delay:0s}.fx-beam:nth-child(4){left:37%;animation-delay:3.1s;animation-duration:11s}
.fx-beam:nth-child(5){left:63%;animation-delay:1.7s;animation-duration:10s}.fx-beam:nth-child(6){left:84%;animation-delay:5.2s}
@keyframes fx-beam{0%{transform:translate3d(0,0,0);opacity:0}10%{opacity:.55}60%{opacity:.35}100%{transform:translate3d(0,260%,0);opacity:0}}
.fx-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 40%,transparent 45%,rgba(0,0,0,.65) 100%)}
/* shimmer headline (light stops only: AA on black) */
.fx-shimmer{background:linear-gradient(100deg,#fff 0%,#fff 40%,#9fb6ff 50%,#fff 60%,#fff 100%);background-size:250% 100%;
-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:fx-shim 6s ease-in-out infinite}
@keyframes fx-shim{0%,20%{background-position:100% 0}80%,100%{background-position:0 0}}
/* spotlight on cards (not study cards) */
.aud-card,.act-card{position:relative}
.fx-spot{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;z-index:0;
background:radial-gradient(260px circle at var(--fx-x,50%) var(--fx-y,50%),rgba(59,108,255,.16),transparent 70%)}
.fx-spot::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;
background:radial-gradient(200px circle at var(--fx-x,50%) var(--fx-y,50%),rgba(122,155,255,.75),transparent 70%);
-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.aud-card:hover>.fx-spot,.act-card:hover>.fx-spot{opacity:1}
/* shine border on primary CTA */
.btn-primary.glow-cta::before,.hero-centros-cta.fx-shine::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
background:conic-gradient(from var(--fx-a),transparent 0 70%,rgba(255,255,255,.95) 80%,#9fb6ff 86%,transparent 92%);
-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:fx-spin 4.5s linear infinite}
.hero-centros-cta.fx-shine{position:relative}
@keyframes fx-spin{to{--fx-a:360deg}}
/* blur reveal */
.fx-br{opacity:0;filter:blur(10px);transform:translate3d(0,14px,0);transition:opacity .9s var(--ease-out,ease),filter .9s var(--ease-out,ease),transform .9s var(--ease-out,ease)}
.fx-br.fx-in{opacity:1;filter:none;transform:none}
@media (max-width:760px){.fx-aurora{filter:blur(40px);opacity:.36}.fx-beam:nth-child(4),.fx-beam:nth-child(6){display:none}.fx-grid{background-size:40px 40px}}
@media (prefers-reduced-motion:reduce){.fx-aurora,.fx-beam,.fx-shimmer,.btn-primary.glow-cta::before,.hero-centros-cta.fx-shine::before{animation:none}
.fx-beam{display:none}.fx-shimmer{background-position:50% 0}.fx-br{opacity:1;filter:none;transform:none;transition:none}}
