HTML
1043 lines
33.3 KB
Aura | Premium Ayurvedic Sanctuary
Aura Ayurveda - A premium, holistic healing sanctuary reconnecting you with nature
Live Preview
Source Code
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description"
content="Aura Ayurveda - A premium, holistic healing sanctuary reconnecting you with nature's rhythm.">
<title>Aura | Premium Ayurvedic Sanctuary</title>
<!-- Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Italiana&family=Outfit:wght@200;300;400;500;600&display=swap"
rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<style>
/* --- RESET & VARIABLES --- */
:root {
--bg-dark: #0f1c18;
--bg-card: #182823;
--text-light: #e8e6e1;
--text-muted: #a3a8a6;
--accent-gold: #d4af37;
--accent-soft: #8f9b96;
--gradient-overlay: linear-gradient(180deg, rgba(15, 28, 24, 0) 0%, #0f1c18 100%);
--easing: cubic-bezier(0.22, 1, 0.36, 1);
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
::selection {
background: var(--accent-gold);
color: var(--bg-dark);
}
body {
background-color: var(--bg-dark);
color: var(--text-light);
font-family: 'Outfit', sans-serif;
font-weight: 300;
line-height: 1.6;
overflow-x: hidden;
}
h1,
h2,
h3,
h4 {
font-family: 'Italiana', serif;
font-weight: 400;
line-height: 1.1;
}
a {
text-decoration: none;
color: inherit;
transition: color 0.3s ease;
}
ul {
list-style: none;
}
img {
display: block;
max-width: 100%;
height: auto;
}
/* --- UTILITIES --- */
.container {
max-width: 1400px;
margin: 0 auto;
padding: 0 2rem;
}
.section-padding {
padding: 8rem 0;
}
.reveal-text {
display: block;
overflow: hidden;
}
.reveal-text span {
display: block;
transform: translateY(100%);
opacity: 0;
transition: transform 1s var(--easing), opacity 1s ease;
}
.reveal-text.active span {
transform: translateY(0);
opacity: 1;
}
.fade-in {
opacity: 0;
transform: translateY(30px);
transition: opacity 0.8s ease, transform 0.8s var(--easing);
}
.fade-in.active {
opacity: 1;
transform: translateY(0);
}
/* --- NAVIGATION --- */
.navbar {
position: fixed;
top: 0;
left: 0;
width: 100%;
padding: 2rem;
z-index: 100;
display: flex;
justify-content: space-between;
align-items: center;
transition: padding 0.3s ease, background 0.3s ease;
}
.navbar.scrolled {
padding: 1rem 2rem;
background: rgba(15, 28, 24, 0.85);
backdrop-filter: blur(10px);
}
.logo {
font-family: 'Italiana', serif;
font-size: 1.8rem;
color: var(--text-light);
letter-spacing: 0.05em;
}
.nav-menu {
display: flex;
gap: 3rem;
}
.nav-link {
font-size: 0.9rem;
text-transform: uppercase;
letter-spacing: 0.1em;
color: var(--text-light);
position: relative;
}
.nav-link::after {
content: '';
position: absolute;
bottom: -5px;
left: 0;
width: 0;
height: 1px;
background: var(--accent-gold);
transition: width 0.3s var(--easing);
}
.nav-link:hover::after {
width: 100%;
}
.menu-btn {
display: none;
background: none;
border: none;
color: var(--text-light);
font-size: 1.5rem;
cursor: pointer;
}
/* --- HERO SECTION --- */
.hero {
position: relative;
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
}
.hero-bg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: -1;
}
.hero-bg img {
width: 100%;
height: 100%;
object-fit: cover;
filter: brightness(0.6) sepia(0.2);
transform: scale(1.1);
animation: breathe 20s infinite alternate ease-in-out;
}
@keyframes breathe {
0% {
transform: scale(1.1);
}
100% {
transform: scale(1.15);
}
}
.hero-content {
text-align: center;
z-index: 1;
max-width: 800px;
padding: 2rem;
}
.hero-subtitle {
display: block;
font-size: 0.9rem;
text-transform: uppercase;
letter-spacing: 0.3em;
color: var(--accent-gold);
margin-bottom: 1.5rem;
}
.hero-title {
font-size: clamp(3rem, 8vw, 6rem);
color: var(--text-light);
margin-bottom: 2rem;
line-height: 1;
}
.hero-btn {
display: inline-block;
padding: 1rem 3rem;
border: 1px solid rgba(255, 255, 255, 0.3);
border-radius: 50px;
color: var(--text-light);
text-transform: uppercase;
font-size: 0.8rem;
letter-spacing: 0.2em;
transition: all 0.4s var(--easing);
background: rgba(255, 255, 255, 0.05);
backdrop-filter: blur(5px);
}
.hero-btn:hover {
background: var(--accent-gold);
border-color: var(--accent-gold);
color: var(--bg-dark);
transform: translateY(-3px);
}
/* --- PHILOSOPHY SECTION (Sticky) --- */
.philosophy {
position: relative;
background: var(--bg-dark);
}
.phil-grid {
display: grid;
grid-template-columns: 1fr 1fr;
min-height: 100vh;
}
.phil-image-wrapper {
position: sticky;
top: 0;
height: 100vh;
overflow: hidden;
}
.phil-image {
width: 100%;
height: 100%;
object-fit: cover;
filter: grayscale(0.2);
}
.phil-content {
padding: 8rem 4rem;
display: flex;
flex-direction: column;
justify-content: center;
}
.phil-heading {
font-size: 3.5rem;
margin-bottom: 3rem;
color: var(--accent-gold);
}
.phil-text {
font-size: 1.2rem;
color: var(--text-muted);
margin-bottom: 2rem;
max-width: 500px;
}
/* --- SERVICES (Horizontal Scroll) --- */
.services {
background: var(--bg-card);
overflow: hidden;
}
.services-header {
text-align: center;
margin-bottom: 4rem;
}
.section-tag {
font-size: 0.8rem;
text-transform: uppercase;
letter-spacing: 0.2em;
color: var(--accent-gold);
display: block;
margin-bottom: 1rem;
}
.scrolling-wrapper {
display: flex;
gap: 2rem;
overflow-x: auto;
padding: 0 2rem 4rem;
scroll-snap-type: x mandatory;
scrollbar-width: none;
/* Firefox */
}
.scrolling-wrapper::-webkit-scrollbar {
display: none;
}
.service-card {
flex: 0 0 400px;
scroll-snap-align: center;
background: var(--bg-dark);
border: 1px solid rgba(255, 255, 255, 0.05);
border-radius: 4px;
overflow: hidden;
transition: transform 0.4s var(--easing);
position: relative;
}
.service-card:hover {
transform: translateY(-10px);
border-color: var(--accent-gold);
}
.service-img {
height: 300px;
width: 100%;
overflow: hidden;
}
.service-img img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.6s var(--easing);
}
.service-card:hover .service-img img {
transform: scale(1.1);
}
.service-info {
padding: 2rem;
}
.service-title {
font-size: 1.8rem;
margin-bottom: 1rem;
color: var(--text-light);
}
.service-desc {
color: var(--text-muted);
font-size: 0.95rem;
margin-bottom: 2rem;
}
.service-link {
font-size: 0.8rem;
text-transform: uppercase;
letter-spacing: 0.15em;
color: var(--accent-gold);
display: inline-flex;
align-items: center;
gap: 0.5rem;
}
/* --- INGREDIENTS (Circular Layout) --- */
.ingredients {
background: var(--bg-dark);
text-align: center;
}
.ingredients-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 4rem;
margin-top: 4rem;
}
.ingredient-item {
display: flex;
flex-direction: column;
align-items: center;
}
.ing-img-wrap {
width: 200px;
height: 200px;
border-radius: 50%;
overflow: hidden;
border: 1px solid rgba(212, 175, 55, 0.3);
margin-bottom: 2rem;
position: relative;
}
.ing-img-wrap::after {
content: '';
position: absolute;
top: 10px;
left: 10px;
right: 10px;
bottom: 10px;
border-radius: 50%;
border: 1px solid rgba(255, 255, 255, 0.1);
transition: transform 0.4s var(--easing);
}
.ingredient-item:hover .ing-img-wrap::after {
transform: scale(0.9);
border-color: var(--accent-gold);
}
.ingredient-item img {
width: 100%;
height: 100%;
object-fit: cover;
}
.ing-name {
font-family: 'Italiana', serif;
font-size: 1.5rem;
color: var(--text-light);
margin-bottom: 0.5rem;
}
.ing-prop {
color: var(--accent-gold);
font-size: 0.85rem;
text-transform: uppercase;
letter-spacing: 0.1em;
}
/* --- TESTIMONIALS --- */
.testimonials {
background: linear-gradient(to bottom, var(--bg-dark), var(--bg-card));
position: relative;
}
.quote-icon {
font-size: 4rem;
color: rgba(255, 255, 255, 0.05);
display: block;
margin: 0 auto 2rem;
text-align: center;
}
.test-content {
max-width: 800px;
margin: 0 auto;
text-align: center;
}
.test-text {
font-family: 'Italiana', serif;
font-size: 2.5rem;
line-height: 1.4;
margin-bottom: 3rem;
color: var(--text-light);
}
.test-author {
font-size: 0.9rem;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--accent-soft);
}
/* --- CONTACT --- */
.contact {
background: var(--bg-card);
position: relative;
overflow: hidden;
}
/* Ornamental Circle */
.ornament {
position: absolute;
width: 600px;
height: 600px;
border: 1px solid rgba(255, 255, 255, 0.03);
border-radius: 50%;
bottom: -300px;
right: -300px;
pointer-events: none;
}
.contact-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 4rem;
align-items: center;
}
.form-box {
background: rgba(255, 255, 255, 0.02);
padding: 3rem;
border: 1px solid rgba(255, 255, 255, 0.05);
backdrop-filter: blur(10px);
}
.input-group {
margin-bottom: 2rem;
position: relative;
}
.input-field {
width: 100%;
background: transparent;
border: none;
border-bottom: 1px solid rgba(255, 255, 255, 0.2);
padding: 1rem 0;
color: var(--text-light);
font-family: 'Outfit', sans-serif;
font-size: 1rem;
transition: border-color 0.3s;
}
.input-field:focus {
outline: none;
border-color: var(--accent-gold);
}
.input-label {
position: absolute;
top: 1rem;
left: 0;
color: var(--text-muted);
pointer-events: none;
transition: 0.3s ease all;
font-size: 0.9rem;
}
.input-field:focus~.input-label,
.input-field:valid~.input-label {
top: -10px;
font-size: 0.75rem;
color: var(--accent-gold);
}
.submit-btn {
background: var(--text-light);
color: var(--bg-dark);
border: none;
padding: 1rem 3rem;
font-size: 0.9rem;
text-transform: uppercase;
letter-spacing: 0.2em;
cursor: pointer;
transition: 0.3s ease;
width: 100%;
}
.submit-btn:hover {
background: var(--accent-gold);
}
/* --- FOOTER --- */
.footer {
background: #0a1210;
padding: 6rem 0 2rem;
border-top: 1px solid rgba(255, 255, 255, 0.05);
}
.footer-logo {
font-family: 'Italiana', serif;
font-size: 4rem;
color: var(--text-light);
text-align: center;
margin-bottom: 3rem;
display: block;
opacity: 0.8;
}
.footer-grid {
display: flex;
justify-content: space-between;
max-width: 1000px;
margin: 0 auto 4rem;
flex-wrap: wrap;
gap: 2rem;
}
.footer-col h5 {
font-family: 'Outfit', sans-serif;
font-size: 0.8rem;
text-transform: uppercase;
letter-spacing: 0.2em;
margin-bottom: 1.5rem;
color: var(--accent-soft);
}
.footer-col ul li {
margin-bottom: 0.8rem;
}
.footer-col a {
color: var(--text-muted);
font-size: 0.9rem;
}
.footer-col a:hover {
color: var(--accent-gold);
}
.copyright {
text-align: center;
color: rgba(255, 255, 255, 0.2);
font-size: 0.8rem;
padding-top: 2rem;
border-top: 1px solid rgba(255, 255, 255, 0.05);
}
/* --- RESPONSIVE --- */
@media (max-width: 900px) {
.phil-grid {
grid-template-columns: 1fr;
}
.phil-image-wrapper {
position: relative;
height: 50vh;
}
.phil-content {
padding: 4rem 2rem;
}
.hero-title {
font-size: 3.5rem;
}
.contact-grid {
grid-template-columns: 1fr;
}
.input-field {
background: rgba(255, 255, 255, 0.05);
border: none;
padding: 1rem;
border-radius: 4px;
}
.input-label {
left: 1rem;
}
.input-field:focus~.input-label,
.input-field:valid~.input-label {
top: -20px;
left: 0;
}
}
@media (max-width: 768px) {
.nav-menu {
position: fixed;
top: 0;
right: 0;
height: 100vh;
background: var(--bg-dark);
flex-direction: column;
padding: 6rem 3rem;
transform: translateX(100%);
transition: transform 0.4s var(--easing);
border-left: 1px solid rgba(255, 255, 255, 0.1);
}
.nav-menu.active {
transform: translateX(0);
}
.menu-btn {
display: block;
z-index: 101;
}
.hero-title {
font-size: 3rem;
}
.scrolling-wrapper {
padding: 0 1rem 2rem;
}
.service-card {
flex: 0 0 300px;
}
.footer-grid {
flex-direction: column;
text-align: center;
align-items: center;
}
.footer-logo {
font-size: 3rem;
}
}
</style>
</head>
<body>
<!-- Navigation -->
<nav class="navbar">
<a href="#" class="logo">AURA</a>
<ul class="nav-menu" id="navMenu">
<li><a href="#philosophy" class="nav-link">Philosophy</a></li>
<li><a href="#services" class="nav-link">Healing</a></li>
<li><a href="#ingredients" class="nav-link">Elements</a></li>
<li><a href="#contact" class="nav-link">Journey</a></li>
</ul>
<button class="menu-btn" onclick="toggleMenu()" aria-label="Toggle menu">
<i class="fas fa-bars"></i>
</button>
</nav>
<!-- Hero -->
<section class="hero">
<div class="hero-bg">
<img src="https://images.unsplash.com/photo-1518199589338-718c5e656d2b?q=80&w=2070&auto=format&fit=crop"
alt="Deep forest nature">
</div>
<div class="hero-content">
<span class="hero-subtitle fade-in">Return to Roots</span>
<h1 class="hero-title">
<span class="reveal-text"><span>Ancient Wisdom for</span></span>
<span class="reveal-text"><span>Modern Balance</span></span>
</h1>
<div class="fade-in" style="transition-delay: 0.4s;">
<a href="#services" class="hero-btn">Explore Sanctuary</a>
</div>
</div>
</section>
<!-- Philosophy (Sticky Split) -->
<section id="philosophy" class="philosophy">
<div class="phil-grid">
<div class="phil-image-wrapper">
<img src="https://images.unsplash.com/photo-1600334129128-685c5582fd35?q=80&w=1000&auto=format&fit=crop"
class="phil-image" alt="Ayurvedic herbs preparation">
</div>
<div class="phil-content">
<span class="section-tag fade-in">Our Philosophy</span>
<h2 class="phil-heading fade-in">Harmony in every breath, nature in every healing.</h2>
<p class="phil-text fade-in">
We believe true wellness flows from the alignment of biological rhythms with nature's cycles. Aura
isn't just a clinic; it is a sanctuary where time slows down, allowing the body's innate
intelligence to heal, rejuvenate, and thrive.
</p>
<p class="phil-text fade-in">
Drawing from 5,000 years of Vedic tradition, our methods are untouched by haste, purely focused on
the deep restoration of the self (Atman).
</p>
<div class="fade-in">
<a href="#about" class="service-link">Read Our Story <i class="fas fa-arrow-right"></i></a>
</div>
</div>
</div>
</section>
<!-- Services (Horizontal Scroll) -->
<section id="services" class="services section-padding">
<div class="container">
<div class="services-header">
<span class="section-tag fade-in">Sacred Therapies</span>
<h2 style="font-size: 3rem; color: var(--text-light);" class="fade-in">Curated Healing Journeys</h2>
</div>
<div class="scrolling-wrapper">
<!-- Card 1 -->
<div class="service-card">
<div class="service-img">
<img src="https://images.unsplash.com/photo-1544161515-4ab6ce6db874?q=80&w=800&auto=format&fit=crop"
alt="Panchakarma">
</div>
<div class="service-info">
<h3 class="service-title">Panchakarma</h3>
<p class="service-desc">The ultimate cellular detox. A five-fold purification process to release
deep-seated toxins and reset metabolic fire.</p>
<a href="#" class="service-link">View Details <i class="fas fa-long-arrow-alt-right"></i></a>
</div>
</div>
<!-- Card 2 -->
<div class="service-card">
<div class="service-img">
<img src="https://images.unsplash.com/photo-1519823551278-64ac92734fb1?q=80&w=800&auto=format&fit=crop"
alt="Abhyanga">
</div>
<div class="service-info">
<h3 class="service-title">Abhyanga</h3>
<p class="service-desc">Rhythmic warm oil massage that nourishes the skin, lubricates the
joints, and calms the nervous system.</p>
<a href="#" class="service-link">View Details <i class="fas fa-long-arrow-alt-right"></i></a>
</div>
</div>
<!-- Card 3 -->
<div class="service-card">
<div class="service-img">
<img src="https://images.unsplash.com/photo-1506126613408-eca07ce68773?q=80&w=800&auto=format&fit=crop"
alt="Shirodhara">
</div>
<div class="service-info">
<h3 class="service-title">Shirodhara</h3>
<p class="service-desc">A continuous stream of warm herbal oil poured over the third eye to
induce a state of profound mental clarity.</p>
<a href="#" class="service-link">View Details <i class="fas fa-long-arrow-alt-right"></i></a>
</div>
</div>
<!-- Card 4 -->
<div class="service-card">
<div class="service-img">
<img src="https://images.unsplash.com/photo-1540914124281-342587941389?q=80&w=800&auto=format&fit=crop"
alt="Yoga">
</div>
<div class="service-info">
<h3 class="service-title">Soma Yoga</h3>
<p class="service-desc">Gentle, restorative movement synchronized with breath to unlock energy
channels and release tension.</p>
<a href="#" class="service-link">View Details <i class="fas fa-long-arrow-alt-right"></i></a>
</div>
</div>
</div>
</div>
</section>
<!-- Ingredients -->
<section id="ingredients" class="ingredients section-padding">
<div class="container">
<span class="section-tag fade-in">Nature's Pharmacopeia</span>
<h2 style="font-size: 2.5rem; color: var(--text-light); margin-bottom: 1rem;" class="fade-in">Purest
Elements</h2>
<p style="color: var(--text-muted); max-width: 600px; margin: 0 auto;" class="fade-in">Sourced from the
foothills of the Himalayas, ethically gathered.</p>
<div class="ingredients-grid">
<div class="ingredient-item fade-in">
<div class="ing-img-wrap">
<img src="https://images.unsplash.com/photo-1620916566398-39f1143ab7be?q=80&w=500&auto=format&fit=crop"
alt="Turmeric">
</div>
<h4 class="ing-name">Haridra</h4>
<span class="ing-prop">Anti-inflammatory</span>
</div>
<div class="ingredient-item fade-in" style="transition-delay: 0.1s">
<div class="ing-img-wrap">
<img src="https://images.unsplash.com/photo-1615485290382-441e4d049cb5?q=80&w=500&auto=format&fit=crop"
alt="Ashwagandha root">
</div>
<h4 class="ing-name">Ashwagandha</h4>
<span class="ing-prop">Vitality & Strength</span>
</div>
<div class="ingredient-item fade-in" style="transition-delay: 0.2s">
<div class="ing-img-wrap">
<img src="https://images.unsplash.com/photo-1611080626919-7cf5a9dbab5b?q=80&w=500&auto=format&fit=crop"
alt="Tulsi leaves">
</div>
<h4 class="ing-name">Tulsi</h4>
<span class="ing-prop">Respiratory Health</span>
</div>
<div class="ingredient-item fade-in" style="transition-delay: 0.3s">
<div class="ing-img-wrap">
<img src="https://images.unsplash.com/photo-1594382596489-08a3498a96d1?q=80&w=500&auto=format&fit=crop"
alt="Brahmi">
</div>
<h4 class="ing-name">Brahmi</h4>
<span class="ing-prop">Mental Clarity</span>
</div>
</div>
</div>
</section>
<!-- Testimonials -->
<section class="testimonials section-padding">
<div class="container">
<i class="fas fa-quote-right quote-icon fade-in"></i>
<div class="test-content">
<p class="test-text fade-in">
"I came seeking a remedy for fatigue, but I found a whole new way of living. Aura healed not just my
body, but my connection to the world around me."
</p>
<div class="test-author fade-in">— Eleanor V., London</div>
</div>
</div>
</section>
<!-- Contact -->
<section id="contact" class="contact section-padding">
<div class="ornament"></div>
<div class="container">
<div class="contact-grid">
<div class="contact-text">
<span class="section-tag fade-in">Begin Your Journey</span>
<h2 style="font-size: 3rem; color: var(--text-light); margin-bottom: 2rem;" class="fade-in">Visit
the Sanctuary</h2>
<p style="color: var(--text-muted); margin-bottom: 2rem;" class="fade-in">
Located in the serene valleys, away from the city noise. Book a consultation or a retreat stay.
</p>
<ul class="fade-in" style="color: var(--text-light); font-size: 0.9rem;">
<li style="margin-bottom: 1rem;"><i class="fas fa-map-marker-alt"
style="color: var(--accent-gold); margin-right: 1rem;"></i> 128 Silent Valley, Rishikesh
</li>
<li style="margin-bottom: 1rem;"><i class="fas fa-phone"
style="color: var(--accent-gold); margin-right: 1rem;"></i> +91 987 654 3210</li>
<li><i class="fas fa-envelope" style="color: var(--accent-gold); margin-right: 1rem;"></i>
heal@aura-ayurveda.com</li>
</ul>
</div>
<div class="form-box fade-in">
<form>
<div class="input-group">
<input type="text" class="input-field" required>
<label class="input-label">Your Name</label>
</div>
<div class="input-group">
<input type="email" class="input-field" required>
<label class="input-label">Email Address</label>
</div>
<div class="input-group">
<input type="text" class="input-field" required>
<label class="input-label">Purpose of Visit</label>
</div>
<button type="submit" class="submit-btn">Request Invitation</button>
</form>
</div>
</div>
</div>
</section>
<!-- Footer -->
<footer class="footer">
<div class="container">
<a href="#" class="footer-logo">AURA</a>
<div class="footer-grid">
<div class="footer-col">
<h5>Discover</h5>
<ul>
<li><a href="#">Our Story</a></li>
<li><a href="#">The Team</a></li>
<li><a href="#">Journal</a></li>
<li><a href="#">Careers</a></li>
</ul>
</div>
<div class="footer-col">
<h5>Wellness</h5>
<ul>
<li><a href="#">Therapies</a></li>
<li><a href="#">Retreats</a></li>
<li><a href="#">Online Consult</a></li>
<li><a href="#">Products</a></li>
</ul>
</div>
<div class="footer-col">
<h5>Social</h5>
<ul>
<li><a href="#">Instagram</a></li>
<li><a href="#">Facebook</a></li>
<li><a href="#">Pinterest</a></li>
<li><a href="#">Spotify</a></li>
</ul>
</div>
</div>
<div class="copyright">
© 2026 Aura Ayurveda Sanctuary. All rights reserved.
</div>
</div>
</footer>
<!-- Scripts -->
<script>
// Navbar scroll effect
window.addEventListener('scroll', () => {
const nav = document.querySelector('.navbar');
if (window.scrollY > 50) {
nav.classList.add('scrolled');
} else {
nav.classList.remove('scrolled');
}
});
// Mobile menu toggle
function toggleMenu() {
document.getElementById('navMenu').classList.toggle('active');
}
// Intersection Observer for Animations
const observerOptions = {
threshold: 0.15,
rootMargin: "0px 0px -50px 0px"
};
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('active');
}
});
}, observerOptions);
document.querySelectorAll('.fade-in, .reveal-text').forEach(el => {
observer.observe(el);
});
</script>
</body>
</html>