@font-face {
    font-family: "LatoLight";
    src: url("../fonts/lato/Lato-Light.ttf") format("truetype");
}

@font-face {
    font-family: "Lato";
    src: url("../fonts/lato/Lato-Regular.ttf") format("truetype");
}

@font-face {
    font-family: "LatoHairline";
    src: url("../fonts/lato/Lato-Hairline.ttf") format("truetype");
}

@font-face {
    font-family: "Glyphicons Halflings";
    src: url("../fonts/glyphicons-halflings-regular.ttf") format("truetype");
}

.glyphicon {
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: "Glyphicons Halflings";
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.glyphicon-phone-alt:before {
    content: "\e183";
}
.glyphicon-phone:before {
    content: "\e145";
}
.glyphicon-envelope:before {
    content: "\2709";
}

/* Global Styles */

html,
body {
    height: 100%;
    width: 100%;
    letter-spacing: 0.5px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "LatoLight", sans-serif !important;
}

body {
    font-family: "Lato", sans-serif !important;
    font-size: 12pt;
    /*font-family: 'Arbutus Slab', "Helvetica Neue", "Helvetica", sans-serif !important;*/
    line-height: 1.8;
}

.vert-text {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-family: Lato;
}

/* Full Page Image Header Area */

.header {
    display: table;
    height: 70%;
    width: 100%;
    min-height: 70%;
    position: relative;
    background: url(../img/desk.jpg) no-repeat center center fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    z-index: 5;
    background-color: black;
}

.logo {
    max-width: 35em;
    /*width: 100%;*/
    padding: 2em;
    border: thin solid white;
    border-radius: 10px;
    background-color: white;
    opacity: 0.8;
    filter: alpha(opacity=80); /* For IE8 and earlier */
}

.buttonbox {
    margin: 2em 0 4em;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 1024px) and (orientation: portrait) {
    .header {
        display: table;
        height: 70%;
        width: 100%;
        position: relative;
        background: url(../img/desk-mini.jpg) no-repeat;
        background-size: 100% 100%;
        z-index: 5;
        background-color: black;
    }
}

@media only screen and (min-device-width: 320px) and (max-device-width: 1024px) and (orientation: landscape) {
    .header {
        display: table;
        height: 70%;
        width: 100%;
        position: relative;
        background: url(../img/desk-long.jpg) no-repeat;
        background-size: 100% 100%;
        z-index: 5;
        background-color: black;
    }
}

.header .btn {
    margin: 10px;
}

#main {
    z-index: 4;
    position: relative;
    background: rgb(255, 255, 255);
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
}

.header .btn {
    font-weight: 100;
}

/* Intro */

.counterpoint {
    padding: 50px 0;
    background-color: rgb(255, 252, 244);
}

.point {
    background: #137f2d;
    padding: 50px 0;
    color: #ffffff;
}

.point h2,
.counterpoint h2 {
    font-size: 32pt;
    line-height: 1.7;
}

i.callout-icon,
i.point-icon,
i.lead-icon {
    border-radius: 50%;
    display: inline-block;
    font-size: 56px;
    width: 140px;
    height: 140px;
    line-height: 136px;
    vertical-align: middle;
    text-align: center;
    -webkit-transition: box-shadow 0.2s;
    -moz-transition: box-shadow 0.2s;
    transition: box-shadow 0.2s;
}

i.lead-icon {
    border: 3px solid #222;
}

i.point-icon,
i.callout-icon {
    border: 3px solid #ffffff;
}

i.lead-icon:hover {
    color: #fff;
    border: 3px solid black;
    background: black;
}

i.point-icon:hover {
    color: rgb(22, 203, 230);
    border: 3px solid #fff;
    background: #fff;
}

a:hover {
    color: rgb(52, 73, 94);
}

.icon-2x {
    font-size: 200%;
}

/* Callout */

.callout {
    color: #ffffff;
    display: table;
    height: 420px;
    width: 100%;
    background-color: rgb(118, 156, 172);
    padding: 50px 0;
    color: #ffffff;
}

i.callout-icon:hover {
    color: rgb(249, 176, 190);
    border: 3px solid #fff;
    background: #fff;
}

/* Call to Action */

.call-to-action {
    color: #ffffff;
    background-color: rgba(255, 255, 255, 0.19);
    padding: 50px 0;
}

#action {
    background: url(../img/gray.png);
    padding: 30px 0px 40px;
    width: 100%;
}
#action pre {
    background-color: #545454;
    color: #f9f2f4;
}
#action pre:hover {
    background-color: #f9f2f4;
    color: #545454;
}
#action code {
    font-family: Lato, monospace;
    font-size: 14pt;
}

#footer {
    font-size: 14px;
    padding: 50px 0px 25px 0px;
    background: rgb(255, 255, 255);
}

.call-to-action .btn {
    margin: 10px;
}

/* Footer */

footer {
    padding: 100px 0;
}

footer a {
    color: black;
}

footer a:hover {
    text-decoration: none;
}

.point a,
.counterpoint a {
    color: rgb(7, 162, 166);
}

/* Bootstrap Addons */

.btn-dark {
    color: white;
    background-color: rgba(30, 30, 30, 0.8);
    border-color: black;
}

.btn-dark:hover,
.btn-dark:focus,
.btn-dark:active {
    color: black;
    background-color: aliceblue;
    border-color: black;
}

.btn-info:hover,
.btn-primary:hover,
.btn-success:hover {
    background: aliceblue;
}

.owl-carousel blockquote {
    border-left: 0px;
}

.owl-carousel a {
    color: #243382;
}

.owl-carousel blockquote p {
    font-size: 20pt;
}

/* Text */

.slogan-head {
    font-size: 28pt;
    font-family: LatoLight !important;
    margin-top: 70px;
}

.slogan-text {
    font-size: 12pt;
    line-height: 1.6;
    margin-top: 40px;
    margin-bottom: 50px;
}

.contact-text {
    margin-top: 10px;
}

/* Contact Form */
.contact-form {
    font-family: LatoLight;
    border: thin solid grey;
    border-radius: 5px;
}

.contact-form-element {
    text-align: left;
    margin-top: 20px;
}

.contact-form-label {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 5px;
    font-weight: 700;
}

.contact-form-input {
    display: block;
    width: 300px;
    border-radius: 2px;
    border: thin solid white;
    color: black;
}

.contact-form-checkbox {
    margin-top: 20px;
}

.contact-form-submit {
    background-color: grey;
    border: thin solid grey;
}

.has-error input {
    border-color: #a94442;
}

.has-error label {
    color: #a94442;
}

.has-error label {
    color: #a94442;
}

.contact-checkbox-error {
    color: #a94442;
}

/* Images */

.teamwork {
    display: table;
    /*height: 100%; */
    width: 100%;
    /*min-height: 100%;*/
    position: relative;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: 100% 100%;
    z-index: 3;
    background-color: black;
}

.cooperation {
    display: table;
    /*height: 100%; */
    width: 100%;
    /*min-height: 100%;*/
    position: relative;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: 100% 100%;
    z-index: 3;
    background-color: black;
}

/* Accordion */
.accordion dl {
}

.accordion dt > a {
    font-family: LatoLight;
    text-align: center;
    padding: 2em;
    display: block;
    text-decoration: none;
    color: #fff;
    -webkit-transition: background-color 0.5s ease-in-out;
}
.accordion dd {
    background-color: #d76602;
    color: #fafafa;
    font-size: 1em;
    line-height: 1.5em;
}
.accordion dd > p {
    padding: 1em 2em 1em 2em;
}

.accordion {
    position: relative;
    background-color: #984800;
}

.accordion-container {
    max-width: 960px;
    margin: 0 auto;
    padding: 2em 0 2em 0;
}

.accordionTitle {
    background-color: #22313f;
    border-bottom: 1px solid #2c3e50;
}
.accordionTitle:before {
    content: "+";
    font-size: 1.5em;
    line-height: 0.5em;
    float: left;
    -moz-transition: -moz-transform 0.3s ease-in-out;
    -o-transition: -o-transform 0.3s ease-in-out;
    -webkit-transition: -webkit-transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
}
.accordionTitle:hover {
    background-color: #2c3e50;
}

.accordionTitleActive {
    background-color: #34495e;
}
.accordionTitleActive:before {
    -webkit-transform: rotate(-225deg);
    -moz-transform: rotate(-225deg);
    transform: rotate(-225deg);
}

.accordionItem {
    height: auto;
    overflow: hidden;
}
@media all {
    .accordionItem {
        max-height: 50em;
        -moz-transition: max-height 1s;
        -o-transition: max-height 1s;
        -webkit-transition: max-height 1s;
        transition: max-height 1s;
    }
}
@media screen and (min-width: 48em) {
    .accordionItem {
        max-height: 15em;
        -moz-transition: max-height 0.5s;
        -o-transition: max-height 0.5s;
        -webkit-transition: max-height 0.5s;
        transition: max-height 0.5s;
    }
}

.accordionItemCollapsed {
    max-height: 0;
}

.animateIn {
    -webkit-animation-name: accordionIn;
    -webkit-animation-duration: 0.65s;
    -webkit-animation-iteration-count: 1;
    -webkit-animation-direction: normal;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: both;
    -webkit-animation-delay: 0s;
    -moz-animation-name: normal;
    -moz-animation-duration: 0.65s;
    -moz-animation-iteration-count: 1;
    -moz-animation-direction: alternate;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-fill-mode: both;
    -moz-animation-delay: 0s;
    animation-name: accordionIn;
    animation-duration: 0.65s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-timing-function: ease-in-out;
    animation-fill-mode: both;
    animation-delay: 0s;
}

.animateOut {
    -webkit-animation-name: accordionOut;
    -webkit-animation-duration: 0.75s;
    -webkit-animation-iteration-count: 1;
    -webkit-animation-direction: alternate;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: both;
    -webkit-animation-delay: 0s;
    -moz-animation-name: accordionOut;
    -moz-animation-duration: 0.75s;
    -moz-animation-iteration-count: 1;
    -moz-animation-direction: alternate;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-fill-mode: both;
    -moz-animation-delay: 0s;
    animation-name: accordionOut;
    animation-duration: 0.75s;
    animation-iteration-count: 1;
    animation-direction: alternate;
    animation-timing-function: ease-in-out;
    animation-fill-mode: both;
    animation-delay: 0s;
}

@-webkit-keyframes accordionIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.8);
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(1);
    }
}
@-moz-keyframes accordionIn {
    0% {
        opacity: 0;
        -moz-transform: scale(0.8);
    }
    100% {
        opacity: 1;
        -moz-transform: scale(1);
    }
}
@keyframes accordionIn {
    0% {
        opacity: 0;
        transform: scale(0.8);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}
@-webkit-keyframes accordionOut {
    0% {
        opacity: 1;
        -webkit-transform: scale(1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.8);
    }
}
@-moz-keyframes accordionOut {
    0% {
        opacity: 1;
        -moz-transform: scale(1);
    }
    100% {
        opacity: 0;
        -moz-transform: scale(0.8);
    }
}
@keyframes accordionOut {
    0% {
        opacity: 1;
        transform: scale(1);
    }
    100% {
        opacity: 0;
        transform: scale(0.8);
    }
}

/* Programs */
.programs {
    background: url(../img/gray.png) !important;
    color: white;
}

.program-button {
    font-size: 14pt !important;
    width: 250px;
    height: 60px;
    background-color: #116d27;
    margin-top: 20px;
    margin-bottom: 30px !important;
    color: white !important;
}

.program-button:hover {
    font-size: 14pt;
    width: 250px;
    height: 60px;
    background-color: #0b491a;
    margin-top: 20px;
    margin-bottom: 30px !important;
    border: thin solid white !important;
}

/* Footer */
.button-impressum {
    font-family: LatoLight !important;
    background-color: white !important;
    font-size: 12pt !important;
    color: black !important;
    border: none !important;
}

.button-impressum:hover {
    text-decoration: underline !important;
}

.privacy-footer {
    margin-bottom: 60px !important;
}

.button-cookie-modal {
    background-color: rgb(37, 46, 57) !important;
    text-decoration: underline !important;
    border: none !important;
    font-size: 11pt !important;
}

.button-cookie-modal:hover {
    color: #337ab7 !important;
    text-decoration: underline !important;
    border: none !important;
    font-size: 11pt !important;
}

/* Safety */
.safety-icon {
    font-size: 32pt;
    color: #149a34;
}

.programm-icon {
    margin-left: 5px;
}

/* Lindner */
.logoLindner {
    margin-top: 40px;
    width: 250px;
}

.lindner-container {
    margin-bottom: 30px;
}

.pic-programm {
    width: 100%;
    height: auto;
    margin-top: 30px;
    margin-bottom: 30px;
}

.contact-form-submit:hover {
    color: black;
}
