/**
 * Brics - A Starter Sass-Kit which embraces OOCSS, BEM and the Atomic Design-Approach.
 * @version 1.3.2
 * @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 {
  box-sizing: border-box; }

*, *:before, *:after {
  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; }

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  overflow-y: scroll;
  /* 2 */ }

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"] {
  box-sizing: border-box;
  padding: 0; }

input[type="search"] {
  -webkit-appearance: textfield;
  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; }

/**
 * 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; }

/*
 * 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 Neue", Helvetica, Arial, sans-serif;
  color: #00b5ff; }

/*
 * Brand color helpers.
 */
.u-brandColor-primary {
  color: #00b5ff; }

.u-brandColor-secondary {
  color: #00b5ff; }

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

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

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

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

.u-brandLogo--default {
  width: 390px;
  height: 99px;
  background-image: url(../Images/MeetNeos.png); }

/**
 * 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.55556rem; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/**
 * 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.83333rem; }

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

/*
 * 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 {
  color: black; }
  .u-invertText h1, .u-invertText h2, .u-invertText h3,
  .u-invertText h4, .u-invertText h5, .u-invertText h6 {
    color: #00b5ff; }

/*
 * 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; }

/**
 * 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: 600px) {
  .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%; } }

.typo3-neos-nodetypes-textwithimage:before, .typo3-neos-nodetypes-textwithimage:after {
  content: '';
  display: table; }

.typo3-neos-nodetypes-textwithimage:after {
  clear: both; }

figure.typo3-neos-alignment-right {
  float: right; }

figure.typo3-neos-alignment-left {
  float: left;
  margin-right: 2em;
  margin-bottom: 4em; }

figure.typo3-neos-max-50 {
  width: 397px; }

/**
 * Alert
*/
/*
 * The base class for all alerts.
 */
.alert {
  padding: 0.77778em;
  margin-bottom: 1.55556em;
  border-radius: 2px;
  background-color: #00b5ff;
  color: black; }
  .alert :last-child {
    margin-bottom: 0; }

/*
 * 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: #D75200;
  color: white; }

/**
 * Base and high-level wrapper elements
 */
body {
  margin: 0;
  font: 400 112.5% / 1.55556 Roboto, Arial, "Helvetica Neue", Helvetica, sans-serif;
  text-align: left;
  color: #FFF;
  background: #323232;
  min-width: 56.88889em; }

.siteWrapper {
  position: relative;
  width: 80%;
  max-width: 66.66667em;
  margin-left: auto;
  margin-right: auto; }

/**
 * Buttons
*/
/*
 * The base class for all buttons.
 */
.btn {
  display: inline-block;
  padding: 1em 2.5em;
  border: 0;
  background: #00b5ff;
  border-radius: 2px;
  cursor: pointer;
  font-size: 1em;
  font-weight: bold;
  line-height: 1;
  color: #FFF;
  vertical-align: top; }
  .btn, .btn:hover {
    text-decoration: none; }
  .btn:hover {
    background: #FFF;
    color: #00b5ff; }

/*
 * 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%; }

/*
 * Set the button width to the width of it's parent element.
 */
.btn--invert {
  color: #00b5ff;
  background-color: #FFF;
  border: 2px solid #FFF; }
  .btn--invert:hover {
    background: 0;
    border-color: #FFF;
    color: #FFF; }

/*
 * Visualize the disabled state of the button.
 */
.btn--disabled,
.btn[disabled] {
  color: #FFF;
  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; }

/*
 * Visualize the negative purpose/action of the button.
 */
.btn--negative {
  color: #D75200; }
  .btn--negative:hover {
    background: #D75200;
    border-color: #D75200; }

/**
 * 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.55556em; }

/**
 * Form
 */
/*
 * Form wrapper elements
 */
form {
  margin: 0; }

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

.i {
  fill: currentColor; }

/**
 * Headings
 */
/*
 * The base class for all headings.
 */
.h, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  margin-top: 0;
  margin-bottom: .3em;
  font-weight: 500;
  text-rendering: optimizeLegibility; }

/*
 * Heading modifiers
 * Styles the heading without changing it's importance for SEO robots etc.
 */
h1, .h1 {
  font-size: 72px;
  font-weight: bold;
  line-height: 1.1;
  margin-bottom: .1em; }

h2, .h2 {
  font-size: 62px;
  font-weight: bold;
  line-height: 1.1;
  margin-bottom: .1em; }

h3, .h3 {
  font-size: 30px;
  line-height: 1.1;
  font-weight: 400;
  margin-bottom: 1em; }

h4, .h4 {
  font-size: 22px;
  line-height: 1.1;
  font-weight: 500;
  margin-bottom: 1em;
  text-transform: uppercase; }

h5, .h5 {
  font-size: 16px;
  font-weight: 400; }

h6, .h6 {
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase; }

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

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

input[type="checkbox"], input[type="radio"] {
  margin-right: .35em;
  cursor: pointer; }

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  font: 400 112.5% / 1.55556 Roboto, Arial, "Helvetica Neue", Helvetica, sans-serif; }

input:-moz-placeholder, textarea:-moz-placeholder {
  font: 400 112.5% / 1.55556 Roboto, Arial, "Helvetica Neue", Helvetica, sans-serif; }

input::-moz-placeholder, textarea::-moz-placeholder {
  font: 400 112.5% / 1.55556 Roboto, Arial, "Helvetica Neue", Helvetica, sans-serif; }

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  font: 400 112.5% / 1.55556 Roboto, Arial, "Helvetica Neue", Helvetica, sans-serif; }

input:placeholder, textarea:placeholder {
  font: 400 112.5% / 1.55556 Roboto, Arial, "Helvetica Neue", Helvetica, sans-serif; }

/*
 * The base class for all textInputs.
 */
.textInput {
  height: 42px;
  padding: .2em .5em;
  background: #fff;
  border: 1px solid #e6e6e6;
  border-radius: 2px;
  box-shadow: inset 0 1px 1px rgba(230, 230, 230, 0.4);
  font-size: 0.77778rem;
  color: white; }

/*
 * 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: #D75200; }

/**
 * Form elements
 */
/*
 * Base styling for all labels.
 */
label {
  display: block;
  font-weight: 400;
  font-size: 0.77778rem; }
  label[for] {
    cursor: pointer; }

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

/**
 * Anchors
 */
/*
 * Base styling for all anchors/links.
 */
a {
  color: #00b5ff;
  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 1.2em;
  margin: 0 0 1.55556em; }

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

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

/*
 * 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 {
  font-style: italic;
  vertical-align: middle; }
  img[height] {
    height: auto; }

figure {
  margin: 0; }

figcaption {
  font-size: 0.88889rem; }

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

audio {
  min-width: 65%; }
  audio:not([controls]) {
    display: none;
    height: 0; }

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

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

blockquote {
  margin: 0 0 1.55556em; }

/**
 * Rulers
 */
hr {
  box-sizing: content-box;
  display: block;
  height: 0;
  padding: 0;
  margin: 3.11111em 0 3.11111em;
  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; }

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

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: #00b5ff;
  color: black; }

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; }

.blockTeaser {
  background: #ff9e0a; }

.blockTeaser__contents {
  padding: 1em;
  text-align: left; }
  .blockTeaser__contents > h3 {
    margin-bottom: .3em; }

/**
 * Button group
 * Displays a set of buttons in a group.
 */
.btnGroup:before, .btnGroup:after {
  content: '';
  display: table; }

.btnGroup:after {
  clear: both; }

.btnGroup__btn {
  float: left;
  border-radius: 0;
  border-right: 0; }
  .btnGroup__btn:first-child {
    border-radius: 2px 0 0 2px; }
  .btnGroup__btn:last-child {
    border-radius: 0 2px 2px 0;
    border-right: 1px solid; }

.englishFlashMessage {
  font-size: 80%;
  margin: 4em auto;
  display: inline-block;
  padding: 0.7em; }
  .englishFlashMessage img {
    width: 32px;
    margin-right: 0.7em;
    vertical-align: middle; }

.englishFlashMessage__message {
  display: inline-block;
  line-height: 32px;
  vertical-align: middle; }

.eventsMenu {
  color: #fff;
  text-align: center;
  position: fixed;
  width: 100%;
  z-index: 1;
  transition: z-index .2s ease-in-out; }

.eventsMenu__control__open {
  height: auto;
  width: auto;
  opacity: 1;
  transition: opacity .4s ease-in-out; }

.eventsMenu__control__close {
  height: 0;
  width: 0;
  opacity: 0;
  transition: opacity .4s ease-in-out; }

.eventsMenu__contents {
  background: #00b5ff;
  position: absolute;
  visibility: hidden;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  transition: -webkit-transform 0.5s, visibility 0s 0.5s;
  transition: transform 0.5s, visibility 0s 0.5s;
  width: 100%; }

.eventsMenu--active {
  z-index: 1000; }
  .eventsMenu--active .eventsMenu__contents {
    height: 100%;
    visibility: visible;
    -webkit-transform: translateY(0%);
        -ms-transform: translateY(0%);
            transform: translateY(0%);
    transition: -webkit-transform 0.5s;
    transition: transform 0.5s; }
  .eventsMenu--active .eventsMenu__control__open {
    height: 0;
    width: 0;
    opacity: 0; }
  .eventsMenu--active .eventsMenu__control__close {
    height: auto;
    width: auto;
    opacity: 1; }

.eventsMenu__control {
  cursor: pointer;
  position: absolute;
  top: 2em;
  right: 2em;
  z-index: 1001; }
  .eventsMenu__control svg {
    fill: #fff; }

.eventsMenu__contents__headline {
  font-size: 250%;
  font-weight: 100;
  margin: 3em auto 2em;
  width: 80%; }

.eventsMenu__contents__items {
  margin: 3em auto 0;
  width: 80%; }

.eventYear__headline {
  font-size: 250%;
  font-weight: bold;
  margin-bottom: 0; }

.eventYear__events {
  list-style-type: none;
  margin: 1em 0 3em;
  padding: 0; }

.eventYear__events__event a {
  color: #fff;
  font-size: 200%;
  font-weight: 100; }

/**
 * Flag - Displays text like content vertically centered besides an image.
 */
/*
 * The base class for the Flag wrapper.
 */
.flag {
  display: table;
  width: 100%; }

/*
 * The image wrapper cell.
 */
.flag__image {
  display: table-cell;
  vertical-align: middle;
  padding-right: 10px; }
  .flag__image > img {
    display: block;
    max-width: none; }

.flag__image--rev {
  padding-right: 0;
  padding-left: 10px; }

/*
 * The content wrapper cell.
 */
.flag__body {
  display: table-cell;
  vertical-align: middle;
  width: 100%; }
  .flag__body,
  .flag__body > :last-child {
    margin-bottom: 0; }

/**
 * Embed a external iframe or media file with a fluid width/height ratio.
 */
/*
 * The base class for all embed containers.
 */
.flexibleEmbed {
  position: relative;
  display: block;
  overflow: hidden; }

/*
 * The class for the embedded content.
 */
.flexibleEmbed__content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

/*
 * The class for the desired width/height ratio. Default ratio is 1:1.
 */
.flexibleEmbed__ratio {
  display: block;
  width: 100%;
  padding-bottom: 100%; }

.flexibleEmbed__ratio--16\/9 {
  padding-bottom: 56.25%; }

.flexibleEmbed__ratio--3\/1 {
  padding-bottom: 33.333%; }

.flexibleEmbed__ratio--2\/1 {
  padding-bottom: 50%; }

.flexibleEmbed__ratio--4\/3 {
  padding-bottom: 75%; }

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

.form__item {
  margin-bottom: 0.77778rem; }

/*
 * 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; }

/**
 * Grids
 */
/*
 * Grid object which is based on the util width classes.
 */
.g,
.grid {
  margin-left: -40px;
  margin-right: -40px; }
  .g:before, .g:after,
  .grid:before,
  .grid:after {
    content: '';
    display: table; }
  .g:after,
  .grid:after {
    clear: both; }

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

.g--gutterLess {
  margin-left: 0;
  margin-right: 0; }
  .g--gutterLess > .gi,
  .g--gutterLess > .grid__item {
    padding-left: 0;
    padding-right: 0; }

/**
 * Media
 */
/*
 * The base class for all media elements.
 */
.media {
  display: block; }
  .media:before, .media:after {
    content: '';
    display: table; }
  .media:after {
    clear: both; }

/*
 * The class for the floated media element.
 */
.media__img {
  float: left;
  margin-right: 1.55556em; }
  .media__img > img {
    display: block; }

/*
 * Reverts the order of the elements.
 */
.media__img--rev {
  float: right;
  margin-left: 1.55556em;
  margin-right: 0; }

.media__img--compact {
  margin-right: 0.77778em; }
  .media__img--compact.media__img--rev {
    margin-left: 0.77778em;
    margin-right: 0; }

/*
 * The class for the content beside the media element.
 */
.media__body {
  overflow: hidden;
  display: block; }
  .media__body,
  .media__body > :last-child {
    margin-bottom: 0; }

.mediaGrid {
  margin-bottom: 1em;
  text-align: center; }

.mediaGrid__media {
  padding: 1.5em;
  max-width: 20%; }

.modal {
  position: static; }

.modal__action {
  text-align: center; }

.modal__action__btn {
  display: inline-block;
  padding: 1em 2.5em;
  border: 0;
  background: #00b5ff;
  border-radius: 2px;
  cursor: pointer;
  font-size: 1em;
  font-weight: bold;
  line-height: 1;
  color: #FFF;
  vertical-align: top;
  color: #00b5ff;
  background-color: #FFF;
  border: 2px solid #FFF;
  width: 100%;
  border-radius: 0;
  transition: width 0.3s ease;
  overflow: hidden; }
  .modal__action__btn, .modal__action__btn:hover {
    text-decoration: none; }
  .modal__action__btn:hover {
    background: #FFF;
    color: #00b5ff; }
  .modal__action__btn:hover {
    background: 0;
    border-color: #FFF;
    color: #FFF; }
  .modal__action__btn.active {
    border-radius: 5em;
    width: 4em;
    white-space: nowrap;
    color: transparent; }

.modal__contents {
  display: none; }

.modalBox {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  height: 100%;
  width: 100%;
  visibility: hidden;
  transition: all .3s ease;
  opacity: 0;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  background: #FFF; }
  .modalBox.active {
    visibility: visible;
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1); }

.modalBox__contents {
  width: 80%;
  max-width: 66.66667em;
  margin: 4.5em auto; }

.modalBox__close {
  position: absolute;
  right: 1em;
  top: 1em; }

/**
 * 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; }

/**
 * Spinner (Displays a loading animation)
 */
.spinner {
  position: relative;
  display: inline-block;
  width: 31px;
  height: 7px;
  vertical-align: middle;
  text-align: center; }

.spinner__dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  vertical-align: top;
  border-radius: 50%;
  background: #cccccc;
  -webkit-animation: Pulsate 1s infinite ease-in-out;
          animation: Pulsate 1s infinite ease-in-out; }
  .spinner__dot:first-child {
    -webkit-animation-delay: -0.16s;
            animation-delay: -0.16s; }
  .spinner__dot:last-child {
    -webkit-animation-delay: .16s;
            animation-delay: .16s; }
  .spinner--invert > .spinner__dot {
    background: black; }

/**
 * Table
 */
/*
 * Base class for all table-styles.
 */
.table {
  width: 100%;
  margin-bottom: 1.55556em; }
  .table td, .table th {
    padding: 0.5em;
    font-size: 90%; }
  .table th {
    font-weight: 400; }

/*
 * Adds a border around the table and in between the rows and cells.
 */
.table--bordered {
  border: 1px solid #e6e6e6;
  border-collapse: separate;
  border-radius: 2px; }
  .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;
  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; }

/*
 * Site Header
 */
.siteHeader {
  position: relative;
  z-index: 1;
  min-width: 56.88889em; }

.siteHeader__menuToggle {
  position: absolute;
  top: 25px;
  left: 1.5em;
  color: #FFF; }

.siteHeader__brandLogo {
  position: absolute;
  top: 50px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%); }
  .siteHeader__brandLogo a {
    display: inline-block;
    height: inherit;
    width: inherit; }

.siteContent {
  padding: 3em 0; }

.stage {
  position: relative;
  overflow: hidden;
  min-width: 56.88889em; }
  .stage:first-child p {
    font-size: 1.2em; }

.stage--invert {
  background: #FFF;
  color: black; }
  .stage--invert h1, .stage--invert h2, .stage--invert h3,
  .stage--invert h4, .stage--invert h5, .stage--invert h6 {
    color: #00b5ff; }

.stage--centered > .stage__content {
  margin: 5em auto;
  width: 80%; }

.stage--centered > .stage__background + .stage__content {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: auto;
  margin-top: 0;
  margin-bottom: 0;
  -webkit-transform: translateX(-50%) translateY(-50%);
      -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  text-align: center; }

.stage__background {
  position: relative;
  width: 100%;
  opacity: .6; }

.stage__content {
  width: 80%;
  max-width: 66.66667em;
  margin: 4.5em auto; }

.stage--smallImageStage {
  padding-left: 200px;
  background: #252525; }
  .stage--smallImageStage:before {
    content: 'Platinum-Sponsoren:';
    position: absolute;
    left: 0;
    top: 0;
    width: 200px;
    height: 100%;
    padding: 1.75em 10px;
    background: #323232; }
  .stage--smallImageStage .typo3-neos-nodetypes-image {
    display: inline-block;
    margin-right: -.26em; }
  .stage--smallImageStage img {
    width: 200px; }

/**
 * Site Footer
 */
/**
 * Print styles - Inlined to avoid another HTTP connection.
 */
@media print {
  * {
    background: transparent !important;
    color: black !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; } }
