@charset "UTF-8";
/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block; }

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none; }

/* Links
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000; }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none; }

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px; }

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/* Forms
   ========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  font: inherit;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold; }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

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

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

.clearfix:before, .clearfix:after {
  display: table;
  content: ''; }

.clearfix:after {
  clear: both; }

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

[class*="col-"] {
  padding: 0 30px;
  margin-bottom: 60px;
  float: left;
  position: relative;
  min-height: 1px;
  width: 100%; }

.container {
  width: 100%;
  margin: auto;
  padding: 0 60px; }
  @media (max-width: 639px) {
    .container {
      padding: 0 20px; } }

.row {
  margin-left: -30px;
  margin-right: -30px; }
  @media (max-width: 639px) {
    .row {
      margin-left: 0;
      margin-right: 0; } }

@media all and (min-width: 0px) {
  .container {
    max-width: 100%; }
  .col-mb-1 {
    width: 8.33333%; }
  .col-mb-push-1 {
    left: 8.33333%; }
  .col-mb-pull-1 {
    right: 8.33333%; }
  .col-mb-offset-1 {
    margin-left: 8.33333%; }
  .col-mb-push-0 {
    left: auto; }
  .col-mb-pull-0 {
    right: auto; }
  .col-mb-offset-0 {
    margin-left: 0; }
  .col-mb-2 {
    width: 16.66667%; }
  .col-mb-push-2 {
    left: 16.66667%; }
  .col-mb-pull-2 {
    right: 16.66667%; }
  .col-mb-offset-2 {
    margin-left: 16.66667%; }
  .col-mb-3 {
    width: 25%; }
  .col-mb-push-3 {
    left: 25%; }
  .col-mb-pull-3 {
    right: 25%; }
  .col-mb-offset-3 {
    margin-left: 25%; }
  .col-mb-4 {
    width: 33.33333%; }
  .col-mb-push-4 {
    left: 33.33333%; }
  .col-mb-pull-4 {
    right: 33.33333%; }
  .col-mb-offset-4 {
    margin-left: 33.33333%; }
  .col-mb-5 {
    width: 41.66667%; }
  .col-mb-push-5 {
    left: 41.66667%; }
  .col-mb-pull-5 {
    right: 41.66667%; }
  .col-mb-offset-5 {
    margin-left: 41.66667%; }
  .col-mb-6 {
    width: 50%; }
  .col-mb-push-6 {
    left: 50%; }
  .col-mb-pull-6 {
    right: 50%; }
  .col-mb-offset-6 {
    margin-left: 50%; }
  .col-mb-7 {
    width: 58.33333%; }
  .col-mb-push-7 {
    left: 58.33333%; }
  .col-mb-pull-7 {
    right: 58.33333%; }
  .col-mb-offset-7 {
    margin-left: 58.33333%; }
  .col-mb-8 {
    width: 66.66667%; }
  .col-mb-push-8 {
    left: 66.66667%; }
  .col-mb-pull-8 {
    right: 66.66667%; }
  .col-mb-offset-8 {
    margin-left: 66.66667%; }
  .col-mb-9 {
    width: 75%; }
  .col-mb-push-9 {
    left: 75%; }
  .col-mb-pull-9 {
    right: 75%; }
  .col-mb-offset-9 {
    margin-left: 75%; }
  .col-mb-10 {
    width: 83.33333%; }
  .col-mb-push-10 {
    left: 83.33333%; }
  .col-mb-pull-10 {
    right: 83.33333%; }
  .col-mb-offset-10 {
    margin-left: 83.33333%; }
  .col-mb-11 {
    width: 91.66667%; }
  .col-mb-push-11 {
    left: 91.66667%; }
  .col-mb-pull-11 {
    right: 91.66667%; }
  .col-mb-offset-11 {
    margin-left: 91.66667%; }
  .col-mb-12 {
    width: 100%; }
  .col-mb-push-12 {
    left: 100%; }
  .col-mb-pull-12 {
    right: 100%; }
  .col-mb-offset-12 {
    margin-left: 100%; }
  .col-mb-5th {
    width: 20%; }
  .col-mb-push-5th {
    left: 20%; }
  .col-mb-pull-5th {
    right: 20%; }
  .col-mb-offset-5th {
    margin-left: 20%; } }

@media all and (min-width: 320px) {
  .col-cb-1 {
    width: 8.33333%; }
  .col-cb-push-1 {
    left: 8.33333%; }
  .col-cb-pull-1 {
    right: 8.33333%; }
  .col-cb-offset-1 {
    margin-left: 8.33333%; }
  .col-cb-push-0 {
    left: auto; }
  .col-cb-pull-0 {
    right: auto; }
  .col-cb-offset-0 {
    margin-left: 0; }
  .col-cb-2 {
    width: 16.66667%; }
  .col-cb-push-2 {
    left: 16.66667%; }
  .col-cb-pull-2 {
    right: 16.66667%; }
  .col-cb-offset-2 {
    margin-left: 16.66667%; }
  .col-cb-3 {
    width: 25%; }
  .col-cb-push-3 {
    left: 25%; }
  .col-cb-pull-3 {
    right: 25%; }
  .col-cb-offset-3 {
    margin-left: 25%; }
  .col-cb-4 {
    width: 33.33333%; }
  .col-cb-push-4 {
    left: 33.33333%; }
  .col-cb-pull-4 {
    right: 33.33333%; }
  .col-cb-offset-4 {
    margin-left: 33.33333%; }
  .col-cb-5 {
    width: 41.66667%; }
  .col-cb-push-5 {
    left: 41.66667%; }
  .col-cb-pull-5 {
    right: 41.66667%; }
  .col-cb-offset-5 {
    margin-left: 41.66667%; }
  .col-cb-6 {
    width: 50%; }
  .col-cb-push-6 {
    left: 50%; }
  .col-cb-pull-6 {
    right: 50%; }
  .col-cb-offset-6 {
    margin-left: 50%; }
  .col-cb-7 {
    width: 58.33333%; }
  .col-cb-push-7 {
    left: 58.33333%; }
  .col-cb-pull-7 {
    right: 58.33333%; }
  .col-cb-offset-7 {
    margin-left: 58.33333%; }
  .col-cb-8 {
    width: 66.66667%; }
  .col-cb-push-8 {
    left: 66.66667%; }
  .col-cb-pull-8 {
    right: 66.66667%; }
  .col-cb-offset-8 {
    margin-left: 66.66667%; }
  .col-cb-9 {
    width: 75%; }
  .col-cb-push-9 {
    left: 75%; }
  .col-cb-pull-9 {
    right: 75%; }
  .col-cb-offset-9 {
    margin-left: 75%; }
  .col-cb-10 {
    width: 83.33333%; }
  .col-cb-push-10 {
    left: 83.33333%; }
  .col-cb-pull-10 {
    right: 83.33333%; }
  .col-cb-offset-10 {
    margin-left: 83.33333%; }
  .col-cb-11 {
    width: 91.66667%; }
  .col-cb-push-11 {
    left: 91.66667%; }
  .col-cb-pull-11 {
    right: 91.66667%; }
  .col-cb-offset-11 {
    margin-left: 91.66667%; }
  .col-cb-12 {
    width: 100%; }
  .col-cb-push-12 {
    left: 100%; }
  .col-cb-pull-12 {
    right: 100%; }
  .col-cb-offset-12 {
    margin-left: 100%; }
  .col-cb-5th {
    width: 20%; }
  .col-cb-push-5th {
    left: 20%; }
  .col-cb-pull-5th {
    right: 20%; }
  .col-cb-offset-5th {
    margin-left: 20%; } }

@media all and (min-width: 640px) {
  .container {
    max-width: 100%; }
  .col-bmb-1 {
    width: 8.33333%; }
  .col-bmb-push-1 {
    left: 8.33333%; }
  .col-bmb-pull-1 {
    right: 8.33333%; }
  .col-bmb-offset-1 {
    margin-left: 8.33333%; }
  .col-bmb-push-0 {
    left: auto; }
  .col-bmb-pull-0 {
    right: auto; }
  .col-bmb-offset-0 {
    margin-left: 0; }
  .col-bmb-2 {
    width: 16.66667%; }
  .col-bmb-push-2 {
    left: 16.66667%; }
  .col-bmb-pull-2 {
    right: 16.66667%; }
  .col-bmb-offset-2 {
    margin-left: 16.66667%; }
  .col-bmb-3 {
    width: 25%; }
  .col-bmb-push-3 {
    left: 25%; }
  .col-bmb-pull-3 {
    right: 25%; }
  .col-bmb-offset-3 {
    margin-left: 25%; }
  .col-bmb-4 {
    width: 33.33333%; }
  .col-bmb-push-4 {
    left: 33.33333%; }
  .col-bmb-pull-4 {
    right: 33.33333%; }
  .col-bmb-offset-4 {
    margin-left: 33.33333%; }
  .col-bmb-5 {
    width: 41.66667%; }
  .col-bmb-push-5 {
    left: 41.66667%; }
  .col-bmb-pull-5 {
    right: 41.66667%; }
  .col-bmb-offset-5 {
    margin-left: 41.66667%; }
  .col-bmb-6 {
    width: 50%; }
  .col-bmb-push-6 {
    left: 50%; }
  .col-bmb-pull-6 {
    right: 50%; }
  .col-bmb-offset-6 {
    margin-left: 50%; }
  .col-bmb-7 {
    width: 58.33333%; }
  .col-bmb-push-7 {
    left: 58.33333%; }
  .col-bmb-pull-7 {
    right: 58.33333%; }
  .col-bmb-offset-7 {
    margin-left: 58.33333%; }
  .col-bmb-8 {
    width: 66.66667%; }
  .col-bmb-push-8 {
    left: 66.66667%; }
  .col-bmb-pull-8 {
    right: 66.66667%; }
  .col-bmb-offset-8 {
    margin-left: 66.66667%; }
  .col-bmb-9 {
    width: 75%; }
  .col-bmb-push-9 {
    left: 75%; }
  .col-bmb-pull-9 {
    right: 75%; }
  .col-bmb-offset-9 {
    margin-left: 75%; }
  .col-bmb-10 {
    width: 83.33333%; }
  .col-bmb-push-10 {
    left: 83.33333%; }
  .col-bmb-pull-10 {
    right: 83.33333%; }
  .col-bmb-offset-10 {
    margin-left: 83.33333%; }
  .col-bmb-11 {
    width: 91.66667%; }
  .col-bmb-push-11 {
    left: 91.66667%; }
  .col-bmb-pull-11 {
    right: 91.66667%; }
  .col-bmb-offset-11 {
    margin-left: 91.66667%; }
  .col-bmb-12 {
    width: 100%; }
  .col-bmb-push-12 {
    left: 100%; }
  .col-bmb-pull-12 {
    right: 100%; }
  .col-bmb-offset-12 {
    margin-left: 100%; }
  .col-bmb-5th {
    width: 20%; }
  .col-bmb-push-5th {
    left: 20%; }
  .col-bmb-pull-5th {
    right: 20%; }
  .col-bmb-offset-5th {
    margin-left: 20%; } }

@media all and (min-width: 768px) {
  .container {
    max-width: 100%; }
  .col-tb-1 {
    width: 8.33333%; }
  .col-tb-push-1 {
    left: 8.33333%; }
  .col-tb-pull-1 {
    right: 8.33333%; }
  .col-tb-offset-1 {
    margin-left: 8.33333%; }
  .col-tb-push-0 {
    left: auto; }
  .col-tb-pull-0 {
    right: auto; }
  .col-tb-offset-0 {
    margin-left: 0; }
  .col-tb-2 {
    width: 16.66667%; }
  .col-tb-push-2 {
    left: 16.66667%; }
  .col-tb-pull-2 {
    right: 16.66667%; }
  .col-tb-offset-2 {
    margin-left: 16.66667%; }
  .col-tb-3 {
    width: 25%; }
  .col-tb-push-3 {
    left: 25%; }
  .col-tb-pull-3 {
    right: 25%; }
  .col-tb-offset-3 {
    margin-left: 25%; }
  .col-tb-4 {
    width: 33.33333%; }
  .col-tb-push-4 {
    left: 33.33333%; }
  .col-tb-pull-4 {
    right: 33.33333%; }
  .col-tb-offset-4 {
    margin-left: 33.33333%; }
  .col-tb-5 {
    width: 41.66667%; }
  .col-tb-push-5 {
    left: 41.66667%; }
  .col-tb-pull-5 {
    right: 41.66667%; }
  .col-tb-offset-5 {
    margin-left: 41.66667%; }
  .col-tb-6 {
    width: 50%; }
  .col-tb-push-6 {
    left: 50%; }
  .col-tb-pull-6 {
    right: 50%; }
  .col-tb-offset-6 {
    margin-left: 50%; }
  .col-tb-7 {
    width: 58.33333%; }
  .col-tb-push-7 {
    left: 58.33333%; }
  .col-tb-pull-7 {
    right: 58.33333%; }
  .col-tb-offset-7 {
    margin-left: 58.33333%; }
  .col-tb-8 {
    width: 66.66667%; }
  .col-tb-push-8 {
    left: 66.66667%; }
  .col-tb-pull-8 {
    right: 66.66667%; }
  .col-tb-offset-8 {
    margin-left: 66.66667%; }
  .col-tb-9 {
    width: 75%; }
  .col-tb-push-9 {
    left: 75%; }
  .col-tb-pull-9 {
    right: 75%; }
  .col-tb-offset-9 {
    margin-left: 75%; }
  .col-tb-10 {
    width: 83.33333%; }
  .col-tb-push-10 {
    left: 83.33333%; }
  .col-tb-pull-10 {
    right: 83.33333%; }
  .col-tb-offset-10 {
    margin-left: 83.33333%; }
  .col-tb-11 {
    width: 91.66667%; }
  .col-tb-push-11 {
    left: 91.66667%; }
  .col-tb-pull-11 {
    right: 91.66667%; }
  .col-tb-offset-11 {
    margin-left: 91.66667%; }
  .col-tb-12 {
    width: 100%; }
  .col-tb-push-12 {
    left: 100%; }
  .col-tb-pull-12 {
    right: 100%; }
  .col-tb-offset-12 {
    margin-left: 100%; }
  .col-tb-5th {
    width: 20%; }
  .col-tb-push-5th {
    left: 20%; }
  .col-tb-pull-5th {
    right: 20%; }
  .col-tb-offset-5th {
    margin-left: 20%; } }

@media all and (min-width: 1024px) {
  .container {
    max-width: 100%; }
  .col-btb-1 {
    width: 8.33333%; }
  .col-btb-push-1 {
    left: 8.33333%; }
  .col-btb-pull-1 {
    right: 8.33333%; }
  .col-btb-offset-1 {
    margin-left: 8.33333%; }
  .col-btb-push-0 {
    left: auto; }
  .col-btb-pull-0 {
    right: auto; }
  .col-btb-offset-0 {
    margin-left: 0; }
  .col-btb-2 {
    width: 16.66667%; }
  .col-btb-push-2 {
    left: 16.66667%; }
  .col-btb-pull-2 {
    right: 16.66667%; }
  .col-btb-offset-2 {
    margin-left: 16.66667%; }
  .col-btb-3 {
    width: 25%; }
  .col-btb-push-3 {
    left: 25%; }
  .col-btb-pull-3 {
    right: 25%; }
  .col-btb-offset-3 {
    margin-left: 25%; }
  .col-btb-4 {
    width: 33.33333%; }
  .col-btb-push-4 {
    left: 33.33333%; }
  .col-btb-pull-4 {
    right: 33.33333%; }
  .col-btb-offset-4 {
    margin-left: 33.33333%; }
  .col-btb-5 {
    width: 41.66667%; }
  .col-btb-push-5 {
    left: 41.66667%; }
  .col-btb-pull-5 {
    right: 41.66667%; }
  .col-btb-offset-5 {
    margin-left: 41.66667%; }
  .col-btb-6 {
    width: 50%; }
  .col-btb-push-6 {
    left: 50%; }
  .col-btb-pull-6 {
    right: 50%; }
  .col-btb-offset-6 {
    margin-left: 50%; }
  .col-btb-7 {
    width: 58.33333%; }
  .col-btb-push-7 {
    left: 58.33333%; }
  .col-btb-pull-7 {
    right: 58.33333%; }
  .col-btb-offset-7 {
    margin-left: 58.33333%; }
  .col-btb-8 {
    width: 66.66667%; }
  .col-btb-push-8 {
    left: 66.66667%; }
  .col-btb-pull-8 {
    right: 66.66667%; }
  .col-btb-offset-8 {
    margin-left: 66.66667%; }
  .col-btb-9 {
    width: 75%; }
  .col-btb-push-9 {
    left: 75%; }
  .col-btb-pull-9 {
    right: 75%; }
  .col-btb-offset-9 {
    margin-left: 75%; }
  .col-btb-10 {
    width: 83.33333%; }
  .col-btb-push-10 {
    left: 83.33333%; }
  .col-btb-pull-10 {
    right: 83.33333%; }
  .col-btb-offset-10 {
    margin-left: 83.33333%; }
  .col-btb-11 {
    width: 91.66667%; }
  .col-btb-push-11 {
    left: 91.66667%; }
  .col-btb-pull-11 {
    right: 91.66667%; }
  .col-btb-offset-11 {
    margin-left: 91.66667%; }
  .col-btb-12 {
    width: 100%; }
  .col-btb-push-12 {
    left: 100%; }
  .col-btb-pull-12 {
    right: 100%; }
  .col-btb-offset-12 {
    margin-left: 100%; }
  .col-btb-5th {
    width: 20%; }
  .col-btb-push-5th {
    left: 20%; }
  .col-btb-pull-5th {
    right: 20%; }
  .col-btb-offset-5th {
    margin-left: 20%; } }

@media all and (min-width: 1440px) {
  .container {
    max-width: 1440px; }
  .col-lt-1 {
    width: 8.33333%; }
  .col-lt-push-1 {
    left: 8.33333%; }
  .col-lt-pull-1 {
    right: 8.33333%; }
  .col-lt-offset-1 {
    margin-left: 8.33333%; }
  .col-lt-push-0 {
    left: auto; }
  .col-lt-pull-0 {
    right: auto; }
  .col-lt-offset-0 {
    margin-left: 0; }
  .col-lt-2 {
    width: 16.66667%; }
  .col-lt-push-2 {
    left: 16.66667%; }
  .col-lt-pull-2 {
    right: 16.66667%; }
  .col-lt-offset-2 {
    margin-left: 16.66667%; }
  .col-lt-3 {
    width: 25%; }
  .col-lt-push-3 {
    left: 25%; }
  .col-lt-pull-3 {
    right: 25%; }
  .col-lt-offset-3 {
    margin-left: 25%; }
  .col-lt-4 {
    width: 33.33333%; }
  .col-lt-push-4 {
    left: 33.33333%; }
  .col-lt-pull-4 {
    right: 33.33333%; }
  .col-lt-offset-4 {
    margin-left: 33.33333%; }
  .col-lt-5 {
    width: 41.66667%; }
  .col-lt-push-5 {
    left: 41.66667%; }
  .col-lt-pull-5 {
    right: 41.66667%; }
  .col-lt-offset-5 {
    margin-left: 41.66667%; }
  .col-lt-6 {
    width: 50%; }
  .col-lt-push-6 {
    left: 50%; }
  .col-lt-pull-6 {
    right: 50%; }
  .col-lt-offset-6 {
    margin-left: 50%; }
  .col-lt-7 {
    width: 58.33333%; }
  .col-lt-push-7 {
    left: 58.33333%; }
  .col-lt-pull-7 {
    right: 58.33333%; }
  .col-lt-offset-7 {
    margin-left: 58.33333%; }
  .col-lt-8 {
    width: 66.66667%; }
  .col-lt-push-8 {
    left: 66.66667%; }
  .col-lt-pull-8 {
    right: 66.66667%; }
  .col-lt-offset-8 {
    margin-left: 66.66667%; }
  .col-lt-9 {
    width: 75%; }
  .col-lt-push-9 {
    left: 75%; }
  .col-lt-pull-9 {
    right: 75%; }
  .col-lt-offset-9 {
    margin-left: 75%; }
  .col-lt-10 {
    width: 83.33333%; }
  .col-lt-push-10 {
    left: 83.33333%; }
  .col-lt-pull-10 {
    right: 83.33333%; }
  .col-lt-offset-10 {
    margin-left: 83.33333%; }
  .col-lt-11 {
    width: 91.66667%; }
  .col-lt-push-11 {
    left: 91.66667%; }
  .col-lt-pull-11 {
    right: 91.66667%; }
  .col-lt-offset-11 {
    margin-left: 91.66667%; }
  .col-lt-12 {
    width: 100%; }
  .col-lt-push-12 {
    left: 100%; }
  .col-lt-pull-12 {
    right: 100%; }
  .col-lt-offset-12 {
    margin-left: 100%; }
  .col-lt-5th {
    width: 20%; }
  .col-lt-push-5th {
    left: 20%; }
  .col-lt-pull-5th {
    right: 20%; }
  .col-lt-offset-5th {
    margin-left: 20%; } }

@media all and (min-width: 1920px) {
  .container {
    max-width: 1640px; }
  .col-dt-1 {
    width: 8.33333%; }
  .col-dt-push-1 {
    left: 8.33333%; }
  .col-dt-pull-1 {
    right: 8.33333%; }
  .col-dt-offset-1 {
    margin-left: 8.33333%; }
  .col-dt-push-0 {
    left: auto; }
  .col-dt-pull-0 {
    right: auto; }
  .col-dt-offset-0 {
    margin-left: 0; }
  .col-dt-2 {
    width: 16.66667%; }
  .col-dt-push-2 {
    left: 16.66667%; }
  .col-dt-pull-2 {
    right: 16.66667%; }
  .col-dt-offset-2 {
    margin-left: 16.66667%; }
  .col-dt-3 {
    width: 25%; }
  .col-dt-push-3 {
    left: 25%; }
  .col-dt-pull-3 {
    right: 25%; }
  .col-dt-offset-3 {
    margin-left: 25%; }
  .col-dt-4 {
    width: 33.33333%; }
  .col-dt-push-4 {
    left: 33.33333%; }
  .col-dt-pull-4 {
    right: 33.33333%; }
  .col-dt-offset-4 {
    margin-left: 33.33333%; }
  .col-dt-5 {
    width: 41.66667%; }
  .col-dt-push-5 {
    left: 41.66667%; }
  .col-dt-pull-5 {
    right: 41.66667%; }
  .col-dt-offset-5 {
    margin-left: 41.66667%; }
  .col-dt-6 {
    width: 50%; }
  .col-dt-push-6 {
    left: 50%; }
  .col-dt-pull-6 {
    right: 50%; }
  .col-dt-offset-6 {
    margin-left: 50%; }
  .col-dt-7 {
    width: 58.33333%; }
  .col-dt-push-7 {
    left: 58.33333%; }
  .col-dt-pull-7 {
    right: 58.33333%; }
  .col-dt-offset-7 {
    margin-left: 58.33333%; }
  .col-dt-8 {
    width: 66.66667%; }
  .col-dt-push-8 {
    left: 66.66667%; }
  .col-dt-pull-8 {
    right: 66.66667%; }
  .col-dt-offset-8 {
    margin-left: 66.66667%; }
  .col-dt-9 {
    width: 75%; }
  .col-dt-push-9 {
    left: 75%; }
  .col-dt-pull-9 {
    right: 75%; }
  .col-dt-offset-9 {
    margin-left: 75%; }
  .col-dt-10 {
    width: 83.33333%; }
  .col-dt-push-10 {
    left: 83.33333%; }
  .col-dt-pull-10 {
    right: 83.33333%; }
  .col-dt-offset-10 {
    margin-left: 83.33333%; }
  .col-dt-11 {
    width: 91.66667%; }
  .col-dt-push-11 {
    left: 91.66667%; }
  .col-dt-pull-11 {
    right: 91.66667%; }
  .col-dt-offset-11 {
    margin-left: 91.66667%; }
  .col-dt-12 {
    width: 100%; }
  .col-dt-push-12 {
    left: 100%; }
  .col-dt-pull-12 {
    right: 100%; }
  .col-dt-offset-12 {
    margin-left: 100%; }
  .col-dt-5th {
    width: 20%; }
  .col-dt-push-5th {
    left: 20%; }
  .col-dt-pull-5th {
    right: 20%; }
  .col-dt-offset-5th {
    margin-left: 20%; } }

body {
  font-family: "raleway", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #989898;
  font-size: 16px;
  background-color: #fff;
  position: relative;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth; }
  body.open-menu #page,
  body.loading #page {
    width: 100%;
    overflow: hidden; }

#page {
  min-width: 320px; }

#overlay {
  background-color: #fff;
  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000;
  display: block;
  opacity: 0;
  pointer-events: none;
  transition: all 1.5s ease; }
  body.loading #overlay {
    opacity: 1; }

[class*="col-"] {
  margin-bottom: 30px;
  min-height: auto; }

.preload-svgs {
  height: 0;
  pointer-events: none;
  width: 0;
  transform: translate(-100%, -100%);
  opacity: 0;
  overflow: hidden; }

.underline--wrapper {
  position: relative;
  width: 100%; }

.underline--stroke {
  z-index: -1;
  position: absolute;
  height: 35px;
  display: block;
  left: -10px;
  bottom: 5px;
  width: calc(100% + 20px); }

.underline--word {
  stroke: #252525; }

@media (max-width: 1439px) {
  .underline--stroke {
    width: calc(100% + 10px);
    left: -5px;
    height: 24px; } }

@media (max-width: 767px) {
  .underline--stroke {
    height: 14px;
    bottom: 3px; } }

section.splash-img,
section.hero {
  min-height: 400px;
  height: 100vh;
  display: -ms-flexbox;
  display: flex;
  background-position: center;
  background-color: #15181c;
  background-size: cover;
  background-repeat: no-repeat; }
  section.splash-img .container,
  section.hero .container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
        align-content: center;
    -ms-flex-align: center;
        align-items: center; }

.parsley-errors-list {
  position: absolute;
  top: 100%;
  transform: translateY(80%);
  color: #a93433; }

/* SUPPORT CLASSES
=================================================================== */
.visuallyHidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  white-space: nowrap;
  overflow: hidden;
  position: absolute; }

.resetVisuallyHidden {
  overflow: visible;
  margin: auto;
  height: auto;
  width: auto;
  clip: auto;
  white-space: normal; }

.hidden-sr {
  position: absolute;
  left: -9999px;
  height: 1px;
  width: 1px;
  overflow: hidden;
  margin: -1px; }

/* RESET
=================================================================== */
/* RESET PADDINGS + MARGINS
    =================================================================== */
.scandinave-title, header .site-title, .prefooter .row .gifts--title, .prefooter .row .gifts--subtitle, .prefooter .row #menu-location-wrapper .footer-location--title, .prefooter .row #menu-location-wrapper .footer-location--reservation, .prefooter .row #menu-location-wrapper .footer-location--telephone, .prefooter .row #menu-location-wrapper .social-media ul, .hydroritual--title, .promobox--title, .promobox--subhead, .quote--title, .reservation--title, .reservation--subtitle, .package--subhead, .bathsmassages--main-title, .bathsmassages--title, .bathsmassages--subtitle, .partners--deals-title, .partners--item div.content > h2, .faq--block-title, .faq--item-question, .home.is-main-group .splash-img .container .locations .intro,
.home.is-main-group .splash-img .container .locations .choose, .bloglist--title {
  margin: 0;
  padding: 0; }

/* RESET UL + OL
    =================================================================== */
.parsley-errors-list, header .location-menu-desktop ul,
header .group-menu-desktop ul, header .group-menu-mobile ul, footer nav ul, .prefooter nav ul, div.content ul, div.content ol, .hydroritual--steps {
  margin: 0;
  padding: 0;
  list-style: none; }

/* RESET BUTTON
    =================================================================== */
header .group-menu-mobile .toggle-menu, .contactform form input,
.contactform form button,
.contactform form textarea {
  padding: 0;
  margin: 0;
  border: 0;
  background: none; }

/* FONTS
=================================================================== */
/* RALEWAY
    =================================================================== */
/* MEDIUM - 500
        =================================================================== */
.raleway--medium,
.splash-img .container .intro p {
  font-family: 'raleway', sans-serif;
  font-weight: 500;
  font-style: normal; }

/* BOLD - 700
        =================================================================== */
.raleway--bold,
#menu-footer-wrapper li > a,
.home.is-main-group .locations h2,
header .group-menu li > a,
[data-for*="ritual-"],
div.content h2,
div.content h3,
div.content h4,
div.content li,
.promobox--subhead,
.promobox--description,
a.links,
button.links,
div.content a:not(.links),
div.content > p strong,
div.content li strong,
.contactform form,
.bloglist--cat,
.blogcontent--excerpt,
.blogcontent--return,
.bloglinks--prev-next a .content,
.reservation--subtitle,
.gifts--subtitle,
footer nav li > a,
#menu-location-wrapper nav li > a,
.footer-location--title,
.footer-location--reservation,
.reservations--title,
.hero .hero--desc,
.package--item div.content p,
.package--subhead,
.bathsmassages--subtitle,
.bathsmassages-elem--prices .text,
.faq--item-question {
  font-family: 'raleway', sans-serif;
  font-weight: 700;
  font-style: normal; }

/* MYRIAD
    =================================================================== */
/* REGULAR
        =================================================================== */
.myriad--reg,
#menu-legal-wrapper p {
  font-family: 'myriad-pro', sans-serif;
  font-weight: 400;
  font-style: normal; }

/* KEPLER STD
    =================================================================== */
/* DISPLAY
        =================================================================== */
.kepler--display,
.locations--item > a,
section.hero h1,
.promobox--title,
.hydroritual--title,
.halfblock--item div.content > h2,
.contactform div.content > h2,
.textsingle--content div.content > h2,
.textmulti--content div.content > h2,
.textdark--content div.content > h2,
.bloglist--item .bloglist--title,
.navigation-pages,
.single div.content > h1,
div.content ol > li::before,
.gallery--controls,
.quote--title,
.bgimage--content div.content > h2,
.reservation--title,
.gifts--title,
header .group-menu-mobile .primary-menu li > a,
.package--letter,
.bathsmassages--title,
.bathsmassages--main-title,
.bathsmassages-elem--intro div.content > h2,
.bathsmassages-elem--prices .price,
.massages--item div.content > h2,
.partners--deals-title,
.faq--block-title {
  font-family: 'kepler-std-display', serif;
  font-weight: 400;
  font-style: normal; }

/* OPEN SANS
    =================================================================== */
/* SEMI BOLD
        =================================================================== */
.opensans--semibold,
.reservation .links .content,
.footer-location--telephone,
.reservations--telephone,
.reservations--online,
.massages--item.reservations .content > h3 {
  font-family: 'open-sans', sans-serif;
  font-weight: 600;
  font-style: normal; }

/* SIZES
=================================================================== */
/* 8px = 0.5rem
    =================================================================== */
/* 10px = 0.625rem;
    =================================================================== */
.footer-location--reservation,
.reservations--title {
  font-size: 0.625rem; }

/* 11px = 0.6875rem
    =================================================================== */
#menu-footer-wrapper li > a,
header .secondary-menu.secondary-menu.secondary-menu li > a,
footer nav li > a,
div.content p > small {
  font-size: 0.6875rem; }

/* 12px = 0.75rem;
    =================================================================== */
#menu-legal-wrapper p,
.footer-location--title,
.bathsmassages-elem--prices .text {
  font-size: 0.75rem; }

/* 13px = 0.8125rem;
    =================================================================== */
header .group-menu li > a,
[data-for*="ritual-"],
.links .content,
div.content p strong,
div.content li strong,
.parsley-errors-list,
.bloglist--cat > a,
.blogcontent--return,
.bloglinks--prev-next a .content,
.textdark--content div.content h3,
.reservation--subtitle,
.gifts--subtitle,
#menu-location-wrapper nav li > a,
.bathsmassages--subtitle,
.textmulti--column > h4 {
  font-size: 0.8125rem; }

/* 14px = 0.875rem
    =================================================================== */
header .reservations-lang ul li a,
.promobox--subhead,
.reservations--telephone,
.reservations--online,
.package--subhead,
.partners--item div.content p {
  font-size: 0.875rem; }

/* 15px = 0.9375rem
    =================================================================== */
.splash-img .container .intro p,
.hydroritual--desc,
.hydroritual--steps,
div.content p,
.bloglist--excerpt,
.bloglinks--title,
.footer-location--address,
.partners--item div.content > h2,
div.content > h3 {
  font-size: 0.9375rem; }

/* 16px = 1rem
    =================================================================== */
.home.is-main-group .locations h2,
div.content > h2,
div.content > h4,
div.content li,
.promobox--description,
.halfblock--item div.content > h3,
.bgimage--content div.content > h3,
.package--item div.content p,
.bathsmassages-elem--intro div.content > h3,
.massages--item div.content > h3,
.faq--item-question {
  font-size: 1rem; }

/* 18px = 1.125rem;
    =================================================================== */
.footer-location--telephone,
.reservations-menu .reservations--telephone,
.reservations-menu .reservations--online,
.massages--item.reservations .content > h3 {
  font-size: 1.125rem; }

/* 20px = 1.25rem
    =================================================================== */
.navigation-pages .page-numbers {
  font-size: 1.25rem; }

/* 24px = 1.5rem
    =================================================================== */
div.content ol > li::before {
  font-size: 1.5rem; }

/* 25px = 1.5625rem
    =================================================================== */
header .group-menu-mobile .primary-menu li > a {
  font-size: 1.5625rem; }

/* 35px = 2.1875rem
    =================================================================== */
.bathsmassages-elem--prices .price {
  font-size: 2.1875rem; }

/* 40px = 2.5rem
    =================================================================== */
.bloglist--title,
.navigation-pages .page-numbers.current,
.gallery--pager {
  font-size: 2.5rem; }

/* 45px = 2.8125rem
    =================================================================== */
.halfblock--item div.content > h2,
.contactform div.content > h2,
.single div.content > h1,
.textmulti--content div.content > h2,
.textdark--content div.content > h2,
.faq--block-title,
.bgimage--content div.content > h2 {
  font-size: 2.8125rem; }

/* 50px = 3.125rem
    =================================================================== */
.textsingle--content div.content > h2,
.bathsmassages-elem--intro div.content > h2,
.massages--item div.content > h2,
.bathsmassages--title,
.gifts--title {
  font-size: 3.125rem; }

/* 60px = 3.75rem
    =================================================================== */
.reservation--title,
.bathsmassages--main-title,
.partners--deals-title,
.promobox--title,
.hydroritual--title {
  font-size: 3.75rem; }

/* 80px = 5rem
    =================================================================== */
.locations--item > a,
.quote--title {
  font-size: 5rem; }

/* 100px = 6.25
    =================================================================== */
section.hero h1 {
  font-size: 6.25rem; }

@media (max-width: 1440px) {
  /* 64px = 4rem
        =================================================================== */
  .locations--item > a,
  .quote--title {
    font-size: 4rem; }
  /* 80px = 5rem
        =================================================================== */
  section.hero h1 {
    font-size: 5rem; } }

@media (max-width: 1280px) {
  /* 64px = 4rem
        =================================================================== */
  section.hero h1 {
    font-size: 4rem; } }

@media (max-width: 1024px) {
  /* 36px = 2.25rem
        =================================================================== */
  .bathsmassages--title {
    font-size: 2.25rem; } }

@media (max-width: 1023px) {
  /* 36px = 2.25rem
        =================================================================== */
  .locations--item > a {
    font-size: 2.25rem; } }

@media (max-width: 767px) {
  /* 11px = 0.6875rem
        =================================================================== */
  .promobox--subhead,
  .bathsmassages-elem--prices .text {
    font-size: 0.6875rem; }
  /* 12px = 0.75rem
        =================================================================== */
  .hydroritual--desc,
  .contactform > div,
  .reservation--subtitle,
  .gifts--subtitle,
  .bathsmassages--subtitle {
    font-size: 0.75rem; }
  /* 14px = 0.875rem
        =================================================================== */
  .promobox--description,
  .navigation-pages .page-numbers,
  .hero .hero--desc,
  .massages--item.reservations .content > h3,
  .faq--item-question {
    font-size: 0.875rem; }
  /* 24px = 1.5rem
        =================================================================== */
  .bathsmassages-elem--prices .price {
    font-size: 1.5rem; }
  /* 28px = 1.75rem;
        =================================================================== */
  .massages--item div.content > h2 {
    font-size: 1.75rem; }
  /* 34px = 2.125rem
        =================================================================== */
  .hydroritual--title,
  .halfblock--item div.content > h2,
  .single div.content > h1,
  .contactform div.content > h2,
  .bloglist--title,
  .navigation-pages .page-numbers.current,
  .textsingle--content div.content > h2,
  .textmulti--content div.content > h2,
  .textdark--content div.content > h2,
  .bgimage--content div.content > h2,
  .bathsmassages--title,
  .bathsmassages-elem--intro div.content > h2,
  .faq--block-title {
    font-size: 2.125rem; }
  /* 36px = 2.25rem
        =================================================================== */
  section.hero h1,
  .promobox--title,
  .quote--title,
  .reservation--title,
  .gifts--title,
  .bathsmassages--main-title,
  .partners--deals-title {
    font-size: 2.25rem; } }

@media (max-width: 639px) {
  /* 10px = 0.625rem
        =================================================================== */
  footer .row #menu-legal-wrapper p,
  footer .row #menu-legal-wrapper li > a {
    font-size: 0.625rem; }
  /* 11px = 0.6875rem
        =================================================================== */
  .home.is-main-group .locations h2,
  div.content h3,
  .bloglist--cat > a {
    font-size: 0.6875rem; }
  /* 12px = 0.75rem
        =================================================================== */
  .splash-img .container .intro p,
  div.content p,
  .bloglist--excerpt,
  div.content h2,
  div.content h4,
  div.content li,
  .halfblock--item div.content > h3,
  .links .content,
  .bloglinks--title,
  .bgimage--content div.content > h3,
  .bathsmassages-elem--intro div.content > h3,
  .package--subhead {
    font-size: 0.75rem; }
  /* 20px = 1.25rem
        =================================================================== */
  div.content ol > li::before {
    font-size: 1.25rem; }
  /* 32px = 2rem
        =================================================================== */
  .gallery--pager {
    font-size: 1.875rem; } }

/* TEXT-TRANSFORM
=================================================================== */
/* UPPERCASE
    =================================================================== */
.scandinave-title,
footer nav li,
.home.is-main-group .locations h2,
header .secondary-menu li,
header .reservations-lang ul li,
[data-for*="ritual-"],
div.content > h2,
div.content > h3,
.textmulti--column > h4,
.promobox--subhead,
a.links,
button.links,
div.content li strong,
.bloglist--cat,
.blogcontent--return,
.bloglinks--prev-next a .content,
.textdark--content div.content h3,
.reservation--subtitle,
.gifts--subtitle,
#menu-location-wrapper nav li > a,
.footer-location--title,
.footer-location--reservation,
.reservations-lang .reservations,
.reservations-menu .reservations--title,
header .location-menu-desktop li > a,
.package--subhead,
.bathsmassages--subtitle,
.bathsmassages-elem--prices .text {
  text-transform: uppercase; }

/* NONE
    =================================================================== */
.halfblock--item div.content > h2,
.contactform div.content > h2,
.textsingle--content div.content h2,
.textmulti--content div.content h2,
.textdark--content div.content h2,
.bgimage--content div.content > h2,
.bathsmassages-elem--intro div.content > h2,
.massages--item div.content > h2,
.partners--item div.content > h2 {
  text-transform: none; }

/* TEXT-DECORATION
=================================================================== */
/* NONE
    =================================================================== */
footer nav li > a,
.locations--item > a,
header .group-menu li > a,
a.links,
button.links,
div.content a:not(.links),
.bloglist--item a,
.navigation-pages .page-numbers,
.blogcontent--return,
.bloglinks--prev-next a,
#menu-location-wrapper nav li > a,
.footer-location--telephone > a,
.footer-location--address > a,
.reservations--telephone,
.reservations--online,
.promobox--description a {
  text-decoration: none; }

/* COLORS
=================================================================== */
/* $backgroundColor = #fff
    =================================================================== */
footer #menu-footer-wrapper,
header .group-menu li > a,
section.hero h1,
[data-for*="ritual-"],
.hydroritual--title,
.hydroritual--steps div.content > h2,
.hydroritual--steps div.content > h3,
.hydroritual--steps div.content > h4,
section.promobox,
a.links,
section.contactform,
.bloglinks--prev-next a,
.gallery--controls,
.textdark--content div.content > h2,
.textdark--content div.content h3,
.textdark--content div.content p strong,
section.quote,
section.reservation,
div.gifts--content,
.reservations-lang .reservations,
.reservations-menu,
.hero .hero--desc,
.package--item div.content > h2,
.package--subhead,
.package--item .bgimage--link a.links,
section.bathsmassages,
section.packages .halfblock--content h2,
section.packages .halfblock--content h3,
section.packages .halfblock--content h4,
section.packages .halfblock--content > .content > p strong,
.partners--deals-title,
section.contactform div.content > p strong,
.has-hover .promobox--description a:hover,
.has-hover .promobox--description a:focus {
  color: #fff; }

/* $backgroundColor - OPACITY
    =================================================================== */
.has-hover #menu-footer-wrapper li a:hover,
.has-hover #menu-footer-wrapper li a:focus,
#menu-footer-wrapper li.current-menu-item a,
.has-hover header .group-menu li > a:hover,
.has-hover header .group-menu li > a:focus,
header .group-menu li.current-menu-item a,
.has-hover .reservations-menu .reservations a:hover,
.has-hover .reservations-menu .reservations a:focus,
.has-hover .bloglinks--link > a:hover span.content,
.has-hover .bloglinks--link > a:focus span.content {
  color: rgba(255, 255, 255, 0.3); }

/* $textColor - OPACITY
    =================================================================== */
/* $backgroundColorAlt = #252525
    =================================================================== */
div.content > h2,
div.content > h3,
.halfblock--link a.links,
div.content a:not(.links),
div.content > p strong,
div.content li strong,
.bloglist--cat > a,
.bloglist--title > a,
.single div.content > h1,
.single .blogcontent--excerpt,
.bgimage--link a.links,
#menu-location-wrapper nav li > a,
.footer-location--title,
.footer-location--reservation,
.footer-location--telephone > a,
.textmulti--column > h4,
.bathsmassages-elem--prices .price,
.partners--link a,
.faq--block-title,
.faq--item-question,
.textmulti--link a.links {
  color: #252525; }

/* $backgroundColorAlt - OPACITY
    =================================================================== */
.has-hover div.content a:not(.links):hover,
.has-hover div.content a:not(.links):focus,
.has-hover .bloglist--cat > a:hover,
.has-hover .bloglist--cat > a:focus,
.has-hover .bloglist--title > a:hover,
.has-hover .bloglist--title > a:focus,
.has-hover #menu-location-wrapper nav li > a:hover,
.has-hover #menu-location-wrapper nav li > a:focus,
.has-hover .footer-location--telephone > a:hover,
.has-hover .footer-location--telephone > a:focus {
  color: rgba(37, 37, 37, 0.3); }

/* #8e9097
    =================================================================== */
/* $textColor - OPACITY
    =================================================================== */
.has-hover .navigation-pages a.page-numbers:hover,
.has-hover .navigation-pages a.page-numbers:focus {
  color: rgba(152, 152, 152, 0.3); }

.has-hover .footer-location--address > a:hover,
.has-hover .footer-location--address > a:focus,
.has-hover footer nav li > a:hover,
.has-hover footer nav li > a:focus,
.has-hover .blogcontent--return:hover,
.has-hover .blogcontent--return:focus {
  color: rgba(152, 152, 152, 0.3); }

/* CURRENT COLOR
    =================================================================== */
footer nav li > a,
section.contactform div.content > h2,
section.contactform div.content > h3,
section.contactform form input,
section.contactform form textarea,
section.contactform form button,
.navigation-pages .page-numbers,
.blogcontent--return,
.footer-location--address > a,
.reservations-lang .reservations a,
.reservations-menu .reservations a {
  color: currentColor; }

/* #dbdbdb
    =================================================================== */
#menu-location-wrapper .footer-location--dakkar {
  color: #ccc; }

/* BACKGROUND-COLORS
=================================================================== */
/* $backgroundColor #ffffff
    =================================================================== */
.bgimage--content {
  background-color: #fff; }

/* $backgroundColorAlt = #252525
    =================================================================== */
header .group-menu-mobile .navigation,
.bloglinks,
.textdark,
.reservation,
.reservations-menu,
.bathsmassages,
section.packages {
  background-color: #252525; }

header {
  position: absolute;
  width: 100%;
  z-index: 5; }
  body.open-menu header {
    height: 100%;
    position: absolute; }
  header .site-title {
    position: relative;
    z-index: 10;
    opacity: 1;
    visibility: visible;
    pointer-events: all;
    line-height: 0;
    transition: opacity 0s ease, visibility 0s ease; }
    header .site-title svg {
      position: relative;
      left: -18px; }
    header .site-title a {
      display: inline-block;
      transition: opacity 0.3s ease; }
      .has-hover header .site-title a:hover {
        opacity: 0.3; }
    .is-main-group header .site-title {
      top: 15px; }
  header .logo {
    fill: #fff;
    width: 330px;
    height: 53px; }
  header > .container {
    position: relative; }
  header > .container > .row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-align: center;
        align-items: center;
    height: 52px; }
    .is-location header > .container > .row:first-child {
      margin-bottom: 54px; }
    .home.is-main-group header > .container > .row {
      -ms-flex-pack: end;
          justify-content: flex-end; }
  header .reservations-menu {
    width: 100%;
    max-width: 330px;
    padding: 17px 25px;
    font-size: 0;
    position: absolute;
    top: 0;
    left: 30px;
    background-image: url(../images/texture.jpg); }
    header .reservations-menu .reservations {
      font-size: 1px;
      text-align: justify;
      width: 100%;
      height: auto; }
      header .reservations-menu .reservations:after {
        display: inline-block;
        content: "";
        width: 100%;
        line-height: 0;
        vertical-align: top;
        font-size: 0; }
      header .reservations-menu .reservations span,
      header .reservations-menu .reservations a {
        line-height: 1;
        vertical-align: middle; }
      header .reservations-menu .reservations--title {
        display: inline-block;
        letter-spacing: 0.15em; }
      header .reservations-menu .reservations--telephone,
      header .reservations-menu .reservations--online{
        display: inline-block;
        letter-spacing: 0.1em;
        transition: color 0.3s ease; }
  header .location-menu-desktop,
  header .group-menu-desktop {
    position: relative;
    font-size: 0; }
    header .location-menu-desktop li,
    header .group-menu-desktop li {
      display: inline-block;
      margin: 0 25px; }
      header .location-menu-desktop li a,
      header .group-menu-desktop li a {
        transition: color 0.3s ease;
        letter-spacing: 0.1em; }
  header .location-menu-desktop {
    width: 100%;
    text-align: right; }
    header .location-menu-desktop li {
      position: relative; }
      header .location-menu-desktop li svg.arrow {
        height: 16px;
        width: 31px;
        position: absolute;
        transform-origin: bottom left;
        transform: rotate(90deg) translateX(-100%);
        opacity: 0;
        bottom: -8px;
        left: calc(50% - 8px);
        -webkit-backface-visibility: hidden;
                backface-visibility: hidden;
        fill: #fff;
        transition: opacity 0.5s ease, transform 0.5s ease 0.2s;
        z-index: -1; }
      header .location-menu-desktop li svg.line {
        fill: #fff;
        position: absolute;
        display: none;
        bottom: -22px;
        height: 2px;
        width: 60%;
        left: 50%;
        transform: translateX(-50%); }
      header .location-menu-desktop li > a {
        position: relative; }
      .has-hover header .location-menu-desktop li > a:hover ~ svg.arrow,
      .has-hover header .location-menu-desktop li > a:focus ~ svg.arrow,
      header .location-menu-desktop li.current-menu-item > a ~ svg.arrow {
        transition: opacity 1s ease 0.2s, transform 1s ease;
        transform: rotate(90deg);
        opacity: 1; }
      header .location-menu-desktop li.current-menu-item > a ~ svg.line {
        display: block; }
  header .group-menu-desktop {
    padding: 0 6px;
    line-height: 50px; }
    header .group-menu-desktop::before {
      content: '';
      width: 100%;
      height: 4px;
      position: absolute;
      background-image: url(../images/line.svg);
      background-repeat: no-repeat;
      background-position: 0 0;
      background-size: 100% 3px;
      bottom: 0; }
    header .group-menu-desktop div, header .group-menu-desktop ul {
      display: inline; }
    header .group-menu-desktop li {
      margin: 0 22px; }
    header .group-menu-desktop .lang-menu {
      position: relative; }
      header .group-menu-desktop .lang-menu::before {
        position: absolute;
        content: '';
        width: 30px;
        height: 4px;
        background-image: url(../images/line.svg);
        background-repeat: no-repeat;
        background-position: 0 0;
        background-size: 100% 2px;
        left: 0;
        top: -6px;
        display: block;
        transform: rotate(-90deg); }
      header .group-menu-desktop .lang-menu ul {
        margin-left: 24px; }
  header .group-menu-mobile {
    display: none; }
    header .group-menu-mobile .secondary-menu {
      position: relative;
      font-size: 0; }
      header .group-menu-mobile .secondary-menu li {
        display: block;
        margin: 24px 0; }
        header .group-menu-mobile .secondary-menu li:first-child {
          margin-top: 0; }
        header .group-menu-mobile .secondary-menu li > a {
          letter-spacing: 0.1em;
          display: inline-block; }
    header .group-menu-mobile .navigation {
      background-position: center top;
      padding-top: 70px;
      padding-bottom: 30px;
      position: absolute;
      top: 0;
      left: 0;
      min-height: 100vh;
      transform: translateX(-60px);
      width: 0;
      overflow-x: hidden;
      transition: width 0.5s cubic-bezier(0.6, 0.07, 0.96, 0.89), transform 0.5s ease-in-out 0.2s; }
      body.open-menu header .group-menu-mobile .navigation {
        width: 100%;
        transform: translateX(0); }
      header .group-menu-mobile .navigation .container {
        max-width: none !important;
        width: 100vw !important; }
      header .group-menu-mobile .navigation .row {
        display: block; }
        header .group-menu-mobile .navigation .row ul li > a {
          transition: color 0.3s ease; }
    header .group-menu-mobile .primary-menu {
      position: relative;
      margin-bottom: 20px;
      font-size: 0; }
      header .group-menu-mobile .primary-menu li {
        margin: 24px 0;
        display: block; }
        header .group-menu-mobile .primary-menu li:first-child {
          margin-top: 0; }
        header .group-menu-mobile .primary-menu li:last-child {
          margin-bottom: 0;
          padding-bottom: 24px; }
        header .group-menu-mobile .primary-menu li > a {
          line-height: 1;
          display: block; }
      header .group-menu-mobile .primary-menu::after {
        content: '';
        position: absolute;
        left: 0;
        opacity: 0.3;
        width: 100%;
        height: 4px;
        position: absolute;
        background-repeat: no-repeat;
        background-position: 0 0;
        background-size: 100% 2px;
        bottom: 0; }
    #menu_mobile {
      position: relative;
      display: inline-block; }
      #menu_mobile g {
        position: relative;
        display: inline-block; }
    header .group-menu-mobile .toggle-menu {
      outline: 0;
      padding: 8px;
      position: relative;
      z-index: 10;
      cursor: pointer;
      opacity: 0;
      pointer-events: none;
      visibility: hidden;
      transition: opacity 0s ease, visibility 0s ease; }
      header .group-menu-mobile .toggle-menu svg {
        width: 30px;
        display: block;
        fill: #fff; }
        header .group-menu-mobile .toggle-menu svg:not(:root) {
          overflow: visible; }
    header .group-menu-mobile .reservations-lang {
      position: relative;
      display: -ms-flexbox;
      display: flex;
      height: 42px;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-align: end;
          align-items: flex-end; }
      header .group-menu-mobile .reservations-lang .reservations {
        width: 100%; }
        header .group-menu-mobile .reservations-lang .reservations span,
        header .group-menu-mobile .reservations-lang .reservations a {
          line-height: 1; }
        header .group-menu-mobile .reservations-lang .reservations--title {
          display: block;
          letter-spacing: 0.15em;
          margin-bottom: 10px;
          margin-top: 15px; }
        header .group-menu-mobile .reservations-lang .reservations--telephone,
        header .group-menu-mobile .reservations-lang .reservations--online{
          display: inline-block;
          letter-spacing: 0.1em; }
      header .group-menu-mobile .reservations-lang ul {
        font-size: 0; }
        header .group-menu-mobile .reservations-lang ul li > a {
          letter-spacing: 0.1em;
          padding: 5px 0; }
      header .group-menu-mobile .reservations-lang:not(.online)::after {
        content: '';
        position: absolute;
        left: 0;
        opacity: 0.3;
        top: -7px;
        width: 100%;
        height: 4px;
        position: absolute;
        background-repeat: no-repeat;
        background-position: 0 0;
        background-size: 100% 2px; }
  @media (min-width: 1024px) and (max-width: 1130px) {
    header .location-menu-desktop li {
      margin: 0 16px; }
      header .location-menu-desktop li:last-child {
        margin-right: 25px; } }
  @media (max-width: 1024px) {
    header .logo {
      width: 280px; } }
  @media (max-width: 1023px) {
    header {
      overflow: visible; }
      header .site-title {
        top: 0; }
        body.open-menu header .site-title {
          opacity: 1; }
        header .site-title svg {
          left: -14px; }
        body.is-main-group header .site-title {
          top: 0; }
      header .logo {
        width: 200px; }
      header .group-menu-desktop,
      header .location-menu-desktop,
      header .reservations-menu,
      .is-location header > .container > .row:first-child {
        display: none; }
      header .group-menu-mobile {
        display: block; }
        header .group-menu-mobile .toggle-menu {
          opacity: 1;
          visibility: visible;
          pointer-events: all;
          transition-duration: 0.3s; }
        header .group-menu-mobile .navigation {
          background-image: url(../images/texture.jpg); }
        header .group-menu-mobile .reservations-lang:not(.online)::after,
        header .group-menu-mobile .primary-menu::after {
          background-image: url(../images/line.svg); }
      .home.is-main-group header .container .row {
        -ms-flex-pack: justify;
            justify-content: space-between; } }
  @media (max-width: 639px) {
    header > .container,
    header .navigation > .container {
      padding: 0 20px; }
      header > .container > .row,
      header .navigation > .container > .row {
        margin-left: 0;
        margin-right: 0; }
    header .site-title svg {
      left: -12px; }
    header .logo {
      width: 190px; } }

@media (max-width: 1023px) {
  .is-location:not(.open-menu) header.headroom--not-top > .container {
    padding: 0 60px !important;
    margin-right: 0 !important; } }

@media (max-width: 639px) {
  .is-location:not(.open-menu) header.headroom--not-top > .container {
    padding: 0 20px !important; } }

.is-location:not(.open-menu) header {
  will-change: transform, opacity;
  animation-fill-mode: both;
  animation-duration: 1s;
  transition: transform .5s ease-in-out; }
  .is-location:not(.open-menu) header.headroom--not-top {
    position: fixed; }
    .is-location:not(.open-menu) header.headroom--not-top > .container {
      margin-right: -30px;
      max-width: none;
      padding: 0 30px; }
    .is-location:not(.open-menu) header.headroom--not-top.is-mobile > .container {
      padding: 0 60px;
      margin-right: 0; }

@keyframes slideDown {
  0% {
    transform: translateY(-100%); }
  100% {
    transform: translateY(0%); } }

@keyframes slideUp {
  0% {
    transform: translateY(0%); }
  50% { }
  100% {
    transform: translateY(-100%); } }
  @media (min-width: 1024px) and (max-width: 1130px) {
    .is-location:not(.open-menu) header.headroom--not-top .logo {
      width: 180px; }
    .is-location:not(.open-menu) header.headroom--not-top .location-menu-desktop nav li {
      margin: 0 12px; } }
  @media (min-width: 1130px) {
    .is-location:not(.open-menu) header.headroom--not-top .logo {
      width: 200px; }
    .is-location:not(.open-menu) header.headroom--not-top .location-menu-desktop nav li {
      margin: 0 16px; } }
  @media (min-width: 1024px) {
    .is-location:not(.open-menu) header.headroom--not-top {
      transform: translateY(-100%);
      background-color: #fff;
      box-shadow: 0px 10px 30px 0px rgba(22, 22, 22, 0.125); }
      .is-location:not(.open-menu) header.headroom--not-top .logo {
        left: -12px;
        fill: #252525; }
      .is-location:not(.open-menu) header.headroom--not-top > .container > .row {
        height: auto;
        margin-left: 0; }
        .is-location:not(.open-menu) header.headroom--not-top > .container > .row:first-child {
          display: none; }
      .is-location:not(.open-menu) header.headroom--not-top .location-menu-desktop svg {
        display: none; }
      .is-location:not(.open-menu) header.headroom--not-top .location-menu-desktop nav {
        margin-right: 20px; }
        .is-location:not(.open-menu) header.headroom--not-top .location-menu-desktop nav li > a {
          color: #252525;
          font-size: 0.6875rem; }
          .is-location:not(.open-menu) header.headroom--not-top .location-menu-desktop nav li > a::before {
            content: none; }
        .is-location:not(.open-menu) header.headroom--not-top .location-menu-desktop nav li.current-menu-item > a,
        .is-location:not(.open-menu) header.headroom--not-top .location-menu-desktop nav li > a:hover,
        .is-location:not(.open-menu) header.headroom--not-top .location-menu-desktop nav li > a:focus {
          color: rgba(37, 37, 37, 0.3); }
      .is-location:not(.open-menu) header.headroom--not-top .reservations::after {
        content: none; }
      .is-location:not(.open-menu) header.headroom--not-top .reservations-menu {
        position: relative;
        left: auto;
        top: auto;
        -ms-flex-item-align: stretch;
            -ms-grid-row-align: stretch;
            align-self: stretch;
        padding-top: 26px;
        padding-bottom: 26px;
        max-width: 250px;
        min-width: 220px; }
      .is-location:not(.open-menu) header.headroom--not-top .reservations--title {
        display: block; }
    .is-location:not(.open-menu) header.headroom--pinned.headroom--not-top {
      animation-name: slideDown; }
    .is-location:not(.open-menu) header.headroom--unpinned.headroom--not-top {
      animation-name: slideUp; } }
  @media (max-width: 1023px) {
    .is-location:not(.open-menu) header {
      background-color: #252525; }
      .is-location:not(.open-menu) header.headroom--pinned.headroom--not-top {
        animation-name: slideDown; }
      .is-location:not(.open-menu) header.headroom--unpinned.headroom--not-top {
        animation-name: slideUp; } }

footer nav {
  position: relative;
  display: inline-block; }
  footer nav ul li {
    font-size: 0;
    display: inline-block; }
  footer nav ul a {
    letter-spacing: 0.1em;
    transition: color 0.3s ease; }

footer .container {
  position: static;
  max-width: none; }

footer .row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -ms-flex-align: center;
      align-items: center; }
  footer .row #menu-footer-wrapper {
    z-index: 0;
    padding-top: 30px;
    padding-bottom: 30px;
    text-align: center;
    background-color: #252525; }
    footer .row #menu-footer-wrapper::after {
      position: absolute;
      content: '';
      top: 0;
      bottom: 0;
      right: 0;
      left: -100%;
      z-index: -1;
      background: #252525;
      border-top: 1px solid #3d3d3d; }
      .is-location footer .row #menu-footer-wrapper::after {
        border-top-color: #252525; }
    footer .row #menu-footer-wrapper nav {
      margin-left: -25px; }
    footer .row #menu-footer-wrapper li:not(:last-child) {
      margin-right: 24px;
      margin-left: 24px; }
    footer .row #menu-footer-wrapper li:last-child {
      margin-left: 24px; }
    footer .row #menu-footer-wrapper li:first-child {
      margin-left: 0; }
  footer .row #menu-legal-wrapper {
    text-align: right;
    font-size: 0; }
    footer .row #menu-legal-wrapper li {
      display: inline-block;
      margin: 0 15px 0 0; }
    footer .row #menu-legal-wrapper p {
      position: relative;
      display: inline-block;
      letter-spacing: 0.1em;
      padding-left: 20px; }
      footer .row #menu-legal-wrapper p::before {
        position: absolute;
        content: '';
        width: 30px;
        height: 4px;
        background-image: url(../images/line.php?color=%23dbdbdb);
        background-repeat: no-repeat;
        background-position: 0 0;
        background-size: 100% 2px;
        left: 0;
        top: -9px;
        display: inline-block;
        transform: rotate(90deg);
        transform-origin: center left; }
  footer .row > div {
    float: none;
    margin-bottom: 0; }
  @media (max-width: 1120px) {
    footer .row #menu-footer-wrapper {
      padding-left: 0; }
      footer .row #menu-footer-wrapper li:not(:last-child) {
        margin-right: 18px;
        margin-left: 18px; }
      footer .row #menu-footer-wrapper li:last-child {
        margin-left: 18px; } }
  @media (max-width: 1023px) {
    footer .row {
      display: block; }
      footer .row #menu-footer-wrapper {
        display: none; }
      footer .row #menu-legal-wrapper {
        padding-top: 14px;
        padding-right: 60px; } }
  @media (max-width: 639px) {
    footer .row > div {
      padding-left: 0;
      padding-right: 0; }
    footer .row #menu-legal-wrapper {
      text-align: left;
      padding-right: 0; }
      footer .row #menu-legal-wrapper > p {
        padding-left: 15px; } }

@media (max-width: 1023px) {
  footer {
    margin-bottom: 20px; } }

.prefooter nav {
  position: relative;
  display: inline-block; }

.prefooter .container {
  position: static;
  max-width: none; }
  @media (min-width: 1024px) {
    .prefooter .container {
      padding: 0; } }

.prefooter .row {
  display: -ms-flexbox;
  display: flex; }
  @media (min-width: 1024px) {
    .prefooter .row {
      margin-left: 0;
      margin-right: 0; } }
  .prefooter .row .gifts {
    z-index: 0;
    padding-top: 30px;
    padding-bottom: 30px;
    text-align: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -ms-flex-pack: center;
        justify-content: center;
    background-color: #252525; }
    .prefooter .row .gifts::after {
      position: absolute;
      content: '';
      top: 0;
      bottom: 0;
      right: 0;
      left: -100%;
      z-index: -1;
      background: #252525; }
    .prefooter .row .gifts--icon {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      z-index: -1;
      fill: rgba(37, 37, 37, 0.15);
      transform: translate(-50%, -50%); }
    .prefooter .row .gifts--content {
      position: relative;
      display: -ms-flexbox;
      display: flex;
      z-index: 1;
      -ms-flex-pack: distribute;
          justify-content: space-around;
      -ms-flex-line-pack: center;
          align-content: center;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-direction: column;
          flex-direction: column;
      overflow: hidden;
      padding: 50px 60px;
      margin: 0 0;
      width: 35vw;
      height: 25vw;
      max-width: 500px;
      max-height: 610px;
      min-width: 300px;
      min-height: 400px; }
    .prefooter .row .gifts--title {
      -ms-flex-order: 2;
          order: 2;
      margin: 30px 0 15px;
      line-height: 1;
      width: 100%; }
    .prefooter .row .gifts--subtitle {
      -ms-flex-order: 1;
          order: 1;
      line-height: 1;
      letter-spacing: 0.1em; }
    .prefooter .row .gifts--link {
      -ms-flex-order: 3;
          order: 3; }
      .prefooter .row .gifts--link .links {
        letter-spacing: 0.1em; }
        .prefooter .row .gifts--link .links .content {
          min-width: 220px;
          text-align: left; }
  .prefooter .row #menu-location-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    padding-top: 60px;
    padding-bottom: 60px;
    padding-right: 90px; }
    .prefooter .row #menu-location-wrapper::before {
      position: absolute;
      content: '';
      width: calc(100% - 110px);
      height: 4px;
      display: block;
      will-change: width;
      background-image: url(../images/line.php?color=%23dbdbdb);
      background-repeat: no-repeat;
      background-position: 0 0;
      background-size: 100% 3px;
      left: 90px;
      bottom: -3px;
      display: inline-block; }
    .prefooter .row #menu-location-wrapper nav {
      font-size: 0;
      margin-left: 80px;
      width: 100%;
      max-width: calc(50% - 80px); }
      .prefooter .row #menu-location-wrapper nav li {
        margin: 20px 0;
        display: inline-block;
        width: 100%; }
        .prefooter .row #menu-location-wrapper nav li:first-child {
          margin-top: 0; }
        .prefooter .row #menu-location-wrapper nav li:last-child {
          margin-right: 0;
          margin-bottom: 0; }
        .prefooter .row #menu-location-wrapper nav li > a {
          letter-spacing: 0.1em;
          transition: color 0.3s ease; }
      .prefooter .row #menu-location-wrapper nav .social-media {
        display: none; }
    .prefooter .row #menu-location-wrapper .footer-location {
      width: 50%;
      text-align: center; }
      .prefooter .row #menu-location-wrapper .footer-location--dakkar {
        width: 110px;
        display: block;
        margin: 0 auto 20px;
        height: 116px;
        fill: currentColor; }
        .ie .prefooter .row #menu-location-wrapper .footer-location--dakkar {
          top: -6px;
          position: relative;
          overflow: visible; }
      .prefooter .row #menu-location-wrapper .footer-location--title, .prefooter .row #menu-location-wrapper .footer-location--reservation, .prefooter .row #menu-location-wrapper .footer-location--telephone {
        line-height: 1;
        letter-spacing: 0.1em; }
      .prefooter .row #menu-location-wrapper .footer-location--title {
        margin-bottom: 12px; }
      .prefooter .row #menu-location-wrapper .footer-location--address {
        letter-spacing: 0.025em;
        line-height: 1.72;
        margin: 0 auto 22px;
        width: 90%; }
        .prefooter .row #menu-location-wrapper .footer-location--address > a {
          display: inline-block;
          transition: color 0.3s ease; }
      .prefooter .row #menu-location-wrapper .footer-location--reservation {
        margin-bottom: 12px; }
      .prefooter .row #menu-location-wrapper .footer-location--wrapper {
        margin-bottom: 36px; }
      .prefooter .row #menu-location-wrapper .footer-location--telephone > a {
        transition: color 0.3s ease; }
    .prefooter .row #menu-location-wrapper .social-media ul li {
      font-size: 0;
      display: inline-block;
      margin: 0 10px;
      width: auto; }
      .prefooter .row #menu-location-wrapper .social-media ul li .icon {
        width: 18px;
        height: 18px;
        transition: fill 0.3s ease; }
      .prefooter .row #menu-location-wrapper .social-media ul li a {
        display: inline-block; }
        .has-hover .prefooter .row #menu-location-wrapper .social-media ul li a:hover svg {
          fill: rgba(37, 37, 37, 0.3); }
  .prefooter .row > div {
    float: none;
    margin-bottom: 0; }
  @media (max-width: 1439px) {
    .prefooter .row .gifts--content {
      padding-left: 30px;
      padding-right: 30px; }
    .prefooter .row #menu-location-wrapper::before {
      width: calc(100% - 30px);
      left: 30px; }
    .prefooter .row #menu-location-wrapper nav {
      margin-left: 30px;
      max-width: calc(50% - 30px); } }
  @media (max-width: 1023px) {
    .prefooter .row {
      display: block; }
      .prefooter .row .gifts::after {
        margin-right: -30px; }
      .prefooter .row .gifts--content {
        height: auto;
        width: 40vw;
        padding-left: 0;
        padding-right: 0;
        min-height: auto; }
      .prefooter .row .gifts--icon {
        width: 100%; }
      .prefooter .row #menu-location-wrapper {
        padding-right: initial; }
        .prefooter .row #menu-location-wrapper::before {
          width: calc(100% - 60px);
          margin: 0 30px;
          left: 0; }
        .prefooter .row #menu-location-wrapper nav {
          margin-left: 0; } }
  @media (max-width: 767px) {
    .prefooter .row #menu-location-wrapper {
      display: block; }
      .prefooter .row #menu-location-wrapper nav {
        max-width: none;
        width: 100%;
        display: block; }
        .prefooter .row #menu-location-wrapper nav:before, .prefooter .row #menu-location-wrapper nav:after {
          display: table;
          content: ''; }
        .prefooter .row #menu-location-wrapper nav:after {
          clear: both; }
        .prefooter .row #menu-location-wrapper nav li {
          float: left;
          width: 50%;
          margin: 0 0 20px; }
          .prefooter .row #menu-location-wrapper nav li:last-child {
            margin-bottom: 18px; }
        .prefooter .row #menu-location-wrapper nav .social-media {
          display: block;
          margin-left: -10px;
          float: left; }
      .prefooter .row #menu-location-wrapper .footer-location {
        width: auto;
        display: none;
        text-align: left;
        margin-left: -10px; }
      .prefooter .row #menu-location-wrapper::before {
        page-break-inside: avoid;
             break-inside: avoid; } }
  @media (max-width: 639px) {
    .prefooter .row > div {
      padding-left: 0;
      padding-right: 0; }
    .prefooter .row .gifts--content {
      min-width: 0;
      min-height: 0;
      width: 100%;
      max-width: 285px; }
    .prefooter .row .gifts::after {
      right: 0px;
      margin-right: -20px; }
    .prefooter .row #menu-location-wrapper {
      padding-top: 30px;
      padding-bottom: 30px; }
      .prefooter .row #menu-location-wrapper .social-media ul li {
        margin-left: 8px;
        margin-right: 8px; }
      .prefooter .row #menu-location-wrapper::before {
        margin: 0;
        width: 100%; } }

div.content > *:first-child {
  margin-top: 0; }

div.content > *:last-child {
  margin-bottom: 0; }

div.content p {
  letter-spacing: 0.025em;
  line-height: 1.8;
  margin: 1.75em 0; }
  div.content p.wp-caption-text {
    margin-top: .5em; }

div.content p strong, div.content li strong {
  letter-spacing: 0.1em; }

div.content a {
  transition: color 0.3s ease; }

div.content h2, div.content h3 {
  line-height: 2; }

div.content h2 {
  letter-spacing: 0.1em; }

div.content h3 {
  letter-spacing: 0.025em; }

div.content h4 {
  line-height: 2rem; }

div.content h4, div.content ul > li, div.content ol > li {
  letter-spacing: 0.025em; }

div.content ul, div.content ol {
  margin: 2.25em 0; }
  div.content ul li, div.content ol li {
    margin: 1em 0;
    line-height: 1.55;
    position: relative;
    padding-left: 30px; }

div.content ul li::before {
  position: absolute;
  left: 0;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(../images/circle.svg), url(../images/circle.svg), url(../images/circle.svg), url(../images/circle.svg), url(../images/circle.svg), url(../images/circle.svg);
  height: 20px;
  width: 10px;
  content: '';
  top: 2px;
  background-size: contain, 94.5%, 89%, 84.5%, 80%, 75.5%; }

div.content ol {
  counter-reset: liste; }
  div.content ol li::before {
    color: #252525;
    position: absolute;
    line-height: 20px;
    left: 0;
    counter-increment: liste;
    content: counters(liste, ".") ". "; }

div.content img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto; }
  div.content img.alignnone, div.content img.aligncenter {
    margin-left: -30px;
    width: calc(100% + 60px);
    max-width: calc(100% + 60px); }

@media (max-width: 767px) {
  div.content img.alignnone, div.content img.aligncenter {
    margin-left: 0px;
    width: 100%;
    max-width: 100%; } }

@media (max-width: 639px) {
  div.content ul li, div.content ol li {
    padding-left: 20px; }
  div.content ul li::before {
    top: -2px; }
  div.content ol li::before {
    line-height: 16px; } }

.navigation-pages {
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
  padding-top: 84px; }
  .navigation-pages .pagination {
    text-align: center; }
  .navigation-pages .prev .hidden,
  .navigation-pages .next .hidden {
    display: none; }
  .navigation-pages .prev,
  .navigation-pages .next {
    width: 48px;
    position: relative;
    height: 42px;
    vertical-align: bottom;
    transform: rotate(-90deg);
    transform-origin: center; }
    .navigation-pages .prev svg,
    .navigation-pages .next svg {
      height: 48px;
      margin-top: -2px;
      display: inline-block;
      fill: currentColor; }
      .navigation-pages .prev svg:not(:root),
      .navigation-pages .next svg:not(:root) {
        overflow: visible; }
  .navigation-pages .prev {
    transform: rotate(90deg); }
  .navigation-pages .prev.page-numbers {
    margin-right: 25px; }
  .navigation-pages .next.page-numbers {
    margin-left: 25px; }
  .navigation-pages .page-numbers {
    display: inline-block;
    line-height: 1;
    transition: color 0.3s ease;
    margin: 0 5px; }
    .navigation-pages .page-numbers.current {
      margin: 0 8px;
      position: relative; }
      .navigation-pages .page-numbers.current::after, .navigation-pages .page-numbers.current::before {
        content: '/';
        position: relative;
        line-height: 0.5;
        vertical-align: baseline;
        display: inline-block;
        margin-left: 12px;
        margin-bottom: 12px; }
      .navigation-pages .page-numbers.current::before {
        margin-left: 0px;
        margin-right: 12px; }
      .navigation-pages .page-numbers.current:first-child:before, .navigation-pages .page-numbers.current:last-child:after {
        content: none; }
  @media (max-width: 1023px) {
    .navigation-pages {
      padding-top: 40px; } }

section.hero {
  overflow: hidden;
  position: relative;
  min-height: 400px;
  height: 100vh; }
  .is-location section.hero.small-cover {
    min-height: 620px;
    height: 66vh; }
  .home.is-location section.hero {
    min-height: 620px; }
  section.hero .container {
    -ms-flex-direction: column;
        flex-direction: column;
    position: relative;
    z-index: 2;
    height: 100%;
    -ms-flex-pack: center;
        justify-content: center; }
    .home.is-location section.hero .container {
      -ms-flex-align: start;
          align-items: flex-start;
      padding: 0 30px; }
      .home.is-location section.hero .container a.links {
        min-width: 150px; }
  section.hero h1 {
    text-align: center;
    line-height: 1;
    margin: 0;
    width: 100%;
    margin-top: 30px;
    max-width: 800px; }
    section.hero:not(.small-cover) section.hero h1 {
      margin-bottom: 10vh; }
    .home.is-location section.hero h1 {
      text-align: left;
      max-width: 65%;
      margin-bottom: 60px; }
  section.hero .hero--desc {
    letter-spacing: 0.05em;
    margin: 60px 0;
    text-align: center; }
  section.hero.small-cover {
    height: 60vh; }
  .single.single.single.single section.hero {
    min-height: 300px;
    height: auto; }
  section.hero .hero--arrow {
    position: absolute;
    bottom: 10vh;
    z-index: 2;
    left: 50%;
    text-align: center;
    transform: translateX(-50%);
    pointer-events: none;
    padding-top: 20px;
    cursor: pointer;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden; }
    section.hero .hero--arrow svg {
      cursor: pointer;
      pointer-events: all;
      fill: #fff;
      width: 41px;
      transform: translateY(30px);
      height: 127px; }
      section.hero .hero--arrow svg:not(:root) {
        overflow: visible; }
  section.hero .hero--bg {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    pointer-events: none;
    overflow: hidden;
    background-color: #15181c; }
    .has-hover.home.is-location section.hero .hero--bg {
      top: 0;
      left: 0;
      right: 0;
      width: 100vw;
      height: 100vh; }
    section.hero .hero--bg.video img {
      display: none; }
    section.hero .hero--bg img,
    section.hero .hero--bg video,
    section.hero .hero--bg .hero--video {
      display: block;
      opacity: 0.5;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      min-width: 50%;
      min-height: 50%;
      height: auto; }
    section.hero .hero--bg .hero--video {
      width: 100%;
      height: 1160px;
      opacity: 0;
      top: 50%;
      transform: translateY(-50%);
      transition: opacity 0.5s ease;
      margin: 0; }
  body.is-mobile section.hero .hero--bg.video img {
    display: block; }
  body.is-mobile section.hero--video {
    display: none; }
  @media (max-width: 1023px) {
    section.hero {
      height: 80vh; }
      section.hero.small-cover {
        height: 40vh; }
      section.hero .hero--bg.video img {
        display: block; }
      section.hero--video {
        display: none; }
      section.hero a.links,
      section.hero .hero--links {
        display: none; } }
  @media (max-width: 767px) {
    section.hero {
      min-height: 300px; }
      section.hero .hero--arrow {
        display: none; }
      .is-location section.hero.small-cover {
        min-height: 300px; }
      .single.single.single.single section.hero {
        min-height: 150px; } }
  @media (max-width: 639px) {
    section.hero .hero--bg {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
      section.hero .hero--bg img,
      section.hero .hero--bg video,
      section.hero .hero--bg iframe.hero--video {
        height: auto;
        width: auto;
        left: 50%;
        top: 50%;
        margin: 0;
        min-height: 100%;
        transform: translate(-50%, -50%);
        max-width: none;
        }
    section.hero.small-cover .hero--bg img,
    section.hero.small-cover .hero--bg video,
    section.hero.small-cover .hero--bg iframe.hero--video {
      height: auto;
      max-width: none;
      min-height: 100%; }
    .home.is-location section.hero {
      min-height: 0;
      height: 100vh;
      max-height: 620px; }
      .home.is-location section.hero h1 {
        max-width: none;
        margin-bottom: 20px; }
    section.hero .container {
      padding: 0 30px; } }
  @media (max-width: 639) and (orientation: landscape) {
    section.hero .hero--bg {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
      section.hero .hero--bg img,
      section.hero .hero--bg video,
      section.hero .hero--bg iframe.hero--video {
        width: auto;
        left: 50%;
        top: 50%;
        margin: 0;
        height: auto;
        max-width: none;
        min-height: 100%;
        min-width: 100%;
        transform: translate(-50%, -50%); } }

.hydroritual {
  min-height: 888px;
  min-height: 1126px;
  height: 100vh;
  padding: 118px 0 165px;
  background-position: center left;
  background-color: #fff;
  background-image: url(../images/texture.jpg); }
  .hydroritual .container {
    padding: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-direction: column;
        flex-direction: column;
    position: relative;
    -ms-flex-pack: center;
        justify-content: center;
    height: 774px;
    max-width: 1440px; }
    .hydroritual .container::after {
      content: '';
      position: absolute;
      background-image: url(../images/ritual_circle.png);
      background-repeat: no-repeat;
      background-position: center top;
      opacity: 0.3;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0; }
  .hydroritual--content {
    max-width: 440px;
    margin-left: 20px;
    position: relative; }
  .hydroritual--wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    max-width: 1440px;
    min-height: 774px;
    height: 100%; }
  .hydroritual--title {
    max-width: 440px;
    line-height: 1;
    text-align: center;
    margin-left: 20px; }
  .hydroritual--ritual-mobile {
    display: none; }
  .hydroritual--desc {
    text-align: center;
    line-height: 1.75rem;
    letter-spacing: 0.025em; }
  .hydroritual--steps {
    position: absolute;
    top: 0;
    width: 100%;
    letter-spacing: 0.025em;
    line-height: 1.75rem; }
    .hydroritual--steps li {
      text-align: center;
      display: block;
      pointer-events: none;
      opacity: 0;
      position: absolute;
      width: 100%; }
      .hydroritual--steps li div.content {
        margin-top: 1em; }
  .hydroritual [data-for*="ritual-"] {
    position: absolute;
    letter-spacing: 0.1em;
    width: 192px;
    height: 210px;
    z-index: 10; }
    .hydroritual [data-for*="ritual-"] span.content {
      position: absolute;
      bottom: 48px;
      left: 4px;
      width: 100%;
      text-align: center; }
    .hydroritual [data-for*="ritual-"] span.bg {
      background-position: center top;
      background-repeat: no-repeat;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      position: absolute;
      z-index: 2;
      opacity: 0.3; }
    .hydroritual [data-for*="ritual-"]#hover-ritual-hot {
      top: 128px;
      right: calc(50% - 440px); }
      .hydroritual [data-for*="ritual-"]#hover-ritual-hot span.bg {
        background-image: url(../images/ritual_bg_hot.png); }
    .hydroritual [data-for*="ritual-"]#hover-ritual-cold {
      bottom: -110px;
      left: calc(50% - 93px); }
      .hydroritual [data-for*="ritual-"]#hover-ritual-cold span.bg {
        background-image: url(../images/ritual_bg_cold.png); }
    .hydroritual [data-for*="ritual-"]#hover-ritual-relax {
      top: 130px;
      left: calc(50% - 438px); }
      .hydroritual [data-for*="ritual-"]#hover-ritual-relax span.bg {
        background-image: url(../images/ritual_bg_relax.png); }
  @media (max-width: 1500px) {
    .hydroritual {
      min-height: 808px;
      padding: 88px 0 94px;
      height: auto; }
      .hydroritual .container {
        height: 589px; }
        .hydroritual .container::after {
          background-image: url(../images/ritual_circle_smaller.png); }
      .hydroritual [data-for*="ritual-"] {
        width: 142px;
        height: 144px; }
        .hydroritual [data-for*="ritual-"] span.content {
          bottom: 21px;
          left: 3px; }
        .hydroritual [data-for*="ritual-"]#hover-ritual-hot {
          top: 93px;
          right: calc(50% - 338px); }
          .hydroritual [data-for*="ritual-"]#hover-ritual-hot span.bg {
            background-image: url(../images/ritual_bg_hot_smaller.png); }
        .hydroritual [data-for*="ritual-"]#hover-ritual-cold {
          bottom: 130px;
          left: calc(50% - 68px); }
          .hydroritual [data-for*="ritual-"]#hover-ritual-cold span.bg {
            background-image: url(../images/ritual_bg_cold_smaller.png); }
        .hydroritual [data-for*="ritual-"]#hover-ritual-relax {
          top: 92px;
          left: calc(50% - 334px); }
          .hydroritual [data-for*="ritual-"]#hover-ritual-relax span.bg {
            background-image: url(../images/ritual_bg_relax_smaller.png); } }
  @media (max-width: 1024px) {
    .hydroritual {
      height: auto;
      min-height: initial;
      padding: 47px 0 47px; }
      .hydroritual--title, .hydroritual--content {
        margin-left: 0; }
      .hydroritual--desc {
        line-height: 2;
        margin-top: 20px; }
      .hydroritual .container::after {
        content: none; }
      .hydroritual--wrapper {
        display: none; }
      .hydroritual--steps {
        display: none; }
      .hydroritual [data-for*="ritual-"] {
        display: none;
        position: relative; }
      .hydroritual--ritual-mobile {
        display: block;
        margin: 20px auto 0; } }
  @media (max-width: 639px) {
    .hydroritual {
      height: auto;
      min-height: auto; }
      .hydroritual--title, .hydroritual--content {
        margin: 0 auto; }
      .hydroritual--title {
        padding: 0 50px; }
      .hydroritual--content {
        padding: 0 20px; }
      .hydroritual .container {
        height: auto;
        display: block; } }

.hydro-first .container {
  max-width: 100%;
  padding: 0; }

@media (min-width: 1919px) {
  .hydro-first .container {
    max-width: 1640px; }
  .hydro-first .halfblock--content .content {
    max-width: 665px; } }

.ritual-desc .container {
  padding: 0 !important;
  max-width: 100%; }

.ritual-desc--item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  margin-bottom: 40px; }
  .ritual-desc--item:last-child {
    margin-bottom: -80px; }
  .ritual-desc--item:nth-child(even) .ritual-desc--content {
    -ms-flex-order: 1;
        order: 1; }
  .ritual-desc--item:nth-child(even) .ritual-desc--img {
    -ms-flex-order: 2;
        order: 2;
    box-shadow: -20px 20px 30px 0px rgba(22, 22, 22, 0.125); }
  .ritual-desc--item.ritual-cold span.bg {
    background-image: url(../images/icon_cold.png); }
  .ritual-desc--item.ritual-relax span.bg {
    background-image: url(../images/icon_relax.png); }

.ritual-desc--content, .ritual-desc--img {
  position: relative; }

.ritual-desc--content {
  -ms-flex-order: 2;
      order: 2;
  width: 50%;
  padding: 120px 60px;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  text-align: center;
  -ms-flex-direction: column;
      flex-direction: column;
  position: relative; }
  .ritual-desc--content .content {
    max-width: 440px;
    margin: 0 auto;
    position: relative; }
  .ritual-desc--content span.bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url(../images/icon_hot.png);
    background-position: center;
    background-repeat: no-repeat; }

.ritual-desc--img {
  z-index: 2;
  -ms-flex-order: 1;
      order: 1;
  width: 50%;
  box-shadow: 20px 20px 30px 0px rgba(22, 22, 22, 0.125); }
  .ritual-desc--img img, .ritual-desc--img picture {
    display: block;
    width: 100%;
    height: auto; }

@media (min-width: 1919px) {
  .ritual-desc .container {
    max-width: 1640px; }
  .ritual-desc--content .content {
    max-width: 665px; } }

@media (max-width: 1023px) {
  .ritual-desc--item {
    display: block;
    margin-bottom: 0; }
  .ritual-desc--img {
    transform: none !important; }
  .ritual-desc--content, .ritual-desc--img {
    width: auto; }
  .ritual-desc--content {
    min-height: 360px;
    padding: 40px 20px; }
    .ritual-desc--content span.bg {
      background-size: contain;
      opacity: 1 !important; }
  .ritual-desc--img {
    box-shadow: 0px 20px 30px 0px rgba(22, 22, 22, 0.125); } }

@media (max-width: 639px) {
  .ritual-desc--content {
    min-height: 260px; } }

.promobox {
  overflow: hidden;
  position: relative;
  min-height: 70vh;
  height: 1px;
  display: -ms-flexbox;
  display: flex;
  padding: 90px 0;
  background-color: #15181c; }
  .ritual-desc + .promobox {
    margin-top: 80px; }
  .home .promobox {
    min-height: 100vh; }
  .promobox--container {
    -ms-flex-direction: column;
        flex-direction: column;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    z-index: 2;
    text-align: center;
    -ms-flex-pack: center;
        justify-content: center;
    max-width: 800px; }
  .promobox--bg {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    pointer-events: none;
    overflow: hidden;
    background-color: #252525; }
    .promobox--bg img {
      opacity: 0.5;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      min-width: 50%;
      min-height: 50%;
      height: auto; }
  .promobox--title {
    line-height: 1; }
  .promobox--link {
    margin-top: 45px; }
  .promobox--subhead {
    -ms-flex-order: -1;
        order: -1;
    letter-spacing: 0.1em;
    margin-bottom: 82px; }
  .promobox--description {
    opacity: 0.4;
    letter-spacing: 0.05em;
    line-height: 1.75;
    margin-top: 20px; }
    .promobox--description a {
      color: #252525;
      text-shadow: 0 1px 10px #fff;
      transition: color 0.3s ease; }
    .promobox--description p {
      margin-bottom: 0; }
  .promobox--arrow {
    z-index: 2;
    text-align: center;
    padding-top: 20px;
    cursor: pointer;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    width: auto;
    margin: 62px auto 0;
    pointer-events: none; }
    .promobox--arrow svg {
      cursor: pointer;
      pointer-events: all;
      fill: #fff;
      width: 41px;
      transform: translateY(30px);
      height: 127px; }
      .promobox--arrow svg:not(:root) {
        overflow: visible; }
  @media (max-width: 1023px) {
    .home .promobox {
      max-height: 80vh; }
    .promobox--subhead {
      margin-bottom: 55px; }
    .promobox--arrow {
      margin-top: 30px; }
    .promobox--link {
      margin-top: 20px; } }
  @media (max-width: 767px) {
    .promobox {
      min-height: 364px;
      padding: 30px 0; }
      .promobox .underline--stroke {
        width: calc(100% + 5px); }
      .promobox--arrow {
        display: none; }
      .promobox--bg {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
        .promobox--bg img {
          height: 100%;
          width: auto;
          left: 50%;
          top: 50%;
          margin: 0;
          transform: translate(-50%, -50%);
          max-width: none;
          } }
  @media (max-width: 639px) {
    .promobox--container {
      padding: 0 30px; } }

.links {
  position: relative;
  letter-spacing: 0.05em;
  display: inline-block;
  line-height: 0; }
  .links .content {
    line-height: 50px;
    display: inline-block;
    position: relative;
    padding-right: 40px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: left;
    max-width: 280px;
    min-width: 190px; }
    .links .content.content-right {
      line-height: 50px;
      display: inline-block;
      position: relative;
      padding-right: 0px;
      padding-left: 40px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      text-align: left;
      max-width: 280px;
      min-width: 190px; }
  .links--right-arrow {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 10px;
    pointer-events: auto;
    fill: currentColor; }
  .links--underline {
    position: absolute;
    bottom: -5px;
    left: 0;
    width: calc(100% + 5px);
    height: 4px;
    z-index: 10;
    display: block; }
    .links--underline line {
      stroke: #fff; }

      .links--overline {
        position: absolute;
        top: -5px;
        left: 0;
        width: calc(100% + 5px);
        height: 4px;
        z-index: 10;
        display: block;
      }

      .links--overline line {
        stroke: #000;
      }

      .links--right-arrow.links--left-arrow {
        position: absolute;
        left: 0;
        right: auto;
        top: 50%;
        transform: translateY(-50%);
        width: 20px;
        height: 10px;
        pointer-events: auto;
        fill: currentColor; }

  @media (max-width: 639px) {
    .links .content {
      line-height: 30px; } }

.halfblock--item {
  margin: 0 auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center; }
  .halfblock--item:last-child {
    margin-bottom: 0px; }
  .halfblock--item.left .halfblock--content {
    -ms-flex-order: 2;
        order: 2; }
  .halfblock--item.left .halfblock--img {
    -ms-flex-order: 1;
        order: 1; }

.halfblock--content, .halfblock--img {
  position: relative; }

.halfblock--link {
  margin-top: 30px; }
  .halfblock--link .links--right-arrow use {
    fill: currentColor; }
  .halfblock--link .links--underline line {
    stroke: currentColor; }

.halfblock--content {
  width: 50%;
  padding: 120px 60px 120px 30px;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex-align: start;
      align-items: flex-start;
  text-align: left;
  position: relative; }
  .halfblock--content .content {
    width: 100%;
    max-width: 630px;
    padding-right: 100px; }
    .halfblock--content .content > h2 {
      letter-spacing: normal;
      max-width: 300px;
      line-height: 1;
      margin-bottom: 0.45em; }
    .halfblock--content .content > h3 {
      letter-spacing: 0.025em; }

.halfblock--img {
  z-index: 2;
  width: 50%;
  max-width: 820px;
  max-height: 779px;
  box-shadow: 20px 20px 30px 0px rgba(22, 22, 22, 0.125);
  -ms-flex-item-align: start;
      align-self: flex-start; }
  .halfblock--img img, .halfblock--img picture {
    display: block;
    width: 100%;
    height: auto; }

@media (min-width: 1919px) {
  .halfblock--item {
    max-width: 1640px; }
  .halfblock--content .content {
    max-width: 665px; } }

@media (max-width: 1023px) {
  .halfblock--item {
    display: block; }
  .halfblock--content, .halfblock--img {
    width: auto;
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .halfblock--content {
    min-height: 0px;
    padding: 40px 20px; }
    .halfblock--content .content {
      padding-right: 0;
      margin: 0 auto; }
  .halfblock--link .content {
    padding-right: 50px; }
  .halfblock--img {
    transform: none !important;
    box-shadow: 0px 20px 30px 0px rgba(22, 22, 22, 0.125);
    margin-left: auto;
    margin-right: auto; } }

@media (max-width: 639px) {
  .halfblock--content {
    display: block; } }

.gallery {
  overflow: hidden;
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  max-height: 930px;
  position: relative; }
  .gallery:before {
    content: '';
    display: block;
    padding-top: 50.13889%; }
  .gallery .wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; }
  .gallery::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50%;
    z-index: 1;
    background: linear-gradient(rgba(37, 37, 37, 0) 0, rgba(37, 37, 37, 0.3) 100%); }
  .gallery--controls {
    position: absolute;
    width: 100%;
    bottom: 50px;
    text-align: center;
    z-index: 2; }
  .gallery--prev, .gallery--next {
    cursor: pointer;
    width: 115px;
    height: 45px;
    transform-origin: center;
    transform: rotate(90deg); }
    .gallery--prev .hidden, .gallery--next .hidden {
      display: none; }
    .gallery--prev svg, .gallery--next svg {
      fill: currentColor;
      width: 36px;
      height: 112px; }
      .gallery--prev svg:not(:root), .gallery--next svg:not(:root) {
        overflow: visible; }
      .gallery--prev svg use, .gallery--next svg use {
        position: relative; }
      .gallery--prev svg .arrow, .gallery--next svg .arrow {
        z-index: 2; }
      .gallery--prev svg .circle, .gallery--next svg .circle {
        z-index: 1; }
  .gallery--prev {
    margin-right: 70px; }
  .gallery--next {
    margin-left: 70px;
    transform: rotate(90deg) scale(1, -1); }
  .gallery--pager {
    white-space: nowrap; }
  .gallery--prev, .gallery--next, .gallery--pager {
    vertical-align: middle;
    display: inline-block;
    line-height: 1; }
  .gallery--item {
    z-index: 1;
    position: absolute;
    pointer-events: none;
    overflow: hidden;
    background-color: #fff;
    wiil-change: transform;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
    .gallery--item:not(:first-child) {
      z-index: 0; }
    .gallery--item img {
      position: absolute;
      -webkit-backface-visibility: hidden;
              backface-visibility: hidden;
      perspective: 9000px;
      transform: translate3d(0, 0, 0);
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      min-width: 50%;
      min-height: 50%;
      width: 100%;
      height: auto; }
      .gallery--item img.attachment-loading {
        filter: blur(20px); }
  .blogcontent + .gallery {
    margin: -34px auto -50px; }
  @media (max-width: 1023px) {
    .blogcontent + .gallery {
      margin-top: -20px; }
    .gallery--controls {
      bottom: 30px; } }
  @media (max-width: 767px) {
    body.is-mobile .gallery::before {
      padding-top: 60vh; }
    body.is-mobile .gallery--item img {
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: auto;
      height: 100%;
      right: auto;
      bottom: auto; }
    .gallery--prev, .gallery--next {
      width: 32px;
      height: 38px; }
      .gallery--prev svg, .gallery--next svg {
        height: 100px;
        width: 32px; }
    .gallery--prev {
      margin-right: 20px; }
    .gallery--next {
      margin-left: 20px; }
    .gallery--controls {
      bottom: 16px; } }

.textsingle {
  padding: 80px 0; }
  .textsingle--content {
    max-width: 610px;
    margin: 0 auto;
    width: 100%; }
  .textsingle div.content {
    width: 100%; }
    .textsingle div.content > h2 {
      text-align: center;
      letter-spacing: normal;
      line-height: 1;
      margin-bottom: 0.45em; }
  @media (max-width: 639px) {
    .textsingle {
      padding: 30px 0; } }

.textmulti {
  padding: 80px 0;
  min-height: 40vh; }
  .textmulti--column {
    margin: 0 30px;
    width: calc(33.33333% - 60px); }
    .textmulti--column > *:last-child {
      margin-bottom: 0; }
  .textmulti--content {
    min-height: 30vh;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center; }
  .textmulti--wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: center;
        justify-content: center; }
  .textmulti--img {
    margin: 20px auto 20px; }
    div.content .textmulti--img img {
      margin: 0 auto;
      width: auto; }
  .textmulti--link .links--right-arrow use {
    fill: currentColor; }
  .textmulti--link .links--underline line {
    stroke: currentColor; }
  .textmulti div.content {
    width: 100%; }
    .textmulti div.content > h2 {
      text-align: center;
      letter-spacing: normal;
      line-height: 1;
      margin-bottom: 0.45em; }
    .textmulti div.content > h3 {
      text-align: center; }
  @media (max-width: 1023px) {
    .textmulti--wrapper {
      display: block; }
    .textmulti--column {
      width: 80%;
      margin: 0 auto; } }
  @media (max-width: 767px) {
    .textmulti--column {
      width: auto; }
      .textmulti--column:first-child .textmulti--img {
        margin-top: 0; } }
  @media (max-width: 639px) {
    .textmulti {
      padding: 30px 0; } }

.textdark {
  padding: 80px 0;
  background-position: -200px -200px;
  background-image: url(../images/texture.jpg); }
  .textdark--content {
    min-height: 30vh;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center; }
  .textdark--column {
    margin: 0 30px;
    width: calc(25% - 60px);
    text-align: center; }
    .textdark--column > *:last-child {
      margin-bottom: 0; }
  .textdark--wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: center;
        justify-content: center;
    margin-top: 30px; }
  .textdark--img {
    margin: 20px auto 20px; }
    div.content .textdark--img img {
      margin: 0 auto;
      width: auto; }
  .textdark div.content {
    width: 100%; }
    .textdark div.content > h2 {
      text-align: center;
      letter-spacing: normal;
      line-height: 1;
      margin-bottom: 0.45em; }
  @media (max-width: 1023px) {
    .textdark--column {
      width: calc(50% - 60px);
      margin: 0 20px 20px; } }
  @media (max-width: 767px) {
    .textdark--column {
      width: auto;
      margin: 0 0 20px; }
      .textdark--column:first-child .textdark--img {
        margin-top: 0; }
      .textdark--column:last-child {
        margin-bottom: 0; } }
  @media (max-width: 639px) {
    .textdark {
      padding: 30px 0; } }

.quote {
  overflow: hidden;
  position: relative;
  min-height: 70vh;
  height: 1px;
  display: -ms-flexbox;
  display: flex;
  padding: 79.9998px 0;
  background-color: #15181c; }
  .quote--container {
    -ms-flex-direction: column;
        flex-direction: column;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    z-index: 2;
    text-align: center;
    -ms-flex-pack: center;
        justify-content: center;
    max-width: 1024px; }
  .quote--bg {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    pointer-events: none;
    overflow: hidden;
    background-color: #15181c; }
    .quote--bg img {
      opacity: 0.5;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      min-width: 50%;
      min-height: 50%;
      height: auto; }
  .quote--title {
    line-height: 1; }
  @media (max-width: 767px) {
    .quote {
      min-height: 364px;
      padding: 30px 0; }
      .quote .underline--stroke {
        width: calc(100% + 5px); } }
  @media (max-width: 639px) {
    .quote--container {
      padding: 0 30px; }
    .quote--bg {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
      .quote--bg img {
        height: 100%;
        width: auto;
        left: 50%;
        top: 50%;
        margin: 0;
        transform: translate(-50%, -50%); } }

.bgimage {
  position: relative;
  min-height: 70vh; }
  .bgimage.right .container {
    -ms-flex-pack: end;
        justify-content: flex-end; }
    .bgimage.right .container .bgimage--content {
      padding: 120px 60px 120px 60px;
      box-shadow: -20px 20px 30px 0px rgba(22, 22, 22, 0.125); }
  .bgimage .container {
    padding: 0 !important;
    max-width: 100%;
    display: -ms-flexbox;
    display: flex;
    background-color: #15181c;
    padding-bottom: 40px; }
  .bgimage--img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden; }
  .bgimage--bg {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    pointer-events: none;
    overflow: hidden;
    background-color: #15181c; }
    .bgimage--bg img {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      min-width: 50%;
      min-height: 50%;
      height: auto;

    }
  .bgimage--content {
    width: 40%;
    padding: 120px 60px 120px 60px;
    z-index: 1;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
        justify-content: flex-end;
    -ms-flex-align: center;
        align-items: center;
    text-align: left;
    position: relative;
    box-shadow: 20px 20px 30px 0px rgba(22, 22, 22, 0.125);
  }
    .bgimage--content > .content {
      width: 100%;
      max-width: 630px;
      padding-right: 100px; }
      .bgimage--content > .content > h2 {
        letter-spacing: normal;
        max-width: 300px;
        line-height: 1;
        margin-bottom: 0.45em; }
      .bgimage--content > .content > h3 {
        letter-spacing: 0.025em; }
  .bgimage--link {
    margin-top: 30px; }
    .bgimage--link .links--right-arrow use {
      fill: currentColor; }
    .bgimage--link .links--underline line {
      stroke: currentColor; }
  @media (min-width: 1919px) {
    .bgimage .container {
      max-width: 1640px; }
    .bgimage--content > .content {
      max-width: 665px; } }
  @media (max-width: 1023px) {
    .bgimage {
      min-height: auto;
      height: auto; }
      .bgimage .container {
        display: block;
        margin-bottom: 0;
        padding-bottom: 0;
        min-height: initial;
        max-height: none;
        height: auto; }
      .bgimage.right .container .bgimage--content {
        padding: 40px 20px; }
        .bgimage.right .container .bgimage--content > .content {
          padding-left: 0; }
      .bgimage--content {
        min-height: 360px;
        width: auto;
        display: block;
        min-height: initial;
        padding: 40px 20px;
        transform: none !important; }
        .bgimage--content > .content {
          padding-right: 0;
          margin: 0 auto; }
      .bgimage--link .content {
        padding-right: 50px; }
      .bgimage--img {
        position: relative;
        top: auto;
        bottom: auto;
        left: auto;
        right: auto;
        overflow: visible; }
      .bgimage--bg {
        position: relative;
        box-shadow: 0px 20px 30px 0px rgba(22, 22, 22, 0.125);
        overflow: visible;
        top: 0;
        left: 0;
        width: auto;
        height: auto; }
        .bgimage--bg img {
          min-width: 0;
          min-height: 0;
          margin: 0;
          display: block;
          position: relative;
          right: auto;
          bottom: auto;
          width: 100%;
          height: auto;
          transform: none !important; } }

.reservation {
  padding: 80px 0;
  background-position: 200px 200px;
  background-image: url(../images/texture.jpg); }
  .reservation .row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center; }
  .reservation--icon {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 90.5%;
    height: auto;
    z-index: -1;
    opacity: .05;
    fill: #fff;
    transform: translate(-50%, -50%); }
  .reservation--border {
    width: 100%;
    height: 4px;
    stroke: rgba(255, 255, 255, 0.3);
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: top left; }
    .reservation--border.border-right {
      right: 4px;
      top: auto;
      left: auto;
      bottom: 0;
      transform: rotate(90deg);
      transform-origin: bottom right; }
    .reservation--border.border-bottom {
      top: auto;
      bottom: 4px;
      transform: rotate(180deg);
      transform-origin: bottom center; }
    .reservation--border.border-left {
      transform: rotate(270deg);
      top: auto;
      bottom: 0;
      left: 4px;
      transform-origin: bottom left; }
  .reservation--content {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    z-index: 1;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -ms-flex-line-pack: center;
        align-content: center;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-direction: column;
        flex-direction: column;
    overflow: hidden;
    padding: 80px 90px;
    width: calc(55vw - 60px);
    height: calc(55vw - 60px);
    max-width: 610px;
    max-height: 610px;
    min-width: 300px;
    min-height: 300px; }
  .reservation--title {
    -ms-flex-order: 2;
        order: 2;
    margin: 30px 0 15px;
    line-height: 1; }
    .reservation--title span {
      display: block;
      margin: 0 auto;
      text-align: center; }
  .reservation--subtitle {
    -ms-flex-order: 1;
        order: 1;
    line-height: 1;
    letter-spacing: 0.1em; }
  .reservation--link {
    -ms-flex-order: 3;
        order: 3; }
    .reservation--link .links .content {
      min-width: 160px; }
  @media (max-width: 1023px) {
    .reservation--icon {
      opacity: .05 !important; }
    .reservation--border line {
      stroke-dashoffset: 0 !important;
      stroke-dasharray: 0 !important; }
    .reservation--content {
      padding: 30px 30px; }
    .reservation--content > *:not(.reservation--icon) {
      opacity: 1 !important; } }
  @media (max-width: 767px) {
    .reservation--title {
      margin: 15px 0 0; } }
  @media (max-width: 639px) {
    .reservation {
      padding: 30px 0; } }

.package--item .container {
  min-height: 77.5vh;
  height: 100%;
  max-height: 4vh; }

.package--item .bgimage--content {
  text-align: center;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  padding-top: 60px;
  padding-bottom: 60px;
  overflow: hidden;
  background-color: #252525;
 }
  .package--item .bgimage--content > .content {
    padding-right: 0;
    max-width: 480px;
    -ms-flex-order: 1;
        order: 1; }
    .package--item .bgimage--content > .content > h2 {
      margin-left: auto;
      margin-right: auto;
      max-width: none; }
    .package--item .bgimage--content > .content p {
      letter-spacing: 0.05em;
      color: #cccccc; }

.package--item:nth-of-type(even) .container {
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }

.package--item .bgimage--link {
  margin-top: 14px;
  -ms-flex-order: 2;
      order: 2; }

.package--subhead {
  -ms-flex-order: 0;
      order: 0;
  margin-bottom: 20px;
  letter-spacing: 0.1em; }

.package--letter {
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none; }
  .package--letter:not(:root) {
    overflow: visible; }
  .ie .package--letter {
    top: auto; }
  .package--letter text {
    fill: rgba(37, 37, 37, 0.1);
    font-size: 95px;
    text-anchor: middle;
    dominant-baseline: central; }

@media (max-width: 1023px) {
  .package--item {
    min-height: 360px; }
    .package--item .container {
      min-height: initial;
      height: auto;
      max-height: none; }
  .package--letter {
    top: 0; }
    .ie .package--letter {
      top: 50%;
      transform: translateY(-50%); } }

.bathsmassages {
  padding: 80px 0;
  background-position: -400px -400px;
  background-image: url(../images/texture.jpg); }
  .bathsmassages .container {
    max-width: 1440px; }
  .bathsmassages .row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center; }
  .bathsmassages--icon {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 70%;
    height: auto;
    z-index: -1;
    opacity: .05;
    fill: #fff;
    transform: translate(-50%, -50%); }
    .bathsmassages--icon:nth-of-type(2) {
      height: 75%; }
  .bathsmassages--border {
    width: 100%;
    height: 4px;
    stroke: rgba(255, 255, 255, 0.3);
    position: absolute;
    top: 0;
    left: 0px;
    transform-origin: top left; }
    .bathsmassages--border.border-right {
      right: 4px;
      top: auto;
      left: auto;
      bottom: 0;
      transform: rotate(90deg);
      transform-origin: bottom right; }
    .bathsmassages--border.border-bottom {
      top: auto;
      bottom: 4px;
      transform: scale(-1, -1);
      transform-origin: bottom center; }
    .bathsmassages--border.border-left {
      transform: rotate(270deg);
      top: auto;
      bottom: 0;
      left: 4px;
      transform-origin: bottom left; }
  .bathsmassages--item {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    z-index: 1;
    overflow: hidden;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -ms-flex-line-pack: center;
        align-content: center;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-direction: column;
        flex-direction: column;
    margin: 0 30px;
    padding: 80px 90px;
    width: calc(42vw - 60px);
    height: calc(42vw - 60px);
    max-width: 610px;
    max-height: 610px;
    min-width: 300px;
    min-height: 300px; }
    .bathsmassages--item:nth-of-type(2) .bathsmassages--icon {
      height: 75%; }
  .bathsmassages--main-title {
    text-align: center;
    max-width: 420px;
    line-height: 1;
    margin: 0 auto 80px; }
  .bathsmassages--title {
    -ms-flex-order: 2;
        order: 2;
    max-width: 400px;
    width: 100%;
    margin: 30px 0 15px;
    line-height: 1;
    text-align: center; }
    .bathsmassages--title span {
      display: block;
      margin: 0 auto;
      text-align: center; }
  .bathsmassages--subtitle {
    -ms-flex-order: 1;
        order: 1;
    line-height: 1;
    letter-spacing: 0.1em; }
  .bathsmassages--link {
    -ms-flex-order: 3;
        order: 3; }
    .bathsmassages--link .links .content {
      min-width: 160px; }
  @media (max-width: 1024px) {
    .bathsmassages--item {
      padding: 70px; } }
  @media (max-width: 1023px) {
    .bathsmassages .row {
      display: block; }
    .bathsmassages--icon {
      opacity: .05 !important; }
    .bathsmassages--item {
      margin: auto;
      width: 80vw;
      height: 80vw;
      max-width: 50vw;
      max-height: 50vw; }
      .bathsmassages--item:first-child {
        margin-bottom: 30px; }
      .bathsmassages--item > *:not(.bathsmassages--icon) {
        opacity: 1 !important; }
    .bathsmassages--border line {
      stroke-dashoffset: 0 !important;
      stroke-dasharray: 0 !important; } }
  @media (max-width: 767px) {
    .bathsmassages--item {
      max-height: none;
      max-width: none;
      padding: 40px 40px; } }
  @media (max-width: 639px) {
    .bathsmassages {
      padding: 30px 0; }
      .bathsmassages--item {
        min-width: 270px;
        min-height: 270px; }
      .bathsmassages--main-title {
        margin-bottom: 30px; } }

.bathsmassages-elem {
  padding: 100px 0;
  position: relative; }
  .bathsmassages-elem--intro {
    max-width: 510px;
    margin: 15px auto;
    width: 100%;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    min-height: 390px;
    -ms-flex-pack: center;
        justify-content: center; }
    .bathsmassages-elem--intro div.content {
      text-align: center; }
      .bathsmassages-elem--intro div.content > h2 {
        letter-spacing: normal;
        line-height: 1;
        margin-bottom: 0.45em; }
      .bathsmassages-elem--intro div.content > h3 {
        letter-spacing: 0.025em; }
  .bathsmassages-elem--prices {
    -ms-flex-preferred-size: 33.33333%;
        flex-basis: 33.33333%;
    text-align: center; }
    .bathsmassages-elem--prices span {
      display: block;
      line-height: 1; }
    .bathsmassages-elem--prices .price {
      margin-top: 20px; }
    .bathsmassages-elem--prices .text {
      margin-top: 10px;
      letter-spacing: 0.1em; }
  .bathsmassages-elem--icon {
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    height: 100%;
    z-index: -1;
    fill: rgba(152, 152, 152, 0.15);
    transform: translate(-50%, -50%); }
  @media (max-width: 767px) {
    .bathsmassages-elem--intro {
      min-height: 0; }
    .bathsmassages-elem--prices {
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%; } }
  @media (max-width: 639px) {
    .bathsmassages-elem {
      padding: 20px 0; }
      .bathsmassages-elem--prices .price {
        margin-top: 12px; }
      .bathsmassages-elem--icon {
        max-width: 280px; } }

.massages {
  margin-top: -110px;
  padding: 40px 0 80px; }
  .massages .container {
    padding: 0; }
  .massages .row {
    margin-left: 0;
    margin-right: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .massages--prices {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 20px; }
  .massages--item {
    margin: 0 30px 22px;
    margin-top: 22px;
    position: relative;
    padding: 60px 40px;
    max-width: 600px;
    max-height: 600px;
    min-width: 450px;
    min-height: 450px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    width: calc(50% - 60px);
    height: auto; }
    .massages--item.reservations {
      background-color: #f4f4f4; }
    .massages--item:nth-child(2n), .massages--item:last-child:not(:first-child) {
      top: 35px; }
    .massages--item div.content {
      text-align: center; }
      .massages--item div.content > h2 {
        letter-spacing: normal;
        line-height: 1;
        margin-bottom: 0.45em; }
      .massages--item div.content > h3 {
        letter-spacing: 0.1em; }
      .massages--item div.content strong {
        text-transform: none; }
  .massages--border {
    width: 100%;
    height: 4px;
    stroke: rgba(152, 152, 152, 0.5);
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: top left;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden; }
    .massages--border.border-right {
      right: -2px;
      top: auto;
      left: auto;
      bottom: 0;
      transform-origin: bottom right;
      width: 3px;
      height: 100%; }
    .massages--border.border-bottom {
      top: auto;
      bottom: 0;
      transform: scale(-1, -1);
      transform-origin: bottom center; }
    .massages--border.border-left {
      transform: rotate(180deg);
      top: 100%;
      left: 3px;
      width: 3px;
      height: 100%; }
  @media (max-width: 1194px) {
    .massages--item {
      margin-top: 20px;
      margin-bottom: 20px; }
      .massages--item:nth-child(2n), .massages--item:last-child:not(:first-child) {
        top: 0; } }
  @media (max-width: 1023px) {
    .massages--item {
      opacity: 1 !important;
      transform: none !important;
      margin: 20px auto;
      width: 80vw;
      -ms-flex-align: center;
          align-items: center;
      padding: 40px; }
      .massages--item:first-child {
        margin-top: 0; }
      .massages--item:last-child {
        margin-bottom: 0; }
    .massages--border line {
      stroke-dashoffset: 0 !important;
      stroke-dasharray: 0 !important; } }
  @media (max-width: 767px) {
    .massages--item {
      min-width: 400px;
      min-height: 400px;
      padding: 30px; }
    .massages--prices {
      margin-top: 0; } }
  @media (max-width: 639px) {
    .massages {
      margin-top: -20px;
      padding: 15px 0 30px; }
      .massages--item {
        height: auto;
        width: auto;
        min-width: auto;
        min-height: auto;
        max-width: 400px;
        max-height: none; }
        .massages--item:first-child {
          margin-top: 20px; }
        .massages--item:last-child {
          padding-bottom: 0; }
          .massages--item:last-child .massages--border.border-bottom {
            display: none; }
      .massages--item:not(.reservations) {
        padding: 0 0 30px;
        margin-left: 20px;
        margin-right: 20px; }
      .massages--item.reservations {
        padding-bottom: 30px; }
      .massages--border {
        display: none;
        transform: none;
        transform-origin: 0 0; }
        .massages--border.border-bottom {
          display: block; } }

.partners {
  padding: 80px 0 0px; }
  .partners .container {
    max-width: 1240px;
    width: 100%;
    padding: 0; }
  .partners .row {
    margin-left: 0;
    margin-right: 0; }
  .partners--deals {
    margin: 0 auto; }
    .partners--deals-header {
      position: relative;
      min-height: 420px;
      height: 1px;
      width: 100%;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center; }
    .partners--deals-title {
      line-height: 1;
      text-align: center;
      max-width: 400px; }
    .partners--deals-bg {
      position: absolute;
      pointer-events: none;
      overflow: hidden;
      background-color: #15181c;
      z-index: -1;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
      .partners--deals-bg img {
        opacity: 0.5;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        min-width: 50%;
        min-height: 50%; }
  .partners--wrapper {
    width: 100%;
    margin: 80px auto 60px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .partners--item {
    margin: 0 30px;
    position: relative;
    margin-bottom: 40px;
    padding: 60px 40px;
    width: calc(42vw - 60px);
    height: calc(42vw - 60px);
    max-width: 425px;
    max-height: 425px;
    min-width: 350px;
    min-height: 350px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    padding: 40px 20px;
    width: calc(33.33333% - 60px);
    height: auto; }
    .partners--item div.content {
      text-align: center; }
      .partners--item div.content > h2 {
        letter-spacing: 0.025em;
        line-height: 1.5; }
      .partners--item div.content p {
        margin: 1.25em 0; }
      .partners--item div.content strong {
        text-transform: none; }
      .partners--item div.content img.logo {
        width: auto;
        margin: 0 auto 1em; }
  .partners--link {
    margin-top: 15px; }
    .partners--link .links--right-arrow use {
      fill: currentColor; }
    .partners--link .links--underline line {
      stroke: currentColor; }
  .partners--border {
    width: 100%;
    height: 4px;
    stroke: rgba(152, 152, 152, 0.5);
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: top left;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden; }
    .partners--border.border-right {
      right: -2px;
      top: auto;
      left: auto;
      bottom: 0;
      transform-origin: bottom right;
      width: 3px;
      height: 100%; }
    .partners--border.border-bottom {
      top: auto;
      bottom: 0;
      transform: scale(-1, -1);
      transform-origin: bottom center; }
    .partners--border.border-left {
      transform: rotate(180deg);
      top: 100%;
      left: 3px;
      width: 3px;
      height: 100%; }
  @media (max-width: 1239px) {
    .partners--item {
      margin: 20px; }
    .partners--deals-header {
      min-height: 180px;
      height: 25vh; } }
  @media (max-width: 1194px) {
    .partners--item {
      width: calc(50% - 60px); } }
  @media (max-width: 1023px) {
    .partners--item {
      opacity: 1 !important;
      transform: none !important;
      margin: 20px auto;
      width: 80vw;
      max-width: 50vw;
      max-height: 50vw;
      -ms-flex-align: center;
          align-items: center; }
      .partners--item:first-child {
        margin-top: 0; }
      .partners--item:last-child {
        margin-bottom: 0; }
    .partners--border line {
      stroke-dashoffset: 0 !important;
      stroke-dasharray: 0 !important; }
    .partners--wrapper {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-direction: column;
          flex-direction: column;
      display: block; } }
  @media (max-width: 767px) {
    .partners--item {
      min-width: 400px;
      min-height: 400px; } }
  @media (max-width: 639px) {
    .partners {
      padding: 30px 0 0px; }
      .partners--wrapper {
        margin: 30px auto 40px; }
      .partners--deals-title {
        max-width: 240px; }
      .partners--item {
        padding: 0 0 30px!important;
        min-width: auto;
        min-height: auto;
        margin-left: 20px;
        margin-right: 20px;
        height: auto;
        width: auto;
        max-width: none;
        max-height: none; }
        .partners--item:last-child {
          padding-bottom: 0; }
      .partners .partners--border {
        display: none;
        transform: none;
        transform-origin: 0 0; }
        .partners .partners--border.border-bottom {
          display: block; } }

.faq {
  padding: 80px 0; }
  .faq--block {
    width: 83.33333%;
    margin: 0 auto;
    margin-top: 90px; }
    .faq--block:first-child {
      margin-top: 0; }
  .faq--item {
    padding: 40px 0 40px 30px;
    position: relative; }
    .faq--item::before {
      content: '';
      height: 5px;
      width: 100%;
      left: 0;
      bottom: -3px;
      position: absolute;
      background-image: url(../images/line.php?color=%23d3d3d3);
      background-repeat: no-repeat;
      background-position: 0 0;
      background-size: 100% 3px; }
    .faq--item-question {
      display: inline-block;
      margin-right: 140px;
      letter-spacing: 0.025em; }
    .faq--item-answer {
      margin-right: 140px; }
      .faq--item-answer div.content > *:first-child {
        margin-top: 1.75em; }
    .faq--item-trigger {
      position: absolute;
      top: 30px;
      right: 40px;
      width: 40px;
      height: 40px;
      transition: color 0.3s ease;
      color: #d3d3d3; }
      .faq--item-trigger svg {
        fill: currentColor;
        position: absolute;
        top: 0;
        left: 0;
        width: 40px;
        height: 40px; }
        .faq--item-trigger svg use {
          position: relative;
          z-index: 1; }
      .has-hover .faq--item-trigger:hover,
      .faq--questions:not(.hidden-init) .faq--item:not(.closed) .faq--item-trigger,
      .hidden-init .faq--item.open .faq--item-trigger {
        color: #252525; }
      .faq--questions:not(.hidden-init) .faq--item:not(.closed) .faq--item-trigger .top-bottom,
      .hidden-init .faq--item.open .faq--item-trigger .top-bottom {
        transform: rotate(270deg); }
      .faq--item-trigger .top-bottom {
        transition: transform 0.6s ease;
        transform-origin: center; }
  @media (max-width: 1023px) {
    .faq--block {
      width: auto;
      margin-top: 30px; } }
  @media (max-width: 639px) {
    .faq {
      padding: 30px 0; }
      .faq--item {
        padding: 30px 0 30px 10px; }
        .faq--item-question, .faq--item-answer {
          margin-right: 40px; }
        .faq--item-trigger {
          right: 0;
          width: 30px;
          height: 30px;
          top: 22px; }
          .faq--item-trigger svg {
            width: 30px;
            height: 30px; } }

.collapse--answer {
  overflow: hidden; }

.collapse--trigger {
  cursor: pointer; }

.collapse--parent.hidden-init .collapse--answer {
  height: 0; }

.home.is-main-group header .site-title {
  opacity: 0;
  pointer-events: none;
  visibility: hidden; }

.home.is-main-group header .lang-menu ul {
  margin-left: 0; }
  .home.is-main-group header .lang-menu ul li {
    margin-right: 10px; }

.home.is-main-group header .lang-menu::before {
  content: none; }

@media (max-width: 1023px) {
  .home.is-main-group header .site-title {
    transition-duration: 0.3s;
    transition-delay: 0; }
  .home.is-main-group header .group-menu-mobile {
    display: none; }
  .home.is-main-group header .group-menu-desktop {
    display: block; }
    .home.is-main-group header .group-menu-desktop::before {
      content: none; }
  .open-menu.home.is-main-group header .site-title {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
    transition-duration: 0.3s;
    transition-delay: 0.2; } }

.home.is-main-group .splash-img {
  position: relative;
  color: #fff;
  min-height: 100%; }
  @media (max-width: 1023px) {
    .home.is-main-group .splash-img {
      min-height: 100%;
      height: 100%; } }
  .home.is-main-group .splash-img a {
    color: currentColor; }
  .home.is-main-group .splash-img--bg {
    position: fixed;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    pointer-events: none;
    background-color: #15181c; }
    .home.is-main-group .splash-img--bg img {
      opacity: 0.5;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      min-width: 50%;
      min-height: 50%; }
    @media (max-width: 639px) {
      .home.is-main-group .splash-img--bg {
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%; }
        .home.is-main-group .splash-img--bg img {
          height: 100%;
          width: auto;
          left: 50%;
          top: 50%;
          margin: 0;
          transform: translate(-50%, -50%);
          height: auto;
          max-width: none;
          min-height: 100%; } }
  .home.is-main-group .splash-img .container {
    padding: 100px 0 100px;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: strech;
        align-items: strech; }
    .home.is-main-group .splash-img .container [class*="col-"] {
      float: none;
      margin-bottom: 0;
      max-width: 650px; }
    .home.is-main-group .splash-img .container .seperator {
      position: relative;
      width: 4px;
      margin: 0 30px;
      z-index: 2;
      fill: #fff;
      min-height: 350px;
      display: block; }
    .home.is-main-group .splash-img .container .intro {
      text-align: center;
      z-index: 2;
      padding: 0 60px;
      position: relative; }
      .home.is-main-group .splash-img .container .intro .dakkar {
        fill: #fff;
        max-width: 180px;
        max-height: 190px;
        display: block;
        width: 100%;
        margin: 0 auto; }
        .ie.home.is-main-group .splash-img .container .intro .dakkar.dakkar {
          position: relative;
          overflow: visible;
          top: -20px; }
      .home.is-main-group .splash-img .container .intro .spa-logo {
        fill: #fff;
        display: block;
        width: 100%;
        max-width: 350px;
        max-height: 87px;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: -10px; }
      .home.is-main-group .splash-img .container .intro p {
        margin: 0 auto 0;
        letter-spacing: 0.025em;
        line-height: 1.75; }
    .home.is-main-group .splash-img .container .locations {
      padding: 0 60px;
      -ms-flex-item-align: center;
          -ms-grid-row-align: center;
          align-self: center; }
      .home.is-main-group .splash-img .container .locations .intro,
      .home.is-main-group .splash-img .container .locations .choose {
        display: none;
        position: relative;
        text-align: center; }
      .home.is-main-group .splash-img .container .locations .choose {
        letter-spacing: 0.1em;
        margin-bottom: 15px;
        margin-top: 10px; }
      .home.is-main-group .splash-img .container .locations .intro {
        padding-top: 8px; }
      .home.is-main-group .splash-img .container .locations::before {
        width: 100%;
        height: 5px;
        top: 0;
        left: 0;
        background-image: url(../images/line.svg);
        background-position: top left;
        background-repeat: no-repeat;
        background-size: 100% 10px;
        position: absolute; }
      .home.is-main-group .splash-img .container .locations--item-link {
        position: relative;
        z-index: 2;
        display: inline-block;
        padding-left: 10px;
        white-space: nowrap; }
        .home.is-main-group .splash-img .container .locations--item-link svg {
          position: absolute;
          height: 35px;
          display: block;
          width: calc(100% + 10px);
          z-index: -1;
          bottom: 5px;
          left: 0px; }
          body:not(.has-hover).home.is-main-group .splash-img .container .locations--item-link svg {
            display: none; }
          .home.is-main-group .splash-img .container .locations--item-link svg.fill-montreal line {
            stroke: #85959a; }
          .home.is-main-group .splash-img .container .locations--item-link svg.fill-whistler line {
            stroke: #0f6d7b; }
          .home.is-main-group .splash-img .container .locations--item-link svg.fill-bluemountain line {
            stroke: #a93433; }
          .home.is-main-group .splash-img .container .locations--item-link svg.fill-forest line {
            stroke: #4c7a70; }
          .home.is-main-group .splash-img .container .locations--item-link svg.fill-tremblant line {
            stroke: #6e7c43; }
      .home.is-main-group .splash-img .container .locations--item-img {
        pointer-events: none;
        opacity: 0;
        position: fixed;
        top: -50%;
        left: -50%;
        width: 200%;
        height: 200%;
        background-color: #15181c; }
        .home.is-main-group .splash-img .container .locations--item-img img {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          margin: auto;
          min-width: 50%;
          min-height: 50%;
          opacity: 0.5; }
    @media (max-width: 1439px) {
      .home.is-main-group .splash-img .container .intro {
        max-width: none; }
        .home.is-main-group .splash-img .container .intro p {
          margin-top: 12px; }
      .home.is-main-group .splash-img .container .locations {
        max-width: none;
        padding: 0 20px; }
        .home.is-main-group .splash-img .container .locations--item-link {
          padding-left: 0; }
          .home.is-main-group .splash-img .container .locations--item-link svg {
            width: 100%;
            height: 24px; } }
    @media (max-width: 1023px) {
      .home.is-main-group .splash-img .container {
        display: block;
        padding: 50px 0 50px; }
        .home.is-main-group .splash-img .container [class*="cols-"] {
          margin-bottom: 30px; }
        .home.is-main-group .splash-img .container .seperator {
          width: calc(100% - 60px);
          margin: 0 auto;
          z-index: 2;
          height: 3px;
          min-height: 0;
          max-width: 600px; }
        .home.is-main-group .splash-img .container .locations {
          padding-top: 30px; }
          .home.is-main-group .splash-img .container .locations .choose {
            display: block; }
          .home.is-main-group .splash-img .container .locations .intro.intro.intro.intro {
            display: block;
            margin: 0 auto; }
            .home.is-main-group .splash-img .container .locations .intro.intro.intro.intro p {
              display: block; }
          .home.is-main-group .splash-img .container .locations::before {
            width: auto;
            left: 20px;
            right: 20px;
            background-size: 100% 3px;
            height: 6px; }
          .home.is-main-group .splash-img .container .locations--item {
            text-align: center; }
            .home.is-main-group .splash-img .container .locations--item-link svg {
              height: 14px; }
        .home.is-main-group .splash-img .container .intro p {
          display: none;
          max-width: 400px; } }
    @media (max-width: 639px) {
      .home.is-main-group .splash-img .container {
        min-height: calc(100% + 50px); }
        .home.is-main-group .splash-img .container [class*="cols-"] {
          margin-bottom: 15px; }
        .home.is-main-group .splash-img .container .intro {
          padding: 0; }
          .home.is-main-group .splash-img .container .intro .dakkar {
            max-width: 90px; }
          .home.is-main-group .splash-img .container .intro .spa-logo {
            width: 200px; }
          .home.is-main-group .splash-img .container .intro p {
            max-width: 90%; }
        .home.is-main-group .splash-img .container .locations {
          padding-top: 15px;
          padding-left: 30px;
          padding-right: 30px; }
          .home.is-main-group .splash-img .container .locations--item {
            margin: 10px 0; }
        .home.is-main-group .splash-img .container [class*="cols-"] {
          padding-left: 30px;
          padding-right: 30px; } }

.home.is-main-group footer {
  position: absolute;
  bottom: 0;
  width: 100%; }

#maps {
  width: 100%;
  height: 100%;
  min-height: 779px;
  max-height: 779px; }

.contact-content .container {
  max-width: none;
  padding: 0; }

.contact-content .halfblock--img {
  margin: 0 auto; }

@media (min-width: 1919px) {
  .contact-content .container {
    max-width: 1640px; } }

@media (max-width: 1023px) {
  .contact-content .halfblock--img {
    min-height: 350px; }
    .contact-content .halfblock--img #maps {
      position: absolute !important; } }

.contactform {
  min-height: 200px;
  padding: 80px 0;
  background-position: top right;
  background-image: url(../images/texture.jpg); }
  .contactform p.success {
    height: auto;
    transition: all 0.3s ease;
    color: green;
    font-weight: 700;
    font-size: 115%; }
    .contactform p.success:empty, .contactform p.success.empty {
      height: 0;
      overflow: hidden;
      margin: 0; }
  .contactform .row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center; }
  .contactform form {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    max-width: 810px;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: start;
        align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .contactform form *:focus {
      outline: 0; }
    .contactform form > div {
      position: relative; }
      .contactform form > div:first-child, .contactform form > div:nth-child(2) {
        margin: 0 44px 44px;
        width: calc(50% - 44px); }
      .contactform form > div:first-child {
        margin-left: 0; }
      .contactform form > div:nth-child(2) {
        margin-right: 0; }
      .contactform form > div:nth-child(3) {
        width: calc(100% - 165px - 50px);
        max-width: 605px;
        margin-right: 25px; }
      .contactform form > div span.bg {
        position: absolute;
        bottom: -10px;
        left: 0;
        width: calc(100% + 5px);
        z-index: 10;
        display: block;
        opacity: 0.3;
        transition: opacity 0.3s ease; }
        .contactform form > div span.bg svg {
          height: 4px;
          width: 100%;
          fill: #fff; }
    .contactform form input {
      width: 100%;
      line-height: 50px;
      letter-spacing: 0.1em; }
      .contactform form input.extra-big {
        text-indent: -9999px;
        height: 0;
        width: 0; }
      .contactform form input:focus ~ span.bg {
        opacity: 1; }
      .contactform form input:-ms-input-placeholder {
        /* IE10–11 */
        line-height: normal !important;
        opacity: 0.3 !important; }
    .contactform form textarea {
      width: 100%;
      letter-spacing: 0.1em;
      resize: none; }
      .contactform form textarea:-ms-input-placeholder {
        /* IE10–11 */
        line-height: normal !important;
        opacity: 0.3 !important; }
      .contactform form textarea:focus ~ span.bg {
        opacity: 1; }
    .contactform form button {
      margin-left: 25px;
      -ms-flex-item-align: end;
          align-self: flex-end;
      display: inline-block;
      cursor: pointer;
      width: 165px;
      line-height: 1;
      text-align: left; }
  .contactform div.content {
    text-align: center;
    margin-bottom: 30px; }
    .contactform div.content > h2 {
      text-align: center;
      letter-spacing: normal;
      line-height: 1;
      margin-bottom: 0.45em; }
  @media (max-width: 767px) {
    .contactform form {
      display: block; }
      .contactform form input {
        line-height: 30px; }
      .contactform form div {
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important; }
        .contactform form div:nth-child(3) {
          margin-bottom: 44px; }
      .contactform form button {
        margin-left: 0;
        margin-bottom: 30px; } }
  @media (max-width: 639px) {
    .contactform {
      padding: 50px 0 30px; }
      .contactform .row {
        display: block; } }

.bloglist {
  padding: 40px 0 88px; }
  .bloglist .container {
    max-width: 1130px; }
  .bloglist .row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .bloglist--item {
    width: calc(50% - 30px);
    margin-top: 66px;
    position: relative; }
    .bloglist--item:nth-child(2n) {
      margin-top: 99px; }
  .bloglist--cat {
    line-height: 1;
    letter-spacing: 0.1em;
    margin-bottom: 20px; }
    .bloglist--cat a {
      transition: color 0.3s ease; }
  .bloglist--img {
    box-shadow: -20px 20px 30px 0px rgba(22, 22, 22, 0.125); }
    .bloglist--img > a {
      position: relative;
      display: block; }
      .has-hover .bloglist--img > a:hover:before,
      .has-hover .bloglist--img > a:focus:before {
        opacity: 0.1; }
      .bloglist--img > a:before {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background-color: #fff;
        transition: opacity 0.3s ease;
        opacity: 0; }
    .bloglist--img img {
      display: block;
      width: 100%;
      height: auto; }
  .bloglist--title {
    line-height: 1;
    margin-top: 34px;
    margin-bottom: 14px; }
    .bloglist--title > a {
      transition: color 0.3s ease; }
  .bloglist--excerpt {
    line-height: 1.75;
    letter-spacing: 0.025em; }
    .bloglist--excerpt > p {
      margin: 0; }
  @media (max-width: 1023px) {
    .bloglist {
      padding: 40px 0; }
      .bloglist .row {
        display: block; }
      .bloglist--cat {
        margin-bottom: 12px; }
      .bloglist--item {
        margin: 33px auto;
        opacity: 1 !important;
        transform: none !important;
        width: 100%;
        max-width: 600px; }
        .bloglist--item:nth-child(2n) {
          margin-top: 33px; }
        .bloglist--item:first-child {
          margin-top: 0; }
        .bloglist--item:last-child {
          margin-bottom: 0; }
      .bloglist--title {
        margin-top: 18px;
        margin-bottom: 10px; } }

.blogcontent {
  padding: 90px 0; }
  .blogcontent .container {
    min-height: 400px;
    position: relative; }
  .blogcontent div.content {
    width: 100%;
    max-width: 620px;
    margin: 0 auto; }
    .blogcontent div.content > div {
      width: auto !important; }
  div.content .blogcontent--excerpt > p {
    line-height: 2; }
  .blogcontent--return {
    position: absolute;
    top: 0;
    margin-top: 1px;
    letter-spacing: 0.1em;
    left: 30px;
    transition: color 0.3s ease;
    padding-left: 50px; }
    .blogcontent--return .links--right-arrow {
      width: 32px;
      left: 0;
      transform: scale(-1, 1) translate(0, -50%);
      transition: left 0.3s ease-in-out; }
      .blogcontent--return .links--right-arrow use {
        fill: currentColor; }
    .has-hover .blogcontent--return:hover .links--right-arrow,
    .has-hover .blogcontent--return:focus .links--right-arrow {
      left: -10px; }
  .blogcontent--img {
    margin: 45px -105px 45px;
    box-shadow: -20px 20px 30px 0px rgba(22, 22, 22, 0.125); }
    .blogcontent--img img {
      width: 100%;
      height: auto;
      display: block; }
  @media (max-width: 1099px) {
    .blogcontent--return {
      position: relative;
      top: auto;
      left: -30px;
      display: inline-block;
      margin: 0 auto 30px; } }
  @media (max-width: 1023px) {
    .blogcontent {
      padding: 40px 0; }
      .blogcontent--img {
        margin: 30px -50px 30px; } }
  @media (max-width: 767px) {
    .blogcontent div.content {
      max-width: none; }
    .blogcontent--img {
      margin-left: 0;
      margin-right: 0; } }
  @media (max-width: 639px) {
    .blogcontent--return {
      left: 0; } }

.bloglinks {
  background-image: url(../images/texture.jpg);
  padding: 90px 0; }
  .bloglinks--prev-next {
    width: 100%;
    display: table; }
    .bloglinks--prev-next a {
      display: inline-block;
      position: relative;
      width: 100%; }
      .bloglinks--prev-next a[rel="prev"] .content {
        padding-left: 50px; }
      .bloglinks--prev-next a[rel="prev"] .links--right-arrow {
        transform: scale(-1, 1);
        transition: left 0.3s ease-in-out; }
      .bloglinks--prev-next a[rel="next"] .content {
        padding-right: 50px; }
      .bloglinks--prev-next a[rel="next"] .links--right-arrow {
        left: auto;
        transform: none;
        right: 0;
        transition: right 0.3s ease-in-out; }
      .bloglinks--prev-next a .links--right-arrow {
        width: 32px;
        left: 0;
        top: 3px; }
        .bloglinks--prev-next a .links--right-arrow use {
          fill: currentColor;
          transition: fill 0.3s ease; }
      .bloglinks--prev-next a .content {
        letter-spacing: 0.1em; }
  .bloglinks--link {
    display: table-cell;
    vertical-align: top;
    width: 50%; }
    .bloglinks--link:nth-child(2) {
      text-align: right; }
    .bloglinks--link span.content {
      transition: color 0.3s ease; }
    .has-hover .bloglinks--link > a:hover .links--right-arrow use,
    .has-hover .bloglinks--link > a:focus .links--right-arrow use {
      fill: rgba(255, 255, 255, 0.3); }
    .has-hover .bloglinks--link > a:hover .links--right-arrow.prev,
    .has-hover .bloglinks--link > a:focus .links--right-arrow.prev {
      left: -10px; }
    .has-hover .bloglinks--link > a:hover .links--right-arrow.right,
    .has-hover .bloglinks--link > a:focus .links--right-arrow.right {
      right: -10px; }
  .bloglinks--title {
    display: block;
    opacity: 0.3;
    letter-spacing: 0.025em;
    margin-top: 30px; }
  @media (max-width: 1023px) {
    .bloglinks {
      padding: 40px 0; } }
  @media (max-width: 767px) {
    .bloglinks--link {
      display: block;
      width: auto; }
      .bloglinks--link a {
        widows: 100%; }
      .bloglinks--link:nth-child(2) {
        text-align: left;
        margin-top: 20px; }
    .bloglinks--prev-next a[rel="next"] .links--right-arrow {
      left: 0;
      right: auto;
      transform: translateX(calc(100% + 26px)); } }
  @media (max-width: 639px) {
    .bloglinks--title {
      margin-top: 12px; } }

.page-template-page-baths .hero--links {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  width: 100%;
  max-width: 550px;
  text-align: center;
  margin-top: 90px; }

.page-template-page-baths .hero--title {
  max-width: 600px; }

.page-template-page-baths .hero a.links .content {
  min-width: 200px;
  text-align: left; }

@media (max-width: 639px) {
  .page-template-page-baths .hero--links {
    -ms-flex-direction: column;
        flex-direction: column; }
    .page-template-page-baths .hero--links a.links {
      -ms-flex-item-align: center;
          -ms-grid-row-align: center;
          align-self: center;
      margin-bottom: 30px; } }

section.packages {
  background-position: center center;
  background-image: url(../images/texture.jpg); }
  section.packages .halfblock--link a.links {
    color: #fff; }
  section.packages .halfblock--item .halfblock--content {
    -ms-flex-order: 1;
        order: 1; }
  section.packages .halfblock--item .halfblock--img {
    -ms-flex-order: 2;
        order: 2; }
  section.packages .halfblock--item:nth-child(2n) .halfblock--content {
    -ms-flex-order: 2;
        order: 2; }
  section.packages .halfblock--item:nth-child(2n) .halfblock--img {
    -ms-flex-order: 1;
        order: 1; }

.page-template-page-partner-deals .hero--links {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  width: 100%;
  max-width: 840px;
  text-align: center;
  margin-top: 90px; }

.page-template-page-partner-deals .hero--title {
  max-width: 500px; }

.page-template-page-partner-deals .hero a.links {
  margin: 0 25px; }
  .page-template-page-partner-deals .hero a.links:first-child {
    margin-left: 0; }
  .page-template-page-partner-deals .hero a.links:last-child {
    margin-right: 0; }
  .page-template-page-partner-deals .hero a.links .content {
    min-width: 200px;
    text-align: left; }

@media (max-width: 639px) {
  .page-template-page-partner-deals .hero--links {
    -ms-flex-direction: column;
        flex-direction: column; }
    .page-template-page-partner-deals .hero--links a.links {
      -ms-flex-item-align: center;
          -ms-grid-row-align: center;
          align-self: center;
      margin: 0;
      margin-bottom: 30px; } }

.page-template-demo #content section {
  min-height: 400px;
  height: 100vh;
  border-bottom: 2px dashed grey;
  background-color: rgba(255, 0, 0, 0.4);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-direction: column;
      flex-direction: column; }
  .page-template-demo #content section article {
    height: 70vh;
    position: relative;
    max-width: 50%;
    min-width: 300px;
    text-align: center;
    background-color: rgba(0, 128, 0, 0.4);
    transform: translate3d(0, 20%, 0); }

.social-share-li li::before {
  background-image: none !important;
}

    a.dpsp-network-btn{
  -webkit-box-shadow:none !important;
  box-shadow:none !important;
}
.dpsp-network-btn .dpsp-network-icon:before {
  font-family: "Social Pug";
  font-style: normal;
  font-weight: normal;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
}
.dpsp-facebook    .dpsp-network-icon:before { content: '\e800'; }
.dpsp-twitter     .dpsp-network-icon:before { content: '\e801'; }
.dpsp-email     .dpsp-network-icon:before { content: '\e816'; }
#dpsp-content-top { margin: 1.2em 0px; }
.dpsp-share-text { font-weight: bold; margin-bottom: 10px; }
.dpsp-networks-btns-wrapper { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.dpsp-networks-btns-wrapper:after { content: ''; display: block; height: 0; clear: both; }
.dpsp-networks-btns-wrapper li { float: left; overflow: hidden; -moz-transition: all 0.15s ease-in; -webkit-transition: all 0.15s ease-in; -o-transition: all 0.15s ease-in; transition: all 0.15s ease-in;}
.dpsp-networks-btns-wrapper li:first-child { margin-left: 0 !important; }
.dpsp-networks-btns-wrapper .dpsp-network-btn {
  position: relative;
  display: block;
  text-decoration: none;
  height: 40px;
  min-width: 40px;
  font-family: 'Arial';
  font-weight: bold;
  font-size: 14px;
  line-height: 36px;
  vertical-align: middle;
  padding: 0 25px 0 48px;
  border: 2px solid;
  max-height: 40px;
  width: 100%;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -moz-transition: all 0.15s ease-in;
  -webkit-transition: all 0.15s ease-in;
  -o-transition: all 0.15s ease-in;
  transition: all 0.15s ease-in;
  cursor: pointer;
}
.dpsp-networks-btns-wrapper .dpsp-network-btn:hover { border: 2px solid; }
.dpsp-networks-btns-wrapper .dpsp-network-btn:focus { border: 2px solid;  box-shadow: none; }
.dpsp-networks-btns-wrapper .dpsp-network-btn:after { content: ''; display: block; height: 0; clear: both; }
.dpsp-networks-btns-wrapper .dpsp-network-btn .dpsp-network-icon {
  position: absolute;
  top: -2px;
  left: -2px;
  float: left;
  display: block;
  font-size: 14px;
  line-height: 36px;
  width: 40px;
  text-align: center;
  vertical-align: middle;
  border: 2px solid;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -moz-transition: all 0.15s ease-in;
  -webkit-transition: all 0.15s ease-in;
  -o-transition: all 0.15s ease-in;
  transition: all 0.15s ease-in;
}
.dpsp-has-buttons-count .dpsp-networks-btns-wrapper .dpsp-network-label { margin-right: 10px; }
.dpsp-networks-btns-wrapper .dpsp-network-btn .dpsp-network-count { font-size: 13px; }
.dpsp-networks-btns-wrapper.dpsp-networks-btns-sidebar .dpsp-network-btn .dpsp-network-count,
.dpsp-networks-btns-wrapper.dpsp-networks-btns-mobile .dpsp-network-btn .dpsp-network-count {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  margin-left: 0;
  font-size: 11px;
  text-align: center;
  height: 20px;
  line-height: 20px;
}
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-no-label .dpsp-network-label-wrapper { display: none;}
.dpsp-column-3.dpsp-has-spacing .dpsp-networks-btns-wrapper li { width: 32%; background-image: none !important; position: inherit;padding-left: 0px;}
.dpsp-column-3 .dpsp-networks-btns-wrapper li:nth-child(3n) { margin-right: 0; }
.dpsp-column-3 .dpsp-networks-btns-wrapper .dpsp-network-btn{ padding-right: 10px; }
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-facebook .dpsp-network-icon,
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-facebook {
  border-color: #3a579a;
  background: #3a579a;
  color: #3a579a;
}
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-facebook:hover .dpsp-network-icon,
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-facebook:hover {
  border-color: #334d87;
  background: #334d87;
  color: #334d87;
}
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-twitter .dpsp-network-icon,
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-twitter {
  border-color: #00abf0;
  background: #00abf0;
  color: #00abf0;
}
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-twitter:hover .dpsp-network-icon,
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-twitter:hover {
  border-color: #0099d7;
  background: #0099d7;
  color: #0099d7;
}
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-email .dpsp-network-icon,
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-email {
  border-color: #27ae60;
  background: #27ae60;
  color: #27ae60;
}
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-email:hover .dpsp-network-icon,
.dpsp-networks-btns-wrapper .dpsp-network-btn.dpsp-email:hover {
  border-color: #239e57;
  background: #239e57;
  color: #239e57;
}
.dpsp-shape-rounded .dpsp-network-btn,
.dpsp-shape-rounded .dpsp-network-btn .dpsp-network-icon {
  -webkit-border-top-left-radius: 5px;
  -webkit-border-bottom-left-radius: 5px;
  -moz-border-radius-topleft: 5px;
  -moz-border-radius-bottomleft: 5px;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}
.dpsp-shape-rounded .dpsp-network-btn{
  -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;
}
.dpsp-has-spacing .dpsp-networks-btns-wrapper li { margin-bottom: 10px; margin-right: 2%; margin-left: 0 !important; background-image: none !important;}
.dpsp-size-large .dpsp-networks-btns-wrapper .dpsp-network-btn { height: 46px; min-width: 46px; line-height: 42px; max-height: 46px; padding-left: 72px; }
.dpsp-size-large .dpsp-networks-btns-wrapper .dpsp-network-btn .dpsp-network-icon { line-height: 42px; width: 46px; font-size: 16px; }
.dpsp-button-style-2 .dpsp-networks-btns-wrapper .dpsp-network-btn,
.dpsp-button-style-2 .dpsp-networks-btns-wrapper .dpsp-network-btn .dpsp-network-icon { color: #fff !important; }
.dpsp-button-style-2 .dpsp-networks-btns-wrapper .dpsp-facebook .dpsp-network-icon { background: #334d87; border-color: #334d87; }
.dpsp-button-style-2 .dpsp-networks-btns-wrapper .dpsp-twitter .dpsp-network-icon { background: #0099d7; border-color: #0099d7; }
.dpsp-button-style-2 .dpsp-networks-btns-wrapper .dpsp-email .dpsp-network-icon { background: #239e57; border-color: #239e57; }
@media screen and ( max-width : 520px ) {
  .dpsp-column-3.dpsp-has-spacing .dpsp-networks-btns-wrapper li{
    width:49%;
  }
  .dpsp-column-3 .dpsp-networks-btns-wrapper li:nth-child(2n){
    margin-right:0px;
  }
}
@media screen and ( max-width : 420px ) {
  .dpsp-column-3.dpsp-has-spacing .dpsp-networks-btns-wrapper li{
    width:100%;
    margin-right:0px;
  }
}
@media screen and ( max-width: 767px ) {
	.bathsmassages-elem--prices{
		flex-basis:33% !important;
	}
}
.bathsmassages-elem--prices.bathsmassages-elem-title{
display:flex;
}
.bathsmassages-elem--prices.bathsmassages-elem-title span.text{
align-self: center;
}
.single div.content .title--date>h1{
    color: #252525;
        font-size: 2.8125rem;
        font-family: kepler-std-display,serif;
    font-weight: 400;
    font-style: normal;
}
.single div.content .title--date{
    display: flex;
}
.single div.content .title--date .entry-date{
    margin-left: auto;
    align-self: center;
}
div.content ol li, div.content ul li {
    margin: .9em 0;
    line-height: 1.1;
    position: relative;
    padding-left: 30px;
}
div.content h3, div.content h4, div.content ol>li, div.content ul>li {
    letter-spacing: .0;
}
div.content li{
    font-weight: 600;
}
.massages--prices{
    flex-direction: column;
}
.price--holder {
    display: flex;
}
div.content ul li::before{
    background-image: url("../images/bullet-2.png");
    background-size: inherit;
    height: 3px;
    width: 15px;
    top: 6px;
}

/* social menu mobile */

.group-menu-mobile .social-media.social-media-mobile-menu ul li a svg{
  fill: #fff;
}

.group-menu-mobile .social-media.social-media-mobile-menu ul li {
  font-size: 0;
  display: inline-block;
  margin: 0 10px;
  width: auto;
}

.group-menu-mobile .social-media.social-media-mobile-menu ul li:first-child {
    margin-left: 0;
}

.group-menu-mobile .social-media.social-media-mobile-menu ul li .icon {
  width: 18px;
  height: 18px;
  transition: fill 0.3s ease;
}

.group-menu-mobile .social-media.social-media-mobile-menu ul li a {
  display: inline-block;
}

.group-menu-mobile .social-media.social-media-mobile-menu ul{
  padding-top: 1rem;
}

.group-menu-mobile .social-media.social-media-mobile-menu ul li a:hover svg {
  fill: rgba(255, 255, 255, 0.3);
}

/* site alert menu */

.site-alert p {
    margin: 0;
    color: #fff;
    letter-spacing: 2px;
    font-size: 14px;
    font-weight: 400;
}

.site-alert {
  background-color: rgba(0,0,0,0.5);
  width: 100%;
  padding: 1rem;
  position: relative;
  padding-right: 3rem;
  max-width: 30rem;
  box-shadow: 0 0 12px #000;
  border-radius: 3px;
  overflow: hidden;
}

/* header > .container > .row-site-alert{
  display: none;
}

header > .container > .row-site-alert.is-active{
  display: flex;
}

header.headroom--pinned:not(.headroom--top) > .container > .row-site-alert,
header.headroom--unpinned:not(.headroom--top) > .container > .row-site-alert{
  max-height: 0;
  overflow: hidden;
  padding: 0;
  margin: 0;
} */

@media only screen and (max-width: 1024px){
  header > .container > .row-site-alert.is-active {
    display: block;
    margin: 0 0 1rem 0;
    z-index: 1;
  }

  body.open-menu header .group-menu-mobile .navigation{
    z-index: 2;
  }
}

.site-alert svg{
  width: 20px;
  float: right;
  position: absolute;
  right: 1rem;
  top: 0.5rem;
  margin: auto;
  cursor: pointer;
}

.site-alert svg path{
  fill: #fff;
}


.row-site-alert{
  display: none;
}

.row-site-alert.is-active{
  display: flex;
}

.row.row-site-alert.is-active {
    position: fixed;
    bottom: 1rem;
    z-index: 99;
    right: 3rem;
}

@media only screen and (max-width: 640px){
  .row.row-site-alert.is-active{
    right: 1rem;
  }
}

.site-alert a {
    color: #fff;
    text-decoration: none;
    display: block;
    margin-top: 1rem;
    letter-spacing: 2px;
    font-size: 14px;
    font-weight: 400;
}

.ambassador--image{
  width: 33.3333%;
  display: inline-block;
  padding-right: 2rem;

}

.ambassador--image img{
  max-width: 100%;
  box-shadow: 5px 5px 15px lightgrey;
}

.ambassador--content{
  width: 66.6666%;
  display: inline-block;
  vertical-align: top;
}

section.ambassadors > .container{
  padding-bottom: 6rem;
}

section.ambassadors > .container:first-child{
  padding-top: 6rem;
}

section.ambassadors h2{
  margin-top: 0;
}

@media only screen and (max-width: 1024px){
  .ambassador--image{
    width: 50%;
    display: inline-block;
  }

  .ambassador--content{
    width: 50%;
    display: inline-block;
  }
}

@media only screen and (max-width: 640px){
  section.ambassadors > .container{
    padding-bottom: 3rem;
  }

  section.ambassadors > .container:first-child{
    padding-top: 3rem;
  }

  .ambassador--image{
    width: 100%;
    display: inline-block;
  }

  .ambassador--content{
    width: 100%;
    display: inline-block;
  }

  .ambassador--image img{
    margin-bottom: 2rem;
  }
}

section.ambassadors > .container{
  -webkit-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease;
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

section.ambassadors > .container.not-animated{
  opacity: 0;
  -webkit-transform: translateY(100px);
  -ms-transform: translateY(100px);
  transform: translateY(100px);
}

section.ambassadors hr{
  border-top: 1px solid #989898;
}

.no-posts-found{
  text-align: center;
  width: 100%;
}

.link-list{
  padding-left: 0;
  margin: 0;
  list-style: none;
}

.link-list li{
  padding-bottom: 1rem;
}

.link-list li:first-child{
  padding-top: 0.5rem;
}

.link-list li:last-child{
  padding-bottom: 0;
}

.link-list li a:link,
.link-list li a:visited,
section.ambassadors a:link,
section.ambassadors a:visited{
  font-family: "raleway", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #989898;
  font-size: 16px;
  text-decoration: none;
}

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

section.text_columns .column{
  padding-left: 1rem;
  padding-right: 1rem;
  width: 25%
}

.flex-columns{
  display: flex;
  justify-content: center;
  margin-top: 3rem;
  margin-left: -1rem;
  margin-right: -1rem;
}

section.text_columns{
  padding-bottom: 80px;
}

@media only screen and (max-width: 1024px){
  .flex-columns{
    flex-wrap: wrap;
  }

  section.text_columns .column{
    width: 50%;
    margin-bottom: 2rem;
  }

  section.text_columns .column:last-child{
    margin-bottom: 0;
  }
}

@media only screen and (max-width: 640px){

  .flex-columns{
    display: block;
  }

  section.text_columns{
    padding-bottom: 3rem;
  }

  section.text_columns .column{
    margin-bottom: 2rem;
    width: 100%;
  }

  section.text_columns .column:last-child{
    margin-bottom: 0;
  }
}

.light div.content > h2{
  font-size: 2.8125rem;
  text-align: center;
  letter-spacing: normal;
  line-height: 1;
  margin-bottom: 0.45em;
  font-family: 'kepler-std-display', serif;
  font-weight: 400;
  font-style: normal;
}

section.landing-page{
  padding-top: 3rem;
  padding-bottom: 6rem;
}

.lp-col{
  padding-left: 4rem;
  padding-right: 2rem;
  width: 50%;
  display: inline-block;
  float: none;
  vertical-align: top;
}

.lp-col:nth-child(2){
  padding-left: 2rem;
  padding-right: 4rem;
}

.lp-col-wrapper {
  margin-left: -4rem;
  margin-right: -4rem;
  float: none;
  padding: 0;
  display: block;
  width: 100%;
  max-width: none;
  width: auto;
  margin-bottom: 0;
}

footer .row{
  width: 100%;
}

.content_box_with_border{
  padding: 3rem;
  margin-top: 3rem;
  position: relative;
}

.content_box_with_border h3{
  margin-top: 0;
  color: #000;
  text-transform: uppercase;
}

.content_box_with_border ul{
  padding-left: 1rem;
}

.content_box_with_border ul li,
.content_box_with_border p{
  color: #787877;
  line-height: 1.5;
  font-size: 16px;
}

.content_box_with_border :last-child {
    margin-bottom: 0;
}

@media only screen and (max-width: 1024px){
  .content_box_with_border{
    padding: 1rem;
  }
  .lp-col{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: inline-block;
  }

  .lp-col:nth-child(2){
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .lp-col-wrapper {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
    float: none;
    padding: 0;
    display: block;
    width: 100%;
    max-width: none;
    width: auto;
  }
}

@media only screen and (max-width: 960px){
  section.landing-page{
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .lp-col{
    padding-left: 1rem;
    padding-right: 1rem;
    width: 100%;
    display: inline-block;
  }

  .lp-col-wrapper {
    margin-left: -1rem;
    margin-right: -1rem;
    float: none;
    padding: 0;
    display: block;
    width: 100%;
    max-width: none;
    width: auto;
  }

  .content_box_with_border{
    margin-bottom: 2rem;
  }

  .landing-page-promo-box{
    margin-top: 0!important;
  }
}

.promo-photo{
  padding: 12rem 0;
  margin-top: 2rem;
  box-shadow: 5px 5px 15px lightgrey;
}

.landing-page-promo-box{
  background-color: #272727;
  padding: 2rem 2rem;
  margin-top: -9rem;
}

.lp-col p{
  color: #787877;
  line-height: 2;
  font-size: 16px;
}

.lp-col-wrapper h2{
  font-size: 50px;
  font-family: 'kepler-std-display', serif;
  font-weight: 400;
  font-style: normal;
  color: #000;
}

.lp-col-wrapper .landing-page-promo-box h2{
  font-size: 20px;
  font-weight: 400;
  font-style: normal;
  color: #fff;
  margin-top: 0;
  margin-bottom: 0;
  font-family: "raleway", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
}

.landing-page-promo-box h3{
  font-size: 50px;
  font-weight: 500;
  color: #fff;
  font-family: 'kepler-std-display', serif;
  margin: 1.5rem 0 1rem 0;
}

.landing-page-promo-box p{
  color: #fff;
  margin-top: 0.5rem;
}

.landing-page-promo-box h4{
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  text-transform: uppercase;
}

.landing-page-promo-box h5{
  font-size: 50px;
  font-weight: 400;
  color: #fff;
  font-family: 'kepler-std-display', serif;
  margin: 0;
}

.promo-grid{
  margin-left: -1rem;
  margin-right: -1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.promo-cell:first-child{
  width: 25%;
}

.promo-cell{
  display: inline-block;
  width: 75%;
  padding-left: 1rem;
  vertical-align: middle;
}

.page-template-template-landing-page{
  overflow-x: hidden;
}

.lp-col--parallax{
  margin-bottom: -9rem;
}

@media only screen and (max-width: 1300px){

  .promo-cell:first-child {
    width: 50%;
  }

  .promo-cell {
    display: inline-block;
    width: 50%;
    padding-left: 1rem;
    vertical-align: middle;
  }
}

@media only screen and (max-width: 1024px){
  /* .lp-col-wrapper .landing-page-promo-box h2{
    font-size: 50px;
  } */

  .lp-col--parallax{
    margin-bottom: 0;
  }
}

@media only screen and (max-width: 640px){
  .landing-page-promo-box{
    margin-top: 0;
  }


}

.links--landing-page svg line,
.links--landing-page .links--right-arrow use,
.links--landing-page .content.content-right{
  -webkit-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  transition: all 0.6s ease;
}

.links--landing-page:hover svg line{
  stroke: #cdcdcd;
}

.links--landing-page:hover .links--right-arrow.links--left-arrow use{
  fill: #cdcdcd;
}

.links--landing-page:hover .content.content-right{
  color: #cdcdcd;
}

.landing-page-promo-box_mobile{
  display: none;
}

@media only screen and (max-width: 960px){
  .landing-page-promo-box_mobile{
    display: block;
    margin-bottom: 3rem;
  }

  .landing-page-promo-box_desktop{
    display: none;
  }
}


.massages--item.ambassador-item{
  max-height: none;
}


.massages--prices a:link,
.massages--prices a:visited{
  font-family: "raleway", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #989898;
  font-size: 16px;
  text-decoration: none;
}

.massages--prices a:hover{
  font-family: "raleway", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #989898;
  font-size: 16px;
  text-decoration: none;
}

.ambassador-item.massages--item div.content{
  text-align: left;
}

.ambassador-item.massages--item div.content h2{
  text-align: center;
}

p.ambassadors-location{
  margin-bottom: 0;
  text-align: center;
}

.careers div.careers-content {
    width: 100%;
    max-width: 620px;
    margin: 0 auto;
}

.careers div.careers-navigation {
    width: 100%;
    max-width: 620px;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 3rem;
}

.careers div.careers-navigation a{
  color: #000;
  text-decoration: none;
  display: inline-block;
  padding: 0 0.5rem;
  border-right: 1px solid #000;
}

.careers div.careers-navigation a:hover{
  opacity: 0.7;
}

.careers div.careers-navigation a.is-active{
  text-decoration: underline;
}

.location-with-pin{
  display: flex;
  align-items: center;
}

.location-pin{
  padding-right: 0.5rem;
}

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

.location-pin svg {
    width: 20px;
    height: auto;
}

.location-pin svg path{
  fill: #989898;
}

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

.careers div.careers-navigation a:last-child{
  border-right: none;
}

.careers .bgimage--link{
  margin-top: 10px;
  padding-bottom: 60px;
  margin-bottom: 60px;
  border-bottom: 1px dotted #989898;
}

.careers-list{
  margin-top: 2rem;
}

section.careers h2 {
    font-size: 3rem;
}

section.careers div.content h2 {
  font-family: 'kepler-std-display', serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.8125rem;
  text-transform: none;
  letter-spacing: normal;
  max-width: 300px;
  line-height: 1;
  margin-bottom: 0.45em;
}

p.job_excerpt{
  color: #000;
  font-size: 14px;
}

section.careers h3{
  color: #000;
  font-weight: 500;
  font-size: 30px;
  margin-bottom: 22px;
  padding: 1rem;
  background-color: #f7f7f7;
}

section.careers {
    padding: 3rem 0;
}

div.content ul li.social-share-li::before{
  opacity: 0;
}

body.single-career header .group-menu li.current-menu-item a{
  color: #fff;
}

.social-share-links{
  list-style: none;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  display: flex;
  justify-content: space-between;
}

div.content ul.social-share-links li::before{
  display: none;
}

div.content ul.social-share-links li{
  padding-left: 0;
  width: 29.33%;
}

div.content ul.social-share-links li span.content{
  text-align: center;
}

input.search-form{
  width: 100%;
  padding: 1rem 1rem;
  max-width: 40rem;
  display: block;
  margin: 0 auto;
  background-image: url(../images/icon-search.svg);
  background-size: 20px;
  background-position: 95% center;
  padding-right: 2.5rem;
  border: 1px solid #989898;
  background-repeat: no-repeat;
}

#searchform{
  margin-bottom: 0;
}

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

.search-container .row{
  display: flex;
  justify-content: flex-end;
}

@media only screen and (max-width: 700px){
  div.content ul.social-share-links li{
    padding-left: 0;
    width: 100%;
    padding-bottom: 2rem;
  }

  .social-share-links{
    display: block;
    text-align: center;
  }
}

.new-career-title .location-with-pin{
  float: right;
}

section.careers .new-career-title h3{
  display: inline-block;
  margin: 0;
  background-color: transparent;
  padding: 0;
}

.location-label p {
  margin: 0;
}

.new-career-title{
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #f7f7f7;
  padding: 1rem;
  margin-bottom: 2rem;
}

@media only screen and (min-width: 1024px){
  .container.search-container {
    margin-bottom: -2rem;
    position: relative;
    z-index: 2;
  }
}

@media only screen and (max-width: 800px){
  section.careers h3{
    font-size: 20px;
  }

  section.careers h2{
    font-size: 2rem;
  }

  .careers div.careers-navigation a{
    margin-bottom: 0.5rem;
  }
}


.location-label {
    white-space: nowrap;
}


.tg-item-media-inner {
    height: 20rem;
    position: relative;
}

img.tg-item-image {
    margin: 0;
    outline: transparent solid 1px;
    position: absolute;
    top: 0;
    bottom: 0;
    height: 150%;
    width: auto;
    margin: auto;
    left: 0;
    right: 0;
}

html body .quito .tg-item-footer{
  display: none;
}

.massages-bg-color{
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  pointer-events: none;
  z-index: 1;
}

.massages--border,
.massages--content{
  z-index: 10;
}

.tg-grid-holder:before,
body.page-template-tempate-the-grid{
  background-color: #f1f1f1!important;
}

body .bathsmassages-elem--prices{
  text-align: left;
}

body .baths--price.bathsmassages-elem--prices{
  text-align: center;
}

.massages--link .links{
  color: #252525;
}

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

.massages--link .links--underline line{
  stroke: #252525;
}

.the_grid_plugin_section{
  padding: 4rem 0;
  background-color: #f1f1f1;
}

.the_grid_plugin_section .tg-grid-wrapper{
  margin: 0!important;
}

.the_grid_plugin_section .container{
  max-width: none;
  padding: 0 50px;
}

.package--item .bgimage--content.green{
  background-color: #6e7c43;
}

.package--item .bgimage--content.grey{
  background-color: #85959a;
}

.package--item .bgimage--content.white{
  background-color: #fff;
}

.package--item .bgimage--content.red{
  background-color: #a93433;
}

.package--item .bgimage--content.blue{
  background-color: #0f6d7b;
}

.package--item .bgimage--content.black{
  background-color: #252525;
}

.package--item .bgimage--content.green p,
.package--item .bgimage--content.grey p,
.package--item .bgimage--content.red p,
.package--item .bgimage--content.blue p,
.package--item .bgimage--content.black p{
  color: #fff!important;
}

.package--item .bgimage--content.white h2,
.package--item .bgimage--content.white .bgimage--link a.links,
.package--item .bgimage--content.white p,
.package--item .bgimage--content.white .package--subhead{
  color: #85959a!important;
}

@media all and (min-width: 1024px) {
  .package--item:nth-of-type(even) .bgimage--content{
    right: 5rem;
  }

  .package--item:nth-of-type(odd) .bgimage--content{
    left: 5rem;
  }

  .package--item .bgimage--content {
    /* height: fit-content; */
    align-self: center;
   }
}


.textsingle--content.has-background-image{
  padding: 6rem 0;
}

.season-content{
  display: none;
}

.season-content.is-active{
  display: block;
  padding-top: 0.5rem;
}

.accordion-row p.accordion-title{
  margin: 0;
  padding: 1rem 0;
  font-family: 'kepler-std-display', serif;
  font-weight: 400;
  font-style: normal;
  font-size: 30px;
  font-weight: 500;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: normal;
  color: #000000;
  /* background-image: url(../images/icone-spa-k-arrow-black.png);
  background-size: 23px;
  background-position: 95% center;
  background-repeat: no-repeat; */
  width: 100%;
  padding-right: 10%;
  padding-left: 2rem;
  cursor: pointer;
}

.accordion-content{
  max-height: 0;
  overflow: hidden;
  transition: all 0.6s ease;
}

.accordion-row.is-active .accordion-content{
  max-height: 99rem;
  padding-top: 0rem;
  padding-bottom: 2rem;
}

.rates_accordion{
  width: 695px;
  max-width: 100%;
  margin: 0 auto;
  padding: 0 1rem;
}

.rates_accordion img{
  width: 664px;
  max-width: 100%;
  transform: scale(1.000001);
}

.season-tabs-title{
  list-style: none;
  padding: 0;
  display: flex;
  justify-content: center;
}

.rates_accordion > .wrap{
  overflow: hidden;
}

section.rates_accordion{
  padding-bottom: 8rem;
  padding-top: 8rem;
}

.season-tabs-title li{
  margin-right: 1rem;
  padding-bottom: 1rem;
  font-family: "raleway", sans-serif;
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: normal;
  text-align: center;
  text-transform: uppercase;
  cursor: pointer;
}

.season-tabs-title li.is-active{
  background-image: url(../images/small-underline-blue-2.svg);
  background-position: center 100%;
  background-size: contain;
  background-repeat: no-repeat;
  color: #000000;
}


.partners--item.what-you-should-know{
  display: block;
  height: auto;
  margin: 0 auto 4rem auto;
  min-height: inherit;
  text-align: center;
  max-height: inherit;
  max-width: 70rem!important;
  width: inherit!important;
  min-width: inherit;
}

.partners--item.what-you-should-know .block-title {
    margin-top: -3.5rem;
    background-color: #fff;
    padding-left: 1rem;
    padding-right: 1rem;
    text-align: center;
    position: relative;
    z-index: 2;
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
    font-family: 'kepler-std-display',serif;
    font-weight: 400;
    font-style: normal;
    font-size: 30px;
    font-weight: 500;
    color: #000;
}

.what-you-should-know-callouts img{
  width: auto!important;
  max-width: none!important;
  height: 3.5rem;
}

.what-you-should-know-callouts{
  display: flex;
  justify-content: space-around;
  margin: 2rem 0;
}

.what-you-should-know-callouts > div{
  flex: 1;
  padding-left: 1rem;
  padding-right: 1rem;
}

.what-you-should-know a.links{
  color: #252525!important;
  margin: 0 1rem;
}

.what-you-should-know .links--underline line{
  stroke: #0f6d7b!important;
}

.what-you-should-know .links--right-arrow{
  color: #0f6d7b;
}

.season-content table td {
    padding: 1rem;
    font-weight: 600;
}

.season-content table tr:first-child td{
      padding: 0.75rem 1rem;
}

.season-content table tr:first-child{
  background-color: #F4F7F6;
}

.season-content table{
  margin-top: 2rem;
  table-layout: fixed;
}

.season-content table tr td{
  font-size: 14px;
}

.season-content table tr:first-child td:first-child{
  border: none;
}

.season-content table tr:nth-child(1n+2) td:nth-child(1n+2){
  color: #000;
  font-family: 'kepler-std-display',serif;
  font-weight: 400;
  font-style: normal;
  font-size: 30px;
  font-weight: 500;
}

@media only screen and (max-width: 40em){
	.season-content table{
		width: 100%!important;
	}

	.season-content table {
    	margin-top: 1rem;
	}

	.season-content table tr:nth-child(1n+2) td:nth-child(1n+2){
	  font-size: 22px;
	  font-weight: 500;
	}

  .partners--item.what-you-should-know{
    margin: 1rem;
  }

  .what-you-should-know-callouts {
    display: block;
  }
}





a.links.black{
  color: #000;
  margin-right: 2rem;
  margin-bottom: 2rem;
}

a.links.black .links--underline line {
    stroke: #000;
}

.textsingle.dark{
  background-color: #252525;
  padding: 120px 0;
}

.textsingle.dark *{
  color: #fff!important;
}

.textsingle.dark h2 a{
  font-family: kepler-std-display,serif;
  font-weight: 400;
  font-style: normal;
  line-height: 0px;
  border-bottom: 1px solid #fff;
}

.rates_accordion>.wrap{
  overflow: visible;
}

.rates_accordion.disable-accordion img{
  display: none;
}

.rates_accordion.disable-accordion .accordion-title{
    display: none;
}

.rates_accordion.disable-accordion .accordion-content {
  max-height: 99rem;
  padding-top: 0;
  padding-bottom: 2rem;
}

.rates_accordion.remove-top-padding{
  padding-top: 0;
  margin-top: -8rem;
}

.dark-should-know-bg{
  background-color: #F4F7F6;
  padding: 8rem 0;
  
}

.rates_accordion + .dark-should-know-bg{
  /*margin-top: -6rem;*/
}

.dark-should-know-bg .partners--item.what-you-should-know{
  margin-bottom: 0;
}

.dark-should-know-bg .partners--item.what-you-should-know .block-title{
  background-color: #EFF4F7;
}

.accordion-content{
  padding-left: 2rem;
  padding-right: 2rem;
}

.season-content p small,
.season-content small{
  font-size: 14px;
}

.accordion-content p,
p.season-content,
.what-you-should-know-callouts p{
  font-size: 15px;
  line-height: 27px;
}

.accordion-content .links{
  margin-top: 2rem;
}

.promobox.dark-bg{
  padding: 50px 0;
  min-height: 60vh;
}

.season-tabs{
  margin-top: 2rem;
}

.massage-benefits{
  padding-left: 2rem;
  padding-bottom: 2rem;
}

.massage-benefits *{
  margin: 0;
}

.massage-benefits{
  transition: all 0.3s ease;
}

.accordion-row.is-active .massage-benefits{
  /* display: none; */
  opacity: 0;
  padding-bottom: 0;
}

.price-view-toggle{
  font-family: 'raleway',sans-serif;
  font-weight: 700;
  font-style: normal;
  position: absolute;
  right: 0;
  top: 2rem;
  cursor: pointer;
  margin: auto;
  text-transform: uppercase;
  color: #252525;
  background-image: url(../images/icone-spa-k-arrow-black.png);
  background-size: 15px;
  background-position: 95% center;
  background-repeat: no-repeat;
  padding-right: 2rem;
  pointer-events: none;
  font-size: 12px;
}

.accordion-title-wrapper{
  position: relative;
}

.price-view-toggle .prices-open{
  display: none;
}

.accordion-row.is-active .prices-open{
  display: inline-block;
}

.accordion-row.is-active .prices-closed{
  display: none;
}


.price-view-toggle{
  font-family: 'raleway',sans-serif;
  font-weight: 700;
  font-style: normal;
}

.massage-benefits small,
.accordion-content small{

}

.disable-accordion .price-view-toggle{
  display: none;
}


@media only screen and (max-width: 1024px){
  header .reservations-menu {
    top: 52px;
    left: 0;
  }
}

@media only screen and (max-width: 640px){
  header .reservations-menu {
    left: 0;
    right: 0;
    width: 100%;
    max-width: none;
  }

  .accordion-content {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .accordion-row p.accordion-title{
	  padding-right: 7rem;
	  font-size: 1.5rem;
	  margin-left: -1.5rem;
  }

  .massage-benefits{
	  margin-left: -1.5rem;
  }

  .textsingle div.content>h2,
  .promobox--title{
	  font-size: 1.5rem;
	  line-height: 1.5;
  }

  .textsingle.dark h2 a{
	  line-height: 1.5;
  }

  .rates_accordion img {
     width: 664px;
     max-width: 102%;
     transform: scale(1.000001);
 }

 .partners--item.what-you-should-know{
	 margin-bottom: 4rem;
 }

 .dark-should-know-bg .partners--item.what-you-should-know{
	 margin-bottom: 0;
 }
}

@media only screen and (max-width: 390px){
	.partners--item.what-you-should-know .block-title {
	    margin-top: -5.5rem;
	}
}

.career-content{
	padding-top: 4rem;
	padding-bottom: 4rem;
}

.career-content:first-child{
	padding-top: 0;
}

.career-content{
	display: none;
}

.career-content.is-active{
	display: block;
}

.career-tabs li{
	cursor: pointer;
	border: 1px solid #989898;
	/* border-right: none; */
	padding: 1rem;
	margin: 0 0.5rem;
	transition: all 0.3s ease;
	transform-origin: bottom;
	border-radius: 4px 4px 0px 0px;
	display: inline-block;
	vertical-align: bottom;
}

/* .career-tabs li:last-child{
	border-right: 1px solid #989898;
} */

.career-tabs{
	border-bottom: 1px solid #989898;
	margin-bottom: 2rem;
	max-width: 60rem;
	margin: 0 auto;
	margin-bottom: 2rem;
	transition: all 0.3s ease;
}

.career-tabs li.is-active{
	border-bottom: 1px solid #fff;
	padding-bottom: 1.5rem;
}

.career-tabs li:not(.is-active){
	margin-top: 1rem;
}

.career-tabs-titles{
	/* display: flex;
	align-items: flex-end;
	justify-content: center; */
	max-width: 60rem;
	margin: 0 auto;
	list-style: none;
	padding-top: 1rem;
	padding-left: 0;
	margin-bottom: -1px;
	font-family: 'kepler-std-display',serif;
    font-weight: 400;
    font-style: normal;
    font-size: 2rem;
	text-align: center;
}

.career-tabs li.is-active{
	color: #000;
}

.career-tabs-titles li{
	padding: 1rem 1.5rem;
}

.career-content-parent{
	max-width: 60rem;
	margin: 0 auto;
}


@media only screen and (max-width: 900px){
	.career-tabs li.is-active {
	    border-bottom: 1px solid #fff;
	    padding-bottom: 1.25rem;
	}

	.career-tabs li{
		font-size: 1rem;
		margin: 0 0.25rem;
		padding: 1rem 0.5rem;
	}

	.career-content{
		padding: 0 1rem;
	}
}


@media only screen and (max-width: 400px){
	.career-tabs li{
		font-size: 0.75rem;
		margin: 0 0.25rem;
		padding: 0.5rem 0.5rem;
	}
}

.embed_code {
    padding: 80px 0;
}

.embed_code iframe{
	display: block;
	margin: 0 auto;
	max-width: 100%;
}

.map-mobile{
	display: none;
}

.map-desktop{
	display: block;
}

@media only screen and (max-width: 900px){
	.map-mobile{
			display: block;
	}

	.map-desktop{
		display: none;
	}

	.halfblock--img.map-img{
		max-height: none;
	}
}

section.calendar{
	padding: 3rem 0;
}

section.calendar h2{
	margin-top: 0;
}


header.tribe-events-calendar-month__header {
    position: relative;
}


.ecs-filterbar{
	margin-bottom: 2rem!important;
	margin-top: 2rem!important;
	padding-bottom: 20px!important;
	text-align: center;
}

/* .meditation_ecs_calendar_category{
	background-color: red!important;
}

.yoga_ecs_calendar_category{
	background-color: blue!important;
} */

tr:first-child>td>.fc-day-grid-event{
	border: none;
}

.ecs-filterbar-item {
    margin-left: 0px!important;
    margin-top: 20px!important;
}

.ecs-filterbar-item label{
	margin-bottom: 5px!important;
}

.select2-search--dropdown{
	display: none!important;
}

.select2-container{
	 width: 400px!important;
}

.select2-container:focus,
.select2-container *:focus{
	outline: none!important;
}

.fc-event, .fc-event-dot {
    background-color: #252525!important;
	border: none!important;
}

.fc-day-grid-event {
    padding: 5px!important;
}

.fc-unthemed td.fc-today {
    background: #f5f5f5!important;
}

.fc-toolbar button {
    background-color: #252525!important;
    color: #fff!important;
    background-image: none!important;
    box-shadow: none!important;
    margin-left: 5px!important;
    text-transform: capitalize;
}

.fc-toolbar button:focus,
.fc-toolbar button *:focus{
	outline: none;
}

.fc-toolbar button{
	transition: all 0.3s ease;
}

.fc-toolbar button:hover{
	opacity: 0.6;
}

.fc-state-disabled{
	display: none!important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #252525!important;
    color: white;
}

#ecs-calendar-1-loading[style="display: block;"]{
	display: flex!important;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    background-image: url(../images/ajax-loader.gif);
    background-size: 100px;
    background-position: 50% 42%;
    background-repeat: no-repeat;
}

.select2-container--default .select2-selection--single .select2-selection__clear {
    font-size: 30px!important;
    line-height: 1!important;
    margin-top: -3px!important;
}

@media only screen and (max-width: 1100px){
	#ecs-calendar-1-loading[style="display: block;"] {
		background-position: 50% 37%;
	}
}

@media only screen and (max-width: 750px){
	#ecs-calendar-1-loading[style="display: block;"] {
		background-position: 50% 30%;
	}
}

@media only screen and (max-width: 600px){
	#ecs-calendar-1-loading[style="display: block;"] {
		background-image: none!important;
	}
}

body .tooltip-ecs-calendar-1{
	padding: 1rem!important;
}

@media only screen and (max-width: 513px){
	body .tooltip-ecs-calendar-1{
		display: none!important;
	}
}

header.tribe-events-calendar-list__event-header{
	z-index: 1;
}

a.tribe-events-c-ical__link {
    display: none!important;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-header--has-event-search .tribe-events-header__top-bar{
	display: none;
}

em.tribe-events-pro-photo__event-datetime-recurring-icon.tribe-common-svgicon.tribe-common-svgicon--recurring{
	display: none;
}

ul.tribe-venue-widget-list {
    display: flex;
    flex-wrap: wrap;
}

ul.tribe-venue-widget-list li{
	width: 33.333%;
	padding: 1.5rem!important;
}

@media only screen and (max-width: 1024px){
	ul.tribe-venue-widget-list li{
		width: 50%;
		padding: 1rem!important;
	}
}

@media only screen and (max-width: 640px){
	ul.tribe-venue-widget-list li{
		width: 100%;
		padding: 1rem!important;
	}
}

.tribe-event-image img{
	width: 100%;
	max-width: 100%;
	height: auto;
}

h4.tribe-event-title a{
	color: #141827;
    outline: 0;
    text-decoration: none;
}

section.calendar h2.venue-calendar-title{
	margin-top: 2rem;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container{
	padding-top: 2rem;
}

.event-venue-filter--wrapper {
    text-align: center;
    padding: 2rem 0;
    background-color: #f3f3f3;
    margin-top: 4rem;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container{
	padding-top: 4rem!important;
}

select.event-venue-filter--select {
	-moz-appearance: none;
    -webkit-appearance: none;
	appearance: none;
    padding: 0.5rem;
    min-width: 20rem;
	border: 1px solid #ccc;
	background-image: url(../images/arrow-down.svg);
	background-repeat: no-repeat;
	background-position: 97% center;
	background-size: 15px;
	border-radius: 5px;
}

select.event-venue-filter--select:focus{
	outline: none!important;
}

select.event-venue-filter--select:-moz-focusring{
    color: transparent;
    text-shadow: 0 0 0 #000;
}

a {
   outline: 0;
}

.no-results{
	padding-top: 2rem;
}

.tribe-common--breakpoint-medium.tribe-common .tribe-common-l-container {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0;
    max-width: 100%;
}

button.tribe-common-h3.tribe-common-h--alt.tribe-events-c-top-bar__datepicker-button{
	display: none!important;
}

ul.tribe-venue-widget-list {
    margin: 0 -1.5rem!important;
    width: calc(100% + 3rem);
}

header .group-menu-mobile .reservations-lang.online{
  height: 26px;
  margin-bottom: 5px;
}

section.textsingle + section.embed_code{
  padding-top: 0;
}

section.embed_code .embed-form{
  max-width: 40rem;
  margin: 0 auto;
}

section.embed_code .embed-form input[type="text"]{
  width: 100%!important;
}

.iframe-wrapper iframe{
  border: none;
  width: 100%;
}

.iframe-wrapper{
  max-width: 40rem;
  margin: 0 auto;
}



header .group-menu-mobile .reservations-lang .reservations--online{
      font-size: .625rem;
}

.media-gallery{
  text-align: center;
  padding: 4rem 0;
}

.fancybox-button--play,
.fancybox-button--thumbs{
  display: none!important;
}

.media-gallery h1{
  font-family: kepler-std-display,serif;
  font-weight: 400;
  font-style: normal;
  color: #252525;
  font-size: 3.125rem;
  margin-bottom: 6rem;
  margin-top: 0;
}

.media-gallery h1 .underline--stroke{
  bottom: -33px;
}

.media-gallery-wrapper{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.media-gallery-wrapper .media-item-wrapper{
  max-width: 30%;
  width: 30%;
  display: block;
  margin-bottom: 2rem;
  margin-left: 1rem;
  margin-right: 1rem;
  position: relative;
  overflow: hidden;
}

.media-gallery-wrapper .media-image{
  padding: 8rem 0;
  width: 100%;
  display: block;
}

@media only screen and (max-width: 862px){
  .media-gallery .underline--wrapper{
    display: block;
  }  
  
  .media-gallery-wrapper .media-image{
    padding: 6rem 0;
  }
}

.media-gallery-wrapper a img:not(.gallery-video-play){
  width: 100%;
}

.media-gallery-wrapper a img:not(.gallery-video-play),
.media-gallery-wrapper .media-image{
  transition: all 0.6s ease;
}

.media-gallery-wrapper a:hover img:not(.gallery-video-play),
.media-gallery-wrapper a:hover .media-image{
  transform: scale(1.1);
}

.media-gallery-wrapper a img.gallery-video-play{
  
}

.media-gallery-wrapper a .play-button-wrapper{
  position: absolute;
  width: 65px;
  height: 65px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  margin: auto;
  z-index: 2;
  pointer-events: none;
  background-color: #0f6d7b;
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}


@media only screen and (max-width: 640px){
  .media-gallery-wrapper .media-item-wrapper{
    max-width: 47%;
    width: 47%;
  }
}

.media-filters{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-bottom: 2rem;
}

.media-filters h2{
  width: 100%;
  text-align: center;
}

.media-filters p{
  margin: 0;
  padding: 1rem;
  cursor: pointer;
}

.media-filters--type{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
}

.media-filters p{
    margin-right: 1rem;
    padding-bottom: 1rem;
    font-family: raleway,sans-serif;
    font-size: 14px;
    font-weight: 700;
    font-style: normal;
    font-stretch: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer;
    min-width: 100px;
}

.media-filters p.is-active{
  color: #000;
  background-image: url(//www.scandinave.com/app/themes/spa-scandinave/css/../images/small-underline-blue-2.svg);
  background-position: center 100%;
  background-size: contain;
  background-repeat: no-repeat;
  color: #000;
}



.season-tabs-title li.is-active {
    
}

@media only screen and (max-width: 1080px){
  .media-gallery-wrapper .media-item-wrapper {
    max-width: 29%;
    width: 29%;
  }
}

@media only screen and (max-width: 858px){
  .media-gallery-wrapper .media-item-wrapper {
    max-width: 40%;
    width: 40%;
  }
}


/*SLIDER*/

section.slider {
    overflow: hidden;
    position: relative;
    padding: 8rem 4rem;
    display: flex;
    justify-content: flex-end;
}

.slide-text-block {
    background-color: #fff;
    padding: 4rem 4rem 10rem 4rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: center;
    text-align: center;
}

.slider-text{
    position: relative;
    max-width: 41rem;
    z-index: 10;
}

.slider-images{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
}

.slide-bg{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
}

.slide-text-block h2{
    font-family: 'kepler-std-display',serif;
    font-weight: 400;
    font-style: normal;
    font-size: 3.125rem;
    color: #252525;
}

.slide-text-block p,
.slide-text-block li{
    letter-spacing: .025em;
    line-height: 1.8;
    margin: 1.75em 0;
    margin: 0;
}

.slide-text-block p.top-title{
    text-transform: uppercase;
    font-weight: bolder;
    margin-bottom: 2rem;
    color: #252525;
}

.slick-slide{
  position: relative;
}

.slick-disabled{
  display: none!important;
}

.slick-arrow.slick-next{
  position: absolute;
  right: -2rem;
  bottom: 1rem;
  z-index: 10;
  cursor: pointer;
  width: 100px;
}

.slick-arrow.slick-prev{
  position: absolute;
  left: -2rem;
  bottom: 1rem; 
  z-index: 10;
  transform: rotate(180deg);
  cursor: pointer;
  width: 100px;
}

.textsingle.darker-background{
  background-color: #f4f7f6;
}

.textsingle blockquote{
    font-family: kepler-std-display,serif;
    font-weight: 400;
    font-style: normal;
    font-size: 2rem;
}

.textsingle blockquote p{
    font-size: 2rem;
}

.textsingle.wide .textsingle--content {
    max-width: 1000px;
    margin: 0 auto;
    width: 100%;
}

.dark-should-know-bg + .textsingle.darker-background{
  padding-top: 0;
}

.slider-text.slick-slider .slick-track, 
.slider-text.slick-slider .slick-list{
    height: auto!important;
    display: flex!important;
    align-items: flex-end;
  }

@media only screen and (max-width: 820px){
  .slider-text {
    position: relative;
    max-width: 100%;
    z-index: 10;  
  }
  
  
  
  section.slider {
    padding: 2rem 0;
  }
  
  .slick-arrow.slick-next {
    right: 0rem;
    bottom: 1rem;
    width: 4rem;
  }
  
  .slick-arrow.slick-prev {
    left: 0rem;
    bottom: 1rem;
    width: 4rem;
  }
  
  .slide-text-block {
    background-color: #fff;
    padding: 2rem 2rem 6rem;
  }
  
  .slider-images {
    position: relative;
    height: 20rem;
  }
  
  section.slider{
    display: block;
  }
  
  .slider-text.slick-slider .slick-track, 
  .slider-text.slick-slider .slick-list{
    height: auto!important;
    display: flex!important;
  }
  
  .slide-text-block h2{
    font-size: 2rem;
  }
  
}

section.border_box{
  padding: 4rem 0 4rem 0;
}

section.border_box .content_box_with_border{
  margin-top: 0;
}


.content_box_with_border ul li a{
    color: #787877;
}

section.rates_accordion + section.border_box{
  margin-top: -8rem;
}

.fb-share-button.fb_iframe_widget {
    text-align: center;
    width: 100%;
}

.is-location:not(.open-menu) header[data-location].headroom--not-top{
  animation-name: slideDown;
  transform: none;
}

.headroom--unpinned{
  
}

.media-description *, 
.media-description {
    color: #989898;
    text-decoration: none!important;
}

.media-gallery-wrapper a{
    color: #989898;
    text-decoration: none!important;
}

.media-description{
  padding-top: 20px;
  background-color: #fff;
  position: relative;
}

.media-description > :first-child{
  margin-top: 0;
}

.media-image{
  position: relative;
}

.media-image.portrait-image{
  padding: 13rem 0;
}

@media only screen and (max-width: 640px){
  .media-image.portrait-image{
    padding: 8rem 0;
  }

}

.gallery-description{
  max-width: 40rem;
  margin: 2rem auto;
}

.gallery-description p{
  font-weight: bold;
}

.faq-hero-links a{
  margin-left: 1rem;
  margin-right: 1rem;
}

.hero--links.faq-hero-links{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 2rem;
  max-width: 60rem;
}