body {
    margin: 0;
    font-family: "Roboto", sans-serif;
    font-optical-sizing: auto;
    color: black;
    position: relative; /* Für die korrekte Positionierung von absoluten Elementen */
    overflow-x: hidden; /* Verhindert horizontales Scrollen */
}

.header {
    overflow: hidden;
    background-color: #0e0f12;
    display: flex;
    z-index: 1; /* Header über dem Hintergrundbild platzieren */
}

.header a {
    align-items: center;
    justify-content: center;
    text-align: justify;
    float: left;
    text-align: center;
    text-decoration: none;
    font-size: 19px;
    border-radius: 4px;
    margin: 0 7px 0 7px;
}

.header a:hover {
    text-decoration: none;
}

.navigation-bar {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    white-space: nowrap;
}

.navigation-bar a.logo-link {
    font-family: "IBM Plex Sans", sans-serif;
    font-size: 30px;
    font-weight: bold;
    color: white;
    margin: 0 10px 0 20px;
    padding: .7rem 0 .7rem 0;
}

.nav {
    list-style: none;
    padding: 0;
}

h1 {
    font-size: 3rem;
    font-weight: 700;
}

.main-section {
	background: linear-gradient(-45deg, #ff7e5f, #feb47b, #ff6f61, #ffcccb);
	background-size: 400% 400%;
	animation: gradient 15s ease infinite;
    color: black;
    padding: 6rem 2rem;
    text-align: center;
    min-height: 60vh;
}

@keyframes gradient {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

.main-section h2 {
    font-size: 2.8rem;
    margin: 0;
}

p {
    font-size: 1.1rem;
}

.video-info button {
    background: #fff;
    color: #ff7e5f;
    border: none;
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    cursor: pointer;
    border-radius: 5px;
    transition: background 0.3s, color 0.3s;
}

.video-info button:hover {
    background: #ff7e5f;
    color: #fff;
}

.container {
    display: table;
    margin: 4rem auto;
    width: 40%;
    text-align: center;
    border-radius: 1rem;
    padding: 1rem 1rem 2rem 1rem;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
    background: white; /* Hintergrund für den Container */
    z-index: 1; /* Container über dem Hintergrundbild platzieren */
}

button {
    padding: 12px 24px;
    font-size: 16px;
    background-color: #4CAF50;
    color: #ffffff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

button:hover {
    background-color: #45a049;
}

#downloadStatus {
    margin-top: 20px;
    text-align: center;
}

#downloadStatus a {
    display: inline-block;
    padding: 12px 24px;
    font-size: 16px;
    background-color: #008CBA;
    color: #ffffff;
    text-decoration: none;
    border-radius: 4px;
    transition: background-color 0.3s ease;
}

#downloadStatus a:hover {
    background-color: #005F6B;
}

.loading {
    display: none;
    text-align: center;
    margin-top: 10px;
    font-weight: bold;
    color: white;
}

section {
    padding: 4rem 2rem;
    text-align: center;
    background: white;
}

.video-info {
    clip-path: polygon(0 0,100% 2.5rem,100% 100%,0 100%);
    margin-top: -3rem;
}

video {
    border: 1px solid black;
    max-width: 60%;
    max-height: 50%;
}

/* New Form Styles */
#downloadForm {
    max-width: 600px; /* Limit the form's maximum width */
    margin: 0 auto; /* Center the form horizontally */
    display: flex;
    flex-direction: column;
}

.form-row {
    display: flex;
    gap: 15px; /* Space between the input fields */
    margin-bottom: 15px;
}

.form-group {
    flex: 1;
    display: flex;
    flex-direction: column;
}

label {
    font-size: 1rem;
    font-weight: bold;
    margin-bottom: 5px;
    color: #333;
}

input[type="text"],
select {
    width: 100%;
    padding: 10px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-sizing: border-box;
}

input[type="text"]:focus,
select:focus {
    outline: none;
    border-color: #007bff;
}

.submit-group {
    margin-top: 10px;
}

input[type="submit"] {
    width: 40%;
    margin: 0 auto;
    padding: 10px;
    font-size: 16px;
    border: none;
    border-radius: 5px;
    background-color: #0e0f12;
    color: #fff;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

input[type="submit"]:hover {
    background-color: #292b31;
}
