/*--------------------------------------------------------------
### Top Bar
--------------------------------------------------------------*/
#top-bar {
    float: left;
    width: 100%;
}

#top-bar.full-width {
	padding: 0;
}

#top-bar.content-width {
	padding: 0 5%;
}

#top-bar .inner {
    display: flex;
    align-items: center;
	justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    float: left;
    padding: .2em 1em;
}

#top-bar.content-width .inner {
	max-width: 1200px;
	margin: 0 auto;
	float: none;
	padding: .2em 0;
}

#top-bar.content-width .inner .top-bar-content:first-child {
	padding-left: 0;
}

#top-bar.content-width .inner .top-bar-content:last-child {
	padding-right: 0;
}

#top-bar .inner > * {
    margin: .2em 0;
}

#top-bar .inner p {
    margin: 0;
    font-size: 85%;
}

#top-bar .inner .html-marquee {
    max-width: 100vw; /* iOS braucht das */
    white-space: nowrap;
    overflow: hidden;
}

#top-bar .inner .html-marquee .marquee {
    display: inline-block;
    padding-left: 100%;
    animation: marquee 10s linear infinite;
}

#top-bar .inner .html-marquee .marquee:hover,
#top-bar .inner .html-marquee .marquee:focus {
    animation-play-state: paused 
}

@keyframes marquee {
    0%   { transform: translateX(0); }
    100% { transform: translateX(calc(-100% + -2em)); }
}

#top-bar .top-bar-content {
    float: left;
    padding: 0 1em;
}

#top-bar .inner .left .social-media-icons {
	justify-content: flex-start;
}

#top-bar .inner .center .social-media-icons {
	justify-content: center;
}

#top-bar .inner .right .social-media-icons {
	justify-content: flex-end;
}

#top-bar .inner .social-media-icon {
    display: inline-block;
    margin: 0 .3em;
    padding: 0 .5em;
}

#top-bar .inner .social-media-icon.order-1 {
	order: 1;
}

#top-bar .inner .social-media-icon.order-2 {
	order: 2;
}

#top-bar .inner .social-media-icon.order-3 {
	order: 3;
}

#top-bar .inner .social-media-icon.order-4 {
	order: 4;
}

#top-bar .inner .social-media-icon.order-5 {
	order: 5;
}

#top-bar .inner .social-media-icon.order-6 {
	order: 6;
}

#top-bar .inner .social-media-icon.order-7 {
	order: 7;
}

#top-bar .inner .social-media-icon.order-8 {
	order: 8;
}

#top-bar .menu-item {
    display: inline-block;
    padding: 0 .4em;
}

#top-bar button.toggle {
    background: none;
    border: 0;
    padding: 2px 0 2px 4px;
    vertical-align: text-top;
    margin-left: -3px;
}

#top-bar .menu-item .sub-menu {
    display: none;
}

#top-bar .menu > .menu-item > a,
#top-bar .inner .custom-html a {
    text-decoration: underline;
    text-underline-position: under;
}

#top-bar .menu-item .sub-menu li {
    width: 100%;
    display: block;
    margin: 0;
}

#top-bar .menu-item .sub-menu li:hover,
#top-bar .menu-item .sub-menu li:focus {
    background: rgba(0, 0, 0, 0.1);
}

#top-bar .menu-item .sub-menu li a {
    width: 100%;
    display: block;
    padding: 10px 15px;
}

#top-bar .menu-item-has-children .sub-menu-wrap .sub-menu {
    position: absolute;
    margin: 0;
    transform: translateX(-15px);
    padding-top: 8px;
    max-width: 200px;
    width: 100%;
    z-index: 9;
}

@media screen and (min-width: 769px) {
    #top-bar .menu-item-has-children:hover .sub-menu-wrap,
    #top-bar .menu-item-has-children:hover .sub-menu-wrap .sub-menu,
    #top-bar .menu-item-has-children:focus .sub-menu-wrap,
    #top-bar .menu-item-has-children:focus .sub-menu-wrap .sub-menu  {
        display: block;
    }

    #top-bar .menu-item-has-children:hover .sub-menu-wrap .sub-menu .sub-menu,
    #top-bar .menu-item-has-children:focus .sub-menu-wrap .sub-menu .sub-menu {
        display: none;
    }
}

@media screen and (max-width: 768px) {
	#top-bar .inner .top-bar-content.tab-4-4 {
		padding-left: 0;
		padding-right: 0;
		text-align: center;
	}
    #top-bar .menu-item-has-children .sub-menu-wrap {
        float: left;
        width: 100%;
    }

    #top-bar .menu-item-has-children .sub-menu-wrap .sub-menu {
        position: absolute;
        left: 0;
        margin: 0;
        transform: unset;
        padding-top: 8px;
        max-width: 100%;
        width: 100%;
        z-index: 9;
    }

    #top-bar button.toggle {
        font-size: 140%;
        padding: 5px 10px 5px 11px;
        line-height: 0;
        margin-top: -8px;
    }

    #top-bar .menu-item-has-children .sub-menu-wrap .sub-menu li {
        background: rgba(0, 0, 0, 0.1);
    }
    
}

@media screen and (max-width: 480px) {
    #top-bar .top-bar-content {
        text-align: center;
    }
	#top-bar.content-width .inner .top-bar-content {
		padding-left: 0;
		padding-right: 0;
	}

    #top-bar .col-2-4 {
        width: 100%;
        flex-basis: 100%;
    }

    #top-bar .inner .social-media-icon {
        margin: 0 .2em;
        padding: 0 .4em;
        font-size: 1.3em;
    }
}