@charset "UTF-8";
/* Styles  ------------------------------------------------------------------------------------ */
@import url("https://use.typekit.net/vai0rhb.css");
/* Partials  ------------------------------------------------------------------------------------ */
/* Icons ------------------------------------------------------------------------------------ */
h3.check.icon:before, a.check.button.icon:before, h3.close.icon:before, a.close.button.icon:before, a.button.icon:after, .cart-item button.remove-cart:after, #filter-close:before, h3.contact.icon:before, a.contact.button.icon:before, h3.doc.icon:before, a.doc.button.icon:before, h3.down.icon:before, a.down.button.icon:before, h3.email.icon:before, a.email.button.icon:before, h3.grid.icon:before, a.grid.button.icon:before, h3.home.icon:before, a.home.button.icon:before, h3.list.icon:before, a.list.button.icon:before, h3.location.icon:before, a.location.button.icon:before, #widget-footer .contact_info div.address:after, h3.menu.icon:before, a.menu.button.icon:before, h3.minus.icon:before, a.minus.button.icon:before, h3.news.icon:before, a.news.button.icon:before, h3.next.icon:before, a.next.button.icon:before, .owl-next:after, h3.phone.icon:before, a.phone.button.icon:before, #widget-footer .contact_info div.phone:after, h3.play.icon:before, a.play.button.icon:before, h3.plus.icon:before, a.plus.button.icon:before, button.cart-toggle:after, .drop_menu a.sb_button:after, h3.prev.icon:before, a.prev.button.icon:before, .owl-prev:after, h3.quote.icon:before, a.quote.button.icon:before, h3.search.icon:before, a.search.button.icon:before, h3.settings.icon:before, a.settings.button.icon:before, #filter-toggle:after, h3.shop.icon:before, a.shop.button.icon:before, a.cart-link:after, h3.up.icon:before, a.up.button.icon:before, h3.user.icon:before, a.user.button.icon:before {
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%; }

h3.check.icon:before, a.check.button.icon:before {
  -webkit-mask-image: url(../links/icons/check.svg);
  mask-image: url(../links/icons/check.svg); }

h3.close.icon:before, a.close.button.icon:before, a.button.icon:after, .cart-item button.remove-cart:after, #filter-close:before {
  -webkit-mask-image: url(../links/icons/close.svg);
  mask-image: url(../links/icons/close.svg); }

h3.contact.icon:before, a.contact.button.icon:before {
  -webkit-mask-image: url(../links/icons/contact.svg);
  mask-image: url(../links/icons/contact.svg); }

h3.doc.icon:before, a.doc.button.icon:before {
  -webkit-mask-image: url(../links/icons/doc.svg);
  mask-image: url(../links/icons/doc.svg); }

h3.down.icon:before, a.down.button.icon:before {
  -webkit-mask-image: url(../links/icons/down.svg);
  mask-image: url(../links/icons/down.svg); }

h3.email.icon:before, a.email.button.icon:before {
  -webkit-mask-image: url(../links/icons/email.svg);
  mask-image: url(../links/icons/email.svg); }

h3.grid.icon:before, a.grid.button.icon:before {
  -webkit-mask-image: url(../links/icons/grid.svg);
  mask-image: url(../links/icons/grid.svg); }

h3.home.icon:before, a.home.button.icon:before {
  -webkit-mask-image: url(../links/icons/home.svg);
  mask-image: url(../links/icons/home.svg); }

h3.list.icon:before, a.list.button.icon:before {
  -webkit-mask-image: url(../links/icons/list.svg);
  mask-image: url(../links/icons/list.svg); }

h3.location.icon:before, a.location.button.icon:before, #widget-footer .contact_info div.address:after {
  -webkit-mask-image: url(../links/icons/location.svg);
  mask-image: url(../links/icons/location.svg); }

h3.menu.icon:before, a.menu.button.icon:before {
  -webkit-mask-image: url(../links/icons/menu.svg);
  mask-image: url(../links/icons/menu.svg); }

h3.minus.icon:before, a.minus.button.icon:before {
  -webkit-mask-image: url(../links/icons/minus.svg);
  mask-image: url(../links/icons/minus.svg); }

h3.news.icon:before, a.news.button.icon:before {
  -webkit-mask-image: url(../links/icons/news.svg);
  mask-image: url(../links/icons/news.svg); }

h3.next.icon:before, a.next.button.icon:before, .owl-next:after {
  -webkit-mask-image: url(../links/icons/next.svg);
  mask-image: url(../links/icons/next.svg); }

h3.phone.icon:before, a.phone.button.icon:before, #widget-footer .contact_info div.phone:after {
  -webkit-mask-image: url(../links/icons/phone.svg);
  mask-image: url(../links/icons/phone.svg); }

h3.play.icon:before, a.play.button.icon:before {
  -webkit-mask-image: url(../links/icons/play.svg);
  mask-image: url(../links/icons/play.svg); }

h3.plus.icon:before, a.plus.button.icon:before, button.cart-toggle:after, .drop_menu a.sb_button:after {
  -webkit-mask-image: url(../links/icons/plus.svg);
  mask-image: url(../links/icons/plus.svg); }

h3.prev.icon:before, a.prev.button.icon:before, .owl-prev:after {
  -webkit-mask-image: url(../links/icons/prev.svg);
  mask-image: url(../links/icons/prev.svg); }

h3.quote.icon:before, a.quote.button.icon:before {
  -webkit-mask-image: url(../links/icons/quote.svg);
  mask-image: url(../links/icons/quote.svg); }

h3.search.icon:before, a.search.button.icon:before {
  -webkit-mask-image: url(../links/icons/search.svg);
  mask-image: url(../links/icons/search.svg); }

h3.settings.icon:before, a.settings.button.icon:before, #filter-toggle:after {
  -webkit-mask-image: url(../links/icons/settings.svg);
  mask-image: url(../links/icons/settings.svg); }

h3.shop.icon:before, a.shop.button.icon:before, a.cart-link:after {
  -webkit-mask-image: url(../links/icons/shop.svg);
  mask-image: url(../links/icons/shop.svg); }

h3.up.icon:before, a.up.button.icon:before {
  -webkit-mask-image: url(../links/icons/up.svg);
  mask-image: url(../links/icons/up.svg); }

h3.user.icon:before, a.user.button.icon:before {
  -webkit-mask-image: url(../links/icons/user.svg);
  mask-image: url(../links/icons/user.svg); }

h3.icon:before, a.button.icon:before {
  background-color: #000; }

/* Text ------------------------------------------------------------------------------------ */
h1, h2, h3, a.wp-block-button__link, a.button, h1.is-style-underline, h2.is-style-underline, h3.is-style-underline, h4.is-style-underline, h5.is-style-underline, h6.is-style-underline, figure.wp-block-pullquote.is-style-solid-color blockquote p, a.product_thumb .title, #filter-toggle, .drop_menu a.sb_button, ul#subpages li a, #breadcrumbs li a,
#breadcrumbs li span, #top .post_title, .banner_container section.content .banner_title,
.banner_container section.content .banner_headline, #widget-footer #footer_menu ul li a, #footer ul.menu li a, #thumbnails a, a.cart-link {
  font-family: "bebas-neue-pro", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .05em; }

h1, h2, h3 {
  color: #000;
  line-height: 1.25em; }
  h1.has-x-large-font-size, h2.has-x-large-font-size, h3.has-x-large-font-size {
    font-size: 3em !important; }
  h1.has-large-font-size, h2.has-large-font-size, h3.has-large-font-size {
    font-size: 2.25em !important; }
  h1.has-medium-font-size, h2.has-medium-font-size, h3.has-medium-font-size {
    font-size: 2em !important; }
  h1.has-small-font-size, h2.has-small-font-size, h3.has-small-font-size {
    font-size: 1.75em !important; }

h1 {
  font-size: 2.25em; }

h2 {
  font-size: 2em; }

h3 {
  font-size: 1.75em; }

h4, h5, h6 {
  font-size: 1.2em;
  line-height: 1.4em;
  font-weight: 600;
  letter-spacing: -.25px; }

h3.icon {
  font-size: 1.5em;
  line-height: 2em; }
  h3.icon:before {
    content: '';
    display: inline-block;
    vertical-align: bottom;
    margin: .25em;
    width: 1.5em;
    height: 1.5em;
    background-color: #fff; }

.dark h1, .dark h2, .dark h3, .dark h4, .dark h5, .dark h6 {
  color: #fff; }

/* Images ------------------------------------------------------------------------------------ */
@media all and (min-device-width: 1025px) {
  .wp-block-image a:before, .wp-block-gallery ul.blocks-gallery-grid li.blocks-gallery-item figure a:before, .wp-block-media-text figure.wp-block-media-text__media a:before, .post_thumb a.image:before {
    content: '';
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-radius: 0.4rem; }
  .wp-block-image a:after, .wp-block-gallery ul.blocks-gallery-grid li.blocks-gallery-item figure a:after, .wp-block-media-text figure.wp-block-media-text__media a:after, .post_thumb a.image:after {
    content: "View";
    display: block;
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    width: 100px;
    height: 20px;
    padding: 70px 0 0;
    margin-top: -45px;
    margin-left: -50px;
    color: #fff;
    font-size: 20px;
    line-height: 20px;
    font-family: "bebas-neue-pro", sans-serif;
    font-weight: 800;
    font-style: italic;
    text-transform: uppercase;
    text-align: center;
    text-decoration: none !important;
    background-image: url("../links/view.svg");
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 80px 80px;
    opacity: 0;
    visibility: hidden;
    transform: scale(0.8, 0.8); }
  .wp-block-image a:hover:before, .wp-block-gallery ul.blocks-gallery-grid li.blocks-gallery-item figure a:hover:before, .wp-block-media-text figure.wp-block-media-text__media a:hover:before, .post_thumb a.image:hover:before {
    background-color: rgba(229, 200, 122, 0.8); }
  .wp-block-image a:hover:after, .wp-block-gallery ul.blocks-gallery-grid li.blocks-gallery-item figure a:hover:after, .wp-block-media-text figure.wp-block-media-text__media a:hover:after, .post_thumb a.image:hover:after {
    opacity: 1;
    visibility: visible;
    transform: scale(1, 1); } }

.wp-block-image img, .wp-block-gallery ul.blocks-gallery-grid li.blocks-gallery-item figure img, .wp-block-media-text figure.wp-block-media-text__media img {
  display: block;
  position: relative;
  width: auto;
  max-width: 100%;
  height: auto;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0.4rem !important;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2); }

.wp-block-image a, .wp-block-gallery ul.blocks-gallery-grid li.blocks-gallery-item figure a, .wp-block-media-text figure.wp-block-media-text__media a {
  display: block;
  position: relative;
  margin: 0 !important;
  padding: 0 !important;
  vertical-align: bottom; }

.wp-block-image figcaption.wp-element-caption, figure.wp-block-embed figcaption {
  display: block;
  margin: .5rem 0n 1rem !important;
  padding: 0 !important;
  color: #000;
  font-size: .8em;
  font-weight: 600;
  line-height: 1.33em;
  text-align: center; }

/* Formatting ------------------------------------------------------------------------------------ */
hr.wp-block-separator, hr {
  display: block;
  max-width: 80px;
  height: 4px;
  margin: 2em auto;
  background-color: #e5c87a;
  border-radius: 2px;
  border: none;
  outline: none;
  appearance: none;
  clear: both; }

/* Buttons  ------------------------------------------------------------------------------------ */
a.wp-block-button__link, a.button {
  display: inline-block;
  vertical-align: bottom;
  padding: .4rem 2rem;
  font-size: 1.1em;
  line-height: 2em;
  color: #000 !important;
  text-decoration: none;
  background-color: transparent;
  border: solid 3px #e5c87a;
  border-radius: 0.2rem; }
  @media screen and (min-device-width: 1025px) {
    a.wp-block-button__link:hover, a.button:hover {
      background-color: #e5c87a; } }

a.button.icon {
  position: relative;
  padding-left: 3em; }
  a.button.icon:before, a.button.icon:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 1em;
    margin-top: -.75em;
    width: 1.5em;
    height: 1.5em;
    background-color: #000; }
  a.button.icon:before {
    display: block; }
  a.button.icon:after {
    display: none; }

.dark a.wp-block-button__link, a.button.dark, .dark a.button {
  color: #fff !important; }

@keyframes pulse {
  0% {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0; }
  10% {
    opacity: 1; }
  100% {
    opacity: 0;
    top: -1rem;
    right: -1rem;
    bottom: -1rem;
    left: -1rem; } }
/* Social buttons  ------------------------------------------------------------------------------------ */
a.social_button {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  font-size: 50px;
  height: 1em;
  padding-left: 1em;
  border-radius: 0.2rem; }
  a.social_button span {
    display: none; }
  a.social_button svg {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 1em;
    height: 1em;
    fill: #e5c87a; }
  @media all and (min-device-width: 1025px) {
    a.social_button:hover {
      background-color: #373634; } }

/* Colors  ------------------------------------------------------------------------------------ */
.has-black-color {
  color: #000; }
  .has-black-color h1, .has-black-color h2, .has-black-color h3, .has-black-color h4, .has-black-color h5, .has-black-color h6 {
    color: #000; }

.has-black-background-color {
  background-color: #000; }

.has-dark-color {
  color: #1c1b1a; }
  .has-dark-color h1, .has-dark-color h2, .has-dark-color h3, .has-dark-color h4, .has-dark-color h5, .has-dark-color h6 {
    color: #1c1b1a; }

.has-dark-background-color {
  background-color: #1c1b1a; }

.has-primary-color {
  color: #373634; }
  .has-primary-color h1, .has-primary-color h2, .has-primary-color h3, .has-primary-color h4, .has-primary-color h5, .has-primary-color h6 {
    color: #373634; }

.has-primary-background-color {
  background-color: #373634; }

.has-accent-color {
  color: #e5c87a; }
  .has-accent-color h1, .has-accent-color h2, .has-accent-color h3, .has-accent-color h4, .has-accent-color h5, .has-accent-color h6 {
    color: #e5c87a; }

.has-accent-background-color {
  background-color: #e5c87a; }

.has-light-color {
  color: #d2d1cd; }
  .has-light-color h1, .has-light-color h2, .has-light-color h3, .has-light-color h4, .has-light-color h5, .has-light-color h6 {
    color: #d2d1cd; }

.has-light-background-color {
  background-color: #d2d1cd; }

.has-white-color {
  color: #fff; }
  .has-white-color h1, .has-white-color h2, .has-white-color h3, .has-white-color h4, .has-white-color h5, .has-white-color h6 {
    color: #fff; }

.has-white-background-color {
  background-color: #fff; }

/* Text  ------------------------------------------------------------------------------------ */
h1.is-style-underline, h2.is-style-underline, h3.is-style-underline, h4.is-style-underline, h5.is-style-underline, h6.is-style-underline {
  font-size: 1.4em;
  padding-bottom: .5rem;
  border-bottom: solid 3px #e5c87a; }

/* Buttons  ------------------------------------------------------------------------------------ */
.wp-block-buttons {
  margin: 1.25rem 0 !important; }

.wp-block-button.is-style-small {
  font-size: .67em; }

/* Separator  ------------------------------------------------------------------------------------ */
/* Quote  ------------------------------------------------------------------------------------ */
blockquote.wp-block-quote {
  margin: 2rem 0;
  padding-left: 1em;
  border-left: solid 4px #e5c87a; }
  blockquote.wp-block-quote p {
    font-size: 1rem;
    font-style: normal; }
  blockquote.wp-block-quote cite {
    font-size: .8rem;
    font-weight: 600; }
  blockquote.wp-block-quote.is-style-large {
    margin: 2em 0;
    padding-left: 1em;
    border-left: solid 4px #e5c87a; }
    blockquote.wp-block-quote.is-style-large p {
      font-size: 1.25rem;
      font-style: normal; }
    blockquote.wp-block-quote.is-style-large cite {
      font-size: 1rem;
      font-weight: 600; }

/* Pullquote  ------------------------------------------------------------------------------------ */
figure.wp-block-pullquote {
  position: relative;
  font-size: 1em;
  margin: 4rem 0;
  padding: 0;
  border-top: solid 4px #e5c87a;
  border-bottom: solid 4px #e5c87a; }
  figure.wp-block-pullquote blockquote {
    max-width: 800px;
    margin: 1em auto;
    padding: 2em; }
    figure.wp-block-pullquote blockquote p {
      font-size: 1.25em;
      font-style: normal;
      margin: 1rem 0; }
    figure.wp-block-pullquote blockquote cite {
      font-size: .9rem;
      font-weight: 600;
      font-style: normal;
      text-transform: uppercase;
      margin: 1rem 0; }
  figure.wp-block-pullquote.is-style-solid-color {
    background-color: #373634;
    border: none;
    border-radius: 0.4rem; }
    figure.wp-block-pullquote.is-style-solid-color.fullwidth {
      border-radius: 0; }
    figure.wp-block-pullquote.is-style-solid-color blockquote {
      padding: 5em 2em;
      color: #fff; }
      figure.wp-block-pullquote.is-style-solid-color blockquote p {
        font-size: 2em;
        line-height: 1.4em;
        margin: 1rem 0 !important; }
      figure.wp-block-pullquote.is-style-solid-color blockquote cite {
        font-size: 1em;
        font-weight: 600;
        margin: 1rem 0 !important; }
      figure.wp-block-pullquote.is-style-solid-color blockquote em {
        color: #e5c87a; }

/* Columns/Groups  ------------------------------------------------------------------------------------ */
.wp-block-columns {
  margin: 1.5rem 0 !important; }
  .wp-block-columns.has-background {
    border-radius: 0.4rem; }
  .wp-block-columns .wp-block-column.has-background {
    border-radius: 0.4rem; }
  .wp-block-columns .wp-block-columns {
    margin: 0 !important; }

.wp-block-group.has-background {
  border-radius: 0.4rem; }
.wp-block-group.is-style-fullwidth {
  position: relative;
  width: 100vw;
  padding: 2em 0;
  margin-left: calc(50% - 50vw) !important;
  border-radius: 0 !important; }
  .wp-block-group.is-style-fullwidth:first-child {
    margin-top: -1em !important; }
  .wp-block-group.is-style-fullwidth:last-child {
    margin-bottom: -1em !important; }
.wp-block-group .wp-block-group__inner-container {
  max-width: 1240px;
  margin: 0 auto;
  padding: 1em; }

/* Verse  ------------------------------------------------------------------------------------ */
/* Accordion  ------------------------------------------------------------------------------------ */
.wp-block-accordion .wp-block-accordion-item {
  margin: 1rem 0;
  background-color: #f0efee;
  border-radius: 0.4rem;
  overflow: hidden; }
  .wp-block-accordion .wp-block-accordion-item h3.wp-block-accordion-heading {
    margin: 0;
    padding: .5rem 1rem;
    font-size: 2em;
    -webkit-transition: all 200ms;
    transition: all 200ms; }
    .wp-block-accordion .wp-block-accordion-item h3.wp-block-accordion-heading .wp-block-accordion-heading__toggle-title {
      text-decoration: none !important; }
    .wp-block-accordion .wp-block-accordion-item h3.wp-block-accordion-heading .wp-block-accordion-heading__toggle-icon {
      font-style: normal !important; }
    .wp-block-accordion .wp-block-accordion-item h3.wp-block-accordion-heading:hover {
      background-color: #d2d1cd; }
  .wp-block-accordion .wp-block-accordion-item .wp-block-accordion-panel {
    margin-top: 0;
    padding: 1rem;
    -webkit-transition: all 200ms;
    transition: all 200ms; }
  .wp-block-accordion .wp-block-accordion-item.is-open h3.wp-block-accordion-heading {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0; }

/* Image  ------------------------------------------------------------------------------------ */
.wp-block-image {
  position: relative;
  margin-left: 0;
  margin-right: 0; }
  @media all and (min-width: 720px) {
    .wp-block-image .alignright,
    .wp-block-image .alignleft {
      max-width: 60%; } }
  @media all and (max-width: 720px) {
    .wp-block-image .alignright,
    .wp-block-image .alignleft {
      float: none !important;
      margin: 0 auto !important; } }
  .wp-block-image.is-style-icon img {
    border: none;
    border-radius: none;
    box-shadow: none;
    max-width: 180px;
    height: auto; }
  .wp-block-image.is-style-border:before {
    content: '';
    position: absolute;
    top: .8em;
    bottom: .8em;
    right: -.8em;
    left: -.8em;
    border: solid 3px #e5c87a;
    border-radius: 0.4rem; }
  .wp-block-image.is-style-none img {
    border: none;
    border-radius: none;
    box-shadow: none; }

/* Gallery ------------------------------------------------------------------------------------ */
.wp-block-gallery {
  margin: 2rem 0;
  padding: 0; }
  .wp-block-gallery ul.blocks-gallery-grid {
    margin: 0;
    padding: 0; }
    .wp-block-gallery ul.blocks-gallery-grid li.blocks-gallery-item {
      margin: 0;
      padding: 0; }
      .wp-block-gallery ul.blocks-gallery-grid li.blocks-gallery-item figure figcaption {
        color: #fff !important; }

/* Media & Text ------------------------------------------------------------------------------------ */
.wp-block-media-text {
  margin: 2rem 0;
  padding: 0; }
  .wp-block-media-text .wp-block-media-text__content p {
    line-height: 1.2; }

/* Embed ------------------------------------------------------------------------------------ */
figure.wp-block-embed {
  margin: 2rem 0;
  padding: 0; }
  figure.wp-block-embed .wp-block-embed__wrapper {
    margin: 0;
    padding: 0;
    background-color: transparent; }
    figure.wp-block-embed .wp-block-embed__wrapper:before {
      padding-top: 0 !important; }
    figure.wp-block-embed .wp-block-embed__wrapper iframe {
      margin: 0;
      padding: 0;
      border: none;
      outline: none;
      box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2); }
  figure.wp-block-embed.is-type-video .wp-block-embed__wrapper {
    position: relative;
    width: 100%;
    padding-top: 56%; }
    figure.wp-block-embed.is-type-video .wp-block-embed__wrapper iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }

/* Tables ------------------------------------------------------------------------------------ */
.wp-block-table {
  margin: 1rem 0;
  padding: 0; }
  .wp-block-table table {
    font-size: .8em;
    line-height: 1.4;
    border-collapse: collapse; }
  .wp-block-table table, .wp-block-table thead, .wp-block-table tbody, .wp-block-table th, .wp-block-table td {
    margin: 0;
    border: none; }
  .wp-block-table thead tr {
    vertical-align: middle; }
    .wp-block-table thead tr th {
      padding: .6rem .8rem;
      color: #fff;
      font-size: .8em;
      line-height: 1.2;
      font-weight: 600;
      text-align: left;
      background-color: #e5c87a;
      border: solid 2px #ceb46e; }
      .wp-block-table thead tr th:first-child {
        border-top-left-radius: 0.2rem; }
      .wp-block-table thead tr th:last-child {
        border-top-right-radius: 0.2rem; }
  .wp-block-table tbody tr {
    vertical-align: top; }
    .wp-block-table tbody tr td {
      padding: .8rem;
      border: solid 2px #d2d1cd; }
  .wp-block-table figcaption.wp-element-caption {
    margin: 0;
    padding: .8rem;
    font-size: .8em;
    opacity: .5; }

/* Body ------------------------------------------------------------------------------------ */
html {
  height: 100%; }

body {
  height: 100%;
  margin: 0;
  padding: 0;
  background-color: #1c1b1a; }

body.dark {
  background-color: #1c1b1a; }

/* Copy ------------------------------------------------------------------------------------ */
html {
  font-size: 20px;
  line-height: 1.75; }

@media all and (max-width: 1025px) {
  html {
    font-size: 16px; } }
body, input, textarea {
  color: #000;
  font-family: "futura-pt", sans-serif;
  font-weight: 400;
  -webkit-font-smoothing: subpixel-antialiased; }

.dark, .dark input, .dark textarea {
  color: #fff; }

strong {
  font-weight: 600; }

sub, sup {
  font-size: .5em;
  line-height: 0; }

sub {
  vertical-align: sub; }

sup {
  vertical-align: super; }

/* Margins */
p, ul, ol, h1, h2, h3, h4, h5, h6 {
  margin: 1rem 0; }

/* Links */
a {
  cursor: pointer;
  color: #000;
  text-decoration: underline; }

a:hover {
  color: #e5c87a; }

.dark a {
  color: #fff; }

.dark a:hover {
  color: #e5c87a; }

/* Buttons */
/* Lists */
ul, ol {
  padding-left: 1.5em; }

li ul, li ol {
  margin: 0 0 .25rem; }

/* Dividers */
hr.clearall {
  max-width: 100%;
  height: 0;
  margin: 0;
  background-color: transparent !important; }

/* Forms */
input {
  font-size: 1em; }

textarea {
  font-size: 1em;
  resize: none; }

/* Transitions */
a, a *, :before, :after, input, textarea {
  -webkit-transform-style: preserve-3d;
  -webkit-transition: all 200ms;
  transition: all 200ms; }

/* Containers ------------------------------------------------------------------------------------ */
.container {
  position: relative;
  max-width: 100%;
  margin: 0 auto;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }

.dark .container,
.container.dark {
  background-color: #373634; }

.fullwidth {
  position: relative;
  width: 100vw;
  margin-left: calc(50% - 50vw) !important; }

section.content {
  position: relative;
  max-width: 1240px;
  margin: 0 auto;
  padding: 1rem; }

.padding {
  padding: 1rem; }

/* Floating ------------------------------------------------------------------------------------ */
.half, .twothird, .third, .quarter, .threequarter {
  float: left;
  width: 100%; }

@media all and (min-width: 720px) {
  .half {
    width: 50%; }

  .twothird {
    width: 67%; }

  .third {
    width: 33%; }

  .quarter {
    width: 25%; }

  .threequarter {
    width: 75%; } }
.floatleft {
  float: left; }

.floatright {
  float: right; }

/* Grids & Columns ------------------------------------------------------------------------------------ */
@media screen and (min-width: 720px) {
  .halves {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 1em; }

  .thirds {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 1em; }

  .quarters {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap: 1em; } }
/* Banners ------------------------------------------------------------------------------------ */
.banner_background,
.banner_blur {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }

.banner_blur {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px); }

/* Footer ------------------------------------------------------------------------------------ */
.copyright {
  position: relative;
  font-size: .75em; }
  .copyright a.poweredby {
    display: inline-block;
    position: relative;
    padding: 8px 36px 8px 12px;
    color: #000;
    line-height: 24px;
    font-weight: 400;
    text-decoration: none !important;
    border-radius: 6px;
    -webkit-transition: none;
    transition: none; }
    .copyright a.poweredby svg {
      display: block;
      position: absolute;
      top: 50%;
      right: 6px;
      width: 30px;
      height: 30px;
      margin-top: -15px; }
      .copyright a.poweredby svg .svgstroke {
        fill: none;
        stroke: #000;
        stroke-width: 1.5px;
        stroke-miterlimit: 10; }
    @media all and (min-device-width: 1025px) {
      .copyright a.poweredby:hover {
        color: #fff;
        background-color: #CE1F45; }
        .copyright a.poweredby:hover svg .svgstroke {
          stroke: #fff; } }
  @media all and (min-width: 720px) {
    .copyright p {
      padding-right: 180px; }
      .copyright p span:after {
        content: " •"; }
      .copyright p span:nth-last-child(1):after {
        content: ""; }
    .copyright a.poweredby {
      position: absolute;
      top: 50%;
      right: 0;
      margin-top: -18px; } }
  @media all and (max-width: 720px) {
    .copyright {
      text-align: center; }
      .copyright p span {
        display: block; }
      .copyright a.poweredby {
        margin: 8px auto; } }

.dark a.poweredby {
  color: #fff; }
  .dark a.poweredby svg .svgstroke {
    stroke: #fff; }

/* Dots  ------------------------------------------------------------------------------------ */
.owl-dots {
  display: none;
  position: absolute;
  bottom: .5em;
  left: 0;
  width: 100%;
  min-width: 100%;
  text-align: center; }
  @media all and (min-width: 720px) {
    .owl-dots {
      display: block; } }
  .owl-dots .owl-dot {
    display: inline-block;
    width: .5em;
    height: .5em;
    margin: .125em;
    border: solid 2px #fff;
    border-radius: 50%; }
  .owl-dots .owl-dot.active {
    background-color: #fff; }

/* Arrows  ------------------------------------------------------------------------------------ */
.owl-nav {
  display: none; }
  @media all and (min-device-width: 1025px) {
    .owl-nav {
      display: block; } }

.owl-prev,
.owl-next {
  display: block;
  position: absolute;
  z-index: 90;
  top: 50%;
  width: 40px;
  height: 80px;
  background-color: #e5c87a;
  border-radius: 0.2rem;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
  transform: translateY(-50%); }
  .owl-prev:after,
  .owl-next:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 30px;
    height: 30px;
    background-color: #fff; }
  @media all and (min-device-width: 1025px) {
    .owl-prev:hover,
    .owl-next:hover {
      background-color: #ceb46e; } }

.owl-prev {
  left: 10px; }

.owl-next {
  right: 10px; }

@media all and (min-width: 1025px) {
  .owl-prev {
    left: 0;
    opacity: 0; }

  .owl-carousel:hover .owl-prev {
    left: 10px;
    opacity: 1; }

  .owl-next {
    right: 0;
    opacity: 0; }

  .owl-carousel:hover .owl-next {
    right: 10px;
    opacity: 1; } }
/* Transitions  ------------------------------------------------------------------------------------ */
.owl-dots,
.owl-dot,
.owl-prev,
.owl-next {
  -webkit-transition: all 200ms;
  transition: all 200ms; }

/* Thumbnails ------------------------------------------------------------------------------------ */
.post_thumb {
  position: relative;
  vertical-align: top;
  margin: .5rem;
  font-size: 14px;
  line-height: 20px; }
  .post_thumb a.image {
    display: block;
    width: 100%;
    padding-top: 80%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    border-radius: 0.4rem;
    box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
    overflow: hidden; }
  .post_thumb .title {
    height: 2em;
    padding: 1em .5em;
    font-size: 1rem;
    line-height: 1em;
    color: #000;
    font-family: "bebas-neue-pro", sans-serif;
    font-weight: 800;
    text-transform: uppercase;
    text-align: left;
    overflow: hidden; }

.grid_item .post_thumb {
  margin: .5rem; }

/* Cart button ------------------------------------------------------------------------------------ */
button.cart-toggle, .cart-item button.remove-cart {
  outline: 0 none;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  display: inline-block;
  margin: 0 auto;
  padding: .5em 1em;
  padding-right: 2.5em;
  color: #000 !important;
  font-family: "futura-pt", sans-serif !important;
  font-size: .75em;
  line-height: 1.5em;
  font-weight: 600;
  background-color: #d2d1cd;
  border: none !important;
  border-radius: 0.2rem; }
  button.cart-toggle:after, .cart-item button.remove-cart:after {
    content: '';
    position: absolute;
    top: 50%;
    right: .5em;
    width: 1.5em;
    height: 1.5em;
    margin-top: -.75em;
    background-color: #000; }

/* Post items ------------------------------------------------------------------------------------ */
.post_item {
  display: block;
  position: relative;
  margin: 2rem auto;
  text-decoration: none !important; }
  .post_item h2.post_title {
    font-size: 1.5em; }
  .post_item p.post_date {
    display: none;
    font-size: .8em; }
  .post_item p.read_more {
    font-size: .9em; }
  @media screen and (min-width: 720px) {
    .post_item.has_thumbnail h2.post_title {
      float: left;
      width: 50%;
      margin-bottom: 0;
      padding-right: 2%; }
    .post_item.has_thumbnail .post_info {
      float: left;
      width: 50%;
      padding-right: 2%; }
    .post_item.has_thumbnail .post_thumb {
      float: right;
      width: 48%;
      margin: 0; } }

/* Product thumbs ------------------------------------------------------------------------------------ */
a.product_thumb {
  position: relative;
  display: block;
  margin: .5rem;
  padding-top: 100%;
  text-align: center;
  background-color: #fff;
  border-radius: 0.4rem;
  overflow: hidden; }
  a.product_thumb .image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover; }
  a.product_thumb .title {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 10px 20px;
    color: #000;
    font-size: 22px;
    line-height: 30px;
    text-align: left;
    background-color: rgba(255, 255, 255, 0.4);
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    overflow: hidden; }
  @media all and (min-device-width: 1025px) {
    a.product_thumb:hover {
      box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2); }
      a.product_thumb:hover .image {
        top: -10px;
        right: -10px;
        bottom: -10px;
        left: -10px; } }

button.cart-toggle {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background-color: rgba(255, 255, 255, 0.4);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px); }
  button.cart-toggle:hover {
    background-color: #fff; }

button.cart-toggle.remove {
  background-color: #e5c87a; }
  button.cart-toggle.remove:after {
    transform: rotate(45deg); }

/* Product thumbs ------------------------------------------------------------------------------------ */
.cart-item {
  position: relative;
  margin: 1rem 0;
  padding: 1rem;
  border: solid 2px #f0efee;
  border-radius: 0.2rem; }
  .cart-item .image {
    width: 4rem;
    height: 4rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    border-radius: 0.2rem; }
  .cart-item h3 {
    color: #000;
    font-size: 1em;
    margin-bottom: 0; }
  .cart-item button.remove-cart {
    position: absolute;
    top: 1rem;
    right: 1rem; }

/* Sidebar ------------------------------------------------------------------------------------ */
#sidebar {
  position: relative;
  z-index: 500;
  padding: 1rem 1.5rem;
  background-color: #f0efee; }
  @media screen and (max-width: 720px) {
    #sidebar {
      font-size: 20px; } }

#filter-toggle, .drop_menu a.sb_button {
  display: block;
  position: relative;
  cursor: pointer;
  padding: .6em .8em;
  padding-left: 1.5em;
  color: #000;
  font-size: 1.1em;
  line-height: 1em;
  border-radius: 0.2rem;
  text-decoration: none; }
  #filter-toggle:after, .drop_menu a.sb_button:after {
    content: '';
    position: absolute;
    top: 50%;
    left: .25em;
    width: 1em;
    height: 1em;
    margin-top: -.5em;
    background-color: #000; }
  @media screen and (min-width: 720px) {
    #filter-toggle, .drop_menu a.sb_button {
      display: inline-block;
      padding-top: .4em;
      padding-bottom: .4em; }
      #filter-toggle:hover, .drop_menu a.sb_button:hover {
        background-color: #d2d1cd; } }

/* Filter menu ------------------------------------------------------------------------------------ */
#filter-toggle:before {
  content: 'Filter'; }

#filter-menu {
  position: fixed;
  z-index: 2000;
  top: 0;
  bottom: 0;
  left: -320px;
  width: 320px;
  padding: 20px 0;
  background-color: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(20px);
  transition: all 200ms; }
  #filter-menu.toggleon {
    left: 0;
    box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2); }
  #filter-menu > form {
    padding: 1rem; }

#filter-close {
  cursor: pointer;
  display: inline-block;
  position: absolute;
  top: 10px;
  right: 10px;
  width: 40px;
  height: 40px;
  background-color: #d2d1cd;
  border-radius: 0.2rem;
  text-decoration: none; }
  #filter-close:before {
    content: '';
    position: absolute;
    top: 5px;
    left: 5px;
    width: 30px;
    height: 30px;
    background-color: #000; }

/* Dropdown menus ------------------------------------------------------------------------------------ */
@keyframes dropdown {
  0% {
    top: 110%;
    opacity: 0; }
  100% {
    top: 100%;
    opacity: 1; } }
.drop_menu {
  display: block;
  position: relative;
  z-index: 500;
  overflow: visible; }
  .drop_menu.active a.sb_button:after {
    transform: rotate(45deg); }
  @media screen and (max-width: 720px) {
    .drop_menu {
      margin: .4em 0;
      background-color: #d2d1cd;
      border-radius: 0.2rem; }
      .drop_menu ul.tax_list {
        display: none;
        margin: 0;
        padding: 0 0 .5rem;
        text-align: left; }
        .drop_menu ul.tax_list li {
          display: block;
          margin: 0;
          padding: 0; }
          .drop_menu ul.tax_list li a {
            display: block;
            font-size: .9em;
            padding: .5rem 1rem;
            padding-left: 1.5rem;
            color: rgba(0, 0, 0, 0.4);
            font-weight: 600;
            text-decoration: none !important; }
          .drop_menu ul.tax_list li.current-cat > a {
            color: #000; }
          .drop_menu ul.tax_list li ul {
            margin: 0;
            padding: 0; } }
  @media screen and (min-width: 720px) {
    .drop_menu {
      display: inline-block;
      vertical-align: bottom; }
      .drop_menu ul.tax_list {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        width: 20em;
        margin: 0;
        padding: 0;
        text-align: left;
        background-color: #fff;
        border-radius: 0.2rem;
        overflow: hidden;
        box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
        animation: 250ms dropdown; }
        .drop_menu ul.tax_list li {
          display: block;
          vertical-align: bottom;
          margin: 0;
          padding: 0; }
          .drop_menu ul.tax_list li a {
            display: block;
            position: relative;
            padding: .67em 1em;
            color: #000 !important;
            font-size: .85em;
            font-weight: 600;
            text-decoration: none !important; } }
        @media screen and (min-width: 720px) and (min-device-width: 1025px) {
          .drop_menu ul.tax_list li a:hover {
            background-color: #d2d1cd !important; } }
  @media screen and (min-width: 720px) {
          .drop_menu ul.tax_list li.current-cat > a {
            background-color: #f0efee; }
          .drop_menu ul.tax_list li ul {
            margin: 0;
            padding: 0; } }
  .drop_menu.active {
    z-index: 501; }
    .drop_menu.active ul {
      display: block; }
    @media screen and (min-width: 720px) {
      .drop_menu.active .overlay {
        position: fixed;
        z-index: -1;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; } }

/* Subpages  ------------------------------------------------------------------------------------ */
ul#subpages {
  position: relative;
  text-align: center;
  margin: 0;
  padding: 0 1rem;
  background-color: #1c1b1a; }
  ul#subpages li {
    display: inline-block; }
    ul#subpages li a {
      display: block;
      padding: 1.2rem .6rem;
      font-size: 1.2em;
      color: rgba(255, 255, 255, 0.5);
      text-decoration: none; }
      @media screen and (min-device-width: 1025px) {
        ul#subpages li a:hover {
          color: #e5c87a !important; } }
    ul#subpages li.current-page a {
      color: #fff; }

/* Breadcrumbs ------------------------------------------------------------------------------------ */
#breadcrumbs {
  position: relative;
  z-index: 800;
  width: 100%;
  font-size: 0;
  background-color: #e5c87a;
  background-image: url("../links/banner-2.svg");
  background-size: cover;
  background-position: center;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.4); }
  #breadcrumbs li {
    display: inline-block;
    vertical-align: baseline;
    margin: 0;
    padding: 0; }
    #breadcrumbs li a,
    #breadcrumbs li span {
      display: block;
      padding: 1.2em .6em;
      color: #fff !important;
      font-size: 1rem;
      line-height: 1em;
      text-decoration: none; }
    #breadcrumbs li a:after {
      content: '»';
      padding-left: .5em;
      color: #373634; }
    #breadcrumbs li a:hover {
      background-color: #ceb46e; }
    #breadcrumbs li:nth-child(1) * {
      padding-left: 1em; }

/* Pagination ------------------------------------------------------------------------------------ */
.page_numbers {
  position: relative;
  font-size: 0;
  font-weight: 600;
  text-align: center; }
  .page_numbers > * {
    display: inline-block;
    margin: 1rem 0;
    padding: 1em;
    font-size: .75rem;
    line-height: 1em;
    background-color: #f0efee; }
  .page_numbers a {
    color: #000;
    text-decoration: none; }
    .page_numbers a:hover {
      color: #fff;
      background-color: #e5c87a; }
  .page_numbers .current {
    background-color: #d2d1cd; }
  .page_numbers *:first-child {
    border-top-left-radius: 0.2rem;
    border-bottom-left-radius: 0.2rem; }
  .page_numbers *:last-child {
    border-top-right-radius: 0.2rem;
    border-bottom-right-radius: 0.2rem; }

/* Dark */
.dark .page_numbers > * {
  background-color: rgba(255, 255, 255, 0.1); }
.dark .page_numbers a {
  color: #fff; }
  .dark .page_numbers a:hover {
    color: #fff;
    background-color: #e5c87a; }
.dark .page_numbers .current {
  background-color: rgba(255, 255, 255, 0.2); }

/* Social buttons  ------------------------------------------------------------------------------------ */
.social ul {
  display: block;
  margin: 0;
  padding: 0; }
  .social ul li {
    display: inline-block;
    vertical-align: top;
    position: relative;
    padding: 0 2px; }
    .social ul li a {
      display: block;
      position: relative;
      font-size: 40px;
      height: .5em;
      padding: .25em 0 .25em 1em;
      border-radius: .5em; }
      .social ul li a span {
        display: none;
        color: #000;
        font-size: 14px;
        line-height: 1.42em;
        font-weight: 600;
        padding-right: 1em; }
      .social ul li a:after {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 1em;
        height: 1em;
        background-color: #373634;
        background-size: .8em .8em;
        background-repeat: no-repeat;
        background-position: center; }
      @media all and (min-device-width: 1025px) {
        .social ul li a:hover:after {
          background-color: #e5c87a; } }

/* Styling ------------------------------------------------------------------------------------ */
input,
textarea, select {
  outline: 0 none;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  display: inline-block;
  position: relative;
  width: 100% !important;
  margin: 0 auto !important;
  padding: .5em 0;
  color: #000 !important;
  font-family: "futura-pt", sans-serif !important;
  font-size: 1em;
  line-height: 1.5em;
  font-weight: 400;
  text-indent: .5em;
  background-color: #f0efee;
  border: none !important;
  border-radius: 0.2rem; }

input[type="submit"] {
  width: auto !important;
  padding: .8em 2.4em;
  cursor: pointer;
  color: #fff !important;
  font-weight: 600;
  text-align: center;
  text-indent: 0;
  text-transform: uppercase;
  background-color: #000 !important;
  border-color: transparent; }
  input[type="submit"]:hover {
    color: #e5c87a !important; }

/* All forms ------------------------------------------------------------------------------------ */
select {
  background-image: url("../links/icons/color/down.svg");
  background-size: 20px 20px;
  background-repeat: no-repeat;
  background-position: right 10px center; }

/* Ninja Forms ------------------------------------------------------------------------------------ */
.nf-field input[type="radio"],
.nf-field input[type="checkbox"] {
  /* Hide the OS/Browser checkboxes/radio buttons */
  visibility: hidden !important;
  margin: 0 !important;
  width: 0 !important; }
  .nf-field input[type="radio"] + label,
  .nf-field input[type="checkbox"] + label {
    visibility: visible;
    position: relative;
    margin: .5rem 0 !important;
    padding-left: 50px;
    font-size: .9em;
    line-height: 24px;
    cursor: pointer; }
    .nf-field input[type="radio"] + label:before,
    .nf-field input[type="checkbox"] + label:before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 40px;
      height: 24px;
      border: none;
      border-radius: 12px;
      background: #d2d1cd;
      transition: all 0.3s ease; }
    .nf-field input[type="radio"] + label:after,
    .nf-field input[type="checkbox"] + label:after {
      content: "";
      position: absolute;
      top: 3px;
      left: 3px;
      width: 18px;
      height: 18px;
      background: #fff;
      border-radius: 50%;
      transition: all 0.3s ease; }
  .nf-field input[type="radio"]:checked + label:before,
  .nf-field input[type="checkbox"]:checked + label:before {
    background: #e5c87a; }
  .nf-field input[type="radio"]:checked + label:after,
  .nf-field input[type="checkbox"]:checked + label:after {
    left: 19px; }

.nf-field-label {
  font-size: .8em; }

.nf-error-msg {
  color: #373634 !important;
  font-size: .8em; }

.ninja-forms-req-symbol {
  color: #373634 !important; }

.nf-form-fields-required {
  margin: 1rem 0;
  color: #373634 !important;
  text-align: center;
  opacity: .5; }

/* Filtering menu ------------------------------------------------------------------------------------ */
form.product-filters .filter-group {
  margin: 1rem 0; }
  form.product-filters .filter-group h3 {
    font-size: 1.25em; }
  form.product-filters .filter-group label {
    cursor: pointer;
    display: block;
    position: relative;
    margin: .5rem 0 !important;
    padding-left: 50px;
    font-size: .9em;
    line-height: 24px; }
    form.product-filters .filter-group label input[type="checkbox"] {
      pointer-events: none;
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 40px !important;
      height: 24px;
      border: none;
      border-radius: 12px;
      background: #d2d1cd;
      transition: all 0.3s ease; }
      form.product-filters .filter-group label input[type="checkbox"]:after {
        content: "";
        position: absolute;
        top: 3px;
        left: 3px;
        width: 18px;
        height: 18px;
        background: #fff;
        border-radius: 50%;
        transition: all 0.3s ease; }
      form.product-filters .filter-group label input[type="checkbox"]:checked {
        background: #e5c87a; }
        form.product-filters .filter-group label input[type="checkbox"]:checked:after {
          left: 19px; }
form.product-filters input[type="submit"] {
  margin: 1rem 0 !important;
  font-size: .8em !important; }

/* Search form ------------------------------------------------------------------------------------ */
form#searchform {
  position: relative;
  width: 12em;
  margin: 0 !important;
  padding: 0 !important; }
  form#searchform div {
    margin: 0 !important;
    padding: 0 !important; }
    form#searchform div label.screen-reader-text {
      display: none; }
    form#searchform div input[type="text"] {
      display: block;
      height: 1em !important;
      padding: .5em 0 !important;
      font-size: 1em !important;
      line-height: 1em !important; }
    form#searchform div input[type="submit"] {
      position: absolute;
      top: 0;
      right: 0;
      width: 2em !important;
      padding: 0 !important;
      height: 2em;
      color: transparent !important;
      background-color: transparent;
      background-image: url("../links/icons/color/search.svg");
      background-size: 1.5em 1.5em;
      background-position: center;
      background-repeat: no-repeat; }

/* Containers ------------------------------------------------------------------------------------ */
.container {
  z-index: 10;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }

/* Top ------------------------------------------------------------------------------------ */
#top {
  position: relative;
  z-index: 200;
  text-align: center;
  background-color: #000; }
  #top .post_title {
    position: relative;
    max-width: 1240px;
    margin: 0 auto;
    padding: 10% 1rem;
    color: #fff;
    font-size: 3.5em;
    line-height: 1.2em; }
    #top .post_title.has_background {
      padding: 10rem 1rem 12rem; }
    #top .post_title span {
      display: block;
      color: #e5c87a;
      font-family: "futura-pt", sans-serif;
      font-weight: 600;
      font-size: .5em;
      letter-spacing: .1em;
      font-style: normal;
      text-transform: uppercase !important;
      letter-spacing: .1em; }
  #top .banner_background {
    opacity: .5; }
  #top .banner_color {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #000; }

/* Banners  ------------------------------------------------------------------------------------ */
.banner_container {
  position: relative;
  overflow: hidden;
  height: 80vh;
  background-color: #000; }
  @media all and (max-width: 1240px) {
    .banner_container {
      min-height: 400px;
      max-height: 120vw; } }
  @media all and (min-width: 1240px) {
    .banner_container {
      min-height: 720px;
      max-height: 900px; } }
  .banner_container section.content {
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(100% - 2em);
    max-width: 800px;
    text-align: center;
    transform: translateX(-50%) translateY(-50%); }
    .banner_container section.content .banner_title,
    .banner_container section.content .banner_headline {
      margin: 1rem 0;
      font-size: 3.5em;
      line-height: 1.2em; }
    .banner_container section.content .banner_subhead {
      margin: 1rem 0;
      font-size: 1.5em;
      line-height: 1.4em; }
    .banner_container section.content .banner_caption {
      margin: 1rem 0;
      font-size: 1.2em; }
    @media all and (min-width: 720px) {
      .banner_container section.content.textleft {
        max-width: 1240px;
        text-align: left; }
        .banner_container section.content.textleft > div {
          padding-right: 33%; }
      .banner_container section.content.textright {
        max-width: 1240px;
        text-align: left; }
        .banner_container section.content.textright > div {
          padding-left: 33%; } }

/* Masonry ------------------------------------------------------------------------------------ */
.masonry {
  max-width: 1440px;
  margin: 0 auto;
  padding: 1rem;
  text-align: center; }
  .masonry .grid_item {
    position: relative;
    float: left;
    width: 50%; }
    @media all and (min-width: 480px) {
      .masonry .grid_item {
        width: 33.3%; } }
    @media all and (min-width: 720px) {
      .masonry .grid_item {
        width: 25%; } }
    @media all and (min-width: 1025px) {
      .masonry .grid_item {
        width: 20%; } }

/* Product arhchive pages ------------------------------------------------------------------------------------ */
@keyframes slidein {
  0% {
    margin-left: -2em;
    opacity: 0; }
  100% {
    margin-left: 0;
    opacity: 1; } }
@media screen and (min-width: 720px) {
  #product-wrapper {
    display: grid;
    grid-template-columns: 320px 1fr;
    grid-gap: 1em;
    padding: 1em; } }
#product-wrapper #product-filter {
  padding: 1em; }
#product-wrapper.post-type-archive #product-filter {
  animation: 400ms slidein; }

/* Footers ------------------------------------------------------------------------------------ */
#widget-footer {
  z-index: 200;
  padding: 2em 0;
  background-color: #000;
  border-bottom: solid 2px #373634; }
  #widget-footer section.content > div {
    margin: 2rem 0;
    padding-left: 1em;
    border-left: solid 2px #373634; }
  #widget-footer h3 {
    font-size: 1.5em; }
  #widget-footer #footer_menu ul {
    margin: 1rem 0;
    padding: 0; }
    #widget-footer #footer_menu ul li {
      display: block;
      margin: 0;
      padding: 0; }
      #widget-footer #footer_menu ul li a {
        font-size: 1.5em;
        text-decoration: none; }
  #widget-footer .contact_info div {
    margin: 1.5rem 0; }
    #widget-footer .contact_info div.phone, #widget-footer .contact_info div.address {
      position: relative;
      padding-left: 54px;
      font-size: 1.1em; }
      #widget-footer .contact_info div.phone:after, #widget-footer .contact_info div.address:after {
        content: '';
        position: absolute;
        top: 50%;
        left: 7px;
        width: 36px;
        height: 36px;
        margin-top: -18px;
        background-color: #e5c87a; }
    #widget-footer .contact_info div a {
      text-decoration: none; }

#footer {
  padding: 2rem 0 1rem;
  background-color: #000; }
  #footer ul.menu {
    margin: 0;
    padding: 1rem 0;
    text-align: center; }
    #footer ul.menu li {
      display: inline-block;
      margin: 0;
      padding: 0; }
      #footer ul.menu li a {
        padding: .5em;
        text-decoration: none; }
  #footer p.locations {
    font-size: .75em;
    color: rgba(255, 255, 255, 0.5);
    font-style: italic; }

/* Home page ------------------------------------------------------------------------------------ */
#thumbnails {
  z-index: 220;
  padding: 2em 0 3em;
  background-color: #1c1b1a; }
  #thumbnails a {
    text-decoration: none !important; }

/* Product pages ------------------------------------------------------------------------------------ */
#top.type-product {
  background-color: #373634;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2); }
  #top.type-product .post_title {
    padding: 8rem 1rem; }
  @media screen and (min-width: 720px) {
    #top.type-product #product_banner {
      display: grid;
      grid-template-columns: 1fr 1fr; } }
  #top.type-product .product_image {
    position: relative;
    background-color: #fff; }
    #top.type-product .product_image div {
      position: absolute;
      top: 2em;
      right: 2em;
      bottom: 2em;
      left: 2em;
      background-repeat: no-repeat;
      background-size: contain;
      background-position: center; }
  #top.type-product .product_content {
    min-height: 540px;
    align-content: center;
    padding: 2.5rem 2rem 3rem;
    text-align: left;
    background-color: #373634;
    vertical-align: middle; }
    #top.type-product .product_content > h2 {
      max-width: 600px;
      margin: 1rem 0;
      font-size: 2.5em; }
    #top.type-product .product_content > p {
      max-width: 600px;
      margin: 1rem 0;
      color: #e5c87a; }
    #top.type-product .product_content > a {
      margin: 1rem 0; }
    #top.type-product .product_content a.doc {
      display: inline-block;
      width: 6rem;
      padding: 2.5rem 0 .5rem;
      font-size: .7em;
      line-height: 1.2em;
      font-weight: 600;
      text-align: center;
      text-transform: uppercase;
      text-decoration: none; }
      #top.type-product .product_content a.doc:after {
        content: '';
        position: absolute;
        top: .5rem;
        left: 50%;
        width: 1.5rem;
        height: 1.5rem;
        margin-left: -.75rem;
        background-color: #e5c87a;
        -webkit-mask-size: 100% 100%;
        mask-size: 100% 100%;
        -webkit-mask-image: url(../links/icons/doc.svg);
        mask-image: url(../links/icons/doc.svg); }

/* Header ------------------------------------------------------------------------------------ */
#nav {
  position: fixed;
  z-index: 1000;
  width: 100%;
  background-color: black;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.4); }
  #nav a {
    text-decoration: none !important; }
  #nav a#nav_logo {
    display: block;
    position: relative;
    margin: 0 auto -20px;
    background-color: #000;
    box-shadow: 0 0 1rem rgba(0, 0, 0, 0.4); }
    #nav a#nav_logo:after {
      content: '';
      display: block;
      position: absolute;
      top: 10px;
      right: 10px;
      bottom: 10px;
      left: 10px;
      background-image: url("../links/Portfolio-Intl-Logo.jpg");
      background-size: 100% 100%;
      background-position: center;
      background-repeat: no-repeat; }

#nav,
#nav * {
  -webkit-transition: all 200ms;
  transition: all 200ms; }

a.cart-link {
  display: block;
  position: absolute;
  z-index: 1200;
  padding: 8px 12px;
  padding-left: 48px;
  color: #fff !important;
  font-size: 20px;
  line-height: 20px;
  border-radius: 0.2rem; }
  a.cart-link:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 6px;
    width: 36px;
    height: 36px;
    margin-top: -18px;
    background-color: #e5c87a; }
  @media all and (min-width: 1025px) {
    a.cart-link {
      top: 24px;
      right: 30px; } }
  @media all and (max-width: 1025px) {
    a.cart-link {
      top: 50%;
      left: 10px;
      transform: translateY(-50%); } }

@media all and (min-width: 1025px) {
  /* Desktop ------------------------------------------------------------------------------------ */
  #nav a#nav_logo {
    width: 88px;
    height: 160px;
    padding: 10px; }

  #top {
    padding-top: 160px; }

  @keyframes dropdown {
    0% {
      margin-top: 10px;
      opacity: 0; }
    100% {
      margin-top: 0;
      opacity: 1; } }
  @keyframes fadein {
    0% {
      opacity: 0; }
    100% {
      opacity: 1; } }
  /* Menus ------------------------------------------------------------------------------------ */
  #menus ul.menu {
    display: block;
    margin: 0;
    padding: 0; }
    #menus ul.menu > li {
      display: inline-block;
      vertical-align: top;
      position: relative;
      margin: 0;
      padding: 0; }
      #menus ul.menu > li > a {
        display: block;
        padding: 10px 12px;
        color: rgba(255, 255, 255, 0.5);
        font-size: 28px;
        line-height: 30px;
        font-family: "bebas-neue-pro", sans-serif;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: .05em; }
        #menus ul.menu > li > a:after {
          pointer-events: none;
          content: '';
          position: absolute;
          top: 0;
          left: 50%;
          width: 12px;
          height: 3px;
          background-color: rgba(229, 200, 122, 0);
          border-radius: 1px;
          transform: translateX(-50%); }
      #menus ul.menu > li.current-menu-item > a, #menus ul.menu > li.current-menu-ancestor > a {
        color: #fff; }
        #menus ul.menu > li.current-menu-item > a:after, #menus ul.menu > li.current-menu-ancestor > a:after {
          top: -3px;
          width: 24px;
          background-color: #e5c87a; }
      #menus ul.menu > li:hover > a {
        color: #e5c87a; }
        #menus ul.menu > li:hover > a:after {
          top: -3px;
          width: 24px;
          background-color: #e5c87a; }
      #menus ul.menu > li ul.sub-menu {
        display: none;
        position: absolute;
        width: 300px;
        text-align: left;
        background-color: #e5c87a;
        overflow: hidden;
        border-radius: 0.2rem;
        box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
        animation: 250ms dropdown; }
        #menus ul.menu > li ul.sub-menu li {
          display: block;
          margin: 0;
          padding: 0; }
          #menus ul.menu > li ul.sub-menu li a {
            display: block;
            padding: 15px;
            color: #000 !important;
            font-size: 16px;
            line-height: 20px;
            font-weight: 600; }
          #menus ul.menu > li ul.sub-menu li.current-menu-item > a {
            background-color: #ceb46e; }
          #menus ul.menu > li ul.sub-menu li:hover > a {
            background-color: #ceb46e; }
          #menus ul.menu > li ul.sub-menu li:first-child a {
            padding-top: 20px; }
          #menus ul.menu > li ul.sub-menu li:last-child a {
            padding-bottom: 20px;
            border-bottom: none; }
        #menus ul.menu > li ul.sub-menu#product_menu {
          position: fixed;
          left: 50%;
          width: 80%;
          max-width: 1280px;
          padding: 1rem;
          background-color: #fff;
          border-radius: 0.4rem;
          box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
          transform: translateX(-50%); }
          #menus ul.menu > li ul.sub-menu#product_menu li {
            float: left;
            width: 33.3%; }
            #menus ul.menu > li ul.sub-menu#product_menu li a {
              position: relative;
              display: block;
              height: 20px;
              margin: .5rem;
              padding: 24px;
              padding-left: 90px;
              color: #000 !important;
              font-size: 20px;
              line-height: 20px;
              font-family: "bebas-neue-pro", sans-serif;
              font-weight: 800;
              font-style: italic;
              text-transform: uppercase;
              text-align: left;
              text-decoration: none !important;
              background-color: #fff;
              border: none;
              border-radius: 0.4rem;
              overflow: hidden; }
              #menus ul.menu > li ul.sub-menu#product_menu li a .image {
                position: absolute;
                top: 5px;
                bottom: 5px;
                left: 5px;
                width: 80px;
                background-color: #fff;
                background-repeat: no-repeat;
                background-position: center;
                background-size: contain; }
              #menus ul.menu > li ul.sub-menu#product_menu li a:hover {
                color: #e5c87a !important;
                box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2); }
      #menus ul.menu > li:hover ul.sub-menu {
        display: block; }

  /* Menus ------------------------------------------------------------------------------------ */
  #main_menu {
    z-index: 1100;
    position: absolute;
    left: 30px;
    bottom: 24px;
    font-size: 0;
    line-height: 0;
    text-align: center; }

  /* Alt menu ------------------------------------------------------------------------------------ */
  #alt_menu {
    z-index: 1100;
    position: absolute;
    right: 30px;
    bottom: 24px;
    font-size: 0;
    line-height: 0;
    text-align: center; }
    #alt_menu ul.menu > li ul.sub-menu {
      right: 0; } }
@media all and (max-width: 1025px) {
  /* Mobile ------------------------------------------------------------------------------------ */
  #nav a#nav_logo {
    width: 55px;
    height: 100px;
    padding: 10px; }

  #top {
    padding-top: 100px; }

  /* Menu toggle ------------------------------------------------------------------------------------ */
  #menus .menus_container {
    display: block;
    position: fixed;
    z-index: 1100;
    top: 0;
    bottom: 0;
    right: -320px;
    width: 320px;
    max-width: 100%;
    margin: 0;
    padding: 90px 0 40px;
    text-align: left;
    background-color: #000;
    overflow-y: auto;
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    -webkit-overflow-scrolling: touch; }
  #menus > .toggle_button {
    display: block;
    position: absolute;
    z-index: 1010;
    top: 0;
    right: 0;
    bottom: 0;
    width: 60px;
    cursor: pointer; }
    #menus > .toggle_button:before, #menus > .toggle_button:after {
      content: "";
      display: block;
      position: absolute;
      left: 50%;
      width: 24px;
      height: 3px;
      margin-left: -12px;
      background-color: #fff;
      border-radius: 1.5px; }
    #menus > .toggle_button:before {
      top: 50%;
      margin-top: -5px; }
    #menus > .toggle_button:after {
      bottom: 50%;
      margin-bottom: -5px; }
  #menus.active .menus_container {
    right: 0;
    box-shadow: 0 0 0 rgba(0, 0, 0, 0.2); }
  #menus.active > .toggle_button {
    z-index: 1200; }
    #menus.active > .toggle_button:before {
      margin-top: -1.5px;
      background-color: #e5c87a;
      transform: rotate(45deg); }
    #menus.active > .toggle_button:after {
      margin-bottom: -1.5px;
      background-color: #e5c87a;
      transform: rotate(-45deg); }
  #menus.active > .overlay {
    position: fixed;
    z-index: 1050;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8); }

  /* Menus ------------------------------------------------------------------------------------ */
  #main_menu,
  #alt_menu {
    text-align: left; }
    #main_menu ul.menu,
    #alt_menu ul.menu {
      margin: 0;
      padding: 0 20px; }
      #main_menu ul.menu > li,
      #alt_menu ul.menu > li {
        display: block;
        margin: 4px 0;
        padding: 0;
        background-color: #1c1b1a;
        border-radius: 0.2rem;
        overflow: hidden; }
        #main_menu ul.menu > li > a,
        #alt_menu ul.menu > li > a {
          display: block;
          position: relative;
          z-index: 1;
          height: 24px;
          padding: 12px;
          color: #fff;
          font-size: 24px;
          line-height: 24px;
          font-family: "bebas-neue-pro", sans-serif;
          font-weight: 600;
          text-transform: uppercase;
          border-radius: 0.2rem; }
        #main_menu ul.menu > li.current-menu-item > a,
        #alt_menu ul.menu > li.current-menu-item > a {
          color: #000;
          background-color: #e5c87a; }
        #main_menu ul.menu > li.menu-item-has-children,
        #alt_menu ul.menu > li.menu-item-has-children {
          position: relative; }
          #main_menu ul.menu > li.menu-item-has-children > a,
          #alt_menu ul.menu > li.menu-item-has-children > a {
            padding-right: 45px; }
          #main_menu ul.menu > li.menu-item-has-children .toggle_button,
          #alt_menu ul.menu > li.menu-item-has-children .toggle_button {
            cursor: pointer;
            display: block;
            position: absolute;
            z-index: 2;
            top: 0;
            right: 0;
            width: 48px;
            height: 48px; }
            #main_menu ul.menu > li.menu-item-has-children .toggle_button:after,
            #alt_menu ul.menu > li.menu-item-has-children .toggle_button:after {
              content: '';
              display: block;
              position: absolute;
              top: 25%;
              right: 25%;
              width: 50%;
              height: 50%;
              background-color: #e5c87a;
              mask-image: url(../links/icons/down.svg); }
          #main_menu ul.menu > li.menu-item-has-children.active .toggle_button:after, #main_menu ul.menu > li.menu-item-has-children.current-menu-item .toggle_button:after, #main_menu ul.menu > li.menu-item-has-children.current-menu-ancestor .toggle_button:after,
          #alt_menu ul.menu > li.menu-item-has-children.active .toggle_button:after,
          #alt_menu ul.menu > li.menu-item-has-children.current-menu-item .toggle_button:after,
          #alt_menu ul.menu > li.menu-item-has-children.current-menu-ancestor .toggle_button:after {
            transform: rotate(180deg); }
        #main_menu ul.menu > li ul.sub-menu,
        #alt_menu ul.menu > li ul.sub-menu {
          display: none;
          margin: 0;
          padding: 6px;
          background-color: #1c1b1a; }
          #main_menu ul.menu > li ul.sub-menu li,
          #alt_menu ul.menu > li ul.sub-menu li {
            display: block;
            position: relative;
            margin: 0;
            padding: 0;
            border-radius: 0; }
            #main_menu ul.menu > li ul.sub-menu li a,
            #alt_menu ul.menu > li ul.sub-menu li a {
              display: block;
              padding: 12px;
              color: rgba(255, 255, 255, 0.5);
              font-size: 16px;
              line-height: 20px;
              font-weight: 600;
              border-radius: 0.2rem; }
            #main_menu ul.menu > li ul.sub-menu li.current-menu-item a,
            #alt_menu ul.menu > li ul.sub-menu li.current-menu-item a {
              color: #000;
              background-color: #e5c87a; }
        #main_menu ul.menu > li.active ul.sub-menu, #main_menu ul.menu > li.current-menu-item ul.sub-menu, #main_menu ul.menu > li.current-menu-ancestor ul.sub-menu,
        #alt_menu ul.menu > li.active ul.sub-menu,
        #alt_menu ul.menu > li.current-menu-item ul.sub-menu,
        #alt_menu ul.menu > li.current-menu-ancestor ul.sub-menu {
          display: block; } }
/* Additional CSS  ------------------------------------------------------------------------------------ */
