body {
    font: 15px/1.5  Arial, Helvetica, sans-serif,courier;
    margin: 0;
    padding: 0;
    background-color: #ffffff;
}


/*Global */
.container {
    width: 80%;
    margin: auto;
    overflow: hidden;
}

ul {
    margin: 0;
    padding: 0;
}

.button_1 {
    min-height: 2rem;
    background: #028b9e;
    border: none;
    color: #ffffff;
    text-decoration: none;
    box-shadow: 2px 2px 5px #000000;
    margin-bottom: 1.5rem;


}
a {
    text-decoration: underline;
    color: #028b9e;
}



a:hover {
    font-size: large;
    color: #028b9e;
}


.dark {
    padding: 15px;
    background: rgba(255, 239, 213);
    color: #290aa3;
    margin-top: 10px;
    margin-bottom: 10px;
}

/*Header*/
header {
    background: #ffffff;
    color: #ffffff;
    padding-top: 2rem;
    min-height: 60px;
    border-bottom: #028b9e 3px solid;
}

header a{
    color: #000000;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 1.2rem;

}



header li {
    display: inline;
    padding: 0 20px 0 20px;
}

/* .header nav{
    margin-top: 0.7rem;
} */


header .highlight, header .current a{
    color: #028b9e ;
    font-weight: bold;
}

header a:hover {
    color: #000000;
    font-weight: bold;
}

header .flags {
    width: 4%;

    padding: 0 20px 0 20px;
    float: right;
    animation-duration: 2s;
    animation-delay: 1s;
   
}

header img {
    box-shadow: 2px 2px 5px #000000;
}


.nav_left {
    float: left;
}
.nav_right {
    float: right;
}

.header .hamburger_button {
    display: none;
}


/*showcase*/
#showcase {
    height: 100%;

    text-align: center;
    color: #000000;

}

#showcase h1 {
    margin-top: 50px;
    font-size: 55px;
    margin-bottom: 10px;
    animation-delay: 1s;
    animation-duration: 2s;
}

#showcase h1 span {
    color: #028b9e
}


#showcase p{
    font-size: 20px;
    animation-delay: 1.2s;
    animation-duration: 2s;

}
#showcase p span{
color: #028b9e;

}


/*Main*/

.card_index {
    display: block;
    grid-template-columns: 1fr 1fr;
    grid-gap: 2rem;
    margin-bottom: 2rem; 
}

.card_index img {
    max-height: 100px;
    max-width: 150px;
    box-shadow: 2px 2px 5px #000000;
    margin-bottom: 2rem;
}

.card {
    display: block;
    text-align: center;
    border: solid;
    border-color: #cccccc;
    border-radius: 10px;
    margin-bottom: 3rem;


}

.card p{
    text-align: justify;
    margin-left: 1.5%;
    margin-right: 1.5%;
    font-size: 1.15rem;
}

.card h3 {
    margin-bottom: 2rem;
}

.card img {
    max-height: 300px;
    min-height: 200px;
    padding: 1rem 1rem 1rem 1rem;
    
}


.card:nth-child(even) img {
    order: 2;
}

.card .button_1{
    margin-top: 1rem;
    padding: 0.5rem 0.5rem 0 0.5rem;
    display: inline-block;
}

.button_1:hover {
    opacity: 90%;
    font-size: 1rem;
    color: #ffffff;
}

.card1 {
    display: grid;
    grid-template-columns: 2fr 1fr;
    margin-top: 2rem;
    padding: 0 30px 30px 30px;
    background-color: rgba(204, 204, 204, 0.5);
    border-radius: 10px;    
}

.card1 p {
    font-size: 1.3rem;
}
.card1 h3{
    font-size: 1.5rem;
}

.card_bewerbung {
    display: grid;
    grid-template-columns: 2fr 1fr;
    margin-top: 2rem;
    padding: 0 30px 30px 30px;
    border-radius: 10px;    
}

.card_contact {
    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-gap: 5%;
    margin-top: 1rem;
    padding: 30px;
    background-color: rgba(204, 204, 204, 0.5);
    border-radius: 10px;
}

.card_unterlagen {
    padding: 0.5rem;
}

.card_unterlagen td{
    padding-bottom: 1.5rem;
}




.card_steckbrief {
    display: grid;
    grid-template-columns: 2fr 1fr;
    grid-gap: 5%;
    

}


.steckbrief{
    border-style: double;
    border-color: #cccccc;
    border-radius: 10px;
}

.steckbrief td {
    color: #000000;
    width: 30%;
    text-align: justify;
    padding: 2%;
    font-size: 1.15rem;
}

.card_steckbrief img{
    height:100%;
    border-radius: 10px;
 }

.card_gallery {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2,1fr);
    grid-gap: 2rem;
    margin-bottom: 2rem;

}
.card_gallery img{
    width:100%;
    border-radius: 10px;

}
.gallery_left1{
    grid-area: 1 / 1 / 2 / 2;
}

.gallery_left2 {
    grid-area: 2 / 1 / 3 / 2;
}

.gallery_right {
    grid-area: 1 / 2 / 3 / 3;
}

.card_gallery2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 2rem;
}

.card_gallery2 img{
    width:100%;
    border-radius: 10px;
}





/*boxes*/
#boxes {
    margin-top: 5%;

}

#boxes .box{
    float: left;
    text-align: center;
    width: 30%;
    padding: 1.5% 1% 0 1%;
    font-size: 1rem;
    min-height:330px
}

#boxes p{
    text-align: justify;
    padding: 1% 2.5% 0 2.5%;
}

#boxes .box img{
    width: 90px;
}

#boxes .box:hover{
    border-style: solid;
    border-width: 1px;
    border-radius: 10px;
    background-color: rgba(198, 198, 198, 0.3);

}

#boxes  a{
    text-decoration: none;
    color: #000000;
}

#boxes h3 {
    color: #028b9e ;
    font-size: 1.25rem;
}

table a{
    text-decoration: none;
    color: black;
    font-size: large;
}

table a:hover {
    font-weight: bold;
    opacity: 80%;

}


.kontaktanfrage input {
    width: 100%;
    padding: 8px 0 8px 4px;
    margin-bottom: 1rem;
}

.kontaktanfrage textarea {
        width: 100%;
        padding: 8px 0 8px 4px;
        margin-bottom: 1rem;
}
    

/*sidebar*/

.anfrage .button_1 {
    width: 100%;

}

.feedback {
    text-align: center;
    animation-duration: 2s;
    animation-delay: 1s;
    animation-fill-mode: forwards;
    font-size: 1.15rem;
    color: #028b9e;
}

/*main-col*/
article#main-col {
    float: right;
    width: 60%;
    margin-top: 1rem;

    
}

/*Service*/
ul#services li {
    list-style: none;
    padding: 0.5rem 1rem 1rem 1rem;
    border: #cccccc solid 1px;
    margin-bottom: 5px;
    background: #e6e6e6;
}


footer {
    padding: 20px 0 20px 0;
    margin-top: 20px;
    color: #000000;
    background-color: #ffffff;
    text-align: center;
    border-top: #000000 1px solid;
}
.ausnahme {
    position: absolute;
    padding: 20px 0 20px;
    bottom: 0;
    width: 100%;
    margin-top: 20px;
    text-align: center;
}


/*Media*/
@media screen and (min-width:769px) and (max-width: 998px){
    header #branding, 
    header nav,
    header nav li,
    article#main-col, 
    aside#sidebar {
        float: none;
        text-align: center;
        width: 100%;

    }
    aside .about img {
        width: 60%;
        text-align: center;
        margin-top: 1.5rem;
    }
    header {
        padding-bottom: 20px;
    }

    #boxes .box {
        display:block;
        width: 95%;
        border-style: solid;
        border-color: #cccccc;
        margin-bottom: 3%;
    }

    #boxes .box:hover {
        border-style: solid;
        border-style: #cccccc;
        
    }


    #showcase h1 {
       margin-top: 40px;
       font-size: 40px;
    }
    .anfrage button {
        display: block;
        width: 100%;
    }
    header .flags {
        width:8%;
    }

    .card {
        display: block;
        text-align: center;
        border: solid;
        border-color: #cccccc;
        border-radius: 10px;
    }
    .card img {
        max-height: 260px;
        padding: 1rem 1rem 1rem 1rem;
     }


    .card_contact {
        display: block;
        text-align: center;
        border: solid;
        border-color: #cccccc;
        border-radius: 10px;
    

    }
    .card_contact img{
        height: 180px;
    }
    .card_steckbrief {
        display: block;
        text-align: center;

    }
    .card_steckbrief img {
        height: 300px;
        margin-top: 1rem;
    }

    .card_gallery {
        display: block;
        text-align: center;
        margin-bottom: 4rem;
        border: solid;
        border-color: #cccccc;
        border-radius: 10px;
    } 
    .card_gallery2 {
        display: block;
        text-align: center;
        border: solid;
        border-color: #cccccc;
        border-radius: 10px;
    }
    
    .kontaktanfrage{
        display: block;
        margin-bottom: 1rem;
    }
    .kontaktanfrage input {
        width: 100%;
        padding: 8px 0 8px 0;
        margin-bottom: 1rem;
        text-align: center;
    }
    
    .kontaktanfrage textarea {
            width: 100%;
            padding: 8px 0 8px 0;
            margin-bottom: 1rem;
            text-align: center;
    }

    .card img{
        max-height: 180px;
        max-width: 300px;
    }
    
   .small img{
        height: 140px;
    }

    .smaller img{
        height: 120px;
    }

    .card h3 {
        margin-bottom: 0.5rem;
    }

    .card .button_1 {
        width: 60%;
        text-align: center;
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
    }
    .ausnahme {
        position: relative;
        color: #000000;
        background-color: #ffffff;
        text-align: center;
    }



}

@media screen and (min-width: 999px) and (max-width: 1199px) {
    article#main-col{
        margin-bottom: 2rem;
    }
    .card {
        display: block;
        text-align: center;
        border: solid;
        border-color: #cccccc;
        border-radius: 10px;
    }

    


    .card img {
        max-height: 260px;
        padding: 1rem 1rem 1rem 1rem;
     }

    .card h3 {
        margin-bottom: 0.5rem;
    }
    .card .button_1 {
        width: 60%;
        text-align: center;
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
    }
    .card_contact {
        display: block;
        text-align: center;
        border: solid;
        border-color: #cccccc;

    }
    .card_contact img{
        height: 260px;
    }

    .card_steckbrief {
        grid-gap: 1%;

    }
    .steckbrief {
        width: 100%;
    }

    .steckbrief td {
        text-align: left;
        font-size: 1.15rem;
    }


    .card_steckbrief img {
        height: 100%;

    }

    .card_steckbrief table {
        height: 100%;
    }

    .card_gallery {
        display: block;
        text-align: center;
        margin-bottom: 4rem;
    }

        
    .card_gallery2 {
        display: block;
        text-align: center;
    }

    .kontaktanfrage{
        display: block;
        margin-bottom: 1rem;
    }
    .kontaktanfrage input {
        width: 100%;
        padding: 8px 0 8px 0;
        margin-bottom: 1rem;
        text-align: center;
    }
    
    .kontaktanfrage textarea {
            width: 100%;
            padding: 8px 0 8px 0;
            margin-bottom: 1rem;
            text-align: center;
    }
    .ausnahme {
        position: relative;
        color: #000000;
        background-color: #ffffff;
        text-align: center;
    }

  
}




@media screen and (max-width: 768px) {
    header #branding, 
    header nav,
    header nav li,
    article#main-col, 
    aside#sidebar {
        float: none;
        text-align: center;
        width: 100%;

    }
    aside .about img {
        width: 60%;
        text-align: center;
        margin-top: 1.5rem;
    }
    header {
        padding-bottom: 20px;
    }

    #boxes .box {
        display:block;
        width: 95%;
        border-style: solid;
        border-color: #cccccc;
        margin-bottom: 3%;
        padding-left: 1.5%;
        padding-right: 1.5%;
    }

    #boxes .box:hover {
        border-style: solid;
        border-style: #cccccc;
        
    }

    #boxes p{
        text-align: justify;
        font-size: 1.1rem;
        padding: 2.5%;
    }

    #showcase h1 {
       margin-top: 40px;
       font-size: 40px;
    }
    .anfrage button {
        display: block;
        width: 100%;
    }
    header .flags {
        width:8%;
    }

    .card1 .button_1 {
        width: 60%;
        text-align: center;
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
        padding: 10px 0 10px 0;
    }

    .card_contact {
        display: block;
        text-align: center;
        border: solid;
        border-color: #cccccc;
        border-radius: 10px;
    

    }
    .card_contact img{
        height: 180px;
    }
    .card_steckbrief {
        display: block;
        text-align: center;

    }

    .steckbrief td {
        padding: 10px 10px 20px 10px;
        font-size: 0.9rem;
    }

    .steckbrief td .small{
        text-align: left;
        padding: 10px 10px 10px 0;
    }


    .card_steckbrief img {
        height: 300px;
        margin-top: 1rem;
    }

    .card_gallery {
        display: block;
        text-align: center;
        margin-bottom: 4rem;
        border: solid;
        border-color: #cccccc;
        border-radius: 10px;
    } 
    .card_gallery2 {
        display: block;
        text-align: center;
        border: solid;
        border-color: #cccccc;
        border-radius: 10px;
    }

    .card_gallery p{
        text-align: justify;
        padding: 2%;
    }

    .card_gallery2 p{
        text-align: justify;
        padding: 2%;
    }
    
    .kontaktanfrage{
        display: block;
        margin-bottom: 1rem;
    }
    .kontaktanfrage input {
        width: 100%;
        padding: 8px 0 8px 0;
        margin-bottom: 1rem;
        text-align: center;
    }
    
    .kontaktanfrage textarea {
            width: 100%;
            padding: 8px 0 8px 0;
            margin-bottom: 1rem;
            text-align: center;
    }

    .card h3 {
        margin-bottom: 0.5rem;
    }
    .card .button_1 {
        width: 60%;
        text-align: center;
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
    }
    .ausnahme {
        position: relative;
        margin-top: 20px;
        color: #000000;
        background-color: #ffffff;
        text-align: center;
    }
    .card img {
        max-height: 140px;
        max-width: 260px;
    }
    .card {
        display: block;
        text-align: center;
        border: solid;
        border-color: #cccccc;
        border-radius: 10px;
        padding: 2%;
    }

    .card_index {
        display: block;
        grid-template-columns: 1fr 1fr;
        grid-gap: 2rem;
        margin-bottom: 2rem; 
    }
    
    .card_index img {
        max-height: 80px;
        max-width: 120px;
        box-shadow: 2px 2px 5px #000000;
        margin-bottom: 2rem;
    }


    .card p{
        text-align: justify;
    }



}