/* ══════════════════════════════════════════════════
   VEKTS LAB — NAV UNIFICADO
   Edita este archivo para cambiar el menú en todas las landings.
   ══════════════════════════════════════════════════ */

/* ── BASE NAV ── */
#nav{position:fixed;top:0;left:0;right:0;z-index:900;height:62px;padding:0 clamp(16px,4vw,48px);display:flex;align-items:center;justify-content:space-between;gap:12px;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border-bottom:1px solid var(--brd);transition:background .3s}
[data-theme="dark"] #nav{background:rgba(7,7,12,.82)}
[data-theme="light"] #nav{background:rgba(250,250,248,.92)}

/* ── LOGO ── */
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--tx);font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:16px;flex-shrink:0;letter-spacing:-.02em}
.logo img{display:block;height:28px;width:158px;max-width:none;flex-shrink:0}
.lmark{width:28px;height:28px;background:linear-gradient(135deg,var(--ac),var(--ac2));border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .5s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}
.logo:hover .lmark{transform:rotate(18deg) scale(1.15);box-shadow:0 0 20px rgba(124,109,250,.45)}

/* ── NAV LINKS ── */
.nlinks{display:flex;align-items:center;gap:4px;flex-shrink:0}
.nlinks>a,.nlinks>.ndrop-trigger{color:var(--tx2);text-decoration:none;font-size:12.5px;font-weight:500;white-space:nowrap;position:relative;transition:color .2s;padding:5px 8px;border-radius:8px}
.nlinks>a::after,.nlinks>.ndrop-trigger::after{content:'';position:absolute;bottom:2px;left:10px;right:10px;height:1px;background:var(--ac);transform:scaleX(0);transform-origin:right;transition:transform .35s}
.nlinks>a:hover,.nlinks>.ndrop-trigger:hover{color:var(--tx);background:var(--sur2)}
.nlinks>a:hover::after,.nlinks>.ndrop-trigger:hover::after{transform:scaleX(1);transform-origin:left}

/* ── DROPDOWN TRIGGER ── */
.ndrop-trigger{display:flex;align-items:center;gap:5px;cursor:pointer;background:none;border:none;font-family:inherit;user-select:none}
.ndrop-trigger svg.ndchev{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .28s;flex-shrink:0}
.ndrop-trigger.open svg.ndchev{transform:rotate(180deg)}

/* ── MEGA DROP PANEL ── */
.mega-drop{position:fixed;top:62px;left:0;right:0;z-index:850;pointer-events:none;opacity:0;transform:translateY(-8px);transition:opacity .22s,transform .22s}
.mega-drop.vis{opacity:1;transform:translateY(0);pointer-events:auto}
.mega-inner{max-width:1120px;margin:0 auto;padding:0 40px}
.mega-panel{background:var(--sur);border:1px solid var(--brd);border-top:none;border-radius:0 0 20px 20px;padding:28px 32px 32px;box-shadow:var(--sh3);display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
[data-theme="dark"] .mega-panel{background:rgba(13,13,22,.97);backdrop-filter:blur(32px)}
[data-theme="light"] .mega-panel{background:rgba(255,255,255,.97);backdrop-filter:blur(32px)}

/* ── MEGA CARDS ── */
.mega-card{display:flex;align-items:flex-start;gap:14px;padding:16px;border-radius:14px;text-decoration:none;color:var(--tx);transition:background .2s,border-color .2s;border:1px solid transparent;position:relative}
.mega-card:hover{background:var(--acbg);border-color:var(--acbrd)}
.mega-card-ico{width:40px;height:40px;min-width:40px;background:var(--sur2);border-radius:10px;display:flex;align-items:center;justify-content:center;transition:transform .3s,background .2s;flex-shrink:0}
.mega-card-ico svg{width:18px;height:18px;stroke:var(--ac2);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.mega-card:hover .mega-card-ico{transform:scale(1.12) rotate(-6deg);background:var(--acbrd)}
.mega-card-body{flex:1;min-width:0}
.mega-card-name{font-size:13.5px;font-weight:600;color:var(--tx);margin-bottom:3px;letter-spacing:-.01em}
.mega-card-desc{font-size:11.5px;color:var(--tx2);line-height:1.5}

/* ── MEGA SUB-ITEMS (SEO / SEM) ── */
.mega-sub{grid-column:span 3;display:flex;align-items:center;gap:6px;padding:10px 16px 0;border-top:1px solid var(--brd);margin-top:6px;flex-wrap:wrap}
.mega-sub-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tx3);margin-right:6px}
.mega-sub-item{display:flex;align-items:center;gap:6px;padding:5px 12px 5px 8px;border:1px solid var(--brd);border-radius:9999px;text-decoration:none;font-size:12px;font-weight:500;color:var(--tx2);transition:all .2s}
.mega-sub-item svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mega-sub-item:hover{color:var(--tx);border-color:var(--ac);background:var(--acbg)}

/* ── NRIGHT ── */
.nright{display:flex;align-items:center;gap:10px;flex-shrink:0}

/* ── HAMBURGER ── */
.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;padding:8px 6px;z-index:1001;width:36px;height:36px;flex-shrink:0;cursor:pointer}
.hamburger span{display:block;width:22px;height:2px;background:var(--tx);border-radius:2px;transition:transform .3s,opacity .3s}
.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ── MOBILE MENU ── */
.mob-menu{position:fixed;top:62px;left:0;right:0;z-index:800;display:flex;flex-direction:column;gap:0;transform:translateY(-110%);transition:transform .38s cubic-bezier(.23,1,.32,1);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border-bottom:1px solid var(--brd);overflow-y:auto;max-height:calc(100vh - 62px)}
[data-theme="dark"] .mob-menu{background:rgba(7,7,12,.97)}
[data-theme="light"] .mob-menu{background:rgba(250,250,248,.97)}
.mob-menu.open{transform:translateY(0)}
.mob-menu a:not(.mob-logo-link){color:var(--tx2);text-decoration:none;font-size:15px;font-weight:500;padding:14px 24px;border-bottom:1px solid var(--brd);display:block;transition:color .2s,background .2s}
.mob-menu a:not(.mob-logo-link):hover,.mob-menu a:not(.mob-logo-link):active{color:var(--tx);background:var(--acbg)}
.mob-menu .mob-cta{margin:16px 20px 8px;display:flex;align-items:center;justify-content:center;background:var(--ac);color:#fff!important;padding:14px 24px;border-radius:14px;font-weight:600;font-size:15px;border:none!important}
.mob-menu .mob-cta:hover{opacity:.88}
.mob-header{padding:18px 24px 16px;border-bottom:1px solid var(--brd);display:flex;align-items:center}
.mob-logo-link{display:inline-flex;align-items:center;text-decoration:none;line-height:0}
.mob-logo-link:hover{opacity:.8}
.mob-sect-label{padding:10px 24px 4px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tx3);border-bottom:1px solid var(--brd)}
.mob-sub{padding-left:36px!important;font-size:13.5px!important}

/* ── LANG SWITCH ── */
.langswitch{display:flex;align-items:center;gap:2px;background:var(--sur2);border:1px solid var(--brd);border-radius:9999px;padding:2px;flex-shrink:0}
.langbtn{padding:3px 9px;border-radius:9999px;font-size:11px;font-weight:600;color:var(--tx2);text-decoration:none;transition:all .2s;letter-spacing:.03em;line-height:1.6;white-space:nowrap}
.langbtn.active,.langbtn:hover{background:var(--ac);color:#fff}
.langbtn.active{pointer-events:none}

/* ── BACK BUTTON (páginas de servicio) ── */
.back-btn{display:flex;align-items:center;gap:7px;color:var(--tx2);text-decoration:none;font-size:13px;font-weight:500;padding:7px 14px;border:1px solid var(--brd);border-radius:9999px;transition:all .25s;white-space:nowrap;flex-shrink:0}
.back-btn:hover{color:var(--tx);border-color:var(--ac);background:var(--acbg)}
.back-btn svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ── CTA NAV ── */
.cta-nav{display:inline-flex;align-items:center;gap:7px;background:var(--ac);color:#fff;text-decoration:none;font-size:12px;font-weight:600;padding:9px 18px;border-radius:9999px;transition:all .25s;white-space:nowrap;flex-shrink:0}
.cta-nav:hover{opacity:.88;transform:translateY(-1px)}

/* ── THEME TOGGLE ── */
.tbtn{width:44px;height:24px;background:var(--sur2);border:1px solid var(--brd2);border-radius:9999px;flex-shrink:0;position:relative;transition:background .3s;cursor:pointer}
.tbtn::after{content:'';position:absolute;top:3px;left:3px;width:16px;height:16px;background:var(--ac);border-radius:50%;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
[data-theme="light"] .tbtn::after{transform:translateX(20px)}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
  #nav{padding:0 20px;height:58px}
  .nlinks{display:none!important}
  .mega-drop{top:58px}
  .mob-menu{top:58px}
  .hamburger{display:flex}
  .back-btn{display:none}
  .cta-nav{display:none}
}
