1<!DOCTYPE html> 2<html lang="de"> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <meta name="description" content="Baue deine eigene Community auf, monetarisiere Inhalte und manage alles an einem Ort. Live Video, Chats, Kurse & mehr. Jetzt kostenlos testen!"> 7 <meta name="keywords" content="Community-Plattform, SaaS, Coaching, Creator, Mitgliedschaften, Content-Verkauf"> 8 <meta name="author" content="Glymmer"> 9 <meta property="og:title" content="Glymmer â Community-Plattform für Coaches & Creator"> 10 <meta property="og:description" content="Baue deine eigene Community auf, monetarisiere Inhalte und manage alles an einem Ort. Live Video, Chats, Kurse & mehr. Jetzt kostenlos testen!"> 11 <meta property="og:type" content="website"> 12 <meta property="og:url" content="https://glymmer.io/"> 13 <meta property="og:image" content="https://glymmer.io/public/Glymmer_Logo_Dunkel.png"> 14 <meta property="og:locale" content="de_DE"> 15 <meta property="og:site_name" content="Glymmer"> 16 <meta name="twitter:card" content="summary_large_image"> 17 <meta name="twitter:title" content="Glymmer â Community-Plattform für Coaches & Creator"> 18 <meta name="twitter:description" content="Baue deine eigene Community auf, monetarisiere Inhalte und manage alles an einem Ort. Live Video, Chats, Kurse & mehr. Jetzt kostenlos testen!"> 19 <meta name="twitter:image" content="https://glymmer.io/public/Glymmer_Logo_Dunkel.png"> 20 <title>Glymmer â Community-Plattform für Coaches & Creator</title> 21 <link rel="icon" type="image/png" href="./public/Favicon.png"> 22 <link rel="preconnect" href="https://fonts.googleapis.com"> 23 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 24 <link href="https://fonts.googleapis.com/css2?family=Cal+Sans:wght@400;500;600;700&display=swap" rel="stylesheet"> 25
25<script src="https://cdn.tailwindcss.com"></script>
25 26 <link rel="stylesheet" href="./styles.css"> 27 <style> 28 /* Modal Animation */ 29 .modal-overlay { 30 opacity: 0; 31 transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1); 32 } 33 34 .modal-overlay.show { 35 opacity: 1; 36 } 37 38 .modal-content { 39 opacity: 0; 40 transform: scale(0.9) translateY(20px); 41 transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.1s, transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; 42 } 43 44 .modal-overlay.show .modal-content { 45 opacity: 1; 46 transform: scale(1) translateY(0); 47 } 48 49 #close-modal { 50 opacity: 0; 51 transform: scale(0.8); 52 transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.2s, transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.2s; 53 } 54 55 .modal-overlay.show #close-modal { 56 opacity: 1; 57 transform: scale(1); 58 } 59 60 /* Banner Animation */ 61 @keyframes scrollBanner { 62 0% { 63 transform: translateX(0); 64 } 65 100% { 66 transform: translateX(-50%); 67 } 68 } 69 70 /* Wireframe Hover Effect */ 71 .wireframe-container:hover .wireframe-image { 72 transform: translateY(-10px); 73 } 74 75 /* App generieren Button ändert sich beim Hover über Wireframe */ 76 #app-wireframes-section:has(.wireframe-container:hover) #app-generate-button { 77 background-color: #7167F5 !important; 78 color: white !important; 79 border-color: #7167F5 !important; 80 box-shadow: 0 4px 20px rgba(113, 103, 245, 0.5) !important; 81 } 82 83 #app-wireframes-section:has(.wireframe-container:hover) #app-generate-button-arrow { 84 stroke: white !important; 85 } 86 87 </style> 88 <link rel="canonical" href="https://glymmer.io/"> 89 <style> 90 @font-face { 91 font-family: 'Vanguard CF'; 92 src: url('./fonts/Vanguard-CF-Bold.otf') format('opentype'); 93 font-weight: bold; 94 font-style: normal; 95 } 96 97 @font-face { 98 font-family: 'Suisse Intl'; 99 src: url('./fonts/suisse/SuisseIntl-Light.otf') format('opentype'); 100 font-weight: 300; 101 font-style: normal; 102 } 103 104 @font-face { 105 font-family: 'Suisse Intl'; 106 src: url('./fonts/suisse/SuisseIntl-Regular.otf') format('opentype'); 107 font-weight: 400; 108 font-style: normal; 109 } 110 111 @font-face { 112 font-family: 'Suisse Intl'; 113 src: url('./fonts/suisse/SuisseIntl-Medium.otf') format('opentype'); 114 font-weight: 500; 115 font-style: normal; 116 } 117 118 @font-face { 119 font-family: 'Suisse Intl'; 120 src: url('./fonts/suisse/SuisseIntl-SemiBold.otf') format('opentype'); 121 font-weight: 600; 122 font-style: normal; 123 } 124 125 @font-face { 126 font-family: 'Suisse Intl'; 127 src: url('./fonts/suisse/SuisseIntl-Bold.otf') format('opentype'); 128 font-weight: 700; 129 font-style: normal; 130 } 131 132 html { 133 scroll-behavior: smooth; 134 overflow-x: hidden; 135 } 136 137 body { 138 font-family: 'Suisse Intl', sans-serif; 139 -webkit-text-size-adjust: 100%; 140 background: #ffffff; 141 color: #1a1a1a; 142 overflow-x: hidden; 143 } 144 145 .headline-vanguard { 146 font-family: 'Vanguard CF', sans-serif; 147 } 148 149 .gradient-bg { 150 background: linear-gradient(135deg, rgba(113, 103, 245, 0.4) 0%, rgba(255, 252, 4, 0.4) 100%); 151 background-size: 200% 200%; 152 animation: gradientShift 8s ease infinite; 153 } 154 155 @keyframes gradientShift { 156 0% { 157 background-position: 0% 50%; 158 } 159 50% { 160 background-position: 100% 50%; 161 } 162 100% { 163 background-position: 0% 50%; 164 } 165 } 166 167 .feature-card { 168 transition: transform 0.3s ease, box-shadow 0.3s ease; 169 } 170 171 .feature-card:hover { 172 transform: translateY(-4px); 173 } 174 175 .smooth-scroll { 176 scroll-behavior: smooth; 177 } 178 179 /* Burger Menu Animation */ 180 #burger-menu.active #burger-line-top { 181 transform: translateY(6px) rotate(45deg); 182 transform-origin: 12px 6px; 183 } 184 185 #burger-menu.active #burger-line-middle { 186 opacity: 0; 187 } 188 189 #burger-menu.active #burger-line-bottom { 190 transform: translateY(-6px) rotate(-45deg); 191 transform-origin: 12px 18px; 192 } 193 194 /* Main Colors - Gelb und Lila */ 195 :root { 196 --primary-yellow: #FFFC04; 197 --primary-yellow-hover: #E6E304; 198 --primary-yellow-light: #FFFD80; 199 --primary-yellow-bg: #FFFE99; 200 201 --primary-purple: #7167F5; 202 --primary-purple-hover: #5F56E0; 203 --primary-purple-light: #9B93F8; 204 --primary-purple-bg: #E8E6FF; 205 } 206 207 /* Yellow Classes */ 208 .bg-primary { 209 background-color: var(--primary-yellow); 210 } 211 212 .bg-primary-hover:hover { 213 background-color: var(--primary-yellow-hover); 214 } 215 216 .text-primary { 217 color: var(--primary-yellow); 218 } 219 220 .border-primary { 221 border-color: var(--primary-yellow); 222 } 223 224 .bg-primary-light { 225 background-color: var(--primary-yellow-bg); 226 } 227 228 /* Purple Classes */ 229 .bg-secondary { 230 background-color: var(--primary-purple); 231 } 232 233 .bg-secondary-hover:hover { 234 background-color: var(--primary-purple-hover); 235 } 236 237 .text-secondary { 238 color: var(--primary-purple); 239 } 240 241 .border-secondary { 242 border-color: var(--primary-purple); 243 } 244 245 .bg-secondary-light { 246 background-color: var(--primary-purple-bg); 247 } 248 249 /* Sticky Wireframe Scroll Effect */ 250 .sticky-wireframe-container { 251 position: relative; 252 height: 100%; 253 } 254 255 .sticky-wireframe { 256 position: relative; 257 transition: transform 0.1s ease-out; 258 z-index: 10; 259 } 260 261 @media (max-width: 768px) { 262 .sticky-wireframe { 263 position: relative; 264 } 265 } 266 267 .use-cases-dropdown { 268 position: absolute; 269 top: 100%; 270 left: 0; 271 padding-top: 0.5rem; 272 background: white; 273 border-radius: 1.5rem; 274 padding: 1rem; 275 min-width: 220px; 276 opacity: 0; 277 visibility: hidden; 278 transform: translateY(-8px); 279 transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease; 280 box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1); 281 z-index: 1000; 282 } 283 284 .use-cases-arrow-trigger:hover ~ .use-cases-dropdown, 285 .use-cases-dropdown:hover { 286 opacity: 1; 287 visibility: visible; 288 transform: translateY(0); 289 } 290 291 .use-cases-arrow-trigger { 292 display: flex; 293 align-items: center; 294 padding: 4px 6px; 295 cursor: pointer; 296 border-radius: 6px; 297 transition: background 0.2s ease; 298 } 299 300 .use-cases-arrow-trigger:hover { 301 background: rgba(0, 0, 0, 0.05); 302 } 303 304 /* Wackeln für Button-Farbe, wenn Sektion sichtbar und 3s keine Interaktion */
305 @keyframes platform-wiggle { 306 0%, 100% { transform: translateX(0); } 307 15% { transform: translateX(-6px); } 308 30% { transform: translateX(6px); } 309 45% { transform: translateX(-4px); } 310 60% { transform: translateX(4px); } 311 75% { transform: translateX(-2px); } 312 } 313 #platform-control-button-farbe.platform-wiggle { 314 animation: platform-wiggle 0.6s ease-in-out; 315 } 316 317 /* FAQ Accordion: weiÃe Boxen, nur Frage sichtbar, Antwort smooth ausklappbar */ 318 .faq-accordion-item summary::-webkit-details-marker { display: none; } 319 .faq-accordion-item summary::marker { content: none; } 320 .faq-accordion-item[open] .faq-accordion-icon { transform: rotate(180deg); } 321 .faq-accordion-icon { transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1); } 322 .faq-accordion-answer-wrapper { 323 max-height: 0; 324 overflow: hidden; 325 transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1); 326 } 327 .faq-accordion-answer-inner { 328 display: block; 329 } 330 .faq-accordion-answer-inner .faq-accordion-answer { 331 opacity: 0; 332 transform-origin: top right; 333 transform: scale(0.96, 0) translateX(12px); 334 transition: opacity 0.35s ease-out 0.08s, transform 0.45s cubic-bezier(0.4, 0, 0.2, 1); 335 } 336 .faq-accordion-item[open] .faq-accordion-answer-inner .faq-accordion-answer { 337 opacity: 1; 338 transform: scale(1, 1) translateX(0); 339 } 340 .faq-accordion-list { 341 column-count: 1; 342 column-gap: 0.5rem; 343 } 344 @media (min-width: 640px) { 345 .faq-accordion-list { column-count: 2; } 346 } 347 @media (min-width: 1024px) { 348 .faq-accordion-list { column-count: 4; } 349 } 350 .faq-accordion-item { 351 break-inside: avoid; 352 margin-bottom: 0.5rem; 353 background: rgba(255, 255, 255, 0.55); 354 backdrop-filter: blur(12px); 355 -webkit-backdrop-filter: blur(12px); 356 box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06), 0 2px 8px rgba(0, 0, 0, 0.04); 357 } 358 .faq-accordion-answer { 359 border: none !important; 360 } 361 </style> 362
362<script type="application/ld+json"> 363 { 364 "@context": "https://schema.org", 365 "@graph": [ 366 { 367 "@type": "Organization", 368 "@id": "https://glymmer.io/#organization", 369 "name": "Glymmer", 370 "legalName": "teech Education GmbH", 371 "url": "https://glymmer.io", 372 "logo": "https://glymmer.io/public/Glymmer_Logo_Dunkel.png", 373 "email": "[email protected]", 374 "address": { 375 "@type": "PostalAddress", 376 "streetAddress": "SchlossgartenstraÃe 69", 377 "addressLocality": "Darmstadt", 378 "postalCode": "64289", 379 "addressCountry": "DE" 380 }, 381 "sameAs": [ 382 "https://www.linkedin.com/showcase/glymmer" 383 ] 384 }, 385 { 386 "@type": "SoftwareApplication", 387 "name": "Glymmer", 388 "applicationCategory": "BusinessApplication", 389 "operatingSystem": "Web", 390 "description": "Community-Plattform für Coaches und Creator. Monetarisiere deine Community mit Live Video, Chats, Kursen und Mitgliedschaften.", 391 "url": "https://glymmer.io", 392 "offers": { 393 "@type": "AggregateOffer", 394 "lowPrice": "0", 395 "highPrice": "249", 396 "priceCurrency": "EUR", 397 "offerCount": "3" 398 }, 399 "provider": { 400 "@id": "https://glymmer.io/#organization" 401 } 402 }, 403 { 404 "@type": "WebSite", 405 "@id": "https://glymmer.io/#website", 406 "name": "Glymmer", 407 "url": "https://glymmer.io", 408 "publisher": { 409 "@id": "https://glymmer.io/#organization" 410 }, 411 "inLanguage": "de-DE" 412 } 413 ] 414 } 415 </script>
415 416</head> 417<body class="min-h-screen bg-white text-black smooth-scroll"> 418 419 <!-- Header --> 420 <header id="main-header" class="fixed top-0 left-0 right-0 z-50 backdrop-blur-sm transition-all duration-300"> 421 <nav class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-2"> 422 <!-- Mobile: Logo oben in eigener Zeile --> 423 <div class="flex justify-center pt-2 pb-1 md:hidden"> 424 <a href="/" class="flex items-center"> 425 <img src="./public/Glymmer_Logo_Dunkel.png" alt="Glymmer" class="h-8 w-auto"> 426 </a> 427 </div> 428 <div class="flex items-center justify-between relative"> 429 <!-- Links: Burger Menu + Language Switch --> 430 <div class="flex items-center space-x-4"> 431 <div class="relative"> 432 <button id="burger-menu" class="relative p-2 transition" style="color: #2A2A2A;" aria-label="Menu"> 433 <div class="relative w-6 h-6"> 434 <svg id="burger-icon" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="#2A2A2A" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="absolute inset-0"> 435 <g id="burger-lines" style="transform-origin: 12px 12px; transition: transform 0.3s ease;"> 436 <line id="burger-line-top" x1="3" y1="6" x2="21" y2="6" style="transition: transform 0.3s ease, opacity 0.3s ease;"></line> 437 <line id="burger-line-middle" x1="3" y1="12" x2="21" y2="12" style="transition: opacity 0.2s ease;"></line> 438 <line id="burger-line-bottom" x1="3" y1="18" x2="21" y2="18" style="transition: transform 0.3s ease, opacity 0.3s ease;"></line> 439 </g> 440 </svg> 441 </div> 442 </button> 443 <!-- Desktop Dropdown Menu --> 444 <div id="burger-menu-dropdown" class="hidden md:block absolute top-full left-0 mt-2 bg-white rounded-3xl py-4 px-6 min-w-[200px] opacity-0 invisible transition-all duration-300 transform translate-y-2" style="box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);"> 445 <nav class="flex flex-col space-y-3"> 446 <a href="/features.html" id="nav-features" class="text-sm font-medium text-black/70 hover:text-black transition whitespace-nowrap flex items-center gap-2"> 447 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 448 <rect x="3" y="3" width="7" height="7"></rect> 449 <rect x="14" y="3" width="7" height="7"></rect> 450 <rect x="14" y="14" width="7" height="7"></rect> 451 <rect x="3" y="14" width="7" height="7"></rect> 452 </svg> 453 Features 454 </a> 455 <div class="use-cases-menu-item relative" style="display: flex; align-items: center;"> 456 <a href="/#use-cases" class="text-sm font-medium text-black/70 hover:text-black transition whitespace-nowrap flex items-center gap-1"> 457 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 458 <path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path> 459 <circle cx="9" cy="7" r="4"></circle> 460 <path d="M23 21v-2a4 4 0 0 0-3-3.87"></path> 461 <path d="M16 3.13a4 4 0 0 1 0 7.75"></path> 462 </svg> 463 Use Cases 464 </a> 465 <span class="use-cases-arrow-trigger"> 466 <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 467 <polyline points="6 9 12 15 18 9"></polyline> 468 </svg> 469 </span> 470 <div class="use-cases-dropdown">
471 <a href="/coaches.html" id="nav-uc-coaches" class="block text-sm font-medium text-black/70 hover:text-black transition py-2 flex items-center gap-2"> 472 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 473 <path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path> 474 <circle cx="9" cy="7" r="4"></circle> 475 <path d="M23 21v-2a4 4 0 0 0-3-3.87"></path> 476 <path d="M16 3.13a4 4 0 0 1 0 7.75"></path> 477 </svg> 478 Für Coaches 479 </a> 480 <a href="/creator.html" id="nav-uc-creators" class="block text-sm font-medium text-black/70 hover:text-black transition py-2 flex items-center gap-2"> 481 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 482 <path d="M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z"></path> 483 <line x1="7" y1="7" x2="7.01" y2="7"></line> 484 </svg> 485 Für Creator 486 </a> 487 <a href="/bootcamps.html" id="nav-uc-bootcamps" class="block text-sm font-medium text-black/70 hover:text-black transition py-2 flex items-center gap-2"> 488 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 489 <path d="M4 19.5A2.5 2.5 0 0 1 6.5 17H20"></path> 490 <path d="M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"></path> 491 <line x1="8" y1="7" x2="18" y2="7"></line> 492 <line x1="8" y1="11" x2="18" y2="11"></line> 493 <line x1="8" y1="15" x2="14" y2="15"></line> 494 </svg> 495 Für Bootcamps 496 </a> 497 <a href="/lernraum.html" id="nav-uc-lernraeume" class="block text-sm font-medium text-black/70 hover:text-black transition py-2 flex items-center gap-2"> 498 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 499 <path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"></path> 500 <path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"></path> 501 </svg> 502 Für Lernräume 503 </a> 504 </div> 505 </div> 506 <a href="/preise.html" id="nav-pricing" class="text-sm font-medium text-black/70 hover:text-black transition whitespace-nowrap flex items-center gap-2"> 507 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 508 <line x1="12" y1="1" x2="12" y2="23"></line> 509 <path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path> 510 </svg> 511 Preise 512 </a> 513 <a href="/updates.html" id="nav-updates" class="text-sm font-medium text-black/70 hover:text-black transition whitespace-nowrap flex items-center gap-2"> 514 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 515 <polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline> 516 </svg> 517 Updates 518 </a> 519 <a href="#" id="nav-faq" class="text-sm font-medium text-black/70 hover:text-black transition whitespace-nowrap flex items-center gap-2"> 520 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewB
520ox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 521 <circle cx="12" cy="12" r="10"></circle> 522 <path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path> 523 <line x1="12" y1="17" x2="12.01" y2="17"></line> 524 </svg> 525 FAQ 526 </a> 527 </nav> 528 </div> 529 </div> 530 <button id="language-switch" class="px-3 py-2 md:px-4 md:py-3 text-xs md:text-sm font-normal transition-all duration-300 border border-black/20 rounded-full hover:border-black/40 flex items-center justify-center gap-1.5 md:gap-2 shrink-0" style="transform: scale(1); transition: transform 0.15s ease; color: #2A2A2A;" data-lang="de"> 531 <svg xmlns="http://www.w3.org/2000/svg" class="w-3.5 h-3.5 md:w-4 md:h-4" viewBox="0 0 24 24" fill="none" stroke="#2A2A2A" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 532 <circle cx="12" cy="12" r="10"></circle> 533 <line x1="2" y1="12" x2="22" y2="12"></line> 534 <path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"></path> 535 </svg> 536 <span style="transition: opacity 0.2s ease;">EN</span> 537 </button> 538 </div> 539 540 <!-- Mitte: Logo (nur Desktop, auf Mobile in eigener Zeile oben) --> 541 <a href="/" class="hidden md:flex absolute left-1/2 transform -translate-x-1/2 items-center"> 542 <img src="./public/Glymmer_Logo_Dunkel.png" alt="Glymmer" class="h-8 w-auto"> 543 </a> 544 545 <!-- Rechts: Log In + Jetzt starten Buttons (immer nebeneinander, kompakt auf kleinen Screens) --> 546 <div class="flex items-center flex-nowrap gap-2 sm:gap-4 ml-auto shrink-0 min-w-0"> 547 <a href="https://app.glymmer.io/auth/login" id="nav-login" class="px-3 py-2 md:px-4 text-xs md:text-sm font-normal transition whitespace-nowrap" style="color: #2A2A2A;"> 548 Log In 549 </a> 550 <a href="/preise.html" id="hero-cta-start" class="inline-flex items-center justify-center gap-1.5 md:gap-2 px-3 py-2 md:px-6 md:py-3 text-xs md:text-sm font-medium bg-secondary text-white rounded-full hover:bg-secondary-hover transition group whitespace-nowrap" style="box-shadow: 0 4px 20px rgba(113, 103, 245, 0.5);"> 551 Jetzt starten 552 <svg class="transition-transform duration-300 group-hover:translate-x-1 shrink-0 w-4 h-4 md:w-[18px] md:h-[18px]" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"> 553 <path d="M5 12h14M12 5l7 7-7 7" stroke="white" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 554 </svg> 555 </a> 556 </div> 557 </div> 558 </nav> 559 </header> 560 <!-- Mobile Burger Menu: von links reinschieben, weiÃ, volle Höhe, ohne âJetzt startenâ --> 561 <div id="burger-menu-wrapper" class="fixed inset-0 z-[60] md:hidden"> 562 <div class="burger-menu-backdrop fixed inset-0 bg-black/20 opacity-0 pointer-events-none min-h-[100dvh]" id="burger-menu-backdrop" aria-hidden="true"></div> 563 <div id="burger-menu-overlay" class="burger-menu-panel fixed left-0 top-0 bottom-0 w-[min(220px,72vw)] max-w-[220px] bg-white shadow-2xl flex flex-col"> 564 <div class="burger-menu-inner p-6 pt-8 flex-1 flex flex-col min-h-0"> 565 <div class="flex justify-between items-center mb-6"> 566 <h2 id="mobile-menu-title" class="text-lg font-semibold text-black">Menü</h2> 567 <button id="burger-menu-close" class="p-2 text-black/70 hover:text-black transition rounded-lg hover:bg-black/5" aria-label="Menü schlieÃen"> 568 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 569 <line x1="18" y1="6" x2="6" y2="18"></line> 570 <line x1="6" y1="6" x2="18" y2="18"></line> 571 </svg> 572 </button> 573 </div> 574 <nav class="flex flex-col space-y-1"> 575 <a href="/features.html" id="nav-features-mobile" class="flex items-center gap-2 px-3 py-2.5 rounded-lg text-sm font-medium text-black/70 hover:text-black hover:bg-black/5 transition"> 576 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewB
576ox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0"><rect x="3" y="3" width="7" height="7"></rect><rect x="14" y="3" width="7" height="7"></rect><rect x="14" y="14" width="7" height="7"></rect><rect x="3" y="14" width="7" height="7"></rect></svg> 577 Features 578 </a> 579 <div class="space-y-1"> 580 <a href="/#use-cases" class="flex items-center gap-2 px-3 py-2.5 rounded-lg text-sm font-medium text-black/70 hover:text-black hover:bg-black/5 transition"> 581 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="9" cy="7" r="4"></circle><path d="M23 21v-2a4 4 0 0 0-3-3.87"></path><path d="M16 3.13a4 4 0 0 1 0 7.75"></path></svg> 582 Use Cases 583 <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="6 9 12 15 18 9"></polyline></svg> 584 </a> 585 <div class="ml-4 space-y-1"> 586 <a href="/coaches.html" id="nav-uc-coaches-mobile" class="flex items-center gap-2 px-3 py-2 rounded-lg text-sm font-medium text-black/70 hover:text-black hover:bg-black/5 transition"> 587 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="9" cy="7" r="4"></circle><path d="M23 21v-2a4 4 0 0 0-3-3.87"></path><path d="M16 3.13a4 4 0 0 1 0 7.75"></path></svg> 588 Für Coaches 589 </a> 590 <a href="/creator.html" id="nav-uc-creators-mobile" class="flex items-center gap-2 px-3 py-2 rounded-lg text-sm font-medium text-black/70 hover:text-black hover:bg-black/5 transition"> 591 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z"></path><line x1="7" y1="7" x2="7.01" y2="7"></line></svg> 592 Für Creator 593 </a> 594 <a href="/bootcamps.html" id="nav-uc-bootcamps-mobile" class="flex items-center gap-2 px-3 py-2 rounded-lg text-sm font-medium text-black/70 hover:text-black hover:bg-black/5 transition"> 595 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 19.5A2.5 2.5 0 0 1 6.5 17H20"></path><path d="M6.5 2H20v20H6.5A2.5 2 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"></path><line x1="8" y1="7" x2="18" y2="7"></line><line x1="8" y1="11" x2="18" y2="11"></line><line x1="8" y1="15" x2="14" y2="15"></line></svg> 596 Für Bootcamps 597 </a> 598 <a href="/lernraum.html" id="nav-uc-lernraeume-mobile" class="flex items-center gap-2 px-3 py-2 rounded-lg text-sm font-medium text-black/70 hover:text-black hover:bg-black/5 transition"> 599 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"></path><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"></path></svg> 600 Für Lernräume 601 </a> 602 </div> 603 </div> 604 <a href="/preise.html" id="nav-pricing-mobile" class="flex items-center gap-2 px-3 py-2.5 rounded-lg text-sm font-medium text-black/70 hover:text-black hover:bg-black/5 transition"> 605 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewB
605ox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0"><line x1="12" y1="1" x2="12" y2="23"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg> 606 Preise 607 </a> 608 <a href="/updates.html" id="nav-updates-mobile" class="flex items-center gap-2 px-3 py-2.5 rounded-lg text-sm font-medium text-black/70 hover:text-black hover:bg-black/5 transition"> 609 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline></svg> 610 Updates 611 </a> 612 <a href="#" id="nav-faq-mobile" class="flex items-center gap-2 px-3 py-2.5 rounded-lg text-sm font-medium text-black/70 hover:text-black hover:bg-black/5 transition"> 613 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><line x1="12" y1="17" x2="12.01" y2="17"></line></svg> 614 FAQ 615 </a> 616 </nav> 617 </div> 618 </div> 619 </div> 620 621 <!-- Hero Section --> 622 <section id="hero" class="pt-32 pb-20 px-6 lg:px-8 gradient-bg"> 623 <div class="max-w-7xl mx-auto relative"> 624 <div class="text-center mb-16 fade-in"> 625 <h1 id="hero-title" class="text-4xl md:text-5xl lg:text-6xl font-medium mb-4 leading-normal pb-2" style="background: linear-gradient(to right, #2A2A2A, rgba(42, 42, 42, 0.9), rgba(42, 42, 42, 0.3)); -webkit-background-clip: text; background-clip: text; color: transparent; font-family: 'Cal Sans', sans-serif;"> 626 Deine Community-Plattform.<br />Deine Regeln. 627 </h1> 628 <p id="hero-subtitle" class="text-base md:text-lg text-black/50 max-w-3xl mx-auto mb-6 leading-relaxed delay-200 font-normal"> 629 Monetarisiere deine Leidenschaft, baue eine lebendige Community auf und verkaufe Content â alles in einer Plattform. 630 </p> 631 <div class="flex flex-col sm:flex-row gap-4 justify-center delay-300"> 632 <a href="/preise.html" id="hero-cta-start-hero" class="inline-flex items-center justify-center gap-2 px-6 py-3 text-sm font-medium bg-secondary text-white rounded-full hover:bg-secondary-hover transition group text-center" style="box-shadow: 0 4px 20px rgba(113, 103, 245, 0.5);"> 633 Jetzt starten 634 <svg class="transition-transform duration-300 group-hover:translate-x-1 shrink-0 w-[18px] h-[18px]" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"> 635 <path d="M5 12h14M12 5l7 7-7 7" stroke="white" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 636 </svg> 637 </a> 638 <a href="#" data-termin-modal="open" id="hero-cta-sales" class="px-6 py-3 text-sm font-medium bg-white rounded-full hover:bg-gray-50 transition" style="color: #2A2A2A; box-shadow: 0 4px 20px rgba(255, 255, 255, 0.5);"> 639 Termin vereinbaren 640 </a> 641 </div> 642 </div> 643 644 <!-- Hero Mockup --> 645 <div id="hero-wireframe-container" class="max-w-md mx-auto delay-400 -mt-16 relative"> 646 <div class="animate-on-scroll"> 647 <img id="hero-wireframe" src="./public/Hero_Wireframe.png" alt="Hero Wireframe" class="w-full h-auto rounded-3xl" style="mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 100%); -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 100%);"> 648 </div> 649 650 <!-- Umsatzanzeige Box Right --> 651 <div id="umsatz-box" class="floating-user-box absolute top-[60px] -right-80 w-80 h-[180px] rounded-2xl p-4 flex flex-col z-10" style="background: rgba(0, 0, 0, 0.7); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);"> 652 <div class="flex justify-between items-start mb-2" style="overflow: hidden;"> 653 <div class="font-medium text-white text-sm">Umsatzanzeige</div> 654 <div class="text-right"> 655 <div class="font-light text-xs text-white/70 mb-1">Gesamtumsatz</div> 656 <div id="umsatz-number" class="font-semibold text-white text-lg">0â¬</div> 657 </div> 658 </div>
659 <div class="flex-1 relative min-h-[60px] mb-2"> 660 <svg width="100%" height="60" viewBox="0 0 280 60" preserveAspectRatio="none" style="overflow: visible;"> 661 <!-- Grid Lines --> 662 <line x1="0" y1="50" x2="280" y2="50" stroke="rgba(255, 255, 255, 0.2)" stroke-width="1"/> 663 <line x1="0" y1="30" x2="280" y2="30" stroke="rgba(255, 255, 255, 0.2)" stroke-width="1"/> 664 <line x1="0" y1="10" x2="280" y2="10" stroke="rgba(255, 255, 255, 0.2)" stroke-width="1"/> 665 <!-- Silber-Abonnenten Linie --> 666 <polyline id="silber-line" points="0,50 40,47 80,43 120,38 160,33 200,28 240,24 280,20" 667 fill="none" 668 stroke="#7167F5" 669 stroke-width="2" 670 stroke-linecap="round" 671 stroke-linejoin="round" 672 style="stroke-dasharray: 500; stroke-dashoffset: 500;"/> 673 <!-- Gold-Abonnenten Linie --> 674 <polyline id="gold-line" points="0,50 40,45 80,38 120,28 160,18 200,10 240,5 280,2" 675 fill="none" 676 stroke="#B8B0FF" 677 stroke-width="2" 678 stroke-linecap="round" 679 stroke-linejoin="round" 680 style="stroke-dasharray: 500; stroke-dashoffset: 500;"/> 681 </svg> 682 </div> 683 <div class="flex items-center gap-4"> 684 <div class="flex items-center gap-1.5"> 685 <div class="w-3 h-0.5 bg-secondary"></div> 686 <div class="font-light text-xs text-white/70">Silber-Abonnenten</div> 687 </div> 688 <div class="flex items-center gap-1.5"> 689 <div class="w-3 h-0.5" style="background-color: #B8B0FF;"></div> 690 <div class="font-light text-xs text-white/70">Gold-Abonnenten</div> 691 </div> 692 </div> 693 </div> 694 695 <!-- Kalender Box Right --> 696 <div id="kalender-box" class="floating-user-box absolute top-[280px] -right-80 w-80 h-[260px] rounded-2xl p-4 flex flex-col z-10" style="background: rgba(0, 0, 0, 0.7); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);"> 697 <div class="flex justify-between items-center mb-3" style="overflow: hidden;"> 698 <div class="font-medium text-white text-sm">ðï¸ Kalender</div> 699 <button class="p-1 hover:bg-white/10 rounded-full transition" aria-label="Menü"> 700 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="text-white/70"> 701 <circle cx="12" cy="12" r="1"></circle> 702 <circle cx="19" cy="12" r="1"></circle> 703 <circle cx="5" cy="12" r="1"></circle> 704 </svg> 705 </button> 706 </div> 707 <div class="flex-1 flex flex-col gap-3 relative"> 708 <!-- Live Session 1 --> 709 <div class="flex gap-3 p-2 rounded-lg hover:bg-white/10 transition"> 710 <div class="flex flex-col items-center justify-center w-16 h-16 flex-shrink-0 bg-white/10 rounded-lg p-2"> 711 <div class="font-semibold text-white text-xs leading-tight">15</div> 712 <div class="font-light text-white/60 text-[10px] uppercase">Jan</div> 713 <div class="font-light text-white/50 text-[10px] mt-1">18:00</div> 714 </div> 715 <div class="flex-1 min-w-0"> 716 <div class="font-medium text-white text-xs mb-1">Community Training</div> 717 <div class="font-light text-xs text-white/70 mb-1">Live Session für alle Mitglieder...</div> 718 <div class="flex items-center -space-x-2 mt-2"> 719 <img src="./public/participant_1.jpg" alt="Participant 1" class="w-6 h-6 rounded-full object-cover border-2" style="border-color: #43423E;"> 720 <img src="./public/participant_2.jpg" alt="Participant 2" class="w-6 h-6 rounded-full object-cover border-2" style="border-color: #43423E;"> 721 <img src="./public/participant_3.jpg" alt="Participant 3" class="w-6 h-6 rounded-full object-cover border-2" style="border-color: #43423E;"> 722 </div> 723 </div> 724 </div> 725 <!-- Live Session 2 --> 726 <div class="flex gap-3 p-2 rounded-lg hover:bg-white/10 transition" style="mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 40%, rgba(0,0,0,0.7) 60%, rgba(0,0,0,0.3) 80%, rgba(0,0,0,0) 100%); -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 40%, rgba(0,0,0,0.7) 60%, rgba(0,0,0,0.3) 80%, rgba(0,0,0,0) 100%);"> 727 <div class="flex flex-col items-center justify-center w-16 h-16 flex-shrink-0 bg-white/10 rounded-lg p-2"> 728 <div class="font-semibold text-white text-xs leading-tight">28</div> 729 <div class="font-light text-white/60 text-[10px] uppercase">Jan</div> 730 <div class="font-light text-white/50 text-[10px] mt-1">10:00</div> 731 </div> 732 <div class="flex-1 min-w-0"> 733 <div class="font-medium text-white text-xs mb-1">Q&A Session</div> 734 <div class="font-light text-xs text-white/70 mb-1">Fragen & Antworten mit der Community...</div> 735 <div class="flex items-center -space-x-2 mt-2"> 736 <img src="./public/participant_4.jpg" alt="Participant 4" class="w-6 h-6 rounded-full object-cover border-2" style="border-color: #43423E;"> 737 <img src="./public/participant_5.jpg" alt="Participant 5" class="w-6 h-6 rounded-full object-cover border-2" style="border-color: #43423E;"> 738 <img src="./public/participant_6.jpg" alt="Participant 6" class="w-6 h-6 rounded-full object-cover border-2" style="border-color: #43423E;"> 739 </div> 740 </div> 741 </div> 742 </div> 743 </div> 744 745 <!-- Floating User Box Right --> 746 <div id="floating-box-right" class="floating-user-box absolute top-[550px] -right-28 w-72 rounded-2xl p-3 flex items-center gap-3 z-10" style="background: rgba(255, 255, 255, 0.85); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: 0 4px 20px rgba(255, 255, 255, 0.5); overflow: visible;"> 747 <img src="./public/User_1.jpg" alt="Isabel Kohr" class="w-14 h-14 roun
747ded-full object-cover flex-shrink-0"> 748 <div class="flex-1 min-w-0"> 749 <div class="font-medium text-black text-sm">Isabel Kohr</div> 750 <div class="font-light text-xs text-black/70 mt-0.5">Endlich wieder eine live Session ð</div> 751 </div> 752 </div> 753 754 <!-- Floating User Box Left --> 755 <div id="floating-box-left" class="floating-user-box absolute top-[170px] -left-28 w-auto rounded-2xl p-3 flex items-center gap-3 z-10" style="background: rgba(255, 255, 255, 0.85); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: 0 4px 20px rgba(255, 255, 255, 0.5); overflow: visible;"> 756 <img src="./public/User_2.jpg" alt="Leni Welsch" class="w-14 h-14 rounded-full object-cover flex-shrink-0"> 757 <div class="flex-shrink-0"> 758 <div class="font-medium text-black text-sm whitespace-nowrap">Leni Welsch</div> 759 <div class="font-light text-xs text-black/70 mt-0.5 whitespace-nowrap">ððð</div> 760 </div> 761 </div> 762 763 <!-- Mediathek Box Left --> 764 <div id="mediathek-box" class="floating-user-box absolute top-[290px] -left-80 w-80 h-[360px] rounded-2xl p-4 flex flex-col z-10" style="background: rgba(0, 0, 0, 0.7); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);"> 765 <div class="flex justify-between items-center mb-3" style="overflow: hidden;"> 766 <div class="font-medium text-white text-sm">ð¥ Mediathek</div> 767 <button class="p-1 hover:bg-white/10 rounded-full transition" aria-label="Menü"> 768 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="text-white/70"> 769 <circle cx="12" cy="12" r="1"></circle> 770 <circle cx="19" cy="12" r="1"></circle> 771 <circle cx="5" cy="12" r="1"></circle> 772 </svg> 773 </button> 774 </div> 775 <div class="flex-1 flex flex-col gap-3 relative"> 776 <!-- Video 1 --> 777 <div class="flex gap-3"> 778 <div class="relative w-20 h-20 flex-shrink-0"> 779 <img src="./public/Thumbnail_1.jpg" alt="Video 1" class="w-20 h-20 rounded-lg object-cover"> 780 <div class="absolute inset-0 flex items-center justify-center"> 781 <div class="w-8 h-8 bg-white/90 rounded-full flex items-center justify-center shadow-lg"> 782 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" class="text-black ml-0.5"> 783 <path d="M8 5v14l11-7z"/> 784 </svg> 785 </div> 786 </div> 787 </div> 788 <div class="flex-1 min-w-0"> 789 <div class="font-semibold text-white text-xs mb-1">Intensives Krafttraining</div> 790 <div class="font-light text-xs text-white/70 mb-1">Perfekt für den Muskelaufbau und mehr Kraft...</div> 791 <div class="font-light text-xs text-white/50">12:34</div> 792 </div> 793 </div> 794 <!-- Video 2 --> 795 <div class="flex gap-3"> 796 <div class="relative w-20 h-20 flex-shrink-0"> 797 <img src="./public/Thumbnail_2.jpg" alt="Video 2" class="w-20 h-20 rounded-lg object-cover"> 798 <div class="absolute inset-0 flex items-center justify-center"> 799 <div class="w-8 h-8 bg-white/90 rounded-full flex items-center justify-center shadow-lg"> 800 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" class="text-black ml-0.5"> 801 <path d="M8 5v14l11-7z"/> 802 </svg> 803 </div> 804 </div> 805 </div> 806 <div class="flex-1 min-w-0"> 807 <div class="font-semibold text-white text-xs mb-1">Cardio-Workout für Anfänger</div> 808 <div class="font-light text-xs text-white/70 mb-1">Sanftes Training für deine Ausdauer...</div> 809 <div class="font-light text-xs text-white/50">08:15</div> 810 </div> 811 </div> 812 <!-- Video 3 --> 813 <div class="flex gap-3" style="mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 40%, rgba(0,0,0,0.7) 60%, rgba(0,0,0,0.3) 80%, rgba(0,0,0,0) 100%); -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 40%, rgba(0,0,0,0.7) 60%, rgba(0,0,0,0.3) 80%, rgba(0,0,0,0) 100%);"> 814 <div class="relative w-20 h-20 flex-shrink-0"> 815 <img src="./public/Thumbnail_3.jpg" alt="Video 3" class="w-20 h-20 rounded-lg object-cover"> 816 <div class="absolute inset-0 flex items-center justify-center"> 817 <div class="w-8 h-8 bg-white/90 rounded-full flex items-center justify-center shadow-lg"> 818 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewB
818ox="0 0 24 24" fill="currentColor" class="text-black ml-0.5"> 819 <path d="M8 5v14l11-7z"/> 820 </svg> 821 </div> 822 </div> 823 </div> 824 <div class="flex-1 min-w-0"> 825 <div class="font-semibold text-white text-xs mb-1">Stretching & Entspannung</div> 826 <div class="font-light text-xs text-white/70 mb-1">Perfekte Balance zwischen Körper und Geist...</div> 827 <div class="font-light text-xs text-white/50">25:42</div> 828 </div> 829 </div> 830 </div> 831 </div> 832 </div> 833 </div> 834 </section> 835 836 <!-- Features Section --> 837 <section id="features" class="py-20 px-6 lg:px-8 bg-white"> 838 <div class="max-w-7xl mx-auto"> 839 <div class="text-center mb-16 animate-on-scroll pt-12"> 840 <h2 id="features-title" class="text-4xl md:text-5xl lg:text-6xl font-medium mb-4 leading-normal pb-2" style="background: linear-gradient(to right, #2A2A2A, rgba(42, 42, 42, 0.9), rgba(42, 42, 42, 0.3)); -webkit-background-clip: text; background-clip: text; color: transparent; font-family: 'Cal Sans', sans-serif;"> 841 Community-Management<br />mit Glymmer 842 </h2> 843 <p id="features-subtitle" class="text-base md:text-lg text-black/50 max-w-3xl mx-auto mb-6 leading-relaxed font-normal"> 844 Personalisiere Glymmer so, dass die Plattform perfekt auf die Bedürfnisse von Dir und Deiner Community abgestimmt ist. 845 </p> 846 </div> 847 848 <div class="flex flex-col mb-40"> 849 <div class="grid grid-cols-1 md:grid-cols-12 gap-6 items-start"> 850 <div class="md:col-span-12 lg:col-span-8 feature-card rounded-3xl animate-on-scroll delay-100 transition-all overflow-hidden" style="background: linear-gradient(135deg, #6B63D4 0%, #6B63D4 50%, #D4CC00 100%); box-shadow: 0 10px 40px rgba(107, 99, 212, 0.4), 0 10px 40px rgba(212, 204, 0, 0.3); padding: 3rem 3rem 0 3rem;"> 851 <h3 id="feature-live-video-title" class="text-3xl font-medium mb-2 text-white" style="font-family: 'Suisse Intl', sans-serif;">Live Video & Workshops</h3> 852 <p id="feature-live-video-subtitle" class="text-white/90 mb-4" style="font-family: 'Suisse Intl', sans-serif;">Führe Webinare, Bootcamps und virtuelle Treffen mit hochwertigen Video-Tools durch.</p> 853 <!-- Videocall Visualisierung --> 854 <div class="video-call-visualization mt-4 -mb-0"> 855 <div class="relative bg-black/20 rounded-t-xl p-3" style="aspect-ratio: 16/9; border-radius: 2rem 2rem 0 0;"> 856 <!-- Haupt-Videofenster --> 857 <div class="absolute top-2 left-2 right-2 bottom-0 bg-gradient-to-br from-white/10 to-white/5 flex items-center justify-center overflow-hidden" style="border-radius: 2rem 2rem 0 0;"> 858 <video autoplay loop muted playsinline class="w-full h-full object-cover" style="border-radius: 2rem 2rem 0 0;"> 859 <source src="./public/Videos/Videocall_1.mp4" type="video/mp4"> 860 </video> 861 <!-- Viewers Count Pill --> 862 <div class="absolute top-4 left-4 flex items-center gap-2 px-3 py-1.5 rounded-full" style="background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(8px);"> 863 <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 864 <path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"></path> 865 <circle cx="12" cy="12" r="3"></circle> 866 </svg> 867 <span id="viewers-count" class="text-white text-sm font-medium">214</span> 868 </div> 869 <!-- Video Controls --> 870 <div class="absolute bottom-4 left-1/2 transform -translate-x-1/2 flex items-center gap-3"> 871 <!-- Kamera --> 872 <button class="relative w-10 h-10 rounded-full flex items-center justify-center group" style="background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(8px);"> 873 <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 874 <path d="M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z"></path> 875 <circle cx="12" cy="13" r="4"></circle> 876 </svg>
877 <span class="absolute bottom-full left-1/2 transform -translate-x-1/2 mb-2 px-2 py-1 text-xs text-white rounded whitespace-nowrap opacity-0 invisible group-hover:opacity-100 group-hover:visible transition-all duration-200" style="background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(8px);">Kamera</span> 878 </button> 879 <!-- Mikrofon --> 880 <button class="relative w-10 h-10 rounded-full flex items-center justify-center group" style="background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(8px);"> 881 <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 882 <path d="M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z"></path> 883 <path d="M19 10v2a7 7 0 0 1-14 0v-2"></path> 884 <line x1="12" y1="19" x2="12" y2="23"></line> 885 <line x1="8" y1="23" x2="16" y2="23"></line> 886 </svg> 887 <span class="absolute bottom-full left-1/2 transform -translate-x-1/2 mb-2 px-2 py-1 text-xs text-white rounded whitespace-nowrap opacity-0 invisible group-hover:opacity-100 group-hover:visible transition-all duration-200" style="background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(8px);">Mikrofon</span> 888 </button> 889 <!-- Tafel --> 890 <button class="relative w-10 h-10 rounded-full flex items-center justify-center group" style="background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(8px);"> 891 <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 892 <rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect> 893 <line x1="9" y1="3" x2="9" y2="21"></line> 894 <line x1="3" y1="9" x2="21" y2="9"></line> 895 </svg> 896 <span class="absolute bottom-full left-1/2 transform -translate-x-1/2 mb-2 px-2 py-1 text-xs text-white rounded whitespace-nowrap opacity-0 invisible group-hover:opacity-100 group-hover:visible transition-all duration-200" style="background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(8px);">Medien</span> 897 </button> 898 <!-- Büroklammer --> 899 <button class="relative w-10 h-10 rounded-full flex items-center justify-center group" style="background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(8px);"> 900 <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 901 <path d="M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"></path> 902 </svg> 903 <span class="absolute bottom-full left-1/2 transform -translate-x-1/2 mb-2 px-2 py-1 text-xs text-white rounded whitespace-nowrap opacity-0 invisible group-hover:opacity-100 group-hover:visible transition-all duration-200" style="background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(8px);">Anhänge</span> 904 </button> 905 <!-- Menü (drei Punkte senkrecht) --> 906 <button class="relative w-10 h-10 rounded-full flex items-center justify-center group" style="background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(8px);"> 907 <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 908 <circle cx="12" cy="5" r="1"></circle> 909 <circle cx="12" cy="12" r="1"></circle> 910 <circle cx="12" cy="19" r="1"></circle> 911 </svg> 912 <span class="absolute bottom-full left-1/2 transform -translate-x-1/2 mb-2 px-2 py-1 text-xs text-white rounded whitespace-nowrap opacity-0 invisible group-hover:opacity-100 group-hover:visible transition-all duration-200" style="background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(8px);">Mehr</span> 913 </button> 914 </div> 915 </div> 916 <!-- Kleine Videofenster (Teilnehmer) -->
917 <div class="absolute top-8 right-8 w-32 h-24 overflow-hidden" style="border-radius: 0.75rem; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);"> 918 <video autoplay loop muted playsinline class="w-full h-full object-cover" style="border-radius: 0.75rem;"> 919 <source src="./public/Videos/Videocall_2.mp4" type="video/mp4"> 920 </video> 921 </div> 922 <div class="absolute bottom-8 right-8 w-32 h-24 overflow-hidden" style="border-radius: 0.75rem; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);"> 923 <video autoplay loop muted playsinline class="w-full h-full object-cover" style="border-radius: 0.75rem;"> 924 <source src="./public/Videos/Videocall_3.mp4" type="video/mp4"> 925 </video> 926 </div> 927 </div> 928 </div> 929 </div> 930 <div class="md:col-span-6 lg:col-span-4 feature-card p-12 rounded-3xl animate-on-scroll delay-200 transition-all" style="background: linear-gradient(45deg, #6B63D4 0%, #6B63D4 55%, #D4CC00 100%); box-shadow: 0 10px 40px rgba(107, 99, 212, 0.4), 0 10px 40px rgba(212, 204, 0, 0.3);"> 931 <!-- Chat Mockup --> 932 <div class="chat-mockup mb-4 bg-black/20 flex flex-col" style="height: 500px; margin-top: -3rem; border-radius: 0 0 1.5rem 1.5rem;"> 933 <div id="chat-messages-container" class="flex-1 p-3 space-y-3 overflow-y-auto" style="max-height: calc(500px - 80px);"> 934 <!-- Nachricht 1 - Leni (links) --> 935 <div class="flex items-start gap-2 chat-message-1 opacity-0"> 936 <img src="./public/User_2.jpg" alt="Leni Welsch" class="w-8 h-8 rounded-full object-cover flex-shrink-0"> 937 <div class="flex-1"> 938 <div class="text-xs text-white/70 mb-1">Leni Welsch</div> 939 <div id="chat-msg-1" class="bg-white/20 rounded-lg px-3 py-2 text-sm text-white">Hey, wie war das Webinar? ð</div> 940 </div> 941 </div> 942 <!-- Nachricht 2 - Isabel (rechts) --> 943 <div class="flex items-start gap-2 chat-message-2 opacity-0 flex-row-reverse"> 944 <img src="./public/User_1.jpg" alt="Isabel Kohr" class="w-8 h-8 rounded-full object-cover flex-shrink-0"> 945 <div class="flex-1"> 946 <div class="text-xs text-white/70 mb-1 text-right">Isabel Kohr</div> 947 <div id="chat-msg-2" class="bg-white/20 rounded-lg px-3 py-2 text-sm text-white">Super interessant! ð</div> 948 </div> 949 </div> 950 <!-- Nachricht 3 - Leni (links) --> 951 <div class="flex items-start gap-2 chat-message-3 opacity-0"> 952 <img src="./public/User_2.jpg" alt="Leni Welsch" class="w-8 h-8 rounded-full object-cover flex-shrink-0"> 953 <div class="flex-1"> 954 <div class="text-xs text-white/70 mb-1">Leni Welsch</div> 955 <div id="chat-msg-3" class="bg-white/20 rounded-lg px-3 py-2 text-sm text-white">Können wir das nochmal machen?</div> 956 </div> 957 </div> 958 <!-- Nachricht 4 - Isabel (rechts) --> 959 <div class="flex items-start gap-2 chat-message-4 opacity-0 flex-row-reverse"> 960 <img src="./public/User_1.jpg" alt="Isabel Kohr" class="w-8 h-8 rounded-full object-cover flex-shrink-0"> 961 <div class="flex-1"> 962 <div class="text-xs text-white/70 mb-1 text-right">Isabel Kohr</div> 963 <div id="chat-msg-4" class="bg-white/20 rounded-lg px-3 py-2 text-sm text-white">Ja, definitiv! ð</div> 964 </div> 965 </div> 966 <!-- Nachricht 5 - Leni (links) --> 967 <div class="flex items-start gap-2 chat-message-5 opacity-0"> 968 <img src="./public/User_2.jpg" alt="Leni Welsch" class="w-8 h-8 rounded-full object-cover flex-shrink-0"> 969 <div class="flex-1"> 970 <div class="text-xs text-white/70 mb-1">Leni Welsch</div> 971 <div id="chat-msg-5" class="bg-white/20 rounded-lg px-3 py-2 text-sm text-white">Perfekt, dann bis nächste Woche!</div> 972 </div> 973 </div> 974 </div> 975 <!-- Chat Eingabefeld --> 976 <div class="border-t border-white/20 p-3"> 977 <div class="flex items-center gap-2"> 978 <button class="bg-white/10 hover:bg-white/20 rounded-lg p-2 transition-colors relative group" aria-label="Datei anheften"> 979 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 980 <line x1="12" y1="5" x2="12" y2="19"></line> 981 <line x1="5" y1="12" x2="19" y2="12"></line> 982 </svg>
983 <span id="chat-attach-label" class="absolute bottom-full left-1/2 transform -translate-x-1/2 mb-2 px-2 py-1 text-xs text-white bg-black/80 rounded whitespace-nowrap opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none"> 984 Datei anheften 985 </span> 986 </button> 987 <input id="chat-input" type="text" placeholder="Nachricht schreiben..." class="flex-1 bg-white/10 border-0 rounded-lg px-4 py-2 text-sm text-white placeholder-white/50 focus:outline-none" style="font-family: 'Suisse Intl', sans-serif;"> 988 <button id="chat-send-button" class="bg-white/20 rounded-lg p-2 transition-all disabled:opacity-50 disabled:cursor-not-allowed" disabled> 989 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 990 <line x1="22" y1="2" x2="11" y2="13"></line> 991 <polygon points="22 2 15 22 11 13 2 9 22 2"></polygon> 992 </svg> 993 </button> 994 </div> 995 </div> 996 </div> 997 <h3 id="feature-chat-title" class="text-3xl font-medium mb-2 text-white" style="font-family: 'Suisse Intl', sans-serif;">Chat & Channels</h3> 998 <p id="feature-chat-subtitle" class="text-white/90 mb-4" style="font-family: 'Suisse Intl', sans-serif;">Einfache Kommunikation in privaten und öffentlichen Gruppen.</p> 999 </div> 1000 <div class="hidden lg:block lg:col-span-2"></div> 1001 <div class="md:col-span-6 lg:col-span-6 lg:-mt-24 feature-card p-12 rounded-3xl animate-on-scroll delay-300 transition-all" style="background: linear-gradient(90deg, #6B63D4 0%, #6B63D4 50%, #D4CC00 100%); box-shadow: 0 10px 40px rgba(107, 99, 212, 0.4), 0 10px 40px rgba(212, 204, 0, 0.3);"> 1002 <h3 id="feature-mediathek-title" class="text-3xl font-medium mb-2 text-white" style="font-family: 'Suisse Intl', sans-serif;">Mediathek & Dateiablage</h3> 1003 <p id="feature-mediathek-subtitle" class="text-white/90 mb-4" style="font-family: 'Suisse Intl', sans-serif;">Zentraler Speicherplatz für Videos, Dokumente und Kursmaterialien.</p> 1004 <!-- Dateiablage Mockup --> 1005 <div class="file-storage-mockup mt-4 bg-black/20 rounded-xl p-4 relative" style="min-height: 300px;"> 1006 <div class="flex flex-col relative"> 1007 <!-- File 1: Trainingsplan --> 1008 <div class="flex items-start gap-3 p-3 rounded-lg hover:bg-white/5 transition border-b" style="border-color: rgba(255, 255, 255, 0.1);"> 1009 <div class="flex items-center justify-center w-6 h-6 rounded-full text-white text-sm font-medium flex-shrink-0" style="background: rgba(255, 255, 255, 0.2); font-family: 'Suisse Intl', sans-serif;">1</div> 1010 <img src="./public/Files/File_1.png" alt="Trainingsplan" class="w-16 h-16 rounded" style="flex-shrink: 0; object-fit: contain; background: rgba(255, 255, 255, 0.05);"> 1011 <div class="flex-1 min-w-0"> 1012 <h4 id="file-1-title" class="text-sm font-medium text-white mb-1" style="font-family: 'Suisse Intl', sans-serif;">Trainingsplan</h4> 1013 <p id="file-1-desc" class="text-xs text-white/70 leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;">Strukturierter 8-Wochen-Plan für optimales Muskelwachstum und Kraftaufbau.</p> 1014 </div> 1015 </div> 1016 1017 <!-- File 2: Trainingsstatistiken --> 1018 <div class="flex items-start gap-3 p-3 rounded-lg hover:bg-white/5 transition border-b" style="border-color: rgba(255, 255, 255, 0.1);"> 1019 <div class="flex items-center justify-center w-6 h-6 rounded-full text-white text-sm font-medium flex-shrink-0" style="background: rgba(255, 255, 255, 0.2); font-family: 'Suisse Intl', sans-serif;">2</div> 1020 <img src="./public/Files/File_2.png" alt="Trainingsstatistiken" class="w-16 h-16 rounded" style="flex-shrink: 0; object-fit: contain; background: rgba(255, 255, 255, 0.05);"> 1021 <div class="flex-1 min-w-0"> 1022 <h4 id="file-2-title" class="text-sm font-medium text-white mb-1" style="font-family: 'Suisse Intl', sans-serif;">Trainingsstatistiken</h4> 1023 <p id="file-2-desc" class="text-xs text-white/70 leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;">Detaillierte Auswertung deiner Fortschritte und Leistungsdaten.</p> 1024 </div> 1025 </div> 1026 1027 <!-- File 3: Bizeps Trainingsvideo (wird animiert eingefügt) --> 1028 <div id="file-3-container" class="flex items-start gap-3 p-3 rounded-lg hover:bg-white/5 transition opacity-0" style="transform: translateY(-20px);"> 1029 <div id="file-3-number" class="flex items-center justify-center w-6 h-6 rounded-full text-white text-sm font-medium flex-shrink-0 opacity-0" style="background: rgba(255, 255, 255, 0.2); font-family: 'Suisse Intl', sans-serif;">3</div> 1030 <img id="file-3-image" src="./public/Files/File_3.png" alt="Bizeps Trainingsvideo" class="w-16 h-16 rounded" style="flex-shrink: 0; opacity: 0; object-fit: contain; background: rgba(255, 255, 255, 0.05);"> 1031 <div class="flex-1 min-w-0" style="min-height: 60px;"> 1032 <h4 id="file-3-title" class="text-sm font-medium text-white mb-1" style="font-family: 'Suisse Intl', sans-serif; min-height: 20px;"></h4> 1033 <p id="file-3-description" class="text-xs text-white/70 leading-relaxed" style="font-family: 'Suisse Intl', sans-serif; min-height: 36px;"></p> 1034 </div> 1035 </div> 1036 1037 <!-- Animierter Cursor mit File 3 --> 1038 <div id="cursor-with-file-3" class="absolute pointer-events-none" style="top: -50px; left: 50%; transform: translateX(-50%); z-index: 20; opacity: 0;"> 1039 <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 1040 <path d="M3 3l7.07 16.97 2.51-7.39 7.39-2.51L3 3z"></path> 1041 </svg> 1042 <img src="./public/Files/File_3.png" alt="Datei" class="absolute -top-2 -left-2 w-12 h-12 object-cover rounded" style="opacity: 0.9;"> 1043 </div> 1044 </div> 1045 </div> 1046 </div> 1047 </div> 1048 </div> 1049 1050 <div class="text-center space-y-8 animate-on-scroll mt-28"> 1051 <div class="feature-hover-item feature-hover-purple text-5xl md:text-6xl lg:text-7xl font-medium cursor-default relative group" style="color: #2A2A2A; opacity: 1; transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; font-family: 'Cal Sans', sans-serif;">
1052 <span id="feature-label-monetarisierung">Monetarisierung</span> 1053 <div id="feature-tooltip-monetarisierung" class="feature-tooltip feature-tooltip-purple">Monetarisiere deine Community mit flexiblen Einnahmemodellen wie kostenpflichtigen Inhalten, Events oder Mitgliedschaften. Das Monetarisierungs-Feature ermöglicht dir, nachhaltige Umsätze direkt über die Plattform zu generieren.</div> 1054 </div> 1055 <div class="feature-hover-item feature-hover-green text-5xl md:text-6xl lg:text-7xl font-medium cursor-default relative group" style="color: #2A2A2A; opacity: 0.9; transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; font-family: 'Cal Sans', sans-serif;"> 1056 <span id="feature-label-mitgliedschaften">Mitgliedschaften</span> 1057 <div id="feature-tooltip-mitgliedschaften" class="feature-tooltip feature-tooltip-green">Erstelle individuelle Mitgliedschaftsstufen mit exklusiven Vorteilen und Zugängen. So stärkst du die Bindung deiner Community und schaffst klare Mehrwerte für deine Mitglieder.</div> 1058 </div> 1059 <div class="feature-hover-item feature-hover-red text-5xl md:text-6xl lg:text-7xl font-medium cursor-default relative group" style="color: #2A2A2A; opacity: 0.8; transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; font-family: 'Cal Sans', sans-serif;"> 1060 <span id="feature-label-gamification">Gamification</span> 1061 <div id="feature-tooltip-gamification" class="feature-tooltip feature-tooltip-red">Motiviere deine Community mit Gamification-Elementen und belohne Engagement mit Punkten und Erfolgen.</div> 1062 </div> 1063 <div class="feature-hover-item feature-hover-yellow text-5xl md:text-6xl lg:text-7xl font-medium cursor-default relative group" style="color: #2A2A2A; opacity: 0.7; transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; font-family: 'Cal Sans', sans-serif;"> 1064 <span id="feature-label-kalender">Kalender</span> 1065 <div id="feature-tooltip-kalender" class="feature-tooltip feature-tooltip-yellow">Plane und verwalte Events, Webinare sowie Termine zentral an einem Ort. Der integrierte Kalender sorgt für Ãbersicht und erleichtert die Organisation deiner Community.</div> 1066 </div> 1067 <div class="feature-hover-item feature-hover-purple text-5xl md:text-6xl lg:text-7xl font-medium cursor-default relative group" style="color: #2A2A2A; opacity: 0.6; transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; font-family: 'Cal Sans', sans-serif;"> 1068 <span style="position: relative; display: inline-block;"><span id="feature-label-umfragen">Umfragen</span><span class="coming-soon-badge">coming soon</span></span> 1069 <div id="feature-tooltip-umfragen" class="feature-tooltip feature-tooltip-purple">Hole gezielt Feedback und Meinungen von deinen Community-Mitgliedern ein. Umfragen helfen dir, Entscheidungen datenbasiert und mit direkter Nutzerbeteiligung zu treffen.</div> 1070 </div> 1071 <div class="feature-hover-item feature-hover-green text-5xl md:text-6xl lg:text-7xl font-medium cursor-default relative group" style="color: #2A2A2A; opacity: 0.5; transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; font-family: 'Cal Sans', sans-serif;"> 1072 <span id="feature-label-analytics">Analytics</span> 1073 <div id="feature-tooltip-analytics" class="feature-tooltip feature-tooltip-green">Analysiere Aktivität, Wachstum und Engagement deiner Community in Echtzeit. Mit übersichtlichen Analytics triffst du fundierte Entscheidungen zur Weiterentwicklung deiner Plattform.</div> 1074 </div> 1075 <div class="feature-hover-item feature-hover-red text-5xl md:text-6xl lg:text-7xl font-medium cursor-default relative group" style="color: #2A2A2A; opacity: 0.4; transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; font-family: 'Cal Sans', sans-serif;">
1076 <span id="feature-label-gruppenchats">Gruppenchats</span> 1077 <div id="feature-tooltip-gruppenchats" class="feature-tooltip feature-tooltip-red">Ermögliche den direkten Austausch in Gruppenchats und fördere die Interaktion innerhalb deiner Community. Ideal für Diskussionen, Networking und gemeinsame Themenräume.</div> 1078 </div> 1079 <div class="feature-hover-item feature-hover-yellow text-5xl md:text-6xl lg:text-7xl font-medium cursor-default relative group" style="color: #2A2A2A; opacity: 0.3; transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; font-family: 'Cal Sans', sans-serif;"> 1080 <span id="feature-label-ticketing">Ticketing</span> 1081 <div id="feature-tooltip-ticketing" class="feature-tooltip feature-tooltip-yellow">Verkaufe Tickets für Events und Veranstaltungen direkt über deine Plattform. Das integrierte Ticketing vereinfacht den Verkaufsprozess und schafft ein nahtloses Nutzererlebnis.</div> 1082 </div> 1083 <div class="feature-hover-item feature-hover-purple text-5xl md:text-6xl lg:text-7xl font-medium cursor-default relative group" style="color: #2A2A2A; opacity: 0.25; transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; font-family: 'Cal Sans', sans-serif;"> 1084 <span style="position: relative; display: inline-block;"><span id="feature-label-integrationen">Integrationen</span><span class="coming-soon-badge">coming soon</span></span> 1085 <div id="feature-tooltip-integrationen" class="feature-tooltip feature-tooltip-purple">Verbinde deine Community-Plattform mit deinen bevorzugten Tools und Services. Integrationen sorgen für effiziente Workflows und eine reibungslose Systemlandschaft.</div> 1086 </div> 1087 <div class="feature-hover-item feature-hover-green text-5xl md:text-6xl lg:text-7xl font-medium cursor-default relative group" style="color: #2A2A2A; opacity: 0.2; transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; font-family: 'Cal Sans', sans-serif;"> 1088 <span id="feature-label-benachrichtigungen">Benachrichtigungen</span> 1089 <div id="feature-tooltip-benachrichtigungen" class="feature-tooltip feature-tooltip-green">Informiere deine Mitglieder automatisch über wichtige Updates, Events und Aktivitäten. Smarte Benachrichtigungen erhöhen die Reichweite und halten deine Community aktiv.</div> 1090 </div> 1091 </div> 1092 1093 <!-- Logo Slider --> 1094 <div class="logo-slider-container mt-40 mb-8 overflow-hidden"> 1095 <div class="logo-slider flex gap-16 items-center animate-scroll"> 1096 <img src="./public/Logos/accenture_logo.png" alt="Accenture" class="h-8 w-auto opacity-20 grayscale"> 1097 <img src="./public/Logos/Amazon_logo.png" alt="Amazon" class="h-8 w-auto opacity-20 grayscale"> 1098 <img src="./public/Logos/BGB_logo.png" alt="BGB" class="h-8 w-auto opacity-20 grayscale"> 1099 <img src="./public/Logos/Biyon_logo.png" alt="Biyon" class="h-8 w-auto opacity-20 grayscale"> 1100 <img src="./public/Logos/DM_logo.png" alt="DM" class="h-8 w-auto opacity-20 grayscale"> 1101 <img src="./public/Logos/EF_logo.png" alt="EF" class="h-8 w-auto opacity-20 grayscale"> 1102 <img src="./public/Logos/EON_logo.png" alt="EON" class="h-8 w-auto opacity-20 grayscale"> 1103 <img src="./public/Logos/Eurowings_logo.png" alt="Eurowings" class="h-8 w-auto opacity-20 grayscale"> 1104 <img src="./public/Logos/Factory_Berlin_logo.png" alt="Factory Berlin" class="h-8 w-auto opacity-20 grayscale"> 1105 <img src="./public/Logos/McDonalds_logo.png" alt="McDonalds" class="h-8 w-auto opacity-20 grayscale"> 1106 <img src="./public/Logos/Schuelerhilfe_logo.png" alt="Schülerhilfe" class="h-8 w-auto opacity-20 grayscale"> 1107 <img src="./public/Logos/Siemens_logo.png" alt="Siemens" class="h-8 w-auto opacity-20 grayscale"> 1108 <img src="./public/Logos/Stroer_logo.png" alt="Ströer" class="h-8 w-auto opacity-20 grayscale"> 1109 <!-- Duplikate für nahtlose Animation --> 1110 <img src="./public/Logos/accenture_logo.png" alt="Accenture" class="h-8 w-auto opacity-20 grayscale"> 1111 <img src="./public/Logos/Amazon_logo.png" alt="Amazon" class="h-8 w-auto opacity-20 grayscale"> 1112 <img src="./public/Logos/BGB_logo.png" alt="BGB" class="h-8 w-auto opacity-20 grayscale"> 1113 <img src="./public/Logos/Biyon_logo.png" alt="Biyon" class="h-8 w-auto opacity-20 grayscale"> 1114 <img src="./public/Logos/DM_logo.png" alt="DM" class="h-8 w-auto opacity-20 grayscale"> 1115 <img src="./public/Logos/EF_logo.png" alt="EF" class="h-8 w-auto opacity-20 grayscale"> 1116 <img src="./public/Logos/EON_logo.png" alt="EON" class="h-8 w-auto opacity-20 grayscale"> 1117 <img src="./public/Logos/Eurowings_logo.png" alt="Eurowings" class="h-8 w-auto opacity-20 grayscale"> 1118 <img src="./public/Logos/Factory_Berlin_logo.png" alt="Factory Berlin" class="h-8 w-auto opacity-20 grayscale"> 1119 <img src="./public/Logos/McDonalds_logo.png" alt="McDonalds" class="h-8 w-auto opacity-20 grayscale"> 1120 <img src="./public/Logos/Schuelerhilfe_logo.png" alt="Schülerhilfe"
1120class="h-8 w-auto opacity-20 grayscale"> 1121 <img src="./public/Logos/Siemens_logo.png" alt="Siemens" class="h-8 w-auto opacity-20 grayscale"> 1122 <img src="./public/Logos/Stroer_logo.png" alt="Ströer" class="h-8 w-auto opacity-20 grayscale"> 1123 </div> 1124 </div> 1125 </div> 1126 </section> 1127 1128 <!-- Use Cases Section --> 1129 <section id="use-cases" class="py-20 px-6 lg:px-8 relative gradient-bg"> 1130 <div class="absolute inset-0 pointer-events-none" style="background: linear-gradient(to bottom, #ffffff 0%, rgba(255, 255, 255, 0) 100%); z-index: 1;"></div> 1131 <div class="max-w-7xl mx-auto relative z-10"> 1132 <div class="text-center mb-16 animate-on-scroll pt-12"> 1133 <h2 id="use-cases-title" class="text-4xl md:text-5xl lg:text-6xl font-medium mb-4 leading-normal pb-2" style="background: linear-gradient(to right, #2A2A2A, rgba(42, 42, 42, 0.9), rgba(42, 42, 42, 0.3)); -webkit-background-clip: text; background-clip: text; color: transparent; font-family: 'Cal Sans', sans-serif;"> 1134 Für jeden das Richtige 1135 </h2> 1136 <p id="use-cases-subtitle" class="text-base md:text-lg text-black/50 max-w-3xl mx-auto mb-6 leading-relaxed font-normal"> 1137 Egal ob Coach, Creator oder sonstiges â Glymmer passt sich deinen Bedürfnissen an 1138 </p> 1139 </div> 1140 <div class="use-cases-boxes flex flex-wrap justify-center items-start gap-6 mb-12"> 1141 <!-- Coaches --> 1142 <div class="use-case-box relative" style="flex: 0 0 auto;"> 1143 <img src="./public/Use%20Cases/Coaches.png" alt="Für Coaches" class="rounded-[2.5rem]" style="filter: drop-shadow(0 15px 35px rgba(0, 0, 0, 0.15)); width: 300px; height: auto; object-fit: cover;"> 1144 <div class="absolute bottom-6 left-6 right-6 bg-white rounded-[2rem] p-6 flex flex-col" style="box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12), 0 4px 15px rgba(0, 0, 0, 0.08);"> 1145 <h3 id="use-cases-coaches" class="text-2xl font-medium mb-2 text-black" style="font-family: 'Suisse Intl', sans-serif;">Für Coaches</h3> 1146 <p class="text-gray-400 text-sm leading-relaxed mb-4" style="font-family: 'Suisse Intl', sans-serif;"> 1147 Dein Netzwerk für nachhaltiges Lernen und Wachstum. Mit Glymmer baust du mehr als nur eine Community. 1148 </p> 1149 <a href="/coaches.html" class="flex items-center gap-1 mt-auto hover:opacity-80 transition"> 1150 <span id="use-cases-more-coaches" class="font-bold text-secondary" style="font-family: 'Suisse Intl', sans-serif;">Mehr</span> 1151 <svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1152 <path d="M5 12h14M12 5l7 7-7 7" stroke="#7167F5" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 1153 </svg> 1154 </a> 1155 </div> 1156 </div> 1157 1158 <!-- Creator 1 & 2 übereinander --> 1159 <div class="use-case-box flex flex-col gap-0" style="flex: 0 0 auto;"> 1160 <div class="relative"> 1161 <img src="./public/Use%20Cases/Creator_2.png" alt="Für Creator" class="rounded-[2.5rem]" style="filter: drop-shadow(0 15px 35px rgba(0, 0, 0, 0.15)); width: 300px; height: auto; object-fit: cover;"> 1162 <div class="absolute bottom-6 left-6 right-6 bg-white rounded-[2rem] p-6 flex flex-col" style="box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12), 0 4px 15px rgba(0, 0, 0, 0.08);"> 1163 <h3 id="use-cases-creators" class="text-2xl font-medium mb-2 text-black" style="font-family: 'Suisse Intl', sans-serif;">Für Creator</h3> 1164 <p class="text-gray-400 text-sm leading-relaxed mb-4" style="font-family: 'Suisse Intl', sans-serif;"> 1165 Monetarisiere deine Leidenschaft und stärke deine Community. 1166 </p> 1167 <a href="/creator.html" class="flex items-center gap-1 mt-auto hover:opacity-80 transition"> 1168 <span id="use-cases-more-creators" class="font-bold text-secondary" style="font-family: 'Suisse Intl', sans-serif;">Mehr</span> 1169 <svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1170 <path d="M5 12h14M12 5l7 7-7 7" stroke="#7167F5" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 1171 </svg> 1172 </a> 1173 </div> 1174 </div> 1175 <div class="relative" style="margin-top: 2rem;"> 1176 <img src="./public/Use%20Cases/Creator_1.png" alt="Creator" class="rounded-[2.5rem]" style="filter: drop-shadow(0 15px 35px rgba(0, 0, 0, 0.15)); width: 300px; height: auto; object-fit: cover;"> 1177 </div> 1178 </div> 1179 1180 <!-- Bootcamp --> 1181 <div class="use-case-box relative" style="flex: 0 0 auto;">
1182 <img src="./public/Use%20Cases/Bootcamp.png" alt="Für Bootcamps" class="rounded-[2.5rem]" style="filter: drop-shadow(0 15px 35px rgba(0, 0, 0, 0.15)); width: 300px; height: auto; object-fit: cover;"> 1183 <div class="absolute bottom-6 left-6 right-6 bg-white rounded-[2rem] p-6 flex flex-col" style="box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12), 0 4px 15px rgba(0, 0, 0, 0.08);"> 1184 <h3 id="use-cases-bootcamps" class="text-2xl font-medium mb-2 text-black" style="font-family: 'Suisse Intl', sans-serif;">Für Bootcamps</h3> 1185 <p class="text-gray-400 text-sm leading-relaxed mb-4" style="font-family: 'Suisse Intl', sans-serif;"> 1186 Dein Motor für Programme, die durchgezogen werden. Mit der Plattform skalierst du intensive Kurse. 1187 </p> 1188 <a href="/bootcamps.html" class="flex items-center gap-1 mt-auto hover:opacity-80 transition"> 1189 <span id="use-cases-more-bootcamps" class="font-bold text-secondary" style="font-family: 'Suisse Intl', sans-serif;">Mehr</span> 1190 <svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1191 <path d="M5 12h14M12 5l7 7-7 7" stroke="#7167F5" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 1192 </svg> 1193 </a> 1194 </div> 1195 </div> 1196 1197 <!-- Lernräume --> 1198 <div class="use-case-box relative" style="flex: 0 0 auto;"> 1199 <img src="./public/Use%20Cases/Lernraeume.png" alt="Für Lernräume" class="rounded-[2.5rem]" style="filter: drop-shadow(0 15px 35px rgba(0, 0, 0, 0.15)); width: 300px; height: auto; object-fit: cover;"> 1200 <div class="absolute bottom-6 left-6 right-6 bg-white rounded-[2rem] p-6 flex flex-col" style="box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12), 0 4px 15px rgba(0, 0, 0, 0.08);"> 1201 <h3 id="use-cases-lernraeume" class="text-2xl font-medium mb-2 text-black" style="font-family: 'Suisse Intl', sans-serif;">Für Lernräume</h3> 1202 <p class="text-gray-400 text-sm leading-relaxed mb-4" style="font-family: 'Suisse Intl', sans-serif;"> 1203 Dein Raum für interaktives, skalierbares Lernen. Mit Glymmer gestaltest du 1:1-Sessions und Gruppen. 1204 </p> 1205 <a href="/lernraum.html" class="flex items-center gap-1 mt-auto hover:opacity-80 transition"> 1206 <span id="use-cases-more-lernraeume" class="font-bold text-secondary" style="font-family: 'Suisse Intl', sans-serif;">Mehr</span> 1207 <svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1208 <path d="M5 12h14M12 5l7 7-7 7" stroke="#7167F5" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 1209 </svg> 1210 </a> 1211 </div> 1212 </div> 1213 </div> 1214 </div> 1215 </section> 1216 1217 <!-- Personalisiere Deine Plattform Section --> 1218 <section id="personalize" class="pt-28 pb-10 px-6 lg:px-8 bg-white"> 1219 <div class="max-w-[81rem] mx-auto"> 1220 <div class="text-center mb-16 animate-on-scroll pt-12"> 1221 <h2 id="personalize-title" class="text-4xl md:text-5xl lg:text-6xl font-medium mb-4 leading-normal pb-2" style="background: linear-gradient(to right, #2A2A2A, rgba(42, 42, 42, 0.9), rgba(42, 42, 42, 0.3)); -webkit-background-clip: text; background-clip: text; color: transparent; font-family: 'Cal Sans', sans-serif;"> 1222 Personalisiere hier Deine Plattform 1223 </h2> 1224 <p id="personalize-subtitle" class="text-base md:text-lg text-black/50 max-w-3xl mx-auto mb-6 leading-relaxed font-normal"> 1225 Passe Farben, Features, Logo, Domain-Namen und vieles mehr an, um Glymmer zu <strong>Deiner</strong> Plattform zu machen. 1226 </p> 1227 </div> 1228 1229 <!-- Personalization Controls --> 1230 <div class="platform-personalize-controls mb-10 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-5 gap-5 animate-on-scroll delay-100"> 1231 <div class="platform-personalize-farben-row"> 1232 <div id="platform-control-button-farbe" class="platform-control-box rounded-2xl p-5 text-center flex flex-col items-center justify-start"> 1233 <label id="platform-label-button-farbe" class="block text-lg font-medium text-black/70 mb-3" style="font-family: 'Cal Sans', sans-serif;">Button-Farbe</label> 1234 <div class="flex-1 flex items-center justify-center min-h-0"> 1235 <input type="color" id="platform-btn-color" value="#7167F5" class="platform-color-input"> 1236 </div> 1237 </div> 1238 <div class="platform-control-box rounded-2xl p-5 text-center flex flex-col items-center justify-start"> 1239 <label id="platform-label-bg" class="block text-lg font-medium text-black/70 mb-3" style="font-family: 'Cal Sans', sans-serif;">Hintergrundfarbe</label> 1240 <div class="flex-1 flex items-center justify-center min-h-0"> 1241 <input type="color" id="platform-bg-top" value="#f0eeff" class="platform-color-input"> 1242 </div> 1243 </div> 1244 </div> 1245 <div class="platform-personalize-logo-darstellung-row"> 1246 <div class="platform-control-box rounded-2xl p-5 text-center flex flex-col items-center justify-start"> 1247 <label id="platform-label-logo" class="block text-lg font-medium text-black/70 mb-3" style="font-family: 'Cal Sans', sans-serif;">Logo</label> 1248 <div class="flex-1 flex items-center justify-center min-h-0"> 1249 <label for="platform-logo-file" class="platform-logo-upload cursor-pointer flex items-center justify-center bg-white text-black/40 hover:bg-[#7167F5] hover:text-white transition-colors">
1250 <svg class="w-6 h-6" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="17 8 12 3 7 8"/><line x1="12" y1="3" x2="12" y2="15"/></svg> 1251 </label> 1252 <input type="file" id="platform-logo-file" accept="image/*" class="hidden"> 1253 </div> 1254 </div> 1255 <div class="platform-control-box rounded-2xl p-5 text-center flex flex-col items-center justify-start"> 1256 <label id="platform-label-darstellung" class="block text-lg font-medium text-black/70 mb-3" style="font-family: 'Cal Sans', sans-serif;">Darstellung</label> 1257 <div class="flex flex-col items-center justify-center gap-3"> 1258 <span class="text-black/60" aria-hidden="true"> 1259 <svg class="w-5 h-5" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41"/></svg> 1260 </span> 1261 <label class="relative inline-flex w-8 h-14 flex-shrink-0 cursor-pointer items-center platform-dark-mode-switch"> 1262 <input type="checkbox" id="platform-dark-mode" class="sr-only peer" value="dark">
1263 <div class="w-8 h-14 rounded-full bg-black/15 transition-colors peer-checked:bg-[#2a2a2a]"></div> 1264 <div class="absolute left-1 top-1 w-6 h-6 rounded-full border border-black/10 bg-white shadow-sm transition-transform peer-checked:translate-y-6"></div> 1265 </label> 1266 <span class="text-black/60" aria-hidden="true"> 1267 <svg class="w-5 h-5" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"/></svg> 1268 </span> 1269 </div> 1270 </div> 1271 </div> 1272 <div class="platform-control-box rounded-2xl p-5 flex flex-col items-center justify-start"> 1273 <label id="platform-label-menu" class="block text-lg font-medium text-black/70 mb-3 w-full text-center" style="font-family: 'Cal Sans', sans-serif;">Menüpunkte</label> 1274 <div class="grid grid-cols-2 gap-2.5 w-full"> 1275 <label class="platform-menu-kasten group cursor-pointer flex flex-col items-center justify-center gap-1 rounded-xl border-2 border-transparent bg-white/80 py-2 px-3 transition-all shadow-[0_0_12px_rgba(0,0,0,0.06)] hover:shadow-[0_0_18px_rgba(0,0,0,0.08)] has-[:checked]:border-[#7167F5] has-[:checked]:bg-[#7167F5]/10 has-[:checked]:shadow-none"> 1276 <input type="checkbox" id="platform-menu-kalender" checked class="sr-only peer"> 1277 <span class="text-black/40 transition-colors group-has-[:checked]:text-[#7167F5]"> 1278 <svg class="w-5 h-5" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="4" width="18" height="18" rx="2"/><path d="M16 2v4M8 2v4M3 10h18"/></svg> 1279 </span> 1280 <span id="platform-menu-kalender-label" class="text-xs font-medium text-black/50 transition-colors group-has-[:checked]:text-[#7167F5]">Kalender</span> 1281 </label> 1282 <label class="platform-menu-kasten group cursor-pointer flex flex-col items-center justify-center gap-1 rounded-xl border-2 border-transparent bg-white/80 py-2 px-3 transition-all shadow-[0_0_12px_rgba(0,0,0,0.06)] hover:shadow-[0_0_18px_rgba(0,0,0,0.08)] has-[:checked]:border-[#7167F5] has-[:checked]:bg-[#7167F5]/10 has-[:checked]:shadow-none"> 1283 <input type="checkbox" id="platform-menu-mediathek" checked class="sr-only peer"> 1284 <span class="text-black/40 transition-colors group-has-[:checked]:text-[#7167F5]"> 1285 <svg class="w-5 h-5" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M4 4h16v16H4z"/><path d="M9 9h6v6H9z"/></svg> 1286 </span> 1287 <span id="platform-menu-mediathek-label" class="text-xs font-medium text-black/50 transition-colors group-has-[:checked]:text-[#7167F5]">Mediathek</span> 1288 </label> 1289 <label class="platform-menu-kasten group cursor-pointer flex flex-col items-center justify-center gap-1 rounded-xl border-2 border-transparent bg-white/80 py-2 px-3 transition-all shadow-[0_0_12px_rgba(0,0,0,0.06)] hover:shadow-[0_0_18px_rgba(0,0,0,0.08)] has-[:checked]:border-[#7167F5] has-[:checked]:bg-[#7167F5]/10 has-[:checked]:shadow-none"> 1290 <input type="checkbox" id="platform-menu-benachrichtigung" checked class="sr-only peer"> 1291 <span class="text-black/40 transition-colors group-has-[:checked]:text-[#7167F5]"> 1292 <svg class="w-5 h-5" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"/><path d="M13.73 21a2 2 0 0 1-3.46 0"/></svg> 1293 </span> 1294 <span id="platform-menu-benach-label" class="text-xs font-medium text-black/50 transition-colors group-has-[:checked]:text-[#7167F5]">Benach...</span> 1295 </label> 1296 <label class="platform-menu-kasten group cursor-pointer flex flex-col items-center justify-center gap-1 rounded-xl border-2 border-transparent bg-white/80 py-2 px-3 transition-all shadow-[0_0_12px_rgba(0,0,0,0.06)] hover:shadow-[0_0_18px_rgba(0,0,0,0.08)] has-[:checked]:border-[#7167F5] has-[:checked]:bg-[#7167F5]/10 has-[:checked]:shadow-none"> 1297 <input type="checkbox" id="platform-menu-chat" checked class="sr-only peer">
1298 <span class="text-black/40 transition-colors group-has-[:checked]:text-[#7167F5]"> 1299 <svg class="w-5 h-5" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg> 1300 </span> 1301 <span id="platform-menu-chat-label" class="text-xs font-medium text-black/50 transition-colors group-has-[:checked]:text-[#7167F5]">Chat</span> 1302 </label> 1303 </div> 1304 </div> 1305 </div> 1306 1307 <!-- Platform Preview (interactive) â gleicher seitlicher Abstand wie die vier Kästen --> 1308 <div class="platform-preview-wrapper w-full animate-on-scroll delay-200" id="platform-preview-wrapper"> 1309 <div class="platform-preview-frame rounded-2xl overflow-hidden platform-preview-shadow" id="platform-preview-frame"> 1310 <div class="platform-mobile-overlay absolute inset-0 bg-black/30 z-40 opacity-0 pointer-events-none transition-opacity duration-300" id="platform-mobile-overlay" aria-hidden="true"></div> 1311 <div class="platform-preview-inner flex min-h-[640px]" id="platform-preview-inner"> 1312 <!-- Mobile Header (nur auf Mobil sichtbar): Menü | Logo | Chat --> 1313 <div class="platform-mobile-header hidden flex-shrink-0 items-center justify-between px-4 py-3 bg-white/95 border-b border-black/10" id="platform-mobile-header"> 1314 <button type="button" class="platform-mobile-menu-btn p-2 -ml-2 rounded-lg text-black/70 hover:bg-black/5 transition-colors" aria-label="Menü öffnen"> 1315 <svg class="w-6 h-6" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="3" y1="6" x2="21" y2="6"/><line x1="3" y1="12" x2="21" y2="12"/><line x1="3" y1="18" x2="21" y2="18"/></svg> 1316 </button> 1317 <img id="platform-mobile-header-logo" src="./public/Glymmer_Logo_Dunkel.png" alt="Glymmer" class="h-7 w-auto object-contain"> 1318 <button type="button" class="platform-mobile-chat-btn p-2 -mr-2 rounded-lg text-black/70 hover:bg-black/5 transition-colors" aria-label="Nachrichten öffnen"> 1319 <svg class="w-6 h-6" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg> 1320 </button> 1321 </div> 1322 <!-- Sidebar --> 1323 <aside class="platform-sidebar w-[220px] flex-shrink-0 flex flex-col bg-white/95 platform-sidebar-shadow"> 1324 <div class="p-4"> 1325 <img id="platform-preview-logo" src="./public/Glymmer_Logo_Dunkel.png" alt="Logo" class="h-8 w-auto object-contain object-left"> 1326 </div> 1327 <nav class="flex-1 p-3 space-y-0.5"> 1328 <div class="platform-nav-channel block px-3 py-2 rounded-lg text-sm font-medium text-black/90 hover:bg-black/5 cursor-pointer">#Announcements</div> 1329 <div class="platform-nav-channel block px-3 py-2 rounded-lg text-sm font-medium text-black/70 hover:bg-black/5 cursor-pointer">#Team-Updates</div> 1330 <div class="platform-nav-channel block px-3 py-2 rounded-lg text-sm font-medium text-black/70 hover:bg-black/5 cursor-pointer">#AskMeAnything</div> 1331 <button type="button" class="platform-alle-channels w-full flex items-center justify-between px-3 py-2 rounded-lg text-sm font-medium text-black/70 hover:bg-black/5 mt-2"> 1332 <span id="mockup-all-channels">Alle Channels</span> 1333 <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M7 17L17 7M17 7h-6M17 7v6"/></svg> 1334 </button> 1335 <div class="border-t border-black/5 my-2"></div> 1336 <div class="platform-nav-item platform-menu-kalender flex items-center gap-2 px-3 py-2 rounded-lg text-sm text-black/70 hover:bg-black/5 cursor-pointer"> 1337 <svg class="w-4 h-4 flex-shrink-0" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="4" width="18" height="18" rx="2"/><path d="M16 2v4M8 2v4M3 10h18"/></svg>
1338 <span id="mockup-nav-kalender">Kalender</span> 1339 </div> 1340 <div class="platform-nav-item platform-menu-mediathek flex items-center gap-2 px-3 py-2 rounded-lg text-sm text-black/70 hover:bg-black/5 cursor-pointer"> 1341 <svg class="w-4 h-4 flex-shrink-0" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M4 4h16v16H4z"/><path d="M9 9h6v6H9z"/></svg> 1342 <span id="mockup-nav-mediathek">Mediathek</span> 1343 </div> 1344 <div class="platform-nav-item platform-menu-benachrichtigung flex items-center gap-2 px-3 py-2 rounded-lg text-sm text-black/70 hover:bg-black/5 cursor-pointer"> 1345 <svg class="w-4 h-4 flex-shrink-0" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"/><path d="M13.73 21a2 2 0 0 1-3.46 0"/></svg> 1346 <span id="mockup-nav-benach">Benachrichtigung</span> 1347 </div> 1348 <div class="platform-nav-item platform-menu-chat flex items-center gap-2 px-3 py-2 rounded-lg text-sm text-black/70 hover:bg-black/5 cursor-pointer"> 1349 <svg class="w-4 h-4 flex-shrink-0" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg> 1350 <span id="mockup-nav-chat">Chat</span> 1351 </div> 1352 <div class="platform-nav-item flex items-center gap-2 px-3 py-2 rounded-lg text-sm text-black/70 hover:bg-black/5 cursor-pointer"> 1353 <svg class="w-4 h-4 flex-shrink-0" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"/></svg> 1354 <span id="mockup-nav-settings">Einstellungen</span> 1355 </div> 1356 </nav> 1357 <div class="p-3 flex items-center gap-2"> 1358 <img src="./public/User_1.jpg" alt="Isabel Kohr" class="w-8 h-8 rounded-full object-cover flex-shrink-0"> 1359 <span class="text-sm font-medium text-black/80 truncate">Isabel Kohr</span> 1360 </div> 1361 </aside> 1362 <!-- Main Feed --> 1363 <main class="platform-main flex-1 flex flex-col min-w-0" id="platform-main-bg"> 1364 <div class="p-3"> 1365 <div class="platform-feed-search flex items-center gap-2 rounded-full bg-white py-2 pl-4 pr-4 shadow-[0_0_24px_rgba(0,0,0,0.04)]"> 1366 <svg class="w-4 h-4 flex-shrink-0 text-black/40" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.35-4.35"/></svg> 1367 <input id="mockup-search" type="search" placeholder="Feed durchsuchenâ¦" class="flex-1 min-w-0 bg-transparent text-sm text-black/80 placeholder:text-black/40 focus:outline-none border-none"> 1368 <button type="button" class="p-1 rounded-full text-black/40 hover:text-black/60 hover:bg-black/5 transition-colors flex-shrink-0" aria-label="Filter"> 1369 <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"/></svg> 1370 </button> 1371 </div> 1372 </div> 1373 <div class="flex-1 overflow-y-auto p-4 space-y-4"> 1374 <!-- Post Composer --> 1375 <div class="platform-composer rounded-xl bg-white p-4 shadow-[0_0_24px_rgba(0,0,0,0.04)]"> 1376 <div class="platform-composer-toolbar flex flex-wrap gap-1 mb-2"> 1377 <button type="button" class="platform-btn-icon w-8 h-8 rounded flex items-center justify-center text-black/60 hover:bg-black/5" title="Fett"><b>B</b></button> 1378 <button type="button" class="platform-btn-icon w-8 h-8 rounded flex items-center justify-center italic text-black/60 hover:bg-black/5" title="Kursiv"><i>I</i></button> 1379 <button type="button" class="platform-btn-icon w-8 h-8 rounded flex items-center justify-center text-black/60 hover:bg-black/5 underline" title="Unterstrichen">U</button> 1380 <button type="button" class="platform-btn-icon w-8 h-8 rounded flex items-center justify-center text-black/60 hover:bg-black/5" title="Aufzählung (Bullet Points)"> 1381 <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="8" y1="6" x2="20" y2="6"/><line x1="8" y1="12" x2="20" y2="12"/><line x1="8" y1="18" x2="20" y2="18"/><circle cx="4" cy="6" r="1"/><circle cx="4" cy="12" r="1"/><circle cx="4" cy="18" r="1"/></svg> 1382 </button> 1383 <button type="button" class="platform-btn-icon w-8 h-8 rounded flex items-center justify-center text-black/60 hover:bg-black/5" title="Nummerierte Aufzählung"> 1384 <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="10" y1="6" x2="20" y2="6"/><line x1="10" y1="12" x2="20" y2="12"/><line x1="10" y1="18" x2="20" y2="18"/><path d="M4 6h1v4M4 10h2M6 18H4c0-1 2-2 2-3s-1-1.5-2-1"/></svg> 1385 </button> 1386 </div> 1387 <div id="mockup-composer" contenteditable="true" class="min-h-[72px] text-sm text-black/80 focus:outline-none mb-3 px-1" data-placeholder="Was möchtest du teilen?"></div> 1388 <div class="flex flex-wrap items-center gap-2"> 1389 <button type="button" class="platform-btn-icon p-2 rounded-lg border border-black/10 text-black/60 hover:bg-black/5 flex items-center gap-1 text-xs"> 1390 <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"/></svg>
1391 <span id="mockup-attachment">Anhang</span> 1392 </button> 1393 <button type="button" class="platform-btn-icon p-2 rounded-lg border border-black/10 text-black/60 hover:bg-black/5 flex items-center gap-1 text-xs"> 1394 <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/></svg> 1395 Link 1396 </button> 1397 <button type="button" class="platform-btn-icon p-2 rounded-lg border border-black/10 text-black/60 hover:bg-black/5 flex items-center gap-1 text-xs"> 1398 <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polygon points="23 7 16 12 23 17 23 7"/><rect x="1" y="5" width="15" height="14" rx="2" ry="2"/></svg> 1399 Video 1400 </button> 1401 <button type="button" class="platform-btn-icon p-2 rounded-lg border border-black/10 text-black/60 hover:bg-black/5 flex items-center gap-1 text-xs"> 1402 <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"/><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/><path d="M12 17h.01"/></svg> 1403 <span id="mockup-surveys">Umfragen</span> 1404 </button> 1405 <select id="mockup-category-select" class="text-xs border border-black/10 rounded-lg px-2 py-1.5 text-black/70 bg-white focus:outline-none focus:ring-1 focus:ring-black/10"> 1406 <option id="mockup-option-category">Kategorie auswählen</option> 1407 <option id="mockup-option-general">Allgemein</option> 1408 <option>Updates</option> 1409 </select> 1410 <div class="flex flex-wrap items-center gap-2"> 1411 <button type="button" class="platform-btn-primary flex items-center gap-2 px-4 py-2 rounded-lg text-xs font-medium text-white border-0" style="background: var(--platform-btn, #7167F5);"> 1412 <span id="mockup-post-btn">Posten</span> 1413 <svg class="w-4 h-4 flex-shrink-0" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 19V5M5 12l7-7 7 7"/></svg> 1414 </button> 1415 <label class="flex items-center gap-2 text-xs text-black/70 cursor-pointer"> 1416 <input type="checkbox" class="sr-only peer"> 1417 <span class="w-5 h-5 rounded-full border-2 border-black/20 flex items-center justify-center flex-shrink-0 transition-colors peer-checked:bg-[#7167F5] peer-checked:border-[#7167F5] peer-checked:[&_svg]:opacity-100"> 1418 <svg class="w-3 h-3 opacity-0 transition-opacity text-white" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg> 1419 </span> 1420 <span id="mockup-paid">Kostenpflichtig</span> 1421 </label> 1422 </div> 1423 </div> 1424 </div> 1425 <!-- Feed Posts --> 1426 <article class="platform-post relative rounded-xl bg-white p-4 shadow-[0_0_24px_rgba(0,0,0,0.04)]"> 1427 <button type="button" class="absolute top-4 right-4 p-1 rounded-full text-black/50 hover:text-black/70 hover:bg-black/5 transition-colors" aria-label="Mehr Optionen"> 1428 <svg class="w-5 h-5" viewBox="0 0 24 24" fill="currentColor"><circle cx="12" cy="5" r="1.5"/><circle cx="12" cy="12" r="1.5"/><circle cx="12" cy="19" r="1.5"/></svg> 1429 </button> 1430 <div class="flex gap-3"> 1431 <img src="./public/Users/User_2.jpg" alt="Community-Mitglied" class="w-10 h-10 rounded-full object-cover flex-shrink-0"> 1432 <div class="flex-1 min-w-0"> 1433 <div class="flex items-center gap-2 flex-wrap">
1434 <span class="font-medium text-sm text-black/90">Luis T.</span> 1435 <span id="mockup-post1-meta" class="text-xs text-black/50">#Team-Updates · vor 2 Std.</span> 1436 </div> 1437 <p id="mockup-post1-text" class="text-sm text-black/80 mt-1">Unser neues Feature ist live: Ihr könnt jetzt Umfragen direkt im Feed erstellen. Probiert es aus!</p> 1438 <div class="flex items-center gap-4 mt-3 text-black/50"> 1439 <button type="button" class="flex items-center gap-1 text-xs hover:text-black/70"><svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"/></svg> 12</button> 1440 <button type="button" class="flex items-center gap-1 text-xs hover:text-black/70"><svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg> <span id="mockup-comment1">Kommentieren</span></button> 1441 </div> 1442 </div> 1443 </div> 1444 </article> 1445 <article class="platform-post relative rounded-xl bg-white p-4 shadow-[0_0_24px_rgba(0,0,0,0.04)]"> 1446 <button type="button" class="absolute top-4 right-4 p-1 rounded-full text-black/50 hover:text-black/70 hover:bg-black/5 transition-colors" aria-label="Mehr Optionen"> 1447 <svg class="w-5 h-5" viewBox="0 0 24 24" fill="currentColor"><circle cx="12" cy="5" r="1.5"/><circle cx="12" cy="12" r="1.5"/><circle cx="12" cy="19" r="1.5"/></svg> 1448 </button> 1449 <div class="flex gap-3"> 1450 <img src="./public/Users/User_3.jpg" alt="Community-Mitglied" class="w-10 h-10 rounded-full object-cover flex-shrink-0"> 1451 <div class="flex-1 min-w-0"> 1452 <div class="flex items-center gap-2 flex-wrap"> 1453 <span class="font-medium text-sm text-black/90">Tom K.</span> 1454 <span id="mockup-post2-meta" class="text-xs text-black/50">#AskMeAnything · gestern</span> 1455 </div> 1456 <p id="mockup-post2-text" class="text-sm text-black/80 mt-1">Frage an alle: Welche Tools nutzt ihr für Projektmanagement? Wir evaluieren gerade neue Optionen.</p> 1457 <div class="flex items-center gap-4 mt-3 text-black/50"> 1458 <button type="button" class="flex items-center gap-1 text-xs hover:text-black/70"><svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"/></svg> 5</button> 1459 <button type="button" class="flex items-center gap-1 text-xs hover:text-black/70"><svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg> <span id="mockup-comment2">Kommentieren</span></button> 1460 </div> 1461 </div> 1462 </div> 1463 </article> 1464 </div> 1465 </main> 1466 <!-- Right: Upcoming Events --> 1467 <aside class="platform-events w-[240px] flex-shrink-0 max-h-[320px] rounded-xl p-3 bg-white/80 shadow-[0_0_24px_rgba(0,0,0,0.04)] mt-3 mb-3 mr-3 ml-2"> 1468 <h4 id="mockup-upcoming-events" class="text-sm font-semibold text-black/80 mb-2">Upcoming Events</h4> 1469 <div class="space-y-0"> 1470 <div class="flex gap-2 items-start pb-2 mb-2 border-b border-black/10"> 1471 <div class="w-10 h-10 rounded-lg flex-shrink-0 flex flex-col items-center justify-center text-white bg-black/20"> 1472 <span class="text-base font-semibold leading-none">14</span>
1473 <span class="text-[9px] leading-none opacity-90">Jan.</span> 1474 </div> 1475 <div class="min-w-0"> 1476 <p class="text-sm font-medium text-black/80">Team Sync</p> 1477 <p id="mockup-event1-time" class="text-xs text-black/50">10:00 â 12:00 Uhr</p> 1478 <div class="flex -space-x-1.5 mt-1"> 1479 <img src="./public/Users/User_1.jpg" alt="Teilnehmer" class="w-5 h-5 rounded-full border-2 border-white object-cover"><img src="./public/Users/User_2.jpg" alt="Teilnehmer" class="w-5 h-5 rounded-full border-2 border-white object-cover"><img src="./public/Users/User_3.jpg" alt="Teilnehmer" class="w-5 h-5 rounded-full border-2 border-white object-cover"> 1480 </div> 1481 </div> 1482 </div> 1483 <div class="flex gap-2 items-start pb-2 mb-2 border-b border-black/10"> 1484 <div class="w-10 h-10 rounded-lg flex-shrink-0 flex flex-col items-center justify-center text-white platform-events-date" style="background: var(--platform-btn, #7167F5);"> 1485 <span class="text-base font-semibold leading-none">15</span> 1486 <span class="text-[9px] leading-none opacity-90">Jan.</span> 1487 </div> 1488 <div class="min-w-0"> 1489 <p class="text-sm font-medium text-black/80">Q1 Review</p> 1490 <p id="mockup-event2-time" class="text-xs text-black/50">14:00 â 15:00 Uhr</p> 1491 <div class="flex -space-x-1.5 mt-1"> 1492 <img src="./public/Users/User_2.jpg" alt="Teilnehmer" class="w-5 h-5 rounded-full border-2 border-white object-cover"><img src="./public/Users/User_3.jpg" alt="Teilnehmer" class="w-5 h-5 rounded-full border-2 border-white object-cover"><img src="./public/Users/User_4.jpg" alt="Teilnehmer" class="w-5 h-5 rounded-full border-2 border-white object-cover"><img src="./public/Users/User_5.jpg" alt="Teilnehmer" class="w-5 h-5 rounded-full border-2 border-white object-cover"> 1493 </div> 1494 </div> 1495 </div> 1496 <div class="flex gap-2 items-start pt-3"> 1497 <div class="w-10 h-10 rounded-lg flex-shrink-0 flex flex-col items-center justify-center text-white bg-black/20"> 1498 <span class="text-base font-semibold leading-none">16</span> 1499 <span class="text-[9px] leading-none opacity-90">Feb.</span> 1500 </div> 1501 <div class="min-w-0"> 1502 <p class="text-sm font-medium text-black/80">Workshop</p> 1503 <p id="mockup-event3-time" class="text-xs text-black/50">09:00 â 11:00 Uhr</p> 1504 <div class="flex -space-x-1.5 mt-1"> 1505 <img src="./public/Users/User_4.jpg" alt="Teilnehmer" class="w-5 h-5 rounded-full border-2 border-white object-cover"><img src="./public/Users/User_5.jpg" alt="Teilnehmer" class="w-5 h-5 rounded-full border-2 border-white object-cover"><img src="./public/Users/User_6.jpg" alt="Teilnehmer" class="w-5 h-5 rounded-full border-2 border-white object-cover"> 1506 </div> 1507 </div> 1508 </div> 1509 </div> 1510 </aside> 1511 <!-- Messages â Nachrichten-Ãbersicht, schmal rechts --> 1512 <div class="platform-messages-toggle w-[220px] flex-shrink-0 flex flex-col bg-white/95 shadow-[0_0_24px_rgba(0,0,0,0.04)]" id="platform-messages-area"> 1513 <div class="px-3 py-2 flex items-center justify-between flex-shrink-0"> 1514 <span id="mockup-messages-title" class="text-sm font-semibold text-black/80">Nachrichten</span> 1515 <div class="flex items-center gap-2"> 1516 <button type="button" class="p-0.5 hover:bg-black/5 rounded transition-colors" aria-label="Neue Nachricht"> 1517 <svg class="w-4 h-4 text-black/50" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="5" x2="12" y2="19"/><line x1="5" y1="12" x2="19" y2="12"/></svg> 1518 </button>
1519 <svg class="w-4 h-4 text-black/50" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M18 15l-6-6-6 6"/></svg> 1520 </div> 1521 </div> 1522 <div class="flex-1 overflow-y-auto min-h-0 space-y-0.5 py-1"> 1523 <div class="flex items-center gap-2 px-3 py-2 hover:bg-black/5 transition-colors cursor-pointer"> 1524 <img src="./public/User_2.jpg" alt="Community-Mitglied" class="w-9 h-9 rounded-full object-cover flex-shrink-0"> 1525 <div class="min-w-0 flex-1"> 1526 <div class="text-sm font-medium text-black/90 truncate">Leni W.</div> 1527 <div id="mockup-msg1" class="text-xs text-black/50 truncate">Kannst du mir das schicken?</div> 1528 </div> 1529 </div> 1530 <div class="flex items-center gap-2 px-3 py-2 hover:bg-black/5 transition-colors cursor-pointer"> 1531 <img src="./public/Users/User_3.jpg" alt="Community-Mitglied" class="w-9 h-9 rounded-full object-cover flex-shrink-0"> 1532 <div class="min-w-0 flex-1"> 1533 <div class="text-sm font-medium text-black/90 truncate">Tom K.</div> 1534 <div id="mockup-msg2" class="text-xs text-black/50 truncate">Bis morgen dann ð</div> 1535 </div> 1536 </div> 1537 <div class="flex items-center gap-2 px-3 py-2 hover:bg-black/5 transition-colors cursor-pointer"> 1538 <img src="./public/Users/User_4.jpg" alt="Community-Mitglied" class="w-9 h-9 rounded-full object-cover flex-shrink-0"> 1539 <div class="min-w-0 flex-1"> 1540 <div class="text-sm font-medium text-black/90 truncate">Luana T.</div> 1541 <div id="mockup-msg3" class="text-xs text-black/50 truncate">Die Session war mega!</div> 1542 </div> 1543 </div> 1544 <div class="flex items-center gap-2 px-3 py-2 hover:bg-black/5 transition-colors cursor-pointer"> 1545 <img src="./public/Users/User_5.jpg" alt="Community-Mitglied" class="w-9 h-9 rounded-full object-cover flex-shrink-0"> 1546 <div class="min-w-0 flex-1"> 1547 <div class="text-sm font-medium text-black/90 truncate">Anna L.</div> 1548 <div id="mockup-msg4" class="text-xs text-black/50 truncate">Hast du den Link?</div> 1549 </div> 1550 </div> 1551 <div class="flex items-center gap-2 px-3 py-2 hover:bg-black/5 transition-colors cursor-pointer"> 1552 <img src="./public/Users/User_6.jpg" alt="Community-Mitglied" class="w-9 h-9 rounded-full object-cover flex-shrink-0"> 1553 <div class="min-w-0 flex-1"> 1554 <div class="text-sm font-medium text-black/90 truncate">Maxine R.</div> 1555 <div id="mockup-msg5" class="text-xs text-black/50 truncate">Passt 14 Uhr bei dir?</div> 1556 </div> 1557 </div> 1558 <div class="flex items-center gap-2 px-3 py-2 hover:bg-black/5 transition-colors cursor-pointer"> 1559 <img src="./public/participant_1.jpg" alt="Community-Mitglied" class="w-9 h-9 rounded-full object-cover flex-shrink-0"> 1560 <div class="min-w-0 flex-1"> 1561 <div class="text-sm font-medium text-black/90 truncate">Julian H.</div> 1562 <div id="mockup-msg6" class="text-xs text-black/50 truncate">Danke für die Infos ð</div> 1563 </div> 1564 </div> 1565 <div class="flex items-center gap-2 px-3 py-2 hover:bg-black/5 transition-colors cursor-pointer"> 1566 <img src="./public/participant_2.jpg" alt="Community-Mitglied" class="w-9 h-9 rounded-full object-cover flex-shrink-0"> 1567 <div class="min-w-0 flex-1"> 1568 <div class="text-sm font-medium text-black/90 truncate">Felix B.</div> 1569 <div id="mockup-msg7" class="text-xs text-black/50 truncate">Alles klar, mache ich</div> 1570 </div> 1571 </div> 1572 <div class="flex items-center gap-2 px-3 py-2 hover:bg-black/5 transition-colors cursor-pointer"> 1573 <img src="./public/participant_3.jpg" alt="Community-Mitglied" class="w-9 h-9 rounded-full object-cover flex-shrink-0"> 1574 <div class="min-w-0 flex-1"> 1575 <div class="text-sm font-medium text-black/90 truncate">Lisa M.</div> 1576 <div id="mockup-msg8" class="text-xs text-black/50 truncate">Bis gleich im Call!</div> 1577 </div> 1578 </div> 1579 <div class="flex items-center gap-2 px-3 py-2 hover:bg-black/5 transition-colors cursor-pointer"> 1580 <img src="./public/participant_4.jpg" alt="Community-Mitglied" class="w-9 h-9 rounded-full object-cover flex-shrink-0"> 1581 <div class="min-w-0 flex-1"> 1582 <div class="text-sm font-medium text-black/90 truncate">David K.</div> 1583 <div class="text-xs text-black/50 truncate">Klingt gut für mich</div> 1584 </div> 1585 </div> 1586 <div class="flex items-center gap-2 px-3 py-2 hover:bg-black/5 transition-colors cursor-pointer"> 1587 <img src="./public/participant_5.jpg" alt="Community-Mitglied" class="w-9 h-9 rounded-full object-cover flex-shrink-0"> 1588 <div class="min-w-0 flex-1"> 1589 <div class="text-sm font-medium text-black/90 truncate">Nina S.</div> 1590 <div class="text-xs text-black/50 truncate">Hab die Datei angehängt</div> 1591 </div> 1592 </div> 1593 <div class="flex items-center gap-2 px-3 py-2 hover:bg-black/5 transition-colors cursor-pointer"> 1594 <img src="./public/participant_6.jpg" alt="Community-Mitglied" class="w-9 h-9 rounded-full object-cover flex-shrink-0"> 1595 <div class="min-w-0 flex-1"> 1596 <div class="text-sm font-medium text-black/90 truncate">Paula W.</div> 1597 <div class="text-xs text-black/50 truncate">Melde mich gleich</div> 1598 </div> 1599 </div> 1600 </div> 1601 </div> 1602 </div> 1603 </div> 1604 </div> 1605 </div> 1606 </section> 1607 1608 <!-- App Wireframes Section --> 1609 <section id="app-wireframes-section" class="pt-10 bg-white overflow-x-visible relative"> 1610 <!-- Header mit App Icon, Headline und Untertitel --> 1611 <div class="max-w-4xl mx-auto text-center mb-16 px-6"> 1612 <div class="flex justify-center mb-6 animate-on-scroll"> 1613 <img id="app-icon-cycle" src="./public/App_Icon.png" alt="App Icon" class="w-32 h-32 rounded-3xl object-contain"> 1614 </div> 1615 <h2 id="app-title" class="text-4xl md:text-5xl lg:text-6xl font-medium mb-4 leading-normal pb-2 animate-on-scroll delay-100" style="background: linear-gradient(to right, #2A2A2A, rgba(42, 42, 42, 0.9), rgba(42, 42, 42, 0.3)); -webkit-background-clip: text; background-clip: text; color: transparent; font-family: 'Cal Sans', sans-serif;"> 1616 Generiere deine eigene App 1617 </h2> 1618 <p id="app-subtitle" class="text-base md:text-lg text-black/50 max-w-3xl mx-auto mb-6 leading-relaxed font-normal animate-on-scroll delay-200"> 1619 Deine personalisierte Community App, die du über den App Store und Google Play Store zur Verfügung stellen kannst 1620 </p> 1621 <div class="flex justify-center mb-6 animate-on-scroll delay-300"> 1622 <button id="app-generate-button" data-termin-modal="open" class="px-6 py-3 text-sm rounded-full font-medium transition-all duration-300 flex items-center gap-2 group" style="color: #2A2A2A; border: 2px solid #2A2A2A; background: transparent;">
1623 <span id="app-generate-btn-text">Termin vereinbaren</span> 1624 <svg class="transition-transform duration-300 group-hover:translate-x-1" style="display: inline-block; width: 18px; height: 18px; vertical-align: middle;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"> 1625 <path id="app-generate-button-arrow" d="M5 12h14M12 5l7 7-7 7" stroke="#2A2A2A" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 1626 </svg> 1627 </button> 1628 </div> 1629 </div> 1630 1631 <!-- Slider Container mit ausreichend Platz --> 1632 <div class="w-full relative" id="app-slider-wrapper"> 1633 <div class="w-full sticky top-20 overflow-x-hidden overflow-y-visible" id="app-slider-container" style="height: auto; padding-top: 2rem; padding-bottom: 4rem;"> 1634 <div class="flex gap-0 app-slider items-start" id="app-slider" style="width: fit-content; will-change: transform;"> 1635 <div class="flex-shrink-0 wireframe-container" style="width: calc((100vw - 2rem) / 3); margin-right: -8rem;"> 1636 <img src="./public/App_Wireframe_1.png" alt="App Wireframe" class="wireframe-image w-full h-auto rounded-[3rem] object-contain transition-transform duration-300" style="max-height: calc(100vh - 9rem); filter: drop-shadow(0 0 15px rgba(35, 118, 194, 0.3));"> 1637 </div> 1638 <div class="flex-shrink-0 wireframe-container" style="width: calc((100vw - 2rem) / 3); margin-right: -8rem;"> 1639 <img src="./public/App_Wireframe_2.png" alt="App Wireframe" class="wireframe-image w-full h-auto rounded-[3rem] object-contain transition-transform duration-300" style="max-height: calc(100vh - 9rem); filter: drop-shadow(0 0 15px rgba(58, 98, 74, 0.3));"> 1640 </div> 1641 <div class="flex-shrink-0 wireframe-container" style="width: calc((100vw - 2rem) / 3); margin-right: -8rem;"> 1642 <img src="./public/App_Wireframe_3.png" alt="App Wireframe" class="wireframe-image w-full h-auto rounded-[3rem] object-contain transition-transform duration-300" style="max-height: calc(100vh - 9rem); filter: drop-shadow(0 0 15px rgba(244, 201, 150, 0.3));"> 1643 </div> 1644 <div class="flex-shrink-0 wireframe-container" style="width: calc((100vw - 2rem) / 3); margin-right: -8rem;"> 1645 <img src="./public/App_Wireframe_4.png" alt="App Wireframe" class="wireframe-image w-full h-auto rounded-[3rem] object-contain transition-transform duration-300" style="max-height: calc(100vh - 9rem); filter: drop-shadow(0 0 15px rgba(246, 197, 244, 0.3));"> 1646 </div> 1647 <div class="flex-shrink-0 wireframe-container" style="width: calc((100vw - 2rem) / 3); margin-right: -8rem;"> 1648 <img src="./public/App_Wireframe_5.png" alt="App Wireframe" class="wireframe-image w-full h-auto rounded-[3rem] object-contain transition-transform duration-300" style="max-height: calc(100vh - 9rem); filter: drop-shadow(0 0 15px rgba(153, 155, 243, 0.3));"> 1649 </div> 1650 <div class="flex-shrink-0 wireframe-container" style="width: calc((100vw - 2rem) / 3);"> 1651 <img src="./public/App_Wireframe_6.png" alt="App Wireframe" class="wireframe-image w-full h-auto rounded-[3rem] object-contain transition-transform duration-300" style="max-height: calc(100vh - 9rem); filter: drop-shadow(0 0 15px rgba(0, 0, 0, 0.3));"> 1652 </div> 1653 </div> 1654 </div> 1655 <!-- Spacer für Scroll-Bereich (nur Desktop) --> 1656 <div id="app-slider-spacer" class="h-[200vh]"></div> 1657 </div> 1658 </section> 1659 1660 <!-- Customer Stories Section --> 1661 <div id="customer-stories-header" class="px-6 lg:px-8 -mt-[190vh] relative z-10 bg-white"> 1662 <div class="text-center mb-8 animate-on-scroll pt-16"> 1663 <h2 id="stories-title" class="text-4xl md:text-5xl lg:text-6xl font-medium mb-4 leading-normal pb-2" style="background: linear-gradient(to right, #2A2A2A, rgba(42, 42, 42, 0.9), rgba(42, 42, 42, 0.3)); -webkit-background-clip: text; background-clip: text; color: transparent; font-family: 'Cal Sans', sans-serif;"> 1664 Customer Stories 1665 </h2> 1666 <p id="stories-subtitle" class="text-base md:text-lg text-black/50 max-w-3xl mx-auto mb-6 leading-relaxed font-normal"> 1667 Erfolgsgeschichten unserer Kunden 1668 </p> 1669 </div> 1670 </div> 1671 <section id="stories" class="pt-16 pb-16 px-6 lg:px-8 relative z-10 bg-white"> 1672 <div class="w-full flex flex-col gap-6 px-6 lg:px-8"> 1673 <!-- Zeile 1: Biyon â dunkle Box links (Logo + Text), lila Box rechts (nur Bild) --> 1674 <div class="grid grid-cols-1 md:grid-cols-2 gap-4 md:gap-6 story-row min-h-[720px] md:min-
1674h-[680px]"> 1675 <div class="story-dark-box flex flex-col justify-center p-8 lg:p-10 rounded-[2rem]" style="background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 50%, #1f1f1f 100%); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12), 0 16px 64px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.05), inset 0 -1px 0 rgba(0, 0, 0, 0.25); border: 1px solid rgba(255, 255, 255, 0.06); border-left: 4px solid #7167F5;"> 1676 <div class="text-left"> 1677 <p id="story1-headline" class="text-2xl md:text-3xl lg:text-4xl font-medium text-white mb-3 leading-relaxed" style="font-family: 'Suisse Intl', sans-serif; font-weight: 500; line-height: 1.55;">Team Selbstliebe â Exklusiver Raum für Wachstum und echte Verbindungen.</p> 1678 <div class="flex items-center -space-x-4 mb-5"> 1679 <img src="./public/Customers/Members/Biyon_1.jpg" alt="Community-Mitglied" class="w-12 h-12 rounded-full object-cover border-[3px] border-[#2d2d2d] flex-shrink-0"> 1680 <img src="./public/Customers/Members/Biyon_2.jpg" alt="Community-Mitglied" class="w-12 h-12 rounded-full object-cover border-[3px] border-[#2d2d2d] flex-shrink-0"> 1681 <img src="./public/Customers/Members/Biyon_3.jpg" alt="Community-Mitglied" class="w-12 h-12 rounded-full object-cover border-[3px] border-[#2d2d2d] flex-shrink-0"> 1682 <img src="./public/Customers/Members/Biyon_4.jpg" alt="Community-Mitglied" class="w-12 h-12 rounded-full object-cover border-[3px] border-[#2d2d2d] flex-shrink-0"> 1683 <span class="w-12 h-12 rounded-full flex items-center justify-center text-white text-sm font-medium flex-shrink-0 border-[3px] border-[#2d2d2d]" style="background-color: #7167F5;">+ â¦</span> 1684 </div> 1685 <p id="story1-body" class="text-sm md:text-base text-white/80 leading-relaxed mb-6" style="font-family: 'Suisse Intl', sans-serif;">Biyon Kattilathu hat mit Glymmer seine "Team Selbstliebe" Community aufgebaut â einen geschützten Ort voller Inspiration, Austausch und exklusiver Inhalte.</p> 1686 <div class="flex flex-col sm:flex-row gap-4"> 1687 <a id="story1-cta" href="/preise.html" class="px-6 py-3 text-sm font-medium bg-secondary text-white rounded-full hover:bg-secondary-hover transition flex items-center gap-2 group w-fit" style="box-shadow: 0 4px 20px rgba(113, 103, 245, 0.5);"> 1688 Mach's wie Biyon 1689 <svg class="transition-transform duration-300 group-hover:translate-x-1" style="display: inline-block; width: 18px; height: 18px; vertical-align: middle;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"> 1690 <path d="M5 12h14M12 5l7 7-7 7" stroke="white" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 1691 </svg> 1692 </a> 1693 <a href="#" data-termin-modal="open" class="story-cta-book px-6 py-3 text-sm font-medium bg-white rounded-full hover:bg-gray-50 transition w-fit" style="color: #2A2A2A; box-shadow: 0 4px 20px rgba(255, 255, 255, 0.5);"> 1694 Termin vereinbaren 1695 </a> 1696 </div> 1697 </div> 1698 </div> 1699 <div class="story-colored-box relative rounded-[2rem] overflow-hidden min-h-[680px]" style="box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);"> 1700 <img src="./public/Customers/Biyon_Profil.jpg" alt="Biyon Kattilathu" class="absolute inset-0 w-full h-full object-cover"> 1701 <div class="absolute inset-0 flex items-center justify-center z-10" style="background: rgba(0, 0, 0, 0.45);"> 1702 <img src="./public/Customers/Biyon_Logo.png" alt="Biyon Logo" class="h-16 md:h-20 w-auto object-contain drop-shadow-lg"> 1703 </div> 1704 </div> 1705 </div> 1706 <!-- Zeile 2: Baby Got Business â dunkle Box links (Logo + Text), rosa Box rechts (nur Bild) --> 1707 <div class="grid grid-cols-1 md:grid-cols-2 gap-4 md:gap-6 story-row min-h-[720px] md:min-h-[680px]"> 1708 <div class="story-dark-box flex flex-col justify-center p-8 lg:p-10 rounded-[2rem]" style="background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 50%, #1f1f1f 100%); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12), 0 16px 64px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.05), inset 0 -1px 0 rgba(0, 0, 0, 0.25); border: 1px solid rgba(255, 255, 255, 0.06); border-left: 4px solid #c18bd0;"> 1709 <div class="text-left"> 1710 <p id="story2-headline" class="text-2xl md:text-3xl lg:text-4xl font-medium text-white mb-3 leading-relaxed" style="font-family: 'Suisse Intl', sans-serif; font-weight: 500; line-height: 1.55;">Social-Media-Bootcamps â Live-Sessions, Feedback und Community in einem.</p> 1711 <div class="flex items-center -space-x-4 mb-5"> 1712 <img src="./public/Customers/Members/BGB_1.jpg" alt="Community-Mitglied" class="w-12 h-12 rounded-full object-cover border-[3px] border-[#2d2d2d] flex-shrink-0"> 1713 <img src="./public/Customers/Members/BGB_2.jpg" alt="Community-Mitglied" class="w-12 h-12 rounded-full object-cover border-[3px] border-[#2d2d2d] flex-shrink-0"> 1714 <img src="./public/Customers/Members/BGB_3.jpg" alt="Community-Mitglied" class="w-12 h-12 rounded-full object-cover border-[3px] border-[#2d2d2d] flex-shrink-0">
1715 <span class="w-12 h-12 rounded-full flex items-center justify-center text-white text-sm font-medium flex-shrink-0 border-[3px] border-[#2d2d2d]" style="background-color: #c18bd0;">+71</span> 1716 </div> 1717 <p id="story2-body" class="text-sm md:text-base text-white/80 leading-relaxed mb-6" style="font-family: 'Suisse Intl', sans-serif;">Baby got Business hat mit Glymmer ihre 10-wöchigen Social-Media-Bootcamps umgesetzt â Live-Intensiv-Sessions, Workbooks und persönliches Feedback.</p> 1718 <div class="flex flex-col sm:flex-row gap-4"> 1719 <a id="story2-cta" href="/preise.html" class="px-6 py-3 text-sm font-medium text-white rounded-full transition flex items-center gap-2 group w-fit bg-[#c18bd0] hover:bg-[#b07ac0]" style="box-shadow: 0 4px 20px rgba(193, 139, 208, 0.5);"> 1720 Mach's wie BGB 1721 <svg class="transition-transform duration-300 group-hover:translate-x-1" style="display: inline-block; width: 18px; height: 18px; vertical-align: middle;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"> 1722 <path d="M5 12h14M12 5l7 7-7 7" stroke="white" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 1723 </svg> 1724 </a> 1725 <a href="#" data-termin-modal="open" class="story-cta-book px-6 py-3 text-sm font-medium bg-white rounded-full hover:bg-gray-50 transition w-fit" style="color: #2A2A2A; box-shadow: 0 4px 20px rgba(255, 255, 255, 0.5);"> 1726 Termin vereinbaren 1727 </a> 1728 </div> 1729 </div> 1730 </div> 1731 <div class="story-colored-box relative rounded-[2rem] overflow-hidden min-h-[680px]" style="box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);"> 1732 <img src="./public/Customers/BGB_Profil.jpg" alt="Baby Got Business" class="absolute inset-0 w-full h-full object-cover"> 1733 <div class="absolute inset-0 flex items-center justify-center z-10" style="background: rgba(0, 0, 0, 0.45);"> 1734 <img src="./public/Customers/BGB_Logo.png" alt="Baby Got Business Logo" class="h-16 md:h-20 w-auto object-contain drop-shadow-lg"> 1735 </div> 1736 </div> 1737 </div> 1738 <!-- Zeile 3: MAK Nachhilfe â dunkle Box links (Logo + Text), gelbe Box rechts (nur Bild) --> 1739 <div class="grid grid-cols-1 md:grid-cols-2 gap-4 md:gap-6 story-row min-h-[720px] md:min-h-[680px]"> 1740 <div class="story-dark-box flex flex-col justify-center p-8 lg:p-10 rounded-[2rem]" style="background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 50%, #1f1f1f 100%); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12), 0 16px 64px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.05), inset 0 -1px 0 rgba(0, 0, 0, 0.25); border: 1px solid rgba(255, 255, 255, 0.06); border-left: 4px solid #c3b34b;"> 1741 <div class="text-left"> 1742 <p id="story3-headline" class="text-2xl md:text-3xl lg:text-4xl font-medium text-white mb-3 leading-relaxed" style="font-family: 'Suisse Intl', sans-serif; font-weight: 500; line-height: 1.55;">Digitale Nachhilfe â Individuelle Sessions und Gruppenunterricht online.</p> 1743 <div class="flex items-center -space-x-4 mb-5"> 1744 <img src="./public/Customers/Members/MAK_1.jpg" alt="Community-Mitglied" class="w-12 h-12 rounded-full object-cover border-[3px] border-[#2d2d2d] flex-shrink-0"> 1745 <img src="./public/Customers/Members/MAK_2.jpg" alt="Community-Mitglied" class="w-12 h-12 rounded-full object-cover border-[3px] border-[#2d2d2d] flex-shrink-0"> 1746 <img src="./public/Customers/Members/MAK_3.jpg" alt="Community-Mitglied" class="w-12 h-12 rounded-full object-cover border-[3px] border-[#2d2d2d] flex-shrink-0"> 1747 <img src="./public/Customers/Members/MAK_4.jpg" alt="Community-Mitglied" class="w-12 h-12 rounded-full object-cover border-[3px] border-[#2d2d2d] flex-shrink-0"> 1748 <span class="w-12 h-12 rounded-full flex items-center justify-center text-white text-sm font-medium flex-shrink-0 border-[3px] border-[#2d2d2d]" style="background-color: #c3b34b;">+99</span> 1749 </div> 1750 <p id="story3-body" class="text-sm md:text-base text-white/80 leading-relaxed mb-6" style="font-family: 'Suisse Intl', sans-serif;">MAK Nachhilfe setzt Glymmer für ihre Online-Nachhilfe ein â vom 1-zu-1-Unterricht bis zu Gruppenkursen mit interaktiver Tafel und Materialien.</p> 1751 <div class="flex flex-col sm:flex-row gap-4"> 1752 <a id="story3-cta" href="/preise.html" class="px-6 py-3 text-sm font-medium text-white rounded-full transition flex items-center gap-2 group w-fit bg-[#c3b34b] hover:bg-[#b0a342]" style="box-shadow: 0 4px 20px rgba(195, 179, 75, 0.5);"> 1753 Mach's wie MAK 1754 <svg class="transition-transform duration-300 group-hover:translate-x-1" style="display: inline-block; width: 18px; height: 18px; vertical-align: middle;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"> 1755 <path d="M5 12h14M12 5l7 7-7 7" stroke="white" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 1756 </svg> 1757 </a> 1758 <a href="#" data-termin-modal="open" class="story-cta-book px-6 py-3 text-sm font-medium bg-white rounded-full hover:bg-gray-50 transition w-fit" style="color: #2A2A2A; box-shadow: 0 4px 20px rgba(255, 255, 255, 0.5);"> 1759 Termin vereinbaren 1760 </a> 1761 </div> 1762 </div> 1763 </div> 1764 <div class="story-colored-box relative rounded-[2rem] overflow-hidden min-h-[680px]" style="box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);"> 1765 <img src="./public/Customers/MAK_Profil.png" alt="MAK Nachhilfe" class="absolute inset-0 w-full h-full object-cover"> 1766 <div class="absolute inset-0 flex items-center justify-center z-10" style="background: rgba(0, 0, 0, 0.45);"> 1767 <img src="./public/Customers/MAK_Logo.png" alt="MAK Nachhilfe Logo" class="h-16 md:h-20 w-auto object-contain drop-shadow-lg"> 1768 </div> 1769 </div> 1770 </div> 1771 </div> 1772 </section> 1773 1774 <!-- Why Community 2026 Section --> 1775 <section id="why-community-2026" class="pt-0 pb-20 px-0 bg-white -mt-14"> 1776 <div class="w-full px-6 lg:px-8"> 1777 <div class="animate-on-scroll delay-100"> 1778 <h2 id="why-community-title" class="text-3xl md:text-4xl lg:text-5xl font-medium mb-6 leading-normal pb-2" style="background: linear-gradient(to right, #2A2A2A, rgba(42, 42, 42, 0.9), rgba(42, 42, 42, 0.3)); -webkit-background-clip: text; background-clip: text; color: transparent; font-family: 'Cal Sans', sans-serif;"> 1779 Darum ist deine eigene Community ab 2026 unverzichtbar 1780 </h2> 1781 <p id="quote-text" class="quote-text-compact text-6xl md:text-7xl lg:text-8xl font-medium mb-6 leading-relaxed pb-2 text-center px-16 lg:px-32" style="font-family: 'Cal Sans', sans-serif;">
1782 <span class="quote-word" style="opacity: 0.15;">Social</span> 1783 <span class="quote-word" style="opacity: 0.15;">Media</span> 1784 <span class="quote-word" style="opacity: 0.15;">kann</span> 1785 <span class="quote-word" style="opacity: 0.15;">dich</span> 1786 <span class="quote-word" style="opacity: 0.15;">jederzeit</span> 1787 <span class="quote-word" style="opacity: 0.15;">verstecken.</span> 1788 <span class="quote-word" style="opacity: 0.15;">Deine</span> 1789 <span class="quote-word" style="opacity: 0.15;">eigene</span> 1790 <span class="quote-word" style="opacity: 0.15;">Community</span> 1791 <span class="quote-word" style="opacity: 0.15;">nicht.</span> 1792 </p> 1793 <div class="flex justify-center items-center -space-x-4 mt-8 mb-6"> 1794 <img src="./public/Users/User_1.jpg" alt="User 1" class="w-20 h-20 rounded-full object-cover border-4 border-white"> 1795 <img src="./public/Users/User_2.jpg" alt="User 2" class="w-20 h-20 rounded-full object-cover border-4 border-white"> 1796 <img src="./public/Users/User_3.jpg" alt="User 3" class="w-20 h-20 rounded-full object-cover border-4 border-white"> 1797 <img src="./public/Users/User_4.jpg" alt="User 4" class="w-20 h-20 rounded-full object-cover border-4 border-white"> 1798 <img src="./public/Users/User_5.jpg" alt="User 5" class="w-20 h-20 rounded-full object-cover border-4 border-white"> 1799 <img src="./public/Users/User_6.jpg" alt="User 6" class="w-20 h-20 rounded-full object-cover border-4 border-white"> 1800 </div> 1801 <div class="flex justify-center mt-6 mb-16"> 1802 <button id="mehr-dazu-button" class="px-6 py-3 text-sm rounded-full font-medium transition flex items-center gap-2 group" style="color: #2A2A2A; border: 2px solid #2A2A2A; background: transparent;"> 1803 <span id="mehr-dazu-text">Mehr dazu</span> 1804 <svg class="transition-transform duration-300 group-hover:translate-x-1" style="display: inline-block; width: 18px; height: 18px; vertical-align: middle;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"> 1805 <path d="M5 12h14M12 5l7 7-7 7" stroke="#2A2A2A" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 1806 </svg> 1807 </button> 1808 </div> 1809 </div> 1810 </div> 1811 </section> 1812 1813 <!-- CTA Section --> 1814 <section class="py-40 px-6 lg:px-8 relative overflow-hidden" style="background-color: #2A2A2A;"> 1815 <!-- Animated Banner --> 1816 <div class="absolute inset-0 flex items-start pointer-events-none overflow-hidden" style="z-index: 1;"> 1817 <div class="banner-container" style="position: absolute; width: 200%; top: -30px; left: -50%; transform: rotate(-2deg); background-color: #7167F5; padding: 40px 0; box-shadow: 0 4px 20px rgba(113, 103, 245, 0.5);"> 1818 <div class="banner-content flex items-center whitespace-nowrap" style="animation: scrollBanner 30s linear infinite;"> 1819 <span class="banner-text" style="display: inline-flex; align-items: center; gap: 12px; padding: 0; font-size: 2rem; font-weight: 700; color: #2A2A2A; font-family: 'Cal Sans', sans-serif;"> 1820 GROW YOUR COMMUNITY 1821 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1822 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1823 </svg> 1824 ANALYSE YOUR COMMUNITY 1825 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1826 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1827 </svg> 1828 FEED YOUR COMMUNITY 1829 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1830 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1831 </svg> 1832 ENGAGE WITH YOUR COMMUNITY 1833 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1834 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1835 </svg> 1836 STRENGTHEN YOUR COMMUNITY 1837 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1838 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1839 </svg> 1840 BUILD YOUR COMMUNITY 1841 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1842 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1843 </svg> 1844 </span> 1845 <!-- Duplikat für nahtlose Animation -->
1846 <span class="banner-text" style="display: inline-flex; align-items: center; gap: 12px; padding: 0; font-size: 2rem; font-weight: 700; color: #2A2A2A; font-family: 'Cal Sans', sans-serif;"> 1847 GROW YOUR COMMUNITY 1848 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1849 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1850 </svg> 1851 ANALYSE YOUR COMMUNITY 1852 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1853 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1854 </svg> 1855 FEED YOUR COMMUNITY 1856 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1857 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1858 </svg> 1859 ENGAGE WITH YOUR COMMUNITY 1860 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1861 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1862 </svg> 1863 STRENGTHEN YOUR COMMUNITY 1864 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1865 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1866 </svg> 1867 BUILD YOUR COMMUNITY 1868 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="color: #2A2A2A;"> 1869 <path d="M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill="currentColor"/> 1870 </svg> 1871 </span> 1872 </div> 1873 </div> 1874 </div> 1875 <div class="max-w-4xl mx-auto text-center animate-on-scroll relative" style="z-index: 1; margin-top: 60px;"> 1876 <h2 id="cta-title" class="text-4xl md:text-5xl lg:text-6xl font-medium mb-4 leading-normal pb-2" style="color: #ffffff; font-family: 'Cal Sans', sans-serif;"> 1877 Bereit loszulegen? 1878 </h2> 1879 <p id="cta-subtitle" class="text-base md:text-lg text-white/70 max-w-3xl mx-auto mb-8 leading-relaxed font-normal"> 1880 Starte noch heute und baue deine Community auf 1881 </p> 1882 <div class="flex flex-col sm:flex-row gap-4 justify-center"> 1883 <a href="/preise.html" id="cta-start" class="px-6 py-3 text-sm font-medium bg-secondary text-white rounded-full hover:bg-secondary-hover transition flex items-center gap-2 group" style="box-shadow: 0 4px 20px rgba(113, 103, 245, 0.5);"> 1884 Jetzt starten 1885 <svg class="transition-transform duration-300 group-hover:translate-x-1" style="display: inline-block; width: 18px; height: 18px; vertical-align: middle;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"> 1886 <path d="M5 12h14M12 5l7 7-7 7" stroke="white" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/> 1887 </svg> 1888 </a> 1889 <a href="#" data-termin-modal="open" id="cta-sales" class="px-6 py-3 text-sm font-medium bg-white rounded-full hover:bg-gray-50 transition" style="color: #2A2A2A; box-shadow: 0 4px 20px rgba(255, 255, 255, 0.5);"> 1890 Termin vereinbaren 1891 </a> 1892 </div> 1893 </div> 1894 </section> 1895 1896
1896<script src="./animations.js"></script>
1896 1897
1897<script src="./language.js"></script>
1897 1898
1898<script src="./cursor-follower.js"></script>
1898 1899
1899<script> 1900 // App Slider Scroll Animation 1901 (function() { 1902 const appSection = document.getElementById('app-wireframes-section'); 1903 const sliderWrapper = document.getElementById('app-slider-wrapper'); 1904 const slider = document.getElementById('app-slider'); 1905 1906 if (!appSection || !sliderWrapper || !slider) return; 1907 1908 var isMobile = false; 1909 var isTablet = false; 1910 1911 function checkDevice() { 1912 var nowMobile = window.matchMedia('(max-width: 768px)').matches; 1913 var nowTablet = window.matchMedia('(min-width: 769px) and (max-width: 1024px)').matches; 1914 1915 // Mobile Karussell 1916 if (nowMobile && !slider.classList.contains('app-slider-mobile-loop')) { 1917 var containers = slider.querySelectorAll('.wireframe-container'); 1918 if (containers.length === 6) { 1919 containers.forEach(function(el) { slider.appendChild(el.cloneNode(true)); }); 1920 slider.classList.add('app-slider-mobile-loop'); 1921 } 1922 } 1923 if (!nowMobile && slider.classList.contains('app-slider-mobile-loop')) { 1924 var all = slider.querySelectorAll('.wireframe-container'); 1925 for (var i = 6; i < all.length; i++) all[i].remove(); 1926 slider.classList.remove('app-slider-mobile-loop'); 1927 } 1928 1929 // Tablet Karussell 1930 if (nowTablet && !slider.classList.contains('app-slider-tablet-loop')) { 1931 var containers = slider.querySelectorAll('.wireframe-container'); 1932 if (containers.length === 6) { 1933 containers.forEach(function(el) { slider.appendChild(el.cloneNode(true)); }); 1934 slider.classList.add('app-slider-tablet-loop'); 1935 } 1936 } 1937 if (!nowTablet && slider.classList.contains('app-slider-tablet-loop')) { 1938 var all = slider.querySelectorAll('.wireframe-container'); 1939 for (var i = 6; i < all.length; i++) all[i].remove(); 1940 slider.classList.remove('app-slider-tablet-loop'); 1941 } 1942 1943 isMobile = nowMobile; 1944 isTablet = nowTablet; 1945 } 1946 checkDevice(); 1947 window.addEventListener('resize', function() { 1948 checkDevice(); 1949 updateSlider(); 1950 }); 1951 1952 function updateSlider() { 1953 // Auf Mobile und Tablet: CSS-Animation, kein Scroll-basiertes Transform 1954 if (isMobile || isTablet) { 1955 slider.style.transform = ''; 1956 return; 1957 } 1958 const sectionRect = appSection.getBoundingClientRect(); 1959 const wrapperRect = sliderWrapper.getBoundingClientRect(); 1960 const sectionTop = sectionRect.top; 1961 const sectionBottom = sectionRect.bottom; 1962 const viewportHeight = window.innerHeight; 1963 1964 // Berechne, ob die Section sichtbar ist 1965 if (sectionBottom > 0 && sectionTop < viewportHeight) { 1966 // Berechne die maximale Verschiebung 1967 const sliderWidth = slider.scrollWidth; 1968 const containerWidth = window.innerWidth; 1969 const maxTranslate = Math.max(0, sliderWidth - containerWidth); 1970 1971 // Berechne den Fortschritt basierend auf dem Scroll-Progress durch die Section 1972 // Start: wenn Section oben im Viewport erscheint 1973 // Ende: wenn Section komplett durchgescrollt ist 1974 const sectionStart = sectionRect.top; 1975 const sectionEnd = sectionRect.bottom - viewportHeight; 1976 const scrollRange = sectionEnd - sectionStart; 1977 1978 if (scrollRange > 0) { 1979 const scrollProgress = Math.max(0, Math.min(1, (viewportHeight - sectionStart) / scrollRange)); 1980 const scrollOffset = scrollProgress * maxTranslate; 1981 slider.style.transform = `translateX(-${scrollOffset}px)`; 1982 } else { 1983 // Fallback wenn Section zu klein ist 1984 slider.style.transform = 'translateX(0)'; 1985 } 1986 } 1987 } 1988 1989 let ticking = false; 1990 function onScroll() { 1991 if (!ticking) { 1992 window.requestAnimationFrame(() => { 1993 updateSlider(); 1994 ticking = false; 1995 }); 1996 ticking = true; 1997 } 1998 } 1999 2000 window.addEventListener('scroll', onScroll, { passive: true }); 2001 window.addEventListener('resize', function() { 2002 checkMobile(); 2003 updateSlider(); 2004 }); 2005 updateSlider(); // Initial update 2006 })(); 2007 </script>
2007 2008
2008<script> 2009 // App Icon Cycle: beim Erreichen der Sektion durchflippen, dann alle 5 Sekunden wiederholen 2010 (function() { 2011 const section = document.getElementById('app-wireframes-section'); 2012 const img = document.getElementById('app-icon-cycle'); 2013 if (!section || !img) return; 2014 2015 const icons = [ 2016 './public/App_1.png', 2017 './public/App_2.png', 2018 './public/App_3.png', 2019 './public/App_4.png', 2020 './public/App_5.png', 2021 './public/App_Icon.png' 2022 ]; 2023 const flipIntervalMs = 120; 2024 const repeatEveryMs = 5000; 2025 let repeatTimer = null; 2026 2027 function runFlip() { 2028 let i = 0; 2029 const step = setInterval(function() { 2030 img.src = icons[i]; 2031 i++; 2032 if (i >= icons.length) clearInterval(step); 2033 }, flipIntervalMs); 2034 } 2035 2036 const observer = new IntersectionObserver(function(entries) { 2037 entries.forEach(function(entry) { 2038 if (entry.isIntersecting) { 2039 runFlip(); 2040 if (!repeatTimer) { 2041 repeatTimer = setInterval(runFlip, repeatEveryMs); 2042 } 2043 } else { 2044 if (repeatTimer) { 2045 clearInterval(repeatTimer); 2046 repeatTimer = null; 2047 } 2048 } 2049 }); 2050 }, { rootMargin: '0px', threshold: 0.2 }); 2051 2052 observer.observe(section); 2053 })(); 2054 </script>
2054 2055
2055<script> 2056 // Platform Preview Personalization 2057 (function() { 2058 const frame = document.getElementById('platform-preview-frame'); 2059 const btnColor = document.getElementById('platform-btn-color'); 2060 const bgTop = document.getElementById('platform-bg-top'); 2061 const logoFile = document.getElementById('platform-logo-file'); 2062 const previewLogo = document.getElementById('platform-preview-logo'); 2063 const mobileHeaderLogo = document.getElementById('platform-mobile-header-logo'); 2064 const defaultLogoDark = './public/Glymmer_Logo_Dunkel.png'; 2065 const defaultLogoLight = './public/Glymmer_Logo_weiss.png'; 2066 const menuKalender = document.getElementById('platform-menu-kalender'); 2067 const menuMediathek = document.getElementById('platform-menu-mediathek'); 2068 const menuBenachrichtigung = document.getElementById('platform-menu-benachrichtigung'); 2069 const menuChat = document.getElementById('platform-menu-chat'); 2070 const darkMode = document.getElementById('platform-dark-mode'); 2071 2072 if (!frame) return; 2073 2074 function hex(val) { 2075 const h = val.replace('#', ''); 2076 return h.length === 3 ? '#' + [h[0],h[0],h[1],h[1],h[2],h[2]].join('') : '#' + h; 2077 } 2078 2079 if (btnColor) { 2080 btnColor.addEventListener('input', function() { 2081 frame.style.setProperty('--platform-btn', hex(this.value)); 2082 }); 2083 } 2084 2085 if (bgTop) { 2086 bgTop.addEventListener('input', function() { 2087 frame.style.setProperty('--platform-bg-top', hex(this.value)); 2088 }); 2089 } 2090 2091 if (logoFile && previewLogo) { 2092 logoFile.addEventListener('change', function() { 2093 const f = this.files && this.files[0]; 2094 if (f) { 2095 const url = URL.createObjectURL(f); 2096 previewLogo.src = url; 2097 previewLogo.dataset.customUrl = url; 2098 if (mobileHeaderLogo) mobileHeaderLogo.src = url; 2099 } 2100 }); 2101 } 2102 2103 function toggleMenuItem(checkbox, selector, alsoHide) { 2104 if (!checkbox || !frame) return; 2105 const el = frame.querySelector(selector); 2106 const extra = alsoHide ? frame.querySelector(alsoHide) : null; 2107 function update() { 2108 const hide = !checkbox.checked; 2109 if (el) el.classList.toggle('platform-menu-hidden', hide); 2110 if (extra) extra.classList.toggle('platform-menu-hidden', hide); 2111 } 2112 checkbox.addEventListener('change', update); 2113 update(); 2114 } 2115 toggleMenuItem(menuKalender, '.platform-nav-item.platform-menu-kalender'); 2116 toggleMenuItem(menuMediathek, '.platform-nav-item.platform-menu-mediathek'); 2117 toggleMenuItem(menuBenachrichtigung, '.platform-nav-item.platform-menu-benachrichtigung'); 2118 toggleMenuItem(menuChat, '.platform-nav-item.platform-menu-chat', '#platform-messages-area'); 2119 2120 if (darkMode && previewLogo) { 2121 function updateDarkMode() { 2122 const isDark = darkMode.checked; 2123 frame.classList.toggle('platform-preview-dark', isDark); 2124 if (previewLogo.dataset.customUrl) { 2125 if (mobileHeaderLogo) mobileHeaderLogo.src = previewLogo.src; 2126 return; 2127 } 2128 const src = isDark ? defaultLogoLight : defaultLogoDark; 2129 previewLogo.src = src; 2130 if (mobileHeaderLogo) mobileHeaderLogo.src = src; 2131 } 2132 darkMode.addEventListener('change', updateDarkMode); 2133 updateDarkMode(); 2134 } 2135 2136 // Mobile: Menü- und Chat-Button öffnen/schlieÃen, Overlay schlieÃt beide 2137 const menuBtn = document.querySelector('.platform-mobile-menu-btn'); 2138 const chatBtn = document.querySelector('.platform-mobile-chat-btn'); 2139 const overlay = document.getElementById('platform-mobile-overlay'); 2140 if (menuBtn) { 2141 menuBtn.addEventListener('click', function() { 2142 frame.classList.toggle('platform-mobile-menu-open'); 2143 if (frame.classList.contains('platform-mobile-menu-open')) frame.classList.remove('platform-mobile-chat-open'); 2144 }); 2145 } 2146 if (chatBtn) { 2147 chatBtn.addEventListener('click', function() { 2148 frame.classList.toggle('platform-mobile-chat-open'); 2149 if (frame.classList.contains('platform-mobile-chat-open')) frame.classList.remove('platform-mobile-menu-open'); 2150 }); 2151 } 2152 if (overlay) { 2153 overlay.addEventListener('click', function() { 2154 frame.classList.remove('platform-mobile-menu-open', 'platform-mobile-chat-open'); 2155 }); 2156 } 2157 })(); 2158 </script>
2158 2159
2159<script> 2160 // Button-Farbe: Wackeln nach 3s Inaktivität â stoppt dauerhaft, sobald etwas eingestellt wurde 2161 (function() { 2162 const section = document.getElementById('personalize'); 2163 const buttonFarbeBox = document.getElementById('platform-control-button-farbe'); 2164 const controlsContainer = document.querySelector('.platform-personalize-controls'); 2165 if (!section || !buttonFarbeBox || !controlsContainer) return; 2166 2167 const WIGGLE_DELAY_MS = 3000; 2168 const WIGGLE_ANIMATION_MS = 600; 2169 let idleTimer = null; 2170 let isInView = false; 2171 let userHasInteracted = false; 2172 2173 function wiggle() { 2174 if (userHasInteracted) return; 2175 buttonFarbeBox.classList.add('platform-wiggle'); 2176 setTimeout(function() { 2177 buttonFarbeBox.classList.remove('platform-wiggle'); 2178 if (isInView && !userHasInteracted) scheduleNext(); 2179 }, WIGGLE_ANIMATION_MS); 2180 } 2181 2182 function scheduleNext() { 2183 if (userHasInteracted) return; 2184 clearTimeout(idleTimer); 2185 idleTimer = setTimeout(wiggle, WIGGLE_DELAY_MS); 2186 } 2187 2188 function onUserInteraction() { 2189 userHasInteracted = true; 2190 clearTimeout(idleTimer); 2191 idleTimer = null; 2192 } 2193 2194 ['input', 'change', 'click'].forEach(function(ev) { 2195 controlsContainer.addEventListener(ev, onUserInteraction); 2196 }); 2197 2198 var io = new IntersectionObserver(function(entries) { 2199 entries.forEach(function(entry) { 2200 isInView = entry.isIntersecting; 2201 if (isInView && !userHasInteracted) { 2202 scheduleNext(); 2203 } else { 2204 clearTimeout(idleTimer); 2205 idleTimer = null; 2206 } 2207 }); 2208 }, { rootMargin: '0px', threshold: 0.2 }); 2209 2210 io.observe(section); 2211 })(); 2212 </script>
2212 2213
2213<script> 2214 // Header Background on Scroll 2215 document.addEventListener('DOMContentLoaded', () => { 2216 const header = document.getElementById('main-header'); 2217 if (!header) return; 2218 2219 function updateHeaderBackground() { 2220 if (window.scrollY > 50) { 2221 header.classList.add('bg-white/70'); 2222 } else { 2223 header.classList.remove('bg-white/70'); 2224 } 2225 } 2226 2227 window.addEventListener('scroll', updateHeaderBackground); 2228 updateHeaderBackground(); // Initial check 2229 2230 // Burger Menu Toggle 2231 const burgerMenu = document.getElementById('burger-menu'); 2232 const burgerMenuClose = document.getElementById('burger-menu-close'); 2233 const burgerMenuWrapper = document.getElementById('burger-menu-wrapper'); 2234 const burgerMenuOverlay = document.getElementById('burger-menu-overlay'); 2235 const burgerMenuDropdown = document.getElementById('burger-menu-dropdown'); 2236 2237 // Function to toggle icon animation 2238 function toggleMenuIcon(isOpen) { 2239 if (burgerMenu) { 2240 if (isOpen) { 2241 burgerMenu.classList.add('active'); 2242 } else { 2243 burgerMenu.classList.remove('active'); 2244 } 2245 } 2246 } 2247 2248 // Desktop Dropdown 2249 if (burgerMenu && burgerMenuDropdown) { 2250 let isOpen = false; 2251 2252 burgerMenu.addEventListener('click', (e) => { 2253 e.stopPropagation(); 2254 isOpen = !isOpen; 2255 2256 if (isOpen) { 2257 burgerMenuDropdown.classList.remove('opacity-0', 'invisible', 'translate-y-2'); 2258 burgerMenuDropdown.classList.add('opacity-100', 'visible', 'translate-y-0'); 2259 } else { 2260 burgerMenuDropdown.classList.add('opacity-0', 'invisible', 'translate-y-2'); 2261 burgerMenuDropdown.classList.remove('opacity-100', 'visible', 'translate-y-0'); 2262 } 2263 toggleMenuIcon(isOpen); 2264 }); 2265 2266 // Close dropdown when clicking outside 2267 document.addEventListener('click', (e) => { 2268 if (!burgerMenu.contains(e.target) && !burgerMenuDropdown.contains(e.target)) { 2269 isOpen = false; 2270 burgerMenuDropdown.classList.add('opacity-0', 'invisible', 'translate-y-2'); 2271 burgerMenuDropdown.classList.remove('opacity-100', 'visible', 'translate-y-0'); 2272 toggleMenuIcon(isOpen); 2273 } 2274 }); 2275 2276 // Close dropdown when clicking on a link 2277 const dropdownLinks = burgerMenuDropdown.querySelectorAll('a'); 2278 dropdownLinks.forEach(link => { 2279 link.addEventListener('click', () => { 2280 isOpen = false; 2281 burgerMenuDropdown.classList.add('opacity-0', 'invisible', 'translate-y-2'); 2282 burgerMenuDropdown.classList.remove('opacity-100', 'visible', 'translate-y-0'); 2283 toggleMenuIcon(isOpen); 2284 }); 2285 }); 2286 } 2287 2288 // Mobile Overlay 2289 if (burgerMenu && burgerMenuWrapper) { 2290 let isMobileOpen = false; 2291 burgerMenu.addEventListener('click', () => { 2292 if (window.innerWidth < 768) { 2293 isMobileOpen = !isMobileOpen; 2294 burgerMenuWrapper.classList.toggle('burger-mobile-open', isMobileOpen); 2295 document.body.style.overflow = isMobileOpen ? 'hidden' : ''; 2296 toggleMenuIcon(isMobileOpen); 2297 } 2298 }); 2299 } 2300 2301 if (burgerMenuClose && burgerMenuWrapper) { 2302 burgerMenuClose.addEventListener('click', () => { 2303 burgerMenuWrapper.classList.remove('burger-mobile-open'); 2304 document.body.style.overflow = ''; 2305 toggleMenuIcon(false); 2306 }); 2307 } 2308 const burgerMenuBackdrop = document.getElementById('burger-menu-backdrop'); 2309 if (burgerMenuBackdrop && burgerMenuWrapper) { 2310 burgerMenuBackdrop.addEventListener('click', () => { 2311 burgerMenuWrapper.classList.remove('burger-mobile-open'); 2312 document.body.style.overflow = ''; 2313 toggleMenuIcon(false); 2314 }); 2315 } 2316 2317 // Close mobile menu when clicking on a link 2318 if (burgerMenuOverlay) { 2319 const menuLinks = burgerMenuOverlay.querySelectorAll('a'); 2320 menuLinks.forEach(link => { 2321 link.addEventListener('click', () => { 2322 burgerMenuWrapper.classList.remove('burger-mobile-open'); 2323 document.body.style.overflow = ''; 2324 toggleMenuIcon(false); 2325 }); 2326 }); 2327 } 2328 }); 2329 </script>
2329 2330
2330<script> 2331 // Sticky Wireframe Scroll Effect 2332 document.addEventListener('DOMContentLoaded', () => { 2333 const stickyWireframe = document.querySelector('.sticky-wireframe'); 2334 const stickyContainer = document.querySelector('.sticky-wireframe-container'); 2335 const targetContainer = document.querySelector('.sticky-wireframe-target'); 2336 const section = document.querySelector('section.bg-gray-950'); 2337 2338 if (!stickyWireframe || !stickyContainer || !targetContainer || !section) { 2339 console.log('Elements not found:', { stickyWireframe, stickyContainer, targetContainer, section }); 2340 return; 2341 } 2342 2343 // Initial: Wireframe sollte sichtbar sein 2344 stickyWireframe.style.transform = 'translate(0, 0)'; 2345 2346 function updateStickyPosition() { 2347 const sectionRect = section.getBoundingClientRect(); 2348 const sectionTop = section.offsetTop; 2349 const sectionHeight = section.offsetHeight; 2350 const viewportHeight = window.innerHeight; 2351 const currentScroll = window.scrollY; 2352 2353 // Berechne Scroll-Progress 2354 // Start: etwas früher - wenn Section noch 0.3x Viewport-Höhe über dem oberen Rand ist 2355 // Ende: wenn Section durchgescrollt ist 2356 const scrollStart = sectionTop - viewportHeight * 0.3; 2357 const scrollEnd = sectionTop + sectionHeight - viewportHeight; 2358 const scrollRange = scrollEnd - scrollStart; 2359 2360 if (scrollRange <= 0) { 2361 stickyWireframe.style.transform = 'translate(0, 0)'; 2362 return; 2363 } 2364 2365 const scrollProgress = Math.max(0, Math.min(1, 2366 (currentScroll - scrollStart) / scrollRange 2367 )); 2368 2369 // Hole Positionen 2370 const stickyRect = stickyContainer.getBoundingClientRect(); 2371 const targetRect = targetContainer.getBoundingClientRect(); 2372 2373 // Berechne relative Verschiebung 2374 const deltaX = targetRect.left - stickyRect.left; 2375 const deltaY = targetRect.top - stickyRect.top; 2376 2377 // Interpoliere basierend auf Scroll-Progress 2378 const currentX = deltaX * scrollProgress; 2379 const currentY = deltaY * scrollProgress; 2380 2381 stickyWireframe.style.transform = `translate(${currentX}px, ${currentY}px)`; 2382 } 2383 2384 // Initial call nach kurzer Verzögerung 2385 setTimeout(() => { 2386 updateStickyPosition(); 2387 }, 200); 2388 2389 window.addEventListener('scroll', updateStickyPosition); 2390 window.addEventListener('resize', () => { 2391 setTimeout(updateStickyPosition, 100); 2392 }); 2393 }); 2394 </script>
2394 2395
2395<script> 2396 // Smooth scroll to anchor links 2397 document.addEventListener('DOMContentLoaded', () => { 2398 // Handle all anchor links including /# links 2399 document.querySelectorAll('a[href*="#"]').forEach(anchor => { 2400 anchor.addEventListener('click', function (e) { 2401 const href = this.getAttribute('href'); 2402 2403 // Skip if it's just "#" or empty 2404 if (href === '#' || href === '' || !href.includes('#')) return; 2405 2406 // Handle /# links (links to homepage with anchor) 2407 if (href.startsWith('/#')) { 2408 const targetId = href.substring(2); // Remove "/#" 2409 2410 if (window.location.pathname === '/' || window.location.pathname === '/index.html') { 2411 // Already on homepage, prevent default and scroll 2412 e.preventDefault(); 2413 const targetElement = document.getElementById(targetId); 2414 if (targetElement) { 2415 const headerOffset = 100; // Height of fixed header 2416 const elementPosition = targetElement.getBoundingClientRect().top; 2417 const offsetPosition = elementPosition + window.pageYOffset - headerOffset; 2418 2419 window.scrollTo({ 2420 top: offsetPosition, 2421 behavior: 'smooth' 2422 }); 2423 } 2424 } else { 2425 // Not on homepage, navigate first 2426 // Store the target ID to scroll after page load 2427 sessionStorage.setItem('scrollTo', targetId); 2428 // Let the navigation happen naturally 2429 } 2430 } 2431 // Handle # links (same page anchors) 2432 else if (href.startsWith('#')) { 2433 const targetId = href.substring(1); // Remove "#" 2434 const targetElement = document.getElementById(targetId); 2435 if (targetElement) { 2436 e.preventDefault(); 2437 const headerOffset = 100; // Height of fixed header 2438 const elementPosition = targetElement.getBoundingClientRect().top; 2439 const offsetPosition = elementPosition + window.pageYOffset - headerOffset; 2440 2441 window.scrollTo({ 2442 top: offsetPosition, 2443 behavior: 'smooth' 2444 }); 2445 } 2446 } 2447 }); 2448 }); 2449 2450 // Handle hash in URL on page load or after navigation 2451 const scrollToId = sessionStorage.getItem('scrollTo') || window.location.hash.substring(1); 2452 if (scrollToId) { 2453 sessionStorage.removeItem('scrollTo'); 2454 setTimeout(() => { 2455 const targetElement = document.getElementById(scrollToId); 2456 if (targetElement) { 2457 const headerOffset = 100; 2458 const elementPosition = targetElement.getBoundingClientRect().top; 2459 const offsetPosition = elementPosition + window.pageYOffset - headerOffset; 2460 2461 window.scrollTo({ 2462 top: offsetPosition, 2463 behavior: 'smooth' 2464 }); 2465 } 2466 }, 100); 2467 } 2468 }); 2469 </script>
2469 2470 2471 <!-- Footer --> 2472 <footer class="bg-gray-50 pt-12 pb-32 px-6 lg:px-8 relative overflow-hidden"> 2473 <!-- Hintergrund Logo --> 2474 <div class="absolute inset-0 flex items-end justify-center pointer-events-none overflow-visible"> 2475 <img src="./public/Glymmer_Logo_Dunkel.png" alt="" class="w-[1500px] h-auto opacity-[0.05] translate-y-[48%]" style="max-width: 95vw;"> 2476 </div> 2477 <div class="max-w-7xl mx-auto relative z-10"> 2478 <div class="grid md:grid-cols-4 gap-8 mb-8"> 2479 <div> 2480 <div class="mb-4"> 2481 <img src="./public/Glymmer_Logo_Dunkel.png" alt="Glymmer" class="h-8 w-auto"> 2482 </div> 2483 <p id="footer-tagline" class="text-black/70 text-sm"> 2484 Die Community-Plattform für Coaches und Creator 2485 </p> 2486 <div class="flex items-center gap-3 mt-3"> 2487 <a href="https://www.linkedin.com/showcase/glymmer" target="_blank" rel="noopener noreferrer" class="inline-flex text-black/70 hover:text-black transition" aria-label="Glymmer auf LinkedIn"> 2488 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="currentColor" class="shrink-0"><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/></svg> 2489 </a> 2490 <a href="https://www.instagram.com/glymmer.io/" target="_blank" rel="noopener noreferrer" class="inline-flex text-black/70 hover:text-black transition" aria-label="Glymmer auf Instagram"> 2491 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="currentColor" class="shrink-0"><path d="M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zM12 0C8.741 0 8.333.014 7.053.072 2.695.272.273 2.69.073 7.052.014 8.333 0 8.741 0 12c0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98C8.333 23.986 8.741 24 12 24c3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98C16.67.014 16.259 0 12 0zm0 5.838a6.162 6.162 0 100 12.324 6.162 6.162 0 000-12.324zM12 16a4 4 0 110-8 4 4 0 010 8zm6.406-11.845a1.44 1.44 0 100 2.881 1.44 1.44 0 000-2.881z"/></svg> 2492 </a> 2493 <a href="https://omr.com/de/reviews/product/glymmer#overview" target="_blank" rel="noopener noreferrer" class="inline-flex text-black/70 hover:text-black transition" aria-label="Glymmer auf OMR Reviews"> 2494 <img src="./public/Logos/OMR_Logo.png" alt="OMR Reviews" class="shrink-0 h-5 w-auto opacity-70 hover:opacity-100 transition"> 2495 </a> 2496 </div> 2497 </div> 2498 <div> 2499 <h4 id="footer-product" class="font-semibold mb-4 text-black">Produkt</h4> 2500 <ul class="space-y-2 text-sm text-black/70"> 2501 <li><a id="footer-link-features" href="/features.html" class="hover:text-black transition">Features</a></li> 2502 <li><a id="footer-link-use-cases" href="/#use-cases" class="hover:text-black transition">Use Cases</a></li> 2503 <li><a id="footer-link-pricing" href="/preise.html" class="hover:text-black transition">Preise</a></li> 2504 <li><a id="footer-link-updates" href="/updates.html" class="hover:text-black transition">Updates</a></li> 2505 </ul> 2506 </div> 2507 <div> 2508 <h4 id="footer-company" class="font-semibold mb-4 text-black">Unternehmen</h4> 2509 <ul class="space-y-2 text-sm text-black/70"> 2510 <li><a id="footer-link-contact" href="#" data-kontakt-modal="open" class="hover:text-black transition">Kontakt</a></li> 2511 <li><a id="footer-link-about" href="https://teech.de/das-sind-wir/" target="_blank" rel="noopener noreferrer" class="hover:text-black transition">Ãber uns</a></li> 2512 <li><a id="footer-link-faq" href="#" class="hover:text-black transition">FAQ</a></li> 2513 </ul> 2514 </div> 2515 <div> 2516 <h4 id="footer-legal" class="font-semibold mb-4 text-black">Rechtliches</h4> 2517 <ul class="space-y-2 text-sm text-black/70"> 2518 <li><a id="footer-link-imprint" href="/imprint.html" class="hover:text-black transition">Impressum</a></li> 2519 <li><a id="footer-link-privacy" href="/privacy.html" class="hover:text-black transition">Datenschutz</a></li> 2520 <li><a id="footer-link-terms" href="/terms.html" class="hover:text-black transition">AGB</a></li> 2521 </ul> 2522 </div> 2523 </div> 2524 <div class="border-t border-black/10 pt-8 pb-8 text-center"> 2525 <p id="footer-copyright" class="text-sm text-black/70">© 2026 Glymmer - A teech Product. Alle Rechte vorbehalten.</p> 2526 </div> 2527 </div> 2528 </footer> 2529 2530 <!-- Mehr dazu Modal --> 2531 <div id="mehr-dazu-modal" class="fixed inset-0 bg-secondary z-50 hidden items-center justify-center modal-overlay" style="background-color: #7167F5;">
2532 <!-- Background NEWS Text --> 2533 <div class="absolute inset-0 flex items-center justify-center pointer-events-none" style="z-index: 1;"> 2534 <span class="text-[20rem] md:text-[30rem] lg:text-[40rem] font-black leading-none" style="font-family: 'Cal Sans', sans-serif; color: rgba(0, 0, 0, 0.03);"> 2535 NEWS 2536 </span> 2537 </div> 2538 2539 <div class="relative w-full h-full flex items-center justify-center px-3 lg:px-6" style="z-index: 2;"> 2540 <!-- Close Button --> 2541 <button id="close-modal" class="absolute top-6 right-6 text-white hover:text-white/80 transition transform hover:rotate-90 duration-300" aria-label="SchlieÃen"> 2542 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 2543 <line x1="18" y1="6" x2="6" y2="18"></line> 2544 <line x1="6" y1="6" x2="18" y2="18"></line> 2545 </svg> 2546 </button> 2547 2548 <!-- Content --> 2549 <div class="max-w-5xl mx-auto text-left text-white modal-content px-0"> 2550 <h2 class="text-4xl md:text-5xl lg:text-6xl font-medium mb-6 leading-normal pb-2" style="font-family: 'Cal Sans', sans-serif; color: white;"> 2551 Tracking-Cookies sind standardmäÃig ausgestellt - deine Anzeigen auf Instagram & Co. verpuffen, ohne dass du es merkst. 2552 </h2> 2553 <p class="text-base md:text-lg font-medium mb-6" style="font-family: 'Suisse Intl', sans-serif;"> 2554 Mit einer eigenen Community bei Glymmer: 2555 </p> 2556 <ul class="text-base md:text-lg space-y-3 list-disc pl-6" style="font-family: 'Suisse Intl', sans-serif;"> 2557 <li>Du erreichst deine Follower direkt â ohne Cookies, ohne Algorithmen.</li> 2558 <li>Deine Mitglieder sagen aktiv âJa" zu deinen Inhalten â rechtssicher und transparent.</li> 2559 <li>Du besitzt deinen Zugang zu Kunden selbst â egal, was Social-Media-Plattformen morgen ändern.</li> 2560 </ul> 2561 </div> 2562 </div> 2563 </div> 2564 2565 <!-- FAQ Modal (lila wie Mehr dazu, Content vertikal zentriert) --> 2566 <div id="faq-modal" class="fixed inset-0 z-50 hidden items-center justify-center modal-overlay overflow-y-auto" style="background-color: #7167F5;"> 2567 <div class="absolute inset-0 flex items-center justify-center pointer-events-none" style="z-index: 1;"> 2568 <span class="text-[22rem] md:text-[32rem] lg:text-[42rem] xl:text-[52rem] font-black leading-none" style="font-family: 'Cal Sans', sans-serif; color: rgba(0, 0, 0, 0.03);"> 2569 FAQ 2570 </span> 2571 </div> 2572 <div class="relative w-full flex items-center justify-center px-2 sm:px-4 lg:px-6 py-12 min-h-full" style="z-index: 2;"> 2573 <button id="close-faq-modal" class="fixed top-6 right-6 text-white z-[60] p-2 rounded-full" aria-label="SchlieÃen"> 2574 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 2575 <line x1="18" y1="6" x2="6" y2="18"></line> 2576 <line x1="6" y1="6" x2="18" y2="18"></line> 2577 </svg> 2578 </button> 2579 <div class="max-w-7xl mx-auto text-left modal-content w-full"> 2580 <h2 id="faq-modal-title" class="text-3xl md:text-4xl lg:text-5xl font-medium mb-6 leading-normal text-white" style="font-family: 'Cal Sans', sans-serif;"> 2581 Häufige Fragen 2582 </h2> 2583 <div class="faq-accordion-list"> 2584 <details id="faq-item-1" class="faq-accordion-item rounded-2xl overflow-hidden text-black"> 2585 <summary class="faq-accordion-question cursor-pointer list-none px-4 py-4 text-xl font-semibold flex items-center justify-between gap-3" style="font-family: 'Cal Sans', sans-serif;"> 2586 <span class="faq-q-text">Was ist Glymmer eigentlich genau?</span> 2587 <span class="faq-accordion-icon flex-shrink-0 transition-transform duration-200"> 2588 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg> 2589 </span> 2590 </summary> 2591 <div class="faq-accordion-answer-wrapper"> 2592 <div class="faq-accordion-answer-inner"> 2593 <div class="faq-accordion-answer px-4 pb-3 pt-0 text-sm leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;"> 2594 Glymmer ist deine Community-Plattform, auf der du Inhalte, Austausch und Umsatz an einem Ort bündelst â unter deiner eigenen Marke.<br><br> 2595 Du kannst Communities für Coaches, Creator, Bootcamps oder Lernräume aufbauen, Live-Sessions hosten, Kurse anbieten, Mitgliedschaften verkaufen, Events organisieren und alles über ein zentrales Dashboard steuern â DSGVO-konform und Made in Germany. 2596 </div> 2597 </div> 2598 </div> 2599 </details> 2600 <details id="faq-item-2" class="faq-accordion-item rounded-2xl overflow-hidden text-black"> 2601 <summary class="faq-accordion-question cursor-pointer list-none px-4 py-4 text-xl font-semibold flex items-center justify-between gap-3" style="font-family: 'Cal Sans', sans-serif;">
2602 <span class="faq-q-text">Für wen ist Glymmer geeignet?</span> 2603 <span class="faq-accordion-icon flex-shrink-0 transition-transform duration-200"> 2604 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg> 2605 </span> 2606 </summary> 2607 <div class="faq-accordion-answer-wrapper"> 2608 <div class="faq-accordion-answer-inner"> 2609 <div class="faq-accordion-answer px-4 pb-3 pt-0 text-sm leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;"> 2610 Glymmer ist für alle, die mehr wollen als eine lose Follower-Liste:<br> 2611 <strong>Coaches & Trainer</strong>, die aus Kunden eine echte Community machen wollen.<br> 2612 <strong>Creator</strong>, die ihre Inhalte und Fans in ein eigenes, monetarisierbares Ãkosystem holen möchten.<br> 2613 <strong>Bootcamps & Bildungsanbieter</strong>, die Programme mit Struktur, Live-Sessions und Community kombinieren.<br> 2614 <strong>Lernräume, Nachhilfe & Academies</strong>, die Online-Unterricht, Gruppen und Materialien an einem Ort organisieren wollen. 2615 </div> 2616 </div> 2617 </div> 2618 </details> 2619 <details id="faq-item-3" class="faq-accordion-item rounded-2xl overflow-hidden text-black"> 2620 <summary class="faq-accordion-question cursor-pointer list-none px-4 py-4 text-xl font-semibold flex items-center justify-between gap-3" style="font-family: 'Cal Sans', sans-serif;"> 2621 <span class="faq-q-text">Was kann ich mit Glymmer konkret machen?</span> 2622 <span class="faq-accordion-icon flex-shrink-0 transition-transform duration-200"> 2623 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg> 2624 </span> 2625 </summary> 2626 <div class="faq-accordion-answer-wrapper"> 2627 <div class="faq-accordion-answer-inner"> 2628 <div class="faq-accordion-answer px-4 pb-3 pt-0 text-sm leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;"> 2629 Du kannst: <strong>Community aufbauen</strong> â Channels, Gruppenchats, Feeds, Events, Live-Sessions. <strong>Content strukturieren</strong> â Mediathek, Dateiablage, Kursbereiche, Workbooks. <strong>Monetarisieren</strong> â Mitgliedschaften, einmalige Produktverkäufe, Tickets für Events. <strong>Lernen & Engagement stärken</strong> â Gamification, Challenges, Feedback, Umfragen. <strong>Alles steuern</strong> â Analytics, Admin-Dashboard, Rollen & Berechtigungen. 2630 </div> 2631 </div> 2632 </div> 2633 </details> 2634 <details id="faq-item-4" class="faq-accordion-item rounded-2xl overflow-hidden text-black"> 2635 <summary class="faq-accordion-question cursor-pointer list-none px-4 py-4 text-xl font-semibold flex items-center justify-between gap-3" style="font-family: 'Cal Sans', sans-serif;"> 2636 <span class="faq-q-text">Wie verdiene ich Geld mit Glymmer?</span> 2637 <span class="faq-accordion-icon flex-shrink-0 transition-transform duration-200"> 2638 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg> 2639 </span> 2640 </summary> 2641 <div class="faq-accordion-answer-wrapper"> 2642 <div class="faq-accordion-answer-inner"> 2643 <div class="faq-accordion-answer px-4 pb-3 pt-0 text-sm leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;"> 2644 Glymmer wurde dafür gebaut, dass sich deine C
2644ommunity rechnet: Erstelle <strong>Mitgliedschaften</strong> mit unterschiedlichen Zugangslevels (z.B. Basic, Premium, VIP). Verkaufe <strong>Programme, Kurse, Bootcamps oder Einzelprodukte</strong> direkt in deiner Community. Nutze <strong>Events & Ticketing</strong>, um Workshops, Live-Formate oder Challenges zu monetarisieren. Deine Zahlungen laufen zentral über die Plattform â wiederkehrende Einnahmen inklusive. 2645 </div> 2646 </div> 2647 </div> 2648 </details> 2649 <details id="faq-item-5" class="faq-accordion-item rounded-2xl overflow-hidden text-black"> 2650 <summary class="faq-accordion-question cursor-pointer list-none px-4 py-4 text-xl font-semibold flex items-center justify-between gap-3" style="font-family: 'Cal Sans', sans-serif;"> 2651 <span class="faq-q-text">Kann ich Glymmer kostenlos testen?</span> 2652 <span class="faq-accordion-icon flex-shrink-0 transition-transform duration-200"> 2653 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg> 2654 </span> 2655 </summary> 2656 <div class="faq-accordion-answer-wrapper"> 2657 <div class="faq-accordion-answer-inner"> 2658 <div class="faq-accordion-answer px-4 pb-3 pt-0 text-sm leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;"> 2659 Klar! <a href="#" data-termin-modal="open" class="underline font-medium hover:no-underline">Jetzt testen für 14 Tage kostenlos</a>. 2660 </div> 2661 </div> 2662 </div> 2663 </details> 2664 <details id="faq-item-6" class="faq-accordion-item rounded-2xl overflow-hidden text-black"> 2665 <summary class="faq-accordion-question cursor-pointer list-none px-4 py-4 text-xl font-semibold flex items-center justify-between gap-3" style="font-family: 'Cal Sans', sans-serif;"> 2666 <span class="faq-q-text">Ist Glymmer DSGVO-konform und wo liegen die Daten?</span> 2667 <span class="faq-accordion-icon flex-shrink-0 transition-transform duration-200"> 2668 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg> 2669 </span> 2670 </summary> 2671 <div class="faq-accordion-answer-wrapper"> 2672 <div class="faq-accordion-answer-inner"> 2673 <div class="faq-accordion-answer px-4 pb-3 pt-0 text-sm leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;"> 2674 Ja, Glymmer ist eine deutsche SaaS-Plattform mit Hosting und Infrastruktur, die auf Datenschutz und Sicherheit ausgelegt ist.<br><br> 2675 Deine Community-Daten gehören dir â du behältst die Kontrolle über Mitglieder, Inhalte und Kommunikation und reduzierst deine Abhängigkeit von Social-Media-Plattformen und deren Geschäftsmodellen. 2676 </div> 2677 </div> 2678 </div> 2679 </details> 2680 <details id="faq-item-7" class="faq-accordion-item rounded-2xl overflow-hidden text-black"> 2681 <summary class="faq-accordion-question cursor-pointer list-none px-4 py-4 text-xl font-semibold flex items-center justify-between gap-3" style="font-family: 'Cal Sans', sans-serif;"> 2682 <span class="faq-q-text">Brauche ich noch andere Tools wie Zoom, WhatsApp oder Mailchimp?</span> 2683 <span class="faq-accordion-icon flex-shrink-0 transition-transform duration-200"> 2684 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg> 2685 </span> 2686 </summary> 2687 <div class="faq-accordion-answer-wrapper"> 2688 <div class="faq-accordion-answer-inner"> 2689 <div class="faq-accordion-answer px-4 pb-3 pt-0 text-sm leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;"> 2690 Viele unserer Kunden verschlanken mit Glymmer ihre komplette Tool-Landschaft: Live-Sessions und Workshops laufen direkt in Glymmer â externe Tools wie Zoom, Teams oder Miro werden nicht mehr gebraucht. Community-Chat und Channels bündeln die Kommunikation und ersetzen verstreute WhatsApp-, Slack- oder Discord-Gruppen. Gezielte Push-Benachrichtigungen und automatisierte E-Mail-Updates machen separate Newsletter-Tools wie Mailchimp überflüssig. Events, Ticketing und Mitgliedschaften werden zentral in der Plattform organisiert und abgerechnet.<br><br> 2691 Weniger Tools, weniger Brüche â mehr Fokus auf deine Community. 2692 </div> 2693 </div> 2694 </div> 2695 </details> 2696 <details id="faq-item-8" class="faq-accordion-item rounded-2xl overflow-hidden text-black"> 2697 <summary class="faq-accordion-question cursor-pointer list-none px-4 py-4 text-xl font-semibold flex items-center justify-between gap-3" style="font-family: 'Cal Sans', sans-serif;">
2698 <span class="faq-q-text">Wie schnell kann ich mit Glymmer starten?</span> 2699 <span class="faq-accordion-icon flex-shrink-0 transition-transform duration-200"> 2700 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg> 2701 </span> 2702 </summary> 2703 <div class="faq-accordion-answer-wrapper"> 2704 <div class="faq-accordion-answer-inner"> 2705 <div class="faq-accordion-answer px-4 pb-3 pt-0 text-sm leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;"> 2706 In der Regel kannst du deine Community innerhalb weniger Minuten aufsetzen: Template oder Struktur auswählen, Branding hinzufügen (Logo, Farben, Domain). Erste Channels, Events und Inhalte anlegen. Mitglieder einladen oder bestehende Kontakte importieren.<br><br> 2707 Auf Wunsch begleiten wir dich mit einem individuellen Migrationsservice, damit du deine ersten Launches, Kurse oder Memberships direkt sauber strukturierst. 2708 </div> 2709 </div> 2710 </div> 2711 </details> 2712 <details id="faq-item-9" class="faq-accordion-item rounded-2xl overflow-hidden text-black"> 2713 <summary class="faq-accordion-question cursor-pointer list-none px-4 py-4 text-xl font-semibold flex items-center justify-between gap-3" style="font-family: 'Cal Sans', sans-serif;"> 2714 <span class="faq-q-text">Kann ich Glymmer in meinem eigenen Branding nutzen â inklusive App?</span> 2715 <span class="faq-accordion-icon flex-shrink-0 transition-transform duration-200"> 2716 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg> 2717 </span> 2718 </summary> 2719 <div class="faq-accordion-answer-wrapper"> 2720 <div class="faq-accordion-answer-inner"> 2721 <div class="faq-accordion-answer px-4 pb-3 pt-0 text-sm leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;"> 2722 Ja, Glymmer ist als White-Label-Lösung gedacht: Du nutzt deine Farben, dein Logo und auf Wunsch deine eigene Domain. Deine Community fühlt sich wie deine eigene Plattform an â nicht wie ein fremdes Netzwerk. Zusätzlich kannst du dir eine eigene Community-App bereitstellen lassen, die deine Mitglieder über App Store und Google Play nutzen. 2723 </div> 2724 </div> 2725 </div> 2726 </details> 2727 <details id="faq-item-10" class="faq-accordion-item rounded-2xl overflow-hidden text-black"> 2728 <summary class="faq-accordion-question cursor-pointer list-none px-4 py-4 text-xl font-semibold flex items-center justify-between gap-3" style="font-family: 'Cal Sans', sans-serif;"> 2729 <span class="faq-q-text">Welche Preismodelle gibt es und wie funktionieren die Gebühren?</span> 2730 <span class="faq-accordion-icon flex-shrink-0 transition-transform duration-200"> 2731 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg> 2732 </span> 2733 </summary> 2734 <div class="faq-accordion-answer-wrapper"> 2735 <div class="faq-accordion-answer-inner"> 2736 <div class="faq-accordion-answer px-4 pb-3 pt-0 text-sm leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;"> 2737 Glymmer bietet verschiedene Pakete für unterschiedliche Wachstumsphasen â von kleineren Communities bis zu groÃen Programmen.<br><br> 2738 Du zahlst eine monatliche Plattformgebühr und eine faire Transaktionsgebühr auf Umsätze, die über Glymmer laufen. So kannst du klein starten und die Kosten wachsen mit deinem Erfolg, nicht andersherum. 2739 </div> 2740 </div> 2741 </div> 2742 </details> 2743 <details id="faq-item-11" class="faq-accordion-item rounded-2xl overflow-hidden text-black"> 2744 <summary class="faq-accordion-question cursor-pointer list-none px-4 py-4 text-xl font-semibold flex items-center justify-between gap-3" style="font-family: 'Cal Sans', sans-serif;">
2745 <span class="faq-q-text">Was passiert, wenn meine Community stark wächst oder ich mehrere Projekte habe?</span> 2746 <span class="faq-accordion-icon flex-shrink-0 transition-transform duration-200"> 2747 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg> 2748 </span> 2749 </summary> 2750 <div class="faq-accordion-answer-wrapper"> 2751 <div class="faq-accordion-answer-inner"> 2752 <div class="faq-accordion-answer px-4 pb-3 pt-0 text-sm leading-relaxed" style="font-family: 'Suisse Intl', sans-serif;"> 2753 Glymmer ist darauf ausgelegt, mit dir mitzuwachsen: Du kannst mehr Mitglieder, zusätzliche Programme und Events abbilden, ohne dein Setup komplett neu zu denken. Für gröÃere Communities oder Bootcamps stehen dir erweiterte Admin-Features, mehr Speicher, Integrationen und individuelle Lösungen zur Verfügung. Wenn du merkst, dass du aus einem Paket âherausgewachsenâ bist, kannst du unkompliziert upgraden â die Community bleibt, du schaltest nur mehr Möglichkeiten frei. 2754 </div> 2755 </div> 2756 </div> 2757 </details> 2758 </div> 2759 </div> 2760 </div> 2761 </div> 2762 2763
2763<script> 2764 // Quote Text Word-by-Word Animation on Scroll 2765 (function() { 2766 const quoteText = document.getElementById('quote-text'); 2767 if (!quoteText) return; 2768 2769 const words = quoteText.querySelectorAll('.quote-word'); 2770 if (words.length === 0) return; 2771 2772 // Add color to each word 2773 words.forEach(word => { 2774 word.style.color = '#2A2A2A'; 2775 word.style.transition = 'opacity 0.6s ease-out'; 2776 word.style.display = 'inline-block'; 2777 word.style.marginRight = '0.25em'; 2778 }); 2779 2780 function animateWords() { 2781 const quoteRect = quoteText.getBoundingClientRect(); 2782 const viewportHeight = window.innerHeight; 2783 const elementTop = quoteRect.top; 2784 const elementBottom = quoteRect.bottom; 2785 2786 // Start animation when element enters viewport 2787 if (elementTop < viewportHeight && elementBottom > 0) { 2788 // Calculate progress: 0 when top of element is at viewport center, 1 when fully scrolled 2789 const startPoint = viewportHeight * 0.5; 2790 const endPoint = viewportHeight * 0.2; 2791 const scrollRange = startPoint - endPoint; 2792 const scrollProgress = Math.max(0, Math.min(1, (startPoint - elementTop) / scrollRange)); 2793 2794 // Animate each word with a delay 2795 words.forEach((word, index) => { 2796 const wordProgress = Math.max(0, Math.min(1, (scrollProgress * words.length - index) / 1)); 2797 const opacity = 0.15 + (wordProgress * 0.85); // From 0.15 to 1.0 2798 word.style.opacity = opacity; 2799 }); 2800 } 2801 } 2802 2803 let ticking = false; 2804 function onScroll() { 2805 if (!ticking) { 2806 window.requestAnimationFrame(() => { 2807 animateWords(); 2808 ticking = false; 2809 }); 2810 ticking = true; 2811 } 2812 } 2813 2814 window.addEventListener('scroll', onScroll, { passive: true }); 2815 animateWords(); // Initial check 2816 })(); 2817 </script>
2817 2818
2818<script> 2819 // Mehr dazu Modal 2820 (function() { 2821 const mehrDazuButton = document.getElementById('mehr-dazu-button'); 2822 const modal = document.getElementById('mehr-dazu-modal'); 2823 const closeButton = document.getElementById('close-modal'); 2824 2825 if (!mehrDazuButton || !modal || !closeButton) return; 2826 2827 function openModal() { 2828 modal.classList.remove('hidden'); 2829 modal.classList.add('flex'); 2830 document.body.style.overflow = 'hidden'; 2831 // Trigger animation 2832 setTimeout(() => { 2833 modal.classList.add('show'); 2834 }, 10); 2835 } 2836 2837 function closeModal() { 2838 modal.classList.remove('show'); 2839 // Wait for animation to complete before hiding 2840 setTimeout(() => { 2841 modal.classList.add('hidden'); 2842 modal.classList.remove('flex'); 2843 document.body.style.overflow = ''; 2844 }, 500); 2845 } 2846 2847 mehrDazuButton.addEventListener('click', openModal); 2848 closeButton.addEventListener('click', closeModal); 2849 2850 // Close on escape key 2851 document.addEventListener('keydown', (e) => { 2852 if (e.key === 'Escape' && !modal.classList.contains('hidden')) { 2853 closeModal(); 2854 } 2855 }); 2856 2857 // Close on click outside content 2858 modal.addEventListener('click', (e) => { 2859 if (e.target === modal) { 2860 closeModal(); 2861 } 2862 }); 2863 })(); 2864 </script>
2864 2865
2865<script> 2866 // FAQ Modal (öffnen aus Menü, gleicher lila Fullscreen wie âMehr dazuâ) 2867 (function() { 2868 const faqModal = document.getElementById('faq-modal'); 2869 const closeFaqButton = document.getElementById('close-faq-modal'); 2870 const navFaq = document.getElementById('nav-faq'); 2871 const navFaqMobile = document.getElementById('nav-faq-mobile'); 2872 const footerLinkFaq = document.getElementById('footer-link-faq'); 2873 const burgerMenuDropdown = document.getElementById('burger-menu-dropdown'); 2874 const burgerMenuWrapper = document.getElementById('burger-menu-wrapper'); 2875 2876 if (!faqModal || !closeFaqButton) return; 2877 2878 function openFaqModal() { 2879 faqModal.classList.remove('hidden'); 2880 faqModal.classList.add('flex'); 2881 document.body.style.overflow = 'hidden'; 2882 if (burgerMenuDropdown) { 2883 burgerMenuDropdown.classList.remove('opacity-100', 'visible', 'translate-y-0'); 2884 burgerMenuDropdown.classList.add('opacity-0', 'invisible', 'translate-y-2'); 2885 } 2886 if (burgerMenuWrapper && burgerMenuWrapper.classList.contains('burger-mobile-open')) { 2887 burgerMenuWrapper.classList.remove('burger-mobile-open'); 2888 document.getElementById('burger-menu')?.classList.remove('active'); 2889 } 2890 setTimeout(() => faqModal.classList.add('show'), 10); 2891 } 2892 2893 function closeFaqModal() { 2894 faqModal.classList.remove('show'); 2895 setTimeout(() => { 2896 faqModal.classList.add('hidden'); 2897 faqModal.classList.remove('flex'); 2898 document.body.style.overflow = ''; 2899 }, 500); 2900 } 2901 2902 if (navFaq) { 2903 navFaq.addEventListener('click', (e) => { e.preventDefault(); openFaqModal(); }); 2904 } 2905 if (navFaqMobile) { 2906 navFaqMobile.addEventListener('click', (e) => { e.preventDefault(); openFaqModal(); }); 2907 } 2908 if (footerLinkFaq) { 2909 footerLinkFaq.addEventListener('click', (e) => { e.preventDefault(); openFaqModal(); }); 2910 } 2911 closeFaqButton.addEventListener('click', closeFaqModal); 2912 document.addEventListener('keydown', (e) => { 2913 if (e.key === 'Escape' && !faqModal.classList.contains('hidden')) closeFaqModal(); 2914 }); 2915 faqModal.addEventListener('click', (e) => { 2916 if (e.target === faqModal) closeFaqModal(); 2917 }); 2918 })(); 2919 </script>
2919 2920
2920<script> 2921 // FAQ Accordion: Smooth Ausklapp-Animation + FLIP für sanftes Nachrücken der anderen Boxen 2922 (function() { 2923 const faqItems = document.querySelectorAll('.faq-accordion-item'); 2924 if (faqItems.length === 0) return; 2925 2926 const TRANSITION_MS = 500; 2927 const FLIP_DURATION_MS = 420; 2928 const FLIP_EASING = 'cubic-bezier(0.25, 0.46, 0.45, 0.94)'; 2929 2930 function getRects(elements) { 2931 return Array.from(elements).map(function(el) { return el.getBoundingClientRect(); }); 2932 } 2933 2934 function applyFlipAnimation(items, rectsBefore, rectsAfter, excludeItem, onEnd) { 2935 var toClean = []; 2936 items.forEach(function(el, i) { 2937 if (el === excludeItem) return; 2938 var before = rectsBefore[i]; 2939 var after = rectsAfter[i]; 2940 var dx = before.left - after.left; 2941 var dy = before.top - after.top; 2942 if (Math.abs(dx) < 0.1 && Math.abs(dy) < 0.1) return; 2943 el.style.willChange = 'transform'; 2944 el.style.backfaceVisibility = 'hidden'; 2945 el.style.transition = 'transform ' + (FLIP_DURATION_MS / 1000) + 's ' + FLIP_EASING; 2946 el.style.transform = 'translate3d(' + dx + 'px, ' + dy + 'px, 0)'; 2947 toClean.push(el); 2948 }); 2949 requestAnimationFrame(function() { 2950 requestAnimationFrame(function() { 2951 toClean.forEach(function(el) { 2952 el.style.transform = 'translate3d(0, 0, 0)'; 2953 }); 2954 setTimeout(function() { 2955 toClean.forEach(function(el) { 2956 el.style.willChange = ''; 2957 el.style.backfaceVisibility = ''; 2958 el.style.transition = ''; 2959 el.style.transform = ''; 2960 }); 2961 if (onEnd) onEnd(); 2962 }, FLIP_DURATION_MS + 30); 2963 }); 2964 }); 2965 } 2966 2967 function closeFaqItem(item, withFlip, done) { 2968 const wrapper = item.querySelector('.faq-accordion-answer-wrapper'); 2969 const answerInner = item.querySelector('.faq-accordion-answer-inner'); 2970 if (!wrapper || !answerInner || !item.hasAttribute('open')) return; 2971 var rectsBefore = getRects(faqItems); 2972 wrapper.style.maxHeight = 'none'; 2973 var measuredHeight = answerInner.scrollHeight; 2974 wrapper.style.maxHeight = measuredHeight + 'px'; 2975 void wrapper.offsetHeight; 2976 requestAnimationFrame(function() { 2977 wrapper.style.maxHeight = '0px'; 2978 }); 2979 setTimeout(function() { 2980 item.removeAttribute('open'); 2981 wrapper.style.maxHeight = '0px'; 2982 if (withFlip) { 2983 void item.offsetHeight; 2984 var rectsAfter = getRects(faqItems); 2985 applyFlipAnimation(faqItems, rectsBefore, rectsAfter, null, done); 2986 } else if (done) done(); 2987 }, TRANSITION_MS + 20); 2988 } 2989 2990 faqItems.forEach(function(item) { 2991 const summary = item.querySelector('summary'); 2992 const wrapper = item.querySelector('.faq-accordion-answer-wrapper'); 2993 const answerInner = item.querySelector('.faq-accordion-answer-inner'); 2994 if (!summary || !wrapper || !answerInner) return; 2995 2996 wrapper.style.maxHeight = '0px'; 2997 2998 summary.addEventListener('click', function(e) { 2999 e.preventDefault(); 3000 var isOpen = item.hasAttribute('open'); 3001 3002 if (isOpen) { 3003 closeFaqItem(item, true); 3004 } else { 3005 faqItems.forEach(function(otherItem) { 3006 if (otherItem !== item && otherItem.hasAttribute('open')) { 3007 var ow = otherItem.querySelector('.faq-accordion-answer-wrapper'); 3008 otherItem.removeAttribute('open'); 3009 if (ow) ow.style.maxHeight = '0px'; 3010 } 3011 }); 3012 void item.offsetHeight; 3013 3014 item.setAttribute('open', ''); 3015 wrapper.style.maxHeight = 'none'; 3016 var targetHeight = answerInner.scrollHeight; 3017 wrapper.style.maxHeight = targetHeight + 'px'; 3018 } 3019 }); 3020 }); 3021 })(); 3022 </script>
3022 3023
3023<script> 3024 // Chat Send Functionality 3025 (function() { 3026 const chatInput = document.getElementById('chat-input'); 3027 const chatSendButton = document.getElementById('chat-send-button'); 3028 const chatMessagesContainer = document.getElementById('chat-messages-container'); 3029 3030 if (!chatInput || !chatSendButton || !chatMessagesContainer) return; 3031 3032 function updateButtonState() { 3033 const hasText = chatInput.value.trim().length > 0; 3034 3035 if (hasText) { 3036 chatSendButton.disabled = false; 3037 chatSendButton.classList.remove('bg-white/20'); 3038 chatSendButton.classList.add('bg-secondary', 'hover:bg-secondary-hover'); 3039 chatSendButton.style.boxShadow = '0 4px 20px rgba(113, 103, 245, 0.5)'; 3040 chatSendButton.querySelector('svg').setAttribute('stroke', 'white'); 3041 } else { 3042 chatSendButton.disabled = true; 3043 chatSendButton.classList.remove('bg-secondary', 'hover:bg-secondary-hover'); 3044 chatSendButton.classList.add('bg-white/20'); 3045 chatSendButton.style.boxShadow = 'none'; 3046 chatSendButton.querySelector('svg').setAttribute('stroke', 'white'); 3047 } 3048 } 3049 3050 function sendMessage() { 3051 const messageText = chatInput.value.trim(); 3052 if (!messageText) return; 3053 3054 // Erstelle neue Nachricht (rechts, wie Isabel) 3055 const messageDiv = document.createElement('div'); 3056 messageDiv.className = 'flex items-start gap-2 flex-row-reverse'; 3057 messageDiv.innerHTML = ` 3058 <img src="./public/User_1.jpg" alt="Isabel Kohr" class="w-8 h-8 rounded-full object-cover flex-shrink-0"> 3059 <div class="flex-1"> 3060 <div class="text-xs text-white/70 mb-1 text-right">Isabel Kohr</div> 3061 <div class="bg-white/20 rounded-lg px-3 py-2 text-sm text-white">${messageText}</div> 3062 </div> 3063 `; 3064 3065 // Füge Nachricht hinzu 3066 chatMessagesContainer.appendChild(messageDiv); 3067 3068 // Leere Input-Feld 3069 chatInput.value = ''; 3070 updateButtonState(); 3071 3072 // Scrolle nach unten 3073 chatMessagesContainer.scrollTop = chatMessagesContainer.scrollHeight; 3074 } 3075 3076 chatInput.addEventListener('input', updateButtonState); 3077 chatSendButton.addEventListener('click', sendMessage); 3078 3079 chatInput.addEventListener('keypress', (e) => { 3080 if (e.key === 'Enter' && chatInput.value.trim()) { 3081 sendMessage(); 3082 } 3083 }); 3084 3085 // Initial state 3086 updateButtonState(); 3087 })(); 3088 3089 // Viewers Count Animation 3090 (function() { 3091 const viewersCountElement = document.getElementById('viewers-count'); 3092 if (!viewersCountElement) return; 3093 3094 let currentCount = 214; 3095 const baseCount = 214; 3096 const variation = 6; // ±6 from base (210-220) 3097 3098 function updateViewersCount() { 3099 // Langsam zwischen verschiedenen Werten schwanken 3100 // Zufällige Ãnderung zwischen -2 und +2 3101 const change = Math.floor(Math.random() * 5) - 2; // -2, -1, 0, 1, 2 3102 currentCount = Math.max(baseCount - variation, Math.min(baseCount + variation, currentCount + change)); 3103 viewersCountElement.textContent = currentCount; 3104 3105 // Nächste Ãnderung nach 2-4 Sekunden (langsam) 3106 const nextUpdate = 2000 + Math.random() * 2000; 3107 setTimeout(updateViewersCount, nextUpdate); 3108 } 3109 3110 // Start nach kurzer Verzögerung 3111 setTimeout(updateViewersCount, 1000); 3112 })(); 3113 3114 // File 3 Drop Animation 3115 (function() { 3116 const file3Container = document.getElementById('file-3-container'); 3117 const file3Image = document.getElementById('file-3-image'); 3118 const file3Title = document.getElementById('file-3-title'); 3119 const file3Description = document.getElementById('file-3-description'); 3120 const file3Number = document.getElementById('file-3-number'); 3121 const cursorWithFile = document.getElementById('cursor-with-file-3'); 3122 const fileStorageMockup = document.querySelector('.file-storage-mockup'); 3123 3124 if (!file3Container || !file3Image || !file3Title || !file3Description || !file3Number || !cursorWithFile || !fileStorageMockup) return; 3125 3126 // Warte bis die Section sichtbar ist 3127 function startAnimation() { 3128 const rect = fileStorageMockup.getBoundingClientRect(); 3129 const isVisible = rect.top < window.innerHeight && rect.bottom > 0; 3130 3131 if (!isVisible) { 3132 setTimeout(startAnimation, 500); 3133 return; 3134 } 3135 3136 // Starte Animation nach 2 Sekunden 3137 setTimeout(() => {
3138 // Phase 1: Cursor bewegt sich nach unten mit natürlicher Bewegung 3139 cursorWithFile.style.transition = 'all 1.8s cubic-bezier(0.34, 1.56, 0.64, 1)'; 3140 cursorWithFile.style.top = '180px'; 3141 cursorWithFile.style.left = '20%'; 3142 cursorWithFile.style.opacity = '1'; 3143 3144 // Phase 2: File 3 wird gedroppt mit Bounce-Effekt 3145 setTimeout(() => { 3146 // Cursor verschwindet 3147 cursorWithFile.style.opacity = '0'; 3148 cursorWithFile.style.transition = 'opacity 0.2s ease'; 3149 3150 // File 3 Container erscheint mit Drop-Animation 3151 file3Container.style.transition = 'all 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55)'; 3152 file3Container.style.opacity = '1'; 3153 file3Container.style.transform = 'translateY(0)'; 3154 3155 // File 3 Bild und Nummer erscheinen leicht verzögert 3156 setTimeout(() => { 3157 file3Image.style.transition = 'opacity 0.4s ease'; 3158 file3Image.style.opacity = '1'; 3159 file3Number.style.transition = 'opacity 0.4s ease'; 3160 file3Number.style.opacity = '1'; 3161 }, 200); 3162 3163 // Phase 3: Titel wird eingetippt (langsamer) â Sprache aus localStorage 3164 setTimeout(() => { 3165 var file3Lang = (typeof localStorage !== 'undefined' && localStorage.getItem('language')) || 'de'; 3166 const titleText = file3Lang === 'en' ? 'Bicep Training Video' : 'Bizeps Trainingsvideo'; 3167 let titleIndex = 0; 3168 3169 function typeTitle() { 3170 if (titleIndex < titleText.length) { 3171 // Verwende requestAnimationFrame für flüssigere Animation 3172 requestAnimationFrame(() => { 3173 file3Title.textContent = titleText.substring(0, titleIndex + 1); 3174 titleIndex++; 3175 if (titleIndex < titleText.length) { 3176 setTimeout(typeTitle, 150); 3177 } else { 3178 // Phase 4: Beschreibung wird eingetippt (langsamer) 3179 setTimeout(() => { 3180 const descriptionText = file3Lang === 'en' ? 'Intensive bicep training with various exercises for maximum muscle growth.' : 'Intensives Bizeps-Training mit verschiedenen Ãbungen für maximales Muskelwachstum.'; 3181 let descIndex = 0; 3182 3183 function typeDescription() { 3184 if (descIndex < descriptionText.length) { 3185 requestAnimationFrame(() => { 3186 file3Description.textContent = descriptionText.substring(0, descIndex + 1); 3187 descIndex++; 3188 if (descIndex < descriptionText.length) { 3189 setTimeout(typeDescription, 60); 3190 } 3191 }); 3192 } 3193 } 3194 3195 typeDescription(); 3196 }, 800); 3197 } 3198 }); 3199 } 3200 } 3201 3202 typeTitle(); 3203 }, 600); 3204 }, 1800); 3205 }, 2000); 3206 } 3207 3208 // Starte Animation 3209 startAnimation(); 3210 3211 // Auch bei Scroll prüfen 3212 let hasStarted = false; 3213 window.addEventListener('scroll', () => { 3214 if (!hasStarted) { 3215 const rect = fileStorageMockup.getBoundingClientRect(); 3216 if (rect.top < window.innerHeight && rect.bottom > 0) { 3217 hasStarted = true; 3218 startAnimation(); 3219 } 3220 } 3221 }); 3222 })(); 3223 </script>
3223 3224
3224<script src="./termin-modal.js"></script>
3224 3225
3225<script src="./kontakt-modal.js"></script>
3225 3226 3227</body> 3228</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.