* {
    margin: 0px;
    padding: 0px;
}

/* open-sans-regular - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/open-sans-v34-latin-regular.eot');
    /* IE9 Compat Modes */
    src: local(''),
        url('../fonts/open-sans-v34-latin-regular.eot?#iefix') format('embedded-opentype'),
        /* IE6-IE8 */
        url('../fonts/open-sans-v34-latin-regular.woff2') format('woff2'),
        /* Super Modern Browsers */
        url('../fonts/open-sans-v34-latin-regular.woff') format('woff'),
        /* Modern Browsers */
        url('../fonts/open-sans-v34-latin-regular.ttf') format('truetype'),
        /* Safari, Android, iOS */
        url('../fonts/open-sans-v34-latin-regular.svg#OpenSans') format('svg');
    /* Legacy iOS */
}

.h3, h3 {
    font-size: 1.5rem;
}
a, a:link, a:visited {
    outline: none;
}

a, a:hover {
    color: rgb(43, 116, 103);
    font-weight: normal;
}

body {
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    font-size: 15px;
    color: rgb(43, 116, 103);
    background-color: rgb(148, 200, 182);
}

.wrapper {
    max-width: 1920px;
    margin: 0 auto;
    background: rgb(148, 200, 182);
    background: -moz-linear-gradient(top, rgb(43, 116, 103) 40%, rgb(148, 200, 182) 90%);
    background: -webkit-linear-gradient(top, rgb(43, 116, 103) 40%, rgb(148, 200, 182) 90%);
    background: linear-gradient(to bottom, rgb(43, 116, 103) 40%, rgb(148, 200, 182) 90%);
    /* filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#4b968a', endColorstr='#94c8b6', GradientType=0); */
}

/* * * * * * * * * * * * * * * * * * * * * * * * */

/*      Header                                   */

/* * * * * * * * * * * * * * * * * * * * * * * * */

#header, #navbar {
    transition: 0.5s;
    transition-timing-function: ease;
}

#header {
    max-width: 1920px;
    background: rgb(99, 177, 165);
    background: -moz-linear-gradient(left, rgb(99, 177, 165) 1%, rgb(180, 208, 211) 25%, rgb(250, 250, 250) 46%, rgb(250, 250, 250) 54%, rgb(180, 208, 211) 75%, rgb(99, 177, 165) 100%);
    background: -webkit-linear-gradient(left, rgb(99, 177, 165) 1%, rgb(180, 208, 211) 25%, rgb(250, 250, 250) 46%, rgb(250, 250, 250) 54%, rgb(180, 208, 211) 75%, rgb(99, 177, 165) 100%);
    background: linear-gradient(to right, rgb(99, 177, 165) 1%, rgb(180, 208, 211) 25%, rgb(250, 250, 250) 46%, rgb(250, 250, 250) 54%, rgb(180, 208, 211) 75%, rgb(99, 177, 165) 100%);
    /* filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#63b1a5', endColorstr='#63b1a5', GradientType=1); */
}

#row_header {
    margin: 2% 5% 0% 5%;
    height: 10rem;
    transition: 0.5s;
    transition-timing-function: ease;
    font-family: 'PT Serif', serif;
    font-size: 3.3rem;
    font-style: italic;
}

/* * * * * * * * * * * * * * * * * * * * * * * * */

/*    Navigation                                 */

/* * * * * * * * * * * * * * * * * * * * * * * * */

#container-navbar {
    padding-left: 0px;
}

.navbar {
    color: #f7f8f9;
    max-width: 1920px;
    margin: 0 auto;
    padding-left: 0;
}

.nav-link {
    color: rgb(43, 116, 103) !important;
    text-transform: uppercase;
    white-space: nowrap;
    font-size: 1.1em;
    line-height: 1.2rem;
}

.nav-item.active .nav-link, .nav-item:hover .nav-link {
    color: #ffffff !important;
    background-color: rgb(144, 160, 161);
    opacity: 0.9;
    border-radius: 8px;
}

.dropdown-menu {
    font-size: 1rem;
    background-color: rgb(144, 160, 161);
    opacity: 0.9;
    border: 0px;
    border-radius: 8px;
    margin: 0.02rem;
}

.dropdown-item {
    color: white;
    background-color: rgb(144, 160, 161);
    line-height: 1.0rem;
}

.dropdown-item:hover {
    color: white;
    background-color: rgb(43, 116, 103);
}

.scrollable-menu {
    height: 100vh;
    max-height: 200px;
    overflow-x: hidden;
}

/* * * * * * * * * * * * * * * * * * * * * * * * */

/*      Content                                  */

/* * * * * * * * * * * * * * * * * * * * * * * * */

.content-container {
    max-width: 1170px;
    margin: 0 auto;
    padding-top: 15px;
}

.main-content-container {
    background: rgb(177, 212, 218);
    margin-bottom: 0.5rem;
    padding: 0.5rem 0.5rem 0.5rem 0.5rem;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    overflow: hidden;
}

.main-content-container-white {
    background: rgb(255, 255, 255);
}

.main-content-container-noborder {
    background: rgb(94, 201, 219);
    margin-bottom: 0.5rem;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    overflow: hidden;
}

.main-content-container-red {
    background: #E31E25;
    min-height: 4rem;
    text-align: center;
}

.main-content-container-red a {
    color: white;
    text-decoration: none;
}

.aside-content-container h4 {
    color: black;
    text-transform: uppercase;
    font-weight: bold;
}

.main-content-title {
    width: 100%;
    color: white;
    text-transform: uppercase;
    text-align: center;
}

.main-content-title h1 {
    margin-bottom: 0.0em;
}

.main-content-row {
    margin-bottom: 0.8em;
}

.main-content-row:last-child {
    margin-bottom: 0em;
}

.main-content {
    min-height: 9rem;
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    background: #FFF;
}

.main-content-img {
    display: block;
    height: auto;
    border-radius: 8px;
    overflow: hidden;
    background: #FFF;
}

.top-container img {
    display: block;
}

.top-container span {
    background-color: rgb(43, 116, 103);
    color: white;
    border-radius: 8px;
    position: absolute;
    bottom: 5%;
    right: 5%;
    width: 40%;
    text-align: center;
    opacity: 70%;
}

.img-fit {
    position: relative;
    width: 100%;
}

.logo-fit {
    max-width: 100%;
    max-height: 100%;
    display: block;
    margin: 0 auto;
}

.main-content h1, h2, h3, h4 {
    padding-top: 1rem;
    padding-left: 0.3rem;
    font-weight: normal;
}

.main-content p {
    margin-bottom: 0rem;
    padding: 0.5rem;
}

.iframe-map {
    display: block;
    width: 750px;
    height: auto;
}

.aside-top {
    margin-top: 0rem;
}

.aside-content {
    min-height: 9rem;
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    background: #FFF;
}

.aside-contact {
    width: 100%;
    text-align: center;
    font-size: 0.7rem;
    font-weight: bold;
    color: black;
}

.aside-contact a {
    font-weight: bold;
    color: black;
}

table, th, td {
    padding: 0.3em 1.0em;
}

table {
    width: 100%;
    border-radius: 8px;
}

.tbl-koenige th {
    border-bottom: 2px solid #dddddd;
    text-align: center;
}

.tbl-koenige td {
    border-top: 1px solid #dddddd;
    text-align: center;
}

.tbl-kontakt a {
    font-weight: normal;
}

.tbl-kontakt td {
    padding: 0.3em 0.7em;
}

.spacer {
    height: 20px;
}

.bildunterschrift {
    font-size: 0.8rem;
    font-style: italic;
}

.trainingszeiten {
    font-size: 1.0rem;
    margin-top: 0.7rem;
    padding-left: 0.5rem;
    list-style-type: none;
}

.trainingszeiten1 {
    float: left;
    width: 6rem;
}

.trainingszeiten2 {
    float: left;
    width: 6rem;
}

.pdf-icon {
    width: 50px;
}

.card-header {
    padding: 0.5rem 1.25rem;
}

.btn-link, .btn-link:hover {
    color: rgb(43, 116, 103);
    font-weight: bold;
}

/* * * * * * * * * * * * * * * * * * * * * * * * */

/*      Footer                                   */

/* * * * * * * * * * * * * * * * * * * * * * * * */

.footer-copyright {
    color: white;
    padding-bottom: 1rem;
    text-transform: uppercase;
}

.footer-copyright a {
    color: white;
}

/* * * * * * * * * * * * * * * * * * * * * * * * */

/*   Media-Queries                               */

/* * * * * * * * * * * * * * * * * * * * * * * * */

@media all and (min-width: 992px) {
    .navbar .nav-item .dropdown-menu {
        display: none;
    }
    .navbar .nav-item:hover .nav-link {
        color: #fff;
    }
    .navbar .nav-item:hover .dropdown-menu {
        display: block;
    }
    .navbar .nav-item .dropdown-menu {
        margin-top: 0;
    }
    .main-content {
        min-height: 9rem;
    }
    .iframe-map {
        display: block;
        max-width: 290px;
        height: auto;
    }
    .content-logo {
        height: 100%;
    }
    .aside-top {
        margin-top: 4rem;
    }
    .trainingszeiten {
        font-size: 0.7rem;
        margin-top: 0.7rem;
        padding-left: 0.5rem;
    }
    .trainingszeiten2 {
        width: 3rem;
    }
}

@media (min-width: 1200px) {
    .wrapper {
        padding-top: 18rem;
    }
    #header {
        height: 17rem;
    }
    #row_header {
        height: 11rem;
    }
    .header_img {
        height: 10rem;
    }
    .header_img_right {
        height: 8rem;
    }
    .header_schrift {
        height: 3.5rem;
    }
    .navbar-brand {
        display: none;
    }
    .content-container-row {
        margin: 0 0.8rem 0 0;
    }
}

@media (min-width: 992px) and (max-width: 1199.9px) {
    .wrapper {
        padding-top: 14rem;
        max-width: 970px;
    }
    #header {
        height: 13rem;
    }
    #row_header {
        height: 8rem;
    }
    .header_img {
        height: 8rem;
    }
    .header_img_right {
        height: 6rem;
    }
    .header_schrift {
        height: 2.6rem;
        margin-top: 2rem !important;
        font-size: 2.5rem;
    }
    .navbar-brand {
        display: none;
    }
    .main-content-container, .main-content-container-noborder {
        margin: 0 0;
        margin-bottom: 0.5rem;
    }
    .content-container-row {
        margin: 0 0;
    }
    .sidebar-border {
        padding-left: 0rem;
        padding-right: 0.5rem;
    }
}

@media (min-width: 768px) and (max-width: 991.9px) {
    .wrapper {
        padding-top: 12rem;
    }
    #header {
        height: 11rem;
    }
    #row_header {
        height: 6rem;
        margin-right: 0;
    }
    .header_img {
        height: 6rem;
    }
    .header_img_right {
        height: 5rem;
        margin-top: -1.7rem !important;
    }
    .header_schrift {
        height: 1rem;
        margin-top: 1rem !important;
        font-size: 2.3rem;
    }
    .navbar-brand {
        display: none;
    }
    .nav-link {
        font-size: 0.85em;
    }
    .main-content-container, .main-content-container-noborder {
        max-width: 750px;
        margin: 0 auto;
        margin-bottom: 0.5rem;
    }
    .content-container-row {
        margin: 0 0;
    }
    .content-logo {
        margin: -15% auto;
    }
    .sidebar-border {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }
    .top-container span {
        right: 12%;
        width: 30%;
    }
}

@media (max-width: 767.9px) {
    .wrapper {
        padding-top: 5rem;
    }
    #header {
        height: 4rem;
    }
    #row_header {
        margin-top: 0;
        height: 0rem;
    }
    .header_img, .header_img_right, .header_schrift {
        display: none;
    }
    .navbar {
        padding: 0;
    }
    .navbar-brand {
        display: block;
    }
    .nav-item {
        background: rgb(99, 177, 165);
        background: -moz-linear-gradient(left, rgb(99, 177, 165) 1%, rgb(180, 208, 211) 25%, rgb(250, 250, 250) 46%, rgb(250, 250, 250) 54%, rgb(180, 208, 211) 75%, rgb(99, 177, 165) 100%);
        background: -webkit-linear-gradient(left, rgb(99, 177, 165) 1%, rgb(180, 208, 211) 25%, rgb(250, 250, 250) 46%, rgb(250, 250, 250) 54%, rgb(180, 208, 211) 75%, rgb(99, 177, 165) 100%);
        background: linear-gradient(to right, rgb(99, 177, 165) 1%, rgb(180, 208, 211) 25%, rgb(250, 250, 250) 46%, rgb(250, 250, 250) 54%, rgb(180, 208, 211) 75%, rgb(99, 177, 165) 100%);
    }
    .navbar-nav .nav-link {
        padding-right: 1rem;
        padding-left: 1rem;
    }
    .dropdown-menu, .dropdown-item {
        background: rgb(99, 177, 165);
        background: -moz-linear-gradient(left, rgb(99, 177, 165) 1%, rgb(180, 208, 211) 25%, rgb(250, 250, 250) 46%, rgb(250, 250, 250) 54%, rgb(180, 208, 211) 75%, rgb(99, 177, 165) 100%);
        background: -webkit-linear-gradient(left, rgb(99, 177, 165) 1%, rgb(180, 208, 211) 25%, rgb(250, 250, 250) 46%, rgb(250, 250, 250) 54%, rgb(180, 208, 211) 75%, rgb(99, 177, 165) 100%);
        background: linear-gradient(to right, rgb(99, 177, 165) 1%, rgb(180, 208, 211) 25%, rgb(250, 250, 250) 46%, rgb(250, 250, 250) 54%, rgb(180, 208, 211) 75%, rgb(99, 177, 165) 100%);
    }
    .dropdown-menu {
        font-size: 1rem;
        background-color: rgb(43, 116, 103);
        opacity: 0.9;
        border: 0px;
        border-radius: 0px;
        margin-top: 0rem;
    }
    .dropdown-item {
        color: rgb(43, 116, 103);
    }
    .iframe-map {
        display: block;
        width: 760px;
        height: auto;
    }
    .content-container {
        padding-top: 0px;
    }
    .main-content-container, .main-content-container-noborder {
        margin: auto 0rem;
        margin-bottom: 0.5rem;
    }
    .content-container-row {
        margin: 0 0;
    }
    .content-logo {
        margin: -15% auto;
    }
    .sidebar-border {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }
}

@media (max-width: 590px) {
    .iframe-map {
        display: block;
        width: 580px;
        height: auto;
    }
}