/*VARIABLEN*/
:root{
    --global-color-hintergrund: #f5dfbd;
    --global-color-rot: #651407;
    --global-color-Schrift: #300101;
    --global-box-Schrift-T: #e4cfaf; 
    --global-box-Schrift-LK: #ffe8c4;
    --global-box-Schrift-S: #fff5e4; 
    --global-color-shadow: rgba(48, 1, 1, 0.5);
    --global-Inhaltsbreite_relativ: 80vw;
    --global-Inhaltsbreite_absolut: 1750px;

}
@font-face{
    font-family: Barlow-SemiCondensed-Regular-Text;
    src: url(Fonts/BarlowSemiCondensed-Regular.ttf);
}
@font-face{
    font-family: Barlow-SemiCondensed-Bold-Text;
    src: url(Fonts/BarlowSemiCondensed-Bold.ttf);
}
@font-face{
    font-family: Barlow-SemiCondensed-Bolditalic-Text;
    src: url(Fonts/BarlowSemiCondensed-BoldItalic.ttf);
}
@font-face{
    font-family: Barlow-SemiCondensed-Italic-Text;
    src: url(Fonts/BarlowSemiCondensed-Italic.ttf);
}
@font-face{
    font-family: GreatVibes-Regular-Headline;
    src: url(Fonts/GreatVibes-Regular.ttf);
}

/*ALLGEMEINE INFOS & VORGABEN + HINTERGRUND*/
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    text-decoration: none;
}
body{
    background-image: url(img/Hintergrundbild.png); 
    background-color: var(--global-color-hintergrund);
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    height: auto;
    display: flex;
    align-items: center;
    flex-direction: column;
    overflow-x: hidden;
}
/*form{
    width: var(--global-Inhaltsbreite_relativ);
    max-width: var(--global-Inhaltsbreite_absolut);
    font-family: Barlow-SemiCondensed-Regular-Text;
    font-size: 1.85vh;
    color: var(--global-color-Schrift);
    margin: 0;
    border: 2px solid var(--global-color-rot);
    display: row;
    padding: 3em 0;
    margin-bottom: 13vh;
    margin-top: 3vh;
    padding: 10vh;
}*/

/*HEADER*/
header{
    width: 100%;
    height: 5.5rem;
    position: sticky;
    top: 0;
    z-index: 10;
    background-image: url(img/Hintergrundbild.png);
    background-color: var(--global-color-hintergrund);
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    display: flex;
    justify-content: center;
    transition: box-shadow 0.5s ease;
}
header.shadow{
    box-shadow: var(--global-color-shadow) 0px 5px 20px;
}
.InhaltHeader{
    width: var(--global-Inhaltsbreite_relativ);
    max-width: var(--global-Inhaltsbreite_absolut);
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;    
    margin: 0;
    /*border: 2px solid var(--global-color-rot);*/
}
header img{
    height: 5.5rem;
    max-height: 5.5rem;
    /*border: 1px solid green;*/
    margin: 0;
}
.Button-rot, .Button-transp{
    border: 2px solid var(--global-color-rot);
    border-radius: 3em;
    padding: 0.5em 1.75em;
    margin: 0;
    font-family: Barlow-SemiCondensed-Bold-Text;
    text-align: center;
    font-size: 1.1rem;
}
.Button-rot{
    background-color: var(--global-color-rot);
    color: var(--global-color-hintergrund);
    position: relative;
}
.Button-rot::after, .Button-transp::after, .Button-rot::before, .Button-transp::before{
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    transition: 0.5s;
    border-radius: inherit;
    border: inherit;
    border-color: #84412e;
    background-color: #84412e;
    z-index: -1;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%) scale(0.9);
    opacity: 0;    
}
.Button-transp::after{
    background-color: inherit;
}
.Button-rot::before, .Button-transp::before{
    background-color: inherit;
}
.Button-rot:hover::after, .Button-transp:hover:after{
    transform: translateY(-50%) translateX(-50%) scale(1) rotate(-7deg);
    transform-origin: 10% 50%;
    opacity: 1;
}
.Button-rot:hover::before, .Button-transp:hover:before{
    transform: translateY(-50%) translateX(-50%) scale(1) rotate(-14deg);
    transform-origin: 10% 50%;
    opacity: 0.5;
}
.Button-transp:hover{
    background-color: var(--global-color-hintergrund);
    transition: 0s background-color 0s;

}
.Button-transp{
    color: var(--global-color-rot);
    position: relative;
    transition: 1s background-color 0.5s;
}
header .buttonKlein{
    display: none;
}
header .ButtonContainer{
    display: none;
    width: 100%;
    height: 5rem;
    justify-content: space-between;
}
header .ButtonContainer a{
    margin: 0;
    width: auto;
    padding: 0.5em 1.75em;
}
.Button-groß:hover::before, .buttonGroß:hover::before{
    transform: translateY(-50%) translateX(-50%) scale(1) rotate(-6deg);
}
.Button-groß:hover::after, .buttonGroß:hover::after{
    transform: translateY(-50%) translateX(-50%) scale(1) rotate(-3deg);
}

/*ALLGEMEINES ZU DEN SECTIONEN*/
section{
    width: var(--global-Inhaltsbreite_relativ);
    max-width: var(--global-Inhaltsbreite_absolut);
    font-family: Barlow-SemiCondensed-Regular-Text;
    color: var(--global-color-Schrift);
    display: row;
    /*border: 2px solid violet;*/
}
section h2{
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
    font-family: GreatVibes-Regular-Headline;
    color: var(--global-color-rot);
    font-size: 3rem;
    font-weight: normal;
    line-height: 1;
    /*border: 2px solid var(--global-color-rot);*/
}

/*ÜBERSCHRIFT UND INFO-TEXT*/
#headlineSection{
    margin-top: 3em;
}
.Text{
    font-size: 1.5rem;
    margin-bottom: 2em;
    margin-top: 0.5em;
    /*border: 2px solid var(--global-color-rot);*/

}
.Infotext{
    font-size: 1rem;
    margin-bottom: 1em;
    /*border: 2px solid var(--global-color-rot);*/
}


/*FORM*/
form{
    display: flex;
    flex-direction: column;
}

/*CHECKBOXEN*/
.checkboxes p{
    font-size: 1.5rem;
    margin-bottom: 0.6rem;
}
.checkboxes{
    display: flex;
    flex-direction: column;
    align-items: start;
    width: 100%;
    margin-bottom: 3em;
}
.Auswahl_Checkbox {
    display: flex;
    flex-direction: column;
    align-items: start;
}
form div{
    margin: 0;
}
.checkboxes label{
    margin-left: 0;
    margin-right: 2em;
    margin-bottom: 0.5em;
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    font-size: 1.2rem;
    /*border: 2px solid purple;*/

}
form .checkboxes span{
    position: relative;
    height: 1.25em;
    width: 1.25em;
    border-radius: 1em;
    border: 2px solid var(--global-color-rot);
}
form .checkboxes span::before{
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    height: 1.5em;
    width: 1.5em;
    transform: translateY(calc(-50% - .4em));
    background-image: url(img/Haken.png);
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0;
}
input[type="checkbox"]{
    opacity: 0;
    width: .5em;
}
input[type="checkbox"]:checked ~ span::before{
    opacity: 1;
}
input[type="checkbox"]:hover ~ span::before{
    opacity: 1;

/*CHECKBOXEN MIT NUR EINER AUSWAHL-MÖGLICHKEIT*/
}
input[type="radio"]{
    opacity: 0;
    width: .5em;
}
input[type="radio"]:checked ~ span::before{
    opacity: 1;
}
input[type="radio"]:hover ~ span::before{
    opacity: 1;
}


/*BEREICH MIT AUSFÜLLBAREN TEXTFELDERN*/
.textfeld, .checkboxes, .Info, .email{
    align-items: start;
    margin-bottom: 3em;
}
.eins{
    margin-top: 0.5rem;
}
input[type=text] {
    width: 100%;
    margin-top: 0.5em;
    padding: 0.5em 1em;
    border: 2px solid var(--global-color-rot);
    color: var(--global-color-Schrift);
    border-radius: 0.5em;
    background-color: transparent;
    font-size: 1.2rem;
    font-family: Barlow-SemiCondensed-Regular-Text;
    outline: none;
    word-break: break-all;
}
textarea {
    width: 100%;
    height: 10rem;
    margin-top: 0.5em;
    padding: 0.5em 1em;
    border: 2px solid var(--global-color-rot);
    color: var(--global-color-Schrift);
    border-radius: 0.5em;
    background-color: transparent;
    font-size: 1.2rem;
    font-family: Barlow-SemiCondensed-Regular-Text;
    outline: none;
    word-break: break-all;
    resize: none;
}
.textfeld, .Info{
    font-size: 1.5rem;
}

/*BEREICH MIT DEM BUTTON ZUM ABSENDEN*/
.Absenden{
    margin-top: 2.5em;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 7rem;
    /*border: 2px solid var(--global-color-Schrift);*/
}

/*FOOTER*/
footer{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    background-image: url(img/Hintergrundbild_About_eins.png); 
    background-color: var(--global-color-hintergrund);
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    /*border: 2px solid var(--global-color-Schrift);*/
}
.InhaltFooter{
    width: var(--global-Inhaltsbreite_relativ);
    max-width: var(--global-Inhaltsbreite_absolut);
    display: flex;
    justify-content: center;
    flex-direction: column;
    margin-bottom: 10rem;
    margin-top: 10rem;
    /*border: 2px solid var(--global-color-rot);*/
}
.Link_Text{
    display: flex;
    margin-bottom: 2.5em;    
    /*border: 2px solid var(--global-color-hintergrund);*/
}
.Link_Text a{
    font-family: Arial, Helvetica, sans-serif;
    font-family: Barlow-SemiCondensed-Regular-Text;
    color: var(--global-color-hintergrund);
    font-size: 1.5rem;
    text-align: left;
    justify-content: center;
    display: flex;
    margin-right: 1.5em;
    /*border: 2px solid var(--global-color-hintergrund);*/
}
/*.Icons_Footer{
    border: 2px solid var(--global-color-hintergrund);
}*/
.Icons_Footer a{
    /*background-color: var(--global-color-rot);*/
    margin-right: 2.5em;
    /*border: 3px solid var(--global-color-rot);
    border-radius: 0.75em; */
}
.Icon_Social{
    height: 2.2rem;
    /*border: 2px solid var(--global-color-hintergrund);*/
}

/*FÜRS HANDY*/
@media (max-width: 1080px) {
    /*Header*/    
    .InhaltHeader{
        width: 90vw;
        max-width: var(--global-Inhaltsbreite_absolut);
    }
    header .buttonGroß{
        display: none;
    }
    header .buttonKlein{
        display: flex;
    }
}
    
@media (max-width: 900px) {
    /*Allgemein*/
    section h2{
        font-size: 2.5rem;
        line-height: 1.2;
    }
    .Text{
        font-size: 1.25rem;
    }
}
@media (max-width: 730px) {
    /*HEADER*/
    header{
        height: 9rem;
    }
    header .ButtonContainer{
        display: flex;
        align-items: baseline;
    }
    header .ButtonContainer a{
        font-size: 1em;
    }
    .Button-rot:hover::before, .Button-transp:hover:before{
        display: none;
    }
    .Button-rot:hover::after, .Button-transp:hover:after{
        display: none;
    }
    .Button-transp:hover{
        background-color: transparent;
    }
    .InhaltHeader{
        flex-direction: column;
    }
    header .buttonKlein{
        display: none;
    }
    /*FOOTER*/
    .Link_Text{
        margin-bottom: 1.5em;    
        /*border: 2px solid var(--global-color-hintergrund);*/
    }
    .Link_Text a{
        font-size: 1.25rem;
    }
    .Icon_Social{
        height: 1.75rem;
        /*border: 2px solid var(--global-color-hintergrund);*/
    }
    .Icons_Footer a{
        margin-right: 2em;
    }
}
@media (max-width: 680px) {
    .Auswahl_Checkbox {
        flex-direction: column;
        align-items: start;
    }
    .Auswahl_Checkbox label{
        margin-bottom: 0.5em;
    }
}
@media (max-width: 650px) {
    /*Allgemein*/
    section h2{
        font-size: 2.5rem;
        line-height: 1.2;
    }
    .Text{
        font-size: 1.25rem;
    }
    /*Header*/
    header .ButtonContainer a{
        font-size: 1rem;
        margin: 0;
        margin-right: 0.5em;
    }
    /*FOOTER*/
    .InhaltFooter {
        display: flex;
        flex-direction: row;
        justify-content: start;
        width: var(--global-Inhaltsbreite_relativ);
    }
    .Link_Text {
        flex-direction: column;
        align-items: start;
        margin: 0;
        margin-bottom: 1.75em;
    }
    .Link_Text a {
        margin-bottom: 0.5em;
    }
    .Icons_Footer a{
        margin: .75em;
        margin-top: 0;
        margin-right: .75em;
        line-height: 1.75;
    }
    .Icons_Footer {
        margin-left: 2em;
        height: auto;
        width: 50%;
    }
}
@media (max-width: 560px) {
    /*Header*/
    header{
        height: 8rem;
    }
    header img{
        height: 5rem;
    }
    header .ButtonContainer a {
        font-size: 0.9rem;
        margin: 0;
        margin-right: 0.5em;
    }
}
@media (max-width: 380px) {
    /*Header*/
    header{
        height: 7rem;
    }
    header img{
        height: 4.5rem;
    }
    header .ButtonContainer a {
        font-size: 0.75rem;
        margin: 0;
        margin-right: 0.5em;
    }
}
@media (max-width: 360px) {
    /*Kontaktformular*/
    section h2 {
        font-size: 2.25rem;
    }
    .Text{
        font-size: 1rem;
    }
    .checkboxes p{
        font-size: 1rem;
    }
    .checkboxes label{
        font-size: 1rem;
    }
    input[type=text]{
        font-size: 1rem;
    }
    textarea{
        font-size: 1rem;
    }
    .textfeld, .Info{
        font-size: 1rem;
    }
    .Infotext{
        font-size: 0.75rem;
    }
} 
@media (max-width: 350px) {
    /*Header*/
    header{
        height: 6.5rem;
    }
    header img{
        height: 4rem;
    }
    header .ButtonContainer a {
        font-size: 0.7rem;
        margin: 0;
        margin-right: 0.5em;
    }
}





/*ALTE VERSION*/
/*
.container {
    position: relative;
    padding-left: 1.5em;
    margin-left: 1em;
    font-size: 1em;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    /*border: 2px solid var(--global-color-rot);
  }
.container input {
   position: absolute;
   opacity: 1;
   cursor: pointer;
   left: 0;
   top: 0;
   height: 100%;
   width: 100%;
   z-index: 10;
  }
.checkmark {
    display: flex;
   position: absolute;
   top: 0;
   left: 0;
   height: 1.25em;
   width: 1.25em;
   border: 2px solid var(--global-color-rot);
   border-radius: 2em;
   border: 1px solid green;
   overflow: visible;
  }
.container:hover input ~ .checkmark{
    background-image: url(img/Haken.png);
    background-size: 100%;
    background-repeat: no-repeat;
    z-index: 3;
    /*background-color: var(--global-color-rot);
}
.container input:checked ~ .chackmark::after{
    display: flex;
    background-image: url(img/Haken.png);
}
.container .chackmark::after{
    content: "";
    position: absolute;
    display: flex;
    background-image: url(img/Haken.png);
    left: 0;
    top: 0;
    width: 10vh;
    height: 10vh;
    z-index: 10;
    border: 1px solid var(--global-color-Schrift);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.Name{
    align-items: center;
    margin-top: 2em;
    font-size: 2vh;
}
input[type=text] {
    width: 100%;
    margin-top: 0.5em;
    padding: 0.5em 1em;
    border: 2px solid var(--global-color-rot);
    border-radius: 0.5em;
    background-color: transparent;
    color: var(--global-color-rot);
    font-size: 2vh;
}
.Anrede{
    margin-top: 2em;
    font-size: 2vh;

}
.Mail{
    margin-top: 2em;
    font-size: 2vh;
}
.Infos{
    margin-top: 2em;
    font-size: 2vh;
}
#title{
    height: 10vh;
}
.Absenden{
    margin-top: 2.5em;
    display: flex;
    align-items: center;
    justify-content: center;
    /*border: 2px solid var(--global-color-Schrift);
}*/
