html {
  box-sizing: border-box; }

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

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal; }

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */
html {
  color: #222;
  font-size: 1em;
  line-height: 1.4; }

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none; }

::selection {
  background: #b3d4fc;
  text-shadow: none; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }

fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

textarea {
  resize: vertical; }

.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0; }

/* apply a natural box layout model to all elements, but allowing components to change */
html {
  box-sizing: border-box; }

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

/* ==========================================================================
   Helper classes
   ========================================================================== */
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table; }

.clearfix:after {
  clear: both; }

.clearfix {
  *zoom: 1; }

/* ==========================================================================
   Print styles
   ========================================================================== */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important; }

  a,
  a:visited {
    text-decoration: underline; }

  a[href]:after {
    content: " (" attr(href) ")"; }

  abbr[title]:after {
    content: " (" attr(title) ")"; }

  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ""; }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }

  thead {
    display: table-header-group; }

  tr,
  img {
    page-break-inside: avoid; }

  img {
    max-width: 100% !important; }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }

  h2,
  h3 {
    page-break-after: avoid; } }
/* Variables ------------------------------
----------------------------------------- */
/* Colors: reference (http://chir.ag/projects/name-that-color/) ----------
------------------------------------------------------------------------- */
/* Fonts -----------------------------------------------------------------
------------------------------------------------------------------------- */
/* Media Queries ---------------------------------------------------------
------------------------------------------------------------------------- */
/* Fonts Styles ---------------------------
----------------------------------------- */
@font-face {
  font-family: 'ns-fonts';
  src: url("../fonts/icons/ns-fonts.eot?o80waw");
  src: url("../fonts/icons/ns-fonts.eot?o80waw#iefix") format("embedded-opentype"), url("../fonts/icons/ns-fonts.ttf?o80waw") format("truetype"), url("../fonts/icons/ns-fonts.woff?o80waw") format("woff"), url("../fonts/icons/ns-fonts.svg?o80waw#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'ns-fonts' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-hashtag:before {
  content: "\e901"; }

.icon-instagram-brand a:before {
  content: "\21"; }

.icon-searchleft:before {
  content: "\2a"; }

.icon-leftarrow-s:before {
  content: "\2c"; }

.icon-rightarrow-s:before {
  content: "\2e"; }

.icon-downarrow:before {
  content: "\36"; }

.icon-searchright-l:before {
  content: "\38"; }

.icon-leftarrow:before {
  content: "\3c"; }

.icon-rightarrow:before {
  content: "\3e"; }

.icon-blocks:before {
  content: "\44"; }

.icon-facebook:before {
  content: "\45"; }

.icon-facebook-circle:before {
  content: "\46"; }

.icon-google:before {
  content: "\47"; }

.icon-facebook-circle-s:before {
  content: "\48"; }

.icon-instagram a:before {
  content: "\49"; }

.icon-linkedin:before {
  content: "\4c"; }

.icon-pinterest-circle a:before {
  content: "\50"; }

.icon-rss-circle:before {
  content: "\52"; }

.icon-paintbrush:before {
  content: "\53"; }

.icon-twitter-circle:before {
  content: "\54"; }

.icon-x-block:before {
  content: "\58"; }

.icon-youtube-circle:before {
  content: "\59"; }

.icon-leftarrow-circle:before {
  content: "\5b"; }

.icon-rightarrow-circle:before {
  content: "\5d"; }

.icon-checkmark:before {
  content: "\60"; }

.icon-hammer:before {
  content: "\61"; }

.icon-bag:before {
  content: "\62"; }

.icon-clipboard:before {
  content: "\63"; }

.icon-facebook-f:before {
  content: "\66"; }

.icon-microphone:before {
  content: "\6b"; }

.icon-lighting:before {
  content: "\6e"; }

.icon-icon-phone:before {
  content: "\6f"; }

.icon-pinterest a:before {
  content: "\70"; }

.icon-pinterest-circle-s:before {
  content: "\71"; }

.icon-presentation:before {
  content: "\72"; }

.icon-silverware:before {
  content: "\73"; }

.icon-twitter a:before {
  content: "\74"; }

.icon-x:before {
  content: "\78"; }

.icon-checklist:before {
  content: "\7a"; }

.icon-play:before {
  content: "\e900"; }

/* Base Styles ---------------------------
----------------------------------------- */
html, body {
  width: 100%;
  height: 100%; }

body {
  font-family: "Arvo", serif;
  font-size: 16px;
  background-color: #fff;
  color: #777; }

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  font-weight: 700; }

figure {
  margin: 0; }

input {
  border-radius: 0;
  -webkit-appearance: none; }

h2 {
  font-family: "Montserrat", sans-serif;
  font-size: 20px;
  text-transform: uppercase;
  color: #161616;
  text-align: center;
  margin-bottom: 35px; }

.section-header {
  font-weight: 700;
  letter-spacing: 3px; }

h3 {
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #161616; }

main {
  display: block; }

a {
  text-decoration: none;
  -webkit-transition: all 0.2s linear;
  -moz-transition: all 0.2s linear;
  transition: all 0.2s linear; }
  a:focus {
    outline: none; }

select:focus, input:focus {
  outline: none; }

.right {
  float: right; }

.wrapper-one {
  max-width: 1200px;
  margin: 0 auto; }

.wrapper-two {
  max-width: 740px;
  margin: 0 auto;
  padding: 0 20px; }

.wrapper-three {
  max-width: 985px;
  margin: 0 auto;
  padding: 0 20px; }

@media only screen and (min-width: 1255px) {
  .block-wrapper {
    margin: 0 -20px; } }

.table {
  display: table; }

.tr {
  display: table-row; }

.td {
  display: table-cell; }

.active {
  display: block !important; }

@media only screen and (min-width: 768px) {
  .fixed {
    position: fixed; } }

.hidden {
  display: none !important; }

.mobile {
  display: block !important; }
  @media only screen and (min-width: 768px) {
    .mobile {
      display: none !important; } }

.desktop {
  display: none !important; }
  @media only screen and (min-width: 768px) {
    .desktop {
      display: block !important; } }

.border img {
  width: 100%;
  height: auto; }
  @media only screen and (min-width: 1380px) {
    .border img {
      display: none; } }

.small {
  font-family: "Montserrat", sans-serif;
  text-transform: uppercase;
  font-size: 15px;
  letter-spacing: 5px; }

.social-nav ul {
  margin: 0;
  padding: 0;
  list-style: none; }
.social-nav li {
  display: inline-block; }
.social-nav a {
  color: #161616;
  font-size: 26px;
  text-decoration: none;
  -webkit-transition: .2s linear;
  transition: .2s linear; }
  .social-nav a:hover {
    color: #ffffff; }
.social-nav i {
  content: "";
  position: fixed;
  top: -999px;
  right: -999px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: block;
  width: 1px;
  height: 1px; }

.hero img {
  width: 100%;
  height: auto; }
.hero .left-img {
  width: 50%;
  height: 100%;
  float: left; }
  .hero .left-img img {
    width: 100%;
    height: auto; }
.hero .right-img {
  width: 50%;
  height: 100%;
  float: right; }
  .hero .right-img img {
    width: 100%;
    height: auto; }

/* Header Styles -------------------------
----------------------------------------- */
header {
  position: fixed;
  top: 0;
  z-index: 10;
  width: 100%;
  background: rgba(43, 43, 43, 0.9);
  -webkit-transition: .2s linear;
  transition: .2s linear; }
  @media only screen and (min-width: 768px) {
    header {
      padding-left: 40px;
      padding-right: 40px; } }
  header .header-wrapper {
    position: relative;
    z-index: 30;
    padding: 16px 25px;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      header .header-wrapper {
        padding: 16px 0; } }
    header .header-wrapper .logo {
      float: left;
      display: block; }
      header .header-wrapper .logo img {
        width: 52px;
        height: 52px; }
    header .header-wrapper .right {
      margin-top: 12px; }
    header .header-wrapper .tertiary-nav {
      display: none; }
      @media only screen and (min-width: 768px) {
        header .header-wrapper .tertiary-nav {
          display: inline-block;
          margin-top: 6px;
          margin-right: 50px; } }
      header .header-wrapper .tertiary-nav li {
        margin-left: 20px;
        vertical-align: top;
        font-size: 11px; }

.tertiary-nav {
  display: inline-block;
  vertical-align: middle; }
  .tertiary-nav ul {
    list-style: none;
    padding: 0;
    margin: 0; }
  .tertiary-nav li {
    display: inline-block;
    font-family: "Montserrat", sans-serif;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 13px; }
  .tertiary-nav a {
    letter-spacing: 3px;
    color: #fff;
    display: block;
    padding-bottom: 5px;
    border-bottom: 2px solid transparent; }
    .tertiary-nav a:hover {
      border-bottom: 2px solid #fff; }
  .tertiary-nav .current-menu-item a {
    border-bottom: 2px solid #fff; }

.hero {
  position: relative;
  height: auto;
  padding: 0; }
  .hero h1 {
    position: absolute;
    bottom: 20px;
    left: 20px; }
    @media only screen and (min-width: 768px) {
      .hero h1 {
        bottom: 40px;
        left: 40px; } }

.home header {
  background: transparent; }

header.active {
  background-color: rgba(43, 43, 43, 0.9); }

header.remove-nav-bar {
  background-color: transparent; }

header.remove-nav-bar .tertiary-nav {
  display: none; }

#hamburger {
  cursor: pointer;
  display: inline-block;
  vertical-align: middle; }
  #hamburger span {
    display: block;
    width: 27px;
    height: 2px;
    margin: 6px 0;
    background-color: #fff;
    -webkit-transition: all 0.15s ease;
    -moz-transition: all 0.15s ease;
    transition: all 0.15s ease; }
  #hamburger:hover .bun-one {
    margin-top: 4px;
    margin-bottom: 8px; }
  #hamburger:hover .bun-two {
    margin-bottom: 8px; }
  #hamburger:hover .bun-three {
    margin-bottom: 4px; }

#hamburger.close .bun-one {
  position: relative;
  top: 7px;
  left: 0px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }
#hamburger.close .bun-two {
  display: none; }
#hamburger.close .bun-three {
  position: relative;
  top: -1px;
  right: 0px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg); }
#hamburger.close:hover .bun-one {
  margin: 6px 0;
  -webkit-transform: scale(1.15) rotate(45deg);
  -moz-transform: scale(1.15) rotate(45deg);
  -ms-transform: scale(1.15) rotate(45deg);
  -o-transform: scale(1.15) rotate(45deg);
  transform: scale(1.15) rotate(45deg); }
#hamburger.close:hover .bun-three {
  margin: 6px 0;
  -webkit-transform: scale(1.15) rotate(-45deg);
  -moz-transform: scale(1.15) rotate(-45deg);
  -ms-transform: scale(1.15) rotate(-45deg);
  -o-transform: scale(1.15) rotate(-45deg);
  transform: scale(1.15) rotate(-45deg); }

.main-nav-wrapper {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 100%;
  font-family: "Montserrat", sans-serif;
  text-transform: uppercase; }

.nav-content {
  display: table;
  width: 100%;
  height: 85%; }
  @media only screen and (min-width: 768px) {
    .nav-content {
      padding-top: 84px;
      height: 90%; } }
  .nav-content ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  .nav-content .nav-background {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 6;
    background-color: #111;
    opacity: .8;
    width: 100%;
    height: 100%; }
  .nav-content .inner-nav-wrapper {
    position: relative;
    z-index: 7;
    display: table-cell;
    width: 100%;
    height: 90%;
    text-align: center;
    vertical-align: middle; }
  .nav-content .main-nav a {
    display: block;
    font-size: 20px;
    letter-spacing: 3px;
    padding: .8% 20px;
    color: #fff; }
    .nav-content .main-nav a:hover {
      color: #878686; }
    @media only screen and (min-width: 768px) {
      .nav-content .main-nav a {
        font-size: 30px; } }
  .nav-content .secondary-nav {
    margin-top: 15px; }
    @media only screen and (min-width: 768px) {
      .nav-content .secondary-nav {
        margin-top: 25px; } }
    .nav-content .secondary-nav a {
      display: block;
      color: #868686;
      padding: .8% 20px;
      font-size: 16px;
      letter-spacing: 3px; }
      .nav-content .secondary-nav a:hover {
        color: #515151; }
      @media only screen and (min-width: 768px) {
        .nav-content .secondary-nav a {
          font-size: 22px; } }

.main-nav-footer {
  position: relative;
  z-index: 7;
  display: table;
  height: 15%;
  width: 100%; }
  @media only screen and (min-width: 768px) {
    .main-nav-footer {
      height: 10%; } }
  .main-nav-footer .nav-footer-wrapper {
    display: table-cell;
    vertical-align: middle;
    padding: 0 40px;
    text-align: center; }
  .main-nav-footer .tertiary-nav {
    margin: 0 auto;
    width: 100%;
    border-top: 1px solid #fff;
    padding-top: 10px; }
    @media only screen and (min-width: 768px) {
      .main-nav-footer .tertiary-nav {
        float: left;
        border-top: 0;
        width: auto; } }
    .main-nav-footer .tertiary-nav li {
      margin: 0 10px; }
      @media only screen and (min-width: 768px) {
        .main-nav-footer .tertiary-nav li {
          margin: 0 25px 0 0; } }
  .main-nav-footer .social-wrapper {
    display: none; }
    @media only screen and (min-width: 768px) {
      .main-nav-footer .social-wrapper {
        display: block;
        float: right; } }
    .main-nav-footer .social-wrapper p {
      display: inline-block;
      vertical-align: middle;
      font-size: 13px;
      letter-spacing: 3px; }
  .main-nav-footer .social-nav {
    display: inline-block;
    vertical-align: middle; }
    .main-nav-footer .social-nav a {
      margin-left: 20px;
      color: #868686;
      font-size: 20px; }
      .main-nav-footer .social-nav a:hover {
        color: #fff; }

/* Footer Styles -------------------------
----------------------------------------- */
footer {
  background-color: #000;
  text-align: center;
  color: #ffffff; }
  footer p {
    margin-top: 75px;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 13px; }
  footer ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  footer .footer-upper {
    padding: 50px 0 0; }
    @media only screen and (min-width: 768px) {
      footer .footer-upper {
        padding: 100px 0 35px; } }
  footer .footer-lower {
    padding: 50px 40px;
    font-family: "Montserrat", sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-align: center; }
    footer .footer-lower p {
      margin: 0;
      color: #898989; }
  footer .hashtag {
    margin-top: 0;
    font-family: "Montserrat", sans-serif;
    text-transform: uppercase;
    font-size: 16px;
    letter-spacing: 3px; }
  footer .social-nav li {
    display: inline-block;
    margin: 10px; }
  footer .social-nav a {
    color: #bebebe; }
  footer form {
    margin-top: 50px;
    padding: 0 25px;
    position: relative; }
    @media only screen and (min-width: 768px) {
      footer form {
        padding: 0; } }
    footer form .gform_heading {
      margin-bottom: 40px;
      color: #fff;
      font-size: 18px; }
    footer form .gform_body {
      width: 250px;
      margin: 0 auto 20px auto; }
      @media only screen and (min-width: 667px) {
        footer form .gform_body {
          width: 300px;
          display: inline-block;
          margin-bottom: 0px;
          padding-right: 6px; } }
    footer form .gform_footer {
      margin: 0 auto;
      width: 250px;
      position: relative; }
      @media only screen and (min-width: 667px) {
        footer form .gform_footer {
          width: 200px;
          display: inline-block; } }
      footer form .gform_footer img {
        position: absolute;
        top: 6px;
        left: 47%;
        height: 25px;
        width: 25px;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%); }
    footer form ul {
      margin: 0;
      padding: 0;
      list-style: none; }
    footer form .ginput_container {
      display: inline-block;
      width: 100%; }
    footer form input {
      border: none;
      line-height: normal;
      outline: none; }
    footer form input[type=email] {
      padding: 10px;
      color: #777;
      border: 2px solid #ffffff;
      font-size: 14px;
      text-transform: lowercase;
      width: 100%; }
    footer form input[type=submit] {
      padding: 10px 0px;
      background-color: transparent;
      border: 2px solid #fff;
      font-family: "Arvo", serif;
      font-size: 14px;
      text-transform: uppercase;
      letter-spacing: 2px;
      width: 100%;
      -webkit-transition: all 0.2s linear;
      -moz-transition: all 0.2s linear;
      transition: all 0.2s linear; }
      footer form input[type=submit]:hover {
        color: #252525;
        background-color: #fff; }
    footer form .validation_error {
      margin-bottom: 20px;
      color: red; }
    footer form .validation_message {
      color: red;
      margin-top: 10px; }
      @media only screen and (min-width: 667px) {
        footer form .validation_message {
          position: absolute; } }
    footer form input.disable {
      background-color: #000;
      color: #000 !important; }
  footer .gform_confirmation_wrapper {
    margin-top: 50px;
    text-transform: lowercase; }

/* Modal Styles ---------------------------
----------------------------------------- */
.modal {
  background-color: #000;
  position: relative;
  top: 0;
  left: 0;
  z-index: 20;
  width: 100%;
  height: 100%;
  display: none;
  padding-top: 50px; }
  @media only screen and (min-width: 768px) {
    .modal {
      position: fixed;
      padding: 30px 0;
      overflow-y: scroll; } }
  .modal .pop-out-wrapper {
    display: table;
    width: 100%;
    height: 100%;
    background-color: #000;
    padding-bottom: 50px; }
    @media only screen and (min-width: 768px) {
      .modal .pop-out-wrapper {
        padding: 0; } }
  .modal img, .modal svg {
    width: 40px;
    display: inline-block;
    margin-bottom: 50px;
    cursor: pointer; }
  .modal .st0 {
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    transition: all 0.2s linear;
    fill: #252525; }
  .modal svg:hover .st0 {
    fill: #ffffff; }
  .modal .st1 {
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    transition: all 0.2s linear;
    fill: #ffffff; }
  .modal svg:hover .st1 {
    fill: #000000; }
  .modal .pop-out-inner {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    padding: 0 20px; }
  .modal h1 {
    font-family: "Montserrat", sans-serif;
    font-size: 22px;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 400;
    color: #fff; }
  .modal .contents {
    max-width: 960px;
    margin: 0 auto; }
  .modal p {
    margin-top: 50px;
    font-size: 17px;
    line-height: 32px; }
  .modal ul {
    padding: 0;
    margin: 0;
    list-style: none;
    margin-top: 30px;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      .modal ul {
        margin-top: 50px;
        text-align: center; } }
  .modal li {
    font-size: 14px;
    width: 32%;
    display: inline-block;
    padding: 5px; }
    @media only screen and (min-width: 768px) {
      .modal li {
        font-size: 40px;
        width: 25%; } }
    .modal li .inner {
      width: 100%;
      background: #252525;
      padding: 5px;
      display: table;
      -webkit-transition: all 0.2s linear;
      -moz-transition: all 0.2s linear;
      transition: all 0.2s linear; }
      .modal li .inner:hover {
        background: #2e2e2e; }
      @media only screen and (min-width: 768px) {
        .modal li .inner {
          padding: 10px; } }
    .modal li h2 {
      letter-spacing: 3px;
      font-size: 17px; }
    .modal li span {
      color: #fff;
      font-size: 10px;
      display: inline-block;
      vertical-align: top;
      font-family: "Montserrat", sans-serif;
      text-transform: uppercase;
      letter-spacing: 2px; }
      @media only screen and (min-width: 768px) {
        .modal li span {
          font-size: 11px; } }
    .modal li a {
      display: table-cell;
      vertical-align: middle;
      width: 100%;
      font-family: "Montserrat", sans-serif;
      color: #fff;
      border: 1px solid #454545;
      padding: 35% 0; }
      @media only screen and (min-width: 768px) {
        .modal li a {
          padding: 30% 0; } }
  .modal .jump-to {
    display: inline-block;
    text-align: center;
    margin: 25px 15px 0;
    padding: 10px 30px;
    font-size: 13px;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #777;
    border: 2px solid #454545; }
    .modal .jump-to:hover {
      opacity: .8; }
  .modal .select-state {
    display: block; }
  .modal .state {
    display: none; }
    .modal .state li {
      width: 100%;
      line-height: normal; }
      @media only screen and (min-width: 768px) {
        .modal .state li {
          width: 33.333%; } }
      .modal .state li .inner {
        height: 0; }
        .modal .state li .inner:hover {
          background: #252525; }
      .modal .state li .inner-wrap {
        border: 1px solid #454545;
        cursor: auto; }
      .modal .state li a {
        display: table;
        padding: 0;
        font-family: "Montserrat", sans-serif;
        text-transform: uppercase;
        letter-spacing: 2px;
        color: #fff;
        font-size: 14px;
        border: none;
        margin-bottom: 7px; }
        .modal .state li a:hover {
          color: #777; }
      .modal .state li img {
        width: 100%;
        height: auto;
        margin: 0;
        opacity: .5; }
      .modal .state li figure {
        position: relative;
        width: 100%;
        background-color: #000; }
        .modal .state li figure span {
          color: #fff; }
      .modal .state li figcaption {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
      .modal .state li .info-wrap {
        display: table;
        width: 100%;
        height: 100%; }
      .modal .state li .info-wrap-two {
        display: table-cell;
        vertical-align: middle;
        text-align: center;
        padding: 5px; }
      .modal .state li .info {
        display: table;
        width: 100%; }
      .modal .state li .td {
        height: 120px;
        vertical-align: middle; }
      .modal .state li h2 {
        color: #fff;
        margin: 0 0 20px; }
      .modal .state li span {
        display: block;
        color: #777;
        font-size: 12px; }
        .modal .state li span .phone {
          color: #fff;
          margin-top: 7px;
          font-size: 14px; }

article h2 {
  text-align: left; }

.hero {
  width: 100%;
  height: 50%; }
  @media only screen and (min-width: 768px) {
    .hero {
      height: 60%;
      padding-top: 0; } }
  .hero .td {
    vertical-align: middle;
    text-align: center; }
  .hero h1 {
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 7px;
    color: #ffffff;
    font-size: 30px; }
    @media only screen and (min-width: 1380px) {
      .hero h1 {
        font-size: 40px; } }

.no-hero {
  height: 50%; }
  .no-hero h1 {
    position: relative;
    left: 0;
    bottom: 0;
    padding-top: 84px; }

#mfb {
  padding-top: 76px; }
  @media only screen and (min-width: 1380px) {
    #mfb {
      padding-top: 103px; } }
  #mfb .td {
    display: block;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      #mfb .td {
        display: table-cell;
        width: 50%; } }
  #mfb .inner {
    padding: 25px; }
    @media only screen and (min-width: 768px) {
      #mfb .inner {
        padding: 0 5% 0 5%; } }
  #mfb div.td {
    font-size: 18px;
    line-height: 44px;
    letter-spacing: 1px;
    background-color: #ffffff;
    vertical-align: middle;
    text-align: center;
    display: table-footer-group; }
    @media only screen and (min-width: 768px) {
      #mfb div.td {
        display: table-cell;
        line-height: 2.3vw;
        font-size: 1vw; } }
  #mfb h1 {
    margin-bottom: 20px;
    text-transform: lowercase; }
  #mfb p {
    margin: 0; }
  #mfb figure {
    width: 50%; }
    #mfb figure img {
      width: 100%;
      height: auto; }

.module-content {
  width: 100%;
  background-color: #ffffff;
  padding: 0;
  border-top: 20px solid #fff;
  border-bottom: 20px solid #fff;
  border-left: 10px solid #fff;
  border-right: 10px solid #fff; }
  .module-content figure {
    margin: 0;
    border-left: 10px solid #fff;
    border-right: 10px solid #fff;
    cursor: pointer; }
    .module-content figure h3 {
      position: absolute;
      bottom: 0;
      z-index: 2;
      color: #fff;
      font-size: 14px;
      margin-bottom: 15px;
      margin-left: 15px;
      margin-right: 15px;
      letter-spacing: 3px;
      text-align: left; }
      @media only screen and (min-width: 768px) {
        .module-content figure h3 {
          font-size: 1.4vw;
          margin-bottom: 25px;
          margin-left: 25px;
          margin-right: 25px; } }
      @media only screen and (min-width: 1200px) {
        .module-content figure h3 {
          font-size: 20px; } }
  .module-content .module-image {
    cursor: auto; }
  .module-content img {
    width: 100%;
    height: auto; }
  .module-content .vid-img {
    width: 100%;
    height: auto;
    position: relative;
    z-index: 1;
    background-color: #000; }
    .module-content .vid-img img {
      -webkit-backface-visibility: hidden;
      -webkit-transition: .2s linear;
      transition: .2s linear;
      position: relative; }
  .module-content figure:hover .vid-img img {
    opacity: .7; }
  .module-content figure:hover .brush-link {
    opacity: .8; }
  .module-content iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .module-content .td {
    position: relative;
    display: block;
    width: 100%;
    vertical-align: middle;
    text-align: center; }
    @media only screen and (min-width: 768px) {
      .module-content .td {
        display: table-cell;
        width: 50%; } }
  .module-content .two-photos img {
    width: 50%;
    float: left; }
  .module-content .caption {
    font-size: 14px;
    padding: 50px 25px;
    padding-left: 7%;
    padding-right: 7%;
    line-height: 28px;
    margin: 0;
    font-family: "Arvo", serif;
    background-color: #f0f0f0;
    border-left: 10px solid #fff;
    border-right: 10px solid #fff; }
    @media only screen and (min-width: 768px) {
      .module-content .caption {
        padding: 20px 4%;
        font-size: 1vw;
        line-height: 3vw; } }
    @media only screen and (min-width: 1024px) {
      .module-content .caption {
        padding: 0px 4%; } }
    @media only screen and (min-width: 1200px) {
      .module-content .caption {
        font-size: 16px; } }
    .module-content .caption h3 {
      font-size: 1.4vw;
      font-size: 16px;
      margin-bottom: 20px; }
      @media only screen and (min-width: 768px) {
        .module-content .caption h3 {
          font-size: 1.4vw; } }
      @media only screen and (min-width: 1200px) {
        .module-content .caption h3 {
          font-size: 20px; } }
    .module-content .caption p {
      margin: 0;
      font-family: "Arvo", serif;
      color: #777; }
    .module-content .caption a {
      display: inline-block;
      margin-top: 20px;
      padding: 15px 30px;
      font-size: 13px;
      text-transform: uppercase;
      letter-spacing: 3px;
      line-height: normal;
      color: #161616;
      border: 2px solid #161616; }
      .module-content .caption a:hover {
        background-color: #161616;
        color: #f0f0f0; }
  .module-content .play-button {
    position: absolute;
    top: 40%;
    z-index: 2;
    width: 100%;
    cursor: pointer; }
    @media only screen and (min-width: 768px) {
      .module-content .play-button {
        top: 43%; } }
    .module-content .play-button img {
      width: 30px;
      height: 30px; }
      @media only screen and (min-width: 768px) {
        .module-content .play-button img {
          width: 50px;
          height: 50px; } }
  .module-content .icon-play {
    vertical-align: middle; }

.image-posts-collage {
  padding: 16px;
  max-width: 1400px;
  margin: 0 auto; }
  .image-posts-collage td {
    display: block;
    width: 100%;
    padding: 10px 0; }
    @media only screen and (min-width: 768px) {
      .image-posts-collage td {
        display: table-cell;
        width: 33.333%;
        vertical-align: top;
        padding: 1.1%; } }
  @media only screen and (min-width: 768px) {
    .image-posts-collage .horizontal {
      width: 66.666%; } }
  .image-posts-collage figure {
    width: 100%;
    padding: 0;
    margin: 0;
    position: relative; }
  .image-posts-collage figcaption {
    position: absolute;
    bottom: 10px;
    left: 10px;
    right: 10px;
    z-index: 1;
    font-size: 20px;
    line-height: 24px;
    letter-spacing: 3px;
    text-align: left;
    background-color: transparent;
    font-family: "Montserrat", sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    color: #ffffff; }
    @media only screen and (min-width: 1024px) {
      .image-posts-collage figcaption {
        bottom: 25px;
        left: 25px;
        right: 25px;
        font-size: 20px;
        line-height: 28px; } }
    .image-posts-collage figcaption:after {
      display: none; }
    .image-posts-collage figcaption a {
      background-color: transparent; }
    .image-posts-collage figcaption .category {
      font-family: "Montserrat", sans-serif;
      text-transform: uppercase;
      font-size: 15px; }
  .image-posts-collage a {
    display: block;
    position: relative;
    width: 100%;
    background-color: #000000;
    color: #ffffff;
    height: 100%;
    overflow: hidden; }
  .image-posts-collage img {
    width: 100%;
    height: auto;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    transition: all 0.2s linear; }
  .image-posts-collage a:hover img {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
    opacity: .7; }
  .image-posts-collage .icon-hashtag {
    color: #ffffff !important; }

.nav-blocks {
  padding: 50px 0 0; }
  @media only screen and (min-width: 768px) {
    .nav-blocks {
      padding: 70px 0 0; } }
  .nav-blocks figure {
    width: 100%;
    padding: 25px 0 0; }
    .nav-blocks figure:first-child {
      padding-top: 0; }
    @media only screen and (min-width: 768px) {
      .nav-blocks figure {
        width: 33.333%;
        float: left;
        padding: 0 20px 30px; } }
    .nav-blocks figure a {
      position: relative;
      overflow: hidden;
      background-color: #000000; }
      .nav-blocks figure a:hover img {
        transform: scale(1.05);
        opacity: .7; }
    .nav-blocks figure img {
      width: 100%;
      height: auto;
      -webkit-transition: all 0.2s linear;
      -moz-transition: all 0.2s linear;
      transition: all 0.2s linear; }
  .nav-blocks figcaption {
    width: 100%;
    padding: 25px;
    text-transform: uppercase;
    letter-spacing: 3px;
    text-align: center;
    background-color: #ffffff;
    position: relative;
    bottom: 0;
    z-index: 2;
    color: #161616; }
    .nav-blocks figcaption:after {
      display: block;
      margin: 10px auto 0;
      content: '';
      width: 50px;
      height: 2px;
      background-color: #161616; }
  .nav-blocks a {
    display: block;
    color: #777; }

#image-row {
  display: none;
  padding: 70px 20px;
  background-color: #f0f0f0; }
  #image-row .block-wrapper {
    margin: 0 -10px; }
  #image-row td {
    vertical-align: top;
    padding: .8%;
    width: 25%; }
  #image-row .horizontal {
    width: 50%; }
  @media only screen and (min-width: 768px) {
    #image-row {
      display: block; }
      #image-row img {
        margin: 0;
        display: block;
        width: 100%;
        height: auto; } }

.post-blocks {
  padding: 50px 0; }
  @media only screen and (min-width: 768px) {
    .post-blocks {
      padding: 80px 0; } }
  .post-blocks article {
    width: 100%;
    margin-top: 20px;
    padding: 0 20px; }
    @media only screen and (min-width: 768px) {
      .post-blocks article {
        margin-top: 40px;
        width: 33.333%;
        float: left;
        width: 33.333%;
        padding: 0 20px; } }
  .post-blocks figure {
    position: relative;
    overflow: hidden;
    background-color: #000; }
    .post-blocks figure a:hover img {
      transform: scale(1.05);
      opacity: .7; }
    .post-blocks figure:hover a {
      color: #fff; }
    .post-blocks figure img {
      -webkit-transition: all 0.2s linear;
      -moz-transition: all 0.2s linear;
      transition: all 0.2s linear; }
  .post-blocks figcaption {
    position: absolute;
    bottom: 25px;
    left: 25px;
    right: 25px;
    font-size: 20px;
    line-height: 26px;
    letter-spacing: 2px;
    font-weight: 700;
    font-family: "Montserrat", sans-serif;
    text-transform: uppercase; }
    .post-blocks figcaption a {
      display: block;
      color: #fff; }
    .post-blocks figcaption span {
      display: inline-block;
      margin-bottom: 5px;
      letter-spacing: 2px; }
  .post-blocks h2 {
    margin: 0; }
  .post-blocks img {
    width: 100%;
    height: auto; }

.prev-next-posts {
  padding-top: 50px;
  text-transform: lowercase;
  text-align: center; }
  .prev-next-posts a {
    display: inline-block;
    padding: 0 20px;
    font-size: 20px; }

article header {
  position: relative;
  z-index: 0;
  width: 100%;
  padding: 50px 25px;
  background-color: #fff;
  text-align: center; }
  article header h1 {
    font-size: 24px;
    text-align: center; }
    @media only screen and (min-width: 768px) {
      article header h1 {
        font-size: 45px; } }
  article header span {
    display: block;
    font-size: 18px;
    text-align: center; }
    article header span a {
      display: inline;
      color: #fff; }

.content {
  padding-top: 25px;
  padding-bottom: 25px; }
  @media only screen and (min-width: 768px) {
    .content {
      padding-top: 45px;
      padding-bottom: 45px; } }
  .content p {
    max-width: 700px;
    margin: 25px auto;
    line-height: 32px; }
  .content a {
    color: #161616;
    text-decoration: none; }
    .content a:hover {
      color: #bbb; }
  .content h1, .content h2, .content h3, .content h4, .content h5, .content h6 {
    max-width: 700px;
    margin: 25px auto;
    margin-bottom: -5px;
    font-weight: 700;
    letter-spacing: 3px; }
  .content h1, .content h2, .content h3, .content h4, .content h5, .content h6 {
    margin-bottom: -5px; }
  .content img {
    width: 100%;
    height: auto; }
  .content .wp-caption {
    width: 100% !important; }
    .content .wp-caption .wp-caption-text {
      font-style: italic;
      margin-top: 10px;
      font-size: 14px; }
      .content .wp-caption .wp-caption-text a {
        color: #bbb;
        text-decoration: underline; }
        .content .wp-caption .wp-caption-text a:hover {
          text-decoration: none; }
  .content blockquote {
    margin-top: 50px;
    margin-bottom: 50px; }
    .content blockquote p {
      color: #161616;
      font-size: 22px;
      line-height: 40px; }
    .content blockquote h4 {
      text-transform: uppercase;
      font-family: "Montserrat", sans-serif;
      margin-top: 16px; }
  .content ul, .content ol {
    line-height: 32px; }

.gallery {
  list-style: none;
  margin: 50px -20px;
  padding: 0; }
  .gallery li {
    float: left;
    width: 50%; }
  .gallery img {
    width: 100%;
    height: auto; }

.signature {
  max-width: 700px;
  margin: 0 auto; }
  @media only screen and (min-width: 768px) {
    .signature .inner-signature-wrapper {
      float: right; } }
  .signature img {
    max-width: 180px; }
  .signature h4 {
    font-family: "Montserrat", sans-serif;
    font-size: 15px;
    text-transform: uppercase;
    color: #161616;
    margin-top: 16px;
    margin-bottom: 5px; }
  .signature h5 {
    font-family: "Montserrat", sans-serif;
    font-size: 15px;
    text-transform: uppercase;
    color: #777;
    margin: 0; }

#quote {
  padding: 50px 25px;
  font-size: 20px;
  text-align: center;
  background-color: #fff; }
  @media only screen and (min-width: 768px) {
    #quote {
      padding: 110px; } }
  #quote blockquote {
    max-width: 700px;
    margin: 0 auto;
    line-height: 44px; }
    #quote blockquote p {
      margin: 0;
      font-family: "Arvo", serif;
      color: #777; }
    #quote blockquote img {
      display: inline-block;
      margin-top: 50px; }

.category {
  font-family: "Montserrat", sans-serif;
  text-transform: uppercase;
  font-size: 15px; }

.text-block {
  padding: 60px 20px 28px;
  text-align: center;
  line-height: 38px;
  font-size: 16px; }

.region-select {
  padding: 25px 20px;
  border-bottom: 1px solid #d9d9d9; }
  @media only screen and (min-width: 768px) {
    .region-select {
      text-align: center; } }
  .region-select .region {
    margin-bottom: 25px; }
    @media only screen and (min-width: 768px) {
      .region-select .region {
        margin: 0;
        display: inline-block; } }
  .region-select .topic {
    margin-bottom: 25px; }
    @media only screen and (min-width: 768px) {
      .region-select .topic {
        margin: 0;
        display: inline-block; } }
  .region-select span {
    width: 25%;
    margin: 0 -4px 0 0px;
    padding-right: 16px;
    display: inline-block;
    font-family: "Montserrat", sans-serif;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px; }
    @media only screen and (min-width: 768px) {
      .region-select span {
        width: auto; } }
  .region-select select {
    width: 75%;
    display: inline-block;
    border: 1px solid #d9d9d9;
    background: #f0f0f0;
    padding: 5px;
    font-size: 14px;
    text-transform: uppercase;
    line-height: 1;
    height: 30px;
    letter-spacing: 3px; }
    @media only screen and (min-width: 768px) {
      .region-select select {
        width: auto;
        margin-right: 30px; } }
  .region-select input[type=submit] {
    margin: 25px auto 0;
    display: block;
    padding: 10px 30px;
    font-family: "Arvo", serif;
    font-size: 13px;
    text-transform: uppercase;
    border: 2px solid #000;
    color: #000;
    width: 100%;
    background-color: transparent;
    line-height: normal;
    letter-spacing: 3px;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    transition: all 0.2s linear; }
    .region-select input[type=submit]:hover {
      background-color: #000;
      color: #fff; }
    @media only screen and (min-width: 768px) {
      .region-select input[type=submit] {
        width: auto; } }
    @media only screen and (min-width: 1024px) {
      .region-select input[type=submit] {
        margin: 0;
        display: inline-block; } }

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

.pagination {
  max-width: 700px;
  margin: 0 auto;
  margin-top: 100px;
  text-align: center;
  position: relative; }
  @media only screen and (min-width: 768px) {
    .pagination {
      margin-top: 60px;
      background-color: #f0f0f0; } }
  .pagination .page-numbers {
    padding: 15px 5px;
    color: #777;
    display: inline-block;
    margin: 0;
    font-family: "Arvo", serif; }
    .pagination .page-numbers:hover {
      color: #5c5c5c; }
  .pagination .current {
    font-weight: 700;
    color: #252525; }
    .pagination .current:hover {
      color: #555; }
  .pagination .prev {
    left: 0; }
  .pagination .next {
    right: 0; }
  .pagination .prev, .pagination .next {
    position: absolute;
    top: -50px;
    display: block;
    width: 50%;
    padding: 15px 25px;
    font-family: "Montserrat", sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 2px;
    background-color: #252525;
    color: #fff; }
    @media only screen and (min-width: 768px) {
      .pagination .prev, .pagination .next {
        width: auto;
        position: absolute;
        top: 0; } }
    .pagination .prev:hover, .pagination .next:hover {
      color: #fff;
      background-color: #000; }

.page .page-template {
  padding-top: 70px;
  padding-bottom: 70px; }
  .page .page-template h2 {
    text-align: left; }

.single-post .hero {
  padding-top: 84px; }
  .single-post .hero .td {
    padding-left: 20px;
    padding-right: 20px; }
  .single-post .hero span {
    font-family: "Montserrat", sans-serif;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 15px;
    margin-top: 20px;
    display: block; }
    .single-post .hero span a {
      color: #fff; }
  .single-post .hero h1 {
    position: relative;
    bottom: auto;
    left: auto;
    margin-top: 5px;
    letter-spacing: 3px;
    font-size: 24px;
    font-weight: 400; }
    @media only screen and (min-width: 768px) {
      .single-post .hero h1 {
        font-size: 34px; } }
  .single-post .hero .button {
    margin-top: 20px;
    margin-bottom: 20px;
    position: relative;
    display: inline-block;
    padding: 15px 30px;
    font-family: "Arvo", serif;
    font-size: 13px;
    letter-spacing: 3px;
    text-transform: uppercase;
    border: 2px solid #fff;
    color: #fff;
    background-color: rgba(225, 225, 225, 0.2); }
    .single-post .hero .button:hover {
      opacity: .5; }
    @media only screen and (min-width: 768px) {
      .single-post .hero .button {
        margin-top: 40px;
        background-color: transparent; } }
.single-post .author {
  background-color: #f0f0f0;
  padding: 25px 20px;
  text-align: center;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  font-size: 13px; }
  .single-post .author p {
    margin: 0;
    letter-spacing: 3px; }
.single-post main {
  background-color: #ffffff; }
.single-post .post-blocks {
  background-color: #f0f0f0; }
  .single-post .post-blocks article {
    margin-bottom: 0; }
.single-post .social-tools {
  display: none;
  padding: 25px 20px;
  margin-bottom: 50px;
  text-align: center;
  background-color: #f0f0f0; }
  @media only screen and (min-width: 768px) {
    .single-post .social-tools {
      display: block; } }
  .single-post .social-tools .share {
    display: inline-block;
    vertical-align: top;
    margin: 0 10px; }
  .single-post .social-tools #___plus_0 {
    vertical-align: middle !important; }

.home .hero {
  background: url("../img/hero-home.jpg") no-repeat center;
  background-size: cover;
  height: 100%; }
  .home .hero h1 {
    position: relative;
    bottom: auto;
    left: auto;
    padding: 0 20px; }
.home #quote {
  padding-top: 14px; }
  @media only screen and (min-width: 768px) {
    .home #quote {
      padding-top: 70px; } }
.home .image-posts-collage figcaption {
  font-size: 20px;
  line-height: 24px; }
  @media only screen and (min-width: 1024px) {
    .home .image-posts-collage figcaption {
      bottom: 25px;
      left: 25px;
      right: 25px;
      font-size: 23px;
      line-height: 30px; } }

.home-nav ul {
  margin: 0;
  padding: 0;
  list-style: none; }
.home-nav li {
  display: inline-block; }
  .home-nav li a {
    display: inline-block;
    vertical-align: top;
    width: 170px;
    height: 36px;
    margin: 30px 15px 0;
    padding-top: 5px;
    font-size: 17px;
    text-decoration: none;
    text-transform: lowercase;
    letter-spacing: 1px;
    background: url("../img/brush-stroke-02.png") no-repeat center;
    color: #777; }
    .home-nav li a:hover {
      opacity: .8; }
  .home-nav li:first-child a {
    display: inline-block;
    vertical-align: top;
    width: 176px;
    height: 38px;
    margin: 30px 15px 0;
    padding-top: 5px;
    font-size: 17px;
    text-decoration: none;
    text-transform: lowercase;
    letter-spacing: 1px;
    background: url("../img/brush-stroke-01.png") no-repeat center;
    color: #777; }

.food #video .caption {
  font-size: 18px;
  padding: 50px 25px;
  padding-left: 7%;
  padding-right: 7%;
  line-height: 44px;
  letter-spacing: 1px; }
  @media only screen and (min-width: 768px) {
    .food #video .caption {
      padding: 0 4%;
      line-height: 2.5vw;
      font-size: 1.2vw; } }

.template-locations article {
  color: #777; }
  .template-locations article a {
    color: #777 !important;
    display: block !important; }
  .template-locations article .td {
    display: block; }
  .template-locations article a.jump-to, .template-locations article img.back, .template-locations article img.close, .template-locations article div.hide, .template-locations article span.close, .template-locations article span.back, .template-locations article figure img {
    display: none !important; }
  .template-locations article h2 {
    text-align: center;
    margin-bottom: 10px; }
.template-locations main {
  background-color: #ffffff;
  text-align: center; }
  .template-locations main .contents {
    padding: 0 25px; }
  .template-locations main header {
    background-color: #ffffff;
    padding-bottom: 0; }
  .template-locations main article {
    padding-bottom: 100px; }
  .template-locations main ul {
    padding: 0;
    margin: 0;
    list-style: none;
    font-family: "Montserrat", sans-serif; }
  .template-locations main li {
    margin-top: 20px; }
    .template-locations main li a {
      display: inline;
      color: #fff; }
      .template-locations main li a:hover {
        text-decoration: underline; }
.template-locations .state {
  margin-top: 50px; }

.single-location .location {
  position: absolute;
  bottom: 20px;
  left: 20px; }
  @media only screen and (min-width: 768px) {
    .single-location .location {
      bottom: 40px;
      left: 40px; } }
  .single-location .location h1 {
    position: relative;
    left: 0;
    bottom: 0; }
  .single-location .location span {
    color: #fff;
    font-family: "Montserrat", sans-serif;
    letter-spacing: 3px;
    text-transform: uppercase; }
.single-location blockquote {
  margin: 0;
  background-color: #fff; }
  .single-location blockquote span {
    display: block;
    color: #fff;
    font-size: 13px; }

#location-details {
  padding: 40px 0;
  background-color: #ffffff; }
  @media only screen and (min-width: 768px) {
    #location-details {
      padding: 80px 20px; } }
  #location-details .table {
    display: block;
    text-align: center;
    border-bottom: none;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      #location-details .table {
        display: table;
        padding: 10px;
        border: 1px solid #bcbcbc; } }
  #location-details .td {
    width: 100%;
    display: block;
    border-top: none;
    font-size: 14px; }
    @media only screen and (min-width: 768px) {
      #location-details .td {
        margin-top: 40px;
        border-top: 1px solid #bcbcbc; } }
    #location-details .td:first-child {
      margin-top: 0; }
    @media only screen and (min-width: 768px) {
      #location-details .td {
        margin-top: 0;
        width: 33.333%;
        display: table-cell;
        vertical-align: top;
        border-right: 1px solid #bcbcbc;
        border-bottom: 1px solid #bcbcbc;
        font-size: 14px; }
        #location-details .td:first-child {
          border-left: 1px solid #bcbcbc; } }
    #location-details .td .table-inner {
      width: 100%;
      height: 100%;
      display: table; }
    #location-details .td .th-inner {
      display: table-cell;
      border-bottom: 1px solid #bcbcbc;
      padding: 15px; }
    #location-details .td .td-inner {
      display: table-cell;
      padding: 20px; }
  #location-details .info address {
    margin-bottom: 5px; }
  #location-details .info h4 {
    margin-bottom: 5px; }
  #location-details .info p {
    line-height: 28px; }
  #location-details .event {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #bcbcbc; }
    #location-details .event p {
      text-transform: uppercase;
      font-family: "Montserrat", sans-serif;
      font-size: 16px;
      margin-bottom: 5px; }
    #location-details .event a {
      position: relative;
      display: inline-block;
      font-size: 16px;
      color: #777; }
      #location-details .event a:hover {
        color: #000; }
  #location-details h3 {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 3px; }
  #location-details p {
    line-height: 22px;
    margin: 0; }
  #location-details span {
    line-height: 22px;
    margin: 0;
    display: block;
    text-transform: uppercase;
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    letter-spacing: 1px; }
  #location-details .arrow {
    display: inline;
    color: #bebebe; }
  #location-details h4 {
    text-transform: uppercase;
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    margin: 20px 0 0;
    letter-spacing: 1px; }
  #location-details address {
    font-style: normal; }
  #location-details hr {
    display: none;
    margin: 20px 0 0;
    border-top: 1px solid #bcbcbc; }
    @media only screen and (min-width: 768px) {
      #location-details hr {
        display: block; } }
  #location-details a {
    position: relative;
    display: inline-block;
    font-size: 16px;
    color: #777; }
    #location-details a:hover {
      color: #000; }
  #location-details .button {
    margin-top: 20px;
    position: relative;
    display: inline-block;
    width: 210px;
    height: 50px;
    padding: 15px;
    font-family: "Arvo", serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 3px;
    border: 2px solid #000;
    color: #000; }
    #location-details .button:hover {
      background-color: #000;
      color: #fff; }
  #location-details .facebook {
    width: 100%;
    text-align: center;
    margin-top: 20px; }
    #location-details .facebook a {
      width: auto;
      display: inline-block;
      vertical-align: middle;
      letter-spacing: 3px;
      color: #8e8e8e;
      text-transform: uppercase; }
      #location-details .facebook a span {
        font-size: 24px;
        display: inline-block;
        vertical-align: middle;
        margin-right: 10px;
        color: #c0bfbf; }
  #location-details .scroll-button {
    display: none; }
    @media only screen and (min-width: 768px) {
      #location-details .scroll-button {
        display: inline-block; } }
  #location-details .menu-button-pdf {
    display: inline-block; }
    @media only screen and (min-width: 768px) {
      #location-details .menu-button-pdf {
        display: none; } }

#menu {
  background-color: #000;
  padding: 25px 20px 70px; }
  @media only screen and (min-width: 768px) {
    #menu {
      padding: 70px 20px; } }
  #menu .food-gallery {
    width: 100%; }
    @media only screen and (min-width: 768px) {
      #menu .food-gallery {
        width: 66.666%;
        float: left;
        margin: 0 -10px;
        padding-right: 20px; } }
    #menu .food-gallery .download-menu {
      margin: 0 10px;
      padding: 20px 0px 20px;
      text-align: center;
      letter-spacing: 2px;
      font-weight: 400;
      font-family: "Montserrat", sans-serif;
      text-transform: uppercase; }
      @media only screen and (min-width: 768px) {
        #menu .food-gallery .download-menu {
          text-align: right;
          border-top: 1px solid #454545; } }
      #menu .food-gallery .download-menu a {
        color: #fff;
        font-size: 15px; }
    @media only screen and (max-width: 768px) and (orientation: landscape) {
      #menu .food-gallery .gallery-inner {
        margin: 0 -10px; } }
    #menu .food-gallery figure {
      width: 100%;
      padding: 20px 0px 0; }
      @media only screen and (max-width: 768px) and (orientation: landscape) {
        #menu .food-gallery figure {
          width: 50%;
          float: left;
          padding: 20px 10px 0; } }
      @media only screen and (min-width: 768px) {
        #menu .food-gallery figure {
          width: 50%;
          float: left;
          padding: 20px 10px 0; } }
      #menu .food-gallery figure img {
        width: 100%;
        height: auto; }
  #menu .profile {
    width: 100%;
    margin-top: 20px;
    background-color: #252525;
    padding: 10px; }
    @media only screen and (min-width: 768px) {
      #menu .profile {
        margin-top: 0;
        width: 33.333%;
        float: right; } }
    #menu .profile .profile-inner {
      border: 1px solid #454545; }
    @media only screen and (max-width: 768px) and (orientation: landscape) {
      #menu .profile figure {
        width: 50%;
        float: left;
        padding: 0 10px 10px 0;
        margin-right: 10px; } }
    #menu .profile img {
      width: 100%;
      height: auto; }
    #menu .profile .article-content {
      padding: 30px;
      font-size: 14px; }
    #menu .profile h3 {
      font-size: 20px;
      color: #fff;
      letter-spacing: 3px;
      font-weight: 400; }
    #menu .profile h4 {
      letter-spacing: 2px;
      font-weight: 400;
      font-family: "Montserrat", sans-serif;
      font-size: 15px;
      text-transform: uppercase; }
    #menu .profile p {
      color: #b8b8b8;
      line-height: 28px; }

.wine {
  font-size: 15px; }
  .wine .form {
    padding: 0 20px; }
    .wine .form .gform_wrapper {
      background-color: #252525;
      padding: 40px 0px; }
      @media only screen and (min-width: 768px) {
        .wine .form .gform_wrapper {
          padding: 80px 0px; } }
    .wine .form form {
      max-width: 490px;
      margin: 0 auto;
      padding: 0 25px;
      position: relative;
      text-align: center; }
      @media only screen and (min-width: 768px) {
        .wine .form form {
          padding: 0; } }
      .wine .form form .gform_heading {
        margin-bottom: 30px;
        color: #c0bfbf;
        font-size: 16px;
        line-height: 36px; }
        .wine .form form .gform_heading h3 {
          color: #fff;
          margin: 0 0 25px;
          letter-spacing: 3px;
          font-size: 20px; }
      .wine .form form .gform_body {
        margin: 0 auto 20px auto; }
        @media only screen and (min-width: 667px) {
          .wine .form form .gform_body {
            width: 255px;
            display: inline-block;
            margin-bottom: 0px;
            padding-right: 6px; } }
        @media only screen and (min-width: 768px) {
          .wine .form form .gform_body {
            width: 300px; } }
      .wine .form form .gform_footer {
        margin: 0 auto 20px auto;
        position: relative; }
        @media only screen and (min-width: 667px) {
          .wine .form form .gform_footer {
            margin: 0;
            width: 180px;
            display: inline-block; } }
        .wine .form form .gform_footer img {
          display: none; }
      .wine .form form ul {
        margin: 0;
        padding: 0;
        list-style: none; }
      .wine .form form .ginput_container {
        display: inline-block;
        width: 100%; }
      .wine .form form input {
        border: none;
        line-height: normal;
        outline: none; }
      .wine .form form input[type=email] {
        padding: 10px;
        color: #777;
        border: 2px solid #ffffff;
        font-size: 14px;
        text-transform: lowercase;
        width: 100%; }
      .wine .form form input[type=submit] {
        padding: 10px 0px;
        background-color: transparent;
        border: 2px solid #fff;
        font-family: "Arvo", serif;
        font-size: 14px;
        text-transform: uppercase;
        letter-spacing: 2px;
        width: 100%;
        color: #fff;
        -webkit-transition: all 0.2s linear;
        -moz-transition: all 0.2s linear;
        transition: all 0.2s linear; }
        .wine .form form input[type=submit]:hover {
          color: #252525;
          background-color: #fff; }
      .wine .form form .validation_error {
        margin-bottom: 20px;
        color: red; }
      .wine .form form .validation_message {
        color: red;
        margin-top: 10px; }
        @media only screen and (min-width: 667px) {
          .wine .form form .validation_message {
            position: absolute; } }
      .wine .form form input.disable {
        background-color: #000;
        color: #000 !important; }
    .wine .form .gform_confirmation_wrapper {
      background-color: #252525;
      color: #c0bfbf;
      padding: 70px 20px;
      text-align: center; }

.culture main,
.archive main {
  padding: 25px 0; }
  @media only screen and (min-width: 768px) {
    .culture main,
    .archive main {
      padding: 50px 0; } }
.culture h1,
.archive h1 {
  font-size: 24px !important; }
  @media only screen and (min-width: 768px) {
    .culture h1,
    .archive h1 {
      font-size: 32px !important; } }
.culture .post-blocks,
.archive .post-blocks {
  padding: 0; }

.category-nav {
  border-bottom: 1px solid #d9d9d9;
  text-align: center;
  display: none; }
  @media only screen and (max-device-width: 768px) {
    .category-nav {
      display: none; } }
  @media only screen and (min-width: 768px) {
    .category-nav {
      display: block; } }
  @media only screen and (min-width: 1024px) {
    .category-nav {
      text-align: center; } }
  .category-nav ul {
    position: relative;
    margin: 0 10px;
    padding: 0;
    list-style: none; }
    @media only screen and (min-width: 1024px) {
      .category-nav ul {
        margin: 0; } }
  .category-nav li {
    margin: 0 10px;
    padding: 20px 0 15px; }
    @media only screen and (min-width: 768px) {
      .category-nav li {
        margin: 0 30px;
        padding: 25px 0 20px;
        display: inline-block; } }
  .category-nav a {
    display: block;
    color: #777;
    text-transform: uppercase;
    font-family: "Montserrat", sans-serif;
    font-size: 13px;
    letter-spacing: 2px;
    padding-bottom: 5px;
    border-bottom: 2px solid transparent; }
    .category-nav a:hover {
      border-bottom: 2px solid #d9d9d9; }
  .category-nav .current-menu-item a {
    border-bottom: 2px solid #d9d9d9; }

.menu-category-navigation-container {
  padding: 25px 20px 0; }
  .menu-category-navigation-container select {
    width: 100%;
    display: inline-block;
    border: 1px solid #d9d9d9;
    background: #f0f0f0;
    padding: 5px;
    font-size: 14px;
    text-transform: uppercase;
    line-height: 1;
    height: 30px;
    letter-spacing: 3px; }
  @media only screen and (min-width: 768px) {
    .menu-category-navigation-container {
      margin: 0 30px;
      padding: 25px 0 20px;
      display: none; } }

.private-events {
  font-size: 15px; }

.error404 .page-template {
  padding-top: 76px;
  background-color: #ffffff; }
  @media only screen and (min-width: 1380px) {
    .error404 .page-template {
      padding-top: 84px; } }
  .error404 .page-template section {
    position: relative;
    z-index: 0;
    width: 100%;
    padding: 50px 25px;
    text-align: center; }
    .error404 .page-template section h1 {
      font-size: 24px;
      text-align: center;
      font-weight: 400; }
      @media only screen and (min-width: 768px) {
        .error404 .page-template section h1 {
          font-size: 45px; } }
    .error404 .page-template section span {
      display: inline-block;
      font-size: 18px;
      text-align: center; }
      .error404 .page-template section span a {
        display: inline;
        color: #fff; }
    .error404 .page-template section .article-contents {
      padding: 40px 25px;
      line-height: 30px; }
      @media only screen and (min-width: 768px) {
        .error404 .page-template section .article-contents {
          padding: 40px 0px; } }
      .error404 .page-template section .article-contents span {
        display: block;
        text-align: center;
        margin-bottom: 35px;
        color: #fff; }
      .error404 .page-template section .article-contents a {
        display: inline;
        color: #fff; }
    .error404 .page-template section figure {
      margin: 25px -25px; }
      @media only screen and (min-width: 768px) {
        .error404 .page-template section figure {
          margin: 25px 0; } }
      .error404 .page-template section figure img {
        width: 100%;
        height: auto; }
    .error404 .page-template section figcaption {
      margin-top: 15px;
      padding: 0 25px;
      font-size: 14px;
      color: #fff; }
      @media only screen and (min-width: 768px) {
        .error404 .page-template section figcaption {
          padding: 0; } }
    .error404 .page-template section h4 {
      margin-top: 25px;
      font-size: 18px; }
    .error404 .page-template section p {
      font-family: "Montserrat", sans-serif;
      color: #000000;
      display: block; }
  .error404 .page-template #categories {
    background-color: #fff; }
    .error404 .page-template #categories figure {
      margin: 0; }
    .error404 .page-template #categories span {
      display: inline-block;
      margin-bottom: 0; }

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