<!-- Navbar -->
Browse files<nav class="fixed top-0 left-0 w-full bg-gradient-to-r from-[#0a0a0f] via-[#101020] to-[#0a0a0f] bg-opacity-90 backdrop-blur-md border-b border-primary/30 z-50">
<div class="max-w-7xl mx-auto px-6 py-3 flex items-center justify-between">
<!-- Logo / Title -->
<a href="#" class="flex items-center space-x-2 text-white font-bold text-2xl tracking-wide hover:text-primary transition">
<span class="text-primary">⚡</span>
<span>MultimediaOne</span>
</a>
<!-- Menu Links -->
<div class="hidden md:flex space-x-8 text-gray-300 font-medium">
<a href="#home" class="hover:text-primary transition">Home</a>
<a href="#about" class="hover:text-primary transition">About</a>
<a href="#services" class="hover:text-primary transition">Services</a>
<a href="#portfolio" class="hover:text-primary transition">Portfolio</a>
<a href="#ai" class="hover:text-primary transition">AI</a>
<a href="#contact" class="hover:text-primary transition">Contact</a>
</div>
<!-- CTA Button -->
<a href="#contact" class="hidden md:inline-block bg-primary/80 hover:bg-primary text-white font-semibold px-5 py-2 rounded-full shadow-md transition">
Let’s Talk
</a>
<!-- Mobile Menu Button -->
<button class="md:hidden text-white text-2xl focus:outline-none" id="menu-toggle">
☰
</button>
</div>
<!-- Mobile Dropdown -->
<div id="mobile-menu" class="hidden md:hidden flex flex-col bg-[#0a0a0f] border-t border-primary/20 py-3 px-6 space-y-3">
<a href="#home" class="hover:text-primary transition">Home</a>
<a href="#about" class="hover:text-primary transition">About</a>
<a href="#services" class="hover:text-primary transition">Services</a>
<a href="#portfolio" class="hover:text-primary transition">Portfolio</a>
<a href="#ai" class="hover:text-primary transition">AI</a>
<a href="#contact" class="hover:text-primary transition">Contact</a>
</div>
</nav>
<script>
// Mobile menu toggle
document.getElementById('menu-toggle').addEventListene
- components/navbar.js +11 -9
|
@@ -15,8 +15,8 @@ class CustomNavbar extends HTMLElement {
|
|
| 15 |
background-opacity: 0.9;
|
| 16 |
backdrop-filter: blur(10px);
|
| 17 |
border-bottom: 1px solid rgba(124, 58, 237, 0.3);
|
|
|
|
| 18 |
}
|
| 19 |
-
|
| 20 |
.container {
|
| 21 |
max-width: 1280px;
|
| 22 |
margin: 0 auto;
|
|
@@ -25,7 +25,6 @@ class CustomNavbar extends HTMLElement {
|
|
| 25 |
justify-content: space-between;
|
| 26 |
align-items: center;
|
| 27 |
}
|
| 28 |
-
|
| 29 |
.logo {
|
| 30 |
display: flex;
|
| 31 |
align-items: center;
|
|
@@ -34,16 +33,15 @@ class CustomNavbar extends HTMLElement {
|
|
| 34 |
font-size: 1.5rem;
|
| 35 |
color: white;
|
| 36 |
transition: color 0.3s ease;
|
|
|
|
| 37 |
}
|
| 38 |
-
|
| 39 |
-
.logo:hover {
|
| 40 |
color: #7e22ce;
|
| 41 |
}
|
| 42 |
|
| 43 |
.logo-emoji {
|
| 44 |
color: #7e22ce;
|
| 45 |
}
|
| 46 |
-
|
| 47 |
.nav-links {
|
| 48 |
display: none;
|
| 49 |
gap: 2rem;
|
|
@@ -52,13 +50,15 @@ class CustomNavbar extends HTMLElement {
|
|
| 52 |
}
|
| 53 |
|
| 54 |
.nav-links a {
|
|
|
|
|
|
|
|
|
|
| 55 |
transition: color 0.3s ease;
|
| 56 |
}
|
| 57 |
|
| 58 |
.nav-links a:hover {
|
| 59 |
color: #7e22ce;
|
| 60 |
}
|
| 61 |
-
|
| 62 |
.cta-button {
|
| 63 |
display: none;
|
| 64 |
background: rgba(124, 58, 237, 0.8);
|
|
@@ -68,9 +68,9 @@ class CustomNavbar extends HTMLElement {
|
|
| 68 |
border-radius: 9999px;
|
| 69 |
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
|
| 70 |
transition: all 0.3s ease;
|
|
|
|
| 71 |
}
|
| 72 |
-
|
| 73 |
-
.cta-button:hover {
|
| 74 |
background: #7e22ce;
|
| 75 |
}
|
| 76 |
|
|
@@ -82,7 +82,6 @@ class CustomNavbar extends HTMLElement {
|
|
| 82 |
border: none;
|
| 83 |
cursor: pointer;
|
| 84 |
}
|
| 85 |
-
|
| 86 |
.mobile-menu {
|
| 87 |
display: none;
|
| 88 |
flex-direction: column;
|
|
@@ -93,6 +92,9 @@ class CustomNavbar extends HTMLElement {
|
|
| 93 |
}
|
| 94 |
|
| 95 |
.mobile-menu a {
|
|
|
|
|
|
|
|
|
|
| 96 |
color: rgb(209, 213, 219);
|
| 97 |
transition: color 0.3s ease;
|
| 98 |
}
|
|
|
|
| 15 |
background-opacity: 0.9;
|
| 16 |
backdrop-filter: blur(10px);
|
| 17 |
border-bottom: 1px solid rgba(124, 58, 237, 0.3);
|
| 18 |
+
width: 100%;
|
| 19 |
}
|
|
|
|
| 20 |
.container {
|
| 21 |
max-width: 1280px;
|
| 22 |
margin: 0 auto;
|
|
|
|
| 25 |
justify-content: space-between;
|
| 26 |
align-items: center;
|
| 27 |
}
|
|
|
|
| 28 |
.logo {
|
| 29 |
display: flex;
|
| 30 |
align-items: center;
|
|
|
|
| 33 |
font-size: 1.5rem;
|
| 34 |
color: white;
|
| 35 |
transition: color 0.3s ease;
|
| 36 |
+
text-decoration: none;
|
| 37 |
}
|
| 38 |
+
.logo:hover {
|
|
|
|
| 39 |
color: #7e22ce;
|
| 40 |
}
|
| 41 |
|
| 42 |
.logo-emoji {
|
| 43 |
color: #7e22ce;
|
| 44 |
}
|
|
|
|
| 45 |
.nav-links {
|
| 46 |
display: none;
|
| 47 |
gap: 2rem;
|
|
|
|
| 50 |
}
|
| 51 |
|
| 52 |
.nav-links a {
|
| 53 |
+
text-decoration: none;
|
| 54 |
+
}
|
| 55 |
+
.nav-links a {
|
| 56 |
transition: color 0.3s ease;
|
| 57 |
}
|
| 58 |
|
| 59 |
.nav-links a:hover {
|
| 60 |
color: #7e22ce;
|
| 61 |
}
|
|
|
|
| 62 |
.cta-button {
|
| 63 |
display: none;
|
| 64 |
background: rgba(124, 58, 237, 0.8);
|
|
|
|
| 68 |
border-radius: 9999px;
|
| 69 |
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
|
| 70 |
transition: all 0.3s ease;
|
| 71 |
+
text-decoration: none;
|
| 72 |
}
|
| 73 |
+
.cta-button:hover {
|
|
|
|
| 74 |
background: #7e22ce;
|
| 75 |
}
|
| 76 |
|
|
|
|
| 82 |
border: none;
|
| 83 |
cursor: pointer;
|
| 84 |
}
|
|
|
|
| 85 |
.mobile-menu {
|
| 86 |
display: none;
|
| 87 |
flex-direction: column;
|
|
|
|
| 92 |
}
|
| 93 |
|
| 94 |
.mobile-menu a {
|
| 95 |
+
text-decoration: none;
|
| 96 |
+
}
|
| 97 |
+
.mobile-menu a {
|
| 98 |
color: rgb(209, 213, 219);
|
| 99 |
transition: color 0.3s ease;
|
| 100 |
}
|