Small fix

This commit is contained in:
Tomas Dvorak
2025-06-21 23:08:19 +02:00
parent 1aeb3a2c8e
commit 8028427827
102 changed files with 11199 additions and 660 deletions
+845
View File
@@ -0,0 +1,845 @@
<!DOCTYPE html>
<html lang="cs">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SportCreative - Digitální Marketing pro Sport</title>
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/ionicons/7.1.0/esm/ionicons.min.js"></script>
<!-- Custom JS will be included here -->
<script src="script.js" defer></script>
<link rel="stylesheet" href="style.css">
<link rel="icon" href="logo.ico" type="image/x-icon">
<meta name="description" content="SportCreative - Profesionální digitální marketing pro sportovní týmy a organizace. Specializujeme se na video editing, správu sociálních.">
<meta name="keywords" content="sport, marketing, video editing, sociální sítě, webdesign, fotografie, grafický design, digitální marketing"></meta>
<meta name="author" content="SportCreative"></meta>
<meta property="og:title" content="SportCreative - Digitální Marketing pro Sport">
<meta property="og:description" content="SportCreative - Profesionální digitální marketing pro sportovní týmy a organizace. Specializujeme se na video editing, správu sociálních sítí, webdesign a další služby.">
<!-- Add Montserrat font -->
<link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@700;900&display=swap" rel="stylesheet">
<script>
tailwind.config = {
theme: {
extend: {
colors: {
'sport-purple': '#6c38d9',
'sport-orange': '#ff9933',
}
}
}
}
</script>
<!-- Add to your Tailwind config -->
<script>
tailwind.config = {
theme: {
extend: {
colors: {
'sport-purple': {
DEFAULT: '#6c38d9',
light: '#8a5ad1',
dark: '#5a2cbf'
},
'sport-orange': {
DEFAULT: '#ff9933',
light: '#ffb366',
dark: '#e6892d'
}
},
fontFamily: {
sans: ['Inter', 'sans-serif'],
},
animation: {
'float': 'float 6s ease-in-out infinite',
'glow': 'glow 2s ease-in-out infinite alternate',
},
keyframes: {
float: {
'0%, 100%': { transform: 'translateY(0)' },
'50%': { transform: 'translateY(-10px)' }
},
glow: {
'from': { boxShadow: '0 0 5px rgba(255, 153, 51, 0.5)' },
'to': { boxShadow: '0 0 15px rgba(255, 153, 51, 0.9)' }
}
},
borderRadius: {
'4xl': '2rem',
},
spacing: {
'72': '18rem',
'84': '21rem',
}
}
}
}
</script>
</head>
<body class="font-sans antialiased">
<!-- Header Section -->
<header class="bg-white shadow-sm sticky top-0 z-50">
<div class="container mx-auto px-4 sm:px-6 lg:px-8">
<div class="flex justify-between items-center py-4">
<!-- Logo -->
<div class="flex items-center">
<a href="#" class="logo">
<img src="header-logo.png" alt="SportCreative" class="logo">
</a>
</div>
<!-- Desktop Navigation -->
<nav class="hidden md:flex space-x-8">
<a href="#" class="text-gray-700 hover:text-sport-purple font-medium transition duration-150">Domů</a>
<a href="#" class="text-gray-700 hover:text-sport-purple font-medium transition duration-150">Služby</a>
<a href="#" class="text-gray-700 hover:text-sport-purple font-medium transition duration-150">Portfolio</a>
<a href="#" class="text-gray-700 hover:text-sport-purple font-medium transition duration-150">O nás</a>
<a href="kontakt.html" class="text-gray-700 hover:text-sport-purple font-medium transition duration-150">Kontakt</a>
</nav>
<!-- CTA Button -->
<div class="hidden md:block">
<a href="kontakt.html" class="bg-sport-purple text-white px-6 py-2 rounded-full font-medium hover:shadow-lg transition duration-300">
Nezávazná konzultace
</a>
</div>
<!-- Mobile Menu Button -->
<div class="md:hidden">
<button type="button" class="mobile-menu-button text-gray-700 hover:text-sport-purple focus:outline-none p-2" aria-label="Menu" aria-expanded="false">
<ion-icon name="menu-outline" class="h-8 w-8 transition-transform duration-300"></ion-icon>
</button>
</div>
</div>
<!-- Mobile Navigation -->
<div class="mobile-menu w-full absolute top-full left-0 bg-white shadow-lg">
<nav class="px-2 pt-2 pb-4 space-y-1">
<a href="index.html" class="block px-4 py-3 text-base font-medium text-gray-700 hover:bg-gray-50 hover:text-sport-purple rounded-lg transition-colors duration-200">Domů</a>
<a href="sluzby.html" class="block px-4 py-3 text-base font-medium text-gray-700 hover:bg-gray-50 hover:text-sport-purple rounded-lg transition-colors duration-200">Služby</a>
<a href="portfolio.html" class="block px-4 py-3 text-base font-medium text-gray-700 hover:bg-gray-50 hover:text-sport-purple rounded-lg transition-colors duration-200">Portfolio</a>
<a href="o-nas.html" class="block px-4 py-3 text-base font-medium text-gray-700 hover:bg-gray-50 hover:text-sport-purple rounded-lg transition-colors duration-200">O nás</a>
<a href="kontakt.html" class="block px-4 py-3 text-base font-medium text-gray-700 hover:bg-gray-50 hover:text-sport-purple rounded-lg transition-colors duration-200">Kontakt</a>
</nav>
<div class="px-4 py-3 border-t border-gray-100">
<a href="kontakt.html" class="block w-full text-center px-6 py-3 border border-transparent rounded-full text-base font-medium text-white bg-sport-purple hover:bg-sport-orange transition-all duration-300 hover:shadow-lg hover:-translate-y-0.5">
Nezávazná konzultace
</a>
</div>
</div>
</div>
</header>
<!-- Portfolio Section -->
<section class="py-16 bg-gradient-to-b from-gray-50 to-white">
<div class="container mx-auto px-4">
<div class="text-center mb-16 max-w-3xl mx-auto">
<span class="inline-block text-sport-orange font-semibold mb-3">Naše tvorba</span>
<h2 class="text-4xl md:text-5xl font-bold mb-4 bg-clip-text text-transparent bg-gradient-to-r from-sport-purple to-sport-purple">Portfolio projektů</h2>
<p class="text-gray-600 text-lg">Objevte naše nejlepší práce, které pomáhají sportovním týmům a organizacím vyniknout v digitálním světě.</p>
</div>
<!-- Filter Navigation -->
<div class="filter-container flex flex-wrap justify-center gap-3 mb-16 px-4">
<a href="#" class="filter-btn flex items-center px-5 py-2.5 rounded-full font-medium transition-all duration-200 text-white bg-sport-purple border-2 border-sport-purple hover:bg-sport-purple/90 hover:border-sport-purple/90 shadow-sm" data-filter="all">
<ion-icon name="eye-outline" class="mr-2 text-lg"></ion-icon> Vše
</a>
<a href="#" class="filter-btn flex items-center px-5 py-2.5 rounded-full font-medium transition-all duration-200 text-gray-700 border-2 border-gray-200 hover:border-sport-purple hover:text-sport-purple shadow-sm" data-filter="design">
<ion-icon name="color-palette-outline" class="mr-2 text-lg"></ion-icon> Design
</a>
<a href="#" class="filter-btn flex items-center px-5 py-2.5 rounded-full font-medium transition-all duration-200 text-gray-700 border-2 border-gray-200 hover:border-sport-purple hover:text-sport-purple shadow-sm" data-filter="fotografie">
<ion-icon name="camera-outline" class="mr-2 text-lg"></ion-icon> Fotografie
</a>
<a href="#" class="filter-btn flex items-center px-5 py-2.5 rounded-full font-medium transition-all duration-200 text-gray-700 border-2 border-gray-200 hover:border-sport-purple hover:text-sport-purple shadow-sm" data-filter="video">
<ion-icon name="videocam-outline" class="mr-2 text-lg"></ion-icon> Video
</a>
<a href="#" class="filter-btn flex items-center px-5 py-2.5 rounded-full font-medium transition-all duration-200 text-gray-700 border-2 border-gray-200 hover:border-sport-purple hover:text-sport-purple shadow-sm" data-filter="marketing">
<ion-icon name="megaphone-outline" class="mr-2 text-lg"></ion-icon> Marketing
</a>
<a href="#" class="filter-btn flex items-center px-5 py-2.5 rounded-full font-medium transition-all duration-200 text-gray-700 border-2 border-gray-200 hover:border-sport-purple hover:text-sport-purple shadow-sm" data-filter="socialni-site">
<ion-icon name="share-social-outline" class="mr-2 text-lg"></ion-icon> Sociální sítě
</a>
<a href="#" class="filter-btn flex items-center px-5 py-2.5 rounded-full font-medium transition-all duration-200 text-gray-700 border-2 border-gray-200 hover:border-sport-purple hover:text-sport-purple shadow-sm" data-filter="reels">
<ion-icon name="film-outline" class="mr-2 text-lg"></ion-icon> Reels
</a>
<a href="#" class="filter-btn flex items-center px-5 py-2.5 rounded-full font-medium transition-all duration-200 text-gray-700 border-2 border-gray-200 hover:border-sport-purple hover:text-sport-purple shadow-sm" data-filter="video-editing">
<ion-icon name="cut-outline" class="mr-2 text-lg"></ion-icon> Video Editing
</a>
<a href="#" class="filter-btn flex items-center px-5 py-2.5 rounded-full font-medium transition-all duration-200 text-gray-700 border-2 border-gray-200 hover:border-sport-purple hover:text-sport-purple shadow-sm" data-filter="web">
<ion-icon name="globe-outline" class="mr-2 text-lg"></ion-icon> Web
</a>
</div>
<style>
.filter-btn {
text-decoration: none !important;
outline: none !important;
border: 2px solid #6c38d9 !important;
transition: all 0.2s ease-in-out;
}
.filter-btn.active {
background-color: #6c38d9 !important;
color: white !important;
border-color: #6c38d9 !important;
box-shadow: 0 1px 3px rgba(108, 56, 217, 0.2);
}
.filter-btn:not(.active) {
border-color: #e2e8f0 !important;
color: #4a5568 !important;
}
.filter-btn:not(.active):hover {
border-color: #6c38d9 !important;
color: #6c38d9 !important;
transform: translateY(-1px);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
</style>
<script>
document.addEventListener('DOMContentLoaded', function() {
const filterButtons = document.querySelectorAll('.filter-btn');
filterButtons.forEach(button => {
button.addEventListener('click', function(e) {
e.preventDefault();
// Remove active class from all buttons
filterButtons.forEach(btn => btn.classList.remove('active'));
// Add active class to clicked button
this.classList.add('active');
// Your existing filter logic here
});
});
// Set first button as active by default
if (filterButtons.length > 0) {
filterButtons[0].classList.add('active');
}
});
</script>
<!-- Portfolio Grid -->
<div class="portfolio-masonry px-4 max-w-7xl mx-auto">
<!-- First Row: 2 items - 1:1 and 16:9 -->
<div class="grid grid-cols-1 md:grid-cols-3 gap-6 mb-6 items-stretch">
<!-- 1:1 Image -->
<div class="portfolio-item group md:col-span-1 h-full" data-category="design">
<div class="portfolio-square relative overflow-hidden rounded-2xl shadow-lg h-full">
<img src="assets/portfolio/1x1/bizoni1.png"
alt="1:1 Square Image"
class="portfolio-image"
loading="lazy">
<div class="portfolio-overlay">
<span class="text-white text-sm font-medium bg-sport-purple px-3 py-1 rounded-full inline-block mb-2">1:1 Image</span>
<h3 class="text-xl font-bold text-white mb-2">Square Format</h3>
<p class="text-gray-200 text-sm">Perfect for profile pictures and logos</p>
</div>
</div>
</div>
<!-- 16:9 Video -->
<div class="portfolio-item group md:col-span-2" data-category="video">
<div class="portfolio-landscape relative overflow-hidden rounded-2xl shadow-lg">
<video src="assets/portfolio/videos/bizoni_v1.mp4"
alt="16:9 Video Thumbnail"
class="portfolio-image"
controls muted loop autoplay playsinline
loading="lazy">
<div class="video-badge">
<ion-icon name="play" class="text-xl"></ion-icon>
</div>
<div class="portfolio-overlay">
<span class="text-white text-sm font-medium bg-sport-orange px-3 py-1 rounded-full inline-block mb-2">16:9 Video</span>
<h3 class="text-xl font-bold text-white mb-2">Wide Video Format</h3>
<p class="text-gray-200 text-sm">Standard format for most video content</p>
</div>
</div>
</div>
</div>
<!-- Second Row: 2 items - 16:9 and 1:1 -->
<div class="grid grid-cols-1 md:grid-cols-3 gap-6 mb-6 items-stretch">
<!-- 16:9 Image -->
<div class="portfolio-item group md:col-span-2 h-full" data-category="fotografie">
<div class="portfolio-landscape relative overflow-hidden rounded-2xl shadow-lg">
<img src="assets/portfolio/photos/Bizoni/b1.jpg"
alt="16:9 Landscape Image"
class="portfolio-image"
loading="lazy">
<div class="portfolio-overlay">
<span class="text-white text-sm font-medium bg-blue-500 px-3 py-1 rounded-full inline-block mb-2">16:9 Image</span>
<h3 class="text-xl font-bold text-white mb-2">Wide Landscape</h3>
<p class="text-gray-200 text-sm">Ideal for landscape photos and banners</p>
</div>
</div>
</div>
<!-- 9:16 Reels -->
<div class="portfolio-item group md:col-span-1 h-full" data-category="reels">
<div class="portfolio-portrait relative overflow-hidden rounded-2xl shadow-lg">
<video src="assets/portfolio/reels/bizoni_s2.mp4"
alt="9:16 Reels Video"
class="portfolio-image"
controls muted loop autoplay playsinline
loading="lazy">
<div class="video-badge">
<ion-icon name="play" class="text-xl"></ion-icon>
</div>
<div class="portfolio-overlay">
<span class="text-white text-sm font-medium bg-pink-500 px-3 py-1 rounded-full inline-block mb-2">9:16 Reels</span>
<h3 class="text-xl font-bold text-white mb-2">Vertical Video</h3>
<p class="text-gray-200 text-sm">Optimized for mobile viewing</p>
</div>
</div>
</div>
</div>
<!-- Third Row: Full width custom format -->
<div class="grid grid-cols-1 gap-6 items-stretch">
<!-- Custom Format -->
<div class="portfolio-item group" data-category="custom">
<div class="relative overflow-hidden rounded-2xl shadow-lg" style="aspect-ratio: 16/5;">
<img src="https://placehold.co/1400x440/10b981/ffffff?text=16:5+Banner"
alt="16:5 Banner Image"
class="portfolio-image"
loading="lazy">
<div class="portfolio-overlay">
<span class="text-white text-sm font-medium bg-green-500 px-3 py-1 rounded-full inline-block mb-2">Custom Format</span>
<h3 class="text-2xl md:text-3xl font-bold text-white mb-2">Full Width Banner</h3>
<p class="text-gray-200 text-sm md:text-base">Perfect for featured content and promotions</p>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<style>
/* Portfolio Item Presets */
.portfolio-item {
position: relative;
overflow: hidden;
border-radius: 1rem;
transition: all 0.3s ease;
-webkit-tap-highlight-color: transparent;
}
/* Image Presets */
.portfolio-image {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.7s ease;
}
/* Hover and touch states */
@media (hover: hover) {
.portfolio-item:hover .portfolio-image {
transform: scale(1.05);
}
.portfolio-item:hover .portfolio-overlay {
opacity: 1;
}
}
/* Touch devices */
@media (hover: none) {
.portfolio-item:active .portfolio-overlay,
.portfolio-item:focus .portfolio-overlay,
.portfolio-item:focus-within .portfolio-overlay {
opacity: 1;
}
}
/* Content Overlay */
.portfolio-overlay {
position: absolute;
inset: 0;
display: flex;
flex-direction: column;
justify-content: flex-end;
padding: 1rem;
background: linear-gradient(0deg, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.4) 60%, rgba(0,0,0,0.2) 100%);
opacity: 0;
transition: opacity 0.3s ease;
-webkit-backdrop-filter: blur(2px);
backdrop-filter: blur(2px);
}
/* Overlay content */
.portfolio-overlay span {
font-size: 0.75rem;
padding: 0.25rem 0.75rem;
margin-bottom: 0.5rem;
}
.portfolio-overlay h3 {
font-size: 1.1rem;
line-height: 1.2;
margin-bottom: 0.25rem;
}
.portfolio-overlay p {
font-size: 0.8rem;
line-height: 1.3;
margin: 0;
}
@media (min-width: 768px) {
.portfolio-overlay {
padding: 1.5rem;
}
.portfolio-overlay span {
font-size: 0.875rem;
padding: 0.25rem 0.75rem;
margin-bottom: 0.75rem;
}
.portfolio-overlay h3 {
font-size: 1.25rem;
margin-bottom: 0.5rem;
}
.portfolio-overlay p {
font-size: 0.875rem;
}
}
/* Content Types */
.portfolio-square {
aspect-ratio: 1;
height: 100%;
width: 100%;
}
.portfolio-landscape {
aspect-ratio: 16/9;
width: 100%;
height: 100%;
}
.portfolio-portrait {
aspect-ratio: 9/16;
width: 100%;
height: 100%;
}
.portfolio-custom {
width: 100%;
height: 100%;
}
/* Video Badge */
.video-badge {
position: absolute;
top: 1rem;
right: 1rem;
background: rgba(0,0,0,0.7);
color: white;
border-radius: 50%;
width: 2.5rem;
height: 2.5rem;
display: flex;
align-items: center;
justify-content: center;
z-index: 2;
}
/* Custom Styles */
.portfolio-masonry {
max-width: 1400px;
margin: 0 auto;
}
.portfolio-item {
position: relative;
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
transform: translateY(0);
opacity: 1;
}
.portfolio-item:hover {
transform: translateY(-5px);
}
.portfolio-item::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(135deg, rgba(108, 56, 217, 0.1) 0%, rgba(255, 153, 51, 0.1) 100%);
opacity: 0;
transition: opacity 0.3s ease;
z-index: 1;
pointer-events: none;
}
.portfolio-item:hover::before {
opacity: 1;
}
/* Animation for filter changes */
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.portfolio-item.animate-in {
animation: fadeInUp 0.5s ease-out forwards;
}
/* Custom scrollbar for filter buttons */
.filter-scroll-container {
-ms-overflow-style: none;
scrollbar-width: none;
}
.filter-scroll-container::-webkit-scrollbar {
display: none;
}
</style>
<!-- Portfolio Filtering Script -->
<script>
document.addEventListener('DOMContentLoaded', function() {
const filterButtons = document.querySelectorAll('.filter-btn');
const portfolioItems = document.querySelectorAll('.portfolio-item');
filterButtons.forEach(button => {
button.addEventListener('click', function() {
// Remove active class from all buttons
filterButtons.forEach(btn => {
btn.classList.remove('bg-sport-purple', 'text-white');
btn.classList.add('bg-white', 'text-gray-700', 'border', 'border-gray-200');
});
// Add active class to clicked button
this.classList.remove('bg-white', 'text-gray-700', 'border', 'border-gray-200');
this.classList.add('bg-sport-purple', 'text-white');
const filter = this.getAttribute('data-filter');
portfolioItems.forEach(item => {
if (filter === 'all' || item.getAttribute('data-category') === filter) {
item.style.display = 'block';
setTimeout(() => {
item.style.opacity = '1';
item.style.transform = 'translateY(0)';
}, 50);
} else {
item.style.opacity = '0';
item.style.transform = 'translateY(20px)';
setTimeout(() => {
item.style.display = 'none';
}, 300);
}
});
});
});
// Initialize with 'all' filter active
document.querySelector('[data-filter="all"]').classList.add('bg-sport-purple', 'text-white');
document.querySelector('[data-filter="all"]').classList.remove('bg-white', 'text-gray-700', 'border', 'border-gray-200');
});
</script>
<!-- Footer -->
<footer class="bg-gray-900 text-white">
<!-- Main Footer -->
<div class="container mx-auto px-4 sm:px-6 lg:px-8 py-12">
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-8">
<!-- Column 1: Logo & About -->
<div>
<div class="text-2xl font-bold mb-4">
<span class="text-sport-purple">Sport</span><span class="text-sport-orange">Creative</span>
</div>
<p class="text-gray-400 mb-4">
Digitální marketingová agentura specializovaná na sportovní týmy a organizace. Tvoříme obsah, který inspiruje a spojuje fanoušky.
</p>
<div class="flex space-x-4">
<!-- <a href="#" class="text-gray-400 hover:text-white transition duration-150">
<ion-icon name="logo-facebook" class="text-xl"></ion-icon>
</a> -->
<a href="https://www.instagram.com/sportcreative_cz/" target="_blank" class="text-gray-400 hover:text-white transition duration-150">
<ion-icon name="logo-instagram" class="text-xl"></ion-icon>
</a>
<!-- <a href="#" class="text-gray-400 hover:text-white transition duration-150">
<ion-icon name="logo-twitter" class="text-xl"></ion-icon>
</a> -->
<a href="https://www.linkedin.com/company/sportcreative-eu" target="_blank" class="text-gray-400 hover:text-white transition duration-150">
<ion-icon name="logo-linkedin" class="text-xl"></ion-icon>
</a>
</div>
</div>
<!-- Column 2: Services -->
<div>
<h3 class="text-lg font-semibold mb-4 text-white">Služby</h3>
<ul class="space-y-2">
<li>
<a href="sluzby/video-editing.html" class="text-gray-400 hover:text-white transition duration-150">Video Editing</a>
</li>
<li>
<a href="sluzby/sociální-sítě.html" class="text-gray-400 hover:text-white transition duration-150">Sociální sítě</a>
</li>
<li>
<a href="sluzby/tvorba-reels.html" class="text-gray-400 hover:text-white transition duration-150">Tvorba Reels</a>
</li>
<li>
<a href="sluzby/fotografie-video.html" class="text-gray-400 hover:text-white transition duration-150">Profi Fotografie & Video</a>
</li>
<li>
<a href="sluzby/web.html" class="text-gray-400 hover:text-white transition duration-150">Správa Webu</a>
</li>
<li>
<a href="sluzby/design.html" class="text-gray-400 hover:text-white transition duration-150">Grafický Design</a>
</li>
<li>
<a href="sluzby/marketing.html" class="text-gray-400 hover:text-white transition duration-150">Digitální Marketing</a>
</li>
</ul>
</div>
<!-- Column 3: Quick Links -->
<div>
<h3 class="text-lg font-semibold mb-4 text-white">Rychlé odkazy</h3>
<ul class="space-y-2">
<li>
<a href="index.html" class="text-gray-400 hover:text-white transition duration-150">Domů</a>
</li>
<li>
<a href="o-nas.html" class="text-gray-400 hover:text-white transition duration-150">O nás</a>
</li>
<li>
<a href="portfolio.html" class="text-gray-400 hover:text-white transition duration-150">Portfolio</a>
</li>
<li>
<a href="kariéra.html" class="text-gray-400 hover:text-white transition duration-150">Kariéra</a>
</li>
<li>
<a href="kontakt.html" class="text-gray-400 hover:text-white transition duration-150">Kontakt</a>
</li>
</ul>
</div>
<!-- Column 4: Contact Info -->
<div>
<h3 class="text-lg font-semibold mb-4 text-white">Kontakt</h3>
<ul class="space-y-3">
<!-- <li class="flex items-start">
<ion-icon name="location-outline" class="text-sport-orange text-xl mt-1 mr-2"></ion-icon>
<span class="text-gray-400">Sportovní 123, 150 00 Praha 5</span>
</li> -->
<li class="flex items-start">
<ion-icon name="call-outline" class="text-sport-orange text-xl mt-1 mr-2"></ion-icon>
<div>
<div class="text-gray-400">+420 775 247 633</div>
<div class="text-gray-400">+420 778 701 838</div>
</div>
</li>
<li class="flex items-center">
<ion-icon name="mail-outline" class="text-sport-orange text-xl mr-2 mt-1"></ion-icon>
<div>
<div class="text-gray-400 cursor-pointer hover:text-white transition-colors" onclick="copyEmailAndRedirect('info@sportcreative.eu')">info@sportcreative.eu</div>
<div class="text-sm text-sport-orange">Odpovídáme do 24 hodin</div>
</div>
</li>
<li class="flex items-start">
<ion-icon name="time-outline" class="text-sport-orange text-xl mt-1 mr-2"></ion-icon>
<span class="text-gray-400">Po-Ne: 8:00 - 20:00</span>
</li>
</ul>
</div>
</div>
</div>
<!-- Copyright -->
<div class="border-t border-gray-800 py-6">
<div class="container mx-auto px-4 sm:px-6 lg:px-8 flex flex-col md:flex-row justify-between items-center">
<p class="text-gray-400 text-sm mb-4 md:mb-0">
&copy; 2025 SportCreative. Všechna práva vyhrazena.
</p>
<div class="flex space-x-4 text-sm text-gray-400">
<a href="obchodni-podminky.html" class="hover:text-white transition duration-150">Podmínky použití</a>
<a href="gdpr.html" class="hover:text-white transition duration-150">Ochrana soukromí</a>
<a href="cookies.html" class="hover:text-white transition duration-150">Cookies</a>
</div>
</div>
</div>
</footer>
<!-- Back to Top Button -->
<button class="fixed bottom-6 right-6 bg-sport-orange rounded-full shadow-lg opacity-0 invisible transition-all duration-300 hover:bg-sport-purple hover:scale-110" id="backToTop">
<ion-icon name="arrow-up-outline"></ion-icon>
</button>
<!-- Ionicons Script - Placed at the end for performance -->
<script type="module" src="https://cdn.jsdelivr.net/npm/ionicons@latest/dist/ionicons/ionicons.esm.js"></script>
<!-- Simple JavaScript for Back to Top functionality -->
<script>
// Copy email to clipboard and redirect to contact page
function copyEmailAndRedirect(email) {
// Copy email to clipboard
navigator.clipboard.writeText(email).then(function() {
// Show copied tooltip or feedback if needed
console.log('Email zkopírován do schránky');
// Redirect to contact page
window.location.href = 'kontakt.html';
}).catch(function(err) {
console.error('Nepodařilo se zkopírovat email: ', err);
// Still redirect even if copy fails
window.location.href = 'kontakt.html';
});
}
document.addEventListener('DOMContentLoaded', function() {
const backToTopButton = document.getElementById('backToTop');
window.addEventListener('scroll', function() {
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', function() {
window.scrollTo({
top: 0,
behavior: 'smooth'
});
});
});
</script>
<script src="script.js" defer></script>
<style>
/* Cookie Consent Styles */
.cookie-consent {
position: fixed;
left: 0;
right: 0;
bottom: 0;
z-index: 9999;
padding: 16px;
display: flex;
justify-content: center;
transition: transform 0.3s ease;
}
.cookie-consent.hidden {
transform: translateY(100%);
}
.cookie-consent-banner {
background: white;
border-radius: 15px;
box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1),
0 8px 10px -6px rgba(0, 0, 0, 0.1);
padding: 1.5rem 1.5rem 1.5rem 1.25rem;
max-width: 800px;
width: 100%;
display: flex;
align-items: center;
gap: 1rem;
position: relative;
overflow: hidden;
}
.cookie-message {
flex: 1;
font-size: 1rem;
line-height: 1.5;
color: #333;
}
.cookie-link {
color: #6c38d9;
text-decoration: none;
font-weight: 600;
margin-left: 0.25rem;
transition: 0.3s;
}
.cookie-link:hover {
text-decoration: underline;
}
.cookie-button {
border: none;
border-radius: 9999px;
padding: 0.6rem 1.75rem;
font-weight: 600;
font-size: 0.95rem;
line-height: 1.5;
white-space: nowrap;
min-width: 120px;
text-align: center;
background: linear-gradient(135deg, #6c38d9 0%, #8a5ad1 100%);
color: white;
cursor: pointer;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.cookie-button:hover {
transform: translateY(-1px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
@media (max-width: 767px) {
.cookie-consent-banner {
flex-direction: column;
text-align: center;
}
.cookie-button {
width: 100%;
margin-top: 1rem;
}
}
</style>
<!-- Cookie Consent HTML -->
<div id="cookieConsent" class="cookie-consent hidden">
<div class="cookie-consent-banner">
<p class="cookie-message">
Pro zajištění nejlepšího zážitku používáme cookies. Pokračováním souhlasíte s naším
<a href="cookies.html" class="cookie-link" target="_blank" rel="noopener noreferrer">
sběrem a používáním dat
</a>
</p>
<button id="cookieConsentButton" class="cookie-button">Rozumím</button>
</div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const cookieConsent = document.getElementById('cookieConsent');
const consentButton = document.getElementById('cookieConsentButton');
const consentKey = 'cookieConsentAccepted';
// Check if consent was already given
if (!localStorage.getItem(consentKey)) {
cookieConsent.classList.remove('hidden');
}
// Handle button click
consentButton.addEventListener('click', function() {
localStorage.setItem(consentKey, 'true');
cookieConsent.classList.add('hidden');
});
});
</script>
</body>
</html>