430 lines
22 KiB
HTML
430 lines
22 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="de">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>Sales Cockpit: Intelligence & Yield Briefing</title>
|
||
<!-- Fonts -->
|
||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||
<link href="https://fonts.googleapis.com/css2?family=Oxanium:wght@400;700;800&family=Poppins:wght@300;400;600&display=swap" rel="stylesheet">
|
||
<!-- Tailwind CSS -->
|
||
<script src="https://cdn.tailwindcss.com"></script>
|
||
<script>
|
||
tailwind.config = {
|
||
theme: {
|
||
extend: {
|
||
colors: {
|
||
roboDark: '#081734',
|
||
roboLight: '#DDEEFE',
|
||
roboCyan: '#00E5FF',
|
||
roboYellow: '#FFD42C',
|
||
roboLogo: '#30BDEA'
|
||
},
|
||
fontFamily: {
|
||
'head': ['Oxanium', 'sans-serif'],
|
||
'body': ['Poppins', 'sans-serif']
|
||
}
|
||
}
|
||
}
|
||
}
|
||
</script>
|
||
<style>
|
||
body {
|
||
background-color: #081734;
|
||
color: #DDEEFE;
|
||
font-family: 'Poppins', sans-serif;
|
||
overflow-x: hidden;
|
||
line-height: 1.6;
|
||
}
|
||
h1, h2, h3, h4 { font-family: 'Oxanium', sans-serif; font-weight: 700; }
|
||
|
||
.glass-card {
|
||
background: rgba(221, 238, 254, 0.03);
|
||
backdrop-filter: blur(20px);
|
||
border: 1px solid rgba(0, 229, 255, 0.1);
|
||
border-radius: 24px;
|
||
}
|
||
|
||
.section-screen {
|
||
min-height: 100vh;
|
||
display: flex;
|
||
flex-direction: column;
|
||
align-items: center;
|
||
justify-content: center;
|
||
position: relative;
|
||
padding: 4rem 2rem;
|
||
}
|
||
|
||
/* Toby Styles */
|
||
#toby-fixed {
|
||
position: fixed;
|
||
bottom: 30px;
|
||
right: 30px;
|
||
width: 160px;
|
||
z-index: 100;
|
||
opacity: 0;
|
||
pointer-events: none;
|
||
transition: opacity 0.5s ease;
|
||
}
|
||
.toby-float { animation: float 6s ease-in-out infinite; }
|
||
@keyframes float {
|
||
0% { transform: translateY(0px) rotate(0deg); }
|
||
50% { transform: translateY(-15px) rotate(1deg); }
|
||
100% { transform: translateY(0px) rotate(0deg); }
|
||
}
|
||
|
||
#toby-bubble {
|
||
background: #DDEEFE;
|
||
color: #081734;
|
||
padding: 0.75rem 1rem;
|
||
border-radius: 12px;
|
||
font-size: 0.85rem;
|
||
font-weight: 700;
|
||
margin-bottom: 12px;
|
||
position: relative;
|
||
text-align: center;
|
||
box-shadow: 0 10px 30px rgba(0,229,255,0.3);
|
||
min-width: 180px;
|
||
}
|
||
#toby-bubble::after {
|
||
content: '';
|
||
position: absolute;
|
||
bottom: -8px;
|
||
left: 50%;
|
||
transform: translateX(-50%);
|
||
border-width: 8px 8px 0;
|
||
border-style: solid;
|
||
border-color: #DDEEFE transparent transparent transparent;
|
||
}
|
||
|
||
.text-gradient {
|
||
background: linear-gradient(135deg, #FFF 20%, #00E5FF 100%);
|
||
-webkit-background-clip: text;
|
||
-webkit-text-fill-color: transparent;
|
||
}
|
||
|
||
.reveal { opacity: 0; transform: translateY(30px); }
|
||
|
||
/* Progress Bar */
|
||
#progress-container {
|
||
position: fixed;
|
||
top: 0;
|
||
left: 0;
|
||
width: 100%;
|
||
height: 4px;
|
||
background: rgba(255,255,255,0.05);
|
||
z-index: 1000;
|
||
}
|
||
#progress-bar {
|
||
height: 100%;
|
||
width: 0%;
|
||
background: #00E5FF;
|
||
box-shadow: 0 0 10px #00E5FF;
|
||
}
|
||
|
||
/* Charts Mocks */
|
||
.chart-bar {
|
||
height: 0;
|
||
transition: height 1.5s cubic-bezier(0.17, 0.67, 0.83, 0.67);
|
||
}
|
||
.reveal.active .chart-bar { height: var(--h); }
|
||
</style>
|
||
</head>
|
||
<body class="antialiased">
|
||
|
||
<div id="progress-container">
|
||
<div id="progress-bar"></div>
|
||
</div>
|
||
|
||
<!-- Toby Fixed -->
|
||
<div id="toby-fixed" class="toby-float">
|
||
<div id="toby-bubble">Initialisiere Cockpit...</div>
|
||
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAB9AAAAc2CAYAAABaJTzmAAAACXBIWXMAABsRAAAbEQEEnGAvAAAEvmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFjY2V0IGJlZ2luPSfvu78nIGlkPSdXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQnPz4KPHg6eG1wbWV0YSB4bWxuczp4PSdhZG9iZTpuczptZXRhLyc+CjxyZGY6UkRGIHhtbG5zOnJkZj0naHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyc+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpBdHRyaWI9J2h0dHA6Ly9ucy5hdHRyaWJ1dGlvbi5jb20vYWRzLzEuMC8nPgogIDxBdHRyaWI6QWRzPgogICA8cmRmOlNlcT4KICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0nUmVzb3VyY2UnPgogICAgIDxBdHRyaWI6Q3JlYXRlZD4yMDI2LTAxLTExPC9BdHRyaWI6Q3JlYXRlZD4KICAgICA8QXR0cmliOkV4dExtZD4zZjE1OTM5Ny04MWM3LTQyM2ItOWViMy02ODYyYzAxZjM4NGI8L0F0dHJpYjpFeHRJZD4KICAgICA8QXR0cmliOkZiSWQ+NTI1MjY1OTE0MTc5NTgwPC9BdHRyaWI6RmJJZD4KICAgICA8QXR0cmliOlRvdWNoVHlwZT4yPC9BdHRyaWI6VG91Y2hUeXBlPgogICAgPC9yZGY6bGk+CiAgIDwvcmRmOlNlcT4KICB8L0F0dHJpYjpBZHM+CiA8L3JkZjpEZXNjcmlwdGlvbj4KCiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0nJwogIHhtbG5zOmRjPSdodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyc+CiAgPGRjOnRpdGxlPgogICA8cmRmOkFsdD4KICAgIDxyZGY6bGkgeG1sOmxhbmc9J3gtZGVmYXVsdCc+Um9ib1BsYW5ldF9BdmF0YXJfaGVsbGJsYXUuYWkgLSAxPC9yZGY6bGk+CiAgIDwvcmRmOkFsdD4KICA8L2RjOnRpdGxlPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpwZGY9J2h0dHA6Ly9ucy5hZG9iZS5jb20vcGRmLzEuMy8nPgogIDxwZGY6QXV0aG9yPldhY2tsZXJHcm91cDwvcGRmOkF1dGhvcm4+CiA8L3JkZjpEZXNjcmlwdGlvbj4KCiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0nJwogIHhtbG5zOnhtcD0naHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyc+CiAgPHhtcDpDcmVhdG9yVG9vbD5DYW52YSBkb2M9REFHLVN1Y0tTeXMgdXNlcj1VQUVUOG1KY3lhSSBicmFuZD1CQUVUOGd0OERsTSB0ZW1wbGF0ZT08L3htcDpDcmVhdG9yVG9vbD4KIDwvcmRmOkRlc2NyaXB0aW9uPgo8L3JkZjpSREY+CjwveDp4bXBtZXRhPgo8P3hwYWNrZXQgZW5kPSdyJz8+qsA63gAACAASURBVHic7N15uG5z/fj/zx+/6/urvqU5aVCSSFGhyJjMZAghY6aMoQxJEioaKBkjkTEJERWJFAopY6nOWvc+xzmpnNa695n4616v73qvc/o0knOcc9733vvxvK7HtU/lCnvf+17v4V7v9T//I0mSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmSJEmS... [truncated]" alt="Toby" class="w-full opacity-80">
|
||
</div>
|
||
|
||
<!-- 1. Intro Screen -->
|
||
<section class="section-screen">
|
||
<div class="max-w-4xl w-full text-center">
|
||
<h4 class="text-roboCyan uppercase tracking-[0.5em] mb-8 reveal text-sm">Board Briefing Q2 / 2026</h4>
|
||
<h1 class="text-7xl md:text-8xl font-black mb-10 reveal leading-none tracking-tighter">Sales <br> <span class="text-gradient uppercase">Cockpit</span></h1>
|
||
<p class="text-xl md:text-2xl text-roboLight/40 max-w-2xl mx-auto mb-16 reveal font-light">
|
||
Vom statischen Archiv zum aktiven Gaspedal. <br>
|
||
Echtzeit-Steuerung für Roboplanet.
|
||
</p>
|
||
<div class="flex justify-center gap-6 reveal">
|
||
<div class="h-[1px] w-12 bg-roboCyan/40 self-center"></div>
|
||
<span class="text-roboCyan font-mono uppercase text-xs tracking-widest">30 Tage Live-Betrieb</span>
|
||
<div class="h-[1px] w-12 bg-roboCyan/40 self-center"></div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- 2. Efficiency: Adieu Excel -->
|
||
<section class="section-screen bg-black/10">
|
||
<div class="max-w-5xl w-full">
|
||
<div class="grid grid-cols-1 md:grid-cols-2 gap-20 items-center">
|
||
<div class="reveal">
|
||
<h2 class="text-5xl mb-8 leading-tight">Die Stunde, <br> die wir uns <span class="text-roboCyan">zurückholen.</span></h2>
|
||
<p class="text-xl text-roboLight/60 font-light leading-relaxed mb-10">
|
||
Früher: Manuelle Excel-Listen, wöchentliche Datenpflege, Blindflug. <br><br>
|
||
Heute: <strong>Vollautomatisches Dashboard.</strong> Der Innendienst spart 4-6 Stunden pro Monat – Zeit, die nun direkt in den Verkauf fließt.
|
||
</p>
|
||
<div class="flex gap-4">
|
||
<div class="glass-card px-6 py-4 border-roboCyan/30">
|
||
<span class="text-3xl font-bold text-white">100%</span>
|
||
<p class="text-[10px] uppercase tracking-widest text-roboCyan mt-1">Automatisierung</p>
|
||
</div>
|
||
<div class="glass-card px-6 py-4 border-roboCyan/30">
|
||
<span class="text-3xl font-bold text-white">-1h</span>
|
||
<p class="text-[10px] uppercase tracking-widest text-roboCyan mt-1">pro Woche / Sales</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="reveal relative">
|
||
<div class="glass-card p-8 rotate-3 shadow-2xl bg-white/5 border-white/10">
|
||
<div class="space-y-4 opacity-20">
|
||
<div class="h-4 w-full bg-white/40 rounded"></div>
|
||
<div class="h-4 w-3/4 bg-white/40 rounded"></div>
|
||
<div class="h-4 w-full bg-white/40 rounded"></div>
|
||
</div>
|
||
<div class="absolute inset-0 flex items-center justify-center">
|
||
<span class="text-roboCyan text-8xl font-black rotate-[-15deg] drop-shadow-[0_0_15px_rgba(0,229,255,0.8)]">EXCEL ADIEU</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- 3. Winning DNA: Deep Insights -->
|
||
<section class="section-screen">
|
||
<div class="max-w-6xl w-full">
|
||
<div class="text-center mb-20 reveal">
|
||
<h2 class="text-6xl mb-6 uppercase tracking-tighter">Die Winning <span class="text-roboCyan">DNA</span></h2>
|
||
<p class="text-xl text-roboLight/40 font-light">Was SuperOffice uns verschweigt, macht das Dashboard sichtbar.</p>
|
||
</div>
|
||
|
||
<div class="grid grid-cols-1 md:grid-cols-2 gap-12">
|
||
<!-- Channel Chart -->
|
||
<div class="glass-card p-10 reveal">
|
||
<h4 class="text-lg mb-8 uppercase tracking-widest text-roboCyan">Top Kanäle (Konversion)</h4>
|
||
<div class="flex items-end justify-between h-64 gap-4 px-4">
|
||
<div class="flex flex-col items-center flex-1 gap-2">
|
||
<div class="chart-bar w-full bg-roboCyan rounded-t-lg shadow-[0_0_20px_rgba(0,229,255,0.3)]" style="--h: 85%;"></div>
|
||
<span class="text-[10px] uppercase tracking-widest text-roboLight/50 mt-2">LinkedIn</span>
|
||
</div>
|
||
<div class="flex flex-col items-center flex-1 gap-2">
|
||
<div class="chart-bar w-full bg-roboCyan/60 rounded-t-lg" style="--h: 45%;"></div>
|
||
<span class="text-[10px] uppercase tracking-widest text-roboLight/50 mt-2">Cold Call</span>
|
||
</div>
|
||
<div class="flex flex-col items-center flex-1 gap-2">
|
||
<div class="chart-bar w-full bg-roboCyan/80 rounded-t-lg" style="--h: 65%;"></div>
|
||
<span class="text-[10px] uppercase tracking-widest text-roboLight/50 mt-2">Email MA</span>
|
||
</div>
|
||
<div class="flex flex-col items-center flex-1 gap-2">
|
||
<div class="chart-bar w-full bg-roboCyan/40 rounded-t-lg" style="--h: 30%;"></div>
|
||
<span class="text-[10px] uppercase tracking-widest text-roboLight/50 mt-2">Referral</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Loss Analysis -->
|
||
<div class="glass-card p-10 reveal">
|
||
<h4 class="text-lg mb-8 uppercase tracking-widest text-roboCyan">Warum wir verlieren</h4>
|
||
<div class="space-y-6">
|
||
<div>
|
||
<div class="flex justify-between text-xs mb-2 uppercase tracking-widest">
|
||
<span>Budget / Preis</span>
|
||
<span class="text-roboCyan">42%</span>
|
||
</div>
|
||
<div class="h-2 w-full bg-white/5 rounded-full overflow-hidden">
|
||
<div class="h-full bg-roboCyan chart-bar" style="--h: 100%; width: 42%;"></div>
|
||
</div>
|
||
</div>
|
||
<div>
|
||
<div class="flex justify-between text-xs mb-2 uppercase tracking-widest">
|
||
<span>Timing (Projekt verschoben)</span>
|
||
<span class="text-roboCyan">28%</span>
|
||
</div>
|
||
<div class="h-2 w-full bg-white/5 rounded-full overflow-hidden">
|
||
<div class="h-full bg-roboCyan/70 chart-bar" style="--h: 100%; width: 28%;"></div>
|
||
</div>
|
||
</div>
|
||
<div>
|
||
<div class="flex justify-between text-xs mb-2 uppercase tracking-widest">
|
||
<span>Kein Bedarf (Infrastruktur)</span>
|
||
<span class="text-roboCyan">15%</span>
|
||
</div>
|
||
<div class="h-2 w-full bg-white/5 rounded-full overflow-hidden">
|
||
<div class="h-full bg-roboCyan/40 chart-bar" style="--h: 100%; width: 15%;"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- 4. Action Hub: From View to Do -->
|
||
<section class="section-screen bg-roboCyan/[0.02]">
|
||
<div class="max-w-5xl w-full">
|
||
<div class="grid grid-cols-1 md:grid-cols-2 gap-20 items-center">
|
||
<div class="reveal">
|
||
<h4 class="text-roboCyan font-mono uppercase tracking-[0.3em] text-xs mb-6 font-bold">Der Activity Hub</h4>
|
||
<h2 class="text-6xl mb-8 leading-tight">Kein Rückspiegel. <br> Ein <span class="text-gradient">Gaspedal.</span></h2>
|
||
<p class="text-xl text-roboLight/70 font-light mb-10 leading-relaxed">
|
||
Das Dashboard ermöglicht direkte Interaktion. <br><br>
|
||
Highlight: Die <strong>Rückrufbitte-Automation</strong>. Mit einem Klick wird eine personalisierte Nachricht versendet.
|
||
</p>
|
||
<div class="glass-card p-10 border-roboCyan shadow-[0_0_30px_rgba(0,229,255,0.1)]">
|
||
<div class="text-7xl font-black text-white mb-2 tracking-tighter">>20%</div>
|
||
<p class="text-xs uppercase tracking-[0.4em] font-bold text-roboCyan">Response-Rate</p>
|
||
<p class="text-sm text-roboLight/50 mt-6 leading-relaxed">Der Beweis: Einfache, datenbasierte Touchpoints schlagen komplexe Kampagnen.</p>
|
||
</div>
|
||
</div>
|
||
<div class="reveal">
|
||
<div class="glass-card p-12 border-white/10 relative overflow-hidden">
|
||
<div class="absolute top-0 right-0 p-4">
|
||
<span class="text-roboCyan/20 text-8xl font-black">“</span>
|
||
</div>
|
||
<p class="text-xl text-roboLight leading-relaxed mb-8 italic font-light relative z-10">
|
||
"Früher habe ich 10 Minuten gesucht, heute brauche ich 10 Sekunden für die gleiche Entscheidung. Das Dashboard ist mein neues Zuhause im Vertrieb."
|
||
</p>
|
||
<div class="flex items-center gap-4">
|
||
<div class="w-12 h-12 rounded-full bg-gradient-to-br from-roboCyan to-roboLogo"></div>
|
||
<div>
|
||
<p class="text-sm font-bold uppercase tracking-widest">Stimme aus dem Team</p>
|
||
<p class="text-[10px] text-roboLight/40 uppercase">Sales Manager / Innendienst</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- 5. Red List: Early Warning -->
|
||
<section class="section-screen bg-black/20">
|
||
<div class="max-w-4xl w-full text-center">
|
||
<h2 class="text-5xl mb-10 reveal">Die Rote Liste: <br> <span class="text-red-500 uppercase font-black tracking-tighter">Gefahr erkannt.</span></h2>
|
||
<div class="glass-card p-12 reveal border-red-500/20 bg-red-500/5">
|
||
<p class="text-2xl text-white font-light leading-relaxed mb-8">
|
||
Deals, die länger als 14 Tage stagnieren, werden automatisch markiert. <br>
|
||
<strong>Das Dashboard wird zum Frühwarnsystem.</strong>
|
||
</p>
|
||
<div class="flex justify-center gap-12">
|
||
<div class="text-center">
|
||
<div class="text-4xl font-bold text-red-500">14</div>
|
||
<p class="text-[10px] uppercase tracking-widest text-white/40">Tage Stagnation</p>
|
||
</div>
|
||
<div class="text-center border-l border-white/10 pl-12">
|
||
<div class="text-4xl font-bold text-red-500">Aktion</div>
|
||
<p class="text-[10px] uppercase tracking-widest text-white/40">Sofort-Trigger</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- 6. Summary -->
|
||
<section class="section-screen">
|
||
<div class="max-w-4xl w-full text-center">
|
||
<h4 class="text-roboCyan uppercase tracking-[0.5em] mb-12 reveal text-xs">Zusammenfassung</h4>
|
||
<h2 class="text-6xl md:text-8xl mb-12 reveal font-black tracking-tighter">Sales <span class="text-gradient">IQ.</span></h2>
|
||
<div class="grid grid-cols-1 md:grid-cols-3 gap-8 text-left reveal">
|
||
<div class="border-l-2 border-roboCyan pl-6">
|
||
<h5 class="font-bold mb-2">Transparenz</h5>
|
||
<p class="text-xs text-roboLight/50">Alle KPIs auf einer Seite. Keine Suche mehr.</p>
|
||
</div>
|
||
<div class="border-l-2 border-roboCyan pl-6">
|
||
<h5 class="font-bold mb-2">Geschwindigkeit</h5>
|
||
<p class="text-xs text-roboLight/50">Direkte Interaktion statt Daten-Administration.</p>
|
||
</div>
|
||
<div class="border-l-2 border-roboCyan pl-6">
|
||
<h5 class="font-bold mb-2">Skalierbarkeit</h5>
|
||
<p class="text-xs text-roboLight/50">Robuste Basis für die Expansion 2026.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<footer class="py-20 text-center opacity-30 text-xs tracking-[0.5em] uppercase">
|
||
Roboplanet © 2026 | Intelligence Driven Sales
|
||
</footer>
|
||
|
||
<!-- Scripts -->
|
||
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.2/gsap.min.js"></script>
|
||
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.2/ScrollTrigger.min.js"></script>
|
||
<script>
|
||
gsap.registerPlugin(ScrollTrigger);
|
||
|
||
const tobyFixed = document.getElementById('toby-fixed');
|
||
const tobyBubble = document.getElementById('toby-bubble');
|
||
const progressBar = document.getElementById('progress-bar');
|
||
|
||
const tobyMessages = [
|
||
"System bereit. Cockpit geladen.",
|
||
"Excel ist Geschichte. Live-Daten sind die Zukunft.",
|
||
"Hier sehen wir die DNA unseres Erfolgs.",
|
||
"Aktion schlägt Analyse. >20% Quote!",
|
||
"Frühwarnsystem aktiv. Keine Deals mehr verlieren.",
|
||
"Sales IQ: Wir sind bereit zum Skalieren."
|
||
];
|
||
|
||
function updateToby(index) {
|
||
if (tobyMessages[index]) {
|
||
tobyBubble.innerHTML = tobyMessages[index];
|
||
gsap.fromTo(tobyBubble, { scale: 0.8, opacity: 0 }, { scale: 1, opacity: 1, duration: 0.4, ease: "back.out(1.7)" });
|
||
}
|
||
}
|
||
|
||
// Reveal Animations
|
||
gsap.utils.toArray('.reveal').forEach((el, i) => {
|
||
gsap.to(el, {
|
||
scrollTrigger: {
|
||
trigger: el,
|
||
start: "top 90%",
|
||
onEnter: () => el.classList.add('active'),
|
||
toggleActions: "play none none reverse"
|
||
},
|
||
opacity: 1,
|
||
y: 0,
|
||
duration: 1,
|
||
ease: "power3.out"
|
||
});
|
||
});
|
||
|
||
// Toby Visibility & Updates
|
||
ScrollTrigger.create({
|
||
trigger: "body",
|
||
start: "100px top",
|
||
onEnter: () => gsap.to(tobyFixed, { opacity: 1, display: 'flex', duration: 0.5 }),
|
||
onLeaveBack: () => gsap.to(tobyFixed, { opacity: 0, duration: 0.5 })
|
||
});
|
||
|
||
const sections = gsap.utils.toArray('section');
|
||
sections.forEach((section, i) => {
|
||
ScrollTrigger.create({
|
||
trigger: section,
|
||
start: "top center",
|
||
onEnter: () => updateToby(i),
|
||
onEnterBack: () => updateToby(i)
|
||
});
|
||
});
|
||
|
||
// Progress Bar
|
||
gsap.to(progressBar, {
|
||
width: "100%",
|
||
ease: "none",
|
||
scrollTrigger: {
|
||
trigger: "body",
|
||
start: "top top",
|
||
end: "bottom bottom",
|
||
scrub: 0.3
|
||
}
|
||
});
|
||
|
||
</script>
|
||
</body>
|
||
</html> |