Refactor code structure and remove redundant changes

This commit is contained in:
2026-07-12 18:16:31 +02:00
parent 23f20e4371
commit 80ee4cc892
101 changed files with 10541 additions and 2 deletions
+198
View File
@@ -0,0 +1,198 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Elias Vance | Architectural Portfolio</title>
<script src="https://cdn.tailwindcss.com"></script>
<style>
/* Custom configuration for Tailwind to enhance typography and color */
tailwind.config = {
theme: {
extend: {
colors: {
'primary-dark': '#1a1a1a',
'accent-gold': '#d4af37',
'light-stone': '#f5f5f5',
'text-muted': '#a0a0a0',
},
fontFamily: {
sans: ['Inter', 'sans-serif'],
serif: ['Playfair Display', 'serif'],
}
}
}
}
</style>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&family=Playfair+Display:wght@700;900&display=swap" rel="stylesheet">
</head>
<body class="bg-white font-sans text-primary-dark antialiased">
<!-- Navigation -->
<header class="sticky top-0 z-50 bg-white/95 backdrop-blur-sm shadow-md border-b border-gray-100">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="flex justify-between items-center h-20">
<a href="#" class="text-3xl font-extrabold tracking-tight text-primary-dark hover:text-accent-gold transition duration-300">
Elias Vance
</a>
<nav class="hidden md:flex space-x-8">
<a href="#work" class="text-text-muted hover:text-accent-gold font-medium transition duration-300 border-b-2 border-transparent hover:border-accent-gold pb-1">Projects</a>
<a href="#philosophy" class="text-text-muted hover:text-accent-gold font-medium transition duration-300 border-b-2 border-transparent hover:border-accent-gold pb-1">Philosophy</a>
<a href="#contact" class="text-text-muted hover:text-accent-gold font-medium transition duration-300 border-b-2 border-transparent hover:border-accent-gold pb-1">Contact</a>
</nav>
<button class="md:hidden p-2 rounded-md text-primary-dark hover:bg-light-stone transition duration-300" aria-label="Toggle navigation menu">
<svg class="w-6 h-6" 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="M4 6h16M4 12h16m-7 6h7"></path></svg>
</button>
</div>
</div>
</header>
<main>
<!-- Hero Section -->
<section class="relative bg-primary-dark text-white h-[70vh] flex items-center justify-center overflow-hidden">
<!-- Background Image -->
<img src="https://images.pexels.com/photos/5647658/pexels-photo-5647658.jpeg?auto=compress&amp;cs=tinysrgb&amp;fit=crop&amp;h=627&amp;w=1200" alt="Low angle of gloomy African American man in trendy outfit standing with folder with documents in hands and looking away in daytime" class="absolute inset-0 h-full w-full object-cover opacity-50">
<!-- Overlay for readability -->
<div class="absolute inset-0 bg-primary-dark/70"></div>
<!-- Content -->
<div class="relative z-10 text-center max-w-4xl px-4">
<p class="text-xl sm:text-2xl font-light mb-4 tracking-widest uppercase text-accent-gold animate-fadeInUp">Architectural Vision</p>
<h1 class="text-6xl sm:text-8xl font-extrabold mb-6 leading-tight tracking-tighter drop-shadow-lg">
Designing Spaces That Breathe
</h1>
<p class="text-lg sm:text-xl text-gray-300 mb-10 max-w-3xl mx-auto font-light">
I craft tangible environments where form meets function, prioritizing human experience and enduring materiality.
</p>
<a href="#work" class="inline-block bg-accent-gold text-primary-dark font-bold py-3 px-10 rounded-full text-lg hover:bg-yellow-400 transition duration-500 shadow-xl transform hover:scale-105 border-2 border-accent-gold">
View Portfolio
</a>
</div>
<!-- Attribution -->
<div class="absolute bottom-4 left-1/2 transform -translate-x-1/2 text-sm text-gray-400">
Photo by Ono Kosuki on Pexels | <a href="https://www.pexels.com/photo/thoughtful-black-entrepreneur-with-folder-standing-on-street-5647658/" target="_blank" class="hover:text-accent-gold">Source Image</a>
</div>
</section>
<!-- Projects Section -->
<section id="work" class="py-24 bg-light-stone">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<h2 class="text-5xl font-bold text-center mb-4 text-primary-dark border-b-4 border-accent-gold inline-block pb-1 mx-auto">Selected Works</h2>
<p class="text-center text-lg text-text-muted mb-12 max-w-2xl mx-auto">A curated selection of residential and commercial projects demonstrating a commitment to sustainable and refined design.</p>
<div class="grid md:grid-cols-2 gap-10">
<!-- Project Card 1 -->
<div class="bg-white rounded-xl shadow-2xl overflow-hidden transform hover:scale-[1.02] transition duration-500 group border border-gray-100">
<img src="https://via.placeholder.com/600x400?text=Resort+Estate+Alpha" alt="Project Alpha" class="w-full h-56 object-cover group-hover:opacity-90 transition duration-500">
<div class="p-6">
<h3 class="text-2xl font-bold mb-2 text-primary-dark">Resort Estate Alpha</h3>
<p class="text-accent-gold font-semibold mb-3">Residential / Hospitality</p>
<p class="text-text-muted mb-4 line-clamp-3">A study in natural integration, balancing expansive views with intimate, textured interior spaces. Focus on passive climate control.</p>
<a href="#" class="text-accent-gold font-medium flex items-center group-hover:text-amber-600 transition duration-300">
Explore Details
<svg class="w-4 h-4 ml-1" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.828 0l-4.243-4.243a8 8 0 1111.314 0z"></path><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 11a3 3 0 11-6 0 3 3 0 016 0z"></path></svg>
</a>
</div>
</div>
<!-- Project Card 2 -->
<div class="bg-white rounded-xl shadow-2xl overflow-hidden transform hover:scale-[1.02] transition duration-500 group border border-gray-100">
<img src="https://via.placeholder.com/600x400?text=Urban+Loft+Studio" alt="Project Beta" class="w-full h-56 object-cover group-hover:opacity-90 transition duration-500">
<div class="p-6">
<h3 class="text-2xl font-bold mb-2 text-primary-dark">Urban Loft Studio</h3>
<p class="text-accent-gold font-semibold mb-3">Commercial / Adaptive Reuse</p>
<p class="text-text-muted mb-4 line-clamp-3">An exploration of dense urban living, maximizing vertical space while ensuring optimal daylight penetration and material honesty.</p>
<a href="#" class="text-accent-gold font-medium flex items-center group-hover:text-amber-600 transition duration-300">
Explore Details
<svg class="w-4 h-4 ml-1" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.828 0l-4.243-4.243a8 8 0 1111.314 0z"></path><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 11a3 3 0 11-6 0 3 3 0 016 0z"></path></svg>
</a>
</div>
</div>
</div>
</div>
</section>
<!-- Philosophy Section -->
<section id="philosophy" class="py-24 bg-white">
<div class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="text-center mb-16">
<p class="text-accent-gold text-lg font-semibold mb-2 uppercase tracking-wider">The Design Ethos</p>
<h2 class="text-5xl font-extrabold text-primary-dark">Beyond Aesthetics: Intentional Design</h2>
</div>
<div class="grid md:grid-cols-3 gap-10">
<!-- Philosophy Pillar 1 -->
<div class="text-center p-6 bg-light-stone rounded-lg shadow-lg hover:shadow-xl transition duration-300 transform hover:-translate-y-2 border-t-4 border-accent-gold">
<div class="text-5xl mb-4 text-accent-gold">🌿</div>
<h3 class="text-2xl font-bold mb-3 text-primary-dark">Sustainability</h3>
<p class="text-text-muted">Prioritizing low-impact materials and passive strategies to create structures that respect the environment and minimize ecological footprint.</p>
</div>
<!-- Philosophy Pillar 2 -->
<div class="text-center p-6 bg-light-stone rounded-lg shadow-lg hover:shadow-xl transition duration-300 transform hover:-translate-y-2 border-t-4 border-accent-gold">
<div class="text-5xl mb-4 text-accent-gold">📐</div>
<h3 class="text-2xl font-bold mb-3 text-primary-dark">Precision</h3>
<p class="text-text-muted">Every line and volume is calculated. A relentless pursuit of structural integrity and flawless execution in every detail.</p>
</div>
<!-- Philosophy Pillar 3 -->
<div class="text-center p-6 bg-light-stone rounded-lg shadow-lg hover:shadow-xl transition duration-300 transform hover:-translate-y-2 border-t-4 border-accent-gold">
<div class="text-5xl mb-4 text-accent-gold">👤</div>
<h3 class="text-2xl font-bold mb-3 text-primary-dark">Human Scale</h3>
<p class="text-text-muted">Architecture should serve people. Designing environments that foster well-being, connection, and intuitive movement.</p>
</div>
</div>
</div>
</section>
<!-- Contact Section -->
<section id="contact" class="py-24 bg-primary-dark text-white">
<div class="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 text-center">
<h2 class="text-5xl font-extrabold mb-4">Let's Build Something Together</h2>
<p class="text-xl text-gray-300 mb-10">Whether you have a concept or a challenge, I welcome a conversation.</p>
<a href="mailto:elias.vance@architecture.com" class="inline-block bg-accent-gold text-primary-dark font-bold py-3 px-8 rounded-lg text-lg hover:bg-yellow-400 transition duration-300 shadow-lg transform hover:scale-105">
Email Me Directly
</a>
<div class="mt-12 space-x-6 text-lg">
<p class="text-text-muted">Phone: +1 (555) 123-4567</p>
<p class="text-text-muted">Portfolio PDF Available Upon Request</p>
</div>
</div>
</section>
</main>
<!-- Footer -->
<footer class="bg-gray-900 py-8">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center text-text-muted">
<p>&copy; 2024 Elias Vance. All Rights Reserved. | Designed with Intent.</p>
</div>
</footer>
<!-- Simple JS for subtle animation (optional but adds polish) -->
<script>
document.addEventListener('DOMContentLoaded', () => {
// Simple fade-in effect for elements as they scroll into view (Intersection Observer alternative for simplicity here)
const observerOptions = {
root: null,
rootMargin: '0px',
threshold: 0.1
};
const observer = new IntersectionObserver((entries, observer) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.style.opacity = '1';
entry.target.style.transform = 'translateY(0)';
observer.unobserve(entry.target);
}
});
}, observerOptions);
// Apply to sections that need the animation
document.querySelectorAll('section').forEach(section => {
// Apply initial hidden state
section.style.opacity = '0';
section.style.transform<div style="position:fixed;right:12px;bottom:12px;z-index:2147483647;background:rgba(17,24,39,.92);color:#fff;padding:8px 10px;border-radius:10px;font:12px/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;box-shadow:0 8px 20px rgba(0,0,0,.28)">Generated in 18.76s</div>