@import 'flexheader.css';
@import 'besonderheit.css';
@import 'main-structural.css';
@import 'sonderaufgaben.css';
@import 'tradition.css';
@import 'forderkraft.css';
@import 'team.css';
@import 'partner.css';
@import 'zukunft.css';
@import 'stellen.css';
@import 'buttons.css';
@import 'unterstützung.css';
@import 'footer.css';
@import 'news.css';
@import 'losungen.css';
@import 'bewertung.css';
@import 'referenzen-module.css';
@import 'news-module.css';
@import 'bewerbung.css';
@import 'teaser.css';
@import 'impressum.css';
@import 'datenschutz.css';
@import 'kundenlogos.css';
@import 'colors.css';

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

@font-face {
    font-family: 'Roboto';
    src: url('../fonts/Roboto-Regular.woff2') format('woff2'),
         url('../fonts/Roboto-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
  }

html {
    scroll-behavior: smooth;
  }

body {
    font-size: 1rem;
    line-height: 1.3;
    width:100vw;
    color: #000000;
    font-family:  'Roboto', "Helvetica Neue", sans-serif;
    -webkit-font-smoothing: antialiased; /* For Webkit browsers */
    -moz-osx-font-smoothing: grayscale; /* For Firefox on macOS */
}

/* Main */

.mobile-menu .button_container { position: absolute; top: 1.3rem; right: 1rem; height: 24px; width: 28px; cursor: pointer; z-index: 100; transition: opacity .25s ease, top 0.5s ease; }

h1 {
    color:rgb(255,255,255);
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 400;
    font-style: italic;
    line-height: 1.2;
    padding: 0 0 .25rem 0;
    margin: 0 2rem .5rem 0;
    border-bottom: 2px solid rgb(255, 255, 255);
}

h2 {
    font-size: 1.9rem;
    font-style: normal;
    font-weight: 600;
    line-height: 2rem;
    padding-bottom: .5rem;
    margin: 0.25rem 0 1.25rem 0;
    color:rgb(255,255,255);
}

h3 {
    display: inline-block;
    font-size: 2rem;
    font-style: italic;
    font-weight: 400;
    line-height: 1.2;
    padding-bottom: .25rem;
    margin: 2rem 0;
    color: var(--h3-color);
    border-bottom: 2px solid var(--h3-color);
}

h4 {
    font-size: 1.9rem;
    font-weight: 600;
    font-style: normal;
    line-height: 1.2;
}


h1,
h2,
h3,
h4,
h5,
h6 {
    position: relative;
    z-index:10;
}


a {
    color: rgb(99, 105, 99);
    text-decoration: none;
}

a:hover {
    color: rgb(99, 105, 99);
    text-decoration: none;
}

pre {
    background: #F0F0F0;
    margin: 1rem 0;
    border-radius: 2px;
}

blockquote {
    border-left: 10px solid #eee;
    margin: 0;
    padding: 0 2rem;
}

/* Utility Classes */
.wrapper {
    margin: 0 3rem;
}

.padding {
    padding: 3rem 1rem;
}

.left {
    float: left;
}

.right {
    float: right
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.text-left {
    text-align: left;
}

/* Content Styling */
.header .padding {
    padding: 1rem 0;
}

#header  {
    background-color: rgba(255,255,255,0.75);
}

.header {
    background-color: #1F8DD6;
    color: #eee;
}

.header a {
    color: #fff;
}

.header .logo {
    font-size: 1.7rem;
    text-transform: uppercase;
}

.footer {
    background-color: #eee;
}

/* Menu Settings */
.main-nav ul {
    position:relative;
    text-align: center;
    letter-spacing: -1em;
    margin: 0;
    padding: 0;
}

.main-nav ul li {
    display: inline-block;
    letter-spacing: normal;
}

.main-nav ul li a {
    position: relative;
    display: block;
    line-height: 45px;
    color: #fff;
    padding: 0 20px;
    white-space: nowrap;
}

.main-nav > ul > li > a {
    border-radius: 2px;
}

/*Active dropdown nav item */
.main-nav ul li:hover > a {
    color: #175E91;
}

/* Selected Dropdown nav item */
.main-nav ul li.selected > a {
    background-color: #fff;
    color: #175E91;
}

/* Dropdown CSS */
.main-nav ul li {position: relative;}

.main-nav ul li ul {
    position: absolute;
    background-color: #1F8DD6;
    min-width: 100%;
    text-align: left;
    z-index: 999;

    display: none;
}
.main-nav ul li ul li {
    display: block;
}

/* Dropdown CSS */
.main-nav ul li ul ul {
    left: 100%;
    top: 0;
}

/* Active on Hover */
.main-nav li:hover > ul {
    display: block;
}

/* Child Indicator */
.main-nav .has-children > a {
    padding-right: 30px;
}
.main-nav .has-children > a:after {
    font-family: FontAwesome;
    content: '\f107';
    position: absolute;
    display: inline-block;
    right: 8px;
    top: 0;
}

.main-nav .has-children .has-children > a:after {
    content: '\f105';
}

ul {
    list-style-type: circle; /* Hollow circle bullet */
    margin-top: 1rem;
  }

/* Mobile Menu */
#toggle span {
    background-color: black;
}

#overlay {
    background-color: rgba(255, 255, 255,.95);
}

.treemenu li a.active {
    color:#000000;
}

.overlay-menu ul li a {
    font-size:2rem;
    line-height: 3rem;
    color: var(--link-mmenu);
}

.treemenu li a:focus, .treemenu li a.active { 
    color: rgba(0, 0, 0, 1); 
    text-decoration: none; 
}

.treemenu li a:hover { 
    color: var(--linkhover-mmenu);
}

.overlay-menu ul {
    list-style:none;
    padding:0;
}

.overlay-menu ul li {
    list-style:none;
}

.overlay-menu p {
    font-size:2rem;
}

.clockwork-badge {
    display: none !important;
}