Why Choose Our Yoga Template
Preview
Edit
Download
Run
Download Options
HTML File
Download as .html file
CSS File
Download as .css file
JavaScript File
Download as .js file
Combined HTML
All code in one HTML file
Project ZIP
All files in a ZIP archive
Cancel
HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Why Choose Our Yoga Classes</title> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css"> </head> <body> <section class="why-choose-us"> <div class="background-elements"> <div class="circle"></div> <div class="circle"></div> <div class="circle"></div> </div> <div class="section-header"> <h2 class="animate-in">Why Choose Our Yoga Classes</h2> <p class="animate-in">Discover the perfect balance of mind, body and soul with our expert-led yoga sessions designed for all levels</p> </div> <div class="features-container"> <div class="feature-card animate-in"> <div class="feature-icon"> <i class="fas fa-user-tie"></i> </div> <div class="feature-content"> <h3>Expert Instructors</h3> <p>Learn from certified yoga practitioners with years of experience in various yoga styles and meditation techniques.</p> </div> </div> <div class="feature-card animate-in"> <div class="feature-icon"> <i class="fas fa-leaf"></i> </div> <div class="feature-content"> <h3>Holistic Approach</h3> <p>We focus on your overall well-being, combining physical postures, breathing techniques, and meditation.</p> </div> </div> <div class="feature-card animate-in"> <div class="feature-icon"> <i class="fas fa-heart"></i> </div> <div class="feature-content"> <h3>Personalized Sessions</h3> <p>Customized classes tailored to your individual needs, fitness level and personal goals.</p> </div> </div> <div class="feature-card animate-in"> <div class="feature-icon"> <i class="fas fa-spa"></i> </div> <div class="feature-content"> <h3>Modern Facilities</h3> <p>Practice in our serene, fully-equipped studios designed to enhance your yoga experience.</p> </div> </div> <div class="feature-card animate-in"> <div class="feature-icon"> <i class="fas fa-users"></i> </div> <div class="feature-content"> <h3>Community Support</h3> <p>Join a welcoming community of like-minded individuals on their wellness journey.</p> </div> </div> <div class="feature-card animate-in"> <div class="feature-icon"> <i class="fas fa-calendar-alt"></i> </div> <div class="feature-content"> <h3>Flexible Scheduling</h3> <p>Choose from multiple class times throughout the day to fit your busy schedule.</p> </div> </div> </div> </section> </body> </html>
CSS
:root { --primary-blue: #1a73e8; --dark-blue: #0d47a1; --light-blue: #e8f0fe; --white: #ffffff; --gray: #f5f5f5; --animation-duration: 0.5s; } * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } body { background-color: var(--white); color: #333; line-height: 1.6; } .why-choose-us { padding: 80px 20px; max-width: 1200px; margin: 0 auto; position: relative; overflow: hidden; } .section-header { text-align: center; margin-bottom: 60px; position: relative; z-index: 2; } .section-header h2 { font-size: 2.5rem; color: var(--dark-blue); margin-bottom: 20px; position: relative; display: inline-block; } .section-header h2::after { content: ''; position: absolute; width: 60%; height: 4px; background: linear-gradient(90deg, var(--primary-blue), transparent); bottom: -10px; left: 20%; border-radius: 2px; } .section-header p { font-size: 1.1rem; color: #666; max-width: 700px; margin: 0 auto; } .features-container { display: flex; flex-wrap: wrap; justify-content: center; gap: 30px; position: relative; z-index: 2; } .feature-card { background: var(--white); border-radius: 15px; box-shadow: 0 10px 30px rgba(26, 115, 232, 0.1); padding: 30px; width: 100%; max-width: 350px; transition: all var(--animation-duration) ease; position: relative; overflow: hidden; border: 1px solid rgba(26, 115, 232, 0.1); } .feature-card::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(26, 115, 232, 0.1) 0%, rgba(255, 255, 255, 0) 70%); z-index: -1; opacity: 0; transition: opacity var(--animation-duration) ease; } .feature-card:hover { transform: translateY(-10px); box-shadow: 0 15px 35px rgba(26, 115, 232, 0.2); } .feature-card:hover::before { opacity: 1; } .feature-icon { width: 70px; height: 70px; background-color: var(--light-blue); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-bottom: 20px; transition: all var(--animation-duration) ease; } .feature-card:hover .feature-icon { background-color: var(--primary-blue); transform: rotate(10deg) scale(1.1); } .feature-icon i { font-size: 30px; color: var(--primary-blue); transition: all var(--animation-duration) ease; } .feature-card:hover .feature-icon i { color: var(--white); } .feature-content h3 { font-size: 1.4rem; color: var(--dark-blue); margin-bottom: 15px; position: relative; } .feature-content h3::after { content: ''; position: absolute; width: 40px; height: 3px; background-color: var(--primary-blue); bottom: -8px; left: 0; transition: width var(--animation-duration) ease; } .feature-card:hover .feature-content h3::after { width: 70px; } .feature-content p { color: #666; font-size: 1rem; } .background-elements { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 1; overflow: hidden; } .circle { position: absolute; border-radius: 50%; background: rgba(26, 115, 232, 0.05); animation: float 15s infinite ease-in-out; } .circle:nth-child(1) { width: 300px; height: 300px; top: -100px; left: -100px; animation-delay: 0s; } .circle:nth-child(2) { width: 200px; height: 200px; bottom: -50px; right: -50px; animation-delay: 3s; } .circle:nth-child(3) { width: 150px; height: 150px; top: 30%; right: 10%; animation-delay: 6s; } @keyframes float { 0%, 100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-20px) rotate(5deg); } } @media (max-width: 768px) { .section-header h2 { font-size: 2rem; } .feature-card { max-width: 100%; } .circle:nth-child(1) { width: 200px; height: 200px; } .circle:nth-child(2) { width: 150px; height: 150px; } .circle:nth-child(3) { width: 100px; height: 100px; } } /* Animation classes */ .animate-in { opacity: 0; transform: translateY(30px); transition: opacity 0.6s ease, transform 0.6s ease; } .animate-in.visible { opacity: 1; transform: translateY(0); }
JavaScript
// Animation on scroll document.addEventListener('DOMContentLoaded', function() { const animateElements = document.querySelectorAll('.animate-in'); const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) { entry.target.classList.add('visible'); observer.unobserve(entry.target); } }); }, { threshold: 0.1, rootMargin: '0px 0px -50px 0px' }); animateElements.forEach(element => { observer.observe(element); // Set delay based on element's position for staggered animation const index = Array.from(animateElements).indexOf(element); element.style.transitionDelay = `${index * 0.1}s`; }); // Add hover effect to feature cards const featureCards = document.querySelectorAll('.feature-card'); featureCards.forEach(card => { card.addEventListener('mouseenter', function() { this.style.transitionDelay = '0s'; }); }); });
Output Preview
Desktop
Mobile
Fullscreen