        /* Definieren der Hauptfarbe als benutzerdefinierte Tailwind-Klasse */
        :root {
            --main-color: #47BB00; /* KLEIN Solutions Grün */
        }
        .bg-klein-green { background-color: var(--main-color); }
        .text-klein-green { color: var(--main-color); }
        .border-klein-green { border-color: var(--main-color); }

        body {
            font-family: 'Inter', sans-serif;
            background-color: #f7f9fb; /* Sehr helles Hintergrund-Thema */
        }
		
		.btn:hover .btn-klein-green:hover {
			background-color: white;
			color: var(--main-color);
			border-color: var(--main-color);
		}
		


        /* Styling für die Hero-Sektion mit Video */
        #hero-video-container {
            position: relative;
            width: 100%;
            height: 100vh; /* Volle Bildschirmhöhe */
            overflow: hidden;
        }
        #hero-video {
            object-fit: cover;
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
            z-index: -1; /* Video hinter den Inhalt legen */
        }
        /* Overlay für bessere Lesbarkeit des Textes */
        #hero-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.6); /* Dunkles, halbtransparentes Overlay */
            z-index: 0;
        }

        /* Animation für die fixe Navigation bei Scroll */
        .scrolled {
            background-color: white;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
        }

        /* Styling für die Fähnchen (Floating Flags) */
        .floating-flag {
            position: fixed;
            right: 0;
            z-index: 50;
            /* Start-Zustand: Zeigt nur Icon (ca. 3.5rem Breite) */
            transform: translateX(calc(100% - 3.5rem));
            transition: transform 0.4s ease-in-out;
            border-radius: 0.5rem 0 0 0.5rem;
            cursor: pointer;
            box-shadow: -4px 0 10px rgba(0, 0, 0, 0.1);
            padding: 0.75rem 0.75rem; /* Padding für den Icon-Bereich */
            width: max-content; /* Passt sich dem Inhalt an */
        }

        .floating-flag:hover {
            transform: translateX(0); /* Fährt beim Hover komplett rein */
        }
        
        .floating-flag-content {
            display: flex;
            align-items: center;
        }

        .flag-text {
            /* Text standardmäßig versteckt durch max-width=0 */
            max-width: 0;
            overflow: hidden;
            transition: max-width 0.4s ease-in-out, margin-left 0.4s ease-in-out, opacity 0.4s ease-in-out;
            white-space: nowrap;
            margin-left: 0;
            opacity: 0;
        }
        
        .floating-flag:hover .flag-text {
            /* Volle Breite und Margin anzeigen, um Text sichtbar zu machen */
            max-width: 200px; /* Groß genug für den längsten Text */
            margin-left: 0.75rem;
            opacity: 1;
        }


        #flag-call { top: 35%; }
        #flag-contact { top: 50%; }

        /* Scroll-Glättung */
        html {
            scroll-behavior: smooth;
        }