@charset "UTF-8";
/*
Functions

Styleguide 1.1
*/
/*
Image-Url($imagePath)

Returns the path of an Image asset.

<!= type: css || isPureCode !>

Markup:
.selector {
	background-image: image-url("logo.png");
}

Styleguide 1.1.1
*/
/*
Relative Size($target-size, $context, $unit)

Calculates em's based on pixel values.

<!= type: css || isPureCode !>

Markup:
.selector {
	font-size: rs(19, 16);
}

Styleguide 1.1.2
*/
/*
Color-Adjust($color, $contrast)

Adjusts a color based on the lightness which is passed as a second parameter, this function was written by @necolas(https://github.com/necolas/).

<!= type: css || isPureCode !>

Markup:
.selector {
	background: color-adjust(#0097d7, 100%);
}

// Styleguide 1.1.3
*/
/*
Map-Fetch($map, $keys)

Navigates through nested Sass maps, this function was written by @jlong(https://github.com/jlong/)

<!= type: css || isPureCode !>

Markup:
@each $key, $value in map-get($headings, elements) {
	.selector {
	 	font-size: map-fetch($headings, elements $key font-size) +px;
	}
}

Styleguide 1.1.4
*/
/*
Map-RemoveKeys($map, $keys)

Removes multiple keys in a Sass map.

<!= type: css || isPureCode !>

Markup:
$newDecalarationsMap: map-removeKeys($declarations, font-size margin-bottom);

Styleguide 1.1.5
*/
/*
generateModifierComments($map, $keys)

Generate the modifier class comments for kss-node from a Sass map.

Markup:
generateModifierComments($brand-colors, " brand color.")
*/
/*
SASS Functions, Mixins and Variables

Styleguide 1
*/
/*
Functions

Styleguide 1.1
*/
/*
Image-Url($imagePath)

Returns the path of an Image asset.

<!= type: css || isPureCode !>

Markup:
.selector {
	background-image: image-url("logo.png");
}

Styleguide 1.1.1
*/
/*
Relative Size($target-size, $context, $unit)

Calculates em's based on pixel values.

<!= type: css || isPureCode !>

Markup:
.selector {
	font-size: rs(19, 16);
}

Styleguide 1.1.2
*/
/*
Color-Adjust($color, $contrast)

Adjusts a color based on the lightness which is passed as a second parameter, this function was written by @necolas(https://github.com/necolas/).

<!= type: css || isPureCode !>

Markup:
.selector {
	background: color-adjust(#0097d7, 100%);
}

// Styleguide 1.1.3
*/
/*
Map-Fetch($map, $keys)

Navigates through nested Sass maps, this function was written by @jlong(https://github.com/jlong/)

<!= type: css || isPureCode !>

Markup:
@each $key, $value in map-get($headings, elements) {
	.selector {
	 	font-size: map-fetch($headings, elements $key font-size) +px;
	}
}

Styleguide 1.1.4
*/
/*
Map-RemoveKeys($map, $keys)

Removes multiple keys in a Sass map.

<!= type: css || isPureCode !>

Markup:
$newDecalarationsMap: map-removeKeys($declarations, font-size margin-bottom);

Styleguide 1.1.5
*/
/*
generateModifierComments($map, $keys)

Generate the modifier class comments for kss-node from a Sass map.

Markup:
generateModifierComments($brand-colors, " brand color.")
*/
/*
Mixins

Styleguide 1.2
*/
/*
High density Image-Dimensions Mixin($fileName, $width, $height)

Creates the required rules for high density optimized images.

<!= type: css || isPureCode !>

Markup:
.selector {
	@include hdpi-img('brand-logo.png');
}

Styleguide 1.2.1
*/
/*
REM Unit Mixin($property, $value)

Creates a property independent 'rem' calculation with a pixel fallback, default property is set to 'font-size'.

<!= type: css || isPureCode !>

Markup:
.selector {
	@include rem($property: font-size, $value: 18);
}

Styleguide 1.2.2
*/
/*
Font-Size Mixin($font-size, $appendVrythm)

Creates a fully formed type style (sizing and vertical rhythm) by passing in a single value.

<!= type: css || isPureCode !>

Markup:
.selector {
	@include rem($size: 16, $appendVrythm: true);
}

Styleguide 1.2.3
*/
/*
CSS Triangle Mixin($triangleSize, $triangleColor, $triangleDirection)

Creates an css arrow as per http://cssarrowplease.com/.

<!= type: css || isPureCode !>

Markup:
.selector:after {
	position: absolute;
	top: -5px;
	left: 50%;
	margin-left: -2.5px;
	@include cssTriangle(5px, #fff, bottom);
}

Styleguide 1.2.4
*/
/*
Media-Query SASS Mixins($target-size, $context, $unit)

Wraps rules around the desired media query context.

<!= type: css || isPureCode !>

Markup:
@include min-screen(width) {}             - shortcut for @media screen and (min-width ...)
@include max-screen(width) {}             - shortcut for @media screen and (max-width ...)
@include screen(min-width, max-width) {}  - shortcut for @media screen and (min-width ...) and (max-width ...)
@include hdpi {}                          - devices with high-density screens

Styleguide 1.2.6
*/
/*
Generic rules

Resets and other generic stuff.
*/
/*
Head

Declarations which should be put at the top of the document e.g. @font-face declarations and CSS viewports.
*/
/*
  Global border-box
  @docs http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
  */
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/
*/
/*
Normalize HTML5 display definitions
*/
/**
 * Corrects `block` display not defined in IE6/7/8/9 & FF3.
 */
article,
aside,
details,
figcaption,
figure,
main,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block; }

/**
 * Corrects `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
progress,
video {
  display: inline-block; }

/**
 * Addresses styling for `hidden` attribute not present in IE7/8/9, FF3, S4.
 * Known issue: no IE6 support.
 */
[hidden] {
  display: none; }

/*
Normalize Base
*/
/**
 * 1. Corrects text resizing oddly in IE6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevents iOS text size adjust after orientation change, without disabling
 *    user zoom.
 * 3. Forces vertical scrollbar to prevent jumpy page
 */
html {
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  overflow-y: scroll;
  /* 3 */ }

/*
Normalize Forms
*/
/**
 * 1. Corrects font size not being inherited in all browsers.
 * 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome.
 * 3. Improves appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */ }

/**
 * Re-apply the `font-weight` to avoid modifying the default UX, and because
 * the default cannot be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/**
 * Addresses FF3/4 setting `line-height` on `input` using `!important` in the
 * UA stylesheet.
 */
button,
input {
  line-height: normal; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Corrects inability to style clickable `input` types in iOS.
 * 3. Improves usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Removes inner spacing in IE7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * 1. Addresses box sizing set to content-box in IE8/9.
 * 2. Removes excess padding in IE8/9.
 * 3. Removes excess padding in IE7.
 *    Known issue: excess padding remains in IE6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * 1. Addresses `appearance` set to `searchfield` in S5, Chrome.
 * 2. Addresses `box-sizing` set to `border-box` in S5, Chrome (include `-moz`
 *    to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */ }

/**
 * Removes inner padding and search cancel button in S5, Chrome on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Removes inner padding and border in FF3+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

.i--panorama {
  font-size: 4em; }

/*
Utilities

Utility classes which can be used independently from each other to create simple stylings.

Styleguide 2
*/
@-webkit-keyframes flyDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }
@keyframes flyDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

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

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

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

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

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

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

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

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

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

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


.u-aniDown {
  opacity: 0;
  -webkit-animation: flyDown 0.4s both;
          animation: flyDown 0.4s both; }
  .no-cssanimations
  .u-aniDown {
    opacity: 1; }


.u-aniUp {
  opacity: 0;
  -webkit-animation: flyUp 0.4s both;
          animation: flyUp 0.4s both; }
  .no-cssanimations
  .u-aniUp {
    opacity: 1; }


.u-aniRight {
  opacity: 0;
  -webkit-animation: flyRight 0.4s both;
          animation: flyRight 0.4s both; }
  .no-cssanimations
  .u-aniRight {
    opacity: 1; }


.u-aniLeft {
  opacity: 0;
  -webkit-animation: flyLeft 0.4s both;
          animation: flyLeft 0.4s both; }
  .no-cssanimations
  .u-aniLeft {
    opacity: 1; }


.u-aniDelay {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }


.u-aniDelay2x {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s; }


.u-aniDelay3x {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s; }


.u-aniDelay4x {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s; }

/*
Brand styles

Helper classes for brand related stylings.

Styleguide 2.5
*/
/*
Brand text styles

Markup:
<span class="u-brand">I am an paragraph.</span>

Styleguide 2.5.1
*/
.u-brand {
  font-family: "Brown-Light", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #eb4b19; }

/*
Brand color helpers

.u-brandColor-primary - primary brand color.
.u-brandColor-secondary - secondary brand color.
.u-brandColor-tertiary - tertiary brand color.
.u-brandColor-quaternary - quaternary brand color.
.u-brandColor-quinary - quinary brand color.
.u-brandColor-senary - senary brand color.
.u-brandColor-septenary - septenary brand color.

Markup:
<span class="{$modifiers}">Brand color helpers.</span>

Styleguide 2.5.2
*/
.u-brandColor-primary {
  color: #eb4b19; }

.u-brandColor-secondary {
  color: #052850; }

.u-brandColor-tertiary {
  color: #0060a9; }

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

.u-brandColor-quinary {
  color: #ffffff; }

.u-brandColor-senary {
  color: rgba(4, 43, 122, 0.7); }

.u-brandColor-septenary {
  color: #144469; }

/*
Brand font-family helper

Markup:
<span class="u-brandFace">This text will be set in the brands font-family.</span>

Styleguide 2.5.3
*/
.u-brandFace {
  font-family: "Brown-Light", "Helvetica Neue", Helvetica, Arial, sans-serif; }

/*
Brand logos

Markup:
<img src="blank.gif" alt="CSS Wizardry" class="s  s--csswizardry-logo">

<img class="u-brandLogo" alt="Brand name" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="  />

Styleguide 2.5.4
*/
.u-brandLogo {
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: top;
  color: transparent !important; }

.u-brandLogo--default {
  width: 152px;
  height: 99px;
  background-image: url('vhs-assets-css-b3c544c7ad7ea3d8c5d8a8b63b768c4c.png'); }

@media screen and (max-width: 699px) {
  .u-brandLogo--default {
    width: 106px;
    height: 70px; } }

/*
Display utilities

Styleguide 2.2
*/
/*
Visibillity helpers

.u-block - Display the target as an block element.
.u-inlineBlock - Display the target as an block element with inline stats.
.u-flex - Displays child elements as flex boxes. /!\ Beware: not IE10 or less safe! /!.u-hidden - Hide from both screenreaders and browsers: http://www.h5bp.com/u
.u-invisible - Hide visually and from screenreaders, but maintain layout.

Markup:
<div class="{$modifiers}">This element won't be visible.</div>

Styleguide 2.2.1
*/

.u-block {
  display: block !important; }


.u-inlineBlock {
  display: inline-block !important; }


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


.u-invisible {
  visibility: hidden !important; }

.u-rounded {
  border-radius: 100%; }

@media screen and (max-width: 699px) {
  .u-hiddenOnSmall {
    display: none !important;
    visibility: hidden !important; } }

@media screen and (min-width: 700px), print {
  .u-hiddenOnMedium {
    display: none !important;
    visibility: hidden !important; } }

.u-spinner {
  background: #FFF;
  padding: 2em;
  text-align: center; }

.u-spinner__spinner {
  -webkit-animation: u-spinnerRotate 2s linear infinite;
          animation: u-spinnerRotate 2s linear infinite; }
  .no-cssanimations .u-spinner__spinner {
    width: 100px;
    height: 100px;
    background: url("data:image/gif;base64,R0lGODlhEAAQAPQAAP///wAAAPDw8IqKiuDg4EZGRnp6egAAAFhYWCQkJKysrL6+vhQUFJycnAQEBDY2NmhoaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAEAAQAAAFdyAgAgIJIeWoAkRCCMdBkKtIHIngyMKsErPBYbADpkSCwhDmQCBethRB6Vj4kFCkQPG4IlWDgrNRIwnO4UKBXDufzQvDMaoSDBgFb886MiQadgNABAokfCwzBA8LCg0Egl8jAggGAA1kBIA1BAYzlyILczULC2UhACH5BAkKAAAALAAAAAAQABAAAAV2ICACAmlAZTmOREEIyUEQjLKKxPHADhEvqxlgcGgkGI1DYSVAIAWMx+lwSKkICJ0QsHi9RgKBwnVTiRQQgwF4I4UFDQQEwi6/3YSGWRRmjhEETAJfIgMFCnAKM0KDV4EEEAQLiF18TAYNXDaSe3x6mjidN1s3IQAh+QQJCgAAACwAAAAAEAAQAAAFeCAgAgLZDGU5jgRECEUiCI+yioSDwDJyLKsXoHFQxBSHAoAAFBhqtMJg8DgQBgfrEsJAEAg4YhZIEiwgKtHiMBgtpg3wbUZXGO7kOb1MUKRFMysCChAoggJCIg0GC2aNe4gqQldfL4l/Ag1AXySJgn5LcoE3QXI3IQAh+QQJCgAAACwAAAAAEAAQAAAFdiAgAgLZNGU5joQhCEjxIssqEo8bC9BRjy9Ag7GILQ4QEoE0gBAEBcOpcBA0DoxSK/e8LRIHn+i1cK0IyKdg0VAoljYIg+GgnRrwVS/8IAkICyosBIQpBAMoKy9dImxPhS+GKkFrkX+TigtLlIyKXUF+NjagNiEAIfkECQoAAAAsAAAAABAAEAAABWwgIAICaRhlOY4EIgjH8R7LKhKHGwsMvb4AAy3WODBIBBKCsYA9TjuhDNDKEVSERezQEL0WrhXucRUQGuik7bFlngzqVW9LMl9XWvLdjFaJtDFqZ1cEZUB0dUgvL3dgP4WJZn4jkomWNpSTIyEAIfkECQoAAAAsAAAAABAAEAAABX4gIAICuSxlOY6CIgiD8RrEKgqGOwxwUrMlAoSwIzAGpJpgoSDAGifDY5kopBYDlEpAQBwevxfBtRIUGi8xwWkDNBCIwmC9Vq0aiQQDQuK+VgQPDXV9hCJjBwcFYU5pLwwHXQcMKSmNLQcIAExlbH8JBwttaX0ABAcNbWVbKyEAIfkECQoAAAAsAAAAABAAEAAABXkgIAICSRBlOY7CIghN8zbEKsKoIjdFzZaEgUBHKChMJtRwcWpAWoWnifm6ESAMhO8lQK0EEAV3rFopIBCEcGwDKAqPh4HUrY4ICHH1dSoTFgcHUiZjBhAJB2AHDykpKAwHAwdzf19KkASIPl9cDgcnDkdtNwiMJCshACH5BAkKAAAALAAAAAAQABAAAAV3ICACAkkQZTmOAiosiyAoxCq+KPxCNVsSMRgBsiClWrLTSWFoIQZHl6pleBh6suxKMIhlvzbAwkBWfFWrBQTxNLq2RG2yhSUkDs2b63AYDAoJXAcFRwADeAkJDX0AQCsEfAQMDAIPBz0rCgcxky0JRWE1AmwpKyEAIfkECQoAAAAsAAAAABAAEAAABXkgIAICKZzkqJ4nQZxLqZKv4NqNLKK2/Q4Ek4lFXChsg5ypJjs1II3gEDUSRInEGYAw6B6zM4JhrDAtEosVkLUtHA7RHaHAGJQEjsODcEg0FBAFVgkQJQ1pAwcDDw8KcFtSInwJAowCCA6RIwqZAgkPNgVpWndjdyohACH5BAkKAAAALAAAAAAQABAAAAV5ICACAimc5KieLEuUKvm2xAKLqDCfC2GaO9eL0LABWTiBYmA06W6kHgvCqEJiAIJiu3gcvgUsscHUERm+kaCxyxa+zRPk0SgJEgfIvbAdIAQLCAYlCj4DBw0IBQsMCjIqBAcPAooCBg9pKgsJLwUFOhCZKyQDA3YqIQAh+QQJCgAAACwAAAAAEAAQAAAFdSAgAgIpnOSonmxbqiThCrJKEHFbo8JxDDOZYFFb+A41E4H4OhkOipXwBElYITDAckFEOBgMQ3arkMkUBdxIUGZpEb7kaQBRlASPg0FQQHAbEEMGDSVEAA1QBhAED1E0NgwFAooCDWljaQIQCE5qMHcNhCkjIQAh+QQJCgAAACwAAAAAEAAQAAAFeSAgAgIpnOSoLgxxvqgKLEcCC65KEAByKK8cSpA4DAiHQ/DkKhGKh4ZCtCyZGo6F6iYYPAqFgYy02xkSaLEMV34tELyRYNEsCQyHlvWkGCzsPgMCEAY7Cg04Uk48LAsDhRA8MVQPEF0GAgqYYwSRlycNcWskCkApIyEAOwAAAAAAAAAAAA==") center center no-repeat; }
    .no-cssanimations .u-spinner__spinner .u-spinner__spinner__path {
      display: none; }

.u-spinner__spinner__path {
  stroke-dasharray: 1,150;
  /* 1%, 101% circumference */
  stroke-dashoffset: 0;
  stroke: #0060a9;
  stroke-linecap: round;
  -webkit-animation: u-spinnerDash 1.5s ease-in-out infinite;
          animation: u-spinnerDash 1.5s ease-in-out infinite; }

@-webkit-keyframes u-spinnerRotate {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes u-spinnerRotate {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@-webkit-keyframes u-spinnerDash {
  0% {
    stroke-dasharray: 1,150;
    /* 1%, 101% circumference */
    stroke-dashoffset: 0; }
  50% {
    stroke-dasharray: 90,150;
    /* 70%, 101% circumference */
    stroke-dashoffset: -35;
    /* 25% circumference */ }
  100% {
    stroke-dasharray: 90,150;
    /* 70%, 101% circumference */
    stroke-dashoffset: -124;
    /* -99% circumference */ } }

@keyframes u-spinnerDash {
  0% {
    stroke-dasharray: 1,150;
    /* 1%, 101% circumference */
    stroke-dashoffset: 0; }
  50% {
    stroke-dasharray: 90,150;
    /* 70%, 101% circumference */
    stroke-dashoffset: -35;
    /* 25% circumference */ }
  100% {
    stroke-dasharray: 90,150;
    /* 70%, 101% circumference */
    stroke-dashoffset: -124;
    /* -99% circumference */ } }

/*
Layout utilities

Styleguide 2.1
*/
/*
Float helpers

.u-floatRight - Floats the element to the right boundary.
.u-floatLeft - Floats the element to the left boundary.

Markup:
<span class="{$modifiers}">I am an paragraph.</span>

Styleguide 2.1.1
*/
.u-floatRight {
  float: right !important; }

.u-floatLeft {
  float: left !important; }

/*
Float clearfix

Contain floats: http://www.h5bp.com/q

Markup:
<div class="u-cf">This element will clear any floats inside of it.</div>

Styleguide 2.1.2
*/
.u-cf:before, .csc-sitemap:before, .csc-sitemap > ul > li:before, .u-cf:after, .csc-sitemap:after, .csc-sitemap > ul > li:after,
.u-clearfix:before,
.u-clearfix:after {
  content: "";
  display: table; }

.u-cf:after, .csc-sitemap:after, .csc-sitemap > ul > li:after,
.u-clearfix:after {
  clear: both; }

/*
Spacing utilities

Margin and padding helper classes. Use these to tweak layout on a micro level.

Styleguide 2.4
*/
/*
Margin utilities

.u-m0  - Resets the margin.
.u-mt0 - Resets the top margin.
.u-mr0 - Resets the right margin.
.u-ml0 - Resets the left margin.
.u-mb0 - Resets the bottom margin.
.u-m   - Adds a basic margin.
.u-mt  - Adds a basic margin on the top.
.u-mr  - Adds a basic margin on the right.
.u-ml  - Adds a basic margin on the left.
.u-mb  - Adds a basic margin on the bottom.
.u-m0-5   - Adds a half sized margin.
.u-mt0-5  - Adds a half sized margin on the top.
.u-mr0-5  - Adds a half sized margin on the right.
.u-ml0-5  - Adds a half sized margin on the left.
.u-mb0-5  - Adds a half sized margin on the bottom.

Markup:
<p class="{$modifiers}">I am an paragraph.</p>

Styleguide 2.4.1
*/

.u-m0 {
  margin: 0; }


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


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


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


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


.u-m {
  margin: 26px;
  margin: 1.625rem; }


.u-mt {
  margin-top: 26px;
  margin-top: 1.625rem; }


.u-mt2 {
  margin-top: 52px;
  margin-top: 3.25rem; }


.u-mr {
  margin-right: 26px;
  margin-right: 1.625rem; }


.u-ml {
  margin-left: 26px;
  margin-left: 1.625rem; }


.u-mb {
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

.csc-sitemap,
.u-mb2 {
  margin-bottom: 52px;
  margin-bottom: 3.25rem; }


.u-mb3 {
  margin-bottom: 78px;
  margin-bottom: 4.875rem; }


.u-m0-5 {
  margin: 13px;
  margin: 0.8125rem; }


.u-mt0-5 {
  margin-top: 13px;
  margin-top: 0.8125rem; }


.u-mr0-5 {
  margin-right: 13px;
  margin-right: 0.8125rem; }


.u-ml0-5 {
  margin-left: 13px;
  margin-left: 0.8125rem; }


.u-mb0-5 {
  margin-bottom: 13px;
  margin-bottom: 0.8125rem; }

/*
Padding utilities

.u-p0  - Resets the padding.
.u-pt0 - Resets the top padding.
.u-pr0 - Resets the right padding.
.u-pl0 - Resets the left padding.
.u-pb0 - Resets the bottom padding.
.u-p   - Adds a basic padding.
.u-pt  - Adds a basic padding on the top.
.u-pr  - Adds a basic padding on the right.
.u-pl  - Adds a basic padding on the left.
.u-pb  - Adds a basic padding on the bottom.
.u-p0-5   - Adds a half sized padding.
.u-pt0-5  - Adds a half sized padding on the top.
.u-pr0-5  - Adds a half sized padding on the right.
.u-pl0-5  - Adds a half sized padding on the left.
.u-pb0-5  - Adds a half sized padding on the bottom.

Markup:
<p class="{$modifiers}">I am an paragraph.</p>

Styleguide 2.4.2
*/

.u-p0 {
  padding: 0; }


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


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


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


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


.u-p2 {
  padding: 52px;
  padding: 3.25rem; }


.u-p {
  padding: 26px;
  padding: 1.625rem; }


.u-pt {
  padding-top: 26px;
  padding-top: 1.625rem; }


.u-pr {
  padding-right: 26px;
  padding-right: 1.625rem; }


.u-pl {
  padding-left: 26px;
  padding-left: 1.625rem; }


.u-pb {
  padding-bottom: 26px;
  padding-bottom: 1.625rem; }


.u-p0-5 {
  padding: 13px;
  padding: 0.8125rem; }


.u-pt0-5 {
  padding-top: 13px;
  padding-top: 0.8125rem; }


.u-pr0-5 {
  padding-right: 13px;
  padding-right: 0.8125rem; }


.u-pl0-5 {
  padding-left: 13px;
  padding-left: 0.8125rem; }


.u-pb0-5 {
  padding-bottom: 13px;
  padding-bottom: 0.8125rem; }

/*
Typographic utilities

Styleguide 2.3
*/
/*
Text alignment

.u-alignCenter - Centers the text.
.u-alignRight - Aligns the text on it's right boundary.
.u-alignLeft - Aligns the text on it's left boundary.
.u-vAlignMiddle - Vertically aligns the text centered.

Markup:
<p class="{$modifiers}">I am an paragraph.</p>

Styleguide 2.3.1
*/
.u-alignCenter {
  text-align: center; }

.u-alignRight {
  text-align: right; }

.u-alignLeft {
  text-align: left; }

.u-vAlignMiddle {
  vertical-align: middle; }

/*
Other utilities

.u-textBreak - Break strings when their length exceeds the width of their container.

Markup:
<p class="{$modifiers}">Extralongparagraphhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh</p>

Styleguide 2.3.2
*/

.u-textBreak {
  word-wrap: break-word;
  -webkit-hyphens: auto;
     -moz-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto; }

.u-bold {
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }

.u-thin {
  font-family: "Brown-Thin", sans-serif;
  font-weight: 400; }


.u-invertText,
.u-invertText h1,
.u-invertText h2,
.u-invertText h3,
.u-invertText h4,
.u-invertText h5,
.u-invertText h6 {
  color: #FFF; }


.u-smallText {
  font-size: 12px; }


.u-medianText {
  font-size: 13px; }


.u-largeText {
  font-size: 21px; }

.u-minorCopy, .cnt_sternchentext,
.sterntext {
  font-size: 12px; }

.u-caps {
  text-transform: uppercase; }

.u-currentColor {
  color: currentColor; }

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

.u-underlined {
  text-decoration: underline; }

.u-textBottom {
  vertical-align: text-bottom !important; }

.u-paragraphIcon {
  margin-right: .3em; }
  .u-paragraphIcon.i--star {
    margin-top: 4px; }

.u-firstUppercase:first-letter {
  text-transform: uppercase; }

a.u-firstUppercase {
  display: block; }

/*
Width classes

Sizes which are used in conjunction with other objects and abstractions like the grid system.

.u-w1/12 - One twelfth
.u-w1/10 - One tenth
.u-w1/8 - One eighth
.u-w1/6 - One sixth
.u-w2/12 - Two twelfths
.u-w1/5 - One fifth
.u-w2/10 - Two tenths
.u-w1/4 - One quarter
.u-w2/8 - Two eighths
.u-w3/12 - Three twelfths
.u-w3/10 - Three tenths
.u-w1/3 - One third
.u-w2/6 - Two sixths
.u-w4/12 - Four twelfths
.u-w3/8 - Three eighths
.u-w2/5 - Two fifths
.u-w4/10 - Four tenths
.u-w5/12 - Five twelfths
.u-w1/2 - One half
.u-w2/4 - Two quarters
.u-w3/6 - Three sixths
.u-w4/8 - Four eighths
.u-w5/10 - Five tenths
.u-w6/12 - Six twelfths
.u-w7/12 - Seven twelfths
.u-w3/5 - Three fifths
.u-w6/10 - Six tenths
.u-w5/8 - Five eighths
.u-w2/3 - Two thirds
.u-w4/6 - Four sixths
.u-w8/12 - Eight twelfths
.u-w7/10 - Seven tenths
.u-w3/4 - Three quarters
.u-w6/8 - Six eighths
.u-w9/12 - Nine twelfths
.u-w4/5 - Four fifths
.u-w8/10 - Eight tenths
.u-w5/6 - Five sixths
.u-w10/12 - Ten twelfths
.u-w7/8 - Seven eighths
.u-w9/10 - Nine tenths
.u-w11/12 - Eleven twelfths
.u-w1/1 - One whole

Markup:
<div class="{$modifiers}" style="padding: 10px; background: #eee;">.{$modifiers}</div>

Styleguide 2.6
*/
.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: 700px), print {
  .u-wt1\/1 {
    width: 100%; }
  .u-wt1\/2 {
    width: 50%; }
  .u-wt1\/3 {
    width: 33.333%; }
  .u-wt2\/3 {
    width: 66.666%; }
  .u-wt1\/4 {
    width: 25%; }
  .u-wt2\/4 {
    width: 50%; }
  .u-wt3\/4 {
    width: 75%; }
  .u-wt1\/5 {
    width: 20%; }
  .u-wt2\/5 {
    width: 40%; }
  .u-wt3\/5 {
    width: 60%; }
  .u-wt4\/5 {
    width: 80%; }
  .u-wt1\/6 {
    width: 16.666%; }
  .u-wt2\/6 {
    width: 33.333%; }
  .u-wt3\/6 {
    width: 50%; }
  .u-wt4\/6 {
    width: 66.666%; }
  .u-wt5\/6 {
    width: 83.333%; }
  .u-wt1\/8 {
    width: 12.5%; }
  .u-wt2\/8 {
    width: 25%; }
  .u-wt3\/8 {
    width: 37.5%; }
  .u-wt4\/8 {
    width: 50%; }
  .u-wt5\/8 {
    width: 62.5%; }
  .u-wt6\/8 {
    width: 75%; }
  .u-wt7\/8 {
    width: 87.5%; }
  .u-wt1\/10 {
    width: 10%; }
  .u-wt2\/10 {
    width: 20%; }
  .u-wt3\/10 {
    width: 30%; }
  .u-wt4\/10 {
    width: 40%; }
  .u-wt5\/10 {
    width: 50%; }
  .u-wt6\/10 {
    width: 60%; }
  .u-wt7\/10 {
    width: 70%; }
  .u-wt8\/10 {
    width: 80%; }
  .u-wt9\/10 {
    width: 90%; }
  .u-wt1\/12 {
    width: 8.333%; }
  .u-wt2\/12 {
    width: 16.666%; }
  .u-wt3\/12 {
    width: 25%; }
  .u-wt4\/12 {
    width: 33.333%; }
  .u-wt5\/12 {
    width: 41.666%; }
  .u-wt6\/12 {
    width: 50%; }
  .u-wt7\/12 {
    width: 58.333%; }
  .u-wt8\/12 {
    width: 66.666%; }
  .u-wt9\/12 {
    width: 75%; }
  .u-wt10\/12 {
    width: 62.5%; }
  .u-wt11\/12 {
    width: 91.666%; } }

@media screen and (min-width: 980px), print {
  .u-wd1\/1 {
    width: 100%; }
  .u-wd1\/2 {
    width: 50%; }
  .u-wd1\/3 {
    width: 33.333%; }
  .u-wd2\/3 {
    width: 66.666%; }
  .u-wd1\/4 {
    width: 25%; }
  .u-wd2\/4 {
    width: 50%; }
  .u-wd3\/4 {
    width: 75%; }
  .u-wd1\/5 {
    width: 20%; }
  .u-wd2\/5 {
    width: 40%; }
  .u-wd3\/5 {
    width: 60%; }
  .u-wd4\/5 {
    width: 80%; }
  .u-wd1\/6 {
    width: 16.666%; }
  .u-wd2\/6 {
    width: 33.333%; }
  .u-wd3\/6 {
    width: 50%; }
  .u-wd4\/6 {
    width: 66.666%; }
  .u-wd5\/6 {
    width: 83.333%; }
  .u-wd1\/8 {
    width: 12.5%; }
  .u-wd2\/8 {
    width: 25%; }
  .u-wd3\/8 {
    width: 37.5%; }
  .u-wd4\/8 {
    width: 50%; }
  .u-wd5\/8 {
    width: 62.5%; }
  .u-wd6\/8 {
    width: 75%; }
  .u-wd7\/8 {
    width: 87.5%; }
  .u-wd1\/10 {
    width: 10%; }
  .u-wd2\/10 {
    width: 20%; }
  .u-wd3\/10 {
    width: 30%; }
  .u-wd4\/10 {
    width: 40%; }
  .u-wd5\/10 {
    width: 50%; }
  .u-wd6\/10 {
    width: 60%; }
  .u-wd7\/10 {
    width: 70%; }
  .u-wd8\/10 {
    width: 80%; }
  .u-wd9\/10 {
    width: 90%; }
  .u-wd1\/12 {
    width: 8.333%; }
  .u-wd2\/12 {
    width: 16.666%; }
  .u-wd3\/12 {
    width: 25%; }
  .u-wd4\/12 {
    width: 33.333%; }
  .u-wd5\/12 {
    width: 41.666%; }
  .u-wd6\/12 {
    width: 50%; }
  .u-wd7\/12 {
    width: 58.333%; }
  .u-wd8\/12 {
    width: 66.666%; }
  .u-wd9\/12 {
    width: 75%; }
  .u-wd10\/12 {
    width: 62.5%; }
  .u-wd11\/12 {
    width: 91.666%; } }

@media screen and (min-width: 1200px), print {
  .u-wld1\/1 {
    width: 100%; }
  .u-wld1\/2 {
    width: 50%; }
  .u-wld1\/3 {
    width: 33.333%; }
  .u-wld2\/3 {
    width: 66.666%; }
  .u-wld1\/4 {
    width: 25%; }
  .u-wld2\/4 {
    width: 50%; }
  .u-wld3\/4 {
    width: 75%; }
  .u-wld1\/5 {
    width: 20%; }
  .u-wld2\/5 {
    width: 40%; }
  .u-wld3\/5 {
    width: 60%; }
  .u-wld4\/5 {
    width: 80%; }
  .u-wld1\/6 {
    width: 16.666%; }
  .u-wld2\/6 {
    width: 33.333%; }
  .u-wld3\/6 {
    width: 50%; }
  .u-wld4\/6 {
    width: 66.666%; }
  .u-wld5\/6 {
    width: 83.333%; }
  .u-wld1\/8 {
    width: 12.5%; }
  .u-wld2\/8 {
    width: 25%; }
  .u-wld3\/8 {
    width: 37.5%; }
  .u-wld4\/8 {
    width: 50%; }
  .u-wld5\/8 {
    width: 62.5%; }
  .u-wld6\/8 {
    width: 75%; }
  .u-wld7\/8 {
    width: 87.5%; }
  .u-wld1\/10 {
    width: 10%; }
  .u-wld2\/10 {
    width: 20%; }
  .u-wld3\/10 {
    width: 30%; }
  .u-wld4\/10 {
    width: 40%; }
  .u-wld5\/10 {
    width: 50%; }
  .u-wld6\/10 {
    width: 60%; }
  .u-wld7\/10 {
    width: 70%; }
  .u-wld8\/10 {
    width: 80%; }
  .u-wld9\/10 {
    width: 90%; }
  .u-wld1\/12 {
    width: 8.333%; }
  .u-wld2\/12 {
    width: 16.666%; }
  .u-wld3\/12 {
    width: 25%; }
  .u-wld4\/12 {
    width: 33.333%; }
  .u-wld5\/12 {
    width: 41.666%; }
  .u-wld6\/12 {
    width: 50%; }
  .u-wld7\/12 {
    width: 58.333%; }
  .u-wld8\/12 {
    width: 66.666%; }
  .u-wld9\/12 {
    width: 75%; }
  .u-wld10\/12 {
    width: 62.5%; }
  .u-wld11\/12 {
    width: 91.666%; } }

/*
TYPO3

Styling for typo3 related classes
*/
/*
CSC-Frames
*/
.csc-frame-rulerBefore:before {
  content: ''; }

.csc-frame-rulerAfter:after {
  content: ''; }

.csc-frame-indent {
  padding-left: 26px;
  padding-left: 1.625rem;
  padding-right: 26px;
  padding-right: 1.625rem; }

.csc-frame-indent3366 {
  padding-left: 33.333%; }

.csc-frame-indent6633 {
  padding-right: 33.333%; }

.csc-frame-frame1,
.csc-frame-frame2,
.csc-frame-frame3 {
  padding: 20px;
  margin-bottom: 10px; }
  .csc-frame-frame1 > :last-child,
  .csc-frame-frame2 > :last-child,
  .csc-frame-frame3 > :last-child {
    margin-bottom: 0; }

.csc-frame-frame1 {
  background: #0060a9; }
  .csc-frame-frame1,
  .csc-frame-frame1 h1, .csc-frame-frame1 h2, .csc-frame-frame1 h3,
  .csc-frame-frame1 h4, .csc-frame-frame1 h5, .csc-frame-frame1 h6 {
    color: #FFF; }

.csc-frame-frame2,
.csc-frame-frame3 {
  background: #e8e8e8; }

.csc-frame-frame3 {
  background: transparent; }

.csc-textpic-imagewrap {
  margin-bottom: 4px; }

div.csc-textpic-center .csc-textpic-center-outer,
div.csc-textpic-center .csc-textpic-center-inner {
  max-width: 100%; }

.csc-textpic-caption {
  font-size: 12px;
  margin-top: 26px;
  margin-top: 1.625rem; }

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

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

.rte__btnArrowed {
  margin: 0; }
  .u-invertText .rte__btnArrowed {
    color: #FFF; }

.secondaryColor {
  color: #052850; }

.csc-sitemap > ul > li {
  padding-bottom: 1em !important; }
  .csc-sitemap > ul > li > a {
    margin-bottom: .5em !important;
    padding: 5px 0;
    border-bottom: 1px solid #ccc;
    font-size: 20px;
    color: #052850; }

.csc-sitemap > ul > li > ul a {
  opacity: .6;
  color: currentColor; }
  .csc-sitemap > ul > li > ul a:hover {
    opacity: 1; }

.csc-sitemap > ul > li > ul > li {
  width: 25%;
  float: left; }

.csc-sitemap > ul > li > ul > li ul {
  padding-left: 1em; }

/*
Atoms

Atoms are basic tags, such as form labels, inputs or buttons.

Styleguide 3
*/
/*
Base wrapper elements

High-level wrapper elements.
*/
body {
  /**
   * Remove default margin.
   */
  margin: 0;
  font: 400 93.75% / 1.73333 "Brown-Light", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-align: left;
  color: #000;
  background: #f9f9f9;
  min-width: 23.33333em;
  padding-top: 60px; }
  @media screen and (min-width: 700px), print {
    body {
      padding-top: 0; } }

.body--offCanvasVisible {
  height: 100vh;
  overflow: hidden; }

.siteWrapper {
  margin-left: auto;
  margin-right: auto;
  max-width: 80em;
  width: 100%;
  position: relative; }
  @media screen and (min-width: 980px), print {
    .siteWrapper {
      width: 95%; } }

.bubbleIcon {
  display: inline-block;
  padding-left: 1em;
  padding-right: 1em;
  text-align: center; }
  .bubbleIcon:active, .bubbleIcon:focus, .bubbleIcon:hover {
    text-decoration: none; }

.bubbleIcon__icon {
  display: inline-block;
  width: 50px;
  height: 50px;
  border-radius: 100%;
  background: #0060a9;
  color: #FFF;
  transition: all .3s ease;
  border: 1px solid #0060a9; }
  .bubbleIcon:hover .bubbleIcon__icon {
    border-color: #052850;
    background: #052850; }

.bubbleIcon__icon__svg {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.bubbleIcon__toolTip {
  display: block;
  text-transform: uppercase;
  color: #0060a9;
  font-size: 12px;
  margin-top: .5em;
  margin-bottom: 1em;
  transition: all .3s ease;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }
  .bubbleIcon:hover .bubbleIcon__toolTip {
    color: #052850; }

.bubbleIcon--active > .bubbleIcon__icon {
  background: 0;
  border-color: #eb4b19;
  color: #eb4b19; }

.bubbleIcon--active > .bubbleIcon__toolTip {
  color: #eb4b19; }

.bubbleIcon--active:hover > .bubbleIcon__icon {
  border-color: #eb4b19;
  background: #eb4b19;
  color: #FFF; }

.bubbleIcon--active:hover > .bubbleIcon__toolTip {
  color: #eb4b19; }

/*
Heading elements

Basic styling for headings and sub-headings.

Styleguide 3.1
*/
/*
Headings

Markup:
<h1>I am an first-level heading</h1>
<h2>I am an second-level heading</h2>
<h3>I am an third-level heading</h3>
<h4>I am an fourth-level heading</h4>
<h5>I am an fifth-level heading</h5>
<h6>I am an sixth-level heading</h6>

Styleguide 3.1.1
*/
.csc-sitemap > ul > li > a, .h,
h1, h2, h3,
h4, h5, h6 {
  /**
   * Optimized kerning for large font sizes
   * use this only on large font-sizes (f.e. headings) to avoid performance issues.
   */
  text-rendering: optimizeLegibility;
  line-height: 1.1;
  margin-top: 0;
  margin-bottom: .1em;
  font-family: "Brown-Regular", sans-serif;
  font-weight: 400; }

/*
Heading modifiers

.h1 - Style the `<h#>`-element like a standard `<h1>`-element.
.h2 - Style the `<h#>`-element like a standard `<h2>`-element.
.h3 - Style the `<h#>`-element like a standard `<h3>`-element.
.h4 - Style the `<h#>`-element like a standard `<h4>`-element.
.h5 - Style the `<h#>`-element like a standard `<h5>`-element.
.h6 - Style the `<h#>`-element like a standard `<h6>`-element.

Markup:
<h1 class="{$modifiers}">I am an first-level heading</h1>
<h2 class="{$modifiers}">I am an second-level heading</h2>
<h3 class="{$modifiers}">I am an third-level heading</h3>
<h4 class="{$modifiers}">I am an fourth-level heading</h4>
<h5 class="{$modifiers}">I am an fifth-level heading</h5>
<h6 class="{$modifiers}">I am an sixth-level heading</h6>

Styleguide 3.1.2
*/
h1, .h1 {
  font-size: 32px;
  font-size: 2rem;
  margin-bottom: .3em;
  text-transform: none;
  color: #052850; }
  @media screen and (min-width: 980px), print {
    h1, .h1 {
      font-size: 48px;
      font-size: 3rem; } }

h2, .h2 {
  font-size: 30px;
  font-size: 1.875rem;
  margin-bottom: .4em;
  text-transform: none;
  color: #052850; }
  @media screen and (min-width: 700px), print {
    h2, .h2 {
      font-size: 36px;
      font-size: 2.25rem; } }
  @media screen and (min-width: 980px), print {
    h2, .h2 {
      font-size: 42px;
      font-size: 2.625rem; } }

h3, .h3, .csc-frame-frame2 h2,
.csc-frame-frame3 h2 {
  font-size: 30px;
  font-size: 1.875rem;
  margin-bottom: .4em;
  text-transform: none;
  color: #052850; }

h4, .h4 {
  font-size: 22px;
  font-size: 1.375rem;
  margin-bottom: .4em;
  text-transform: none;
  color: #052850; }

h5, .h5 {
  font-size: 18px;
  font-size: 1.125rem;
  margin-bottom: .3em;
  text-transform: uppercase;
  color: currentcolor; }

h6, .h6 {
  font-size: 18px;
  font-size: 1.125rem;
  margin-top: .4em;
  margin-bottom: .4em;
  text-transform: none;
  color: currentcolor; }

.h--bordered::first-line {
  text-decoration: overline; }

.h__bubble {
  position: relative;
  top: -2px;
  display: inline-block;
  width: 30px;
  height: 30px;
  line-height: 30px;
  vertical-align: middle;
  background: #052850;
  text-align: center;
  font-size: .6em;
  color: #FFF;
  border-radius: 100%; }

.i {
  width: 24px;
  height: 24px;
  fill: currentColor;
  vertical-align: top; }
  p > .i {
    vertical-align: middle; }

.i--small {
  width: 20px;
  height: 20px; }

.i--tiny {
  width: 16px;
  height: 16px; }

.i--micro {
  width: 12px;
  height: 12px; }

.i--huge {
  width: 46px;
  height: 46px; }

.i--rounded {
  background: #052850;
  border: 1px solid;
  border-radius: 100%;
  color: #FFF;
  padding: 5px; }

/*
Typographic elements

Basic styling for all typographic related elements.

Styleguide 3.2
*/
/*
Base paragraph

Markup:
<p>I am an paragraph.</p>

Styleguide 3.2.1
*/
p {
  margin: 0;
  margin-bottom: 1.73333em; }

/*
Bold and strong elements

Markup:
<b>This text should be displayed in a bolder font-weight than the standard one.</b>

Styleguide 3.2.2
*/
b,
strong {
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }

/*
Small text emphasis

Markup:
<small>This text should be smaller than the standard one.</small>

Styleguide 3.2.3
*/
small {
  font-size: 80%; }

/*
Abbreviation element

Markup:
<abbr title="The title of the abbreviation">This is an abbreviation.</abbr>

Styleguide 3.2.4
*/
abbr[title] {
  /* Addresses styling not present in IE7/8/9, S5, Chrome. */
  border-bottom: 1px dotted;
  cursor: help; }
  abbr[title].abbr--unstyled {
    border-bottom: 0;
    cursor: default; }

/*
Marked text emphasis element

Markup:
<mark>This text should be displayed in a special manner.</mark>

Styleguide 3.2.5
*/
mark {
  /* Addresses styling not present in IE6/7/8/9. */
  background: #eb4b19;
  color: black; }

/*
Definition element

Markup:
<dfn>This text represents the defining instance of a term.</dfn>

Styleguide 3.2.6
*/
dfn {
  font-style: italic;
  /* Addresses styling not present in S5, Chrome. */ }

/*
Subscript Elements

Markup:
Regular text - <sup>this will be displayed higher and smaller than the main span of text.</sup><br>
Regular text - <sub>this will be displayed lower and smaller than the main span of text.</sub>

Styleguide 3.2.7
*/
sub,
sup {
  vertical-align: bottom;
  margin-bottom: -2px;
  display: inline-block;
  position: relative; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

small sup {
  top: -0.9em; }

/*
Text-Selection
*/
::-moz-selection,
::-moz-selection {
  background: #eb4b19;
  color: black;
  text-shadow: none; }
::-moz-selection,
::selection {
  background: #eb4b19;
  color: black;
  text-shadow: none; }

/*
Anchors / Link elements

Basic styling for anchor tags.

Styleguide 3.3
*/
/*
Standard anchors

Markup:
<a href="#" class="{$modifiers}">I am an anchor element.</a>

:hover   - Hover styling for anchor elements.

Styleguide 3.3.1
*/
a {
  color: #eb4b19;
  text-decoration: none;
  /**
   * Remove the gray background color from active links in IE 10.
   */
  background: transparent; }
  a:hover, a:focus {
    text-decoration: underline; }
  a:active, a:hover {
    /**
     * Improves readability when focused and also mouse hovered in all browsers.
     */
    outline: 0; }
  p a {
    /**
     * Increasing the Clickable Area of Inline Links inside a paragraph
     */
    margin: -.33em;
    padding: .33em;
    position: relative; }

/**
 * Reset link styles helper
 */
.imageGallery__fullScreenToggle, .image--hasLightBox, .roundedImageTeaser, .webcamGalleryDayNavAnchor, .productsList__listHeader__resetCollection a, .productsList__categoryWrapper__item__specialsBadge, .productsList__itemBtns__fav, .productDetail__CruiseNavigation .gi > a, .productDetail__numberInput__control,
.link--unStyled {
  cursor: pointer;
  color: currentColor; }
  .imageGallery__fullScreenToggle:hover, .image--hasLightBox:hover, .roundedImageTeaser:hover, .webcamGalleryDayNavAnchor:hover, .productsList__listHeader__resetCollection a:hover, .productsList__categoryWrapper__item__specialsBadge:hover, .productsList__itemBtns__fav:hover, .productDetail__CruiseNavigation .gi > a:hover, .productDetail__numberInput__control:hover, .imageGallery__fullScreenToggle:active, .image--hasLightBox:active, .roundedImageTeaser:active, .webcamGalleryDayNavAnchor:active, .productsList__listHeader__resetCollection a:active, .productsList__categoryWrapper__item__specialsBadge:active, .productsList__itemBtns__fav:active, .productDetail__CruiseNavigation .gi > a:active, .productDetail__numberInput__control:active, .imageGallery__fullScreenToggle:focus, .image--hasLightBox:focus, .roundedImageTeaser:focus, .webcamGalleryDayNavAnchor:focus, .productsList__listHeader__resetCollection a:focus, .productsList__categoryWrapper__item__specialsBadge:focus, .productsList__itemBtns__fav:focus, .productDetail__CruiseNavigation .gi > a:focus, .productDetail__numberInput__control:focus,
  .link--unStyled:hover,
  .link--unStyled:active,
  .link--unStyled:focus {
    text-decoration: none; }

/*
List elements

Basic styling for lists and definition elements.

Styleguide 3.5
*/
/*
Unordered- & Ordered-Lists

.reset-list - Resets the standard list styles of an `<ul>` or `<ol>` element.

Markup:
<ul class="{$modifiers}">
	<li>Unordered-List</li>
	<li>I am the first list-element.</li>
	<li>I am the second list-element.</li>
	<li>I am the third list-element.</li>
	<li>I am the fourth list-element.</li>
</ul>
<ol class="{$modifiers}">
	<li>Ordered-List</li>
	<li>I am the first list-element.</li>
	<li>I am the second list-element.</li>
	<li>I am the third list-element.</li>
	<li>I am the fourth list-element.</li>
</ol>

Styleguide 3.5.1
*/
menu,
ol,
ul {
  padding: 0 0 0 1.2em;
  margin: 0;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

li > ul,
li > ol {
  /**
   * Remove vertical spacing from nested lists.
   */
  margin-bottom: 0; }

ul {
  margin: 0;
  margin-bottom: 26px;
  margin-bottom: 1.625rem;
  list-style: none;
  padding-left: 1.5em; }
  ul > li {
    position: relative;
    padding-bottom: .3em;
    line-height: 1.4; }
    ul > li:before {
      content: '›';
      position: absolute;
      top: 0;
      left: -1em;
      display: inline-block;
      font-size: 1.3em;
      line-height: 1;
      font-weight: bold;
      font-family: Arial, sans-serif; }

/*
Reset-List helper class, also for children
*/

.reset-list {
  margin-bottom: 0;
  padding-left: 0; }
  
  .reset-list > li {
    padding-bottom: 0; }
    
    .reset-list > li:before {
      display: none; }

/*
Definitions.

.dl--horizontal - Display a definition list in a horizontal order.

Markup:
<dl class="{$modifiers}">
	<dt>Description lists</dt>
	<dd>A description list is perfect for defining terms.</dd>
	<dt>Euismod</dt>
	<dd>Vestibulum id ligula porta felis euismod semper eget lacinia odio sem.</dd>
	<dd>Donec id elit non mi porta gravida at eget metus.</dd>
	<dt>Malesuada porta</dt>
	<dd>Etiam porta sem malesuada magna mollis euismod.</dd>
	<dt>Felis euismod semper eget lacinia</dt>
	<dd>Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</dd>
</dl>

Styleguide 3.5.3
*/
dl {
  margin: 0;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

/*
Horizontal definition abstraction
*/
.dl--horizontal:before, .dl--horizontal:after {
  content: "";
  display: table; }

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

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

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

.form__item {
  position: relative;
  margin-bottom: 20px;
  margin-bottom: 1.25rem; }
  .form__item .chosen-container {
    margin-bottom: 0; }
  .form__item .error {
    border: solid 1px #eb4b19; }
  .form__item label.error input[type="checkbox"] {
    margin-left: 13px;
    margin-left: 0.8125rem; }
  .form__item input[type=checkbox].error {
    outline: 1px solid #ed6d05; }

.form__item--hideChosenSearch .chosen-search {
  display: none; }

/*
Form elements

Basic styling for form element labels.

Styleguide 3.6
*/
/*
Labels

Markup:
<label>I am an label</label>

Styleguide 3.6.1
*/
label {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.85714;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }
  label[for] {
    cursor: pointer; }

/*
Legends

Markup:
<fieldset>
	<legend>I am an fieldset legend.</legend>
</fieldset>

Styleguide 3.6.2
*/
legend {
  display: block;
  width: 100%;
  margin-bottom: 26px;
  margin-bottom: 1.625rem;
  font-size: 24px;
  font-size: 1.5rem;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400;
  color: #052850;
  border-bottom: 1px solid #cccccc;
  padding: 0; }

/*
Form input elements

Basic styling for form inputs.

Styleguide 3.7
*/
/*
Text inputs

.textInput         - Basic styling for text input elements.
.textInput:hover   - Hover styling for basic text input elements.
.textInput:focus   - Focused styling for basic text input elements.
.textInput--flat   - Flat style input modifier
.textInput--small  - Small input modifier
.textInput--transparent - Transparent background modifier.

Markup:
<input type="text" class="{$modifiers}" /><br>
<textarea class="{$modifiers}" cols="40"></textarea>

Styleguide 3.7.1
*/

.textInput {
  height: 38px;
  padding: .5em .7em;
  background: #FFF;
  border: 1px solid #cccccc;
  transition: all .3s ease;
  font-family: "Brown-Light", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 15px;
  color: #0d0d0d; }
  
  .textInput:focus,
  .textInput:active {
    border-color: #0060a9;
    outline: 0;
    box-shadow: 0 0 3px rgba(0, 96, 169, 0.3); }

/**
 * Flat input modifier, doesn't have a border/outline
 */
.textInput--flat {
  border: 0;
  box-shadow: none; }

.textInput--small {
  height: 35px;
  font-size: 14px;
  font-size: 0.875rem; }

.textInput--transparent {
  background: 0; }

.textInput--borderLess {
  border: 0; }

textarea {
  height: auto;
  /* Reset height since textareas have the attribute rows="" */
  min-height: 130px;
  /* Set a min-height for textareas of 3 rows */
  resize: vertical;
  /* So users cannot expand the textarea over it's boundaries */
  overflow: auto;
  /* Removes default vertical scrollbar in IE6/7/8/9. */
  vertical-align: top;
  /* Improves readability and alignment in all browsers. */ }

input::-webkit-datetime-edit {
  /**
   * A possible shadow-dom fix for webkit control spacing on input[type=time]
   */
  margin-top: -.17em;
  margin-bottom: -.17em; }

/*
Checkboxes / Radio buttons

Markup:
<label><input type="checkbox" /> I am an checkbox</label>
<label><input type="radio" /> I am an radio button</label>

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

/*
Buttons

Styleguide 3.8
*/
button {
  font-family: "Brown-Thin", sans-serif;
  font-weight: 400; }

/*
Button Object

Display an anchor tag as a button.

.btn           - Display an element as an button.
.btn.btn--full - Set the button width to the width of it's parent element.
.btn:hover     - Standard hover styling for buttons.
.btn.btn--mini - Smaller button
.btn.btn--tiny - Smallest button aviable
.btn.btn--invert - Inverted color scheme for the standard btn.
.btn.btn--clean - Creates a text like button.
.btn.btn--arrow - Adds an right pointing arrow to the inner button text.
.btn.btn--arrowLeft - Adds a left pointing arrow to the inner button text.

Markup:
<button class="{$modifiers}">Send button</button>
<input type="button" class="{$modifiers}" value="Button" />
<input type="reset" class="{$modifiers}" value="Reset" />
<input type="submit" class="{$modifiers}" value="Submit" />
<a class="{$modifiers}">An anchor element.</a>

Styleguide 3.8.1
*/
.rte__btnArrowed,
.btn {
  display: inline-block;
  margin: 0;
  margin-bottom: 13px;
  margin-bottom: 0.8125rem;
  /**
   * Set in em's so we can change the size of the button depending on the font-size.
   */
  padding: .8em 1em;
  border: 1px solid;
  background: 0;
  cursor: pointer;
  font-size: 14px;
  text-transform: uppercase;
  /**
   * Normalize some rules accross the targeted elements (<input>, <button> and the .btn class).
   */
  line-height: 1;
  letter-spacing: 1px;
  color: #052850;
  vertical-align: top;
  transition: all .3s ease;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }
  .rte__btnArrowed, .rte__btnArrowed:focus, .rte__btnArrowed:active, .rte__btnArrowed:hover,
  .btn,
  .btn:focus,
  .btn:active,
  .btn:hover {
    text-decoration: none; }
  .rte__btnArrowed:hover,
  .btn:hover {
    background: #052850;
    border-color: #052850;
    color: white; }
  [disbaled].rte__btnArrowed,
  .btn[disbaled] {
    opacity: .5;
    pointer-events: none; }

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

/**
 * Button size modifiers
 */
.btn--mini {
  font-size: 11px; }

.btn--tiny {
  font-size: 80%; }

/**
 * Button color modifiers
 */
.btn--invert {
  color: white; }
  .btn--invert:hover {
    color: #052850;
    background: white;
    border-color: white; }

.btn--light {
  background-color: #ffffff; }
  .btn--light:hover {
    background-color: #ffffff;
    color: #052850; }

.btn--currentColor {
  color: currentColor; }

.btn--primary {
  background: #eb4b19;
  color: #FFF;
  border-color: #eb4b19; }
  .btn--primary:hover {
    background: #FFF;
    color: #eb4b19;
    border-color: #eb4b19; }

.btnHoverParent:hover .btn,
.btn--active {
  background: #0060a9;
  border-color: #0060a9;
  color: #FFF; }

.btn--clean {
  border: 0;
  padding: 0; }
  .btn--clean:hover {
    background: 0;
    color: #052850; }
    .btn--clean:hover.btn--currentColor {
      color: currentColor; }

.rte__btnArrowed:after,
.btn--arrow:after {
  display: inline-block;
  content: ' »';
  margin-left: .5em; }


.btn--arrowLeft:before {
  display: inline-block;
  content: ' «';
  margin-right: .5em; }

.btn--disabled {
  pointer-events: none;
  opacity: .5;
  color: currentcolor; }

.btn__icon {
  width: 16px;
  height: 14px; }

.btn__icon--large {
  font-size: 1.3em; }

.btn__icon--small {
  width: 12px;
  height: 12px; }

/*
Code & pre-formatted text elements

Styleguide 3.12
*/
/*
Default styles

Markup:
<code>.css{ color: red; }</code><br>
<kbd>.css{ color: red; }</kbd><br>
<samp>.css{ color: red; }</samp><br>
<pre>.css{ color: red; }</pre>

Styleguide 3.12.1
*/
code,
kbd,
pre,
samp {
  /**
   * Corrects font family set oddly in Safari 5 and Chrome.
   */
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
  font-size: 1em; }

pre {
  /**
   * Improves readability of pre-formatted text in all browsers.
   */
  white-space: pre-wrap;
  margin: 0;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

/*
Quotes

Styleguide 3.11
*/
/*
Default Quote

Markup:
The following text <q>is an inline-quote</q>
<blockquote>This text is a full quotation element</blockquote>

Styleguide 3.11.1
*/
q {
  /**
   * Sets consistent quote types.
   */
  quotes: "\201C" "\201D" "\2018" "\2019"; }

blockquote {
  position: relative;
  margin: 0;
  margin-bottom: 26px;
  margin-bottom: 1.625rem;
  padding: 0 1.5em;
  font-family: "Adobe Garamond Pro", "Book Antiqua", serif;
  font-style: italic;
  font-size: 1.75em;
  line-height: 1.4; }
  blockquote:before, blockquote:after {
    position: absolute;
    line-height: 0;
    font-size: 3em;
    font-family: "Helvetica Neue Bold", Helvetica;
    color: #e8e8e8; }
  blockquote:before {
    content: '“';
    left: -5px;
    top: 28px;
    padding-right: .1em; }
  blockquote:after {
    content: '„';
    bottom: 15px;
    right: 0; }

.quote__author {
  font-size: 18px;
  font-style: normal;
  text-align: right; }

/*
Rulers

Styleguide 3.10
*/
/*
Default horizontal ruler

Markup:
<hr>

Styleguide 3.10.1
*/
.csc-frame-rulerBefore:before, .csc-frame-rulerAfter:after,
hr {
  /**
  * Address differences between Firefox and other browsers.
  */
  box-sizing: content-box;
  display: block;
  height: 0;
  border: 0;
  border-top: 1px solid #cccccc;
  padding: 0;
  margin-top: 26px;
  margin-top: 1.625rem;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

/*
Media

Basic styling for media elements.
*/
/*
Attachements & Images

Contents: 1: Make Images & Attachements responsive
					2: Styling the alt="" Text on images
						 http://csswizardry.com/2011/06/styling-alt-text-on-images/
					3: Removes border when inside `a` element in IE6/7/8/9, FF3.
					4: Remove the gap between images and the bottom of their containers:
						 h5bp.com/i/440
					5: Improves image quality when scaled in IE7.
						 code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
					6: Decrease font-size on figcaption elements
*/
embed,
iframe,
object,
img {
  /* 1 */
  max-width: 100%; }

picture {
  display: inline-block;
  max-width: 100%; }

img {
  font-style: italic;
  /* 2 */
  border: 0;
  /* 3 */
  vertical-align: middle;
  /* 4 */ }
  img[height] {
    /* 1 */
    height: auto; }

figure {
  /**
   * Addresses margin not present in IE6/7/8/9, S5, O11.
   */
  margin: 1em 40px; }

figcaption {
  /* 6 */
  font-size: 13px;
  font-size: 0.8125rem; }

iframe {
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

/*
Multimedia elements
*/
video {
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

audio {
  margin-bottom: 26px;
  margin-bottom: 1.625rem;
  min-width: 65%; }
  audio:not([controls]) {
    /**
     * Prevents modern browsers from displaying `audio` without controls.
     */
    display: none;
    /**
     * Remove excess height in iOS5 devices.
     */
    height: 0; }

/*
SVG element
*/
svg:not(:root) {
  /**
     * Corrects overflow displayed oddly in IE9.
     */
  overflow: hidden; }

.menuIcon {
  display: inline-block;
  width: 18px; }
  .menuIcon:hover {
    cursor: pointer; }
  .menuIcon,
  .menuIcon i {
    transition: all .3s ease; }
  .menuIcon i {
    display: block;
    width: 100%;
    height: 2px;
    margin-bottom: 4px;
    background: #fff; }
    .menuIcon i:last-child {
      margin-bottom: 0; }

.pageOverlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  transition: opacity .5s ease; }
  @media screen and (max-width: 979px) {
    .body--offCanvasVisible .pageOverlay {
      z-index: 1001;
      opacity: 1; } }

/*
Choosen styles

Display a <select> element with custom styles.

@version 1.2.0
*/
select[data-chosen],
select[data-component="plugin::Chosen"] {
  width: 100%;
  height: 38px;
  -webkit-appearance: menulist-button;
  background: #FFF;
  border-radius: 0;
  border: 0; }

/* @group Base */
.chosen-container {
  position: relative;
  display: inline-block;
  width: 100% !important;
  margin-bottom: 13px;
  margin-bottom: 0.8125rem;
  vertical-align: middle;
  font-size: 14px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border: 1px solid #ccc;
  text-align: left; }
  .chosen-container.chosen-container-active {
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.32); }
  .chosen-container .chosen-drop {
    position: absolute;
    top: 100%;
    left: -9999px;
    z-index: 940;
    width: 100%;
    border-top: 0;
    background: #FFF;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.24); }
  .chosen-container.chosen-with-drop .chosen-drop {
    left: 0;
    opacity: 0;
    -webkit-animation: flyDown 0.4s both;
            animation: flyDown 0.4s both; }
    .no-cssanimations .chosen-container.chosen-with-drop .chosen-drop {
      opacity: 1; }
  .chosen-container a {
    cursor: pointer; }
  .chosen-container .chosen-results li.highlighted {
    background-color: #0060a9;
    color: white; }
  .chosen-container.chosen-container-multi .chosen-choices li.search-choice {
    display: none; }
  .chosen-container.chosen-container-multi .chosen-choices li.search-field {
    width: 100%; }
    .chosen-container.chosen-container-multi .chosen-choices li.search-field input {
      width: 100% !important; }

/* @end */
/* @group Single Chosen */
.chosen-container-single .chosen-single {
  position: relative;
  display: block;
  padding: 0 0 0 10px;
  height: 36px;
  background: #FFF;
  color: #000000;
  text-decoration: none;
  white-space: nowrap;
  line-height: 36px; }

.chosen-container-single .chosen-default {
  color: #999; }

.chosen-container-single .chosen-single span {
  display: block;
  overflow: hidden;
  margin-right: 26px;
  text-overflow: ellipsis;
  white-space: nowrap; }

.chosen-container-single .chosen-single-with-deselect span {
  margin-right: 38px; }

.chosen-container-single .chosen-single abbr {
  position: absolute;
  top: 6px;
  right: 26px;
  display: block;
  width: 12px;
  height: 12px;
  font-size: 1px; }
  .chosen-container-single .chosen-single abbr:hover {
    background-position: -42px -10px; }

.chosen-container-single.chosen-disabled .chosen-single abbr:hover {
  background-position: -42px -10px; }

.chosen-container-single .chosen-single div {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 20px;
  height: 100%; }
  .chosen-container-single .chosen-single div b {
    display: inline-block;
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
    transition: -webkit-transform .2s ease;
    transition: transform .2s ease;
    font-size: 1em;
    font-family: Arial, sans-serif; }
    .chosen-container-single .chosen-single div b:after {
      content: '›';
      display: inline-block; }

.chosen-container-single .chosen-search {
  position: relative;
  z-index: 940;
  margin: 1px 0 5px;
  padding: 0 9px;
  white-space: nowrap; }
  .chosen-container-single .chosen-search input[type="text"] {
    margin: 1px 0;
    padding: 7px 20px 7px 5px;
    width: 100%;
    height: auto;
    outline: 0;
    border: 1px solid #ccc;
    background: #fff; }

.chosen-container-single .chosen-drop {
  background-clip: padding-box; }

.chosen-container-single.chosen-container-single-nosearch .chosen-search {
  position: absolute;
  left: -9999px; }

/* @end */
/* @group Results */
.chosen-container .chosen-results {
  color: #444;
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
  padding-left: 0;
  margin-bottom: 0;
  max-height: 140px;
  -webkit-overflow-scrolling: touch; }
  .chosen-container .chosen-results li {
    display: none;
    margin: 0;
    padding: 10px;
    list-style: none;
    line-height: 15px;
    word-wrap: break-word;
    -webkit-touch-callout: none; }
    .chosen-container .chosen-results li:before {
      display: none; }
    .chosen-container .chosen-results li.active-result {
      display: list-item;
      cursor: pointer; }
    .chosen-container .chosen-results li.disabled-result {
      display: list-item;
      color: #ccc;
      cursor: default; }
    .chosen-container .chosen-results li.no-results {
      color: #777;
      display: list-item;
      background: #f4f4f4; }
    .chosen-container .chosen-results li.group-result {
      display: list-item;
      cursor: default;
      padding-bottom: 0;
      font-family: "Brown-Bold", sans-serif;
      font-weight: 400; }
    .chosen-container .chosen-results li.group-option {
      padding-left: 15px; }
    .chosen-container .chosen-results li em {
      font-style: normal;
      text-decoration: underline; }

/* @end */
/* @group Multi Chosen */
.chosen-container-multi .chosen-drop {
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.41), 0 -1px 0 #0060a9;
  padding-top: 4px; }

.chosen-container-multi .chosen-choices {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 0 5px;
  width: 100%;
  height: auto !important;
  cursor: text; }

.chosen-container-multi .chosen-choices li {
  float: left;
  list-style: none; }
  .chosen-container-multi .chosen-choices li.search-field {
    margin: 0;
    padding: 0;
    white-space: nowrap; }
    .chosen-container-multi .chosen-choices li.search-field input[type="text"] {
      margin: 1px 0;
      padding: 0;
      height: 25px;
      outline: 0;
      border: 0 !important;
      background: transparent !important;
      box-shadow: none;
      color: #999;
      font-size: 100%;
      font-family: sans-serif;
      line-height: normal;
      border-radius: 0; }
  .chosen-container-multi .chosen-choices li.search-choice {
    position: relative;
    margin: 3px 5px 3px 0;
    padding: 3px 20px 3px 5px;
    border: 1px solid #aaa;
    max-width: 100%;
    border-radius: 3px;
    background-color: #eeeeee;
    background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
    background-size: 100% 19px;
    background-repeat: repeat-x;
    background-clip: padding-box;
    box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);
    color: #333;
    line-height: 13px;
    cursor: default; }
    .chosen-container-multi .chosen-choices li.search-choice span {
      word-wrap: break-word; }
    .chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
      position: absolute;
      top: 4px;
      right: 3px;
      display: block;
      width: 12px;
      height: 12px;
      font-size: 1px; }
      .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover {
        background-position: -42px -10px; }
  .chosen-container-multi .chosen-choices li.search-choice-disabled {
    padding-right: 5px;
    border: 1px solid #ccc;
    background-color: #e4e4e4;
    background-image: linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
    color: #666; }
  .chosen-container-multi .chosen-choices li.search-choice-focus {
    background: #d4d4d4; }
    .chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close {
      background-position: -42px -10px; }

.chosen-container-multi .chosen-results {
  margin: 0;
  padding: 0; }
  .chosen-container-multi .chosen-results li {
    padding-top: 4px;
    padding-bottom: 4px; }

.chosen-container-multi .chosen-drop .result-selected {
  display: list-item;
  color: #ccc;
  cursor: default; }

/* @end */
/* @group Active  */
.chosen-container-active .chosen-single {
  z-index: 941; }
  .chosen-container-active .chosen-single:after {
    content: '';
    display: block;
    width: 100%;
    height: 4px;
    background: #FFF;
    position: absolute;
    z-index: 942;
    top: 92%;
    left: 0;
    opacity: 0;
    -webkit-animation: flyDown 0.4s both;
            animation: flyDown 0.4s both; }
    .no-cssanimations .chosen-container-active .chosen-single:after {
      opacity: 1; }

.chosen-container-active.chosen-with-drop .chosen-single b {
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg); }

.chosen-container-active .chosen-choices {
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); }
  .chosen-container-active .chosen-choices li.search-field input[type="text"] {
    color: #222 !important; }

/* @end */
/* @group Disabled Support */
.chosen-disabled {
  opacity: 0.5 !important;
  cursor: default; }
  .chosen-disabled .chosen-single {
    cursor: default; }
  .chosen-disabled .chosen-choices .search-choice .search-choice-close {
    cursor: default; }

/* @end */
/* @group Right to Left */
.chosen-rtl {
  text-align: right; }
  .chosen-rtl .chosen-single {
    overflow: visible;
    padding: 0 8px 0 0; }
  .chosen-rtl .chosen-single span {
    margin-right: 0;
    margin-left: 26px;
    direction: rtl; }
  .chosen-rtl .chosen-single-with-deselect span {
    margin-left: 38px; }
  .chosen-rtl .chosen-single div {
    right: auto;
    left: 3px; }
  .chosen-rtl .chosen-single abbr {
    right: auto;
    left: 26px; }
  .chosen-rtl .chosen-choices li {
    float: right; }
    .chosen-rtl .chosen-choices li.search-field input[type="text"] {
      direction: rtl; }
    .chosen-rtl .chosen-choices li.search-choice {
      margin: 3px 5px 3px 0;
      padding: 3px 5px 3px 19px; }
      .chosen-rtl .chosen-choices li.search-choice .search-choice-close {
        right: auto;
        left: 4px; }
  .chosen-rtl.chosen-container-single-nosearch .chosen-search,
  .chosen-rtl .chosen-drop {
    left: 9999px; }
  .chosen-rtl.chosen-container-single .chosen-results {
    margin: 0 0 4px 4px;
    padding: 0 4px 0 0; }
  .chosen-rtl .chosen-results li.group-option {
    padding-right: 15px;
    padding-left: 0; }
  .chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
    border-right: none; }
  .chosen-rtl .chosen-search input[type="text"] {
    padding: 4px 5px 4px 20px;
    background: #fff;
    direction: rtl; }
  .chosen-rtl.chosen-container-single .chosen-single div b {
    background-position: 6px 2px; }
  .chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b {
    background-position: -12px 2px; }

.scrollToTopAnchor {
  position: fixed;
  left: 50%;
  bottom: 0;
  z-index: 100;
  display: inline-block;
  height: 36px;
  width: 40px;
  -webkit-transform: rotate(-90deg) translateX(-100%);
      -ms-transform: rotate(-90deg) translateX(-100%);
          transform: rotate(-90deg) translateX(-100%);
  font-size: 2em;
  line-height: 1;
  text-align: center;
  color: #052850;
  background: white;
  transition: all .2s ease; }
  .scrollToTopAnchor:hover, .scrollToTopAnchor:active, .scrollToTopAnchor:focus {
    text-decoration: none; }

.scrollToTopAnchor--isVisible {
  -webkit-transform: rotate(-90deg) translateX(0);
      -ms-transform: rotate(-90deg) translateX(0);
          transform: rotate(-90deg) translateX(0);
  opacity: 1; }

/*
Tables

Styleguide 3.9
*/
/*
Table Object

.table - Base class for all table-styles.
.table.table--bordered - Extends the base '.table' class to an basic bordered table.
.table.table--striped - Extends the base '.table' class to an clean table with borders below each row.
.table.table--condensed - Extends the base '.table' class to an condensed table. Smaller Padding in Table Cell.
.table.table--expanded - Larger Padding in Table Cell.
.table.table--zebra - Extends the base '.table' class to an 'zebra'-styled table with odd & even changing background-colors.

Markup:
<table class="{$modifiers}">
	<thead>
		<tr>
			<th>Name</th>
			<th>Age</th>
			<th>Residence</th>
		</tr>
	</thead>
	<tbody>
		<tr>
			<td>Max Mustermann</td>
			<td>20</td>
			<td>Berlin</td>
		</tr>
		<tr>
			<td>Max Mustermann</td>
			<td>20</td>
			<td>Berlin</td>
		</tr>
		<tr>
			<td>Max Mustermann</td>
			<td>20</td>
			<td>Berlin</td>
		</tr>
	</tbody>
</table>

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

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

td {
  vertical-align: top; }
  td[valign="middle"] {
    vert-align: middle; }

/**
 * Base styles for all tables
 */
.contenttable, .productDetail__itineraryTable,
.table {
  width: 100%;
  margin-top: 0;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }
  .contenttable td, .productDetail__itineraryTable td, .contenttable th, .productDetail__itineraryTable th,
  .table td,
  .table th {
    padding: 0.5em; }

/**
 * Border between all cells / around the table
 */
.contenttable,
.table--bordered {
  border: 1px solid #cccccc;
  border-collapse: separate; }
  .contenttable td, .contenttable th,
  .table--bordered td,
  .table--bordered th {
    border-left: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc; }
    .contenttable td:first-child, .contenttable th:first-child,
    .table--bordered td:first-child,
    .table--bordered th:first-child {
      border-left: 0; }
  .contenttable tr:last-child > td,
  .table--bordered tr:last-child > td {
    border-bottom: 0; }

/**
 * Border beneath all rows
 */
.contenttable td, .productDetail__itineraryTable td, .contenttable th, .productDetail__itineraryTable th,
.table--striped td,
.table--striped th {
  border-bottom: 1px solid #cccccc; }

.contenttable th, .productDetail__itineraryTable th,
.table--striped th {
  padding-top: 0; }

/**
 * Smaller padding in each table cell.
 */
.contenttable td, .contenttable th,
.table--condensed td,
.table--condensed th {
  padding: 0.25em 0.5em 0.25em; }


.table--extraCondensed td,
.table--extraCondensed th {
  padding: 0 0.5em 0; }

/**
 * Larger padding in each table cell.
 */
.productDetail__itineraryTable td, .productDetail__itineraryTable th,
.table--expanded td,
.table--expanded th {
  padding: 1em 0.5em 1em; }

/**
 * Zebra style for the table rows.
 */
.contenttable tbody tr:nth-child(even),
.table--zebra tbody tr:nth-child(even) {
  background: #fff; }

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

/**
 * Responsive table helper, breaks each row into a 'dl' styled el.
 */
@media screen and (max-width: 699px) {
  .table--responsive > thead {
    display: none; } }
  @media screen and (max-width: 699px) and (min-width: 700px) {
    .table--responsive > thead {
      display: table-header-group; } }

@media screen and (max-width: 699px) {
  .table--responsive > tbody {
    display: block; }
    .table--responsive > tbody tr {
      display: block; }
    .table--responsive > tbody td {
      display: block;
      text-align: left;
      border-bottom: 0;
      padding-left: 0;
      padding-bottom: .3em;
      padding-top: .3em; }
      .table--responsive > tbody td:before {
        content: attr(data-label);
        display: inline-block;
        width: 40%;
        font-family: "Brown-Bold", sans-serif;
        font-weight: 400; } }

/*
Molecules

Molecules are groups of elements that function together as a unit.
For example, a form label, search input, and button atom can combine them together to form a search form molecule.

Styleguide 4
*/
.accordion {
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

.accordion__item {
  margin-bottom: 2px; }

.accordion__item__header {
  position: relative;
  padding: .7em 1em;
  font-size: 1.1em;
  cursor: pointer;
  background: #e8e8e8; }
  .accordion__item__header > a {
    color: currentColor;
    font-family: "Brown-Bold", sans-serif;
    font-weight: 400;
    font-weight: 400; }
    .accordion__item__header > a:focus, .accordion__item__header > a:active, .accordion__item__header > a:hover {
      text-decoration: none; }
  .accordion__item--active .accordion__item__header {
    background: #0060a9;
    color: #FFF; }

.accordion__item__header__icon {
  position: absolute;
  top: 50%;
  right: 1em;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 15px;
  height: 15px; }
  .accordion__item__header__icon i {
    display: block;
    height: 3px;
    width: 15px;
    background: currentcolor;
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease; }
    .accordion__item__header__icon i:first-child {
      position: relative;
      top: 7px; }
    .accordion__item__header__icon i:last-child {
      position: relative;
      top: 25%;
      -webkit-transform: rotate(90deg);
          -ms-transform: rotate(90deg);
              transform: rotate(90deg); }
      .accordion__item--active .accordion__item__header__icon i:last-child {
        -webkit-transform: none;
            -ms-transform: none;
                transform: none; }

.accordion__item__content {
  display: none;
  padding: 1.5em 1em 1px; }

.bubbleTeaser {
  position: relative;
  top: 7.5vw; }
  @media screen and (max-width: 699px) {
    .bubbleTeaser {
      top: 50px; } }
  @media screen and (min-width: 980px), print {
    .bubbleTeaser {
      top: 87.5px; } }

.bubbleTeaser__inner {
  position: absolute;
  bottom: 0;
  left: 2%;
  display: block;
  z-index: 10;
  width: 15vw;
  height: 15vw;
  background: #eb4b19;
  border-radius: 100%;
  color: #FFF; }
  @media screen and (max-width: 699px) {
    .bubbleTeaser__inner {
      width: 100px;
      height: 100px; } }
  @media screen and (min-width: 980px), print {
    .bubbleTeaser__inner {
      width: 175px;
      height: 175px; } }

.bubbleTeaser__inner__text {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -.25em;
  -webkit-transform: translateX(-50%) translateY(-50%);
      -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  font-size: 1.75vw;
  line-height: 1.4;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 1px;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }
  @media screen and (max-width: 699px) {
    .bubbleTeaser__inner__text {
      font-size: .75em; } }
  @media screen and (min-width: 980px), print {
    .bubbleTeaser__inner__text {
      font-size: 1.33333em; } }

.bubbleTeaser__inner__image {
  position: relative;
  z-index: 1;
  border-radius: 100%;
  transition: opacity .3s ease;
  opacity: 1; }
  .bubbleTeaser__inner:hover .bubbleTeaser__inner__image {
    opacity: 0; }

.bubbleTeaser__inner__icon {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 2;
  background: #052850;
  border-radius: 100%;
  width: 5vw;
  height: 5vw;
  font-size: 1em;
  text-align: center;
  vertical-align: top;
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  transition: -webkit-transform .3s ease;
  transition: transform .3s ease;
  padding-top: 4%; }
  @media screen and (max-width: 699px) {
    .bubbleTeaser__inner__icon {
      width: 30px;
      height: 30px; } }
  @media screen and (min-width: 700px), print {
    .bubbleTeaser__inner__icon {
      padding-top: 8%; } }
  @media screen and (min-width: 980px), print {
    .bubbleTeaser__inner__icon {
      bottom: 5px;
      right: -5px;
      width: 50px;
      height: 50px;
      padding-top: 12px; } }
  @media screen and (max-width: 980px) {
    .bubbleTeaser__inner__icon svg {
      width: 20px;
      height: 20px; } }
  @media print {
    .bubbleTeaser__inner__icon {
      display: none; } }
  .bubbleTeaser:hover .bubbleTeaser__inner__icon {
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg); }

.btnGroup {
  text-align: right; }
  .btnGroup > .btn {
    margin-bottom: 0;
    margin-left: .1em; }

/**
 * Base styles.
 */
.contentSlider {
  position: relative;
  overflow: hidden;
  color: #052850; }

.contentSlider--overflowVisible {
  overflow: visible !important; }

.contentSlider--invert,
.contentSlider--invert h1, .contentSlider--invert h2, .contentSlider--invert h3,
.contentSlider--invert h4, .contentSlider--invert h5, .contentSlider--invert h6 {
  color: #FFF; }

.contentSlider__sliderCaption {
  position: absolute;
  bottom: 3em;
  right: 5em;
  z-index: 5;
  display: none;
  font-size: 1.5em;
  line-height: 1;
  color: #FFF; }
  @media screen and (min-width: 700px), print {
    .contentSlider__sliderCaption {
      display: block; } }

.contentSlider__sliderCaption__row {
  display: inline-block;
  padding: 12px;
  background: #0060a9; }
  .contentSlider__sliderCaption__row:first-child {
    display: none; }
    @media screen and (min-width: 980px), print {
      .contentSlider__sliderCaption__row:first-child {
        display: inline-block; } }
  .contentSlider__sliderCaption__row .i--boxedArrowDown {
    line-height: 0;
    position: relative;
    top: -2px; }

.contentSlider__slidesWrapper {
  position: relative;
  overflow: hidden;
  transition: all .3s ease;
  height: 1px; }
  @media print {
    .contentSlider__slidesWrapper {
      height: auto !important; } }

.contentSlider__slidesWrapper__slide {
  float: left;
  display: block;
  position: absolute;
  top: 0;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  z-index: 0;
  transition: -webkit-transform .5s ease;
  transition: transform .5s ease;
  background: #FFF; }
  @media print {
    .contentSlider__slidesWrapper__slide {
      position: static;
      -webkit-transform: none !important;
          -ms-transform: none !important;
              transform: none !important; } }
  .contentSlider__slidesWrapper__slide,
  .contentSlider__slidesWrapper__slide > img,
  .contentSlider__slidesWrapper__slide > picture,
  .contentSlider__slidesWrapper__slide > picture > img {
    width: 100%; }

.contentSlider__slidesWrapper__slide__textCaption {
  position: absolute;
  bottom: 3em;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  text-align: center; }
  .contentSlider__slidesWrapper__slide--slideCenter .contentSlider__slidesWrapper__slide__textCaption h3 {
    opacity: 0;
    -webkit-animation: flyUp 0.4s both;
            animation: flyUp 0.4s both;
    -webkit-animation-delay: 0.4s;
            animation-delay: 0.4s; }
    .no-cssanimations .contentSlider__slidesWrapper__slide--slideCenter .contentSlider__slidesWrapper__slide__textCaption h3 {
      opacity: 1; }
  .contentSlider__slidesWrapper__slide--slideCenter .contentSlider__slidesWrapper__slide__textCaption h2 {
    opacity: 0;
    -webkit-animation: flyUp 0.4s both;
            animation: flyUp 0.4s both;
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s; }
    .no-cssanimations .contentSlider__slidesWrapper__slide--slideCenter .contentSlider__slidesWrapper__slide__textCaption h2 {
      opacity: 1; }
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .contentSlider__slidesWrapper__slide--slideCenter .contentSlider__slidesWrapper__slide__textCaption h3, .contentSlider__slidesWrapper__slide--slideCenter
    .contentSlider__slidesWrapper__slide__textCaption h2 {
      opacity: 1;
      -webkit-animation: none;
              animation: none; } }

.contentSlider__slidesWrapper__slide__shadow {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 20vw;
  background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.5) 100%); }

/**
 * Modes
 */
.contentSlider__slidesWrapper__slide--slideLeft {
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%); }

.contentSlider__slidesWrapper__slide--slideCenter {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.contentSlider__slidesWrapper__slide--slideRight {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%); }

.contentSlider__slidesWrapper__slide--slideInView {
  z-index: 1; }

.contentSlider--fade .contentSlider__slidesWrapper__slide {
  -webkit-transform: translateX(75px);
      -ms-transform: translateX(75px);
          transform: translateX(75px);
  transition: -webkit-transform .7s ease, opacity .35s ease;
  transition: transform .7s ease, opacity .35s ease;
  opacity: 0; }

.contentSlider--fade .contentSlider__slidesWrapper__slide--fadeIn {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
  z-index: 1; }

/**
 * Modifier
 */
.contentSlider--indent .contentSlider__slidesWrapper__slide {
  padding: 1.73333rem 6.93333rem; }

/**
 * Navigation styles.
 */
.contentSlider__nav {
  position: absolute;
  top: 50%;
  display: block;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 3.5em;
  z-index: 4;
  cursor: pointer;
  transition: all .2s ease;
  color: currentColor;
  text-shadow: none; }
  .contentSlider__nav:hover {
    text-decoration: none; }
  @media print {
    .contentSlider__nav {
      display: none; } }
  .contentSlider--invert .contentSlider__nav {
    color: #FFF; }
  .contentSlider--navigationHidden .contentSlider__nav {
    display: none; }

.contentSlider__nav--next {
  right: 20px; }

.contentSlider__nav--next:hover {
  -webkit-transform: translateY(-50%) translateX(10px);
      -ms-transform: translateY(-50%) translateX(10px);
          transform: translateY(-50%) translateX(10px); }

.contentSlider__nav--prev {
  left: 20px; }

.contentSlider__nav--prev:hover {
  -webkit-transform: translateY(-50%) translateX(-10px);
      -ms-transform: translateY(-50%) translateX(-10px);
          transform: translateY(-50%) translateX(-10px); }

.contentSlider__bullets {
  position: absolute;
  bottom: 20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 5;
  line-height: 1;
  margin-bottom: 0;
  padding-left: 0; }
  .contentSlider__bullets > li {
    padding-bottom: 0; }
    .contentSlider__bullets > li:before {
      display: none; }
  @media print {
    .contentSlider__bullets {
      display: none; } }
  .contentSlider--navigationHidden .contentSlider__bullets {
    display: none; }
  .contentSlider__bullets > li {
    display: inline-block;
    height: 15px;
    width: 15px;
    vertical-align: bottom;
    border-radius: 100%;
    background: #052850;
    opacity: .3;
    transition: opacity .3s ease; }
    .contentSlider__bullets > li.active {
      opacity: 1; }
    .contentSlider__bullets > li > a {
      display: inline-block;
      height: 15px;
      width: 15px;
      vertical-align: top; }

@media screen and (min-width: 700px), print {
  .contentSlider__bullets--left {
    left: 25%; } }

@media screen and (min-width: 700px), print {
  .contentSlider__bullets--right {
    left: 75%; } }

.contentSlider__slidesDecoratorWrapper {
  position: absolute;
  bottom: 0;
  left: 2%; }

.contentSlider__slidesDecoratorWrapper__decorator {
  display: none; }
  .contentSlider__slidesDecoratorWrapper__decorator.active {
    display: block; }

.detailTeaser {
  margin-bottom: 10px; }

.detailTeaser__img {
  width: 100%; }

.detailTeaser__content {
  text-align: center;
  padding: 26px;
  padding: 1.625rem;
  background: #e8e8e8; }
  .detailTeaser__content > p {
    margin-bottom: 13px;
    margin-bottom: 0.8125rem; }
  .detailTeaser__content > :last-child {
    margin-bottom: 0; }

.detailTeaser__content__heading {
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #052850; }

.detailTeaser__content__heading--first {
  font-size: 1.3em; }

.detailTeaser__content__heading--second {
  font-size: 1.5em; }

.fluidIFrame {
  position: relative;
  overflow: hidden; }

.fluidIFrame__iFrame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 90vh; }

.fluidIFrame__ratio {
  padding-bottom: 56.25%; }

.fluidIFrame__ratio--webcamGallery {
  padding-bottom: 81.6%; }

.fluidIFrame .gm-style img {
  max-width: none; }

/*
Form

Styleguide 4.3
*/
/*
Form wrapper elements
*/
fieldset {
  /**
   * Reset border, margin, and padding to define a consistend style accross all browsers.
   */
  border: 0;
  margin: 0;
  padding: 0; }

form {
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

/*
Form-Inline abstraction

.form--inline - Display a `<form>` and all it's content in a horizontal order.

Markup:
<form class="{$modifiers}">
	<label>Username: </label>
	<input class="textInput" type="text" placeholder="Username...">
	<label>Password: </label>
	<input class="textInput" type="password" placeholder="Password...">
	<label class="label--checkbox">
		<input type="checkbox">Remember me
	</label>
	<button type="submit" class="btn">Sign in</button>
</form>

Styleguide 4.3.1
*/
.form--inline label,
.form--inline button,
.form--inline input,
.form--inline select,
.form--inline textarea {
  display: inline-block;
  margin-bottom: 0;
  vertical-align: middle; }

/*
Grids

Styleguide 4.1
*/
/*
Grid Object

Grid object which makes use of the generated width classes.

.g--compact - Display the grid with a smaller inner padding.
.g--padded - Display the grid with a tp and bottom margin to separate the contents.

Markup:
<div class="g {$modifiers}">
	<div class="gi u-w1/3">first collumn</div>
	<div class="gi u-w1/3">second collumn</div>
	<div class="gi u-w1/3">third collumn</div>
</div>

Styleguide 4.1.1
*/
.g,
.grid {
  margin-left: -5px;
  margin-right: -5px; }
  .g:before, .g:after,
  .grid:before,
  .grid:after {
    content: "";
    display: table; }
  .g:after,
  .grid:after {
    clear: both; }

.gi,
.grid__item {
  display: block;
  float: left;
  padding-left: 5px;
  padding-right: 5px;
  margin-bottom: 10px; }

.gi--centered,
.grid__item--centered {
  float: none;
  margin-left: auto;
  margin-right: auto; }

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

.g--large {
  margin-left: -30px;
  margin-right: -30px; }
  .g--large > .gi {
    padding-left: 30px;
    padding-right: 30px; }

.g--bottomCompact > .gi,
.g--bottomCompact > .grid__item {
  margin-bottom: 0; }

.g--seperatorLeft {
  border-left: 1px solid #cccccc; }

.g--seperatorRight {
  border-right: 1px solid #cccccc; }

.imageGallery {
  margin-bottom: 26px;
  margin-bottom: 1.625rem;
  padding: 5px 5px 0;
  background: #e8e8e8; }
  .imageGallery .contentSlider__nav {
    top: 0;
    bottom: 85px;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    width: 80px; }
    .imageGallery .contentSlider__nav > svg {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      transition: all .3s ease; }
  .imageGallery .contentSlider__nav--next {
    right: 0;
    padding-right: 20px;
    text-align: right; }
    .imageGallery .contentSlider__nav--next > svg {
      right: 20px; }
    .imageGallery .contentSlider__nav--next:hover > svg {
      right: 10px; }
  .imageGallery .contentSlider__nav--prev {
    left: 0;
    padding-left: 20px; }
    .imageGallery .contentSlider__nav--prev > svg {
      left: 20px; }
    .imageGallery .contentSlider__nav--prev:hover > svg {
      left: 10px; }
  .imageGallery .contentSlider__slidesWrapper__slide {
    background: #e8e8e8; }
    .imageGallery .contentSlider__slidesWrapper__slide > picture {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      text-align: center; }
      .imageGallery .contentSlider__slidesWrapper__slide > picture > img {
        width: auto; }
    .imageGallery .contentSlider__slidesWrapper__slide.isCalculatingHeight > picture {
      position: static;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }

.imageGallery__thumbs {
  position: relative;
  padding: 5px 0;
  overflow: hidden; }

.imageGallery__thumbsWrapper {
  position: relative;
  left: 0;
  transition: left .3s ease; }

.imageGallery__thumbsWrapper__thumb {
  display: block;
  float: left;
  padding-right: 5px;
  opacity: .5;
  transition: opacity .3s ease; }
  .imageGallery__thumbsWrapper__thumb.active {
    opacity: 1; }

.imageGallery__slidesWrapper__slide__description {
  position: absolute;
  bottom: 10px;
  right: 10px;
  width: 40%;
  background: #FFF;
  padding: 10px 15px;
  font-size: 13px;
  line-height: 1.5;
  color: #000;
  opacity: 0; }
  .imageGallery__slidesWrapper__slide__description.imageGallery__slidesWrapper__slide__description--short {
    width: auto; }
  .contentSlider__slidesWrapper__slide--slideCenter .imageGallery__slidesWrapper__slide__description {
    opacity: 0;
    -webkit-animation: flyRight 0.8s both;
            animation: flyRight 0.8s both;
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s; }
    .no-cssanimations .contentSlider__slidesWrapper__slide--slideCenter .imageGallery__slidesWrapper__slide__description {
      opacity: 1; }
  .imageGallery__slidesWrapper__slide__description p,
  .imageGallery__slidesWrapper__slide__description :last-child {
    margin-bottom: 0; }

.imageGallery__fullScreenToggle {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 5;
  display: block;
  padding: 10px;
  font-size: 1.3em;
  color: currentColor;
  transition: all .3s ease; }
  .imageGallery--fullScreen .imageGallery__fullScreenToggle {
    position: fixed;
    top: 1em;
    right: 1em;
    font-size: 28px;
    padding: 0; }
    .imageGallery--fullScreen .imageGallery__fullScreenToggle:hover {
      opacity: .3; }

.imageGallery--fullScreen {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  padding: 0;
  margin-bottom: 0;
  background: 0;
  color: #FFF;
  -webkit-transform-origin: center center;
      -ms-transform-origin: center center;
          transform-origin: center center;
  -webkit-animation: ScaleUpFadeIn .3s both;
          animation: ScaleUpFadeIn .3s both; }
  .imageGallery--fullScreen .contentSlider__slidesWrapper {
    min-height: 90vh; }
  .imageGallery--fullScreen .imageGallery__thumbs {
    height: 10vh;
    background: rgba(0, 0, 0, 0.85); }
  .imageGallery--fullScreen .contentSlider__slidesWrapper__slide {
    min-height: 100%;
    bottom: 0;
    background: rgba(0, 0, 0, 0.85); }
    .imageGallery--fullScreen .contentSlider__slidesWrapper__slide > picture > img {
      object-fit: cover;
      max-width: 90vw;
      max-height: 80vh; }
  .imageGallery--fullScreen .imageGallery__slidesWrapper__slide__description {
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 1em 2em;
    background: #FFF; }

.imageGallery__fullScreenToggle__open {
  display: block; }
  .imageGallery--fullScreen .imageGallery__fullScreenToggle__open {
    display: none; }

.imageGallery__fullScreenToggle__close {
  display: none; }
  .imageGallery--fullScreen .imageGallery__fullScreenToggle__close {
    display: block; }

.imageMap {
  display: none; }
  @media screen and (min-width: 700px), print {
    .imageMap {
      position: relative;
      z-index: 5;
      display: block; } }

.imageMap__backgroundImage {
  position: relative;
  z-index: 1; }
  .imageMap__backgroundImage img {
    height: auto;
    width: 100%; }

.imageMap__spot {
  position: absolute;
  z-index: 10;
  margin: -0.5% 0 0 -0.5%; }

.imageMap__arrow {
  position: absolute;
  left: -5px;
  height: 0;
  z-index: -1;
  width: 0;
  border-style: solid;
  border-width: 20px;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.5s linear; }

.imageMap__spot__wrapper {
  position: relative;
  height: 30px;
  width: 30px; }

.imageMap__bubble {
  position: relative;
  display: block;
  height: 100%;
  width: 30px;
  border-radius: 100%;
  border: 4px solid rgba(255, 255, 255, 0.57);
  transition: border-color .5s ease; }

.imageMap__bubble__bubble__ring {
  position: absolute;
  left: 50%;
  top: 50%;
  height: 200%;
  width: 200%;
  margin-left: -100%;
  margin-top: -100%;
  border: 2px solid #003674;
  border-radius: 100%;
  opacity: 0.0;
  -webkit-animation: pulsate 1.3s ease-out infinite;
          animation: pulsate 1.3s ease-out infinite; }

.imageMap__bubble__bubbleInner {
  display: block;
  height: 100%;
  width: 100%;
  border-radius: 100%;
  background: #003674; }

.imageMap__bubble:hover {
  border-color: #FFF; }
  .imageMap__bubble:hover .imageMap__bubble__bubble__ring {
    -webkit-animation: none;
            animation: none; }

.imageMap__spot__contentWrapper {
  position: relative;
  z-index: -1;
  padding: 10px;
  background-color: rgba(255, 255, 255, 0.8);
  color: #333;
  opacity: 0;
  transition: opacity 0.5s linear; }

.imageMap__spot__contentWrapper__content {
  background-color: white; }

.imageMap__spot__contentWrapper__content__article {
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto; }
  .imageMap__spot__contentWrapper__content__article .content {
    width: 230px;
    padding: 15px 20px;
    font-size: 12px;
    line-height: 1.6em; }
  .imageMap__spot__contentWrapper__content__article .title {
    padding: 0;
    margin: 0 0 5px 0;
    font-size: 16px;
    font-weight: bold; }

.imageMap__item--active {
  z-index: 15; }
  .imageMap__item--active .imageMap__arrow {
    z-index: 1;
    opacity: 1; }
  .imageMap__item--active .imageMap__spot__contentWrapper {
    z-index: 1;
    opacity: 1;
    transition: all 0.5s linear; }

.imageMap__item--top .imageMap__arrow {
  top: -5px;
  border-color: transparent transparent rgba(255, 255, 255, 0.8) transparent;
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg); }

.imageMap__item--top .imageMap__spot__contentWrapper {
  top: 5px; }

.imageMap__item--bottom .imageMap__arrow {
  border-color: rgba(255, 255, 255, 0.8) transparent transparent transparent;
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg); }

.imageMap__item--bottom .imageMap__spot__contentWrapper {
  top: -144px; }

.imageMap__item--left .imageMap__arrow {
  border-color: transparent rgba(255, 255, 255, 0.8) transparent transparent; }

.imageMap__item--left .imageMap__spot__contentWrapper {
  left: -20px; }

.imageMap__item--right .imageMap__arrow {
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg); }

.imageMap__item--right .imageMap__spot__contentWrapper {
  left: -210px; }

@-webkit-keyframes pulsate {
  0% {
    -webkit-transform: scale(0.1, 0.1);
            transform: scale(0.1, 0.1);
    opacity: 0.0; }
  50% {
    opacity: 1.0; }
  100% {
    -webkit-transform: scale(0.9, 0.9);
            transform: scale(0.9, 0.9);
    opacity: 0.0; } }

@keyframes pulsate {
  0% {
    -webkit-transform: scale(0.1, 0.1);
            transform: scale(0.1, 0.1);
    opacity: 0.0; }
  50% {
    opacity: 1.0; }
  100% {
    -webkit-transform: scale(0.9, 0.9);
            transform: scale(0.9, 0.9);
    opacity: 0.0; } }

.imageTeaser {
  position: relative;
  display: block;
  height: 100%;
  margin-bottom: 10px;
  overflow: hidden;
  color: #052850; }
  .imageTeaser:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    opacity: 0;
    transition: opacity .3s ease;
    background: #052850; }
  .imageTeaser:hover:after {
    opacity: .75; }

.imageTeaser__bg {
  position: relative;
  z-index: 0;
  width: 100%;
  height: 100%;
  transition: all .6s ease; }
  .imageTeaser:hover .imageTeaser__bg {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
            transform: scale3d(1.05, 1.05, 1.05); }

.imageTeaser__content {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
  padding: 10px 15%;
  text-align: center;
  letter-spacing: 1px; }
  .imageTeaser__content h4, .imageTeaser__content h5 {
    text-transform: uppercase; }
  .imageTeaser__content h4, .imageTeaser__content h5 {
    transition: color .6s ease; }
  .imageTeaser:hover .imageTeaser__content,
  .imageTeaser:hover .imageTeaser__content h1, .imageTeaser:hover .imageTeaser__content h2, .imageTeaser:hover .imageTeaser__content h3,
  .imageTeaser:hover .imageTeaser__content h4, .imageTeaser:hover .imageTeaser__content h5, .imageTeaser:hover .imageTeaser__content h6 {
    color: #FFF; }

.imageTeaser__content--center {
  top: 50%;
  bottom: auto;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.imageTeaser__content--bottom {
  top: auto; }

.imageTeaser__content__btn {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(100px);
      -ms-transform: translateX(-50%) translateY(100px);
          transform: translateX(-50%) translateY(100px);
  transition: all .3s .3s ease;
  opacity: 0; }
  .imageTeaser:hover .imageTeaser__content__btn {
    opacity: 1;
    -webkit-transform: translateX(-50%) translateY(0);
        -ms-transform: translateX(-50%) translateY(0);
            transform: translateX(-50%) translateY(0); }

.imageTextTeaser {
  position: relative;
  overflow: hidden; }

.imageTextTeaser--horizontalCentered {
  text-align: center; }

.imageTextTeaser__img picture,
.imageTextTeaser__img img {
  width: 100%; }

@media screen and (min-width: 980px), print {
  .imageTextTeaser__content {
    position: absolute;
    width: 40%; }
    .imageTextTeaser--verticalCentered .imageTextTeaser__content {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      padding-right: 10px; } }

.imageTextTeaser__content--right {
  right: 5px; }
  @media screen and (min-width: 700px), print {
    .imageTextTeaser__content--right {
      padding-left: 20px; } }
  .imageTextTeaser--horizontalCentered .imageTextTeaser__content--right {
    right: 5%; }

.imageTextTeaser__content--left {
  left: 5px; }
  @media screen and (min-width: 700px), print {
    .imageTextTeaser__content--left {
      padding-right: 20px; } }
  .imageTextTeaser--horizontalCentered .imageTextTeaser__content--left {
    left: 5%; }

/*
lightBox Module

Markup:
<a href="http://placehold.it/800x500" data-initialize="LightBox" data-action="openLightBox" data-type="image">
	<img src="http://placehold.it/400x250" width="400" height="250" alt="" border="0">
</a>

*/
.lightBox {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1004;
  display: none;
  width: 100%;
  height: 100%;
  cursor: pointer; }

.lightBox__bg {
  width: 100%;
  height: 100%;
  background: #000;
  background: rgba(0, 0, 0, 0.85); }

.lightBox__Content {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
      -ms-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  width: 90%;
  max-height: 90%;
  cursor: default; }

.lightBox__Content__inner {
  position: relative; }

.lightBox__closeBtn,
.lightBox__downloadLink {
  position: fixed;
  z-index: 1;
  line-height: 1;
  color: #FFF;
  transition: all .3s .3s ease;
  opacity: 0;
  -webkit-transform: translateY(-40px);
      -ms-transform: translateY(-40px);
          transform: translateY(-40px);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
  .lightBox.active .lightBox__closeBtn, .lightBox.active
  .lightBox__downloadLink {
    opacity: 1;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none; }
    .lightBox.active .lightBox__closeBtn:hover, .lightBox.active
    .lightBox__downloadLink:hover {
      opacity: .3;
      text-decoration: none; }

.lightBox__closeBtn {
  top: 1em;
  right: 1em;
  font-size: 28px; }

.lightBox__downloadLink {
  right: 3.5em;
  top: 1.45em;
  font-size: 22px; }

.lightBox__description {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  padding: 15px 20px;
  background: #FFF;
  text-align: left;
  transition: opacity 1s 1s ease;
  opacity: 0; }
  .lightBox.active .lightBox__description {
    opacity: 1; }

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

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

.lightBox--image .lightBox__Content {
  text-align: center;
  -webkit-transform-origin: left top;
      -ms-transform-origin: left top;
          transform-origin: left top;
  pointer-events: none; }

.lightBox--image .lightBox__Content__inner {
  max-height: 85vh;
  max-width: 90vw;
  overflow: hidden;
  display: inline-block;
  pointer-events: all; }
  .lightBox--image .lightBox__Content__inner img {
    -webkit-animation: lightBoxScaleImageUp .3s both;
            animation: lightBoxScaleImageUp .3s both; }

.image--hasLightBox {
  position: relative;
  display: inline-block;
  max-width: 100%; }
  .image--hasLightBox:after {
    content: '';
    display: block;
    position: absolute;
    top: 1em;
    right: 1em;
    width: 30px;
    height: 30px;
    text-align: center;
    line-height: 30px;
    font-size: .8em;
    color: #FFFFFF;
    background: rgba(0, 0, 0, 0.4) url("/typo3conf/ext/hlkf_config/Resources/Public/Icons/search.svg") no-repeat center center;
    background-size: 14px;
    border-radius: 100%;
    transition: all .3s ease;
    opacity: 1; }
  .image--hasLightBox:hover {
    text-decoration: none; }
    .image--hasLightBox:hover:after {
      opacity: 0;
      -webkit-transform: scale(0);
          -ms-transform: scale(0);
              transform: scale(0); }

.lightBox-browserWarning .lightBox__Content {
  width: 800px;
  height: 350px;
  margin-top: -200px;
  margin-left: -350px;
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  background: #FFF;
  padding: 2em;
  text-align: center; }

.lightBox--fullSize .lightBox__Content {
  width: 100%;
  height: 100%;
  max-height: 100%; }

.lightBox--fullSize .lightBox__Content__inner,
.lightBox--fullSize .fluidIFrame,
.lightBox--fullSize .fluidIFrame__iFrame {
  position: static;
  height: 100%;
  margin-bottom: 0;
  max-height: 100%;
  border: 0; }

.lightBox--fullSize .fluidIFrame__ratio {
  display: none; }

/*------------------------------------*    $MEDIA
\*------------------------------------*/
/**
 * Place any image- and text-like content side-by-side, as per:
 * stubbornella.org/content/2010/06/25/the-media-object-saves-hundreds-of-lines-of-code
 * E.g.:
 *
   <div class=media>
       <img src=http://placekitten.com/200/300 alt="" class=media__img>
       <p class=media__body>Lorem ipsum dolor sit amet, consectetur adipisicing elit,
       sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
   </div>
 *
 * Demo: jsfiddle.net/inuitcss/cf4Qs
 *
 */
.media {
  display: block; }
  .media:before, .media:after {
    content: "";
    display: table; }
  .media:after {
    clear: both; }

.media__img {
  float: left;
  margin-right: 1.73333em; }

/**
 * Reversed image location (right instead of left).
 */
.media__img--rev {
  float: right;
  margin-left: 1.73333em; }

.media__img img,
.media__img--rev img {
  display: block; }

.media__body {
  overflow: hidden; }

.media__body,
.media__body > :last-child {
  margin-bottom: 0; }

.message {
  font-size: 14px;
  padding: 1.5em;
  margin: 1.5em 0;
  border: 1px solid rgba(0, 96, 169, 0.5);
  background: rgba(0, 96, 169, 0.1);
  color: #0060a9; }
  .message > :last-child {
    margin-bottom: 0; }

.message--warning {
  border-color: #eb4b19;
  background: rgba(235, 75, 25, 0.1);
  color: #c03b11; }

.message--success {
  border-color: #BBED05;
  background: rgba(196, 237, 5, 0.1);
  color: #A5AE19; }

.message--error {
  border-color: #eb4b19;
  background: rgba(235, 75, 25, 0.1);
  color: #c03b11; }

.message-special {
  border-color: #eb4b19;
  background: rgba(235, 75, 25, 0.6);
  color: #FFF; }

.message--jsonError {
  position: fixed;
  top: 0;
  left: 50%;
  z-index: 1000000;
  width: 600px;
  padding: 10px;
  margin-top: 0;
  margin-left: -300px;
  border: 1px solid red;
  background: #ff0044;
  color: #FFF;
  font-size: 12px; }

.message--small {
  font-size: 13px;
  padding: 1em;
  margin-top: 1em;
  margin-bottom: 1em; }

/*
Navigations

Styleguide 4.2
*/
/*
Nav Object

A modified version of the navigation object from inuit.css.

.nav - Throws a list into horizontal mode.
.nav.nav--stacked - Throws a list into vertical mode.
.nav.nav--block - Setzt einen background und Abstand an jedes Nav item.
.nav.nav--block.nav--block--secondary - Background in secondary farben.
.nav.nav--fit - Forces a list to occupy 100% of the available width of it's parent.

Markup:
<ul class="{$modifiers}">
	<li><a href="">Home</a></li>
	<li><a href="">About</a></li>
	<li><a href="">Products</a></li>
	<li><a href="">Contact</a></li>
</ul>

Styleguide 4.2.1
*/
.csc-sitemap ul,
.nav {
  margin-bottom: 0;
  padding-left: 0; }
  .csc-sitemap ul > li,
  .nav > li {
    padding-bottom: 0; }
    .csc-sitemap ul > li:before,
    .nav > li:before {
      display: none; }
  .csc-sitemap ul > li,
  .nav > li {
    display: inline-block; }
    .csc-sitemap ul > li > a,
    .nav > li > a {
      display: block; }
      .csc-sitemap ul > li > a:focus, .csc-sitemap ul > li > a:active, .csc-sitemap ul > li > a:hover,
      .nav > li > a:focus,
      .nav > li > a:active,
      .nav > li > a:hover {
        text-decoration: none; }

/**
 * Throws the list into a vertical mode
 */
.csc-sitemap ul li,
.nav--stacked li {
  display: list-item; }

/**
 * Enlarges the nav into a full-width pattern
 */

.nav--fit {
  display: table;
  width: 100%; }
  
  .nav--fit > li {
    display: table-cell;
    text-align: center; }

.nav--small {
  font-size: 0.93333em; }
  .nav--small > li > a {
    color: grey; }

.nav--breadcrumb {
  display: none;
  text-transform: uppercase;
  font-size: 0.8em;
  text-align: center;
  margin-top: 10px;
  margin-bottom: -10px;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }
  @media screen and (min-width: 700px), print {
    .nav--breadcrumb {
      display: block; } }
  .nav--breadcrumb > li > a {
    color: #052850; }
    .nav--breadcrumb > li > a:after {
      content: '»';
      display: inline-block;
      margin: 0 .5em; }
  .nav--breadcrumb > li:last-child > a:after {
    display: none; }

.nav--pagina > li {
  cursor: pointer;
  padding: 5px 7px;
  background: #FFF;
  color: #052850;
  font-size: 12px;
  opacity: .6; }
  .nav--pagina > li.active {
    opacity: 1; }

.nav--boxedPagina > li {
  background: #F0F0F0;
  padding: 13px;
  border-right: 1px solid #FFF;
  color: #4C4C4C;
  font-size: 12px; }
  .nav--boxedPagina > li:last-child {
    border-right: 0; }
  .nav--boxedPagina > li > a {
    color: #052850; }
  .nav--boxedPagina > li.active {
    background: #052850;
    color: #FFF; }

.nav--boxedPagina__reset {
  padding: 0 !important;
  background: 0 !important; }

.nav--boxed > li {
  cursor: pointer;
  background: #F0F0F0;
  padding: 11px;
  border-bottom: 1px solid #FFF;
  font-size: 12px; }
  .nav--boxed > li,
  .nav--boxed > li > a {
    color: #4C4C4C; }
  .nav--boxed > li > a {
    display: inline-block; }

.newsletterTeaser {
  position: relative;
  width: 100%;
  text-align: center;
  background: #0060a9;
  margin-bottom: 0; }
  .newsletterTeaser,
  .newsletterTeaser h1, .newsletterTeaser h2, .newsletterTeaser h3,
  .newsletterTeaser h4, .newsletterTeaser h5, .newsletterTeaser h6 {
    color: #FFF; }
  .newsletterTeaser:before {
    content: '';
    display: block;
    padding-top: 5%; }
    @media screen and (min-width: 980px), print {
      .newsletterTeaser:before {
        padding-top: 69.25%; } }

.newsletterTeaser__content {
  padding: 0 2em; }
  @media screen and (max-width: 1200px) {
    .newsletterTeaser__content {
      font-size: 12px; }
      .newsletterTeaser__content > h4 {
        font-size: 16px; }
      .newsletterTeaser__content > h3 {
        font-size: 22px; } }
  @media screen and (min-width: 980px), print {
    .newsletterTeaser__content {
      position: absolute;
      top: 50%;
      left: 0;
      right: 0;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); } }

.packery {
  z-index: 0; }

.packery__item {
  right: 5px; }

@-webkit-keyframes placeHolderShimmer {
  0% {
    background-position: -1200px 0; }
  100% {
    background-position: 1200px 0; } }

@keyframes placeHolderShimmer {
  0% {
    background-position: -1200px 0; }
  100% {
    background-position: 1200px 0; } }

.placeholderContent {
  background: #fff;
  border: 1px solid;
  border-color: #e5e6e9 #dfe0e4 #d0d1d5;
  padding: 12px;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

.placeholderContent__bg {
  -webkit-animation: placeHolderShimmer 3s infinite linear forwards;
          animation: placeHolderShimmer 3s infinite linear forwards;
  background: linear-gradient(to right, #eeeeee 8%, #dddddd 18%, #eeeeee 33%);
  background-size: 800px 104px;
  height: 225px;
  position: relative; }

.placeholderContent__bg__spacer {
  background: #fff;
  position: absolute; }

.roundedImageTeaser {
  display: block;
  text-align: center;
  margin-bottom: 50px;
  margin-bottom: 3.125rem; }

.roundedImageTeaser__imgWrapper {
  display: inline-block;
  margin-bottom: 13px;
  margin-bottom: 0.8125rem;
  border-radius: 100%;
  overflow: hidden;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  -webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC); }

.roundedImageTeaser__imgWrapper__img {
  transition: all .6s ease;
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1); }
  .roundedImageTeaser:hover .roundedImageTeaser__imgWrapper__img {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
            transform: scale3d(1.05, 1.05, 1.05); }

.roundedImageTeaser__heading {
  color: #052850; }

.roundedImageTeaser__paragraph {
  margin-bottom: 13px;
  margin-bottom: 0.8125rem;
  line-height: 1.5; }

.roundedImageTeaser__btn {
  color: #052850;
  text-transform: uppercase;
  font-size: .8em;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }

.roundedImageTeaser__btn__icon {
  position: relative;
  top: -2px;
  margin-right: .1em;
  font-size: 2.2em; }

.safePrivacySocialSwitcher {
  padding-left: 10px;
  font-size: .8em;
  cursor: pointer; }
  .safePrivacySocialSwitcher.hidden {
    display: none; }

.safePrivacySocialSwitcher__switch {
  position: relative;
  display: inline-block;
  width: 30px;
  vertical-align: top;
  margin-top: 6px;
  margin-right: 1em;
  height: 8px;
  background: rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3);
  border-radius: 4px; }

.safePrivacySocialSwitcher__switch__bubble {
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  height: 15px;
  width: 15px;
  background: #FFF;
  border-radius: 100%;
  -webkit-transform: translateY(-50%) translateX(-50%);
      -ms-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  transition: all .2s ease; }
  .active .safePrivacySocialSwitcher__switch__bubble {
    left: auto;
    right: 0;
    -webkit-transform: translateY(-50%) translateX(50%);
        -ms-transform: translateY(-50%) translateX(50%);
            transform: translateY(-50%) translateX(50%); }

.fb-like {
  line-height: 1; }

.results-entry a:hover {
  text-decoration: none; }

.facet-option {
  padding-right: 1.2em; }

.facet-option:last-child {
  padding-right: 0; }

.icon--radius {
  background: #0060a9 none repeat scroll 0 0;
  border-radius: 100%;
  color: #fff;
  text-align: center;
  vertical-align: middle; }

.icon--radius__small {
  width: 20px;
  height: 20px;
  line-height: 20px;
  font-size: 14px; }

.icon--padded {
  padding: 5px; }

.i--download.icon--radius__small {
  font-size: 12px; }

.icon--radius__big {
  width: 36px;
  height: 36px;
  line-height: 36px;
  font-size: 26px; }

.i--download.icon--radius__big {
  font-size: 23px; }

.results-highlight {
  color: #eb4b19;
  font-weight: bold; }

h5.results-topic a .results-highlight {
  font-weight: normal; }

.results-teaser b {
  font-weight: normal; }

.siteLoader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1005;
  height: 100%;
  background: #FFF;
  opacity: 1;
  transition: opacity .6s .2s ease; }

.siteLoader--inactive {
  opacity: 0;
  pointer-events: none; }

.siteLoader__spinner {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
      -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  opacity: 1;
  transition: -webkit-transform .4s ease, opacity .4s ease;
  transition: transform .4s ease, opacity .4s ease; }
  .siteLoader--inactive > .siteLoader__spinner {
    -webkit-transform: translateX(-50%) translateY(-100%);
        -ms-transform: translateX(-50%) translateY(-100%);
            transform: translateX(-50%) translateY(-100%);
    opacity: 0; }

.stageTeaser {
  position: relative;
  overflow: hidden;
  border-bottom: 10px solid #FFF;
  background: #e8e8e8;
  height: 50vw;
  max-height: 600px; }
  .stageTeaser > .csc-default {
    position: relative;
    z-index: 1;
    padding: 2em; }
    @media screen and (min-width: 700px), print {
      .stageTeaser > .csc-default {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%); } }

.stageTeaser__background {
  position: absolute;
  top: 0;
  left: 50%;
  padding: 0;
  margin-left: -50%; }
  .stageTeaser__background,
  .stageTeaser__background picture,
  .stageTeaser__background picture > img {
    width: 100%; }

.storyTeaser {
  margin-top: 4em;
  margin-bottom: 4em;
  border: 1px solid rgba(0, 0, 0, 0.09);
  padding-top: 6em;
  padding-bottom: 6em;
  border-width: 1px 0; }

.storyTeaser__img {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative; }
  .storyTeaser__img img {
    border-radius: 3px; }

.storyTeaser__content {
  text-align: center;
  padding: 90px 4em 0;
  position: relative; }
  .storyTeaser__content > p {
    margin-bottom: 13px;
    margin-bottom: 0.8125rem; }
  .storyTeaser__content > :last-child {
    margin-bottom: 0; }

.storyTeaser__content__badge {
  -webkit-animation: pulse 3s linear infinite;
          animation: pulse 3s linear infinite;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #0060a9;
  border-radius: 100%;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
  border: 3px solid #fff;
  color: #fff;
  cursor: pointer;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 120%;
  font-weight: 100;
  height: 65px;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 1.5em;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -32.5px;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  width: 65px; }
  .storyTeaser__content__badge:after {
    background: inherit;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    border-radius: 100%;
    bottom: 0;
    content: '';
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform: rotateY(180deg);
            transform: rotateY(180deg);
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d; }
  .storyTeaser__content__badge svg {
    fill: #fff;
    height: 40px;
    width: 40px; }

.storyTeaser__content__heading {
  margin-bottom: 1.2em; }

.storyTeaser__content__text {
  margin-bottom: 2em; }

.storyTeaser__canvas {
  background: #222730;
  border: none;
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  height: 0;
  overflow: hidden;
  width: 100%;
  z-index: 2000; }

.storyTeaser--active .storyTeaser__canvas {
  height: 100%; }

.storyTeaser__close {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: rgba(255, 255, 255, 0.1);
  border: 2px solid #fff;
  border-radius: 50%;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  opacity: 0;
  position: fixed;
  right: 2.4em;
  top: 2.4em;
  transition: opacity .3s ease-in;
  visibility: hidden;
  width: 40px;
  z-index: 2001; }
  .storyTeaser__close:hover {
    opacity: 1; }
  .storyTeaser__close svg {
    fill: #fff;
    height: 20px;
    width: 20px; }

.storyTeaser--active .storyTeaser__close {
  cursor: pointer;
  visibility: visible;
  opacity: 1; }

@-webkit-keyframes pulse {
  0% {
    border-color: #fff; }
  50% {
    border-color: rgba(0, 96, 169, 0.6); }
  100% {
    border-color: #fff; } }

@keyframes pulse {
  0% {
    border-color: #fff; }
  50% {
    border-color: rgba(0, 96, 169, 0.6); }
  100% {
    border-color: #fff; } }

.suiteSlider {
  position: relative;
  margin-bottom: 26px;
  margin-bottom: 1.625rem;
  background: #222730; }

.suiteSlider__slidesWrapper {
  margin-bottom: 1em; }

.suiteSlider__slidesWrapper__slide {
  background: 0; }
  .suiteSlider__slidesWrapper__slide a, .suiteSlider__slidesWrapper__slide a:hover, .suiteSlider__slidesWrapper__slide a:focus {
    text-decoration: none; }
  .suiteSlider__slidesWrapper__slide picture,
  .suiteSlider__slidesWrapper__slide picture img {
    width: 100%; }

.suiteSlider__slidesWrapper__slide__btn {
  color: #FFF;
  padding-top: 1em;
  padding-bottom: 1em; }
  .suiteSlider__slidesWrapper__slide a:hover .suiteSlider__slidesWrapper__slide__btn, .suiteSlider__slidesWrapper__slide__btn:hover {
    background: #FFF;
    color: #222730; }

.suiteSlider__heading {
  padding: 0 1em;
  margin-bottom: 1em;
  color: #FFF;
  text-align: center;
  font-family: "Brown-Thin", sans-serif;
  font-weight: 400; }

.suiteSlider__nav {
  margin-bottom: 1em;
  text-align: center;
  font-family: "Adobe Garamond Pro", "Book Antiqua", serif; }
  .suiteSlider__nav > li {
    margin-right: -.3em; }
    .suiteSlider__nav > li > a {
      position: relative;
      padding-top: 15px;
      border-top: 2px solid #FFF;
      color: #FFF; }
      .suiteSlider__nav > li > a:after {
        content: '';
        display: block;
        width: 12px;
        height: 12px;
        background: #FFF;
        border-radius: 100%;
        position: absolute;
        top: -1px;
        left: 50%;
        transition: all .3s ease;
        -webkit-transform: translateX(-50%) translateY(-50%);
            -ms-transform: translateX(-50%) translateY(-50%);
                transform: translateX(-50%) translateY(-50%); }
    .suiteSlider__nav > li.active > a:after, .suiteSlider__nav > li:hover > a:after {
      width: 20px;
      height: 20px; }
    .suiteSlider__nav > li:last-child > a, .suiteSlider__nav > li:first-child > a {
      border-top: 0; }
      .suiteSlider__nav > li:last-child > a:before, .suiteSlider__nav > li:first-child > a:before {
        content: '';
        border-top: 2px solid #FFF;
        width: 50%;
        display: block;
        position: absolute;
        top: -2px; }
    .suiteSlider__nav > li:first-child > a:before {
      right: 0; }

.tabbedContent {
  position: relative;
  width: 100%;
  overflow: hidden;
  margin-top: 3.46667rem;
  margin-bottom: 3.46667rem; }
  @media screen and (max-width: 699px) {
    .tabbedContent {
      height: auto !important; } }
  @media screen and (min-width: 700px), print {
    .tabbedContent {
      display: table;
      transition: height .3s ease; } }

.tabbedContent__tabAnchor {
  margin-top: 1px;
  text-align: center;
  font-size: .9em; }
  @media screen and (min-width: 700px), print {
    .tabbedContent__tabAnchor {
      display: table-cell;
      padding-right: 10px;
      padding-left: 10px; } }
  @media screen and (min-width: 980px), print {
    .tabbedContent__tabAnchor {
      font-size: 1em; } }
  @media print {
    .tabbedContent__tabAnchor {
      display: none; } }
  .tabbedContent__tabAnchor:hover > a, .tabbedContent__tabAnchor.active > a {
    color: white;
    background: #0060a9; }
    .tabbedContent__tabAnchor:hover > a:after, .tabbedContent__tabAnchor.active > a:after {
      position: absolute;
      bottom: -11px;
      left: 50%;
      margin-left: -2.5px;
      content: "";
      display: block;
      width: 0;
      height: 0;
      border: solid 5px;
      border-color: #0060a9 transparent transparent transparent;
      opacity: 0;
      -webkit-animation: flyDown 0.4s both;
              animation: flyDown 0.4s both; }
      .no-cssanimations .tabbedContent__tabAnchor:hover > a:after, .no-cssanimations .tabbedContent__tabAnchor.active > a:after {
        opacity: 1; }
  .tabbedContent__tabAnchor > a {
    position: relative;
    display: inline-block;
    width: 100%;
    padding: .4em .2em;
    margin-bottom: .5em;
    border: 1px solid #0060a9;
    color: #0060a9;
    transition: all .2s ease;
    text-decoration: none;
    background: transparent; }
    @media screen and (min-width: 700px), print {
      .tabbedContent__tabAnchor > a {
        text-transform: uppercase;
        letter-spacing: 1px;
        margin-bottom: 0;
        padding: .8em 1.8em; } }

.tabbedContent__tab {
  position: relative;
  height: 0;
  width: 100%;
  -webkit-transform: translateX(75px);
      -ms-transform: translateX(75px);
          transform: translateX(75px);
  opacity: 0;
  transition: -webkit-transform .7s ease, opacity .35s ease;
  transition: transform .7s ease, opacity .35s ease;
  overflow: hidden; }
  @media screen and (min-width: 700px), print {
    .tabbedContent__tab {
      position: absolute;
      top: 100px;
      left: 0;
      z-index: 0;
      height: auto;
      float: left;
      padding: 1em; } }
  @media print {
    .tabbedContent__tab {
      position: static;
      opacity: 1;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; } }

.tabbedContent__tab--active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  height: auto;
  padding: 1em;
  opacity: 1;
  z-index: 1; }

.tooltip {
  position: relative; }

.tooltip__tip {
  position: absolute;
  top: -65%;
  left: 5%;
  padding: 5px 13px;
  font-size: 12px;
  text-align: left;
  background: #eb4b19;
  color: #FFF;
  opacity: 0;
  -webkit-animation: flyUp 0.4s both;
          animation: flyUp 0.4s both; }
  .no-cssanimations .tooltip__tip {
    opacity: 1; }
  .tooltip__tip:after {
    position: absolute;
    bottom: -10px;
    left: 5%;
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: solid 5px;
    border-color: #eb4b19 transparent transparent transparent; }

.tooltip__tip--disabled {
  display: none; }

@media screen and (max-width: 979px) {
  .travelAgencyFinderBg {
    background: 0 !important;
    padding-left: 0 !important; } }

@media screen and (min-width: 980px), print {
  .travelAgencyFinderBg {
    background-position: left top;
    background-repeat: no-repeat;
    background-size: contain; } }

.videoPlayer {
  position: relative;
  height: 100%;
  background: #000;
  margin-bottom: 10px; }
  .siteKeyvisual .videoPlayer {
    margin-bottom: 0; }

.videoPlayer__video {
  width: 100%;
  margin-bottom: 0;
  vertical-align: top; }

.videoPlayer__stateToggler {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  -webkit-transform: translateX(-50%) translateY(-50%);
      -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  overflow: hidden;
  border-radius: 100%;
  border: 7px solid rgba(255, 255, 255, 0.25);
  transition: all .3s ease;
  opacity: 1; }
  .videoPlayer__stateToggler.isPlaying {
    pointer-events: none;
    opacity: 0;
    -webkit-transform: translateX(-50%) translateY(-100%);
        -ms-transform: translateX(-50%) translateY(-100%);
            transform: translateX(-50%) translateY(-100%); }
  .videoPlayer:hover .videoPlayer__stateToggler {
    -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%); }
  .touchevents .videoPlayer__stateToggler.isPlaying {
    opacity: 0 !important; }

.videoPlayer__stateToggler__inner {
  display: block;
  position: relative;
  width: 12vw;
  height: 12vw;
  background: #FFF;
  font-size: 3vw;
  color: #052850; }
  @media screen and (min-width: 700px), print {
    .videoPlayer__stateToggler__inner {
      width: 100px;
      height: 100px;
      font-size: 1.5em; } }

.videoPlayer__stateToggler__inner__play,
.videoPlayer__stateToggler__inner__pause {
  position: absolute;
  top: 50%;
  left: 50%;
  transition: all .3s ease; }

.videoPlayer__stateToggler__inner__pause {
  opacity: 0;
  -webkit-transform: translateX(-50%) translateY(-100%);
      -ms-transform: translateX(-50%) translateY(-100%);
          transform: translateX(-50%) translateY(-100%); }
  .isPlaying .videoPlayer__stateToggler__inner__pause {
    opacity: 1;
    -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%); }

.videoPlayer__stateToggler__inner__play {
  opacity: 1;
  -webkit-transform: translateX(-50%) translateY(-50%);
      -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%); }
  .isPlaying .videoPlayer__stateToggler__inner__play {
    opacity: 0;
    -webkit-transform: translateX(-50%) translateY(100%);
        -ms-transform: translateX(-50%) translateY(100%);
            transform: translateX(-50%) translateY(100%); }

.webcamGallery {
  padding: 0; }
  .webcamGallery .webcamGallery__thumbs {
    padding-bottom: 0; }

.webcamGalleryDayNavAnchor {
  padding-top: 15px;
  font-size: 32px;
  line-height: 1;
  color: #052850; }
  @media screen and (min-width: 700px), print {
    .webcamGalleryDayNavAnchor {
      padding-top: 0; } }

/*
Organisms

Organisms are groups of molecules (and possibly atoms) joined together to form distinct section of an interface.
*/
.siteSearch {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1002;
  width: 100%;
  min-width: 350px;
  min-height: 60px;
  margin: 0;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  transition: all .5s ease; }

.siteSearch--visible {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none; }

.siteSearch__block {
  position: relative;
  background: #FFF; }

.siteSearch__block--results {
  padding: 0 2em 1em; }
  .siteSearch__block--results:empty {
    padding: 0; }
  .siteSearch__block--results > a {
    display: block; }

.siteSearch__label {
  position: absolute;
  left: 2.25em;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  color: #ccc; }
  .siteSearch--hasValue .siteSearch__label {
    display: none; }

.siteSearch__input {
  width: 100%;
  height: 60px;
  padding: .5em 8em .5em 2em;
  border: 0; }
  .siteSearch__input:focus {
    box-shadow: none; }
  @media screen and (min-width: 980px), print {
    .siteSearch__input {
      margin: 10px 0; } }

.siteSearch__inputBorder {
  position: absolute;
  left: 2em;
  right: 8em;
  bottom: .75em;
  border-bottom: 1px solid #ccc; }
  @media screen and (min-width: 980px), print {
    .siteSearch__inputBorder {
      bottom: 1em; } }

.siteSearch__button {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  border: 0;
  background: 0;
  line-height: 1;
  color: #052850;
  padding: .5em; }

.siteSearch__button--right {
  right: 5em; }

.siteSearch__button--fringeRight {
  right: 2em; }

.siteHeader {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  min-width: 350px;
  transition: all .3s ease; }
  @media print {
    .siteHeader {
      display: none; } }

@media screen and (min-width: 980px), print {
  .siteHeader--hidden {
    -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
            transform: translateY(-100%); } }

.siteHeader__bar {
  position: relative;
  background: #052850;
  height: 60px; }
  @media screen and (min-width: 700px), print {
    .siteHeader__bar {
      background: rgba(0, 0, 0, 0.3); } }

.siteHeader__barToggle {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 0;
  color: #FFF;
  cursor: pointer; }
  .siteHeader__barToggle:focus, .siteHeader__barToggle:hover {
    text-decoration: none; }

.siteHeader__barToggle--left {
  left: 2em; }
  @media screen and (min-width: 980px), print {
    .siteHeader__barToggle--left {
      display: none; } }

.siteHeader__barToggle--right {
  right: 2em; }
  @media screen and (min-width: 980px), print {
    .siteHeader__barToggle--right {
      position: static;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none;
      float: left;
      padding-top: 19px;
      padding-left: 5px; } }
  @media screen and (min-width: 880px) and (max-width: 1050px) {
    .siteHeader__barToggle--right span {
      display: none; } }

.siteHeader__barToggle__label {
  padding-left: .35em;
  font-size: 1.1em;
  line-height: 1;
  text-transform: uppercase;
  font-family: "Brown-Regular", sans-serif;
  font-weight: 400; }
  .siteHeader__barToggle--right > .siteHeader__barToggle__label {
    padding-left: 0;
    padding-right: .35em; }

.siteHeader__bar__brandLogo {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  -webkit-transform: translateX(-50%) translateY(-1px);
      -ms-transform: translateX(-50%) translateY(-1px);
          transform: translateX(-50%) translateY(-1px);
  transition: all .3s ease; }
  @media screen and (min-width: 980px), print {
    .siteHeader__bar__brandLogo {
      -webkit-transform: translateX(-50%) translateY(-28px);
          -ms-transform: translateX(-50%) translateY(-28px);
              transform: translateX(-50%) translateY(-28px); }
      .siteHeader--hidden .siteHeader__bar__brandLogo {
        -webkit-transform: translateX(-50%) translateY(-39px);
            -ms-transform: translateX(-50%) translateY(-39px);
                transform: translateX(-50%) translateY(-39px); } }

.siteHeader__siteNav {
  display: none;
  visibility: hidden;
  float: left; }
  @media screen and (min-width: 980px), print {
    .siteHeader__siteNav {
      display: block;
      visibility: visible; } }
  .siteHeader__siteNav > li {
    position: static; }
    .siteHeader__siteNav > li:hover {
      background: #FFF; }
      .siteHeader__siteNav > li:hover > a,
      .siteHeader__siteNav > li:hover .siteHeader__siteNav__fakeLink {
        color: #052850; }
      .siteHeader__siteNav > li:hover > .siteHeader__siteNav__flyout {
        display: block; }
    .siteHeader__siteNav > li > a,
    .siteHeader__siteNav > li .siteHeader__siteNav__fakeLink {
      display: block;
      padding: 22px .85em;
      color: #FFF;
      cursor: pointer;
      font-size: 1.1em;
      line-height: 1;
      text-transform: uppercase;
      font-family: "Brown-Regular", sans-serif;
      font-weight: 400; }
      @media screen and (min-width: 1050px), print {
        .siteHeader__siteNav > li > a,
        .siteHeader__siteNav > li .siteHeader__siteNav__fakeLink {
          padding: 22px 1em; } }
  .siteHeader__siteNav a {
    color: #052850; }

.siteHeader__siteNav--left {
  width: calc(50% - 5em);
  text-align: right; }

.siteHeader__siteNav--right {
  margin-left: 150px; }

.siteHeader__siteNav__flyout {
  position: absolute;
  top: 100%;
  left: 1em;
  right: 1em;
  display: none;
  padding: 2em 20em 2em 2em;
  background: #FFF;
  text-align: left;
  font-family: "Brown-Regular", sans-serif;
  font-weight: 400; }
  .siteHeader__siteNav__flyout > ul {
    font-size: 1.2em; }
    .siteHeader__siteNav__flyout > ul > li {
      float: left;
      width: 33%;
      padding-bottom: 20px; }
      .siteHeader__siteNav__flyout > ul > li > ul {
        padding-left: 1em; }
  .siteHeader__siteNav__flyout a {
    padding: 3px 0; }
    .siteHeader__siteNav__flyout a:before {
      content: '» '; }
    .siteHeader__siteNav__flyout a:hover {
      text-decoration: none; }

.siteHeader__siteNav__flyout__fourCols {
  padding: 2em 2em 2em 2em; }
  .siteHeader__siteNav__flyout__fourCols > ul > li {
    width: 25%; }

.siteHeader__siteNav__flyout__keyVisual {
  position: absolute;
  top: 5em;
  right: 2em;
  width: 20%; }

.siteHeader__cookiePermission {
  position: relative;
  z-index: 1;
  display: none;
  padding: 1em 0 0.5em;
  font-size: 12px;
  color: #052850;
  background: #e8e8e8; }
  .siteHeader__cookiePermission .siteWrapper {
    max-width: 100em;
    padding-left: 2em;
    padding-right: 2em; }
    @media screen and (min-width: 980px), print {
      .siteHeader__cookiePermission .siteWrapper {
        padding-left: 0;
        padding-right: 0; } }

.siteHeader__metaNav {
  display: none;
  visibility: hidden;
  width: 100%;
  padding-left: 34px;
  background: #052850;
  text-align: center;
  text-transform: uppercase;
  font-size: 0.73333em;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }
  @media screen and (min-width: 980px), print {
    .siteHeader__metaNav {
      display: block;
      visibility: visible; } }

.siteHeader__metaNav__en {
  padding-left: 70px; }

.siteHeader__metNavItem {
  position: relative;
  vertical-align: top; }
  .siteHeader__metNavItem:nth-child(2) {
    margin-right: 160px; }
  .siteHeader__metNavItem > a {
    display: inline-block;
    padding: 7px 1.2em 5px;
    line-height: 1;
    color: #FFF; }

.siteHeader__metNavItem--hasDropDown:hover {
  background: #0060a9; }

.siteHeader__metaNavDropDown {
  position: absolute;
  top: 100%;
  left: 50%;
  z-index: 1;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  display: none;
  width: 320px;
  background: #0060a9;
  padding: 15px;
  font-size: 0.8em;
  text-align: left; }
  .siteHeader__metaNavDropDown,
  .siteHeader__metaNavDropDown h1, .siteHeader__metaNavDropDown h2, .siteHeader__metaNavDropDown h3,
  .siteHeader__metaNavDropDown h4, .siteHeader__metaNavDropDown h5, .siteHeader__metaNavDropDown h6 {
    color: #FFF; }
  li:hover > .siteHeader__metaNavDropDown {
    display: block; }

.siteHeader__metaNav__decal {
  background: #0060a9;
  border-radius: 100%;
  color: #fff;
  display: inline-block;
  font-size: 9px;
  height: 18px;
  line-height: 18px;
  margin-left: 0.5em;
  margin-top: -4px;
  text-align: center;
  vertical-align: top;
  width: 18px; }

.offCanvas {
  position: fixed;
  top: 0;
  z-index: 1003;
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
  width: 320px;
  background: #FFF;
  transition: all .5s ease; }
  @media screen and (max-width: 979px) {
    .body--offCanvasVisible .offCanvas {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none;
      box-shadow: 0 0 5px rgba(0, 0, 0, 0.3), 0 0 10px rgba(0, 0, 0, 0.1); } }

.offCanvas__toggle {
  position: absolute;
  right: 1.3em;
  top: 1.3em;
  z-index: 1;
  color: #052850; }

.offCanvas__contents {
  position: relative;
  height: 100vh;
  margin: 0 2em 0 0;
  overflow: hidden; }

.offCavnas__menu {
  position: relative;
  width: 106%;
  height: 80vh;
  height: calc(100vh - 125px);
  overflow: scroll;
  overflow-x: hidden; }

.offCavnas__menu__layer {
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 0 0 2em 0;
  background: #FFF;
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
  transition: all .5s ease; }

.offCavnas__menu__layer--depth-1 {
  width: 90%; }

.offCavnas__menu__layer--depth-2 {
  width: 80%; }

.offCavnas__menu__layer--depth-3 {
  width: 70%; }

.offCavnas__menu__layer--active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3), 0 0 10px rgba(0, 0, 0, 0.1); }

.offCavnas__menu__layer--below {
  opacity: .3; }
  .offCavnas__menu__layer--below:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%; }

.offCavnas__menu__layer__label {
  padding-top: 2em;
  padding-left: 40px; }
  .offCavnas__menu__layer__label[style] {
    position: relative;
    padding: 2em 1em 2em 40px;
    margin-bottom: 0;
    color: #FFF;
    background-size: cover; }

.offCavnas__menu__layer__prevAnchor {
  display: block;
  padding: 10px;
  margin-bottom: .5em;
  border-bottom: 1px solid #E8E8E8;
  font-size: 1.1em;
  text-align: right;
  line-height: 1;
  vertical-align: top;
  color: #052850;
  cursor: pointer;
  transition: all .3s ease;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }
  .offCavnas__menu__layer__prevAnchor:focus, .offCavnas__menu__layer__prevAnchor:hover {
    padding-right: 7px;
    text-decoration: none; }
  .offCavnas__menu__layer__prevAnchor > svg {
    width: 16px;
    height: 16px; }

.offCavnas__menu__layer__list {
  font-size: 1.2em;
  font-family: "Brown-Regular", sans-serif;
  font-weight: 400; }
  .offCavnas__menu__layer__list > li {
    position: relative;
    padding-left: 2em;
    padding-right: .5em; }
    .offCavnas__menu__layer__list > li > a {
      padding: 4px 6px;
      color: #052850; }

.offCavnas__menu__layer__list__toggle {
  position: absolute;
  top: 0;
  left: 6px;
  width: 31px;
  height: 100%;
  padding: 0 10px !important;
  cursor: pointer; }
  .offCavnas__menu__layer__list__toggle:hover {
    background: #F1F1F1; }
  .offCavnas__menu__layer__list__toggle > svg {
    width: 100%;
    height: 100%; }

.offCanvas__metaNav {
  position: absolute;
  bottom: 0;
  left: 0;
  margin: 0 2em 0 0;
  padding: 2em 0 2em 2em;
  border-top: 1px solid #ccc;
  font-size: 12px;
  text-align: center;
  height: 125px;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }

.offCanvas__metNavItem {
  padding: 5px 1em 5px 0; }
  .offCanvas__metNavItem > a {
    color: #052850; }

.siteKeyvisual {
  position: relative; }
  @media screen and (min-width: 980px), print {
    .siteKeyvisual {
      padding-top: 25px; } }
  @media print {
    .siteKeyvisual {
      display: none; } }
  .siteKeyvisual > .siteWrapper {
    padding-bottom: 2em;
    background: #FFF; }
  .siteKeyvisual .contentSlider {
    min-height: 45vw;
    max-height: 50vw;
    overflow: hidden; }
    @media screen and (min-width: 1200px), print {
      .siteKeyvisual .contentSlider {
        min-height: 550px; } }
  .siteKeyvisual .contentSlider__nav .contentSlider__nav__regularArrow {
    display: none; }
  @media screen and (max-width: 979px) {
    .siteKeyvisual .contentSlider__nav {
      font-size: 2em; }
      .siteKeyvisual .contentSlider__nav .contentSlider__nav__largeArrow {
        display: none; }
      .siteKeyvisual .contentSlider__nav .contentSlider__nav__regularArrow {
        display: block; } }
  @media screen and (max-width: 699px) {
    .siteKeyvisual .contentSlider__bullets {
      display: none; } }
  .siteKeyvisual .contentSlider__bullets > li {
    background: currentcolor;
    opacity: 1;
    border: 4px solid currentColor;
    color: currentcolor;
    transition: all .3s ease; }
    .siteKeyvisual .contentSlider__bullets > li.active {
      background: transparent; }
  @media screen and (max-width: 699px) {
    .siteKeyvisual .contentSlider__slidesWrapper__slide__textCaption {
      bottom: 1em; } }
  @media screen and (max-width: 979px) {
    .siteKeyvisual .contentSlider__slidesWrapper__slide__textCaption h2 {
      font-size: 4vw; }
    .siteKeyvisual .contentSlider__slidesWrapper__slide__textCaption h3 {
      font-size: 2.5vw; } }
  @media screen and (max-width: 699px) {
    .siteKeyvisual .contentSlider__slidesWrapper__slide__textCaption h3 {
      font-size: 3vw; } }

.siteContent {
  min-height: 10em;
  overflow: hidden; }
  .siteContent > .siteWrapper {
    padding: 1px 2em 10px;
    background: #FFF; }
    @media screen and (min-width: 980px), print {
      .siteContent > .siteWrapper {
        padding-left: 10px;
        padding-right: 10px; } }

.siteContent--transparent > .siteWrapper {
  background: 0;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0; }

/*
Site Footer
*/
.siteFooter {
  background: #052850;
  color: white; }
  @media print {
    .siteFooter {
      display: none; } }
  .siteFooter > .siteWrapper {
    padding: 40px 2em 0;
    overflow: hidden; }
    @media screen and (min-width: 1200px), print {
      .siteFooter > .siteWrapper {
        padding-right: 0;
        padding-left: 0; } }
  .siteFooter hr {
    border-color: white; }

/* =============================================================================
$ SiteFooter elements
================================================================================ */
.siteFooter__roundedBtn {
  width: 40px;
  height: 40px;
  padding: 9px 0 0;
  background: white;
  border: 2px solid white !important;
  color: #052850;
  text-align: center;
  border-radius: 100%; }

.siteFooter__heading {
  display: block;
  color: currentColor;
  font-size: 12px;
  margin-bottom: .5em;
  padding-bottom: .5em;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }

.siteFooter__Nav {
  position: relative;
  font-size: 12px;
  line-height: 1.2; }
  .siteFooter__Nav:before, .siteFooter__Nav:after {
    content: "";
    display: table; }
  .siteFooter__Nav:after {
    clear: both; }
  .siteFooter__Nav > li {
    width: 50%;
    margin-bottom: 2em;
    vertical-align: top; }
    @media screen and (min-width: 700px), print {
      .siteFooter__Nav > li {
        width: 25%; } }
    .siteFooter__Nav > li > a {
      color: currentColor;
      margin-bottom: .5em;
      padding-bottom: .5em;
      transition: color .3s ease;
      text-transform: uppercase;
      font-family: "Brown-Bold", sans-serif;
      font-weight: 400; }
      .siteFooter__Nav > li > a:hover {
        color: #ffff99; }
  @media screen and (min-width: 700px), print {
    .siteFooter__Nav > li:nth-child(5),
    .siteFooter__Nav > li:nth-child(6),
    .siteFooter__Nav > li:nth-child(7) {
      -webkit-transform: translate(0px, -80px);
          -ms-transform: translate(0px, -80px);
              transform: translate(0px, -80px); } }
  .siteFooter__Nav.lvl-1 {
    display: block; }
    .siteFooter__Nav.lvl-1 > li {
      top: 0 !important;
      display: block;
      width: 100%;
      float: none;
      margin-bottom: .5em;
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
      .siteFooter__Nav.lvl-1 > li.sub:last-child {
        position: static; }
      .siteFooter__Nav.lvl-1 > li > a {
        margin-bottom: 0;
        padding-bottom: 0;
        text-transform: none;
        font-weight: 400; }

.siteFooter__SocialHeadlineWrapper {
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
  line-height: 1.4;
  text-transform: uppercase;
  font-family: "Helvetica Neue",Arial,sans-serif;
  font-size: 12px;
  font-weight: 700; }

.siteFooter__awardLogoWrapper {
  padding-top: 1.2em;
  padding-bottom: 2em; }

.productFinderWidget {
  position: relative;
  z-index: 1;
  margin-bottom: 10px;
  padding: 2em 2em;
  background: #0060a9; }
  .productFinderWidget,
  .productFinderWidget h1, .productFinderWidget h2, .productFinderWidget h3,
  .productFinderWidget h4, .productFinderWidget h5, .productFinderWidget h6 {
    color: #FFF; }
  @media screen and (min-width: 700px), print {
    .productFinderWidget {
      padding-top: 3em;
      padding-bottom: 3em; } }
  .productFinderWidget h3 {
    margin-bottom: 0.75em;
    text-transform: uppercase; }

.productFinderWidget__submitWrapper {
  margin-bottom: 0; }
  @media screen and (min-width: 700px), print {
    .productFinderWidget__submitWrapper {
      padding-top: 1.65em; } }

.productsList {
  min-height: 100vh; }

.productsListLoader {
  width: 100%;
  min-height: 100vh;
  padding-top: 20%;
  background: #FFF; }
  .productsListLoader.deactivated {
    position: absolute;
    z-index: 10;
    pointer-events: none;
    opacity: 1;
    -webkit-animation: flyUpOut 0.2s both;
            animation: flyUpOut 0.2s both; }
    .no-cssanimations .productsListLoader.deactivated {
      opacity: 0; }
    .no-dataset .productsListLoader.deactivated,
    .no-cssanimations .productsListLoader.deactivated {
      display: none; }

.productsList__printButton {
  display: inline-block;
  float: right;
  margin-top: 2em; }

.productsList__printButton--top .productsList__printButton {
  margin-top: 0;
  margin-bottom: 1.5em; }

.productsList__filter {
  background: #FFF;
  padding: 1px 20px;
  overflow: hidden; }
  @media print {
    .productsList__filter {
      display: none; } }
  .productsList__filter .tabbedContent {
    margin-top: 0;
    margin-bottom: 0; }
  @media screen and (min-width: 700px), print {
    .productsList__filter .tabbedContent__tab {
      top: 70px; } }

.productsList__filterSelected {
  background: #F9F9F9;
  border-top: 1px solid #EAEAEA;
  padding: 10px 20px 0; }
  @media print {
    .productsList__filterSelected {
      display: none; } }

.productsList__filter__ships__ship {
  display: block;
  transition: opacity .3s ease;
  opacity: 1; }
  .productsList__filter__ships__ship.productsList__filter__ships__ship--enabled, .productsList__filter__ships__ship:hover {
    opacity: 1 !important; }
  .productsList__filter__ships:hover .productsList__filter__ships__ship {
    opacity: .5; }

@media screen and (max-width: 699px) {
  .productsList__filter__shipHeading {
    font-size: 1em; } }

@media screen and (max-width: 699px) {
  .productsList__filter__hiddenOnSmall {
    display: none; } }

.productsList__filter__holidays__item {
  position: relative; }

.productsList__filter__removeIcon {
  position: absolute;
  right: 1em;
  top: 1em;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 12px;
  height: 12px; }

.productsList__filter__holidays {
  min-height: 350px; }

.filtermap__item {
  position: absolute;
  min-width: 130px;
  text-align: center;
  margin-left: -65px;
  min-height: 20px;
  line-height: 20px;
  margin-top: -10px;
  font-size: .9em;
  box-sizing: content-box;
  padding: 3px;
  background: #FFF !important;
  color: #0060a9 !important;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.2), 0 0 1px rgba(0, 0, 0, 0.2);
  transition: all .3s ease; }
  .filtermap__item:hover, .filtermap__item.enabled {
    background: #0060a9 !important;
    color: #FFF !important;
    box-shadow: none; }

@media screen and (max-width: 1000px) {
  .filtermap__wrapper > img {
    display: none; }
  .filtermap__holder {
    position: static !important; }
  .filtermap__item {
    position: static !important;
    display: block;
    margin: 0 1% 1% 0 !important;
    width: 48% !important;
    padding: 10px !important;
    box-sizing: border-box;
    height: auto !important;
    float: left;
    box-shadow: none;
    background: rgba(0, 0, 0, 0.075) !important; } }

.productsList__listHeader {
  padding: 5px 10px;
  background: #052850;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }
  .productsList__listHeader,
  .productsList__listHeader h1, .productsList__listHeader h2, .productsList__listHeader h3,
  .productsList__listHeader h4, .productsList__listHeader h5, .productsList__listHeader h6 {
    color: #FFF; }
  @media print {
    .productsList__listHeader {
      display: none; } }
  .productsList__listHeader .chosen-container {
    margin-bottom: 0; }
  .productsList__listHeader .chosen-single {
    height: 28px !important;
    line-height: 28px !important; }

.productsList__listHeader__summary,
.productsList__listHeader__pagina,
.productsList__listHeader__currencySwitcher,
.productsList__listHeader__viewSwitcher,
.productsList__listHeader__sorter {
  margin-bottom: 0; }

.productsList__listHeader__summary {
  display: none;
  padding-top: 8px;
  line-height: 1; }
  @media screen and (min-width: 700px), print {
    .productsList__listHeader__summary {
      display: block;
      padding-bottom: 8px; } }

.productsList__listHeader__pagina {
  padding-top: 8px; }
  @media screen and (min-width: 700px), print {
    .productsList__listHeader__pagina {
      padding-top: 2px; } }

.productsList__listHeader__currencySwitcher {
  padding-top: 10px; }
  @media screen and (min-width: 700px), print {
    .productsList__listHeader__currencySwitcher {
      padding-top: 0; } }

.productsList__listHeader__viewSwitcher {
  display: none;
  padding-top: 5px;
  padding-bottom: 5px;
  text-align: center;
  font-size: 1.2em;
  line-height: 1.5; }
  @media screen and (min-width: 700px), print {
    .productsList__listHeader__viewSwitcher {
      display: block;
      padding-bottom: 0;
      clear: both; } }
  @media screen and (min-width: 980px), print {
    .productsList__listHeader__viewSwitcher {
      padding-top: 0;
      clear: none; } }
  .productsList__listHeader__viewSwitcher a {
    cursor: pointer;
    color: #FFF;
    opacity: .5;
    transition: opacity .3s ease; }
    .productsList__listHeader__viewSwitcher a:focus, .productsList__listHeader__viewSwitcher a:active, .productsList__listHeader__viewSwitcher a:hover {
      text-decoration: none; }
    .productsList__listHeader__viewSwitcher a.active {
      opacity: 1; }
    .productsList__listHeader__viewSwitcher a > svg {
      margin-top: 7px; }

.productsList__listHeader__sorter {
  padding-top: 5px; }
  @media screen and (min-width: 980px), print {
    .productsList__listHeader__sorter {
      padding-top: 0; } }
  .productsList__listHeader__sorter > div {
    display: block !important; }

.productsList__listHeader__resetCollection {
  padding-top: 0;
  margin-bottom: 0; }
  .productsList__listHeader__resetCollection a {
    display: block;
    text-align: center;
    color: #FFF;
    padding-top: 3px; }
    .productsList__listHeader__resetCollection a > i {
      margin-top: -2px;
      font-size: .8em;
      margin-right: .4em; }

.productsList__pagina {
  text-align: center;
  line-height: 1; }

.productsList__pagina--bottom {
  padding-bottom: 3px; }

.productsList__categoryHeader {
  background: #0060a9;
  text-align: center;
  padding: 13px;
  padding: 0.8125rem;
  margin-bottom: 0.43333em; }
  .productsList__categoryHeader,
  .productsList__categoryHeader h1, .productsList__categoryHeader h2, .productsList__categoryHeader h3,
  .productsList__categoryHeader h4, .productsList__categoryHeader h5, .productsList__categoryHeader h6 {
    color: #FFF; }

.productsList__categoryHeader__heading {
  margin-bottom: 0;
  line-height: 1; }

.productsList__categoryWrapper {
  margin-bottom: 3.46667rem; }

.productsList__list__categoryWrapper.teaser > .gi {
  width: 100% !important; }

@media screen and (min-width: 980px), print {
  .productsList__list__categoryWrapper.tile > .gi:nth-child(3n+1) {
    clear: left; } }

.productsList__categoryWrapper__item {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding: 10px 15px;
  border-bottom: 1px solid #D5D5D5;
  background: #FFF; }
  .productsList__list__categoryWrapper.tile .productsList__categoryWrapper__item {
    padding: 0;
    min-height: 500px; }
  .productsList__categoryWrapper__item .teaserImage {
    height: 179px; }

.productsList__categoryWrapper__item--highlight {
  background: #EFF5FF; }

.productsList__categoryWrapper__item__specialsBadge {
  position: absolute;
  right: -45px;
  top: 30px;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  width: 170px;
  height: 25px;
  line-height: 22px;
  background: #ed6d05;
  color: #FFF;
  text-align: center; }

.productsList__themesLabel {
  vertical-align: middle; }

.productsList__themeIconsWrapper svg,
.productDetail__themeIconsWrapper svg {
  width: 36px;
  height: 36px;
  border-color: transparent; }

.productsList__itemBtns > span,
.productsList__itemBtns > div {
  vertical-align: middle; }
  .productsList__itemBtns > span > .btn,
  .productsList__itemBtns > div > .btn {
    margin-bottom: 0; }

.productsList__itemBtns__fav {
  display: inline-block;
  padding: .2em 1em;
  vertical-align: top;
  text-transform: uppercase;
  line-height: 1;
  font-size: 14px;
  color: #052850; }
  .productsList__itemBtns__fav .i--rounded {
    width: 33px;
    height: 33px;
    padding: 8px 5px;
    text-align: center;
    margin-right: .3em;
    border-color: #052850; }

.productsList__itemBtns__fav--active {
  color: #eb4b19; }
  .productsList__itemBtns__fav--active .i--rounded {
    background: 0;
    color: #eb4b19;
    border-color: #eb4b19; }

.productsList__itemBtns__fav__label {
  position: relative;
  top: .6em;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }

/*
 * General
 */
/*
 * Cruise Navigation
 */
.productDetail__CruiseNavigation {
  display: none;
  text-align: center; }
  @media screen and (min-width: 980px), print {
    .productDetail__CruiseNavigation {
      display: block; } }
  .productDetail__CruiseNavigation .gi {
    line-height: 40px;
    margin-bottom: 0;
    font-family: "Brown-Bold", sans-serif;
    font-weight: 400; }
    @media screen and (min-width: 980px), print {
      .productDetail__CruiseNavigation .gi {
        line-height: 60px; } }
    .productDetail__CruiseNavigation .gi > a {
      display: block;
      transition: all .3s ease;
      color: #052850; }
      .productDetail__CruiseNavigation .gi > a > svg {
        margin-top: 19px; }
        .productDetail__CruiseNavigation .gi > a > svg.i--tiny {
          margin-top: 23px; }
    .productDetail__CruiseNavigation .gi:first-child > a:hover {
      -webkit-transform: translateX(-5px);
          -ms-transform: translateX(-5px);
              transform: translateX(-5px); }
    .productDetail__CruiseNavigation .gi:last-child > a:hover {
      -webkit-transform: translateX(5px);
          -ms-transform: translateX(5px);
              transform: translateX(5px); }
  .productDetail__CruiseNavigation .i--arrowRoundLeft,
  .productDetail__CruiseNavigation .i--arrowRoundRight {
    font-size: 20px; }

.productDetail__routeImage {
  outline: 2px solid #EAEAEA; }

/*
 * Price Calculator
 */
.productDetail__numberInput {
  display: inline-block;
  min-width: 50%;
  margin-left: .5em;
  margin-bottom: 1em;
  vertical-align: top;
  line-height: 1; }
  @media screen and (max-width: 699px) {
    .productDetail__numberInput {
      width: 100%; } }
  @media screen and (min-width: 700px), print {
    .productDetail__numberInput {
      margin-bottom: 0; } }

.productDetail__numberInput__label {
  display: inline-block;
  min-width: 40%;
  vertical-align: top;
  line-height: 1.3; }

.productDetail__numberInput__control {
  display: inline-block;
  width: 20px;
  height: 20px;
  padding-top: 2px;
  border-radius: 100%;
  background: #eb4b19;
  font-family: 'Arial', sans-serif;
  color: #FFF;
  text-align: center;
  vertical-align: top;
  transition: all .2s ease; }
  .productDetail__numberInput__control:hover {
    opacity: .5; }
  .productDetail__numberInput__control.deactivated {
    background: #e8e8e8;
    pointer-events: none; }

.productDetail__numberInput__sum {
  display: inline-block;
  line-height: 1;
  vertical-align: middle;
  margin: 0 .25em;
  pointer-events: none; }

.productDetail__numberInput__age {
  margin-top: .5em; }

/*
 * Overview of all cabins
 */
.productDetail__cabins {
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

.productDetail__cabins__head {
  display: none;
  background: #e8e8e8;
  font-size: 0.93333em;
  line-height: 1.3; }
  .productDetail__cabins__head:before, .productDetail__cabins__head:after {
    content: "";
    display: table; }
  .productDetail__cabins__head:after {
    clear: both; }
  @media screen and (min-width: 700px), print {
    .productDetail__cabins__head {
      display: block; } }
  .productDetail__cabins__head > div {
    float: left;
    padding: 5px 3px; }

.productDetail__cabins__head__category, .productDetail__cabins__summary__category {
  width: 11%;
  text-align: center; }

.productDetail__cabins__head__type, .productDetail__cabins__summary__title {
  width: 32%; }

.productDetail__cabins__head__price, .productDetail__cabins__summary__price {
  width: 17%; }

.productDetail__cabins__head__inclusivePrice, .productDetail__cabins__summary__inclusivePrice {
  width: 17%; }

.productDetail__cabins__head__availability, .productDetail__cabins__summary__availability {
  display: none;
  width: 13%;
  text-align: center; }
  @media screen and (min-width: 700px), print {
    .productDetail__cabins__head__availability, .productDetail__cabins__summary__availability {
      display: block; } }

.productDetail__cabins__head__special, .productDetail__cabins__summary__special {
  width: 10%;
  text-align: center; }

.productDetail__cabins__emptyInfo {
  display: none;
  margin-left: 2em;
  margin-right: 2em; }
  .productDetail__cabins__emptyInfo.active {
    display: block; }

.productDetail__cabin--hidden {
  display: none; }

.productDetail__cabins__summary {
  font-size: 0.93333em;
  cursor: pointer; }
  .productDetail__cabins__summary:before, .productDetail__cabins__summary:after {
    content: "";
    display: table; }
  .productDetail__cabins__summary:after {
    clear: both; }
  @media screen and (min-width: 700px), print {
    .productDetail__cabins__summary {
      border-bottom: 1px solid #e8e8e8; }
      .productDetail__cabins__summary:hover {
        color: #eb4b19; }
      .productDetail__cabins__summary.active {
        color: #eb4b19;
        border-bottom-color: #FFF; } }
  @media screen and (max-width: 699px) {
    .productDetail__cabins__summary.isNotAvailable {
      display: none; } }
  @media screen and (min-width: 700px), print {
    .productDetail__cabins__summary.isNotAvailable {
      color: #ABABAB; } }
  .productDetail__cabins__summary > div {
    padding: 5px 0; }
    @media screen and (max-width: 699px) {
      .productDetail__cabins__summary > div {
        width: 100%;
        padding: 0 0 3px;
        text-align: left; } }
    @media screen and (min-width: 700px), print {
      .productDetail__cabins__summary > div {
        float: left; } }
    .productDetail__cabins__summary > div:before {
      content: attr(data-label);
      display: inline-block;
      width: 40%;
      font-family: "Brown-Bold", sans-serif;
      font-weight: 400; }
      @media screen and (min-width: 700px), print {
        .productDetail__cabins__summary > div:before {
          display: none; } }
    .productDetail__cabins__summary > div > label {
      display: inline-block;
      cursor: pointer; }

.productDetail__cabins__summary__special {
  color: #eb4b19; }
  .productDetail__cabins__summary__special > .i {
    margin-top: 4px; }

.productDetail__cabins__details {
  padding: 0 0 1em;
  border-bottom: 1px solid #ccc;
  margin-bottom: 2em; }
  @media screen and (min-width: 700px), print {
    .productDetail__cabins__details {
      display: none;
      margin-bottom: 0;
      border-bottom: 0; } }
  .productDetail__cabins__details.active {
    display: block; }
  @media screen and (max-width: 699px) {
    .productDetail__cabins__details.isNotAvailable {
      display: none; } }
  .productDetail__cabins__details .i--panorama {
    font-size: 6em; }

.dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  background: lightgray;
  border-radius: 100%; }
  p .dot {
    margin-right: .5em; }

.dot--red,
.dot--bad {
  background: red; }

.dot--yellow,
.dot--medium {
  background: #ffd800; }

.dot--green,
.dot--good {
  background: green; }

.productDetail__priceSummary__heading {
  padding: 8px 1em;
  margin-bottom: 0;
  background: #0060a9;
  color: #FFF; }

.productDetail__priceSummary__priceTable {
  margin-bottom: 10px; }
  .productDetail__priceSummary__priceTable td {
    padding: 0;
    line-height: 1.5; }
    .productDetail__priceSummary__priceTable td:last-child {
      width: 35%; }

.productDetail__priceSummary__priceTable__summary {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding-top: .75em;
  padding-bottom: .75em;
  text-transform: uppercase;
  font-size: 1.2em;
  color: #0060a9;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }

/*
 * Table which displays the itinerary of the cruise.
 */
@media screen and (min-width: 700px), print {
  .productDetail__itineraryTable {
    margin-bottom: 2rem; } }

.productDetail__itineraryTable > tr > td {
  border-bottom-color: #e8e8e8; }

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

@media screen and (max-width: 699px) {
  .productDetail__itineraryTable > tbody {
    display: block; } }

.productDetail__itineraryTable__tableHeader > td {
  text-align: right;
  padding-bottom: 0; }

.productDetail__itineraryTable__itemHeader--hasSubContents > td {
  border-bottom: 0;
  padding-bottom: 0; }

.productDetail__itineraryTable__itemHeader__date {
  text-align: right;
  width: 30%; }

.productDetail__itineraryTable__itemHeader__heading {
  position: relative;
  width: 70%;
  font-family: "Brown-Bold", sans-serif;
  font-weight: 400; }
  .productDetail__itineraryTable__itemHeader__heading :last-child {
    margin-bottom: 0; }

.productDetail__itineraryTable__itemContent > td {
  padding-top: 0; }

.productDetail__itineraryTable__itemContent__teaser {
  width: 30%; }
  .productDetail__itineraryTable__itemContent__teaser > img {
    display: block;
    width: 100%;
    margin: .5em 0; }

.productDetail__itineraryTable__itemContent__description {
  width: 70%; }
  .productDetail__itineraryTable__itemContent__description :last-child {
    margin-bottom: 0; }

.productDetail__programmes__header {
  border-bottom: 1px solid #ccc;
  margin-bottom: .5em;
  padding-bottom: .3em; }

@media screen and (max-width: 699px) {
  .productDetail__itineraryTable__itemHeader {
    margin-bottom: 1em;
    padding-bottom: 1em;
    border-bottom: 1px solid #ccc; }
    .productDetail__itineraryTable__itemHeader.productDetail__itineraryTable__itemHeader--hasSubContents {
      margin-bottom: 0;
      padding-bottom: 0;
      border-bottom: 0; } }

@media screen and (max-width: 699px) {
  .productDetail__itineraryTable__itemContent {
    margin-bottom: 1em;
    padding-bottom: 1em;
    border-bottom: 1px solid #ccc; } }

@media screen and (max-width: 699px) {
  .productDetail__itineraryTable__itemHeader,
  .productDetail__itineraryTable__itemContent {
    display: block; }
    .productDetail__itineraryTable__itemHeader > td,
    .productDetail__itineraryTable__itemContent > td {
      display: block;
      width: 100%;
      border-bottom: 0;
      padding: 0;
      text-align: left; } }

.rememberedProductsWidget__product {
  padding: 0 0 .75em;
  margin-top: .75em;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5); }
  .rememberedProductsWidget__product .media__img {
    margin-right: 1em; }

#formhandler_form .fileList {
  max-width: 430px; }

#formhandler_form .fileList__item {
  position: relative;
  border-bottom: 1px solid #ccc;
  padding: 4px 0; }
  #formhandler_form .fileList__item > a {
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    background: #052850;
    color: #FFF;
    width: 20px;
    height: 20px;
    border-radius: 100%;
    font-size: 8px;
    text-align: center;
    line-height: 20px; }

.solrSearchForm__results {
  position: relative;
  top: -10px;
  margin-bottom: 1em;
  clear: both; }
  .solrSearchForm__results > a {
    display: block; }

/*
Templates
*/
/*
Print

Print styles - Inlined to avoid another HTTP connection.
*/
@media print {
  * {
    /**
     * Black prints faster: h5bp.com/s
     */
    box-shadow: none !important;
    text-shadow: none !important; }
  @page {
    margin: 0.5cm; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    /**
     * h5bp.com/t
     */
    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) ")"; } }


