/* ===== Modo Evento · Preloader ===== */
#me-preloader{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:24px;box-sizing:border-box;overflow:hidden;
  background:radial-gradient(120% 90% at 50% 8%,#151B3D 0%,#0B0F22 45%,#05060F 100%);
  font-family:Outfit,system-ui,-apple-system,sans-serif;
  transition:opacity .7s ease,visibility .7s ease}
#me-preloader.me-done{opacity:0;visibility:hidden;pointer-events:none}
html.me-loading,body.me-loading{overflow:hidden}

.me-aura{position:absolute;inset:0;opacity:.5;filter:blur(6px);
  background:radial-gradient(38% 30% at 18% 22%,rgba(255,45,139,.32),transparent 70%),
             radial-gradient(34% 28% at 84% 74%,rgba(56,124,255,.30),transparent 70%),
             radial-gradient(30% 24% at 70% 12%,rgba(153,58,255,.26),transparent 70%)}
.me-grid{position:absolute;inset:0;opacity:.16;
  background-image:linear-gradient(rgba(255,255,255,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.35) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(65% 55% at 50% 45%,#000 0%,transparent 78%);
          mask-image:radial-gradient(65% 55% at 50% 45%,#000 0%,transparent 78%)}

.me-stack{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;
  gap:clamp(20px,4vw,38px);width:100%;max-width:min(680px,88vw)}

.me-logo{position:relative;width:min(100%,calc(52vh * 1.5));aspect-ratio:1536/1024;max-height:52vh;flex:0 1 auto;min-height:0;
  animation:me-in 1.15s cubic-bezier(.16,.9,.24,1) both}
.me-halo{position:absolute;left:50%;top:52%;width:92%;height:78%;transform:translate(-50%,-50%);border-radius:50%;filter:blur(38px);
  background:radial-gradient(50% 50% at 50% 50%,rgba(255,45,139,.55),rgba(153,58,255,.28) 45%,transparent 72%);
  animation:me-halo 4.2s ease-in-out infinite}
.me-ring{position:absolute;left:50%;top:52%;width:104%;height:104%;transform:translate(-50%,-50%);animation:me-ring 14s linear infinite}
.me-ring i{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(255,255,255,.09)}
.me-ring b{position:absolute;top:-4px;left:50%;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:#FFC01E;box-shadow:0 0 16px 4px rgba(255,192,30,.8)}
.me-ring s{position:absolute;bottom:-3px;left:50%;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:#39C0FF;box-shadow:0 0 14px 3px rgba(57,192,255,.75)}
.me-breathe{position:absolute;inset:0;animation:me-breathe 6s ease-in-out infinite}
.me-breathe img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;
  filter:drop-shadow(0 22px 46px rgba(0,0,0,.6)) drop-shadow(0 0 26px rgba(255,45,139,.25))}
.me-shine{position:absolute;inset:0;overflow:hidden;pointer-events:none;
  -webkit-mask-image:var(--me-logo);mask-image:var(--me-logo);
  -webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center}
.me-shine span{position:absolute;top:-25%;left:0;width:38%;height:150%;mix-blend-mode:screen;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);
  animation:me-shine 3.6s cubic-bezier(.5,0,.3,1) infinite}
.me-spark{position:absolute;border-radius:50%;animation:me-spark var(--d) ease-out infinite}

.me-bottom{display:flex;flex-direction:column;align-items:center;gap:clamp(12px,2.2vw,18px);width:100%;
  animation:me-rise .9s .55s cubic-bezier(.16,.9,.24,1) both}
.me-tagline{font-size:clamp(10px,1.5vw,13px);letter-spacing:.42em;text-transform:uppercase;font-weight:600;text-align:center;
  color:transparent;background:linear-gradient(90deg,rgba(255,255,255,.35),#fff,rgba(255,255,255,.35));background-size:200% 100%;
  -webkit-background-clip:text;background-clip:text;animation:me-shimmer 3.2s linear infinite}
.me-track{position:relative;width:min(360px,78%);height:4px;border-radius:99px;background:rgba(255,255,255,.10);overflow:hidden}
.me-bar{position:absolute;inset:0 auto 0 0;width:0%;border-radius:99px;transition:width .35s ease;
  background:linear-gradient(90deg,#387CFF,#993AFF 35%,#FF2D8B 68%,#FFC01E);box-shadow:0 0 18px rgba(255,45,139,.6)}
.me-meta{display:flex;align-items:baseline;gap:6px;color:rgba(255,255,255,.5);font-size:clamp(11px,1.6vw,13px);font-weight:300;letter-spacing:.18em}
.me-meta strong{color:#fff;font-weight:600;font-variant-numeric:tabular-nums}
.me-foot{position:absolute;bottom:clamp(16px,3vw,28px);left:0;right:0;text-align:center;font-size:clamp(9px,1.2vw,11px);
  letter-spacing:.34em;text-transform:uppercase;color:rgba(255,255,255,.26)}

@keyframes me-in{0%{opacity:0;transform:translateY(26px) scale(.86);filter:blur(14px)}60%{filter:blur(0)}100%{opacity:1;transform:none;filter:blur(0)}}
@keyframes me-breathe{0%,100%{transform:scale(1) rotate(-.6deg)}50%{transform:scale(1.035) rotate(.6deg)}}
@keyframes me-shine{0%{transform:translateX(-160%) skewX(-12deg)}55%,100%{transform:translateX(160%) skewX(-12deg)}}
@keyframes me-halo{0%,100%{opacity:.35;transform:translate(-50%,-50%) scale(.92)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.06)}}
@keyframes me-ring{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes me-spark{0%{opacity:0;transform:translate3d(0,0,0) scale(.4)}20%{opacity:1}100%{opacity:0;transform:translate3d(var(--dx),var(--dy),0) scale(1.1)}}
@keyframes me-rise{0%{opacity:0;transform:translateY(18px)}100%{opacity:1;transform:none}}
@keyframes me-shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
@media (prefers-reduced-motion:reduce){#me-preloader *{animation:none!important}}
