/* Grundlayout */
html, body {
    margin: 0;
    padding: 0;
    overflow-x: hidden; /* verhindert Scrollen nach rechts */
    font-family: Raleway, sans-serif;
    background-color: #010101;
    color: white;
}

/* Header */
h1 {
    text-align: center;
    font-size: 2.6rem;
    margin: 20px 0;
    margin-top: 7%;
}

h2 {
    text-align: center;
    font-size: 1.3rem;
    margin: 20px 0;
    font-weight: 200;
}

li{
	
	list-style-type: none;
	
}

.B2 {
    width: 50%;
    height: 50%;
}

.B2:hover {
    transform: scale(1.05);
    filter: brightness(0.9);
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1), filter 0.6s ease;
}

/* Typing Animation */
.typing {
	margin-top: 8vw;
    font-size: 2.5rem;
    font-weight: bold;
    white-space: nowrap;
    overflow: hidden;
    border-right: 3px solid white;
    width: 0;
    color: white;
    animation: typing 2s steps(13) forwards, blink 0.75s step-end infinite alternate;
}

@keyframes typing {
    to {
        width: 13ch;
    }
}

@keyframes blink {
    50% {
        border-color: transparent;
    }
}

/* Container für Kategorien */
.category-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    padding: 20px;
}

/* Kategorie Boxen */
.category {
    background-color: black;
    border: none;
    border-radius: 15px;
    padding: 15px;
    flex: 1 1 250px;
    max-width: 300px;
    text-align: center;
    transition: transform 0.3s, box-shadow 0.3s;
    margin-bottom: 3vw;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
}

.category img {
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.category:hover {
    transform: translateY(-5px);
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.1);
}

.F1 {
    width: 60%;
    background-color: #222;
    padding: 15px;
    text-align: center;
    border-radius: 15px;
    margin-bottom: 5vw;
}

/* Footer */
footer {
    background-color: #222;
    padding: 15px;
    text-align: center;
}

footer ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

footer ul li {
    display: inline-block;
    margin: 0 10px;
}

footer ul li a {
    color: #fff;
    text-decoration: none;
}

/* Responsive C1 und C2 */
.C1, .C2 {
    background-color: black;
    border-radius: 15px;
    padding: 15px;
    flex: 1 1 clamp(250px, 40%, 600px);
    max-width: clamp(250px, 40%, 600px);
    text-align: center;
    transition: transform 0.3s, box-shadow 0.3s;
    margin-bottom: 2vw;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
}

.C1 {
    background-color: #FFD700;
    color: black;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.8);
}

.C3, .C4 {
    width: 80%;
    background-color: black;
    border-radius: 15px;
    padding: 15px;
    flex: 1 1 250px;
    text-align: center;
    transition: transform 0.3s, box-shadow 0.3s;
    margin-bottom: 1vw;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
}

.C4 {
    width: 70%;
}

/* Responsive für Smartphones (bis 321px) */
@media (max-width: 321px) {
    .U1 {
        font-size: 1.5rem;
    }
}

/* Responsive für Smartphones (bis 425px) */
@media (max-width: 426px) {
    h1 {
        font-size: 1.8rem;
        margin: 15px 0;
        margin-top: 10%;
    }

    h2 {
        font-size: 1.1rem;
        margin: 15px 0;
        padding: 0 15px;
    }

    .category-container {
        flex-direction: column;
        align-items: center;
        gap: 15px;
        padding: 10px;
    }

    .category {
        width: 60%;
        padding: 10px;
    }

    .category img {
        border-radius: 8px;
    }

    footer {
        font-size: 0.9rem;
        padding: 10px;
        margin-top: 5vw;
    }

    .B2 {
        margin-top: -5%;
        width: 100%;
        height: 100%;
    }
	
}

/* Responsive für Tablets (bis 769px) */
@media (max-width: 769px) {
    h1 {
        font-size: 2.2rem;
        margin-top: 3vw;
    }

    .typing {
        font-size: 2rem;
    }

    h2 {
        font-size: 1.2rem;
        margin-top: 10%;
    }

    .category-container {
        flex-direction: row;
        gap: 15px;
        padding: 15px;
    }

    .category {
        flex: 1 1 200px;
        width: 100px;
        padding: 12px;
    }

    footer ul li {
        
        margin: 5px 3px;
    }

    .B2 {
        width: 70%;
        height: 70%;
    }
	
}

/* Große Bildschirme (über 2559px) */
@media (min-width: 1439px) {

	.C1{
		
		font-size: 2vw;
		height: 3.5vw;
		
	}
	
	
	.C2{
		
		font-size: 2vw;
		height: 3.5vw;
	}

	footer{
		
		font-size: 2vw;
		
	}
	
	.typing{
		
		font-size: 4vw;
		
	}
	
	h2{
		
		font-size: 2vw;
		
	}
	
	.C4{
		
		font-size: 2vw;
		margin-top: 2vw;
		margin-bottom: 2vw;
		
	}

}

/* Große Bildschirme (über 2559px) */
@media (min-width: 2559px) {
    .typing {
        font-size: 5vw;
    }

    h1 {
        font-size: 5vw;
    }

    h2 {
        font-size: 2vw;
    }

    footer {
        font-size: 2vw;
    }

    .category-container {
        display: flex;
        justify-content: center;
        gap: 2vw;
    }

    .category {
        flex: 1 1 380px;
        max-width: 550px;
        padding: 25px;
    }

    .P1 {
        font-size: 2vw;
    }
	
	.C1, .C2 {
        flex: 1 1 clamp(500px, 55%, 1000px);
        max-width: clamp(500px, 55%, 1000px);
		height: 90px;
		border-radius: 1vw;
    }
	
	.C4{
		
		padding: 2vw;
		border-radius: 2vw;
		
	}
	
	.F1{
		
		border-radius: 1.5vw;
		
	}
	
}
