@charset "UTF-8";
/*
 * 		Settings
 * 		--------
 */
/*
 * 		Colors
 * 		------
 */
/*
 * 		Fonts
 * 		-----
 */
@import 'https://fonts.googleapis.com/css?family=Lato:300,400,700';
@font-face {
  font-family: NeutraBold;
  src: url("../fonts/NeutraBold.eot") format("eot"), url("../fonts/NeutraBold.woff") format("woff"), url("../fonts/NeutraBold.otf");
  font-weight: normal; }

@font-face {
  font-family: NeutraBook;
  src: url("../fonts/NeutraBook.eot") format("eot"), url("../fonts/NeutraBook.woff") format("woff"), url("../fonts/NeutraBook.otf");
  font-weight: normal; }

@font-face {
  font-family: NeutraDemi;
  src: url("../fonts/NeutraDemi.eot") format("eot"), url("../fonts/NeutraDemi.woff") format("woff"), url("../fonts/NeutraDemi.otf");
  font-weight: normal; }

/*
 * 		Breakpoints
 * 		-----------
 */
@-webkit-keyframes rotationAnimation {
  0% {
    -webkit-transform: translateY(-50%) rotate(0deg);
    transform: translateY(-50%) rotate(0deg); }
  100% {
    -webkit-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg); } }
@keyframes rotationAnimation {
  0% {
    -webkit-transform: translateY(-50%) rotate(0deg);
    transform: translateY(-50%) rotate(0deg); }
  100% {
    -webkit-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg); } }

/*
 * 		Components
 * 		----------
 */
* {
  box-sizing: border-box;
  font-family: "NeutraBook", sans-serif; }

html,
body {
  height: 100%;
  margin: 0;
  padding: 0;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: 0.45px;
  color: #262724;
  background: #ffffff; }
  html .overlay-div,
  body .overlay-div {
    position: fixed;
    display: block;
    height: 100%;
    width: 100%;
    max-height: 100vh;
    max-width: 100vw;
    top: 0;
    left: 0;
    opacity: 0;
    background: rgba(0, 0, 0, 0.7);
    content: '';
    z-index: -1;
    -webkit-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out; }
  html.overlay,
  body.overlay {
    overflow: hidden; }
    html.overlay .overlay-div,
    body.overlay .overlay-div {
      opacity: 1;
      z-index: 99; }

div,
header,
nav,
aside,
section,
article {
  margin: 0;
  padding: 0; }

textarea,
input,
select,
button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  line-height: 1em; }
  textarea:focus,
  input:focus,
  select:focus,
  button:focus {
    outline: none; }

img {
  vertical-align: middle;
  border: none; }

p.neutra-bold, a.neutra-bold, span.neutra-bold, h1.neutra-bold, h2.neutra-bold, h3.neutra-bold, h4.neutra-bold, h5.neutra-bold, li.neutra-bold {
  font-family: "NeutraBold", sans-serif; }

p.neutra-demi, a.neutra-demi, span.neutra-demi, h1.neutra-demi, h2.neutra-demi, h3.neutra-demi, h4.neutra-demi, h5.neutra-demi, li.neutra-demi {
  font-family: "NeutraDemi", sans-serif; }

p.lato-font, a.lato-font, span.lato-font, h1.lato-font, h2.lato-font, h3.lato-font, h4.lato-font, h5.lato-font, li.lato-font {
  font-family: "Lato", sans-serif; }

strong {
  font-family: "NeutraDemi", sans-serif; }

p {
  line-height: 22px;
  margin: 15px 0; }
  p.single-space {
    margin: 0; }

a {
  line-height: 22px;
  border: none;
  color: #262724;
  text-decoration: none;
  -webkit-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out; }
  a:hover, a.current, a.yellow-link {
    color: #7DCCC1; }
  a.yellow-link:hover {
    color: #58beb0; }

h1, h2, h3, .title-1, .title-2, .title-3, .generic-block:not(:first-of-type) h2 {
  font-family: "NeutraDemi", sans-serif;
  text-transform: uppercase;
  font-weight: normal;
  margin: 0; }

.title-1, h1 {
  font-size: 32px;
  font-size: 2rem;
  line-height: 36px; }

.title-2, h2 {
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 28px; }

.title-3, .generic-block:not(:first-of-type) h2, h3 {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 22px; }

.fleft {
  float: left; }

.fright {
  float: right; }

.centered {
  text-align: center; }

.clearfix {
  overflow: hidden;
  clear: both; }
  .clearfix.absolute-clearfix {
    overflow: visible; }
    .clearfix.absolute-clearfix:after {
      content: '';
      display: block;
      clear: both; }

.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  position: relative; }

.box-shadow {
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1); }

.main-container {
  background: #F4F4F4;
  padding-top: 78px; }
  @media screen and (min-width: 1024px) {
    .main-container {
      padding-top: 123px; } }
  .main-container.white-bg {
    background: #ffffff; }
  .main-container a {
    font-family: "Lato", sans-serif; }

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

.wrapper {
  position: relative; }
  @media screen and (min-width: 768px) {
    .wrapper {
      min-height: 100%;
      margin: 0 auto -630px; } }

@media screen and (min-width: 768px) {
  footer, .push {
    height: 630px; } }

footer {
  background: #ffffff; }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 15px 15px;
  cursor: pointer;
  -webkit-transition-property: opacity, -webkit-filter;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  -webkit-transition-duration: 0.15s;
  transition-duration: 0.15s;
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  overflow: visible;
  line-height: 0; }
  .hamburger:hover {
    opacity: 0.7; }

.hamburger-box {
  width: 30px;
  height: 24px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 30px;
    height: 4px;
    background-color: #7DCCC1;
    border-radius: 0px;
    position: absolute;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-duration: 0.15s;
    transition-duration: 0.15s;
    -webkit-transition-timing-function: ease;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -10px; }
  .hamburger-inner::after {
    bottom: -10px; }

/*
   * Slider
   */
.hamburger--slider .hamburger-inner {
  top: 2px; }
  .hamburger--slider .hamburger-inner::before {
    top: 10px;
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-transition-timing-function: ease;
    transition-timing-function: ease;
    -webkit-transition-duration: 0.2s;
    transition-duration: 0.2s; }
  .hamburger--slider .hamburger-inner::after {
    top: 20px; }

.hamburger--slider.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
  transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--slider.is-active .hamburger-inner::before {
    -webkit-transform: rotate(-45deg) translate3d(-4.28571px, -6px, 0);
    transform: rotate(-45deg) translate3d(-4.28571px, -6px, 0);
    opacity: 0; }
  .hamburger--slider.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -20px, 0) rotate(-90deg);
    transform: translate3d(0, -20px, 0) rotate(-90deg); }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../images/ajax-loader.gif") center center no-repeat; }

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

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

.nav-arrows {
  position: absolute;
  top: 60%;
  width: 16px;
  height: 20px;
  cursor: pointer;
  background: url("../images/arrow.svg") no-repeat center;
  background-size: 70%; }
  @media screen and (min-width: 768px) {
    .nav-arrows {
      background-size: 100%;
      height: 30px; } }
  .nav-arrows.next-arrow {
    right: 8px; }
    @media screen and (min-width: 768px) {
      .nav-arrows.next-arrow {
        right: 20px; } }
  .nav-arrows.prev-arrow {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    left: 12px; }
    @media screen and (min-width: 768px) {
      .nav-arrows.prev-arrow {
        left: 20px; } }
  .nav-arrows.white-arrows {
    background: white;
    -webkit-mask: url("../images/arrow.svg") no-repeat;
    mask: url("../images/arrow.svg") no-repeat;
    -webkit-mask-size: 70%;
    mask-size: 70%; }
    @media screen and (min-width: 768px) {
      .nav-arrows.white-arrows {
        -webkit-mask-size: 100%;
        mask-size: 100%; } }
  .nav-arrows.slick-disabled {
    opacity: 0.3; }

.show-container .slick-wrapper {
  max-height: 1000px;
  overflow: hidden; }
  @media screen and (min-width: 768px) {
    .show-container .slick-wrapper {
      max-height: 700px; } }

/* the parent */
@media screen and (min-width: 768px) {
  .cards-holder .slick-list {
    margin: 0 -20px; } }

.cards-holder.carousel-holder {
  padding: 30px; }
  @media screen and (min-width: 768px) {
    .cards-holder.carousel-holder {
      padding: 30px 20px; } }

/*
== malihu jquery custom scrollbar plugin ==
Plugin URI: http://manos.malihu.gr/jquery-custom-content-scroller
*/
/*
CONTENTS:
	1. BASIC STYLE - Plugin's basic/essential CSS properties (normally, should not be edited).
	2. VERTICAL SCROLLBAR - Positioning and dimensions of vertical scrollbar.
	3. HORIZONTAL SCROLLBAR - Positioning and dimensions of horizontal scrollbar.
	4. VERTICAL AND HORIZONTAL SCROLLBARS - Positioning and dimensions of 2-axis scrollbars.
	5. TRANSITIONS - CSS3 transitions for hover events, auto-expanded and auto-hidden scrollbars.
	6. SCROLLBAR COLORS, OPACITY AND BACKGROUNDS
		6.1 THEMES - Scrollbar colors, opacity, dimensions, backgrounds etc. via ready-to-use themes.
*/
/*
------------------------------------------------------------------------------------------------------------------------
1. BASIC STYLE
------------------------------------------------------------------------------------------------------------------------
*/
.mCustomScrollbar {
  -ms-touch-action: pinch-zoom;
  touch-action: pinch-zoom;
  /* direct pointer events to js */ }

.mCustomScrollbar.mCS_no_scrollbar, .mCustomScrollbar.mCS_touch_action {
  -ms-touch-action: auto;
  touch-action: auto; }

.mCustomScrollBox {
  /* contains plugin's markup */
  position: relative;
  overflow: hidden;
  height: 100%;
  max-width: 100%;
  outline: none;
  direction: ltr; }

.mCSB_container {
  /* contains the original content */
  overflow: hidden;
  width: auto;
  height: auto; }

/*
------------------------------------------------------------------------------------------------------------------------
2. VERTICAL SCROLLBAR
y-axis
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_inside > .mCSB_container {
  margin-right: 30px; }

.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-right: 0; }

/* non-visible scrollbar */
.mCS-dir-rtl > .mCSB_inside > .mCSB_container {
  /* RTL direction/left-side scrollbar */
  margin-right: 0;
  margin-left: 30px; }

.mCS-dir-rtl > .mCSB_inside > .mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-left: 0; }

/* RTL direction/left-side scrollbar */
.mCSB_scrollTools {
  /* contains scrollbar markup (draggable element, dragger rail, buttons etc.) */
  position: absolute;
  width: 16px;
  height: auto;
  left: auto;
  top: 0;
  right: 0;
  bottom: 0; }

.mCSB_outside + .mCSB_scrollTools {
  right: -26px; }

/* scrollbar position: outside */
.mCS-dir-rtl > .mCSB_inside > .mCSB_scrollTools,
.mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools {
  /* RTL direction/left-side scrollbar */
  right: auto;
  left: 0; }

.mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools {
  left: -26px; }

/* RTL direction/left-side scrollbar (scrollbar position: outside) */
.mCSB_scrollTools .mCSB_draggerContainer {
  /* contains the draggable element and dragger rail markup */
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  height: auto; }

.mCSB_scrollTools a + .mCSB_draggerContainer {
  margin: 20px 0; }

.mCSB_scrollTools .mCSB_draggerRail {
  width: 2px;
  height: 100%;
  margin: 0 auto;
  border-radius: 16px; }

.mCSB_scrollTools .mCSB_dragger {
  /* the draggable element */
  cursor: pointer;
  width: 100%;
  height: 30px;
  /* minimum dragger height */
  z-index: 1; }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  /* the dragger element */
  position: relative;
  width: 4px;
  height: 100%;
  margin: 0 auto;
  border-radius: 16px;
  text-align: center; }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  width: 12px;
  /* auto-expanded scrollbar */ }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  width: 8px;
  /* auto-expanded scrollbar */ }

.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown {
  display: block;
  position: absolute;
  height: 20px;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer; }

.mCSB_scrollTools .mCSB_buttonDown {
  bottom: 0; }

/*
------------------------------------------------------------------------------------------------------------------------
3. HORIZONTAL SCROLLBAR
x-axis
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_horizontal.mCSB_inside > .mCSB_container {
  margin-right: 0;
  margin-bottom: 30px; }

.mCSB_horizontal.mCSB_outside > .mCSB_container {
  min-height: 100%; }

.mCSB_horizontal > .mCSB_container.mCS_no_scrollbar_x.mCS_x_hidden {
  margin-bottom: 0; }

/* non-visible scrollbar */
.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  width: auto;
  height: 16px;
  top: auto;
  right: 0;
  bottom: 0;
  left: 0; }

.mCustomScrollBox + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox + .mCSB_scrollTools + .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  bottom: -26px; }

/* scrollbar position: outside */
.mCSB_scrollTools.mCSB_scrollTools_horizontal a + .mCSB_draggerContainer {
  margin: 0 20px; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 2px;
  margin: 7px 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 30px;
  /* minimum dragger width */
  height: 100%;
  left: 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 4px;
  margin: 6px auto; }

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  height: 12px;
  /* auto-expanded scrollbar */
  margin: 2px auto; }

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  height: 8px;
  /* auto-expanded scrollbar */
  margin: 4px 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft,
.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
  display: block;
  position: absolute;
  width: 20px;
  height: 100%;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft {
  left: 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
  right: 0; }

/*
------------------------------------------------------------------------------------------------------------------------
4. VERTICAL AND HORIZONTAL SCROLLBARS
yx-axis
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_container_wrapper {
  position: absolute;
  height: auto;
  width: auto;
  overflow: hidden;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-right: 30px;
  margin-bottom: 30px; }

.mCSB_container_wrapper > .mCSB_container {
  padding-right: 30px;
  padding-bottom: 30px;
  box-sizing: border-box; }

.mCSB_vertical_horizontal > .mCSB_scrollTools.mCSB_scrollTools_vertical {
  bottom: 20px; }

.mCSB_vertical_horizontal > .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  right: 20px; }

/* non-visible horizontal scrollbar */
.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden + .mCSB_scrollTools.mCSB_scrollTools_vertical {
  bottom: 0; }

/* non-visible vertical scrollbar/RTL direction/left-side scrollbar */
.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden + .mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  right: 0; }

/* RTL direction/left-side scrollbar */
.mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  left: 20px; }

/* non-visible scrollbar/RTL direction/left-side scrollbar */
.mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden + .mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  left: 0; }

.mCS-dir-rtl > .mCSB_inside > .mCSB_container_wrapper {
  /* RTL direction/left-side scrollbar */
  margin-right: 0;
  margin-left: 30px; }

.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden > .mCSB_container {
  padding-right: 0; }

.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden > .mCSB_container {
  padding-bottom: 0; }

.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-right: 0;
  /* non-visible scrollbar */
  margin-left: 0; }

/* non-visible horizontal scrollbar */
.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden {
  margin-bottom: 0; }

/*
------------------------------------------------------------------------------------------------------------------------
5. TRANSITIONS
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_scrollTools,
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown,
.mCSB_scrollTools .mCSB_buttonLeft,
.mCSB_scrollTools .mCSB_buttonRight {
  -webkit-transition: opacity .2s ease-in-out, background-color .2s ease-in-out;
  transition: opacity .2s ease-in-out, background-color .2s ease-in-out; }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail {
  -webkit-transition: width .2s ease-out .2s, height .2s ease-out .2s, margin-left .2s ease-out .2s, margin-right .2s ease-out .2s, margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s, opacity .2s ease-in-out, background-color .2s ease-in-out;
  transition: width .2s ease-out .2s, height .2s ease-out .2s, margin-left .2s ease-out .2s, margin-right .2s ease-out .2s, margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s, opacity .2s ease-in-out, background-color .2s ease-in-out; }

/*
------------------------------------------------------------------------------------------------------------------------
6. SCROLLBAR COLORS, OPACITY AND BACKGROUNDS
------------------------------------------------------------------------------------------------------------------------
*/
/*
  ----------------------------------------
  6.1 THEMES
  ----------------------------------------
  */
/* default theme ("light") */
.mCSB_scrollTools {
  opacity: 0.75;
  filter: "alpha(opacity=75)";
  -ms-filter: "alpha(opacity=75)"; }

.mCS-autoHide > .mCustomScrollBox > .mCSB_scrollTools,
.mCS-autoHide > .mCustomScrollBox ~ .mCSB_scrollTools {
  opacity: 0;
  filter: "alpha(opacity=0)";
  -ms-filter: "alpha(opacity=0)"; }

.mCustomScrollbar > .mCustomScrollBox > .mCSB_scrollTools.mCSB_scrollTools_onDrag,
.mCustomScrollbar > .mCustomScrollBox ~ .mCSB_scrollTools.mCSB_scrollTools_onDrag,
.mCustomScrollBox:hover > .mCSB_scrollTools,
.mCustomScrollBox:hover ~ .mCSB_scrollTools,
.mCS-autoHide:hover > .mCustomScrollBox > .mCSB_scrollTools,
.mCS-autoHide:hover > .mCustomScrollBox ~ .mCSB_scrollTools {
  opacity: 1;
  filter: "alpha(opacity=100)";
  -ms-filter: "alpha(opacity=100)"; }

.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.4);
  filter: "alpha(opacity=40)";
  -ms-filter: "alpha(opacity=40)"; }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75);
  filter: "alpha(opacity=75)";
  -ms-filter: "alpha(opacity=75)"; }

.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85);
  filter: "alpha(opacity=85)";
  -ms-filter: "alpha(opacity=85)"; }

.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9);
  filter: "alpha(opacity=90)";
  -ms-filter: "alpha(opacity=90)"; }

.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown,
.mCSB_scrollTools .mCSB_buttonLeft,
.mCSB_scrollTools .mCSB_buttonRight {
  background-image: url(mCSB_buttons.png);
  /* css sprites */
  background-repeat: no-repeat;
  opacity: 0.4;
  filter: "alpha(opacity=40)";
  -ms-filter: "alpha(opacity=40)"; }

.mCSB_scrollTools .mCSB_buttonUp {
  background-position: 0 0;
  /*
      sprites locations
      light: 0 0, -16px 0, -32px 0, -48px 0, 0 -72px, -16px -72px, -32px -72px
      dark: -80px 0, -96px 0, -112px 0, -128px 0, -80px -72px, -96px -72px, -112px -72px
      */ }

.mCSB_scrollTools .mCSB_buttonDown {
  background-position: 0 -20px;
  /*
      sprites locations
      light: 0 -20px, -16px -20px, -32px -20px, -48px -20px, 0 -92px, -16px -92px, -32px -92px
      dark: -80px -20px, -96px -20px, -112px -20px, -128px -20px, -80px -92px, -96px -92px, -112 -92px
      */ }

.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: 0 -40px;
  /*
      sprites locations
      light: 0 -40px, -20px -40px, -40px -40px, -60px -40px, 0 -112px, -20px -112px, -40px -112px
      dark: -80px -40px, -100px -40px, -120px -40px, -140px -40px, -80px -112px, -100px -112px, -120px -112px
      */ }

.mCSB_scrollTools .mCSB_buttonRight {
  background-position: 0 -56px;
  /*
      sprites locations
      light: 0 -56px, -20px -56px, -40px -56px, -60px -56px, 0 -128px, -20px -128px, -40px -128px
      dark: -80px -56px, -100px -56px, -120px -56px, -140px -56px, -80px -128px, -100px -128px, -120px -128px
      */ }

.mCSB_scrollTools .mCSB_buttonUp:hover,
.mCSB_scrollTools .mCSB_buttonDown:hover,
.mCSB_scrollTools .mCSB_buttonLeft:hover,
.mCSB_scrollTools .mCSB_buttonRight:hover {
  opacity: 0.75;
  filter: "alpha(opacity=75)";
  -ms-filter: "alpha(opacity=75)"; }

.mCSB_scrollTools .mCSB_buttonUp:active,
.mCSB_scrollTools .mCSB_buttonDown:active,
.mCSB_scrollTools .mCSB_buttonLeft:active,
.mCSB_scrollTools .mCSB_buttonRight:active {
  opacity: 0.9;
  filter: "alpha(opacity=90)";
  -ms-filter: "alpha(opacity=90)"; }

/* theme: "dark" */
.mCS-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.15); }

.mCS-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -80px 0; }

.mCS-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -80px -20px; }

.mCS-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -80px -40px; }

.mCS-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -80px -56px; }

/* ---------------------------------------- */
/* theme: "light-2", "dark-2" */
.mCS-light-2.mCSB_scrollTools .mCSB_draggerRail,
.mCS-dark-2.mCSB_scrollTools .mCSB_draggerRail {
  width: 4px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 1px; }

.mCS-light-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 4px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75);
  border-radius: 1px; }

.mCS-light-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-light-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 4px;
  margin: 6px auto; }

.mCS-light-2.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85); }

.mCS-light-2.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-light-2.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9); }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px 0; }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -20px; }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -40px; }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -56px; }

/* theme: "dark-2" */
.mCS-dark-2.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 1px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 1px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-2.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-2.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px 0; }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -20px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -40px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -56px; }

/* ---------------------------------------- */
/* theme: "light-thick", "dark-thick" */
.mCS-light-thick.mCSB_scrollTools .mCSB_draggerRail,
.mCS-dark-thick.mCSB_scrollTools .mCSB_draggerRail {
  width: 4px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 2px; }

.mCS-light-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75);
  border-radius: 2px; }

.mCS-light-thick.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-thick.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 4px;
  margin: 6px 0; }

.mCS-light-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 6px;
  margin: 5px auto; }

.mCS-light-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85); }

.mCS-light-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-light-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9); }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -16px 0; }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -16px -20px; }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -20px -40px; }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -20px -56px; }

/* theme: "dark-thick" */
.mCS-dark-thick.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 2px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 2px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -96px 0; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -96px -20px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -100px -40px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -100px -56px; }

/* ---------------------------------------- */
/* theme: "light-thin", "dark-thin" */
.mCS-light-thin.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.1); }

.mCS-light-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 2px; }

.mCS-light-thin.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-thin.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%; }

.mCS-light-thin.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thin.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 2px;
  margin: 7px auto; }

/* theme "dark-thin" */
.mCS-dark-thin.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.15); }

.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -80px 0; }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -80px -20px; }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -80px -40px; }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -80px -56px; }

/* ---------------------------------------- */
/* theme "rounded", "rounded-dark", "rounded-dots", "rounded-dots-dark" */
.mCS-rounded.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.15); }

.mCS-rounded.mCSB_scrollTools .mCSB_dragger,
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger,
.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger {
  height: 14px; }

.mCS-rounded.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 14px;
  margin: 0 1px; }

.mCS-rounded.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-rounded-dark.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 14px; }

.mCS-rounded.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  height: 14px;
  margin: 1px 0; }

.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  width: 16px;
  /* auto-expanded scrollbar */
  height: 16px;
  margin: -1px 0; }

.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  width: 4px;
  /* auto-expanded scrollbar */ }

.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  height: 16px;
  /* auto-expanded scrollbar */
  width: 16px;
  margin: 0 -1px; }

.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  height: 4px;
  /* auto-expanded scrollbar */
  margin: 6px 0; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonUp {
  background-position: 0 -72px; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonDown {
  background-position: 0 -92px; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: 0 -112px; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonRight {
  background-position: 0 -128px; }

/* theme "rounded-dark", "rounded-dots-dark" */
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.15); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -80px -72px; }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -80px -92px; }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -80px -112px; }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -80px -128px; }

/* theme "rounded-dots", "rounded-dots-dark" */
.mCS-rounded-dots.mCSB_scrollTools_vertical .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools_vertical .mCSB_draggerRail {
  width: 4px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  background-color: transparent;
  background-position: center; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAANElEQVQYV2NkIAAYiVbw//9/Y6DiM1ANJoyMjGdBbLgJQAX/kU0DKgDLkaQAvxW4HEvQFwCRcxIJK1XznAAAAABJRU5ErkJggg==");
  background-repeat: repeat-y;
  opacity: 0.3;
  filter: "alpha(opacity=30)";
  -ms-filter: "alpha(opacity=30)"; }

.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  height: 4px;
  margin: 6px 0;
  background-repeat: repeat-x; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -16px -72px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -16px -92px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -20px -112px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -20px -128px; }

/* theme "rounded-dots-dark" */
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAALElEQVQYV2NkIAAYSVFgDFR8BqrBBEifBbGRTfiPZhpYjiQFBK3A6l6CvgAAE9kGCd1mvgEAAAAASUVORK5CYII="); }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -96px -72px; }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -96px -92px; }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -100px -112px; }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -100px -128px; }

/* ---------------------------------------- */
/* theme "3d", "3d-dark", "3d-thick", "3d-thick-dark" */
.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-repeat: repeat-y;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0.5)), color-stop(100%, rgba(255, 255, 255, 0)));
  background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%);
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%); }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  background-repeat: repeat-x;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0.5)), color-stop(100%, rgba(255, 255, 255, 0)));
  background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%);
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%); }

/* theme "3d", "3d-dark" */
.mCS-3d.mCSB_scrollTools_vertical .mCSB_dragger,
.mCS-3d-dark.mCSB_scrollTools_vertical .mCSB_dragger {
  height: 70px; }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 70px; }

.mCS-3d.mCSB_scrollTools,
.mCS-3d-dark.mCSB_scrollTools {
  opacity: 1;
  filter: "alpha(opacity=30)";
  -ms-filter: "alpha(opacity=30)"; }

.mCS-3d.mCSB_scrollTools .mCSB_draggerRail,
.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  border-radius: 16px; }

.mCS-3d.mCSB_scrollTools .mCSB_draggerRail,
.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail {
  width: 8px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2);
  box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.5), inset -1px 0 1px rgba(255, 255, 255, 0.2); }

.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #555; }

.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 8px; }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 8px;
  margin: 4px 0;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5), inset 0 -1px 1px rgba(255, 255, 255, 0.2); }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 8px;
  margin: 4px auto; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme "3d-dark" */
.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1);
  box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.1); }

.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1); }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* ---------------------------------------- */
/* theme: "3d-thick", "3d-thick-dark" */
.mCS-3d-thick.mCSB_scrollTools,
.mCS-3d-thick-dark.mCSB_scrollTools {
  opacity: 1;
  filter: "alpha(opacity=30)";
  -ms-filter: "alpha(opacity=30)"; }

.mCS-3d-thick.mCSB_scrollTools,
.mCS-3d-thick-dark.mCSB_scrollTools,
.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerContainer,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerContainer {
  border-radius: 7px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  border-radius: 5px; }

.mCSB_inside + .mCS-3d-thick.mCSB_scrollTools_vertical,
.mCSB_inside + .mCS-3d-thick-dark.mCSB_scrollTools_vertical {
  right: 1px; }

.mCS-3d-thick.mCSB_scrollTools_vertical,
.mCS-3d-thick-dark.mCSB_scrollTools_vertical {
  box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.1), inset 0 0 14px rgba(0, 0, 0, 0.5); }

.mCS-3d-thick.mCSB_scrollTools_horizontal,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal {
  bottom: 1px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1), inset 0 0 14px rgba(0, 0, 0, 0.5); }

.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.4);
  width: 12px;
  margin: 2px;
  position: absolute;
  height: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4); }

.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #555; }

.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  height: 12px;
  width: auto; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerContainer {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.05);
  box-shadow: inset 1px 1px 16px rgba(0, 0, 0, 0.1); }

.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme: "3d-thick-dark" */
.mCS-3d-thick-dark.mCSB_scrollTools {
  box-shadow: inset 0 0 14px rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools_horizontal {
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1), inset 0 0 14px rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.4), inset -1px 0 0 rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4), inset 0 -1px 0 rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #777; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerContainer {
  background-color: #fff;
  background-color: rgba(0, 0, 0, 0.05);
  box-shadow: inset 1px 1px 16px rgba(0, 0, 0, 0.1); }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* ---------------------------------------- */
/* theme: "minimal", "minimal-dark" */
.mCSB_outside + .mCS-minimal.mCSB_scrollTools_vertical,
.mCSB_outside + .mCS-minimal-dark.mCSB_scrollTools_vertical {
  right: 0;
  margin: 12px 0; }

.mCustomScrollBox.mCS-minimal + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox.mCS-minimal + .mCSB_scrollTools + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox.mCS-minimal-dark + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox.mCS-minimal-dark + .mCSB_scrollTools + .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  bottom: 0;
  margin: 0 12px; }

/* RTL direction/left-side scrollbar */
.mCS-dir-rtl > .mCSB_outside + .mCS-minimal.mCSB_scrollTools_vertical,
.mCS-dir-rtl > .mCSB_outside + .mCS-minimal-dark.mCSB_scrollTools_vertical {
  left: 0;
  right: auto; }

.mCS-minimal.mCSB_scrollTools .mCSB_draggerRail,
.mCS-minimal-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent; }

.mCS-minimal.mCSB_scrollTools_vertical .mCSB_dragger,
.mCS-minimal-dark.mCSB_scrollTools_vertical .mCSB_dragger {
  height: 50px; }

.mCS-minimal.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-minimal-dark.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 50px; }

.mCS-minimal.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.2);
  filter: "alpha(opacity=20)";
  -ms-filter: "alpha(opacity=20)"; }

.mCS-minimal.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-minimal.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.5);
  filter: "alpha(opacity=50)";
  -ms-filter: "alpha(opacity=50)"; }

/* theme: "minimal-dark" */
.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2);
  filter: "alpha(opacity=20)";
  -ms-filter: "alpha(opacity=20)"; }

.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.5);
  filter: "alpha(opacity=50)";
  -ms-filter: "alpha(opacity=50)"; }

/* ---------------------------------------- */
/* theme "light-3", "dark-3" */
.mCS-light-3.mCSB_scrollTools .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail {
  width: 6px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2); }

.mCS-light-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px; }

.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 6px;
  margin: 5px 0; }

.mCS-light-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-light-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  width: 12px; }

.mCS-light-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-light-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  height: 12px;
  margin: 2px 0; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme "dark-3" */
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1); }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* ---------------------------------------- */
/* theme "inset", "inset-dark", "inset-2", "inset-2-dark", "inset-3", "inset-3-dark" */
.mCS-inset.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-3.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail {
  width: 12px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2); }

.mCS-inset.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px;
  margin: 3px 5px;
  position: absolute;
  height: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.mCS-inset.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  height: 6px;
  margin: 5px 3px;
  position: absolute;
  width: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.mCS-inset.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-3.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-3-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 12px;
  margin: 2px 0; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme "inset-dark", "inset-2-dark", "inset-3-dark" */
.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* theme "inset-2", "inset-2-dark" */
.mCS-inset-2.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent;
  border-width: 1px;
  border-style: solid;
  border-color: #fff;
  border-color: rgba(255, 255, 255, 0.2);
  box-sizing: border-box; }

.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail {
  border-color: #000;
  border-color: rgba(0, 0, 0, 0.2); }

/* theme "inset-3", "inset-3-dark" */
.mCS-inset-3.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.6); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.6); }

.mCS-inset-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-inset-3.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-inset-3.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-3.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9); }

/* ---------------------------------------- */
/**
 * Featherlight – ultra slim jQuery lightbox
 * Version 1.5.0 - http://noelboss.github.io/featherlight/
 *
 * Copyright 2016, Noël Raoul Bossart (http://www.noelboss.com)
 * MIT Licensed.
**/
@media all {
  .featherlight {
    display: none;
    /* dimensions: spanning the background from edge to edge */
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2147483647;
    /* z-index needs to be >= elements on the site. */
    /* position: centering content */
    text-align: center;
    /* insures that the ::before pseudo element doesn't force wrap with fixed width content; */
    white-space: nowrap;
    /* styling */
    cursor: pointer;
    background: #333;
    /* IE8 "hack" for nested featherlights */
    background: transparent;
    /* support for nested featherlights. Does not work in IE8 (use JS to fix) */
    /* contains the content */ }
    .featherlight:last-of-type {
      background: rgba(0, 0, 0, 0.8); }
    .featherlight:before {
      /* position: trick to center content vertically */
      content: '';
      display: inline-block;
      height: 100%;
      vertical-align: middle;
      margin-right: -0.25em; }
    .featherlight .featherlight-content {
      /* make content container for positioned elements (close button) */
      position: relative;
      /* position: centering vertical and horizontal */
      text-align: left;
      vertical-align: middle;
      display: inline-block;
      /* dimensions: cut off images */
      overflow: auto;
      padding: 25px 25px 0;
      border-bottom: 25px solid transparent;
      /* dimensions: handling large content */
      margin-left: 5%;
      margin-right: 5%;
      max-height: 95%;
      /* styling */
      background: #fff;
      cursor: auto;
      /* reset white-space wrapping */
      white-space: normal; }
    .featherlight .featherlight-inner {
      /* make sure its visible */
      display: block; }
    .featherlight .featherlight-close-icon {
      /* position: centering vertical and horizontal */
      position: absolute;
      z-index: 9999;
      top: 0;
      right: 0;
      /* dimensions: 25px x 25px */
      line-height: 25px;
      width: 25px;
      /* styling */
      cursor: pointer;
      text-align: center;
      font-family: Arial, sans-serif;
      background: #fff;
      /* Set the background in case it overlaps the content */
      background: rgba(255, 255, 255, 0.3);
      color: #000; }
    .featherlight .featherlight-image {
      /* styling */
      width: 100%; }
    .featherlight iframe {
      /* styling */
      border: none; }
    .featherlight * {
      /* See https://github.com/noelboss/featherlight/issues/42 */
      box-sizing: border-box; }
  .featherlight-iframe .featherlight-content {
    /* removed the border for image croping since iframe is edge to edge */
    border-bottom: 0;
    padding: 0; } }

/* handling phones and small screens */
@media only screen and (max-width: 1024px) {
  .featherlight .featherlight-content {
    /* dimensions: maximize lightbox with for small screens */
    margin-left: 10px;
    margin-right: 10px;
    max-height: 98%;
    padding: 10px 10px 0;
    border-bottom: 10px solid transparent; } }

/**
 * Featherlight Gallery – an extension for the ultra slim jQuery lightbox
 * Version 1.5.0 - http://noelboss.github.io/featherlight/
 *
 * Copyright 2016, Noël Raoul Bossart (http://www.noelboss.com)
 * MIT Licensed.
**/
@media all {
  .featherlight-next,
  .featherlight-previous {
    display: block;
    position: absolute;
    top: 25px;
    right: 25px;
    bottom: 0;
    left: 80%;
    cursor: pointer;
    /* preventing text selection */
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    /* IE9 hack, otherwise navigation doesn't appear */
    background: transparent; }
    .featherlight-next:hover,
    .featherlight-previous:hover {
      background: rgba(255, 255, 255, 0.25); }
      .featherlight-next:hover span,
      .featherlight-previous:hover span {
        display: inline-block; }
    .featherlight-next span,
    .featherlight-previous span {
      display: none;
      position: absolute;
      top: 50%;
      left: 5%;
      width: 82%;
      /* center horizontally */
      text-align: center;
      font-size: 80px;
      line-height: 80px;
      /* center vertically */
      margin-top: -40px;
      text-shadow: 0px 0px 5px #fff;
      color: #fff;
      font-style: normal;
      font-weight: normal; }
  .featherlight-previous {
    left: 25px;
    right: 80%; }
  .featherlight-next span {
    right: 5%;
    left: auto; }
  /* Hide navigation while loading */
  .featherlight-loading .featherlight-previous, .featherlight-loading .featherlight-next {
    display: none; } }

/* Always display arrows on touch devices */
@media only screen and (max-device-width: 1024px) {
  .featherlight-next:hover,
  .featherlight-previous:hover {
    background: none; }
  .featherlight-next span,
  .featherlight-previous span {
    display: block; } }

/* handling phones and small screens */
@media only screen and (max-width: 1024px) {
  .featherlight-next,
  .featherlight-previous {
    top: 10px;
    right: 10px;
    left: 85%; }
  .featherlight-previous {
    left: 10px;
    right: 85%; }
  .featherlight-next span,
  .featherlight-previous span {
    margin-top: -30px;
    font-size: 40px; } }

.programmation-cta {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  position: relative;
  overflow: visible;
  overflow: visible;
  padding: 80px 20px;
  background: url("../images/cta-bg.png") #ffffff no-repeat right;
  background-size: cover;
  text-align: center; }
  .programmation-cta:before {
    content: '';
    border-top: 2px solid #7DCCC1;
    border-bottom: 2px solid #7DCCC1;
    width: 46px;
    height: 11px;
    position: absolute;
    top: -8px;
    left: -webkit-calc((100% - 46px) / 2);
    left: calc((100% - 46px) / 2); }
  @media screen and (min-width: 768px) {
    .programmation-cta {
      background-size: contain; } }
  .programmation-cta .title-1 {
    font-size: 30px;
    font-size: 1.875rem; }
  .programmation-cta p {
    font-size: 18px;
    margin: 20px auto 40px;
    max-width: 780px; }
  .programmation-cta .button, .programmation-cta .room-corpdoc-link {
    font-size: 14px;
    margin: 0; }

.newsletter-subscribe {
  /* TODO: / HACK / DECIDE ... overflow: hidden; ? */
  clear: both;
  overflow: hidden;
  padding: 80px 40px;
  text-align: center;
  background: #F4F4F4; }
  .newsletter-subscribe.absolute-clearfix {
    overflow: visible; }
    .newsletter-subscribe.absolute-clearfix:after {
      content: '';
      display: block;
      clear: both; }
  @media screen and (max-width: 1023px) {
    .newsletter-subscribe {
      padding: 40px 20px; } }
  .newsletter-subscribe .title-2 {
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    position: relative;
    overflow: hidden; }
  .newsletter-subscribe .newsletter-form {
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    max-width: 668px;
    margin: 40px auto 0; }
    @media screen and (max-width: 768px) {
      .newsletter-subscribe .newsletter-form {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column; } }
  .newsletter-subscribe .newsletter-input {
    width: -webkit-calc((100% / 3) * 2);
    width: calc((100% / 3) * 2);
    max-width: 530px;
    margin-right: 25px;
    padding-bottom: 5px;
    font-size: 18px;
    border: 0;
    border-bottom: 1px solid #262724;
    background: transparent; }
    @media screen and (max-width: 768px) {
      .newsletter-subscribe .newsletter-input {
        width: 100%;
        margin: 26px auto; } }
  .newsletter-subscribe .newsletter-submit {
    max-width: 530px;
    border: 0;
    font-size: 14px;
    padding: 14px 25px 10px;
    margin: auto; }

header .header-facebook {
  display: inline-block;
  float: right;
  margin: 7px 0 0 20px;
  height: 24px;
  width: 24px;
  background: url("../images/h-facebook.svg") no-repeat; }
  @media screen and (max-width: 1023px) {
    header .header-facebook {
      margin-top: 0;
      margin-right: 10px;
      margin-left: auto; } }

header .desktop-header {
  display: none;
  background: #ffffff;
  position: fixed;
  z-index: 9999;
  width: 100%; }
  @media screen and (min-width: 1024px) {
    header .desktop-header {
      display: block; } }
  header .desktop-header .top-header {
    background: #262724;
    text-align: right;
    padding: 0 20px; }
    @media screen and (min-width: 1200px) {
      header .desktop-header .top-header {
        padding: 0; } }
    header .desktop-header .top-header .top-header-menu {
      width: 100%;
      max-width: 960px;
      margin: 0 auto;
      position: relative;
      overflow: hidden;
      /* TODO: / HACK / DECIDE ... overflow: hidden; ? */
      clear: both;
      overflow: hidden;
      max-width: 1200px; }
      header .desktop-header .top-header .top-header-menu.absolute-clearfix {
        overflow: visible; }
        header .desktop-header .top-header .top-header-menu.absolute-clearfix:after {
          content: '';
          display: block;
          clear: both; }
      header .desktop-header .top-header .top-header-menu a {
        color: #ffffff;
        text-transform: uppercase;
        margin-right: 20px;
        font-size: 12px; }
        @media (min-width: 1024px) and (max-width: 1070px) {
          header .desktop-header .top-header .top-header-menu a {
            margin-right: 15px; } }
      header .desktop-header .top-header .top-header-menu .header-phone {
        display: inline-block;
        margin: 0;
        padding: 10px 12px;
        font-size: 16px;
        color: #ffffff;
        font-family: "Lato", sans-serif;
        font-weight: 500;
        background: #7DCCC1; }
  header .desktop-header .main-header {
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    padding: 0 20px;
    max-width: 1200px; }
    @media screen and (min-width: 1200px) {
      header .desktop-header .main-header {
        padding: 0; } }
    header .desktop-header .main-header .header-logo {
      padding: 25px 0;
      display: inline-block; }
      header .desktop-header .main-header .header-logo img {
        -webkit-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
        max-width: 163px; }
        @media (min-width: 1024px) and (max-width: 1035px) {
          header .desktop-header .main-header .header-logo img {
            max-width: 140px; } }
    header .desktop-header .main-header .header-menu {
      padding: 50px 0 0;
      -webkit-transition: padding 0.3s ease-in-out;
      transition: padding 0.3s ease-in-out; }
      header .desktop-header .main-header .header-menu a {
        font-size: 16px;
        text-transform: uppercase;
        margin-right: 20px;
        position: relative; }
        @media (max-width: 1090px) {
          header .desktop-header .main-header .header-menu a {
            font-size: 14px; } }
        header .desktop-header .main-header .header-menu a:last-child {
          margin-right: 0; }
        header .desktop-header .main-header .header-menu a:before, header .desktop-header .main-header .header-menu a:after {
          content: '';
          display: block;
          position: absolute;
          background: #7DCCC1;
          opacity: 0.5;
          width: 0;
          height: 4px;
          bottom: -44px;
          -webkit-transition: width 0.35s ease-in-out;
          transition: width 0.35s ease-in-out; }
        header .desktop-header .main-header .header-menu a:before {
          left: -10px; }
        header .desktop-header .main-header .header-menu a:after {
          right: -10px; }
        header .desktop-header .main-header .header-menu a:hover:before, header .desktop-header .main-header .header-menu a:hover:after, header .desktop-header .main-header .header-menu a.current:before, header .desktop-header .main-header .header-menu a.current:after {
          width: -webkit-calc(100% + 18px);
          width: calc(100% + 18px); }
  header .desktop-header.fixed-state .main-header .header-logo img {
    max-width: 120px; }
  header .desktop-header.fixed-state .main-header .header-menu {
    padding-top: 40px; }
    header .desktop-header.fixed-state .main-header .header-menu a:before,
    header .desktop-header.fixed-state .main-header .header-menu a:after {
      bottom: -37px; }

header .mobile-menu {
  display: block;
  position: fixed;
  z-index: 9999;
  width: 100%;
  background: #ffffff;
  box-shadow: 0px 5px 15px -5px rgba(0, 0, 0, 0.2);
  max-height: 100vh;
  overflow: scroll; }
  @media screen and (min-width: 1024px) {
    header .mobile-menu {
      display: none; } }
  header .mobile-menu .menu-wrapper {
    padding: 10px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
    header .mobile-menu .menu-wrapper .header-logo {
      display: inline-block;
      padding: 7.5px 15px; }
      header .mobile-menu .menu-wrapper .header-logo img {
        max-width: 160px; }
        @media screen and (max-width: 1023px) {
          header .mobile-menu .menu-wrapper .header-logo img {
            max-width: 100px; } }
  header .mobile-menu .header-nav {
    display: none; }
    header .mobile-menu .header-nav .main-menu .menu-links {
      display: block;
      padding: 20px 20px 10px;
      font-size: 20px;
      text-transform: uppercase;
      border-bottom: 1px solid #DBDBDB; }
      header .mobile-menu .header-nav .main-menu .menu-links:first-of-type {
        box-shadow: inset 0 10px 15px -10px rgba(0, 0, 0, 0.2); }
    header .mobile-menu .header-nav .sub-menu {
      background: #F4F4F4;
      padding: 20px; }
      header .mobile-menu .header-nav .sub-menu .menu-links {
        display: block;
        font-size: 16px;
        text-transform: uppercase;
        margin: 10px 0; }
        header .mobile-menu .header-nav .sub-menu .menu-links:first-of-type {
          margin-top: 0; }
        header .mobile-menu .header-nav .sub-menu .menu-links:last-of-type {
          margin: 0; }
    header .mobile-menu .header-nav .header-phone {
      display: block;
      width: 100%;
      font-size: 20px;
      background: #7DCCC1;
      margin: 0;
      padding: 15px 0;
      text-align: center;
      color: #ffffff;
      font-family: "Lato", sans-serif; }

.footer-bottom {
  padding: 80px 40px;
  background: #000;
  text-align: center; }
  @media screen and (max-width: 1023px) {
    .footer-bottom {
      padding: 40px 20px; } }
  @media screen and (min-width: 1024px) {
    .footer-bottom {
      text-align: left; } }
  .footer-bottom p, .footer-bottom h3 {
    color: #ffffff; }
  .footer-bottom .footer-link {
    color: #7DCCC1; }
    .footer-bottom .footer-link:hover, .footer-bottom .footer-link:focus {
      color: #40a395; }
  .footer-bottom .footer-infos {
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row; }
    @media screen and (max-width: 1023px) {
      .footer-bottom .footer-infos {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-bottom: 40px; } }
  .footer-bottom .footer-about,
  .footer-bottom .footer-address,
  .footer-bottom .footer-contact,
  .footer-bottom .footer-social {
    width: 25%;
    margin-right: 40px; }
    @media screen and (max-width: 1023px) {
      .footer-bottom .footer-about,
      .footer-bottom .footer-address,
      .footer-bottom .footer-contact,
      .footer-bottom .footer-social {
        width: 100%;
        margin-bottom: 24px; } }
  .footer-bottom .footer-social {
    margin-right: 0; }
    @media screen and (max-width: 1023px) {
      .footer-bottom .footer-social {
        margin-bottom: 0; } }
  .footer-bottom .f-logo {
    max-width: 150px; }
  .footer-bottom .fb-like {
    display: block;
    margin: 15px 0; }

.programmation-categories-holder {
  display: inline-block;
  text-align: center;
  margin: 12px 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }
  .programmation-categories-holder .button-holder {
    display: inline-block;
    text-align: center;
    margin: 12px 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
    .programmation-categories-holder .button-holder:first-of-type, .programmation-categories-holder .button-holder:nth-child(odd) {
      margin-right: 20px; }
    @media screen and (min-width: 320px) {
      .programmation-categories-holder .button-holder {
        margin-right: 20px; } }
    @media screen and (min-width: 768px) {
      .programmation-categories-holder .button-holder {
        width: 65px; } }
    .programmation-categories-holder .button-holder:last-of-type {
      margin-right: 0; }
    .programmation-categories-holder .button-holder button {
      cursor: pointer; }
    .programmation-categories-holder .button-holder label {
      display: none;
      color: #262724;
      margin-top: 10px; }
      @media screen and (min-width: 768px) {
        .programmation-categories-holder .button-holder label {
          display: block; } }
  .programmation-categories-holder .btn-wrapper {
    position: relative;
    width: 38px;
    height: 38px;
    margin: auto;
    opacity: 1;
    -webkit-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out; }
    .programmation-categories-holder .btn-wrapper:hover {
      opacity: 0.7; }
    .programmation-categories-holder .btn-wrapper .cat-holder {
      position: absolute;
      top: 0px;
      left: 0px;
      opacity: 0;
      z-index: 999; }
    .programmation-categories-holder .btn-wrapper .btn-overlay {
      height: 100%;
      width: 100%;
      opacity: 1;
      z-index: 1; }

/*
 * 		Modules
 * 		-------
 */
.button, .room-corpdoc-link {
  display: block;
  width: 100%;
  padding: 12px 25px;
  margin: 0px 12px 10px 0;
  text-transform: uppercase;
  color: #ffffff;
  background: #7DCCC1;
  border-radius: 2px;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
  cursor: pointer; }
  .button.grey, .grey.room-corpdoc-link {
    background: #3A3939; }
  .button.pdf, .pdf.room-corpdoc-link {
    background-repeat: no-repeat;
    background-image: url("../images/pdf-picto.svg");
    background-position: center right 15px;
    padding-right: 60px; }
  @media screen and (min-width: 768px) {
    .button, .room-corpdoc-link {
      display: inline-block;
      width: auto; } }
  .button:hover, .room-corpdoc-link:hover {
    color: #ffffff;
    background: #60c1b3; }
    .button:hover.grey, .room-corpdoc-link:hover.grey {
      background: #5a5c55; }
    .button:hover.pdf, .room-corpdoc-link:hover.pdf {
      background-repeat: no-repeat;
      background-image: url("../images/pdf-picto.svg");
      background-position: center right 15px; }

.half {
  width: 100%; }
  @media screen and (min-width: 768px) {
    .half {
      width: 50%;
      float: left; } }

.hero-container {
  background: url("../images/bg.svg") center center no-repeat;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: left;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: middle;
  -webkit-align-items: middle;
  -ms-flex-align: middle;
  align-items: middle; }
  .hero-container .hero-title {
    text-align: center;
    color: #ffffff; }
  @media screen and (min-width: 1024px) {
    .hero-container {
      overflow: hidden;
      padding: 105px 0 85px; } }
  .hero-container .hero-contents {
    max-height: 1000px;
    overflow: hidden; }
    @media screen and (min-width: 1024px) {
      .hero-container .hero-contents {
        padding: 20px 0 20px 20px;
        max-height: 500px; } }
    .hero-container .hero-contents .slick-list {
      overflow: visible; }
    .hero-container .hero-contents .hero-slides {
      position: relative;
      pointer-events: none; }
      .hero-container .hero-contents .hero-slides .js-featured {
        width: -webkit-calc(100% - 65px);
        width: calc(100% - 65px); }
      .hero-container .hero-contents .hero-slides .hero-img-wrapper {
        position: relative; }
        .hero-container .hero-contents .hero-slides .hero-img-wrapper .img-wrapper {
          position: relative;
          display: inline-block;
          overflow: hidden;
          pointer-events: auto;
          border: 2px dotted #7DCCC1;
          max-height: 458px; }
          .hero-container .hero-contents .hero-slides .hero-img-wrapper .img-wrapper .hero-img {
            width: 100%; }
            @media screen and (min-width: 1024px) {
              .hero-container .hero-contents .hero-slides .hero-img-wrapper .img-wrapper .hero-img {
                border-right: 0;
                max-width: 740px;
                -webkit-transform: scale(1, 1);
                -ms-transform: scale(1, 1);
                transform: scale(1, 1);
                -webkit-transition: all 1s cubic-bezier(0, 0, 0.175, 1);
                transition: all 1s cubic-bezier(0, 0, 0.175, 1); } }
          .hero-container .hero-contents .hero-slides .hero-img-wrapper .img-wrapper:hover .hero-img {
            -webkit-transform: scale(1.1, 1.1);
            -ms-transform: scale(1.1, 1.1);
            transform: scale(1.1, 1.1); }
        .hero-container .hero-contents .hero-slides .hero-img-wrapper .show-date {
          background: rgba(38, 39, 36, 0.6);
          padding: 10px;
          position: absolute;
          display: block;
          top: 20px;
          left: 0;
          color: #ffffff;
          text-transform: uppercase;
          margin: 0;
          z-index: 1; }
          @media screen and (min-width: 1200px) {
            .hero-container .hero-contents .hero-slides .hero-img-wrapper .show-date {
              left: -20px;
              background: #262724; } }
      .hero-container .hero-contents .hero-slides .hero-info {
        position: relative;
        background: #ffffff;
        padding: 20px;
        margin: -60px 20px 0; }
        @media screen and (min-width: 1024px) {
          .hero-container .hero-contents .hero-slides .hero-info {
            position: absolute;
            top: -18px;
            right: 60px;
            max-width: 410px;
            width: 100%;
            height: 495px;
            padding: 40px;
            margin: 0; } }
        .hero-container .hero-contents .hero-slides .hero-info .title-1 {
          margin-bottom: 15px; }
          @media screen and (min-width: 480px) {
            .hero-container .hero-contents .hero-slides .hero-info .title-1 {
              margin-bottom: 30px; } }
        .hero-container .hero-contents .hero-slides .hero-info .show-details {
          position: relative;
          bottom: 0;
          margin-top: 40px; }
          @media screen and (min-width: 1024px) {
            .hero-container .hero-contents .hero-slides .hero-info .show-details {
              position: absolute;
              bottom: 20px;
              margin-top: 78px;
              width: -webkit-calc(100% - 40px);
              width: calc(100% - 40px); } }
          .hero-container .hero-contents .hero-slides .hero-info .show-details .show-category {
            position: absolute;
            top: 2px;
            right: 0; }
            @media screen and (min-width: 1024px) {
              .hero-container .hero-contents .hero-slides .hero-info .show-details .show-category {
                bottom: 10px;
                right: 20px;
                top: auto; } }
          .hero-container .hero-contents .hero-slides .hero-info .show-details .button, .hero-container .hero-contents .hero-slides .hero-info .show-details .room-corpdoc-link {
            pointer-events: auto; }
        .hero-container .hero-contents .hero-slides .hero-info .show-status.postponed, .hero-container .hero-contents .hero-slides .hero-info .show-status.sold-out {
          color: #E91D23; }
        .hero-container .hero-contents .hero-slides .hero-info .show-status.initial-date {
          color: #324D8F; }
  .hero-container .hero-nav {
    position: absolute;
    bottom: -36px;
    background: white;
    height: 60px;
    right: 40px;
    width: -webkit-calc(100% - 80px);
    width: calc(100% - 80px); }
    @media screen and (min-width: 480px) {
      .hero-container .hero-nav {
        bottoM: -60px; } }
    @media screen and (min-width: 1024px) {
      .hero-container .hero-nav {
        top: 20px;
        right: 0;
        height: 100%;
        max-height: 460px;
        width: auto; } }
    .hero-container .hero-nav .next-arrow, .hero-container .hero-nav .prev-arrow {
      float: right;
      position: relative;
      width: 50%;
      height: 100%;
      cursor: pointer;
      box-shadow: inset 0px 15px 15px -15px rgba(0, 0, 0, 0.22);
      -webkit-transition: background 0.3s ease-in-out;
      transition: background 0.3s ease-in-out; }
      @media screen and (min-width: 1024px) {
        .hero-container .hero-nav .next-arrow, .hero-container .hero-nav .prev-arrow {
          float: none;
          height: 50%;
          width: 60px;
          box-shadow: inset 15px 0px 15px -15px rgba(0, 0, 0, 0.22); } }
      .hero-container .hero-nav .next-arrow:before, .hero-container .hero-nav .prev-arrow:before {
        content: '';
        display: block;
        position: absolute;
        width: 100%;
        height: 60px;
        background: url("../images/arrow.svg") no-repeat center; }
        @media screen and (min-width: 1024px) {
          .hero-container .hero-nav .next-arrow:before, .hero-container .hero-nav .prev-arrow:before {
            height: 30px;
            left: 20px;
            top: 94px;
            width: 16px; } }
    .hero-container .hero-nav .next-arrow {
      background: #ffffff; }
      .hero-container .hero-nav .next-arrow:hover {
        background: #e6e6e6; }
    .hero-container .hero-nav .prev-arrow {
      background: #F4F4F4; }
      .hero-container .hero-nav .prev-arrow:hover {
        background: #dbdbdb; }
      .hero-container .hero-nav .prev-arrow:before {
        -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        transform: rotate(180deg); }
  .hero-container.common-hero {
    background-image: url("../images/bg-hero-common.jpg");
    background-position: center;
    text-align: center;
    height: 290px; }
    @media screen and (max-width: 768px) {
      .hero-container.common-hero.location {
        height: 350px; } }
    .hero-container.common-hero.programmation {
      height: 400px; }
      @media screen and (max-width: 768px) {
        .hero-container.common-hero.programmation {
          height: 370px; }
          .hero-container.common-hero.programmation .hero-contents {
            margin-top: -130px; } }
    @media screen and (max-width: 1024px) {
      .hero-container.common-hero.generic-hero {
        min-height: 200px; } }
    @media screen and (max-width: 768px) {
      .hero-container.common-hero {
        height: 328px; } }
  .hero-container.show-hero {
    background: #262724;
    padding-bottom: 23%;
    text-align: center; }
    @media screen and (max-width: 1023px) {
      .hero-container.show-hero {
        padding-top: 40px; } }
    .hero-container.show-hero .hero-title {
      font-size: 36px;
      font-size: 2.25rem; }
    .hero-container.show-hero .show-name {
      color: #ffffff;
      font-size: 22px;
      font-size: 1.375rem;
      margin: 22px 0;
      text-transform: none; }

.facebook-footer {
  background: #324D8F;
  color: #ffffff;
  text-align: center;
  padding: 30px 0; }
  .facebook-footer .like-wrapper {
    display: table;
    margin: auto; }
    @media screen and (max-width: 768px) {
      .facebook-footer .like-wrapper {
        padding: 0 20px; } }
    .facebook-footer .like-wrapper h3, .facebook-footer .like-wrapper .fb-like {
      display: table-cell;
      vertical-align: middle; }
    .facebook-footer .like-wrapper .fb-like {
      padding-left: 20px; }

.search-form input {
  border: 0;
  padding: 20px;
  font-size: 18px;
  width: 100%;
  background: url("../images/search-picto.svg") no-repeat center right 20px; }

.show-search-container {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  text-align: center;
  position: relative;
  margin-top: -160px;
  color: #ffffff;
  padding: 0 20px; }
  @media screen and (max-width: 768px) {
    .show-search-container {
      margin-top: -220px; } }
  .show-search-container p {
    font-size: 18px;
    margin: 20px 0; }
  .show-search-container .keyword-search {
    width: 100%;
    padding-bottom: 5px;
    margin-bottom: 20px;
    font-size: 18px;
    border: 0;
    border-bottom: 1px solid #ffffff;
    background: transparent;
    color: #ffffff; }
    @media screen and (min-width: 768px) {
      .show-search-container .keyword-search {
        width: -webkit-calc(100% - 174px);
        width: calc(100% - 174px);
        margin-bottom: 0; } }
    @media screen and (min-width: 1024px) {
      .show-search-container .keyword-search {
        margin-right: 20px; } }
  .show-search-container .keyword-submit {
    border: 0;
    font-size: 14px;
    padding: 14px 25px 10px;
    margin: 0; }
  .show-search-container .filters-holder {
    /* TODO: / HACK / DECIDE ... overflow: hidden; ? */
    clear: both;
    overflow: hidden;
    margin: 30px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row; }
    .show-search-container .filters-holder.absolute-clearfix {
      overflow: visible; }
      .show-search-container .filters-holder.absolute-clearfix:after {
        content: '';
        display: block;
        clear: both; }
    @media screen and (max-width: 879px) {
      .show-search-container .filters-holder {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column; } }
    .show-search-container .filters-holder label {
      color: #262724;
      text-transform: uppercase;
      font-family: NeutraDemi;
      padding: 10px 15px 10px 0;
      margin-right: 15px;
      width: 20%;
      text-align: left; }
      @media screen and (max-width: 879px) {
        .show-search-container .filters-holder label {
          width: 100%;
          text-align: center; } }
    .show-search-container .filters-holder .select-wrapper {
      overflow: hidden;
      width: 100%;
      position: relative;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .show-search-container .filters-holder .select-wrapper:after {
        content: '';
        background: url("../images/arrow-white.svg") #7DCCC1 no-repeat center;
        position: absolute;
        display: block;
        right: 0;
        top: 0;
        width: 42px;
        height: 100%;
        pointer-events: none;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg); }
      .show-search-container .filters-holder .select-wrapper select {
        width: 100%;
        border: none;
        background: #ffffff;
        padding: 10px 15px;
        font-size: 18px;
        cursor: pointer; }
        @media screen and (max-width: 767px) {
          .show-search-container .filters-holder .select-wrapper select {
            width: 100%; } }

.show-container {
  background: #ffffff; }
  .show-container .artist {
    margin: 5px 0 0; }
  .show-container .show-name {
    margin: 0 0 20px; }
    .show-container .show-name.title-3, .show-container .generic-block:not(:first-of-type) h2.show-name, .generic-block:not(:first-of-type) .show-container h2.show-name {
      margin-bottom: 0; }
  .show-container .show-name, .show-container .show-summary {
    font-size: 18px;
    line-height: 24px; }
  .show-container .show-details .show-status {
    font-size: 14px;
    text-transform: uppercase;
    margin: 0;
    font-weight: bolder; }
    .show-container .show-details .show-status.sold-out {
      color: #E91D23; }
  .show-container .show-details .show-price {
    margin: 5px 0 20px;
    font-size: 18px;
    text-transform: uppercase; }
    .show-container .show-details .show-price span {
      color: #7DCCC1; }
  .show-container .show-details .button, .show-container .show-details .room-corpdoc-link {
    padding: 12px 0 10px;
    text-align: center; }
    @media screen and (min-width: 768px) {
      .show-container .show-details .button, .show-container .show-details .room-corpdoc-link {
        width: 105px; } }
    .show-container .show-details .button:last-of-type, .show-container .show-details .room-corpdoc-link:last-of-type {
      margin: 0; }
  .show-container .show-details .initial-date {
    color: #324D8F; }
  .show-container .show-details.sold-out .show-status, .show-container .show-details.postponed .show-status, .show-container .show-details.cancelled .show-status {
    color: #E91D23; }
    .show-container .show-details.sold-out .show-status.initial-date, .show-container .show-details.postponed .show-status.initial-date, .show-container .show-details.cancelled .show-status.initial-date {
      color: #324D8F; }
  .show-container .show-details.sold-out .button.buy-button, .show-container .show-details.sold-out .buy-button.room-corpdoc-link, .show-container .show-details.postponed .button.buy-button, .show-container .show-details.postponed .buy-button.room-corpdoc-link, .show-container .show-details.cancelled .button.buy-button, .show-container .show-details.cancelled .buy-button.room-corpdoc-link {
    display: none; }
  .show-container .show-details.sold-out .button.more-details, .show-container .show-details.sold-out .more-details.room-corpdoc-link, .show-container .show-details.postponed .button.more-details, .show-container .show-details.postponed .more-details.room-corpdoc-link, .show-container .show-details.cancelled .button.more-details, .show-container .show-details.cancelled .more-details.room-corpdoc-link {
    width: 100% !important;
    margin-right: 0 !important; }
  .show-container .show-details.extra .show-status {
    color: #262724; }
  .show-container .show-category {
    height: 38px;
    width: 38px;
    z-index: 1;
    pointer-events: auto;
    background-position: center center;
    background-repeat: no-repeat;
    background-color: #F9F6F1;
    border-radius: 50%; }
    .show-container .show-category.cat-all {
      background-image: url("../images/categories/all.svg"); }
    .show-container .show-category.cat-humour {
      background-image: url("../images/categories/humor.svg"); }
    .show-container .show-category.cat-conference {
      background-image: url("../images/categories/conference.svg"); }
    .show-container .show-category.cat-musique {
      background-image: url("../images/categories/music.svg"); }
    .show-container .show-category.cat-other {
      background-image: url("../images/categories/other.svg"); }
  .show-container .all-card {
    border: 2px dotted #7DCCC1;
    padding: 60px 25px;
    background: #ffffff;
    position: relative; }
    @media screen and (min-width: 768px) {
      .show-container .all-card {
        padding: 110px 58px; } }
    .show-container .all-card:hover a {
      color: #63c2b5; }
    .show-container .all-card .link-wrapper {
      position: absolute;
      display: block;
      width: 100%;
      height: 100%;
      z-index: 1;
      top: 0;
      left: 0; }
    .show-container .all-card a {
      display: block;
      color: #7DCCC1;
      text-decoration: underline;
      font-size: 30px;
      font-size: 1.875rem;
      line-height: 34px;
      font-weight: 500;
      text-transform: uppercase; }
    .show-container .all-card .loop-picto {
      display: block;
      width: 69px;
      height: 33px;
      margin: 30px auto 0;
      background: url("../images/see-all.svg") no-repeat center; }
  .show-container.cards-holder {
    padding: 80px 40px;
    position: relative;
    text-align: center; }
    .show-container.cards-holder .headings {
      margin-bottom: 40px; }
      .show-container.cards-holder .headings a {
        display: block;
        font-size: 18px;
        margin-top: 20px;
        text-transform: uppercase;
        text-decoration: underline; }
    @media screen and (min-width: 768px) {
      .show-container.cards-holder .card-wrapper {
        padding-left: 20px; } }
    .show-container.cards-holder .show-info-wrapper {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-flex: 1;
      -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
      flex: 1 0 auto; }
    .show-container.cards-holder .show-card {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      position: relative;
      border: 2px dotted #7DCCC1;
      text-align: left;
      min-height: 675px; }
      @media screen and (min-width: 768px) {
        .show-container.cards-holder .show-card {
          min-height: 600px; } }
      @media screen and (min-width: 1024px) {
        .show-container.cards-holder .show-card {
          min-height: 675px; } }
      .show-container.cards-holder .show-card .img-wrapper {
        display: block;
        overflow: hidden; }
        .show-container.cards-holder .show-card .img-wrapper .show-img {
          display: block;
          width: 100%;
          -webkit-transform: scale(1, 1);
          -ms-transform: scale(1, 1);
          transform: scale(1, 1);
          -webkit-transition: all 1s cubic-bezier(0, 0, 0.175, 1);
          transition: all 1s cubic-bezier(0, 0, 0.175, 1);
          min-height: 295px;
          background-size: 100% auto;
          background-repeat: no-repeat; }
        @media screen and (min-width: 1024px) {
          .show-container.cards-holder .show-card .img-wrapper:hover .show-img {
            -webkit-transform: scale(1.1, 1.1);
            -ms-transform: scale(1.1, 1.1);
            transform: scale(1.1, 1.1); } }
      .show-container.cards-holder .show-card .show-date {
        background: #262724;
        padding: 10px;
        display: block;
        top: 0;
        left: 0;
        font-size: 18px;
        text-align: center;
        color: #ffffff;
        font-family: "Lato", sans-serif;
        text-transform: uppercase;
        margin: 0;
        z-index: 1; }
      .show-container.cards-holder .show-card .show-category {
        position: absolute;
        top: 60px;
        right: 20px; }
      .show-container.cards-holder .show-card .show-info {
        padding: 15px 7.2% 0; }
      .show-container.cards-holder .show-card .show-details {
        padding: 0 7.2%;
        width: 100%;
        margin-top: auto; }
        .show-container.cards-holder .show-card .show-details .show-price {
          margin-bottom: 15px; }
          .show-container.cards-holder .show-card .show-details .show-price span {
            font-family: "Lato", sans-serif; }
        .show-container.cards-holder .show-card .show-details .button, .show-container.cards-holder .show-card .show-details .room-corpdoc-link {
          font-size: 14px;
          width: -webkit-calc(50% - 6px);
          width: calc(50% - 6px); }
    .show-container.cards-holder.club-shows {
      background: #000;
      text-align: center;
      position: relative; }
      .show-container.cards-holder.club-shows .headings {
        margin-bottom: 40px; }
        .show-container.cards-holder.club-shows .headings .title-1 {
          color: #ffffff; }
      .show-container.cards-holder.club-shows .show-card {
        background: #ffffff;
        color: #262724; }
        .show-container.cards-holder.club-shows .show-card .club-logo {
          position: absolute;
          display: block;
          width: 75px;
          height: 40px;
          top: 70px;
          left: 0;
          background: url("../images/le-club.jpg") no-repeat;
          background-size: cover;
          opacity: 0.95;
          z-index: 1; }
          @media screen and (min-width: 768px) {
            .show-container.cards-holder.club-shows .show-card .club-logo {
              left: -20px;
              opacity: 1; } }
    .show-container.cards-holder.show-listing:after {
      content: "";
      display: block;
      clear: both; }
    @media screen and (min-width: 768px) {
      .show-container.cards-holder.show-listing {
        padding: 40px; } }
    @media screen and (min-width: 1457px) {
      .show-container.cards-holder.show-listing {
        padding: 80px 80px 50px; } }
    .show-container.cards-holder.show-listing .card-wrapper {
      margin-bottom: 20px;
      width: 100%; }
      .show-container.cards-holder.show-listing .card-wrapper:last-of-type {
        margin-right: 0; }
      @media screen and (min-width: 768px) {
        .show-container.cards-holder.show-listing .card-wrapper {
          margin-bottom: 35px;
          margin-right: 15px;
          width: -webkit-calc((100% - (15px * 2)) / 2);
          width: calc((100% - (15px * 2)) / 2); } }
      @media screen and (min-width: 1024px) {
        .show-container.cards-holder.show-listing .card-wrapper {
          width: -webkit-calc((100% - (15px * 3)) / 3);
          width: calc((100% - (15px * 3)) / 3); } }
      @media screen and (min-width: 1440px) {
        .show-container.cards-holder.show-listing .card-wrapper {
          width: -webkit-calc((100% - (15px * 4)) / 4);
          width: calc((100% - (15px * 4)) / 4); } }
      @media screen and (min-width: 1791px) {
        .show-container.cards-holder.show-listing .card-wrapper {
          width: -webkit-calc((100% - (15px * 5)) / 5);
          width: calc((100% - (15px * 5)) / 5); } }
      .show-container.cards-holder.show-listing .card-wrapper .date-card {
        border: 2px dotted #7DCCC1;
        padding: 30px 25px;
        max-height: 675px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column; }
        @media (min-width: 300px) and (max-width: 450px) {
          .show-container.cards-holder.show-listing .card-wrapper .date-card.long-date {
            padding: 30px 15px; } }
        @media screen and (min-width: 768px) and (max-width: 1130px) {
          .show-container.cards-holder.show-listing .card-wrapper .date-card {
            padding: 0 30px; } }
        @media screen and (min-width: 1130px) and (max-width: 1330px) {
          .show-container.cards-holder.show-listing .card-wrapper .date-card {
            padding: 0 50px; } }
        .show-container.cards-holder.show-listing .card-wrapper .date-card .card-month {
          font-family: "NeutraDemi", sans-serif;
          font-size: 3rem;
          text-transform: uppercase;
          word-break: break-all;
          line-height: 44px;
          letter-spacing: 2px;
          margin: 0;
          /*@-moz-document url-prefix() {
              top: 0 !important;
              transform: none !important;
            }*/ }
          @media (min-width: 320px) and (max-width: 450px) {
            .show-container.cards-holder.show-listing .card-wrapper .date-card .card-month {
              font-size: 2.5rem;
              line-height: 64px; } }
          @media screen and (min-width: 768px) {
            .show-container.cards-holder.show-listing .card-wrapper .date-card .card-month {
              letter-spacing: 10px;
              -webkit-writing-mode: vertical-lr;
              -ms-writing-mode: tb-lr;
              writing-mode: vertical-lr;
              text-orientation: upright;
              margin-left: auto;
              margin-right: auto; } }
          @media screen and (min-width: 1024px) and (max-width: 1200px) {
            .show-container.cards-holder.show-listing .card-wrapper .date-card .card-month {
              font-size: 3rem;
              line-height: 64px; } }
          @media (min-width: 300px) and (max-width: 450px) {
            .show-container.cards-holder.show-listing .card-wrapper .date-card .card-month.long-month {
              font-size: 2rem;
              line-height: 64px; } }
          .show-container.cards-holder.show-listing .card-wrapper .date-card .card-month:before, .show-container.cards-holder.show-listing .card-wrapper .date-card .card-month:after {
            content: '';
            display: block;
            width: 50%;
            height: 3px;
            margin: auto;
            background: #262724; }
          .show-container.cards-holder.show-listing .card-wrapper .date-card .card-month:before {
            margin-bottom: 30px; }
          .show-container.cards-holder.show-listing .card-wrapper .date-card .card-month:after {
            margin-top: 30px; }

.cat-holder {
  border: none;
  background-color: #F9F6F1;
  border-radius: 50%;
  width: 38px;
  height: 38px;
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  cursor: pointer;
  -webkit-transition: background-color .3s ease-in-out;
  transition: background-color .3s ease-in-out; }
  .cat-holder.cat-all {
    background-image: url("../images/categories/all.svg"); }
  .cat-holder.cat-humour {
    background-image: url("../images/categories/humor.svg"); }
  .cat-holder.cat-conference {
    background-image: url("../images/categories/conference.svg"); }
  .cat-holder.cat-musique {
    background-image: url("../images/categories/music.svg"); }
  .cat-holder.cat-other {
    background-image: url("../images/categories/other.svg");
    background-position: center 40%; }
  .cat-holder.checked {
    background-color: #7DCCC1; }

.slick-wrapper .show-card {
  min-height: 675px !important; }

.show-more-wrapper {
  position: relative;
  float: left; }
  .show-more-wrapper .show-more {
    margin-top: 0;
    margin-left: 55%; }

.show-more, .loading {
  display: inline-block;
  width: 150px;
  height: 150px;
  margin: 60px auto 0;
  background: url("../images/more-show-oval.svg") no-repeat center;
  cursor: pointer;
  text-align: center; }
  @media screen and (min-width: 768px) {
    .show-more, .loading {
      position: relative;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); } }
  .show-more .vertical-align-wrapper, .loading .vertical-align-wrapper {
    opacity: 1;
    -webkit-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out; }
  .show-more.loading, .loading.loading {
    -webkit-animation-name: rotationAnimation;
    animation-name: rotationAnimation;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite; }
    .show-more.loading .vertical-align-wrapper, .loading.loading .vertical-align-wrapper {
      opacity: 0; }
  .show-more p, .loading p {
    margin: 0;
    text-transform: uppercase; }
    .show-more p.strike-text:before, .show-more p.strike-text:after, .loading p.strike-text:before, .loading p.strike-text:after {
      height: 1px;
      width: 30%;
      display: block; }
    .show-more p.strike-text:before, .loading p.strike-text:before {
      left: -40%; }
    .show-more p.strike-text:after, .loading p.strike-text:after {
      right: -40%; }

.offset-card {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  /* TODO: / HACK / DECIDE ... overflow: hidden; ? */
  clear: both;
  overflow: hidden;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
  padding: 12px 24px;
  background: #ffffff;
  width: 100%;
  text-align: center; }
  .offset-card.absolute-clearfix {
    overflow: visible; }
    .offset-card.absolute-clearfix:after {
      content: '';
      display: block;
      clear: both; }

.menus {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  max-width: 960px;
  margin: auto; }

.menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  width: -webkit-calc((100% - ( 2 * 104px )) / 3);
  width: calc((100% - ( 2 * 104px )) / 3);
  margin-right: 104px;
  text-align: center; }
  @media screen and (min-width: 1025px) {
    .menu:nth-child(3n) {
      margin-right: 0; }
    .menu:nth-child(n + 4) {
      margin-top: 104px; } }
  @media screen and (max-width: 1024px) {
    .menu {
      width: -webkit-calc((100% - 42px) / 2);
      width: calc((100% - 42px) / 2);
      margin-right: 42px; }
      .menu:nth-child(2n) {
        margin-right: 0; }
      .menu:nth-child(n + 3) {
        margin-top: 42px; } }
  @media screen and (max-width: 768px) {
    .menu {
      width: 100%;
      margin-right: 0; }
      .menu:nth-child(n + 2) {
        margin-top: 36px; } }

.menu-image {
  display: block;
  width: auto;
  height: auto;
  max-width: 250px;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center; }

.menu-pdf-link {
  text-decoration: underline;
  color: #7DCCC1; }
  .menu-pdf-link:hover, .menu-pdf-link:focus {
    color: #60c1b3; }

.rooms-selection-wrapper {
  padding: 80px 40px;
  padding-bottom: 0 !important;
  background: #F4F4F4; }
  @media screen and (max-width: 1023px) {
    .rooms-selection-wrapper {
      padding: 40px 20px; } }

.rooms-selection {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  padding-top: 80px; }
  @media only screen and (max-width: 768px) {
    .rooms-selection {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      padding-top: 120px; } }
  .rooms-selection .generic-content section {
    margin: 0;
    padding: 0; }

.room-selection {
  position: relative;
  width: -webkit-calc((100% - (60px * 2) ) / 3);
  width: calc((100% - (60px * 2) ) / 3);
  margin-right: 60px; }
  .room-selection .room-description {
    display: none; }
    @media screen and (max-width: 768px) {
      .room-selection .room-description {
        display: block; } }
  .room-selection:nth-child(3n) {
    margin-right: 0; }
  .room-selection:hover, .room-selection:focus {
    cursor: pointer; }
  .room-selection:before {
    content: '';
    border-width: 0 0 0 0;
    background: transparent;
    -webkit-transition: border-width .5s ease-in-out;
    transition: border-width .5s ease-in-out; }
    @media screen and (max-width: 768px) {
      .room-selection:before {
        display: none; } }
  .room-selection.selected:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 22.5px 23px 22.5px;
    border-color: transparent transparent #7DCCC1 transparent; }
  @media only screen and (max-width: 768px) {
    .room-selection {
      width: 100%; } }

.room-image-overlay {
  position: relative; }

.room-image {
  width: 100%;
  /* TODO: temporary */ }

.room-name {
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
  width: 85%;
  max-width: 400px;
  height: 70px;
  position: absolute;
  bottom: -35px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  left: 50%;
  padding: 12px 20px;
  background: #ffffff;
  text-align: center; }
  .room-name .title-3, .room-name .generic-block:not(:first-of-type) h2, .generic-block:not(:first-of-type) .room-name h2 {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%); }

.room-tagline {
  margin-top: 47px;
  margin-bottom: 64px; }
  .room-tagline .title5 {
    text-align: center;
    font-family: "NeutraBook", sans-serif;
    font-size: 18px;
    line-height: 24px;
    padding-top: 14px; }
  @media screen and (max-width: 768px) {
    .room-tagline {
      margin-top: 48px;
      margin-bottom: 32px; } }

.rooms-information {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  padding: 80px 40px; }
  @media screen and (max-width: 1023px) {
    .rooms-information {
      padding: 40px 20px; } }
  @media screen and (max-width: 768px) {
    .rooms-information {
      display: none; } }

.room-information {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  /* TODO :HACK (arbitrary height that's too high, intentionally) :(
https://css-tricks.com/using-css-transitions-auto-dimensions/) */
  max-height: 2000px;
  opacity: 1;
  overflow: hidden;
  -webkit-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out; }
  .room-information:not(.selected) {
    max-height: 0;
    opacity: 0; }

.room-information-name-title {
  margin-bottom: 40px; }

.room-information-services-title {
  margin-bottom: 38px; }

.room-services {
  padding-bottom: 80px; }
  .room-services ul, .room-services ol {
    list-style: none;
    counter-reset: list;
    padding-left: 0; }
  .room-services li {
    position: relative;
    padding-left: 16px;
    counter-increment: list;
    line-height: 28px; }
    .room-services li:before {
      content: counter(list, square);
      position: absolute;
      left: 0;
      top: 1px;
      color: #7DCCC1;
      font-size: 14px; }

.room-information-technical-title {
  margin-bottom: 38px; }

.room-corpdoc-link {
  text-align: center;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  margin: 30px 0 26px;
  position: relative;
  font-size: 14px;
  letter-spacing: 0.35px;
  line-height: 14px;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row; }
  .room-corpdoc-link .label {
    padding: 12px 15px;
    line-height: 22px; }
  .room-corpdoc-link .icon-Icon-download {
    margin-left: auto;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 12px 15px;
    border-left: 1px solid #ffffff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column; }

.hero-bottom-card {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
  padding: 80px 40px;
  padding: 31px 52px;
  background: #fff;
  text-align: center;
  z-index: 3; }
  @media screen and (max-width: 1023px) {
    .hero-bottom-card {
      padding: 40px 20px; } }
  @media screen and (max-width: 769px) {
    .hero-bottom-card {
      padding-top: 20px;
      padding-bottom: 20px;
      width: 90%; } }
  .generic-content .hero-bottom-card p, .generic-content .hero-bottom-card a, .generic-content .hero-bottom-card .button, .generic-content .hero-bottom-card .room-corpdoc-link {
    font-size: 16px;
    /* HACK! ... */ }
  .hero-bottom-card a:not(.button):not(.room-corpdoc-link) {
    color: #E44A26;
    font-family: "NeutraBold", sans-serif;
    text-decoration: none; }
    .hero-bottom-card a:not(.button):not(.room-corpdoc-link):hover, .hero-bottom-card a:not(.button):not(.room-corpdoc-link):focus {
      color: #c83a19; }

.club-tour iframe {
  height: 500px;
  max-height: 50vh; }

/*
 * 		Templates
 * 		---------
 */
.promotions-container {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  /* TODO: / HACK / DECIDE ... overflow: hidden; ? */
  clear: both;
  overflow: hidden;
  padding: 80px 40px;
  position: relative; }
  .promotions-container.absolute-clearfix {
    overflow: visible; }
    .promotions-container.absolute-clearfix:after {
      content: '';
      display: block;
      clear: both; }
  @media screen and (min-width: 768px) {
    .promotions-container {
      position: relative;
      overflow: visible; }
      .promotions-container:before {
        content: '';
        border-top: 2px solid #7DCCC1;
        border-bottom: 2px solid #7DCCC1;
        width: 46px;
        height: 11px;
        position: absolute;
        top: -8px;
        left: -webkit-calc((100% - 46px) / 2);
        left: calc((100% - 46px) / 2); } }
  @media screen and (max-width: 767px) {
    .promotions-container {
      background: #F4F4F4;
      margin-bottom: 0; } }
  .promotions-container .slick-track {
    padding-bottom: 14px; }
    @media screen and (max-width: 767px) {
      .promotions-container .slick-track {
        padding-bottom: 0; } }
  .promotions-container .js-promo-carousel {
    /* TODO: / HACK / DECIDE ... overflow: hidden; ? */
    clear: both;
    overflow: hidden;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    overflow: visible;
    width: 100%; }
    .promotions-container .js-promo-carousel.absolute-clearfix {
      overflow: visible; }
      .promotions-container .js-promo-carousel.absolute-clearfix:after {
        content: '';
        display: block;
        clear: both; }
    .promotions-container .js-promo-carousel .slick-slider,
    .promotions-container .js-promo-carousel .slick-list {
      width: 100%;
      overflow-y: visible; }
  .promotions-container .promotion-card {
    background: #ffffff;
    width: 100%;
    text-align: center; }
    @media screen and (min-width: 768px) {
      .promotions-container .promotion-card {
        box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1); } }
    .promotions-container .promotion-card.put-first {
      -webkit-box-ordinal-group: 2;
      -webkit-order: 1;
      -ms-flex-order: 1;
      order: 1; }
    .promotions-container .promotion-card.featured {
      -webkit-box-ordinal-group: 3;
      -webkit-order: 2;
      -ms-flex-order: 2;
      order: 2; }
    .promotions-container .promotion-card.put-last {
      -webkit-box-ordinal-group: 4;
      -webkit-order: 3;
      -ms-flex-order: 3;
      order: 3; }
    @media screen and (min-width: 1024px) {
      .promotions-container .promotion-card {
        width: -webkit-calc((100% - 23px) /3);
        width: calc((100% - 23px) /3); }
        .promotions-container .promotion-card.featured {
          width: -webkit-calc((100% / 3) + 23px);
          width: calc((100% / 3) + 23px);
          margin-top: -17px;
          margin-bottom: -17px;
          z-index: 1; } }
    .promotions-container .promotion-card .img-wrapper {
      display: block;
      position: relative;
      overflow: hidden; }
      .promotions-container .promotion-card .img-wrapper .promotion-img {
        width: 100%;
        -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        transform: scale(1, 1);
        -webkit-transition: all 1s cubic-bezier(0, 0, 0.175, 1);
        transition: all 1s cubic-bezier(0, 0, 0.175, 1); }
      .promotions-container .promotion-card .img-wrapper:hover .promotion-img {
        -webkit-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1); }
    .promotions-container .promotion-card .promotion-info {
      padding: 40px; }
      .promotions-container .promotion-card .promotion-info .title-3, .promotions-container .promotion-card .promotion-info .generic-block:not(:first-of-type) h2, .generic-block:not(:first-of-type) .promotions-container .promotion-card .promotion-info h2 {
        margin: 0 0 8px; }
      .promotions-container .promotion-card .promotion-info .promotion-text {
        font-size: 18px;
        line-height: 24px;
        margin: 0 0 30px; }
      .promotions-container .promotion-card .promotion-info .button, .promotions-container .promotion-card .promotion-info .room-corpdoc-link {
        margin: 0; }
  .promotions-container .nav-arrows {
    top: 48%; }
    @media screen and (min-width: 768px) {
      .promotions-container .nav-arrows {
        top: 50%; } }
    @media screen and (min-width: 1024px) {
      .promotions-container .nav-arrows {
        display: none; } }

.news-container {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  /* TODO: / HACK / DECIDE ... overflow: hidden; ? */
  clear: both;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 80px 40px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column; }
  .news-container.absolute-clearfix {
    overflow: visible; }
    .news-container.absolute-clearfix:after {
      content: '';
      display: block;
      clear: both; }
  @media screen and (min-width: 768px) {
    .news-container {
      position: relative;
      overflow: visible; }
      .news-container:before {
        content: '';
        border-top: 2px solid #7DCCC1;
        border-bottom: 2px solid #7DCCC1;
        width: 46px;
        height: 11px;
        position: absolute;
        top: -8px;
        left: -webkit-calc((100% - 46px) / 2);
        left: calc((100% - 46px) / 2); } }
  @media screen and (min-width: 1024px) {
    .news-container {
      padding: 80px 0;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
      -ms-flex-direction: row;
      flex-direction: row; } }
  .news-container .news-visual {
    min-height: 300px;
    width: 100%;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important; }
    @media screen and (min-width: 1024px) {
      .news-container .news-visual {
        width: 50%; } }
  .news-container .news-content {
    width: 100%; }
    @media screen and (min-width: 1024px) {
      .news-container .news-content {
        width: 50%; } }
    .news-container .news-content .news-wrapper {
      box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
      /* HACK: Why do we need this? Can't find the grey background container... */
      background: #ffffff;
      padding: 40px; }
      @media screen and (min-width: 768px) {
        .news-container .news-content .news-wrapper {
          padding: 50px; } }
      @media screen and (min-width: 1200px) {
        .news-container .news-content .news-wrapper {
          padding: 80px 40px; } }
      .news-container .news-content .news-wrapper .title-3, .news-container .news-content .news-wrapper .generic-block:not(:first-of-type) h2, .generic-block:not(:first-of-type) .news-container .news-content .news-wrapper h2 {
        line-height: 26px; }
    .news-container .news-content p:last-child {
      margin-bottom: 0; }

.show-main-info {
  width: 100%;
  margin-top: -21%; }
  .show-main-info .hero-img {
    border: 2px dotted #7DCCC1;
    width: 100%;
    max-height: none; }
    @media screen and (min-width: 1024px) {
      .show-main-info .hero-img {
        border-right: 0;
        max-width: 800px;
        max-height: 498px; } }
  .show-main-info .hero-tickets {
    position: relative;
    background: #ffffff;
    padding: 20px 20px 42px;
    margin: -60px 20px 0;
    text-align: center;
    z-index: 1; }
    @media screen and (min-width: 1024px) {
      .show-main-info .hero-tickets {
        position: absolute;
        top: -22px;
        right: 0;
        width: 410px;
        height: 538px;
        padding: 40px;
        margin: 0; } }
    .show-main-info .hero-tickets .title-1 {
      font-size: 24px;
      font-size: 1.5rem; }
      @media screen and (min-width: 768px) {
        .show-main-info .hero-tickets .title-1 {
          font-size: 28px;
          font-size: 1.75rem; } }
    .show-main-info .hero-tickets .tickets-price {
      font-size: 18px;
      font-size: 1.125rem;
      text-transform: uppercase;
      margin-top: 10px; }
      .show-main-info .hero-tickets .tickets-price span {
        font-family: "Lato", sans-serif;
        color: #7DCCC1; }
      @media screen and (min-width: 768px) {
        .show-main-info .hero-tickets .tickets-price {
          margin-top: 30px;
          font-size: 20px;
          font-size: 1.25rem; } }
    .show-main-info .hero-tickets .gradient-overlay {
      position: absolute;
      height: 100%;
      width: 100%;
      bottom: 20px;
      left: 0;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,ffffff+100&0+73,0.8+100 */
      /* FF3.6-15 */
      background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 80%, rgba(255, 255, 255, 0.8) 100%);
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 80%, rgba(255, 255, 255, 0.8) 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ccffffff',GradientType=0 );
      /* IE6-9 */
      pointer-events: none;
      z-index: 1; }
    .show-main-info .hero-tickets .tickets-wrapper {
      overflow-y: scroll;
      position: relative; }
      .show-main-info .hero-tickets .tickets-wrapper .tickets-buy {
        margin-top: 12px;
        display: block; }
        .show-main-info .hero-tickets .tickets-wrapper .tickets-buy:first-child {
          margin-top: 0; }
        .show-main-info .hero-tickets .tickets-wrapper .tickets-buy:hover, .show-main-info .hero-tickets .tickets-wrapper .tickets-buy:focus {
          color: #3A3939; }
      @media screen and (min-width: 768px) {
        .show-main-info .hero-tickets .tickets-wrapper {
          height: 495px;
          height: -webkit-calc(100% - 100px);
          height: calc(100% - 100px); } }
      .show-main-info .hero-tickets .tickets-wrapper .mCSB_dragger_bar {
        width: 8px;
        background: #7DCCC1 !important; }
      .show-main-info .hero-tickets .tickets-wrapper .mCSB_draggerRail {
        width: 8px;
        background: #F4F4F4; }
      .show-main-info .hero-tickets .tickets-wrapper .tickets-holder {
        position: relative;
        text-transform: uppercase;
        width: 100%;
        margin-top: 12px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row; }
        .show-main-info .hero-tickets .tickets-wrapper .tickets-holder:first-child {
          margin-top: 0; }
        .show-main-info .hero-tickets .tickets-wrapper .tickets-holder:hover .tickets-buy, .show-main-info .hero-tickets .tickets-wrapper .tickets-holder:focus .tickets-buy {
          background: #58beb0 !important; }
          .show-main-info .hero-tickets .tickets-wrapper .tickets-holder:hover .tickets-buy:after, .show-main-info .hero-tickets .tickets-wrapper .tickets-holder:focus .tickets-buy:after {
            -webkit-transform: translateX(8px);
            -ms-transform: translateX(8px);
            transform: translateX(8px); }
        @media screen and (max-width: 768px) {
          .show-main-info .hero-tickets .tickets-wrapper .tickets-holder {
            min-height: 100px; } }
        .show-main-info .hero-tickets .tickets-wrapper .tickets-holder.postponed .tickets-info .sold-out {
          margin-top: 6px; }
        .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-date {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -webkit-flex-direction: column;
          -ms-flex-direction: column;
          flex-direction: column;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
          -ms-flex-pack: center;
          justify-content: center;
          width: 60px;
          font-size: 14px;
          line-height: 18px;
          padding: 8px;
          color: #ffffff;
          background: #262724; }
          .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-date p {
            position: relative;
            margin: auto;
            font-family: "Lato", sans-serif; }
            .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-date p span {
              display: block;
              font-size: 19px;
              line-height: 22px; }
        .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info {
          position: relative;
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -webkit-flex-direction: column;
          -ms-flex-direction: column;
          flex-direction: column;
          -webkit-box-flex: 1;
          -webkit-flex: 1 auto;
          -ms-flex: 1 auto;
          flex: 1 auto;
          background: #F4F4F4;
          text-align: left;
          font-size: 14px; }
          .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info.unavailable {
            padding-top: 18px; }
          .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-hour, .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-status {
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            padding: 0 16px 0 0;
            margin: 0;
            -webkit-box-orient: horizontal;
            -webkit-box-direction: normal;
            -webkit-flex-direction: row;
            -ms-flex-direction: row;
            flex-direction: row;
            -webkit-box-pack: start;
            -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
            justify-content: flex-start;
            -webkit-box-flex: 1;
            -webkit-flex: 1 auto;
            -ms-flex: 1 auto;
            flex: 1 auto;
            -webkit-box-align: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center; }
            @media screen and (max-width: 768px) {
              .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-hour, .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-status {
                padding-top: 20px;
                -webkit-box-pack: start;
                -webkit-justify-content: flex-start;
                -ms-flex-pack: start;
                justify-content: flex-start; } }
          .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-hour {
            font-size: 18px;
            font-family: "Lato", sans-serif; }
          .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-status {
            font-weight: 600;
            -webkit-box-pack: end;
            -webkit-justify-content: flex-end;
            -ms-flex-pack: end;
            justify-content: flex-end;
            margin-top: 4px; }
            .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-status.initial-date {
              color: #324D8F; }
            .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-status.sold-out {
              color: #E44A26;
              margin-left: auto; }
            .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-status.extra {
              color: #262724; }
            @media screen and (max-width: 768px) {
              .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-status {
                margin-top: 0;
                -webkit-box-pack: start;
                -webkit-justify-content: flex-start;
                -ms-flex-pack: start;
                justify-content: flex-start; }
                .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-status.sold-out {
                  margin-left: 0; } }
          .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-buy {
            position: relative;
            display: block;
            width: 100%;
            padding: 8px 16px;
            margin: 0;
            background: #7DCCC1;
            color: #ffffff;
            -webkit-transition: background .3s ease-in-out;
            transition: background .3s ease-in-out;
            margin-top: auto; }
            .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info .tickets-buy:after {
              content: '';
              display: block;
              position: absolute;
              right: 16px;
              top: 0;
              height: 100%;
              width: 8px;
              background: url("../images/arrow-white.svg") no-repeat center;
              background-size: 100%;
              -webkit-transition: -webkit-transform .3s ease-in-out;
              transition: -webkit-transform .3s ease-in-out;
              transition: transform .3s ease-in-out;
              transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out; }
        .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info-status {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
          -webkit-flex-direction: row;
          -ms-flex-direction: row;
          flex-direction: row;
          -webkit-box-flex: 1;
          -webkit-flex: 1 auto;
          -ms-flex: 1 auto;
          flex: 1 auto;
          padding: 0 20px; }
          @media screen and (max-width: 768px) {
            .show-main-info .hero-tickets .tickets-wrapper .tickets-holder .tickets-info-status {
              -webkit-box-orient: vertical;
              -webkit-box-direction: normal;
              -webkit-flex-direction: column;
              -ms-flex-direction: column;
              flex-direction: column; } }
        .show-main-info .hero-tickets .tickets-wrapper .tickets-holder.postponed .tickets-date p:before {
          content: '';
          position: absolute;
          width: 2px;
          height: 100%;
          background: #7DCCC1;
          -webkit-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
          top: 0; }
        .show-main-info .hero-tickets .tickets-wrapper .tickets-holder.postponed .tickets-status {
          float: none; }
          .show-main-info .hero-tickets .tickets-wrapper .tickets-holder.postponed .tickets-status span {
            font-family: "Lato", sans-serif; }

.show-main-content {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  /* TODO: / HACK / DECIDE ... overflow: hidden; ? */
  clear: both;
  overflow: hidden;
  max-width: 1200px;
  padding: 40px 20px 40px;
  background: #ffffff; }
  .show-main-content.absolute-clearfix {
    overflow: visible; }
    .show-main-content.absolute-clearfix:after {
      content: '';
      display: block;
      clear: both; }
  @media screen and (min-width: 768px) {
    .show-main-content {
      padding: 80px 20px 80px; } }
  @media screen and (min-width: 1200px) {
    .show-main-content {
      padding: 80px 0 80px; } }
  .show-main-content .show-content {
    width: 100%;
    margin-right: 40px;
    color: #000; }
    @media screen and (min-width: 768px) {
      .show-main-content .show-content {
        width: 65%; }
        .show-main-content .show-content iframe {
          width: 100%; } }
    .show-main-content .show-content .show-title {
      font-size: 30px;
      margin: 20px 0 0; }
      @media screen and (min-width: 768px) {
        .show-main-content .show-content .show-title {
          margin: 0 0 15px; } }
    .show-main-content .show-content p {
      margin: 30px 0; }
    .show-main-content .show-content img {
      width: 100%;
      margin-top: 10px; }
    .show-main-content .show-content .video-wrapper {
      position: relative;
      padding-bottom: 56.25%;
      padding-top: 25px;
      height: 0; }
      .show-main-content .show-content .video-wrapper iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
  .show-main-content .show-general-info {
    margin-top: 40px;
    width: 100%; }
    @media screen and (min-width: 768px) {
      .show-main-content .show-general-info {
        margin-top: 0;
        width: -webkit-calc(35% - 40px);
        width: calc(35% - 40px); } }
    .show-main-content .show-general-info > div {
      border-bottom: 1px #262724 solid;
      padding: 15px 0; }
      .show-main-content .show-general-info > div:last-child {
        border: none; }
    .show-main-content .show-general-info .title-3, .show-main-content .show-general-info .generic-block:not(:first-of-type) h2, .generic-block:not(:first-of-type) .show-main-content .show-general-info h2 {
      font-weight: 500;
      margin: 15px 0; }
    .show-main-content .show-general-info p:not(.title-3):not(.generic-block:not(:first-of-type) h2) {
      font-size: 14px; }
    .show-main-content .show-general-info .phone-tickets {
      padding: 0 10px 15px;
      text-align: center; }
      .show-main-content .show-general-info .phone-tickets .title-3, .show-main-content .show-general-info .phone-tickets .generic-block:not(:first-of-type) h2, .generic-block:not(:first-of-type) .show-main-content .show-general-info .phone-tickets h2 {
        background: #F4F4F4;
        padding: 18px 20px;
        margin: 0 0 15px; }
        .show-main-content .show-general-info .phone-tickets .title-3 span, .show-main-content .show-general-info .phone-tickets .generic-block:not(:first-of-type) h2 span, .generic-block:not(:first-of-type) .show-main-content .show-general-info .phone-tickets h2 span {
          color: #7DCCC1;
          font-family: "Lato", sans-serif; }
    .show-main-content .show-general-info .show-promotions,
    .show-main-content .show-general-info .show-menu {
      text-align: center; }
      .show-main-content .show-general-info .show-promotions a,
      .show-main-content .show-general-info .show-menu a {
        display: block;
        margin: 16px 0; }
    .show-main-content .show-general-info .show-category .cat-holder {
      display: inline-block; }
      .show-main-content .show-general-info .show-category .cat-holder .label {
        padding-left: 50px;
        line-height: 38px; }
    .show-main-content .show-general-info .show-socials .social-holder a {
      display: inline-block;
      width: 38px;
      height: 38px;
      margin-right: 15px;
      background-image: url("../images/social-sprite.svg");
      background-repeat: no-repeat;
      opacity: 0.7;
      -webkit-transition: all 0.3s ease-in-out;
      transition: all 0.3s ease-in-out; }
      .show-main-content .show-general-info .show-socials .social-holder a:hover {
        opacity: 1; }
      .show-main-content .show-general-info .show-socials .social-holder a:last-child {
        margin-right: 0; }
      .show-main-content .show-general-info .show-socials .social-holder a.social-website {
        background-position: 0 0; }
      .show-main-content .show-general-info .show-socials .social-holder a.social-facebook {
        background-position: -53px 0; }
      .show-main-content .show-general-info .show-socials .social-holder a.social-twitter {
        background-position: -106px 0; }
      .show-main-content .show-general-info .show-socials .social-holder a.social-instagram {
        background-position: -159px 0; }
      .show-main-content .show-general-info .show-socials .social-holder a.social-snapchat {
        background-position: -212px 0; }
      .show-main-content .show-general-info .show-socials .social-holder a.social-youtube {
        background-position: -265px 0; }

.generic-content {
  /* TODO: / HACK / DECIDE ... overflow: hidden; ? */
  clear: both;
  overflow: hidden; }
  .generic-content.absolute-clearfix {
    overflow: visible; }
    .generic-content.absolute-clearfix:after {
      content: '';
      display: block;
      clear: both; }
  .generic-content h1, .generic-content h2, .generic-content h3 {
    margin-bottom: 20px;
    text-transform: uppercase; }
  .generic-content a {
    text-decoration: underline;
    color: #7DCCC1; }
    .generic-content a:hover, .generic-content a:focus {
      color: #60c1b3; }
  .generic-content p, .generic-content a {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 24px;
    margin: 20px 0; }
    .generic-content p img, .generic-content a img {
      max-width: 100%; }
  .generic-content ul, .generic-content ol {
    list-style: none;
    counter-reset: list;
    padding-left: 0; }
    .generic-content ul li, .generic-content ol li {
      font-size: 18px;
      font-size: 1.125rem;
      position: relative;
      padding-left: 16px;
      counter-increment: list; }
      .generic-content ul li:before, .generic-content ol li:before {
        content: counter(list, square);
        position: absolute;
        left: 0;
        top: 1px;
        color: #7DCCC1;
        font-size: 14px; }
  .generic-content section {
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    margin: 40px auto 0;
    max-width: 960px;
    padding-left: 20px;
    padding-right: 20px; }
    .generic-content section.concours, .generic-content section.forfaits {
      text-align: center; }
    .generic-content section:first-child {
      margin-top: 0;
      padding-top: 40px; }
      @media screen and (min-width: 768px) {
        .generic-content section:first-child {
          padding-top: 60px; } }
      @media screen and (min-width: 1200px) {
        .generic-content section:first-child {
          padding-top: 80px; } }
    .generic-content section:last-child {
      padding-bottom: 40px; }
      @media screen and (min-width: 768px) {
        .generic-content section:last-child {
          padding-bottom: 60px; } }
      @media screen and (min-width: 1200px) {
        .generic-content section:last-child {
          padding-bottom: 80px; } }
    .generic-content section.souper-spectacle {
      margin-top: 134px; }
  .generic-content .generic-gallery {
    margin-top: 60px; }
    .generic-content .generic-gallery a {
      float: left;
      position: relative;
      overflow: hidden;
      max-height: 250px; }
      .generic-content .generic-gallery a:last-child, .generic-content .generic-gallery a:nth-child(4n+4) {
        margin-right: 0; }
      @media screen and (min-width: 768px) {
        .generic-content .generic-gallery a {
          width: -webkit-calc((100% - 126px) / 4);
          width: calc((100% - 126px) / 4);
          margin: 0 42px 42px 0; } }
      .generic-content .generic-gallery a img {
        vertical-align: middle;
        width: 100%;
        -webkit-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1); }
      .generic-content .generic-gallery a:hover img {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1); }
  .generic-content .generic-label {
    position: relative;
    width: 100%;
    background: #F4F4F4; }
    .generic-content .generic-label.pdf {
      margin-bottom: 50px;
      padding: 20px 20px 15px; }
      @media screen and (min-width: 768px) {
        .generic-content .generic-label.pdf {
          margin-bottom: 20px; } }
      .generic-content .generic-label.pdf:after {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        height: 100%;
        width: 45px;
        background: url("../images/pdf-picto.svg") #7DCCC1 no-repeat center right 10px;
        -webkit-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
        pointer-events: none; }
        @media screen and (min-width: 768px) {
          .generic-content .generic-label.pdf:after {
            width: 65px;
            background-position: center; } }
      .generic-content .generic-label.pdf a {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        margin: 0;
        text-decoration: none; }
      .generic-content .generic-label.pdf p {
        margin: 0;
        color: #262724;
        text-transform: uppercase;
        -webkit-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out; }
        @media screen and (min-width: 768px) {
          .generic-content .generic-label.pdf p {
            font-size: 20px;
            font-size: 1.25rem; } }
      .generic-content .generic-label.pdf:hover p {
        color: #7DCCC1; }
      .generic-content .generic-label.pdf:hover:after {
        background-color: #60c1b3; }
    .generic-content .generic-label.big-block, .generic-content .generic-label.career {
      margin-bottom: 40px; }
      .generic-content .generic-label.big-block img, .generic-content .generic-label.career img {
        width: 100%; }
        @media screen and (min-width: 768px) {
          .generic-content .generic-label.big-block img, .generic-content .generic-label.career img {
            max-width: 250px;
            padding: 30px 0 0 30px; } }
        @media screen and (min-width: 1024px) {
          .generic-content .generic-label.big-block img, .generic-content .generic-label.career img {
            max-width: 200px; } }
      .generic-content .generic-label.big-block .g-label-content, .generic-content .generic-label.career .g-label-content {
        padding: 30px 30px 0; }
        @media screen and (min-width: 768px) {
          .generic-content .generic-label.big-block .g-label-content, .generic-content .generic-label.career .g-label-content {
            width: -webkit-calc(100% - 250px);
            width: calc(100% - 250px); } }
        @media screen and (min-width: 1024px) {
          .generic-content .generic-label.big-block .g-label-content, .generic-content .generic-label.career .g-label-content {
            width: -webkit-calc(100% - 200px);
            width: calc(100% - 200px); } }
        .generic-content .generic-label.big-block .g-label-content .title-3, .generic-content .generic-label.big-block .g-label-content .generic-block:not(:first-of-type) h2, .generic-block:not(:first-of-type) .generic-content .generic-label.big-block .g-label-content h2, .generic-content .generic-label.career .g-label-content .title-3, .generic-content .generic-label.career .g-label-content .generic-block:not(:first-of-type) h2, .generic-block:not(:first-of-type) .generic-content .generic-label.career .g-label-content h2 {
          font-weight: 500;
          margin: 0; }
        .generic-content .generic-label.big-block .g-label-content .g-label-text, .generic-content .generic-label.career .g-label-content .g-label-text {
          margin: 10px 0 20px; }
        .generic-content .generic-label.big-block .g-label-content .button, .generic-content .generic-label.big-block .g-label-content .room-corpdoc-link, .generic-content .generic-label.career .g-label-content .button, .generic-content .generic-label.career .g-label-content .room-corpdoc-link {
          position: relative;
          margin: 0;
          color: #ffffff;
          font-size: 14px;
          padding: 12px 40px 8px 15px;
          margin-bottom: 30px;
          text-decoration: none;
          background-image: url("../images/pdf-picto.svg");
          background-repeat: no-repeat;
          background-position: center right 13px;
          background-size: 19px 20px; }
          @media screen and (min-width: 768px) {
            .generic-content .generic-label.big-block .g-label-content .button, .generic-content .generic-label.big-block .g-label-content .room-corpdoc-link, .generic-content .generic-label.career .g-label-content .button, .generic-content .generic-label.career .g-label-content .room-corpdoc-link {
              padding: 12px 55px 8px 25px;
              margin: 0 0 20px 0; } }
    .generic-content .generic-label.career {
      padding: 30px; }
      .generic-content .generic-label.career .g-label-content {
        padding: 0;
        width: 100%; }
        .generic-content .generic-label.career .g-label-content .button, .generic-content .generic-label.career .g-label-content .room-corpdoc-link {
          background-image: none;
          padding: 12px 10px 8px;
          margin: 0;
          text-align: center; }
          @media screen and (min-width: 768px) {
            .generic-content .generic-label.career .g-label-content .button, .generic-content .generic-label.career .g-label-content .room-corpdoc-link {
              padding: 12px 25px 8px;
              margin: 0; } }
    .generic-content .generic-label.spontaneous {
      background: transparent;
      border: 2px dotted #7DCCC1; }
    .generic-content .generic-label.faq {
      width: 100%;
      max-width: 960px;
      margin: 0 auto;
      position: relative;
      overflow: hidden;
      padding: 0 20px;
      background: transparent;
      margin-bottom: 20px; }
      .generic-content .generic-label.faq .faq-title {
        font-size: 18px;
        font-size: 1.125rem;
        position: relative;
        display: block;
        padding: 15px 60px 10px 15px;
        margin-bottom: 0;
        text-transform: uppercase;
        font-weight: 500;
        background: #F4F4F4;
        cursor: pointer; }
        @media screen and (min-width: 768px) {
          .generic-content .generic-label.faq .faq-title {
            padding: 15px 15px 10px; } }
        .generic-content .generic-label.faq .faq-title:after {
          content: '';
          display: block;
          position: absolute;
          top: 0;
          right: 0;
          width: 48px;
          height: 100%;
          background: url("../images/plus-picto.svg") #7DCCC1 no-repeat center;
          -webkit-transition: all 0.3s ease-in-out;
          transition: all 0.3s ease-in-out;
          pointer-events: none; }
        .generic-content .generic-label.faq .faq-title:hover:after {
          background-color: #60c1b3; }
      .generic-content .generic-label.faq.opened .faq-title:after {
        background-image: url("../images/minus-picto.svg"); }
      .generic-content .generic-label.faq .faq-content {
        border: 2px dotted #7DCCC1;
        padding: 30px;
        border-top: 0;
        display: none; }
        .generic-content .generic-label.faq .faq-content p:first-child, .generic-content .generic-label.faq .faq-content a:first-child, .generic-content .generic-label.faq .faq-content h1:first-child, .generic-content .generic-label.faq .faq-content h2:first-child, .generic-content .generic-label.faq .faq-content h3:first-child, .generic-content .generic-label.faq .faq-content h4:first-child, .generic-content .generic-label.faq .faq-content h5:first-child {
          margin-top: 0; }
        .generic-content .generic-label.faq .faq-content p:last-child, .generic-content .generic-label.faq .faq-content a:last-child, .generic-content .generic-label.faq .faq-content h1:last-child, .generic-content .generic-label.faq .faq-content h2:last-child, .generic-content .generic-label.faq .faq-content h3:last-child, .generic-content .generic-label.faq .faq-content h4:last-child, .generic-content .generic-label.faq .faq-content h5:last-child {
          margin-bottom: 0; }
  .generic-content img.fullwidth {
    width: 100%; }
  .generic-content .contest-form {
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
    max-width: 960px;
    margin: 60px auto 0;
    padding: 30px;
    text-align: center; }
    @media screen and (min-width: 768px) {
      .generic-content .contest-form {
        padding: 60px; } }
    .generic-content .contest-form .title-1 {
      margin-bottom: 60px;
      font-size: 28px;
      font-size: 1.75rem; }
      @media screen and (min-width: 768px) {
        .generic-content .contest-form .title-1 {
          font-size: 32px;
          font-size: 2rem; } }
    .generic-content .contest-form .input-container {
      margin-bottom: 0px; }
      @media screen and (min-width: 768px) {
        .generic-content .contest-form .input-container {
          margin-bottom: 40px; } }
      .generic-content .contest-form .input-container input {
        position: relative;
        float: left;
        width: 100%;
        padding: 5px 0;
        margin-bottom: 30px;
        border: 0;
        border-bottom: 1px solid #262724;
        font-size: 20px;
        -webkit-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out; }
        .generic-content .contest-form .input-container input:last-child {
          margin-right: 0; }
        .generic-content .contest-form .input-container input:focus {
          border-bottom-color: #7DCCC1; }
        @media screen and (min-width: 768px) {
          .generic-content .contest-form .input-container input {
            width: -webkit-calc(50% - 20px);
            width: calc(50% - 20px);
            margin: 0 40px 0 0; } }
        .generic-content .contest-form .input-container input.parsley-error {
          border-bottom: 2px solid #E91D23;
          color: #E91D23; }
    .generic-content .contest-form .button, .generic-content .contest-form .room-corpdoc-link {
      float: right;
      border: 0;
      margin: 0;
      font-size: 16px;
      padding-bottom: 8px; }
    .generic-content .contest-form .success {
      color: #137f13;
      font-size: 24px;
      font-weight: 600;
      text-transform: uppercase;
      padding-top: 10px;
      display: none; }
  .generic-content.error-page {
    padding-top: 50px; }
    @media screen and (min-width: 768px) {
      .generic-content.error-page {
        padding-top: 123px; } }
    .generic-content.error-page .title-2 {
      text-transform: none; }
    .generic-content.error-page .button, .generic-content.error-page .room-corpdoc-link {
      text-decoration: none;
      color: #ffffff;
      font-size: 14px; }

.contact-container {
  position: relative; }
  .contact-container .content-wrapper {
    width: 100%;
    text-align: right; }
    @media screen and (min-width: 768px) {
      .contact-container .content-wrapper {
        width: 50%;
        float: left; } }
    .contact-container .content-wrapper .contact-content {
      display: inline-block;
      text-align: left;
      padding: 40px 20px; }
      @media screen and (min-width: 1200px) {
        .contact-container .content-wrapper .contact-content {
          max-width: 600px;
          padding: 60px 60px 20px 0px; } }
      .contact-container .content-wrapper .contact-content .title-1 {
        margin-bottom: 50px;
        font-size: 36px;
        font-size: 2.25rem;
        line-height: 40px; }
      .contact-container .content-wrapper .contact-content .title-2 {
        font-size: 30px;
        font-size: 1.875rem;
        line-height: 34px;
        margin-bottom: 20px; }
      .contact-container .content-wrapper .contact-content .title-3, .contact-container .content-wrapper .contact-content .generic-block:not(:first-of-type) h2, .generic-block:not(:first-of-type) .contact-container .content-wrapper .contact-content h2 {
        font-size: 20px;
        font-size: 1.25rem;
        margin-top: 30px; }
        .contact-container .content-wrapper .contact-content .title-3.no-margin, .contact-container .content-wrapper .contact-content .generic-block:not(:first-of-type) h2.no-margin, .generic-block:not(:first-of-type) .contact-container .content-wrapper .contact-content h2.no-margin {
          margin: 20px 0 0; }
      .contact-container .content-wrapper .contact-content section {
        margin-bottom: 40px; }
        .contact-container .content-wrapper .contact-content section p {
          max-width: 400px; }
          .contact-container .content-wrapper .contact-content section p span {
            text-decoration: underline;
            color: #7DCCC1; }
          .contact-container .content-wrapper .contact-content section p.no-margin {
            margin: 0 0 30px; }
    .contact-container .content-wrapper .admin-content {
      background: #F4F4F4; }
      .contact-container .content-wrapper .admin-content .admin-contact {
        margin-bottom: 20px; }
        .contact-container .content-wrapper .admin-content .admin-contact:first-child {
          margin-top: 30px; }
        .contact-container .content-wrapper .admin-content .admin-contact .no-margin {
          margin: 0; }
  .contact-container .contact-map {
    width: 100%;
    height: 300px; }
    @media screen and (min-width: 768px) {
      .contact-container .contact-map {
        height: -webkit-calc(100vh - 123px);
        height: calc(100vh - 123px); } }
    .contact-container .contact-map img {
      width: 100%; }
    @media screen and (min-width: 768px) {
      .contact-container .contact-map {
        float: right;
        width: 50%; } }
  .contact-container iframe {
    max-height: -webkit-calc(100vh - 123px);
    max-height: calc(100vh - 123px); }

.souper-spectacle {
  /* TODO: / HACK / DECIDE ... overflow: hidden; ? */
  clear: both;
  overflow: hidden; }
  .souper-spectacle.absolute-clearfix {
    overflow: visible; }
    .souper-spectacle.absolute-clearfix:after {
      content: '';
      display: block;
      clear: both; }

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