
html {
    scroll-behavior: smooth;
}

a {
    color: #004071;
}

strong, b {
    font-weight: 600;
}

body {
    font-size: 16px;
    font-family: 'PT Serif', Georgia, serif;
    font-weight: 400;
    min-height: 100%;
    line-height: 135%;
    width: 100%;
}

h1, h2, h3, h4, h5, h6 {

    font-family: 'Roboto Condensed', sans-serif;
    color: #000;
}

h1 {
    margin-bottom: 10px;
    font-size: 32px;
    line-height: 135%;
    font-weight: 700;
}

h2 {
    font-weight: 700;
}

h2.month:first-child {
    margin-top: 0;
}
h2.month {
    color: rgb(0, 0, 0);
    float: left;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
    margin-left: -10px;
    width: 100%;
    margin-top: 2em;
}

div.month {
    float:left;
    width: 100%;
}

.icon {
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: -3px;
}

.icon.blue {
    filter: invert(15%) sepia(64%) saturate(3290%) hue-rotate(189deg) brightness(88%) contrast(106%);
}
.icon.grey {
    filter: invert(34%) sepia(0%) saturate(0%) hue-rotate(16deg) brightness(100%) contrast(94%);
}
.icon.orange {
    filter: invert(70%) sepia(70%) saturate(612%) hue-rotate(349deg) brightness(105%) contrast(102%);
}
.icon.white {
    filter: invert(99%) sepia(0%) saturate(0%) hue-rotate(191deg) brightness(106%) contrast(101%)
}

.mediadata .download-list .icon {
    width: 40px;
    height: 40px;
    vertical-align: -13px;
}
.grid.mediadata {
    justify-content: flex-start;
    margin-top: 30px;
}
.mediadata .teaser{
    padding-right: 30px;
}
.mediadata .image img {
    width: 100%;
    margin-top: 12px;
    box-shadow: 3px 3px 10px rgba(0,0,0,0.4);
}

section.divider-header {
    border-bottom: 3px solid #004071;
    margin-top: 10px;
    margin-bottom: 25px;
    padding-top: 10px;
}

section.divider-header h2 {
    font-size: 24px;
    color: #004071;
    font-weight: 700;
}

section.divider {
    border-top: 3px solid #004071;
    margin-top: 10px;
    margin-bottom: 25px;
    padding-top: 10px;
}

section.divider h2 {
    font-size: 20px;
    color: #004071;
    font-weight: 700;
}

section.main-header h1 {
    font-size: 38px;
}

section.main-header p {
    font-size: 16px;
    color: black;
    line-height: 125%;
    margin-bottom: 10px;
}

a.features-medica-2020 {
    position: absolute;
    left: 250px;
    margin-top: 20px;
}

a.features-medica-2020 img.featuring {
    width: 70px;
}

@media (max-width: 320px) {
    a.features-medica-2020 {
        left: 210px;
    }

    a.features-medica-2020 img.featuring {
        width: 60px;
    }
}

a.features-medica-2020 img.medica {
    width: 50px;
    margin-top: 5px;
    margin-left: 5px;
}

div.medica2020 {
    background-color: #d0dff6;
    padding: 2em 0;
    margin-bottom: 30px;
    border-top: 30px solid #006fb4;
    font-family: "Source Sans Pro";
    color: black;
}

div.medica2020 div.intro {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
}

div.medica2020 .teaser h3 {
    font-family: "Source Sans Pro";
    font-weight: 600;
}

div.medica2020 .teaser {
    background-color: transparent;
}

div.medica2020 .teaser h4.prehead {
    color: #006fb4;
    font-family: "Source Sans Pro";
    font-weight: 400;
}

div.medica2020 .teaser .footer {
    border-bottom: 1px solid #006fb4;
}

div.medica2020 .teaser .footer ul li a {
    color: #006fb4;
    font-family: "Source Sans Pro";
    font-size: 14px;
}

div.medica2020 .teaser p {
    color: black;
}

div.medica2020 h2 {
    font-family: "Source Sans Pro";
    font-size: 32px;
    margin-bottom: 20px;
    color: #006fb4;
    color: black;
    font-weight: 600;
    line-height: 120%;
}

div.medica2020 img.logo {
    width: 50%;
    display: inline-block;
    margin: 0 auto 20px auto;
}

div.medica2020 div.text {
    width: 100%;
}

h3 {
    font-weight: 700;
}

section.body .content h3 {
    margin-bottom: 10px;
}

/*
h4.prehead {
    text-transform: uppercase;
    color: rgba(0,0,0,0.8);
    font-weight: 200;
    letter-spacing: 1px;
    font-size: 12px;
}*/

h4.prehead {
    font-size: 14px;
    color: #7e7e7e;
    line-height: 100%;
    padding-top: 2px;
    padding-bottom: 3px;
    margin-bottom: 5px;
    font-family: "Open Sans", sans-serif;
    font-weight: 600;
}

h4.prehead.plus {
    padding-left: 42px;
    background-image: url("/styles/images/hie_plus_logo.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left center;
}

article.single {
    float: left;
    margin-bottom: 35px;
}

article.single h4.prehead.legacy {
    color: rgba(0,0,0,1);
    text-shadow: none;
}

span.flag {
    float: left;
    margin-right: 8px;
}
.box-top span.flag {
    margin-top: 5px;
}

span.flag img{
    width: 16px;
    display: block;
}

p {
    margin-bottom: 0.8em;
}

.body audio {
    width: 100%;
}

.body ul {
    list-style-type: disc;
    margin-left: 1.5em;
    margin-bottom: 0.8em;
    font-size: 20px;
}
.bg-yellow .body ul {
    margin-top: 5px;
    font-size: 16px;
}

.body ol {
    list-style-type: decimal;
    margin-left: 1.5em;
    margin-bottom: 0.8em;
}

.body ul li,
.body ol li {
    margin-bottom: 0.4em;
    line-height: 140%;
}


.body a {
    color: #2170ad;
    font-weight: 400;
}

div.content {
    position: relative;
    clear: both;
    margin: 0 auto;
    padding: 0 20px;
}

div.content.blue {
    padding-bottom: 0;
    background-color: #004071;
    margin-bottom: 25px;
}

/*******************************************/
/* Header-Bereich
/*******************************************/

a#logo {
     display: block;
     float: left;
     width: auto;
     height: 60px;
}

a#slide-logo {
     display: block;
     float: left;
     width: auto;
     height: 50px;
    margin-left: 10px;
 }

a#logo img {
    display: inline-block;
}

a#slide-logo img,
a#logo img {
    height: 100%;
    float: left;
}

@media (max-width: 320px) {
    a#logo img {
        height: 85%;
        margin-top: 7px;
    }
}

.slide-nav.fixed {
    transform: translate3d(0px, 0px, 0px);
}
.slide-nav {
    background-color: rgba(0, 64, 113, 0.7);
    left: 0;
    padding: 0;
    position: fixed;
    right: 0;
    top: 0;
    transform: translate3d(0px, -100px, 0px);
    transition-duration: 800ms;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    width: 100%;
    z-index: 999;
    min-height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.slide-nav ul {
   display: none;
}

nav.top {
    display: none;
}

header.pagehead.collapsed nav.top {
    display: none;
}

nav.main {
    display: none;
}

nav.main.hide {
    display: none;
}

input.search {
    display: none;
}

/*******************************************/
/* Header-Bereich
/*******************************************/

header.pagehead {
    position: fixed;
    width: 100%;
    border-bottom: 3px solid #004071;
    z-index: 200;
    top: 0;
    background-color: rgba(255, 255, 255, 0.9);
}

header.pagehead div.content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
}

header.pagehead div.content div.searchsocial {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

span#toggle-input {
    display: none;
}

form.search {
    display: none;
}

nav {
    clear: both;
}

main {
    display: block;
    float: left;
    margin-top: 85px;
    width: 100%;
}

/*******************************************/
/* Inhalts-Bilder
/*******************************************/

img.fr-dib {
    width: auto;
    max-width: 100%;
    display: block;
    float: none;
    margin: 20px 0 20px 0;
}

img.fr-dii {
    display: inline-block;
    width: auto;
    max-width: 100%;
}

/*******************************************/
/* Gallery / Fancybox */
/*******************************************/

a.fancybox {
    float: left;
    width: calc( 20% - 8px);
    margin-right: 10px;
}

a.fancybox:nth-of-type(5n+0) {
    margin-right: 0;
}
a.fancybox img {
    width: 100%;
}


a.fancybox.content-img {
    width: 100%;
}

/*******************************************/
/* Responsive-Navigation */
/*******************************************/


span#toggle-input {
    height: 80px;
    display: none;
}

span#toggle-input img {
    height: 100%;
    float: left;
}

a#slide-offcanvas-menu,
a#offcanvas-menu {
    float: right;
    height: 60px;
    display: inline-block;
}

a#slide-offcanvas-menu img,
a#offcanvas-menu img {
    float: left;
    height: 100%;
}

a#slide-offcanvas-menu.toggled {
    margin-right: 260px;
}

/*#slide-offcanvas-menu span.bar,
a#offcanvas-menu span.bar {
    background-color: #004071;
    display: block;
    float: left;
    height: 3px;
    margin-top: 7px;
    width: 60%;
    -webkit-transition: all 0.5s ease 0s;
    -moz-transition: all 0.5s ease 0s;
    -ms-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
    transition: all 0.5s ease 0s;
}

#slide-offcanvas-menu span.bar:first-child,
a#offcanvas-menu span.bar:first-child {
    margin-top: 0;
}

#slide-offcanvas-menu span.bar {
    background-color: white;
}

#slide-offcanvas-menu.toggled span:first-child,
#offcanvas-menu.toggled span:first-child {
    transform: translateY(12px) rotate(45deg);
}

#slide-offcanvas-menu.toggled span,
#offcanvas-menu.toggled span {
    transform-origin: center center 0;
}

#slide-offcanvas-menu.toggled span:nth-child(2),
#offcanvas-menu.toggled span:nth-child(2) {
    opacity: 0;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -ms-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}

#slide-offcanvas-menu.toggled span:last-child,
#offcanvas-menu.toggled span:last-child {
    transform: translateY(-8px) rotate(-45deg);
}*/

.sidr-open #sidr-body-overlay {
    display: block;
}
#sidr-body-overlay {
    background-color: rgba(0, 0, 0, 0.2);
    bottom: 0;
    display: none;
    height: 100%;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 999998;
}

.sidr {
    background: #004071 none repeat scroll 0 0;
    box-shadow: none;
    color: #FFFFFF;
    font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
}
.sidr ul {
     border-bottom: none;
     border-top: none;
 }

.sidr ul li {
     border-bottom: none;
     border-top: none;
    line-height: 36px;
 }

.sidr ul li a {
     border-bottom: none;
     border-top: none;
}
.sidr ul li:hover, .sidr ul li.active, .sidr ul li.sidr-class-active {
    line-height: 36px;
}
.sidr ul li:hover > a, .sidr ul li:hover > span, .sidr ul li.active > a, .sidr ul li.active > span, .sidr ul li.sidr-class-active > a, .sidr ul li.sidr-class-active > span {
    box-shadow: none;
    border-left: 4px solid #FFFFFF;
}
.sidr ul li a, .sidr ul li span {
    color: #FFFFFF;
    display: block;
    padding: 0 15px;
    text-decoration: none;
}
.sidr form {
    margin: 15px 13px;
}
.sidr input[type="text"], .sidr input[type="password"], .sidr input[type="date"], .sidr input[type="datetime"], .sidr input[type="email"], .sidr input[type="number"], .sidr input[type="search"], .sidr input[type="tel"], .sidr input[type="time"], .sidr input[type="url"], .sidr textarea, .sidr select {
    background: rgba(255, 255, 255, 1) none repeat scroll 0 0;
    border: 0 none;
    border-radius: 0px;
    box-sizing: border-box;
    clear: both;
    color: black;
    display: block;
    font-size: 15px;
    margin: 0 0 10px;
    padding: 7px 33px 7px 7px;
    width: 100%;
}
.sidr input[type="search"] {

}

.sidr .sidr-class-search-icon {
    background: rgba(0, 0, 0, 0) url("/styles/images/search.png") no-repeat scroll center center / cover ;
    height: 40px;
    position: absolute;
    right: 20px;
    top: 13px;
    width: 50px;
}

/*******************************************/
/* Footer */
/*******************************************/

footer {
    float: left;
    width: 100%;
    margin-top: 15px;
    background-color: #bebebe;
    font-family: 'Open Sans', sans-serif;
    font-weight: 200;
    color: #fff;
}

footer div.content {
    padding-top: 15px;
    padding-bottom: 50px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap;
}
div.seo-text {
    width: 100%;
    margin-bottom: 15px;
}

div.seo-text h1 {
    font-size: 23px;
    color: #004071;
}

footer div.content ul {
    margin-bottom: 0;
}

footer div.content ul.mobile {
    padding-top: 10px;
}
footer div.content ul.mobile:last-of-type {
    padding-right: 70px;
}
footer div.content li.mobile {
    display: none;
}
footer div.seo-text h3,
footer div.content ul h3 {
    color: #808080;
    font-weight: 400;
}

footer div.content a {
    color: #fff;
}

/*******************************************/
/* Grid */
/*******************************************/

.grid {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
}


.grid .teaser {
    width: 100%;
}

.grid .intro {
    margin-bottom: 40px;
    margin-left: -25px;
    margin-right: -25px;
    width: calc(100% + 50px);
    background-position: center center;
    background-size: cover;
    line-height: 100%;
}

hr {
    width: 100%;
    margin-bottom: 20px;
    border: none;
    border-top: 1px solid #cccccc;
}

.teaser {
    color: black;
    background-color: white;
    background-size: cover;
    background-position: top center;
    position: relative;
    margin-bottom: 40px;
    display: flex;
    flex-direction: column;
    width: 100%;
    justify-content: space-between;
}

.teaser.teaser-overlay-inv,
.teaser.teaser-overlay {
    min-height: 400px;
    overflow: hidden;
}

div.content.blue .teaser{
    margin-bottom: 0;
}

.teaser.small {
    min-height: 50px;
    /*margin-bottom: 0px;*/
}

.teaser.html-box{
    min-height: 50px;
}

.teaser.html-box iframe {
    height: 90vw !important;
    width: 100%;
}

.teaser.event-box

.rectangle_banner {
    min-height: 50px;
    background-color: orange;
}

.leaderboard_banner {
    display: flex;
    width: 100%;
    margin-bottom: 30px;
    min-height: 50px;
    background-color: orange;
}

.banner {
    text-align: center;
    display: block;
    margin: 0 auto;
    position: relative;
}

.banner-wrapper {
    display: inline-block;
    position: relative;
}

.banner img {
    width: auto;
}

.banner h5 {
    color: #bfbfbf;
    text-align: center;
    font-size: 12px;
    width: 100%;
    position: absolute;
    top: -20px;
}

.banner.banner-mobile {
    display: block;
}

.banner.banner-tablet {
    display: none;
}

.banner.banner-wide {
    display: none;
}

.grid .intro .banner img {
    width: 100% !important;
    height: auto !important;
}

.grid .intro .banner h5 {
    /*bottom: -20px;*/
    right: 5px;
    text-align: right;
}

div.teaser div.box-top {
    align-self: flex-start;
    width: 100%;
}

.teaser h4.prehead {
    margin-top: 5px;
}

.teaser h3 {
    margin-bottom: 0.3em;
    font-size: 20px;
    line-height: 130%;
}

.teaser .overlay h4.prehead {
    color: black;
}

.teaser .overlay .text h3 {
    margin-bottom: 0;
}

.teaser .overlay .text p {
    padding-top: 0;
    margin-bottom: 0;
    visibility:hidden;
    opacity:0;
    max-height: 0;
    overflow: hidden;
    color: black;
    -webkit-transition: visibility 0s linear 0.25s,opacity 0.25s linear, max-height 0.15s ease-out, padding-top 0.15s linear;
    -moz-transition: visibility 0s linear 0.25s,opacity 0.25s linear, max-height 0.15s ease-out, padding-top 0.15s linear;
    -ms-transition: visibility 0s linear 0.25s,opacity 0.25s linear, max-height 0.15s ease-out, padding-top 0.15s linear;
    -o-transition: visibility 0s linear 0.25s,opacity 0.25s linear, max-height 0.15s ease-out, padding-top 0.15s linear;
    transition:visibility 0s linear 0.25s,opacity 0.25s linear, max-height 0.15s ease-out, padding-top 0.15s linear;
}
.teaser:hover .overlay .text p {
    padding-top: 0.8em;
    margin-bottom: 0;
    visibility: visible;
    opacity:1;
    max-height: 500px;
    transition-delay:0s;
    -webkit-transition: max-height 0.25s ease-in;
    -moz-transition: max-height 0.25s ease-in;
    -ms-transition: max-height 0.25s ease-in;
    -o-transition: max-height 0.25s ease-in;
    transition: max-height 0.25s ease-in;
}

.teaser h3 a {
    color: black;
}

.teaser figure {
    width: 100%;
    margin: 0;
    background-size: cover;
    background-position: center center;
    position: relative;
    min-height: 45vw;
}

.teaser figure img {
    width: 100%;
}

.teaser .text {
    color: #595959;
    position: relative;
}

.blue .teaser .text {
    padding: 15px;
}

.blue .teaser .footer {
    padding-left: 15px;
    padding-right: 15px;
}

.teaser .text p {
    margin-bottom: 15px;
}

.teaser .text.overlay p {
    margin-bottom: 0;
}

.teaser .overlay {
    bottom: 0;
    position: absolute;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.7);
    box-shadow: 0 0 20px rgba(0,0,0,0.6);
    z-index: 5;
}

.teaser .overlay .text {
    padding: 10px 15px 15px;
}

.teaser.teaser-overlay-inv .overlay {
    bottom: 0;
    position: absolute;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    box-shadow: 0 0 20px rgba(0,0,0,0.7);
}

.teaser.teaser-overlay-inv .overlay .text {
    padding: 10px 15px 15px;
    color: rgba(255,255,255,1);
}

.teaser.teaser-overlay-inv .overlay h3 a {
    color: rgba(255,255,255,1);
}

.teaser.teaser-overlay-inv .overlay .prehead {
    color: rgba(255,255,255,1);
}

.teaser.teaser-overlay-inv .overlay p {
    color: rgba(255,255,255,1);
}

.teaser.teaser-overlay-inv .overlay .footer {
    color: rgba(255,255,255,1);
}

.teaser.teaser-overlay-inv .overlay .footer a {
    color: rgba(255,255,255,1);
}

.teaser.teaser-overlay-inv .overlay .footer a.share span.glyphicons {
    color: rgba(255,255,255,1);
}

.teaser.teaser-overlay-inv .overlay .footer a.share:hover span.glyphicons {
    color: #595959;
}

.teaser .box-top .text {
    padding-top: 7px;
}


.box {
    border-left: 1px solid #cccccc;
    padding-left: 20px;
}

.story-list-box h2,
.box h2 {
    font-family: 'Open Sans', sans-serif;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: 200;
    color: #7e7e7e;
    margin-bottom: 10px;
}

.teaser.newsletter-box {
    background-color: #ebebeb;
}

.teaser.newsletter-box .text {
    padding: 1.5em;
}

.teaser.newsletter-box label {
    color: #5b5b5b;
}

.newsletter-subscribe {
    display: flex;
    flex-direction: column;
    flex-basis: auto;
    flex-wrap: nowrap;
    width: calc( 100% + 30px );
    margin-left: -30px;
}
.newsletter-subscribe .column {
    width: calc(100% - 30px);
    margin-left: 30px;
}

.newsletter-subscribe .column:nth-of-type(2) {
    margin-top: 2em;
}

.newsletter-subscribe .column h3 {
    clear: both;
}

a.newsletter-archive {
    margin-bottom: 1.2em;
    float: right;
    color: #FFFFFF;
    font-weight: 700;
    font-family: 'Roboto Condensed', sans-serif;
    padding: 0.65em 1.3em;
    -moz-osx-font-smoothing: grayscale;
    background-color: #004071;
}

a.newsletter-preview {
    width: 100%;
    display: block;
}
a.newsletter-preview img{
    display: block;
    width: 100%;
}

.newsletter-archiv-list .list-v1 {
    display:flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-left: -30px;
}

.newsletter-archiv-list .list-v1 .item {
    width: calc(20% - 30px);
    margin-left: 30px;
    margin-bottom: 2em;
}

.newsletter-archiv-list .list-v1 .item a {
    width: 100%;
}
.newsletter-archiv-list .list-v1 .item h2 {
    color: #004071;
    margin-bottom: 5px;
}

.newsletter-archiv-list .list-v1 .item a img {
    width: 100%;
}

.newsletter-preview-img {
    display: block;
    border: 1px solid #bebebe;
}

.teaser span.logo {
    display: flex;
    position: absolute;
    width: 70px;
    height: 70px;
    background-color: white;
    border-radius: 35px;
    text-align: center;
    box-shadow: 1px 1px 8px rgba(0,0,0,0.4);
    top: 10px;
    right: 10px;
    justify-content: center;
    align-items: center;
    opacity: 0.8;
    transition: 0.5s;
    overflow: hidden;
    z-index: 5;
}

.teaser:hover span.logo {
    opacity: 1;
}

.teaser span.logo img {
    max-width: 50px;
    max-height: 50px;
    mix-blend-mode: multiply;
}

.teaser figure span.logo {
    top: 10px;
    bottom: auto;
}

span.playbutton {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 80px;
    height: 80px;
    text-align: center;
    border-radius: 50%;
    border: 2px solid white;
    background-color: rgba(255, 255, 255, 0.3);
    transition: 0.5s;
    padding-top: 15px;
    padding-left: 5px;
    margin: -40px 0 0 -40px;
}

span.playbutton:before {
    font-family: 'Glyphicons Regular';
    content: '\E174';
    color: white;
    font-size: 45px;
    line-height: 100%;
    overflow-x: hidden;
}
.thumb figure {
    position: relative;
}

.teaser:hover span.playbutton {
    background-color: rgba(255, 255, 255, 0.6);
    width: 100px;
    height: 100px;
    margin: -50px 0 0 -50px;
    padding-top: 25px;
}

.thumb:hover span.playbutton {
    background-color: rgba(255, 255, 255, 0.6);
    width: 100px;
    height: 100px;
    margin: -50px 0 0 -50px;
    padding-top: 25px;
}

#story-list {
    width:100%;
}

.story-list.single {
    width: 100%;
}

.story-list article .footer,
.teaser .footer {
    width: 100%;
    border-bottom: 1px solid #cccccc;
    padding-bottom: 5px;
    display: flex;
    justify-content: space-between;
    bottom: 0;
    font-size: 12px;
    color: #595959;
    font-family: 'Open Sans', sans-serif;
    align-items: flex-end;
}
.story-list.in-article {
    border: 1px solid #cccccc;
    padding: 1em 1.2em .4em 1.2em;
    margin-bottom: 20px;
}
h4.in-article {
    margin-bottom: 0.5em;
    margin-top: 0.5em;
}

.story-list.in-article article{
    margin-bottom: 0;
    border-bottom: 0;
}

.story-list.in-article article .footer {
    border-bottom: none;
}

.story-list article .footer a,
.teaser .footer a {
    color: black;
}
.story-list article .footer a:hover,
.teaser .footer a:hover {
    color: black;
}

.story-list article  .footer a.share:hover span.glyphicons,
.teaser .footer a.share:hover span.glyphicons {
    color: black;
}

.teaser .overlay .footer {
    border-bottom: none;
    padding: 0 15px 5px 15px;
}

.story-list article .footer a.share,
.teaser .footer a.share {
    font-family: 'Open Sans', sans-serif;
    padding: 3px 0px 3px 0;
    font-weight: 200;
}

.story-list article .footer a.share span.glyphicons,
.teaser .footer a.share span.glyphicons {
    font-size: 18px;
    color: #595959;
}

.story-list article .footer a.share span.glyphicons:before,
.teaser .footer a.share span.glyphicons:before {
    padding: 0 0 0 5px;
}

.story-list article .footer span,
.teaser .footer span {
    align-self: flex-end;
}

.story-list article .footer ul,
.teaser .footer ul {
    display: inline-block;
    width: 100%;
    text-align: right;
    margin-left: 0;
    height: 24px;
    overflow: hidden;
}

.story-list article .footer ul li,
.teaser .footer ul li {
    display: inline-block;
}

.story-list article .footer ul li a,
.teaser .footer ul li a {
    padding: 3px 6px;
    display: inline-block;
    font-weight: 200;
    color: #595959;
}

.teaser-overlay .footer ul li a {
    color: black;
}

.teaser .teaser-link-box {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
}
.teaser figure.background-image {
    overflow: hidden;
}
.teaser-26 figure.background-image,
.teaser-46 figure.background-image {
    height: 16vw;
    object-fit: contain;
}
.teaser figure.background-image img{
    display: block;
}
.story-list article .footer ul li a:hover,
.teaser .footer ul li a:hover {
    color: rgba(0,0,0,1)
}

.quote-wrapper {
    width:100%;
    margin: 0 0 0 30px;
    float: right;
    text-align: right;
}

blockquote {
    font-family: Georgia, serif;
    font-style: italic;
    font-size: 1.2em;
    line-height: 135%;
    background-color: #F2F2F2;
    border-left: 5px solid #bebebe;
    margin: 0.7em 0 0.7em;
    padding: 0.7em 15px 0.5em 15px;
    quotes: "\201C""\201D""\2018""\2019";
}
blockquote:before {
    color: #bebebe;
    content: open-quote;
    font-family: Arial,serif;
    font-size: 4em;
    line-height: 0.1em;
    margin-right: 0.05em;
    vertical-align: -0.4em;
}

blockquote p:after {
    font-family: Arial, serif;
    color: #bebebe;
    content: close-quote;
    font-size: 4em;
    line-height: 0.1em;
    margin-right: 0.15em;
    vertical-align: -0.45em;
}

blockquote p {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    display: inline;
   /* -ms-hyphens: none !important;
    -webkit-hyphens: none !important;
    hyphens: none !important;*/
    padding-left: 5px;
}

cite {
    display: block;
    margin-top: 5px;
}

.box-list h3 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    color: #a60000;
    font-size: 17px;
    padding: 10px 15px 10px 15px;
    margin-bottom: 0;
    border-bottom: 1px dotted #cccccc;
}

box.event-box .box-list h2 {
    margin-bottom: 0;

}

.box-list ul li {
    display: block;
    padding: 8px 15px 8px 0px;
    border-bottom: 1px dotted #cccccc;
    font-size: 14px;
}

.box-list ul li:last-of-type {
    border-bottom: none;
}

.box-list ul li em {
    display: block;
    font-style: normal;
    color: #808080;
    font-family: "Open Sans", sans-serif;
}

.box-list ul li a {
    font-size: 17px;
    margin-bottom: 0;
    display: block;
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 600;
    color: black;
}

.box-list a.more {
    font-family: 'Open Sans', sans-serif;
    font-size: 12px;
    display: block;
    padding: 5px 15px 5px 0;
    -moz-osx-font-smoothing: grayscale;
    /*
    background: rgba(0, 0, 0, 0) linear-gradient(to bottom, #fbfbfb 38%, #ededed 100%) repeat scroll 0 0;
    border-top: 1px solid #e8e8e8;
    */
    color: #636363;
    font-weight: 200;
}

.news-box {
    font-size: 14px;
    line-height: 145%;
}

.news-box h3 {
    font-size: 16px;
}
/*
.box-list a.more:hover {
    background: rgba(0, 0, 0, 0) linear-gradient(to bottom, #ededed 38%, #fbfbfb 100%) repeat scroll 0 0;
}
*/

.audio-wrapper {
    background-color: #004071;
    padding: 30px 0;
}

.audio-wrapper h1,
.audio-wrapper h2,
.audio-wrapper h4,
.audio-wrapper p.writer
{
    color: #ffffff;
    padding-right: 220px;
}

.body.audio-wrapper .content .audio-intro-img {
    float: right;
    width: 200px;
    border-radius: 100%;
    border: 2px solid #ffffff;
    margin-right: 0px;
}
.body.audio-wrapper .content .audio-small-img {
    position: absolute;
    right: 110px;
    top: 170px;
    width: 120px;
    border-radius: 100%;
    border: 2px solid #ffffff;
}
.body.audio-wrapper .content audio {
    margin-top: 20px;
    float: left;
    width: calc(100% - 250px);
}
.audio-wrapper-list {
    background-color: #004071;
    position: relative;
    width: 150px;
    height: 150px;
    border-radius: 5px;
}
.audio-wrapper-list .audio-intro-img {
    position: absolute;
    width: 95px;
    top: 10px;
    right: 10px;
    border-radius: 100%;
    border: 2px solid #ffffff;
    margin-right: 0px;
}
.audio-wrapper-list .audio-small-img {
    position: absolute;
    left: 10px;
    bottom: 10px;
    width: 65px;
    border-radius: 100%;
    border: 2px solid #ffffff;
}
.audio-wrapper-list img.icon {
    position: absolute;
    top: 10px;
    left: 7px;
    width: 25px;
    height: 25px;
}
.audio-wrapper-box {
    background-color: #004071;
    position: relative;
    width: 150px;
    height: 150px;
    border-radius: 5px;
}
.audio-wrapper-box .audio-intro-img {
    position: absolute;
    width: 145px;
    top: 10px;
    right: 10px;
    border-radius: 100%;
    border: 2px solid #ffffff;
    margin-right: 0px;
}
.audio-wrapper-box .audio-small-img {
    position: absolute;
    right: 135px;
    bottom: 10px;
    width: 100px;
    border-radius: 100%;
    border: 2px solid #ffffff;
}
.audio-wrapper-box img.icon {
    position: absolute;
    top: 15px;
    left: 10px;
    width: 40px;
    height: 40px;
}
@media (max-width: 380px) {
    .audio-wrapper-box .audio-intro-img {
        width: 120px;
    }
    .audio-wrapper-box .audio-small-img {
        right: 115px;
        width: 90px;
    }
}
/*******************************************/
/* Content IMG */
/*******************************************/

.body .content img:not(.icon),
.fullscreen img:not(.icon) {
    width: 100%;
}

/*******************************************/
/* Video */
/*******************************************/

div.responsive-video {
    position: relative;
    padding-bottom: 56.25%; /* Default for 1600x900 videos 16:9 ratio*/
    padding-top: 0px;
    height: 0;
    overflow: hidden;
    background-size: cover;

}

div.responsive-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*******************************************/
/* Map */
/*******************************************/

.map {
    width:100%;
    height:400px;
}

/*******************************************/
/* Artikel */
/*******************************************/

section {
    float: left;
    margin-bottom: 1em;
    width: 100%;
}

div.intro {
    float: left;
    width: 100%;
}

div.half {
    width: 100%;
    padding: 0;
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
    margin-bottom: 30px;
}

section.fullscreen .content {
    padding-top: 12px;
}

.caption,
.author,
.source,
section.body .content .source p{
    color: rgba(0,0,0,0.8);
    font-size: 14px;
    line-height: 130%;
    font-style: italic;
    font-family: "Open Sans",sans-serif;
    margin-bottom: 0.6em;
}

article.single p.description {
    font-weight: 400;
}

span.keyword-title {
    float: left;
    font-size: 20px;
}

ul.keyword-list {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

ul.keyword-list li {
    display: inline-block;
    margin-left: 0.6em;
}
ul.keyword-list li:before {
    content: '#';
    margin-right: 3px;
}

article {
    font-size: 16px;
    line-height: 140%;
}

article.single header {
    width: 100%;
    background-size: cover;
    background-position: center center;
    position: relative;
    float: left;
}

article.single header h1,
article.single header h2 {
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
}

article.single header h4 {
    font-size: 15px;
}

article.single header h4 a {
    color: black;
}
article.single header .dark h1,
article.single header .dark h2,
article.single header .dark h3,
article.single header .dark h4,
article.single header .dark h4 a,
article.single header .dark p {
    color: rgba(0,0,0,1);
    text-shadow: 1px 1px 10px rgba(0,0,0,0.6);
}

article.single header .light h1,
article.single header .light h2,
article.single header .light h3,
article.single header .light h4,
article.single header .light h4 a,
article.single header .light p {
    color: rgba(255,255,255,1);
    text-shadow: 1px 1px 10px rgba(0,0,0,0.6);
}

article header div.content {
    position: relative;
    padding-top: 50px;
    padding-bottom: 15px;
}

article header.flow div.content {
    padding-top: 0;
    padding-bottom: 0;
}

article header.intro div.content {
    position: relative;
    padding-top: 150px;
    padding-bottom: 25px;
    min-height: 450px;
    margin-bottom: 1.5em;
}

section.intro-source {

}

.article h1,
article h1 {
    font-weight: 700;
    font-size: 38px;
}

article h2 {
    font-weight: 200;
    font-size: 24px;
    font-family: 'Georgia', serif;
    font-style: italic;
    line-height: 125%;
    margin-bottom: 0.8em;
}

article h2.small {
    font-size: 22px;
}

article p.writer {
    font-weight: 600;
    line-height: 120%;
    margin-bottom: 0.8em;
}

section.body .content p {
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    -o-hyphens: auto;
    hyphens: auto;
    font-size: 20px;
    line-height: 140%;
}

section.body .content p.description {
    font-weight: bold;
}

section.body .content p.caption {
    font-size: 14px;
}

section.body .content h3 {
    font-size: 22px;
    line-height: 135%;
}

article p.intro {
    font-style: italic;
    line-height: 130%;
}

article img.main-image {
    width: 100%;
    margin: 1em 0;
}

.story-list article {
    width: 100%;
    margin-bottom: 1em;
    cursor: pointer;
    display: flex;
    align-items: stretch;
    border-bottom: 1px solid #cccccc;
    padding-bottom: 10px;
    color: #595959;
}

.story-list article .thumb {
    margin-right: 15px;
    width: 20%;
    float: left;
    position: relative;
}

.story-list article .thumb figure:not(.audio-wrapper-list) img {
    width: 100%;
}
.story-list article .thumb.product img {
    width: 100%;
}

.story-list article .text {
    float: right;
    margin-left: 0;
    width: calc( 80% - 15px );
    position: relative;
}

.story-list article .text h4 {
    margin-top: 0;
}

.story-list article .text h3 {
    line-height: 130%;
    margin-bottom: 0.3em;
    margin-top: 0.3em;
    font-size: 20px;
}

.story-list article .footer,
.story-list article .text p {
    display: none;
}

.story-list article .text h3 a {
    color: black;
}

header.intro h4.prehead a {
    color: white;
}

.toTop {
    border-radius: 100%;
    bottom: 60px;
    display: none;
    height: 32px;
    position: fixed;
    right: 45px;
    width: 32px;
    font-size: 32px;
    overflow: visible;
    z-index: 999;
}

.toTop div.background {
    background-color: #004071;
    border-radius: 100%;
    height: 30px;
    margin-left: 8px;
    margin-top: -25px;
    width: 30px;
}

.toTop img.icon {
    margin-top: 0;
    margin-left: 12.5px;
}

#popup-banner {
    position: fixed;
    width: 90%;
    max-width: 600px;
    z-index: 99999;
    top: 5%;
    left: 5%;
    font-family: 'Open Sans', sans-serif;
    -webkit-box-shadow: 0 0 20px rgba(0,0,0,0.6);
    box-shadow: 0 0 20px rgba(0,0,0,0.6);
}
#popup-banner.closed {
    display: none;
}
#popup-banner-close {
    display: block;
    position: absolute;
    right: 5px;
    top: 5px;
    color: #FFFFFF;
    font-size: 30px;
    cursor: pointer;
    z-index: 99;
}

.popup-banner-image {
    width: 100%;
    object-fit: cover;
    display: block;
}
.popup-banner-counter-wrap {
    position: absolute;
    bottom: 50px;
    left: 40px;
    width: calc(100% - 80px);
    max-width: 300px;
}
#popup-banner-counter,
.popup-banner-label {
    display: flex;
    flex-direction: row;
    flex-basis: auto;
    margin-bottom: 10px;
}
#popup-banner-counter span {
    width: 25%;
    display: block;
    color: #FFFFFF;
    text-align: center;
    font-size: 33px;
    font-weight: bold;
}
.popup-banner-label span {
    width: 25%;
    display: block;
    color: #FFFFFF;
    text-align: center;
}

.newsletter-button {
    display: none;
}
.newsletter-subscribe-box.open .newsletter-button {
    display: block;
    width: auto;
    font-family: "Roboto Condensed", sans-serif;
    font-size: 16px;
    padding-left: 25px;
    margin-left: 10px;
    margin-top: 7px;
    background: url("/styles/images/plane.jpg") no-repeat top left / contain;
}

.newsletter-button a {
    color: #ecba27;
    font-size: 14px;
    text-align: right;
    display: block;
    padding-top: 35px;
    line-height: 110%;
    font-family: "Open Sans", sans-serif;
}

.newsletter-subscribe-box.open .newsletter-button a{
    font-family: "Roboto Condensed", sans-serif;
    font-size: 20px;
    padding-top: 35px;
}

.newsletter-subscribe-box {
    position: fixed;
    right: 0;
    height: auto;
    bottom: 115px;
    max-width: 350px;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    -webkit-transition: all 0.5s ease 0s;
    -moz-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
    transition: all 0.5s ease 0s;
    background-color: #004071;
    z-index: 99;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    flex-basis: auto;
    -webkit-box-shadow: 3px 3px 10px rgba(0,0,0,0.6);
    box-shadow: 3px 3px 10px rgba(0,0,0,0.6);
}
.newsletter-subscribe-box a {
    display: block;
}

.newsletter-subscribe-box a.privacy {
    display: inline-block;
    color: #ededed;
    font-size: 13px;
    margin-top: 8px;
    margin-bottom: 0;
    float: right;
}
.newsletter-subscribe-box a i:before {
    color: #ffffff;
    font-size: 20px;
    margin-top: 2px;
}

.newsletter-subscribe-box-form {
    display: none;
    padding: 10px 20px 20px 20px;
    width: 100%;
}

.newsletter-subscribe-box a.newsletter-subscribe-box-close {
    display: none;
    margin-left: auto;
}
.newsletter-subscribe-box a.newsletter-subscribe-box-close .icon {
    margin: 5px;
}
.newsletter-subscribe-box.open a.newsletter-subscribe-box-close {
    display: block;
}
.newsletter-subscribe-box.open .newsletter-subscribe-box-form {
    display: block;
}

#newsletter-subscribe-response-message {
    color: #ecba27;
    margin-bottom: 10px;
    display: none;
}

#newsletter-subscribe-response-message.error {
    color: #FF0000;
}

a.button,
button.submit {
    -moz-osx-font-smoothing: grayscale;
    background: rgba(0, 0, 0, 0) linear-gradient(to bottom, #fbfbfb 38%, #ededed 100%) repeat scroll 0 0;
    border: 1px solid #e8e8e8;
    color: #000;
    cursor: pointer;
    padding: 0.65em;
    text-decoration: none;
    box-shadow: 0 0 1px transparent;
    display: inline-block;
    vertical-align: middle;
    position: relative;
    font-size: 14px;
    font-weight: 700;
    font-family: 'Roboto Condensed', sans-serif;
}

a.button:hover, a.button:focus, a.button:active,
button.submit:hover, button.submit:focus, button.submit:active {
    background: rgba(0, 0, 0, 0) linear-gradient(to bottom, #ededed 38%, #fbfbfb 100%) repeat scroll 0 0;

}

.glyphicons-inline:before {
    padding: 0 8px 0 0;
}

.button_alternate,
.information_request {
    -moz-osx-font-smoothing: grayscale;
    background-color: #004071;
    border: none;
    color: #FFFFFF;
    cursor: pointer;
    padding: 0.65em;
    text-decoration: none;
    box-shadow: 0 0 1px transparent;
    display: inline-block;
    position: relative;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 1em;
    font-family: 'Roboto Condensed', sans-serif;
    width: 100%;
    text-align: left;
}

.information_request span {
    font-size: 22px;
}

.body a.information_request {
    color: #FFFFFF;
    font-weight: 700;
    font-family: 'Roboto Condensed', sans-serif;
    margin-top: 1px;
}

/*
a.button::after,
button.submit::after {
    content: "\E196";
    font-family: 'Glyphicons', sans-serif;
    font-size: 17px;
    line-height: 36px;
    background-color: white;
    border-top: 1px solid #e8e8e8;
    border-right: 1px solid #e8e8e8;
    border-bottom: 1px solid #e8e8e8;
    position: absolute;
    right: -32px;
    top: -1.5px;
    width: 30px;
    display: block;
    text-align: center;
    font-weight: normal;
}

button.submit.send::after {
    content: "\E422";
}

button.submit.search::after {
    content: "\E028";
}

a.button.loadmore::after {
    content: "\E435";
}
a.button.home::after {
    content: "\E021";
}
*/

a.button.loadmore {
    margin-left: 0;
}



button.submit.float-right{
    float: right;
    right: 32px
}

/*************************************/
/* Form                            */
/*************************************/
form#loginform {
    padding-top: 20px;
}

form#contact {
    border: 1px solid #e8e8e8;
    background: rgba(0, 0, 0, 0) linear-gradient(to bottom, #fbfbfb 10%, #ededed 100%) repeat scroll 0 0;
    padding: 20px;
    width: 100%;
}

/* remove standard-styles */
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    /* appearance: none; */
    border-radius: 0;
}

/* hide browser-styling (arrow) in IE10 */
select::-ms-expand {
    display:none;
}

.lt-ie10 select {
    background-image: none;
}


label {
    width: 100%;
    float:left;
    margin-left: 0;
    color: #808080;
    font-size: 12px;
    font-family: "Open Sans",sans-serif;
    font-weight: 200;
    letter-spacing: 1px;
    text-transform: uppercase;
}

label#label_agb{
    margin-left: 0;
}

label#label_salutation{
    margin-top: 10px;
}

label.required {
    font-weight: 600;
}

div.half label#label_salutation {
    margin-top: 0;
}


div.half:first-of-type input,
div.half:first-of-type textarea {
    width: 100%;
    height: 30px;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 10px;
}


div.half:first-of-type label {
    margin-right: 0;
    margin-left: 0;
}


input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border:none;
    border-radius: 0;
    width: 100%;
    font-size: 14px;
}

input[type='text'],
input[type='password'],
input[type='tel'],
input[type='email'],
textarea,
select {
    font-size: 14px;
    width: 100%;
    height: 30px;
    margin-left: 0;
    padding: 3px;
    border: 1px solid #e8e8e8;
    margin-bottom: 10px;
    border-radius: 0;
    font-family:'Open Sans', sans-serif;
    font-weight: 600;
}

input.error,
select.error,
textarea.error {
    border: 1px solid #b40000;
}

textarea {
    height: 218px !important;
}

textarea#note {
    margin-bottom: 30px;
}

select {
    background: rgba(255, 255, 255, 1) url("/styles/images/select-arrow.png") no-repeat scroll right center / 23px auto;
    margin-bottom: 15px;
    font-size: 14px;
}

select:focus {
    background: rgba(255, 255, 255, 1) url("/styles/images/select-arrow-active.png") no-repeat scroll right center / 23px auto;
    margin-bottom: 15px;
}

input[type='radio'] {
    width:auto;
    float:left;
    background:transparent;
    border:none;
}


input[type='radio']:checked,
input[type='radio']:not(:checked) {
    background: transparent;
    position: relative;
    visibility: hidden;
    margin:0;
    padding:0;
}

input[type='radio'] + label {
    cursor: pointer;
}


input[type='radio']:checked + label::before,
input[type='radio']:not(:checked) + label::before {
    content:' ';
    display:inline-block;
    width: 17px;
    height:17px;
    position: relative;
    top:4px;
    border: 1px solid #BBAF99;
    background: white;
    margin-right: 1em;
    box-shadow: inset 0 1px 1px 0 rgba(0,0,0,.1);
}

input[type='radio']:checked + label::before,
input[type='radio']:not(:checked) + label::before {
    border-radius: 30px;
}


input[type='radio']:hover + label::before {
    background:#BBAF99;
    box-shadow: inset 0 0 0 2px white;
}


input[type='radio']:checked  + label::before {
    background:#b40000;
    box-shadow: inset 0 0 0 2px white;
}

.radiogroup_approve input[type=radio] {
    display: none;
}
.radiogroup_approve{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    flex-basis: auto;
    width: 50%;
    margin: 5px 0 15px 0;
}
.radiogroup_label {
    width: 50%;
    margin-right: 10px;
}
.radiogroup_label span {
    display: block;
    padding: 12px 8px;
    text-align: center;
    width: 100%;
}
.radiogroup_label input[type='radio']:checked + span.approved {
    background-color: green;
    color: white;
}
.radiogroup_label input[type='radio']:checked + span.not-approved {
    background-color: red;
    color: white;
}
.radiogroup_label input[type='radio']:not(:checked) + span {
    background-color: white;
    color: black;
}

#label_product_category_1,
#label_product_category_3,
#product_category_1,
#product_category_3 {
    display: none;
}
form.newproduct {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    flex-basis: auto;
    align-content: flex-start;
}
/*
form.newproduct input.upload {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    padding: 0;
    font-size: 20px;
    cursor: pointer;
    opacity: 0;
    filter: alpha(opacity=0);
    float: left;
}

form.newproduct .inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}
form.newproduct span.glyphicons {
    font-size: 13px;
}

form.newproduct span.glyphicons:before {
    padding: 3px 0 0 0;
}

form.newproduct .inputfile + label {
    background-color: rgba(87, 87, 87, 0.5);
    border-radius: 20px;
    color: white;
    display: inline-block;
    font-size: 15px;
    font-weight: 600;
    line-height: 135%;
    padding: 5px 16px;
    width: auto;
    clear-after: both;
    margin-right: auto;
    margin-bottom: 0;
}

form.newproduct .inputfile:focus + label,
form.newproduct .inputfile + label:hover {
    background-color: #004071;
}

form.newproduct .inputfile + label {
    cursor: pointer;
}

form.newproduct .inputfile:focus + label {
    outline: 1px dotted #000;
    outline: -webkit-focus-ring-color auto 5px;
}

form.newproduct .inputfile:focus + label,
form.newproduct .inputfile.has-focus + label {
    outline: 1px dotted #000;
    outline: -webkit-focus-ring-color auto 5px;
}
*/
form.newproduct div.specifications-wrap {
    display: flex;
    flex-direction: column;
    flex-basis: auto;
    flex-wrap: nowrap;
    width: 100%;
}
form.newproduct div.specifications-wrap .specification {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-basis: auto;
    flex-wrap: wrap;
}
form.newproduct div.specifications-wrap .specification select,
form.newproduct div.specifications-wrap .specification input {
    width: calc(50% - 10px);
}
form.newproduct div.specifications-wrap .specification select {
    margin-right: auto;
}
form.newproduct button.submit {
    margin: 0 auto 0 0;
}

form.newproduct button.submit[disabled="disabled"] {
    opacity: 0.5;
    color: #808080;
}

form#contact {
    float: left;
}

form div.checkbox {
    float: left;
    margin-bottom: 15px;
    width: 100%;
    margin-left: 2px;
    margin-top: 10px;
}
.checkboxgroup_faculty {
    width: 100%;
}
form .checkboxgroup_faculty div.checkbox {
    float: left;
    width: auto;
    margin-right: 10px;
}
form .checkboxgroup_faculty .validatormessage {
    float: left;
}
form .checkboxgroup_faculty label.checkbox i {
    width: 100%;
    padding: 5px 10px;
    font-style: normal;
    background-color: #ffffff;
    box-shadow: 1px 1px 3px rgba(0,0,0,0.3);
}

form .checkboxgroup_faculty [type=checkbox]:checked + i {
    background-color: #004071;
    color: #FFFFFF;
}

form div.small {
    width: 20%;
    padding-top: 5px;
}

form input.checkbox-type {
    width: 60%;
}

form input[type="checkbox"] {
    margin-left: 0;
}

label.checkbox input {
    display: none;
}

label.checkbox.error span {
    border: 1px solid #b40000;
}

label.checkbox.error i {
    color: #b40000;
}

label.checkbox span {
    background: #fff none repeat scroll 0 0;
    float: left;
    height: 17px;
    margin-right: 5px;
    margin-top: 4px;
    width: 17px;
    position: relative;
    border: 1px solid #e8e8e8;
}
label.checkbox i {
    float: left;
    width: 90%;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    cursor: pointer;
    text-transform: none;
}

[type=checkbox]:checked + span:before {
    color: #004071;
    content: "✔";
    font-size: 22px;
    left: 2px;
    position: absolute;
    top: -4px;
}


.validatormessage {
    color: #b40000;
    display: block;
    font-weight: 400;
    font-family: "Open Sans",sans-serif;
    margin-top: -10px;
    font-size: 12px;
    width: 100%;
}

.parallax-window {
    background: transparent;
}

.fullscreen-window {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}


.contact-list .content {
    margin: 0 auto;
    max-width: 820px;
    width: 100%;
}
.contact-list .grid .item {
    margin-left: 0;
    width: 100%;
}
.contact-list .item img {
    border-radius: 100%;
    float: left;
    height: 100px;
    margin: 0 20px 20px 0;
    width: 100px;
}

.contact-list .item .text {
    font-size: 14px;
    line-height: 130%;
}
/*******************************************/
/* events */
/*******************************************/

/*.event-list .item {
    display: flex;
    flex-direction: column;
    float: left;
    width: 100%;
    margin-bottom: 1em;
}*/

.event-list .item {
    display: block;
    float: left;
    width: 100%;
    margin-bottom: 1em;
    border-top: 1px solid #ccc;
    padding-top: 3px;
}

.image-box {
    float: right;
    margin-left: 30px;
}

.event-list .item .date {
 float:left;
    width:50%;
}

.event-list .item .location {
    float:left;
    width:50%;
    text-align: right;
    font-family: "Open Sans",sans-serif;
    color: rgba(0,0,0,0.5);
}

/*******************************************/
/* manufacturer */
/*******************************************/

/*.manufacturer-list .content{
    align-items: stretch;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
}*/

.manufacturer-list .content{
    margin: 0 -5px;
    width: 100%;
}

.manufacturer-list .item {
    border: 1px solid #FFFFFF;
    position: relative;
    width: 46%;
    overflow: hidden;
    float: left;
    margin-left: 5px;
    margin-right: 5px;
    margin-bottom: 2em;
    border-bottom: 1px solid #ccc;
}
.manufacturer-list .item:before{
    content: "";
    display: block;
    padding-top: 100%;
}

.manufacturer-list .item a {
    position:  absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    text-align: center;
}


.manufacturer-list .item:hover {
    border: 1px solid #004071;
}

/*

.manufacturer-list .item {
    display: flex;
    justify-content: space-between;
    flex-flow: column nowrap;
    align-items: flex-end;
    float: left;
    margin-bottom: 2em;
    margin-left: 10px;
    width: 15%;
    height: 0;
    padding-top: 15%;
    border: 1px solid grey;
}
*/

.manufacturer-list figure {
    width: 70%;
    margin: 5px auto 0;
    padding-top: 60%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}

.manufacturer-list .text {
    position: absolute;
    bottom: 5px;
    width: 100%;
    padding: 0 6px;
    text-align: center;
}

.manufacturer-list .text h2 {
    font-weight: normal;
    font-size: 14px;
    line-height: 120%;
}

div.manufacturer-box {
    float: left;
    width: 100%;
    cursor: pointer;
    border: 1px solid #e8e8e8;
    padding: 20px;
    background: rgba(0, 0, 0, 0) linear-gradient(to bottom, #fbfbfb 38%, #ededed 100%) repeat scroll 0 0;
}

div.manufacturer-box:hover, div.manufacturer-box:focus, div.manufacturer-box:active {
    background: rgba(0, 0, 0, 0) linear-gradient(to bottom, #ededed 38%, #fbfbfb 100%) repeat scroll 0 0;

}

div.manufacturer-box img {
    mix-blend-mode: multiply;
    max-width: 100px;
    max-height: 50px;
}

div.manufacturer-box p {
    margin-bottom: 0;
}

.manufacturer .image-box {
    float: none;
    margin-left: 0;
    margin-bottom: 20px;
}

.hide-slide-logo {
    display:none !important;
}

.addthis_inline_share_toolbox {
    margin-top: 1em;
    margin-bottom: 1em;
}

/*******************************************/
/* Product */
/*******************************************/

.product {
    color: black;
    background-color: white;
    background-size: cover;
    background-position: top center;
    position: relative;
    overflow: hidden;
    margin-bottom: 40px;
    display: flex;
    flex-direction: column;
    width: 48%;
    justify-content: space-between;
}

.product figure {
    width: 100%;
    height: 0;
    margin: 0;
    padding-top: 60%;
    background-size: cover;
    background-position: center center;
    position: relative;
}

.product img {
    width: 100%;
}

.product h3 {
    margin-bottom: 0.3em;
    font-size: 16px;
    line-height: 120%;
}

.product h3 a {
    color: black;
}

.product h4.prehead {
    line-height: 130%;
    margin: 0.5em 0;
    font-size: 12px;
}

.product div.text p {
    font-size: 14px;
}

section.product_category_header {
    font-size: 20px;
    padding-top: 10px;
}

section.product_category_header h2 {
    float: left;
}

section.product_category_header a {
    float: right;
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
}

a.publication-logo {
    width: 135px;
    float: left;
}

a.publication-logo img {
    width: 100%;
}

.product-specification-wrap {
    display: flex;
    flex-direction: row;
    flex-basis: auto;
    flex-wrap: nowrap;
    margin: 15px 0;
}
.product-specification-wrap .product-specification {
    display: flex;
    flex-direction: column;
    flex-basis: auto;
    flex-wrap: nowrap;
    width: calc(33.33% - 3px);
    background-color: #cacaca;
    padding: 8px 15px;
}
.product-specification-wrap .product-specification:nth-of-type(2){
    background-color: #dedede;
    margin: 0 auto;
}
.product-specification-wrap .product-specification span:first-of-type {
    font-family: "Open Sans", sans-serif;
    font-weight: 600;
}

.product_category_filter {
    background-color: #004071;
    margin-bottom: 0;
}

.product_category_filter ul {
    margin: 0 auto;
    text-align: center;
}

.product_category_filter ul li {
    display: inline-block;
    font-family: 'Open Sans', sans-serif;
}

.product_category_filter ul li a {
    display: inline-block;
   color: #FFFFFF;
    padding: 10px 7px 8px 7px;
}

.product a.manufacturer-link {
    color: rgba(0,0,0,.85);
}
.publication_header .manufacturer.button {
    float: right;
}
/*******************************************/
/* Publications
/*******************************************/

section.publication-list {
    padding: 0;
}

/*******************************************/
/* Issues
/*******************************************/

div.list {
    -moz-box-align: end;
    align-items: flex-end;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 46px;
    margin-top: 16px;
    margin-left: -5%;
}

div.item {
    margin-bottom: 2em;
    margin-left: 5%;
    margin-top: 2em;
    width: 45%;
}

div.item img{
    width: 100%;
    box-shadow: 3px 3px 10px rgba(0,0,0,0.4);
}

div.item h2,
div.online h2 {
    margin-bottom: 4px;
    font-size: 16px;
}

section.issue-list div.list {
    align-items: flex-start;
    margin-top: 0;
    margin-bottom: 0;
}

section.issue-list div.list img.icon_attachment {
    width: 25px;
    box-shadow: none;
    vertical-align: -8px;
}
section.issue-list div.image {
    float: left;
    margin-right: 5px;
}
section.issue-list div.image a{
    font-size: 14px;
    margin-right: 20px;
    font-family: 'Roboto Condensed', sans-serif;
}

div.item div.item {
    display: inline-block;
    margin: 10px 5px;
    width: 100%;
}


.searchlistitem {
    width: 65.5%;
    display: flex;
    cursor: pointer;
    margin-bottom: 2em;
    color: rgb(0, 0, 0);
}

.searchlistitem .thumb{
    float: left;
    height: 150px;
    margin-bottom: 0;
    margin-right: 15px;
    width: 20%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.searchlistitem .text {
    float: right;
    margin-left: 0;
    width: calc(80% - 15px);
}

.searchlistitem .subinfo {
    font-size: 12px;
}

.fancybox-title-float-wrap .child {
    width: 100%;
    white-space: normal;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
    text-align: left;
}

.fancybox-title-float-wrap {
    top: 102%;
    width: 100%;
}

.sticky-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 35px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);
    background-color: white;
    z-index: 100;
    border-top: 1px solid #004071;
}


.sticky-banner .banner {
    margin-top: 0;
    position: relative;
}

.sticky-banner .banner h5 {
    position: absolute;
    top: 3px;
    right: 5px;
    text-align: right;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, 1);
}

.flow-banner {
    width: 100%;
    float: left;
   display: block;
    margin-bottom: 30px;
}

.flow-banner .parallax-window{
    height: 560px;
}

.flow-banner h4 {
    color: white;
    text-align: right;
    margin: 0;
    padding-top: 10px;
    font-size: 16px;
    text-shadow: 1px 1px 2px black;
}

.flow-banner-inner {
    width: auto;
    max-width: 100%;
    max-height: 250px;
    margin: auto;
}

figure.content-image.half {
    width: 100%;
}

.fallback-headline {
    font-weight: 400;
    letter-spacing: 1px;
}

.fallback-text {
    color: rgba(0,0,0,0.7);
}

.star-wrapper {
    width: 100%;
    position: relative;
    height: 900px;
    overflow: hidden;
}

.star-wrapper-bg {
    position: absolute;
    top:0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.05;
}
.star-wrapper-text {
    position: fixed;
    bottom: 14%;
    left: calc(50% - 60px);
    width: 125px;
    height: 120px;
    text-align: center;
    margin: 0;
    color: #808080;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 24px;
    z-index: 999;
    /*text-shadow:
            1px 1px 0 rgba(255,255,255,0.8),
            -1px -1px rgba(255,255,255,0.8),
            1px -1px 0 rgba(255,255,255,0.8),
            -1px 1px 0 rgba(255,255,255,0.8),
            1px 1px 0 rgba(255,255,255,0.8);*/
}

#star-svg {
    position: fixed;
    bottom: 10%;
    left: 50%;
    width: 250px;
    height: 250px;
    margin: -125px 0 0 -125px;
}

a.close {
    position: absolute;
    right: 10px;
    top: 10px;
    width: 36px;
    height: 36px;
    opacity: 0.3;
    background-color: black;
    border: 2px solid white;
    border-radius: 18px;
    cursor: pointer;
}

a.close:hover {
    opacity: 1;
}
a.close:before, .close:after {
    position: absolute;
    top: 4px;
    left: 15px;
    content: ' ';
    height: 24px;
    width: 2px;
    background-color: white;
}
a.close:before {
    transform: rotate(45deg);
}
a.close:after {
    transform: rotate(-45deg);
}

.category-teaser {
    padding: 15px 0 35px 0;
    border-top: 3px solid #004071;
    text-align: center;
}

.category-teaser h2 {
    font-size: 28px;
    color: #004071;
    font-weight: 700;
    margin-bottom: 0.8em;
    margin-top: 0.6em;
}

.category-teaser p {
    margin-bottom: 1.8em;
}

.category-teaser .grid {
    text-align: left;
}
.category-intro {
    margin-bottom: 30px;
}
.category-intro img {
    display: block;
    width: 100%;
}
.keyword-teaser {
    padding: 15px 0 35px 0;
    border-top: 3px solid #004071;
    text-align: center;
}

.keyword-teaser h2 {
    font-size: 28px;
    color: #004071;
    font-weight: 700;
    margin-top: 0.6em;
    margin-bottom: 0.8em;
}

.keyword-teaser p {
    margin-bottom: 1.8em;
}

.keyword-teaser .grid {
    text-align: left;
}

.bg-lightgray {
    background-color: #f1f1f1;
    margin-bottom: 30px;
    border-bottom: 1px solid #cccccc;
}

article .bg-lightgray {
    width: 100%;
    float: left;
}

.bg-lightgray .divider {
    margin-top: 0;
}

.bg-lightgray .product {
    background-color: transparent;
}

.bg-lightgray .product img {
    border: 1px solid #cccccc;
}

.bg-yellow {
    background-color: #FFC40E;
    margin-bottom: 30px;
    border-bottom: 1px solid #FFC40E;
}
article .bg-yellow {
    width: 100%;
    float: left;
}

.bg-yellow .divider {
    margin-top: 0;
    border-top: 1px solid #FFC40E;
}
.bg-yellow .divider {
    background-color: #FFC40E;
}
.bg-yellow .divider p a {
    color: #454545;
    font-size: 14px;
}

.bg-yellow .divider label {
    color: #454545;
}

.bg-yellow .product {
    background-color: transparent;
}

.bg-yellow .product img {
    border: 1px solid #000000;
}

a.member {
    display: inline-block;
    margin-left: 0;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 32px;
    font-weight: 700;
}
a.member span.glyphicons {
    font-size: 24px;
}

.grid.account {
    width: calc(100% + 30px);
    margin-left: -30px;
}

.account .item {
    position: relative;
    width: calc(100% - 30px);
    background-color: #FFC40E;
    margin-left: 30px;
    height: 160px;
    margin-bottom: 30px;
    border-radius: 6px;
}


.account .item a.square {
    border: 3px solid  #FFC40E;
    position: absolute;
    text-align: center;
    padding: 30px 0;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #000000;
    border-radius: 6px;
}

.account .item a.square span{
    font-size: 50px;
    margin-bottom: 10px;
}

.account .item:hover a.square {
    border: 3px solid #000000;
}

.interstitial a.button {
    margin-bottom: 10px;
}

.interstitial a img {
    padding: 4px 8px;
}