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
+175
View File
@@ -0,0 +1,175 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ember Roast Co. | Crafting Exceptional Coffee</title>
<link href="https://cdnjs.cloudflare.com/ajax/libs/tailwindcss/2.2.19/tailwind.min.css" rel="stylesheet">
<style>
/* Custom font styling and subtle animations */
.font-serif-display {
font-family: 'Georgia', serif;
}
.font-body {
font-family: 'Helvetica Neue', Arial, sans-serif;
}
.hover-lift {
transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
}
.hover-lift:hover {
transform: translateY(-6px);
box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
}
.fade-in-up {
opacity: 0;
transform: translateY(20px);
animation: fadeInUp 1s ease-out forwards;
}
@keyframes fadeInUp {
to {
opacity: 1;
transform: translateY(0);
}
}
</style>
</head>
<body class="bg-gray-50 font-body text-gray-800">
<!-- Navigation Bar -->
<header class="sticky top-0 z-50 bg-white shadow-lg">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="flex justify-between items-center h-16">
<!-- Logo -->
<div class="flex-shrink-0">
<a href="#" class="text-3xl font-serif-display text-amber-900 tracking-widest">
Ember Roast Co.
</a>
</div>
<!-- Desktop Menu -->
<div class="hidden sm:ml-6 sm:flex sm:space-x-8">
<a href="#shop" class="text-gray-700 hover:text-amber-700 px-3 py-2 text-sm font-medium transition duration-150 border-b-2 border-transparent hover:border-amber-500">Shop Beans</a>
<a href="#roast-story" class="text-gray-700 hover:text-amber-700 px-3 py-2 text-sm font-medium transition duration-150 border-b-2 border-transparent hover:border-amber-500">Our Craft</a>
<a href="#locations" class="text-gray-700 hover:text-amber-700 px-3 py-2 text-sm font-medium transition duration-150 border-b-2 border-transparent hover:border-amber-500">Visit Us</a>
<a href="#contact" class="text-gray-700 hover:text-amber-700 px-3 py-2 text-sm font-medium transition duration-150 border-b-2 border-transparent hover:border-amber-500">Contact</a>
</div>
<!-- Mobile Menu Button -->
<div class="sm:hidden">
<button id="mobile-menu-button" type="button" class="inline-flex items-center justify-center p-2 rounded-md text-gray-400 hover:text-gray-500 hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-inset focus:ring-amber-500" aria-controls="mobile-menu" aria-expanded="false">
<span class="sr-only">Open main menu</span>
<!-- Icon when menu is closed -->
<svg id="menu-icon-open" class="block h-6 w-6" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16" />
</svg>
<!-- Icon when menu is open -->
<svg id="menu-icon-close" class="hidden h-6 w-6" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12" />
</svg>
</button>
</div>
</div>
</div>
<!-- Mobile Menu (hidden by default) -->
<div class="sm:hidden hidden" id="mobile-menu">
<div class="px-4 pt-2 pb-3 space-y-1 sm:px-8 border-t border-gray-100">
<a href="#shop" class="block px-3 py-2 rounded-md text-base font-medium text-gray-700 hover:bg-amber-50 hover:text-amber-700">Shop Beans</a>
<a href="#roast-story" class="block px-3 py-2 rounded-md text-base font-medium text-gray-700 hover:bg-amber-50 hover:text-amber-700">Our Craft</a>
<a href="#locations" class="block px-3 py-2 rounded-md text-base font-medium text-gray-700 hover:bg-amber-50 hover:text-amber-700">Visit Us</a>
<a href="#contact" class="block px-3 py-2 rounded-md text-base font-medium text-gray-700 hover:bg-amber-50 hover:text-amber-700">Contact</a>
</div>
</div>
</header>
<main>
<!-- Hero Section -->
<section class="relative bg-cover bg-center h-[70vh] flex items-center justify-center"
style="background-image: url('https://images.unsplash.com/photo-1559436598-e1015d53433a?q=80&w=2070&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D');">
<!-- Overlay for dramatic effect -->
<div class="absolute inset-0 bg-black/30 backdrop-blur-sm"></div>
<div class="relative z-10 text-center px-4">
<h1 class="font-serif-display text-6xl sm:text-7xl font-extrabold text-white leading-tight drop-shadow-lg animate-fade-in-up" style="animation-delay: 0.2s;">
The Art of the Perfect Roast
</h1>
<p class="font-body text-xl sm:text-2xl text-amber-100 mt-4 max-w-3xl mx-auto drop-shadow-md animate-fade-in-up" style="animation-delay: 0.4s;">
Sustainably sourced beans, meticulously roasted to unlock unparalleled depth of flavor. Experience the fire.
</p>
<a href="#shop" class="mt-8 inline-block px-10 py-3 text-lg font-semibold text-amber-900 bg-amber-200 rounded-full shadow-xl hover:bg-amber-300 transition duration-300 transform hover:scale-105 focus:outline-none focus:ring-4 focus:ring-amber-400">
Discover Our Roasts
</a>
</div>
</section>
<!-- Featured Roasts / Shop Section -->
<section id="shop" class="py-20 bg-white">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="text-center mb-12">
<h2 class="text-base font-semibold text-amber-600 uppercase tracking-wider">Featured Selection</h2>
<p class="mt-2 text-4xl font-serif-display text-gray-900">
Our Current Roasts
</p>
<p class="mt-4 text-xl text-gray-600 max-w-2xl mx-auto">
From bright, citrusy origins to deep, chocolatey foundations, find the roast that speaks to your palate.
</p>
</div>
<div class="grid grid-cols-1 md:grid-cols-3 gap-10">
<!-- Roast Card 1: Light Roast -->
<div class="bg-gray-50 rounded-xl shadow-lg overflow-hidden hover-lift border border-gray-100 animate-fade-in-up" data-animation-delay="0">
<div class="relative overflow-hidden h-64">
<img src="https://images.unsplash.com/photo-1507863618607-5430b8b63817?q=80&w=1932&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"
alt="Light Roast Ethiopian Yirgacheffe" class="w-full h-full object-cover transition duration-500 group-hover:scale-105">
<div class="absolute top-2 right-2 bg-amber-600 text-white text-xs font-bold px-3 py-1 rounded-full shadow-md">LIGHT</div>
</div>
<div class="p-6 text-center">
<h3 class="font-serif-display text-3xl text-gray-900 mb-2">Yirgacheffe Bloom</h3>
<p class="text-amber-700 text-lg mb-3 font-semibold">Light Roast</p>
<p class="text-gray-600 mb-4 text-sm">Bright notes of jasmine, lemon zest, and sweet berry. A vibrant morning ritual.</p>
<button class="w-full py-3 bg-amber-500 text-white text-lg font-medium rounded-lg shadow-md hover:bg-amber-600 transition duration-200 focus:outline-none focus:ring-4 focus:ring-amber-300">
Add to Cart
</button>
</div>
</div>
<!-- Roast Card 2: Medium Roast -->
<div class="bg-gray-50 rounded-xl shadow-lg overflow-hidden hover-lift border border-gray-100 animate-fade-in-up" data-animation-delay="200">
<div class="relative overflow-hidden h-64">
<img src="https://images.unsplash.com/photo-1526511652845-e9c77e7e081b?q=80&w=1932&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"
alt="Medium Roast Central American Blend" class="w-full h-full object-cover transition duration-500 group-hover:scale-105">
<div class="absolute top-2 right-2 bg-amber-600 text-white text-xs font-bold px-3 py-1 rounded-full shadow-md">MEDIUM</div>
</div>
<div class="p-6 text-center">
<h3 class="font-serif-display text-3xl text-gray-900 mb-2">Andean Harmony</h3>
<p class="text-amber-700 text-lg mb-3 font-semibold">Medium Roast</p>
<p class="text-gray-600 mb-4 text-sm">Balanced notes of milk chocolate, toasted almond, and smooth caramel finish.</p>
<button class="w-full py-3 bg-amber-500 text-white text-lg font-medium rounded-lg shadow-md hover:bg-amber-600 transition duration-200 focus:outline-none focus:ring-4 focus:ring-amber-300">
Add to Cart
</button>
</div>
</div>
<!-- Roast Card 3: Dark Roast -->
<div class="bg-gray-50 rounded-xl shadow-lg overflow-hidden hover-lift border border-gray-100 animate-fade-in-up" data-animation-delay="400">
<div class="relative overflow-hidden h-64">
<img src="https://images.unsplash.com/photo-1596398928653-1f20348f36b4?q=80&w=1932&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"
alt="Dark Roast Sumatran Sumatra" class="w-full h-full object-cover transition duration-500 group-hover:scale-105">
<div class="absolute top-2 right-2 bg-amber-600 text-white text-xs font-bold px-3 py-1 rounded-full shadow-md">DARK</div>
</div>
<div class="p-6 text-center">
<h3 class="font-serif-display text-3xl text-gray-900 mb-2">Sumatran Deep</h3>
<p class="text-amber-700 text-lg mb-3 font-semibold">Dark Roast</p>
<p class="text-gray-600 mb-4 text-sm">Intense, smoky notes of dark cocoa and earthy spice. A powerful brew for reflection.</p>
<button class="w-full py-3 bg-amber-500 text-white text-lg font-medium rounded-lg shadow-md hover:bg-amber-600 transition duration-200 focus:outline-none focus:ring-4 focus:ring-amber-300">
Add to Cart
</button>
</div>
</div>
</div>
</div>
</section>
<!-- Roaster Story Section -->
<section id="roast-story" class="bg-gray-100 py-24">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="md:grid md:grid-cols-2 md:gap-12 items-center"><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 30.31s</div>