﻿@import "//fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,400,300,600";
/*@red: #cc0130;*/
.animated {
  -webkit-animation-duration: 1s;
  -moz-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    -webkit-transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-30px);
  }
  60% {
    -webkit-transform: translateY(-15px);
  }
}
@-moz-keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    -moz-transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(-30px);
  }
  60% {
    -moz-transform: translateY(-15px);
  }
}
@-o-keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    -o-transform: translateY(0);
  }
  40% {
    -o-transform: translateY(-30px);
  }
  60% {
    -o-transform: translateY(-15px);
  }
}
@keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}
.bounce {
  -webkit-animation-name: bounce;
  -moz-animation-name: bounce;
  -o-animation-name: bounce;
  animation-name: bounce;
}
@-webkit-keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.05);
  }
  70% {
    -webkit-transform: scale(0.9);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@-moz-keyframes bounceIn {
  0% {
    opacity: 0;
    -moz-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -moz-transform: scale(1.05);
  }
  70% {
    -moz-transform: scale(0.9);
  }
  100% {
    -moz-transform: scale(1);
  }
}
@-o-keyframes bounceIn {
  0% {
    opacity: 0;
    -o-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -o-transform: scale(1.05);
  }
  70% {
    -o-transform: scale(0.9);
  }
  100% {
    -o-transform: scale(1);
  }
}
@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
.bounceIn {
  -webkit-animation-name: bounceIn;
  -moz-animation-name: bounceIn;
  -o-animation-name: bounceIn;
  animation-name: bounceIn;
}
@-webkit-keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
  }
  80% {
    -webkit-transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes bounceInDown {
  0% {
    opacity: 0;
    -moz-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateY(30px);
  }
  80% {
    -moz-transform: translateY(-10px);
  }
  100% {
    -moz-transform: translateY(0);
  }
}
@-o-keyframes bounceInDown {
  0% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateY(30px);
  }
  80% {
    -o-transform: translateY(-10px);
  }
  100% {
    -o-transform: translateY(0);
  }
}
@keyframes bounceInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(30px);
  }
  80% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}
.bounceInDown {
  -webkit-animation-name: bounceInDown;
  -moz-animation-name: bounceInDown;
  -o-animation-name: bounceInDown;
  animation-name: bounceInDown;
}
@-webkit-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
  }
  80% {
    -webkit-transform: translateX(-10px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -moz-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateX(30px);
  }
  80% {
    -moz-transform: translateX(-10px);
  }
  100% {
    -moz-transform: translateX(0);
  }
}
@-o-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateX(30px);
  }
  80% {
    -o-transform: translateX(-10px);
  }
  100% {
    -o-transform: translateX(0);
  }
}
@keyframes bounceInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(30px);
  }
  80% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
  }
}
.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  -moz-animation-name: bounceInLeft;
  -o-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}
@-webkit-keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
  }
  80% {
    -webkit-transform: translateX(10px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes bounceInRight {
  0% {
    opacity: 0;
    -moz-transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateX(-30px);
  }
  80% {
    -moz-transform: translateX(10px);
  }
  100% {
    -moz-transform: translateX(0);
  }
}
@-o-keyframes bounceInRight {
  0% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateX(-30px);
  }
  80% {
    -o-transform: translateX(10px);
  }
  100% {
    -o-transform: translateX(0);
  }
}
@keyframes bounceInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(-30px);
  }
  80% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}
.bounceInRight {
  -webkit-animation-name: bounceInRight;
  -moz-animation-name: bounceInRight;
  -o-animation-name: bounceInRight;
  animation-name: bounceInRight;
}
@-webkit-keyframes bounceInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
  }
  80% {
    -webkit-transform: translateY(10px);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes bounceInUp {
  0% {
    opacity: 0;
    -moz-transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateY(-30px);
  }
  80% {
    -moz-transform: translateY(10px);
  }
  100% {
    -moz-transform: translateY(0);
  }
}
@-o-keyframes bounceInUp {
  0% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateY(-30px);
  }
  80% {
    -o-transform: translateY(10px);
  }
  100% {
    -o-transform: translateY(0);
  }
}
@keyframes bounceInUp {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(-30px);
  }
  80% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(0);
  }
}
.bounceInUp {
  -webkit-animation-name: bounceInUp;
  -moz-animation-name: bounceInUp;
  -o-animation-name: bounceInUp;
  animation-name: bounceInUp;
}
@-webkit-keyframes bounceOut {
  0% {
    -webkit-transform: scale(1);
  }
  25% {
    -webkit-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.3);
  }
}
@-moz-keyframes bounceOut {
  0% {
    -moz-transform: scale(1);
  }
  25% {
    -moz-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -moz-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -moz-transform: scale(0.3);
  }
}
@-o-keyframes bounceOut {
  0% {
    -o-transform: scale(1);
  }
  25% {
    -o-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -o-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -o-transform: scale(0.3);
  }
}
@keyframes bounceOut {
  0% {
    transform: scale(1);
  }
  25% {
    transform: scale(0.95);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0;
    transform: scale(0.3);
  }
}
.bounceOut {
  -webkit-animation-name: bounceOut;
  -moz-animation-name: bounceOut;
  -o-animation-name: bounceOut;
  animation-name: bounceOut;
}
@-webkit-keyframes bounceOutDown {
  0% {
    -webkit-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
}
@-moz-keyframes bounceOutDown {
  0% {
    -moz-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -moz-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(2000px);
  }
}
@-o-keyframes bounceOutDown {
  0% {
    -o-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
}
@keyframes bounceOutDown {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  -moz-animation-name: bounceOutDown;
  -o-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}
@-webkit-keyframes bounceOutLeft {
  0% {
    -webkit-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
}
@-moz-keyframes bounceOutLeft {
  0% {
    -moz-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -moz-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(-2000px);
  }
}
@-o-keyframes bounceOutLeft {
  0% {
    -o-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
}
@keyframes bounceOutLeft {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(20px);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  -moz-animation-name: bounceOutLeft;
  -o-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}
@-webkit-keyframes bounceOutRight {
  0% {
    -webkit-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
}
@-moz-keyframes bounceOutRight {
  0% {
    -moz-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -moz-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(2000px);
  }
}
@-o-keyframes bounceOutRight {
  0% {
    -o-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
}
@keyframes bounceOutRight {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  -moz-animation-name: bounceOutRight;
  -o-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}
@-webkit-keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
}
@-moz-keyframes bounceOutUp {
  0% {
    -moz-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -moz-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(-2000px);
  }
}
@-o-keyframes bounceOutUp {
  0% {
    -o-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
}
@keyframes bounceOutUp {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(20px);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  -moz-animation-name: bounceOutUp;
  -o-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  -moz-animation-name: fadeIn;
  -o-animation-name: fadeIn;
  animation-name: fadeIn;
}
@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes fadeInDown {
  0% {
    opacity: 0;
    -moz-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
}
@-o-keyframes fadeInDown {
  0% {
    opacity: 0;
    -ms-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  -moz-animation-name: fadeInDown;
  -o-animation-name: fadeInDown;
  animation-name: fadeInDown;
}
@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -moz-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
}
@-o-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}
@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  -moz-animation-name: fadeInDownBig;
  -o-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}
@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -moz-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
}
@-o-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -o-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  -moz-animation-name: fadeInLeft;
  -o-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}
@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -moz-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
}
@-o-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  -moz-animation-name: fadeInLeftBig;
  -o-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}
@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes fadeInRight {
  0% {
    opacity: 0;
    -moz-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
}
@-o-keyframes fadeInRight {
  0% {
    opacity: 0;
    -o-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  -moz-animation-name: fadeInRight;
  -o-animation-name: fadeInRight;
  animation-name: fadeInRight;
}
@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -moz-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
}
@-o-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  -moz-animation-name: fadeInRightBig;
  -o-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes fadeInUp {
  0% {
    opacity: 0;
    -moz-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
}
@-o-keyframes fadeInUp {
  0% {
    opacity: 0;
    -o-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  -moz-animation-name: fadeInUp;
  -o-animation-name: fadeInUp;
  animation-name: fadeInUp;
}
@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -moz-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
}
@-o-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  -moz-animation-name: fadeInUpBig;
  -o-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}
@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-moz-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-o-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.fadeOut {
  -webkit-animation-name: fadeOut;
  -moz-animation-name: fadeOut;
  -o-animation-name: fadeOut;
  animation-name: fadeOut;
}
@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
}
@-moz-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(20px);
  }
}
@-o-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(20px);
  }
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(20px);
  }
}
.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  -moz-animation-name: fadeOutDown;
  -o-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}
@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
}
@-moz-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(2000px);
  }
}
@-o-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
}
@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  -moz-animation-name: fadeOutDownBig;
  -o-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}
@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
}
@-moz-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(-20px);
  }
}
@-o-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(-20px);
  }
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-20px);
  }
}
.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  -moz-animation-name: fadeOutLeft;
  -o-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}
@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
}
@-moz-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(-2000px);
  }
}
@-o-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
}
@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  -moz-animation-name: fadeOutLeftBig;
  -o-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}
@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
}
@-moz-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(20px);
  }
}
@-o-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(20px);
  }
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(20px);
  }
}
.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  -moz-animation-name: fadeOutRight;
  -o-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}
@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
}
@-moz-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(2000px);
  }
}
@-o-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
}
@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  -moz-animation-name: fadeOutRightBig;
  -o-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}
@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
}
@-moz-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(-20px);
  }
}
@-o-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(-20px);
  }
}
@keyframes fadeOutUp {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-20px);
  }
}
.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  -moz-animation-name: fadeOutUp;
  -o-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}
@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
}
@-moz-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(-2000px);
  }
}
@-o-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
}
@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  -moz-animation-name: fadeOutUpBig;
  -o-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}
@-webkit-keyframes flash {
  0%,
  50%,
  100% {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}
@-moz-keyframes flash {
  0%,
  50%,
  100% {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}
@-o-keyframes flash {
  0%,
  50%,
  100% {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}
@keyframes flash {
  0%,
  50%,
  100% {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}
.flash {
  -webkit-animation-name: flash;
  -moz-animation-name: flash;
  -o-animation-name: flash;
  animation-name: flash;
}
@-webkit-keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotateY(0);
    -webkit-animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -webkit-animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -webkit-animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -webkit-animation-timing-function: ease-in;
  }
  100% {
    -webkit-transform: perspective(400px) scale(1);
    -webkit-animation-timing-function: ease-in;
  }
}
@-moz-keyframes flip {
  0% {
    -moz-transform: perspective(400px) rotateY(0);
    -moz-animation-timing-function: ease-out;
  }
  40% {
    -moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -moz-animation-timing-function: ease-out;
  }
  50% {
    -moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -moz-animation-timing-function: ease-in;
  }
  80% {
    -moz-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -moz-animation-timing-function: ease-in;
  }
  100% {
    -moz-transform: perspective(400px) scale(1);
    -moz-animation-timing-function: ease-in;
  }
}
@-o-keyframes flip {
  0% {
    -o-transform: perspective(400px) rotateY(0);
    -o-animation-timing-function: ease-out;
  }
  40% {
    -o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -o-animation-timing-function: ease-out;
  }
  50% {
    -o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -o-animation-timing-function: ease-in;
  }
  80% {
    -o-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -o-animation-timing-function: ease-in;
  }
  100% {
    -o-transform: perspective(400px) scale(1);
    -o-animation-timing-function: ease-in;
  }
}
@keyframes flip {
  0% {
    transform: perspective(400px) rotateY(0);
    animation-timing-function: ease-out;
  }
  40% {
    transform: perspective(400px) translateZ(150px) rotateY(170deg);
    animation-timing-function: ease-out;
  }
  50% {
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    animation-timing-function: ease-in;
  }
  80% {
    transform: perspective(400px) rotateY(360deg) scale(0.95);
    animation-timing-function: ease-in;
  }
  100% {
    transform: perspective(400px) scale(1);
    animation-timing-function: ease-in;
  }
}
.flip {
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -o-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-backface-visibility: visible !important;
  -webkit-animation-name: flip;
  -moz-backface-visibility: visible !important;
  -moz-animation-name: flip;
  -o-backface-visibility: visible !important;
  -o-animation-name: flip;
  backface-visibility: visible !important;
  animation-name: flip;
}
@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateX(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@-moz-keyframes flipInX {
  0% {
    -moz-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    -moz-transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    -moz-transform: perspective(400px) rotateX(10deg);
  }
  100% {
    -moz-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@-o-keyframes flipInX {
  0% {
    -o-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    -o-transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    -o-transform: perspective(400px) rotateX(10deg);
  }
  100% {
    -o-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@keyframes flipInX {
  0% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    transform: perspective(400px) rotateX(10deg);
  }
  100% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
.flipInX {
  -webkit-backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  -moz-backface-visibility: visible !important;
  -moz-animation-name: flipInX;
  -o-backface-visibility: visible !important;
  -o-animation-name: flipInX;
  backface-visibility: visible !important;
  animation-name: flipInX;
}
@-webkit-keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@-moz-keyframes flipInY {
  0% {
    -moz-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -moz-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -moz-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -moz-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@-o-keyframes flipInY {
  0% {
    -o-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -o-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -o-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -o-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@keyframes flipInY {
  0% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    transform: perspective(400px) rotateY(10deg);
  }
  100% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
.flipInY {
  -webkit-backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  -moz-backface-visibility: visible !important;
  -moz-animation-name: flipInY;
  -o-backface-visibility: visible !important;
  -o-animation-name: flipInY;
  backface-visibility: visible !important;
  animation-name: flipInY;
}
@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@-moz-keyframes flipOutX {
  0% {
    -moz-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -moz-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@-o-keyframes flipOutX {
  0% {
    -o-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -o-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@keyframes flipOutX {
  0% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
.flipOutX {
  -webkit-animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  -moz-animation-name: flipOutX;
  -moz-backface-visibility: visible !important;
  -o-animation-name: flipOutX;
  -o-backface-visibility: visible !important;
  animation-name: flipOutX;
  backface-visibility: visible !important;
}
@-webkit-keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@-moz-keyframes flipOutY {
  0% {
    -moz-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -moz-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@-o-keyframes flipOutY {
  0% {
    -o-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -o-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@keyframes flipOutY {
  0% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
.flipOutY {
  -webkit-backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  -moz-backface-visibility: visible !important;
  -moz-animation-name: flipOutY;
  -o-backface-visibility: visible !important;
  -o-animation-name: flipOutY;
  backface-visibility: visible !important;
  animation-name: flipOutY;
}
@-webkit-keyframes hinge {
  0% {
    -webkit-transform: rotate(0);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  20%,
  60% {
    -webkit-transform: rotate(80deg);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  40% {
    -webkit-transform: rotate(60deg);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  80% {
    -webkit-transform: rotate(60deg) translateY(0);
    opacity: 1;
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  100% {
    -webkit-transform: translateY(700px);
    opacity: 0;
  }
}
@-moz-keyframes hinge {
  0% {
    -moz-transform: rotate(0);
    -moz-transform-origin: top left;
    -moz-animation-timing-function: ease-in-out;
  }
  20%,
  60% {
    -moz-transform: rotate(80deg);
    -moz-transform-origin: top left;
    -moz-animation-timing-function: ease-in-out;
  }
  40% {
    -moz-transform: rotate(60deg);
    -moz-transform-origin: top left;
    -moz-animation-timing-function: ease-in-out;
  }
  80% {
    -moz-transform: rotate(60deg) translateY(0);
    opacity: 1;
    -moz-transform-origin: top left;
    -moz-animation-timing-function: ease-in-out;
  }
  100% {
    -moz-transform: translateY(700px);
    opacity: 0;
  }
}
@-o-keyframes hinge {
  0% {
    -o-transform: rotate(0);
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  20%,
  60% {
    -o-transform: rotate(80deg);
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  40% {
    -o-transform: rotate(60deg);
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  80% {
    -o-transform: rotate(60deg) translateY(0);
    opacity: 1;
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  100% {
    -o-transform: translateY(700px);
    opacity: 0;
  }
}
@keyframes hinge {
  0% {
    transform: rotate(0);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  20%,
  60% {
    transform: rotate(80deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  40% {
    transform: rotate(60deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  80% {
    transform: rotate(60deg) translateY(0);
    opacity: 1;
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  100% {
    transform: translateY(700px);
    opacity: 0;
  }
}
.hinge {
  -webkit-animation-name: hinge;
  -moz-animation-name: hinge;
  -o-animation-name: hinge;
  animation-name: hinge;
}
@-webkit-keyframes lightSpeedIn {
  0% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@-moz-keyframes lightSpeedIn {
  0% {
    -moz-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -moz-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -moz-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -moz-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@-o-keyframes lightSpeedIn {
  0% {
    -o-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -o-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -o-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -o-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@keyframes lightSpeedIn {
  0% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  -moz-animation-name: lightSpeedIn;
  -o-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  -moz-animation-timing-function: ease-out;
  -o-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}
@-webkit-keyframes lightSpeedOut {
  0% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@-moz-keyframes lightSpeedOut {
  0% {
    -moz-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -moz-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@-o-keyframes lightSpeedOut {
  0% {
    -o-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -o-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOut {
  0% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  -moz-animation-name: lightSpeedOut;
  -o-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  -moz-animation-timing-function: ease-in;
  -o-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@-moz-keyframes pulse {
  0% {
    -moz-transform: scale(1);
  }
  50% {
    -moz-transform: scale(1.1);
  }
  100% {
    -moz-transform: scale(1);
  }
}
@-o-keyframes pulse {
  0% {
    -o-transform: scale(1);
  }
  50% {
    -o-transform: scale(1.1);
  }
  100% {
    -o-transform: scale(1);
  }
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.pulse {
  -webkit-animation-name: pulse;
  -moz-animation-name: pulse;
  -o-animation-name: pulse;
  animation-name: pulse;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
  }
}
@-moz-keyframes rollIn {
  0% {
    opacity: 0;
    -moz-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0px) rotate(0deg);
  }
}
@-o-keyframes rollIn {
  0% {
    opacity: 0;
    -o-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0px) rotate(0deg);
  }
}
@keyframes rollIn {
  0% {
    opacity: 0;
    transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
}
.rollIn {
  -webkit-animation-name: rollIn;
  -moz-animation-name: rollIn;
  -o-animation-name: rollIn;
  animation-name: rollIn;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(100%) rotate(120deg);
  }
}
@-moz-keyframes rollOut {
  0% {
    opacity: 1;
    -moz-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(100%) rotate(120deg);
  }
}
@-o-keyframes rollOut {
  0% {
    opacity: 1;
    -o-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(100%) rotate(120deg);
  }
}
@keyframes rollOut {
  0% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    transform: translateX(100%) rotate(120deg);
  }
}
.rollOut {
  -webkit-animation-name: rollOut;
  -moz-animation-name: rollOut;
  -o-animation-name: rollOut;
  animation-name: rollOut;
}
@-webkit-keyframes rotateIn {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-moz-keyframes rotateIn {
  0% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateIn {
  0% {
    -o-transform-origin: center center;
    -o-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: center center;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateIn {
  0% {
    transform-origin: center center;
    transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateIn {
  -webkit-animation-name: rotateIn;
  -moz-animation-name: rotateIn;
  -o-animation-name: rotateIn;
  animation-name: rotateIn;
}
@-webkit-keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-moz-keyframes rotateInDownLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInDownLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  -moz-animation-name: rotateInDownLeft;
  -o-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}
@-webkit-keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-moz-keyframes rotateInDownRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInDownRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  -moz-animation-name: rotateInDownRight;
  -o-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}
@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-moz-keyframes rotateInUpLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInUpLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  -moz-animation-name: rotateInUpLeft;
  -o-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}
@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-moz-keyframes rotateInUpRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInUpRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  -moz-animation-name: rotateInUpRight;
  -o-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}
@-webkit-keyframes rotateOut {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(200deg);
    opacity: 0;
  }
}
@-moz-keyframes rotateOut {
  0% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(200deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOut {
  0% {
    -o-transform-origin: center center;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: center center;
    -o-transform: rotate(200deg);
    opacity: 0;
  }
}
@keyframes rotateOut {
  0% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: center center;
    transform: rotate(200deg);
    opacity: 0;
  }
}
.rotateOut {
  -webkit-animation-name: rotateOut;
  -moz-animation-name: rotateOut;
  -o-animation-name: rotateOut;
  animation-name: rotateOut;
}
@-webkit-keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
}
@-moz-keyframes rotateOutDownLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutDownLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  -moz-animation-name: rotateOutDownLeft;
  -o-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}
@-webkit-keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-moz-keyframes rotateOutDownRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutDownRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}
.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  -moz-animation-name: rotateOutDownRight;
  -o-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}
@-webkit-keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-moz-keyframes rotateOutUpLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutUpLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    -transform-origin: left bottom;
    -transform: rotate(-90deg);
    opacity: 0;
  }
}
.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  -moz-animation-name: rotateOutUpLeft;
  -o-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}
@-webkit-keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
}
@-moz-keyframes rotateOutUpRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutUpRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  -moz-animation-name: rotateOutUpRight;
  -o-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}
@-webkit-keyframes shake {
  0%,
  100% {
    -webkit-transform: translateX(0);
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translateX(-10px);
  }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translateX(10px);
  }
}
@-moz-keyframes shake {
  0%,
  100% {
    -moz-transform: translateX(0);
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    -moz-transform: translateX(-10px);
  }
  20%,
  40%,
  60%,
  80% {
    -moz-transform: translateX(10px);
  }
}
@-o-keyframes shake {
  0%,
  100% {
    -o-transform: translateX(0);
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    -o-transform: translateX(-10px);
  }
  20%,
  40%,
  60%,
  80% {
    -o-transform: translateX(10px);
  }
}
@keyframes shake {
  0%,
  100% {
    transform: translateX(0);
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    transform: translateX(-10px);
  }
  20%,
  40%,
  60%,
  80% {
    transform: translateX(10px);
  }
}
.shake {
  -webkit-animation-name: shake;
  -moz-animation-name: shake;
  -o-animation-name: shake;
  animation-name: shake;
}
@-webkit-keyframes swing {
  20%,
  40%,
  60%,
  80%,
  100% {
    -webkit-transform-origin: top center;
  }
  20% {
    -webkit-transform: rotate(15deg);
  }
  40% {
    -webkit-transform: rotate(-10deg);
  }
  60% {
    -webkit-transform: rotate(5deg);
  }
  80% {
    -webkit-transform: rotate(-5deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
  }
}
@-moz-keyframes swing {
  20% {
    -moz-transform: rotate(15deg);
  }
  40% {
    -moz-transform: rotate(-10deg);
  }
  60% {
    -moz-transform: rotate(5deg);
  }
  80% {
    -moz-transform: rotate(-5deg);
  }
  100% {
    -moz-transform: rotate(0deg);
  }
}
@-o-keyframes swing {
  20% {
    -o-transform: rotate(15deg);
  }
  40% {
    -o-transform: rotate(-10deg);
  }
  60% {
    -o-transform: rotate(5deg);
  }
  80% {
    -o-transform: rotate(-5deg);
  }
  100% {
    -o-transform: rotate(0deg);
  }
}
@keyframes swing {
  20% {
    transform: rotate(15deg);
  }
  40% {
    transform: rotate(-10deg);
  }
  60% {
    transform: rotate(5deg);
  }
  80% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
.swing {
  -webkit-transform-origin: top center;
  -moz-transform-origin: top center;
  -o-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  -moz-animation-name: swing;
  -o-animation-name: swing;
  animation-name: swing;
}
@-webkit-keyframes tada {
  0% {
    -webkit-transform: scale(1);
  }
  10%,
  20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
  }
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale(1.1) rotate(3deg);
  }
  40%,
  60%,
  80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(0);
  }
}
@-moz-keyframes tada {
  0% {
    -moz-transform: scale(1);
  }
  10%,
  20% {
    -moz-transform: scale(0.9) rotate(-3deg);
  }
  30%,
  50%,
  70%,
  90% {
    -moz-transform: scale(1.1) rotate(3deg);
  }
  40%,
  60%,
  80% {
    -moz-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -moz-transform: scale(1) rotate(0);
  }
}
@-o-keyframes tada {
  0% {
    -o-transform: scale(1);
  }
  10%,
  20% {
    -o-transform: scale(0.9) rotate(-3deg);
  }
  30%,
  50%,
  70%,
  90% {
    -o-transform: scale(1.1) rotate(3deg);
  }
  40%,
  60%,
  80% {
    -o-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -o-transform: scale(1) rotate(0);
  }
}
@keyframes tada {
  0% {
    transform: scale(1);
  }
  10%,
  20% {
    transform: scale(0.9) rotate(-3deg);
  }
  30%,
  50%,
  70%,
  90% {
    transform: scale(1.1) rotate(3deg);
  }
  40%,
  60%,
  80% {
    transform: scale(1.1) rotate(-3deg);
  }
  100% {
    transform: scale(1) rotate(0);
  }
}
.tada {
  -webkit-animation-name: tada;
  -moz-animation-name: tada;
  -o-animation-name: tada;
  animation-name: tada;
}
@-webkit-keyframes wiggle {
  0% {
    -webkit-transform: skewX(9deg);
  }
  10% {
    -webkit-transform: skewX(-8deg);
  }
  20% {
    -webkit-transform: skewX(7deg);
  }
  30% {
    -webkit-transform: skewX(-6deg);
  }
  40% {
    -webkit-transform: skewX(5deg);
  }
  50% {
    -webkit-transform: skewX(-4deg);
  }
  60% {
    -webkit-transform: skewX(3deg);
  }
  70% {
    -webkit-transform: skewX(-2deg);
  }
  80% {
    -webkit-transform: skewX(1deg);
  }
  90% {
    -webkit-transform: skewX(0deg);
  }
  100% {
    -webkit-transform: skewX(0deg);
  }
}
@-moz-keyframes wiggle {
  0% {
    -moz-transform: skewX(9deg);
  }
  10% {
    -moz-transform: skewX(-8deg);
  }
  20% {
    -moz-transform: skewX(7deg);
  }
  30% {
    -moz-transform: skewX(-6deg);
  }
  40% {
    -moz-transform: skewX(5deg);
  }
  50% {
    -moz-transform: skewX(-4deg);
  }
  60% {
    -moz-transform: skewX(3deg);
  }
  70% {
    -moz-transform: skewX(-2deg);
  }
  80% {
    -moz-transform: skewX(1deg);
  }
  90% {
    -moz-transform: skewX(0deg);
  }
  100% {
    -moz-transform: skewX(0deg);
  }
}
@-o-keyframes wiggle {
  0% {
    -o-transform: skewX(9deg);
  }
  10% {
    -o-transform: skewX(-8deg);
  }
  20% {
    -o-transform: skewX(7deg);
  }
  30% {
    -o-transform: skewX(-6deg);
  }
  40% {
    -o-transform: skewX(5deg);
  }
  50% {
    -o-transform: skewX(-4deg);
  }
  60% {
    -o-transform: skewX(3deg);
  }
  70% {
    -o-transform: skewX(-2deg);
  }
  80% {
    -o-transform: skewX(1deg);
  }
  90% {
    -o-transform: skewX(0deg);
  }
  100% {
    -o-transform: skewX(0deg);
  }
}
@keyframes wiggle {
  0% {
    transform: skewX(9deg);
  }
  10% {
    transform: skewX(-8deg);
  }
  20% {
    transform: skewX(7deg);
  }
  30% {
    transform: skewX(-6deg);
  }
  40% {
    transform: skewX(5deg);
  }
  50% {
    transform: skewX(-4deg);
  }
  60% {
    transform: skewX(3deg);
  }
  70% {
    transform: skewX(-2deg);
  }
  80% {
    transform: skewX(1deg);
  }
  90% {
    transform: skewX(0deg);
  }
  100% {
    transform: skewX(0deg);
  }
}
.wiggle {
  -webkit-animation-name: wiggle;
  -moz-animation-name: wiggle;
  -o-animation-name: wiggle;
  animation-name: wiggle;
  -webkit-animation-timing-function: ease-in;
  -moz-animation-timing-function: ease-in;
  -o-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  0% {
    -webkit-transform: translateX(0%);
  }
  15% {
    -webkit-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -webkit-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -webkit-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -webkit-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -webkit-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -webkit-transform: translateX(0%);
  }
}
@-moz-keyframes wobble {
  0% {
    -moz-transform: translateX(0%);
  }
  15% {
    -moz-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -moz-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -moz-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -moz-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -moz-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -moz-transform: translateX(0%);
  }
}
@-o-keyframes wobble {
  0% {
    -o-transform: translateX(0%);
  }
  15% {
    -o-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -o-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -o-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -o-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -o-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -o-transform: translateX(0%);
  }
}
@keyframes wobble {
  0% {
    transform: translateX(0%);
  }
  15% {
    transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    transform: translateX(20%) rotate(3deg);
  }
  45% {
    transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    transform: translateX(10%) rotate(2deg);
  }
  75% {
    transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    transform: translateX(0%);
  }
}
.wobble {
  -webkit-animation-name: wobble;
  -moz-animation-name: wobble;
  -o-animation-name: wobble;
  animation-name: wobble;
}
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  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);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
}
.slick-track:before,
.slick-track:after {
  display: table;
  content: '';
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}
.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}
[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;
}
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden],
template {
  display: none;
}
a {
  background-color: transparent;
}
a:active,
a:hover {
  outline: 0;
}
abbr[title] {
  border-bottom: 1px dotted;
}
b,
strong {
  font-weight: bold;
}
dfn {
  font-style: italic;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
mark {
  background: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
img {
  border: 0;
}
svg:not(:root) {
  overflow: hidden;
}
figure {
  margin: 1em 40px;
}
hr {
  box-sizing: content-box;
  height: 0;
}
pre {
  overflow: auto;
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}
button {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled],
html input[disabled] {
  cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
input {
  line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  border: 0;
  padding: 0;
}
textarea {
  overflow: auto;
}
optgroup {
  font-weight: bold;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td,
th {
  padding: 0;
}
* {
  box-sizing: border-box;
  outline-color: #a8052b;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
*:not[html] {
  -webkit-transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -webkit-perspective: 1000;
}
::selection {
  background: rgba(168, 5, 43, 0.5);
}
::-moz-selection {
  background: rgba(168, 5, 43, 0.5);
}
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}
html,
body,
form {
  height: 100%!important;
}
.container {
  min-height: 100%;
  margin: 0 auto -265px;
}
.container.small {
  margin: 0 auto -160px;
}
.container.alternate {
  margin: 0 auto -120px;
}
footer,
.push {
  height: 280px;
}
footer.small,
.push.small {
  height: 160px;
}
footer.alternate,
.push.alternate {
  height: 120px;
}
body {
  padding: 0;
  margin: 0;
  background: #eeeeee;
  font-family: 'Open Sans', sans-serif;
}
strong,
b {
  font-weight: 600;
}
a {
  text-decoration: none;
  color: #a8052b;
  position: relative;
}
a:hover {
  text-decoration: underline;
}
a.accordion:hover,
a.btn:hover {
  text-decoration: none;
}
h2 {
  font-weight: 300;
  font-size: 32px;
  line-height: 32px;
}
h2.subtitle {
  font-size: 24px;
  border-bottom: 4px #dbdbdb solid;
}
h3 {
  font-size: 21px;
  font-weight: 400;
}
h3.no-margin {
  margin: 5px 0;
  font-size: 18px;
}
h3 a:hover {
  color: #000000;
}
h4 {
  font-weight: 400;
  font-size: 18px;
  color: #1fa4a2;
  text-transform: uppercase;
}
.hidden {
  display: none;
}
.hidden-xs {
  display: inline;
}
.hidden-lg {
  display: none;
}
h1 {
  height: 315px;
  font-weight: 400;
  font-size: 42px;
  color: #ffffff;
  position: relative;
  margin: 0;
}
h1 .bg,
h1 .gradient {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
h1 .gradient {
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.5) 100%);
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.5) 100%);
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.5) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=0);
  z-index: 2;
}
h1 .label {
  position: absolute;
  z-index: 3;
  left: 25.4%;
  bottom: 10px;
  line-height: 45px;
}
h1.text {
  background: #282828;
  height: 115px;
}
h1.text span.label {
  bottom: 10px;
  top: auto;
}
h1 span.wrapper {
  position: relative;
  display: block;
  height: 115px;
}
.cover {
  background-size: cover;
  background-position: center center;
}
.wrapper {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
.wrapper:not(.large) {
  padding: 0 12px;
}
.wrapper:before,
.wrapper:after {
  content: " ";
  display: table;
}
.wrapper:after {
  clear: both;
}
.wrapper:before,
.wrapper:after {
  content: " ";
  display: table;
}
.wrapper:after {
  clear: both;
}
.wrapper.large {
  width: 100%;
  max-width: 1280px;
}
header.main {
  background: #ffffff;
  position: relative;
  z-index: 12;
  width: 100%;
}
header.main .wrapper:before,
header.main .wrapper:after {
  content: " ";
  display: table;
}
header.main .wrapper:after {
  clear: both;
}
header.main .wrapper:before,
header.main .wrapper:after {
  content: " ";
  display: table;
}
header.main .wrapper:after {
  clear: both;
}
header.main .wrapper a.logo {
  float: left;
  font-family: "Myriad Pro Bold", sans-serif;
  font-size: 16px;
  font-weight: bold;
  color: #590317;
  z-index: 5;
}
header.main .wrapper a.logo:before,
header.main .wrapper a.logo:after {
  content: " ";
  display: table;
}
header.main .wrapper a.logo:after {
  clear: both;
}
header.main .wrapper a.logo:before,
header.main .wrapper a.logo:after {
  content: " ";
  display: table;
}
header.main .wrapper a.logo:after {
  clear: both;
}
header.main .wrapper a.logo img,
header.main .wrapper a.logo > span {
  float: left;
}
header.main .wrapper a.logo > span {
  margin-top: 11px;
  display: block;
}
header.main .wrapper a.logo > span span {
  display: block;
}
header.main .wrapper nav {
  padding-top: 30px;
  float: right;
  position: relative;
}
header.main .wrapper nav a {
  color: #000000;
  text-decoration: none;
  position: relative;
  margin-left: 65px;
  font-size: 14px;
  /*&:nth-child(1), &:nth-child(2), &:nth-child(3), &:nth-child(4), &:nth-child(5) {
					margin-left: 65px;
					font-size: 14px;
				}*/
  /*icon link nav class to fixe width / height */
}
header.main .wrapper nav a.home img {
  top: -5px;
  width: 24px;
  height: 24px;
}
header.main .wrapper nav a.schedule img,
header.main .wrapper nav a.horaire img {
  top: -4px;
  width: 24px;
  height: 24px;
}
header.main .wrapper nav a.find img {
  top: -4px;
  width: 25px;
  height: 25px;
}
header.main .wrapper nav a.contact img {
  top: -4px;
  width: 21px;
  height: 21px;
}
header.main .wrapper nav a.search img {
  top: -4px;
  width: 20px;
  height: 20px;
}
header.main .wrapper nav a img {
  position: absolute;
  left: -32px;
}
header.main .wrapper nav span.languageSelector a {
  font-size: 16px;
  margin-left: 40px;
}
header.main .wrapper nav input[type=text] {
  width: 220px;
  height: 40px;
  border-radius: 2px;
  background-color: #eeeeee;
  border: none;
  padding: 5px 38px 5px 10px;
  margin-left: 40px;
}
header.main .wrapper nav input[type=text] + a {
  position: absolute;
  right: 10px;
  top: 34px;
  padding-right: 0;
}
header.main .wrapper nav input[type=text] + a img {
  position: relative;
  left: 0;
  top: 0;
  width: 17px;
}
header.content.wrapper.large h1.activity-search span.label {
  left: 5%;
}
header.content.wrapper.large h1 span.label {
  left: 27%;
  padding-right: 10px;
}
nav.menu {
  display: none;
}
nav.menu .top,
nav.menu .bottom,
nav.menu .language {
  display: none;
}
nav.mobile a.button-menu {
  display: none;
}
nav.top {
  height: 65px;
  background-color: #000000;
}
nav.top ul {
  border-collapse: collapse;
  padding: 0;
  margin: 0;
  list-style: none;
  width: 100%;
  display: table;
}
nav.top ul li {
  display: table-cell;
  text-align: center;
}
nav.top ul li:first-child {
  text-align: left;
}
nav.top ul li:last-child {
  text-align: right;
}
nav.top ul li a {
  display: inline-block;
  color: #ffffff;
  border-radius: 2px;
  padding: 8px 8px;
  text-decoration: none;
  font-size: 16px;
  margin-top: 14px;
  -webkit-transition: 100ms all ease-in-out;
  -o-transition: 100ms all ease-in-out;
  transition: 100ms all ease-in-out;
}
nav.top ul li.black a {
  background-color: #000000;
}
nav.top ul li:not(.black).active a,
nav.top ul li:not(.black).CMSListMenuHighlightedLI a,
nav.top ul li:not(.black) a:hover {
  background: #a8052b;
}
aside.sidebar {
  width: 25%;
  padding-right: 30px;
  float: left;
  margin-top: 15px;
  padding-left: 10px;
}
@media only screen and (max-width: 1024px) {
  aside.sidebar {
    padding-left: 0;
  }
}
aside.sidebar.news {
  padding-left: 0;
}
aside.sidebar h3 {
  font-size: 18px;
  margin: 0 0 10px 0;
  color: #a8052b;
}
aside.sidebar ul:not(.address) {
  padding: 0;
  margin: 0;
  list-style: none;
}
aside.sidebar ul:not(.address) li {
  cursor: pointer;
  margin-bottom: 2px;
}
aside.sidebar ul:not(.address) li a {
  cursor: pointer;
  padding: 10px 25px 10px 15px;
  display: block;
  background-color: #ffffff;
  position: relative;
}
aside.sidebar ul:not(.address) li a:after {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_red.svg");
  background-size: 100% auto;
  content: " ";
  height: 10px;
  position: absolute;
  right: 10px;
  top: 16px;
  width: 6px;
}
aside.sidebar ul:not(.address) li a:hover {
  text-decoration: none;
  background: #a8052b;
  color: #ffffff;
  -webkit-transition: background-color 300ms ease-in-out;
  -o-transition: background-color 300ms ease-in-out;
  transition: background-color 300ms ease-in-out;
}
aside.sidebar ul:not(.address) li a:hover:after {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% auto;
  content: " ";
  height: 10px;
  position: absolute;
  right: 10px;
  top: 16px;
  width: 6px;
}
aside.sidebar ul:not(.address) li a.open {
  text-decoration: none;
  background: #a8052b;
  color: #ffffff;
}
aside.sidebar ul:not(.address) li a.open:after {
  background-image: url("/YMCA/media/skin/img/icons/arrow_down_white.svg");
  background-size: 100% auto;
  content: " ";
  height: 11px;
  position: absolute;
  right: 10px;
  top: 16px;
  width: 11px;
}
aside.sidebar ul:not(.address) li a.CMSListMenuLinkHighlighted {
  text-decoration: none;
  background: #a8052b;
  color: #ffffff;
}
aside.sidebar ul:not(.address) li a.arrowDown:after {
  background-image: url("/YMCA/media/skin/img/icons/arrow_down_white.svg");
  background-size: 100% auto;
  content: " ";
  height: 11px;
  position: absolute;
  right: 10px;
  top: 16px;
  width: 11px;
}
aside.sidebar ul:not(.address) li.CMSListMenuHighlightedLI ul {
  display: block;
}
aside.sidebar ul:not(.address) li ul {
  display: none;
}
aside.sidebar ul:not(.address) li ul li {
  margin-bottom: 0;
}
aside.sidebar ul:not(.address) li ul li a {
  display: block;
}
aside.sidebar ul:not(.address) li ul li a:hover,
aside.sidebar ul:not(.address) li ul li a.CMSListMenuLinkHighlighted {
  text-decoration: none;
  background: #ffffff;
  color: #000000;
}
aside.sidebar ul:not(.address) li ul li a:after {
  background-image: none;
}
aside.sidebar a.btn {
  text-align: left;
  padding: 10px 15px;
  border-radius: 0;
  text-decoration: none;
  margin: 5px 0;
}
aside.sidebar a.btn.white {
  background-color: #ffffff;
}
aside.sidebar a.btn.white:hover {
  background-color: #a8052b;
  color: #ffffff;
}
aside.sidebar .select {
  position: relative;
  margin: 10px 0;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
aside.sidebar select {
  font-size: 13px;
  color: #000000;
  border: 0;
  padding: 8px;
  z-index: 1;
  outline-color: transparent;
  -moz-user-select: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  border: 0px none !important;
  border-radius: 0px;
  background: #ffffff url("/YMCA/media/skin/img/icons/arrow_drop-down.svg") no-repeat scroll right 7px top 16px;
  width: 100%;
  text-indent: 0.01px;
  text-overflow: "";
}
aside.sidebar select::-ms-expand {
  display: none;
}
aside.sidebar .arrow {
  background-color: #ffffff;
  position: absolute;
  z-index: 2;
  top: 0px;
  right: 0;
  width: 22px;
  height: 37px;
  text-align: center;
  padding-top: 7px;
}
aside.sidebar .arrow img {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}
aside.sidebar .address {
  margin: 10px 0 30px;
  font-size: 14px;
}
aside.sidebar .address a {
  font-size: 13px;
}
aside.sidebar .address p {
  margin: 0;
  color: #4d4d4d;
}
aside.sidebar .address header {
  color: #000000;
}
aside.sidebar .address header.big {
  font-size: 16px;
}
aside.sidebar .address section {
  float: none;
}
@media only screen and (max-width: 1024px) {
  aside.sidebar .address section {
    float: left;
    margin-right: 7%;
  }
}
aside.sidebar .address section:not(:last-child) {
  margin-bottom: 25px;
  width: auto;
}
@media only screen and (max-width: 1024px) {
  aside.sidebar .address section:not(:last-child) {
    width: 213px;
  }
}
aside.sidebar .address section:not(.short) {
  height: auto;
}
@media only screen and (max-width: 1024px) {
  aside.sidebar .address section:not(.short) {
    display: block;
  }
}
aside.sidebar ul.address {
  padding: 0;
  margin: 0;
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3;
  -webkit-column-width: 200px;
  -moz-column-width: 200px;
  column-width: 200px;
  list-style: none;
  padding-right: 0;
}
aside.sidebar ul.address li {
  display: inline-block;
  padding-bottom: 15px;
  padding-right: 5px!important;
  list-style: none;
  min-width: 210px;
  font-size: 14px;
}
aside.sidebar ul.address li a {
  font-size: 13px;
  display: block;
}
aside.sidebar ul.address li p {
  margin: 0;
  color: #4d4d4d;
}
aside.sidebar ul.address li span {
  color: #000000;
}
aside.sidebar ul.address li span.big {
  font-size: 16px;
}
.address {
  margin: 10px 0 30px;
  font-size: 14px;
}
.address a {
  font-size: 13px;
}
.address p {
  margin: 0;
  color: #4d4d4d;
}
.address header {
  color: #000000;
}
.address header.big {
  font-size: 16px;
}
.address section:not(:last-child) {
  margin-bottom: 15px;
}
.arrowDown:after {
  background-image: url("/YMCA/media/skin/img/icons/arrow_down_white.svg");
  background-size: 100% auto;
  content: " ";
  height: 11px;
  position: absolute;
  right: 10px;
  top: 16px;
  width: 11px;
}
section.blogs {
  background: #ffffff;
  padding: 30px 0;
}
section.blogs h2 {
  padding: 0;
  margin: 0;
  font-weight: 300;
  font-size: 32px;
}
section.blogs .wrapper > div {
  margin-top: 20px;
}
section.blogs .wrapper > div:before,
section.blogs .wrapper > div:after {
  content: " ";
  display: table;
}
section.blogs .wrapper > div:after {
  clear: both;
}
section.blogs .wrapper > div:before,
section.blogs .wrapper > div:after {
  content: " ";
  display: table;
}
section.blogs .wrapper > div:after {
  clear: both;
}
section.blogs .wrapper > div:last-of-type {
  margin-bottom: 20px;
}
section.blogs a.blog {
  overflow: hidden;
  display: block;
  background-color: #ffffff;
  width: calc(50% - 10px);
  height: 140px;
  float: left;
  position: relative;
}
section.blogs a.blog:before,
section.blogs a.blog:after {
  content: " ";
  display: table;
}
section.blogs a.blog:after {
  clear: both;
}
section.blogs a.blog:before,
section.blogs a.blog:after {
  content: " ";
  display: table;
}
section.blogs a.blog:after {
  clear: both;
}
section.blogs a.blog:hover img {
  opacity: 1;
}
section.blogs a.blog span.text {
  z-index: 4;
  position: absolute;
  display: block;
  padding: 10px 0 0 15px;
  width: 357px;
  height: 100%;
  left: 0;
  top: 0;
}
section.blogs a.blog span.text span.headline {
  display: block;
  font-size: 18px;
  color: #a8052b;
  padding-right: 60px;
}
section.blogs a.blog span.text span.location,
section.blogs a.blog span.text span.date {
  font-size: 12px;
  color: #000000;
  position: absolute;
  bottom: 7px;
}
section.blogs a.blog span.text span.location {
  left: 15px;
}
section.blogs a.blog span.text span.date {
  right: 15px;
}
section.blogs a.blog span.angle {
  width: 350px;
  height: 500px;
  display: block;
  background-color: #e6e7e8;
  -webkit-transform: rotate(-30deg);
  -ms-transform: rotate(-30deg);
  -o-transform: rotate(-30deg);
  transform: rotate(-30deg);
  z-index: 3;
  position: absolute;
  left: -37px;
  top: -177px;
  -webkit-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
}
section.blogs a.blog span.overlay {
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
section.blogs a.blog img {
  -webkit-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
  float: right;
  z-index: 1;
  opacity: 0.8;
}
section.blogs a.blog:first-child {
  margin-right: 10px;
}
section.blogs a.blog:last-child {
  margin-left: 10px;
}
section.blogs a.blog.nothumbnail span.text {
  width: 100%;
}
section.blogs a.blog.nothumbnail span.text span {
  /*&.headline {
							padding-right: 295px;
						}*/
}
section.blogs a.blog.nothumbnail span.text span.date {
  right: 15px;
}
section.blogs a.arrow {
  color: #a8052b;
  text-decoration: none;
}
section.content {
  width: 75%;
  float: left;
  margin-top: 15px;
  margin-bottom: 40px;
  min-height: 100%;
  /*section.results{
		div.activity, section.activity.single{
			margin-top: 0;
		}
	}*/
}
section.content:before,
section.content:after {
  content: " ";
  display: table;
}
section.content:after {
  clear: both;
}
section.content:before,
section.content:after {
  content: " ";
  display: table;
}
section.content:after {
  clear: both;
}
section.content h2 {
  margin: 20px 0px;
}
section.content span.ErrorLabel {
  color: #CC0130;
  font-style: italic;
  display: block;
  margin-bottom: 10px;
}
section.content .rte ol li {
  padding-bottom: 5px;
}
section.content .rte ul.twoColumns {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
}
section.content .rte ul.threeColumns {
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3;
}
section.content .rte ul.twoColumns,
section.content .rte ul.threeColumns {
  background-color: #ffffff;
  -webkit-column-width: 220px;
  -moz-column-width: 220px;
  column-width: 220px;
  padding: 0 20px 15px 20px;
  list-style: none;
  padding-right: 0;
}
section.content .rte ul.twoColumns li,
section.content .rte ul.threeColumns li {
  display: inline-block;
  padding-bottom: 5px;
  padding-right: 5px!important;
  list-style: none;
  min-width: 225px;
}
section.content section.blogs {
  padding: 0!important;
}
section.content div.activity,
section.content section.activity.single {
  margin-top: 35px;
}
section.content section.activity .col div.activity {
  margin-top: 0px;
}
section.content .blogs .wrapper {
  padding-left: 0;
}
section.content.full {
  width: 100%;
}
section.content.full.nofloat {
  float: none;
}
section.content.full h2:first-of-type {
  margin: 10px 0 20px;
}
section.content.full .filterbox {
  margin-bottom: 0;
}
section.content.full .filterbox .content {
  padding: 15px 15px 15px;
  overflow: auto;
}
section.content.full .filterbox .content span.icon {
  border-radius: 50%;
  background-color: #ffffff;
  width: 45px;
  height: 45px;
  float: left;
  font-size: 32px;
  margin-right: 15px;
  text-align: center;
}
section.content.full .filterbox .content p {
  padding: 15px 15px 5px 15px;
  margin: 10px 0;
  font-weight: 600;
}
section.content.full .filterbox .content .cta-block {
  border-bottom: 1px solid rgba(255, 255, 255, 0.49);
  margin: 5px 0 0 47px;
  max-width: 90%;
  padding: 5px 15px 15px;
  text-align: left;
}
section.content.full .filterbox .content .cta-block input {
  margin-right: 6px;
}
section.content.full .filterbox .content a.cta {
  width: 210px;
  display: inline-block;
  padding: 10px 15px;
  margin-right: 20px;
}
section.content.full .filterbox .content a.cta.before {
  color: #ffffff;
  margin-left: 0;
}
section.content.full .filterbox .content a.cta span {
  display: block;
  font-size: 12px;
}
section.content.full .filterbox .content a.cta span.headline {
  font-size: 27px;
  text-align: center;
}
section.content.full .filterbox .content a.cta.white {
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.4);
  background-color: #ffffff;
  margin-left: 0;
}
section.content.full .filterbox .content a.cta.white span.headline {
  padding-bottom: 20px;
}
section.content.full .filterbox .content .content input {
  margin-right: 6px;
}
section.content.full .filterbox .content .content .col label {
  font-size: 15px;
}
section.content.full .filterbox .content .content.centre {
  margin-left: 47px;
}
section.content.full .filterbox .content .content.centre .col {
  float: left;
  display: block;
  position: relative;
  margin-right: 72px;
}
section.content.full .filterbox .content .content.centre .col div {
  padding: 10px 0px;
}
section.content.full .filterbox .content .content.centre .col div input {
  margin-right: 6px;
}
section.content.full .filterbox .content .content.horaire,
section.content.full .filterbox .content .content.categorie,
section.content.full .filterbox .content .content.groupe-age {
  margin: 5px 0 0 60px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.49);
  max-width: 90%;
  padding-bottom: 10px;
  padding: 5px 15px 15px;
  /*h3{
					    	margin:0;
					    	padding:10px 0;
					    }*/
}
section.content.full .filterbox .content .content.horaire p,
section.content.full .filterbox .content .content.categorie p,
section.content.full .filterbox .content .content.groupe-age p {
  font-weight: 400;
  font-size: 13px;
}
section.content.full .filterbox .content .content.horaire div p,
section.content.full .filterbox .content .content.categorie div p,
section.content.full .filterbox .content .content.groupe-age div p,
section.content.full .filterbox .content .content.horaire #AfficherCategorie p,
section.content.full .filterbox .content .content.categorie #AfficherCategorie p,
section.content.full .filterbox .content .content.groupe-age #AfficherCategorie p {
  padding: 10px 15px 10px;
  margin: 0;
}
section.content.full .filterbox .content .content.horaire .col,
section.content.full .filterbox .content .content.categorie .col,
section.content.full .filterbox .content .content.groupe-age .col {
  float: left;
  display: block;
  position: relative;
  margin-right: 70px;
}
section.content.full .filterbox .content .content.horaire .col div,
section.content.full .filterbox .content .content.categorie .col div,
section.content.full .filterbox .content .content.groupe-age .col div {
  padding: 9px 10px 9px 35px;
}
section.content.full .filterbox .content .content.horaire .col div .hours label,
section.content.full .filterbox .content .content.categorie .col div .hours label,
section.content.full .filterbox .content .content.groupe-age .col div .hours label,
section.content.full .filterbox .content .content.horaire .col div .divSubCategories label,
section.content.full .filterbox .content .content.categorie .col div .divSubCategories label,
section.content.full .filterbox .content .content.groupe-age .col div .divSubCategories label {
  font-size: 14px;
}
section.content.full .filterbox .content .content.horaire .col div .hours div,
section.content.full .filterbox .content .content.categorie .col div .hours div,
section.content.full .filterbox .content .content.groupe-age .col div .hours div,
section.content.full .filterbox .content .content.horaire .col div .divSubCategories div,
section.content.full .filterbox .content .content.categorie .col div .divSubCategories div,
section.content.full .filterbox .content .content.groupe-age .col div .divSubCategories div {
  padding: 5px 10px;
}
section.content.full .filterbox .content .content.horaire.schedule,
section.content.full .filterbox .content .content.categorie.schedule,
section.content.full .filterbox .content .content.groupe-age.schedule {
  margin: 5px 0 0;
  border-bottom: none;
}
section.content.full .filterbox .content .content.horaire.schedule .col div,
section.content.full .filterbox .content .content.categorie.schedule .col div,
section.content.full .filterbox .content .content.groupe-age.schedule .col div {
  padding: 9px 10px 9px 0;
}
section.content.full .filterbox .content .content.categorie .col div:first-of-type {
  padding-top: 5px;
}
section.content.full .filterbox .content .content.groupe-age {
  border: 0;
}
section.content.full .filterbox .content .btn {
  margin: 10px 0 10px 60px;
}
section.content.full.schedule table {
  background: transparent;
}
section.content.full.schedule table h4 {
  margin: 0;
}
section.content.full.schedule .filterbox .content .content.categorie {
  margin: 5px 0 0;
  border-bottom: none;
}
section.content.full.schedule .filterbox .content .content.categorie .col {
  margin-right: 0;
  padding-right: 10px;
  width: 50%;
}
section.content.full.schedule .filterbox .content .content.categorie .col div {
  padding: 9px 10px 9px 0;
}
section.content .rte {
  /*div.grey:first-of-type{
			p:first-of-type{
				strong{
					display: initial;
				}
			}
		}*/
}
section.content .rte div:first-of-type p:first-of-type strong {
  padding-top: 10px;
}
section.content .rte div.break:first-of-type p:first-of-type strong {
  padding-top: 0;
}
section.content .rte p.image {
  padding: 0px;
}
section.content .rte p.image + p {
  padding-top: 10px;
}
section.content .rte .videoWrapper {
  background: #ffffff none repeat scroll 0 0;
  padding-left: 20px;
}
section.content .rte .video iframe {
  width: 100%;
}
section.content .rte .cta.pdf p {
  color: #a8052b;
  padding-left: 15px;
}
section.content .rte .cta.pdf:before {
  top: 20px;
  left: 35px;
}
section.content .rte .cta.search p {
  color: #1fa4a2;
}
section.content .rte .cta.search:before {
  top: 25px;
  left: 35px;
}
section.content .rte .cta.pdf,
section.content .rte .cta.search {
  cursor: pointer;
  background-color: #ffffff;
}
section.content .rte .cta.pdf p,
section.content .rte .cta.search p {
  padding-left: 30px;
}
section.content .rte p.image img {
  width: 100%;
}
section.content a.cta,
section.content div.cta {
  padding: 20px 40px;
  display: inline-block;
  margin: 5px auto;
  max-width: 650px;
  border-radius: 3px;
}
section.content a.cta:hover,
section.content div.cta:hover {
  text-decoration: none;
}
section.content a.cta p,
section.content div.cta p {
  text-align: center;
  font-size: 21px;
  line-height: 28px;
  padding: 0;
  margin: 0;
  background-color: transparent;
  color: #ffffff;
}
section.content a.cta.before,
section.content div.cta.before {
  background-color: #a8052b;
}
section.content a.cta.before:hover,
section.content div.cta.before:hover {
  background-color: #e70036;
}
section.content a.cta.ongoing,
section.content div.cta.ongoing {
  background-color: #1fa4a2;
}
section.content a.cta.ongoing:hover,
section.content div.cta.ongoing:hover {
  background-color: #23bcb9;
}
section.content a.cta.after,
section.content div.cta.after {
  background-color: #4d4d4d;
}
section.content a.cta:nth-child(2),
section.content div.cta:nth-child(2) {
  margin-left: 15px;
}
section.content a.cta.pdf,
section.content div.cta.pdf {
  background-color: #ffffff;
}
section.content .cta-block {
  text-align: center;
  margin: 15px 0;
}
section.content .cta-block a.pdf {
  background-color: #ffffff;
}
section.content .cta-block a.pdf p {
  color: #a8052b;
}
section.content .cta-block a.pdf:before {
  top: 17px;
}
section.content p.caption {
  font-size: 12px;
  font-style: italic;
  color: #4d4d4d;
  margin: 0 0 15px 0;
  line-height: 16px;
  padding: 0 0 5px 0;
}
section.content p.small,
section.content p.footnote {
  padding-top: 15px;
  font-size: 14px;
  line-height: 20px;
}
section.content p span.grey,
section.content p.footnote {
  color: #727376;
}
section.content p.footnote {
  font-style: italic;
}
section.content p.image {
  padding: 0;
  background-size: cover;
  width: 100%;
}
section.content section.blogs a.blog {
  width: 615px;
  margin-left: 0;
  margin-right: 0;
}
section.content section.blogs a.blog span.angle {
  left: -10px;
}
section.content section.blogs a.blog.nothumbnail span.text span.date {
  right: 15px;
}
section.content section.blogs div.center {
  text-align: center;
  width: 615px;
}
section.content section.nouvelles {
  margin-bottom: 30px;
}
section.content section.nouvelles .n_2014,
section.content section.nouvelles .n_2013,
section.content section.nouvelles .n_2012 {
  display: none;
}
section.content section.nouvelles a.blog {
  margin-left: 0;
  margin-right: 0;
}
section.content section.nouvelles a.blog span.text span.date {
  right: -15px;
}
section.content section.nouvelles a.blog.nothumbnail span.text span.date {
  right: 15px;
}
section.content section.nouvelles .block > div:not(:first-of-type) {
  margin-top: 20px;
}
section.content section.nouvelles a.blog {
  text-decoration: none;
  overflow: hidden;
  display: block;
  background-color: #ffffff;
}
section.content section.nouvelles a.blog:before,
section.content section.nouvelles a.blog:after {
  content: " ";
  display: table;
}
section.content section.nouvelles a.blog:after {
  clear: both;
}
section.content section.nouvelles a.blog:before,
section.content section.nouvelles a.blog:after {
  content: " ";
  display: table;
}
section.content section.nouvelles a.blog:after {
  clear: both;
}
section.content section.nouvelles a.blog span.text {
  /*z-index: 4;
					position: absolute;*/
  display: block;
  padding: 10px 0 0 15px;
  width: 60%;
  height: 100%;
}
section.content section.nouvelles a.blog span.text span.headline {
  display: block;
  font-size: 18px;
  color: #a8052b;
  padding-right: 60px;
}
section.content section.nouvelles a.blog span.text span.date {
  font-size: 12px;
  color: #000000;
}
section.content section.nouvelles a.blog span.text span.date {
  right: 0;
}
section.content section.nouvelles a.blog img {
  -webkit-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
  float: right;
  z-index: 1;
}
section.content section.nouvelles div.center {
  text-align: center;
}
section.content #carte,
section.content #map {
  width: 100%;
  height: 600px;
}
section.hero {
  background: #ffffff;
}
section.hero div {
  height: 429px;
}
section.hero nav {
  background-color: #a8052b;
}
section.hero nav div {
  height: 215px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: -ms-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
section.hero nav div:before,
section.hero nav div:after {
  content: " ";
  display: table;
}
section.hero nav div:after {
  clear: both;
}
section.hero nav div:before,
section.hero nav div:after {
  content: " ";
  display: table;
}
section.hero nav div:after {
  clear: both;
}
section.hero nav div a {
  margin: 0 auto;
  display: block;
  width: 24%;
  position: relative;
  text-align: center;
  font-size: 21px;
  color: #ffffff;
  text-decoration: none;
  padding: 120px 30px 0;
  height: 100%;
}
section.hero nav div a span.icon {
  -webkit-transition: all 500ms ease-in-out;
  -o-transition: all 500ms ease-in-out;
  transition: all 500ms ease-in-out;
  display: block;
  border-radius: 50%;
  background-color: #ffffff;
  width: 170px;
  height: 170px;
  position: absolute;
  top: -85px;
  left: 50%;
  -webkit-transform: translate(-50%, 0) rotateY(0);
  -ms-transform: translate(-50%, 0) rotateY(0);
  -o-transform: translate(-50%, 0) rotateY(0);
  transform: translate(-50%, 0) rotateY(0);
  box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.2);
  z-index: 2;
}
section.hero nav div a span.icon:hover {
  z-index: 2;
  -webkit-transform: translate(-50%, 0) rotateY(360deg);
  -ms-transform: translate(-50%, 0) rotateY(360deg);
  -o-transform: translate(-50%, 0) rotateY(360deg);
  transform: translate(-50%, 0) rotateY(360deg);
}
section.hero nav div a span.icon img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
section.pitch {
  padding: 20px 0;
  background: url("/YMCA/media/skin/img/gradientbg.png") center center repeat-y;
  color: #000000;
}
section.pitch .wrapper:before,
section.pitch .wrapper:after {
  content: " ";
  display: table;
}
section.pitch .wrapper:after {
  clear: both;
}
section.pitch .wrapper:before,
section.pitch .wrapper:after {
  content: " ";
  display: table;
}
section.pitch .wrapper:after {
  clear: both;
}
section.pitch .wrapper a {
  color: #000000;
  text-decoration: none;
}
section.pitch .left {
  padding-right: 15px;
}
section.pitch .left h4 {
  max-width: 558px;
}
section.pitch .left,
section.pitch .right {
  float: left;
  width: 50%;
}
section.pitch .left h3,
section.pitch .right h3,
section.pitch .left h4,
section.pitch .right h4 {
  font-size: 27px;
  color: #ffffff;
}
section.pitch .left h3,
section.pitch .right h3 {
  text-transform: uppercase;
  font-weight: 400;
  margin: 0;
}
section.pitch .left h4,
section.pitch .right h4 {
  font-weight: 300;
  margin: 0;
}
section.pitch .left p,
section.pitch .right p {
  margin: 0;
}
section.pitch .left p em,
section.pitch .right p em {
  font-size: 21px;
  font-weight: 400;
  font-style: normal;
}
section.promo {
  background: #ffffff;
  padding: 40px 0;
}
section.promo:before,
section.promo:after {
  content: " ";
  display: table;
}
section.promo:after {
  clear: both;
}
section.promo:before,
section.promo:after {
  content: " ";
  display: table;
}
section.promo:after {
  clear: both;
}
section.promo .video,
section.promo .static {
  width: calc(50% - 10px);
  height: 345px;
  float: left;
}
@media only screen and (max-width: 767px) {
  section.promo .video:last-child,
  section.promo .static:last-child {
    margin-top: 20px;
  }
}
section.promo .video:first-child,
section.promo .static:first-child {
  margin-right: 10px;
}
section.promo .video iframe,
section.promo .static iframe {
  width: 100%;
  height: 100%;
}
section.promo .static {
  text-decoration: none;
  position: relative;
  overflow: hidden;
}
section.promo .static:last-child {
  margin-left: 10px;
}
section.promo .static span.content {
  position: absolute;
  padding-top: 28px;
  padding-left: 30px;
  width: 360px;
  height: 100%;
  z-index: 3;
  top: 0;
  left: 0;
}
section.promo .static span.headline {
  font-size: 28px;
  /*text-transform: uppercase;*/
  display: block;
  padding-bottom: 10px;
}
section.promo .static span.details {
  font-size: 16px;
  width: 60%;
}
section.promo .static span.arrow {
  font-weight: 300;
  position: absolute;
  bottom: 20px;
  left: 30px;
  width: 60%;
  font-size: 21px;
  z-index: 4;
}
section.promo .static span.arrow:before {
  top: 9px;
}
section.promo .static img {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}
section.promo .static span.angle {
  width: 350px;
  height: 500px;
  display: block;
  -webkit-transform: rotate(-30deg);
  -ms-transform: rotate(-30deg);
  -o-transform: rotate(-30deg);
  transform: rotate(-30deg);
  z-index: 2;
  position: absolute;
  left: 120px;
  top: -20px;
  box-shadow: 0 5px 7px 0 rgba(0, 0, 0, 0.5);
}
section.promo .static.white {
  background-color: #ffffff;
  height: 269px;
}
section.promo .static.white span.content {
  padding-left: 20px;
  width: 265px;
}
section.promo .static.white span.content .headline {
  padding-bottom: 23px;
}
section.promo .static.white span.content .smalltext {
  font-size: 12px;
  padding-top: 25px;
  display: inherit;
}
section.promo .static.white img {
  width: 38%;
}
section.promo .static.red {
  color: #ffffff;
}
section.promo .static.red span.arrow:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
}
section.promo .static.red span.angle,
section.promo .static.red span.content {
  background-color: #a8052b;
}
section.promo .static.pink {
  color: #ffffff;
}
section.promo .static.pink span.arrow:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
}
section.promo .static.pink span.angle,
section.promo .static.pink span.content {
  background-color: #e50278;
}
section.promo .static.green {
  color: #000000;
}
section.promo .static.green span.arrow:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_black.svg");
  background-size: 100% 100%;
}
section.promo .static.green span.angle,
section.promo .static.green span.content {
  background-color: #c3d021;
}
section.promo .static.orange {
  color: #000000;
}
section.promo .static.orange span.arrow:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_black.svg");
  background-size: 100% 100%;
}
section.promo .static.orange span.angle,
section.promo .static.orange span.content {
  background-color: #faa634;
}
section.promo .static.blue {
  color: #000000;
}
section.promo .static.blue span.arrow:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_black.svg");
  background-size: 100% 100%;
}
section.promo .static.blue span.angle,
section.promo .static.blue span.content {
  background-color: #518fcc;
}
section.promo .static.aqua {
  color: #000000;
}
section.promo .static.aqua span.arrow:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_black.svg");
  background-size: 100% 100%;
}
section.promo .static.aqua span.angle,
section.promo .static.aqua span.content {
  background-color: #23bcb9;
}
section.promo.big .wrapper > div {
  width: calc(50% - 22.5px);
  float: left;
}
section.promo.big .wrapper > div:first-child {
  margin-right: 45px;
}
@media only screen and (max-width: 767px) {
  section.promo.big .wrapper > div {
    width: 100%;
    float: none;
  }
  section.promo.big .wrapper > div:first-child {
    margin-right: 0;
  }
}
section.promo.small .wrapper > div {
  width: calc(33% - 14px);
  float: left;
}
section.promo.small .wrapper > div:first-child {
  width: calc(34% - 14px);
}
section.promo.small .wrapper > div.horizontal,
section.promo.small .wrapper > div.video {
  height: 275px;
}
section.promo.small .wrapper > div:first-child {
  margin-right: 21px;
}
section.promo.small .wrapper > div:last-child {
  margin-left: 21px;
}
@media only screen and (min-width: 901px) {
  section.promo.small .wrapper > div.horizontal span.content span.headline {
    font-size: 24px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 900px) {
  section.promo.small .wrapper > div.horizontal span.content {
    padding: 8px 10px 9px;
  }
  section.promo.small .wrapper > div.horizontal span.content span.headline {
    font-size: 21px;
  }
  section.promo.small .wrapper > div.horizontal span.content span.slide a {
    font-size: 16px;
    bottom: 10px;
    left: 13px;
  }
  section.promo.small .wrapper > div.horizontal span.content span.slide a:before {
    top: 5px;
  }
  section.promo.small .wrapper > div.horizontal:hover span.content span.slide {
    padding-top: 6px;
  }
}
@media only screen and (max-width: 767px) {
  section.promo.small .wrapper > div {
    width: 100%;
    float: none;
  }
  section.promo.small .wrapper > div.horizontal {
    height: 345px;
  }
  section.promo.small .wrapper > div:first-child {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
  section.promo.small .wrapper > div:last-child {
    margin-left: 0;
    margin-top: 20px;
  }
}
section.promo .horizontal {
  position: relative;
  height: 345px;
  overflow: hidden;
}
section.promo .horizontal:hover img {
  opacity: 0.65;
}
section.promo .horizontal:hover span.content span.slide {
  height: 160px;
  padding-top: 16px;
  opacity: 1;
}
@media only screen and (max-width: 479px) {
  section.promo .horizontal:hover span.content span.slide {
    height: 200px;
  }
}
section.promo .horizontal:hover span.content span.slide a {
  bottom: 20px;
}
@media only screen and (max-width: 479px) {
  section.promo .horizontal:hover span.content span.slide a {
    bottom: 10px;
  }
}
section.promo .horizontal span.img {
  display: block;
  position: absolute;
  left: 50%;
  top: 0;
  width: 100%;
  height: 297px;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  -webkit-transition: opacity 350ms ease;
  -o-transition: opacity 350ms ease;
  transition: opacity 350ms ease;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
section.promo .horizontal span.content {
  width: 100%;
  display: block;
  padding: 18px 20px 20px;
  position: absolute;
  bottom: 0;
}
@media only screen and (max-width: 479px) {
  section.promo .horizontal span.content {
    padding: 8px 10px 10px;
  }
}
section.promo .horizontal span.content span.headline {
  font-weight: 400;
  font-size: 28px;
  /*text-transform: uppercase;*/
}
@media only screen and (max-width: 479px) {
  section.promo .horizontal span.content span.headline {
    font-size: 22px;
  }
}
section.promo .horizontal span.content span.slide {
  display: block;
  -webkit-transition: all 350ms ease;
  -o-transition: all 350ms ease;
  transition: all 350ms ease;
  height: 0;
  opacity: 0;
  overflow: hidden;
}
section.promo .horizontal span.content span.slide span.body {
  display: block;
}
section.promo .horizontal span.content span.slide a {
  font-size: 21px;
  margin-left: 16px;
  -webkit-transition: all 350ms ease;
  -o-transition: all 350ms ease;
  transition: all 350ms ease;
  display: inline-block;
  text-decoration: none;
  position: absolute;
  bottom: -25px;
  left: 20px;
}
@media only screen and (max-width: 479px) {
  section.promo .horizontal span.content span.slide a {
    font-size: 18px;
    left: 10px;
  }
}
section.promo .horizontal span.content span.slide a:before {
  display: block;
  position: absolute;
  content: " ";
  width: 6px;
  height: 11px;
  top: 9px;
  left: -16px;
}
@media only screen and (max-width: 479px) {
  section.promo .horizontal span.content span.slide a:before {
    top: 7px;
  }
}
section.promo .horizontal.red span.content {
  background-color: #a8052b;
  color: #ffffff;
}
section.promo .horizontal.red span.content a {
  color: #ffffff;
  border-bottom: 2px rgba(255, 255, 255, 0.5) solid;
}
section.promo .horizontal.red span.content a:hover {
  border-bottom-color: rgba(255, 255, 255, 0.85);
}
section.promo .horizontal.red span.content a:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
}
section.promo .horizontal.pink span.content {
  background-color: #e50278;
  color: #ffffff;
}
section.promo .horizontal.pink span.content a {
  color: #ffffff;
  border-bottom: 2px rgba(255, 255, 255, 0.5) solid;
}
section.promo .horizontal.pink span.content a:hover {
  border-bottom-color: rgba(255, 255, 255, 0.85);
}
section.promo .horizontal.pink span.content a:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
}
section.promo .horizontal.green span.content {
  background-color: #c3d021;
  color: #ffffff;
}
section.promo .horizontal.green span.content a {
  color: #ffffff;
  border-bottom: 2px rgba(255, 255, 255, 0.5) solid;
}
section.promo .horizontal.green span.content a:hover {
  border-bottom-color: rgba(255, 255, 255, 0.85);
}
section.promo .horizontal.green span.content a:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
}
section.promo .horizontal.orange span.content {
  background-color: #faa634;
  color: #ffffff;
}
section.promo .horizontal.orange span.content a {
  color: #ffffff;
  border-bottom: 2px rgba(255, 255, 255, 0.5) solid;
}
section.promo .horizontal.orange span.content a:hover {
  border-bottom-color: rgba(255, 255, 255, 0.85);
}
section.promo .horizontal.orange span.content a:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
}
section.promo .horizontal.blue span.content {
  background-color: #518fcc;
  color: #ffffff;
}
section.promo .horizontal.blue span.content a {
  color: #ffffff;
  border-bottom: 2px rgba(255, 255, 255, 0.5) solid;
}
section.promo .horizontal.blue span.content a:hover {
  border-bottom-color: rgba(255, 255, 255, 0.85);
}
section.promo .horizontal.blue span.content a:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
}
section.promo .horizontal.aqua span.content {
  background-color: #23bcb9;
  color: #ffffff;
}
section.promo .horizontal.aqua span.content a {
  color: #ffffff;
  border-bottom: 2px rgba(255, 255, 255, 0.5) solid;
}
section.promo .horizontal.aqua span.content a:hover {
  border-bottom-color: rgba(255, 255, 255, 0.85);
}
section.promo .horizontal.aqua span.content a:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
}
section.large-promo {
  background: #ffffff;
}
section.large-promo .wrapper {
  height: 550px;
  position: relative;
  z-index: 0;
}
section.large-promo h3 {
  font-size: 55px;
  font-weight: 300;
  color: #ffffff;
  line-height: 55px;
  margin: 10px 0 15px -20px;
}
section.large-promo .background {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  section.large-promo .background {
    height: 594px;
  }
}
@media only screen and (max-width: 380px) {
  section.large-promo .background {
    height: 650px;
  }
}
section.large-promo .gradient {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#bf000000', endColorstr='#00000000', GradientType=1);
  width: 100%;
  z-index: 2;
}
section.large-promo .wrapper {
  position: relative;
  z-index: 3;
  padding: 0 20px;
}
section.large-promo .wrapper:before,
section.large-promo .wrapper:after {
  content: " ";
  display: table;
}
section.large-promo .wrapper:after {
  clear: both;
}
section.large-promo .wrapper:before,
section.large-promo .wrapper:after {
  content: " ";
  display: table;
}
section.large-promo .wrapper:after {
  clear: both;
}
section.large-promo .buttons {
  width: 50%;
  position: absolute;
  top: 115px;
  left: 0;
}
section.large-promo .buttons a {
  font-size: 21px;
  display: block;
  height: 100px;
  position: relative;
  color: #ffffff;
  text-decoration: none;
  margin-bottom: 45px;
}
section.large-promo .buttons a:before,
section.large-promo .buttons a:after {
  content: " ";
  display: table;
}
section.large-promo .buttons a:after {
  clear: both;
}
section.large-promo .buttons a:before,
section.large-promo .buttons a:after {
  content: " ";
  display: table;
}
section.large-promo .buttons a:after {
  clear: both;
}
section.large-promo .buttons a:hover span.icon {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
section.large-promo .buttons a:hover span.text {
  left: 125px;
}
section.large-promo .buttons a span.icon {
  width: 100px;
  height: 100px;
  background: #ffffff;
  border-radius: 50%;
  display: block;
  -webkit-transition: 250ms all;
  -o-transition: 250ms all;
  transition: 250ms all;
}
section.large-promo .buttons a span.icon img.donation {
  margin: 19px 0 0 15px;
}
section.large-promo .buttons a span.icon img.volunteer {
  margin: 14px 0 0 15px;
}
section.large-promo .buttons a span.icon img.event {
  margin: 10px 0 0 15px;
}
section.large-promo .buttons a span.text {
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  transform: translate(0, -50%);
  left: 115px;
  text-transform: uppercase;
  display: block;
  width: 200px;
  -webkit-transition: 250ms all;
  -o-transition: 250ms all;
  transition: 250ms all;
}
section.large-promo .testimonial {
  width: 50%;
  position: absolute;
  right: 0;
  top: 0;
}
section.large-promo .testimonial:before,
section.large-promo .testimonial:after {
  content: " ";
  display: table;
}
section.large-promo .testimonial:after {
  clear: both;
}
section.large-promo .testimonial:before,
section.large-promo .testimonial:after {
  content: " ";
  display: table;
}
section.large-promo .testimonial:after {
  clear: both;
}
section.large-promo .testimonial > div {
  background: rgba(255, 255, 255, 0.8);
  height: 440px;
  width: 360px;
  padding: 10px 20px;
  float: right;
  margin-top: 55px;
  position: relative;
}
section.large-promo .testimonial > div h4 {
  font-size: 32px;
  font-weight: 300;
  margin: 0 0 15px 0;
  color: #000000;
  text-transform: none;
}
section.large-promo .testimonial > div p {
  margin: 0 0 17px 0;
}
section.large-promo .testimonial > div p a {
  bottom: 0;
  position: inherit;
}
section.large-promo .testimonial > div a {
  position: absolute;
  left: 20px;
  text-decoration: none;
  color: #a8052b;
}
section.large-promo .testimonial > div a:last-of-type {
  bottom: 20px;
}
fieldset {
  background: #dbdbdb;
  border: 0;
  padding: 60px 15px 15px;
  position: relative;
}
fieldset legend {
  position: absolute;
  top: 15px;
  left: 15px;
  font-size: 21px;
}
fieldset legend + label {
  margin-top: 0;
}
fieldset label,
fieldset .EditingFormLabel {
  display: block;
  font-size: 16px;
  margin-top: 20px;
}
fieldset input[type=text],
fieldset textarea,
fieldset select {
  margin-top: 5px;
  width: 450px;
  height: 40px;
  border-radius: 3px;
  border: none;
  padding: 10px;
  background: #ffffff;
}
fieldset select {
  padding: 0 10px;
}
fieldset textarea {
  height: 130px;
  width: 630px;
  min-height: 130px;
}
fieldset span {
  display: block;
}
fieldset span.smalltext {
  color: #282828;
  font-size: 12px;
}
fieldset .EditingFormErrorLabel,
fieldset .ErrorLabel {
  color: #a8052b;
  font-size: 14px;
  margin-top: 5px;
}
fieldset div input[type=text].day,
fieldset div input[type=text].month,
fieldset div input[type=text].year {
  width: 75px;
}
fieldset div.checkbox {
  margin-top: 20px;
}
fieldset div.checkbox span.checkbox {
  float: left;
  margin-right: 5px;
}
fieldset div.checkbox .EditingFormLabel {
  margin: 0;
  padding-left: 22px;
}
fieldset .input[type=file] {
  margin: 7px 0 0;
}
fieldset .fineprint,
fieldset .ExplanationText {
  margin: 20px 0 5px;
  font-size: 12px;
}
fieldset .btn {
  margin-top: 16px;
}
fieldset .note {
  color: #727376;
  font-size: 14px;
  margin: 12px 0 20px;
}
fieldset .required:after {
  content: "*";
}
fieldset .radio input,
fieldset .checkbox input {
  display: block;
  float: left;
  height: 22px;
  margin-right: 10px;
  clear: both;
}
fieldset .radio label,
fieldset .checkbox label {
  display: block;
  margin: 0;
}
fieldset .form-control-text {
  color: #949599;
  font-style: italic;
}
span.counter {
  font-size: 14px;
}
section.calculator fieldset {
  width: 100%;
  margin: 15px 0;
}
section.calculator fieldset label:first-of-type {
  margin-top: 0;
}
section.calculator fieldset label + .group {
  margin-top: 5px;
}
section.calculator fieldset .group {
  margin-top: 20px;
}
section.calculator fieldset .group:before,
section.calculator fieldset .group:after {
  content: " ";
  display: table;
}
section.calculator fieldset .group:after {
  clear: both;
}
section.calculator fieldset .group:before,
section.calculator fieldset .group:after {
  content: " ";
  display: table;
}
section.calculator fieldset .group:after {
  clear: both;
}
section.calculator fieldset .group div {
  width: 225px;
  float: left;
}
@media only screen and (max-width: 767px) {
  section.calculator fieldset .group div:first-child:not(.checkbox) {
    margin-bottom: 15px;
  }
  section.calculator fieldset .group div:first-child.checkbox {
    margin-bottom: 5px;
  }
}
section.calculator fieldset .group div.checkbox {
  margin-top: 0;
}
section.calculator fieldset .group input[type=text] {
  float: left;
  width: 50px;
  margin-right: 5px;
}
section.calculator fieldset .group input[type=text]:last-child {
  width: 60px;
  margin-right: 0;
}
@media only screen and (max-width: 767px) {
  section.calculator table td.mhide {
    display: none;
  }
}
section.calculator table tr:first-of-type {
  border-bottom: none;
}
section.calculator table tfoot {
  border-top: 1px #000000 solid;
}
@media only screen and (max-width: 767px) {
  section.calculator table tfoot {
    margin-top: 15px;
    padding-top: 15px;
    display: block;
    width: 100%;
  }
}
section.calculator table tfoot tr td {
  font-weight: 600;
}
section.calculator #Results {
  margin-bottom: 15px;
}
section.calculator .fineprint {
  margin: 5px 0 0;
  font-size: 12px;
  color: #4d4d4d;
  font-style: italic;
}
div.activity {
  background: #ffffff;
  padding: 15px;
  margin-bottom: 15px;
}
.col.third div.activity {
  margin-top: 0;
}
section.activity.wrapper {
  padding: 0;
  clear: both;
  display: block;
}
section.activity:before,
section.activity:after {
  content: " ";
  display: table;
}
section.activity:after {
  clear: both;
}
section.activity:before,
section.activity:after {
  content: " ";
  display: table;
}
section.activity:after {
  clear: both;
}
section.activity .col {
  float: left;
  width: 48%;
}
section.activity .col.third {
  width: 32%;
}
section.activity .col.third:not(:last-child) {
  margin-right: 2%;
}
section.activity .col:first-child {
  margin-right: 30px;
}
section.activity .col section.activity:not(:last-child) {
  margin-bottom: 20px;
}
section.activity h2 {
  margin: 10px 0 25px;
}
section.activity h3 {
  margin: 0 0 20px;
}
section.activity.single {
  background: #ffffff;
  padding: 15px;
  margin-bottom: 15px;
}
section.activity.single:before,
section.activity.single:after {
  content: " ";
  display: table;
}
section.activity.single:after {
  clear: both;
}
section.activity.single:before,
section.activity.single:after {
  content: " ";
  display: table;
}
section.activity.single:after {
  clear: both;
}
section.activity.single .description {
  max-width: 568px;
  float: left;
}
section.activity.single .description :first-child {
  margin-top: 0;
}
section.activity.single .description p:last-of-type {
  margin-bottom: 0;
}
section.activity.single .description h4 {
  margin-bottom: 10px;
}
section.activity.single .description h4 span.subtitle {
  font-size: 14px;
  color: #000000;
  display: block;
  text-transform: none;
}
section.activity.single .image {
  width: 115px;
  height: 115px;
  border-radius: 50%;
  background: #eeeeee;
  float: right;
  position: relative;
}
section.activity.single .image img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-height: 60px;
  max-width: 50px;
}
section.activity.single strong {
  display: inline-block;
  font-size: 14px;
  text-transform: uppercase;
  margin-right: 10px;
}
section.activity.single ul {
  font-size: 14px;
}
ul.activity {
  padding: 0;
  list-style: none;
  margin: 0 0 0 20px;
}
ul.activity.no-style {
  margin: 0;
}
ul.activity.no-style li {
  padding-left: 0;
  list-style-type: none;
}
ul.activity.no-style li:before,
ul.activity.no-style li:hover:before {
  content: "";
  list-style-type: none;
}
ul.activity.no-style li:hover {
  list-style-type: none;
}
ul.activity li {
  position: relative;
  padding-left: 2px;
  list-style-type: circle;
  /*&:before {
			content: "◦";
			font-size: 30px;
			position: absolute;
			top: -11px;
			left: 0;
		}*/
  /*&:hover:before {
			content: "•";
			top: -10px;
			left: 0;
		}*/
}
ul.activity li:not(:last-child) {
  margin-bottom: 15px;
}
ul.activity li:hover {
  list-style-type: disc;
}
ul.activity li a:hover {
  text-decoration: none;
}
.js-masonry div.activity {
  width: 380px;
}
footer {
  background: #000000;
  padding: 40px 0 15px;
}
footer nav {
  margin-bottom: 25px;
}
footer nav:before,
footer nav:after {
  content: " ";
  display: table;
}
footer nav:after {
  clear: both;
}
footer nav:before,
footer nav:after {
  content: " ";
  display: table;
}
footer nav:after {
  clear: both;
}
footer nav > a {
  float: left;
  margin-right: 35px;
}
footer nav > div:not(.block) {
  float: left;
  width: 50%;
}
footer nav > div:not(.block):before,
footer nav > div:not(.block):after {
  content: " ";
  display: table;
}
footer nav > div:not(.block):after {
  clear: both;
}
footer nav > div:not(.block):before,
footer nav > div:not(.block):after {
  content: " ";
  display: table;
}
footer nav > div:not(.block):after {
  clear: both;
}
footer nav .block {
  float: right;
  background: #4d4d4d;
  padding: 10px 35px;
  width: 50%;
  height: 80px;
}
footer nav .block:before,
footer nav .block:after {
  content: " ";
  display: table;
}
footer nav .block:after {
  clear: both;
}
footer nav .block:before,
footer nav .block:after {
  content: " ";
  display: table;
}
footer nav .block:after {
  clear: both;
}
footer nav .block a {
  -webkit-transition: color 100ms ease-in-out;
  -o-transition: color 100ms ease-in-out;
  transition: color 100ms ease-in-out;
  display: block;
  width: 50%;
  float: left;
  height: 30px;
  line-height: 30px;
  color: #ffffff;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 12px;
}
footer nav .block a:hover {
  color: #000000;
}
footer nav a.big {
  -webkit-transition: background-color 100ms ease-in-out;
  -o-transition: background-color 100ms ease-in-out;
  transition: background-color 100ms ease-in-out;
  display: block;
  text-align: center;
  height: 80px;
  line-height: 80px;
  width: 43%;
  background: #4d4d4d;
  border-radius: 2px;
  color: #ffffff;
  text-decoration: none;
  font-size: 19px;
  float: left;
}
footer nav a.big:hover {
  background-color: #a8052b;
}
footer nav a.big:first-child {
  margin-right: 7%;
}
footer section.social:before,
footer section.social:after {
  content: " ";
  display: table;
}
footer section.social:after {
  clear: both;
}
footer section.social:before,
footer section.social:after {
  content: " ";
  display: table;
}
footer section.social:after {
  clear: both;
}
footer section.social div {
  float: right;
}
footer section.social div:before,
footer section.social div:after {
  content: " ";
  display: table;
}
footer section.social div:after {
  clear: both;
}
footer section.social div:before,
footer section.social div:after {
  content: " ";
  display: table;
}
footer section.social div:after {
  clear: both;
}
footer section.social div a {
  display: block;
  width: 40px;
  height: 40px;
  background: #4d4d4d;
  float: left;
  margin-left: 10px;
  text-align: center;
}
footer section.social div a img {
  position: relative;
}
footer section.social div a img.facebook {
  top: -5px;
}
footer section.social div a img.twitter {
  top: 6px;
}
footer section.social div a img.googleplus {
  top: 10px;
}
footer section.social div a img.youtube {
  top: 7px;
}
footer section.social div a img.linkedin {
  top: 11px;
}
footer section.social div a img.instagram {
  top: -4px;
}
footer section.social div a img.foursquare {
  top: -4px;
}
footer section.social div a img.rss,
footer section.social div a img.FeedIcon {
  top: 10px;
}
footer section.social div a:hover {
  background: #949599;
}
footer .left {
  float: left;
}
footer .left .copyright:before,
footer .left .copyright:after {
  content: " ";
  display: table;
}
footer .left .copyright:after {
  clear: both;
}
footer .left .copyright:before,
footer .left .copyright:after {
  content: " ";
  display: table;
}
footer .left .copyright:after {
  clear: both;
}
footer .left .copyright img,
footer .left .copyright p {
  float: left;
}
footer .left .copyright p {
  color: #ffffff;
  margin: 3px 0 0 5px;
}
footer .left .copyright p span {
  display: block;
}
footer .left .copyright p span.top {
  font-size: 14px;
}
footer .left .copyright p span.bottom {
  font-size: 12px;
}
footer .left .logos {
  line-height: 60px;
}
footer .left .logos img {
  vertical-align: middle;
}
footer .left .logos img:not(:last-child) {
  margin-right: 15px;
}
@media only screen and (max-width: 320px) {
  footer .left .logos img:not(:last-child) {
    margin-right: 10px;
  }
}
footer .right {
  float: right;
}
footer .right .legal {
  font-size: 14px;
  color: #ffffff;
  text-align: right;
  padding-top: 21px;
}
footer .right .legal a {
  white-space: nowrap;
  color: #ffffff;
  text-decoration: none;
  -webkit-transition: color 100ms ease-in-out;
  -o-transition: color 100ms ease-in-out;
  transition: color 100ms ease-in-out;
}
footer .right .legal a:hover {
  color: #a8052b;
}
footer .right .bottom:before,
footer .right .bottom:after {
  content: " ";
  display: table;
}
footer .right .bottom:after {
  clear: both;
}
footer .right .bottom:before,
footer .right .bottom:after {
  content: " ";
  display: table;
}
footer .right .bottom:after {
  clear: both;
}
footer .right section.footnotes .copyright,
footer .right section.footnotes .logos,
footer .right section.footnotes .legal {
  float: left;
}
@media only screen and (max-width: 991px) {
  footer.alternate .legal {
    /* Rules */
    margin-top: 10px;
    padding-left: 5px;
  }
}
@media only screen and (min-width: 992px) {
  footer.alternate .legal {
    padding-top: 3px;
  }
}
a.arrow,
span.arrow {
  display: inline-block;
  position: relative;
}
a.arrow:not(.after),
span.arrow:not(.after) {
  padding-left: 18px;
}
a.arrow:not(.after):before,
span.arrow:not(.after):before {
  content: " ";
  display: block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_red.svg");
  background-size: 100% 100%;
}
a.arrow.after:after,
span.arrow.after:after {
  content: " ";
  display: inline-block;
  position: relative;
  left: 15px;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_red.svg");
  background-size: 100% 100%;
}
a.accordion {
  background: #a8052b;
  position: relative;
  height: 55px;
  line-height: 55px;
  display: block;
  width: 100%;
  padding-left: 15px;
  font-size: 21px;
  margin-top: 15px;
  color: #ffffff;
  border-radius: 2px;
}
a.accordion:before {
  content: "";
  width: 8px;
  height: 15px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 19px;
  right: 20px;
  -webkit-transition: all 250ms;
  -o-transition: all 250ms;
  transition: all 250ms;
}
a.accordion:hover:before {
  right: 15px;
}
a.accordion.open:before {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  right: 18px;
  top: 19px;
}
a.accordion.black {
  color: #ffffff;
  background: #000000;
}
a.accordion:not(.noMargin) {
  margin-bottom: 15px;
}
.no-image {
  height: 160px;
  overflow: auto;
}
.tiles:before,
.tiles:after {
  content: " ";
  display: table;
}
.tiles:after {
  clear: both;
}
.tiles:before,
.tiles:after {
  content: " ";
  display: table;
}
.tiles:after {
  clear: both;
}
.tiles a.tile:not(.small) {
  height: 350px;
}
.tiles a.tile.no-image {
  height: 180px;
}
.tiles a.tile.small {
  height: 100px;
}
.tiles.promo {
  margin-top: 15px;
}
.tiles.promo .tile {
  background: #ffffff;
  width: 48.5%;
  height: 410px;
  margin-right: 20px;
  /*h3 {
				position: absolute;
				background: transparent;
				//top: 205px;
				//bottom: 180px;
				bottom: 0;
				left: 0;
				padding: 15px;
				color: @white;
				font-size: 28px;
				z-index: 3;
			}*/
  /*.image {
				span.gradient {
					position: absolute;
					top: 0;
					left: 0;
					.vertical(@black, 0, @black, 0.5, 50%, 100%);
					z-index: 2;
					display: block;
					width: 100%;
					height: 98.2%;
				}
			}*/
}
.tiles.promo .tile:last-child {
  margin-right: 0;
}
.tiles.promo .tile p {
  padding: 15px;
}
.tiles.promo .tile span.arrow {
  margin-left: 14px;
  margin: 20px;
}
.tiles.promo .tile:hover span.arrow {
  text-decoration: underline;
}
.tiles.promo .tile.video .videoWrapper {
  padding-left: 0;
}
.tile {
  width: 31.4%;
  height: 100%;
  float: left;
  background-color: #ffffff;
  margin: 0 2.9% 23px 0;
  display: block;
  overflow: hidden;
  position: relative;
}
.tile:hover {
  text-decoration: none;
}
.tile:nth-child(3n) {
  margin-right: 0;
}
.tile.no-image {
  height: 180px;
}
.tile.text {
  min-height: 350px;
  /*.centered{
			overflow: hidden;
			position: inherit;
			top: 0;
			transform:inherit;
			-webkit-transform: inherit;
			ul.arrow{
				margin: 0;
				padding: 0px 15px;
				list-style: none;
				li{
					margin:15px 0;
				}
			}
			p{
				padding:15px;
			}
		}*/
}
.tile.text.image {
  height: 100%;
}
.tile h5 {
  color: #a8052b;
  font-size: 18px;
  margin: 0;
  padding: 10px 15px;
  font-weight: 400;
}
.tile p {
  color: #000000;
  margin: 0;
  padding: 0 15px 15px 15px;
  font-size: 14px;
  overflow: auto;
}
.tile.small {
  min-height: 100px;
}
.tile.small h5 {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.tile .centered {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.tile .centered p {
  display: block;
}
.tile ul.arrow {
  margin: 27% 0 0 0;
  padding: 0 15px;
  list-style: none;
}
.tile ul.arrow li {
  padding-left: 13px;
  position: relative;
  margin-bottom: 5px;
}
.tile ul.arrow li:before {
  content: " ";
  display: block;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_red.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 7px;
  left: 0;
}
.tile ul.arrow li {
  font-size: 18px;
  margin-bottom: 25px;
}
.tile ul.arrow li:last-child {
  margin-bottom: 0;
}
.tile.text h5 {
  color: #000000;
}
.tile.text.small p {
  text-align: center;
  font-weight: 600;
}
.tile.text.small ul {
  margin: 0;
}
.tile.text a.arrow {
  margin: 20px 0 15px 15px;
}
.tile.red {
  background-color: #a8052b;
}
.tile.red .centered ul.arrow {
  margin: 0;
}
.tile.red p,
.tile.red h5,
.tile.red ul,
.tile.red a {
  color: #ffffff;
}
.tile.red a.arrow:before,
.tile.red ul.arrow li:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
}
.tile.image .content {
  height: calc(100% - 160px);
  position: relative;
  top: -5px;
}
.tile.image .content .centered *:first-child {
  padding-top: 0;
}
.tile img {
  width: 100%;
}
.inspiration {
  background-color: #dbdbdb;
  clear: both;
  padding: 0 15px;
}
.inspiration .wrapper {
  padding-left: 315px;
  padding-right: 30px;
}
.inspiration h2 {
  margin: 20px 0;
}
.inspiration .tiles .last .tile {
  margin-right: 0;
}
.inspiration .tiles .tile {
  height: 350px;
}
.inspiration .slider-for div:last-of-type .tile {
  margin-right: 0;
}
.blogPost {
  background-color: #dbdbdb;
  clear: both;
}
.blogPost .wrapper {
  padding-left: 328px;
}
.blogPost .wrapper h2 {
  margin-bottom: 15px;
  width: 83%;
}
.blogPost section.content {
  width: 83%;
  margin: 0;
  padding: 0;
}
.blogPost section.content section.blogs {
  background-color: transparent;
  padding: 0;
}
.blogPost section.content section.blogs a.blog {
  width: 100%;
  margin: 0 0 10px;
  height: 110px;
}
.blogPost section.content section.blogs a.blog span.headline {
  padding-right: 0;
}
header.top {
  background: #ffffff;
  height: 100%;
}
header.top .wrapper {
  padding-left: 20px;
}
header.top .breadcrumbs {
  line-height: 18px;
  color: #727376;
  font-size: 12px;
  float: left;
  margin-left: 25%;
  max-width: 618px;
  padding: 1.5% 0;
}
header.top .breadcrumbs.left {
  margin-left: 12px;
}
header.top .breadcrumbs a {
  color: #727376;
}
header.top .share {
  float: right;
  padding-top: 1.5%;
}
.centres {
  margin-bottom: 50px;
}
.centres:before,
.centres:after {
  content: " ";
  display: table;
}
.centres:after {
  clear: both;
}
.centres:before,
.centres:after {
  content: " ";
  display: table;
}
.centres:after {
  clear: both;
}
.centres h2 {
  margin: 0 0 25px;
}
.centres h2 + .col {
  margin-right: 30px;
}
.centres .col:first-of-type {
  margin-right: 30px;
}
.centres .col {
  width: 47%;
  float: left;
}
.centres .col:first-child {
  margin-right: 30px;
}
.centres .col .centre {
  background: #ffffff;
  padding: 15px 15px;
}
.centres .col .centre:not(:last-child) {
  margin-bottom: 15px;
}
.centres .col .centre iframe {
  width: 100%;
}
.centres .col .centre h3 {
  margin: 0 0 15px;
}
.centres .col .centre h3 + a.dropdown {
  margin-top: 0;
}
.centres .col .centre .address:before,
.centres .col .centre .address:after {
  content: " ";
  display: table;
}
.centres .col .centre .address:after {
  clear: both;
}
.centres .col .centre .address:before,
.centres .col .centre .address:after {
  content: " ";
  display: table;
}
.centres .col .centre .address:after {
  clear: both;
}
.centres .col .centre .address p:not(.phone) {
  float: left;
  font-size: 14px;
  color: #4d4d4d;
  margin: 0;
}
.centres .col .centre .address p:not(.phone) span {
  display: block;
}
.centres .col .centre .address p.phone {
  margin: 0;
  float: right;
  color: #000000;
  outline-color: inherit;
}
.centres .col .centre a.dropdown {
  display: inline-block;
  margin-top: 20px;
  position: relative;
}
.centres .col .centre a.dropdown:after {
  content: " ";
  display: block;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_red.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 7px;
  right: -25px;
  -webkit-transition: all 250ms;
  -o-transition: all 250ms;
  transition: all 250ms;
}
.centres .col .centre a.dropdown.open:after {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  top: 6px;
}
.centres .col .centre a.arrow {
  margin-top: 20px;
}
.centres .col .centre .more {
  font-size: 14px;
  padding-top: 20px;
  color: #4d4d4d;
}
.centres .col .centre .more strong {
  text-transform: uppercase;
  color: #000000;
}
.centres .col .centre .more strong:not(:first-child) {
  margin-top: 15px;
}
.centres .col .centre .more strong,
.centres .col .centre .more > span {
  display: block;
}
.centres .col .centre .more strong:first-child,
.centres .col .centre .more > span:first-child {
  display: inline;
}
.centres .col .centre .more strong span,
.centres .col .centre .more > span span {
  color: #000000;
}
.centres .col .centre .more a.btn {
  margin: 20px 0;
}
.centres .col .centre .more p strong:first-of-type {
  line-height: 25px;
}
.centres .col .centre .more p span {
  font-size: 14px!important;
}
.centres .col .centre .more p span:last-of-type {
  line-height: 20px;
  font-size: 14px!important;
}
.centres .col .centre .more .info-block strong,
.centres .col .centre .more .info-block span {
  display: block;
}
.centres .col .centre table {
  padding: 0;
  border-collapse: collapse;
  color: #000000;
  width: 100%;
  margin: 5px 0 10px;
}
.centres .col .centre table thead th {
  color: #ffffff;
}
.centres .col .centre table tr {
  border-bottom: 1px #dbdbdb solid;
}
.centres .col .centre table tr::last-of-type {
  border: 0;
}
.centres .col .centre table tr th,
.centres .col .centre table tr td {
  font-weight: 400;
  text-align: left;
  vertical-align: top;
}
.centres .col .centre table tr th:first-child,
.centres .col .centre table tr td:first-child {
  max-width: 205px;
}
.centres .col .centre table tr th {
  padding: 5px 0px 5px 5px;
}
.centres .col .centre table tr td {
  padding: 6px 0px 6px 6px;
}
.centres .col .centre span.links {
  line-height: 30px;
  color: #000000;
}
.centres .col .centre ul.pdf {
  padding: 0;
  background-color: transparent;
}
.centres .col .centre ul.pdf li {
  margin-bottom: 5px;
  display: block;
  width: 100%;
  padding: 15px 15px 15px 50px;
  background-color: #ffffff;
  position: relative;
}
.centres .col .centre ul.pdf li a {
  display: block;
}
.centres .col .centre ul.pdf li:before {
  content: " ";
  display: block;
  width: 23px;
  height: 32px;
  background-image: url("/YMCA/media/skin/img/icons/pdf.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 10px;
  left: 13px;
}
.centres ul.arrow {
  list-style: none;
  padding: 10px;
  background-color: #ffffff;
}
.centres ul.arrow li {
  padding-left: 13px;
  position: relative;
  margin-bottom: 5px;
}
.centres ul.arrow li:before {
  content: " ";
  display: block;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_red.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 7px;
  left: 0;
}
ul.pdf li p {
  padding-left: 0;
}
.MultiStepFormButtonPanel .btn-prev a {
  padding-left: 15px;
  padding-right: 20px;
}
.MultiStepFormButtonPanel .btn-prev a:before {
  background-image: url("/YMCA/media/skin/img/icons/arrow_left_red.svg");
  background-size: 100% 100%;
  content: " ";
  display: block;
  height: 11px;
  left: 0;
  position: absolute;
  top: 6px;
  width: 6px;
}
.btn {
  border-radius: 3px;
  display: inline-block;
  padding: 10px 30px;
  border: none;
  -webkit-transition: all 300ms;
  -o-transition: all 300ms;
  transition: all 300ms;
}
.btn.black {
  background: #000000;
  color: #ffffff;
}
.btn.red,
.btn.FormButton {
  background: #a8052b;
  color: #ffffff;
}
.btn.aqua {
  background: #23bcb9;
  color: #ffffff;
}
.btn:hover {
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.4);
}
.btn.charcoal {
  background: #282828;
  color: #ffffff;
}
.trainers {
  clear: both;
}
.trainers .trainer {
  background: #ffffff;
  padding: 15px;
}
.trainers .trainer:before,
.trainers .trainer:after {
  content: " ";
  display: table;
}
.trainers .trainer:after {
  clear: both;
}
.trainers .trainer:before,
.trainers .trainer:after {
  content: " ";
  display: table;
}
.trainers .trainer:after {
  clear: both;
}
.trainers .trainer:not(:last-child) {
  margin-bottom: 15px;
}
.trainers .trainer img {
  float: right;
  max-width: 100%;
}
.trainers .trainer .content {
  max-width: 58%;
  float: left;
}
.trainers .trainer .content h4 {
  margin: 0;
}
.trainers .trainer .content ul {
  font-style: italic;
  color: #4d4d4d;
  list-style: none;
  padding-left: 0;
}
.trainers .trainer .content ul li {
  margin-bottom: 10px;
}
.trainers .trainer .content ul li:before {
  content: "- ";
  float: left;
  display: block;
  margin: 0 4px 10px 0;
}
.trainers .trainer .content p.description {
  line-height: 24px;
}
.trainers .trainer .content p.availability {
  margin-bottom: 0;
  font-size: 14px;
  color: #4d4d4d;
}
.trainers .trainer .content p.availability span {
  color: #000000;
}
.trainers .trainer.standalone .content h4,
.trainers .trainer.standalone .content p {
  padding-right: 0;
}
ul.inline {
  margin: 0;
  padding: 0;
  display: inline-block;
}
ul.inline li {
  display: inline-block;
}
ul.pipe li:not(:first-child) {
  padding-left: 20px;
  position: relative;
}
ul.pipe li:not(:first-child):before {
  content: "|";
  position: absolute;
  top: 0;
  left: 4px;
}
.horairefilter {
  background: #dbdbdb;
  padding: 0 15px;
}
.horairefilter .row:before,
.horairefilter .row:after {
  content: " ";
  display: table;
}
.horairefilter .row:after {
  clear: both;
}
.horairefilter .row:before,
.horairefilter .row:after {
  content: " ";
  display: table;
}
.horairefilter .row:after {
  clear: both;
}
.horairefilter .row:not(:last-child) .content {
  border-bottom: 1px #ffffff solid;
}
.horairefilter .label {
  width: 125px;
  float: left;
  padding-top: 20px;
  text-transform: uppercase;
}
.horairefilter .content {
  width: calc(100% - 125px);
  float: left;
  padding: 0 0 20px;
  font-size: 14px;
}
.horairefilter .content input[type=checkbox] {
  position: relative;
  top: 2px;
  margin-top: 23px;
}
.horairefilter .content .row div {
  float: left;
  margin-right: 30px;
}
.horairefilter .content label {
  margin-top: 20px;
  margin-left: 5px;
  display: inline-block;
}
.horairefilter .content label:not(:last-child) {
  width: 148px;
}
.horairefilter .content.large label {
  width: 250px;
}
section.horaire h3 {
  margin: 0!important;
  padding: 10px 0;
}
section.horaire span.topnote {
  font-size: 12px;
  color: #4d4d4d;
  margin: 3px 0 5px 110px;
  display: block;
}
section.horaire span.topnote img {
  display: inline-block;
  margin: 0 2px 0 3px;
  position: relative;
  top: 1px;
}
section.horaire .block {
  margin-bottom: 15px;
  background: #dbdbdb;
}
section.horaire .block:before,
section.horaire .block:after {
  content: " ";
  display: table;
}
section.horaire .block:after {
  clear: both;
}
section.horaire .block:before,
section.horaire .block:after {
  content: " ";
  display: table;
}
section.horaire .block:after {
  clear: both;
}
section.horaire .label {
  padding: 10px;
  text-align: center;
  float: left;
  width: 110px;
}
section.horaire .content {
  width: calc(100% - 110px);
  float: left;
  padding: 5px 15px 0;
  background: #ffffff;
}
section.horaire .content table {
  /*tr th:first-child, tr td:first-child{
				padding-left:0!important;
			}*/
}
section.horaire .content table th {
  color: #727376;
  font-size: 12px;
  text-align: left;
}
section.horaire .content table th:nth-child(1) {
  width: 30%;
}
@media only screen and (max-width: 380px) {
  section.horaire .content table th:nth-child(1) {
    min-width: 70px;
    width: 70px;
  }
}
section.horaire .content table th:nth-child(2) {
  width: 30%;
}
@media only screen and (max-width: 380px) {
  section.horaire .content table th:nth-child(2) {
    min-width: 65px;
    width: 65px;
  }
}
section.horaire .content table th:nth-child(3) {
  width: 22%;
}
@media only screen and (max-width: 380px) {
  section.horaire .content table th:nth-child(3) {
    min-width: 40px;
    width: 40px;
    padding-right: 10px;
  }
}
section.horaire .content table th:nth-child(4) {
  width: 18%;
  text-align: right;
}
section.horaire .content table td {
  position: relative;
  padding: 10px 10px 0 0;
  vertical-align: top;
  font-size: 15px;
}
section.horaire .content table td:nth-child(1) {
  width: 30%;
}
@media only screen and (max-width: 380px) {
  section.horaire .content table td:nth-child(1) {
    min-width: 70px;
    width: 70px;
  }
}
section.horaire .content table td:nth-child(2) {
  width: 30%;
}
@media only screen and (max-width: 380px) {
  section.horaire .content table td:nth-child(2) {
    min-width: 67px;
    width: 67px;
  }
}
section.horaire .content table td:nth-child(3) {
  width: 22%;
}
@media only screen and (max-width: 380px) {
  section.horaire .content table td:nth-child(3) {
    min-width: 40px;
    width: 40px;
    padding-right: 10px;
  }
}
section.horaire .content table td:nth-child(4) {
  width: 18%;
  height: 18px;
}
@media only screen and (max-width: 380px) {
  section.horaire .content table td:nth-child(4) {
    min-width: 40px;
    width: 40px;
  }
}
section.horaire .content table td a {
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  position: absolute;
  right: 15px;
  top: 10px;
  width: 19px;
}
section.horaire .content table td a img {
  -webkit-transition: all 250ms;
  -o-transition: all 250ms;
  transition: all 250ms;
  position: absolute;
  top: 0;
  left: 0;
}
section.horaire .content table td a.open img {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
section.horaire .content table th,
section.horaire .content table td {
  padding-left: 0!important;
}
section.horaire .content table th {
  padding: 0;
}
section.horaire .content table:not(:first-child) {
  border-top: 1px solid #dbdbdb;
}
section.horaire .content header {
  border-bottom: 1px #282828 solid;
  height: 40px;
}
section.horaire .content header:before,
section.horaire .content header:after {
  content: " ";
  display: table;
}
section.horaire .content header:after {
  clear: both;
}
section.horaire .content header:before,
section.horaire .content header:after {
  content: " ";
  display: table;
}
section.horaire .content header:after {
  clear: both;
}
section.horaire .content header a.tab {
  display: block;
  line-height: 40px;
  width: 50%;
  text-align: center;
  padding: 0;
  float: left;
  color: #282828;
  -webkit-transition: all 100ms;
  -o-transition: all 100ms;
  transition: all 100ms;
}
section.horaire .content header a.tab:hover {
  text-decoration: none;
  background: rgba(40, 40, 40, 0.1);
  color: rgba(40, 40, 40, 0.9);
}
section.horaire .content header a.tab.active {
  color: #ffffff;
  background: #282828;
}
section.horaire .content header a.tab.active:hover {
  color: #ffffff;
  background: #282828;
}
section.horaire .content section > .tab {
  font-size: 14px;
  padding: 15px 15px 15px 0;
}
section.horaire .content section > .tab strong {
  display: block;
  text-transform: uppercase;
}
section.horaire .content section > .tab strong:not(:first-child) {
  margin-top: 15px;
}
section.horaire .content section > .tab p {
  margin: 0;
  padding: 0;
}
section.horaire .content section > .tab a {
  position: relative;
  right: 0;
  top: 0;
  width: auto;
}
section.horaire .content section > .tab .icons {
  margin-top: 8px;
}
section.horaire .content section > .tab .icons span {
  background-position: 0 6px;
  background-repeat: no-repeat;
  background-size: 16px auto;
  display: block;
  font-size: 14px;
  line-height: 16px;
  padding: 5px 0 5px 26px;
}
section.horaire .content section > .tab .icons span.lanes1 {
  background-image: url("/YMCA/media/skin/img/icons/Schedule_c1.svg");
}
section.horaire .content section > .tab .icons span.lanes2 {
  background-image: url("/YMCA/media/skin/img/icons/Schedule_c2.svg");
}
section.horaire .content section > .tab .icons span.lanes3 {
  background-image: url("/YMCA/media/skin/img/icons/Schedule_c3.svg");
}
section.horaire .content section > .tab .icons span.lanes4 {
  background-image: url("/YMCA/media/skin/img/icons/Schedule_c4.svg");
}
section.horaire .content section > .tab .icons span.lanes5 {
  background-image: url("/YMCA/media/skin/img/icons/Schedule_c5.svg");
}
section.horaire .content section > .tab .icons span.registration {
  background-image: url("/YMCA/media/skin/img/icons/Schedule_inscription.svg");
}
section.horaire .content section > .tab .icons span.reservation {
  background-image: url("/YMCA/media/skin/img/icons/Schedule_reservation.svg");
}
section.horaire .content section > .tab .icons span.outdoor {
  background-image: url("/YMCA/media/skin/img/icons/Schedule_exterieur.svg");
}
section.horaire .content section > .tab .icons span.baby {
  background-image: url("/YMCA/media/skin/img/icons/Schedule_bebe.svg");
}
section.horaire .content .controls {
  padding: 0 15px 15px;
}
section.horaire .content .controls a {
  margin-right: 30px;
  color: #282828;
  font-size: 14px;
  line-height: 21px;
  position: relative;
  padding-left: 31px;
}
section.horaire .content .controls a img {
  position: absolute;
  left: 0;
  top: 0;
}
section.horaire .content .controls a img.email {
  top: 1px;
}
section.horaire.centres .block {
  background: transparent;
}
section.horaire.centres span.topnote {
  margin: 3px 0 5px 15px;
}
section.horaire.centres .content {
  width: 100%;
}
section.horaire.centres .content td header a.tab {
  display: block;
  line-height: 40px;
  width: 50%;
  text-align: center;
  padding: 0;
  float: left;
  position: relative;
  top: 0;
  left: 25%;
}
section.horaire.centres .content table th {
  padding-bottom: 10px;
}
@media only screen and (max-width: 380px) {
  section.horaire.centres .content table th {
    font-size: 11px;
  }
}
section.horaire.centres .content table th {
  text-align: left;
}
section.horaire.centres .content table th:nth-child(1) {
  width: 22%;
}
section.horaire.centres .content table th:nth-child(2) {
  width: 22%;
}
section.horaire.centres .content table th:nth-child(3) {
  width: 21%;
}
section.horaire.centres .content table th:nth-child(4) {
  width: 20%;
  text-align: left;
}
section.horaire.centres .content table th:nth-child(5) {
  width: 15%;
  text-align: right;
}
@media only screen and (max-width: 380px) {
  section.horaire.centres .content table td {
    font-size: 12px;
  }
}
section.horaire.centres .content table td:nth-child(1) {
  width: 22%;
}
section.horaire.centres .content table td:nth-child(2) {
  width: 22%;
}
section.horaire.centres .content table td:nth-child(3) {
  width: 21%;
}
section.horaire.centres .content table td:nth-child(4) {
  width: 20%;
}
section.horaire.centres .content table td:nth-child(5) {
  width: 15%;
}
.filterbox {
  margin-bottom: 30px;
}
.filterbox .tabs {
  border-bottom: 2px #000000 solid;
}
.filterbox .tabs:before,
.filterbox .tabs:after {
  content: " ";
  display: table;
}
.filterbox .tabs:after {
  clear: both;
}
.filterbox .tabs:before,
.filterbox .tabs:after {
  content: " ";
  display: table;
}
.filterbox .tabs:after {
  clear: both;
}
.filterbox .tabs a {
  display: block;
  width: 33.333333%;
  text-align: center;
  float: left;
  font-size: 20px;
  color: #000000;
  padding: 10px;
}
.filterbox .tabs a.active,
.filterbox .tabs a:hover {
  background-color: #000000;
  color: #ffffff;
  text-decoration: none;
}
.filterbox > .content {
  background-color: #dbdbdb;
  padding: 25px 15px 15px;
}
.filterbox > .content .input {
  margin-right: 6px;
}
.filterbox > .content .input:before,
.filterbox > .content .input:after {
  content: " ";
  display: table;
}
.filterbox > .content .input:after {
  clear: both;
}
.filterbox > .content .input:before,
.filterbox > .content .input:after {
  content: " ";
  display: table;
}
.filterbox > .content .input:after {
  clear: both;
}
.filterbox > .content .input span.label {
  display: block;
  float: left;
  line-height: 50px;
  margin-right: 15px;
}
.filterbox > .content .input .box {
  float: left;
}
.filterbox > .content .box {
  border-radius: 3px;
  background-color: #ffffff;
  width: 600px;
  height: 50px;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2);
  position: relative;
}
.filterbox > .content .box a {
  position: absolute;
  right: 10px;
  top: 12px;
}
.filterbox > .content .box input[type=text] {
  border-radius: 3px;
  font-size: 18px;
  position: absolute;
  left: 0;
  top: 0;
  padding: 10px;
  width: 555px;
  height: 50px;
  border: none;
}
.filterbox > .content .box select {
  width: 600px;
  height: 50px;
  background: transparent;
  border: none;
  padding: 0 10px;
  font-size: 18px;
  z-index: 1;
}
.filterbox > .content .box select option:active {
  background-color: #a8052b;
  color: #ffffff;
}
.filterbox > .content .box .arrow {
  background-color: #ffffff;
  position: absolute;
  z-index: 2;
  top: 5px;
  right: 5px;
  width: 30px;
  height: 40px;
  text-align: center;
  padding-top: 10px;
}
.filterbox > .content .box .arrow img {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}
.filterbox > .content .results.keywords {
  padding: 20px 0 0;
}
.filterbox > .content .results.keywords header {
  font-size: 18px;
  text-transform: uppercase;
  float: none;
}
.filterbox > .content .results.keywords > div {
  padding-top: 15px;
  display: block;
  width: 100%;
}
.filterbox > .content .results.keywords > div:before,
.filterbox > .content .results.keywords > div:after {
  content: " ";
  display: table;
}
.filterbox > .content .results.keywords > div:after {
  clear: both;
}
.filterbox > .content .results.keywords > div:before,
.filterbox > .content .results.keywords > div:after {
  content: " ";
  display: table;
}
.filterbox > .content .results.keywords > div:after {
  clear: both;
}
.filterbox > .content .results.keywords > div span {
  display: block;
  float: left;
  font-size: 14px;
}
.filterbox > .content .results.keywords > div span.label {
  width: 160px;
}
.filterbox > .content .results.keywords > div span.spanActivity {
  padding-left: 35px;
  font-size: 14px;
}
.filterbox > .content .results.keywords > div span.grey {
  color: #4d4d4d;
  clear: both;
}
.filterbox > .content .results.keywords > div span.content {
  font-size: 14px;
  padding-top: 2px;
  padding-left: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.filterbox > .content .results.keywords > div span.content:first-child:not(.single) {
  padding-left: 160px;
}
.filterbox > .content .results.keywords > div span.content > span {
  float: none;
  display: block;
  padding: 2px 0;
}
.filterbox > .content .results.keywords > div span.content > span span.grey {
  color: #4d4d4d;
  padding-right: 4px;
}
.filterbox > .content .results:not(.keywords),
.filterbox > .content #resultDetailsBlock {
  padding: 20px 0 0;
}
.filterbox > .content .results:not(.keywords) header,
.filterbox > .content #resultDetailsBlock header {
  float: left;
  text-transform: uppercase;
  font-size: 18px;
}
.filterbox > .content .results:not(.keywords) > div,
.filterbox > .content #resultDetailsBlock > div {
  padding-top: 0;
  width: 100%;
  padding-left: 160px;
}
.filterbox > .content .results:not(.keywords) > div strong,
.filterbox > .content #resultDetailsBlock > div strong,
.filterbox > .content .results:not(.keywords) > div span,
.filterbox > .content #resultDetailsBlock > div span {
  font-size: 14px;
}
.filterbox > .content .results:not(.keywords) > div span.content,
.filterbox > .content #resultDetailsBlock > div span.content {
  display: block;
  padding: 3px 0;
}
.filterbox > .content .results:not(.keywords) > div span.content span,
.filterbox > .content #resultDetailsBlock > div span.content span {
  float: left;
}
.filterbox > .content .results:not(.keywords) > div span.content span.grey,
.filterbox > .content #resultDetailsBlock > div span.content span.grey {
  color: #4d4d4d;
  padding-right: 4px;
}
.filterbox > .content .results:not(.keywords) > div strong,
.filterbox > .content #resultDetailsBlock > div strong {
  color: #4d4d4d;
  padding-right: 5px;
  font-weight: 400;
}
.filterbox > .content .results:not(.keywords) > div a,
.filterbox > .content #resultDetailsBlock > div a {
  float: right;
  color: #000000;
  margin: 10px 0px 0px;
  display: block;
}
.filterbox > .content .results:not(.keywords) > div a:before,
.filterbox > .content #resultDetailsBlock > div a:before {
  content: " ";
  display: block;
  position: absolute;
  top: 5px;
  left: -15px;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_red.svg");
  background-size: 100% 100%;
}
.filterbox > .content .results:not(.keywords) > div a:hover,
.filterbox > .content #resultDetailsBlock > div a:hover {
  color: #a8052b;
  text-decoration: none;
}
.filterbox select {
  margin-bottom: 10px;
  margin-top: 15px;
  padding: 10px;
}
section.results {
  width: 940px;
  padding-top: 30px;
}
section.results a.arrow {
  padding-left: 0;
}
section.results a.arrow:before {
  left: auto;
  top: 7px;
  right: -20px;
  -webkit-transition: 150ms all;
  -o-transition: 150ms all;
  transition: 150ms all;
}
section.results a.arrow.open:before {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}
section.results .dropdown h3 {
  margin: 0;
}
section.results .dropdown section.horaire {
  margin-bottom: 25px;
}
section.results .dropdown section.horaire h3 {
  margin: 0!important;
  padding: 10px 0;
}
section.results .dropdown section.horaire .block:first-child {
  margin-top: 15px;
}
section.results span.subtitle {
  font-size: 14px;
  display: block;
  margin-bottom: 10px;
}
section.results span.subtitle span.grey {
  color: #4d4d4d;
}
section.results div.activity,
section.results section.activity.single {
  margin-top: 0;
}
section.emotion {
  height: 565px;
  background-color: #ffffff;
}
section.emotion .wrapper {
  height: 100%;
  position: relative;
}
section.emotion .box {
  background: rgba(255, 255, 255, 0.8);
  width: 360px;
  padding: 10px 20px;
  position: absolute;
  left: 40px;
  top: 55px;
}
section.emotion .box.link {
  padding-bottom: 45px;
}
section.emotion .box h4 {
  font-size: 32px;
  font-weight: 300;
  margin: 0 0 15px 0;
  color: #000000;
  text-transform: none;
  line-height: 40px;
}
section.emotion .box h4:last-child {
  margin-bottom: 0;
}
section.emotion .box h4 strong {
  font-weight: 400;
}
section.emotion .box p {
  margin: 0 0 17px 0;
}
section.emotion .box a {
  position: absolute;
  bottom: 20px;
  left: 20px;
  text-decoration: none;
  color: #a8052b;
}
section.emotion .box a.arrow {
  padding-left: 15px;
}
section.emotion .box a.arrow:before {
  content: " ";
  display: block;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_red.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 6px;
  left: 0;
}
section.emotion .box ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
section.emotion .box ul li {
  padding-left: 10px;
  text-indent: -0.7em;
  margin-bottom: 7px;
}
section.emotion .box ul li:before {
  content: "•";
  margin-right: 7px;
  color: #1fa4a2;
}
table {
  padding: 0;
  border-collapse: collapse;
  color: #000000;
  background: #ffffff;
  width: 100%;
  margin: 5px 0 10px;
}
table.infoWindow {
  margin-bottom: 0;
}
table.infoWindow tr td.Address {
  line-height: 19px;
}
table.infoWindow tr td.Address a.btn {
  margin-top: 5px;
}
table.smaller-table {
  width: 500px;
}
table.content-table tr td {
  padding-left: 20px;
}
table thead {
  background: #1fa4a2;
  color: #ffffff;
}
table tr {
  /*&:nth-child(2n+1){
			border:0;
		}*/
}
table tr:first-of-type {
  border-bottom: 1px #dbdbdb solid;
}
table tr.activity-details {
  border-bottom: 1px #dbdbdb solid;
}
table tr::last-of-type {
  border: 0;
}
table tr th {
  font-size: 16px;
}
table tr th,
table tr td {
  font-weight: 400;
  text-align: left;
  vertical-align: top;
}
table tr th.age,
table tr td.age {
  min-width: 80px;
}
table tr th {
  padding: 5px 0px 5px 5px;
}
table tr td {
  padding: 6px 0px 6px 5px;
}
table tbody th {
  color: #000000;
}
table tr:last-of-type {
  border: 0;
}
section.contact {
  /*table {
		padding: 0;
		border-collapse: collapse;
		color: @black;
		background: @white;
		//width: 425px;
		width: 100%;
		margin: 5px 0 10px;
		thead{
			background: @turquoise;

		}
		tr {
			border-bottom: 1px @grey solid;
			th {
				color: @white;
				font-size: 20px;
			}
			
			th, td {
				font-weight: @normal;
				padding: 10px 0;
				text-align: left;
				vertical-align: top;
				&:first-child {
					//width: 90px;
					padding-left: 20px;
				}
			}
		}
	}*/
}
section.contact .centres {
  margin-bottom: 0;
}
section.contact .centres .centre {
  margin: 15px 0;
}
section.contact .centres .centre p {
  background: #ffffff;
  padding: 15px 15px;
  line-height: 26px;
  margin-top: 0;
}
section.contact .centres .centre p span {
  display: block;
}
section.contact .centres .centre .col {
  width: 48%;
}
section.contact .centres .centre .col:not(:last-child) {
  margin-right: 4%;
}
section.contact .centres .centre .col p {
  padding: 0;
}
section.contact .centres .centre h3 {
  margin-top: 20px;
  margin-bottom: 10px;
}
section.contact .centres .centre h3 + a.dropdown {
  margin-top: 0;
}
section.contact .centres .centre a.dropdown {
  display: inline-block;
  margin-top: 20px;
  position: relative;
}
section.contact .centres .centre a.dropdown:after {
  content: " ";
  display: block;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_red.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 7px;
  right: -25px;
  -webkit-transition: all 250ms;
  -o-transition: all 250ms;
  transition: all 250ms;
}
section.contact .centres .centre a.dropdown.open:after {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  top: 6px;
}
/**
 * Language School Widgets
 */
section.aqua-content {
  background: url("/YMCA/media/skin/img/gradientbg.png") center center repeat-y;
  border-top: 40px #ffffff solid;
  padding: 45px 0;
  color: #ffffff;
}
section.aqua-content .sessions {
  float: left;
  width: 100%;
  max-width: 515px;
}
section.aqua-content .sessions span.header {
  font-size: 18px;
  text-transform: uppercase;
}
section.aqua-content .sessions .box {
  background: #eeeeee;
  border-radius: 2px;
  padding: 20px 20px;
  margin: 20px 0 25px 0;
  width: 100%;
  max-width: 460px;
}
@media only screen and (max-width: 480px) {
  section.aqua-content .sessions .box {
    padding: 10px;
  }
}
section.aqua-content .sessions .box .item:before,
section.aqua-content .sessions .box .item:after {
  content: " ";
  display: table;
}
section.aqua-content .sessions .box .item:after {
  clear: both;
}
section.aqua-content .sessions .box .item:before,
section.aqua-content .sessions .box .item:after {
  content: " ";
  display: table;
}
section.aqua-content .sessions .box .item:after {
  clear: both;
}
section.aqua-content .sessions .box .item:first-child {
  margin-bottom: 20px;
}
section.aqua-content .sessions .box .item .icon {
  float: left;
  margin-right: 15px;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  position: relative;
  background-color: #23bcb9;
}
@media only screen and (max-width: 480px) {
  section.aqua-content .sessions .box .item .icon {
    width: 40px;
    height: 40px;
  }
}
section.aqua-content .sessions .box .item .icon img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 22px;
  height: 22px;
  width: 32px;
  height: 32px;
}
@media only screen and (max-width: 480px) {
  section.aqua-content .sessions .box .item .icon img {
    width: 22px;
    height: 22px;
  }
}
section.aqua-content .sessions .box .item .text {
  float: left;
  width: calc(100% - 75px);
}
@media only screen and (max-width: 480px) {
  section.aqua-content .sessions .box .item .text {
    width: calc(100% - 55px);
  }
}
section.aqua-content .sessions .box .item span {
  display: block;
  color: #000000;
  font-weight: 300;
}
@media only screen and (min-width: 481px) {
  section.aqua-content .sessions .box .item span {
    white-space: nowrap;
  }
}
section.aqua-content .sessions .box .item span.small {
  font-size: 21px;
}
section.aqua-content .sessions .box .item span.big {
  font-size: 32px;
}
section.aqua-content .languages {
  float: left;
  width: calc(100% - 515px);
}
@media only screen and (max-width: 850px) {
  section.aqua-content .languages {
    width: 100%;
    margin-top: 50px;
  }
}
section.aqua-content .languages span.header {
  font-size: 18px;
  text-transform: uppercase;
  margin-bottom: 25px;
  display: block;
}
section.aqua-content .languages div a {
  font-weight: 300;
  color: #ffffff;
  font-size: 28px;
  display: inline-block;
  margin-bottom: 35px;
  width: 32%;
}
section.aqua-content .languages div a:before {
  content: " ";
  display: inline-block;
  position: relative;
  top: -4px;
  margin-right: 10px;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
}
section.aqua-content .languages div a:nth-child(3n+3) {
  width: 36%;
}
@media only screen and (min-width: 1055px) and (max-width: 1135px) {
  section.aqua-content .languages div a {
    margin-bottom: 42px;
  }
}
@media only screen and (min-width: 851px) and (max-width: 1054px) {
  section.aqua-content .languages div a {
    width: 50%;
  }
  section.aqua-content .languages div a:nth-child(3n+3) {
    width: 50%;
  }
  section.aqua-content .languages div a:last-child {
    width: 100%;
  }
}
@media only screen and (max-width: 560px) {
  section.aqua-content .languages div a {
    width: 50%;
  }
  section.aqua-content .languages div a:nth-child(3n+3) {
    width: 50%;
  }
  section.aqua-content .languages div a:last-child {
    width: 100%;
  }
}
@media only screen and (max-width: 1135px) {
  section.aqua-content .languages div a {
    font-size: 24px;
  }
}
section.tableheader {
  width: 100%;
  max-width: 645px;
}
section.tableheader:before,
section.tableheader:after {
  content: " ";
  display: table;
}
section.tableheader:after {
  clear: both;
}
section.tableheader:before,
section.tableheader:after {
  content: " ";
  display: table;
}
section.tableheader:after {
  clear: both;
}
section.tableheader h2 {
  float: left;
  margin-top: 0;
}
section.tableheader a {
  margin-top: 10px;
  float: right;
}
table.course {
  width: 100%;
  max-width: 645px;
  background-color: transparent;
  margin-bottom: 50px;
}
table.course tr {
  border-bottom: none;
}
table.course tr th {
  width: 110px;
  height: 45px;
  font-size: 16px;
  text-align: center;
  text-transform: uppercase;
  padding-left: 0;
  padding-top: 5px;
  position: relative;
}
@media only screen and (max-width: 644px) {
  table.course tr th {
    width: 45px;
    height: 76px;
  }
}
table.course tr th span.text {
  font-weight: 600;
}
@media only screen and (max-width: 644px) {
  table.course tr th span.text {
    position: absolute;
    top: 15px;
    left: -15px;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
    width: 76px;
    font-size: 12px;
    text-align: left;
  }
}
table.course tr th span.text span {
  display: block;
  font-weight: 400;
  text-transform: none;
}
table.course tr th:first-child {
  width: auto;
  line-height: 45px;
  font-size: 21px;
  padding-left: 20px;
  padding-top: 5px;
  text-align: left;
  text-transform: none;
  font-weight: 400;
}
@media only screen and (max-width: 644px) {
  table.course tr th:first-child {
    line-height: 70px;
  }
}
table.course tr td {
  vertical-align: middle;
  padding-left: 0;
}
table.course tr td a {
  color: #1fa4a2;
  font-weight: 600;
  position: relative;
  display: inline-block;
  padding-left: 5px;
}
@media only screen and (max-width: 479px) {
  table.course tr td a {
    font-size: 15px;
    font-weight: 400;
  }
}
@media only screen and (min-width: 645px) {
  table.course tr td a {
    padding-left: 27px;
  }
  table.course tr td a:before {
    position: absolute;
    color: #000000;
    display: block;
    content: "○";
    top: 0;
    left: 10px;
  }
}
table.course tr td span.checkmark {
  display: block;
  margin: 0 auto;
  background-color: #ffffff;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  position: relative;
}
table.course tr td span.checkmark img {
  width: 13px;
  height: 15px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
table.course tr td:first-child {
  padding-right: 5px;
}
table.course tr td:nth-child(2),
table.course tr th:nth-child(2) {
  background-color: rgba(31, 164, 162, 0.3);
}
table.course tr td:nth-child(3),
table.course tr th:nth-child(3) {
  background-color: rgba(31, 164, 162, 0.5);
}
table.course tr td:nth-child(4),
table.course tr th:nth-child(4) {
  background-color: rgba(31, 164, 162, 0.7);
}
table.course tr:nth-child(odd) {
  background-color: #ffffff;
}
.rte table.coursedetails tr {
  border-bottom: 2px #eeeeee solid;
}
.rte table.coursedetails tr:last-child {
  border-bottom: none;
}
.rte table.coursedetails tr th {
  font-size: 14px;
  color: #727376;
  width: 230px;
  height: 40px;
  vertical-align: top;
  padding: 10px 0 9px 20px;
}
@media only screen and (max-width: 767px) {
  .rte table.coursedetails tr th {
    display: block;
    font-style: italic;
    padding-bottom: 0;
    height: 35px;
  }
}
.rte table.coursedetails tr td {
  height: 40px;
  font-size: 16px;
  font-weight: 400;
  padding: 9px 0;
}
@media only screen and (max-width: 767px) {
  .rte table.coursedetails tr td {
    display: block;
    padding-left: 10px;
    height: auto;
    padding-top: 0;
  }
}
.rte table.coursedetails tr td span {
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .rte table.coursedetails tr td span {
    width: 380px;
  }
}
.rte .pricesSessions:before,
.rte .pricesSessions:after {
  content: " ";
  display: table;
}
.rte .pricesSessions:after {
  clear: both;
}
.rte .pricesSessions:before,
.rte .pricesSessions:after {
  content: " ";
  display: table;
}
.rte .pricesSessions:after {
  clear: both;
}
.rte .pricesSessions div.price {
  float: left;
  width: calc(25% - 18px);
}
@media only screen and (min-width: 480px) and (max-width: 767px) {
  .rte .pricesSessions div.price {
    width: calc(50% - 9px);
    display: table;
    margin-top: 20px;
  }
  .rte .pricesSessions div.price:nth-child(1),
  .rte .pricesSessions div.price:nth-child(2) {
    margin-top: 0;
  }
  .rte .pricesSessions div.price:nth-child(1),
  .rte .pricesSessions div.price:nth-child(3) {
    margin-right: 18px;
  }
}
@media only screen and (max-width: 479px) {
  .rte .pricesSessions div.price {
    width: 100%;
    display: table;
  }
  .rte .pricesSessions div.price:not(:first-child) {
    margin-top: 20px;
  }
}
@media only screen and (min-width: 768px) {
  .rte .pricesSessions div.price:nth-child(1),
  .rte .pricesSessions div.price:nth-child(2),
  .rte .pricesSessions div.price:nth-child(3) {
    margin-right: 18px;
  }
}
.rte .pricesSessions div.price span.label {
  font-size: 14px;
  margin-bottom: 10px;
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .rte .pricesSessions div.price span.label {
    height: 23px;
    display: table-row;
  }
}
.rte .pricesSessions div.price span.box {
  display: table-cell;
  vertical-align: middle;
  height: 80px;
  width: 210px;
  margin-top: 5px;
  padding-left: 30px;
  background: #ffffff;
}
@media only screen and (max-width: 767px) {
  .rte .pricesSessions div.price span.box {
    width: 100%;
  }
}
.rte .pricesSessions div.price span.box span.price {
  font-size: 32px;
  color: #282828;
  line-height: 32px;
}
.rte .pricesSessions div.price span.box span.note {
  font-size: 14px;
  color: #4d4d4d;
  font-style: italic;
  display: block;
}
.rte .pricesSessions span.notebreak {
  clear: both;
  display: block;
  font-style: italic;
  font-size: 12px;
  color: #4d4d4d;
  padding-top: 10px;
}
.rte .pricesSessions span.notebreak + .next {
  margin-top: 10px;
  width: 440px;
}
@media only screen and (max-width: 767px) {
  .rte .pricesSessions span.notebreak + .next {
    width: 100%;
  }
}
.rte .pricesSessions .next {
  background: #ffffff;
  padding: 14px 15px;
  float: left;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .rte .pricesSessions .next {
    margin-top: 29px;
    width: 50%;
  }
}
@media only screen and (max-width: 767px) {
  .rte .pricesSessions .next {
    margin-top: 20px;
    width: 100%;
  }
}
.rte .pricesSessions .next span.label {
  color: #1fa4a2;
  text-transform: uppercase;
}
.rte .pricesSessions .next ul:not(.arrow):not(.pdf):not(.roman) {
  padding: 0;
  list-style: none;
  margin-top: 6px;
}
.rte .pricesSessions .next ul:not(.arrow):not(.pdf):not(.roman) li {
  display: inline;
  padding-left: 0;
  white-space: nowrap;
}
.rte .pricesSessions .next ul:not(.arrow):not(.pdf):not(.roman) li:after {
  content: "|";
  margin-left: 9px;
  margin-right: 6px;
  color: #1fa4a2;
}
.rte .pricesSessions .next ul:not(.arrow):not(.pdf):not(.roman) li:before {
  display: none;
}
.rte .pricesSessions .next ul:not(.arrow):not(.pdf):not(.roman) li:last-child:after {
  display: none;
}
.weather {
  text-align: center;
  background: #ffffff;
  padding: 10px 0;
  margin-bottom: 15px;
}
.weather header {
  margin-bottom: 5px;
}
.weather div.content {
  line-height: 36px;
}
.weather div.content img {
  width: 40px;
  height: 36px;
  position: relative;
  top: 5px;
  margin-right: 5px;
}
.weather div.content span {
  font-size: 32px;
}
.weather div.content sup {
  font-size: 15px;
  position: relative;
  top: -12px;
}
.weather span.desc {
  display: block;
  font-size: 14px;
  color: #4d4d4d;
  margin-top: 5px;
}
.weather span.desc::first-letter {
  text-transform: uppercase;
}
.sidebarPDF {
  background: #ffffff;
  margin-bottom: 15px;
}
.sidebarPDF a {
  display: block;
  color: #000000;
  position: relative;
  line-height: 32px;
  padding: 10px 0 10px 57px;
}
.sidebarPDF a:before {
  content: " ";
  display: inline-block;
  width: 32px;
  height: 32px;
  background-image: url("/YMCA/media/skin/img/icons/pdf.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 10px;
  left: 15px;
}
.sidebarPDF a:not(:last-child) {
  border-bottom: 2px #eeeeee solid;
}
.calendar-legend {
  background: #dbdbdb;
  padding: 20px;
  margin-bottom: 30px;
}
.calendar-legend:before,
.calendar-legend:after {
  content: " ";
  display: table;
}
.calendar-legend:after {
  clear: both;
}
.calendar-legend:before,
.calendar-legend:after {
  content: " ";
  display: table;
}
.calendar-legend:after {
  clear: both;
}
@media only screen and (max-width: 480px) {
  .calendar-legend .right {
    margin-top: 20px;
  }
}
@media only screen and (min-width: 481px) {
  .calendar-legend .left,
  .calendar-legend .right {
    width: 50%;
    float: left;
  }
}
.calendar-legend .left p,
.calendar-legend .right p,
.calendar-legend .left ul,
.calendar-legend .right ul {
  max-width: 500px;
}
.calendar-legend .left p:last-child,
.calendar-legend .right p:last-child,
.calendar-legend .left ul:last-child,
.calendar-legend .right ul:last-child {
  margin: 0 0 20px 0;
}
.calendar-legend .left ul,
.calendar-legend .right ul {
  padding-left: 0;
  list-style: none;
}
.calendar-legend .left ul li,
.calendar-legend .right ul li {
  position: relative;
  padding-left: 15px;
}
.calendar-legend .left ul li:not(:last-child),
.calendar-legend .right ul li:not(:last-child) {
  margin-bottom: 10px;
}
.calendar-legend .left ul li:before,
.calendar-legend .right ul li:before {
  position: absolute;
  content: "•";
  left: 0;
  top: 0;
  color: #c3d021;
}
.calendar-legend .left div,
.calendar-legend .right div {
  position: relative;
  padding-left: 45px;
}
.calendar-legend .left div:before,
.calendar-legend .right div:before {
  content: " ";
  width: 32px;
  height: 32px;
  display: block;
  position: absolute;
  top: -5px;
  left: 0;
}
.calendar-legend .left div:last-child *:last-child,
.calendar-legend .right div:last-child *:last-child {
  margin-bottom: 0;
}
.calendar-legend .left .day:before,
.calendar-legend .right .day:before {
  background: #faa634;
  background-repeat: no-repeat;
  background-size: 15px 15px;
  background-position: 50% 50%;
  background-image: url('/YMCA/media/skin/img/icons/sun-icon-black.svg');
}
.calendar-legend .left .night:before,
.calendar-legend .right .night:before {
  background: #1fa4a2;
  background-repeat: no-repeat;
  background-size: 15px 15px;
  background-position: 50% 50%;
  background-image: url('/YMCA/media/skin/img/icons/moon-icon.svg');
}
.calendar-legend .left .test:before,
.calendar-legend .right .test:before {
  background: #c3d021;
}
.calendar-legend .left .none:before,
.calendar-legend .right .none:before {
  background: #4d4d4d;
}
.calendar-legend .left .closed:before,
.calendar-legend .right .closed:before {
  background: #4d4d4d;
}
.calendars:before,
.calendars:after {
  content: " ";
  display: table;
}
.calendars:after {
  clear: both;
}
.calendars:before,
.calendars:after {
  content: " ";
  display: table;
}
.calendars:after {
  clear: both;
}
.calendars .disabled > table,
.calendars > table {
  margin-bottom: 20px;
  border: none;
  float: left;
}
@media only screen and (min-width: 900px) {
  .calendars .disabled > table,
  .calendars > table {
    width: calc(33% - 15px);
  }
  .calendars .disabled > table:not(:nth-child(3n+3)),
  .calendars > table:not(:nth-child(3n+3)) {
    margin-right: 27px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 899px) {
  .calendars .disabled > table,
  .calendars > table {
    width: calc(50% - 15px);
  }
  .calendars .disabled > table:nth-child(odd),
  .calendars > table:nth-child(odd) {
    margin-right: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .calendars .disabled > table,
  .calendars > table {
    width: 100%;
  }
}
.calendars .disabled > table tr,
.calendars > table tr {
  border: none;
}
.calendars .disabled > table th,
.calendars > table th {
  height: 40px;
  vertical-align: middle;
  text-align: center;
  border: none;
  font-size: 14px;
  color: #727376;
  text-transform: uppercase;
}
.calendars .disabled > table td,
.calendars > table td {
  padding: 0;
  border: none;
  text-align: center;
  vertical-align: middle;
}
.calendars .disabled > table td.notinmonth div,
.calendars > table td.notinmonth div {
  visibility: hidden;
}
.calendars .disabled > table td div,
.calendars > table td div {
  line-height: 45px;
  text-align: center;
  height: 45px;
}
.calendars .disabled > table td div.day,
.calendars > table td div.day {
  background: #faa634;
  position: relative;
}
.calendars .disabled > table td div.day:after,
.calendars > table td div.day:after {
  content: "";
  width: 15px;
  height: 15px;
  background-image: url('/YMCA/media/skin/img/icons/sun-icon-black.svg');
  background-size: 100% 100%;
  display: block;
  position: absolute;
  top: 3px;
  right: 3px;
}
.calendars .disabled > table td div.night,
.calendars > table td div.night {
  background: #1fa4a2;
  color: #ffffff;
  position: relative;
}
.calendars .disabled > table td div.night:after,
.calendars > table td div.night:after {
  content: "";
  width: 15px;
  height: 15px;
  background-image: url('/YMCA/media/skin/img/icons/moon-icon.svg');
  background-size: 100% 100%;
  display: block;
  position: absolute;
  top: 3px;
  right: 3px;
}
.calendars .disabled > table td div.test,
.calendars > table td div.test {
  background: #c3d021;
}
.calendars .disabled > table td div.none,
.calendars > table td div.none {
  background: #4d4d4d;
  color: #ffffff;
}
.calendars .disabled > table td div.closed,
.calendars > table td div.closed {
  background: #4d4d4d;
  color: #ffffff;
}
.calendars .disabled > table td:not([colspan='7']),
.calendars > table td:not([colspan='7']) {
  width: 14.2857%;
}
.calendars .disabled > table td[colspan='7'],
.calendars > table td[colspan='7'] {
  height: 40px;
}
.calendars .disabled > table td[colspan='7'] table,
.calendars > table td[colspan='7'] table {
  background: #dbdbdb;
  margin: 0;
}
.calendars .disabled > table td[colspan='7'] td,
.calendars > table td[colspan='7'] td {
  text-transform: capitalize;
  height: 40px;
  padding: 0;
}
.calendars .disabled {
  float: left;
}
@media only screen and (min-width: 900px) {
  .calendars .disabled {
    width: calc(33% - 15px);
  }
  .calendars .disabled:not(:nth-child(3n+3)) {
    margin-right: 27px;
  }
  .calendars .disabled > table {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 899px) {
  .calendars .disabled {
    width: calc(50% - 15px);
  }
  .calendars .disabled:nth-child(odd) {
    margin-right: 30px;
  }
  .calendars .disabled > table {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .calendars .disabled {
    width: 100%;
  }
  .calendars .disabled > table {
    width: 100%;
  }
}
.calendars .disabled > table {
  float: none;
  opacity: 0.5;
}
/*
 * Element mixins
 **/
/**
 * ALTERNATE SUSPENSION
 */
section.image {
  height: 425px;
}
@media screen and (max-width: 767px) {
  section.image {
    height: 200px;
  }
}
section.image .wrapper {
  height: 100%;
}
section.impact {
  background: #1fa4a2;
  text-align: center;
  color: #ffffff;
}
section.impact.red {
  background: #a8052b;
}
section.impact.black {
  background: #000000;
}
section.impact.blue {
  background: #518fcc;
}
section.impact.green {
  background: #c3d021;
}
section.impact.orange {
  background: #faa634;
}
section.impact.pink {
  background: #e50278;
}
section.impact.aqua {
  background: #23bcb9;
}
section.impact .wrapper h2 {
  margin-bottom: 65px;
}
section.impact .wrapper h2 strong {
  font-weight: 400;
}
section.impact .wrapper .widgets {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: -ms-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
section.impact .wrapper .widgets .widget {
  width: 245px;
  margin: 0 auto;
  padding: 0 10px;
}
section.impact .wrapper .widgets .widget .icon {
  margin: 0 auto 10px;
  background: #ffffff;
  border-radius: 50%;
  width: 150px;
  height: 150px;
  position: relative;
}
section.impact .wrapper .widgets .widget .icon img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
section.impact .wrapper .widgets .widget span.header {
  font-size: 32px;
  font-weight: 400;
}
section.impact .wrapper .widgets .widget a {
  color: #ffffff;
}
section.impact .wrapper .widgets .widget p {
  margin-top: 5px;
}
section.impact .wrapper > a {
  display: inline-block;
  font-size: 21px;
  padding: 20px 40px;
  background: #ffffff;
  color: #000000;
  border-radius: 3px;
  margin: 20px 0 40px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.4);
}
section.map {
  background: #ffffff;
}
section.map .wrapper a {
  display: block;
  height: 300px;
  margin: 30px 0;
}
section.map .wrapper a > span {
  display: block;
  float: left;
  height: 100%;
}
section.map .wrapper a > span.box {
  width: 300px;
  background: #a8052b;
  color: #ffffff;
  padding: 25px;
  position: relative;
}
section.map .wrapper a > span.box span.header {
  font-size: 32px;
  line-height: 32px;
  font-weight: 300;
}
section.map .wrapper a > span.box span.link {
  position: absolute;
  left: 25px;
  bottom: 25px;
  padding-left: 15px;
}
section.map .wrapper a > span.box span.link:before {
  content: " ";
  display: block;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_white.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 6px;
  left: 0;
}
section.map .wrapper a > span.image {
  width: calc(100% - 300px);
  background-size: cover;
  background-position: center;
}
section.logoTiles {
  margin-bottom: 30px;
}
section.logoTiles .wrapper .tiles:before,
section.logoTiles .wrapper .tiles:after {
  content: " ";
  display: table;
}
section.logoTiles .wrapper .tiles:after {
  clear: both;
}
section.logoTiles .wrapper .tiles:before,
section.logoTiles .wrapper .tiles:after {
  content: " ";
  display: table;
}
section.logoTiles .wrapper .tiles:after {
  clear: both;
}
section.logoTiles .wrapper .tiles div {
  float: left;
  background-color: #ffffff;
  text-align: center;
  margin: 0 auto;
  position: relative;
}
@media only screen and (min-width: 900px) {
  section.logoTiles .wrapper .tiles div {
    width: 32%;
    height: 100px;
    line-height: 100px;
  }
  section.logoTiles .wrapper .tiles div:nth-child(3n) {
    margin-left: 2%;
  }
  section.logoTiles .wrapper .tiles div:nth-child(3n-2) {
    margin-right: 2%;
  }
  section.logoTiles .wrapper .tiles div:nth-child(n+4) {
    margin-top: 2%;
  }
}
@media only screen and (min-width: 620px) and (max-width: 899px) {
  section.logoTiles .wrapper .tiles div {
    width: 49%;
    height: 100px;
    line-height: 100px;
  }
  section.logoTiles .wrapper .tiles div:nth-child(even) {
    margin-left: 1%;
  }
  section.logoTiles .wrapper .tiles div:nth-child(odd) {
    margin-right: 1%;
  }
  section.logoTiles .wrapper .tiles div:nth-child(n+3) {
    margin-top: 2%;
  }
}
@media only screen and (max-width: 619px) {
  section.logoTiles .wrapper .tiles div {
    width: 100%;
    height: 100px;
    line-height: 100px;
  }
  section.logoTiles .wrapper .tiles div:not(:first-child) {
    margin-top: 20px;
  }
}
section.logoTiles .wrapper .tiles div a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
section.logoTiles .wrapper .tiles div img {
  max-height: 80%;
  width: auto;
  max-width: 250px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
/* Overlay begin page request */
.covering {
  position: fixed;
  top: 0;
  background: rgba(0, 0, 0, 0.71);
  z-index: 9999;
  width: 100%;
  height: 100%;
}
.spin {
  position: fixed;
  z-index: 99999;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 70px;
  text-align: center;
}
.spin > div {
  width: 18px;
  height: 18px;
  background-color: rgba(255, 255, 255, 0.85);
  border-radius: 100%;
  display: inline-block;
  -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}
.spin .bounce1 {
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}
.spin .bounce2 {
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}
@-webkit-keyframes sk-bouncedelay {
  0%,
  80%,
  100% {
    -webkit-transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
  }
}
@keyframes sk-bouncedelay {
  0%,
  80%,
  100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
.rte {
  margin: 10px 0;
}
.rte h2 {
  font-weight: 300;
  font-size: 32px;
  line-height: 32px;
}
.rte h2.subtitle {
  font-size: 24px;
  border-bottom: 4px #dbdbdb solid;
}
.rte h3 {
  font-size: 21px;
  font-weight: 400;
}
.rte h3 a:hover {
  color: #000000;
}
.rte h4 {
  font-weight: 400;
  font-size: 18px;
  color: #1fa4a2;
  text-transform: uppercase;
  padding-bottom: 0;
}
.rte p,
.rte ul,
.rte ol,
.rte h4,
.rte h3,
.rte h2 {
  background: #ffffff;
}
.rte p.clear,
.rte ul.clear,
.rte ol.clear,
.rte h4.clear,
.rte h3.clear,
.rte h2.clear,
.rte p.caption,
.rte ul.caption,
.rte ol.caption,
.rte h4.caption,
.rte h3.caption,
.rte h2.caption,
.rte p.small,
.rte ul.small,
.rte ol.small,
.rte h4.small,
.rte h3.small,
.rte h2.small,
.rte p.footnote,
.rte ul.footnote,
.rte ol.footnote,
.rte h4.footnote,
.rte h3.footnote,
.rte h2.footnote,
.rte p.image,
.rte ul.image,
.rte ol.image,
.rte h4.image,
.rte h3.image,
.rte h2.image {
  background: transparent;
}
.rte p.grey,
.rte ul.grey,
.rte ol.grey,
.rte h4.grey,
.rte h3.grey,
.rte h2.grey {
  background: #dbdbdb;
}
.rte p:not(.clear),
.rte ul:not(.clear),
.rte ol:not(.clear),
.rte h4:not(.clear),
.rte h3:not(.clear),
.rte h2:not(.clear),
.rte p:not(.caption),
.rte ul:not(.caption),
.rte ol:not(.caption),
.rte h4:not(.caption),
.rte h3:not(.caption),
.rte h2:not(.caption) {
  margin: 0;
  padding: 0 20px 15px 20px;
}
.rte p:not(.clear).break,
.rte ul:not(.clear).break,
.rte ol:not(.clear).break,
.rte h4:not(.clear).break,
.rte h3:not(.clear).break,
.rte h2:not(.clear).break,
.rte p:not(.caption).break,
.rte ul:not(.caption).break,
.rte ol:not(.caption).break,
.rte h4:not(.caption).break,
.rte h3:not(.caption).break,
.rte h2:not(.caption).break,
.rte p:not(.clear).pdf,
.rte ul:not(.clear).pdf,
.rte ol:not(.clear).pdf,
.rte h4:not(.clear).pdf,
.rte h3:not(.clear).pdf,
.rte h2:not(.clear).pdf,
.rte p:not(.caption).pdf,
.rte ul:not(.caption).pdf,
.rte ol:not(.caption).pdf,
.rte h4:not(.caption).pdf,
.rte h3:not(.caption).pdf,
.rte h2:not(.caption).pdf {
  margin: 10px 0;
  padding-bottom: 15px;
}
.rte p.clear,
.rte ul.clear,
.rte ol.clear,
.rte h4.clear,
.rte h3.clear,
.rte h2.clear,
.rte p.small,
.rte ul.small,
.rte ol.small,
.rte h4.small,
.rte h3.small,
.rte h2.small,
.rte p.footnote,
.rte ul.footnote,
.rte ol.footnote,
.rte h4.footnote,
.rte h3.footnote,
.rte h2.footnote {
  padding: 0 190px 0 0;
  margin-bottom: 15px;
}
.rte div.clear * {
  background-color: transparent;
}
.rte h3:not(.clear),
.rte h4:not(.clear),
.rte h3:not(.caption),
.rte h4:not(.caption) {
  padding-top: 15px;
  padding-bottom: 5px;
}
.rte p,
.rte ul,
.rte ol {
  font-size: 16px;
  line-height: 24px;
}
.rte ol:not(.clear) {
  padding-left: 42px;
}
.rte p.caption {
  font-size: 12px;
  font-style: italic;
  color: #4d4d4d;
  margin: 0 0 15px 0;
  line-height: 16px;
  padding: 0 0 5px 0;
}
.rte p.small,
.rte p.footnote {
  padding-top: 15px;
  padding-right: 20px;
  font-size: 14px;
  line-height: 20px;
}
.rte p span.grey,
.rte p.footnote {
  color: #727376;
}
.rte p.footnote {
  font-style: italic;
}
.rte p.image {
  padding: 0;
  background-size: cover;
  width: 100%;
}
.rte p.break {
  padding-top: 15px;
}
.rte img {
  margin-top: 15px;
}
.rte ul {
  list-style: none;
}
.rte ul li {
  position: relative;
}
.rte ul li ul:not(.clear):not(.caption):not(.arrow):not(.pdf):not(.roman) {
  padding-bottom: 0;
  padding-right: 0;
}
.rte ul li ul:not(.clear):not(.caption):not(.arrow):not(.pdf):not(.roman) li:before {
  color: #727376;
}
.rte ul:not(.arrow):not(.pdf):not(.roman) li {
  padding: 5px 0 5px 10px;
  text-indent: -0.7em;
}
.rte ul:not(.arrow):not(.pdf):not(.roman) li:before {
  content: "•";
  margin-right: 7px;
  color: #1fa4a2;
}
.rte ul.arrow {
  list-style: none;
}
.rte ul.arrow li {
  padding-left: 13px;
  position: relative;
  margin-bottom: 5px;
}
.rte ul.arrow li:before {
  content: " ";
  display: block;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_right_red.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 7px;
  left: 0;
}
.rte ul.roman {
  list-style-type: lower-roman;
  padding-left: 43px;
}
.rte ul.pdf {
  padding: 0;
  background-color: transparent;
}
.rte ul.pdf li {
  margin-bottom: 5px;
  display: block;
  width: 50%;
  padding: 15px 15px 15px 50px;
  background-color: #ffffff;
  position: relative;
}
.rte ul.pdf li p {
  padding-left: 0px;
}
.rte ul.pdf li a {
  display: block;
  color: #000000;
}
.rte ul.pdf li:before {
  content: " ";
  display: block;
  width: 23px;
  height: 32px;
  background-image: url("/YMCA/media/skin/img/icons/pdf.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 10px;
  left: 13px;
}
.rte a.search {
  background-color: #ffffff;
  position: relative;
  display: block;
  padding: 10px 10px 10px 45px;
  color: #1fa4a2;
  font-size: 21px;
  border-radius: 3px;
}
.rte a.search p {
  color: #000000;
}
.rte a.search:before {
  content: " ";
  display: block;
  width: 21px;
  height: 21px;
  background-image: url("/YMCA/media/skin/img/icons/search_turquoise.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 13px;
  left: 13px;
}
.rte a.pdf p {
  color: #a8052b;
}
.rte a.pdf:before {
  content: " ";
  display: block;
  width: 23px;
  height: 32px;
  background-image: url("/YMCA/media/skin/img/icons/pdf.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 10px;
  left: 13px;
}
.rte a.btn {
  border-radius: 3px;
  display: inline-block;
  padding: 10px 35px;
  color: #ffffff;
  border: none;
}
.rte a.btn.red {
  background-color: #a8052b;
}
.rte a.back {
  position: relative;
  padding-left: 15px;
}
.rte a.back:before {
  content: " ";
  display: block;
  width: 6px;
  height: 11px;
  background-image: url("/YMCA/media/skin/img/icons/arrow_left_red.svg");
  background-size: 100% 100%;
  position: absolute;
  top: 6px;
  left: 0;
}
.rte .local a.back {
  margin: 7px 0;
  display: inline-block;
}
.rte .local h2.clear {
  margin: 0;
  padding-bottom: 15px;
}
.rte .local p.small {
  margin: 0;
  padding: 0;
  padding-top: 5px !important;
}
.rte .local div.break:first-of-type {
  margin-bottom: 20px;
}
.rte p.image {
  padding: 0;
}
.rte p.image img {
  margin-top: 0;
}
.rte .tiles.promo {
  margin-top: 15px;
}
.rte .tiles.promo h2 {
  padding-left: 0;
  background: transparent;
}
.rte .tiles.promo .tile {
  height: 445px;
}
.rte .tiles.promo .tile .image {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 0;
  height: 250px;
  overflow: hidden;
}
.rte .tiles.promo .tile .image img {
  margin-top: 0;
  width: auto;
  min-width: 100%;
}
.rte .tiles.promo .tile .image span.gradient {
  position: absolute;
  top: 0;
  left: 0;
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=0);
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
}
.rte .tiles.promo .tile h3 {
  position: absolute;
  background: transparent;
  bottom: 0;
  left: 0;
  padding: 15px;
  color: #ffffff;
  font-size: 28px;
  z-index: 3;
}
.rte div.grey {
  margin: 20px 0;
  background-color: #dbdbdb;
}
.rte div.grey p,
.rte div.grey > ul,
.rte div.grey ol,
.rte div.grey h4,
.rte div.grey h3,
.rte div.grey h2 {
  margin: 0;
  padding: 0 20px 15px;
  max-width: 650px;
}
.rte div.grey p:first-child,
.rte div.grey > ul:first-child,
.rte div.grey ol:first-child,
.rte div.grey h4:first-child,
.rte div.grey h3:first-child,
.rte div.grey h2:first-child {
  padding-top: 15px;
}
.rte div.grey h2,
.rte div.grey h3,
.rte div.grey h4 {
  max-width: 100%;
  color: #000000;
}
.rte div.grey p,
.rte div.grey ul,
.rte div.grey ol,
.rte div.grey h2,
.rte div.grey h3,
.rte div.grey h4 {
  background-color: transparent;
}
.rte div.grey fieldset h3 {
  font-style: normal;
  padding: 0;
}
.rte div.grey fieldset h4 {
  font-style: normal;
  padding: 0;
  text-transform: none;
}
.rte div.break {
  padding-top: 15px;
  background-color: #ffffff;
  margin: 20px 0px;
  /*p:first-of-type {
			padding-top: 15px;
		}*/
}
.rte div.break.clear {
  background: transparent;
}
.rte div.break p:first-of-type,
.rte div.break h3:first-of-type {
  margin-bottom: 0;
}
.rte div.break h3:first-of-type,
.rte div.break h3:not(.clear),
.rte div.break h4:not(.clear),
.rte div.break h3:not(.caption),
.rte div.break h4:not(.caption) {
  padding-top: 0;
}
.rte div.break .cta-block p:first-of-type {
  padding-top: 0;
}
.rte p.caption + h4:not(.clear),
.rte img + h4:not(.clear),
.rte .grey + h4:not(.clear),
.rte .clear + h4:not(.clear),
.rte .break + h4:not(.clear),
.rte .small + h4:not(.clear),
.rte .footnote + h4:not(.clear),
.rte h2 + h4:not(.clear),
.rte div + h4:not(.clear),
.rte p.caption + ol:not(.clear),
.rte img + ol:not(.clear),
.rte .grey + ol:not(.clear),
.rte .clear + ol:not(.clear),
.rte .break + ol:not(.clear),
.rte .small + ol:not(.clear),
.rte .footnote + ol:not(.clear),
.rte h2 + ol:not(.clear),
.rte div + ol:not(.clear) {
  padding-top: 15px;
}
.rte p.caption + ul:not(.clear),
.rte img + ul:not(.clear),
.rte .grey + ul:not(.clear),
.rte .clear + ul:not(.clear),
.rte .break + ul:not(.clear),
.rte .small + ul:not(.clear),
.rte .footnote + ul:not(.clear),
.rte h2 + ul:not(.clear),
.rte div + ul:not(.clear) {
  padding-top: 10px;
}
.rte p.caption + p:not(.clear),
.rte .grey + p:not(.clear),
.rte .clear + p:not(.clear),
.rte .break + p:not(.clear),
.rte .small + p:not(.clear),
.rte .footnote + p:not(.clear),
.rte h2 + p:not(.clear),
.rte div + p:not(.clear) {
  padding-top: 15px;
}
.rte > ul:not(.clear):first-child,
.rte > ol:not(.clear):first-child,
.rte > p:not(.clear):first-child,
.rte > h2:not(.clear):first-child,
.rte > h3:not(.clear):first-child,
.rte > h4:not(.clear):first-child {
  padding-top: 15px;
}
.rte input[type=submit],
.rte input[type=button] {
  border-radius: 3px;
  display: inline-block;
  padding: 10px 35px;
  color: #ffffff;
  border: none;
}
.rte input[type=submit].red,
.rte input[type=button].red {
  background-color: #a8052b;
}
.rte a.cta,
.rte div.cta {
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.4);
  padding: 20px 58px;
  display: inline-block;
  margin: 5px auto;
  max-width: 650px;
  border-radius: 3px;
}
.rte a.cta:hover,
.rte div.cta:hover {
  text-decoration: none;
}
.rte a.cta p,
.rte div.cta p {
  text-align: center;
  font-size: 21px;
  line-height: 28px;
  padding: 0;
  margin: 0;
  background-color: transparent;
  color: #ffffff;
}
.rte a.cta.before,
.rte div.cta.before {
  background-color: #a8052b;
}
.rte a.cta.ongoing,
.rte div.cta.ongoing {
  background-color: #1fa4a2;
}
.rte a.cta.after,
.rte div.cta.after {
  background-color: #4d4d4d;
}
.rte a.cta:nth-child(2),
.rte div.cta:nth-child(2) {
  margin-left: 15px;
}
.rte a.cta.pdf,
.rte div.cta.pdf {
  background-color: #fff;
}
.rte .cta-block {
  text-align: center;
  margin: 15px 0;
}
.rte .cta-block a.pdf {
  background-color: #fff;
}
.rte .cta-block a.pdf p {
  color: #a8052b;
}
.rte .cta-block a.pdf:before {
  top: 17px;
}
.rte .promo {
  background-color: transparent;
}
.rte table {
  padding: 0;
  border-collapse: collapse;
  color: #000000;
  background: #ffffff;
  width: 100%;
  margin: 5px 0 10px;
}
.rte table.smaller-table {
  width: 500px;
}
.rte table thead {
  background: #1fa4a2;
}
.rte table thead th {
  color: #ffffff;
  font-size: 16px;
  padding: 4px 3px 5px 4px;
  line-height: 20px;
  min-width: 80px;
}
.rte table.content-table tr th,
.rte table.content-table tr td {
  padding-left: 20px;
}
.rte table tr {
  border-bottom: 1px #dbdbdb solid;
}
.rte table tr td {
  font-weight: 400;
  padding: 4px 3px 5px 4px;
  text-align: left;
  vertical-align: top;
  font-size: 14px;
}
.rte .gsc-search-box table,
.rte .gsc-results-wrapper-visible table {
  background: transparent;
  margin: 0 0 2px;
}
.rte .gsc-search-box table tr,
.rte .gsc-results-wrapper-visible table tr {
  border: medium none;
}
.rte .gsc-search-box table tr td,
.rte .gsc-results-wrapper-visible table tr td {
  padding: 0;
  vertical-align: middle;
}
.rte .gsc-search-box table tr td td,
.rte .gsc-results-wrapper-visible table tr td td {
  padding-left: 6px;
}
.rte .gsc-search-box table tr td input,
.rte .gsc-results-wrapper-visible table tr td input {
  margin: 2px 0 0;
}
.rte .gsc-search-box table tr td img,
.rte .gsc-results-wrapper-visible table tr td img {
  width: auto;
}
/*
 * Button Mixin
 */
/* v1.0.3 */
/* Core RS CSS file. 95% of time you shouldn't change anything here. */
.royalSlider {
  width: 600px;
  height: 400px;
  position: relative;
  direction: ltr;
}
.royalSlider > * {
  float: left;
}
.rsImg {
  width: 100%;
}
.rsWebkit3d .rsSlide,
.rsWebkit3d .rsContainer,
.rsWebkit3d .rsThumbs,
.rsWebkit3d .rsPreloader,
.rsWebkit3d img,
.rsWebkit3d .rsOverflow,
.rsWebkit3d .rsBtnCenterer,
.rsWebkit3d .rsAbsoluteEl {
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0);
}
.rsFade.rsWebkit3d .rsSlide,
.rsFade.rsWebkit3d img,
.rsFade.rsWebkit3d .rsContainer {
  -webkit-transform: none;
}
.rsOverflow {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  float: left;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.rsVisibleNearbyWrap {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  left: 0;
  top: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.rsVisibleNearbyWrap .rsOverflow {
  position: absolute;
  left: 0;
  top: 0;
}
.rsContainer {
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.rsArrow,
.rsThumbsArrow {
  cursor: pointer;
}
.rsThumb {
  float: left;
  position: relative;
}
.rsArrow,
.rsNav,
.rsThumbsArrow {
  opacity: 1;
  -webkit-transition: opacity 0.3s linear;
  -moz-transition: opacity 0.3s linear;
  -o-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
}
.rsHidden {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: visibility 0s linear 0.3s, opacity 0.3s linear;
  -moz-transition: visibility 0s linear 0.3s, opacity 0.3s linear;
  -o-transition: visibility 0s linear 0.3s, opacity 0.3s linear;
  transition: visibility 0s linear 0.3s, opacity 0.3s linear;
}
.rsGCaption {
  width: 100%;
  float: left;
  text-align: center;
}
/* Fullscreen options, very important ^^ */
.royalSlider.rsFullscreen {
  position: fixed !important;
  height: auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 2147483647 !important;
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  right: 0 !important;
}
.royalSlider .rsSlide.rsFakePreloader {
  opacity: 1 !important;
  -webkit-transition: 0s;
  -moz-transition: 0s;
  -o-transition: 0s;
  transition: 0s;
  display: none;
}
.rsSlide {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  overflow: hidden;
  height: 100%;
  width: 100%;
}
.royalSlider.rsAutoHeight,
.rsAutoHeight .rsSlide {
  height: auto;
}
.rsContent {
  width: 100%;
  height: 100%;
  position: relative;
}
.rsPreloader {
  position: absolute;
  z-index: 0;
}
.rsNav {
  -moz-user-select: -moz-none;
  -webkit-user-select: none;
  user-select: none;
}
.rsNavItem {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.25);
}
.rsThumbs {
  cursor: pointer;
  position: relative;
  overflow: hidden;
  float: left;
  z-index: 22;
}
.rsTabs {
  float: left;
  background: none !important;
}
.rsTabs,
.rsThumbs {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.rsVideoContainer {
  /*left: 0;
	top: 0;
	position: absolute;*/
  /*width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	float: left;*/
  width: auto;
  height: auto;
  line-height: 0;
  position: relative;
}
.rsVideoFrameHolder {
  position: absolute;
  left: 0;
  top: 0;
  background: #141414;
  opacity: 0;
  -webkit-transition: 0.3s;
}
.rsVideoFrameHolder.rsVideoActive {
  opacity: 1;
}
.rsVideoContainer iframe,
.rsVideoContainer video,
.rsVideoContainer embed,
.rsVideoContainer .rsVideoObj {
  position: absolute;
  z-index: 50;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
/* ios controls over video bug, shifting video */
.rsVideoContainer.rsIOSVideo iframe,
.rsVideoContainer.rsIOSVideo video,
.rsVideoContainer.rsIOSVideo embed {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 44px;
}
.rsABlock {
  left: 0;
  top: 0;
  position: absolute;
  z-index: 15;
  -webkit-backface-visibility: hidden;
}
.grab-cursor {
  cursor: move;
}
.grabbing-cursor {
  cursor: move;
}
.rsNoDrag {
  cursor: auto;
}
.rsLink {
  left: 0;
  top: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 20;
  background: url('/YMCA/media/skin/img/royalslider/blank.gif');
  -webkit-backface-visibility: hidden;
}
/******************************
*
*  RoyalSlider Default Skin 
*
*    1. Arrows 
*    2. Bullets
*    3. Thumbnails
*    4. Tabs
*    5. Fullscreen button
*    6. Play/close video button
*    7. Preloader
*    8. Caption
*    
*  Sprite: '@{mlp}/img/royalslider/rs-default.png'
*  Feel free to edit anything
*  If you don't some part - just delete it
* 
******************************/
/* Background */
.rsDefault,
.rsDefault .rsOverflow,
.rsDefault .rsSlide,
.rsDefault .rsVideoFrameHolder,
.rsDefault .rsThumbs {
  background: #000;
  color: #4d4d4d;
}
/***************
*
*  1. Arrows
*
****************/
.rsDefault .rsArrow {
  height: 100%;
  width: 44px;
  position: absolute;
  display: block;
  cursor: pointer;
  z-index: 21;
}
.rsDefault.rsVer .rsArrow {
  width: 100%;
  height: 44px;
}
.rsDefault.rsVer .rsArrowLeft {
  top: 0;
  left: 0;
}
.rsDefault.rsVer .rsArrowRight {
  bottom: 0;
  left: 0;
}
.rsDefault.rsHor .rsArrowLeft {
  left: 0;
  top: 0;
}
.rsDefault.rsHor .rsArrowRight {
  right: 0;
  top: 0;
}
.rsDefault .rsArrowIcn {
  width: 32px;
  height: 32px;
  top: 50%;
  left: 50%;
  margin-top: -16px;
  margin-left: -16px;
  position: absolute;
  cursor: pointer;
  background: url('/YMCA/media/skin/img/royalslider/rs-default.png');
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  *background-color: #000;
  border-radius: 2px;
}
.rsDefault .rsArrowIcn:hover {
  background-color: rgba(0, 0, 0, 0.9);
}
.rsDefault.rsHor .rsArrowLeft .rsArrowIcn {
  background-position: -64px -32px;
}
.rsDefault.rsHor .rsArrowRight .rsArrowIcn {
  background-position: -64px -64px;
}
.rsDefault.rsVer .rsArrowLeft .rsArrowIcn {
  background-position: -96px -32px;
}
.rsDefault.rsVer .rsArrowRight .rsArrowIcn {
  background-position: -96px -64px;
}
.rsDefault .rsArrowDisabled .rsArrowIcn {
  opacity: 0.2;
  filter: alpha(opacity=20);
  *display: none;
}
/***************
*
*  2. Bullets
*
****************/
.rsDefault .rsBullets {
  position: absolute;
  z-index: 35;
  left: 0;
  bottom: 0;
  width: 90%;
  margin: 0 auto;
  background: #000;
  background: rgba(0, 0, 0, 0.75);
  text-align: center;
  line-height: 8px;
  overflow: hidden;
}
.rsDefault .rsBullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  padding: 6px 5px 6px;
}
.rsDefault .rsBullet span {
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #777;
  background: rgba(255, 255, 255, 0.5);
}
.rsDefault .rsBullet.rsNavSelected span {
  background-color: #FFF;
}
/***************
*
*  3. Thumbnails
*
****************/
.rsDefault .rsThumbsHor {
  width: 100%;
  height: 72px;
}
.rsDefault .rsThumbsVer {
  width: 96px;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
}
.rsDefault.rsWithThumbsHor .rsThumbsContainer {
  position: relative;
  height: 100%;
}
.rsDefault.rsWithThumbsVer .rsThumbsContainer {
  position: relative;
  width: 100%;
}
.rsDefault .rsThumb {
  float: left;
  overflow: hidden;
  width: 96px;
  height: 72px;
}
.rsDefault .rsThumb img {
  width: 100%;
  height: 100%;
}
.rsDefault .rsThumb.rsNavSelected {
  background: #02874a;
}
.rsDefault .rsThumb.rsNavSelected img {
  opacity: 0.3;
  filter: alpha(opacity=30);
}
.rsDefault .rsTmb {
  display: block;
}
/* Thumbnails with text */
.rsDefault .rsTmb h5 {
  font-size: 16px;
  margin: 0;
  padding: 0;
  line-height: 20px;
  color: #FFF;
}
.rsDefault .rsTmb span {
  color: #DDD;
  margin: 0;
  padding: 0;
  font-size: 13px;
  line-height: 18px;
}
/* Thumbnails arrow icons */
.rsDefault .rsThumbsArrow {
  height: 100%;
  width: 20px;
  position: absolute;
  display: block;
  cursor: pointer;
  z-index: 21;
  background: #000;
  background: rgba(0, 0, 0, 0.75);
}
.rsDefault .rsThumbsArrow:hover {
  background: rgba(0, 0, 0, 0.9);
}
.rsDefault.rsWithThumbsVer .rsThumbsArrow {
  width: 100%;
  height: 20px;
}
.rsDefault.rsWithThumbsVer .rsThumbsArrowLeft {
  top: 0;
  left: 0;
}
.rsDefault.rsWithThumbsVer .rsThumbsArrowRight {
  bottom: 0;
  left: 0;
}
.rsDefault.rsWithThumbsHor .rsThumbsArrowLeft {
  left: 0;
  top: 0;
}
.rsDefault.rsWithThumbsHor .rsThumbsArrowRight {
  right: 0;
  top: 0;
}
.rsDefault .rsThumbsArrowIcn {
  width: 16px;
  height: 16px;
  top: 50%;
  left: 50%;
  margin-top: -8px;
  margin-left: -8px;
  position: absolute;
  cursor: pointer;
  background: url('/YMCA/media/skin/img/royalslider/rs-default.png');
}
.rsDefault.rsWithThumbsHor .rsThumbsArrowLeft .rsThumbsArrowIcn {
  background-position: -128px -32px;
}
.rsDefault.rsWithThumbsHor .rsThumbsArrowRight .rsThumbsArrowIcn {
  background-position: -128px -48px;
}
.rsDefault.rsWithThumbsVer .rsThumbsArrowLeft .rsThumbsArrowIcn {
  background-position: -144px -32px;
}
.rsDefault.rsWithThumbsVer .rsThumbsArrowRight .rsThumbsArrowIcn {
  background-position: -144px -48px;
}
.rsDefault .rsThumbsArrowDisabled {
  display: none !important;
}
/* Thumbnails resizing on smaller screens */
@media screen and (min-width: 0px) and (max-width: 800px) {
  .rsDefault .rsThumb {
    width: 59px;
    height: 44px;
  }
  .rsDefault .rsThumbsHor {
    height: 44px;
  }
  .rsDefault .rsThumbsVer {
    width: 59px;
  }
}
/***************
*
*  4. Tabs
*
****************/
.rsDefault .rsTabs {
  width: 100%;
  height: auto;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
  padding-top: 12px;
  position: relative;
}
.rsDefault .rsTab {
  display: inline-block;
  cursor: pointer;
  text-align: center;
  height: auto;
  width: auto;
  color: #333;
  padding: 5px 13px 6px;
  min-width: 72px;
  border: 1px solid #D9D9DD;
  border-right: 1px solid #f5f5f5;
  text-decoration: none;
  background-color: #FFF;
  background-image: -webkit-linear-gradient(top, #fefefe, #f4f4f4);
  background-image: -moz-linear-gradient(top, #fefefe, #f4f4f4);
  background-image: linear-gradient(to bottom, #fefefe, #f4f4f4);
  -webkit-box-shadow: inset 1px 0 0 #fff;
  box-shadow: inset 1px 0 0 #fff;
  *display: inline;
  *zoom: 1;
}
.rsDefault .rsTab:first-child {
  -webkit-border-top-left-radius: 4px;
  border-top-left-radius: 4px;
  -webkit-border-bottom-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.rsDefault .rsTab:last-child {
  -webkit-border-top-right-radius: 4px;
  border-top-right-radius: 4px;
  -webkit-border-bottom-right-radius: 4px;
  border-bottom-right-radius: 4px;
  border-right: 1px solid #cfcfcf;
}
.rsDefault .rsTab:active {
  border: 1px solid #D9D9DD;
  background-color: #f4f4f4;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) inset;
}
.rsDefault .rsTab.rsNavSelected {
  color: #FFF;
  border: 1px solid #999;
  text-shadow: 1px 1px #838383;
  box-shadow: 0 1px 9px rgba(102, 102, 102, 0.65) inset;
  background: #ACACAC;
  background-image: -webkit-linear-gradient(top, #acacac, #bbbbbb);
  background-image: -moz-llinear-gradient(top, #acacac, #bbbbbb);
  background-image: linear-gradient(to bottom, #acacac, #bbbbbb);
}
/***************
*
*  5. Fullscreen button
*
****************/
.rsDefault .rsFullscreenBtn {
  right: 20px;
  bottom: 10px;
  width: 25px;
  height: 25px;
  z-index: 40;
  display: block;
  position: absolute;
  cursor: pointer;
}
.rsDefault .rsFullscreenIcn {
  display: block;
  margin: 6px;
  width: 25px;
  height: 25px;
  background: url('/YMCA/media/skin/img/royalslider/rs-default.png') -3px -3px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 2px;
}
.rsDefault .rsFullscreenIcn:hover {
  background-color: rgba(0, 0, 0, 0.9);
}
/***************
*
*  6. Play/close video button
*
****************/
.rsDefault .rsPlayBtn {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.3);
  width: 64px;
  height: 64px;
  margin-left: -32px;
  margin-top: -32px;
  cursor: pointer;
}
.rsDefault .rsPlayBtnIcon {
  width: 64px;
  display: block;
  height: 64px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  transition: 0.3s;
  background: url('/YMCA/media/skin/img/royalslider/rs-default.png') no-repeat 0 -32px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  *background-color: #000;
}
.rsDefault .rsPlayBtn:hover .rsPlayBtnIcon {
  background-color: rgba(0, 0, 0, 0.9);
}
.rsDefault .rsBtnCenterer {
  position: absolute;
  left: 50%;
  top: 50%;
}
.rsDefault .rsCloseVideoBtn {
  right: 0;
  top: 0;
  width: 44px;
  height: 44px;
  z-index: 500;
  position: absolute;
  cursor: pointer;
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0);
}
.rsDefault .rsCloseVideoBtn.rsiOSBtn {
  top: -38px;
  right: -6px;
}
.rsDefault .rsCloseVideoIcn {
  margin: 6px;
  width: 32px;
  height: 32px;
  background: url('/YMCA/media/skin/img/royalslider/rs-default.png') -64px 0;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  *background-color: #000;
}
.rsDefault .rsCloseVideoIcn:hover {
  background-color: rgba(0, 0, 0, 0.9);
}
/***************
*
*  7. Preloader
*
****************/
.rsDefault .rsPreloader {
  width: 20px;
  height: 20px;
  background-image: url('/YMCA/media/skin/img/royalslider/preloader-white.gif');
  left: 50%;
  top: 50%;
  margin-left: -10px;
  margin-top: -10px;
}
/***************
*
*  8. Global caption
*
****************/
.rsDefault .rsGCaption {
  position: absolute;
  float: none;
  bottom: 6px;
  left: 6px;
  text-align: left;
  background: #000000;
  background: rgba(0, 0, 0, 0.75);
  color: #FFF;
  padding: 2px 8px;
  width: auto;
  font-size: 12px;
  border-radius: 2px;
}
/**
 * TSCA Mods
 */
.rsDefault .rsBullets {
  background: none;
  bottom: 10px;
  height: 17px;
}
.rsDefault .rsBullets .rsBullet {
  margin-right: 5px;
  padding: 0;
}
.rsDefault .rsBullets .rsBullet.rsNavSelected {
  border: 1px #ffffff solid;
  padding: 6px;
  border-radius: 50%;
  position: relative;
  top: 3px;
}
.rsDefault .rsBullets .rsBullet.rsNavSelected span {
  -webkit-transition: background 0.3s linear;
  -o-transition: background 0.3s linear;
  transition: background 0.3s linear;
  position: relative;
  top: -4px;
  left: -4px;
}
.royalSlider > .rsImg {
  visibility: hidden;
}
.rsWebkit3d .rsSlide {
  -webkit-transform: none;
}
.rsWebkit3d img {
  -webkit-transform: translateZ(0);
}
.mediaBar {
  width: 100%;
  height: auto;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  position: relative;
}
.mediaBar .slider {
  background-color: transparent;
  position: relative;
  width: 100%;
  color: #4d4d4d;
}
.mediaBar .slider img {
  max-width: none;
  margin: 0;
}
.mediaBar .slider .slide .item a:hover {
  opacity: 0.8;
}
.mediaBar .slider .rsOverflow,
.mediaBar .slider .rsSlide {
  background-color: transparent;
}
.plusOneForm {
  margin-bottom: 25px;
}
.plusOneForm label,
.plusOneForm .EditingFormLabel {
  max-width: 630px;
}
.plusOneForm .phoneGroup {
  width: 450px;
}
@media only screen and (max-width: 767px) {
  .plusOneForm .phoneGroup {
    width: 100%;
  }
}
.plusOneForm .phoneGroup > div {
  display: inline-block;
}
.plusOneForm .phoneGroup > div:first-of-type {
  width: calc(100% - 165px);
}
@media only screen and (max-width: 400px) {
  .plusOneForm .phoneGroup > div:first-of-type {
    width: 100%;
  }
}
.plusOneForm .phoneGroup > div:last-of-type {
  width: 160px;
}
.plusOneForm .phoneGroup > div:last-of-type label {
  margin-top: 10px;
}
.plusOneForm .phoneGroup > div input,
.plusOneForm .phoneGroup > div select {
  width: 100%;
}
.plusOneForm .phoneGroup .EditingFormErrorLabel {
  float: left;
}
.plusOneForm .checkbox-list-horizontal,
.plusOneForm .radio-list-horizontal {
  margin-top: 10px;
}
.plusOneForm .checkbox-list-horizontal label,
.plusOneForm .radio-list-horizontal label {
  margin-bottom: 5px;
}
.plusOneForm .radiolist-horizontal .checkbox-list-horizontal input,
.plusOneForm .checklist-horizontal .checkbox-list-horizontal input,
.plusOneForm .radiolist-horizontal .radio-list-horizontal input,
.plusOneForm .checklist-horizontal .radio-list-horizontal input {
  float: none;
  display: inline-block;
  height: auto;
  margin-right: 5px;
}
.plusOneForm .radiolist-horizontal .checkbox-list-horizontal label,
.plusOneForm .checklist-horizontal .checkbox-list-horizontal label,
.plusOneForm .radiolist-horizontal .radio-list-horizontal label,
.plusOneForm .checklist-horizontal .radio-list-horizontal label {
  margin: 0 20px 5px 0;
  display: inline-block;
}
@media only screen and (max-width: 400px) {
  .plusOneForm .radiolist-horizontal .checkbox-list-horizontal label,
  .plusOneForm .checklist-horizontal .checkbox-list-horizontal label,
  .plusOneForm .radiolist-horizontal .radio-list-horizontal label,
  .plusOneForm .checklist-horizontal .radio-list-horizontal label {
    margin: 0 10px 5px 0;
  }
}
.plusOneForm .checkbox-list-horizontal label {
  margin-bottom: 5px;
}
.plusOneForm div.checkbox {
  position: relative;
}
.plusOneForm div.checkbox span.checkbox {
  position: absolute;
  left: 0px;
  margin: 0;
}
.plusOneForm div.checkbox > label {
  padding-left: 20px;
}
.plusOneForm span.bold {
  font-weight: 600;
}
.plusOneForm ul {
  max-width: 630px;
  margin-top: 13px;
}
.plusOneForm ul li {
  padding-bottom: 8px;
  line-height: 24px;
}
section.form.large {
  margin-top: -50px;
}
section.form.large .plusOneForm {
  background: #dbdbdb;
}
section.form.large .plusOneForm fieldset {
  max-width: 630px;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  section.form.large .plusOneForm fieldset {
    max-width: 100%;
    min-width: 100%;
  }
}
section.form.large .plusOneForm fieldset input[type="text"],
section.form.large .plusOneForm fieldset textarea,
section.form.large .plusOneForm fieldset select,
section.form.large .plusOneForm fieldset .EditingFormLabel {
  width: 630px;
}
@media screen and (max-width: 767px) {
  section.form.large .plusOneForm fieldset input[type="text"],
  section.form.large .plusOneForm fieldset textarea,
  section.form.large .plusOneForm fieldset select,
  section.form.large .plusOneForm fieldset .EditingFormLabel {
    width: 100%;
  }
}
section.form.large .plusOneForm fieldset div input[type=text].day,
section.form.large .plusOneForm fieldset div input[type=text].month,
section.form.large .plusOneForm fieldset div input[type=text].year {
  width: 206px;
}
@media only screen and (max-width: 767px) {
  section.form.large .plusOneForm fieldset div input[type=text].day,
  section.form.large .plusOneForm fieldset div input[type=text].month,
  section.form.large .plusOneForm fieldset div input[type=text].year {
    width: 100%;
  }
}
section.form.large .plusOneForm fieldset .phoneGroup {
  width: 630px;
}
@media only screen and (max-width: 767px) {
  section.form.large .plusOneForm fieldset .phoneGroup {
    width: 100%;
  }
}
section.form.large .plusOneForm fieldset .phoneGroup > div {
  display: inline-block;
}
section.form.large .plusOneForm fieldset .phoneGroup > div:first-of-type {
  width: calc(100% - 165px);
}
@media only screen and (max-width: 400px) {
  section.form.large .plusOneForm fieldset .phoneGroup > div:first-of-type {
    width: 100%;
  }
}
section.form.large .plusOneForm fieldset .phoneGroup > div:last-of-type {
  width: 160px;
}
section.form.large .plusOneForm fieldset .phoneGroup > div:last-of-type label {
  margin-top: 10px;
}
section.form.large .plusOneForm fieldset .phoneGroup > div input,
section.form.large .plusOneForm fieldset .phoneGroup > div select {
  width: 100%;
}
section.form.large .plusOneForm fieldset .phoneGroup .EditingFormErrorLabel {
  float: left;
}
section.form.large div.submit {
  width: 630px;
  margin: 0 auto 50px;
}
@media screen and (max-width: 767px) {
  section.form.large div.submit {
    width: 100%;
  }
}
section.form.large .EditingFormErrorLabel,
section.form.large .ErrorLabel {
  color: #cc0130;
  font-size: 14px;
  margin-top: 5px;
}
@media screen and (max-width: 767px) {
  .container {
    min-height: 100%;
    margin: 0 auto -452px;
  }
  .container.small {
    margin-bottom: -220px;
  }
  footer,
  .push {
    height: 452px;
  }
  footer.small,
  .push.small {
    height: 220px;
  }
  .rte ul.pdf li {
    width: 100%;
  }
  .videoWrapper {
    position: relative;
    padding-bottom: 56.25%;
    /* 16:9 */
    padding-top: 25px;
    height: 0;
  }
  .videoWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .wrapper:not(.large) {
    padding-left: 10px;
    padding-right: 10px;
  }
  h1.text {
    font-size: 32px;
  }
  h1.text .label {
    left: 10px;
    line-height: 35px;
  }
  nav.menu {
    z-index: 70;
    display: none;
    width: 100%;
    position: absolute;
    top: 58px;
    right: 0;
    border-top: 1px solid rgba(202, 202, 202, 0.28);
    -webkit-box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.5);
    box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.5);
  }
  nav.menu.on {
    display: block;
  }
  nav.menu .top,
  nav.menu .bottom,
  nav.menu .language {
    display: block;
  }
  nav.menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  nav.menu ul li {
    position: relative;
    background: #fff;
    /*&:hover {
				background-color:@white;
			}*/
  }
  nav.menu ul li:last-child {
    border-bottom: none;
  }
  nav.menu ul li a {
    min-height: 45px;
    padding: 12px 0 15px 51px;
    display: block;
    color: #000;
    font-size: 16px;
    text-decoration: none;
  }
  nav.menu ul li a img {
    position: absolute;
    left: 16px;
  }
  nav.menu ul li > span {
    display: block;
    width: 100%;
    height: 45px;
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
  }
  nav.menu ul.bottom li {
    border-bottom: 1px rgba(208, 208, 208, 0.28) solid;
  }
  nav.menu ul.bottom li a {
    padding: 12px 0 15px 15px;
    color: #a8052b;
    text-transform: uppercase;
  }
  nav.menu ul.language span {
    position: inherit;
    background-color: transparent;
  }
  nav.menu ul.language span:hover {
    background-color: inherit;
  }
  nav.menu ul.language span a {
    padding: 12px 0 15px 15px;
    font-size: 18px;
    /*&:hover{
						color:@red;
					}*/
  }
  nav.mobile {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 50px;
    background: #ffffff;
  }
  nav.mobile a {
    display: block;
    height: 100%;
    text-align: center;
    width: 50px;
    text-decoration: none;
    position: relative;
  }
  nav.mobile a:first-child {
    float: left;
  }
  nav.mobile a:first-child span.icon {
    position: relative;
    font-weight: 600;
  }
  nav.mobile a.button-menu {
    display: block;
    z-index: 13;
    right: 1.5%;
    top: 4px;
  }
  nav.mobile a:last-child {
    float: right;
    font-size: 18px;
  }
  nav.mobile a:last-child span.icon {
    position: relative;
    top: 9px;
  }
  nav.mobile a.globe {
    font-size: 28px;
  }
  nav.mobile a:hover {
    text-decoration: none;
  }
  nav.mobile a span.icon img {
    position: relative;
    margin-left: 0;
    height: 45px;
    max-height: 45px;
    top: -10px;
  }
  nav.mobile a span.label {
    position: absolute;
    bottom: 6px;
    left: 0;
    font-size: 10px;
    text-align: center;
    width: 100%;
    font-weight: 600;
  }
  div.overlay {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: #040707;
    opacity: 0;
    visibility: hidden;
    z-index: 500;
    text-align: right;
    -webkit-transition: opacity visibility;
    transition: opacity visibility;
    -webkit-transition-duration: 500ms;
    transition-duration: 500ms;
    display: none;
  }
  div.overlay.active {
    opacity: 0.85;
    visibility: visible;
    display: block;
    z-index: 10;
  }
  aside.sidebar {
    width: 100%;
  }
  aside.sidebar .sideNav {
    display: none;
  }
  aside.sidebar.news {
    display: block;
    width: 100%;
    padding: 0;
  }
  aside.sidebar.news ul li {
    cursor: pointer;
    float: left;
  }
  aside.sidebar.news ul li:not(:last-child) {
    border-right: 1px solid #bebebe;
  }
  aside.sidebar.news ul li a {
    cursor: pointer;
    padding: 10px 20px;
  }
  section.content {
    width: 100%;
    /*div.activity, section.activity.single{
		margin-top: 0;
	}*/
  }
  section.content .rte .tiles.promo .tile .image img {
    width: 100%;
    height: auto;
  }
  section.content .rte .break ul.pdf {
    padding-left: 0;
    padding-right: 0;
  }
  section.content .rte ul.pdf {
    padding-left: 0;
    padding-right: 0;
  }
  section.content .break p img {
    width: 100%;
  }
  section.content section.blogs {
    padding-bottom: 0;
  }
  section.content .centres:last-of-type {
    margin-bottom: 0;
  }
  section.content.full .filterbox {
    margin-bottom: 0;
  }
  section.content.full .filterbox .content {
    padding: 10px 10px 15px;
  }
  section.content.full .filterbox .content .cta-block {
    margin-left: 32px;
  }
  section.content.full .filterbox .content .cta-block #aTousCentres span {
    padding-left: 4%;
  }
  section.content.full .filterbox .content .cta-block #aTousCentres span.headline {
    padding-left: 0;
  }
  section.content.full .filterbox .content span.icon {
    width: 35px;
    height: 35px;
    font-size: 24px;
    margin-right: 10px;
  }
  section.content.full .filterbox .content p {
    padding: 8px 0px 0px 45px;
    margin: 0;
    font-weight: 600;
  }
  section.content.full .filterbox .content a.cta {
    width: 44%;
  }
  section.content.full .filterbox .content a.cta span {
    display: block;
    font-size: 12px;
  }
  section.content.full .filterbox .content a.cta span.headline {
    font-size: 24px;
    text-align: center;
  }
  section.content.full .filterbox .content a.cta.white span.headline {
    padding-bottom: 20px;
  }
  section.content.full .filterbox .content .content.centre {
    padding-left: 0;
  }
  section.content.full .filterbox .content .btn {
    margin: 10px 0 10px 45px;
  }
  section.content.full.schedule .filterbox .content .content.categorie .col {
    width: auto;
  }
  section.content.full h2:first-child {
    padding-left: 0px;
  }
  section.content .rte h2,
  section.content .rte h3,
  section.content .rte ol {
    padding: 15px 10px;
  }
  section.content .rte h2.clear,
  section.content .rte h3.clear,
  section.content .rte ol.clear {
    padding: 0 15px 15px 0;
  }
  section.content .rte h2.image,
  section.content .rte h3.image,
  section.content .rte ol.image {
    padding: 0 0px 15px 0px;
  }
  section.content .rte h2.item,
  section.content .rte h3.item,
  section.content .rte ol.item {
    padding-left: 35px;
  }
  section.content .rte ol:not(.clear) {
    padding-left: 42px;
  }
  section.content .rte h4 {
    padding: 7px 10px 5px;
  }
  section.content .rte h4.clear {
    padding-left: 0;
  }
  section.content .rte ul.roman {
    padding: 0 85px 15px 40px;
  }
  section.content .rte .promo a.tile {
    width: 100%;
  }
  section.content .rte .promo a.tile:first-of-type {
    height: auto;
  }
  section.content .tiles .tile {
    width: 47.4%;
    margin-right: 5%;
  }
  section.content .tiles .tile:nth-child(2n) {
    margin-right: 0;
  }
  section.content .tiles .tile img {
    width: 100%;
  }
  section.content section.blogs a.blog {
    width: 100%;
  }
  section.content section.blogs a.blog span.angle {
    left: -38px;
  }
  section.content section.blogs div.center {
    text-align: center;
    width: auto;
  }
  section.content section.nouvelles a.blog span.text {
    width: 100%;
  }
  section.content section.activity.single .description ul.pipe li:not(:first-child) {
    padding-left: 15px;
    position: relative;
  }
  section.content section.activity .col {
    width: 100%;
  }
  section.content section.activity .col.third {
    width: 100%;
  }
  section.content a.accordion.black {
    text-overflow: ellipsis;
    min-width: 200px;
    white-space: nowrap;
    overflow: hidden;
    padding-right: 31px;
  }
  section.content .horairefilter .content {
    width: 100%;
  }
  section.content .horairefilter .content.large label {
    width: 217px;
  }
  section.content .horairefilter .content.large .row div {
    float: none;
  }
  section.content .horairefilter .content .row div {
    display: block;
    float: left;
    margin-right: 6%;
  }
  section.content fieldset {
    min-width: 100%;
  }
  section.content fieldset input[type=text],
  section.content fieldset fieldset textarea,
  section.content fieldset .checkbox {
    width: 100%;
  }
  section.content fieldset span.checkbox {
    width: auto;
  }
  section.content fieldset textarea {
    min-width: 100%;
    max-width: 100%;
  }
  section.content fieldset .btn {
    padding: 10px 20px;
  }
  fieldset input[type=text],
  fieldset textarea,
  fieldset select {
    width: 100%;
  }
  fieldset input[type=text] div input[type=text].day,
  fieldset textarea div input[type=text].day,
  fieldset select div input[type=text].day,
  fieldset input[type=text] div input[type=text].month,
  fieldset textarea div input[type=text].month,
  fieldset select div input[type=text].month,
  fieldset input[type=text] div input[type=text].year,
  fieldset textarea div input[type=text].year,
  fieldset select div input[type=text].year {
    width: 32%;
  }
  a.accordion {
    background: #cc0130;
    position: relative;
    height: auto;
    line-height: 29px;
    display: block;
    width: 100%;
    padding-left: 9px;
    font-size: 18px;
    margin-top: 15px;
    color: #ffffff;
    padding: 11px 29px 11px 15px;
  }
  a.accordion:before {
    top: 18px;
  }
  a.accordion.open:before {
    right: 20px;
  }
  a.accordion:hover:before {
    right: 20px;
  }
  a.accordion.open:before {
    top: 18px;
  }
  /*outside section.content*/
  section.activity {
    /*h3{
		margin: 0 0 20px;
	}*/
  }
  section.activity.single .description {
    float: none;
  }
  section.activity.single .description ul.pipe li:not(:first-child) {
    padding-left: 15px;
    position: relative;
  }
  section.activity.single .image {
    float: left;
    width: 100px;
    height: 100px;
    margin-top: 15px;
  }
  section.activity .col {
    width: 100%;
  }
  section.activity .col.third {
    width: 100%;
  }
  section.horaire.centres .content {
    width: 100%;
    padding: 5px 10px;
  }
  section.horaire.centres .content table td {
    padding: 10px 5px 0 0;
  }
  section.horaire.centres .content table .level {
    display: none;
  }
  section.horaire .content header a.tab {
    width: 60%;
  }
  section.horaire .content table td {
    font-size: 14px;
  }
  header.main {
    position: relative;
    width: 100%;
    height: 60px;
    background: #ffffff;
    z-index: 12;
  }
  header.main .wrapper a.logo {
    padding-top: 3px;
  }
  header.main .wrapper a.logo img {
    -webkit-transform: scale(0.65, 0.65);
    -ms-transform: scale(0.65, 0.65);
    -o-transform: scale(0.65, 0.65);
    transform: scale(0.65, 0.65);
    -webkit-transform-origin: 0 0 0;
    -moz-transform-origin: 0 0 0;
    -ms-transform-origin: 0 0 0;
    transform-origin: 0 0 0;
    position: relative;
    left: -10px;
  }
  header.main .wrapper a.logo > span {
    position: relative;
    font-size: 10px;
    left: -39px;
    margin-top: 6px;
  }
  header.main .wrapper nav {
    display: none;
  }
  /*header.content{
	&.wrapper.large{
		h1{
			&.activity-search{
				span{
					&.label{
						left: 2.3%;
					}
				}
			}
			span{
				&.label{
					top: 27px;
					left: 10px;
					font-size: 40px;
					margin: 0 auto;
					max-width: 400px;
				}
			}
		}
	}
}*/
  header.content.wrapper.large h1.activity-search span.label {
    left: 2.3%;
  }
  header.content.wrapper.large h1 span.label {
    left: 2.3%;
    bottom: 10px;
    font-size: 37px;
    line-height: 45px;
  }
  header.top .wrapper {
    padding-left: 2.3%;
  }
  h1 .label {
    left: 2.3%;
  }
  nav.top {
    display: none;
  }
  .centres .col {
    width: 100%;
  }
  .centres .col .centre {
    margin-bottom: 15px;
  }
  .centres .col .centre .address p.phone {
    color: #000000 !important;
  }
  section.hero div {
    height: 200px;
  }
  section.hero nav div {
    height: auto;
  }
  section.hero nav div a {
    display: block;
    width: 100%;
    padding: 10px 20px;
  }
  section.hero nav div a span.icon {
    width: 75px;
    height: 75px;
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
    display: block;
    margin: 0 auto;
  }
  section.hero nav div a span.icon:hover {
    -webkit-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
  }
  section.hero nav div a span.icon img {
    -webkit-transform: translate(-50%, -50%) scale(0.5, 0.5);
    -ms-transform: translate(-50%, -50%) scale(0.5, 0.5);
    -o-transform: translate(-50%, -50%) scale(0.5, 0.5);
    transform: translate(-50%, -50%) scale(0.5, 0.5);
  }
  section.hero nav div a span.icon img.schedule {
    margin-top: 3px;
    margin-left: 6px;
  }
  section.hero nav div a span.icon img.member {
    margin-left: 0;
    margin-top: 2px;
  }
  section.hero nav div a span.icon img.locations {
    margin-top: 4px;
  }
  section.hero nav div a span.icon img.search {
    margin-top: 1px;
  }
  section.blogs {
    padding: 20px 0;
  }
  section.blogs a.blog {
    width: 100%;
  }
  section.blogs a.blog:first-child {
    margin: 0 auto;
  }
  section.blogs a.blog:last-child {
    margin: 20px auto 0;
  }
  section.blogs a.blog span {
    /*&.overlay {
					background: rgba(255, 255, 255, 0.5);
					display: block;
				}*/
  }
  section.blogs a.blog span.angle {
    width: 66%;
  }
  section.blogs a.blog span.text {
    padding: 10px 15px 0 15px;
    width: 100%;
  }
  section.blogs a.blog span.text span.headline {
    padding-right: 237px;
    font-size: 15px;
  }
  section.blogs a.blog span.text span.date {
    right: 35%;
  }
  section.blogs a.blog.nothumbnail span.text span.headline {
    padding-right: 0;
  }
  .blogPost {
    background-color: #dbdbdb;
    clear: both;
    padding-bottom: 0px;
  }
  .blogPost .wrapper h2 {
    margin-bottom: 0;
    line-height: 35px;
    width: 94%;
    font-size: 29px;
  }
  .blogPost section.content {
    width: 100%;
  }
  .blogPost section.content section.blogs {
    background-color: transparent;
    padding: 0;
  }
  .blogPost section.content section.blogs a.blog {
    width: 100%;
    margin: 0 0 10px;
    height: 110px;
  }
  .blogPost section.content section.blogs a.blog span.headline {
    padding-right: 0;
  }
  section.pitch {
    padding: 20px 0;
  }
  section.pitch .left,
  section.pitch .right {
    float: none;
    width: 100%;
  }
  section.pitch .left {
    margin-bottom: 20px;
  }
  section.promo {
    padding: 20px 0;
  }
  section.promo .video,
  section.promo .static,
  section.promo .horizontal {
    width: 100%;
  }
  section.promo .video:first-child,
  section.promo .static:first-child,
  section.promo .horizontal:first-child,
  section.promo .video:last-child,
  section.promo .static:last-child,
  section.promo .horizontal:last-child {
    margin: 0 auto;
  }
  section.promo .video:first-child,
  section.promo .static:first-child,
  section.promo .horizontal:first-child {
    margin-bottom: 20px;
  }
  section.promo .video:last-child,
  section.promo .static:last-child,
  section.promo .horizontal:last-child {
    margin-top: 20px;
  }
  section.promo a.static {
    position: relative;
  }
  section.promo a.static span {
    z-index: 2;
  }
  section.promo a.static span.overlay {
    display: block;
    background: rgba(255, 255, 255, 0.5);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
  section.promo a.static span.content {
    width: 66%;
    padding-left: 10px;
  }
  section.promo a.static span.angle {
    width: 60%;
    left: 23%;
    transform: rotate(-20deg);
  }
  section.promo a.static span.arrow {
    left: 10px;
    font-size: 16px;
  }
  section.promo a.static span.headline {
    font-size: 24px;
  }
  section.content .rte p.small,
  section.content .rte p.footnote {
    padding-top: 15px;
    margin-bottom: 0;
  }
  section.content section.blogs .wrapper {
    padding-left: 0;
    padding-right: 0;
  }
  section.content section.blogs .wrapper > div {
    margin-top: 0;
  }
  section.content section.blogs .wrapper > div.center {
    margin-top: 20px;
  }
  section.large-promo {
    height: auto;
    margin-bottom: 24px;
    /*.gradient , .background{
		height: 100%;
	}*/
    /*.background{
		//height: 594px;
		
	}*/
  }
  section.large-promo .gradient {
    height: 100%;
  }
  section.large-promo h3 {
    margin: 10px 0 15px;
    padding: 0 0 0 20px;
  }
  section.large-promo .testimonial,
  section.large-promo .buttons {
    width: 100%;
    position: relative;
  }
  section.large-promo .testimonial {
    padding: 20px;
  }
  section.large-promo .testimonial > div {
    float: none;
    margin-top: 0;
    width: 75%;
    height: 450px;
  }
  section.large-promo .testimonial > div h4 {
    font-size: 28px;
  }
  section.large-promo .wrapper {
    height: auto;
    padding: 0;
  }
  section.large-promo .wrapper.large .wrapper {
    padding: 0;
  }
  section.large-promo .buttons {
    top: 24px;
    padding-top: 37px;
    padding-left: 15px;
    display: inline-block;
    background-color: #2a2a2a;
  }
  section.large-promo .buttons a span.text {
    width: 57%;
    font-size: 19px;
  }
  section.large-promo .buttons a:last-child {
    margin-bottom: 20px;
  }
  section.emotion .box {
    width: 296px;
    left: 13px;
  }
  .inspiration {
    padding: 0;
    /*.slider-for {
		.tile{
			width:93%;
			height: 23em;
			img{
				width: 100%;
			}
		}

		&::last-child .tile{
			margin-right: 0;
		}
	}*/
  }
  .inspiration .wrapper {
    padding: 0;
  }
  .inspiration .wrapper h2 {
    padding-left: 15px;
  }
  .inspiration .tiles .tile {
    width: 47.4%;
    margin-right: 5%;
  }
  .inspiration .tiles .tile:nth-child(2n) {
    margin-right: 0;
  }
  .inspiration .tiles .tile img {
    width: 100%;
  }
  .inspiration .tiles .slider-for .tile {
    width: 93%;
    height: 23em;
  }
  .inspiration .tiles .slider-for .tile img {
    width: 100%;
  }
  .inspiration .tiles .slider-for::last-child .tile {
    margin-right: 0;
  }
  .inspiration .tile:nth-child(2n) {
    margin-right: 0;
  }
  footer {
    padding: 23px 0;
  }
  footer nav {
    margin-bottom: 20px;
  }
  footer nav div:not(.block) {
    width: 100%;
  }
  footer nav > div {
    width: 100%;
  }
  footer nav > div a.big {
    width: 49%;
    margin-bottom: 10px;
  }
  footer nav .block {
    width: 100%;
    height: auto;
  }
  footer nav a.big:first-child {
    margin-right: 2%;
  }
  footer section.footnotes {
    margin-top: 15px;
  }
  footer section.footnotes .logos {
    width: 40%;
    bottom: 0;
    position: inherit;
  }
  footer section.footnotes .copyright,
  footer section.footnotes .logos,
  footer section.footnotes .legal {
    width: 300px;
    margin: 0 auto;
    float: none;
  }
  footer section.footnotes .copyright {
    margin-bottom: 10px;
  }
  footer section.footnotes .copyright p span.top {
    font-size: 12px;
  }
  footer section.footnotes .copyright p span.bottom {
    font-size: 10px;
  }
  footer section.footnotes .legal {
    float: none;
    width: 315px;
    clear: both;
    text-align: center;
    display: block;
    margin: 0 auto;
  }
  footer section.footnotes .legal a {
    white-space: nowrap;
  }
  footer .bottom .left,
  footer .bottom .right {
    float: none;
    width: 100%;
  }
  footer .bottom section.social {
    margin: 15px 0;
  }
  footer .bottom section.social div {
    float: none;
  }
  footer .bottom section.social div a:first-child {
    margin-left: 0;
  }
  footer .bottom div.legal {
    text-align: left;
    padding-top: 0;
  }
  .hidden-xs {
    display: none;
  }
  .hidden-lg {
    display: block;
  }
  ul.activity {
    padding: 0;
    list-style: none;
  }
  ul.activity li {
    position: relative;
    /*&:before {
			content: "◦";
			//font-size: 30px;
			width: 20px;
			height: 20px;
			position: absolute;
			top: -11px;
			left: 0;
		}*/
    /*&:hover:before {
			content: "•";
			top: -10px;
		}*/
  }
  ul.activity li:not(:last-child) {
    margin-bottom: 15px;
  }
  ul.activity li a,
  ul.activity li a:hover {
    text-decoration: none;
  }
  ul.activity li a {
    margin-left: 0px;
  }
  .trainers {
    clear: both;
  }
  .trainers .trainer {
    background: #ffffff;
    padding: 15px;
  }
  .trainers .trainer:before,
  .trainers .trainer:after {
    content: " ";
    display: table;
  }
  .trainers .trainer:after {
    clear: both;
  }
  .trainers .trainer:before,
  .trainers .trainer:after {
    content: " ";
    display: table;
  }
  .trainers .trainer:after {
    clear: both;
  }
  .trainers .trainer:not(:last-child) {
    margin-bottom: 15px;
  }
  .trainers .trainer img {
    float: left;
    max-width: 100%;
    padding-top: 15px;
  }
  .trainers .trainer .content {
    max-width: 100%;
  }
  /*
search
*/
  .gsc-wrapper .gs-webResult .gs-snippet {
    padding-right: 0;
  }
  .filterbox .tabs a {
    display: block;
    width: 33.333333%;
    text-align: center;
    float: left;
    font-size: 16px;
    color: #000000;
    min-height: 66px;
  }
  .filterbox > .content .box {
    width: 100%;
  }
  .filterbox > .content .box input[type=text] {
    width: 100%;
  }
  section.results {
    width: 100%;
  }
  .filterbox > .content .results > div span {
    padding-right: 5px;
  }
  .filterbox > .content .results > div span.spanActivity,
  .filterbox > .content .results > div span.gray {
    padding-left: 0;
  }
  /* Slick Slider */
  .slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: none;
    -webkit-tap-highlight-color: transparent;
  }
  .slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
  }
  .slick-list:focus {
    outline: none;
  }
  .slick-loading .slick-list {
    background: white url("/YMCA/media/skin/css/ajax-loader.gif") center center no-repeat;
  }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand;
  }
  .slick-slider .slick-list,
  .slick-track,
  .slick-slide,
  .slick-slide img {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  .slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    zoom: 1;
  }
  .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;
  }
  .slick-slide img {
    display: block;
    width: 100%;
  }
  .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;
  }
  /* Icons */
  .fa-angle-left:before {
    content: "\f104";
  }
  .fa-angle-right:before {
    content: "\f105";
  }
  /* Arrows */
  .slick-prev,
  .slick-next {
    display: none !important;
  }
  .slider-for {
    display: block;
  }
  /**************Responsive table******************/
  table.responsive tr td,
  table.responsive tr th {
    border-right: none;
  }
  table.responsive tbody,
  table.responsive tr,
  table.responsive th,
  table.responsive td {
    display: block;
    text-align: left;
  }
  table.responsive {
    border-left: 0;
    border-right: 0;
    display: block;
    width: 100%;
    background: none;
    /** make everything display block so it* aligns vertically*/
    /* Labeling* adding a data-title attribute to the cells* lets us add text before the content to provide* the missing context** Markup:*   <td data-title="Column Header">Content Here</td>** Display:*   Column Header: Content Here*/
  }
  table.responsive th[data-title] {
    font-weight: bold;
    font-size: 20px;
    padding-top: 6px;
    padding-bottom: 6px;
    background: #1fa4a2;
    color: #ffffff;
    padding-left: 10px;
  }
  table.responsive thead {
    display: none;
    visibility: hidden;
  }
  table.responsive td:empty {
    display: none;
  }
  table.responsive th:not([data-title]) {
    font-weight: bold;
  }
  table.responsive caption {
    display: block;
  }
  table.responsive td[data-title]:before {
    content: attr(data-title) "\00A0";
    font-size: 14px;
    font-weight: bold;
    display: block;
  }
  table.responsive.smaller-table {
    width: 100%;
  }
  table.responsive tr {
    margin: 0 0 15px 0;
    background-color: #ffffff;
  }
  table.responsive tr td {
    border-top: 1px solid rgba(202, 202, 202, 0.21);
  }
  table.responsive tr td:first-of-type {
    border: 0;
  }
  table.responsive tr:first-child {
    border-top: none;
  }
  table.responsive tr:last-child {
    margin-bottom: 0;
  }
  table.responsive tbody th {
    color: #ffffff;
  }
  .rte table tr th:first-child,
  .rte table tr td:first-child {
    padding-left: 10px;
    font-size: 16px;
    line-height: 20px;
    min-width: 80px;
  }
  .rte .local a.back {
    margin: 7px 0px 7px 5px;
  }
  .rte p:not(.clear),
  .rte ul:not(.clear),
  .rte ol:not(.clear),
  .rte h4:not(.clear),
  .rte h3:not(.clear),
  .rte h2:not(.clear),
  .rte p:not(.caption),
  .rte ul:not(.caption),
  .rte ol:not(.caption),
  .rte h4:not(.caption),
  .rte h3:not(.caption),
  .rte h2:not(.caption) {
    margin: 0;
    padding: 0 10px 15px 10px;
  }
}
@media screen and (max-width: 479px) {
  .container {
    min-height: 100%;
    margin: 0 auto -635px;
  }
  footer,
  .push {
    height: 635px;
  }
  header h1 {
    height: 200px;
  }
  header h1 span.bg {
    background-position: 55% 100%;
  }
  aside.sidebar .address section {
    width: 100%;
  }
  aside.sidebar .address section:not(.short) {
    height: auto;
  }
  h1.text {
    font-size: 31px;
  }
  section.promo a.static span.headline {
    font-size: 21px;
  }
  section.promo a.static span.details {
    position: absolute;
    font-size: 14px;
    width: 252px;
  }
  section.promo a.static span.angle {
    width: 64%;
    left: 29%;
    transform: rotate(-32deg);
    top: -28%;
  }
  section.promo a.static.white span.details {
    position: initial;
    font-size: 14px;
    width: 252px;
  }
  section.promo a.static.white span.content {
    width: 172px;
  }
  section.activity.single .image {
    float: left;
    width: 80px;
    height: 80px;
  }
  section.activity.single .image img {
    max-height: 40px;
    max-width: 50px;
  }
  section.large-promo {
    /* .background{
        height: 650px;
    }*/
  }
  section.large-promo .testimonial > div {
    width: 100%;
  }
  section.horaire .content {
    width: 100%;
  }
  section.horaire .content header {
    overflow: hidden;
  }
  section.horaire .content header a.tab {
    width: 70%;
    font-size: 14px;
    padding: 8px 0;
    line-height: 20px;
    height: 40px;
    text-align: center;
  }
  section.horaire .label {
    float: none;
    padding: 10px 10px 10px 15px;
    text-align: left;
  }
  section.horaire span.topnote {
    margin: 3px 0 5px 15px;
  }
  section.horaire.centres .content td header a.tab {
    width: 70%;
    padding-left: 25px;
  }
  section.content .rte .tiles.promo .tile {
    height: auto;
  }
  section.content .rte .tiles.promo .tile:first-of-type {
    height: auto;
  }
  section.content .rte .tiles.promo .tile .image {
    height: auto;
  }
  section.content .rte .tiles.promo .tile .image span.gradient {
    height: 98%;
  }
  section.content .rte .tiles.promo .tile .image img {
    width: 100%;
    height: auto;
  }
  section.content .rte .promo a.tile:first-of-type {
    height: 26em;
  }
  section.content .rte p img {
    width: 100%;
  }
  section.content .rte h2.clear {
    line-height: 36px;
    padding-bottom: 10px;
  }
  section.content iframe {
    width: 100%;
  }
  section.content.full .filterbox {
    margin-bottom: 0;
  }
  section.content.full .filterbox .content {
    padding: 10px 10px 15px;
  }
  section.content.full .filterbox .content span.icon {
    width: 35px;
    height: 35px;
    font-size: 24px;
    margin-right: 10px;
  }
  section.content.full .filterbox .content p {
    padding: 8px 0px 0px 45px;
    margin: 0;
    font-weight: 600;
  }
  section.content.full .filterbox .content .cta-block {
    margin-left: 0;
    padding-left: 6px;
  }
  section.content.full .filterbox .content a.cta {
    width: 100%;
    display: inline-block;
    padding: 5px 15px;
    margin-right: 0;
  }
  section.content.full .filterbox .content a.cta.before {
    color: #ffffff;
  }
  section.content.full .filterbox .content a.cta span {
    display: block;
    font-size: 12px;
  }
  section.content.full .filterbox .content a.cta span.headline {
    font-size: 24px;
    text-align: center;
  }
  section.content.full .filterbox .content a.cta.white {
    box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.4);
    background-color: #ffffff;
    margin-left: 0;
  }
  section.content.full .filterbox .content a.cta.white span.headline {
    padding-bottom: 0px;
  }
  section.content.full .filterbox .content .content input {
    margin-right: 6px;
  }
  section.content.full .filterbox .content .content .col label {
    font-size: 15px;
  }
  section.content.full .filterbox .content .content.centre {
    margin-left: 0;
    padding-left: 0;
  }
  section.content.full .filterbox .content .content.centre .col {
    float: left;
    display: block;
    position: relative;
    margin-right: 20px;
  }
  section.content.full .filterbox .content .content.centre .col div {
    padding: 10px 5px;
  }
  section.content.full .filterbox .content .content.centre .col div input {
    margin-right: 6px;
  }
  section.content.full .filterbox .content .content.horaire,
  section.content.full .filterbox .content .content.categorie,
  section.content.full .filterbox .content .content.groupe-age {
    margin: 5px 0 0 15px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.49);
    max-width: 90%;
    padding-bottom: 10px;
    /*h3{
                            margin:0;
                            padding:10px 0;
                        }*/
  }
  section.content.full .filterbox .content .content.horaire p,
  section.content.full .filterbox .content .content.categorie p,
  section.content.full .filterbox .content .content.groupe-age p {
    font-weight: 400;
    font-size: 13px;
  }
  section.content.full .filterbox .content .content.horaire div p,
  section.content.full .filterbox .content .content.categorie div p,
  section.content.full .filterbox .content .content.groupe-age div p,
  section.content.full .filterbox .content .content.horaire #AfficherCategorie p,
  section.content.full .filterbox .content .content.categorie #AfficherCategorie p,
  section.content.full .filterbox .content .content.groupe-age #AfficherCategorie p {
    padding: 10px 15px 10px;
    margin: 0;
  }
  section.content.full .filterbox .content .content.horaire .col,
  section.content.full .filterbox .content .content.categorie .col,
  section.content.full .filterbox .content .content.groupe-age .col {
    float: left;
    display: block;
    position: relative;
    margin-right: 0;
  }
  section.content.full .filterbox .content .content.horaire .col div,
  section.content.full .filterbox .content .content.categorie .col div,
  section.content.full .filterbox .content .content.groupe-age .col div {
    padding: 9px 10px 9px 26px;
  }
  section.content.full .filterbox .content .content.horaire .col div .hours label,
  section.content.full .filterbox .content .content.categorie .col div .hours label,
  section.content.full .filterbox .content .content.groupe-age .col div .hours label {
    font-size: 14px;
  }
  section.content.full .filterbox .content .content.horaire.schedule,
  section.content.full .filterbox .content .content.categorie.schedule,
  section.content.full .filterbox .content .content.groupe-age.schedule {
    margin: 5px 0 0;
    border-bottom: none;
  }
  section.content.full .filterbox .content .content.horaire.schedule .col div,
  section.content.full .filterbox .content .content.categorie.schedule .col div,
  section.content.full .filterbox .content .content.groupe-age.schedule .col div {
    padding: 9px 10px 9px 0;
  }
  section.content.full .filterbox .content .content.groupe-age {
    border: 0;
  }
  section.content.full .filterbox .content .btn {
    margin: 10px 0 10px 0px;
  }
  section.content .tiles.promo .tile:not(.no-image) p {
    display: block;
  }
  section.content .tiles a.tile:not(.no-image) p {
    display: none;
  }
  section.content .tiles .tile {
    width: 100%;
    height: auto;
  }
  section.content .tiles .tile img {
    width: 100%;
  }
  section.content .tiles .tile.small {
    height: 100px;
  }
  section.content .tiles .tile.text {
    height: 245px;
  }
  section.content .tiles .tile.text.small {
    height: 100px;
  }
  section.blogs a.blog {
    height: 167px;
  }
  section.blogs a.blog span.overlay {
    /*background: rgba(255, 255, 255, 0.8);*/
    display: block;
  }
  section.blogs a.blog span.text span.location {
    width: 167px;
  }
  section.blogs a.blog span.text span.headline {
    padding-right: 0px;
  }
  section.blogs a.blog span.text span.date {
    right: 15px;
  }
  div.inspiration {
    padding: 0 15px;
  }
  div.inspiration .wrapper h2 {
    padding-left: 0px;
  }
  div.inspiration .wrapper .tiles .tile {
    width: 100%;
  }
  div.inspiration .wrapper .tiles .tile img {
    width: 100%;
  }
  /**/
  /*.blogPost{

}*/
  .filterbox .tabs a {
    display: block;
    width: 33.333333%;
    text-align: left;
    float: left;
    font-size: 12px;
    color: #000000;
    height: 42px;
    line-height: 16px;
    padding: 6px;
    min-height: 42px;
  }
  .filterbox > .content .box {
    width: 100%;
  }
  .filterbox > .content .box input[type=text] {
    width: 100%;
  }
  .filterbox > .content .results.keywords > div span.content:first-child:not(.single) {
    padding-left: 0px;
  }
  .filterbox > .content .results:not(.keywords) header,
  .filterbox > .content #resultDetailsBlock header {
    float: none;
    margin-bottom: 15px;
  }
  .filterbox > .content .results:not(.keywords) > div,
  .filterbox > .content #resultDetailsBlock > div {
    padding-left: 0px;
  }
  .filterbox > .content .results:not(.keywords) > div strong,
  .filterbox > .content #resultDetailsBlock > div strong,
  .filterbox > .content .results:not(.keywords) > div span,
  .filterbox > .content #resultDetailsBlock > div span {
    font-size: 14px;
  }
  .filterbox > .content .results:not(.keywords) > div strong,
  .filterbox > .content #resultDetailsBlock > div strong {
    color: #4d4d4d;
    padding-right: 5px;
    font-weight: 400;
  }
  .filterbox > .content .results:not(.keywords) > div a,
  .filterbox > .content #resultDetailsBlock > div a {
    float: none;
    margin-left: 15px;
  }
  fieldset {
    display: table-cell;
  }
  fieldset div.Captcha-box {
    transform: scale(0.77);
    -webkit-transform: scale(0.77);
    transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
  }
  fieldset #Attachments-part {
    font-size: 15px;
  }
  fieldset input[type="file"] {
    max-width: 250px;
    width: 250px;
  }
  footer section.footnotes .legal {
    font-size: 13px;
  }
  /*footer {
    
    section.footnotes {
        .copyright, .logos, .legal {
            float: none;
            width: 320px;
            margin:0 auto;
        }
        
        .legal {
            text-align: center;
            
        }
    }
}*/
  footer {
    padding-top: 20px;
  }
  footer nav {
    margin-bottom: 20px;
  }
  footer nav div:not(.block) {
    width: 100%;
  }
  footer nav > div {
    width: 100%;
  }
  footer nav > div a.big {
    width: 100%;
    margin-bottom: 10px;
  }
  footer nav .block {
    width: 100%;
    height: auto;
  }
  footer nav .block a {
    float: none;
    width: 100%;
  }
  footer section.social {
    width: 294px;
    margin: 0 auto;
  }
  footer section.social div {
    float: none;
    width: 254px;
  }
  footer section.social div a {
    width: 34px;
    height: 34px;
  }
  footer section.social div a:first-child {
    margin-left: 0;
  }
  footer section.social div a img.facebook {
    top: -7px;
  }
  footer section.social div a img.twitter {
    top: 2px;
    left: -1px;
  }
  footer section.social div a img.googleplus {
    top: 7px;
    left: 1px;
  }
  footer section.social div a img.youtube {
    top: 4px;
  }
  footer section.social div a img.linkedin {
    top: 7px;
  }
  footer section.social div a img.rss,
  footer section.social div a img.FeedIcon {
    top: 7px;
  }
  footer .left .copyright {
    margin-bottom: 10px;
  }
  footer .left .copyright p span.top {
    position: relative;
    top: 2px;
    font-size: 12px;
  }
  footer .left .copyright p span.bottom {
    position: relative;
    top: 2px;
    font-size: 10px;
  }
  footer .left .copyright img {
    width: 35px;
    height: 38px;
  }
  footer section.footnotes {
    margin-top: 15px;
  }
  footer section.footnotes .copyright,
  footer section.footnotes .logos,
  footer section.footnotes .legal {
    width: 290px;
    margin: 0 auto;
    float: none;
  }
  footer section.footnotes .legal {
    text-align: center;
    font-size: 13px;
  }
  footer section.footnotes .legal a {
    white-space: nowrap;
  }
  /*
.slider-for{
    display: none;
}
.no-slide{
    display: block;
}*/
}
@media print {
  aside.sidebar,
  header.main,
  header.top,
  nav.top,
  footer {
    display: none;
  }
  h1 {
    font-weight: 400;
    font-size: 30px;
  }
  h1 .label {
    left: 20px!important;
  }
  h2 {
    font-weight: 400;
    font-size: 30px;
    line-height: 32px;
  }
  h2.subtitle {
    font-size: 19px;
  }
  h3 {
    font-size: 16px;
    font-weight: 400;
  }
  h4 {
    font-size: 14px;
  }
  p * {
    font-size: 12px;
    line-height: 17px;
  }
  aside.sidebar h3 {
    display: none;
  }
  aside.sidebar ul {
    display: none;
  }
  aside.sidebar a.btn {
    display: none;
  }
  aside.sidebar div.select {
    display: none;
  }
  aside.sidebar .address header.big {
    font-size: 12px;
  }
  aside.sidebar .address p {
    font-size: 10px;
  }
  section.hero,
  header.content {
    -webkit-print-color-adjust: exact;
  }
  section.hero nav,
  header.content nav {
    display: none;
  }
  section.hero h1 span,
  header.content h1 span,
  section.hero h1 div,
  header.content h1 div {
    -webkit-print-color-adjust: exact;
  }
  section.hero div {
    height: 270px!important;
    -webkit-print-color-adjust: exact;
  }
  section.horaire .content section > .tab strong {
    font-size: 13px;
  }
  section.horaire .content section > .tab p {
    font-size: 12px;
  }
  section.horaire .content table td {
    font-size: 13px;
  }
  .rte p:not(.clear),
  .rte ul:not(.clear),
  .rte ol:not(.clear),
  .rte h4:not(.clear),
  .rte h3:not(.clear),
  .rte h2:not(.clear),
  .rte p:not(.caption),
  .rte ul:not(.caption),
  .rte ol:not(.caption),
  .rte h4:not(.caption),
  .rte h3:not(.caption),
  .rte h2:not(.caption) {
    padding: 10px 0 10px 15px;
    margin: 0;
  }
  .rte div.grey p,
  .rte div.grey > ul,
  .rte div.grey ol,
  .rte div.grey h4,
  .rte div.grey h3,
  .rte div.grey h2 {
    padding: 0 20px 6px;
  }
  .rte p.caption + p:not(.clear),
  .rte .grey + p:not(.clear),
  .rte .clear + p:not(.clear),
  .rte .break + p:not(.clear),
  .rte .small + p:not(.clear),
  .rte .footnote + p:not(.clear),
  .rte h2 + p:not(.clear),
  .rte div + p:not(.clear) {
    padding-top: 5px;
  }
  .rte h2 {
    font-size: 28px;
  }
  .rte h4 {
    font-size: 16px;
  }
  .rte h3 {
    font-size: 16px;
  }
  .rte p,
  .rte ul,
  .rte ol {
    font-size: 12px;
    line-height: 17px;
  }
  .rte table thead th {
    font-size: 15px;
  }
  .rte table tr td {
    font-size: 13px;
  }
  section.content .rte h4 {
    padding-left: 10px!important;
  }
  table tr th {
    font-size: 14px;
  }
  table tr td {
    font-size: 13px;
  }
  .tile h5 {
    font-size: 14px;
  }
  .tile p {
    font-size: 12px;
  }
  .tile.red p {
    font-size: 13px;
  }
  a.accordion {
    background: #cc0130;
    position: relative;
    min-height: 20px;
    line-height: 55px;
    display: block;
    width: 100%;
    padding-left: 5px;
    font-size: 18px;
    margin-top: 5px;
    color: #ffffff;
  }
  section.blogs {
    margin-bottom: 155px;
  }
  section.blogs a.blog span.text {
    width: 200px;
  }
  section.blogs a.blog span.text span.headline {
    font-size: 12px;
  }
  section.blogs a.blog span.text span.location,
  section.blogs a.blog span.text span.date {
    font-size: 8px;
    max-width: 80px;
  }
  section.blogs a.blog span.angle {
    max-width: 200px!important;
    left: 0;
  }
  section.blogs a.blog.nothumbnail span .text {
    width: 100%;
  }
  section.pitch .left h3,
  section.pitch .left h4 {
    font-size: 20px;
  }
  section.pitch .right p {
    font-size: 14px;
  }
  section.pitch .right p em {
    font-size: 16px;
  }
  section.promo .video,
  section.promo .static {
    width: 48%;
    height: 300px;
    float: left;
  }
  section.promo a.static span.content {
    width: 190px!important;
    padding: 10px 0 0 15px;
  }
  section.promo a.static span.content span.headline {
    font-size: 16px;
    padding-right: 10px;
  }
  section.promo a.static span.content span.details {
    font-size: 12px;
    line-height: 0px!important;
  }
  section.promo a.static span.arrow {
    font-size: 16px;
  }
  section.promo a.static span.angle {
    width: 160px;
    -webkit-transform: rotate(-23deg);
    -ms-transform: rotate(-23deg);
    -o-transform: rotate(-23deg);
    transform: rotate(-23deg);
  }
  section.large-promo {
    padding-top: 150px;
  }
  section.large-promo h3 {
    font-size: 30px;
  }
  section.large-promo .testimonial > div {
    width: 300px;
  }
  section.large-promo .testimonial > div h4 {
    font-size: 28px;
  }
  section.large-promo .testimonial > div p {
    font-size: 14px;
  }
  section.emotion .box h4 {
    font-size: 26px;
  }
  .centres .col .centre h3 {
    font-size: 19px;
  }
  .centres .col .centre .address p:not(.phone) {
    font-size: 12px;
  }
  .centres .col .centre a.dropdow {
    font-size: 14px;
  }
  .inspiration .wrapper {
    padding: inherit!important;
  }
  section.content {
    width: 100%!important;
  }
  section.content .rte ul.arrow li:before {
    top: 0;
  }
  fieldset label,
  fieldset input[type=text],
  fieldset textarea,
  fieldset select {
    font-size: 12px!important;
  }
  fieldset {
    padding: 50px 15px 15px;
  }
  fieldset legend {
    font-size: 18px;
  }
  fieldset input[type=text] {
    height: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .container {
    min-height: 100%;
    margin: 0 auto -470px;
  }
  .container.small {
    margin-bottom: -165px;
  }
  .container.alternate {
    margin-bottom: -145px;
  }
  footer,
  .push {
    height: 470px;
  }
  footer.small,
  .push.small {
    height: 165px;
  }
  footer.alternate,
  .push.alternate {
    height: 145px;
  }
  footer.small {
    padding-top: 15px;
  }
  footer.alternate {
    padding-top: 15px;
  }
  .wrapper:not(.large) {
    padding-left: 20px;
    padding-right: 20px;
  }
  header.top .wrapper .breadcrumbs {
    margin-left: -20px;
  }
  h1 {
    /*&.activity-search{
  	.label{
  		  left: 10px;
  	}
  }*/
  }
  h1 .label {
    left: 2.3%;
  }
  h1.text .label {
    left: 2.5%;
  }
  header.main {
    position: relative;
    width: 100%;
    height: 60px;
    background: #ffffff;
    z-index: 12;
  }
  header.main .wrapper a.logo {
    padding-top: 3px;
  }
  header.main .wrapper a.logo img {
    -webkit-transform: scale(0.65, 0.65);
    -ms-transform: scale(0.65, 0.65);
    -o-transform: scale(0.65, 0.65);
    transform: scale(0.65, 0.65);
    -webkit-transform-origin: 0 0 0;
    -moz-transform-origin: 0 0 0;
    -ms-transform-origin: 0 0 0;
    transform-origin: 0 0 0;
    position: relative;
    left: -10px;
  }
  header.main .wrapper a.logo > span {
    position: relative;
    font-size: 11px;
    left: -37px;
    margin-top: 7px;
  }
  header.main .wrapper a.logo > span img {
    left: 0;
  }
  header.main .wrapper nav {
    display: none;
  }
  nav.top {
    display: none;
  }
  header.content.wrapper.large h1.activity-search span.label {
    left: 2.3%;
  }
  header.content.wrapper.large h1 span.label {
    left: 2.3%;
  }
  nav.menu {
    z-index: 70;
    width: 100%;
    position: absolute;
    top: 58px;
    right: 0;
    border-top: 1px solid rgba(202, 202, 202, 0.28);
    -webkit-box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.5);
    box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.5);
  }
  nav.menu.on {
    display: block;
  }
  nav.menu .top,
  nav.menu .bottom,
  nav.menu .language {
    display: block;
  }
  nav.menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  nav.menu ul li {
    position: relative;
    background: #fff;
  }
  nav.menu ul li:last-child {
    border-bottom: none;
  }
  nav.menu ul li a {
    min-height: 45px;
    padding: 12px 0 15px 51px;
    display: block;
    color: #000;
    font-size: 16px;
    text-decoration: none;
  }
  nav.menu ul li a img {
    position: absolute;
    left: 16px;
  }
  nav.menu ul li:hover {
    background-color: #ffffff;
  }
  nav.menu ul li > span {
    display: block;
    width: 60px;
    height: 45px;
    position: inherit;
    top: 0;
    right: 0;
    cursor: pointer;
  }
  nav.menu ul li > span a {
    padding: 12px 0 15px 15px;
  }
  nav.menu ul li > span svg {
    position: absolute;
    top: 16px;
    right: 18px;
  }
  nav.menu ul li > span svg.off {
    display: inline;
  }
  nav.menu ul li > span svg.on {
    display: none;
  }
  nav.menu ul li > span.open {
    background: #cacaca;
  }
  nav.menu ul li > span.open svg.off {
    display: none;
  }
  nav.menu ul li > span.open svg.on {
    display: inline;
  }
  nav.menu ul li > span.open:hover {
    background-color: red;
  }
  nav.menu ul li > span:hover {
    background-color: red;
  }
  nav.menu ul.bottom li {
    border-bottom: 1px rgba(208, 208, 208, 0.28) solid;
  }
  nav.menu ul.bottom li a {
    padding: 12px 0 15px 15px;
    color: #a8052b;
    text-transform: uppercase;
  }
  nav.menu ul.language span {
    position: inherit;
    background-color: transparent;
  }
  nav.menu ul.language span:hover {
    background-color: inherit;
  }
  nav.menu ul.language span a {
    padding: 12px 0 15px 15px;
    font-size: 18px;
  }
  nav.menu ul.language span a:hover {
    color: #a8052b;
  }
  nav.mobile {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 50px;
    background: #ffffff;
    text-align: center;
  }
  nav.mobile:before,
  nav.mobile:after {
    content: " ";
    display: table;
  }
  nav.mobile:after {
    clear: both;
  }
  nav.mobile:before,
  nav.mobile:after {
    content: " ";
    display: table;
  }
  nav.mobile:after {
    clear: both;
  }
  nav.mobile a.logolink {
    display: inline;
    position: absolute;
    width: 100px;
    height: 45px;
    left: 50%;
    max-width: 100px;
    max-height: 45px;
    margin-left: -55px;
  }
  nav.mobile a {
    display: block;
    height: 100%;
    text-align: center;
    width: 50px;
    text-decoration: none;
    position: relative;
  }
  nav.mobile a:first-child {
    float: left;
  }
  nav.mobile a:first-child span.icon {
    position: relative;
    top: -6px;
  }
  nav.mobile a:last-child {
    float: right;
    font-size: 18px;
  }
  nav.mobile a:last-child span.icon {
    position: relative;
    top: 9px;
  }
  nav.mobile a.button-menu {
    display: block;
    float: right;
    z-index: 13;
    right: 1.3%;
    top: 4px;
  }
  nav.mobile a.globe {
    font-size: 28px;
  }
  nav.mobile a:hover {
    text-decoration: none;
  }
  nav.mobile a span.icon img {
    position: relative;
    margin-left: 0;
    height: 45px;
    max-height: 45px;
    top: -10px;
  }
  nav.mobile a span.label {
    position: absolute;
    bottom: 6px;
    left: 0;
    font-size: 10px;
    text-align: center;
    width: 100%;
    font-weight: 600;
  }
  nav.mobile img {
    /*position: absolute;
		top: 11px;
		left: 50%;
		margin-left: -55px;
		width: 100px;
		height: 45px;
		max-width: 100px;
		max-height: 45px;*/
  }
  div.overlay {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: #040707;
    opacity: 0;
    visibility: hidden;
    z-index: 500;
    text-align: right;
    -webkit-transition: opacity visibility;
    transition: opacity visibility;
    -webkit-transition-duration: 500ms;
    transition-duration: 500ms;
    display: none;
  }
  div.overlay.active {
    opacity: 0.85;
    visibility: visible;
    display: block;
    z-index: 10;
  }
  aside.sidebar .sideNav {
    display: none;
  }
  aside.sidebar.news {
    display: block;
    width: 100%;
    padding: 0;
  }
  aside.sidebar.news ul li {
    cursor: pointer;
    float: left;
  }
  aside.sidebar.news ul li:not(:last-child) {
    border-right: 1px solid #bebebe;
  }
  aside.sidebar.news ul li a {
    cursor: pointer;
    padding: 10px 20px;
  }
  section.hero div {
    height: 314px;
  }
  section.hero nav div {
    height: 160px;
  }
  section.hero nav div a {
    padding: 55px 20px 0;
  }
  section.hero nav div a span.icon {
    width: 130px;
    height: 130px;
  }
  section.hero nav div a span.icon:hover {
    -webkit-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
  }
  section.hero nav div a span.icon img {
    -webkit-transform: translate(-50%, -50%) scale(0.8, 0.8);
    -ms-transform: translate(-50%, -50%) scale(0.8, 0.8);
    -o-transform: translate(-50%, -50%) scale(0.8, 0.8);
    transform: translate(-50%, -50%) scale(0.8, 0.8);
  }
  section.hero nav div a span.icon img.schedule {
    margin-top: 34px;
  }
  section.hero nav div a span.icon img.member {
    margin-top: 32px;
  }
  section.hero nav div a span.icon img.locations {
    margin-top: 34px;
  }
  section.results {
    width: 100%;
  }
  section.blogs {
    padding: 20px 0;
  }
  section.blogs h2 {
    width: 590px;
    margin: 0 auto;
  }
  section.blogs a.blog {
    width: 590px;
    float: none;
    margin: 0 auto;
  }
  section.blogs a.blog:first-child {
    margin: 0 auto;
  }
  section.blogs a.blog:last-child {
    margin: 20px auto 0;
  }
  section.blogs a.arrow {
    width: 590px;
    display: block;
    margin: 0 auto;
  }
  section.content {
    /*div.activity, section.activity.single{
		margin-top: 0;
	}*/
  }
  section.content section.blogs h2 {
    width: auto;
    margin: 0;
  }
  section.content section.activity .col div.activity {
    margin-top: 0px;
  }
  a.accordion {
    height: 55px;
  }
  .blogPost {
    background-color: #dbdbdb;
    clear: both;
  }
  .blogPost .wrapper h2 {
    margin-bottom: 15px;
  }
  .blogPost section.content {
    width: 93%;
  }
  .blogPost section.content section.blogs {
    background-color: transparent;
    padding: 0;
  }
  .blogPost section.content section.blogs a.blog {
    width: 100%;
    margin: 0 0 10px;
    height: 110px;
  }
  .blogPost section.content section.blogs a.blog span.headline {
    padding-right: 0;
  }
  section.pitch {
    padding: 20px 0;
  }
  section.promo {
    padding: 20px 0;
  }
  section.promo .video:first-child,
  section.promo .static:first-child,
  section.promo .video:last-child,
  section.promo .static:last-child {
    margin: 0 auto;
  }
  section.promo .video:first-child,
  section.promo .static:first-child {
    margin-bottom: 20px;
  }
  section.promo div.video {
    float: none;
    width: 590px;
  }
  section.promo a.static {
    width: 590px;
    margin: 20px auto 0;
    float: none;
    display: block;
  }
  section.content {
    width: 100%;
  }
  section.content .rte .videoWrapper {
    padding-left: 10px;
  }
  section.content .rte h2,
  section.content .rte h3 {
    padding: 15px 10px;
  }
  section.content .rte h2.clear,
  section.content .rte h3.clear {
    padding: 0 15px 15px 0;
  }
  section.content .rte h2.item,
  section.content .rte h3.item {
    padding-left: 35px;
  }
  section.content .rte ol:not(.clear) {
    padding-left: 42px;
  }
  section.content .rte h4 {
    padding: 10px 10px 5px 20px;
  }
  section.content .rte h4.clear {
    padding-left: 0;
  }
  section.content .rte ul.roman {
    padding: 0 85px 15px 40px;
  }
  section.content .rte .tiles.promo .tile .image img {
    width: 100%;
    height: auto;
  }
  section.content .rte .tiles.promo h2 {
    padding-right: 0;
    width: 590px;
    margin: 0 auto;
  }
  section.content .rte .tiles.promo a.tile {
    width: 590px;
    height: auto;
    display: block;
    margin: 0 auto 30px;
    float: none;
  }
  section.content .rte .tiles.promo iframe {
    float: none;
    width: 590px;
  }
  section.content .rte p.small {
    padding-top: 15px;
  }
  section.content .rte ul:not(.clear),
  section.content .rte ol:not(.clear),
  section.content .rte h2:not(.clear),
  section.content .rte ul:not(.caption),
  section.content .rte ol:not(.caption),
  section.content .rte h2:not(.caption) {
    padding-top: 0;
  }
  section.content .tiles .tile {
    width: 31%;
    margin: 0 3.39% 30px 0;
  }
  section.content .tiles .tile:nth-child(3n) {
    margin-right: 0;
  }
  section.content section.blogs .wrapper > div {
    margin-top: 0;
  }
  section.content section.blogs .wrapper > div.center {
    margin-top: 20px;
  }
  section.large-promo .wrapper {
    padding: 0 20px;
  }
  footer nav {
    margin-bottom: 30px;
  }
  footer nav > div:not(.block),
  footer nav > div.block {
    float: none;
    margin: 0 auto;
  }
  footer nav .block {
    width: 580px;
  }
  footer nav > div:not(.block) {
    width: 580px;
    margin-bottom: 30px;
  }
  footer nav a.big {
    width: 275px;
  }
  footer nav a.big:first-child {
    margin-right: 30px;
  }
  footer section.social {
    margin-bottom: 15px;
  }
  footer section.footnotes .copyright,
  footer section.footnotes .logos {
    width: 50%;
  }
  footer section.footnotes .logos {
    text-align: right;
    bottom: 0;
  }
  footer section.footnotes .logos img:first-child {
    margin-right: 5px;
  }
  footer section.footnotes .legal {
    width: 100%;
    text-align: center;
  }
  footer .bottom .left,
  footer .bottom .right {
    float: none;
    width: 580px;
    margin: 0 auto;
  }
  footer .bottom section.social {
    margin-top: 15px;
  }
  footer .bottom section.social div {
    float: none;
  }
  footer .bottom section.social div a:first-child {
    margin-left: 0;
  }
  footer .bottom div.legal {
    text-align: left;
    padding-top: 0;
  }
  /*.hidden-xs {
	display: none;
}
.hidden-lg {
	display: block;
}*/
}
@media screen and (min-width: 1024px) {
  /*div.inspiration{
padding:0 20px;
    .wrapper{
    padding:0;

    }
}
aside.sidebar{
    width:100%;
    margin-bottom:40px;
    
}
header.content{
    &.wrapper.large{
        h1{
            &.activity-search{
                span{
                    &.label{
                        left: 2.3%;
                    }
                }
            }
            span{
                &.label{
                    left:2.3%;
                }
            }
        }
    }
}*/
  /*ul.activity {
    padding: 0;
    margin: 0;
    list-style: none;
    &.no-style{
        li{
            padding-left: 0;
            &:before,&:hover:before {
            content: "";
            }
        }
    }
    li {
        position: relative;
        padding-left: 28px;
        &:not(:last-child) {
            margin-bottom: 15px;
        }
        &:before {
            content: "◦";
            font-size: 30px;
            position: absolute;
            top: -11px;
            left: 0;
        }
        &:hover:before {
            content: "•";
            top: -10px;
            left: 0;
        }
        a:hover {
            text-decoration: none;
        }
        a{
            //margin-left: 10px;
        }
    }
}*/
}