Files
Autoparts-DB/pitch/deck.html

2793 lines
109 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Nexus Autoparts — Friends & Family Round 2026</title>
<meta name="description" content="Nexus Autoparts — Marketplace inteligente de autopartes. Ronda Friends & Family.">
<meta property="og:title" content="Nexus Autoparts — Pitch Deck F&F 2026">
<meta property="og:description" content="Tu conexión directa con las partes que necesitas. Ronda Friends & Family $30K USD.">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap" rel="stylesheet">
<style>
/* ═══════════════════════════════════════════════
NEXUS AUTOPARTS — PITCH DECK F&F 2026
Aesthetic: Developer-tool / SaaS Dashboard
═══════════════════════════════════════════════ */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
:root {
--bg-deep: #06080D;
--bg-primary: #0D1117;
--bg-surface: #161B22;
--bg-elevated: #1C2333;
--bg-hover: #21262D;
--border: #30363D;
--border-bright: #484F58;
--accent: #FF6B35;
--accent-hover: #FF8555;
--accent-glow: rgba(255, 107, 53, 0.25);
--accent-subtle: rgba(255, 107, 53, 0.08);
--cyan: #00D4FF;
--cyan-glow: rgba(0, 212, 255, 0.2);
--cyan-subtle: rgba(0, 212, 255, 0.08);
--green: #3FB950;
--green-subtle: rgba(63, 185, 80, 0.12);
--purple: #A78BFA;
--purple-subtle: rgba(167, 139, 250, 0.1);
--yellow: #F0B429;
--yellow-subtle: rgba(240, 180, 41, 0.12);
--red: #F85149;
--red-subtle: rgba(248, 81, 73, 0.12);
--text-primary: #E6EDF3;
--text-secondary: #8B949E;
--text-muted: #9CA3AF;
--font-display: 'Sora', sans-serif;
--font-body: 'Plus Jakarta Sans', sans-serif;
--font-mono: 'JetBrains Mono', monospace;
--radius: 12px;
--radius-lg: 16px;
}
html {
scroll-snap-type: y mandatory;
scroll-behavior: smooth;
overflow-y: scroll;
overflow-x: hidden;
}
body {
font-family: var(--font-body);
background: var(--bg-deep);
color: var(--text-primary);
line-height: 1.6;
}
/* ── Dot Grid Background ── */
body::before {
content: '';
position: fixed;
inset: 0;
background-image: radial-gradient(circle, var(--border) 0.8px, transparent 0.8px);
background-size: 28px 28px;
opacity: 0.4;
pointer-events: none;
z-index: 0;
}
/* ── Noise Texture Overlay ── */
body::after {
content: '';
position: fixed;
inset: 0;
opacity: 0.015;
pointer-events: none;
z-index: 0;
background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
/* ── Slide Container ── */
.slide {
min-height: 100vh;
width: 100%;
scroll-snap-align: start;
display: flex;
align-items: center;
justify-content: center;
padding: 60px 48px;
position: relative;
overflow: hidden;
}
.slide-inner {
max-width: 1100px;
width: 100%;
z-index: 2;
position: relative;
}
/* ── Ambient Glow ── */
.glow {
position: absolute;
border-radius: 50%;
filter: blur(140px);
opacity: 0.1;
pointer-events: none;
z-index: 0;
}
.glow--orange { background: var(--accent); width: 500px; height: 500px; }
.glow--cyan { background: var(--cyan); width: 400px; height: 400px; }
/* ── Typography ── */
.tag {
display: inline-flex;
align-items: center;
gap: 6px;
font-family: var(--font-mono);
font-size: 0.7rem;
font-weight: 600;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--cyan);
background: var(--cyan-subtle);
border: 1px solid rgba(0, 212, 255, 0.15);
padding: 5px 14px;
border-radius: 20px;
margin-bottom: 18px;
}
.tag::before {
content: '//';
opacity: 0.5;
}
.title {
font-family: var(--font-display);
font-size: clamp(2rem, 4vw, 3rem);
font-weight: 800;
line-height: 1.15;
margin-bottom: 20px;
letter-spacing: -0.03em;
color: var(--text-primary);
}
.title .hl {
background: linear-gradient(135deg, var(--accent), #FF8C42);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
.title .hl-cyan {
background: linear-gradient(135deg, var(--cyan), #7DD3FC);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
.subtitle {
font-size: 1.26rem;
color: var(--text-secondary);
max-width: 100%;
line-height: 1.75;
margin-bottom: 32px;
}
/* ── Card Base ── */
.card {
background: var(--bg-surface);
border: 1px solid var(--border);
border-radius: var(--radius);
padding: 24px;
transition: all 0.3s ease;
position: relative;
}
.card:hover {
border-color: var(--border-bright);
background: var(--bg-elevated);
}
.card--glow:hover {
border-color: transparent;
background: linear-gradient(var(--bg-surface), var(--bg-surface)) padding-box,
linear-gradient(135deg, var(--accent), var(--cyan)) border-box;
border: 1px solid transparent;
box-shadow: 0 0 30px rgba(255, 107, 53, 0.06), 0 0 60px rgba(0, 212, 255, 0.04);
}
/* ── Scroll Animations ── */
.reveal {
opacity: 0;
transform: translateY(28px);
transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1),
transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}
.reveal.visible {
opacity: 1;
transform: translateY(0);
}
.reveal-d1 { transition-delay: 0.08s; }
.reveal-d2 { transition-delay: 0.16s; }
.reveal-d3 { transition-delay: 0.24s; }
.reveal-d4 { transition-delay: 0.32s; }
.reveal-d5 { transition-delay: 0.40s; }
/* ── Navigation ── */
.nav {
position: fixed;
bottom: 24px;
left: 50%;
transform: translateX(-50%);
display: flex;
align-items: center;
gap: 10px;
z-index: 100;
background: rgba(13, 17, 23, 0.92);
backdrop-filter: blur(16px);
-webkit-backdrop-filter: blur(16px);
padding: 8px 14px;
border-radius: 40px;
border: 1px solid var(--border);
}
.nav-btn {
width: 32px;
height: 32px;
border-radius: 8px;
border: 1px solid var(--border);
background: var(--bg-surface);
color: var(--text-secondary);
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s;
font-family: var(--font-mono);
font-size: 0.8rem;
}
.nav-btn:hover {
border-color: var(--accent);
color: var(--accent);
background: var(--accent-subtle);
}
.nav-dots { display: flex; gap: 5px; }
.nav-dot {
width: 6px;
height: 6px;
border-radius: 3px;
background: var(--border);
cursor: pointer;
transition: all 0.3s;
border: none;
}
.nav-dot.active {
background: var(--accent);
width: 20px;
box-shadow: 0 0 10px var(--accent-glow);
}
.nav-counter {
font-family: var(--font-mono);
font-size: 0.7rem;
color: var(--text-muted);
min-width: 42px;
text-align: center;
font-variant-numeric: tabular-nums;
}
/* ── Code Block ── */
.code-block {
background: var(--bg-primary);
border: 1px solid var(--border);
border-radius: var(--radius);
padding: 20px 24px;
font-family: var(--font-mono);
font-size: 0.82rem;
line-height: 1.8;
overflow-x: auto;
position: relative;
}
.code-block .code-header {
display: flex;
align-items: center;
gap: 8px;
margin-bottom: 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--border);
}
.code-block .dot { width: 10px; height: 10px; border-radius: 50%; }
.code-block .dot--red { background: #FF5F56; }
.code-block .dot--yellow { background: #FFBD2E; }
.code-block .dot--green { background: #27C93F; }
.code-block .code-filename {
font-size: 0.7rem;
color: var(--text-muted);
margin-left: auto;
}
.code-block .kw { color: var(--purple); }
.code-block .fn { color: #7DD3FC; }
.code-block .str { color: var(--green); }
.code-block .num { color: var(--accent); }
.code-block .cm { color: var(--text-muted); font-style: italic; }
.code-block .op { color: var(--text-secondary); }
.code-block .prop { color: #F0B429; }
/* ── Stat Cards ── */
.stats-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
gap: 16px;
}
.stat { text-align: center; padding: 22px 16px; }
.stat-value {
font-family: var(--font-mono);
font-size: clamp(1.6rem, 2.5vw, 2.2rem);
font-weight: 700;
color: var(--accent);
line-height: 1.2;
}
.stat-label {
font-size: 0.94rem;
color: var(--text-secondary);
margin-top: 6px;
font-weight: 500;
}
/* ── Problem Cards ── */
.problem-stack { display: flex; flex-direction: column; gap: 12px; margin-top: 24px; }
.problem-card {
display: flex;
gap: 16px;
align-items: flex-start;
padding: 18px 22px;
}
.problem-card .p-icon {
flex-shrink: 0;
width: 36px;
height: 36px;
border-radius: 8px;
background: var(--red-subtle);
display: flex;
align-items: center;
justify-content: center;
font-size: 1rem;
color: var(--red);
font-family: var(--font-mono);
font-weight: 700;
}
.problem-card .p-text {
font-size: 1.08rem;
line-height: 1.6;
color: var(--text-secondary);
}
.problem-card .p-text strong { color: var(--text-primary); }
/* ── Solution Flow ── */
.flow {
display: grid;
grid-template-columns: 1fr auto 1fr auto 1fr;
align-items: center;
gap: 14px;
margin-top: 28px;
}
.flow-node {
text-align: center;
padding: 26px 18px;
}
.flow-node .node-icon { font-size: 1.8rem; margin-bottom: 10px; }
.flow-node h4 { font-family: var(--font-display); font-size: 1.14rem; font-weight: 700; margin-bottom: 6px; }
.flow-node p { font-size: 0.94rem; color: var(--text-secondary); }
.flow-node--nexus {
border-color: transparent !important;
background: linear-gradient(var(--bg-surface), var(--bg-surface)) padding-box,
linear-gradient(135deg, var(--accent), var(--cyan)) border-box !important;
border: 1px solid transparent !important;
box-shadow: 0 0 40px rgba(255, 107, 53, 0.08), 0 0 80px rgba(0, 212, 255, 0.05);
}
.flow-arrow {
font-family: var(--font-mono);
font-size: 1.2rem;
color: var(--border-bright);
text-align: center;
}
/* ── Feature Cards ── */
.features-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
margin-top: 12px;
}
.feature-col-label {
font-family: var(--font-mono);
font-size: 0.72rem;
font-weight: 600;
letter-spacing: 0.1em;
text-transform: uppercase;
margin-bottom: 14px;
display: flex;
align-items: center;
gap: 8px;
}
.feature-col-label .dot-status {
width: 7px; height: 7px; border-radius: 50%;
}
.feature-list { display: flex; flex-direction: column; gap: 10px; }
.feature-item {
padding: 14px 18px;
}
.feature-item h4 { font-family: var(--font-display); font-size: 1.06rem; font-weight: 700; margin-bottom: 4px; }
.feature-item p { font-size: 0.94rem; color: var(--text-secondary); line-height: 1.5; }
.feature-item--planned { border-color: rgba(0, 212, 255, 0.2); }
.feature-item--planned:hover { border-color: rgba(0, 212, 255, 0.4); }
/* ── Market TAM/SAM/SOM — Dashboard Gauges ── */
.market-dashboard {
margin-top: 32px;
}
/* Road line under gauges */
.gauges-road {
height: 3px;
background: repeating-linear-gradient(90deg, var(--accent) 0px, var(--accent) 20px, transparent 20px, transparent 34px);
opacity: 0.3;
border-radius: 2px;
margin-bottom: 24px;
}
/* Stats bar below */
.market-stats-bar {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
}
.ms-item {
background: var(--bg-surface);
border: 1px solid var(--border);
border-radius: var(--radius);
padding: 18px 22px;
display: flex;
align-items: center;
gap: 16px;
}
.ms-item .ms-icon {
width: 44px;
height: 44px;
border-radius: 10px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.ms-item .ms-val {
font-family: var(--font-mono);
font-size: 1.2rem;
font-weight: 700;
color: var(--accent);
line-height: 1.2;
}
.ms-item .ms-lbl {
font-size: 0.82rem;
color: var(--text-secondary);
}
@media (max-width: 768px) {
.market-stats-bar { grid-template-columns: 1fr; }
}
/* ── Revenue Table ── */
.pricing-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
margin-bottom: 24px;
}
.pricing-card { padding: 22px; }
.pricing-card h4 {
font-family: var(--font-mono);
font-size: 0.86rem;
text-transform: uppercase;
letter-spacing: 0.1em;
color: var(--text-secondary);
margin-bottom: 8px;
}
.pricing-card .price {
font-family: var(--font-mono);
font-size: 1.4rem;
font-weight: 700;
color: var(--accent);
}
.pricing-card .price-note {
font-size: 0.9rem;
color: var(--text-muted);
margin-top: 4px;
}
.proj-table {
width: 100%;
border-collapse: collapse;
margin-top: 8px;
}
.proj-table th, .proj-table td {
padding: 13px 16px;
text-align: left;
border-bottom: 1px solid var(--border);
font-size: 1.02rem;
}
.proj-table th {
font-family: var(--font-mono);
color: var(--text-muted);
font-weight: 600;
font-size: 0.82rem;
text-transform: uppercase;
letter-spacing: 0.1em;
}
.proj-table td { color: var(--text-secondary); }
.proj-table .arr {
font-family: var(--font-mono);
font-weight: 700;
color: var(--accent);
}
.margin-pill {
display: inline-block;
background: var(--green-subtle);
color: var(--green);
padding: 3px 12px;
border-radius: 20px;
font-family: var(--font-mono);
font-size: 0.9rem;
font-weight: 600;
}
/* ── Traction Grid ── */
.traction-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 14px;
margin-top: 24px;
}
.traction-item {
display: flex;
align-items: center;
gap: 14px;
padding: 18px 20px;
}
.traction-icon {
width: 40px;
height: 40px;
border-radius: 10px;
background: var(--accent-subtle);
border: 1px solid rgba(255, 107, 53, 0.15);
display: flex;
align-items: center;
justify-content: center;
font-size: 1.1rem;
flex-shrink: 0;
}
.traction-value {
font-family: var(--font-mono);
font-size: 1.2rem;
font-weight: 700;
color: var(--accent);
line-height: 1.2;
}
.traction-label {
font-size: 0.9rem;
color: var(--text-secondary);
}
/* ── Team ── */
.team-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 20px;
margin-top: 28px;
}
.team-card {
text-align: center;
padding: 32px;
}
.team-avatar {
width: 72px;
height: 72px;
border-radius: 50%;
background: linear-gradient(135deg, var(--accent), var(--cyan));
margin: 0 auto 16px;
display: flex;
align-items: center;
justify-content: center;
font-family: var(--font-display);
font-size: 1.6rem;
font-weight: 800;
color: white;
}
.team-card h3 { font-family: var(--font-display); font-size: 1.32rem; font-weight: 700; margin-bottom: 4px; }
.team-card .role { font-family: var(--font-mono); font-size: 0.94rem; color: var(--cyan); font-weight: 600; margin-bottom: 12px; }
.team-card p { font-size: 0.98rem; color: var(--text-secondary); line-height: 1.6; }
/* ── Funds Donut ── */
.funds-layout {
display: flex;
gap: 40px;
align-items: center;
margin-top: 28px;
}
.donut-wrap { position: relative; flex-shrink: 0; }
.donut-center {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
text-align: center;
}
.donut-center .amount {
font-family: var(--font-mono);
font-size: 1.3rem;
font-weight: 700;
color: var(--text-primary);
}
.donut-center .label {
font-family: var(--font-mono);
font-size: 0.65rem;
color: var(--text-muted);
text-transform: uppercase;
letter-spacing: 0.1em;
}
.funds-legend { flex: 1; display: flex; flex-direction: column; gap: 12px; }
.fund-row { display: flex; align-items: center; gap: 12px; }
.fund-dot { width: 12px; height: 12px; border-radius: 3px; flex-shrink: 0; }
.fund-info { flex: 1; }
.fund-name { font-size: 1.02rem; font-weight: 600; color: var(--text-primary); }
.fund-detail { font-size: 0.86rem; color: var(--text-secondary); }
.fund-amount { font-family: var(--font-mono); font-weight: 700; color: var(--accent); font-size: 1.02rem; white-space: nowrap; }
/* ── Roadmap ── */
.phases-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 14px;
margin-top: 28px;
}
.phase-card {
padding: 20px;
position: relative;
overflow: visible;
}
.phase-badge {
position: absolute;
top: -10px;
left: 14px;
font-family: var(--font-mono);
font-size: 0.65rem;
font-weight: 700;
padding: 2px 10px;
border-radius: 20px;
letter-spacing: 0.05em;
}
.phase-card .phase-time {
font-family: var(--font-mono);
font-size: 0.84rem;
color: var(--text-muted);
margin-top: 4px;
}
.phase-card h4 { font-family: var(--font-display); font-size: 1.14rem; margin: 8px 0 8px; font-weight: 700; }
.phase-card p { font-size: 0.94rem; color: var(--text-secondary); line-height: 1.55; }
.phase-card .phase-cost {
margin-top: 10px;
font-family: var(--font-mono);
font-size: 0.86rem;
font-weight: 600;
}
/* ── Competition ── */
.comp-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-top: 24px;
}
.comp-col-label {
font-family: var(--font-mono);
font-size: 0.72rem;
font-weight: 600;
letter-spacing: 0.1em;
text-transform: uppercase;
margin-bottom: 14px;
}
.comp-stack { display: flex; flex-direction: column; gap: 10px; }
.comp-item {
padding: 14px 18px;
}
.comp-item .comp-header { display: flex; justify-content: space-between; align-items: center; }
.comp-item .comp-badge {
font-family: var(--font-mono);
font-size: 0.82rem;
padding: 2px 8px;
border-radius: 4px;
font-weight: 600;
}
.comp-item p { font-size: 0.94rem; color: var(--text-secondary); margin-top: 4px; }
/* ── Ask / Investment ── */
.ask-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
gap: 16px;
margin-top: 28px;
}
.ask-card {
text-align: center;
padding: 24px;
}
.ask-card .ask-label {
font-family: var(--font-mono);
font-size: 0.65rem;
text-transform: uppercase;
letter-spacing: 0.15em;
color: var(--text-muted);
font-weight: 700;
margin-bottom: 10px;
}
.ask-card .ask-value {
font-family: var(--font-mono);
font-size: 1.3rem;
font-weight: 700;
color: var(--text-primary);
}
.ask-card--hl {
border-color: var(--accent) !important;
background: linear-gradient(135deg, var(--accent-subtle), rgba(255, 69, 0, 0.03)) !important;
}
.ask-card--hl .ask-value { color: var(--accent); }
.ask-bottom {
margin-top: 28px;
padding: 26px;
text-align: center;
}
.ask-bottom p { color: var(--text-secondary); font-size: 1.08rem; line-height: 1.7; }
.ask-bottom strong { color: var(--accent); }
/* ── Contact ── */
.contact-center { text-align: center; }
.contact-divider {
width: 50px;
height: 2px;
background: linear-gradient(90deg, var(--accent), var(--cyan));
border-radius: 2px;
margin: 20px auto;
}
.contact-info { margin-top: 20px; }
.contact-item { font-size: 1.14rem; color: var(--text-secondary); margin: 8px 0; }
.contact-item a { color: var(--cyan); text-decoration: none; font-family: var(--font-mono); font-size: 1.06rem; }
.contact-item a:hover { text-decoration: underline; }
.contact-tagline {
margin-top: 36px;
font-family: var(--font-display);
font-size: 1.38rem;
font-weight: 600;
font-style: italic;
color: var(--text-muted);
}
/* ── Cover ── */
.cover-logo {
width: 68px;
height: 68px;
border-radius: 16px;
background: linear-gradient(135deg, var(--accent), #E85D26);
display: flex;
align-items: center;
justify-content: center;
font-family: var(--font-display);
font-size: 1.8rem;
font-weight: 900;
color: white;
margin-bottom: 28px;
box-shadow: 0 8px 32px var(--accent-glow);
position: relative;
}
.cover-logo::after {
content: '';
position: absolute;
inset: -2px;
border-radius: 18px;
background: linear-gradient(135deg, var(--accent), var(--cyan));
z-index: -1;
opacity: 0.5;
filter: blur(12px);
}
.cover-title {
font-family: var(--font-display);
font-size: clamp(2.5rem, 5.5vw, 4.2rem);
font-weight: 900;
letter-spacing: -0.04em;
line-height: 1.1;
margin-bottom: 14px;
}
.cover-tagline {
font-size: clamp(0.95rem, 1.8vw, 1.2rem);
color: var(--text-secondary);
margin-bottom: 32px;
}
.cover-round {
display: inline-block;
font-family: var(--font-mono);
padding: 8px 22px;
border: 1px solid var(--border);
border-radius: 8px;
font-size: 0.8rem;
font-weight: 500;
color: var(--text-secondary);
letter-spacing: 0.04em;
background: var(--bg-surface);
}
/* ── Slide 3: Solution — Automotive Before/After ── */
.ba-grid {
display: grid;
grid-template-columns: 1fr auto 1fr;
gap: 0;
align-items: stretch;
margin-top: 32px;
border-radius: var(--radius-lg);
overflow: hidden;
border: 1px solid var(--border);
}
.ba-panel {
padding: 36px 32px;
position: relative;
}
.ba-panel--before {
background: linear-gradient(135deg, rgba(248, 81, 73, 0.06), rgba(248, 81, 73, 0.02));
border-right: 1px solid var(--border);
}
.ba-panel--after {
background: linear-gradient(135deg, rgba(63, 185, 80, 0.04), rgba(0, 212, 255, 0.04));
border-left: 1px solid var(--border);
}
.ba-label {
font-family: var(--font-mono);
font-size: 0.7rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.12em;
margin-bottom: 20px;
display: flex;
align-items: center;
gap: 8px;
}
.ba-label .ba-dot {
width: 8px;
height: 8px;
border-radius: 50%;
}
.ba-list {
list-style: none;
display: flex;
flex-direction: column;
gap: 14px;
}
.ba-list li {
font-size: 1.02rem;
color: var(--text-secondary);
line-height: 1.5;
display: flex;
align-items: flex-start;
gap: 10px;
}
.ba-list li .ba-icon {
font-family: var(--font-mono);
font-size: 0.8rem;
flex-shrink: 0;
width: 22px;
height: 22px;
border-radius: 6px;
display: flex;
align-items: center;
justify-content: center;
margin-top: 2px;
}
.ba-panel--before .ba-icon {
background: var(--red-subtle);
color: var(--red);
}
.ba-panel--after .ba-icon {
background: var(--green-subtle);
color: var(--green);
}
.ba-list li strong {
color: var(--text-primary);
}
.ba-result {
margin-top: 22px;
padding-top: 18px;
border-top: 1px solid var(--border);
font-family: var(--font-mono);
font-size: 1.3rem;
font-weight: 800;
display: flex;
align-items: center;
gap: 10px;
}
/* Center gauge between panels */
.ba-center {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 20px 8px;
background: var(--bg-deep);
position: relative;
z-index: 2;
min-width: 100px;
}
.ba-center .gauge-label {
font-family: var(--font-mono);
font-size: 0.6rem;
color: var(--text-muted);
text-transform: uppercase;
letter-spacing: 0.1em;
margin-top: 10px;
}
/* Speedometer needle animation */
@keyframes needleSweep {
0% { transform: rotate(-90deg); }
100% { transform: rotate(70deg); }
}
.gauge-needle {
transform-origin: 50% 85%;
animation: needleSweep 2s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
animation-play-state: paused;
}
.visible .gauge-needle {
animation-play-state: running;
}
/* Road line decoration */
.road-line {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 4px;
background: repeating-linear-gradient(
90deg,
var(--accent) 0px,
var(--accent) 24px,
transparent 24px,
transparent 40px
);
opacity: 0.5;
}
@media (max-width: 768px) {
.ba-grid {
grid-template-columns: 1fr;
}
.ba-panel--before { border-right: none; border-bottom: 1px solid var(--border); }
.ba-panel--after { border-left: none; border-top: 1px solid var(--border); }
.ba-center { padding: 12px; flex-direction: row; gap: 12px; min-width: auto; }
.ba-center svg { width: 90px; height: 58px; }
.ba-panel { padding: 24px 20px; }
}
/* ── Slide 4: Product Journey ── */
.journey {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 12px;
margin-top: 32px;
position: relative;
}
/* Connecting line behind steps */
.journey::before {
content: '';
position: absolute;
top: 18px;
left: 40px;
right: 40px;
height: 2px;
background: repeating-linear-gradient(90deg, var(--accent) 0px, var(--accent) 8px, transparent 8px, transparent 16px);
opacity: 0.3;
z-index: 0;
}
.journey-step {
display: flex;
flex-direction: column;
align-items: center;
position: relative;
z-index: 1;
}
.journey-num {
width: 36px;
height: 36px;
border-radius: 50%;
background: var(--bg-surface);
border: 2px solid var(--accent);
display: flex;
align-items: center;
justify-content: center;
font-family: var(--font-mono);
font-size: 0.8rem;
font-weight: 700;
color: var(--accent);
margin-bottom: 14px;
flex-shrink: 0;
}
.journey-mockup {
width: 100%;
background: #ffffff;
border: 1px solid #e0e0e0;
border-radius: 10px;
overflow: hidden;
margin-bottom: 14px;
transition: border-color 0.3s, box-shadow 0.3s;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
}
.journey-step:hover .journey-mockup {
border-color: var(--accent);
box-shadow: 0 8px 32px rgba(255, 107, 53, 0.15);
}
.mockup-bar {
display: flex;
align-items: center;
gap: 5px;
padding: 6px 10px;
background: #f0f0f0;
border-bottom: 1px solid #e0e0e0;
}
.mockup-bar .mb-dot { width: 6px; height: 6px; border-radius: 50%; }
.mockup-body {
padding: 14px;
font-family: var(--font-mono);
font-size: 0.74rem;
line-height: 1.7;
color: #555;
min-height: 145px;
}
.mockup-body .m-input {
background: #f5f5f5;
border: 1px solid #ddd;
border-radius: 6px;
padding: 6px 10px;
color: #222;
margin-bottom: 8px;
display: flex;
align-items: center;
gap: 6px;
}
.mockup-body .m-input .m-placeholder { color: #aaa; }
.mockup-body .m-input .m-cursor { color: var(--accent); animation: blink 1s infinite; }
@keyframes blink { 0%,100% { opacity: 1; } 50% { opacity: 0; } }
.mockup-body .m-row {
display: flex;
justify-content: space-between;
align-items: center;
padding: 5px 8px;
border-radius: 4px;
margin-bottom: 4px;
}
.mockup-body .m-row:hover { background: #f0f0f0; }
.mockup-body .m-row .m-price { color: var(--accent); font-weight: 600; }
.mockup-body .m-row .m-stock { font-size: 0.65rem; }
.mockup-body .m-stock--yes { color: var(--green); }
.mockup-body .m-stock--low { color: var(--yellow); }
.mockup-body .m-btn {
display: block;
width: 100%;
background: var(--accent);
color: #000;
border: none;
border-radius: 6px;
padding: 6px;
font-family: var(--font-mono);
font-size: 0.72rem;
font-weight: 700;
text-align: center;
margin-top: 8px;
}
.mockup-body .m-chat {
background: #f0f0f0;
border-radius: 8px 8px 8px 2px;
padding: 7px 10px;
margin-bottom: 6px;
color: #222;
max-width: 90%;
}
.mockup-body .m-chat--reply {
background: rgba(255, 107, 53, 0.1);
border-radius: 8px 8px 2px 8px;
border: 1px solid rgba(255, 107, 53, 0.2);
margin-left: auto;
}
.journey-label {
font-family: var(--font-display);
font-size: 0.95rem;
font-weight: 700;
text-align: center;
margin-bottom: 4px;
}
.journey-desc {
font-size: 0.78rem;
color: var(--text-secondary);
text-align: center;
line-height: 1.5;
}
.journey-alt {
text-align: center;
margin-top: 20px;
padding: 14px 24px;
background: var(--bg-surface);
border: 1px solid var(--border);
border-radius: var(--radius);
display: inline-flex;
align-items: center;
gap: 12px;
font-size: 0.88rem;
color: var(--text-secondary);
}
.journey-alt strong { color: var(--green); }
@media (max-width: 768px) {
.journey { grid-template-columns: 1fr 1fr; gap: 20px; }
.journey::before { display: none; }
.mockup-body { min-height: auto; }
}
/* ── Slide 6: Revenue Streams ── */
.revenue-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px;
margin-top: 28px;
padding-bottom: 400px;
}
.rev-card {
background: var(--bg-surface);
border: 1px solid var(--border);
border-radius: 20px 20px 24px 24px;
padding: 28px 20px 20px;
position: relative;
transition: all 0.3s ease;
display: flex;
flex-direction: column;
}
/* Piston head: wider top cap */
.rev-card::before {
content: '';
position: absolute;
top: -1px;
left: -6px;
right: -6px;
height: 8px;
background: var(--bg-surface);
border: 1px solid var(--border);
border-radius: 14px 14px 0 0;
border-bottom: none;
z-index: 1;
}
/* Piston rod: connecting rod below */
.rev-card::after {
content: '';
position: absolute;
bottom: -192px;
left: 50%;
transform: translateX(-50%);
width: 80px;
height: 192px;
background: var(--border);
border-radius: 0 0 5px 5px;
z-index: 0;
}
/* Biela end: crankshaft circle */
.rev-card .biela-end {
position: absolute;
bottom: -359px;
left: 50%;
transform: translateX(-50%);
width: 176px;
height: 176px;
border-radius: 50%;
border: 32px solid var(--border);
background: var(--bg-deep);
z-index: 1;
}
.rev-card:hover {
transform: translateY(-6px);
box-shadow: 0 12px 32px rgba(255, 107, 53, 0.1);
}
.rev-card:hover::before {
border-color: var(--accent);
background: var(--bg-surface);
}
.rev-card:hover::after {
background: var(--accent);
}
/* Piston colors per card */
.rev-card--orange:hover { border-color: var(--accent); }
.rev-card--orange:hover::before { border-color: var(--accent); }
.rev-card--orange:hover::after { background: var(--accent); }
.rev-card--orange:hover .biela-end { border-color: var(--accent); }
.rev-card--cyan:hover { border-color: var(--cyan); }
.rev-card--cyan:hover::before { border-color: var(--cyan); }
.rev-card--cyan:hover::after { background: var(--cyan); }
.rev-card--cyan:hover .biela-end { border-color: var(--cyan); }
.rev-card--purple:hover { border-color: var(--purple); }
.rev-card--purple:hover::before { border-color: var(--purple); }
.rev-card--purple:hover::after { background: var(--purple); }
.rev-card--purple:hover .biela-end { border-color: var(--purple); }
.rev-card--green:hover { border-color: var(--green); }
.rev-card--green:hover::before { border-color: var(--green); }
.rev-card--green:hover::after { background: var(--green); }
.rev-card--green:hover .biela-end { border-color: var(--green); }
.rev-card .rev-num {
position: relative;
z-index: 2;
}
.rev-card .rev-num {
font-family: var(--font-mono);
font-size: 0.65rem;
font-weight: 700;
color: var(--text-muted);
margin-bottom: 12px;
}
.rev-card .rev-icon {
width: 44px;
height: 44px;
border-radius: 10px;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 14px;
}
.rev-card h4 {
font-family: var(--font-display);
font-size: 1rem;
font-weight: 700;
margin-bottom: 6px;
}
.rev-card .rev-target {
font-family: var(--font-mono);
font-size: 0.68rem;
color: var(--text-muted);
margin-bottom: 10px;
text-transform: uppercase;
letter-spacing: 0.08em;
}
.rev-card .rev-desc {
font-size: 0.88rem;
color: var(--text-secondary);
line-height: 1.55;
flex: 1;
}
.rev-card .rev-metric {
margin-top: 14px;
padding-top: 12px;
border-top: 1px solid var(--border);
font-family: var(--font-mono);
font-size: 0.82rem;
font-weight: 700;
}
@media (max-width: 768px) {
.revenue-grid { grid-template-columns: 1fr 1fr; }
}
/* ── Slide 7: Roadmap Racetrack ── */
.racetrack {
position: relative;
margin-top: 36px;
}
/* The road surface */
.race-road {
position: absolute;
top: 22px;
left: 0;
right: 0;
height: 32px;
background: #1a1a24;
border-radius: 16px;
border: 2px solid #2a2a3a;
z-index: 0;
overflow: hidden;
}
/* Road lane markings */
.race-road::before {
content: '';
position: absolute;
top: 50%;
left: 12px;
right: 12px;
height: 2px;
background: repeating-linear-gradient(90deg, #F0B429 0px, #F0B429 18px, transparent 18px, transparent 32px);
opacity: 0.6;
transform: translateY(-50%);
}
/* Road edge lines */
.race-road::after {
content: '';
position: absolute;
top: 3px;
left: 8px;
right: 8px;
bottom: 3px;
border-top: 1.5px solid rgba(255,255,255,0.08);
border-bottom: 1.5px solid rgba(255,255,255,0.08);
border-radius: 12px;
}
.race-grid {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: 14px;
position: relative;
z-index: 2;
}
.race-col {
display: flex;
flex-direction: column;
align-items: center;
}
/* Checkpoint flag markers */
.race-flag {
width: 38px;
height: 38px;
border-radius: 50%;
background: var(--bg-deep);
border: 3px solid var(--border);
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 18px;
position: relative;
z-index: 3;
transition: all 0.3s;
font-size: 1rem;
}
.race-col:first-child .race-flag {
border-color: var(--accent);
box-shadow: 0 0 16px var(--accent-glow);
}
.race-col:hover .race-flag {
border-color: var(--accent);
box-shadow: 0 0 16px var(--accent-glow);
transform: scale(1.1);
}
.race-period {
font-family: var(--font-mono);
font-size: 0.75rem;
color: var(--text-muted);
text-align: center;
margin-bottom: 8px;
font-weight: 600;
letter-spacing: 0.08em;
}
.race-card {
background: var(--bg-surface);
border: 1px solid var(--border);
border-radius: var(--radius);
padding: 20px 18px;
width: 100%;
flex: 1;
transition: all 0.3s;
}
.race-col:hover .race-card {
border-color: var(--accent);
}
.race-card h4 {
font-family: var(--font-display);
font-size: 1.05rem;
font-weight: 700;
margin-bottom: 10px;
}
.race-card .race-items {
list-style: none;
display: flex;
flex-direction: column;
gap: 8px;
}
.race-card .race-items li {
font-size: 0.88rem;
color: var(--text-secondary);
display: flex;
align-items: flex-start;
gap: 8px;
line-height: 1.4;
}
.race-card .race-items li .rb {
flex-shrink: 0;
margin-top: 2px;
font-size: 0.75rem;
}
.race-card .race-kpi {
margin-top: 12px;
padding-top: 10px;
border-top: 1px solid var(--border);
font-family: var(--font-mono);
font-size: 0.78rem;
font-weight: 700;
display: flex;
align-items: center;
gap: 6px;
}
.race-kpi-icon { width: 18px; height: 11px; }
/* Checkered finish line on last column */
.race-col:last-child .race-flag {
background: repeating-conic-gradient(#fff 0% 25%, #222 0% 50%) 50% / 10px 10px;
border-color: var(--red);
}
@media (max-width: 768px) {
.race-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
.race-road { display: none; }
.race-flag { width: 32px; height: 32px; font-size: 0.85rem; }
}
/* ── Competitive Matrix ── */
.comp-matrix {
width: 100%;
border-collapse: separate;
border-spacing: 0;
margin-top: 28px;
font-size: 0.82rem;
}
.comp-matrix th, .comp-matrix td {
padding: 11px 14px;
text-align: center;
border-bottom: 1px solid var(--border);
}
.comp-matrix thead th {
font-family: var(--font-mono);
font-size: 0.72rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.06em;
color: var(--text-secondary);
padding-bottom: 14px;
position: sticky;
top: 0;
background: var(--bg-deep);
}
/* Nexus column highlight */
.comp-matrix .col-nexus {
background: rgba(255, 107, 53, 0.04);
}
.comp-matrix thead .col-nexus {
color: var(--accent);
font-size: 0.82rem;
background: rgba(255, 107, 53, 0.06);
}
.comp-matrix tbody td:first-child {
text-align: left;
font-weight: 600;
color: var(--text-primary);
font-size: 0.85rem;
}
.comp-matrix tbody tr:hover {
background: rgba(255, 255, 255, 0.02);
}
.comp-matrix .cm-yes { color: var(--green); font-weight: 700; font-size: 1rem; }
.comp-matrix .cm-no { color: var(--red); opacity: 0.5; font-size: 0.9rem; }
.comp-matrix .cm-partial { color: var(--yellow); font-size: 0.9rem; }
.comp-matrix .cm-nexus-yes { color: var(--accent); font-weight: 700; font-size: 1.1rem; }
.comp-matrix .comp-badge {
display: block;
font-size: 0.58rem;
color: var(--text-muted);
margin-top: 2px;
font-weight: 400;
letter-spacing: 0;
text-transform: none;
}
@media (max-width: 768px) {
.comp-matrix { font-size: 0.7rem; }
.comp-matrix th, .comp-matrix td { padding: 8px 6px; }
}
/* ── Slide 1: Cover Automotive ── */
.cover-hero {
display: flex;
align-items: center;
gap: 48px;
margin-top: 12px;
}
.cover-content { flex: 1; }
.cover-gauge {
flex-shrink: 0;
position: relative;
}
.cover-logo-wheel {
width: 80px;
height: 80px;
border-radius: 50%;
border: 3px solid var(--accent);
display: flex;
align-items: center;
justify-content: center;
font-family: var(--font-display);
font-size: 2rem;
font-weight: 900;
color: white;
margin-bottom: 28px;
position: relative;
background: linear-gradient(135deg, var(--accent), #E85D26);
box-shadow: 0 0 40px var(--accent-glow), 0 0 80px rgba(255, 107, 53, 0.1);
}
/* Wheel spokes effect */
.cover-logo-wheel::before {
content: '';
position: absolute;
inset: -8px;
border-radius: 50%;
border: 2px solid rgba(255, 107, 53, 0.2);
}
.cover-logo-wheel::after {
content: '';
position: absolute;
inset: -16px;
border-radius: 50%;
border: 1px solid rgba(255, 107, 53, 0.1);
}
.cover-stats-dashboard {
display: flex;
gap: 12px;
margin-top: 32px;
}
.cover-stat-item {
background: var(--bg-surface);
border: 1px solid var(--border);
border-radius: 10px;
padding: 14px 20px;
text-align: center;
transition: border-color 0.3s;
}
.cover-stat-item:hover { border-color: var(--accent); }
.cover-stat-item .csv {
font-family: var(--font-mono);
font-size: 1.1rem;
font-weight: 800;
color: var(--accent);
line-height: 1.2;
}
.cover-stat-item .csl {
font-size: 0.72rem;
color: var(--text-muted);
margin-top: 4px;
}
/* Cover road */
.cover-road {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 48px;
background: #0a0a12;
border-top: 2px solid #1a1a24;
z-index: 1;
overflow: hidden;
}
.cover-road::before {
content: '';
position: absolute;
top: 50%;
left: 0;
right: 0;
height: 2px;
background: repeating-linear-gradient(90deg, #F0B429 0px, #F0B429 24px, transparent 24px, transparent 44px);
opacity: 0.5;
transform: translateY(-50%);
}
.cover-road::after {
content: '';
position: absolute;
top: 4px;
left: 0;
right: 0;
bottom: 4px;
border-top: 1px solid rgba(255,255,255,0.04);
border-bottom: 1px solid rgba(255,255,255,0.04);
}
/* ── Slide 11: Contact Automotive ── */
.contact-finish {
position: absolute;
top: 0;
left: 0;
right: 0;
height: 6px;
background: repeating-linear-gradient(
90deg,
#ffffff 0px, #ffffff 12px,
#222 12px, #222 24px
);
opacity: 0.15;
}
.contact-cta {
display: inline-flex;
align-items: center;
gap: 14px;
margin-top: 32px;
padding: 18px 36px;
background: linear-gradient(135deg, var(--accent), #E85D26);
border: none;
border-radius: 12px;
font-family: var(--font-display);
font-size: 1.1rem;
font-weight: 700;
color: white;
cursor: pointer;
transition: all 0.3s;
text-decoration: none;
box-shadow: 0 8px 32px var(--accent-glow);
}
.contact-cta:hover {
transform: translateY(-2px);
box-shadow: 0 12px 40px rgba(255, 107, 53, 0.3);
}
.contact-road {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 48px;
background: #0a0a12;
border-top: 2px solid #1a1a24;
overflow: hidden;
}
.contact-road::before {
content: '';
position: absolute;
top: 50%;
left: 0;
right: 0;
height: 2px;
background: repeating-linear-gradient(90deg, #F0B429 0px, #F0B429 24px, transparent 24px, transparent 44px);
opacity: 0.5;
transform: translateY(-50%);
}
@media (max-width: 768px) {
.cover-hero { flex-direction: column; }
.cover-stats-dashboard { flex-wrap: wrap; }
}
/* ── Slide Sources / Footnotes ── */
.slide-sources {
position: absolute;
bottom: 18px;
left: 48px;
right: 48px;
font-family: var(--font-mono);
font-size: 0.605rem;
color: var(--text-muted);
line-height: 1.6;
z-index: 3;
opacity: 0.7;
border-top: 1px solid var(--border);
padding-top: 8px;
}
.slide-sources a {
color: var(--text-muted);
text-decoration: none;
transition: color 0.2s;
}
.slide-sources a:hover {
color: var(--cyan);
text-decoration: underline;
}
.slide-sources span.src-sep {
margin: 0 6px;
opacity: 0.4;
}
/* ── Responsive ── */
@media (max-width: 768px) {
.slide { padding: 40px 20px; }
.slide-sources { left: 20px; right: 20px; font-size: 0.55rem; bottom: 10px; }
.market-stats-bar { grid-template-columns: 1fr; }
.flow { grid-template-columns: 1fr; gap: 6px; }
.flow-arrow { transform: rotate(90deg); }
.pricing-row, .features-grid, .comp-layout { grid-template-columns: 1fr; }
.funds-layout { flex-direction: column; }
.nav-dots { display: none; }
.traction-grid, .stats-grid { grid-template-columns: 1fr 1fr; }
.ask-grid { grid-template-columns: 1fr 1fr; }
.team-grid { grid-template-columns: 1fr; }
.phases-grid { grid-template-columns: 1fr 1fr; }
.code-block { font-size: 0.72rem; padding: 14px 16px; }
}
/* ── Print ── */
@media print {
html { scroll-snap-type: none; }
.slide { min-height: auto; page-break-after: always; page-break-inside: avoid; padding: 40px; scroll-snap-align: none; }
.nav { display: none !important; }
body { background: white; color: #111; }
body::before, body::after { display: none; }
.glow { display: none; }
.title, .stat-value, .traction-value, .ask-card .ask-value, .pricing-card .price, .fund-amount, .proj-table .arr {
color: #d44a00 !important; -webkit-text-fill-color: #d44a00 !important;
}
.title .hl { -webkit-text-fill-color: #d44a00 !important; }
.subtitle, .problem-card .p-text, .feature-item p, .market-detail p, .team-card p, .contact-item,
.stat-label, .traction-label, .fund-detail, .proj-table td, .pricing-card .price-note, .ask-card .ask-label,
.tag, .cover-tagline, .cover-round { color: #444 !important; }
.card, .ask-bottom { background: #f8f8f8 !important; border-color: #ddd !important; }
.cover-logo { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
.reveal { opacity: 1 !important; transform: none !important; }
.slide-sources { position: relative; bottom: auto; left: auto; right: auto; margin-top: 20px; color: #666 !important; border-color: #ccc !important; }
.slide-sources a { color: #666 !important; }
}
</style>
</head>
<body>
<!-- ═══════════ SLIDE 1: COVER ═══════════ -->
<section class="slide" id="slide-1">
<div class="glow glow--orange" style="top:-200px;right:-100px;"></div>
<div class="glow glow--cyan" style="bottom:-150px;left:-80px;"></div>
<div class="cover-road"></div>
<div class="slide-inner">
<div class="cover-hero">
<div class="cover-content">
<div class="cover-logo-wheel reveal">N</div>
<div class="cover-title reveal reveal-d1">NEXUS <span class="hl">AUTOPARTS</span></div>
<div class="cover-tagline reveal reveal-d2">Tu conexión directa con las partes que necesitas</div>
<div class="cover-round reveal reveal-d3">Friends & Family — Marzo 2026</div>
<div class="cover-stats-dashboard reveal reveal-d4">
<div class="cover-stat-item">
<div class="csv">$30B</div>
<div class="csl">Mercado MX</div>
</div>
<div class="cover-stat-item">
<div class="csv">261K+</div>
<div class="csl">Talleres</div>
</div>
<div class="cover-stat-item">
<div class="csv">57K+</div>
<div class="csl">Refaccionarias</div>
</div>
<div class="cover-stat-item">
<div class="csv">0%</div>
<div class="csl">Digitalizado</div>
</div>
</div>
</div>
<!-- Auto parts icons grid -->
<div class="reveal reveal-d3" style="display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:300px;">
<div style="background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;padding:20px;text-align:center;transition:all 0.3s;" onmouseover="this.style.borderColor='var(--accent)'" onmouseout="this.style.borderColor='var(--border)'">
<svg width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="var(--accent)" stroke-width="1.5" stroke-linecap="round" opacity="0.7"><rect x="4" y="6" width="16" height="12" rx="2"/><line x1="7" y1="6" x2="7" y2="3"/><line x1="17" y1="6" x2="17" y2="3"/><line x1="1" y1="10" x2="4" y2="10"/><line x1="20" y1="10" x2="23" y2="10"/><path d="M9 12h6M12 9v6"/></svg>
<div style="font-size:0.6rem;color:var(--text-muted);margin-top:6px;">Baterías</div>
</div>
<div style="background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;padding:20px;text-align:center;transition:all 0.3s;" onmouseover="this.style.borderColor='var(--cyan)'" onmouseout="this.style.borderColor='var(--border)'">
<svg width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="var(--cyan)" stroke-width="1.5" stroke-linecap="round" opacity="0.7"><circle cx="12" cy="12" r="10"/><circle cx="12" cy="12" r="4"/><circle cx="12" cy="12" r="1"/><line x1="12" y1="2" x2="12" y2="6"/><line x1="12" y1="18" x2="12" y2="22"/><line x1="2" y1="12" x2="6" y2="12"/><line x1="18" y1="12" x2="22" y2="12"/></svg>
<div style="font-size:0.6rem;color:var(--text-muted);margin-top:6px;">Llantas</div>
</div>
<div style="background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;padding:20px;text-align:center;transition:all 0.3s;" onmouseover="this.style.borderColor='var(--green)'" onmouseout="this.style.borderColor='var(--border)'">
<svg width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="var(--green)" stroke-width="1.5" stroke-linecap="round" opacity="0.7"><rect x="8" y="2" width="8" height="14" rx="3"/><line x1="12" y1="16" x2="12" y2="22"/><circle cx="12" cy="22" r="0" fill="var(--green)"/><line x1="9" y1="19" x2="15" y2="19"/></svg>
<div style="font-size:0.6rem;color:var(--text-muted);margin-top:6px;">Pistones</div>
</div>
<div style="background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;padding:20px;text-align:center;transition:all 0.3s;" onmouseover="this.style.borderColor='var(--yellow)'" onmouseout="this.style.borderColor='var(--border)'">
<svg width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="var(--yellow)" stroke-width="1.5" stroke-linecap="round" opacity="0.7"><path d="M12 2v4M12 18v4"/><path d="M9 6h6l-1 6h-4L9 6z"/><circle cx="12" cy="15" r="2"/><line x1="10" y1="18" x2="14" y2="18"/></svg>
<div style="font-size:0.6rem;color:var(--text-muted);margin-top:6px;">Bujías</div>
</div>
<div style="background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;padding:20px;text-align:center;transition:all 0.3s;" onmouseover="this.style.borderColor='var(--purple)'" onmouseout="this.style.borderColor='var(--border)'">
<svg width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="var(--purple)" stroke-width="1.5" stroke-linecap="round" opacity="0.7"><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="4"/><path d="M12 3v2M12 19v2M3 12h2M19 12h2"/></svg>
<div style="font-size:0.6rem;color:var(--text-muted);margin-top:6px;">Filtros</div>
</div>
<div style="background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;padding:20px;text-align:center;transition:all 0.3s;" onmouseover="this.style.borderColor='var(--red)'" onmouseout="this.style.borderColor='var(--border)'">
<svg width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="var(--red)" stroke-width="1.5" stroke-linecap="round" opacity="0.7"><path d="M2 12h1l2-6h14l2 6h1"/><path d="M5 12v5a1 1 0 001 1h2a1 1 0 001-1v-1h6v1a1 1 0 001 1h2a1 1 0 001-1v-5"/><circle cx="7.5" cy="12" r="1"/><circle cx="16.5" cy="12" r="1"/></svg>
<div style="font-size:0.6rem;color:var(--text-muted);margin-top:6px;">Frenos</div>
</div>
</div>
</div>
</div>
</section>
<!-- ═══════════ SLIDE 2: EL PROBLEMA ═══════════ -->
<section class="slide" id="slide-2">
<div class="glow glow--orange" style="bottom:-250px;left:-200px;"></div>
<div class="slide-inner">
<div class="tag reveal">El Problema</div>
<div class="title reveal reveal-d1">Un mercado de <span class="hl">$30B USD</span> sin digitalizar</div>
<div class="subtitle reveal reveal-d2">El aftermarket en México está fragmentado y opera de forma analógica. En EE.UU., el e-commerce del sector ya crece 4.6% anual — la digitalización es inevitable, y México aún no empieza.</div>
<div class="problem-stack">
<div class="card problem-card reveal reveal-d2">
<div class="p-icon">!</div>
<div class="p-text"><strong>261,000+ talleres</strong> en México dependen de llamadas telefónicas para cotizar piezas con múltiples distribuidores.</div>
</div>
<div class="card problem-card reveal reveal-d3">
<div class="p-icon">×</div>
<div class="p-text"><strong>57,000+ refaccionarias</strong> sin canal digital para mostrar inventario a talleres cercanos.</div>
</div>
<div class="card problem-card reveal reveal-d4">
<div class="p-icon">?</div>
<div class="p-text"><strong>Sin catálogo centralizado en México</strong> que conecte partes OEM con alternativas aftermarket mediante cross-references.</div>
</div>
<div class="card problem-card reveal reveal-d5">
<div class="p-icon"></div>
<div class="p-text"><strong>61M+ vehículos</strong> registrados en México con una edad promedio de 1214 años — la demanda de refacciones crece, las herramientas no.</div>
</div>
</div>
</div>
<div class="slide-sources">
Fuentes: <a href="https://www.autocare.org/news/latest-news/details/2025/06/12/u.s.-light-vehicle-automotive-aftermarket-projected-to-reach-$435-billion-in-2025" target="_blank">Auto Care Association + S&P Global, 2025</a>
<span class="src-sep">|</span> <a href="https://www.elfinanciero.com.mx/empresas/2024/07/02/mercado-de-refacciones-superaran-los-30-mil-mdd/" target="_blank">El Financiero / INA, 2024</a>
<span class="src-sep">|</span> <a href="https://www.economia.gob.mx/datamexico/es/profile/industry/automotive-repair-and-maintenance" target="_blank">INEGI DENUE 2025</a>
<span class="src-sep">|</span> <a href="https://www.inegi.org.mx/temas/vehiculos/" target="_blank">INEGI VMRC 2024</a>
<span class="src-sep">|</span> <a href="https://www150.statcan.gc.ca/n1/daily-quotidien/251017/dq251017c-eng.htm" target="_blank">Statistics Canada 2024</a>
</div>
</section>
<!-- ═══════════ SLIDE 3: LA SOLUCIÓN ═══════════ -->
<section class="slide" id="slide-3">
<div class="glow glow--cyan" style="top:-200px;right:-200px;"></div>
<div class="glow glow--orange" style="bottom:-200px;left:-150px;"></div>
<div class="slide-inner">
<div class="tag reveal">La Solución</div>
<div class="title reveal reveal-d1">La capa digital entre <span class="hl">talleres</span> y <span class="hl">bodegas</span></div>
<div class="subtitle reveal reveal-d2">Nexus es el marketplace B2B que digitaliza la compra de refacciones en México. Quien construya el catálogo y la red primero, captura el mercado.</div>
<!-- Before / After with Gauge -->
<div class="ba-grid reveal reveal-d3">
<!-- BEFORE -->
<div class="ba-panel ba-panel--before">
<div class="ba-label" style="color:var(--red);">
<span class="ba-dot" style="background:var(--red);"></span> Sin Nexus
</div>
<div style="font-family:var(--font-mono);font-size:0.82rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:0.1em;font-weight:700;margin-bottom:10px;">🔧 Taller mecánico</div>
<ul class="ba-list">
<li><span class="ba-icon"></span> Llama a +5 distribuidores por pieza</li>
<li><span class="ba-icon"></span> No sabe si la pieza es compatible</li>
</ul>
<div style="font-family:var(--font-mono);font-size:0.82rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:0.1em;font-weight:700;margin:20px 0 10px;">🏢 Bodega / Refaccionaria</div>
<ul class="ba-list">
<li><span class="ba-icon"></span> Sin canal digital para mostrar inventario</li>
<li><span class="ba-icon"></span> Pierde ventas por falta de visibilidad</li>
</ul>
<div class="ba-result" style="color:var(--red);">
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"><circle cx="10" cy="10" r="9" stroke="currentColor" stroke-width="2"/><path d="M10 5v6M10 13.5v1" stroke="currentColor" stroke-width="2" stroke-linecap="round"/></svg>
Horas por cotización
</div>
</div>
<!-- CENTER GAUGE -->
<div class="ba-center">
<svg width="140" height="90" viewBox="0 0 80 52" fill="none">
<!-- Gauge background arc -->
<path d="M8 48 A32 32 0 0 1 72 48" stroke="#30363D" stroke-width="6" stroke-linecap="round" fill="none"/>
<!-- Red zone -->
<path d="M8 48 A32 32 0 0 1 22 20" stroke="#F85149" stroke-width="6" stroke-linecap="round" fill="none" opacity="0.6"/>
<!-- Yellow zone -->
<path d="M22 20 A32 32 0 0 1 40 16" stroke="#F0B429" stroke-width="6" stroke-linecap="round" fill="none" opacity="0.5"/>
<!-- Green zone -->
<path d="M40 16 A32 32 0 0 1 72 48" stroke="#3FB950" stroke-width="6" stroke-linecap="round" fill="none" opacity="0.7"/>
<!-- Needle -->
<line class="gauge-needle" x1="40" y1="44" x2="40" y2="18" stroke="var(--accent)" stroke-width="2.5" stroke-linecap="round"/>
<!-- Center dot -->
<circle cx="40" cy="44" r="4" fill="var(--accent)"/>
</svg>
<div class="gauge-label">Velocidad</div>
</div>
<!-- AFTER -->
<div class="ba-panel ba-panel--after">
<div class="ba-label" style="color:var(--green);">
<span class="ba-dot" style="background:var(--green);"></span> Con Nexus
</div>
<div style="font-family:var(--font-mono);font-size:0.82rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:0.1em;font-weight:700;margin-bottom:10px;">🔧 Taller mecánico</div>
<ul class="ba-list">
<li><span class="ba-icon"></span> 1 búsqueda, todas las bodegas</li>
<li><span class="ba-icon"></span> Cross-references OEM ↔ aftermarket</li>
</ul>
<div style="font-family:var(--font-mono);font-size:0.82rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:0.1em;font-weight:700;margin:20px 0 10px;">🏢 Bodega / Refaccionaria</div>
<ul class="ba-list">
<li><span class="ba-icon"></span> Inventario visible para todos los talleres</li>
<li><span class="ba-icon"></span> Recibe pedidos digitales al instante</li>
</ul>
<div class="ba-result" style="color:var(--green);">
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"><circle cx="10" cy="10" r="9" stroke="currentColor" stroke-width="2"/><path d="M6 10l3 3 5-6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>
Segundos por cotización
</div>
</div>
<!-- Road line decoration -->
<div class="road-line" style="grid-column:1/-1;position:relative;"></div>
</div>
</div>
</section>
<!-- ═══════════ SLIDE 4: EL PRODUCTO ═══════════ -->
<section class="slide" id="slide-4">
<div class="glow glow--orange" style="top:-100px;left:-200px;"></div>
<div class="glow glow--cyan" style="bottom:-150px;right:-100px;"></div>
<div class="slide-inner">
<div class="tag reveal">El Producto</div>
<div class="title reveal reveal-d1">Todo lo que necesita una <span class="hl">refaccionaria</span></div>
<div style="display:grid;grid-template-columns:repeat(3,1fr);gap:14px;" class="reveal reveal-d2">
<!-- Column 1: Ventas -->
<div class="card" style="padding:20px 22px;border-left:3px solid var(--accent);">
<h4 style="font-family:var(--font-display);font-size:0.95rem;font-weight:700;color:var(--accent);margin-bottom:12px;">Ventas & POS</h4>
<ul style="list-style:none;font-size:0.85rem;color:var(--text-secondary);line-height:2;">
<li><span style="color:var(--accent);"></span> POS completo (ventas, cotizaciones, apartados, devoluciones, F-keys)</li>
<li><span style="color:var(--accent);"></span> Caja registradora multi-caja con cortes X/Z</li>
<li><span style="color:var(--accent);"></span> Clientes con credito, estados de cuenta, 3 tiers de precio</li>
<li><span style="color:var(--accent);"></span> Facturacion CFDI 4.0</li>
<li><span style="color:var(--accent);"></span> Impresion termica ESC/POS</li>
</ul>
</div>
<!-- Column 2: Catalogo & Inventario -->
<div class="card" style="padding:20px 22px;border-left:3px solid var(--cyan);">
<h4 style="font-family:var(--font-display);font-size:0.95rem;font-weight:700;color:var(--cyan);margin-bottom:12px;">Catalogo & Inventario</h4>
<ul style="list-style:none;font-size:0.85rem;color:var(--text-secondary);line-height:2;">
<li><span style="color:var(--cyan);"></span> Catalogo TecDoc 1.5M+ partes (Ano>Marca>Modelo>Motor)</li>
<li><span style="color:var(--cyan);"></span> VIN decoder + busqueda por placas mexicanas</li>
<li><span style="color:var(--cyan);"></span> Inventario append-only, toma fisica, reportes ABC</li>
<li><span style="color:var(--cyan);"></span> Contabilidad con polizas automaticas</li>
<li><span style="color:var(--cyan);"></span> Marketplace B2B</li>
</ul>
</div>
<!-- Column 3: IA & Plataforma -->
<div class="card" style="padding:20px 22px;border-left:3px solid var(--green);">
<h4 style="font-family:var(--font-display);font-size:0.95rem;font-weight:700;color:var(--green);margin-bottom:12px;">IA & Plataforma</h4>
<ul style="list-style:none;font-size:0.85rem;color:var(--text-secondary);line-height:2;">
<li><span style="color:var(--green);"></span> Chatbot IA: voz, foto, vision, diagnostico, cotizacion inteligente</li>
<li><span style="color:var(--green);"></span> WhatsApp Business integrado</li>
<li><span style="color:var(--green);"></span> Gestion de flotillas</li>
<li><span style="color:var(--green);"></span> PWA + App Android, modo kiosko</li>
<li><span style="color:var(--green);"></span> 2 temas, 2 idiomas (ES/EN), 2 monedas (MXN/USD)</li>
</ul>
</div>
</div>
<!-- Hardware included -->
<div style="text-align:center;margin-top:20px;" class="reveal reveal-d3">
<div class="card" style="display:inline-flex;align-items:center;gap:16px;padding:14px 32px;">
<span style="font-size:1.3rem;">🖥️</span>
<span style="font-size:0.95rem;color:var(--text-secondary);">Servidor incluido en <strong style="color:var(--accent);">rack 3D personalizado</strong> — Mini PC + switch + AP + UPS. El cliente renta todo el sistema listo para usar.</span>
</div>
</div>
</div>
</section>
<!-- ═══════════ SLIDE 5: TAMAÑO DE MERCADO ═══════════ -->
<section class="slide" id="slide-5">
<div class="glow glow--cyan" style="bottom:-200px;right:-150px;"></div>
<div class="slide-inner">
<div class="tag reveal">Tamaño de Mercado</div>
<div class="title reveal reveal-d1">Aftermarket Norteamérica: <span class="hl">$485B USD</span></div>
<div class="market-dashboard">
<!-- Single Tachometer with 3 equal zones -->
<div style="display:flex;align-items:center;gap:44px;" class="reveal reveal-d2">
<div style="flex-shrink:0;text-align:center;">
<svg width="340" height="210" viewBox="0 0 340 210" fill="none">
<!-- Outer ring decoration -->
<path d="M22 190 A148 148 0 0 1 318 190" stroke="#1C2333" stroke-width="4" stroke-linecap="round"/>
<!-- TAM zone: right third of arc (orange) -->
<path d="M22 190 A148 148 0 0 1 318 190" stroke="var(--accent)" stroke-width="30" stroke-linecap="round" opacity="0.2"
stroke-dasharray="465" stroke-dashoffset="0"/>
<!-- Brighter TAM section -->
<path d="M22 190 A148 148 0 0 1 318 190" stroke="var(--accent)" stroke-width="30" stroke-linecap="round" opacity="0.4"
stroke-dasharray="155 465" stroke-dashoffset="-310"/>
<!-- SAM zone: middle third (cyan) -->
<path d="M22 190 A148 148 0 0 1 318 190" stroke="var(--cyan)" stroke-width="30" stroke-linecap="round" opacity="0.55"
stroke-dasharray="155 465" stroke-dashoffset="-155"/>
<!-- SOM zone: left third (green) — where we are -->
<path d="M22 190 A148 148 0 0 1 318 190" stroke="var(--green)" stroke-width="30" stroke-linecap="round" opacity="0.75"
stroke-dasharray="155 465" stroke-dashoffset="0"/>
<!-- Zone divider ticks -->
<line x1="88" y1="52" x2="98" y2="62" stroke="var(--text-muted)" stroke-width="2" stroke-linecap="round"/>
<line x1="245" y1="52" x2="235" y2="62" stroke="var(--text-muted)" stroke-width="2" stroke-linecap="round"/>
<!-- Minor tick marks around arc -->
<line x1="30" y1="160" x2="42" y2="162" stroke="#30363D" stroke-width="1.5" stroke-linecap="round"/>
<line x1="42" y1="110" x2="54" y2="116" stroke="#30363D" stroke-width="1.5" stroke-linecap="round"/>
<line x1="130" y1="44" x2="135" y2="56" stroke="#30363D" stroke-width="1.5" stroke-linecap="round"/>
<line x1="204" y1="44" x2="199" y2="56" stroke="#30363D" stroke-width="1.5" stroke-linecap="round"/>
<line x1="289" y1="110" x2="277" y2="116" stroke="#30363D" stroke-width="1.5" stroke-linecap="round"/>
<line x1="302" y1="160" x2="290" y2="162" stroke="#30363D" stroke-width="1.5" stroke-linecap="round"/>
<!-- Zone labels on the arc -->
<text x="60" y="96" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="15" font-weight="800" fill="#E0E0E0">SOM</text>
<text x="60" y="116" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="13" fill="#E0E0E0" font-weight="700">$500M</text>
<text x="170" y="34" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="15" font-weight="800" fill="#E0E0E0">SAM</text>
<text x="170" y="54" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="13" fill="#E0E0E0" font-weight="700">$30B</text>
<text x="278" y="96" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="15" font-weight="800" fill="#E0E0E0">TAM</text>
<text x="278" y="116" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="13" fill="#E0E0E0" font-weight="700">$485B</text>
<!-- Needle pointing to SOM -->
<line x1="170" y1="185" x2="55" y2="142" stroke="var(--text-primary)" stroke-width="3" stroke-linecap="round"/>
<circle cx="170" cy="185" r="9" fill="var(--accent)"/>
<circle cx="170" cy="185" r="4" fill="var(--bg-deep)"/>
<!-- Center display -->
<text x="170" y="160" text-anchor="middle" font-family="'Sora', sans-serif" font-size="13" font-weight="700" fill="#E0E0E0">META INICIAL</text>
</svg>
</div>
<!-- Legend -->
<div style="flex:1;display:flex;flex-direction:column;gap:14px;">
<div class="card" style="padding:16px 20px;border-left:3px solid var(--green);">
<div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;">
<span style="font-family:var(--font-mono);font-size:0.95rem;color:var(--green);font-weight:700;letter-spacing:0.08em;">SOM — Objetivo Año 1-2</span>
<span style="font-family:var(--font-mono);font-size:1.6rem;font-weight:800;color:var(--green);">$500M</span>
</div>
<div style="font-size:1.02rem;color:var(--text-secondary);">6 ciudades: Tijuana, Rosarito, Tecate, Ensenada, Guadalajara, Cd. Obregon. 80-150 refaccionarias independientes solo en Tijuana.</div>
</div>
<div class="card" style="padding:16px 20px;border-left:3px solid var(--cyan);">
<div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;">
<span style="font-family:var(--font-mono);font-size:0.95rem;color:var(--cyan);font-weight:700;letter-spacing:0.08em;">SAM — Aftermarket MX</span>
<span style="font-family:var(--font-mono);font-size:1.6rem;font-weight:800;color:var(--cyan);">$30B</span>
</div>
<div style="font-size:1.02rem;color:var(--text-secondary);">Distribuidores y refaccionarias a talleres independientes</div>
</div>
<div class="card" style="padding:16px 20px;border-left:3px solid var(--accent);">
<div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;">
<span style="font-family:var(--font-mono);font-size:0.95rem;color:var(--accent);font-weight:700;letter-spacing:0.08em;">TAM — Norteamérica</span>
<span style="font-family:var(--font-mono);font-size:1.6rem;font-weight:800;color:var(--accent);">$485B</span>
</div>
<div style="font-size:1.02rem;color:var(--text-secondary);">EE.UU. ($435B) + México ($30B) + Canadá (~$20B)</div>
</div>
</div>
</div>
<!-- Road decoration -->
<div class="gauges-road"></div>
<!-- Stats bar: Vehicles & Workshops -->
<div class="market-stats-bar reveal reveal-d3">
<div class="ms-item">
<div class="ms-icon" style="background:var(--accent-subtle);border:1px solid rgba(255,107,53,0.15);">
<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="var(--accent)" stroke-width="2" stroke-linecap="round"><path d="M5 17h14M5 17a2 2 0 01-2-2V7a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2M8 17v2M16 17v2M7 12h.01M17 12h.01M9 7l3 3 3-3"/></svg>
</div>
<div>
<div class="ms-val">385M+ vehículos</div>
<div class="ms-lbl">EE.UU. (297M) + México (61M) + Canadá (27M)</div>
</div>
</div>
<div class="ms-item">
<div class="ms-icon" style="background:var(--cyan-subtle);border:1px solid rgba(0,212,255,0.15);">
<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="var(--cyan)" stroke-width="2" stroke-linecap="round"><path d="M14.7 6.3a1 1 0 000 1.4l1.6 1.6a1 1 0 001.4 0l3.77-3.77a6 6 0 01-7.94 7.94l-6.91 6.91a2.12 2.12 0 01-3-3l6.91-6.91a6 6 0 017.94-7.94l-3.76 3.76z"/></svg>
</div>
<div>
<div class="ms-val">575K+ talleres</div>
<div class="ms-lbl">EE.UU. (~290K) + MX (261K) + CA (~25K). Lanzamos en MX</div>
</div>
</div>
</div>
</div>
</div>
<div class="slide-sources">
Fuentes: <a href="https://www.autocare.org/news/latest-news/details/2025/06/12/u.s.-light-vehicle-automotive-aftermarket-projected-to-reach-$435-billion-in-2025" target="_blank">Auto Care Assoc. / MEMA / S&P Global — US $435B (2025)</a>
<span class="src-sep">|</span> <a href="https://mexicoindustry.com/noticia/el-sector-de-aftermarket-en-mexico-vale-30000mdd-lideres-automotrices-pronostican-superar-cifra-en-2024-" target="_blank">INA / Mexico Industry — MX $30B (2024)</a>
<span class="src-sep">|</span> <a href="https://www.grandviewresearch.com/horizon/outlook/automotive-aftermarket-market/canada" target="_blank">Grand View Research — CA ~$20B</a>
<span class="src-sep">|</span> <a href="https://www.ceicdata.com/en/indicator/united-states/number-of-registered-vehicles" target="_blank">FHWA — US 297M veh.</a>
<span class="src-sep">|</span> <a href="https://www.inegi.org.mx/temas/vehiculos/" target="_blank">INEGI VMRC — MX 61M veh.</a>
<span class="src-sep">|</span> <a href="https://www150.statcan.gc.ca/n1/daily-quotidien/251017/dq251017c-eng.htm" target="_blank">StatCan — CA 27M veh.</a>
</div>
</section>
<!-- ═══════════ SLIDE 6: MODELO DE NEGOCIO ═══════════ -->
<section class="slide" id="slide-6">
<div class="glow glow--orange" style="top:-200px;right:-100px;"></div>
<div class="glow glow--cyan" style="bottom:-150px;left:-100px;"></div>
<div class="slide-inner">
<div class="tag reveal">Modelo de Negocio</div>
<div class="title reveal reveal-d1">4 motores de <span class="hl">ingreso</span></div>
<div class="revenue-grid">
<!-- 1. Renta Hardware + Software -->
<div class="rev-card rev-card--orange reveal reveal-d1">
<div class="rev-num">01</div>
<div class="rev-icon" style="background:linear-gradient(135deg, rgba(255,107,53,0.12), rgba(255,107,53,0.04));">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="var(--accent)" stroke-width="2" stroke-linecap="round"><rect x="2" y="3" width="20" height="14" rx="2"/><path d="M8 21h8M12 17v4"/></svg>
</div>
<h4>Renta Hardware + Software</h4>
<div class="rev-target">$2,000 MXN/mes todo incluido</div>
<div class="rev-desc">Mini PC + switch + AP + UPS + rack 3D impreso = $200 USD por unidad. El cliente renta el servidor con el sistema instalado.</div>
<div class="rev-metric" style="color:var(--accent);">Recurrente · Predecible · ROI en 3 meses</div>
<div class="biela-end"></div>
</div>
<!-- 2. Marketplace B2B -->
<div class="rev-card rev-card--cyan reveal reveal-d2">
<div class="rev-num">02</div>
<div class="rev-icon" style="background:linear-gradient(135deg, rgba(0,212,255,0.12), rgba(0,212,255,0.04));">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="var(--cyan)" stroke-width="2" stroke-linecap="round"><path d="M12 2v20M17 5H9.5a3.5 3.5 0 000 7h5a3.5 3.5 0 010 7H6"/></svg>
</div>
<h4>Marketplace B2B</h4>
<div class="rev-target">Bodegas ↔ Talleres/Refaccionarias</div>
<div class="rev-desc">Comision por transaccion entre bodegas y talleres/refaccionarias. Crece con cada venta en la red.</div>
<div class="rev-metric" style="color:var(--cyan);">Escala con volumen</div>
<div class="biela-end"></div>
</div>
<!-- 3. Suscripciones Premium -->
<div class="rev-card rev-card--purple reveal reveal-d3">
<div class="rev-num">03</div>
<div class="rev-icon" style="background:linear-gradient(135deg, rgba(167,139,250,0.12), rgba(167,139,250,0.04));">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="var(--purple)" stroke-width="2" stroke-linecap="round"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/></svg>
</div>
<h4>Suscripciones Premium</h4>
<div class="rev-target">Planes escalables</div>
<div class="rev-desc">Basico $999/mes, Pro $1,999/mes, Enterprise $3,999/mes. Mas features, mas usuarios, mas sucursales.</div>
<div class="rev-metric" style="color:var(--purple);">Upsell natural · Alta retencion</div>
<div class="biela-end"></div>
</div>
<!-- 4. Servicios -->
<div class="rev-card rev-card--green reveal reveal-d4">
<div class="rev-num">04</div>
<div class="rev-icon" style="background:linear-gradient(135deg, rgba(63,185,80,0.12), rgba(63,185,80,0.04));">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="var(--green)" stroke-width="2" stroke-linecap="round"><path d="M14.7 6.3a1 1 0 000 1.4l1.6 1.6a1 1 0 001.4 0l3.77-3.77a6 6 0 01-7.94 7.94l-6.91 6.91a2.12 2.12 0 01-3-3l6.91-6.91a6 6 0 017.94-7.94l-3.76 3.76z"/></svg>
</div>
<h4>Servicios</h4>
<div class="rev-target">Instalacion + Migracion + Soporte</div>
<div class="rev-desc">Instalacion en sitio, migracion desde SICAR y otros sistemas, soporte tecnico dedicado.</div>
<div class="rev-metric" style="color:var(--green);">Revenue inmediato · Fideliza</div>
<div class="biela-end"></div>
</div>
</div>
</div>
</section>
<!-- ═══════════ SLIDE 7: COMPETENCIA ═══════════ -->
<section class="slide" id="slide-7">
<div class="glow glow--cyan" style="bottom:-200px;left:-100px;"></div>
<div class="slide-inner">
<div class="tag reveal">Panorama Competitivo</div>
<div class="title reveal reveal-d1">Nexus vs. el <span class="hl">mercado</span></div>
<table class="comp-matrix reveal reveal-d2">
<thead>
<tr>
<th style="text-align:left;">Feature</th>
<th class="col-nexus">Nexus</th>
<th>Pitz</th>
<th>Meru</th>
<th>Jetz</th>
<th>POS Trad.</th>
</tr>
</thead>
<tbody>
<tr>
<td>Punto de venta</td>
<td class="col-nexus"><span class="cm-nexus-yes"></span></td>
<td><span class="cm-yes"></span></td>
<td><span class="cm-no"></span></td>
<td><span class="cm-no"></span></td>
<td><span class="cm-yes"></span></td>
</tr>
<tr>
<td>Inventario</td>
<td class="col-nexus"><span class="cm-nexus-yes"></span></td>
<td><span class="cm-partial">~</span></td>
<td><span class="cm-partial">~</span></td>
<td><span class="cm-no"></span></td>
<td><span class="cm-yes"></span></td>
</tr>
<tr>
<td>Facturación CFDI</td>
<td class="col-nexus"><span class="cm-nexus-yes"></span></td>
<td><span class="cm-no"></span></td>
<td><span class="cm-no"></span></td>
<td><span class="cm-no"></span></td>
<td><span class="cm-yes"></span></td>
</tr>
<tr>
<td>Catálogo cross-references</td>
<td class="col-nexus"><span class="cm-nexus-yes"></span></td>
<td><span class="cm-no"></span></td>
<td><span class="cm-no"></span></td>
<td><span class="cm-partial">~</span></td>
<td><span class="cm-no"></span></td>
</tr>
<tr>
<td>Marketplace B2B</td>
<td class="col-nexus"><span class="cm-nexus-yes"></span></td>
<td><span class="cm-yes"></span></td>
<td><span class="cm-yes"></span></td>
<td><span class="cm-yes"></span></td>
<td><span class="cm-no"></span></td>
</tr>
<tr>
<td>Multi-bodega tiempo real</td>
<td class="col-nexus"><span class="cm-nexus-yes"></span></td>
<td><span class="cm-no"></span></td>
<td><span class="cm-partial">~</span></td>
<td><span class="cm-partial">~</span></td>
<td><span class="cm-no"></span></td>
</tr>
<tr>
<td>IA / WhatsApp</td>
<td class="col-nexus"><span class="cm-nexus-yes"></span></td>
<td><span class="cm-yes"></span></td>
<td><span class="cm-no"></span></td>
<td><span class="cm-yes"></span></td>
<td><span class="cm-no"></span></td>
</tr>
</tbody>
</table>
<div style="margin-top:20px;text-align:center;" class="reveal reveal-d3">
<div class="card" style="display:inline-block;padding:14px 32px;">
<span style="font-size:0.95rem;color:var(--text-secondary);">Nexus es el único que combina <strong style="color:var(--accent);">POS + Inventario + CFDI + Marketplace + Catálogo</strong> en una sola plataforma</span>
</div>
</div>
</div>
<div class="slide-sources">
Fuentes: <a href="https://clusterindustrial.com.mx/pitz-lanza-su-marketplace-inteligente-y-apuesta-por-la-digitalizacion-estructural-de-los-talleres-mecanicos-en-mexico/" target="_blank">Cluster Industrial — Pitz, 2026</a>
<span class="src-sep">|</span> <a href="https://www.ycombinator.com/companies/meru-com" target="_blank">Y Combinator — Meru</a>
<span class="src-sep">|</span> <a href="https://emprendedor.com/jetz-app-la-startup-de-refacciones-que-quiere-abastecer-a-los-240000-talleres-mecanicos-del-pais/" target="_blank">Emprendedor — Jetz App</a>
<span class="src-sep">|</span> <a href="https://www.sicar.mx/sistema-de-refaccionarias-punto-de-venta/" target="_blank">SICAR — POS Refaccionarias</a>
</div>
</section>
<!-- ═══════════ SLIDE 8: ROADMAP ═══════════ -->
<section class="slide" id="slide-8">
<div class="glow glow--cyan" style="top:-100px;left:-200px;"></div>
<div class="glow glow--orange" style="bottom:-150px;right:-100px;"></div>
<div class="slide-inner">
<div class="tag reveal">Roadmap</div>
<div class="title reveal reveal-d1">12 meses hacia la <span class="hl">escala</span></div>
<div class="racetrack reveal reveal-d2">
<div class="race-road"></div>
<div class="race-grid">
<!-- Mes 1: MVP + Pilotos -->
<div class="race-col">
<div class="race-flag">🏁</div>
<div class="race-period">Mes 1</div>
<div class="race-card" style="border-color:var(--accent);">
<h4 style="color:var(--accent);">MVP + 5 pilotos Tijuana</h4>
<ul class="race-items">
<li><span class="rb" style="color:var(--accent);"></span> POS completo</li>
<li><span class="rb" style="color:var(--accent);"></span> Inventario</li>
<li><span class="rb" style="color:var(--accent);"></span> Facturacion CFDI 4.0</li>
<li><span class="rb" style="color:var(--accent);"></span> 3 meses gratis para pilotos</li>
</ul>
<div class="race-kpi" style="color:var(--accent);">
<svg class="race-kpi-icon" viewBox="0 0 18 11" fill="none"><path d="M2 10 A7 7 0 0 1 16 10" stroke="currentColor" stroke-width="2" stroke-linecap="round"/><line x1="9" y1="9" x2="5" y2="5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/><circle cx="9" cy="9" r="1.5" fill="currentColor"/></svg>
5 clientes piloto en TJ
</div>
</div>
</div>
<!-- Mes 3: Expansion BC + GDL -->
<div class="race-col">
<div class="race-flag">📍</div>
<div class="race-period">Mes 3</div>
<div class="race-card">
<h4 style="color:var(--cyan);">Expansion BC + GDL</h4>
<ul class="race-items">
<li><span class="rb" style="color:var(--cyan);"></span> Rosarito, Tecate, Ensenada</li>
<li><span class="rb" style="color:var(--cyan);"></span> 2 vendedores Guadalajara</li>
<li><span class="rb" style="color:var(--cyan);"></span> 1 vendedor Cd. Obregon</li>
<li><span class="rb" style="color:var(--cyan);"></span> Comisiones $500/cliente</li>
</ul>
<div class="race-kpi" style="color:var(--cyan);">
<svg class="race-kpi-icon" viewBox="0 0 18 11" fill="none"><path d="M2 10 A7 7 0 0 1 16 10" stroke="currentColor" stroke-width="2" stroke-linecap="round"/><line x1="9" y1="9" x2="7" y2="4" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/><circle cx="9" cy="9" r="1.5" fill="currentColor"/></svg>
6 ciudades activas
</div>
</div>
</div>
<!-- Mes 6: 50 clientes + Marketplace -->
<div class="race-col">
<div class="race-flag"></div>
<div class="race-period">Mes 6</div>
<div class="race-card">
<h4 style="color:var(--green);">50 clientes + Marketplace</h4>
<ul class="race-items">
<li><span class="rb" style="color:var(--green);"></span> Catalogo TecDoc activo</li>
<li><span class="rb" style="color:var(--green);"></span> Red de bodegas conectada</li>
<li><span class="rb" style="color:var(--green);"></span> $100K MXN/mes recurrente</li>
</ul>
<div class="race-kpi" style="color:var(--green);">
<svg class="race-kpi-icon" viewBox="0 0 18 11" fill="none"><path d="M2 10 A7 7 0 0 1 16 10" stroke="currentColor" stroke-width="2" stroke-linecap="round"/><line x1="9" y1="9" x2="11" y2="4" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/><circle cx="9" cy="9" r="1.5" fill="currentColor"/></svg>
50 clientes · Marketplace live
</div>
</div>
</div>
<!-- Mes 9-12: Alianza + Escala -->
<div class="race-col">
<div class="race-flag">🚀</div>
<div class="race-period">Mes 9-12</div>
<div class="race-card">
<h4 style="color:var(--purple);">Alianza nacional + Escala</h4>
<ul class="race-items">
<li><span class="rb" style="color:var(--purple);"></span> Convenio refaccionaria grande</li>
<li><span class="rb" style="color:var(--purple);"></span> Pre-Seed round</li>
<li><span class="rb" style="color:var(--purple);"></span> 150 clientes</li>
<li><span class="rb" style="color:var(--purple);"></span> Marketplace activo, 2da ronda</li>
</ul>
<div class="race-kpi" style="color:var(--purple);">
<svg class="race-kpi-icon" viewBox="0 0 18 11" fill="none"><path d="M2 10 A7 7 0 0 1 16 10" stroke="currentColor" stroke-width="2" stroke-linecap="round"/><line x1="9" y1="9" x2="13" y2="5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/><circle cx="9" cy="9" r="1.5" fill="currentColor"/></svg>
150 clientes · Segunda ronda
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- ═══════════ SLIDE 9: EQUIPO ═══════════ -->
<section class="slide" id="slide-9">
<div class="glow glow--orange" style="bottom:-200px;right:-150px;"></div>
<div class="slide-inner">
<div class="tag reveal">El Equipo</div>
<div class="title reveal reveal-d1">Quiénes están <span class="hl">detrás</span></div>
<div class="team-grid reveal reveal-d2">
<div class="card team-card card--glow">
<div class="team-avatar">IA</div>
<h3>Iván Alcaraz</h3>
<div class="role">Founder & CEO · Producto & Tech</div>
<p style="text-align:left;">
<span style="display:flex;align-items:flex-start;gap:8px;margin-bottom:6px;"><span style="color:var(--accent);flex-shrink:0;"></span> Ing. en Sistemas Computacionales</span>
<span style="display:flex;align-items:flex-start;gap:8px;margin-bottom:6px;"><span style="color:var(--accent);flex-shrink:0;"></span> 2 años en el equipo de IA de AWS</span>
<span style="display:flex;align-items:flex-start;gap:8px;margin-bottom:6px;"><span style="color:var(--accent);flex-shrink:0;"></span> +5 años desarrollando sistemas administrativos</span>
<span style="display:flex;align-items:flex-start;gap:8px;"><span style="color:var(--accent);flex-shrink:0;"></span> 2 años construyendo herramientas para refaccionarias</span>
</p>
</div>
<div class="card team-card card--glow">
<div class="team-avatar">CT</div>
<h3>Carlos Torres</h3>
<div class="role">Co-Founder & CFO · Ventas & Finanzas</div>
<p style="text-align:left;">
<span style="display:flex;align-items:flex-start;gap:8px;margin-bottom:6px;"><span style="color:var(--cyan);flex-shrink:0;"></span> Lic. Finanzas — Tec de Monterrey</span>
<span style="display:flex;align-items:flex-start;gap:8px;margin-bottom:6px;"><span style="color:var(--cyan);flex-shrink:0;"></span> Lic. Administración — Montpellier Business School</span>
<span style="display:flex;align-items:flex-start;gap:8px;margin-bottom:6px;"><span style="color:var(--cyan);flex-shrink:0;"></span> 4 años en ventas B2B · +$500K MXN cerrados</span>
<span style="display:flex;align-items:flex-start;gap:8px;"><span style="color:var(--cyan);flex-shrink:0;"></span> Experiencia directa con startups</span>
</p>
</div>
</div>
<div style="margin-top:24px;text-align:center;" class="reveal reveal-d3">
<div class="card" style="display:inline-flex;align-items:center;gap:24px;padding:16px 36px;">
<div style="text-align:center;">
<div style="font-family:var(--font-mono);font-size:0.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:4px;">Ubicaciones</div>
<div style="font-family:var(--font-display);font-size:1rem;font-weight:700;">Tijuana & Guadalajara</div>
</div>
<div style="width:1px;height:30px;background:var(--border);"></div>
<div style="text-align:center;">
<div style="font-family:var(--font-mono);font-size:0.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:4px;">Equipo combinado</div>
<div style="font-family:var(--font-display);font-size:1rem;font-weight:700;">Tech + Ventas B2B + Industria</div>
</div>
</div>
</div>
<div style="margin-top:14px;text-align:center;" class="reveal reveal-d4">
<div class="card" style="display:inline-flex;align-items:center;gap:24px;padding:14px 32px;">
<div style="text-align:center;">
<div style="font-family:var(--font-mono);font-size:0.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:4px;">Mes 2-3: Fuerza de ventas</div>
<div style="font-family:var(--font-display);font-size:0.95rem;font-weight:700;color:var(--cyan);">5 vendedores (2 TJ, 2 GDL, 1 Obregon)</div>
</div>
<div style="width:1px;height:30px;background:var(--border);"></div>
<div style="text-align:center;">
<div style="font-family:var(--font-mono);font-size:0.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:4px;">Desarrollo</div>
<div style="font-family:var(--font-display);font-size:0.95rem;font-weight:700;color:var(--accent);">1 programador dedicado</div>
</div>
</div>
</div>
</div>
</section>
<!-- ═══════════ SLIDE 10: USO DE FONDOS ═══════════ -->
<section class="slide" id="slide-10">
<div class="glow glow--cyan" style="top:-200px;left:-100px;"></div>
<div class="slide-inner">
<div class="tag reveal">Uso de Fondos</div>
<div class="title reveal reveal-d1">El combustible: <span class="hl">$30K USD</span></div>
<div style="display:flex;align-items:center;gap:44px;" class="reveal reveal-d2">
<!-- Fuel Gauge SVG -->
<div style="flex-shrink:0;text-align:center;position:relative;">
<div style="position:absolute;bottom:55px;left:50%;transform:translateX(-50%);font-size:40px;z-index:3;"></div>
<svg width="340" height="220" viewBox="0 0 340 220" fill="none">
<!-- Outer ring -->
<path d="M22 195 A148 148 0 0 1 318 195" stroke="#ffffff" stroke-width="4" stroke-linecap="round" opacity="0.15"/>
<!-- Background arc -->
<path d="M22 195 A148 148 0 0 1 318 195" stroke="#ffffff" stroke-width="30" stroke-linecap="round" opacity="0.08"/>
<!-- Minor ticks (white) -->
<line x1="30" y1="165" x2="42" y2="167" stroke="#ffffff" stroke-width="1.5" stroke-linecap="round" opacity="0.4"/>
<line x1="42" y1="115" x2="54" y2="121" stroke="#ffffff" stroke-width="1.5" stroke-linecap="round" opacity="0.4"/>
<line x1="130" y1="48" x2="135" y2="60" stroke="#ffffff" stroke-width="1.5" stroke-linecap="round" opacity="0.4"/>
<line x1="210" y1="48" x2="205" y2="60" stroke="#ffffff" stroke-width="1.5" stroke-linecap="round" opacity="0.4"/>
<line x1="295" y1="115" x2="283" y2="121" stroke="#ffffff" stroke-width="1.5" stroke-linecap="round" opacity="0.4"/>
<line x1="305" y1="165" x2="293" y2="167" stroke="#ffffff" stroke-width="1.5" stroke-linecap="round" opacity="0.4"/>
<!-- Zone labels -->
<text x="58" y="103" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="14" font-weight="800" fill="#E0E0E0">$7K</text>
<text x="58" y="120" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="9" fill="var(--accent)" opacity="0.8">DEV</text>
<text x="140" y="48" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="14" font-weight="800" fill="#E0E0E0">$8K</text>
<text x="140" y="65" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="9" fill="var(--green)" opacity="0.8">HW</text>
<text x="260" y="80" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="14" font-weight="800" fill="#E0E0E0">$15K</text>
<text x="260" y="97" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="9" fill="var(--cyan)" opacity="0.8">VENTAS</text>
<!-- Needle pointing to "full" (right/ventas) -->
<line x1="170" y1="188" x2="275" y2="130" stroke="var(--text-primary)" stroke-width="3" stroke-linecap="round"/>
<circle cx="170" cy="188" r="9" fill="var(--accent)"/>
<circle cx="170" cy="188" r="4" fill="var(--bg-deep)"/>
<!-- Center label -->
<text x="170" y="215" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="14" font-weight="700" fill="#E0E0E0" letter-spacing="0.08em">$30K USD</text>
<!-- E / F labels outside the arc -->
<text x="6" y="220" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="20" font-weight="800" fill="#ffffff">E</text>
<text x="334" y="220" text-anchor="middle" font-family="'JetBrains Mono', monospace" font-size="20" font-weight="800" fill="#ffffff">F</text>
</svg>
</div>
<!-- Legend as dashboard readouts -->
<div style="flex:1;display:flex;flex-direction:column;gap:14px;">
<div class="card" style="padding:18px 22px;border-left:3px solid var(--cyan);">
<div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;">
<span style="font-family:var(--font-mono);font-size:0.95rem;color:var(--cyan);font-weight:700;">Ventas y Marketing</span>
<span style="font-family:var(--font-mono);font-size:1.6rem;font-weight:800;color:var(--cyan);">$15K</span>
</div>
<div style="font-size:1.02rem;color:var(--text-secondary);">5 vendedores (2 TJ, 2 GDL, 1 Cd. Obregon), comisiones $500/cliente</div>
</div>
<div class="card" style="padding:18px 22px;border-left:3px solid var(--green);">
<div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;">
<span style="font-family:var(--font-mono);font-size:0.95rem;color:var(--green);font-weight:700;">Hardware (primeras unidades)</span>
<span style="font-family:var(--font-mono);font-size:1.6rem;font-weight:800;color:var(--green);">$8K</span>
</div>
<div style="font-size:1.02rem;color:var(--text-secondary);">40 racks a $200 USD c/u para primeros clientes</div>
</div>
<div class="card" style="padding:18px 22px;border-left:3px solid var(--accent);">
<div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;">
<span style="font-family:var(--font-mono);font-size:0.95rem;color:var(--accent);font-weight:700;">Desarrollo</span>
<span style="font-family:var(--font-mono);font-size:1.6rem;font-weight:800;color:var(--accent);">$7K</span>
</div>
<div style="font-size:1.02rem;color:var(--text-secondary);">Programador dedicado, APIs, infraestructura</div>
</div>
</div>
</div>
<!-- SAFE Terms -->
<div style="display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px;" class="reveal reveal-d3">
<div class="card" style="text-align:center;padding:18px 14px;">
<div style="font-family:var(--font-mono);font-size:0.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:6px;">Instrumento</div>
<div style="font-family:var(--font-mono);font-size:1.4rem;font-weight:800;color:var(--text-primary);">SAFE</div>
</div>
<div class="card" style="text-align:center;padding:18px 14px;border-color:var(--accent);">
<div style="font-family:var(--font-mono);font-size:0.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:6px;">Valuation Cap</div>
<div style="font-family:var(--font-mono);font-size:1.4rem;font-weight:800;color:var(--accent);">$1M USD</div>
</div>
<div class="card" style="text-align:center;padding:18px 14px;">
<div style="font-family:var(--font-mono);font-size:0.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:6px;">Descuento</div>
<div style="font-family:var(--font-mono);font-size:1.4rem;font-weight:800;color:var(--cyan);">25%</div>
</div>
<div class="card" style="text-align:center;padding:18px 14px;">
<div style="font-family:var(--font-mono);font-size:0.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:6px;">Ticket Mínimo</div>
<div style="font-family:var(--font-mono);font-size:1.4rem;font-weight:800;color:var(--green);">$1,500 USD</div>
</div>
</div>
<!-- Capital Protection Clause -->
<div class="card reveal reveal-d4" style="margin-top:24px;padding:24px 28px;border-color:var(--green);border-left:3px solid var(--green);">
<div style="display:flex;align-items:center;gap:10px;margin-bottom:14px;">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="var(--green)" stroke-width="2" stroke-linecap="round"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg>
<span style="font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--green);">Protección de Capital</span>
</div>
<p style="color:var(--text-secondary);font-size:0.95rem;line-height:1.7;margin-bottom:16px;">
Si al cumplirse <strong style="color:var(--text-primary);">12 meses</strong> desde la fecha de inversión, Nexus Autoparts no ha cerrado una ronda de financiamiento calificada de al menos <strong style="color:var(--accent);">$500K USD</strong> con inversionistas institucionales o venture capital, el inversionista podrá elegir:
</p>
<div style="display:grid;grid-template-columns:1fr 1fr;gap:14px;">
<div style="background:var(--bg-primary);border:1px solid var(--border);border-radius:10px;padding:16px 18px;">
<div style="font-family:var(--font-mono);font-size:0.7rem;color:var(--cyan);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:6px;">Opción A</div>
<div style="font-size:0.95rem;font-weight:600;color:var(--text-primary);margin-bottom:4px;">Mantener el SAFE</div>
<div style="font-size:0.85rem;color:var(--text-secondary);">Seguir apostando al crecimiento de Nexus sin cambios en los términos</div>
</div>
<div style="background:var(--bg-primary);border:1px solid var(--border);border-radius:10px;padding:16px 18px;">
<div style="font-family:var(--font-mono);font-size:0.7rem;color:var(--green);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:6px;">Opción B</div>
<div style="font-size:0.95rem;font-weight:600;color:var(--text-primary);margin-bottom:4px;">Convertir a préstamo</div>
<div style="font-size:0.85rem;color:var(--text-secondary);">Capital + <strong style="color:var(--green);">15% interés anual</strong>, pagadero en <strong style="color:var(--green);">3 meses</strong></div>
</div>
</div>
<div style="margin-top:14px;text-align:center;font-family:var(--font-mono);font-size:0.78rem;color:var(--text-muted);">
El inversionista decide — tu capital siempre está protegido
</div>
</div>
<!-- Capital operativo del fundador -->
<div class="card reveal reveal-d5" style="margin-top:16px;padding:16px 24px;border-color:var(--accent);text-align:center;">
<span style="font-family:var(--font-mono);font-size:0.85rem;color:var(--text-secondary);">Fundador inyecta <strong style="color:var(--accent);">$30,000 MXN mensuales</strong> adicionales de capital operativo</span>
</div>
</div>
</section>
<!-- ═══════════ SLIDE 11: CONTACTO ═══════════ -->
<section class="slide" id="slide-11">
<div class="glow glow--orange" style="top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;opacity:0.08;"></div>
<div class="contact-finish"></div>
<div class="contact-road"></div>
<div class="slide-inner contact-center">
<div class="cover-logo-wheel reveal" style="margin:0 auto 24px;">N</div>
<div class="cover-title reveal reveal-d1" style="text-align:center;">NEXUS <span class="hl">AUTOPARTS</span></div>
<div class="contact-divider reveal reveal-d2"></div>
<div class="contact-info reveal reveal-d3">
<div class="contact-item" style="font-size:1.2rem;font-weight:700;color:var(--text-primary);font-family:var(--font-display);">Iván Alcaraz</div>
<div class="contact-item"><a href="mailto:ialcarazsalazar@consultoria-as.com">ialcarazsalazar@consultoria-as.com</a></div>
<div class="contact-item" style="margin-top:16px;">Tijuana & Guadalajara, México</div>
</div>
<a href="mailto:ialcarazsalazar@consultoria-as.com" class="contact-cta reveal reveal-d4">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round"><path d="M5 12h14M12 5l7 7-7 7"/></svg>
Acelera con nosotros
</a>
<div class="contact-tagline reveal reveal-d5">"Tu conexión directa con las partes que necesitas"</div>
</div>
</section>
<!-- ═══ Navigation ═══ -->
<nav class="nav" aria-label="Slide navigation">
<button class="nav-btn" onclick="goSlide(-1)" aria-label="Previous slide"></button>
<div class="nav-dots" id="nav-dots"></div>
<span class="nav-counter" id="nav-counter">01/13</span>
<button class="nav-btn" onclick="goSlide(1)" aria-label="Next slide"></button>
</nav>
<script>
(function() {
const TOTAL = 11;
let current = 1;
const dotsEl = document.getElementById('nav-dots');
const counterEl = document.getElementById('nav-counter');
// ── Create nav dots ──
for (let i = 1; i <= TOTAL; i++) {
const dot = document.createElement('button');
dot.className = 'nav-dot' + (i === 1 ? ' active' : '');
dot.setAttribute('aria-label', 'Ir a slide ' + i);
dot.dataset.slide = i;
dot.addEventListener('click', function() { scrollToSlide(+this.dataset.slide); });
dotsEl.appendChild(dot);
}
function pad(n) { return String(n).padStart(2, '0'); }
function scrollToSlide(n) {
n = Math.max(1, Math.min(TOTAL, n));
const el = document.getElementById('slide-' + n);
if (el) el.scrollIntoView({ behavior: 'smooth' });
}
window.goSlide = function(dir) { scrollToSlide(current + dir); };
function updateCurrent() {
const slides = document.querySelectorAll('.slide');
let closest = 1, minDist = Infinity;
slides.forEach(function(s, i) {
const dist = Math.abs(s.getBoundingClientRect().top);
if (dist < minDist) { minDist = dist; closest = i + 1; }
});
if (closest !== current) {
current = closest;
counterEl.textContent = pad(current) + '/' + pad(TOTAL);
document.querySelectorAll('.nav-dot').forEach(function(d, i) {
d.classList.toggle('active', i + 1 === current);
});
}
}
// ── Intersection Observer for scroll animations ──
const observer = new IntersectionObserver(function(entries) {
entries.forEach(function(entry) {
if (entry.isIntersecting) {
entry.target.classList.add('visible');
}
});
}, { threshold: 0.15, rootMargin: '0px 0px -40px 0px' });
document.querySelectorAll('.reveal').forEach(function(el) {
observer.observe(el);
});
// ── Throttled scroll ──
let ticking = false;
window.addEventListener('scroll', function() {
if (!ticking) {
requestAnimationFrame(function() { updateCurrent(); ticking = false; });
ticking = true;
}
});
// ── Keyboard nav ──
document.addEventListener('keydown', function(e) {
if (e.key === 'ArrowRight' || e.key === 'ArrowDown' || e.key === 'PageDown') {
e.preventDefault(); goSlide(1);
} else if (e.key === 'ArrowLeft' || e.key === 'ArrowUp' || e.key === 'PageUp') {
e.preventDefault(); goSlide(-1);
} else if (e.key === 'Home') {
e.preventDefault(); scrollToSlide(1);
} else if (e.key === 'End') {
e.preventDefault(); scrollToSlide(TOTAL);
}
});
// ── Touch / Swipe support ──
let touchStartY = 0;
document.addEventListener('touchstart', function(e) {
touchStartY = e.changedTouches[0].screenY;
}, { passive: true });
document.addEventListener('touchend', function(e) {
const deltaY = touchStartY - e.changedTouches[0].screenY;
if (Math.abs(deltaY) > 60) {
goSlide(deltaY > 0 ? 1 : -1);
}
}, { passive: true });
updateCurrent();
})();
</script>
</body>
</html>