:root {
    --bg-deep: #0F0F0F;
    --accent-blue: #00E5FF;
    --accent-violet: #A855F7;
    --text-main: #F8FAFC;
    --text-dim: #94A3B8;
    --glass: rgba(255, 255, 255, 0.03);
    --glass-border: rgba(255, 255, 255, 0.08);
    --font-main: 'Plus Jakarta Sans', sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
    --font-serif: 'Playfair Display', serif;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
body { background-color: var(--bg-deep); font-family: var(--font-main); color: var(--text-main); line-height: 1.6; scroll-behavior: smooth; }
.neural-bg { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 2rem; }
.main-nav { 
    position: fixed; 
    top: 2rem; 
    left: 50%; 
    transform: translateX(-50%); 
    display: flex; 
    justify-content: center; 
    gap: 0.5rem; 
    z-index: 1000; 
    flex-wrap: nowrap;
    width: 95%;
    max-width: 900px;
}

/* Reducir padding de botones para que no se apilen en pantallas medias */
@media (max-width: 768px) {
    .main-nav a { padding: 0.4rem 0.8rem; font-size: 0.7rem; }
}
.main-nav a { background: var(--glass); border: 1px solid var(--glass-border); padding: 0.6rem 1.2rem; border-radius: 100px; color: var(--text-dim); font-weight: 600; cursor: pointer; transition: all 0.3s; backdrop-filter: blur(10px); font-family: var(--font-mono); font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.1em; white-space: nowrap; text-decoration: none; }
.main-nav a:hover, .main-nav a.active { color: var(--accent-blue); border-color: var(--accent-blue); background: rgba(0, 229, 255, 0.05); box-shadow: 0 0 20px rgba(0, 229, 255, 0.1); }

/* ── Footer ── */
footer {
    text-align: center;
    padding: 1.5rem 2rem;
    margin-top: 3rem;
    border-top: 1px solid var(--glass-border);
}
footer p {
    font-size: 0.85rem;
    color: var(--text-dim);
    font-family: var(--font-mono);
    letter-spacing: 0.05em;
}
