/* G E N E R A L */

.h1, h1 {
    font-size: 1.5rem;
}

.h2, h2 {
    font-size: 1.3rem;
    margin-bottom: 1rem;
}

.heading_h2 {
    margin-bottom: 30px;
    padding-bottom: 15px;
    font-family: "Montserrat", sans-serif;
}

@media (min-width: 1280px){
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1280px;
    }
}

.owl-theme .owl-dots .owl-dot span {
    width: 50px;
}

.owl-theme .owl-dots .owl-dot span {
    height: 6px;
    border: 1px solid #afafaf;
}

#importantinformation .owl-theme .owl-dots .owl-dot span{
    width: 40px;
}

section.no_pb{
    padding-bottom: 0px !important;
}

/* H E A D I N G */

.heading_s1 h5{
    text-transform: unset !important;
}

/* T O P */

.top-header.bg-dark {
    /*background-color: #279d2f !important;*/
    /*background-color: #EEEEEE !important;*/
    background: #f7f7f7 !important;
    /* background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 67%, rgba(242,242,242,1) 99%); */
}

.dark_skin .top-header, .dark_skin .middle-header {
    border-bottom: 1px solid #dee2e6;
    padding-top: 13px;
}

header .social_icons li a {
    font-size: 18px;
    line-height: 30px;
}

.navbar-brand img {
    max-width: 378px;
}

.top-header.light_skin .contact_detail li {
    color: #666;
}

.social_white.social_icons li a {
    color: #666;
}

.social_white.social_icons li a {
    color: #666;
    border-color: #666;
}

.top-header .top-header-submenue-left.list_none li {
    list-style: none;
    float: right;
}

.top-header .top-header-submenue-left li{
    margin-left: 15px;
    font-size: 14px;
}

.top-header .top-header-submenue-left li a{
    color: #666666;
}

.top-header .top-header-submenue-left li i{
    margin-right: 3px;
}

.top-header .top-header-submenue-left li svg{
    margin-top: -1px;
}

.nav-tabs {
    border-bottom: 0px !important;
}

/* M A I N M E N U E */

#navbarSupportedContent .nav.nav-tabs {
    margin: -151px auto 0px auto;
    display: inline-block;
    width: 100%;
    position: absolute;
    text-align: center;
    pointer-events: none;
}

#navbarSupportedContent .nav.nav-tabs .nav-item{
    display: inline-block;
    pointer-events: auto;
}

.navbar-expand-lg .navbar-collapse {
    position: relative;
}

#navbarSupportedContent .nav.nav-tabs .nav-item a{
    padding: .8rem 1.8rem;
}

.navbar-expand-lg .navbar-nav > li > .nav-link {
    font-size: 14px;
    font-weight: 600;
    padding: 35px 10px;
    text-transform: uppercase;
}

/* H E A D E R */

#headerslider{
    padding: 0px 0;
}

#headerslider .overlay_bg::before {
    background-color: rgba(0, 0, 0, 0.0);
}

/* F O O T E R */

.heading_s1.partner h5{
    margin-top: 10px;
}

footer .widget_title {
    margin-bottom: 42px;
}

a.tellink{
    color: #FFFFFF !important;
}

footer .text_align_right{
    text-align: right !important;
}

/* U L   T A B L E */

ul.table, ul.table li{
    list-style: none;
}

ul.table li {
    margin: 5px 0px 5px 0px;
}

ul.table li a{
    position: relative;
    display: block;
    padding: 15px 10px 15px 40px;
/*
    -webkit-box-shadow: 0px 0px 1px 1px rgba(0,0,0,0);
    box-shadow: 0px 0px 1px 1px rgba(0,0,0,0);
*/
    transition-property: box-shadow, padding;
    transition-duration: 0.5s;
    transition-delay: 0s;
}

ul.table li a:hover{
    /*
    -webkit-box-shadow: 0px 0px 1px 1px rgba(0,0,0,0.3);
    box-shadow: 0px 0px 1px 1px rgba(0,0,0,0.3);
    */
    background: #EEEEEE;
    padding: 15px 10px 15px 45px;
}

ul.table li:nth-child(even) {
    background: #F3F3F3;
}

ul.table li:nth-child(odd) {

}

ul.table li a::before {
    content: "\f10b";
    font-family: ionicons;
    left: 15px;
    position: absolute;
    top: 15px;

    transition-property: left;
    transition-duration: 0.2s;
    transition-delay: 0s;
}

ul.table li a:hover::before {
    left: 20px;
}

/* T E S T I M O N I A L S  |  M E S S A G E S */

section.messages{
    padding: 50px 0px 25px 0px;
}

.testimonial_style1 .testimonial_box {
    border: 0px solid rgba(0,0,0,0.1);
}

.testimonial_box {
    padding: 0px;
}

.messages .text-align-right,
.instagram .text-align-right{
    text-align: right;
}

.messages .text-align-right a,
.instagram .text-align-right a{
    display: inline-block;
    margin-right: 0px;
    text-transform: unset !important;
}

.messages .date{
    margin: 0px 10px 0px 5px;
}
.messages .time{
    margin: 0px 10px 0px 5px;
}

.messages .more{
    margin-top: 10px;
    display: inline-block;
}

section.small_pb.instagram {
    padding-bottom: 25px;
}

/* I N S T A G R A M */

.heading_s1.marginleft{
    margin-left: 15px;
}

.blog_post .blog_img{
    height: 223px;
    overflow: hidden;
}

/* H E A D E R   I M A G E */

section.background_bg.subpage{
    padding: 350px 0px 15px 0px;
}

/* B R E A D C R U M B */

.breadcrumb-item + .breadcrumb-item::before,
.breadcrumb-item.active, .breadcrumb-item a{
    color: #FFFFFF;
    text-shadow: 1px 1px 1px rgba(0,0,0,1);
}

/* S L I D E R */

#headerslider .carousel-item{
    height: 430px;
}

#headerslider .banner_content{
    padding: 0px 50px 0px 25px;
}

#headerslider .banner_content h2{
    font-size: 35px;
}

#headerslider .carousel.slide .carousel-indicators li{
    background-color: unset;
    opacity: .8;
    width: auto;
    height: auto;
}

#headerslider .carousel.slide .carousel-indicators li span{
    background: #D6D6D6;
    display: block;
    -webkit-backface-visibility: visible;
    border-radius: 30px;
    width: 50px;
    height: 8px;
    border: 1px solid #afafaf;
}

#headerslider .carousel.slide .carousel-indicators li.active span{
    background: #279d2f;
    border: 1px solid #279d2f;
}

/* S L I D E R   F U L L   W I D T H */

.carouselExampleControlsTwo.full_screen, .carouselExampleControlsTwo.full_screen .carousel-item{
    height: 550px !important;
}

.carouselExampleControlsThree.full_screen, .carouselExampleControlsThree.full_screen .carousel-item{
    height: calc(100vh - 149px) !important;
}


/* H F S W I D G E T */

#headerslider .row{
    position: relative;
}

[data-hfs-widget] .lyr_atomPrimaryBtn, .lyr_atomPrimaryBtn {
    background-color: #279d2f !important;
}

[data-hfs-widget] .lyr_atomBtnWrap {
    padding: 0px 0px 0px 0px;
}

[data-hfs-widget] .lyr_atomPrimaryBtn{
    color: #292b2c !important;
    background-color: #F3F3F3 !important;
    font-weight: unset !important;
    border: 0px !important;
    line-height: 44px;
}

.lyr_atomNavigationBar .lyr_atomNavigationTabsContainer .lyr_atomNavigationTabs .lyr_atomNavigationTabItem[aria-selected="true"] .lyr_atomTabButton {
    background-color: #EEEEEE !important;
    color: #0b0b0b !important;
}

[data-hfs-widget] .lyr_atomNavigationBar .lyr_atomNavigationTabsContainer .lyr_atomNavigationTabs .lyr_atomNavigationTabItem {
    background-color: #F7F7F7;
    border-bottom: 1px solid #DDDDDD;
}

#importantinformation .tab-style3 .nav-tabs li {
    margin-top: 0px;
    border-bottom: 2px solid #DDDDDD;
}

#importantinformation .tab-style3 .nav-tabs .nav-item a.active{
    background-color: #EEEEEE !important;
    color: #0b0b0b;
}


/* I M P O R T A N T   I N F O R M A T I O N */

#importantinformation{
    padding: 35px 0px 25px 0px;
}

#importantinformation .errormessages{
    height: 172px;
    position: relative;
    display: flex;
    width: 100%;
}

#importantinformation .errormessages .nomessage{
    background: #EFEFEF;
    width: 100%;
    padding: 10px 10px 10px 10px;
    display: flex;
}

#importantinformation .errormessages .nomessage p{
    margin: auto;
}

.timeChangeContent .owl-carousel.owl-theme .owl-dots {
    margin-top: 6px !important;
    margin-bottom: 12px;
}

/* F A H R P L A N Ä N D E R U N G */

.timeChangeContent .changeInfoItem .changeInfoIteminner{
    background: #F3F3F3;
    display: flex;
    width: 100%;
}

.timeChangeContent .changeInfoItem{
    margin-bottom: 15px;
}

.timeChangeContent .row {
    margin-right: -30px;
    margin-left: -30px;
}

.timeChangeContent .catTitle{
    width: 120px;
    background: #FFFFFF;
    text-align: center;
    color: #FFFFFF;
}

.timeChangeContent .catTitle,
.timeChangeContent .catDescription{
    float: left;
    padding: 5px 8px 5px 8px;
}

.timeChangeContent .catCounter{
    float: right;
    padding: 5px;
}

.timeChangeContent .changeInfoItem .changeInfoIteminner a{
    display: inline-block;
    width: 100%;
}

.fahrplanaenderung .cat-2, .catTitle.cat-2{ background: #90bc5c; }
.fahrplanaenderung .cat-3, .catTitle.cat-3{ background: #579b95; }
.fahrplanaenderung .cat-4, .catTitle.cat-4{ background: #662a84; }
.fahrplanaenderung .cat-5, .catTitle.cat-5{ background: #7f93c9; }
.fahrplanaenderung .cat-6, .catTitle.cat-6{ background: #817246; }
.fahrplanaenderung .cat-7, .catTitle.cat-7{ background: #1b2a7f; }
.fahrplanaenderung .cat-8, .catTitle.cat-8{ background: #ad8fbf; }
.fahrplanaenderung .cat-9, .catTitle.cat-9{ background: #498242; }
.fahrplanaenderung .cat-10, .catTitle.cat-10{ background: #c8001b; }
.fahrplanaenderung .cat-11, .catTitle.cat-11{ background: #3c6b66; }

.fahrplanaenderung .cat-24, .catTitle.cat-24{ background: #4471a8; }
.fahrplanaenderung .cat-33, .catTitle.cat-33{ background: #4471a8; }
.fahrplanaenderung .cat-34, .catTitle.cat-34{ background: #486577; }
.fahrplanaenderung .cat-29, .catTitle.cat-29{ background: #9aabb5; }
.fahrplanaenderung .cat-28, .catTitle.cat-28{ background: #5394d1; }
.fahrplanaenderung .cat-23, .catTitle.cat-23{ background: #3d6c3e; }
.fahrplanaenderung .cat-27, .catTitle.cat-27{ background: #52CCA3; }
.fahrplanaenderung .cat-26, .catTitle.cat-26{ background: #337387; }
.fahrplanaenderung .cat-25, .catTitle.cat-25{ background: #184250; }

#importantinformation .tab-style3 .nav-tabs li {
    margin-right: 1px;
}

#importantinformation .tab-style3 li a{
    background-color: #F7F7F7;
}

#importantinformation .tab-style3 .nav-tabs li a{
    padding: 12px 30px;
    border-radius: 0px;
}

#importantinformation .changeInfoItemAll a{
    background: #F3F3F3;
    padding: 10px 10px 10px 10px;
    width: 100%;
    display: inline-block;
    text-align: center;
}

#importantinformation .emptyItem{
    min-height: 1px;
}

/* B L O G   S T Y L E */

.blog_post.blog_style1{
    padding: 0px !important;
    box-shadow: 0 0 0px rgba(0,0,0,0) !important;
}

/* P R E L O A D E R */

.lds-ellipsis {
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
}
.lds-ellipsis div {
    position: absolute;
    top: 33px;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: #DDD;
    animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
    left: 8px;
    animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
    left: 8px;
    animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
    left: 32px;
    animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
    left: 56px;
    animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
    0% {
        transform: scale(0);
    }
    100% {
        transform: scale(1);
    }
}
@keyframes lds-ellipsis3 {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(0);
    }
}
@keyframes lds-ellipsis2 {
    0% {
        transform: translate(0, 0);
    }
    100% {
        transform: translate(24px, 0);
    }
}

/* P O R T F O L I O */

section.portfolio{
    padding: 25px 0px 25px 0px;
}

.portfolio_style4 .portfolio_content{
    background-color: #FFFFFF !important;
    padding: 15px 0px 0px 0px;
}

.portfolio_content h5 a, .portfolio_content p {
    color: #292b2c;
}

section.portfolio .owl-theme[data-dots="true"] .owl-nav [class*="owl-"] {
    margin-top: -80px;
}

.portfolio_style4 .portfolio_item .image_link {
    height: 205px;
}

/* I C O N B A R  &  S C R O L L U P */

#iconbar{
    position: fixed;
    z-index: 98;
    left: 40px;
    display: flex;
    flex-direction: column;
    top: 230px;
}

.full_width #iconbar{
    top: 300px;
}

.full_width.subpage #iconbar{
    top: 200px;
}

#iconbar ul{
    width: 45px;
}

#iconbar ul li{
    position: relative;
}

#iconbar ul li.timetablechangeicon{
    margin-top: 25px;
}

#iconbar ul li a {
    font-size: 22px;
    height: 45px;
    width: 45px;
    line-height: 43px;
    display: inline-block;
    text-align: center;
    vertical-align: middle;color: #666;
    border: 2px solid #FFFFFF;
    background-color: #FFFFFF;

    -webkit-box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.5);
    box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.5);
}

#iconbar ul li a img.partner_link{
    position: absolute;
    bottom: 5px;
    right: -20px;
}

#iconbar ul li a:hover{
    border: 2px solid #999999 !important;
    background-color: #F3F3F3;
}

#iconbar ul li.timetablechangeicon a.active{
    border: 2px solid #FF0000;
    line-height: 43px;
}

@-webkit-keyframes blink {
    0%   { border-color:red; }
    50%  { border-color:#FFFFFF;}
    100% { border-color:red; }
}
@-moz-keyframes blink {
    0%   { border-color:red; }
    50%  { border-color:#FFFFFF;}
    100% { border-color:red; }
}
@-ms-keyframes blink {
    0%   { border-color:red; }
    50%  { border-color:#FFFFFF;}
    100% { border-color:red; }
}

#iconbar ul li.timetablechangeicon a.active{
    -webkit-animation: blink 3s infinite;
    -moz-animation:    blink 3s infinite;
    -ms-animation:     blink 3s infinite;
    border: 2px solid;

    animation: 3000ms blink infinite;
}

#iconbar ul li.errormessages a{
    border: 2px solid #279d2f;
    line-height: 43px;
}

.scrollup {
    bottom: 40px !important;
    right: 40px !important;
}

/* C A L L  2  A c t i o n */

.green_overlay_bg::before {
    background-color: rgba(39,157,47,0.8);
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

/* V I M E O */

a.video_play {
    color: #FFFFFF;
}

/* E R R O R   M E S S A G E S */

.errormessageDate .ion-calendar{
    margin-right: 5px;
}

.errormessageDesc{
    height: 100px;
}

/* M O D A L B O X */

.modal-backdrop.show {
    opacity: .8;
}

.modal-body .item{
    display: inline-block;
    margin: 0px 0px 20px 0px;
}

.modal-body .item .errormessageDesc {
    height: auto;
}

/* B R E A K P O I N T S */

@media only screen and (max-width: 1512px){

    #iconbar {
        position: fixed;
        left: 5px;
    }

}

@media only screen and (max-width: 1279px){

    .navbar-brand {
        padding: 10px 0;
        vertical-align: top;
        width: 75px;
        overflow: hidden;
    }

    .top-header-submenue-left span.topmenuetext{
        display: none;
    }

}

@media only screen and (min-width: 992px){
    body.nav-fixed{
        padding-top: 140px;
    }
}


@media only screen and (max-width: 991px){

    section {
        padding: 0px 0px 25px 0px !important;
    }

    #headerslider {
        padding: 0px 0px 25px 0px;
    }

    section#importantinformation,
    section#headerslider{
        /*margin: 0px 0px 25px 0px !important;*/
    }

    #iconbar, .full_width #iconbar{
        position: relative;
        z-index: 98;
        left: unset;
        display: inline-block;
        flex-direction: column;
        top: unset;
        padding: 10px 0px 10px 0px;
    }

    #iconbar ul{
        width: 100%;
    }

    #iconbar ul li a {
        font-size: 17px;
        height: 30px;
        width: 30px;
        line-height: 30px;

        -webkit-box-shadow: 0px 0px 2px 0px rgba(0,0,0,0.5);
        box-shadow: 0px 0px 2px 0px rgba(0,0,0,0.5);
    }

    .header_wrap .navbar-expand-lg .navbar-nav.attr-nav {
        padding: 6px 0px 0px 0px;
    }

    .navbar-toggler {
        margin: 15px 0px 0px 0px;
    }


    #headerslider .banner_content h2 {
        font-size: 22px;
    }

    #iconbar ul li.timetablechangeicon {
        margin-top: 0px;
    }

    #iconbar ul li.timetablechangeicon {
        line-height: 27px;
    }

    #iconbar ul li
    #iconbar ul li.timetablechangeicon a,
    #iconbar ul li.timetablechangeicon a.active,
    #iconbar ul li.errormessages a {
        line-height: 28px;
    }

    /* T A B */

    #importantinformation .tab-style3 .nav-tabs li {
        -webkit-flex: 1;
        flex: 1;
        margin-right: 0px;
    }

    #importantinformation .tab-style3 .nav-tabs li a {
        padding: 12px 20px;
    }

    #importantinformation .nav {
        flex-wrap: unset;
    }

    #hfswidget{
        margin-bottom: 50px;
    }

    /* F O O T E R */
    footer .text_align_right {
        text-align: left !important;
    }

    footer .mt-4, footer .my-4 {
        margin-top: 2.5rem !important;
    }

    footer .widget_title {
        margin-bottom: 25px;
    }

    /* F A H R P L A N Ä N D E R U N G E N */

    .timeChangeContent .catTitle {
        float: left;
        padding: 5px 8px 5px 8px;
        width: 100%;
    }

    /*  */

    .modulbtn a.btn{
        font-size: 14px;
        padding: 4px 8px 4px 8px !important;
    }

    .modulbtn .globalmodullink{
        display: none;
    }

    .modulbtn .btn i {
        margin-left: 0px !important;
        font-size: 22px;
    }

    .banner_content p, .banner_content2 p, .banner_content .btn{
        font-size: 16px;
        font-weight: bold;
    }
    #headerslider .banner_content {
        padding: 0px 25px 0px 25px;
    }

    /* H E A D E R S L I D E R */

    .textShadowBlack{
        text-shadow: 0px 0px 2px #000000;

        text-shadow:  1px  1px 1px black,
        1px -1px 1px black,
        -1px  1px 1px black,
        -1px -1px 1px black;
    }

    .textShadowWhite{
        text-shadow: 0px 0px 4px #FFFFFF;

        text-shadow:  1px  1px 1px white,
        1px -1px 1px white,
        -1px  1px 1px white,
        -1px -1px 1px white;
    }

    #iconbar ul li a img.partner_link{
        position: absolute;
        bottom: -8px;
        right: 1px;
    }

    #headerslider .col-sm-12{
        /*padding: 0px 0px 0px 0px;*/
    }


}