/*
*
* Fractions Front End Framework
* V1.5 - No Compass!
*
*/
/*
* App:Core - 3rdParty
*/
/* ==========================================================================
   Normalize.scss settings
   ========================================================================== */
/**
 * Includes legacy browser support IE6/7
 *
 * Set to false if you want to drop support for IE6 and IE7
 */
/* Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *  user zoom.
 * 3. Corrects text resizing oddly in IE 6/7 when body `font-size` is set using
 *  `em` units.
 */
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, menu, nav, section, summary {
  display: block; }

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

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

/**
 * Addresses 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
   ========================================================================== */
/**
 * 1. Remove border when inside `a` element in IE 8/9/10.
 * 2. Improves image quality when scaled in IE 7.
 */
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.
 * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
 */
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.
 * 4. Improves appearance and consistency in all browsers.
 */
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.
 * 4. Removes inner spacing in IE 7 without affecting normal text inputs.
 *  Known issue: inner spacing remains in IE 6.
 */
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; }

/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 *  Known issue: excess padding remains in IE 6.
 */
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.
 * 3. Corrects text not wrapping in Firefox 3.
 * 4. Corrects alignment displayed oddly in IE 6/7.
 */
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; }

/*
* App:Extend - Config
*/
/*
*
* Default - Colors Config
* Base color variables
* Overwrite in extend/config/colors
*
*/
/* Brand
------------------------------------------*/
/* Common
------------------------------------------*/
/* States
------------------------------------------*/
/* Social Networks
------------------------------------------*/
/* Extend Config Colors
------------------------------------------*/
/*
*
* Default - Fonts Config
* Base font mixins/variables
* Overwrite in extend/config/fonts
*
*/
/* Extend Config Fonts
------------------------------------------*/
/* Custom Fonts
------------------------------------------*/
@font-face {
  font-family: "rouge";
  src: url('../fonts/rougescript-regular-webfont.eot');
  src: url('../fonts/rougescript-regular-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/rougescript-regular-webfont.woff2') format('woff2'), url('../fonts/rougescript-regular-webfont.woff') format('woff'), url('../fonts/rougescript-regular-webfont.ttf') format('truetype'), url('../fonts/rougescript-regular-webfont.svg#rouge_scriptregular') format('svg');
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "fertigo";
  src: url('../fonts/fertigo_pro-webfont-webfont.eot');
  src: url('../fonts/fertigo_pro-webfont-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/fertigo_pro-webfont-webfont.woff2') format('woff2'), url('../fonts/fertigo_pro-webfont-webfont.woff') format('woff'), url('../fonts/fertigo_pro-webfont-webfont.ttf') format('truetype'), url('../fonts/fertigo_pro-webfont-webfont.svg#_.regular') format('svg');
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "leckerlioneregular";
  src: url('../fonts/LeckerliOne-Regular-webfont.eot');
  src: url('../fonts/LeckerliOne-Regular-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/LeckerliOne-Regular-webfont.woff2') format('woff2'), url('../fonts/LeckerliOne-Regular-webfont.woff') format('woff'), url('../fonts/LeckerliOne-Regular-webfont.ttf') format('truetype'), url('../fonts/LeckerliOne-Regular-webfont.svg#leckerlioneregular') format('svg');
  font-weight: normal;
  font-style: normal; }

/*
*
* Default - Layout Config
* Base layout variables
* Overwrite in extend/config/layout
*
*/
/* Grid/Managed gutters
------------------------------------------*/
/* Media Queries - Horz
------------------------------------------*/
/* Media Queries - Vert
------------------------------------------*/
/* Media Queries - Other
------------------------------------------*/
/* Extend Config Layout
------------------------------------------*/
/*
*
* Default - Sizing Config
* Base sizing variables
* Overwrite in extend/config/sizing
*
*/
/* Sizing Vars
------------------------------------------*/
/* Navs
------------------------------------------*/
/* Spacer Units
------------------------------------------*/
/* Font Vars
------------------------------------------*/
/* Extend Config Sizing
------------------------------------------*/
/*
* App:Additional
*/
/*
SCSS variables are information about icon's compiled state, stored under its original file name

.icon-home {
  width: $icon-home-width;
}

The large array-like variables contain all information about a single icon
$icon-home: x y offset_x offset_y width height total_width total_height image_path;
*/
/*
The provided mixins are intended to be used with the array-like variables

.icon-home {
  @include sprite-width($icon-home);
}

.icon-email {
  @include sprite($icon-email);
}
*/
/*
SCSS variables are information about icon's compiled state, stored under its original file name

.icon-home {
  width: $icon-home-width;
}

The large array-like variables contain all information about a single icon
$icon-home: x y offset_x offset_y width height total_width total_height image_path;
*/
/*
The provided mixins are intended to be used with the array-like variables

.icon-home {
  @include sprite-width($icon-home);
}

.icon-email {
  @include sprite($icon-email);
}
*/
.preview-icons i {
  display: inline-block;
  border: 1px solid #000;
  padding: 20px;
  margin: 20px;
  min-width: 75px;
  min-height: 62px;
  text-align: center; }

.panel--icons {
  max-width: 100% !important; }

@font-face {
  font-family: 'icomoon';
  src: url('../fonts/icomoon.eot?-pp2r6b');
  src: url('../fonts/icomoon.eot?#iefix-pp2r6b') format('embedded-opentype'), url('../fonts/icomoon.woff?-pp2r6b') format('woff'), url('../fonts/icomoon.ttf?-pp2r6b') format('truetype'), url('../fonts/icomoon.svg?-pp2r6b#icomoon') format('svg');
  font-weight: normal;
  font-style: normal; }

[class^="icon-"], [class*=" icon-"] {
  font-family: 'icomoon';
  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-arrow-down:before {
  content: "\e600"; }

.icon-arrow-left:before, .calendar .clndr-control-button:before {
  content: "\e601"; }

.icon-arrow-right:before, .calendar .clndr-control-button.rightalign:before {
  content: "\e602"; }

.icon-arrow-up:before {
  content: "\e603"; }

.icon-baby_sitting:before {
  content: "\e604"; }

.icon-burgerclosed:before {
  content: "\e605"; }

.icon-burgeropen:before {
  content: "\e606"; }

.icon-childrens_menu:before {
  content: "\e607"; }

.icon-cityguide:before {
  content: "\e608"; }

.icon-cultural:before, .icon-kulturell:before, .icon-culturel:before {
  content: "\e609"; }

.icon-envelope:before {
  content: "\e60a"; }

.icon-eventspin:before {
  content: "\e60b"; }

.icon-facebook:before {
  content: "\e60c"; }

.icon-family_plus:before {
  content: "\e60d"; }

.icon-family_room:before {
  content: "\e60e"; }

.icon-food:before, .icon-essen:before, .icon-alimentation:before {
  content: "\e60f"; }

.icon-golf_course:before, .icon-golfplatz:before, .icon-terrain_de_golf:before {
  content: "\e610"; }

.icon-gym:before, .icon-fitnessstudio:before, .icon-gym:before {
  content: "\e611"; }

.icon-Hilton_Adventure:before {
  content: "\e612"; }

.icon-Hilton_Beer:before {
  content: "\e613"; }

.icon-Hilton_cablecar:before {
  content: "\e614"; }

.icon-Hilton_Castle:before {
  content: "\e615"; }

.icon-Hilton_Chinatown:before {
  content: "\e616"; }

.icon-Hilton_Coffee:before {
  content: "\e617"; }

.icon-Hilton_Culture:before {
  content: "\e618"; }

.icon-Hilton_Cycling:before {
  content: "\e619"; }

.icon-Hilton_Fish:before {
  content: "\e61a"; }

.icon-Hilton_Food:before {
  content: "\e61b"; }

.icon-Hilton_Gallery:before {
  content: "\e61c"; }

.icon-Hilton_Ghost:before {
  content: "\e61d"; }

.icon-Hilton_Guiness:before {
  content: "\e61e"; }

.icon-Hilton_Koala:before {
  content: "\e61f"; }

.icon-Hilton_Location:before {
  content: "\e620"; }

.icon-Hilton_Music:before, .icon-musik:before, .icon-musique:before {
  content: "\e621"; }

.icon-Hilton_Nature:before {
  content: "\e622"; }

.icon-Hilton_Pyramids:before {
  content: "\e623"; }

.icon-Hilton_Route66:before {
  content: "\e624"; }

.icon-Hilton_Shopping:before {
  content: "\e625"; }

.icon-Hilton_Sightseeing:before {
  content: "\e626"; }

.icon-Hilton_Spa:before {
  content: "\e627"; }

.icon-Hilton_Sporting:before {
  content: "\e628"; }

.icon-Hilton_Surfing:before {
  content: "\e629"; }

.icon-Hilton_Theatre:before {
  content: "\e62a"; }

.icon-Hilton_Wine:before {
  content: "\e62b"; }

.icon-hotelpin:before {
  content: "\e62c"; }

.icon-info:before {
  content: "\e62d"; }

.icon-kids_club:before {
  content: "\e62e"; }

.icon-loadmore:before {
  content: "\e62f"; }

.icon-mapmarker:before {
  content: "\e630"; }

.icon-music:before {
  content: "\e631"; }

.icon-navdeal:before {
  content: "\e632"; }

.icon-navevent:before {
  content: "\e633"; }

.icon-navmap:before {
  content: "\e634"; }

.icon-navoffer:before {
  content: "\e635"; }

.icon-new:before {
  content: "\e636"; }

.icon-pets:before, .icon-haustiere:before, .icon-animaux:before {
  content: "\e637"; }

.icon-pinterest:before {
  content: "\e638"; }

.icon-plane:before {
  content: "\e639"; }

.icon-roomdeal:before {
  content: "\e63a"; }

.icon-search:before {
  content: "\e63b"; }

.icon-spa:before, .icon-spa:before, .icon-spa:before {
  content: "\e63c"; }

.icon-sport:before {
  content: "\e63d"; }

.icon-star:before {
  content: "\e63e";
  font-size: 1.2em; }

.icon-swimming_pool:before, .icon-schwimmbad:before, .icon-piscine:before {
  content: "\e63f"; }

.icon-tag:before {
  content: "\e640"; }

.icon-tennis:before, .icon-tennis:before, .icon-tennis:before {
  content: "\e641"; }

.icon-thermometer:before {
  content: "\e642"; }

.icon-thingstodopin:before {
  content: "\e643"; }

.icon-tick:before, .form__input--checkbox:checked + label span:before {
  content: "\e644"; }

.icon-twitter:before {
  content: "\e645"; }

.icon-weekendoffer:before {
  content: "\e646"; }

.icon-xmasicon-01:before {
  content: "\e647"; }

/*
* App:Core - Base mixins/layout
*/
/*
*
* Useful mixin library in addition to those
* provided by Bourbon
*
* (Bourbon has in fact implemented half the ones that used to live here!!!)
* 
* If you have a useful mixin, we should
* consider adding it here...
*
*/
/*
* Layout Modifier Mixins
*
* These change the layout of elements
*
------------------------------------------*/
/* 
* Decoration Mixins
*
* These add content on to page elements
*
------------------------------------------*/
/*
* Style Mixins
*
* These change the look of elements
*
------------------------------------------*/
/*
* Override Bourbon Mixins
*
* These are reimplemented Bourbon mixins
* to suit Fractions
*
------------------------------------------*/
/* Selector Helpers
------------------------------------------*/
/**
*
* Fractions.scss
* @version 1.5
* Prefixed classes and used calc to determine widths
*
*/
/* Box Model
------------------------------------------*/
html, body {
  min-height: 100%; }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

/* Desktops
------------------------------------------*/
.f-row {
  width: 100%;
  margin: 0 auto;
  max-width: 1000px; }
  .f-row:after {
    content: "";
    display: table;
    clear: both; }
  .f-row .f-25, .f-row .f-33, .f-row .f-50, .f-row .f-66, .f-row .f-75, .f-row .f-100 {
    float: left;
    min-height: 1px; }
    .f-row .f-25.f-centered, .f-row .f-33.f-centered, .f-row .f-50.f-centered, .f-row .f-66.f-centered, .f-row .f-75.f-centered, .f-row .f-100.f-centered {
      float: none; }
  .f-row .f-25 {
    width: 25%; }
    .f-row .f-25.fg-1, .f-row .f-25.fg-2, .f-row .f-25.fg-3 {
      width: -moz-calc(100% / 4 - (3 * 32px) / 4);
      width: -o-calc(100% / 4 - (3 * 32px) / 4);
      width: -webkit-calc(100% / 4 - (3 * 32px) / 4);
      width: calc(100% / 4 - (3 * 32px) / 4);
      margin-right: 32px; }
    .f-row .f-25.fg-4 {
      width: -moz-calc(100% / 4 - (3 * 32px) / 4);
      width: -o-calc(100% / 4 - (3 * 32px) / 4);
      width: -webkit-calc(100% / 4 - (3 * 32px) / 4);
      width: calc(100% / 4 - (3 * 32px) / 4); }
    .f-row .f-25.f-centered {
      margin-left: 37.5%; }
  .f-row .f-33 {
    width: 33.33%; }
    .f-row .f-33.fg-1, .f-row .f-33.fg-2 {
      width: -moz-calc(100% / 3 - (2 * 32px) / 3);
      width: -o-calc(100% / 3 - (2 * 32px) / 3);
      width: -webkit-calc(100% / 3 - (2 * 32px) / 3);
      width: calc(100% / 3 - (2 * 32px) / 3);
      margin-right: 32px; }
    .f-row .f-33.fg-3 {
      width: -moz-calc(100% / 3 - (2 * 32px) / 3);
      width: -o-calc(100% / 3 - (2 * 32px) / 3);
      width: -webkit-calc(100% / 3 - (2 * 32px) / 3);
      width: calc(100% / 3 - (2 * 32px) / 3); }
    .f-row .f-33.f-centered {
      margin-left: 33.33%; }
    .f-row .f-33.fg-sidebar {
      width: -moz-calc(33% - 32px);
      width: -o-calc(33% - 32px);
      width: -webkit-calc(33% - 32px);
      width: calc(33% - 32px); }
  .f-row .f-50 {
    width: 50%; }
    .f-row .f-50.fg-1 {
      width: -moz-calc(100% / 2 - 32px / 2);
      width: -o-calc(100% / 2 - 32px / 2);
      width: -webkit-calc(100% / 2 - 32px / 2);
      width: calc(100% / 2 - 32px / 2);
      margin-right: 32px; }
    .f-row .f-50.fg-2 {
      width: -moz-calc(100% / 2 - 32px / 2);
      width: -o-calc(100% / 2 - 32px / 2);
      width: -webkit-calc(100% / 2 - 32px / 2);
      width: calc(100% / 2 - 32px / 2); }
    .f-row .f-50.f-centered {
      margin-left: 25%; }
  .f-row .f-66 {
    width: 66.66%; }
    .f-row .f-66.f-centered {
      margin-left: 16.66%; }
    .f-row .f-66.fg-main {
      margin-right: 32px; }
  .f-row .f-75 {
    width: 75%; }
    .f-row .f-75.fg-1 {
      width: -moz-calc(75% - 32px);
      width: -o-calc(75% - 32px);
      width: -webkit-calc(75% - 32px);
      width: calc(75% - 32px);
      margin-right: 32px; }
    .f-row .f-75.fg-2 {
      width: -moz-calc(75% - 32px);
      width: -o-calc(75% - 32px);
      width: -webkit-calc(75% - 32px);
      width: calc(75% - 32px);
      margin-left: 32px; }
    .f-row .f-75.f-centered {
      margin-left: 12.5%; }
  .f-row .f-100 {
    width: 100%; }

.lt-ie9 .f-row {
  width: 1000px; }

img, iframe {
  width: 100%;
  vertical-align: top;
  max-width: 1000px; }
  img.widescreen, iframe.widescreen {
    width: 56.25%; }
  img.standalone, iframe.standalone {
    width: auto; }

.f-dt-hide {
  display: none; }

/* @media - Less than grid
--------------------------------------------*/
@media only screen and (max-width :1000px) {
  .f-row {
    width: 100%;
    padding-left: 32px;
    padding-right: 32px; }
  img.f-cover {
    width: -moz-calc(100% + 32px * 2);
    width: -o-calc(100% + 32px * 2);
    width: -webkit-calc(100% + 32px * 2);
    width: calc(100% + 32px * 2);
    margin-left: -32px; } }

/* @media - Tablets
--------------------------------------------*/
@media only screen and (max-width : 800px) {
  .f-row .fm-50 {
    width: 50%; }
    .f-row .fm-50.fg-1 {
      width: -moz-calc(50% - 32px / 2);
      width: -o-calc(50% - 32px / 2);
      width: -webkit-calc(50% - 32px / 2);
      width: calc(50% - 32px / 2);
      margin-right: 16px;
      margin-bottom: 32px; }
    .f-row .fm-50.fg-2 {
      width: -moz-calc(50% - 32px / 2);
      width: -o-calc(50% - 32px / 2);
      width: -webkit-calc(50% - 32px / 2);
      width: calc(50% - 32px / 2);
      margin-left: 16px;
      margin-right: 0px;
      margin-bottom: 32px; }
    .f-row .fm-50.fg-3 {
      width: -moz-calc(50% - 32px / 2);
      width: -o-calc(50% - 32px / 2);
      width: -webkit-calc(50% - 32px / 2);
      width: calc(50% - 32px / 2);
      margin-right: 16px;
      margin-bottom: 32px; }
    .f-row .fm-50.fg-4 {
      width: -moz-calc(50% - 32px / 2);
      width: -o-calc(50% - 32px / 2);
      width: -webkit-calc(50% - 32px / 2);
      width: calc(50% - 32px / 2);
      margin-left: 16px;
      margin-right: 0px;
      margin-bottom: 32px; }
    .f-row .fm-50.f-centered {
      margin-left: 25%; }
  .f-row .fm-100 {
    float: none;
    margin: 0px 0px 32px 0px;
    width: 100%; }
    .f-row .fm-100:last-child {
      margin-bottom: 0px; }
  .f-row.f-center-panels {
    text-align: center; }
    .f-row.f-center-panels .fm-50 {
      float: none;
      display: inline-block; }
  .f-tb-show {
    display: block; }
  .f-tb-hide {
    display: none; } }

/* @media - Mobile
--------------------------------------------*/
@media only screen and (max-width : 640px) {
  .f-row .f-25, .f-row .f-33, .f-row .f-50, .f-row .f-66, .f-row .f-75, .f-row .f-100 {
    float: none;
    width: 100% !important;
    margin-left: 0px !important;
    margin-right: 0px !important;
    margin-bottom: 32px; }
    .f-row .f-25.f-centered, .f-row .f-25.fg-1, .f-row .f-25.fg-2, .f-row .f-25.fg-3, .f-row .f-25.fg-4, .f-row .f-33.f-centered, .f-row .f-33.fg-1, .f-row .f-33.fg-2, .f-row .f-33.fg-3, .f-row .f-33.fg-4, .f-row .f-50.f-centered, .f-row .f-50.fg-1, .f-row .f-50.fg-2, .f-row .f-50.fg-3, .f-row .f-50.fg-4, .f-row .f-66.f-centered, .f-row .f-66.fg-1, .f-row .f-66.fg-2, .f-row .f-66.fg-3, .f-row .f-66.fg-4, .f-row .f-75.f-centered, .f-row .f-75.fg-1, .f-row .f-75.fg-2, .f-row .f-75.fg-3, .f-row .f-75.fg-4, .f-row .f-100.f-centered, .f-row .f-100.fg-1, .f-row .f-100.fg-2, .f-row .f-100.fg-3, .f-row .f-100.fg-4 {
      margin-left: 0px;
      margin-right: 0px;
      width: 100%; }
    .f-row .f-25:last-child, .f-row .f-33:last-child, .f-row .f-50:last-child, .f-row .f-66:last-child, .f-row .f-75:last-child, .f-row .f-100:last-child {
      margin-bottom: 0px; }
  img.f-cover--mb {
    width: -moz-calc(100% + 32px * 2);
    width: -o-calc(100% + 32px * 2);
    width: -webkit-calc(100% + 32px * 2);
    width: calc(100% + 32px * 2);
    margin-left: -32px; }
  .f-mb-show {
    display: block; }
  .f-mb-hide {
    display: none; } }

/*
* App:Extend - Go!
*/
/*
*
* Bootstrap
* Mix in color configs
* Load components
* Go!
*
*/
/* $Semantic                 $ActualHex
------------------------------------------*/
/* $Semantic                 $ActualHex
------------------------------------------*/
/* Build Basic HTML
------------------------------------------*/
/* Buttons
------------------------------------------*/
.f-btn, button {
  font-family: "lato", 'arial', sans-serif;
  font-weight: 400;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  outline: none;
  text-decoration: none;
  border: 0px;
  margin: 0px;
  position: relative;
  line-height: 38px;
  padding: 0px 20px;
  border-radius: 0px;
  background: #4397d8;
  color: #edeff4;
  font-size: 0.875em;
  font-weight: 400;
  letter-spacing: 0px;
  display: inline-block;
  cursor: pointer;
  text-transform: uppercase;
  vertical-align: top;
  /* Pseudo and simulated pseudo
	------------------------------------------*/
  /* Icon
	------------------------------------------*/
  /* Just the icon
	------------------------------------------*/
  /* Colors
	------------------------------------------*/ }
  form .f-btn, form button {
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 12px; }
    form .f-btn:last-child, form button:last-child {
      margin-top: 0px;
      padding-top: 0px;
      padding-bottom: 0px;
      margin-bottom: 0px; }
  .f-btn:hover, button:hover {
    background: #287ec0; }
  .f-btn:active, .f-btn .active, button:active, button .active {
    background: #2370ab; }
  .f-btn.disabled, .disabled .f-btn, .f-btn[disabled], button.disabled, .disabled button, button[disabled] {
    background: #a2a2a6 !important;
    cursor: not-allowed; }
  .f-btn i, button i {
    margin-right: 10px;
    font-size: 1.25em; }
    .f-btn i.fa-after, button i.fa-after {
      margin-left: 10px;
      margin-right: 0px; }
  .f-btn.f-btn--icon, button.f-btn--icon {
    width: auto;
    padding-left: 0px !important;
    padding-right: 0px !important; }
    .f-btn.f-btn--icon i, button.f-btn--icon i {
      text-align: center;
      min-width: 44px;
      margin-right: 0px; }
  .f-btn.f-btn--alt, button.f-btn--alt {
    background: #eb5050; }
    .f-btn.f-btn--alt:hover, button.f-btn--alt:hover {
      background: #e62222; }
    .f-btn.f-btn--alt:active, .f-btn.f-btn--alt .active, button.f-btn--alt:active, button.f-btn--alt .active {
      background: #d61818; }
  .f-btn.f-btn--success, .f-btn.f-btn--go, button.f-btn--success, button.f-btn--go {
    background: #98dd7c; }
    .f-btn.f-btn--success:hover, .f-btn.f-btn--go:hover, button.f-btn--success:hover, button.f-btn--go:hover {
      background: #7ad254; }
    .f-btn.f-btn--success:active, .f-btn.f-btn--success .active, .f-btn.f-btn--go:active, .f-btn.f-btn--go .active, button.f-btn--success:active, button.f-btn--success .active, button.f-btn--go:active, button.f-btn--go .active {
      background: #6acd3f; }
  .f-btn.f-btn--error, .f-btn.f-btn--stop, button.f-btn--error, button.f-btn--stop {
    background: #ff787c; }
    .f-btn.f-btn--error:hover, .f-btn.f-btn--stop:hover, button.f-btn--error:hover, button.f-btn--stop:hover {
      background: #ff454b; }
    .f-btn.f-btn--error:active, .f-btn.f-btn--error .active, .f-btn.f-btn--stop:active, .f-btn.f-btn--stop .active, button.f-btn--error:active, button.f-btn--error .active, button.f-btn--stop:active, button.f-btn--stop .active {
      background: #ff2c33; }
  .f-btn.f-btn--warning, button.f-btn--warning {
    background: #e8af3f; }
    .f-btn.f-btn--warning:hover, button.f-btn--warning:hover {
      background: #da971a; }
    .f-btn.f-btn--warning:active, .f-btn.f-btn--warning .active, button.f-btn--warning:active, button.f-btn--warning .active {
      background: #c38717; }
  .f-btn.f-btn--info, button.f-btn--info {
    background: #82accc; }
    .f-btn.f-btn--info:hover, button.f-btn--info:hover {
      background: #5e95bd; }
    .f-btn.f-btn--info:active, .f-btn.f-btn--info .active, button.f-btn--info:active, button.f-btn--info .active {
      background: #4c8ab6; }
  @media only screen and (max-width : 640px) {
    .f-btn, button {
      width: 100%;
      text-align: center;
      padding: 0px 20px;
      height: 44px;
      line-height: 44px; }
      .f-btn.f-btn--left, button.f-btn--left {
        text-align: left; } }

/* Btn Group
------------------------------------------*/
.f-btn-group:after, .f-btn-group--rounded:after, .f-btn-group--pager:after {
  content: "";
  display: table;
  clear: both; }
.f-btn-group .f-btn, .f-btn-group .f-btn-group--rounded, .f-btn-group .f-btn-group--pager, .f-btn-group button, .f-btn-group .f-btn-group--rounded, .f-btn-group .f-btn-group--pager {
  float: left;
  margin: 0px;
  background: #bfc7d8;
  color: #aeb7cd;
  border-left: 1px solid #9facc5; }
  .f-btn-group .f-btn:hover, .f-btn-group .f-btn-group--rounded, .f-btn-group .f-btn-group--pager, .f-btn-group button:hover, .f-btn-group .f-btn-group--rounded, .f-btn-group .f-btn-group--pager {
    background: #4397d8;
    color: #edeff4; }
  .f-btn-group .f-btn:active, .f-btn-group .f-btn-group--rounded, .f-btn-group .f-btn-group--pager, .f-btn-group button:active, .f-btn-group .f-btn-group--rounded, .f-btn-group .f-btn-group--pager {
    background: #287ec0; }
  .f-btn-group .f-btn:first-child, .f-btn-group .f-btn-group--rounded, .f-btn-group .f-btn-group--pager, .f-btn-group button:first-child, .f-btn-group .f-btn-group--rounded, .f-btn-group .f-btn-group--pager {
    border-left: 0px !important; }
@media only screen and (max-width : 800px) {
  .f-btn-group {
    display: inline-block; } }

.f-btn-group--rounded .f-btn:first-child, .f-btn-group--rounded .f-btn-group--pager, .f-btn-group--rounded button:first-child, .f-btn-group--rounded .f-btn-group--pager {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px; }
.f-btn-group--rounded .f-btn:last-child, .f-btn-group--rounded .f-btn-group--pager, .f-btn-group--rounded button:last-child, .f-btn-group--rounded .f-btn-group--pager {
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px; }

.f-btn-group--pager {
  display: inline-block;
  font-size: 0; }
  .f-btn-group--pager .f-btn, .f-btn-group--pager button {
    padding-left: 10px !important;
    padding-right: 10px !important;
    min-width: 40px;
    float: none;
    background: #edeff4;
    color: #565659;
    font-size: 16px;
    font-weight: 300;
    text-align: center; }
    .f-btn-group--pager .f-btn.active, .f-btn-group--pager button.active {
      border-bottom: 3px solid #4397d8;
      cursor: default; }
      .f-btn-group--pager .f-btn.active:hover, .f-btn-group--pager button.active:hover {
        background: #edeff4; }
    .f-btn-group--pager .f-btn:hover, .f-btn-group--pager button:hover {
      background: #bfc7d8;
      color: #565659; }
    .f-btn-group--pager .f-btn:disabled, .f-btn-group--pager .f-btn.disabled, .f-btn-group--pager button:disabled, .f-btn-group--pager button.disabled {
      opacity: 0.6;
      background-color: #a2a2a6 !important; }
      .f-btn-group--pager .f-btn:disabled:hover, .f-btn-group--pager .f-btn.disabled:hover, .f-btn-group--pager button:disabled:hover, .f-btn-group--pager button.disabled:hover {
        background-color: #a2a2a6 !important; }
  .f-btn-group--pager .f-btn-icon i {
    margin-right: 0px; }
  @media only screen and (max-width : 640px) {
    .f-btn-group--pager {
      display: block;
      width: 100%; }
      .f-btn-group--pager .btn, .f-btn-group--pager button {
        width: 20%;
        display: inline-block; } }

.f-btn-group--inverse .f-btn, .f-btn-group--inverse button {
  background: none;
  border: 1px solid #4397d8;
  min-width: 0; }
  .f-btn-group--inverse .f-btn i, .f-btn-group--inverse button i {
    color: #4397d8; }

/* Extend - Btns
------------------------------------------*/
/* ----- Base ----- */
.btn--primary {
  background: #fafafa;
  border-radius: 50px;
  border: 1px solid #bec3ce;
  color: #4397d8;
  cursor: pointer;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.25em;
  margin: 1em 0;
  padding: 0.85em 2em;
  text-align: center;
  /* Fix to stop buttons breaking before typekit loads */ }
  .btn--primary:hover, .btn--primary:focus, .btn--primary.active {
    background: #4397d8;
    color: #fff; }
  .btn--primary.btn--disabled:hover, .btn--primary.btn--disabled:focus, .btn--primary.btn--disabled.active {
    background: #fafafa;
    cursor: default;
    color: #4397d8; }

.btn--secondary {
  background-color: transparent;
  border-radius: 50px;
  color: #fff;
  font-size: 1em;
  font-weight: 700;
  line-height: 1.25em;
  padding: 1em 0;
  border: 2px solid #4397d8;
  width: 150px; }
  @media only screen and (max-width : 800px) {
    .btn--secondary {
      border: none !important; } }
  .btn--secondary.active {
    background: #fff;
    color: #4397d8; }
  .btn--secondary:hover, .btn--secondary:focus {
    background: transparent;
    border: 2px solid #FFF;
    color: #fff !important; }

.btn--secondaryalt {
  border: 2px solid #eb5050; }
  @media only screen and (max-width : 800px) {
    .btn--secondaryalt {
      border: none !important; } }
  .btn--secondaryalt:hover, .btn--secondaryalt:focus, .btn--secondaryalt.active {
    color: #eb5050; }

.btn--tertiary {
  background-color: transparent;
  border-radius: 10px;
  color: #fff;
  font-size: 1em;
  font-weight: 700;
  line-height: 1.25em;
  padding: 1em 0;
  border: 2px solid #fff;
  min-width: 180px; }
  @media only screen and (max-width : 800px) {
    .btn--tertiary {
      border: none !important; } }
  .btn--tertiary:hover, .btn--tertiary:focus {
    background: #fff;
    color: #4397d8; }

.btn--delta {
  border-radius: 10px;
  color: #4397d8;
  line-height: 3em;
  margin-bottom: 1em;
  margin-top: 1em;
  width: 90%;
  z-index: 20; }
  .btn--delta:hover, .btn--delta:focus {
    background: #edeff4; }

/* ----- Misc ----- */
.btn--tall {
  font-size: 1em; }

.btn--fixed {
  padding-left: 0;
  padding-right: 0; }

.btn--highlight {
  color: #fff;
  background: #4397d8; }
  .btn--highlight:hover {
    color: #4397d8;
    background: #fff; }

.btn--minimal {
  border: 2px solid #fff;
  background-color: transparent;
  color: #fff; }

/* ----- Alignment ----- */
.btn--standalone {
  margin-right: auto;
  margin-left: auto;
  display: block;
  max-width: 180px; }
  @media only screen and (max-width : 800px) {
    .btn--standalone {
      width: 90%;
      max-width: 90% !important; } }

.btn--flipped {
  float: right; }

.btn--inline {
  display: inline-block;
  margin-left: 0.5em;
  margin-right: 0.5em;
  text-align: center; }

/* ----- Spacing ----- */
.btn--spacedtop {
  margin-top: 1.5em; }

.btn--spacedbottom {
  margin-bottom: 1.5em !important; }

.btn--spacedreset {
  margin-top: 0;
  margin-bottom: 0; }

.btn--nospacedbottom {
  margin-bottom: 0; }

/* ----- Specifics ----- */
.btn--bookingtop {
  font-size: 1em;
  margin-bottom: 0;
  margin-top: 0.65em;
  padding: 0.55em 1.7em; }
  @media only screen and (max-width : 800px) {
    .btn--bookingtop {
      display: none; } }

.btn--load {
  width: 170px;
  max-width: 170px !important; }

.btn--mobile {
  display: none; }
  @media only screen and (max-width : 800px) {
    .btn--mobile {
      display: block; } }

.btn--loading {
  width: 150px;
  height: 40px; }

/* Calendars on booking form
------------------------------------------*/
.calendar {
  background: #fff;
  border: 1px solid #bfc7d8;
  display: block;
  border-radius: 5px;
  position: absolute;
  top: 60px;
  left: 10px;
  z-index: 40;
  width: 280px;
  display: none;
  z-index: 130;
  /* ----- Calendar Navigation ----- */
  /* ----- Day Names ----- */
  /* ----- Days ----- */ }
  @media only screen and (max-width : 1040px) {
    .calendar {
      left: 50%;
      margin-left: -140px; } }
  .calendar:after, .calendar:before {
    border-style: solid;
    content: '';
    display: block;
    height: 0;
    position: absolute;
    width: 0; }
  .calendar:after {
    border-color: transparent transparent #fff transparent;
    border-width: 10px;
    left: 133px;
    margin-left: -1px;
    top: -20px; }
  .calendar:before {
    border-color: transparent transparent #bfc7d8 transparent;
    border-width: 11px;
    left: 131px;
    top: -23px; }
  .calendar .clndr {
    display: block;
    margin: 25px auto;
    width: 231px; }
  .calendar .clndr-table {
    border-top: 1px solid #bfc7d8;
    margin-top: 1em; }
  .calendar .clndr-controls {
    position: relative; }
    .calendar .clndr-controls:after {
      content: "";
      display: table;
      clear: both; }
    .calendar .clndr-controls .month {
      display: block;
      left: 0;
      position: absolute;
      text-align: center;
      top: -4px;
      width: 230px;
      z-index: 10;
      font-family: "source-sans-pro", 'arial', sans-serif;
      font-weight: 700;
      color: #4e4e5b;
      font-size: 24px; }
  .calendar .clndr-control-button {
    float: left;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    border: 1px solid #bfc7d8;
    overflow: hidden;
    position: relative;
    z-index: 20;
    font-family: "icomoon"; }
    .calendar .clndr-control-button span {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      z-index: 20;
      cursor: pointer; }
    .calendar .clndr-control-button:before {
      color: #4397d8;
      background: #fafafa;
      position: absolute;
      left: 0;
      top: 0;
      padding-top: 5.5px;
      text-align: center;
      width: 100%;
      height: 100%;
      font-size: 0.7em;
      z-index: 10; }
    .calendar .clndr-control-button.rightalign {
      float: right; }
  .calendar thead {
    display: block;
    margin: 10px 0 5px; }
  .calendar .header-day {
    font-family: "source-sans-pro", 'arial', sans-serif;
    font-weight: 700;
    color: #4e4e5b;
    display: inline-block;
    margin: 0 1.5px;
    text-align: center;
    width: 30px; }
  .calendar .day, .calendar .empty {
    background: #edeff4;
    color: #a2a2a6;
    cursor: pointer;
    display: inline-block;
    font-size: 1em;
    line-height: 30px;
    margin: 1.5px;
    text-align: center;
    width: 30px; }
    .calendar .day:hover, .calendar .day:focus, .calendar .empty:hover, .calendar .empty:focus {
      background: #4397d8;
      color: #fff;
      font-weight: bold; }
    .calendar .day.today, .calendar .empty.today {
      background: #4397d8;
      color: #fff;
      font-weight: bold; }
    .calendar .day.past, .calendar .empty.past {
      background: #fafafa;
      cursor: default; }
      .calendar .day.past:hover, .calendar .day.past:focus, .calendar .empty.past:hover, .calendar .empty.past:focus {
        background: #fafafa;
        color: #a2a2a6;
        font-weight: normal; }

.cards {
  min-height: 500px;
  margin: 0 auto;
  max-width: 1040px;
  text-align: center;
  padding-bottom: 50px;
  width: 100%; }
  .single-landing .cards {
    margin-bottom: 50px; }
  .cards.loading {
    background-image: url(../img/ajax-loader.gif);
    background-repeat: no-repeat;
    background-position: center center; }
  @media only screen and (max-width : 640px) {
    .cards {
      width: 90%; } }

.cards--hotels {
  text-align: left; }
  @media only screen and (max-width : 1040px) {
    .cards--hotels .card {
      width: 31%; } }
  @media only screen and (max-width : 800px) {
    .cards--hotels .card {
      width: 45.4%; } }

.card-slider {
  width: 100%;
  text-align: center; }
  .card-slider .card:first-child {
    margin-left: 0; }
    @media only screen and (max-width : 640px) {
      .card-slider .card:first-child {
        margin-left: 5%; } }

.card {
  background: #fff;
  border-bottom: 20px solid #FFF;
  box-shadow: 0 0 10px rgba(131, 136, 149, 0.4);
  display: inline-block;
  margin: 1em 10px 10px;
  min-height: 400px;
  opacity: 1;
  overflow: hidden;
  padding-bottom: 1.5em;
  position: relative;
  text-align: left;
  text-align: left;
  vertical-align: top;
  width: 235px;
  z-index: 10;
  transition: opacity 2s; }
  @media only screen and (max-width : 1040px) {
    .card {
      width: 31.3%;
      margin-left: 1%;
      margin-right: 1%; } }
  @media only screen and (max-width : 800px) {
    .card {
      width: 46%;
      margin-left: 2%;
      margin-right: 2%; } }
  @media only screen and (max-width : 640px) {
    .card {
      -webkit-transition: none !important;
      transition: none !important;
      width: 100% !important;
      margin-left: 0;
      margin-right: 0; } }

.card--gridsizer {
  display: none; }

.card--guide .card__image {
  background: #d8437b; }

.card--destination .card__image {
  background: #43d8c5; }

.card--music .card__image {
  background: #ee8749; }

.card--sport .card__image {
  background: #0bc3ab; }

.card--food .card__image {
  background: #749f3b; }

.card--cultural .card__image {
  background: #846eb2; }

.card--roomdeal .card__image {
  background: #eb5050; }

.card--newhotel .card__image {
  background: #2ab6de; }

.card--offer .card__image {
  background: #ebbd50; }

.owl-item .card {
  margin-bottom: 0; }

.card--wide {
  width: 31%;
  max-width: 320px;
  margin-left: 1%;
  margin-right: 1%; }
  @media only screen and (max-width : 800px) {
    .card--wide {
      max-width: 100%; } }
  @media only screen and (max-width : 640px) {
    .card--wide {
      margin-left: 5%;
      margin-right: 5%;
      width: 90%; } }

.owl-item .card--wide {
  width: 100%;
  margin-right: 0 !important;
  margin-left: 0 !important; }
  @media only screen and (max-width : 1040px) {
    .owl-item .card--wide img {
      min-height: 315px;
      width: auto;
      max-width: initial; } }

.card--static {
  height: 700px; }

.card--animated:hover .card__inner {
  top: 23px; }
.card--animated:hover .card__image {
  top: -70px; }

.card--noanimation {
  border-bottom: none; }

/* ----- Link overlays so entire card is clickable ----- */
.card__overlay-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 40; }
  .owl-carousel .card__overlay-link, .card-slider .card__overlay-link {
    display: none; }

/* ----- Card types with icon ----- */
.card__type {
  color: #fff;
  font-size: 0.8125em;
  left: 0;
  line-height: 1.25em;
  padding: 0.45em 0.5em 0.65em;
  position: absolute;
  text-transform: capitalize;
  top: 0;
  z-index: 30;
  width: 150px; }
  .card__type i {
    display: inline-block !important;
    margin: 0 0.5em;
    position: relative;
    top: 2px; }

/* Guides */
.card__type--guide {
  background: #d8437b; }

.card__type--destination {
  background: #43d8c5; }

/* Events */
.card__type--music {
  background: #ee8749; }

.card__type--sport {
  background: #0bc3ab; }

.card__type--food {
  background: #749f3b; }

.card__type--cultural {
  background: #846eb2; }

/* Hotels */
.card__type--roomdeal {
  background: #eb5050; }

.card__type--newhotel {
  background: #2ab6de; }

/* Offers */
.card__type--offer {
  background: #ebbd50; }

/* ----- Remove Card button ----- */
.card__remove {
  background: #4397d8;
  border-radius: 50%;
  color: #fff;
  font-size: 2em;
  height: 30px;
  cursor: pointer;
  left: 16px;
  line-height: 0.85em;
  position: absolute;
  text-align: center;
  top: 16px;
  width: 30px;
  z-index: 40; }

/* ----- Featured image ----- */
.card__image {
  position: absolute;
  z-index: 10;
  min-height: 315px;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-transition: top 0.5s;
  transition: top 0.5s; }
  @media only screen and (max-width : 800px) {
    .card__image {
      width: 100%;
      max-height: 315px;
      overflow: hidden;
      top: 0 !important; } }
  .card__image img {
    width: 100%;
    height: 315px; }
  .card__image:after {
    background: rgba(0, 0, 0, 0.2);
    content: "";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }
  @media only screen and (max-width : 640px) {
    .card__image img {
      object-fit: cover; } }

.card__image--preview img {
  min-height: 315px; }

/* ----- Card Inner -----
*	This is for the content that all gets moved up on hover
*/
.card__inner {
  position: relative;
  z-index: 20;
  top: 170px;
  padding-top: 145px;
  -webkit-transition: top 0.5s;
  transition: top 0.5s; }
  @media only screen and (max-width : 800px) {
    .card__inner {
      top: 170px !important; } }

/* ----- Card Titles ----- */
.card__title {
  border-bottom: none;
  height: 129px;
  margin: 0 1em;
  padding: 1em 1em 0.8em;
  position: absolute;
  top: 0;
  width: 87%; }
  .card__title .title--secondary {
    position: absolute;
    bottom: 25px;
    left: 0;
    font-weight: 700;
    word-break: break-word; }
  .card__title .title--tertiary, .card__title .panel__content p:first-child, .panel__content .card__title p:first-child {
    position: absolute;
    bottom: 0;
    left: 0; }
  .card__title p {
    color: #fff; }
  .card--underscore .card__title {
    position: absolute;
    top: auto !important;
    bottom: 0 !important;
    height: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important; }
    .card--underscore .card__title:after {
      content: "";
      display: table;
      clear: both; }
    .card--underscore .card__title .title--secondary {
      position: static; }
      .card--underscore .card__title .title--secondary span {
        display: block;
        font-family: "lato", 'arial', sans-serif;
        font-weight: 400;
        font-size: 19px; }

.card--underscore > a {
  position: relative; }

/* If the card has price, title position needs to change */
.card.card--hasprice .card__title .title--secondary {
  bottom: 50px; }
.card.card--hasprice .card__title .title--tertiary, .card.card--hasprice .card__title .panel__content p:first-child, .panel__content .card.card--hasprice .card__title p:first-child {
  bottom: 25px; }

/* ----- Author details ----- */
.card__meta {
  background: #fff;
  padding: 1em 1em 0em; }
  .card__meta:after {
    content: "";
    display: table;
    clear: both; }
  .card__meta img {
    border-radius: 50%;
    width: 40px;
    height: 40px;
    margin-right: 1em;
    float: left; }
  .card__meta i {
    color: #4e4e5b;
    margin-right: 8px;
    margin-top: 4px;
    float: left; }
  .card__meta p {
    line-height: 1.1em;
    float: left;
    width: 70%; }
  .card__meta strong {
    display: block;
    color: #4e4e5b; }

.card__meta--event strong {
  color: #4397d8; }
  .card__meta--event strong.dark {
    display: inline-block; }

/* ----- Main content ----- */
.card__content {
  background: #fff;
  padding: 1em 1em 0;
  min-height: 150px; }

.card--content .card__content {
  padding-bottom: 90px; }

.card__row {
  background: #fff;
  padding: 0.85em 20px;
  border-bottom: 1px solid #bfc7d8; }

.card__row--last {
  border-bottom: 0;
  padding: 0; }

.card__row--hotelname {
  min-height: 76px; }
  @media only screen and (max-width : 640px) {
    .card__row--hotelname {
      min-height: 0; } }

.card__row--description {
  min-height: 325px; }
  @media only screen and (max-width : 640px) {
    .card__row--description {
      min-height: 0; } }

.card__row--airmiles {
  background: #001e3a;
  color: #fff;
  font-size: 13px;
  line-height: 20px;
  position: relative;
  width: 100%;
  z-index: 1000;
  padding-top: 5px;
  padding-bottom: 5px; }
  .card__row--airmiles .icon-info {
    color: #2ab6de;
    float: right;
    border-radius: 50%;
    height: 12px;
    margin-top: 4px;
    width: 12px;
    position: relative;
    cursor: pointer; }
    .card__row--airmiles .icon-info span {
      font-size: 13px;
      line-height: 1.25em;
      margin-left: -183px;
      padding-bottom: 12px;
      padding-left: 20px;
      padding-right: 20px;
      text-align: center;
      top: -70px;
      width: 210px; }
      .card__row--airmiles .icon-info span:before {
        right: 8px;
        left: auto; }
      .card__row--airmiles .icon-info span:after {
        right: 9px;
        left: auto; }
    .card__row--airmiles .icon-info:hover span {
      display: block;
      z-index: 1010; }
  .card__row--airmiles .icon-tag {
    vertical-align: middle;
    height: 20px;
    font-size: 20px;
    margin-top: 0px;
    width: 12px;
    margin-right: 10px;
    position: relative;
    top: -2px; }

.card__row--promotion {
  color: #fff;
  font-size: 12px;
  line-height: 20px;
  position: relative;
  width: 100%;
  z-index: 1000;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 10px;
  padding-right: 10px; }
  .card__row--promotion.card__row--promotion--primary {
    background: #be8d3e; }
  .card__row--promotion.card__row--promotion--secondary {
    background: #9facb1; }
  .card__row--promotion .icon-info {
    color: #fff;
    float: right;
    border-radius: 50%;
    height: 12px;
    margin-top: 4px;
    width: 12px;
    position: relative;
    cursor: pointer; }
    .card__row--promotion .icon-info span {
      bottom: 24px;
      font-size: 13px;
      line-height: 1.25em;
      margin-left: -183px;
      padding-bottom: 12px;
      padding-left: 20px;
      padding-right: 20px;
      text-align: center;
      width: 210px; }
      .card__row--promotion .icon-info span:before {
        right: 8px;
        left: auto; }
      .card__row--promotion .icon-info span:after {
        right: 9px;
        left: auto; }
    .card__row--promotion .icon-info:hover span {
      display: block;
      z-index: 1010; }
  .card__row--promotion .icon-star {
    vertical-align: middle;
    height: 20px;
    font-size: 16px;
    margin-top: 0px;
    width: 12px;
    margin-right: 5px;
    position: relative;
    top: -2px; }

/* ----- Specifics ----- */
@media only screen and (max-width : 800px) {
  .card--content {
    height: 0 !important;
    overflow: hidden;
    padding-bottom: 0; }
    .card--content .card__title, .card--content .card__image {
      position: relative; } }
.card--content .card__inner {
  top: 110px;
  padding-top: 125px; }
  @media only screen and (max-width : 800px) {
    .card--content .card__inner {
      margin-top: -130px;
      padding-top: 0;
      top: 0 !important; } }
.card--content p:first-child {
  margin-bottom: 1em !important; }

.card--noanimation .card__image {
  position: relative; }
.card--noanimation .card__title {
  top: 195px;
  z-index: 30; }
.card--noanimation .card__content {
  min-height: 0; }

.card--guide .card__title, .card--destination .card__title {
  height: 129px; }
  .card--guide .card__title .title--secondary, .card--destination .card__title .title--secondary {
    bottom: 20px; }
  .card--guide .card__title .title--tertiary, .card--guide .card__title .panel__content p:first-child, .panel__content .card--guide .card__title p:first-child, .card--destination .card__title .title--tertiary, .card--destination .card__title .panel__content p:first-child, .panel__content .card--destination .card__title p:first-child {
    bottom: -3px; }
  .card--guide .card__title p, .card--destination .card__title p {
    position: absolute;
    bottom: 0;
    left: 0; }

.card--hotel {
  color: #a2a2a6;
  min-height: 0;
  overflow: visible;
  padding-bottom: 0; }
  .card--hotel.card--setheight {
    min-height: 720px; }
    @media only screen and (max-width : 640px) {
      .card--hotel.card--setheight {
        min-height: 0; } }
  .card--hotel .card__title {
    top: 170px;
    cursor: pointer; }
  .card--hotel ul {
    margin-left: 20px; }
  .card--hotel .card__image {
    background: #eb5050; }
  .card--hotel.new_hotel .card__image {
    background: #2ab6de; }

.card--location {
  color: #a2a2a6;
  overflow: visible;
  min-height: 0;
  padding-bottom: 0; }
  .card--location:before {
    background: #fff;
    box-shadow: 0 0 5px rgba(131, 136, 149, 0.4);
    bottom: -4px;
    content: "";
    display: block;
    height: 10px;
    left: 2.5%;
    position: absolute;
    width: 95%;
    z-index: -1; }
  .card--location:after {
    background: #fff;
    box-shadow: 0 0 5px rgba(131, 136, 149, 0.4);
    bottom: -8px;
    content: "";
    display: block;
    height: 10px;
    left: 5%;
    position: absolute;
    width: 90%;
    z-index: -2; }
  .card--location .card__title {
    top: 190px; }
    .card--location .card__title .title--secondary {
      bottom: 1.15em; }
    .card--location .card__title .title--tertiary, .card--location .card__title .panel__content p:first-child, .panel__content .card--location .card__title p:first-child {
      font-size: 1em; }
      .card--location .card__title .title--tertiary span, .card--location .card__title .title--tertiary .panel__content p:first-child, .panel__content .card--location .card__title .title--tertiary p:first-child {
        text-decoration: line-through; }
  .card--location .title--country {
    bottom: 1.2em; }
  .card--location .card__image {
    background: #eb5050; }
  .card--location.new_hotel .card__image {
    background: #2ab6de; }

.card--noimage .card__title {
  height: auto !important;
  background: #eb5050;
  margin: 0;
  position: relative;
  top: 0;
  left: 0;
  padding: 2em 1em 0;
  width: 100%;
  z-index: 10;
  min-height: 315px; }
  .card--noimage .card__title .title, .card--noimage .card__title .card--content p:first-child, .card--content .card--noimage .card__title p:first-child, .card--noimage .card__title .panel__content p:first-child, .panel__content .card--noimage .card__title p:first-child {
    left: 20px;
    position: absolute;
    width: 85%; }
  .card--noimage .card__title .title--secondary {
    bottom: 45px; }
  .card--noimage .card__title .title--tertiary, .card--noimage .card__title .panel__content p:first-child, .panel__content .card--noimage .card__title p:first-child {
    bottom: 20px; }

.card--hotel__price {
  font-weight: 700;
  line-height: 1em;
  padding: 0.55em 1em;
  text-align: right;
  text-transform: lowercase; }
  .card--hotel__price .text {
    display: block;
    font-size: 13px; }
  .card--hotel__price .price {
    color: #4e4e5b;
    font-size: 18px; }

.card--hotel__price--alt .price {
  color: #eb5050; }
.card--hotel__price--alt .price--small {
  font-size: 13px;
  text-decoration: line-through; }
.card--hotel__price--alt .text {
  display: inline-block; }

.card--hotel__amenities {
  text-align: center;
  min-height: 32px; }
  .card--hotel__amenities i {
    color: #bfc7d8;
    position: relative;
    margin: 0 2px; }
  .card--hotel__amenities i:before {
    display: inline-block;
    margin-top: 5px;
    font-size: 1.5em; }
  .card--hotel__amenities i:hover {
    color: #4397d8; }
    .card--hotel__amenities i:hover .card--hotel__tooltip {
      display: block; }

.card--hotel__tooltip {
  font-family: "lato", 'arial', sans-serif;
  font-weight: 400;
  background: #fafafa;
  border-radius: 10px;
  border: 1px solid #bfc7d8;
  color: #4e4e5b;
  display: none;
  font-weight: 400;
  left: 0;
  margin-left: -65px;
  padding: 10px;
  position: absolute;
  text-transform: capitalize;
  bottom: 26px;
  width: 150px;
  z-index: 20; }
  .card--hotel__tooltip:after, .card--hotel__tooltip:before {
    border-style: solid;
    content: '';
    display: block;
    height: 0;
    position: absolute;
    width: 0; }
  .card--hotel__tooltip:after {
    border-color: #fafafa transparent transparent transparent;
    border-width: 10px;
    left: 70px;
    margin-left: -1px;
    bottom: -20px; }
  .card--hotel__tooltip:before {
    border-color: #bfc7d8 transparent transparent transparent;
    border-width: 11px;
    left: 68px;
    bottom: -23px; }

.card--newhotel {
  z-index: 10; }

.card__mobile-readmore {
  display: none;
  margin-top: 100px; }
  @media only screen and (max-width : 800px) {
    .card__mobile-readmore {
      display: block; } }

/* ----- Prices ----- */
.card__row--price p {
  font-size: 13px; }
.card__row--price .price {
  font-size: 18px;
  color: #eb5050; }
.card__row--price .strikethrough {
  font-size: 13px;
  text-decoration: line-through; }

/* ----- Trip Advisor ----- */
.card__row--tripadvisor:after {
  content: "";
  display: table;
  clear: both; }
.card__row--tripadvisor .tripadvisor__icon {
  float: left;
  width: 50px;
  padding: 3px 0 0 0; }
  .card__row--tripadvisor .tripadvisor__icon img {
    min-width: 40px;
    max-width: 40px;
    min-height: 32px;
    max-height: 32px; }
.card__row--tripadvisor .tripadvisor__text {
  float: left;
  width: 145px;
  font-size: 13px; }

/* Components
------------------------------------------*/
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #fefefe; }

html header {
  border-bottom: none; }

/* Image fix from fractions */
img {
  width: auto;
  max-width: 100%; }

/* ----- Site container ----- */
.site-container {
  display: block;
  margin: 0 auto;
  max-width: 1000px;
  width: 100%; }
  .site-container:after {
    content: "";
    display: table;
    clear: both; }
  @media only screen and (max-width : 640px) {
    .site-container {
      border-left: 0;
      border-right: 0; } }

/* ----- Logo ----- */
.logo {
  font-family: "source-sans-pro", 'arial', sans-serif;
  font-weight: 700;
  color: #4397d8;
  float: left;
  font-size: 1.375em;
  margin-top: 0.7em; }
  @media only screen and (max-width : 640px) {
    .logo {
      display: block;
      margin: 0 auto;
      padding-top: 0.7em;
      text-align: center;
      float: none; } }
  .logo em {
    font-family: "lato", 'arial', sans-serif;
    font-weight: 400;
    color: #bfc7d8;
    font-size: 0.6em; }
    @media only screen and (max-width : 1040px) {
      .logo em {
        display: none; } }

/* ----- Fading in sections on scroll ----- */
.js-reveal {
  opacity: 0;
  -webkit-transition: opacity 0.5s ease;
  -moz-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease; }
  @media only screen and (max-width : 800px) {
    .js-reveal {
      opacity: 1 !important; } }

.js-reveal--active {
  opacity: 1; }

/* ----- Splash screen ----- */
.splash__overlay {
  background: rgba(0, 0, 0, 0.6);
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 210; }

.splash__background {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 220; }

.splash__image {
  left: 50%;
  margin-top: -225px;
  margin-left: -300px;
  position: fixed;
  top: 50%;
  z-index: 230; }

.splash__button {
  position: fixed;
  bottom: 0;
  left: 50%;
  margin-left: -120px;
  width: 240px;
  max-width: 100% !important;
  z-index: 230; }

.splash__close {
  background: #fafafa;
  border-radius: 50%;
  border: 1px solid #4397d8;
  color: #4397d8;
  font-size: 1.4em;
  height: 30px;
  line-height: 27px;
  position: absolute;
  right: 20px;
  text-align: center;
  top: 20px;
  width: 30px;
  z-index: 230; }

/* ----- City information bar ----- */
.infobar {
  height: 80px;
  max-width: 1040px;
  display: block;
  width: 90%;
  background: #fff;
  margin: -150px auto 70px;
  position: relative;
  border-radius: 10px;
  z-index: 40;
  background: #ffffff;
  /* Old browsers */
  background: -moz-linear-gradient(top, #ffffff 0%, #edeff4 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffffff), color-stop(100%, #edeff4));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #ffffff 0%, #edeff4 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #ffffff 0%, #edeff4 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #ffffff 0%, #edeff4 100%);
  /* IE10+ */
  background: linear, to bottom, white 0%, #edeff4 100%;
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff',GradientType=0 );
  /* IE6-9 */ }
  @media only screen and (max-width : 640px) {
    .infobar {
      border-radius: 0;
      height: auto;
      margin: 0;
      padding: 0.5em 0;
      width: 100%; } }

.infobar__content {
  display: block;
  margin: 0 auto;
  max-width: 660px;
  text-align: center;
  width: 100%; }

.infobar__col {
  color: #bfc7d8;
  display: inline-block;
  line-height: 1.2em;
  margin-top: 1.15em;
  max-width: 210px;
  text-align: left;
  width: 32%; }
  @media only screen and (max-width : 640px) {
    .infobar__col {
      max-width: 90%;
      padding: 1em 0;
      margin: 0;
      width: 90%; } }
  .infobar__col strong {
    display: block;
    color: #4e4e5b; }

.infobar__icon {
  float: left;
  font-size: 2.2em;
  width: 30px;
  position: relative;
  top: 5px;
  text-align: center; }

.js-eventsicon {
  cursor: pointer; }

.infobar__icon.icon-thermometer {
  width: 20px; }

/* ----- Simple map illustration ----- */
.location {
  display: block;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
  width: 250px;
  height: 180px; }
  @media only screen and (max-width : 640px) {
    .location {
      display: none; } }

.map__canvas--mini {
  height: 270px;
  width: 250px; }

/* ----- Author ----- */
.author__details {
  max-width: 320px;
  margin: 90%;
  display: block;
  margin: 0 auto;
  text-align: left; }
  .author__details:after {
    content: "";
    display: table;
    clear: both; }
  .author__details img {
    border-radius: 50%;
    float: left;
    height: auto;
    margin-bottom: 2em;
    margin-right: 10%;
    max-width: 120px;
    width: 36%; }
  .author__details .title, .author__details .card--content p:first-child, .card--content .author__details p:first-child, .author__details .panel__content p:first-child, .panel__content .author__details p:first-child {
    margin-top: 1.3em;
    width: 54%; }

.author__name {
  display: inline-block; }

/* ----- Featured Icons ----- */
.featured-icon {
  color: #4397D8;
  display: block;
  font-size: 4em;
  height: 70px;
  line-height: 1.5em;
  margin: 0 auto 0.8em;
  width: 70px; }

/* ----- Search ----- */
.tt-dataset-0 {
  margin-bottom: 1.4em; }

.search__result {
  list-style: none;
  padding: 0;
  border-bottom: 1px solid #bfc7d8;
  padding: 1.2em 0;
  display: block; }
  .search__result i {
    width: 20px;
    height: 20px;
    display: inline-block;
    margin-right: 3px;
    position: relative;
    top: 1px; }
    .search__result i.icon-cityguide {
      color: #d8437b; }
    .search__result i.icon-navmap {
      color: #43d8c5; }
    .search__result i.icon-hotelpin {
      color: #eb5050; }

.search__result__country {
  color: #bfc7d8; }

.search__result__price {
  color: #bfc7d8;
  display: block;
  margin-left: 30px;
  margin-bottom: -0.8em;
  margin-top: -0.3em; }

.twitter-typeahead .tt-dropdown-menu {
  background: #fff;
  border-radius: 10px;
  border: 2px solid #dde1ea;
  padding: 20px;
  top: 80px !important;
  width: 275px;
  z-index: 130;
  max-height: 500px;
  overflow-y: scroll; }
  .twitter-typeahead .tt-dropdown-menu em {
    color: #333 !important;
    font-style: normal; }
  @media only screen and (max-width : 640px) {
    .twitter-typeahead .tt-dropdown-menu {
      width: 90%;
      margin-left: 5% !important; } }
  .twitter-typeahead .tt-dropdown-menu:after, .twitter-typeahead .tt-dropdown-menu:before {
    border-style: solid;
    content: '';
    display: block;
    height: 0;
    position: absolute;
    width: 0; }
  .twitter-typeahead .tt-dropdown-menu:after {
    border-color: transparent transparent #fff transparent;
    border-width: 10px;
    left: 130px;
    margin-left: -1px;
    top: -20px; }
  .twitter-typeahead .tt-dropdown-menu:before {
    border-color: transparent transparent #bfc7d8 transparent;
    border-width: 11px;
    left: 128px;
    top: -23px; }

/* ----- Terms and conditions ----- */
.terms-content {
  font-size: 0.8em;
  text-align: center; }
  .terms-content p:first-child {
    color: #4e4e5b; }

/* ----- Secondary header on single guides ----- */
.deals-header {
  position: fixed;
  color: #fff;
  top: -60px;
  width: 100%;
  background: #eb5050;
  z-index: 120;
  text-align: center;
  font-weight: bold;
  height: 52px; }
  .deals-header i {
    font-size: 1.8em;
    margin-right: 5px;
    position: relative;
    top: 0.25em; }
  .deals-header .btn {
    margin-top: 0.4em;
    font-size: 16px;
    padding: 0.45em 1em; }
    .deals-header .btn:hover {
      background: #fff;
      color: #eb5050; }

@media only screen and (max-width : 640px) {
  .deals-header--desktop {
    display: none !important; } }

.deals-header--mobile {
  height: 58px;
  display: none !important; }
  .deals-header--mobile span {
    float: left;
    margin: 1em 0.8em; }
  .deals-header--mobile a {
    float: right;
    margin-left: 0.8em;
    margin-top: 0.7em; }
  @media only screen and (max-width : 640px) {
    .deals-header--mobile {
      display: block !important; } }

/* ----- Mobile ans js stuff ----- */
html .js-mobile-showfilters {
  display: none; }

html .js-mobile-filtercontainer {
  display: block; }

html .js-mobile-booking {
  display: none; }

@media only screen and (max-width : 800px) {
  html .js-mobile-showfilters {
    display: block; }
  html .js-mobile-booking {
    display: block; }
  html .js-mobile-filtercontainer {
    display: none; } }

.form--headersearch--active {
  right: 0; }

.mobile-content {
  display: none; }

@media only screen and (max-width : 800px) {
  .mobile-content {
    display: block;
    text-align: center;
    padding: 3em 5%; } }

.ajax-overlay {
  background: rgba(255, 255, 255, 0.6);
  background-image: url(../img/ajax-loader.gif);
  background-repeat: no-repeat;
  background-position: center center;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 210; }

/* ----- Sitemap list ----- */
.sitemap-list {
  margin-bottom: 3em; }
  .sitemap-list a {
    color: #4e4e5b; }
    .sitemap-list a:hover {
      color: #4397d8; }
  .sitemap-list ul {
    margin-left: 20px; }

/* Get the bourbon mixin from http://bourbon.io */
/* Reset */
.flip-clock-wrapper * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden; }

.flip-clock-wrapper a {
  cursor: pointer;
  text-decoration: none;
  color: #ccc; }

.flip-clock-wrapper a:hover {
  color: #fff; }

.flip-clock-wrapper ul {
  list-style: none; }

.flip-clock-wrapper.clearfix:before, .flip-clock-wrapper.clearfix:after {
  content: " ";
  display: table; }

.flip-clock-wrapper.clearfix:after {
  clear: both; }

.flip-clock-wrapper.clearfix {
  *zoom: 1; }

/* Main */
.flip-clock-wrapper {
  font: normal 11px "Helvetica Neue", Helvetica, sans-serif;
  -webkit-user-select: none; }

.flip-clock-meridium {
  background: none !important;
  box-shadow: 0 0 0 !important;
  font-size: 36px !important; }

.flip-clock-meridium a {
  color: #313333; }

.flip-clock-wrapper {
  text-align: center;
  position: relative;
  width: 100%;
  margin: 1em; }

.flip-clock-wrapper:before, .flip-clock-wrapper:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.flip-clock-wrapper:after {
  clear: both; }

/* Skeleton */
.flip-clock-wrapper ul {
  font-family: "source-sans-pro", 'arial', sans-serif;
  font-weight: 700;
  position: relative;
  display: inline-block;
  margin: 0 -4px;
  width: 35px;
  height: 90px;
  font-size: 80px;
  font-weight: bold;
  line-height: 87px;
  border-radius: 6px;
  background: #000; }

.flip-clock-wrapper ul li {
  z-index: 1;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  line-height: 87px;
  text-decoration: none !important; }

.flip-clock-wrapper ul li:first-child {
  z-index: 2; }

.flip-clock-wrapper ul li a {
  display: block;
  height: 100%;
  -webkit-perspective: 200px;
  -moz-perspective: 200px;
  perspective: 200px;
  margin: 0 !important;
  overflow: visible !important;
  cursor: default !important; }

.flip-clock-wrapper ul li a div {
  z-index: 1;
  position: absolute;
  left: 0;
  width: 100%;
  height: 50%;
  font-size: 80px;
  overflow: hidden;
  outline: 1px solid transparent; }

.flip-clock-wrapper ul li a div .shadow {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 2; }

.flip-clock-wrapper ul li a div.up {
  -webkit-transform-origin: 50% 100%;
  -moz-transform-origin: 50% 100%;
  -ms-transform-origin: 50% 100%;
  -o-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  top: 0; }

.flip-clock-wrapper ul li a div.up:after {
  content: "";
  position: absolute;
  top: 44px;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 3px;
  background-color: #c0c7d9; }

.flip-clock-wrapper ul li a div.down {
  -webkit-transform-origin: 50% 0;
  -moz-transform-origin: 50% 0;
  -ms-transform-origin: 50% 0;
  -o-transform-origin: 50% 0;
  transform-origin: 50% 0;
  bottom: 0;
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px; }

.flip-clock-wrapper ul li a div div.inn {
  position: absolute;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 200%;
  text-align: center;
  background-color: #fff;
  color: #eb5050;
  border-radius: 6px;
  font-size: 40px; }

.flip-clock-wrapper ul li a div.up div.inn {
  top: 0; }

.flip-clock-wrapper ul li a div.down div.inn {
  bottom: 0; }

/* PLAY */
.flip-clock-wrapper ul.play li.flip-clock-before {
  z-index: 3; }

.flip-clock-wrapper .flip {
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.7); }

.flip-clock-wrapper ul.play li.flip-clock-active {
  -webkit-animation: asd 0.5s 0.5s linear both;
  -moz-animation: asd 0.5s 0.5s linear both;
  animation: asd 0.5s 0.5s linear both;
  z-index: 5; }

.flip-clock-divider {
  display: inline-block;
  position: relative;
  width: 30px;
  height: 100px; }

.flip-clock-divider:first-child {
  width: 0; }

.flip-clock-dot {
  display: none; }

.flip-clock-divider .flip-clock-label {
  bottom: 3px;
  color: #2a2e30;
  font-size: 16px;
  left: 25px;
  position: absolute;
  text-shadow: none;
  width: 67px;
  z-index: 100;
  font-family: "source-sans-pro", 'arial', sans-serif;
  font-weight: 600; }

.flip-clock-divider:first-child .flip-clock-label {
  left: -5px; }

.flip-clock-divider.minutes .flip-clock-label {
  right: -88px; }

.flip-clock-divider.seconds .flip-clock-label {
  right: -91px; }

.flip-clock-dot.top {
  top: 30px; }

.flip-clock-dot.bottom {
  bottom: 30px; }

@-webkit-keyframes asd {
  0% {
    z-index: 2; }

  20% {
    z-index: 4; }

  100% {
    z-index: 4; } }

@-moz-keyframes asd {
  0% {
    z-index: 2; }

  20% {
    z-index: 4; }

  100% {
    z-index: 4; } }

@-o-keyframes asd {
  0% {
    z-index: 2; }

  20% {
    z-index: 4; }

  100% {
    z-index: 4; } }

@keyframes asd {
  0% {
    z-index: 2; }

  20% {
    z-index: 4; }

  100% {
    z-index: 4; } }

.flip-clock-wrapper ul.play li.flip-clock-active .down {
  z-index: 2;
  -webkit-animation: turn 0.5s 0.5s linear both;
  -moz-animation: turn 0.5s 0.5s linear both;
  animation: turn 0.5s 0.5s linear both; }

@-webkit-keyframes turn {
  0% {
    -webkit-transform: rotateX(90deg); }

  100% {
    -webkit-transform: rotateX(0deg); } }

@-moz-keyframes turn {
  0% {
    -moz-transform: rotateX(90deg); }

  100% {
    -moz-transform: rotateX(0deg); } }

@-o-keyframes turn {
  0% {
    -o-transform: rotateX(90deg); }

  100% {
    -o-transform: rotateX(0deg); } }

@keyframes turn {
  0% {
    transform: rotateX(90deg); }

  100% {
    transform: rotateX(0deg); } }

.flip-clock-wrapper ul.play li.flip-clock-before .up {
  z-index: 2;
  -webkit-animation: turn2 0.5s linear both;
  -moz-animation: turn2 0.5s linear both;
  animation: turn2 0.5s linear both; }

@-webkit-keyframes turn2 {
  0% {
    -webkit-transform: rotateX(0deg); }

  100% {
    -webkit-transform: rotateX(-90deg); } }

@-moz-keyframes turn2 {
  0% {
    -moz-transform: rotateX(0deg); }

  100% {
    -moz-transform: rotateX(-90deg); } }

@-o-keyframes turn2 {
  0% {
    -o-transform: rotateX(0deg); }

  100% {
    -o-transform: rotateX(-90deg); } }

@keyframes turn2 {
  0% {
    transform: rotateX(0deg); }

  100% {
    transform: rotateX(-90deg); } }

.flip-clock-wrapper ul li.flip-clock-active {
  z-index: 3; }

@-webkit-keyframes show {
  0% {
    opacity: 0; }

  100% {
    opacity: 1; } }

@-moz-keyframes show {
  0% {
    opacity: 0; }

  100% {
    opacity: 1; } }

@-o-keyframes show {
  0% {
    opacity: 0; }

  100% {
    opacity: 1; } }

@keyframes show {
  0% {
    opacity: 0; }

  100% {
    opacity: 1; } }

@-webkit-keyframes hide {
  0% {
    opacity: 1; }

  100% {
    opacity: 0; } }

@-moz-keyframes hide {
  0% {
    opacity: 1; }

  100% {
    opacity: 0; } }

@-o-keyframes hide {
  0% {
    opacity: 1; }

  100% {
    opacity: 0; } }

@keyframes hide {
  0% {
    opacity: 1; }

  100% {
    opacity: 0; } }

/* Filters section
------------------------------------------*/
.filters {
  display: block;
  margin: 0 auto;
  max-width: 1040px;
  position: relative;
  margin-top: -130px;
  margin-bottom: 50px;
  width: 100%;
  z-index: 20; }
  @media only screen and (max-width : 800px) {
    .filters {
      background: #fafafa;
      margin-top: 0; } }
  @media only screen and (max-width : 640px) {
    .filters {
      margin-bottom: 1em; } }

/* ----- Filters Switcher ----- */
.filters__nav {
  width: 100%;
  text-align: center; }
  @media only screen and (max-width : 800px) {
    .filters__nav {
      background: #333; } }

.filters__link {
  color: #fff;
  display: inline-block;
  font-weight: 600;
  margin-left: 2px;
  margin-right: 2px;
  padding: 0.5em 0;
  position: relative;
  vertical-align: bottom;
  width: 150px;
  -webkit-border-top-left-radius: 10px;
  -webkit-border-top-right-radius: 10px;
  -moz-border-radius-topleft: 10px;
  -moz-border-radius-topright: 10px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px; }
  @media only screen and (max-width : 800px) {
    .filters__link {
      background-color: transparent;
      margin: 1em 2.5%;
      border-radius: 50px;
      padding: 1em 0 !important;
      width: 44%; } }

.filters__link:hover, .filters__link--active {
  padding: 0.8em 0;
  margin-bottom: 0;
  top: 1px; }
  @media only screen and (max-width : 800px) {
    .filters__link:hover, .filters__link--active {
      top: 0;
      margin-bottom: 1em; } }

.filters__link--weekend {
  background: #4397d8; }
  @media only screen and (max-width : 800px) {
    .filters__link--weekend {
      background-color: transparent; }
      .filters__link--weekend.filters__link--active {
        background: #4397d8; } }

.filters__link--deals {
  background: #eb5050; }
  @media only screen and (max-width : 800px) {
    .filters__link--deals {
      background-color: transparent; }
      .filters__link--deals.filters__link--active {
        background: #eb5050; } }

.filters__link--landing {
  background: #eb5050; }
  @media only screen and (max-width : 800px) {
    .filters__link--landing {
      background-color: transparent; }
      .filters__link--landing.filters__link--active {
        background: #eb5050; } }

/* ----- Secondary Navigaiton on filters ----- */
.filters__subnav {
  width: 100%;
  color: #fff;
  background: #4397d8;
  padding: 1em 0;
  text-align: center;
  position: relative;
  -webkit-border-top-left-radius: 5px;
  -webkit-border-top-right-radius: 5px;
  -moz-border-radius-topleft: 5px;
  -moz-border-radius-topright: 5px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px; }
  .filters__subnav:after {
    border-color: #4397d8 transparent transparent transparent;
    border-style: solid;
    border-width: 18px 18px 0 18px;
    bottom: -18px;
    content: "";
    display: block;
    height: 0;
    left: 50%;
    margin-left: -18px;
    position: absolute;
    width: 0; }
  @media only screen and (max-width : 800px) {
    .filters__subnav {
      background: #fafafa; }
      .filters__subnav a {
        margin: 0 !important;
        padding-left: 0;
        padding-right: 0;
        background-color: transparent !important;
        width: 40% !important;
        text-align: center; }
      .filters__subnav * {
        color: #4e4e5b; }
      .filters__subnav:after {
        display: none; } }

.filters__subnav--alt {
  padding: 1.5em 0;
  background: #eb5050; }
  @media only screen and (max-width : 800px) {
    .filters__subnav--alt {
      background: #fafafa; } }
  .filters__subnav--alt:after {
    border-color: #eb5050 transparent transparent transparent; }

.filters__subnav__title {
  color: #fff;
  display: inline-block;
  font-size: 24px;
  margin-right: 0.5em; }
  @media only screen and (max-width : 800px) {
    .filters__subnav__title {
      color: #4e4e5b;
      font-size: 1em;
      display: block;
      margin: 0 auto 1.5em; } }
  @media only screen and (max-width : 640px) {
    .filters__subnav__title {
      padding-left: 10px;
      padding-right: 10px; } }

/* Button groups */
.filters__subnavgroup {
  display: inline-block;
  z-index: 20;
  margin-right: 10px;
  position: relative; }
  @media only screen and (max-width : 800px) {
    .filters__subnavgroup {
      width: 90%;
      margin-bottom: 1.5em; }
      .filters__subnavgroup .btn {
        width: 100% !important;
        background: #4397d8 !important;
        color: #fff !important; }
        .filters__subnavgroup .btn span {
          color: #fff !important; } }
  .filters__subnavgroup i {
    font-size: 0.9em;
    position: relative;
    margin-left: 2px;
    top: 1px; }
    @media only screen and (max-width : 800px) {
      .filters__subnavgroup i {
        color: #fff;
        position: absolute;
        right: 20px;
        top: 20px; } }
  .filters__subnavgroup .icon-arrow-down {
    display: inline-block; }
  .filters__subnavgroup .icon-arrow-up {
    display: none; }
  .filters__subnavgroup .active {
    background: #edeff4;
    border-color: #edeff4;
    color: #4397d8; }
    .filters__subnavgroup .active .icon-arrow-down {
      display: none; }
    .filters__subnavgroup .active .icon-arrow-up {
      display: inline-block; }

.filters__subnavdropdown {
  background: #fff;
  box-shadow: 0 0 10px rgba(131, 136, 149, 0.4);
  border-radius: 10px;
  display: none;
  left: 0;
  position: absolute;
  top: 70px;
  width: 100%;
  font-weight: bold;
  font-size: 16px; }
  @media only screen and (max-width : 800px) {
    .filters__subnavdropdown {
      position: relative;
      top: 0;
      left: 0; }
      .filters__subnavdropdown .btn {
        background: #fff !important;
        color: #4e4e5b !important;
        max-width: 100% !important; } }
  .filters__subnavdropdown:before {
    width: 0;
    height: 0;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    border-bottom: 9px solid #fff;
    top: -9px;
    content: "";
    display: block;
    height: 0;
    left: 50%;
    margin-left: -9px;
    position: absolute;
    width: 0; }

.filters__subnavdropdown--wide {
  min-width: 250px;
  margin-left: -30px;
  max-height: 300px; }
  @media only screen and (max-width : 800px) {
    .filters__subnavdropdown--wide {
      margin-left: 0; } }

.fake-dropdowns {
  padding-top: 1.5em;
  width: 96%;
  height: 100%;
  max-height: 300px;
  overflow-y: auto; }

.f-select {
  color: #a2a2a6;
  position: relative;
  background: #fafafa; }

/* ----- Main Filters container ----- */
.filters__main {
  display: block;
  width: 100%;
  padding: 3em 20px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  background: #edeff4; }
  .filters__main:after {
    content: "";
    display: table;
    clear: both; }
  .filters--search .filters__main, .filters--hotels .filters__main {
    padding-bottom: 1em; }
    @media only screen and (max-width : 800px) {
      .filters--search .filters__main, .filters--hotels .filters__main {
        padding-top: 1em; } }
    .filters--search .filters__main .btn, .filters--hotels .filters__main .btn {
      margin-top: 3em; }
  .filters__main a:hover {
    background: #97c6ea; }
  .filters__main a.active {
    background: #4397d8 !important; }
  @media only screen and (max-width : 800px) {
    .filters__main a {
      background: #fff !important;
      color: #4397d8 !important; } }
  @media only screen and (max-width : 800px) {
    .filters__main {
      padding: 0; }
      .filters__main .btn--inline {
        background: #fafafa;
        border-radius: 0;
        border-top: none;
        color: #4397d8;
        display: block;
        font-size: 1em;
        margin: 0;
        max-width: 100% !important;
        padding: 1em;
        text-align: left;
        width: 100% !important; }
        .filters__main .btn--inline.active {
          color: #fff !important; }
        .filters__main .btn--inline.active:before {
          display: block;
          content: "\e644";
          color: #fff;
          float: right;
          font-family: 'icomoon';
          font-size: 0.6em; } }

/* ----- Filters columns ----- */
.filters__row {
  display: block;
  margin: 0 auto;
  max-width: 700px; }
  .filters__row:after {
    content: "";
    display: table;
    clear: both; }
  @media only screen and (max-width : 800px) {
    .filters__row {
      width: 90%;
      display: block; } }

.filters__row--large {
  max-width: 100%; }

.filters__col {
  width: 28%;
  margin: 0px 2% !important;
  text-align: left; }
  @media only screen and (max-width : 800px) {
    .filters__col {
      display: block;
      margin: 0 !important;
      float: none;
      width: 100%; } }
  .filters__col > .form__input {
    width: 100%; }

.filters__col--last {
  margin-left: 20%; }
  @media only screen and (max-width : 800px) {
    .filters__col--last {
      margin: 0; } }

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

/* ----- Icons on event tags ----- */
.tag-icon {
  display: inline-block;
  margin-right: 10px;
  font-size: 1.2em;
  position: relative;
  top: 2px; }

/* ----- Bottom bar on filters ----- */
.filters__footer {
  background: #4e4e5b;
  color: #fff;
  font-weight: 700;
  padding: 0.5em 0;
  position: relative;
  text-align: center;
  min-height: 39px;
  -webkit-border-bottom-right-radius: 5px;
  -webkit-border-bottom-left-radius: 5px;
  -moz-border-radius-bottomright: 5px;
  -moz-border-radius-bottomleft: 5px;
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px; }
  @media only screen and (max-width : 800px) {
    .filters__footer {
      background: #fafafa; }
      .filters__footer:after {
        display: none !important; } }
  .filters__footer:after {
    border-color: #4e4e5b transparent transparent transparent;
    border-style: solid;
    border-width: 18px 18px 0 18px;
    bottom: -18px;
    content: "";
    display: block;
    height: 0;
    left: 50%;
    margin-left: -18px;
    position: absolute;
    width: 0; }
  .filters__footer .filters__footer__content {
    display: none; }
    @media only screen and (max-width : 640px) {
      .filters__footer .filters__footer__content {
        color: #4e4e5b; }
        .filters__footer .filters__footer__content p {
          display: block; } }
  .filters__footer p {
    display: inline-block;
    margin: 0;
    color: #fafafa; }
    @media only screen and (max-width : 800px) {
      .filters__footer p {
        color: #4e4e5b; } }
  .filters__footer a {
    display: inline-block;
    text-decoration: underline;
    color: #fafafa;
    font-weight: 400;
    font-size: 1em; }
    @media only screen and (max-width : 800px) {
      .filters__footer a {
        color: #4397d8; } }
  .filters__footer span {
    font-style: italic;
    color: #fafafa;
    font-weight: 400; }
    @media only screen and (max-width : 800px) {
      .filters__footer span {
        color: #4397d8; } }

.filters__footer--mobile {
  display: none; }
  @media only screen and (max-width : 800px) {
    .filters__footer--mobile {
      display: block; } }

.filters__footer--desktop {
  display: block; }
  @media only screen and (max-width : 800px) {
    .filters__footer--desktop {
      display: none; } }

/* ----- Secondary Filters container ----- */
.filters__secondary.filter-container {
  margin-top: 0px;
  padding-top: 24px;
  padding-bottom: 24px;
  margin-bottom: 0px;
  padding-left: 30px !important;
  padding-right: 30px !important;
  border-bottom: 1px solid #bfc7d8; }
  .filters__secondary.filter-container:after {
    content: "";
    display: table;
    clear: both; }
  .filters__secondary.filter-container form:after {
    content: "";
    display: table;
    clear: both; }
  @media only screen and (max-width : 1040px) {
    .filters__secondary.filter-container {
      padding-left: 10px !important;
      padding-right: 10px !important; } }
  @media only screen and (max-width : 800px) {
    .filters__secondary.filter-container {
      width: 90%;
      margin: 0 auto;
      padding-left: 0px !important;
      padding-right: 0px !important; } }

.form__row--currency.form__row--inline {
  width: 50%;
  margin: 0;
  float: left;
  width: 30%; }
  .form__row--currency.form__row--inline:after {
    content: "";
    display: table;
    clear: both; }
  .form__row--currency.form__row--inline label {
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px; }
  .form__row--currency.form__row--inline .f-select {
    display: inline-block;
    vertical-align: middle;
    min-width: 100px; }
  @media only screen and (max-width : 800px) {
    .form__row--currency.form__row--inline {
      width: 100%;
      margin-top: 0px;
      padding-top: 0px;
      padding-bottom: 0px;
      margin-bottom: 24px; }
      .form__row--currency.form__row--inline label, .form__row--currency.form__row--inline .f-select {
        display: block;
        text-align: left; } }

.form__row--sort.form__row--inline {
  width: 50%;
  margin: 0;
  float: left;
  text-align: right;
  width: 70%; }
  .form__row--sort.form__row--inline:after {
    content: "";
    display: table;
    clear: both; }
  .form__row--sort.form__row--inline label {
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px; }
  .form__row--sort.form__row--inline .f-select {
    display: inline-block;
    vertical-align: middle;
    min-width: 100px; }
  @media only screen and (max-width : 800px) {
    .form__row--sort.form__row--inline {
      width: 100%;
      margin-top: 0px;
      padding-top: 0px;
      padding-bottom: 0px;
      margin-bottom: 24px; }
      .form__row--sort.form__row--inline label, .form__row--sort.form__row--inline .f-select {
        display: block;
        text-align: left; } }
  .form__row--sort.form__row--inline .f-select {
    min-width: 200px; }

/* ----- Secondary Filters fake dropdown ----- */
.fake-dropdown {
  position: relative;
  z-index: 50;
  background: #fafafa; }
  @media only screen and (max-width : 800px) {
    .fake-dropdown {
      height: auto !important; } }

.fake-dropdown-row .dropdown-arrow {
  z-index: 50; }

.fake-dropdown-row .icon-arrow-up {
  display: none; }

@media only screen and (max-width : 800px) {
  .filters .title--tertiary, .filters .panel__content p:first-child, .panel__content .filters p:first-child {
    font-size: 1em;
    font-weight: bold;
    float: left;
    margin: 1em 0; } }

.fake-dropdown__title {
  line-height: 2em; }

.fake-dropdown__entries {
  position: absolute;
  padding-top: 1em;
  display: none;
  top: 31px;
  left: -1px;
  width: 100.6%;
  background: #fafafa;
  border: 1px solid #bfc7d8;
  border-top: 1px solid #fafafa;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px; }
  .fake-dropdown__entries label {
    margin-top: 0 !important; }
  @media only screen and (max-width : 800px) {
    .fake-dropdown__entries {
      width: 100.8%; } }
  @media only screen and (max-width : 800px) {
    .fake-dropdown__entries {
      border: none;
      left: 0;
      margin-top: 0;
      position: relative;
      top: 0;
      width: 100%; } }

.fake-dropdown__entry {
  padding: 0.1em 1em;
  display: block;
  width: 100%; }
  .fake-dropdown__entry:after {
    content: "";
    display: table;
    clear: both; }
  .fake-dropdown__entry .form__input--checkbox {
    margin: 0 !important; }
  .fake-dropdown__entry i {
    color: #bfc7d8;
    width: 40px;
    display: inline-block;
    text-align: center;
    margin: 0 0 0 12px;
    font-size: 1.2em;
    position: relative;
    top: 3px; }

.js-hotel-types .fake-dropdown__entry i {
  width: 10px; }

html .fake-dropdown__entry--alt {
  text-align: left;
  border-bottom: 1px solid #bfc7d8;
  width: auto;
  padding: 0;
  margin: 0 1em 1em; }
  html .fake-dropdown__entry--alt:last-child {
    border-bottom: none; }
  html .fake-dropdown__entry--alt .form__row--standalonealt {
    margin: 0; }
  html .fake-dropdown__entry--alt .form__input--checkbox {
    margin-left: -14px !important; }
  html .fake-dropdown__entry--alt label {
    font-family: "lato", 'arial', sans-serif;
    font-weight: 400;
    margin-left: 0;
    font-size: 16px;
    font-weight: bold;
    color: #4397d8; }
  html .fake-dropdown__entry--alt .fake-checkbox {
    left: auto;
    right: 0; }

/* Forms
------------------------------------------*/
/* Labels
------------------------------------------*/
label {
  font-family: "lato", 'arial', sans-serif;
  font-weight: 400;
  display: block;
  color: #a2a2a6;
  font-weight: 700; }
  label[disabled], label[readonly], fieldset[disabled] label, .fieldset label .disbaled label {
    color: #a2a2a6 !important; }

/* Inputs/Textarea
------------------------------------------*/
textarea, select, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  outline: none;
  text-decoration: none;
  padding-left: 10px !important;
  padding-right: 10px !important;
  display: block;
  width: 100%;
  height: 38px;
  font-family: "lato", 'arial', sans-serif;
  font-weight: 400;
  font-size: 1em;
  vertical-align: middle;
  background-image: none;
  border: 1px solid #a2a2a6;
  border-radius: 0px; }
  .f-error textarea, .f-error select, .f-error input[type="text"], .f-error input[type="password"], .f-error input[type="datetime"], .f-error input[type="datetime-local"], .f-error input[type="date"], .f-error input[type="month"], .f-error input[type="time"], .f-error input[type="week"], .f-error input[type="number"], .f-error input[type="email"], .f-error input[type="url"], .f-error input[type="search"], .f-error input[type="tel"], .f-error input[type="color"] {
    border: 1px solid #ff787c;
    color: #ff787c; }
  .f-success textarea, .f-success select, .f-success input[type="text"], .f-success input[type="password"], .f-success input[type="datetime"], .f-success input[type="datetime-local"], .f-success input[type="date"], .f-success input[type="month"], .f-success input[type="time"], .f-success input[type="week"], .f-success input[type="number"], .f-success input[type="email"], .f-success input[type="url"], .f-success input[type="search"], .f-success input[type="tel"], .f-success input[type="color"] {
    border: 1px solid #98dd7c;
    color: #98dd7c; }
  .f-warning textarea, .f-warning select, .f-warning input[type="text"], .f-warning input[type="password"], .f-warning input[type="datetime"], .f-warning input[type="datetime-local"], .f-warning input[type="date"], .f-warning input[type="month"], .f-warning input[type="time"], .f-warning input[type="week"], .f-warning input[type="number"], .f-warning input[type="email"], .f-warning input[type="url"], .f-warning input[type="search"], .f-warning input[type="tel"], .f-warning input[type="color"] {
    border: 1px solid #e8af3f;
    color: #e8af3f; }
  .f-info textarea, .f-info select, .f-info input[type="text"], .f-info input[type="password"], .f-info input[type="datetime"], .f-info input[type="datetime-local"], .f-info input[type="date"], .f-info input[type="month"], .f-info input[type="time"], .f-info input[type="week"], .f-info input[type="number"], .f-info input[type="email"], .f-info input[type="url"], .f-info input[type="search"], .f-info input[type="tel"], .f-info input[type="color"] {
    border: 1px solid #82accc;
    color: #82accc; }
  textarea[disabled], .disbaled textarea, select[disabled], .disbaled select, input[type="text"][disabled], .disbaled input[type="text"], input[type="password"][disabled], .disbaled input[type="password"], input[type="datetime"][disabled], .disbaled input[type="datetime"], input[type="datetime-local"][disabled], .disbaled input[type="datetime-local"], input[type="date"][disabled], .disbaled input[type="date"], input[type="month"][disabled], .disbaled input[type="month"], input[type="time"][disabled], .disbaled input[type="time"], input[type="week"][disabled], .disbaled input[type="week"], input[type="number"][disabled], .disbaled input[type="number"], input[type="email"][disabled], .disbaled input[type="email"], input[type="url"][disabled], .disbaled input[type="url"], input[type="search"][disabled], .disbaled input[type="search"], input[type="tel"][disabled], .disbaled input[type="tel"], input[type="color"][disabled], .disbaled input[type="color"] {
    cursor: not-allowed;
    border: 1px solid #a2a2a6; }
  textarea:focus, select:focus, input[type="text"]:focus, input[type="password"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="color"]:focus {
    border: 1px solid #2370ab;
    -webkit-transition: border, 0.2s, ease-in-out;
    -moz-transition: border, 0.2s, ease-in-out;
    transition: border, 0.2s, ease-in-out; }
  @media only screen and (max-width : 800px) {
    textarea, select, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"] {
      height: 44px; } }

/* Containers
------------------------------------------*/
form .f-actions {
  margin-top: 24px;
  padding-top: 24px;
  padding-bottom: 0px;
  margin-bottom: 0px;
  border-top: 1px solid #a2a2a6; }
  form .f-actions:after {
    content: "";
    display: table;
    clear: both; }
  form .f-actions .btn, form .f-actions button {
    margin-right: 10px; }

/* Field
------------------------------------------*/
.f-field {
  margin-top: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  margin-bottom: 12px; }
  .f-field:after {
    content: "";
    display: table;
    clear: both; }
  .f-field:last-child {
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px; }
  .f-field.f-error label {
    color: #ff787c; }
    .f-field.f-error label.radio, .f-field.f-error label.checkbox {
      color: #a2a2a6; }
  .f-field.f-success label {
    color: #98dd7c; }
    .f-field.f-success label.radio, .f-field.f-success label.checkbox {
      color: #a2a2a6; }
  .f-field.f-warning label {
    color: #e8af3f; }
    .f-field.f-warning label.radio, .f-field.f-warning label.checkbox {
      color: #a2a2a6; }
  .f-field.f-info label {
    color: #82accc; }
    .f-field.f-info label.radio, .f-field.f-info label.checkbox {
      color: #a2a2a6; }

textarea {
  height: auto;
  min-height: 100px;
  padding: 5px; }

input[type="search"] {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button {
  height: auto; }

/* Checkboxes and radios
------------------------------------------*/
.f-radio, .f-checkbox {
  font-family: "lato", 'arial', sans-serif;
  font-weight: 400;
  display: block;
  cursor: pointer; }
  .f-radio input, .f-checkbox input {
    margin-right: 5px;
    outline: 0;
    margin-top: -1px;
    vertical-align: middle; }

.disbaled .f-radio, .f-radio[disabled], .disbaled .f-checkbox, .f-checkbox[disabled], .disbaled .f-choices, .f-choices[disabled], .disbaled input[type="radio"], input[type="radio"][disabled], .disbaled input[type="checkbox"], input[type="checkbox"][disabled] {
  cursor: not-allowed;
  color: #a2a2a6 !important; }

/* Select
------------------------------------------*/
.f-select {
  border: 1px solid #a2a2a6;
  border-radius: 0px;
  position: relative; }
  .f-select select {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none;
    outline: none;
    text-decoration: none;
    margin: 0px;
    border: 0px;
    height: 38px;
    padding-right: 40px;
    padding-left: 10px;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ''; }
    .f-select select[disabled], .disbaled .f-select select {
      border: 0px;
      color: #cdd3e1;
      cursor: not-allowed; }
  .f-select select::-ms-expand {
    display: none; }
  .f-error .f-select {
    border: 1px solid #ff787c; }
  .f-success .f-select {
    border: 1px solid #98dd7c; }
  .f-warning .f-select {
    border: 1px solid #e8af3f; }
  .f-info .f-select {
    border: 1px solid #82accc; }
  .f-select:after {
    content: " ";
    border: 7px solid transparent;
    content: " ";
    display: block;
    width: 0px;
    height: 0px;
    position: absolute;
    border-top-color: #a2a2a6;
    border-bottom-width: 0px;
    position: absolute;
    right: 10px;
    top: 15px; }
    .f-error .f-select:after {
      border-top-color: #ff787c; }
    .f-success .f-select:after {
      border-top-color: #98dd7c; }
    .f-warning .f-select:after {
      border-top-color: #e8af3f; }
    .f-info .f-select:after {
      border-top-color: #82accc; }
  @media only screen and (max-width : 800px) {
    .f-select select {
      height: 44px;
      line-height: 44px; }
    .f-select:after {
      top: 20px; } }

/* File Input
------------------------------------------*/
.f-input-upload {
  font-family: "source-sans-pro", 'arial', sans-serif;
  font-weight: 700;
  display: inline-block;
  float: left;
  position: relative;
  overflow: hidden;
  cursor: pointer; }
  .f-input-upload input {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    font-size: 200px;
    cursor: pointer;
    line-height: 38px;
    opacity: 0;
    filter: alpha(opacity=0); }
  .f-input-upload .f-btn, .f-input-upload button {
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px; }
  .f-input-upload + label {
    line-height: 38px;
    padding-left: 20px;
    float: left;
    font-weight: 400;
    color: #a2a2a6; }
  .f-input-upload:hover .btn, .f-input-upload:hover button {
    background: #287ec0; }
  .f-input-upload[disabled], .disabled .f-input-upload {
    cursor: not-allowed; }
    .f-input-upload[disabled] input, .disabled .f-input-upload input {
      cursor: not-allowed; }
  @media only screen and (max-width : 640px) {
    .f-input-upload {
      width: 100%;
      display: block; } }

/* Extend - Forms
------------------------------------------*/
::-webkit-input-placeholder {
  color: #a2a2a6;
  line-height: 1.5em; }

:-moz-placeholder {
  color: #a2a2a6;
  line-height: 1.5em; }

::-moz-placeholder {
  color: #a2a2a6;
  line-height: 1.5em; }

:-ms-input-placeholder {
  color: #a2a2a6;
  line-height: 1.5em; }

.form {
  position: relative;
  width: 100%; }

.form--booking {
  position: relative;
  z-index: 50;
  display: none;
  background: #eff1f5; }
  .form--booking .select--hotel {
    width: 320px; }
  .form--booking .form__row input {
    height: 40px; }
  @media only screen and (max-width : 1040px) {
    .form--booking {
      display: none; }
      .form--booking label {
        display: none; }
      .form--booking .select--hotel {
        width: 100%; }
      .form--booking .form__row {
        float: none;
        margin: 1em auto;
        max-width: 90%;
        width: 90%;
        display: block; }
        .form--booking .form__row:after {
          content: "";
          display: table;
          clear: both; }
        .form--booking .form__row input {
          height: 40px; } }
  .sticky-header .form--booking {
    left: 0;
    position: fixed;
    top: 60px;
    width: 100%;
    z-index: 130; }
  .form--booking .btn {
    position: relative;
    top: -4px; }
    @media only screen and (max-width : 1040px) {
      .form--booking .btn {
        top: 0;
        max-width: 90% !important;
        width: 90% !important;
        float: none;
        display: block;
        margin: 1em auto 0; } }

.form__container {
  max-width: 1000px;
  display: block;
  padding: 2em 0 1.25em 0;
  margin: 0 auto; }
  .form__container:after {
    content: "";
    display: table;
    clear: both; }
  @media only screen and (max-width : 1040px) {
    .form__container {
      padding: 1em 0 1.5em 0; } }

.form__row {
  float: left;
  margin: 0 10px;
  position: relative; }

.form__row--inline {
  display: inline-block;
  float: none;
  margin: 0 20px;
  vertical-align: top; }
  @media only screen and (max-width : 800px) {
    .form__row--inline {
      margin: 0 !important; }
      .form__row--inline + .form__row--inline {
        margin: 20px 0px 0px !important; } }

/* f-select styles
------------------------------------------*/
.f-select {
  color: #a2a2a6;
  background: #fafafa;
  line-height: 35px;
  height: 35px !important;
  border-radius: 5px;
  border: 0;
  overflow: hidden; }
  .f-select select {
    height: 35px !important;
    line-height: 35px;
    border: 1px solid #bfc7d8;
    border-radius: 5px;
    position: relative;
    z-index: 10;
    background: none;
    -webkit-font-smoothing: antialiased; }
  @media only screen and (max-width : 800px) {
    .f-select {
      line-height: 44px;
      height: 44px !important; }
      .f-select select {
        line-height: 44px;
        height: 44px !important; } }
  .f-select:after {
    border: 5px solid transparent;
    content: " ";
    display: block;
    width: 0px;
    height: 0px;
    position: absolute;
    border-top-color: #4397d8;
    border-bottom-width: 0px;
    z-index: 1;
    pointer-events: none; }

.form__input--dropdown.fake-dropdown .fake-dropdown__title {
  position: relative;
  z-index: 10; }
  .form__input--dropdown.fake-dropdown .fake-dropdown__title:after {
    border: 5px solid transparent;
    content: " ";
    display: block;
    width: 0px;
    height: 0px;
    position: absolute;
    border-top-color: #4397d8;
    border-bottom-width: 0px;
    z-index: 1;
    display: inline-block;
    pointer-events: none;
    top: 15px;
    right: 10px; }
@media only screen and (max-width : 800px) {
  .form__input--dropdown.fake-dropdown .fake-dropdown__title {
    height: 44px;
    line-height: 44px;
    padding: 0 10px; }
    .form__input--dropdown.fake-dropdown .fake-dropdown__title:after {
      top: 20px; } }

.form__row--standalone {
  width: 100%;
  margin: 0 0 1em; }

.form__row--standalonealt {
  display: block;
  margin: 0 0 0.5em;
  width: 100%; }

.filters__main .title, .filters__main .card--content p:first-child, .card--content .filters__main p:first-child, .filters__main .panel__content p:first-child, .panel__content .filters__main p:first-child {
  width: 100%;
  display: block; }

.form__radiogroup {
  margin-top: 2em;
  clear: both;
  width: 100%;
  margin-bottom: -1em;
  text-align: center; }
  @media only screen and (max-width : 800px) {
    .form__radiogroup {
      overflow: hidden;
      margin-bottom: 1em; }
      .form__radiogroup .form__row--inline {
        display: block;
        text-align: left;
        padding: 0 0 1em;
        width: 100%; }
      .form__radiogroup .form__label--inlinesmall {
        margin-left: 40px; } }

/* ----- Labels ----- */
html .form__label {
  font-family: "source-sans-pro", 'arial', sans-serif;
  font-weight: 700;
  color: #4e4e5b;
  margin-bottom: 0.5em; }

html .form__label--standalone {
  display: block;
  width: 100%;
  margin: 0 0 1em; }

html .form__label--inline {
  float: left;
  font-size: 21px;
  margin-right: 10px;
  top: 5px;
  position: relative; }

html .form__label--inlinesmall {
  width: auto;
  display: inline-block; }

html .form__label--highlight {
  color: #4397d8; }

html .form__label--alt {
  color: #a2a2a6; }

/* ----- Inputs ----- */
html .form__input {
  font-family: "lato", 'arial', sans-serif;
  font-weight: 400;
  width: 260px;
  border-radius: 5px;
  float: left;
  border: 1px solid #bfc7d8;
  font-size: 1em;
  line-height: 1.25em;
  height: 36px; }
  @media only screen and (max-width : 1040px) {
    html .form__input {
      max-width: 100%;
      width: 100%; } }
  html .form__input:focus {
    border: 1px solid #bfc7d8; }

html .form__input--hidden {
  display: none; }

html .form__input--wide {
  width: 100%;
  max-width: 300px; }
  @media only screen and (max-width : 1040px) {
    html .form__input--wide {
      max-width: 100%;
      width: 100%; } }

html .form__input--thin {
  width: 150px; }
  @media only screen and (max-width : 1040px) {
    html .form__input--thin {
      max-width: 100%;
      width: 100%; } }

html .form__input--dropdown {
  color: #a2a2a6;
  position: relative;
  background: #fafafa; }

.dropdown-arrow {
  color: #4397d8;
  display: block;
  font-size: 0.8em;
  pointer-events: none;
  position: absolute;
  right: 0px;
  height: 34px;
  bottom: 1px;
  width: 30px;
  text-align: center;
  line-height: 37px;
  background: #fafafa;
  border-right: 1px solid #BFC7D8;
  -webkit-border-top-right-radius: 5px;
  -webkit-border-bottom-right-radius: 5px;
  -moz-border-radius-topright: 5px;
  -moz-border-radius-bottomright: 5px;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px; }
  .lt-ie10 .dropdown-arrow {
    display: none; }
  .form__row--currency .dropdown-arrow, .form__row--sort .dropdown-arrow {
    height: 33px;
    bottom: 3px; }
    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .form__row--currency .dropdown-arrow, .form__row--sort .dropdown-arrow {
        /* IE10+ specific styles go here */
        height: 34px;
        bottom: 3px; } }
    @media only screen and (max-width : 800px) {
      .form__row--currency .dropdown-arrow, .form__row--sort .dropdown-arrow {
        bottom: 1px; } }

/* ----- Radio Inputs with fakes ----- */
html .form__input--radio {
  width: auto;
  float: none;
  position: relative;
  z-index: 10;
  float: left;
  margin: 0 10px;
  visibility: hidden; }
  @media only screen and (max-width : 800px) {
    html .form__input--radio {
      display: none; } }

.form__input--radio:checked + label span:before {
  background: #4397d8;
  border-radius: 50%;
  content: "";
  display: block;
  height: 6px;
  left: 0;
  left: 9px;
  position: absolute;
  top: 9px;
  width: 6px; }

.fake-radio {
  width: 25px;
  height: 25px;
  display: block;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #bfc7d8;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10; }

/* ----- Checkbox Inputs with fakes ----- */
html .form__input--checkbox {
  width: auto;
  float: none;
  position: relative;
  z-index: 10;
  float: left;
  margin: 0 10px;
  visibility: hidden; }

.form__input--checkbox:checked + label span:before {
  color: #4397d8;
  display: block;
  font-family: 'icomoon';
  font-size: 7px;
  line-height: 23px;
  text-align: center;
  width: 100%; }

.fake-checkbox {
  width: 25px;
  height: 25px;
  display: block;
  border-radius: 5px;
  background: #fff;
  border: 1px solid #bfc7d8;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10; }

/* ----- Specifics ----- */
/* Booking form */
.js-form--headersearchclose, .js-form--headersearchshow {
  display: none; }

@media only screen and (max-width : 640px) {
  .js-form--headersearchclose {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 60px;
    text-align: center;
    line-height: 60px;
    height: 60px;
    color: #4397d8;
    z-index: 40; }
  .js-form--headersearchshow {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    text-align: center;
    line-height: 60px;
    height: 60px;
    color: #4397d8;
    z-index: 5; } }

.form--headersearch {
  float: right;
  border-left: 1px solid #edeff4;
  height: 100%;
  margin-left: 20px;
  max-width: 275px;
  position: relative; }
  @media only screen and (max-width : 640px) {
    .form--headersearch {
      background: #fff;
      border: none;
      display: none;
      height: 60px;
      margin: 0;
      max-width: 100%;
      position: absolute;
      right: -100%;
      top: 0;
      transition: right 0.5s;
      width: 100%; } }
  .form--headersearch:after {
    color: #4397d8;
    content: "\e63b";
    font-family: 'icomoon';
    position: absolute;
    right: 20px;
    top: 22px; }

@media only screen and (max-width : 640px) {
  .form--headersearch:after {
    display: none; }
  .form--headersearch--active {
    display: block;
    right: 0; }
  .twitter-typeahead {
    width: 100%;
    position: relative;
    z-index: 30; } }

html .form__input--search {
  border: 2px solid #dde1ea;
  border-radius: 50px;
  margin-left: 20px;
  margin-top: 0.65em;
  padding-left: 1em !important;
  padding-right: 2.5em !important;
  height: 40px;
  width: 235px; }
  @media only screen and (max-width : 640px) {
    html .form__input--search {
      margin-right: 0;
      margin-left: 0;
      width: 100%;
      padding-left: 5%;
      padding-right: 5%;
      max-width: 80%;
      margin-left: 15%; } }
  html .form__input--search:focus {
    border: 2px solid #dde1ea; }

html .form__input--date {
  color: #4397d8;
  padding-left: 35px !important; }

.form-dateicon {
  color: #4397d8;
  font-size: 1em;
  pointer-events: none;
  position: absolute;
  right: 125px;
  top: 9.5px; }
  @media only screen and (max-width : 1040px) {
    .form-dateicon {
      top: 11px;
      left: 10px;
      width: 20px; } }

.hotel-firstformrow {
  margin-top: 1.75em; }

/* ----- Errors ----- */
.form__errors, .panel__content ul.form__errors {
  margin-bottom: 1.5em;
  margin-top: 0.5em; }

.form__error, .panel__content li.form__error {
  color: #f00;
  margin-bottom: 0; }

/* ----- Muted ----- */
.form__row__muted {
  font-size: 12px;
  color: #a2a2a6; }
  .form__row__muted a:link, .form__row__muted a:visited {
    color: #4397d8; }

/* Types
------------------------------------------*/
.hero {
  height: 580px;
  text-align: center;
  background-position: center center;
  background-size: cover;
  position: relative; }
  .hero:before {
    content: " ";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    margin-right: -0.25em; }
  .hero:after {
    bottom: -1px;
    content: '';
    display: block;
    height: 300px;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: 10;
    background: #fefefe;
    /* Old browsers */
    background: -moz-linear-gradient(top, rgba(254, 254, 254, 0) 0%, #fefefe 100%);
    /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(254, 254, 254, 0)), color-stop(100%, #fefefe));
    /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, rgba(254, 254, 254, 0) 0%, #fefefe 100%);
    /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, rgba(254, 254, 254, 0) 0%, #fefefe 100%);
    /* Opera 11.10+ */
    background: -ms-linear-gradient(top, rgba(254, 254, 254, 0) 0%, #fefefe 100%);
    /* IE10+ */
    background: linear, to bottom, rgba(254, 254, 254, 0) 0%, #fefefe 100%;
    /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fefefe', endColorstr='#fefefe',GradientType=0 );
    /* IE6-9 */ }
    @media only screen and (max-width : 800px) {
      .hero:after {
        display: none; } }
  .lt-ie10 .hero:after {
    display: none !important; }
  @media only screen and (max-width : 640px) {
    .hero {
      height: 400px; } }

/* Elements
------------------------------------------*/
.hero__overlay {
  display: block;
  background: rgba(0, 0, 0, 0.2);
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 10; }

.hero__content {
  position: relative;
  z-index: 20;
  vertical-align: middle;
  display: inline-block;
  max-width: 750px;
  text-align: center;
  width: 100%;
  margin-top: -90px; }
  .hero__content .title--primary {
    text-shadow: 0 1px 5px rgba(131, 136, 149, 0.4); }
  @media only screen and (max-width : 800px) {
    .hero__content {
      margin: 0 auto;
      width: 90%; }
      .hero__content .title--primary {
        font-size: 36px; } }

.hero__image {
  width: 100%;
  position: absolute;
  top: 0; }
  @media only screen and (max-width : 800px) {
    .hero__image {
      display: none !important; } }

.hero__link {
  bottom: 145px;
  position: absolute;
  right: 100px;
  z-index: 40;
  width: auto;
  max-width: 100% !important; }
  @media only screen and (max-width : 1040px) {
    .hero__link {
      right: 50px; } }
  @media only screen and (max-width : 800px) {
    .hero__link {
      background-color: transparent;
      border: none;
      bottom: 0;
      right: 0; }
      .hero__link:hover, .hero__link:focus {
        background-color: transparent;
        border: none;
        color: #4397d8; } }
  .hero__link i {
    position: relative;
    top: 1px; }

.hero__credit {
  position: absolute;
  margin-top: 20px;
  color: #fff;
  z-index: 30;
  right: 110px; }
  @media only screen and (max-width : 800px) {
    .hero__credit {
      right: 0;
      text-align: center;
      width: 100%; } }

.hero__author {
  max-width: 320px;
  margin: 1em auto 2em;
  display: block; }
  .hero__author img {
    border-radius: 50%;
    border: 3px solid #fff;
    display: inline-block;
    height: 40px;
    margin-right: 5px;
    position: relative;
    top: -2px;
    width: 40px; }
  .hero__author p {
    display: inline-block; }
    .hero__author p .title, .hero__author p .card--content p:first-child, .card--content .hero__author p p:first-child, .hero__author p .panel__content p:first-child, .panel__content .hero__author p p:first-child {
      float: left; }
    .hero__author p a {
      color: #fff;
      display: block;
      text-decoration: underline; }
  .lt-ie10 .hero__author .title, .lt-ie10 .hero__author .card--content p:first-child, .card--content .lt-ie10 .hero__author p:first-child, .lt-ie10 .hero__author .panel__content p:first-child, .panel__content .lt-ie10 .hero__author p:first-child {
    clear: both;
    display: block;
    width: 100%; }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .hero__author .title, .hero__author .card--content p:first-child, .card--content .hero__author p:first-child, .hero__author .panel__content p:first-child, .panel__content .hero__author p:first-child {
    clear: both;
    display: block;
    width: 100%; } }

/* Landing Page - Hero Segments
------------------------------------------*/
.home .hero-segment--families .hero__content a {
  font-weight: 700;
  color: #ffffff; }
.home .hero-segment--families .hero__content h1.title {
  color: #ffffff;
  font-size: 1.5em;
  text-transform: uppercase;
  font-weight: 300;
  letter-spacing: 0.2em;
  font-family: Helvetica, Arial, sans-serif;
  margin-bottom: 10px; }
.home .hero-segment--families .hero__content h1.title em {
  font-family: "leckerlioneregular";
  color: #ffffff;
  display: block;
  font-size: 4em;
  font-style: normal;
  line-height: 1.25em;
  text-transform: none;
  letter-spacing: 0em; }

.home .hero-segment--couples .hero__content a {
  font-weight: 700;
  color: #ffffff; }
.home .hero-segment--couples .hero__content h1.title {
  color: #ffffff;
  font-size: 1.5em;
  text-transform: uppercase;
  font-weight: 300;
  letter-spacing: 0.2em;
  font-family: Helvetica, Arial, sans-serif;
  margin-bottom: 10px; }
.home .hero-segment--couples .hero__content h1.title em {
  font-family: "leckerlioneregular";
  color: #ffffff;
  display: block;
  font-size: 4em;
  font-style: normal;
  line-height: 1.25em;
  text-transform: none;
  letter-spacing: 0em; }

/* ----- Image grids ----- */
.image-grid {
  max-width: 1200px;
  width: 100%;
  display: block;
  margin: 0 auto; }

.image-grid__qtr {
  float: left;
  width: 50%; }
  @media only screen and (max-width : 640px) {
    .image-grid__qtr {
      width: 100%; } }
  .image-grid__qtr:nth-child(odd) {
    clear: left; }

.image-grid__panel {
  float: left;
  overflow: hidden;
  border: 1px solid #fff;
  transition: opacity 0.5s; }
  .image-grid__panel:hover {
    opacity: 0.8; }
  @media only screen and (max-width : 640px) {
    .image-grid__panel {
      width: 100% !important; } }
  .image-grid__panel img {
    float: left;
    width: 100.1%;
    max-width: 100.1%; }

.image-grid--01 .image-grid__panel--01 {
  width: 100%; }
.image-grid--01 .image-grid__panel--02 {
  width: 50%; }
.image-grid--01 .image-grid__panel--03 {
  width: 50%; }
.image-grid--01 .image-grid__panel--04 {
  width: 50%; }
.image-grid--01 .image-grid__panel--05 {
  width: 50%; }
.image-grid--01 .image-grid__panel--06 {
  width: 100%; }
.image-grid--01 .image-grid__panel--07 {
  width: 50%; }
.image-grid--01 .image-grid__panel--08 {
  width: 50%; }
.image-grid--01 .image-grid__panel--09 {
  width: 100%; }

.image-grid--02 .image-grid__panel--01 {
  width: 100%; }
.image-grid--02 .image-grid__panel--02 {
  width: 50%; }
.image-grid--02 .image-grid__panel--03 {
  width: 50%; }
.image-grid--02 .image-grid__panel--04 {
  width: 50%; }
.image-grid--02 .image-grid__panel--05 {
  width: 50%; }
.image-grid--02 .image-grid__panel--06 {
  width: 50%;
  clear: left; }
.image-grid--02 .image-grid__panel--07 {
  width: 50%;
  float: right; }

.image-grid--03 .image-grid__panel--01 {
  width: 50%; }
.image-grid--03 .image-grid__panel--02 {
  width: 50%; }
.image-grid--03 .image-grid__panel--03 {
  width: 50%; }
.image-grid--03 .image-grid__panel--04 {
  width: 50%; }
.image-grid--03 .image-grid__panel--05 {
  width: 100%; }
.image-grid--03 .image-grid__panel--06 {
  width: 100%; }
.image-grid--03 .image-grid__panel--07 {
  width: 50%; }
.image-grid--03 .image-grid__panel--08 {
  width: 50%; }
.image-grid--03 .image-grid__panel--09 {
  width: 50%; }
.image-grid--03 .image-grid__panel--10 {
  width: 50%; }

.image-grid--04 .image-grid__panel--01 {
  width: 50%; }
.image-grid--04 .image-grid__panel--02 {
  width: 50%; }
.image-grid--04 .image-grid__panel--03 {
  width: 100%; }
.image-grid--04 .image-grid__panel--04 {
  width: 100%; }
.image-grid--04 .image-grid__panel--05 {
  width: 100%; }
.image-grid--04 .image-grid__panel--06 {
  width: 100%; }
.image-grid--04 .image-grid__panel--07 {
  width: 50%; }
.image-grid--04 .image-grid__panel--08 {
  width: 50%; }

/* Core Layout
------------------------------------------*/
header:after, footer:after {
  content: "";
  display: table;
  clear: both; }

header .f-row:first-child {
  margin-top: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  margin-bottom: 0px; }
@media only screen and (max-width : 640px) {
  header .f-row {
    padding-left: 0px !important;
    padding-right: 0px !important; } }

section, article, aside {
  margin-top: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  margin-bottom: 0px; }
  section:after, article:after, aside:after {
    content: "";
    display: table;
    clear: both; }

.f-row {
  margin-top: 0px;
  padding-top: 0px;
  padding-bottom: 24px;
  margin-bottom: 0px; }
  .f-row:first-child {
    margin-top: 0px;
    padding-top: 24px;
    padding-bottom: 24px;
    margin-bottom: 0px; }

/* List Modifiers
------------------------------------------*/
ul.f-inline, ol.f-inline {
  margin-top: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  margin-bottom: 0px; }
  ul.f-inline li, ol.f-inline li {
    float: left;
    margin-right: 10px; }
  header ul.f-inline li, header ol.f-inline li {
    line-height: 44px; }

dl.f-inline dt, dl.f-inline dd {
  float: left; }
dl.f-inline dt {
  margin-right: 10px; }

/* Misc HTML
------------------------------------------*/
hr {
  margin-top: 24px;
  padding-top: 0px;
  padding-bottom: 0px;
  margin-bottom: 24px;
  border: 0;
  height: 0;
  border-bottom: 1px solid #a2a2a6; }
  hr.f-hr--small {
    width: 50%;
    margin-left: 25%; }
  hr.f-hr--med {
    width: 70%;
    margin-left: 15%; }

/* Extend - Core Layout
------------------------------------------*/
/* ----- Top logos bar ----- */
.l-logobar {
  background: #1b1d1e;
  height: 60px;
  width: 100%;
  overflow: hidden; }
  @media only screen and (max-width : 800px) {
    .l-logobar {
      height: 75px; } }
  @media only screen and (max-width : 800px) {
    .l-logobar:after {
      display: block;
      background-image: url(../img/spritesheet-1x.png);
      width: 78px;
      height: 54px;
      background-position: -114px -246px;
      /* 
      `name`,
      `image` (full path),
      `x`,
      `y`,
      `width`,
      `height`,
      `total_width`,
      `total_height`
    */
      content: '';
      display: block;
      margin-left: auto;
      margin-top: 10px;
      margin-right: auto; }
      @media only screen and (-webkit-min-device-pixel-ratio : 1.5), only screen and (min-device-pixel-ratio : 1.5) {
        .l-logobar:after {
          background-image: url(../img/spritesheet-2x.png);
          background-position: -114px -245px;
          width: 78px;
          height: 54px;
          background-size: 406px 360px; } } }
  .l-logobar img {
    padding-top: 5px;
    display: block;
    width: 100%;
    margin: 0 auto;
    max-width: 1040px; }
    @media only screen and (max-width : 800px) {
      .l-logobar img {
        display: none; } }

/* ----- Site header ----- */
.l-header {
  background: #fff;
  border-bottom: 1px solid #bfc7d8;
  height: 60px;
  width: 100%;
  position: relative;
  z-index: 130; }

body.sticky-header {
  padding-top: 60px; }

.l-header--sticky {
  position: fixed;
  top: -60px;
  left: 0;
  z-index: 130; }

/* ----- Pre Footer ----- */
.l-prefooter {
  background: #edeff4;
  width: 100%;
  text-align: center;
  padding: 2.5em 0; }
  @media only screen and (max-width : 800px) {
    .l-prefooter {
      padding: 1.25em 1em; } }
  @media only screen and (max-width : 640px) {
    .l-prefooter {
      display: none; } }

/* ----- Newsletter Footer ----- */
.l-footer-newsletter {
  padding: 30px 0;
  background: #2a2e31;
  text-align: center; }
  .l-footer-newsletter h6 {
    color: #4397d8;
    font-size: 21px; }
  .l-footer-newsletter p {
    color: #fff;
    font-size: 16px; }
  .l-footer-newsletter .btn--secondary {
    display: block;
    margin: 0 auto;
    border: 1px solid #fff !important;
    color: #fff;
    font-size: 16px; }
    .l-footer-newsletter .btn--secondary:hover, .l-footer-newsletter .btn--secondary:focus {
      background: transparent;
      border: 1px solid #4397d8;
      color: #4397d8 !important; }

/* ----- Site Footer ----- */
.l-footer {
  background: #1f2326;
  color: #fff;
  min-height: 180px;
  padding-top: 60px;
  padding-bottom: 60px; }
  @media only screen and (max-width : 800px) {
    .l-footer {
      padding-top: 10px;
      padding-left: 10px;
      padding-right: 10px; } }
  .l-footer .title, .l-footer .card--content p:first-child, .card--content .l-footer p:first-child, .l-footer .panel__content p:first-child, .panel__content .l-footer p:first-child {
    margin-bottom: 1em; }
  .l-footer p, .l-footer a {
    color: #fff; }

.l-footer__container {
  display: block;
  margin: 0 auto;
  max-width: 1100px;
  width: 100%; }

.l-footer__disclaimer, .l-footer__terms {
  color: #fff;
  font-size: 13px;
  text-align: center;
  margin-top: 1em !important;
  float: left;
  width: 100%; }
  @media only screen and (max-width : 800px) {
    .l-footer__disclaimer, .l-footer__terms {
      margin: 2em 0 !important; } }

.l-footer__terms {
  color: #999 !important;
  display: block;
  float: none;
  margin: 0 auto 3em !important;
  max-width: 850px; }

.l-footer__disclaimer {
  text-align: left; }
  .l-footer__disclaimer .truste-icon {
    float: right; }

/* Preload images */
body:after {
  content: url(../img/lightbox/close.png) url(../img/lightbox/loading.gif) url(../img/lightbox/prev.png) url(../img/lightbox/next.png);
  display: none; }

.lightboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: black;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
  display: none; }

.lightbox {
  position: absolute;
  left: 0;
  width: 100%;
  z-index: 10000;
  text-align: center;
  line-height: 0;
  font-weight: normal; }

.lightbox .lb-image {
  display: block;
  height: auto;
  max-width: inherit;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px; }

.lightbox a img {
  border: none; }

.lb-outerContainer {
  position: relative;
  background-color: white;
  *zoom: 1;
  width: 250px;
  height: 250px;
  margin: 0 auto;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px; }

.lb-outerContainer:after {
  content: "";
  display: table;
  clear: both; }

.lb-container {
  padding: 4px; }

.lb-loader {
  position: absolute;
  top: 43%;
  left: 0;
  height: 25%;
  width: 100%;
  text-align: center;
  line-height: 0; }

.lb-cancel {
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 auto;
  background: url(../img/lightbox/loading.gif) no-repeat; }

.lb-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10; }

.lb-container > .nav {
  left: 0; }

.lb-nav a {
  outline: none;
  background-image: url('data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='); }

.lb-prev, .lb-next {
  height: 100%;
  cursor: pointer;
  display: block; }

.lb-nav a.lb-prev {
  display: block !important;
  left: 0;
  float: left;
  background: #fafafa;
  border: 1px solid #bfc7d8;
  position: fixed;
  left: 0;
  height: 60px;
  top: 50%;
  margin-top: -30px;
  width: 60px;
  z-index: 100;
  line-height: 60px;
  font-size: 30px; }
  .lb-nav a.lb-prev:before {
    color: #4397d8;
    content: "\e601";
    display: block;
    font-family: 'icomoon';
    height: 60px;
    left: 0;
    position: absolute;
    top: 0;
    width: 60px;
    text-align: center;
    line-height: 60px; }

.lb-nav a.lb-prev:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1; }

.lb-nav a.lb-next {
  display: block !important;
  right: 0;
  float: left;
  background: #fafafa;
  border: 1px solid #bfc7d8;
  position: fixed;
  right: 0;
  left: auto;
  height: 60px;
  top: 50%;
  margin-top: -30px;
  width: 60px;
  z-index: 100;
  line-height: 60px;
  font-size: 30px; }
  .lb-nav a.lb-next:before {
    color: #4397d8;
    content: "\e602";
    display: block;
    font-family: 'icomoon';
    height: 60px;
    left: 0;
    position: absolute;
    top: 0;
    width: 60px;
    text-align: center;
    line-height: 60px; }

.lb-nav a.lb-next:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1; }

.lb-dataContainer {
  margin: 0 auto;
  padding-top: 5px;
  *zoom: 1;
  width: 100%;
  -moz-border-radius-bottomleft: 4px;
  -webkit-border-bottom-left-radius: 4px;
  border-bottom-left-radius: 4px;
  -moz-border-radius-bottomright: 4px;
  -webkit-border-bottom-right-radius: 4px;
  border-bottom-right-radius: 4px; }

.lb-dataContainer:after {
  content: "";
  display: table;
  clear: both; }

.lb-data {
  padding: 0 4px;
  color: #ccc; }

.lb-data .lb-details {
  width: 85%;
  float: left;
  text-align: left;
  line-height: 1.1em; }

.lb-data .lb-caption {
  font-size: 13px;
  font-weight: normal;
  line-height: 1em;
  color: #fff; }
  .lb-data .lb-caption a {
    font-weight: bold;
    text-decoration: underline;
    color: #fff; }

.lb-data .lb-number {
  display: none !important; }

.lb-data .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url(../img/lightbox/close.png) top right no-repeat;
  text-align: right;
  outline: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s; }

.lb-data .lb-close:hover {
  cursor: pointer;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1; }

/* Hotel page maps
------------------------------------------*/
.map {
  position: relative; }
  @media only screen and (max-width : 640px) {
    .map {
      display: none !important; } }

.map__canvas {
  background: #fff;
  height: 650px;
  margin-top: 2em;
  position: relative;
  z-index: 10; }
  .map__canvas img {
    max-width: initial; }
  @media only screen and (max-width : 640px) {
    .map__canvas {
      height: 400px; } }

.map__canvas--mini {
  background: #fff;
  height: 200px;
  margin-top: 2em;
  position: relative;
  z-index: 10; }
  .map__canvas--mini img {
    max-width: initial; }

/* ----- Map filters ----- */
.map__filter {
  background: #fafafa;
  border-radius: 10px;
  box-shadow: 0 0 5px #bfc7d8;
  border: 1px solid #bfc7d8;
  height: auto;
  left: 20px;
  position: absolute;
  top: 300px;
  width: 40px;
  z-index: 20; }
  @media only screen and (max-width : 640px) {
    .map__filter {
      left: 10px; } }

.map__filterlink {
  background: #fafafa;
  display: block;
  text-align: center;
  line-height: 39px;
  width: 38px;
  height: 40px;
  text-align: center;
  position: relative; }
  .map__filterlink i {
    color: #a2a2a6;
    line-height: 40px; }
  .map__filterlink.active i {
    color: #fff; }
  .map__filterlink:hover .map__filtertooltip, .map__filterlink:focus .map__filtertooltip {
    display: block; }
    @media only screen and (max-width : 640px) {
      .map__filterlink:hover .map__filtertooltip, .map__filterlink:focus .map__filtertooltip {
        display: none !important; } }

.map__filterlink--hotels {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px; }
  .map__filterlink--hotels.active {
    background: #eb5050; }

.map__filterlink--solo {
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px; }

.map__filterlink--events {
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px; }
  .map__filterlink--events.active {
    background: #ee8749; }

.map__filtertooltip {
  background: #fafafa;
  border-radius: 10px;
  border: 1px solid #bfc7d8;
  color: #4e4e5b;
  display: none;
  font-weight: 400;
  left: 50px;
  line-height: 2.1em;
  padding: 0 10px;
  position: absolute;
  top: 0;
  width: 150px;
  z-index: 20; }
  .map__filtertooltip:after, .map__filtertooltip:before {
    border-style: solid;
    content: '';
    display: block;
    height: 0;
    position: absolute;
    width: 0; }
  .map__filtertooltip:after {
    border-color: transparent #fafafa transparent transparent;
    border-width: 6px;
    left: -12px;
    bottom: 10px; }
  .map__filtertooltip:before {
    border-color: transparent #bfc7d8 transparent transparent;
    border-width: 8px;
    left: -16px;
    bottom: 8px; }

/* ----- Map controls ----- */
.map__controls {
  background: #fafafa;
  border-radius: 50px;
  box-shadow: 0 0 5px #bfc7d8;
  border: 1px solid #bfc7d8;
  height: 40px;
  left: 70px;
  position: absolute;
  top: 410px;
  width: 100px;
  z-index: 110;
  display: none; }
  @media only screen and (max-width : 640px) {
    .map__controls {
      right: 10px; } }

.map__controlslink {
  font-family: "source-sans-pro", 'arial', sans-serif;
  font-weight: 700;
  background: #fff;
  color: #a2a2a6;
  width: 49px;
  height: 39px;
  float: left;
  text-align: center;
  line-height: 40px;
  font-size: 2em; }
  .map__controlslink:hover, .map__controlslink:focus {
    background: #fafafa; }

.map__controlslink--zoomin {
  border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
  border-right: 1px solid #bfc7d8; }

.map__controlslink--zoomout {
  border-top-right-radius: 50px;
  border-bottom-right-radius: 50px;
  line-height: 35px; }

/* ----- Map popups ----- */
.hotel-popup {
  float: left;
  width: 240px;
  min-height: 120px;
  font-size: 16px; }

.infoBox > img {
  left: -14px; }

.hotel-popup--hotel {
  background: #eb5050;
  width: 120px; }
  .hotel-popup--hotel .hotel-popup__left {
    width: 100%; }
  .hotel-popup--hotel .hotel-popup__image {
    display: none; }

.hotel-popup--event {
  background: #ee8749; }

.hotel-popup__title {
  color: #fff;
  line-height: 1.25em;
  padding-top: 1em;
  font-size: 16px;
  min-height: 55px;
  float: left;
  overflow: hidden; }

.hotel-popup__left {
  float: left;
  padding: 1em;
  width: 50%; }

.hotel-popup__link {
  font-size: 13px;
  color: #fff;
  border-bottom: 1px solid #fff; }

.hotel-popup__image {
  float: right;
  width: 50%; }

/* Nav vars
------------------------------------------*/
/* Header styles relevant to nav
------------------------------------------*/
header {
  border-bottom: 1px solid #9facc5; }
  @media only screen and (max-width : 640px) {
    header {
      border-bottom: 0px; } }

/* Base mixins
------------------------------------------*/
/* Navs
------------------------------------------*/
.f-nav {
  float: left;
  list-style: none; }
  @media only screen and (max-width :1000px) {
    .f-nav li {
      display: none; } }
  @media only screen and (max-width : 640px) {
    .f-nav.f-active {
      float: none;
      border-bottom: 1px solid #9facc5; }
      .f-nav.f-active li {
        display: block;
        float: none; } }
  .f-nav > li {
    position: relative;
    float: left; }
    .f-nav > li:after {
      content: "";
      display: table;
      clear: both; }
    .f-nav > li a {
      font-size: 16px;
      line-height: 46px;
      font-weight: 400;
      color: #4397d8;
      padding: 0px 10px; }
      .f-nav > li a:hover {
        background: #c5cddc; }
      @media only screen and (max-width : 640px) {
        .f-nav > li a {
          text-align: center; } }

.f-nav--right {
  float: left;
  list-style: none;
  float: right; }
  @media only screen and (max-width :1000px) {
    .f-nav--right li {
      display: none; } }
  @media only screen and (max-width : 640px) {
    .f-nav--right.f-active {
      float: none;
      border-bottom: 1px solid #9facc5; }
      .f-nav--right.f-active li {
        display: block;
        float: none; } }
  .f-nav--right > li {
    position: relative;
    float: left; }
    .f-nav--right > li:after {
      content: "";
      display: table;
      clear: both; }
    .f-nav--right > li a {
      font-size: 16px;
      line-height: 46px;
      font-weight: 400;
      color: #4397d8;
      padding: 0px 10px; }
      .f-nav--right > li a:hover {
        background: #c5cddc; }
      @media only screen and (max-width : 640px) {
        .f-nav--right > li a {
          text-align: center; } }

/* Nav Items
------------------------------------------*/
.f-brand {
  float: left;
  padding-right: 10px;
  border-right: 1px solid #9facc5; }
  .f-brand h1, .f-brand h2, .f-brand h3, .f-brand h4, .f-brand h5, .f-brand h6 {
    font-size: 24px;
    line-height: 46px;
    color: #4397d8; }
  .f-brand a {
    width: 100%;
    height: 100%;
    display: block;
    cursor: pointer; }
  @media only screen and (max-width : 640px) {
    .f-brand {
      float: none;
      padding-right: 0px;
      border-right: 0px;
      border-bottom: 1px solid #9facc5; }
      .f-brand h1, .f-brand h2, .f-brand h3, .f-brand h4, .f-brand h5, .f-brand h6 {
        text-align: center; } }

.f-dropdown {
  display: none;
  position: absolute;
  width: 150px;
  left: 0px;
  top: 46px;
  background: #edeff4;
  border: 1px solid #9facc5; }
  .f-dropdown li {
    list-style-type: none; }
  .f-nav--right .f-dropdown {
    left: auto;
    right: 0px; }
  @media only screen and (max-width : 640px) {
    .f-dropdown {
      position: static;
      width: 100%;
      border: 0px; }
      .f-dropdown li {
        background: #c5cddc; }
        .f-dropdown li:hover a {
          background: #bfc7d8; } }

.f-dropdown-parent > a {
  padding-right: 25px !important; }
  .f-dropdown-parent > a:before {
    border: 5px solid transparent;
    content: " ";
    display: block;
    width: 0px;
    height: 0px;
    position: absolute;
    border-top-color: #4397d8;
    border-bottom-width: 0px;
    top: 50%;
    margin-top: -2px;
    right: 10px; }
    .f-dropdown-parent > a:before .dropdown-arrow-hide {
      border: 0px !important; }
.f-dropdown-parent.dropdown-arrow-hide > a {
  padding-right: 10px !important; }
  .f-dropdown-parent.dropdown-arrow-hide > a:before {
    border: 0px solid transparent;
    content: " ";
    display: block;
    width: 0px;
    height: 0px;
    position: absolute;
    border-top-color: #4397d8;
    border-bottom-width: 0px; }
.f-dropdown-parent:hover > a {
  background: #c5cddc; }
.f-dropdown-parent:hover .f-dropdown {
  display: block; }
@media only screen and (max-width : 640px) {
  .f-dropdown-parent > a {
    padding-right: 10px !important; }
  .f-dropdown-parent.dropdown-arrow-hide > a {
    display: none; } }

.f-nav-panel {
  padding: 10px; }

/* Mobile Nav Items
------------------------------------------*/
.f-hamburger {
  width: 46px;
  height: 46px;
  float: left;
  text-align: center;
  font-size: 24px;
  line-height: 46px;
  color: #4397d8;
  border-right: 1px solid #9facc5;
  display: none; }
  .f-hamburger i {
    margin: 0px; }
  .f-nav--right .f-hamburger {
    border-left: 1px solid #9facc5; }
  .f-hamburger:hover {
    background: #c5cddc; }
  @media only screen and (max-width :1000px) {
    .f-hamburger {
      display: block; } }
  @media only screen and (max-width : 640px) {
    .f-hamburger {
      position: absolute;
      top: 0px;
      left: 0px; }
      .f-nav--right .f-hamburger {
        border-right: 0px;
        left: auto;
        right: 0px; } }

/* Extend - Core Layout
------------------------------------------*/
/* ----- Main navigation that animates ----- */
.l-nav {
  display: none;
  background: #eff1f5;
  text-align: center; }
  @media only screen and (max-width : 800px) {
    .l-nav {
      padding: 1em 0; } }
  @media only screen and (max-width : 640px) {
    .l-nav {
      padding: 0.5em 0; } }
  .sticky-header .l-nav {
    left: 0;
    position: fixed;
    top: 60px;
    width: 100%;
    z-index: 130; }

.nav__control {
  content: "";
  display: inline-block;
  height: 20px;
  margin-left: 20px;
  margin-right: 20px;
  position: relative;
  top: 3px;
  width: 20px;
  transition: all 0.5s;
  /* Animated nav humburger to cross */ }
  @media only screen and (max-width : 640px) {
    .nav__control {
      position: absolute;
      top: 1em;
      left: 0; } }
  .nav__control span, .nav__control span:before, .nav__control span:after {
    cursor: pointer;
    border-radius: 1px;
    height: 2px;
    width: 20px;
    background: #4397d8;
    position: absolute;
    display: block;
    content: '';
    transition: all 500ms ease-in-out; }
  .nav__control span {
    top: 9px; }
  .nav__control span:before {
    top: -7px; }
  .nav__control span:after {
    bottom: -7px; }
  .nav__control.active span {
    background-color: transparent; }
    .nav__control.active span:before, .nav__control.active span:after {
      top: 0; }
    .nav__control.active span:before {
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }
    .nav__control.active span:after {
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg); }

.nav__link {
  font-family: "source-sans-pro", 'arial', sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 1em;
  color: #bfc7d8;
  display: inline-block;
  font-weight: bold;
  padding: 1.46em 1em;
  position: relative; }
  @media only screen and (max-width : 1040px) {
    .nav__link {
      font-size: 22px;
      padding-left: 0.5em;
      padding-right: 0.5em; } }
  @media only screen and (max-width : 800px) {
    .nav__link {
      display: block;
      width: 100%;
      padding: 1em 0; } }
  @media only screen and (max-width : 640px) {
    .nav__link {
      margin-left: 1.1em;
      text-align: left; } }
  .nav__link:hover, .nav__link:focus {
    color: #4397d8; }

.nav__link i {
  display: inline-block !important;
  position: relative;
  margin-right: 10px;
  top: 2px; }
  .nav__link i.icon-navmap {
    top: 5px; }

/* ----- When main navigation is disabled (Legacy Flag) ----- */
.nav__home-icon {
  display: block;
  background-image: url(../img/spritesheet-1x.png);
  width: 30px;
  height: 30px;
  background-position: -232px -246px;
  /* 
      `name`,
      `image` (full path),
      `x`,
      `y`,
      `width`,
      `height`,
      `total_width`,
      `total_height`
    */
  display: inline-block;
  margin-left: 20px;
  margin-right: 10px;
  vertical-align: top; }
  @media only screen and (-webkit-min-device-pixel-ratio : 1.5), only screen and (min-device-pixel-ratio : 1.5) {
    .nav__home-icon {
      background-image: url(../img/spritesheet-2x.png);
      background-position: -232px -245px;
      width: 30px;
      height: 30px;
      background-size: 406px 360px; } }

/*
.nav__home-icon {
	display: inline-block;
	width: 26px;
	height: 25px;
	margin-left: 20px;
	margin-right: 10px;
}
*/
/* ----- Booking Bar on Mobile ----- */
.booking__bar {
  display: none; }

@media only screen and (max-width : 800px) {
  .booking__bar {
    display: block;
    padding: 10px 30px;
    background: #f0f1f5;
    text-align: center; }
    .booking__bar .btn--bookingtop {
      float: none;
      display: inline-block;
      margin: 0 auto;
      padding-left: 3em;
      padding-right: 3em; } }

/* ----- Back to top Navigation ----- */
.backtotop-link {
  background: #fafafa;
  border: 1px solid #bfc7d8;
  bottom: 100px;
  color: #4397d8;
  cursor: pointer;
  font-size: 13px;
  font-weight: 700;
  height: 50px;
  margin-top: 0;
  padding-top: 0.6em;
  position: fixed;
  right: -50px;
  text-align: center;
  width: 50px;
  z-index: 100; }
  .backtotop-link i {
    display: block;
    margin: 0 auto; }

/* ----- Social Navigation ----- */
.social-nav {
  height: 160px;
  position: fixed;
  right: -180px;
  top: 140px;
  width: 180px;
  z-index: 100; }
  @media only screen and (max-width : 800px) {
    .social-nav {
      display: none; } }
  .social-nav .social-nav__link {
    color: #fff;
    display: block;
    height: 40px;
    padding: 0.5em 0;
    width: 180px;
    left: 140px;
    position: relative;
    transition: all 0.5s; }
    .social-nav .social-nav__link:hover, .social-nav .social-nav__link:focus {
      left: 0px; }
    .social-nav .social-nav__link i:before {
      display: inline-block;
      font-size: 1.2em;
      text-align: center;
      width: 40px;
      position: relative;
      top: 3px; }
  .social-nav .social-nav__link--facebook {
    background: #074d88; }
  .social-nav .social-nav__link--twitter {
    background: #00acee; }
  .social-nav .social-nav__link--pinterest {
    background: #cb2028; }
    .social-nav .social-nav__link--pinterest i {
      position: relative;
      left: 2px; }
  .social-nav .social-nav__link--email {
    background: #a9d478; }

/* ----- Footer Navigation ----- */
.footer-nav {
  float: left;
  width: 100%;
  text-align: center;
  margin-top: 0; }
  @media only screen and (max-width : 800px) {
    .footer-nav {
      margin: 0; } }

.footer-nav__link {
  display: inline-block;
  color: #fff;
  margin: 0 1em;
  font-size: 21px;
  padding-bottom: 0; }
  @media only screen and (max-width : 800px) {
    .footer-nav__link {
      display: block;
      padding-bottom: 0.5em; } }

.panel--newsletter .newsletter-intro-text {
  max-width: 490px;
  text-align: center;
  margin: 0 auto; }
.panel--newsletter .error {
  color: #4fb3e5; }
.panel--newsletter .field label, .panel--newsletter .field-checkbox label {
  font-size: 16px;
  color: #4e4e5b;
  margin: 25px 0 15px; }
  .panel--newsletter .field label em, .panel--newsletter .field-checkbox label em {
    font-style: normal;
    color: #4fb3e5; }
.panel--newsletter .field input, .panel--newsletter .field .f-select, .panel--newsletter .field-checkbox input, .panel--newsletter .field-checkbox .f-select {
  border: 1px solid #bfc7d8;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px; }
.panel--newsletter .field .f-select select, .panel--newsletter .field-checkbox .f-select select {
  padding: 0;
  background: transparent; }
.panel--newsletter .field .error, .panel--newsletter .field-checkbox .error {
  display: block;
  margin-top: 5px;
  color: #4fb3e5; }
.panel--newsletter .required-fields-text {
  margin: 25px 0;
  color: #4e4e5b; }
  .panel--newsletter .required-fields-text em {
    color: #4fb3e5; }
.panel--newsletter .newsletter-terms-text {
  font-size: 13px; }
.panel--newsletter .field-checkbox input {
  margin-right: 10px; }
.panel--newsletter .btn.btn--primary {
  display: block;
  margin: 25px 0;
  font-size: 16px; }
.panel--newsletter ::-webkit-input-placeholder {
  color: #a2a2a6; }
.panel--newsletter :-moz-placeholder {
  /* Firefox 18- */
  color: #a2a2a6; }
.panel--newsletter ::-moz-placeholder {
  /* Firefox 19+ */
  color: #a2a2a6; }
.panel--newsletter :-ms-input-placeholder {
  color: #a2a2a6; }

/* ----- Content Rows ----- */
.row {
  background: #fefefe;
  display: block;
  width: 100%;
  padding: 100px 0;
  overflow: hidden; }
  .row:after {
    content: "";
    display: table;
    clear: both; }
  @media only screen and (max-width : 800px) {
    .row {
      padding: 2em 0; } }

.row--container {
  position: relative; }

.row--alt {
  background: #fafafa; }

.row--compact {
  padding: 0; }

.row--compact-top {
  padding-top: 0; }

.row--compact-bottom {
  padding-bottom: 0; }

/* ----- Content Panels ----- */
.panel {
  display: block;
  margin: 0 auto;
  max-width: 1000px;
  width: 95%; }
  .panel:after {
    content: "";
    display: table;
    clear: both; }

.panel--med {
  max-width: 830px; }

.panel--small {
  max-width: 660px; }

.panel--xsmall {
  max-width: 490px; }

/* ----- Panel Columns ----- */
.panel__col {
  float: left; }
  @media only screen and (max-width : 800px) {
    .panel__col {
      display: block;
      float: none;
      margin-left: auto !important;
      margin-right: auto !important;
      width: 90% !important; } }

.panel__col--half {
  width: 49%;
  margin-right: 2%; }
  .panel__col--half:last-child {
    margin-right: 0; }

.panel__col--third {
  width: 32%;
  margin-right: 2%; }
  .panel__col--third:last-child {
    margin-right: 0; }

/* ----- Panel Content ----- */
.panel__content p:first-child {
  margin-bottom: 1em !important; }

.panel__content--small {
  display: block;
  width: 90%;
  max-width: 490px;
  margin-right: auto;
  margin-left: auto; }

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

.panel__content--contained {
  padding: 2em 1.5em;
  background: #fafafa;
  border: 1px solid #bfc7d8;
  border-radius: 10px;
  margin-left: 10%;
  width: 37%;
  word-wrap: break-word; }
  @media only screen and (max-width : 800px) {
    .panel__content--contained {
      margin-top: 2em; } }

/* ----- Panel Content Elements ----- */
.panel__content ul {
  margin-top: 1em; }
  .panel__content ul li {
    margin-left: 20px;
    list-style: none;
    margin-bottom: 1em;
    color: #a2a2a6;
    position: relative; }
    .panel__content ul li:last-child {
      margin-bottom: 0; }
    .panel__content ul li:before {
      background: #4e4e5b;
      border-radius: 50%;
      content: "";
      display: block;
      height: 4px;
      left: -15px;
      position: absolute;
      top: 10px;
      width: 4px; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  -webkit-animation-duration: 1000ms;
  animation-duration: 1000ms;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut; }

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1; }

  100% {
    opacity: 0; } }

@keyframes fadeOut {
  0% {
    opacity: 1; }

  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  -webkit-transition: height 500ms ease-in-out;
  -moz-transition: height 500ms ease-in-out;
  -ms-transition: height 500ms ease-in-out;
  -o-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out; }

/*
 *  Core Owl Carousel CSS File
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }

.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y; }

.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

.owl-carousel .owl-stage-outer {
  position: relative;
  /* fix for flashing background */
  -webkit-transform: translate3d(0px, 0px, 0px); }

.owl-carousel .owl-controls .owl-nav .owl-prev, .owl-carousel .owl-controls .owl-nav .owl-next, .owl-carousel .owl-controls .owl-dot {
  cursor: pointer;
  cursor: hand;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel .owl-controls .owl-nav .owl-prev, .owl-carousel .owl-controls .owl-nav .owl-next {
  background: #fafafa;
  border: 1px solid #bfc7d8;
  height: 60px;
  margin-top: -30px;
  position: absolute;
  top: 50%;
  color: #fafafa;
  width: 60px;
  overflow: hidden; }
  @media only screen and (max-width : 1040px) {
    .owl-carousel .owl-controls .owl-nav .owl-prev, .owl-carousel .owl-controls .owl-nav .owl-next {
      top: 25%; } }
  @media only screen and (max-width : 800px) {
    .owl-carousel .owl-controls .owl-nav .owl-prev, .owl-carousel .owl-controls .owl-nav .owl-next {
      height: 40px;
      width: 40px; } }
  .owl-carousel .owl-controls .owl-nav .owl-prev:hover, .owl-carousel .owl-controls .owl-nav .owl-prev:focus, .owl-carousel .owl-controls .owl-nav .owl-next:hover, .owl-carousel .owl-controls .owl-nav .owl-next:focus {
    background: #4397d8;
    color: #4397d8; }
    .owl-carousel .owl-controls .owl-nav .owl-prev:hover:before, .owl-carousel .owl-controls .owl-nav .owl-prev:focus:before, .owl-carousel .owl-controls .owl-nav .owl-next:hover:before, .owl-carousel .owl-controls .owl-nav .owl-next:focus:before {
      color: #fff; }
  .owl-carousel .owl-controls .owl-nav .owl-prev:before, .owl-carousel .owl-controls .owl-nav .owl-next:before {
    color: #4397d8;
    content: "";
    display: block;
    font-family: 'icomoon';
    height: 60px;
    left: 0;
    position: absolute;
    top: 0;
    width: 60px;
    text-align: center;
    line-height: 60px; }
    @media only screen and (max-width : 800px) {
      .owl-carousel .owl-controls .owl-nav .owl-prev:before, .owl-carousel .owl-controls .owl-nav .owl-next:before {
        width: 40px;
        height: 40px;
        line-height: 40px; } }

.owl-carousel .owl-controls .owl-nav .owl-prev {
  left: -80px; }
  @media only screen and (max-width : 1040px) {
    .owl-carousel .owl-controls .owl-nav .owl-prev {
      left: 0; } }
  .owl-carousel .owl-controls .owl-nav .owl-prev:before {
    content: "\e601"; }

.owl-carousel .owl-controls .owl-nav .owl-next {
  right: -80px; }
  @media only screen and (max-width : 1040px) {
    .owl-carousel .owl-controls .owl-nav .owl-next {
      right: 0; } }
  .owl-carousel .owl-controls .owl-nav .owl-next:before {
    content: "\e602"; }

.owl-carousel.owl-loaded {
  display: block; }

.owl-carousel.owl-loading {
  opacity: 0;
  display: block; }

.owl-carousel.owl-hidden {
  opacity: 0; }

.owl-carousel .owl-refresh .owl-item {
  display: none; }

.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel .owl-item img {
  display: block;
  width: 100%;
  -webkit-transform-style: preserve-3d; }

.owl-carousel.owl-text-select-on .owl-item {
  -webkit-user-select: auto;
  -moz-user-select: auto;
  -ms-user-select: auto;
  user-select: auto; }

.owl-carousel .owl-grab {
  cursor: move;
  cursor: -webkit-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab; }

.owl-carousel .owl-rtl {
  direction: rtl; }

.owl-carousel .owl-rtl .owl-item {
  float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  -webkit-transition: opacity 400ms ease;
  -moz-transition: opacity 400ms ease;
  -ms-transition: opacity 400ms ease;
  -o-transition: opacity 400ms ease;
  transition: opacity 400ms ease; }

.owl-carousel .owl-item img {
  transform-style: preserve-3d; }

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  -webkit-transition: scale 100ms ease;
  -moz-transition: scale 100ms ease;
  -ms-transition: scale 100ms ease;
  -o-transition: scale 100ms ease;
  transition: scale 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  -webkit-transition: scale(1.3, 1.3);
  -moz-transition: scale(1.3, 1.3);
  -ms-transition: scale(1.3, 1.3);
  -o-transition: scale(1.3, 1.3);
  transition: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn, .owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: contain;
  -moz-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  -webkit-transition: opacity 400ms ease;
  -moz-transition: opacity 400ms ease;
  -ms-transition: opacity 400ms ease;
  -o-transition: opacity 400ms ease;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1; }

.owl-item {
  -webkit-transition: opacity 1s ease;
  -moz-transition: opacity 1s ease;
  -ms-transition: opacity 1s ease;
  -o-transition: opacity 1s ease;
  transition: opacity 1s ease;
  opacity: 0.2; }

.owl-item.active {
  opacity: 1; }

.owl-item .card__image:after {
  display: none; }

.owl-item.active .card__image:after {
  display: block; }

/* Core Typography
------------------------------------------*/
body {
  font-family: "lato", 'arial', sans-serif;
  font-weight: 400;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  font-size: 1em; }

/* Base Font Sizing
------------------------------------------*/
p, a {
  font-size: 1em; }

h1, .f-h1 {
  font-size: 3em; }

h2, .f-h2 {
  font-size: 2em; }

h3, .f-h3 {
  font-size: 1.6em; }

h4, .f-h4 {
  font-size: 1.4em; }

h5, .f-h5 {
  font-size: 1.2em; }

h6, .f-h6 {
  font-size: 1em; }

h1, h2, h3, h4, h5, h6 {
  -webkit-font-smoothing: antialiased;
  font-family: "source-sans-pro", 'arial', sans-serif;
  font-weight: 700;
  margin-top: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  margin-bottom: 12px;
  color: #4397d8;
  text-transform: uppercase;
  line-height: 1; }
  h1 i, h2 i, h3 i, h4 i, h5 i, h6 i {
    margin-right: 10px; }
  header h1, footer h1, header h2, footer h2, header h3, footer h3, header h4, footer h4, header h5, footer h5, header h6, footer h6 {
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px; }
  h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    color: #4397d8; }

p {
  margin-top: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  margin-bottom: 24px;
  color: #a2a2a6; }
  p.f-intro {
    font-weight: 400;
    font-size: 1.2em; }
  p:last-child {
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px; }
  p a, p span {
    color: #4397d8; }

a {
  color: #eb5050;
  text-decoration: none; }

strong {
  font-weight: 700; }

em {
  font-style: italic; }

small {
  font-weight: 300; }

blockquote {
  margin-top: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  margin-bottom: 24px;
  font-size: 1.5em; }
  blockquote.f-blockquote {
    margin-left: -10px;
    padding-left: 20px;
    border-left: 3px solid #4397d8; }
    blockquote.f-blockquote:before {
      content: "\201C"; }
    blockquote.f-blockquote:after {
      content: "\201D"; }
  @media only screen and (max-width : 640px) {
    blockquote {
      padding-left: 32px !important;
      padding-right: 32px !important; }
      blockquote.f-blockquote {
        padding-left: 10px;
        margin-left: 10px; } }

code {
  background: #f3d49a;
  padding: 2px 5px;
  border-radius: 5px; }

/* Lists
------------------------------------------*/
ul, ol {
  padding: 0px;
  margin: 0px; }
  ul:after, ol:after {
    content: "";
    display: table;
    clear: both; }
  ul a, ol a {
    width: 100%;
    height: 100%;
    display: block;
    cursor: pointer;
    position: relative;
    color: #eb5050; }
  ul i, ol i {
    margin-right: 10px; }
  ul.list--bulleted, ol.list--bulleted {
    list-style: disc inside; }

ol {
  list-style: decimal inside; }

dl {
  margin-top: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  margin-bottom: 0px; }
  dl:after {
    content: "";
    display: table;
    clear: both; }
  dl dt, dl dd {
    display: block; }
  dl dt {
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 12px;
    font-weight: bold;
    clear: left; }
  dl dd {
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 12px; }
    dl dd:last-child {
      margin-bottom: 0px; }

/* Extend Typography
------------------------------------------*/
html h1, html h2, html h3, html h4, html h5, html h6 {
  font-size: 1em;
  line-height: 1.25em;
  text-transform: none;
  margin: 0; }

strong.dark {
  color: #4e4e5b; }

/* ----- Titles ----- */
.title, .card--content p:first-child, .panel__content p:first-child {
  color: #4e4e5b;
  font-size: 1em;
  line-height: 1.25em;
  text-transform: none;
  margin: 0; }

.title--primary {
  font-size: 3.375em; }

.title--secondary {
  font-family: "source-sans-pro", 'arial', sans-serif;
  font-weight: 600;
  font-size: 1.95em; }

.title--tertiary, .panel__content p:first-child {
  font-family: "lato", 'arial', sans-serif;
  font-weight: 400;
  font-size: 23px; }

.title--delta {
  font-size: 18px;
  line-height: 24px; }

.title--echo {
  font-size: 1em;
  line-height: 24px; }
  .title--echo span {
    font-family: "lato", 'arial', sans-serif;
    font-weight: 400;
    color: #4e4e5b;
    font-size: 0.9em;
    font-weight: 100; }

.title--foxtrot, .card--content p:first-child {
  font-size: 21px;
  line-height: 1.25em;
  font-weight: bold; }

/* ----- Alignment ----- */
.title--standalone {
  display: block;
  text-align: center;
  margin-right: auto;
  margin-left: auto; }

.title--inline {
  display: inline-block; }

/* ----- Spacing ----- */
.title--stacked {
  line-height: 1em; }

.title--topspacing {
  margin-top: 0.5em; }

.title--bottomspacing {
  margin-bottom: 0.5em; }

.title--bottomspacing-large {
  margin-bottom: 1em; }

/* ----- Colors ----- */
.title--light {
  color: #fff; }

.title--highlight {
  color: #4397d8; }

.title--dark {
  color: #4e4e5b; }

/* ----- Misc ----- */
.title--heavy {
  font-weight: 800px !important; }

.title--decorated:after {
  content: "";
  display: block;
  height: 5px;
  width: 40px;
  background: #bfc7d8;
  margin: 0.7em auto 1em; }

.sale.hotels .hero, .sale.soldes .hero, .sale.angebote .hero {
  background-color: #001F39;
  background-image: none !important; }
  .sale.hotels .hero:after, .sale.soldes .hero:after, .sale.angebote .hero:after {
    display: none; }
  @media only screen and (max-width : 800px) {
    .sale.hotels .hero, .sale.soldes .hero, .sale.angebote .hero {
      height: auto;
      padding-bottom: 50px; }
      .sale.hotels .hero:before, .sale.soldes .hero:before, .sale.angebote .hero:before {
        display: none; } }
.sale.hotels .hero__title-container, .sale.soldes .hero__title-container, .sale.angebote .hero__title-container {
  margin-top: 0px;
  padding-top: 24px;
  padding-bottom: 24px;
  margin-bottom: 0px;
  margin: 0 auto;
  background-color: #eb5050;
  padding-left: 10px !important;
  padding-right: 10px !important; }
.sale.hotels .title--primary, .sale.soldes .title--primary, .sale.angebote .title--primary {
  text-shadow: 0;
  font-size: 4.2em;
  margin-top: 20px;
  margin-bottom: 20px; }
.sale.hotels .title--tertiary, .sale.hotels .panel__content p:first-child, .panel__content .sale.hotels p:first-child, .sale.soldes .title--tertiary, .sale.soldes .panel__content p:first-child, .panel__content .sale.soldes p:first-child, .sale.angebote .title--tertiary, .sale.angebote .panel__content p:first-child, .panel__content .sale.angebote p:first-child {
  font-size: 1.4em; }
.sale.hotels .form__label .form__label--inlinesmall, .sale.soldes .form__label .form__label--inlinesmall, .sale.angebote .form__label .form__label--inlinesmall {
  float: none; }
.sale.hotels .flip-clock-divider span.flip-clock-label, .sale.soldes .flip-clock-divider span.flip-clock-label, .sale.angebote .flip-clock-divider span.flip-clock-label {
  font-size: 12px; }
@media only screen and (max-width : 800px) {
  .sale.hotels .hero__content, .sale.soldes .hero__content, .sale.angebote .hero__content {
    width: 100%;
    max-width: none; } }
@media only screen and (max-width : 640px) {
  .sale.hotels .hero__title-container, .sale.soldes .hero__title-container, .sale.angebote .hero__title-container {
    padding-left: 30px !important;
    padding-right: 30px !important; }
  .sale.hotels .title--primary, .sale.soldes .title--primary, .sale.angebote .title--primary {
    text-shadow: 0;
    font-size: 3em;
    line-height: 1em;
    margin-top: 24px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 24px; }
  .sale.hotels .title--tertiary, .sale.hotels .panel__content p:first-child, .panel__content .sale.hotels p:first-child, .sale.soldes .title--tertiary, .sale.soldes .panel__content p:first-child, .panel__content .sale.soldes p:first-child, .sale.angebote .title--tertiary, .sale.angebote .panel__content p:first-child, .panel__content .sale.angebote p:first-child {
    font-size: 1.5em; }
  .sale.hotels .flip-clock-wrapper, .sale.soldes .flip-clock-wrapper, .sale.angebote .flip-clock-wrapper {
    margin: 0; }
  .sale.hotels .flip-clock-label, .sale.soldes .flip-clock-label, .sale.angebote .flip-clock-label {
    width: 62px;
    left: 15px;
    text-align: center; }
  .sale.hotels .flip-clock-divider, .sale.soldes .flip-clock-divider, .sale.angebote .flip-clock-divider {
    width: 20px; }
    .sale.hotels .flip-clock-divider.days, .sale.soldes .flip-clock-divider.days, .sale.angebote .flip-clock-divider.days {
      width: 0; } }

/* France
------------------------------------------*/
.region-fr.soldes .title--primary {
  font-size: 3.4em; }
.region-fr.soldes .title--tertiary, .region-fr.soldes .panel__content p:first-child, .panel__content .region-fr.soldes p:first-child {
  font-size: 1.4em; }
  .lt-ie10 .region-fr.soldes .title--tertiary, .lt-ie10 .region-fr.soldes .panel__content p:first-child, .panel__content .lt-ie10 .region-fr.soldes p:first-child {
    font-size: 1.2em; }
.lt-ie10 .region-fr.soldes .hero__content {
  margin-top: 120px; }
@media only screen and (max-width : 640px) {
  .region-fr.soldes .title--primary {
    font-size: 3em; }
  .region-fr.soldes .title--tertiary, .region-fr.soldes .panel__content p:first-child, .panel__content .region-fr.soldes p:first-child {
    font-size: 1.5em; } }

/* Germany
------------------------------------------*/
/* Regional Variations
------------------------------------------*/
/* General Localisations
------------------------------------------*/
.region-fr .title--secondary {
  font-size: 1.6em; }
.region-fr a.logo em {
  display: none; }
.region-fr .nav__control {
  display: none; }
@media only screen and (max-width : 640px) {
  .region-fr .logo {
    text-align: left;
    padding-left: 1em;
    font-size: 1.2em;
    line-height: 1.7em; }
    .region-fr .logo .nav__home-icon {
      margin-left: 0; } }
.region-fr .social-nav {
  width: 220px;
  right: 0px; }
  @media only screen and (max-width : 800px) {
    .region-fr .social-nav {
      display: none; } }
  .region-fr .social-nav .social-nav__link {
    width: 220px;
    left: 180px; }
    .region-fr .social-nav .social-nav__link:hover {
      left: 0px; }
.region-fr .infobar__content {
  max-width: 800px; }
.region-fr .infobar__col {
  max-width: none; }
.region-fr .filters__link {
  width: auto;
  padding-left: 20px !important;
  padding-right: 20px !important; }
.region-fr .filters__subnavdropdown a {
  line-height: 1.1em;
  padding: 10px 5px; }
.region-fr .filters__subnavgroup a {
  padding-left: 20px !important;
  padding-right: 20px !important; }
.region-fr .form__row--sort.form__row--inline .f-select {
  min-width: 270px; }
.region-fr .form__input--thin {
  width: 135px; }
.region-fr .form__input--thin {
  width: 135px; }
@media only screen and (max-width : 1040px) {
  .region-fr .form--booking .js-arrive-row .form__input--thin, .region-fr .form--booking .js-depart-row .form__input--thin {
    width: 100%; } }
.region-fr .form-dateicon {
  right: 110px; }
.region-fr .form__input--search {
  line-height: 26px; }
.region-fr .btn--bookingtop {
  max-width: none; }
.region-fr .backtotop-link {
  right: -75px;
  width: 75px;
  height: 75px;
  padding-left: 5px !important;
  padding-right: 5px !important;
  line-height: 15px; }
.region-fr .backtotop-link i {
  margin-bottom: 10px; }
.region-fr .btn--fixed {
  padding-left: 5px !important;
  padding-right: 5px !important; }
.region-fr .card__inner .card__title h3.title--tertiary {
  font-size: 20px; }
.region-fr .card__type--roomdeal {
  width: 170px; }
.region-fr .form--booking .select--hotel {
  max-width: 280px; }
  @media only screen and (max-width : 1040px) {
    .region-fr .form--booking .select--hotel {
      max-width: none; } }

/* Localized Tags
------------------------------------------*/
.card__type--musique {
  background: #ee8749; }

.card__type--sport {
  background: #0bc3ab; }

.card__type--alimentation {
  background: #749f3b; }

.card__type--culturel {
  background: #846eb2; }

/* General Localisations
------------------------------------------*/
.region-de .title--secondary {
  font-size: 1.6em; }
.region-de .card--hotel h3.title--tertiary {
  font-size: 20px; }
.region-de a.logo em {
  display: none; }
.region-de .nav__control {
  display: none; }
@media only screen and (max-width : 640px) {
  .region-de .logo {
    text-align: left;
    padding-left: 1em;
    font-size: 1.2em;
    line-height: 1.7em; }
    .region-de .logo .nav__home-icon {
      margin-left: 0; } }
.region-de .social-nav {
  width: 200px;
  right: 0px; }
  @media only screen and (max-width : 800px) {
    .region-de .social-nav {
      display: none; } }
  .region-de .social-nav .social-nav__link {
    width: 200px;
    left: 160px; }
    .region-de .social-nav .social-nav__link:hover {
      left: 0px; }
.region-de .infobar__content {
  max-width: 800px; }
.region-de .infobar__col {
  max-width: none; }
.region-de .filters__link {
  width: auto;
  padding-left: 20px !important;
  padding-right: 20px !important; }
.region-de .filters__subnavdropdown a {
  line-height: 1.1em;
  padding: 10px 5px; }
.region-de .filters__subnavgroup a {
  padding-left: 5px !important;
  padding-right: 5px !important; }
.region-de .filters__secondary .form__row--sort {
  min-width: 380px; }
  @media only screen and (max-width : 640px) {
    .region-de .filters__secondary .form__row--sort {
      min-width: 0; } }
.region-de .form__input--thin {
  width: 135px; }
@media only screen and (max-width : 1040px) {
  .region-de .form--booking .js-arrive-row .form__input--thin, .region-de .form--booking .js-depart-row .form__input--thin {
    width: 100%; } }
.region-de .form-dateicon {
  right: 110px; }
.region-de .form__input--search {
  line-height: 26px; }
.region-de .btn--bookingtop {
  max-width: none; }
.region-de .backtotop-link {
  height: 80px; }
.region-de .backtotop-link i {
  margin-bottom: 10px; }
.region-de .btn--fixed {
  padding-left: 5px !important;
  padding-right: 5px !important; }

/* Localized Tags
------------------------------------------*/
.card__type--guide {
  background: #d8437b; }

.card__type--destination {
  background: #43d8c5; }

.card__type--musik {
  background: #ee8749; }

.card__type--sport {
  background: #0bc3ab; }

.card__type--essen {
  background: #749f3b; }

.card__type--kulturell {
  background: #846eb2; }

.card__type--roomdeal {
  background: #eb5050; }

.card__type--newhotel {
  background: #2ab6de; }

.card__type--offer {
  background: #ebbd50; }
