diff --git a/src/components/Header.astro b/src/components/Header.astro index 2ea3e70..c4ae279 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -11,9 +11,9 @@ import "../styles/components/Header.css"; - + + + +
+
+ + + +
+
+ + +
+ Home + Events + Galerie + Drinks + Contact +
+ + diff --git a/src/styles/components/Header.css b/src/styles/components/Header.css index 2e3e6ff..2d3c6b8 100644 --- a/src/styles/components/Header.css +++ b/src/styles/components/Header.css @@ -21,7 +21,6 @@ /* Should match the header height */ } - .logo-container { display: flex; align-items: center; @@ -55,6 +54,82 @@ color: #ffa500; } +/* Burger Menu Styles */ +.burger-menu { + display: none; + cursor: pointer; +} + +.burger-icon { + width: 30px; + height: 24px; + position: relative; + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.burger-icon span { + display: block; + height: 3px; + width: 100%; + background-color: white; + border-radius: 3px; + transition: all 0.3s ease; +} + +.burger-icon.active span:nth-child(1) { + transform: translateY(10.5px) rotate(45deg); +} + +.burger-icon.active span:nth-child(2) { + opacity: 0; +} + +.burger-icon.active span:nth-child(3) { + transform: translateY(-10.5px) rotate(-45deg); +} + +/* Mobile Menu Styles */ +.mobile-menu { + display: none; + position: fixed; + top: 70px; + left: 0; + right: 0; + background-color: #0e0c0c; + flex-direction: column; + align-items: center; + padding: 1rem; + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + transform: translateY(-100%); + transition: transform 0.3s ease; + z-index: 999; +} + +.mobile-menu.active { + transform: translateY(0); +} + +.mobile-menu a { + margin: 1rem 0; + color: white; + text-decoration: none; + font-size: 1.2rem; + text-align: center; + width: 100%; + padding: 0.5rem 0; + border-bottom: 1px solid #333; +} + +.mobile-menu a:last-child { + border-bottom: none; +} + +.mobile-menu a:hover { + color: #ffa500; +} + @media (max-width: 768px) { .header { height: 65px; @@ -68,11 +143,24 @@ .header-spacer { height: 65px; } + + .burger-menu { + display: block; + } + + .nav-main { + display: none; + } + + .mobile-menu { + display: flex; + top: 65px; + } } @media (max-width: 480px) { .header { - padding: 0.5rem; + padding: 0.5rem 1rem; height: 60px; } @@ -81,12 +169,11 @@ height: 2.5em; } - .nav-main a { - margin: 0 0.5rem; - font-size: 0.9rem; - } - .header-spacer { height: 60px; } + + .mobile-menu { + top: 60px; + } } \ No newline at end of file