/* ===================================================================
   NaveControl · Gestión Industrial Inteligente
   Landing — estética "AI 2050": dark premium + azul eléctrico + glass
   =================================================================== */

@font-face{font-family:'Sora';src:url('../fonts/Sora.ttf') format('truetype');font-weight:100 800;font-display:swap;}
@font-face{font-family:'Manrope';src:url('../fonts/Manrope.ttf') format('truetype');font-weight:200 800;font-display:swap;}
@font-face{font-family:'Chakra';src:url('../fonts/ChakraPetch-Medium.ttf') format('truetype');font-weight:500;font-display:swap;}
@font-face{font-family:'Chakra';src:url('../fonts/ChakraPetch-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap;}
@font-face{font-family:'Chakra';src:url('../fonts/ChakraPetch-Bold.ttf') format('truetype');font-weight:700;font-display:swap;}

:root{
  --bg:#070A11; --bg2:#0A0F1A; --navy:#0E1A2B; --navy2:#13243A;
  --blue:#2C65C3; --blue-bright:#4E8AE8; --blue-deep:#1C4896;
  --glow:rgba(78,138,232,.45); --glow-soft:rgba(78,138,232,.18);
  --white:#F4F7FC; --text:#C3CAD8; --muted:#8B94A8; --faint:#586074;
  --line:rgba(120,155,210,.12); --line2:rgba(120,155,210,.26);
  --surface:rgba(255,255,255,.028);
  --f-display:'Sora',sans-serif; --f-tech:'Chakra',sans-serif; --f-body:'Manrope',sans-serif;
  --r:18px; --maxw:1240px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:90px;}
body{
  background:var(--bg); color:var(--text); font-family:var(--f-body);
  font-size:17px; line-height:1.65; overflow-x:hidden;
  -webkit-font-smoothing:antialiased; position:relative;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
::selection{background:var(--blue);color:#fff;}

/* ---------- Fondo atmosférico global ---------- */
.atmos{position:fixed;inset:0;z-index:-2;pointer-events:none;overflow:hidden;}
.atmos::before{ /* aurora mesh azul */
  content:"";position:absolute;inset:-20%;
  background:
    radial-gradient(40% 35% at 75% 8%, rgba(78,138,232,.20), transparent 70%),
    radial-gradient(45% 40% at 12% 30%, rgba(27,79,158,.16), transparent 70%),
    radial-gradient(50% 45% at 85% 80%, rgba(44,101,195,.10), transparent 70%);
  animation:drift 22s ease-in-out infinite alternate;
}
.atmos::after{ /* grid técnico */
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(120% 80% at 50% 0%,#000 25%,transparent 75%);
  opacity:.5;
}
@keyframes drift{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(-3%,2%,0) scale(1.08)}}

.grain{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.035;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");}

/* ---------- Layout helpers ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
section{position:relative;padding:130px 0;}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-tech);font-weight:600;
  font-size:13px;letter-spacing:.28em;text-transform:uppercase;color:var(--blue-bright);}
.eyebrow::before{content:"";width:26px;height:2px;background:linear-gradient(90deg,var(--blue-bright),transparent);}
h1,h2,h3{font-family:var(--f-display);font-weight:700;letter-spacing:-.02em;line-height:1.06;color:var(--white);}
h2{font-size:clamp(32px,4.4vw,54px);}
.sec-head{max-width:720px;margin-bottom:64px;}
.sec-head h2{margin:18px 0 18px;}
.sec-head p{font-size:19px;color:var(--muted);}
.blue{color:var(--blue-bright);}
.grad-text{background:linear-gradient(100deg,var(--white) 30%,var(--blue-bright));-webkit-background-clip:text;background-clip:text;color:transparent;}

/* ---------- Botones ---------- */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--f-body);font-weight:700;font-size:15px;
  padding:15px 26px;border-radius:13px;border:1px solid transparent;cursor:pointer;transition:.25s;white-space:nowrap;}
.btn-primary{background:linear-gradient(180deg,var(--blue-bright),var(--blue));color:#fff;
  box-shadow:0 8px 28px -8px var(--glow),inset 0 1px 0 rgba(255,255,255,.25);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 40px -8px var(--glow),inset 0 1px 0 rgba(255,255,255,.3);}
.btn-ghost{background:var(--surface);border-color:var(--line2);color:var(--white);backdrop-filter:blur(8px);}
.btn-ghost:hover{border-color:var(--blue);background:rgba(78,138,232,.08);}
.btn svg{width:17px;height:17px;}

/* ---------- Navbar ---------- */
header.nav{position:fixed;top:0;left:0;right:0;z-index:100;transition:.3s;}
header.nav .bar{max-width:var(--maxw);margin:0 auto;padding:16px 28px;display:flex;align-items:center;justify-content:space-between;}
header.nav.scrolled{background:rgba(8,11,18,.82);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);}
.nav .logo{height:38px;width:auto;}
.nav-links{display:flex;gap:34px;align-items:center;}
.nav-links a{font-size:14.5px;color:var(--muted);font-weight:500;transition:.2s;position:relative;}
.nav-links a:hover{color:var(--white);}
.nav-cta{display:flex;gap:12px;align-items:center;}
.nav-login{font-size:14.5px;font-weight:600;color:var(--white);padding:10px 18px;border-radius:11px;border:1px solid var(--line2);transition:.2s;}
.nav-login:hover{border-color:var(--blue);background:rgba(78,138,232,.08);}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;}
.burger span{width:24px;height:2px;background:var(--white);border-radius:2px;transition:.3s;}

/* ---------- Hero ---------- */
.hero{padding:170px 0 90px;text-align:center;}
.badge{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-tech);font-weight:600;font-size:12.5px;
  letter-spacing:.2em;text-transform:uppercase;color:var(--blue-bright);
  background:rgba(78,138,232,.08);border:1px solid var(--line2);padding:9px 18px;border-radius:999px;
  box-shadow:0 0 0 4px rgba(78,138,232,.04);}
.badge .pulse{width:7px;height:7px;border-radius:50%;background:var(--blue-bright);box-shadow:0 0 0 0 var(--glow);animation:pulse 2.2s infinite;}
@keyframes pulse{0%{box-shadow:0 0 0 0 var(--glow)}70%{box-shadow:0 0 0 9px transparent}100%{box-shadow:0 0 0 0 transparent}}
.hero h1{font-size:clamp(44px,7.2vw,86px);font-weight:800;margin:30px 0 6px;letter-spacing:-.03em;}
.hero .slogan{font-family:var(--f-display);font-weight:700;font-size:clamp(22px,3vw,34px);
  background:linear-gradient(100deg,#fff 20%,var(--blue-bright));-webkit-background-clip:text;background-clip:text;color:transparent;}
.hero p.sub{max-width:680px;margin:26px auto 0;font-size:19px;color:var(--muted);}
.hero .cta-row{display:flex;gap:16px;justify-content:center;margin-top:40px;flex-wrap:wrap;}
.hero .trust{margin-top:26px;font-size:13.5px;color:var(--faint);font-family:var(--f-tech);letter-spacing:.04em;}

/* hero mockup */
.hero-shot{margin-top:78px;position:relative;perspective:2000px;}
.hero-shot .frame{position:relative;border-radius:16px;border:1px solid var(--line2);overflow:hidden;
  box-shadow:0 50px 120px -30px rgba(0,0,0,.8),0 0 80px -20px var(--glow-soft);
  transform:rotateX(8deg);transform-origin:center top;transition:transform .4s;}
.hero-shot .frame img{width:100%;display:block;}
.hero-shot::after{content:"";position:absolute;left:50%;bottom:-40px;transform:translateX(-50%);
  width:70%;height:120px;background:radial-gradient(ellipse,var(--glow-soft),transparent 70%);filter:blur(20px);z-index:-1;}
.hero-glow{position:absolute;top:-60px;left:50%;transform:translateX(-50%);width:600px;height:400px;
  background:radial-gradient(circle,var(--glow-soft),transparent 65%);z-index:-1;}

/* ---------- Stats ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:90px;}
.stat{text-align:center;padding:28px 18px;border-left:1px solid var(--line);}
.stat:first-child{border-left:none;}
.stat .num{font-family:var(--f-tech);font-weight:700;font-size:clamp(34px,4vw,46px);color:var(--white);line-height:1;}
.stat .num .suf{color:var(--blue-bright);}
.stat .lbl{font-size:13.5px;color:var(--muted);margin-top:12px;}

/* ---------- Problema / Solución ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch;}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:40px;backdrop-filter:blur(6px);}
.panel h3{font-size:23px;margin-bottom:8px;}
.panel.before{border-color:rgba(240,100,88,.2);}
.panel.before h3{color:#F08478;}
.panel.after{border-color:rgba(78,138,232,.3);box-shadow:0 0 60px -20px var(--glow-soft);}
.panel.after h3{color:var(--blue-bright);}
.panel ul{list-style:none;margin-top:18px;display:flex;flex-direction:column;gap:14px;}
.panel li{display:flex;gap:12px;align-items:flex-start;font-size:15.5px;color:var(--text);}
.panel li .ic{flex:none;margin-top:3px;width:18px;height:18px;}

/* ---------- Módulos / funciones ---------- */
.grid-mod{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.mod{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);
  padding:30px 26px;overflow:hidden;transition:.3s;backdrop-filter:blur(6px);}
.mod::before{content:"";position:absolute;inset:0;border-radius:var(--r);padding:1px;
  background:linear-gradient(140deg,var(--blue) ,transparent 45%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:.3s;}
.mod:hover{transform:translateY(-6px);border-color:transparent;background:rgba(78,138,232,.05);}
.mod:hover::before{opacity:1;}
.mod .icon{width:50px;height:50px;border-radius:13px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,rgba(78,138,232,.18),rgba(78,138,232,.04));border:1px solid var(--line2);margin-bottom:20px;}
.mod .icon svg{width:24px;height:24px;stroke:var(--blue-bright);}
.mod h3{font-size:18.5px;margin-bottom:10px;}
.mod p{font-size:14.5px;color:var(--muted);line-height:1.55;}

/* ---------- Sección IA destacada ---------- */
.ai-sec{overflow:hidden;}
.ai-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center;}
.ai-copy h2{margin:18px 0 20px;}
.ai-copy p.lead{font-size:18px;color:var(--muted);margin-bottom:30px;}
.ai-list{display:flex;flex-direction:column;gap:18px;}
.ai-list .row{display:flex;gap:14px;align-items:flex-start;}
.ai-list .dot{flex:none;margin-top:7px;width:9px;height:9px;border-radius:50%;background:var(--blue-bright);box-shadow:0 0 12px var(--glow);}
.ai-list b{color:var(--white);}
/* chat HUD */
.hud{position:relative;background:linear-gradient(180deg,rgba(19,36,58,.6),rgba(10,15,26,.6));
  border:1px solid var(--line2);border-radius:22px;padding:26px;backdrop-filter:blur(10px);
  box-shadow:0 40px 90px -30px rgba(0,0,0,.7),0 0 70px -25px var(--glow-soft);}
.hud::before{content:"";position:absolute;inset:0;border-radius:22px;border:1px solid transparent;
  background:linear-gradient(120deg,var(--glow),transparent 40%) border-box;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;}
.hud-head{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px;}
.hud-head .av{width:40px;height:40px;border-radius:11px;background:linear-gradient(150deg,var(--blue-bright),var(--blue-deep));display:flex;align-items:center;justify-content:center;}
.hud-head .av svg{width:20px;height:20px;stroke:#fff;}
.hud-head .nm{font-family:var(--f-tech);font-weight:600;font-size:15px;color:var(--white);}
.hud-head .st{font-size:12px;color:var(--blue-bright);font-family:var(--f-tech);}
.bub{padding:13px 17px;border-radius:15px;font-size:14.5px;line-height:1.55;margin-bottom:12px;max-width:88%;}
.bub.me{margin-left:auto;background:linear-gradient(180deg,var(--blue),var(--blue-deep));color:#fff;border-bottom-right-radius:5px;}
.bub.ai{background:rgba(255,255,255,.04);border:1px solid var(--line);color:var(--text);border-bottom-left-radius:5px;}
.bub.ai .neg{color:#F08478;}
.hud-input{display:flex;align-items:center;justify-content:space-between;margin-top:6px;
  background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:11px;padding:12px 16px;font-size:13.5px;color:var(--faint);}
.hud-input .cur{width:2px;height:16px;background:var(--blue-bright);animation:blink 1.1s steps(2) infinite;}
@keyframes blink{50%{opacity:0}}

/* ---------- Dinero / rentabilidad ---------- */
.money-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center;}
.tablecard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:30px;backdrop-filter:blur(6px);}
.tablecard .trow{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:8px;padding:15px 6px;border-bottom:1px solid var(--line);font-size:14.5px;align-items:center;}
.tablecard .trow.h{font-family:var(--f-tech);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid var(--line2);}
.tablecard .trow:last-child{border-bottom:none;}
.tablecard .trow span:nth-child(n+2){text-align:right;font-variant-numeric:tabular-nums;}
.tablecard .name{color:var(--white);font-weight:600;}
.tablecard .util{font-family:var(--f-tech);color:var(--blue-bright);font-weight:600;}
.bars{display:flex;align-items:flex-end;gap:14px;height:130px;margin-top:24px;padding-top:10px;}
.bars .b{flex:1;background:linear-gradient(180deg,var(--blue-bright),var(--blue-deep));border-radius:7px 7px 0 0;position:relative;opacity:.9;transition:height 1.2s cubic-bezier(.2,.8,.2,1);}
.bars .b::after{content:attr(data-l);position:absolute;bottom:-22px;left:0;right:0;text-align:center;font-size:11px;color:var(--faint);font-family:var(--f-tech);}

.proj{background:linear-gradient(150deg,rgba(78,138,232,.12),rgba(10,15,26,.4));border:1px solid var(--line2);border-radius:var(--r);padding:30px;margin-top:26px;}
.proj .lbl{font-family:var(--f-tech);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--blue-bright);}
.proj .big{font-family:var(--f-tech);font-weight:700;font-size:46px;color:var(--white);margin:8px 0 2px;}
.proj .delta{color:#56D08A;font-size:14px;font-weight:600;}

/* ---------- Cómo funciona ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;counter-reset:s;}
.step{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:34px 30px;}
.step .n{font-family:var(--f-tech);font-weight:700;font-size:15px;color:var(--blue-bright);letter-spacing:.1em;}
.step h3{font-size:20px;margin:16px 0 10px;}
.step p{font-size:14.5px;color:var(--muted);}
.step .ln{position:absolute;top:46px;right:-26px;width:26px;height:1px;background:linear-gradient(90deg,var(--blue),transparent);}
.step:last-child .ln{display:none;}

/* ---------- Planes ---------- */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;}
.plan{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:36px 30px;display:flex;flex-direction:column;transition:.3s;backdrop-filter:blur(6px);}
.plan:hover{transform:translateY(-5px);border-color:var(--line2);}
.plan.feat{border-color:transparent;background:linear-gradient(180deg,rgba(78,138,232,.10),rgba(10,15,26,.5));box-shadow:0 30px 80px -30px var(--glow);}
.plan.feat::before{content:"";position:absolute;inset:0;border-radius:20px;padding:1px;background:linear-gradient(160deg,var(--blue-bright),transparent 60%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;}
.plan .tag{position:absolute;top:-12px;left:50%;transform:translateX(-50%);font-family:var(--f-tech);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  background:linear-gradient(180deg,var(--blue-bright),var(--blue));color:#fff;padding:6px 16px;border-radius:999px;box-shadow:0 6px 20px -6px var(--glow);}
.plan .pname{font-family:var(--f-tech);font-weight:600;font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-bright);}
.plan .gancho{font-size:13.5px;color:var(--muted);margin:6px 0 22px;min-height:38px;}
.plan .price{font-family:var(--f-tech);font-weight:700;font-size:44px;color:var(--white);line-height:1;}
.plan .price .per{font-size:15px;color:var(--faint);font-weight:500;}
.plan .price.quote{font-size:26px;}
.plan ul{list-style:none;margin:26px 0;display:flex;flex-direction:column;gap:13px;flex:1;}
.plan li{display:flex;gap:11px;align-items:flex-start;font-size:14.5px;color:var(--text);}
.plan li svg{flex:none;margin-top:3px;width:16px;height:16px;stroke:var(--blue-bright);}
.plan .btn{justify-content:center;width:100%;}
.plans-note{text-align:center;margin-top:30px;font-size:14px;color:var(--faint);}

/* ---------- CTA final ---------- */
.cta-final{text-align:center;}
.cta-box{position:relative;background:linear-gradient(150deg,rgba(78,138,232,.14),rgba(10,15,26,.5));
  border:1px solid var(--line2);border-radius:28px;padding:74px 40px;overflow:hidden;
  box-shadow:0 40px 100px -40px var(--glow);}
.cta-box::before{content:"";position:absolute;inset:0;background:
  radial-gradient(50% 60% at 50% 0%,var(--glow-soft),transparent 70%);}
.cta-box h2{font-size:clamp(30px,4vw,48px);position:relative;}
.cta-box p{position:relative;font-size:19px;color:var(--muted);margin:18px auto 34px;max-width:560px;}
.cta-box .cta-row{position:relative;display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}

/* ---------- Footer ---------- */
footer{border-top:1px solid var(--line);padding:64px 0 40px;}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;}
.foot-logo{height:42px;margin-bottom:18px;}
.foot-about{font-size:14px;color:var(--muted);max-width:300px;}
footer h4{font-family:var(--f-tech);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin-bottom:18px;}
footer ul{list-style:none;display:flex;flex-direction:column;gap:11px;}
footer ul a{font-size:14px;color:var(--muted);transition:.2s;}
footer ul a:hover{color:var(--blue-bright);}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:28px;border-top:1px solid var(--line);font-size:13px;color:var(--faint);flex-wrap:wrap;gap:12px;}
.foot-bottom .by b{color:var(--blue-bright);}

/* ---------- Reveal ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1);}
.reveal.in{opacity:1;transform:none;}
.reveal[data-d="1"]{transition-delay:.08s}.reveal[data-d="2"]{transition-delay:.16s}
.reveal[data-d="3"]{transition-delay:.24s}.reveal[data-d="4"]{transition-delay:.32s}
.reveal[data-d="5"]{transition-delay:.40s}.reveal[data-d="6"]{transition-delay:.48s}
.reveal[data-d="7"]{transition-delay:.56s}

/* ---------- Responsive ---------- */
@media(max-width:980px){
  .nav-links,.nav-cta .nav-login{display:none;}
  .burger{display:flex;}
  .nav-cta{gap:8px;}
  .grid-mod{grid-template-columns:1fr 1fr;}
  .ai-grid,.money-grid,.split{grid-template-columns:1fr;gap:40px;}
  .steps{grid-template-columns:1fr;} .step .ln{display:none;}
  .plans{grid-template-columns:1fr;max-width:440px;margin:0 auto;}
  .foot-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:560px){
  section{padding:90px 0;} .wrap{padding:0 20px;}
  .stats{grid-template-columns:1fr 1fr;gap:8px;} .stat{border-left:none;}
  .grid-mod{grid-template-columns:1fr;}
  .hero-shot .frame{transform:none;}
  .foot-grid{grid-template-columns:1fr;}
  .panel,.cta-box{padding:34px 24px;}
}

/* mobile menu open */
body.menu-open .mobile-menu{opacity:1;pointer-events:auto;}
.mobile-menu{position:fixed;inset:0;z-index:99;background:rgba(7,10,17,.96);backdrop-filter:blur(18px);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;opacity:0;pointer-events:none;transition:.3s;}
.mobile-menu a{font-family:var(--f-display);font-size:24px;color:var(--white);font-weight:600;}
.mobile-menu .btn{margin-top:14px;}

/* ===================================================================
   SECCIONES CLARAS (blanco · texto navy/azul/gris) — alternancia
   =================================================================== */
section.light{
  background:#F2F6FC;
  --white:#0E1A2B;        /* títulos navy */
  --text:#46536B;         /* cuerpo gris */
  --muted:#6B768B;
  --faint:#9AA6BA;
  --surface:#FFFFFF;
  --line:rgba(14,26,43,.10);
  --line2:rgba(14,26,43,.16);
}
section.light .eyebrow{color:var(--blue);}
section.light .eyebrow::before{background:linear-gradient(90deg,var(--blue),transparent);}
section.light .blue{color:var(--blue);}
/* cards claras: sombra suave en vez de glass */
section.light .panel,section.light .mod,section.light .step,
section.light .plan,section.light .ben,section.light .cat{
  background:#fff;box-shadow:0 14px 34px -22px rgba(14,26,43,.30);backdrop-filter:none;
}
section.light .mod:hover{background:#fff;box-shadow:0 22px 44px -20px rgba(44,101,195,.30);}
section.light .panel.after{box-shadow:0 18px 44px -22px rgba(44,101,195,.30);}
section.light .plan.feat{background:linear-gradient(180deg,#fff,#EDF3FD);box-shadow:0 26px 60px -28px rgba(44,101,195,.45);}
section.light .icon-tile svg{stroke:var(--blue);}
section.light .divider{background:linear-gradient(90deg,var(--blue),transparent);}

/* ===================================================================
   MAQUETA DE LA APP (hero) — CRM de bodegas en código
   =================================================================== */
.appwin{max-width:920px;margin:80px auto 0;text-align:left;border-radius:18px;overflow:hidden;
  border:1px solid var(--line2);background:linear-gradient(180deg,rgba(19,36,58,.72),rgba(10,15,26,.78));
  backdrop-filter:blur(12px);box-shadow:0 50px 120px -40px rgba(0,0,0,.85),0 0 90px -30px var(--glow-soft);position:relative;}
.appwin::after{content:"";position:absolute;left:50%;bottom:-46px;transform:translateX(-50%);width:66%;height:120px;
  background:radial-gradient(ellipse,var(--glow-soft),transparent 70%);z-index:-1;}
.appwin .topbar{display:flex;align-items:center;gap:16px;padding:15px 20px;border-bottom:1px solid var(--line);}
.appwin .dots{display:flex;gap:7px;}
.appwin .dots i{width:11px;height:11px;border-radius:50%;display:block;}
.dots .r{background:#ff5f57;}.dots .y{background:#febc2e;}.dots .g{background:#28c840;}
.appwin .wtabs{display:flex;gap:22px;margin-left:8px;}
.appwin .wtabs span{font-family:var(--f-tech);font-size:12.5px;color:var(--muted);padding-bottom:3px;}
.appwin .wtabs span.on{color:#fff;border-bottom:2px solid var(--blue-bright);}
.appwin .wchip{margin-left:auto;font-family:var(--f-tech);font-size:11.5px;color:var(--blue-bright);
  background:rgba(78,138,232,.12);border:1px solid var(--line2);padding:6px 12px;border-radius:8px;}
.appbody{padding:22px;}
.appkpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;}
.appkpi{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:12px;padding:14px 16px;}
.appkpi .k{font-family:var(--f-tech);font-weight:700;font-size:24px;color:#fff;}
.appkpi .k .u{color:var(--blue-bright);font-size:16px;}
.appkpi .l{font-size:11.5px;color:var(--muted);margin-top:3px;}
.appgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;}
.cell{border-radius:10px;padding:12px 10px;font-family:var(--f-tech);font-size:11px;border:1px solid var(--line);
  display:flex;flex-direction:column;gap:8px;min-height:62px;justify-content:space-between;}
.cell .st{width:9px;height:9px;border-radius:50%;}
.cell.ocu{background:rgba(78,138,232,.14);border-color:rgba(78,138,232,.32);color:#cfe0fb;} .cell.ocu .st{background:var(--blue-bright);}
.cell.lib{background:rgba(86,208,138,.12);border-color:rgba(86,208,138,.32);color:#bff0d4;} .cell.lib .st{background:#56D08A;}
.cell.apa{background:rgba(232,184,75,.12);border-color:rgba(232,184,75,.32);color:#f3e4ba;} .cell.apa .st{background:#E8B84B;}
.cell.man{background:rgba(255,255,255,.04);border-color:var(--line2);color:var(--muted);} .cell.man .st{background:#8B94A8;}
.applegend{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;font-size:11.5px;color:var(--muted);font-family:var(--f-tech);}
.applegend span{display:flex;align-items:center;gap:7px;}
.applegend i{width:9px;height:9px;border-radius:50%;display:block;}

/* ===================================================================
   BENEFICIOS
   =================================================================== */
.grid-ben{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.ben{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:32px 28px;transition:.3s;}
.ben:hover{transform:translateY(-5px);}
.icon-tile{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,rgba(78,138,232,.16),rgba(78,138,232,.03));border:1px solid var(--line2);margin-bottom:20px;}
.icon-tile svg{width:25px;height:25px;stroke:var(--blue-bright);}
.ben h3{font-size:19px;margin-bottom:10px;}
.ben p{font-size:14.5px;color:var(--muted);line-height:1.55;}

/* ===================================================================
   CATÁLOGO (sección sitio web, sin foto)
   =================================================================== */
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.cat{border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--surface);}
.cat .ctop{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;}
.cat .cd{font-family:var(--f-tech);font-size:11px;font-weight:700;letter-spacing:.06em;padding:5px 10px;border-radius:7px;
  background:rgba(86,208,138,.14);color:#3ea96a;}
.cat .suc{font-size:11.5px;color:var(--faint);font-family:var(--f-tech);}
.cat .cname{font-family:var(--f-display);font-weight:700;font-size:19px;color:var(--white);}
.cat .cmeta{font-size:13px;color:var(--muted);margin:4px 0 14px;}
.cat .cprice{font-family:var(--f-tech);font-weight:700;font-size:22px;color:var(--blue);}
.cat .cprice .pm{font-size:12px;color:var(--faint);font-weight:500;}

.divider{height:2px;width:120px;background:linear-gradient(90deg,var(--blue-bright),transparent);margin:24px 0;border-radius:2px;}

/* ===================================================================
   EFECTOS IA SUAVES
   =================================================================== */
@keyframes breathe{0%,100%{opacity:.5;transform:translateX(-50%) scale(1)}50%{opacity:.85;transform:translateX(-50%) scale(1.08)}}
@keyframes beam{to{transform:rotate(360deg)}}
@keyframes shimmer{0%{background-position:-160% 0}100%{background-position:260% 0}}
@keyframes appscan{0%{top:-130px}100%{top:100%}}
@keyframes bpscan{0%{top:-12%}100%{top:112%}}
@keyframes softpulse{0%,100%{opacity:.45;box-shadow:0 0 0 0 rgba(86,208,138,.35)}50%{opacity:1;box-shadow:0 0 0 4px rgba(86,208,138,0)}}

.hero-glow{animation:breathe 9s ease-in-out infinite;}

/* brillo que recorre el badge */
.badge{position:relative;overflow:hidden;}
.badge::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.14) 50%,transparent 65%);
  background-size:220% 100%;animation:shimmer 6s linear infinite;}

/* línea de escaneo en la maqueta del hero */
.appwin .scanline{position:absolute;left:0;right:0;height:130px;top:-130px;z-index:2;pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(78,138,232,.07),transparent);animation:appscan 8s linear infinite;}

/* haz de luz que recorre el borde del HUD de IA */
.hud .beam{position:absolute;inset:-1px;border-radius:22px;padding:1.2px;pointer-events:none;z-index:3;opacity:.55;
  background:conic-gradient(from 0deg,transparent 0 72%,var(--blue-bright) 86%,#bcd6ff 92%,transparent 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
  animation:beam 7s linear infinite;}

/* red neuronal tenue detrás de la sección IA */
.ai-sec{position:relative;}
.neural{position:absolute;inset:0;width:100%;height:100%;z-index:0;opacity:.55;pointer-events:none;}
.ai-sec .wrap{position:relative;z-index:1;}

/* ===================================================================
   PLANO VIRTUAL (blueprint)
   =================================================================== */
.plano-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:50px;align-items:center;}
.bp{position:relative;border-radius:20px;overflow:hidden;border:1px solid var(--line2);
  background:linear-gradient(180deg,rgba(13,24,40,.9),rgba(8,12,20,.92));
  box-shadow:0 50px 110px -40px rgba(0,0,0,.8),0 0 80px -30px var(--glow-soft);}
.bp-head{display:flex;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid var(--line);}
.bp-tab{font-family:var(--f-tech);font-size:12px;color:var(--muted);padding:7px 13px;border-radius:9px;cursor:pointer;transition:.2s;border:1px solid transparent;}
.bp-tab.on{color:#fff;background:rgba(78,138,232,.14);border-color:var(--line2);}
.bp-tab:hover{color:#fff;}
.bp-live{margin-left:auto;font-family:var(--f-tech);font-size:11px;color:var(--blue-bright);display:flex;align-items:center;gap:7px;}
.bp-live i{width:7px;height:7px;border-radius:50%;background:var(--blue-bright);animation:softpulse 2.4s infinite;}
.bp-stage{position:relative;padding:22px;
  background-image:linear-gradient(rgba(120,160,220,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(120,160,220,.07) 1px,transparent 1px);
  background-size:34px 34px;}
.bp-scan{position:absolute;left:0;right:0;height:90px;top:-12%;pointer-events:none;z-index:4;
  background:linear-gradient(180deg,transparent,rgba(78,138,232,.14),transparent);
  border-top:1px solid rgba(120,180,255,.35);animation:bpscan 6.5s linear infinite;}
.bp-net{display:grid;grid-template-columns:repeat(12,1fr);gap:9px;grid-auto-rows:78px;position:relative;z-index:2;}
.nave{border-radius:9px;border:1px solid var(--line);padding:11px 12px;display:flex;flex-direction:column;justify-content:space-between;
  font-family:var(--f-tech);position:relative;overflow:hidden;transition:.25s;}
.nave:hover{transform:translateY(-2px);}
.nave .nc{font-size:13px;font-weight:700;color:#fff;display:flex;align-items:center;gap:7px;}
.nave .nc i{width:8px;height:8px;border-radius:50%;}
.nave .nm{font-size:10.5px;opacity:.7;}
.nave .ne{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;align-self:flex-start;padding:2px 7px;border-radius:6px;}
.nave.ren{background:rgba(78,138,232,.13);border-color:rgba(78,138,232,.32);} .nave.ren .nc i{background:var(--blue-bright);} .nave.ren .ne{color:#9fc2f7;background:rgba(78,138,232,.16);}
.nave.dis{background:rgba(86,208,138,.11);border-color:rgba(86,208,138,.32);} .nave.dis .nc i{background:#56D08A;animation:softpulse 2.4s infinite;} .nave.dis .ne{color:#7fe0a8;background:rgba(86,208,138,.16);}
.nave.apa{background:rgba(232,184,75,.11);border-color:rgba(232,184,75,.32);} .nave.apa .nc i{background:#E8B84B;} .nave.apa .ne{color:#edcf86;background:rgba(232,184,75,.16);}
.nave.man{background:rgba(255,255,255,.035);border-color:var(--line2);} .nave.man .nc i{background:#8B94A8;} .nave.man .ne{color:var(--muted);background:rgba(255,255,255,.05);}
.bp-floor{margin-top:10px;text-align:center;font-family:var(--f-tech);font-size:10px;letter-spacing:.3em;color:var(--faint);
  border:1px dashed var(--line2);border-radius:8px;padding:8px;}
.bp-legend{display:flex;gap:18px;flex-wrap:wrap;padding:14px 20px;border-top:1px solid var(--line);font-family:var(--f-tech);font-size:11.5px;color:var(--muted);}
.bp-legend span{display:flex;align-items:center;gap:7px;}
.bp-legend i{width:9px;height:9px;border-radius:50%;display:block;}

@media(max-width:980px){.plano-grid{grid-template-columns:1fr;gap:36px;}.bp-net{grid-auto-rows:64px;}}
@media(max-width:560px){.bp-net{gap:6px;grid-auto-rows:56px;}.nave .nm{display:none;}}

/* ===================================================================
   CONFIGURADOR DE MÓDULOS
   =================================================================== */
.mcat{margin-bottom:42px;}
.mcat-h{display:flex;align-items:center;gap:16px;margin-bottom:20px;}
.mcat-h .t{font-family:var(--f-tech);font-weight:600;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--blue-bright);white-space:nowrap;}
.mcat-h .ln{flex:1;height:1px;background:var(--line);}
.mcat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.mcard{position:relative;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:15px;
  padding:20px 18px;cursor:pointer;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s;
  display:flex;flex-direction:column;gap:9px;font-family:var(--f-body);color:var(--text);backdrop-filter:blur(6px);}
.mcard:hover{transform:translateY(-3px);border-color:var(--line2);}
.mcard.sel{border-color:var(--blue);background:rgba(78,138,232,.08);box-shadow:0 0 0 1px var(--blue) inset,0 16px 36px -18px var(--glow);}
.mcard .micon{width:44px;height:44px;border-radius:12px;background:linear-gradient(160deg,rgba(78,138,232,.16),rgba(78,138,232,.03));
  border:1px solid var(--line2);display:flex;align-items:center;justify-content:center;}
.mcard .micon svg{width:22px;height:22px;stroke:var(--blue-bright);fill:none;}
.mcard .mname{font-family:var(--f-display);font-weight:700;font-size:16px;color:var(--white);line-height:1.2;}
.mcard .mdesc{font-size:13px;color:var(--muted);line-height:1.45;}
.mcard .mcheck{position:absolute;top:15px;right:15px;width:23px;height:23px;border-radius:50%;border:1.6px solid var(--line2);
  display:flex;align-items:center;justify-content:center;color:transparent;transition:.2s;}
.mcard .mcheck svg{width:13px;height:13px;stroke:currentColor;stroke-width:3;}
.mcard.sel .mcheck{background:var(--blue);border-color:var(--blue);color:#fff;}
.mcard .mbase{position:absolute;top:16px;right:15px;font-family:var(--f-tech);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--blue-bright);background:rgba(78,138,232,.14);border:1px solid var(--line2);padding:4px 9px;border-radius:7px;}
.mcard.base{cursor:default;}
.mcard.base .mcheck{display:none;}

.selbar{position:sticky;bottom:18px;margin-top:38px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  background:rgba(13,20,33,.88);backdrop-filter:blur(16px);border:1px solid var(--line2);border-radius:16px;padding:16px 24px;z-index:20;
  box-shadow:0 24px 60px -22px rgba(0,0,0,.75),0 0 60px -28px var(--glow-soft);}
.selbar .info{font-size:15.5px;color:var(--text);}
.selbar .info b{font-family:var(--f-tech);color:#fff;font-size:20px;}
section.light .selbar{background:rgba(255,255,255,.92);}

@media(max-width:980px){.mcat-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.mcat-grid{grid-template-columns:1fr;}.selbar{flex-direction:column;align-items:stretch;text-align:center;}.selbar .btn{justify-content:center;}}

/* ===================================================================
   PLANES — versión ampliada
   =================================================================== */
.billing-toggle{display:inline-flex;gap:4px;padding:5px;border:1px solid var(--line2);border-radius:999px;background:var(--surface);margin:0 auto 46px;}
.bt{border:none;background:transparent;font-family:var(--f-body);font-weight:600;font-size:14.5px;color:var(--muted);
  padding:11px 24px;border-radius:999px;cursor:pointer;display:flex;align-items:center;gap:9px;transition:.2s;}
.bt:hover{color:var(--white);}
.bt.on{background:linear-gradient(180deg,var(--blue-bright),var(--blue));color:#fff;box-shadow:0 8px 22px -8px var(--glow);}
.bt .save{font-family:var(--f-tech);font-size:10px;letter-spacing:.04em;background:rgba(86,208,138,.18);color:#2f9e63;padding:3px 9px;border-radius:999px;}
.bt.on .save{background:rgba(255,255,255,.25);color:#fff;}

.plan .picon{width:48px;height:48px;border-radius:13px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;
  background:linear-gradient(160deg,rgba(78,138,232,.14),rgba(78,138,232,.02));border:1px solid var(--line2);}
.plan .picon svg{width:24px;height:24px;stroke:var(--blue);fill:none;}
.plan .price .amount{transition:opacity .2s;}
.plan .pnote{font-size:12.5px;color:var(--faint);margin-top:9px;min-height:18px;}
.plan .pnote .free{color:#2f9e63;font-weight:700;}

.guarantees{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:60px;}
.guar{display:flex;gap:15px;align-items:flex-start;padding:20px 22px;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:0 14px 34px -22px rgba(14,26,43,.3);}
.guar .gi{width:42px;height:42px;flex:none;border-radius:12px;display:flex;align-items:center;justify-content:center;
  background:rgba(78,138,232,.1);border:1px solid var(--line2);}
.guar .gi svg{width:21px;height:21px;stroke:var(--blue);fill:none;}
.guar b{display:block;color:var(--white);font-family:var(--f-display);font-weight:700;font-size:15.5px;margin-bottom:3px;}
.guar span{font-size:13px;color:var(--muted);line-height:1.45;}

.faq{max-width:780px;margin:64px auto 0;}
.faq-item{border:1px solid var(--line);border-radius:14px;background:var(--surface);margin-bottom:12px;overflow:hidden;transition:.2s;box-shadow:0 14px 34px -24px rgba(14,26,43,.28);}
.faq-item[open]{border-color:var(--line2);}
.faq-item summary{list-style:none;cursor:pointer;padding:21px 24px;font-family:var(--f-display);font-weight:600;font-size:16.5px;
  color:var(--white);display:flex;justify-content:space-between;align-items:center;gap:18px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";font-family:var(--f-tech);font-weight:700;font-size:24px;color:var(--blue);transition:transform .25s;line-height:1;}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item .faq-a{padding:0 24px 22px;font-size:14.5px;color:var(--muted);line-height:1.65;}

@media(max-width:980px){.guarantees{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.guarantees{grid-template-columns:1fr;}.billing-toggle{width:100%;justify-content:center;}}

/* ===================================================================
   IA — sección ampliada
   =================================================================== */
.ai-benefit{position:relative;background:linear-gradient(160deg,rgba(78,138,232,.13),rgba(10,15,26,.4));
  border:1px solid var(--line2);border-radius:18px;padding:32px;overflow:hidden;}
.ai-benefit::before{content:"";position:absolute;inset:0;border-radius:18px;padding:1px;pointer-events:none;
  background:linear-gradient(150deg,var(--blue),transparent 55%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;}
.ai-benefit-ic{width:50px;height:50px;border-radius:14px;background:linear-gradient(150deg,var(--blue-bright),var(--blue-deep));
  display:flex;align-items:center;justify-content:center;margin-bottom:18px;box-shadow:0 10px 26px -8px var(--glow);}
.ai-benefit-ic svg{width:25px;height:25px;stroke:#fff;fill:none;}
.ai-benefit-tag{font-family:var(--f-tech);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--blue-bright);}
.ai-benefit h3{font-size:30px;margin:10px 0 12px;}
.ai-benefit p{font-size:15px;color:var(--muted);line-height:1.6;}

.hud-body{min-height:248px;}
.ia-chips{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 6px;}
.iachip{font-family:var(--f-body);font-size:12.5px;color:var(--text);background:rgba(255,255,255,.04);
  border:1px solid var(--line);border-radius:999px;padding:9px 15px;cursor:pointer;transition:.2s;}
.iachip:hover{border-color:var(--blue);color:#fff;}
.iachip.on{background:rgba(78,138,232,.16);border-color:var(--blue);color:#fff;}

.typing{display:inline-flex;gap:5px;padding:6px 0;}
.typing i{width:7px;height:7px;border-radius:50%;background:var(--blue-bright);animation:typingdot 1s infinite;}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes typingdot{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
.bub.ai .ia-b{color:var(--blue-bright);font-weight:700;}
.bub.ai .ia-g{color:#56D08A;font-weight:700;}
.bub.ai .ia-r{color:#F0584E;font-weight:700;}

.ia-cap-head{display:flex;align-items:center;gap:16px;margin:66px 0 24px;}
.ia-cap-head .t{font-family:var(--f-tech);font-weight:600;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--blue-bright);white-space:nowrap;}
.ia-cap-head .ln{flex:1;height:1px;background:var(--line);}
.ia-caps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.iacap{display:flex;gap:15px;align-items:flex-start;padding:22px;border:1px solid var(--line);border-radius:15px;background:var(--surface);transition:.25s;backdrop-filter:blur(6px);}
.iacap:hover{transform:translateY(-3px);border-color:var(--line2);background:rgba(78,138,232,.05);}
.iacap .ci{width:44px;height:44px;flex:none;border-radius:12px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,rgba(78,138,232,.16),rgba(78,138,232,.03));border:1px solid var(--line2);}
.iacap .ci svg{width:21px;height:21px;stroke:var(--blue-bright);fill:none;}
.iacap b{display:block;color:var(--white);font-family:var(--f-display);font-weight:700;font-size:15.5px;margin-bottom:4px;}
.iacap .qx{font-size:13px;color:var(--muted);font-style:italic;line-height:1.45;}

@media(max-width:980px){.ia-caps{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.ia-caps{grid-template-columns:1fr;}.ai-benefit h3{font-size:26px;}}

/* ===================================================================
   ROLES · SEGURIDAD · CONTACTO (formulario)
   =================================================================== */
.roles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.role{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:30px 26px;transition:.3s;backdrop-filter:blur(6px);}
.role:hover{transform:translateY(-5px);border-color:var(--line2);background:rgba(44,101,195,.05);}
.role-ic{width:50px;height:50px;border-radius:13px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;
  background:linear-gradient(160deg,rgba(78,138,232,.16),rgba(78,138,232,.03));border:1px solid var(--line2);}
.role-ic svg{width:24px;height:24px;stroke:var(--blue-bright);fill:none;}
.role h3{font-size:18.5px;margin-bottom:9px;}
.role p{font-size:14.5px;color:var(--muted);line-height:1.55;}

.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}

.contacto-sec{position:relative;overflow:hidden;}
.contacto-sec .wrap{position:relative;z-index:1;}
.contacto-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.lead-form{position:relative;background:linear-gradient(180deg,rgba(19,36,58,.55),rgba(10,15,26,.6));
  border:1px solid var(--line2);border-radius:20px;padding:34px;backdrop-filter:blur(10px);
  box-shadow:0 40px 90px -36px rgba(0,0,0,.7),0 0 70px -30px var(--glow-soft);}
.lf-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.lf-field{margin-bottom:14px;display:flex;flex-direction:column;}
.lf-field label{font-size:12.5px;color:var(--muted);margin-bottom:7px;font-weight:600;}
.lf-field input,.lf-field select,.lf-field textarea{font-family:var(--f-body);font-size:14.5px;color:var(--white);
  background:rgba(255,255,255,.04);border:1px solid var(--line2);border-radius:11px;padding:12px 14px;outline:none;transition:.2s;width:100%;}
.lf-field input::placeholder,.lf-field textarea::placeholder{color:var(--faint);}
.lf-field input:focus,.lf-field select:focus,.lf-field textarea:focus{border-color:var(--blue);background:rgba(44,101,195,.09);}
.lf-field select option{background:#0E1A2B;color:#fff;}
.lf-field textarea{resize:vertical;min-height:70px;}
.lf-hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0;}
.lead-msg{margin-top:14px;font-size:14px;text-align:center;font-weight:600;}
.lead-msg.ok{color:#56D08A;}
.lead-msg.err{color:#F0584E;}

@media(max-width:980px){.roles-grid{grid-template-columns:1fr 1fr;}.trust-grid{grid-template-columns:1fr 1fr;}.contacto-grid{grid-template-columns:1fr;gap:40px;}}
@media(max-width:560px){.roles-grid{grid-template-columns:1fr;}.trust-grid{grid-template-columns:1fr;}.lf-row{grid-template-columns:1fr;}}

/* ===================================================================
   INVERSIÓN / PORTAFOLIO (dueño-inversionista)
   =================================================================== */
.inv-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center;}
.inv-badge{display:inline-flex;align-items:center;gap:9px;font-family:var(--f-tech);font-weight:600;font-size:11.5px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--blue-bright);background:rgba(44,101,195,.12);
  border:1px solid var(--line2);padding:8px 15px;border-radius:999px;}
.inv-badge .pulse{width:7px;height:7px;border-radius:50%;background:var(--blue-bright);box-shadow:0 0 0 0 var(--glow);animation:pulse 2.2s infinite;}
.inv-pills{display:flex;flex-wrap:wrap;gap:10px;}
.inv-pills span{font-family:var(--f-tech);font-size:12px;color:var(--text);background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:999px;padding:8px 14px;}
.inv-close{display:flex;align-items:center;gap:13px;margin-top:26px;padding:16px 18px;border:1px solid var(--line2);border-radius:13px;
  background:rgba(44,101,195,.07);font-family:var(--f-display);font-weight:600;font-size:15px;color:var(--white);line-height:1.45;}
.inv-close svg{width:23px;height:23px;flex:none;stroke:var(--blue-bright);fill:none;}

.invcard{position:relative;background:linear-gradient(180deg,rgba(19,36,58,.6),rgba(10,15,26,.66));border:1px solid var(--line2);
  border-radius:20px;padding:26px;backdrop-filter:blur(10px);box-shadow:0 40px 90px -34px rgba(0,0,0,.7),0 0 70px -30px var(--glow-soft);}
.invcard-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px;}
.invcard-head .t{font-family:var(--f-display);font-weight:700;font-size:17px;color:var(--white);}
.invcard-head .s{font-size:12px;color:var(--muted);}
.inv-live{font-family:var(--f-tech);font-size:11px;color:var(--blue-bright);display:flex;align-items:center;gap:7px;}
.inv-live i{width:7px;height:7px;border-radius:50%;background:var(--blue-bright);animation:softpulse 2.4s infinite;}
.inv-kpis{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px;}
.invkpi{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:12px;padding:14px 16px;}
.invkpi .k{font-family:var(--f-tech);font-weight:700;font-size:26px;color:#fff;}
.invkpi .l{font-size:11.5px;color:var(--muted);margin-top:3px;}
.inv-sub{font-family:var(--f-tech);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:14px;}
.inv-row{display:flex;align-items:center;gap:12px;margin-bottom:11px;}
.inv-row .nm{width:115px;font-size:13px;color:var(--text);}
.inv-row .track{flex:1;height:8px;background:rgba(255,255,255,.06);border-radius:6px;overflow:hidden;}
.inv-row .fill{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue),var(--blue-bright));border-radius:6px;transition:width 1.1s cubic-bezier(.2,.8,.2,1);}
.inv-row .val{width:46px;text-align:right;font-family:var(--f-tech);font-size:12.5px;color:var(--blue-bright);}
.inv-alert{display:flex;gap:12px;align-items:flex-start;background:rgba(44,101,195,.1);border:1px solid var(--line2);border-radius:13px;padding:15px 16px;font-size:13.5px;color:var(--text);line-height:1.5;margin-top:18px;}
.inv-alert svg{width:22px;height:22px;flex:none;stroke:var(--blue-bright);fill:none;margin-top:1px;}
.inv-alert .inv-act{color:var(--blue-bright);font-weight:700;}

@media(max-width:980px){.inv-grid{grid-template-columns:1fr;gap:40px;}}
@media(max-width:560px){.inv-kpis{grid-template-columns:1fr 1fr;}.inv-row .nm{width:90px;}}

/* ===================================================================
   AJUSTES v2 · header compacto + efectos IA + responsive 100%
   =================================================================== */

/* --- Botón compacto del menú --- */
.btn.sm{padding:9px 16px;font-size:13.5px;border-radius:11px;}
.btn.sm svg{display:none;}
.nav-login{padding:9px 15px;font-size:14px;}
header.nav .bar{padding:14px 28px;}
.nav-cta{gap:10px;}

/* --- Botón primario con barrido de luz (movimiento IA) --- */
.btn-primary{position:relative;overflow:hidden;isolation:isolate;}
.btn-primary::after{content:"";position:absolute;inset:0;z-index:-1;left:-130%;
  background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.38),transparent 80%);
  transform:skewX(-18deg);transition:none;}
.btn-primary:hover::after{animation:sheen .85s ease;}
@keyframes sheen{from{left:-130%;}to{left:130%;}}

/* --- Brillo sutil al pasar sobre tarjetas (glow IA) --- */
.mcat,.role,.benefit,.trust-item,.plan,.cap,.step,.inv-panel{transition:transform .3s cubic-bezier(.2,.7,.3,1),box-shadow .3s,border-color .3s;}
.mcat:hover,.role:hover,.benefit:hover,.trust-item:hover,.cap:hover{transform:translateY(-4px);border-color:var(--line2);box-shadow:0 20px 50px -28px var(--glow);}

/* --- Aparición fluida (refuerzo del reveal) --- */
.reveal{will-change:opacity,transform;}

/* ===================================================================
   RESPONSIVE 100%
   =================================================================== */
@media(max-width:1100px){
  .wrap{padding:0 24px;}
}
@media(max-width:980px){
  header.nav .bar{padding:13px 20px;}
  .nav .logo{height:32px;}
  .nav-cta .btn{display:none;}        /* en móvil el botón vive en el menú; barra limpia */
  .nav-cta{gap:0;}
  section{padding:96px 0;}
  .sec-head{margin-bottom:48px;}
  .hero{padding:128px 0 72px;}
  .sec-head p{font-size:17px;}
}
@media(max-width:680px){
  .hero h1{font-size:clamp(32px,8.6vw,56px);}
  .hero .slogan{font-size:clamp(20px,5.6vw,28px);}
  .hero p.sub{font-size:16.5px;}
  .hero-shot{margin-top:54px;}
  .appwin,.hero-shot .frame{max-width:100%;overflow:hidden;}
}
@media(max-width:560px){
  .wrap{padding:0 18px;}
  section{padding:84px 0;}
  .hero{padding:118px 0 56px;}
  .hero .cta-row{gap:12px;width:100%;}
  .hero .cta-row .btn{width:100%;justify-content:center;}
  .sec-head p{font-size:15.5px;}
  .eyebrow{font-size:11px;letter-spacing:.2em;}
  h2{letter-spacing:-.01em;}
  .btn{padding:13px 22px;}
}
@media(max-width:420px){
  .nav-login{display:none;}             /* pantallas muy chicas: solo logo + burger */
  .hero h1{font-size:30px;line-height:1.1;}
  .hero .slogan{font-size:20px;}
  .stat .num{font-size:30px;}
}

/* Respeta a quien pide menos movimiento */
@media(prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important;}
}

/* fix overflow móvil: grid de beneficios + blindaje de decorativos */
@media(max-width:980px){.grid-ben{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.grid-ben{grid-template-columns:1fr;}}
html,body{overflow-x:clip;}
.hero,section,.cta-box,.hud{overflow-x:clip;}
.hero-glow,.beam{max-width:100vw;}
