:root{
  --bg:#08050d;
  --bg-soft:#100816;
  --panel:rgba(15,10,24,.72);
  --panel-strong:rgba(18,12,29,.88);
  --line:rgba(182,122,255,.22);
  --line-strong:rgba(208,160,255,.35);
  --text:#f5f0fb;
  --muted:#b0a5c0;
  --violet:#8f42ff;
  --violet-soft:#be78ff;
  --violet-glow:rgba(150,73,255,.35);
  --silver:#d7d3df;
  --gold:#e7d09a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  font-family:Inter,Segoe UI,Arial,sans-serif;
  background:
    radial-gradient(circle at 15% 20%, rgba(123,62,208,.22), transparent 26%),
    radial-gradient(circle at 85% 15%, rgba(108,46,190,.16), transparent 30%),
    radial-gradient(circle at 50% 80%, rgba(82,34,130,.18), transparent 28%),
    linear-gradient(180deg, #09040f 0%, #06030a 100%);
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-4;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240' viewBox='0 0 240 240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='.065'/%3E%3C/svg%3E");
  background-size: 96px 96px, 96px 96px, 240px 240px;
  opacity:.42;
  mix-blend-mode:screen;
}
.global-texture{
  position:fixed; inset:0; pointer-events:none; z-index:-3;
  background:
    linear-gradient(135deg, rgba(255,255,255,.02), transparent 20%, rgba(255,255,255,.012) 50%, transparent 80%),
    linear-gradient(90deg, rgba(58,22,95,.25), rgba(7,4,12,.05) 18%, rgba(101,37,167,.18) 54%, rgba(7,4,12,.05) 88%, rgba(70,30,118,.16));
  opacity:.72;
}
.global-glow{position:fixed; border-radius:50%; filter:blur(100px); z-index:-2; pointer-events:none}
.global-glow-a{width:460px; height:460px; left:-140px; top:180px; background:rgba(128,56,224,.18)}
.global-glow-b{width:520px; height:520px; right:-160px; top:-20px; background:rgba(98,45,194,.14)}

a{color:inherit; text-decoration:none}
.topbar{
  position:sticky; top:0; z-index:20; height:86px;
  display:flex; align-items:center; justify-content:space-between;
  padding:0 clamp(22px,5vw,72px);
  background:linear-gradient(180deg, rgba(8,5,13,.94), rgba(8,5,13,.82));
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(207,154,255,.13);
}
.brand{display:flex; align-items:center; gap:14px}
.brand-mark{width:62px; height:62px; object-fit:contain; filter:drop-shadow(0 0 18px rgba(150,73,255,.25))}
.brand-copy{display:flex; flex-direction:column; gap:3px}
.brand-copy strong{font-size:22px; letter-spacing:.08em; font-weight:800}
.brand-copy small{font-size:10px; letter-spacing:.26em; color:#b5a8c3}
nav{display:flex; align-items:center; gap:28px; color:#c0b6cb; font-weight:700; font-size:11px; letter-spacing:.18em}
nav a:hover{color:#fff}
.nav-cta{
  padding:13px 18px; border-radius:999px;
  border:1px solid rgba(182,122,255,.45);
  background:linear-gradient(180deg, rgba(146,67,255,.18), rgba(83,35,145,.12));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09), 0 0 24px rgba(143,66,255,.12);
  color:#efe6ff;
}

main{display:block}
.hero, .section, footer{position:relative}
.hero{
  min-height:calc(100vh - 86px);
  display:grid;
  grid-template-columns:minmax(350px,.95fr) minmax(360px,1.05fr);
  align-items:center;
  gap:72px;
  padding:72px clamp(22px,6vw,96px) 96px;
}
.hero-emblem-shell{display:grid; place-items:center}
.hero-emblem-frame{
  position:relative;
  width:min(100%, 620px); aspect-ratio:1/1;
  display:grid; place-items:center;
  border-radius:28px;
  background:linear-gradient(180deg, rgba(13,8,20,.74), rgba(10,6,16,.58));
  border:1px solid rgba(220,168,255,.16);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02), inset 0 0 65px rgba(144,68,255,.08), 0 22px 65px rgba(0,0,0,.32);
  overflow:hidden;
}
.hero-emblem-frame::before,
.hero-emblem-frame::after{
  content:""; position:absolute; inset:24px;
  border:1px solid rgba(198,149,252,.13);
  border-radius:22px;
}
.hero-emblem-frame::after{inset:58px; border-radius:50%; border-color:rgba(157,97,238,.14)}
.hero-sigil,
.hero-sigil::before,
.hero-sigil::after{
  position:absolute; content:""; left:50%; top:50%; transform:translate(-50%,-50%);
}
.hero-sigil{
  width:68%; aspect-ratio:1; border-radius:50%; border:1px solid rgba(180,125,249,.13);
  box-shadow:0 0 0 70px rgba(113,48,191,.03), 0 0 80px rgba(133,66,227,.08);
}
.hero-sigil::before{width:62%; aspect-ratio:1; border:1px solid rgba(182,128,245,.12); transform:translate(-50%,-50%) rotate(45deg)}
.hero-sigil::after{width:44%; aspect-ratio:1; border:1px solid rgba(182,128,245,.10); border-radius:50%}
.hero-logo{position:relative; z-index:2; width:min(88%,560px); filter:drop-shadow(0 0 36px rgba(146,66,255,.28))}
.hero-caption{position:absolute; bottom:28px; left:0; right:0; z-index:2; text-align:center; font-size:12px; letter-spacing:.34em; color:#a99db7}

.hero-copy{max-width:700px}
.eyebrow{display:flex; align-items:center; gap:10px; color:#cfc4db; font-size:11px; letter-spacing:.24em; margin-bottom:18px}
.dot{width:8px; height:8px; border-radius:50%; background:#64f0bf; box-shadow:0 0 18px #64f0bf}
h1{
  margin:0 0 18px;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(54px, 7vw, 112px);
  line-height:.95;
  letter-spacing:-.03em;
  text-transform:uppercase;
}
h1 span{display:block; color:#cb84ff; text-shadow:0 0 18px rgba(143,66,255,.25)}
.hero-copy p{margin:0; max-width:640px; color:#c5bbd1; font-size:25px; line-height:1.55}
.hero-actions{display:flex; gap:14px; margin:34px 0 18px}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:182px; height:56px; padding:0 26px; border-radius:999px;
  font-size:12px; font-weight:800; letter-spacing:.18em;
  border:1px solid rgba(201,148,255,.2);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:linear-gradient(135deg, #8b40ff, #c27bff); box-shadow:0 14px 35px rgba(139,64,255,.25), inset 0 1px 0 rgba(255,255,255,.15)}
.btn.ghost{background:rgba(16,10,25,.55); box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.live-row{display:flex; align-items:center; gap:10px; font-size:13px; color:#b1a5bd}
.status-lamp{width:9px; height:9px; border-radius:50%; background:#ff6785; box-shadow:0 0 12px #ff6785}
.status-lamp.online{background:#64f0bf; box-shadow:0 0 14px #64f0bf}
.status-lamp.offline{background:#ff6785; box-shadow:0 0 14px #ff6785}

.section{padding:96px clamp(22px,6vw,96px); border-top:1px solid rgba(220,168,255,.07)}
.section-head{margin-bottom:34px}
.section-head span{display:block; color:var(--gold); font-size:12px; letter-spacing:.28em; margin-bottom:18px}
.section-head h2{margin:0 0 14px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(38px,4.6vw,76px); line-height:1; text-transform:uppercase}
.section-head p{margin:0; max-width:900px; color:#baafc8; font-size:20px; line-height:1.5}
.compact h2{font-size:clamp(34px,4vw,64px)}

.stat-grid{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:18px}
.stat-card{
  min-height:184px; padding:28px; display:flex; flex-direction:column; justify-content:space-between;
  border-radius:24px; background:linear-gradient(180deg, rgba(16,10,25,.78), rgba(11,7,18,.72));
  border:1px solid rgba(215,170,255,.12);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02), 0 12px 40px rgba(0,0,0,.18);
}
.stat-card.featured{border-color:rgba(201,148,255,.28); box-shadow:inset 0 0 65px rgba(148,71,255,.07), 0 18px 42px rgba(67,28,122,.18)}
.stat-card small{font-size:11px; letter-spacing:.22em; color:#9c8fb0}
.stat-card strong{font-size:56px; font-weight:900; line-height:1; margin:10px 0}
.stat-card span{font-size:14px; color:#aea2bc}

.chaos-panel{
  border-radius:28px; padding:30px;
  background:linear-gradient(180deg, rgba(17,11,26,.82), rgba(10,7,17,.76));
  border:1px solid rgba(213,170,255,.14);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02), inset 0 0 60px rgba(143,66,255,.05), 0 16px 50px rgba(0,0,0,.18);
}
.chaos-title-row{display:flex; align-items:end; justify-content:space-between; gap:18px; margin-bottom:26px}
.panel-kicker{display:block; color:#bda8d7; font-size:11px; letter-spacing:.26em; margin-bottom:8px}
.chaos-title-row h3{margin:0; font-family:Georgia,serif; font-size:44px; text-transform:uppercase}
.chip{padding:13px 18px; border-radius:999px; border:1px solid rgba(213,170,255,.2); color:#f0e8ff; background:rgba(143,66,255,.12); font-size:12px; font-weight:800; letter-spacing:.12em}
.rate-bars{display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px}
.rate-item{
  position:relative; min-height:132px; padding:18px; border-radius:20px; overflow:hidden;
  background:linear-gradient(180deg, rgba(14,9,22,.82), rgba(12,8,18,.72));
  border:1px solid rgba(219,176,255,.1);
}
.rate-item::after{content:""; position:absolute; left:0; right:0; bottom:0; height:4px; width:var(--w); background:linear-gradient(90deg,#8f42ff,#cb84ff); box-shadow:0 0 20px rgba(203,132,255,.5)}
.rate-item small{display:block; font-size:12px; color:#ab9cbc; letter-spacing:.1em}
.rate-item strong{display:block; font-size:38px; margin-top:16px}
.special-grid{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:12px; margin-top:18px}
.special-grid article, .boss-stats div{
  border-radius:20px; padding:20px; background:linear-gradient(180deg, rgba(15,10,23,.74), rgba(11,8,18,.68)); border:1px solid rgba(215,170,255,.1)
}
.special-grid small, .boss-stats small{display:block; font-size:11px; letter-spacing:.18em; color:#9d91ad}
.special-grid strong, .boss-stats strong{display:block; font-size:34px; margin:10px 0 6px}
.special-grid span, .boss-stats span{display:block; font-size:13px; color:#ada1bb}

.kundun-section .section-head{margin-bottom:26px}
.boss-stats{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px}
.boss-stats-large strong{font-size:42px}

.register-section{display:grid; grid-template-columns:minmax(0,1fr) 520px; align-items:start; gap:48px}
.register-copy p{font-size:19px; color:#b8adc5; line-height:1.55}
.mini-note{margin-top:26px; padding:18px 20px; border-radius:20px; border:1px solid rgba(230,199,136,.18); background:rgba(231,208,154,.05); display:flex; flex-direction:column; gap:8px; color:#bea85f}
.mini-note b{font-size:11px; letter-spacing:.22em}
.mini-note span{color:#d8c9a7; font-size:14px}
.register-card{padding:28px; border-radius:28px; border:1px solid rgba(215,170,255,.14); background:linear-gradient(180deg, rgba(17,11,26,.84), rgba(10,7,17,.78)); box-shadow:inset 0 0 0 1px rgba(255,255,255,.02), 0 18px 50px rgba(0,0,0,.2)}
.register-card label{display:block; margin-bottom:18px}
.register-card label>span{display:flex; justify-content:space-between; color:#a99eb7; font-size:11px; letter-spacing:.16em; margin-bottom:10px}
.register-card em{font-style:normal; color:#857b92}
input{width:100%; height:54px; padding:0 16px; border-radius:16px; border:1px solid rgba(215,170,255,.14); background:rgba(8,5,12,.92); color:#f6f0fd; font:inherit; outline:none}
input:focus{border-color:rgba(182,122,255,.55); box-shadow:0 0 0 3px rgba(143,66,255,.08)}
.hp{position:absolute!important; left:-99999px!important; width:1px!important; height:1px!important; opacity:0!important}
.form-msg{min-height:24px; margin-top:14px; color:#ac9ebd; font-size:14px}
.form-msg.ok{color:#6ff0bf}.form-msg.error{color:#ff7f98}.full{width:100%}

footer{display:grid; grid-template-columns:auto 1fr auto; gap:24px; align-items:center; padding:28px clamp(22px,6vw,96px) 40px; border-top:1px solid rgba(220,168,255,.07)}
footer img{width:110px; height:88px; object-fit:contain}
footer p{margin:0; text-align:center; color:#b7acc3; font-size:12px; letter-spacing:.22em}
footer small{color:#8f839f; font-size:11px}

@media(max-width:1100px){
  .hero{grid-template-columns:1fr; gap:30px}
  .hero-emblem-frame{max-width:620px; margin:auto}
  .hero-copy{text-align:center; margin:auto}
  .eyebrow,.hero-actions,.live-row{justify-content:center}
  .section-head p{font-size:18px}
  .stat-grid{grid-template-columns:repeat(2, minmax(0,1fr))}
  .rate-bars{grid-template-columns:repeat(3, minmax(0,1fr))}
  .special-grid{grid-template-columns:repeat(2, minmax(0,1fr))}
  .register-section{grid-template-columns:1fr}
  .register-card{max-width:600px; width:100%; margin:auto}
  footer{grid-template-columns:1fr; text-align:center}
  footer img{margin:auto}
}
@media(max-width:720px){
  .topbar{height:74px}
  .brand-mark{width:46px; height:46px}
  .brand-copy strong{font-size:18px}
  nav a:not(.nav-cta){display:none}
  .hero{padding-top:42px; padding-bottom:72px}
  .hero-emblem-frame{aspect-ratio:1/1; border-radius:22px}
  .hero-caption{font-size:10px; letter-spacing:.24em}
  .hero-copy p{font-size:18px}
  .btn{min-width:156px; height:52px}
  .section{padding-top:72px; padding-bottom:72px}
  .stat-grid,.boss-stats{grid-template-columns:1fr}
  .rate-bars{grid-template-columns:repeat(2, minmax(0,1fr))}
  .special-grid{grid-template-columns:1fr 1fr}
  .chaos-title-row{flex-direction:column; align-items:flex-start}
}
@media(max-width:480px){
  .hero-actions{flex-direction:column}
  .special-grid{grid-template-columns:1fr}
  .register-card{padding:22px}
  .brand-copy small{font-size:9px}
}

/* v1.3 jacquard + vector */
body::before{background-image:radial-gradient(ellipse at center,rgba(220,178,255,.06) 0 14%,transparent 15%),radial-gradient(ellipse at center,rgba(157,86,225,.045) 0 14%,transparent 15%),linear-gradient(45deg,rgba(255,255,255,.018) 25%,transparent 25% 75%,rgba(255,255,255,.018) 75%),linear-gradient(-45deg,rgba(126,61,184,.022) 25%,transparent 25% 75%,rgba(126,61,184,.022) 75%);background-size:66px 42px,66px 42px,32px 32px,32px 32px;background-position:0 0,33px 21px,0 0,0 0;opacity:.8;mix-blend-mode:screen}.global-texture{background:repeating-linear-gradient(90deg,rgba(255,255,255,.006) 0 1px,transparent 1px 4px),repeating-linear-gradient(0deg,rgba(255,255,255,.004) 0 1px,transparent 1px 4px),linear-gradient(135deg,rgba(117,45,190,.11),rgba(7,4,12,.03) 35%,rgba(112,42,182,.08) 70%,rgba(7,4,12,.04));opacity:.64}.hero-logo,.brand-mark{image-rendering:auto}.kundun-seven{display:inline-block;vertical-align:baseline;line-height:1;transform:translateY(-.01em)}.boss-stats .exclusive{border-color:rgba(231,208,154,.28);box-shadow:inset 0 0 34px rgba(231,208,154,.04),0 0 24px rgba(142,74,208,.06)}.boss-stats .exclusive small{color:#d4bc85}.boss-stats .exclusive strong{font-size:36px;letter-spacing:.02em}

/* =========================================================
   v1.4 — vikingo de piedra + tejido violeta premium
   ========================================================= */
body{
  background:
    radial-gradient(ellipse at 12% 18%, rgba(124,55,212,.18), transparent 31%),
    radial-gradient(ellipse at 83% 11%, rgba(113,47,191,.14), transparent 34%),
    radial-gradient(ellipse at 54% 76%, rgba(95,39,160,.10), transparent 34%),
    linear-gradient(180deg,#0a0510 0%,#08040d 42%,#060309 100%);
}

/* sustituye jacquard por una tela tejida oscura, más irregular y profunda */
body::before{
  background-image:
    repeating-linear-gradient(24deg, rgba(238,226,255,.018) 0 1px, transparent 1px 4px),
    repeating-linear-gradient(114deg, rgba(151,91,202,.015) 0 1px, transparent 1px 5px),
    repeating-linear-gradient(3deg, rgba(255,255,255,.006) 0 2px, transparent 2px 7px),
    radial-gradient(ellipse at 24% 18%, rgba(255,255,255,.025), transparent 30%),
    radial-gradient(ellipse at 77% 64%, rgba(163,81,234,.035), transparent 34%);
  background-size:14px 14px,17px 17px,23px 23px,100% 100%,100% 100%;
  background-position:0 0,2px 1px,0 0,0 0,0 0;
  opacity:.82;
  mix-blend-mode:screen;
}

.global-texture{
  background:
    linear-gradient(112deg, transparent 0 18%, rgba(109,49,177,.07) 27%, transparent 38%),
    linear-gradient(76deg, transparent 0 58%, rgba(157,80,230,.055) 70%, transparent 82%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.004) 0 1px, transparent 1px 5px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.003) 0 1px, transparent 1px 6px);
  opacity:.78;
}

/* suaves pliegues en toda la página, no una imagen de fondo */
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:
    linear-gradient(103deg, transparent 0 12%, rgba(176,111,231,.035) 19%, transparent 29%),
    linear-gradient(83deg, transparent 0 43%, rgba(0,0,0,.19) 51%, transparent 61%),
    linear-gradient(118deg, transparent 0 69%, rgba(148,73,214,.035) 77%, transparent 88%);
}

.hero-emblem-frame{
  background:
    radial-gradient(circle at 50% 42%, rgba(135,62,230,.12), transparent 48%),
    linear-gradient(180deg,rgba(13,8,20,.69),rgba(8,5,14,.54));
  border-color:rgba(199,146,255,.19);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.018),
    inset 0 0 78px rgba(120,48,211,.07),
    0 26px 72px rgba(0,0,0,.34);
}
.hero-emblem-frame::before{border-color:rgba(214,167,255,.15)}
.hero-emblem-frame::after{border-color:rgba(174,108,236,.12)}
.hero-sigil{box-shadow:0 0 0 72px rgba(113,48,191,.024),0 0 95px rgba(133,66,227,.08)}
.hero-logo{
  width:min(93%,610px);
  max-height:88%;
  filter:drop-shadow(0 0 18px rgba(154,76,247,.22)) drop-shadow(0 16px 20px rgba(0,0,0,.28));
}
.brand-mark{filter:drop-shadow(0 0 10px rgba(154,76,247,.19))}

/* botones un poco más modernos y sólidos */
.btn,.nav-cta{backdrop-filter:blur(10px)}
.btn.primary{
  background:linear-gradient(135deg,#7933ea 0%,#9c4dff 48%,#c77cff 100%);
  border-color:rgba(226,190,255,.34);
  box-shadow:0 13px 34px rgba(113,43,214,.28),inset 0 1px 0 rgba(255,255,255,.20);
}
.btn.primary:hover{box-shadow:0 16px 38px rgba(124,49,226,.36),inset 0 1px 0 rgba(255,255,255,.24)}
.btn.ghost{background:linear-gradient(180deg,rgba(21,13,32,.66),rgba(11,7,18,.58));border-color:rgba(185,133,230,.23)}
.nav-cta{background:linear-gradient(180deg,rgba(146,67,255,.20),rgba(67,24,118,.16))}


/* v1.5 — isotipo vikingo nuevo + alineación KUNDUN 7 */
.kundun-inline{display:inline-flex;align-items:baseline;gap:.08em;white-space:nowrap}
.kundun-seven{display:inline-block;font-size:.92em;line-height:1;transform:none;vertical-align:baseline;position:relative;top:0}
@media(max-width:720px){.kundun-inline{display:inline-flex}}


/* =========================================================
   v1.6 — isotipo final + luces EGO ambientales
   ========================================================= */
/* El isotipo final rellena el recuadro completo: una sola ventana. */
.final-emblem-frame{
  padding:0;
  border:0;
  background:#09040f;
  overflow:hidden;
  box-shadow:0 30px 78px rgba(0,0,0,.36),0 0 46px rgba(126,54,222,.10);
}
.final-emblem-frame::before,
.final-emblem-frame::after,
.final-emblem-frame .hero-sigil{display:none!important}
.final-emblem{
  position:absolute;
  inset:0;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover;
  object-position:center;
  filter:none!important;
  transform:scale(1.012);
}

/* Header sin miniatura cuadrada: el isotipo protagonista queda en el hero. */
.brand{min-width:170px}
.brand-copy strong{font-size:23px;letter-spacing:.12em}
.brand-copy small{font-size:9px;letter-spacing:.28em}

/* Footer limpio, sin thumbnail del isotipo. */
.footer-wordmark{
  font-family:Georgia,"Times New Roman",serif;
  font-weight:700;
  letter-spacing:.18em;
  font-size:22px;
  color:#efe9f7;
  text-shadow:0 0 18px rgba(153,78,235,.18);
}

/* Lucecitas cinéticas estilo EGO. Son ambientales, no bloquean clicks. */
.ambient-lights{
  position:fixed;
  inset:0;
  z-index:9;
  pointer-events:none;
  overflow:hidden;
  mix-blend-mode:screen;
}
.ego-spark{
  position:absolute;
  width:var(--size,4px);
  height:var(--size,4px);
  border-radius:50%;
  background:radial-gradient(circle,#fff 0 14%,#e5c3ff 20%,#a95bff 46%,rgba(115,43,214,.15) 70%,transparent 74%);
  box-shadow:0 0 8px rgba(210,159,255,.95),0 0 18px rgba(152,67,255,.55),0 0 32px rgba(119,42,216,.18);
  opacity:0;
  animation:egoFloat var(--dur,13s) linear var(--delay,0s) infinite, egoPulse 3.4s ease-in-out var(--pulse,0s) infinite;
  will-change:transform,opacity;
}
.ego-spark::after{
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:1px;height:calc(var(--size,4px) * 4.5);
  transform:translate(-50%,-50%) rotate(var(--tilt,30deg));
  background:linear-gradient(transparent,rgba(210,165,255,.5),transparent);
  filter:blur(.3px);
  opacity:.45;
}
.ego-orb{
  position:absolute;
  width:var(--size,90px);height:var(--size,90px);
  border-radius:50%;
  background:radial-gradient(circle,rgba(188,118,255,.16),rgba(136,57,226,.045) 45%,transparent 72%);
  filter:blur(8px);
  opacity:.42;
  animation:egoOrb var(--dur,24s) ease-in-out var(--delay,0s) infinite alternate;
  will-change:transform;
}
@keyframes egoFloat{
  0%{transform:translate3d(0,18px,0) scale(.55);opacity:0}
  10%{opacity:.28}
  42%{opacity:.72}
  70%{opacity:.42}
  100%{transform:translate3d(var(--dx,90px),var(--dy,-160px),0) scale(1.08);opacity:0}
}
@keyframes egoPulse{
  0%,100%{filter:brightness(.78);opacity:.22}
  48%{filter:brightness(1.35);opacity:.78}
  55%{filter:brightness(2);opacity:.95}
  64%{filter:brightness(1.05);opacity:.48}
}
@keyframes egoOrb{
  from{transform:translate3d(-20px,20px,0) scale(.85)}
  to{transform:translate3d(var(--dx,120px),var(--dy,-80px),0) scale(1.22)}
}
@media (prefers-reduced-motion: reduce){
  .ego-spark,.ego-orb{animation:none!important;opacity:.18}
}
@media(max-width:720px){
  .ambient-lights{opacity:.7}
  .final-emblem{transform:scale(1.006)}
}
\n\n/* v1.7 — descarga del cliente */\n.play-section{padding-bottom:110px}\n.play-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}\n.play-card{position:relative;min-height:360px;padding:28px;border-radius:26px;display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(17,11,27,.82),rgba(9,6,15,.76));border:1px solid rgba(213,170,255,.13);box-shadow:inset 0 0 0 1px rgba(255,255,255,.018),0 16px 48px rgba(0,0,0,.18);overflow:hidden}\n.play-card::before{content:"";position:absolute;inset:auto -30% -55% 10%;height:220px;background:radial-gradient(circle,rgba(145,65,238,.13),transparent 68%);pointer-events:none}\n.play-card.featured-download{border-color:rgba(194,123,255,.34);box-shadow:inset 0 0 60px rgba(143,66,255,.055),0 18px 56px rgba(73,29,128,.18)}\n.play-number{position:absolute;right:22px;top:15px;font:700 72px/1 Georgia,serif;color:rgba(201,152,255,.07)}\n.play-card>small{position:relative;color:#b89ecf;font-size:10px;letter-spacing:.24em}\n.play-card h3{position:relative;margin:22px 0 10px;font-family:Georgia,"Times New Roman",serif;font-size:30px;line-height:1.05}\n.play-card p{position:relative;color:#b8adc5;font-size:15px;line-height:1.6;margin:0 0 28px}\n.play-card .btn{position:relative;margin-top:auto}\n.btn.disabled{pointer-events:none;opacity:.46;filter:saturate(.45)}\n.download-meta{position:relative;margin-top:12px;min-height:18px;text-align:center;color:#90839f;font-size:12px}\n.play-note{margin-top:18px;padding:17px 20px;border:1px solid rgba(195,143,243,.12);border-radius:18px;background:rgba(10,6,16,.52);display:flex;align-items:center;gap:12px;color:#b9aec7;font-size:13px}\n.play-note b{color:#e7ddf1;letter-spacing:.08em}\n@media(max-width:1000px){.play-grid{grid-template-columns:1fr}.play-card{min-height:290px}}\n