/*
 * =======================================================================================
 *
 *	Theme Name:   QURE
 *	Theme URI:    http://www.qure.de
 *
 *	Description:  
 *
 *	Author:       Funkenwerfer Digitalagentur
 *	Author URI:   https://www.funkenwerfer.de
 *
 *	Version:      1.1
 *
 *	Date created:	30/08/2018
 *	Last modified:	12/09/2021
 *
 * =======================================================================================
 */





/*######################################################################################*/
/*	NORMAL (DESKTOP) VIEW
/*######################################################################################*/


/*======================================================================================*/
/*	General
/*======================================================================================*/

* {
    margin: 0;
    padding: 0;
}

body {
    padding: 0;
    margin: 0px auto;
    background: #fff;

    color: #575757;
    font-size: 100%;
    font-weight: 400;
    text-align: center;
    font-family: 'Nunito Sans', sans-serif;
}



/*======================================================================================*/
/*	Content formats  
/*======================================================================================*/

/* Headlines */
.headline {
    width: 100%;
    height: auto;
    text-align: center;
}

h1, h2 {
    color: #575757;
    font-size: 2.4rem; 
    font-weight: 400; 
    font-style: italic;
    text-align: center;
    line-height: 130%;
    text-transform: uppercase;

    margin: 0 auto 30px auto;
    padding: 0 0 5px 0;
    display: inline-block;
    border-bottom: 8px solid #91D1C5;
}

h3 {
    color: #91D1C5;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 130%;
    text-transform: uppercase;

    margin: 0 0 20px 0;
}

h4 {}


/* Paragraphs */
p {margin: 0 0 20px 0;}


/* Hyperlinks */
article a {font-weight: 700;}
article a:link {color: #91D1C5; text-decoration: none;}
article a:hover {color: #91D1C5; text-decoration: underline;}
article a:active {color: #91D1C5; text-decoration: underline;}
article a:visited {color: #91D1C5; text-decoration: none;}


/* Lists */
article ul {
    list-style: square;
    margin: 0 0 20px 16px;
}

article ol {
    margin: 0 0 20px 16px;
}

article ul ol,
article ol ul,
article ul ul,
article ol ol {
    margin: 10px 0 10px 30px;
}

article li {
    margin: 0 0 4px 20px;
}


/* Tables */
table {
    margin: 0;
    padding: 0;
    border-collapse: collapse;
}

    tr {vertical-align: middle;}
    
        td {padding: 0;}


/* Horizont ruler */
hr {
    border: 0;
    padding: 0;
    height: 1px;
    margin: 40px 0 40px 0;
    border-bottom: 3px solid #91D1C5;
}


/* Text selection */
::selection {background: #91D1C5; color: #fff;}
::-moz-selection { background: #91D1C5; color: #fff;}


/* Image links */
a img {border: none;}

a img:hover {
    opacity: 0.75;
    transition: all ease 0.3s;
}


/* Images align */
img.alignleft {
    float: left;
    margin: 0 25px 25px 0;
}

img.alignright {
    float: right;
    margin: 0 0 25px 25px;
}

img.aligncenter {
    margin: auto;
    display: block;
}


/* Images size ratio */
img.size-full,
img.size-large {
    width: 100%;
    height: auto;
}

img.size-medium {
    width: 50%;
    height: auto;
}

img.size-thumbnail {
    width: 25%;
    height: auto;
}



/*======================================================================================*/
/*	Forms
/*======================================================================================*/

form {
    margin: 0;
    padding: 0;    
}

    fieldset {
        margin: 0;
        padding: 0;
        border: none;
    }
    
        legend {display: none;}
        
        label  {display: block;}
        
        
        /* Input fields */
        select,
        textarea,
        input[type=tel],
        input[type=text],
        input[type=email],
        input[type=password] {
            width: 95%;
            border: none;
            background: #EFF3F7;
            padding: 10px 2.5% 10px 2.5%;

            color: #575757;
            font-size: 1.0rem;
            font-weight: 400;
            font-family: 'Nunito Sans', sans-serif;
        }

        .bg-grey select,
        .bg-grey input,
        .bg-grey textarea {
            background: #fff;
        }
        
        select {
            width: 100%;
        }
        
        textarea {
            overflow: auto;
            height: 150px;
        }
        
        select:focus,
        textarea:focus,
        input[type=tel]:focus,
        input[type=text]:focus,
        input[type=email]:focus,
        input[type=password]:focus {
            background: #91D1C5;
            color: #fff;
            transition: all ease 0.3s;
        }
        
        /* Buttons */
        input[type=submit],
        button[type=submit] {
            border: none;
            background: #91D1C5;
            cursor: pointer;          
            padding: 10px 30px 10px 30px;

            color: #fff;
            font-size: 1.0rem;
            font-weight: 400;
            font-family: 'Nunito Sans', sans-serif;            
        }
        
        input[type=submit]:hover,
        button[type=submit]:hover {
            opacity: 0.75;
            transition: all ease 0.3s;
        }
        
        input[type=submit]:active,
        button[type=submit]:active {
            opacity: 0.75;
            transition: all ease 0.3s;  
        }


/* Plugin adjustments: Contact Form 7 */

.wpcf7-list-item {
    margin-left: 0 !important;
}        

img.ajax-loader {
    width: 16px !important;
    height: auto !important;
}

span.wpcf7-not-valid-tip {
    color: red !important;
}

div.wpcf7-response-output {
    width: calc(96% - 2px);
    margin: 0 !important;
    padding: 10px 2% 10px 2% !important;
}

div.wpcf7-validation-errors {
    color: red !important;
    border: 1px solid red !important;
}

div.wpcf7-mail-sent-ok {
    color: #91D1C5 !important;
    border: 1px solid #91D1C5 !important;
}        



/*======================================================================================*/
/*	Site Structure
/*======================================================================================*/

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

header {
    position: fixed;
    z-index: 100;
    width: 100%;
    height: 140px;
    background: #fff;
    border-bottom: 1px solid #EFF3F7;
}

    #header-content {
        position: relative;
        width: 90%;
        height: 100%;
        margin: 0px auto;
        max-width: 1400px;
        background: #fff;
        display: inline-block;

        text-align: left;
    }

        #logo {
            float: left;
            width: 100%;
            height: auto;
            max-width: 200px;
            margin: 40px 0 0 0;
        }

        #logo:hover {
            transform: scale(1.05);
            transition: all ease 0.3s; 
        }

            #logo img {
                width: 100%;
                height: auto;
                display: block;
            }

        .open-menu {
            display: none;
        }

        nav#main-menu {
            float: right;
            margin: 80px 0 0 0;
        }

            nav#main-menu ul {
                float: right;
                width: 100%;
                list-style: none;
            }

                nav#main-menu ul li {
                    float: left;
                }

                    nav#main-menu ul li a {
                        float: left;
                        display: block;
                        margin: 0 0 0 22px;
                        padding: 0 0 20px 0;
                        
                        color: #575757;
                        font-size: 1.0rem;   
                        text-decoration: none;
                        text-transform: uppercase;                                     
                    }

                    nav#main-menu ul li a:hover {
                        color: #91D1C5;
                        text-decoration: none;
                        border-bottom: 15px solid #91D1C5;
                        transition: all ease 0.3s;
                    }

                    nav#main-menu ul li.current-menu-item > a,
                    nav#main-menu ul li.current-menu-ancestor > a {
                        border-bottom: 15px solid #91D1C5;
                    }


#header-empty {
    position: relative;
    width: 100%;
    height: 141px;
}


/*  Cover Images Area ------------------------------------------------------------------*/

section#cover-images {
    position: relative;
    width: 100%;
    height: auto;
}

    section#cover-images img {
        width: 100%;
        height: auto;
        display: block;
    }

    .cover-text-wrapper {
        position: absolute;
        bottom: 100px;
        z-index: 5;
        width: 100%;
        height: auto;
    }

        .cover-text {
            position: relative;
            width: 90%;
            height: auto;
            margin: 0px auto;
            max-width: 1400px;

            font-size: 1.2rem;
            text-align: left;
        }

            .cover-text h3 {
                color: #575757;
                font-size: 2.4rem; 
                font-weight: 400; 
                font-style: italic;
                line-height: 130%;
                text-transform: uppercase;
            }


/*  Main Content Area ------------------------------------------------------------------*/

section.content {
    position: relative;
    width: 100%;
    height: auto;
}

.bg-white {background: #fff;}

.bg-grey  {background: #EFF3F7}


    article {
        position: relative;
        top: -30px;
        z-index: 10;
        width: 90%;
        height: auto;
        margin: 0px auto;
        max-width: 1400px;
        padding: 80px 0 40px 0;
        border-top: 30px solid #91D1C5;

        display: flex;
        flex-wrap: wrap;
        flex-direction: row;
        justify-content: space-between;
    
        font-size: 1.0rem;
        text-align: left;
        line-height: 150%;
    }

        .full {
            flex-basis: 100%;
            margin: 0 0 40px 0;
        }

        .half {
            flex-basis: 48.571%; /* 680px */
            margin: 0 0 40px 0;
        }

        .third {
            flex-basis: 31.428%; /* 440px */
            margin: 0 0 40px 0;
        }

        .bg-grey .third {
            flex-basis: 27.428%;
            background: #fff;
            padding: 30px 2% 20px 2%;
        }

        .two-third {
            flex-basis: 65.714%; /* 920px */
            margin: 0 0 40px 0;
        }

        .bg-grey .two-third {
            flex-basis: 61.714%;
            background: #fff;
            padding: 20px 2% 10px 2%;
        }

            .half img,            
            .two-third img,
            .third img.size-full,
            .third img.size-large,
            .third img.size-medium,
            .third img.size-thumbnail {
                width: 100%;
                height: auto;
                display: block;
            }


section#contact-bar {
    position: relative;
    width: 100%;
    background: #91D1C5;
    padding: 16px 0 16px 0;
}

    section#contact-bar a {
        display: inline-block;
        margin: 0px auto;        
        padding: 6px 60px 6px 60px;
        border: 1px solid #fff;

        color: #fff;
        font-size: 1.1rem;
        text-align: center;
        text-decoration: none;
        text-transform: uppercase;
    }

    section#contact-bar a:hover {
        background: #fff;
        color: #91D1C5;
        transition: all ease 0.3s;
    }


/* Accordion */

.accordion {
    cursor: pointer;
    width: 100%;
    border: none;
    outline: none;
    transition: 0.4s;
    margin: 0 0 20px 0;
    padding: 14px 2% 14px 2%;
    background-color: #EFF3F7;

    color: #575757;
    text-align: left;
    font-size: 1.1rem;
    text-transform: uppercase;
    font-weight: 400;
    font-family: 'Nunito Sans', sans-serif;  
}

.bg-grey .third .accordion {
    background: #fff;
    color: #91D1C5;
    font-size: 1.6rem;
    padding: 0;
}

.active, .accordion:hover {
    opacity: 0.6;
}

.accordion:after {
    content: '\002B';
    color: #575757;
    font-weight: bold;
    float: right;
    margin-left: 5px;
}

.bg-grey .third .accordion:after {
    color: #91D1C5;
}

.active {
    color: #fff;
    background: #91D1C5;    
}

.active:after {
    color: #fff;
    content: "\2212";
}

.panel {
    width: 96%;
    padding: 0 2% 0 2%;
    max-height: 0;
    overflow: hidden;
    background: #fff;
    transition: max-height 0.3s ease-out;
}

.bg-grey .third .panel {
    width: 100%;
    padding-right: 0;
    padding-left: 0;
}

.active + .panel {
    padding: 0 2% 20px 2%;
}


/* Plugin Adjustments: Meta Slider */

.metaslider .caption-wrap {
    width: 75% !important;
    position: relative !important;
    background: none !important;
    opacity: 1.0 !important;
    margin: 100px auto 0 auto !important;

    color: #575757 !important;
    text-align: center !important;
}

    .metaslider .caption-wrap .caption {
        padding: 0 !important;
    }

.flex-control-nav {
    position: relative !important;
}

    .flex-control-paging li a {
        width: 16px !important;
        height: 16px !important;
        border-radius: 0  !important;
        background: #fff !important;
        border: 2px solid #91D1C5;
    }

    .flex-control-paging li a.flex-active {
        background: #91D1C5 !important;
    }


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

footer {
    position: relative;
    width: 100%;
    background: #575757;
}

    #footer-content {
        position: relative;
        width: 90%;
        margin: 0px auto;
        max-width: 1400px;
        padding: 25px 0 15px 0;

        color: #fff;
        font-size: 0.9rem;
        line-height: 150%;
        text-align: center;

        display: inline-block;
    }

        div#copy {
            float: left;
        }


        nav#footer-menu {
            float: left;
        }

            nav#footer-menu ul {
                float: left;
                list-style: none;
            }

                nav#footer-menu ul li {
                    float: left;
                }

                    nav#footer-menu ul li a {
                        float: left;
                        color: #fff;
                        text-decoration: none;
                    }

                    nav#footer-menu ul li a:before {
                        content: "|";
                        color: #fff;
                        margin: 0 10px 0 10px;
                    }

                    nav#footer-menu ul li a:hover,
                    nav#footer-menu ul li.current-menu-item > a {
                        color: #91D1C5;
                        transition: all ease 0.3s;
                    }

        
        div#social {
            float: right;
        }
        
            div#social a {
                float: left;
                width: 24px;
                height: 24px;
                margin: 0 0 0 10px;
            }

                div#social a img {
                    width: 100%;
                    height: auto;
                    display: block;
                }

/*======================================================================================*/
/*	Jobs
/*======================================================================================*/

.job-contact h3{
    font-weight: 700;
}

.job-contact h3,
.job-contact p{
    text-align: center;
}

article.jobs-article{
    padding-top: 0;
    border-top: none;
    top: -70px;
}


/*######################################################################################*/
/*	BREAKPOINT (@ 1400 Pixel)
/*######################################################################################*/

@media only screen and (max-width: 1400px) { 

/*  Cover Images Area ------------------------------------------------------------------*/

.cover-text-wrapper {
    bottom: 50px;
}

} /* <--- END MEDIA */



/*######################################################################################*/
/*	BREAKPOINT (@ 1200 Pixel)
/*######################################################################################*/

@media only screen and (max-width: 1200px) { 
    
/*  Header Area ------------------------------------------------------------------------*/

#logo {
    max-width: 100px;
    margin: 20px 0 0 0;
}

nav#main-menu {
    float: left;
    width: 100%;
    margin: 25px 0 0 0;
}

    nav#main-menu ul li a {
        padding: 0;
        margin: 0 20px 5px 0;        

        font-size: 1.0rem;
    }

    nav#main-menu ul li a:hover {
        color: #91D1C5;
        border-bottom: none;
    }

    nav#main-menu ul li.current-menu-item > a,
    nav#main-menu ul li.current-menu-ancestor > a {
        border-bottom: none;
        color: #91D1C5;
        font-weight: 700;
        font-style: italic;
    }


/*  Cover Images Area ------------------------------------------------------------------*/

section#cover-images img {
    min-height: 270px;
    object-fit: cover;
}

.cover-text {
    font-size: 1.0rem;
}

.cover-text h3 {
    font-size: 1.6rem;
    margin: 0 0 20px 0;
}   
    
} /* <--- END MEDIA */




/*######################################################################################*/
/*	BREAKPOINT (@ 800 Pixel)
/*######################################################################################*/

@media only screen and (max-width: 800px) { 
    
/*  Header Area ------------------------------------------------------------------------*/

header {
    height: 75px;
}

    #header-content {
        width: 100%;
    }

        .open-menu {
            float: right;
            width: 32px;
            height: 32px;
            display: block;
            cursor: pointer;
            margin: 20px 5% 0 0;
            background: url(img/icon-menu.png) no-repeat;
            background-size: 32px 32px;
        }

        #logo {
            margin: 20px 0 0 5%;
        }

        nav#main-menu {
            position: absolute;
            top: 76px;
            margin: 0;
            left: -100%;
            width: 100%;
        }

            nav#main-menu ul li {
                width: 100%;
            }

                nav#main-menu ul li a {
                    width: 90%;
                    margin: 0;
                    background: #91D1C5;
                    padding: 12px 5% 12px 5%;
                    border-top: 1px solid #EFF3F7;

                    color: #fff;
                }

                nav#main-menu ul li a:hover {
                    color: #fff;
                }

                nav#main-menu ul li.current-menu-item > a,
                nav#main-menu ul li.current-menu-ancestor > a {
                    color: #fff;
                }



#header-empty {
    height: 76px;
}


/*  Cover Images Area ------------------------------------------------------------------*/

section#cover-images img {
    min-height: 150px;
}

.cover-text-wrapper {
    position: relative;
    bottom: auto;
    margin: 0 0 0 0;
}

    .cover-text {
        padding: 20px 0 20px;
    }



/*  Main Content Area ------------------------------------------------------------------*/

article {
    top: -20px;
    padding: 50px 0 20px 0;
    border-top: 20px solid #91D1C5;
}

    .full,
    .half {
        margin: 0 0 20px 0;
    }

    .third {
        flex-basis: 100%;
        margin: 0 0 20px 0;
    }

    .two-third {
        flex-basis: 100%;
        margin: 0 0 40px 0;
    }

    .bg-grey .third,
    .bg-grey .two-third {
        flex-basis: 90%;
        margin: 0 0 20px 0;
        padding: 20px 5% 20px 5%;
    }

    .accordion {
        font-size: 0.9rem;
        padding: 12px 4% 12px 4%;
    }

    .bg-grey .third .accordion {
        font-size: 1.2rem;
    }


/* Plugin Adjustments: Meta Slider */

.metaslider .caption-wrap {
    margin: 50px auto 0 auto !important;
}


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

div#copy {
    margin: 0 0 15px 0;
    width: 100%;
}

nav#footer-menu {
    width: 100%;
}

    nav#footer-menu ul {
        width: 100%;
    }

        nav#footer-menu ul li {
            width: 100%;
        }

            nav#footer-menu ul li a {
                width: 100%;
                margin: 0 0 5px 0;
            }

            nav#footer-menu ul li a:before {
                content: "";
                margin: 0;
            }

div#social {
    float: left;
    width: 100%;
    margin: 20px 0 0 0;
}

    div#social a {
        float: none;
        margin: 0 5px 0 5px;
        display: inline-block;
    }
    
} /* <--- END MEDIA */



/*######################################################################################*/
/*	BREAKPOINT (@ 600 Pixel)
/*######################################################################################*/

@media only screen and (max-width: 600px) { 

h1, h2 {
    font-size: 1.4rem;
}

h3 {
    font-size: 1.2rem;
}

/*  Main Content Area ------------------------------------------------------------------*/

.half {
    flex-basis: 100%;
} 


section#contact-bar a {
    font-size: 1.0rem;
    padding: 6px 30px 6px 30px;
}
    
} /* <--- END MEDIA */


#logo {margin-top: 50px;}
@media screen and (max-width: 700px) {
	
#logo {margin-top: 30px;}
}