/* ═══════════════════════════════════════
   BASE & RESET
   ═══════════════════════════════════════ */

*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --orange: #FF6B00;
    --orange-light: #FF8C33;
    --orange-glow: rgba(255, 107, 0, 0.15);
    --orange-subtle: rgba(255, 107, 0, 0.08);
    --black: #0A0A0A;
    --gray-900: #1A1A1A;
    --gray-800: #2A2A2A;
    --gray-700: #3A3A3A;
    --gray-600: #555;
    --gray-500: #777;
    --gray-400: #999;
    --gray-300: #BBB;
    --gray-200: #DDD;
    --gray-100: #EEEEEE;
    --gray-50: #F7F7F7;
    --white: #FFFFFF;
    --font-main: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
}

html {
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    font-family: var(--font-main);
    background: var(--white);
    color: var(--gray-900);
    overflow: hidden;
    height: 100vh;
    width: 100vw;
}

/* ═══════════════════════════════════════
   PROGRESS BAR
   ═══════════════════════════════════════ */

.progress-bar {
    position: fixed;
    top: 0;
    left: 0;
    height: 3px;
    background: var(--orange);
    z-index: 1000;
    transition: width 0.4s ease;
    width: 0%;
}

/* ═══════════════════════════════════════
   NAVIGATION
   ═══════════════════════════════════════ */

.slide-nav {
    position: fixed;
    bottom: 24px;
    right: 32px;
    z-index: 100;
    display: flex;
    align-items: center;
    gap: 16px;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.slide-nav.visible {
    opacity: 1;
}

.slide-counter {
    font-family: var(--font-mono);
    font-size: 13px;
    color: var(--gray-400);
    letter-spacing: 0.5px;
}

.nav-btn {
    width: 36px;
    height: 36px;
    border: 1px solid var(--gray-200);
    background: var(--white);
    border-radius: 8px;
    cursor: pointer;
    font-size: 16px;
    color: var(--gray-600);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.nav-btn:hover {
    border-color: var(--orange);
    color: var(--orange);
    background: var(--orange-subtle);
}

.nav-controls {
    display: flex;
    gap: 6px;
}

/* ═══════════════════════════════════════
   SLIDES BASE
   ═══════════════════════════════════════ */

.slide {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: none;
    align-items: center;
    justify-content: center;
    background: var(--white);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.slide.active {
    display: flex;
    opacity: 1;
}

.slide__content {
    max-width: 1200px;
    width: 100%;
    padding: 48px 80px;
}

.slide__content--centered {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100vh;
}

/* ═══════════════════════════════════════
   TYPOGRAPHY
   ═══════════════════════════════════════ */

.section-label {
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    color: var(--orange);
    text-transform: uppercase;
    margin-bottom: 16px;
}

.slide-headline {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.15;
    color: var(--black);
    margin-bottom: 16px;
    letter-spacing: -0.5px;
}

.text-orange {
    color: var(--orange);
}

.slide-body {
    font-size: 18px;
    line-height: 1.6;
    color: var(--gray-600);
    max-width: 700px;
    margin-bottom: 40px;
}

.source-line {
    font-size: 12px;
    color: var(--gray-400);
    margin-top: 24px;
    font-family: var(--font-mono);
}

/* ═══════════════════════════════════════
   TITLE SLIDE
   ═══════════════════════════════════════ */

.slide--title {
    background: var(--black);
    position: relative;
    overflow: hidden;
}

.slide--title .slide__content {
    position: relative;
    z-index: 2;
}

.slide--title .nav-btn,
.slide--reveal .nav-btn,
.slide--qa .nav-btn {
    background: var(--gray-800);
    border-color: var(--gray-700);
    color: var(--gray-400);
}

.slide--title .slide-counter,
.slide--reveal .slide-counter,
.slide--qa .slide-counter {
    color: var(--gray-500);
}

.title-accent {
    position: absolute;
    top: -200px;
    right: -200px;
    width: 800px;
    height: 800px;
    background: radial-gradient(circle, var(--orange-glow) 0%, transparent 70%);
    z-index: 1;
}

.title-badge {
    font-family: var(--font-mono);
    font-size: 12px;
    letter-spacing: 3px;
    color: var(--orange);
    margin-bottom: 32px;
    padding-bottom: 16px;
    border-bottom: 2px solid var(--orange);
    display: inline-block;
}

.title-main {
    font-size: 72px;
    font-weight: 900;
    color: var(--white);
    line-height: 1.05;
    letter-spacing: -2px;
    margin-bottom: 16px;
}

.title-sub {
    font-size: 28px;
    font-weight: 300;
    color: var(--orange-light);
    line-height: 1.4;
    margin-bottom: 60px;
}

.author-photo {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid var(--orange);
    margin-bottom: 12px;
}

.title-author {
    border-top: 1px solid var(--gray-700);
    padding-top: 24px;
    display: inline-block;
}

.author-name {
    font-size: 18px;
    font-weight: 600;
    color: var(--white);
}

.author-role {
    font-size: 14px;
    color: var(--gray-400);
    margin-top: 4px;
}

.author-cred {
    font-size: 12px;
    color: var(--gray-500);
    margin-top: 8px;
    letter-spacing: 0.5px;
    font-weight: 400;
}

/* ═══════════════════════════════════════
   STATS GRID
   ═══════════════════════════════════════ */

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-top: 32px;
}

.stat-card {
    background: var(--gray-50);
    border: 1px solid var(--gray-100);
    border-radius: 12px;
    padding: 28px 20px;
    text-align: center;
    transition: all 0.3s ease;
}

.stat-card:hover {
    border-color: var(--orange);
    box-shadow: 0 4px 24px var(--orange-glow);
}

.stat-number {
    font-size: 48px;
    font-weight: 900;
    color: var(--orange);
    line-height: 1;
    margin-bottom: 8px;
    letter-spacing: -1px;
}

.stat-label {
    font-size: 13px;
    color: var(--gray-500);
    line-height: 1.4;
}

/* ═══════════════════════════════════════
   AGENDA
   ═══════════════════════════════════════ */

.agenda-list {
    margin-top: 48px;
}

.agenda-item {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 28px 0;
    border-bottom: 1px solid var(--gray-100);
}

.agenda-item:last-child {
    border-bottom: none;
}

.agenda-num {
    font-family: var(--font-mono);
    font-size: 14px;
    font-weight: 500;
    color: var(--orange);
    min-width: 32px;
}

.agenda-text {
    font-size: 24px;
    font-weight: 500;
    color: var(--gray-900);
}

.agenda-visual {
    display: flex;
    justify-content: center;
    margin-top: 24px;
}

.agenda-roadmap-svg {
    max-width: 100%;
    height: auto;
}

/* ═══════════════════════════════════════
   PLAY SLIDES
   ═══════════════════════════════════════ */

.play-badge {
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
    color: var(--white);
    background: var(--orange);
    display: inline-block;
    padding: 6px 14px;
    border-radius: 4px;
    margin-bottom: 16px;
}

.play-subtitle {
    font-size: 18px;
    color: var(--gray-500);
    margin-bottom: 32px;
}

.play-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    margin-bottom: 24px;
}

.play-story h3,
.play-numbers h3 {
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--orange);
    margin-bottom: 16px;
}

.play-story ul {
    list-style: none;
    padding: 0;
}

.play-story li {
    font-size: 15px;
    line-height: 1.6;
    color: var(--gray-700);
    padding: 6px 0 6px 20px;
    position: relative;
}

.play-story li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 14px;
    width: 6px;
    height: 6px;
    background: var(--orange);
    border-radius: 50%;
}

.play-story li strong {
    color: var(--black);
}

.play-quote {
    font-size: 14px;
    font-style: italic;
    color: var(--gray-500);
    border-left: 3px solid var(--orange);
    padding: 12px 20px;
    background: var(--orange-subtle);
    border-radius: 0 8px 8px 0;
}

.play-quote cite {
    font-style: normal;
    font-weight: 600;
    color: var(--gray-600);
}

/* Before / After */

.before-after {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
}

.ba-before, .ba-after {
    text-align: center;
    flex: 1;
}

.ba-value {
    font-size: 36px;
    font-weight: 800;
    color: var(--black);
    line-height: 1;
}

.ba-after .ba-value {
    color: var(--orange);
}

.ba-label {
    font-size: 12px;
    color: var(--gray-500);
    margin-top: 4px;
}

.ba-arrow {
    font-size: 28px;
    color: var(--orange);
    font-weight: 700;
}

/* Number stack */

.number-stack {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.big-number {
    display: flex;
    flex-direction: column;
    padding: 16px 20px;
    background: var(--gray-50);
    border-radius: 10px;
    border: 1px solid var(--gray-100);
}

.big-number span {
    font-size: 32px;
    font-weight: 800;
    line-height: 1;
}

.big-number small {
    font-size: 13px;
    color: var(--gray-500);
    margin-top: 4px;
    font-weight: 400;
}

/* Mini stats */

.mini-stats {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.mini-stat {
    font-size: 14px;
    color: var(--gray-600);
    padding: 8px 12px;
    background: var(--gray-50);
    border-radius: 6px;
}

.mini-stat strong {
    color: var(--orange);
}

/* Loop diagram */

.loop-diagram {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.loop-step {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 15px;
    color: var(--gray-700);
    padding: 8px 12px;
    background: var(--gray-50);
    border-radius: 8px;
    border-left: 3px solid var(--orange);
}

.step-num {
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 600;
    color: var(--orange);
    min-width: 20px;
}

/* Story aside */

.story-aside {
    font-size: 14px;
    color: var(--gray-500);
    font-style: italic;
    margin-top: 16px;
    padding: 12px;
    background: var(--orange-subtle);
    border-radius: 8px;
}

/* Improvement showcase */

.improvement-showcase {
    text-align: center;
}

.improvement-label {
    font-size: 16px;
    font-weight: 600;
    color: var(--black);
    margin-bottom: 16px;
}

.improvement-note {
    font-size: 15px;
    color: var(--gray-600);
    margin-top: 16px;
    font-weight: 500;
}

/* Meta moment */

.meta-moment {
    background: var(--black);
    color: var(--white);
    padding: 16px 24px;
    border-radius: 10px;
    font-size: 14px;
    line-height: 1.5;
}

.meta-moment strong {
    color: var(--orange);
}

/* Shipping grid */

.shipping-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.ship-item {
    font-size: 15px;
    color: var(--gray-600);
    padding: 14px 16px;
    background: var(--gray-50);
    border-radius: 6px;
    border: 1px solid var(--gray-100);
}

/* ═══════════════════════════════════════
   PROOF SLIDE
   ═══════════════════════════════════════ */

.proof-grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr;
    gap: 24px;
    margin-top: 32px;
    align-items: stretch;
}

.proof-card {
    background: var(--gray-50);
    border: 1px solid var(--gray-100);
    border-radius: 12px;
    padding: 28px;
}

.proof-card--large {
    border-color: var(--orange);
    background: var(--orange-subtle);
}

.proof-company {
    font-size: 20px;
    font-weight: 700;
    color: var(--black);
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--orange);
    display: inline-block;
}

.proof-stat {
    font-size: 14px;
    color: var(--gray-700);
    padding: 4px 0;
    line-height: 1.5;
}

.proof-stat strong {
    color: var(--orange);
    font-weight: 700;
}

/* ═══════════════════════════════════════
   RESOURCES
   ═══════════════════════════════════════ */

.resources-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 32px;
}

.resource-card {
    display: block;
    background: var(--gray-50);
    border: 1px solid var(--gray-100);
    border-radius: 10px;
    padding: 20px;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
}

.resource-card:hover {
    border-color: var(--orange);
    box-shadow: 0 4px 16px var(--orange-glow);
    transform: translateY(-2px);
}

.resource-name {
    font-size: 16px;
    font-weight: 700;
    color: var(--black);
    margin-bottom: 6px;
}

.resource-desc {
    font-size: 13px;
    color: var(--gray-500);
    line-height: 1.4;
}

/* ═══════════════════════════════════════
   PIVOT SLIDE
   ═══════════════════════════════════════ */

.slide--pivot {
    background: var(--gray-50);
}

.pivot-headline {
    font-size: 52px;
    font-weight: 800;
    color: var(--black);
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 24px;
}

.pivot-sub {
    font-size: 22px;
    color: var(--gray-500);
    font-weight: 400;
    line-height: 1.5;
}

/* ═══════════════════════════════════════
   LIMITATIONS
   ═══════════════════════════════════════ */

.limitations-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 28px;
}

.limitation-card {
    background: var(--gray-50);
    border: 1px solid var(--gray-100);
    border-radius: 12px;
    padding: 24px;
}

.limitation-icon {
    width: 36px;
    height: 36px;
    background: var(--orange);
    color: var(--white);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 18px;
    margin-bottom: 12px;
}

.limitation-card h3 {
    font-size: 16px;
    font-weight: 700;
    color: var(--black);
    margin-bottom: 8px;
}

.limitation-card p {
    font-size: 13px;
    color: var(--gray-600);
    line-height: 1.5;
}

.limitations-visual {
    display: flex;
    gap: 32px;
    align-items: flex-start;
    margin-top: 20px;
}

.limitations-illustration {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    padding-top: 20px;
}

.limitations-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1;
}

.limitation-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.limitation-card--v2 {
    background: var(--gray-50);
    border: 1px solid var(--gray-100);
    border-radius: 10px;
    padding: 18px 16px;
    border-left: 3px solid var(--orange);
}

.limitation-card--v2 h3 {
    font-size: 15px;
    font-weight: 700;
    color: var(--black);
    margin-bottom: 6px;
}

.limitation-card--v2 p {
    font-size: 12px;
    color: var(--gray-600);
    line-height: 1.45;
}

/* ═══════════════════════════════════════
   ENTERPRISE
   ═══════════════════════════════════════ */

.enterprise-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    margin-top: 32px;
    margin-bottom: 32px;
}

.enterprise-heading {
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    padding-bottom: 12px;
}

.enterprise-heading--risk {
    color: var(--gray-500);
    border-bottom: 2px solid var(--gray-200);
}

.enterprise-heading--solve {
    color: var(--orange);
    border-bottom: 2px solid var(--orange);
}

.enterprise-list {
    list-style: none;
}

.enterprise-list li {
    font-size: 15px;
    color: var(--gray-600);
    padding: 8px 0 8px 24px;
    position: relative;
    line-height: 1.5;
}

.enterprise-list li::before {
    content: '\2013';
    position: absolute;
    left: 0;
    color: var(--gray-400);
}

.enterprise-list--positive li::before {
    content: '\2713';
    color: var(--orange);
    font-weight: 700;
}

.enterprise-bottom-line {
    font-size: 20px;
    font-weight: 700;
    color: var(--black);
    text-align: center;
    padding: 20px 32px;
    background: var(--orange-subtle);
    border-radius: 12px;
    border: 1px solid rgba(255, 107, 0, 0.2);
}

/* ═══════════════════════════════════════
   REVEAL SLIDE
   ═══════════════════════════════════════ */

.slide--reveal {
    background: var(--black);
    position: relative;
    overflow: hidden;
}

.slide--reveal::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 900px;
    height: 900px;
    background: radial-gradient(circle, rgba(255, 107, 0, 0.08) 0%, transparent 65%);
    z-index: 0;
}

.slide--reveal .slide__content {
    position: relative;
    z-index: 1;
}

.reveal-build {
    margin-bottom: 48px;
}

.reveal-line {
    font-size: 20px;
    color: var(--gray-400);
    margin-bottom: 12px;
    font-weight: 400;
}

.reveal-hero {
    text-align: center;
}

.reveal-logo {
    font-size: 64px;
    font-weight: 900;
    color: var(--white);
    letter-spacing: -2px;
    margin-bottom: 8px;
}

.reveal-tagline {
    font-size: 24px;
    color: var(--orange);
    font-weight: 500;
    margin-bottom: 24px;
}

.reveal-desc {
    font-size: 18px;
    color: var(--gray-400);
    line-height: 1.6;
    max-width: 700px;
}

/* ═══════════════════════════════════════
   CAPABILITIES
   ═══════════════════════════════════════ */

.capabilities-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-top: 16px;
    margin-bottom: 12px;
}

.capability-card {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 12px;
    padding: 16px 20px;
}

.capability-card h3 {
    font-size: 17px;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 10px;
}

.cap-problem {
    font-size: 13px;
    color: var(--gray-500);
    margin-bottom: 8px;
    font-style: italic;
}

.cap-solution {
    font-size: 14px;
    color: var(--gray-700);
    line-height: 1.5;
}

.cap-proof {
    display: flex;
    gap: 24px;
    justify-content: center;
    margin-bottom: 10px;
}

.cap-proof-stat {
    font-size: 15px;
    color: var(--gray-700);
}

.cap-proof-stat strong {
    color: var(--orange);
    font-weight: 800;
}

.customer-results {
    display: flex;
    gap: 16px;
    justify-content: center;
    margin-bottom: 8px;
    padding: 6px 0;
}

.customer-result {
    font-size: 14px;
    color: var(--gray-600);
    padding: 8px 16px;
    background: var(--gray-50);
    border-radius: 8px;
    border: 1px solid var(--gray-100);
}

.customer-result strong {
    color: var(--orange);
}

.demo-cta {
    text-align: center;
    font-family: var(--font-mono);
    font-size: 18px;
    font-weight: 600;
    color: var(--white);
    background: var(--orange);
    padding: 16px 32px;
    border-radius: 10px;
    letter-spacing: 1px;
}

/* ═══════════════════════════════════════
   TAKEAWAYS
   ═══════════════════════════════════════ */

.takeaways-list {
    margin-top: 20px;
}

.takeaway {
    display: flex;
    align-items: flex-start;
    gap: 24px;
    padding: 24px 0;
    border-bottom: 1px solid var(--gray-100);
}

.takeaway:last-child {
    border-bottom: none;
}

.takeaway-num {
    font-size: 32px;
    font-weight: 900;
    color: var(--orange);
    min-width: 40px;
    line-height: 1;
}

.takeaway h3 {
    font-size: 20px;
    font-weight: 700;
    color: var(--black);
    margin-bottom: 4px;
}

.takeaway p {
    font-size: 15px;
    color: var(--gray-500);
    line-height: 1.5;
}

.takeaways-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 24px;
}

.takeaway-card {
    background: var(--gray-50);
    border-radius: 12px;
    padding: 28px 24px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.takeaway-card h3 {
    font-size: 19px;
    font-weight: 700;
    color: var(--black);
}

.takeaway-card p {
    font-size: 14px;
    color: var(--gray-500);
    line-height: 1.5;
}

.takeaway-icon {
    width: 48px;
    height: 48px;
    flex-shrink: 0;
}

.takeaway-card--highlight {
    background: rgba(255, 107, 0, 0.06);
    border: 1px solid rgba(255, 107, 0, 0.2);
}

.takeaway-card:nth-child(4),
.takeaway-card:nth-child(5) {
    grid-column: span 1;
}

/* ═══════════════════════════════════════
   Q&A
   ═══════════════════════════════════════ */

.slide--qa {
    background: var(--black);
}

.qa-headline {
    font-size: 72px;
    font-weight: 900;
    color: var(--white);
    margin-bottom: 16px;
}

.qa-sub {
    font-size: 22px;
    color: var(--gray-400);
    margin-bottom: 48px;
}

.qa-contact {
    border-top: 1px solid var(--gray-700);
    padding-top: 24px;
}

.qa-line {
    font-size: 16px;
    color: var(--gray-400);
    margin-bottom: 8px;
}

.qa-line--orange {
    color: var(--orange);
    font-weight: 600;
}

/* ═══════════════════════════════════════
   SLIDE TRANSITIONS (crossfade)
   ═══════════════════════════════════════ */

.slide {
    transition: opacity 0.2s ease;
}

.slide.slide-exit {
    display: flex;
    opacity: 0;
}

.slide.slide-enter {
    display: flex;
    opacity: 0;
}

.slide.slide-enter.active {
    opacity: 1;
}

/* ═══════════════════════════════════════
   PRESENTER NOTES OVERLAY
   ═══════════════════════════════════════ */

.presenter-overlay {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 20vh;
    background: rgba(10, 10, 10, 0.88);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    z-index: 500;
    display: none;
    flex-direction: column;
    justify-content: center;
    padding: 20px 80px;
    border-top: 2px solid var(--orange);
}

.presenter-overlay.visible {
    display: flex;
}

.presenter-label {
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 2px;
    color: var(--orange);
    margin-bottom: 8px;
}

.presenter-text {
    font-family: var(--font-mono);
    font-size: 16px;
    line-height: 1.6;
    color: var(--white);
    max-width: 900px;
}

/* ═══════════════════════════════════════
   KEYBOARD HELP OVERLAY
   ═══════════════════════════════════════ */

.help-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(10, 10, 10, 0.7);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    z-index: 600;
    display: none;
    align-items: center;
    justify-content: center;
}

.help-overlay.visible {
    display: flex;
}

.help-panel {
    background: var(--gray-900);
    border: 1px solid var(--gray-700);
    border-radius: 16px;
    padding: 32px 40px;
    min-width: 340px;
}

.help-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--orange);
}

.help-row {
    font-size: 15px;
    color: var(--gray-300);
    padding: 8px 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.help-row kbd {
    display: inline-block;
    background: var(--gray-800);
    border: 1px solid var(--gray-600);
    border-radius: 4px;
    padding: 2px 8px;
    font-family: var(--font-mono);
    font-size: 12px;
    color: var(--orange);
    min-width: 28px;
    text-align: center;
}

.help-dismiss {
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid var(--gray-700);
    font-size: 12px;
    color: var(--gray-500);
    text-align: center;
}

.help-dismiss kbd {
    display: inline-block;
    background: var(--gray-800);
    border: 1px solid var(--gray-600);
    border-radius: 4px;
    padding: 1px 6px;
    font-family: var(--font-mono);
    font-size: 11px;
    color: var(--orange);
}

/* ═══════════════════════════════════════
   QR CODE (Slide 17)
   ═══════════════════════════════════════ */

.qr-section {
    margin-top: 36px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.qr-code {
    width: 120px;
    height: 120px;
    background: var(--white);
    border-radius: 8px;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.qr-code svg {
    width: 100%;
    height: 100%;
}

.qr-label {
    font-size: 14px;
    color: var(--gray-300);
    font-weight: 500;
}

.qr-url {
    font-family: var(--font-mono);
    font-size: 12px;
    color: var(--orange);
    letter-spacing: 0.5px;
}

/* ═══════════════════════════════════════
   SECTION PROGRESS (counter override)
   ═══════════════════════════════════════ */

.slide-counter {
    white-space: nowrap;
}

/* ═══════════════════════════════════════
   SLIDE 4: FIGMA PLUGIN + CSV MOCKUP
   ═══════════════════════════════════════ */

.mockup-row {
    display: flex;
    gap: 16px;
    margin-bottom: 16px;
}

/* Shared window chrome dots */
.figma-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 4px;
}
.figma-dot--red { background: #FF5F57; }
.figma-dot--yellow { background: #FFBD2E; }
.figma-dot--green { background: #28CA41; }

/* Figma Plugin Window */
.mockup-figma {
    flex: 1;
    border: 1px solid var(--gray-200);
    border-radius: 8px;
    overflow: hidden;
    background: var(--white);
}

.figma-titlebar {
    display: flex;
    align-items: center;
    padding: 6px 10px;
    background: var(--gray-50);
    border-bottom: 1px solid var(--gray-200);
}

.figma-titlebar-text {
    font-family: var(--font-mono);
    font-size: 10px;
    color: var(--gray-500);
    margin-left: 8px;
}

.figma-body {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
    padding: 8px;
}

.figma-thumb {
    border-radius: 4px;
    padding: 10px 8px 6px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    min-height: 48px;
}
.figma-thumb--1 { background: linear-gradient(135deg, #D4570A, #FF6B00); }
.figma-thumb--2 { background: linear-gradient(135deg, #0A0A0A, #2A2A2A); }
.figma-thumb--3 { background: linear-gradient(135deg, #1a3a5c, #2a5a8c); }
.figma-thumb--4 { background: linear-gradient(135deg, #FF6B00, #FF8C33); }

.figma-thumb-text {
    font-size: 9px;
    font-weight: 700;
    color: var(--white);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.figma-thumb-cta {
    font-size: 7px;
    background: rgba(255,255,255,0.25);
    color: var(--white);
    padding: 2px 8px;
    border-radius: 2px;
    font-weight: 600;
}

.figma-footer {
    padding: 4px 10px;
    background: var(--gray-50);
    border-top: 1px solid var(--gray-200);
    font-family: var(--font-mono);
    font-size: 9px;
    color: var(--orange);
    text-align: center;
}

/* CSV Spreadsheet Mockup */
.mockup-csv {
    flex: 1.2;
    border: 1px solid var(--gray-200);
    border-radius: 8px;
    overflow: hidden;
    background: var(--white);
}

.csv-titlebar {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    background: var(--gray-50);
    border-bottom: 1px solid var(--gray-200);
    font-family: var(--font-mono);
    font-size: 10px;
    color: var(--gray-500);
}

.csv-icon { color: #28CA41; font-size: 8px; }

.csv-body { padding: 0; }

.csv-header {
    display: grid;
    grid-template-columns: 2fr 2fr 0.5fr;
    gap: 1px;
    padding: 4px 8px;
    background: var(--gray-100);
    font-family: var(--font-mono);
    font-size: 9px;
    font-weight: 600;
    color: var(--gray-600);
}

.csv-row {
    display: grid;
    grid-template-columns: 2fr 2fr 0.5fr;
    gap: 1px;
    padding: 3px 8px;
    font-size: 10px;
    color: var(--gray-700);
    border-bottom: 1px solid var(--gray-100);
}

.csv-row--fade { opacity: 0.5; }

.csv-check {
    color: #28CA41;
    font-weight: 700;
    text-align: center;
}

.csv-footer {
    padding: 4px 10px;
    background: var(--gray-50);
    border-top: 1px solid var(--gray-200);
    font-family: var(--font-mono);
    font-size: 9px;
    color: var(--orange);
    text-align: center;
}

/* ═══════════════════════════════════════
   SLIDE 5: CHAT UI MOCKUP
   ═══════════════════════════════════════ */

.mockup-chat {
    border: 1px solid var(--gray-200);
    border-radius: 10px;
    overflow: hidden;
    background: var(--white);
    margin-bottom: 16px;
    max-width: 700px;
}

.chat-titlebar {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    background: var(--gray-50);
    border-bottom: 1px solid var(--gray-200);
}

.chat-status-dot {
    width: 8px;
    height: 8px;
    background: #28CA41;
    border-radius: 50%;
}

.chat-title {
    font-size: 12px;
    font-weight: 600;
    color: var(--gray-900);
    flex: 1;
}

.chat-badge {
    font-family: var(--font-mono);
    font-size: 9px;
    font-weight: 700;
    color: var(--white);
    background: var(--orange);
    padding: 2px 6px;
    border-radius: 3px;
    letter-spacing: 0.5px;
}

.chat-messages {
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.chat-msg {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.chat-msg--human {
    justify-content: flex-end;
}

.chat-avatar {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 9px;
    font-weight: 700;
    flex-shrink: 0;
}

.chat-avatar--ai {
    background: var(--orange);
    color: var(--white);
}

.chat-avatar--human {
    background: var(--gray-200);
    color: var(--gray-600);
}

.chat-bubble {
    max-width: 80%;
    padding: 8px 12px;
    border-radius: 10px;
    font-size: 12px;
    line-height: 1.5;
}

.chat-bubble--ai {
    background: var(--gray-50);
    color: var(--gray-800);
    border: 1px solid var(--gray-100);
    border-top-left-radius: 2px;
}

.chat-bubble--human {
    background: var(--orange);
    color: var(--white);
    border-top-right-radius: 2px;
}

.chat-msg--system {
    justify-content: center;
}

.chat-system-line {
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 600;
    color: var(--white);
    background: var(--black);
    padding: 6px 16px;
    border-radius: 20px;
    border: 1px solid var(--orange);
    letter-spacing: 0.3px;
}

/* ═══════════════════════════════════════
   SLIDE 6: KARPATHY LOOP VISUAL
   ═══════════════════════════════════════ */

.mockup-loop-visual {
    display: flex;
    align-items: center;
    gap: 32px;
    margin-bottom: 16px;
    justify-content: center;
}

.loop-cycle {
    position: relative;
    width: 220px;
    height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.loop-svg {
    position: relative;
    z-index: 1;
}

/* Animated circular progress */
.slide.active .loop-progress {
    animation: loopSpin 3s ease-in-out infinite;
}

@keyframes loopSpin {
    0% { stroke-dashoffset: 502; }
    50% { stroke-dashoffset: 0; }
    100% { stroke-dashoffset: -502; }
}

.loop-cycle-labels {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.loop-label {
    position: absolute;
    font-family: var(--font-mono);
    font-size: 9px;
    font-weight: 600;
    color: var(--gray-500);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}

.loop-label--top { top: -4px; left: 50%; transform: translateX(-50%); }
.loop-label--right { right: -24px; top: 50%; transform: translateY(-50%); }
.loop-label--bottom { bottom: -4px; left: 50%; transform: translateX(-50%); }
.loop-label--left { left: -28px; top: 50%; transform: translateY(-50%); }

.loop-ticker {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.loop-ticker-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 24px;
    padding: 6px 12px;
    background: var(--gray-50);
    border-radius: 6px;
    border: 1px solid var(--gray-100);
}

.ticker-label {
    font-size: 12px;
    color: var(--gray-500);
}

.ticker-value {
    font-family: var(--font-mono);
    font-size: 18px;
    font-weight: 800;
    color: var(--orange);
}

.ticker-value--green { color: #28CA41; }
.ticker-value--dim { color: var(--gray-300); }

/* Ticker count-up animation */
.slide.active .ticker-animate {
    animation: tickerPulse 2s ease-in-out infinite;
}

@keyframes tickerPulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

/* ═══════════════════════════════════════
   SLIDE 7: EVAL BARS + CHECKS
   ═══════════════════════════════════════ */

.mockup-eval {
    display: flex;
    gap: 24px;
    align-items: flex-start;
    margin-top: 4px;
}

.eval-bars {
    flex: 1.2;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.eval-bar-group {}

.eval-bar-label {
    font-size: 11px;
    font-weight: 500;
    color: var(--gray-600);
    margin-bottom: 3px;
    display: flex;
    justify-content: space-between;
}

.eval-bar-pct {
    font-family: var(--font-mono);
    font-weight: 700;
}
.eval-bar-pct--before { color: #E05A00; }
.eval-bar-pct--after { color: #28CA41; }

.eval-bar-track {
    width: 100%;
    height: 14px;
    background: var(--gray-100);
    border-radius: 7px;
    overflow: hidden;
}

.eval-bar-fill {
    height: 100%;
    border-radius: 7px;
    width: 0%;
    transition: width 1.2s ease-out;
}

.eval-bar-fill--before { background: linear-gradient(90deg, #E05A00, #FF6B00); }
.eval-bar-fill--mid1 { background: linear-gradient(90deg, #E07A00, #FF8C33); }
.eval-bar-fill--mid2 { background: linear-gradient(90deg, #6BAF3A, #8FCF50); }
.eval-bar-fill--after { background: linear-gradient(90deg, #1EA83A, #28CA41); }

/* Animate bars when slide is active */
.slide.active .eval-bar-fill {
    width: var(--target-width);
}

.eval-checks {
    flex: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
}

.eval-check {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    color: var(--gray-700);
    padding: 5px 8px;
    background: var(--gray-50);
    border-radius: 4px;
    border: 1px solid var(--gray-100);
}

.eval-checkmark {
    color: #28CA41;
    font-weight: 800;
    font-size: 12px;
}

/* ═══════════════════════════════════════
   SLIDE 8: VIBE CODING SPLIT VIEW
   ═══════════════════════════════════════ */

.mockup-vibe {
    display: flex;
    align-items: stretch;
    gap: 0;
    margin-bottom: 12px;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid var(--gray-200);
}

/* Terminal Side */
.vibe-terminal {
    flex: 1;
    background: #1E1E1E;
    display: flex;
    flex-direction: column;
}

.vibe-term-titlebar {
    display: flex;
    align-items: center;
    padding: 6px 10px;
    background: #2D2D2D;
    border-bottom: 1px solid #3A3A3A;
}

.vibe-term-title {
    font-family: var(--font-mono);
    font-size: 10px;
    color: #999;
    margin-left: 8px;
}

.vibe-term-body {
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 3px;
    flex: 1;
}

.vibe-term-line {
    font-family: var(--font-mono);
    font-size: 10px;
    color: #E0E0E0;
    line-height: 1.6;
}

.vibe-term-line--output {
    padding-left: 16px;
}

.vibe-prompt {
    color: var(--orange);
    font-weight: 700;
    margin-right: 6px;
}

.vibe-output-dim { color: #777; }
.vibe-output-ok { color: #28CA41; font-weight: 700; margin-right: 4px; }

.vibe-term-cursor {
    width: 7px;
    height: 14px;
    background: var(--orange);
    margin-top: 4px;
    animation: cursorBlink 1s steps(2) infinite;
}

@keyframes cursorBlink {
    0% { opacity: 1; }
    50% { opacity: 0; }
}

/* Arrow column */
.vibe-arrow-col {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--gray-50);
    padding: 0 8px;
    border-left: 1px solid var(--gray-200);
    border-right: 1px solid var(--gray-200);
}

/* Mini Rendered Page */
.vibe-page {
    flex: 1;
    background: var(--white);
    display: flex;
    flex-direction: column;
}

.vibe-page-titlebar {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    background: var(--gray-50);
    border-bottom: 1px solid var(--gray-200);
}

.vibe-page-dot {
    width: 6px;
    height: 6px;
    background: #28CA41;
    border-radius: 50%;
}

.vibe-page-url {
    font-family: var(--font-mono);
    font-size: 9px;
    color: var(--gray-400);
}

.vibe-page-body {
    padding: 8px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.vibe-page-nav {
    font-size: 10px;
    font-weight: 800;
    color: var(--black);
    padding-bottom: 4px;
    border-bottom: 1px solid var(--gray-100);
}

.vibe-page-hero {
    text-align: center;
    padding: 8px 4px;
}

.vibe-page-h1 {
    font-size: 13px;
    font-weight: 800;
    color: var(--black);
    line-height: 1.2;
    margin-bottom: 3px;
}

.vibe-page-sub {
    font-size: 8px;
    color: var(--gray-500);
    margin-bottom: 6px;
}

.vibe-page-cta {
    display: inline-block;
    background: var(--orange);
    color: var(--white);
    font-size: 8px;
    font-weight: 700;
    padding: 4px 14px;
    border-radius: 4px;
}

.vibe-page-social {
    text-align: center;
    padding-top: 4px;
    border-top: 1px solid var(--gray-100);
}

.vibe-page-logos {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin-bottom: 3px;
}

.vibe-logo-block {
    width: 28px;
    height: 10px;
    background: var(--gray-200);
    border-radius: 2px;
}

.vibe-page-trust {
    font-size: 7px;
    color: var(--gray-400);
}

/* ═══════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════ */

@media (max-width: 1024px) {
    .slide__content {
        padding: 40px;
    }
    .title-main {
        font-size: 48px;
    }
    .slide-headline {
        font-size: 32px;
    }
    .play-grid, .enterprise-grid, .capabilities-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .proof-grid {
        grid-template-columns: 1fr;
    }
    .limitations-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .resources-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ═══════════════════════════════════════
   METADATAONE INTERFACE MOCKUP
   ═══════════════════════════════════════ */

.mockup-mone {
    margin: 1.5rem 0;
}

.mone-window {
    background: var(--gray-900);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(0,0,0,0.3);
    max-width: 800px;
    margin: 0 auto;
}

.mone-titlebar {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 14px;
    background: var(--black);
    border-bottom: 1px solid var(--gray-800);
}

.mone-title {
    margin-left: 8px;
    font-size: 0.7rem;
    color: var(--gray-400);
    font-family: var(--font-mono);
    letter-spacing: 0.5px;
}

.mone-body {
    padding: 16px 20px;
}

.mone-prompt {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 14px;
    background: var(--gray-800);
    border-radius: 8px;
    margin-bottom: 14px;
    border-left: 3px solid var(--orange);
}

.mone-prompt-icon {
    color: var(--orange);
    font-family: var(--font-mono);
    font-weight: 700;
    font-size: 0.85rem;
    line-height: 1.5;
    flex-shrink: 0;
}

.mone-prompt-text {
    color: var(--white);
    font-size: 0.75rem;
    line-height: 1.5;
    font-family: var(--font-mono);
}

.mone-response {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 14px;
}

.mone-agent-line {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--gray-300);
    font-size: 0.7rem;
    line-height: 1.4;
    padding: 6px 0;
}

.mone-agent-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 0.6rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    background: rgba(59, 130, 246, 0.2);
    color: #60A5FA;
    flex-shrink: 0;
    min-width: 70px;
    text-align: center;
    font-family: var(--font-mono);
}

.mone-agent-badge--creative {
    background: rgba(168, 85, 247, 0.2);
    color: #C084FC;
}

.mone-agent-badge--bid {
    background: rgba(255, 107, 0, 0.2);
    color: var(--orange-light);
}

.mone-agent-badge--campaign {
    background: rgba(34, 197, 94, 0.2);
    color: #4ADE80;
}

.mone-status {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    background: rgba(34, 197, 94, 0.08);
    border-radius: 6px;
    color: #4ADE80;
    font-size: 0.65rem;
    font-family: var(--font-mono);
    border: 1px solid rgba(34, 197, 94, 0.15);
}

.mone-status-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #4ADE80;
    flex-shrink: 0;
    animation: statusPulse 2s ease infinite;
}

@keyframes statusPulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

/* ═══════════════════════════════════════
   RESULTS DASHBOARD (Slide 5)
   ═══════════════════════════════════════ */

.results-dashboard {
    background: var(--gray-900);
    border-radius: 12px;
    padding: 20px 24px;
    margin-top: 16px;
}

.dashboard-title {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    color: var(--gray-400);
    letter-spacing: 0.5px;
    margin-bottom: 16px;
    text-transform: uppercase;
}

.dashboard-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 16px;
}

.dash-metric {
    text-align: center;
    padding: 12px 8px;
    background: var(--gray-800);
    border-radius: 8px;
}

.dash-value {
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--orange);
    font-family: var(--font-mono);
    line-height: 1.2;
}

.dash-label {
    font-size: 0.65rem;
    color: var(--gray-400);
    margin-top: 4px;
    line-height: 1.3;
}

.dashboard-tools {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.dash-tool-label {
    font-size: 0.65rem;
    color: var(--gray-500);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.dash-tool {
    font-size: 0.6rem;
    color: var(--gray-300);
    background: var(--gray-800);
    padding: 3px 10px;
    border-radius: 4px;
    font-family: var(--font-mono);
}

/* ═══════════════════════════════════════
   DEMO PREVIEW (Slide 15)
   ═══════════════════════════════════════ */

.demo-preview {
    margin: 12px 0;
    text-align: center;
}

.demo-preview-label {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--orange);
    margin-bottom: 10px;
    font-weight: 600;
}

.demo-preview-frame {
    max-width: 800px;
    margin: 0 auto;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(0,0,0,0.15);
}

/* ═══════════════════════════════════════
   GLOBAL FONT SIZE BOOST
   ═══════════════════════════════════════ */

.slide-headline {
    font-size: 48px !important;
    line-height: 1.12 !important;
}

.play-subtitle {
    font-size: 20px !important;
}

.stat-number {
    font-size: 56px !important;
}

.big-number span.text-orange {
    font-size: 40px !important;
}

.play-story li {
    font-size: 16px !important;
    line-height: 1.6 !important;
}

/* Bigger section labels */
.section-label {
    font-size: 13px !important;
    letter-spacing: 0.15em !important;
}

/* Bigger play quotes */
.play-quote {
    font-size: 16px !important;
    line-height: 1.6 !important;
}

/* Slide 4 overflow fix - tighter spacing */
.slide--play .slide__content {
    padding-top: 40px !important;
    padding-bottom: 30px !important;
}
.play-grid {
    gap: 16px !important;
    margin-bottom: 12px !important;
}
.play-story h3, .play-numbers h3 {
    margin-bottom: 6px !important;
    font-size: 13px !important;
}
.play-story li {
    margin-bottom: 2px !important;
}
.mockup-row {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}
.play-quote {
    padding: 10px 16px !important;
    margin-top: 8px !important;
    font-size: 14px !important;
}

/* Slide 14 MetadataONE reveal - hero visible, children animated by GSAP */
.reveal-hero {
    opacity: 1 !important;
}
.s14-hero {
    opacity: 1 !important;
}
.s14-hero .s14-antenna-wrap,
.s14-hero .s14-logo,
.s14-hero .s14-tagline,
.s14-hero .s14-cta-wrap {
    opacity: 0;
}
.reveal-logo {
    opacity: 1 !important;
}

/* Bigger takeaway headings */
.takeaway h3 {
    font-size: 20px !important;
}
.takeaway p {
    font-size: 16px !important;
}

/* Bigger pivot headline */
.pivot-headline {
    font-size: 56px !important;
}

/* Enhanced title slide */
.title-main {
    font-size: 80px !important;
}

/* Bigger enterprise text */
.enterprise-list li {
    font-size: 15px !important;
    line-height: 1.7 !important;
}

/* Enterprise bottom line bigger */
.enterprise-bottom-line {
    font-size: 16px !important;
    line-height: 1.6 !important;
}

/* Reveal lines bigger */
.reveal-line {
    font-size: 20px !important;
}

/* Reveal tagline bigger */
.reveal-tagline {
    font-size: 24px !important;
}

/* Dashboard values bigger */
.dash-value {
    font-size: 32px !important;
    font-weight: 800 !important;
}

/* ═══════════════════════════════════════
   KARPATHY LOOP ENHANCED ANIMATION
   ═══════════════════════════════════════ */

.loop-progress {
    animation: loopDraw 3s ease-in-out infinite;
}

@keyframes loopDraw {
    0% { stroke-dashoffset: 502; }
    50% { stroke-dashoffset: 0; }
    100% { stroke-dashoffset: -502; }
}

.loop-label {
    animation: loopLabelPulse 3s ease-in-out infinite;
}

.loop-label--top { animation-delay: 0s; }
.loop-label--right { animation-delay: 0.75s; }
.loop-label--bottom { animation-delay: 1.5s; }
.loop-label--left { animation-delay: 2.25s; }

@keyframes loopLabelPulse {
    0%, 100% { color: var(--gray-400); transform: scale(1); }
    25% { color: var(--orange); transform: scale(1.08); font-weight: 700; }
}

/* Ticker counter animation */
.ticker-animate {
    animation: tickerCount 4s ease-out forwards;
}

@keyframes tickerCount {
    0% { opacity: 0; transform: translateY(8px); }
    20% { opacity: 1; transform: translateY(0); }
}

/* ═══════════════════════════════════════
   SPEAKER PHOTO STYLES
   ═══════════════════════════════════════ */

.speaker-photo {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
    filter: grayscale(100%);
    border: 2px solid var(--gray-300);
    flex-shrink: 0;
}

.play-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 8px;
}

.play-header-info {
    flex: 1;
}

/* ═══════════════════════════════════════
   SPEAKER BADGES (Slides 4, 5)
   ═══════════════════════════════════════ */

.speaker-badge {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}
.speaker-avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    filter: grayscale(1);
    flex-shrink: 0;
    border: 2px solid var(--gray-200);
}
.speaker-name-tag {
    font-size: 14px;
    font-weight: 500;
    color: var(--gray-500);
    letter-spacing: 0.02em;
}

/* ═══════════════════════════════════════
   AUDIENCE FOLLOW-ALONG CTA (Slide 6)
   ═══════════════════════════════════════ */

.audience-cta {
    margin-top: 20px;
    padding: 16px 24px;
    background: rgba(255, 107, 0, 0.06);
    border: 1px solid rgba(255, 107, 0, 0.2);
    border-radius: 12px;
    text-align: center;
}
.audience-cta-text {
    font-size: 16px;
    font-weight: 600;
    color: var(--gray-900);
    margin-bottom: 4px;
}
.audience-cta-action {
    font-size: 14px;
    color: var(--orange);
    font-weight: 500;
}

/* ═══════════════════════════════════════
   HORROR STORIES GRID (Slide 13)
   ═══════════════════════════════════════ */

.horror-stories {
    margin-top: 24px;
}
.horror-story-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #dc2626;
    margin-bottom: 12px;
}
.horror-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
.horror-card {
    background: rgba(220, 38, 38, 0.04);
    border: 1px solid rgba(220, 38, 38, 0.15);
    border-radius: 12px;
    padding: 16px 20px;
}
.horror-company {
    font-size: 14px;
    font-weight: 700;
    color: #dc2626;
    margin-bottom: 6px;
}
.horror-detail {
    font-size: 13px;
    line-height: 1.5;
    color: var(--gray-700);
}

/* ═══════════════════════════════════════
   METADATAONE PROOF CARD HIGHLIGHT
   ═══════════════════════════════════════ */

.proof-card--mone {
    border-color: var(--orange);
    background: rgba(255, 107, 0, 0.03);
}

.proof-bg-chart {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60%;
    pointer-events: none;
    z-index: 0;
}

.slide--proof .slide__content {
    position: relative;
    z-index: 1;
}

/* ═══════════════════════════════════════
   SHIP ITEM TOOL NAME HIGHLIGHT
   ═══════════════════════════════════════ */

.ship-item strong {
    color: var(--orange);
}

/* ═══════════════════════════════════════
   RESOURCE SECTIONS (Slide 10)
   ═══════════════════════════════════════ */

.resource-section-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--gray-500);
    margin: 16px 0 8px 0;
}

.resource-section-label:first-of-type {
    margin-top: 8px;
}

.resources-grid--compact {
    gap: 10px !important;
}

.resources-grid--compact .resource-card {
    padding: 12px 16px !important;
}

.resources-grid--compact .resource-name {
    font-size: 14px !important;
}

.resources-grid--compact .resource-desc {
    font-size: 12px !important;
}

.resource-name--mone {
    color: var(--orange) !important;
}

/* ═══════════════════════════════════════
   STATS SLIDE DOT PATTERN BG
   ═══════════════════════════════════════ */

.slide--stats {
    position: relative;
}

.slide--stats::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, var(--gray-200) 1px, transparent 1px);
    background-size: 32px 32px;
    opacity: 0.4;
    z-index: 0;
}

.slide--stats .slide__content {
    position: relative;
    z-index: 1;
}

/* Stat card hover lift effect */
.stat-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.stat-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0,0,0,0.08);
}

/* Limitation card warning pulse on hover */
.limitation-card:hover .limitation-icon {
    animation: warningPulse 0.6s ease;
}

@keyframes warningPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.2); color: #dc2626; }
}

/* Enterprise grid animated separator */
.enterprise-grid {
    position: relative;
}

.enterprise-grid::after {
    content: 'VS';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 12px;
    font-weight: 800;
    color: var(--gray-300);
    letter-spacing: 0.15em;
    background: var(--white);
    padding: 8px 12px;
    border-radius: 20px;
    border: 1px solid var(--gray-200);
}

/* ═══════════════════════════════════════
   AI PRESENTER VIDEO (Tavus)
   ═══════════════════════════════════════ */

.ai-presenter {
    position: absolute;
    bottom: 80px;
    right: 60px;
    z-index: 10;
}

.ai-presenter-video {
    width: 180px;
    height: 180px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid var(--orange);
    box-shadow: 0 8px 32px rgba(255, 107, 0, 0.3);
    display: none;
}

.ai-presenter-video.playing {
    display: block;
    animation: presenterPulse 2s ease-in-out infinite alternate;
}

@keyframes presenterPulse {
    0% { box-shadow: 0 8px 32px rgba(255, 107, 0, 0.3); }
    100% { box-shadow: 0 8px 48px rgba(255, 107, 0, 0.5); }
}

.ai-presenter-play {
    display: flex;
    align-items: center;
    gap: 8px;
    background: var(--orange);
    color: white;
    border: none;
    border-radius: 24px;
    padding: 10px 20px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    font-family: var(--font-main);
    transition: transform 0.2s, box-shadow 0.2s;
    box-shadow: 0 4px 16px rgba(255, 107, 0, 0.3);
}

.ai-presenter-play:hover {
    transform: scale(1.05);
    box-shadow: 0 6px 24px rgba(255, 107, 0, 0.4);
}

.ai-presenter-play.hidden {
    display: none;
}

/* ═══════════════════════════════════════
   ANIMATED GRADIENT BACKGROUNDS
   ═══════════════════════════════════════ */

/* Old animated gradient on title slide - replaced by s1 redesign */

/* Pulsing glow on MetadataONE reveal logo */
.reveal-logo {
    text-shadow: 0 0 40px rgba(255, 107, 0, 0.3);
    animation: revealGlow 2s ease-in-out infinite alternate;
}

@keyframes revealGlow {
    0% { text-shadow: 0 0 20px rgba(255, 107, 0, 0.2); }
    100% { text-shadow: 0 0 60px rgba(255, 107, 0, 0.4), 0 0 100px rgba(255, 107, 0, 0.1); }
}

/* Orange accent line animation on section labels */
.section-label::after {
    content: '';
    display: block;
    width: 40px;
    height: 2px;
    background: var(--orange);
    margin-top: 8px;
    animation: accentGrow 0.6s ease-out forwards;
}

@keyframes accentGrow {
    from { width: 0; }
    to { width: 40px; }
}

/* Animated border on proof-card--mone */
.proof-card--mone {
    position: relative;
    overflow: hidden;
}
.proof-card--mone::before {
    content: '';
    position: absolute;
    top: -1px;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--orange), transparent);
    animation: moneShine 3s ease-in-out infinite;
}

@keyframes moneShine {
    0% { transform: translateX(-100%); }
    50% { transform: translateX(100%); }
    100% { transform: translateX(-100%); }
}

/* ═══════════════════════════════════════
   SLIDE ILLUSTRATIONS
   ═══════════════════════════════════════ */

.slide-illustration {
    display: flex;
    justify-content: center;
    margin: 16px 0;
}
.illustration-svg {
    max-width: 100%;
    height: auto;
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 1 REDESIGN — CINEMATIC TITLE
   ═══════════════════════════════════════════════════════════════ */

.slide--title {
    background: #050510 !important;
    overflow: hidden;
}

/* Animated grid background */
.s1-grid-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    background-image:
        linear-gradient(rgba(255,107,0,0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,107,0,0.06) 1px, transparent 1px);
    background-size: 60px 60px;
    animation: s1GridDrift 20s linear infinite;
    mask-image: radial-gradient(ellipse 80% 70% at 50% 50%, black 30%, transparent 80%);
    -webkit-mask-image: radial-gradient(ellipse 80% 70% at 50% 50%, black 30%, transparent 80%);
}

@keyframes s1GridDrift {
    0% { transform: translate(0, 0); }
    100% { transform: translate(60px, 60px); }
}

/* Floating particles */
.s1-particles {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
}

.s1-particle {
    position: absolute;
    border-radius: 50%;
    background: #FF6B00;
    opacity: 0;
    animation: s1Float 8s ease-in-out infinite;
}

.s1-particle--1 { width: 4px; height: 4px; left: 10%; top: 20%; animation-delay: 0s; animation-duration: 7s; }
.s1-particle--2 { width: 6px; height: 6px; left: 25%; top: 70%; animation-delay: 1s; animation-duration: 9s; }
.s1-particle--3 { width: 3px; height: 3px; left: 45%; top: 15%; animation-delay: 2s; animation-duration: 6s; }
.s1-particle--4 { width: 5px; height: 5px; left: 65%; top: 80%; animation-delay: 0.5s; animation-duration: 8s; }
.s1-particle--5 { width: 4px; height: 4px; left: 80%; top: 30%; animation-delay: 3s; animation-duration: 10s; }
.s1-particle--6 { width: 7px; height: 7px; left: 90%; top: 60%; animation-delay: 1.5s; animation-duration: 7.5s; }
.s1-particle--7 { width: 3px; height: 3px; left: 55%; top: 90%; animation-delay: 4s; animation-duration: 8.5s; }
.s1-particle--8 { width: 5px; height: 5px; left: 35%; top: 45%; animation-delay: 2.5s; animation-duration: 9.5s; }

@keyframes s1Float {
    0%, 100% { opacity: 0; transform: translateY(0) scale(1); }
    20% { opacity: 0.6; }
    50% { opacity: 0.4; transform: translateY(-40px) scale(1.3); }
    80% { opacity: 0.5; }
}

.s1-content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100vh;
    padding: 60px 100px !important;
    max-width: 100% !important;
}

.s1-top-line {
    font-family: var(--font-mono);
    font-size: 11px;
    letter-spacing: 4px;
    color: var(--orange);
    margin-bottom: 40px;
    opacity: 0.8;
}

.s1-hero-block {
    display: flex;
    align-items: flex-end;
    gap: 60px;
    margin-bottom: 60px;
}

.s1-title {
    font-size: 120px;
    font-weight: 900;
    color: var(--white);
    line-height: 0.9;
    letter-spacing: -5px;
    text-transform: uppercase;
}

.s1-title-accent {
    color: transparent;
    -webkit-text-stroke: 2px var(--orange);
    display: inline-block;
}

.s1-subtitle-block {
    padding-bottom: 20px;
    max-width: 380px;
}

.s1-subtitle {
    font-size: 22px;
    font-weight: 300;
    color: var(--orange-light);
    line-height: 1.5;
    border-left: 3px solid var(--orange);
    padding-left: 20px;
}

.s1-takeaway {
    background: linear-gradient(135deg, rgba(255,107,0,0.08) 0%, rgba(255,107,0,0.02) 100%);
    border: 1px solid rgba(255,107,0,0.2);
    border-radius: 12px;
    padding: 20px 32px;
    margin-bottom: 50px;
    display: inline-block;
}

.s1-takeaway-label {
    font-family: var(--font-mono);
    font-size: 10px;
    letter-spacing: 3px;
    color: var(--orange);
    margin-bottom: 8px;
    font-weight: 600;
}

.s1-takeaway-items {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.s1-takeaway-item {
    font-size: 15px;
    color: rgba(255,255,255,0.75);
    font-weight: 400;
}

.s1-takeaway-divider {
    color: var(--orange);
    font-weight: 300;
    opacity: 0.5;
}

.s1-author {
    display: flex;
    align-items: center;
    gap: 20px;
}

.s1-author-photo-wrap {
    position: relative;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    flex-shrink: 0;
}

.s1-author-photo-wrap::before {
    content: '';
    position: absolute;
    inset: -6px;
    border-radius: 50%;
    background: conic-gradient(from 0deg, #FF6B00, transparent, #FF6B00);
    animation: s1PhotoSpin 4s linear infinite;
    opacity: 0.6;
}

@keyframes s1PhotoSpin {
    to { transform: rotate(360deg); }
}

.s1-author-photo {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    object-fit: cover;
    position: relative;
    z-index: 1;
    border: 3px solid #0A0A0A;
    box-shadow: 0 0 40px rgba(255,107,0,0.3);
}

.s1-author-name {
    font-size: 24px;
    font-weight: 700;
    color: var(--white);
    letter-spacing: -0.5px;
}

.s1-author-role {
    font-size: 15px;
    color: var(--gray-400);
    margin-top: 2px;
}

.s1-author-cred {
    font-size: 12px;
    color: var(--gray-600);
    margin-top: 6px;
    letter-spacing: 0.5px;
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 2 REDESIGN — BILLBOARD STATS
   ═══════════════════════════════════════════════════════════════ */

.slide--s2 {
    background: #050510 !important;
    position: relative;
    overflow: hidden;
}

.slide--s2 .nav-btn {
    background: var(--gray-800);
    border-color: var(--gray-700);
    color: var(--gray-400);
}

.slide--s2 .slide-counter {
    color: var(--gray-500);
}

.s2-bg-gradient {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 60% 50% at 30% 20%, rgba(255,107,0,0.08) 0%, transparent 60%),
        radial-gradient(ellipse 40% 40% at 80% 80%, rgba(255,107,0,0.05) 0%, transparent 60%);
    z-index: 0;
}

.s2-content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100vh;
    text-align: center;
    max-width: 100% !important;
    padding: 40px 80px !important;
}

.s2-top-label {
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 4px;
    color: var(--orange);
    text-transform: uppercase;
    margin-bottom: 16px;
}

.s2-headline {
    font-size: 44px;
    font-weight: 800;
    color: var(--white);
    line-height: 1.15;
    letter-spacing: -1px;
    margin-bottom: 40px;
}

.s2-headline-accent {
    color: var(--orange);
}

.s2-stats-container {
    display: flex;
    justify-content: center;
    gap: 60px;
    margin-bottom: 30px;
    width: 100%;
}

.s2-stat {
    text-align: center;
    position: relative;
}

.s2-stat::after {
    content: '';
    position: absolute;
    right: -30px;
    top: 20%;
    height: 60%;
    width: 1px;
    background: rgba(255,107,0,0.2);
}

.s2-stat:last-child::after {
    display: none;
}

.s2-stat-number {
    font-size: 110px;
    font-weight: 900;
    color: var(--white);
    line-height: 1;
    letter-spacing: -4px;
    text-shadow: 0 0 80px rgba(255,107,0,0.3);
}

.s2-stat-symbol {
    color: var(--orange);
    font-size: 70px;
    font-weight: 800;
}

.s2-stat-label {
    font-size: 14px;
    color: rgba(255,255,255,0.45);
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-top: 4px;
    font-weight: 500;
}

.s2-hub-illustration {
    display: flex;
    justify-content: center;
    margin-top: 10px;
}

.s2-hub-svg {
    max-width: 700px;
    width: 100%;
    height: auto;
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 3 REDESIGN — FULL-SCREEN ROADMAP
   ═══════════════════════════════════════════════════════════════ */

.slide--s3 {
    background: #050510 !important;
    position: relative;
    overflow: hidden;
}

.slide--s3 .nav-btn {
    background: var(--gray-800);
    border-color: var(--gray-700);
    color: var(--gray-400);
}

.slide--s3 .slide-counter {
    color: var(--gray-500);
}

.s3-bg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 50% 50% at 10% 50%, rgba(255,107,0,0.06) 0%, transparent 60%),
        radial-gradient(ellipse 50% 50% at 90% 40%, rgba(255,107,0,0.04) 0%, transparent 60%);
    z-index: 0;
}

.s3-content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100vh;
    max-width: 100% !important;
    padding: 40px 60px !important;
}

.s3-header {
    text-align: center;
    margin-bottom: 20px;
}

.s3-label {
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 4px;
    color: var(--orange);
    text-transform: uppercase;
    margin-bottom: 12px;
}

.s3-headline {
    font-size: 32px;
    font-weight: 700;
    color: var(--white);
    letter-spacing: -0.5px;
}

.s3-roadmap {
    display: flex;
    justify-content: center;
    width: 100%;
    flex: 1;
    align-items: center;
}

.s3-roadmap-svg {
    width: 100%;
    max-width: 1100px;
    height: auto;
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 14 REDESIGN — DRAMATIC METADATAONE REVEAL
   ═══════════════════════════════════════════════════════════════ */

.slide--reveal {
    background: #050510 !important;
    position: relative;
    overflow: hidden;
}

.slide--reveal::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1200px;
    height: 1200px;
    background: radial-gradient(circle, rgba(255, 107, 0, 0.12) 0%, rgba(255, 107, 0, 0.03) 40%, transparent 70%);
    z-index: 0;
    animation: s14OrbPulse 4s ease-in-out infinite;
}

@keyframes s14OrbPulse {
    0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.7; }
    50% { transform: translate(-50%, -50%) scale(1.15); opacity: 1; }
}

/* Floating particles */
.s14-particles {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}
.s14-particle {
    position: absolute;
    width: 4px;
    height: 4px;
    background: var(--orange);
    border-radius: 50%;
    opacity: 0;
    animation: s14Float 6s ease-in-out infinite;
}
.s14-p1  { left: 10%; top: 20%; animation-delay: 0s; animation-duration: 7s; }
.s14-p2  { left: 85%; top: 15%; animation-delay: 0.8s; animation-duration: 5s; }
.s14-p3  { left: 20%; top: 80%; animation-delay: 1.5s; animation-duration: 8s; }
.s14-p4  { left: 75%; top: 70%; animation-delay: 2.2s; animation-duration: 6s; }
.s14-p5  { left: 50%; top: 10%; animation-delay: 0.5s; animation-duration: 9s; }
.s14-p6  { left: 30%; top: 50%; animation-delay: 3s; animation-duration: 7s; }
.s14-p7  { left: 60%; top: 85%; animation-delay: 1s; animation-duration: 6s; }
.s14-p8  { left: 90%; top: 45%; animation-delay: 2.5s; animation-duration: 8s; }
.s14-p9  { left: 5%; top: 60%; animation-delay: 1.8s; animation-duration: 5s; }
.s14-p10 { left: 45%; top: 90%; animation-delay: 3.5s; animation-duration: 7s; }
.s14-p11 { left: 70%; top: 30%; animation-delay: 0.3s; animation-duration: 9s; }
.s14-p12 { left: 15%; top: 40%; animation-delay: 4s; animation-duration: 6s; }

@keyframes s14Float {
    0% { opacity: 0; transform: translateY(20px) scale(0.5); }
    20% { opacity: 0.6; }
    50% { opacity: 0.3; transform: translateY(-30px) scale(1); }
    80% { opacity: 0.5; }
    100% { opacity: 0; transform: translateY(-60px) scale(0.5); }
}

/* Glow orbs */
.s14-glow-orb {
    position: absolute;
    top: 45%;
    left: 50%;
    width: 600px;
    height: 600px;
    transform: translate(-50%, -50%);
    background: radial-gradient(circle, rgba(255, 107, 0, 0.15) 0%, transparent 60%);
    z-index: 1;
    animation: s14GlowBreathe 5s ease-in-out infinite;
    pointer-events: none;
}
.s14-glow-orb-2 {
    top: 50% !important;
    width: 400px !important;
    height: 400px !important;
    background: radial-gradient(circle, rgba(255, 140, 51, 0.1) 0%, transparent 50%) !important;
    animation-delay: 2s !important;
    animation-duration: 3.5s !important;
}
@keyframes s14GlowBreathe {
    0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.6; }
    50% { transform: translate(-50%, -50%) scale(1.3); opacity: 1; }
}

/* Build lines */
.s14-build {
    margin-bottom: 24px;
}
.s14-line {
    font-size: 26px !important;
    color: var(--gray-300) !important;
    font-weight: 400 !important;
    margin-bottom: 16px !important;
    letter-spacing: -0.3px;
    text-align: center;
}

/* Divider converge */
.s14-divider {
    text-align: center;
    margin-bottom: 20px;
    opacity: 0.7;
}

/* Hero section */
.s14-hero {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Antenna */
.s14-antenna-wrap {
    margin-bottom: 16px;
}
.s14-antenna-svg {
    filter: drop-shadow(0 0 20px rgba(255, 107, 0, 0.4));
}
.s14-antenna-core {
    animation: s14CorePulse 2s ease-in-out infinite;
}
@keyframes s14CorePulse {
    0%, 100% { r: 4; opacity: 1; }
    50% { r: 6; opacity: 0.7; }
}

/* Signal waves animation */
.s14-wave {
    animation: s14WavePulse 2s ease-in-out infinite;
}
.s14-wave1 { animation-delay: 0s; }
.s14-wave2 { animation-delay: 0.3s; }
.s14-wave3 { animation-delay: 0s; }
.s14-wave4 { animation-delay: 0.3s; }
@keyframes s14WavePulse {
    0%, 100% { opacity: 0.1; transform: scaleX(0.9); }
    50% { opacity: 0.7; transform: scaleX(1.1); }
}

/* Logo — massive, glowing */
.s14-logo {
    font-size: 100px !important;
    font-weight: 900 !important;
    color: var(--white) !important;
    letter-spacing: -4px !important;
    margin-bottom: 8px !important;
    text-shadow:
        0 0 40px rgba(255, 107, 0, 0.4),
        0 0 80px rgba(255, 107, 0, 0.2),
        0 0 120px rgba(255, 107, 0, 0.1) !important;
    animation: s14LogoGlow 3s ease-in-out infinite alternate !important;
    line-height: 1.1;
}
.s14-one {
    color: var(--orange);
    text-shadow:
        0 0 30px rgba(255, 107, 0, 0.6),
        0 0 60px rgba(255, 107, 0, 0.3);
}
@keyframes s14LogoGlow {
    0% {
        text-shadow: 0 0 30px rgba(255, 107, 0, 0.3), 0 0 60px rgba(255, 107, 0, 0.15);
    }
    100% {
        text-shadow: 0 0 60px rgba(255, 107, 0, 0.5), 0 0 120px rgba(255, 107, 0, 0.25), 0 0 180px rgba(255, 107, 0, 0.1);
    }
}

/* Tagline pulses */
.s14-tagline {
    font-size: 28px !important;
    font-weight: 500 !important;
    color: var(--orange) !important;
    letter-spacing: 2px !important;
    text-transform: uppercase;
    margin-bottom: 32px !important;
    animation: s14TaglinePulse 3s ease-in-out infinite;
}
@keyframes s14TaglinePulse {
    0%, 100% { opacity: 0.8; letter-spacing: 2px; }
    50% { opacity: 1; letter-spacing: 4px; }
}

/* CTA button — impossible to miss */
.s14-cta-wrap {
    margin-top: 8px;
}
.s14-cta-btn {
    display: inline-block;
    background: linear-gradient(135deg, var(--orange), #FF8C33, var(--orange));
    background-size: 200% 200%;
    animation: s14CtaShimmer 3s ease-in-out infinite;
    padding: 20px 48px;
    border-radius: 16px;
    text-align: center;
    cursor: pointer;
    position: relative;
    box-shadow:
        0 0 30px rgba(255, 107, 0, 0.4),
        0 0 60px rgba(255, 107, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
}
.s14-cta-btn::before {
    content: '';
    position: absolute;
    inset: -4px;
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(255,107,0,0.5), rgba(255,140,51,0.2), rgba(255,107,0,0.5));
    z-index: -1;
    filter: blur(12px);
    animation: s14CtaGlowPulse 2.5s ease-in-out infinite;
}
@keyframes s14CtaGlowPulse {
    0%, 100% { opacity: 0.6; transform: scale(1); }
    50% { opacity: 1; transform: scale(1.05); }
}
.s14-cta-text {
    display: block;
    font-size: 22px;
    font-weight: 800;
    color: white;
    letter-spacing: -0.5px;
}
.s14-cta-sub {
    display: block;
    font-size: 14px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.85);
    margin-top: 6px;
}
@keyframes s14CtaShimmer {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 15 REDESIGN — CAPABILITIES (CLEAN & BOLD)
   ═══════════════════════════════════════════════════════════════ */

.slide--capabilities {
    background: var(--gray-900) !important;
}
.slide--capabilities .slide__content--centered {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
    max-width: 1100px;
}

.s15-top {
    text-align: center;
    margin-bottom: 32px;
    width: 100%;
}
.s15-top .section-label {
    text-align: center;
}
.s15-top .section-label::after {
    margin: 8px auto 0;
}
.s15-headline {
    font-size: 42px !important;
    font-weight: 900;
    color: var(--white);
    letter-spacing: -1.5px;
    line-height: 1.15;
    margin-top: 12px;
}

.s15-capabilities {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    width: 100%;
    margin-bottom: 36px;
}
.s15-cap {
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    border-radius: 16px !important;
    padding: 28px 24px !important;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.s15-cap:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(255, 107, 0, 0.1);
}
.s15-cap-icon {
    width: 56px;
    height: 56px;
    flex-shrink: 0;
}
.s15-cap h3 {
    font-size: 18px !important;
    font-weight: 700;
    color: var(--white);
}
.s15-cap-desc {
    font-size: 15px;
    color: var(--gray-400);
    line-height: 1.5;
}

/* Stats bar */
.s15-stats-bar {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
    padding: 20px 40px;
    background: rgba(255,255,255,0.04);
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,0.1);
    margin-bottom: 32px;
    width: 100%;
    max-width: 800px;
}
.s15-stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}
.s15-stat-num {
    font-size: 28px;
    font-weight: 900;
    color: var(--orange);
    letter-spacing: -1px;
}
.s15-stat-label {
    font-size: 12px;
    color: var(--gray-400);
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.s15-stat-divider {
    width: 1px;
    height: 36px;
    background: rgba(255,255,255,0.1);
}

/* Demo CTA — HUGE */
.s15-demo-cta {
    text-align: center;
    background: linear-gradient(135deg, #0A0A0A, #1A1A1A);
    padding: 32px 64px;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    width: 100%;
    max-width: 700px;
}
.s15-demo-cta::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255,107,0,0.1), transparent, rgba(255,107,0,0.05));
    pointer-events: none;
}
.s15-demo-cta::after {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,107,0,0.08), transparent);
    animation: s15Shimmer 4s ease-in-out infinite;
}
@keyframes s15Shimmer {
    0% { left: -100%; }
    50% { left: 100%; }
    100% { left: 100%; }
}
.s15-demo-headline {
    font-size: 26px;
    font-weight: 800;
    color: white;
    letter-spacing: -0.5px;
    margin-bottom: 8px;
    position: relative;
    z-index: 1;
}
.s15-demo-url {
    font-family: var(--font-mono);
    font-size: 18px;
    color: var(--orange);
    font-weight: 600;
    letter-spacing: 0.5px;
    position: relative;
    z-index: 1;
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 16 REDESIGN — TAKEAWAYS (STATEMENT STYLE)
   ═══════════════════════════════════════════════════════════════ */

.slide--takeaways {
    background: var(--gray-900) !important;
}
.slide--takeaways .slide__content {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 900px;
}

.s16-takeaways {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
}

.s16-takeaway {
    display: flex;
    align-items: center;
    gap: 32px;
    padding: 22px 0;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}
.s16-takeaway:first-child {
    padding-top: 0;
}
.s16-takeaway:last-child {
    border-bottom: none;
}

.s16-num {
    font-size: 56px;
    font-weight: 900;
    color: var(--orange);
    opacity: 0.25;
    min-width: 100px;
    text-align: right;
    letter-spacing: -3px;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.s16-text {
    flex: 1;
}
.s16-title {
    font-size: 26px;
    font-weight: 800;
    color: var(--white);
    letter-spacing: -0.5px;
    margin-bottom: 4px;
}
.s16-sub {
    font-size: 16px;
    color: var(--gray-400);
    line-height: 1.5;
}

/* Highlight the 5th takeaway */
.s16-takeaway--highlight {
    background: linear-gradient(135deg, rgba(255,107,0,0.06), rgba(255,107,0,0.12));
    border-radius: 16px;
    padding: 22px 28px !important;
    margin-top: 8px;
    border-bottom: none !important;
    border: 1px solid rgba(255,107,0,0.25);
}
.s16-takeaway--highlight .s16-num {
    opacity: 0.6;
    color: var(--orange);
}
.s16-takeaway--highlight .s16-title {
    color: var(--orange);
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 17 REDESIGN — Q&A / CLOSE
   ═══════════════════════════════════════════════════════════════ */

.slide--qa {
    background: #050510 !important;
    overflow: hidden;
    position: relative;
}

/* Subtle animated grid background */
.s17-bg-grid {
    position: absolute;
    inset: 0;
    z-index: 0;
    background-image:
        linear-gradient(rgba(255,107,0,0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,107,0,0.04) 1px, transparent 1px);
    background-size: 60px 60px;
    animation: s17GridDrift 20s linear infinite;
}
@keyframes s17GridDrift {
    0% { transform: translate(0, 0); }
    100% { transform: translate(60px, 60px); }
}

.s17-glow {
    position: absolute;
    top: 30%;
    left: 50%;
    width: 800px;
    height: 500px;
    transform: translate(-50%, -50%);
    background: radial-gradient(ellipse, rgba(255,107,0,0.08) 0%, transparent 60%);
    z-index: 1;
    pointer-events: none;
}

.s17-headline {
    font-size: 88px !important;
    font-weight: 900 !important;
    color: var(--white) !important;
    letter-spacing: -3px !important;
    margin-bottom: 8px !important;
    text-shadow: 0 0 60px rgba(255,107,0,0.15);
}

.s17-sub {
    font-size: 22px !important;
    color: var(--gray-400) !important;
    margin-bottom: 36px !important;
}

.s17-contact-block {
    text-align: center;
    margin-bottom: 28px;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}
.s17-contact-name {
    font-size: 28px;
    font-weight: 800;
    color: var(--white);
    letter-spacing: -0.5px;
    margin-bottom: 8px;
}
.s17-contact-links {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-size: 16px;
    color: var(--gray-400);
}
.s17-dot {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--gray-600);
    display: inline-block;
}
.s17-contact-product {
    margin-top: 10px;
    font-size: 20px;
    font-weight: 700;
    color: var(--orange);
    letter-spacing: 0.5px;
}

/* Recap tags */
.s17-recap {
    text-align: center;
    margin-bottom: 32px;
}
.s17-recap-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.15em;
    color: var(--gray-500);
    text-transform: uppercase;
    margin-bottom: 12px;
}
.s17-recap-items {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
}
.s17-recap-tag {
    font-size: 13px;
    font-weight: 600;
    color: var(--gray-300);
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.08);
    padding: 6px 16px;
    border-radius: 20px;
}
.s17-recap-tag--highlight {
    color: var(--orange);
    background: rgba(255,107,0,0.1);
    border-color: rgba(255,107,0,0.25);
}

/* QR section — large and obvious */
.s17-qr-section {
    display: flex;
    align-items: center;
    gap: 24px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 16px;
    padding: 24px 32px;
    max-width: 520px;
    margin: 0 auto;
    width: 100%;
    box-sizing: border-box;
}
.s17-qr-wrap {
    flex-shrink: 0;
}
.s17-qr-wrap .qr-code {
    width: 140px;
    height: 140px;
    background: white;
    border-radius: 12px;
    padding: 10px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #333;
    word-break: break-all;
}
.s17-qr-text {
    text-align: left;
    min-width: 0;
    flex: 1;
}
.s17-qr-headline {
    font-size: 20px;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 6px;
}
.s17-qr-url {
    font-family: var(--font-mono);
    font-size: 15px;
    color: var(--orange);
    font-weight: 600;
    letter-spacing: 0.3px;
    word-break: break-all;
    overflow-wrap: break-word;
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 9 REDESIGN — PROOF (Dark, dramatic, 3 giant stats)
   ═══════════════════════════════════════════════════════════════ */

.slide--proof-v2 {
    background: #0A0A0A !important;
    position: relative;
    overflow: hidden;
}

.slide--proof-v2::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1200px;
    height: 1200px;
    background: radial-gradient(circle, rgba(255, 107, 0, 0.04) 0%, transparent 60%);
    pointer-events: none;
}

.section-label--light {
    color: rgba(255, 255, 255, 0.5) !important;
}

.section-label--light::after {
    background: var(--orange) !important;
}

.proof-v2-grid {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin-top: 40px;
}

.proof-v2-card {
    text-align: center;
    padding: 40px 60px;
    flex: 1;
    max-width: 400px;
}

.proof-v2-company {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 4px;
    color: rgba(255, 255, 255, 0.35);
    margin-bottom: 20px;
}

.proof-v2-stat {
    font-size: 64px;
    font-weight: 900;
    color: #FFFFFF;
    line-height: 1.05;
    letter-spacing: -2px;
    margin-bottom: 12px;
    background: linear-gradient(135deg, #FFFFFF 0%, #FF6B00 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.proof-v2-context {
    font-size: 16px;
    color: rgba(255, 255, 255, 0.4);
    font-weight: 400;
}

.proof-v2-divider {
    width: 1px;
    height: 160px;
    background: linear-gradient(180deg, transparent, rgba(255, 107, 0, 0.3), transparent);
    flex-shrink: 0;
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 10 REDESIGN — TOOLKIT (Clean, gift-like)
   ═══════════════════════════════════════════════════════════════ */

.slide--toolkit-v2 {
    background: #0A0A0A !important;
    position: relative;
}

.slide--toolkit-v2::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(ellipse 60% 50% at 50% 40%, rgba(255, 107, 0, 0.03) 0%, transparent 100%);
    pointer-events: none;
}

.toolkit-v2-headline {
    font-size: 48px;
    font-weight: 800;
    color: #FFFFFF;
    letter-spacing: -1.5px;
    margin-bottom: 56px;
    line-height: 1.1;
}

.toolkit-v2-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 28px;
    max-width: 1000px;
    margin: 0 auto;
}

.toolkit-v2-card {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    padding: 36px 24px;
    text-align: center;
    transition: all 0.3s ease;
}

.toolkit-v2-card:hover {
    border-color: rgba(255, 107, 0, 0.3);
    background: rgba(255, 107, 0, 0.05);
    transform: translateY(-4px);
}

.toolkit-v2-card--highlight {
    border-color: rgba(255, 107, 0, 0.4) !important;
    background: rgba(255, 107, 0, 0.06) !important;
    box-shadow: 0 0 40px rgba(255, 107, 0, 0.08);
}

.toolkit-v2-icon {
    margin-bottom: 20px;
}

.toolkit-v2-name {
    font-size: 20px;
    font-weight: 700;
    color: #FFFFFF;
    margin-bottom: 10px;
}

.toolkit-v2-desc {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.4);
    line-height: 1.5;
}

.toolkit-v2-footer {
    margin-top: 48px;
    font-size: 15px;
    color: rgba(255, 255, 255, 0.3);
    letter-spacing: 0.5px;
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 11 REDESIGN — PIVOT (Gut-punch, chasm visual)
   ═══════════════════════════════════════════════════════════════ */

.slide--pivot-v2 {
    background: #0A0A0A !important;
    position: relative;
    overflow: hidden;
}

.pivot-v2-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}

.pivot-v2-question {
    font-size: 88px;
    font-weight: 900;
    color: #FFFFFF;
    line-height: 1.05;
    letter-spacing: -3px;
    text-transform: lowercase;
    margin-bottom: 48px;
    text-shadow: 0 0 80px rgba(255, 107, 0, 0.15);
}

.pivot-v2-stat {
    font-size: 28px;
    font-weight: 700;
    color: #dc2626;
    letter-spacing: -0.5px;
    padding: 16px 40px;
    border: 2px solid rgba(220, 38, 38, 0.3);
    border-radius: 8px;
    display: inline-block;
    background: rgba(220, 38, 38, 0.06);
    animation: statPulse 3s ease-in-out infinite;
}

@keyframes statPulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(220, 38, 38, 0); }
    50% { box-shadow: 0 0 40px 8px rgba(220, 38, 38, 0.1); }
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 12 REDESIGN — DANGER / LIMITATIONS (Newspaper headlines)
   ═══════════════════════════════════════════════════════════════ */

.slide--danger-v2 {
    background: #0A0A0A !important;
    position: relative;
    overflow: hidden;
}

.danger-v2-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
}

.section-label--red {
    color: #dc2626 !important;
}

.section-label--red::after {
    background: #dc2626 !important;
}

.danger-v2-headlines {
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-width: 900px;
    margin: 40px auto 0;
}

.danger-v2-headline {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 24px 32px;
    background: rgba(220, 38, 38, 0.04);
    border-left: 4px solid #dc2626;
    border-radius: 0 8px 8px 0;
    transition: all 0.3s ease;
}

.danger-v2-headline:hover {
    background: rgba(220, 38, 38, 0.08);
    transform: translateX(4px);
}

.danger-v2-tag {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2px;
    color: #dc2626;
    background: rgba(220, 38, 38, 0.12);
    padding: 6px 12px;
    border-radius: 4px;
    white-space: nowrap;
    flex-shrink: 0;
    min-width: 130px;
    text-align: center;
}

.danger-v2-headline h3 {
    font-size: 22px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.3;
    letter-spacing: -0.3px;
}

/* ═══════════════════════════════════════════════════════════════
   SLIDE 13 REDESIGN — ENTERPRISE REALITY (Clean VS + headlines)
   ═══════════════════════════════════════════════════════════════ */

.slide--enterprise-v2 {
    background: #0A0A0A !important;
    position: relative;
    overflow: hidden;
}

.slide--enterprise-v2::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(ellipse 70% 60% at 50% 30%, rgba(255, 107, 0, 0.02) 0%, transparent 100%);
    pointer-events: none;
}

.enterprise-v2-vs {
    display: flex;
    align-items: stretch;
    gap: 0;
    margin: 32px 0 28px;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.enterprise-v2-col {
    flex: 1;
    padding: 32px 36px;
}

.enterprise-v2-col h3 {
    font-size: 20px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 24px;
    padding-bottom: 16px;
}

.enterprise-v2-col--risk h3 {
    color: rgba(255, 255, 255, 0.4);
    border-bottom: 2px solid rgba(255, 255, 255, 0.1);
}

.enterprise-v2-col--solve h3 {
    color: #FF6B00;
    border-bottom: 2px solid rgba(255, 107, 0, 0.4);
}

.enterprise-v2-col ul {
    list-style: none;
    padding: 0;
}

.enterprise-v2-col li {
    font-size: 17px;
    padding: 10px 0 10px 28px;
    position: relative;
    line-height: 1.5;
}

.enterprise-v2-col--risk li {
    color: rgba(255, 255, 255, 0.5);
}

.enterprise-v2-col--risk li::before {
    content: '\2013';
    position: absolute;
    left: 0;
    color: rgba(255, 255, 255, 0.2);
}

.enterprise-v2-col--solve li {
    color: rgba(255, 255, 255, 0.7);
}

.enterprise-v2-col--solve li::before {
    content: '\2713';
    position: absolute;
    left: 0;
    color: #FF6B00;
    font-weight: 700;
}

.enterprise-v2-vs-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 800;
    color: rgba(255, 255, 255, 0.2);
    letter-spacing: 3px;
    padding: 0 12px;
    position: relative;
}

.enterprise-v2-vs-badge::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(255, 255, 255, 0.1), transparent);
}

/* Horror stories as newspaper headlines */
.horror-v2-section {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid rgba(220, 38, 38, 0.15);
}

.horror-v2-label {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #dc2626;
    margin-bottom: 20px;
    text-align: center;
}

.horror-v2-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.horror-v2-card {
    background: rgba(220, 38, 38, 0.04);
    border: 1px solid rgba(220, 38, 38, 0.15);
    border-radius: 8px;
    padding: 24px;
    text-align: center;
}

.horror-v2-company {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 3px;
    color: #dc2626;
    margin-bottom: 12px;
}

.horror-v2-headline {
    font-size: 16px;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.5;
}

.horror-v2-headline strong {
    color: rgba(255, 255, 255, 0.9);
    font-weight: 700;
}

.enterprise-v2-bridge {
    margin-top: 32px;
    font-size: 28px;
    font-weight: 800;
    color: #FFFFFF;
    text-align: center;
    letter-spacing: -0.5px;
    line-height: 1.4;
    background: linear-gradient(135deg, #FFFFFF 0%, #FF6B00 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ═══════════════════════════════════════
   REDESIGNED SLIDES 4-8: DRAMATIC STYLES
   ═══════════════════════════════════════ */

/* === SLIDE 4: Anthropic === */
.slide4-redesign {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0;
}

.s4-hero-transformation {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    margin: 24px 0 16px;
}

.s4-before-block, .s4-after-block {
    text-align: center;
    padding: 24px 40px;
    border-radius: 16px;
}

.s4-before-block {
    background: var(--gray-50);
    border: 2px solid var(--gray-200);
}

.s4-after-block {
    background: rgba(255, 107, 0, 0.06);
    border: 2px solid var(--orange);
    box-shadow: 0 0 40px rgba(255, 107, 0, 0.15);
}

.s4-big-time {
    font-size: 72px;
    font-weight: 900;
    line-height: 1;
    color: var(--gray-400);
    font-family: var(--font-mono);
    letter-spacing: -3px;
}

.s4-big-time--orange {
    color: var(--orange);
    text-shadow: 0 0 40px rgba(255, 107, 0, 0.3);
}

.s4-time-label {
    font-size: 14px;
    color: var(--gray-500);
    margin-top: 8px;
    font-weight: 500;
}

.s4-arrow-container {
    flex-shrink: 0;
}

.s4-one-liner {
    font-size: 20px;
    color: var(--gray-600);
    text-align: center;
    line-height: 1.6;
    margin-bottom: 20px;
    font-weight: 400;
}

.s4-mockup-row {
    display: flex;
    gap: 20px;
    margin-bottom: 16px;
}

.s4-mockup-figma {
    flex: 1;
    box-shadow: 0 4px 24px rgba(0,0,0,0.08);
    border-radius: 12px !important;
    border: 1px solid var(--gray-200) !important;
}

.s4-mockup-csv {
    flex: 1.3;
    box-shadow: 0 4px 24px rgba(0,0,0,0.08);
    border-radius: 12px !important;
    border: 1px solid var(--gray-200) !important;
    overflow: hidden;
}

.s4-figma-body {
    gap: 10px !important;
    padding: 12px !important;
}

.s4-thumb {
    min-height: 64px !important;
    padding: 14px 10px 8px !important;
}

.s4-thumb .figma-thumb-text {
    font-size: 11px !important;
}

.s4-thumb .figma-thumb-cta {
    font-size: 9px !important;
    padding: 3px 10px !important;
}

.s4-pullquote {
    font-size: 22px !important;
    font-style: italic;
    color: var(--gray-600);
    text-align: center;
    padding: 24px 48px;
    position: relative;
    line-height: 1.5;
    margin-top: 8px;
    border: none;
    background: none;
}

.s4-pullquote::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: var(--orange);
    border-radius: 2px;
}

.s4-pullquote cite {
    display: block;
    font-style: normal;
    font-size: 14px;
    font-weight: 600;
    color: var(--orange);
    margin-top: 12px;
}

/* === SLIDE 5: SaaStr (dark background) === */
.slide--dark-bg {
    background: var(--gray-900) !important;
    color: var(--white);
}

.slide--dark-bg .play-badge {
    background: var(--orange);
}

.slide--dark-bg .slide-headline {
    color: var(--white) !important;
}

.slide5-redesign {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.s5-headline {
    color: var(--white) !important;
}

.s5-hero-stat {
    margin: 32px 0 24px;
}

.s5-hero-number {
    font-size: 140px;
    font-weight: 900;
    color: var(--orange);
    font-family: var(--font-mono);
    line-height: 1;
    letter-spacing: -6px;
    text-shadow: 0 0 80px rgba(255, 107, 0, 0.4);
}

.s5-hero-context {
    font-size: 22px;
    color: var(--gray-400);
    margin-top: 8px;
    font-weight: 400;
}

.s5-equation {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin-bottom: 32px;
}

.s5-eq-block {
    background: var(--gray-800);
    border-radius: 16px;
    padding: 20px 32px;
    min-width: 110px;
    border: 1px solid var(--gray-700);
}

.s5-eq-block--accent {
    border-color: var(--orange);
    background: rgba(255, 107, 0, 0.1);
}

.s5-eq-block--result {
    border-color: #28CA41;
    background: rgba(40, 202, 65, 0.08);
}

.s5-eq-num {
    font-size: 48px;
    font-weight: 900;
    color: var(--white);
    font-family: var(--font-mono);
    line-height: 1;
}

.s5-eq-block--accent .s5-eq-num {
    color: var(--orange);
}

.s5-eq-block--result .s5-eq-num {
    color: #28CA41;
}

.s5-eq-label {
    font-size: 13px;
    color: var(--gray-400);
    margin-top: 6px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 500;
}

.s5-eq-plus, .s5-eq-equals {
    font-size: 36px;
    font-weight: 300;
    color: var(--gray-500);
}

.s5-metrics-bar {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 20px 40px;
    background: var(--gray-800);
    border-radius: 16px;
    border: 1px solid var(--gray-700);
    margin-bottom: 24px;
    width: 100%;
    max-width: 800px;
}

.s5-metric {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    flex: 1;
}

.s5-metric-value {
    font-size: 28px;
    font-weight: 800;
    color: var(--orange);
    font-family: var(--font-mono);
}

.s5-metric-label {
    font-size: 12px;
    color: var(--gray-400);
    line-height: 1.3;
}

.s5-metric-divider {
    width: 1px;
    height: 40px;
    background: var(--gray-700);
    flex-shrink: 0;
}

.s5-pullquote {
    color: var(--gray-400) !important;
    max-width: 600px;
}

.s5-pullquote::before {
    background: var(--orange) !important;
}

.s5-pullquote cite {
    color: var(--orange) !important;
}

.s5-tagline {
    margin-top: 32px;
    font-size: 22px;
    font-weight: 600;
    color: var(--gray-300);
    font-style: italic;
    text-align: center;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

/* === SLIDE 6: Karpathy Loop === */
.slide6-redesign {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 32px !important;
    padding-bottom: 20px !important;
}

.s6-loop-hero {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 48px;
    margin-top: 16px;
}

.s6-loop-svg {
    flex-shrink: 0;
}

.slide.active .s6-loop-progress {
    animation: s6LoopSpin 3s ease-in-out infinite;
}

@keyframes s6LoopSpin {
    0% { stroke-dashoffset: 1068; }
    50% { stroke-dashoffset: 0; }
    100% { stroke-dashoffset: -1068; }
}

.s6-stats-column {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.s6-stat-card {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 12px;
    padding: 16px 28px;
    display: flex;
    align-items: baseline;
    gap: 16px;
}

.s6-stat-card--dim {
    opacity: 0.6;
}

.s6-stat-num {
    font-size: 44px;
    font-weight: 900;
    color: var(--orange);
    font-family: var(--font-mono);
    line-height: 1;
    min-width: 80px;
}

.s6-stat-num--green {
    color: #28CA41;
}

.s6-stat-num--dim {
    color: var(--gray-500);
}

.s6-stat-desc {
    font-size: 16px;
    color: var(--gray-400);
    font-weight: 500;
}

/* === SLIDE 7: Auto-Improving Skills === */
.slide7-redesign {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.s7-hero-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin: 24px 0 16px;
}

.s7-num-block {
    text-align: center;
    padding: 28px 48px;
    border-radius: 20px;
}

.s7-num-block--before {
    background: rgba(255,255,255,0.04);
    border: 2px solid rgba(255,255,255,0.1);
}

.s7-num-block--after {
    background: rgba(40, 202, 65, 0.06);
    border: 2px solid #28CA41;
    box-shadow: 0 0 48px rgba(40, 202, 65, 0.15);
}

.s7-giant-num {
    font-size: 96px;
    font-weight: 900;
    color: var(--gray-300);
    font-family: var(--font-mono);
    line-height: 1;
    letter-spacing: -4px;
}

.s7-giant-num--green {
    color: #28CA41;
    text-shadow: 0 0 48px rgba(40, 202, 65, 0.3);
}

.s7-num-label {
    font-size: 15px;
    color: var(--gray-400);
    margin-top: 8px;
    font-weight: 500;
}

.s7-transform-arrow {
    flex-shrink: 0;
}

.s7-tagline {
    font-size: 20px;
    color: var(--gray-400);
    text-align: center;
    margin-bottom: 28px;
    font-weight: 500;
}

.s7-bars-container {
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
    max-width: 700px;
}

.s7-bar-group {
    /* inherits from page */
}

.s7-bar-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 6px;
}

.s7-bar-round {
    font-size: 14px;
    font-weight: 600;
    color: var(--gray-300);
}

.s7-bar-pct {
    font-family: var(--font-mono);
    font-size: 18px;
    font-weight: 800;
    color: var(--gray-300);
}

.s7-bar-pct--before {
    color: #E05A00;
}

.s7-bar-pct--after {
    color: #28CA41;
}

.s7-bar-track {
    width: 100%;
    height: 24px;
    background: rgba(255,255,255,0.08);
    border-radius: 12px;
    overflow: hidden;
}

.s7-bar-track .eval-bar-fill {
    height: 100%;
    border-radius: 12px;
    width: 0%;
    transition: width 1.2s ease-out;
}

.slide.active .s7-bar-track .eval-bar-fill {
    width: var(--target-width);
}

/* === SLIDE 8: Vibe Coding === */
.slide8-redesign {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.s8-subtitle {
    font-size: 22px !important;
    color: var(--gray-400);
    margin-bottom: 20px;
}

.s8-mockup-hero {
    display: flex;
    align-items: stretch;
    gap: 0;
    border-radius: 16px;
    overflow: hidden;
    border: 2px solid rgba(255,255,255,0.1);
    box-shadow: 0 8px 48px rgba(0,0,0,0.3);
    margin-bottom: 24px;
    min-height: 320px;
}

.s8-terminal {
    flex: 1;
    min-height: 300px;
}

.s8-term-body {
    padding: 16px 20px !important;
    gap: 6px !important;
}

.s8-term-line {
    font-size: 13px !important;
    line-height: 1.8 !important;
}

.s8-arrow-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.04);
    padding: 0 16px;
    border-left: 1px solid rgba(255,255,255,0.1);
    border-right: 1px solid rgba(255,255,255,0.1);
    gap: 4px;
}

.s8-arrow-label {
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 700;
    color: var(--orange);
}

.s8-page {
    flex: 1;
    min-height: 300px;
}

.s8-page-body {
    padding: 16px !important;
    gap: 12px !important;
}

.s8-page-hero {
    padding: 20px 8px !important;
}

.s8-page-h1 {
    font-size: 20px !important;
    margin-bottom: 6px !important;
}

.s8-page-cta {
    font-size: 11px !important;
    padding: 6px 20px !important;
}

.s8-meta-reveal {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 0 20px;
}

.s8-meta-line {
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--orange), transparent);
}

.s8-meta-text {
    font-size: 16px;
    color: var(--gray-400);
    text-align: center;
    line-height: 1.5;
    white-space: nowrap;
}

.s8-meta-text strong {
    color: var(--orange);
    font-weight: 700;
}

/* Fix play badge width on slides 4 and 8 */
.slide4-redesign .play-badge,
.slide8-redesign .play-badge {
    display: inline-block;
    width: auto;
}

/* Slide 8 - push content up, center vertically */
.slide8-redesign {
    padding-top: 24px !important;
}

.slide8-redesign .slide-headline {
    margin-bottom: 4px !important;
}
