@import url('https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500&display=swap');
:root{
    --main-brand-color: rgb(255, 255, 255);
    --light-main-brand-color: rgb(185, 185, 185);
    --primary-color: rgb(141, 140, 140);
    --secondary-color: rgb(94, 94, 94);
    --title-color: rgb(255, 255, 255);
    --text-color: rgba(255, 255, 255, 0.8);
    --border-color: rgba(255, 255, 255, 0.3);
    --hover-color:rgba(0, 0, 0, 0.7);
}

*{
    margin: 0;
    padding: 0;
}

body {
    min-height: 100vh;
    font-family: 'Raleway', sans-serif;
    color: var(--text-color);
    background-color: rgb(0, 0, 0);
}

services, projektablauf, aboutDesktop, referenzen, kontakt, footer, .impressum {
    display: block;
    padding: 2vw 4vw 2vw 4vw;
    position: relative;
    margin-top: clamp(3px, 0.5vh, 10px);
    margin-bottom: clamp(3px, 0.5vh, 10px);
    z-index: 1;
}

.impressum {
    padding-top: 3vw;
    padding-bottom: 3vw;
}

h1 { 
    font-size: 70px;
    line-height: 115%;
    color: var(--title-color)
}

h2 {
    font-size: 30px;
    line-height: 115%;
    color: var(--title-color)
}

h3, button {
    font-size: 20px;
    line-height: 115%;
    color: var(--title-color)
}

h4 {
    font-size: 18px;
    line-height: 115%;
    color: var(--title-color)
}

p {
    font-size: 16px;
    line-height: 175%;
    hyphens: auto;
    color: var(--text-color);
}

strong {
    font-weight: bold;
}

a {
    color: var(--text-color);
    text-decoration: none;
    position: relative;
    font-size: 20px;
    font-weight: 500;
}

.subheading{
    margin-top: 25px;
    font-size: 30px;
    color: var(--secondary-text-color);
}

#background {
    background-image: url(/img/hand.png);
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 20vw;
}

/* Home Button */
.home-button {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 60px; 
    height: 60px;
    padding: 0;
    background-color: rgb(134, 134, 134); 
    border: none;
    border-radius: 50%; 
    display: flex; 
    justify-content: center; 
    align-items: center; 
    text-align: center;
    z-index: 1000;
    transition: background-color 0.3s ease;
}

.home-button:hover {
    background-color: rgb(90, 90, 90); 
}

.material-symbols-rounded {
    font-size: 60px;
}

header + .home-button {
    display: none;
}

/* Responsive Anpassung */
@media(max-width: 1200px) {
    #background {
        background-position: center center;
        min-height: 30vw;
    }

    h1 {
        font-size: clamp(24px, 4rem, 70px);
    }

    h2 {
        font-size: clamp(18px, 2.2rem, 30px);
    }

    h3, button {
        font-size: clamp(14px, 1.8rem, 20px);
    }

    h4 {
        font-size: clamp(12px, 1.6rem, 18px);
    }

    p, a {
        font-size: clamp(10px, 1.6rem, 14px);
    }

    .subheading {
        font-size: clamp(18px, 3vw, 30px);
    }
}

@media (max-width: 1200px) {
    #background {
        display: none;
    }
}

@media (max-width: 480px) {
    #background {
        display: none;
    }

    h1 {
        font-size: clamp(18px, 2rem, 70px);
    }

    h2 {
        font-size: clamp(14px, 1.3rem, 30px);
    }

    h3, button {
        font-size: clamp(12px, 1rem, 20px);
    }

    h4 {
        font-size: clamp(10px, 0.9rem, 18px);
    }

    p {
        font-size: clamp(10px, 0.8rem, 16px);
    }

    a {
        font-size: clamp(10px, 0.8rem, 16px);
    }

    .subheading {
        font-size: 1.2em;
    }

    .home-button {
        display: none;
    }
}
