/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Colors and Fonts
   ========================================================================== */

/*

Graublau dunkel rgb(35,55,85)
Graublau hell rgb(60,80,110)

Lichtblau dunkel rgb(238,238,238)
Lichtblau hell rgb(245,245,245)

Dachzeilen 12px 1.2rem bold
Dachzeilen 16px 1.6rem bold

Überschrift 1 34px 3.4rem bold
Überschrift 2 24px 2.4rem bold
Überschrift 3 20px 2rem regular
Überschrift 3 20px 2rem bold
Überschrift 4 14px 1.4rem bold

Unterzeilen 18px 1.8rem bold
Unterzeilen 18px 1.8rem regular

Unterzeilen 14px 1.4rem bold
Unterzeilen 14px 1.4rem bold

Lauftext 16px 1.6rem bold
Lauftext 16px 1.6rem regular

Lauftext 14px 1.4rem bold

Zitat 24px 2.4rem Georgia italic
Infotext 12px 1.2rem regular


div { font-family:"Benton Sans", "News Gothic Regular", 'Arial', sans-serif, sans-serif; font-weight:normal; font-style:normal; }
div { font-family:"Benton Sans", 'Arial', sans-serif, sans-serif; font-weight:600; font-style:normal; }


*/

/* Webfonts lokkale Assets */

@font-face {
    font-family: "Benton Sans";
    src: url("../fonts/BentonSans_Regular/175c3cc2-34ce-4a57-a6e8-ff10d7c12ec2-2.eot");
    src: url("../fonts/BentonSans_Regular/175c3cc2-34ce-4a57-a6e8-ff10d7c12ec2-2.eot?")
            format("embedded-opentype"),
        url("../fonts/BentonSans_Regular/175c3cc2-34ce-4a57-a6e8-ff10d7c12ec2-3.woff")
            format("woff"),
        url("../fonts/BentonSans_Regular/175c3cc2-34ce-4a57-a6e8-ff10d7c12ec2-1.ttf")
            format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "Benton Sans";
    src: url("../fonts/BentonSans_Bold/c01e43fa-d6ad-4bf1-b1c6-3e953313fece-2.eot");
    src: url("../fonts/BentonSans_Bold/c01e43fa-d6ad-4bf1-b1c6-3e953313fece-2.eot?")
            format("embedded-opentype"),
        url("../fonts/BentonSans_Bold/c01e43fa-d6ad-4bf1-b1c6-3e953313fece-3.woff")
            format("woff"),
        url("../fonts/BentonSans_Bold/c01e43fa-d6ad-4bf1-b1c6-3e953313fece-1.ttf")
            format("truetype");
    font-style: normal;
    font-weight: bold;
}

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

body * {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}

html,
button,
input,
select,
textarea {
    color: #222;
}

html {
    font-size: 62.5%;
    line-height: 1.4;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
img,
svg,
video {
    vertical-align: middle;
}

figure img {
    max-width: 100%;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

p {
    margin: 0;
}

body {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 16px;
    font-size: 1.6rem;
    background-color: rgb(255, 255, 255);
}

img {
    max-width: 100%;
}

figure a {
    display: block;
}

/*Benton Sans via webtype*/

.bentonsansbold {
    font-family: "Benton Sans";
    font-style: normal;
    font-weight: bold;
}

.bentonsansregular {
    font-family: "Benton Sans";
    font-style: normal;
    font-weight: normal;
}

.text {
    line-height: 1.5;
}

/* ==========================================================================
   Typography
   ========================================================================== */

a {
    text-decoration: none;
    color: rgb(60, 80, 110);
}

a:hover,
a:focus {
    text-decoration: underline;
}

:focus,
button:focus {
    outline: 1px dotted;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    line-height: 1.2;
    font-weight: normal;
    text-transform: uppercase;
}

.column-title {
    text-transform: uppercase;
    display: block;
}

.result-title .column-title {
    font-size: 0.75em;
}

/* .news .column-title {
  margin-top: 5px;
  font-weight: bold;
  font-size: 0.85em;
} */

.heading-1 {
    font-size: 34px; /* ie8 */
    font-size: 3.4rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    font-style: normal;
    color: rgb(60, 80, 110);
    margin: 0;
}

.heading-2 {
    font-size: 24px;
    font-size: 2.4rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    font-style: normal;
    color: rgb(60, 80, 110);
}
.heading-3 {
    font-size: 20px;
    font-size: 2rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    font-style: normal;
    color: rgb(60, 80, 110);
}
.heading-4 {
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    font-style: normal;
    color: rgb(60, 80, 110);
}

/* ==========================================================================
   Layout
   ========================================================================== */

.page {
    overflow: hidden;
}

.header {
}

.body {
}

.footer {
}

.wrapper {
    max-width: 1280px;
    max-width: 128rem;
    margin: 0 auto;
}

/* ==========================================================================
   Mobile Only
   ========================================================================== */

.mobile {
    display: none;
}

.button.mobile {
    display: none;
}
/* ==========================================================================
   Skip Navigation
   ========================================================================== */

.nav-skip {
    text-align: center;
}

.nav-skip a {
    display: block;
    padding: 10px 0;
    padding: 1rem 0;
    position: absolute;
    top: -999em;
    width: 480px;
    width: 48rem;
    left: 50%;
    margin-left: -240px;
    margin-left: -24rem;
    background-color: rgba(255, 255, 255, 0.9);
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3);
    color: rgb(60, 80, 110);
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.nav-skip a:focus {
    display: block;
    top: 10px;
    top: 1rem;
}

/* ==========================================================================
   Grid
   ========================================================================== */

.row {
}
.row:before,
.row:after {
    content: " ";
    display: table;
}

.row:after {
    clear: both;
}

.col {
    float: left;
}

.col-1-8 {
    /*width: 12rem;*/
    /*width: 16rem;*/
    width: 12.5%;
}

.col-2-8 {
    /*width: 24rem;*/
    /*width: 32rem;*/
    width: 25%;
}

.col-4-8 {
    /*width: 48rem;*/
    /*width: 64rem;*/
    width: 50%;
}

.col-6-8 {
    /*width: 72rem;*/
    /*width: 96rem;*/
    width: 75%;
}

.col-8-8 {
    width: 100%;
}

.main {
    margin-bottom: 20px;
}

/* ==========================================================================
   Branding
   ========================================================================== */

.branding {
    padding: 20px 0;
    padding: 2rem 0;
}

.claim {
    float: left;
    margin-top: 8px;
    margin-top: 0.8rem;
}

.claim a {
    font-size: 24px;
    font-size: 2.4rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    font-style: normal;
    color: rgb(60, 80, 110);
    margin: 0 0 0 20px;
    margin: 0 0 0 2rem;
    line-height: 1.1;
    text-transform: uppercase;
    display: block;
}

.claim a > span {
    font-family: "Benton Sans", "News Gothic Regular", "Arial", sans-serif,
        sans-serif;
    font-weight: normal;
    font-style: normal;
}

.claim a:hover {
    text-decoration: none;
}

.logo {
    margin-top: 9px;
    margin-top: 0.9rem;
    margin-right: 20px;
    margin-right: 2rem;
    float: right;
}

.logo a {
    width: auto;
    height: auto;
    display: block;
}

/* ==========================================================================
   Nav
   ========================================================================== */

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

.nav li {
    list-style-type: none;
}

.nav .has-menu {
    position: relative;
}

.nav .menu {
    display: none;
    position: absolute;
    min-width: 240px;
    min-width: 24rem;
    background-color: rgb(238, 238, 238);
}

.no-js .nav .has-menu:hover .menu {
    display: block;
}

/* ==========================================================================
   Nav Meta
   ========================================================================== */

.nav-meta {
    background-color: rgb(35, 55, 85);
    padding: 10px 0;
    padding: 1rem 0;
    font-size: 12px;
    font-size: 1.2rem;
}

.nav-meta,
.nav-meta a,
.nav-meta strong {
    color: rgb(255, 255, 255);
    text-transform: uppercase;
}

.nav-meta a,
.nav-meta strong {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    font-style: normal;
}

.nav-meta svg {
    width: auto;
    height: 16px;
    margin-right: 2px;
    fill: rgb(255, 255, 255);
}

@media (max-width: 959px) {
    .nav-meta svg {
        fill: rgb(35, 55, 85);
    }
}

.nav-meta .wrapper > ul > li {
    float: left;
}

.nav-meta .wrapper > ul.pull-left {
    margin-left: 20px;
    margin-left: 2rem;
}

.nav-meta .wrapper > ul > li + li {
    margin-left: 10px;
    margin-left: 1em;
}

.nav-meta .halflings {
    margin-left: 5px;
    margin-left: 0.5rem;
}

.nav-meta .halflings,
.nav-meta .halflings:before {
    color: rgb(255, 255, 255);
}

/* ==========================================================================
   Nav Main
   ========================================================================== */

.nav-iconbar {
    background: transparent url(../img/bg_branding.png) no-repeat center top;
}

.nav-iconbar .wrapper > ul {
    position: relative;
    display: flex;
    width: 100%;
}

.nav-iconbar .wrapper > ul.clearfix:before,
.nav-iconbar .wrapper > ul.clearfix:after {
    content: none;
}

.nav-iconbar .wrapper > ul > li {
    border-right: 1px solid rgb(238, 238, 238);
}

.nav-iconbar .wrapper > ul > li > a,
.nav-iconbar .wrapper > ul > li > strong {
    color: rgb(60, 80, 110);
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    font-size: 12px;
    font-size: 1.2rem;
    text-transform: none;
    display: block;
    padding: 42px 12px 10px 12px;
    text-align: center;
    height: 96px;
    position: relative;
}

.nav-iconbar .wrapper > ul > li.is-open > a,
.nav-iconbar .wrapper > ul > li.active > a,
.nav-iconbar .wrapper > ul > li.active > strong {
    background-color: rgb(60, 80, 110);
    color: rgb(255, 255, 255);
}

.nav-iconbar .wrapper > ul > li > a span,
.nav-iconbar .wrapper > ul > li > strong span {
    margin-top: 5px;
    margin-top: 0.5rem;
    display: block;
}

.nav-iconbar .wrapper > ul > li:last-child {
    margin-left: auto;
    border-left: 1px solid rgb(238, 238, 238);
    border-right: 0;
}
.nav-iconbar .search-menu {
    position: static;
}

.nav-iconbar .icon {
    width: 32px;
    height: 32px;
    display: block;
    position: absolute;
    top: 10px;
    left: 50%;
    margin-left: -12px;
    background: transparent url(../img/icons_bar.svg) no-repeat;
    background-size: 320px 64px;
}

.nav-iconbar .icon-menu {
    background-position: 0 0;
}

.nav-iconbar .icon-topic {
    background-position: -32px 0;
}

.nav-iconbar .icon-chat {
    background-position: -64px 0;
}

.nav-iconbar .icon-search {
    background-position: -96px 0;
}

.nav-iconbar li.active .icon-menu {
    background-position: 0 -32px;
}

.nav-iconbar li.active .icon-topic {
    background-position: -32px -32px;
}

.nav-iconbar li.active .icon-chat {
    background-position: -64px -32px;
}

.nav-iconbar li.is-open .icon-search {
    background-position: -96px -32px;
}

/* SVG Fallback */

.no-svg .nav-iconbar .icon-menu {
    background: transparent url(../img/icons_bar.png) no-repeat;
    background-position: 0 0;
}

.no-svg .nav-iconbar .icon-topic {
    background: transparent url(../img/icons_bar.png) no-repeat;
    background-position: -32px 0;
}

.no-svg .nav-iconbar .icon-chat {
    background: transparent url(../img/icons_bar.png) no-repeat;
    background-position: -64px 0;
}

.no-svg .nav-iconbar .icon-search {
    background: transparent url(../img/icons_bar.png) no-repeat;
    background-position: -96px 0;
}

.no-svg .nav-iconbar li.active .icon-menu {
    background: transparent url(../img/icons_bar.png) no-repeat;
    background-position: 0 -32px;
}

.no-svg .nav-iconbar li.active .icon-topic {
    background: transparent url(../img/icons_bar.png) no-repeat;
    background-position: -32px -32px;
}

.no-svg .nav-iconbar li.active .icon-chat {
    background: transparent url(../img/icons_bar.png) no-repeat;
    background-position: -64px -32px;
}

.no-svg .nav-iconbar li.is-open .icon-search {
    background: transparent url(../img/icons_bar.png) no-repeat;
    background-position: -96px -32px;
}

.nav .search-menu .menu {
    position: absolute;
    left: 0;
    right: 0;
    top: 135px;
    height: 260px;
    background-color: rgba(0, 0, 0, 0.85);
}

.lt-ie9 .nav .search-menu .menu {
    top: 135px;
    background: transparent url(../img/bg_black_85.png);
}

.nav .search-menu.is-open .menu {
    left: 0;
    right: 0;
    display: block;
    z-index: 5000;
}

.search-menu .positioning {
    padding-top: 60px;
    text-align: center;
    position: relative;
}

.search-menu .close {
    top: 20px;
    top: 2rem;
    right: 20px;
    right: 2rem;
    position: absolute;
    color: rgb(255, 255, 255);
    z-index: 5001;
}

.search-menu .positioning > div {
    text-align: right;
}

.globalsearch {
    display: inline-flex;
    position: relative;
    text-align: center;
    margin-top: 20px;
    margin-top: 2rem;
    background-color: rgb(255, 255, 255);
    border: 5px solid rgb(238, 238, 238);
    padding: 20px;
    padding: 2rem;
}

.globalsearch.mobile {
    display: none;
}

.globalsearch input[type="text"],
.globalsearch input[type="search"] {
    padding: 10px;
    padding: 1rem;
    font-size: 24px;
    font-size: 2.4rem;
    width: 320px;
    width: 32rem;
    border: 0;
    margin-right: 10px;
    margin-right: 1rem;
}

/* ==========================================================================
   Nav Secondary
   ========================================================================== */

.nav-main,
.nav-main a,
.nav-main strong {
    color: rgb(255, 255, 255);
    text-transform: none;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.nav-main .col ul ul a,
.nav-main .col ul ul strong {
    font-weight: normal;
}

.nav-main .wrapper {
    background: rgb(60, 80, 110);
}

.nav-main .wrapper > ul > li {
    float: left;
}

.nav-main .wrapper > ul {
    position: relative;
}

.nav-main .wrapper > ul > li > a,
.nav-main .wrapper > ul > li > strong {
    color: rgb(255, 255, 255);
    padding: 10px 20px;
    padding: 1rem 2rem;
    display: block;
    text-transform: uppercase;
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.nav-main .wrapper > ul > li > a:hover,
.nav-main .wrapper > ul > li > strong:hover {
    text-decoration: none;
}

.nav-main .wrapper > ul > li.active > a,
.nav-main .wrapper > ul > li.active > strong {
    background-color: rgb(35, 55, 85);
}

.nav-main .has-menu {
    position: static;
}

.nav-main .menu {
    position: absolute;
    top: -999em;
    left: 0;
    width: 100%;
    /*    height: 560px;
    height: 56rem;*/
    background-color: rgb(35, 55, 85);
    z-index: 3000;
    opacity: 0;
    display: block;
    visibility: hidden;
}

.no-touch .nav-main .has-menu:hover {
    background-color: rgb(35, 55, 85);
}

.nav-main .has-menu.is-open {
    background-color: rgb(35, 55, 85);
}

.nav-main .has-menu.is-open .menu,
.no-js .nav-main .has-menu:hover .menu {
    top: 100%;
    opacity: 1;
    visibility: visible;
}

.nav-main .section-heading {
    background-color: rgb(35, 55, 85);
    color: rgb(255, 255, 255);
    position: relative;
}

.nav-main .menu .row {
    background-color: rgb(60, 80, 110);
    padding-top: 20px;
    padding-top: 2rem;
    padding-bottom: 20px;
    padding-bottom: 2rem;
}

.close {
    background: transparent;
    border: 0;
    padding: 0;
    text-transform: uppercase;
    font-size: 12px;
    font-size: 1.2rem;
}

.close .icon-close {
    font-size: 20px;
    font-size: 2rem;
    vertical-align: -2px;
    vertical-align: -0.2rem;
    margin-left: 5px;
    margin-left: 0.5rem;
}

.nav-main .menu .close {
    display: none;
    color: rgb(255, 255, 255);
    position: absolute;
    right: 20px;
    right: 2rem;
    bottom: 20px;
    bottom: 2rem;
}

.touch .nav-main .menu .close {
    display: block;
}

.nav-main .menu ul li {
    float: none;
    list-style-type: none;
    position: relative;
    padding-left: 20px;
    padding-left: 2rem;
    margin-bottom: 5px;
    margin-bottom: 0.5rem;
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.nav-main .menu .col > ul {
    display: inline-block;
    margin-top: 10px;
    margin-top: 1rem;
    margin-bottom: 10px;
    margin-bottom: 1rem;
    width: 28%;
    margin-right: 4%;
    vertical-align: top;
}

.nav-main .menu .col > ul > li {
    padding-left: 0;
    font-size: 16px;
    font-size: 1.6rem;
}
.nav-main .menu .col > ul > li > ul {
    margin-top: 10px;
    margin-top: 1rem;
    display: none; /*not displayed in menu layer*/
}
.nav-main .menu .col > ul > li a {
    color: rgb(238, 238, 238);
}
.nav-main .menu ul li:before {
    content: "";
    width: 16px;
    height: 16px;
    background-image: url(../img/icons.svg);
    background-repeat: no-repeat;
    background-position: -32px 0;
    background-size: 320px 32px;
    position: absolute;
    left: 0;
    top: 0px;
}

.no-svg .nav-main .menu ul li:before {
    background-image: url(../img/icons.png);
}

.nav-main .menu .col > ul > li:before {
    content: none;
}

.nav-main .menu .col > ul + ul {
    /*margin-top: 3rem;*/
}

.nav-main .menu .col-6-8 {
    padding-left: 84px;
    padding-left: 8.4rem;
}

.nav-main .menu .recommended {
    display: none; /* temp disabled */
}

.nav-main .menu .col-6-8 .col {
    width: 33%;
}

.nav-main .menu .col-6-8 .col > ul {
    padding-right: 20px;
    padding-right: 2rem;
}

.nav-main .menu .col-2-8 {
    padding-left: 20px;
    padding-left: 2rem;
}

.nav-main .menu .col-2-8 h2 {
    line-height: 1;
    font-size: 18px;
    font-size: 1.8rem;
    margin-top: 20px;
    margin-top: 2rem;
    margin-bottom: 20px;
    margin-bottom: 2rem;
}

.nav-main .menu .col-2-8 h2 span {
    display: block;
    font-family: "Benton Sans", "News Gothic Regular", "Arial", sans-serif,
        sans-serif;
    font-weight: bold;
}

.nav-main .menu .col-2-8 ul li {
    font-size: 14px;
    font-size: 1.4rem;
}

.nav-main .menu .col-2-8 ul li a {
    font-weight: normal;
}

#nav-lock {
    display: none;
}

/* ==========================================================================
   Nav Secondary
   ========================================================================== */

.nav-secondary {
    padding: 20px;
    padding: 2rem;
    font-size: 14px;
    font-size: 1.4rem;
}

.nav-secondary,
.nav-secondary a,
.nav-secondary strong {
    color: rgb(35, 55, 85);
    /*text-transform: uppercase;*/
    font-family: "Benton Sans", "News Gothic Regular", "Arial", sans-serif,
        sans-serif;
    font-weight: normal;
}

.nav-secondary a {
    display: inline-block;
}

.nav-secondary ul {
    padding-left: 0;
}

.nav-secondary ul ul {
    margin-left: 0;
    margin-top: 10px;
    margin-top: 1rem;
    margin-bottom: 10px;
    margin-bottom: 1rem;
}

.nav-secondary li {
    position: relative;
    line-height: 1.2;
    padding-left: 20px;
    padding-left: 2rem;
}

.nav-secondary li + li {
    margin-top: 10px;
    margin-top: 1rem;
}

.nav-secondary li:before {
    content: "";
    width: 16px;
    height: 16px;
    background-image: url(../img/icons.svg);
    background-repeat: no-repeat;
    background-position: -32px 0;
    background-size: 320px 32px;
    position: absolute;
    left: 0;
    top: 0;
}

.no-svg .nav-secondary li:before {
    background-image: url(../img/icons.png);
}

.nav-secondary .active > a,
.nav-secondary .active > strong {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 800;
}

/* ==========================================================================
   Nav Breadcrumbs
   ========================================================================== */

.nav-breadcrumbs .wrapper {
    background-color: rgb(35, 55, 85);
    padding: 10px 0;
    padding: 1rem 0;
}

.nav-breadcrumbs li {
    display: inline-block;
}

.nav-breadcrumbs ul {
    margin: 0 20px;
    margin: 0 2rem;
}

.nav-breadcrumbs li,
.nav-breadcrumbs a {
    color: rgb(255, 255, 255);
    text-transform: none;
    font-size: 14px;
    font-size: 1.4rem;
}

.nav-breadcrumbs a,
.nav-breadcrumbs strong {
    margin-right: 5px;
    margin-right: 0.5rem;
}

.nav-breadcrumbs li + li a,
.nav-breadcrumbs li + li strong {
    margin-left: 5px;
    margin-left: 0.5rem;
}

.nav-breadcrumbs li:after {
    content: "/";
}

.nav-breadcrumbs li:last-child:after {
    content: none;
}

.nav-breadcrumbs li:last-child:not(:only-child) {
    display: block;
}

.nav-breadcrumbs li:last-child:not(:only-child) a,
.nav-breadcrumbs li:last-child:not(:only-child) strong {
    margin-left: 0;
    font-size: 20px;
    font-size: 2rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

/* ==========================================================================
   Footer
   ========================================================================== */

.footer,
.footer a {
    color: rgb(255, 255, 255);
    text-transform: uppercase;
}

.footer .halflings,
.footer .halflings:before {
    color: rgb(255, 255, 255);
    margin-left: 4px;
    margin-left: 0.4rem;
}

.sitetools {
    background: rgb(35, 55, 85) url(../img/bg_branding.png) no-repeat center top;
}

.sitetools .section-heading {
    float: left;
    position: relative;
    color: rgb(255, 255, 255);
}

.sitetools .section-heading {
    background: transparent;
}

.sitetools .section-heading h2 span {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    display: block;
}

.quicklinks {
    background-color: rgb(60, 80, 110);
    padding: 20px 0;
    padding: 2rem 0;
}

.copyright {
    background: rgb(35, 55, 85) url(../img/bg_branding.png) no-repeat center top;
}

.nav-footer > ul {
    float: left;
    width: 25%;
    padding: 0 20px;
    padding: 0 2rem;
}

.sitetools-links {
    float: right;
    margin-top: 44px;
    margin-top: 4.4rem;
}

.sitetools-links ul {
    margin: 0;
    padding: 0;
}

.sitetools-links ul li {
    float: left;
    list-style-type: none;
}

.sitetools-links ul li a {
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    display: block;
    position: relative;
    padding-right: 20px;
}

.sitetools-links ul li + li {
    margin-left: 20px;
    margin-left: 2rem;
}
.sitetools-links .icon {
    width: 16px;
    height: 16px;
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    background: transparent url(../img/icons.svg) no-repeat;
    background-size: 320px 32px;
}
.sitetools-links .icon-send {
    background-position: 0 -16px;
}
.sitetools-links .icon-upload {
    background-position: -16px -16px;
}
.no-svg .sitetools-links .icon-send {
    background: transparent url(../img/icons.png) no-repeat;
    background-position: 0 -16px;
}
.no-svg .sitetools-links .icon-upload {
    background: transparent url(../img/icons.png) no-repeat;
    background-position: -16px -16px;
}
.nav-footer {
    margin-left: 60px;
    margin-left: 6rem;
    margin-top: 30px;
    margin-top: 3rem;
    margin-bottom: 20px;
    margin-bottom: 2rem;
}
.nav-footer ul li {
    float: none;
    list-style-type: none;
    position: relative;
    padding-left: 20px;
    padding-left: 2rem;
    margin-bottom: 5px;
    margin-bottom: 0.5rem;
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}
.nav-footer > ul > li {
    padding-left: 0;
    font-size: 16px;
    font-size: 1.6rem;
}
.nav-footer > ul > li > ul {
    margin-top: 10px;
    margin-top: 1rem;
}
.nav-footer > ul > li a {
    color: rgb(238, 238, 238);
}
.nav-footer ul li:before {
    content: "";
    width: 16px;
    height: 16px;
    background-image: url(../img/icons.svg);
    background-repeat: no-repeat;
    background-position: -32px -16px;
    background-size: 320px 32px;
    position: absolute;
    left: 0;
    top: 0;
}
.no-svg .nav-footer ul li:before {
    background-image: url(../img/icons.png);
}
.nav-footer > ul > li:before {
    content: none;
}

.nav-footer ul ul li a {
    text-transform: none;
}

.copyright {
    padding: 20px 0;
    padding: 2rem 0;
    font-size: 12px;
    font-size: 1.2rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.copyright p {
    margin: 0;
    float: left;
    margin-left: 20px;
    margin-left: 2rem;
}

.copyright ul {
    float: right;
    margin: 0;
    padding: 0;
    margin-right: 20px;
    margin-right: 2rem;
}

.copyright ul li {
    float: left;
    list-style-type: none;
}

.copyright ul li + li {
    margin-left: 10px;
    margin-left: 1rem;
}

.social-media {
    text-align: right;
}

.social-media a {
    display: inline-block;
    width: 32px;
    height: 32px;
    overflow: hidden;
    opacity: 0.5;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    transition: all 0.2s ease 0s;
}

.social-media a + a {
    margin-left: 5px;
}

.social-media a:hover,
.social-media a:focus {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 1;
}

/* ==========================================================================
   Section Heading
   ========================================================================== */

.section-heading {
    padding: 20px 20px;
    padding: 2rem 2rem;
    background-color: rgb(238, 238, 238);
    font-family: "Benton Sans", "News Gothic Regular", "Arial", sans-serif,
        sans-serif;
    font-weight: normal;
    color: rgb(60, 80, 110);
    position: relative;
}

.section-heading h2 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.25;
    padding-left: 58px;
    padding-left: 5.8rem;
}

.section-heading h2 span {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    display: block;
}

.section-heading .icon {
    background: rgb(60, 80, 110) url(../img/icons_sections.png) no-repeat 0 -40px;
    width: 40px;
    height: 40px;
    display: block;
    position: absolute;
    left: 20px;
    left: 2rem;
    top: 21px;
    top: 2.1rem;
}

/* ==========================================================================
   Teaser
   ========================================================================== */

.teaser:before,
.teaser:after {
    content: " ";
    display: table;
}

.teaser:after {
    clear: both;
}

.teaser figure {
    position: relative;
}

.teaser figure:after {
    content: "";
    display: block;
    position: absolute;
    right: auto;
    top: auto;
    bottom: 0;
    left: 20px;
    left: 2rem;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 10px 10px 10px; /* arrow up */
    border-color: transparent transparent #ffffff transparent;
}

.teaser figure .tag {
    display: inline-block;
    position: absolute;
    left: 2px;
    left: 2rem;
    top: 18px;
    top: 1.8rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    font-size: 12px;
    font-size: 1.2rem;
    background-color: rgb(60, 80, 110);
    color: rgb(255, 255, 255);
    padding: 2px 5px 1px 5px;
    padding: 0.2rem 0.5rem 0.1rem 0.5rem;
    text-transform: uppercase;
}

.teaser .group {
    padding: 20px;
    padding: 2rem;
}

.teaser .group,
.teaser .group a {
    color: rgb(60, 80, 110);
}

.teaser .group a {
    display: inline-block;
}

.teaser .heading {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 10px;
    margin-bottom: 1rem;
}

.teaser .heading h2,
.teaser .heading h3 {
    font-weight: bold;
}

.teaser .heading p {
    margin: 0;
    font-size: 14px;
    font-size: 1.4rem;
    text-transform: uppercase;
    margin-bottom: 5px;
    margin-bottom: 0.5rem;
}

.teaser .text {
    font-size: 16px;
    font-size: 1.6rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.aside .teaser .text {
    font-weight: normal;
}

.teaser .text p {
    margin: 0;
}

.col-4-8 .teaser figure,
.col-8-8 .teaser figure {
    float: left;
    width: 50%;
}

.col-4-8 .teaser .group,
.col-8-8 .teaser .group {
    width: 50%;
    float: right;
}

.col-4-8 .teaser figure .tag,
.col-8-8 .teaser figure .tag {
    left: auto;
    right: 18px;
    right: 1.8rem;
}

.col-4-8 .teaser-reversed figure .tag,
.col-8-8 .teaser-reversed figure .tag {
    left: 18px;
    left: 1.8rem;
    right: auto;
}

.col-4-8 .teaser-reversed figure,
.col-8-8 .teaser-reversed figure {
    float: right;
}

.col-4-8 .teaser-reversed .group,
.col-8-8 .teaser-reversed .group {
    float: left;
}

.col-4-8 .teaser figure:after,
.col-8-8 .teaser figure:after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    left: auto;
    top: 20px;
    top: 2rem;
    bottom: auto;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 10px 10px 10px 0px; /* arrow right */
    border-color: transparent rgb(255, 255, 255) transparent transparent;
}

.col-4-8 .teaser-reversed figure:after,
.col-8-8 .teaser-reversed figure:after {
    content: "";
    right: auto;
    left: 0;
    top: 20px;
    top: 2rem;
    bottom: auto;
    border-width: 10px 0 10px 10px; /* arrow left */
    border-color: transparent transparent transparent rgb(255, 255, 255);
}

/* ==========================================================================
   Linklist
   ========================================================================== */

.linklist,
.linklist a {
    color: rgb(60, 80, 110);
    text-transform: none;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.linklist a {
    display: inline-block;
}

.main > .module .heading,
.main > .module .linklist {
    padding: 0 20px;
    padding: 0 2rem;
}

.linklist.lowercase,
.linklist.lowercase a {
    text-transform: none;
}

.linklist ul {
    margin: 20px 0;
    margin: 2rem 0;
    padding: 0;
    list-style-type: none;
}

.linklist li {
    position: relative;
    padding-left: 20px;
    padding-left: 2rem;
    line-height: 1.4;
}

.linklist li + li {
    margin-top: 8px;
    margin-top: 0.8rem;
}

.linklist ul li:before {
    content: "";
    width: 16px;
    height: 16px;
    background-image: url(../img/icons.svg);
    background-repeat: no-repeat;
    background-position: -32px 0;
    background-size: 320px 32px;
    position: absolute;
    left: 0;
    top: 0;
}

.no-svg .linklist ul li:before {
    background-image: url(../img/icons.png);
}

.download ul li:before {
    content: "";
    width: 16px;
    height: 16px;
    background-image: url(../img/icons.svg);
    background-repeat: no-repeat;
    background-position: -48px 0;
    background-size: 320px 32px;
    position: absolute;
    left: 0;
    top: 1px;
}

.no-svg .download ul li:before {
    background-image: url(../img/icons.png);
}

.linklist.dialog ul li {
    padding-left: 32px;
    position: relative;
}

.linklist.dialog ul li p {
    color: rgb(34, 34, 34);
    font-weight: 400;
}

.linklist.dialog ul li:before {
    content: "";
    position: absolute;
    width: 24px;
    height: 18px;
    display: block;
    background: transparent url(../img/list_dialog.svg) no-repeat 0 0;
    background-size: 24px 18px;
    left: -1px;
    top: 3px;
}

.no-svg .linklist.dialog ul li:before {
    background: transparent url(../img/list_dialog.png) no-repeat 0 0;
}

.linklist.dialog a {
    display: block;
    max-height: 3em;
}

.main > .module .linklist.listing {
    padding: 0;
}

.linklist.listing figure {
    float: left;
    width: 26%;
}

.linklist.listing figure + a {
    display: block;
    margin-left: 29%;
}

.linklist.listing ul li {
    padding: 20px;
    background-color: rgb(238, 238, 238);
}

.linklist.listing ul li:after {
    content: "";
    display: table;
    clear: both;
}

.linklist.listing ul li + li {
    margin-top: 20px;
}

.linklist.listing ul li p.teaser-text {
    font-weight: 400;
}

.linklist.listing ul li p.column-title {
    text-transform: uppercase;
    margin-bottom: 5px;
    font-size: 14px;
}

.linklist.listing ul li h3 {
    font-weight: 600;
    margin-bottom: 5px;
}

.linklist.listing ul li:before {
    content: none;
}

.download a {
    line-height: 1.1;
}

.download a span {
    display: block;
}

.download a span {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: normal;
}

/* ==========================================================================
   Content
   ========================================================================== */

.article .intro {
    background-color: rgb(35, 55, 85);
    color: rgb(255, 255, 255);
    padding: 20px;
    padding: 2rem;
}

.article .intro.inverse {
    background-color: rgb(238, 238, 238);
    color: rgb(60, 80, 110);
}

.article .heading p {
    text-transform: uppercase;
    margin-bottom: 10px;
    margin-bottom: 1rem;
}

.article .heading h3 {
    font-weight: bold;
    text-transform: none;
    margin-bottom: 5px;
}

.article .heading h1 {
    font-weight: bold;
    text-transform: none;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

.article .title {
    text-transform: none;
    margin-bottom: 10px;
}

.article .heading + .text,
.article .intro + .group,
.article .group + .group,
.article .module + .group,
.article .group + .module,
.article .module + .module,
.article + .module,
.article + .row {
    margin-top: 20px;
    margin-top: 2rem;
}

.article .group,
.article .module {
    padding: 0 20px;
    padding: 0 2rem;
}

.margin-top {
    padding-top: 20px;
    padding-top: 2rem;
}

.article .module.teaser-sub {
    padding: 0;
}

.article .accordion,
.article .table {
    padding: 0;
}

.article .group .figure {
    margin-right: 20px;
    margin-right: 2rem;
    margin-bottom: 10px;
    margin-bottom: 1rem;
}

.article .group .figure.pull-right {
    margin-right: 0;
    margin-left: 20px;
}

.article .group .figure.full {
    width: 100%;
    margin-right: 0px;
    margin-left: 0px;
}

.article figcaption {
    padding: 10px 0 0 0;
    padding: 1rem 0 0 0;
    font-size: 14px;
    font-size: 1.4rem;
}

.aside .module .heading,
.aside .module .text,
.aside .linklist {
    padding: 0 20px;
    padding: 0 2rem;
}

.aside .module .section-heading + .text,
.aside .module .group {
    margin-top: 20px;
    margin-top: 2rem;
}

.aside .module .group {
    margin-bottom: 20px;
    margin-bottom: 2rem;
}

.text h2,
.text h3 {
    text-transform: none;
}

.text p + h2,
.text p + h3,
.text p + h4,
.text p + h5,
.text p + h6 {
    margin-top: 30px;
    margin-top: 3rem;
}

.text p + p {
    margin-top: 10px;
    margin-top: 1rem;
}

figcaption small {
    font-size: 10px;
    font-size: 1rem;
}

.listing figcaption {
    padding-top: 10px;
    line-height: 1.2;
    font-size: 10px;
    font-size: 1rem;
    color: #222222;
    font-weight: 400;
}

.figure-intro {
    position: relative;
}

.teaser figcaption,
.figure-intro figcaption {
    position: absolute;
    text-align: right;
    bottom: 10px;
    right: 20px;
}
.stage-item figcaption small,
.teaser figcaption small,
.figure-intro figcaption small {
    color: rgb(255, 255, 255);
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.25);
}

.stage-item figcaption small.darkblue,
.teaser figcaption small.darkblue,
.figure-intro figcaption small.darkblue {
    color: rgb(35, 55, 85);
}
.stage-item figcaption small.orange,
.teaser figcaption small.orange,
.figure-intro figcaption small.orange {
    color: rgb(244, 128, 23);
}

.teaser figcaption {
    bottom: 7px;
    right: auto;
    left: 10px;
}

.teaser figcaption small {
    font-size: 10px;
}

figure a {
    position: relative;
}

figure a.fancybox:after {
    content: "+";
    text-align: center;
    width: 20px;
    height: 20px;
    position: absolute;
    bottom: 10px;
    right: 10px;
    background-color: white;
    color: rgb(60, 80, 110);
}

figure a.fancybox:hover:after {
    background-color: rgb(60, 80, 110);
    color: white;
}

/* ==========================================================================
   Modules
   ========================================================================== */

.article .heading h2,
.module .heading h2 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.2;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    color: rgb(60, 80, 110);
    text-transform: none;
}

.table table,
.wysiwyg table {
    width: 100%;
    border-bottom: 5px solid rgb(35, 55, 85);
    margin-bottom: 20px;
    margin-bottom: 2rem;
}

table caption {
    text-align: left;
}

.table table tr th,
.table table tr td,
.wysiwyg table tr th,
.wysiwyg table tr td {
    padding: 1px 5px 8px 5px;
    padding: 1rem 0.5rem 0.8rem 0.5rem;
    text-align: left;
}

.table table tr th:first-child,
.table table tr td:first-child,
.wysiwyg table tr th:first-child,
.wysiwyg table tr td:first-child {
    padding: 10px 5px 8px 20px;
    padding: 1rem 0.5rem 0.8rem 2rem;
}

.table table tr th:last-child,
.table table tr td:last-child,
.wysiwyg table tr th:last-child,
.wysiwyg table tr td:last-child {
    padding: 10px 20px 8px 5px;
    padding: 1rem 2rem 0.8rem 0.5rem;
}

.table table th,
.wysiwyg table th {
    background: rgb(35, 55, 85);
    color: rgb(255, 255, 255);
    text-transform: none;
    font-size: 14px;
    font-size: 1.4rem;
}

.table table tbody tr td,
.wysiwyg table tbody tr td {
    background: rgb(255, 255, 255);
}

.table table tbody tr:nth-child(2n) td,
.wysiwyg table tbody tr:nth-child(2n) td {
    background: rgb(238, 238, 238);
}

.contact {
    background-color: rgb(60, 80, 110);
    color: rgb(255, 255, 255);
}

.contact.inverse {
    background-color: rgb(255, 255, 255);
    color: rgb(60, 80, 110);
}

.contact a {
    color: rgb(255, 255, 255);
}

.contact.inverse a {
    color: rgb(60, 80, 110);
}

.contact.inverse .button {
    color: rgb(255, 255, 255);
}

.contact .figure {
    float: left;
    width: 50%;
    padding-top: 20px;
    padding-left: 20px;
    padding-right: 20px;
}

.contact .contact-mail + .contact-name {
    margin-top: 25px;
}

.contact .contact-phone,
.contact .contact-fax {
    padding-left: 22px;
    position: relative;
}

.contact.inverse .contact-phone:before {
    content: url(../img/icon-tel-svg.svg);
    position: absolute;
    width: 10px;
    height: 15px;
    left: 2px;
    top: 3px;
}

.contact.inverse .contact-fax:before {
    content: url(../img/icon-fax-svg.svg);
    position: absolute;
    width: 13px;
    height: 14px;
    left: 0;
    top: 3px;
}

.no-svg .contact.inverse .contact-phone:before {
    content: url(../img/icon-tel.png);
    position: absolute;
    left: 2px;
    top: 3px;
}

.no-svg .contact.inverse .contact-fax:before {
    content: url(../img/icon-fax.png);
    position: absolute;
    left: 0;
    top: 3px;
}

.contact .contact-phone:before {
    content: url(../img/icon-tel-white-svg.svg);
    position: absolute;
    width: 10px;
    height: 15px;
    left: 2px;
    top: 3px;
}

.contact .contact-fax:before {
    content: url(../img/icon-fax-white-svg.svg);
    position: absolute;
    width: 13px;
    height: 14px;
    left: 0;
    top: 3px;
}

.no-svg .contact .contact-phone:before {
    content: url(../img/icon-tel-white.png);
    position: absolute;
    left: 2px;
    top: 3px;
}

.no-svg .contact .contact-fax:before {
    content: url(../img/icon-fax-white.png);
    position: absolute;
    left: 0;
    top: 3px;
}

.aside .contact .group {
    margin-top: 0;
    margin-bottom: 0;
    padding: 20px 0;
}

.aside .contact .figure + .group .text {
    padding-left: 0;
}

.contact .figure + .group {
    padding-top: 20px;
    padding-bottom: 20px;
    margin-left: 50%;
}

.contact .text p {
    margin: 0;
    line-height: 1.2;
}

.contact .text p + p {
    margin-top: 5px;
}

.contact .text p span {
    display: block;
}

.contact small {
    text-transform: uppercase;
}

.contact .contact-mail .button {
    margin-top: 5px;
}

.contact-name {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.contact .text .contact-name + .contact-name,
.contact .text .contact-phone + .contact-name,
.contact .text .contact-fax + .contact-name {
    margin-top: 1.5em;
}

.contact-function {
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
}

/* ==========================================================================
   Accordion
   ========================================================================== */

.accordion-item + .accordion-item {
    margin-top: 10px;
}

.accordion-inner {
    padding: 20px 0;
    background-color: rgb(228, 234, 237);
}

.accordion-heading > a {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    display: block;
    padding: 10px 20px;
    background-color: rgb(60, 80, 110);
    color: rgb(255, 255, 255);
}

.accordion-heading > a:hover {
    background-color: rgb(35, 55, 85);
}

.accordion-heading {
    position: relative;
}

.accordion-heading > a {
    padding-left: 40px;
}

.accordion-heading .icon {
    display: inline-block;
    position: absolute;
    color: rgb(255, 255, 255);
    text-decoration: none;
    left: 20px;
    top: 13px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 7px 0 7px 10px;
    border-color: transparent transparent transparent #ffffff;
}

.accordion-item.open > .accordion-heading .icon {
    top: 15px;
    border-style: solid;
    border-width: 10px 7px 0 7px;
    border-color: #ffffff transparent transparent transparent;
}

.accordion .heading h3 {
    text-transform: none;
    font-weight: 600;
}

/* ==========================================================================
   Komnet Dialog
   ========================================================================== */

.row + .komnet-dialog,
.article + .komnet-dialog {
    margin-top: 20px;
    margin-top: 2rem;
}

.komnet-dialog {
    margin-top: 40px;
    padding-top: 15px;
    margin-bottom: 40px;
    border: 2px solid rgb(228, 234, 237);
}

.komnet-dialog .heading h2 {
    padding-left: 160px;
    min-height: 48px;
    margin-top: 20px;
    background: transparent url(../img/komnet_logo.png) no-repeat left center;
    background-size: 140px auto;
}

@media only screen and (max-width: 580px) {
    .komnet-dialog .heading h2 {
        padding-left: 0px;
        padding-top: 80px;
        background: transparent url(../img/komnet_logo.png) no-repeat left top;
        background-size: 140px auto;
    }
}

/* ==========================================================================
   Aside Globals
   ========================================================================== */

.aside p,
.aside li {
    font-size: 14px;
    font-size: 1.4rem;
}

.aside .teaser .group {
    padding: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */

.form {
}

.form form > div + div {
    margin-top: 10px;
    margin-top: 1rem;
}

.form label {
    font-size: 12px;
    font-size: 1.2rem;
    text-transform: uppercase;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.form .pi-form-input label {
    text-transform: none;
}

.pi-form-control__has-error .pi-form-label label {
    background-color: rgb(200, 0, 0);
    color: rgb(255, 255, 255) !important;
    padding: 4px;
    display: inline-block;
}

.pi-form-control__has-error .pi-message-text {
    background-color: rgb(200, 0, 0);
    color: rgb(255, 255, 255) !important;
    padding: 4px;
    font-size: 16px;
}
.pi-form-control__has-error .pi-message-text p,
.pi-form-control__has-error .pi-message-text ul,
.pi-form-control__has-error .pi-message-text li {
    color: rgb(255, 255, 255) !important;
    font-size: 16px !important;
    font-weight: bold !important;
}

.pi-message-text ul {
    margin-bottom: 0;
    padding-left: 16px;
}

.form .checkbox {
    display: block;
    text-transform: none;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
}

.form .checkbox a {
    color: rgb(255, 255, 255);
    text-decoration: underline;
}

.form .checkbox input[type="checkbox"] {
    margin-right: 5px;
    margin-right: 0.5rem;
}

.form-small {
    background-color: rgb(60, 80, 110);
}

.aside .form-small .group {
    padding: 20px;
    padding: 2rem;
    margin: 0;
}

.form-small label {
    color: rgb(255, 255, 255);
}

.form-small a {
    color: rgb(255, 255, 255);
    font-weight: bold;
}

.form-small .form input[type="text"],
.form-small .form input[type="email"],
.form-small .form input[type="password"] {
    width: 100%;
}

.form-horizontal {
    margin: 2em 0 3em 0;
}

.form-horizontal .heading {
    margin-bottom: 20px;
}

.form-horizontal > form {
    padding: 0 20px;
}

.form-horizontal p {
    font-size: 12px;
    font-size: 1.2rem;
}

.form-horizontal .form-row + .form-row {
    margin-top: 1em;
}

.form-horizontal label {
    display: block;
    color: rgb(60, 80, 110);
}

.form-horizontal .pi-checkbox-control-vertical input[type="checkbox"] + label {
    display: inline;
    margin-left: 5px;
}

.pi-form input[type="checkbox"] + label a {
    text-decoration: underline;
}

.form-horizontal input[type="text"],
.form-horizontal input[type="email"],
.form-horizontal input[type="password"],
.form-horizontal textarea {
    width: 100%;
    border: 1px solid #aaa;
    padding: 4px 6px;
    box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.1);
}

.form-horizontal input[type="text"]:focus,
.form-horizontal input[type="email"]:focus,
.form-horizontal input[type="password"]:focus,
.form-horizontal textarea:focus {
    border: 1px solid rgb(60, 80, 110);
    outline: 1px solid rgb(60, 80, 110);
}

.form-horizontal .has-error label,
.form-horizontal .has-error p {
    color: rgb(240, 0, 0);
}

.form-horizontal .has-error p {
    margin-top: 2px;
}

.form-horizontal .has-error input[type="text"],
.form-horizontal .has-error input[type="email"],
.form-horizontal .has-error input[type="password"],
.form-horizontal .has-error textarea {
    border-color: rgb(240, 0, 0);
    outline-color: rgb(240, 0, 0);
}

.checkbox label {
    display: inline;
    text-transform: none;
    font-weight: 400;
}

.button,
.pi-form-button button {
    background-color: rgb(244, 128, 23);
    color: rgb(255, 255, 255);
    text-transform: uppercase;
    border: 0;
    padding: 8px 16px;
    padding: 0.8rem 1.6rem;
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    display: inline-block;
}

.button:focus,
.button:hover,
.pi-form-button button:focus,
.pi-form-button button:hover {
    background-color: rgb(205, 103, 10);
}

/* ==========================================================================
   Flexslider
   ========================================================================== */

/*
 * jQuery FlexSlider v2.2.0
 * http://www.woothemes.com/flexslider/
 *
 * Copyright 2012 WooThemes
 * Free to use under the GPLv2 license.
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Contributing author: Tyler Smith (@mbmufffin)
 */

/* Browser Resets
*********************************/
.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus {
    outline: 1px dotted;
}
.slides,
.flex-control-nav,
.flex-direction-nav {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* Icon Fonts
*********************************/
/* Font-face Icons */
@font-face {
    font-family: "flexslider-icon";
    src: url("../fonts/flexslider-icon.eot");
    src: url("../fonts/flexslider-icon.eot?#iefix") format("embedded-opentype"),
        url("../fonts/flexslider-icon.woff") format("woff"),
        url("../fonts/flexslider-icon.ttf") format("truetype"),
        url("../fonts/flexslider-icon.svg#flexslider-icon") format("svg");
    font-weight: normal;
    font-style: normal;
}

/* FlexSlider Necessary Styles
*********************************/
.flexslider {
    margin: 0;
    padding: 0;
}
.flexslider .slides > li {
    display: none;
    -webkit-backface-visibility: hidden;
} /* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img {
    width: 100%;
    display: block;
}
.flex-pauseplay span {
    text-transform: capitalize;
}

/* Clearfix for the .slides element */
.slides:after {
    content: "\0020";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}
html[xmlns] .slides {
    display: block;
}
* html .slides {
    height: 1%;
}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child {
    display: block;
}

/* FlexSlider Default Theme
*********************************/
.flexslider {
    margin: 0;
    background: #fff;
    position: relative;
    zoom: 1;
}
.flex-viewport {
    max-height: 2000px;
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease;
    overflow: visible;
    overflow-x: hidden;
}
.loading .flex-viewport {
    max-height: 300px;
}
.flexslider .slides {
    zoom: 1;
}
.carousel li {
    margin-right: 0;
}

/* Direction Nav */
.flex-direction-nav {
    *height: 0;
}
.flex-direction-nav a {
    display: block;
    width: 40px;
    height: 45px;
    margin: 0;
    position: absolute;
    bottom: 20px;
    z-index: 10;
    overflow: hidden;
    cursor: pointer;
    color: rgb(60, 80, 110);
    text-shadow: none;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.flex-direction-nav .flex-prev {
    left: 66%;
    margin-left: 20px;
}
.flex-direction-nav .flex-next {
    right: 0;
    margin-right: 20px;
    text-align: right;
}
.flexslider:hover .flex-prev {
    opacity: 0.7;
}
.flexslider:hover .flex-next {
    opacity: 0.7;
}
.flexslider:hover .flex-next:hover,
.flexslider:hover .flex-prev:hover {
    opacity: 1;
}
.flex-direction-nav .flex-disabled {
    opacity: 0 !important;
    filter: alpha(opacity=0);
    cursor: default;
}
.flex-direction-nav a:before {
    font-family: "flexslider-icon";
    font-size: 40px;
    display: inline-block;
    content: "\f001";
}
.flex-direction-nav a.flex-next:before {
    content: "\f002";
}

/* Pause/Play */
.flex-pauseplay a {
    display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    bottom: 5px;
    left: 10px;
    opacity: 0.8;
    z-index: 10;
    overflow: hidden;
    cursor: pointer;
    color: #000;
}
.flex-pauseplay a:before {
    font-family: "flexslider-icon";
    font-size: 20px;
    display: inline-block;
    content: "\f004";
}
.flex-pauseplay a:hover {
    opacity: 1;
}
.flex-pauseplay a.flex-play:before {
    content: "\f003";
}

/* Control Nav */
.flex-control-nav {
    width: 34%;
    position: absolute;
    right: 0;
    bottom: 60px;
    text-align: center;
    background-color: transparent;
}
.flex-control-nav li {
    margin: 0 6px;
    display: inline-block;
    zoom: 1;
    *display: inline;
}
.flex-control-paging li a {
    width: 11px;
    height: 11px;
    display: block;
    background: rgb(255, 255, 255);
    border: 2px solid rgb(60, 80, 110);
    border-radius: 20px;
    cursor: pointer;
    text-indent: 9999px;
}
.flex-control-paging li a:hover {
}
.flex-control-paging li a.flex-active {
    background: rgb(60, 80, 110);
    cursor: default;
}

.flex-control-thumbs {
    margin: 5px 0 0;
    position: static;
    overflow: hidden;
}
.flex-control-thumbs li {
    width: 25%;
    float: left;
    margin: 0;
}
.flex-control-thumbs img {
    width: 100%;
    display: block;
    opacity: 0.7;
    cursor: pointer;
}
.flex-control-thumbs img:hover {
    opacity: 1;
}
.flex-control-thumbs .flex-active {
    opacity: 1;
    cursor: default;
}

@media screen and (max-width: 860px) {
    .flex-direction-nav .flex-prev {
        opacity: 1;
        left: 10px;
    }
    .flex-direction-nav .flex-next {
        opacity: 1;
        right: 10px;
    }
}

/* ==========================================================================
   Stage Items
   ========================================================================== */

.stage .flex-pauseplay {
    position: absolute;
    right: 18.5%;
    bottom: 20px;
}

.stage .flex-pauseplay a {
    height: 36px;
    width: 36px;
    color: rgb(60, 80, 110);
}

.stage .flex-pauseplay a:before {
    font-size: 30px;
}

.stage-item {
    display: flex;
}

.stage-item.clearfix:before,
.stage-item.clearfix:after {
    content: none;
}

.lt-ie9 .slides,
.lt-ie9 .stage-item,
.lt-ie9 .stage-item figure {
    height: 405px;
    overflow: hidden;
}

.stage-item figure {
    max-width: 66%;
    flex: 0 1 66%;
    position: relative;
}

.stage-item figure figcaption {
    position: absolute;
    left: 15px;
    bottom: 10px;
}

.stage-item .group {
    width: auto;
    flex: 0 1 34%;
    padding: 20px;
}

.stage-item a {
    color: rgb(60, 80, 110);
    display: block;
}

.stage-item .heading {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 10px;
    color: rgb(60, 80, 110);
}

.stage-item .heading p {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    font-size: 14px;
    font-size: 1.4rem;
    text-transform: uppercase;
    margin-bottom: 5px;
    margin-bottom: 0.5rem;
}

.stage-item .text {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    font-size: 14px;
    font-size: 1.4rem;
}

/* ==========================================================================
   Video
   ========================================================================== */

.video-container {
    margin-bottom: 20px;
}

.heading + .video-wrapper {
    margin-top: 10px;
    margin-top: 1rem;
}

.video-wrap + figcaption {
    margin-top: 10px;
    margin-top: 1rem;
}

.video-container figcaption {
    padding: 10px 20px;
    padding: 1rem 2rem;
    font-size: 14px;
    font-size: 1.4rem;
}

.video-wrapper video {
    width: 100%;
    height: auto;
}

.lt-ie9 .video-wrapper video,
.lt-ie9 .video-wrapper .video-js {
    width: 480px;
    height: 270px;
}

.video-wrapper .video-js {
    padding-top: 56.25%;
}

.lt-ie9 .video-wrapper .video-js {
    padding-top: 0;
}

.video-wrapper .vjs-fullscreen {
    padding-top: 0px;
}

/* ==========================================================================
   iframe
   ========================================================================== */

.iframe iframe {
    width: 100%;
}

.iframe .heading + iframe {
    margin-top: 20px;
    margin-top: 2rem;
}

/* ==========================================================================
   News Carousel
   ========================================================================== */
.module.news {
    padding: 20px 0;
    padding: 2rem 0;
}

.news .flex-control-nav {
    bottom: auto;
    top: -60px;
    right: 20px;
}

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

.news-group ul li {
    width: 25%;
    float: left;
    padding: 0 20px;
}

.news,
.news a {
    color: rgb(60, 80, 110);
}

.news a {
    display: inline-block;
}

.news .news-title {
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    color: rgb(60, 80, 110);
}

.news-more {
    text-transform: uppercase;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.news-more ul {
    margin: 20px 0 0 20px;
    padding: 0;
    list-style-type: none;
}

.news-more li {
    display: inline-block;
    margin-right: 20px;
}

/* ==========================================================================
   Presse News Archiv
   ========================================================================== */
.article + .news-archive {
    margin-top: 0;
}

.news-archive-nav {
    background-color: rgb(228, 234, 237);
    padding: 20px;
    font-size: 14px;
    font-size: 1.4rem;
}

.news-archive-nav .form-row + .form-row {
    margin-top: 20px;
}

.news-archive-nav .form-row:after {
    content: "";
    display: table;
    clear: both;
}

.news-archive-nav .form-row .form-ctrl {
    float: left;
}

.news-archive-nav .form-row .form-ctrl.mobile {
    display: none;
}

.news-archive-nav .form-row .form-ctrl + .form-ctrl {
    margin-left: 20px;
}

.news-archive-nav .form-row .form-ctrl.mobile + .form-ctrl {
    margin-left: 0;
}

.news-archive-nav .form-row .form-ctrl > label {
    color: rgb();
    text-transform: uppercase;
    font-size: 12px;
    font-size: 1.2rem;
}

.news-archive-nav .form-row .form-ctrl p {
    margin-top: 5px;
}

.news-archive-nav .form-row .form-ctrl input[type="checkbox"] {
    margin-right: 5px;
}

.news-archive-nav .form-row .form-ctrl label + input[type="checkbox"] {
    margin-left: 10px;
}

.news-archive-nav .search-input input[type="text"] {
    width: 73%;
    padding: 8px;
    line-height: 1.2;
    float: left;
    font-size: 16px;
    font-size: 1.6rem;
    border: 1px solid rgb(150, 150, 150);
}

.news-archive-nav .search-input button {
    width: 25%;
    padding: 11px;
    line-height: 1.1;
    text-transform: uppercase;
    float: right;
    font-size: 14px;
    font-size: 1.4rem;
    display: inline-block;
    margin: 0;
}

.tab-group {
    border-bottom: 5px solid rgb(60, 80, 110);
}

.tab-group {
    display: block;
}

.tab-group label {
    padding: 10px 10px 5px 10px;
    display: inline-block;
    background-color: rgb(255, 255, 255);
    font-size: 14px;
    font-size: 1.4rem;
}

.tab-group label:hover,
.tab-group label.active.is-focused {
    cursor: pointer;
    text-decoration: underline;
}
.tab-group label.active:hover {
    cursor: default;
    text-decoration: none;
}

.tab-group label:last-child {
    float: right;
}

.tab-group input[type="radio"] {
    opacity: 0;
}

.tab-group label.active {
    background-color: rgb(60, 80, 110);
    color: rgb(255, 255, 255);
}

.news-archive-nav + .search-results {
    margin-top: 20px;
}

.search-results {
    padding-top: 20px;
    padding-bottom: 20px;
}

.search-result-meta,
.search-result-item {
    padding-left: 20px;
    padding-right: 20px;
}

.search-result-meta {
    margin-bottom: 30px;
    font-weight: bold;
}

.search-result-item + .search-result-item {
    margin-top: 20px;
}

.search-results .show-more {
    margin-top: 30px;
    padding: 0 20px;
}

.result-title {
    font-weight: bold;
}

/* ==========================================================================
   Selbstcheck
   ========================================================================== */

.module.check {
}

.check .control {
    padding: 20px;
    background-color: rgb(228, 234, 237);
}

.check > .heading,
.check .check > h3 {
    padding: 0 20px;
}

.check > .heading {
    padding-top: 20px;
}

.check .check > h3 {
    padding-bottom: 20px;
}

.check h3 + form,
.check .control + .control {
    margin-top: 20px;
}

.check label {
    display: block;
    width: 85%;
    margin-bottom: 10px;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.check input[type="range"] {
    width: 83%;
    background-color: rgb(60, 80, 110);
    height: 20px;
    cursor: pointer;
    padding: 0;
    margin: 0;
    -webkit-appearance: none;
}

.check input[type="range"]::-moz-range-track {
    height: 20px;
    background-color: rgb(60, 80, 110);
    border: 0;
    cursor: pointer;
    -webkit-appearance: none;
}

.check input[type="range"]::-ms-fill-lower {
    background-color: rgb(60, 80, 110);
}

.check input[type="range"]::-ms-track {
    height: 20px;
    background-color: rgb(60, 80, 110);
    color: rgb(255, 255, 255);
    border: 0;
    padding: 0;
    cursor: pointer;
    -webkit-appearance: none;
}

.check input[type="range"]::-webkit-slider-thumb {
    background: rgb(244, 128, 23);
    border-radius: 0;
    border: 0;
    width: 30px;
    height: 30px;
    -webkit-appearance: none;
}

.check input[type="range"]::-moz-range-thumb {
    background: rgb(244, 128, 23);
    border-radius: 0;
    border: 0;
    width: 30px;
    height: 30px;
}

.check input[type="range"]::-ms-thumb {
    background: rgb(244, 128, 23);
    border-radius: 0;
    padding: 0;
    border: 0;
    width: 20px;
    height: 20px;
}

.check input[type="text"] {
    text-align: center;
    vertical-align: 5px;
    margin-left: 5px;
}

.check .control-actions {
    text-align: right;
}

.check .control-actions span {
    float: left;
    display: inline-block;
    margin-top: 5px;
}

.check .legend {
    margin-top: 10px;
    width: 83%;
    font-size: 14px;
    font-size: 1.4rem;
}

.check .legend .low {
    float: left;
    display: inline-block;
}

.check .legend .high {
    float: right;
    display: inline-block;
}

.form-check {
    padding: 20px;
    margin: 2em 0;
}

/*Fallback*/

.check .fallback {
    display: none;
}

.lt-ie10 .check .fallback {
    display: block;
    width: 100%;
}

.lt-ie10 .check input,
.lt-ie10 .check .legend {
    display: none;
}

/* ==========================================================================
   Expandable
   ========================================================================== */

.expandable .expandable-toggle {
    padding: 20px;
}

.expandable .expandable-toggle button i {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 10px;
    border-color: transparent transparent transparent #ffffff;
    display: inline-block;
    margin-right: 7px;
}

.expandable.is-expanded .expandable-toggle button i {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 6px 0 6px;
    border-color: #ffffff transparent transparent transparent;
    display: inline-block;
    margin-right: 5px;
}

.expandable .expandable-content {
    height: 0;
    overflow: hidden;
    margin-top: 0;
    padding: 0;
    visibility: hidden;
    background-color: rgb(238, 238, 238);
}

.expandable.is-expanded .expandable-content {
    height: auto;
    overflow: visible;
    visibility: visible;
    margin-top: 20px;
    padding: 20px 0;
}

/* ==========================================================================
   Tooltipster
   ========================================================================== */

.tooltip {
    border-bottom: 1px dotted rgb(50, 50, 50);
    cursor: help;
}

.intro .tooltip {
    border-color: rgb(255, 255, 255);
}

.tooltipster-default h4 {
    text-transform: none;
    font-weight: bold;
    margin-bottom: 5px;
}

.tooltipster-default p {
    line-height: 1.4;
}

.tooltipster-default p + p {
    margin-top: 5px;
}

/* This is the default Tooltipster theme (feel free to modify or duplicate and create multiple themes!): */
.tooltipster-default {
    border-radius: 0px;
    border: 2px solid rgb(220, 220, 220);
    background: rgb(255, 255, 255);
    background: rgba(255, 255, 255, 0.96);
    color: #333;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.1);
}

/* Use this next selector to style things like font-size and line-height: */
.tooltipster-default .tooltipster-content {
    font-family: Arial, sans-serif;
    font-size: 14px;
    line-height: 16px;
    padding: 16px 20px;
    overflow: hidden;
}

/* This next selector defines the color of the border on the outside of the arrow. This will automatically match the color and size of the border set on the main tooltip styles. Set display: none; if you would like a border around the tooltip but no border around the arrow */
.tooltipster-default .tooltipster-arrow .tooltipster-arrow-border {
    /* border-color: ... !important; */
}

/* If you're using the icon option, use this next selector to style them */
.tooltipster-icon {
    cursor: help;
    margin-left: 4px;
}

/* This is the base styling required to make all Tooltipsters work */
.tooltipster-base {
    padding: 0;
    font-size: 0;
    line-height: 0;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 9999999;
    pointer-events: none;
    width: auto;
    overflow: visible;
}
.tooltipster-base .tooltipster-content {
    overflow: hidden;
}

/* These next classes handle the styles for the little arrow attached to the tooltip. By default, the arrow will inherit the same colors and border as what is set on the main tooltip itself. */
.tooltipster-arrow {
    display: block;
    text-align: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
.tooltipster-arrow span,
.tooltipster-arrow-border {
    display: block;
    width: 0;
    height: 0;
    position: absolute;
}
.tooltipster-arrow-top span,
.tooltipster-arrow-top-right span,
.tooltipster-arrow-top-left span {
    border-left: 8px solid transparent !important;
    border-right: 8px solid transparent !important;
    border-top: 8px solid;
    bottom: -7px;
}
.tooltipster-arrow-top .tooltipster-arrow-border,
.tooltipster-arrow-top-right .tooltipster-arrow-border,
.tooltipster-arrow-top-left .tooltipster-arrow-border {
    border-left: 9px solid transparent !important;
    border-right: 9px solid transparent !important;
    border-top: 9px solid;
    bottom: -7px;
}

.tooltipster-arrow-bottom span,
.tooltipster-arrow-bottom-right span,
.tooltipster-arrow-bottom-left span {
    border-left: 8px solid transparent !important;
    border-right: 8px solid transparent !important;
    border-bottom: 8px solid;
    top: -7px;
}
.tooltipster-arrow-bottom .tooltipster-arrow-border,
.tooltipster-arrow-bottom-right .tooltipster-arrow-border,
.tooltipster-arrow-bottom-left .tooltipster-arrow-border {
    border-left: 9px solid transparent !important;
    border-right: 9px solid transparent !important;
    border-bottom: 9px solid;
    top: -7px;
}
.tooltipster-arrow-top span,
.tooltipster-arrow-top .tooltipster-arrow-border,
.tooltipster-arrow-bottom span,
.tooltipster-arrow-bottom .tooltipster-arrow-border {
    left: 0;
    right: 0;
    margin: 0 auto;
}
.tooltipster-arrow-top-left span,
.tooltipster-arrow-bottom-left span {
    left: 6px;
}
.tooltipster-arrow-top-left .tooltipster-arrow-border,
.tooltipster-arrow-bottom-left .tooltipster-arrow-border {
    left: 5px;
}
.tooltipster-arrow-top-right span,
.tooltipster-arrow-bottom-right span {
    right: 6px;
}
.tooltipster-arrow-top-right .tooltipster-arrow-border,
.tooltipster-arrow-bottom-right .tooltipster-arrow-border {
    right: 5px;
}
.tooltipster-arrow-left span,
.tooltipster-arrow-left .tooltipster-arrow-border {
    border-top: 8px solid transparent !important;
    border-bottom: 8px solid transparent !important;
    border-left: 8px solid;
    top: 50%;
    margin-top: -7px;
    right: -7px;
}
.tooltipster-arrow-left .tooltipster-arrow-border {
    border-top: 9px solid transparent !important;
    border-bottom: 9px solid transparent !important;
    border-left: 9px solid;
    margin-top: -8px;
}
.tooltipster-arrow-right span,
.tooltipster-arrow-right .tooltipster-arrow-border {
    border-top: 8px solid transparent !important;
    border-bottom: 8px solid transparent !important;
    border-right: 8px solid;
    top: 50%;
    margin-top: -7px;
    left: -7px;
}
.tooltipster-arrow-right .tooltipster-arrow-border {
    border-top: 9px solid transparent !important;
    border-bottom: 9px solid transparent !important;
    border-right: 9px solid;
    margin-top: -8px;
}

/* Some CSS magic for the awesome animations - feel free to make your own custom animations and reference it in your Tooltipster settings! */

.tooltipster-fade {
    opacity: 0;
    -webkit-transition-property: opacity;
    -moz-transition-property: opacity;
    -o-transition-property: opacity;
    -ms-transition-property: opacity;
    transition-property: opacity;
}
.tooltipster-fade-show {
    opacity: 1;
}

.tooltipster-grow {
    -webkit-transform: scale(0, 0);
    -moz-transform: scale(0, 0);
    -o-transform: scale(0, 0);
    -ms-transform: scale(0, 0);
    transform: scale(0, 0);
    -webkit-transition-property: -webkit-transform;
    -moz-transition-property: -moz-transform;
    -o-transition-property: -o-transform;
    -ms-transition-property: -ms-transform;
    transition-property: transform;
    -webkit-backface-visibility: hidden;
}
.tooltipster-grow-show {
    -webkit-transform: scale(1, 1);
    -moz-transform: scale(1, 1);
    -o-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    -moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    -ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    -o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
}

.tooltipster-swing {
    opacity: 0;
    -webkit-transform: rotateZ(4deg);
    -moz-transform: rotateZ(4deg);
    -o-transform: rotateZ(4deg);
    -ms-transform: rotateZ(4deg);
    transform: rotateZ(4deg);
    -webkit-transition-property: -webkit-transform, opacity;
    -moz-transition-property: -moz-transform;
    -o-transition-property: -o-transform;
    -ms-transition-property: -ms-transform;
    transition-property: transform;
}
.tooltipster-swing-show {
    opacity: 1;
    -webkit-transform: rotateZ(0deg);
    -moz-transform: rotateZ(0deg);
    -o-transform: rotateZ(0deg);
    -ms-transform: rotateZ(0deg);
    transform: rotateZ(0deg);
    -webkit-transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 1);
    -webkit-transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 2.4);
    -moz-transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 2.4);
    -ms-transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 2.4);
    -o-transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 2.4);
    transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 2.4);
}

.tooltipster-fall {
    top: 0;
    -webkit-transition-property: top;
    -moz-transition-property: top;
    -o-transition-property: top;
    -ms-transition-property: top;
    transition-property: top;
    -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    -moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    -ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    -o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
}
.tooltipster-fall-show {
}
.tooltipster-fall.tooltipster-dying {
    -webkit-transition-property: all;
    -moz-transition-property: all;
    -o-transition-property: all;
    -ms-transition-property: all;
    transition-property: all;
    top: 0px !important;
    opacity: 0;
}

.tooltipster-slide {
    left: -40px;
    -webkit-transition-property: left;
    -moz-transition-property: left;
    -o-transition-property: left;
    -ms-transition-property: left;
    transition-property: left;
    -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    -moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    -ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    -o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
    transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
}
.tooltipster-slide.tooltipster-slide-show {
}
.tooltipster-slide.tooltipster-dying {
    -webkit-transition-property: all;
    -moz-transition-property: all;
    -o-transition-property: all;
    -ms-transition-property: all;
    transition-property: all;
    left: 0px !important;
    opacity: 0;
}

/* CSS transition for when contenting is changing in a tooltip that is still open. The only properties that will NOT transition are: width, height, top, and left */
.tooltipster-content-changing {
    opacity: 0.5;
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
}

.sitemap {
    padding: 20px;
    padding: 2rem;
    font-size: 14px;
    font-size: 1.4rem;
    padding-left: 0;
    padding-right: 0;
}

.article .group.sitemap {
    padding-left: 0;
    padding-right: 0;
}

.sitemap,
.sitemap a,
.sitemap strong {
    color: rgb(35, 55, 85);
    /*text-transform: uppercase;*/
    font-family: "Benton Sans", "News Gothic Regular", "Arial", sans-serif,
        sans-serif;
    font-weight: normal;
}

.sitemap ul {
    padding-left: 0;
    list-style-type: none;
}

.sitemap-item > ul {
    margin-top: 0;
    padding: 20px;
    margin-bottom: 20px;
    background-color: white;
}

.sitemap {
    -webkit-column-count: 2;
    -webkit-column-gap: 20px;
    -webkit-column-width: 50%;
    -moz-column-count: 2;
    -moz-column-gap: 20px;
    -moz-column-width: 50%;
    column-count: 2;
    column-gap: 20px;
    column-width: 50%;
}

.sitemap-item {
    overflow: hidden; /* fix for Firefox */
    break-inside: avoid-column;
    -webkit-column-break-inside: avoid;
}

.sitemap-item > ul > li > a {
    font-weight: bold;
}

.sitemap-item h2 {
    margin: 0;
    padding: 20px;
    background-color: rgb(238, 238, 238);
}

.sitemap ul ul {
    margin-left: 0;
    margin-top: 20px;
    margin-top: 2rem;
    margin-bottom: 20px;
    margin-bottom: 2rem;
}

.sitemap li {
    position: relative;
    line-height: 1.2;
    padding-left: 20px;
    padding-left: 2rem;
}

.sitemap li + li {
    margin-top: 10px;
    margin-top: 1rem;
}

.sitemap li:before {
    content: "";
    width: 16px;
    height: 16px;
    background-image: url(../img/icons.svg);
    background-repeat: no-repeat;
    background-position: -32px 0;
    background-size: 320px 32px;
    position: absolute;
    left: 0;
    top: 0;
}

.no-svg .sitemap li:before {
    background-image: url(../img/icons.png);
}

.sitemap > ul > li {
    padding-left: 0;
}

.sitemap > ul > li:before {
    content: none;
}

/*
    LIA Kontaktformular in der Hauptspalte
*/

.pi-newsletter-widget-title {
}

.pi-newsletter-widget-label.text {
    padding: 0;
}

.pi-newsletter-widget-checkbox-group:after {
    content: "";
    display: table;
    clear: both;
}

.permission-container .pi-newsletter-widget-label-container label {
    font-size: 1.2rem;
    text-transform: uppercase;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.permission-container .pi-newsletter-widget-input-container {
    margin-top: 5px;
}

.pi-newsletter-widget-checkbox-group,
.pi-newsletter-widget-radio-group {
    padding-top: 5px;
    display: inline-block;
    margin-right: 20px;
}

.pi-newsletter-widget-checkbox-group input[type="checkbox"],
.pi-newsletter-widget-radio-group input[type="radio"] {
    float: left;
    margin-top: 2px;
}

.pi-newsletter-widget-checkbox-group label,
.pi-newsletter-widget-radio-group label {
    font-size: 14px;
    text-transform: none;
    display: block;
    margin-left: 25px;
}

.pi-newsletter-widget-permission-string {
    font-size: 14px;
    font-size: 1.4rem;
}

.pi-newsletter-widget-submit {
    background-color: rgb(244, 128, 23);
    color: rgb(255, 255, 255);
    text-transform: uppercase;
    border: 0;
    padding: 8px 16px;
    padding: 0.8rem 1.6rem;
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    display: inline-block;
}

.pi-newsletter-widget-submit:hover,
.pi-newsletter-widget-submit:focus {
    background-color: rgb(205, 103, 10);
}

.pi-newsletter-widget-anonymous-button a {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
    display: inline-block;
}

.pi-newsletter-widget-buttons {
    margin-top: 15px;
}

/*
    LIA Newsletter Anmeldung Marginalspalte mit blauem Hintergrund und weisser Textfarbe
*/

.form-small .pi-newsletter-widget {
    color: rgb(255, 255, 255);
}

.form-small .pi-newsletter-widget-title {
    color: rgb(255, 255, 255);
}

.form-small .pi-newsletter-widget-label.text {
    padding: 0;
}

.form-small .pi-newsletter-widget-checkbox-group:after {
    content: "";
    display: table;
    clear: both;
}

.form-small .permission-container .pi-newsletter-widget-label-container label {
    font-size: 1.2rem;
    text-transform: uppercase;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.form-small .permission-container .pi-newsletter-widget-input-container {
    margin-top: 5px;
}

.form-small .pi-newsletter-widget-checkbox-group input[type="checkbox"] {
    float: left;
}

.form-small .pi-newsletter-widget-checkbox-group label {
    text-transform: none;
    display: block;
    margin-left: 25px;
    font-weight: 400;
}

.form-small .pi-newsletter-widget-permission-string {
    font-size: 14px;
    color: rgb(255, 255, 255);
}

.form-small .pi-newsletter-widget-submit {
    background-color: rgb(244, 128, 23);
    color: rgb(255, 255, 255);
    text-transform: uppercase;
    border: 0;
    padding: 8px 16px;
    padding: 0.8rem 1.6rem;
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
    display: inline-block;
}

.form-small .pi-newsletter-widget-submit:hover,
.form-small .pi-newsletter-widget-submit:focus {
    background-color: rgb(205, 103, 10);
}

.pi-newsletter-widget-anonymous-button a {
    color: rgb(255, 255, 255);
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
    display: inline-block;
}

.pi-newsletter-widget-form-errors {
    background-color: rgb(200, 0, 0);
    color: rgb(255, 255, 255);
    font-size: 14px;
    font-size: 1.4rem;
}

.pi-newsletter-widget-errors-title {
    font-weight: bold;
    display: block;
    padding: 15px 15px 0px 15px;
}

.pi-newsletter-widget-form-errors ul {
    padding: 0 0 15px 20px;
    margin: 0 15px;
}

.pi-newsletter-widget-form-errors ul li {
    color: rgb(255, 255, 255);
}

.pi-newsletter-widget-input-container.error input[type="text"] {
    outline: 1px solid rgb(200, 0, 0);
    border: 1px solid rgb(200, 0, 0);
}

.permission-container .pi-newsletter-widget-input-container.error {
    padding: 5px 10px;
    outline: 2px solid rgb(200, 0, 0);
}

.pi-contact-widget-form-element[data-pi-type="radio"].error,
.pi-newsletter-widget-form-element[data-pi-type="radio"].error {
    outline: 2px solid rgb(200, 0, 0);
}

/* ==========================================================================
   UM Forms, 2015-07-14
   ========================================================================== */

.pi-form-control {
    margin-bottom: 1em;
    position: relative;
}

.pi-form-control select {
    width: 100%;
}

.pi-form-label {
    margin-bottom: 4px;
}

.form-small .pi-form-label,
.form-small .pi-heading,
.form-small .pi-heading p {
    color: #fff;
}

.pi-form-label.checkbox {
    font-size: 12px;
    font-size: 1.2rem;
    text-transform: uppercase;
    font-family: "Benton Sans", "Arial", sans-serif, sans-serif;
    font-weight: 600;
}

.pi-radio-control,
.pi-checkbox-control {
    display: inline-block;
    margin-right: 1em;
    margin-bottom: 0.5em;
}

.pi-radio-control input[type="radio"],
.pi-checkbox-control input[type="checkbox"] {
    float: left;
    margin-top: 2px;
}

.pi-radio-control-vertical,
.pi-checkbox-control-vertical {
    display: block;
}

.pi-radio-control label,
.pi-checkbox-control label {
    display: block;
    text-transform: none;
    font-weight: normal;
    color: #333;
    font-size: 16px;
    padding-left: 25px;
}

.form-small .pi-radio-control label,
.form-small .pi-checkbox-control label {
    color: #fff;
}

.pi-heading p {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
}

.pi-form-control[data-pi-id="salut"] {
    margin-bottom: 0;
}

.pi-widget .pi-form-control__has-error input[type="text"],
.pi-widget .pi-form-control__has-error input[type="password"],
.pi-widget .pi-form-control__has-error input[type="search"],
.pi-widget .pi-form-control__has-error input[type="email"],
.pi-widget .pi-form-control__has-error select,
.pi-widget .pi-form-control__has-error textarea {
    border: 1px solid rgb(200, 0, 0);
}

.pi-status-icon {
    width: 16px;
    height: 16px;
    display: inline-block;
    background-color: transparent;
    border-radius: 6px;
    position: absolute;
    right: 4px;
    top: 3px;
}

.pi-form-control__has-success .pi-status-icon {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAQJJREFUOBFjYBjygJEUH9gXs3QyMjIGMfz/7Xugl+EGSC8LsQY4lrL0MTAwFoLU/2dg3cXA8FsByPzHBBKAAZtMBkGGUAZmGB9G25ew9MI0g8UYGQ4B6X8gNtwAh2IWGxZulkcOCix79UoYuMEKgQRIMxMjYxGM/5+BYeWBB7/jYXx4GDiUsjxmZGCUAUn8Z/h/8N3/P95CjCyNQLFimGKo5miG1Qx/YWJwF/xnYOyCCQI12QszsNwkpBmkHu7fh8f+nVKwZP7AyMjgATaIkZEPZiA2m2FycANAAg+O/zuJYghQDJ9mkB4UA0ACyIYQ0gxSjxPYFDIoASXhYYRT4dCXAABV/VV06DOzzgAAAABJRU5ErkJggg==");
    background-repeat: no-repeat;
    background-position: center center;
}

.pi-form-control__has-error .pi-status-icon {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAQFJREFUOBHFUrsNwlAMvER8R2AGBgAaJIQYgwrGIhVjoDQ0sAArwAgUFHD38mw5KA0VlhL7nc9nv8TAv63oGKC4AHviOz7TnL/RVwvgQP/OWHItgTMw6QNHgutIspiV9QvYLoGHYaUF9EUsJvk+J6ZHsXgSFqcJhQAuoLG/OvcaSnp7LE6+Ykq4AE+6sxuJQzswHlmcvXOjgH2wxOHYLhDjLODcKNBqwq4DA+I0hpn3uxHQr5pZgr68Arxup4mbLApURKIAnsBKrDEUtkzcZJzOTQt0IuA7wCrWtgX4PWou1IYww/AbBWhJRFBCps6xu3LiMJWKxYkT6Cz7aZWbkn++P5XsNJ5wDWHrAAAAAElFTkSuQmCC");
    background-repeat: no-repeat;
    background-position: center center;
}

.pi-form-control .pi-form-error {
    margin-top: 0.5em;
    font-size: 0.875em;
}

.pi-form-control .pi-form-error,
.pi-form-control .pi-form-status {
    display: none;
}

.pi-form-control__has-error .pi-form-error,
.pi-form-control__has-error .pi-form-status,
.pi-form-control__has-success .pi-form-status {
    display: block;
}

.pi-form-control__has-error .pi-form-label,
.pi-form-control__has-error .pi-form-error-text,
.pi-form-control__has-error .pi-radio-control label,
.pi-form-control__has-error .pi-checkbox-control label {
    color: rgb(200, 0, 0);
}

/* ==========================================================================
   Module Events, 2015-07-14
   ========================================================================== */

.events .heading {
    margin-bottom: 20px;
}

.event-details {
    padding-left: 20px;
    padding-right: 20px;
}

.event-form .event-details {
    padding: 0;
}

.event-details dl {
    margin: 0;
}

.event-details dt {
    float: left;
    width: 11em;
    font-weight: bold;
}

.event-details dt:after {
    content: ":";
}

.event-details dd {
    min-height: 1.75em;
    padding-left: 11em;
    margin-bottom: 0.5em;
    margin-left: 0;
}

.event-details dd + dd {
    margin-top: -0.75em;
}

.pi-workshops.event-details label {
    font-weight: bold;
}

.pi-workshops.event-details dt {
    float: left;
    margin-right: 1em;
    font-weight: normal;
    width: auto;
}
.pi-workshops.event-details dd {
    font-weight: normal;
    min-height: 1.5em;
    padding-left: 0;
    margin-bottom: 0em;
    margin-left: 0;
}

.event-details dd:after {
    content: "";
    display: table;
    clear: both;
}

.event-form {
    padding-left: 20px;
    padding-right: 20px;
    margin-bottom: 30px;
}
.main > .module .event-form .heading {
    padding-left: 0;
    padding-right: 0;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden,
.vh {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.vh.focusable:active,
.visuallyhidden.focusable:focus,
.vh.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

.clearfix:before,
.group:before,
.clearfix:after,
.group:after {
    content: " ";
    display: table;
}

.clearfix:after,
.group:after {
    clear: both;
}

.pull-left {
    float: left;
}

.pull-right {
    float: right;
}

/*
 * etracker fix
 */
#et-opt-out {
    width: 450px !important;
}

/* ==========================================================================

   ***************************************************************

   Media Queries for Responsive Design.

   ***************************************************************

   ========================================================================== */

/* ==========================================================================

   Media Queries for Responsive Design.
   Target retina displays

   ========================================================================== */

/* ==========================================================================

   ie8 Support

   ========================================================================== */

.lt-ie9 .wrapper {
    width: 960px;
}

.lt-ie9 .wrapper .teaser figure .tag,
.lt-ie9 .wrapper .teaser .heading p,
.lt-ie9 .wrapper .nav-secondary,
.lt-ie9 .wrapper .teaser .text,
.lt-ie9 .wrapper .aside p,
.lt-ie9 .wrapper .aside li {
    font-size: 14px;
}

.lt-ie9 .stage .flex-pauseplay {
    right: 138px;
}

/* ==========================================================================

   Media Queries for Responsive Design.
   Smaller Displays > 1280px

   ========================================================================== */

@media only screen and (max-width: 1260px) {
    .wrapper {
        width: 96rem;
    }

    .teaser figure .tag,
    .teaser .heading p,
    .nav-secondary,
    .teaser .text {
        font-size: 1.4rem;
    }
    .aside p,
    .aside li {
        font-size: 1.4rem;
    }

    .stage-item {
        flex-wrap: wrap;
    }

    .stage-item figure {
        max-width: 100%;
        flex: 0 0 100%;
    }

    .stage-item .group {
        padding-right: 240px;
        max-width: 100%;
        flex: 0 0 100%;
    }

    .flex-control-nav {
        width: 240px;
    }

    .flex-direction-nav .flex-prev {
        left: auto;
        right: 180px;
    }

    .stage .flex-pauseplay {
        right: 140px;
    }

    .button.mobile {
        display: inline-block;
        margin-top: 1em;
    }

    .table,
    .table-rwd {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 1.6rem;
    }

    .wysiwyg .table-rwd table {
        margin-bottom: 0;
    }

    .touch .module.iframe {
        overflow-x: scroll; /* has to be scroll, not auto */
        -webkit-overflow-scrolling: touch;
    }
} /* max 960px */

/* ==========================================================================

   Media Queries for Responsive Design.
   Tablet Displays < 960px

   ========================================================================== */

@media only screen and (max-width: 959px) {
    .page {
        position: relative;
    }

    .wrapper {
        width: 52rem;
    }

    .main + .aside {
        margin-top: 4rem;
    }

    .aside {
        margin-bottom: 2rem;
    }

    .col-1-8 {
        width: 100%;
    }

    .col-2-8 {
        width: 50%;
    }

    .aside.col-2-8 {
        width: 100%;
    }

    .col-4-8 {
        width: 100%;
    }

    .col-6-8 {
        width: 100%;
    }

    .body .col-2-8 .teaser {
        height: 52rem;
    }

    .aside.col-2-8 .teaser {
        height: auto;
    }

    .col-4-8 .teaser figure,
    .col-8-8 .teaser figure {
    }

    .col-4-8 .teaser .group,
    .col-8-8 .teaser .group {
    }

    .nav-footer > ul {
        width: auto;
        float: none;
    }

    .mobile {
        display: block;
    }

    .nav-main,
    .nav-breadcrumbs,
    .claim,
    .nav-iconbar,
    .nav-secondary,
    .sitetools-links {
        display: none;
    }

    .copyright p {
        float: none;
    }

    .copyright ul {
        float: none;
        margin-top: 1.6rem;
        margin-left: 2rem;
        display: flex;
        flex-wrap: wrap;
        gap: 0.8rem 1.6rem;
    }

    .copyright ul:before,
    .copyright ul:after {
        content: none;
    }

    .copyright ul li {
        float: none;
    }

    .copyright ul li + li {
        margin: 0;
    }

    .quicklinks {
        padding: 0.5rem 0;
    }

    .nav-footer {
        margin: 0 2rem;
    }

    .nav-footer ul ul {
        display: none;
    }

    .nav-footer ul ul.open {
        display: block;
    }

    .nav-footer > ul > li {
        padding-top: 1.6rem;
        padding-bottom: 1.6rem;
        margin-bottom: 0;
        position: relative;
    }
    .nav-footer .nav-footer-toggle {
        position: absolute;
        right: 0;
        top: 1.6rem;
        display: inline-block;
    }

    .nav-footer > ul {
        border-bottom: 1px solid rgb(255, 255, 255);
        padding: 0;
    }

    .nav-footer > ul:last-child {
        border-bottom: 0;
    }

    .nav-main-toggle {
        padding: 0;
        margin: 0;
        background: transparent;
        border: 0;
        text-transform: uppercase;
        width: 4rem;
        display: inline-block;
        /*float: left;*/
        margin-left: 2rem;
        font-weight: bold;
        font-size: 1.2rem;
    }

    .branding .nav-main-toggle {
        float: left;
    }

    .nav-main-toggle .icon {
        background: rgb(60, 80, 110) url(../img/icons_sections.png) -40px -40px;
        width: 4rem;
        height: 4rem;
        display: inline-block;
    }

    .nav-main {
        background-color: rgb(60, 80, 110);
        box-shadow: 0 0px 5px rgba(0, 0, 0, 0.5);
        position: absolute;
        display: block;
        left: -46rem;
        top: 3rem;
        bottom: 0;
        width: 46rem;
        z-index: 200;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
        -webkit-transition: left 0.2s 0s linear;
        -moz-transition: left 0.2s 0s linear;
        -ms-transition: left 0.2s 0s linear;
        transition: left 0.2s 0s linear;
    }

    .nav-main.mobile-is-open {
        left: 0;
    }

    .nav-main .has-menu.is-open {
        background-color: transparent;
    }

    .nav-main.mobile-is-open ~ #nav-lock.is-open {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        background: transparent;
        z-index: 100;
        width: 100%;
    }

    .nav-main .wrapper {
        width: auto;
        background-color: rgb(255, 255, 255);
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    .nav-main .wrapper > ul > li {
        float: none;
    }

    .nav-main .menu {
        display: none;
    }

    .nav-main .menu {
        position: static;
        width: auto;
        height: auto;
        background-color: rgb(255, 255, 255);
        z-index: 3000;
    }

    .nav-main.mobile-is-open .menu {
        opacity: 1;
        left: 0;
        visibility: visible;
    }

    .nav-main .menu .row {
        padding: 0;
    }

    .no-touch .nav-main .has-menu {
        position: relative;
    }

    .no-touch .nav-main .has-menu:hover,
    .nav-main .menu .row {
        background-color: rgb(255, 255, 255);
    }

    .nav-main .wrapper > ul {
        padding: 0 2rem;
    }

    .nav-main .wrapper > ul > li > a,
    .nav-main .wrapper > ul > li > strong {
        padding: 1rem 0;
    }

    .nav-main .wrapper > ul > li {
        border-top: 1px solid rgb(228, 234, 237);
    }

    .nav-main .wrapper > ul > li > a,
    .nav-main .wrapper > ul > li > strong {
        display: inline-block;
        color: rgb(60, 80, 110);
    }

    .nav-main .wrapper > ul > li.active > a,
    .nav-main .wrapper > ul > li.active > strong {
        background-color: rgb(255, 255, 255);
    }

    .nav-main .menu,
    .nav-main .menu a,
    .nav-main .menu strong,
    .nav-main .menu .col > ul > li a,
    .nav-main .menu ul li::before {
        color: rgb(60, 80, 110);
    }

    /*    .nav-main .menu ul li::before {
        background-position: 0 0;
    }*/

    .nav-main .menu .col > ul {
        padding-left: 0;
    }

    .nav-main .menu .col > ul {
        display: block;
        width: auto;
        margin-right: 0;
    }

    .nav-main .menu .col-6-8 .col > ul {
        padding-right: 0;
    }

    .nav-main .menu .col > ul > li ul {
        margin-bottom: 2rem;
    }

    .nav-main .menu .col > ul > li > ul {
        display: block;
    }

    .nav-main .menu .col > ul > li {
        font-size: 1.4rem;
    }

    .nav-main .menu .col > ul + ul {
        margin-top: 0;
    }

    .nav-main .menu .section-heading {
        display: none;
    }

    .nav-main .menu .col,
    .nav-main .menu .col-2-8,
    .nav-main .menu .col-6-8,
    .nav-main .menu .col-6-8 .col {
        float: none;
        width: auto;
    }

    .nav-main .menu .col-2-8 {
        display: none;
    }

    .nav-main .menu .col-6-8 {
        padding-left: 0rem;
        height: auto;
        overflow: visible;
    }

    .nav-main.mobile-is-open li {
        position: relative;
        display: block;
    }

    .nav-main.mobile-is-open li .toggle-next-level {
        position: absolute;
        right: 1rem;
        top: 0;
    }

    .nav-main li.has-menu > .toggle-next-level {
        top: 0.7rem;
    }

    .nav-main .menu .col > ul > li ul,
    .no-touch .nav-main .has-menu:hover .menu {
        display: none;
    }

    .nav-main .wrapper .menu.mobile-is-shown,
    .nav-main .wrapper ul.mobile-is-shown {
        display: block !important;
    }

    .toggle-next-level {
        padding: 0;
        margin: 0;
        background: transparent;
        border: 0;
        width: 2rem;
        height: 2rem;
        display: inline-block;
        text-align: right;
    }

    .toggle-next-level > .icon {
        display: inline-block;
        width: 12px;
        height: 8px;
        background: transparent url(../img/toggle_arrows.png) no-repeat -40px -20px;
    }

    .menu .toggle-next-level > .icon {
        opacity: 0.6;
    }

    .toggle-next-level.toggle-active > .icon {
        background: transparent url(../img/toggle_arrows.png) no-repeat -40px 0px;
    }

    .nav-main .globalsearch {
        margin-top: 0;
        border: 0;
    }

    .nav-main .globalsearch {
        display: block;
        position: relative;
        text-align: left;
        background-color: rgb(238, 238, 238);
        padding: 0;
        margin: 2rem;
    }

    .nav-main .globalsearch input[type="text"],
    .nav-main .globalsearch input[type="search"] {
        padding: 0.6rem 1rem;
        font-size: 1.6rem;
        width: 34rem;
        display: block;
        border: 0;
        margin-right: 0;
        float: left;
        background-color: transparent;
    }

    .nav-main .globalsearch .button {
        width: 4rem;
        overflow: hidden;
        float: right;
        padding: 0;
    }

    .nav-main .globalsearch .icon {
        background: transparent url(../img/icons_sections.png) no-repeat -80px -43px;
        display: inline-block;
        width: 4rem;
        height: 3rem;
    }

    .nav-meta .nav-meta-toggle {
        padding: 0.5rem 0;
        margin: 0;
        border: 0;
        background: transparent;
        color: rgb(255, 255, 255);
        display: block;
        text-align: center;
        text-transform: uppercase;
        width: 100%;
        min-height: 3rem;
        background-color: rgb(35, 55, 85);
        font-size: 1.4rem;
        font-weight: bold;
    }

    .nav-meta .nav-meta-toggle .icon {
        background: transparent url(../img/toggle_arrows.png) no-repeat -40px -60px;
        width: 12px;
        height: 10px;
        display: inline-block;
        margin-left: 10px;
    }

    .nav-meta {
        padding: 0;
        min-height: 3rem;
        background: rgb(255, 255, 255) url(../img/bg_meta.png) repeat-x left top;
        font-size: 1.4rem;
    }

    .nav-meta,
    .nav-meta a,
    .nav-meta strong {
        color: rgb(60, 80, 110);
    }

    .nav-meta #navMetaClose,
    .nav-meta ul {
        display: none;
    }

    .nav-meta.mobile-is-open #navMetaClose {
        display: block;
        padding: 2rem 0;
    }

    .nav-meta.mobile-is-open #navMetaClose .icon {
        background: transparent url(../img/toggle_arrows.png) no-repeat -60px -40px;
        height: 12px;
    }

    .nav-meta.mobile-is-open ul {
        display: block;
        float: none;
        background-color: rgb(255, 255, 255);
        padding: 0 2rem;
    }

    .nav-meta .wrapper > ul > li {
        float: none;
        border-top: 1px solid rgb(228, 234, 237);
    }

    .nav-meta .wrapper > ul > li > a {
        display: inline-block;
        padding: 1rem 0;
    }

    .nav-meta .wrapper > ul > li + li {
        margin-left: 0;
    }

    .nav-footer-toggle {
        border: 0;
        padding: 0;
        background: transparent;
        height: 20px;
    }

    .nav-footer-toggle .icon {
        width: 20px;
        height: 20px;
        display: inline-block;
        background: transparent url(../img/toggle_arrows.png) no-repeat -20px -60px;
    }

    .nav-footer-toggle.is-open .icon {
        background: transparent url(../img/toggle_arrows.png) no-repeat -20px -40px;
    }

    .stage-item {
        background: none;
    }

    .stage-item figure {
        width: auto;
        float: none;
    }

    .stage-item .group {
        width: auto;
        float: none;
        padding: 2rem;
    }

    .stage .flex-direction-nav {
        display: none;
    }

    .stage .flex-control-nav {
        width: 100%;
        bottom: 1rem;
        text-align: center;
        right: 0;
    }

    .stage .flex-control-paging li a {
        border-color: rgb(255, 255, 255);
    }

    .stage .flexslider {
        padding-bottom: 4rem;
        background-color: rgb(60, 80, 110);
    }

    .flex-control-paging li a {
        width: 15px;
        height: 15px;
    }

    .stage-item a {
        color: rgb(255, 255, 255);
    }

    .stage-item .heading,
    .stage-item .text {
        color: rgb(255, 255, 255);
    }

    .carousel-news {
        padding-bottom: 4rem;
    }

    .news {
        font-size: 1.4rem;
    }

    .news-group ul li {
        width: auto;
        float: none;
    }
    .news-group ul li + li {
        margin-top: 1rem;
    }

    .news .flex-control-nav {
        width: 100%;
        top: auto;
        bottom: 0;
        text-align: center;
        right: 0;
    }

    /* Teaser*/

    .row .col-4-8 + .col-4-8 .teaser figure,
    .row .col-4-8 .teaser-reversed .group {
        float: right;
    }

    .row .col-4-8 + .col-4-8 .teaser .group,
    .row .col-4-8 .teaser-reversed figure {
        float: left;
    }

    .row .col-4-8 + .col-4-8 .teaser figure:after {
        content: "";
        display: block;
        position: absolute;
        right: auto;
        left: 0;
        top: 2rem;
        bottom: auto;
        width: 0px;
        height: 0px;
        border-style: solid;
        border-width: 10px 0 10px 10px; /* arrow left */
        border-color: transparent transparent transparent rgb(255, 255, 255);
    }

    .row .col-4-8:first-child .teaser-reversed figure:after {
        content: "";
        display: block;
        position: absolute;
        right: 0;
        left: auto;
        top: 2rem;
        bottom: auto;
        width: 0px;
        height: 0px;
        border-style: solid;
        border-width: 10px 10px 10px 0px; /* arrow right */
        border-color: transparent rgb(255, 255, 255) transparent transparent;
    }

    .row .col-8-8 .teaser-reversed figure:after {
        content: "";
        display: block;
        position: absolute;
        right: auto;
        left: 0;
        top: 2rem;
        bottom: auto;
        width: 0px;
        height: 0px;
        border-style: solid;
        border-width: 10px 0 10px 10px; /* arrow left */
        border-color: transparent transparent transparent rgb(255, 255, 255);
    }

    .row .col-4-8 + .col-4-8 .teaser figure .tag {
        left: 1.8rem;
        right: auto;
    }

    .row .col-4-8 .teaser-reversed figure .tag {
        right: 1.8rem;
        left: auto;
    }

    .social-media {
        text-align: center;
    }

    .stage .flex-pauseplay {
        right: 50px;
        bottom: 8px;
    }

    .video-js {
        width: auto !important;
        height: auto !important;
    }

    iframe.mustang {
        display: none;
    }

    .sitemap {
        -webkit-column-count: 1;
        -webkit-column-gap: 0;
        -webkit-column-width: 100%;
        -moz-column-count: 1;
        -moz-column-gap: 0;
        -moz-column-width: 100%;
        column-count: 1;
        column-gap: 0;
        column-width: 100%;
    }
} /* max 520px */

/* ==========================================================================

   Media Queries for Responsive Design.
   Small Displays < 480px

   ========================================================================== */

@media only screen and (max-width: 480px) {
    .logo a {
        width: 200px;
        height: auto;
    }

    .wrapper {
        width: 32rem;
    }

    .col-1-8 {
        width: 32rem;
    }

    .col-2-8 {
        width: 32rem;
    }

    .col-4-8 {
        width: 32rem;
    }

    .col-6-8 {
        width: 32rem;
    }

    .col-4-8 .teaser figure,
    .col-8-8 .teaser figure {
        float: none;
        width: 32rem;
    }

    .col-4-8 .teaser .group,
    .col-8-8 .teaser .group {
        float: none;
        width: 32rem;
    }

    .body .col-2-8 .teaser {
        height: auto;
    }

    .nav-main {
        width: 28rem;
        left: -28rem;
    }

    .nav-main a {
        max-width: 18rem;
    }

    .nav-main .globalsearch input[type="text"],
    .nav-main .globalsearch input[type="search"] {
        width: 18rem;
    }

    .article .heading h1 {
        font-size: 2.4rem;
    }

    .teaser figure:after,
    .teaser-reversed figure:after,
    .row .col-4-8 .teaser figure:after,
    .row .col-8-8 .teaser figure:after,
    .row .col-4-8 .teaser-reversed figure:after,
    .row .col-8-8 .teaser-reversed figure:after,
    .row .col-4-8 + .col-4-8 .teaser figure:after,
    .row .col-4-8:first-child .teaser-reversed figure:after,
    .row .col-8-8 .teaser-reversed figure:after {
        content: "";
        display: block;
        position: absolute;
        right: auto;
        top: auto;
        bottom: 0;
        left: 2rem;
        width: 0px;
        height: 0px;
        border-style: solid;
        border-width: 0 10px 10px 10px; /* arrow up */
        border-color: transparent transparent #ffffff transparent;
    }

    .row .col-4-8 .teaser figure .tag,
    .row .col-4-8 .teaser-reversed figure .tag,
    .row .col-4-8 .teaser-reversed figure .tag,
    .row .col-8-8 .teaser figure .tag,
    .row .col-8-8 .teaser-reversed figure .tag {
        left: 1.8rem;
        right: auto;
    }

    .linklist.listing figure {
        display: none;
    }

    .linklist.listing figure + a {
        margin-left: 0;
    }

    .news-archive-nav .form-row .form-ctrl + .form-ctrl {
        margin-left: 0px;
        margin-top: 20px;
    }

    .news-archive-nav .tab-group {
        display: none;
    }

    .news-archive-nav .form-row .form-ctrl.mobile {
        display: block;
    }

    .iframe-check iframe {
        height: 1200px;
    }

    .check input[type="range"],
    .check .legend {
        width: 76%;
    }

    .check .legend {
        font-size: 12px;
        font-size: 1.2rem;
    }
} /* max 320px */

/* ==========================================================================

   Print styles.

   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }
    body {
        font-size: 12px;
    }
    .main a,
    .main a:visited {
        text-decoration: underline;
        color: rgb(60, 80, 110) !important;
    }

    /*a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }*/

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 1.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
    .wrapper {
        max-width: 100%;
        margin: 0 !important;
    }
    .claim a {
        font-size: 1.7rem;
        line-height: 1.25em;
    }
    .section-heading h2 {
        font-size: 1.4rem;
        line-height: 1.25em;
    }
    .accordion-heading a,
    .download a span {
        text-decoration: none !important;
    }
    .nav-breadcrumbs {
        border-bottom: 1px solid #ddd;
        margin-bottom: 20px;
    }
    .nav-breadcrumbs * {
        font-size: 10px;
    }
    .nav-breadcrumbs li:last-child:not(:only-child) {
        display: inline-block;
    }
    .nav-breadcrumbs li:last-child:not(:only-child) a,
    .nav-breadcrumbs li:last-child:not(:only-child) strong {
        font-size: 100% !important;
    }
    .article .heading p {
        margin-bottom: 0;
    }
    /*Ausblenden*/
    .carousel,
    .nav-meta,
    .nav-iconbar,
    .nav-main,
    .nav-secondary,
    .sitetools,
    .quicklinks,
    .copyright .pull-right,
    a.button,
    .figure-intro,
    a.fancybox:after,
    .video-wrapper,
    .teaser,
    .module .figure,
    .accordion-heading .icon,
    .pi-form-button,
    .button,
    .icon,
    .module.form-small,
    .news-more,
    .linklist.listing ul li,
    .form-check {
        display: none !important;
    }
    .branding {
        border-bottom: 1px solid #ddd;
    }
    /*Immer einblenden*/
    .logo a img,
    .accordion-body {
        display: block !important;
    }

    .news-group ul li {
        width: 100%;
        padding: 0;
        margin-bottom: 20px;
    }
    .article .intro,
    .accordion-inner {
        padding: 0;
    }
    .article .intro .text {
        font-weight: bold;
    }
    .col {
        width: 100% !important;
        float: none !important;
    }
    form {
        display: block;
        width: 75%;
        border: 1px dotted #ddd;
        padding: 20px !important;
    }
    .intro,
    .article .group,
    .article .module,
    .accordion-heading a,
    .section-heading h2,
    .heading,
    .section-heading,
    .linklist,
    .text {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .module .section-heading,
    .module.news {
        padding: 0 !important;
    }
    .module {
        margin-bottom: 15px;
    }
    .claim {
        max-width: 60%;
    }
    .logo {
        box-sizing: border-box;
        max-width: 33%;
        margin-right: 0px;
    }
    .logo a {
        width: auto !important;
    }
    .logo a img {
        width: 100% !important;
        height: auto !important;
    }
    .claim a,
    .nav-breadcrumbs ul,
    .copyright p {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .copyright {
        font-weight: normal;
        border-top: 1px solid #ddd;
    }
    .article .module.accordion {
        border: 1px solid #ddd;
        padding: 10px 20px 20px 20px !important;
    }
    .accordion-item {
        padding-bottom: 20px;
        border-bottom: 1px solid #ddd;
    }
    .accordion-item:last-child {
        padding-bottom: 0px;
        border-bottom: 0;
    }
    .download ul li:before {
        content: url("../img/list_down_print.png");
        background-image: none;
    }
    .linklist ul li:before {
        content: url("../img/list_arrow_print.png");
        background-image: none;
    }

    .aside {
        padding-top: 20px;
        border-top: 1px solid #ddd;
    }

    .module .section-heading h2 span {
        display: inline-block;
        margin-left: 0.3em;
    }

    .article .heading + .text,
    .article .intro + .group,
    .article .group + .group,
    .article .module + .group,
    .article .group + .module,
    .article .module + .module,
    .article + .module,
    .article + .row {
        margin-top: 1.5rem;
    }

    .table table tbody tr td,
    .wysiwyg table tbody tr td,
    .table table thead tr th,
    .wysiwyg table thead tr th {
        border: 1px solid #ddd;
    }
    .article .module.komnet-dialog {
        padding-left: 20px !important;
        padding-right: 20px !important;
        border-width: 1px;
        page-break-inside: avoid;
    }
    .komnet-dialog .heading h2 {
        position: relative;
    }
    .komnet-dialog .heading h2:before {
        content: url("../img/l-KomNetAllg-3c-075px.jpg");
        display: block;
        position: absolute;
        left: 0px;
        top: 0px;
    }

    .module,
    .dialog {
        page-break-inside: avoid;
    }
    .linklist.dialog ul li:before {
        content: url("../img/list_dialog.svg");
    }
    .tab-group label.active {
        font-weight: bold;
    }
    .news-archive-nav {
        padding: 0;
    }
    .search-result-meta,
    .search-result-item {
        padding-left: 0;
        padding-right: 0;
    }
    .pi-radio-control label,
    .pi-checkbox-control label {
        font-size: 12px;
    }
    .check input[type="range"] {
        border: 1px solid #ddd;
    }
    .check .legend {
        font-size: 12px;
    }
    .check > .heading,
    .check .check > h3 {
        padding-left: 0px;
    }
    .check input[type="range"]::-webkit-slider-thumb,
    .check input[type="range"]::-moz-range-thumb,
    .check input[type="range"]::-ms-thumb {
        border: 1px solid #000 !important;
        background-color: transparent;
    }
}

/* Accessibility Improvements */

a:focus,
button:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus,
textarea:focus,
select:focus {
    outline: 0 !important;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25),
        0 0 1px 3px rgba(0, 134, 255, 0.75) !important;
    border-radius: 0.1px;
}

.heading h1,
.heading h2,
.heading h3,
.heading h4,
.heading p,
.text h1,
.text h2,
.text h3,
.text h4,
.text p {
    hyphens: auto;
}
