Files
WEBtomaste/Website Template/code

485 lines
31 KiB
Plaintext
Raw Normal View History

2025-12-10 12:17:30 -05:00
<!DOCTYPE html>
<html lang="en" class="scroll-smooth">
<head><meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Rithy Tep | Full Stack Developer</title>
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://unpkg.com/lucide@latest"></script>
<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=Inter:wght@300;400;500;600&family=JetBrains+Mono:wght@400&display=swap" rel="stylesheet">
<style>
body {
background-color: #0a0a0a;
font-family: 'Inter', sans-serif;
}
/* Custom Scrollbar */
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-track {
background: #0a0a0a;
}
::-webkit-scrollbar-thumb {
background: #333;
border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
background: #555;
}
/* Ambient Glows */
.ambient-glow {
position: fixed;
width: 600px;
height: 600px;
background: radial-gradient(circle, rgba(245, 158, 11, 0.03) 0%, rgba(0,0,0,0) 70%);
pointer-events: none;
z-index: 0;
}
.glow-top { top: -20%; left: -10%; }
.glow-bottom { bottom: -20%; right: -10%; }
.glow-center { top: 40%; left: 30%; width: 800px; height: 800px; background: radial-gradient(circle, rgba(30, 30, 40, 0.3) 0%, rgba(0,0,0,0) 70%); }
/* Utility for hiding scrollbar but allowing scroll */
.no-scrollbar::-webkit-scrollbar {
display: none;
}
.no-scrollbar {
-ms-overflow-style: none;
scrollbar-width: none;
}
/* Image Mask for Hero */
.hero-mask {
-webkit-mask-image: radial-gradient(circle at center, black 60%, transparent 100%);
mask-image: radial-gradient(circle at center, black 60%, transparent 100%);
}
/* Text Gradient */
.text-gradient-gold {
background: linear-gradient(135deg, #ffffff 30%, #fbbf24 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.glass-card {
background: rgba(20, 20, 20, 0.4);
backdrop-filter: blur(12px);
border: 1px solid rgba(255, 255, 255, 0.05);
}
.hover-trigger .hover-target {
opacity: 0;
transform: translateX(-10px);
transition: all 0.3s ease;
}
.hover-trigger:hover .hover-target {
opacity: 1;
transform: translateX(0);
}
</style></head>
<body class="text-gray-400 antialiased selection:bg-amber-500/20 selection:text-amber-200 relative overflow-x-hidden">
<!-- Ambient Background Effects -->
<div class="ambient-glow glow-top"></div>
<div class="ambient-glow glow-bottom"></div>
<div class="ambient-glow glow-center"></div>
<!-- Navigation -->
<nav class="fixed top-0 left-0 w-full z-50 border-b border-white/5 bg-[#0a0a0a]/80 backdrop-blur-md">
<div class="max-w-7xl mx-auto px-6 h-20 flex items-center justify-between">
<div class="flex items-center gap-2">
<span class="text-white font-semibold tracking-tighter text-lg">RITHY TEP</span>
<span class="text-xs px-2 py-0.5 rounded-full border border-white/10 bg-white/5 font-mono text-gray-500">v2.0</span>
</div>
<div class="hidden md:flex items-center gap-8 text-sm font-medium">
<a href="#about" class="hover:text-white transition-colors">About</a>
<a href="#expertise" class="hover:text-white transition-colors">Expertise</a>
<a href="#projects" class="hover:text-white transition-colors">Projects</a>
<a href="#experience" class="hover:text-white transition-colors">Timeline</a>
</div>
<a href="#contact" class="group flex items-center gap-2 text-xs font-semibold tracking-wide uppercase text-white border border-white/10 px-5 py-2.5 rounded-full hover:bg-white hover:text-black transition-all duration-300">
Get In Touch
<i data-lucide="arrow-right" class="w-3 h-3 group-hover:translate-x-1 transition-transform"></i>
</a>
</div>
</nav>
<main class="relative z-10 pt-24">
<!-- Hero Section -->
<section class="min-h-[90vh] flex flex-col justify-center px-6 max-w-7xl mx-auto relative pb-20">
<div class="grid grid-cols-1 lg:grid-cols-12 gap-12 lg:gap-0 items-center">
<!-- Left: Typography -->
<div class="lg:col-span-7 flex flex-col gap-8 z-20">
<div class="flex items-center gap-3 mb-2">
<div class="w-2 h-2 bg-amber-500 rounded-full animate-pulse"></div>
<span class="font-mono text-xs text-amber-500 tracking-widest uppercase">Available for work</span>
</div>
<h1 class="text-5xl sm:text-6xl md:text-7xl lg:text-8xl font-semibold text-white tracking-tighter leading-[0.95] uppercase">
Crafting <br>
<span class="text-gray-600">Digital</span> <br>
Experiences
</h1>
<p class="max-w-md text-lg text-gray-400 leading-relaxed font-light border-l border-white/10 pl-6 mt-4">
Transforming complex challenges into elegant solutions with modern web technologies and a passion for innovation.
</p>
<div class="flex flex-wrap items-center gap-6 mt-8">
<a href="#projects" class="bg-amber-500 text-black px-8 py-4 rounded-sm font-semibold tracking-tight hover:bg-amber-400 transition-all transform hover:-translate-y-1 flex items-center gap-2 group">
START CREATING
<i data-lucide="arrow-right" class="w-4 h-4 group-hover:translate-x-1 transition-transform"></i>
</a>
<a href="#about" class="text-white px-6 py-4 rounded-sm border border-white/10 hover:border-white/30 transition-all flex items-center gap-2 text-sm tracking-wide">
<i data-lucide="play-circle" class="w-4 h-4"></i>
VIEW SHOWREEL
</a>
</div>
</div>
<!-- Right: Visual & Stats -->
<div class="lg:col-span-5 relative h-[500px] lg:h-[700px] flex items-center justify-center lg:justify-end">
<!-- Circular Image Mask -->
<div class="absolute inset-0 flex items-center justify-center lg:justify-end">
<div class="w-[300px] h-[300px] md:w-[450px] md:h-[450px] rounded-full overflow-hidden border border-white/5 relative group">
<img src="https://irzjjxlkm7f191oh.public.blob.vercel-storage.com/alex-knight-v_8xUFwLpE4-unsplash.jpg" alt="Hero Banner" class="w-full h-full object-cover grayscale group-hover:grayscale-0 transition-all duration-700 scale-110 group-hover:scale-100">
<div class="absolute inset-0 bg-gradient-to-t from-black/50 to-transparent"></div>
</div>
</div>
<!-- Floating Stats -->
<div class="absolute top-10 right-0 lg:right-10 glass-card p-6 rounded-lg animate-[float_6s_ease-in-out_infinite]">
<div class="text-3xl font-semibold text-white tracking-tighter">12+</div>
<div class="text-xs text-gray-500 uppercase tracking-widest mt-1">Projects</div>
</div>
<div class="absolute bottom-20 left-0 lg:left-10 glass-card p-6 rounded-lg animate-[float_8s_ease-in-out_infinite_1s]">
<div class="text-3xl font-semibold text-white tracking-tighter">100%</div>
<div class="text-xs text-gray-500 uppercase tracking-widest mt-1">Satisfaction</div>
</div>
<div class="absolute top-1/2 -right-4 lg:-right-10 glass-card p-4 rounded-lg flex items-center gap-3">
<div class="bg-green-500/20 p-2 rounded-full">
<i data-lucide="code-2" class="w-4 h-4 text-green-500"></i>
</div>
<div>
<div class="text-sm font-medium text-white">Clean Code</div>
<div class="text-[10px] text-gray-500 font-mono">Architecture</div>
</div>
</div>
</div>
</div>
</section>
<!-- About Section -->
<section id="about" class="py-24 border-t border-white/5">
<div class="max-w-7xl mx-auto px-6">
<div class="grid grid-cols-1 lg:grid-cols-2 gap-16">
<div class="relative">
<div class="aspect-square w-full max-w-md mx-auto rounded-2xl overflow-hidden relative">
<img src="https://images.khmer24.co/profiles/pictures/21-10-28/rithytep_631992_1635403035_35.jpg" alt="Rithy Tep" class="w-full h-full object-cover grayscale hover:grayscale-0 transition-all duration-500">
<div class="absolute inset-0 border border-white/10 rounded-2xl"></div>
</div>
<!-- Decorative Elements -->
<div class="absolute -z-10 top-10 -left-10 w-full h-full border border-dashed border-white/5 rounded-2xl hidden md:block"></div>
</div>
<div class="flex flex-col justify-center">
<h2 class="text-xs font-mono text-amber-500 tracking-widest uppercase mb-4">About Me</h2>
<h3 class="text-3xl md:text-4xl font-semibold text-white tracking-tight mb-8">
Passionate full-stack developer bridging the gap between design and engineering.
</h3>
<div class="space-y-6 text-gray-400 font-light leading-relaxed">
<p>
I'm a developer who believes in continuous improvement and meaningful innovation. With a foundation in Vue.js, Next.js, and .NET, I specialize in building scalable applications that solve real-world problems.
</p>
<p>
My approach combines technical excellence with a deep understanding of security and system architecture. I thrive in collaborative environments where I can contribute to ambitious projects while continuously expanding my expertise.
</p>
</div>
<div class="grid grid-cols-2 gap-6 mt-10">
<div class="flex items-center gap-3">
<i data-lucide="zap" class="text-amber-500 w-5 h-5"></i>
<span class="text-white text-sm">Fast Learner</span>
</div>
<div class="flex items-center gap-3">
<i data-lucide="shield-check" class="text-amber-500 w-5 h-5"></i>
<span class="text-white text-sm">Security Expert</span>
</div>
<div class="flex items-center gap-3">
<i data-lucide="layers" class="text-amber-500 w-5 h-5"></i>
<span class="text-white text-sm">System Architecture</span>
</div>
<div class="flex items-center gap-3">
<i data-lucide="users" class="text-amber-500 w-5 h-5"></i>
<span class="text-white text-sm">Team Player</span>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Skills Grid -->
<section id="expertise" class="py-24 bg-[#0d0d0d]">
<div class="max-w-7xl mx-auto px-6">
<div class="flex flex-col md:flex-row md:items-end justify-between mb-16 gap-6">
<div>
<h2 class="text-xs font-mono text-amber-500 tracking-widest uppercase mb-4">Expertise</h2>
<h3 class="text-4xl font-semibold text-white tracking-tight">Technical Arsenal</h3>
</div>
<p class="max-w-md text-sm text-gray-500 leading-relaxed">
A curated set of technologies I use to build high-performance, scalable, and secure applications.
</p>
</div>
<div class="grid grid-cols-1 md:grid-cols-3 gap-8">
<!-- Frontend -->
<div class="space-y-6">
<h4 class="text-lg font-medium text-white border-b border-white/10 pb-4">Frontend</h4>
<div class="space-y-3">
<div class="glass-card p-4 rounded hover:bg-white/5 transition-colors group flex items-center gap-4">
<i data-lucide="layout" class="text-gray-500 group-hover:text-amber-500 transition-colors w-5 h-5"></i>
<span class="text-gray-300 font-medium">Vue.js / Nuxt</span>
</div>
<div class="glass-card p-4 rounded hover:bg-white/5 transition-colors group flex items-center gap-4">
<i data-lucide="triangle" class="text-gray-500 group-hover:text-amber-500 transition-colors w-5 h-5"></i>
<span class="text-gray-300 font-medium">Next.js</span>
</div>
<div class="glass-card p-4 rounded hover:bg-white/5 transition-colors group flex items-center gap-4">
<i data-lucide="file-code" class="text-gray-500 group-hover:text-amber-500 transition-colors w-5 h-5"></i>
<span class="text-gray-300 font-medium">TypeScript</span>
</div>
<div class="glass-card p-4 rounded hover:bg-white/5 transition-colors group flex items-center gap-4">
<i data-lucide="palette" class="text-gray-500 group-hover:text-amber-500 transition-colors w-5 h-5"></i>
<span class="text-gray-300 font-medium">Tailwind CSS</span>
</div>
</div>
</div>
<!-- Backend -->
<div class="space-y-6">
<h4 class="text-lg font-medium text-white border-b border-white/10 pb-4">Backend</h4>
<div class="space-y-3">
<div class="glass-card p-4 rounded hover:bg-white/5 transition-colors group flex items-center gap-4">
<i data-lucide="server" class="text-gray-500 group-hover:text-amber-500 transition-colors w-5 h-5"></i>
<span class="text-gray-300 font-medium">.NET / C#</span>
</div>
<div class="glass-card p-4 rounded hover:bg-white/5 transition-colors group flex items-center gap-4">
<i data-lucide="terminal" class="text-gray-500 group-hover:text-amber-500 transition-colors w-5 h-5"></i>
<span class="text-gray-300 font-medium">Node.js</span>
</div>
<div class="glass-card p-4 rounded hover:bg-white/5 transition-colors group flex items-center gap-4">
<i data-lucide="database" class="text-gray-500 group-hover:text-amber-500 transition-colors w-5 h-5"></i>
<span class="text-gray-300 font-medium">MSSQL</span>
</div>
</div>
</div>
<!-- Cloud -->
<div class="space-y-6">
<h4 class="text-lg font-medium text-white border-b border-white/10 pb-4">Cloud & DevOps</h4>
<div class="space-y-3">
<div class="glass-card p-4 rounded hover:bg-white/5 transition-colors group flex items-center gap-4">
<i data-lucide="cloud" class="text-gray-500 group-hover:text-amber-500 transition-colors w-5 h-5"></i>
<span class="text-gray-300 font-medium">Cloudflare</span>
</div>
<div class="glass-card p-4 rounded hover:bg-white/5 transition-colors group flex items-center gap-4">
<i data-lucide="cloud-cog" class="text-gray-500 group-hover:text-amber-500 transition-colors w-5 h-5"></i>
<span class="text-gray-300 font-medium">Elastic</span>
</div>
<div class="glass-card p-4 rounded hover:bg-white/5 transition-colors group flex items-center gap-4">
<i data-lucide="box" class="text-gray-500 group-hover:text-amber-500 transition-colors w-5 h-5"></i>
<span class="text-gray-300 font-medium">Serverless</span>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Experience Timeline -->
<section id="experience" class="py-24 border-t border-white/5">
<div class="max-w-4xl mx-auto px-6">
<h2 class="text-xs font-mono text-amber-500 tracking-widest uppercase mb-12 text-center">Professional Journey</h2>
<div class="relative border-l border-white/10 ml-4 md:ml-10 space-y-12">
<!-- Item 1 -->
<div class="relative pl-8 md:pl-12 group">
<!-- Node -->
<div class="absolute -left-[5px] top-2 w-[9px] h-[9px] rounded-full bg-amber-500 ring-4 ring-black"></div>
<div class="flex flex-col sm:flex-row gap-2 sm:items-center mb-2">
<h3 class="text-xl font-semibold text-white">Full Stack Developer</h3>
<span class="hidden sm:block text-gray-600">•</span>
<span class="text-amber-500 font-medium">Techbodia</span>
<span class="text-xs px-2 py-1 bg-white/5 rounded text-gray-400 ml-auto sm:ml-0">2024 - Present</span>
</div>
<p class="text-gray-400 text-sm leading-relaxed mb-4 max-w-2xl">
Leading full-stack initiatives using Vue.js, Nuxt, C#, and .NET. Architecting scalable solutions with MSSQL and implementing enterprise search with Elasticsearch. Managing CI/CD pipelines via GitLab.
</p>
<div class="flex flex-wrap gap-2">
<span class="text-[10px] font-mono border border-white/10 px-2 py-1 rounded text-gray-500 group-hover:text-white transition-colors">Vue.js</span>
<span class="text-[10px] font-mono border border-white/10 px-2 py-1 rounded text-gray-500 group-hover:text-white transition-colors">.NET</span>
<span class="text-[10px] font-mono border border-white/10 px-2 py-1 rounded text-gray-500 group-hover:text-white transition-colors">SQL</span>
</div>
</div>
<!-- Item 2 -->
<div class="relative pl-8 md:pl-12 group">
<!-- Node -->
<div class="absolute -left-[5px] top-2 w-[9px] h-[9px] rounded-full bg-gray-700 ring-4 ring-black group-hover:bg-white transition-colors"></div>
<div class="flex flex-col sm:flex-row gap-2 sm:items-center mb-2">
<h3 class="text-xl font-semibold text-white">Full Stack Developer</h3>
<span class="hidden sm:block text-gray-600">•</span>
<span class="text-gray-300 font-medium">Private Company</span>
<span class="text-xs px-2 py-1 bg-white/5 rounded text-gray-400 ml-auto sm:ml-0">2023 - 2024</span>
</div>
<p class="text-gray-400 text-sm leading-relaxed mb-4 max-w-2xl">
Developed comprehensive full-stack applications leveraging Firebase backend services and Angular framework. Built real-time data synchronization features and secure authentication systems.
</p>
<div class="flex flex-wrap gap-2">
<span class="text-[10px] font-mono border border-white/10 px-2 py-1 rounded text-gray-500 group-hover:text-white transition-colors">Angular</span>
<span class="text-[10px] font-mono border border-white/10 px-2 py-1 rounded text-gray-500 group-hover:text-white transition-colors">Firebase</span>
</div>
</div>
</div>
</div>
</section>
<!-- Projects Grid -->
<section id="projects" class="py-24 bg-[#0d0d0d]">
<div class="max-w-7xl mx-auto px-6">
<div class="flex justify-between items-end mb-12">
<div>
<h2 class="text-xs font-mono text-amber-500 tracking-widest uppercase mb-4">Selected Works</h2>
<h3 class="text-4xl font-semibold text-white tracking-tight">Featured Projects</h3>
</div>
<a href="https://github.com/RithyTep" target="_blank" class="hidden md:flex items-center gap-2 text-sm text-gray-400 hover:text-white transition-colors group">
View GitHub <i data-lucide="arrow-right" class="w-4 h-4 group-hover:translate-x-1 transition-transform"></i>
</a>
</div>
<!-- Bento Grid Layout -->
<div class="grid grid-cols-1 md:grid-cols-3 gap-6">
<!-- Large Featured Card -->
<div class="md:col-span-2 group relative overflow-hidden rounded-lg glass-card border border-white/5 hover:border-amber-500/30 transition-all duration-500 h-[400px]">
<img src="https://irzjjxlkm7f191oh.public.blob.vercel-storage.com/1756111312916.jpg" alt="Kon Khmer AI" class="absolute inset-0 w-full h-full object-cover opacity-60 group-hover:opacity-40 group-hover:scale-105 transition-all duration-700">
<div class="absolute inset-0 bg-gradient-to-t from-black via-black/50 to-transparent"></div>
<div class="absolute bottom-0 left-0 w-full p-8 z-20 transform translate-y-2 group-hover:translate-y-0 transition-transform duration-500">
<div class="flex items-center gap-3 mb-3">
<span class="text-amber-500 font-mono text-xs px-2 py-1 rounded border border-amber-500/20 bg-amber-500/10">Next.js</span>
<span class="text-gray-400 font-mono text-xs">HYPER3D</span>
</div>
<h3 class="text-2xl md:text-3xl font-bold text-white mb-2">Kon Khmer AI</h3>
<p class="text-gray-400 line-clamp-2 mb-6 max-w-xl group-hover:text-gray-300 transition-colors">
Innovative 3D AI visualization platform showcasing Cambodian cultural elements through interactive 3D models.
</p>
<a href="https://konkhmerai3d.rithytep.online/" target="_blank" class="inline-flex items-center gap-2 text-white text-sm font-medium hover:text-amber-500 transition-colors">
Explore Project <i data-lucide="arrow-up-right" class="w-4 h-4"></i>
</a>
</div>
</div>
<!-- Standard Card 1 -->
<div class="md:col-span-1 group relative overflow-hidden rounded-lg glass-card border border-white/5 hover:border-white/20 transition-all duration-500 h-[400px] md:h-auto">
<img src="https://irzjjxlkm7f191oh.public.blob.vercel-storage.com/123.png" alt="Portfolio CMS" class="absolute inset-0 w-full h-full object-cover opacity-50 group-hover:opacity-30 group-hover:scale-105 transition-all duration-700">
<div class="absolute inset-0 bg-gradient-to-t from-black via-transparent to-transparent"></div>
<div class="absolute bottom-0 left-0 w-full p-6 z-20">
<h3 class="text-xl font-bold text-white mb-2">Portfolio CMS</h3>
<p class="text-xs text-gray-400 mb-4 font-mono">Neon DB • Lucia Auth</p>
<a href="https://portfolio-bodia.vercel.app" target="_blank" class="hover-trigger flex items-center gap-2 text-sm text-white">
Visit Site <i data-lucide="arrow-right" class="w-4 h-4 hover-target"></i>
</a>
</div>
</div>
<!-- Standard Card 2 -->
<div class="md:col-span-1 group relative overflow-hidden rounded-lg glass-card border border-white/5 hover:border-white/20 transition-all duration-500 h-[300px]">
<img src="https://irzjjxlkm7f191oh.public.blob.vercel-storage.com/1762330596824.jpg" alt="Alanka Store" class="absolute inset-0 w-full h-full object-cover opacity-50 group-hover:opacity-30 group-hover:scale-105 transition-all duration-700">
<div class="absolute inset-0 bg-gradient-to-t from-black via-transparent to-transparent"></div>
<div class="absolute bottom-0 left-0 w-full p-6 z-20">
<h3 class="text-xl font-bold text-white mb-2">Alanka Store</h3>
<p class="text-xs text-gray-400 mb-4 font-mono">Three.js • WebGI</p>
<a href="https://alanka.store" target="_blank" class="hover-trigger flex items-center gap-2 text-sm text-white">
Visit Site <i data-lucide="arrow-right" class="w-4 h-4 hover-target"></i>
</a>
</div>
</div>
<!-- Standard Card 3 -->
<div class="md:col-span-1 group relative overflow-hidden rounded-lg glass-card border border-white/5 hover:border-white/20 transition-all duration-500 h-[300px]">
<img src="https://irzjjxlkm7f191oh.public.blob.vercel-storage.com/1756113382312.jpg" alt="HMS System" class="absolute inset-0 w-full h-full object-cover opacity-50 group-hover:opacity-30 group-hover:scale-105 transition-all duration-700">
<div class="absolute inset-0 bg-gradient-to-t from-black via-transparent to-transparent"></div>
<div class="absolute bottom-0 left-0 w-full p-6 z-20">
<h3 class="text-xl font-bold text-white mb-2">HMS System</h3>
<p class="text-xs text-gray-400 mb-4 font-mono">React • Vite • Shadcn</p>
<a href="https://demo-hms.netlify.app/" target="_blank" class="hover-trigger flex items-center gap-2 text-sm text-white">
Visit Site <i data-lucide="arrow-right" class="w-4 h-4 hover-target"></i>
</a>
</div>
</div>
<!-- Standard Card 4 -->
<div class="md:col-span-1 group relative overflow-hidden rounded-lg glass-card border border-white/5 hover:border-white/20 transition-all duration-500 h-[300px]">
<img src="https://irzjjxlkm7f191oh.public.blob.vercel-storage.com/1756115059380.jpg" alt="Key Translator" class="absolute inset-0 w-full h-full object-cover opacity-50 group-hover:opacity-30 group-hover:scale-105 transition-all duration-700">
<div class="absolute inset-0 bg-gradient-to-t from-black via-transparent to-transparent"></div>
<div class="absolute bottom-0 left-0 w-full p-6 z-20">
<h3 class="text-xl font-bold text-white mb-2">Key Translator</h3>
<p class="text-xs text-gray-400 mb-4 font-mono">Python • Google API</p>
<a href="https://multi-translator-sepia.vercel.app/" target="_blank" class="hover-trigger flex items-center gap-2 text-sm text-white">
Visit Site <i data-lucide="arrow-right" class="w-4 h-4 hover-target"></i>
</a>
</div>
</div>
</div>
</div>
</section>
<!-- Footer / Contact -->
<footer id="contact" class="pt-24 pb-12 border-t border-white/5">
<div class="max-w-7xl mx-auto px-6">
<div class="grid grid-cols-1 lg:grid-cols-2 gap-12 mb-24">
<div>
<h2 class="text-4xl md:text-6xl font-bold text-white tracking-tighter mb-6">
Let's Build <br>
<span class="text-gray-600">Something Amazing.</span>
</h2>
</div>
<div class="flex flex-col justify-center items-start lg:items-end gap-6">
<a href="mailto:contact@rithytep.online" class="group flex items-center gap-4 text-2xl md:text-3xl text-gray-300 hover:text-amber-500 transition-colors">
contact@rithytep.online
<i data-lucide="arrow-up-right" class="w-6 h-6 group-hover:translate-x-1 group-hover:-translate-y-1 transition-transform"></i>
</a>
<div class="flex gap-6">
<a href="https://github.com/RithyTep" class="text-gray-500 hover:text-white transition-colors">GitHub</a>
<a href="https://www.linkedin.com/in/tep-rithy-7529b7226" class="text-gray-500 hover:text-white transition-colors">LinkedIn</a>
<a href="https://www.youtube.com/@Rithy500" class="text-gray-500 hover:text-red-500 transition-colors">YouTube</a>
</div>
</div>
</div>
<div class="flex flex-col md:flex-row justify-between items-center pt-8 border-t border-white/5 text-xs text-gray-600 font-mono">
<div>
© 2025 Rithy Tep • Phnom Penh, Cambodia
</div>
<div class="mt-4 md:mt-0">
SHAPING VOID INTO MATTER
</div>
</div>
</div>
</footer>
</main>
<script>
// Initialize Icons
lucide.createIcons();
// Custom Cursor Effect (Optional, simple implementation)
document.addEventListener('mousemove', (e) => {
const x = e.clientX;
const y = e.clientY;
// Could add a custom cursor div here, but staying minimal with CSS hover states for better performance
});
</script>
</body>
</html>