/* Dies ist die main CSS Datei */

@charset "utf-8";

/* Global Reset & Box Sizing */
*, *::before, *::after {
    box-sizing: border-box;
}

/* Der Body Bereich */

body {
    margin: 0;
    padding: 0;
    background-color: #4B6A8A;
    font-size: 12px;
    background-image: url("../../../img/bg.png");
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: 100% 100%;
}

p {
    margin-top: 20px;
}

.page {
    width: 60vw;
    margin: 30px auto;
}

.page-content {
	padding: 0vh 6vw 2vw 6vw;
	text-align: left;
    font-size: 12pt;
}

.container {
    width: 100%;
}

.headline-h1 {
	padding: 0 0 5vh 0;
	text-align: center;
	font-size: 24pt;
	font-weight: bold ;
	text-shadow: 2px 1px rgba(128, 128, 128, 0.664);
    /* text-shadow: 3px 3px 3px grey; */
}

.headline-h2 {
    padding: 0 0 5vh 0;
    font-size: 18pt;
    font-weight: bold;
    text-shadow: 2px 1px rgba(128, 128, 128, 0.664);
}

.headline-h3 {
	padding: 2vh 0 2vh 0;
	font-size: 16pt;
	font-weight: bold ;
	text-shadow: 2px 1px rgba(128, 128, 128, 0.664);
}

.headline-h4 {
	padding: 0 0 5vh 0;
	font-size: 14pt;
	font-weight: bold ;
	text-shadow: 2px 1px rgba(128, 128, 128, 0.664);
}

.headline-h5 {
	margin: 0 0 5px 0;
	font-size: 12pt;
	font-weight: bold ;
	text-shadow: 2px 1px rgba(128, 128, 128, 0.664);
}

/* Header Section */
.top-nav-section {
    background-color: #8cd5e3;
    width: 100%;
    border-bottom: 2px solid #8cd5e3;
}

.header-container {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    min-height: 128px;
    padding: 0;
}

/* Base Logo (Fallback für alle Browser) */
#logo {
    z-index: 2000001;
    height: 130px;
    width: auto;
    display: block;
    position: absolute;
    right: 20vw;
}

/* Chrome & Edge (Chromium) */
@supports (-webkit-appearance: none) and (not (-moz-appearance: none)) and (not (-webkit-touch-callout: none)) {
    #logo {
        right: 19.6vw;
    }
}

/* Firefox */
@-moz-document url-prefix() {
    #logo {
        right: 20vw;
    }
}

/* Safari */
@supports (-webkit-touch-callout: none) {
    #logo {
        right: 20vw;
    }
}


.navi-top {
    display: flex;
    align-items: center;
    padding-left: 20px;
}

.navi-top ul {
    margin: 0;
    padding: 0;
    text-align: left;
    list-style: none;
}

.navi-top li {
    display: inline;
    margin: 0 0.5em;
}

.navi-top a:link, 
.navi-top a:visited, 
.navi-top a:active {
    text-decoration: none;
    color: #333;
    font-size: 11pt;
    font-weight: 500;
}

.navi-top a:hover {
    color: #000;
    font-weight: bold;
}

/* Main Content Section */
.main-content-section {
    background-color: #FFF;
    width: 100%;
    min-height: 600px;
}

.content-inner {
    text-align: left;
    padding: 40px 0;
}

/* Footer Section */
.main-footer-section {
    background-color: #8cd5e3;
    width: 100%;
    border-top: 2px solid #8cd5e3;
}

.main-footer {
	position: relative;
	width: 100%;
	background-color: #8CD5E3;
}

.footer-container {
    display: flex;
    justify-content: flex-end;
    padding: 60px 150px;
	width: 70%;
}

.footer-container ul {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 11pt;
    color: #333;
    line-height: 1.6;
    text-align: left; /* Keep text lines left-aligned relative to each other */
}

.footer-container a {
    color: #0066cc;
    text-decoration: none;
}

.footer-container a:hover {
    text-decoration: underline;
}