:root {
    --aurora-cyan: #00FFFF;
    --aurora-violet: #8A2BE2;
    --aurora-green: #00FF7F;
    --aurora-pink: #FF1493;
    --deep-space: #0B0C1A;
    --cosmic-blue: #1A1B3A;
    --star-white: #F8FAFC;
    --nebula-gray: #94A3B8;
    --animation-speed: 25s;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }

body {
    font-family: 'Poppins', sans-serif;
    line-height: 1.6;
    color: var(--star-white);
    background: var(--deep-space);
    overflow-x: hidden;
}

.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }

/* --- Efecto de Fondo Aurora --- */
.aurora-bg {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    pointer-events: none; z-index: -1; opacity: 0.15;
}
.aurora-strip {
    position: absolute; height: 300px;
    background: linear-gradient(90deg, transparent 0%, var(--aurora-cyan) 25%, var(--aurora-violet) 50%, var(--aurora-green) 75%, transparent 100%);
    filter: blur(50px);
    animation: auroraMove var(--animation-speed) ease-in-out infinite;
}
.aurora-strip:nth-child(1) { top: 10%; left: -50%; width: 200%; animation-delay: 0s; }
.aurora-strip:nth-child(2) {
    top: 40%; left: -50%; width: 200%; animation-delay: -8s;
    background: linear-gradient(90deg, transparent 0%, var(--aurora-pink) 25%, var(--aurora-cyan) 50%, var(--aurora-violet) 75%, transparent 100%);
}
.aurora-strip:nth-child(3) {
    top: 70%; left: -50%; width: 200%; animation-delay: -16s;
    background: linear-gradient(90deg, transparent 0%, var(--aurora-green) 25%, var(--aurora-pink) 50%, var(--aurora-cyan) 75%, transparent 100%);
}

/* --- Estructura de Secciones --- */
.section { padding: 120px 0; position: relative; }
.section-gradient { background: radial-gradient(ellipse at top, var(--cosmic-blue) 0%, var(--deep-space) 70%); }
.section-accent-gradient { background: linear-gradient(180deg, var(--deep-space) 0%, var(--cosmic-blue) 100%); }

/* --- Header y Navegación --- */
.header {
    background: rgba(11, 12, 26, 0.9); backdrop-filter: blur(20px);
    padding: 1.5rem 0; position: fixed; width: 100%; top: 0; z-index: 1000;
    border-bottom: 1px solid rgba(0, 255, 255, 0.1);
}
.nav { display: flex; align-items: center; justify-content: space-between; }
.logo {
    text-decoration: none;
    font-size: 2rem;
    font-weight: 800;
}
.logo img {
    height: 75px;
}
.logo .logo-text {
    background: linear-gradient(135deg, var(--aurora-cyan) 0%, var(--aurora-violet) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 30px rgba(0, 255, 255, 0.3);
}
.nav-links { display: flex; gap: 2.5rem; list-style: none; align-items: center; }
.nav-links a {
    text-decoration: none; color: var(--star-white); font-weight: 500;
    transition: all 0.3s; position: relative;
    font-size: 1.1rem;
}
.nav-links a:hover { color: var(--aurora-cyan); text-shadow: 0 0 10px var(--aurora-cyan); }
.nav-links a:not(.cta-primary)::after {
    content: ''; position: absolute; width: 0; height: 2px;
    bottom: -8px; left: 50%;
    background: linear-gradient(90deg, var(--aurora-cyan), var(--aurora-violet));
    transition: all 0.3s ease; transform: translateX(-50%);
}
.nav-links a:not(.cta-primary):hover::after { width: 100%; }
.menu-toggle { display: none; flex-direction: column; gap: 5px; cursor: pointer; }
.menu-toggle .bar { width: 25px; height: 3px; background: linear-gradient(90deg, var(--aurora-cyan), var(--aurora-violet)); border-radius: 5px; transition: all 0.3s ease-in-out; }

/* --- Sección Principal (Hero) --- */
.hero { min-height: 100vh; display: flex; align-items: center; text-align: center; }
.hero-content { position: relative; z-index: 2; }
.hero-content h1 {
    font-size: 4.5rem; font-weight: 800; margin-bottom: 1.5rem;
    background: linear-gradient(135deg, var(--star-white) 0%, var(--aurora-cyan) 50%, var(--star-white) 100%);
    background-size: 300% 300%; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
    animation: auroraText 8s ease-in-out infinite;
    text-shadow: 0 0 40px rgba(0, 255, 255, 0.3); line-height: 1.1;
}
.hero-content .strategy-tagline {
    font-size: 1.5rem; margin-bottom: 2.5rem; font-weight: 400;
    color: var(--star-white); max-width: 800px; margin-left: auto; margin-right: auto;
}
.cta-primary {
    background: linear-gradient(135deg, var(--aurora-cyan) 0%, var(--aurora-violet) 100%);
    color: var(--deep-space); padding: 20px 60px; font-size: 1.3rem; font-weight: 700;
    border: none; border-radius: 50px; cursor: pointer; transition: all 0.4s ease;
    text-decoration: none; display: inline-block;
    box-shadow: 0 0 40px rgba(0, 255, 255, 0.4);
}
.cta-primary:hover { transform: translateY(-8px) scale(1.05); box-shadow: 0 0 60px rgba(138, 43, 226, 0.6); }

/* --- Títulos de Sección Universales --- */
.section-title {
    font-size: 3rem; font-weight: 800; text-align: center; margin-bottom: 1.5rem;
    background: linear-gradient(135deg, var(--aurora-cyan) 0%, var(--aurora-violet) 100%);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.section-subtitle {
    font-size: 1.3rem; text-align: center; margin-bottom: 4rem;
    color: var(--nebula-gray); max-width: 800px; margin: 0 auto 4rem auto;
}


/* --- El Costo Oculto de la Complejidad --- */
.complexity-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2.5rem;
    margin-top: 5rem;
    margin-bottom: 4rem;
}
.complexity-item {
    background: rgba(11, 12, 26, 0.6);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(0, 255, 255, 0.15);
    padding: 2.5rem;
    border-radius: 20px;
    text-align: center;
    transition: all 0.4s ease;
}
.complexity-item:hover {
    transform: translateY(-10px);
    border-color: rgba(0, 255, 255, 0.5);
    box-shadow: 0 10px 40px rgba(0, 255, 255, 0.1);
}
.complexity-icon-wrapper {
    width: 70px;
    height: 70px;
    margin: 0 auto 1.5rem auto;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--aurora-cyan) 0%, var(--aurora-violet) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 25px rgba(0, 255, 255, 0.3);
    flex-shrink: 0;
}
.complexity-icon-wrapper .lucide {
    width: 36px;
    height: 36px;
    color: var(--deep-space);
}
.complexity-item h3 {
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 1rem;
    color: var(--star-white);
}
.complexity-item p {
    color: var(--nebula-gray);
    font-size: 0.95rem;
    line-height: 1.7;
}
.transition-to-solution {
    text-align: center;
    max-width: 800px;
    margin: 3rem auto 0 auto;
    padding: 2.5rem;
    background: rgba(0, 255, 255, 0.05);
    border-radius: 15px;
    border: 1px solid rgba(0, 255, 255, 0.1);
    backdrop-filter: blur(5px);
}
.transition-to-solution p {
    font-size: 1.2rem;
    line-height: 1.8;
    color: var(--star-white);
    margin-bottom: 1.2rem;
}
.transition-to-solution p:last-child {
    margin-bottom: 0;
}
.transition-to-solution strong {
    color: var(--aurora-cyan);
    font-weight: 700;
}

/* --- Playbook (El Sistema) --- */
.playbook-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

.stage-container {
    background: rgba(11, 12, 26, 0.6);
    border: 1px solid rgba(0, 255, 255, 0.2);
    border-radius: 25px;
    padding: 2rem;
    transition: all 0.4s ease;
}

.stage-container:hover {
    transform: translateY(-10px);
    border-color: rgba(0, 255, 255, 0.5);
    box-shadow: 0 10px 40px rgba(0, 255, 255, 0.1);
}

.stage-header {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.stage-header .complexity-icon-wrapper {
    margin: 0;
}

.stage-header h3 {
    font-size: 1.2rem;
    font-weight: 600;
    color: var(--star-white);
    margin-bottom: 0.25rem;
}

.stage-header p {
    color: var(--nebula-gray);
    font-size: 0.9rem;
}


/* --- De Líder Atrapado a Líder Apalancado --- */
.leader-comparison {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    margin-top: 5rem;
}
.leader-column {
    padding: 2.5rem 2rem;
    border-radius: 20px;
    border: 1px solid;
}
.leader-column.trapped {
    background: radial-gradient(at top left, rgba(255, 20, 147, 0.1), transparent 70%);
    border-color: rgba(255, 20, 147, 0.2);
}
.leader-column.leveraged {
    background: radial-gradient(at top right, rgba(0, 255, 127, 0.1), transparent 70%);
    border-color: rgba(0, 255, 127, 0.2);
}
.leader-column h3 {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 2rem;
    text-align: center;
}
.leader-column.trapped h3 {
    color: var(--aurora-pink);
}
.leader-column.leveraged h3 {
    color: var(--aurora-green);
}
.leader-column ul {
    list-style: none;
    padding: 0;
}
.leader-column li {
    font-size: 1rem;
    line-height: 1.7;
    color: var(--nebula-gray);
    margin-bottom: 1.5rem;
    padding-left: 2.2rem;
    position: relative;
}
.leader-column li:last-child {
    margin-bottom: 0;
}
.leader-column li::before {
    position: absolute;
    left: 0;
    top: -2px;
    font-size: 1.8rem;
    line-height: 1;
}
.leader-column.trapped li::before {
    content: '×';
    color: var(--aurora-pink);
}
.leader-column.leveraged li::before {
    content: '✓';
    color: var(--aurora-green);
}
.leader-column li strong {
    color: var(--star-white);
    font-weight: 600;
}

.playbook-card {
    background: rgba(11, 12, 26, 0.6); backdrop-filter: blur(15px);
    border: 1px solid rgba(0, 255, 255, 0.2);
    padding: 2.5rem; border-radius: 25px;
    display: flex; align-items: center; gap: 2.5rem;
    transition: all 0.5s ease;
}
.playbook-card:hover { transform: translateY(-10px); border-color: var(--aurora-cyan); box-shadow: 0 15px 50px rgba(0, 255, 255, 0.15); }
.playbook-phase {
    font-size: 1.5rem; font-weight: 800; color: var(--aurora-cyan);
    min-width: 120px; text-align: center;
}
.playbook-content h3 { font-size: 1.5rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--star-white); }
.playbook-content p { color: var(--nebula-gray); font-size: 1rem; }

/* --- Calculadora --- */
.calculator-step {
    text-align: center;
}

/* --- Programa de Fundadores (La Oferta) --- */
.founders-program {
    background: rgba(11, 12, 26, 0.8); backdrop-filter: blur(20px);
    border: 1px solid rgba(138, 43, 226, 0.3); padding: 4rem; border-radius: 20px;
    max-width: 900px; margin: 0 auto; text-align: center;
}
.founders-program h3 { font-size: 2.5rem; font-weight: 700; margin-bottom: 1.5rem; color: var(--aurora-violet); }
.founders-program .exclusivity-tag {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    color: var(--aurora-cyan);
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 2rem;
    padding: 10px 20px;
    border-radius: 8px;
    background: rgba(0, 255, 255, 0.1);
    border: 1px solid rgba(0, 255, 255, 0.2);
    box-shadow: none;
}
.founders-program .exclusivity-tag .lucide {
    width: 20px;
    height: 20px;
    color: var(--aurora-cyan);
}
.founders-program p { font-size: 1.2rem; line-height: 1.7; color: var(--nebula-gray); margin-bottom: 2.5rem; }

/* --- FAQ y Bio del Fundador (Mitigación de Riesgo) --- */
.faq-section { max-width: 800px; margin: 0 auto 5rem auto; }
.faq-item {
    background: rgba(11, 12, 26, 0.6);
    border: 1px solid rgba(0, 255, 255, 0.1);
    border-radius: 15px; margin-bottom: 1rem;
}
.faq-question {
    padding: 1.5rem; font-weight: 600; font-size: 1.1rem;
    cursor: pointer; display: flex; justify-content: space-between; align-items: center;
}
.faq-question::after { content: '+'; font-size: 1.5rem; transition: transform 0.3s ease; }
.faq-answer {
    padding: 0 1.5rem 1.5rem; max-height: 0; overflow: hidden;
    transition: max-height 0.4s ease, padding 0.4s ease; color: var(--nebula-gray);
}
.faq-item.active .faq-question::after { transform: rotate(45deg); }

.founder-bio {
    display: flex; gap: 2rem; align-items: center;
    max-width: 800px; margin: 0 auto;
    background: rgba(11, 12, 26, 0.6); padding: 2rem; border-radius: 20px;
    border: 1px solid rgba(138, 43, 226, 0.2);
}
.founder-bio img { width: 120px; aspect-ratio: 1 / 1; border-radius: 50%; border: 3px solid var(--aurora-violet); object-fit: cover; flex-shrink: 0; }
.founder-bio h4 { font-size: 1.3rem; font-weight: 600; margin-bottom: 0.5rem; }
.founder-bio p { color: var(--nebula-gray); font-size: 0.95rem; }

/* --- CTA Final y Formulario --- */
.final-cta { padding: 140px 0; }
.diagnostic-promise {
    background: rgba(0, 255, 255, 0.05);
    border: 1px solid rgba(0, 255, 255, 0.2);
    padding: 2.5rem; border-radius: 20px; margin: -2rem auto 3rem auto;
    max-width: 800px; text-align: center;
    backdrop-filter: blur(5px);
}
.diagnostic-promise p {
    font-size: 1.1rem; line-height: 1.7; color: var(--star-white);
    margin: 0;
}
.form-group { margin-bottom: 1.5rem; text-align: left; }
.form-group label { display: block; margin-bottom: 0.5rem; font-weight: 500; color: var(--nebula-gray); }
.form-group input, .form-group textarea {
    width: 100%; padding: 1rem; border-radius: 10px; border: 1px solid rgba(0, 255, 255, 0.2);
    background: rgba(11, 12, 26, 0.8); color: var(--star-white); font-family: 'Poppins', sans-serif;
    font-size: 1rem; transition: all 0.3s ease;
}
.form-group input:focus, .form-group textarea:focus { outline: none; border-color: var(--aurora-cyan); box-shadow: 0 0 15px rgba(0, 255, 255, 0.3); }
.form-submit {
    background: linear-gradient(135deg, var(--aurora-cyan) 0%, var(--aurora-violet) 100%);
    color: var(--deep-space); padding: 1rem 2.5rem; font-size: 1.2rem; font-weight: 700;
    border: none; border-radius: 50px; cursor: pointer; transition: all 0.4s ease;
    box-shadow: 0 0 40px rgba(0, 255, 255, 0.4); width: 100%;
}
.form-submit:hover { transform: scale(1.05); box-shadow: 0 0 60px rgba(138, 43, 226, 0.6); }

/* --- Footer --- */
.footer { background: var(--deep-space); color: var(--nebula-gray); padding: 80px 0 30px; border-top: 1px solid rgba(0, 255, 255, 0.1); }
.footer-content { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 3rem; margin-bottom: 3rem; text-align: left; }
.footer-section h3 {
    font-size: 1.6rem; font-weight: 700; margin-bottom: 1.5rem;
    background: linear-gradient(135deg, var(--aurora-cyan) 0%, var(--aurora-violet) 100%);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.footer-bottom { border-top: 1px solid rgba(0, 255, 255, 0.1); padding-top: 2rem; text-align: center; opacity: 0.6; }

/* --- Animaciones --- */
@keyframes auroraMove { 0%, 100% { transform: translateX(-50%) translateY(0px); } 50% { transform: translateX(-30%) translateY(-20px); } }
@keyframes auroraText { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }

/* --- Diseño Responsivo --- */
@media (max-width: 768px) {
    .founders-program {
        text-align: center;
    }
    .calculator-step button {
        display: block;
        margin-left: auto;
        margin-right: auto;
        width: 90%;
        max-width: 400px;
    }
    .nav {
        align-items: center;
    }
    .nav-links {
        position: fixed; top: 0; right: -100%; width: 75%; height: 100vh;
        background: rgba(11, 12, 26, 0.95); backdrop-filter: blur(20px);
        flex-direction: column; justify-content: center; align-items: center;
        box-shadow: -20px 0 40px rgba(0, 0, 0, 0.3); transition: right 0.4s ease-in-out;
        gap: 3rem; border-left: 1px solid rgba(0, 255, 255, 0.2);
    }
    .nav-links.active { right: 0; }
    .menu-toggle { display: flex; z-index: 1001; }
    .menu-toggle.active .bar:nth-child(1) { transform: rotate(-45deg) translate(-6px, 6px); }
    .menu-toggle.active .bar:nth-child(2) { opacity: 0; }
    .menu-toggle.active .bar:nth-child(3) { transform: rotate(45deg) translate(-6px, -6px); }

    .hero-content h1 { font-size: 2.8rem; line-height: 1.2; }
    .hero-content .strategy-tagline { font-size: 1.1rem; }
    .section-title { font-size: 2.2rem; }
    .section { padding: 80px 0; }
    .final-cta { padding: 100px 0; }
    .case-stats, .footer-content { grid-template-columns: 1fr; }
    .case-content { padding: 2rem 1rem; }
    .case-stats { gap: 1rem; }
    .footer-content { text-align: center; }
    .case-study { padding: 100px 0; }
    .leader-comparison { grid-template-columns: 1fr; }
    .playbook-card { flex-direction: column; text-align: center; gap: 1.5rem; }
    .founder-bio { flex-direction: column; text-align: center; }
    .logo-wall { gap: 2rem; }
    .testimonial-card { padding: 2rem 1.5rem; }
    .form-submit { padding: 1.2rem 2rem; font-size: 1.1rem; }
}

.content-section {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    text-align: center;
    padding-top: 80px; /* Space for header */
}

.content-box {
    max-width: 700px;
}
.content-box h1, .content-box h2, .content-box p {
    text-align: left;
}
.content-box h1 {
    font-size: 2.5rem;
    margin-bottom: 1rem;
    text-align: center;
}
.content-box h2 {
    font-size: 1.5rem;
    margin-top: 2rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid rgba(0, 255, 255, 0.2);
    padding-bottom: 0.5rem;
}
.content-box ul {
    padding-left: 20px;
    text-align: left;
}
.content-box a {
    color: var(--aurora-cyan);
    text-decoration: none;
}
.content-box a:hover {
    text-decoration: underline;
}

.ayuda-calculo {
    margin: 1rem 0;
    text-align: center;
}

.ayuda-calculo a {
    color: var(--aurora-cyan);
    text-decoration: none;
    font-size: 0.9rem;
}

.ayuda-calculo a:hover {
    text-decoration: underline;
}

.asistente-calculo-contenido {
    background: rgba(0, 0, 0, 0.2);
    padding: 1.5rem;
    border-radius: 10px;
    margin-top: 1rem;
    display: none; /* Oculto por defecto */
}

.asistente-calculo-contenido p {
    font-size: 0.9rem;
    color: var(--nebula-gray);
    line-height: 1.6;
    margin-bottom: 1rem;
    text-align: left;
}

.asistente-calculo-contenido p:last-child {
    margin-bottom: 0;
}

.form-group-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    gap: 1rem;
    margin-bottom: 1rem;
}

.cta-secondary {
    background-color: var(--aurora-violet);
    color: var(--star-white);
    padding: 10px 20px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 600;
    transition: background-color 0.3s ease;
    border: none;
    cursor: pointer;
}

.cta-secondary:hover {
    background-color: #7a2ab5;
}

.button-group {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-top: 2rem;
    align-items: center;
}

@media (min-width: 768px) {
    .button-group {
        flex-direction: row;
        justify-content: center;
    }
}

.vision-quote {
    font-size: 1.2rem;
    font-style: italic;
    color: var(--nebula-gray);
    border-left: 3px solid var(--aurora-violet);
    padding-left: 1.5rem;
    margin: 0 auto;
    max-width: 90%;
}
