/* LOKI · Asistente LOKTRAK (v20261005)
   Importante: las animaciones NO se apagan con prefers-reduced-motion (en Windows
   con animaciones desactivadas el personaje se veía congelado). */
.lk-loki{--lk-verde:#59b63c;--lk-verde2:#43a42a;--lk-azul:#0b4b92;--lk-tinta:#10233f;--lk-linea:#e4ebf3;--lk-alto:172px;--lk-ancho:128px;
  position:fixed;right:92px;bottom:10px;z-index:1000;display:flex;align-items:flex-end;gap:4px;
  font-family:Manrope,Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;pointer-events:none;
  -webkit-tap-highlight-color:transparent}
.lk-loki [hidden]{display:none!important}
.lk-loki>*{pointer-events:auto}
body.body-lock .lk-loki{display:none}
body.lk-menu-abierto .lk-loki{opacity:0;visibility:hidden;transition:opacity .2s}

/* ---- Figura ---- */
.lk-cuerpo{position:relative;flex:0 0 auto}
.lk-figura{position:relative;flex:0 0 auto;width:var(--lk-ancho);height:var(--lk-alto);padding:0;margin:0;border:0;background:transparent;cursor:pointer;
  border-radius:24px;transition:opacity .35s ease,scale .35s ease,rotate .5s cubic-bezier(.34,1.3,.5,1);transform-origin:50% 100%}
.lk-figura:focus-visible{outline:3px solid var(--lk-verde);outline-offset:4px}
.lk-salto,.lk-flota,.lk-mece,.lk-respira{position:absolute;inset:0;display:block;transform-origin:50% 96%}
.lk-flota{animation:lk-flota 3.7s cubic-bezier(.45,.05,.55,.95) infinite}
.lk-mece{animation:lk-mece 5.3s cubic-bezier(.45,.05,.55,.95) infinite}
.lk-respira{animation:lk-respira 2.9s ease-in-out infinite}
.lk-capa{position:absolute;left:50%;bottom:6px;height:calc(100% - 8px);width:auto;max-width:none;transform:translateX(-50%) scale(.97);
  opacity:0;transition:opacity .34s ease,transform .42s cubic-bezier(.34,1.4,.5,1);pointer-events:none;user-select:none;
  filter:drop-shadow(0 6px 8px rgba(6,29,57,.22))}
.lk-capa.lk-activa{opacity:1;transform:translateX(-50%) scale(1)}
.lk-brillo{position:absolute;left:50%;top:6%;width:78%;height:46%;transform:translateX(-50%);border-radius:50%;
  background:radial-gradient(closest-side,rgba(126,220,91,.42),rgba(126,220,91,0));animation:lk-brillo 4.3s ease-in-out infinite;pointer-events:none}
.lk-sombra{position:absolute;left:50%;bottom:0;width:62%;height:12px;margin-left:-31%;border-radius:50%;
  background:radial-gradient(closest-side,rgba(6,29,57,.34),rgba(6,29,57,0));animation:lk-sombra 3.7s cubic-bezier(.45,.05,.55,.95) infinite}
.lk-salto.lk-brinca{animation:lk-brinco .62s cubic-bezier(.3,1.5,.5,1)}
.lk-loki.lk-baja .lk-figura{rotate:3.5deg}
.lk-loki.lk-sube .lk-figura{rotate:-3.5deg}
.lk-loki.lk-discreto .lk-figura{opacity:.32;scale:.86;pointer-events:none}
.lk-loki.lk-discreto .lk-minimizar{opacity:.5}
.lk-loki.lk-entra .lk-figura{animation:lk-aparece .95s cubic-bezier(.3,1.35,.5,1) both}
.lk-loki.lk-sale .lk-figura{animation:lk-sale .38s ease-in both}
.lk-loki.lk-sin-img .lk-figura,.lk-loki.lk-sin-img .lk-minimizar{display:none}

@keyframes lk-flota{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes lk-mece{0%,100%{transform:rotate(-1.8deg)}50%{transform:rotate(1.6deg)}}
@keyframes lk-respira{0%,100%{transform:scale(1,1)}45%{transform:scale(1.012,.988)}}
@keyframes lk-sombra{0%,100%{transform:scaleX(1);opacity:1}50%{transform:scaleX(.8);opacity:.6}}
@keyframes lk-brillo{0%,100%{opacity:.25}40%{opacity:.7}70%{opacity:.4}}
@keyframes lk-brinco{0%{transform:translateY(0) scale(1,1)}22%{transform:translateY(2px) scale(1.04,.95)}48%{transform:translateY(-12px) scale(.97,1.04)}75%{transform:translateY(1px) scale(1.02,.98)}100%{transform:translateY(0) scale(1,1)}}
@keyframes lk-aparece{0%{opacity:0;transform:translateY(40px) scale(.55)}55%{opacity:1;transform:translateY(-10px) scale(1.04)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes lk-sale{to{opacity:0;transform:translateY(30px) scale(.6)}}

/* ---- Botón minimizar ---- */
.lk-minimizar{position:absolute;right:-6px;top:0;width:28px;height:28px;border-radius:50%;border:1px solid var(--lk-linea);background:#fff;color:var(--lk-azul);
  font:800 18px/1 Manrope,Arial,sans-serif;display:grid;place-items:center;padding:0;cursor:pointer;box-shadow:0 4px 12px rgba(8,44,88,.16);transition:transform .2s,opacity .3s}
.lk-minimizar:hover{transform:scale(1.08)}
.lk-minimizar:focus-visible,.lk-cerrar:focus-visible,.lk-reabrir:focus-visible,.lk-accion:focus-visible{outline:3px solid var(--lk-verde);outline-offset:2px}

/* ---- Globo ---- */
.lk-globo{position:relative;align-self:flex-end;margin:0 6px 54px 0;width:max-content;max-width:300px;padding:10px 14px 12px;background:#fff;color:var(--lk-tinta);
  border:1px solid var(--lk-linea);border-bottom:3px solid var(--lk-verde);border-radius:18px;box-shadow:0 16px 40px rgba(8,44,88,.18);font-size:14px;line-height:1.45}
.lk-globo::after{content:"";position:absolute;right:-9px;bottom:22px;width:16px;height:16px;background:#fff;border-right:1px solid var(--lk-linea);border-top:1px solid var(--lk-linea);transform:rotate(45deg);border-radius:0 4px 0 0}
.lk-globo.lk-habla{animation:lk-globo .42s cubic-bezier(.3,1.35,.5,1) both}
@keyframes lk-globo{0%{opacity:0;transform:translateY(10px) scale(.94);transform-origin:100% 100%}100%{opacity:1;transform:none}}
.lk-globo-cab{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:3px}
.lk-nombre{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#3f9a27}
.lk-cerrar{width:26px;height:26px;margin:-4px -6px 0 0;border:0;border-radius:50%;background:transparent;color:#7a889a;font-size:20px;line-height:1;cursor:pointer;padding:0}
.lk-cerrar:hover{background:#f1f5fa;color:var(--lk-azul)}
.lk-texto{margin:0;font-weight:600}
.lk-acciones{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.lk-accion{display:inline-flex;align-items:center;min-height:32px;padding:6px 12px;border-radius:999px;border:1px solid #c9d9ea;color:var(--lk-azul)!important;background:#fff;
  font-size:12.5px;font-weight:800;text-decoration:none!important;transition:background .2s,transform .2s}
.lk-accion:hover{background:#edf5ff;transform:translateY(-1px)}
.lk-accion-wa{background:linear-gradient(135deg,#59b63c,#43a42a);border-color:transparent;color:#fff!important}
.lk-accion-wa:hover{background:linear-gradient(135deg,#4fae33,#3a9424)}

/* ---- Minimizado ---- */
.lk-reabrir{width:56px;height:56px;margin:0 0 12px;border-radius:50%;padding:3px;border:2px solid #fff;background:linear-gradient(145deg,#0b4b92,#061d39);
  box-shadow:0 10px 24px rgba(8,44,88,.3);cursor:pointer;position:relative;overflow:visible;animation:lk-flota-suave 3.7s ease-in-out infinite}
@keyframes lk-flota-suave{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.lk-reabrir img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
.lk-reabrir::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(89,182,60,.55);animation:lk-pulso 2.8s ease-out infinite}
@keyframes lk-pulso{0%{transform:scale(.85);opacity:.9}100%{transform:scale(1.3);opacity:0}}

/* ---- Celular: más chico, encima del botón de WhatsApp ---- */
@media (max-width:640px){
  .lk-loki{--lk-alto:104px;--lk-ancho:80px;right:12px;bottom:86px}
  .lk-globo{max-width:min(250px,calc(100vw - 112px));margin-bottom:34px;font-size:13px;padding:9px 12px 10px}
  .lk-nombre{font-size:10px}
  .lk-accion{min-height:30px;padding:5px 10px;font-size:12px}
  .lk-minimizar{width:26px;height:26px;right:-6px;top:0}
  .lk-reabrir{width:48px;height:48px;margin:0 6px 4px 0}
}

/* =====================================================================
   Sección "Conoce a LOKI" (index)
   ===================================================================== */
.lk-banner{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 78% 30%,rgba(126,220,91,.2),transparent 34%),linear-gradient(118deg,#061d39,#0b4b92 62%,#0a355f);padding:84px 0}
.lk-banner::before{content:"";position:absolute;inset:0;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:44px 44px;
  -webkit-mask-image:radial-gradient(circle at 70% 40%,#000,transparent 70%);mask-image:radial-gradient(circle at 70% 40%,#000,transparent 70%);pointer-events:none}
.lk-banner .container{position:relative;z-index:1}
.lk-banner-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.lk-banner .kicker,.lk-banner .lk-kicker{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800;color:#b6eda3}
.lk-banner h2{font-size:clamp(32px,4.4vw,54px);line-height:1.04;letter-spacing:-.04em;margin:10px 0 14px}
.lk-banner h2 span{color:#7edc5b}
.lk-banner .lk-lead{color:#d6e6f5;font-size:17px;max-width:560px;margin:0}
.lk-banner-lista{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px}
.lk-banner-lista li{display:flex;gap:10px;align-items:flex-start;color:#e6f1fb;font-weight:600;font-size:15px}
.lk-banner-lista li::before{content:"✓";flex:0 0 22px;height:22px;border-radius:50%;background:#59b63c;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900;margin-top:1px}
.lk-banner-acciones{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.lk-banner-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:13px 20px;border-radius:999px;font:800 14px/1.2 Manrope,Arial,sans-serif;border:1px solid transparent;cursor:pointer;transition:transform .2s,box-shadow .2s;text-decoration:none}
.lk-banner-btn:hover{transform:translateY(-2px)}
.lk-banner-btn.lk-primario{background:linear-gradient(135deg,#66c84b,#4caf33);color:#fff;box-shadow:0 14px 30px rgba(74,173,51,.3)}
.lk-banner-btn.lk-secundario{border-color:#7ca4ce;color:#fff;background:rgba(255,255,255,.06)}
.lk-banner-btn:focus-visible{outline:3px solid #b6eda3;outline-offset:3px}
.lk-escenario{position:relative;min-height:440px;display:grid;place-items:center}
.lk-radar{position:absolute;left:50%;top:50%;width:380px;height:380px;margin:-190px 0 0 -190px;border-radius:50%;border:1px solid rgba(126,220,91,.35);background:radial-gradient(circle,rgba(126,220,91,.16),rgba(126,220,91,0) 66%)}
.lk-radar::before,.lk-radar::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid rgba(126,220,91,.45);animation:lk-radar 3.6s ease-out infinite}
.lk-radar::after{animation-delay:1.8s}
@keyframes lk-radar{0%{transform:scale(.55);opacity:.9}100%{transform:scale(1.25);opacity:0}}
.lk-escenario-fig{position:relative;height:420px;width:auto;max-width:100%;animation:lk-flota-grande 4.2s cubic-bezier(.45,.05,.55,.95) infinite;filter:drop-shadow(0 24px 30px rgba(0,0,0,.35))}
@keyframes lk-flota-grande{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-14px) rotate(1deg)}}
.lk-sello{position:absolute;left:4%;bottom:34px;background:#fff;color:#10233f;padding:12px 16px;border-radius:16px;box-shadow:0 18px 40px rgba(0,0,0,.25);font-weight:800;font-size:14px}
.lk-sello span{display:block;color:#3f9a27;font-size:11px;letter-spacing:.14em;margin-top:2px}
.lk-poses{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px}
.lk-pose{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:center;padding:14px 16px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);transition:transform .25s,background .25s;cursor:default}
.lk-pose:hover{transform:translateY(-4px);background:rgba(255,255,255,.13)}
.lk-pose img{height:120px;width:auto;margin:0 auto;filter:drop-shadow(0 10px 12px rgba(0,0,0,.3));transition:transform .4s cubic-bezier(.34,1.5,.5,1)}
.lk-pose:hover img{transform:translateY(-6px) rotate(-2deg)}
.lk-pose b{display:block;font-size:16px;color:#fff}
.lk-pose p{margin:4px 0 0;color:#cfe0f1;font-size:13px;line-height:1.45}
.lk-lema{margin:30px 0 0;text-align:center;color:#9fb8d3;font-size:12px;font-weight:800;letter-spacing:.32em}
@media (max-width:980px){.lk-banner-grid{grid-template-columns:1fr}.lk-escenario{min-height:360px}.lk-escenario-fig{height:340px}.lk-radar{width:300px;height:300px;margin:-150px 0 0 -150px}.lk-poses{grid-template-columns:1fr}}
@media (max-width:620px){.lk-banner{padding:58px 0}.lk-escenario{min-height:300px}.lk-escenario-fig{height:280px}.lk-radar{width:250px;height:250px;margin:-125px 0 0 -125px}.lk-sello{left:0;bottom:10px;font-size:12px}}

/* 20261005d: globo junto a la carita minimizada (portada en celular) */
.lk-loki.lk-min .lk-globo{margin-bottom:12px}
@media (max-width:640px){.lk-loki.lk-min .lk-globo{margin-bottom:8px}}
