/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}
/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}
/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}
/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}
/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}
/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}
/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}
/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}
/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}
/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}
/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}
/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}
/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}
/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}
/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}
/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}
/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}
/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}
/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}
/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}
/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}
/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}
/*!
 * This file is part of Contao.
 *
 * (c) Leo Feyer
 *
 * @license LGPL-3.0-or-later
 */
/**
 * Standardize some basic elements
 */
body,
form,
figure {
  margin: 0;
  padding: 0;
}
img {
  border: 0;
}
header,
footer,
nav,
section,
aside,
article,
figure,
figcaption {
  display: block;
}
/**
 * Fix some font issues
 */
body {
  font-size: 100.01%;
}
select,
input,
textarea {
  font-size: 99%;
}
/**
 * Fix some positioning issues
 */
#container,
.inside {
  position: relative;
}
/**
 * Holy grail CSS layout
 *
 * @see http://www.alistapart.com/articles/holygrail
 */
#main,
#left,
#right {
  float: left;
  position: relative;
}
#main {
  width: 100%;
}
#left {
  margin-left: -100%;
}
#right {
  margin-right: -100%;
}
#footer {
  clear: both;
}
#main .inside {
  min-height: 1px;
  /* see #4893 */
}
/**
 * Format the Contao image galleries (now rendered as unordered lists)
 */
.ce_gallery > ul {
  margin: 0;
  padding: 0;
  overflow: hidden;
  list-style: none;
}
.ce_gallery > ul li {
  float: left;
}
.ce_gallery > ul li.col_first {
  clear: left;
}
/**
 * Float classes (see #6851)
 */
.float_left {
  float: left;
}
.float_right {
  float: right;
}
/**
 * Clear floats
 */
.block {
  overflow: hidden;
}
.clear,
#clear {
  height: 0.1px;
  font-size: 0.1px;
  line-height: 0.1px;
  clear: both;
}
/**
 * Hide invisible elements
 */
.invisible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
/**
 * Custom layout sections
 */
.custom {
  display: block;
}
#container:after,
.custom:after {
  content: "";
  display: table;
  clear: both;
}
/*!
 * This file is part of Contao.
 *
 * (c) Leo Feyer
 *
 * @license LGPL-3.0-or-later
 */
/**
 * Make the wrapping container 960 pixel wide
 */
#wrapper {
  width: auto;
  margin: 0 auto;
}
/**
 * Set the default margin of the grid columns
 */
*[class*="grid"] {
  float: left;
  margin-left: 10px;
  margin-right: 10px;
  display: inline;
}
/**
 * Add a default margin to all content elements, so they align with the floatet
 * ones (otherwise you would have to add "grid12" to every element)
 */
.mod_article *[class*="ce_"],
.mod_article *[class*="mod_"] {
  margin-left: 10px;
  margin-right: 10px;
}
/**
 * Handle news and event reader modules which are added via content element and
 * contain content elements themselves (see #5331)
 */
.mod_article .mod_newsreader,
.mod_article .mod_eventreader {
  margin-left: 0;
  margin-right: 0;
}
.mod_article *[class*="layout_"] > *,
.mod_article *[class*="event_"] > * {
  margin-left: 10px;
  margin-right: 10px;
}
/**
 * Remove the margin from floated articles, because the margin is already
 * applied to its content elements (see above)
 */
.mod_article.grid1,
.mod_article.grid2,
.mod_article.grid3,
.mod_article.grid4,
.mod_article.grid5,
.mod_article.grid6,
.mod_article.grid7,
.mod_article.grid8,
.mod_article.grid9,
.mod_article.grid10,
.mod_article.grid11,
.mod_article.grid12 {
  margin-left: 0;
  margin-right: 0;
}
/**
 * Automatically clear the floats in the main column, so you do not have to add
 * a clearing div to each article
 */
#main .inside {
  overflow: hidden;
}
/**
 * Grid column widths
 */
.grid1 {
  width: 60px;
}
.grid2 {
  width: 140px;
}
.grid3 {
  width: 220px;
}
.grid4 {
  width: 300px;
}
.grid5 {
  width: 380px;
}
.grid6 {
  width: 460px;
}
.grid7 {
  width: 540px;
}
.grid8 {
  width: 620px;
}
.grid9 {
  width: 700px;
}
.grid10 {
  width: 780px;
}
.grid11 {
  width: 860px;
}
.grid12 {
  width: 940px;
}
/**
 * Floated articles can be 20 pixel wider (no margin)
 */
.mod_article.grid1 {
  width: 80px;
}
.mod_article.grid2 {
  width: 160px;
}
.mod_article.grid3 {
  width: 240px;
}
.mod_article.grid4 {
  width: 320px;
}
.mod_article.grid5 {
  width: 400px;
}
.mod_article.grid6 {
  width: 480px;
}
.mod_article.grid7 {
  width: 560px;
}
.mod_article.grid8 {
  width: 640px;
}
.mod_article.grid9 {
  width: 720px;
}
.mod_article.grid10 {
  width: 800px;
}
.mod_article.grid11 {
  width: 880px;
}
.mod_article.grid12 {
  width: 960px;
}
/**
 * Default offset widths
 */
.offset1 {
  margin-left: 90px  !important;
}
.offset2 {
  margin-left: 170px !important;
}
.offset3 {
  margin-left: 250px !important;
}
.offset4 {
  margin-left: 330px !important;
}
.offset5 {
  margin-left: 410px !important;
}
.offset6 {
  margin-left: 490px !important;
}
.offset7 {
  margin-left: 570px !important;
}
.offset8 {
  margin-left: 650px !important;
}
.offset9 {
  margin-left: 730px !important;
}
.offset10 {
  margin-left: 810px !important;
}
.offset11 {
  margin-left: 890px !important;
}
.offset12 {
  margin-left: 970px !important;
}
/**
 * Floated articles do not have margin
 */
.mod_article.offset1 {
  margin-left: 80px  !important;
}
.mod_article.offset2 {
  margin-left: 160px !important;
}
.mod_article.offset3 {
  margin-left: 240px !important;
}
.mod_article.offset4 {
  margin-left: 320px !important;
}
.mod_article.offset5 {
  margin-left: 400px !important;
}
.mod_article.offset6 {
  margin-left: 480px !important;
}
.mod_article.offset7 {
  margin-left: 560px !important;
}
.mod_article.offset8 {
  margin-left: 640px !important;
}
.mod_article.offset9 {
  margin-left: 720px !important;
}
.mod_article.offset10 {
  margin-left: 800px !important;
}
.mod_article.offset11 {
  margin-left: 880px !important;
}
.mod_article.offset12 {
  margin-left: 960px !important;
}
/**
 * Reduce the overall width and the width of the grid columns if the screen
 * width is less than 980px (e.g. on a portrait tablet)
 */
@media (min-width: 48em) and (max-width: 97.1875em) {
  /**
	 * Reduce the overall width
	 */
  #wrapper {
    width: auto;
  }
  /**
	 * Reduce the grid column widths
	 */
  .grid1 {
    width: 42px;
  }
  .grid2 {
    width: 104px;
  }
  .grid3 {
    width: 166px;
  }
  .grid4 {
    width: 228px;
  }
  .grid5 {
    width: 290px;
  }
  .grid6 {
    width: 352px;
  }
  .grid7 {
    width: 414px;
  }
  .grid8 {
    width: 476px;
  }
  .grid9 {
    width: 538px;
  }
  .grid10 {
    width: 600px;
  }
  .grid11 {
    width: 662px;
  }
  .grid12 {
    width: 724px;
  }
  /**
	 * Floated articles can be 20 pixel wider (no margin)
	 */
  .mod_article.grid1 {
    width: 62px;
  }
  .mod_article.grid2 {
    width: 124px;
  }
  .mod_article.grid3 {
    width: 186px;
  }
  .mod_article.grid4 {
    width: 248px;
  }
  .mod_article.grid5 {
    width: 310px;
  }
  .mod_article.grid6 {
    width: 372px;
  }
  .mod_article.grid7 {
    width: 434px;
  }
  .mod_article.grid8 {
    width: 496px;
  }
  .mod_article.grid9 {
    width: 558px;
  }
  .mod_article.grid10 {
    width: 620px;
  }
  .mod_article.grid11 {
    width: 682px;
  }
  .mod_article.grid12 {
    width: 744px;
  }
  /**
	 * Reduce the offset widths
	 */
  .offset1 {
    margin-left: 72px  !important;
  }
  .offset2 {
    margin-left: 134px !important;
  }
  .offset3 {
    margin-left: 196px !important;
  }
  .offset4 {
    margin-left: 258px !important;
  }
  .offset5 {
    margin-left: 320px !important;
  }
  .offset6 {
    margin-left: 382px !important;
  }
  .offset7 {
    margin-left: 444px !important;
  }
  .offset8 {
    margin-left: 506px !important;
  }
  .offset9 {
    margin-left: 568px !important;
  }
  .offset10 {
    margin-left: 630px !important;
  }
  .offset11 {
    margin-left: 692px !important;
  }
  .offset12 {
    margin-left: 754px !important;
  }
  /**
	 * Floated articles do not have margin
	 */
  .mod_article.offset1 {
    margin-left: 62px  !important;
  }
  .mod_article.offset2 {
    margin-left: 124px !important;
  }
  .mod_article.offset3 {
    margin-left: 186px !important;
  }
  .mod_article.offset4 {
    margin-left: 248px !important;
  }
  .mod_article.offset5 {
    margin-left: 310px !important;
  }
  .mod_article.offset6 {
    margin-left: 372px !important;
  }
  .mod_article.offset7 {
    margin-left: 434px !important;
  }
  .mod_article.offset8 {
    margin-left: 496px !important;
  }
  .mod_article.offset9 {
    margin-left: 558px !important;
  }
  .mod_article.offset10 {
    margin-left: 620px !important;
  }
  .mod_article.offset11 {
    margin-left: 682px !important;
  }
  .mod_article.offset12 {
    margin-left: 744px !important;
  }
}
/**
 * Remove all floats and fixed widths if the screen width is less than 768
 * pixel (e.g. on a mobile phone)
 */
@media (max-width: 47.9375em) {
  /**
	 * Remove the overall width
	 */
  #wrapper {
    width: auto;
  }
  /**
	 * Show all columns underneath each other
	 */
  *[class*="grid"] {
    float: none !important;
    display: block !important;
    width: auto !important;
  }
  *[class*="offset"] {
    margin-left: 10px !important;
  }
}
/*!
 * This file is part of Contao.
 *
 * (c) Leo Feyer
 *
 * @license LGPL-3.0-or-later
 */
/**
 * Apply the holy grail CSS layout if the screen is at least 768 pixel wide,
 * otherwise display all columns underneath each other
 *
 * @see http://www.alistapart.com/articles/holygrail
 */
@media (max-width: 48em) {
  #wrapper {
    margin: 0;
    width: auto;
  }
  #container {
    padding-left: 0;
    padding-right: 0;
  }
  #main,
  #left,
  #right {
    float: none;
    width: auto;
  }
  #left {
    right: 0;
    margin-left: 0;
  }
  #right {
    margin-right: 0;
  }
}
/**
 * Flexible images
 *
 * @see http://webdesignerwall.com/tutorials/responsive-design-with-css3-media-queries
 */
img {
  max-width: 100%;
  height: auto;
}
.ie7 img {
  -ms-interpolation-mode: bicubic;
}
.ie8 img {
  width: auto;
  /* see #5789 */
}
/**
 * Responsive audio (see #441)
 */
.audio_container audio {
  max-width: 100%;
}
/**
 * Responsive videos (see #1348)
 */
.video_container video {
  max-width: 100%;
  height: auto;
}
.responsive {
  position: relative;
  height: 0;
}
.responsive iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.responsive.ratio-169 {
  padding-bottom: 56.25%;
}
.responsive.ratio-1610 {
  padding-bottom: 62.5%;
}
.responsive.ratio-219 {
  padding-bottom: 42.8571%;
}
.responsive.ratio-43 {
  padding-bottom: 75%;
}
.responsive.ratio-32 {
  padding-bottom: 66.6666%;
}
/* set defaults */
body {
  font-size: 62.5%;
}
*,
:before,
:after {
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/source-code-pro-v13-latin-italic.eot');
  src: local(''), url('../fonts/source-code-pro-v13-latin-italic.eot?#iefix') format('embedded-opentype'), url('../fonts/source-code-pro-v13-latin-italic.woff2') format('woff2'), url('../fonts/source-code-pro-v13-latin-italic.woff') format('woff'), url('../fonts/source-code-pro-v13-latin-italic.ttf') format('truetype'), url('../fonts/source-code-pro-v13-latin-italic.svg#SourceCodePro') format('svg');
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/source-code-pro-v13-latin-regular.eot');
  src: local(''), url('../fonts/source-code-pro-v13-latin-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/source-code-pro-v13-latin-regular.woff2') format('woff2'), url('../fonts/source-code-pro-v13-latin-regular.woff') format('woff'), url('../fonts/source-code-pro-v13-latin-regular.ttf') format('truetype'), url('../fonts/source-code-pro-v13-latin-regular.svg#SourceCodePro') format('svg');
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/source-code-pro-v13-latin-600.eot');
  src: local(''), url('../fonts/source-code-pro-v13-latin-600.eot?#iefix') format('embedded-opentype'), url('../fonts/source-code-pro-v13-latin-600.woff2') format('woff2'), url('../fonts/source-code-pro-v13-latin-600.woff') format('woff'), url('../fonts/source-code-pro-v13-latin-600.ttf') format('truetype'), url('../fonts/source-code-pro-v13-latin-600.svg#SourceCodePro') format('svg');
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/source-code-pro-v13-latin-600italic.eot');
  src: local(''), url('../fonts/source-code-pro-v13-latin-600italic.eot?#iefix') format('embedded-opentype'), url('../fonts/source-code-pro-v13-latin-600italic.woff2') format('woff2'), url('../fonts/source-code-pro-v13-latin-600italic.woff') format('woff'), url('../fonts/source-code-pro-v13-latin-600italic.ttf') format('truetype'), url('../fonts/source-code-pro-v13-latin-600italic.svg#SourceCodePro') format('svg');
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/source-code-pro-v13-latin-700.eot');
  src: local(''), url('../fonts/source-code-pro-v13-latin-700.eot?#iefix') format('embedded-opentype'), url('../fonts/source-code-pro-v13-latin-700.woff2') format('woff2'), url('../fonts/source-code-pro-v13-latin-700.woff') format('woff'), url('../fonts/source-code-pro-v13-latin-700.ttf') format('truetype'), url('../fonts/source-code-pro-v13-latin-700.svg#SourceCodePro') format('svg');
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/source-code-pro-v13-latin-700italic.eot');
  src: local(''), url('../fonts/source-code-pro-v13-latin-700italic.eot?#iefix') format('embedded-opentype'), url('../fonts/source-code-pro-v13-latin-700italic.woff2') format('woff2'), url('../fonts/source-code-pro-v13-latin-700italic.woff') format('woff'), url('../fonts/source-code-pro-v13-latin-700italic.ttf') format('truetype'), url('../fonts/source-code-pro-v13-latin-700italic.svg#SourceCodePro') format('svg');
}
img {
  vertical-align: middle;
}
.img-responsive {
  display: block;
}
/* helpers */
.f-regular {
  font-weight: 400;
}
.f-bold {
  font-weight: 700;
}
.f-normal {
  font-style: normal;
}
.f-italic {
  font-style: italic;
}
.uppercase {
  text-transform: uppercase;
}
.lowercase {
  text-transform: lowercase;
}
.capitalize {
  text-transform: capitalize;
}
.t-left {
  text-align: left;
}
.t-right {
  text-align: right;
}
.t-center {
  text-align: center;
}
.t-justify {
  text-align: justify;
}
.pre {
  white-space: pre;
}
.nowrap {
  white-space: nowrap;
}
.pre-wrap {
  white-space: pre-wrap;
}
.pre-line {
  white-space: pre-line;
}
.relative {
  position: relative;
}
.absolute {
  position: absolute;
}
.static {
  position: static;
}
.fixed {
  position: fixed;
}
.content0 {
  content: " ";
}
.no-height {
  height: 0;
}
.full-height {
  height: 100%;
}
.no-width {
  width: 0;
}
.full-width {
  width: 100%;
}
.margin-auto {
  margin-right: auto;
  margin-left: auto;
}
.margin-top-0 {
  margin-top: 0em;
  margin-top: 0rem;
}
.margin-top-1 {
  margin-top: 1em;
  margin-top: 1rem;
}
.margin-top-2 {
  margin-top: 2em;
  margin-top: 2rem;
}
.margin-top-3 {
  margin-top: 3em;
  margin-top: 3rem;
}
.margin-top-4 {
  margin-top: 4em;
  margin-top: 4rem;
}
.margin-right-0 {
  margin-right: 0em;
  margin-right: 0rem;
}
.margin-right-1 {
  margin-right: 1em;
  margin-right: 1rem;
}
.margin-right-2 {
  margin-right: 2em;
  margin-right: 2rem;
}
.margin-right-3 {
  margin-right: 3em;
  margin-right: 3rem;
}
.margin-right-4 {
  margin-right: 4em;
  margin-right: 4rem;
}
.margin-bottom-0 {
  margin-bottom: 0em;
  margin-bottom: 0rem;
}
.margin-bottom-1 {
  margin-bottom: 1em;
  margin-bottom: 1rem;
}
.margin-bottom-2 {
  margin-bottom: 2em;
  margin-bottom: 2rem;
}
.margin-bottom-3 {
  margin-bottom: 3em;
  margin-bottom: 3rem;
}
.margin-bottom-4 {
  margin-bottom: 4em;
  margin-bottom: 4rem;
}
.margin-left-0 {
  margin-left: 0em;
  margin-left: 0rem;
}
.margin-left-1 {
  margin-left: 1em;
  margin-left: 1rem;
}
.margin-left-2 {
  margin-left: 2em;
  margin-left: 2rem;
}
.margin-left-3 {
  margin-left: 3em;
  margin-left: 3rem;
}
.margin-left-4 {
  margin-left: 4em;
  margin-left: 4rem;
}
.padding-auto {
  padding-right: auto;
  padding-left: auto;
}
.padding-top-0 {
  padding-top: 0em;
  padding-top: 0rem;
}
.padding-top-1 {
  padding-top: 1em;
  padding-top: 1rem;
}
.padding-top-2 {
  padding-top: 2em;
  padding-top: 2rem;
}
.padding-top-3 {
  padding-top: 3em;
  padding-top: 3rem;
}
.padding-top-4 {
  padding-top: 4em;
  padding-top: 4rem;
}
.padding-right-0 {
  padding-right: 0em;
  padding-right: 0rem;
}
.padding-right-1 {
  padding-right: 1em;
  padding-right: 1rem;
}
.padding-right-2 {
  padding-right: 2em;
  padding-right: 2rem;
}
.padding-right-3 {
  padding-right: 3em;
  padding-right: 3rem;
}
.padding-right-4 {
  padding-right: 4em;
  padding-right: 4rem;
}
.padding-bottom-0 {
  padding-bottom: 0em;
  padding-bottom: 0rem;
}
.padding-bottom-1 {
  padding-bottom: 1em;
  padding-bottom: 1rem;
}
.padding-bottom-2 {
  padding-bottom: 2em;
  padding-bottom: 2rem;
}
.padding-bottom-3 {
  padding-bottom: 3em;
  padding-bottom: 3rem;
}
.padding-bottom-4 {
  padding-bottom: 4em;
  padding-bottom: 4rem;
}
.padding-left-0 {
  padding-left: 0em;
  padding-left: 0rem;
}
.padding-left-1 {
  padding-left: 1em;
  padding-left: 1rem;
}
.padding-left-2 {
  padding-left: 2em;
  padding-left: 2rem;
}
.padding-left-3 {
  padding-left: 3em;
  padding-left: 3rem;
}
.padding-left-4 {
  padding-left: 4em;
  padding-left: 4rem;
}
.round {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}
.round-top {
  -webkit-border-radius: 5px 5px 0 0;
  -moz-border-radius: 5px 5px 0 0;
  border-radius: 5px 5px 0 0;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}
.round-bottom {
  -webkit-border-radius: 0 0 5px 5px;
  -moz-border-radius: 0 0 5px 5px;
  border-radius: 0 0 5px 5px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}
.light {
  background-color: #f8f8f8;
}
.platinum {
  background-color: #e5e4e2;
}
.goose {
  background-color: #d1d0ce;
}
.cloud {
  background-color: #b6b6b4;
}
.battleship {
  background-color: #848482;
}
.granite {
  background-color: #837e7c;
}
.center-element {
  float: none;
  margin-left: auto;
  margin-right: auto;
}
.float_left,
.float-left,
.f-left {
  float: left;
}
.float_right,
.float-right,
.f-right {
  float: right;
}
.float_none,
.float-none,
.f-none {
  float: none;
}
.clear,
.clean {
  clear: both;
}
.clear:before,
.clear:after,
.row:before,
.row:after {
  content: " ";
  display: table;
}
.clean,
.clear:after,
.row:after {
  height: 0.1px;
  font-size: 0.1px;
  line-height: 0.1px;
  clear: both;
  zoom: 1;
}
.clear,
.row {
  zoom: 1;
}
.row {
  position: relative;
  margin-left: -15px;
  margin-right: -15px;
}
.no-margin {
  margin: 0;
}
.no-padding {
  padding: 0;
}
.no-float {
  float: none;
}
.no-background {
  background: transparent;
}
.no-border {
  border: 0;
}
/* typo */
body {
  font-family: 'Source Code Pro', Arial, Helvetica, sans-serif;
  color: #5e5e5e;
  font-weight: 400;
}
p {
  font-size: 1.6em;
  font-weight: 400;
  line-height: 1.5em;
  margin: 1.5em 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Source Code Pro', Arial, Helvetica, sans-serif;
  font-weight: 700;
  color: #5e5e5e;
}
h1 {
  font-size: 3em;
  line-height: 1em;
  margin: 0;
}
h2 {
  font-size: 2.4em;
  line-height: 1em;
  margin: 1em 0;
}
h3 {
  font-size: 2em;
  line-height: 1.2em;
  margin: 1.2em 0;
}
h4 {
  font-size: 1.6em;
  line-height: 1.5em;
  margin: 1.5em 0;
}
h5 {
  font-size: 1.6em;
  line-height: 1.5em;
  margin: 1.5em 0;
}
h6 {
  font-size: 1.6em;
  line-height: 1.5em;
  margin: 1.5em 0;
}
a {
  text-decoration: none;
  color: #6c161b;
}
a:visited {
  color: #000000;
}
a:focus {
  text-decoration: none;
  color: #cc2d32;
}
a:active {
  text-decoration: none;
  color: #cc2d32;
}
a:hover {
  text-decoration: none;
  color: #e3a514;
}
ul,
ol {
  margin: 0 0 1.5em;
}
ul {
  list-style-type: square;
}
ol {
  list-style-type: decimal;
}
li {
  margin: 0 0 1.5em 1.5em;
  font-size: 1.6em;
  line-height: 1.5em;
}
li li,
li p {
  font-size: 1em;
}
strong,
em {
  font-weight: 700;
}
table {
  width: 100%;
  margin-bottom: 3em;
  vertical-align: top;
  border-collapse: collapse;
  border-spacing: 0px;
}
th,
td {
  padding: .75em;
  vertical-align: top;
  text-align: left;
  font-size: 1.6em;
  font-weight: 400;
  line-height: 1.5em;
}
th p,
td p,
th li,
td li {
  font-size: 1em;
}
th {
  font-weight: bold;
}
td:first-child {
  padding-left: 0;
}
/* sections */
header {
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 100;
  position: fixed;
  box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.7);
}
@media (max-width: 63.999em) {
  header {
    position: absolute;
    top: 0;
    left: 0;
  }
}
header .inside {
  overflow: hidden;
  padding: 1.2em 0;
}
#logo {
  text-align: center;
  margin: 0 !important;
  padding: 0 !important;
}
#logo a {
  display: block;
}
#container > .inside {
  margin: 0 auto;
  padding: 4.8em 1.4em;
  overflow: hidden;
  min-height: 1px;
  width: 100%;
}
@media (min-width: 47.999em) {
  #container > .inside {
    max-width: 76.8em;
    padding: 4.8em 0 9.6em;
  }
}
@media (min-width: 63.999em) {
  #container > .inside {
    max-width: 102.4em;
  }
}
@media (min-width: 77.999em) {
  #container > .inside {
    max-width: 124.8em;
  }
}
footer .inside {
  background: #000000;
  overflow: hidden;
  padding-top: 1em;
  color: #ffffff;
  text-align: center;
}
footer .inside a,
footer .inside a:visited,
footer .inside a:focus,
footer .inside a:active,
footer .inside a:hover {
  color: #ffffff;
}
/* mod_elements */
.menu ul {
  list-style-type: none;
  margin: 1.2em 0 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}
@media (max-width: 63.999em) {
  .menu ul {
    display: none;
  }
}
@media (min-width: 63.999em) {
  .menu ul {
    margin: 0;
  }
}
.menu ul.display {
  display: block;
}
.menu ul li {
  margin: 0;
  padding: 0;
  text-align: center;
}
@media (min-width: 63.999em) {
  .menu ul li {
    float: left;
  }
}
.menu ul li a,
.menu ul li strong {
  display: block;
  padding: .6em;
  margin: 0 .6em;
  color: #ffffff;
}
.menu ul li a:hover,
.menu ul li strong:hover {
  color: #e3a514;
}
.menu ul li a.active,
.menu ul li strong.active {
  color: #cc2d32;
  font-style: italic;
}
@media (min-width: 63.999em) {
  .centered {
    width: 100%;
    position: relative;
    float: left;
  }
  .centered > ul {
    right: 50%;
    position: relative;
    overflow: visible;
    float: right;
  }
  .centered > ul li {
    left: 50%;
    position: relative;
    float: left;
  }
  .centered > ul li li {
    left: none;
    float: none;
  }
}
@media (max-width: 63.999em) {
  .hamburger {
    display: block;
    background: #000000;
    opacity: 0.5;
    width: 60px;
    height: 40px;
    position: relative;
    margin: 0 auto;
    border-radius: 4px;
    transition: border-radius 0.5s;
  }
  .hamburger:hover {
    cursor: pointer;
  }
  .line {
    position: absolute;
    left: 10px;
    height: 2px;
    width: 40px;
    background: #ffffff;
    border-radius: 1px;
    display: block;
    transition: 0.5s;
    transform-origin: center;
  }
  .line:nth-child(1) {
    top: 8px;
  }
  .line:nth-child(2) {
    top: 19px;
  }
  .line:nth-child(3) {
    top: 30px;
  }
  .hamburger.checked .line:nth-child(1) {
    transform: translateY(12px) rotate(-45deg);
  }
  .hamburger.checked .line:nth-child(2) {
    opacity: 0;
  }
  .hamburger.checked .line:nth-child(3) {
    transform: translateY(-12px) rotate(45deg);
  }
}
/* ce_elements */
#teaser .announcement {
  margin: 0 !important;
  padding: 0 !important;
}
#teaser .content {
  display: none;
}
@media (min-width: 63.999em) {
  #teaser .content {
    display: block;
    position: absolute;
    top: 42%;
    width: 100%;
  }
  #teaser .content .content_element {
    width: 100%;
    position: relative;
    float: left;
  }
  #teaser .content .content_element > .ce_text {
    right: 50%;
    position: relative;
    overflow: visible;
    float: right;
  }
  #teaser .content .content_element > .ce_text p {
    left: 50%;
    position: relative;
    float: left;
    color: #ffffff;
    font-size: 2.4em;
    line-height: 1em;
    text-align: center;
  }
}
@media (min-width: 77.999em) {
  #teaser .content .content_element > .ce_text p {
    font-size: 3.6em;
    line-height: 1.333333em;
  }
}
.ce_gallery li {
  margin: 0;
  padding: 0.75em;
}
.ce_gallery li > figure {
  line-height: 0;
}
.ce_gallery li.col_first {
  padding-left: 0;
}
.ce_gallery li.col_last {
  padding-right: 0;
}
@media (max-width: 77.999em) {
  .ce_gallery li,
  .ce_gallery li.col_first,
  .ce_gallery li.col_last {
    padding: 0.75em 1.5em 0.75em 0 !important;
  }
}
@media (max-width: 63.999em) {
  .ce_gallery li,
  .ce_gallery li.col_first,
  .ce_gallery li.col_last {
    padding: 0.75em !important;
  }
}
@media (max-width: 47.999em) {
  .ce_gallery li,
  .ce_gallery li.col_first,
  .ce_gallery li.col_last {
    padding: 0.75em 0 !important;
  }
}
@media (max-width: 77.999em) {
  .ce_gallery > ul li.col_first {
    clear: none;
  }
}
.ce_gallery a {
  display: block;
  position: relative;
  vertical-align: middle;
}
.ce_gallery a:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #000;
  z-index: 2;
  visibility: hidden;
  opacity: 0;
  -ms-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.ce_gallery a:after {
  content: 'Großansicht';
  color: #ffffff;
  position: absolute;
  width: 100%;
  bottom: 24px;
  left: 24px;
  z-index: 3;
  visibility: hidden;
  -ms-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.ce_gallery a:hover:before,
.ce_gallery a:hover:after {
  opacity: 0.8;
  visibility: visible;
}
.img-center .image_container img {
  margin-left: auto;
  margin-right: auto;
}
#cboxTitle,
#cboxCurrent {
  font-size: 1.2em;
  line-height: 2em;
}

/*# sourceMappingURL=styles.css.map */