/* Landing Teaser "Coming Soon" UnityCFDI 3.0 — página puente de pre-lanzamiento.
   Servida por HomeController.Index cuando Site:TeaserMode = true (appsettings). */
:root{ --c1:#5b8df5; --c2:#6d6ef5; --c3:#9b6cf5; --ink:#0e1530; }
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{font-family:'Poppins',system-ui,sans-serif;background:#070b18;color:#fff;overflow:hidden;position:relative}
canvas#bg{position:fixed;inset:0;z-index:0;display:block}
.veil{position:fixed;inset:0;z-index:1;background:radial-gradient(ellipse at 50% 40%,transparent 0%,rgba(7,11,24,.4) 70%,rgba(7,11,24,.85) 100%)}
.shell{position:relative;z-index:2;min-height:100%;display:flex;flex-direction:column}
/* top bar */
.top{display:flex;align-items:center;gap:14px;padding:22px 30px}
.brand{display:flex;align-items:center;gap:11px;font-weight:700;font-size:18px;letter-spacing:-.01em}
.brand .mk{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,var(--c1),var(--c3));display:grid;place-items:center}
.sp{flex:1}
.lnk{font-size:14px;font-weight:500;color:rgba(255,255,255,.82);padding:9px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);backdrop-filter:blur(8px);text-decoration:none;transition:all .15s}
.lnk:hover{background:rgba(255,255,255,.12);color:#fff}
.lnk.solid{background:linear-gradient(120deg,#6d8bff,#b07cff);border:none;color:#fff}
.lnk.solid:hover{transform:translateY(-1px);box-shadow:0 12px 30px -12px rgba(150,110,255,.6)}
/* center */
.mid{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}
.herologo{display:block;margin-bottom:24px;filter:drop-shadow(0 8px 30px rgba(150,160,255,.4));animation:fade 1s ease both,float 5s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-10px)}}
.chip{display:inline-flex;align-items:center;gap:9px;font-size:12.5px;font-weight:600;letter-spacing:.04em;padding:9px 17px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);backdrop-filter:blur(10px);text-transform:uppercase;animation:fade 1s ease both}
.chip .d{width:8px;height:8px;border-radius:50%;background:#7af0c0;box-shadow:0 0 12px #7af0c0;animation:pulse 1.8s infinite}
.herorow{display:flex;align-items:flex-start;gap:18px;margin:30px 0 0;animation:fade 1s .1s ease both}
.herolg{width:clamp(120px,20vw,210px);height:auto;filter:drop-shadow(0 10px 36px rgba(150,160,255,.45))}
.ver{font-size:clamp(20px,3vw,34px);font-weight:700;margin-top:.3em;padding:.16em .5em;border-radius:.4em;background:linear-gradient(120deg,#6d8bff,#b07cff);color:#fff;box-shadow:0 8px 24px -8px rgba(150,110,255,.7)}
.tag{font-size:clamp(16px,2.4vw,21px);color:rgba(255,255,255,.72);margin-top:22px;max-width:30ch;animation:fade 1s .2s ease both}
.tag b{color:#fff;font-weight:600}
.soon{margin-top:40px;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.5);font-family:'JetBrains Mono',monospace;animation:fade 1s .3s ease both}
.dots{display:inline-flex;gap:6px;margin-left:10px;vertical-align:middle}
.dots i{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.6);display:inline-block;animation:bob 1.4s infinite}
.dots i:nth-child(2){animation-delay:.2s}.dots i:nth-child(3){animation-delay:.4s}
.foot{padding:22px 30px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:rgba(255,255,255,.4);flex-wrap:wrap;gap:8px}
.foot a{color:rgba(255,255,255,.6);text-decoration:none}.foot a:hover{color:#fff}
.foot .legal{order:3;flex-basis:100%;text-align:center;color:rgba(255,255,255,.3)}
@media(min-width:720px){.foot .legal{order:0;flex-basis:auto}}
@keyframes fade{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
@keyframes bob{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}
@media(prefers-reduced-motion: reduce){.herologo,.chip,.herorow,.tag,.soon,.dots i,.chip .d{animation:none !important}}
@media(max-width:560px){.top{padding:18px}.lnk{padding:8px 13px;font-size:13px}}
