@charset "UTF-8";
/*!
 * by Archive Studio
 * http://archivestudio.co.uk
 */
/**
 * Config
 */
/**
 * Settings
 *
 * Core defaults
 */
/**
 * Breakpoints
 *
 * Hold our breakpoint aliases and conditions in a list. These can be invoked
 * later on via the `respond-to()` mixin found in _mixins.scss.
 */
/**
 * Base Grid & Spacing values
 */
/**
 * Base Type Settings
 */
/**
 * Base Colours
 */
/**
 * Base Icons
 */
/**
 * Base Cursors
 */
/**
 * Base Sections (Sections being regions that allow you to control core styling)
 * The keys in this array will be used as modifiers (.Section--{key}) with the config settings provided
 * At a config level Sections can define:
 	- background color
 	- foreground color, 
 	- heading typeface, 
 	- body typeface
 	- padding for the .Section-body
 	- max width for the .Section-body
 	- colour for images
 	- colour links
 	- colour for active items
 */
/**
 * Top level hooks
 */
/**
 * Fonts
 */
/* No files to import found in ../fonts/**\/* */
/**
* Import the core
*/
/**
 * Settings - will only sett settings if we  settings have not yet been defined
 */
/**
 * Settings
 *
 * Core defaults
 */
/**
 * Breakpoints
 *
 * Hold our breakpoint aliases and conditions in a list. These can be invoked
 * later on via the `respond-to()` mixin found in _mixins.scss.
 */
/**
 * Base Grid & Spacing values
 */
/**
 * Base Type Settings
 */
/**
 * Base Colours
 */
/**
 * Base Icons
 */
/**
 * Base Cursors
 */
/**
 * Base Sections (Sections being regions that allow you to control core styling)
 * The keys in this array will be used as modifiers (.Section--{key}) with the config settings provided
 * At a config level Sections can define:
 	- background color
 	- foreground color, 
 	- heading typeface, 
 	- body typeface
 	- padding for the .Section-body
 	- max width for the .Section-body
 	- colour for images
 	- colour links
 	- colour for active items
 */
/**
 * Top level hooks
 */
/**
 * Tools
 */
/* Strip unit */
/* Express pixel size as viewport width */
/* Express pixel size as viewport width */
/* Col and Row functions */
/**
 * Font size mixin
 *
 * This will generate a rem-based font-size with its pixel fallback.
 *
 * @include font-size(12px);
 */
/**
 * Media query mixin
 *
 * A simple mixin to quickly generate whole media queries from the aliases and
 * conditions defined in `_settings.scss`.
 *
 * @include respond-to(mobile) { ... }
 */
/**
* Get Unit function
*
* Return a value from a variable based on a responsive breakpoint vlabel. If the variable passed in is not multidimensional, then the value is simply returned
*
* get-unit('mobile',$base-padding);
*/
/**
 * Responsive property
 *
 * Works with the respond-to mixin to output a property with a range of settings based on breakpoint labels supplied
 *
 * @include font-size(12px);
 */
/**
 * Responsive X property
 *
 * Multiple a multi-dimensional value by a supplied factor
 */
/**
 * Margin-top
 *
 * Apply the base padding as a top margin
 */
/**
 * Margin-bottom
 *
 * Apply the base padding as a botto margin
 */
/*

	'background' : $base-background,
	'color' : $base-color,
	'heading-font-family' : $base-font-family-alt,	
	'text-font-family' : $base-font-family,
	'container-padding' : $base-padding,
	'container-max-width' : $base-max-width,
	'image-color' : $base-image-color,
	'link-color' : $base-link-color,
	'active-color' : $base-active-color
	
*/
/*

Spritesheet mixin

*/
/**
 * Ceaser cubic bezier’s easing animations
 *
 * Based on: http://matthewlein.com/ceaser
 */
/**
 * EaseOut
*/
/**
 * Cubic
 */
/**
 * Circ
 */
/**
 * Expo
 */
/**
 * Quad
 */
/**
 * Quart
 */
/**
 * Quint
 */
/**
 * Sine
 */
/**
 * Back
 */
@keyframes spin {
  from {
    transform: rotate(0deg); }
  to {
    transform: rotate(360deg); } }
@keyframes pulse {
  0% {
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    opacity: 0; } }
/**
 * Base
 */
/*! normalize.css v3.0.1 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background: transparent; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * 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 Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
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; }

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

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal; }

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

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

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/**
 * Set the global `box-sizing` state to `border-box`.
 *
 * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice
 * paulirish.com/2012/box-sizing-border-box-ftw
 */
html {
  box-sizing: border-box; }

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

/**
 * A thin layer on top of normalize.css that provides a starting point more
 * suitable for web applications. Removes the default spacing and border for
 * appropriate elements.
 */
/**
 * High, page-level styling.
 *
 * 1. Set the default font-family, `font-size` and `line-height` for the entire project,
 *    sourced from our default variables. The `font-size` is calculated to exist
 *    in ems, the `line-height` is calculated to exist unitlessly.
 * 2. Force scrollbars to always be visible to prevent awkward ‘jumps’ when
 *    navigating between pages that do/do not have enough content to produce
 *    scrollbars naturally.
 * 3. Ensure the page always fills at least the entire height of the viewport.
 * 4. Fonts on OSX will look more consistent with other systems that do not
 *    render text using sub-pixel anti-aliasing.
 */
html {
  font-family: "futura-pt", sans-serif;
  /* 1 */
  font-size: 1.125em;
  /* 1 */
  line-height: 1.3333333333;
  /* 1 */
  background: #FFF;
  color: #2e2d2c;
  overflow-y: scroll;
  /* 2 */
  min-height: 100%;
  /* 3 */
  -moz-osx-font-smoothing: grayscale;
  /* 4 */
  -webkit-font-smoothing: antialiased;
  /* 4 */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

a {
  color: #999;
  text-decoration: none;
  transition: all 0.4s ease; }

.Site--no-touch a:hover {
  opacity: 0.5; }

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
figure,
p,
pre {
  margin: 0; }

button {
  background: transparent;
  border: 0;
  padding: 0; }

/**
 * Work around a Firefox/IE bug where the transparent `button` background
 * results in a loss of the default `button` focus styles.
 */
button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color; }

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

iframe {
  border: 0; }

ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0; }

/**
 * Suppress the focus outline on links that cannot be accessed via keyboard.
 * This prevents an unwanted focus outline from appearing around elements that
 * might still respond to pointer events.
 */
[tabindex="-1"]:focus {
  outline: none !important; }

/**
 * Emboldened elements
 */
b,
strong {
  font-weight: normal;
  font-family: "futura-pt", sans-serif; }

/**
 * Address
 */
address {
  font-style: normal; }

/**
 * Selection
 */
::selection {
  background-color: rgba(0, 0, 0, 0.75);
  color: #FFF;
  text-shadow: none; }

/**
 * 1. Fluid images for responsive purposes.
 * 2. Offset `alt` text from surrounding copy.
 * 3. Setting `vertical-align` removes the whitespace that appears under `img`
 *    elements when they are dropped into a page as-is. Safer alternative to
 *    using `display: block;`.
 */
img {
  max-width: 100%;
  /* 1 */
  font-style: italic;
  /* 2 */
  vertical-align: middle;
  /* 3 */ }

/**
 * If a `width` and/or `height` attribute have been explicitly defined, let’s
 * not make the image fluid.
 */
img[width],
img[height] {
  max-width: none; }

/**
 * Text inputs
 */
input,
textarea {
  outline: none;
  border: 0;
  -webkit-appearance: none;
  border-radius: 0;
  padding: 0; }

input[type="search"] {
  box-sizing: inherit; }

::-webkit-input-placeholder {
  color: #787878; }

/**
 * Text tags all set to base font size
 */
h1,
h2,
h3,
h4,
h5,
h6,
p, ul, input {
  font-size: 18px;
  font-size: 1rem;
  font-weight: normal; }

/**
 * Utils
 */
.Image--portrait, .Image--landscape, .Image--square, .Icon.Icon--ratio, .Logo, .Site [data-box-mode="ratio"], .Slider, .Video, .Image {
  position: relative; }

.Image--portrait > *, .Image--landscape > *, .Image--square > *, .Icon.Icon--ratio > *, .Logo > *, .Site [data-box-mode="ratio"] > *, .Slider > *, .Video > *, .Image > *, .Image--fluid, .Image--fluid > *, .Icon.Icon--fluid, .Scroller, .Scroller .Scroller-body, .Site [data-box-mode="fluid"], .Slider.Slider--fluid, .Slider-body, .Video.Video--fluid {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: block; }

.Image--portrait, .Image--landscape, .Image--square, .Icon.Icon--ratio, .Logo, .Site [data-box-mode="ratio"], .Slider, .Video {
  height: 0;
  overflow: hidden;
  width: auto; }

.Image--portrait {
  padding-top: 133.3333333333%;
  height: 20px;
  box-sizing: content-box; }
  @media (max-width: 745px) {
    .Image--portrait {
      height: 10px; } }

.Image--landscape {
  padding-top: 66.6666666667%; }

.Image--square {
  padding-top: 100%; }

/**
 * Contain floats
 *
 * Make an element expand to contain floated children.
 * Uses pseudo-elements (micro clearfix).
 *
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of the
 *    element.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.Section-container:before,
.Section-container:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.Section-container:after {
  clear: both; }

/** @define Container */
/**
 * Container has auto side margins and max width in line with the base settings
 */
.Container, .Overlay-content {
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
  padding-left: 20px;
  padding-right: 20px; }
  @media (max-width: 745px) {
    .Container, .Overlay-content {
      padding-left: 10px; } }
  @media (max-width: 745px) {
    .Container, .Overlay-content {
      padding-right: 10px; } }

/**
 * Core grid system
 */
/**
 * Grid container
 *
 * 1. Account for browser defaults of elements that might be the root node of
 *    the component.
 * 2. Ensure consistent default alignment.
 * 3. Apply a negative `margin-left` to negate the columns’ gutters.
 */
.Grid--spec, .Grid--2, .Grid--3, .Grid--4, .Component, .Grid, [data-grid-of] {
  display: block;
  /* 1 */
  margin: 0;
  /* 1 */
  padding: 0;
  /* 1 */
  text-align: left;
  /* 2 */
  margin-left: -20px; }
  @media (max-width: 745px) {
    .Grid--spec, .Grid--2, .Grid--3, .Grid--4, .Component, .Grid, [data-grid-of] {
      margin-left: -10px; } }

/**
 * Grid item
 *
 * 1. Fundamentals of the non-float grid layout.
 * 2. Space columns apart.
 * 3. Keeps content correctly aligned with the grid direction.
 * 4. Controls vertical positioning of units.
 * 5. Make cells full-width by default.
 */
.Grid--2 > *, .Grid--3 > *, .Grid--4 > *, .Component .Component-head, .Component .Component-body, .Grid--spec > *, .Component.Component--fullWidth .Component-head, .Component.Component--fullWidth .Component-body, .Grid > *,
.Grid .Grid-item, [data-grid-of] > * {
  display: inline-block;
  /* 1 */
  margin: 0;
  padding-left: 20px;
  /* 2 */
  text-align: left;
  /* 3 */
  vertical-align: top;
  /* 4 */
  width: 100%;
  /* 5 */ }
  @media (max-width: 745px) {
    .Grid--2 > *, .Grid--3 > *, .Grid--4 > *, .Component .Component-head, .Component .Component-body, .Grid--spec > *, .Component.Component--fullWidth .Component-head, .Component.Component--fullWidth .Component-body, .Grid > *,
    .Grid .Grid-item, [data-grid-of] > * {
      padding-left: 10px; } }

.Grid--2 > * {
  vertical-align: top;
  width: 50%; }
  @media (max-width: 745px) {
    .Grid--2 > * {
      width: 100%; } }

.Grid--3 > * {
  vertical-align: top;
  width: 33.3333333333%; }
  @media (max-width: 745px) {
    .Grid--3 > * {
      width: 100%; } }

.Grid--4 > * {
  vertical-align: top;
  width: 25%; }
  @media (max-width: 745px) {
    .Grid--4 > * {
      width: 50%; } }

.Component .Component-head {
  vertical-align: top;
  width: 40%; }
  @media (max-width: 745px) {
    .Component .Component-head {
      width: 100%; } }

.Component .Component-body {
  vertical-align: top;
  width: 60%; }
  @media (max-width: 745px) {
    .Component .Component-body {
      width: 100%; } }

.Grid--spec > * {
  vertical-align: top; }
  .Grid--spec > *:before {
    content: '';
    display: block;
    padding-top: 66%;
    height: 0;
    background: #DDD; }

/*

Can be extended on a component or pseudo element, add icon types and just send in an icon file:

	%u-icon--close{
	
		background-image:url('/ui/img/icons/close.svg');
	
	}
	
	Examples for making a component or pseudo element display like an icon...

	.Icon{
		
		@extend %u-icon;
		@extend %u-box--ratio;
		width:100%;
		padding-top:100%;
		
		
		
	}
	
	.Icon--closeBlack{
	
		@extend %u-icon--close;
		
		
	}
	
	.Link--icon{
		
		&:before{
			
			@extend %u-icon;
			@extend %u-icon--close;
			width:20px;
			height:20px;
		}
		
	}

	
	
*/
.Icon, .Link--plus:before, .Link--minus:before, .Link--info:before, .Link--cross:before, .Link--down:before, .Link--arrow-right:before, .Link--arrow-left:before, .Link--arrow-up:before, .Link--arrow-down:before, .Link--play:before, .Link--search:before, .Slider-arrow:after, .Video-poster:after, .Video .mejs-overlay-play .mejs-overlay-button:after, .Navigation--categories li.is-active a:before {
  background: transparent center no-repeat;
  background-size: 100% auto;
  content: '';
  display: inline-block;
  transition: all 0.4s ease;
  transform-origin: 50% 50%;
  /*@include when-inside(':hover >'){
  	
  	opacity:0.5;
  	
  }*/ }

.Icon--plus, .Link--plus:before {
  background-image: url("/ui/img/icons/plus.svg"); }

.Icon--minus, .Link--minus:before {
  background-image: url("/ui/img/icons/minus.svg"); }

.Icon--info, .Link--info:before {
  background-image: url("/ui/img/icons/info.svg"); }

.Icon--cross, .Link--cross:before, .Navigation--categories li.is-active a:before {
  background-image: url("/ui/img/icons/cross.svg"); }

.Icon--down, .Link--down:before {
  background-image: url("/ui/img/icons/down.svg"); }

.Icon--arrow-right, .Link--arrow-right:before, .Slider-arrow--right:after {
  background-image: url("/ui/img/icons/arrow-right.svg"); }

.Icon--arrow-left, .Link--arrow-left:before, .Slider-arrow--left:after {
  background-image: url("/ui/img/icons/arrow-left.svg"); }

.Icon--arrow-up, .Link--arrow-up:before {
  background-image: url("/ui/img/icons/arrow-up.svg"); }

.Icon--arrow-down, .Link--arrow-down:before {
  background-image: url("/ui/img/icons/arrow-down.svg"); }

.Icon--play, .Link--play:before, .Video-poster:after, .Video .mejs-overlay-play .mejs-overlay-button:after {
  background-image: url("/ui/img/icons/play.svg"); }

.Icon--search, .Link--search:before {
  background-image: url("/ui/img/icons/search.svg"); }

.Icon--glyph-mail, .Icon--glyph-search, .Icon--glyph-zoom-in, .Icon--glyph-zoom-out, .Icon--glyph-location, .Icon--glyph-arrow-left, .Icon--glyph-arrow-right, .Icon--glyph-arrow-up, .Icon--glyph-arrow-down, .Icon--glyph-plus, .Icon--glyph-minus, .Icon--glyph-check, .Icon--glyph-cross, .Icon--glyph-inbox, .Icon--glyph-open, .Icon--glyph-ellipsis, .Icon--glyph-location2, .Icon--glyph-play, .Icon--glyph-pause, .Link--glyph-mail:before, .Link--glyph-search:before, .Link--glyph-zoom-in:before, .Link--glyph-zoom-out:before, .Link--glyph-location:before, .Link--glyph-arrow-left:before, .Link--glyph-arrow-right:before, .Link--glyph-arrow-up:before, .Link--glyph-arrow-down:before, .Link--glyph-plus:before, .Link--glyph-minus:before, .Link--glyph-check:before, .Link--glyph-cross:before, .Link--glyph-inbox:before, .Link--glyph-open:before, .Link--glyph-ellipsis:before, .Link--glyph-location2:before, .Link--glyph-play:before, .Link--glyph-pause:before {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.Icon--glyph-mail:before, .Link--glyph-mail:before {
  content: ""; }

.Icon--glyph-search:before, .Link--glyph-search:before {
  content: ""; }

.Icon--glyph-zoom-in:before, .Link--glyph-zoom-in:before {
  content: ""; }

.Icon--glyph-zoom-out:before, .Link--glyph-zoom-out:before {
  content: ""; }

.Icon--glyph-location:before, .Link--glyph-location:before {
  content: ""; }

.Icon--glyph-arrow-left:before, .Link--glyph-arrow-left:before {
  content: ""; }

.Icon--glyph-arrow-right:before, .Link--glyph-arrow-right:before {
  content: ""; }

.Icon--glyph-arrow-up:before, .Link--glyph-arrow-up:before {
  content: ""; }

.Icon--glyph-arrow-down:before, .Link--glyph-arrow-down:before {
  content: ""; }

.Icon--glyph-plus:before, .Link--glyph-plus:before {
  content: ""; }

.Icon--glyph-minus:before, .Link--glyph-minus:before {
  content: ""; }

.Icon--glyph-check:before, .Link--glyph-check:before {
  content: ""; }

.Icon--glyph-cross:before, .Link--glyph-cross:before {
  content: ""; }

.Icon--glyph-inbox:before, .Link--glyph-inbox:before {
  content: ""; }

.Icon--glyph-open:before, .Link--glyph-open:before {
  content: ""; }

.Icon--glyph-ellipsis:before, .Link--glyph-ellipsis:before {
  content: ""; }

.Icon--glyph-location2:before, .Link--glyph-location2:before {
  content: ""; }

.Icon--glyph-play:before, .Link--glyph-play:before {
  content: ""; }

.Icon--glyph-pause:before, .Link--glyph-pause:before {
  content: ""; }

/* Ratio box - needs a top padding to give it proportion */
/* Relative box - must be sized specifically, e.g. keepRatio */
.Image > * {
  background-size: cover;
  background-position: center center;
  display: block; }

/* Fluid box - will fill its parent */
/* Ratio cover -  needs a top padding. Images will cover regardless of source size */
.Image--portrait > *, .Image--landscape > *, .Image--square > * {
  background-size: cover;
  background-position: center center;
  display: block; }

/* Fluid cover - will fill its parent and scale background image regardless of source size */
.Image--fluid {
  height: 100%;
  width: 100%; }
  .Image--fluid > * {
    background-size: cover;
    background-position: center center;
    display: block; }

/**
 * Core list system
 */
/**
 * List
 *
 */
.List--items > * {
  padding-bottom: 20px; }
  @media (max-width: 745px) {
    .List--items > * {
      padding-bottom: 10px; } }
  .List--items > *:last-child {
    padding-bottom: 0; }

.List--spec > li {
  padding-bottom: 20px; }
  @media (max-width: 745px) {
    .List--spec > li {
      padding-bottom: 10px; } }

.Overlay-body, .Scroller .Scroller-body, .Site-scroll, .Site-body, .Template--project .Template-bg, .Template--about {
  overflow: hidden;
  overflow-y: auto; }
  .Site--touch .Overlay-body, .Site--touch .Scroller .Scroller-body, .Scroller .Site--touch .Scroller-body, .Site--touch .Site-scroll, .Site--touch .Site-body, .Site--touch .Template--project .Template-bg, .Template--project .Site--touch .Template-bg, .Site--touch .Template--about {
    overflow-y: scroll;
    /* has to be scroll, not auto */
    -webkit-overflow-scrolling: touch; }

.Content--body, .Layout-item--text.Layout-item--small p, .Content--sans--regular--body, .Content--medium, .Layout-item--text p, .Content--sans--regular--medium, .Content--large, .Layout-item--text.Layout-item--large p, .Content--sans--regular--large, .Content--sans--regular {
  font-family: "futura-pt",sans-serif; }

.Content--body, .Layout-item--text.Layout-item--small p, .Content--sans--regular--body {
  font-size: 18px;
  font-size: 1rem; }

.Content--medium, .Layout-item--text p, .Content--sans--regular--medium {
  font-size: 28px;
  font-size: 1.5555555556rem; }
  @media (max-width: 745px) {
    .Content--medium, .Layout-item--text p, .Content--sans--regular--medium {
      font-size: 18px;
      font-size: 1rem; } }

.Content--large, .Layout-item--text.Layout-item--large p, .Content--sans--regular--large {
  font-size: 48px;
  font-size: 2.6666666667rem; }
  @media (max-width: 745px) {
    .Content--large, .Layout-item--text.Layout-item--large p, .Content--sans--regular--large {
      font-size: 18px;
      font-size: 1rem; } }

.Content--sans--bold--body, .Content--sans--bold--medium, .Content--sans--bold--large, .Content--sans--bold {
  font-family: "futura-pt",sans-serif; }

.Content--sans--bold--body {
  font-size: 18px;
  font-size: 1rem; }

.Content--sans--bold--medium {
  font-size: 28px;
  font-size: 1.5555555556rem; }
  @media (max-width: 745px) {
    .Content--sans--bold--medium {
      font-size: 18px;
      font-size: 1rem; } }

.Content--sans--bold--large {
  font-size: 48px;
  font-size: 2.6666666667rem; }
  @media (max-width: 745px) {
    .Content--sans--bold--large {
      font-size: 18px;
      font-size: 1rem; } }

.Content--body, .Layout-item--text.Layout-item--small p {
  font-weight: 500; }

.Content--medium, .Layout-item--text p {
  font-weight: 500; }

.Content--large, .Layout-item--text.Layout-item--large p {
  font-weight: 500; }

/**
 * Align children of this element vertically in the middle
 */
/**
 * Cell
 *
 * 1. Make it relative so children can borrow its height
 * 2. Add pseudo element so that theblcok content can sit in the vertical middle (hack to give height to an unknown area)
 * 3. Immediate children set to inline block
 * 4. Immeditate children set to vertical align middle
 */
.Centered, .Overlay-body, .Template--about {
  display: block;
  position: relative;
  /* 1 */
  white-space: nowrap; }
  .Centered:before, .Overlay-body:before, .Template--about:before {
    /* 2 */
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    /* Old way */
    margin-right: -0.25em;
    /* Adjusts for spacing */
    /* New Way */
    width: 1px;
    margin-left: -1px;
    margin-right: 0; }
  .Centered > *, .Overlay-body > *, .Template--about > * {
    display: inline-block;
    /* 3 */
    vertical-align: middle;
    /* 4 */
    white-space: normal;
    width: 100%; }

/**
 * Components
 */
.Centered {
  position: relative;
  height: 100%; }

/** @define Component */
/**
 * Component
 */
.Component .Component-head:before {
  content: '';
  display: block;
  background: #999;
  height: 1px;
  margin-bottom: 20px; }
  @media (max-width: 745px) {
    .Component .Component-head:before {
      margin-bottom: 10px; } }
.Component .Component-body {
  position: relative; }
  .Component .Component-body:before {
    content: '';
    display: block;
    height: 1px;
    background: #DDD;
    margin-bottom: 20px; }
    @media (max-width: 745px) {
      .Component .Component-body:before {
        margin-bottom: 10px; } }
.Component .Component-foot {
  display: inline-block; }
.Component.Component--fullWidth .Component-head {
  width: 100%; }
.Component.Component--fullWidth .Component-body {
  width: 100%;
  margin-top: 10px; }
.Component.Component--title {
  height: 1000px;
  position: relative;
  background: #DDD;
  margin: 0; }
  .Component.Component--title .Component-body {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: auto;
    height: auto; }

/** @define Content */
/**
 * Content
 */
.Content > :last-child {
  margin-bottom: 0; }

.Content--meta {
  display: none !important; }

/*

Make a content style for each of the base text families

*/
/*

Make a content style for each of the text applications

*/
.Content--spec, .Content--spec-util {
  font-family: monospace;
  padding: 10px;
  display: inline-block;
  border: 1px #333 solid;
  color: #333;
  border-radius: 5px; }

.Content--spec-util {
  border: 1px #999 solid;
  color: #999; }

/*

data-breakpoint-col

*/
[data-grid-of="1"] > * {
  width: 100%; }

[data-grid-of] > *[data-col-one-of="1"] {
  width: 100%; }

[data-grid-of] > *[data-col-two-of="1"] {
  width: 200%; }

[data-grid-of="2"] > * {
  width: 50%; }

[data-grid-of] > *[data-col-one-of="2"] {
  width: 50%; }

[data-grid-of] > *[data-col-two-of="2"] {
  width: 100%; }

[data-grid-of="3"] > * {
  width: 33.3333333333%; }

[data-grid-of] > *[data-col-one-of="3"] {
  width: 33.3333333333%; }

[data-grid-of] > *[data-col-two-of="3"] {
  width: 66.6666666667%; }

[data-grid-of="4"] > * {
  width: 25%; }

[data-grid-of] > *[data-col-one-of="4"] {
  width: 25%; }

[data-grid-of] > *[data-col-two-of="4"] {
  width: 50%; }

[data-grid-of="5"] > * {
  width: 20%; }

[data-grid-of] > *[data-col-one-of="5"] {
  width: 20%; }

[data-grid-of] > *[data-col-two-of="5"] {
  width: 40%; }

[data-grid-of="6"] > * {
  width: 16.6666666667%; }

[data-grid-of] > *[data-col-one-of="6"] {
  width: 16.6666666667%; }

[data-grid-of] > *[data-col-two-of="6"] {
  width: 33.3333333333%; }

[data-grid-of="7"] > * {
  width: 14.2857142857%; }

[data-grid-of] > *[data-col-one-of="7"] {
  width: 14.2857142857%; }

[data-grid-of] > *[data-col-two-of="7"] {
  width: 28.5714285714%; }

[data-grid-of="8"] > * {
  width: 12.5%; }

[data-grid-of] > *[data-col-one-of="8"] {
  width: 12.5%; }

[data-grid-of] > *[data-col-two-of="8"] {
  width: 25%; }

[data-grid-of="9"] > * {
  width: 11.1111111111%; }

[data-grid-of] > *[data-col-one-of="9"] {
  width: 11.1111111111%; }

[data-grid-of] > *[data-col-two-of="9"] {
  width: 22.2222222222%; }

[data-grid-of="10"] > * {
  width: 10%; }

[data-grid-of] > *[data-col-one-of="10"] {
  width: 10%; }

[data-grid-of] > *[data-col-two-of="10"] {
  width: 20%; }

[data-grid-of="11"] > * {
  width: 9.0909090909%; }

[data-grid-of] > *[data-col-one-of="11"] {
  width: 9.0909090909%; }

[data-grid-of] > *[data-col-two-of="11"] {
  width: 18.1818181818%; }

[data-grid-of="12"] > * {
  width: 8.3333333333%; }

[data-grid-of] > *[data-col-one-of="12"] {
  width: 8.3333333333%; }

[data-grid-of] > *[data-col-two-of="12"] {
  width: 16.6666666667%; }

@media (orientation: portrait) {
  [data-portrait-grid-of="1"] > * {
    width: 100%; }

  [data-grid-of] > *[data-portrait-one-of="1"] {
    width: 100%; }

  [data-grid-of] > *[data-portrait-two-of="1"] {
    width: 200%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="1"] > * {
    width: 100%; }

  [data-grid-of] > *[data-mobile-one-of="1"] {
    width: 100%; }

  [data-grid-of] > *[data-mobile-two-of="1"] {
    width: 200%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="1"] > * {
    width: 100%; }

  [data-grid-of] > *[data-tablet-one-of="1"] {
    width: 100%; }

  [data-grid-of] > *[data-tablet-two-of="1"] {
    width: 200%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="1"] > * {
    width: 100%; }

  [data-grid-of] > *[data-tablet-up-one-of="1"] {
    width: 100%; }

  [data-grid-of] > *[data-tablet-up-two-of="1"] {
    width: 200%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="1"] > * {
    width: 100%; }

  [data-grid-of] > *[data-desktop-one-of="1"] {
    width: 100%; }

  [data-grid-of] > *[data-desktop-two-of="1"] {
    width: 200%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="1"] > * {
    width: 100%; }

  [data-grid-of] > *[data-desktop-plus-one-of="1"] {
    width: 100%; }

  [data-grid-of] > *[data-desktop-plus-two-of="1"] {
    width: 200%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="1"] > * {
    width: 100%; }

  [data-grid-of] > *[data-wide-one-of="1"] {
    width: 100%; }

  [data-grid-of] > *[data-wide-two-of="1"] {
    width: 200%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="1"] > * {
    width: 100%; }

  [data-grid-of] > *[data-shallow-one-of="1"] {
    width: 100%; }

  [data-grid-of] > *[data-shallow-two-of="1"] {
    width: 200%; } }
@media (orientation: portrait) {
  [data-portrait-grid-of="2"] > * {
    width: 50%; }

  [data-grid-of] > *[data-portrait-one-of="2"] {
    width: 50%; }

  [data-grid-of] > *[data-portrait-two-of="2"] {
    width: 100%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="2"] > * {
    width: 50%; }

  [data-grid-of] > *[data-mobile-one-of="2"] {
    width: 50%; }

  [data-grid-of] > *[data-mobile-two-of="2"] {
    width: 100%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="2"] > * {
    width: 50%; }

  [data-grid-of] > *[data-tablet-one-of="2"] {
    width: 50%; }

  [data-grid-of] > *[data-tablet-two-of="2"] {
    width: 100%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="2"] > * {
    width: 50%; }

  [data-grid-of] > *[data-tablet-up-one-of="2"] {
    width: 50%; }

  [data-grid-of] > *[data-tablet-up-two-of="2"] {
    width: 100%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="2"] > * {
    width: 50%; }

  [data-grid-of] > *[data-desktop-one-of="2"] {
    width: 50%; }

  [data-grid-of] > *[data-desktop-two-of="2"] {
    width: 100%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="2"] > * {
    width: 50%; }

  [data-grid-of] > *[data-desktop-plus-one-of="2"] {
    width: 50%; }

  [data-grid-of] > *[data-desktop-plus-two-of="2"] {
    width: 100%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="2"] > * {
    width: 50%; }

  [data-grid-of] > *[data-wide-one-of="2"] {
    width: 50%; }

  [data-grid-of] > *[data-wide-two-of="2"] {
    width: 100%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="2"] > * {
    width: 50%; }

  [data-grid-of] > *[data-shallow-one-of="2"] {
    width: 50%; }

  [data-grid-of] > *[data-shallow-two-of="2"] {
    width: 100%; } }
@media (orientation: portrait) {
  [data-portrait-grid-of="3"] > * {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-portrait-one-of="3"] {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-portrait-two-of="3"] {
    width: 66.6666666667%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="3"] > * {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-mobile-one-of="3"] {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-mobile-two-of="3"] {
    width: 66.6666666667%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="3"] > * {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-tablet-one-of="3"] {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-tablet-two-of="3"] {
    width: 66.6666666667%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="3"] > * {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-tablet-up-one-of="3"] {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-tablet-up-two-of="3"] {
    width: 66.6666666667%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="3"] > * {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-desktop-one-of="3"] {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-desktop-two-of="3"] {
    width: 66.6666666667%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="3"] > * {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-desktop-plus-one-of="3"] {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-desktop-plus-two-of="3"] {
    width: 66.6666666667%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="3"] > * {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-wide-one-of="3"] {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-wide-two-of="3"] {
    width: 66.6666666667%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="3"] > * {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-shallow-one-of="3"] {
    width: 33.3333333333%; }

  [data-grid-of] > *[data-shallow-two-of="3"] {
    width: 66.6666666667%; } }
@media (orientation: portrait) {
  [data-portrait-grid-of="4"] > * {
    width: 25%; }

  [data-grid-of] > *[data-portrait-one-of="4"] {
    width: 25%; }

  [data-grid-of] > *[data-portrait-two-of="4"] {
    width: 50%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="4"] > * {
    width: 25%; }

  [data-grid-of] > *[data-mobile-one-of="4"] {
    width: 25%; }

  [data-grid-of] > *[data-mobile-two-of="4"] {
    width: 50%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="4"] > * {
    width: 25%; }

  [data-grid-of] > *[data-tablet-one-of="4"] {
    width: 25%; }

  [data-grid-of] > *[data-tablet-two-of="4"] {
    width: 50%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="4"] > * {
    width: 25%; }

  [data-grid-of] > *[data-tablet-up-one-of="4"] {
    width: 25%; }

  [data-grid-of] > *[data-tablet-up-two-of="4"] {
    width: 50%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="4"] > * {
    width: 25%; }

  [data-grid-of] > *[data-desktop-one-of="4"] {
    width: 25%; }

  [data-grid-of] > *[data-desktop-two-of="4"] {
    width: 50%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="4"] > * {
    width: 25%; }

  [data-grid-of] > *[data-desktop-plus-one-of="4"] {
    width: 25%; }

  [data-grid-of] > *[data-desktop-plus-two-of="4"] {
    width: 50%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="4"] > * {
    width: 25%; }

  [data-grid-of] > *[data-wide-one-of="4"] {
    width: 25%; }

  [data-grid-of] > *[data-wide-two-of="4"] {
    width: 50%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="4"] > * {
    width: 25%; }

  [data-grid-of] > *[data-shallow-one-of="4"] {
    width: 25%; }

  [data-grid-of] > *[data-shallow-two-of="4"] {
    width: 50%; } }
@media (orientation: portrait) {
  [data-portrait-grid-of="5"] > * {
    width: 20%; }

  [data-grid-of] > *[data-portrait-one-of="5"] {
    width: 20%; }

  [data-grid-of] > *[data-portrait-two-of="5"] {
    width: 40%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="5"] > * {
    width: 20%; }

  [data-grid-of] > *[data-mobile-one-of="5"] {
    width: 20%; }

  [data-grid-of] > *[data-mobile-two-of="5"] {
    width: 40%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="5"] > * {
    width: 20%; }

  [data-grid-of] > *[data-tablet-one-of="5"] {
    width: 20%; }

  [data-grid-of] > *[data-tablet-two-of="5"] {
    width: 40%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="5"] > * {
    width: 20%; }

  [data-grid-of] > *[data-tablet-up-one-of="5"] {
    width: 20%; }

  [data-grid-of] > *[data-tablet-up-two-of="5"] {
    width: 40%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="5"] > * {
    width: 20%; }

  [data-grid-of] > *[data-desktop-one-of="5"] {
    width: 20%; }

  [data-grid-of] > *[data-desktop-two-of="5"] {
    width: 40%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="5"] > * {
    width: 20%; }

  [data-grid-of] > *[data-desktop-plus-one-of="5"] {
    width: 20%; }

  [data-grid-of] > *[data-desktop-plus-two-of="5"] {
    width: 40%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="5"] > * {
    width: 20%; }

  [data-grid-of] > *[data-wide-one-of="5"] {
    width: 20%; }

  [data-grid-of] > *[data-wide-two-of="5"] {
    width: 40%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="5"] > * {
    width: 20%; }

  [data-grid-of] > *[data-shallow-one-of="5"] {
    width: 20%; }

  [data-grid-of] > *[data-shallow-two-of="5"] {
    width: 40%; } }
@media (orientation: portrait) {
  [data-portrait-grid-of="6"] > * {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-portrait-one-of="6"] {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-portrait-two-of="6"] {
    width: 33.3333333333%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="6"] > * {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-mobile-one-of="6"] {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-mobile-two-of="6"] {
    width: 33.3333333333%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="6"] > * {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-tablet-one-of="6"] {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-tablet-two-of="6"] {
    width: 33.3333333333%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="6"] > * {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-tablet-up-one-of="6"] {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-tablet-up-two-of="6"] {
    width: 33.3333333333%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="6"] > * {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-desktop-one-of="6"] {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-desktop-two-of="6"] {
    width: 33.3333333333%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="6"] > * {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-desktop-plus-one-of="6"] {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-desktop-plus-two-of="6"] {
    width: 33.3333333333%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="6"] > * {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-wide-one-of="6"] {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-wide-two-of="6"] {
    width: 33.3333333333%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="6"] > * {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-shallow-one-of="6"] {
    width: 16.6666666667%; }

  [data-grid-of] > *[data-shallow-two-of="6"] {
    width: 33.3333333333%; } }
@media (orientation: portrait) {
  [data-portrait-grid-of="7"] > * {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-portrait-one-of="7"] {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-portrait-two-of="7"] {
    width: 28.5714285714%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="7"] > * {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-mobile-one-of="7"] {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-mobile-two-of="7"] {
    width: 28.5714285714%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="7"] > * {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-tablet-one-of="7"] {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-tablet-two-of="7"] {
    width: 28.5714285714%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="7"] > * {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-tablet-up-one-of="7"] {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-tablet-up-two-of="7"] {
    width: 28.5714285714%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="7"] > * {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-desktop-one-of="7"] {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-desktop-two-of="7"] {
    width: 28.5714285714%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="7"] > * {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-desktop-plus-one-of="7"] {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-desktop-plus-two-of="7"] {
    width: 28.5714285714%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="7"] > * {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-wide-one-of="7"] {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-wide-two-of="7"] {
    width: 28.5714285714%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="7"] > * {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-shallow-one-of="7"] {
    width: 14.2857142857%; }

  [data-grid-of] > *[data-shallow-two-of="7"] {
    width: 28.5714285714%; } }
@media (orientation: portrait) {
  [data-portrait-grid-of="8"] > * {
    width: 12.5%; }

  [data-grid-of] > *[data-portrait-one-of="8"] {
    width: 12.5%; }

  [data-grid-of] > *[data-portrait-two-of="8"] {
    width: 25%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="8"] > * {
    width: 12.5%; }

  [data-grid-of] > *[data-mobile-one-of="8"] {
    width: 12.5%; }

  [data-grid-of] > *[data-mobile-two-of="8"] {
    width: 25%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="8"] > * {
    width: 12.5%; }

  [data-grid-of] > *[data-tablet-one-of="8"] {
    width: 12.5%; }

  [data-grid-of] > *[data-tablet-two-of="8"] {
    width: 25%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="8"] > * {
    width: 12.5%; }

  [data-grid-of] > *[data-tablet-up-one-of="8"] {
    width: 12.5%; }

  [data-grid-of] > *[data-tablet-up-two-of="8"] {
    width: 25%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="8"] > * {
    width: 12.5%; }

  [data-grid-of] > *[data-desktop-one-of="8"] {
    width: 12.5%; }

  [data-grid-of] > *[data-desktop-two-of="8"] {
    width: 25%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="8"] > * {
    width: 12.5%; }

  [data-grid-of] > *[data-desktop-plus-one-of="8"] {
    width: 12.5%; }

  [data-grid-of] > *[data-desktop-plus-two-of="8"] {
    width: 25%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="8"] > * {
    width: 12.5%; }

  [data-grid-of] > *[data-wide-one-of="8"] {
    width: 12.5%; }

  [data-grid-of] > *[data-wide-two-of="8"] {
    width: 25%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="8"] > * {
    width: 12.5%; }

  [data-grid-of] > *[data-shallow-one-of="8"] {
    width: 12.5%; }

  [data-grid-of] > *[data-shallow-two-of="8"] {
    width: 25%; } }
@media (orientation: portrait) {
  [data-portrait-grid-of="9"] > * {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-portrait-one-of="9"] {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-portrait-two-of="9"] {
    width: 22.2222222222%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="9"] > * {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-mobile-one-of="9"] {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-mobile-two-of="9"] {
    width: 22.2222222222%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="9"] > * {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-tablet-one-of="9"] {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-tablet-two-of="9"] {
    width: 22.2222222222%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="9"] > * {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-tablet-up-one-of="9"] {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-tablet-up-two-of="9"] {
    width: 22.2222222222%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="9"] > * {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-desktop-one-of="9"] {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-desktop-two-of="9"] {
    width: 22.2222222222%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="9"] > * {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-desktop-plus-one-of="9"] {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-desktop-plus-two-of="9"] {
    width: 22.2222222222%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="9"] > * {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-wide-one-of="9"] {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-wide-two-of="9"] {
    width: 22.2222222222%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="9"] > * {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-shallow-one-of="9"] {
    width: 11.1111111111%; }

  [data-grid-of] > *[data-shallow-two-of="9"] {
    width: 22.2222222222%; } }
@media (orientation: portrait) {
  [data-portrait-grid-of="10"] > * {
    width: 10%; }

  [data-grid-of] > *[data-portrait-one-of="10"] {
    width: 10%; }

  [data-grid-of] > *[data-portrait-two-of="10"] {
    width: 20%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="10"] > * {
    width: 10%; }

  [data-grid-of] > *[data-mobile-one-of="10"] {
    width: 10%; }

  [data-grid-of] > *[data-mobile-two-of="10"] {
    width: 20%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="10"] > * {
    width: 10%; }

  [data-grid-of] > *[data-tablet-one-of="10"] {
    width: 10%; }

  [data-grid-of] > *[data-tablet-two-of="10"] {
    width: 20%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="10"] > * {
    width: 10%; }

  [data-grid-of] > *[data-tablet-up-one-of="10"] {
    width: 10%; }

  [data-grid-of] > *[data-tablet-up-two-of="10"] {
    width: 20%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="10"] > * {
    width: 10%; }

  [data-grid-of] > *[data-desktop-one-of="10"] {
    width: 10%; }

  [data-grid-of] > *[data-desktop-two-of="10"] {
    width: 20%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="10"] > * {
    width: 10%; }

  [data-grid-of] > *[data-desktop-plus-one-of="10"] {
    width: 10%; }

  [data-grid-of] > *[data-desktop-plus-two-of="10"] {
    width: 20%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="10"] > * {
    width: 10%; }

  [data-grid-of] > *[data-wide-one-of="10"] {
    width: 10%; }

  [data-grid-of] > *[data-wide-two-of="10"] {
    width: 20%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="10"] > * {
    width: 10%; }

  [data-grid-of] > *[data-shallow-one-of="10"] {
    width: 10%; }

  [data-grid-of] > *[data-shallow-two-of="10"] {
    width: 20%; } }
@media (orientation: portrait) {
  [data-portrait-grid-of="11"] > * {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-portrait-one-of="11"] {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-portrait-two-of="11"] {
    width: 18.1818181818%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="11"] > * {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-mobile-one-of="11"] {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-mobile-two-of="11"] {
    width: 18.1818181818%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="11"] > * {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-tablet-one-of="11"] {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-tablet-two-of="11"] {
    width: 18.1818181818%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="11"] > * {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-tablet-up-one-of="11"] {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-tablet-up-two-of="11"] {
    width: 18.1818181818%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="11"] > * {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-desktop-one-of="11"] {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-desktop-two-of="11"] {
    width: 18.1818181818%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="11"] > * {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-desktop-plus-one-of="11"] {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-desktop-plus-two-of="11"] {
    width: 18.1818181818%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="11"] > * {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-wide-one-of="11"] {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-wide-two-of="11"] {
    width: 18.1818181818%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="11"] > * {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-shallow-one-of="11"] {
    width: 9.0909090909%; }

  [data-grid-of] > *[data-shallow-two-of="11"] {
    width: 18.1818181818%; } }
@media (orientation: portrait) {
  [data-portrait-grid-of="12"] > * {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-portrait-one-of="12"] {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-portrait-two-of="12"] {
    width: 16.6666666667%; } }
@media (max-width: 745px) {
  [data-mobile-grid-of="12"] > * {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-mobile-one-of="12"] {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-mobile-two-of="12"] {
    width: 16.6666666667%; } }
@media (min-width: 746px) and (max-width: 1023px) {
  [data-tablet-grid-of="12"] > * {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-tablet-one-of="12"] {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-tablet-two-of="12"] {
    width: 16.6666666667%; } }
@media (min-width: 746px) {
  [data-tablet-up-grid-of="12"] > * {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-tablet-up-one-of="12"] {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-tablet-up-two-of="12"] {
    width: 16.6666666667%; } }
@media (min-width: 1024px) {
  [data-desktop-grid-of="12"] > * {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-desktop-one-of="12"] {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-desktop-two-of="12"] {
    width: 16.6666666667%; } }
@media (min-width: 1200px) {
  [data-desktop-plus-grid-of="12"] > * {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-desktop-plus-one-of="12"] {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-desktop-plus-two-of="12"] {
    width: 16.6666666667%; } }
@media (min-width: 1400px) {
  [data-wide-grid-of="12"] > * {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-wide-one-of="12"] {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-wide-two-of="12"] {
    width: 16.6666666667%; } }
@media (min-width: 1024px) and (max-height: 850px) {
  [data-shallow-grid-of="12"] > * {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-shallow-one-of="12"] {
    width: 8.3333333333%; }

  [data-grid-of] > *[data-shallow-two-of="12"] {
    width: 16.6666666667%; } }
.Icon {
  width: 24px;
  height: 24px;
  overflow: hidden;
  overflow: hidden;
  padding: 0;
  text-indent: 101%;
  white-space: nowrap; }
  .Icon.Icon--ratio {
    width: 100%;
    padding-top: 100%; }
  .Icon.Icon--fluid {
    padding-top: 0; }

.Icon--glyph-mail {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-mail:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-search {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-search:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-zoom-in {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-zoom-in:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-zoom-out {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-zoom-out:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-location {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-location:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-arrow-left {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-arrow-left:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-arrow-right {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-arrow-right:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-arrow-up {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-arrow-up:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-arrow-down {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-arrow-down:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-plus {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-plus:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-minus {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-minus:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-check {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-check:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-cross {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-cross:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-inbox {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-inbox:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-open {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-open:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-ellipsis {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-ellipsis:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-location2 {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-location2:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-play {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-play:before {
    display: inline-block;
    width: 100%; }

.Icon--glyph-pause {
  position: relative;
  text-indent: 0;
  font-size: 24px; }
  .Icon--glyph-pause:before {
    display: inline-block;
    width: 100%; }

/** @define Image */
/**
 * Image
 */
.Image {
  overflow: hidden; }
  .Image > * {
    transition: opacity 2s 0.25s ease; }
  .Image.ui-lazyImage > * {
    opacity: 0; }
  .Image.ui-lazyImage--loaded > * {
    opacity: 1; }
  .Image.ui-lazyImage--loaded.is-invisible > * {
    transition: opacity 0.5s ease;
    opacity: 0; }

.Image--fixed > * {
  background-attachment: fixed; }

.Image--fit > * {
  background-size: contain;
  background-repeat: no-repeat; }

.Link {
  display: inline-block; }
  .Link .Link-body {
    display: inline-block;
    vertical-align: middle; }

.Link--plus:before {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--minus:before {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--info:before {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--cross:before {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--down:before {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--arrow-right:before {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--arrow-left:before {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--arrow-up:before {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--arrow-down:before {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--play:before {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--search:before {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-mail:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-search:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-zoom-in:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-zoom-out:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-location:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-arrow-left:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-arrow-right:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-arrow-up:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-arrow-down:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-plus:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-minus:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-check:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-cross:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-inbox:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-open:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-ellipsis:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-location2:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-play:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Link--glyph-pause:before {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 10px; }

.Logo {
  padding-top: 66%;
  width: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto; }
  .Logo a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .Logo .Logo-body {
    display: none; }

/** @define Overlay */
/**
 * Base overlay component
 */
.Overlay {
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.85);
  width: 100%;
  height: 100%;
  overflow: hidden;
  /* Fade-Out Effect */ }
  .Overlay.Overlay--lightbox {
    position: fixed;
    z-index: 9999; }
  .Overlay.is-active {
    visibility: visible;
    opacity: 1;
    transition: opacity 0.3s ease; }
  .Overlay.is-inactive {
    visibility: visible;
    pointer-events: none;
    opacity: 0;
    top: -9999px;
    overflow: hidden;
    height: 0;
    transition: visibility 0s 0.4s, top 0s 0.4s,height 0s 0.4s, opacity 0.4s ease; }

.Overlay-head {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  text-align: right;
  padding: 20px;
  z-index: 5; }
  @media (max-width: 745px) {
    .Overlay-head {
      padding: 10px; } }

.Overlay-body {
  position: absolute;
  z-index: 4;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  white-space: nowrap;
  text-align: center; }
  .Overlay-body > * {
    white-space: normal; }

.Overlay-content {
  width: 100%;
  padding: 20px;
  display: inline-block;
  text-align: left; }
  @media (max-width: 745px) {
    .Overlay-content {
      padding: 10px; } }

.Scroller .Scroller-body {
  z-index: 1; }
.Scroller .Scroller-head {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2; }
.Scroller .Scroller-foot {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 2; }

/*

	.Section
	- Base section component. Uses setting in $base-sections to create pre-defined Section components
	
	- Sections have no inherent padding, but it is assumed that their Section-container does
	
	<section class="Section">
		<div class="Section-container">
			
			<hgroup class="Section-head"></hgroup>
			<div class="Section-body"></div>
			<div class="Section-foot"></div>
			
		</div>
	</section>
	
*/
.Section {
  position: relative;
  transition: all 0.4s ease;
  background: transparent;
  color: #2e2d2c; }
  .Section h1, .Section h2, .Section h3, .Section h4, .Section h5 {
    font-family: "futura-pt", sans-serif; }
  .Section p, .Section ul {
    font-family: "futura-pt", sans-serif; }
  .Section .Section-container {
    padding: 20px;
    max-width: 1400px;
    margin: 0 auto; }
    @media (max-width: 745px) {
      .Section .Section-container {
        padding: 10px; } }
  .Section .Section-body {
    position: relative; }
  .Section .Image {
    background: #EEE; }
  .Section a {
    color: #999; }
  .Section .is-active, .Section .is-active > * {
    color: #666; }

.Section--modifier {
  position: relative;
  background: #2e2d2c;
  color: #FFF; }
  .Section--modifier h1, .Section--modifier h2, .Section--modifier h3, .Section--modifier h4, .Section--modifier h5 {
    font-family: monospace; }
  .Section--modifier p, .Section--modifier ul {
    font-family: "futura-pt", sans-serif; }
  .Section--modifier .Section-container {
    padding: 20px;
    max-width: 1400px;
    margin: 0 auto; }
    @media (max-width: 745px) {
      .Section--modifier .Section-container {
        padding: 10px; } }
  .Section--modifier .Section-body {
    position: relative; }
  .Section--modifier .Image {
    background: #FFF; }
  .Section--modifier a {
    color: #e3e3e3; }
  .Section--modifier .is-active, .Section--modifier .is-active > * {
    color: #666; }

.Site--modified .Section--modifier {
  position: relative;
  background: #2e2d2c;
  color: #FFF; }
  .Site--modified .Section--modifier .Section-container {
    margin: 0 auto; }
  .Site--modified .Section--modifier .Section-body {
    position: relative; }

.Site *[data-box-mode="fluid"] {
  padding-top: 0; }

.Site-content--mobile {
  display: none; }

@media (max-width: 745px) {
  .Site-content--desktop {
    display: none; }

  .Site-content--mobile {
    display: block; } }
.Slider {
  position: relative;
  width: 100%;
  padding-top: 66.6666666667%;
  overflow: visible; }
  .Slider.Slider--fluid {
    padding-top: 0;
    overflow: visible; }

.Slider-body {
  overflow: hidden;
  backface-visibility: hidden;
  z-index: 1; }
  .Slider-body > * {
    height: 100% !important;
    width: 100% !important;
    backface-visibility: hidden; }
  .Slider-body .Slider-item {
    height: 100% !important;
    width: 100% !important; }

.Slider-pages, .Slider-info {
  height: auto;
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
  padding: 20px; }
  @media (max-width: 745px) {
    .Slider-pages, .Slider-info {
      padding: 10px; } }

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

.Slider-arrow {
  width: 30%;
  cursor: pointer;
  padding: 20px;
  z-index: 2; }
  @media (max-width: 745px) {
    .Slider-arrow {
      padding: 10px; } }

.Slider-arrow--left {
  left: 0;
  top: 0; }

.Slider-arrow--right {
  left: auto;
  right: 0;
  top: 0;
  text-align: right; }

.Slider-arrow {
  overflow: hidden;
  padding: 0;
  text-indent: 101%;
  white-space: nowrap;
  overflow: hidden;
  width: 33%; }
  .Slider-arrow a {
    display: none; }
  .Slider-arrow:after {
    width: 24px;
    height: 24px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
  .Site--no-touch .Slider-arrow:after {
    display: none; }
  .Site--no-touch .Slider-arrow:hover:after {
    display: block; }

.Slider-arrow--right:after {
  right: 20px; }
  @media (max-width: 745px) {
    .Slider-arrow--right:after {
      right: 10px; } }

.Slider-arrow--left:after {
  left: 20px; }
  @media (max-width: 745px) {
    .Slider-arrow--left:after {
      left: 10px; } }

/** @define Video */
/**
 * Base video component
 */
.Video {
  width: 100%;
  padding-top: 56.25%; }
  .Video.Video--fluid {
    padding-top: 0; }

.Video-poster {
  cursor: pointer;
  z-index: 3;
  transition: opacity 0.4s ease; }
  .is-playing .Video-poster {
    pointer-events: none;
    opacity: 0; }
  .Video-poster:after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 15%;
    height: 50%; }
  .Site--no-touch .Video-poster:hover:after {
    opacity: 0; }

.Video .mejs-poster {
  background-size: cover; }
.Video .mejs-overlay-loading {
  width: 20px;
  height: 20px;
  vertical-align: middle;
  height: 20px;
  width: 20px;
  transform-origin: 50% 50%;
  animation: pulse 1.5s ease infinite;
  display: block;
  border-radius: 50%;
  background: #e3e3e3;
  box-sizing: border-box;
  overflow: hidden;
  vertical-align: middle;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -10px;
  margin-top: -10px; }
  .Video .mejs-overlay-loading span {
    display: none !important; }
  .Video .mejs-overlay-loading:before {
    content: '';
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #e3e3e3; }
.Video .mejs-controls {
  display: none !important; }
.Video.Video--controls .mejs-controls {
  display: block !important; }
.Video.is-playing {
  cursor: pointer, auto; }
.Video .mejs-overlay-play {
  cursor: pointer, auto; }
  .Site--no-touch .Video .mejs-overlay-play:hover .mejs-overlay-button {
    opacity: 0; }
  .Video .mejs-overlay-play .mejs-overlay-button {
    display: block;
    background: none !important;
    margin: 0;
    transform: translate(-50%, -50%);
    width: 15%;
    padding-top: 15%;
    height: 0;
    overflow: hidden;
    transition: all 0.4s ease; }
    .Video .mejs-overlay-play .mejs-overlay-button:after {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }

/** @define UI Theme */
/**
 * Some defaults for .ui- components
 */
/**
 * JS Components
 */
.mejs-offscreen {
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: polygon(0px 0, 0 0, 0 0, 0 0);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden; }

.mejs-container {
  position: relative;
  background: #000;
  font-family: Helvetica,Arial;
  text-align: left;
  vertical-align: top;
  text-indent: 0; }

.mejs-container:focus {
  outline: 0; }

.me-plugin {
  position: absolute; }

.mejs-embed, .mejs-embed body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background: #000;
  overflow: hidden; }

.mejs-fullscreen {
  overflow: hidden !important; }

.mejs-container-fullscreen {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  z-index: 1000; }

.mejs-container-fullscreen .mejs-mediaelement, .mejs-container-fullscreen video {
  width: 100%;
  height: 100%; }

.mejs-clear {
  clear: both; }

.mejs-background {
  position: absolute;
  top: 0;
  left: 0; }

.mejs-mediaelement {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.mejs-poster {
  position: absolute;
  top: 0;
  left: 0;
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat; }

:root .mejs-poster img {
  display: none; }

.mejs-poster img {
  border: 0;
  padding: 0;
  border: 0; }

.mejs-overlay {
  position: absolute;
  top: 0;
  left: 0; }

.mejs-overlay-play {
  cursor: pointer; }

.mejs-overlay-button {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100px;
  height: 100px;
  margin: -50px 0 0 -50px;
  background: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/bigplay.svg) no-repeat; }

.no-svg .mejs-overlay-button {
  background-image: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/bigplay.png); }

.mejs-overlay:hover .mejs-overlay-button {
  background-position: 0 -100px; }

.mejs-overlay-loading {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80px;
  height: 80px;
  margin: -40px 0 0 -40px;
  background: #333;
  background: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/background.png);
  background: rgba(0, 0, 0, 0.9);
  background: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(50, 50, 50, 0.9)), to(rgba(0, 0, 0, 0.9)));
  background: -webkit-linear-gradient(top, rgba(50, 50, 50, 0.9), rgba(0, 0, 0, 0.9));
  background: -moz-linear-gradient(top, rgba(50, 50, 50, 0.9), rgba(0, 0, 0, 0.9));
  background: -o-linear-gradient(top, rgba(50, 50, 50, 0.9), rgba(0, 0, 0, 0.9));
  background: -ms-linear-gradient(top, rgba(50, 50, 50, 0.9), rgba(0, 0, 0, 0.9));
  background: linear-gradient(rgba(50, 50, 50, 0.9), rgba(0, 0, 0, 0.9)); }

.mejs-overlay-loading span {
  display: block;
  width: 80px;
  height: 80px;
  background: transparent url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/loading.gif) 50% 50% no-repeat; }

.mejs-container .mejs-controls {
  position: absolute;
  list-style-type: none;
  margin: 0;
  padding: 0;
  bottom: 0;
  left: 0;
  background: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/background.png);
  background: rgba(0, 0, 0, 0.7);
  background: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(50, 50, 50, 0.7)), to(rgba(0, 0, 0, 0.7)));
  background: -webkit-linear-gradient(top, rgba(50, 50, 50, 0.7), rgba(0, 0, 0, 0.7));
  background: -moz-linear-gradient(top, rgba(50, 50, 50, 0.7), rgba(0, 0, 0, 0.7));
  background: -o-linear-gradient(top, rgba(50, 50, 50, 0.7), rgba(0, 0, 0, 0.7));
  background: -ms-linear-gradient(top, rgba(50, 50, 50, 0.7), rgba(0, 0, 0, 0.7));
  background: linear-gradient(rgba(50, 50, 50, 0.7), rgba(0, 0, 0, 0.7));
  height: 30px;
  width: 100%; }

.mejs-container .mejs-controls div {
  list-style-type: none;
  background-image: none;
  display: block;
  float: left;
  margin: 0;
  padding: 0;
  width: 26px;
  height: 26px;
  font-size: 11px;
  line-height: 11px;
  font-family: Helvetica,Arial;
  border: 0; }

.mejs-controls .mejs-button button {
  cursor: pointer;
  display: block;
  font-size: 0;
  line-height: 0;
  text-decoration: none;
  margin: 7px 5px;
  padding: 0;
  position: absolute;
  height: 16px;
  width: 16px;
  border: 0;
  background: transparent url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/controls.svg) no-repeat; }

.no-svg .mejs-controls .mejs-button button {
  background-image: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/controls.png); }

.mejs-controls .mejs-button button:focus {
  outline: dotted 1px #999; }

.mejs-container .mejs-controls .mejs-time {
  color: #fff;
  display: block;
  height: 17px;
  width: auto;
  padding: 10px 3px 0;
  overflow: hidden;
  text-align: center;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box; }

.mejs-container .mejs-controls .mejs-time a {
  color: #fff;
  font-size: 11px;
  line-height: 12px;
  display: block;
  float: left;
  margin: 1px 2px 0 0;
  width: auto; }

.mejs-controls .mejs-play button {
  background-position: 0 0; }

.mejs-controls .mejs-pause button {
  background-position: 0 -16px; }

.mejs-controls .mejs-stop button {
  background-position: -112px 0; }

.mejs-controls div.mejs-time-rail {
  direction: ltr;
  width: 200px;
  padding-top: 5px; }

.mejs-controls .mejs-time-rail span, .mejs-controls .mejs-time-rail a {
  display: block;
  position: absolute;
  width: 180px;
  height: 10px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  cursor: pointer; }

.mejs-controls .mejs-time-rail .mejs-time-total {
  margin: 5px;
  background: #333;
  background: rgba(50, 50, 50, 0.8);
  background: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(30, 30, 30, 0.8)), to(rgba(60, 60, 60, 0.8)));
  background: -webkit-linear-gradient(top, rgba(30, 30, 30, 0.8), rgba(60, 60, 60, 0.8));
  background: -moz-linear-gradient(top, rgba(30, 30, 30, 0.8), rgba(60, 60, 60, 0.8));
  background: -o-linear-gradient(top, rgba(30, 30, 30, 0.8), rgba(60, 60, 60, 0.8));
  background: -ms-linear-gradient(top, rgba(30, 30, 30, 0.8), rgba(60, 60, 60, 0.8));
  background: linear-gradient(rgba(30, 30, 30, 0.8), rgba(60, 60, 60, 0.8)); }

.mejs-controls .mejs-time-rail .mejs-time-buffering {
  width: 100%;
  background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  -webkit-background-size: 15px 15px;
  -moz-background-size: 15px 15px;
  -o-background-size: 15px 15px;
  background-size: 15px 15px;
  -webkit-animation: buffering-stripes 2s linear infinite;
  -moz-animation: buffering-stripes 2s linear infinite;
  -ms-animation: buffering-stripes 2s linear infinite;
  -o-animation: buffering-stripes 2s linear infinite;
  animation: buffering-stripes 2s linear infinite; }

@-webkit-keyframes buffering-stripes {
  from {
    background-position: 0 0; }
  to {
    background-position: 30px 0; } }
@-moz-keyframes buffering-stripes {
  from {
    background-position: 0 0; }
  to {
    background-position: 30px 0; } }
@-ms-keyframes buffering-stripes {
  from {
    background-position: 0 0; }
  to {
    background-position: 30px 0; } }
@-o-keyframes buffering-stripes {
  from {
    background-position: 0 0; }
  to {
    background-position: 30px 0; } }
@keyframes buffering-stripes {
  from {
    background-position: 0 0; }
  to {
    background-position: 30px 0; } }
.mejs-controls .mejs-time-rail .mejs-time-loaded {
  background: #3caac8;
  background: rgba(60, 170, 200, 0.8);
  background: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(44, 124, 145, 0.8)), to(rgba(78, 183, 212, 0.8)));
  background: -webkit-linear-gradient(top, rgba(44, 124, 145, 0.8), rgba(78, 183, 212, 0.8));
  background: -moz-linear-gradient(top, rgba(44, 124, 145, 0.8), rgba(78, 183, 212, 0.8));
  background: -o-linear-gradient(top, rgba(44, 124, 145, 0.8), rgba(78, 183, 212, 0.8));
  background: -ms-linear-gradient(top, rgba(44, 124, 145, 0.8), rgba(78, 183, 212, 0.8));
  background: linear-gradient(rgba(44, 124, 145, 0.8), rgba(78, 183, 212, 0.8));
  width: 0; }

.mejs-controls .mejs-time-rail .mejs-time-current {
  background: #fff;
  background: rgba(255, 255, 255, 0.8);
  background: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(255, 255, 255, 0.9)), to(rgba(200, 200, 200, 0.8)));
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.9), rgba(200, 200, 200, 0.8));
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.9), rgba(200, 200, 200, 0.8));
  background: -o-linear-gradient(top, rgba(255, 255, 255, 0.9), rgba(200, 200, 200, 0.8));
  background: -ms-linear-gradient(top, rgba(255, 255, 255, 0.9), rgba(200, 200, 200, 0.8));
  background: linear-gradient(rgba(255, 255, 255, 0.9), rgba(200, 200, 200, 0.8));
  width: 0; }

.mejs-controls .mejs-time-rail .mejs-time-handle {
  display: none;
  position: absolute;
  margin: 0;
  width: 10px;
  background: #fff;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  cursor: pointer;
  border: solid 2px #333;
  top: -2px;
  text-align: center; }

.mejs-controls .mejs-time-rail .mejs-time-float {
  position: absolute;
  display: none;
  background: #eee;
  width: 36px;
  height: 17px;
  border: solid 1px #333;
  top: -26px;
  margin-left: -18px;
  text-align: center;
  color: #111; }

.mejs-controls .mejs-time-rail .mejs-time-float-current {
  margin: 2px;
  width: 30px;
  display: block;
  text-align: center;
  left: 0; }

.mejs-controls .mejs-time-rail .mejs-time-float-corner {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  line-height: 0;
  border: solid 5px #eee;
  border-color: #eee transparent transparent;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  top: 15px;
  left: 13px; }

.mejs-long-video .mejs-controls .mejs-time-rail .mejs-time-float {
  width: 48px; }

.mejs-long-video .mejs-controls .mejs-time-rail .mejs-time-float-current {
  width: 44px; }

.mejs-long-video .mejs-controls .mejs-time-rail .mejs-time-float-corner {
  left: 18px; }

.mejs-controls .mejs-fullscreen-button button {
  background-position: -32px 0; }

.mejs-controls .mejs-unfullscreen button {
  background-position: -32px -16px; }

.mejs-controls .mejs-mute button {
  background-position: -16px -16px; }

.mejs-controls .mejs-unmute button {
  background-position: -16px 0; }

.mejs-controls .mejs-volume-button {
  position: relative; }

.mejs-controls .mejs-volume-button .mejs-volume-slider {
  display: none;
  height: 115px;
  width: 25px;
  background: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/background.png);
  background: rgba(50, 50, 50, 0.7);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  top: -115px;
  left: 0;
  z-index: 1;
  position: absolute;
  margin: 0; }

.mejs-controls .mejs-volume-button:hover {
  -webkit-border-radius: 0 0 4px 4px;
  -moz-border-radius: 0 0 4px 4px;
  border-radius: 0 0 4px 4px; }

.mejs-controls .mejs-volume-button .mejs-volume-slider .mejs-volume-total {
  position: absolute;
  left: 11px;
  top: 8px;
  width: 2px;
  height: 100px;
  background: #ddd;
  background: rgba(255, 255, 255, 0.5);
  margin: 0; }

.mejs-controls .mejs-volume-button .mejs-volume-slider .mejs-volume-current {
  position: absolute;
  left: 11px;
  top: 8px;
  width: 2px;
  height: 100px;
  background: #ddd;
  background: rgba(255, 255, 255, 0.9);
  margin: 0; }

.mejs-controls .mejs-volume-button .mejs-volume-slider .mejs-volume-handle {
  position: absolute;
  left: 4px;
  top: -3px;
  width: 16px;
  height: 6px;
  background: #ddd;
  background: rgba(255, 255, 255, 0.9);
  cursor: N-resize;
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px;
  margin: 0; }

.mejs-controls a.mejs-horizontal-volume-slider {
  height: 26px;
  width: 56px;
  position: relative;
  display: block;
  float: left;
  vertical-align: middle; }

.mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total {
  position: absolute;
  left: 0;
  top: 11px;
  width: 50px;
  height: 8px;
  margin: 0;
  padding: 0;
  font-size: 1px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  background: #333;
  background: rgba(50, 50, 50, 0.8);
  background: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(30, 30, 30, 0.8)), to(rgba(60, 60, 60, 0.8)));
  background: -webkit-linear-gradient(top, rgba(30, 30, 30, 0.8), rgba(60, 60, 60, 0.8));
  background: -moz-linear-gradient(top, rgba(30, 30, 30, 0.8), rgba(60, 60, 60, 0.8));
  background: -o-linear-gradient(top, rgba(30, 30, 30, 0.8), rgba(60, 60, 60, 0.8));
  background: -ms-linear-gradient(top, rgba(30, 30, 30, 0.8), rgba(60, 60, 60, 0.8));
  background: linear-gradient(rgba(30, 30, 30, 0.8), rgba(60, 60, 60, 0.8)); }

.mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
  position: absolute;
  left: 0;
  top: 11px;
  width: 50px;
  height: 8px;
  margin: 0;
  padding: 0;
  font-size: 1px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  background: #fff;
  background: rgba(255, 255, 255, 0.8);
  background: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(255, 255, 255, 0.9)), to(rgba(200, 200, 200, 0.8)));
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.9), rgba(200, 200, 200, 0.8));
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.9), rgba(200, 200, 200, 0.8));
  background: -o-linear-gradient(top, rgba(255, 255, 255, 0.9), rgba(200, 200, 200, 0.8));
  background: -ms-linear-gradient(top, rgba(255, 255, 255, 0.9), rgba(200, 200, 200, 0.8));
  background: linear-gradient(rgba(255, 255, 255, 0.9), rgba(200, 200, 200, 0.8)); }

.mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle {
  display: none; }

.mejs-controls .mejs-captions-button {
  position: relative; }

.mejs-controls .mejs-captions-button button {
  background-position: -48px 0; }

.mejs-controls .mejs-captions-button .mejs-captions-selector {
  visibility: hidden;
  position: absolute;
  bottom: 26px;
  right: -51px;
  width: 85px;
  height: 100px;
  background: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/background.png);
  background: rgba(50, 50, 50, 0.7);
  border: solid 1px transparent;
  padding: 10px 10px 0;
  overflow: hidden;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0; }

.mejs-controls .mejs-captions-button:hover .mejs-captions-selector {
  visibility: visible; }

.mejs-controls .mejs-captions-button .mejs-captions-selector ul {
  margin: 0;
  padding: 0;
  display: block;
  list-style-type: none !important;
  overflow: hidden; }

.mejs-controls .mejs-captions-button .mejs-captions-selector ul li {
  margin: 0 0 6px;
  padding: 0;
  list-style-type: none !important;
  display: block;
  color: #fff;
  overflow: hidden; }

.mejs-controls .mejs-captions-button .mejs-captions-selector ul li input {
  clear: both;
  float: left;
  margin: 3px 3px 0 5px; }

.mejs-controls .mejs-captions-button .mejs-captions-selector ul li label {
  width: 55px;
  float: left;
  padding: 4px 0 0;
  line-height: 15px;
  font-family: helvetica,arial;
  font-size: 10px; }

.mejs-controls .mejs-captions-button .mejs-captions-translations {
  font-size: 10px;
  margin: 0 0 5px; }

.mejs-chapters {
  position: absolute;
  top: 0;
  left: 0;
  -xborder-right: solid 1px #fff;
  width: 10000px;
  z-index: 1; }

.mejs-chapters .mejs-chapter {
  position: absolute;
  float: left;
  background: #222;
  background: rgba(0, 0, 0, 0.7);
  background: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(50, 50, 50, 0.7)), to(rgba(0, 0, 0, 0.7)));
  background: -webkit-linear-gradient(top, rgba(50, 50, 50, 0.7), rgba(0, 0, 0, 0.7));
  background: -moz-linear-gradient(top, rgba(50, 50, 50, 0.7), rgba(0, 0, 0, 0.7));
  background: -o-linear-gradient(top, rgba(50, 50, 50, 0.7), rgba(0, 0, 0, 0.7));
  background: -ms-linear-gradient(top, rgba(50, 50, 50, 0.7), rgba(0, 0, 0, 0.7));
  background: linear-gradient(rgba(50, 50, 50, 0.7), rgba(0, 0, 0, 0.7));
  filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr=#323232, endColorstr=#000000);
  overflow: hidden;
  border: 0; }

.mejs-chapters .mejs-chapter .mejs-chapter-block {
  font-size: 11px;
  color: #fff;
  padding: 5px;
  display: block;
  border-right: solid 1px #333;
  border-bottom: solid 1px #333;
  cursor: pointer; }

.mejs-chapters .mejs-chapter .mejs-chapter-block-last {
  border-right: 0; }

.mejs-chapters .mejs-chapter .mejs-chapter-block:hover {
  background: #666;
  background: rgba(102, 102, 102, 0.7);
  background: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(102, 102, 102, 0.7)), to(rgba(50, 50, 50, 0.6)));
  background: -webkit-linear-gradient(top, rgba(102, 102, 102, 0.7), rgba(50, 50, 50, 0.6));
  background: -moz-linear-gradient(top, rgba(102, 102, 102, 0.7), rgba(50, 50, 50, 0.6));
  background: -o-linear-gradient(top, rgba(102, 102, 102, 0.7), rgba(50, 50, 50, 0.6));
  background: -ms-linear-gradient(top, rgba(102, 102, 102, 0.7), rgba(50, 50, 50, 0.6));
  background: linear-gradient(rgba(102, 102, 102, 0.7), rgba(50, 50, 50, 0.6));
  filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr=#666666, endColorstr=#323232); }

.mejs-chapters .mejs-chapter .mejs-chapter-block .ch-title {
  font-size: 12px;
  font-weight: 700;
  display: block;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin: 0 0 3px;
  line-height: 12px; }

.mejs-chapters .mejs-chapter .mejs-chapter-block .ch-timespan {
  font-size: 12px;
  line-height: 12px;
  margin: 3px 0 4px;
  display: block;
  white-space: nowrap;
  text-overflow: ellipsis; }

.mejs-captions-layer {
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: center;
  line-height: 20px;
  font-size: 16px;
  color: #fff; }

.mejs-captions-layer a {
  color: #fff;
  text-decoration: underline; }

.mejs-captions-layer[lang=ar] {
  font-size: 20px;
  font-weight: 400; }

.mejs-captions-position {
  position: absolute;
  width: 100%;
  bottom: 15px;
  left: 0; }

.mejs-captions-position-hover {
  bottom: 35px; }

.mejs-captions-text {
  padding: 3px 5px;
  background: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/background.png);
  background: rgba(20, 20, 20, 0.5);
  white-space: pre-wrap; }

.me-cannotplay a {
  color: #fff;
  font-weight: 700; }

.me-cannotplay span {
  padding: 15px;
  display: block; }

.mejs-controls .mejs-loop-off button {
  background-position: -64px -16px; }

.mejs-controls .mejs-loop-on button {
  background-position: -64px 0; }

.mejs-controls .mejs-backlight-off button {
  background-position: -80px -16px; }

.mejs-controls .mejs-backlight-on button {
  background-position: -80px 0; }

.mejs-controls .mejs-picturecontrols-button {
  background-position: -96px 0; }

.mejs-contextmenu {
  position: absolute;
  width: 150px;
  padding: 10px;
  border-radius: 4px;
  top: 0;
  left: 0;
  background: #fff;
  border: solid 1px #999;
  z-index: 1001; }

.mejs-contextmenu .mejs-contextmenu-separator {
  height: 1px;
  font-size: 0;
  margin: 5px 6px;
  background: #333; }

.mejs-contextmenu .mejs-contextmenu-item {
  font-family: Helvetica,Arial;
  font-size: 12px;
  padding: 4px 6px;
  cursor: pointer;
  color: #333; }

.mejs-contextmenu .mejs-contextmenu-item:hover {
  background: #2C7C91;
  color: #fff; }

.mejs-controls .mejs-sourcechooser-button {
  position: relative; }

.mejs-controls .mejs-sourcechooser-button button {
  background-position: -128px 0; }

.mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector {
  visibility: hidden;
  position: absolute;
  bottom: 26px;
  right: -10px;
  width: 130px;
  height: 100px;
  background: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/background.png);
  background: rgba(50, 50, 50, 0.7);
  border: solid 1px transparent;
  padding: 10px;
  overflow: hidden;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0; }

.mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector ul {
  margin: 0;
  padding: 0;
  display: block;
  list-style-type: none !important;
  overflow: hidden; }

.mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector ul li {
  margin: 0 0 6px;
  padding: 0;
  list-style-type: none !important;
  display: block;
  color: #fff;
  overflow: hidden; }

.mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector ul li input {
  clear: both;
  float: left;
  margin: 3px 3px 0 5px; }

.mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector ul li label {
  width: 100px;
  float: left;
  padding: 4px 0 0;
  line-height: 15px;
  font-family: helvetica,arial;
  font-size: 10px; }

.mejs-postroll-layer {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/background.png);
  background: rgba(50, 50, 50, 0.7);
  z-index: 1000;
  overflow: hidden; }

.mejs-postroll-layer-content {
  width: 100%;
  height: 100%; }

.mejs-postroll-close {
  position: absolute;
  right: 0;
  top: 0;
  background: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/background.png);
  background: rgba(50, 50, 50, 0.7);
  color: #fff;
  padding: 4px;
  z-index: 100;
  cursor: pointer; }

div.mejs-speed-button {
  width: 46px !important;
  position: relative; }

.mejs-controls .mejs-button.mejs-speed-button button {
  background: transparent;
  width: 36px;
  font-size: 11px;
  line-height: normal;
  color: #fff; }

.mejs-controls .mejs-speed-button .mejs-speed-selector {
  display: none;
  position: absolute;
  top: -100px;
  left: -10px;
  width: 60px;
  height: 100px;
  background: url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/background.png);
  background: rgba(50, 50, 50, 0.7);
  border: solid 1px transparent;
  padding: 0;
  overflow: hidden;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0; }

.mejs-controls .mejs-speed-button:hover > .mejs-speed-selector {
  display: block; }

.mejs-controls .mejs-speed-button .mejs-speed-selector ul li label.mejs-speed-selected {
  color: #21f8f8; }

.mejs-controls .mejs-speed-button .mejs-speed-selector ul {
  margin: 0;
  padding: 0;
  display: block;
  list-style-type: none !important;
  overflow: hidden; }

.mejs-controls .mejs-speed-button .mejs-speed-selector ul li {
  margin: 0 0 6px;
  padding: 0 10px;
  list-style-type: none !important;
  display: block;
  color: #fff;
  overflow: hidden; }

.mejs-controls .mejs-speed-button .mejs-speed-selector ul li input {
  clear: both;
  float: left;
  margin: 3px 3px 0 5px;
  display: none; }

.mejs-controls .mejs-speed-button .mejs-speed-selector ul li label {
  width: 60px;
  float: left;
  padding: 4px 0 0;
  line-height: 15px;
  font-family: helvetica,arial;
  font-size: 11.5px;
  color: #fff;
  margin-left: 5px;
  cursor: pointer; }

.mejs-controls .mejs-speed-button .mejs-speed-selector ul li:hover {
  background-color: #c8c8c8 !important;
  background-color: rgba(255, 255, 255, 0.4) !important; }

.mejs-controls .mejs-button.mejs-jump-forward-button {
  background: transparent url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/jumpforward.png) no-repeat;
  background-position: 3px 3px; }

.mejs-controls .mejs-button.mejs-jump-forward-button button {
  background: transparent;
  font-size: 9px;
  line-height: normal;
  color: #fff; }

.mejs-controls .mejs-button.mejs-skip-back-button {
  background: transparent url(/ui/js/vendor/sitejs/lib/components/ui-mediaelement/src/skipback.png) no-repeat;
  background-position: 3px 3px; }

.mejs-controls .mejs-button.mejs-skip-back-button button {
  background: transparent;
  font-size: 9px;
  line-height: normal;
  color: #fff; }

.ui-mediaelement {
  width: 100%;
  padding-top: 57.25%;
  padding-top: 56.25%;
  position: relative;
  display: block;
  overflow: hidden; }
  .ui-mediaelement > .mejs-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    display: block;
    background: transparent; }
    .ui-mediaelement > .mejs-container .mejs-layers,
    .ui-mediaelement > .mejs-container .mejs-layer {
      width: 100% !important;
      height: 100% !important; }
    .ui-mediaelement > .mejs-container .mejs-mediaelement {
      width: 100% !important;
      height: 100% !important; }
      .ui-mediaelement > .mejs-container .mejs-mediaelement * {
        width: 100% !important;
        height: 100% !important; }

/* v1.0.5 */
/* Core RS CSS file. 95% of time you shouldn't change anything here. */
.royalSlider {
  width: 600px;
  height: 400px;
  position: relative;
  direction: ltr; }

.royalSlider > * {
  float: left; }

.rsWebkit3d .rsSlide {
  -webkit-transform: translateZ(0); }

.rsWebkit3d .rsSlide,
.rsWebkit3d .rsContainer,
.rsWebkit3d .rsThumbs,
.rsWebkit3d .rsPreloader,
.rsWebkit3d img,
.rsWebkit3d .rsOverflow,
.rsWebkit3d .rsBtnCenterer,
.rsWebkit3d .rsAbsoluteEl,
.rsWebkit3d .rsABlock,
.rsWebkit3d .rsLink {
  -webkit-backface-visibility: hidden; }

.rsFade.rsWebkit3d .rsSlide,
.rsFade.rsWebkit3d img,
.rsFade.rsWebkit3d .rsContainer {
  -webkit-transform: none; }

.rsOverflow {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  float: left;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rsVisibleNearbyWrap {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  left: 0;
  top: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rsVisibleNearbyWrap .rsOverflow {
  position: absolute;
  left: 0;
  top: 0; }

.rsContainer {
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rsArrow,
.rsThumbsArrow {
  cursor: pointer; }

.rsThumb {
  float: left;
  position: relative; }

.rsArrow,
.rsNav,
.rsThumbsArrow {
  opacity: 1;
  -webkit-transition: opacity 0.3s linear;
  -moz-transition: opacity 0.3s linear;
  -o-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear; }

.rsHidden {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: visibility 0s linear 0.3s,opacity 0.3s linear;
  -moz-transition: visibility 0s linear 0.3s,opacity 0.3s linear;
  -o-transition: visibility 0s linear 0.3s,opacity 0.3s linear;
  transition: visibility 0s linear 0.3s,opacity 0.3s linear; }

.rsGCaption {
  width: 100%;
  float: left;
  text-align: center; }

/* Fullscreen options, very important ^^ */
.royalSlider.rsFullscreen {
  position: fixed !important;
  height: auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 2147483647 !important;
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  right: 0 !important; }

.royalSlider .rsSlide.rsFakePreloader {
  opacity: 1 !important;
  -webkit-transition: 0s;
  -moz-transition: 0s;
  -o-transition: 0s;
  transition: 0s;
  display: none; }

.rsSlide {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  overflow: hidden;
  height: 100%;
  width: 100%; }

.royalSlider.rsAutoHeight,
.rsAutoHeight .rsSlide {
  height: auto; }

.rsContent {
  width: 100%;
  height: 100%;
  position: relative; }

.rsPreloader {
  position: absolute;
  z-index: 0; }

.rsNav {
  -moz-user-select: -moz-none;
  -webkit-user-select: none;
  user-select: none; }

.rsNavItem {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.25); }

.rsThumbs {
  cursor: pointer;
  position: relative;
  overflow: hidden;
  float: left;
  z-index: 22; }

.rsTabs {
  float: left;
  background: none !important; }

.rsTabs,
.rsThumbs {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rsVideoContainer {
  /*left: 0;
  top: 0;
  position: absolute;*/
  /*width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  float: left;*/
  width: auto;
  height: auto;
  line-height: 0;
  position: relative; }

.rsVideoFrameHolder {
  position: absolute;
  left: 0;
  top: 0;
  background: #141414;
  opacity: 0;
  -webkit-transition: .3s; }

.rsVideoFrameHolder.rsVideoActive {
  opacity: 1; }

.rsVideoContainer iframe,
.rsVideoContainer video,
.rsVideoContainer embed,
.rsVideoContainer .rsVideoObj {
  position: absolute;
  z-index: 50;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%; }

/* ios controls over video bug, shifting video */
.rsVideoContainer.rsIOSVideo iframe,
.rsVideoContainer.rsIOSVideo video,
.rsVideoContainer.rsIOSVideo embed {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 44px; }

.rsABlock {
  left: 0;
  top: 0;
  position: absolute;
  z-index: 15; }

img.rsImg {
  max-width: none; }

.grab-cursor {
  cursor: url(grab.png) 8 8, move; }

.grabbing-cursor {
  cursor: url(grabbing.png) 8 8, move; }

.rsNoDrag {
  cursor: auto; }

.rsLink {
  left: 0;
  top: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 20;
  background: url(blank.gif); }

/**
 * Components
 */
.Columns {
  white-space: nowrap; }

.Column {
  display: inline-block;
  width: 100%;
  white-space: normal;
  vertical-align: top; }
  @media (max-width: 745px) {
    .Column {
      width: 100% !important; } }

.Column--even:before,
.Column--odd:before {
  content: '';
  width: 100%;
  display: block;
  padding-top: 33%; }

.Column--2 {
  width: 50%; }

.Column--3 {
  width: 33.333333333%; }

.Column--4 {
  width: 25%; }

.Column--5 {
  width: 20%; }

/** @define Grid */
/**
 * Grid
 */
.Layout {
  position: relative; }

.Layout-row {
  position: relative;
  height: auto;
  box-sizing: content-box; }

@media (min-width: 746px) {
  .Layout-item {
    position: absolute;
    top: 0;
    left: 0; } }
@media (max-width: 745px) {
  .Layout-item {
    /* margin-bottom:(1/14) * 100vw; */ } }

.Layout-image--mobile {
  display: none; }

@media (orientation: portrait) {
  .Layout-image--mobile {
    display: block;
    /* .Site--playsinline & {
    	display: none;
    } */ }

  .Layout-image--desktop {
    display: none;
    /* .Site--playsinline & {
    	display: block;
    } */ } }
.Layout-item--text {
  opacity: 0;
  padding: 15px; }
  @media (max-width: 745px) {
    .Layout-item--text {
      padding: 45px 15px 30px 15px; } }
  .Layout-item--text p {
    margin-bottom: 15px;
    font-size: 28px;
    font-size: 2.05vw; }
    @media (max-width: 1024.3902439024px) {
      .Layout-item--text p {
        font-size: 21px; } }
    @media (min-width: 2926.8292682927px) {
      .Layout-item--text p {
        font-size: 60px; } }
  .Layout-item--text.Layout-item--small p {
    font-size: 18px;
    font-size: 1.32vw; }
    @media (max-width: 1363.6363636364px) {
      .Layout-item--text.Layout-item--small p {
        font-size: 18px; } }
    @media (min-width: 3030.303030303px) {
      .Layout-item--text.Layout-item--small p {
        font-size: 40px; } }
  .Layout-item--text.Layout-item--large {
    padding: 7.1428571429vw 15px; }
    .Layout-item--text.Layout-item--large p {
      font-size: 48px;
      font-size: 2.8vw; }
      @media (max-width: 1142.8571428571px) {
        .Layout-item--text.Layout-item--large p {
          font-size: 32px; } }
      @media (min-width: 2678.5714285714px) {
        .Layout-item--text.Layout-item--large p {
          font-size: 75px; } }
  .Layout-item--text.Layout-item--large {
    padding: 7.1428571429vw 15px; }
  .Layout-item--text.Layout-item--left p {
    text-align: left; }
  .Layout-item--text.Layout-item--centre p {
    text-align: center; }
  .Layout-item--text.Layout-item--right p {
    text-align: right; }
  @media (min-width: 746px) {
    .Layout-item--text.Layout-item--removePadding {
      padding: 0; } }

.Layout-caption {
  padding: 10px 0; }
  @media (max-width: 745px) {
    .Layout-caption {
      padding: 10px 15px; } }

@media (min-width: 746px) {
  [data-layout-colspan="1"] {
    width: 7.1428571429%; } }

@media (min-width: 746px) {
  [data-layout-offset="1"] {
    left: 7.1428571429%; } }

@media (min-width: 746px) {
  [data-layout-colspan="2"] {
    width: 14.2857142857%; } }

@media (min-width: 746px) {
  [data-layout-offset="2"] {
    left: 14.2857142857%; } }

@media (min-width: 746px) {
  [data-layout-colspan="3"] {
    width: 21.4285714286%; } }

@media (min-width: 746px) {
  [data-layout-offset="3"] {
    left: 21.4285714286%; } }

@media (min-width: 746px) {
  [data-layout-colspan="4"] {
    width: 28.5714285714%; } }

@media (min-width: 746px) {
  [data-layout-offset="4"] {
    left: 28.5714285714%; } }

@media (min-width: 746px) {
  [data-layout-colspan="5"] {
    width: 35.7142857143%; } }

@media (min-width: 746px) {
  [data-layout-offset="5"] {
    left: 35.7142857143%; } }

@media (min-width: 746px) {
  [data-layout-colspan="6"] {
    width: 42.8571428571%; } }

@media (min-width: 746px) {
  [data-layout-offset="6"] {
    left: 42.8571428571%; } }

@media (min-width: 746px) {
  [data-layout-colspan="7"] {
    width: 50%; } }

@media (min-width: 746px) {
  [data-layout-offset="7"] {
    left: 50%; } }

@media (min-width: 746px) {
  [data-layout-colspan="8"] {
    width: 57.1428571429%; } }

@media (min-width: 746px) {
  [data-layout-offset="8"] {
    left: 57.1428571429%; } }

@media (min-width: 746px) {
  [data-layout-colspan="9"] {
    width: 64.2857142857%; } }

@media (min-width: 746px) {
  [data-layout-offset="9"] {
    left: 64.2857142857%; } }

@media (min-width: 746px) {
  [data-layout-colspan="10"] {
    width: 71.4285714286%; } }

@media (min-width: 746px) {
  [data-layout-offset="10"] {
    left: 71.4285714286%; } }

@media (min-width: 746px) {
  [data-layout-colspan="11"] {
    width: 78.5714285714%; } }

@media (min-width: 746px) {
  [data-layout-offset="11"] {
    left: 78.5714285714%; } }

@media (min-width: 746px) {
  [data-layout-colspan="12"] {
    width: 85.7142857143%; } }

@media (min-width: 746px) {
  [data-layout-offset="12"] {
    left: 85.7142857143%; } }

@media (min-width: 746px) {
  [data-layout-colspan="13"] {
    width: 92.8571428571%; } }

@media (min-width: 746px) {
  [data-layout-offset="13"] {
    left: 92.8571428571%; } }

@media (min-width: 746px) {
  [data-layout-colspan="14"] {
    width: 100%; } }

@media (min-width: 746px) {
  [data-layout-offset="14"] {
    left: 100%; } }

@media (min-width: 746px) {
  [data-layout-top="middle"] {
    top: 50%;
    transform: translateY(-50%); } }

@media (min-width: 746px) {
  [data-layout-top="bottom"] {
    bottom: 0%;
    top: auto; } }

@media (min-width: 746px) {
  [data-layout-top="1"] {
    top: 7.1428571429vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="1"] {
    margin-bottom: 7.1428571429vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="1"] {
    padding-bottom: 7.1428571429vw; } }

@media (min-width: 746px) {
  [data-layout-top="2"] {
    top: 14.2857142857vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="2"] {
    margin-bottom: 14.2857142857vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="2"] {
    padding-bottom: 14.2857142857vw; } }

@media (min-width: 746px) {
  [data-layout-top="3"] {
    top: 21.4285714286vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="3"] {
    margin-bottom: 21.4285714286vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="3"] {
    padding-bottom: 21.4285714286vw; } }

@media (min-width: 746px) {
  [data-layout-top="4"] {
    top: 28.5714285714vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="4"] {
    margin-bottom: 28.5714285714vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="4"] {
    padding-bottom: 28.5714285714vw; } }

@media (min-width: 746px) {
  [data-layout-top="5"] {
    top: 35.7142857143vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="5"] {
    margin-bottom: 35.7142857143vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="5"] {
    padding-bottom: 35.7142857143vw; } }

@media (min-width: 746px) {
  [data-layout-top="6"] {
    top: 42.8571428571vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="6"] {
    margin-bottom: 42.8571428571vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="6"] {
    padding-bottom: 42.8571428571vw; } }

@media (min-width: 746px) {
  [data-layout-top="7"] {
    top: 50vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="7"] {
    margin-bottom: 50vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="7"] {
    padding-bottom: 50vw; } }

@media (min-width: 746px) {
  [data-layout-top="8"] {
    top: 57.1428571429vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="8"] {
    margin-bottom: 57.1428571429vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="8"] {
    padding-bottom: 57.1428571429vw; } }

@media (min-width: 746px) {
  [data-layout-top="9"] {
    top: 64.2857142857vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="9"] {
    margin-bottom: 64.2857142857vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="9"] {
    padding-bottom: 64.2857142857vw; } }

@media (min-width: 746px) {
  [data-layout-top="10"] {
    top: 71.4285714286vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="10"] {
    margin-bottom: 71.4285714286vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="10"] {
    padding-bottom: 71.4285714286vw; } }

@media (min-width: 746px) {
  [data-layout-top="11"] {
    top: 78.5714285714vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="11"] {
    margin-bottom: 78.5714285714vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="11"] {
    padding-bottom: 78.5714285714vw; } }

@media (min-width: 746px) {
  [data-layout-top="12"] {
    top: 85.7142857143vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="12"] {
    margin-bottom: 85.7142857143vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="12"] {
    padding-bottom: 85.7142857143vw; } }

@media (min-width: 746px) {
  [data-layout-top="13"] {
    top: 92.8571428571vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="13"] {
    margin-bottom: 92.8571428571vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="13"] {
    padding-bottom: 92.8571428571vw; } }

@media (min-width: 746px) {
  [data-layout-top="14"] {
    top: 100vw; } }

@media (min-width: 746px) {
  [data-layout-spaces="14"] {
    margin-bottom: 100vw; } }

@media (min-width: 746px) {
  [data-layout-padding-bottom="14"] {
    padding-bottom: 100vw; } }

/** @define List */
/**
 * List
 */
.List--preview li {
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0; }
  .List--preview li.is-active {
    opacity: 1; }

.Navigation--categories {
  width: 100%; }
  .Site--hoverScroll .Navigation--categories li.Navigation-item--large {
    display: none; }
  @media (max-width: 745px) {
    .Navigation--categories li {
      opacity: 0;
      pointer-events: none; }
      .Navigation--categories li.is-inactive {
        opacity: 0;
        display: none; }
      .Navigation--categories li.Navigation-item--large {
        opacity: 1;
        pointer-events: none; }
        .Navigation--categories li.Navigation-item--large.is-inactive {
          opacity: 0; }
      .Site-nav.is-active .Navigation--categories li {
        opacity: 1;
        pointer-events: all; }
        .Site-nav.is-active .Navigation--categories li.is-inactive {
          opacity: 0; } }
  .Navigation--categories a {
    color: #2e2d2c;
    border-bottom: 2px solid transparent;
    display: inline-block;
    text-transform: lowercase; }
    .Navigation--categories a:hover {
      opacity: 1;
      border-bottom: 2px solid #2e2d2c; }
  .Navigation--categories li {
    display: inline-block;
    transition: opacity 0.4s ease; }
    .Navigation--categories li.Navigation-item--large {
      width: 100%; }
      .Navigation--categories li.Navigation-item--large i, .Navigation--categories li.Navigation-item--large em {
        font-style: normal;
        display: none; }
      .Navigation--categories li.Navigation-item--large:after {
        display: none; }
      .Site-nav.is-active .Navigation--categories li.Navigation-item--large i, .Site-nav.is-active .Navigation--categories li.Navigation-item--large em {
        display: inline; }
    .Navigation--categories li:after {
      content: ',';
      padding-right: 5px; }
    .Navigation--categories li.is-active a:hover {
      opacity: 1 !important;
      border-bottom: 2px solid transparent; }
    .Navigation--categories li.is-active:after {
      opacity: 0; }
    .Navigation--categories li.is-active a:before {
      content: '';
      display: inline-block;
      width: 15px;
      height: 10px;
      margin-right: 3px; }
    .Navigation--categories li.is-inactive {
      opacity: 0; }
    .Navigation--categories li.is-highlight {
      opacity: 1 !important; }
    .Navigation--categories li.is-nothighlight {
      opacity: 0 !important; }
    .Navigation--categories li:last-child:after {
      content: '.';
      padding-right: 0; }
  .Navigation--categories:hover li.is-inactive {
    opacity: 0.5; }

/** @define Site */
/**
 * Site structure
 *
 * Top level architecture.
 */
.Site {
  overflow: hidden;
  height: 100%;
  width: 100%; }
  .Site body {
    overflow: hidden;
    height: 100%;
    width: 100%; }

.Site-body .Site-nav {
  display: none; }

.Site--homepage .Site-nav {
  display: none; }
  .Site--splashScrolled .Site--homepage .Site-nav {
    display: block; }
.Site--homepage .Site-body .Site-nav {
  display: block;
  top: calc(100% + 15px); }
  @media (max-width: 745px) {
    .Site--homepage .Site-body .Site-nav {
      top: 100%; } }
  .Site--splashScrolled .Site--homepage .Site-body .Site-nav {
    display: none; }
.Site--homepage .Site-infoTrigger {
  display: none; }
.Site--homepage.Site--splashScrolled .Site-nav {
  display: block; }
.Site--homepage.Site--splashScrolled .Site-infoTrigger {
  display: block; }
.Site--homepage.Site--splashScrolled .Site-scrollTrigger {
  display: none; }
.Site--homepage.Site--splashScrolled .Site-body .Site-nav {
  display: none; }
.Site--homepage .Site-scrollTrigger {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s; }
.Site--homepage.Site--complete .Site-scrollTrigger {
  opacity: 1;
  pointer-events: all; }

.Site-splash {
  position: static;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 9;
  overflow: hidden; }
  .Site-splash .Site-logo {
    display: block; }
  .Site-splash .Slides {
    width: 100%;
    height: 100%;
    cursor: pointer;
    position: relative;
    overflow: hidden; }
    .Site-splash .Slides .Slide {
      position: absolute;
      top: 0px;
      left: 0px;
      width: 100%;
      height: 100%;
      opacity: 0;
      transition: opacity 1s; }
      .Site-splash .Slides .Slide > div {
        width: 100%;
        height: 100%;
        background-position: center;
        background-size: cover; }
      .Site-splash .Slides .Slide .Slide-mobile {
        display: none; }
      @media (max-width: 745px) {
        .Site-splash .Slides .Slide .Slide-mobile {
          display: block; }
        .Site-splash .Slides .Slide .Slide-desktop {
          display: none; } }
      .Site-splash .Slides .Slide img {
        display: none; }
      .Site-splash .Slides .Slide.is-active {
        opacity: 1; }
  .Site--splashScrolled .Site-splash {
    display: none; }

.Site-scroll {
  height: 100%; }

.Site-meta {
  display: none !important; }

.Site-page {
  opacity: 0; }

.Site-logo {
  pointer-events: none; }

.Site-heading {
  text-transform: uppercase; }
  .Site-heading span {
    text-transform: lowercase; }
  @media (max-width: 745px) {
    .Site-heading {
      display: none; }
      .Site--hoverScroll .Site-heading {
        display: block; }
      .Site--filtered .Site-heading {
        display: block; }
        .Site--filtered .Site-heading span {
          display: none; } }

.Site-nav {
  position: absolute;
  top: 15px;
  text-align: center;
  width: 100%; }
  @media (max-width: 745px) {
    .Site-nav {
      /* display:none; */
      top: 0px;
      padding: 15px; }
      .Site-nav.is-active {
        background-color: white; }
        .Site-nav.is-active .Site-heading {
          display: none; }
        .Site-nav.is-active .Navigation--categories li.Navigation-item--large {
          display: block; }
      .Site--filtered .Site-nav {
        background-color: transparent !important; }
        .Site--filtered .Site-nav .Site-heading {
          display: block; }
        .Site--filtered .Site-nav .Navigation--categories li.Navigation-item--large {
          display: none; } }
  @media (min-width: 746px) {
    .Site-nav {
      width: 50%;
      left: 50%;
      transform: translateX(-50%); } }

.Site-zoom {
  position: fixed;
  bottom: 15px;
  right: 15px;
  display: none; }
  .Site-zoom li {
    display: inline-block;
    margin-left: 10px;
    vertical-align: top; }
    @media (max-width: 745px) {
      .Site-zoom li {
        margin-left: 20px; } }

.Site-burger {
  display: none; }
  .Site-burger a {
    text-indent: -3000px;
    display: inline-block;
    width: 20px;
    height: 20px;
    background-color: black;
    border-radius: 10px; }
  @media (max-width: 745px) {
    .Site-burger {
      display: block; } }

/* Layers */
.Site-body {
  z-index: 1; }

.Site-zoom {
  z-index: 2; }

.Site-nav {
  z-index: 2; }

.Site-info {
  z-index: 3; }

.Site-foot {
  z-index: 4; }

.Site-project {
  z-index: 5; }

.Site-body, .Site-project, .Site-info {
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #FAFAFA; }

.Site-project, .Site-info {
  pointer-events: none; }

.Site-project {
  transition: opacity 0.6s ease; }
  .Site-project #project {
    height: 100%; }

.Site--loaded .Site-info {
  transition: opacity 0.6s ease; }

.Site--loaded.Site--info .Site-info {
  opacity: 1;
  pointer-events: all; }

.Site--project .Site-project {
  opacity: 1;
  pointer-events: all; }

.Site-logo {
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  width: 90%;
  transform: translate(-50%, -50%);
  opacity: 1;
  transition: opacity 0.5s;
  transition-delay: 2s;
  display: none; }
  .Site--loaded .Site-logo {
    opacity: 0; }
  .Site--homepage .Site-logo {
    opacity: 1; }
  .Site--splashScrolled .Site-logo {
    transition-delay: 0s;
    opacity: 0 !important; }

.Site--project .Site-logo {
  display: none; }

.Site-foot {
  position: fixed;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%); }

.Site-infoTrigger, .Site-scrollTrigger {
  cursor: pointer; }

/** @define Template */
/**
 * Template
 */
.Template--home {
  width: 92.8571428571%;
  margin: 0 auto;
  padding-top: 3.5714285714vw;
  transform: translate3D(0, 0, 0);
  backface-visibility: hidden; }
  @media (max-width: 745px) {
    .Template--home {
      padding-top: 150px;
      padding-bottom: 100px; } }

.Template--project {
  height: 100%; }
  .Template--project .Template-title {
    display: none; }
  .Template--project .Template-sliderClose {
    position: absolute;
    z-index: 6;
    top: 15px;
    right: 15px; }
  .Template--project .Template-slider {
    pointer-events: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease; }
  .Template--project.Template--slideshow .Template-slider {
    opacity: 1;
    pointer-events: all; }
  .Template--project .Template-intro {
    position: fixed;
    top: 10%;
    right: 10%;
    bottom: 10%;
    left: 10%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    pointer-events: none;
    z-index: 5; }
    .Template--project .Template-intro svg{
	    height: 100%;
	    width: auto;
	    margin: 0 auto;
	    }
	.Template--project .Template-intro--svg{
	    text-align: center;
	    }
    .Template--project .Template-intro.Template-intro--full {
      left: 0%;
      right: 0%; }
  .Template--project .Template-head {
    position: fixed;
    top: 15px;
    left: 50%;
    transform: translateX(-50%);
    width: 92.8571428571%;
    z-index: 5; }
    .Template--project .Template-head a {
      color: #2e2d2c;
      text-transform: lowercase; }
  .Template--project .Template-bg {
    height: 100%; }
  .Template--project .Template-content {
    opacity: 0;
    min-height: 100%;
    transform: translate3D(0, 0, 0);
    backface-visibility: hidden; }
  .Template--project .Template-prev {
    position: absolute;
    left: 0;
    top: 0; }
    .Template--project .Template-prev:before {
      content: '\2190\00a0'; }
  .Template--project .Template-close {
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%); }
  .Template--project .Template-next {
    position: absolute;
    right: 0;
    top: 0; }
    .Template--project .Template-next:after {
      content: '\00a0\2192'; }

.Template--about {
  position: relative;
  height: 100vh;
  width: 100%;
  margin: 0 auto;
  text-align: center; }
  .Template--about .Template-body {
    position: relative;
    padding-top: 10vh;
    padding-bottom: 10vh;
    width: 85.7142857143%;
    margin: 0 auto; }
  .Template--about .Template-section {
    width: 80%;
    max-width: 500px;
    margin: 0 auto;
    margin-bottom: 65px; }
    @media (min-width: 1024px) {
      .Template--about .Template-section {
        width: 25%;
        display: inline-block;
        vertical-align: top;
        padding: 15px;
        margin-bottom: 0; } }
  .Template--about .Template-heading {
    border-bottom: 2px solid #2e2d2c;
    padding: 5px;
    text-align: center;
    margin-bottom: 15px;
    font-size: 18px;
    font-size: 1.32vw; }
    @media (max-width: 1363.6363636364px) {
      .Template--about .Template-heading {
        font-size: 18px; } }
    @media (min-width: 3030.303030303px) {
      .Template--about .Template-heading {
        font-size: 40px; } }
  .Template--about .Template-content {
    text-align: left; }

.Article-head {
  display: none; }

.Article {
  cursor: pointer;
  position: relative;
  padding-bottom: 1px; }
  .Site--no-touch .Article {
    pointer-events: none; }
  .Article .Article-media {
    pointer-events: all;
    transition: opacity 0.4s ease; }
    .Article .Article-media:hover {
      opacity: 0.7; }
  @media (max-width: 745px) {
    .Article {
      padding-bottom: 130px; } }

.Article-media {
  position: relative;
  margin: 3.5714285714vw; }

.Content--about a {
  color: black;
  border-bottom: 2px solid #2e2d2c; }
  .Content--about a:hover {
    border-bottom: 2px solid transparent; }
.Content--about p {
  margin-bottom: 15px;
  /* 1.32wv */
  font-size: 18px;
  font-size: 1.32vw; }
  @media (max-width: 1363.6363636364px) {
    .Content--about p {
      font-size: 18px; } }
  @media (min-width: 3030.303030303px) {
    .Content--about p {
      font-size: 40px; } }

.Content--also p {
  font-size: 18px;
  font-size: 1.32vw; }
  @media (max-width: 1363.6363636364px) {
    .Content--also p {
      font-size: 18px; } }
  @media (min-width: 3030.303030303px) {
    .Content--also p {
      font-size: 40px; } }
.Content--also a {
  font-style: italic;
  color: #2e2d2c; }

.Form {
  position: relative;
  margin-top: 15px;
  margin-bottom: 15px; }
  .Form h3 {
    font-size: 18px;
    font-size: 1.32vw; }
    @media (max-width: 1363.6363636364px) {
      .Form h3 {
        font-size: 18px; } }
    @media (min-width: 3030.303030303px) {
      .Form h3 {
        font-size: 40px; } }
  .Form input[type="email"] {
    display: inline-block;
    background: transparent;
    border-bottom: 2px solid black;
    width: 70%;
    font-size: 18px;
    font-size: 1.32vw; }
    @media (max-width: 1363.6363636364px) {
      .Form input[type="email"] {
        font-size: 18px; } }
    @media (min-width: 3030.303030303px) {
      .Form input[type="email"] {
        font-size: 40px; } }
    @media (max-width: 745px) {
      .Form input[type="email"] {
        width: 80%; } }
  .Form input[type="submit"] {
    display: block;
    background: transparent;
    width: 30%;
    position: absolute;
    top: 24px;
    left: 70%;
    text-align: left;
    padding-left: 12px;
    font-size: 18px;
    font-size: 1.32vw; }
    @media (max-width: 1363.6363636364px) {
      .Form input[type="submit"] {
        font-size: 18px; } }
    @media (min-width: 3030.303030303px) {
      .Form input[type="submit"] {
        font-size: 40px; } }
    @media (max-width: 745px) {
      .Form input[type="submit"] {
        left: 80%;
        top: 26px; } }

.Site-infoTrigger .Icon--cross {
  display: none; }

.Site--info .Site-infoTrigger .Icon--info {
  display: none; }

.Site--info .Site-infoTrigger .Icon--cross {
  display: block; }

.Image .ui-lazyImage-bg {
  transition: opacity 0.8s ease;
  background-repeat: no-repeat; }
.Image img {
  display: block;
  max-width: none;
  width: 100%; }

.Image--slow.ui-lazyImage--loaded > * {
  transition: opacity 2s 0.6s ease; }

/* mute icon */
.Image-media--video.Image-media--mutable .Image-mute {
  display: block;
  position: absolute;
  width: 20px;
  height: 16px;
  left: 15px;
  bottom: 15px;
  background-size: 20px 16px;
  background-repeat: no-repeat;
  background-image: url(/ui/img/icons/mute.svg);
  cursor: pointer;
  z-index: 3;
  opacity: 0.7; }
.Image-media--video.Image-media--mutable.is-unmuted .Image-mute {
  background-image: url(/ui/img/icons/unmute.svg); }

.Image--tile {
  padding-top: 100%;
  height: 0; }
  .Image--tile img {
    display: block;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .Image--tile video {
    display: block;
    margin: 0 auto;
    position: absolute;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%); }
  .Image--tile .ui-lazyImage-bg {
    transition: none;
    background-size: contain;
    background-repeat: no-repeat; }
  .Image--tile.Image--portrait img {
    height: 100%;
    width: auto; }
  .Image--tile.Image--landscape img {
    height: auto;
    width: 100%; }
  .Image--tile.Image--portrait video {
    height: 100% !important;
    width: auto !important; }
  .Image--tile.Image--landscape video {
    height: auto !important;
    width: 100% !important; }

@keyframes demo-x {
  from {
    background-position-x: 0; }
  to {
    background-position-x: -100px; } }
@keyframes demo-y {
  from {
    background-position-y: 0; }
  to {
    background-position-y: -1400px; } }
.Loader {
  display: block;
  width: 100px;
  height: 200px;
  overflow: hidden;
  background-image: url(/ui/img/sprites/demo.png);
  background-size: 100px 1400px;
  background-position: 0 0;
  animation-name: demo-x, demo-y;
  animation-duration: 0.3s, 2.1s;
  animation-iteration-count: infinite;
  animation-timing-function: steps(1), steps(7); }

.Loader * {
  display: none; }

.Logo {
  padding-top: 11.3737075332%;
  background-image: url(/ui/img/logo.svg); }

.Panel {
  width: 100vw;
  height: 100vh;
  position: relative; }
  .Panel .Panel-browser {
    background: #333;
    width: 100%;
    height: 100%;
    top: 0%;
    left: 0%;
    position: absolute;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    transform: scale3D(0.8, 0.8, 1);
    transform-origin: 50% 50%; }
  .Panel .Panel-inset {
    width: 80%;
    height: 80%;
    top: 50%;
    left: 50%;
    position: absolute;
    transform: translate(-50%, -50%); }
  .Panel .Panel-viewport {
    top: 30px;
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    overflow: hidden;
    background: #FFF; }
    .Panel .Panel-viewport iframe {
      width: 100%;
      height: 100%; }

.Panel--intro {
  height: 75vh; }

/**/
