/* ================================================
   CSS Variables - Global Definitions
   ================================================ */
   :root {
    /* Primary color for buttons, links, etc. */
    --main-color: #3FC5C7; /* Orange Farbe für Buttons und Links #3FC5C7 #ff9800 */
    
    /* Hover color for buttons, links, etc. */
    --main-color-hover: #ffc107; /* Hellere Orangefarbe für Hover-Effekte */
    
    /* Default text color */
    --text-color: #fff; /* Weiße Schriftfarbe */
    
    /* Background color for sections */
    --background-color: rgba(0, 0, 0, 0.6); /* Halbtransparentes Schwarz für Kacheln */
    
    /* Border radius for buttons, inputs, etc. */
    --border-radius: 5px; /* Abgerundete Ecken für Buttons und Eingabefelder */
    
    /* Box shadow for inputs, buttons, etc. */
    --box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Leichter Schatten für Tiefe */
    
    /* Spacing */
    --spacing-small: 10px; /* Kleine Abstände (z.B. Padding) */
    --spacing-medium: 15px; /* Mittlere Abstände (z.B. zwischen Elementen) */
    --spacing-large: 20px; /* Große Abstände (z.B. Abschnittsabstände) */
    
    /* Background color for the entire page */
    --background-body: #f4f4f4; /* Leichte Hintergrundfarbe für die gesamte Seite */
}

/* ================================================
   Allgemeine Einstellungen
   ================================================ */
body, html {
    margin: 0;
    padding: 0;
    font-family: 'Arial', sans-serif;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    background-color: var(--background-body);
	overflow-x: hidden;
}

/* ================================================
   Container für zentrierte Inhalte
   ================================================ */
.container {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

/* ================================================
   Navigation
   ================================================ */
nav {
    width: 100%;
    background: rgba(0, 0, 0, 0.7);
    z-index: 1000;
    position: fixed;
    top: 0;
    left: 0;
    padding: 0 var(--spacing-large);
    box-sizing: border-box;
}

nav .container {
    display: flex;
    justify-content: center;
}

nav ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    width: 100%;
}

nav ul li {
    margin: 0 var(--spacing-medium);
}

nav ul li a {
    text-decoration: none;
    color: var(--text-color);
    font-weight: bold;
    padding: var(--spacing-medium);
    display: block;
    transition: color 0.3s ease;
}

nav ul li a:hover {
    color: var(--main-color);
}

/* ================================================
   Hero Sektion
   ================================================ */
#hero {
    background: url('Bilder/hero_background.jpg') no-repeat center center;
    background-size: cover;
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--text-color);
    text-align: center;
    position: relative;
    padding-top: 60px; /* Platz für die Navigation */
    box-sizing: border-box;
}

#hero .image-wrapper {
    position: relative;
    text-align: center;
}

.polaroid-container {
    margin-top: 1px; /* genug Platz unter dem fixen Navbar */
    text-align: center;
    position: relative;
}

/*
.polaroid-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
*/


.polaroid {
    width: 380px;
    height: auto;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

/* ================================================
   Über mich Sektion
   ================================================ */
#about {
    background: url('Bilder/about_background.jpg') no-repeat center center;
    background-size: cover;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: var(--text-color);
    padding: var(--spacing-large);
    box-sizing: border-box;
}

#about-content-wrapper {
    max-width: 800px;
    margin: 0 auto;
    background: var(--background-color);
    padding: var(--spacing-large);
    border-radius: var(--border-radius);
    z-index: 1;
    position: relative;
}

#about-title {
    font-size: 36px;
    margin-bottom: var(--spacing-large);
}

#about-content {
    font-size: 18px;
    line-height: 1.6;
}

/* ================================================
   Kontakt Sektion
   ================================================ */
#kontakt {
    background: url('Bilder/kontakt_background.jpg') no-repeat center center;
    background-size: cover;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: var(--text-color);
    padding: var(--spacing-large);
    box-sizing: border-box;
}

#kontakt-content-wrapper {
    display: flex;
    flex-direction: column;
    max-width: 1000px;
    margin: 0 auto;
    background: var(--background-color);
    padding: var(--spacing-large);
    border-radius: var(--border-radius);
    z-index: 1;
    position: relative;
}

#kontakt-title {
    font-size: 36px;
    margin-bottom: var(--spacing-large);
    text-align: left;
    width: 100%;
}

#kontakt-content-container {
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: flex-start;
}

#kontakt-text {
    width: 33%;
    text-align: left;
    margin-right: var(--spacing-large);
}

#kontakt-form {
    width: 65%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

#form-title {
    font-size: 24px;
    color: var(--text-color);
    margin-bottom: var(--spacing-medium);
    text-align: left;
    margin-top: 0;
}

#kontakt-content {
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: var(--spacing-large);
    text-align: left;
}

#kontakt-content a {
    color: var(--main-color);
    text-decoration: none;
    font-weight: bold;
    transition: color 0.3s ease;
}

#kontakt-content a:hover {
    color: var(--main-color-hover);
}

form {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

form input[type="text"],
form input[type="email"] {
    width: 100%;
    max-width: 100%;
    padding: var(--spacing-small);
    margin-bottom: var(--spacing-medium);
    border: none;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    font-size: 16px;
    box-sizing: border-box;
}

form textarea {
    width: 100%;
    max-width: 100%;
    padding: var(--spacing-small);
    margin-bottom: var(--spacing-medium);
    border: none;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    font-size: 16px;
    box-sizing: border-box;
    resize: vertical;
}

form input::placeholder,
form textarea::placeholder {
    color: #cccccc;
    opacity: 1;
    font-size: 16px;
}

form input[type="submit"] {
    align-self: flex-end;
    background-color: var(--main-color);
    color: var(--text-color);
    border: none;
    padding: var(--spacing-small) var(--spacing-large);
    border-radius: var(--border-radius);
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    margin-top: var(--spacing-medium);
}

form input[type="submit"]:hover {
    background-color: var(--main-color-hover);
}

/* ================================================
   Footer
   ================================================ */
footer {
    background: rgba(0, 0, 0, 0.8);
    color: var(--text-color);
    text-align: center;
    padding: var(--spacing-small);
    margin-top: auto;
    width: 100%;
}

footer .container {
    text-align: center;
}



@media (max-width: 600px) {
    nav ul li a {
        padding: 10px 6px; /* weniger horizontaler Abstand */
        font-size: 14px;   /* optional: kleinere Schrift */
    }
}

#kontakt-intro {
    font-size: 22px;
    line-height: 1.6;
    margin-bottom: var(--spacing-large);
    text-align: left;
    color: var(--text-color);
}