abc / index.html
parthib07's picture
Update index.html
e259d34 verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Parthib Karak | AI Engineer</title>
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://cdn.jsdelivr.net/npm/typed.js@2.0.12"></script>
<script src="https://cdn.jsdelivr.net/npm/particles.js@2.0.0/particles.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<style>
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');
:root {
--bg-dark: #0D0D0D;
--panel-dark: #1A1A1A;
--text-light: #E0E0E0;
--accent-cyan: #00FFFF;
--accent-purple: #9D00FF;
}
body {
font-family: 'Poppins', sans-serif;
background-color: var(--bg-dark);
color: var(--text-light);
scroll-behavior: smooth;
}
/* Particle.js container */
#particles-js {
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: -1;
opacity: 0.3;
}
/* Custom scrollbar */
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-track {
background: var(--panel-dark);
}
::-webkit-scrollbar-thumb {
background: var(--accent-purple);
border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
background: var(--accent-cyan);
}
/* Animation classes */
.fade-in {
animation: fadeIn 1s ease-in-out;
}
@keyframes fadeIn {
from { opacity: 0; transform: translateY(20px); }
to { opacity: 1; transform: translateY(0); }
}
.slide-in-left {
animation: slideInLeft 0.8s ease-out;
}
@keyframes slideInLeft {
from { transform: translateX(-50px); opacity: 0; }
to { transform: translateX(0); opacity: 1; }
}
.slide-in-right {
animation: slideInRight 0.8s ease-out;
}
@keyframes slideInRight {
from { transform: translateX(50px); opacity: 0; }
to { transform: translateX(0); opacity: 1; }
}
/* Pulse animation */
.pulse {
animation: pulse 2s infinite;
}
@keyframes pulse {
0% { transform: scale(1); }
50% { transform: scale(1.05); }
100% { transform: scale(1); }
}
/* Gradient text */
.gradient-text {
background: linear-gradient(90deg, var(--accent-cyan), var(--accent-purple));
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}
/* Social icon hover effects */
.social-icon {
transition: all 0.3s ease;
}
.social-icon:hover {
transform: translateY(-5px) scale(1.1);
}
/* Project card hover effect */
.project-card {
transition: all 0.3s ease;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.project-card:hover {
transform: translateY(-10px);
box-shadow: 0 10px 20px rgba(157, 0, 255, 0.3);
}
/* Button hover effects */
.btn-primary {
background: linear-gradient(90deg, var(--accent-purple), var(--accent-cyan));
color: white;
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
.btn-primary:hover {
transform: translateY(-2px);
box-shadow: 0 5px 15px rgba(0, 255, 255, 0.4);
}
/* Section dividers */
.section-divider {
position: relative;
height: 150px;
overflow: hidden;
}
.wave-shape {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 100px;
background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cpath fill='%231A1A1A' fill-opacity='1' d='M0,192L48,197.3C96,203,192,213,288,229.3C384,245,480,267,576,250.7C672,235,768,181,864,181.3C960,181,1056,235,1152,234.7C1248,235,1344,181,1392,154.7L1440,128L1440,320L1392,320C1344,320,1248,320,1152,320C1056,320,960,320,864,320C768,320,672,320,576,320C480,320,384,320,288,320C192,320,96,320,48,320L0,320Z'%3E%3C/path%3E%3C/svg%3E") no-repeat center bottom;
background-size: cover;
}
</style>
</head>
<body>
<!-- Particle.js Background -->
<div id="particles-js"></div>
<!-- Navigation -->
<nav class="fixed w-full z-50 bg-opacity-90 backdrop-blur-md bg-[#1A1A1A] shadow-lg">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="flex justify-between h-16">
<div class="flex items-center">
<a href="#home" class="text-xl font-bold gradient-text">Parthib<span class="text-[#00FFFF]">.</span></a>
</div>
<div class="hidden md:flex items-center space-x-8">
<a href="#home" class="text-gray-300 hover:text-[#00FFFF] transition duration-300">Home</a>
<a href="#education" class="text-gray-300 hover:text-[#00FFFF] transition duration-300">Education</a>
<a href="#skills" class="text-gray-300 hover:text-[#00FFFF] transition duration-300">Skills</a>
<a href="#projects" class="text-gray-300 hover:text-[#00FFFF] transition duration-300">Projects</a>
<a href="#contact" class="text-gray-300 hover:text-[#00FFFF] transition duration-300">Contact</a>
</div>
<div class="md:hidden flex items-center">
<button id="menu-toggle" class="text-gray-300 hover:text-[#00FFFF] focus:outline-none">
<svg class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16"></path>
</svg>
</button>
</div>
</div>
</div>
<!-- Mobile menu -->
<div id="mobile-menu" class="hidden md:hidden bg-[#1A1A1A] bg-opacity-95">
<div class="px-2 pt-2 pb-3 space-y-1 sm:px-3">
<a href="#home" class="block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-[#00FFFF] hover:bg-[#0D0D0D]">Home</a>
<a href="#education" class="block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-[#00FFFF] hover:bg-[#0D0D0D]">Education</a>
<a href="#skills" class="block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-[#00FFFF] hover:bg-[#0D0D0D]">Skills</a>
<a href="#projects" class="block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-[#00FFFF] hover:bg-[#0D0D0D]">Projects</a>
<a href="#contact" class="block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-[#00FFFF] hover:bg-[#0D0D0D]">Contact</a>
</div>
</div>
</nav>
<!-- Hero Section -->
<section id="home" class="min-h-screen flex items-center justify-center pt-16 pb-20 px-4 sm:px-6 lg:px-8">
<div class="max-w-7xl mx-auto grid md:grid-cols-2 gap-12 items-center">
<div class="text-center md:text-left slide-in-left">
<h1 class="text-4xl md:text-6xl font-bold mb-4">Parthib Karak</h1>
<div class="text-xl md:text-2xl mb-6 h-8">
<span id="typed-text" class="gradient-text"></span>
</div>
<p class="text-gray-400 mb-8 max-w-lg">
Passionate AI & ML Engineer with expertise in developing intelligent systems,
backend development, and problem-solving through data structures & algorithms.
</p>
<div class="flex flex-wrap gap-4 justify-center md:justify-start">
<a href="#contact" class="btn-primary font-semibold py-3 px-6 rounded-full inline-block">
Contact Me
</a>
<a href="assets/Parthib_Karak_Resume.pdf" download
class="border border-[#00FFFF] text-[#00FFFF] font-semibold py-3 px-6 rounded-full inline-block hover:bg-[#00FFFF] hover:text-black transition duration-300">
Download CV
</a>
</div>
</div>
<div class="flex justify-center slide-in-right">
<div class="relative w-64 h-64 md:w-80 md:h-80 rounded-full overflow-hidden border-4 border-[#9D00FF] pulse">
<img src="https://media.licdn.com/dms/image/D4D03AQHA0kMEuC5kbA/profile-displayphoto-shrink_800_800/0/1691222092711?e=1750896000&v=beta&t=5wen-H15veRYhGPkZh_l1iyVdXeYJwB_rkVHG_p5-WQ"
alt="Parthib Karak"
class="w-full h-full object-cover">
<div class="absolute inset-0 bg-gradient-to-t from-[#9D00FF] to-transparent opacity-30"></div>
</div>
</div>
</div>
</section>
<!-- Section divider -->
<div class="section-divider">
<div class="wave-shape"></div>
</div>
<!-- Education Section -->
<section id="education" class="py-20 px-4 sm:px-6 lg:px-8 bg-[#1A1A1A] fade-in">
<div class="max-w-7xl mx-auto">
<h2 class="text-3xl md:text-4xl font-bold text-center mb-16 gradient-text">Education</h2>
<div class="grid md:grid-cols-2 gap-12 items-center">
<div class="space-y-8">
<div class="bg-[#0D0D0D] p-6 rounded-xl border-l-4 border-[#00FFFF] transform transition hover:scale-105">
<h3 class="text-xl font-bold text-[#00FFFF] mb-2">B.Tech in Computer Science & Engineering</h3>
<p class="text-gray-400 mb-1">Institute of Engineering and Management, Kolkata</p>
<p class="text-gray-400">2021 - 2025 (Expected)</p>
<p class="text-gray-300 mt-2">CGPA: 8.7</p>
</div>
<div class="bg-[#0D0D0D] p-6 rounded-xl border-l-4 border-[#9D00FF] transform transition hover:scale-105">
<h3 class="text-xl font-bold text-[#9D00FF] mb-2">Higher Secondary</h3>
<p class="text-gray-400 mb-1">Kapsit High School</p>
<p class="text-gray-300 mt-2">Percentage: 94%</p>
</div>
</div>
<div class="flex justify-center">
<div class="relative w-full max-w-md h-64 rounded-xl overflow-hidden border-4 border-[#9D00FF] transform rotate-3 hover:rotate-0 transition duration-500">
<div class="w-full h-full bg-gradient-to-br from-[#9D00FF] to-[#00FFFF] opacity-70 flex items-center justify-center">
<i class="fas fa-graduation-cap text-9xl text-white opacity-80"></i>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Section divider -->
<div class="section-divider">
<div class="wave-shape" style="transform: rotate(180deg);"></div>
</div>
<!-- Skills Section -->
<section id="skills" class="py-20 px-4 sm:px-6 lg:px-8 fade-in">
<div class="max-w-7xl mx-auto">
<h2 class="text-3xl md:text-4xl font-bold text-center mb-16 gradient-text">Technical Skills</h2>
<div class="grid md:grid-cols-3 gap-8">
<!-- Languages -->
<div class="bg-[#1A1A1A] p-6 rounded-xl transform transition hover:scale-105 hover:shadow-lg hover:shadow-[#9D00FF]/20">
<div class="flex items-center mb-4">
<div class="w-12 h-12 rounded-full bg-[#9D00FF] flex items-center justify-center mr-4">
<i class="fas fa-code text-2xl text-white"></i>
</div>
<h3 class="text-xl font-bold text-[#9D00FF]">Languages</h3>
</div>
<div class="flex flex-wrap gap-2">
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">Kotlin</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">Java</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">C</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">C++</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">Python</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">Go</span>
</div>
</div>
<!-- Web Development -->
<div class="bg-[#1A1A1A] p-6 rounded-xl transform transition hover:scale-105 hover:shadow-lg hover:shadow-[#00FFFF]/20">
<div class="flex items-center mb-4">
<div class="w-12 h-12 rounded-full bg-[#00FFFF] flex items-center justify-center mr-4">
<i class="fas fa-globe text-2xl text-black"></i>
</div>
<h3 class="text-xl font-bold text-[#00FFFF]">Web Development</h3>
</div>
<div class="flex flex-wrap gap-2">
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">Flask</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">Django</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">REST API</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">Backend Dev</span>
</div>
</div>
<!-- AI/ML -->
<div class="bg-[#1A1A1A] p-6 rounded-xl transform transition hover:scale-105 hover:shadow-lg hover:shadow-purple-500/20">
<div class="flex items-center mb-4">
<div class="w-12 h-12 rounded-full bg-gradient-to-r from-[#9D00FF] to-[#00FFFF] flex items-center justify-center mr-4">
<i class="fas fa-brain text-2xl text-white"></i>
</div>
<h3 class="text-xl font-bold gradient-text">AI/ML</h3>
</div>
<div class="flex flex-wrap gap-2">
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">Generative AI</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">Deep Learning</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">Machine Learning</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">NLP</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">Agentic AI</span>
<span class="px-3 py-1 bg-[#0D0D0D] rounded-full text-sm">DSA</span>
</div>
</div>
</div>
</div>
</section>
<!-- Projects Section -->
<section id="projects" class="py-20 px-4 sm:px-6 lg:px-8 bg-[#1A1A1A] fade-in">
<div class="max-w-7xl mx-auto">
<h2 class="text-3xl md:text-4xl font-bold text-center mb-16 gradient-text">Featured Projects</h2>
<div class="grid md:grid-cols-2 lg:grid-cols-3 gap-8">
<!-- Project 1 -->
<div class="project-card bg-[#0D0D0D] rounded-xl overflow-hidden">
<div class="h-48 bg-gradient-to-br from-[#9D00FF] to-[#00FFFF] flex items-center justify-center">
<i class="fas fa-robot text-6xl text-white opacity-80"></i>
</div>
<div class="p-6">
<h3 class="text-xl font-bold text-[#00FFFF] mb-2">AI Chatbot</h3>
<p class="text-gray-400 mb-4">An intelligent chatbot using NLP techniques and deep learning for natural conversations.</p>
<div class="flex space-x-3">
<a href="#" class="px-4 py-2 bg-[#1A1A1A] rounded-full text-sm hover:bg-[#00FFFF] hover:text-black transition">
View Code
</a>
<a href="#" class="px-4 py-2 bg-[#1A1A1A] rounded-full text-sm hover:bg-[#9D00FF] hover:text-white transition">
Live Demo
</a>
</div>
</div>
</div>
<!-- Project 2 -->
<div class="project-card bg-[#0D0D0D] rounded-xl overflow-hidden">
<div class="h-48 bg-gradient-to-br from-[#00FFFF] to-[#9D00FF] flex items-center justify-center">
<i class="fas fa-chart-line text-6xl text-white opacity-80"></i>
</div>
<div class="p-6">
<h3 class="text-xl font-bold text-[#9D00FF] mb-2">Stock Prediction</h3>
<p class="text-gray-400 mb-4">Machine learning model to predict stock prices using LSTM neural networks.</p>
<div class="flex space-x-3">
<a href="#" class="px-4 py-2 bg-[#1A1A1A] rounded-full text-sm hover:bg-[#00FFFF] hover:text-black transition">
View Code
</a>
<a href="#" class="px-4 py-2 bg-[#1A1A1A] rounded-full text-sm hover:bg-[#9D00FF] hover:text-white transition">
Live Demo
</a>
</div>
</div>
</div>
<!-- Project 3 -->
<div class="project-card bg-[#0D0D0D] rounded-xl overflow-hidden">
<div class="h-48 bg-gradient-to-br from-purple-600 to-blue-400 flex items-center justify-center">
<i class="fas fa-shopping-cart text-6xl text-white opacity-80"></i>
</div>
<div class="p-6">
<h3 class="text-xl font-bold text-[#00FFFF] mb-2">E-Commerce Backend</h3>
<p class="text-gray-400 mb-4">Scalable e-commerce backend with Django REST framework and JWT authentication.</p>
<div class="flex space-x-3">
<a href="#" class="px-4 py-2 bg-[#1A1A1A] rounded-full text-sm hover:bg-[#00FFFF] hover:text-black transition">
View Code
</a>
<a href="#" class="px-4 py-2 bg-[#1A1A1A] rounded-full text-sm hover:bg-[#9D00FF] hover:text-white transition">
Live Demo
</a>
</div>
</div>
</div>
</div>
<div class="text-center mt-12">
<a href="https://github.com/Babaiii07?tab=repositories" target="_blank"
class="inline-flex items-center px-6 py-3 border border-[#00FFFF] text-[#00FFFF] rounded-full hover:bg-[#00FFFF] hover:text-black transition duration-300">
View All Projects
<svg class="w-4 h-4 ml-2" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M14 5l7 7m0 0l-7 7m7-7H3"></path>
</svg>
</a>
</div>
</div>
</section>
<!-- Contact Section -->
<section id="contact" class="py-20 px-4 sm:px-6 lg:px-8 fade-in">
<div class="max-w-7xl mx-auto">
<h2 class="text-3xl md:text-4xl font-bold text-center mb-16 gradient-text">Get In Touch</h2>
<div class="grid md:grid-cols-2 gap-12 items-center">
<div>
<p class="text-gray-400 mb-8 text-lg">
Have an exciting project in mind or want to collaborate? Feel free to reach out to me through any of the platforms below.
</p>
<!-- Social Links -->
<div class="grid grid-cols-2 md:grid-cols-3 gap-4">
<a href="https://github.com/Babaiii07" target="_blank" class="social-icon bg-[#1A1A1A] p-4 rounded-full flex items-center justify-center hover:bg-[#00FFFF] hover:text-black transition">
<i class="fab fa-github text-2xl"></i>
</a>
<a href="https://www.instagram.com/babaiii_0007/" target="_blank" class="social-icon bg-[#1A1A1A] p-4 rounded-full flex items-center justify-center hover:bg-gradient-to-r from-pink-500 to-yellow-500 hover:text-white transition">
<i class="fab fa-instagram text-2xl"></i>
</a>
<a href="https://leetcode.com/u/Parthib_007/" target="_blank" class="social-icon bg-[#1A1A1A] p-4 rounded-full flex items-center justify-center hover:bg-[#FFA116] hover:text-black transition">
<i class="fas fa-code text-2xl"></i>
</a>
<a href="https://x.com/" target="_blank" class="social-icon bg-[#1A1A1A] p-4 rounded-full flex items-center justify-center hover:bg-black hover:text-white transition">
<i class="fab fa-twitter text-2xl"></i>
</a>
<a href="https://huggingface.co/parthib07" target="_blank" class="social-icon bg-[#1A1A1A] p-4 rounded-full flex items-center justify-center hover:bg-yellow-400 hover:text-black transition">
<i class="fas fa-smile text-2xl"></i>
</a>
</div>
</div>
<!-- Contact Form -->
<div class="bg-[#1A1A1A] rounded-xl p-8 shadow-lg">
<form>
<div class="mb-6">
<label for="name" class="block text-gray-400 mb-2">Name</label>
<input type="text" id="name" class="w-full px-4 py-3 bg-[#0D0D0D] border border-[#333] rounded-lg focus:outline-none focus:border-[#00FFFF] transition">
</div>
<div class="mb-6">
<label for="email" class="block text-gray-400 mb-2">Email</label>
<input type="email" id="email" class="w-full px-4 py-3 bg-[#0D0D0D] border border-[#333] rounded-lg focus:outline-none focus:border-[#00FFFF] transition">
</div>
<div class="mb-6">
<label for="message" class="block text-gray-400 mb-2">Message</label>
<textarea id="message" rows="4" class="w-full px-4 py-3 bg-[#0D0D0D] border border-[#333] rounded-lg focus:outline-none focus:border-[#00FFFF] transition"></textarea>
</div>
<button type="submit" class="w-full btn-primary font-semibold py-3 px-6 rounded-lg">
Send Message
</button>
</form>
</div>
</div>
</div>
</section>
<!-- Footer -->
<footer class="py-8 bg-[#1A1A1A]">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center">
<p class="text-gray-400">
&copy; 2023 Parthib Karak. All Rights Reserved.
</p>
</div>
</footer>
<!-- Back to Top Button -->
<button id="back-to-top" class="fixed bottom-8 right-8 w-12 h-12 bg-[#9D00FF] rounded-full flex items-center justify-center text-white shadow-lg opacity-0 invisible transition-all duration-300 hover:bg-[#00FFFF] hover:text-black">
<i class="fas fa-arrow-up"></i>
</button>
<script>
// Initialize Typed.js
document.addEventListener('DOMContentLoaded', function() {
new Typed('#typed-text', {
strings: ["AI Engineer", "ML Engineer", "Python Developer", "Backend Developer"],
typeSpeed: 50,
backSpeed: 30,
loop: true,
showCursor: true,
cursorChar: '|'
});
// Initialize particle.js
particlesJS('particles-js', {
"particles": {
"number": {
"value": 80,
"density": {
"enable": true,
"value_area": 800
}
},
"color": {
"value": "#9D00FF"
},
"shape": {
"type": "circle",
"stroke": {
"width": 0,
"color": "#000000"
},
"polygon": {
"nb_sides": 5
}
},
"opacity": {
"value": 0.5,
"random": false,
"anim": {
"enable": false,
"speed": 1,
"opacity_min": 0.1,
"sync": false
}
},
"size": {
"value": 3,
"random": true,
"anim": {
"enable": false,
"speed": 40,
"size_min": 0.1,
"sync": false
}
},
"line_linked": {
"enable": true,
"distance": 150,
"color": "#00FFFF",
"opacity": 0.4,
"width": 1
},
"move": {
"enable": true,
"speed": 2,
"direction": "none",
"random": false,
"straight": false,
"out_mode": "out",
"bounce": false,
"attract": {
"enable": false,
"rotateX": 600,
"rotateY": 1200
}
}
},
"interactivity": {
"detect_on": "canvas",
"events": {
"onhover": {
"enable": true,
"mode": "grab"
},
"onclick": {
"enable": true,
"mode": "push"
},
"resize": true
},
"modes": {
"grab": {
"distance": 140,
"line_linked": {
"opacity": 1
}
},
"bubble": {
"distance": 400,
"size": 40,
"duration": 2,
"opacity": 8,
"speed": 3
},
"repulse": {
"distance": 200,
"duration": 0.4
},
"push": {
"particles_nb": 4
},
"remove": {
"particles_nb": 2
}
}
},
"retina_detect": true
});
// Mobile menu toggle
document.getElementById('menu-toggle').addEventListener('click', function() {
document.getElementById('mobile-menu').classList.toggle('hidden');
});
// Close mobile menu when clicking a link
document.querySelectorAll('#mobile-menu a').forEach(link => {
link.addEventListener('click', () => {
document.getElementById('mobile-menu').classList.add('hidden');
});
});
// Back to top button
const backToTopButton = document.getElementById('back-to-top');
window.addEventListener('scroll', () => {
if (window.pageYOffset > 300) {
backToTopButton.classList.remove('opacity-0', 'invisible');
backToTopButton.classList.add('opacity-100', 'visible');
} else {
backToTopButton.classList.remove('opacity-100', 'visible');
backToTopButton.classList.add('opacity-0', 'invisible');
}
});
backToTopButton.addEventListener('click', () => {
window.scrollTo({
top: 0,
behavior: 'smooth'
});
});
// Add animation classes when elements come into view
const animateOnScroll = () => {
const elements = document.querySelectorAll('.fade-in, .slide-in-left, .slide-in-right');
elements.forEach(element => {
const elementPosition = element.getBoundingClientRect().top;
const windowHeight = window.innerHeight;
if (elementPosition < windowHeight - 100) {
element.classList.add('animate');
}
});
};
// Run once on load
animateOnScroll();
// Run on scroll
window.addEventListener('scroll', animateOnScroll);
});
</script>
</body>
</html>