html {
    scroll-behavior: smooth;
}

html body {
    font-family: 'Muli', sans-serif;
}

/*p {*/
/*    color: rgb(255, 255, 255);*/
/*}*/

p, li, a {
    font-size: 20px;
    color: rgb(166,150,146);

}

a {
    text-decoration: underline;
}
a:hover{
    color: rgb(141, 51, 51);
}


/**
* Header
*/

.header {
    height: 155px;
    background-size: cover;
    background-color: white;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;

}

.header-navbar {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.header-navbar-links {
    color: rgb(166,150,146);
    margin-bottom:0;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}


.header-navbar-links a {
    color: rgb(166,150,146);
    text-decoration: none;
    transition: all 0.5s;
    font-size: 140%;
}

.header-navbar-links-small a {
    color: rgb(166,150,146);
    text-decoration: none;
    transition: all 0.5s;
    font-size: 90%;
}


.header-navbar-links a:hover,
.header-navbar-links-small a:hover {
    text-decoration: none;
    color: rgb(141, 51, 51);
}

.header-navbar-links-small {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}
.header-navbar-links-small li {
    list-style-type: none;
    margin-left: 30px;
}

.header-navbar-links li {
    list-style-type: none;
    margin-left: 30px;
}

@media (max-width:673px) {
    .header {
        height: 190px;
    }
    .header-navbar {
        justify-content: flex-start ;
    }
    .header-navbar-links {
        flex-direction: column;
    }
    .header-navbar-links a {
        font-size: 18px;
        margin-bottom: 0;
    }
    #header-navbar-links-small {
        display: none;
    }
    .header-navbar-links-small {
        margin-top:25px;
            }
}

.header-brand-wrapper {
    margin-top: 60px;
    float: left;
    font-weight:bold;
    line-height: 1;
    position: relative;
    bottom: 29px;
    
}


.header-brand {
    height: 70px;
    width: auto;
} 
.header-brand:hover {
    cursor: pointer;
    color: rgb(166,150,146);
}

@media (max-width:667px) {
    .header-brand {
        height: 35px;
        width: auto;
        padding-top:8px;
    }
}



.bild-slogan,
.bild-slogan-beschriftungen,
.bild-slogan-laser,
.bild-slogan-handgravuren,
.bild-slogan-vereinspreise,
.bild-slogan-stempel {

    background-size: cover;
    height: 80vh;
    background-attachment: fixed;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    line-height: normal !important;
}

.bild-slogan {
    background-image: url("img/StartbildRingeAbgedunkelt.jpg");
    background-position: 50% 30%;
}

.bild-slogan-beschriftungen {
    background-image: url("img/Beschriftungendunkel.jpeg");
    background-position: 50% 110%;
    
}
.bild-slogan-laser {
    background-image: url("img/TitelbildLaserAbgedunkelt2.jpg");
    background-position: 50% 60%;

}
.bild-slogan-handgravuren {
    background-image: url("img/StartbildRingeAbgedunkelt.jpg");
    background-position: 50% 30%;
    
}
.bild-slogan-vereinspreise {
    background-image: url("img/SportpreiseZinnwarendunkel.jpeg");
    background-position: 50% 60%;
  
}
.bild-slogan-stempel {
    background-image: url("img/StempelTitelAbgedunkelt.jpg");
    background-position: 50% 50%;

}

@media (max-width:673px) {
.bild-slogan,
.bild-slogan-beschriftungen,
.bild-slogan-laser,
.bild-slogan-handgravuren,
.bild-slogan-vereinspreise {
    flex-direction: column;
    justify-content: center;
    max-width:100%;
    height:40vh;

    }
}
.bild-slogan-text {
    color: rgb(166,150,146);
    font-weight: lighter;
    font-family: 'Poiret One', cursive;
    font-size: 750%;
    line-height: normal !important;
    text-align: center;

}

.double-lines {
    font-size: 650%;
    margin: 0;
}

.double-lines__and {
    font-size: 400%;
    margin: 10px 0 0;
}


@media (max-width:1143px) {
    .bild-slogan-text {
        font-size: 600%
    }
}

@media (max-width:884px) {
    .bild-slogan-text {
        font-size: 450%;
        /*padding-top: 150px;*/
    }
}


@media (max-width:667px) {
    .bild-slogan-text {
        font-size: 300%;
        /*padding-top: 130px;*/
    }
}
@media (max-width:360px) {
    .bild-slogan-text {
        font-size: 300%;
        /*padding-top: 130px;*/
    }
}


/**
* Services
**/

.services {
    background-color: white;
    padding-top: 80px;
    
}
.services a {
    text-decoration: none;
    color: rgb(166,150,146);
    text-align: center;
    transition: color 0.3s ease-in;
}

.services a:hover {
    color: rgb(141, 51, 51);
}



.services .container {
    /*background-color: white;*/
    padding: 15px 15px 15px 15px;
    margin-bottom: 100px;
    
}


/**
*.services-title nur für Neben-Seiten
**/

.services-title {
    color: rgb(166,150,146);
    text-align: center;
    transition: color 0.2s ease-in;
}

.services-image-foto {
    max-width: 100%;
    /*height: 245px;*/
}

.services-image {
    display: flex;
    justify-content: center;
 }


.services hr {
    margin-top:50px;
    color: rgb(166,150,146);
}

/**
* Mitarbeiter /Team
*/

.team {
    padding-top: 100px;
    padding-bottom: 50px;
    background-color: rgb(166,150,146);
    color: white;
}
.team-heading {
    font-weight: lighter;
    margin-bottom: 0px;
    text-align: center;

}
.team-subheading {
    text-align: center;
    margin-bottom: 70px;
    color: white;
}

.team-image-container{
    text-align: center;
}
.mitarbeiterfoto {
    width: 250px;
    height: 250px;
    border-radius: 10000px;
    border: 5px solid rgb(255, 255, 255);
}
.mitarbeitername {
    margin-top: 10px;
    margin-bottom: 0px;
    text-align: center;
    color: white;
    font-weight: bold;


}
.mitarbeiterberuf {
    text-align: center;
    color: white;
    font-weight: lighter;
}

.firstline {
    margin-bottom: 0px;
}
.patricia {
    /*text-align: center;*/
    margin-top: 60px;
}
.patricia-team-heading {
    margin: 60px 0;
    text-align: center;
}
.schlusstext{
    text-align: center;
    margin-top: 70px;
    margin-bottom: 0px;
    color: white;
}

/**
* Kontakt
*/

.contact {
    background-color: rgb(255, 255, 255);
    padding-top: 100px;
    padding-bottom: 100px;
    color: rgb(141, 51, 51);
}
.contact .container {
    margin-bottom: 0px;
}
.contact-heading {
    margin-bottom:15px;
    font-weight: lighter;
}
.contact-subheading {
    color:rgb(141, 51, 51);
    font-weight: lighter;
    margin-bottom: 50px;

}
.contact-methods {
    color: rgb(141, 51, 51);
    list-style-type: none;
    
}
.contact-methods li{
    width: 100%;
    font-weight: lighter;
    height: 2.5em;
}
.contact-methods li .fa {
    font-size: 150%;
}
.contact-methods a {
    color: rgb(141, 51, 51);
}
.contact-methods a:hover {
    color: rgb(166,150,146);

}
.contact-icon {
    display: inline-block;
    width: 40px;
    text-align: center;
}
.infobox {
    border: solid 1px rgb(141, 51, 51);
    padding: 20px;
}

.abwesenheit {
    margin-top: 2rem;
}
@media (max-width:591px) and (min-width: 515px){
    .contact-icon {
        display: none;
    }
}
.contact-adress {
    margin-top: 60px;
    margin-bottom: 60px;
}
.contact-adress p,
.contact-öffnungszeiten p {
    color: rgb(141, 51, 51);
    font-weight: lighter;
    margin-bottom: 0px;
}
.contact-öffnungszeiten {
    margin-bottom: 20px;
}
.holiday {
    margin-bottom: 0;
    margin-top: 15px;
}
.contact-input {
    width: 100%;
    margin-bottom: 27px;
    color: black;
    background-color: white;
}

.contact-input:focus,
input.contact-input:focus {
border: 1px solid #1e1e1e;
background-color: rgba(166, 150, 146, 0.329);
}

.contact-message {
height: 140px;
}

.contact-form {
margin-bottom: 0px;
padding-top: 80px;
}

@media (max-width:538px){ 
    .contact-form {
        padding-top: 20px;
    }
}

.contact-submit {
margin-bottom: 0px;
transition: 1s;
}

.contact-submit:hover,
input.contact-submit:hover {
border: 1px solid #1e1e1e;
background-color: rgb(166,150,146);
}

.google-karte {
    margin-top: 60px;
}

.modal {
    width: 600px;
    max-width: 80vw;
    padding: 50px 20px;
}
.modalContent {}

.modalHeader {
    color: rgb(166,150,146);
}

.modalBody p {
    margin-bottom:10px;
    color: rgb(166,150,146);
}

.modalBody .adress {
    font-size: 150%;
    margin-bottom: 0px;
}

.modalFooter {
    margin-top: 40px
}
dialog::backdrop {
    opacity: 0.5;
    background-color: #898989;
}
.closeButton {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 46px;
    color: rgb(166,150,146);
    background: transparent;
    border: none;
    border-radius: 50%;
    cursor: pointer;
}

.closeButton:hover,
.close-button:focus {
    color: rgb(141, 51, 51);
    text-decoration: none;
    cursor: pointer;
}

@keyframes modalopen {
    from {opacity: 0}
    to {opacity: 1}
}

@media (max-width:667px) {

    .modalHeader {
        color: rgb(166,150,146);
        font-size: 100%;
    }

    .modalBody p,
    .modalBody a,
    .modalFooter p {
        font-size: 95%;
    }
}



.footer {
    background-color:  rgb(255, 255, 255);
    text-align: center;
    font-weight: lighter;
    margin-bottom: 0px;
    
}

.footer p {
    color: rgb(141, 51, 51);
}

.footer a{
    text-decoration: none;
    color: rgb(141, 51, 51);
}

.footer hr {
    margin-top: 0px;
    margin-bottom: 25px;
    color: rgb(141, 51, 51);
}

.footer .container {
    margin-bottom: 50px;
}
