Logos are the visual cornerstone of a brand's identity, encapsulating its essence in a single image. They serve as the first impression and a lasting symbol of what a company stands for.
In this article, we will explore 10 logo examples that exemplify creativity, simplicity, and effectiveness. Each logo tells a unique story, offering valuable insights into the art of branding.
CODE1
Here's the code:
CODETEXT1
CODE2
Here's the code:
CODETEXT2
CODE3
Here's the code:
CODETEXT3
CODE4
Here's the code:
CODETEXT4
CODE5
Here's the code:
CODETEXT5
Designers and developers, elevate your logo creation with Subframe's drag-and-drop interface and intuitive, responsive canvas. Loved by professionals, Subframe ensures pixel-perfect UI every time.
Ready to transform your design process? Start for free today!
CODE6
Here's the code:
CODETEXT6
CODE7
Here's the code:
CODETEXT7
CODE8
Here's the code:
CODETEXT8
CODE9
Here's the code:
CODETEXT9
CODE10
Here's the code:
CODETEXT10
Unlock the power of Subframe to design stunning UIs and logos with unmatched efficiency. Our drag-and-drop editor and beautifully crafted components ensure pixel-perfect results every time.
Why wait? Start creating immediately and elevate your design process. Start for free today!
<html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>NexusTech Logo Design</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; } body { width: 100%; height: 100vh; display: flex; justify-content: center; align-items: center; background-color: #f8f9fa; overflow: hidden; } .container { width: 100%; max-width: 700px; height: 700px; padding: 2rem; display: flex; flex-direction: column; align-items: center; position: relative; } .logo-container { position: relative; width: 300px; height: 300px; margin-top: 2rem; display: flex; justify-content: center; align-items: center; transition: transform 0.6s ease; transform-style: preserve-3d; cursor: pointer; } .logo-container:hover { transform: rotateY(180deg); } .logo-front, .logo-back { position: absolute; width: 100%; height: 100%; backface-visibility: hidden; display: flex; justify-content: center; align-items: center; } .logo-back { transform: rotateY(180deg); text-align: center; padding: 20px; border-radius: 20px; background: rgba(255, 255, 255, 0.9); box-shadow: 0 8px 32px rgba(31, 38, 135, 0.2); } .shape { position: absolute; transition: all 0.5s ease; } .hexagon { width: 150px; height: 86.6px; background: linear-gradient(135deg, #4F56FF, #6C63FF); position: relative; box-shadow: 0 10px 20px rgba(108, 99, 255, 0.2); } .hexagon:before, .hexagon:after { content: ""; position: absolute; width: 0; border-left: 75px solid transparent; border-right: 75px solid transparent; } .hexagon:before { bottom: 100%; border-bottom: 43.3px solid #4F56FF; } .hexagon:after { top: 100%; border-top: 43.3px solid #6C63FF; } .square { width: 80px; height: 80px; background: linear-gradient(135deg, #1DE9B6, #00E5FF); transform: rotate(45deg); box-shadow: 0 10px 20px rgba(0, 229, 255, 0.2); } .circle { width: 60px; height: 60px; border-radius: 50%; background: linear-gradient(135deg, #FF4081, #FF9A8B); box-shadow: 0 10px 20px rgba(255, 64, 129, 0.2); } .text-container { margin-top: 3rem; text-align: center; } h1 { font-size: 2.5rem; font-weight: 800; margin-bottom: 0.5rem; color: #333; background: linear-gradient(135deg, #4F56FF, #6C63FF); -webkit-background-clip: text; -webkit-text-fill-color: transparent; letter-spacing: -0.5px; opacity: 0; transform: translateY(20px); animation: fadeUp 0.8s forwards 0.5s; } h2 { font-size: 1.1rem; font-weight: 500; color: #666; margin-bottom: 1.5rem; opacity: 0; transform: translateY(20px); animation: fadeUp 0.8s forwards 0.7s; max-width: 500px; line-height: 1.6; } .button { padding: 0.8rem 1.8rem; border: none; border-radius: 30px; background: linear-gradient(135deg, #4F56FF, #6C63FF); color: white; font-weight: 600; cursor: pointer; box-shadow: 0 5px 15px rgba(108, 99, 255, 0.3); transition: all 0.3s ease; opacity: 0; transform: translateY(20px); animation: fadeUp 0.8s forwards 0.9s; position: relative; overflow: hidden; } .button:hover { transform: translateY(-3px); box-shadow: 0 8px 25px rgba(108, 99, 255, 0.4); } .button::after { content: ""; position: absolute; top: 50%; left: 50%; width: 5px; height: 5px; background: rgba(255, 255, 255, 0.7); opacity: 0; border-radius: 100%; transform: scale(1, 1) translate(-50%); transform-origin: 50% 50%; } .button:hover::after { animation: ripple 1s ease-out; } @keyframes ripple { 0% { transform: scale(0, 0); opacity: 0.5; } 100% { transform: scale(20, 20); opacity: 0; } } @keyframes fadeUp { to { opacity: 1; transform: translateY(0); } } .particles { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; } .particle { position: absolute; border-radius: 50%; opacity: 0.5; animation: float 15s infinite linear; } @keyframes float { 0% { transform: translateY(0) translateX(0) rotate(0deg); opacity: 0; } 10% { opacity: 0.5; } 90% { opacity: 0.5; } 100% { transform: translateY(-100vh) translateX(100px) rotate(360deg); opacity: 0; } } .tech-features { display: flex; justify-content: space-around; width: 100%; max-width: 600px; margin-top: 3rem; opacity: 0; transform: translateY(20px); animation: fadeUp 0.8s forwards 1.1s; } .feature { text-align: center; padding: 1rem; border-radius: 10px; background: rgba(255, 255, 255, 0.9); box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); transition: all 0.3s ease; width: 30%; } .feature:hover { transform: translateY(-5px); box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08); } .feature-icon { font-size: 1.5rem; margin-bottom: 0.8rem; color: #6C63FF; } .feature-title { font-size: 0.9rem; font-weight: 600; margin-bottom: 0.5rem; color: #333; } .feature-desc { font-size: 0.8rem; color: #666; line-height: 1.4; } @media (max-width: 700px) { .container { padding: 1.5rem; height: auto; } .logo-container { width: 200px; height: 200px; margin-top: 1rem; } .hexagon { width: 100px; height: 57.7px; } .hexagon:before, .hexagon:after { border-left: 50px solid transparent; border-right: 50px solid transparent; } .hexagon:before { border-bottom: 28.9px solid #4F56FF; } .hexagon:after { border-top: 28.9px solid #6C63FF; } .square { width: 50px; height: 50px; } .circle { width: 40px; height: 40px; } h1 { font-size: 1.8rem; } h2 { font-size: 1rem; margin-bottom: 1rem; } .tech-features { flex-direction: column; align-items: center; margin-top: 1.5rem; } .feature { width: 80%; margin-bottom: 1rem; } } </style> </head> <body> <div class="container"> <div class="particles" id="particles"></div> <div class="logo-container" id="logo"> <div class="logo-front"> <div class="shape hexagon" id="hexagon"></div> <div class="shape square" id="square"></div> <div class="shape circle" id="circle"></div> </div> <div class="logo-back"> <div> <h3 style="font-size: 1.2rem; margin-bottom: 10px; color: #4F56FF;">NexusTech</h3> <p style="font-size: 0.9rem; line-height: 1.4; color: #555;">Hover or click to flip back. Our geometric design represents the fusion of simplicity and technological advancement.</p> </div> </div> </div> <div class="text-container"> <h1>NexusTech</h1> <h2>Where geometric precision meets technological innovation. Our cutting-edge solutions transform complex problems into elegantly simple digital experiences.</h2> <button class="button" id="animateButton">Explore Our Tech</button> </div> <div class="tech-features"> <div class="feature"> <div class="feature-icon">△</div> <div class="feature-title">AI Integration</div> <div class="feature-desc">Seamless machine learning solutions for tomorrow's challenges</div> </div> <div class="feature"> <div class="feature-icon">□</div> <div class="feature-title">Edge Computing</div> <div class="feature-desc">Faster processing at the network's edge for real-time data</div> </div> <div class="feature"> <div class="feature-icon">○</div> <div class="feature-title">Quantum Security</div> <div class="feature-desc">Next-gen cryptographic protection for your digital assets</div> </div> </div> </div> <script> // Logo animation and interaction const logo = document.getElementById('logo'); const hexagon = document.getElementById('hexagon'); const square = document.getElementById('square'); const circle = document.getElementById('circle'); const animateButton = document.getElementById('animateButton'); // Initial positions positionShapes(); function positionShapes() { hexagon.style.top = '50%'; hexagon.style.left = '50%'; hexagon.style.transform = 'translate(-50%, -50%)'; square.style.top = '65%'; square.style.left = '35%'; square.style.transform = 'translate(-50%, -50%) rotate(45deg)'; circle.style.top = '30%'; circle.style.left = '60%'; circle.style.transform = 'translate(-50%, -50%)'; } // Logo hover animation logo.addEventListener('mousemove', (e) => { if (!logo.classList.contains('animating')) { const xAxis = (window.innerWidth / 2 - e.pageX) / 25; const yAxis = (window.innerHeight / 2 - e.pageY) / 25; logo.style.transform = `rotateY(${xAxis}deg) rotateX(${yAxis}deg)`; } }); logo.addEventListener('mouseleave', () => { if (!logo.classList.contains('animating')) { logo.style.transform = 'rotateY(0deg) rotateX(0deg)'; } }); // Button animation animateButton.addEventListener('click', () => { if (logo.classList.contains('animating')) return; logo.classList.add('animating'); // Animate hexagon anime({ targets: hexagon, top: '40%', left: '50%', scale: 1.2, duration: 800, easing: 'easeOutElastic(1, .5)' }); // Animate square anime({ targets: square, top: '60%', left: '30%', scale: 1.3, rotate: '225deg', duration: 800, easing: 'easeOutElastic(1, .5)' }); // Animate circle anime({ targets: circle, top: '60%', left: '70%', scale: 1.3, duration: 800, easing: 'easeOutElastic(1, .5)', complete: function() { setTimeout(() => { // Reset positions anime({ targets: [hexagon, square, circle], scale: 1, duration: 600, easing: 'easeInOutQuad', complete: function() { positionShapes(); logo.classList.remove('animating'); } }); }, 1000); } }); }); // Create floating particles const particles = document.getElementById('particles'); const colors = ['#4F56FF', '#6C63FF', '#1DE9B6', '#00E5FF', '#FF4081', '#FF9A8B']; const particleCount = 20; for (let i = 0; i < particleCount; i++) { createParticle(); } function createParticle() { const particle = document.createElement('div'); particle.classList.add('particle'); const size = Math.random() * 15 + 5; const color = colors[Math.floor(Math.random() * colors.length)]; particle.style.width = `${size}px`; particle.style.height = `${size}px`; particle.style.background = color; particle.style.left = `${Math.random() * 100}%`; particle.style.top = `${Math.random() * 100}%`; const duration = Math.random() * 20 + 10; const delay = Math.random() * 5; particle.style.animation = `float ${duration}s infinite linear ${delay}s`; particles.appendChild(particle); } // Anime.js library (minimal version for this project) const anime = (() => { function setValue(targets, prop, value) { if (typeof targets === 'object' && !Array.isArray(targets)) { targets.style[prop] = value; } else if (Array.isArray(targets)) { targets.forEach(t => t.style[prop] = value); } } function animate({targets, duration = 1000, easing = 'linear', ...props}) { const startTime = performance.now(); const initialState = {}; const targetState = {}; // Extract numeric values and units from CSS properties Object.keys(props).forEach(key => { if (key !== 'complete') { const targetValue = props[key]; let initialValue; if (key === 'rotate' || key === 'scale') { initialValue = getComputedStyle(targets).transform; targetState[key] = targetValue; } else { initialValue = getComputedStyle(targets)[key]; targetState[key] = targetValue; } initialState[key] = initialValue; } }); function easingFunctions(t, type) { if (type === 'linear') return t; if (type === 'easeInOutQuad') return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t; if (type.startsWith('easeOutElastic')) { const [_, c, d] = type.match(/easeOutElastic\((\d+(?:\.\d+)?),\s*(\d+(?:\.\d+)?)\)/) || [null, 1, 0.5]; const p = parseFloat(d) * 1.5; return Math.pow(2, -10 * t) * Math.sin((t - p / 4) * (2 * Math.PI) / p) + 1; } return t; // Default to linear } function step(currentTime) { const elapsed = currentTime - startTime; const progress = Math.min(elapsed / duration, 1); const easedProgress = easingFunctions(progress, easing); Object.keys(targetState).forEach(key => { if (key === 'rotate') { setValue(targets, 'transform', `rotate(${targetState[key]})`); } else if (key === 'scale') { setValue(targets, 'transform', `scale(${targetState[key]})`); } else if (key === 'top' || key === 'left') { setValue(targets, key, targetState[key]); } }); if (progress < 1) { requestAnimationFrame(step); } else if (props.complete) { props.complete(); } } requestAnimationFrame(step); } return { animate }; })().animate; </script> </body> </html>
<html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>NurtureCare Health</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } body { background-color: #f9f9f9; display: flex; justify-content: center; align-items: center; min-height: 700px; overflow: hidden; position: relative; } .container { width: 100%; max-width: 700px; min-height: 700px; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding: 2rem; position: relative; overflow: hidden; } .background-pattern { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0.05; z-index: -1; background-image: radial-gradient(#5cb8b2 1px, transparent 1px), radial-gradient(#5cb8b2 1px, transparent 1px); background-size: 20px 20px; background-position: 0 0, 10px 10px; } .logo-container { display: flex; flex-direction: column; align-items: center; margin-top: 2rem; margin-bottom: 3rem; transform: scale(0.9); opacity: 0; animation: logoEntrance 1.2s ease-out forwards; } @keyframes logoEntrance { 0% { transform: scale(0.8); opacity: 0; } 100% { transform: scale(1); opacity: 1; } } .logo-symbol { width: 110px; height: 110px; position: relative; margin-bottom: 1rem; } .pulse-circle { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 50%; background: linear-gradient(135deg, #5cb8b2, #73c2bc); box-shadow: 0 6px 20px rgba(92, 184, 178, 0.3); display: flex; justify-content: center; align-items: center; transform-origin: center; animation: pulse 2.5s infinite; } @keyframes pulse { 0% { transform: scale(1); box-shadow: 0 6px 20px rgba(92, 184, 178, 0.3); } 50% { transform: scale(1.05); box-shadow: 0 8px 24px rgba(92, 184, 178, 0.4); } 100% { transform: scale(1); box-shadow: 0 6px 20px rgba(92, 184, 178, 0.3); } } .heart-icon { width: 60%; height: auto; fill: white; animation: beat 2.5s infinite; transform-origin: center; } @keyframes beat { 0% { transform: scale(1); } 15% { transform: scale(1.15); } 30% { transform: scale(1); } 45% { transform: scale(1.05); } 60% { transform: scale(1); } } .logo-text { font-size: 2.2rem; font-weight: 600; color: #406663; letter-spacing: 0.5px; margin-bottom: 0.3rem; } .logo-tagline { color: #5cb8b2; font-size: 1rem; font-weight: 400; letter-spacing: 1px; } .content-section { background: white; border-radius: 16px; padding: 2.5rem; box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06); width: 100%; margin-bottom: 2rem; transform: translateY(20px); opacity: 0; animation: slideUp 0.8s ease-out forwards 0.8s; position: relative; overflow: hidden; } @keyframes slideUp { 0% { transform: translateY(20px); opacity: 0; } 100% { transform: translateY(0); opacity: 1; } } .content-section::after { content: ''; position: absolute; bottom: 0; right: 0; width: 150px; height: 150px; background: linear-gradient(135deg, rgba(92, 184, 178, 0.08), transparent); border-radius: 50% 0 0 0; z-index: 0; } h1 { color: #406663; font-size: 1.6rem; margin-bottom: 1.2rem; position: relative; display: inline-block; } h1::after { content: ''; position: absolute; bottom: -8px; left: 0; width: 40px; height: 3px; background: linear-gradient(to right, #5cb8b2, transparent); border-radius: 3px; } p { color: #5a6268; line-height: 1.6; margin-bottom: 1.5rem; position: relative; z-index: 1; } .values-container { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 1.5rem; } .value-item { width: 48%; background-color: #f9fafa; border-radius: 12px; padding: 1.2rem; margin-bottom: 1rem; border-left: 3px solid #5cb8b2; transition: all 0.3s ease; cursor: pointer; } .value-item:hover { transform: translateY(-3px); box-shadow: 0 5px 15px rgba(92, 184, 178, 0.15); background-color: #f0f7f7; } .value-item h3 { color: #406663; font-size: 1.1rem; margin-bottom: 0.5rem; display: flex; align-items: center; } .value-item h3 svg { width: 18px; height: 18px; margin-right: 8px; fill: #5cb8b2; } .value-item p { font-size: 0.9rem; margin-bottom: 0; } .contact-cta { display: flex; align-items: center; justify-content: space-between; margin-top: 1.5rem; background: linear-gradient(135deg, #5cb8b2, #73c2bc); padding: 1rem 1.5rem; border-radius: 12px; color: white; box-shadow: 0 5px 15px rgba(92, 184, 178, 0.3); transition: all 0.3s ease; cursor: pointer; position: relative; overflow: hidden; } .contact-cta::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transition: all 0.6s ease; } .contact-cta:hover::before { left: 100%; } .contact-cta:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(92, 184, 178, 0.4); } .contact-cta span { font-weight: 500; letter-spacing: 0.5px; } .contact-cta svg { width: 24px; height: 24px; fill: white; animation: bounce 2s infinite; } @keyframes bounce { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(5px); } } @media (max-width: 600px) { .container { padding: 1.5rem; } .content-section { padding: 1.5rem; } .value-item { width: 100%; } .logo-text { font-size: 1.8rem; } .logo-symbol { width: 90px; height: 90px; } } </style> </head> <body> <div class="container"> <div class="background-pattern"></div> <div class="logo-container"> <div class="logo-symbol"> <div class="pulse-circle"> <svg class="heart-icon" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/> </svg> </div> </div> <h2 class="logo-text">NurtureCare</h2> <p class="logo-tagline">COMPASSIONATE HEALTHCARE</p> </div> <section class="content-section"> <h1>Compassionate Care, Modern Approach</h1> <p>At NurtureCare, we believe healthcare should address not just physical symptoms but the whole person. Our approach combines advanced medical expertise with genuine human connection, creating a healing environment where patients feel truly cared for.</p> <div class="values-container"> <div class="value-item"> <h3> <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm4.59-12.42L10 14.17l-2.59-2.58L6 13l4 4 8-8z"/> </svg> Patient-First Focus </h3> <p>Your health journey is unique. We listen carefully to understand your specific needs and concerns.</p> </div> <div class="value-item"> <h3> <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path d="M16 11c1.66 0 2.99-1.34 2.99-3S17.66 5 16 5s-3 1.34-3 3 1.34 3 3 3zm-8 0c1.66 0 2.99-1.34 2.99-3S9.66 5 8 5 5 6.34 5 8s1.34 3 3 3zm0 2c-2.33 0-7 1.17-7 3.5V19h14v-2.5c0-2.33-4.67-3.5-7-3.5zm8 0c-.29 0-.62.02-.97.05 1.16.84 1.97 1.97 1.97 3.45V19h6v-2.5c0-2.33-4.67-3.5-7-3.5z"/> </svg> Compassionate Team </h3> <p>Our professionals combine clinical excellence with empathy to provide care that honors your dignity.</p> </div> <div class="value-item"> <h3> <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V5h14v14zM7 10h2v7H7zm4-3h2v10h-2zm4 6h2v4h-2z"/> </svg> Evidence-Based Care </h3> <p>We combine trusted medical practices with the latest innovations for optimal health outcomes.</p> </div> <div class="value-item"> <h3> <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path d="M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm0 10.99h7c-.53 4.12-3.28 7.79-7 8.94V12H5V6.3l7-3.11v8.8z"/> </svg> Preventive Wellness </h3> <p>Beyond treating illness, we empower you with tools and knowledge for lifelong wellness.</p> </div> </div> <div class="contact-cta" id="contact-button"> <span>Schedule Your Consultation</span> <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path d="M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z"/> </svg> </div> </section> </div> <script> document.addEventListener('DOMContentLoaded', function() { const contactButton = document.getElementById('contact-button'); const valueItems = document.querySelectorAll('.value-item'); contactButton.addEventListener('click', function() { // Creating a pulse effect when clicked this.style.transform = 'scale(0.95)'; setTimeout(() => { this.style.transform = 'translateY(-3px)'; }, 150); // Show a message instead of an alert const messageExists = document.querySelector('.message-popup'); if (!messageExists) { const message = document.createElement('div'); message.className = 'message-popup'; message.style.position = 'fixed'; message.style.top = '20px'; message.style.left = '50%'; message.style.transform = 'translateX(-50%)'; message.style.backgroundColor = '#406663'; message.style.color = 'white'; message.style.padding = '1rem 2rem'; message.style.borderRadius = '8px'; message.style.boxShadow = '0 5px 15px rgba(0,0,0,0.1)'; message.style.zIndex = '1000'; message.style.opacity = '0'; message.style.transition = 'opacity 0.3s ease'; message.textContent = 'Thank you for your interest! A care specialist will contact you soon.'; document.body.appendChild(message); setTimeout(() => { message.style.opacity = '1'; }, 10); setTimeout(() => { message.style.opacity = '0'; setTimeout(() => { message.remove(); }, 300); }, 3000); } }); // Add interactive effects to value items valueItems.forEach(item => { item.addEventListener('mouseenter', function() { const icon = this.querySelector('svg'); icon.style.transform = 'scale(1.2)'; icon.style.transition = 'transform 0.3s ease'; }); item.addEventListener('mouseleave', function() { const icon = this.querySelector('svg'); icon.style.transform = 'scale(1)'; }); item.addEventListener('click', function() { this.style.backgroundColor = '#e0f0ef'; setTimeout(() => { this.style.backgroundColor = '#f0f7f7'; }, 300); }); }); }); </script> </body> </html>
<html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Strategen Financial</title> <style> @import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap'); :root { --deep-blue: #003366; --secondary-blue: #004d99; --light-blue: #e6f0ff; --metallic: #c0c0c0; --metallic-highlight: #d9d9d9; --dark-text: #1a1a1a; --light-text: #ffffff; } * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Montserrat', sans-serif; } body { background-color: #f5f5f5; color: var(--dark-text); overflow-x: hidden; height: 100vh; display: flex; flex-direction: column; justify-content: center; align-items: center; } .container { width: 100%; max-width: 700px; height: 700px; padding: 20px; display: flex; flex-direction: column; position: relative; overflow: hidden; } .logo-container { display: flex; justify-content: center; align-items: center; margin-bottom: 40px; position: relative; z-index: 2; } .logo { display: flex; flex-direction: column; align-items: center; transform: translateY(20px); opacity: 0; animation: fadeIn 1s ease forwards; } .logo-symbol { position: relative; width: 120px; height: 120px; margin-bottom: 15px; } .logo-square { position: absolute; width: 80px; height: 80px; background: var(--deep-blue); transform: rotate(45deg); top: 20px; left: 20px; transition: all 0.5s ease; } .logo-inner { position: absolute; width: 40px; height: 40px; border: 4px solid var(--metallic); transform: rotate(45deg); top: 40px; left: 40px; transition: all 0.5s ease; } .logo-line { position: absolute; height: 4px; background: var(--metallic); transition: width 0.8s ease; } .line-top { width: 0; top: 10px; left: 0; animation: expandLine 0.8s ease 0.5s forwards; } .line-right { width: 0; top: 110px; right: 0; animation: expandLine 0.8s ease 0.7s forwards; } .logo-text { text-align: center; } .logo-name { font-size: 32px; font-weight: 700; color: var(--deep-blue); letter-spacing: 1px; margin-bottom: 5px; position: relative; } .logo-name::after { content: ''; position: absolute; bottom: -5px; left: 50%; transform: translateX(-50%); width: 0; height: 3px; background: var(--metallic); transition: width 0.8s ease; animation: expandUnderline 0.8s ease 1s forwards; } .logo-tagline { font-size: 14px; font-weight: 500; color: var(--secondary-blue); letter-spacing: 1.5px; text-transform: uppercase; opacity: 0; animation: fadeIn 0.5s ease 1.2s forwards; } .content { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; z-index: 2; } .tagline { font-size: 24px; font-weight: 600; color: var(--dark-text); text-align: center; margin-bottom: 30px; opacity: 0; transform: translateY(20px); animation: fadeIn 0.8s ease 1.5s forwards; } .values { display: flex; justify-content: center; flex-wrap: wrap; gap: 30px; margin-bottom: 40px; } .value-item { width: 140px; text-align: center; opacity: 0; transform: translateY(20px); } .value-item:nth-child(1) { animation: fadeIn 0.8s ease 1.8s forwards; } .value-item:nth-child(2) { animation: fadeIn 0.8s ease 2s forwards; } .value-item:nth-child(3) { animation: fadeIn 0.8s ease 2.2s forwards; } .value-icon { width: 60px; height: 60px; margin: 0 auto 15px; border-radius: 50%; background: var(--light-blue); display: flex; justify-content: center; align-items: center; transition: all 0.3s ease; } .value-icon svg { width: 30px; height: 30px; fill: var(--deep-blue); transition: all 0.3s ease; } .value-title { font-size: 16px; font-weight: 600; color: var(--deep-blue); margin-bottom: 8px; } .value-desc { font-size: 13px; color: #666; line-height: 1.4; } .cta-button { padding: 12px 30px; background: var(--deep-blue); color: var(--light-text); border: none; border-radius: 4px; font-size: 16px; font-weight: 600; cursor: pointer; transition: all 0.3s ease; position: relative; overflow: hidden; opacity: 0; transform: translateY(20px); animation: fadeIn 0.8s ease 2.4s forwards; } .cta-button::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transition: all 0.6s ease; } .background-element { position: absolute; background: var(--light-blue); z-index: 1; } .bg-square-1 { width: 200px; height: 200px; top: -100px; left: -100px; transform: rotate(45deg); opacity: 0.4; } .bg-square-2 { width: 150px; height: 150px; bottom: 50px; right: -50px; transform: rotate(45deg); opacity: 0.3; } .grid-lines { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; pointer-events: none; opacity: 0.05; } .horizontal-line, .vertical-line { position: absolute; background: var(--deep-blue); } .horizontal-line { height: 1px; width: 100%; left: 0; } .vertical-line { width: 1px; height: 100%; top: 0; } /* Animations */ @keyframes fadeIn { to { opacity: 1; transform: translateY(0); } } @keyframes expandLine { to { width: 100px; } } @keyframes expandUnderline { to { width: 60%; } } /* Hover effects */ .logo-symbol:hover .logo-square { transform: rotate(135deg); background: var(--secondary-blue); } .logo-symbol:hover .logo-inner { transform: rotate(-45deg); } .value-item:hover .value-icon { background: var(--deep-blue); } .value-item:hover .value-icon svg { fill: var(--light-text); } .cta-button:hover { background: var(--secondary-blue); transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0, 51, 102, 0.2); } .cta-button:hover::before { left: 100%; } /* Responsive */ @media (max-width: 600px) { .logo-symbol { width: 100px; height: 100px; } .logo-square { width: 70px; height: 70px; top: 15px; left: 15px; } .logo-inner { width: 35px; height: 35px; top: 32px; left: 32px; } .line-top, .line-right { animation: expandLine 0.8s ease 0.5s forwards; } @keyframes expandLine { to { width: 80px; } } .logo-name { font-size: 28px; } .logo-tagline { font-size: 12px; } .tagline { font-size: 20px; margin-bottom: 20px; } .values { gap: 15px; } .value-item { width: 120px; } .value-icon { width: 50px; height: 50px; } .value-title { font-size: 14px; } .value-desc { font-size: 12px; } } </style> </head> <body> <div class="container"> <div class="background-element bg-square-1"></div> <div class="background-element bg-square-2"></div> <div class="grid-lines"> <!-- Horizontal lines --> <div class="horizontal-line" style="top: 20%;"></div> <div class="horizontal-line" style="top: 40%;"></div> <div class="horizontal-line" style="top: 60%;"></div> <div class="horizontal-line" style="top: 80%;"></div> <!-- Vertical lines --> <div class="vertical-line" style="left: 20%;"></div> <div class="vertical-line" style="left: 40%;"></div> <div class="vertical-line" style="left: 60%;"></div> <div class="vertical-line" style="left: 80%;"></div> </div> <div class="logo-container"> <div class="logo"> <div class="logo-symbol"> <div class="logo-square"></div> <div class="logo-inner"></div> <div class="logo-line line-top"></div> <div class="logo-line line-right"></div> </div> <div class="logo-text"> <div class="logo-name">Strategen</div> <div class="logo-tagline">Financial Services</div> </div> </div> </div> <div class="content"> <div class="tagline">Building wealth with structured precision</div> <div class="values"> <div class="value-item"> <div class="value-icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"> <path d="M184 48H328c4.4 0 8 3.6 8 8V96H176V56c0-4.4 3.6-8 8-8zm-56 8V96H64C28.7 96 0 124.7 0 160v256c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V160c0-35.3-28.7-64-64-64H384V56c0-30.9-25.1-56-56-56H184c-30.9 0-56 25.1-56 56zm96 152c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H240c-8.8 0-16-7.2-16-16V208zm-96 0c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H144c-8.8 0-16-7.2-16-16V208zm192 0c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H336c-8.8 0-16-7.2-16-16V208zm-96 96c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H240c-8.8 0-16-7.2-16-16V304zm-96 0c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H144c-8.8 0-16-7.2-16-16V304zm192 0c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H336c-8.8 0-16-7.2-16-16V304z"/> </svg> </div> <div class="value-title">Stability</div> <div class="value-desc">30+ years of consistent portfolio growth for our clients</div> </div> <div class="value-item"> <div class="value-icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"> <path d="M308.5 135.3c7.1-6.3 9.9-16.2 6.2-25c-2.3-5.3-4.8-10.5-7.6-15.5L304 89.4c-3-5-6.3-9.9-9.8-14.6c-5.7-7.6-15.7-10.1-24.7-7.1l-28.2 9.3c-10.7-8.8-23-16-36.2-20.9L199 27.1c-1.9-9.3-9.1-16.7-18.5-17.8C173.7 8.4 166.9 8 160 8s-13.7 .4-20.4 1.2c-9.4 1.1-16.6 8.6-18.5 17.8L115 56.1c-13.3 5-25.5 12.1-36.2 20.9L50.5 67.8c-9-3-19-.5-24.7 7.1c-3.5 4.7-6.8 9.6-9.9 14.6l-3 5.3c-2.8 5-5.3 10.2-7.6 15.6c-3.7 8.7-.9 18.6 6.2 25l22.2 19.8C32.6 161.9 32 168.9 32 176s.6 14.1 1.7 20.9L11.5 216.7c-7.1 6.3-9.9 16.2-6.2 25c2.3 5.3 4.8 10.5 7.6 15.6l3 5.2c3 5.1 6.3 9.9 9.9 14.6c5.7 7.6 15.7 10.1 24.7 7.1l28.2-9.3c10.7 8.8 23 16 36.2 20.9l6.1 29.1c1.9 9.3 9.1 16.7 18.5 17.8c6.7 .8 13.5 1.2 20.4 1.2s13.7-.4 20.4-1.2c9.4-1.1 16.6-8.6 18.5-17.8l6.1-29.1c13.3-5 25.5-12.1 36.2-20.9l28.2 9.3c9 3 19 .5 24.7-7.1c3.5-4.7 6.8-9.5 9.8-14.6l3.1-5.4c2.8-5 5.3-10.2 7.6-15.5c3.7-8.7 .9-18.6-6.2-25l-22.2-19.8c1.1-6.8 1.7-13.8 1.7-20.9s-.6-14.1-1.7-20.9l22.2-19.8zM208 176c0 26.5-21.5 48-48 48s-48-21.5-48-48s21.5-48 48-48s48 21.5 48 48zM504.7 500.5c6.3 7.1 16.2 9.9 25 6.2c5.3-2.3 10.5-4.8 15.5-7.6l5.4-3.1c5-3 9.9-6.3 14.6-9.8c7.6-5.7 10.1-15.7 7.1-24.7l-9.3-28.2c8.8-10.7 16-23 20.9-36.2l29.1-6.1c9.3-1.9 16.7-9.1 17.8-18.5c.8-6.7 1.2-13.5 1.2-20.4s-.4-13.7-1.2-20.4c-1.1-9.4-8.6-16.6-17.8-18.5L583.9 307c-5-13.3-12.1-25.5-20.9-36.2l9.3-28.2c3-9 .5-19-7.1-24.7c-4.7-3.5-9.6-6.8-14.6-9.9l-5.3-3c-5-2.8-10.2-5.3-15.6-7.6c-8.7-3.7-18.6-.9-25 6.2l-19.8 22.2c-6.8-1.1-13.8-1.7-20.9-1.7s-14.1 .6-20.9 1.7l-19.8-22.2c-6.3-7.1-16.2-9.9-25-6.2c-5.3 2.3-10.5 4.8-15.6 7.6l-5.2 3c-5.1 3-9.9 6.3-14.6 9.9c-7.6 5.7-10.1 15.7-7.1 24.7l9.3 28.2c-8.8 10.7-16 23-20.9 36.2L315.1 313c-9.3 1.9-16.7 9.1-17.8 18.5c-.8 6.7-1.2 13.5-1.2 20.4s.4 13.7 1.2 20.4c1.1 9.4 8.6 16.6 17.8 18.5l29.1 6.1c5 13.3 12.1 25.5 20.9 36.2l-9.3 28.2c-3 9-.5 19 7.1 24.7c4.7 3.5 9.5 6.8 14.6 9.8l5.4 3.1c5 2.8 10.2 5.3 15.5 7.6c8.7 3.7 18.6 .9 25-6.2l19.8-22.2c6.8 1.1 13.8 1.7 20.9 1.7s14.1-.6 20.9-1.7l19.8 22.2zM464 400c-26.5 0-48-21.5-48-48s21.5-48 48-48s48 21.5 48 48s-21.5 48-48 48z"/> </svg> </div> <div class="value-title">Precision</div> <div class="value-desc">Tailored financial strategies aligned with your specific goals</div> </div> <div class="value-item"> <div class="value-icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"> <path d="M64 64C28.7 64 0 92.7 0 128V384c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H64zm64 320H64V320c35.3 0 64 28.7 64 64zM64 192V128h64c0 35.3-28.7 64-64 64zM448 384c0-35.3 28.7-64 64-64v64H448zm64-192c-35.3 0-64-28.7-64-64h64v64zM288 160a96 96 0 1 1 0 192 96 96 0 1 1 0-192z"/> </svg> </div> <div class="value-title">Security</div> <div class="value-desc">Institutional-grade protection for your assets and information</div> </div> </div> <button class="cta-button">Schedule a Consultation</button> </div> </div> <script> // Logo animation and interaction document.addEventListener('DOMContentLoaded', function() { const logoSymbol = document.querySelector('.logo-symbol'); const ctaButton = document.querySelector('.cta-button'); const valueItems = document.querySelectorAll('.value-item'); // Pulse animation for the logo inner setInterval(function() { const logoInner = document.querySelector('.logo-inner'); logoInner.style.boxShadow = '0 0 15px rgba(192, 192, 192, 0.8)'; setTimeout(function() { logoInner.style.boxShadow = 'none'; }, 1000); }, 3000); // CTA button shine effect ctaButton.addEventListener('mouseover', function() { this.style.transform = 'translateY(-2px)'; this.querySelector('::before').style.left = '100%'; }); ctaButton.addEventListener('mouseout', function() { this.style.transform = 'translateY(0)'; }); // CTA button click handler (just for effect) ctaButton.addEventListener('click', function(e) { e.preventDefault(); this.innerHTML = 'Thanks! We\'ll Contact You'; // Reset after 3 seconds setTimeout(() => { this.innerHTML = 'Schedule a Consultation'; }, 3000); }); // Create floating particles for background ambiance const container = document.querySelector('.container'); for (let i = 0; i < 15; i++) { const particle = document.createElement('div'); particle.style.position = 'absolute'; particle.style.width = Math.random() * 6 + 2 + 'px'; particle.style.height = particle.style.width; particle.style.background = '#003366'; particle.style.opacity = Math.random() * 0.1 + 0.05; particle.style.borderRadius = '50%'; particle.style.top = Math.random() * 100 + '%'; particle.style.left = Math.random() * 100 + '%'; particle.style.zIndex = '1'; particle.style.pointerEvents = 'none'; // Add floating animation particle.style.animation = `float ${Math.random() * 15 + 10}s linear infinite`; // Add keyframes for floating animation const styleSheet = document.styleSheets[0]; const keyframes = ` @keyframes float { 0% { transform: translate(0, 0); } 50% { transform: translate(${Math.random() * 50 - 25}px, ${Math.random() * 50 - 25}px); } 100% { transform: translate(0, 0); } }`; try { styleSheet.insertRule(keyframes, styleSheet.cssRules.length); } catch(e) { console.log('Error inserting rule:', e); } container.appendChild(particle); } }); </script> </body> </html>
<html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Saffron & Sage Culinary Studio</title> <style> @import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500;700&family=Montserrat:wght@300;400;600&display=swap'); * { margin: 0; padding: 0; box-sizing: border-box; } :root { --color-terracotta: #cd5c5c; --color-sage: #7a918d; --color-butter: #f9e0a2; --color-cream: #fff9eb; --color-dark: #4a3e3e; } body { font-family: 'Montserrat', sans-serif; background-color: var(--color-cream); color: var(--color-dark); height: 700px; width: 700px; max-width: 100%; overflow: hidden; display: flex; flex-direction: column; justify-content: center; align-items: center; } .container { position: relative; width: 100%; height: 100%; padding: 20px; overflow: hidden; } .logo-container { position: relative; width: 280px; height: 280px; margin: 0 auto 30px; cursor: pointer; transition: transform 0.5s ease; } .logo-container:hover { transform: scale(1.05); } .logo-circle { position: absolute; width: 100%; height: 100%; border-radius: 50%; background-color: var(--color-terracotta); display: flex; justify-content: center; align-items: center; overflow: hidden; box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15); } .logo-inner { position: absolute; width: 90%; height: 90%; border-radius: 50%; background-color: var(--color-butter); display: flex; justify-content: center; align-items: center; overflow: hidden; } .logo-text { position: absolute; width: 80%; height: 80%; border-radius: 50%; background-color: var(--color-cream); display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; padding: 20px; } .logo-name { font-family: 'Playfair Display', serif; font-weight: 700; font-size: 1.8rem; color: var(--color-dark); margin-bottom: 5px; line-height: 1.1; } .logo-tagline { font-family: 'Montserrat', sans-serif; font-weight: 300; font-size: 0.7rem; color: var(--color-sage); text-transform: uppercase; letter-spacing: 1px; } .utensil { position: absolute; opacity: 0.9; transition: transform 0.5s ease, opacity 0.3s ease; } .spoon { width: 12px; height: 100px; background-color: var(--color-sage); border-radius: 50% 50% 10% 10%; top: 50%; left: 10%; transform: translateY(-50%) rotate(30deg); } .fork { width: 12px; height: 100px; background-color: var(--color-sage); border-radius: 10% 10% 50% 50%; top: 50%; right: 10%; transform: translateY(-50%) rotate(-30deg); } .spoon::before { content: ''; position: absolute; width: 30px; height: 30px; background-color: var(--color-sage); border-radius: 50%; top: -15px; left: -10px; } .fork::before, .fork::after { content: ''; position: absolute; width: 8px; height: 30px; background-color: var(--color-sage); border-radius: 2px; bottom: -10px; } .fork::before { left: -5px; transform: rotate(-15deg); } .fork::after { right: -5px; transform: rotate(15deg); } .herb { position: absolute; opacity: 0.8; } .basil { width: 20px; height: 25px; background-color: var(--color-sage); border-radius: 50% 50% 50% 50%; top: 30%; left: 20%; transform: rotate(15deg); } .rosemary { width: 4px; height: 40px; background-color: var(--color-sage); top: 20%; right: 30%; transform: rotate(45deg); } .rosemary::before, .rosemary::after { content: ''; position: absolute; width: 15px; height: 4px; background-color: var(--color-sage); border-radius: 2px; } .rosemary::before { top: 10px; left: -5px; transform: rotate(45deg); } .rosemary::after { top: 25px; left: -5px; transform: rotate(45deg); } .content { text-align: center; max-width: 500px; margin: 0 auto; transition: opacity 0.5s ease; } h1 { font-family: 'Playfair Display', serif; font-size: 2.2rem; color: var(--color-terracotta); margin-bottom: 10px; } p { font-size: 0.9rem; line-height: 1.5; margin-bottom: 20px; color: var(--color-dark); } .services { display: flex; justify-content: center; gap: 15px; margin-top: 25px; } .service { width: 120px; height: 120px; background-color: var(--color-butter); border-radius: 8px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 12px; transition: transform 0.3s ease, box-shadow 0.3s ease; cursor: pointer; position: relative; overflow: hidden; } .service:hover { transform: translateY(-5px); box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1); } .service-icon { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; margin-bottom: 8px; transition: transform 0.3s ease; } .service:hover .service-icon { transform: scale(1.1); } .service-title { font-size: 0.8rem; font-weight: 600; text-align: center; transition: color 0.3s ease; } .service:hover .service-title { color: var(--color-terracotta); } .service::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 3px; background-color: var(--color-terracotta); transform: scaleX(0); transform-origin: center; transition: transform 0.3s ease; } .service:hover::after { transform: scaleX(1); } .hand-drawn { position: absolute; width: 100%; height: 100%; pointer-events: none; z-index: -1; } .squiggle { position: absolute; width: 80px; height: 20px; border: 2px solid var(--color-sage); border-top: none; border-left: none; border-right: none; border-radius: 0 0 50% 50%; opacity: 0.2; } .squiggle:nth-child(1) { top: 50px; left: 80px; transform: rotate(30deg) scale(0.8); } .squiggle:nth-child(2) { bottom: 100px; right: 120px; transform: rotate(-20deg) scale(1.2); } .dot { position: absolute; width: 6px; height: 6px; background-color: var(--color-terracotta); border-radius: 50%; opacity: 0.2; } .dot:nth-child(3) { top: 80px; right: 120px; } .dot:nth-child(4) { bottom: 60px; left: 150px; } .dot:nth-child(5) { top: 180px; left: 80px; } @media (max-width: 700px) { .logo-container { width: 220px; height: 220px; margin-bottom: 20px; } .logo-name { font-size: 1.5rem; } .logo-tagline { font-size: 0.65rem; } h1 { font-size: 1.8rem; } p { font-size: 0.8rem; } .services { gap: 10px; flex-wrap: wrap; } .service { width: 100px; height: 100px; } .service-icon { width: 30px; height: 30px; } .service-title { font-size: 0.7rem; } } @media (max-width: 480px) { .logo-container { width: 180px; height: 180px; } .services { flex-direction: column; align-items: center; } .service { width: 140px; height: 70px; flex-direction: row; justify-content: flex-start; gap: 15px; padding: 10px 15px; } .service-icon { margin-bottom: 0; } } </style> </head> <body> <div class="container"> <div class="hand-drawn"> <div class="squiggle"></div> <div class="squiggle"></div> <div class="dot"></div> <div class="dot"></div> <div class="dot"></div> </div> <div class="logo-container" id="logoContainer"> <div class="logo-circle"> <div class="utensil spoon"></div> <div class="utensil fork"></div> <div class="logo-inner"> <div class="herb basil"></div> <div class="herb rosemary"></div> <div class="logo-text"> <div class="logo-name">Saffron & Sage</div> <div class="logo-tagline">Culinary Studio</div> </div> </div> </div> </div> <div class="content"> <h1>Artisanal Cooking Experiences</h1> <p>We blend tradition with innovation in our Portland-based culinary studio. From seed to plate, our farm-to-table approach celebrates local ingredients and time-honored techniques.</p> <div class="services"> <div class="service"> <div class="service-icon"> <svg viewBox="0 0 24 24" fill="none" stroke="#7a918d" stroke-width="2"> <path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5"></path> </svg> </div> <div class="service-title">Cooking Classes</div> </div> <div class="service"> <div class="service-icon"> <svg viewBox="0 0 24 24" fill="none" stroke="#7a918d" stroke-width="2"> <path d="M17 3a2.5 2.5 0 0 1 0 5 2.5 2.5 0 0 1 0-5zm0 7a4.5 4.5 0 0 0 4.5-4.5A4.5 4.5 0 0 0 17 1a4.5 4.5 0 0 0-4.5 4.5A4.5 4.5 0 0 0 17 10zm-10 7a2.5 2.5 0 0 1 0 5 2.5 2.5 0 0 1 0-5zm0 7a4.5 4.5 0 0 0 4.5-4.5A4.5 4.5 0 0 0 7 15a4.5 4.5 0 0 0-4.5 4.5A4.5 4.5 0 0 0 7 24z"></path> <path d="M17 10a7 7 0 0 0-7 7m-3 0a7 7 0 0 0-7-7m20-7H1"></path> </svg> </div> <div class="service-title">Catering</div> </div> <div class="service"> <div class="service-icon"> <svg viewBox="0 0 24 24" fill="none" stroke="#7a918d" stroke-width="2"> <path d="M3 2v7c0 1.1.9 2 2 2h4a2 2 0 0 0 2-2V2"></path> <path d="M7 2v20"></path> <path d="M21 15V5a2 2 0 0 0-2-2h-5.586a1 1 0 0 0-.707.293l-1.914 1.914A1 1 0 0 0 10.5 6H3"></path> <path d="M3 10v10a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V15"></path> </svg> </div> <div class="service-title">Recipe Guide</div> </div> </div> </div> </div> <script> document.addEventListener('DOMContentLoaded', function() { const logoContainer = document.getElementById('logoContainer'); const utensils = document.querySelectorAll('.utensil'); const herbs = document.querySelectorAll('.herb'); // Animate logo on load setTimeout(() => { logoContainer.style.transform = 'rotate(360deg)'; setTimeout(() => { logoContainer.style.transform = 'none'; }, 1000); }, 500); // Logo hover animation logoContainer.addEventListener('mouseenter', function() { utensils.forEach(utensil => { if (utensil.classList.contains('spoon')) { utensil.style.transform = 'translateY(-50%) rotate(45deg)'; } else if (utensil.classList.contains('fork')) { utensil.style.transform = 'translateY(-50%) rotate(-45deg)'; } utensil.style.opacity = '1'; }); herbs.forEach(herb => { herb.style.opacity = '1'; }); }); logoContainer.addEventListener('mouseleave', function() { utensils.forEach(utensil => { if (utensil.classList.contains('spoon')) { utensil.style.transform = 'translateY(-50%) rotate(30deg)'; } else if (utensil.classList.contains('fork')) { utensil.style.transform = 'translateY(-50%) rotate(-30deg)'; } utensil.style.opacity = '0.9'; }); herbs.forEach(herb => { herb.style.opacity = '0.8'; }); }); // Service hover effects const services = document.querySelectorAll('.service'); services.forEach(service => { service.addEventListener('mouseenter', function() { const siblings = Array.from(services).filter(s => s !== service); siblings.forEach(sibling => { sibling.style.opacity = '0.7'; }); }); service.addEventListener('mouseleave', function() { services.forEach(s => { s.style.opacity = '1'; }); }); // Add bounce animation on click service.addEventListener('click', function() { this.style.transform = 'scale(0.95)'; setTimeout(() => { this.style.transform = 'translateY(-5px)'; }, 150); }); }); // Create floating elements animation function animateFloatingElements() { const squiggles = document.querySelectorAll('.squiggle'); const dots = document.querySelectorAll('.dot'); squiggles.forEach((squiggle, index) => { const delay = index * 500; setTimeout(() => { squiggle.style.transform = squiggle.style.transform.includes('scale(1.2)') ? 'rotate(-20deg) scale(1.3)' : 'rotate(30deg) scale(0.9)'; setTimeout(() => { squiggle.style.transform = squiggle.style.transform.includes('scale(1.3)') ? 'rotate(-20deg) scale(1.2)' : 'rotate(30deg) scale(0.8)'; }, 2000); }, delay); }); dots.forEach((dot, index) => { const delay = index * 300; setTimeout(() => { dot.style.opacity = '0.3'; setTimeout(() => { dot.style.opacity = '0.2'; }, 1500); }, delay); }); } // Run animation periodically setInterval(animateFloatingElements, 4000); animateFloatingElements(); }); </script> </body> </html>
<html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Velocity Strikers FC</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Montserrat', sans-serif; } @import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700;800&display=swap'); body { background-color: #1a1a1a; height: 700px; width: 700px; display: flex; justify-content: center; align-items: center; overflow: hidden; position: relative; } .container { width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center; position: relative; z-index: 2; } .logo { position: relative; width: 300px; height: 300px; margin-bottom: 20px; transition: transform 0.5s ease; } .logo:hover { transform: scale(1.05); } .lightning { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 280px; height: 280px; } .shield { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 240px; height: 260px; background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%); clip-path: polygon(50% 0%, 100% 20%, 100% 80%, 50% 100%, 0% 80%, 0% 20%); display: flex; justify-content: center; align-items: center; box-shadow: 0 0 20px rgba(231, 76, 60, 0.5); } .shield-inner { width: 224px; height: 244px; background: #222; clip-path: polygon(50% 0%, 100% 20%, 100% 80%, 50% 100%, 0% 80%, 0% 20%); display: flex; justify-content: center; align-items: center; position: relative; } .team-name { color: white; font-size: 2.5rem; font-weight: 800; text-transform: uppercase; margin-bottom: 10px; text-align: center; text-shadow: 0 0 10px rgba(231, 76, 60, 0.7); background: linear-gradient(135deg, #e74c3c 0%, #f39c12 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; letter-spacing: 1px; } .team-tagline { color: #f39c12; font-size: 1.2rem; font-weight: 600; text-transform: uppercase; margin-bottom: 30px; letter-spacing: 2px; text-align: center; } .cta-button { padding: 15px 30px; background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%); color: white; text-transform: uppercase; border: none; border-radius: 30px; font-weight: 700; font-size: 1rem; letter-spacing: 1px; cursor: pointer; transition: all 0.3s ease; position: relative; overflow: hidden; box-shadow: 0 0 20px rgba(231, 76, 60, 0.3); } .cta-button:hover { transform: scale(1.05); box-shadow: 0 0 30px rgba(231, 76, 60, 0.5); } .cta-button::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transition: all 0.5s ease; } .cta-button:hover::before { left: 100%; } .bolt { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 120px; height: 120px; filter: drop-shadow(0 0 10px #f39c12); } .bolt-path { fill: #f39c12; stroke: #e74c3c; stroke-width: 5; stroke-linecap: round; stroke-linejoin: round; } .dynamic-lines { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; opacity: 0.3; pointer-events: none; } .dynamic-line { position: absolute; background: linear-gradient(90deg, transparent, #e74c3c, transparent); height: 2px; width: 100%; animation: moveLines 3s linear infinite; } .dynamic-line:nth-child(1) { top: 15%; animation-delay: 0s; } .dynamic-line:nth-child(2) { top: 35%; animation-delay: 0.5s; } .dynamic-line:nth-child(3) { top: 55%; animation-delay: 1s; } .dynamic-line:nth-child(4) { top: 75%; animation-delay: 1.5s; } .dynamic-line:nth-child(5) { top: 95%; animation-delay: 2s; } @keyframes moveLines { 0% { transform: translateX(-100%); } 100% { transform: translateX(100%); } } .energy-particles { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; z-index: 1; pointer-events: none; } .particle { position: absolute; background: #f39c12; border-radius: 50%; animation: floatParticle 3s linear infinite; opacity: 0; } @keyframes floatParticle { 0% { opacity: 0; transform: translateY(0) scale(0); } 20% { opacity: 0.8; transform: translateY(-20px) scale(1); } 80% { opacity: 0.3; transform: translateY(-80px) scale(0.8); } 100% { opacity: 0; transform: translateY(-120px) scale(0); } } @keyframes pulse { 0% { transform: scale(1); } 50% { transform: scale(1.05); } 100% { transform: scale(1); } } .stats { display: flex; justify-content: space-around; width: 80%; margin-top: 30px; color: white; } .stat { display: flex; flex-direction: column; align-items: center; padding: 10px 20px; border-radius: 5px; background-color: rgba(231, 76, 60, 0.1); border: 1px solid rgba(231, 76, 60, 0.3); transition: all 0.3s ease; } .stat:hover { transform: translateY(-5px); background-color: rgba(231, 76, 60, 0.2); box-shadow: 0 5px 15px rgba(231, 76, 60, 0.3); } .stat-value { font-size: 1.5rem; font-weight: 700; color: #f39c12; } .stat-label { font-size: 0.8rem; text-transform: uppercase; letter-spacing: 1px; margin-top: 5px; } @media (max-width: 700px) { .team-name { font-size: 2rem; } .team-tagline { font-size: 1rem; } .logo { width: 250px; height: 250px; } .shield { width: 200px; height: 220px; } .shield-inner { width: 184px; height: 204px; } .bolt { width: 100px; height: 100px; } .stats { width: 90%; } .stat { padding: 8px 15px; } .stat-value { font-size: 1.2rem; } .stat-label { font-size: 0.7rem; } } </style> </head> <body> <div class="energy-particles" id="particlesContainer"></div> <div class="dynamic-lines"> <div class="dynamic-line"></div> <div class="dynamic-line"></div> <div class="dynamic-line"></div> <div class="dynamic-line"></div> <div class="dynamic-line"></div> </div> <div class="container"> <div class="logo" id="logo"> <div class="shield"> <div class="shield-inner"> <svg class="bolt" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"> <path class="bolt-path" d="M50 5 L60 40 L95 45 L65 65 L70 95 L50 80 L30 95 L35 65 L5 45 L40 40 L50 5 Z" /> </svg> </div> </div> </div> <h1 class="team-name">Velocity Strikers FC</h1> <p class="team-tagline">Striking with Power. Moving with Speed.</p> <button class="cta-button" id="joinTeam">Join Our Dynasty</button> <div class="stats"> <div class="stat"> <div class="stat-value">17</div> <div class="stat-label">Championships</div> </div> <div class="stat"> <div class="stat-value">89%</div> <div class="stat-label">Win Rate</div> </div> <div class="stat"> <div class="stat-value">128</div> <div class="stat-label">Goals</div> </div> </div> </div> <script> // Logo pulse animation const logo = document.getElementById('logo'); setInterval(() => { logo.style.animation = 'pulse 2s ease-in-out'; setTimeout(() => { logo.style.animation = 'none'; }, 2000); }, 4000); // Energy particles const particlesContainer = document.getElementById('particlesContainer'); const createParticle = () => { const particle = document.createElement('div'); particle.classList.add('particle'); // Random size const size = Math.random() * 10 + 5; particle.style.width = `${size}px`; particle.style.height = `${size}px`; // Random position const posX = Math.random() * 700; const posY = Math.random() * 700; particle.style.left = `${posX}px`; particle.style.bottom = `${0}px`; // Random animation duration const duration = Math.random() * 3 + 2; particle.style.animationDuration = `${duration}s`; particlesContainer.appendChild(particle); // Remove particle after animation setTimeout(() => { particle.remove(); }, duration * 1000); }; // Create particles continuously setInterval(createParticle, 100); // Interactive hover effects for the logo const shield = document.querySelector('.shield'); const shieldInner = document.querySelector('.shield-inner'); const bolt = document.querySelector('.bolt'); logo.addEventListener('mouseover', () => { shield.style.boxShadow = '0 0 30px rgba(231, 76, 60, 0.8)'; bolt.style.filter = 'drop-shadow(0 0 20px #f39c12)'; }); logo.addEventListener('mouseout', () => { shield.style.boxShadow = '0 0 20px rgba(231, 76, 60, 0.5)'; bolt.style.filter = 'drop-shadow(0 0 10px #f39c12)'; }); // Button click effect const button = document.getElementById('joinTeam'); button.addEventListener('click', function(e) { const circle = document.createElement('div'); const x = e.clientX - e.target.offsetLeft; const y = e.clientY - e.target.offsetTop; circle.style.width = '1px'; circle.style.height = '1px'; circle.style.position = 'absolute'; circle.style.left = `${x}px`; circle.style.top = `${y}px`; circle.style.borderRadius = '50%'; circle.style.backgroundColor = 'rgba(255, 255, 255, 0.4)'; circle.style.transform = 'scale(0)'; circle.style.transition = 'transform 0.5s ease-out'; this.appendChild(circle); setTimeout(() => { circle.style.transform = 'scale(100)'; setTimeout(() => { circle.remove(); button.textContent = 'Application Sent!'; setTimeout(() => { button.textContent = 'Join Our Dynasty'; }, 2000); }, 500); }, 10); }); // Stats hover interaction const stats = document.querySelectorAll('.stat'); stats.forEach(stat => { stat.addEventListener('mouseover', () => { const value = stat.querySelector('.stat-value'); value.style.fontSize = '1.7rem'; value.style.color = '#e74c3c'; }); stat.addEventListener('mouseout', () => { const value = stat.querySelector('.stat-value'); value.style.fontSize = '1.5rem'; value.style.color = '#f39c12'; }); }); </script> </body> </html>
<html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Athenaeum Academy - Logo Design</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } body { background-color: #f8f9fa; display: flex; justify-content: center; align-items: center; min-height: 700px; width: 100%; overflow: hidden; position: relative; } .container { width: 100%; max-width: 700px; height: 700px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 2rem; position: relative; overflow: hidden; } .grid-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: linear-gradient(rgba(215, 227, 237, 0.3) 1px, transparent 1px), linear-gradient(90deg, rgba(215, 227, 237, 0.3) 1px, transparent 1px); background-size: 20px 20px; z-index: -1; opacity: 0.4; transform: scale(1.05); animation: gridAnimation 120s linear infinite; } @keyframes gridAnimation { 0% { transform: scale(1.05) rotate(0deg); } 100% { transform: scale(1.05) rotate(360deg); } } .logo-container { display: flex; flex-direction: column; align-items: center; justify-content: center; transform-style: preserve-3d; perspective: 1000px; cursor: pointer; margin-bottom: 2rem; } .logo { position: relative; width: 200px; height: 200px; display: flex; align-items: center; justify-content: center; transition: transform 0.6s ease-in-out; transform-style: preserve-3d; margin-bottom: 1rem; } .logo-container:hover .logo { transform: rotateY(180deg); } .logo-front, .logo-back { position: absolute; width: 100%; height: 100%; backface-visibility: hidden; display: flex; align-items: center; justify-content: center; border-radius: 50%; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); } .logo-front { background: linear-gradient(135deg, #2c3e50, #34495e); z-index: 2; } .logo-back { background: linear-gradient(135deg, #2c3e50, #34495e); transform: rotateY(180deg); } .logo-inner { position: relative; width: 180px; height: 180px; background-color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-direction: column; } .logo-icon { position: relative; width: 60px; height: 60px; margin-bottom: 10px; } .book { position: absolute; width: 50px; height: 40px; border-radius: 3px 10px 10px 3px; background: #3498db; top: 50%; left: 50%; transform: translate(-50%, -50%); box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); } .book::before { content: ""; position: absolute; width: 10px; height: 40px; border-radius: 3px 0 0 3px; background: #2980b9; left: 0; top: 0; } .book::after { content: ""; position: absolute; width: 44px; height: 4px; background: #f8f9fa; top: 10px; left: 3px; box-shadow: 0 8px 0 #f8f9fa, 0 16px 0 #f8f9fa; } .logo-atom { position: relative; width: 60px; height: 60px; } .nucleus { position: absolute; width: 14px; height: 14px; background: #e74c3c; border-radius: 50%; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 2; } .orbit { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 2px solid transparent; border-radius: 50%; animation: rotate 4s linear infinite; } .orbit:nth-child(2) { border-color: #3498db; transform: rotate(60deg); animation-delay: -1s; } .orbit:nth-child(3) { border-color: #2ecc71; transform: rotate(120deg); animation-delay: -2s; } .orbit:nth-child(4) { border-color: #f1c40f; transform: rotate(180deg); animation-delay: -3s; } .electron { position: absolute; top: -4px; left: calc(50% - 4px); width: 8px; height: 8px; border-radius: 50%; } .orbit:nth-child(2) .electron { background: #3498db; } .orbit:nth-child(3) .electron { background: #2ecc71; } .orbit:nth-child(4) .electron { background: #f1c40f; } @keyframes rotate { 0% { transform: rotate3d(1, 1, 1, 0deg); } 100% { transform: rotate3d(1, 1, 1, 360deg); } } .logo-title { font-family: 'Times New Roman', Times, serif; font-size: 18px; color: #2c3e50; font-weight: bold; letter-spacing: 1.5px; text-align: center; text-transform: uppercase; } .logo-subtitle { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-size: 11px; color: #7f8c8d; letter-spacing: 2px; margin-top: 5px; text-align: center; text-transform: uppercase; } .presentation { width: 100%; max-width: 500px; background: #fff; border-radius: 10px; padding: 2rem; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08); position: relative; overflow: hidden; } .presentation::before { content: ""; position: absolute; top: 0; left: 0; width: 8px; height: 100%; background: linear-gradient(to bottom, #3498db, #2c3e50); } h1 { font-family: 'Times New Roman', Times, serif; color: #2c3e50; margin-bottom: 1.5rem; font-size: 28px; position: relative; display: inline-block; } h1::after { content: ""; position: absolute; bottom: -8px; left: 0; width: 60px; height: 3px; background: linear-gradient(to right, #3498db, #2c3e50); } p { color: #34495e; line-height: 1.6; margin-bottom: 1.5rem; } .tagline { font-style: italic; color: #7f8c8d; margin-bottom: 2rem; font-family: 'Times New Roman', Times, serif; } .colors { display: flex; margin-bottom: 2rem; gap: 10px; } .color-box { width: 50px; height: 50px; border-radius: 8px; margin-right: 10px; cursor: pointer; transition: transform 0.3s ease; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); position: relative; } .color-box:hover { transform: translateY(-5px); } .color-box::after { content: attr(data-hex); position: absolute; bottom: -25px; left: 0; width: 100%; text-align: center; font-size: 10px; color: #7f8c8d; opacity: 0; transition: opacity 0.3s ease; } .color-box:hover::after { opacity: 1; } .primary { background: #2c3e50; } .secondary { background: #3498db; } .accent1 { background: #2ecc71; } .accent2 { background: #e74c3c; } .color-label { font-size: 14px; font-weight: bold; color: #34495e; margin-bottom: 10px; } .footer { margin-top: 2rem; text-align: center; color: #7f8c8d; font-size: 12px; } @media (max-width: 600px) { .container { padding: 1rem; } .presentation { padding: 1.5rem; } .logo { width: 150px; height: 150px; } .logo-inner { width: 130px; height: 130px; } h1 { font-size: 24px; } .color-box { width: 40px; height: 40px; } } </style> </head> <body> <div class="container"> <div class="grid-background"></div> <div class="logo-container" id="logo-flip"> <div class="logo"> <div class="logo-front"> <div class="logo-inner"> <div class="logo-icon"> <div class="book"></div> </div> <div class="logo-title">Athenaeum</div> <div class="logo-subtitle">est. 1896</div> </div> </div> <div class="logo-back"> <div class="logo-inner"> <div class="logo-atom"> <div class="nucleus"></div> <div class="orbit"><div class="electron"></div></div> <div class="orbit"><div class="electron"></div></div> <div class="orbit"><div class="electron"></div></div> </div> <div class="logo-title">Academy</div> <div class="logo-subtitle">Knowledge & Innovation</div> </div> </div> </div> </div> <div class="presentation"> <h1>Athenaeum Academy</h1> <p class="tagline">"Where classical foundations meet modern exploration"</p> <p>The Athenaeum Academy logo symbolizes our dual commitment to traditional academic rigor and cutting-edge innovation. The classic serif typography and book icon represent our deep scholarly roots dating back to 1896, while the modern atomic structure illustrates our focus on scientific advancement and forward-thinking methodologies.</p> <div class="color-label">Color Palette</div> <div class="colors"> <div class="color-box primary" data-hex="#2C3E50"></div> <div class="color-box secondary" data-hex="#3498DB"></div> <div class="color-box accent1" data-hex="#2ECC71"></div> <div class="color-box accent2" data-hex="#E74C3C"></div> </div> <p>The deep navy represents timeless wisdom and academic tradition, while the vibrant blues and greens symbolize growth, discovery, and technological innovation. This balanced approach is central to our educational philosophy—honoring classical foundations while embracing the future.</p> <div class="footer"> Hover over the logo to see both sides of the Athenaeum Academy identity </div> </div> </div> <script> document.addEventListener('DOMContentLoaded', function() { const colorBoxes = document.querySelectorAll('.color-box'); colorBoxes.forEach(box => { box.addEventListener('click', function() { navigator.clipboard.writeText(this.getAttribute('data-hex')).then(() => { // Create a temporary element for the copied notification const notification = document.createElement('div'); notification.textContent = 'Color code copied!'; notification.style.position = 'absolute'; notification.style.top = '0'; notification.style.left = '50%'; notification.style.transform = 'translateX(-50%)'; notification.style.padding = '8px 16px'; notification.style.background = '#333'; notification.style.color = '#fff'; notification.style.borderRadius = '4px'; notification.style.fontSize = '12px'; notification.style.zIndex = '100'; notification.style.opacity = '0'; notification.style.transition = 'opacity 0.3s ease'; this.appendChild(notification); // Animate notification setTimeout(() => { notification.style.opacity = '1'; }, 10); setTimeout(() => { notification.style.opacity = '0'; setTimeout(() => { notification.remove(); }, 300); }, 1500); }); }); }); // Add interaction for automatic rotation const logoContainer = document.getElementById('logo-flip'); // Initial animation after page load setTimeout(() => { const logo = logoContainer.querySelector('.logo'); logo.style.transform = 'rotateY(180deg)'; setTimeout(() => { logo.style.transform = 'rotateY(0deg)'; }, 2000); }, 2000); // Automatic rotation every 8 seconds setInterval(() => { const logo = logoContainer.querySelector('.logo'); logo.style.transform = 'rotateY(180deg)'; setTimeout(() => { logo.style.transform = 'rotateY(0deg)'; }, 2000); }, 8000); }); </script> </body> </html>
<html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Wanderlust Explorer - Travel Agency</title> <style> :root { --primary: #1e5f74; --secondary: #ff7e5f; --accent: #ffb55f; --light: #f9f9f9; --dark: #2d3748; } * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Montserrat', sans-serif; } body { background-color: var(--light); color: var(--dark); overflow-x: hidden; height: 100%; width: 100%; max-width: 700px; max-height: 700px; margin: 0 auto; position: relative; } .container { width: 100%; height: 100vh; max-height: 700px; padding: 20px; display: flex; flex-direction: column; position: relative; overflow: hidden; } .logo-container { display: flex; align-items: center; margin-bottom: 20px; z-index: 10; } .logo-symbol { position: relative; width: 80px; height: 80px; margin-right: 15px; } .compass { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--secondary)); box-shadow: 0 6px 20px rgba(30, 95, 116, 0.3); display: flex; justify-content: center; align-items: center; transform-style: preserve-3d; perspective: 1000px; transition: transform 0.6s ease-out; } .compass:after { content: ''; position: absolute; width: 70%; height: 70%; border-radius: 50%; background: white; z-index: 1; } .compass-needle { position: absolute; width: 4px; height: 70%; background: var(--accent); z-index: 2; transform-origin: center bottom; transform: translateY(-5px); transition: transform 1s ease-in-out; } .compass-needle:after { content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-bottom: 15px solid var(--accent); margin-top: -15px; } .logo-text { font-size: 1.8rem; font-weight: 800; letter-spacing: 1px; background: linear-gradient(90deg, var(--primary), var(--secondary)); -webkit-background-clip: text; background-clip: text; color: transparent; text-transform: uppercase; transform: translateY(0); transition: transform 0.4s ease; position: relative; display: inline-block; } .logo-text:after { content: 'TRAVEL BEYOND BOUNDARIES'; position: absolute; font-size: 0.5rem; font-weight: 600; letter-spacing: 1.5px; top: 100%; left: 0; width: 100%; color: var(--dark); opacity: 0.8; } .content { flex: 1; display: flex; flex-direction: column; justify-content: center; z-index: 5; transform: translateY(0); transition: transform 0.5s ease; } h1 { font-size: 2.5rem; font-weight: 800; margin-bottom: 15px; line-height: 1.2; position: relative; color: var(--dark); } h1 span { color: var(--secondary); position: relative; display: inline-block; } h1 span:after { content: ''; position: absolute; bottom: 5px; left: 0; width: 100%; height: 8px; background-color: rgba(255, 181, 95, 0.3); z-index: -1; transition: height 0.3s ease; } p { font-size: 1rem; line-height: 1.6; margin-bottom: 25px; max-width: 500px; color: var(--dark); opacity: 0.9; } .btn { display: inline-flex; align-items: center; padding: 12px 24px; background: linear-gradient(90deg, var(--primary), var(--secondary)); color: white; border: none; border-radius: 30px; font-weight: 600; font-size: 1rem; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 4px 15px rgba(255, 126, 95, 0.3); position: relative; overflow: hidden; z-index: 1; margin-right: 15px; text-decoration: none; } .btn:before { content: ''; position: absolute; top: 0; left: 0; width: 0%; height: 100%; background: linear-gradient(90deg, var(--secondary), var(--accent)); transition: width 0.4s ease; z-index: -1; } .btn:hover:before { width: 100%; } .btn:hover { transform: translateY(-3px); box-shadow: 0 7px 20px rgba(255, 126, 95, 0.4); } .btn svg { margin-left: 8px; transition: transform 0.3s ease; } .btn:hover svg { transform: translateX(5px); } .bg-elements { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; z-index: 1; } .globe { position: absolute; bottom: -200px; right: -200px; width: 500px; height: 500px; border-radius: 50%; background: linear-gradient(45deg, rgba(30, 95, 116, 0.05), rgba(255, 126, 95, 0.05)); border: 2px solid rgba(255, 255, 255, 0.1); opacity: 0.8; animation: rotate 40s linear infinite; } .wave { position: absolute; bottom: 0; left: 0; width: 100%; height: 150px; background: url('data:image/svg+xml;utf8,<svg viewBox="0 0 1200 120" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none"><path d="M0,0 C150,90 350,0 500,80 C650,160 750,80 900,120 C1050,160 1150,90 1200,105 L1200,120 L0,120 Z" fill="%231e5f74" opacity="0.05"/></svg>'); background-size: cover; transform: translateY(20px); animation: wave 8s ease-in-out infinite alternate; } .destination-cards { display: flex; margin-top: 20px; overflow-x: auto; scroll-snap-type: x mandatory; gap: 15px; padding-bottom: 20px; scrollbar-width: none; -ms-overflow-style: none; } .destination-cards::-webkit-scrollbar { display: none; } .destination-card { flex: 0 0 auto; width: 220px; height: 160px; background-size: cover; background-position: center; border-radius: 12px; scroll-snap-align: start; position: relative; overflow: hidden; box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1); transition: transform 0.3s ease, box-shadow 0.3s ease; cursor: pointer; } .destination-card:hover { transform: translateY(-5px) scale(1.02); box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15); } .destination-card:after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 50%; background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent); } .destination-card h3 { position: absolute; bottom: 15px; left: 15px; color: white; font-size: 1.2rem; margin: 0; z-index: 2; font-weight: 600; } .card-1 { background-image: url('https://images.unsplash.com/photo-1506929562872-bb421503ef21?ixlib=rb-4.0.3&auto=format&fit=crop&w=500&q=80'); } .card-2 { background-image: url('https://images.unsplash.com/photo-1517760444937-f6397edcbbcd?ixlib=rb-4.0.3&auto=format&fit=crop&w=500&q=80'); } .card-3 { background-image: url('https://images.unsplash.com/photo-1504609813442-a8924e83f76e?ixlib=rb-4.0.3&auto=format&fit=crop&w=500&q=80'); } .card-4 { background-image: url('https://images.unsplash.com/photo-1502602898657-3e91760cbb34?ixlib=rb-4.0.3&auto=format&fit=crop&w=500&q=80'); } @keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes wave { 0% { transform: translateY(20px); } 100% { transform: translateY(0); } } @keyframes float { 0% { transform: translateY(0); } 50% { transform: translateY(-15px); } 100% { transform: translateY(0); } } @media (max-width: 600px) { .logo-text { font-size: 1.4rem; } h1 { font-size: 2rem; } p { font-size: 0.9rem; } .globe { width: 350px; height: 350px; right: -150px; bottom: -150px; } .destination-card { width: 180px; height: 130px; } } </style> </head> <body> <div class="container"> <div class="logo-container"> <div class="logo-symbol"> <div class="compass" id="compass"> <div class="compass-needle" id="needle"></div> </div> </div> <div class="logo-text">Wanderlust</div> </div> <div class="content"> <h1>Chart Your <span>Adventure</span>, Discover Your World</h1> <p>We craft bespoke journeys for the curious explorers. From hidden alpine trails to secluded island paradises, experience authentic adventures that transform typical tourism into extraordinary moments.</p> <a href="#" class="btn">Plan Your Journey <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M5 12H19M19 12L12 5M19 12L12 19" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> </svg> </a> <div class="destination-cards"> <div class="destination-card card-1"> <h3>Coastal Escapes</h3> </div> <div class="destination-card card-2"> <h3>Mountain Treks</h3> </div> <div class="destination-card card-3"> <h3>Cultural Immersion</h3> </div> <div class="destination-card card-4"> <h3>Urban Discovery</h3> </div> </div> </div> <div class="bg-elements"> <div class="globe"></div> <div class="wave"></div> </div> </div> <script> document.addEventListener('DOMContentLoaded', () => { const compass = document.getElementById('compass'); const needle = document.getElementById('needle'); let rotation = 0; // Initial needle animation rotateNeedle(); // Compass hover interaction compass.addEventListener('mouseover', () => { compass.style.transform = 'rotateX(20deg) rotateY(10deg)'; }); compass.addEventListener('mouseout', () => { compass.style.transform = 'rotateX(0) rotateY(0)'; }); compass.addEventListener('click', () => { rotateNeedle(); }); // Logo text hover animation const logoText = document.querySelector('.logo-text'); logoText.addEventListener('mouseover', () => { logoText.style.transform = 'translateY(-3px)'; }); logoText.addEventListener('mouseout', () => { logoText.style.transform = 'translateY(0)'; }); // Add parallax effect to globe document.addEventListener('mousemove', (e) => { const globe = document.querySelector('.globe'); const xAxis = (window.innerWidth / 2 - e.pageX) / 30; const yAxis = (window.innerHeight / 2 - e.pageY) / 30; globe.style.transform = `translate(${xAxis}px, ${yAxis}px) rotate(${rotation}deg)`; }); // Highlight effect on heading span const span = document.querySelector('h1 span'); span.addEventListener('mouseover', () => { span.querySelector('::after').style.height = '100%'; }); span.addEventListener('mouseout', () => { span.querySelector('::after').style.height = '8px'; }); // Animation for destination cards on scroll const cards = document.querySelectorAll('.destination-card'); let isScrolling = false; document.querySelector('.destination-cards').addEventListener('scroll', () => { if (!isScrolling) { isScrolling = true; animateCards(); setTimeout(() => { isScrolling = false; }, 100); } }); function animateCards() { cards.forEach(card => { const rect = card.getBoundingClientRect(); const isInView = rect.left >= 0 && rect.left <= (window.innerWidth || document.documentElement.clientWidth); if (isInView) { card.style.transform = 'translateY(-5px) scale(1.02)'; card.style.boxShadow = '0 12px 30px rgba(0, 0, 0, 0.15)'; } else { card.style.transform = 'translateY(0) scale(1)'; card.style.boxShadow = '0 8px 25px rgba(0, 0, 0, 0.1)'; } }); } function rotateNeedle() { rotation = Math.floor(Math.random() * 360); needle.style.transform = `rotate(${rotation}deg) translateY(-5px)`; } // Init animations animateCards(); }); </script> </body> </html>
<html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Waveform Mobile App Logo</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', sans-serif; } body { display: flex; justify-content: center; align-items: center; height: 700px; width: 700px; background-color: #f8f9fa; overflow: hidden; } .container { width: 90%; max-width: 650px; padding: 30px; position: relative; } .logo-container { display: flex; flex-direction: column; align-items: center; margin-bottom: 40px; position: relative; } .logo-icon { width: 120px; height: 120px; background-color: #4361EE; border-radius: 24px; position: relative; box-shadow: 0 8px 16px rgba(67, 97, 238, 0.3); display: flex; align-items: center; justify-content: center; overflow: hidden; cursor: pointer; transition: transform 0.3s ease, box-shadow 0.3s ease; } .logo-icon:hover { transform: translateY(-5px) scale(1.02); box-shadow: 0 12px 24px rgba(67, 97, 238, 0.4); } .waveform { height: 60px; width: 90px; display: flex; align-items: center; justify-content: space-between; } .bar { width: 5px; height: 20px; background-color: white; border-radius: 2px; } .bar:nth-child(1) { height: 15px; } .bar:nth-child(2) { height: 35px; } .bar:nth-child(3) { height: 50px; } .bar:nth-child(4) { height: 30px; } .bar:nth-child(5) { height: 40px; } .bar:nth-child(6) { height: 22px; } .bar:nth-child(7) { height: 10px; } .logo-text { margin-top: 20px; font-size: 32px; font-weight: 700; color: #212529; letter-spacing: -0.5px; } .tagline { margin-top: 8px; font-size: 16px; color: #6c757d; text-align: center; max-width: 320px; } .color-variants { display: flex; justify-content: center; gap: 20px; margin-top: 40px; } .color-circle { width: 40px; height: 40px; border-radius: 50%; cursor: pointer; transition: transform 0.2s ease; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); } .color-circle:hover { transform: scale(1.15); } .info-section { margin-top: 50px; background-color: white; border-radius: 14px; padding: 25px; box-shadow: 0 6px 12px rgba(0, 0, 0, 0.05); } h2 { color: #212529; margin-bottom: 15px; font-size: 22px; font-weight: 600; } .specs { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 15px; margin-top: 20px; } .spec-item { flex: 0 0 48%; margin-bottom: 15px; } .spec-label { color: #6c757d; font-size: 14px; margin-bottom: 5px; } .spec-value { color: #212529; font-weight: 500; font-size: 16px; } .download-section { display: flex; justify-content: space-between; align-items: center; margin-top: 30px; } .download-button { background-color: #4361EE; color: white; border: none; padding: 12px 20px; border-radius: 10px; font-weight: 600; cursor: pointer; transition: all 0.3s ease; display: flex; align-items: center; gap: 8px; } .download-button:hover { background-color: #3a56d4; transform: translateY(-2px); box-shadow: 0 5px 15px rgba(67, 97, 238, 0.3); } .download-button:active { transform: translateY(0); } .download-formats { color: #6c757d; font-size: 14px; } @media (max-width: 600px) { .container { padding: 20px; } .logo-icon { width: 100px; height: 100px; } .logo-text { font-size: 28px; } .spec-item { flex: 0 0 100%; } .download-section { flex-direction: column; gap: 15px; align-items: flex-start; } } .animation-pulse { animation: pulse 2s infinite; } @keyframes pulse { 0% { transform: scale(1); } 50% { transform: scale(1.05); } 100% { transform: scale(1); } } .animation-wave { animation: wave-animation 1.5s infinite; } @keyframes wave-animation { 0% { height: var(--original-height); } 50% { height: var(--max-height); } 100% { height: var(--original-height); } } </style> </head> <body> <div class="container"> <div class="logo-container"> <div class="logo-icon" id="logoIcon"> <div class="waveform"> <div class="bar"></div> <div class="bar"></div> <div class="bar"></div> <div class="bar"></div> <div class="bar"></div> <div class="bar"></div> <div class="bar"></div> </div> </div> <h1 class="logo-text">soundwave</h1> <p class="tagline">Simple, flat, and instantly recognizable audio app icon</p> </div> <div class="color-variants"> <div class="color-circle" style="background-color: #4361EE;" data-color="#4361EE"></div> <div class="color-circle" style="background-color: #F72585;" data-color="#F72585"></div> <div class="color-circle" style="background-color: #3A0CA3;" data-color="#3A0CA3"></div> <div class="color-circle" style="background-color: #4CC9F0;" data-color="#4CC9F0"></div> <div class="color-circle" style="background-color: #10B981;" data-color="#10B981"></div> </div> <div class="info-section"> <h2>Logo Specifications</h2> <p>Clean, modern, and flexible for all app interfaces. Optimized for small screens.</p> <div class="specs"> <div class="spec-item"> <div class="spec-label">Typography</div> <div class="spec-value">Segoe UI Sans-Serif</div> </div> <div class="spec-item"> <div class="spec-label">Icon Style</div> <div class="spec-value">Flat Design Waveform</div> </div> <div class="spec-item"> <div class="spec-label">Minimum Size</div> <div class="spec-value">24px × 24px</div> </div> <div class="spec-item"> <div class="spec-label">Color System</div> <div class="spec-value">High Contrast Palette</div> </div> </div> <div class="download-section"> <button class="download-button" id="downloadBtn"> <svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M12 16L12 8" stroke="white" stroke-width="2" stroke-linecap="round"/> <path d="M9 13L12 16L15 13" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> <path d="M20 16V18C20 19.1046 19.1046 20 18 20H6C4.89543 20 4 19.1046 4 18V16" stroke="white" stroke-width="2" stroke-linecap="round"/> </svg> Download Logo Package </button> <div class="download-formats"> Includes: SVG, PNG, PDF formats </div> </div> </div> </div> <script> document.addEventListener('DOMContentLoaded', function() { const logoIcon = document.getElementById('logoIcon'); const bars = document.querySelectorAll('.bar'); const colorVariants = document.querySelectorAll('.color-circle'); const downloadBtn = document.getElementById('downloadBtn'); // Set up initial animation states for bars bars.forEach(bar => { const originalHeight = parseInt(window.getComputedStyle(bar).height); const maxHeight = Math.min(originalHeight * 1.8, 60); bar.style.setProperty('--original-height', originalHeight + 'px'); bar.style.setProperty('--max-height', maxHeight + 'px'); }); // Make bars animate on logo click logoIcon.addEventListener('click', function() { bars.forEach((bar, index) => { bar.classList.add('animation-wave'); // Stagger the animations slightly bar.style.animationDelay = (index * 0.1) + 's'; // Remove animation class after animation completes setTimeout(() => { bar.classList.remove('animation-wave'); bar.style.animationDelay = '0s'; }, 3000); }); }); // Color variant selection colorVariants.forEach(variant => { variant.addEventListener('click', function() { const color = this.getAttribute('data-color'); logoIcon.style.backgroundColor = color; logoIcon.style.boxShadow = `0 8px 16px ${color}40`; downloadBtn.style.backgroundColor = color; // Subtle animation on color change logoIcon.classList.add('animation-pulse'); setTimeout(() => { logoIcon.classList.remove('animation-pulse'); }, 2000); }); }); // Download button interaction downloadBtn.addEventListener('click', function(e) { e.preventDefault(); // Just visual feedback since we can't actually download this.innerHTML = ` <svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M20 6L9 17L4 12" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> </svg> Download Started! `; setTimeout(() => { this.innerHTML = ` <svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M12 16L12 8" stroke="white" stroke-width="2" stroke-linecap="round"/> <path d="M9 13L12 16L15 13" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> <path d="M20 16V18C20 19.1046 19.1046 20 18 20H6C4.89543 20 4 19.1046 4 18V16" stroke="white" stroke-width="2" stroke-linecap="round"/> </svg> Download Logo Package `; }, 2000); }); // Trigger initial wave animation after page load setTimeout(() => { logoIcon.click(); }, 500); }); </script> </body> </html>
<html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Droplet - E-Commerce Platform</title> <style> :root { --primary: #2D46B9; --secondary: #FF5E5B; --tertiary: #33D6A6; --dark: #1A1A2E; --light: #F8F9FA; --transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); } * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } body { background-color: var(--light); color: var(--dark); overflow-x: hidden; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 100vh; padding: 20px; } .container { width: 100%; max-width: 650px; position: relative; } /* Logo Animation */ .logo-container { margin-bottom: 30px; text-align: center; position: relative; } .logo { display: inline-flex; align-items: center; cursor: pointer; } .logo-mark { position: relative; width: 60px; height: 60px; margin-right: 15px; transition: var(--transition); } .logo-circle { position: absolute; width: 100%; height: 100%; border-radius: 50%; background-color: var(--primary); animation: pulse 2s infinite; } .logo-droplet { position: absolute; top: 20%; left: 30%; width: 40%; height: 50%; background-color: var(--light); border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%; transform: rotate(45deg); transition: var(--transition); } .logo:hover .logo-droplet { background-color: var(--tertiary); transform: rotate(225deg); } .logo-text { font-size: 2.5rem; font-weight: 800; letter-spacing: -1px; color: var(--primary); transition: var(--transition); } .logo:hover .logo-text { letter-spacing: 1px; } .logo-tagline { font-size: 0.9rem; color: var(--dark); opacity: 0.8; margin-top: 5px; transition: var(--transition); } /* Features Section */ .features { display: grid; grid-template-columns: repeat(2, 1fr); gap: 25px; margin-top: 40px; } .feature-card { background: white; border-radius: 15px; padding: 25px; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); transition: var(--transition); position: relative; overflow: hidden; cursor: pointer; } .feature-card:hover { transform: translateY(-5px); box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1); } .feature-icon { font-size: 2rem; margin-bottom: 15px; position: relative; z-index: 2; } .feature-title { font-size: 1.2rem; font-weight: 600; margin-bottom: 10px; position: relative; z-index: 2; } .feature-desc { font-size: 0.9rem; line-height: 1.5; color: #555; position: relative; z-index: 2; } .feature-card::before { content: ''; position: absolute; width: 100%; height: 100%; background: linear-gradient(135deg, transparent 0%, rgba(45, 70, 185, 0.1) 100%); top: 0; left: 0; transform: translateX(-100%); transition: var(--transition); } .feature-card:hover::before { transform: translateX(0); } .feature-card:nth-child(1) .feature-icon { color: var(--primary); } .feature-card:nth-child(2) .feature-icon { color: var(--secondary); } .feature-card:nth-child(3) .feature-icon { color: var(--tertiary); } .feature-card:nth-child(4) .feature-icon { color: #9C6ADE; } /* CTA Section */ .cta-section { margin-top: 40px; background: linear-gradient(135deg, var(--primary) 0%, #1C2B99 100%); border-radius: 20px; padding: 30px; color: white; text-align: center; position: relative; overflow: hidden; } .cta-section::before { content: ''; position: absolute; top: -20%; right: -20%; width: 60%; height: 60%; background: rgba(255, 255, 255, 0.1); border-radius: 50%; } .cta-section::after { content: ''; position: absolute; bottom: -20%; left: -20%; width: 60%; height: 60%; background: rgba(255, 255, 255, 0.05); border-radius: 50%; } .cta-title { font-size: 1.6rem; font-weight: 700; margin-bottom: 15px; position: relative; z-index: 1; } .cta-desc { font-size: 1rem; line-height: 1.6; margin-bottom: 25px; position: relative; z-index: 1; } .cta-btn { background-color: white; color: var(--primary); border: none; padding: 12px 30px; border-radius: 30px; font-weight: 600; font-size: 1rem; cursor: pointer; transition: var(--transition); position: relative; z-index: 1; overflow: hidden; } .cta-btn:hover { transform: scale(1.05); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); } .cta-btn::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transform: translateX(-100%); } .cta-btn:hover::before { animation: shine 1.5s infinite; } /* Mobile Responsiveness */ @media (max-width: 600px) { .features { grid-template-columns: 1fr; } .logo-text { font-size: 2rem; } .logo-mark { width: 45px; height: 45px; } .cta-title { font-size: 1.3rem; } } /* Animations */ @keyframes pulse { 0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(45, 70, 185, 0.7); } 70% { transform: scale(1.05); box-shadow: 0 0 0 10px rgba(45, 70, 185, 0); } 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(45, 70, 185, 0); } } @keyframes shine { 0% { transform: translateX(-100%); } 100% { transform: translateX(100%); } } .floating-element { position: absolute; width: 5px; height: 5px; border-radius: 50%; pointer-events: none; z-index: 9999; opacity: 0; transition: opacity 0.3s ease; } .pattern-bg { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-image: radial-gradient(var(--primary) 1px, transparent 1px); background-size: 30px 30px; opacity: 0.05; z-index: -1; } </style> </head> <body> <div class="pattern-bg"></div> <div class="container"> <div class="logo-container"> <div class="logo" id="logo"> <div class="logo-mark"> <div class="logo-circle"></div> <div class="logo-droplet"></div> </div> <div> <div class="logo-text">droplet</div> <div class="logo-tagline">simplified e-commerce for everyone</div> </div> </div> </div> <div class="features"> <div class="feature-card"> <div class="feature-icon">⚡</div> <h3 class="feature-title">Quick Setup</h3> <p class="feature-desc">Launch your store in minutes, not weeks. Our intuitive interface requires zero technical knowledge.</p> </div> <div class="feature-card"> <div class="feature-icon">🛒</div> <h3 class="feature-title">Smart Checkout</h3> <p class="feature-desc">One-click purchases with AI-powered product recommendations to boost your average order value.</p> </div> <div class="feature-card"> <div class="feature-icon">📱</div> <h3 class="feature-title">Mobile-First</h3> <p class="feature-desc">Perfectly responsive designs that convert mobile browsers into loyal customers.</p> </div> <div class="feature-card"> <div class="feature-icon">📊</div> <h3 class="feature-title">Real-time Analytics</h3> <p class="feature-desc">Visualize your growth with beautiful dashboards that highlight actionable insights.</p> </div> </div> <div class="cta-section"> <h2 class="cta-title">Trade complexity for simplicity</h2> <p class="cta-desc">Join 10,000+ business owners who've simplified their online selling process with Droplet's minimalist approach.</p> <button class="cta-btn" id="cta-button">Start your free trial</button> </div> </div> <script> // Logo interaction const logo = document.getElementById('logo'); logo.addEventListener('click', () => { logo.style.transform = 'scale(0.95)'; setTimeout(() => { logo.style.transform = 'scale(1)'; }, 100); }); // Mouse trail effect document.addEventListener('mousemove', function(e) { const colors = ['#2D46B9', '#FF5E5B', '#33D6A6', '#9C6ADE']; const element = document.createElement('div'); element.className = 'floating-element'; element.style.backgroundColor = colors[Math.floor(Math.random() * colors.length)]; element.style.left = e.clientX + 'px'; element.style.top = e.clientY + 'px'; document.body.appendChild(element); setTimeout(() => { element.style.opacity = '0.7'; element.style.width = '8px'; element.style.height = '8px'; element.style.transform = `translate(${(Math.random() - 0.5) * 30}px, ${(Math.random() - 0.5) * 30}px)`; }, 10); setTimeout(() => { element.style.opacity = '0'; }, 500); setTimeout(() => { element.remove(); }, 1000); }); // Feature card hover effect enhancement const featureCards = document.querySelectorAll('.feature-card'); featureCards.forEach(card => { card.addEventListener('mouseenter', () => { card.style.backgroundColor = '#f8f9ff'; }); card.addEventListener('mouseleave', () => { card.style.backgroundColor = 'white'; }); }); // CTA button click effect const ctaButton = document.getElementById('cta-button'); ctaButton.addEventListener('click', () => { ctaButton.textContent = "We'll be in touch!"; ctaButton.style.backgroundColor = "#33D6A6"; ctaButton.style.color = "white"; setTimeout(() => { ctaButton.textContent = "Start your free trial"; ctaButton.style.backgroundColor = "white"; ctaButton.style.color = "#2D46B9"; }, 2000); }); </script> </body> </html>
<html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Vertex Motors</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Montserrat', sans-serif; } @import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600;700&display=swap'); body { background-color: #0a0a0a; color: #ffffff; overflow: hidden; width: 100%; height: 100vh; display: flex; justify-content: center; align-items: center; } .container { width: 700px; height: 700px; position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; } .logo-container { position: relative; width: 300px; height: 300px; margin-bottom: 30px; } .logo-bg { position: absolute; width: 100%; height: 100%; background: radial-gradient(circle, rgba(40,40,40,0.5) 0%, rgba(10,10,10,0) 70%); border-radius: 50%; transform: scale(1.5); } .logo { position: relative; width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; } .emblem { width: 200px; height: 200px; position: relative; transform-style: preserve-3d; transition: all 0.6s ease; } .triangle { position: absolute; width: 0; height: 0; border-left: 80px solid transparent; border-right: 80px solid transparent; border-bottom: 160px solid; top: 20px; left: 20px; transform-origin: center; opacity: 0; } .triangle:nth-child(1) { border-bottom-color: #c0c0c0; animation: fadeInRotate 1s 0.1s forwards; } .triangle:nth-child(2) { border-bottom-color: #a0a0a0; transform: rotate(120deg); animation: fadeInRotate 1s 0.3s forwards; } .triangle:nth-child(3) { border-bottom-color: #808080; transform: rotate(240deg); animation: fadeInRotate 1s 0.5s forwards; } .circle { position: absolute; width: 60px; height: 60px; border-radius: 50%; background: linear-gradient(135deg, #e5e5e5, #8a8a8a); top: 70px; left: 70px; box-shadow: 0 0 20px rgba(255, 255, 255, 0.5); opacity: 0; animation: fadeIn 0.6s 0.8s forwards; } .brand-name { font-size: 3.5rem; font-weight: 700; letter-spacing: 1px; color: #e5e5e5; margin-bottom: 10px; position: relative; transform: translateY(30px); opacity: 0; animation: slideUp 0.6s 1s forwards; } .tagline { font-size: 1.2rem; font-weight: 300; color: #a0a0a0; letter-spacing: 3px; text-transform: uppercase; position: relative; transform: translateY(30px); opacity: 0; animation: slideUp 0.6s 1.2s forwards; } .details { margin-top: 40px; width: 80%; display: flex; justify-content: space-between; transform: translateY(30px); opacity: 0; animation: slideUp 0.6s 1.4s forwards; } .detail-item { text-align: center; padding: 0 15px; position: relative; } .detail-item::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 2px; background: linear-gradient(90deg, transparent, #c0c0c0, transparent); transform: scaleX(0); transform-origin: left; transition: transform 0.5s ease; } .detail-item:hover::before { transform: scaleX(1); } .detail-value { font-size: 2.2rem; font-weight: 600; color: #e5e5e5; margin-bottom: 5px; } .detail-label { font-size: 0.9rem; color: #808080; text-transform: uppercase; letter-spacing: 1px; } .cta-button { margin-top: 50px; padding: 12px 35px; background: none; border: 2px solid #c0c0c0; color: #e5e5e5; font-size: 1rem; text-transform: uppercase; letter-spacing: 2px; cursor: pointer; position: relative; overflow: hidden; transition: all 0.3s ease; transform: translateY(30px); opacity: 0; animation: slideUp 0.6s 1.6s forwards; } .cta-button::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent); transition: all 0.6s ease; } .cta-button:hover { background-color: #c0c0c0; color: #0a0a0a; box-shadow: 0 0 20px rgba(192, 192, 192, 0.5); } .cta-button:hover::before { left: 100%; } .light-effect { position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: radial-gradient(circle at 50% 50%, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 60%); opacity: 0; transition: opacity 0.3s ease; pointer-events: none; } @keyframes fadeInRotate { to { opacity: 1; } } @keyframes fadeIn { to { opacity: 1; } } @keyframes slideUp { to { transform: translateY(0); opacity: 1; } } @media (max-width: 700px) { .container { width: 100%; padding: 20px; } .logo-container { width: 220px; height: 220px; margin-bottom: 20px; } .emblem { width: 160px; height: 160px; } .triangle { border-left: 60px solid transparent; border-right: 60px solid transparent; border-bottom: 120px solid; top: 20px; left: 20px; } .circle { width: 50px; height: 50px; top: 55px; left: 55px; } .brand-name { font-size: 2.5rem; } .tagline { font-size: 1rem; } .details { flex-direction: column; gap: 20px; } .detail-item { padding: 10px 0; } } </style> </head> <body> <div class="container"> <div class="light-effect" id="lightEffect"></div> <div class="logo-container"> <div class="logo-bg"></div> <div class="logo"> <div class="emblem" id="emblem"> <div class="triangle"></div> <div class="triangle"></div> <div class="triangle"></div> <div class="circle"></div> </div> </div> </div> <h1 class="brand-name">VERTEX</h1> <p class="tagline">Precision Engineered Performance</p> <div class="details"> <div class="detail-item"> <div class="detail-value">3.2s</div> <div class="detail-label">0-60 mph</div> </div> <div class="detail-item"> <div class="detail-value">425</div> <div class="detail-label">Horsepower</div> </div> <div class="detail-item"> <div class="detail-value">208</div> <div class="detail-label">Top Speed mph</div> </div> </div> <button class="cta-button" id="ctaButton">Experience Vertex</button> </div> <script> document.addEventListener('DOMContentLoaded', () => { const emblem = document.getElementById('emblem'); const container = document.querySelector('.container'); const lightEffect = document.getElementById('lightEffect'); const ctaButton = document.getElementById('ctaButton'); // 3D rotation effect for the emblem container.addEventListener('mousemove', (e) => { const x = (window.innerWidth / 2 - e.pageX) / 25; const y = (window.innerHeight / 2 - e.pageY) / 25; emblem.style.transform = `rotateY(${x}deg) rotateX(${y}deg)`; // Light effect follows mouse const containerRect = container.getBoundingClientRect(); const mouseX = e.clientX - containerRect.left; const mouseY = e.clientY - containerRect.top; lightEffect.style.background = `radial-gradient(circle at ${mouseX}px ${mouseY}px, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 60%)`; lightEffect.style.opacity = '1'; }); container.addEventListener('mouseleave', () => { emblem.style.transform = 'rotateY(0deg) rotateX(0deg)'; lightEffect.style.opacity = '0'; }); // Button effect ctaButton.addEventListener('click', (e) => { e.preventDefault(); // Pulse effect ctaButton.style.transform = 'scale(0.95)'; setTimeout(() => { ctaButton.style.transform = 'scale(1)'; }, 150); // Show spinning emblem emblem.style.transition = 'all 0.8s ease'; emblem.style.transform = 'rotate(360deg) scale(1.1)'; setTimeout(() => { emblem.style.transform = 'rotate(0deg) scale(1)'; }, 800); }); // Add subtle rotation animation let degree = 0; function rotateEmblem() { degree += 0.02; if (degree >= 360) degree = 0; // Only apply this subtle rotation if not being affected by mouse movement if (!container.matches(':hover')) { emblem.style.transform = `rotateY(${Math.sin(degree) * 5}deg) rotateX(${Math.cos(degree) * 5}deg)`; } requestAnimationFrame(rotateEmblem); } rotateEmblem(); }); </script> </body> </html>