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

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

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

body {
  background: #e7e8e6;
  color: #0e4736;
  font-size: 100%;
  overflow: hidden;
  font-family: Georgia, "Times New Roman"; }
  @media (max-width: 728px) {
    body {
      overflow: visible; } }

.section {
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-image: url("images/background-pattern.png");
  position: relative; }
  .section .content-with-margin {
    padding: 60px; }
    @media (max-width: 728px) {
      .section .content-with-margin {
        padding: 15px 30px; }
        .section .content-with-margin:first-child {
          padding-top: 30px; }
        .section .content-with-margin:last-child {
          padding-bottom: 30px; } }

.booking-btn {
  position: absolute;
  right: 20px;
  top: 20px;
  text-align: center;
  background: #09400d;
  font-family: sans-serif;
  text-transform: uppercase;
  line-height: 40px;
  padding: 0 15px;
  color: #FFFFFF;
  text-decoration: none !important;
  font-size: 0.9em;
  -webkit-transition: all 0.2s linear;
  -o-transition: all 0.2s linear;
  transition: all 0.2s linear;
  display: block; }
  .booking-btn:hover {
    background: #1b4e1b; }

.content-box {
  -webkit-box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.3);
  box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.3);
  background: #FFFFFF;
  padding: 80px;
  position: relative; }
  @media (max-width: 728px) {
    .content-box {
      padding: 25px; } }
  @media (max-width: 728px) {
    .content-box.link {
      padding: 25px 25px 60px 25px !important; } }
  .content-box.has-sticky {
    padding-bottom: 120px; }

a {
  text-decoration: none;
  color: #054009; }
  a:hover {
    text-decoration: underline; }

h2 {
  font-family: sans-serif;
  margin: 0 0 25px 0;
  text-transform: uppercase;
  font-size: 1em; }

.capacity {
  position: absolute;
  bottom: 20px;
  font-weight: bold;
  left: 0;
  right: 0;
  font-family: sans-serif;
  text-align: center; }

.signup {
  text-align: center;
  background: #09400d;
  font-family: sans-serif;
  text-transform: uppercase;
  line-height: 40px;
  color: #FFFFFF;
  text-decoration: none !important;
  font-size: 0.9em;
  -webkit-transition: all 0.2s linear;
  -o-transition: all 0.2s linear;
  transition: all 0.2s linear;
  display: block; }
  .signup.sticky {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0; }
  .signup:hover {
    background: #1b4e1b; }

.news {
  position: absolute;
  right: 0;
  top: 0;
  background: url("images/news.png");
  background-size: 120px 120px;
  width: 120px;
  height: 120px;
  display: block;
  overflow: hidden;
  text-indent: -9999px; }

.double-cols {
  margin-left: -40px;
  margin-right: -40px; }
  .double-cols:before, .double-cols:after {
    content: " ";
    display: table; }
  .double-cols:after {
    clear: both; }
  @media (max-width: 728px) {
    .double-cols {
      margin-left: -15px;
      margin-right: -15px; }
      .double-cols:before, .double-cols:after {
        content: " ";
        display: table; }
      .double-cols:after {
        clear: both; } }
  @media (max-width: 728px) {
    .double-cols .left-col {
      display: block;
      position: relative;
      float: left;
      width: 100%;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px;
      margin-bottom: 20px; } }
  @media (min-width: 728px) {
    .double-cols .left-col {
      display: block;
      position: relative;
      float: left;
      width: 45%;
      min-height: 1px;
      padding-left: 40px;
      padding-right: 40px;
      display: flex;
      align-items: center;
      justify-content: center; } }
  .double-cols .left-col img {
    width: 100%;
    border-radius: 50%; }
  @media (max-width: 728px) {
    .double-cols .right-col {
      display: block;
      position: relative;
      float: left;
      width: 100%;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
  @media (min-width: 728px) {
    .double-cols .right-col {
      display: block;
      position: relative;
      float: left;
      width: 55%;
      min-height: 1px;
      padding-left: 40px;
      padding-right: 40px;
      display: flex;
      align-items: center;
      justify-content: center; } }
  .double-cols .right-col h2 {
    margin: 0 0 25px 0;
    text-align: center; }
  .double-cols .right-col .centered {
    text-align: center; }
    .double-cols .right-col .centered p {
      font-style: italic;
      line-height: 1.5em;
      margin-bottom: 25px; }
  .double-cols .right-col .right p {
    font-style: italic;
    line-height: 1.5em;
    margin-bottom: 25px; }

.one-cols {
  margin-left: -15px;
  margin-right: -15px; }
  .one-cols:before, .one-cols:after {
    content: " ";
    display: table; }
  .one-cols:after {
    clear: both; }
  .one-cols .col {
    display: block;
    position: relative;
    float: left;
    width: 100%;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; }
    .one-cols .col .col-content {
      padding: 25px;
      text-align: center; }
      .one-cols .col .col-content.has-sticky {
        padding-bottom: 70px; }
      .one-cols .col .col-content img {
        border-radius: 50%;
        width: 100%;
        max-width: 300px;
        margin: 0 auto 25px auto; }
      .one-cols .col .col-content h2 {
        margin: 0 0 10px 0; }
      .one-cols .col .col-content h3 {
        font-style: italic;
        margin: 0 0 25px 0; }
      .one-cols .col .col-content p {
        font-style: italic;
        line-height: 1.5em; }

.two-cols {
  margin-left: -30px;
  margin-right: -30px; }
  .two-cols:before, .two-cols:after {
    content: " ";
    display: table; }
  .two-cols:after {
    clear: both; }
  .two-cols .col {
    display: block;
    position: relative;
    float: left;
    width: 50%;
    min-height: 1px;
    padding-left: 30px;
    padding-right: 30px; }
    .two-cols .col .col-content {
      padding: 50px;
      text-align: center; }
      .two-cols .col .col-content img {
        border-radius: 50%;
        width: 100%;
        max-width: 300px;
        margin: 0 auto 25px auto; }
      .two-cols .col .col-content h2 {
        margin: 0 0 10px 0; }
      .two-cols .col .col-content h3 {
        font-style: italic;
        margin: 0 0 25px 0; }
      .two-cols .col .col-content p {
        font-style: italic;
        line-height: 1.5em; }

.three-cols {
  margin-left: -30px;
  margin-right: -30px; }
  .three-cols:before, .three-cols:after {
    content: " ";
    display: table; }
  .three-cols:after {
    clear: both; }
  .three-cols .col {
    display: block;
    position: relative;
    float: left;
    width: 33.3333333333%;
    min-height: 1px;
    padding-left: 30px;
    padding-right: 30px; }
    .three-cols .col .col-content {
      padding: 50px;
      text-align: center; }
      .three-cols .col .col-content img {
        border-radius: 50%;
        width: 100%;
        max-width: 300px;
        margin: 0 auto 25px auto; }
      .three-cols .col .col-content h2 {
        margin: 0 0 10px 0; }
      .three-cols .col .col-content h3 {
        font-style: italic;
        margin: 0 0 25px 0; }
      .three-cols .col .col-content p {
        font-style: italic;
        line-height: 1.5em; }

.fp-tableCell {
  overflow: auto;
  display: block;
  position: relative; }

.fp-section.fp-table, .fp-slide.fp-table {
  display: block; }

.slide-animation-out {
  -webkit-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
  -webkit-transition: none !important;
  transition: none !important; }

#content {
  background: #171717;
  -webkit-perspective: 1200px;
  -moz-perspective: 1200px;
  perspective: 1200px;
  position: relative; }

.intro {
  background: url("images/content-box.png") no-repeat;
  background-size: 1000px 313px;
  width: 1000px;
  height: 313px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center; }
  @media (max-width: 1024px) {
    .intro {
      background: url("images/content-box-tablet.png") no-repeat;
      background-size: 620px 360px;
      width: 620px;
      height: 360px; } }
  @media (max-width: 640px) {
    .intro {
      background: url("images/content-box-mobile.png") no-repeat;
      background-size: 300px 417px;
      width: 300px;
      height: 417px; } }
  .intro > div {
    max-width: 640px; }
    @media (max-width: 1024px) {
      .intro > div {
        max-width: 580px; } }
    @media (max-width: 640px) {
      .intro > div {
        max-width: 270px; } }
  .intro p {
    margin: 0 0 20px 0;
    line-height: 1.5em;
    font-style: italic; }
    @media (max-width: 640px) {
      .intro p {
        font-size: 0.9em; } }
    .intro p:last-child {
      margin-bottom: 0; }

.scrollable-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  transform-style: preserve-3d; }
  @media (max-width: 728px) {
    .scrollable-content {
      position: relative;
      top: auto;
      left: auto;
      right: auto;
      bottom: auto;
      overflow: scroll; } }

.down-btn {
  position: absolute;
  background: url("images/down-arrow.png");
  background-size: 100px 40px;
  width: 100px;
  height: 40px;
  display: block;
  overflow: hidden;
  text-indent: -9999px;
  left: 50%;
  margin-left: -50px;
  bottom: 25px; }
  @media (max-width: 728px) {
    .down-btn {
      background: url("images/down-arrow.png");
      background-size: 50px 20px;
      width: 50px;
      height: 20px;
      display: block;
      overflow: hidden;
      text-indent: -9999px;
      margin-left: -25px; } }

#menu-toggle {
  position: absolute;
  left: 20px;
  top: 20px; }

.hamburger-icon {
  width: 20px;
  height: 17px;
  position: relative;
  margin: 0 auto;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  cursor: pointer;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  .hamburger-icon span {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    background: #FFFFFF;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.25s ease-in-out;
    -o-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out; }
    .hamburger-icon span:nth-child(1) {
      top: 0px; }
    .hamburger-icon span:nth-child(2), .hamburger-icon span:nth-child(3) {
      top: 7px; }
    .hamburger-icon span:nth-child(4) {
      top: 14px; }

ul.frontpage-nav {
  position: absolute;
  left: 50px;
  right: 50px;
  top: 14px;
  text-align: center; }
  @media (max-width: 728px) {
    ul.frontpage-nav {
      display: none; } }
  ul.frontpage-nav li {
    display: inline-block;
    padding: 0 15px; }
    ul.frontpage-nav li a {
      display: block;
      color: #FFFFFF;
      font-size: 1em;
      letter-spacing: 0.1em;
      font-style: italic;
      font-weight: 100;
      text-align: center;
      line-height: 30px; }
      ul.frontpage-nav li a.active, ul.frontpage-nav li a:hover {
        text-decoration: underline; }

nav {
  position: absolute;
  left: 0;
  top: 0; }
  nav.expanded {
    background: rgba(14, 71, 54, 0.9);
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center; }
    nav.expanded ul {
      display: block; }
    nav.expanded .hamburger-icon span:nth-child(1) {
      top: 7px;
      width: 0%;
      left: 50%; }
    nav.expanded .hamburger-icon span:nth-child(2) {
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      -o-transform: rotate(45deg);
      transform: rotate(45deg); }
    nav.expanded .hamburger-icon span:nth-child(3) {
      -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      -o-transform: rotate(-45deg);
      transform: rotate(-45deg); }
    nav.expanded .hamburger-icon span:nth-child(4) {
      top: 7px;
      width: 0%;
      left: 50%; }
  nav ul {
    display: none; }
    nav ul li a {
      display: block;
      color: #FFFFFF;
      font-size: 2.5em;
      letter-spacing: 0.1em;
      font-style: italic;
      font-weight: 100;
      text-align: center;
      line-height: 80px; }
      nav ul li a.active, nav ul li a:hover {
        text-decoration: underline; }

#about-intro {
  background-image: url("images/about/background.png");
  display: flex;
  align-items: center;
  justify-content: center; }
  @media (max-width: 728px) {
    #about-intro {
      padding: 40px 25px 60px 25px; } }
  #about-intro .booking-btn {
    background: #f16331; }
    #about-intro .booking-btn::after {
      display: block;
      content: " ";
      position: absolute;
      width: 120px;
      height: 42px;
      background: url("images/eurekalogo.png") no-repeat;
      background-size: 120px 42px;
      right: 0;
      top: 45px; }
  #about-intro .site-intro {
    text-align: center;
    color: #FFFFFF; }
    #about-intro .site-intro h1 {
      background: url("images/about/logo.png");
      background-size: 225px 124px;
      width: 225px;
      height: 124px;
      display: block;
      overflow: hidden;
      text-indent: -9999px;
      margin: 0 auto 50px auto; }
    #about-intro .site-intro p {
      text-shadow: 1px 1px #000000;
      margin: 0 0 20px 0;
      line-height: 1.5em;
      font-style: italic; }

#health-intro {
  background-image: url("images/health/background.png");
  display: flex;
  align-items: center;
  justify-content: center; }
  @media (max-width: 728px) {
    #health-intro {
      padding: 40px 25px 60px 25px; } }

#eureka-intro {
  background-image: url("images/eureka/background.png");
  display: flex;
  align-items: center;
  justify-content: center; }
  #eureka-intro .booking-btn {
    background: #f16331; }
    #eureka-intro .booking-btn::after {
      display: block;
      content: " ";
      position: absolute;
      width: 120px;
      height: 42px;
      background: url("images/eurekalogo.png") no-repeat;
      background-size: 120px 42px;
      right: 0;
      top: 45px; }
  @media (max-width: 728px) {
    #eureka-intro {
      padding: 40px 25px 60px 25px; } }

#event-intro {
  background-image: url("images/event/background.png");
  display: flex;
  align-items: center;
  justify-content: center; }
  @media (max-width: 728px) {
    #event-intro {
      padding: 40px 25px 60px 25px; } }

#party-intro {
  background-image: url("images/party/background.png");
  display: flex;
  align-items: center;
  justify-content: center; }
  @media (max-width: 728px) {
    #party-intro {
      padding: 40px 25px 60px 25px; } }

#food-intro {
  background-image: url("images/food/background.png");
  display: flex;
  align-items: center;
  justify-content: center; }
  @media (max-width: 728px) {
    #food-intro {
      padding: 40px 25px 60px 25px; } }
