        /* Allgemeine Einstellungen */
        :root {
            --primary-color: #003366; /* Dunkelblau */
            --secondary-color: #880000; /* Dunkelrot */
            --text-light: #f4f7f9; /* Helles Grau/Weiß */
            --text-dark: #333;
            --font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            --max-width: 1200px;
			--color-text: #333333;
			--color-link: #880000;
			--color-link-background: #114477;
        }

        body {
            font-family: var(--font-family);
            margin: 0;
            padding: 0;
            background-color: var(--text-light);
            color: var(--text-dark);
			line-height: 1.3;
        }

        /* Header und Navigation */
        .header {
            background-color: var(--primary-color);
            color: var(--text-light);
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
            position: sticky;
            top: 0;
            z-index: 1000;
        }

        .nav-container {
            max-width: var(--max-width);
            margin: 0 auto;
            padding: 0 20px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            height: 60px;
        }

        .logo {
            font-size: 1.5rem;
            font-weight: bold;
            color: var(--text-light);
            text-decoration: none;
            padding: 10px 0;
        }

        .nav-menu {
            list-style: none;
            margin: 0;
            padding: 0;
            display: flex;
            align-items: center;
        }

        .nav-item {
            position: relative; /* Wichtig für das Dropdown */
        }

        .nav-link {
            display: block;
            padding: 20px 15px;
            text-decoration: none;
            color: var(--text-light);
            transition: background-color 0.3s, color 0.3s;
            line-height: 20px; /* Vertikale Ausrichtung im Header */
        }

        .nav-link:hover {
            background-color: rgba(255, 255, 255, 0.1);
        }

        /* Aktiver Link (Hauptmenü und Untermenü) */
        .nav-link.active {
            font-weight: bold;
            border-bottom: 3px solid var(--secondary-color);
            color: var(--text-light);
        }

        /* Submenü (Dropdown) */
        .submenu {
            list-style: none;
            margin: 0;
            padding: 0;
            position: absolute;
            top: 100%; /* Unter dem Hauptmenüpunkt */
            left: 0;
            min-width: 200px;
            background-color: var(--primary-color); /* Gleiche Farbe wie Header */
            box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
            z-index: 1010;
            /* Desktop: Standardmäßig ausgeblendet */
            display: none; 
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .submenu-item a {
            padding: 12px 20px;
            color: var(--text-light);
            white-space: nowrap; /* Verhindert Zeilenumbruch */
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        }

        .submenu-item a:hover {
            background-color: var(--secondary-color); /* Hover-Farbe im Submenü */
            color: var(--text-light);
        }

        /* Das Untermenü wird nur bei echtem Hover über das LI sichtbar */
        .nav-item:hover > .submenu {
            display: block;
            opacity: 1;
        }
        
        /* Sicherstellen, dass der :focus-Zustand des A-Tags die Sichtbarkeit NICHT erzwingt */
        .nav-item:focus-within > .submenu {
            /* Für Desktop: nur bei Hover anzeigen. Wenn der Klick keine Navigation auslöst, */
            /* sorgt der JS-Fix (blur) dafür, dass focus schnell verschwindet. */
            /* Auf keinen Fall hier display: block setzen, da dies den Hover überschreiben würde. */
        }

        /* Hamburger-Menü (nur Mobile) */
        .menu-toggle {
            display: none; /* Auf Desktop standardmäßig ausblenden */
            background: none;
            border: none;
            color: var(--text-light);
            font-size: 1.5rem;
            cursor: pointer;
            padding: 10px;
        }

        /* Main Content Styling */
        .main-content {
            max-width: var(--max-width);
            margin: 10px auto;
            padding: 0 10px;
        }

        .page-section {
            display: none;
            padding: 10px 0;
            min-height: 60vh;
            animation: fadeIn 0.5s;
        }

        .page-section.active {
            display: block;
        }

        @keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }

h1		{
            color: var(--primary-color);
            border-bottom: 2px solid var(--secondary-color);
            padding-bottom: 5px;
            margin-bottom: 20px;
        }
		
h2		{
            color: var(--primary-color);
            
            padding-bottom: 3px;
            margin-bottom: 10px;
        }
		
a		{
            font-style: italic;
			color: var(--color-link);
			text-decoration: none;
        }

a:hover	{
            color: var(--text-light);
			background-color: var(--color-link-background);
        }

        
        /* Inhalts-Layout */
        .content-grid {
            display: grid;
            gap: 30px;
            grid-template-columns: 1fr;
        }

        .image-container {
            margin: 10px;
            padding: 0;
            /*background-color: #e0e0e0;*/
            border-radius: 8px;
            overflow: hidden;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        }

        .image-container img,
		.image-container video	{
            width: 100%;
			margin: 0 auto;
            height: auto;
            display: block;
            border-radius: 8px 8px 0 0;
        }

        figcaption {
            background-color: #f0f0f0;
            padding: 10px;
            font-size: 0.9em;
            text-align: center;
            color: var(--text-dark);
            border-radius: 0 0 8px 8px;
        }
		
		video {
            background-color: black;
            border: 2px dashed var(--color-accent);
            color: white;
            height: 200px;
            width: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 1rem;
            text-align: center;
        }

        /* Footer */
        .footer {
            text-align: center;
            padding: 15px;
            background-color: var(--primary-color);
            color: var(--text-light);
            margin-top: 40px;
        }

        /* ======================================= */
        /* MEDIA QUERY: Tablet & Desktop */
        /* ======================================= */
        @media (min-width: 768px) {
            .nav-container {
                height: 80px;
            }
            .nav-link {
                padding: 30px 15px; /* Höheres Padding für bessere Klick-/Hover-Fläche */
            }
            .content-grid {
                grid-template-columns: 5fr 2fr; /* Zwei Spalten */
            }
			.image-container {
				align-self: center;
			}
        }

        /* ======================================= */
        /* MEDIA QUERY: Mobile */
        /* ======================================= */
        @media (max-width: 767px) {
            .nav-container {
                padding: 0 10px;
            }
            .nav-menu {
                position: absolute;
                top: 60px;
                left: 0;
                right: 0;
                flex-direction: column;
                background-color: var(--primary-color);
                height: 0;
                overflow: hidden;
                transition: height 0.3s ease-out;
                box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
                align-items: stretch;
            }

            .nav-menu.open {
                height: auto; /* Wird durch JS dynamisch gesetzt */
                min-height: calc(100vh - 60px); 
            }

            .menu-toggle {
                display: block;
            }

            .nav-item {
                width: 100%;
                border-top: 1px solid rgba(255, 255, 255, 0.1);
            }
            
            .nav-link {
                padding: 15px 20px;
            }
            
            .nav-link.active {
                background-color: var(--secondary-color);
                border-bottom: none;
            }

            /* Submenü auf Mobile (steuert durch JS Klasse) */
            .submenu {
                position: static; /* Stacked unter dem Hauptpunkt */
                background-color: #002244; /* Dunklerer Ton */
                box-shadow: none;
                display: none;
                opacity: 1; /* Immer volle Deckkraft, wenn sichtbar */
                border-left: 5px solid var(--secondary-color);
            }

            .nav-item.submenu-open > .submenu {
                display: block; /* Durch JS-Klasse sichtbar */
            }

            .submenu-item a {
                padding: 10px 20px 10px 40px; /* Einzug */
            }
            
            .submenu-item a.active {
                background-color: var(--secondary-color);
            }
        }
