/*!
Theme Name: Brighton Main Streets Child Theme
Theme URI: https://tworowstudio.com/harvest-child
Author: Two Row Studio
Author URI: https://tworowstudio.com
Description: Harvest Child Theme customized for Brighton Main Streets, developed by Two Row Studio
Template: good-harvest
Version: 1.0.9
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: good-harvest
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Harvest is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*! child Mixins */
/*! child theme colors */
/* background zoom in */
@-webkit-keyframes background_zoom_in {
  from {
    -webkit-transform: scale(1);
  }
  to {
    -webkit-transform: scale(1.2);
  }
}
@-moz-keyframes background_zoom_in {
  from {
    -moz-transform: scale(1);
  }
  to {
    -moz-transform: scale(1.2);
  }
}
@-ms-keyframes background_zoom_in {
  from {
    -ms-transform: scale(1);
  }
  to {
    -ms-transform: scale(1.2);
  }
}
@-o-keyframes background_zoom_in {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.2);
  }
}
@keyframes background_zoom_in {
  from {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
  to {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
  }
}
/* background zoom out */
@-webkit-keyframes background_zoom_out {
  from {
    -webkit-transform: scale(1.2);
  }
  to {
    -webkit-transform: scale(1);
  }
}
@-moz-keyframes background_zoom_out {
  from {
    -moz-transform: scale(1.2);
  }
  to {
    -moz-transform: scale(1);
  }
}
@-ms-keyframes background_zoom_out {
  from {
    -ms-transform: scale(1.2);
  }
  to {
    -ms-transform: scale(1);
  }
}
@-o-keyframes background_zoom_out {
  from {
    transform: scale(1.2);
  }
  to {
    transform: scale(1);
  }
}
@keyframes background_zoom_out {
  from {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
  }
  to {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}
/* slide_down */
@-webkit-keyframes slide_down {
  0% {
    -webkit-transform: translateY(-150%);
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes slide_down {
  0% {
    -moz-transform: translateY(-150%);
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-ms-keyframes slide_down {
  0% {
    -ms-transform: translateY(-150%);
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes slide_down {
  0% {
    transform: translateY(-150%);
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes slide_down {
  0% {
    transform: translateY(-150%);
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* slide_up */
@-webkit-keyframes slide_up {
  0% {
    -webkit-transform: translateY(150%);
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes slide_up {
  0% {
    -moz-transform: translateY(150%);
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-ms-keyframes slide_up {
  0% {
    -ms-transform: translateY(150%);
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes slide_up {
  0% {
    transform: translateY(150%);
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes slide_up {
  0% {
    transform: translateY(150%);
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes growShrink {
  0% {
    transform: translateX(-50%) scale(1);
  }
  50% {
    transform: translateX(-50%) scale(1.5);
    border-color: #f5f5f5;
    border-width: 2px;
  }
  100% {
    transform: translateX(-50%) scale(1);
  }
}
@font-face {
  font-family: "Glober";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/GloberSemiBold/font.woff");
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/GloberSemiBold/font.woff2");
  font-weight: bold;
}
@font-face {
  font-family: "Glober";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/GloberThin/font.woff");
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/GloberThin/font.woff2");
  font-weight: normal;
}
@font-face {
  font-family: "OpenSans";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/OpenSans-Light.ttf");
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: "OpenSans";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/OpenSans-LightItalic.ttf");
  font-weight: 100;
  font-style: italic;
}
@font-face {
  font-family: "OpenSans";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/OpenSans-Regular.ttf");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "OpenSans";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/OpenSans-Italic.ttf");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "OpenSans";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/OpenSans-SemiBold.ttf");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "OpenSans";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/OpenSans-SemiBoldItalic.ttf");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "OpenSans";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/OpenSans-Bold.ttf");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "OpenSans";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/OpenSans-BoldItalic.ttf");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: "OpenSans";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/OpenSans-ExtraBold.ttf");
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: "OpenSans";
  src: url("/wp-content/themes/bms-harvest-child/includes/fonts/OpenSans-ExtraBoldItalic.ttf");
  font-weight: 900;
  font-style: italic;
}
body {
  font-family: "OpenSans";
  font-size: 20px;
}

h1,
h2,
h3,
.h1,
.h2,
.h3 {
  font-family: "Glober";
  font-weight: bold;
}

.extra_large_text {
  font-size: 3em;
}
.extra_large_text h1,
.extra_large_text .h1 {
  font-size: 1.5em !important;
}
@media (max-width: 1200px) {
  .extra_large_text h1,
  .extra_large_text .h1 {
    font-size: 1.45em !important;
  }
}
@media (max-width: 991px) {
  .extra_large_text h1,
  .extra_large_text .h1 {
    font-size: 1.5em !important;
  }
}
@media (max-width: 639px) {
  .extra_large_text h1,
  .extra_large_text .h1 {
    font-size: 1.33em !important;
  }
}
@media (max-width: 480px) {
  .extra_large_text h1,
  .extra_large_text .h1 {
    font-size: 1.125em !important;
  }
}

a {
  text-decoration: underline;
}

a:hover {
  text-decoration: underline;
}

blockquote {
  font-size: 1.25em;
  text-align: left;
}
blockquote:before {
  font-family: "Font Awesome 7 Pro";
  content: "\f10d";
  font-size: 2.5em;
  margin-right: 7.5px;
  margin-top: -0.25em;
  margin-bottom: -0.25em;
  display: block;
  float: left;
}

.quote {
  font-size: 0.75em;
}

.caption {
  font-size: 0.5em;
}

.tribe-common a {
  text-decoration: underline;
}

/*! Child menus and header styling */
.logo_left .mobile_menu_wrapper {
  left: unset;
  right: 0;
}

#top_link_bar ul li {
  min-width: 5em;
  text-align: center;
}

.menu-item a {
  text-decoration: none;
}

/*! Child footer styling */
footer .footer_block {
  text-align: left;
}
footer .footer_block a {
  text-decoration: none;
}
@media (max-width: 767px) {
  footer #footer_col_1 aside {
    padding-bottom: 0px;
  }
  footer #footer_col_1 ul {
    margin-bottom: 0px;
  }
  footer #footer_col_2 aside {
    padding-top: 0px;
  }
}
@media (max-width: 767px) {
  footer .site-info .sep {
    display: none;
  }
}
footer .post_link.btn {
  background: #b7503a;
  color: #f5f5f5;
  border-color: #b7503a;
  box-shadow: 2px 2px 5px 1px #050505;
}

/*! General layout items */
#intro_row .vc_column-inner {
  min-height: 350px;
}

.image_only .vc_column-inner {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
}

.cta_block > .vc_column-inner > .wpb_wrapper {
  background: rgba(47, 95, 82, 0.85) !important;
  color: #f5f5f5;
  padding: 35px;
}
.cta_block > .vc_column-inner > .wpb_wrapper .vc_btn3, .cta_block > .vc_column-inner > .wpb_wrapper .btn-std {
  background: #b7503a !important;
}
.cta_block > .vc_column-inner > .wpb_wrapper .vc_btn3:hover, .cta_block > .vc_column-inner > .wpb_wrapper .btn-std:hover {
  background: #f5f5f5 !important;
  color: #b7503a !important;
}

.bios img {
  width: auto;
  height: 350px !important;
  max-width: 100% !important;
}

.notices {
  padding: 10px;
  margin: 15px 0;
  background: #2f5f52;
  color: #f5f5f5;
  text-align: center;
}

.sponsor_description {
  margin-top: 50px;
}

.business_info_row {
  margin: 35px 0;
  width: calc(100vw - 30px); /* 15px body margins */
  max-width: 100%; /*prevent overflow on boxed screens */
}
.business_info_row .image_container {
  min-height: 125px;
  text-align: center;
  max-width: calc(100vw - 75px);
}
.business_info_row .image_container img {
  max-height: 300px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
}

.gp_data_label {
  padding: 0 1em 0 0;
}

@media (max-width: 991px) {
  .wpb_column.image_only > .vc_column-inner {
    min-height: 25vh;
  }
}
.wpb_column.image_only > .vc_column-inner > .wpb_wrapper {
  background: transparent;
  padding: 0px;
}

.shops_full > .row {
  max-height: 500px;
  overflow-y: scroll;
}
.shops_full .bms_business_details {
  width: 375px;
  max-width: 90%;
  display: inline-block;
}
.shops_full .bms_business_details th {
  text-align: center;
}
.shops_full .bms_business_details td {
  padding: 1em;
  text-align: center;
  font-size: 14px;
  border: 1px solid #2f5f52;
}
.shops_full .bms_business_details td .social ul {
  padding-left: 0;
}
.shops_full .bms_business_details td .social ul li {
  width: 2.5em;
}
.shops_full .bms_business_details td .social ul li a {
  position: absolute;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.shops_full .bms_business_details th {
  background-color: #2f5f52;
  color: #f5f5f5;
}
.shops_full .bms_business_details + a {
  display: inline-block;
  vertical-align: top;
}
.shops_full .business_listing .card {
  display: block;
}
.shops_full .business_listing .card img {
  max-height: 150px;
  width: auto;
  position: relative;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.shops_full .business_listing .card .col {
  float: left;
}
.shops_full .business_listing .card .image_col {
  height: 150px;
}
.shops_full .business_listing .card .card-body {
  padding: 0.5em;
}

.search.wrapper {
  margin: 20px auto;
}
.search.wrapper .text_input {
  width: 35em;
  max-width: 67%;
}

.thumbnail_container img {
  max-width: 300px;
  max-height: 90px;
  height: auto;
  display: flex;
  justify-self: center;
  object-fit: contain;
}

/* home page only */
.home .in_page_nav {
  font-family: "Font Awesome 7 Pro";
  color: #f5f5f5;
  position: absolute;
  bottom: 33px;
  left: 50%;
  font-size: 2em;
  text-shadow: 0 0 1px #f5f5f5;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  perspective: 50px;
  z-index: 1000;
  animation: growShrink 2.5s ease-in-out 1500ms 2 forwards;
}
@media (max-width: 991px) {
  .home .in_page_nav {
    display: none;
  }
}
.home .in_page_nav div {
  background: #2f5f52;
  padding: 0.125em 0.25em;
  display: inline-block;
  border-width: 0px 1px;
  border-style: solid;
  border-color: #2f5f52;
  margin: 0 15px;
  -webkit-transform: rotateX(15deg);
  -moz-transform: rotateX(15deg);
  -ms-transform: rotateX(15deg);
  transform: rotateX(15deg);
}
.home #walk_forward:before {
  content: "\f353";
}
.home #walk_backward:before {
  content: "\f350";
}
@media (max-width: 991px) {
  .home #sponsors .carousel {
    padding: 0 0;
  }
  .home #sponsors .carousel .slide_image_block.col-sm-6 {
    padding-right: 0px;
    padding-left: 0px;
    margin-right: 15px;
    margin-left: 15px;
    max-width: calc(100% - 30px);
  }
}
.home #subscribe form {
  max-width: 350px;
  margin: auto;
}
.home .page_banner {
  margin-top: 0 !important;
}
@media (min-width: 992px) {
  .home .page_banner.row,
  .home .entry-content > section > .vc_row,
  .home .entry-content > .wpb-content-wrapper > .vc_row,
  .home footer {
    min-height: 100vh;
    position: fixed;
    top: 50%;
    left: 50%;
    margin-left: 0px;
    margin-right: 0px;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100vw;
    opacity: 0;
    display: none;
    min-height: 100vh;
  }
  .home .page_banner.row.active,
  .home .entry-content > section > .vc_row.active,
  .home .entry-content > .wpb-content-wrapper > .vc_row.active,
  .home footer.active {
    -webkit-transform: translate(-50%, -50%) scale(1);
    -moz-transform: translate(-50%, -50%) scale(1);
    -ms-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    opacity: 100;
    display: initial;
  }
  .home .page_banner.row.behind,
  .home .entry-content > section > .vc_row.behind,
  .home .entry-content > .wpb-content-wrapper > .vc_row.behind,
  .home footer.behind {
    display: initial;
    -webkit-transform: translate(-50%, -67%) scale(2);
    -moz-transform: translate(-50%, -67%) scale(2);
    -ms-transform: translate(-50%, -67%) scale(2);
    transform: translate(-50%, -67%) scale(2);
    opacity: 0;
  }
  .home .page_banner.row .vc_row:not(.vc_gitem_row):not(.vc_grid),
  .home .entry-content > section > .vc_row .vc_row:not(.vc_gitem_row):not(.vc_grid),
  .home .entry-content > .wpb-content-wrapper > .vc_row .vc_row:not(.vc_gitem_row):not(.vc_grid),
  .home footer .vc_row:not(.vc_gitem_row):not(.vc_grid) {
    min-height: 100vh;
  }
}
.home .page_banner.row,
.home .entry-content > section > .vc_row,
.home .entry-content > .wpb-content-wrapper > .vc_row,
.home footer {
  -webkit-transition: all 1500ms;
  -moz-transition: all 1500ms;
  -o-transition: all 1500ms;
  transition: all 1500ms;
}
.home .vc_gitem-animated-block {
  max-height: 15vh;
}
.home .wpb_single_image img {
  width: auto;
  max-height: 65vh;
}
.home .entry-content > section > .vc_row,
.home .entry-content > .wpb-content-wrapper > .vc_row {
  background-repeat: no-repeat;
  background-position: bottom;
  background-size: cover;
}
@media (max-width: 991px) {
  .home .entry-content > section > .vc_row,
  .home .entry-content > .wpb-content-wrapper > .vc_row {
    margin: 15px auto;
    padding: 35px 5px;
    background-image: unset !important;
    background-color: rgba(47, 95, 82, 0.5);
  }
  .home .entry-content > section > .vc_row .wpb_column,
  .home .entry-content > .wpb-content-wrapper > .vc_row .wpb_column {
    margin: 15px 0;
    padding: 35px 0;
  }
}
.home .vc_grid {
  max-width: 60%;
  margin-left: auto !important;
  margin-right: auto !important;
}
.home .vc_grid .vc_gitem-zone {
  max-height: 31vh;
}
@media (max-width: 991px) {
  .home .vc_grid .vc_gitem-zone {
    max-height: unset;
  }
}
@media (max-width: 991px) {
  .home .vc_grid {
    max-width: 100%;
  }
}
.home .wpb_column {
  top: 50%;
}
.home .wpb_column > .vc_column-inner {
  background-size: cover;
  background-repeat: no-repeat;
  min-height: calc(100vh - 250px);
  padding: 100px 35px;
  top: 175px;
  position: relative;
}
.home .wpb_column > .vc_column-inner > .wpb_wrapper {
  top: 50%;
  left: 50%;
  width: 90%;
  padding: 35px;
  position: absolute;
  max-width: calc(100% - 70px);
  max-height: 100%;
  background: rgba(245, 245, 245, 0.95);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
@media (max-width: 991px) {
  .home .wpb_column > .vc_column-inner > .wpb_wrapper {
    position: relative;
    background: transparent;
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    top: 0;
  }
}
@media (max-width: 991px) {
  .home .wpb_column > .vc_column-inner {
    min-height: unset;
    padding: 15px;
  }
  .home .wpb_column > .vc_column-inner > .wpb_wrapper {
    padding: 10px;
    max-width: calc(100% - 20px);
  }
}
@media (max-width: 991px) {
  .home .wpb_column.image_only > .vc_column-inner {
    min-height: 25vh;
  }
}
.home .wpb_column.image_only > .vc_column-inner > .wpb_wrapper {
  background: transparent;
  padding: 0px;
}
@media (min-width: 992px) {
  .home .footer_block.row {
    min-height: calc(100vh - 350px);
    margin-top: 83px;
  }
}

/* directory page styling */
@media screen and (max-width: 991px) {
  .archive-bms_business_directory.fixed-header main {
    padding-top: 1px;
  }
}
/*Events page styling */
.tribe-events-event-image img {
  max-width: 100%;
  height: auto;
}

/* events calandar page top margin adjustments */
div#page .tribe-common .bms_events_header_message {
  text-align: center;
  font-size: 1.25em;
  padding: 25px;
  background: #2f5f52;
  color: #f5f5f5;
  margin-bottom: 25px;
}
div#page .tribe-common .bms_events_header_message a {
  color: #f5f5f5;
}
div#page .tribe-common .bms_events_header_message a:hover {
  text-decoration: underline !important;
}

/*! Button Styling */
.vc_btn3,
.btn-std,
.featured_links .btn,
.return_link,
.post_nav_link a,
.add_to_cart_button,
.single_add_to_cart_button,
.wc-forward,
.woocommerce button.button,
.woocommerce a.button,
.filter_toggle,
.woocommerce input.button,
.tribe-common-c-btn {
  background-color: #2f5f52 !important;
  color: #f5f5f5 !important;
}
.vc_btn3:hover,
.btn-std:hover,
.featured_links .btn:hover,
.return_link:hover,
.post_nav_link a:hover,
.add_to_cart_button:hover,
.single_add_to_cart_button:hover,
.wc-forward:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.filter_toggle:hover,
.woocommerce input.button:hover,
.tribe-common-c-btn:hover {
  background-color: #b7503a !important;
}
.vc_btn3 a,
.btn-std a,
.featured_links .btn a,
.return_link a,
.post_nav_link a a,
.add_to_cart_button a,
.single_add_to_cart_button a,
.wc-forward a,
.woocommerce button.button a,
.woocommerce a.button a,
.filter_toggle a,
.woocommerce input.button a,
.tribe-common-c-btn a {
  color: #f5f5f5;
  text-decoration: none;
}

.return_link {
  display: inline-block;
}

.btn {
  box-shadow: 2px 2px 5px 1px #999999;
}

.tribe-events .tribe-events-c-ical__link {
  border-color: #2f5f52;
  color: #2f5f52;
}
.tribe-events .tribe-events-c-ical__link:hover {
  background-color: #2f5f52;
}

.tribe-common .tribe-common-c-svgicon {
  color: #2f5f52;
}

.directory_filter .filter_links.category {
  clear: none;
  display: inline-block;
  float: left;
}
.directory_filter .filter_links:after {
  content: "";
  margin-left: 0;
}
.directory_filter #blog_filter {
  width: 1600px;
  margin: auto;
  max-width: 85%;
}

.woocommerce div.product_meta span.posted_in a {
  background-color: #2f5f52;
  color: #f5f5f5 !important;
  font-size: 1.15em;
}
.woocommerce div.product_meta span.tagged_as a {
  background-color: #b7503a;
  color: #f5f5f5;
}
.woocommerce div.woocommerce-message {
  border-top-color: #2f5f52;
}
.woocommerce div.woocommerce-message:before {
  color: #2f5f52;
}
.woocommerce div.woocommerce-info {
  border-top-color: #b7503a;
}
.woocommerce div.woocommerce-info:before {
  color: #b7503a;
}

.ctct-text,
.ctct-email,
.ctct-tel {
  width: 100%;
}