@charset "UTF-8";

:root {
    --primary-color: #094A8B;
    --quinary-color: #669DD1;
    --tertiary-color: #ffaf02;
    --grey-color: #4F4F4F;
    --border-bg: #f1f0f2;
    --sp-xs: 0.25rem;
    --sp-s: 0.5rem;
    --sp-m: 1rem;
    --sp-l: 1.5rem;
    --sp-xl: 2rem;
    --sp-xxl: 2.5rem;
    --sp-xxxl: 3rem;
    --sp-4l: 4rem;
    --sp-5l: 5rem;

    --color-white: white;

    --font-size-10: 0.625rem;
    --font-size-14: 0.875rem;
    --font-size-18: 1.125rem;
}

/**
 * Brics - A Starter Sass-Kit which embraces CSS, BEM and the Atomic Design-Approach.
 * @version 1.3.1
 * @see https://inkdpixels.github.io/Brics/
 */
/**
 * Declarations which should be put at the top of the document e.g. @font-face declarations and CSS viewports.
 */

/*
 * Global border-box
 */
html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /*height: 100%;*/
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

*, *:before, *:after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit;
}

/**
 * Normalize
 *
 * A cut-down version of normalize.css
 * @author Nicolas Gallagher
 * @link http://necolas.github.com/normalize.css/
 */
article, aside, details, figcaption, figure, main, footer, header, hgroup, nav, section, summary {
    display: block;
}

audio, canvas, progress, video {
    display: inline-block;
}

[hidden] {
    display: none;
}

button, input, select, textarea {
    font-size: 100%;
    margin: 0;
    vertical-align: baseline;
}

optgroup {
    font-weight: bold;
}

button, input {
    line-height: normal;
}

button, select {
    text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
    /* 3 */
}

button[disabled],
html input[disabled] {
    cursor: default;
}

input[type="checkbox"], input[type="radio"] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    margin-right: .35em;
    cursor: pointer;
}

input[type="search"] {
    -webkit-appearance: textfield;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/* CUSTOMIZATIONS */
label {
    font-size: .875rem;
}

.container-fluid:after,
.container:after,
.row:after {
    clear: both
}

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

.badge {
    font-weight: 700;
    text-align: center;
    white-space: nowrap
}

.btn .badge {
    position: relative;
    top: -1px
}

.btn-group-xs > .btn .badge, .btn-xs .badge {
    top: 0;
    padding: 1px 5px
}

.is-required label {
    font-weight: 700
}

.form-control {
    border: 1px solid #e6e6e6;
    border-radius: 3px;
    -webkit-box-shadow: inset 0 1px 1px rgba(230, 230, 230, .4);
    box-shadow: inset 0 1px 1px rgba(230, 230, 230, .4);
    width: 100%;
    padding: .5em;
    color: #525252;
    background: var(--color-white);
    margin-bottom: 10px;
    font-size: .875rem;
}

.form-control.textInput--full-width {
    width: 100%;
}

button.btn {
    border: none
}

input.btn {
    border: none
}

/**
 * Collection of CSS3 Keyframe Animations.
 */
/*
 * Scales the element up to it's initial proportions and fades it into the viewport.
 */
@-webkit-keyframes ScaledUpFadeIn {
    0% {
        -webkit-transform: scale(0.4);
        transform: scale(0.4);
        opacity: 0;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes ScaledUpFadeIn {
    0% {
        -webkit-transform: scale(0.4);
        transform: scale(0.4);
        opacity: 0;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

.u-aniScaledUpFadeIn {
    -webkit-animation: ScaledUpFadeIn 0.3s both;
    animation: ScaledUpFadeIn 0.3s both;
}

/*
 * Moves the element from the top into the users viewport.
 */
@-webkit-keyframes FlyDown {
    0% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes FlyDown {
    0% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

.u-aniFlyDown {
    -webkit-animation: FlyDown 0.3s both;
    animation: FlyDown 0.3s both;
}

/*
 * Moves the element from the bottom out of the users viewport.
 */
@-webkit-keyframes FlyUpOut {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
}

@keyframes FlyUpOut {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
}

.u-aniFlyUpOut {
    pointer-events: none;
    -webkit-animation: FlyUpOut 0.3s both;
    animation: FlyUpOut 0.3s both;
}

.u-aniFlyUpOut {
    pointer-events: none;
    -webkit-animation: FlyUpOut .3s both;
    animation: FlyUpOut .3s both
}

/*
 * Pulsates(fade out and in) an element.
 */
@-webkit-keyframes Pulsate {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes Pulsate {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

.u-aniPulsate {
    -webkit-animation: Pulsate 0.3s infinite both;
    animation: Pulsate 0.3s infinite both;
}

/**
 * Helper classes for brand related stylings.
 */
/*
 * Brand text styles.
 */
.u-brand {
    font-family: Helvetica, Arial, sans-serif;
    color: var(--primary-color);
}

/*
 * Brand color helpers.
 */
.u-brandColor-primary {
    color: var(--primary-color);
}

.u-brandColor-secondary {
    color: var(--grey-color);
}

.u-brandColor-tertiary {
    color: #454545;
}

.u-brandColor-quaternary {
    color: #FFFFFF;
}

.u-brandColor-quinary {
    color: var(--quinary-color);
}

/*
 * Brand font-family helper.
 */
.u-brandFace {
    font-family: Helvetica, Arial, sans-serif;
}

/*
 * Brand logos.
 */
.u-brandLogo {
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
}

.u-brandLogo--white {
    width: 150px;
    height: 28px;
    background-image: url(../Images/BrandLogo.svg);
}

/**
 * Display utilities
 */
/*
 * Display the target as an block element.
 */
.u-isBlock {
    display: block !important;
}

/*
 * Hide from both screenreaders and browsers: http://www.h5bp.com/u
 */
.u-isHidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide visually and from screenreaders, but maintain layout.
 */
.u-isInvisible {
    visibility: hidden;
}

/**
 * Layout utilities
 */
/*
 * Floats the element to the right boundary.
 */
.u-floatRight {
    float: right;
}

/*
 * Floats the element to the left boundary.
 */
.u-floatLeft {
    float: left;
}

/*
 * Clearfix for floated elements.
 */
.u-cf:before, .u-cf:after, .u-clearfix:before, .u-clearfix:after {
    content: '';
    display: table;
}

.u-cf:after, .u-clearfix:after {
    clear: both;
}

/**
 * Spacing utilities
 */
.u-m0 {
    margin: 0;
}

.u-ml0 {
    margin-left: 0;
}

.u-mr0 {
    margin-right: 0;
}

.u-mb0 {
    margin-bottom: 0;
}

.u-mt0 {
    margin-top: 0;
}

.u-p0 {
    padding: 0;
}

.u-pl0 {
    padding-left: 0;
}

.u-pr0 {
    padding-right: 0;
}

.u-pb0 {
    padding-bottom: 0;
}

.u-pt0 {
    padding-top: 0;
}

.u-m1\/1 {
    margin: 1.5rem;
}

.u-ml1\/1 {
    margin-left: 1.5rem;
}

.u-mr1\/1 {
    margin-right: 1.5rem;
}

.u-mb1\/1 {
    margin-bottom: 1.5rem;
}

.u-mt1\/1 {
    margin-top: 1.5rem;
}

.u-p1\/1 {
    padding: 1.5rem;
}

.u-pl1\/1 {
    padding-left: 1.5rem;
}

.u-pr1\/1 {
    padding-right: 1.5rem;
}

.u-pb1\/1 {
    padding-bottom: 1.5rem;
}

.u-pt1\/1 {
    padding-top: 1.5rem;
}

.u-m1\/2 {
    margin: 0.75rem;
}

.u-ml1\/2 {
    margin-left: 0.75rem;
}

.u-mr1\/2 {
    margin-right: 0.75rem;
}

.u-mb1\/2 {
    margin-bottom: 0.75rem;
}

.u-mt1\/2 {
    margin-top: 0.75rem;
}

.u-p1\/2 {
    padding: 0.75rem;
}

.u-pl1\/2 {
    padding-left: 0.75rem;
}

.u-pr1\/2 {
    padding-right: 0.75rem;
}

.u-pb1\/2 {
    padding-bottom: 0.75rem;
}

.u-pt1\/2 {
    padding-top: 0.75rem;
}

/**
 * Typographic utilities
 */
/*
 * Centers the text.
 */
.u-alignCenter {
    text-align: center;
}

/*
 * Aligns the text to the right boundary.
 */
.u-alignRight {
    text-align: right;
}

/*
 * Aligns the text to the left boundary.
 */
.u-alignLeft {
    text-align: left;
}

/*
 * Reduces the font-size to the smallest value.
 */
.u-tinyText {
    font-size: 0.8125rem;
}

/*
 * Enlarges the font-size to the smallest value.
 */
.u-largeText {
    font-size: 1.375rem;
}

/*
 * Break strings/text if it exceeds the boundaries of their container.
 */
.u-textBreak {
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

/*
 * Inverts the text on the element and it's siblings.
 */
.u-invertText, .u-invertText h1, .u-invertText h2, .u-invertText h3, .u-invertText h4, .u-invertText h5, .u-invertText h6 {
    color: white;
}

/*
 * Removes all standard stylings for a list element and it's siblings.
 */
.u-resetList {
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

/*
 * Removes all standard stylings for an anchor/link element.
 */
.u-linkReset {
    color: currentColor;
}

.u-linkReset:hover, .u-linkReset:active, .u-linkReset:focus {
    text-decoration: none;
}

p .u-linkReset {
    padding: 0;
    margin: 0;
}

.u-textShadow {
    text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.35);
}

/**
 * Sizes which are used in conjunction with other objects and abstractions like the grid system.
 */
.u-w1\/1 {
    width: 100%;
}

.u-w1\/2 {
    width: 50%;
}

.u-w1\/3 {
    width: 33.333%;
}

.u-w2\/3 {
    width: 66.666%;
}

.u-w1\/4 {
    width: 25%;
}

.u-w2\/4 {
    width: 50%;
}

.u-w3\/4 {
    width: 75%;
}

.u-w1\/5 {
    width: 20%;
}

.u-w2\/5 {
    width: 40%;
}

.u-w3\/5 {
    width: 60%;
}

.u-w4\/5 {
    width: 80%;
}

.u-w1\/6 {
    width: 16.666%;
}

.u-w2\/6 {
    width: 33.333%;
}

.u-w3\/6 {
    width: 50%;
}

.u-w4\/6 {
    width: 66.666%;
}

.u-w5\/6 {
    width: 83.333%;
}

.u-w1\/8 {
    width: 12.5%;
}

.u-w2\/8 {
    width: 25%;
}

.u-w3\/8 {
    width: 37.5%;
}

.u-w4\/8 {
    width: 50%;
}

.u-w5\/8 {
    width: 62.5%;
}

.u-w6\/8 {
    width: 75%;
}

.u-w7\/8 {
    width: 87.5%;
}

.u-w1\/10 {
    width: 10%;
}

.u-w2\/10 {
    width: 20%;
}

.u-w3\/10 {
    width: 30%;
}

.u-w4\/10 {
    width: 40%;
}

.u-w5\/10 {
    width: 50%;
}

.u-w6\/10 {
    width: 60%;
}

.u-w7\/10 {
    width: 70%;
}

.u-w8\/10 {
    width: 80%;
}

.u-w9\/10 {
    width: 90%;
}

.u-w1\/12 {
    width: 8.333%;
}

.u-w2\/12 {
    width: 16.666%;
}

.u-w3\/12 {
    width: 25%;
}

.u-w4\/12 {
    width: 33.333%;
}

.u-w5\/12 {
    width: 41.666%;
}

.u-w6\/12 {
    width: 50%;
}

.u-w7\/12 {
    width: 58.333%;
}

.u-w8\/12 {
    width: 66.666%;
}

.u-w9\/12 {
    width: 75%;
}

.u-w10\/12 {
    width: 62.5%;
}

.u-w11\/12 {
    width: 91.666%;
}

@media screen and (min-width: 300px) {
    .u-ws1\/1 {
        width: 100%;
    }

    .u-ws1\/2 {
        width: 50%;
    }

    .u-ws1\/3 {
        width: 33.333%;
    }

    .u-ws2\/3 {
        width: 66.666%;
    }

    .u-ws1\/4 {
        width: 25%;
    }

    .u-ws2\/4 {
        width: 50%;
    }

    .u-ws3\/4 {
        width: 75%;
    }

    .u-ws1\/5 {
        width: 20%;
    }

    .u-ws2\/5 {
        width: 40%;
    }

    .u-ws3\/5 {
        width: 60%;
    }

    .u-ws4\/5 {
        width: 80%;
    }

    .u-ws1\/6 {
        width: 16.666%;
    }

    .u-ws2\/6 {
        width: 33.333%;
    }

    .u-ws3\/6 {
        width: 50%;
    }

    .u-ws4\/6 {
        width: 66.666%;
    }

    .u-ws5\/6 {
        width: 83.333%;
    }

    .u-ws1\/8 {
        width: 12.5%;
    }

    .u-ws2\/8 {
        width: 25%;
    }

    .u-ws3\/8 {
        width: 37.5%;
    }

    .u-ws4\/8 {
        width: 50%;
    }

    .u-ws5\/8 {
        width: 62.5%;
    }

    .u-ws6\/8 {
        width: 75%;
    }

    .u-ws7\/8 {
        width: 87.5%;
    }

    .u-ws1\/10 {
        width: 10%;
    }

    .u-ws2\/10 {
        width: 20%;
    }

    .u-ws3\/10 {
        width: 30%;
    }

    .u-ws4\/10 {
        width: 40%;
    }

    .u-ws5\/10 {
        width: 50%;
    }

    .u-ws6\/10 {
        width: 60%;
    }

    .u-ws7\/10 {
        width: 70%;
    }

    .u-ws8\/10 {
        width: 80%;
    }

    .u-ws9\/10 {
        width: 90%;
    }

    .u-ws1\/12 {
        width: 8.333%;
    }

    .u-ws2\/12 {
        width: 16.666%;
    }

    .u-ws3\/12 {
        width: 25%;
    }

    .u-ws4\/12 {
        width: 33.333%;
    }

    .u-ws5\/12 {
        width: 41.666%;
    }

    .u-ws6\/12 {
        width: 50%;
    }

    .u-ws7\/12 {
        width: 58.333%;
    }

    .u-ws8\/12 {
        width: 66.666%;
    }

    .u-ws9\/12 {
        width: 75%;
    }

    .u-ws10\/12 {
        width: 62.5%;
    }

    .u-ws11\/12 {
        width: 91.666%;
    }
}

@media screen and (min-width: 700px) {
    .u-wm1\/1 {
        width: 100%;
    }

    .u-wm1\/2 {
        width: 50%;
    }

    .u-wm1\/3 {
        width: 33.333%;
    }

    .u-wm2\/3 {
        width: 66.666%;
    }

    .u-wm1\/4 {
        width: 25%;
    }

    .u-wm2\/4 {
        width: 50%;
    }

    .u-wm3\/4 {
        width: 75%;
    }

    .u-wm1\/5 {
        width: 20%;
    }

    .u-wm2\/5 {
        width: 40%;
    }

    .u-wm3\/5 {
        width: 60%;
    }

    .u-wm4\/5 {
        width: 80%;
    }

    .u-wm1\/6 {
        width: 16.666%;
    }

    .u-wm2\/6 {
        width: 33.333%;
    }

    .u-wm3\/6 {
        width: 50%;
    }

    .u-wm4\/6 {
        width: 66.666%;
    }

    .u-wm5\/6 {
        width: 83.333%;
    }

    .u-wm1\/8 {
        width: 12.5%;
    }

    .u-wm2\/8 {
        width: 25%;
    }

    .u-wm3\/8 {
        width: 37.5%;
    }

    .u-wm4\/8 {
        width: 50%;
    }

    .u-wm5\/8 {
        width: 62.5%;
    }

    .u-wm6\/8 {
        width: 75%;
    }

    .u-wm7\/8 {
        width: 87.5%;
    }

    .u-wm1\/10 {
        width: 10%;
    }

    .u-wm2\/10 {
        width: 20%;
    }

    .u-wm3\/10 {
        width: 30%;
    }

    .u-wm4\/10 {
        width: 40%;
    }

    .u-wm5\/10 {
        width: 50%;
    }

    .u-wm6\/10 {
        width: 60%;
    }

    .u-wm7\/10 {
        width: 70%;
    }

    .u-wm8\/10 {
        width: 80%;
    }

    .u-wm9\/10 {
        width: 90%;
    }

    .u-wm1\/12 {
        width: 8.333%;
    }

    .u-wm2\/12 {
        width: 16.666%;
    }

    .u-wm3\/12 {
        width: 25%;
    }

    .u-wm4\/12 {
        width: 33.333%;
    }

    .u-wm5\/12 {
        width: 41.666%;
    }

    .u-wm6\/12 {
        width: 50%;
    }

    .u-wm7\/12 {
        width: 58.333%;
    }

    .u-wm8\/12 {
        width: 66.666%;
    }

    .u-wm9\/12 {
        width: 75%;
    }

    .u-wm10\/12 {
        width: 62.5%;
    }

    .u-wm11\/12 {
        width: 91.666%;
    }
}

@media screen and (min-width: 1200px) {
    .u-wl1\/1 {
        width: 100%;
    }

    .u-wl1\/2 {
        width: 50%;
    }

    .u-wl1\/3 {
        width: 33.333%;
    }

    .u-wl2\/3 {
        width: 66.666%;
    }

    .u-wl1\/4 {
        width: 25%;
    }

    .u-wl2\/4 {
        width: 50%;
    }

    .u-wl3\/4 {
        width: 75%;
    }

    .u-wl1\/5 {
        width: 20%;
    }

    .u-wl2\/5 {
        width: 40%;
    }

    .u-wl3\/5 {
        width: 60%;
    }

    .u-wl4\/5 {
        width: 80%;
    }

    .u-wl1\/6 {
        width: 16.666%;
    }

    .u-wl2\/6 {
        width: 33.333%;
    }

    .u-wl3\/6 {
        width: 50%;
    }

    .u-wl4\/6 {
        width: 66.666%;
    }

    .u-wl5\/6 {
        width: 83.333%;
    }

    .u-wl1\/8 {
        width: 12.5%;
    }

    .u-wl2\/8 {
        width: 25%;
    }

    .u-wl3\/8 {
        width: 37.5%;
    }

    .u-wl4\/8 {
        width: 50%;
    }

    .u-wl5\/8 {
        width: 62.5%;
    }

    .u-wl6\/8 {
        width: 75%;
    }

    .u-wl7\/8 {
        width: 87.5%;
    }

    .u-wl1\/10 {
        width: 10%;
    }

    .u-wl2\/10 {
        width: 20%;
    }

    .u-wl3\/10 {
        width: 30%;
    }

    .u-wl4\/10 {
        width: 40%;
    }

    .u-wl5\/10 {
        width: 50%;
    }

    .u-wl6\/10 {
        width: 60%;
    }

    .u-wl7\/10 {
        width: 70%;
    }

    .u-wl8\/10 {
        width: 80%;
    }

    .u-wl9\/10 {
        width: 90%;
    }

    .u-wl1\/12 {
        width: 8.333%;
    }

    .u-wl2\/12 {
        width: 16.666%;
    }

    .u-wl3\/12 {
        width: 25%;
    }

    .u-wl4\/12 {
        width: 33.333%;
    }

    .u-wl5\/12 {
        width: 41.666%;
    }

    .u-wl6\/12 {
        width: 50%;
    }

    .u-wl7\/12 {
        width: 58.333%;
    }

    .u-wl8\/12 {
        width: 66.666%;
    }

    .u-wl9\/12 {
        width: 75%;
    }

    .u-wl10\/12 {
        width: 62.5%;
    }

    .u-wl11\/12 {
        width: 91.666%;
    }
}

/**
 * Alert
*/
/*
 * The base class for all alerts.
 */
.alert__heading {
    font-size: 2rem;
}

/*
 * Display a positive / success alert to the user.
 */
.alert--success {
    background-color: #8CD700;
    color: white;
}

/*
 * Display a negative / failure alert to the user.
 */
.alert--failure {
    background-color: #ff0000;
    color: white;
}

/*
 * Display a negative / failure alert to the user.
 */
.alert--warning {
    background-color: #F8EF78;
    color: black;
}

/**
 * Base and high-level wrapper elements
 */
body {
    /*height: 100%;*/
    margin: 0;
    font: 400 100%/1.5 "HelveticaNeueW01-45Ligh", Arial, "Helvetica Neue", Helvetica, sans-serif;
    text-align: left;
    color: var(--grey-color);
    background: #FFFFFF;
}

.mb-2 {
    margin-bottom: 0.5rem !important
}

.mt-2 {
    margin-top: 0.5rem !important
}

.page {
    position: relative;
    padding-bottom: 75px;
    min-height: 100vh;
    width: 100%;
    max-width: 1920px;
    background: #FFFFFF;
    margin-left: auto;
    margin-right: auto;
}

.siteWrapper {
    width: 100%;
    min-height: 100%;
    position: relative;
    background-color: transparent;
}

@media screen and (min-width: 300px) {
    .siteWrapper {
        width: 100%;
    }
}

@media screen and (min-width: 700px) {
    .siteWrapper {
        width: 100%;
    }
}

@media screen and (min-width: 1200px) {
    .siteWrapper {
        width: 80%;
        max-width: 75em;
        margin-left: auto;
        margin-right: auto;
    }
}

.siteWrapper--full {
    width: 100% !important;
    max-width: 100% !important;
}

.siteContent {
    min-height: 300px;
    background-color: #fff;
}

.siteContent .g {
    margin-bottom: 20px;
}

/**
 * Buttons
*/
/*
 * The base class for all buttons.
 */
.btn {
    display: inline-block;
    padding: 1em 2em;
    cursor: pointer;
    white-space: nowrap;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    font-size: 1em;
    font-weight: 700;
    line-height: 1;
    color: #FFF;
    background: var(--primary-color);
    vertical-align: top;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-decoration: none;
}

.btn:hover {
    text-decoration: none;
    -webkit-transform: scale(0.95, 0.95);
    -ms-transform: scale(0.95, 0.95);
    transform: scale(0.95, 0.95);
}

/*
 * Set the button width to the width of it's parent element.
 */
.btn--full {
    display: block;
    text-align: center;
    padding-right: 0;
    padding-left: 0;
    width: 100%;
}

/*
 * Fill the full button.
 */
.btn--filled {
    color: #fff;
    background-color: var(--primary-color);
}

.btn--filled:hover {
    color: #fff;
    background-color: #06315b;
    border-color: #0c64bb;
}

.btn--filled a {
    color: #fff;
}

/*
 * Set the button width to the width of it's parent element.
 */
.btn--invert {
    color: #fff;
    background-color: var(--primary-color);
}

.btn--invert:hover {
    border-color: var(--primary-color);
    background-color: #fff;
    color: var(--primary-color);
}

.btn--invert:hover a {
    color: var(--primary-color);
}

.btn--invert a {
    color: #fff;
}

/*
 * Visualize the disabled state of the button.
 */
.btn--disabled,
.btn[disabled] {
    color: var(--grey-color);
    pointer-events: none;
    opacity: .5;
}

/*
 * Visualize the positive purpose/action of the button.
 */
.btn--positive {
    color: #8CD700;
}

.btn--positive:hover {
    background: #8CD700;
    border-color: #8CD700;
    color: #fff;
}

/*
 * Visualize the negative purpose/action of the button.
 */
.btn--negative {
    color: #ff0000;
}

.btn--negative:hover {
    background: #ff0000;
    border-color: #ff0000;
    color: #fff;
}

.btn--large {
    font-size: 1.2em;
}

.btn--active {
    background: var(--primary-color);
    border-color: var(--primary-color);
    color: white;
}

.btn--submit {
    margin-left: 20px;
}

.btn--search {
    padding: .6em 1.5em;
}

/* ======== other styles ======== */
.btn-block {
    display: block;
    text-align: center;
    padding-right: 0;
    padding-left: 0;
    width: 100%
}

.btn .fa {
    /*float: left;*/
    margin-right: 5px;
    margin-left: -.5em
}



/**
 * Code & pre-formatted text elements
 */
code,
kbd,
pre,
samp {
    font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
    font-size: .8em;
}

code {
    background: #f2f2f2;
    padding: .3em .5em;
    border-radius: 2px;
}

pre code {
    padding: 0;
}

pre {
    white-space: pre-wrap;
    margin: 0 0 1.5em;
}

/**
 * Form
 */
/*
 * Form wrapper elements
 */
form {
    margin-top: 1em;
}

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

.error.input {
    position: relative;
}

.error.input,
.error.input .inputs-list {
    margin: 0 0 0.5em
}

.error.input .inputGroup label {
    margin-bottom: 1em;
    display: block;
}

.help-inline {
    position: absolute;
    z-index: 1;
    top: -40px;
    left: 0
}

.help-inline .help-content {
    font-size: 1em;
    position: relative;
    background-color: rgba(255, 0, 0, 1);
    color: rgba(0, 0, 0, .7);
    padding: 5px 10px;
    -webkit-box-shadow: 0 0 1px 0 #515151;
    box-shadow: 0 0 1px 0 #515151;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.help-inline .help-content:after, .help-inline .help-content:before {
    content: "";
    position: absolute;
    background: #fff
}

.help-inline .help-content:after {
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid rgb(255, 0, 0);
    /*background-color: rgb(255, 0, 0);*/
    width: 0;
    height: 0;
    z-index: 1;
    bottom: -15px;
    left: 15px;
    background: transparent;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.help-block {
    display: block;
    margin-top: 5px;
    margin-bottom: 10px;
    color: #858d8f;
}

/**
 * Headings
 */
/*
 * The base class for all headings.
 */
/*
 * Heading modifiers
 * Styles the heading without changing it's importance for SEO robots etc.
 */
h1, .h1 {
    font-size: 30px;
    font-weight: 500;
    margin-top: 0;
    margin-bottom: .3em;
    font-family: "Roboto", sans-serif;
    line-height: 1.1;
    color: var(--primary-color);
    text-rendering: optimizeLegibility;
}

@media screen and (min-width: 300px) {
    h1, .h1 {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 1200px) {
    h1, .h1 {
        padding-left: 0;
        padding-right: 0;
    }
}

h2, .h2 {
    font-size: 26px;
    font-weight: 500;
    margin-top: 0;
    margin-bottom: .3em;
    font-family: "Roboto", sans-serif;
    line-height: 1.1;
    color: var(--primary-color);
    text-rendering: optimizeLegibility;
}

@media screen and (min-width: 300px) {
    h2, .h2 {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 1200px) {
    h2, .h2 {
        padding-left: 0;
        padding-right: 0;
    }
}

h3, .h3 {
    font-size: 22px;
    margin-top: 0;
    margin-bottom: .3em;
    font-family: "Roboto", sans-serif;
    line-height: 1.1;
    color: var(--primary-color);
    text-rendering: optimizeLegibility;
}

@media screen and (min-width: 300px) {
    h3, .h3 {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 1200px) {
    h3, .h3 {
        padding-left: 0;
        padding-right: 0;
    }
}

h4, .h4 {
    font-size: 18px;
    font-weight: 200;
    margin-top: 0;
    margin-bottom: .3em;
    font-family: "Roboto", sans-serif;
    line-height: 1.1;
    color: var(--primary-color);
    text-rendering: optimizeLegibility;
}

@media screen and (min-width: 300px) {
    h4, .h4 {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 1200px) {
    h4, .h4 {
        padding-left: 0;
        padding-right: 0;
    }
}

h5, .h5 {
    font-size: 16px;
    font-weight: 200;
    margin-top: 0;
    margin-bottom: .3em;
    font-family: "Roboto", sans-serif;
    line-height: 1.1;
    color: var(--primary-color);
    text-rendering: optimizeLegibility;
}

@media screen and (min-width: 300px) {
    h5, .h5 {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 1200px) {
    h5, .h5 {
        padding-left: 0;
        padding-right: 0;
    }
}

h6, .h6 {
    font-size: 14px;
    font-weight: 200;
    margin-top: 0;
    margin-bottom: .3em;
    font-family: "Roboto", sans-serif;
    line-height: 1.1;
    color: var(--primary-color);
    text-rendering: optimizeLegibility;
}

@media screen and (min-width: 300px) {
    h6, .h6 {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 1200px) {
    h6, .h6 {
        padding-left: 0;
        padding-right: 0;
    }
}

.site-heading {
    margin-top: 0;
    margin-bottom: .3em;
    font-family: "Roboto", sans-serif;
    line-height: 1.1;
    color: var(--primary-color);
    text-rendering: optimizeLegibility;
}

@media screen and (min-width: 300px) {
    .site-heading {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 1200px) {
    .site-heading {
        padding-left: 0;
        padding-right: 0;
    }
}

.heading--big {
    font-size: 30px;
}

.site-heading h3 {
    font-weight: 400;
    font-size: 17px;
    margin-top: 6px;
}


.row {
    margin-left: -15px;
    margin-right: -15px
}

.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px
}

.col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
    float: left
}

.col-xs-1 {
    width: 8.33333%
}

.col-xs-2 {
    width: 16.66667%
}

.col-xs-3 {
    width: 25%
}

.col-xs-4 {
    width: 33.33333%
}

.col-xs-5 {
    width: 41.66667%
}

.col-xs-6 {
    width: 50%
}

.col-xs-7 {
    width: 58.33333%
}

.col-xs-8 {
    width: 66.66667%
}

.col-xs-9 {
    width: 75%
}

.col-xs-10 {
    width: 83.33333%
}

.col-xs-11 {
    width: 91.66667%
}

.col-xs-12 {
    width: 100%
}

.col-xs-pull-0 {
    right: auto
}

.col-xs-pull-1 {
    right: 8.33333%
}

.col-xs-pull-2 {
    right: 16.66667%
}

.col-xs-pull-3 {
    right: 25%
}

.col-xs-pull-4 {
    right: 33.33333%
}

.col-xs-pull-5 {
    right: 41.66667%
}

.col-xs-pull-6 {
    right: 50%
}

.col-xs-pull-7 {
    right: 58.33333%
}

.col-xs-pull-8 {
    right: 66.66667%
}

.col-xs-pull-9 {
    right: 75%
}

.col-xs-pull-10 {
    right: 83.33333%
}

.col-xs-pull-11 {
    right: 91.66667%
}

.col-xs-pull-12 {
    right: 100%
}

.col-xs-push-0 {
    left: auto
}

.col-xs-push-1 {
    left: 8.33333%
}

.col-xs-push-2 {
    left: 16.66667%
}

.col-xs-push-3 {
    left: 25%
}

.col-xs-push-4 {
    left: 33.33333%
}

.col-xs-push-5 {
    left: 41.66667%
}

.col-xs-push-6 {
    left: 50%
}

.col-xs-push-7 {
    left: 58.33333%
}

.col-xs-push-8 {
    left: 66.66667%
}

.col-xs-push-9 {
    left: 75%
}

.col-xs-push-10 {
    left: 83.33333%
}

.col-xs-push-11 {
    left: 91.66667%
}

.col-xs-push-12 {
    left: 100%
}

.col-xs-offset-0 {
    margin-left: 0
}

.col-xs-offset-1 {
    margin-left: 8.33333%
}

.col-xs-offset-2 {
    margin-left: 16.66667%
}

.col-xs-offset-3 {
    margin-left: 25%
}

.col-xs-offset-4 {
    margin-left: 33.33333%
}

.col-xs-offset-5 {
    margin-left: 41.66667%
}

.col-xs-offset-6 {
    margin-left: 50%
}

.col-xs-offset-7 {
    margin-left: 58.33333%
}

.col-xs-offset-8 {
    margin-left: 66.66667%
}

.col-xs-offset-9 {
    margin-left: 75%
}

.col-xs-offset-10 {
    margin-left: 83.33333%
}

.col-xs-offset-11 {
    margin-left: 91.66667%
}

.col-xs-offset-12 {
    margin-left: 100%
}

@media (min-width: 768px) {
    .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9 {
        float: left
    }

    .col-sm-1 {
        width: 8.33333%
    }

    .col-sm-2 {
        width: 16.66667%
    }

    .col-sm-3 {
        width: 25%
    }

    .col-sm-4 {
        width: 33.33333%
    }

    .col-sm-5 {
        width: 41.66667%
    }

    .col-sm-6 {
        width: 50%
    }

    .col-sm-7 {
        width: 58.33333%
    }

    .col-sm-8 {
        width: 66.66667%
    }

    .col-sm-9 {
        width: 75%
    }

    .col-sm-10 {
        width: 83.33333%
    }

    .col-sm-11 {
        width: 91.66667%
    }

    .col-sm-12 {
        width: 100%
    }

    .col-sm-pull-0 {
        right: auto
    }

    .col-sm-pull-1 {
        right: 8.33333%
    }

    .col-sm-pull-2 {
        right: 16.66667%
    }

    .col-sm-pull-3 {
        right: 25%
    }

    .col-sm-pull-4 {
        right: 33.33333%
    }

    .col-sm-pull-5 {
        right: 41.66667%
    }

    .col-sm-pull-6 {
        right: 50%
    }

    .col-sm-pull-7 {
        right: 58.33333%
    }

    .col-sm-pull-8 {
        right: 66.66667%
    }

    .col-sm-pull-9 {
        right: 75%
    }

    .col-sm-pull-10 {
        right: 83.33333%
    }

    .col-sm-pull-11 {
        right: 91.66667%
    }

    .col-sm-pull-12 {
        right: 100%
    }

    .col-sm-push-0 {
        left: auto
    }

    .col-sm-push-1 {
        left: 8.33333%
    }

    .col-sm-push-2 {
        left: 16.66667%
    }

    .col-sm-push-3 {
        left: 25%
    }

    .col-sm-push-4 {
        left: 33.33333%
    }

    .col-sm-push-5 {
        left: 41.66667%
    }

    .col-sm-push-6 {
        left: 50%
    }

    .col-sm-push-7 {
        left: 58.33333%
    }

    .col-sm-push-8 {
        left: 66.66667%
    }

    .col-sm-push-9 {
        left: 75%
    }

    .col-sm-push-10 {
        left: 83.33333%
    }

    .col-sm-push-11 {
        left: 91.66667%
    }

    .col-sm-push-12 {
        left: 100%
    }

    .col-sm-offset-0 {
        margin-left: 0
    }

    .col-sm-offset-1 {
        margin-left: 8.33333%
    }

    .col-sm-offset-2 {
        margin-left: 16.66667%
    }

    .col-sm-offset-3 {
        margin-left: 25%
    }

    .col-sm-offset-4 {
        margin-left: 33.33333%
    }

    .col-sm-offset-5 {
        margin-left: 41.66667%
    }

    .col-sm-offset-6 {
        margin-left: 50%
    }

    .col-sm-offset-7 {
        margin-left: 58.33333%
    }

    .col-sm-offset-8 {
        margin-left: 66.66667%
    }

    .col-sm-offset-9 {
        margin-left: 75%
    }

    .col-sm-offset-10 {
        margin-left: 83.33333%
    }

    .col-sm-offset-11 {
        margin-left: 91.66667%
    }

    .col-sm-offset-12 {
        margin-left: 100%
    }
}

@media (min-width: 992px) {
    .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9 {
        float: left
    }

    .col-md-1 {
        width: 8.33333%
    }

    .col-md-2 {
        width: 16.66667%
    }

    .col-md-3 {
        width: 25%
    }

    .col-md-4 {
        width: 33.33333%
    }

    .col-md-5 {
        width: 41.66667%
    }

    .col-md-6 {
        width: 50%
    }

    .col-md-7 {
        width: 58.33333%
    }

    .col-md-8 {
        width: 66.66667%
    }

    .col-md-9 {
        width: 75%
    }

    .col-md-10 {
        width: 83.33333%
    }

    .col-md-11 {
        width: 91.66667%
    }

    .col-md-12 {
        width: 100%
    }

    .col-md-pull-0 {
        right: auto
    }

    .col-md-pull-1 {
        right: 8.33333%
    }

    .col-md-pull-2 {
        right: 16.66667%
    }

    .col-md-pull-3 {
        right: 25%
    }

    .col-md-pull-4 {
        right: 33.33333%
    }

    .col-md-pull-5 {
        right: 41.66667%
    }

    .col-md-pull-6 {
        right: 50%
    }

    .col-md-pull-7 {
        right: 58.33333%
    }

    .col-md-pull-8 {
        right: 66.66667%
    }

    .col-md-pull-9 {
        right: 75%
    }

    .col-md-pull-10 {
        right: 83.33333%
    }

    .col-md-pull-11 {
        right: 91.66667%
    }

    .col-md-pull-12 {
        right: 100%
    }

    .col-md-push-0 {
        left: auto
    }

    .col-md-push-1 {
        left: 8.33333%
    }

    .col-md-push-2 {
        left: 16.66667%
    }

    .col-md-push-3 {
        left: 25%
    }

    .col-md-push-4 {
        left: 33.33333%
    }

    .col-md-push-5 {
        left: 41.66667%
    }

    .col-md-push-6 {
        left: 50%
    }

    .col-md-push-7 {
        left: 58.33333%
    }

    .col-md-push-8 {
        left: 66.66667%
    }

    .col-md-push-9 {
        left: 75%
    }

    .col-md-push-10 {
        left: 83.33333%
    }

    .col-md-push-11 {
        left: 91.66667%
    }

    .col-md-push-12 {
        left: 100%
    }

    .col-md-offset-0 {
        margin-left: 0
    }

    .col-md-offset-1 {
        margin-left: 8.33333%
    }

    .col-md-offset-2 {
        margin-left: 16.66667%
    }

    .col-md-offset-3 {
        margin-left: 25%
    }

    .col-md-offset-4 {
        margin-left: 33.33333%
    }

    .col-md-offset-5 {
        margin-left: 41.66667%
    }

    .col-md-offset-6 {
        margin-left: 50%
    }

    .col-md-offset-7 {
        margin-left: 58.33333%
    }

    .col-md-offset-8 {
        margin-left: 66.66667%
    }

    .col-md-offset-9 {
        margin-left: 75%
    }

    .col-md-offset-10 {
        margin-left: 83.33333%
    }

    .col-md-offset-11 {
        margin-left: 91.66667%
    }

    .col-md-offset-12 {
        margin-left: 100%
    }
}

@media (min-width: 1200px) {
    .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9 {
        float: left
    }

    .col-lg-1 {
        width: 8.33333%
    }

    .col-lg-2 {
        width: 16.66667%
    }

    .col-lg-3 {
        width: 25%
    }

    .col-lg-4 {
        width: 33.33333%
    }

    .col-lg-5 {
        width: 41.66667%
    }

    .col-lg-6 {
        width: 50%
    }

    .col-lg-7 {
        width: 58.33333%
    }

    .col-lg-8 {
        width: 66.66667%
    }

    .col-lg-9 {
        width: 75%
    }

    .col-lg-10 {
        width: 83.33333%
    }

    .col-lg-11 {
        width: 91.66667%
    }

    .col-lg-12 {
        width: 100%
    }

    .col-lg-pull-0 {
        right: auto
    }

    .col-lg-pull-1 {
        right: 8.33333%
    }

    .col-lg-pull-2 {
        right: 16.66667%
    }

    .col-lg-pull-3 {
        right: 25%
    }

    .col-lg-pull-4 {
        right: 33.33333%
    }

    .col-lg-pull-5 {
        right: 41.66667%
    }

    .col-lg-pull-6 {
        right: 50%
    }

    .col-lg-pull-7 {
        right: 58.33333%
    }

    .col-lg-pull-8 {
        right: 66.66667%
    }

    .col-lg-pull-9 {
        right: 75%
    }

    .col-lg-pull-10 {
        right: 83.33333%
    }

    .col-lg-pull-11 {
        right: 91.66667%
    }

    .col-lg-pull-12 {
        right: 100%
    }

    .col-lg-push-0 {
        left: auto
    }

    .col-lg-push-1 {
        left: 8.33333%
    }

    .col-lg-push-2 {
        left: 16.66667%
    }

    .col-lg-push-3 {
        left: 25%
    }

    .col-lg-push-4 {
        left: 33.33333%
    }

    .col-lg-push-5 {
        left: 41.66667%
    }

    .col-lg-push-6 {
        left: 50%
    }

    .col-lg-push-7 {
        left: 58.33333%
    }

    .col-lg-push-8 {
        left: 66.66667%
    }

    .col-lg-push-9 {
        left: 75%
    }

    .col-lg-push-10 {
        left: 83.33333%
    }

    .col-lg-push-11 {
        left: 91.66667%
    }

    .col-lg-push-12 {
        left: 100%
    }

    .col-lg-offset-0 {
        margin-left: 0
    }

    .col-lg-offset-1 {
        margin-left: 8.33333%
    }

    .col-lg-offset-2 {
        margin-left: 16.66667%
    }

    .col-lg-offset-3 {
        margin-left: 25%
    }

    .col-lg-offset-4 {
        margin-left: 33.33333%
    }

    .col-lg-offset-5 {
        margin-left: 41.66667%
    }

    .col-lg-offset-6 {
        margin-left: 50%
    }

    .col-lg-offset-7 {
        margin-left: 58.33333%
    }

    .col-lg-offset-8 {
        margin-left: 66.66667%
    }

    .col-lg-offset-9 {
        margin-left: 75%
    }

    .col-lg-offset-10 {
        margin-left: 83.33333%
    }

    .col-lg-offset-11 {
        margin-left: 91.66667%
    }

    .col-lg-offset-12 {
        margin-left: 100%
    }
}

.alert {
    padding: .75em;
    border-radius: 3px;
    background-color: #004085;
    color: #fff;
    margin: 10px auto;
    z-index: 999
}

.alert :last-child {
    margin-bottom: 0
}

.alert-heading {
    font-size: 1.5rem
}

.message-container > .alert {
    /*position: fixed;*/
    top: 20px;
    left: 30%;
    /*width: 40%;*/
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .3);
    box-shadow: 0 1px 3px rgba(0, 0, 0, .3)
}

.alert-OK, .alert-success {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb
}

.alert-OK h4, .alert-success h4 {
    color: #155724
}

.alert-Error, .alert-danger {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb
}

.alert-Notice, .alert-Warning, .alert-info, .alert-warning {
    background-color: #fff3cd;
    border: 1px solid #ffeeba
}

.alert-Error h4, .alert-danger h4 {
    color: #721c24
}

.alert-Notice, .alert-Notice h4, .alert-Warning, .alert-Warning h4, .alert-info, .alert-info h4, .alert-warning, .alert-warning h4 {
    color: #856404
}

/**
 * Form inputs
 */
/*
 * Base styling for form input fields.
 */
textarea {
    height: auto;
    min-height: 72px;
    resize: vertical;
    overflow: auto;
    vertical-align: top;
}

input::-webkit-datetime-edit {
    margin-top: -.17em;
    margin-bottom: -.17em;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
    font: 400 100%/1.5 "HelveticaNeueW01-45Ligh", Arial, "Helvetica Neue", Helvetica, sans-serif;
}

input:-moz-placeholder, textarea:-moz-placeholder {
    font: 400 100%/1.5 "HelveticaNeueW01-45Ligh", Arial, "Helvetica Neue", Helvetica, sans-serif;
}

input::-moz-placeholder, textarea::-moz-placeholder {
    font: 400 100%/1.5 "HelveticaNeueW01-45Ligh", Arial, "Helvetica Neue", Helvetica, sans-serif;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
    font: 400 100%/1.5 "HelveticaNeueW01-45Ligh", Arial, "Helvetica Neue", Helvetica, sans-serif;
}

input::placeholder, textarea::placeholder {
    font: 400 100%/1.5 "HelveticaNeueW01-45Ligh", Arial, "Helvetica Neue", Helvetica, sans-serif;
}

/*
 * The base class for all textInputs.
 */
.textInput {
    height: 36px;
    padding: .5em;
    background: var(--color-white);
    border: 1px solid #e6e6e6;
    border-radius: 3px;
    -webkit-box-shadow: inset 0 1px 1px rgba(230, 230, 230, 0.4);
    box-shadow: inset 0 1px 1px rgba(230, 230, 230, 0.4);
    font-size: 0.875rem;
    color: #525252;
    margin-bottom: 10px;
    width: 300px;
}

.textInput.textInput--full-width {
    width: 100%;
}

/*
 * Disabled state for inputs.
 */
.textInput[disabled],
.textInput--disabled {
    opacity: .5;
    pointer-events: none;
}

/*
 * Positive validated state for inputs.
 */
.textInput--success {
    border-color: #8CD700;
}

/*
 * Negative validated state for inputs.
 */
.textInput--failure {
    border-color: #ff0000;
}

/*
 * The base class for all textAreas.
 */
.textArea {
    height: 80px;
    padding: .2em .5em;
    background: var(--color-white);
    border: 1px solid #e6e6e6;
    border-radius: 3px;
    -webkit-box-shadow: inset 0 1px 1px rgba(230, 230, 230, 0.4);
    box-shadow: inset 0 1px 1px rgba(230, 230, 230, 0.4);
    font-size: 0.875rem;
    color: var(--grey-color);
    margin-bottom: 10px;
    width: 300px;
    max-width: 300px;
}

/**
 * Form elements
 */

/*
 * Base styling for all legends.
 */
legend {
    display: block;
    width: 100%;
    padding: 0;
    margin-bottom: 1.5em;
    border-bottom: 1px solid #e6e6e6;
    font-size: 1.25rem;
}

/**
 * Anchors
 */
/*
 * Base styling for all anchors/links.
 */
a {
    color: var(--primary-color);
    text-decoration: none;
    background: transparent;
}

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

a:active, a:hover {
    outline: 0;
}

p a {
    position: relative;
    margin: -.33em;
    padding: .33em;
}

/**
 * Lists
 */
menu, ol, ul {
    padding: 0 0 0 2.5em;
    margin: 0 0 1.5em;
}

li > ul, li > ol {
    margin-bottom: 0;
}

/**
 * Definitions
 */
dl {
    margin: 0 0 1.5em;
}

/*
 * Displays the definition element in a horizontal order.
 */
.dl--horizontal:before, .dl--horizontal:after {
    content: '';
    display: table;
}

.dl--horizontal:after {
    clear: both;
}

.dl--horizontal dt {
    width: 19%;
    float: left;
    overflow: hidden;
    clear: left;
    text-align: right;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

.dl--horizontal dd {
    margin-left: 21%;
}

/**
 * Media elements
 */
embed, iframe, object, img {
    max-width: 100%;
    border: 0;
}

img {
    vertical-align: middle;
}

figure {
    margin: 0;
}

figcaption {
    font-size: 0.875rem;
    padding: 10px 0;
}

audio, video, iframe {
    margin: 0 0 1.5em;
}

audio {
    min-width: 65%;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

svg:not(:root) {
    overflow: hidden;
}

/**
 * Quotes
 */
q {
    quotes: "\201C" "\201D" "\2018" "\2019";
}

blockquote {
    position: relative;
    margin: 0 0 1.4em;
    padding: 0 1.75em;
    font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
    font-style: italic;
    font-size: 2em;
    line-height: 1.4;
    font-weight: 200;
}

blockquote:before, blockquote:after {
    position: absolute;
    line-height: 0;
    font-size: 3em;
    font-family: "Helvetica Neue Bold", Helvetica, serif;
}

blockquote:before {
    content: '“';
    left: -5px;
    top: 28px;
    padding-right: .1em;
}

blockquote:after {
    content: '„';
    bottom: 15px;
    right: 0;
}

/**
 * Rulers
 */
hr {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    display: block;
    height: 0;
    padding: 0;
    margin: 3em 0 3em;
    border: 0;
    border-top: 1px solid #e6e6e6;
}

/**
 * Tables
 */
table {
    max-width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

th {
    text-align: left;
    vertical-align: bottom;
}

td {
    vertical-align: top;
}

/**
 * Table layout for block elements (div)
 */
.caption {
    display: table-caption;
    min-width: 100%;
    white-space: nowrap;
}

.table {
    display: table;
    border-collapse: collapse;
}

.tableHeading {
    display: table-row;
    font-weight: bold;
    border-bottom: 1px solid #fff;
}

.tableHeading .cell {
    display: table-cell;
    border: none;
    padding: 5px;
}

.group {
    display: table-row-group;
}

.row .cell {
    display: table-cell;
    border: none;
    padding: 5px;
}

/**
 * Typographic elements
 */
p {
    margin: 0 0 1.5em;
}

b, strong {
    font-weight: 700;
}

small {
    font-size: 80%;
}

abbr[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

mark {
    padding-left: .2em;
    padding-right: .2em;
    background: var(--primary-color);
    color: white;
}

dfn {
    font-style: italic;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

/**
 * Form
 */
/*
 * The base class for all forms.
 */
.form {
    margin-bottom: 1.5rem;
}

.form__item {
    margin-bottom: 0.75rem;
}

/*
 * Display a `<form>` and all it's content in a horizontal order.
 */
.form--inline label, .form--inline button, .form--inline input, .form--inline select, .form--inline textarea, .form--inline .form__item {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
}

.form--inline .form__item {
    margin-right: 1em;
}

.form--inline label {
    margin-right: .3em;
}

#register h2, #register h3 {
    padding: 1em 0 .5em;
}

.btn--submit {
    margin: 1em 0 0;
}

/**
 * Grids
 */
/*
 * Grid object which is based on the util width classes.
 */
.g:before, .g:after, .grid:before, .grid:after {
    content: '';
    display: table;
}

.g:after, .grid:after {
    clear: both;
}

@media screen and (min-width: 1200px) {
    .g,
    .grid {
        margin-left: -20px;
        margin-right: -20px;
    }
}

/*
 * Grid item, floats itself into the grid and depends on the u-w#/# util classes.
 */
.gi, .grid__item {
    float: left;
    padding-left: 20px;
    padding-right: 20px;
    min-height: 1px;
}

@media screen and (min-width: 300px) {
    /*.gi, .grid__item {
        margin-top: 20px;
        margin-bottom: 20px;
    }*/

    /*.gi:last-child, .grid__item:last-child {
        margin-bottom: 20px;
    }*/
}

@media screen and (min-width: 1200px) {
    /*.gi, .grid__item {
        margin-top: 20px;
        margin-bottom: 20px;
    }*/
}

/**
 * Navigations
 */
/*
 * Throws a list into horizontal mode.
 */
.nav {
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

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

.nav > li > a {
    display: block;
    color: currentColor;
}

.nav > li > a:hover, .nav > li > a:active, .nav > li > a:focus {
    text-decoration: none;
}

p .nav > li > a {
    padding: 0;
    margin: 0;
}

/*
 * Throws a list into vertical mode.
 */
.nav--stacked > li {
    display: list-item;
}

/*
 * Forces a list to occupy 100% of the available width of it's parent.
 */
.nav--fit {
    display: table;
    width: 100%;
}

.nav--fit > li {
    display: table-cell;
}

.naviContainer {
    background-color: var(--primary-color);
    height: 57px;
    position: relative;
    z-index: 1;
    border-bottom: 1px solid var(--quinary-color)
}

.naviContainer .naviWrapper {
    width: 75em;
    position: relative;
    margin: 0 auto
}

@media screen and (min-width: 300px) {
    .naviContainer .naviWrapper {
        width: 100%
    }
}

@media screen and (min-width: 1200px) {
    .naviContainer .naviWrapper {
        width: 75em
    }
}

@media screen and (min-width: 300px) {
    .naviContainer .navBar .collapse:active .nav,
    .naviContainer .navBar .collapse:focus .nav,
    .naviContainer .navBar .collapse:hover .nav {
        display: block
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li a:hover,
    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li .thirdLevel li a:hover {
        text-decoration: none
    }

    .naviContainer .navBar .collapse {
        width: 100%;
        z-index: 10
    }

    .naviContainer .navBar .collapse:before {
        font-family: FontAwesome;
        content: "\f0c9";
        font-size: 30px;
        color: #fff;
        cursor: pointer;
        position: absolute;
        z-index: 100;
        top: 6px;
        right: 20px
    }

    .naviContainer .navBar .collapse .nav {
        width: 100%;
        background: var(--primary-color);
        padding: 3.2em 0 0;
        display: none
    }

    .naviContainer .navBar .collapse .nav:focus, .naviContainer .navBar .collapse .nav:hover {
        display: block
    }

    .naviContainer .navBar .collapse .nav > li {
        display: inline-block;
        float: none;
        width: 100%;
        position: relative
    }

    .naviContainer .navBar .collapse .nav > li.hasSubnav:after {
        font-family: FontAwesome;
        content: "\f107";
        font-size: 30px;
        color: #fff;
        cursor: pointer;
        position: absolute;
        display: inline-block;
        top: 5px;
        padding: 0 10px;
        right: 10px;
        z-index: 100;
        -webkit-transition: all 1s ease;
        transition: all 1s ease
    }

    .naviContainer .navBar .collapse .nav > li:active .secondLevel .subnavi, .naviContainer .navBar .collapse .nav > li:active .secondLevel .subnavi--justTwo, .naviContainer .navBar .collapse .nav > li:focus .secondLevel .subnavi, .naviContainer .navBar .collapse .nav > li:focus .secondLevel .subnavi--justTwo, .naviContainer .navBar .collapse .nav > li:hover .secondLevel .subnavi, .naviContainer .navBar .collapse .nav > li:hover .secondLevel .subnavi--justTwo {
        max-height: 560px;
        overflow: auto;
        background-color: #fff
    }

    .naviContainer .navBar .collapse .nav > li:active .secondLevel .subnavi--justTwo > li > a, .naviContainer .navBar .collapse .nav > li:active .secondLevel .subnavi > li > a, .naviContainer .navBar .collapse .nav > li:focus .secondLevel .subnavi--justTwo > li > a, .naviContainer .navBar .collapse .nav > li:focus .secondLevel .subnavi > li > a, .naviContainer .navBar .collapse .nav > li:hover .secondLevel .subnavi--justTwo > li > a, .naviContainer .navBar .collapse .nav > li:hover .secondLevel .subnavi > li > a {
        color: var(--primary-color);
        padding: .3em 1em
    }

    .naviContainer .navBar .collapse .nav > li.hasSubnav:active, .naviContainer .navBar .collapse .nav > li.hasSubnav:focus, .naviContainer .navBar .collapse .nav > li.hasSubnav:hover {
        background-color: #fff;
        border-bottom: 1px solid var(--quinary-color)
    }

    .naviContainer .navBar .collapse .nav > li.hasSubnav:active > a, .naviContainer .navBar .collapse .nav > li.hasSubnav:focus > a, .naviContainer .navBar .collapse .nav > li.hasSubnav:hover > a {
        color: var(--primary-color)
    }

    .naviContainer .navBar .collapse .nav > li.hasSubnav:active:after, .naviContainer .navBar .collapse .nav > li.hasSubnav:focus:after, .naviContainer .navBar .collapse .nav > li.hasSubnav:hover:after {
        color: var(--primary-color);
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg)
    }

    .naviContainer .navBar .collapse .nav > li > a {
        padding: 1em;
        color: #fff;
        display: block;
        width: 100%
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel {
        padding-bottom: 1em
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi {
        position: relative;
        background-color: #0b57a3;
        padding: 0;
        margin: 0;
        width: 100%;
        top: 0;
        max-height: 0;
        overflow: hidden;
        -webkit-transition: max-height 1s ease;
        transition: max-height 1s ease
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li {
        margin-left: 5px;
        padding: .3em
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li > a {
        color: #fff
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li a {
        display: inline-block
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li .thirdLevel {
        padding-left: 0;
        margin-bottom: 0;
        list-style: none
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li .thirdLevel li a {
        color: var(--grey-color);
        padding: .3em 2em
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo {
        position: relative;
        background-color: #0b57a3;
        padding: 0;
        margin: 0;
        width: 100%;
        top: 0;
        max-height: 0;
        overflow: hidden;
        -webkit-transition: max-height 1s ease;
        transition: max-height 1s ease
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li {
        margin-left: 5px;
        padding: .3em;
        margin-bottom: 0
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li > a {
        color: #fff
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel {
        padding-left: 0;
        margin-bottom: 0;
        list-style: none
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li.hasSubnav {
        margin-bottom: .3em
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li a {
        color: var(--grey-color);
        padding: .3em 2em
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel {
        padding-left: 0;
        margin-bottom: 0;
        list-style: none
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel:after, .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel:before {
        content: '';
        display: table
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel:after {
        clear: both
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel li {
        display: block;
        width: 100%;
        float: none;
        margin-bottom: 0
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel li a {
        padding: .3em 2.5em;
        color: var(--grey-color)
    }
}

@media screen and (min-width: 1200px) {
    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li > a:hover, .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li > a:hover {
        text-decoration: none
    }

    .naviContainer .navBar .collapse {
        width: 100%;
        z-index: 10
    }

    .naviContainer .navBar .collapse:hover .nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .naviContainer .navBar .collapse:before {
        font-family: FontAwesome;
        content: " ";
        font-size: 30px;
        color: #fff;
        cursor: pointer;
        position: relative;
        z-index: 100
    }

    .naviContainer .navBar .collapse .nav {
        margin-bottom: 0;
        list-style: none;
        background: 0 0;
        padding: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .naviContainer .navBar .collapse .nav > li {
        display: block;
        -ms-flex-item-align: center;
        align-self: center;
        width: auto;
        margin: 0;
        position: static !important;
        font-family: Roboto, sans-serif;
        font-weight: 300
    }

    .naviContainer .navBar .collapse .nav > li:hover {
        background-color: #fff
    }

    .naviContainer .navBar .collapse .nav > li:hover > a {
        color: var(--primary-color);
        text-decoration: none
    }

    .naviContainer .navBar .collapse .nav > li:hover .secondLevel {
        display: block;
        overflow: hidden;
        background-color: transparent
    }

    .naviContainer .navBar .collapse .nav > li:hover .secondLevel .subnavi--justTwo > li > a {
        padding: 0 0 .6em
    }

    .naviContainer .navBar .collapse .nav > li:hover .secondLevel .subnavi {
        max-height: 610px;
        overflow: hidden
    }

    .naviContainer .navBar .collapse .nav > li:hover .secondLevel .subnavi > li > a {
        padding: .3em 0
    }

    .naviContainer .navBar .collapse .nav > li.hasSubnav:active:after, .naviContainer .navBar .collapse .nav > li.hasSubnav:after {
        content: ''
    }

    .naviContainer .navBar .collapse .nav > li.hasSubnav:active, .naviContainer .navBar .collapse .nav > li.hasSubnav:hover {
        border-bottom: none
    }

    .naviContainer .navBar .collapse .nav > li > a {
        padding: 1em 1.4em;
        text-transform: uppercase
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel {
        display: none;
        overflow: hidden;
        margin: 0 10px 10px;
        position: absolute;
        top: 56px;
        width: 76em;
        left: -20px;
        background-color: transparent
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi, .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo {
        background-color: #fff;
        height: auto;
        min-height: 50px;
        max-height: 560px;
        -ms-flex-wrap: wrap;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        list-style: none
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi {
        width: 75em;
        padding: .5em 0;
        -webkit-box-shadow: 1px 1px 5px 1px #666;
        box-shadow: 1px 1px 5px 1px #666;
        margin: 0 10px 10px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: wrap;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi:hover {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li {
        margin-bottom: 1em;
        width: 24.5%;
        padding: 1em
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li.size-2 {
        width: 49.5%
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li.size-3 {
        width: 74%
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li.size-4 {
        width: 100%
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li > a {
        color: var(--primary-color);
        border-bottom: 1px solid var(--primary-color);
        width: 100%
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li .thirdLevel {
        margin-top: .5em
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li .thirdLevel li {
        border: none
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi > li .thirdLevel li a {
        padding: .3em 0;
        font-size: 80%
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo {
        width: 75em;
        padding: 1em 1em .5em;
        -webkit-box-shadow: 1px 1px 5px 1px #666;
        box-shadow: 1px 1px 5px 1px #666;
        margin: 0 10px 10px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: wrap;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li {
        margin-left: 0;
        padding: 0 20px
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li > a {
        width: 50%;
        display: block;
        padding-bottom: .6em;
        border-bottom: 1px solid var(--primary-color)
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel {
        padding-left: 0;
        margin-bottom: 0;
        list-style: none;
        margin-top: 1em;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li {
        width: 50%;
        float: left;
        margin-bottom: 1em
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li.hasSubnav {
        margin-bottom: 1em
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li a {
        color: var(--primary-color);
        padding: 0 0 1em
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel {
        padding-left: 0;
        margin-bottom: 0;
        list-style: none
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel:after, .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel:before {
        content: '';
        display: table
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel:after {
        clear: both
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel li {
        display: block;
        width: 100%;
        float: none;
        margin-bottom: 0
    }

    .naviContainer .navBar .collapse .nav > li .secondLevel .subnavi--justTwo > li .thirdLevel li .fourthLevel li a {
        padding: .5em .5em .5em 0;
        color: var(--grey-color);
        font-size: 80%
    }
}

.contentMenu {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    margin: 0 15px;
    padding: 24px;
}

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

.contentMenu ul li {
    padding: 7px 5px 7px 10px;
    color: #fff;
    background: var(--primary-color);
    display: block;
    text-decoration: none;
    line-height: 120%;
    margin: 0 0 5px 0;
}

.contentMenu ul li a {
    color: #fff;
}

/**
 * Table
 */
/*
 * Base class for all table-styles.
 */
table {
    width: 100%;
    margin-bottom: 1.5em;
    border-bottom: 1px solid var(--primary-color);
}

table td, table th {
    padding: 0.5em;
    font-size: 90%;
}

table th {
    font-weight: 400;
}

table thead {
    border-bottom: 1px solid #333;
    background-color: var(--primary-color);
    color: #fff;
}

table thead tr th {
    padding: 1em;
}

table thead tr th:last-child {
    text-align: right;
}

table tbody tr:nth-child(2n) {
    background-color: var(--quinary-color);
    color: #fff;
}

table tbody tr td {
    padding: .6em 1em;
}

table tbody tr td:last-child {
    text-align: right;
}

/*
 * Adds a border around the table and in between the rows and cells.
 */
.table--bordered {
    border: 1px solid #e6e6e6;
    border-collapse: separate;
    border-radius: 3px;
}

.table--bordered td, .table--bordered th {
    border-left: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
}

.table--bordered td:first-child, .table--bordered th:first-child {
    border-left: 0;
}

.table--bordered tr:last-child > td {
    border-bottom: 0;
}

/*
 * Adds a border below each row.
 */
.table--striped td, .table--striped th {
    border-bottom: 1px solid #e6e6e6;
}

.table--striped th {
    padding-top: 0;
    -webkit-box-shadow: 0 1px 0 rgba(231, 231, 236, 0.7), 0 3px 0 rgba(231, 231, 236, 0.3);
    box-shadow: 0 1px 0 rgba(231, 231, 236, 0.7), 0 3px 0 rgba(231, 231, 236, 0.3);
}

/*
 * Reduces the visual gap between each table row.
 */
.table--condensed td, .table--condensed th {
    padding: 0.25em 0.5em 0.25em;
}

/*
 * Displays each odd/even row with a changing background to enhance the visual difference between each row element.
 */
.table--zebra tbody tr:nth-child(even) {
    background: #fff;
}

.table--zebra tbody tr:nth-child(odd) {
    background: #f2f2f2;
}

.search, .searchproduct {
    width: 100%;
    float: right;
}

.searchSwitchWrapper {
    float: left;
    width: 5%;
    height: 60px;
    margin-left: 20px;
    margin-right: 10px;
    padding-top: 19px;
}

.searchfield {
    width: 80%;
    display: block;
    padding: .6em 1em;
    line-height: 150%;
    float: left;
    border: none;
    margin-top: 7px;
}

.submitSearch {
    padding: 1em 2em;
    cursor: pointer;
    white-space: nowrap;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    font-size: 1em;
    font-weight: 700;
    line-height: 1;
    color: #FFF;
    background: var(--primary-color);
    vertical-align: top;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    /*margin: 0;*/
    display: block;
    margin: 11px auto 0;
    text-decoration: none;
}

.submitSearch:hover {
    -webkit-transform: scale(0.95, 0.95);
    -ms-transform: scale(0.95, 0.95);
    transform: scale(0.95, 0.95);
    text-decoration: none;
}

.submitSearch .fa {
    float: left;
    margin-right: 5px;
    margin-left: -0.5em;
}

.searchSwitch {
    position: relative;
    width: 45px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.searchSwitch .info {
    position: absolute;
    top: 35px;
    left: -60px;
    background-color: #000;
    width: auto;
    padding: .4em 1em;
    white-space: nowrap;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    opacity: 1;
    font-size: .8em;
    border: 1px solid #ed6d05;
}

.searchSwitch .info.u-isHidden {
    opacity: 0;
}

.searchSwitch .info:before {
    content: "\A";
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 10px solid #ed6d05;
    position: absolute;
    top: -10px;
    left: 47%;
}

.switchNodeType {
    display: none;
}

.searchSwitch-label {
    display: block;
    overflow: hidden;
    cursor: pointer;
    height: 20px;
    padding: 0;
    line-height: 20px;
    border: 0 solid #FFFFFF;
    border-radius: 30px;
    background-color: #C7C7C7;
}

.searchSwitch-label:before {
    content: "";
    display: block;
    width: 30px;
    margin: -5px;
    background: #FFFFFF;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 21px;
    border-radius: 30px;
}

.switchNodeType:checked + .searchSwitch-label {
    background-color: #C95E06;
}

.switchNodeType:checked + .searchSwitch-label, .switchNodeType:checked + .searchSwitch-label:before {
    border-color: #C95E06;
}

.switchNodeType:checked + .searchSwitch-label .onoffswitch-inner {
    margin-left: 0;
}

.switchNodeType:checked + .searchSwitch-label:before {
    right: 0;
    background-color: #ED6D05;
}

/* ======== TEASER BOX ======== */
.teaserBox {
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff;
}

@media screen and (min-width: 300px) {
    .teaserBox {
        margin-bottom: 20px;
    }
    .siteContent .neos-contentcollection .teaserBox {
        margin: 0 20px 40px
    }
    .siteContent .neos-nodetypes-twocolumn .teaserBox,
    .siteContent .neos-nodetypes-threecolumn .teaserBox {
        margin: 0 0 40px
    }
}

@media screen and (min-width: 1200px) {
    .teaserBox {
        margin-bottom: 0;
    }
    .siteContent .neos-contentcollection .teaserBox {
        margin: 0 0 40px
    }
}

.teaserBox .btn .fa {
    float: left;
    margin-right: 5px;
    margin-left: -0.5em;
}

.teaserBox .teaserHeadline {
    background-color: var(--primary-color);
    color: #fff;
    padding: var(--sp-m) var(--sp-l);
    margin-bottom: 0;
    text-align: center;
    font-weight: 400;
    font-size: 20px;
}

.teaserBox .teaserHeadline.invert {
    background-color: var(--grey-color);
}

.teaserBox .teaserHeadline.light {
    background-color: var(--quinary-color);
}

.teaserBox .teaserContent {
    padding: 1em;
    overflow: hidden;
}

.teaserBox figure {
    margin-left: 0;
    margin-top: 0;
}

.teaserBox .teaserContent p {
    margin-bottom: 0;
}

.teaserBox .teaserMore {
    padding: 14px 16px 15px 16px;
    text-decoration: none;
    text-align: center;
}


.gi .teaserBox {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
}

@media screen and (min-width: 300px) {
    .articleHeader {
        margin: 1em 0;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 700px) {
    .articleHeader {
        margin: 1em 0;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 1200px) {
    .articleHeader {
        margin: 1em 0;
        padding-left: 0px;
        padding-right: 0px;
    }
}

.articleHeader .articleAuthor {
    margin-top: -10px;
    margin-bottom: 2em;
    display: block;
}

.articleHeader .articleTags {
    margin-top: 1em;
}

.articleHeader .articleTags .tag {
    padding: .5em .8em;
    background-color: var(--primary-color);
    color: #fff;
    font-size: 14px;
    margin-right: 5px;
    border-radius: 2px;
}

.articleHeader .articleTags .tag:before {
    font-family: FontAwesome;
    content: "\f02b";
    margin-right: 8px;
    position: relative;
    top: 1px;
}

.articleHeader .articleLead {
    margin: 2em 0 1em;
}

.articleHeader .articleLead p {
    font-weight: bold;
}

/* INFO BOX */

.info-box {
    color: var(--grey-color);
    position: relative;
    text-align: center;
    overflow: hidden;
    margin-bottom: 10px;
}

.info-box:before {
    font-family: 'FontAwesome', serif;
    font-size: 3em;
    color: var(--primary-color);
}

.info-box:after {
    content: '';
    width: 100%;
    max-width: 280px;
    display: block;
    height: 1px;
    background: -webkit-gradient(linear, left top, right top, from(#FFF), color-stop(50%, var(--primary-color)), to(#FFF));
    background: linear-gradient(to right, #FFF 0%, var(--primary-color) 50%, #FFF 100%);
    text-align: center;
    margin: 20px auto 10px;
}

.info-box__headline {
    color: var(--grey-color);
    font-weight: 600;
    margin: 6px 0 6px;
    font-size: 1.3rem;
}

.info-box__icon {
    font-size: 10em;
}

.info-box a {
    text-decoration: none;
}

@media screen and (min-width: 700px) {
    .info-box {
        margin-bottom: 30px;
    }

    .info-box:after {
        display: none;
    }

    .info-box__headline {
        margin: 12px 0 6px;
        font-size: 1.5625rem;
    }

    .info-box__text {
        font-size: 1rem;
    }
}

/* ================================================================= */
/* 06. Topbox                                                      */
/* ================================================================= */
.topbox {
    background-color: rgb(248, 248, 248);
    position: relative;
    margin: 20px 0;
    border-radius: 0;
}

.topbox .boxcontent {
    padding: var(--sp-m) var(--sp-l);
}

.topbox .toptitle {
    color: #FFFFFF;
    margin-bottom: 0;
    padding: var(--sp-m) var(--sp-l);
    font-weight: 400;
    font-size: 20px;
}
/*.topbox .btn {*/
/*    text-decoration: none;*/
/*    font-weight: bold;*/
/*}*/

.toptitle.blue {
    background-color: var(--primary-color);
}
.toptitle.lightBlue {
    background-color: var(--quinary-color);
}
.toptitle.grey {
    background-color: var(--grey-color);
}

/*==== Corner Ribbon ===*/

.ribbon {
    position: absolute;
    top: 0;
    right: 0;
}

/* reset certain elements (in case of conflicting CSS for classes, links, etc.) */
.ribbon .text,
.ribbon .banner,
.ribbon a {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

.ribbon a {
    color: #FFFFFF;
    text-decoration: none;
}

.no-css-transforms .ribbon {
    font-size: 1em;
    position: relative;
    width: 100%;
}

.ribbon .banner {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    color: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    display: block;
    float: right;
    position: relative;
    right: -0.813rem;
    top:1.438rem;
    width: 6.25rem;
}

.ribbon-small .banner {
    right: -0.4rem;
    top: var(--sp-m);
    width: var(--sp-4l);
}

.ribbon-large .banner {
    right: -1.25rem;
    top: var(--sp-xl);
    width: 9.375rem;
}

.ribbon .banner::after,
.ribbon .banner::before {
    content: '';
    display: block;
    height: 0.75rem;
    position: absolute;
    width: 1.875rem;
}

.ribbon-small .banner::after,
.ribbon-small .banner::before {
    height: 0.375rem;
    width: 1.25rem;
}

.ribbon-large .banner::after,
.ribbon-large .banner::before {
    height: 1.125rem;
    width: 2.813rem;
}

.ribbon .banner::before {
    -webkit-transform: skewY(-45deg) translate(50%, 15px);
    -moz-transform: skewY(-45deg) translate(50%, 15px);
    -ms-transform: skewY(-45deg) translate(50%, 15px);
    -o-transform: skewY(-45deg) translate(50%, 15px);
    -webkit-transform-origin: 100% center;
    -moz-transform-origin: 100% center;
    -ms-transform-origin: 100% center;
    -o-transform-origin: 100% center;
    left: -2.813rem;
}

.ribbon-small .banner::before {
    top: -0.313rem;
    left: -1.875rem;
}

.ribbon-large .banner::before {
    top: 0.563rem;
    left: -4.25rem;
}

.ribbon .banner::after {
    -webkit-transform: translate(100%, -100%) skewY(45deg) translateX(-58%);
    -moz-transform: translate(100%, -100%) skewY(45deg) translateX(-58%);
    -ms-transform: translate(100%, -100%) skewY(45deg) translateX(-58%);
    -o-transform: translate(100%, -100%) skewY(45deg) translateX(-58%);
    -webkit-transform-origin: 0 center;
    -moz-transform-origin: 0 center;
    -ms-transform-origin: 0 center;
    -o-transform-origin: 0 center;
    right: -17px;
}

.ribbon-small .banner::after {
    top: 1.125rem;
    right: -0.75rem;
}

.ribbon-large .banner::after {
    top: 2.813rem;
    right: -1.625rem;
}

.no-css-transforms .ribbon .banner {
    position: static;
    width: 100%;
    float: none;
    font-size: var(--font-size-10);
}

.ribbon .text {
    position: relative;
    z-index: 2;
    padding: 0.375rem 0;
    font-size: var(--font-size-14);
    font-weight: bold;
    min-height: 1.125rem;
    line-height: 1.125rem;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.20);
    white-space: nowrap;
    text-overflow: ellipsis;
    text-align: center;
}

/* small text */
.ribbon-small .text {
    font-size: 8px;
    padding: 0.1875rem 0;
    min-height: 0.875rem;
    line-height: 0.875rem;
}

/* large text */
.ribbon-large .text {
    font-size: var(--font-size-18);
    padding: 0.563rem 0;
    min-height: 1.75rem;
    line-height: 1.75rem;
}

.ribbon .text::before,
.ribbon .text::after {
    content: '';
    display: block;
    height: 1.875rem;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1;
}

/* small text */
.ribbon.ribbon-small .text::before,
.ribbon.ribbon-small .text::after {
    height: 1.25rem;
}

/* large text */
.ribbon.ribbon-large .text::before,
.ribbon.ribbon-large .text::after {
    height: 2.875rem;
}

.ribbon .text::before {
    -webkit-transform: translateX(-15%) skewX(-45deg);
    -moz-transform: translateX(-15%) skewX(-45deg);
    -ms-transform: translateX(-15%) skewX(-45deg);
    -o-transform: translateX(-15%) skewX(-45deg);
}

.ribbon .text::after {
    -webkit-transform: translateX(15%) skewX(45deg);
    -moz-transform: translateX(15%) skewX(45deg);
    -ms-transform: translateX(15%) skewX(45deg);
    -o-transform: translateX(15%) skewX(45deg);
}

.no-css-transforms .ribbon .text {
    height: 1.5625rem;
    padding: 0.1875rem;

}

/*--- RIBBON COLORS ---*/

/* default */
.ribbon .banner::after,
.ribbon .banner::before {
    background-color: var(--tertiary-color);
}

.ribbon .text::before,
.ribbon .text::after,
.no-css-transforms .ribbon .text {
    background-color: var(--tertiary-color);
}

/* primary */
.ribbon-primary .banner::after,
.ribbon-primary .banner::before {
    background-color: #51A351;
}

.ribbon-primary .text::before,
.ribbon-primary .text::after,
.no-css-transforms .ribbon-primary .text {
    background-color: #62C462;
}

/* secondary */
.ribbon-secondary .banner::after,
.ribbon-secondary .banner::before {
    background-color: #0044CC;
}

.ribbon-secondary .text::before,
.ribbon-secondary .text::after,
.no-css-transforms .ribbon-secondary .text {
    background-color: #0088CC;
}

/* tertiary */
.ribbon-tertiary .banner::after,
.ribbon-tertiary .banner::before {
    background-color: #2D5B98;
}

.ribbon-tertiary .text::before,
.ribbon-tertiary .text::after,
.no-css-transforms .ribbon-tertiary .text {
    background-color: #367AB3;
}

/* TABS */
.tabs .tabHeadings {
    margin-bottom: 1em;
    border-color: var(--primary-color);
    border-width: 2px;
    border-bottom-style: solid;
}

.tabs .tabHeadings:before, .tabs .tabHeadings:after {
    content: '';
    display: table;
}

.tabs .tabHeadings:after {
    clear: both;
}

.tabs .tabHeader {
    font-size: 1.3em;
    font-weight: 600;
    text-align: center;
}

.tabs .tabHeadings .tabHeader {
    float: left;
    padding: 0.5em 1em;
    cursor: pointer;
    background-color: #f0f0f0;
}

.tabs .tabHeadings .tabHeader:not(:last-child) {
    margin-right: 5px;
}

@media screen and (max-width: 1200px) {
    .tabs {
       margin: 0 20px;
    }
}

.tabs .tabHeadings .tabHeader.active {
    color: white;
    background-color: var(--primary-color);
}

.tabs .tabContents:before, .tabs .tabContents:after {
    content: '';
    display: table;
}

.tabs .tabContents:after {
    clear: both;
}

.tabs.tabs--colored {
    margin-bottom: 10px;
}

.tabs.tabs--colored .tabHeader {
    padding: 0.4em 1.5em;
    margin-bottom: 10px;
    border-bottom: 1px solid currentColor;
}

.stage.orange .tabs .tabHeadings .tabHeader.active {
    color: var(--grey-color);
}

.breadcrumbMenu {
    font-family: "Roboto", sans-serif;
    position: absolute;
    bottom: 10px;
    right: 0;
    font-size: 12px;
}

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

.breadcrumbMenu ul li {
    display: block;
    float: left;
    margin-left: .5em;
}

.breadcrumbMenu ul li:after {
    content: "\2022";
    margin-left: .3em;
}

.breadcrumbMenu ul li:last-child:after {
    content: '';
    margin-left: 0;
}

.accordion {
    margin-bottom: 5px;
}

.accordion .accordionHeader {
    cursor: pointer;
    border: 1px solid #ccc;
    background: rgb(240, 240, 240);
    padding: 10px 10px 10px 1em;
    border-radius: 3px;
    color: var(--primary-color);
}

.accordion .accordionContent {
    max-height: 0;
    color: #fff;
    overflow: hidden;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    background-color: rgb(248, 248, 248);
}

.accordion.slideDown .accordionHeader {
    border-radius: 3px 3px 0 0;
}

.accordion.slideDown .accordionContent {
    max-height: 1920px;
    overflow: auto;
    padding: 1em;
    color: var(--grey-color);
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-radius: 0 0 3px 3px;
}

.accordion.slideDown .accordionContent p:last-child,
.accordion.slideDown .accordionContent ul:last-child,
.accordion.slideDown .accordionContent ol:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
}

.accordion .accordionHeaderEdit {
    border: 1px solid #ccc;
    background: rgb(240, 240, 240);
    padding: 10px 10px 10px 1em;
    border-radius: 3px 3px 0 0;
    color: var(--primary-color);
}
.accordion .accordionContentEdit {
    padding: 1em;
    margin-bottom: 4px;
    color: var(--grey-color);
    background-color: rgb(248, 248, 248);
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-radius: 0 0 3px 3px;
}
.accordion .accordionContentEdit p:last-child,
.accordion .accordionContentEdit ul:last-child,
.accordion .accordionContentEdit ol:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
}

.societyItem {
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    margin-bottom: 15px;
    padding: 5px;
    position: relative;
    display: block;
}

.societyItem:before, .societyItem:after {
    content: '';
    display: table;
}

.societyItem:after {
    clear: both;
}

@media screen and (min-width: 300px) {
    .societyItem {
        height: auto;
    }
}

@media screen and (min-width: 700px) {
    .societyItem {
        height: 65px;
    }
}

.societyItem .nationalIcon {
    float: left;
    display: block;
    width: 55px;
}

.societyItem .societyContent {
    display: inline-block;
    padding-left: 10px;
    padding-top: 5px;
}

@media screen and (min-width: 300px) {
    .societyItem .societyContent {
        max-width: 45%;
    }
}

@media screen and (min-width: 700px) {
    .societyItem .societyContent {
        max-width: 45%;
    }
}

@media screen and (min-width: 1200px) {
    .societyItem .societyContent {
        max-width: 285px;
    }
}

.societyItem .societyContent .societyTitle {
    color: var(--primary-color);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 5px;
    margin-top: 3px;
}

.societyItem .societyContent .societySubTitle {
    font-size: 12px;
    line-height: 1.5;
    color: var(--quinary-color);
}

.societyItem .societyDetailBtn {
    float: right;
    padding: 25px 15px;
    position: relative;
    text-transform: uppercase;
}

.societyItem:hover .societySubTitle {
    color: var(--grey-color);
}

.youtube {
    margin: 1em 0;
    padding-bottom: 500px;
    position: relative;
}

.youtube iframe {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.youtube--1-1 {
    padding-bottom: 100%;
}

.youtube--4-3 {
    padding-bottom: 75%;
}

.youtube--16-9 {
    padding-bottom: 56.25%;
}

.youtube--16-10 {
    padding-bottom: 62.5%;
}

.youtube--3-1 {
    padding-bottom: 33.33333%;
}

.youtube--35mm {
    padding-bottom: 72.9927%;
}

.youtube--70mm {
    padding-bottom: 42.55319%;
}

.youtube--goldenRatio {
    padding-bottom: 62.1118%;
}

.editProfile .formGroup {
    /***** Example custom styling *****/
}

.editProfile .formGroup img {
    display: block;
    margin: 1em 0;
}

.editProfile .formGroup .uploadInput {
    border: none;
}

.editProfile .formGroup label.uploadLabel input[type="file"] {
    position: fixed;
    top: -1000px;
}

.editProfile .formGroup .uploadLabel {
    display: inline-block;
    cursor: pointer;
}

.editProfile .formGroup .uploadLabel .uploadButton {
    display: inline-block;
    padding: 1em 2em;
    cursor: pointer;
    white-space: nowrap;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    font-size: 1em;
    font-weight: 700;
    line-height: 1;
    color: #FFF;
    background: var(--primary-color);
    vertical-align: top;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    margin-bottom: 1em;
}

.editProfile .formGroup .uploadLabel .uploadButton, .editProfile .formGroup .uploadLabel .uploadButton:hover {
    text-decoration: none;
}

.editProfile .formGroup .uploadLabel .uploadButton:hover {
    -webkit-transform: scale(0.95, 0.95);
    -ms-transform: scale(0.95, 0.95);
    transform: scale(0.95, 0.95);
}

.editProfile .formGroup .uploadLabel .uploadButton .fa {
    float: left;
    margin-right: 5px;
    margin-left: -0.5em;
}

.editProfile .formGroup .uploadLabel :invalid + .uploadButton {
    color: #ff0000;
}

.editProfile .formGroup .uploadLabel :invalid + .uploadButton:hover {
    background: #ff0000;
    border-color: #ff0000;
    color: #fff;
}

.events article {
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    background-color: #ebeef0;
    min-height: 80px;
    margin-bottom: 15px;
    padding-bottom: 0;
    position: relative;
}

.events article:before, .events article:after {
    content: '';
    display: table;
}

.events article:after {
    clear: both;
}

.events article .time {
    color: #616f7b;
    font-size: 12px;
    padding: 10px 15px 0 15px;
}

.events article header {
    float: left;
    font-size: 18px;
    font-weight: 500;
    padding: 0 15px 15px 15px;
    width: 100%;
}

.events article summary {
    float: left;
    padding: 0 15px 15px 15px;
    margin-top: -15px;
}

.events article .events--readmore {
    float: right;
    font-size: 14px;
    font-weight: 500;
    padding: 0 15px 15px 15px;
    text-transform: uppercase;
}

.events.events--education .event__image {
    width: 160px;
    height: 120px;
    background-size: cover;
    background-position: center;
    margin-right: 15px;
    float: left;
}

.events.events--education header {
    float: none;
    width: auto;
}

.events.events--education .time {
    padding-left: 0;
}

.events.events--education .events--readmore {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 0 15px 8px 15px;
}

.events.events--education.tagged > article {
    background: var(--quinary-color);
}

.calendar {
    min-width: 300px;
    max-width: 500px;
    position: relative;
    -webkit-box-shadow: 0 0 4px 0 #333;
    box-shadow: 0 0 4px 0 #333;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.calendar .month {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: table;
}

.calendar .month .month--headline {
    width: 100%;
    height: 50px;
    color: var(--primary-color);
    text-align: center;
    vertical-align: bottom;
    padding: .6em;
}

.calendar .month .week {
    position: relative;
    width: 100%;
    line-height: 30px;
    margin-bottom: 2%;
}

.calendar .month .week:before, .calendar .month .week:after {
    content: '';
    display: table;
}

.calendar .month .week:after {
    clear: both;
}

.calendar .month .week .day {
    position: relative;
    float: left;
    width: 13%;
    height: 49px;
    margin: 0 0.6%;
    line-height: 50px;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
}

.calendar .month .week .day:first-child {
    margin-left: 1%;
}

.calendar .month .week .day .eventTooltip {
    display: none;
    position: absolute;
    bottom: 100%;
    left: -50%;
    line-height: normal;
    background-color: #fff;
    border-radius: 5px;
    -webkit-box-shadow: 0 0 5px 0 #c8c8c8;
    box-shadow: 0 0 5px 0 #c8c8c8;
    padding: 1em;
    text-align: left;
}

.calendar .month .week .day.active {
    z-index: 2;
}

.calendar .month .week .day.active .eventTooltip {
    display: block;
}

.calendar .month .week .day.hasEvents {
    background-color: var(--primary-color);
    color: #fff;
    cursor: pointer;
    border-radius: 30px;
}

.calendar .month .week .day.notInMonth {
    color: #ccc;
}

.calendar .month .week .day.notInMonth:hover {
    background-color: #ccc;
    color: #fff;
}

.calendar .month .week .day:hover {
    background-color: #3b97f2;
    color: #fff;
    border-radius: 30px;
}

.calendar .month .weekHeader {
    position: relative;
    width: 100%;
    line-height: 30px;
}

.calendar .month .weekHeader .dayLabel {
    width: 14.2%;
    height: 50px;
    text-align: center;
    float: left;
}

.calendar .calendarNavi {
    position: relative;
    width: 100%;
    height: 50px;
    z-index: 2;
}

.calendar .calendarNavi .monthPrev:before {
    font-family: FontAwesome;
    content: "\f104";
    font-size: 35px;
    line-height: 50px;
    width: 30px;
    text-align: center;
    position: absolute;
    left: 21%;
    top: -3px;
    cursor: pointer;
    color: var(--primary-color);
}

.calendar .calendarNavi .monthNext:before {
    font-family: FontAwesome;
    content: "\f105";
    font-size: 35px;
    line-height: 50px;
    width: 30px;
    text-align: center;
    position: absolute;
    right: 21%;
    top: -3px;
    cursor: pointer;
    color: var(--primary-color);
}

.userBox {
    background-color: #ebeef0;
    -webkit-box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1);
    box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1);
}

.userBox:before, .userBox:after {
    content: '';
    display: table;
}

.userBox:after {
    clear: both;
}

.userBox .userHeader {
    background-color: var(--quinary-color);
    position: relative;
    color: #fff;
    overflow: hidden;
}

.userBox .userHeader:before, .userBox .userHeader:after {
    content: '';
    display: table;
}

.userBox .userHeader:after {
    clear: both;
}

.userBox .userHeader h2 {
    color: #fff;
}

.userBox .userHeader .userTitle {
    position: absolute;
    bottom: 0;
    margin: 1em;
}

.userBox .userHeader .userImage {
    height: 130px;
    width: 100px;
}

.userBox .userContent {
    min-height: 30px;
    padding: 15px 30px 15px 20px;
}

.userBox .userContent ul {
    margin: 0;
    padding: 0 0 0 24px;
    list-style: none;
}

.userBox .userContent ul li .fa {
    width: 38px;
    text-align: center;
    margin-left: -38px;
}

.searchContainer {
    display: inline-block;
    font-family: "HelveticaNeueW01-45Ligh", Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.searchContainer .textInput {
    display: inline-block;
    font-family: "HelveticaNeueW01-45Ligh", Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.searchContainer .btn {
    font-family: "HelveticaNeueW01-45Ligh", Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.twitter-typeahead {
    width: 100%;
}

.twitter-typeahead .tt-query {
    margin-bottom: 0;
    top: -1px !important;
}

.tt-menu {
    min-width: 100%;
    margin-top: -12px;
    padding: 5px 0;
    background-color: #ffffff;
    border: 1px solid #cccccc;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 4px;
    -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}

.tt-suggestion {
    display: block;
    padding: 3px 20px;
}

.tt-suggestion.tt-cursor {
    color: #fff;
    background-color: var(--primary-color);
}

.tt-suggestion.tt-cursor a {
    color: #fff;
}

.tt-suggestion p {
    margin: 0;
}

.empty-message {
    text-align: center;
    vertical-align: middle;
}

.workingGroup .twitter-typeahead {
    width: auto;
}

.workingGroup .submitBtn, .workingGroup .reject, .workingGroup .accept {
    padding: .55em 1.5em;
}

.downloadList {
    padding: 1em;
}

.downloadList__item {
    display: block;
}

ul.neos-fluid-widget-paginator {
    display: inline-block;
    list-style: none;
    text-align: center;
    width: 100%;
}

ul.neos-fluid-widget-paginator > li {
    display: inline-block;
    margin: 5px 2px;
}

ul.neos-fluid-widget-paginator > li > a {
    padding: 5px 10px;
    display: inline-block;
    background-color: #ebeef0;
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

ul.neos-fluid-widget-paginator > li > a:hover {
    text-decoration: none;
    padding: 5px 10px;
    background: var(--primary-color);
    color: #FFF;
}

ul.neos-fluid-widget-paginator > li.current {
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    padding: 5px 10px;
    background: var(--primary-color);
    color: #FFF;
}

.content-box {
    padding: 30px;
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    position: relative;
}

.content-box.content-box--microscopy {
    display: block;
    padding: 5px 5px 0;
}

.content-box.content-box--microscopy iframe {
    margin: 0;
}

.content-box__download-link {
    display: inline-block;
}

.content-box__download-link .fa {
    font-size: 1.5em;
}

.education__link {
    display: inline-block;
    padding-left: 2.3em;
    position: relative;
}

.education__link .fa {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 1.6em;
}

.education__headline {
    margin-bottom: 30px;
}

.education__info {
    margin-top: 30px;
}

.u-Capitalize {
    text-transform: uppercase;
}

.filter {
    position: relative;
    margin-bottom: 20px;
}

.filter__category-title {
    background: var(--quinary-color);
    color: #FFF;
    text-transform: uppercase;
    text-align: center;
    cursor: pointer;
    padding: 5px;
    font-size: .9em;
}

.filter__category-title:after {
    font-family: FontAwesome;
    content: "\f054";
    float: right;
}

.filter__category-content {
    display: block;
    background: #FFF;
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    padding: 20px;
}

.form--rating {
    margin-top: 0;
    margin-bottom: 1.5em;
}

.rating-votes {
    font-size: 0.8em;
}

.rating {
    overflow: hidden;
    display: inline-block;
}

.rating__label {
    display: inline-block;
    float: right;
}

.rating__text, .rating__checkbox {
    display: none;
}

.rating__label:before {
    display: inline-block;
    font-size: 1.1rem;
    padding: 0 .2rem;
    margin: 0;
    cursor: pointer;
    font-family: FontAwesome;
    content: "\f006 ";
    /* empty star */
}

.rating__checkbox:checked ~ .rating__label,
.rating__label:hover,
.rating__label:hover ~ .rating__label {
    color: var(--primary-color);
}

.rating__checkbox:checked ~ .rating__label:before,
.rating__label:hover:before,
.rating__label:hover ~ .rating__label:before {
    color: var(--primary-color);
    content: "\f005 ";
    /* full star */
}

/* Hover highlights */
.rating__checkbox:checked + .rating__label:hover,
.rating__checkbox:checked ~ .rating__label:hover,
.rating__checkbox:checked ~ .rating__label:hover ~ .rating__label,
.rating__label:hover ~ .rating__checkbox:checked ~ .rating__label {
    color: var(--primary-color);
}

.thumbnail {
    margin: 20px 0;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    border: none;
    background: #fff;
    text-align: center;
}

.thumbnail .content {
    display: block;
    padding: 20px;
}

.thumbnail .content p {
    margin: 0.75em 0;
}
.thumbnail .content p:last-child {
    margin-bottom: 0;
}

@media screen and (min-width: 1200px) {
    .thumbnail .content {
        min-height: 300px;
    }
}

.modal {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1050;
    -webkit-overflow-scrolling: touch;
    outline: 0
}

.modal-footer:after, .modal-footer:before, .modal-header:after, .modal-header:before {
    content: " ";
    display: table
}

.modal.fade .modal-dialog {
    -webkit-transform: translate(0, -25%);
    -ms-transform: translate(0, -25%);
    transform: translate(0, -25%);
    -webkit-transition: -webkit-transform .3s ease-out;
    transition: -webkit-transform .3s ease-out;
    transition: transform .3s ease-out;
}

.modal.in .modal-dialog {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0)
}

.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto
}

.modal-dialog {
    top: 20%;
    position: relative;
    width: auto;
    margin: 10px;
}

.modal-content {
    position: relative;
    background-color: #FFF;
    -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
    box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
    background-clip: padding-box;
    outline: 0
}

.modal-backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
    background-color: #000
}

.modal-backdrop.fade {
    opacity: 0;
    filter: alpha(opacity=0)
}

.modal-backdrop.in {
    opacity: .5;
    filter: alpha(opacity=50)
}

.modal-header {
    padding: 15px;
    border-bottom: 1px solid #e5e5e5
}

.modal-header__heading {
    font-size: 1.3rem
}

.modal-header .close {
    margin-top: -2px
}

.modal-title {
    margin: 0
}

.modal-body {
    position: relative;
    padding: 15px
}

.modal-footer {
    padding: 15px;
    text-align: right;
    border-top: 1px solid #e5e5e5
}

.modal-footer .btn + .btn {
    margin-left: 5px;
    margin-bottom: 0
}

.modal-footer .btn-group .btn + .btn {
    margin-left: -1px
}

.modal-footer .btn-block + .btn-block {
    margin-left: 0
}

.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll
}

@media screen and (min-width: 300px) {
    .modal-dialog {
        top: 20%;
        width: auto;
        margin: 10px;
        position: relative;
    }

    .modal-content {
        -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
        box-shadow: 0 5px 15px rgba(0, 0, 0, .5)
    }

    .modal-sm {
        width: 300px
    }
}

@media (min-width: 768px) {
    .modal-dialog {
        top: 20%;
        width: 600px;
        margin: 30px auto
    }

    .modal-content {
        -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5)
    }

    .modal-sm {
        width: 300px
    }
}

.close {
    float: right;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    opacity: 0.2;
    filter: alpha(opacity=20);
}

.close:focus, .close:hover {
    color: #000;
    cursor: pointer;
    opacity: .5;
    filter: alpha(opacity=50)
}

button.close {
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0;
    -webkit-appearance: none
}

/*
 * Site Header
 */
.siteHeader {
    position: relative;
    z-index: 10;
}

.siteHeader .meta {
    width: 100%;
    height: auto;
    background-image: url("Images/header.png");
    background-repeat: no-repeat;
    background-position: center center;
    position: relative;
    z-index: 2;
}

@media screen and (min-width: 300px) {
    .siteHeader .meta {
        display: none;
    }
}

@media screen and (min-width: 1200px) {
    .siteHeader .meta {
        display: block;
    }
}

.siteHeader .meta .metaContent {
    font-family: "Roboto", sans-serif;
    padding: 1em 0 1em 1em;
    font-size: 14px;
    height: 140px;
    max-width: 1200px;
}

.siteHeader .meta .metaContent .metaItem {
    float: left;
    margin-right: 1em;
    /*cursor: pointer;*/
    height: 100%;
}

.siteHeader .meta .metaContent .metaItem.right {
    margin-right: 0;
    margin-left: 1em;
    float: right;
}

.siteHeader .meta .metaContent .metaItem.search {
    float: none;
    height: auto;
    position: absolute;
    bottom: 34px;
    right: -1em;
    max-width: 350px;
}

.siteHeader .meta .metaContent .metaItem.search .textInput {
    max-width: 350px;
    width: 100%;
}

.siteHeader .meta .metaContent .metaItem.search .fa {
    position: absolute;
    right: 0.5em;
    top: 0.4em;
    font-size: 18px;
    color: var(--primary-color);
}

.siteHeader .meta .metaContent .metaItem .fa {
    font-size: 24px;
    line-height: normal;
}
.siteHeader .meta .metaContent .metaItem .fa:hover {
    color: #3c78b4;
}

.siteHeader .meta .metaContent .metaItem .navbar-brand {
    display: block;
    position: relative;
    left: -140px;
    top: 20px;
}

.siteHeader .meta .metaContent .metaItem div.site-heading {
    text-decoration: none;
    position: relative;
    left: -130px;
    top: 40px;
}

.siteHeader .meta .metaContent .metaItem a.site-heading {
    text-decoration: none;
    position: relative;
    left: -130px;
    top: 40px;
}

.siteHeader .meta .metaContent .metaItem.right .congress {
    font-size: 18px;
    text-decoration: none;
}

.siteHeader .meta .metaContent .metaItem.right .congress:hover {
    color: #3c78b4;
}

.siteHeader .meta .metaContent .metaItem.right .congress-separator {
    color: var(--primary-color);
    font-weight: 700;
    font-size: 21px;
    margin-left: 10px;
    margin-right: 10px;
    position: relative;
    top: -2px;
}

.siteHeader .meta .metaContent .metaItem.right .facebook {
    margin-right: 8px;
    text-decoration: none;
    position: relative;
    top: -1px;
}

.siteHeader .meta .metaContent .metaItem.right .twitter {
    text-decoration: none;
    position: relative;
    top: -1px;
}

.siteHeader .language {
    padding: 0;
    margin: 0;
    list-style: none;
}

@media screen and (min-width: 700px) {
    .siteHeader .language li {
        display: block;
    }

    .siteHeader .language li.current {
        display: none;
    }
}

.siteHeader .mobileLanguage {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 0 1em 0;
}

.siteHeader .mobileLanguage:before {
    font-family: FontAwesome;
    content: "\f0ac";
    font-size: 30px;
    color: #fff;
    z-index: 10;
    position: relative;
}

.siteHeader .mobileLanguage:hover .language {
    display: block;
}

.siteHeader .mobileLanguage:active .language {
    display: block;
}

.siteHeader .mobileLanguage .language {
    position: fixed;
    top: 85px;
    left: 0;
    width: 100%;
    background: var(--primary-color);
    padding: 3.2em 0 0 0;
    display: none;
    min-width: 100%;
    z-index: 5;
}

.siteHeader .mobileLanguage .language li a {
    color: #fff;
    padding: 1em;
    display: block;
    text-align: right;
}

.siteHeader .mobileLanguage .language:hover {
    display: block;
}

@media screen and (min-width: 700px) {
    .siteHeader .mobileLanguage {
        display: none;
    }
}

.siteHeader .siteHeader--logo {
    background-image: url("Images/logo_blue.png");
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (min-width: 300px) {
    .siteHeader .siteHeader--logo {
        display: none;
    }
}

@media screen and (min-width: 700px) {
    .siteHeader .siteHeader--logo {
        width: 100px;
        height: 68px;
        display: block;
    }
}

/*@media screen and (min-width: 1200px) {*/
/*    .siteHeader .siteHeader--logo {*/
/*        width: 108px;*/
/*        display: block;*/
/*    }*/
/*}*/

/* ======== SITE SLIDER ======== */
.siteSlider {
    position: relative;
    max-height: 800px;
    margin-bottom: 40px;
    overflow: hidden;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    -webkit-box-shadow: 1px 1px 10px 1px #aaa;
    box-shadow: 1px 1px 10px 1px #aaa;
}

.siteSlider img {
    width: 100%;
}

.siteSlider > .prev, .siteSlider > .next {
    position: absolute;
    top: 0;
    width: 1em;
    height: 100%;
    min-height: 100%;
    color: #fff;
    z-index: 3;
}

.siteSlider > .prev .fa, .siteSlider > .next .fa {
    position: relative;
    top: 42%;
    width: 100%;
    text-align: center;
    cursor: pointer;
}

@media screen and (min-width: 300px) {
    .siteSlider > .prev, .siteSlider > .next {
        font-size: 40px;
    }

    .siteSlider > .prev .fa, .siteSlider > .next .fa {
        top: 38%;
    }
}

@media screen and (min-width: 700px) {
    .siteSlider > .prev, .siteSlider > .next {
        font-size: 60px;
    }

    .siteSlider > .prev .fa, .siteSlider > .next .fa {
        top: 42%;
    }
}

@media screen and (min-width: 1200px) {
    .siteSlider > .prev, .siteSlider > .next {
        font-size: 80px;
    }
}

.siteSlider > .prev {
    left: 0;
}

.siteSlider > .next {
    right: 0;
}

.siteSlider .sliderOverlay {
    width: 80%;
    max-width: 1200px;
    background: rgba(255, 255, 255, 0.8);
    position: absolute;
    bottom: 30px;
    left: 0;
    z-index: 2;
}

.siteSlider .sliderOverlay:before, .siteSlider .sliderOverlay:after {
    content: '';
    display: table;
}

.siteSlider .sliderOverlay:after {
    clear: both;
}

@media screen and (min-width: 300px) {
    .siteSlider .sliderOverlay {
        display: none;
    }
}

@media screen and (min-width: 700px) {
    .siteSlider .sliderOverlay {
        display: block;
    }
}

.siteSlider .slideReadMore {
    float: right;
    margin-bottom: 1em;
    margin-right: 1em;
}

.siteSlider figcaption {
    width: 50%;
    float: left;
    padding: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

@media screen and (min-width: 300px) {
    .siteSlider figcaption h1 {
        font-size: 22px;
        margin-top: 0;
        margin-bottom: .3em;
        font-family: "Roboto", sans-serif;
        line-height: 1.1;
        color: var(--primary-color);
        text-rendering: optimizeLegibility;
    }
}

@media screen and (min-width: 300px) and (min-width: 300px) {
    .siteSlider figcaption h1 {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 300px) and (min-width: 1200px) {
    .siteSlider figcaption h1 {
        padding-left: 0;
        padding-right: 0;
    }
}

@media screen and (min-width: 700px) {
    .siteSlider figcaption h1 {
        font-size: 30px;
        font-weight: 500;
        margin-top: 0;
        margin-bottom: .3em;
        font-family: "Roboto", sans-serif;
        line-height: 1.1;
        color: var(--primary-color);
        text-rendering: optimizeLegibility;
    }
}

@media screen and (min-width: 700px) and (min-width: 300px) {
    .siteSlider figcaption h1 {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 700px) and (min-width: 1200px) {
    .siteSlider figcaption h1 {
        padding-left: 0;
        padding-right: 0;
    }
}

@media screen and (min-width: 1200px) {
    .siteSlider figcaption h1 {
        font-size: 30px;
        font-weight: 500;
        margin-top: 0;
        margin-bottom: .3em;
        font-family: "Roboto", sans-serif;
        line-height: 1.1;
        color: var(--primary-color);
        text-rendering: optimizeLegibility;
    }
}

@media screen and (min-width: 1200px) and (min-width: 300px) {
    .siteSlider figcaption h1 {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 1200px) and (min-width: 1200px) {
    .siteSlider figcaption h1 {
        padding-left: 0;
        padding-right: 0;
    }
}

@media screen and (min-width: 300px) {
    .siteSlider figcaption h2 {
        font-size: 22px;
        margin-top: 0;
        margin-bottom: .3em;
        font-family: "Roboto", sans-serif;
        line-height: 1.1;
        color: var(--primary-color);
        text-rendering: optimizeLegibility;
    }
}

@media screen and (min-width: 300px) and (min-width: 300px) {
    .siteSlider figcaption h2 {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 300px) and (min-width: 1200px) {
    .siteSlider figcaption h2 {
        padding-left: 0;
        padding-right: 0;
    }
}

@media screen and (min-width: 1200px) {
    .siteSlider figcaption h2 {
        font-size: 26px;
        font-weight: 500;
        margin-top: 0;
        margin-bottom: .3em;
        font-family: "Roboto", sans-serif;
        line-height: 1.1;
        color: var(--primary-color);
        text-rendering: optimizeLegibility;
    }
}

@media screen and (min-width: 1200px) and (min-width: 300px) {
    .siteSlider figcaption h2 {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 1200px) and (min-width: 1200px) {
    .siteSlider figcaption h2 {
        padding-left: 0;
        padding-right: 0;
    }
}

.siteSlider .title {
    width: 50%;
    float: left;
    padding: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.siteSlider > .neos-contentcollection {
    z-index: 1;
    width: 100%;
    height: 100%;
}

.siteSlider > .neos-contentcollection:before, .siteSlider > .neos-contentcollection:after {
    content: '';
    display: table;
}

.siteSlider > .neos-contentcollection:after {
    clear: both;
}

.siteSlider > .neos-contentcollection > .neos-nodetypes-image {
    float: left;
    opacity: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    z-index: 1;
    visibility: hidden;
    width: 100%;
    height: 100%;
    position: absolute;
}

.siteSlider > .neos-contentcollection > .neos-nodetypes-image figure {
    width: 100%;
    height: 100%;
}

.siteSlider > .neos-contentcollection > .neos-nodetypes-image.active {
    opacity: 1;
    z-index: 2;
    visibility: visible;
    position: relative;
}

.siteSlider.empty {
    margin-bottom: 0;
    display: none;
    visibility: hidden;
}

/* ======== DEBUG HELPERS ======== */
.debug {
    font-size: x-small;
    padding: 0;
    margin: 0;
}
.debug span {
    color: orangered;
    font-weight: 600;
}

/* ======== SITE TEASER ======== */
.siteTeaser .teaserBox {
    /*max-height: 190px;*/
    min-height: 190px;
}

/*.siteTeaser .teaserContent--fullSize {*/
/*    !*max-height: 244px;*!*/
/*    min-height: 190px;*/
/*}*/

@media screen and (min-width: 1200px) {
    .siteTeaser {
        margin-bottom: 2em
    }
    .siteTeaser .teaserBox {
        min-height: 190px
    }
    /*.siteTeaser .teaserContent--fullSize {*/
    /*    min-height: 190px*/
    /*    !*min-height: 244px*!*/
    /*}*/
}

/* ======== SITE CONTENT ======== */
.siteContent {
    height: 100%
}

.siteContent > div {
    height: 100%
}

/*.siteContent a {*/
/*    font-weight: 400*/
/*}*/

@media screen and (min-width: 1200px) {
    .siteContent {
        padding: 1em 0;
        margin-bottom: 40px
    }
}

.siteContent > .neos-contentcollection > .neos-nodetypes-contentreferences,
.siteContent > .neos-contentcollection > .neos-nodetypes-form,
.siteContent > .neos-contentcollection > .neos-nodetypes-image,
.siteContent > .neos-contentcollection > .neos-nodetypes-textwithimage {
    padding: 0 1em;
    margin-bottom: 20px
}

.siteContent .neos-contentcollection .neos-nodetypes-contentreferences p,
.siteContent > .neos-contentcollection > .neos-nodetypes-contentreferences p,
.siteContent > .neos-contentcollection > .neos-nodetypes-form p,
.siteContent > .neos-contentcollection > .neos-nodetypes-image p,
.siteContent > .neos-contentcollection > .neos-nodetypes-textwithimage p {
    margin: 0
}

@media screen and (min-width: 1200px) {
    .siteContent > .neos-contentcollection > .neos-nodetypes-contentreferences,
    .siteContent > .neos-contentcollection > .neos-nodetypes-form,
    .siteContent > .neos-contentcollection > .neos-nodetypes-image,
    .siteContent > .neos-contentcollection > .neos-nodetypes-textwithimage {
        padding: 0
    }
}

.siteContent .neos-contentcollection .neos-nodetypes-contentreferences {
    padding: 1em
}

.siteContent .neos-nodetypes-text ul {
    margin: 0 0 1em;
    padding: 0 0 0 1.3em
}

.siteContent .neos-nodetypes-text ul li {
    padding: 0 0 0 1em;
    position: relative
}

.siteContent nav.breadcrumbMenu {
    width: 100%
}

.siteContent nav.breadcrumbMenu ul.breadcrumb {
    list-style: none;
    padding: 0;
    margin: 0;
    float: right;
    display: block
}

.siteContent nav.breadcrumbMenu ul.breadcrumb li {
    float: left;
    margin: 0 .3em 0 0
}

.siteContent nav.breadcrumbMenu ul.breadcrumb li:after {
    content: "|";
    color: var(--primary-color)
}

.siteContent nav.breadcrumbMenu ul.breadcrumb li:last-child:after {
    content: " "
}

/**
 * Site Footer
 */
.siteFooter {
    background-color: #454545;
    height: 100px;
    overflow: hidden;
    margin-top: 30px;
    font-size: 0.9em;
    position: absolute;
    bottom: 0;
    width: 100%;
}

.siteFooter.fixed {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1001
}

.siteFooter .footerContent {
    color: #fff;
    padding: 1em;
}

.siteFooter .footerContent ul {
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0 0 1em;
}

.siteFooter .footerContent ul:before, .siteFooter .footerContent ul:after {
    content: '';
    display: table;
}

.siteFooter .footerContent ul:after {
    clear: both;
}

.siteFooter .footerContent ul li {
    display: block;
    float: left;
    margin-right: 1em;
    cursor: pointer;
}

.siteFooter .footerContent ul li:last-child {
    margin-right: 0;
}

.siteFooter .footerContent ul li a {
    color: #fff;
}

.siteFooter .footerContent ul li a:hover {
    text-decoration: none;
}

.siteFooter .footerContent p {
    font-size: 0.8em;
}

.siteFooter .footerContent ul li:not(:last-child) {
    margin: 0;
}

.siteFooter .footerContent ul li:not(:last-child):after {
    padding: 0 0.5em;
    content: '|';
}

@media screen and (min-width: 300px) {
    .siteFooter {
        height: auto;
    }

    .siteFooter .footerContent ul {
        height: auto;
    }
}


.workingGroup .item {
    background-color: #ebeef0;
    -webkit-box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1);
    box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1);
}

.workingGroup .item:before, .workingGroup .item:after {
    content: '';
    display: table;
}

.workingGroup .item:after {
    clear: both;
}

.workingGroup .workingGroupHeader {
    background-color: var(--quinary-color);
    color: #fff;
    padding: 1em;
}

.workingGroup .workingGroupHeader:before, .workingGroup .workingGroupHeader:after {
    content: '';
    display: table;
}

.workingGroup .workingGroupHeader:after {
    clear: both;
}

.workingGroup .workingGroupHeader h2 {
    color: #fff;
}

.workingGroup .workingGroupHeader .userImage {
    margin: -1em;
}

.workingGroup .workingGroupContent {
    min-height: 30px;
    padding: 15px 30px 15px 20px;
}

.workingGroup h1 {
    color: var(--primary-color);
    font-weight: 500;
    font-size: 30px;
    line-height: 39px;
    margin: 0 0 19px 0;
    padding: 0;
}

.workingGroup .groupIcon {
    text-align: center;
    display: block;
    margin: 0 auto;
}

.workingGroup .chairView {
    margin-top: 1em;
}

.workingGroupList .workingGroupItem {
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    margin-bottom: 15px;
    padding-bottom: 0;
    position: relative;
}

.workingGroupList .workingGroupItem:before, .workingGroupList .workingGroupItem:after {
    content: '';
    display: table;
}

.workingGroupList .workingGroupItem:after {
    clear: both;
}

@media screen and (min-width: 300px) {
    .workingGroupList .workingGroupItem {
        height: auto;
    }
}

@media screen and (min-width: 700px) {
    .workingGroupList .workingGroupItem {
        height: 75px;
    }
}

.workingGroupList .workingGroupItem .workingGroupIcon {
    float: left;
    display: block;
    height: 100%;
}

.workingGroupList .workingGroupItem .workingGroupIcon img {
    height: 100%;
    width: auto;
}

.workingGroupList .workingGroupItem .workingGroupContent {
    display: inline-block;
    padding-left: 10px;
    padding-top: 5px;
}

@media screen and (min-width: 300px) {
    .workingGroupList .workingGroupItem .workingGroupContent {
        max-width: 45%;
    }
}

@media screen and (min-width: 700px) {
    .workingGroupList .workingGroupItem .workingGroupContent {
        max-width: 45%;
    }
}

@media screen and (min-width: 1200px) {
    .workingGroupList .workingGroupItem .workingGroupContent {
        max-width: 285px;
    }
}

.workingGroupList .workingGroupItem .workingGroupContent .workingGroupTitle {
    color: var(--primary-color);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 5px;
}

.workingGroupList .workingGroupItem .workingGroupContent .workingGroupChair {
    font-size: 12px;
    line-height: 1.5;
}

.workingGroupList .workingGroupItem .workingGroupDetailBtn {
    float: right;
    padding: 25px 15px;
    position: relative;
    text-transform: uppercase;
}

/**
 * Print styles - Inlined to avoid another HTTP connection.
 */
@media print {
    * {
        background: transparent !important;
        color: black !important;
        -webkit-box-shadow: none !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    @page {
        margin: 0.5cm;
    }

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

    thead {
        display: table-header-group;
    }

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

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

    h2, h3 {
        page-break-after: avoid;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

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

    .print-hidden {
        display: none;
    }
}

sub {
    bottom: -.25em
}

table thead tr th:last-child {
    text-align: right
}

.text-left {
    text-align: left
}

.text-right {
    text-align: right
}

.text-center {
    text-align: center
}

.text-justify {
    text-align: justify
}

.text-nowrap {
    white-space: nowrap
}

.text-lowercase {
    text-transform: lowercase
}

.text-uppercase {
    text-transform: uppercase
}

.text-capitalize {
    text-transform: capitalize
}

.stage {
    padding: 20px;
    margin: 20px 0;
}

.stage.orange {
    background-color: var(--primary-color);
    color: #ddd;
}
.stage.orange h1, .stage.orange h2, .stage.orange h3, .stage.orange h4 {
    color: var(--color-white);
}
.stage.orange a {
      color: var(--color-white);
}

.stage.brightOrange {
    background-color: var(--quinary-color);
    color: #ddd;
}
.stage.brightOrange a {
    color: var(--color-white);
}

.stage.blue {
    background-color: var(--grey-color);
    color: #ddd;
}
.stage.blue h1, .stage.blue h2, .stage.blue h3, .stage.blue h4 {
    color: var(--color-white);
}
.stage.blue a {
    color: var(--color-white);
}

.stage.brightBlue {
    background-color: #f4f4f4;
}

/* PORTAL */
#dismiss .fa {
    float: initial;
    margin-right: 0;
    margin-left: 0;
}
.btn.btn-nav-toggler {
    margin: 1rem 0;
}

/* HCP Modal */
.hcpHeader {
    background-color: var(--quinary-color);
}
.hcpHeader h1 {
    color: white !important;
}

.hcp-positive {
    background-color: var(--primary-color);
}

.hcp-negative {
    background-color: var(--grey-color);
}

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

.img-fit {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

/* if a required form field is empty */
.help-inline {
    color: red;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 0.875rem;
}

/* WEB-992 */
.userBox .userHeader h2 {
    margin-bottom: 0.25em;
}

.userBox .userHeader .userImage {
    position: relative;
    width: 100px;
    height: 140px;
    overflow: hidden;
}

.userBox .userHeader .userImage img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: top center;
}
