﻿/*
    font-family: 'Playfair Display', serif;
    font-family: 'Raleway', sans-serif;

    Green:   #152E1B
    Grey:    #151515
    Gold:    #AB944D
*/

html { margin: 0; padding: 0; -webkit-font-smoothing: antialiased; }
body { height: auto !important; width: 100%; margin: 0; padding: 0; background: #0a190e; color: #152E1B; font: 400 15px/1.6 'Raleway', sans-serif; font-style: normal; position: relative; overflow-x: hidden; }
h1, h2, h3, h4, h5, h6 { margin: 0; letter-spacing: 1px; }
input { outline: none }
input[type=submit] { cursor: pointer }
img { max-width: 100%; border: 0; }
button { margin: 0; padding: 0; background: none; border: none; outline: none; border-radius: 0 }
svg { max-width: 100%; max-height: 100% }

h1, h2 { font-family: 'Playfair Display', serif; font-size: 40px; font-weight: 400; line-height: 1; }
h3, h4, h5, h6 { font-family: 'Playfair Display', serif; font-size: 24px; font-weight: 400; line-height: 1; }
a { color: #FFF; cursor: pointer; text-decoration: none }
a:hover { color: #FFF; text-decoration: none }
a:focus { color: #FFF; outline: none; -moz-outline-style: none; text-decoration: none }

.clear { clear: both; height: 0; padding: 0; margin: 0; overflow: hidden }
.clearfix:after { clear: both; content: ""; display: block; height: 0; visibility: hidden }
* html .clearfix { height: 1% }

::-webkit-input-placeholder { color: #6e6e6e }
:-moz-placeholder { color: #6e6e6e; opacity: 1 }
::-moz-placeholder { color: #6e6e6e; opacity: 1 }
:-ms-input-placeholder { color: #6e6e6e }
:placeholder-shown { color: #6e6e6e }

input[type=text],
input[type=password],
input[type=number],
textarea, select { width: 100%; height: 30px; padding: 0 10px; background: #fff; border: 1px solid #152E1B; color: #152E1B; font: 400 16px/normal 'Raleway',sans-serif; outline: none; border-radius: 0 }

.text-center { text-align: center }

.center-x { position: absolute; left: 50%; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); transform: translateX(-50%); }
.center-y { width: 100%; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); transform: translateY(-50%); }
.center-xy { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); -moz-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }

img.svgConvert { display: none; }
img.svg-converted { display: block; }

.buttons { margin-top: 75px; text-align: center; }
a.button { display: inline-block; min-width: 200px; max-width: 100%; height: 60px; padding: 0 20px; border-width: 2px; border-style: solid; border-radius: 3px; font: 400 16px/60px 'Raleway',sans-serif; text-align: center; cursor: pointer; position: relative; transition: all .35s; }
a.button span { position: relative; z-index: 2; }
a.button:after { width: 0; height: 100%; position: absolute; content: ""; top: 0; left: 0; transition: all .35s; }
a.button:hover:after { width: 100%; }

a.button { color: #152E1B; border-color: #152E1B; }
a.button:hover { color: #fff; }
a.button:after { background: #152E1B; }

a.button.gold { color: #AB944D; border-color: #AB944D; }
a.button.gold:hover { color: #FFF; }
a.button.gold.green-text:hover { color: #152E1B; }
a.button.gold:after { background: #AB944D; }

a.button.white { color: #FFF; border-color: #FFF; }
a.button.white:hover { color: #152E1B; }
a.button.white:after { background: #FFF; }

.navbar { width: 100%; margin-bottom: 0; padding: 0 30px; background-color: #FFF; border: none; border-radius: 0; font-size: 14px; -webkit-transition: background-color .5s; -moz-transition: background-color .5s; transition: background-color .5s; position: fixed; top: 0; left: 0; z-index: 1000; }
body.nav-active .navbar { background: #151515; }
.navbar .navbar-brand { width: 60px; height: 60px; padding: 13px 10px; font: normal normal normal 22px/1.41em 'Playfair Display', serif; color: #152E1B; }
body.nav-active .navbar a,
body.nav-active .navbar .navbar-brand { color: #FFF; }
.navbar .navbar-toggle { margin-top: 12px; margin-right: 5px; }
.navbar .navbar-toggle .icon-bar { background: #152E1B; -webkit-transition: background-color .5s; -moz-transition: background-color .5s; transition: background-color .5s; }
body.nav-active .navbar .navbar-toggle .icon-bar { background: #fff; }
.navbar .navbar-collapse { border-top: 1px solid #e5e5e5; box-shadow: none; }
body.nav-active .navbar-collapse { border-top-color: #252525; }
.navbar a { color: #151515; }
.navbar .nav > li { height: 100%; text-align: center; }
.navbar .nav > li > a { margin: 0 10px; }
.navbar .nav > li > a:focus,
.navbar .nav > li > a:hover { background-color: transparent; }

.site { position: relative; z-index: 100; }

.fern-bg::before { content: ""; width: 100%; height: 100%; background-image: url('/images/fern.jpg'); background-size: cover; opacity: 0.2; position: absolute; top: 0; left: 0; z-index: -1; }

section { padding: 160px 0; color: #fff; position: relative; }
section.flat { padding: 0; }
section.mid-top { padding-top: 80px; }
section.mid-btm { padding-bottom: 80px; }
section.white { background-color: #FFF; color: #151515; }
section.green { color: #FFF; }
section h2 { margin-bottom: 40px; padding-bottom: 10px; font-size: 34px; font-weight: 700; position: relative; }

.spacer { background: #FFF; }
.spacer-inner { height: 2px; }
.spacer.gold .spacer-inner { background: #AB944D; }

.icon { height: 30px; }
.icon.left { width:30px; }
.icon svg { fill: #AB944D; }

.banner { height: calc(95vh - 60px); margin-top: 60px; padding: 0; background-position: center center; background-repeat: no-repeat; background-size: cover; font-size: 20px; text-align: center; overflow: hidden; position: relative; }
.banner.fern-bg::before { opacity: 0.5; }
.banner > div { width: 100%; }
.banner h1 { margin: 30px 0 30px; color: #FFF; }
.banner h1 span { font: 400 22px/normal 'Raleway', sans-serif; }
.banner p { color: #FFF; }
.banner .scroll { position: absolute; bottom: 30px; left: 0; }
.banner .chevron { width: 30px; height: 30px; margin: 0 auto; }
.banner .chevron a { display: block; width: 30px; height: 30px; border-top: 3px solid #fff; border-right: 3px solid #fff; position: relative; top: -6px; }
.banner .chevron a.down { transform: rotate(135deg); }

.popup { width: 500px; height: 500px; }

.three-col:not(.slick) { display: flex; flex-wrap: wrap; }
h2 + .three-col,
p + .three-col { margin-top: 50px; }
.three-col:not(.slick) > div { padding: 0 20px; }
.three-col .icon { margin: 0 auto 30px; }
.three-col .cost { height: 20px; margin-bottom: 20px; }
.three-col .cost svg { width: 14px; height: 20px; fill: #AB944D; }
.three-col h3 { margin-bottom: 25px; padding-bottom: 25px; font-size: 34px; font-weight: 700; position: relative; }
.three-col h3::after { content: ""; display: block; width: 40%; height: 1px; background-color: #AB944D; position: absolute; bottom: 0; left: 30%; }

.three-col.slick .slick-slide { padding:0 20px; }

.full-promo { display: flex; flex-wrap: wrap; height: calc(100vh - 60px); color: #FFF; }
.full-promo .info { width: 30%; position: relative; }
.full-promo .info-inner { width: 100%; padding: 12.5%; }
.full-promo .info .icon { margin-bottom: 10px; }
.full-promo .info h2 { margin-bottom: 30px; }
.full-promo .info p:first-of-type { margin-top: 30px; }
.full-promo .image { width: 70%; background-position: center center; background-repeat: no-repeat; background-size: cover; text-align: center; }

.schedule { text-align: center; }
.schedule .full-promo .info-inner { z-index: 1; }
.schedule .full-promo .info h2 { margin-bottom: 70px; }
.schedule-row:not(:last-child) { margin-bottom: 40px; }
.schedule-row .icon { margin-bottom: 10px; }
.schedule-row h3 span { font: 16px/1 'Raleway', sans-serif; }

footer { padding: 15px 0; background: #151515; color: #fff; line-height: 30px; position: relative; z-index: 100; }
footer a { color: #fff; }
footer a:hover,
footer a:active,
footer a:focus { color: #fff; }
footer > div > div { height: 30px; }
footer svg { width: 30px; margin: 0 10px; fill: #fff; }
footer a:hover svg { fill: #FFF; }

@media(min-width:500px) {
    a.button + .button { margin-left: 10px }
}

@media (min-width:768px) {
    .navbar .nav { height: 100%; float: right; }
    .navbar .nav > li > a { padding: 20px 5px 3px; }

    .three-col:not(.slick) > div { width: 33.3334%; }
}

@media (min-width:992px) {
    .center-y-lg { width: 100%; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); transform: translateY(-50%); }
}

@media(max-width: 1199px) {
    .full-promo .info { width: 40%; }
    .full-promo .image { width: 60%; }
}

@media(max-width: 991px) {
    .banner { height: calc(100vh - 65px - 60px); height: -o-calc(100vh - 65px - 60px); /* opera */ height: -webkit-calc(100vh - 65px - 60px); /* google, safari */ height: -moz-calc(100vh - 65px - 60px); /* firefox */ }

    .full-promo { align-items: flex-start; height: auto; }
    .full-promo .info { width: 100%; }
    .full-promo .image { width: 100%; padding-top: 100%; }

    .schedule .full-promo { flex-direction: column-reverse; }
}

@media(max-width:767px) {
    .buttons { margin-top: 50px; }

    section { padding: 100px 0; }

    .full-promo .info-inner { padding: 17.5% 12.5%; }

    .three-col > div:not(:last-child) { margin-bottom: 75px; }
}

@media (max-width:499px) {
    a.button + .button { margin-top: 10px }
}
