/* .col-full override to .container */
.col-full {
  width: 100%;
  padding-right: var(--bs-gutter-x, 0.75rem);
  padding-left: var(--bs-gutter-x, 0.75rem);
  margin-right: auto;
  margin-left: auto;
}
.col-1, .col-2 {
    flex: 0 0 auto;
    width: 100%;
}
/* Responsive breakpoints */
@media (min-width: 576px) {
  .col-full {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .col-full {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .col-full {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .col-full {
    max-width: 1140px;
  }
}

@media (min-width: 1400px) {
  .col-full {
    max-width: 1320px;
  }
}

/* typography */
body{
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
}
.text_white{
	color: white;
}
.text_black{
	color: black;
}
.width_100{
	width: 100%;
}
.h1, h1 {
    font-size: 36px;
	text-align: center;
	font-family: 'Roboto Condensed', sans-serif; 
	text-transform: capitalize;
}
h1 {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center; 
   
}
h1:before,
h1:after {
    content: '';
    border-top: 2px solid; 
    margin: 0 20px 0 0;
    flex: 1 0 20px;
}
h1:after {
    margin: 0 20px 0 20px;
}
.h2, h2 {
    font-size: 30px;
	text-align: center; 
	font-family: 'Roboto Condensed', sans-serif;
	text-transform: capitalize;
}
h2 {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center; 
   
}
h2:before,
h2:after {
    content: '';
    border-top: 2px solid;
    margin: 0 20px 0 0;
    flex: 1 0 20px;
}

h2:after {
    margin: 0 20px 0 20px;
}
a{
	color: #3c4619;
}
.woocommerce-loop-product__title{
	content: none;
	border-top: none;
}
.woocommerce-loop-product__title:before,
.woocommerce-loop-product__title:after {
    content: '';
    border-top: none;
}

/* buttons */
.fs_featured_products_button,
.button.product_type_variable,
a.button.product_type_variable.add_to_cart_button,
a.button.product_type_simple.add_to_cart_button,
.single_add_to_cart_button.button.alt
{
    background: #3c4619;
    color: #fff;
    border: 1px solid #3c4619;
}

.fs_featured_products_button:hover,
.button.product_type_variable:hover,
.button.product_type_variable.add_to_cart_button:hover,
.button.product_type_simple.add_to_cart_button:hover,
.single_add_to_cart_button.button.alt:hover
{
	background: #800020;
	border: 1px solid #60061D;
	box-shadow: 0 1px 1px rgba(0, 0, 0, .2);
}

/* header */
.fs_header_notice{
	padding: 20px 10px;
    color: #3c4619;
    text-align: center;
    background: #f0e7e2;
    font-size: 18px;
}
#masthead{
	background-color: #fafaf5;
	    margin-bottom: 0;
}
.top_info {
    color: #Fff;
    line-height: 56px;
    text-transform: uppercase;
    border-bottom: 2px solid #3c4619;
    background-color: #3c4619;
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, .16);
	height: 55px;
}
.site-header-cart .cart-contents{
	color: white;
	padding: 0;
}

    .woocommerce-active .site-header .site-branding {
        width: 100%;
        float: none;
        margin: auto;
    }
    .site-header .site-branding img {
        height: auto;
        max-width: 400px;
        max-height: none;
		margin: auto;
    }
@media (min-width: 768px) {	
	.top_info .menu-item:not(:last-child) {
		margin-right: 40px !important;
	}
	.header_address{
		display: none;
	}

}


/* navigation */
#menu-main-menu{
    display: flex;
    justify-content: space-between;
	text-transform: uppercase;
}
#menu-main-menu a{
	text-decoration: none;
}
@media (min-width: 768px) {
    .woocommerce-active .site-header .main-navigation {
        width: 100%;
        float: none;
		margin: auto;
        clear: both;
    }
}

.storefront-primary-navigation{
	margin-top: 10px;
}

/* footer */
#footer {
	padding: 50px 0;
	color: #AAA;
	text-align:center;
	background: #222;
	border-top: 1px solid #333;
}

@media (min-width: 720px)
{
	#footer {
		margin-top: 20px;
	}

	.email-subscription-form h4 {
		width: auto;
	}
	#combo-text {
	text-align: justify;
	
}
}

#footer a {
	color: #999;
	text-decoration: none;
}

#footer a:hover {
	color: #CCC;
	text-decoration:underline;
}

.email-subscription-form h4,
#footer .footer-title {
	display: inline-block;
	padding: 10px 0;
	color: #FFF;
	font-size: 13px;
	font-weight: 500;
	text-transform: uppercase;
}

#footer ul {
	position: relative;
	padding: 20px 0;
	list-style-type: none;
}

#footer2 {
	padding: 20px 0;
	margin: auto;
	color: #555;
	font-size: 11px;
	background: #1C1C1C;
	border-top: 1px solid #161616;
}

.checkout #footer2 {
	margin: auto;
}

#footer2 a {
	color: #555;
}

#footer2 a:hover {
	color: #CCC;
}

.social.knot {
	background: #a7d2f3;
}

.fa-knot:before {
	content: "\f004";
}

.social.ww {
    background: #19b5bc;
}

.fa-ww:before {
	content: "\f1e7";
}

/* mobile footer menu bar */
@media screen and (max-width: 990px) {
  .storefront-handheld-footer-bar {
    display: block;
  }
}
@media screen and (min-width: 991px) {
  .storefront-handheld-footer-bar {
    display: none !important;
  }
}
.storefront-handheld-footer-bar ul li.search form {
    margin-bottom: -36px;
}
.storefront-handheld-footer-bar ul li.search.active form {
    margin-bottom: 0px;
}
.storefront-handheld-footer-bar ul li >a{
	color: #6a455c;
}

/* footer form */
#footer #gform_1{
	display: flex;
	justify-content: center;
}
#footer #gform_1 .gform-footer.gform_footer.top_label{
	margin: 0;
}
#footer #gform_1  #gform_submit_button_1 {
	padding: 15px;
    min-width: auto;
    /* max-width: 110px; */
    text-transform: uppercase;
	background: #3c4619;
    color: #fff;
	border-radius: 0;
}
#footer #gform_1 .ginput_container.ginput_container_email {
	border-radius: 0 !important;
	/* width: 514px; */
}
#footer #gform_1 #input_1_1 {
	border-radius: 0 !important;
	/* width: 514px;	 */
	height: 50px !important;
	text-align: left !important;
}
.email-subscription-form{
	display: flex;
    align-items: center;
}
.email-subscription-form-container .gform_heading {
	display: none !important;
}
.email-subscription-form-container {
	width: stretch;
	max-width: 600px;
}
.email-subscription-form-container .gform-body {
	width: stretch;
}
.email-subscription-form h4 {
	background-color: #000;
	height: 50px !important;
	padding: 10px 18px !important;
}
@media (min-width: 720px)
{
	#footer {
		margin-top: 20px;
	}

	.email-subscription-form h4 {
		width: 150px;
		background: #1C1C1C;
		border-top-left-radius: 3px;
		border-bottom-left-radius: 3px;
		/* padding: 17px !important; */
		/* top: 2px; */
		/* position: relative; */
	}
	#footer #gform_1  #gform_submit_button_1 {
		width: 150px;
		border-top-right-radius: 3px;
		border-bottom-right-radius: 3px;
		margin-top: 28px;
	}
}
.email-subscription-form h4{
	display: inline-block;
	color: #FFF;
	font-size: 13px;
	font-weight: 500;
	text-transform: uppercase;
	padding: 18px;
    margin: 0;
	margin-top: 28px;
}
.social {
	/* float: left; */
	/*
	width: 32px!important;
	height: 32px;
	*/
    display: inline-block;	
	margin: 0 5px 5px 0;
	text-align: center;
	text-shadow: none!important;
	line-height: 32px;
	border-radius: 22px;
	opacity: .7;
	filter: alpha(opacity=70);
	color: #FFF !important;

	width: 32px !important;
	height: 32px !important;	
}

.social:hover {
	opacity: 1;
	filter: alpha(opacity=100);
	box-shadow: 0 1px 2px rgba(0,0,0,.3);
}

.social.facebook {
	background: #3b5998;
}

.social.google {
	background: #dd4b39;
}

.social.instagram {
	background: #517fa4;
}

.social.pinterest {
	background: #cb2027;
}

.social.twitter {
	background: #00aced;
}

.social.yelp {
	background: #af0606;
}

.social.youtube {
	background: #b00;
}

/* home page */
.home .entry-title{
	display: none;
}
.home h1, .home .h1{
	text-align: center;
}
#homepage-callouts {
	display: grid;
	width: 100%;
}

.homepage-callout {
	display: block;
	position: relative;
	width: 100%;
}

.homepage-callout.height-constrained {
	height: 100vw;
}

.homepage-callout img.grid-scale {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}

div#homepage-callouts > a:before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0,0,0,.3);
    transition: background-color 1s;
}

div#homepage-callouts > a:hover:before{
    background-color:transparent;
}

@media (min-width: 720px){
	#homepage-callouts {
		grid-gap: 10px;
		grid-auto-rows: 300px;
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}

	.homepage-callout {
		height: auto !important;
	}


	.homepage-callout:nth-child(9n+9) {
		grid-column-end: span 2;
	}

	/*.homepage-callout:nth-child(9n+5) {
		grid-column-end: span 2;
	}

	.homepage-callout:nth-child(9n+4) {
		grid-column-start: 2;
		grid-row: 2 / span 2;
	}*/
}

.homepage-callout .title {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 20px;
	color: #FFF;
	font-size: 8vw;
	text-align: center;
	text-transform: uppercase;
	text-shadow: 0 0 10px #000;

	transition: .4s;
}

@media (min-width: 720px){
	.homepage-callout .title {
		font-size: 2vw;
	}
}
#top-navigation .menu-item {
  font-size: 18px;
}

.homepage-callout .title::before,
.homepage-callout .title::after {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	content: '';
	border-top: 15px solid transparent;
	border-left: 15px solid transparent;
	pointer-events: none;
	transition: 1s;
}

.homepage-callout .title::after {
	top: auto;
	left: auto;
	bottom: 0;
	right: 0;
	border: none;
	border-right: 15px solid transparent;
	border-bottom: 15px solid transparent;
}

.homepage-callout:hover .title::before,
.homepage-callout:hover .title::after {
	width: 100%;
	height: 100%;
	border-color: rgba(0, 0, 0, .7);
}

#about-us.homepage-callout {
	padding: 60px 25px;
	color: #222;
	font-size: 16px;
	line-height: 1.4;
	background: #d5cdc5;
}

#about-us.homepage-callout p {
	margin: 1.2em auto;
}

#about-us.homepage-callout .btn {
	display: table;
	margin: auto;
}

@media (min-width: 1200px){
	#about-us.homepage-callout {
		padding: 80px 140px;
	}
}

#established {
	width: 100%;
	padding: 20px 0;
	margin: 0 auto 20px;
	font-size: 30px;
	text-align: center;
	border-top: 5px double #bfb3a6;
	border-bottom: 5px double #bfb3a6;
}

/* featured products module */
.fs_product_wrap{
	
}
.fs_product_wrap > div{
	margin-bottom: 80px;
}
.fs_product_wrap a{
	color: #333;
	text-decoration: none !important;
}
/*@media (min-width: 768px) {*/
	ul.products > li.product > a{
		text-decoration: none;
	}
    .fs_product_wrap .h4.pt-4.pb-2.d-block,
	ul.products > li.product > a > .woocommerce-loop-product__title{
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
		text-transform: uppercase;
		color: #000;
		text-decoration: none;
		font-size:24px;
		font-weight:500;
    }
/* } */

/* cats */
@media (min-width: 1200px) {
	a > img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail {
		min-height: 275px;
		min-width: 275px;
	}
}

/* products */
.woovr-variation-name {
    text-transform: capitalize;
}
/*
.add-on-image > img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail{
    min-height: 0;
    min-width: 0;	
}
*/

/* mini cart*/
@media (min-width: 768px) {
    .site-header-cart:hover .widget_shopping_cart, .site-header-cart.focus .widget_shopping_cart {
        left: -382px;
        display: block;
		width: 500px;
		top: 40px;
    }
}

/* 404 */
.fourohfour-columns-2{
	display: none;
}

/* Meet Our Team */
@media (min-width: 768px) {
	.combo-text-image {
			display: flex;
			width: 100%;
			min-height: 500px;
			overflow: hidden;
			text-align: center;
			background: #fff;  
			
		}

		.combo-text {
			display: block;
			width: 50%;
			padding: 4em 2em;
			font-family: inherit;
			font-weight: normal;
			font-size: 1em;
			line-height: 1.6;
			text-rendering: optimizeLegibility;
			vertical-align: middle;
		}

		.combo-image {
			display: block;
			position: relative;
			width: 50%;
			min-height: 500px;
			overflow: hidden;
		}

		.combo-image img {
			position: absolute;
			top: 0;
			left: 50%;
			max-width: none;
			width: 100%;
			height: 100%;
			object-fit: cover;
			transform: translateX(-50%);
		}

		.combo-text-image-reverse,
		.combo-text-image:nth-of-type(odd) {
			direction: rtl;
		}

		.combo-text-image:nth-of-type(odd) .combo-text,
		.combo-text-image:nth-of-type(odd) .combo-image,
		.combo-text-image-reverse .combo-text,
		.combo-text-image-reverse .combo-image {
			direction: ltr;
		}
		
		.square {
			margin: 0;
			border: 10px solid #fff;
		}

		.text-boxes {
			flex-direction: row;
		}

		.text-boxes-reverse {
			flex-direction: row-reverse;	
		}

		.text-box {
			width: 50%;
			padding: 100
		
	}
}
.woovr-variations {
    padding-top: 5px;
    padding-bottom: 5px;
    display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
}