/* Fullscreen-Menü */ :root { --secondary-color: #ff6700 /* Rot */ } @font-face { font-family: Geist-Bold; src: url(/fonts/Geist-Bold.ttf); } @font-face { font-family: Geist-Medium; src: url(/fonts/Geist-Medium.ttf); } html.menu-open, body.menu-open { overflow: hidden; height: 100dvh; position: fixed; width: 100%; touch-action: none; } #menu { display: flex; /* Stelle sicher, dass es nicht 'none' ist */ flex-direction: column; visibility: hidden; opacity: 0; transform: translateY(-100%); transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out, visibility 0.3s ease-in-out; height: 100%; width: 100%; position: fixed; /* Setzt das Menü über den gesamten Bildschirm */ top: 0; left: 0; background-color: #00000090; backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); justify-content: flex-end; align-items: space-between; gap: 10px; z-index: 10; /* Stellt sicher, dass es über allem liegt */ } #menu.active { visibility: visible; opacity: 1; transform: translateY(0); } #menu .menu-header .logo{ position: absolute; width: 100%; height: 17dvh; display: flex; justify-content: center; align-items: flex-end; padding-bottom: 3dvh; } #menu .menu-header .logo img{ height: 40%; } #menu .menu-header{ display: flex; justify-content: space-between; flex-direction: row; height: 20dvh; width: 100%; gap: 10px; } #menu .menu-header .first-block{ width: 97%; height: 100%; background-color: var(--secondary-color); } #menu .menu-header .second-block{ width: 3%; height: 100%; background-color: var(--secondary-color); } #menu .menu-center{ display: flex; justify-content: space-between; flex-direction: row; height: 50dvh; width: 100%; gap: 10px; } #menu .menu-center .first-block{ width: 3%; height: 100%; background-color: var(--secondary-color); } #menu .menu-center .second-block{ width: 97%; height: 100%; background-color: var(--secondary-color); } #menu nav { width: 94%; height: 44dvh; position: absolute; right: 0; display: flex; justify-content: center; gap: 1.5%; align-items: flex-end; flex-direction: column; padding: 3%; } #menu a { color: black; text-decoration: none; font-size: clamp(1.2rem, 7.5dvh, 14dvw); line-height: 83%; text-align: right; cursor: pointer; } #menu nav .sitelinks{ display: flex; flex-direction: column; width: 100%; } #menu nav .webshop-container{ width: min-content; display: flex; justify-content: center; align-items: center; flex-direction: column; } #menu nav .webshop-container a{ color: white; } #coming-soon{ color: #8D19FF; position: absolute; align-self: center; rotate: -30deg; font-size: clamp(1rem, 5vh, 5vw); font-weight: bold; } #menu .webshop-container .logo-and-claim{ width: min-content; display: flex; flex-direction: row; justify-content: flex-end; align-items: center; } #menu .webshop-container .logo-and-claim .sr-logo{ height: 100%; display: flex; justify-content: center; align-items: center; margin-left: 1%; margin-right: 1%; } #menu .webshop-container .logo-and-claim .sr-logo img{ width: auto; height: clamp(1rem, 7vh, 7vw); } #menu .webshop-container .logo-and-claim p{ text-align: right; color: white; font-size: clamp(1.5rem, 3vh, 3vw); line-height: 83%; white-space: nowrap; } #menu .webshop-container .logo-and-claim #stoned-rocks-1{ text-align: left; } #menu .imprint{ display: flex; justify-content: flex-end; padding-right: 3%; } #menu .imprint a{ color: white; font-family: Geist-Medium; font-weight: 100; font-size: clamp(1rem, 2vh, 2vw); } #menu .lower-part{ height: 30vh; } #menu .contact-links{ display: flex; flex-direction: row; justify-content: space-between; padding: 3%; } #menu .contact-links a{ line-height: 100%; color: white; font-size: clamp(1.4rem, 3vh, 3vw); font-family: Geist-Medium; font-weight: 100; } #menu .contact-links .left{ height: 6vh; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; } #menu .contact-links .right{ display: flex; justify-content: space-between; height: 6vh; flex-direction: column; align-items: flex-end; } #menuPlayPause { background: none; border: none; } #menuPlayPause img { background:none; border: none; /* Entfernt den grauen Hintergrund */ width: 40px; /* Passe die Größe an */ height: auto; display: block; } .menu-music-control{ width: 100%; display: flex; justify-content: center; padding-top: 5vh; padding-bottom: 5vh; } /* Soundwave-Button */ #soundwaveButton { position: fixed; bottom: 20px; right: 20px; width: 70px; height: 70px; cursor: pointer; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; z-index: 30; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: 0px 0px 20px 0px rgba(255,255,255,1); border-radius: 50%; } .wave-line { width: 45px; height: 5px; background-color: white; transition: all 0.3s ease-in-out; } /* Weichere, harmonische Wellenbewegung */ @keyframes waveMotion { 0%, 100% { transform: translateY(0) scaleY(1); } 25% { transform: translateY(-4px) scaleY(1.15); } 50% { transform: translateY(3px) scaleY(0.95); } 75% { transform: translateY(-2px) scaleY(1.1); } } /* Linien bewegen sich leicht zeitversetzt */ #soundwaveButton.playing .wave-line:nth-child(1) { animation: waveMotion 1.2s infinite ease-in-out alternate; } #soundwaveButton.playing .wave-line:nth-child(2) { animation: waveMotion 1.2s infinite ease-in-out alternate; animation-delay: 0.2s; } #soundwaveButton.playing .wave-line:nth-child(3) { animation: waveMotion 1.2s infinite ease-in-out alternate; animation-delay: 0.4s; } @media (min-width: 1000px){ #menu nav{ flex-direction: row-reverse; justify-content: space-between; align-items: center; width: 94vw; padding: 0; padding-right: 3%; padding-left: 3%; height: 49vh; } #menu nav .sitelinks{ width: 50%; } #menu nav .webshop-container{ margin-left: 6%; width: 35%; align-items: center; } #menu nav .webshop-container a{ font-size: clamp(2rem, 8vh, 8vw); } #menu .webshop-container .logo-and-claim{ justify-content: center; } #menu a{ font-size: clamp(2rem, 10vh, 10vw); } #menu a:hover{ color: white; } #menu #imprint{ text-align: right; } #menu #webshop-link:hover{ color: yellow; } #menu .contact-links a:hover{ color: var(--secondary-color); } }