/* Basics ------------------------------------ */

html {
    
}

body {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.5;
    margin: 0 auto;
    padding: 0px;
}

#website {
    width: 100%;
}

h1, h2, h3, h4, h5, h6 {
    color: #222;
    font-weight: 600;
    line-height: 1.3;
}

h2.title {
    font-family: serif;
    font-style: italic;
    font-size: 4em;
    line-height: 1em;
    color: #787878;
    margin-top: 0px;
}

h2.sanstitle {
    font-family: sans-serif;
    font-size: 44px;
    line-height: 55px;
    letter-spacing: -0.01em;
}

h4.uptitle {
    font-family: sans-serif;
    font-size: 1em;
    line-height: 1em;
    color: #222;
}

h4.uptitle::before {
    content: "";
    display: inline-block;
    width: 40px;
    height: 2px;
    background-color: #222;
    margin-right: 30px;
    margin-left: -65px;
    margin-bottom: 0.4em;
    left: -70px;
    box-sizing:inherit;
}

nav a {
    color: black;
    text-decoration: none;
    font-size: 20px;
    text-transform: uppercase;
    margin-left: 30px;
}
nav a:hover {
    color: #731460;
    text-decoration: none;
    font-size: 20px;
    text-transform: uppercase;
}

a {
    
}

b, strong {
    font-weight: 600;
}

.oneHalf {
    width: 50%;
    float: left;
}

.oneHalf .margins {
    margin: 0px 50px 0px 100px;
}
.oneHalf:nth-child(even) .margins {
    margin: 0px 100px 0px 50px;
}

.oneThird {
    width: 30%;
    float: left;
    text-align: center;
}
#bottomContacts .oneThird:nth-child(1) {
    text-align: left;
    margin-right: 5%;
}
#bottomContacts .oneThird:nth-child(3) {
    text-align: right;
    margin-left: 5%;
}

.threeFifthLeft {
    width: 55%;
    float: left;
    margin-right: 5%;
}
.threeFifthRight {
    width: 55%;
    float: left;
    margin-left: 5%;
}
.twoFifthLeft {
    width: 35%;
    float: left;
    margin-right: 5%;
}
.twoFifthRight {
    width: 35%;
    float: left;
    margin-left: 5%;
}


.left {
    float: left;
    margin-right: 10px;
    margin-left: -10px;
}
.right {
    float: right;
    margin-right: -10px;
    margin-left: 10px;
}
.clear {
    clear: both;
}

.cursor { cursor: pointer; }

/* Hovers ------------------------------------ */
#adresse {
    position: absolute;
    display: none;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: #731460;
    z-index: 999;
    color: white;
    font-size: 40px;
}

#impressum {
    position: absolute;
    display: none;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: #731460;
    z-index: 999;
    color: white;
    font-size: 20px;
}

.hoverCenter {
    max-width: 45%;
    margin: 0 auto;
}

.hoverLogo {
    width: 400px;
}

.close {
    margin: 100px 0px 100px 0px;
    width: 300px;
    display: block;
}


/* Header ------------------------------------ */

#mobileHeader {
    width: 100%;
    height: 60px;
    padding: 10px 40px;
    display: block;
    position:fixed;
    top: 0px;
    z-index: 599;
    background-color: white;
}

#desktopHeader {
    width: 100%;
    height: 60px;
    padding: 20px 100px;
    display: none;
    position:fixed;
    top: 0px;
    z-index: 599;
    background-color: white;
}

#mobileLogo {
    max-height: 60px;
}

#desktopLogo {
    max-height: 60px;
}

#desktopNaviBar {
    float: right;
    width: 600px;
    height: 40px;
    padding: 20px;
}

@media screen and  (min-width: 1024px) {
    #mobileHeader { display: none;}
    #desktopHeader { display: block;}
}

/* Teaserbereich ------------------------------------ */
#teaser {
    width: 100%;
    margin-bottom: 100px;
    margin-top: 100px;
}

#socialIcons {
    width: 100px;
    min-height: 700px;
    float: left;
    background-color: white;
    position: relative;
}

#socialIcons img {
    max-width: 60px;
    margin: auto;
    display: block;
}
#socialIcons img:first-child {
    margin-top: 250px;
}

#teaserArea {
    width: auto;
    min-height: 700px;
    background-color: white;
    margin-left: 100px;
}

#titelbild {
    max-width: 100%;
}

/* Hauptinhalt ------------------------------------ */
.content {
    position: relative;
    width: 100%;
}

.centerCol {
    width: 55%;
    margin: 0 auto;
}

.serviceRow:nth-child(odd) {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-height: 400px;
    margin-top: 50px;
    background-repeat: no-repeat;
    background-position: left center;
}

.serviceRow:nth-child(even) {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 400px;
    margin-top: 50px;
    background-repeat: no-repeat;
    background-position: right center;
}

.serviceRow:nth-child(odd) .serviceTextbox {
    width: 45%;
    padding: 40px 0px 40px 120px;
    min-height: 200px;
    background-color: white;
}

.serviceRow:nth-child(even) .serviceTextbox {
    width: 45%;
    padding: 40px 40px 40px 70px;
    min-height: 200px;
    background-color: white;
}

#webdesign {
    background-image: url(images/service-webdesign.png);
}
#socialMedia {
    background-image: url(images/service-social-media.png);
}
#printdesign {
    background-image: url(images/service-printdesign.png);
}
#konzept {
    background-image: url(images/service-konzept.png);
}

.contentTextArea {
    padding: 0px 170px;
    max-width: 60%;
    margin-bottom: 100px;
}

.contentLeft{
    background-color: white;
    padding-right: 100px;
}

.imageBackground{
    background-color: #731460;
    width: 100%;
    padding-top: 200px;
    position: relative;
    background-image: url('images/Leistungen-Main1.png');
    background-position: center; 
    background-repeat: no-repeat; 
    background-size: cover;
}

.contentWhiteboxRight{
    background-color: white;
    padding: 60px 100px;
    width: 30%;
    float: right;
    background-color: white;
}

#pfeil {
    margin: 0 auto;
    display: block;
    padding-left: 150px;
    margin-top: -10px;
    z-index: 500;
    position: relative;
}


/* Kontakt ----------------------------------------- */
#contactRow {
    width: 100%;
    background-color: #f5f5f5;
    padding: 50px 0px;
}

.contactTextArea {
    padding: 0px 0px 0px 70px;
    margin-bottom: 100px;
}

.kontaktEingabefeld {
    width: 100%;
    padding: 20px;
    background-color: #f5f5f5;
    border: none;
    border-bottom: 1px solid black;
    margin-bottom: 20px;
}

.kontaktEingabefeld:first-child {
    margin-top: 80px;
}

#kontaktSenden {
    padding: 20px;
    border: 2px solid black;
    color: black;
    text-decoration: none;
    margin-top: 20px;
    display: inline-block;
}

#kontaktSenden:hover {
    color: white;
    background-color: #731460;
    border: 2px solid #731460;
}

/* Footer ----------------------------------------- */

footer {
    padding: 30px 100px;
    background-color: #222;
    color: white;
    clear: both;
}

#footerLogo {
    max-width: 100%;
}

#bottomContacts{
    margin-top: 100px;
}

#footerCTA {
    margin-top: 40px;
}

#footerCTA span {
    font-size: 22px;
    line-height: 40px;
    font-weight: 500;
}

#footerCTA a {
    color: white;
    text-decoration: none;
    border-bottom: 2px solid white;
    padding-bottom: 5px;
    font-weight: 600;
}


/* Mobilansicht -------------------------------- */
@media screen and  (max-width: 767px) {
    .notMobile {
        display: none;
    }
    h4.uptitle {
        font-weight: 200 !important;
    }
    
    h4.uptitle::before {
        width: 30px;
        margin-right: 15px;
        margin-left: -45px;
        left: -70px;
    }
    
    h2.sanstitle {
        font-family: sans-serif;
        font-size: 20px;
        line-height: 30px;
        letter-spacing: -0.01em;
    }
    
    .oneHalf {
        width: 100%;
        float: none;
    }

    .oneHalf .margins {
        margin: 0px 30px 0px 30px;
    }
    .oneHalf:nth-child(even) .margins {
        margin: 0px 30px 0px 30px;
    }

    .oneThird {
        width: 100%;
        float: none;
        text-align: center;
    }
    #bottomContacts .oneThird:nth-child(1) {
        text-align: center;
        margin-right: 0px;
    }
    #bottomContacts .oneThird:nth-child(3) {
        text-align: center;
        margin-left: 0px;
    }

    .threeFifthLeft {
        width: 100%;
        float: none;
        margin-right: 0px;
    }
    .threeFifthRight {
        width: 100%;
        float: none;
        margin-left: 0px;
    }
    .twoFifthLeft {
        width: 100%;
        float: none;
        margin-right: 0px;
    }
    .twoFifthRight {
        width: 100%;
        float: none;
        margin-left: 0px;
    }
    
    
    
    
    #teaser {
        width: 100%;
        margin-top: 0px;
        overflow: hidden;
        margin-bottom: 50px;
    }
    
    #teaserArea {
        width: 100%;
        min-height: 200px;
        margin-left: 40px;
        margin-top: 100px;
        overflow: auto;
    }
    
    #titelbild {
        margin-left: -15px;
    }
    
    #socialIcons { 
        width: 100%;
        min-height: 100px;
        float: none;
        position: relative;
        margin-top: 100px;
        margin-bottom: 0px;
        text-align: center;
    }
    
    #writeMail, #openAdresse {
        margin: 0px !important;
        display: inline !important;
    }
    
    .contentLeft {
        padding-right: 35px;
    }
    
    .contentWhiteboxRight {
        padding: 30px 0px 30px 70px;
        width: 60%
    }
    
    #pfeil {
        max-width: 60%;
        padding-left: 0px;
    }
    
    .centerCol {
        width: auto;
        margin: 0px 35px;
    }
    
    .serviceRow{
        align-items: flex-end !important;
    }
    
    .serviceRow:nth-child(odd) .serviceTextbox {
        padding: 15px 20px 15px 70px;
        width: 55%;
    }
    
    .serviceRow:nth-child(even) .serviceTextbox {
        padding: 15px 40px 15px 50px;
        width: 55%;
    }
    
    footer {
        padding: 30px 30px;
        background-color: #222;
        color: white;
        clear: both;
    }
    
    #footerLogo {
        margin-top: 20px;
    }
    
    .contentTextArea {
        padding: 0px 0px 0px 90px;
        max-width: 75%;
        margin-bottom: 60px;
    }
    
    #contactRow .contactTextArea {
        margin-left: -20px !important;
    }
    
    .kontaktEingabefeld {
        width: 90% !important;
        margin-top: 0px !important;
    }

}
